Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Fork of idd_hw2_antoniorohit_3x3CharDrawing by
Diff: main.cpp
- Revision:
- 0:1aa14f2daf0e
- Child:
- 1:e04bcbc40115
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Sun Sep 21 15:43:40 2014 +0000 @@ -0,0 +1,11329 @@ +#include "mbed.h" + +DigitalIn p2(D2); +DigitalIn p3(D3); +DigitalIn p4(D4); +DigitalIn p5(D5); +DigitalIn p6(D6); +DigitalIn p7(D7); +DigitalIn p8(D8); +DigitalIn p9(D9); +DigitalIn p10(D10); +DigitalIn p11(D11); +DigitalIn p12(D12); +DigitalIn p13(D13); + +DigitalOut led(LED1); +DigitalOut led2(LED2); + +Serial pc(USBTX, USBRX); +AnalogOut pin(PTE30); +int Play_Tone(char *array, int len); +int Test_All_Alphabets(void); + +#define NUM_ELEMENTS 1360 + +const char A[2975] = {128, 127, 128, 128, 128, 127, 128, 127, // 0-7 +128, 127, 128, 127, 128, 127, 128, 128, // 8-15 +127, 128, 127, 128, 128, 128, 128, 127, // 16-23 +128, 127, 128, 129, 129, 129, 130, 134, // 24-31 +147, 146, 115, 131, 129, 95, 120, 123, // 32-39 +116, 132, 140, 122, 121, 125, 105, 105, // 40-47 +108, 107, 108, 125, 166, 152, 133, 176, // 48-55 +140, 110, 129, 119, 109, 118, 137, 140, // 56-63 +138, 140, 145, 123, 115, 119, 112, 110, // 64-71 +123, 134, 140, 144, 155, 156, 126, 130, // 72-79 +131, 107, 114, 120, 115, 115, 118, 118, // 80-87 +107, 102, 100, 95, 107, 135, 160, 145, // 88-95 +153, 180, 130, 123, 136, 114, 111, 123, // 96-103 +135, 134, 135, 142, 139, 119, 119, 118, // 104-111 +111, 113, 128, 131, 135, 143, 147, 142, // 112-119 +139, 138, 121, 127, 131, 116, 122, 132, // 120-127 +114, 119, 124, 114, 112, 110, 103, 91, // 128-135 + 91, 103, 130, 157, 166, 151, 178, 151, // 136-143 +112, 127, 109, 101, 112, 131, 138, 144, // 144-151 +148, 151, 132, 119, 118, 106, 106, 120, // 152-159 +129, 136, 148, 151, 149, 138, 134, 125, // 160-167 +112, 112, 115, 119, 125, 129, 128, 122, // 168-175 +115, 106, 98, 95, 98, 108, 126, 160, // 176-183 +170, 144, 170, 155, 110, 124, 115, 108, // 184-191 +113, 133, 140, 140, 143, 146, 129, 118, // 192-199 +119, 110, 110, 121, 131, 135, 144, 150, // 200-207 +149, 141, 135, 123, 115, 112, 111, 116, // 208-215 +116, 116, 120, 114, 108, 102, 101, 106, // 216-223 +112, 125, 164, 170, 140, 176, 156, 111, // 224-231 +130, 117, 108, 113, 130, 136, 137, 139, // 232-239 +145, 125, 115, 119, 111, 110, 123, 133, // 240-247 +136, 145, 148, 148, 145, 140, 124, 118, // 248-255 +112, 105, 110, 112, 114, 117, 120, 108, // 256-263 +102, 107, 104, 111, 138, 172, 153, 152, // 264-271 +184, 135, 120, 133, 113, 105, 116, 130, // 272-279 +130, 134, 143, 142, 123, 125, 120, 112, // 280-287 +114, 128, 131, 138, 147, 154, 156, 143, // 288-295 +128, 122, 105, 93, 106, 105, 111, 116, // 296-303 +120, 111, 103, 109, 109, 115, 135, 178, // 304-311 +155, 148, 184, 135, 118, 133, 112, 105, // 312-319 +115, 129, 130, 132, 143, 140, 123, 125, // 320-327 +123, 114, 116, 131, 131, 137, 149, 156, // 328-335 +149, 137, 130, 115, 101, 99, 102, 103, // 336-343 +111, 113, 113, 105, 107, 110, 112, 127, // 344-351 +153, 178, 149, 166, 176, 118, 127, 124, // 352-359 +108, 107, 121, 130, 128, 136, 143, 133, // 360-367 +124, 129, 120, 116, 123, 134, 136, 149, // 368-375 +155, 147, 139, 128, 114, 103, 103, 98, // 376-383 +103, 111, 108, 107, 105, 103, 108, 115, // 384-391 +131, 162, 180, 155, 176, 168, 118, 129, // 392-399 +114, 105, 105, 121, 129, 130, 139, 144, // 400-407 +133, 125, 129, 117, 116, 125, 135, 138, // 408-415 +152, 157, 147, 139, 127, 111, 100, 99, // 416-423 + 95, 101, 110, 110, 107, 103, 103, 109, // 424-431 +115, 134, 170, 176, 153, 184, 162, 116, // 432-439 +133, 112, 98, 105, 121, 123, 129, 139, // 440-447 +144, 131, 129, 133, 117, 117, 131, 135, // 448-455 +141, 155, 154, 146, 134, 125, 105, 99, // 456-463 + 99, 93, 102, 107, 107, 102, 103, 110, // 464-471 +108, 121, 157, 176, 164, 170, 184, 134, // 472-479 +125, 129, 99, 99, 112, 119, 119, 136, // 480-487 +143, 139, 131, 136, 125, 117, 124, 134, // 488-495 +135, 145, 155, 149, 140, 133, 118, 103, // 496-503 +102, 95, 95, 103, 105, 106, 102, 102, // 504-511 +112, 115, 129, 166, 184, 156, 176, 180, // 512-519 +118, 130, 118, 97, 100, 113, 121, 121, // 520-527 +138, 145, 136, 133, 139, 122, 119, 129, // 528-535 +133, 136, 147, 152, 148, 137, 131, 114, // 536-543 +101, 103, 93, 97, 106, 106, 105, 103, // 544-551 +106, 112, 116, 138, 168, 180, 158, 180, // 552-559 +170, 119, 129, 113, 95, 99, 115, 118, // 560-567 +123, 140, 145, 136, 137, 139, 123, 120, // 568-575 +130, 134, 134, 146, 152, 142, 136, 132, // 576-583 +109, 105, 102, 93, 99, 106, 102, 103, // 584-591 +103, 107, 112, 120, 147, 176, 174, 160, // 592-599 +184, 150, 119, 131, 103, 95, 103, 116, // 600-607 +116, 129, 143, 144, 136, 141, 136, 119, // 608-615 +124, 131, 130, 137, 149, 145, 140, 138, // 616-623 +123, 109, 107, 99, 93, 102, 105, 102, // 624-631 +105, 103, 107, 112, 127, 144, 174, 178, // 632-639 +156, 184, 148, 120, 129, 103, 95, 103, // 640-647 +115, 117, 129, 143, 144, 136, 143, 136, // 648-655 +121, 124, 130, 128, 133, 144, 148, 138, // 656-663 +137, 133, 108, 110, 103, 93, 102, 105, // 664-671 +103, 105, 104, 108, 110, 123, 140, 164, // 672-679 +180, 157, 180, 162, 121, 131, 110, 97, // 680-687 +101, 111, 116, 124, 139, 146, 140, 143, // 688-695 +140, 128, 125, 125, 128, 130, 139, 144, // 696-703 +142, 138, 134, 116, 111, 106, 97, 100, // 704-711 +105, 103, 106, 106, 105, 111, 118, 129, // 712-719 +150, 182, 160, 164, 184, 129, 125, 126, // 720-727 + 99, 98, 108, 115, 116, 134, 146, 142, // 728-735 +142, 147, 134, 124, 128, 126, 123, 135, // 736-743 +143, 140, 139, 137, 122, 112, 112, 99, // 744-751 + 98, 106, 103, 104, 108, 104, 107, 113, // 752-759 +121, 139, 166, 174, 157, 180, 158, 124, // 760-767 +132, 110, 99, 100, 112, 113, 123, 142, // 768-775 +143, 143, 147, 142, 131, 126, 125, 123, // 776-783 +126, 136, 139, 140, 138, 134, 119, 115, // 784-791 +108, 101, 103, 105, 103, 106, 105, 104, // 792-799 +110, 112, 128, 146, 176, 166, 164, 184, // 800-807 +140, 128, 129, 102, 98, 106, 112, 114, // 808-815 +131, 144, 143, 144, 149, 136, 129, 127, // 816-823 +122, 121, 130, 136, 139, 140, 136, 132, // 824-831 +119, 115, 108, 102, 106, 105, 105, 108, // 832-839 +106, 103, 110, 112, 126, 143, 170, 168, // 840-847 +156, 184, 143, 125, 134, 104, 101, 106, // 848-855 +112, 113, 129, 143, 143, 143, 149, 140, // 856-863 +129, 127, 124, 120, 125, 134, 138, 137, // 864-871 +136, 136, 119, 119, 112, 103, 108, 106, // 872-879 +106, 108, 107, 103, 107, 110, 120, 138, // 880-887 +160, 170, 157, 178, 156, 126, 138, 111, // 888-895 +102, 106, 111, 112, 124, 140, 143, 143, // 896-903 +148, 143, 133, 129, 123, 120, 120, 131, // 904-911 +132, 138, 138, 135, 130, 120, 116, 109, // 912-919 +107, 107, 107, 107, 110, 105, 104, 110, // 920-927 +110, 120, 140, 164, 162, 156, 184, 143, // 928-935 +132, 140, 107, 106, 109, 112, 112, 127, // 936-943 +139, 141, 143, 148, 139, 133, 129, 122, // 944-951 +119, 122, 128, 131, 139, 135, 137, 130, // 952-959 +124, 117, 112, 111, 107, 109, 108, 110, // 960-967 +107, 103, 108, 108, 115, 135, 154, 164, // 968-975 +152, 176, 156, 131, 144, 115, 108, 109, // 976-983 +112, 112, 121, 137, 139, 140, 147, 143, // 984-991 +131, 131, 124, 116, 119, 127, 129, 135, // 992-999 +141, 139, 134, 133, 121, 115, 113, 111, // 1000-1007 +108, 111, 111, 111, 108, 105, 110, 104, // 1008-1015 +114, 129, 144, 162, 148, 172, 164, 133, // 1016-1023 +149, 124, 111, 113, 112, 111, 117, 133, // 1024-1031 +134, 137, 144, 141, 134, 133, 125, 120, // 1032-1039 +119, 123, 128, 133, 139, 141, 136, 136, // 1040-1047 +128, 118, 118, 112, 112, 112, 113, 111, // 1048-1055 +113, 108, 103, 107, 103, 111, 123, 146, // 1056-1063 +158, 146, 180, 162, 138, 155, 123, 114, // 1064-1071 +112, 114, 107, 115, 130, 130, 135, 144, // 1072-1079 +140, 134, 135, 129, 121, 120, 124, 124, // 1080-1087 +133, 136, 139, 136, 136, 130, 121, 121, // 1088-1095 +117, 114, 115, 115, 112, 112, 112, 103, // 1096-1103 +102, 102, 101, 113, 125, 152, 155, 154, // 1104-1111 +184, 153, 146, 150, 119, 114, 112, 111, // 1112-1119 +106, 117, 128, 129, 136, 144, 139, 138, // 1120-1127 +138, 129, 124, 123, 121, 124, 131, 134, // 1128-1135 +137, 136, 138, 131, 125, 127, 118, 117, // 1136-1143 +118, 114, 112, 111, 111, 103, 99, 105, // 1144-1151 + 97, 109, 123, 135, 162, 152, 170, 174, // 1152-1159 +142, 155, 132, 116, 114, 108, 108, 109, // 1160-1167 +121, 125, 131, 142, 143, 138, 141, 135, // 1168-1175 +128, 123, 122, 119, 124, 128, 133, 137, // 1176-1183 +137, 140, 133, 131, 128, 121, 118, 117, // 1184-1191 +114, 112, 110, 110, 106, 100, 103, 100, // 1192-1199 +100, 116, 129, 152, 155, 160, 184, 151, // 1200-1207 +151, 150, 117, 115, 111, 105, 103, 115, // 1208-1215 +122, 126, 139, 145, 142, 143, 141, 132, // 1216-1223 +124, 122, 119, 118, 125, 129, 135, 140, // 1224-1231 +140, 139, 136, 131, 125, 120, 119, 115, // 1232-1239 +113, 112, 110, 110, 105, 99, 103, 95, // 1240-1247 +105, 113, 124, 155, 156, 157, 184, 156, // 1248-1255 +147, 151, 118, 113, 110, 106, 102, 115, // 1256-1263 +123, 129, 139, 146, 143, 142, 142, 132, // 1264-1271 +125, 123, 118, 116, 123, 126, 133, 140, // 1272-1279 +142, 139, 141, 134, 125, 126, 119, 116, // 1280-1287 +117, 113, 112, 111, 110, 102, 99, 101, // 1288-1295 + 93, 105, 111, 128, 149, 158, 158, 176, // 1296-1303 +164, 144, 151, 124, 116, 111, 109, 106, // 1304-1311 +113, 122, 128, 136, 143, 144, 142, 143, // 1312-1319 +134, 130, 123, 120, 118, 120, 124, 131, // 1320-1327 +136, 142, 139, 140, 139, 130, 131, 124, // 1328-1335 +120, 120, 116, 113, 110, 108, 108, 101, // 1336-1343 + 99, 102, 95, 106, 112, 124, 146, 160, // 1344-1351 +155, 172, 168, 143, 152, 132, 119, 114, // 1352-1359 +113, 109, 112, 123, 125, 133, 142, 143, // 1360-1367 +140, 142, 136, 131, 125, 123, 119, 119, // 1368-1375 +121, 126, 131, 137, 142, 139, 142, 140, // 1376-1383 +131, 133, 126, 119, 118, 115, 110, 106, // 1384-1391 +106, 105, 98, 100, 104, 97, 107, 114, // 1392-1399 +118, 134, 155, 153, 153, 174, 152, 144, // 1400-1407 +151, 128, 120, 122, 115, 112, 119, 123, // 1408-1415 +124, 133, 139, 136, 138, 140, 135, 130, // 1416-1423 +129, 124, 118, 123, 121, 123, 131, 134, // 1424-1431 +140, 141, 141, 143, 134, 132, 129, 117, // 1432-1439 +115, 111, 107, 103, 103, 106, 104, 103, // 1440-1447 +108, 106, 108, 114, 112, 121, 133, 145, // 1448-1455 +153, 148, 170, 158, 146, 160, 135, 130, // 1456-1463 +129, 118, 112, 117, 118, 118, 125, 133, // 1464-1471 +133, 136, 140, 135, 134, 132, 128, 121, // 1472-1479 +124, 121, 123, 127, 133, 136, 139, 142, // 1480-1487 +138, 136, 133, 123, 120, 114, 110, 110, // 1488-1495 +106, 106, 106, 110, 110, 107, 112, 110, // 1496-1503 +110, 114, 113, 120, 128, 143, 153, 150, // 1504-1511 +168, 166, 149, 162, 144, 132, 132, 120, // 1512-1519 +112, 112, 114, 112, 118, 125, 129, 131, // 1520-1527 +139, 136, 136, 136, 132, 129, 128, 124, // 1528-1535 +122, 124, 126, 129, 132, 135, 136, 133, // 1536-1543 +135, 129, 121, 122, 114, 112, 112, 108, // 1544-1551 +108, 108, 112, 112, 111, 114, 113, 114, // 1552-1559 +118, 115, 122, 128, 136, 152, 149, 156, // 1560-1567 +170, 154, 155, 156, 135, 134, 125, 115, // 1568-1575 +110, 111, 110, 111, 118, 122, 125, 135, // 1576-1583 +138, 138, 140, 138, 135, 132, 129, 123, // 1584-1591 +122, 121, 121, 124, 128, 129, 134, 133, // 1592-1599 +130, 134, 125, 123, 121, 114, 114, 113, // 1600-1607 +112, 112, 114, 116, 115, 117, 120, 116, // 1608-1615 +118, 120, 117, 123, 126, 134, 146, 149, // 1616-1623 +148, 166, 152, 149, 156, 134, 133, 125, // 1624-1631 +115, 111, 111, 109, 110, 115, 120, 123, // 1632-1639 +133, 138, 138, 143, 142, 138, 136, 132, // 1640-1647 +125, 123, 120, 119, 119, 121, 123, 125, // 1648-1655 +131, 132, 131, 135, 130, 128, 129, 120, // 1656-1663 +121, 119, 115, 116, 116, 115, 117, 117, // 1664-1671 +118, 117, 118, 118, 117, 120, 123, 125, // 1672-1679 +138, 147, 139, 154, 157, 141, 155, 143, // 1680-1687 +131, 135, 123, 114, 112, 112, 108, 112, // 1688-1695 +117, 118, 124, 135, 135, 141, 143, 142, // 1696-1703 +141, 138, 133, 127, 124, 119, 117, 116, // 1704-1711 +117, 119, 123, 127, 131, 134, 136, 136, // 1712-1719 +134, 133, 129, 124, 120, 116, 114, 112, // 1720-1727 +112, 113, 112, 115, 115, 115, 119, 118, // 1728-1735 +120, 123, 125, 133, 143, 140, 144, 158, // 1736-1743 +140, 151, 149, 133, 139, 130, 120, 117, // 1744-1751 +116, 110, 112, 115, 115, 120, 130, 131, // 1752-1759 +137, 142, 142, 143, 142, 138, 133, 130, // 1760-1767 +123, 119, 116, 114, 115, 118, 120, 125, // 1768-1775 +131, 133, 136, 139, 135, 134, 132, 124, // 1776-1783 +121, 118, 113, 112, 112, 112, 114, 115, // 1784-1791 +116, 118, 120, 120, 120, 124, 122, 125, // 1792-1799 +135, 139, 138, 147, 151, 140, 153, 144, // 1800-1807 +137, 142, 131, 123, 121, 117, 112, 113, // 1808-1815 +114, 114, 120, 126, 129, 136, 140, 140, // 1816-1823 +143, 142, 137, 134, 128, 121, 118, 115, // 1824-1831 +112, 114, 116, 118, 124, 130, 133, 139, // 1832-1839 +139, 138, 139, 133, 130, 124, 119, 115, // 1840-1847 +112, 112, 112, 113, 114, 115, 119, 119, // 1848-1855 +120, 122, 121, 124, 124, 128, 135, 138, // 1856-1863 +136, 147, 146, 140, 153, 141, 140, 141, // 1864-1871 +131, 125, 123, 117, 113, 114, 113, 114, // 1872-1879 +119, 123, 125, 134, 136, 139, 141, 140, // 1880-1887 +137, 134, 130, 123, 121, 117, 115, 116, // 1888-1895 +117, 119, 124, 128, 133, 138, 138, 139, // 1896-1903 +139, 134, 131, 127, 121, 118, 115, 112, // 1904-1911 +112, 113, 114, 115, 117, 119, 119, 122, // 1912-1919 +122, 121, 125, 123, 129, 137, 134, 138, // 1920-1927 +148, 139, 144, 148, 138, 143, 139, 131, // 1928-1935 +129, 124, 117, 116, 116, 113, 115, 120, // 1936-1943 +120, 128, 133, 134, 138, 139, 138, 136, // 1944-1951 +135, 130, 126, 123, 118, 118, 118, 118, // 1952-1959 +121, 124, 128, 132, 134, 135, 137, 135, // 1960-1967 +133, 131, 126, 123, 120, 117, 115, 115, // 1968-1975 +114, 115, 117, 117, 119, 120, 120, 121, // 1976-1983 +123, 120, 123, 125, 124, 134, 133, 135, // 1984-1991 +146, 138, 146, 146, 141, 145, 139, 136, // 1992-1999 +131, 128, 121, 118, 117, 114, 115, 118, // 2000-2007 +118, 123, 127, 130, 134, 135, 136, 135, // 2008-2015 +134, 131, 129, 125, 122, 121, 120, 120, // 2016-2023 +122, 124, 125, 130, 131, 132, 134, 134, // 2024-2031 +132, 132, 128, 125, 123, 119, 119, 117, // 2032-2039 +116, 116, 117, 118, 119, 120, 121, 122, // 2040-2047 +121, 122, 121, 121, 123, 127, 131, 133, // 2048-2055 +136, 142, 139, 146, 145, 143, 145, 141, // 2056-2063 +138, 134, 129, 122, 119, 116, 113, 114, // 2064-2071 +114, 115, 120, 123, 126, 131, 133, 134, // 2072-2079 +136, 134, 133, 132, 129, 128, 124, 123, // 2080-2087 +123, 123, 123, 125, 128, 129, 130, 132, // 2088-2095 +131, 133, 131, 128, 130, 124, 123, 123, // 2096-2103 +119, 120, 119, 118, 119, 120, 120, 121, // 2104-2111 +122, 121, 122, 122, 120, 120, 121, 124, // 2112-2119 +128, 131, 133, 139, 140, 143, 146, 143, // 2120-2127 +146, 143, 140, 137, 133, 125, 121, 118, // 2128-2135 +114, 114, 113, 114, 116, 119, 122, 127, // 2136-2143 +130, 132, 134, 135, 135, 134, 132, 130, // 2144-2151 +129, 126, 125, 125, 124, 125, 126, 128, // 2152-2159 +129, 129, 130, 130, 130, 129, 127, 126, // 2160-2167 +124, 123, 122, 120, 121, 120, 119, 121, // 2168-2175 +120, 121, 122, 121, 122, 121, 121, 121, // 2176-2183 +120, 121, 124, 127, 129, 134, 139, 138, // 2184-2191 +143, 144, 143, 146, 143, 140, 138, 133, // 2192-2199 +128, 124, 119, 115, 115, 113, 114, 116, // 2200-2207 +118, 120, 124, 128, 130, 133, 134, 134, // 2208-2215 +135, 133, 133, 131, 129, 129, 127, 126, // 2216-2223 +126, 128, 125, 128, 127, 128, 127, 128, // 2224-2231 +125, 126, 125, 123, 124, 122, 121, 122, // 2232-2239 +120, 120, 121, 121, 121, 122, 121, 122, // 2240-2247 +122, 122, 122, 121, 122, 122, 126, 130, // 2248-2255 +129, 136, 138, 137, 143, 142, 142, 143, // 2256-2263 +139, 138, 135, 131, 125, 123, 119, 116, // 2264-2271 +116, 114, 115, 118, 118, 121, 125, 126, // 2272-2279 +130, 133, 133, 135, 134, 133, 134, 131, // 2280-2287 +130, 130, 129, 128, 127, 126, 125, 126, // 2288-2295 +125, 125, 125, 124, 125, 125, 123, 124, // 2296-2303 +124, 123, 123, 123, 122, 123, 123, 122, // 2304-2311 +124, 123, 123, 123, 123, 123, 123, 122, // 2312-2319 +122, 123, 123, 126, 129, 129, 135, 136, // 2320-2327 +136, 143, 139, 141, 143, 139, 138, 135, // 2328-2335 +131, 127, 124, 120, 118, 118, 115, 116, // 2336-2343 +118, 118, 122, 124, 125, 130, 131, 133, // 2344-2351 +135, 134, 134, 134, 133, 131, 131, 129, // 2352-2359 +127, 128, 125, 125, 124, 124, 124, 124, // 2360-2367 +123, 124, 124, 123, 124, 124, 123, 124, // 2368-2375 +123, 123, 123, 123, 123, 123, 123, 123, // 2376-2383 +123, 123, 123, 123, 122, 123, 123, 126, // 2384-2391 +130, 129, 134, 137, 135, 142, 140, 139, // 2392-2399 +142, 138, 137, 135, 131, 128, 125, 121, // 2400-2407 +119, 118, 116, 117, 119, 119, 121, 124, // 2408-2415 +125, 130, 131, 132, 134, 134, 133, 133, // 2416-2423 +132, 130, 130, 129, 128, 127, 125, 125, // 2424-2431 +125, 124, 125, 125, 124, 125, 124, 124, // 2432-2439 +125, 124, 124, 124, 123, 123, 123, 123, // 2440-2447 +123, 123, 123, 123, 123, 123, 123, 123, // 2448-2455 +123, 123, 124, 125, 129, 130, 131, 136, // 2456-2463 +134, 138, 140, 138, 142, 139, 137, 136, // 2464-2471 +133, 130, 128, 123, 120, 119, 118, 117, // 2472-2479 +118, 119, 120, 123, 124, 127, 130, 131, // 2480-2487 +133, 134, 133, 133, 133, 131, 131, 130, // 2488-2495 +129, 129, 126, 125, 126, 124, 125, 124, // 2496-2503 +124, 124, 124, 124, 124, 123, 123, 123, // 2504-2511 +123, 123, 123, 123, 123, 123, 123, 123, // 2512-2519 +123, 123, 123, 123, 123, 123, 124, 124, // 2520-2527 +129, 130, 131, 136, 135, 138, 140, 138, // 2528-2535 +140, 139, 136, 136, 133, 130, 126, 123, // 2536-2543 +120, 119, 118, 117, 119, 119, 120, 123, // 2544-2551 +124, 127, 130, 131, 133, 133, 133, 133, // 2552-2559 +132, 131, 130, 129, 129, 127, 126, 125, // 2560-2567 +125, 125, 124, 124, 124, 124, 124, 124, // 2568-2575 +124, 124, 124, 124, 124, 123, 123, 123, // 2576-2583 +123, 123, 123, 123, 123, 123, 123, 123, // 2584-2591 +123, 124, 124, 124, 127, 129, 129, 133, // 2592-2599 +135, 135, 139, 138, 139, 140, 138, 136, // 2600-2607 +135, 131, 129, 126, 123, 121, 119, 118, // 2608-2615 +118, 119, 119, 121, 123, 125, 127, 130, // 2616-2623 +130, 132, 133, 133, 133, 131, 131, 131, // 2624-2631 +129, 128, 127, 125, 126, 124, 125, 124, // 2632-2639 +123, 124, 124, 123, 124, 123, 123, 124, // 2640-2647 +123, 123, 124, 123, 124, 124, 123, 124, // 2648-2655 +124, 124, 124, 124, 124, 124, 125, 125, // 2656-2663 +125, 128, 129, 131, 131, 133, 136, 135, // 2664-2671 +138, 138, 136, 138, 135, 134, 133, 130, // 2672-2679 +127, 125, 123, 121, 121, 120, 120, 121, // 2680-2687 +121, 123, 125, 126, 129, 130, 131, 132, // 2688-2695 +132, 132, 131, 131, 130, 129, 129, 127, // 2696-2703 +126, 126, 124, 125, 124, 123, 124, 123, // 2704-2711 +123, 124, 123, 124, 124, 123, 124, 124, // 2712-2719 +124, 124, 124, 124, 124, 125, 124, 125, // 2720-2727 +125, 125, 125, 126, 127, 128, 127, 129, // 2728-2735 +130, 130, 132, 132, 133, 134, 134, 135, // 2736-2743 +134, 134, 133, 132, 131, 129, 129, 126, // 2744-2751 +125, 124, 123, 123, 123, 123, 124, 124, // 2752-2759 +125, 128, 127, 130, 129, 130, 131, 129, // 2760-2767 +130, 129, 127, 129, 125, 125, 125, 123, // 2768-2775 +124, 123, 123, 123, 123, 123, 124, 124, // 2776-2783 +124, 124, 125, 125, 125, 125, 125, 125, // 2784-2791 +125, 125, 125, 125, 126, 126, 125, 127, // 2792-2799 +128, 127, 129, 129, 129, 129, 130, 129, // 2800-2807 +129, 131, 129, 131, 130, 130, 131, 129, // 2808-2815 +131, 130, 131, 130, 131, 131, 130, 130, // 2816-2823 +129, 129, 129, 126, 126, 125, 124, 125, // 2824-2831 +124, 124, 124, 124, 124, 124, 125, 125, // 2832-2839 +125, 125, 125, 125, 125, 125, 125, 124, // 2840-2847 +125, 124, 124, 125, 124, 125, 125, 125, // 2848-2855 +126, 128, 126, 128, 127, 128, 127, 128, // 2856-2863 +127, 129, 127, 128, 127, 128, 127, 128, // 2864-2871 +129, 128, 128, 129, 128, 129, 129, 128, // 2872-2879 +130, 128, 129, 129, 127, 129, 127, 128, // 2880-2887 +129, 127, 129, 129, 127, 129, 127, 128, // 2888-2895 +127, 128, 127, 128, 129, 128, 127, 128, // 2896-2903 +126, 127, 127, 125, 126, 125, 125, 125, // 2904-2911 +125, 125, 125, 125, 125, 126, 125, 127, // 2912-2919 +128, 126, 128, 128, 127, 128, 127, 128, // 2920-2927 +127, 128, 127, 128, 127, 128, 128, 127, // 2928-2935 +128, 127, 128, 128, 128, 128, 127, 128, // 2936-2943 +127, 128, 127, 128, 128, 127, 128, 128, // 2944-2951 +127, 128, 127, 128, 127, 128, 127, 128, // 2952-2959 +128, 128, 128, 128, 127, 128, 127, 128, // 2960-2967 +127, 128, 127, 128, 127, 128, 128// 2968-2974 +}; + +const char B[3016] = {121, 124, 123, 118, 118, 120, 118, 121, // 0-7 +118, 121, 122, 121, 120, 121, 122, 118, // 8-15 +121, 120, 119, 120, 119, 121, 124, 125, // 16-23 +126, 130, 133, 135, 138, 138, 140, 141, // 24-31 +140, 138, 137, 136, 132, 130, 128, 124, // 32-39 +121, 116, 114, 113, 107, 108, 106, 98, // 40-47 +103, 101, 95, 105, 115, 116, 116, 141, // 48-55 +140, 143, 160, 164, 166, 170, 174, 168, // 56-63 +166, 157, 157, 142, 134, 130, 121, 108, // 64-71 +112, 111, 103, 108, 110, 110, 110, 112, // 72-79 +113, 112, 106, 110, 103, 98, 102, 111, // 80-87 +108, 106, 132, 130, 129, 154, 158, 160, // 88-95 +170, 176, 174, 174, 166, 166, 148, 138, // 96-103 +136, 118, 108, 111, 102, 98, 105, 106, // 104-111 +109, 114, 119, 123, 121, 124, 124, 114, // 112-119 +113, 106, 98, 100, 102, 99, 98, 117, // 120-127 +115, 123, 143, 150, 160, 172, 178, 182, // 128-135 +182, 178, 176, 157, 151, 140, 121, 114, // 136-143 +108, 97, 97, 95, 98, 100, 104, 113, // 144-151 +111, 116, 120, 113, 112, 111, 102, 103, // 152-159 +108, 103, 102, 121, 116, 124, 143, 147, // 160-167 +160, 170, 180, 184, 182, 184, 178, 160, // 168-175 +157, 141, 123, 115, 103, 95, 91, 89, // 176-183 + 91, 95, 100, 108, 111, 117, 121, 123, // 184-191 +121, 118, 113, 111, 109, 112, 104, 109, // 192-199 +121, 111, 130, 138, 143, 157, 166, 174, // 200-207 +176, 178, 182, 168, 162, 154, 136, 129, // 208-215 +115, 106, 100, 95, 95, 95, 101, 105, // 216-223 +110, 115, 117, 121, 122, 118, 115, 110, // 224-231 +107, 108, 108, 100, 112, 115, 112, 135, // 232-239 +136, 146, 160, 168, 176, 178, 182, 180, // 240-247 +168, 166, 150, 136, 128, 112, 106, 100, // 248-255 + 95, 95, 97, 99, 106, 110, 115, 117, // 256-263 +123, 122, 118, 117, 110, 108, 111, 108, // 264-271 +102, 116, 113, 114, 135, 135, 148, 157, // 272-279 +168, 174, 176, 182, 174, 166, 164, 146, // 280-287 +136, 125, 112, 104, 98, 99, 91, 98, // 288-295 +104, 102, 114, 116, 116, 125, 121, 119, // 296-303 +116, 111, 108, 108, 108, 100, 113, 111, // 304-311 +112, 133, 131, 146, 157, 166, 174, 176, // 312-319 +184, 176, 170, 166, 148, 139, 129, 113, // 320-327 +108, 100, 97, 93, 97, 103, 101, 113, // 328-335 +114, 115, 124, 120, 119, 116, 111, 108, // 336-343 +108, 109, 101, 111, 113, 111, 131, 132, // 344-351 +143, 155, 166, 174, 176, 184, 176, 172, // 352-359 +168, 151, 141, 131, 117, 108, 101, 99, // 360-367 + 93, 97, 100, 101, 111, 113, 114, 121, // 368-375 +121, 117, 116, 111, 108, 110, 108, 103, // 376-383 +112, 114, 111, 130, 132, 143, 154, 164, // 384-391 +172, 176, 182, 176, 172, 168, 152, 143, // 392-399 +133, 118, 110, 103, 98, 93, 97, 99, // 400-407 + 99, 109, 111, 113, 119, 119, 117, 116, // 408-415 +112, 108, 111, 111, 103, 114, 114, 112, // 416-423 +133, 130, 144, 153, 164, 170, 174, 184, // 424-431 +174, 174, 168, 151, 143, 131, 119, 111, // 432-439 +103, 101, 91, 99, 98, 99, 111, 108, // 440-447 +115, 116, 118, 116, 113, 112, 106, 112, // 448-455 +110, 103, 118, 112, 116, 133, 131, 146, // 456-463 +154, 166, 170, 176, 182, 172, 174, 166, // 464-471 +152, 144, 131, 119, 111, 106, 97, 95, // 472-479 + 99, 95, 103, 107, 109, 113, 116, 116, // 480-487 +115, 113, 108, 109, 112, 108, 106, 118, // 488-495 +113, 118, 136, 133, 148, 156, 166, 170, // 496-503 +178, 180, 172, 174, 162, 149, 143, 130, // 504-511 +118, 111, 104, 98, 95, 100, 95, 104, // 512-519 +107, 108, 114, 115, 116, 115, 113, 108, // 520-527 +109, 112, 108, 108, 121, 111, 123, 135, // 528-535 +134, 150, 156, 168, 168, 180, 178, 170, // 536-543 +174, 160, 149, 143, 128, 118, 109, 104, // 544-551 + 97, 95, 100, 95, 106, 106, 110, 114, // 552-559 +114, 118, 115, 114, 109, 109, 112, 108, // 560-567 +108, 118, 112, 121, 133, 133, 147, 154, // 568-575 +166, 168, 180, 176, 172, 174, 160, 152, // 576-583 +143, 130, 119, 112, 104, 99, 99, 97, // 584-591 + 97, 103, 105, 111, 112, 114, 116, 116, // 592-599 +113, 110, 110, 111, 111, 106, 118, 112, // 600-607 +118, 134, 129, 148, 151, 162, 168, 176, // 608-615 +178, 170, 176, 160, 153, 145, 130, 122, // 616-623 +112, 105, 100, 97, 98, 95, 104, 103, // 624-631 +111, 113, 113, 118, 116, 115, 112, 111, // 632-639 +112, 112, 106, 116, 116, 113, 133, 128, // 640-647 +143, 149, 160, 166, 172, 180, 170, 176, // 648-655 +162, 154, 147, 133, 124, 115, 106, 102, // 656-663 + 99, 97, 99, 101, 105, 109, 113, 113, // 664-671 +118, 118, 114, 113, 111, 110, 113, 106, // 672-679 +112, 117, 111, 127, 128, 138, 147, 156, // 680-687 +166, 168, 180, 170, 176, 168, 157, 151, // 688-695 +138, 128, 118, 111, 102, 100, 97, 97, // 696-703 +101, 103, 107, 112, 113, 116, 118, 116, // 704-711 +113, 113, 109, 113, 111, 107, 119, 111, // 712-719 +120, 130, 130, 146, 149, 164, 164, 176, // 720-727 +174, 172, 174, 158, 155, 144, 133, 122, // 728-735 +113, 106, 102, 100, 97, 101, 103, 107, // 736-743 +111, 115, 116, 119, 120, 116, 115, 111, // 744-751 +111, 113, 106, 111, 117, 108, 126, 125, // 752-759 +134, 146, 154, 164, 168, 180, 170, 176, // 760-767 +168, 157, 153, 138, 130, 118, 112, 103, // 768-775 +102, 100, 97, 104, 103, 109, 113, 115, // 776-783 +118, 121, 121, 116, 116, 111, 112, 113, // 784-791 +106, 112, 115, 110, 126, 124, 136, 146, // 792-799 +155, 164, 168, 180, 170, 176, 166, 157, // 800-807 +150, 137, 128, 117, 112, 101, 102, 99, // 808-815 + 95, 106, 103, 110, 116, 116, 121, 122, // 816-823 +123, 118, 118, 111, 112, 113, 106, 108, // 824-831 +114, 107, 118, 128, 127, 145, 151, 160, // 832-839 +168, 178, 172, 174, 170, 157, 153, 140, // 840-847 +129, 120, 112, 104, 101, 100, 97, 103, // 848-855 +105, 108, 115, 116, 119, 123, 122, 120, // 856-863 +119, 112, 111, 113, 107, 103, 113, 106, // 864-871 +112, 126, 122, 142, 148, 160, 164, 176, // 872-879 +174, 172, 176, 158, 156, 143, 132, 122, // 880-887 +114, 106, 101, 102, 95, 103, 104, 106, // 888-895 +116, 116, 121, 124, 126, 124, 124, 118, // 896-903 +112, 113, 109, 106, 104, 112, 103, 116, // 904-911 +123, 124, 145, 148, 162, 168, 176, 174, // 912-919 +174, 172, 157, 155, 140, 130, 121, 111, // 920-927 +106, 101, 99, 98, 102, 104, 109, 116, // 928-935 +117, 123, 125, 124, 125, 123, 116, 113, // 936-943 +111, 108, 106, 102, 111, 105, 115, 125, // 944-951 +126, 146, 150, 164, 168, 176, 174, 172, // 952-959 +172, 156, 154, 140, 129, 120, 111, 104, // 960-967 +101, 98, 98, 104, 104, 112, 116, 119, // 968-975 +126, 128, 129, 128, 126, 118, 115, 110, // 976-983 +108, 108, 98, 108, 106, 107, 124, 122, // 984-991 +141, 149, 160, 168, 174, 178, 172, 176, // 992-999 +160, 155, 146, 132, 124, 113, 107, 102, // 1000-1007 +101, 97, 103, 105, 108, 116, 118, 124, // 1008-1015 +127, 129, 129, 128, 122, 117, 112, 108, // 1016-1023 +108, 103, 100, 109, 106, 113, 128, 128, // 1024-1031 +146, 152, 164, 170, 178, 174, 172, 170, // 1032-1039 +154, 152, 138, 128, 119, 111, 104, 101, // 1040-1047 +100, 99, 106, 106, 112, 118, 121, 127, // 1048-1055 +130, 130, 130, 129, 121, 118, 111, 106, // 1056-1063 +107, 102, 99, 109, 106, 113, 127, 128, // 1064-1071 +146, 152, 162, 168, 176, 174, 170, 170, // 1072-1079 +154, 152, 138, 126, 121, 110, 105, 103, // 1080-1087 +100, 100, 105, 108, 112, 118, 120, 127, // 1088-1095 +130, 129, 130, 128, 122, 118, 112, 106, // 1096-1103 +106, 104, 99, 106, 109, 108, 126, 127, // 1104-1111 +141, 152, 160, 168, 172, 176, 168, 170, // 1112-1119 +157, 150, 143, 129, 120, 114, 105, 103, // 1120-1127 +103, 98, 106, 108, 111, 118, 121, 124, // 1128-1135 +131, 131, 130, 131, 124, 121, 116, 108, // 1136-1143 +106, 105, 102, 100, 107, 109, 112, 130, // 1144-1151 +129, 145, 155, 160, 170, 172, 172, 168, // 1152-1159 +168, 153, 148, 138, 124, 120, 111, 105, // 1160-1167 +104, 102, 101, 108, 109, 112, 121, 121, // 1168-1175 +127, 132, 130, 132, 130, 124, 121, 116, // 1176-1183 +108, 108, 103, 103, 100, 106, 111, 110, // 1184-1191 +130, 127, 145, 152, 160, 168, 170, 170, // 1192-1199 +166, 166, 152, 149, 138, 128, 120, 113, // 1200-1207 +107, 105, 104, 103, 108, 111, 113, 120, // 1208-1215 +123, 128, 131, 131, 131, 131, 126, 122, // 1216-1223 +119, 110, 108, 103, 103, 103, 102, 111, // 1224-1231 +111, 121, 131, 136, 151, 154, 166, 166, // 1232-1239 +170, 168, 162, 160, 147, 143, 131, 124, // 1240-1247 +116, 111, 107, 106, 105, 107, 110, 112, // 1248-1255 +118, 120, 128, 129, 131, 133, 132, 130, // 1256-1263 +128, 123, 118, 113, 108, 106, 103, 105, // 1264-1271 +101, 109, 113, 113, 133, 132, 145, 153, // 1272-1279 +157, 166, 166, 168, 160, 162, 148, 143, // 1280-1287 +138, 125, 122, 115, 111, 110, 108, 107, // 1288-1295 +112, 112, 116, 121, 121, 126, 129, 130, // 1296-1303 +130, 130, 128, 125, 122, 117, 113, 109, // 1304-1311 +106, 107, 106, 104, 113, 114, 117, 134, // 1312-1319 +131, 146, 151, 156, 160, 164, 162, 157, // 1320-1327 +160, 146, 144, 137, 127, 124, 117, 112, // 1328-1335 +112, 110, 109, 112, 112, 115, 119, 119, // 1336-1343 +125, 128, 127, 130, 130, 129, 127, 125, // 1344-1351 +121, 118, 112, 109, 107, 108, 106, 107, // 1352-1359 +114, 112, 122, 131, 133, 148, 147, 157, // 1360-1367 +159, 162, 160, 158, 155, 146, 146, 134, // 1368-1375 +130, 124, 117, 113, 112, 108, 109, 111, // 1376-1383 +108, 116, 116, 118, 124, 126, 129, 133, // 1384-1391 +132, 132, 133, 128, 128, 122, 116, 113, // 1392-1399 +108, 107, 107, 103, 107, 113, 111, 125, // 1400-1407 +128, 136, 146, 148, 157, 160, 164, 158, // 1408-1415 +162, 153, 148, 144, 133, 130, 121, 116, // 1416-1423 +112, 111, 106, 108, 109, 108, 114, 115, // 1424-1431 +119, 125, 127, 132, 135, 136, 135, 136, // 1432-1439 +130, 130, 124, 117, 115, 107, 104, 105, // 1440-1447 +101, 102, 109, 109, 114, 130, 128, 143, // 1448-1455 +148, 153, 162, 164, 164, 162, 162, 149, // 1456-1463 +150, 138, 131, 126, 116, 113, 109, 106, // 1464-1471 +104, 108, 106, 111, 114, 116, 124, 128, // 1472-1479 +132, 136, 138, 138, 140, 138, 134, 133, // 1480-1487 +125, 120, 115, 107, 103, 100, 98, 100, // 1488-1495 + 99, 108, 109, 118, 129, 133, 148, 148, // 1496-1503 +162, 162, 166, 166, 162, 160, 151, 148, // 1504-1511 +136, 132, 121, 116, 112, 107, 106, 105, // 1512-1519 +105, 107, 111, 113, 118, 124, 129, 134, // 1520-1527 +137, 141, 141, 143, 141, 138, 136, 130, // 1528-1535 +124, 116, 111, 103, 100, 95, 95, 97, // 1536-1543 + 97, 106, 112, 116, 131, 136, 145, 156, // 1544-1551 +160, 168, 168, 170, 166, 164, 154, 149, // 1552-1559 +142, 131, 125, 116, 112, 108, 104, 103, // 1560-1567 +103, 105, 108, 113, 116, 123, 130, 133, // 1568-1575 +139, 141, 143, 143, 143, 142, 138, 133, // 1576-1583 +128, 121, 112, 108, 100, 95, 91, 91, // 1584-1591 + 95, 97, 101, 111, 117, 124, 140, 141, // 1592-1599 +155, 160, 166, 170, 170, 170, 164, 162, // 1600-1607 +150, 146, 136, 128, 121, 112, 110, 105, // 1608-1615 +103, 103, 104, 106, 111, 115, 119, 126, // 1616-1623 +131, 136, 140, 143, 143, 145, 143, 141, // 1624-1631 +138, 130, 126, 119, 112, 107, 101, 93, // 1632-1639 + 95, 89, 91, 95, 100, 104, 111, 124, // 1640-1647 +123, 143, 144, 155, 166, 166, 174, 172, // 1648-1655 +172, 166, 164, 152, 146, 138, 126, 122, // 1656-1663 +112, 108, 104, 100, 100, 103, 103, 108, // 1664-1671 +113, 117, 124, 131, 135, 140, 143, 143, // 1672-1679 +147, 143, 143, 139, 133, 129, 121, 114, // 1680-1687 +107, 103, 95, 93, 91, 87, 91, 93, // 1688-1695 +100, 108, 111, 124, 132, 138, 153, 154, // 1696-1703 +166, 170, 174, 176, 174, 172, 164, 160, // 1704-1711 +146, 142, 130, 120, 113, 106, 102, 99, // 1712-1719 + 97, 97, 102, 103, 110, 115, 120, 129, // 1720-1727 +133, 140, 143, 146, 147, 146, 146, 141, // 1728-1735 +139, 131, 125, 118, 111, 106, 100, 95, // 1736-1743 + 91, 91, 91, 93, 95, 100, 106, 113, // 1744-1751 +121, 127, 140, 145, 151, 164, 162, 174, // 1752-1759 +172, 174, 174, 168, 164, 154, 148, 136, // 1760-1767 +131, 116, 111, 105, 97, 97, 95, 95, // 1768-1775 + 99, 104, 108, 116, 121, 128, 136, 139, // 1776-1783 +144, 147, 146, 148, 145, 143, 139, 133, // 1784-1791 +126, 119, 113, 107, 103, 98, 95, 95, // 1792-1799 + 95, 97, 100, 105, 109, 114, 119, 126, // 1800-1807 +136, 139, 144, 154, 151, 162, 162, 162, // 1808-1815 +170, 162, 164, 158, 154, 145, 141, 130, // 1816-1823 +121, 117, 106, 106, 100, 98, 100, 100, // 1824-1831 +103, 109, 112, 118, 125, 130, 136, 141, // 1832-1839 +142, 146, 145, 144, 144, 141, 137, 133, // 1840-1847 +127, 122, 117, 111, 109, 106, 103, 103, // 1848-1855 +103, 106, 109, 112, 116, 121, 122, 129, // 1856-1863 +130, 133, 136, 138, 139, 140, 145, 141, // 1864-1871 +146, 147, 143, 151, 144, 148, 146, 143, // 1872-1879 +139, 136, 130, 123, 121, 112, 113, 110, // 1880-1887 +108, 111, 109, 112, 115, 117, 121, 128, // 1888-1895 +128, 133, 136, 136, 139, 139, 138, 139, // 1896-1903 +136, 135, 134, 130, 128, 124, 120, 119, // 1904-1911 +116, 114, 114, 113, 113, 116, 116, 118, // 1912-1919 +120, 120, 122, 123, 123, 124, 122, 122, // 1920-1927 +123, 125, 123, 128, 132, 126, 141, 136, // 1928-1935 +143, 148, 144, 152, 147, 148, 143, 143, // 1936-1943 +134, 133, 125, 118, 119, 112, 112, 112, // 1944-1951 +111, 113, 116, 116, 121, 124, 124, 131, // 1952-1959 +131, 134, 137, 136, 138, 138, 138, 136, // 1960-1967 +136, 133, 132, 130, 124, 124, 119, 117, // 1968-1975 +116, 113, 112, 112, 112, 113, 114, 114, // 1976-1983 +117, 117, 118, 119, 119, 121, 120, 122, // 1984-1991 +125, 124, 127, 135, 132, 141, 143, 143, // 1992-1999 +153, 148, 154, 151, 150, 146, 143, 138, // 2000-2007 +132, 129, 119, 119, 113, 112, 113, 111, // 2008-2015 +113, 115, 116, 118, 121, 122, 126, 128, // 2016-2023 +129, 133, 133, 133, 136, 135, 136, 136, // 2024-2031 +133, 134, 131, 129, 128, 123, 121, 119, // 2032-2039 +116, 115, 114, 113, 114, 114, 115, 117, // 2040-2047 +117, 119, 120, 120, 121, 120, 122, 121, // 2048-2055 +124, 127, 126, 130, 136, 133, 143, 143, // 2056-2063 +144, 154, 148, 155, 150, 148, 145, 142, // 2064-2071 +136, 131, 127, 118, 118, 112, 112, 111, // 2072-2079 +111, 112, 113, 113, 117, 120, 121, 125, // 2080-2087 +127, 130, 133, 135, 136, 138, 139, 138, // 2088-2095 +140, 138, 136, 136, 131, 130, 125, 122, // 2096-2103 +120, 116, 115, 113, 112, 112, 113, 113, // 2104-2111 +116, 116, 118, 120, 121, 122, 122, 122, // 2112-2119 +122, 122, 124, 128, 126, 130, 136, 131, // 2120-2127 +143, 140, 145, 150, 146, 152, 148, 148, // 2128-2135 +143, 142, 134, 131, 125, 118, 118, 112, // 2136-2143 +112, 112, 111, 113, 113, 115, 118, 121, // 2144-2151 +122, 128, 129, 130, 134, 135, 138, 138, // 2152-2159 +139, 139, 139, 138, 136, 136, 130, 130, // 2160-2167 +124, 121, 118, 114, 113, 112, 110, 111, // 2168-2175 +112, 113, 114, 116, 118, 120, 121, 122, // 2176-2183 +122, 123, 122, 123, 124, 125, 129, 128, // 2184-2191 +136, 134, 138, 146, 142, 152, 148, 151, // 2192-2199 +151, 148, 146, 142, 138, 130, 128, 118, // 2200-2207 +116, 113, 109, 110, 109, 109, 112, 113, // 2208-2215 +116, 119, 121, 125, 129, 131, 133, 136, // 2216-2223 +137, 140, 139, 141, 141, 137, 140, 133, // 2224-2231 +133, 130, 124, 124, 118, 116, 113, 113, // 2232-2239 +112, 112, 112, 113, 116, 116, 120, 121, // 2240-2247 +122, 124, 124, 124, 124, 124, 123, 124, // 2248-2255 +125, 128, 127, 133, 134, 136, 144, 140, // 2256-2263 +148, 148, 147, 151, 146, 145, 141, 137, // 2264-2271 +130, 127, 118, 115, 113, 109, 110, 110, // 2272-2279 +109, 112, 113, 116, 121, 123, 126, 131, // 2280-2287 +133, 136, 138, 138, 141, 141, 141, 142, // 2288-2295 +138, 140, 134, 133, 130, 123, 122, 117, // 2296-2303 +116, 113, 112, 111, 111, 112, 112, 115, // 2304-2311 +116, 118, 121, 122, 124, 125, 124, 126, // 2312-2319 +124, 123, 124, 121, 126, 127, 124, 137, // 2320-2327 +131, 137, 145, 138, 151, 146, 148, 151, // 2328-2335 +144, 144, 140, 136, 127, 126, 117, 114, // 2336-2343 +113, 108, 111, 111, 110, 115, 115, 119, // 2344-2351 +124, 126, 131, 134, 136, 138, 140, 140, // 2352-2359 +142, 141, 140, 139, 136, 134, 132, 127, // 2360-2367 +124, 121, 117, 116, 114, 112, 112, 112, // 2368-2375 +112, 114, 115, 117, 119, 121, 123, 126, // 2376-2383 +125, 128, 127, 126, 126, 124, 124, 121, // 2384-2391 +126, 129, 124, 135, 137, 130, 150, 137, // 2392-2399 +146, 153, 141, 154, 143, 143, 141, 134, // 2400-2407 +127, 124, 118, 112, 114, 108, 108, 113, // 2408-2415 +109, 115, 118, 118, 127, 129, 131, 136, // 2416-2423 +138, 138, 142, 139, 140, 141, 136, 138, // 2424-2431 +134, 130, 130, 123, 121, 119, 116, 115, // 2432-2439 +114, 112, 113, 114, 113, 116, 118, 119, // 2440-2447 +122, 124, 125, 128, 127, 128, 127, 126, // 2448-2455 +124, 124, 121, 121, 121, 126, 128, 126, // 2456-2463 +139, 131, 142, 146, 139, 154, 144, 147, // 2464-2471 +148, 141, 139, 133, 128, 121, 118, 112, // 2472-2479 +111, 112, 108, 112, 113, 113, 121, 122, // 2480-2487 +128, 133, 134, 137, 139, 139, 140, 141, // 2488-2495 +138, 138, 136, 132, 133, 128, 124, 123, // 2496-2503 +118, 118, 116, 115, 114, 114, 115, 115, // 2504-2511 +117, 118, 120, 121, 123, 124, 125, 126, // 2512-2519 +127, 128, 125, 125, 124, 122, 121, 120, // 2520-2527 +121, 123, 128, 126, 134, 139, 135, 147, // 2528-2535 +143, 143, 152, 143, 146, 143, 136, 135, // 2536-2543 +128, 121, 117, 114, 110, 111, 111, 111, // 2544-2551 +116, 117, 120, 128, 128, 133, 137, 137, // 2552-2559 +139, 140, 139, 138, 138, 135, 133, 131, // 2560-2567 +128, 125, 124, 121, 120, 118, 117, 118, // 2568-2575 +116, 116, 118, 118, 119, 121, 121, 123, // 2576-2583 +124, 124, 125, 125, 126, 124, 125, 124, // 2584-2591 +122, 124, 120, 121, 122, 120, 129, 128, // 2592-2599 +132, 138, 138, 143, 145, 145, 146, 146, // 2600-2607 +144, 141, 138, 133, 127, 124, 117, 116, // 2608-2615 +113, 111, 113, 113, 116, 120, 123, 129, // 2616-2623 +132, 135, 137, 138, 139, 138, 138, 135, // 2624-2631 +133, 130, 126, 124, 123, 121, 121, 121, // 2632-2639 +121, 121, 121, 121, 123, 123, 122, 124, // 2640-2647 +124, 123, 124, 122, 122, 122, 121, 122, // 2648-2655 +122, 121, 123, 122, 122, 123, 122, 123, // 2656-2663 +123, 124, 130, 132, 133, 141, 140, 142, // 2664-2671 +148, 142, 146, 145, 139, 141, 134, 129, // 2672-2679 +125, 120, 116, 114, 113, 112, 115, 117, // 2680-2687 +118, 124, 128, 131, 136, 136, 137, 138, // 2688-2695 +136, 134, 133, 129, 126, 125, 122, 122, // 2696-2703 +122, 121, 123, 123, 124, 124, 125, 125, // 2704-2711 +124, 124, 123, 122, 122, 120, 120, 120, // 2712-2719 +120, 121, 121, 122, 123, 124, 126, 126, // 2720-2727 +125, 126, 126, 124, 124, 124, 124, 129, // 2728-2735 +131, 130, 139, 138, 138, 146, 141, 143, // 2736-2743 +143, 137, 137, 133, 126, 124, 120, 116, // 2744-2751 +115, 116, 115, 117, 121, 121, 127, 131, // 2752-2759 +131, 136, 136, 135, 135, 133, 130, 128, // 2760-2767 +126, 124, 124, 123, 122, 124, 124, 125, // 2768-2775 +127, 127, 127, 128, 125, 125, 123, 121, // 2776-2783 +121, 119, 119, 119, 120, 120, 122, 123, // 2784-2791 +124, 128, 128, 128, 130, 126, 126, 128, // 2792-2799 +123, 124, 124, 121, 123, 128, 129, 132, // 2800-2807 +137, 138, 141, 143, 143, 141, 140, 137, // 2808-2815 +133, 130, 126, 121, 120, 118, 117, 118, // 2816-2823 +119, 121, 124, 127, 130, 132, 133, 134, // 2824-2831 +133, 133, 130, 129, 126, 124, 123, 122, // 2832-2839 +122, 124, 124, 125, 128, 127, 129, 129, // 2840-2847 +128, 127, 124, 124, 121, 120, 119, 118, // 2848-2855 +119, 120, 121, 122, 124, 126, 128, 129, // 2856-2863 +129, 127, 129, 128, 126, 125, 124, 124, // 2864-2871 +124, 122, 125, 125, 125, 130, 129, 133, // 2872-2879 +136, 134, 138, 139, 135, 138, 135, 132, // 2880-2887 +133, 129, 128, 126, 125, 125, 124, 126, // 2888-2895 +126, 126, 128, 127, 128, 129, 129, 128, // 2896-2903 +127, 128, 126, 128, 126, 126, 126, 126, // 2904-2911 +126, 126, 126, 126, 126, 125, 125, 125, // 2912-2919 +124, 124, 124, 123, 123, 123, 124, 124, // 2920-2927 +124, 125, 126, 126, 126, 128, 127, 126, // 2928-2935 +127, 126, 126, 126, 126, 125, 128, 126, // 2936-2943 +128, 129, 127, 130, 127, 129, 130, 128, // 2944-2951 +130, 128, 126, 130, 125, 128, 129, 128, // 2952-2959 +130, 129, 131, 133, 131, 133, 133, 131, // 2960-2967 +132, 130, 130, 129, 128, 126, 125, 124, // 2968-2975 +125, 125, 124, 126, 126, 126, 126, 126, // 2976-2983 +128, 125, 125, 125, 124, 124, 124, 124, // 2984-2991 +124, 124, 125, 125, 126, 127, 128, 127, // 2992-2999 +128, 127, 126, 126, 126, 125, 125, 126, // 3000-3007 +126, 126, 127, 128, 127, 128, 127, 128 +}; + +const char C[2622] = {125, 126, 127, 125, 126, 128, 128, 127, // 0-7 +128, 128, 129, 127, 128, 127, 129, 126, // 8-15 +125, 128, 127, 125, 125, 128, 127, 126, // 16-23 +127, 128, 127, 126, 125, 128, 129, 125, // 24-31 +126, 128, 127, 128, 125, 128, 129, 126, // 32-39 +127, 129, 128, 128, 125, 126, 128, 125, // 40-47 +125, 127, 129, 127, 128, 129, 129, 128, // 48-55 +127, 129, 129, 126, 125, 127, 128, 125, // 56-63 +125, 125, 125, 124, 124, 124, 123, 122, // 64-71 +123, 123, 124, 124, 124, 127, 128, 130, // 72-79 +131, 133, 135, 136, 136, 138, 138, 136, // 80-87 +135, 134, 131, 129, 126, 124, 121, 120, // 88-95 +118, 117, 117, 116, 115, 116, 116, 117, // 96-103 +115, 114, 115, 115, 118, 125, 126, 126, // 104-111 +138, 140, 140, 144, 147, 150, 150, 147, // 112-119 +146, 145, 138, 134, 130, 122, 118, 114, // 120-127 +112, 114, 112, 115, 120, 119, 119, 121, // 128-135 +123, 123, 120, 119, 117, 112, 108, 107, // 136-143 +115, 120, 112, 125, 141, 136, 142, 154, // 144-151 +157, 157, 155, 155, 157, 143, 134, 135, // 152-159 +124, 112, 110, 108, 107, 106, 108, 118, // 160-167 +120, 122, 133, 134, 131, 134, 130, 122, // 168-175 +118, 112, 106, 100, 102, 112, 107, 112, // 176-183 +134, 135, 140, 155, 162, 166, 166, 164, // 184-191 +166, 155, 141, 138, 127, 111, 106, 101, // 192-199 + 95, 98, 99, 108, 116, 120, 133, 140, // 200-207 +138, 142, 142, 135, 129, 120, 112, 104, // 208-215 + 95, 97, 106, 101, 105, 130, 133, 138, // 216-223 +155, 164, 170, 170, 170, 172, 160, 144, // 224-231 +142, 127, 111, 103, 95, 91, 89, 93, // 232-239 +105, 110, 118, 133, 138, 140, 143, 144, // 240-247 +139, 131, 124, 114, 102, 97, 106, 102, // 248-255 + 93, 119, 126, 124, 144, 157, 164, 168, // 256-263 +170, 174, 166, 150, 149, 136, 114, 109, // 264-271 +101, 89, 89, 89, 95, 104, 112, 130, // 272-279 +139, 143, 154, 153, 148, 148, 140, 131, // 280-287 +118, 106, 99, 85, 85, 98, 91, 98, // 288-295 +127, 128, 138, 160, 166, 174, 176, 176, // 296-303 +176, 158, 148, 143, 118, 106, 102, 87, // 304-311 + 83, 87, 91, 101, 111, 125, 139, 144, // 312-319 +155, 156, 153, 152, 143, 133, 122, 106, // 320-327 + 95, 87, 85, 93, 85, 99, 125, 120, // 328-335 +140, 162, 164, 176, 180, 180, 176, 160, // 336-343 +153, 141, 114, 110, 98, 83, 83, 83, // 344-351 + 87, 98, 108, 127, 136, 145, 162, 158, // 352-359 +156, 158, 147, 136, 126, 112, 99, 85, // 360-367 + 79, 85, 87, 83, 111, 125, 123, 154, // 368-375 +168, 170, 180, 184, 184, 172, 158, 153, // 376-383 +129, 112, 108, 87, 81, 83, 81, 89, // 384-391 + 98, 114, 129, 138, 152, 160, 158, 160, // 392-399 +156, 146, 136, 124, 111, 95, 85, 77, // 400-407 + 79, 87, 85, 105, 128, 126, 151, 170, // 408-415 +172, 184, 184, 184, 174, 162, 152, 131, // 416-423 +112, 107, 89, 79, 81, 81, 87, 98, // 424-431 +112, 125, 138, 152, 160, 162, 162, 158, // 432-439 +149, 139, 127, 112, 99, 87, 79, 79, // 440-447 + 87, 87, 99, 124, 125, 146, 168, 170, // 448-455 +180, 184, 184, 174, 164, 153, 135, 116, // 456-463 +110, 91, 83, 83, 81, 87, 97, 108, // 464-471 +121, 134, 148, 156, 162, 164, 157, 153, // 472-479 +144, 130, 120, 106, 93, 85, 77, 83, // 480-487 + 91, 87, 112, 129, 128, 158, 166, 170, // 488-495 +182, 182, 180, 168, 160, 148, 125, 116, // 496-503 +106, 87, 87, 85, 83, 91, 101, 112, // 504-511 +123, 138, 149, 152, 162, 160, 152, 152, // 512-519 +139, 127, 118, 103, 95, 85, 81, 89, // 520-527 + 89, 95, 118, 124, 133, 160, 162, 170, // 528-535 +180, 178, 174, 164, 158, 143, 125, 119, // 536-543 +103, 91, 93, 85, 89, 95, 103, 113, // 544-551 +123, 138, 144, 151, 158, 154, 150, 148, // 552-559 +136, 126, 118, 105, 97, 89, 87, 93, // 560-567 + 93, 99, 120, 120, 137, 158, 155, 170, // 568-575 +174, 174, 170, 162, 157, 140, 129, 120, // 576-583 +103, 98, 95, 89, 93, 97, 105, 112, // 584-591 +123, 135, 142, 149, 153, 151, 149, 144, // 592-599 +137, 127, 119, 109, 100, 93, 91, 95, // 600-607 + 97, 99, 119, 122, 132, 153, 152, 166, // 608-615 +170, 170, 168, 162, 157, 143, 131, 124, // 616-623 +108, 103, 98, 91, 97, 97, 105, 111, // 624-631 +120, 131, 136, 146, 149, 149, 150, 143, // 632-639 +140, 131, 121, 115, 105, 99, 93, 93, // 640-647 +100, 99, 108, 125, 122, 143, 152, 153, // 648-655 +166, 166, 168, 162, 158, 151, 135, 131, // 656-663 +119, 106, 106, 97, 97, 99, 102, 110, // 664-671 +114, 125, 131, 139, 146, 146, 148, 146, // 672-679 +140, 138, 127, 120, 112, 106, 101, 95, // 680-687 + 98, 102, 103, 112, 126, 124, 143, 152, // 688-695 +152, 164, 164, 164, 158, 156, 147, 135, // 696-703 +130, 118, 108, 108, 100, 99, 103, 105, // 704-711 +111, 116, 125, 131, 138, 144, 144, 146, // 712-719 +145, 139, 136, 129, 120, 115, 109, 103, // 720-727 + 99, 99, 102, 108, 108, 122, 131, 131, // 728-735 +151, 149, 156, 162, 160, 160, 152, 150, // 736-743 +139, 130, 125, 112, 110, 107, 102, 106, // 744-751 +106, 111, 115, 121, 129, 133, 140, 142, // 752-759 +143, 143, 140, 135, 131, 124, 118, 114, // 760-767 +110, 105, 102, 102, 107, 111, 112, 127, // 768-775 +130, 134, 151, 146, 155, 157, 156, 154, // 776-783 +148, 147, 135, 131, 125, 113, 112, 110, // 784-791 +105, 110, 108, 113, 116, 122, 128, 131, // 792-799 +138, 138, 140, 140, 138, 135, 130, 125, // 800-807 +120, 116, 112, 108, 107, 106, 107, 112, // 808-815 +114, 117, 133, 130, 139, 147, 145, 154, // 816-823 +153, 153, 149, 146, 143, 133, 131, 123, // 824-831 +115, 116, 110, 111, 112, 112, 116, 118, // 832-839 +123, 125, 131, 135, 135, 138, 137, 135, // 840-847 +133, 129, 126, 121, 119, 115, 112, 111, // 848-855 +108, 110, 112, 116, 115, 126, 133, 129, // 856-863 +146, 142, 146, 152, 148, 149, 146, 144, // 864-871 +137, 134, 130, 120, 119, 115, 111, 114, // 872-879 +112, 114, 115, 119, 122, 125, 131, 131, // 880-887 +135, 136, 135, 135, 132, 130, 128, 122, // 888-895 +120, 116, 113, 111, 110, 110, 112, 116, // 896-903 +114, 127, 128, 131, 144, 140, 149, 149, // 904-911 +149, 149, 146, 145, 137, 135, 130, 120, // 912-919 +120, 113, 112, 112, 110, 113, 114, 118, // 920-927 +121, 125, 131, 132, 137, 137, 137, 138, // 928-935 +134, 133, 129, 124, 121, 118, 115, 111, // 936-943 +110, 108, 108, 114, 114, 116, 131, 128, // 944-951 +136, 145, 142, 151, 149, 152, 149, 147, // 952-959 +144, 136, 135, 125, 119, 119, 111, 111, // 960-967 +112, 108, 112, 114, 119, 122, 128, 133, // 968-975 +134, 139, 138, 139, 139, 134, 133, 130, // 976-983 +124, 121, 118, 114, 111, 110, 107, 107, // 984-991 +112, 114, 115, 123, 133, 129, 144, 144, // 992-999 +144, 154, 149, 151, 148, 146, 140, 135, // 1000-1007 +132, 120, 118, 115, 108, 112, 110, 110, // 1008-1015 +115, 116, 121, 125, 131, 134, 138, 140, // 1016-1023 +139, 141, 138, 134, 133, 127, 123, 120, // 1024-1031 +117, 112, 112, 110, 107, 108, 109, 112, // 1032-1039 +118, 118, 131, 133, 135, 148, 143, 151, // 1040-1047 +151, 150, 150, 145, 143, 135, 133, 125, // 1048-1055 +116, 117, 112, 108, 112, 109, 112, 116, // 1056-1063 +119, 124, 129, 134, 136, 140, 140, 140, // 1064-1071 +142, 136, 135, 133, 125, 124, 120, 116, // 1072-1079 +114, 112, 110, 107, 108, 108, 111, 116, // 1080-1087 +119, 121, 135, 134, 140, 149, 144, 152, // 1088-1095 +151, 150, 147, 144, 142, 133, 131, 121, // 1096-1103 +115, 115, 110, 109, 112, 110, 113, 118, // 1104-1111 +121, 125, 132, 135, 138, 142, 142, 141, // 1112-1119 +141, 137, 134, 131, 126, 123, 120, 116, // 1120-1127 +114, 112, 110, 109, 110, 108, 110, 112, // 1128-1135 +115, 121, 124, 131, 139, 136, 147, 147, // 1136-1143 +147, 153, 147, 149, 144, 142, 135, 129, // 1144-1151 +125, 117, 115, 112, 110, 112, 111, 112, // 1152-1159 +117, 120, 125, 130, 135, 137, 140, 142, // 1160-1167 +140, 142, 138, 135, 134, 129, 125, 121, // 1168-1175 +118, 116, 113, 112, 111, 111, 111, 108, // 1176-1183 +112, 112, 112, 117, 121, 126, 129, 138, // 1184-1191 +139, 141, 149, 145, 149, 151, 147, 147, // 1192-1199 +143, 139, 133, 129, 122, 116, 115, 111, // 1200-1207 +111, 112, 112, 115, 119, 122, 127, 132, // 1208-1215 +136, 138, 142, 140, 140, 140, 136, 135, // 1216-1223 +133, 129, 125, 122, 119, 116, 114, 112, // 1224-1231 +111, 111, 110, 111, 111, 112, 112, 115, // 1232-1239 +118, 122, 129, 130, 136, 143, 141, 148, // 1240-1247 +149, 147, 153, 148, 147, 143, 140, 134, // 1248-1255 +129, 124, 116, 114, 112, 109, 112, 112, // 1256-1263 +112, 118, 120, 125, 130, 134, 137, 140, // 1264-1271 +142, 141, 143, 139, 137, 137, 130, 129, // 1272-1279 +124, 119, 118, 113, 112, 111, 111, 110, // 1280-1287 +111, 112, 112, 115, 116, 118, 121, 121, // 1288-1295 +127, 130, 135, 135, 142, 144, 142, 151, // 1296-1303 +146, 148, 149, 143, 143, 139, 135, 129, // 1304-1311 +124, 119, 113, 112, 110, 108, 112, 111, // 1312-1319 +115, 119, 123, 129, 133, 136, 139, 142, // 1320-1327 +142, 142, 142, 138, 136, 132, 126, 125, // 1328-1335 +119, 118, 115, 112, 112, 112, 112, 112, // 1336-1343 +114, 116, 118, 121, 123, 124, 126, 126, // 1344-1351 +127, 128, 130, 131, 133, 134, 137, 140, // 1352-1359 +137, 143, 142, 142, 143, 140, 140, 136, // 1360-1367 +133, 127, 123, 120, 115, 114, 112, 112, // 1368-1375 +114, 114, 118, 121, 124, 130, 133, 135, // 1376-1383 +138, 139, 139, 139, 138, 134, 133, 130, // 1384-1391 +124, 124, 120, 118, 118, 116, 116, 116, // 1392-1399 +118, 119, 120, 123, 124, 125, 127, 128, // 1400-1407 +128, 127, 125, 124, 123, 121, 123, 124, // 1408-1415 +124, 126, 131, 133, 134, 141, 138, 142, // 1416-1423 +143, 140, 141, 138, 134, 130, 126, 121, // 1424-1431 +118, 116, 113, 113, 115, 114, 118, 121, // 1432-1439 +124, 129, 132, 134, 136, 137, 137, 136, // 1440-1447 +136, 133, 131, 130, 125, 124, 124, 121, // 1448-1455 +122, 121, 120, 122, 122, 123, 124, 124, // 1456-1463 +124, 125, 125, 124, 124, 123, 121, 121, // 1464-1471 +119, 118, 118, 116, 119, 122, 124, 126, // 1472-1479 +133, 136, 136, 143, 143, 143, 146, 143, // 1480-1487 +143, 139, 135, 130, 126, 121, 117, 116, // 1488-1495 +114, 112, 115, 115, 119, 123, 124, 130, // 1496-1503 +132, 134, 135, 136, 136, 135, 135, 133, // 1504-1511 +130, 131, 126, 125, 126, 121, 124, 123, // 1512-1519 +121, 124, 123, 123, 123, 123, 123, 124, // 1520-1527 +124, 122, 123, 123, 121, 122, 120, 119, // 1528-1535 +120, 118, 120, 120, 121, 126, 129, 130, // 1536-1543 +138, 136, 139, 144, 141, 144, 143, 142, // 1544-1551 +141, 136, 133, 129, 125, 121, 118, 118, // 1552-1559 +114, 115, 117, 116, 121, 123, 124, 129, // 1560-1567 +130, 131, 133, 133, 133, 133, 132, 131, // 1568-1575 +131, 129, 130, 128, 128, 127, 124, 127, // 1576-1583 +125, 124, 125, 123, 124, 123, 123, 122, // 1584-1591 +122, 122, 121, 122, 121, 121, 121, 120, // 1592-1599 +121, 121, 121, 122, 122, 125, 128, 129, // 1600-1607 +132, 136, 136, 138, 143, 139, 143, 142, // 1608-1615 +139, 139, 135, 132, 129, 125, 121, 119, // 1616-1623 +118, 115, 116, 117, 117, 120, 121, 123, // 1624-1631 +126, 128, 130, 131, 132, 133, 133, 133, // 1632-1639 +133, 132, 132, 131, 130, 130, 129, 128, // 1640-1647 +127, 125, 125, 124, 123, 123, 121, 121, // 1648-1655 +121, 121, 121, 121, 121, 121, 122, 122, // 1656-1663 +122, 123, 122, 122, 123, 121, 123, 124, // 1664-1671 +126, 129, 129, 135, 134, 136, 142, 138, // 1672-1679 +143, 142, 139, 140, 136, 134, 130, 128, // 1680-1687 +123, 120, 119, 116, 116, 116, 116, 119, // 1688-1695 +120, 121, 125, 125, 128, 131, 131, 132, // 1696-1703 +133, 133, 133, 134, 132, 131, 133, 129, // 1704-1711 +130, 129, 125, 129, 124, 123, 124, 121, // 1712-1719 +121, 121, 120, 120, 120, 120, 120, 123, // 1720-1727 +121, 123, 124, 122, 124, 124, 123, 124, // 1728-1735 +124, 123, 125, 128, 129, 130, 135, 135, // 1736-1743 +136, 142, 138, 142, 142, 138, 140, 136, // 1744-1751 +133, 130, 127, 123, 120, 118, 116, 115, // 1752-1759 +116, 115, 118, 119, 121, 124, 125, 129, // 1760-1767 +131, 131, 133, 133, 134, 134, 134, 134, // 1768-1775 +132, 134, 130, 130, 131, 125, 129, 124, // 1776-1783 +123, 124, 121, 121, 121, 120, 121, 121, // 1784-1791 +121, 121, 123, 123, 123, 124, 123, 124, // 1792-1799 +124, 124, 124, 124, 124, 124, 124, 128, // 1800-1807 +129, 130, 134, 134, 134, 140, 137, 139, // 1808-1815 +141, 137, 139, 136, 133, 131, 128, 123, // 1816-1823 +121, 120, 117, 117, 117, 116, 119, 120, // 1824-1831 +121, 124, 125, 128, 131, 131, 133, 134, // 1832-1839 +134, 134, 135, 134, 134, 133, 131, 131, // 1840-1847 +130, 127, 126, 124, 123, 123, 121, 120, // 1848-1855 +120, 120, 120, 120, 121, 121, 122, 123, // 1856-1863 +124, 124, 124, 125, 125, 125, 125, 125, // 1864-1871 +124, 125, 124, 125, 127, 129, 129, 133, // 1872-1879 +134, 133, 139, 135, 138, 139, 136, 138, // 1880-1887 +135, 133, 131, 128, 124, 122, 120, 119, // 1888-1895 +118, 118, 118, 120, 120, 121, 125, 125, // 1896-1903 +128, 130, 131, 133, 133, 133, 133, 133, // 1904-1911 +133, 133, 131, 130, 130, 128, 127, 126, // 1912-1919 +124, 124, 123, 122, 122, 121, 121, 121, // 1920-1927 +121, 122, 122, 123, 123, 124, 124, 124, // 1928-1935 +125, 125, 125, 126, 125, 125, 125, 125, // 1936-1943 +125, 125, 126, 129, 128, 131, 133, 131, // 1944-1951 +136, 134, 136, 138, 135, 136, 135, 133, // 1952-1959 +131, 129, 125, 124, 122, 120, 119, 119, // 1960-1967 +118, 120, 120, 121, 124, 124, 128, 130, // 1968-1975 +130, 131, 133, 132, 133, 133, 133, 131, // 1976-1983 +131, 131, 129, 129, 127, 124, 127, 123, // 1984-1991 +123, 123, 121, 123, 121, 121, 123, 122, // 1992-1999 +123, 124, 124, 124, 125, 125, 125, 128, // 2000-2007 +125, 125, 128, 125, 125, 125, 124, 125, // 2008-2015 +125, 126, 128, 126, 132, 130, 132, 136, // 2016-2023 +133, 138, 136, 135, 137, 134, 133, 131, // 2024-2031 +129, 126, 124, 123, 120, 121, 120, 119, // 2032-2039 +121, 120, 123, 124, 124, 128, 129, 130, // 2040-2047 +131, 131, 131, 131, 131, 131, 131, 130, // 2048-2055 +130, 130, 127, 129, 126, 124, 126, 124, // 2056-2063 +124, 124, 122, 123, 123, 123, 123, 123, // 2064-2071 +123, 124, 124, 124, 125, 125, 125, 126, // 2072-2079 +125, 125, 127, 125, 125, 125, 124, 125, // 2080-2087 +125, 127, 128, 129, 132, 130, 135, 134, // 2088-2095 +134, 138, 134, 136, 135, 133, 133, 130, // 2096-2103 +128, 125, 124, 122, 121, 120, 119, 121, // 2104-2111 +121, 121, 124, 124, 125, 128, 129, 130, // 2112-2119 +131, 131, 131, 131, 132, 131, 131, 131, // 2120-2127 +129, 130, 129, 126, 128, 124, 125, 124, // 2128-2135 +123, 124, 123, 123, 123, 123, 123, 123, // 2136-2143 +124, 124, 125, 125, 125, 126, 125, 125, // 2144-2151 +126, 125, 126, 125, 125, 125, 125, 125, // 2152-2159 +128, 128, 127, 131, 131, 131, 135, 133, // 2160-2167 +135, 136, 134, 136, 134, 132, 131, 129, // 2168-2175 +128, 125, 123, 121, 121, 121, 120, 121, // 2176-2183 +121, 122, 124, 124, 128, 128, 129, 130, // 2184-2191 +130, 131, 131, 131, 131, 131, 130, 130, // 2192-2199 +130, 128, 129, 126, 125, 126, 124, 124, // 2200-2207 +124, 123, 123, 123, 123, 123, 123, 123, // 2208-2215 +124, 124, 124, 125, 125, 125, 126, 125, // 2216-2223 +126, 126, 125, 125, 125, 125, 125, 125, // 2224-2231 +125, 127, 128, 127, 132, 129, 133, 134, // 2232-2239 +132, 136, 134, 134, 135, 132, 132, 130, // 2240-2247 +128, 125, 124, 123, 121, 121, 120, 121, // 2248-2255 +121, 121, 124, 124, 125, 128, 127, 130, // 2256-2263 +130, 130, 131, 131, 131, 131, 130, 130, // 2264-2271 +130, 129, 128, 127, 126, 125, 125, 124, // 2272-2279 +124, 124, 123, 123, 123, 123, 124, 124, // 2280-2287 +124, 124, 124, 125, 125, 125, 126, 126, // 2288-2295 +126, 126, 126, 125, 125, 125, 125, 125, // 2296-2303 +125, 126, 128, 127, 130, 131, 130, 134, // 2304-2311 +132, 134, 136, 133, 135, 134, 132, 132, // 2312-2319 +130, 127, 126, 124, 123, 122, 121, 121, // 2320-2327 +122, 121, 123, 124, 124, 126, 127, 129, // 2328-2335 +130, 130, 131, 131, 131, 131, 131, 130, // 2336-2343 +130, 130, 127, 128, 128, 125, 126, 124, // 2344-2351 +124, 124, 123, 124, 124, 124, 124, 124, // 2352-2359 +124, 124, 125, 125, 125, 125, 125, 126, // 2360-2367 +126, 126, 126, 126, 126, 125, 125, 125, // 2368-2375 +125, 125, 125, 127, 128, 129, 131, 130, // 2376-2383 +133, 134, 132, 135, 133, 134, 134, 131, // 2384-2391 +132, 130, 127, 126, 125, 123, 122, 122, // 2392-2399 +121, 122, 122, 122, 124, 124, 125, 128, // 2400-2407 +127, 130, 130, 130, 131, 131, 131, 131, // 2408-2415 +130, 130, 129, 129, 127, 128, 126, 125, // 2416-2423 +125, 124, 124, 124, 124, 124, 124, 124, // 2424-2431 +124, 124, 124, 125, 125, 125, 125, 125, // 2432-2439 +126, 126, 126, 126, 126, 126, 126, 125, // 2440-2447 +125, 125, 125, 125, 126, 128, 127, 129, // 2448-2455 +131, 130, 133, 133, 133, 135, 133, 134, // 2456-2463 +133, 131, 131, 129, 128, 125, 124, 123, // 2464-2471 +122, 122, 121, 122, 123, 123, 125, 125, // 2472-2479 +128, 128, 129, 130, 130, 130, 130, 130, // 2480-2487 +130, 130, 130, 129, 129, 128, 126, 126, // 2488-2495 +125, 125, 125, 124, 124, 124, 124, 124, // 2496-2503 +124, 124, 124, 125, 125, 125, 125, 125, // 2504-2511 +125, 125, 125, 126, 125, 126, 125, 126, // 2512-2519 +126, 125, 126, 125, 125, 126, 125, 128, // 2520-2527 +129, 128, 130, 131, 130, 133, 132, 133, // 2528-2535 +134, 132, 133, 132, 131, 130, 129, 126, // 2536-2543 +125, 124, 123, 123, 122, 122, 123, 123, // 2544-2551 +124, 125, 125, 127, 129, 129, 130, 130, // 2552-2559 +130, 130, 130, 130, 129, 129, 129, 128, // 2560-2567 +126, 126, 125, 125, 125, 125, 125, 125, // 2568-2575 +125, 125, 125, 125, 125, 125, 125, 125, // 2576-2583 +125, 125, 125, 125, 126, 126, 126, 127, // 2584-2591 +126, 128, 127, 126, 127, 126, 126, 128, // 2592-2599 +126, 128, 126, 128, 127, 128, 128, 129, // 2600-2607 +131, 130, 132, 132, 132, 133, 132, 131, // 2608-2615 +131, 130, 129, 127, 126, 125 +}; + +const char D[3123] = {122, 120, 128, 120, 135, 137, 129, 126, // 0-7 +122, 129, 125, 118, 127, 120, 125, 126, // 8-15 +123, 126, 125, 125, 128, 125, 127, 129, // 16-23 +128, 132, 132, 129, 131, 129, 125, 130, // 24-31 +121, 123, 125, 120, 123, 125, 122, 127, // 32-39 +123, 125, 129, 128, 130, 131, 127, 129, // 40-47 +132, 122, 134, 126, 125, 130, 122, 129, // 48-55 +125, 124, 125, 128, 128, 129, 128, 130, // 56-63 +131, 127, 131, 129, 130, 125, 128, 128, // 64-71 +125, 128, 126, 128, 126, 128, 125, 128, // 72-79 +125, 128, 127, 126, 128, 127, 125, 127, // 80-87 +125, 128, 126, 128, 129, 125, 127, 126, // 88-95 +126, 128, 126, 126, 127, 129, 125, 129, // 96-103 +129, 126, 129, 129, 127, 128, 127, 128, // 104-111 +126, 127, 126, 128, 127, 124, 127, 128, // 112-119 +125, 129, 125, 126, 125, 125, 126, 124, // 120-127 +126, 124, 126, 123, 125, 126, 123, 125, // 128-135 +126, 125, 128, 128, 129, 132, 130, 132, // 136-143 +132, 132, 134, 132, 133, 133, 133, 132, // 144-151 +131, 129, 129, 128, 121, 125, 123, 120, // 152-159 +121, 117, 122, 116, 115, 120, 113, 117, // 160-167 +118, 122, 120, 123, 129, 128, 133, 134, // 168-175 +139, 138, 141, 143, 142, 141, 141, 139, // 176-183 +136, 135, 132, 131, 129, 124, 129, 126, // 184-191 +122, 127, 125, 123, 121, 125, 121, 117, // 192-199 +120, 115, 115, 112, 112, 108, 113, 117, // 200-207 +113, 116, 126, 123, 126, 134, 136, 142, // 208-215 +142, 146, 149, 145, 145, 145, 139, 137, // 216-223 +134, 128, 124, 122, 121, 121, 121, 125, // 224-231 +123, 125, 129, 128, 129, 130, 122, 127, // 232-239 +122, 120, 118, 112, 111, 109, 105, 111, // 240-247 +113, 109, 117, 123, 120, 130, 139, 139, // 248-255 +148, 149, 154, 154, 150, 153, 146, 138, // 256-263 +138, 131, 122, 121, 117, 117, 115, 119, // 264-271 +122, 120, 128, 131, 125, 131, 128, 125, // 272-279 +124, 118, 115, 111, 106, 105, 105, 106, // 280-287 +108, 107, 122, 119, 125, 142, 142, 149, // 288-295 +160, 160, 164, 162, 160, 156, 143, 140, // 296-303 +134, 118, 117, 114, 108, 109, 112, 115, // 304-311 +116, 121, 125, 123, 127, 130, 123, 122, // 312-319 +122, 111, 107, 105, 98, 104, 106, 100, // 320-327 +117, 120, 118, 141, 142, 148, 162, 164, // 328-335 +172, 170, 166, 166, 152, 144, 139, 121, // 336-343 +117, 113, 105, 105, 108, 106, 110, 115, // 344-351 +121, 121, 125, 132, 121, 122, 122, 108, // 352-359 +105, 100, 95, 103, 95, 99, 120, 110, // 360-367 +126, 146, 143, 164, 172, 176, 184, 178, // 368-375 +182, 170, 154, 153, 133, 119, 115, 101, // 376-383 + 98, 95, 93, 99, 98, 108, 111, 112, // 384-391 +124, 117, 120, 122, 111, 112, 105, 109, // 392-399 +114, 97, 118, 126, 109, 144, 144, 145, // 400-407 +170, 170, 176, 176, 178, 178, 156, 157, // 408-415 +146, 120, 122, 109, 95, 97, 93, 93, // 416-423 + 95, 103, 108, 106, 121, 118, 113, 125, // 424-431 +113, 111, 111, 110, 118, 102, 120, 134, // 432-439 +109, 145, 147, 142, 168, 170, 172, 176, // 440-447 +176, 176, 156, 158, 148, 122, 125, 111, // 448-455 + 95, 98, 91, 91, 91, 100, 103, 102, // 456-463 +116, 112, 111, 120, 109, 109, 111, 117, // 464-471 +116, 107, 140, 124, 124, 160, 143, 156, // 472-479 +174, 172, 174, 174, 178, 164, 152, 158, // 480-487 +131, 121, 120, 99, 95, 95, 89, 89, // 488-495 + 95, 102, 100, 110, 117, 110, 117, 119, // 496-503 +109, 112, 112, 122, 112, 112, 145, 114, // 504-511 +136, 160, 137, 164, 172, 166, 172, 172, // 512-519 +172, 154, 154, 151, 122, 126, 115, 95, // 520-527 +103, 95, 91, 97, 102, 106, 107, 118, // 528-535 +117, 117, 122, 117, 114, 110, 107, 113, // 536-543 +113, 102, 130, 122, 117, 153, 138, 151, // 544-551 +168, 164, 172, 172, 176, 166, 154, 160, // 552-559 +133, 128, 123, 101, 106, 95, 91, 97, // 560-567 + 95, 106, 106, 114, 121, 117, 131, 121, // 568-575 +121, 121, 109, 111, 112, 112, 102, 124, // 576-583 +120, 113, 146, 136, 146, 164, 164, 170, // 584-591 +174, 176, 166, 160, 158, 134, 131, 123, // 592-599 +101, 106, 97, 89, 98, 98, 101, 109, // 600-607 +115, 118, 122, 132, 123, 123, 126, 109, // 608-615 +112, 113, 111, 102, 117, 120, 106, 143, // 616-623 +133, 138, 164, 160, 166, 176, 176, 170, // 624-631 +164, 164, 141, 134, 130, 103, 108, 99, // 632-639 + 87, 97, 95, 100, 106, 115, 119, 122, // 640-647 +134, 129, 131, 131, 118, 117, 111, 109, // 648-655 +111, 99, 113, 113, 107, 136, 126, 141, // 656-663 +158, 156, 172, 174, 178, 174, 166, 164, // 664-671 +145, 139, 128, 108, 111, 95, 93, 97, // 672-679 + 93, 101, 105, 112, 117, 122, 128, 126, // 680-687 +130, 124, 117, 116, 109, 112, 110, 100, // 688-695 +122, 109, 113, 140, 123, 150, 158, 162, // 696-703 +174, 174, 180, 170, 170, 160, 139, 141, // 704-711 +117, 107, 108, 89, 95, 93, 93, 102, // 712-719 +106, 114, 118, 128, 129, 130, 135, 124, // 720-727 +123, 117, 110, 115, 108, 101, 117, 108, // 728-735 +112, 134, 123, 145, 154, 160, 170, 176, // 736-743 +178, 170, 170, 160, 143, 141, 120, 111, // 744-751 +108, 93, 95, 93, 93, 99, 108, 112, // 752-759 +117, 127, 125, 132, 135, 125, 128, 119, // 760-767 +111, 115, 112, 101, 112, 113, 105, 131, // 768-775 +126, 135, 156, 157, 168, 176, 178, 172, // 776-783 +170, 164, 145, 143, 126, 110, 111, 95, // 784-791 + 93, 95, 91, 98, 105, 110, 116, 126, // 792-799 +128, 131, 138, 129, 129, 126, 113, 113, // 800-807 +114, 105, 104, 117, 103, 116, 132, 122, // 808-815 +149, 154, 160, 172, 174, 174, 170, 168, // 816-823 +152, 143, 139, 113, 113, 104, 91, 100, // 824-831 + 91, 95, 103, 108, 113, 122, 129, 128, // 832-839 +137, 135, 129, 132, 117, 113, 113, 108, // 840-847 +103, 105, 112, 101, 122, 125, 127, 153, // 848-855 +152, 164, 174, 174, 172, 172, 164, 149, // 856-863 +144, 131, 113, 114, 98, 95, 98, 91, // 864-871 +100, 104, 109, 117, 123, 128, 131, 137, // 872-879 +132, 131, 129, 116, 113, 111, 108, 102, // 880-887 +105, 112, 101, 124, 125, 128, 156, 151, // 888-895 +166, 174, 172, 174, 170, 164, 148, 143, // 896-903 +131, 112, 115, 97, 95, 100, 89, 102, // 904-911 +105, 109, 118, 124, 129, 134, 138, 133, // 912-919 +135, 131, 118, 118, 109, 108, 106, 97, // 920-927 +112, 105, 111, 131, 122, 147, 153, 158, // 928-935 +172, 172, 174, 170, 166, 154, 143, 139, // 936-943 +117, 113, 108, 93, 101, 93, 97, 106, // 944-951 +106, 117, 122, 129, 132, 136, 136, 134, // 952-959 +133, 123, 118, 112, 107, 109, 99, 105, // 960-967 +112, 103, 126, 127, 133, 156, 153, 166, // 968-975 +172, 172, 170, 168, 160, 145, 142, 126, // 976-983 +113, 112, 99, 95, 100, 93, 103, 108, // 984-991 +110, 122, 126, 130, 137, 137, 135, 136, // 992-999 +129, 122, 118, 109, 107, 109, 98, 105, // 1000-1007 +112, 103, 127, 128, 134, 155, 154, 164, // 1008-1015 +172, 172, 168, 166, 157, 144, 141, 125, // 1016-1023 +114, 112, 100, 98, 101, 95, 105, 110, // 1024-1031 +112, 122, 128, 130, 137, 137, 134, 137, // 1032-1039 +129, 123, 119, 108, 108, 107, 101, 102, // 1040-1047 +112, 108, 117, 133, 130, 150, 156, 160, // 1048-1055 +170, 170, 166, 164, 160, 146, 141, 129, // 1056-1063 +116, 112, 105, 99, 102, 100, 103, 111, // 1064-1071 +112, 120, 128, 129, 136, 138, 134, 136, // 1072-1079 +132, 124, 122, 112, 108, 107, 105, 101, // 1080-1087 +106, 113, 108, 129, 131, 136, 156, 153, // 1088-1095 +164, 170, 166, 164, 162, 151, 143, 136, // 1096-1103 +122, 115, 111, 102, 102, 103, 100, 108, // 1104-1111 +111, 114, 124, 127, 132, 136, 136, 135, // 1112-1119 +135, 129, 123, 120, 112, 108, 106, 105, // 1120-1127 +104, 105, 114, 111, 126, 134, 136, 154, // 1128-1135 +153, 162, 166, 164, 162, 157, 151, 141, // 1136-1143 +137, 122, 115, 112, 103, 105, 104, 104, // 1144-1151 +109, 112, 117, 123, 129, 131, 135, 136, // 1152-1159 +133, 134, 129, 123, 121, 112, 109, 106, // 1160-1167 +105, 106, 103, 113, 114, 118, 138, 131, // 1168-1175 +148, 154, 154, 166, 162, 162, 157, 152, // 1176-1183 +143, 137, 129, 117, 115, 108, 106, 107, // 1184-1191 +105, 109, 112, 115, 121, 128, 130, 133, // 1192-1199 +135, 134, 134, 132, 126, 123, 118, 112, // 1200-1207 +110, 106, 106, 108, 105, 115, 117, 119, // 1208-1215 +137, 132, 147, 151, 153, 162, 157, 160, // 1216-1223 +153, 149, 142, 136, 129, 119, 117, 111, // 1224-1231 +110, 109, 109, 112, 113, 117, 121, 125, // 1232-1239 +129, 131, 132, 132, 131, 129, 125, 122, // 1240-1247 +118, 114, 111, 109, 109, 111, 108, 115, // 1248-1255 +120, 118, 137, 132, 143, 151, 149, 158, // 1256-1263 +155, 156, 151, 149, 142, 137, 132, 120, // 1264-1271 +120, 113, 111, 112, 109, 113, 114, 117, // 1272-1279 +120, 123, 126, 129, 132, 129, 132, 129, // 1280-1287 +128, 125, 120, 120, 115, 112, 111, 111, // 1288-1295 +112, 110, 119, 118, 121, 138, 129, 146, // 1296-1303 +148, 147, 158, 151, 154, 150, 147, 142, // 1304-1311 +137, 132, 122, 123, 113, 114, 113, 111, // 1312-1319 +115, 113, 117, 119, 122, 123, 128, 129, // 1320-1327 +128, 132, 128, 127, 128, 121, 122, 116, // 1328-1335 +113, 113, 112, 112, 111, 119, 117, 122, // 1336-1343 +134, 128, 145, 144, 146, 156, 149, 154, // 1344-1351 +151, 146, 143, 139, 132, 125, 124, 114, // 1352-1359 +117, 113, 110, 115, 112, 116, 118, 120, // 1360-1367 +123, 126, 128, 129, 132, 129, 131, 129, // 1368-1375 +124, 125, 119, 116, 114, 111, 113, 111, // 1376-1383 +111, 118, 115, 124, 131, 131, 143, 143, // 1384-1391 +149, 152, 153, 152, 150, 148, 141, 140, // 1392-1399 +131, 126, 122, 115, 116, 111, 112, 112, // 1400-1407 +112, 115, 116, 120, 122, 126, 129, 130, // 1408-1415 +132, 131, 131, 131, 128, 125, 121, 117, // 1416-1423 +114, 112, 112, 112, 110, 115, 116, 119, // 1424-1431 +131, 129, 141, 143, 146, 153, 153, 153, // 1432-1439 +151, 149, 143, 142, 134, 127, 125, 116, // 1440-1447 +115, 112, 110, 112, 111, 113, 116, 119, // 1448-1455 +122, 125, 129, 130, 133, 133, 132, 132, // 1456-1463 +130, 129, 125, 120, 117, 112, 111, 111, // 1464-1471 +110, 108, 115, 115, 119, 132, 128, 142, // 1472-1479 +143, 147, 154, 153, 154, 152, 150, 143, // 1480-1487 +142, 134, 127, 125, 115, 115, 112, 109, // 1488-1495 +112, 111, 113, 115, 118, 122, 125, 129, // 1496-1503 +131, 134, 133, 134, 134, 131, 131, 126, // 1504-1511 +122, 119, 114, 111, 110, 109, 108, 110, // 1512-1519 +115, 114, 122, 131, 131, 143, 144, 150, // 1520-1527 +155, 154, 155, 153, 149, 144, 141, 132, // 1528-1535 +128, 122, 115, 115, 111, 110, 112, 110, // 1536-1543 +113, 115, 118, 122, 126, 129, 132, 134, // 1544-1551 +134, 136, 134, 134, 131, 127, 125, 119, // 1552-1559 +115, 111, 108, 108, 107, 106, 111, 115, // 1560-1567 +115, 129, 129, 139, 146, 147, 156, 155, // 1568-1575 +158, 155, 153, 147, 143, 138, 129, 126, // 1576-1583 +117, 114, 112, 108, 111, 109, 112, 114, // 1584-1591 +117, 121, 124, 129, 131, 135, 136, 137, // 1592-1599 +137, 134, 134, 131, 126, 123, 117, 113, // 1600-1607 +109, 106, 105, 105, 106, 107, 116, 115, // 1608-1615 +125, 134, 134, 148, 148, 154, 158, 157, // 1616-1623 +159, 154, 150, 143, 141, 131, 125, 121, // 1624-1631 +112, 113, 109, 108, 111, 109, 113, 116, // 1632-1639 +119, 124, 129, 131, 135, 137, 137, 139, // 1640-1647 +137, 136, 134, 129, 125, 120, 115, 112, // 1648-1655 +107, 104, 102, 103, 105, 106, 112, 118, // 1656-1663 +120, 134, 136, 143, 153, 151, 160, 158, // 1664-1671 +157, 156, 151, 146, 141, 135, 125, 123, // 1672-1679 +115, 112, 112, 106, 111, 109, 112, 116, // 1680-1687 +118, 123, 128, 131, 134, 137, 137, 139, // 1688-1695 +139, 136, 135, 131, 126, 123, 117, 113, // 1696-1703 +110, 104, 103, 100, 101, 105, 107, 112, // 1704-1711 +120, 122, 133, 141, 143, 153, 154, 158, // 1712-1719 +162, 158, 156, 153, 146, 142, 137, 126, // 1720-1727 +122, 117, 111, 112, 108, 108, 111, 111, // 1728-1735 +115, 119, 122, 128, 132, 134, 138, 138, // 1736-1743 +139, 140, 137, 136, 132, 129, 123, 120, // 1744-1751 +113, 112, 108, 102, 103, 99, 101, 104, // 1752-1759 +108, 112, 117, 127, 128, 142, 145, 148, // 1760-1767 +160, 155, 162, 162, 157, 156, 150, 143, // 1768-1775 +139, 132, 122, 120, 113, 109, 110, 106, // 1776-1783 +109, 111, 112, 117, 120, 124, 131, 133, // 1784-1791 +136, 139, 139, 140, 139, 137, 135, 131, // 1792-1799 +125, 122, 117, 112, 110, 105, 102, 101, // 1800-1807 + 99, 101, 103, 108, 113, 116, 126, 134, // 1808-1815 +137, 149, 148, 156, 162, 160, 166, 160, // 1816-1823 +158, 153, 147, 141, 134, 125, 118, 115, // 1824-1831 +108, 108, 107, 105, 109, 110, 113, 118, // 1832-1839 +122, 128, 132, 136, 139, 141, 141, 142, // 1840-1847 +140, 137, 135, 130, 124, 120, 114, 111, // 1848-1855 +107, 104, 101, 101, 100, 102, 105, 106, // 1856-1863 +113, 117, 125, 130, 141, 142, 149, 158, // 1864-1871 +154, 166, 160, 164, 162, 156, 153, 145, // 1872-1879 +139, 131, 124, 115, 112, 108, 103, 104, // 1880-1887 +103, 105, 111, 112, 117, 123, 128, 134, // 1888-1895 +138, 140, 143, 143, 142, 142, 137, 134, // 1896-1903 +130, 123, 119, 114, 110, 107, 103, 103, // 1904-1911 +102, 102, 105, 106, 109, 113, 117, 122, // 1912-1919 +129, 136, 139, 146, 149, 150, 160, 155, // 1920-1927 +162, 160, 154, 156, 148, 145, 139, 131, // 1928-1935 +123, 118, 111, 107, 106, 101, 104, 106, // 1936-1943 +106, 113, 115, 120, 129, 131, 138, 141, // 1944-1951 +142, 143, 143, 142, 139, 137, 131, 127, // 1952-1959 +122, 117, 114, 109, 108, 106, 104, 106, // 1960-1967 +106, 109, 112, 114, 118, 122, 125, 129, // 1968-1975 +132, 136, 140, 142, 143, 148, 145, 149, // 1976-1983 +150, 145, 152, 143, 146, 142, 136, 134, // 1984-1991 +126, 121, 117, 113, 109, 109, 108, 108, // 1992-1999 +111, 112, 117, 121, 123, 131, 134, 137, // 2000-2007 +141, 141, 142, 141, 139, 137, 132, 131, // 2008-2015 +125, 122, 118, 115, 113, 111, 111, 111, // 2016-2023 +112, 112, 115, 118, 120, 123, 126, 129, // 2024-2031 +130, 131, 131, 131, 131, 132, 133, 131, // 2032-2039 +135, 135, 134, 141, 136, 141, 142, 139, // 2040-2047 +142, 138, 136, 134, 130, 125, 122, 118, // 2048-2055 +116, 115, 113, 114, 116, 116, 121, 123, // 2056-2063 +125, 131, 132, 135, 137, 136, 139, 136, // 2064-2071 +135, 136, 129, 132, 125, 123, 123, 118, // 2072-2079 +119, 116, 115, 116, 116, 117, 118, 120, // 2080-2087 +121, 123, 123, 123, 125, 123, 124, 123, // 2088-2095 +122, 122, 123, 125, 125, 129, 133, 132, // 2096-2103 +140, 140, 142, 147, 142, 148, 143, 142, // 2104-2111 +141, 134, 131, 126, 122, 118, 116, 114, // 2112-2119 +113, 115, 115, 118, 121, 123, 129, 130, // 2120-2127 +133, 136, 136, 137, 137, 136, 135, 134, // 2128-2135 +131, 130, 126, 123, 123, 119, 118, 117, // 2136-2143 +115, 117, 116, 116, 118, 118, 120, 122, // 2144-2151 +122, 123, 123, 123, 123, 123, 122, 123, // 2152-2159 +123, 123, 128, 126, 131, 136, 134, 141, // 2160-2167 +142, 142, 148, 143, 145, 145, 140, 140, // 2168-2175 +134, 129, 126, 121, 118, 117, 114, 113, // 2176-2183 +115, 115, 118, 120, 121, 125, 128, 129, // 2184-2191 +132, 132, 133, 136, 132, 134, 133, 129, // 2192-2199 +133, 126, 128, 126, 121, 123, 119, 118, // 2200-2207 +119, 117, 118, 119, 118, 120, 122, 122, // 2208-2215 +123, 123, 123, 124, 123, 123, 123, 122, // 2216-2223 +122, 124, 125, 129, 130, 133, 137, 136, // 2224-2231 +143, 141, 144, 145, 142, 145, 139, 139, // 2232-2239 +135, 129, 126, 122, 118, 116, 114, 113, // 2240-2247 +113, 115, 116, 118, 121, 123, 126, 127, // 2248-2255 +131, 132, 134, 134, 135, 137, 133, 136, // 2256-2263 +134, 131, 134, 125, 129, 124, 122, 122, // 2264-2271 +118, 118, 117, 117, 118, 118, 118, 120, // 2272-2279 +121, 122, 123, 123, 123, 125, 123, 124, // 2280-2287 +123, 122, 124, 123, 126, 129, 128, 136, // 2288-2295 +134, 137, 143, 138, 145, 143, 142, 145, // 2296-2303 +139, 139, 136, 131, 128, 123, 120, 118, // 2304-2311 +116, 115, 115, 116, 117, 120, 120, 123, // 2312-2319 +126, 128, 131, 132, 133, 135, 134, 136, // 2320-2327 +135, 134, 135, 132, 132, 129, 128, 125, // 2328-2335 +122, 121, 118, 118, 117, 116, 117, 117, // 2336-2343 +118, 118, 120, 122, 122, 123, 124, 124, // 2344-2351 +125, 124, 124, 125, 123, 124, 124, 128, // 2352-2359 +129, 129, 135, 136, 137, 143, 141, 144, // 2360-2367 +145, 142, 145, 141, 138, 136, 129, 126, // 2368-2375 +122, 118, 115, 114, 112, 113, 114, 115, // 2376-2383 +118, 120, 122, 126, 127, 131, 133, 134, // 2384-2391 +136, 137, 137, 137, 137, 134, 135, 131, // 2392-2399 +129, 129, 122, 123, 120, 117, 118, 115, // 2400-2407 +116, 117, 116, 118, 119, 120, 122, 124, // 2408-2415 +125, 126, 126, 126, 128, 125, 125, 125, // 2416-2423 +124, 124, 123, 126, 129, 129, 134, 135, // 2424-2431 +135, 142, 139, 142, 143, 139, 143, 139, // 2432-2439 +136, 134, 129, 125, 122, 118, 116, 115, // 2440-2447 +113, 114, 115, 116, 119, 121, 123, 128, // 2448-2455 +129, 132, 134, 135, 136, 137, 137, 136, // 2456-2463 +136, 135, 132, 132, 129, 126, 125, 122, // 2464-2471 +121, 120, 117, 118, 117, 117, 118, 118, // 2472-2479 +119, 120, 121, 123, 124, 124, 125, 126, // 2480-2487 +125, 126, 125, 125, 125, 124, 125, 124, // 2488-2495 +127, 129, 129, 133, 136, 134, 141, 139, // 2496-2503 +140, 143, 138, 142, 138, 134, 134, 128, // 2504-2511 +124, 122, 118, 117, 115, 114, 115, 117, // 2512-2519 +117, 120, 123, 125, 129, 131, 132, 135, // 2520-2527 +136, 137, 137, 136, 136, 134, 132, 132, // 2528-2535 +129, 128, 125, 122, 122, 120, 119, 118, // 2536-2543 +117, 118, 118, 118, 120, 121, 122, 123, // 2544-2551 +125, 125, 126, 128, 128, 128, 128, 126, // 2552-2559 +126, 124, 124, 124, 123, 125, 126, 129, // 2560-2567 +129, 135, 133, 135, 142, 135, 143, 140, // 2568-2575 +137, 141, 134, 134, 132, 125, 124, 121, // 2576-2583 +117, 117, 116, 115, 117, 118, 119, 123, // 2584-2591 +125, 128, 132, 132, 134, 135, 134, 136, // 2592-2599 +135, 134, 134, 131, 131, 130, 125, 127, // 2600-2607 +123, 123, 123, 120, 122, 120, 120, 120, // 2608-2615 +120, 121, 121, 122, 123, 123, 124, 125, // 2616-2623 +125, 125, 126, 125, 128, 125, 124, 126, // 2624-2631 +123, 124, 124, 123, 126, 129, 127, 132, // 2632-2639 +135, 132, 140, 137, 139, 143, 137, 141, // 2640-2647 +138, 134, 134, 129, 125, 123, 120, 118, // 2648-2655 +117, 117, 117, 119, 120, 122, 125, 126, // 2656-2663 +131, 132, 132, 135, 134, 134, 134, 132, // 2664-2671 +132, 131, 130, 127, 126, 126, 123, 124, // 2672-2679 +122, 122, 122, 122, 122, 122, 122, 122, // 2680-2687 +123, 123, 123, 124, 124, 124, 125, 125, // 2688-2695 +125, 125, 125, 125, 125, 125, 125, 124, // 2696-2703 +124, 123, 123, 125, 128, 129, 129, 136, // 2704-2711 +132, 136, 141, 134, 143, 139, 137, 140, // 2712-2719 +132, 133, 130, 123, 123, 120, 117, 117, // 2720-2727 +117, 117, 118, 120, 121, 125, 128, 129, // 2728-2735 +132, 132, 133, 134, 132, 133, 132, 131, // 2736-2743 +131, 129, 127, 126, 126, 124, 125, 124, // 2744-2751 +123, 123, 123, 123, 123, 123, 123, 123, // 2752-2759 +123, 123, 123, 123, 123, 123, 123, 123, // 2760-2767 +124, 125, 124, 125, 125, 125, 125, 124, // 2768-2775 +125, 124, 124, 125, 127, 129, 130, 134, // 2776-2783 +134, 135, 141, 135, 141, 139, 135, 139, // 2784-2791 +132, 131, 130, 123, 123, 120, 118, 118, // 2792-2799 +118, 118, 119, 122, 123, 126, 129, 130, // 2800-2807 +133, 134, 133, 134, 133, 132, 131, 130, // 2808-2815 +129, 127, 126, 126, 125, 125, 125, 125, // 2816-2823 +125, 125, 125, 125, 124, 125, 123, 123, // 2824-2831 +123, 122, 123, 122, 122, 123, 123, 123, // 2832-2839 +124, 125, 125, 126, 127, 126, 127, 127, // 2840-2847 +125, 126, 125, 124, 125, 125, 130, 129, // 2848-2855 +132, 136, 132, 141, 137, 137, 141, 134, // 2856-2863 +137, 134, 128, 129, 125, 122, 121, 118, // 2864-2871 +118, 118, 119, 120, 123, 125, 126, 131, // 2872-2879 +131, 132, 134, 133, 133, 132, 131, 130, // 2880-2887 +129, 127, 125, 126, 124, 125, 125, 124, // 2888-2895 +126, 125, 125, 126, 125, 125, 125, 124, // 2896-2903 +123, 123, 122, 122, 123, 122, 123, 123, // 2904-2911 +123, 125, 126, 126, 128, 129, 128, 128, // 2912-2919 +127, 126, 126, 125, 124, 124, 125, 124, // 2920-2927 +127, 131, 129, 136, 135, 134, 142, 134, // 2928-2935 +139, 139, 133, 135, 131, 128, 125, 122, // 2936-2943 +120, 120, 119, 119, 120, 122, 123, 126, // 2944-2951 +129, 129, 132, 132, 132, 133, 131, 131, // 2952-2959 +130, 127, 128, 127, 124, 126, 125, 123, // 2960-2967 +128, 124, 126, 127, 125, 126, 125, 124, // 2968-2975 +124, 123, 122, 122, 122, 122, 122, 123, // 2976-2983 +123, 125, 125, 125, 128, 128, 128, 129, // 2984-2991 +128, 128, 126, 125, 125, 125, 124, 124, // 2992-2999 +125, 125, 126, 128, 130, 132, 132, 136, // 3000-3007 +135, 135, 138, 134, 134, 134, 130, 130, // 3008-3015 +128, 125, 124, 122, 122, 122, 123, 123, // 3016-3023 +124, 126, 128, 129, 131, 130, 132, 132, // 3024-3031 +131, 132, 129, 129, 129, 125, 126, 124, // 3032-3039 +124, 125, 123, 125, 124, 124, 125, 123, // 3040-3047 +124, 123, 123, 123, 123, 123, 123, 124, // 3048-3055 +124, 124, 125, 125, 125, 128, 126, 128, // 3056-3063 +127, 128, 129, 128, 128, 127, 128, 128, // 3064-3071 +126, 126, 128, 126, 128, 128, 127, 129, // 3072-3079 +127, 129, 129, 129, 132, 131, 132, 133, // 3080-3087 +132, 132, 132, 131, 131, 131, 131, 129, // 3088-3095 +127, 128, 125, 125, 125, 124, 125, 125, // 3096-3103 +125, 125, 125, 126, 126, 126, 126, 125, // 3104-3111 +125, 125, 125, 125, 125, 124, 125, 125, // 3112-3119 +125, 125, 125}; + +const char E[2899] = {129, 130, 131, 130, 132, 132, 134, 134, // 0-7 +134, 134, 132, 131, 129, 126, 123, 120, // 8-15 +117, 113, 110, 105, 101, 100, 100, 105, // 16-23 +100, 113, 117, 116, 140, 133, 149, 153, // 24-31 +160, 164, 166, 168, 157, 164, 146, 143, // 32-39 +134, 124, 118, 113, 108, 105, 108, 105, // 40-47 +110, 113, 116, 122, 128, 130, 134, 134, // 48-55 +131, 130, 124, 120, 115, 112, 109, 108, // 56-63 +107, 104, 117, 108, 124, 130, 132, 148, // 64-71 +146, 160, 155, 166, 154, 160, 152, 143, // 72-79 +143, 130, 127, 120, 118, 112, 116, 113, // 80-87 +115, 118, 116, 119, 118, 118, 115, 112, // 88-95 +109, 103, 103, 102, 105, 101, 112, 115, // 96-103 +113, 140, 131, 153, 157, 166, 172, 176, // 104-111 +178, 166, 172, 151, 150, 135, 124, 113, // 112-119 +108, 99, 97, 98, 93, 105, 104, 112, // 120-127 +115, 118, 120, 123, 120, 118, 116, 113, // 128-135 +116, 113, 110, 124, 112, 126, 134, 131, // 136-143 +151, 149, 164, 162, 176, 164, 170, 164, // 144-151 +151, 151, 134, 129, 116, 112, 101, 105, // 152-159 + 97, 101, 105, 105, 112, 113, 115, 118, // 160-167 +119, 114, 115, 110, 111, 112, 110, 107, // 168-175 +122, 108, 128, 132, 133, 152, 151, 166, // 176-183 +164, 182, 168, 178, 168, 157, 153, 139, // 184-191 +130, 118, 112, 99, 104, 93, 98, 99, // 192-199 +100, 105, 110, 110, 114, 114, 112, 113, // 200-207 +109, 112, 114, 110, 113, 124, 112, 137, // 208-215 +132, 141, 154, 156, 166, 168, 178, 166, // 216-223 +178, 160, 155, 147, 134, 123, 116, 106, // 224-231 + 99, 102, 91, 101, 100, 103, 110, 112, // 232-239 +112, 119, 115, 115, 114, 109, 113, 113, // 240-247 +108, 114, 121, 111, 136, 130, 141, 153, // 248-255 +156, 166, 172, 178, 168, 178, 160, 158, // 256-263 +147, 135, 124, 115, 106, 100, 101, 91, // 264-271 +100, 99, 103, 109, 111, 112, 117, 113, // 272-279 +114, 112, 107, 112, 112, 108, 114, 120, // 280-287 +112, 136, 131, 142, 156, 158, 170, 174, // 288-295 +180, 170, 180, 162, 160, 149, 134, 124, // 296-303 +114, 104, 98, 99, 89, 99, 97, 101, // 304-311 +109, 110, 113, 118, 115, 115, 114, 108, // 312-319 +112, 112, 108, 112, 120, 110, 132, 132, // 320-327 +136, 155, 155, 168, 172, 180, 172, 182, // 328-335 +168, 160, 154, 136, 130, 117, 106, 100, // 336-343 + 99, 89, 97, 97, 99, 108, 109, 112, // 344-351 +117, 115, 115, 115, 107, 112, 112, 109, // 352-359 +108, 120, 110, 124, 134, 130, 153, 153, // 360-367 +168, 170, 184, 174, 182, 174, 162, 160, // 368-375 +141, 132, 118, 111, 97, 100, 89, 93, // 376-383 + 97, 97, 106, 109, 112, 116, 119, 114, // 384-391 +120, 110, 111, 113, 109, 108, 116, 113, // 392-399 +115, 135, 125, 146, 153, 160, 170, 178, // 400-407 +178, 178, 180, 164, 164, 146, 134, 124, // 408-415 +113, 102, 99, 93, 89, 98, 93, 103, // 416-423 +109, 110, 115, 118, 115, 118, 114, 108, // 424-431 +114, 110, 109, 111, 118, 110, 129, 130, // 432-439 +134, 155, 153, 170, 174, 182, 176, 182, // 440-447 +170, 162, 155, 138, 130, 116, 106, 99, // 448-455 + 97, 87, 95, 93, 99, 107, 108, 112, // 456-463 +118, 117, 116, 119, 109, 113, 113, 108, // 464-471 +110, 116, 112, 118, 134, 125, 149, 151, // 472-479 +162, 172, 180, 178, 182, 178, 162, 162, // 480-487 +143, 134, 121, 111, 101, 99, 91, 91, // 488-495 + 95, 95, 105, 108, 111, 116, 118, 115, // 496-503 +119, 112, 108, 115, 110, 106, 113, 113, // 504-511 +110, 130, 124, 138, 151, 154, 168, 176, // 512-519 +180, 176, 184, 166, 166, 153, 138, 130, // 520-527 +115, 105, 99, 95, 89, 97, 93, 100, // 528-535 +108, 108, 113, 119, 116, 118, 118, 109, // 536-543 +113, 113, 108, 110, 116, 109, 120, 130, // 544-551 +125, 149, 149, 162, 170, 180, 176, 182, // 552-559 +174, 164, 162, 142, 135, 121, 111, 102, // 560-567 + 99, 91, 93, 97, 97, 106, 108, 112, // 568-575 +118, 118, 117, 120, 112, 111, 115, 109, // 576-583 +109, 113, 114, 111, 131, 122, 140, 151, // 584-591 +153, 170, 174, 180, 176, 182, 164, 164, // 592-599 +150, 136, 129, 114, 105, 101, 93, 91, // 600-607 + 97, 95, 102, 109, 109, 115, 119, 116, // 608-615 +120, 115, 110, 113, 112, 106, 112, 115, // 616-623 +109, 123, 126, 127, 149, 149, 162, 172, // 624-631 +178, 176, 182, 172, 164, 160, 141, 134, // 632-639 +122, 107, 103, 99, 89, 97, 93, 99, // 640-647 +106, 110, 112, 120, 118, 119, 122, 112, // 648-655 +113, 114, 111, 108, 114, 111, 112, 128, // 656-663 +120, 139, 146, 152, 166, 174, 176, 178, // 664-671 +180, 166, 166, 150, 140, 130, 118, 106, // 672-679 +104, 95, 93, 99, 93, 105, 107, 112, // 680-687 +115, 122, 118, 122, 119, 112, 113, 113, // 688-695 +110, 108, 115, 108, 116, 124, 122, 142, // 696-703 +144, 157, 166, 176, 176, 180, 176, 166, // 704-711 +162, 146, 138, 125, 114, 105, 102, 93, // 712-719 + 95, 97, 97, 106, 109, 113, 118, 122, // 720-727 +122, 122, 120, 113, 113, 113, 109, 108, // 728-735 +113, 108, 113, 124, 119, 142, 143, 156, // 736-743 +166, 174, 176, 180, 176, 164, 164, 144, // 744-751 +139, 124, 115, 104, 103, 93, 95, 97, // 752-759 + 97, 107, 109, 115, 118, 123, 123, 124, // 760-767 +121, 117, 113, 113, 110, 105, 111, 108, // 768-775 +108, 121, 118, 134, 143, 152, 162, 174, // 776-783 +176, 178, 180, 166, 166, 150, 141, 129, // 784-791 +118, 107, 103, 95, 93, 97, 97, 103, // 792-799 +110, 113, 119, 123, 124, 128, 122, 122, // 800-807 +113, 113, 112, 108, 103, 112, 104, 112, // 808-815 +122, 119, 142, 145, 158, 166, 178, 174, // 816-823 +180, 174, 164, 160, 144, 134, 124, 112, // 824-831 +103, 101, 91, 98, 97, 100, 108, 112, // 832-839 +115, 124, 124, 129, 129, 124, 122, 113, // 840-847 +112, 111, 106, 103, 112, 102, 115, 120, // 848-855 +124, 143, 149, 162, 170, 178, 174, 182, // 856-863 +172, 164, 156, 143, 131, 122, 109, 103, // 864-871 +100, 91, 99, 97, 102, 108, 115, 118, // 872-879 +127, 125, 131, 130, 124, 124, 113, 112, // 880-887 +110, 105, 99, 110, 102, 109, 123, 118, // 888-895 +142, 146, 160, 168, 178, 176, 178, 176, // 896-903 +162, 160, 143, 134, 122, 112, 101, 103, // 904-911 + 91, 97, 99, 100, 110, 113, 119, 125, // 912-919 +130, 129, 135, 125, 126, 118, 110, 110, // 920-927 +108, 101, 102, 110, 100, 118, 120, 130, // 928-935 +146, 152, 164, 172, 180, 174, 180, 166, // 936-943 +162, 151, 137, 128, 117, 106, 101, 100, // 944-951 + 91, 102, 98, 107, 112, 118, 122, 131, // 952-959 +130, 133, 134, 124, 128, 115, 112, 109, // 960-967 +106, 100, 102, 109, 101, 121, 121, 132, // 968-975 +149, 151, 166, 172, 178, 174, 178, 162, // 976-983 +160, 147, 134, 126, 114, 107, 101, 100, // 984-991 + 93, 103, 100, 108, 114, 118, 125, 131, // 992-999 +132, 133, 135, 125, 128, 117, 111, 109, // 1000-1007 +103, 103, 99, 105, 105, 112, 124, 125, // 1008-1015 +145, 149, 162, 170, 174, 174, 174, 170, // 1016-1023 +157, 152, 137, 131, 117, 112, 102, 102, // 1024-1031 + 97, 100, 103, 105, 114, 116, 125, 128, // 1032-1039 +133, 132, 134, 131, 128, 123, 115, 110, // 1040-1047 +106, 103, 102, 100, 107, 108, 113, 129, // 1048-1055 +129, 147, 151, 164, 168, 172, 172, 170, // 1056-1063 +166, 153, 149, 134, 127, 115, 112, 103, // 1064-1071 +103, 101, 101, 108, 108, 115, 119, 124, // 1072-1079 +130, 133, 133, 133, 131, 126, 122, 117, // 1080-1087 +111, 107, 104, 103, 102, 103, 112, 111, // 1088-1095 +122, 132, 136, 152, 154, 164, 166, 170, // 1096-1103 +166, 166, 156, 149, 141, 130, 123, 112, // 1104-1111 +110, 103, 105, 103, 108, 110, 112, 119, // 1112-1119 +121, 128, 130, 133, 132, 132, 128, 126, // 1120-1127 +121, 116, 112, 106, 105, 105, 104, 105, // 1128-1135 +113, 112, 122, 134, 134, 151, 151, 162, // 1136-1143 +164, 166, 164, 160, 155, 145, 143, 128, // 1144-1151 +125, 115, 112, 109, 108, 108, 108, 112, // 1152-1159 +113, 120, 121, 125, 129, 130, 131, 130, // 1160-1167 +127, 124, 122, 118, 114, 110, 107, 107, // 1168-1175 +108, 106, 111, 117, 115, 132, 132, 141, // 1176-1183 +151, 151, 162, 160, 164, 156, 160, 146, // 1184-1191 +146, 137, 129, 124, 115, 115, 110, 112, // 1192-1199 +110, 112, 112, 115, 119, 120, 125, 126, // 1200-1207 +129, 130, 128, 128, 126, 123, 121, 118, // 1208-1215 +113, 111, 110, 110, 110, 109, 117, 115, // 1216-1223 +122, 134, 131, 146, 146, 154, 156, 160, // 1224-1231 +157, 156, 153, 145, 144, 134, 132, 123, // 1232-1239 +118, 115, 112, 111, 112, 112, 112, 115, // 1240-1247 +116, 120, 122, 124, 128, 129, 130, 130, // 1248-1255 +130, 126, 126, 121, 118, 114, 111, 112, // 1256-1263 +110, 109, 111, 116, 113, 128, 127, 136, // 1264-1271 +144, 145, 155, 155, 160, 155, 160, 149, // 1272-1279 +149, 143, 134, 132, 121, 118, 113, 112, // 1280-1287 +109, 111, 109, 112, 113, 115, 120, 122, // 1288-1295 +128, 129, 132, 132, 132, 132, 130, 128, // 1296-1303 +122, 118, 114, 111, 108, 109, 105, 108, // 1304-1311 +113, 111, 124, 124, 134, 143, 145, 155, // 1312-1319 +157, 160, 157, 160, 151, 150, 143, 135, // 1320-1327 +131, 121, 117, 112, 110, 108, 110, 108, // 1328-1335 +112, 112, 115, 120, 123, 128, 132, 133, // 1336-1343 +135, 136, 134, 134, 131, 127, 123, 118, // 1344-1351 +113, 110, 105, 105, 106, 102, 112, 111, // 1352-1359 +117, 130, 129, 143, 146, 153, 157, 162, // 1360-1367 +160, 160, 157, 149, 147, 137, 132, 124, // 1368-1375 +118, 113, 112, 108, 109, 109, 109, 113, // 1376-1383 +114, 119, 123, 125, 131, 134, 134, 137, // 1384-1391 +136, 136, 134, 130, 128, 122, 116, 112, // 1392-1399 +107, 104, 103, 103, 102, 110, 112, 115, // 1400-1407 +130, 127, 143, 146, 153, 158, 162, 162, // 1408-1415 +160, 157, 149, 149, 137, 134, 125, 118, // 1416-1423 +114, 112, 108, 108, 108, 108, 112, 113, // 1424-1431 +118, 122, 125, 130, 134, 135, 139, 139, // 1432-1439 +137, 137, 133, 130, 126, 120, 115, 110, // 1440-1447 +105, 103, 99, 102, 102, 105, 113, 113, // 1448-1455 +126, 132, 138, 149, 151, 160, 160, 164, // 1456-1463 +160, 160, 153, 149, 143, 134, 130, 120, // 1464-1471 +116, 112, 110, 107, 110, 108, 112, 113, // 1472-1479 +115, 122, 125, 130, 134, 136, 137, 141, // 1480-1487 +138, 138, 136, 132, 128, 123, 116, 113, // 1488-1495 +108, 102, 101, 97, 101, 103, 104, 113, // 1496-1503 +116, 122, 136, 136, 149, 152, 158, 162, // 1504-1511 +164, 162, 160, 157, 147, 146, 135, 132, // 1512-1519 +122, 118, 112, 111, 108, 108, 110, 108, // 1520-1527 +114, 114, 120, 123, 128, 132, 135, 137, // 1528-1535 +139, 139, 139, 138, 134, 132, 126, 122, // 1536-1543 +118, 112, 109, 103, 101, 99, 97, 101, // 1544-1551 +103, 108, 112, 122, 123, 138, 141, 147, // 1552-1559 +157, 156, 164, 162, 164, 160, 158, 149, // 1560-1567 +146, 138, 130, 124, 116, 112, 109, 108, // 1568-1575 +105, 109, 107, 112, 114, 118, 122, 126, // 1576-1583 +130, 135, 136, 139, 141, 139, 139, 136, // 1584-1591 +132, 129, 122, 118, 113, 108, 105, 100, // 1592-1599 + 99, 98, 97, 101, 105, 111, 114, 125, // 1600-1607 +130, 139, 147, 149, 160, 162, 166, 166, // 1608-1615 +166, 162, 160, 151, 144, 140, 130, 124, // 1616-1623 +116, 112, 108, 106, 103, 105, 106, 108, // 1624-1631 +113, 115, 121, 126, 131, 134, 139, 139, // 1632-1639 +142, 141, 140, 139, 134, 130, 124, 119, // 1640-1647 +114, 110, 105, 103, 99, 99, 99, 99, // 1648-1655 +103, 105, 112, 118, 123, 134, 139, 145, // 1656-1663 +155, 155, 164, 166, 166, 168, 164, 160, // 1664-1671 +153, 147, 139, 134, 121, 117, 110, 105, // 1672-1679 +103, 101, 101, 103, 105, 109, 115, 118, // 1680-1687 +125, 131, 134, 139, 141, 143, 143, 141, // 1688-1695 +140, 137, 132, 128, 122, 117, 113, 109, // 1696-1703 +105, 103, 101, 101, 102, 104, 106, 111, // 1704-1711 +113, 119, 126, 133, 137, 146, 148, 153, // 1712-1719 +160, 157, 164, 160, 162, 157, 155, 147, // 1720-1727 +143, 135, 126, 122, 112, 110, 104, 102, // 1728-1735 +101, 102, 103, 109, 111, 116, 122, 126, // 1736-1743 +132, 136, 139, 142, 143, 141, 143, 139, // 1744-1751 +137, 133, 128, 124, 119, 114, 112, 109, // 1752-1759 +107, 106, 105, 108, 109, 112, 114, 118, // 1760-1767 +121, 125, 130, 134, 139, 141, 143, 148, // 1768-1775 +146, 150, 151, 149, 153, 146, 147, 143, // 1776-1783 +141, 135, 132, 123, 119, 115, 110, 110, // 1784-1791 +107, 108, 109, 111, 113, 117, 120, 125, // 1792-1799 +130, 133, 138, 138, 141, 141, 140, 140, // 1800-1807 +136, 136, 131, 129, 124, 121, 118, 115, // 1808-1815 +113, 112, 112, 112, 113, 113, 115, 118, // 1816-1823 +120, 122, 125, 124, 129, 129, 130, 132, // 1824-1831 +132, 134, 135, 138, 135, 141, 139, 141, // 1832-1839 +143, 141, 143, 140, 138, 134, 132, 126, // 1840-1847 +124, 120, 117, 116, 113, 114, 115, 115, // 1848-1855 +118, 120, 123, 128, 130, 132, 135, 135, // 1856-1863 +136, 138, 134, 138, 133, 134, 132, 127, // 1864-1871 +128, 122, 122, 119, 118, 115, 115, 113, // 1872-1879 +115, 115, 115, 118, 118, 120, 120, 121, // 1880-1887 +121, 123, 121, 124, 124, 128, 130, 132, // 1888-1895 +136, 136, 141, 141, 143, 145, 144, 146, // 1896-1903 +143, 143, 139, 136, 130, 128, 122, 118, // 1904-1911 +117, 114, 114, 114, 115, 118, 120, 122, // 1912-1919 +125, 128, 130, 132, 134, 135, 135, 135, // 1920-1927 +136, 132, 134, 131, 129, 130, 124, 124, // 1928-1935 +121, 120, 118, 117, 115, 115, 115, 115, // 1936-1943 +117, 116, 119, 119, 120, 121, 122, 122, // 1944-1951 +123, 122, 124, 124, 127, 130, 130, 136, // 1952-1959 +136, 139, 143, 143, 146, 146, 146, 146, // 1960-1967 +144, 141, 138, 133, 127, 124, 120, 118, // 1968-1975 +115, 113, 113, 114, 115, 117, 119, 120, // 1976-1983 +124, 124, 128, 130, 130, 132, 133, 134, // 1984-1991 +134, 134, 134, 133, 134, 130, 131, 129, // 1992-1999 +125, 124, 122, 121, 118, 118, 117, 116, // 2000-2007 +117, 117, 118, 118, 119, 120, 120, 121, // 2008-2015 +121, 122, 122, 123, 124, 125, 130, 130, // 2016-2023 +134, 137, 139, 142, 144, 143, 147, 144, // 2024-2031 +145, 144, 140, 139, 133, 130, 124, 121, // 2032-2039 +117, 115, 113, 113, 114, 113, 115, 118, // 2040-2047 +120, 123, 125, 128, 131, 132, 134, 136, // 2048-2055 +136, 136, 139, 136, 138, 136, 134, 134, // 2056-2063 +130, 130, 125, 122, 121, 118, 116, 115, // 2064-2071 +115, 113, 115, 115, 115, 118, 118, 120, // 2072-2079 +120, 121, 122, 122, 124, 122, 124, 122, // 2080-2087 +126, 130, 128, 134, 136, 136, 143, 143, // 2088-2095 +143, 149, 144, 146, 144, 141, 139, 135, // 2096-2103 +130, 125, 122, 116, 116, 113, 112, 113, // 2104-2111 +113, 115, 117, 118, 122, 124, 128, 130, // 2112-2119 +132, 133, 136, 136, 136, 139, 136, 138, // 2120-2127 +136, 133, 134, 130, 128, 124, 122, 120, // 2128-2135 +118, 115, 114, 113, 113, 114, 114, 115, // 2136-2143 +118, 118, 120, 122, 122, 123, 124, 124, // 2144-2151 +124, 124, 125, 125, 129, 130, 133, 134, // 2152-2159 +140, 139, 143, 145, 143, 149, 143, 145, // 2160-2167 +142, 139, 136, 131, 125, 121, 118, 113, // 2168-2175 +113, 112, 112, 112, 113, 115, 118, 120, // 2176-2183 +124, 128, 130, 132, 134, 136, 138, 139, // 2184-2191 +138, 139, 137, 136, 136, 132, 132, 128, // 2192-2199 +124, 123, 120, 118, 117, 115, 114, 115, // 2200-2207 +114, 115, 117, 117, 120, 120, 122, 124, // 2208-2215 +123, 124, 124, 124, 124, 124, 124, 124, // 2216-2223 +126, 127, 131, 132, 137, 137, 140, 144, // 2224-2231 +141, 146, 143, 143, 143, 139, 137, 132, // 2232-2239 +128, 122, 120, 115, 113, 113, 112, 113, // 2240-2247 +113, 115, 119, 121, 124, 129, 131, 133, // 2248-2255 +136, 136, 138, 139, 138, 139, 138, 136, // 2256-2263 +136, 132, 131, 128, 125, 122, 120, 119, // 2264-2271 +117, 116, 115, 115, 115, 115, 117, 118, // 2272-2279 +119, 120, 122, 123, 124, 124, 125, 125, // 2280-2287 +125, 125, 124, 125, 124, 128, 130, 130, // 2288-2295 +132, 137, 136, 141, 144, 141, 146, 143, // 2296-2303 +143, 143, 138, 136, 132, 128, 122, 120, // 2304-2311 +115, 114, 113, 112, 114, 115, 117, 121, // 2312-2319 +122, 126, 130, 132, 134, 136, 136, 137, // 2320-2327 +136, 136, 136, 134, 134, 133, 129, 130, // 2328-2335 +126, 124, 124, 121, 121, 120, 118, 118, // 2336-2343 +118, 118, 119, 118, 119, 120, 120, 121, // 2344-2351 +123, 122, 124, 124, 124, 124, 124, 124, // 2352-2359 +124, 124, 123, 124, 129, 129, 130, 136, // 2360-2367 +134, 139, 143, 139, 145, 142, 142, 143, // 2368-2375 +138, 136, 132, 128, 123, 122, 115, 115, // 2376-2383 +114, 112, 115, 115, 117, 121, 122, 126, // 2384-2391 +130, 132, 134, 136, 136, 136, 136, 135, // 2392-2399 +135, 134, 132, 132, 130, 127, 128, 123, // 2400-2407 +124, 122, 121, 121, 120, 120, 120, 120, // 2408-2415 +120, 120, 120, 121, 121, 122, 122, 122, // 2416-2423 +123, 124, 123, 124, 124, 123, 124, 122, // 2424-2431 +123, 123, 124, 128, 130, 130, 136, 134, // 2432-2439 +138, 143, 139, 145, 143, 143, 143, 139, // 2440-2447 +136, 133, 129, 124, 122, 117, 115, 115, // 2448-2455 +113, 115, 115, 117, 121, 122, 126, 130, // 2456-2463 +132, 133, 135, 134, 135, 135, 134, 134, // 2464-2471 +132, 130, 130, 129, 128, 126, 126, 123, // 2472-2479 +124, 123, 122, 124, 122, 123, 123, 122, // 2480-2487 +123, 122, 121, 122, 121, 121, 122, 122, // 2488-2495 +122, 122, 122, 123, 123, 122, 123, 123, // 2496-2503 +123, 124, 124, 128, 130, 130, 136, 135, // 2504-2511 +136, 143, 137, 143, 143, 139, 143, 136, // 2512-2519 +135, 132, 128, 124, 121, 118, 115, 115, // 2520-2527 +114, 115, 118, 118, 122, 124, 126, 131, // 2528-2535 +132, 134, 135, 135, 135, 135, 133, 133, // 2536-2543 +132, 130, 130, 127, 128, 125, 126, 125, // 2544-2551 +124, 125, 123, 124, 124, 123, 124, 123, // 2552-2559 +122, 122, 122, 121, 121, 121, 121, 122, // 2560-2567 +122, 122, 123, 122, 123, 124, 123, 124, // 2568-2575 +124, 124, 124, 126, 130, 130, 132, 138, // 2576-2583 +134, 141, 141, 139, 145, 139, 141, 140, // 2584-2591 +134, 134, 130, 124, 122, 119, 116, 115, // 2592-2599 +115, 115, 118, 119, 120, 125, 126, 130, // 2600-2607 +133, 133, 135, 136, 134, 134, 133, 132, // 2608-2615 +131, 130, 128, 127, 128, 124, 125, 125, // 2616-2623 +123, 125, 123, 124, 124, 123, 124, 123, // 2624-2631 +122, 123, 122, 122, 121, 121, 121, 122, // 2632-2639 +122, 122, 123, 123, 123, 124, 124, 124, // 2640-2647 +124, 124, 124, 126, 127, 132, 130, 136, // 2648-2655 +138, 134, 143, 138, 141, 143, 137, 139, // 2656-2663 +135, 132, 130, 126, 121, 120, 118, 115, // 2664-2671 +117, 117, 117, 121, 122, 124, 129, 130, // 2672-2679 +132, 134, 134, 135, 134, 132, 132, 130, // 2680-2687 +129, 127, 128, 126, 124, 127, 124, 125, // 2688-2695 +128, 123, 127, 124, 123, 126, 122, 124, // 2696-2703 +123, 121, 122, 121, 120, 121, 120, 121, // 2704-2711 +122, 122, 123, 124, 125, 124, 125, 126, // 2712-2719 +124, 125, 124, 124, 126, 126, 130, 131, // 2720-2727 +133, 139, 135, 140, 142, 136, 143, 138, // 2728-2735 +136, 136, 131, 128, 125, 121, 119, 119, // 2736-2743 +116, 117, 118, 119, 121, 125, 125, 130, // 2744-2751 +132, 132, 134, 134, 133, 133, 132, 130, // 2752-2759 +130, 127, 125, 128, 125, 124, 127, 125, // 2760-2767 +125, 128, 124, 125, 124, 124, 124, 122, // 2768-2775 +122, 121, 120, 120, 120, 120, 121, 122, // 2776-2783 +122, 124, 124, 125, 125, 127, 126, 125, // 2784-2791 +127, 125, 124, 126, 124, 125, 128, 126, // 2792-2799 +131, 133, 133, 138, 138, 137, 142, 137, // 2800-2807 +138, 138, 132, 133, 130, 125, 124, 122, // 2808-2815 +120, 120, 120, 120, 122, 124, 125, 129, // 2816-2823 +130, 131, 132, 132, 132, 133, 131, 130, // 2824-2831 +131, 127, 128, 129, 125, 126, 128, 124, // 2832-2839 +125, 126, 124, 124, 125, 122, 123, 122, // 2840-2847 +120, 122, 121, 121, 122, 122, 123, 124, // 2848-2855 +124, 126, 125, 128, 127, 126, 127, 130, // 2856-2863 +127, 128, 130, 125, 129, 127, 125, 129, // 2864-2871 +128, 127, 129, 128, 130, 131, 131, 132, // 2872-2879 +134, 134, 134, 135, 134, 133, 134, 131, // 2880-2887 +130, 130, 128, 127, 126, 124, 125, 125, // 2888-2895 +125, 126, 126 +}; + +const char F[1625] = {128, 127, 128, 128, 127, 128, 127, 128, // 0-7 +130, 133, 130, 131, 134, 129, 129, 130, // 8-15 +130, 130, 129, 128, 124, 123, 121, 121, // 16-23 +123, 123, 124, 124, 120, 114, 108, 103, // 24-31 +102, 107, 114, 121, 133, 140, 178, 170, // 32-39 +132, 157, 140, 103, 108, 114, 121, 126, // 40-47 +137, 153, 154, 135, 133, 127, 109, 104, // 48-55 +114, 131, 143, 143, 153, 155, 133, 124, // 56-63 +119, 110, 109, 116, 123, 122, 118, 119, // 64-71 +115, 106, 102, 103, 106, 107, 116, 129, // 72-79 +149, 184, 162, 141, 170, 122, 97, 109, // 80-87 +112, 119, 127, 144, 160, 151, 136, 138, // 88-95 +121, 103, 105, 114, 127, 139, 148, 158, // 96-103 +153, 140, 129, 116, 108, 104, 112, 116, // 104-111 +116, 119, 122, 116, 107, 106, 107, 103, // 112-119 +105, 115, 129, 158, 184, 162, 149, 166, // 120-127 +116, 93, 103, 107, 114, 124, 146, 162, // 128-135 +153, 139, 136, 119, 101, 104, 115, 129, // 136-143 +144, 158, 166, 151, 138, 123, 104, 99, // 144-151 +104, 111, 116, 120, 124, 124, 111, 104, // 152-159 +106, 100, 100, 110, 122, 149, 184, 184, // 160-167 +150, 164, 138, 91, 98, 102, 112, 123, // 168-175 +143, 162, 162, 142, 136, 123, 102, 101, // 176-183 +112, 130, 146, 155, 160, 153, 134, 115, // 184-191 +107, 101, 104, 113, 117, 119, 121, 116, // 192-199 +105, 105, 104, 100, 110, 112, 124, 160, // 200-207 +184, 178, 152, 164, 133, 91, 95, 106, // 208-215 +116, 123, 146, 164, 155, 139, 135, 121, // 216-223 +108, 110, 116, 130, 143, 147, 149, 145, // 224-231 +130, 119, 109, 105, 106, 108, 110, 115, // 232-239 +114, 110, 112, 108, 106, 110, 108, 120, // 240-247 +148, 178, 184, 162, 160, 152, 101, 93, // 248-255 +101, 109, 121, 140, 158, 158, 146, 135, // 256-263 +123, 109, 106, 114, 130, 144, 151, 154, // 264-271 +147, 131, 117, 107, 102, 105, 110, 112, // 272-279 +115, 117, 111, 106, 106, 100, 102, 106, // 280-287 +111, 132, 164, 184, 184, 156, 162, 134, // 288-295 + 85, 91, 105, 116, 133, 153, 168, 160, // 296-303 +139, 128, 115, 102, 106, 121, 141, 153, // 304-311 +157, 155, 142, 121, 110, 102, 103, 109, // 312-319 +116, 117, 117, 118, 106, 103, 103, 97, // 320-327 +106, 105, 110, 135, 168, 184, 184, 157, // 328-335 +162, 126, 81, 93, 108, 117, 136, 157, // 336-343 +168, 158, 138, 125, 113, 102, 110, 125, // 344-351 +142, 154, 157, 151, 138, 120, 108, 102, // 352-359 +105, 111, 116, 115, 117, 117, 104, 102, // 360-367 +105, 99, 106, 106, 110, 134, 168, 184, // 368-375 +184, 153, 158, 125, 83, 91, 107, 122, // 376-383 +138, 156, 168, 158, 134, 121, 112, 103, // 384-391 +110, 129, 143, 155, 158, 148, 136, 119, // 392-399 +107, 103, 108, 114, 119, 115, 119, 115, // 400-407 +100, 105, 105, 98, 110, 105, 107, 138, // 408-415 +172, 184, 180, 156, 156, 118, 83, 91, // 416-423 +108, 124, 142, 158, 168, 156, 131, 118, // 424-431 +109, 102, 111, 133, 145, 155, 158, 146, // 432-439 +132, 115, 106, 105, 111, 118, 122, 116, // 440-447 +118, 114, 98, 102, 105, 100, 110, 109, // 448-455 +109, 135, 174, 184, 180, 156, 147, 122, // 456-463 + 85, 91, 114, 127, 143, 158, 164, 153, // 464-471 +129, 112, 108, 103, 111, 135, 152, 160, // 472-479 +156, 144, 130, 111, 102, 105, 112, 123, // 480-487 +128, 120, 116, 113, 97, 93, 105, 99, // 488-495 +108, 112, 108, 134, 172, 184, 178, 150, // 496-503 +147, 121, 83, 93, 114, 132, 144, 158, // 504-511 +164, 152, 124, 111, 107, 102, 109, 131, // 512-519 +156, 166, 158, 146, 132, 111, 98, 103, // 520-527 +114, 128, 134, 130, 118, 112, 103, 89, // 528-535 +101, 104, 105, 115, 110, 116, 145, 178, // 536-543 +184, 162, 142, 143, 105, 85, 106, 124, // 544-551 +140, 148, 157, 160, 141, 114, 109, 106, // 552-559 +106, 115, 135, 152, 162, 160, 153, 133, // 560-567 +108, 107, 102, 112, 129, 134, 136, 125, // 568-575 +112, 109, 98, 93, 110, 105, 108, 112, // 576-583 +107, 131, 160, 180, 182, 144, 140, 129, // 584-591 + 91, 98, 116, 135, 147, 154, 158, 154, // 592-599 +124, 108, 106, 104, 111, 125, 143, 153, // 600-607 +150, 142, 137, 136, 129, 109, 117, 132, // 608-615 +121, 122, 125, 125, 119, 110, 114, 115, // 616-623 +106, 108, 103, 99, 104, 105, 120, 156, // 624-631 +184, 182, 144, 143, 132, 95, 91, 112, // 632-639 +141, 151, 155, 162, 156, 125, 103, 99, // 640-647 +103, 110, 122, 143, 158, 151, 139, 133, // 648-655 +126, 123, 120, 118, 133, 136, 124, 125, // 656-663 +123, 120, 113, 110, 117, 114, 107, 110, // 664-671 +101, 95, 102, 104, 123, 162, 184, 176, // 672-679 +143, 148, 121, 91, 98, 114, 143, 154, // 680-687 +155, 160, 149, 117, 102, 98, 104, 114, // 688-695 +129, 147, 159, 148, 134, 124, 115, 116, // 696-703 +123, 135, 143, 140, 136, 124, 116, 115, // 704-711 +114, 116, 117, 119, 116, 110, 104, 97, // 712-719 + 95, 98, 104, 124, 157, 184, 184, 144, // 720-727 +141, 120, 93, 97, 112, 143, 160, 156, // 728-735 +154, 148, 119, 100, 97, 107, 120, 133, // 736-743 +148, 160, 149, 130, 118, 112, 114, 121, // 744-751 +135, 149, 152, 142, 125, 117, 112, 108, // 752-759 +114, 121, 124, 122, 115, 109, 101, 93, // 760-767 + 93, 97, 110, 131, 160, 184, 180, 142, // 768-775 +135, 113, 93, 97, 116, 147, 162, 157, // 776-783 +153, 143, 116, 99, 98, 108, 124, 137, // 784-791 +148, 157, 146, 126, 115, 111, 113, 123, // 792-799 +140, 152, 155, 142, 128, 116, 111, 112, // 800-807 +117, 129, 133, 125, 116, 107, 99, 93, // 808-815 + 89, 93, 105, 117, 141, 170, 184, 172, // 816-823 +129, 122, 105, 93, 103, 124, 158, 170, // 824-831 +157, 146, 134, 109, 95, 97, 115, 135, // 832-839 +144, 151, 155, 142, 120, 109, 107, 115, // 840-847 +124, 137, 156, 160, 143, 131, 118, 112, // 848-855 +113, 118, 130, 139, 133, 118, 108, 98, // 856-863 + 95, 93, 93, 102, 113, 122, 139, 157, // 864-871 +172, 170, 129, 116, 116, 106, 112, 129, // 872-879 +152, 166, 154, 137, 130, 115, 104, 106, // 880-887 +118, 137, 146, 144, 143, 139, 120, 111, // 888-895 +110, 118, 130, 137, 146, 155, 143, 129, // 896-903 +124, 118, 120, 125, 130, 138, 134, 119, // 904-911 +110, 99, 95, 97, 100, 106, 108, 112, // 912-919 +117, 132, 143, 157, 170, 142, 123, 128, // 920-927 +112, 116, 125, 138, 157, 156, 140, 134, // 928-935 +123, 112, 111, 113, 128, 142, 141, 140, // 936-943 +138, 125, 115, 112, 114, 125, 134, 139, // 944-951 +143, 143, 140, 133, 121, 125, 127, 123, // 952-959 +129, 130, 126, 119, 110, 105, 105, 101, // 960-967 +101, 108, 109, 108, 112, 117, 130, 145, // 968-975 +162, 170, 144, 131, 125, 115, 118, 124, // 976-983 +142, 156, 155, 142, 133, 122, 112, 110, // 984-991 +114, 128, 139, 139, 137, 134, 124, 116, // 992-999 +113, 118, 129, 135, 139, 142, 140, 136, // 1000-1007 +132, 123, 121, 125, 125, 128, 127, 124, // 1008-1015 +121, 114, 109, 108, 106, 106, 107, 105, // 1016-1023 +108, 108, 111, 120, 132, 144, 166, 176, // 1024-1031 +150, 131, 125, 115, 120, 124, 138, 157, // 1032-1039 +157, 143, 132, 119, 112, 109, 110, 123, // 1040-1047 +138, 140, 138, 135, 126, 119, 114, 116, // 1048-1055 +127, 134, 136, 139, 138, 133, 129, 124, // 1056-1063 +121, 123, 125, 126, 129, 126, 122, 119, // 1064-1071 +114, 112, 112, 110, 111, 112, 109, 110, // 1072-1079 +111, 110, 118, 131, 139, 157, 178, 168, // 1080-1087 +137, 129, 120, 116, 121, 124, 144, 158, // 1088-1095 +149, 134, 123, 112, 109, 106, 112, 129, // 1096-1103 +141, 141, 139, 133, 124, 118, 114, 118, // 1104-1111 +129, 135, 138, 139, 135, 130, 124, 119, // 1112-1119 +119, 123, 125, 128, 129, 127, 124, 119, // 1120-1127 +116, 116, 117, 115, 114, 114, 114, 112, // 1128-1135 +112, 112, 115, 127, 137, 148, 166, 176, // 1136-1143 +152, 130, 121, 112, 116, 120, 130, 148, // 1144-1151 +155, 143, 130, 116, 110, 109, 108, 115, // 1152-1159 +134, 143, 143, 139, 130, 124, 118, 114, // 1160-1167 +119, 129, 135, 139, 139, 134, 130, 122, // 1168-1175 +116, 118, 123, 126, 131, 132, 130, 128, // 1176-1183 +121, 116, 116, 116, 115, 115, 116, 118, // 1184-1191 +116, 112, 110, 112, 122, 134, 147, 168, // 1192-1199 +176, 149, 130, 118, 110, 113, 115, 128, // 1200-1207 +148, 156, 144, 133, 118, 110, 107, 105, // 1208-1215 +114, 134, 143, 146, 143, 134, 125, 118, // 1216-1223 +112, 115, 125, 134, 142, 141, 135, 132, // 1224-1231 +124, 115, 116, 119, 125, 134, 134, 134, // 1232-1239 +132, 123, 116, 113, 112, 115, 117, 117, // 1240-1247 +119, 118, 115, 112, 108, 112, 125, 139, // 1248-1255 +156, 174, 164, 141, 130, 112, 110, 112, // 1256-1263 +117, 136, 152, 151, 143, 131, 116, 111, // 1264-1271 +106, 107, 120, 136, 143, 147, 143, 134, // 1272-1279 +125, 117, 113, 118, 125, 134, 140, 139, // 1280-1287 +136, 131, 121, 116, 118, 120, 128, 133, // 1288-1295 +134, 134, 129, 120, 114, 111, 112, 114, // 1296-1303 +116, 118, 119, 115, 112, 111, 110, 116, // 1304-1311 +129, 143, 162, 176, 160, 140, 127, 112, // 1312-1319 +112, 113, 118, 136, 150, 150, 143, 131, // 1320-1327 +118, 112, 109, 108, 119, 133, 143, 147, // 1328-1335 +143, 135, 130, 120, 115, 116, 121, 130, // 1336-1343 +136, 136, 134, 134, 126, 119, 118, 118, // 1344-1351 +125, 131, 130, 131, 130, 121, 116, 112, // 1352-1359 +111, 113, 116, 118, 119, 118, 115, 111, // 1360-1367 +109, 114, 125, 139, 152, 170, 170, 149, // 1368-1375 +136, 120, 112, 113, 115, 123, 140, 147, // 1376-1383 +146, 142, 129, 118, 113, 111, 112, 121, // 1384-1391 +131, 142, 146, 143, 136, 130, 121, 117, // 1392-1399 +116, 118, 125, 133, 134, 135, 136, 130, // 1400-1407 +123, 121, 119, 124, 128, 128, 129, 127, // 1408-1415 +123, 118, 114, 112, 115, 117, 118, 120, // 1416-1423 +120, 117, 114, 112, 112, 120, 133, 140, // 1424-1431 +152, 162, 164, 149, 136, 121, 115, 116, // 1432-1439 +117, 123, 133, 141, 143, 141, 131, 123, // 1440-1447 +118, 116, 116, 120, 126, 135, 140, 139, // 1448-1455 +136, 132, 126, 122, 119, 118, 121, 129, // 1456-1463 +134, 133, 132, 131, 128, 125, 122, 121, // 1464-1471 +123, 125, 125, 123, 119, 116, 115, 115, // 1472-1479 +116, 120, 123, 123, 122, 118, 115, 116, // 1480-1487 +118, 122, 129, 134, 140, 143, 147, 147, // 1488-1495 +143, 136, 130, 125, 124, 125, 126, 129, // 1496-1503 +133, 134, 133, 131, 127, 125, 125, 125, // 1504-1511 +125, 128, 129, 130, 131, 130, 130, 131, // 1512-1519 +131, 129, 127, 125, 124, 123, 121, 122, // 1520-1527 +124, 125, 127, 128, 125, 123, 121, 119, // 1528-1535 +118, 118, 119, 121, 123, 124, 124, 123, // 1536-1543 +120, 119, 121, 123, 124, 125, 128, 129, // 1544-1551 +132, 133, 132, 131, 132, 133, 133, 133, // 1552-1559 +132, 133, 134, 134, 133, 131, 131, 131, // 1560-1567 +131, 131, 130, 130, 130, 130, 129, 127, // 1568-1575 +128, 126, 126, 125, 125, 124, 124, 123, // 1576-1583 +122, 122, 122, 122, 123, 124, 124, 125, // 1584-1591 +124, 124, 124, 124, 124, 125, 125, 125, // 1592-1599 +125, 125, 126, 126, 125, 125, 125, 125, // 1600-1607 +126, 125, 125, 126, 128, 127, 128, 129, // 1608-1615 +129, 129, 129, 129, 127, 129, 129, 129, // 1616-1623 +129}; + +const char G[2978] = {126, 128, 128, 126, 128, 127, 128, 127, // 0-7 +128, 127, 131, 131, 119, 125, 134, 118, // 8-15 +130, 130, 121, 131, 129, 132, 129, 122, // 16-23 +129, 125, 123, 129, 125, 125, 126, 126, // 24-31 +125, 126, 128, 126, 128, 129, 125, 127, // 32-39 +131, 131, 138, 124, 119, 135, 118, 125, // 40-47 +131, 119, 129, 125, 123, 129, 123, 125, // 48-55 +129, 126, 128, 126, 131, 129, 124, 131, // 56-63 +129, 125, 127, 131, 125, 127, 125, 131, // 64-71 +125, 123, 133, 125, 123, 132, 127, 122, // 72-79 +132, 128, 123, 131, 123, 124, 135, 122, // 80-87 +124, 136, 124, 125, 129, 129, 128, 125, // 88-95 +130, 125, 128, 133, 122, 127, 131, 122, // 96-103 +133, 125, 123, 134, 125, 125, 129, 128, // 104-111 +124, 128, 130, 121, 132, 125, 125, 136, // 112-119 +119, 129, 131, 126, 125, 131, 126, 124, // 120-127 +135, 119, 128, 130, 123, 132, 120, 132, // 128-135 +130, 123, 133, 125, 129, 127, 129, 123, // 136-143 +129, 133, 119, 134, 123, 127, 128, 125, // 144-151 +132, 120, 133, 122, 125, 135, 121, 125, // 152-159 +136, 119, 125, 135, 119, 127, 131, 125, // 160-167 +128, 128, 125, 126, 127, 128, 126, 129, // 168-175 +129, 120, 135, 125, 121, 136, 119, 128, // 176-183 +135, 118, 131, 128, 123, 132, 124, 126, // 184-191 +130, 126, 127, 123, 133, 123, 121, 139, // 192-199 +118, 127, 134, 123, 128, 129, 129, 125, // 200-207 +125, 135, 112, 138, 131, 110, 144, 118, // 208-215 +122, 138, 114, 137, 126, 119, 140, 118, // 216-223 +133, 129, 121, 128, 136, 116, 129, 135, // 224-231 +112, 142, 120, 132, 122, 133, 125, 121, // 232-239 +136, 121, 128, 131, 123, 124, 136, 115, // 240-247 +136, 123, 125, 131, 120, 133, 124, 123, // 248-255 +133, 127, 119, 135, 128, 119, 133, 131, // 256-263 +119, 133, 124, 122, 136, 121, 121, 140, // 264-271 +111, 138, 124, 123, 135, 118, 137, 118, // 272-279 +132, 136, 107, 146, 125, 104, 160, 112, // 280-287 +115, 152, 111, 123, 143, 112, 131, 130, // 288-295 +123, 128, 128, 125, 124, 139, 114, 135, // 296-303 +136, 111, 140, 135, 102, 152, 124, 100, // 304-311 +166, 110, 112, 160, 102, 131, 135, 118, // 312-319 +135, 120, 129, 130, 129, 123, 127, 139, // 320-327 +103, 146, 125, 109, 153, 110, 123, 144, // 328-335 +112, 125, 143, 112, 124, 146, 108, 130, // 336-343 +145, 101, 146, 125, 111, 148, 112, 133, // 344-351 +133, 117, 129, 138, 116, 121, 150, 102, // 352-359 +135, 143, 107, 133, 140, 112, 130, 142, // 360-367 +110, 135, 136, 111, 142, 126, 114, 142, // 368-375 +122, 121, 129, 135, 114, 135, 132, 112, // 376-383 +139, 131, 114, 139, 131, 112, 146, 116, // 384-391 +125, 136, 120, 123, 137, 125, 116, 143, // 392-399 +119, 121, 143, 109, 137, 137, 109, 141, // 400-407 +129, 121, 130, 135, 117, 129, 133, 121, // 408-415 +130, 127, 123, 127, 139, 111, 142, 120, // 416-423 +131, 130, 117, 140, 120, 123, 135, 123, // 424-431 +123, 135, 116, 136, 122, 124, 131, 130, // 432-439 +118, 133, 138, 110, 138, 135, 112, 141, // 440-447 +121, 127, 135, 120, 130, 137, 134, 106, // 448-455 +150, 111, 129, 130, 111, 146, 112, 119, // 456-463 +139, 126, 112, 138, 131, 116, 138, 126, // 464-471 +125, 138, 115, 138, 127, 119, 134, 119, // 472-479 +135, 118, 132, 127, 123, 134, 122, 135, // 480-487 +114, 140, 125, 112, 151, 106, 138, 129, // 488-495 +119, 129, 131, 123, 117, 146, 107, 136, // 496-503 +128, 119, 135, 116, 131, 132, 123, 121, // 504-511 +142, 119, 123, 138, 122, 119, 142, 118, // 512-519 +123, 143, 116, 135, 123, 135, 125, 126, // 520-527 +135, 123, 135, 123, 136, 130, 124, 137, // 528-535 +124, 121, 120, 129, 113, 115, 130, 108, // 536-543 +124, 114, 114, 127, 112, 123, 128, 129, // 544-551 +128, 127, 143, 133, 140, 146, 137, 145, // 552-559 +142, 140, 143, 135, 138, 136, 129, 129, // 560-567 +135, 125, 124, 130, 100, 123, 104, 95, // 568-575 +119, 93, 106, 105, 103, 104, 108, 114, // 576-583 +125, 123, 126, 150, 143, 142, 164, 155, // 584-591 +155, 160, 154, 155, 148, 142, 143, 135, // 592-599 +121, 126, 119, 111, 116, 115, 110, 120, // 600-607 +115, 115, 120, 112, 121, 112, 111, 115, // 608-615 +106, 104, 106, 105, 114, 114, 110, 137, // 616-623 +139, 122, 162, 155, 151, 168, 164, 166, // 624-631 +160, 153, 150, 142, 123, 123, 118, 104, // 632-639 +108, 113, 108, 112, 123, 123, 125, 127, // 640-647 +128, 127, 121, 116, 118, 106, 100, 99, // 648-655 + 89, 97, 104, 101, 111, 136, 129, 143, // 656-663 +166, 160, 176, 176, 178, 180, 168, 162, // 664-671 +151, 137, 121, 116, 102, 95, 99, 93, // 672-679 +101, 105, 110, 123, 123, 127, 136, 135, // 680-687 +122, 125, 118, 101, 103, 91, 99, 104, // 688-695 + 93, 111, 134, 120, 142, 168, 156, 178, // 696-703 +182, 182, 184, 170, 166, 156, 133, 122, // 704-711 +114, 95, 89, 95, 87, 87, 106, 110, // 712-719 +114, 130, 129, 138, 140, 129, 133, 121, // 720-727 +106, 107, 95, 100, 101, 91, 116, 121, // 728-735 +116, 150, 155, 156, 178, 182, 180, 180, // 736-743 +174, 166, 151, 134, 126, 109, 95, 93, // 744-751 + 89, 85, 95, 102, 109, 119, 127, 133, // 752-759 +132, 143, 131, 127, 129, 108, 106, 102, // 760-767 +102, 100, 93, 115, 118, 115, 146, 150, // 768-775 +156, 174, 180, 180, 178, 176, 166, 150, // 776-783 +138, 128, 110, 98, 93, 89, 85, 93, // 784-791 +102, 108, 114, 129, 131, 129, 144, 129, // 792-799 +128, 131, 107, 112, 106, 105, 104, 98, // 800-807 +122, 114, 121, 148, 144, 157, 170, 176, // 808-815 +174, 176, 172, 162, 146, 137, 125, 107, // 816-823 +101, 95, 89, 87, 97, 102, 110, 116, // 824-831 +129, 129, 129, 143, 127, 125, 126, 108, // 832-839 +111, 106, 107, 104, 102, 123, 114, 125, // 840-847 +148, 145, 160, 170, 174, 174, 174, 168, // 848-855 +162, 143, 138, 123, 107, 102, 95, 89, // 856-863 + 89, 97, 101, 110, 118, 129, 129, 131, // 864-871 +141, 128, 125, 128, 107, 110, 111, 103, // 872-879 +105, 108, 120, 114, 129, 145, 145, 160, // 880-887 +170, 174, 172, 176, 168, 160, 145, 140, // 888-895 +121, 110, 103, 95, 89, 91, 98, 99, // 896-903 +110, 118, 125, 133, 132, 138, 134, 125, // 904-911 +128, 112, 110, 112, 107, 102, 110, 120, // 912-919 +110, 133, 141, 142, 160, 166, 170, 172, // 920-927 +174, 170, 160, 146, 143, 121, 112, 105, // 928-935 + 97, 89, 93, 95, 97, 110, 116, 123, // 936-943 +129, 133, 135, 133, 127, 125, 114, 112, // 944-951 +113, 110, 105, 114, 119, 111, 137, 138, // 952-959 +143, 158, 164, 166, 170, 172, 164, 157, // 960-967 +148, 139, 121, 113, 106, 95, 91, 95, // 968-975 + 93, 100, 110, 114, 123, 129, 131, 133, // 976-983 +135, 128, 123, 119, 112, 112, 113, 105, // 984-991 +114, 121, 112, 135, 136, 142, 155, 160, // 992-999 +166, 168, 170, 166, 156, 150, 141, 124, // 1000-1007 +117, 110, 99, 95, 97, 93, 101, 107, // 1008-1015 +112, 119, 126, 128, 131, 133, 126, 123, // 1016-1023 +119, 112, 114, 116, 106, 118, 120, 112, // 1024-1031 +136, 135, 142, 154, 157, 164, 164, 168, // 1032-1039 +164, 153, 152, 140, 124, 120, 109, 100, // 1040-1047 + 99, 95, 95, 101, 106, 112, 118, 128, // 1048-1055 +126, 128, 134, 125, 121, 121, 112, 115, // 1056-1063 +118, 106, 120, 121, 114, 138, 132, 143, // 1064-1071 +152, 154, 164, 162, 166, 162, 152, 152, // 1072-1079 +138, 125, 121, 108, 104, 100, 97, 99, // 1080-1087 +101, 108, 112, 118, 126, 124, 127, 131, // 1088-1095 +124, 121, 119, 114, 113, 119, 108, 119, // 1096-1103 +124, 114, 138, 134, 143, 153, 154, 164, // 1104-1111 +162, 164, 162, 151, 150, 137, 125, 121, // 1112-1119 +108, 104, 100, 97, 99, 102, 108, 112, // 1120-1127 +118, 126, 125, 129, 133, 125, 124, 120, // 1128-1135 +114, 114, 118, 111, 113, 125, 114, 132, // 1136-1143 +137, 138, 152, 153, 162, 162, 164, 162, // 1144-1151 +151, 152, 141, 126, 125, 110, 105, 103, // 1152-1159 + 97, 101, 101, 107, 111, 117, 126, 126, // 1160-1167 +131, 133, 127, 128, 121, 117, 114, 114, // 1168-1175 +115, 107, 122, 118, 118, 139, 133, 145, // 1176-1183 +153, 157, 162, 162, 166, 156, 151, 149, // 1184-1191 +131, 125, 119, 103, 105, 101, 95, 102, // 1192-1199 +103, 110, 114, 123, 127, 129, 135, 131, // 1200-1207 +131, 128, 118, 117, 112, 114, 111, 108, // 1208-1215 +123, 113, 124, 138, 133, 150, 153, 160, // 1216-1223 +162, 164, 164, 153, 152, 143, 128, 125, // 1224-1231 +112, 102, 106, 95, 97, 104, 104, 112, // 1232-1239 +117, 126, 129, 134, 136, 132, 134, 128, // 1240-1247 +119, 118, 111, 112, 110, 106, 119, 112, // 1248-1255 +120, 136, 133, 150, 153, 160, 164, 164, // 1256-1263 +166, 154, 153, 144, 129, 123, 114, 102, // 1264-1271 +102, 99, 95, 102, 106, 111, 118, 125, // 1272-1279 +131, 135, 138, 135, 135, 131, 122, 117, // 1280-1287 +112, 109, 111, 104, 111, 117, 112, 132, // 1288-1295 +134, 143, 154, 157, 164, 166, 166, 160, // 1296-1303 +152, 149, 135, 123, 118, 106, 99, 101, // 1304-1311 + 95, 99, 106, 108, 116, 123, 131, 135, // 1312-1319 +139, 138, 135, 135, 126, 119, 115, 108, // 1320-1327 +108, 108, 101, 114, 113, 118, 136, 135, // 1328-1335 +150, 155, 162, 166, 164, 166, 155, 150, // 1336-1343 +143, 129, 119, 112, 104, 95, 101, 95, // 1344-1351 + 99, 110, 110, 120, 127, 133, 138, 141, // 1352-1359 +140, 136, 133, 125, 117, 112, 104, 107, // 1360-1367 +105, 100, 113, 112, 118, 136, 136, 152, // 1368-1375 +157, 164, 168, 166, 166, 154, 150, 142, // 1376-1383 +128, 118, 111, 102, 95, 100, 93, 102, // 1384-1391 +109, 111, 122, 129, 135, 139, 142, 140, // 1392-1399 +137, 134, 123, 118, 112, 104, 106, 104, // 1400-1407 +100, 112, 113, 118, 138, 138, 151, 160, // 1408-1415 +166, 168, 168, 166, 154, 150, 141, 127, // 1416-1423 +119, 110, 103, 97, 98, 97, 100, 111, // 1424-1431 +112, 122, 130, 135, 142, 142, 142, 139, // 1432-1439 +135, 127, 118, 112, 104, 102, 104, 99, // 1440-1447 +105, 116, 112, 131, 141, 144, 160, 162, // 1448-1455 +168, 168, 168, 160, 151, 146, 132, 121, // 1456-1463 +113, 104, 97, 99, 95, 99, 107, 110, // 1464-1471 +119, 127, 133, 139, 143, 143, 140, 138, // 1472-1479 +130, 123, 116, 108, 102, 102, 102, 100, // 1480-1487 +111, 117, 117, 140, 142, 151, 164, 164, // 1488-1495 +170, 168, 166, 155, 147, 140, 124, 117, // 1496-1503 +109, 101, 97, 97, 97, 102, 110, 113, // 1504-1511 +124, 131, 136, 143, 143, 143, 140, 136, // 1512-1519 +128, 121, 113, 104, 101, 99, 101, 101, // 1520-1527 +108, 119, 116, 140, 143, 150, 166, 164, // 1528-1535 +170, 168, 164, 155, 147, 140, 125, 117, // 1536-1543 +110, 101, 98, 98, 97, 103, 110, 114, // 1544-1551 +124, 131, 136, 142, 143, 143, 141, 136, // 1552-1559 +129, 121, 114, 105, 102, 99, 100, 102, // 1560-1567 +102, 119, 118, 131, 147, 144, 162, 164, // 1568-1575 +168, 168, 164, 159, 147, 142, 129, 118, // 1576-1583 +112, 104, 98, 100, 98, 101, 110, 112, // 1584-1591 +121, 131, 135, 141, 143, 143, 141, 138, // 1592-1599 +130, 123, 116, 109, 102, 99, 97, 102, // 1600-1607 +101, 111, 121, 121, 143, 146, 153, 166, // 1608-1615 +164, 168, 166, 162, 152, 143, 136, 122, // 1616-1623 +114, 107, 101, 97, 100, 99, 104, 113, // 1624-1631 +116, 128, 133, 138, 143, 143, 143, 140, // 1632-1639 +135, 128, 121, 114, 107, 102, 97, 97, // 1640-1647 +104, 101, 111, 125, 123, 143, 149, 153, // 1648-1655 +166, 166, 168, 164, 162, 151, 142, 136, // 1656-1663 +121, 113, 108, 101, 98, 101, 100, 106, // 1664-1671 +114, 117, 129, 134, 138, 143, 143, 142, // 1672-1679 +140, 135, 127, 121, 114, 108, 103, 97, // 1680-1687 + 97, 102, 104, 108, 124, 126, 136, 153, // 1688-1695 +150, 162, 166, 164, 166, 162, 152, 143, // 1696-1703 +137, 124, 114, 110, 104, 99, 102, 102, // 1704-1711 +104, 114, 117, 125, 135, 136, 142, 143, // 1712-1719 +142, 141, 137, 129, 124, 117, 111, 106, // 1720-1727 +101, 97, 98, 104, 107, 112, 128, 130, // 1728-1735 +140, 153, 152, 162, 166, 164, 162, 157, // 1736-1743 +150, 140, 135, 122, 114, 110, 105, 101, // 1744-1751 +103, 105, 107, 116, 119, 128, 134, 136, // 1752-1759 +142, 142, 141, 139, 135, 129, 123, 118, // 1760-1767 +112, 109, 104, 101, 99, 103, 110, 111, // 1768-1775 +119, 133, 133, 146, 153, 152, 164, 160, // 1776-1783 +160, 157, 152, 143, 136, 131, 119, 114, // 1784-1791 +111, 106, 105, 108, 108, 112, 118, 120, // 1792-1799 +129, 133, 136, 140, 139, 138, 137, 133, // 1800-1807 +128, 123, 118, 113, 112, 107, 105, 105, // 1808-1815 +102, 111, 113, 116, 128, 135, 136, 149, // 1816-1823 +150, 153, 160, 156, 155, 153, 147, 140, // 1824-1831 +136, 129, 119, 116, 112, 106, 111, 109, // 1832-1839 +109, 117, 116, 123, 129, 131, 135, 136, // 1840-1847 +137, 136, 136, 131, 127, 125, 119, 116, // 1848-1855 +114, 109, 108, 106, 103, 109, 112, 114, // 1856-1863 +120, 132, 131, 142, 150, 146, 158, 157, // 1864-1871 +155, 157, 150, 144, 140, 133, 125, 118, // 1872-1879 +114, 110, 107, 110, 106, 111, 114, 116, // 1880-1887 +125, 127, 133, 137, 137, 139, 139, 137, // 1888-1895 +134, 131, 126, 121, 118, 113, 110, 108, // 1896-1903 +104, 103, 104, 108, 112, 114, 127, 132, // 1904-1911 +135, 151, 146, 155, 162, 156, 160, 155, // 1912-1919 +150, 143, 138, 130, 121, 116, 110, 106, // 1920-1927 +106, 105, 107, 111, 114, 120, 128, 131, // 1928-1935 +137, 140, 141, 143, 141, 138, 136, 131, // 1936-1943 +125, 121, 116, 112, 110, 107, 104, 102, // 1944-1951 +102, 104, 111, 114, 119, 133, 134, 143, // 1952-1959 +152, 150, 162, 160, 160, 158, 152, 146, // 1960-1967 +140, 134, 123, 116, 112, 107, 105, 106, // 1968-1975 +105, 109, 114, 117, 125, 131, 135, 140, // 1976-1983 +142, 142, 143, 142, 137, 136, 130, 124, // 1984-1991 +122, 116, 112, 111, 106, 105, 102, 102, // 1992-1999 +103, 106, 112, 116, 121, 135, 137, 144, // 2000-2007 +154, 152, 160, 160, 157, 158, 151, 145, // 2008-2015 +139, 132, 122, 116, 112, 107, 106, 105, // 2016-2023 +107, 111, 114, 119, 125, 131, 136, 141, // 2024-2031 +142, 143, 144, 141, 140, 136, 131, 127, // 2032-2039 +121, 118, 114, 111, 109, 106, 104, 102, // 2040-2047 +102, 103, 104, 111, 117, 120, 132, 140, // 2048-2055 +140, 153, 153, 155, 164, 157, 158, 154, // 2056-2063 +148, 142, 135, 127, 118, 114, 108, 107, // 2064-2071 +106, 105, 109, 112, 116, 123, 128, 134, // 2072-2079 +138, 142, 143, 144, 143, 141, 140, 135, // 2080-2087 +131, 129, 122, 119, 116, 112, 110, 108, // 2088-2095 +104, 105, 103, 102, 106, 105, 110, 114, // 2096-2103 +120, 125, 133, 143, 143, 152, 155, 155, // 2104-2111 +162, 158, 157, 155, 148, 143, 136, 128, // 2112-2119 +119, 115, 110, 106, 108, 104, 109, 112, // 2120-2127 +114, 123, 126, 132, 138, 140, 142, 143, // 2128-2135 +143, 142, 140, 136, 133, 130, 123, 119, // 2136-2143 +116, 111, 109, 106, 104, 102, 102, 102, // 2144-2151 +103, 106, 108, 112, 116, 123, 130, 135, // 2152-2159 +144, 146, 152, 160, 155, 164, 160, 157, // 2160-2167 +157, 148, 143, 136, 127, 119, 114, 110, // 2168-2175 +105, 105, 104, 105, 110, 112, 118, 125, // 2176-2183 +129, 135, 140, 142, 143, 144, 143, 143, // 2184-2191 +139, 135, 132, 125, 121, 116, 112, 108, // 2192-2199 +106, 103, 102, 102, 103, 105, 108, 110, // 2200-2207 +112, 116, 119, 125, 132, 136, 141, 148, // 2208-2215 +151, 152, 162, 155, 160, 160, 153, 153, // 2216-2223 +146, 140, 133, 125, 117, 112, 108, 104, // 2224-2231 +104, 104, 105, 111, 112, 119, 125, 130, // 2232-2239 +137, 140, 143, 144, 144, 143, 142, 138, // 2240-2247 +134, 130, 123, 119, 115, 111, 108, 106, // 2248-2255 +105, 106, 106, 108, 110, 112, 116, 118, // 2256-2263 +121, 125, 125, 130, 133, 136, 140, 140, // 2264-2271 +146, 146, 147, 153, 147, 153, 151, 146, // 2272-2279 +146, 139, 135, 129, 121, 116, 112, 109, // 2280-2287 +106, 107, 108, 110, 114, 117, 122, 128, // 2288-2295 +133, 136, 142, 142, 143, 144, 139, 141, // 2296-2303 +135, 130, 129, 121, 119, 116, 112, 112, // 2304-2311 +111, 110, 112, 112, 113, 117, 119, 121, // 2312-2319 +125, 125, 128, 129, 128, 129, 129, 130, // 2320-2327 +133, 133, 135, 139, 136, 142, 143, 142, // 2328-2335 +146, 144, 143, 142, 138, 134, 129, 123, // 2336-2343 +118, 116, 112, 111, 112, 111, 113, 117, // 2344-2351 +119, 125, 128, 132, 136, 137, 140, 140, // 2352-2359 +139, 140, 135, 133, 132, 125, 125, 121, // 2360-2367 +119, 118, 116, 116, 116, 116, 116, 118, // 2368-2375 +119, 121, 123, 123, 124, 123, 123, 123, // 2376-2383 +121, 121, 121, 119, 124, 124, 125, 133, // 2384-2391 +134, 137, 143, 142, 146, 148, 145, 147, // 2392-2399 +143, 139, 136, 130, 123, 119, 115, 112, // 2400-2407 +112, 111, 112, 115, 116, 121, 125, 129, // 2408-2415 +133, 135, 136, 139, 139, 137, 138, 135, // 2416-2423 +132, 132, 126, 125, 123, 119, 120, 118, // 2424-2431 +117, 118, 116, 117, 118, 118, 119, 120, // 2432-2439 +120, 121, 121, 121, 121, 120, 119, 121, // 2440-2447 +119, 121, 123, 125, 127, 134, 136, 138, // 2448-2455 +144, 143, 147, 149, 146, 147, 143, 139, // 2456-2463 +136, 131, 125, 122, 117, 114, 114, 112, // 2464-2471 +114, 116, 117, 121, 124, 126, 130, 132, // 2472-2479 +133, 135, 135, 134, 134, 133, 131, 130, // 2480-2487 +130, 125, 128, 124, 123, 124, 120, 121, // 2488-2495 +121, 119, 120, 119, 119, 121, 120, 121, // 2496-2503 +121, 121, 121, 121, 120, 120, 120, 120, // 2504-2511 +121, 123, 125, 129, 131, 136, 138, 140, // 2512-2519 +144, 144, 147, 146, 145, 144, 142, 138, // 2520-2527 +134, 129, 124, 120, 117, 114, 114, 113, // 2528-2535 +114, 116, 117, 120, 123, 124, 128, 130, // 2536-2543 +131, 133, 133, 133, 135, 133, 133, 134, // 2544-2551 +130, 131, 130, 126, 128, 125, 123, 123, // 2552-2559 +120, 120, 119, 118, 119, 119, 119, 119, // 2560-2567 +119, 119, 120, 120, 120, 121, 121, 121, // 2568-2575 +123, 123, 125, 128, 131, 133, 136, 139, // 2576-2583 +140, 143, 143, 144, 144, 142, 143, 139, // 2584-2591 +136, 133, 128, 124, 121, 118, 117, 116, // 2592-2599 +115, 116, 118, 118, 121, 123, 124, 128, // 2600-2607 +129, 130, 132, 132, 133, 134, 133, 134, // 2608-2615 +133, 132, 133, 130, 130, 128, 126, 125, // 2616-2623 +123, 121, 120, 119, 118, 118, 118, 118, // 2624-2631 +118, 119, 119, 119, 120, 121, 121, 122, // 2632-2639 +122, 122, 124, 123, 126, 128, 129, 133, // 2640-2647 +135, 138, 139, 143, 144, 143, 146, 142, // 2648-2655 +144, 140, 136, 134, 129, 125, 121, 118, // 2656-2663 +116, 114, 114, 114, 116, 116, 118, 121, // 2664-2671 +122, 125, 128, 129, 131, 132, 133, 134, // 2672-2679 +134, 135, 134, 133, 134, 131, 131, 130, // 2680-2687 +126, 126, 124, 122, 121, 119, 119, 119, // 2688-2695 +118, 118, 119, 119, 119, 120, 121, 121, // 2696-2703 +122, 122, 123, 123, 123, 124, 125, 125, // 2704-2711 +126, 129, 131, 132, 135, 137, 138, 141, // 2712-2719 +142, 142, 143, 140, 140, 138, 135, 133, // 2720-2727 +127, 124, 121, 118, 116, 115, 114, 114, // 2728-2735 +116, 117, 119, 121, 123, 126, 129, 131, // 2736-2743 +133, 133, 135, 135, 135, 135, 135, 134, // 2744-2751 +133, 133, 130, 129, 127, 125, 125, 122, // 2752-2759 +121, 121, 119, 119, 119, 119, 119, 119, // 2760-2767 +120, 121, 121, 122, 123, 123, 123, 124, // 2768-2775 +123, 124, 125, 124, 126, 126, 128, 130, // 2776-2783 +132, 133, 136, 137, 137, 141, 139, 140, // 2784-2791 +141, 138, 138, 135, 132, 131, 126, 123, // 2792-2799 +121, 118, 117, 117, 116, 117, 119, 119, // 2800-2807 +122, 125, 126, 130, 131, 132, 134, 134, // 2808-2815 +135, 135, 134, 133, 133, 131, 130, 129, // 2816-2823 +126, 125, 123, 123, 122, 121, 121, 120, // 2824-2831 +120, 121, 121, 121, 121, 122, 123, 123, // 2832-2839 +124, 124, 125, 125, 125, 125, 125, 125, // 2840-2847 +125, 125, 125, 126, 128, 128, 129, 131, // 2848-2855 +131, 134, 135, 135, 137, 137, 137, 138, // 2856-2863 +136, 135, 135, 131, 130, 128, 124, 123, // 2864-2871 +121, 119, 119, 119, 119, 121, 122, 123, // 2872-2879 +125, 127, 129, 131, 132, 133, 133, 133, // 2880-2887 +133, 132, 132, 131, 129, 129, 126, 125, // 2888-2895 +124, 123, 123, 122, 122, 122, 122, 122, // 2896-2903 +123, 123, 123, 124, 124, 125, 125, 125, // 2904-2911 +125, 125, 125, 125, 125, 125, 124, 125, // 2912-2919 +125, 125, 125, 125, 127, 128, 129, 130, // 2920-2927 +130, 133, 133, 134, 135, 135, 135, 135, // 2928-2935 +135, 134, 133, 131, 130, 128, 125, 125, // 2936-2943 +123, 122, 121, 121, 121, 122, 123, 124, // 2944-2951 +125, 128, 127, 130, 130, 131, 131, 131, // 2952-2959 +131, 129, 129, 129, 126, 126, 125, 124, // 2960-2967 +124, 123, 123, 123, 122, 123, 123, 123, // 2968-2975 +123, 123}; + +const char H[3944] = {128, 128, 127, 128, 127, 128, 127, 127, // 0-7 +128, 127, 128, 127, 128, 128, 127, 128, // 8-15 +128, 128, 128, 128, 129, 134, 141, 130, // 16-23 +132, 141, 118, 125, 127, 116, 122, 124, // 24-31 +125, 123, 128, 123, 112, 110, 110, 102, // 32-39 +103, 111, 119, 139, 155, 143, 170, 164, // 40-47 +134, 151, 125, 114, 110, 111, 108, 112, // 48-55 +124, 134, 135, 144, 148, 140, 138, 134, // 56-63 +123, 115, 121, 118, 118, 129, 133, 134, // 64-71 +141, 142, 135, 133, 130, 119, 114, 111, // 72-79 +105, 103, 104, 105, 102, 106, 116, 130, // 80-87 +151, 149, 150, 180, 142, 142, 147, 112, // 88-95 +114, 110, 110, 107, 119, 130, 134, 140, // 96-103 +151, 144, 140, 140, 133, 124, 122, 121, // 104-111 +119, 123, 126, 131, 131, 135, 131, 125, // 112-119 +122, 115, 107, 106, 104, 99, 102, 106, // 120-127 +112, 128, 150, 164, 152, 172, 168, 129, // 128-135 +143, 121, 102, 104, 106, 104, 110, 129, // 136-143 +135, 140, 148, 152, 142, 142, 136, 125, // 144-151 +119, 121, 119, 124, 129, 136, 140, 135, // 152-159 +139, 126, 116, 114, 104, 100, 100, 97, // 160-167 + 99, 101, 112, 121, 139, 164, 166, 157, // 168-175 +184, 151, 135, 143, 110, 103, 101, 103, // 176-183 +100, 115, 130, 136, 143, 156, 149, 144, // 184-191 +143, 132, 122, 121, 118, 116, 129, 125, // 192-199 +133, 134, 132, 121, 117, 114, 105, 104, // 200-207 +101, 95, 98, 105, 112, 136, 162, 162, // 208-215 +166, 184, 152, 149, 147, 111, 108, 99, // 216-223 + 97, 91, 109, 118, 128, 140, 152, 151, // 224-231 +152, 153, 146, 137, 131, 127, 117, 116, // 232-239 +118, 115, 113, 118, 110, 109, 112, 105, // 240-247 +103, 103, 103, 105, 116, 145, 157, 148, // 248-255 +184, 180, 144, 174, 138, 116, 114, 106, // 256-263 + 93, 93, 109, 108, 118, 136, 143, 143, // 264-271 +157, 155, 149, 146, 143, 129, 123, 120, // 272-279 +110, 110, 109, 102, 101, 106, 103, 101, // 280-287 +106, 105, 107, 116, 136, 160, 151, 166, // 288-295 +184, 146, 162, 160, 118, 122, 112, 102, // 296-303 + 93, 107, 106, 110, 123, 136, 135, 147, // 304-311 +155, 152, 151, 151, 144, 131, 134, 116, // 312-319 +110, 112, 99, 95, 99, 98, 93, 99, // 320-327 +103, 101, 112, 125, 147, 164, 153, 184, // 328-335 +180, 145, 176, 136, 121, 119, 108, 95, // 336-343 + 97, 106, 102, 114, 126, 134, 139, 152, // 344-351 +152, 157, 155, 152, 147, 135, 129, 119, // 352-359 +107, 106, 97, 91, 98, 93, 93, 99, // 360-367 +100, 107, 116, 135, 162, 157, 164, 184, // 368-375 +155, 160, 168, 120, 125, 113, 102, 91, // 376-383 +104, 101, 104, 117, 129, 132, 143, 153, // 384-391 +153, 160, 155, 153, 145, 133, 129, 114, // 392-399 +105, 106, 89, 93, 95, 89, 95, 99, // 400-407 + 99, 112, 121, 143, 168, 153, 180, 184, // 408-415 +144, 176, 148, 120, 126, 108, 97, 93, // 416-423 +104, 95, 107, 118, 126, 133, 148, 153, // 424-431 +158, 160, 160, 151, 143, 136, 119, 113, // 432-439 +104, 98, 89, 93, 91, 89, 98, 98, // 440-447 +102, 117, 127, 154, 166, 156, 184, 172, // 448-455 +153, 178, 131, 129, 120, 106, 93, 99, // 456-463 + 98, 95, 111, 116, 124, 137, 148, 152, // 464-471 +162, 160, 157, 152, 143, 130, 121, 111, // 472-479 +102, 93, 89, 89, 91, 91, 97, 99, // 480-487 +108, 118, 134, 160, 162, 164, 184, 164, // 488-495 +160, 172, 128, 133, 118, 105, 95, 101, // 496-503 + 95, 97, 111, 114, 124, 138, 149, 155, // 504-511 +162, 160, 162, 149, 144, 131, 119, 111, // 512-519 +100, 93, 87, 91, 87, 89, 97, 99, // 520-527 +108, 119, 136, 160, 160, 166, 184, 160, // 528-535 +166, 168, 126, 137, 117, 105, 97, 101, // 536-543 + 93, 98, 110, 112, 123, 138, 145, 154, // 544-551 +162, 160, 162, 151, 146, 132, 121, 112, // 552-559 +100, 95, 87, 87, 91, 89, 95, 101, // 560-567 +107, 118, 133, 156, 160, 160, 184, 162, // 568-575 +162, 172, 129, 140, 121, 108, 99, 102, // 576-583 + 93, 95, 108, 110, 119, 134, 143, 151, // 584-591 +162, 162, 162, 153, 151, 135, 125, 116, // 592-599 +104, 97, 91, 87, 89, 89, 93, 100, // 600-607 +105, 116, 129, 149, 162, 157, 184, 174, // 608-615 +154, 178, 138, 137, 130, 110, 102, 102, // 616-623 + 95, 91, 105, 106, 115, 129, 142, 146, // 624-631 +160, 160, 162, 156, 153, 141, 131, 120, // 632-639 +110, 101, 91, 89, 87, 89, 91, 98, // 640-647 +103, 112, 123, 141, 157, 157, 168, 184, // 648-655 +152, 174, 158, 130, 143, 115, 108, 103, // 656-663 +101, 91, 101, 104, 109, 120, 134, 140, // 664-671 +152, 158, 158, 162, 153, 149, 138, 130, // 672-679 +115, 110, 99, 91, 91, 89, 91, 95, // 680-687 + 99, 107, 114, 125, 143, 156, 155, 170, // 688-695 +180, 149, 176, 147, 136, 141, 114, 112, // 696-703 +104, 100, 93, 104, 103, 111, 121, 132, // 704-711 +140, 151, 156, 157, 158, 154, 146, 140, // 712-719 +130, 115, 112, 101, 93, 93, 91, 93, // 720-727 + 99, 99, 110, 113, 123, 139, 152, 153, // 728-735 +160, 180, 148, 168, 156, 133, 144, 119, // 736-743 +114, 108, 105, 95, 105, 105, 108, 120, // 744-751 +128, 135, 147, 149, 154, 158, 151, 149, // 752-759 +142, 133, 121, 116, 106, 100, 97, 93, // 760-767 + 95, 100, 100, 107, 113, 116, 129, 141, // 768-775 +151, 147, 164, 168, 143, 170, 142, 137, // 776-783 +140, 117, 116, 112, 106, 101, 111, 105, // 784-791 +112, 121, 125, 135, 145, 144, 152, 152, // 792-799 +147, 146, 140, 130, 123, 116, 107, 106, // 800-807 +101, 98, 101, 103, 104, 111, 112, 116, // 808-815 +125, 135, 146, 144, 151, 166, 139, 162, // 816-823 +147, 132, 147, 121, 123, 118, 112, 106, // 824-831 +113, 108, 112, 120, 120, 129, 139, 139, // 832-839 +143, 148, 144, 143, 142, 134, 129, 123, // 840-847 +113, 113, 107, 105, 105, 106, 106, 111, // 848-855 +111, 113, 119, 121, 135, 142, 135, 156, // 856-863 +152, 138, 166, 136, 143, 145, 124, 130, // 864-871 +123, 115, 113, 116, 108, 115, 117, 117, // 872-879 +126, 132, 133, 142, 142, 142, 143, 140, // 880-887 +136, 134, 128, 119, 119, 112, 110, 111, // 888-895 +107, 108, 112, 108, 112, 114, 115, 126, // 896-903 +135, 131, 143, 156, 134, 160, 149, 138, // 904-911 +155, 133, 135, 133, 122, 116, 119, 110, // 912-919 +112, 115, 112, 118, 125, 123, 135, 138, // 920-927 +136, 146, 140, 142, 140, 134, 130, 125, // 928-935 +119, 116, 113, 111, 110, 111, 110, 110, // 936-943 +112, 111, 114, 118, 129, 131, 132, 152, // 944-951 +136, 149, 157, 136, 158, 140, 139, 139, // 952-959 +129, 121, 120, 113, 110, 112, 109, 112, // 960-967 +118, 120, 123, 138, 131, 143, 144, 140, // 968-975 +146, 140, 135, 134, 126, 120, 119, 113, // 976-983 +112, 112, 110, 110, 111, 110, 112, 112, // 984-991 +115, 125, 130, 125, 149, 140, 140, 164, // 992-999 +134, 157, 148, 138, 144, 133, 125, 123, // 1000-1007 +117, 109, 113, 108, 108, 114, 115, 119, // 1008-1015 +131, 131, 138, 144, 141, 146, 144, 139, // 1016-1023 +138, 133, 125, 123, 118, 113, 114, 111, // 1024-1031 +111, 112, 110, 112, 112, 111, 115, 119, // 1032-1039 +127, 123, 139, 143, 131, 162, 139, 148, // 1040-1047 +157, 138, 149, 139, 131, 128, 122, 111, // 1048-1055 +114, 107, 106, 112, 111, 114, 125, 124, // 1056-1063 +135, 140, 139, 146, 143, 143, 140, 139, // 1064-1071 +131, 130, 123, 119, 118, 114, 113, 114, // 1072-1079 +112, 112, 112, 111, 112, 111, 112, 119, // 1080-1087 +123, 120, 141, 136, 136, 160, 137, 157, // 1088-1095 +152, 143, 152, 138, 135, 130, 121, 112, // 1096-1103 +113, 106, 106, 110, 109, 113, 122, 122, // 1104-1111 +133, 138, 139, 145, 143, 144, 143, 140, // 1112-1119 +135, 132, 125, 122, 120, 117, 116, 116, // 1120-1127 +114, 115, 114, 112, 112, 110, 110, 111, // 1128-1135 +114, 120, 121, 128, 141, 131, 151, 147, // 1136-1143 +144, 162, 143, 153, 145, 138, 135, 127, // 1144-1151 +118, 116, 111, 106, 110, 108, 111, 116, // 1152-1159 +120, 124, 134, 135, 140, 143, 143, 143, // 1160-1167 +143, 138, 136, 133, 128, 126, 121, 120, // 1168-1175 +120, 117, 116, 116, 114, 114, 112, 111, // 1176-1183 +110, 110, 110, 112, 118, 120, 121, 139, // 1184-1191 +133, 142, 155, 140, 162, 150, 149, 154, // 1192-1199 +142, 140, 134, 124, 118, 115, 107, 108, // 1200-1207 +108, 107, 112, 116, 118, 129, 130, 136, // 1208-1215 +141, 140, 143, 143, 142, 139, 138, 133, // 1216-1223 +131, 127, 123, 123, 119, 118, 116, 114, // 1224-1231 +113, 112, 112, 111, 111, 109, 110, 112, // 1232-1239 +112, 120, 123, 124, 140, 136, 143, 156, // 1240-1247 +143, 162, 152, 150, 154, 143, 142, 134, // 1248-1255 +126, 119, 116, 110, 108, 108, 107, 110, // 1256-1263 +114, 116, 123, 129, 132, 138, 141, 141, // 1264-1271 +144, 143, 142, 142, 136, 135, 131, 126, // 1272-1279 +122, 120, 115, 115, 112, 111, 112, 111, // 1280-1287 +112, 112, 112, 114, 113, 115, 118, 119, // 1288-1295 +125, 130, 130, 143, 139, 143, 154, 143, // 1296-1303 +157, 149, 147, 149, 141, 139, 132, 125, // 1304-1311 +118, 115, 110, 107, 108, 106, 109, 113, // 1312-1319 +115, 123, 128, 133, 139, 140, 143, 143, // 1320-1327 +143, 142, 140, 136, 131, 129, 123, 120, // 1328-1335 +116, 114, 112, 112, 112, 112, 114, 115, // 1336-1343 +117, 119, 120, 121, 121, 121, 123, 122, // 1344-1351 +127, 128, 130, 134, 138, 136, 143, 144, // 1352-1359 +143, 151, 143, 146, 143, 138, 135, 129, // 1360-1367 +122, 118, 114, 110, 110, 109, 109, 112, // 1368-1375 +115, 118, 125, 129, 134, 139, 140, 142, // 1376-1383 +142, 141, 139, 136, 133, 129, 125, 120, // 1384-1391 +119, 116, 114, 115, 114, 115, 117, 118, // 1392-1399 +120, 123, 124, 126, 127, 128, 126, 125, // 1400-1407 +124, 123, 125, 127, 123, 133, 131, 130, // 1408-1415 +142, 135, 140, 145, 139, 144, 142, 137, // 1416-1423 +136, 131, 124, 121, 118, 112, 112, 112, // 1424-1431 +111, 115, 116, 119, 125, 128, 133, 136, // 1432-1439 +138, 140, 139, 139, 137, 135, 133, 127, // 1440-1447 +128, 122, 120, 120, 116, 118, 118, 118, // 1448-1455 +121, 121, 124, 125, 126, 127, 127, 128, // 1456-1463 +125, 124, 123, 120, 120, 122, 121, 121, // 1464-1471 +129, 129, 130, 140, 135, 140, 144, 141, // 1472-1479 +143, 142, 138, 136, 131, 125, 121, 119, // 1480-1487 +114, 112, 114, 112, 115, 118, 119, 125, // 1488-1495 +129, 132, 135, 138, 138, 138, 139, 136, // 1496-1503 +134, 133, 128, 127, 124, 121, 121, 119, // 1504-1511 +119, 120, 120, 121, 122, 124, 124, 125, // 1512-1519 +126, 125, 125, 124, 123, 122, 121, 119, // 1520-1527 +119, 120, 122, 123, 128, 130, 131, 137, // 1528-1535 +139, 140, 143, 143, 142, 142, 139, 135, // 1536-1543 +132, 127, 123, 120, 118, 115, 115, 116, // 1544-1551 +116, 119, 122, 124, 129, 131, 133, 134, // 1552-1559 +135, 135, 134, 133, 131, 129, 127, 124, // 1560-1567 +123, 123, 121, 121, 121, 121, 123, 123, // 1568-1575 +124, 125, 125, 127, 128, 127, 128, 126, // 1576-1583 +125, 125, 124, 124, 123, 123, 124, 124, // 1584-1591 +125, 125, 128, 129, 130, 131, 131, 132, // 1592-1599 +133, 133, 133, 132, 132, 131, 130, 130, // 1600-1607 +129, 127, 128, 127, 128, 127, 129, 129, // 1608-1615 +129, 129, 128, 127, 126, 125, 124, 123, // 1616-1623 +123, 122, 121, 121, 121, 122, 123, 124, // 1624-1631 +124, 125, 127, 129, 129, 130, 130, 130, // 1632-1639 +130, 130, 129, 129, 127, 126, 125, 125, // 1640-1647 +125, 124, 124, 124, 125, 125, 125, 126, // 1648-1655 +128, 127, 129, 129, 129, 129, 129, 129, // 1656-1663 +129, 129, 128, 127, 128, 127, 128, 126, // 1664-1671 +126, 126, 128, 128, 127, 128, 128, 128, // 1672-1679 +127, 128, 126, 126, 126, 125, 125, 125, // 1680-1687 +125, 125, 126, 126, 126, 128, 127, 128, // 1688-1695 +128, 129, 129, 129, 129, 128, 127, 128, // 1696-1703 +127, 128, 127, 126, 126, 126, 126, 126, // 1704-1711 +126, 126, 128, 127, 128, 127, 128, 127, // 1712-1719 +128, 127, 128, 128, 127, 126, 126, 126, // 1720-1727 +126, 126, 126, 127, 126, 128, 127, 128, // 1728-1735 +129, 128, 129, 129, 129, 129, 127, 128, // 1736-1743 +128, 127, 128, 126, 126, 126, 125, 126, // 1744-1751 +125, 126, 125, 126, 126, 126, 128, 127, // 1752-1759 +128, 127, 128, 128, 128, 127, 128, 127, // 1760-1767 +128, 128, 127, 128, 127, 128, 127, 128, // 1768-1775 +127, 128, 128, 126, 128, 127, 126, 128, // 1776-1783 +126, 128, 126, 128, 127, 128, 127, 128, // 1784-1791 +128, 127, 128, 127, 128, 129, 129, 129, // 1792-1799 +129, 128, 127, 128, 127, 128, 127, 126, // 1800-1807 +127, 126, 127, 126, 126, 126, 126, 126, // 1808-1815 +126, 126, 127, 128, 127, 128, 127, 128, // 1816-1823 +127, 128, 127, 128, 127, 128, 128, 127, // 1824-1831 +128, 127, 128, 127, 128, 127, 127, 128, // 1832-1839 +127, 128, 127, 128, 127, 128, 127, 127, // 1840-1847 +128, 127, 128, 127, 127, 126, 126, 128, // 1848-1855 +127, 128, 127, 128, 127, 128, 127, 128, // 1856-1863 +128, 127, 128, 127, 128, 128, 126, 126, // 1864-1871 +126, 126, 126, 126, 126, 126, 126, 126, // 1872-1879 +128, 127, 128, 127, 128, 128, 127, 128, // 1880-1887 +127, 128, 128, 127, 128, 128, 127, 128, // 1888-1895 +127, 128, 127, 128, 127, 128, 127, 128, // 1896-1903 +127, 128, 128, 126, 126, 126, 126, 126, // 1904-1911 +126, 126, 126, 126, 126, 126, 127, 128, // 1912-1919 +127, 128, 127, 128, 127, 128, 128, 127, // 1920-1927 +128, 127, 128, 127, 128, 127, 128, 128, // 1928-1935 +127, 128, 128, 127, 128, 127, 128, 127, // 1936-1943 +128, 127, 128, 128, 127, 128, 127, 128, // 1944-1951 +127, 128, 128, 127, 128, 127, 128, 127, // 1952-1959 +128, 127, 128, 127, 128, 127, 128, 128, // 1960-1967 +127, 126, 126, 126, 128, 127, 128, 127, // 1968-1975 +128, 127, 128, 127, 128, 127, 128, 127, // 1976-1983 +128, 127, 128, 127, 128, 128, 128, 128, // 1984-1991 +127, 128, 127, 128, 127, 128, 127, 128, // 1992-1999 +128, 127, 128, 127, 128, 127, 128, 128, // 2000-2007 +127, 128, 127, 128, 127, 128, 128, 127, // 2008-2015 +128, 128, 128, 127, 128, 128, 128, 128, // 2016-2023 +127, 128, 127, 128, 127, 128, 128, 128, // 2024-2031 +128, 128, 128, 128, 128, 128, 128, 128, // 2032-2039 +128, 128, 128, 127, 128, 127, 128, 128, // 2040-2047 +127, 128, 128, 127, 128, 127, 128, 127, // 2048-2055 +128, 128, 128, 127, 128, 127, 127, 128, // 2056-2063 +127, 128, 127, 128, 127, 128, 128, 127, // 2064-2071 +128, 128, 128, 127, 128, 128, 128, 127, // 2072-2079 +128, 128, 127, 128, 127, 128, 127, 128, // 2080-2087 +127, 128, 127, 128, 127, 128, 128, 127, // 2088-2095 +128, 127, 128, 127, 128, 127, 128, 127, // 2096-2103 +128, 127, 128, 127, 128, 128, 127, 128, // 2104-2111 +127, 128, 127, 128, 128, 127, 128, 128, // 2112-2119 +127, 128, 127, 128, 127, 128, 128, 128, // 2120-2127 +128, 127, 128, 128, 128, 128, 128, 127, // 2128-2135 +128, 127, 128, 127, 128, 128, 127, 128, // 2136-2143 +128, 127, 128, 127, 128, 128, 127, 128, // 2144-2151 +127, 127, 128, 127, 128, 127, 128, 127, // 2152-2159 +128, 128, 128, 127, 128, 128, 128, 128, // 2160-2167 +127, 128, 128, 128, 128, 127, 128, 127, // 2168-2175 +128, 127, 128, 128, 127, 128, 127, 128, // 2176-2183 +128, 127, 128, 127, 128, 127, 128, 127, // 2184-2191 +128, 127, 128, 127, 128, 127, 128, 127, // 2192-2199 +128, 128, 128, 127, 128, 127, 127, 128, // 2200-2207 +127, 128, 128, 127, 128, 127, 128, 127, // 2208-2215 +128, 127, 128, 127, 128, 127, 128, 127, // 2216-2223 +128, 127, 128, 128, 127, 128, 127, 128, // 2224-2231 +128, 127, 128, 127, 128, 127, 128, 127, // 2232-2239 +128, 128, 127, 128, 128, 127, 128, 127, // 2240-2247 +128, 128, 127, 128, 128, 128, 127, 128, // 2248-2255 +127, 128, 127, 128, 127, 128, 127, 128, // 2256-2263 +127, 128, 127, 128, 127, 128, 128, 127, // 2264-2271 +128, 127, 128, 127, 128, 128, 127, 128, // 2272-2279 +127, 128, 128, 127, 128, 128, 127, 128, // 2280-2287 +127, 128, 128, 127, 128, 127, 128, 127, // 2288-2295 +128, 127, 128, 128, 127, 128, 127, 128, // 2296-2303 +127, 128, 128, 127, 128, 128, 127, 128, // 2304-2311 +127, 128, 127, 128, 127, 128, 127, 128, // 2312-2319 +127, 128, 127, 128, 127, 128, 127, 128, // 2320-2327 +127, 128, 128, 128, 127, 128, 127, 128, // 2328-2335 +127, 128, 128, 127, 128, 127, 128, 127, // 2336-2343 +128, 127, 128, 127, 128, 128, 127, 128, // 2344-2351 +127, 128, 127, 128, 128, 127, 128, 127, // 2352-2359 +128, 127, 128, 128, 127, 128, 127, 128, // 2360-2367 +128, 127, 128, 127, 128, 127, 128, 128, // 2368-2375 +127, 128, 128, 127, 128, 128, 128, 128, // 2376-2383 +127, 128, 127, 128, 127, 128, 127, 128, // 2384-2391 +127, 128, 127, 128, 128, 127, 128, 127, // 2392-2399 +128, 127, 128, 127, 128, 127, 128, 129, // 2400-2407 +132, 131, 119, 127, 130, 119, 134, 128, // 2408-2415 +128, 126, 128, 125, 124, 131, 122, 131, // 2416-2423 +125, 126, 130, 124, 129, 129, 128, 133, // 2424-2431 +134, 123, 124, 130, 120, 129, 128, 121, // 2432-2439 +131, 123, 126, 126, 125, 136, 131, 122, // 2440-2447 +133, 123, 125, 131, 120, 131, 123, 125, // 2448-2455 +129, 122, 130, 125, 124, 131, 124, 129, // 2456-2463 +129, 128, 129, 126, 129, 126, 127, 128, // 2464-2471 +126, 127, 125, 127, 128, 125, 129, 126, // 2472-2479 +129, 129, 125, 129, 128, 127, 126, 128, // 2480-2487 +129, 126, 126, 129, 126, 127, 130, 125, // 2488-2495 +129, 125, 126, 129, 125, 128, 128, 125, // 2496-2503 +129, 128, 126, 129, 127, 126, 129, 128, // 2504-2511 +127, 128, 126, 129, 125, 129, 125, 126, // 2512-2519 +129, 123, 130, 125, 128, 129, 125, 131, // 2520-2527 +126, 127, 130, 125, 129, 128, 125, 130, // 2528-2535 +123, 130, 129, 123, 131, 127, 126, 129, // 2536-2543 +126, 127, 129, 126, 127, 128, 125, 129, // 2544-2551 +126, 128, 128, 125, 129, 125, 129, 126, // 2552-2559 +126, 130, 124, 127, 130, 125, 127, 128, // 2560-2567 +128, 125, 129, 127, 125, 129, 126, 125, // 2568-2575 +131, 125, 125, 132, 124, 129, 128, 127, // 2576-2583 +131, 124, 128, 131, 123, 128, 131, 124, // 2584-2591 +130, 128, 125, 129, 127, 126, 130, 125, // 2592-2599 +125, 131, 124, 129, 130, 124, 129, 129, // 2600-2607 +124, 130, 128, 124, 130, 125, 127, 129, // 2608-2615 +124, 130, 129, 123, 131, 125, 128, 131, // 2616-2623 +123, 129, 129, 124, 127, 128, 126, 127, // 2624-2631 +125, 130, 126, 126, 129, 126, 128, 128, // 2632-2639 +129, 125, 129, 127, 127, 128, 127, 129, // 2640-2647 +124, 130, 125, 124, 131, 123, 131, 128, // 2648-2655 +124, 131, 124, 129, 128, 125, 129, 129, // 2656-2663 +124, 131, 124, 128, 129, 126, 129, 123, // 2664-2671 +130, 129, 124, 130, 125, 125, 132, 122, // 2672-2679 +130, 125, 125, 129, 121, 131, 125, 129, // 2680-2687 +130, 124, 129, 125, 126, 129, 125, 131, // 2688-2695 +124, 128, 129, 120, 134, 128, 120, 135, // 2696-2703 +124, 124, 132, 124, 125, 134, 116, 133, // 2704-2711 +130, 116, 138, 120, 127, 132, 119, 135, // 2712-2719 +124, 123, 135, 119, 133, 129, 118, 138, // 2720-2727 +122, 124, 133, 121, 130, 127, 122, 131, // 2728-2735 +129, 124, 131, 124, 130, 126, 122, 137, // 2736-2743 +118, 129, 136, 116, 131, 130, 121, 131, // 2744-2751 +127, 123, 131, 128, 123, 134, 123, 124, // 2752-2759 +136, 118, 131, 132, 118, 134, 129, 123, // 2760-2767 +129, 130, 123, 129, 133, 116, 134, 129, // 2768-2775 +116, 140, 119, 125, 133, 124, 129, 125, // 2776-2783 +128, 125, 129, 128, 123, 133, 126, 121, // 2784-2791 +134, 123, 125, 132, 121, 131, 130, 118, // 2792-2799 +136, 121, 129, 130, 125, 126, 130, 126, // 2800-2807 +123, 133, 123, 129, 126, 129, 125, 130, // 2808-2815 +124, 132, 125, 121, 139, 116, 135, 122, // 2816-2823 +128, 134, 116, 136, 122, 129, 129, 124, // 2824-2831 +129, 129, 124, 131, 124, 129, 130, 120, // 2832-2839 +134, 124, 126, 132, 123, 130, 131, 118, // 2840-2847 +134, 128, 121, 134, 124, 130, 128, 131, // 2848-2855 +119, 133, 129, 123, 130, 130, 121, 136, // 2856-2863 +125, 119, 140, 115, 130, 136, 115, 136, // 2864-2871 +125, 120, 144, 108, 138, 131, 112, 142, // 2872-2879 +118, 128, 136, 114, 139, 124, 118, 142, // 2880-2887 +112, 135, 130, 117, 136, 125, 125, 125, // 2888-2895 +133, 123, 125, 134, 120, 132, 131, 112, // 2896-2903 +149, 112, 125, 142, 110, 140, 124, 123, // 2904-2911 +130, 133, 119, 130, 133, 118, 134, 130, // 2912-2919 +118, 137, 125, 117, 142, 119, 122, 142, // 2920-2927 +111, 136, 129, 119, 137, 119, 129, 131, // 2928-2935 +119, 136, 121, 129, 133, 116, 139, 118, // 2936-2943 +128, 134, 116, 136, 125, 119, 136, 122, // 2944-2951 +125, 130, 128, 125, 126, 130, 122, 131, // 2952-2959 +125, 123, 132, 123, 128, 130, 124, 127, // 2960-2967 +130, 121, 130, 131, 121, 130, 129, 123, // 2968-2975 +133, 120, 130, 132, 119, 133, 124, 129, // 2976-2983 +129, 125, 130, 120, 137, 118, 130, 130, // 2984-2991 +121, 133, 122, 132, 122, 131, 124, 126, // 2992-2999 +130, 124, 129, 129, 123, 132, 128, 119, // 3000-3007 +139, 121, 125, 135, 118, 132, 131, 119, // 3008-3015 +131, 131, 121, 133, 128, 118, 143, 115, // 3016-3023 +123, 144, 110, 139, 129, 113, 143, 120, // 3024-3031 +119, 140, 120, 123, 136, 118, 131, 132, // 3032-3039 +114, 139, 123, 123, 133, 122, 131, 124, // 3040-3047 +130, 121, 131, 131, 117, 133, 131, 120, // 3048-3055 +124, 140, 112, 135, 134, 110, 143, 129, // 3056-3063 +108, 143, 129, 112, 141, 125, 116, 143, // 3064-3071 +119, 121, 142, 113, 130, 137, 113, 136, // 3072-3079 +130, 119, 131, 130, 120, 132, 129, 121, // 3080-3087 +133, 128, 118, 138, 121, 121, 142, 112, // 3088-3095 +135, 135, 111, 140, 127, 116, 141, 119, // 3096-3103 +121, 144, 112, 129, 136, 118, 130, 130, // 3104-3111 +121, 129, 132, 121, 130, 129, 121, 136, // 3112-3119 +118, 130, 133, 118, 137, 119, 134, 123, // 3120-3127 +130, 128, 123, 135, 121, 127, 131, 129, // 3128-3135 +119, 138, 121, 123, 140, 111, 136, 134, // 3136-3143 +112, 140, 125, 118, 139, 123, 119, 140, // 3144-3151 +122, 119, 140, 120, 121, 139, 119, 123, // 3152-3159 +142, 116, 129, 134, 119, 133, 128, 123, // 3160-3167 +129, 131, 122, 126, 134, 122, 125, 128, // 3168-3175 +135, 117, 130, 134, 122, 130, 122, 131, // 3176-3183 +130, 120, 131, 128, 130, 119, 131, 133, // 3184-3191 +114, 140, 119, 127, 135, 117, 132, 131, // 3192-3199 +116, 136, 123, 124, 134, 120, 132, 127, // 3200-3207 +124, 124, 135, 121, 121, 140, 117, 128, // 3208-3215 +133, 123, 125, 128, 133, 115, 136, 124, // 3216-3223 +118, 143, 112, 131, 136, 113, 136, 132, // 3224-3231 +112, 143, 123, 118, 140, 123, 119, 137, // 3232-3239 +123, 125, 131, 123, 135, 118, 130, 135, // 3240-3247 +114, 136, 125, 120, 137, 119, 130, 127, // 3248-3255 +129, 124, 128, 129, 124, 129, 125, 126, // 3256-3263 +126, 129, 125, 128, 125, 130, 128, 125, // 3264-3271 +127, 131, 123, 126, 135, 115, 142, 119, // 3272-3279 +121, 143, 110, 139, 123, 123, 138, 117, // 3280-3287 +129, 126, 133, 119, 125, 140, 114, 133, // 3288-3295 +133, 112, 140, 128, 112, 146, 119, 120, // 3296-3303 +143, 110, 134, 129, 120, 131, 125, 129, // 3304-3311 +126, 131, 121, 124, 136, 119, 124, 136, // 3312-3319 +120, 130, 127, 123, 135, 120, 129, 130, // 3320-3327 +122, 133, 123, 128, 131, 125, 125, 125, // 3328-3335 +131, 125, 125, 125, 135, 121, 122, 140, // 3336-3343 +112, 135, 127, 119, 137, 118, 136, 123, // 3344-3351 +121, 133, 124, 127, 126, 124, 134, 120, // 3352-3359 +127, 133, 118, 138, 120, 129, 131, 123, // 3360-3367 +131, 122, 131, 125, 124, 132, 123, 130, // 3368-3375 +127, 124, 134, 120, 132, 128, 124, 133, // 3376-3383 +120, 134, 120, 131, 134, 114, 143, 117, // 3384-3391 +127, 135, 115, 140, 115, 134, 131, 121, // 3392-3399 +130, 125, 131, 123, 127, 130, 122, 131, // 3400-3407 +128, 124, 133, 122, 135, 121, 131, 129, // 3408-3415 +120, 131, 125, 127, 126, 128, 123, 133, // 3416-3423 +123, 130, 125, 129, 130, 122, 131, 125, // 3424-3431 +133, 123, 129, 130, 119, 131, 125, 124, // 3432-3439 +130, 124, 130, 123, 130, 130, 124, 134, // 3440-3447 +121, 134, 122, 126, 131, 116, 139, 116, // 3448-3455 +133, 125, 123, 135, 118, 135, 121, 134, // 3456-3463 +129, 118, 135, 120, 131, 124, 124, 135, // 3464-3471 +120, 129, 124, 130, 129, 123, 131, 123, // 3472-3479 +130, 124, 124, 134, 123, 128, 125, 129, // 3480-3487 +129, 124, 129, 131, 125, 124, 129, 126, // 3488-3495 +128, 124, 129, 124, 131, 123, 130, 129, // 3496-3503 +120, 134, 124, 128, 130, 122, 134, 121, // 3504-3511 +130, 123, 130, 129, 116, 140, 116, 135, // 3512-3519 +123, 125, 134, 119, 134, 122, 132, 124, // 3520-3527 +125, 129, 125, 129, 125, 128, 131, 123, // 3528-3535 +127, 131, 128, 131, 128, 130, 125, 128, // 3536-3543 +123, 125, 123, 125, 125, 128, 125, 128, // 3544-3551 +126, 125, 130, 125, 129, 129, 129, 127, // 3552-3559 +126, 124, 128, 124, 124, 128, 124, 129, // 3560-3567 +125, 127, 129, 125, 129, 125, 128, 129, // 3568-3575 +124, 129, 125, 125, 127, 124, 127, 128, // 3576-3583 +125, 127, 128, 129, 128, 126, 130, 125, // 3584-3591 +129, 126, 128, 128, 124, 129, 125, 129, // 3592-3599 +126, 127, 129, 125, 130, 125, 127, 126, // 3600-3607 +126, 125, 125, 129, 125, 127, 126, 127, // 3608-3615 +128, 126, 128, 129, 126, 129, 127, 127, // 3616-3623 +128, 125, 126, 127, 127, 125, 126, 128, // 3624-3631 +128, 127, 128, 127, 129, 126, 129, 127, // 3632-3639 +128, 125, 126, 128, 125, 126, 125, 128, // 3640-3647 +126, 125, 128, 128, 127, 128, 127, 128, // 3648-3655 +128, 127, 128, 128, 126, 128, 127, 128, // 3656-3663 +127, 126, 129, 127, 128, 127, 128, 127, // 3664-3671 +126, 127, 128, 127, 128, 128, 126, 128, // 3672-3679 +126, 126, 127, 128, 127, 128, 127, 128, // 3680-3687 +127, 126, 127, 128, 128, 127, 129, 127, // 3688-3695 +128, 126, 126, 128, 126, 128, 127, 128, // 3696-3703 +128, 127, 128, 127, 128, 126, 127, 128, // 3704-3711 +127, 128, 128, 127, 128, 126, 128, 127, // 3712-3719 +128, 127, 128, 127, 128, 127, 128, 127, // 3720-3727 +127, 126, 126, 126, 126, 126, 126, 126, // 3728-3735 +128, 128, 127, 128, 127, 128, 127, 128, // 3736-3743 +126, 127, 127, 126, 125, 126, 126, 126, // 3744-3751 +128, 126, 127, 126, 127, 126, 127, 128, // 3752-3759 +128, 128, 128, 126, 126, 126, 126, 128, // 3760-3767 +127, 128, 127, 128, 128, 127, 128, 128, // 3768-3775 +127, 126, 126, 128, 127, 126, 127, 128, // 3776-3783 +127, 128, 127, 128, 128, 128, 128, 128, // 3784-3791 +128, 128, 126, 128, 128, 126, 126, 127, // 3792-3799 +128, 127, 128, 127, 128, 127, 128, 127, // 3800-3807 +128, 126, 128, 127, 128, 127, 128, 128, // 3808-3815 +128, 127, 128, 127, 128, 128, 127, 128, // 3816-3823 +127, 128, 128, 127, 128, 128, 128, 128, // 3824-3831 +127, 128, 127, 127, 128, 127, 128, 127, // 3832-3839 +126, 128, 126, 126, 126, 127, 126, 126, // 3840-3847 +126, 126, 126, 126, 126, 126, 126, 126, // 3848-3855 +126, 126, 128, 126, 126, 128, 128, 128, // 3856-3863 +127, 127, 128, 128, 128, 128, 128, 127, // 3864-3871 +128, 127, 128, 128, 128, 128, 127, 128, // 3872-3879 +126, 126, 128, 128, 127, 128, 127, 128, // 3880-3887 +127, 128, 128, 128, 128, 128, 128, 128, // 3888-3895 +127, 128, 128, 127, 128, 127, 128, 127, // 3896-3903 +128, 128, 128, 127, 128, 127, 128, 127, // 3904-3911 +128, 127, 128, 127, 127, 128, 127, 128, // 3912-3919 +127, 127, 128, 128, 128, 128, 127, 128, // 3920-3927 +127, 128, 127, 128, 127, 128, 127, 127, // 3928-3935 +128, 127, 128, 127, 128, 127, 128, 128}; + +const char I[2701] = {129, 131, 135, 129, 126, 125, 125, 129, // 0-7 +130, 131, 132, 128, 121, 115, 112, 117, // 8-15 +125, 131, 129, 117, 105, 102, 112, 138, // 16-23 +162, 170, 151, 124, 103, 101, 118, 136, // 24-31 +149, 147, 139, 130, 120, 115, 112, 115, // 32-39 +126, 138, 146, 143, 136, 124, 115, 117, // 40-47 +123, 134, 139, 136, 130, 121, 120, 121, // 48-55 +126, 129, 126, 120, 114, 112, 115, 118, // 56-63 +119, 114, 110, 110, 130, 172, 178, 156, // 64-71 +120, 77, 97, 116, 155, 166, 145, 132, // 72-79 +113, 115, 119, 117, 120, 125, 138, 148, // 80-87 +142, 130, 112, 110, 124, 141, 148, 142, // 88-95 +125, 118, 114, 121, 129, 133, 136, 129, // 96-103 +123, 112, 109, 112, 119, 125, 120, 111, // 104-111 +105, 103, 120, 160, 184, 166, 136, 89, // 112-119 + 87, 109, 138, 166, 152, 143, 123, 116, // 120-127 +118, 116, 119, 125, 134, 143, 142, 134, // 128-135 +121, 115, 122, 136, 146, 142, 127, 113, // 136-143 +112, 119, 131, 137, 135, 125, 114, 107, // 144-151 +108, 113, 118, 117, 111, 107, 113, 145, // 152-159 +184, 180, 146, 99, 69, 103, 131, 176, // 160-167 +170, 142, 120, 102, 114, 120, 124, 129, // 168-175 +131, 141, 143, 134, 125, 112, 123, 134, // 176-183 +143, 143, 126, 116, 113, 119, 130, 132, // 184-191 +131, 123, 114, 112, 111, 115, 115, 112, // 192-199 +108, 106, 118, 154, 184, 182, 144, 91, // 200-207 + 69, 98, 133, 180, 172, 145, 118, 101, // 208-215 +111, 118, 124, 130, 133, 141, 141, 135, // 216-223 +124, 117, 128, 134, 142, 137, 124, 118, // 224-231 +115, 123, 130, 131, 129, 119, 114, 112, // 232-239 +112, 117, 114, 110, 103, 104, 124, 172, // 240-247 +184, 178, 135, 71, 69, 101, 146, 184, // 248-255 +168, 143, 110, 103, 112, 120, 129, 131, // 256-263 +133, 138, 135, 132, 126, 123, 129, 133, // 264-271 +136, 132, 124, 116, 118, 123, 130, 130, // 272-279 +125, 116, 114, 115, 117, 118, 112, 106, // 280-287 +101, 105, 133, 184, 184, 174, 123, 69, // 288-295 + 73, 107, 159, 184, 164, 136, 107, 106, // 296-303 +115, 124, 132, 131, 131, 134, 130, 132, // 304-311 +130, 130, 131, 130, 130, 127, 122, 119, // 312-319 +120, 123, 128, 125, 122, 116, 116, 116, // 320-327 +118, 115, 108, 102, 99, 112, 156, 184, // 328-335 +184, 158, 91, 69, 81, 125, 180, 180, // 336-343 +155, 120, 101, 109, 118, 131, 134, 131, // 344-351 +132, 129, 130, 133, 129, 132, 127, 131, // 352-359 +130, 125, 121, 117, 120, 124, 126, 125, // 360-367 +119, 116, 116, 118, 119, 112, 105, 97, // 368-375 + 99, 123, 178, 184, 184, 138, 69, 69, // 376-383 + 93, 148, 184, 172, 143, 111, 104, 113, // 384-391 +124, 135, 133, 130, 130, 126, 133, 131, // 392-399 +131, 130, 129, 131, 127, 124, 119, 118, // 400-407 +121, 124, 125, 122, 117, 116, 118, 120, // 408-415 +116, 108, 99, 95, 108, 149, 184, 184, // 416-423 +168, 103, 69, 73, 116, 172, 184, 162, // 424-431 +128, 103, 108, 117, 132, 136, 131, 130, // 432-439 +125, 129, 132, 131, 133, 127, 130, 129, // 440-447 +125, 121, 118, 119, 122, 124, 123, 119, // 448-455 +117, 118, 119, 119, 112, 103, 95, 98, // 456-463 +125, 180, 184, 184, 135, 73, 69, 95, // 464-471 +148, 184, 172, 143, 111, 105, 114, 127, // 472-479 +136, 131, 129, 125, 126, 133, 133, 134, // 480-487 +128, 127, 127, 128, 125, 120, 119, 119, // 488-495 +123, 123, 121, 119, 118, 119, 119, 115, // 496-503 +108, 99, 95, 111, 155, 184, 184, 164, // 504-511 + 99, 69, 79, 120, 172, 176, 157, 124, // 512-519 +107, 112, 120, 134, 134, 129, 128, 124, // 520-527 +131, 133, 133, 131, 127, 129, 127, 128, // 528-535 +123, 119, 119, 121, 123, 123, 120, 119, // 536-543 +119, 119, 116, 111, 103, 98, 106, 140, // 544-551 +184, 184, 176, 116, 69, 73, 108, 160, // 552-559 +178, 162, 134, 108, 110, 118, 131, 135, // 560-567 +130, 129, 125, 129, 133, 131, 131, 127, // 568-575 +129, 129, 129, 124, 120, 119, 120, 121, // 576-583 +122, 121, 120, 119, 119, 117, 112, 106, // 584-591 +100, 104, 131, 176, 184, 180, 132, 79, // 592-599 + 71, 100, 147, 174, 164, 140, 112, 110, // 600-607 +116, 128, 134, 131, 129, 125, 127, 133, // 608-615 +132, 132, 127, 128, 129, 129, 126, 121, // 616-623 +119, 119, 121, 121, 121, 120, 119, 119, // 624-631 +118, 114, 108, 101, 101, 122, 166, 184, // 632-639 +184, 143, 89, 71, 93, 137, 170, 166, // 640-647 +144, 118, 110, 115, 124, 132, 131, 129, // 648-655 +128, 126, 131, 130, 131, 131, 129, 131, // 656-663 +128, 125, 121, 119, 121, 123, 124, 121, // 664-671 +118, 118, 119, 120, 118, 112, 103, 99, // 672-679 +112, 149, 184, 184, 158, 106, 75, 85, // 680-687 +121, 160, 168, 152, 125, 112, 114, 121, // 688-695 +129, 131, 130, 130, 129, 129, 129, 129, // 696-703 +130, 132, 131, 130, 125, 122, 121, 121, // 704-711 +124, 124, 123, 120, 118, 119, 121, 120, // 712-719 +115, 108, 102, 104, 124, 164, 184, 176, // 720-727 +140, 93, 79, 101, 137, 164, 160, 143, // 728-735 +119, 114, 118, 124, 130, 129, 130, 130, // 736-743 +128, 129, 127, 129, 131, 131, 132, 129, // 744-751 +124, 120, 120, 121, 124, 125, 123, 119, // 752-759 +119, 119, 120, 119, 114, 108, 103, 108, // 760-767 +134, 170, 184, 168, 125, 89, 85, 110, // 768-775 +146, 164, 156, 135, 118, 115, 120, 125, // 776-783 +130, 129, 129, 129, 126, 129, 129, 130, // 784-791 +132, 132, 131, 126, 123, 121, 121, 124, // 792-799 +125, 125, 121, 119, 119, 120, 121, 118, // 800-807 +112, 106, 104, 112, 141, 174, 182, 160, // 808-815 +119, 87, 91, 116, 149, 162, 149, 132, // 816-823 +116, 116, 121, 125, 129, 128, 130, 130, // 824-831 +129, 129, 128, 129, 131, 133, 132, 128, // 832-839 +123, 120, 120, 124, 126, 128, 123, 119, // 840-847 +118, 119, 120, 118, 113, 108, 105, 112, // 848-855 +138, 170, 180, 162, 122, 89, 91, 114, // 856-863 +147, 160, 151, 133, 118, 118, 121, 125, // 864-871 +129, 128, 129, 129, 127, 129, 128, 130, // 872-879 +131, 133, 131, 126, 122, 120, 121, 124, // 880-887 +128, 128, 123, 120, 119, 119, 119, 118, // 888-895 +114, 110, 107, 108, 126, 158, 178, 170, // 896-903 +137, 98, 89, 106, 138, 157, 154, 140, // 904-911 +122, 118, 119, 123, 126, 127, 129, 131, // 912-919 +129, 129, 126, 128, 131, 132, 133, 129, // 920-927 +123, 120, 120, 124, 128, 129, 125, 120, // 928-935 +118, 118, 120, 120, 118, 112, 108, 106, // 936-943 +114, 139, 170, 178, 155, 120, 91, 97, // 944-951 +120, 146, 157, 146, 133, 120, 119, 121, // 952-959 +123, 126, 128, 130, 131, 128, 127, 125, // 960-967 +130, 132, 133, 131, 125, 122, 120, 123, // 968-975 +126, 130, 129, 125, 120, 118, 119, 120, // 976-983 +119, 117, 112, 110, 108, 112, 133, 162, // 984-991 +174, 160, 128, 97, 97, 114, 143, 155, // 992-999 +148, 136, 122, 119, 119, 121, 125, 129, // 1000-1007 +131, 131, 128, 127, 126, 130, 131, 132, // 1008-1015 +132, 126, 123, 120, 123, 126, 129, 130, // 1016-1023 +125, 121, 118, 118, 119, 119, 118, 114, // 1024-1031 +111, 109, 111, 126, 155, 174, 166, 136, // 1032-1039 +103, 93, 109, 137, 154, 153, 140, 124, // 1040-1047 +118, 118, 120, 124, 130, 132, 134, 130, // 1048-1055 +125, 125, 126, 132, 133, 133, 129, 123, // 1056-1063 +121, 122, 126, 130, 131, 129, 123, 119, // 1064-1071 +117, 118, 120, 120, 119, 114, 111, 109, // 1072-1079 +112, 128, 156, 172, 162, 135, 103, 97, // 1080-1087 +111, 138, 153, 150, 139, 124, 118, 118, // 1088-1095 +120, 125, 131, 134, 134, 129, 124, 124, // 1096-1103 +128, 133, 134, 133, 129, 123, 121, 123, // 1104-1111 +127, 130, 131, 130, 124, 120, 116, 117, // 1112-1119 +120, 121, 120, 115, 111, 108, 108, 120, // 1120-1127 +145, 170, 168, 146, 113, 97, 106, 127, // 1128-1135 +148, 151, 143, 129, 119, 118, 119, 124, // 1136-1143 +130, 134, 133, 130, 123, 122, 125, 131, // 1144-1151 +136, 134, 130, 123, 120, 123, 125, 131, // 1152-1159 +132, 130, 125, 121, 118, 117, 119, 121, // 1160-1167 +121, 119, 113, 109, 107, 110, 124, 151, // 1168-1175 +170, 164, 140, 110, 99, 111, 132, 148, // 1176-1183 +146, 139, 125, 121, 120, 121, 124, 130, // 1184-1191 +134, 132, 129, 123, 123, 128, 134, 137, // 1192-1199 +134, 129, 123, 120, 124, 127, 131, 131, // 1200-1207 +130, 125, 121, 119, 118, 120, 122, 122, // 1208-1215 +119, 112, 108, 107, 109, 120, 143, 168, // 1216-1223 +168, 147, 118, 99, 107, 123, 143, 148, // 1224-1231 +142, 133, 122, 121, 121, 123, 128, 131, // 1232-1239 +133, 130, 125, 123, 127, 131, 136, 135, // 1240-1247 +131, 125, 120, 121, 126, 131, 133, 131, // 1248-1255 +127, 123, 119, 118, 119, 122, 123, 121, // 1256-1263 +115, 110, 108, 108, 112, 125, 149, 170, // 1264-1271 +164, 143, 111, 97, 107, 127, 149, 149, // 1272-1279 +142, 131, 121, 121, 119, 122, 126, 132, // 1280-1287 +136, 132, 129, 123, 124, 131, 134, 136, // 1288-1295 +131, 125, 121, 120, 126, 131, 134, 133, // 1296-1303 +128, 122, 118, 119, 120, 123, 124, 120, // 1304-1311 +115, 110, 107, 108, 111, 121, 143, 166, // 1312-1319 +170, 150, 118, 95, 101, 120, 146, 153, // 1320-1327 +146, 134, 122, 120, 119, 121, 124, 130, // 1328-1335 +136, 138, 131, 125, 121, 125, 132, 134, // 1336-1343 +135, 130, 125, 123, 124, 127, 132, 133, // 1344-1351 +131, 125, 121, 119, 121, 124, 123, 120, // 1352-1359 +116, 114, 111, 108, 109, 111, 119, 139, // 1360-1367 +164, 172, 152, 121, 95, 99, 120, 144, // 1368-1375 +155, 147, 135, 123, 120, 119, 119, 123, // 1376-1383 +129, 136, 139, 135, 125, 122, 122, 129, // 1384-1391 +133, 133, 131, 129, 126, 125, 125, 127, // 1392-1399 +131, 132, 130, 124, 121, 121, 122, 123, // 1400-1407 +120, 116, 114, 112, 111, 108, 110, 112, // 1408-1415 +121, 139, 160, 166, 149, 121, 100, 101, // 1416-1423 +123, 143, 155, 147, 136, 124, 119, 119, // 1424-1431 +119, 124, 131, 138, 139, 133, 125, 120, // 1432-1439 +123, 127, 131, 132, 130, 130, 128, 128, // 1440-1447 +125, 126, 131, 131, 132, 126, 123, 121, // 1448-1455 +121, 121, 119, 117, 114, 113, 113, 111, // 1456-1463 +112, 112, 116, 124, 140, 158, 162, 144, // 1464-1471 +119, 102, 109, 130, 147, 153, 143, 134, // 1472-1479 +123, 121, 120, 120, 125, 133, 139, 137, // 1480-1487 +130, 123, 121, 124, 129, 130, 130, 129, // 1488-1495 +130, 131, 129, 127, 128, 130, 131, 130, // 1496-1503 +126, 122, 121, 121, 121, 120, 116, 115, // 1504-1511 +114, 115, 114, 111, 112, 113, 118, 128, // 1512-1519 +140, 156, 160, 142, 122, 108, 114, 133, // 1520-1527 +144, 149, 142, 134, 126, 121, 120, 120, // 1528-1535 +127, 135, 138, 135, 126, 121, 122, 124, // 1536-1543 +128, 129, 130, 130, 131, 133, 130, 129, // 1544-1551 +125, 126, 130, 129, 127, 122, 120, 121, // 1552-1559 +121, 120, 117, 115, 115, 115, 116, 113, // 1560-1567 +112, 114, 117, 123, 130, 143, 157, 157, // 1568-1575 +141, 120, 111, 119, 136, 146, 148, 140, // 1576-1583 +133, 125, 121, 119, 120, 129, 135, 136, // 1584-1591 +131, 123, 120, 121, 125, 130, 130, 131, // 1592-1599 +130, 129, 129, 131, 130, 129, 129, 128, // 1600-1607 +128, 125, 123, 121, 121, 123, 121, 118, // 1608-1615 +115, 114, 115, 116, 117, 115, 114, 117, // 1616-1623 +120, 125, 131, 143, 158, 158, 141, 120, // 1624-1631 +112, 120, 139, 146, 146, 138, 132, 125, // 1632-1639 +119, 116, 119, 128, 135, 135, 129, 121, // 1640-1647 +120, 124, 128, 129, 130, 131, 131, 129, // 1648-1655 +125, 127, 131, 131, 132, 127, 123, 122, // 1656-1663 +121, 124, 125, 124, 123, 119, 118, 115, // 1664-1671 +115, 118, 119, 119, 117, 116, 119, 123, // 1672-1679 +125, 129, 142, 157, 162, 143, 120, 112, // 1680-1687 +118, 137, 142, 142, 137, 132, 128, 118, // 1688-1695 +113, 116, 125, 135, 135, 127, 122, 121, // 1696-1703 +124, 126, 127, 130, 133, 133, 129, 123, // 1704-1711 +122, 128, 134, 136, 130, 124, 119, 120, // 1712-1719 +123, 124, 128, 125, 124, 121, 116, 115, // 1720-1727 +117, 121, 123, 120, 119, 118, 119, 122, // 1728-1735 +123, 126, 135, 150, 162, 152, 130, 115, // 1736-1743 +114, 126, 135, 137, 139, 137, 133, 121, // 1744-1751 +112, 113, 122, 132, 134, 130, 126, 125, // 1752-1759 +125, 124, 125, 129, 133, 134, 130, 125, // 1760-1767 +123, 125, 129, 129, 130, 132, 131, 124, // 1768-1775 +121, 119, 124, 130, 130, 129, 123, 120, // 1776-1783 +118, 116, 119, 123, 125, 124, 119, 116, // 1784-1791 +115, 118, 123, 124, 131, 143, 154, 155, // 1792-1799 +135, 117, 116, 120, 131, 134, 137, 141, // 1800-1807 +135, 124, 114, 112, 120, 129, 132, 133, // 1808-1815 +132, 131, 127, 124, 123, 125, 130, 133, // 1816-1823 +131, 129, 125, 125, 125, 125, 129, 132, // 1824-1831 +131, 128, 124, 124, 125, 128, 130, 130, // 1832-1839 +126, 123, 119, 118, 120, 121, 124, 125, // 1840-1847 +124, 119, 114, 114, 116, 122, 126, 130, // 1848-1855 +139, 148, 153, 142, 123, 119, 119, 126, // 1856-1863 +132, 134, 141, 139, 130, 119, 114, 119, // 1864-1871 +125, 130, 133, 134, 134, 130, 124, 123, // 1872-1879 +124, 128, 131, 131, 130, 129, 125, 123, // 1880-1887 +123, 124, 128, 130, 132, 133, 128, 125, // 1888-1895 +125, 125, 126, 125, 126, 125, 122, 121, // 1896-1903 +120, 120, 121, 122, 124, 122, 117, 115, // 1904-1911 +117, 120, 125, 126, 129, 136, 146, 151, // 1912-1919 +142, 125, 121, 121, 124, 128, 133, 141, // 1920-1927 +140, 131, 121, 118, 119, 123, 125, 132, // 1928-1935 +136, 136, 131, 125, 123, 123, 123, 127, // 1936-1943 +130, 130, 129, 125, 124, 123, 124, 126, // 1944-1951 +129, 131, 133, 133, 128, 124, 124, 124, // 1952-1959 +126, 128, 125, 125, 123, 120, 120, 120, // 1960-1967 +123, 123, 121, 120, 116, 118, 120, 122, // 1968-1975 +124, 125, 131, 136, 144, 148, 138, 127, // 1976-1983 +124, 121, 123, 125, 133, 140, 138, 131, // 1984-1991 +124, 121, 120, 120, 124, 131, 135, 134, // 1992-1999 +131, 129, 124, 121, 121, 124, 127, 129, // 2000-2007 +129, 128, 127, 125, 124, 126, 129, 131, // 2008-2015 +131, 133, 134, 126, 124, 124, 124, 125, // 2016-2023 +124, 128, 127, 123, 121, 120, 120, 121, // 2024-2031 +120, 121, 120, 119, 119, 120, 123, 125, // 2032-2039 +125, 130, 136, 145, 147, 135, 130, 129, // 2040-2047 +121, 121, 124, 133, 138, 135, 133, 130, // 2048-2055 +124, 120, 119, 124, 130, 131, 133, 134, // 2056-2063 +132, 126, 122, 121, 122, 123, 125, 129, // 2064-2071 +131, 130, 127, 128, 126, 125, 126, 129, // 2072-2079 +132, 134, 131, 126, 125, 123, 121, 122, // 2080-2087 +124, 127, 125, 124, 123, 120, 119, 119, // 2088-2095 +119, 120, 120, 122, 122, 124, 123, 123, // 2096-2103 +126, 130, 136, 144, 143, 135, 134, 129, // 2104-2111 +122, 121, 124, 133, 134, 134, 136, 133, // 2112-2119 +128, 123, 121, 123, 124, 128, 132, 134, // 2120-2127 +131, 129, 125, 123, 121, 120, 123, 126, // 2128-2135 +129, 130, 131, 131, 129, 128, 126, 128, // 2136-2143 +130, 131, 129, 130, 129, 125, 123, 122, // 2144-2151 +124, 123, 124, 125, 124, 123, 121, 120, // 2152-2159 +120, 119, 119, 120, 123, 123, 124, 125, // 2160-2167 +128, 129, 135, 143, 142, 137, 135, 133, // 2168-2175 +125, 123, 125, 129, 130, 132, 134, 133, // 2176-2183 +130, 126, 124, 123, 122, 124, 127, 129, // 2184-2191 +130, 130, 128, 127, 124, 123, 122, 123, // 2192-2199 +124, 128, 130, 131, 131, 131, 130, 127, // 2200-2207 +128, 129, 131, 129, 128, 130, 125, 124, // 2208-2215 +123, 123, 123, 123, 125, 125, 123, 123, // 2216-2223 +121, 120, 119, 118, 120, 121, 122, 125, // 2224-2231 +125, 128, 131, 135, 142, 139, 137, 138, // 2232-2239 +133, 125, 126, 125, 125, 128, 130, 133, // 2240-2247 +131, 131, 130, 126, 124, 123, 122, 123, // 2248-2255 +124, 128, 129, 130, 129, 127, 125, 123, // 2256-2263 +123, 123, 124, 127, 130, 131, 133, 131, // 2264-2271 +130, 129, 127, 128, 129, 129, 128, 129, // 2272-2279 +127, 125, 123, 123, 123, 123, 124, 125, // 2280-2287 +124, 123, 122, 121, 119, 118, 119, 120, // 2288-2295 +122, 124, 126, 128, 130, 133, 138, 140, // 2296-2303 +138, 138, 138, 130, 127, 128, 123, 124, // 2304-2311 +127, 129, 130, 131, 132, 130, 127, 125, // 2312-2319 +123, 121, 122, 124, 125, 127, 129, 129, // 2320-2327 +128, 127, 125, 124, 125, 125, 126, 129, // 2328-2335 +130, 131, 131, 130, 130, 130, 130, 128, // 2336-2343 +127, 128, 124, 124, 124, 123, 124, 124, // 2344-2351 +125, 124, 124, 123, 121, 120, 120, 120, // 2352-2359 +119, 120, 121, 121, 124, 128, 125, 130, // 2360-2367 +136, 138, 140, 139, 139, 136, 130, 129, // 2368-2375 +125, 123, 124, 126, 126, 129, 131, 131, // 2376-2383 +130, 129, 126, 124, 123, 123, 124, 124, // 2384-2391 +125, 127, 128, 129, 129, 129, 128, 127, // 2392-2399 +128, 127, 129, 129, 129, 129, 129, 130, // 2400-2407 +130, 129, 130, 129, 126, 126, 124, 124, // 2408-2415 +124, 123, 124, 124, 125, 124, 124, 123, // 2416-2423 +122, 121, 122, 120, 120, 121, 121, 124, // 2424-2431 +124, 125, 129, 130, 134, 138, 138, 139, // 2432-2439 +139, 136, 132, 130, 128, 123, 124, 124, // 2440-2447 +125, 126, 129, 129, 129, 129, 129, 126, // 2448-2455 +125, 125, 124, 124, 124, 125, 125, 128, // 2456-2463 +129, 129, 130, 130, 130, 129, 129, 129, // 2464-2471 +127, 128, 127, 128, 128, 128, 129, 130, // 2472-2479 +126, 127, 129, 122, 124, 124, 121, 124, // 2480-2487 +124, 123, 124, 124, 123, 122, 123, 122, // 2488-2495 +121, 121, 123, 123, 123, 125, 125, 129, // 2496-2503 +132, 135, 138, 138, 139, 137, 135, 131, // 2504-2511 +129, 125, 123, 123, 123, 124, 125, 128, // 2512-2519 +127, 129, 129, 129, 127, 128, 125, 125, // 2520-2527 +124, 124, 124, 125, 126, 127, 129, 130, // 2528-2535 +130, 130, 130, 130, 129, 127, 128, 126, // 2536-2543 +128, 127, 128, 129, 128, 126, 128, 124, // 2544-2551 +124, 124, 124, 124, 124, 124, 123, 123, // 2552-2559 +124, 123, 123, 123, 123, 123, 123, 124, // 2560-2567 +124, 124, 125, 128, 130, 133, 135, 136, // 2568-2575 +138, 138, 136, 133, 131, 129, 124, 124, // 2576-2583 +123, 123, 123, 125, 125, 128, 129, 129, // 2584-2591 +129, 129, 129, 128, 126, 125, 124, 124, // 2592-2599 +125, 125, 128, 127, 129, 130, 130, 130, // 2600-2607 +130, 129, 129, 128, 127, 125, 125, 128, // 2608-2615 +125, 125, 128, 125, 125, 126, 124, 125, // 2616-2623 +125, 124, 124, 124, 124, 123, 123, 123, // 2624-2631 +122, 123, 123, 124, 123, 125, 125, 125, // 2632-2639 +129, 130, 131, 135, 136, 136, 136, 136, // 2640-2647 +133, 131, 130, 126, 125, 124, 123, 123, // 2648-2655 +124, 125, 125, 128, 129, 129, 129, 130, // 2656-2663 +129, 129, 127, 126, 125, 125, 125, 125, // 2664-2671 +126, 127, 129, 129, 130, 130, 130, 130, // 2672-2679 +129, 129, 128, 125, 126, 125, 124, 125, // 2680-2687 +124, 124, 125, 125, 125, 125, 125, 125, // 2688-2695 +124, 124, 124, 123, 123}; + +const char J[3352] = {125, 131, 121, 128, 129, 123, 129, 128, // 0-7 +125, 128, 128, 125, 128, 127, 128, 127, // 8-15 +128, 128, 128, 129, 130, 129, 123, 127, // 16-23 +129, 122, 129, 128, 124, 128, 126, 125, // 24-31 +127, 128, 126, 128, 128, 126, 128, 127, // 32-39 +126, 129, 127, 128, 127, 128, 128, 127, // 40-47 +126, 126, 129, 125, 128, 127, 126, 128, // 48-55 +126, 128, 126, 126, 128, 126, 128, 127, // 56-63 +127, 128, 125, 128, 127, 128, 128, 126, // 64-71 +128, 127, 125, 129, 127, 125, 129, 126, // 72-79 +125, 129, 125, 128, 129, 125, 127, 128, // 80-87 +125, 128, 129, 124, 129, 128, 127, 128, // 88-95 +127, 128, 128, 127, 129, 126, 128, 129, // 96-103 +126, 126, 129, 128, 125, 129, 127, 126, // 104-111 +127, 125, 129, 128, 126, 129, 129, 125, // 112-119 +127, 129, 125, 126, 128, 126, 128, 126, // 120-127 +128, 130, 126, 125, 130, 127, 125, 127, // 128-135 +129, 126, 126, 130, 125, 129, 126, 129, // 136-143 +126, 123, 133, 124, 128, 128, 127, 128, // 144-151 +125, 130, 124, 127, 133, 119, 132, 130, // 152-159 +116, 139, 120, 125, 133, 123, 126, 131, // 160-167 +123, 128, 133, 117, 134, 126, 122, 132, // 168-175 +125, 128, 127, 125, 129, 125, 127, 128, // 176-183 +126, 130, 123, 130, 130, 120, 130, 133, // 184-191 +116, 135, 126, 120, 139, 117, 131, 131, // 192-199 +121, 131, 128, 123, 135, 121, 128, 133, // 200-207 +119, 135, 121, 129, 128, 124, 131, 123, // 208-215 +131, 124, 124, 134, 120, 130, 131, 120, // 216-223 +130, 131, 120, 131, 131, 119, 132, 126, // 224-231 +125, 125, 129, 126, 128, 128, 129, 124, // 232-239 +128, 131, 121, 133, 123, 129, 125, 126, // 240-247 +132, 120, 131, 127, 129, 123, 129, 127, // 248-255 +130, 123, 127, 132, 120, 133, 122, 128, // 256-263 +127, 131, 120, 135, 119, 133, 130, 116, // 264-271 +144, 112, 132, 136, 113, 132, 135, 115, // 272-279 +130, 133, 119, 131, 134, 116, 132, 133, // 280-287 +112, 140, 124, 121, 133, 128, 124, 124, // 288-295 +132, 123, 128, 131, 129, 118, 140, 119, // 296-303 +123, 145, 106, 137, 136, 111, 144, 112, // 304-311 +138, 124, 117, 143, 112, 136, 125, 124, // 312-319 +130, 130, 121, 130, 130, 118, 138, 118, // 320-327 +132, 130, 117, 138, 127, 118, 135, 127, // 328-335 +123, 129, 129, 123, 134, 121, 125, 133, // 336-343 +120, 133, 119, 134, 127, 121, 134, 123, // 344-351 +128, 131, 118, 139, 120, 120, 143, 114, // 352-359 +135, 129, 120, 135, 120, 125, 135, 121, // 360-367 +125, 133, 125, 128, 122, 134, 123, 128, // 368-375 +127, 126, 130, 128, 123, 130, 132, 114, // 376-383 +139, 123, 124, 134, 116, 135, 126, 121, // 384-391 +131, 128, 130, 116, 140, 118, 130, 133, // 392-399 +115, 138, 123, 125, 127, 135, 116, 135, // 400-407 +125, 123, 134, 118, 134, 126, 120, 133, // 408-415 +129, 118, 138, 122, 125, 135, 119, 133, // 416-423 +126, 123, 128, 131, 119, 134, 128, 123, // 424-431 +144, 129, 121, 130, 124, 120, 129, 122, // 432-439 +125, 133, 112, 138, 119, 124, 135, 118, // 440-447 +135, 121, 135, 121, 129, 139, 111, 142, // 448-455 +125, 115, 147, 107, 139, 131, 113, 142, // 456-463 +116, 136, 124, 124, 134, 119, 138, 117, // 464-471 +131, 134, 115, 140, 119, 125, 136, 117, // 472-479 +132, 130, 129, 122, 130, 131, 119, 130, // 480-487 +127, 125, 128, 123, 130, 124, 125, 133, // 488-495 +112, 146, 114, 125, 143, 109, 143, 121, // 496-503 +129, 130, 126, 132, 118, 142, 121, 122, // 504-511 +139, 116, 132, 130, 119, 134, 125, 125, // 512-519 +125, 131, 123, 125, 130, 118, 134, 118, // 520-527 +128, 124, 121, 129, 119, 124, 124, 125, // 528-535 +122, 125, 130, 126, 130, 131, 130, 138, // 536-543 +129, 134, 139, 134, 133, 133, 133, 131, // 544-551 +131, 127, 129, 133, 116, 125, 129, 115, // 552-559 +129, 123, 122, 130, 118, 115, 120, 115, // 560-567 +112, 119, 113, 116, 118, 117, 127, 123, // 568-575 +133, 134, 141, 140, 142, 148, 142, 146, // 576-583 +143, 141, 140, 132, 133, 126, 124, 121, // 584-591 +119, 121, 116, 120, 121, 121, 123, 119, // 592-599 +129, 121, 119, 121, 118, 115, 110, 116, // 600-607 +104, 112, 113, 121, 124, 119, 144, 138, // 608-615 +142, 150, 149, 157, 148, 149, 149, 142, // 616-623 +135, 127, 128, 115, 112, 114, 112, 114, // 624-631 +116, 123, 128, 129, 132, 134, 130, 128, // 632-639 +129, 119, 115, 112, 105, 102, 97, 97, // 640-647 +104, 114, 118, 122, 146, 149, 148, 166, // 648-655 +166, 168, 164, 157, 157, 143, 130, 122, // 656-663 +115, 103, 101, 101, 100, 108, 112, 123, // 664-671 +132, 135, 143, 143, 139, 140, 134, 120, // 672-679 +116, 106, 93, 89, 79, 85, 97, 108, // 680-687 +114, 134, 162, 162, 172, 184, 184, 180, // 688-695 +170, 164, 150, 130, 112, 107, 91, 81, // 696-703 + 83, 93, 100, 107, 129, 142, 143, 153, // 704-711 +153, 150, 146, 133, 123, 112, 93, 85, // 712-719 + 75, 69, 73, 91, 112, 119, 143, 180, // 720-727 +180, 184, 184, 184, 182, 162, 148, 134, // 728-735 +106, 93, 85, 79, 75, 81, 105, 118, // 736-743 +131, 151, 166, 166, 162, 158, 146, 133, // 744-751 +115, 103, 93, 75, 69, 69, 69, 73, // 752-759 + 97, 130, 151, 160, 184, 184, 184, 184, // 760-767 +182, 166, 133, 116, 107, 89, 77, 79, // 768-775 + 89, 95, 105, 125, 151, 155, 164, 176, // 776-783 +170, 152, 143, 131, 112, 99, 95, 87, // 784-791 + 81, 83, 83, 89, 91, 100, 117, 140, // 792-799 +162, 166, 172, 184, 178, 160, 153, 143, // 800-807 +122, 107, 110, 105, 99, 103, 112, 120, // 808-815 +126, 134, 150, 153, 145, 149, 148, 132, // 816-823 +123, 120, 113, 105, 106, 106, 98, 95, // 824-831 + 93, 93, 95, 95, 112, 146, 157, 149, // 832-839 +184, 184, 166, 160, 155, 145, 117, 110, // 840-847 +112, 105, 97, 106, 114, 118, 124, 140, // 848-855 +151, 146, 147, 148, 142, 131, 124, 122, // 856-863 +114, 108, 111, 105, 95, 93, 91, 91, // 864-871 + 87, 98, 121, 152, 158, 157, 184, 184, // 872-879 +162, 155, 148, 136, 106, 108, 112, 102, // 880-887 +102, 115, 123, 124, 131, 143, 154, 147, // 888-895 +142, 145, 139, 122, 121, 120, 114, 106, // 896-903 +112, 112, 97, 95, 95, 91, 89, 91, // 904-911 +114, 150, 160, 153, 184, 184, 162, 148, // 912-919 +149, 136, 102, 105, 114, 105, 104, 119, // 920-927 +128, 129, 131, 140, 148, 143, 142, 142, // 928-935 +136, 129, 121, 123, 119, 113, 113, 114, // 936-943 +109, 98, 98, 95, 87, 85, 100, 130, // 944-951 +158, 160, 170, 184, 180, 152, 145, 141, // 952-959 +112, 93, 108, 110, 104, 114, 130, 135, // 960-967 +135, 136, 143, 143, 134, 138, 140, 127, // 968-975 +128, 133, 125, 120, 120, 116, 109, 106, // 976-983 +101, 97, 87, 87, 91, 99, 130, 168, // 984-991 +170, 170, 184, 184, 146, 138, 133, 103, // 992-999 + 89, 105, 108, 110, 121, 135, 142, 140, // 1000-1007 +136, 143, 139, 125, 131, 136, 129, 129, // 1008-1015 +136, 134, 125, 123, 117, 107, 102, 99, // 1016-1023 + 95, 93, 87, 93, 101, 118, 160, 182, // 1024-1031 +166, 184, 184, 150, 131, 124, 109, 87, // 1032-1039 + 97, 110, 115, 125, 138, 146, 146, 136, // 1040-1047 +136, 136, 119, 121, 130, 129, 133, 139, // 1048-1055 +140, 136, 128, 119, 109, 98, 95, 95, // 1056-1063 + 95, 93, 95, 102, 111, 134, 172, 182, // 1064-1071 +166, 184, 180, 134, 118, 115, 99, 89, // 1072-1079 +106, 119, 129, 138, 144, 149, 142, 129, // 1080-1087 +130, 123, 114, 123, 130, 133, 141, 143, // 1088-1095 +140, 134, 123, 114, 102, 93, 97, 99, // 1096-1103 + 98, 99, 104, 108, 112, 136, 172, 182, // 1104-1111 +160, 180, 172, 127, 116, 112, 102, 97, // 1112-1119 +110, 127, 136, 139, 144, 147, 135, 122, // 1120-1127 +124, 119, 115, 126, 135, 138, 143, 144, // 1128-1135 +140, 131, 118, 112, 103, 95, 99, 105, // 1136-1143 +105, 106, 106, 107, 113, 123, 148, 180, // 1144-1151 +168, 160, 180, 144, 115, 114, 107, 102, // 1152-1159 +106, 121, 135, 139, 140, 146, 139, 123, // 1160-1167 +122, 123, 117, 123, 134, 139, 141, 143, // 1168-1175 +142, 133, 122, 115, 111, 102, 99, 106, // 1176-1183 +108, 106, 110, 108, 112, 114, 126, 157, // 1184-1191 +176, 158, 162, 172, 134, 114, 112, 107, // 1192-1199 +105, 111, 128, 138, 138, 141, 144, 133, // 1200-1207 +121, 124, 121, 119, 127, 136, 138, 139, // 1208-1215 +142, 139, 128, 120, 117, 109, 105, 104, // 1216-1223 +108, 110, 109, 113, 112, 111, 115, 125, // 1224-1231 +150, 172, 160, 156, 170, 137, 114, 115, // 1232-1239 +110, 107, 111, 127, 137, 136, 139, 144, // 1240-1247 +134, 122, 125, 122, 119, 125, 134, 137, // 1248-1255 +138, 140, 139, 127, 120, 118, 112, 107, // 1256-1263 +107, 108, 112, 112, 112, 114, 111, 112, // 1264-1271 +119, 137, 164, 166, 152, 170, 153, 120, // 1272-1279 +116, 112, 108, 107, 118, 134, 136, 138, // 1280-1287 +144, 141, 127, 126, 124, 119, 121, 130, // 1288-1295 +134, 135, 138, 139, 131, 123, 120, 114, // 1296-1303 +111, 108, 109, 112, 112, 112, 114, 112, // 1304-1311 +111, 114, 126, 152, 168, 155, 160, 166, // 1312-1319 +129, 116, 113, 107, 106, 112, 130, 137, // 1320-1327 +138, 145, 146, 133, 125, 125, 119, 118, // 1328-1335 +124, 131, 134, 136, 140, 136, 126, 123, // 1336-1343 +118, 112, 111, 111, 112, 112, 114, 115, // 1344-1351 +116, 113, 112, 116, 124, 147, 166, 152, // 1352-1359 +155, 164, 130, 116, 116, 109, 109, 112, // 1360-1367 +130, 137, 138, 144, 146, 134, 129, 125, // 1368-1375 +119, 119, 122, 129, 132, 135, 138, 136, // 1376-1383 +128, 124, 120, 114, 112, 112, 112, 114, // 1384-1391 +115, 116, 118, 115, 113, 114, 119, 142, // 1392-1399 +160, 152, 150, 162, 137, 118, 117, 111, // 1400-1407 +111, 112, 129, 137, 138, 143, 147, 136, // 1408-1415 +127, 128, 118, 116, 121, 126, 131, 133, // 1416-1423 +138, 136, 129, 124, 122, 116, 113, 114, // 1424-1431 +114, 114, 116, 118, 116, 115, 114, 112, // 1432-1439 +114, 129, 151, 157, 148, 160, 152, 125, // 1440-1447 +119, 116, 112, 109, 121, 134, 137, 141, // 1448-1455 +146, 142, 131, 128, 121, 116, 117, 123, // 1456-1463 +128, 131, 136, 138, 133, 128, 125, 120, // 1464-1471 +115, 115, 115, 115, 115, 118, 117, 116, // 1472-1479 +116, 113, 112, 115, 134, 152, 152, 148, // 1480-1487 +158, 146, 123, 121, 116, 112, 112, 124, // 1488-1495 +135, 136, 142, 146, 137, 130, 125, 118, // 1496-1503 +116, 118, 124, 129, 133, 138, 136, 133, // 1504-1511 +129, 124, 120, 116, 116, 116, 115, 116, // 1512-1519 +119, 117, 117, 117, 112, 112, 113, 130, // 1520-1527 +151, 151, 149, 158, 148, 128, 121, 118, // 1528-1535 +113, 111, 124, 134, 135, 142, 146, 138, // 1536-1543 +130, 128, 119, 115, 118, 124, 127, 131, // 1544-1551 +137, 138, 133, 129, 125, 121, 116, 116, // 1552-1559 +118, 116, 115, 119, 119, 116, 118, 115, // 1560-1567 +112, 112, 123, 143, 150, 147, 154, 154, // 1568-1575 +131, 125, 122, 112, 114, 119, 131, 134, // 1576-1583 +138, 144, 140, 131, 130, 120, 116, 118, // 1584-1591 +121, 127, 129, 136, 138, 134, 131, 128, // 1592-1599 +122, 118, 116, 118, 117, 116, 119, 120, // 1600-1607 +117, 118, 118, 113, 112, 114, 128, 144, // 1608-1615 +149, 147, 155, 151, 130, 125, 120, 113, // 1616-1623 +114, 121, 131, 134, 139, 144, 138, 131, // 1624-1631 +129, 119, 116, 118, 122, 128, 131, 136, // 1632-1639 +137, 134, 130, 126, 121, 118, 118, 119, // 1640-1647 +119, 119, 120, 121, 119, 118, 118, 113, // 1648-1655 +111, 112, 123, 142, 148, 148, 155, 152, // 1656-1663 +135, 128, 121, 114, 112, 120, 129, 133, // 1664-1671 +139, 143, 139, 133, 129, 120, 116, 117, // 1672-1679 +121, 125, 130, 136, 137, 134, 131, 128, // 1680-1687 +121, 119, 118, 120, 120, 120, 120, 121, // 1688-1695 +120, 117, 118, 114, 112, 111, 114, 133, // 1696-1703 +145, 148, 151, 156, 144, 130, 125, 118, // 1704-1711 +112, 115, 124, 130, 135, 142, 143, 135, // 1712-1719 +131, 125, 118, 116, 119, 123, 126, 133, // 1720-1727 +137, 136, 132, 130, 124, 120, 119, 119, // 1728-1735 +121, 121, 122, 121, 121, 119, 116, 117, // 1736-1743 +112, 112, 112, 116, 135, 145, 148, 151, // 1744-1751 +155, 144, 129, 124, 118, 112, 116, 124, // 1752-1759 +131, 135, 142, 142, 135, 131, 124, 119, // 1760-1767 +116, 119, 124, 127, 133, 136, 136, 132, // 1768-1775 +129, 125, 120, 119, 120, 122, 123, 123, // 1776-1783 +123, 121, 118, 116, 116, 114, 112, 112, // 1784-1791 +114, 127, 143, 148, 148, 156, 148, 131, // 1792-1799 +129, 119, 114, 115, 122, 130, 133, 139, // 1800-1807 +143, 135, 132, 129, 119, 118, 119, 123, // 1808-1815 +125, 131, 136, 135, 133, 130, 126, 122, // 1816-1823 +120, 121, 123, 124, 124, 123, 122, 121, // 1824-1831 +117, 116, 116, 112, 112, 112, 116, 132, // 1832-1839 +144, 146, 149, 156, 143, 132, 127, 118, // 1840-1847 +115, 115, 124, 129, 131, 140, 141, 134, // 1848-1855 +134, 128, 120, 119, 120, 124, 125, 131, // 1856-1863 +135, 134, 133, 130, 126, 123, 121, 122, // 1864-1871 +123, 124, 124, 122, 121, 120, 117, 116, // 1872-1879 +116, 114, 112, 112, 115, 127, 142, 144, // 1880-1887 +148, 153, 146, 136, 129, 121, 117, 115, // 1888-1895 +120, 126, 129, 136, 140, 136, 135, 131, // 1896-1903 +124, 120, 119, 123, 123, 128, 133, 134, // 1904-1911 +132, 130, 129, 125, 122, 123, 124, 123, // 1912-1919 +125, 123, 120, 120, 118, 116, 116, 116, // 1920-1927 +114, 112, 113, 120, 133, 143, 146, 149, // 1928-1935 +152, 143, 133, 128, 120, 115, 116, 122, // 1936-1943 +125, 130, 139, 140, 135, 135, 130, 123, // 1944-1951 +120, 120, 122, 123, 130, 133, 133, 133, // 1952-1959 +131, 128, 125, 123, 123, 123, 124, 125, // 1960-1967 +123, 121, 120, 119, 116, 118, 116, 113, // 1968-1975 +114, 112, 115, 125, 139, 144, 148, 152, // 1976-1983 +148, 139, 129, 123, 116, 113, 118, 124, // 1984-1991 +128, 135, 142, 140, 137, 134, 126, 121, // 1992-1999 +119, 120, 122, 125, 132, 134, 134, 133, // 2000-2007 +131, 128, 124, 123, 123, 124, 125, 125, // 2008-2015 +124, 121, 120, 119, 116, 117, 115, 112, // 2016-2023 +114, 112, 114, 125, 138, 145, 149, 152, // 2024-2031 +150, 139, 129, 124, 116, 112, 118, 123, // 2032-2039 +129, 135, 143, 143, 136, 134, 131, 118, // 2040-2047 +120, 121, 121, 127, 131, 135, 134, 134, // 2048-2055 +133, 128, 124, 124, 122, 124, 125, 125, // 2056-2063 +125, 123, 121, 120, 118, 116, 116, 113, // 2064-2071 +112, 112, 112, 118, 127, 142, 146, 149, // 2072-2079 +153, 146, 136, 129, 121, 115, 114, 120, // 2080-2087 +125, 131, 138, 142, 141, 136, 134, 128, // 2088-2095 +120, 121, 121, 121, 127, 131, 133, 133, // 2096-2103 +133, 131, 127, 125, 125, 123, 124, 125, // 2104-2111 +125, 125, 124, 121, 119, 118, 115, 115, // 2112-2119 +114, 112, 112, 112, 115, 120, 131, 143, // 2120-2127 +147, 151, 149, 143, 135, 125, 120, 116, // 2128-2135 +117, 122, 129, 133, 138, 140, 141, 134, // 2136-2143 +132, 129, 120, 121, 122, 123, 127, 130, // 2144-2151 +133, 131, 131, 131, 127, 125, 125, 124, // 2152-2159 +125, 126, 128, 125, 123, 121, 118, 116, // 2160-2167 +114, 114, 114, 112, 113, 113, 115, 119, // 2168-2175 +125, 138, 144, 147, 148, 145, 140, 130, // 2176-2183 +127, 121, 118, 123, 125, 131, 134, 138, // 2184-2191 +139, 138, 134, 129, 129, 121, 122, 124, // 2192-2199 +123, 127, 129, 131, 131, 130, 130, 128, // 2200-2207 +126, 126, 125, 125, 126, 126, 124, 123, // 2208-2215 +121, 117, 115, 115, 114, 115, 115, 114, // 2216-2223 +115, 116, 118, 122, 127, 136, 143, 145, // 2224-2231 +144, 146, 142, 133, 131, 126, 123, 123, // 2232-2239 +127, 129, 131, 135, 136, 135, 135, 130, // 2240-2247 +127, 126, 121, 124, 122, 124, 126, 127, // 2248-2255 +130, 130, 131, 130, 129, 127, 126, 125, // 2256-2263 +124, 123, 123, 121, 120, 118, 116, 116, // 2264-2271 +116, 115, 116, 117, 117, 117, 119, 119, // 2272-2279 +120, 126, 131, 140, 144, 146, 147, 146, // 2280-2287 +139, 135, 132, 124, 124, 124, 126, 128, // 2288-2295 +131, 134, 133, 133, 133, 130, 124, 125, // 2296-2303 +124, 119, 125, 124, 125, 130, 130, 132, // 2304-2311 +130, 131, 129, 125, 125, 124, 121, 123, // 2312-2319 +122, 121, 121, 121, 120, 118, 118, 118, // 2320-2327 +117, 118, 118, 118, 121, 120, 121, 125, // 2328-2335 +126, 133, 139, 144, 146, 146, 148, 142, // 2336-2343 +136, 135, 127, 124, 123, 123, 124, 125, // 2344-2351 +129, 129, 130, 131, 129, 128, 126, 125, // 2352-2359 +125, 123, 126, 126, 126, 129, 129, 130, // 2360-2367 +129, 127, 128, 125, 124, 123, 122, 123, // 2368-2375 +122, 122, 122, 122, 122, 121, 120, 120, // 2376-2383 +120, 120, 120, 121, 121, 123, 123, 124, // 2384-2391 +125, 128, 132, 138, 143, 144, 144, 145, // 2392-2399 +142, 134, 133, 125, 121, 121, 120, 120, // 2400-2407 +122, 125, 128, 129, 130, 130, 128, 129, // 2408-2415 +128, 126, 125, 127, 125, 125, 129, 126, // 2416-2423 +128, 129, 128, 127, 126, 125, 124, 123, // 2424-2431 +124, 123, 124, 125, 125, 125, 125, 125, // 2432-2439 +123, 123, 123, 121, 122, 123, 121, 122, // 2440-2447 +123, 123, 122, 125, 125, 126, 133, 135, // 2448-2455 +141, 142, 140, 143, 135, 133, 131, 123, // 2456-2463 +123, 121, 120, 121, 122, 125, 125, 129, // 2464-2471 +131, 130, 131, 131, 130, 129, 129, 127, // 2472-2479 +125, 126, 125, 125, 126, 125, 127, 128, // 2480-2487 +128, 128, 127, 128, 127, 128, 127, 128, // 2488-2495 +127, 126, 125, 124, 123, 123, 121, 121, // 2496-2503 +121, 121, 122, 121, 121, 122, 120, 121, // 2504-2511 +121, 122, 123, 125, 131, 134, 140, 140, // 2512-2519 +140, 143, 136, 134, 133, 124, 124, 121, // 2520-2527 +121, 121, 123, 125, 126, 130, 132, 131, // 2528-2535 +133, 132, 131, 130, 127, 126, 125, 124, // 2536-2543 +124, 123, 124, 125, 126, 129, 129, 130, // 2544-2551 +130, 130, 130, 129, 129, 127, 125, 124, // 2552-2559 +123, 123, 122, 123, 123, 122, 123, 124, // 2560-2567 +123, 124, 123, 121, 121, 121, 121, 121, // 2568-2575 +122, 123, 124, 128, 130, 134, 139, 140, // 2576-2583 +140, 143, 138, 136, 136, 128, 127, 124, // 2584-2591 +122, 121, 123, 124, 124, 127, 130, 129, // 2592-2599 +131, 131, 130, 130, 128, 125, 124, 123, // 2600-2607 +123, 122, 123, 124, 125, 128, 130, 130, // 2608-2615 +133, 132, 132, 131, 130, 129, 126, 124, // 2616-2623 +123, 123, 122, 123, 123, 123, 124, 124, // 2624-2631 +125, 125, 125, 124, 123, 123, 121, 121, // 2632-2639 +121, 120, 121, 123, 123, 125, 129, 132, // 2640-2647 +137, 139, 139, 143, 140, 136, 136, 131, // 2648-2655 +128, 126, 123, 121, 121, 122, 122, 124, // 2656-2663 +126, 127, 129, 131, 130, 130, 129, 128, // 2664-2671 +126, 125, 124, 123, 124, 125, 125, 128, // 2672-2679 +130, 130, 131, 134, 131, 132, 131, 128, // 2680-2687 +127, 125, 123, 123, 121, 121, 121, 122, // 2688-2695 +123, 123, 125, 124, 125, 125, 124, 124, // 2696-2703 +123, 121, 121, 121, 120, 121, 122, 122, // 2704-2711 +124, 128, 129, 133, 137, 138, 140, 142, // 2712-2719 +138, 138, 137, 131, 130, 127, 124, 123, // 2720-2727 +122, 121, 122, 123, 124, 125, 127, 129, // 2728-2735 +129, 130, 129, 129, 129, 126, 126, 125, // 2736-2743 +125, 125, 125, 126, 129, 129, 130, 131, // 2744-2751 +130, 131, 130, 129, 129, 125, 124, 124, // 2752-2759 +123, 122, 121, 122, 122, 123, 124, 124, // 2760-2767 +125, 124, 125, 125, 124, 124, 124, 124, // 2768-2775 +123, 123, 124, 124, 125, 126, 127, 129, // 2776-2783 +133, 135, 136, 137, 140, 136, 136, 136, // 2784-2791 +131, 131, 129, 125, 124, 123, 121, 121, // 2792-2799 +121, 122, 123, 125, 125, 128, 129, 130, // 2800-2807 +130, 130, 129, 129, 129, 128, 126, 126, // 2808-2815 +127, 128, 128, 129, 129, 129, 130, 130, // 2816-2823 +129, 129, 128, 125, 125, 124, 123, 122, // 2824-2831 +122, 121, 123, 123, 123, 124, 125, 125, // 2832-2839 +125, 125, 125, 125, 125, 124, 124, 125, // 2840-2847 +124, 124, 125, 124, 128, 129, 131, 134, // 2848-2855 +134, 137, 137, 135, 138, 134, 133, 132, // 2856-2863 +127, 126, 124, 122, 122, 121, 121, 122, // 2864-2871 +123, 125, 125, 129, 130, 130, 131, 131, // 2872-2879 +131, 131, 130, 129, 128, 127, 128, 126, // 2880-2887 +128, 127, 126, 129, 126, 127, 128, 126, // 2888-2895 +126, 125, 124, 124, 123, 122, 122, 122, // 2896-2903 +122, 123, 124, 124, 125, 125, 125, 126, // 2904-2911 +126, 126, 126, 125, 125, 125, 125, 125, // 2912-2919 +126, 126, 128, 129, 132, 132, 133, 136, // 2920-2927 +134, 136, 135, 132, 134, 130, 129, 128, // 2928-2935 +124, 124, 123, 122, 122, 123, 124, 124, // 2936-2943 +126, 127, 129, 130, 130, 131, 131, 130, // 2944-2951 +130, 129, 128, 128, 127, 128, 125, 126, // 2952-2959 +127, 124, 128, 125, 125, 126, 125, 125, // 2960-2967 +124, 124, 123, 123, 123, 123, 124, 124, // 2968-2975 +124, 125, 125, 125, 127, 125, 127, 127, // 2976-2983 +125, 126, 126, 125, 127, 125, 126, 127, // 2984-2991 +128, 130, 131, 131, 134, 134, 133, 135, // 2992-2999 +133, 133, 133, 130, 130, 128, 125, 124, // 3000-3007 +123, 123, 122, 123, 123, 124, 125, 126, // 3008-3015 +127, 129, 129, 130, 130, 131, 130, 129, // 3016-3023 +131, 128, 128, 127, 123, 127, 124, 123, // 3024-3031 +125, 123, 124, 125, 123, 124, 124, 124, // 3032-3039 +124, 125, 124, 124, 125, 124, 125, 125, // 3040-3047 +124, 125, 125, 125, 125, 125, 125, 125, // 3048-3055 +126, 126, 126, 128, 126, 129, 129, 129, // 3056-3063 +132, 130, 133, 134, 131, 134, 132, 132, // 3064-3071 +133, 130, 130, 127, 126, 125, 124, 124, // 3072-3079 +123, 124, 124, 124, 126, 126, 128, 129, // 3080-3087 +129, 130, 130, 129, 129, 127, 128, 126, // 3088-3095 +125, 125, 124, 124, 124, 124, 124, 124, // 3096-3103 +125, 125, 125, 126, 126, 126, 126, 125, // 3104-3111 +125, 125, 125, 125, 125, 125, 125, 125, // 3112-3119 +125, 125, 126, 128, 127, 128, 127, 129, // 3120-3127 +129, 129, 130, 130, 131, 131, 132, 132, // 3128-3135 +133, 133, 133, 132, 132, 130, 130, 129, // 3136-3143 +128, 128, 125, 125, 124, 124, 124, 125, // 3144-3151 +125, 125, 126, 126, 128, 128, 128, 127, // 3152-3159 +128, 126, 126, 125, 125, 125, 125, 125, // 3160-3167 +125, 125, 125, 125, 125, 125, 125, 125, // 3168-3175 +125, 125, 125, 125, 125, 125, 125, 125, // 3176-3183 +125, 126, 126, 126, 126, 128, 127, 128, // 3184-3191 +129, 129, 130, 130, 131, 132, 132, 133, // 3192-3199 +133, 133, 133, 132, 132, 131, 130, 128, // 3200-3207 +128, 126, 125, 124, 124, 123, 123, 123, // 3208-3215 +124, 124, 125, 125, 126, 126, 128, 128, // 3216-3223 +127, 126, 125, 125, 125, 124, 124, 124, // 3224-3231 +124, 125, 124, 125, 125, 125, 126, 126, // 3232-3239 +126, 127, 126, 126, 126, 125, 126, 126, // 3240-3247 +125, 128, 125, 126, 127, 126, 129, 129, // 3248-3255 +129, 131, 130, 132, 131, 131, 133, 132, // 3256-3263 +132, 132, 131, 131, 130, 129, 127, 126, // 3264-3271 +125, 124, 124, 124, 124, 124, 124, 124, // 3272-3279 +124, 125, 125, 125, 126, 126, 126, 126, // 3280-3287 +125, 125, 125, 124, 124, 124, 124, 125, // 3288-3295 +125, 125, 126, 126, 127, 128, 127, 128, // 3296-3303 +128, 127, 126, 126, 126, 125, 125, 126, // 3304-3311 +125, 126, 128, 125, 128, 129, 128, 130, // 3312-3319 +129, 129, 131, 130, 130, 131, 130, 130, // 3320-3327 +131, 130, 130, 130, 129, 130, 129, 128, // 3328-3335 +127, 127, 125, 126, 125, 125, 125, 124, // 3336-3343 +125, 125, 125, 125, 125, 125, 125, 125}; + +const char K[3532] = {128, 127, 128, 127, 128, 127, 128, 127, // 0-7 +128, 127, 128, 127, 128, 128, 128, 128, // 8-15 +127, 128, 130, 136, 129, 120, 134, 118, // 16-23 +121, 134, 125, 134, 119, 124, 118, 116, // 24-31 +130, 144, 122, 116, 151, 103, 139, 133, // 32-39 +110, 146, 108, 135, 130, 129, 146, 117, // 40-47 +136, 121, 114, 134, 114, 133, 125, 121, // 48-55 +143, 115, 128, 125, 115, 139, 116, 126, // 56-63 +133, 140, 124, 124, 140, 111, 144, 111, // 64-71 +125, 139, 106, 142, 131, 124, 136, 118, // 72-79 +130, 125, 123, 133, 115, 139, 120, 123, // 80-87 +134, 116, 134, 120, 124, 125, 116, 129, // 88-95 +129, 123, 143, 127, 130, 136, 122, 136, // 96-103 +115, 129, 117, 126, 133, 119, 146, 125, // 104-111 +131, 134, 130, 133, 128, 116, 129, 134, // 112-119 +120, 130, 124, 123, 129, 121, 129, 129, // 120-127 +121, 132, 122, 130, 129, 124, 130, 124, // 128-135 +128, 125, 123, 126, 125, 125, 125, 125, // 136-143 +128, 127, 126, 127, 129, 125, 128, 126, // 144-151 +128, 129, 123, 129, 125, 125, 130, 124, // 152-159 +128, 126, 125, 132, 123, 126, 131, 120, // 160-167 +133, 123, 128, 132, 132, 130, 120, 138, // 168-175 +120, 139, 126, 120, 142, 112, 136, 121, // 176-183 +121, 134, 115, 134, 119, 132, 130, 125, // 184-191 +135, 123, 132, 127, 126, 131, 122, 129, // 192-199 +125, 124, 126, 125, 129, 126, 133, 125, // 200-207 +131, 128, 129, 130, 124, 130, 123, 127, // 208-215 +122, 126, 122, 124, 125, 122, 129, 125, // 216-223 +129, 130, 130, 130, 129, 129, 129, 126, // 224-231 +129, 124, 128, 128, 124, 128, 124, 126, // 232-239 +128, 126, 129, 126, 130, 126, 130, 128, // 240-247 +125, 130, 123, 129, 125, 125, 128, 125, // 248-255 +127, 128, 127, 129, 129, 129, 128, 129, // 256-263 +127, 128, 129, 126, 126, 128, 127, 125, // 264-271 +130, 125, 129, 129, 125, 130, 127, 124, // 272-279 +128, 125, 125, 128, 126, 128, 126, 130, // 280-287 +129, 126, 130, 129, 126, 129, 129, 125, // 288-295 +128, 129, 126, 126, 127, 128, 125, 128, // 296-303 +127, 126, 129, 125, 129, 127, 129, 126, // 304-311 +126, 129, 124, 129, 125, 126, 125, 125, // 312-319 +126, 124, 129, 125, 128, 126, 129, 126, // 320-327 +125, 129, 125, 126, 127, 130, 124, 129, // 328-335 +129, 125, 127, 126, 127, 128, 127, 125, // 336-343 +127, 127, 125, 125, 130, 124, 129, 127, // 344-351 +125, 129, 125, 126, 125, 129, 125, 128, // 352-359 +129, 129, 129, 128, 130, 128, 129, 129, // 360-367 +125, 128, 125, 125, 128, 125, 128, 125, // 368-375 +128, 127, 128, 126, 129, 127, 128, 130, // 376-383 +125, 129, 126, 126, 128, 124, 126, 125, // 384-391 +125, 126, 128, 128, 130, 128, 130, 128, // 392-399 +125, 129, 124, 124, 125, 124, 123, 128, // 400-407 +127, 125, 129, 130, 129, 130, 130, 129, // 408-415 +129, 125, 127, 125, 126, 128, 124, 129, // 416-423 +125, 127, 129, 124, 130, 126, 125, 129, // 424-431 +125, 124, 128, 128, 123, 129, 128, 126, // 432-439 +129, 127, 128, 127, 129, 126, 128, 129, // 440-447 +125, 129, 126, 123, 127, 125, 124, 130, // 448-455 +127, 128, 130, 129, 129, 128, 127, 129, // 456-463 +125, 127, 128, 124, 125, 127, 125, 126, // 464-471 +129, 127, 125, 130, 129, 124, 129, 126, // 472-479 +125, 128, 125, 125, 129, 125, 126, 128, // 480-487 +126, 128, 126, 128, 130, 126, 129, 130, // 488-495 +127, 126, 127, 129, 123, 128, 127, 125, // 496-503 +130, 129, 126, 129, 128, 124, 128, 125, // 504-511 +125, 126, 125, 124, 124, 124, 124, 127, // 512-519 +124, 125, 127, 128, 125, 130, 126, 129, // 520-527 +134, 126, 132, 131, 129, 134, 133, 130, // 528-535 +131, 135, 130, 129, 134, 129, 128, 129, // 536-543 +127, 125, 124, 128, 121, 123, 123, 120, // 544-551 +121, 121, 121, 119, 120, 119, 118, 120, // 552-559 +123, 119, 123, 125, 123, 125, 125, 132, // 560-567 +131, 131, 143, 135, 137, 142, 135, 138, // 568-575 +138, 136, 134, 133, 130, 132, 128, 125, // 576-583 +131, 125, 128, 126, 124, 123, 120, 121, // 584-591 +120, 119, 120, 119, 118, 118, 116, 114, // 592-599 +115, 115, 116, 116, 116, 120, 120, 123, // 600-607 +130, 134, 142, 143, 144, 154, 143, 145, // 608-615 +144, 135, 137, 134, 132, 131, 126, 131, // 616-623 +129, 124, 129, 125, 122, 123, 121, 118, // 624-631 +119, 117, 118, 118, 118, 116, 116, 115, // 632-639 +114, 114, 112, 115, 118, 116, 120, 124, // 640-647 +127, 144, 147, 145, 164, 151, 143, 149, // 648-655 +133, 130, 129, 129, 128, 129, 131, 126, // 656-663 +125, 125, 124, 123, 124, 124, 123, 120, // 664-671 +119, 118, 116, 113, 116, 114, 112, 113, // 672-679 +111, 110, 112, 115, 116, 114, 128, 143, // 680-687 +146, 156, 166, 162, 153, 153, 140, 128, // 688-695 +130, 122, 123, 130, 128, 127, 128, 125, // 696-703 +121, 120, 121, 119, 122, 121, 118, 118, // 704-711 +116, 113, 112, 113, 109, 107, 108, 108, // 712-719 +110, 104, 114, 125, 139, 157, 164, 180, // 720-727 +176, 164, 156, 142, 125, 120, 120, 120, // 728-735 +129, 132, 131, 131, 125, 120, 115, 114, // 736-743 +116, 117, 120, 120, 117, 115, 113, 111, // 744-751 +109, 112, 105, 107, 107, 102, 103, 118, // 752-759 +136, 153, 168, 176, 184, 168, 155, 146, // 760-767 +123, 118, 120, 119, 124, 135, 139, 136, // 768-775 +136, 131, 122, 118, 116, 115, 116, 120, // 776-783 +120, 118, 115, 117, 114, 109, 112, 111, // 784-791 +101, 102, 99, 93, 106, 136, 158, 158, // 792-799 +182, 184, 162, 152, 148, 117, 107, 115, // 800-807 +113, 118, 135, 145, 143, 142, 143, 129, // 808-815 +116, 116, 112, 112, 120, 125, 127, 124, // 816-823 +120, 116, 117, 107, 106, 110, 95, 99, // 824-831 + 95, 89, 118, 155, 166, 172, 184, 184, // 832-839 +156, 146, 122, 107, 95, 109, 112, 120, // 840-847 +138, 146, 145, 148, 143, 123, 118, 116, // 848-855 +109, 114, 124, 129, 135, 135, 129, 115, // 856-863 +115, 110, 93, 103, 104, 87, 93, 99, // 864-871 +108, 152, 178, 166, 184, 184, 150, 141, // 872-879 +124, 102, 89, 105, 115, 120, 142, 151, // 880-887 +149, 144, 143, 128, 112, 115, 114, 112, // 888-895 +129, 136, 139, 138, 133, 116, 108, 108, // 896-903 + 95, 91, 104, 93, 85, 98, 107, 143, // 904-911 +184, 168, 184, 184, 153, 136, 130, 102, // 912-919 + 87, 101, 118, 121, 142, 155, 151, 142, // 920-927 +139, 125, 109, 109, 122, 116, 129, 148, // 928-935 +143, 140, 139, 124, 108, 101, 99, 98, // 936-943 + 99, 103, 95, 93, 97, 103, 146, 184, // 944-951 +162, 184, 184, 146, 131, 130, 103, 87, // 952-959 +104, 126, 124, 142, 155, 147, 136, 133, // 960-967 +121, 107, 111, 124, 125, 136, 148, 146, // 968-975 +140, 131, 121, 107, 98, 98, 101, 101, // 976-983 +102, 98, 95, 93, 102, 145, 184, 162, // 984-991 +180, 184, 147, 123, 136, 101, 83, 104, // 992-999 +126, 122, 140, 156, 147, 134, 131, 121, // 1000-1007 +105, 110, 124, 124, 136, 150, 148, 141, // 1008-1015 +135, 124, 110, 102, 99, 100, 105, 106, // 1016-1023 +102, 99, 97, 98, 121, 174, 178, 158, // 1024-1031 +184, 182, 120, 135, 113, 89, 95, 117, // 1032-1039 +128, 131, 150, 153, 136, 131, 129, 111, // 1040-1047 +107, 120, 126, 130, 144, 148, 144, 137, // 1048-1055 +130, 119, 108, 101, 99, 104, 105, 105, // 1056-1063 +104, 98, 99, 104, 135, 184, 170, 166, // 1064-1071 +184, 162, 118, 131, 106, 89, 100, 123, // 1072-1079 +128, 136, 152, 151, 134, 130, 125, 107, // 1080-1087 +111, 121, 126, 134, 144, 146, 143, 137, // 1088-1095 +129, 117, 112, 102, 98, 106, 105, 104, // 1096-1103 +106, 101, 99, 109, 127, 176, 180, 157, // 1104-1111 +184, 172, 113, 130, 107, 93, 101, 120, // 1112-1119 +133, 135, 151, 152, 136, 129, 128, 109, // 1120-1127 +111, 120, 128, 132, 143, 146, 143, 138, // 1128-1135 +128, 120, 112, 102, 99, 102, 105, 106, // 1136-1143 +105, 108, 101, 107, 124, 164, 182, 156, // 1144-1151 +184, 184, 118, 124, 116, 93, 100, 116, // 1152-1159 +133, 132, 148, 153, 139, 127, 129, 112, // 1160-1167 +110, 119, 125, 131, 139, 144, 143, 137, // 1168-1175 +129, 121, 114, 106, 102, 104, 105, 107, // 1176-1183 +106, 106, 103, 106, 114, 150, 182, 162, // 1184-1191 +170, 184, 138, 118, 123, 99, 99, 110, // 1192-1199 +130, 133, 140, 151, 143, 130, 130, 118, // 1200-1207 +111, 116, 124, 130, 136, 143, 142, 138, // 1208-1215 +131, 122, 116, 110, 103, 103, 105, 107, // 1216-1223 +106, 108, 107, 105, 107, 130, 174, 172, // 1224-1231 +156, 184, 168, 117, 125, 112, 95, 101, // 1232-1239 +120, 131, 133, 147, 149, 135, 130, 129, // 1240-1247 +112, 114, 120, 127, 131, 139, 143, 140, // 1248-1255 +134, 127, 120, 114, 109, 105, 106, 106, // 1256-1263 +107, 107, 109, 107, 107, 112, 135, 174, // 1264-1271 +172, 155, 184, 162, 112, 123, 112, 95, // 1272-1279 +105, 123, 130, 135, 146, 148, 135, 131, // 1280-1287 +127, 114, 115, 122, 128, 130, 139, 142, // 1288-1295 +138, 133, 128, 120, 114, 110, 107, 106, // 1296-1303 +108, 109, 107, 110, 108, 108, 112, 132, // 1304-1311 +172, 172, 152, 184, 166, 115, 123, 112, // 1312-1319 + 98, 101, 120, 133, 133, 145, 151, 138, // 1320-1327 +133, 130, 116, 115, 120, 126, 129, 136, // 1328-1335 +141, 138, 133, 129, 121, 116, 112, 108, // 1336-1343 +108, 108, 110, 110, 110, 111, 107, 111, // 1344-1351 +123, 157, 176, 153, 172, 180, 124, 118, // 1352-1359 +119, 101, 99, 112, 132, 130, 142, 152, // 1360-1367 +142, 134, 134, 120, 115, 118, 123, 125, // 1368-1375 +131, 139, 138, 134, 131, 124, 118, 114, // 1376-1383 +110, 108, 108, 110, 110, 111, 112, 111, // 1384-1391 +111, 114, 134, 168, 168, 151, 180, 160, // 1392-1399 +113, 124, 112, 101, 105, 122, 133, 133, // 1400-1407 +146, 148, 138, 134, 130, 118, 116, 119, // 1408-1415 +125, 125, 134, 138, 135, 133, 129, 121, // 1416-1423 +118, 114, 111, 111, 111, 111, 111, 112, // 1424-1431 +114, 111, 110, 114, 130, 164, 166, 151, // 1432-1439 +176, 158, 116, 124, 113, 102, 106, 119, // 1440-1447 +132, 133, 146, 150, 140, 137, 131, 119, // 1448-1455 +116, 117, 122, 123, 132, 136, 135, 134, // 1456-1463 +130, 123, 120, 114, 112, 112, 111, 111, // 1464-1471 +112, 112, 114, 112, 111, 113, 120, 153, // 1472-1479 +170, 147, 164, 172, 123, 121, 121, 106, // 1480-1487 +105, 116, 132, 130, 143, 150, 142, 136, // 1488-1495 +134, 122, 116, 116, 122, 121, 129, 136, // 1496-1503 +135, 134, 131, 125, 122, 117, 114, 114, // 1504-1511 +112, 112, 112, 114, 112, 115, 113, 110, // 1512-1519 +112, 130, 162, 158, 145, 174, 156, 117, // 1520-1527 +128, 120, 105, 108, 123, 131, 131, 144, // 1528-1535 +149, 137, 136, 131, 119, 116, 118, 121, // 1536-1543 +122, 131, 136, 135, 133, 131, 125, 122, // 1544-1551 +117, 115, 116, 112, 112, 114, 114, 112, // 1552-1559 +114, 112, 110, 112, 127, 158, 158, 145, // 1560-1567 +172, 156, 118, 133, 119, 105, 111, 121, // 1568-1575 +131, 131, 144, 149, 137, 136, 134, 118, // 1576-1583 +116, 118, 120, 122, 130, 135, 135, 134, // 1584-1591 +133, 128, 123, 119, 116, 117, 114, 112, // 1592-1599 +114, 115, 113, 114, 114, 110, 110, 117, // 1600-1607 +140, 160, 149, 154, 170, 138, 125, 131, // 1608-1615 +112, 108, 115, 126, 129, 135, 147, 142, // 1616-1623 +134, 138, 124, 116, 119, 118, 121, 124, // 1624-1631 +133, 135, 135, 135, 132, 125, 123, 118, // 1632-1639 +116, 117, 114, 114, 116, 116, 113, 116, // 1640-1647 +114, 110, 111, 114, 135, 154, 149, 152, // 1648-1655 +170, 147, 125, 135, 115, 109, 114, 124, // 1656-1663 +126, 132, 144, 143, 134, 139, 129, 117, // 1664-1671 +120, 119, 120, 123, 133, 135, 135, 135, // 1672-1679 +133, 128, 123, 119, 116, 119, 116, 115, // 1680-1687 +116, 118, 115, 116, 114, 109, 110, 108, // 1688-1695 +120, 146, 152, 149, 164, 168, 131, 134, // 1696-1703 +131, 108, 112, 118, 124, 124, 139, 145, // 1704-1711 +136, 136, 139, 120, 119, 120, 120, 121, // 1712-1719 +126, 135, 133, 135, 135, 130, 124, 123, // 1720-1727 +118, 119, 119, 119, 116, 118, 119, 114, // 1728-1735 +115, 114, 107, 108, 108, 116, 143, 154, // 1736-1743 +147, 162, 168, 138, 134, 130, 112, 109, // 1744-1751 +116, 123, 124, 135, 144, 138, 135, 139, // 1752-1759 +123, 120, 122, 120, 120, 127, 133, 133, // 1760-1767 +134, 134, 131, 125, 123, 119, 119, 121, // 1768-1775 +121, 118, 119, 119, 114, 114, 114, 110, // 1776-1783 +108, 107, 110, 125, 147, 152, 149, 170, // 1784-1791 +157, 134, 138, 121, 112, 111, 118, 122, // 1792-1799 +124, 139, 143, 134, 139, 136, 121, 123, // 1800-1807 +122, 121, 121, 130, 132, 133, 134, 133, // 1808-1815 +129, 126, 124, 120, 122, 123, 121, 120, // 1816-1823 +119, 117, 114, 113, 114, 110, 110, 109, // 1824-1831 +105, 116, 140, 149, 148, 162, 170, 144, // 1832-1839 +136, 135, 115, 110, 115, 119, 119, 130, // 1840-1847 +142, 139, 136, 142, 131, 123, 124, 123, // 1848-1855 +120, 123, 131, 131, 132, 135, 133, 129, // 1856-1863 +129, 124, 123, 123, 124, 121, 118, 117, // 1864-1871 +116, 113, 113, 113, 110, 110, 108, 106, // 1872-1879 +115, 137, 149, 149, 160, 172, 144, 138, // 1880-1887 +139, 114, 110, 114, 116, 118, 129, 141, // 1888-1895 +140, 136, 144, 134, 123, 128, 122, 119, // 1896-1903 +121, 130, 130, 131, 135, 135, 130, 130, // 1904-1911 +127, 123, 124, 123, 121, 120, 118, 116, // 1912-1919 +116, 114, 114, 112, 111, 108, 105, 107, // 1920-1927 +116, 135, 151, 154, 160, 172, 149, 135, // 1928-1935 +136, 114, 107, 112, 115, 119, 130, 142, // 1936-1943 +143, 138, 143, 136, 122, 126, 121, 119, // 1944-1951 +121, 130, 131, 132, 137, 134, 131, 130, // 1952-1959 +128, 123, 124, 123, 122, 120, 119, 116, // 1960-1967 +115, 116, 113, 112, 111, 108, 105, 105, // 1968-1975 +110, 124, 143, 156, 157, 166, 164, 142, // 1976-1983 +135, 124, 111, 109, 113, 118, 124, 136, // 1984-1991 +143, 142, 139, 141, 130, 124, 125, 120, // 1992-1999 +122, 124, 130, 131, 133, 134, 133, 130, // 2000-2007 +129, 125, 124, 125, 123, 123, 121, 119, // 2008-2015 +115, 116, 114, 112, 111, 109, 107, 105, // 2016-2023 +104, 109, 118, 139, 153, 156, 162, 166, // 2024-2031 +149, 135, 133, 115, 111, 113, 118, 121, // 2032-2039 +131, 140, 143, 139, 139, 138, 125, 126, // 2040-2047 +125, 120, 124, 127, 129, 131, 133, 133, // 2048-2055 +131, 131, 129, 125, 126, 124, 123, 123, // 2056-2063 +121, 118, 115, 115, 112, 111, 110, 109, // 2064-2071 +106, 105, 107, 109, 120, 135, 150, 157, // 2072-2079 +157, 164, 153, 138, 134, 123, 114, 116, // 2080-2087 +119, 123, 129, 137, 140, 140, 138, 137, // 2088-2095 +133, 125, 129, 123, 122, 129, 126, 130, // 2096-2103 +133, 131, 131, 131, 130, 129, 128, 128, // 2104-2111 +125, 124, 123, 119, 115, 112, 112, 108, // 2112-2119 +108, 110, 106, 108, 109, 110, 114, 120, // 2120-2127 +134, 147, 155, 154, 158, 158, 138, 138, // 2128-2135 +132, 118, 120, 122, 123, 126, 133, 136, // 2136-2143 +136, 138, 137, 131, 131, 128, 124, 124, // 2144-2151 +123, 128, 125, 130, 132, 131, 133, 133, // 2152-2159 +130, 130, 129, 126, 124, 122, 119, 116, // 2160-2167 +112, 111, 111, 109, 108, 110, 109, 111, // 2168-2175 +112, 112, 117, 119, 125, 140, 149, 153, // 2176-2183 +152, 164, 152, 139, 144, 130, 123, 124, // 2184-2191 +123, 121, 125, 131, 131, 132, 136, 136, // 2192-2199 +129, 131, 129, 121, 124, 124, 122, 127, // 2200-2207 +130, 131, 134, 134, 133, 132, 130, 126, // 2208-2215 +123, 121, 119, 116, 115, 112, 111, 112, // 2216-2223 +112, 110, 112, 112, 112, 113, 113, 115, // 2224-2231 +118, 121, 130, 141, 150, 156, 155, 164, // 2232-2239 +153, 143, 145, 130, 125, 123, 120, 119, // 2240-2247 +122, 125, 128, 129, 133, 132, 130, 130, // 2248-2255 +127, 125, 123, 124, 123, 124, 129, 133, // 2256-2263 +133, 134, 135, 131, 130, 126, 121, 120, // 2264-2271 +118, 116, 116, 116, 114, 113, 115, 114, // 2272-2279 +112, 115, 115, 113, 118, 116, 117, 121, // 2280-2287 +123, 127, 135, 148, 153, 152, 160, 162, // 2288-2295 +146, 145, 140, 125, 123, 120, 115, 114, // 2296-2303 +119, 120, 121, 127, 130, 129, 131, 132, // 2304-2311 +130, 129, 129, 125, 124, 125, 125, 126, // 2312-2319 +131, 132, 130, 133, 131, 126, 124, 123, // 2320-2327 +119, 118, 119, 116, 116, 117, 116, 117, // 2328-2335 +118, 118, 119, 119, 120, 120, 121, 121, // 2336-2343 +121, 124, 125, 130, 142, 148, 148, 153, // 2344-2351 +158, 146, 143, 142, 125, 123, 119, 114, // 2352-2359 +112, 115, 116, 119, 123, 129, 129, 132, // 2360-2367 +135, 133, 134, 133, 130, 128, 127, 124, // 2368-2375 +123, 125, 126, 129, 131, 129, 133, 129, // 2376-2383 +123, 129, 120, 120, 123, 119, 121, 121, // 2384-2391 +120, 120, 119, 119, 120, 120, 120, 121, // 2392-2399 +120, 120, 119, 119, 123, 121, 130, 140, // 2400-2407 +144, 143, 152, 155, 140, 146, 139, 125, // 2408-2415 +125, 121, 114, 114, 116, 114, 118, 123, // 2416-2423 +126, 129, 135, 136, 137, 138, 136, 133, // 2424-2431 +130, 126, 123, 121, 121, 122, 124, 129, // 2432-2439 +128, 131, 133, 129, 130, 131, 124, 128, // 2440-2447 +125, 121, 122, 120, 117, 118, 117, 117, // 2448-2455 +119, 119, 121, 121, 120, 121, 119, 118, // 2456-2463 +121, 121, 123, 132, 141, 142, 144, 155, // 2464-2471 +146, 143, 148, 134, 131, 129, 120, 116, // 2472-2479 +116, 115, 114, 119, 123, 125, 132, 137, // 2480-2487 +137, 139, 140, 136, 133, 131, 125, 121, // 2488-2495 +120, 118, 118, 121, 124, 125, 130, 134, // 2496-2503 +131, 134, 134, 129, 130, 126, 121, 120, // 2504-2511 +117, 115, 115, 115, 115, 118, 120, 121, // 2512-2519 +123, 123, 122, 123, 119, 120, 122, 118, // 2520-2527 +125, 133, 138, 141, 144, 153, 143, 147, // 2528-2535 +148, 134, 136, 130, 120, 119, 117, 112, // 2536-2543 +114, 118, 120, 123, 131, 134, 136, 139, // 2544-2551 +138, 136, 135, 130, 124, 122, 118, 116, // 2552-2559 +116, 118, 122, 124, 127, 135, 133, 135, // 2560-2567 +139, 132, 133, 130, 123, 121, 119, 115, // 2568-2575 +114, 115, 115, 116, 120, 121, 121, 125, // 2576-2583 +124, 123, 124, 121, 120, 121, 120, 124, // 2584-2591 +129, 136, 139, 141, 151, 143, 145, 149, // 2592-2599 +137, 138, 134, 124, 121, 119, 114, 114, // 2600-2607 +116, 116, 120, 125, 129, 132, 136, 137, // 2608-2615 +136, 136, 133, 129, 126, 122, 119, 119, // 2616-2623 +118, 120, 124, 127, 131, 134, 137, 136, // 2624-2631 +136, 136, 130, 129, 125, 119, 119, 115, // 2632-2639 +114, 115, 115, 116, 119, 121, 123, 125, // 2640-2647 +125, 123, 125, 123, 120, 123, 120, 121, // 2648-2655 +125, 130, 136, 135, 143, 145, 142, 149, // 2656-2663 +143, 139, 140, 133, 128, 124, 119, 116, // 2664-2671 +116, 116, 116, 120, 124, 125, 131, 134, // 2672-2679 +134, 135, 135, 132, 130, 128, 124, 122, // 2680-2687 +120, 120, 121, 124, 127, 129, 133, 133, // 2688-2695 +134, 135, 133, 131, 129, 124, 121, 119, // 2696-2703 +116, 115, 115, 115, 116, 118, 120, 121, // 2704-2711 +124, 125, 124, 125, 124, 122, 124, 121, // 2712-2719 +123, 124, 128, 135, 134, 140, 146, 142, // 2720-2727 +146, 147, 140, 143, 138, 131, 129, 123, // 2728-2735 +118, 116, 115, 114, 116, 119, 121, 125, // 2736-2743 +130, 131, 134, 134, 134, 133, 131, 129, // 2744-2751 +126, 124, 123, 123, 124, 124, 128, 129, // 2752-2759 +131, 131, 133, 132, 131, 131, 126, 125, // 2760-2767 +122, 119, 118, 117, 116, 118, 118, 119, // 2768-2775 +121, 123, 124, 125, 125, 124, 125, 123, // 2776-2783 +123, 124, 123, 125, 130, 134, 135, 140, // 2784-2791 +144, 140, 146, 144, 140, 143, 135, 131, // 2792-2799 +129, 122, 118, 117, 115, 114, 116, 118, // 2800-2807 +119, 124, 127, 129, 133, 134, 134, 134, // 2808-2815 +132, 130, 129, 126, 124, 125, 125, 124, // 2816-2823 +129, 130, 129, 133, 131, 130, 132, 129, // 2824-2831 +127, 126, 122, 120, 120, 118, 117, 118, // 2832-2839 +118, 119, 120, 121, 123, 124, 124, 125, // 2840-2847 +124, 124, 124, 124, 125, 124, 129, 131, // 2848-2855 +134, 136, 140, 143, 140, 144, 141, 140, // 2856-2863 +139, 134, 131, 128, 122, 119, 118, 115, // 2864-2871 +115, 117, 118, 120, 124, 125, 129, 131, // 2872-2879 +132, 133, 133, 132, 131, 130, 129, 127, // 2880-2887 +128, 127, 128, 127, 129, 128, 129, 130, // 2888-2895 +127, 129, 127, 124, 124, 122, 120, 120, // 2896-2903 +119, 118, 119, 119, 120, 121, 122, 123, // 2904-2911 +124, 123, 124, 125, 123, 124, 125, 124, // 2912-2919 +125, 128, 129, 134, 134, 136, 142, 139, // 2920-2927 +142, 143, 138, 139, 135, 131, 130, 125, // 2928-2935 +121, 120, 118, 116, 117, 118, 119, 121, // 2936-2943 +124, 125, 130, 131, 132, 133, 133, 133, // 2944-2951 +133, 130, 130, 129, 127, 129, 127, 126, // 2952-2959 +130, 126, 127, 129, 125, 127, 125, 124, // 2960-2967 +125, 122, 121, 121, 120, 120, 120, 120, // 2968-2975 +120, 122, 122, 123, 124, 124, 125, 125, // 2976-2983 +125, 125, 126, 125, 126, 128, 128, 130, // 2984-2991 +131, 134, 134, 137, 138, 136, 139, 136, // 2992-2999 +135, 135, 131, 130, 128, 123, 121, 120, // 3000-3007 +119, 119, 119, 120, 121, 124, 124, 127, // 3008-3015 +130, 130, 131, 133, 132, 132, 132, 131, // 3016-3023 +130, 130, 127, 128, 129, 125, 128, 125, // 3024-3031 +124, 126, 124, 124, 124, 123, 123, 123, // 3032-3039 +123, 122, 123, 123, 122, 123, 123, 123, // 3040-3047 +124, 124, 124, 125, 124, 125, 125, 125, // 3048-3055 +128, 126, 128, 128, 127, 130, 130, 133, // 3056-3063 +133, 133, 136, 134, 135, 136, 133, 134, // 3064-3071 +132, 130, 129, 126, 124, 123, 122, 121, // 3072-3079 +121, 121, 122, 123, 125, 125, 129, 129, // 3080-3087 +130, 132, 131, 132, 133, 131, 130, 130, // 3088-3095 +129, 125, 128, 124, 123, 124, 121, 123, // 3096-3103 +123, 122, 124, 123, 123, 124, 124, 124, // 3104-3111 +125, 124, 124, 125, 125, 124, 125, 124, // 3112-3119 +124, 125, 124, 125, 126, 125, 127, 129, // 3120-3127 +128, 130, 130, 130, 133, 133, 133, 135, // 3128-3135 +134, 133, 135, 132, 132, 131, 129, 129, // 3136-3143 +128, 125, 124, 124, 123, 123, 124, 124, // 3144-3151 +125, 126, 128, 129, 130, 130, 131, 130, // 3152-3159 +131, 130, 129, 129, 128, 126, 125, 125, // 3160-3167 +124, 124, 124, 124, 124, 124, 124, 124, // 3168-3175 +124, 124, 125, 125, 125, 125, 125, 125, // 3176-3183 +125, 124, 125, 124, 125, 125, 125, 125, // 3184-3191 +128, 127, 128, 128, 129, 129, 130, 130, // 3192-3199 +130, 131, 132, 132, 133, 133, 133, 132, // 3200-3207 +133, 131, 131, 131, 129, 129, 128, 126, // 3208-3215 +126, 125, 125, 125, 124, 125, 125, 125, // 3216-3223 +125, 126, 128, 127, 128, 128, 126, 128, // 3224-3231 +125, 125, 125, 124, 124, 124, 124, 124, // 3232-3239 +124, 124, 125, 124, 125, 125, 125, 125, // 3240-3247 +125, 125, 125, 125, 125, 125, 125, 126, // 3248-3255 +125, 127, 128, 127, 129, 127, 130, 129, // 3256-3263 +130, 131, 131, 132, 132, 133, 133, 133, // 3264-3271 +133, 132, 132, 130, 130, 129, 127, 128, // 3272-3279 +125, 125, 125, 124, 124, 124, 124, 124, // 3280-3287 +124, 125, 125, 125, 125, 126, 125, 125, // 3288-3295 +125, 125, 125, 125, 124, 124, 124, 124, // 3296-3303 +124, 124, 124, 125, 125, 125, 125, 126, // 3304-3311 +126, 126, 126, 126, 126, 127, 126, 126, // 3312-3319 +128, 128, 127, 128, 129, 128, 129, 129, // 3320-3327 +129, 130, 129, 130, 130, 130, 130, 130, // 3328-3335 +130, 130, 130, 130, 129, 129, 129, 128, // 3336-3343 +127, 128, 126, 125, 125, 125, 125, 124, // 3344-3351 +124, 124, 124, 124, 124, 125, 125, 125, // 3352-3359 +125, 125, 125, 125, 125, 125, 125, 125, // 3360-3367 +125, 125, 125, 125, 125, 125, 126, 126, // 3368-3375 +126, 126, 126, 126, 126, 126, 126, 126, // 3376-3383 +126, 126, 126, 127, 128, 127, 129, 128, // 3384-3391 +129, 129, 127, 129, 129, 129, 129, 129, // 3392-3399 +129, 129, 129, 129, 129, 129, 129, 129, // 3400-3407 +129, 129, 129, 129, 129, 128, 129, 127, // 3408-3415 +128, 127, 128, 127, 126, 126, 126, 125, // 3416-3423 +125, 125, 125, 125, 126, 125, 126, 126, // 3424-3431 +126, 126, 126, 126, 125, 126, 125, 125, // 3432-3439 +126, 125, 125, 125, 125, 126, 126, 126, // 3440-3447 +128, 126, 128, 128, 127, 128, 127, 127, // 3448-3455 +128, 127, 128, 127, 128, 127, 128, 127, // 3456-3463 +129, 127, 129, 129, 129, 129, 129, 129, // 3464-3471 +129, 129, 129, 129, 129, 127, 128, 129, // 3472-3479 +128, 128, 129, 128, 128, 129, 127, 129, // 3480-3487 +128, 127, 128, 127, 128, 128, 128, 127, // 3488-3495 +128, 128, 128, 127, 128, 127, 128, 126, // 3496-3503 +127, 128, 126, 128, 126, 126, 127, 126, // 3504-3511 +126, 127, 126, 127, 128, 127, 128, 128, // 3512-3519 +127, 128, 127, 128, 128, 127, 128, 127, // 3520-3527 +128, 128, 127, 128}; + +const char L[2826] = {128, 128, 128, 128, 128, 127, 128, 127, // 0-7 +128, 128, 127, 128, 127, 128, 128, 128, // 8-15 +127, 128, 127, 128, 127, 127, 128, 128, // 16-23 +128, 127, 129, 131, 142, 136, 123, 147, // 24-31 +132, 106, 134, 121, 111, 129, 129, 130, // 32-39 +125, 129, 129, 115, 117, 121, 115, 118, // 40-47 +124, 124, 129, 129, 112, 117, 128, 112, // 48-55 +121, 130, 138, 144, 146, 147, 138, 133, // 56-63 +124, 123, 119, 123, 131, 134, 141, 147, // 64-71 +147, 138, 130, 129, 116, 114, 123, 125, // 72-79 +131, 134, 134, 124, 112, 104, 95, 93, // 80-87 + 98, 103, 112, 120, 135, 162, 180, 146, // 88-95 +149, 158, 106, 110, 118, 118, 124, 135, // 96-103 +153, 147, 137, 136, 125, 107, 111, 115, // 104-111 +118, 132, 146, 147, 148, 144, 135, 123, // 112-119 +115, 116, 112, 119, 119, 119, 118, 115, // 120-127 +110, 104, 103, 103, 107, 113, 129, 162, // 128-135 +184, 147, 155, 164, 104, 109, 112, 116, // 136-143 +123, 134, 153, 147, 137, 133, 121, 105, // 144-151 +107, 112, 123, 134, 149, 155, 153, 146, // 152-159 +130, 120, 110, 105, 113, 115, 115, 120, // 160-167 +120, 112, 105, 106, 103, 105, 111, 123, // 168-175 +150, 184, 174, 147, 170, 128, 97, 108, // 176-183 +106, 118, 124, 145, 155, 142, 136, 130, // 184-191 +111, 106, 111, 119, 132, 145, 157, 157, // 192-199 +146, 135, 125, 107, 106, 111, 114, 116, // 200-207 +116, 120, 113, 104, 105, 101, 104, 112, // 208-215 +119, 143, 176, 184, 149, 158, 147, 95, // 216-223 +103, 108, 116, 127, 143, 157, 148, 134, // 224-231 +130, 113, 104, 111, 118, 133, 145, 160, // 232-239 +158, 146, 131, 121, 104, 101, 109, 112, // 240-247 +117, 116, 120, 113, 104, 102, 101, 102, // 248-255 +112, 121, 149, 184, 184, 151, 168, 134, // 256-263 + 93, 103, 104, 118, 128, 147, 160, 146, // 264-271 +133, 126, 108, 102, 110, 120, 138, 152, // 272-279 +166, 160, 141, 129, 112, 98, 103, 108, // 280-287 +119, 119, 120, 120, 110, 100, 100, 97, // 288-295 +102, 112, 124, 158, 184, 182, 152, 166, // 296-303 +125, 91, 102, 105, 122, 132, 152, 162, // 304-311 +144, 129, 121, 105, 102, 111, 124, 143, // 312-319 +157, 168, 158, 136, 123, 108, 99, 103, // 320-327 +112, 121, 119, 119, 116, 105, 98, 98, // 328-335 + 98, 106, 112, 132, 170, 184, 174, 153, // 336-343 +162, 114, 89, 100, 111, 125, 137, 158, // 344-351 +160, 140, 125, 116, 102, 103, 115, 133, // 352-359 +150, 166, 166, 147, 133, 115, 101, 101, // 360-367 +109, 119, 124, 120, 117, 110, 98, 95, // 368-375 + 97, 102, 111, 116, 138, 176, 184, 166, // 376-383 +152, 155, 107, 93, 102, 116, 134, 140, // 384-391 +158, 156, 135, 120, 112, 103, 108, 119, // 392-399 +138, 159, 166, 157, 143, 124, 111, 101, // 400-407 +105, 114, 122, 124, 118, 113, 106, 97, // 408-415 + 97, 99, 105, 112, 120, 142, 182, 184, // 416-423 +157, 156, 146, 103, 95, 102, 121, 136, // 424-431 +143, 158, 152, 130, 116, 108, 105, 111, // 432-439 +121, 143, 164, 162, 149, 138, 119, 106, // 440-447 +103, 110, 119, 124, 123, 115, 109, 102, // 448-455 + 95, 97, 103, 108, 113, 122, 147, 182, // 456-463 +184, 156, 153, 142, 102, 97, 106, 125, // 464-471 +139, 143, 157, 148, 125, 113, 107, 107, // 472-479 +114, 124, 148, 164, 157, 145, 133, 117, // 480-487 +105, 105, 114, 122, 124, 121, 112, 108, // 488-495 +100, 95, 102, 105, 111, 115, 121, 147, // 496-503 +184, 184, 153, 153, 138, 104, 98, 106, // 504-511 +130, 142, 143, 156, 147, 124, 112, 106, // 512-519 +110, 117, 127, 151, 164, 153, 143, 129, // 520-527 +115, 108, 107, 116, 124, 124, 118, 110, // 528-535 +106, 100, 98, 105, 107, 112, 115, 120, // 536-543 +152, 184, 180, 154, 151, 133, 104, 97, // 544-551 +108, 134, 143, 147, 155, 145, 124, 109, // 552-559 +105, 112, 118, 130, 153, 164, 153, 138, // 560-567 +125, 114, 107, 109, 118, 128, 125, 115, // 568-575 +108, 106, 100, 98, 107, 109, 112, 114, // 576-583 +120, 151, 184, 180, 156, 148, 131, 107, // 584-591 + 95, 109, 135, 144, 148, 152, 143, 124, // 592-599 +107, 105, 112, 121, 133, 150, 164, 153, // 600-607 +136, 122, 115, 109, 111, 119, 130, 127, // 608-615 +115, 106, 105, 103, 99, 106, 111, 115, // 616-623 +115, 116, 142, 180, 184, 157, 146, 136, // 624-631 +112, 98, 104, 131, 147, 147, 148, 143, // 632-639 +130, 111, 103, 112, 125, 133, 147, 160, // 640-647 +154, 137, 120, 115, 112, 113, 118, 127, // 648-655 +129, 115, 103, 103, 105, 102, 106, 111, // 656-663 +117, 115, 113, 137, 176, 184, 160, 143, // 664-671 +139, 113, 100, 102, 126, 149, 147, 147, // 672-679 +143, 130, 112, 102, 110, 126, 135, 143, // 680-687 +156, 156, 139, 118, 114, 114, 115, 119, // 688-695 +126, 131, 118, 102, 101, 106, 106, 108, // 696-703 +111, 115, 118, 113, 121, 162, 184, 168, // 704-711 +147, 137, 122, 108, 97, 116, 144, 151, // 712-719 +147, 140, 134, 119, 104, 106, 120, 136, // 720-727 +143, 147, 154, 144, 125, 114, 114, 119, // 728-735 +122, 123, 129, 124, 110, 98, 103, 111, // 736-743 +111, 111, 112, 118, 118, 113, 133, 176, // 744-751 +184, 158, 139, 126, 116, 104, 103, 129, // 752-759 +150, 154, 144, 133, 128, 113, 106, 112, // 760-767 +127, 143, 146, 149, 147, 135, 119, 112, // 768-775 +116, 124, 125, 125, 124, 114, 103, 101, // 776-783 +107, 112, 113, 112, 115, 115, 113, 118, // 784-791 +155, 184, 172, 147, 131, 118, 112, 98, // 792-799 +114, 143, 156, 155, 136, 128, 119, 108, // 800-807 +108, 116, 138, 148, 147, 147, 140, 126, // 808-815 +115, 112, 120, 127, 128, 125, 119, 108, // 816-823 +100, 104, 112, 115, 114, 112, 114, 114, // 824-831 +112, 133, 174, 184, 162, 138, 119, 115, // 832-839 +106, 105, 129, 151, 162, 147, 129, 121, // 840-847 +112, 109, 111, 125, 144, 149, 149, 142, // 848-855 +131, 121, 113, 117, 124, 129, 130, 123, // 856-863 +114, 102, 101, 111, 115, 116, 112, 112, // 864-871 +114, 112, 115, 149, 184, 180, 152, 125, // 872-879 +116, 112, 105, 112, 135, 158, 160, 141, // 880-887 +123, 115, 112, 112, 115, 132, 145, 150, // 888-895 +147, 135, 125, 118, 116, 121, 124, 130, // 896-903 +127, 120, 110, 101, 106, 112, 116, 115, // 904-911 +112, 112, 112, 111, 121, 160, 184, 174, // 912-919 +145, 120, 111, 112, 107, 116, 142, 158, // 920-927 +160, 138, 118, 113, 112, 115, 118, 133, // 928-935 +147, 149, 146, 131, 121, 119, 119, 123, // 936-943 +124, 129, 128, 118, 107, 99, 108, 116, // 944-951 +118, 114, 111, 112, 112, 112, 129, 170, // 952-959 +184, 170, 140, 112, 111, 110, 111, 123, // 960-967 +142, 162, 155, 135, 116, 109, 114, 116, // 968-975 +121, 135, 144, 152, 143, 129, 119, 116, // 976-983 +122, 123, 125, 127, 125, 119, 105, 100, // 984-991 +108, 117, 121, 112, 110, 112, 113, 114, // 992-999 +130, 172, 184, 170, 139, 110, 110, 111, // 1000-1007 +113, 125, 141, 160, 155, 136, 116, 107, // 1008-1015 +114, 118, 123, 134, 142, 150, 143, 130, // 1016-1023 +119, 115, 124, 124, 125, 125, 124, 121, // 1024-1031 +107, 101, 107, 118, 124, 115, 110, 111, // 1032-1039 +112, 113, 124, 164, 184, 174, 145, 112, // 1040-1047 +107, 110, 114, 124, 136, 155, 157, 143, // 1048-1055 +123, 108, 111, 118, 123, 132, 138, 146, // 1056-1063 +146, 135, 123, 115, 120, 125, 125, 128, // 1064-1071 +124, 124, 114, 104, 106, 112, 120, 119, // 1072-1079 +112, 111, 112, 114, 118, 143, 176, 178, // 1080-1087 +160, 125, 107, 111, 112, 124, 130, 143, // 1088-1095 +154, 148, 136, 114, 110, 114, 121, 129, // 1096-1103 +133, 139, 144, 141, 131, 120, 118, 123, // 1104-1111 +125, 128, 126, 124, 121, 112, 107, 108, // 1112-1119 +115, 121, 120, 113, 111, 111, 112, 118, // 1120-1127 +145, 174, 176, 158, 126, 108, 109, 112, // 1128-1135 +123, 131, 143, 152, 149, 139, 119, 110, // 1136-1143 +112, 120, 129, 131, 137, 142, 142, 135, // 1144-1151 +123, 118, 120, 125, 129, 129, 125, 121, // 1152-1159 +117, 111, 109, 113, 120, 123, 117, 112, // 1160-1167 +107, 109, 115, 135, 166, 174, 166, 140, // 1168-1175 +114, 111, 111, 119, 127, 136, 147, 150, // 1176-1183 +145, 130, 114, 110, 114, 124, 130, 134, // 1184-1191 +139, 140, 138, 129, 121, 119, 123, 129, // 1192-1199 +130, 127, 124, 120, 116, 112, 112, 114, // 1200-1207 +120, 123, 117, 111, 105, 107, 116, 141, // 1208-1215 +168, 172, 160, 135, 114, 112, 112, 120, // 1216-1223 +126, 137, 148, 151, 144, 127, 112, 110, // 1224-1231 +114, 124, 129, 134, 138, 140, 138, 129, // 1232-1239 +122, 120, 125, 129, 130, 126, 123, 123, // 1240-1247 +120, 118, 113, 114, 118, 120, 119, 112, // 1248-1255 +108, 107, 111, 120, 144, 166, 170, 155, // 1256-1263 +131, 115, 112, 115, 121, 128, 138, 147, // 1264-1271 +149, 143, 127, 114, 110, 115, 123, 127, // 1272-1279 +133, 136, 139, 138, 131, 124, 120, 124, // 1280-1287 +125, 127, 128, 124, 125, 123, 121, 117, // 1288-1295 +115, 115, 116, 118, 112, 110, 107, 109, // 1296-1303 +116, 136, 160, 170, 162, 142, 120, 113, // 1304-1311 +112, 119, 125, 133, 143, 146, 146, 135, // 1312-1319 +121, 112, 111, 119, 125, 132, 136, 138, // 1320-1327 +139, 134, 130, 123, 120, 123, 125, 130, // 1328-1335 +129, 127, 126, 124, 122, 116, 114, 114, // 1336-1343 +116, 117, 114, 111, 108, 109, 115, 134, // 1344-1351 +156, 168, 162, 145, 125, 114, 112, 116, // 1352-1359 +123, 130, 138, 143, 144, 139, 128, 116, // 1360-1367 +112, 115, 123, 131, 136, 137, 137, 135, // 1368-1375 +131, 126, 121, 121, 124, 127, 131, 130, // 1376-1383 +129, 125, 123, 120, 116, 114, 114, 116, // 1384-1391 +117, 115, 111, 107, 108, 113, 133, 154, // 1392-1399 +168, 166, 148, 130, 116, 112, 115, 120, // 1400-1407 +126, 135, 140, 145, 143, 134, 121, 112, // 1408-1415 +112, 118, 127, 134, 138, 138, 136, 134, // 1416-1423 +130, 125, 121, 121, 125, 130, 133, 132, // 1424-1431 +130, 125, 122, 119, 116, 114, 115, 117, // 1432-1439 +117, 114, 110, 106, 106, 112, 130, 152, // 1440-1447 +168, 170, 155, 134, 116, 109, 111, 117, // 1448-1455 +125, 134, 141, 145, 145, 139, 126, 114, // 1456-1463 +110, 112, 123, 133, 139, 140, 137, 134, // 1464-1471 +130, 125, 122, 121, 123, 129, 133, 134, // 1472-1479 +133, 129, 124, 121, 120, 119, 116, 114, // 1480-1487 +113, 113, 112, 111, 108, 106, 112, 123, // 1488-1495 +144, 164, 170, 160, 140, 118, 110, 109, // 1496-1503 +118, 125, 134, 140, 142, 145, 139, 132, // 1504-1511 +119, 112, 112, 118, 131, 138, 141, 138, // 1512-1519 +132, 129, 125, 124, 124, 124, 128, 130, // 1520-1527 +133, 133, 131, 128, 123, 122, 121, 120, // 1528-1535 +117, 114, 112, 111, 112, 111, 110, 110, // 1536-1543 +112, 118, 133, 147, 162, 162, 152, 135, // 1544-1551 +120, 113, 114, 121, 129, 135, 137, 139, // 1552-1559 +139, 137, 133, 124, 118, 116, 119, 128, // 1560-1567 +134, 138, 136, 133, 129, 126, 125, 125, // 1568-1575 +125, 126, 129, 131, 134, 133, 131, 126, // 1576-1583 +122, 120, 119, 118, 115, 112, 111, 111, // 1584-1591 +112, 112, 114, 113, 114, 118, 125, 138, // 1592-1599 +151, 158, 156, 147, 133, 123, 118, 120, // 1600-1607 +125, 131, 134, 135, 137, 136, 136, 132, // 1608-1615 +125, 121, 118, 120, 124, 130, 134, 134, // 1616-1623 +133, 130, 129, 129, 129, 129, 128, 129, // 1624-1631 +130, 130, 130, 128, 124, 121, 119, 118, // 1632-1639 +118, 118, 115, 112, 111, 112, 112, 114, // 1640-1647 +115, 116, 117, 119, 124, 133, 143, 155, // 1648-1655 +158, 156, 144, 133, 123, 119, 123, 126, // 1656-1663 +132, 134, 134, 135, 134, 133, 129, 124, // 1664-1671 +119, 117, 119, 123, 130, 135, 136, 135, // 1672-1679 +132, 130, 129, 127, 128, 125, 125, 125, // 1680-1687 +127, 128, 127, 124, 121, 120, 119, 120, // 1688-1695 +120, 119, 116, 114, 113, 114, 116, 118, // 1696-1703 +119, 120, 120, 121, 124, 131, 139, 149, // 1704-1711 +157, 159, 153, 141, 130, 120, 118, 121, // 1712-1719 +124, 130, 129, 131, 130, 131, 131, 128, // 1720-1727 +124, 119, 119, 120, 125, 131, 135, 136, // 1728-1735 +134, 131, 128, 125, 125, 124, 125, 124, // 1736-1743 +125, 126, 126, 125, 124, 122, 121, 121, // 1744-1751 +122, 123, 123, 121, 119, 116, 116, 118, // 1752-1759 +120, 122, 122, 121, 120, 121, 124, 130, // 1760-1767 +137, 144, 152, 154, 151, 143, 131, 121, // 1768-1775 +115, 116, 119, 125, 128, 130, 131, 130, // 1776-1783 +130, 129, 127, 123, 121, 121, 124, 129, // 1784-1791 +131, 134, 133, 131, 129, 125, 124, 124, // 1792-1799 +124, 125, 124, 127, 125, 129, 127, 128, // 1800-1807 +126, 125, 125, 124, 125, 123, 121, 119, // 1808-1815 +118, 119, 120, 122, 121, 121, 119, 118, // 1816-1823 +118, 119, 124, 130, 136, 143, 151, 152, // 1824-1831 +152, 142, 131, 120, 115, 116, 118, 125, // 1832-1839 +128, 131, 130, 130, 131, 131, 131, 127, // 1840-1847 +125, 123, 124, 126, 130, 132, 132, 131, // 1848-1855 +129, 126, 125, 124, 125, 125, 126, 128, // 1856-1863 +130, 130, 131, 130, 129, 126, 124, 123, // 1864-1871 +121, 122, 121, 120, 120, 119, 120, 121, // 1872-1879 +121, 120, 119, 117, 116, 116, 119, 123, // 1880-1887 +130, 134, 140, 145, 149, 149, 146, 137, // 1888-1895 +127, 118, 116, 118, 122, 127, 130, 131, // 1896-1903 +130, 131, 131, 133, 131, 130, 127, 124, // 1904-1911 +124, 125, 129, 129, 130, 127, 126, 125, // 1912-1919 +125, 125, 125, 127, 128, 129, 130, 131, // 1920-1927 +131, 129, 127, 124, 122, 121, 121, 121, // 1928-1935 +121, 122, 121, 122, 121, 123, 122, 121, // 1936-1943 +120, 118, 116, 116, 119, 121, 125, 130, // 1944-1951 +133, 138, 143, 148, 149, 147, 140, 131, // 1952-1959 +121, 118, 118, 122, 128, 129, 131, 130, // 1960-1967 +131, 130, 133, 133, 131, 127, 124, 122, // 1968-1975 +122, 124, 125, 128, 126, 125, 124, 124, // 1976-1983 +126, 129, 131, 131, 131, 131, 131, 131, // 1984-1991 +129, 128, 124, 123, 121, 121, 122, 123, // 1992-1999 +123, 122, 122, 121, 122, 122, 123, 121, // 2000-2007 +120, 118, 118, 118, 120, 123, 125, 129, // 2008-2015 +131, 135, 139, 145, 146, 148, 143, 135, // 2016-2023 +126, 120, 119, 120, 124, 126, 129, 129, // 2024-2031 +129, 129, 130, 132, 131, 130, 128, 124, // 2032-2039 +122, 121, 123, 124, 125, 125, 125, 126, // 2040-2047 +128, 130, 131, 133, 134, 134, 132, 130, // 2048-2055 +127, 125, 123, 124, 123, 123, 123, 123, // 2056-2063 +123, 123, 122, 121, 121, 121, 122, 122, // 2064-2071 +122, 120, 119, 119, 118, 119, 121, 124, // 2072-2079 +126, 130, 133, 138, 143, 146, 147, 143, // 2080-2087 +138, 130, 124, 121, 120, 123, 124, 128, // 2088-2095 +127, 129, 129, 130, 131, 131, 131, 129, // 2096-2103 +125, 122, 121, 121, 123, 124, 125, 126, // 2104-2111 +127, 127, 129, 130, 131, 133, 134, 133, // 2112-2119 +132, 130, 128, 125, 123, 123, 122, 122, // 2120-2127 +123, 123, 123, 123, 123, 123, 123, 122, // 2128-2135 +122, 122, 121, 120, 119, 119, 119, 120, // 2136-2143 +121, 124, 128, 131, 135, 140, 144, 147, // 2144-2151 +147, 143, 138, 131, 123, 120, 120, 121, // 2152-2159 +123, 125, 125, 128, 127, 129, 130, 131, // 2160-2167 +130, 129, 125, 123, 121, 121, 122, 123, // 2168-2175 +125, 126, 128, 129, 129, 130, 131, 131, // 2176-2183 +132, 132, 132, 132, 131, 129, 125, 124, // 2184-2191 +121, 121, 121, 123, 124, 125, 125, 124, // 2192-2199 +124, 123, 121, 121, 121, 121, 121, 121, // 2200-2207 +120, 120, 120, 121, 123, 125, 130, 133, // 2208-2215 +138, 142, 144, 146, 144, 140, 134, 126, // 2216-2223 +122, 120, 120, 122, 124, 125, 126, 128, // 2224-2231 +128, 129, 130, 131, 130, 128, 125, 123, // 2232-2239 +122, 122, 123, 124, 126, 129, 130, 130, // 2240-2247 +131, 132, 132, 132, 132, 131, 131, 130, // 2248-2255 +129, 127, 125, 123, 122, 122, 122, 123, // 2256-2263 +124, 125, 124, 124, 123, 122, 121, 121, // 2264-2271 +121, 121, 121, 121, 120, 120, 120, 121, // 2272-2279 +123, 125, 129, 133, 136, 140, 143, 144, // 2280-2287 +144, 141, 135, 129, 123, 120, 120, 122, // 2288-2295 +123, 125, 125, 125, 126, 127, 130, 130, // 2296-2303 +131, 129, 128, 124, 123, 123, 123, 125, // 2304-2311 +128, 129, 130, 130, 130, 131, 131, 131, // 2312-2319 +131, 131, 130, 129, 128, 125, 124, 124, // 2320-2327 +123, 122, 123, 123, 124, 124, 124, 124, // 2328-2335 +123, 123, 122, 122, 122, 122, 122, 121, // 2336-2343 +121, 121, 121, 122, 123, 124, 127, 130, // 2344-2351 +134, 137, 141, 144, 143, 142, 137, 132, // 2352-2359 +125, 122, 120, 121, 123, 124, 125, 125, // 2360-2367 +126, 128, 129, 130, 131, 130, 128, 125, // 2368-2375 +124, 123, 123, 125, 126, 128, 129, 130, // 2376-2383 +130, 131, 131, 131, 131, 130, 130, 129, // 2384-2391 +127, 128, 125, 124, 123, 123, 123, 123, // 2392-2399 +124, 124, 124, 124, 124, 123, 123, 123, // 2400-2407 +122, 123, 123, 123, 122, 121, 121, 121, // 2408-2415 +122, 123, 125, 129, 131, 134, 137, 141, // 2416-2423 +143, 143, 140, 136, 131, 125, 122, 121, // 2424-2431 +122, 123, 124, 125, 125, 128, 127, 130, // 2432-2439 +131, 131, 129, 128, 125, 124, 124, 124, // 2440-2447 +125, 128, 129, 129, 129, 130, 130, 131, // 2448-2455 +131, 131, 130, 129, 128, 125, 124, 124, // 2456-2463 +123, 123, 123, 124, 124, 124, 124, 124, // 2464-2471 +124, 124, 123, 123, 123, 123, 123, 123, // 2472-2479 +123, 122, 121, 121, 122, 124, 125, 128, // 2480-2487 +130, 131, 134, 136, 140, 142, 142, 139, // 2488-2495 +134, 130, 125, 123, 123, 124, 125, 125, // 2496-2503 +125, 126, 128, 129, 130, 130, 130, 128, // 2504-2511 +125, 124, 124, 125, 126, 128, 127, 128, // 2512-2519 +129, 129, 130, 130, 131, 131, 130, 130, // 2520-2527 +127, 126, 125, 124, 124, 124, 124, 124, // 2528-2535 +125, 124, 124, 124, 123, 123, 123, 124, // 2536-2543 +124, 124, 124, 123, 123, 123, 122, 123, // 2544-2551 +123, 124, 125, 125, 127, 129, 130, 131, // 2552-2559 +133, 134, 135, 136, 137, 136, 134, 130, // 2560-2567 +128, 125, 125, 126, 127, 128, 128, 127, // 2568-2575 +128, 129, 128, 127, 125, 125, 125, 125, // 2576-2583 +126, 128, 127, 128, 127, 129, 130, 130, // 2584-2591 +130, 130, 130, 129, 127, 125, 124, 124, // 2592-2599 +124, 124, 125, 125, 125, 124, 123, 122, // 2600-2607 +121, 121, 122, 123, 124, 125, 124, 124, // 2608-2615 +123, 123, 124, 125, 125, 125, 125, 125, // 2616-2623 +128, 129, 131, 131, 131, 130, 130, 130, // 2624-2631 +130, 130, 131, 132, 133, 133, 132, 131, // 2632-2639 +129, 128, 129, 129, 129, 129, 129, 129, // 2640-2647 +129, 129, 127, 128, 126, 128, 129, 129, // 2648-2655 +129, 128, 128, 125, 125, 125, 125, 125, // 2656-2663 +125, 125, 125, 124, 124, 124, 123, 123, // 2664-2671 +123, 123, 124, 124, 124, 124, 124, 124, // 2672-2679 +124, 124, 124, 125, 125, 125, 126, 128, // 2680-2687 +128, 129, 127, 129, 129, 130, 130, 130, // 2688-2695 +129, 129, 129, 129, 129, 129, 129, 130, // 2696-2703 +130, 130, 131, 137, 141, 137, 131, 120, // 2704-2711 +119, 122, 128, 131, 128, 130, 128, 130, // 2712-2719 +125, 121, 120, 121, 127, 129, 130, 125, // 2720-2727 +124, 124, 124, 125, 123, 125, 125, 127, // 2728-2735 +128, 124, 122, 122, 125, 126, 127, 126, // 2736-2743 +125, 126, 126, 126, 125, 125, 126, 128, // 2744-2751 +128, 128, 127, 128, 129, 130, 130, 129, // 2752-2759 +127, 129, 129, 129, 127, 128, 127, 130, // 2760-2767 +130, 130, 129, 126, 126, 128, 127, 128, // 2768-2775 +128, 128, 129, 129, 128, 126, 126, 129, // 2776-2783 +129, 129, 129, 127, 129, 129, 128, 127, // 2784-2791 +128, 129, 129, 129, 126, 125, 126, 127, // 2792-2799 +128, 127, 128, 127, 128, 127, 126, 125, // 2800-2807 +126, 126, 128, 126, 128, 127, 127, 128, // 2808-2815 +127, 128, 126, 126, 126, 126, 128, 128, // 2816-2823 +128, 127}; + +const char M[3139] = {128, 129, 134, 135, 129, 136, 134, 129, // 0-7 +132, 124, 127, 119, 120, 122, 116, 120, // 8-15 +118, 117, 116, 118, 118, 120, 125, 129, // 16-23 +131, 135, 136, 137, 133, 134, 131, 119, // 24-31 +129, 120, 120, 125, 126, 133, 132, 136, // 32-39 +136, 134, 134, 135, 130, 134, 134, 134, // 40-47 +135, 135, 134, 125, 125, 117, 112, 110, // 48-55 +106, 106, 104, 105, 106, 102, 115, 131, // 56-63 +149, 145, 148, 176, 131, 146, 144, 123, // 64-71 +130, 125, 135, 120, 133, 132, 120, 120, // 72-79 +121, 114, 115, 121, 129, 131, 143, 151, // 80-87 +145, 150, 144, 131, 128, 118, 112, 110, // 88-95 +110, 108, 105, 111, 104, 102, 105, 107, // 96-103 +110, 121, 143, 157, 149, 162, 170, 134, // 104-111 +147, 135, 121, 121, 122, 124, 115, 130, // 112-119 +125, 121, 125, 125, 123, 128, 134, 138, // 120-127 +140, 147, 145, 143, 139, 133, 122, 112, // 128-135 +109, 95, 98, 97, 93, 95, 101, 105, // 136-143 +113, 128, 147, 168, 152, 170, 174, 134, // 144-151 +153, 134, 123, 122, 122, 123, 112, 124, // 152-159 +118, 112, 117, 120, 119, 130, 139, 145, // 160-167 +149, 158, 151, 145, 143, 124, 118, 110, // 168-175 +100, 95, 95, 91, 89, 93, 95, 103, // 176-183 +115, 129, 156, 172, 155, 184, 172, 138, // 184-191 +160, 130, 124, 119, 123, 116, 111, 123, // 192-199 +111, 111, 116, 118, 121, 131, 143, 151, // 200-207 +150, 164, 151, 143, 141, 119, 112, 103, // 208-215 + 93, 91, 89, 91, 87, 91, 95, 99, // 216-223 +118, 134, 164, 174, 164, 184, 164, 148, // 224-231 +162, 122, 129, 115, 121, 112, 111, 119, // 232-239 +106, 112, 114, 116, 124, 135, 147, 155, // 240-247 +160, 164, 151, 148, 133, 118, 111, 97, // 248-255 + 93, 87, 87, 87, 85, 85, 91, 102, // 256-263 +118, 140, 174, 176, 172, 184, 160, 157, // 264-271 +149, 128, 125, 111, 125, 106, 113, 114, // 272-279 +107, 110, 112, 118, 123, 139, 154, 155, // 280-287 +168, 164, 152, 148, 128, 120, 104, 98, // 288-295 + 89, 87, 87, 87, 87, 85, 91, 100, // 296-303 +112, 137, 170, 180, 172, 184, 174, 146, // 304-311 +160, 122, 123, 111, 121, 108, 108, 119, // 312-319 +106, 110, 114, 118, 120, 137, 152, 158, // 320-327 +162, 172, 153, 149, 135, 118, 111, 97, // 328-335 + 93, 87, 89, 87, 89, 87, 91, 98, // 336-343 +106, 121, 152, 178, 176, 184, 184, 156, // 344-351 +151, 147, 117, 116, 112, 118, 105, 114, // 352-359 +115, 108, 113, 120, 120, 129, 146, 155, // 360-367 +160, 166, 162, 149, 142, 125, 114, 102, // 368-375 + 98, 87, 87, 87, 87, 89, 89, 95, // 376-383 + 99, 111, 131, 158, 182, 176, 184, 184, // 384-391 +144, 153, 138, 113, 115, 112, 116, 105, // 392-399 +118, 115, 110, 116, 122, 120, 133, 146, // 400-407 +157, 158, 166, 162, 145, 140, 121, 110, // 408-415 +101, 95, 89, 87, 93, 91, 93, 95, // 416-423 + 95, 102, 111, 122, 154, 178, 178, 176, // 424-431 +184, 160, 135, 150, 112, 112, 112, 119, // 432-439 +108, 114, 125, 112, 117, 125, 124, 127, // 440-447 +144, 153, 156, 158, 162, 146, 136, 125, // 448-455 +112, 100, 98, 91, 89, 93, 93, 93, // 456-463 + 95, 101, 102, 109, 121, 146, 174, 178, // 464-471 +172, 184, 164, 136, 147, 116, 114, 111, // 472-479 +119, 112, 112, 125, 115, 116, 125, 125, // 480-487 +128, 141, 150, 154, 157, 158, 148, 140, // 488-495 +125, 115, 105, 99, 95, 91, 95, 95, // 496-503 + 97, 99, 101, 102, 108, 114, 131, 156, // 504-511 +178, 168, 174, 184, 139, 140, 135, 112, // 512-519 +112, 115, 123, 112, 123, 125, 117, 120, // 520-527 +128, 124, 131, 143, 151, 153, 152, 154, // 528-535 +143, 129, 123, 110, 102, 101, 93, 93, // 536-543 + 95, 98, 100, 102, 104, 105, 111, 120, // 544-551 +140, 168, 172, 168, 182, 166, 133, 142, // 552-559 +121, 113, 114, 121, 120, 115, 130, 121, // 560-567 +119, 124, 127, 125, 136, 147, 148, 153, // 568-575 +156, 144, 138, 125, 114, 107, 102, 99, // 576-583 + 93, 99, 100, 99, 103, 104, 103, 106, // 584-591 +114, 126, 149, 174, 170, 168, 182, 144, // 592-599 +133, 138, 112, 116, 116, 125, 118, 121, // 600-607 +130, 118, 120, 124, 125, 129, 140, 149, // 608-615 +152, 153, 151, 144, 132, 119, 114, 105, // 616-623 +103, 99, 97, 101, 101, 102, 103, 103, // 624-631 +103, 108, 117, 138, 160, 174, 164, 174, // 632-639 +172, 129, 142, 123, 114, 118, 120, 129, // 640-647 +116, 130, 124, 118, 120, 124, 124, 131, // 648-655 +143, 151, 149, 156, 150, 134, 133, 114, // 656-663 +112, 106, 103, 102, 99, 106, 101, 104, // 664-671 +107, 103, 105, 111, 118, 137, 162, 172, // 672-679 +160, 174, 164, 125, 137, 124, 115, 116, // 680-687 +125, 128, 120, 129, 128, 118, 120, 124, // 688-695 +124, 131, 142, 148, 148, 153, 146, 135, // 696-703 +131, 115, 112, 109, 106, 105, 103, 108, // 704-711 +105, 105, 109, 104, 103, 108, 116, 129, // 712-719 +152, 170, 162, 160, 172, 132, 127, 133, // 720-727 +116, 120, 124, 134, 125, 127, 131, 120, // 728-735 +117, 122, 123, 126, 137, 144, 146, 147, // 736-743 +148, 138, 127, 123, 112, 111, 110, 108, // 744-751 +107, 107, 110, 105, 108, 107, 105, 105, // 752-759 +112, 120, 138, 166, 166, 153, 170, 148, // 760-767 +123, 134, 121, 121, 122, 133, 135, 126, // 768-775 +130, 125, 117, 116, 121, 123, 130, 140, // 776-783 +145, 146, 146, 143, 133, 124, 120, 112, // 784-791 +113, 112, 112, 110, 109, 111, 105, 109, // 792-799 +108, 103, 107, 112, 121, 143, 162, 164, // 800-807 +151, 164, 143, 121, 133, 120, 127, 125, // 808-815 +136, 138, 129, 129, 124, 116, 115, 119, // 816-823 +124, 129, 139, 146, 143, 143, 142, 134, // 824-831 +123, 120, 119, 114, 114, 116, 112, 110, // 832-839 +111, 110, 106, 108, 105, 104, 109, 118, // 840-847 +131, 156, 164, 148, 157, 155, 119, 132, // 848-855 +126, 125, 132, 131, 144, 131, 129, 126, // 856-863 +118, 112, 116, 120, 128, 134, 143, 145, // 864-871 +142, 140, 136, 129, 123, 119, 123, 118, // 872-879 +116, 119, 111, 112, 110, 110, 108, 107, // 880-887 +107, 106, 110, 120, 138, 156, 160, 146, // 888-895 +158, 146, 120, 134, 125, 133, 132, 136, // 896-903 +143, 131, 125, 123, 116, 112, 116, 122, // 904-911 +130, 136, 143, 143, 143, 138, 133, 129, // 912-919 +125, 121, 123, 123, 120, 117, 112, 110, // 920-927 +108, 110, 110, 109, 107, 106, 109, 121, // 928-935 +135, 151, 162, 146, 149, 151, 123, 129, // 936-943 +131, 133, 138, 133, 143, 135, 123, 120, // 944-951 +116, 112, 115, 121, 132, 137, 142, 143, // 952-959 +142, 137, 130, 132, 124, 123, 126, 120, // 960-967 +121, 117, 112, 109, 108, 110, 108, 110, // 968-975 +107, 103, 111, 118, 131, 151, 162, 149, // 976-983 +145, 148, 129, 129, 126, 134, 140, 133, // 984-991 +141, 136, 125, 119, 114, 114, 116, 118, // 992-999 +131, 136, 141, 142, 138, 138, 133, 128, // 1000-1007 +128, 129, 124, 125, 123, 120, 116, 112, // 1008-1015 +110, 111, 111, 112, 111, 107, 107, 110, // 1016-1023 +117, 132, 148, 158, 147, 144, 146, 130, // 1024-1031 +129, 129, 138, 142, 136, 139, 136, 127, // 1032-1039 +117, 113, 114, 118, 119, 130, 137, 141, // 1040-1047 +139, 137, 137, 132, 126, 129, 130, 129, // 1048-1055 +125, 124, 121, 116, 111, 109, 111, 111, // 1056-1063 +111, 110, 110, 107, 108, 117, 131, 148, // 1064-1071 +157, 143, 145, 146, 128, 131, 129, 139, // 1072-1079 +143, 136, 140, 135, 124, 118, 112, 114, // 1080-1087 +119, 119, 131, 136, 140, 139, 135, 136, // 1088-1095 +134, 128, 130, 131, 129, 129, 122, 122, // 1096-1103 +118, 112, 111, 111, 112, 112, 110, 110, // 1104-1111 +108, 108, 112, 124, 138, 155, 153, 137, // 1112-1119 +146, 139, 130, 132, 131, 146, 143, 135, // 1120-1127 +135, 129, 120, 115, 110, 117, 122, 123, // 1128-1135 +133, 137, 139, 136, 132, 135, 134, 130, // 1136-1143 +131, 132, 132, 128, 121, 120, 118, 112, // 1144-1151 +110, 110, 113, 112, 110, 110, 108, 108, // 1152-1159 +112, 123, 139, 153, 151, 139, 145, 139, // 1160-1167 +133, 133, 133, 147, 142, 138, 133, 127, // 1168-1175 +121, 115, 111, 117, 121, 125, 132, 134, // 1176-1183 +139, 136, 134, 134, 135, 133, 132, 131, // 1184-1191 +132, 128, 122, 120, 119, 116, 112, 111, // 1192-1199 +112, 112, 112, 112, 109, 107, 110, 114, // 1200-1207 +128, 143, 153, 147, 140, 143, 137, 138, // 1208-1215 +132, 138, 144, 142, 136, 127, 124, 120, // 1216-1223 +116, 112, 118, 121, 129, 131, 134, 137, // 1224-1231 +137, 135, 135, 134, 134, 133, 131, 130, // 1232-1239 +125, 121, 119, 118, 116, 114, 112, 112, // 1240-1247 +113, 112, 111, 107, 108, 110, 112, 124, // 1248-1255 +141, 153, 147, 141, 142, 138, 139, 133, // 1256-1263 +136, 143, 143, 138, 130, 123, 121, 118, // 1264-1271 +112, 115, 120, 127, 133, 134, 136, 138, // 1272-1279 +138, 136, 134, 133, 133, 132, 129, 125, // 1280-1287 +123, 121, 120, 117, 115, 112, 113, 113, // 1288-1295 +112, 112, 111, 109, 106, 107, 115, 127, // 1296-1303 +143, 153, 144, 142, 143, 138, 140, 133, // 1304-1311 +136, 143, 142, 139, 129, 121, 120, 116, // 1312-1319 +112, 114, 119, 129, 134, 136, 137, 138, // 1320-1327 +138, 137, 134, 133, 133, 131, 130, 126, // 1328-1335 +123, 121, 120, 118, 117, 115, 115, 113, // 1336-1343 +112, 112, 111, 108, 106, 105, 111, 119, // 1344-1351 +135, 148, 149, 143, 142, 139, 140, 139, // 1352-1359 +137, 142, 142, 142, 135, 125, 119, 115, // 1360-1367 +113, 115, 116, 123, 130, 135, 138, 138, // 1368-1375 +138, 137, 136, 135, 133, 131, 131, 129, // 1376-1383 +126, 123, 121, 120, 120, 119, 118, 115, // 1384-1391 +113, 112, 112, 111, 107, 105, 103, 107, // 1392-1399 +114, 125, 140, 148, 145, 144, 143, 142, // 1400-1407 +145, 142, 143, 143, 140, 139, 131, 123, // 1408-1415 +118, 115, 114, 116, 118, 124, 130, 134, // 1416-1423 +138, 139, 139, 139, 138, 136, 135, 131, // 1424-1431 +131, 128, 124, 123, 121, 121, 121, 119, // 1432-1439 +119, 116, 114, 112, 112, 111, 108, 107, // 1440-1447 +106, 108, 112, 120, 130, 137, 141, 142, // 1448-1455 +143, 143, 146, 146, 144, 143, 141, 138, // 1456-1463 +133, 129, 124, 122, 121, 122, 124, 125, // 1464-1471 +129, 131, 132, 133, 133, 132, 132, 131, // 1472-1479 +131, 130, 130, 129, 129, 127, 128, 128, // 1480-1487 +126, 126, 125, 124, 123, 122, 119, 117, // 1488-1495 +114, 112, 111, 110, 109, 109, 110, 112, // 1496-1503 +113, 116, 120, 124, 129, 133, 138, 142, // 1504-1511 +144, 146, 147, 147, 147, 146, 143, 142, // 1512-1519 +139, 136, 133, 130, 128, 124, 122, 120, // 1520-1527 +120, 119, 120, 120, 121, 123, 124, 125, // 1528-1535 +128, 129, 130, 130, 130, 130, 129, 127, // 1536-1543 +125, 123, 121, 118, 116, 114, 113, 112, // 1544-1551 +111, 110, 110, 111, 112, 115, 119, 122, // 1552-1559 +125, 131, 136, 140, 144, 147, 148, 150, // 1560-1567 +151, 149, 148, 145, 143, 139, 135, 131, // 1568-1575 +128, 124, 121, 119, 118, 117, 116, 116, // 1576-1583 +118, 119, 120, 121, 124, 125, 128, 130, // 1584-1591 +131, 131, 131, 130, 130, 128, 125, 122, // 1592-1599 +119, 117, 114, 112, 111, 109, 108, 108, // 1600-1607 +110, 112, 116, 120, 123, 129, 134, 140, // 1608-1615 +144, 148, 151, 152, 154, 152, 151, 147, // 1616-1623 +144, 141, 136, 133, 129, 125, 121, 119, // 1624-1631 +117, 116, 115, 115, 116, 116, 118, 119, // 1632-1639 +121, 123, 125, 128, 129, 130, 131, 131, // 1640-1647 +131, 131, 130, 128, 124, 121, 119, 117, // 1648-1655 +114, 112, 111, 110, 110, 110, 111, 114, // 1656-1663 +118, 121, 125, 131, 137, 143, 147, 149, // 1664-1671 +151, 153, 153, 151, 149, 146, 143, 139, // 1672-1679 +134, 130, 125, 122, 119, 117, 115, 114, // 1680-1687 +114, 115, 115, 116, 118, 120, 123, 124, // 1688-1695 +128, 129, 130, 131, 132, 132, 132, 131, // 1696-1703 +129, 128, 124, 121, 119, 117, 115, 112, // 1704-1711 +110, 111, 111, 111, 112, 115, 119, 123, // 1712-1719 +127, 131, 137, 142, 147, 149, 152, 152, // 1720-1727 +153, 151, 148, 144, 142, 138, 133, 129, // 1728-1735 +125, 121, 119, 116, 115, 114, 114, 115, // 1736-1743 +116, 117, 119, 121, 123, 125, 128, 130, // 1744-1751 +131, 133, 133, 133, 133, 132, 131, 129, // 1752-1759 +125, 123, 121, 119, 116, 115, 113, 112, // 1760-1767 +112, 112, 112, 113, 115, 119, 123, 127, // 1768-1775 +131, 135, 140, 143, 147, 148, 149, 149, // 1776-1783 +149, 147, 144, 141, 138, 133, 129, 124, // 1784-1791 +121, 119, 118, 116, 115, 115, 116, 117, // 1792-1799 +118, 120, 121, 124, 125, 129, 130, 131, // 1800-1807 +132, 133, 133, 133, 132, 131, 130, 128, // 1808-1815 +125, 123, 121, 119, 118, 116, 115, 114, // 1816-1823 +113, 113, 113, 114, 116, 118, 120, 124, // 1824-1831 +129, 131, 134, 138, 142, 144, 147, 146, // 1832-1839 +146, 146, 144, 142, 139, 135, 132, 127, // 1840-1847 +124, 122, 120, 119, 118, 118, 118, 119, // 1848-1855 +120, 121, 123, 124, 125, 128, 129, 130, // 1856-1863 +130, 130, 131, 131, 130, 130, 129, 129, // 1864-1871 +126, 125, 124, 122, 120, 119, 118, 117, // 1872-1879 +116, 116, 115, 115, 115, 116, 117, 119, // 1880-1887 +121, 125, 129, 130, 134, 137, 140, 143, // 1888-1895 +144, 144, 144, 144, 143, 140, 137, 134, // 1896-1903 +131, 127, 125, 123, 121, 120, 120, 120, // 1904-1911 +120, 120, 121, 123, 123, 124, 125, 127, // 1912-1919 +128, 129, 129, 129, 129, 129, 129, 129, // 1920-1927 +129, 127, 126, 125, 124, 123, 122, 121, // 1928-1935 +120, 119, 118, 118, 116, 115, 115, 116, // 1936-1943 +117, 118, 120, 123, 126, 129, 131, 134, // 1944-1951 +138, 142, 143, 143, 143, 144, 143, 142, // 1952-1959 +139, 136, 134, 131, 128, 125, 123, 122, // 1960-1967 +121, 121, 121, 121, 121, 123, 123, 124, // 1968-1975 +125, 125, 126, 127, 128, 128, 129, 129, // 1976-1983 +129, 129, 129, 128, 127, 126, 125, 125, // 1984-1991 +124, 123, 122, 121, 120, 119, 118, 118, // 1992-1999 +116, 116, 117, 118, 119, 120, 122, 125, // 2000-2007 +129, 131, 134, 137, 140, 143, 143, 143, // 2008-2015 +143, 143, 142, 139, 136, 134, 131, 129, // 2016-2023 +125, 124, 123, 122, 121, 121, 121, 121, // 2024-2031 +122, 123, 123, 124, 125, 125, 125, 126, // 2032-2039 +126, 127, 128, 128, 128, 128, 128, 127, // 2040-2047 +128, 126, 125, 125, 124, 123, 122, 121, // 2048-2055 +120, 119, 118, 117, 116, 116, 117, 118, // 2056-2063 +119, 120, 123, 126, 129, 131, 134, 138, // 2064-2071 +141, 143, 143, 143, 143, 143, 140, 138, // 2072-2079 +135, 133, 130, 128, 125, 123, 122, 121, // 2080-2087 +121, 121, 121, 122, 123, 123, 123, 124, // 2088-2095 +124, 125, 125, 125, 126, 127, 128, 127, // 2096-2103 +129, 129, 129, 129, 129, 128, 127, 126, // 2104-2111 +125, 124, 123, 121, 120, 120, 119, 118, // 2112-2119 +117, 116, 117, 118, 118, 120, 121, 125, // 2120-2127 +128, 130, 133, 136, 139, 142, 143, 143, // 2128-2135 +143, 143, 141, 139, 136, 134, 131, 129, // 2136-2143 +126, 124, 123, 123, 122, 121, 121, 122, // 2144-2151 +123, 123, 123, 124, 124, 124, 125, 125, // 2152-2159 +125, 126, 128, 127, 128, 129, 129, 129, // 2160-2167 +129, 129, 128, 127, 127, 125, 124, 123, // 2168-2175 +121, 120, 119, 118, 118, 117, 117, 117, // 2176-2183 +118, 118, 120, 122, 125, 128, 130, 133, // 2184-2191 +136, 139, 142, 143, 143, 143, 143, 141, // 2192-2199 +139, 136, 134, 131, 129, 127, 125, 124, // 2200-2207 +123, 122, 122, 122, 123, 123, 123, 123, // 2208-2215 +124, 124, 124, 124, 125, 125, 125, 126, // 2216-2223 +128, 127, 129, 129, 129, 129, 129, 129, // 2224-2231 +128, 128, 126, 125, 124, 123, 121, 120, // 2232-2239 +120, 119, 118, 118, 118, 118, 118, 119, // 2240-2247 +120, 122, 125, 128, 130, 133, 136, 139, // 2248-2255 +141, 142, 143, 143, 142, 141, 139, 136, // 2256-2263 +134, 131, 130, 128, 125, 124, 124, 123, // 2264-2271 +123, 123, 123, 123, 123, 123, 123, 123, // 2272-2279 +123, 123, 124, 124, 125, 125, 128, 128, // 2280-2287 +129, 129, 130, 130, 130, 129, 129, 128, // 2288-2295 +128, 125, 124, 123, 122, 121, 120, 119, // 2296-2303 +119, 118, 118, 118, 118, 119, 120, 121, // 2304-2311 +124, 126, 129, 131, 134, 138, 140, 142, // 2312-2319 +142, 143, 143, 142, 140, 137, 135, 133, // 2320-2327 +130, 129, 126, 125, 124, 123, 123, 122, // 2328-2335 +122, 122, 122, 122, 122, 122, 122, 123, // 2336-2343 +123, 124, 124, 125, 127, 127, 129, 130, // 2344-2351 +130, 130, 130, 130, 130, 129, 127, 126, // 2352-2359 +125, 124, 123, 121, 120, 120, 119, 119, // 2360-2367 +118, 118, 118, 118, 119, 120, 121, 124, // 2368-2375 +126, 129, 131, 135, 138, 140, 142, 143, // 2376-2383 +143, 143, 142, 140, 138, 135, 133, 131, // 2384-2391 +129, 126, 125, 124, 123, 122, 122, 121, // 2392-2399 +121, 121, 121, 121, 121, 121, 122, 123, // 2400-2407 +123, 124, 125, 126, 128, 129, 130, 130, // 2408-2415 +131, 131, 130, 130, 129, 128, 127, 125, // 2416-2423 +124, 123, 122, 121, 120, 120, 119, 119, // 2424-2431 +118, 118, 118, 118, 119, 120, 122, 124, // 2432-2439 +126, 129, 131, 135, 138, 140, 142, 142, // 2440-2447 +143, 143, 142, 140, 137, 135, 133, 130, // 2448-2455 +129, 125, 124, 123, 122, 121, 121, 120, // 2456-2463 +120, 120, 120, 120, 120, 121, 122, 123, // 2464-2471 +124, 124, 125, 127, 129, 130, 131, 131, // 2472-2479 +131, 131, 131, 130, 130, 129, 127, 126, // 2480-2487 +125, 124, 123, 121, 121, 120, 120, 119, // 2488-2495 +119, 119, 118, 119, 119, 120, 121, 123, // 2496-2503 +125, 127, 130, 133, 136, 139, 141, 143, // 2504-2511 +143, 143, 143, 142, 139, 137, 135, 132, // 2512-2519 +130, 127, 125, 123, 123, 121, 121, 120, // 2520-2527 +120, 120, 120, 120, 120, 121, 121, 123, // 2528-2535 +124, 125, 126, 128, 129, 130, 131, 132, // 2536-2543 +132, 132, 132, 131, 130, 130, 127, 128, // 2544-2551 +125, 124, 123, 122, 121, 121, 120, 119, // 2552-2559 +118, 117, 117, 118, 118, 118, 119, 122, // 2560-2567 +126, 130, 131, 134, 135, 139, 143, 146, // 2568-2575 +147, 146, 144, 142, 138, 133, 128, 122, // 2576-2583 +119, 116, 115, 116, 118, 121, 123, 125, // 2584-2591 +129, 131, 133, 133, 133, 131, 131, 129, // 2592-2599 +128, 124, 122, 120, 120, 119, 121, 121, // 2600-2607 +124, 126, 129, 132, 133, 133, 132, 131, // 2608-2615 +129, 125, 123, 121, 119, 118, 115, 114, // 2616-2623 +114, 113, 114, 116, 119, 121, 125, 132, // 2624-2631 +142, 149, 152, 144, 140, 133, 132, 133, // 2632-2639 +130, 131, 130, 132, 131, 128, 123, 120, // 2640-2647 +119, 123, 125, 130, 133, 135, 138, 135, // 2648-2655 +133, 129, 124, 123, 121, 120, 121, 120, // 2656-2663 +121, 121, 121, 123, 124, 126, 129, 131, // 2664-2671 +133, 134, 134, 134, 131, 129, 126, 124, // 2672-2679 +121, 120, 120, 119, 119, 119, 119, 120, // 2680-2687 +121, 121, 122, 122, 121, 119, 119, 120, // 2688-2695 +122, 123, 124, 130, 138, 143, 144, 138, // 2696-2703 +134, 131, 135, 138, 136, 138, 136, 138, // 2704-2711 +134, 129, 121, 119, 119, 123, 123, 125, // 2712-2719 +127, 129, 129, 125, 124, 123, 123, 125, // 2720-2727 +125, 126, 129, 128, 127, 126, 126, 128, // 2728-2735 +129, 130, 130, 131, 131, 130, 129, 127, // 2736-2743 +125, 124, 123, 121, 120, 120, 121, 121, // 2744-2751 +121, 121, 121, 123, 123, 121, 119, 119, // 2752-2759 +120, 122, 123, 123, 123, 124, 129, 136, // 2760-2767 +143, 144, 143, 139, 137, 135, 136, 135, // 2768-2775 +135, 135, 134, 133, 127, 121, 119, 119, // 2776-2783 +121, 124, 124, 129, 129, 131, 129, 128, // 2784-2791 +125, 125, 127, 128, 127, 128, 127, 128, // 2792-2799 +126, 125, 125, 126, 129, 129, 130, 130, // 2800-2807 +130, 130, 129, 126, 124, 123, 121, 120, // 2808-2815 +121, 121, 121, 120, 119, 120, 121, 123, // 2816-2823 +121, 120, 120, 122, 123, 124, 125, 126, // 2824-2831 +130, 133, 137, 139, 141, 141, 139, 136, // 2832-2839 +135, 134, 134, 133, 133, 130, 129, 125, // 2840-2847 +123, 121, 121, 122, 123, 125, 126, 128, // 2848-2855 +129, 128, 128, 126, 127, 128, 127, 128, // 2856-2863 +127, 128, 127, 126, 126, 125, 128, 129, // 2864-2871 +129, 129, 129, 129, 128, 126, 124, 122, // 2872-2879 +121, 121, 121, 120, 120, 120, 120, 120, // 2880-2887 +120, 121, 123, 122, 122, 124, 125, 125, // 2888-2895 +125, 128, 130, 134, 136, 137, 139, 139, // 2896-2903 +139, 136, 134, 133, 133, 134, 133, 131, // 2904-2911 +129, 128, 125, 124, 123, 123, 124, 126, // 2912-2919 +128, 128, 129, 129, 130, 129, 126, 126, // 2920-2927 +126, 126, 125, 125, 125, 125, 125, 124, // 2928-2935 +123, 124, 124, 124, 124, 123, 124, 124, // 2936-2943 +123, 121, 120, 119, 120, 119, 119, 119, // 2944-2951 +121, 123, 124, 125, 128, 130, 131, 133, // 2952-2959 +134, 136, 138, 138, 138, 138, 136, 135, // 2960-2967 +133, 132, 132, 131, 131, 130, 129, 129, // 2968-2975 +127, 128, 125, 125, 125, 126, 127, 127, // 2976-2983 +125, 125, 124, 124, 123, 122, 122, 123, // 2984-2991 +123, 123, 123, 123, 123, 123, 123, 124, // 2992-2999 +125, 125, 125, 124, 124, 123, 123, 123, // 3000-3007 +123, 123, 123, 123, 123, 123, 124, 128, // 3008-3015 +128, 130, 131, 131, 133, 131, 134, 134, // 3016-3023 +135, 136, 134, 134, 133, 133, 133, 132, // 3024-3031 +132, 132, 131, 131, 129, 129, 129, 128, // 3032-3039 +128, 125, 125, 125, 125, 124, 123, 123, // 3040-3047 +123, 122, 122, 121, 123, 123, 123, 123, // 3048-3055 +123, 124, 124, 124, 124, 125, 125, 126, // 3056-3063 +126, 126, 125, 124, 125, 127, 129, 127, // 3064-3071 +124, 125, 126, 129, 129, 128, 130, 130, // 3072-3079 +131, 130, 130, 130, 131, 132, 131, 130, // 3080-3087 +130, 131, 131, 131, 131, 131, 131, 131, // 3088-3095 +130, 130, 129, 130, 129, 129, 129, 127, // 3096-3103 +128, 125, 125, 124, 124, 123, 123, 123, // 3104-3111 +124, 124, 124, 123, 123, 123, 124, 124, // 3112-3119 +124, 125, 125, 125, 125, 125, 125, 128, // 3120-3127 +127, 128, 126, 126, 126, 127, 128, 128, // 3128-3135 +129, 129, 127}; + +const char N[3018] = {129, 131, 130, 130, 132, 130, 128, 128, // 0-7 +129, 125, 128, 130, 129, 130, 130, 130, // 8-15 +127, 128, 128, 124, 123, 124, 122, 121, // 16-23 +121, 118, 116, 118, 116, 119, 131, 117, // 24-31 +115, 131, 116, 124, 139, 128, 124, 150, // 32-39 +130, 123, 144, 130, 133, 132, 143, 135, // 40-47 +134, 143, 134, 128, 132, 129, 123, 129, // 48-55 +131, 129, 128, 133, 124, 119, 118, 111, // 56-63 +105, 107, 105, 103, 105, 105, 105, 102, // 64-71 +119, 152, 170, 147, 166, 180, 115, 140, // 72-79 +134, 118, 125, 133, 147, 127, 141, 135, // 80-87 +115, 112, 116, 108, 118, 133, 142, 146, // 88-95 +150, 152, 141, 135, 125, 120, 115, 118, // 96-103 +114, 115, 112, 107, 103, 100, 98, 99, // 104-111 +103, 110, 111, 121, 147, 172, 164, 153, // 112-119 +172, 136, 118, 132, 116, 121, 125, 142, // 120-127 +136, 132, 138, 124, 114, 115, 116, 120, // 128-135 +130, 146, 147, 147, 152, 138, 132, 123, // 136-143 +118, 113, 116, 116, 112, 112, 107, 106, // 144-151 +101, 105, 102, 102, 110, 111, 121, 147, // 152-159 +180, 168, 148, 180, 132, 110, 130, 111, // 160-167 +119, 120, 147, 138, 134, 143, 125, 112, // 168-175 +114, 116, 116, 130, 149, 153, 151, 157, // 176-183 +144, 127, 123, 112, 108, 113, 112, 114, // 184-191 +111, 112, 107, 102, 106, 102, 99, 104, // 192-199 +112, 115, 142, 182, 172, 152, 176, 143, // 200-207 +107, 129, 115, 116, 121, 145, 143, 131, // 208-215 +143, 128, 111, 112, 116, 114, 128, 147, // 216-223 +153, 149, 157, 144, 125, 122, 112, 108, // 224-231 +112, 114, 112, 112, 112, 107, 102, 107, // 232-239 + 99, 98, 110, 112, 120, 154, 184, 168, // 240-247 +153, 180, 129, 107, 131, 112, 120, 124, // 248-255 +152, 137, 134, 142, 119, 110, 112, 117, // 256-263 +117, 136, 155, 160, 157, 153, 138, 121, // 264-271 +109, 108, 107, 112, 113, 112, 115, 108, // 272-279 + 99, 103, 95, 98, 104, 108, 125, 142, // 280-287 +184, 182, 153, 176, 148, 107, 124, 115, // 288-295 +120, 121, 143, 144, 128, 138, 124, 112, // 296-303 +112, 120, 124, 138, 156, 164, 149, 148, // 304-311 +136, 114, 112, 108, 108, 109, 112, 112, // 312-319 +105, 93, 99, 95, 93, 107, 109, 118, // 320-327 +133, 170, 184, 160, 168, 176, 116, 119, // 328-335 +128, 113, 121, 131, 145, 125, 130, 131, // 336-343 +112, 112, 122, 124, 134, 152, 164, 153, // 344-351 +147, 144, 120, 112, 111, 107, 107, 109, // 352-359 +109, 106, 93, 93, 98, 91, 101, 111, // 360-367 +114, 131, 164, 184, 170, 164, 180, 129, // 368-375 +117, 125, 114, 119, 125, 144, 127, 129, // 376-383 +129, 115, 111, 119, 125, 133, 149, 164, // 384-391 +158, 148, 147, 125, 112, 111, 107, 106, // 392-399 +107, 108, 108, 97, 91, 99, 91, 97, // 400-407 +108, 115, 125, 149, 184, 178, 160, 178, // 408-415 +147, 112, 127, 115, 117, 120, 139, 136, // 416-423 +120, 133, 119, 111, 117, 126, 132, 146, // 424-431 +162, 162, 149, 147, 133, 114, 113, 107, // 432-439 +107, 105, 107, 104, 97, 91, 98, 95, // 440-447 + 95, 108, 115, 120, 147, 184, 178, 162, // 448-455 +176, 156, 113, 125, 120, 114, 119, 138, // 456-463 +134, 122, 130, 120, 112, 116, 127, 130, // 464-471 +144, 160, 162, 151, 146, 138, 117, 112, // 472-479 +112, 106, 106, 105, 106, 100, 91, 97, // 480-487 + 98, 97, 107, 112, 121, 139, 176, 184, // 488-495 +160, 172, 166, 118, 121, 123, 116, 117, // 496-503 +132, 138, 120, 127, 124, 113, 115, 127, // 504-511 +133, 143, 157, 164, 151, 145, 139, 118, // 512-519 +115, 112, 110, 107, 106, 105, 99, 91, // 520-527 + 93, 99, 98, 108, 112, 119, 140, 170, // 528-535 +184, 164, 168, 172, 121, 122, 125, 114, // 536-543 +118, 128, 140, 120, 125, 125, 114, 114, // 544-551 +125, 132, 139, 155, 162, 153, 144, 143, // 552-559 +121, 114, 114, 110, 108, 106, 105, 103, // 560-567 + 95, 91, 101, 100, 104, 112, 118, 129, // 568-575 +157, 184, 168, 158, 176, 134, 115, 124, // 576-583 +119, 119, 119, 143, 126, 120, 127, 116, // 584-591 +112, 120, 131, 135, 147, 162, 158, 147, // 592-599 +143, 131, 115, 111, 114, 109, 109, 107, // 600-607 +106, 103, 91, 95, 102, 101, 110, 112, // 608-615 +123, 143, 176, 182, 155, 170, 155, 114, // 616-623 +123, 120, 121, 119, 134, 139, 119, 125, // 624-631 +121, 113, 115, 126, 134, 140, 156, 162, // 632-639 +150, 143, 138, 121, 112, 112, 112, 110, // 640-647 +110, 106, 106, 101, 91, 99, 102, 103, // 648-655 +114, 115, 125, 155, 184, 166, 155, 172, // 656-663 +135, 112, 125, 119, 122, 121, 143, 133, // 664-671 +120, 130, 118, 113, 118, 130, 133, 143, // 672-679 +158, 156, 145, 143, 130, 118, 112, 112, // 680-687 +114, 112, 111, 105, 108, 102, 91, 103, // 688-695 +105, 105, 112, 115, 133, 155, 184, 162, // 696-703 +155, 170, 125, 116, 120, 125, 122, 126, // 704-711 +145, 130, 124, 124, 118, 113, 118, 130, // 712-719 +135, 143, 157, 155, 144, 140, 130, 118, // 720-727 +112, 114, 116, 114, 112, 108, 108, 106, // 728-735 + 93, 103, 107, 101, 113, 115, 121, 149, // 736-743 +180, 166, 146, 170, 136, 110, 125, 125, // 744-751 +125, 124, 145, 138, 121, 129, 121, 112, // 752-759 +116, 129, 133, 138, 153, 155, 143, 140, // 760-767 +135, 119, 115, 115, 118, 117, 115, 112, // 768-775 +106, 110, 99, 97, 108, 105, 110, 111, // 776-783 +119, 138, 166, 178, 147, 162, 151, 113, // 784-791 +121, 123, 132, 122, 139, 144, 125, 125, // 792-799 +123, 116, 112, 121, 130, 133, 143, 150, // 800-807 +144, 142, 141, 136, 119, 119, 125, 114, // 808-815 +118, 119, 116, 108, 109, 116, 99, 105, // 816-823 +112, 102, 107, 111, 120, 140, 168, 166, // 824-831 +141, 160, 138, 114, 125, 128, 137, 129, // 832-839 +146, 143, 125, 125, 119, 113, 112, 121, // 840-847 +129, 133, 142, 146, 140, 140, 140, 129, // 848-855 +123, 125, 122, 121, 122, 121, 116, 110, // 856-863 +110, 112, 107, 102, 111, 105, 105, 110, // 864-871 +115, 137, 164, 162, 142, 157, 143, 115, // 872-879 +128, 131, 136, 132, 144, 144, 128, 124, // 880-887 +120, 112, 111, 120, 126, 132, 141, 145, // 888-895 +139, 137, 140, 135, 123, 128, 129, 120, // 896-903 +121, 121, 118, 110, 109, 112, 109, 101, // 904-911 +110, 108, 100, 110, 112, 125, 153, 168, // 912-919 +148, 148, 156, 123, 123, 130, 137, 134, // 920-927 +136, 149, 132, 123, 120, 115, 110, 114, // 928-935 +124, 130, 136, 145, 142, 137, 138, 136, // 936-943 +135, 123, 129, 132, 119, 121, 119, 116, // 944-951 +110, 108, 115, 110, 102, 110, 107, 101, // 952-959 +109, 112, 127, 154, 168, 143, 149, 155, // 960-967 +120, 125, 129, 138, 134, 138, 149, 130, // 968-975 +123, 119, 114, 110, 114, 124, 130, 137, // 976-983 +145, 142, 136, 137, 136, 134, 125, 130, // 984-991 +133, 121, 122, 121, 118, 112, 108, 114, // 992-999 +111, 105, 108, 110, 103, 107, 111, 118, // 1000-1007 +142, 166, 149, 143, 160, 131, 123, 131, // 1008-1015 +136, 139, 133, 149, 137, 124, 121, 115, // 1016-1023 +112, 111, 121, 129, 132, 142, 143, 139, // 1024-1031 +135, 136, 138, 130, 130, 133, 130, 122, // 1032-1039 +122, 121, 115, 111, 112, 112, 112, 106, // 1040-1047 +110, 110, 103, 109, 108, 121, 143, 160, // 1048-1055 +148, 143, 160, 131, 127, 134, 137, 140, // 1056-1063 +133, 146, 135, 122, 120, 115, 112, 112, // 1064-1071 +121, 129, 133, 139, 141, 139, 137, 135, // 1072-1079 +138, 136, 131, 130, 133, 123, 118, 123, // 1080-1087 +116, 112, 110, 115, 114, 105, 110, 112, // 1088-1095 +103, 106, 108, 112, 131, 155, 155, 140, // 1096-1103 +157, 146, 125, 134, 135, 143, 132, 140, // 1104-1111 +143, 124, 121, 116, 115, 112, 115, 128, // 1112-1119 +129, 135, 140, 139, 138, 136, 140, 136, // 1120-1127 +131, 135, 133, 124, 122, 123, 119, 115, // 1128-1135 +114, 112, 112, 113, 110, 108, 111, 105, // 1136-1143 +106, 105, 112, 129, 148, 155, 142, 157, // 1144-1151 +150, 129, 136, 134, 142, 130, 138, 143, // 1152-1159 +125, 122, 119, 115, 112, 112, 124, 128, // 1160-1167 +133, 142, 140, 140, 138, 139, 142, 134, // 1168-1175 +130, 134, 126, 121, 119, 122, 117, 112, // 1176-1183 +116, 112, 114, 110, 108, 112, 103, 104, // 1184-1191 +104, 106, 116, 138, 157, 146, 147, 160, // 1192-1199 +140, 131, 134, 140, 139, 130, 143, 138, // 1200-1207 +123, 120, 116, 114, 108, 115, 127, 130, // 1208-1215 +137, 143, 143, 140, 137, 139, 134, 134, // 1216-1223 +136, 125, 130, 123, 121, 119, 115, 119, // 1224-1231 +112, 114, 117, 112, 108, 109, 107, 100, // 1232-1239 +101, 104, 110, 127, 150, 152, 144, 160, // 1240-1247 +148, 134, 137, 136, 143, 132, 141, 143, // 1248-1255 +129, 121, 116, 115, 111, 112, 123, 129, // 1256-1263 +134, 142, 143, 143, 140, 140, 138, 134, // 1264-1271 +133, 133, 128, 124, 123, 120, 119, 116, // 1272-1279 +116, 112, 114, 116, 109, 108, 108, 103, // 1280-1287 +102, 99, 106, 112, 133, 152, 147, 147, // 1288-1295 +157, 145, 139, 137, 142, 143, 133, 142, // 1296-1303 +137, 128, 120, 115, 116, 112, 114, 124, // 1304-1311 +130, 136, 139, 143, 143, 138, 139, 140, // 1312-1319 +139, 132, 132, 133, 121, 121, 120, 120, // 1320-1327 +118, 116, 119, 114, 116, 111, 107, 108, // 1328-1335 + 99, 101, 99, 102, 108, 123, 146, 149, // 1336-1343 +143, 157, 153, 143, 142, 142, 148, 136, // 1344-1351 +138, 141, 131, 123, 116, 117, 114, 110, // 1352-1359 +119, 127, 133, 137, 140, 144, 141, 139, // 1360-1367 +139, 138, 139, 133, 129, 131, 121, 120, // 1368-1375 +119, 119, 120, 115, 119, 116, 115, 110, // 1376-1383 +106, 107, 98, 98, 98, 100, 107, 117, // 1384-1391 +140, 148, 143, 154, 157, 149, 146, 144, // 1392-1399 +151, 142, 136, 139, 132, 125, 116, 116, // 1400-1407 +116, 112, 116, 123, 130, 134, 136, 143, // 1408-1415 +143, 141, 142, 142, 142, 134, 130, 131, // 1416-1423 +123, 120, 119, 120, 119, 115, 116, 114, // 1424-1431 +114, 110, 105, 106, 101, 99, 98, 101, // 1432-1439 +106, 112, 129, 143, 143, 147, 157, 154, // 1440-1447 +153, 147, 150, 149, 139, 139, 134, 130, // 1448-1455 +122, 116, 118, 116, 114, 118, 122, 129, // 1456-1463 +130, 133, 138, 139, 139, 139, 139, 140, // 1464-1471 +136, 131, 130, 127, 123, 120, 120, 120, // 1472-1479 +118, 117, 117, 116, 116, 112, 112, 111, // 1480-1487 +110, 108, 107, 109, 110, 111, 114, 121, // 1488-1495 +127, 130, 136, 142, 146, 148, 148, 151, // 1496-1503 +151, 148, 145, 143, 140, 136, 131, 127, // 1504-1511 +124, 122, 120, 119, 119, 119, 120, 121, // 1512-1519 +124, 127, 130, 132, 134, 136, 137, 138, // 1520-1527 +138, 136, 134, 131, 127, 124, 120, 116, // 1528-1535 +114, 112, 110, 107, 106, 106, 105, 105, // 1536-1543 +106, 107, 109, 111, 114, 119, 125, 131, // 1544-1551 +137, 143, 148, 151, 155, 157, 158, 157, // 1552-1559 +154, 151, 147, 143, 138, 132, 127, 123, // 1560-1567 +119, 115, 113, 112, 112, 112, 115, 118, // 1568-1575 +121, 124, 129, 132, 134, 135, 136, 136, // 1576-1583 +135, 132, 128, 125, 121, 118, 114, 112, // 1584-1591 +110, 107, 106, 105, 104, 105, 105, 108, // 1592-1599 +112, 116, 122, 129, 137, 144, 149, 155, // 1600-1607 +160, 162, 162, 160, 156, 152, 147, 142, // 1608-1615 +136, 131, 125, 121, 116, 114, 112, 112, // 1616-1623 +111, 112, 113, 115, 118, 121, 125, 130, // 1624-1631 +133, 135, 136, 137, 137, 135, 134, 131, // 1632-1639 +128, 124, 120, 118, 114, 111, 108, 106, // 1640-1647 +103, 102, 102, 103, 106, 109, 114, 121, // 1648-1655 +128, 136, 143, 149, 155, 160, 162, 164, // 1656-1663 +162, 158, 153, 148, 143, 137, 131, 125, // 1664-1671 +120, 116, 112, 111, 110, 109, 110, 111, // 1672-1679 +114, 116, 120, 124, 129, 133, 135, 138, // 1680-1687 +139, 139, 138, 136, 134, 131, 128, 123, // 1688-1695 +120, 116, 112, 110, 108, 106, 105, 104, // 1696-1703 +105, 106, 108, 112, 116, 122, 129, 135, // 1704-1711 +143, 148, 153, 157, 160, 162, 160, 156, // 1712-1719 +152, 147, 142, 136, 130, 124, 120, 115, // 1720-1727 +112, 111, 110, 109, 110, 112, 114, 117, // 1728-1735 +120, 124, 129, 133, 135, 138, 139, 139, // 1736-1743 +138, 136, 135, 132, 129, 124, 120, 117, // 1744-1751 +114, 112, 109, 108, 107, 106, 106, 107, // 1752-1759 +109, 111, 114, 119, 124, 131, 136, 143, // 1760-1767 +147, 151, 155, 157, 157, 156, 153, 149, // 1768-1775 +144, 140, 134, 129, 123, 119, 115, 112, // 1776-1783 +111, 111, 111, 112, 113, 116, 119, 123, // 1784-1791 +126, 131, 134, 136, 138, 139, 139, 138, // 1792-1799 +136, 135, 132, 129, 125, 121, 119, 115, // 1800-1807 +113, 112, 110, 109, 109, 109, 110, 111, // 1808-1815 +112, 114, 117, 120, 124, 130, 135, 139, // 1816-1823 +144, 147, 151, 153, 153, 153, 151, 147, // 1824-1831 +143, 139, 135, 129, 124, 120, 117, 115, // 1832-1839 +113, 112, 113, 114, 115, 118, 120, 123, // 1840-1847 +126, 130, 133, 135, 136, 137, 138, 136, // 1848-1855 +135, 133, 131, 129, 125, 123, 120, 118, // 1856-1863 +116, 114, 112, 112, 112, 112, 112, 112, // 1864-1871 +113, 115, 116, 118, 120, 124, 129, 132, // 1872-1879 +135, 140, 143, 147, 148, 150, 151, 149, // 1880-1887 +147, 144, 141, 136, 132, 128, 124, 121, // 1888-1895 +118, 116, 116, 116, 116, 117, 119, 121, // 1896-1903 +123, 125, 129, 131, 133, 134, 134, 135, // 1904-1911 +134, 133, 131, 130, 128, 125, 123, 121, // 1912-1919 +120, 118, 117, 116, 115, 115, 114, 114, // 1920-1927 +115, 115, 115, 116, 118, 119, 120, 122, // 1928-1935 +125, 129, 133, 136, 140, 144, 145, 149, // 1936-1943 +149, 149, 147, 144, 142, 138, 134, 130, // 1944-1951 +125, 123, 120, 118, 118, 117, 117, 118, // 1952-1959 +119, 121, 123, 124, 128, 129, 131, 132, // 1960-1967 +133, 133, 133, 132, 130, 129, 127, 125, // 1968-1975 +123, 122, 121, 120, 119, 119, 118, 117, // 1976-1983 +117, 116, 116, 116, 117, 118, 118, 119, // 1984-1991 +120, 121, 123, 125, 129, 131, 135, 139, // 1992-1999 +142, 143, 146, 147, 147, 147, 143, 142, // 2000-2007 +138, 134, 130, 126, 123, 121, 119, 119, // 2008-2015 +118, 118, 119, 120, 121, 123, 124, 126, // 2016-2023 +129, 130, 130, 131, 131, 130, 130, 129, // 2024-2031 +127, 125, 124, 123, 123, 122, 121, 121, // 2032-2039 +120, 120, 119, 119, 118, 118, 118, 118, // 2040-2047 +118, 119, 119, 120, 120, 121, 123, 125, // 2048-2055 +129, 131, 135, 139, 142, 143, 145, 146, // 2056-2063 +146, 144, 143, 140, 136, 133, 130, 125, // 2064-2071 +123, 121, 120, 119, 119, 119, 120, 121, // 2072-2079 +122, 123, 125, 126, 128, 129, 130, 130, // 2080-2087 +130, 130, 129, 128, 127, 125, 125, 124, // 2088-2095 +124, 123, 123, 122, 122, 121, 120, 120, // 2096-2103 +119, 119, 119, 118, 119, 119, 119, 119, // 2104-2111 +120, 121, 121, 124, 126, 130, 133, 136, // 2112-2119 +140, 143, 144, 145, 146, 145, 143, 141, // 2120-2127 +138, 135, 131, 128, 124, 123, 121, 120, // 2128-2135 +120, 120, 120, 121, 122, 123, 124, 125, // 2136-2143 +128, 129, 129, 130, 130, 130, 129, 129, // 2144-2151 +128, 126, 125, 125, 124, 124, 124, 123, // 2152-2159 +123, 122, 121, 120, 119, 119, 119, 118, // 2160-2167 +118, 119, 119, 119, 120, 120, 121, 123, // 2168-2175 +125, 129, 131, 135, 138, 142, 143, 144, // 2176-2183 +146, 145, 144, 143, 140, 136, 133, 130, // 2184-2191 +126, 124, 123, 121, 120, 120, 120, 121, // 2192-2199 +121, 123, 124, 125, 126, 128, 129, 129, // 2200-2207 +129, 129, 129, 127, 126, 125, 124, 124, // 2208-2215 +123, 123, 123, 123, 122, 122, 121, 121, // 2216-2223 +120, 120, 119, 119, 119, 119, 120, 120, // 2224-2231 +120, 121, 122, 123, 125, 128, 131, 133, // 2232-2239 +136, 139, 142, 143, 144, 144, 143, 143, // 2240-2247 +140, 138, 134, 131, 129, 125, 124, 122, // 2248-2255 +121, 121, 121, 121, 121, 123, 124, 124, // 2256-2263 +125, 126, 127, 128, 127, 128, 127, 126, // 2264-2271 +125, 124, 123, 123, 123, 123, 123, 123, // 2272-2279 +122, 122, 122, 121, 121, 121, 120, 120, // 2280-2287 +120, 120, 120, 120, 121, 121, 122, 123, // 2288-2295 +124, 126, 129, 132, 134, 138, 140, 142, // 2296-2303 +143, 143, 143, 143, 140, 138, 135, 132, // 2304-2311 +129, 126, 124, 123, 121, 121, 121, 121, // 2312-2319 +121, 122, 123, 124, 125, 126, 127, 128, // 2320-2327 +127, 128, 127, 126, 125, 124, 123, 123, // 2328-2335 +123, 122, 123, 123, 123, 123, 123, 122, // 2336-2343 +122, 121, 121, 121, 121, 121, 121, 121, // 2344-2351 +121, 122, 123, 123, 124, 125, 128, 130, // 2352-2359 +133, 135, 139, 141, 143, 143, 143, 143, // 2360-2367 +142, 140, 137, 134, 131, 129, 125, 124, // 2368-2375 +123, 122, 121, 121, 121, 122, 122, 123, // 2376-2383 +124, 125, 125, 125, 126, 125, 125, 124, // 2384-2391 +124, 123, 122, 122, 121, 122, 122, 122, // 2392-2399 +123, 123, 123, 123, 123, 123, 122, 122, // 2400-2407 +122, 123, 123, 123, 123, 124, 124, 125, // 2408-2415 +127, 130, 131, 133, 136, 139, 140, 142, // 2416-2423 +143, 143, 142, 140, 138, 135, 133, 130, // 2424-2431 +128, 124, 123, 121, 121, 121, 121, 121, // 2432-2439 +122, 123, 124, 125, 128, 127, 129, 130, // 2440-2447 +129, 129, 127, 128, 125, 124, 123, 122, // 2448-2455 +121, 121, 121, 121, 121, 121, 121, 121, // 2456-2463 +121, 121, 121, 122, 122, 122, 123, 123, // 2464-2471 +124, 124, 124, 125, 126, 127, 130, 132, // 2472-2479 +134, 136, 138, 140, 141, 142, 142, 141, // 2480-2487 +140, 138, 135, 133, 130, 127, 125, 124, // 2488-2495 +123, 122, 121, 121, 122, 123, 123, 124, // 2496-2503 +124, 125, 125, 126, 126, 126, 125, 124, // 2504-2511 +124, 123, 123, 122, 121, 122, 122, 122, // 2512-2519 +123, 123, 123, 123, 123, 123, 123, 123, // 2520-2527 +123, 123, 123, 124, 124, 124, 125, 126, // 2528-2535 +128, 129, 131, 133, 135, 137, 139, 140, // 2536-2543 +141, 141, 141, 140, 138, 135, 133, 131, // 2544-2551 +129, 125, 124, 123, 121, 121, 120, 121, // 2552-2559 +121, 121, 123, 123, 124, 125, 125, 125, // 2560-2567 +125, 125, 124, 124, 123, 123, 121, 121, // 2568-2575 +121, 121, 121, 121, 121, 121, 121, 122, // 2576-2583 +122, 123, 123, 123, 124, 124, 125, 126, // 2584-2591 +127, 129, 131, 133, 134, 136, 138, 139, // 2592-2599 +140, 141, 141, 141, 140, 141, 138, 134, // 2600-2607 +132, 128, 123, 120, 119, 118, 116, 117, // 2608-2615 +118, 120, 121, 123, 125, 129, 129, 130, // 2616-2623 +130, 130, 129, 126, 125, 123, 121, 119, // 2624-2631 +119, 118, 116, 116, 118, 119, 120, 121, // 2632-2639 +122, 124, 125, 125, 127, 129, 130, 131, // 2640-2647 +133, 135, 137, 140, 141, 141, 142, 140, // 2648-2655 +139, 138, 135, 134, 131, 130, 129, 125, // 2656-2663 +123, 121, 121, 121, 120, 122, 124, 125, // 2664-2671 +127, 128, 130, 130, 129, 128, 128, 126, // 2672-2679 +125, 123, 123, 122, 121, 120, 119, 119, // 2680-2687 +119, 118, 118, 120, 121, 120, 121, 123, // 2688-2695 +124, 123, 123, 126, 128, 129, 130, 133, // 2696-2703 +135, 136, 138, 140, 141, 141, 140, 138, // 2704-2711 +138, 134, 132, 131, 130, 129, 125, 125, // 2712-2719 +124, 123, 123, 123, 124, 124, 125, 128, // 2720-2727 +127, 129, 129, 127, 128, 125, 125, 124, // 2728-2735 +123, 123, 122, 121, 120, 120, 119, 119, // 2736-2743 +119, 120, 121, 121, 122, 123, 123, 124, // 2744-2751 +125, 125, 126, 125, 130, 130, 132, 134, // 2752-2759 +134, 136, 135, 135, 136, 135, 135, 135, // 2760-2767 +134, 134, 131, 133, 131, 129, 129, 128, // 2768-2775 +127, 127, 126, 128, 126, 128, 126, 126, // 2776-2783 +125, 125, 125, 125, 125, 124, 124, 124, // 2784-2791 +123, 123, 122, 121, 121, 120, 120, 120, // 2792-2799 +120, 121, 121, 122, 121, 123, 125, 125, // 2800-2807 +125, 129, 130, 131, 129, 131, 133, 131, // 2808-2815 +131, 131, 133, 132, 130, 132, 131, 130, // 2816-2823 +129, 130, 131, 129, 129, 132, 131, 130, // 2824-2831 +131, 131, 131, 129, 129, 130, 129, 127, // 2832-2839 +128, 128, 126, 124, 125, 124, 124, 123, // 2840-2847 +124, 124, 123, 124, 124, 123, 123, 122, // 2848-2855 +123, 122, 121, 122, 123, 124, 124, 123, // 2856-2863 +125, 128, 125, 128, 128, 129, 128, 128, // 2864-2871 +132, 129, 129, 129, 129, 131, 135, 134, // 2872-2879 +128, 133, 133, 126, 128, 129, 133, 125, // 2880-2887 +126, 131, 126, 124, 123, 125, 126, 123, // 2888-2895 +125, 129, 130, 129, 127, 130, 129, 128, // 2896-2903 +129, 129, 129, 128, 128, 127, 128, 125, // 2904-2911 +126, 125, 126, 125, 125, 126, 125, 125, // 2912-2919 +125, 125, 124, 124, 124, 124, 123, 123, // 2920-2927 +124, 125, 125, 124, 125, 126, 125, 125, // 2928-2935 +127, 129, 129, 130, 130, 130, 129, 128, // 2936-2943 +127, 129, 129, 129, 129, 130, 129, 127, // 2944-2951 +126, 127, 128, 126, 129, 130, 129, 129, // 2952-2959 +129, 129, 126, 125, 127, 128, 129, 129, // 2960-2967 +129, 129, 128, 129, 129, 127, 129, 130, // 2968-2975 +130, 129, 129, 129, 129, 129, 129, 128, // 2976-2983 +126, 126, 125, 126, 125, 125, 125, 125, // 2984-2991 +125, 125, 125, 125, 126, 128, 127, 128, // 2992-2999 +126, 125, 125, 125, 125, 125, 125, 126, // 3000-3007 +126, 126, 126, 126, 126, 127, 128, 127, // 3008-3015 +128, 127}; + +const char O[2814] = {128, 127, 128, 128, 127, 128, 127, 128, // 0-7 +128, 127, 128, 127, 128, 128, 129, 136, // 8-15 +143, 142, 140, 121, 112, 110, 112, 128, // 16-23 +135, 136, 133, 127, 118, 118, 112, 111, // 24-31 +108, 108, 114, 124, 133, 142, 143, 143, // 32-39 +142, 137, 131, 124, 119, 119, 125, 132, // 40-47 +139, 141, 139, 133, 128, 122, 119, 118, // 48-55 +120, 127, 133, 139, 143, 141, 136, 130, // 56-63 +123, 121, 122, 123, 125, 124, 123, 121, // 64-71 +117, 112, 111, 107, 105, 105, 105, 112, // 72-79 +132, 162, 174, 172, 153, 123, 109, 104, // 80-87 +112, 124, 135, 133, 139, 139, 145, 145, // 88-95 +135, 117, 105, 105, 121, 140, 149, 146, // 96-103 +135, 127, 125, 130, 132, 126, 116, 111, // 104-111 +109, 115, 118, 115, 109, 102, 100, 108, // 112-119 +118, 131, 148, 164, 166, 164, 147, 122, // 120-127 +111, 104, 111, 124, 135, 140, 143, 136, // 128-135 +136, 132, 124, 117, 112, 111, 121, 136, // 136-143 +145, 153, 145, 139, 130, 123, 122, 120, // 144-151 +116, 115, 113, 112, 113, 112, 109, 108, // 152-159 +106, 108, 115, 124, 143, 164, 170, 168, // 160-167 +152, 123, 112, 105, 111, 124, 133, 133, // 168-175 +137, 133, 136, 138, 132, 124, 115, 111, // 176-183 +117, 130, 142, 149, 145, 137, 132, 124, // 184-191 +123, 121, 115, 111, 106, 104, 108, 112, // 192-199 +112, 112, 111, 112, 121, 137, 160, 174, // 200-207 +170, 156, 129, 112, 106, 112, 122, 133, // 208-215 +133, 135, 133, 133, 138, 134, 126, 117, // 216-223 +112, 114, 129, 140, 149, 148, 140, 133, // 224-231 +126, 122, 119, 114, 109, 105, 102, 107, // 232-239 +112, 113, 112, 109, 110, 117, 135, 160, // 240-247 +178, 174, 162, 133, 115, 109, 112, 121, // 248-255 +132, 131, 132, 132, 133, 139, 135, 127, // 256-263 +117, 111, 113, 128, 140, 148, 148, 141, // 264-271 +135, 127, 123, 121, 113, 108, 103, 102, // 272-279 +107, 112, 114, 112, 108, 108, 115, 131, // 280-287 +155, 176, 176, 166, 142, 119, 112, 110, // 288-295 +118, 127, 130, 131, 133, 132, 139, 136, // 296-303 +129, 119, 113, 113, 124, 137, 146, 149, // 304-311 +143, 139, 130, 123, 117, 111, 105, 101, // 312-319 +101, 106, 112, 114, 112, 108, 108, 114, // 320-327 +132, 157, 178, 178, 168, 142, 119, 112, // 328-335 +111, 118, 126, 129, 129, 132, 132, 139, // 336-343 +136, 130, 121, 113, 113, 124, 136, 146, // 344-351 +150, 146, 141, 132, 122, 117, 110, 104, // 352-359 +100, 100, 106, 112, 114, 112, 107, 106, // 360-367 +112, 132, 158, 180, 180, 170, 143, 120, // 368-375 +111, 110, 118, 126, 128, 128, 130, 131, // 376-383 +139, 137, 131, 121, 113, 112, 124, 136, // 384-391 +148, 153, 149, 141, 130, 118, 113, 109, // 392-399 +104, 102, 102, 106, 112, 112, 111, 107, // 400-407 +107, 115, 134, 160, 178, 180, 170, 142, // 408-415 +120, 110, 109, 117, 125, 127, 129, 128, // 416-423 +130, 136, 135, 131, 122, 114, 114, 123, // 424-431 +135, 147, 153, 149, 142, 130, 118, 112, // 432-439 +108, 104, 101, 101, 106, 111, 112, 111, // 440-447 +108, 109, 116, 135, 160, 178, 180, 170, // 448-455 +143, 121, 111, 109, 117, 125, 128, 128, // 456-463 +127, 129, 135, 135, 132, 124, 116, 115, // 464-471 +124, 135, 146, 153, 148, 141, 129, 117, // 472-479 +112, 108, 104, 102, 101, 105, 109, 111, // 480-487 +111, 108, 109, 117, 138, 164, 182, 182, // 488-495 +168, 140, 118, 108, 110, 118, 126, 128, // 496-503 +128, 125, 129, 135, 136, 133, 124, 117, // 504-511 +117, 125, 137, 146, 148, 144, 136, 126, // 512-519 +120, 115, 111, 104, 99, 98, 102, 108, // 520-527 +112, 112, 111, 112, 121, 143, 168, 184, // 528-535 +182, 164, 136, 115, 106, 111, 120, 129, // 536-543 +129, 129, 125, 129, 134, 135, 133, 124, // 544-551 +117, 117, 125, 137, 148, 150, 146, 137, // 552-559 +126, 118, 113, 110, 104, 100, 99, 103, // 560-567 +108, 112, 112, 111, 111, 118, 139, 164, // 568-575 +182, 182, 168, 140, 118, 108, 110, 119, // 576-583 +128, 127, 126, 124, 126, 133, 136, 136, // 584-591 +129, 119, 117, 123, 135, 145, 149, 146, // 592-599 +138, 126, 118, 114, 112, 107, 102, 99, // 600-607 +101, 106, 111, 112, 111, 112, 117, 135, // 608-615 +160, 178, 184, 172, 144, 121, 107, 107, // 616-623 +115, 125, 129, 127, 124, 125, 133, 136, // 624-631 +137, 131, 121, 117, 120, 132, 143, 149, // 632-639 +149, 139, 128, 119, 115, 112, 110, 104, // 640-647 + 99, 99, 103, 109, 112, 112, 112, 115, // 648-655 +130, 152, 176, 184, 176, 150, 125, 108, // 656-663 +105, 113, 124, 130, 129, 124, 122, 130, // 664-671 +135, 139, 135, 125, 119, 119, 128, 139, // 672-679 +146, 147, 141, 130, 121, 116, 113, 111, // 680-687 +105, 101, 99, 102, 108, 112, 112, 112, // 688-695 +115, 127, 148, 172, 182, 178, 156, 130, // 696-703 +111, 104, 111, 121, 128, 127, 125, 122, // 704-711 +129, 135, 139, 137, 129, 119, 118, 124, // 712-719 +137, 145, 145, 142, 132, 123, 119, 116, // 720-727 +114, 108, 100, 96, 99, 105, 112, 113, // 728-735 +113, 114, 121, 141, 166, 180, 182, 164, // 736-743 +137, 115, 104, 109, 118, 127, 129, 125, // 744-751 +121, 125, 133, 139, 140, 133, 122, 118, // 752-759 +121, 133, 143, 146, 143, 133, 122, 118, // 760-767 +116, 115, 112, 105, 100, 99, 103, 109, // 768-775 +112, 112, 113, 118, 136, 160, 178, 184, // 776-783 +172, 144, 120, 105, 105, 114, 124, 129, // 784-791 +128, 122, 124, 132, 138, 142, 137, 128, // 792-799 +119, 118, 125, 137, 143, 144, 138, 128, // 800-807 +121, 116, 115, 112, 106, 101, 99, 101, // 808-815 +107, 111, 112, 114, 118, 133, 154, 174, // 816-823 +184, 176, 151, 128, 108, 104, 112, 121, // 824-831 +128, 127, 124, 122, 129, 136, 142, 140, // 832-839 +132, 122, 118, 121, 132, 141, 143, 141, // 840-847 +132, 123, 118, 115, 113, 109, 104, 100, // 848-855 +101, 105, 110, 112, 114, 117, 127, 146, // 856-863 +168, 180, 180, 160, 136, 114, 105, 108, // 864-871 +117, 125, 128, 124, 121, 126, 133, 141, // 872-879 +142, 137, 126, 120, 120, 127, 136, 141, // 880-887 +140, 133, 125, 120, 118, 117, 112, 107, // 888-895 +102, 100, 103, 109, 112, 112, 113, 119, // 896-903 +137, 160, 178, 184, 172, 146, 123, 106, // 904-911 +105, 112, 121, 125, 124, 119, 122, 130, // 912-919 +139, 145, 143, 133, 122, 118, 121, 131, // 920-927 +138, 139, 136, 127, 122, 120, 120, 118, // 928-935 +112, 105, 100, 99, 104, 110, 112, 114, // 936-943 +115, 124, 143, 166, 180, 184, 164, 140, // 944-951 +117, 104, 106, 114, 121, 123, 121, 118, // 952-959 +124, 133, 143, 147, 143, 133, 122, 118, // 960-967 +123, 132, 137, 137, 132, 123, 120, 118, // 968-975 +121, 118, 113, 107, 102, 102, 107, 111, // 976-983 +112, 112, 113, 122, 143, 166, 182, 182, // 984-991 +164, 140, 116, 106, 108, 115, 121, 121, // 992-999 +118, 117, 122, 134, 145, 149, 144, 135, // 1000-1007 +123, 119, 122, 130, 133, 133, 129, 122, // 1008-1015 +121, 122, 124, 122, 115, 108, 102, 102, // 1016-1023 +108, 112, 114, 112, 111, 116, 136, 160, // 1024-1031 +178, 184, 170, 145, 122, 108, 108, 114, // 1032-1039 +120, 121, 117, 114, 119, 130, 143, 151, // 1040-1047 +149, 139, 126, 118, 120, 128, 133, 134, // 1048-1055 +129, 122, 118, 120, 124, 128, 123, 115, // 1056-1063 +107, 103, 105, 110, 112, 112, 111, 111, // 1064-1071 +120, 143, 166, 180, 180, 162, 139, 118, // 1072-1079 +110, 112, 118, 121, 119, 113, 112, 121, // 1080-1087 +134, 147, 151, 146, 136, 124, 119, 122, // 1088-1095 +129, 133, 131, 125, 119, 118, 122, 128, // 1096-1103 +129, 124, 116, 109, 105, 108, 112, 115, // 1104-1111 +113, 109, 106, 113, 134, 157, 174, 180, // 1112-1119 +166, 145, 126, 115, 115, 120, 122, 118, // 1120-1127 +113, 111, 117, 128, 142, 149, 147, 140, // 1128-1135 +129, 122, 122, 127, 132, 132, 128, 121, // 1136-1143 +119, 121, 125, 129, 128, 120, 113, 109, // 1144-1151 +110, 112, 115, 114, 109, 104, 105, 117, // 1152-1159 +140, 162, 176, 174, 160, 143, 128, 119, // 1160-1167 +121, 122, 120, 115, 110, 110, 117, 128, // 1168-1175 +142, 147, 145, 139, 130, 125, 127, 130, // 1176-1183 +132, 130, 123, 119, 118, 121, 128, 130, // 1184-1191 +129, 122, 116, 112, 112, 113, 114, 112, // 1192-1199 +108, 102, 102, 112, 132, 153, 170, 174, // 1200-1207 +166, 150, 137, 125, 124, 123, 120, 115, // 1208-1215 +109, 106, 111, 121, 135, 144, 146, 143, // 1216-1223 +136, 130, 130, 132, 133, 132, 128, 119, // 1224-1231 +116, 115, 120, 125, 128, 127, 122, 117, // 1232-1239 +114, 114, 114, 113, 110, 104, 101, 104, // 1240-1247 +119, 141, 160, 174, 172, 160, 146, 133, // 1248-1255 +128, 124, 122, 118, 112, 105, 105, 112, // 1256-1263 +123, 137, 144, 145, 142, 136, 133, 132, // 1264-1271 +133, 133, 130, 123, 118, 115, 117, 122, // 1272-1279 +126, 130, 127, 122, 118, 116, 117, 117, // 1280-1287 +114, 110, 102, 98, 101, 114, 136, 156, // 1288-1295 +170, 172, 164, 151, 139, 132, 129, 124, // 1296-1303 +119, 112, 105, 103, 107, 117, 131, 142, // 1304-1311 +145, 143, 140, 136, 135, 135, 135, 132, // 1312-1319 +125, 119, 115, 115, 118, 124, 129, 130, // 1320-1327 +127, 123, 120, 118, 117, 115, 111, 105, // 1328-1335 + 98, 97, 104, 121, 143, 160, 172, 170, // 1336-1343 +162, 149, 139, 133, 129, 124, 117, 109, // 1344-1351 +102, 101, 106, 118, 132, 142, 145, 143, // 1352-1359 +142, 139, 138, 137, 136, 131, 123, 117, // 1360-1367 +112, 113, 118, 124, 130, 132, 130, 125, // 1368-1375 +121, 119, 118, 115, 112, 105, 98, 95, // 1376-1383 +101, 116, 137, 156, 170, 172, 164, 154, // 1384-1391 +143, 137, 132, 126, 118, 111, 102, 99, // 1392-1399 +102, 112, 125, 138, 144, 146, 144, 142, // 1400-1407 +140, 139, 137, 133, 125, 118, 112, 112, // 1408-1415 +115, 121, 129, 133, 133, 130, 125, 121, // 1416-1423 +119, 117, 114, 109, 102, 95, 93, 101, // 1424-1431 +116, 138, 156, 170, 172, 168, 156, 145, // 1432-1439 +139, 132, 125, 117, 109, 100, 98, 100, // 1440-1447 +111, 124, 137, 146, 148, 147, 143, 142, // 1448-1455 +140, 137, 133, 125, 118, 113, 112, 114, // 1456-1463 +119, 127, 132, 134, 133, 129, 124, 121, // 1464-1471 +118, 114, 110, 104, 97, 91, 95, 106, // 1472-1479 +124, 145, 164, 174, 174, 166, 153, 143, // 1480-1487 +135, 129, 120, 112, 105, 99, 97, 102, // 1488-1495 +112, 126, 139, 146, 150, 148, 145, 142, // 1496-1503 +139, 136, 130, 123, 117, 112, 112, 115, // 1504-1511 +121, 129, 134, 136, 135, 131, 126, 122, // 1512-1519 +119, 115, 110, 102, 95, 89, 91, 98, // 1520-1527 +114, 136, 155, 170, 176, 172, 162, 150, // 1528-1535 +141, 133, 125, 117, 111, 102, 98, 98, // 1536-1543 +105, 116, 130, 142, 148, 149, 148, 145, // 1544-1551 +142, 138, 134, 129, 122, 116, 112, 112, // 1552-1559 +116, 122, 130, 135, 137, 137, 134, 130, // 1560-1567 +125, 120, 115, 109, 102, 95, 89, 89, // 1568-1575 + 93, 105, 121, 143, 160, 174, 176, 172, // 1576-1583 +162, 149, 140, 132, 123, 117, 111, 104, // 1584-1591 +100, 101, 107, 117, 130, 141, 148, 149, // 1592-1599 +148, 144, 141, 136, 132, 128, 122, 117, // 1600-1607 +114, 114, 117, 123, 131, 137, 140, 140, // 1608-1615 +137, 133, 127, 121, 114, 109, 103, 97, // 1616-1623 + 91, 89, 91, 98, 108, 122, 142, 157, // 1624-1631 +170, 174, 172, 164, 153, 143, 133, 125, // 1632-1639 +118, 113, 109, 105, 105, 108, 114, 124, // 1640-1647 +135, 143, 146, 146, 144, 140, 136, 132, // 1648-1655 +127, 124, 121, 119, 118, 119, 123, 129, // 1656-1663 +135, 139, 139, 137, 133, 128, 121, 114, // 1664-1671 +110, 105, 101, 98, 95, 95, 98, 104, // 1672-1679 +112, 122, 137, 150, 162, 170, 170, 166, // 1680-1687 +157, 146, 139, 131, 124, 119, 115, 112, // 1688-1695 +109, 109, 111, 116, 124, 132, 139, 142, // 1696-1703 +142, 140, 137, 134, 132, 130, 129, 126, // 1704-1711 +124, 123, 122, 124, 128, 132, 135, 135, // 1712-1719 +133, 129, 122, 117, 112, 110, 107, 105, // 1720-1727 +104, 103, 103, 104, 106, 111, 117, 125, // 1728-1735 +139, 149, 160, 166, 168, 164, 156, 147, // 1736-1743 +140, 133, 128, 122, 117, 112, 109, 106, // 1744-1751 +108, 112, 118, 125, 133, 138, 140, 140, // 1752-1759 +139, 137, 136, 135, 133, 130, 128, 123, // 1760-1767 +121, 121, 122, 124, 128, 129, 128, 125, // 1768-1775 +122, 119, 117, 114, 112, 111, 109, 108, // 1776-1783 +107, 106, 108, 111, 114, 121, 131, 143, // 1784-1791 +153, 162, 166, 166, 162, 154, 146, 139, // 1792-1799 +131, 124, 119, 113, 109, 106, 104, 105, // 1800-1807 +110, 117, 125, 133, 139, 142, 143, 142, // 1808-1815 +140, 139, 136, 133, 130, 125, 121, 118, // 1816-1823 +117, 117, 119, 123, 126, 129, 129, 128, // 1824-1831 +124, 121, 119, 117, 115, 114, 113, 112, // 1832-1839 +112, 112, 112, 113, 116, 121, 127, 137, // 1840-1847 +146, 155, 162, 164, 160, 155, 146, 139, // 1848-1855 +132, 125, 120, 115, 112, 108, 105, 105, // 1856-1863 +108, 112, 120, 129, 137, 142, 144, 144, // 1864-1871 +143, 141, 138, 135, 132, 128, 123, 119, // 1872-1879 +116, 115, 115, 118, 121, 125, 129, 130, // 1880-1887 +130, 129, 128, 125, 123, 121, 119, 117, // 1888-1895 +115, 114, 112, 112, 112, 114, 117, 121, // 1896-1903 +129, 137, 145, 153, 158, 158, 155, 149, // 1904-1911 +143, 135, 129, 123, 119, 115, 112, 109, // 1912-1919 +106, 106, 109, 114, 122, 132, 139, 144, // 1920-1927 +145, 145, 143, 140, 137, 133, 130, 125, // 1928-1935 +122, 118, 115, 114, 114, 117, 121, 125, // 1936-1943 +131, 134, 135, 134, 132, 130, 126, 124, // 1944-1951 +121, 118, 116, 114, 112, 111, 111, 111, // 1952-1959 +112, 115, 121, 129, 138, 146, 153, 156, // 1960-1967 +157, 153, 148, 142, 135, 129, 124, 119, // 1968-1975 +115, 112, 109, 108, 108, 111, 116, 124, // 1976-1983 +132, 139, 143, 145, 144, 143, 139, 136, // 1984-1991 +133, 129, 125, 121, 117, 114, 113, 114, // 1992-1999 +117, 121, 125, 131, 134, 136, 135, 133, // 2000-2007 +131, 127, 124, 121, 118, 116, 114, 112, // 2008-2015 +112, 112, 112, 112, 114, 118, 123, 131, // 2016-2023 +139, 145, 151, 155, 155, 152, 146, 140, // 2024-2031 +135, 129, 124, 120, 117, 114, 112, 111, // 2032-2039 +111, 112, 117, 123, 131, 137, 142, 143, // 2040-2047 +143, 142, 139, 135, 131, 128, 124, 120, // 2048-2055 +117, 115, 114, 114, 117, 121, 125, 130, // 2056-2063 +134, 136, 136, 135, 132, 129, 125, 123, // 2064-2071 +121, 118, 116, 114, 113, 112, 112, 114, // 2072-2079 +115, 117, 121, 124, 130, 136, 142, 146, // 2080-2087 +149, 150, 149, 145, 142, 136, 131, 126, // 2088-2095 +123, 121, 118, 116, 114, 113, 113, 116, // 2096-2103 +120, 125, 132, 137, 140, 141, 140, 137, // 2104-2111 +134, 130, 128, 124, 122, 119, 118, 117, // 2112-2119 +118, 119, 122, 125, 130, 133, 135, 136, // 2120-2127 +135, 133, 130, 126, 124, 121, 119, 118, // 2128-2135 +117, 115, 115, 115, 115, 116, 117, 119, // 2136-2143 +121, 125, 129, 135, 139, 143, 146, 148, // 2144-2151 +147, 144, 141, 137, 132, 129, 125, 122, // 2152-2159 +120, 118, 115, 114, 114, 116, 119, 123, // 2160-2167 +129, 133, 137, 139, 138, 137, 135, 132, // 2168-2175 +129, 125, 124, 122, 121, 121, 121, 121, // 2176-2183 +123, 125, 129, 131, 132, 133, 133, 132, // 2184-2191 +130, 127, 124, 122, 120, 119, 118, 117, // 2192-2199 +117, 117, 117, 118, 118, 119, 121, 122, // 2200-2207 +124, 127, 132, 136, 140, 143, 145, 145, // 2208-2215 +143, 140, 137, 133, 130, 128, 125, 123, // 2216-2223 +121, 119, 117, 117, 117, 119, 122, 127, // 2224-2231 +132, 135, 136, 137, 135, 133, 130, 128, // 2232-2239 +125, 124, 123, 123, 122, 122, 123, 124, // 2240-2247 +125, 128, 129, 131, 132, 132, 131, 129, // 2248-2255 +126, 124, 122, 121, 119, 119, 119, 119, // 2256-2263 +119, 119, 119, 119, 120, 121, 121, 122, // 2264-2271 +125, 127, 132, 135, 139, 142, 143, 143, // 2272-2279 +142, 140, 137, 135, 132, 130, 128, 124, // 2280-2287 +122, 119, 118, 117, 117, 118, 121, 124, // 2288-2295 +129, 131, 133, 134, 133, 132, 130, 129, // 2296-2303 +127, 125, 125, 124, 124, 124, 124, 125, // 2304-2311 +125, 127, 129, 129, 130, 130, 129, 128, // 2312-2319 +125, 124, 122, 121, 121, 121, 121, 121, // 2320-2327 +121, 121, 121, 121, 122, 122, 122, 122, // 2328-2335 +123, 124, 127, 130, 134, 137, 140, 142, // 2336-2343 +143, 142, 140, 138, 136, 133, 130, 128, // 2344-2351 +124, 122, 119, 118, 117, 117, 118, 119, // 2352-2359 +123, 126, 130, 132, 133, 133, 132, 131, // 2360-2367 +130, 129, 128, 126, 126, 125, 125, 125, // 2368-2375 +125, 125, 126, 127, 128, 129, 129, 129, // 2376-2383 +128, 126, 125, 123, 122, 121, 121, 121, // 2384-2391 +121, 121, 121, 121, 121, 121, 121, 121, // 2392-2399 +122, 123, 125, 129, 132, 136, 139, 142, // 2400-2407 +143, 143, 142, 140, 138, 135, 132, 129, // 2408-2415 +125, 123, 120, 118, 117, 116, 117, 118, // 2416-2423 +121, 124, 129, 131, 133, 133, 133, 132, // 2424-2431 +131, 130, 128, 127, 125, 125, 125, 125, // 2432-2439 +125, 125, 126, 128, 127, 129, 129, 129, // 2440-2447 +129, 128, 125, 124, 123, 122, 121, 121, // 2448-2455 +121, 121, 122, 122, 122, 122, 122, 122, // 2456-2463 +122, 123, 123, 124, 125, 128, 130, 134, // 2464-2471 +137, 140, 142, 143, 142, 140, 137, 135, // 2472-2479 +132, 129, 126, 124, 121, 119, 118, 117, // 2480-2487 +117, 118, 120, 123, 127, 130, 132, 133, // 2488-2495 +133, 132, 130, 129, 128, 128, 128, 127, // 2496-2503 +128, 126, 126, 126, 126, 128, 127, 129, // 2504-2511 +129, 129, 128, 126, 125, 123, 122, 121, // 2512-2519 +121, 121, 121, 122, 122, 122, 122, 122, // 2520-2527 +122, 122, 122, 122, 123, 124, 125, 128, // 2528-2535 +130, 133, 136, 139, 142, 142, 142, 140, // 2536-2543 +137, 135, 132, 129, 125, 123, 121, 119, // 2544-2551 +118, 117, 117, 118, 121, 124, 128, 130, // 2552-2559 +132, 133, 133, 132, 131, 129, 129, 127, // 2560-2567 +126, 126, 126, 126, 126, 126, 126, 128, // 2568-2575 +127, 129, 129, 129, 128, 126, 124, 123, // 2576-2583 +122, 121, 121, 121, 121, 122, 122, 122, // 2584-2591 +123, 124, 124, 124, 124, 124, 124, 124, // 2592-2599 +125, 125, 126, 129, 131, 134, 137, 139, // 2600-2607 +140, 140, 140, 137, 135, 133, 130, 127, // 2608-2615 +125, 123, 121, 120, 119, 118, 119, 121, // 2616-2623 +123, 126, 129, 131, 132, 132, 131, 130, // 2624-2631 +130, 129, 129, 128, 127, 128, 126, 126, // 2632-2639 +125, 127, 126, 128, 128, 127, 128, 126, // 2640-2647 +125, 124, 122, 122, 121, 121, 121, 121, // 2648-2655 +122, 122, 123, 124, 124, 125, 125, 125, // 2656-2663 +125, 125, 125, 126, 127, 129, 130, 132, // 2664-2671 +133, 135, 136, 138, 139, 138, 137, 135, // 2672-2679 +133, 130, 128, 125, 124, 123, 122, 122, // 2680-2687 +122, 123, 124, 125, 128, 129, 130, 131, // 2688-2695 +130, 130, 129, 128, 125, 124, 124, 123, // 2696-2703 +123, 123, 124, 124, 124, 125, 125, 125, // 2704-2711 +125, 125, 124, 124, 123, 122, 122, 121, // 2712-2719 +121, 121, 122, 124, 125, 128, 129, 131, // 2720-2727 +132, 132, 132, 132, 133, 133, 134, 134, // 2728-2735 +134, 133, 133, 132, 132, 132, 132, 131, // 2736-2743 +130, 130, 129, 128, 126, 125, 125, 125, // 2744-2751 +124, 124, 124, 124, 124, 124, 125, 125, // 2752-2759 +125, 125, 125, 124, 124, 124, 124, 124, // 2760-2767 +124, 124, 124, 124, 124, 125, 125, 125, // 2768-2775 +126, 125, 125, 125, 125, 125, 125, 127, // 2776-2783 +126, 128, 127, 128, 129, 129, 130, 130, // 2784-2791 +131, 131, 131, 131, 130, 130, 130, 129, // 2792-2799 +129, 129, 129, 129, 129, 129, 130, 130, // 2800-2807 +130, 130, 130, 130, 129, 129}; + +const char P[3065] = {128, 127, 128, 127, 128, 128, 127, 128, // 0-7 +127, 128, 127, 128, 128, 127, 129, 129, // 8-15 +128, 129, 129, 129, 129, 129, 126, 129, // 16-23 +129, 129, 127, 123, 129, 126, 125, 125, // 24-31 +125, 125, 125, 126, 128, 129, 129, 126, // 32-39 +125, 132, 133, 131, 123, 131, 130, 125, // 40-47 +127, 124, 131, 128, 120, 125, 132, 123, // 48-55 +123, 124, 128, 128, 129, 129, 129, 130, // 56-63 +129, 130, 129, 130, 126, 125, 125, 123, // 64-71 +121, 123, 121, 122, 120, 121, 125, 123, // 72-79 +125, 125, 127, 125, 125, 129, 132, 121, // 80-87 +129, 129, 120, 124, 128, 123, 122, 123, // 88-95 +129, 126, 120, 132, 125, 131, 124, 127, // 96-103 +131, 129, 125, 131, 132, 120, 129, 129, // 104-111 +132, 118, 125, 132, 125, 120, 133, 131, // 112-119 +123, 132, 132, 132, 127, 134, 125, 129, // 120-127 +133, 123, 124, 131, 123, 127, 124, 127, // 128-135 +126, 125, 133, 123, 131, 133, 129, 125, // 136-143 +136, 125, 130, 128, 131, 125, 123, 131, // 144-151 +123, 126, 123, 126, 123, 131, 123, 128, // 152-159 +127, 133, 125, 123, 136, 123, 131, 131, // 160-167 +123, 130, 124, 125, 131, 120, 129, 126, // 168-175 +125, 129, 125, 125, 132, 126, 123, 132, // 176-183 +126, 129, 123, 129, 128, 124, 129, 126, // 184-191 +124, 131, 123, 127, 133, 123, 131, 132, // 192-199 +124, 128, 129, 123, 129, 128, 131, 127, // 200-207 +129, 125, 125, 129, 127, 123, 130, 129, // 208-215 +126, 126, 131, 123, 128, 129, 125, 129, // 216-223 +126, 129, 131, 129, 125, 128, 126, 129, // 224-231 +123, 129, 126, 125, 129, 125, 129, 128, // 232-239 +124, 131, 130, 126, 128, 130, 128, 122, // 240-247 +127, 131, 121, 128, 129, 124, 129, 129, // 248-255 +128, 127, 131, 125, 129, 131, 122, 129, // 256-263 +129, 123, 127, 129, 127, 120, 128, 131, // 264-271 +122, 129, 132, 123, 131, 129, 126, 132, // 272-279 +126, 125, 130, 125, 128, 126, 125, 129, // 280-287 +125, 127, 126, 127, 131, 124, 127, 129, // 288-295 +125, 131, 125, 126, 130, 125, 129, 125, // 296-303 +131, 128, 125, 129, 126, 126, 128, 125, // 304-311 +125, 127, 122, 129, 128, 125, 126, 129, // 312-319 +128, 127, 128, 127, 128, 130, 128, 126, // 320-327 +128, 129, 123, 128, 126, 124, 129, 125, // 328-335 +127, 126, 128, 127, 126, 129, 129, 126, // 336-343 +129, 128, 127, 125, 125, 128, 126, 128, // 344-351 +123, 126, 129, 125, 127, 126, 127, 130, // 352-359 +124, 127, 125, 125, 126, 129, 122, 125, // 360-367 +128, 125, 125, 126, 128, 126, 128, 128, // 368-375 +129, 126, 129, 125, 127, 128, 129, 125, // 376-383 +128, 127, 125, 129, 123, 129, 128, 127, // 384-391 +129, 128, 129, 129, 126, 129, 127, 125, // 392-399 +129, 126, 127, 125, 127, 126, 125, 125, // 400-407 +125, 127, 128, 127, 128, 125, 128, 127, // 408-415 +128, 127, 125, 131, 126, 126, 129, 126, // 416-423 +128, 125, 126, 129, 126, 127, 126, 126, // 424-431 +128, 125, 129, 126, 127, 128, 127, 128, // 432-439 +127, 129, 126, 128, 127, 128, 125, 129, // 440-447 +126, 126, 127, 125, 126, 124, 125, 124, // 448-455 +124, 125, 124, 124, 124, 125, 123, 124, // 456-463 +126, 125, 129, 130, 130, 131, 131, 132, // 464-471 +132, 133, 133, 133, 133, 132, 132, 131, // 472-479 +131, 131, 129, 129, 129, 127, 127, 125, // 480-487 +123, 122, 122, 120, 119, 118, 117, 116, // 488-495 +117, 117, 116, 119, 117, 119, 120, 120, // 496-503 +124, 123, 127, 132, 134, 139, 141, 144, // 504-511 +147, 150, 150, 150, 150, 147, 144, 141, // 512-519 +135, 129, 123, 117, 113, 109, 107, 105, // 520-527 +106, 107, 109, 112, 113, 115, 117, 119, // 528-535 +118, 119, 119, 117, 117, 122, 121, 124, // 536-543 +135, 135, 142, 148, 154, 156, 164, 166, // 544-551 +164, 164, 157, 148, 142, 132, 121, 113, // 552-559 +106, 100, 95, 95, 93, 97, 102, 104, // 560-567 +111, 115, 117, 121, 121, 120, 119, 119, // 568-575 +122, 121, 122, 134, 131, 141, 147, 150, // 576-583 +160, 162, 170, 166, 168, 164, 154, 149, // 584-591 +137, 126, 116, 106, 99, 93, 91, 89, // 592-599 + 93, 97, 100, 109, 110, 115, 120, 119, // 600-607 +121, 119, 115, 120, 122, 116, 130, 133, // 608-615 +132, 147, 148, 156, 162, 170, 170, 168, // 616-623 +172, 160, 154, 147, 131, 122, 112, 101, // 624-631 + 95, 91, 89, 89, 95, 95, 101, 110, // 632-639 +110, 115, 119, 116, 118, 114, 115, 123, // 640-647 +115, 123, 134, 130, 143, 150, 153, 162, // 648-655 +168, 172, 168, 172, 164, 154, 151, 136, // 656-663 +125, 115, 105, 97, 93, 93, 91, 97, // 664-671 +100, 103, 112, 113, 117, 119, 122, 120, // 672-679 +116, 114, 114, 122, 113, 122, 135, 123, // 680-687 +145, 146, 151, 162, 164, 172, 164, 172, // 688-695 +160, 150, 149, 131, 123, 114, 103, 100, // 696-703 + 95, 95, 93, 101, 105, 109, 118, 117, // 704-711 +125, 125, 123, 127, 116, 116, 112, 119, // 712-719 +113, 109, 134, 116, 134, 145, 143, 158, // 720-727 +162, 172, 164, 172, 168, 153, 153, 139, // 728-735 +124, 118, 105, 98, 95, 91, 91, 98, // 736-743 +104, 108, 118, 124, 129, 135, 137, 135, // 744-751 +131, 127, 117, 112, 113, 112, 103, 114, // 752-759 +119, 112, 137, 135, 145, 156, 164, 168, // 760-767 +170, 176, 162, 160, 151, 135, 126, 114, // 768-775 +102, 99, 93, 91, 95, 101, 104, 114, // 776-783 +121, 125, 134, 137, 137, 133, 132, 120, // 784-791 +113, 112, 112, 101, 107, 120, 103, 132, // 792-799 +132, 137, 156, 160, 170, 168, 180, 168, // 800-807 +162, 162, 139, 132, 121, 103, 101, 91, // 808-815 + 89, 91, 95, 104, 108, 123, 127, 136, // 816-823 +142, 141, 146, 139, 135, 127, 115, 109, // 824-831 +106, 105, 89, 107, 107, 101, 131, 125, // 832-839 +143, 155, 166, 174, 174, 182, 168, 168, // 840-847 +158, 138, 132, 116, 104, 98, 89, 91, // 848-855 + 89, 100, 103, 112, 123, 125, 138, 137, // 856-863 +142, 142, 134, 133, 119, 112, 107, 108, // 864-871 + 95, 98, 115, 95, 124, 130, 134, 157, // 872-879 +160, 174, 174, 184, 174, 166, 164, 141, // 880-887 +132, 120, 101, 97, 89, 85, 87, 93, // 888-895 + 99, 107, 119, 125, 137, 143, 143, 148, // 896-903 +145, 137, 135, 121, 110, 104, 104, 93, // 904-911 + 91, 109, 95, 113, 131, 130, 153, 162, // 912-919 +174, 174, 184, 178, 166, 168, 144, 133, // 920-927 +122, 104, 97, 91, 85, 87, 93, 95, // 928-935 +108, 117, 124, 138, 143, 144, 148, 147, // 936-943 +139, 135, 125, 110, 104, 102, 95, 87, // 944-951 +104, 103, 103, 134, 129, 148, 164, 170, // 952-959 +176, 182, 182, 168, 166, 150, 132, 125, // 960-967 +107, 95, 93, 85, 85, 91, 95, 103, // 968-975 +119, 123, 135, 146, 145, 150, 150, 144, // 976-983 +138, 132, 116, 107, 100, 97, 91, 87, // 984-991 +105, 99, 112, 133, 132, 155, 164, 174, // 992-999 +176, 182, 178, 166, 164, 144, 132, 120, // 1000-1007 +105, 98, 91, 87, 89, 95, 100, 108, // 1008-1015 +120, 125, 139, 144, 145, 148, 145, 141, // 1016-1023 +134, 126, 112, 106, 95, 95, 93, 87, // 1024-1031 +109, 102, 116, 137, 136, 160, 166, 176, // 1032-1039 +178, 180, 176, 162, 162, 141, 129, 119, // 1040-1047 +102, 98, 91, 87, 89, 97, 101, 110, // 1048-1055 +123, 126, 142, 146, 146, 152, 145, 143, // 1056-1063 +135, 128, 114, 108, 97, 91, 97, 89, // 1064-1071 + 97, 110, 107, 129, 140, 146, 164, 170, // 1072-1079 +176, 176, 180, 166, 160, 151, 132, 125, // 1080-1087 +112, 101, 95, 93, 89, 95, 102, 105, // 1088-1095 +117, 125, 132, 143, 143, 145, 145, 143, // 1096-1103 +137, 131, 121, 112, 105, 95, 98, 98, // 1104-1111 + 91, 110, 112, 116, 140, 140, 156, 164, // 1112-1119 +172, 172, 174, 172, 156, 155, 138, 126, // 1120-1127 +119, 105, 100, 95, 93, 95, 101, 106, // 1128-1135 +112, 123, 129, 138, 144, 143, 146, 143, // 1136-1143 +138, 134, 125, 117, 109, 102, 95, 98, // 1144-1151 + 98, 93, 112, 113, 119, 142, 141, 157, // 1152-1159 +164, 170, 170, 172, 168, 154, 153, 137, // 1160-1167 +125, 119, 106, 101, 98, 95, 98, 103, // 1168-1175 +107, 113, 123, 129, 136, 143, 141, 145, // 1176-1183 +141, 137, 134, 124, 118, 112, 104, 98, // 1184-1191 + 98, 101, 97, 107, 118, 115, 139, 141, // 1192-1199 +150, 162, 164, 168, 166, 168, 153, 151, // 1200-1207 +141, 126, 122, 110, 104, 102, 100, 99, // 1208-1215 +105, 109, 112, 123, 127, 134, 141, 140, // 1216-1223 +143, 141, 135, 134, 128, 119, 114, 109, // 1224-1231 +101, 100, 101, 103, 103, 114, 120, 121, // 1232-1239 +144, 141, 154, 162, 162, 166, 162, 162, // 1240-1247 +149, 148, 135, 125, 120, 110, 107, 106, // 1248-1255 +101, 105, 109, 110, 118, 123, 128, 134, // 1256-1263 +138, 137, 140, 138, 132, 132, 124, 118, // 1264-1271 +116, 109, 104, 103, 103, 107, 105, 117, // 1272-1279 +121, 123, 143, 139, 151, 156, 160, 162, // 1280-1287 +160, 157, 147, 146, 135, 128, 122, 112, // 1288-1295 +110, 109, 106, 107, 112, 112, 118, 123, // 1296-1303 +125, 133, 134, 135, 137, 135, 131, 131, // 1304-1311 +125, 119, 119, 112, 108, 107, 105, 109, // 1312-1319 +109, 112, 124, 119, 137, 140, 143, 154, // 1320-1327 +153, 160, 154, 158, 148, 147, 141, 131, // 1328-1335 +129, 118, 114, 112, 110, 109, 112, 113, // 1336-1343 +114, 120, 123, 126, 133, 131, 135, 135, // 1344-1351 +132, 132, 129, 125, 121, 119, 113, 111, // 1352-1359 +109, 108, 112, 109, 115, 122, 120, 136, // 1360-1367 +137, 143, 151, 151, 156, 154, 155, 148, // 1368-1375 +147, 141, 132, 130, 120, 116, 114, 111, // 1376-1383 +110, 112, 112, 114, 119, 120, 125, 130, // 1384-1391 +130, 135, 134, 133, 134, 131, 127, 125, // 1392-1399 +121, 117, 113, 109, 108, 110, 109, 110, // 1400-1407 +120, 116, 126, 137, 135, 147, 148, 153, // 1408-1415 +153, 157, 151, 149, 147, 137, 134, 128, // 1416-1423 +119, 116, 113, 110, 111, 110, 111, 115, // 1424-1431 +116, 120, 125, 128, 132, 134, 134, 134, // 1432-1439 +134, 131, 129, 125, 120, 117, 112, 109, // 1440-1447 +108, 110, 107, 112, 119, 114, 131, 134, // 1448-1455 +137, 148, 148, 154, 154, 156, 150, 150, // 1456-1463 +144, 136, 134, 123, 119, 115, 112, 109, // 1464-1471 +110, 110, 111, 116, 116, 122, 127, 129, // 1472-1479 +134, 135, 135, 137, 135, 132, 131, 126, // 1480-1487 +121, 118, 113, 109, 107, 107, 108, 107, // 1488-1495 +116, 116, 120, 135, 132, 145, 148, 151, // 1496-1503 +156, 156, 155, 150, 150, 140, 137, 130, // 1504-1511 +121, 117, 113, 110, 109, 109, 109, 112, // 1512-1519 +115, 118, 123, 127, 131, 135, 137, 136, // 1520-1527 +138, 135, 134, 132, 125, 122, 118, 111, // 1528-1535 +109, 105, 107, 108, 105, 116, 114, 122, // 1536-1543 +133, 133, 145, 147, 153, 154, 157, 154, // 1544-1551 +151, 150, 141, 138, 129, 122, 117, 112, // 1552-1559 +110, 109, 109, 109, 112, 114, 117, 123, // 1560-1567 +126, 132, 135, 136, 138, 138, 136, 135, // 1568-1575 +132, 128, 123, 120, 113, 110, 107, 104, // 1576-1583 +107, 105, 108, 116, 115, 125, 134, 136, // 1584-1591 +147, 149, 154, 155, 160, 153, 152, 148, // 1592-1599 +139, 137, 127, 120, 117, 112, 109, 109, // 1600-1607 +109, 109, 113, 114, 119, 125, 128, 134, // 1608-1615 +136, 138, 140, 140, 138, 136, 134, 129, // 1616-1623 +124, 120, 114, 110, 107, 102, 106, 104, // 1624-1631 +106, 113, 116, 121, 134, 135, 144, 151, // 1632-1639 +152, 158, 158, 157, 152, 151, 142, 137, // 1640-1647 +131, 121, 118, 112, 110, 109, 108, 109, // 1648-1655 +112, 114, 117, 123, 128, 132, 137, 138, // 1656-1663 +140, 141, 138, 138, 135, 131, 128, 121, // 1664-1671 +117, 111, 109, 103, 102, 105, 103, 108, // 1672-1679 +113, 118, 122, 135, 137, 145, 152, 153, // 1680-1687 +158, 158, 156, 152, 149, 141, 137, 129, // 1688-1695 +120, 117, 112, 109, 109, 108, 109, 112, // 1696-1703 +114, 119, 124, 129, 134, 137, 140, 140, // 1704-1711 +142, 139, 138, 136, 130, 128, 120, 117, // 1712-1719 +111, 108, 103, 100, 104, 102, 107, 109, // 1720-1727 +118, 119, 131, 138, 140, 152, 151, 157, // 1728-1735 +158, 158, 153, 151, 145, 138, 134, 123, // 1736-1743 +119, 114, 110, 109, 109, 108, 110, 113, // 1744-1751 +116, 122, 126, 131, 135, 138, 140, 141, // 1752-1759 +141, 139, 138, 134, 130, 126, 119, 116, // 1760-1767 +112, 106, 104, 100, 101, 103, 106, 109, // 1768-1775 +114, 122, 124, 138, 140, 147, 153, 154, // 1776-1783 +160, 157, 156, 151, 148, 141, 136, 130, // 1784-1791 +120, 118, 112, 110, 109, 108, 110, 112, // 1792-1799 +114, 119, 125, 129, 134, 138, 138, 142, // 1800-1807 +142, 140, 140, 136, 133, 130, 123, 118, // 1808-1815 +115, 109, 106, 104, 98, 101, 101, 104, // 1816-1823 +109, 112, 120, 125, 131, 143, 143, 153, // 1824-1831 +155, 158, 160, 158, 156, 150, 147, 138, // 1832-1839 +134, 126, 119, 116, 111, 109, 108, 108, // 1840-1847 +110, 113, 116, 120, 126, 131, 135, 138, // 1848-1855 +141, 141, 143, 141, 140, 138, 133, 131, // 1856-1863 +124, 119, 114, 111, 106, 103, 101, 98, // 1864-1871 +100, 101, 105, 109, 114, 119, 127, 135, // 1872-1879 +137, 150, 148, 157, 160, 160, 162, 158, // 1880-1887 +156, 148, 145, 135, 131, 123, 115, 113, // 1888-1895 +108, 106, 107, 107, 110, 113, 117, 122, // 1896-1903 +127, 132, 136, 140, 141, 142, 144, 141, // 1904-1911 +140, 138, 132, 129, 122, 117, 113, 108, // 1912-1919 +104, 102, 100, 97, 101, 101, 104, 109, // 1920-1927 +114, 120, 125, 134, 141, 143, 153, 154, // 1928-1935 +160, 162, 162, 162, 158, 154, 147, 143, // 1936-1943 +134, 127, 119, 112, 109, 105, 104, 104, // 1944-1951 +106, 108, 112, 116, 121, 129, 132, 138, // 1952-1959 +141, 142, 145, 143, 144, 141, 137, 134, // 1960-1967 +128, 122, 116, 112, 106, 104, 100, 100, // 1968-1975 +100, 100, 104, 106, 110, 114, 119, 125, // 1976-1983 +133, 137, 144, 148, 150, 158, 156, 162, // 1984-1991 +162, 158, 157, 151, 147, 139, 134, 123, // 1992-1999 +118, 112, 106, 104, 102, 102, 104, 107, // 2000-2007 +110, 115, 120, 125, 132, 137, 140, 143, // 2008-2015 +145, 143, 145, 141, 139, 136, 129, 125, // 2016-2023 +119, 114, 110, 107, 103, 103, 103, 103, // 2024-2031 +107, 109, 113, 117, 120, 125, 130, 133, // 2032-2039 +139, 141, 143, 147, 148, 148, 153, 149, // 2040-2047 +150, 150, 146, 145, 141, 136, 130, 125, // 2048-2055 +117, 114, 110, 107, 107, 106, 107, 110, // 2056-2063 +113, 116, 122, 125, 131, 136, 138, 142, // 2064-2071 +143, 143, 142, 140, 138, 134, 131, 125, // 2072-2079 +121, 117, 113, 112, 109, 109, 108, 110, // 2080-2087 +112, 113, 117, 120, 123, 127, 129, 132, // 2088-2095 +134, 133, 137, 137, 135, 138, 138, 137, // 2096-2103 +141, 138, 140, 142, 139, 140, 138, 135, // 2104-2111 +131, 129, 122, 120, 116, 113, 113, 112, // 2112-2119 +113, 115, 117, 119, 123, 126, 130, 134, // 2120-2127 +135, 138, 139, 139, 138, 138, 136, 132, // 2128-2135 +132, 127, 125, 122, 119, 117, 116, 114, // 2136-2143 +114, 115, 115, 117, 119, 121, 123, 124, // 2144-2151 +125, 128, 125, 126, 125, 125, 128, 128, // 2152-2159 +125, 131, 131, 131, 138, 135, 141, 143, // 2160-2167 +142, 144, 143, 140, 137, 135, 128, 125, // 2168-2175 +120, 116, 116, 113, 114, 115, 116, 119, // 2176-2183 +122, 124, 129, 132, 133, 136, 137, 137, // 2184-2191 +138, 137, 134, 135, 132, 129, 129, 123, // 2192-2199 +123, 120, 118, 117, 117, 115, 116, 117, // 2200-2207 +116, 119, 119, 120, 122, 122, 123, 123, // 2208-2215 +122, 123, 122, 123, 125, 126, 127, 132, // 2216-2223 +132, 135, 141, 139, 144, 145, 144, 145, // 2224-2231 +143, 140, 137, 134, 126, 124, 119, 116, // 2232-2239 +115, 113, 114, 116, 117, 119, 122, 124, // 2240-2247 +128, 131, 131, 133, 134, 133, 134, 132, // 2248-2255 +132, 132, 130, 131, 127, 128, 125, 123, // 2256-2263 +122, 120, 120, 119, 119, 118, 119, 119, // 2264-2271 +120, 121, 121, 122, 122, 122, 122, 123, // 2272-2279 +122, 122, 123, 123, 126, 128, 130, 135, // 2280-2287 +134, 140, 141, 142, 145, 144, 145, 143, // 2288-2295 +141, 137, 134, 129, 123, 121, 116, 116, // 2296-2303 +114, 114, 114, 116, 117, 119, 122, 123, // 2304-2311 +126, 128, 129, 131, 131, 132, 133, 133, // 2312-2319 +133, 134, 134, 132, 133, 131, 131, 129, // 2320-2327 +126, 125, 123, 122, 120, 119, 118, 118, // 2328-2335 +117, 117, 119, 119, 119, 120, 120, 121, // 2336-2343 +122, 122, 123, 123, 124, 128, 129, 130, // 2344-2351 +133, 135, 135, 141, 139, 143, 143, 141, // 2352-2359 +143, 139, 137, 134, 131, 125, 123, 120, // 2360-2367 +117, 117, 115, 116, 117, 117, 119, 121, // 2368-2375 +122, 125, 127, 129, 131, 131, 132, 133, // 2376-2383 +134, 134, 135, 134, 134, 134, 132, 132, // 2384-2391 +130, 128, 128, 124, 123, 121, 119, 119, // 2392-2399 +118, 117, 117, 117, 117, 119, 119, 120, // 2400-2407 +122, 121, 123, 123, 123, 124, 123, 125, // 2408-2415 +128, 129, 130, 134, 136, 136, 142, 140, // 2416-2423 +143, 145, 143, 143, 141, 138, 135, 132, // 2424-2431 +126, 123, 120, 117, 116, 114, 114, 115, // 2432-2439 +116, 117, 119, 121, 123, 127, 129, 131, // 2440-2447 +132, 133, 135, 135, 135, 137, 136, 135, // 2448-2455 +135, 134, 132, 130, 127, 125, 123, 121, // 2456-2463 +120, 119, 118, 117, 117, 117, 118, 119, // 2464-2471 +120, 121, 122, 123, 124, 124, 125, 125, // 2472-2479 +125, 125, 125, 126, 128, 129, 131, 132, // 2480-2487 +135, 135, 137, 141, 139, 143, 141, 140, // 2488-2495 +139, 136, 134, 130, 127, 122, 121, 117, // 2496-2503 +116, 115, 114, 116, 116, 117, 120, 122, // 2504-2511 +124, 127, 129, 131, 133, 134, 135, 135, // 2512-2519 +135, 135, 135, 135, 133, 132, 131, 129, // 2520-2527 +127, 124, 123, 122, 120, 120, 120, 119, // 2528-2535 +119, 119, 120, 120, 120, 122, 122, 122, // 2536-2543 +123, 124, 124, 125, 124, 124, 125, 125, // 2544-2551 +125, 128, 126, 129, 131, 131, 135, 134, // 2552-2559 +137, 139, 138, 140, 139, 138, 137, 135, // 2560-2567 +132, 129, 125, 122, 120, 117, 117, 116, // 2568-2575 +116, 117, 118, 119, 122, 124, 126, 129, // 2576-2583 +132, 133, 134, 135, 135, 136, 135, 135, // 2584-2591 +134, 132, 131, 129, 127, 125, 123, 122, // 2592-2599 +121, 120, 120, 120, 120, 120, 120, 122, // 2600-2607 +122, 123, 124, 125, 125, 125, 126, 126, // 2608-2615 +126, 126, 125, 125, 124, 124, 124, 124, // 2616-2623 +125, 125, 127, 129, 131, 133, 134, 137, // 2624-2631 +137, 137, 140, 137, 138, 135, 134, 131, // 2632-2639 +129, 125, 122, 120, 118, 118, 117, 117, // 2640-2647 +119, 120, 122, 123, 125, 129, 131, 132, // 2648-2655 +133, 134, 134, 134, 134, 133, 132, 131, // 2656-2663 +130, 129, 126, 125, 123, 123, 123, 122, // 2664-2671 +123, 122, 122, 123, 123, 124, 125, 125, // 2672-2679 +125, 125, 125, 127, 125, 126, 126, 125, // 2680-2687 +125, 125, 124, 124, 124, 123, 123, 123, // 2688-2695 +123, 124, 125, 127, 129, 130, 133, 134, // 2696-2703 +135, 137, 137, 139, 138, 138, 136, 135, // 2704-2711 +132, 129, 128, 123, 122, 120, 119, 119, // 2712-2719 +119, 120, 121, 123, 124, 128, 129, 131, // 2720-2727 +132, 133, 133, 134, 133, 132, 131, 130, // 2728-2735 +129, 128, 125, 125, 124, 123, 123, 123, // 2736-2743 +123, 123, 123, 123, 124, 125, 125, 125, // 2744-2751 +125, 125, 125, 125, 125, 125, 125, 125, // 2752-2759 +125, 124, 125, 125, 124, 125, 124, 124, // 2760-2767 +125, 125, 125, 126, 128, 127, 131, 131, // 2768-2775 +133, 134, 134, 137, 135, 136, 136, 135, // 2776-2783 +134, 132, 130, 128, 125, 123, 122, 121, // 2784-2791 +120, 120, 120, 120, 122, 123, 125, 128, // 2792-2799 +127, 130, 131, 131, 132, 131, 131, 131, // 2800-2807 +130, 129, 128, 128, 126, 125, 125, 124, // 2808-2815 +124, 124, 123, 124, 123, 124, 124, 124, // 2816-2823 +125, 125, 125, 125, 125, 125, 125, 125, // 2824-2831 +125, 125, 125, 125, 125, 126, 126, 126, // 2832-2839 +128, 128, 128, 129, 126, 129, 128, 128, // 2840-2847 +129, 129, 129, 130, 130, 131, 131, 131, // 2848-2855 +132, 132, 132, 132, 132, 131, 131, 130, // 2856-2863 +129, 128, 127, 125, 125, 125, 124, 124, // 2864-2871 +124, 125, 125, 125, 126, 126, 128, 128, // 2872-2879 +128, 128, 128, 126, 125, 125, 125, 125, // 2880-2887 +124, 124, 124, 124, 124, 124, 124, 125, // 2888-2895 +125, 125, 125, 126, 128, 125, 128, 126, // 2896-2903 +126, 128, 126, 126, 128, 127, 128, 129, // 2904-2911 +129, 129, 130, 129, 129, 130, 130, 129, // 2912-2919 +130, 129, 128, 129, 126, 128, 126, 126, // 2920-2927 +128, 126, 127, 128, 129, 129, 129, 129, // 2928-2935 +129, 130, 129, 130, 129, 129, 129, 127, // 2936-2943 +126, 127, 125, 125, 125, 125, 125, 125, // 2944-2951 +125, 125, 125, 125, 126, 126, 126, 126, // 2952-2959 +126, 126, 126, 126, 126, 127, 128, 128, // 2960-2967 +127, 128, 127, 128, 127, 128, 128, 127, // 2968-2975 +128, 127, 128, 127, 127, 126, 126, 128, // 2976-2983 +126, 126, 128, 127, 128, 128, 127, 128, // 2984-2991 +127, 128, 127, 128, 127, 128, 128, 127, // 2992-2999 +128, 127, 128, 128, 127, 128, 128, 127, // 3000-3007 +128, 129, 129, 127, 129, 127, 128, 129, // 3008-3015 +128, 129, 129, 129, 129, 128, 127, 128, // 3016-3023 +126, 127, 128, 126, 128, 128, 126, 126, // 3024-3031 +126, 126, 126, 128, 127, 128, 129, 127, // 3032-3039 +129, 128, 127, 128, 127, 126, 126, 126, // 3040-3047 +126, 126, 126, 126, 126, 126, 126, 127, // 3048-3055 +128, 127, 128, 127, 128, 127, 128, 127, // 3056-3063 +128}; + +const char Q[3335] = {128, 127, 128, 127, 128, 127, 128, 127, // 0-7 +128, 128, 127, 128, 127, 128, 127, 128, // 8-15 +128, 128, 127, 128, 127, 128, 127, 128, // 16-23 +129, 134, 127, 121, 133, 118, 129, 124, // 24-31 +124, 131, 120, 133, 127, 134, 122, 135, // 32-39 +119, 130, 124, 123, 126, 117, 135, 119, // 40-47 +127, 123, 147, 124, 125, 143, 115, 137, // 48-55 +122, 136, 120, 128, 122, 119, 125, 117, // 56-63 +137, 117, 132, 124, 127, 129, 127, 131, // 64-71 +126, 129, 126, 129, 125, 129, 127, 123, // 72-79 +130, 120, 131, 122, 127, 129, 125, 129, // 80-87 +124, 131, 123, 131, 123, 130, 123, 129, // 88-95 +128, 128, 130, 129, 129, 127, 129, 125, // 96-103 +129, 125, 131, 125, 126, 129, 124, 128, // 104-111 +125, 126, 128, 125, 129, 125, 129, 126, // 112-119 +128, 126, 127, 128, 127, 128, 128, 127, // 120-127 +125, 129, 126, 129, 128, 127, 128, 127, // 128-135 +128, 126, 128, 125, 127, 125, 127, 126, // 136-143 +129, 127, 128, 129, 128, 129, 128, 129, // 144-151 +128, 128, 126, 128, 126, 127, 128, 126, // 152-159 +127, 126, 127, 128, 127, 128, 127, 128, // 160-167 +129, 126, 129, 125, 128, 125, 129, 125, // 168-175 +127, 126, 127, 129, 126, 129, 125, 129, // 176-183 +124, 130, 123, 132, 123, 129, 128, 125, // 184-191 +129, 125, 130, 125, 129, 124, 129, 125, // 192-199 +128, 126, 128, 127, 128, 126, 129, 126, // 200-207 +129, 127, 128, 128, 126, 129, 125, 128, // 208-215 +126, 128, 126, 128, 126, 127, 128, 127, // 216-223 +128, 128, 127, 128, 128, 125, 128, 127, // 224-231 +128, 128, 126, 128, 127, 126, 127, 126, // 232-239 +128, 126, 128, 126, 128, 127, 128, 127, // 240-247 +128, 127, 128, 126, 128, 126, 128, 129, // 248-255 +125, 129, 125, 129, 125, 128, 128, 126, // 256-263 +129, 127, 128, 127, 128, 128, 126, 126, // 264-271 +127, 125, 127, 126, 128, 125, 129, 126, // 272-279 +129, 125, 129, 128, 129, 128, 127, 128, // 280-287 +126, 128, 126, 129, 125, 129, 124, 129, // 288-295 +125, 130, 125, 127, 128, 126, 130, 124, // 296-303 +130, 124, 130, 125, 129, 127, 125, 129, // 304-311 +125, 128, 126, 128, 127, 126, 129, 126, // 312-319 +128, 129, 126, 129, 128, 126, 128, 127, // 320-327 +125, 127, 128, 125, 128, 126, 126, 127, // 328-335 +128, 126, 128, 127, 125, 129, 124, 128, // 336-343 +128, 128, 127, 125, 129, 125, 129, 126, // 344-351 +128, 125, 128, 125, 128, 125, 128, 126, // 352-359 +128, 127, 126, 129, 125, 130, 124, 129, // 360-367 +125, 128, 127, 125, 129, 125, 129, 125, // 368-375 +127, 125, 126, 128, 126, 128, 127, 128, // 376-383 +126, 126, 128, 126, 129, 124, 129, 125, // 384-391 +128, 126, 126, 129, 126, 128, 125, 129, // 392-399 +126, 128, 126, 127, 128, 125, 129, 126, // 400-407 +127, 128, 127, 128, 127, 129, 126, 128, // 408-415 +125, 129, 124, 130, 125, 125, 129, 126, // 416-423 +129, 125, 129, 124, 129, 125, 129, 129, // 424-431 +125, 129, 125, 128, 129, 126, 129, 128, // 432-439 +127, 128, 125, 129, 126, 127, 128, 125, // 440-447 +129, 126, 127, 129, 125, 129, 123, 130, // 448-455 +126, 128, 127, 128, 129, 125, 132, 122, // 456-463 +132, 123, 131, 125, 125, 132, 120, 131, // 464-471 +123, 130, 125, 128, 131, 125, 131, 124, // 472-479 +133, 124, 129, 128, 125, 131, 122, 131, // 480-487 +125, 128, 126, 124, 130, 124, 131, 125, // 488-495 +130, 128, 125, 130, 124, 129, 125, 127, // 496-503 +128, 127, 130, 123, 129, 125, 128, 128, // 504-511 +125, 130, 125, 130, 124, 131, 125, 128, // 512-519 +127, 124, 130, 125, 129, 125, 129, 128, // 520-527 +125, 128, 126, 129, 127, 128, 129, 124, // 528-535 +131, 124, 127, 129, 123, 130, 124, 131, // 536-543 +125, 128, 128, 125, 131, 123, 129, 127, // 544-551 +125, 129, 123, 130, 125, 129, 128, 128, // 552-559 +129, 125, 130, 124, 129, 127, 126, 128, // 560-567 +126, 126, 125, 128, 127, 128, 126, 128, // 568-575 +126, 128, 127, 126, 127, 128, 127, 128, // 576-583 +128, 128, 128, 128, 125, 129, 125, 126, // 584-591 +129, 124, 130, 124, 129, 125, 126, 130, // 592-599 +125, 131, 124, 129, 125, 128, 126, 125, // 600-607 +128, 124, 130, 124, 129, 124, 129, 125, // 608-615 +127, 128, 125, 131, 125, 131, 123, 127, // 616-623 +126, 126, 128, 125, 128, 125, 126, 125, // 624-631 +127, 126, 128, 127, 128, 127, 128, 127, // 632-639 +128, 128, 127, 128, 126, 128, 126, 126, // 640-647 +127, 126, 128, 127, 125, 129, 125, 129, // 648-655 +125, 127, 129, 125, 129, 126, 128, 128, // 656-663 +127, 129, 128, 129, 127, 128, 126, 128, // 664-671 +127, 125, 129, 125, 129, 126, 126, 128, // 672-679 +125, 127, 126, 126, 128, 126, 128, 127, // 680-687 +126, 129, 125, 129, 125, 128, 127, 125, // 688-695 +129, 125, 129, 128, 127, 129, 127, 129, // 696-703 +129, 129, 131, 130, 131, 131, 129, 131, // 704-711 +129, 130, 127, 129, 127, 125, 127, 123, // 712-719 +123, 123, 122, 122, 120, 120, 118, 119, // 720-727 +119, 118, 120, 120, 123, 123, 129, 130, // 728-735 +134, 137, 140, 143, 143, 145, 145, 145, // 736-743 +143, 143, 139, 136, 131, 125, 120, 116, // 744-751 +112, 111, 108, 108, 107, 109, 109, 112, // 752-759 +113, 114, 117, 117, 120, 126, 124, 127, // 760-767 +139, 131, 141, 143, 144, 149, 150, 155, // 768-775 +149, 153, 148, 143, 140, 134, 125, 121, // 776-783 +117, 112, 111, 109, 108, 108, 111, 111, // 784-791 +114, 114, 117, 118, 117, 120, 116, 117, // 792-799 +122, 121, 117, 132, 128, 130, 143, 140, // 800-807 +147, 148, 157, 151, 154, 155, 146, 144, // 808-815 +140, 131, 125, 120, 114, 112, 110, 109, // 816-823 +108, 111, 109, 112, 114, 112, 116, 115, // 824-831 +113, 114, 112, 117, 120, 113, 130, 129, // 832-839 +129, 143, 143, 151, 153, 162, 158, 158, // 840-847 +162, 151, 146, 143, 132, 125, 118, 113, // 848-855 +108, 105, 106, 102, 108, 107, 109, 113, // 856-863 +113, 113, 117, 114, 114, 114, 113, 123, // 864-871 +115, 119, 138, 121, 143, 145, 146, 155, // 872-879 +157, 164, 155, 162, 157, 144, 146, 135, // 880-887 +123, 122, 112, 108, 105, 106, 102, 107, // 888-895 +111, 110, 116, 117, 120, 120, 120, 122, // 896-903 +114, 117, 113, 119, 117, 112, 136, 117, // 904-911 +133, 145, 138, 153, 154, 160, 157, 160, // 912-919 +160, 147, 145, 142, 123, 125, 114, 108, // 920-927 +108, 104, 105, 104, 112, 111, 114, 119, // 928-935 +120, 122, 122, 124, 119, 116, 116, 116, // 936-943 +122, 108, 131, 125, 119, 148, 135, 148, // 944-951 +154, 157, 158, 158, 162, 152, 143, 146, // 952-959 +129, 120, 120, 106, 106, 105, 102, 104, // 960-967 +108, 112, 114, 120, 123, 126, 129, 127, // 968-975 +126, 123, 117, 114, 119, 117, 107, 131, // 976-983 +119, 119, 143, 134, 145, 154, 157, 157, // 984-991 +160, 162, 152, 145, 145, 129, 120, 120, // 992-999 +106, 106, 106, 102, 105, 110, 112, 116, // 1000-1007 +123, 125, 128, 132, 129, 126, 125, 117, // 1008-1015 +113, 114, 117, 104, 118, 125, 111, 139, // 1016-1023 +137, 140, 152, 157, 158, 160, 164, 158, // 1024-1031 +147, 147, 137, 120, 122, 111, 103, 106, // 1032-1039 +102, 102, 108, 112, 114, 122, 126, 127, // 1040-1047 +132, 134, 126, 129, 122, 113, 112, 115, // 1048-1055 +112, 101, 127, 114, 114, 143, 132, 144, // 1056-1063 +156, 160, 158, 164, 164, 155, 148, 146, // 1064-1071 +131, 120, 118, 106, 102, 105, 100, 103, // 1072-1079 +111, 112, 117, 128, 128, 130, 136, 133, // 1080-1087 +129, 129, 119, 113, 109, 114, 109, 100, // 1088-1095 +126, 112, 115, 143, 134, 145, 160, 162, // 1096-1103 +160, 168, 164, 155, 149, 145, 129, 117, // 1104-1111 +116, 102, 99, 101, 97, 102, 110, 112, // 1112-1119 +117, 127, 131, 132, 138, 136, 131, 130, // 1120-1127 +122, 114, 109, 111, 112, 97, 115, 122, // 1128-1135 +106, 139, 141, 138, 160, 166, 158, 170, // 1136-1143 +168, 157, 150, 146, 133, 116, 116, 104, // 1144-1151 + 95, 100, 98, 97, 108, 112, 115, 128, // 1152-1159 +132, 133, 138, 141, 134, 132, 126, 117, // 1160-1167 +111, 105, 112, 102, 98, 124, 109, 117, // 1168-1175 +147, 137, 148, 170, 164, 164, 174, 164, // 1176-1183 +154, 148, 140, 122, 112, 110, 95, 93, // 1184-1191 + 99, 95, 101, 112, 114, 122, 134, 137, // 1192-1199 +138, 143, 143, 134, 133, 125, 113, 108, // 1200-1207 +102, 105, 100, 95, 121, 110, 117, 147, // 1208-1215 +140, 149, 172, 166, 164, 176, 164, 153, // 1216-1223 +147, 137, 120, 111, 107, 97, 93, 99, // 1224-1231 + 97, 102, 113, 119, 125, 137, 141, 140, // 1232-1239 +144, 144, 134, 132, 125, 112, 106, 99, // 1240-1247 +102, 101, 91, 115, 116, 112, 146, 147, // 1248-1255 +146, 172, 174, 164, 176, 168, 152, 147, // 1256-1263 +137, 121, 109, 105, 97, 89, 95, 98, // 1264-1271 +100, 112, 120, 125, 137, 143, 143, 144, // 1272-1279 +147, 139, 132, 128, 114, 105, 99, 95, // 1280-1287 +100, 93, 99, 123, 112, 131, 155, 147, // 1288-1295 +160, 182, 170, 168, 176, 158, 146, 141, // 1296-1303 +126, 110, 104, 99, 89, 91, 97, 100, // 1304-1311 +106, 119, 127, 134, 144, 148, 144, 147, // 1312-1319 +145, 134, 129, 120, 107, 100, 93, 93, // 1320-1327 + 99, 91, 111, 123, 114, 146, 158, 151, // 1328-1335 +172, 182, 166, 172, 170, 149, 141, 135, // 1336-1343 +116, 103, 99, 93, 87, 89, 100, 102, // 1344-1351 +111, 126, 132, 140, 150, 149, 146, 149, // 1352-1359 +143, 132, 126, 115, 103, 95, 89, 93, // 1360-1367 + 97, 91, 112, 126, 120, 146, 162, 156, // 1368-1375 +172, 184, 168, 170, 168, 147, 137, 130, // 1376-1383 +112, 100, 95, 91, 89, 89, 101, 107, // 1384-1391 +113, 130, 138, 143, 152, 152, 147, 148, // 1392-1399 +143, 131, 123, 113, 102, 95, 87, 87, // 1400-1407 + 97, 95, 104, 130, 127, 140, 164, 164, // 1408-1415 +166, 182, 174, 164, 166, 151, 135, 125, // 1416-1423 +114, 100, 93, 89, 91, 91, 98, 109, // 1424-1431 +115, 126, 140, 145, 150, 155, 151, 146, // 1432-1439 +143, 133, 122, 114, 103, 95, 87, 83, // 1440-1447 + 91, 100, 98, 117, 138, 134, 154, 172, // 1448-1455 +166, 172, 182, 168, 160, 157, 141, 124, // 1456-1463 +116, 106, 95, 89, 91, 93, 93, 105, // 1464-1471 +117, 123, 135, 146, 150, 153, 154, 148, // 1472-1479 +143, 137, 125, 114, 107, 97, 89, 85, // 1480-1487 + 87, 99, 101, 108, 135, 139, 144, 168, // 1488-1495 +172, 168, 178, 176, 160, 157, 146, 129, // 1496-1503 +117, 108, 98, 91, 87, 93, 95, 100, // 1504-1511 +113, 124, 132, 143, 151, 153, 155, 152, // 1512-1519 +145, 140, 130, 118, 111, 99, 93, 87, // 1520-1527 + 85, 89, 102, 106, 114, 141, 145, 150, // 1528-1535 +170, 174, 170, 176, 172, 157, 149, 140, // 1536-1543 +123, 112, 102, 95, 91, 87, 93, 101, // 1544-1551 +105, 117, 131, 137, 146, 154, 155, 155, // 1552-1559 +149, 143, 137, 124, 114, 108, 97, 91, // 1560-1567 + 87, 85, 91, 105, 111, 117, 143, 149, // 1568-1575 +152, 170, 176, 168, 172, 170, 154, 146, // 1576-1583 +135, 121, 111, 100, 95, 93, 89, 95, // 1584-1591 +105, 109, 119, 134, 141, 146, 153, 155, // 1592-1599 +154, 148, 141, 135, 122, 112, 106, 98, // 1600-1607 + 91, 89, 87, 91, 105, 113, 117, 139, // 1608-1615 +153, 152, 164, 176, 170, 166, 166, 155, // 1616-1623 +143, 134, 122, 112, 102, 95, 95, 93, // 1624-1631 + 95, 105, 112, 118, 131, 141, 146, 151, // 1632-1639 +154, 152, 149, 140, 133, 125, 113, 106, // 1640-1647 +102, 93, 91, 91, 93, 100, 113, 120, // 1648-1655 +128, 147, 156, 155, 166, 172, 166, 162, // 1656-1663 +158, 147, 137, 126, 116, 109, 102, 95, // 1664-1671 + 99, 99, 102, 111, 119, 125, 135, 143, // 1672-1679 +148, 149, 150, 149, 143, 134, 128, 120, // 1680-1687 +111, 105, 102, 97, 93, 95, 97, 105, // 1688-1695 +116, 125, 131, 146, 157, 155, 162, 168, // 1696-1703 +162, 155, 152, 144, 135, 124, 116, 111, // 1704-1711 +105, 99, 102, 105, 106, 112, 121, 127, // 1712-1719 +135, 141, 146, 148, 146, 145, 143, 132, // 1720-1727 +125, 120, 112, 106, 103, 100, 99, 99, // 1728-1735 +100, 106, 115, 125, 131, 140, 154, 154, // 1736-1743 +155, 162, 162, 154, 150, 145, 138, 129, // 1744-1751 +119, 113, 111, 105, 102, 107, 109, 112, // 1752-1759 +118, 125, 132, 137, 141, 145, 146, 143, // 1760-1767 +142, 137, 127, 122, 117, 112, 108, 105, // 1768-1775 +103, 104, 103, 104, 110, 118, 128, 132, // 1776-1783 +139, 150, 152, 151, 156, 158, 151, 147, // 1784-1791 +143, 138, 131, 121, 115, 114, 109, 105, // 1792-1799 +109, 112, 113, 117, 124, 131, 135, 139, // 1800-1807 +142, 143, 143, 139, 135, 131, 123, 118, // 1808-1815 +114, 112, 109, 106, 106, 106, 106, 108, // 1816-1823 +114, 124, 131, 132, 143, 150, 149, 151, // 1824-1831 +154, 154, 149, 144, 140, 137, 129, 119, // 1832-1839 +116, 114, 110, 108, 111, 113, 116, 119, // 1840-1847 +123, 132, 136, 138, 141, 143, 141, 138, // 1848-1855 +134, 130, 125, 119, 114, 113, 112, 108, // 1856-1863 +107, 108, 108, 108, 112, 120, 129, 131, // 1864-1871 +136, 146, 149, 149, 151, 152, 151, 147, // 1872-1879 +141, 138, 135, 125, 117, 116, 113, 109, // 1880-1887 +108, 110, 114, 117, 119, 125, 134, 137, // 1888-1895 +140, 141, 142, 142, 137, 132, 129, 124, // 1896-1903 +118, 114, 112, 111, 109, 106, 106, 108, // 1904-1911 +108, 112, 122, 129, 131, 138, 146, 149, // 1912-1919 +151, 151, 152, 152, 147, 140, 137, 133, // 1920-1927 +123, 116, 113, 111, 109, 108, 109, 114, // 1928-1935 +118, 121, 128, 134, 139, 141, 142, 143, // 1936-1943 +142, 138, 132, 129, 123, 119, 114, 112, // 1944-1951 +111, 109, 107, 106, 108, 109, 111, 116, // 1952-1959 +125, 131, 134, 143, 148, 149, 151, 151, // 1960-1967 +151, 149, 144, 138, 135, 130, 121, 115, // 1968-1975 +112, 111, 109, 109, 111, 116, 120, 124, // 1976-1983 +131, 136, 141, 143, 143, 142, 142, 137, // 1984-1991 +132, 128, 122, 118, 114, 112, 111, 110, // 1992-1999 +108, 108, 108, 109, 110, 114, 122, 129, // 2000-2007 +132, 139, 145, 149, 150, 150, 151, 151, // 2008-2015 +147, 141, 137, 132, 125, 118, 112, 111, // 2016-2023 +109, 109, 109, 112, 117, 123, 129, 134, // 2024-2031 +139, 143, 143, 143, 143, 140, 137, 132, // 2032-2039 +125, 121, 118, 114, 112, 112, 111, 110, // 2040-2047 +109, 109, 109, 110, 112, 117, 125, 131, // 2048-2055 +135, 141, 146, 149, 151, 151, 151, 151, // 2056-2063 +146, 140, 135, 129, 123, 116, 111, 109, // 2064-2071 +109, 109, 111, 114, 119, 126, 132, 137, // 2072-2079 +140, 143, 145, 145, 143, 139, 136, 132, // 2080-2087 +125, 120, 117, 114, 113, 112, 111, 111, // 2088-2095 +111, 110, 109, 109, 110, 112, 117, 124, // 2096-2103 +131, 134, 140, 145, 149, 151, 151, 151, // 2104-2111 +150, 147, 141, 135, 129, 123, 117, 112, // 2112-2119 +109, 109, 110, 112, 114, 119, 125, 132, // 2120-2127 +137, 140, 143, 145, 145, 143, 140, 136, // 2128-2135 +132, 128, 122, 119, 116, 115, 113, 112, // 2136-2143 +112, 111, 111, 111, 110, 109, 110, 112, // 2144-2151 +114, 122, 129, 133, 138, 143, 148, 152, // 2152-2159 +152, 151, 151, 150, 145, 140, 133, 125, // 2160-2167 +120, 116, 111, 108, 109, 111, 113, 117, // 2168-2175 +121, 128, 135, 139, 143, 144, 145, 144, // 2176-2183 +142, 137, 134, 130, 125, 121, 118, 116, // 2184-2191 +115, 114, 112, 111, 111, 110, 110, 109, // 2192-2199 +109, 110, 111, 112, 117, 125, 132, 136, // 2200-2207 +142, 146, 151, 154, 154, 153, 152, 149, // 2208-2215 +144, 138, 130, 122, 117, 112, 109, 108, // 2216-2223 +108, 111, 114, 118, 123, 130, 135, 140, // 2224-2231 +143, 143, 143, 143, 141, 137, 134, 130, // 2232-2239 +126, 122, 119, 116, 114, 113, 112, 111, // 2240-2247 +109, 109, 109, 109, 109, 109, 111, 112, // 2248-2255 +114, 119, 127, 135, 140, 144, 150, 153, // 2256-2263 +158, 157, 155, 153, 149, 144, 138, 130, // 2264-2271 +121, 116, 112, 108, 106, 106, 109, 113, // 2272-2279 +117, 122, 128, 134, 138, 143, 143, 144, // 2280-2287 +143, 142, 140, 137, 132, 128, 123, 120, // 2288-2295 +117, 114, 112, 111, 111, 111, 110, 111, // 2296-2303 +111, 112, 113, 113, 114, 116, 117, 119, // 2304-2311 +123, 131, 138, 143, 146, 150, 154, 156, // 2312-2319 +157, 154, 151, 147, 143, 137, 129, 119, // 2320-2327 +113, 110, 106, 105, 105, 107, 112, 117, // 2328-2335 +122, 129, 135, 140, 143, 145, 146, 145, // 2336-2343 +143, 140, 136, 131, 125, 120, 116, 114, // 2344-2351 +112, 111, 111, 111, 112, 113, 114, 116, // 2352-2359 +117, 118, 120, 121, 122, 122, 122, 122, // 2360-2367 +123, 126, 134, 139, 142, 145, 147, 150, // 2368-2375 +152, 152, 149, 146, 142, 137, 131, 123, // 2376-2383 +116, 112, 108, 106, 106, 107, 110, 114, // 2384-2391 +120, 126, 133, 138, 141, 143, 145, 145, // 2392-2399 +143, 141, 137, 132, 126, 122, 117, 114, // 2400-2407 +113, 112, 113, 113, 114, 116, 118, 120, // 2408-2415 +123, 124, 125, 125, 126, 125, 124, 122, // 2416-2423 +121, 120, 119, 120, 125, 132, 136, 140, // 2424-2431 +143, 143, 146, 148, 148, 146, 143, 138, // 2432-2439 +133, 128, 121, 115, 111, 108, 108, 109, // 2440-2447 +112, 114, 119, 124, 131, 136, 140, 143, // 2448-2455 +143, 143, 142, 139, 136, 132, 126, 122, // 2456-2463 +119, 117, 116, 116, 117, 118, 120, 122, // 2464-2471 +124, 125, 128, 128, 127, 128, 126, 125, // 2472-2479 +122, 120, 117, 116, 115, 114, 114, 116, // 2480-2487 +119, 125, 132, 138, 143, 144, 146, 148, // 2488-2495 +149, 149, 146, 141, 135, 129, 123, 119, // 2496-2503 +114, 111, 109, 109, 111, 114, 119, 123, // 2504-2511 +129, 133, 137, 140, 142, 143, 141, 138, // 2512-2519 +134, 131, 128, 123, 120, 119, 117, 118, // 2520-2527 +119, 121, 123, 125, 127, 127, 129, 129, // 2528-2535 +128, 127, 125, 123, 120, 119, 117, 116, // 2536-2543 +114, 114, 114, 115, 117, 119, 122, 127, // 2544-2551 +134, 140, 143, 146, 146, 147, 146, 146, // 2552-2559 +144, 141, 136, 131, 124, 120, 116, 114, // 2560-2567 +113, 113, 113, 116, 119, 123, 129, 132, // 2568-2575 +135, 136, 137, 137, 136, 134, 132, 129, // 2576-2583 +125, 123, 122, 121, 122, 122, 123, 124, // 2584-2591 +126, 128, 129, 130, 130, 129, 128, 125, // 2592-2599 +124, 123, 121, 120, 119, 117, 116, 116, // 2600-2607 +116, 117, 119, 120, 121, 123, 125, 129, // 2608-2615 +134, 138, 141, 143, 143, 143, 143, 143, // 2616-2623 +142, 140, 137, 134, 129, 123, 120, 117, // 2624-2631 +116, 116, 116, 116, 117, 119, 122, 125, // 2632-2639 +129, 131, 132, 132, 132, 132, 131, 131, // 2640-2647 +130, 129, 128, 127, 128, 127, 128, 129, // 2648-2655 +129, 129, 129, 129, 127, 126, 125, 123, // 2656-2663 +122, 122, 120, 119, 119, 119, 119, 119, // 2664-2671 +119, 120, 120, 122, 122, 123, 124, 125, // 2672-2679 +125, 127, 131, 133, 137, 139, 141, 141, // 2680-2687 +141, 141, 140, 139, 138, 136, 132, 129, // 2688-2695 +123, 120, 117, 116, 116, 117, 118, 119, // 2696-2703 +120, 122, 125, 128, 130, 132, 132, 133, // 2704-2711 +132, 132, 131, 131, 131, 130, 129, 129, // 2712-2719 +128, 128, 127, 128, 126, 126, 125, 124, // 2720-2727 +123, 122, 122, 121, 121, 120, 120, 120, // 2728-2735 +120, 120, 120, 121, 122, 122, 122, 123, // 2736-2743 +123, 123, 124, 125, 126, 129, 132, 135, // 2744-2751 +138, 140, 142, 142, 141, 141, 140, 138, // 2752-2759 +136, 133, 130, 125, 121, 117, 116, 114, // 2760-2767 +114, 116, 117, 120, 122, 123, 126, 129, // 2768-2775 +131, 132, 133, 134, 134, 133, 132, 131, // 2776-2783 +130, 129, 129, 128, 128, 128, 126, 125, // 2784-2791 +125, 124, 123, 123, 123, 122, 122, 122, // 2792-2799 +122, 122, 122, 122, 122, 122, 122, 123, // 2800-2807 +123, 123, 123, 124, 125, 125, 126, 128, // 2808-2815 +127, 130, 132, 134, 137, 139, 140, 140, // 2816-2823 +139, 138, 136, 134, 132, 131, 127, 124, // 2824-2831 +121, 119, 117, 116, 116, 117, 119, 122, // 2832-2839 +123, 125, 128, 129, 131, 132, 132, 133, // 2840-2847 +134, 133, 132, 131, 130, 129, 129, 128, // 2848-2855 +127, 128, 127, 126, 125, 125, 124, 123, // 2856-2863 +123, 123, 123, 123, 122, 122, 122, 122, // 2864-2871 +122, 122, 123, 123, 123, 124, 124, 125, // 2872-2879 +125, 125, 126, 128, 128, 129, 131, 132, // 2880-2887 +134, 137, 138, 138, 138, 137, 136, 134, // 2888-2895 +132, 131, 128, 125, 123, 121, 119, 117, // 2896-2903 +117, 118, 120, 122, 124, 126, 129, 130, // 2904-2911 +131, 132, 132, 133, 133, 133, 132, 131, // 2912-2919 +130, 129, 127, 128, 126, 127, 125, 125, // 2920-2927 +125, 124, 123, 123, 123, 123, 123, 123, // 2928-2935 +123, 123, 123, 123, 123, 123, 123, 124, // 2936-2943 +124, 125, 125, 125, 125, 125, 125, 126, // 2944-2951 +127, 128, 129, 131, 132, 134, 136, 137, // 2952-2959 +138, 137, 136, 135, 133, 131, 129, 128, // 2960-2967 +125, 123, 121, 120, 119, 119, 120, 122, // 2968-2975 +123, 125, 127, 130, 131, 131, 132, 132, // 2976-2983 +132, 132, 131, 131, 129, 128, 128, 125, // 2984-2991 +125, 125, 125, 125, 125, 125, 124, 123, // 2992-2999 +123, 123, 123, 123, 123, 123, 122, 122, // 3000-3007 +122, 123, 123, 123, 124, 124, 125, 125, // 3008-3015 +125, 125, 126, 128, 127, 129, 129, 131, // 3016-3023 +132, 134, 135, 137, 137, 137, 135, 134, // 3024-3031 +132, 131, 129, 126, 125, 123, 122, 120, // 3032-3039 +120, 120, 120, 122, 124, 126, 129, 130, // 3040-3047 +131, 131, 131, 131, 131, 130, 129, 129, // 3048-3055 +127, 126, 125, 125, 125, 125, 125, 125, // 3056-3063 +125, 125, 125, 125, 124, 124, 123, 123, // 3064-3071 +123, 122, 122, 122, 123, 123, 123, 124, // 3072-3079 +125, 125, 125, 126, 126, 128, 128, 129, // 3080-3087 +129, 128, 130, 131, 132, 134, 135, 136, // 3088-3095 +137, 136, 135, 134, 132, 131, 129, 128, // 3096-3103 +125, 124, 123, 122, 121, 122, 122, 123, // 3104-3111 +125, 127, 129, 130, 131, 130, 130, 130, // 3112-3119 +129, 129, 127, 128, 125, 124, 124, 123, // 3120-3127 +124, 125, 125, 125, 126, 125, 125, 124, // 3128-3135 +124, 123, 123, 123, 123, 123, 123, 123, // 3136-3143 +123, 124, 125, 126, 128, 127, 128, 129, // 3144-3151 +129, 130, 131, 131, 132, 132, 132, 133, // 3152-3159 +134, 134, 134, 134, 134, 132, 131, 129, // 3160-3167 +128, 127, 125, 125, 124, 123, 123, 123, // 3168-3175 +124, 125, 126, 128, 127, 128, 127, 128, // 3176-3183 +126, 126, 125, 125, 124, 124, 123, 123, // 3184-3191 +124, 125, 125, 126, 126, 126, 125, 125, // 3192-3199 +125, 124, 124, 123, 123, 123, 123, 123, // 3200-3207 +124, 125, 126, 128, 129, 129, 129, 130, // 3208-3215 +131, 131, 132, 132, 132, 132, 132, 132, // 3216-3223 +132, 133, 133, 132, 132, 131, 130, 129, // 3224-3231 +129, 128, 127, 125, 125, 124, 124, 124, // 3232-3239 +124, 125, 125, 125, 125, 125, 125, 125, // 3240-3247 +125, 125, 125, 124, 124, 124, 124, 124, // 3248-3255 +125, 125, 125, 125, 125, 126, 126, 126, // 3256-3263 +126, 125, 125, 125, 125, 125, 125, 125, // 3264-3271 +126, 126, 128, 127, 129, 130, 130, 130, // 3272-3279 +130, 130, 130, 130, 130, 130, 130, 129, // 3280-3287 +129, 129, 128, 129, 130, 130, 130, 130, // 3288-3295 +129, 129, 127, 128, 128, 126, 126, 126, // 3296-3303 +125, 125, 125, 124, 124, 125, 125, 125, // 3304-3311 +125, 125, 125, 125, 125, 125, 125, 125, // 3312-3319 +125, 125, 125, 126, 126, 126, 128, 127, // 3320-3327 +126, 126, 127, 126, 127, 126, 126}; + +const char R[2967] = {128, 128, 128, 127, 128, 127, 128, 127, // 0-7 +128, 127, 128, 127, 128, 127, 128, 127, // 8-15 +127, 128, 127, 128, 129, 130, 134, 136, // 16-23 +136, 136, 124, 120, 114, 116, 126, 130, // 24-31 +137, 128, 120, 112, 111, 114, 119, 124, // 32-39 +128, 127, 130, 126, 127, 133, 131, 139, // 40-47 +134, 135, 132, 127, 131, 127, 131, 131, // 48-55 +129, 127, 125, 125, 126, 125, 128, 128, // 56-63 +129, 131, 134, 136, 135, 131, 125, 123, // 64-71 +123, 128, 132, 131, 128, 120, 114, 111, // 72-79 +110, 112, 113, 114, 112, 116, 132, 155, // 80-87 +164, 157, 137, 103, 103, 105, 138, 158, // 88-95 +162, 152, 120, 109, 100, 112, 124, 134, // 96-103 +133, 132, 129, 134, 136, 135, 130, 120, // 104-111 +121, 124, 136, 141, 139, 128, 115, 111, // 112-119 +114, 122, 128, 124, 116, 110, 108, 112, // 120-127 +116, 124, 130, 144, 155, 150, 146, 119, // 128-135 +107, 106, 113, 145, 149, 157, 139, 119, // 136-143 +109, 105, 117, 129, 138, 138, 134, 129, // 144-151 +131, 128, 132, 126, 128, 127, 134, 137, // 152-159 +135, 127, 114, 112, 112, 121, 126, 127, // 160-167 +120, 111, 103, 106, 111, 125, 141, 160, // 168-175 +164, 151, 135, 104, 105, 105, 131, 152, // 176-183 +156, 155, 130, 115, 105, 109, 118, 131, // 184-191 +135, 138, 133, 134, 131, 129, 129, 124, // 192-199 +126, 131, 139, 138, 134, 120, 112, 110, // 200-207 +114, 124, 128, 125, 116, 106, 103, 105, // 208-215 +114, 130, 148, 168, 162, 151, 123, 101, // 216-223 +102, 107, 142, 153, 162, 148, 124, 111, // 224-231 +102, 111, 121, 132, 134, 135, 131, 134, // 232-239 +131, 134, 129, 127, 129, 132, 136, 134, // 240-247 +129, 117, 112, 112, 119, 124, 125, 120, // 248-255 +112, 105, 104, 108, 120, 138, 162, 170, // 256-263 +160, 143, 107, 100, 98, 122, 151, 160, // 264-271 +162, 136, 117, 103, 105, 115, 128, 134, // 272-279 +135, 131, 132, 133, 135, 134, 129, 128, // 280-287 +127, 133, 134, 131, 121, 115, 111, 114, // 288-295 +120, 125, 124, 117, 107, 102, 102, 111, // 296-303 +131, 155, 176, 170, 154, 119, 95, 95, // 304-311 +108, 143, 158, 166, 147, 123, 107, 101, // 312-319 +111, 122, 133, 134, 134, 131, 134, 135, // 320-327 +135, 131, 130, 126, 129, 130, 129, 125, // 328-335 +116, 114, 112, 116, 121, 122, 119, 111, // 336-343 +104, 101, 107, 124, 151, 176, 176, 162, // 344-351 +125, 95, 91, 101, 140, 158, 170, 152, // 352-359 +126, 107, 99, 110, 121, 133, 134, 133, // 360-367 +130, 134, 136, 139, 134, 130, 122, 124, // 368-375 +124, 130, 129, 120, 114, 107, 112, 116, // 376-383 +122, 121, 113, 104, 100, 103, 128, 160, // 384-391 +184, 182, 158, 114, 89, 85, 108, 147, // 392-399 +166, 172, 143, 119, 99, 100, 113, 127, // 400-407 +136, 135, 131, 132, 138, 142, 141, 130, // 408-415 +119, 113, 120, 130, 139, 132, 117, 102, // 416-423 + 99, 106, 118, 125, 122, 112, 99, 101, // 424-431 +119, 162, 184, 184, 164, 112, 87, 77, // 432-439 +111, 150, 172, 176, 142, 112, 89, 95, // 440-447 +113, 134, 144, 142, 133, 130, 132, 135, // 448-455 +136, 129, 122, 118, 124, 130, 134, 123, // 456-463 +110, 99, 97, 107, 117, 125, 121, 111, // 464-471 +106, 116, 151, 180, 184, 172, 127, 93, // 472-479 + 77, 100, 139, 168, 176, 150, 117, 91, // 480-487 + 87, 105, 131, 146, 148, 139, 131, 129, // 488-495 +132, 135, 133, 125, 120, 122, 125, 129, // 496-503 +121, 112, 102, 98, 105, 112, 119, 119, // 504-511 +111, 111, 127, 160, 184, 184, 164, 119, // 512-519 + 91, 79, 107, 143, 170, 172, 145, 113, // 520-527 + 89, 91, 108, 133, 144, 146, 138, 133, // 528-535 +131, 135, 135, 132, 124, 120, 121, 124, // 536-543 +125, 117, 111, 101, 100, 107, 113, 119, // 544-551 +116, 110, 116, 141, 172, 184, 184, 146, // 552-559 +109, 83, 87, 121, 152, 174, 162, 135, // 560-567 +103, 89, 95, 115, 138, 147, 143, 137, // 568-575 +133, 134, 135, 133, 129, 121, 122, 123, // 576-583 +128, 121, 112, 104, 98, 103, 111, 117, // 584-591 +119, 112, 112, 130, 160, 184, 184, 162, // 592-599 +123, 91, 81, 108, 140, 170, 170, 147, // 600-607 +114, 91, 91, 107, 130, 143, 145, 139, // 608-615 +135, 133, 136, 135, 131, 123, 120, 121, // 616-623 +128, 128, 118, 109, 99, 99, 106, 113, // 624-631 +119, 116, 111, 120, 144, 174, 184, 178, // 632-639 +140, 105, 83, 93, 125, 156, 172, 156, // 640-647 +129, 99, 91, 98, 119, 135, 143, 141, // 648-655 +136, 137, 138, 140, 133, 124, 117, 119, // 656-663 +124, 133, 129, 116, 103, 95, 99, 111, // 664-671 +118, 121, 115, 108, 119, 146, 178, 184, // 672-679 +176, 136, 100, 79, 93, 129, 158, 172, // 680-687 +154, 125, 98, 91, 102, 123, 138, 142, // 688-695 +137, 133, 136, 140, 143, 136, 124, 115, // 696-703 +115, 123, 134, 133, 121, 106, 97, 98, // 704-711 +110, 121, 124, 119, 108, 110, 133, 166, // 712-719 +184, 184, 152, 110, 83, 79, 115, 147, // 720-727 +172, 164, 137, 108, 93, 101, 117, 136, // 728-735 +140, 138, 130, 133, 139, 144, 142, 131, // 736-743 +116, 112, 116, 129, 136, 130, 116, 100, // 744-751 + 98, 103, 117, 128, 124, 115, 105, 112, // 752-759 +143, 174, 184, 180, 136, 99, 77, 87, // 760-767 +125, 156, 172, 157, 129, 104, 97, 108, // 768-775 +125, 138, 138, 133, 127, 132, 140, 144, // 776-783 +140, 126, 112, 111, 117, 132, 136, 130, // 784-791 +114, 100, 101, 108, 122, 130, 123, 112, // 792-799 +102, 111, 142, 174, 184, 176, 135, 97, // 800-807 + 77, 89, 128, 155, 172, 155, 129, 107, // 808-815 +102, 112, 127, 137, 134, 129, 123, 134, // 816-823 +142, 146, 139, 123, 111, 110, 118, 133, // 824-831 +139, 130, 114, 100, 101, 110, 123, 130, // 832-839 +124, 112, 103, 113, 146, 176, 184, 172, // 840-847 +126, 93, 75, 93, 133, 160, 172, 152, // 848-855 +124, 105, 103, 114, 131, 136, 133, 125, // 856-863 +123, 134, 143, 146, 138, 121, 110, 111, // 864-871 +119, 135, 138, 129, 112, 101, 103, 112, // 872-879 +124, 129, 121, 111, 102, 115, 147, 176, // 880-887 +184, 168, 125, 93, 79, 97, 135, 158, // 888-895 +170, 149, 123, 107, 106, 117, 131, 134, // 896-903 +129, 123, 123, 134, 143, 145, 137, 121, // 904-911 +111, 112, 121, 135, 138, 130, 114, 103, // 912-919 +105, 112, 124, 130, 121, 112, 102, 107, // 920-927 +135, 166, 182, 176, 143, 105, 87, 89, // 928-935 +119, 147, 162, 156, 135, 116, 111, 116, // 936-943 +126, 131, 126, 123, 120, 130, 141, 144, // 944-951 +141, 125, 114, 111, 118, 130, 138, 133, // 952-959 +120, 108, 104, 112, 121, 129, 125, 114, // 960-967 +106, 102, 116, 148, 172, 180, 164, 125, // 968-975 + 98, 87, 101, 133, 152, 160, 147, 128, // 976-983 +116, 115, 121, 128, 127, 121, 120, 123, // 984-991 +136, 144, 143, 135, 120, 112, 115, 124, // 992-999 +135, 138, 128, 116, 107, 108, 116, 124, // 1000-1007 +129, 123, 112, 106, 103, 116, 144, 168, // 1008-1015 +176, 164, 132, 105, 93, 101, 127, 146, // 1016-1023 +155, 148, 133, 121, 119, 121, 124, 124, // 1024-1031 +119, 120, 124, 135, 143, 143, 134, 123, // 1032-1039 +114, 118, 125, 134, 136, 127, 119, 112, // 1040-1047 +111, 116, 123, 127, 124, 114, 109, 106, // 1048-1055 +110, 126, 151, 168, 170, 153, 122, 103, // 1056-1063 + 98, 109, 134, 146, 152, 144, 132, 122, // 1064-1071 +120, 121, 122, 121, 119, 123, 130, 138, // 1072-1079 +143, 138, 129, 120, 116, 122, 130, 134, // 1080-1087 +133, 124, 118, 114, 115, 121, 124, 124, // 1088-1095 +120, 114, 110, 108, 111, 121, 143, 162, // 1096-1103 +168, 158, 133, 109, 99, 104, 125, 143, // 1104-1111 +153, 149, 137, 125, 119, 119, 120, 121, // 1112-1119 +121, 122, 128, 135, 139, 139, 131, 124, // 1120-1127 +119, 121, 127, 131, 132, 126, 120, 118, // 1128-1135 +118, 120, 123, 123, 120, 115, 112, 109, // 1136-1143 +109, 114, 130, 155, 166, 166, 149, 118, // 1144-1151 +103, 98, 112, 137, 149, 153, 143, 130, // 1152-1159 +120, 119, 119, 121, 121, 119, 124, 131, // 1160-1167 +138, 142, 136, 126, 121, 118, 124, 130, // 1168-1175 +133, 130, 123, 120, 120, 122, 124, 123, // 1176-1183 +119, 116, 112, 112, 112, 112, 114, 125, // 1184-1191 +148, 164, 166, 153, 123, 104, 98, 108, // 1192-1199 +133, 148, 153, 145, 133, 120, 118, 119, // 1200-1207 +121, 123, 120, 124, 130, 138, 140, 137, // 1208-1215 +128, 121, 118, 123, 130, 132, 132, 125, // 1216-1223 +122, 122, 125, 125, 123, 118, 115, 115, // 1224-1231 +115, 116, 114, 112, 111, 123, 147, 166, // 1232-1239 +170, 153, 123, 99, 98, 110, 135, 151, // 1240-1247 +152, 143, 130, 119, 119, 122, 121, 123, // 1248-1255 +119, 123, 131, 139, 142, 136, 125, 119, // 1256-1263 +120, 124, 132, 134, 131, 125, 122, 123, // 1264-1271 +126, 126, 121, 117, 114, 115, 116, 117, // 1272-1279 +115, 111, 110, 118, 144, 166, 170, 156, // 1280-1287 +126, 102, 99, 110, 133, 149, 150, 142, // 1288-1295 +130, 121, 120, 124, 121, 121, 120, 122, // 1296-1303 +132, 139, 140, 135, 125, 119, 121, 128, // 1304-1311 +133, 135, 130, 124, 123, 124, 129, 130, // 1312-1319 +125, 119, 114, 114, 119, 120, 118, 112, // 1320-1327 +107, 106, 116, 142, 166, 170, 156, 133, // 1328-1335 +106, 100, 109, 125, 143, 147, 143, 134, // 1336-1343 +130, 124, 124, 120, 116, 118, 121, 132, // 1344-1351 +140, 142, 134, 125, 120, 120, 127, 133, // 1352-1359 +134, 131, 125, 123, 126, 129, 130, 127, // 1360-1367 +121, 116, 116, 118, 120, 118, 114, 109, // 1368-1375 +106, 110, 121, 145, 168, 170, 154, 130, // 1376-1383 +105, 99, 108, 125, 142, 148, 144, 138, // 1384-1391 +133, 125, 121, 116, 114, 117, 125, 136, // 1392-1399 +142, 142, 134, 124, 119, 119, 125, 132, // 1400-1407 +134, 132, 129, 125, 126, 127, 128, 126, // 1408-1415 +123, 121, 120, 119, 118, 116, 113, 110, // 1416-1423 +108, 108, 112, 125, 148, 170, 168, 149, // 1424-1431 +123, 99, 95, 110, 131, 147, 152, 146, // 1432-1439 +135, 130, 121, 118, 114, 114, 119, 131, // 1440-1447 +141, 144, 142, 129, 118, 115, 118, 127, // 1448-1455 +134, 136, 134, 131, 127, 124, 124, 124, // 1456-1463 +125, 128, 126, 124, 119, 114, 112, 112, // 1464-1471 +112, 111, 111, 111, 118, 136, 157, 170, // 1472-1479 +160, 136, 110, 95, 105, 123, 143, 149, // 1480-1487 +148, 139, 132, 128, 121, 116, 113, 116, // 1488-1495 +125, 139, 144, 143, 134, 120, 115, 117, // 1496-1503 +124, 131, 134, 134, 133, 132, 129, 126, // 1504-1511 +124, 124, 125, 129, 130, 125, 119, 112, // 1512-1519 +110, 111, 113, 113, 112, 112, 115, 126, // 1520-1527 +144, 162, 164, 144, 122, 106, 105, 117, // 1528-1535 +135, 144, 144, 143, 136, 133, 127, 120, // 1536-1543 +114, 114, 121, 133, 143, 143, 137, 125, // 1544-1551 +119, 116, 120, 126, 130, 132, 134, 134, // 1552-1559 +133, 131, 125, 123, 123, 125, 129, 129, // 1560-1567 +124, 117, 112, 111, 112, 114, 114, 112, // 1568-1575 +112, 115, 122, 136, 150, 160, 153, 135, // 1576-1583 +119, 110, 114, 125, 138, 143, 143, 142, // 1584-1591 +136, 131, 123, 117, 114, 119, 129, 136, // 1592-1599 +140, 138, 131, 122, 119, 119, 122, 127, // 1600-1607 +131, 133, 134, 135, 134, 131, 126, 123, // 1608-1615 +121, 124, 126, 128, 124, 120, 115, 112, // 1616-1623 +112, 112, 114, 115, 114, 114, 116, 124, // 1624-1631 +137, 151, 162, 154, 134, 119, 112, 116, // 1632-1639 +126, 139, 141, 141, 141, 138, 131, 123, // 1640-1647 +116, 113, 118, 127, 135, 136, 135, 131, // 1648-1655 +124, 122, 122, 123, 124, 129, 133, 134, // 1656-1663 +133, 130, 129, 128, 125, 124, 123, 124, // 1664-1671 +124, 124, 122, 119, 115, 113, 114, 115, // 1672-1679 +116, 116, 114, 114, 118, 128, 139, 151, // 1680-1687 +162, 154, 136, 121, 115, 118, 125, 136, // 1688-1695 +140, 141, 140, 138, 131, 120, 114, 112, // 1696-1703 +117, 125, 133, 134, 134, 132, 130, 124, // 1704-1711 +123, 122, 124, 127, 131, 133, 132, 131, // 1712-1719 +129, 126, 123, 124, 123, 124, 125, 125, // 1720-1727 +123, 120, 118, 116, 115, 115, 117, 119, // 1728-1735 +119, 117, 116, 118, 125, 135, 148, 162, // 1736-1743 +160, 142, 124, 116, 118, 121, 130, 135, // 1744-1751 +137, 139, 139, 134, 122, 114, 111, 114, // 1752-1759 +121, 131, 134, 135, 133, 133, 129, 123, // 1760-1767 +121, 121, 124, 129, 133, 133, 131, 129, // 1768-1775 +128, 125, 124, 123, 125, 125, 125, 124, // 1776-1783 +123, 122, 121, 120, 119, 118, 118, 120, // 1784-1791 +121, 120, 117, 116, 119, 126, 138, 151, // 1792-1799 +162, 156, 138, 120, 115, 117, 119, 125, // 1800-1807 +132, 137, 140, 140, 133, 120, 112, 111, // 1808-1815 +116, 122, 130, 134, 138, 138, 135, 129, // 1816-1823 +121, 119, 120, 124, 129, 132, 133, 131, // 1824-1831 +129, 128, 123, 121, 122, 126, 130, 131, // 1832-1839 +129, 126, 124, 123, 121, 120, 120, 120, // 1840-1847 +122, 123, 123, 120, 116, 113, 115, 121, // 1848-1855 +133, 143, 157, 162, 145, 124, 114, 115, // 1856-1863 +116, 120, 127, 136, 141, 142, 138, 125, // 1864-1871 +114, 110, 115, 120, 127, 134, 140, 142, // 1872-1879 +138, 131, 121, 117, 118, 124, 129, 131, // 1880-1887 +132, 133, 130, 127, 123, 121, 121, 125, // 1888-1895 +131, 134, 133, 131, 129, 123, 119, 118, // 1896-1903 +121, 123, 126, 129, 127, 123, 118, 115, // 1904-1911 +112, 112, 114, 119, 127, 138, 148, 158, // 1912-1919 +157, 138, 118, 112, 117, 119, 123, 130, // 1920-1927 +138, 142, 140, 134, 122, 115, 113, 120, // 1928-1935 +124, 130, 134, 139, 140, 135, 127, 121, // 1936-1943 +119, 120, 123, 124, 126, 129, 132, 130, // 1944-1951 +128, 125, 124, 125, 127, 130, 130, 130, // 1952-1959 +127, 126, 124, 123, 122, 123, 125, 128, // 1960-1967 +128, 125, 123, 119, 117, 116, 116, 116, // 1968-1975 +116, 121, 128, 133, 140, 150, 157, 143, // 1976-1983 +124, 115, 119, 122, 121, 125, 134, 141, // 1984-1991 +140, 136, 128, 119, 116, 120, 124, 125, // 1992-1999 +130, 135, 139, 136, 130, 122, 120, 119, // 2000-2007 +120, 121, 123, 127, 132, 133, 130, 129, // 2008-2015 +126, 125, 125, 127, 129, 129, 130, 130, // 2016-2023 +127, 124, 123, 123, 124, 125, 128, 127, // 2024-2031 +126, 123, 119, 118, 118, 119, 119, 116, // 2032-2039 +118, 122, 129, 132, 138, 149, 154, 141, // 2040-2047 +123, 118, 123, 122, 120, 125, 134, 140, // 2048-2055 +138, 135, 127, 121, 118, 121, 122, 123, // 2056-2063 +128, 135, 138, 135, 129, 123, 121, 119, // 2064-2071 +119, 120, 124, 129, 133, 134, 133, 130, // 2072-2079 +129, 126, 125, 125, 126, 129, 130, 130, // 2080-2087 +127, 124, 123, 124, 124, 125, 125, 128, // 2088-2095 +129, 126, 123, 120, 120, 121, 121, 121, // 2096-2103 +120, 119, 119, 121, 124, 125, 134, 149, // 2104-2111 +156, 143, 124, 121, 128, 123, 116, 119, // 2112-2119 +132, 140, 139, 136, 131, 126, 122, 121, // 2120-2127 +119, 119, 123, 133, 137, 134, 129, 125, // 2128-2135 +125, 121, 119, 119, 125, 131, 133, 133, // 2136-2143 +133, 131, 129, 125, 123, 124, 126, 129, // 2144-2151 +130, 130, 127, 125, 124, 123, 123, 124, // 2152-2159 +128, 130, 130, 128, 125, 123, 122, 121, // 2160-2167 +120, 121, 123, 124, 123, 120, 119, 120, // 2168-2175 +123, 125, 130, 144, 158, 151, 130, 120, // 2176-2183 +128, 125, 115, 114, 129, 142, 142, 137, // 2184-2191 +133, 129, 121, 118, 116, 117, 120, 130, // 2192-2199 +137, 136, 130, 128, 126, 123, 119, 118, // 2200-2207 +123, 131, 135, 135, 134, 131, 129, 124, // 2208-2215 +123, 123, 125, 129, 131, 131, 129, 126, // 2216-2223 +124, 123, 123, 123, 125, 130, 131, 127, // 2224-2231 +124, 124, 123, 121, 120, 121, 125, 126, // 2232-2239 +125, 124, 123, 121, 119, 119, 122, 126, // 2240-2247 +136, 152, 154, 139, 123, 124, 127, 118, // 2248-2255 +112, 119, 136, 140, 136, 133, 131, 128, // 2256-2263 +121, 117, 116, 119, 124, 133, 134, 133, // 2264-2271 +129, 129, 126, 123, 120, 122, 128, 131, // 2272-2279 +131, 132, 135, 134, 129, 121, 122, 125, // 2280-2287 +128, 128, 129, 130, 130, 126, 123, 121, // 2288-2295 +121, 124, 126, 129, 128, 127, 128, 125, // 2296-2303 +121, 120, 121, 124, 125, 128, 128, 127, // 2304-2311 +124, 121, 119, 118, 121, 125, 131, 143, // 2312-2319 +153, 144, 130, 123, 129, 122, 113, 115, // 2320-2327 +130, 139, 136, 133, 133, 132, 124, 119, // 2328-2335 +116, 119, 122, 129, 133, 133, 132, 131, // 2336-2343 +130, 125, 121, 121, 125, 127, 129, 129, // 2344-2351 +132, 134, 134, 129, 123, 123, 126, 125, // 2352-2359 +123, 125, 130, 130, 125, 123, 123, 124, // 2360-2367 +124, 125, 126, 128, 127, 128, 125, 123, // 2368-2375 +123, 124, 125, 124, 126, 129, 127, 124, // 2376-2383 +121, 120, 121, 121, 122, 123, 129, 139, // 2384-2391 +148, 143, 131, 125, 129, 128, 117, 116, // 2392-2399 +126, 136, 135, 131, 131, 133, 129, 121, // 2400-2407 +118, 120, 123, 127, 130, 131, 132, 132, // 2408-2415 +131, 128, 124, 123, 124, 125, 128, 129, // 2416-2423 +134, 134, 129, 125, 126, 126, 123, 123, // 2424-2431 +128, 130, 129, 126, 125, 124, 124, 123, // 2432-2439 +124, 125, 129, 129, 129, 125, 124, 123, // 2440-2447 +124, 123, 124, 125, 128, 126, 124, 122, // 2448-2455 +123, 124, 124, 124, 125, 133, 143, 146, // 2456-2463 +136, 128, 129, 131, 122, 115, 121, 133, // 2464-2471 +136, 131, 130, 133, 132, 125, 121, 120, // 2472-2479 +123, 124, 127, 129, 130, 130, 130, 128, // 2480-2487 +124, 123, 124, 128, 129, 129, 129, 130, // 2488-2495 +130, 127, 124, 125, 128, 128, 126, 127, // 2496-2503 +128, 127, 125, 123, 124, 124, 125, 125, // 2504-2511 +128, 129, 129, 125, 124, 124, 124, 124, // 2512-2519 +123, 124, 125, 126, 125, 124, 124, 124, // 2520-2527 +124, 124, 125, 125, 126, 133, 142, 142, // 2528-2535 +133, 129, 131, 131, 121, 118, 124, 133, // 2536-2543 +131, 128, 130, 133, 130, 124, 121, 123, // 2544-2551 +124, 124, 125, 128, 130, 130, 131, 129, // 2552-2559 +128, 126, 126, 126, 125, 125, 127, 129, // 2560-2567 +127, 128, 127, 128, 128, 125, 125, 126, // 2568-2575 +126, 125, 125, 124, 124, 124, 125, 125, // 2576-2583 +127, 128, 126, 125, 124, 123, 123, 123, // 2584-2591 +124, 124, 125, 128, 126, 125, 126, 126, // 2592-2599 +124, 125, 129, 134, 138, 138, 135, 132, // 2600-2607 +130, 128, 124, 122, 124, 129, 130, 130, // 2608-2615 +130, 131, 130, 126, 124, 123, 124, 125, // 2616-2623 +126, 128, 129, 129, 129, 127, 126, 125, // 2624-2631 +125, 126, 128, 128, 127, 129, 128, 127, // 2632-2639 +126, 127, 128, 127, 126, 126, 126, 125, // 2640-2647 +125, 124, 124, 124, 125, 125, 126, 126, // 2648-2655 +126, 125, 125, 124, 124, 124, 124, 125, // 2656-2663 +126, 126, 126, 127, 128, 127, 125, 128, // 2664-2671 +129, 130, 130, 131, 133, 133, 131, 130, // 2672-2679 +130, 129, 129, 129, 129, 129, 129, 129, // 2680-2687 +129, 129, 127, 128, 126, 125, 126, 126, // 2688-2695 +126, 126, 126, 126, 126, 126, 126, 126, // 2696-2703 +126, 126, 126, 125, 125, 125, 125, 124, // 2704-2711 +125, 125, 125, 125, 125, 125, 125, 124, // 2712-2719 +124, 124, 124, 125, 126, 128, 127, 128, // 2720-2727 +127, 129, 127, 128, 129, 130, 130, 130, // 2728-2735 +131, 131, 131, 130, 130, 130, 130, 130, // 2736-2743 +130, 130, 129, 129, 129, 128, 127, 128, // 2744-2751 +127, 128, 128, 126, 126, 126, 126, 125, // 2752-2759 +125, 125, 125, 125, 125, 125, 125, 125, // 2760-2767 +125, 125, 125, 125, 125, 125, 125, 125, // 2768-2775 +125, 125, 125, 125, 125, 125, 126, 125, // 2776-2783 +126, 128, 127, 126, 127, 128, 128, 127, // 2784-2791 +128, 127, 128, 127, 129, 129, 129, 129, // 2792-2799 +129, 130, 129, 127, 127, 129, 129, 128, // 2800-2807 +127, 129, 129, 127, 128, 128, 129, 129, // 2808-2815 +127, 128, 128, 127, 128, 126, 127, 128, // 2816-2823 +128, 125, 125, 127, 128, 125, 125, 128, // 2824-2831 +127, 126, 126, 128, 127, 128, 126, 126, // 2832-2839 +128, 128, 126, 126, 126, 126, 126, 126, // 2840-2847 +126, 126, 126, 126, 126, 126, 126, 126, // 2848-2855 +126, 126, 126, 128, 128, 127, 128, 127, // 2856-2863 +128, 127, 128, 128, 128, 127, 128, 127, // 2864-2871 +128, 126, 126, 128, 127, 128, 127, 128, // 2872-2879 +128, 126, 126, 126, 126, 128, 127, 128, // 2880-2887 +127, 127, 128, 126, 128, 127, 128, 127, // 2888-2895 +128, 127, 127, 128, 127, 128, 127, 128, // 2896-2903 +129, 128, 127, 128, 127, 126, 126, 128, // 2904-2911 +127, 126, 126, 128, 127, 126, 126, 128, // 2912-2919 +127, 126, 127, 128, 127, 126, 127, 128, // 2920-2927 +128, 126, 127, 128, 127, 126, 128, 127, // 2928-2935 +128, 127, 128, 127, 128, 128, 128, 128, // 2936-2943 +127, 128, 127, 128, 127, 128, 127, 127, // 2944-2951 +127, 128, 128, 127, 128, 128, 126, 127, // 2952-2959 +128, 127, 128, 127, 128, 127, 128}; + +const char S[1742] = {127, 128, 127, 128, 127, 128, 128, 127, // 0-7 +128, 127, 128, 128, 127, 128, 127, 128, // 8-15 +130, 130, 128, 133, 133, 124, 128, 130, // 16-23 +123, 125, 127, 128, 130, 128, 129, 134, // 24-31 +141, 140, 125, 128, 125, 112, 112, 118, // 32-39 +115, 112, 110, 103, 99, 97, 105, 118, // 40-47 +137, 178, 174, 146, 174, 148, 115, 115, // 48-55 +110, 115, 119, 124, 145, 154, 136, 138, // 56-63 +132, 116, 106, 105, 116, 129, 131, 150, // 64-71 +164, 152, 144, 134, 120, 108, 105, 111, // 72-79 +118, 124, 129, 124, 116, 108, 97, 93, // 80-87 + 93, 93, 107, 131, 162, 184, 168, 156, // 88-95 +170, 120, 107, 107, 106, 115, 124, 138, // 96-103 +156, 149, 137, 138, 120, 110, 106, 112, // 104-111 +126, 141, 146, 156, 160, 147, 131, 118, // 112-119 +112, 103, 105, 112, 116, 116, 115, 116, // 120-127 +111, 101, 100, 104, 103, 117, 141, 176, // 128-135 +184, 150, 160, 158, 105, 103, 105, 108, // 136-143 +117, 125, 142, 162, 142, 133, 134, 116, // 144-151 +106, 109, 120, 138, 147, 151, 162, 155, // 152-159 +138, 119, 114, 108, 101, 110, 117, 120, // 160-167 +116, 114, 114, 108, 97, 97, 101, 102, // 168-175 +121, 148, 184, 184, 149, 164, 149, 99, // 176-183 +103, 103, 112, 121, 131, 149, 162, 138, // 184-191 +135, 129, 112, 105, 108, 123, 141, 145, // 192-199 +155, 166, 149, 127, 116, 112, 101, 102, // 200-207 +112, 118, 119, 121, 119, 111, 105, 97, // 208-215 + 97, 100, 103, 124, 158, 184, 184, 148, // 216-223 +166, 139, 91, 100, 106, 115, 123, 140, // 224-231 +157, 160, 135, 131, 122, 108, 103, 111, // 232-239 +131, 144, 153, 162, 158, 138, 119, 110, // 240-247 +105, 102, 111, 119, 121, 122, 122, 111, // 248-255 +103, 102, 98, 100, 96, 106, 139, 166, // 256-263 +184, 184, 151, 162, 124, 93, 103, 107, // 264-271 +116, 132, 146, 160, 154, 133, 130, 115, // 272-279 +106, 106, 119, 142, 152, 152, 155, 146, // 280-287 +123, 112, 108, 110, 111, 114, 119, 118, // 288-295 +116, 111, 103, 107, 104, 100, 105, 105, // 296-303 +114, 149, 184, 184, 164, 158, 153, 106, // 304-311 + 99, 107, 115, 124, 139, 153, 157, 143, // 312-319 +133, 127, 115, 111, 112, 129, 137, 140, // 320-327 +143, 143, 130, 119, 114, 112, 109, 107, // 328-335 +108, 108, 108, 105, 110, 113, 108, 112, // 336-343 +111, 112, 139, 170, 184, 176, 156, 162, // 344-351 +125, 99, 105, 112, 120, 127, 142, 149, // 352-359 +142, 130, 131, 125, 118, 118, 129, 139, // 360-367 +139, 139, 140, 132, 121, 115, 112, 112, // 368-375 +109, 110, 109, 107, 105, 103, 106, 107, // 376-383 +108, 105, 110, 135, 168, 184, 184, 162, // 384-391 +168, 132, 99, 104, 107, 119, 129, 143, // 392-399 +153, 143, 128, 128, 120, 112, 113, 125, // 400-407 +138, 143, 143, 144, 135, 123, 115, 111, // 408-415 +109, 108, 111, 112, 112, 110, 107, 107, // 416-423 +105, 103, 105, 106, 119, 150, 184, 184, // 424-431 +174, 162, 151, 112, 95, 101, 113, 126, // 432-439 +136, 152, 153, 138, 128, 124, 115, 112, // 440-447 +118, 134, 142, 143, 144, 139, 129, 118, // 448-455 +111, 109, 106, 105, 109, 110, 108, 108, // 456-463 +110, 107, 106, 107, 105, 123, 160, 184, // 464-471 +184, 170, 162, 148, 107, 97, 103, 112, // 472-479 +125, 137, 148, 151, 134, 129, 125, 116, // 480-487 +115, 124, 137, 143, 145, 143, 138, 125, // 488-495 +115, 111, 108, 108, 107, 108, 110, 107, // 496-503 +104, 108, 107, 105, 105, 106, 132, 166, // 504-511 +184, 184, 166, 162, 139, 102, 99, 105, // 512-519 +116, 130, 142, 152, 149, 133, 127, 121, // 520-527 +112, 114, 123, 139, 144, 144, 143, 135, // 528-535 +121, 112, 108, 106, 107, 107, 108, 110, // 536-543 +107, 108, 108, 108, 106, 103, 118, 153, // 544-551 +184, 184, 174, 164, 155, 110, 95, 102, // 552-559 +112, 124, 131, 147, 148, 133, 123, 124, // 560-567 +117, 114, 124, 140, 145, 146, 144, 139, // 568-575 +127, 114, 111, 110, 110, 109, 110, 112, // 576-583 +106, 102, 107, 108, 105, 106, 108, 120, // 584-591 +158, 184, 184, 168, 164, 147, 105, 98, // 592-599 +106, 113, 129, 137, 147, 149, 133, 124, // 600-607 +124, 117, 115, 124, 138, 144, 143, 141, // 608-615 +137, 123, 115, 112, 111, 111, 108, 109, // 616-623 +111, 106, 103, 107, 110, 108, 107, 111, // 624-631 +127, 164, 184, 184, 168, 160, 138, 106, // 632-639 +100, 105, 118, 130, 140, 147, 145, 130, // 640-647 +121, 120, 116, 117, 128, 142, 148, 143, // 648-655 +140, 135, 121, 114, 112, 113, 112, 111, // 656-663 +111, 112, 107, 101, 105, 110, 111, 110, // 664-671 +109, 119, 153, 178, 184, 170, 156, 147, // 672-679 +112, 99, 105, 113, 125, 138, 144, 148, // 680-687 +138, 123, 124, 121, 118, 124, 139, 146, // 688-695 +143, 140, 137, 125, 115, 112, 114, 114, // 696-703 +112, 113, 112, 110, 105, 102, 106, 110, // 704-711 +109, 109, 113, 133, 166, 184, 176, 156, // 712-719 +154, 128, 99, 101, 110, 121, 132, 143, // 720-727 +151, 143, 129, 121, 116, 116, 118, 127, // 728-735 +146, 152, 147, 143, 136, 121, 112, 111, // 736-743 +116, 119, 120, 123, 119, 114, 112, 103, // 744-751 +101, 109, 109, 108, 111, 112, 125, 152, // 752-759 +176, 180, 153, 142, 137, 107, 103, 112, // 760-767 +121, 135, 143, 147, 149, 137, 123, 118, // 768-775 +115, 114, 118, 132, 143, 145, 148, 144, // 776-783 +133, 122, 114, 113, 116, 118, 124, 128, // 784-791 +125, 120, 116, 113, 106, 105, 109, 103, // 792-799 +101, 103, 114, 136, 158, 180, 168, 143, // 800-807 +144, 124, 106, 110, 118, 134, 143, 147, // 808-815 +152, 144, 129, 119, 112, 110, 112, 119, // 816-823 +135, 147, 149, 147, 140, 131, 120, 114, // 824-831 +115, 119, 124, 127, 130, 129, 122, 116, // 832-839 +112, 105, 101, 102, 101, 101, 103, 112, // 840-847 +134, 157, 176, 170, 145, 148, 131, 108, // 848-855 +114, 118, 131, 140, 143, 149, 143, 125, // 856-863 +119, 112, 108, 112, 118, 133, 143, 147, // 864-871 +148, 147, 138, 126, 118, 117, 116, 118, // 872-879 +128, 133, 134, 130, 121, 117, 111, 101, // 880-887 + 99, 100, 98, 101, 104, 112, 128, 147, // 888-895 +172, 174, 148, 147, 139, 112, 112, 113, // 896-903 +126, 136, 138, 145, 146, 133, 121, 114, // 904-911 +112, 112, 113, 129, 143, 146, 147, 147, // 912-919 +141, 130, 118, 117, 119, 119, 126, 134, // 920-927 +136, 133, 124, 118, 113, 105, 99, 102, // 928-935 +101, 101, 105, 106, 112, 130, 148, 170, // 936-943 +170, 145, 152, 139, 111, 114, 115, 123, // 944-951 +133, 134, 145, 147, 133, 125, 119, 112, // 952-959 +112, 113, 126, 140, 143, 146, 147, 141, // 960-967 +133, 123, 121, 121, 120, 126, 134, 135, // 968-975 +134, 127, 121, 116, 110, 105, 103, 101, // 976-983 + 99, 102, 102, 101, 118, 136, 154, 178, // 984-991 +168, 149, 154, 128, 108, 111, 110, 123, // 992-999 +132, 139, 152, 149, 135, 129, 115, 109, // 1000-1007 +107, 111, 126, 139, 144, 151, 149, 142, // 1008-1015 +130, 120, 119, 121, 126, 133, 138, 142, // 1016-1023 +136, 127, 123, 114, 112, 112, 107, 106, // 1024-1031 +103, 95, 97, 99, 98, 110, 131, 153, // 1032-1039 +180, 178, 154, 155, 134, 107, 105, 106, // 1040-1047 +120, 133, 140, 155, 156, 140, 130, 117, // 1048-1055 +108, 105, 106, 121, 138, 143, 148, 149, // 1056-1063 +142, 130, 119, 119, 125, 131, 138, 143, // 1064-1071 +143, 140, 130, 124, 119, 112, 112, 113, // 1072-1079 +112, 107, 101, 97, 95, 93, 95, 106, // 1080-1087 +118, 136, 160, 182, 170, 148, 149, 129, // 1088-1095 +111, 108, 114, 130, 136, 141, 152, 150, // 1096-1103 +137, 128, 118, 114, 111, 111, 123, 134, // 1104-1111 +138, 141, 143, 139, 130, 120, 120, 124, // 1112-1119 +133, 137, 143, 149, 143, 134, 128, 119, // 1120-1127 +112, 109, 108, 111, 110, 106, 103, 99, // 1128-1135 + 98, 99, 99, 108, 116, 125, 148, 170, // 1136-1143 +170, 152, 154, 146, 124, 116, 115, 123, // 1144-1151 +129, 131, 142, 149, 143, 135, 129, 123, // 1152-1159 +115, 110, 114, 123, 127, 131, 138, 142, // 1160-1167 +139, 132, 130, 127, 124, 129, 140, 142, // 1168-1175 +142, 141, 133, 125, 115, 110, 110, 106, // 1176-1183 +106, 112, 111, 107, 103, 99, 100, 102, // 1184-1191 +101, 111, 122, 138, 162, 180, 166, 160, // 1192-1199 +162, 136, 125, 115, 115, 123, 123, 132, // 1200-1207 +145, 145, 142, 137, 128, 121, 111, 106, // 1208-1215 +113, 119, 123, 134, 142, 144, 143, 137, // 1216-1223 +134, 128, 119, 118, 125, 134, 138, 138, // 1224-1231 +140, 135, 123, 115, 111, 106, 103, 104, // 1232-1239 +110, 112, 111, 108, 108, 107, 106, 107, // 1240-1247 +114, 121, 135, 155, 180, 172, 160, 168, // 1248-1255 +147, 130, 117, 111, 116, 116, 118, 135, // 1256-1263 +143, 141, 139, 133, 129, 118, 108, 111, // 1264-1271 +116, 118, 126, 136, 143, 146, 140, 137, // 1272-1279 +133, 123, 116, 115, 123, 125, 128, 137, // 1280-1287 +141, 133, 126, 121, 115, 110, 104, 107, // 1288-1295 +112, 112, 115, 116, 116, 115, 110, 110, // 1296-1303 +115, 118, 126, 144, 170, 178, 162, 164, // 1304-1311 +160, 138, 120, 110, 111, 112, 110, 119, // 1312-1319 +136, 139, 138, 136, 134, 130, 116, 111, // 1320-1327 +116, 118, 119, 127, 135, 143, 141, 137, // 1328-1335 +136, 132, 121, 116, 116, 120, 124, 123, // 1336-1343 +130, 138, 136, 132, 127, 125, 121, 114, // 1344-1351 +112, 115, 114, 112, 116, 119, 116, 112, // 1352-1359 +111, 112, 115, 120, 129, 144, 168, 166, // 1360-1367 +153, 162, 150, 133, 120, 110, 114, 112, // 1368-1375 +107, 118, 130, 132, 135, 133, 136, 135, // 1376-1383 +123, 121, 124, 121, 121, 123, 130, 136, // 1384-1391 +133, 133, 136, 133, 127, 121, 120, 121, // 1392-1399 +120, 123, 129, 133, 135, 134, 134, 135, // 1400-1407 +129, 122, 121, 119, 115, 113, 114, 116, // 1408-1415 +118, 115, 114, 113, 111, 112, 114, 119, // 1416-1423 +131, 146, 162, 158, 155, 160, 147, 135, // 1424-1431 +122, 113, 112, 108, 106, 114, 123, 129, // 1432-1439 +135, 138, 143, 142, 134, 131, 129, 123, // 1440-1447 +120, 119, 123, 128, 126, 129, 133, 132, // 1448-1455 +129, 125, 125, 125, 124, 127, 130, 132, // 1456-1463 +134, 131, 130, 130, 125, 122, 120, 120, // 1464-1471 +120, 118, 118, 119, 118, 119, 116, 113, // 1472-1479 +112, 108, 108, 112, 117, 125, 142, 157, // 1480-1487 +160, 156, 158, 152, 142, 129, 118, 115, // 1488-1495 +112, 107, 111, 119, 125, 132, 135, 142, // 1496-1503 +144, 141, 137, 135, 131, 125, 119, 119, // 1504-1511 +120, 119, 118, 121, 124, 126, 128, 130, // 1512-1519 +133, 135, 135, 133, 133, 133, 128, 124, // 1520-1527 +123, 122, 121, 119, 121, 123, 122, 123, // 1528-1535 +124, 123, 121, 119, 118, 116, 112, 111, // 1536-1543 +111, 112, 116, 121, 129, 137, 149, 154, // 1544-1551 +151, 151, 150, 144, 136, 128, 123, 120, // 1552-1559 +115, 114, 118, 121, 125, 127, 132, 137, // 1560-1567 +138, 136, 136, 134, 131, 125, 121, 119, // 1568-1575 +118, 115, 115, 119, 123, 127, 131, 136, // 1576-1583 +140, 139, 137, 135, 133, 129, 124, 120, // 1584-1591 +119, 119, 118, 118, 120, 121, 123, 124, // 1592-1599 +125, 125, 124, 122, 121, 120, 117, 115, // 1600-1607 +117, 119, 121, 124, 126, 131, 135, 137, // 1608-1615 +140, 142, 143, 142, 140, 138, 135, 132, // 1616-1623 +129, 126, 124, 123, 123, 123, 125, 128, // 1624-1631 +129, 130, 131, 131, 130, 129, 128, 126, // 1632-1639 +125, 124, 124, 124, 124, 125, 127, 129, // 1640-1647 +131, 131, 131, 131, 130, 128, 124, 123, // 1648-1655 +121, 120, 119, 119, 120, 121, 121, 122, // 1656-1663 +124, 125, 125, 126, 127, 128, 127, 125, // 1664-1671 +125, 125, 125, 125, 125, 127, 128, 129, // 1672-1679 +129, 130, 131, 130, 130, 130, 130, 129, // 1680-1687 +129, 129, 129, 129, 129, 129, 130, 131, // 1688-1695 +130, 130, 131, 131, 130, 129, 127, 126, // 1696-1703 +124, 123, 123, 124, 124, 124, 125, 128, // 1704-1711 +127, 128, 129, 130, 129, 129, 129, 128, // 1712-1719 +126, 124, 124, 124, 124, 124, 125, 125, // 1720-1727 +126, 126, 128, 128, 126, 125, 124, 125, // 1728-1735 +125, 125, 124, 125, 124, 125}; + +const char T[3320] = {134, 125, 120, 125, 130, 134, 121, 139, // 0-7 +130, 125, 126, 124, 125, 123, 129, 129, // 8-15 +128, 122, 128, 121, 128, 125, 123, 126, // 16-23 +121, 125, 128, 131, 131, 129, 133, 129, // 24-31 +127, 130, 129, 124, 129, 126, 126, 125, // 32-39 +125, 128, 124, 126, 125, 128, 128, 129, // 40-47 +128, 131, 128, 127, 129, 129, 129, 128, // 48-55 +129, 128, 126, 128, 128, 126, 127, 126, // 56-63 +127, 129, 125, 129, 127, 128, 126, 127, // 64-71 +126, 125, 128, 126, 128, 125, 129, 125, // 72-79 +129, 126, 126, 128, 125, 127, 128, 129, // 80-87 +126, 128, 127, 128, 126, 127, 129, 126, // 88-95 +127, 128, 127, 128, 125, 129, 125, 129, // 96-103 +124, 129, 125, 126, 131, 125, 129, 128, // 104-111 +128, 127, 126, 129, 125, 127, 130, 127, // 112-119 +130, 125, 126, 121, 124, 124, 125, 123, // 120-127 +129, 128, 127, 129, 131, 128, 128, 131, // 128-135 +128, 126, 129, 125, 129, 128, 124, 128, // 136-143 +125, 126, 125, 128, 129, 125, 129, 129, // 144-151 +124, 133, 123, 131, 125, 128, 128, 126, // 152-159 +128, 128, 126, 125, 129, 128, 127, 126, // 160-167 +131, 125, 127, 128, 125, 131, 123, 129, // 168-175 +128, 125, 130, 122, 132, 123, 129, 126, // 176-183 +125, 129, 124, 127, 125, 129, 124, 129, // 184-191 +129, 128, 127, 128, 131, 125, 129, 129, // 192-199 +125, 126, 129, 124, 128, 127, 125, 129, // 200-207 +124, 130, 123, 131, 129, 124, 133, 125, // 208-215 +129, 124, 131, 125, 125, 127, 128, 124, // 216-223 +128, 128, 128, 128, 128, 127, 129, 127, // 224-231 +123, 131, 126, 128, 125, 129, 124, 128, // 232-239 +125, 125, 127, 126, 126, 126, 129, 126, // 240-247 +131, 125, 130, 125, 129, 129, 127, 128, // 248-255 +125, 129, 125, 126, 127, 125, 127, 129, // 256-263 +123, 131, 125, 129, 126, 126, 129, 128, // 264-271 +125, 131, 123, 131, 128, 127, 125, 128, // 272-279 +125, 127, 129, 125, 131, 125, 132, 128, // 280-287 +129, 127, 129, 124, 131, 123, 125, 129, // 288-295 +125, 127, 129, 127, 125, 129, 128, 126, // 296-303 +133, 129, 129, 131, 124, 129, 124, 129, // 304-311 +125, 128, 123, 126, 125, 128, 127, 128, // 312-319 +130, 125, 130, 126, 130, 125, 128, 131, // 320-327 +125, 129, 128, 125, 129, 124, 126, 128, // 328-335 +125, 128, 126, 128, 128, 124, 128, 126, // 336-343 +126, 129, 128, 127, 129, 127, 125, 131, // 344-351 +125, 126, 127, 129, 123, 126, 131, 125, // 352-359 +126, 131, 127, 128, 127, 126, 125, 125, // 360-367 +128, 125, 129, 129, 126, 129, 129, 128, // 368-375 +126, 128, 124, 125, 124, 127, 128, 126, // 376-383 +131, 128, 127, 129, 125, 129, 125, 125, // 384-391 +128, 127, 125, 127, 128, 125, 128, 126, // 392-399 +128, 126, 127, 128, 129, 128, 127, 129, // 400-407 +125, 127, 128, 127, 125, 127, 128, 124, // 408-415 +128, 125, 128, 128, 129, 129, 126, 129, // 416-423 +129, 125, 129, 128, 123, 128, 129, 125, // 424-431 +127, 128, 128, 127, 128, 131, 125, 125, // 432-439 +130, 125, 127, 127, 125, 127, 125, 126, // 440-447 +126, 127, 129, 127, 129, 129, 127, 128, // 448-455 +127, 129, 125, 127, 125, 126, 126, 129, // 456-463 +126, 126, 128, 127, 128, 126, 129, 128, // 464-471 +129, 129, 127, 128, 129, 123, 126, 126, // 472-479 +125, 127, 125, 129, 124, 129, 130, 128, // 480-487 +129, 128, 128, 126, 128, 125, 126, 126, // 488-495 +125, 128, 125, 127, 125, 127, 126, 128, // 496-503 +128, 129, 126, 127, 128, 126, 128, 128, // 504-511 +128, 125, 128, 125, 127, 125, 126, 128, // 512-519 +127, 128, 129, 126, 131, 125, 128, 129, // 520-527 +126, 129, 129, 125, 128, 125, 128, 127, // 528-535 +124, 129, 126, 125, 129, 128, 127, 129, // 536-543 +125, 129, 127, 128, 128, 128, 127, 128, // 544-551 +124, 129, 126, 125, 127, 129, 125, 125, // 552-559 +129, 125, 126, 126, 128, 125, 129, 130, // 560-567 +128, 128, 129, 128, 125, 128, 127, 126, // 568-575 +125, 128, 125, 126, 129, 128, 126, 129, // 576-583 +127, 129, 129, 129, 127, 128, 128, 127, // 584-591 +125, 125, 129, 125, 126, 128, 125, 125, // 592-599 +128, 125, 128, 127, 125, 129, 128, 125, // 600-607 +129, 126, 126, 126, 125, 126, 128, 125, // 608-615 +129, 126, 127, 128, 127, 126, 127, 126, // 616-623 +128, 128, 127, 125, 128, 128, 126, 127, // 624-631 +126, 126, 128, 126, 126, 129, 128, 126, // 632-639 +128, 129, 125, 128, 129, 128, 129, 128, // 640-647 +128, 125, 128, 126, 126, 126, 128, 126, // 648-655 +129, 129, 129, 128, 129, 128, 128, 128, // 656-663 +126, 126, 125, 126, 124, 126, 125, 126, // 664-671 +125, 126, 128, 127, 125, 127, 126, 125, // 672-679 +128, 126, 127, 125, 128, 128, 126, 127, // 680-687 +128, 127, 130, 129, 131, 132, 129, 131, // 688-695 +131, 129, 132, 129, 129, 129, 126, 128, // 696-703 +125, 124, 125, 121, 123, 121, 120, 121, // 704-711 +118, 119, 117, 117, 118, 116, 118, 121, // 712-719 +120, 125, 128, 130, 136, 139, 143, 147, // 720-727 +148, 151, 152, 150, 149, 145, 141, 137, // 728-735 +129, 123, 117, 112, 108, 103, 102, 101, // 736-743 +101, 104, 106, 108, 112, 113, 113, 115, // 744-751 +118, 120, 129, 125, 134, 145, 139, 152, // 752-759 +156, 157, 164, 164, 166, 158, 153, 149, // 760-767 +136, 129, 121, 109, 106, 101, 99, 98, // 768-775 +101, 106, 107, 112, 118, 120, 121, 124, // 776-783 +123, 120, 119, 113, 110, 121, 113, 110, // 784-791 +136, 124, 133, 151, 149, 160, 164, 172, // 792-799 +166, 160, 164, 150, 138, 139, 120, 111, // 800-807 +109, 101, 100, 98, 103, 103, 107, 114, // 808-815 +113, 119, 121, 118, 118, 116, 112, 106, // 816-823 +114, 118, 103, 125, 134, 119, 151, 151, // 824-831 +157, 166, 174, 176, 166, 170, 162, 143, // 832-839 +143, 130, 112, 110, 100, 93, 91, 95, // 840-847 + 98, 99, 113, 113, 118, 129, 127, 125, // 848-855 +130, 125, 118, 114, 112, 119, 109, 107, // 856-863 +135, 114, 129, 151, 141, 160, 164, 170, // 864-871 +168, 166, 170, 150, 143, 143, 116, 114, // 872-879 +108, 95, 95, 93, 97, 97, 106, 114, // 880-887 +115, 128, 131, 131, 136, 131, 129, 122, // 888-895 +114, 112, 118, 109, 101, 133, 107, 125, // 896-903 +144, 136, 155, 158, 170, 164, 166, 172, // 904-911 +151, 146, 145, 118, 116, 108, 97, 93, // 912-919 + 91, 98, 93, 107, 116, 115, 133, 138, // 920-927 +136, 144, 142, 136, 132, 125, 114, 106, // 928-935 +113, 105, 91, 120, 108, 108, 141, 133, // 936-943 +147, 158, 170, 168, 168, 174, 158, 148, // 944-951 +149, 125, 116, 112, 95, 95, 93, 95, // 952-959 + 97, 105, 114, 117, 133, 137, 138, 143, // 960-967 +141, 137, 132, 123, 113, 105, 110, 103, // 968-975 + 87, 117, 105, 106, 141, 130, 149, 160, // 976-983 +170, 172, 170, 178, 164, 147, 154, 124, // 984-991 +116, 113, 93, 95, 89, 93, 93, 104, // 992-999 +113, 115, 134, 138, 140, 147, 146, 143, // 1000-1007 +138, 132, 120, 110, 101, 100, 101, 81, // 1008-1015 +109, 108, 98, 143, 133, 149, 168, 174, // 1016-1023 +178, 178, 182, 168, 153, 153, 127, 115, // 1024-1031 +112, 91, 91, 87, 89, 91, 100, 112, // 1032-1039 +114, 131, 140, 143, 149, 149, 146, 141, // 1040-1047 +136, 122, 112, 103, 93, 100, 87, 89, // 1048-1055 +114, 98, 125, 143, 142, 168, 172, 182, // 1056-1063 +180, 180, 178, 156, 151, 138, 112, 112, // 1064-1071 + 95, 87, 89, 85, 91, 95, 109, 116, // 1072-1079 +126, 141, 144, 150, 153, 151, 145, 140, // 1080-1087 +129, 114, 108, 93, 91, 97, 79, 99, // 1088-1095 +112, 101, 140, 143, 152, 174, 176, 184, // 1096-1103 +178, 180, 168, 148, 146, 124, 108, 106, // 1104-1111 + 87, 87, 85, 87, 95, 101, 114, 122, // 1112-1119 +136, 146, 149, 156, 154, 151, 146, 137, // 1120-1127 +129, 113, 104, 93, 83, 89, 87, 83, // 1128-1135 +110, 112, 116, 153, 147, 168, 180, 180, // 1136-1143 +182, 176, 176, 153, 143, 136, 110, 106, // 1144-1151 + 98, 83, 89, 87, 93, 100, 112, 121, // 1152-1159 +131, 144, 148, 154, 156, 151, 148, 140, // 1160-1167 +130, 119, 107, 98, 85, 85, 89, 87, // 1168-1175 + 91, 118, 112, 133, 158, 151, 176, 180, // 1176-1183 +180, 178, 174, 166, 145, 141, 124, 105, // 1184-1191 +105, 91, 85, 93, 87, 97, 106, 116, // 1192-1199 +123, 138, 146, 149, 156, 153, 149, 146, // 1200-1207 +136, 126, 117, 104, 97, 87, 83, 89, // 1208-1215 + 93, 93, 112, 125, 122, 158, 157, 166, // 1216-1223 +182, 178, 178, 172, 166, 147, 138, 129, // 1224-1231 +109, 103, 98, 87, 93, 93, 95, 107, // 1232-1239 +114, 123, 134, 144, 146, 151, 153, 146, // 1240-1247 +145, 138, 125, 121, 107, 101, 93, 85, // 1248-1255 + 89, 95, 95, 105, 131, 120, 146, 162, // 1256-1263 +156, 178, 174, 174, 168, 166, 151, 138, // 1264-1271 +134, 114, 105, 105, 91, 93, 98, 95, // 1272-1279 +107, 113, 121, 131, 140, 144, 148, 151, // 1280-1287 +146, 145, 140, 129, 123, 114, 103, 100, // 1288-1295 + 91, 87, 93, 100, 99, 112, 133, 121, // 1296-1303 +154, 158, 156, 178, 170, 170, 164, 162, // 1304-1311 +144, 137, 131, 112, 108, 105, 93, 100, // 1312-1319 +100, 100, 112, 115, 122, 133, 139, 142, // 1320-1327 +147, 147, 144, 143, 137, 129, 123, 115, // 1328-1335 +107, 105, 95, 91, 97, 100, 106, 108, // 1336-1343 +131, 129, 137, 162, 148, 168, 168, 164, // 1344-1351 +164, 159, 150, 138, 134, 121, 112, 112, // 1352-1359 +102, 100, 107, 101, 110, 114, 118, 127, // 1360-1367 +133, 138, 142, 143, 143, 141, 138, 132, // 1368-1375 +127, 122, 113, 111, 105, 98, 99, 100, // 1376-1383 +106, 109, 112, 133, 125, 141, 157, 146, // 1384-1391 +166, 162, 160, 160, 156, 146, 140, 134, // 1392-1399 +122, 114, 114, 104, 105, 107, 102, 112, // 1400-1407 +112, 116, 125, 129, 134, 140, 141, 140, // 1408-1415 +142, 137, 133, 132, 123, 118, 114, 108, // 1416-1423 +103, 101, 100, 103, 110, 106, 122, 130, // 1424-1431 +124, 153, 144, 153, 166, 156, 162, 157, // 1432-1439 +153, 144, 140, 134, 119, 118, 112, 103, // 1440-1447 +110, 102, 106, 111, 111, 119, 124, 129, // 1448-1455 +136, 140, 141, 142, 141, 138, 136, 131, // 1456-1463 +123, 120, 113, 108, 103, 100, 99, 105, // 1464-1471 +108, 106, 128, 123, 131, 152, 142, 160, // 1472-1479 +162, 160, 162, 158, 153, 144, 141, 131, // 1480-1487 +120, 118, 108, 105, 107, 100, 107, 108, // 1488-1495 +111, 118, 125, 129, 137, 141, 141, 145, // 1496-1503 +143, 140, 139, 131, 125, 121, 112, 110, // 1504-1511 +103, 100, 99, 101, 107, 105, 116, 128, // 1512-1519 +121, 146, 145, 149, 164, 157, 162, 160, // 1520-1527 +156, 147, 143, 136, 123, 120, 112, 104, // 1528-1535 +108, 101, 103, 108, 108, 114, 121, 128, // 1536-1543 +133, 141, 141, 143, 146, 140, 141, 137, // 1544-1551 +129, 126, 118, 112, 108, 103, 99, 98, // 1552-1559 +103, 105, 106, 121, 123, 126, 149, 141, // 1560-1567 +157, 160, 158, 164, 157, 156, 146, 143, // 1568-1575 +133, 123, 120, 110, 107, 107, 100, 105, // 1576-1583 +107, 109, 115, 121, 127, 133, 141, 141, // 1584-1591 +144, 147, 140, 143, 138, 131, 130, 118, // 1592-1599 +115, 110, 105, 101, 98, 101, 103, 107, // 1600-1607 +111, 125, 123, 137, 148, 144, 160, 158, // 1608-1615 +162, 160, 158, 151, 144, 141, 128, 122, // 1616-1623 +116, 107, 108, 104, 101, 107, 106, 112, // 1624-1631 +117, 123, 130, 136, 143, 142, 147, 146, // 1632-1639 +143, 144, 136, 133, 129, 118, 115, 110, // 1640-1647 +103, 101, 97, 98, 101, 107, 108, 121, // 1648-1655 +128, 129, 149, 144, 155, 162, 160, 162, // 1656-1663 +160, 155, 146, 143, 133, 123, 119, 110, // 1664-1671 +106, 106, 100, 105, 106, 109, 114, 121, // 1672-1679 +128, 133, 141, 142, 145, 148, 143, 144, // 1680-1687 +140, 134, 131, 122, 115, 112, 105, 100, // 1688-1695 + 98, 95, 98, 104, 107, 110, 127, 124, // 1696-1703 +137, 150, 145, 162, 160, 162, 162, 160, // 1704-1711 +151, 145, 141, 127, 123, 116, 107, 108, // 1712-1719 +104, 101, 107, 106, 112, 116, 123, 130, // 1720-1727 +135, 142, 143, 147, 146, 143, 144, 138, // 1728-1735 +134, 129, 121, 116, 112, 105, 101, 99, // 1736-1743 + 95, 98, 102, 108, 109, 121, 129, 129, // 1744-1751 +149, 144, 154, 162, 157, 162, 158, 154, // 1752-1759 +146, 143, 134, 124, 121, 112, 108, 108, // 1760-1767 +102, 107, 107, 110, 116, 120, 127, 132, // 1768-1775 +140, 141, 144, 147, 143, 144, 140, 135, // 1776-1783 +133, 123, 119, 113, 109, 103, 100, 99, // 1784-1791 + 95, 100, 105, 108, 112, 125, 125, 136, // 1792-1799 +147, 144, 160, 157, 160, 160, 157, 152, // 1800-1807 +145, 142, 130, 125, 118, 111, 110, 106, // 1808-1815 +104, 108, 107, 112, 117, 121, 129, 134, // 1816-1823 +140, 142, 144, 145, 143, 143, 138, 136, // 1824-1831 +131, 123, 120, 112, 110, 105, 101, 100, // 1832-1839 + 95, 100, 101, 108, 112, 114, 132, 126, // 1840-1847 +141, 149, 145, 162, 156, 162, 160, 156, // 1848-1855 +151, 144, 141, 129, 125, 118, 111, 112, // 1856-1863 +106, 106, 109, 108, 114, 117, 123, 130, // 1864-1871 +134, 141, 141, 145, 144, 143, 143, 137, // 1872-1879 +136, 130, 123, 120, 112, 110, 105, 101, // 1880-1887 +100, 97, 99, 100, 107, 112, 113, 125, // 1888-1895 +130, 134, 149, 145, 157, 160, 158, 164, // 1896-1903 +158, 156, 147, 144, 134, 129, 122, 113, // 1904-1911 +112, 108, 105, 107, 107, 111, 115, 119, // 1912-1919 +127, 132, 136, 142, 142, 146, 144, 143, // 1920-1927 +143, 136, 136, 129, 123, 118, 112, 108, // 1928-1935 +103, 101, 98, 97, 98, 99, 104, 111, // 1936-1943 +113, 119, 133, 131, 143, 152, 148, 164, // 1944-1951 +160, 164, 162, 158, 153, 147, 142, 131, // 1952-1959 +128, 118, 111, 110, 104, 104, 107, 105, // 1960-1967 +112, 116, 120, 128, 134, 135, 142, 145, // 1968-1975 +143, 147, 143, 143, 140, 134, 130, 123, // 1976-1983 +116, 112, 107, 101, 100, 97, 95, 98, // 1984-1991 + 98, 103, 107, 113, 119, 122, 139, 135, // 1992-1999 +147, 156, 151, 168, 162, 166, 164, 158, // 2000-2007 +154, 146, 141, 129, 124, 115, 109, 108, // 2008-2015 +101, 103, 105, 104, 111, 113, 118, 125, // 2016-2023 +131, 136, 142, 144, 144, 149, 144, 145, // 2024-2031 +143, 136, 133, 125, 118, 112, 107, 100, // 2032-2039 +100, 97, 93, 98, 98, 102, 106, 110, // 2040-2047 +116, 122, 129, 133, 144, 144, 151, 162, // 2048-2055 +156, 168, 164, 162, 162, 155, 148, 142, // 2056-2063 +134, 123, 118, 111, 104, 103, 100, 100, // 2064-2071 +104, 104, 110, 114, 119, 128, 133, 138, // 2072-2079 +143, 145, 147, 147, 147, 144, 141, 137, // 2080-2087 +129, 124, 116, 110, 106, 100, 98, 97, // 2088-2095 + 97, 100, 103, 107, 111, 114, 119, 125, // 2096-2103 +132, 137, 140, 147, 150, 149, 162, 153, // 2104-2111 +162, 160, 154, 157, 147, 144, 136, 130, // 2112-2119 +120, 114, 110, 103, 103, 101, 100, 106, // 2120-2127 +107, 112, 118, 121, 129, 134, 139, 142, // 2128-2135 +147, 144, 147, 146, 141, 143, 134, 131, // 2136-2143 +126, 117, 114, 109, 105, 103, 101, 101, // 2144-2151 +105, 108, 110, 116, 119, 123, 129, 130, // 2152-2159 +134, 138, 141, 140, 144, 146, 141, 153, // 2160-2167 +144, 146, 152, 142, 146, 141, 136, 131, // 2168-2175 +126, 119, 115, 113, 107, 109, 108, 107, // 2176-2183 +112, 113, 116, 123, 124, 131, 135, 138, // 2184-2191 +140, 143, 143, 141, 144, 138, 137, 136, // 2192-2199 +127, 128, 120, 116, 114, 111, 109, 110, // 2200-2207 +110, 110, 114, 116, 119, 123, 125, 127, // 2208-2215 +130, 129, 131, 131, 133, 133, 129, 138, // 2216-2223 +131, 134, 143, 133, 144, 141, 140, 144, // 2224-2231 +138, 138, 133, 131, 123, 122, 118, 113, // 2232-2239 +115, 112, 112, 116, 114, 120, 122, 125, // 2240-2247 +130, 133, 135, 136, 140, 139, 138, 140, // 2248-2255 +135, 136, 134, 128, 129, 122, 121, 119, // 2256-2263 +115, 115, 114, 114, 114, 116, 117, 120, // 2264-2271 +121, 122, 125, 124, 125, 125, 122, 125, // 2272-2279 +123, 125, 125, 123, 134, 125, 138, 139, // 2280-2287 +136, 149, 141, 147, 146, 143, 142, 136, // 2288-2295 +133, 126, 123, 117, 115, 115, 112, 114, // 2296-2303 +115, 115, 121, 121, 126, 130, 132, 135, // 2304-2311 +136, 136, 137, 136, 136, 133, 133, 131, // 2312-2319 +128, 127, 123, 121, 119, 117, 116, 115, // 2320-2327 +115, 115, 116, 118, 119, 121, 122, 123, // 2328-2335 +124, 123, 123, 123, 121, 121, 123, 125, // 2336-2343 +123, 129, 133, 129, 143, 138, 143, 149, // 2344-2351 +143, 150, 145, 143, 140, 135, 130, 125, // 2352-2359 +121, 116, 115, 113, 112, 115, 114, 116, // 2360-2367 +121, 121, 125, 129, 129, 132, 133, 133, // 2368-2375 +134, 134, 132, 134, 131, 131, 131, 126, // 2376-2383 +126, 124, 122, 121, 120, 119, 119, 119, // 2384-2391 +119, 120, 120, 121, 123, 122, 123, 123, // 2392-2399 +122, 123, 121, 121, 121, 124, 125, 124, // 2400-2407 +133, 132, 133, 144, 138, 146, 147, 144, // 2408-2415 +149, 143, 141, 138, 133, 127, 123, 119, // 2416-2423 +114, 114, 112, 112, 115, 114, 118, 121, // 2424-2431 +121, 128, 129, 130, 133, 133, 133, 134, // 2432-2439 +134, 134, 134, 133, 132, 132, 129, 128, // 2440-2447 +128, 123, 123, 121, 120, 120, 119, 119, // 2448-2455 +120, 120, 120, 121, 121, 121, 121, 121, // 2456-2463 +121, 121, 121, 121, 122, 125, 125, 127, // 2464-2471 +134, 131, 138, 142, 138, 148, 143, 145, // 2472-2479 +145, 141, 140, 134, 131, 125, 122, 118, // 2480-2487 +116, 116, 113, 115, 117, 116, 121, 121, // 2488-2495 +124, 128, 129, 130, 131, 133, 133, 133, // 2496-2503 +134, 133, 134, 133, 131, 132, 129, 129, // 2504-2511 +128, 124, 123, 121, 120, 120, 119, 118, // 2512-2519 +119, 118, 119, 120, 120, 121, 121, 121, // 2520-2527 +122, 122, 121, 122, 121, 123, 125, 125, // 2528-2535 +128, 134, 131, 138, 141, 139, 147, 143, // 2536-2543 +145, 145, 141, 140, 136, 131, 128, 123, // 2544-2551 +119, 117, 116, 114, 115, 116, 115, 119, // 2552-2559 +119, 121, 124, 125, 128, 130, 131, 132, // 2560-2567 +134, 133, 134, 135, 134, 135, 133, 132, // 2568-2575 +131, 129, 128, 125, 122, 121, 120, 118, // 2576-2583 +118, 117, 116, 118, 118, 119, 120, 121, // 2584-2591 +122, 123, 123, 123, 124, 123, 123, 128, // 2592-2599 +127, 125, 133, 133, 132, 143, 138, 143, // 2600-2607 +146, 141, 146, 142, 140, 138, 133, 128, // 2608-2615 +124, 120, 116, 116, 114, 112, 115, 114, // 2616-2623 +116, 120, 119, 123, 125, 128, 130, 131, // 2624-2631 +133, 134, 134, 135, 136, 136, 136, 135, // 2632-2639 +134, 133, 131, 129, 128, 125, 123, 120, // 2640-2647 +120, 118, 118, 117, 117, 118, 118, 119, // 2648-2655 +120, 121, 122, 123, 123, 124, 124, 123, // 2656-2663 +124, 123, 126, 128, 126, 133, 133, 133, // 2664-2671 +142, 138, 143, 144, 141, 145, 141, 139, // 2672-2679 +136, 131, 127, 124, 120, 117, 116, 114, // 2680-2687 +113, 114, 114, 117, 120, 120, 124, 126, // 2688-2695 +128, 131, 132, 133, 134, 135, 136, 136, // 2696-2703 +136, 136, 135, 134, 133, 131, 129, 127, // 2704-2711 +125, 124, 121, 121, 120, 118, 118, 118, // 2712-2719 +118, 118, 118, 120, 120, 121, 123, 123, // 2720-2727 +125, 125, 125, 125, 125, 126, 125, 129, // 2728-2735 +130, 129, 135, 133, 134, 141, 135, 143, // 2736-2743 +141, 140, 143, 137, 136, 133, 129, 125, // 2744-2751 +122, 118, 116, 116, 114, 114, 116, 115, // 2752-2759 +119, 120, 121, 126, 127, 131, 133, 133, // 2760-2767 +135, 136, 136, 136, 136, 135, 134, 133, // 2768-2775 +131, 131, 127, 126, 124, 123, 121, 121, // 2776-2783 +120, 120, 120, 120, 120, 120, 120, 121, // 2784-2791 +121, 122, 123, 123, 125, 125, 125, 126, // 2792-2799 +125, 125, 125, 125, 125, 126, 128, 126, // 2800-2807 +129, 133, 129, 136, 136, 135, 143, 137, // 2808-2815 +140, 140, 135, 136, 132, 127, 125, 121, // 2816-2823 +118, 118, 116, 115, 116, 117, 118, 121, // 2824-2831 +122, 125, 129, 130, 133, 134, 134, 136, // 2832-2839 +136, 135, 135, 134, 133, 131, 129, 128, // 2840-2847 +126, 124, 123, 122, 121, 121, 121, 121, // 2848-2855 +121, 121, 121, 122, 122, 123, 123, 124, // 2856-2863 +125, 125, 125, 125, 126, 126, 126, 126, // 2864-2871 +125, 125, 124, 123, 123, 124, 125, 124, // 2872-2879 +129, 129, 129, 136, 133, 136, 140, 136, // 2880-2887 +141, 138, 136, 136, 132, 129, 127, 123, // 2888-2895 +121, 119, 118, 117, 118, 118, 119, 121, // 2896-2903 +122, 125, 127, 129, 132, 133, 133, 134, // 2904-2911 +133, 133, 133, 132, 131, 130, 129, 127, // 2912-2919 +126, 125, 123, 124, 123, 123, 123, 123, // 2920-2927 +123, 124, 124, 125, 125, 125, 126, 126, // 2928-2935 +125, 128, 126, 126, 128, 125, 128, 125, // 2936-2943 +125, 126, 123, 124, 123, 122, 122, 124, // 2944-2951 +125, 125, 129, 131, 128, 138, 133, 136, // 2952-2959 +141, 135, 142, 138, 135, 137, 132, 129, // 2960-2967 +129, 121, 121, 120, 117, 118, 118, 118, // 2968-2975 +120, 122, 122, 126, 128, 129, 132, 132, // 2976-2983 +133, 134, 133, 133, 133, 132, 131, 130, // 2984-2991 +129, 128, 127, 125, 125, 124, 123, 124, // 2992-2999 +123, 123, 124, 123, 125, 124, 124, 125, // 3000-3007 +125, 125, 125, 125, 125, 125, 125, 125, // 3008-3015 +125, 125, 125, 125, 125, 125, 125, 125, // 3016-3023 +125, 124, 125, 128, 126, 130, 131, 130, // 3024-3031 +134, 133, 136, 137, 135, 138, 136, 134, // 3032-3039 +133, 130, 127, 125, 123, 121, 120, 119, // 3040-3047 +119, 120, 121, 121, 123, 125, 128, 129, // 3048-3055 +130, 131, 133, 132, 133, 132, 131, 131, // 3056-3063 +129, 129, 129, 126, 126, 125, 124, 124, // 3064-3071 +123, 123, 123, 123, 123, 123, 124, 123, // 3072-3079 +124, 125, 124, 125, 125, 125, 126, 126, // 3080-3087 +126, 126, 128, 127, 128, 128, 127, 128, // 3088-3095 +127, 127, 128, 128, 127, 128, 127, 129, // 3096-3103 +129, 130, 131, 131, 132, 132, 133, 133, // 3104-3111 +132, 132, 131, 131, 129, 127, 126, 125, // 3112-3119 +124, 123, 123, 123, 123, 124, 125, 125, // 3120-3127 +126, 128, 129, 129, 129, 130, 129, 130, // 3128-3135 +129, 128, 129, 125, 126, 125, 123, 124, // 3136-3143 +123, 123, 123, 123, 123, 124, 124, 125, // 3144-3151 +125, 125, 125, 126, 127, 126, 128, 127, // 3152-3159 +128, 127, 128, 128, 127, 128, 127, 128, // 3160-3167 +128, 129, 128, 127, 129, 128, 129, 127, // 3168-3175 +128, 127, 128, 127, 128, 126, 128, 126, // 3176-3183 +126, 127, 128, 127, 129, 129, 129, 129, // 3184-3191 +129, 129, 130, 129, 129, 129, 128, 127, // 3192-3199 +127, 126, 127, 127, 125, 125, 125, 125, // 3200-3207 +126, 126, 126, 128, 126, 128, 127, 128, // 3208-3215 +127, 128, 126, 126, 128, 125, 126, 125, // 3216-3223 +125, 126, 126, 125, 127, 126, 127, 129, // 3224-3231 +127, 128, 129, 127, 128, 127, 127, 127, // 3232-3239 +128, 126, 126, 127, 126, 127, 128, 126, // 3240-3247 +129, 128, 128, 129, 128, 127, 129, 128, // 3248-3255 +127, 128, 126, 128, 127, 128, 127, 128, // 3256-3263 +127, 128, 128, 129, 127, 129, 129, 129, // 3264-3271 +129, 129, 129, 128, 128, 128, 128, 126, // 3272-3279 +125, 126, 125, 126, 126, 126, 127, 128, // 3280-3287 +128, 128, 127, 129, 127, 129, 127, 128, // 3288-3295 +127, 126, 127, 126, 126, 128, 126, 126, // 3296-3303 +128, 128, 128, 127, 128, 127, 128, 128, // 3304-3311 +126, 128, 127, 126, 127, 126, 128, 127}; + +const char U[3414] = {128, 127, 128, 127, 128, 127, 128, 127, // 0-7 +128, 127, 128, 127, 128, 127, 126, 126, // 8-15 +126, 126, 126, 126, 126, 126, 126, 126, // 16-23 +126, 126, 128, 127, 126, 128, 128, 127, // 24-31 +128, 126, 126, 126, 125, 124, 124, 124, // 32-39 +123, 123, 122, 122, 123, 123, 124, 124, // 40-47 +126, 127, 129, 130, 132, 134, 134, 136, // 48-55 +136, 136, 135, 135, 134, 132, 131, 130, // 56-63 +129, 128, 126, 125, 124, 124, 124, 124, // 64-71 +124, 123, 123, 123, 122, 122, 122, 122, // 72-79 +122, 122, 121, 121, 120, 120, 121, 121, // 80-87 +120, 123, 123, 124, 129, 130, 133, 134, // 88-95 +139, 137, 141, 140, 139, 139, 137, 135, // 96-103 +132, 132, 127, 128, 124, 123, 122, 122, // 104-111 +120, 122, 122, 122, 124, 124, 126, 125, // 112-119 +128, 127, 130, 130, 130, 130, 129, 127, // 120-127 +127, 124, 122, 121, 119, 118, 117, 117, // 128-135 +117, 117, 120, 120, 123, 126, 130, 133, // 136-143 +136, 139, 139, 142, 141, 141, 139, 139, // 144-151 +136, 134, 132, 130, 129, 125, 124, 122, // 152-159 +122, 121, 122, 122, 122, 122, 123, 124, // 160-167 +124, 126, 125, 127, 126, 126, 125, 124, // 168-175 +122, 120, 119, 118, 119, 115, 117, 119, // 176-183 +119, 124, 124, 130, 132, 138, 139, 141, // 184-191 +143, 142, 142, 140, 139, 135, 135, 131, // 192-199 +130, 126, 124, 123, 122, 121, 121, 121, // 200-207 +121, 122, 122, 123, 124, 125, 125, 126, // 208-215 +126, 126, 125, 124, 123, 122, 120, 118, // 216-223 +117, 118, 116, 117, 120, 119, 124, 126, // 224-231 +130, 133, 137, 140, 140, 143, 141, 143, // 232-239 +139, 139, 134, 134, 130, 128, 125, 123, // 240-247 +122, 121, 122, 121, 122, 122, 124, 124, // 248-255 +126, 126, 128, 128, 127, 128, 126, 125, // 256-263 +124, 122, 120, 118, 115, 116, 115, 113, // 264-271 +117, 117, 119, 124, 126, 132, 134, 141, // 272-279 +140, 143, 144, 143, 143, 141, 139, 134, // 280-287 +134, 127, 128, 123, 122, 120, 120, 120, // 288-295 +120, 122, 120, 124, 124, 125, 127, 128, // 296-303 +129, 129, 129, 128, 126, 124, 122, 120, // 304-311 +117, 115, 117, 114, 115, 119, 117, 122, // 312-319 +125, 130, 134, 138, 142, 141, 146, 143, // 320-327 +143, 142, 140, 136, 133, 130, 124, 124, // 328-335 +120, 120, 119, 119, 119, 120, 122, 122, // 336-343 +124, 125, 127, 129, 130, 130, 129, 130, // 344-351 +126, 126, 122, 120, 118, 116, 117, 115, // 352-359 +115, 119, 117, 122, 126, 129, 135, 137, // 360-367 +143, 141, 147, 143, 143, 143, 139, 137, // 368-375 +132, 131, 124, 124, 120, 119, 119, 117, // 376-383 +119, 119, 122, 122, 125, 125, 127, 130, // 384-391 +130, 130, 129, 129, 125, 124, 121, 119, // 392-399 +117, 115, 117, 113, 117, 119, 117, 127, // 400-407 +128, 134, 137, 143, 143, 145, 149, 143, // 408-415 +145, 141, 139, 133, 131, 125, 121, 120, // 416-423 +116, 117, 116, 117, 117, 120, 121, 123, // 424-431 +125, 128, 130, 130, 130, 130, 129, 126, // 432-439 +124, 122, 118, 117, 115, 115, 114, 114, // 440-447 +120, 117, 126, 129, 133, 139, 142, 147, // 448-455 +144, 151, 145, 145, 143, 138, 134, 129, // 456-463 +126, 119, 120, 115, 115, 115, 114, 117, // 464-471 +118, 120, 123, 125, 128, 130, 131, 130, // 472-479 +130, 130, 126, 124, 121, 117, 115, 115, // 480-487 +113, 113, 113, 122, 117, 127, 132, 134, // 488-495 +143, 143, 151, 145, 153, 146, 145, 143, // 496-503 +137, 133, 126, 124, 117, 117, 113, 112, // 504-511 +114, 114, 116, 120, 121, 124, 129, 129, // 512-519 +131, 132, 131, 130, 127, 124, 121, 117, // 520-527 +113, 112, 112, 113, 110, 118, 120, 120, // 528-535 +135, 133, 143, 143, 153, 152, 151, 155, // 536-543 +145, 147, 139, 135, 128, 123, 118, 113, // 544-551 +114, 111, 112, 113, 114, 117, 122, 123, // 552-559 +129, 130, 132, 132, 132, 131, 128, 126, // 560-567 +120, 116, 113, 109, 111, 111, 109, 117, // 568-575 +118, 121, 135, 135, 145, 147, 155, 154, // 576-583 +154, 156, 146, 146, 139, 132, 128, 120, // 584-591 +115, 112, 112, 109, 111, 114, 114, 119, // 592-599 +124, 127, 130, 134, 133, 134, 134, 131, // 600-607 +127, 124, 117, 112, 110, 107, 109, 107, // 608-615 +109, 118, 116, 128, 137, 139, 150, 151, // 616-623 +160, 155, 158, 154, 145, 145, 134, 127, // 624-631 +122, 115, 112, 109, 109, 109, 111, 115, // 632-639 +117, 124, 129, 130, 136, 136, 136, 136, // 640-647 +134, 129, 124, 120, 111, 109, 105, 104, // 648-655 +107, 104, 114, 117, 121, 139, 137, 150, // 656-663 +154, 160, 162, 157, 160, 147, 145, 138, // 664-671 +126, 122, 114, 110, 107, 106, 107, 108, // 672-679 +114, 116, 123, 131, 132, 139, 139, 139, // 680-687 +139, 136, 132, 125, 120, 112, 108, 102, // 688-695 +102, 103, 102, 108, 118, 117, 134, 143, // 696-703 +145, 160, 160, 164, 162, 162, 153, 144, // 704-711 +141, 128, 120, 115, 107, 105, 104, 104, // 712-719 +107, 112, 117, 121, 131, 135, 137, 143, // 720-727 +140, 139, 138, 131, 124, 119, 111, 105, // 728-735 +101, 100, 101, 102, 109, 119, 118, 140, // 736-743 +143, 150, 162, 162, 166, 164, 162, 151, // 744-751 +143, 137, 122, 115, 111, 102, 101, 102, // 752-759 +102, 107, 113, 119, 126, 135, 139, 142, // 760-767 +145, 143, 141, 139, 129, 124, 115, 106, // 768-775 +102, 95, 98, 98, 99, 111, 118, 121, // 776-783 +144, 145, 155, 168, 166, 168, 166, 162, // 784-791 +150, 142, 133, 118, 111, 107, 98, 98, // 792-799 + 99, 100, 107, 113, 121, 130, 137, 143, // 800-807 +143, 147, 145, 140, 139, 127, 122, 112, // 808-815 +103, 98, 93, 95, 98, 98, 113, 121, // 816-823 +125, 151, 150, 162, 170, 170, 170, 166, // 824-831 +160, 147, 138, 128, 114, 106, 102, 93, // 832-839 + 95, 98, 100, 109, 117, 124, 134, 143, // 840-847 +145, 148, 149, 144, 141, 134, 124, 117, // 848-855 +107, 99, 93, 91, 93, 98, 100, 117, // 856-863 +124, 131, 155, 154, 166, 176, 172, 170, // 864-871 +168, 155, 145, 134, 122, 110, 102, 99, // 872-879 + 91, 93, 100, 101, 111, 122, 128, 139, // 880-887 +147, 147, 150, 150, 143, 140, 131, 120, // 888-895 +112, 102, 93, 91, 89, 93, 98, 105, // 896-903 +124, 124, 144, 160, 160, 174, 178, 172, // 904-911 +170, 164, 149, 140, 127, 114, 103, 98, // 912-919 + 93, 89, 95, 100, 104, 117, 127, 134, // 920-927 +145, 151, 151, 153, 149, 143, 136, 125, // 928-935 +115, 104, 97, 89, 85, 89, 95, 98, // 936-943 +112, 130, 130, 154, 164, 166, 178, 180, // 944-951 +172, 168, 160, 144, 133, 120, 109, 97, // 952-959 + 93, 89, 87, 95, 102, 109, 122, 133, // 960-967 +140, 150, 154, 154, 152, 148, 141, 132, // 968-975 +121, 111, 100, 91, 85, 85, 87, 98, // 976-983 +100, 119, 133, 137, 162, 168, 170, 180, // 984-991 +180, 170, 166, 154, 139, 126, 114, 102, // 992-999 + 93, 91, 87, 89, 98, 106, 113, 128, // 1000-1007 +138, 145, 153, 156, 155, 150, 144, 137, // 1008-1015 +124, 115, 104, 93, 87, 83, 85, 93, // 1016-1023 + 99, 111, 130, 134, 153, 168, 168, 180, // 1024-1031 +182, 174, 168, 160, 143, 130, 117, 105, // 1032-1039 + 93, 89, 87, 87, 93, 103, 111, 122, // 1040-1047 +136, 143, 150, 157, 156, 152, 147, 141, // 1048-1055 +127, 117, 109, 95, 87, 85, 83, 89, // 1056-1063 + 98, 103, 124, 135, 144, 166, 170, 176, // 1064-1071 +184, 180, 168, 166, 149, 134, 121, 109, // 1072-1079 + 95, 89, 87, 85, 89, 99, 109, 117, // 1080-1087 +133, 143, 150, 157, 160, 155, 150, 143, // 1088-1095 +133, 120, 112, 99, 87, 83, 81, 83, // 1096-1103 + 93, 101, 114, 134, 141, 158, 174, 174, // 1104-1111 +182, 184, 174, 166, 157, 140, 124, 113, // 1112-1119 +100, 89, 85, 85, 87, 93, 104, 113, // 1120-1127 +126, 141, 148, 155, 162, 158, 154, 147, // 1128-1135 +139, 125, 114, 105, 91, 83, 81, 81, // 1136-1143 + 87, 99, 106, 124, 142, 146, 168, 178, // 1144-1151 +178, 182, 184, 170, 162, 150, 132, 117, // 1152-1159 +107, 93, 85, 83, 85, 89, 98, 111, // 1160-1167 +121, 133, 145, 154, 157, 162, 158, 149, // 1168-1175 +143, 134, 118, 109, 100, 87, 81, 81, // 1176-1183 + 83, 91, 103, 113, 134, 145, 155, 174, // 1184-1191 +178, 180, 184, 178, 164, 156, 142, 124, // 1192-1199 +111, 101, 89, 85, 83, 87, 93, 103, // 1200-1207 +115, 127, 139, 150, 156, 160, 160, 155, // 1208-1215 +145, 139, 128, 113, 104, 95, 83, 79, // 1216-1223 + 81, 87, 98, 107, 120, 143, 148, 162, // 1224-1231 +178, 178, 178, 184, 174, 158, 151, 135, // 1232-1239 +117, 107, 96, 87, 83, 85, 91, 98, // 1240-1247 +108, 121, 132, 143, 153, 160, 160, 160, // 1248-1255 +153, 143, 135, 123, 111, 102, 93, 83, // 1256-1263 + 79, 83, 85, 99, 112, 119, 141, 154, // 1264-1271 +158, 176, 182, 176, 176, 174, 157, 146, // 1272-1279 +135, 119, 106, 98, 91, 87, 85, 93, // 1280-1287 +101, 109, 120, 134, 142, 150, 160, 158, // 1288-1295 +156, 153, 143, 133, 124, 112, 102, 95, // 1296-1303 + 87, 81, 83, 87, 98, 112, 120, 136, // 1304-1311 +154, 158, 168, 180, 178, 172, 174, 160, // 1312-1319 +146, 137, 122, 109, 100, 93, 89, 87, // 1320-1327 + 93, 101, 109, 117, 132, 143, 148, 155, // 1328-1335 +160, 156, 151, 145, 134, 124, 114, 104, // 1336-1343 + 97, 91, 85, 83, 87, 93, 107, 120, // 1344-1351 +127, 144, 160, 162, 172, 178, 174, 168, // 1352-1359 +166, 152, 139, 129, 116, 104, 98, 91, // 1360-1367 + 91, 93, 97, 107, 115, 123, 137, 146, // 1368-1375 +150, 154, 157, 153, 147, 141, 130, 120, // 1376-1383 +112, 104, 98, 91, 87, 87, 91, 98, // 1384-1391 +109, 122, 130, 142, 160, 160, 164, 174, // 1392-1399 +170, 162, 162, 152, 139, 128, 119, 109, // 1400-1407 +101, 97, 95, 97, 100, 108, 116, 122, // 1408-1415 +133, 143, 148, 150, 154, 152, 145, 140, // 1416-1423 +132, 122, 114, 107, 102, 97, 93, 93, // 1424-1431 + 93, 97, 106, 116, 128, 134, 145, 160, // 1432-1439 +158, 162, 170, 166, 156, 154, 147, 135, // 1440-1447 +125, 118, 110, 103, 100, 100, 102, 104, // 1448-1455 +111, 119, 124, 133, 143, 146, 147, 151, // 1456-1463 +149, 143, 137, 131, 122, 115, 110, 106, // 1464-1471 +102, 98, 98, 99, 100, 104, 113, 124, // 1472-1479 +132, 137, 149, 157, 154, 160, 166, 158, // 1480-1487 +152, 151, 143, 132, 124, 118, 112, 107, // 1488-1495 +104, 105, 105, 107, 113, 120, 124, 133, // 1496-1503 +143, 143, 145, 149, 145, 141, 137, 130, // 1504-1511 +123, 117, 112, 109, 105, 101, 101, 102, // 1512-1519 +102, 104, 111, 120, 127, 132, 141, 153, // 1520-1527 +152, 153, 162, 160, 152, 151, 147, 139, // 1528-1535 +130, 122, 117, 111, 105, 103, 106, 105, // 1536-1543 +109, 115, 121, 128, 137, 143, 144, 148, // 1544-1551 +148, 144, 141, 134, 129, 122, 115, 111, // 1552-1559 +108, 104, 102, 101, 100, 102, 104, 110, // 1560-1567 +118, 128, 132, 140, 153, 152, 154, 162, // 1568-1575 +162, 154, 151, 147, 140, 131, 122, 117, // 1576-1583 +111, 104, 102, 104, 104, 107, 114, 121, // 1584-1591 +128, 137, 144, 147, 150, 150, 147, 143, // 1592-1599 +137, 131, 123, 116, 112, 109, 106, 102, // 1600-1607 +102, 102, 102, 103, 105, 113, 121, 128, // 1608-1615 +133, 142, 153, 152, 153, 160, 160, 152, // 1616-1623 +150, 147, 139, 130, 122, 116, 111, 104, // 1624-1631 +102, 104, 106, 108, 115, 123, 130, 138, // 1632-1639 +145, 148, 150, 150, 147, 143, 137, 130, // 1640-1647 +123, 117, 112, 109, 107, 104, 103, 103, // 1648-1655 +104, 104, 105, 110, 117, 125, 132, 134, // 1656-1663 +147, 153, 150, 154, 160, 156, 150, 148, // 1664-1671 +143, 136, 125, 118, 113, 109, 102, 102, // 1672-1679 +106, 108, 111, 118, 127, 135, 141, 148, // 1680-1687 +151, 151, 149, 146, 141, 134, 127, 121, // 1688-1695 +117, 112, 109, 108, 107, 104, 106, 107, // 1696-1703 +107, 107, 109, 113, 121, 129, 131, 139, // 1704-1711 +149, 149, 151, 156, 160, 154, 150, 147, // 1712-1719 +142, 133, 122, 116, 112, 105, 102, 104, // 1720-1727 +107, 109, 114, 123, 132, 139, 144, 150, // 1728-1735 +152, 150, 147, 144, 139, 132, 124, 119, // 1736-1743 +115, 111, 109, 109, 107, 105, 107, 108, // 1744-1751 +108, 107, 108, 112, 118, 128, 130, 134, // 1752-1759 +146, 150, 150, 154, 160, 156, 151, 148, // 1760-1767 +143, 137, 125, 117, 113, 109, 102, 102, // 1768-1775 +107, 110, 113, 120, 130, 137, 143, 147, // 1776-1783 +152, 152, 149, 144, 141, 134, 127, 120, // 1784-1791 +117, 113, 111, 109, 111, 109, 108, 109, // 1792-1799 +109, 109, 108, 107, 109, 113, 123, 128, // 1800-1807 +129, 141, 149, 149, 151, 158, 160, 155, // 1808-1815 +152, 146, 142, 133, 121, 115, 112, 107, // 1816-1823 +102, 104, 108, 112, 116, 124, 134, 141, // 1824-1831 +144, 149, 153, 150, 146, 142, 137, 132, // 1832-1839 +124, 119, 117, 115, 112, 111, 112, 110, // 1840-1847 +109, 109, 108, 108, 107, 105, 106, 110, // 1848-1855 +117, 124, 127, 135, 146, 151, 152, 157, // 1856-1863 +162, 160, 156, 151, 145, 139, 127, 117, // 1864-1871 +112, 109, 104, 102, 104, 110, 115, 120, // 1872-1879 +128, 138, 143, 147, 150, 151, 150, 143, // 1880-1887 +139, 134, 130, 123, 119, 116, 115, 113, // 1888-1895 +111, 110, 110, 109, 107, 106, 107, 107, // 1896-1903 +105, 104, 108, 115, 124, 129, 133, 145, // 1904-1911 +154, 155, 158, 164, 164, 162, 154, 147, // 1912-1919 +141, 132, 119, 111, 108, 104, 101, 102, // 1920-1927 +107, 113, 119, 124, 133, 141, 145, 147, // 1928-1935 +147, 148, 146, 141, 136, 133, 130, 123, // 1936-1943 +119, 117, 115, 113, 111, 109, 109, 109, // 1944-1951 +107, 105, 106, 107, 106, 106, 107, 112, // 1952-1959 +122, 132, 134, 142, 154, 160, 160, 164, // 1960-1967 +166, 164, 160, 150, 143, 136, 124, 112, // 1968-1975 +107, 104, 102, 100, 102, 109, 115, 121, // 1976-1983 +126, 134, 143, 146, 147, 147, 147, 145, // 1984-1991 +141, 136, 132, 129, 122, 117, 114, 112, // 1992-1999 +111, 109, 107, 108, 109, 108, 108, 109, // 2000-2007 +110, 110, 111, 111, 113, 121, 132, 137, // 2008-2015 +140, 150, 158, 162, 162, 164, 164, 162, // 2016-2023 +155, 143, 137, 130, 117, 109, 104, 101, // 2024-2031 +100, 100, 103, 109, 117, 123, 130, 137, // 2032-2039 +143, 147, 150, 150, 147, 145, 141, 135, // 2040-2047 +130, 124, 120, 115, 112, 110, 109, 108, // 2048-2055 +108, 109, 109, 111, 112, 112, 113, 115, // 2056-2063 +115, 115, 117, 119, 126, 136, 140, 143, // 2064-2071 +151, 158, 160, 160, 162, 160, 156, 149, // 2072-2079 +139, 131, 123, 114, 106, 100, 98, 99, // 2080-2087 +101, 104, 110, 118, 126, 133, 140, 145, // 2088-2095 +150, 152, 150, 147, 143, 140, 134, 126, // 2096-2103 +120, 116, 113, 111, 109, 108, 109, 110, // 2104-2111 +111, 112, 115, 117, 118, 119, 120, 120, // 2112-2119 +121, 120, 120, 122, 128, 136, 139, 141, // 2120-2127 +147, 154, 157, 156, 155, 153, 151, 144, // 2128-2135 +135, 126, 119, 112, 106, 100, 98, 100, // 2136-2143 +104, 108, 113, 121, 130, 137, 142, 145, // 2144-2151 +149, 150, 149, 145, 141, 137, 131, 124, // 2152-2159 +118, 114, 112, 112, 111, 111, 111, 113, // 2160-2167 +115, 117, 119, 121, 124, 124, 123, 122, // 2168-2175 +122, 121, 119, 117, 119, 125, 133, 135, // 2176-2183 +138, 144, 149, 152, 153, 152, 150, 147, // 2184-2191 +143, 134, 125, 118, 113, 108, 103, 101, // 2192-2199 +103, 107, 111, 116, 122, 131, 138, 143, // 2200-2207 +145, 147, 148, 147, 144, 140, 134, 130, // 2208-2215 +124, 119, 115, 112, 112, 113, 113, 114, // 2216-2223 +115, 118, 121, 123, 124, 125, 126, 126, // 2224-2231 +124, 121, 118, 117, 115, 115, 115, 121, // 2232-2239 +129, 134, 137, 143, 147, 152, 155, 153, // 2240-2247 +150, 147, 143, 137, 127, 119, 113, 109, // 2248-2255 +106, 103, 104, 107, 113, 119, 124, 132, // 2256-2263 +138, 143, 147, 148, 147, 146, 143, 139, // 2264-2271 +133, 127, 122, 118, 115, 113, 113, 113, // 2272-2279 +115, 117, 120, 122, 123, 126, 128, 127, // 2280-2287 +128, 125, 124, 122, 119, 116, 113, 112, // 2288-2295 +113, 114, 118, 126, 133, 137, 142, 146, // 2296-2303 +151, 154, 154, 152, 148, 144, 139, 132, // 2304-2311 +122, 115, 111, 107, 106, 106, 108, 112, // 2312-2319 +117, 124, 130, 136, 141, 144, 146, 145, // 2320-2327 +143, 141, 137, 132, 126, 121, 117, 115, // 2328-2335 +114, 115, 115, 117, 120, 122, 124, 128, // 2336-2343 +128, 129, 128, 127, 126, 124, 122, 119, // 2344-2351 +117, 115, 113, 113, 113, 114, 117, 124, // 2352-2359 +132, 137, 141, 144, 147, 151, 153, 151, // 2360-2367 +147, 143, 139, 134, 128, 119, 113, 110, // 2368-2375 +109, 109, 110, 112, 115, 121, 127, 133, // 2376-2383 +137, 139, 141, 141, 141, 138, 134, 130, // 2384-2391 +126, 122, 120, 119, 117, 118, 120, 122, // 2392-2399 +124, 127, 129, 130, 130, 130, 130, 128, // 2400-2407 +126, 124, 122, 120, 117, 116, 115, 113, // 2408-2415 +113, 114, 115, 117, 119, 124, 132, 137, // 2416-2423 +141, 143, 145, 147, 149, 149, 148, 143, // 2424-2431 +139, 134, 129, 123, 118, 114, 111, 111, // 2432-2439 +112, 113, 117, 120, 124, 127, 132, 136, // 2440-2447 +137, 138, 137, 134, 133, 131, 128, 125, // 2448-2455 +124, 123, 123, 124, 125, 127, 128, 129, // 2456-2463 +130, 130, 130, 129, 127, 124, 122, 121, // 2464-2471 +120, 118, 117, 116, 115, 116, 116, 117, // 2472-2479 +117, 119, 120, 122, 124, 129, 133, 137, // 2480-2487 +139, 141, 142, 143, 143, 144, 143, 141, // 2488-2495 +137, 133, 130, 124, 121, 118, 116, 115, // 2496-2503 +115, 116, 119, 122, 124, 128, 130, 132, // 2504-2511 +133, 134, 134, 132, 131, 130, 128, 128, // 2512-2519 +127, 128, 126, 128, 128, 129, 130, 130, // 2520-2527 +129, 128, 127, 126, 124, 123, 122, 120, // 2528-2535 +120, 118, 118, 118, 118, 119, 120, 120, // 2536-2543 +121, 122, 122, 123, 124, 124, 126, 130, // 2544-2551 +133, 136, 138, 139, 141, 141, 143, 143, // 2552-2559 +143, 141, 138, 134, 130, 125, 122, 120, // 2560-2567 +117, 116, 115, 115, 117, 120, 122, 124, // 2568-2575 +126, 128, 130, 131, 132, 132, 132, 131, // 2576-2583 +130, 130, 129, 129, 129, 130, 130, 129, // 2584-2591 +129, 128, 127, 126, 125, 124, 123, 122, // 2592-2599 +121, 120, 120, 120, 120, 120, 120, 120, // 2600-2607 +122, 122, 123, 123, 123, 123, 123, 123, // 2608-2615 +124, 125, 129, 132, 134, 137, 139, 141, // 2616-2623 +141, 142, 142, 142, 140, 137, 133, 129, // 2624-2631 +124, 120, 117, 116, 115, 115, 115, 117, // 2632-2639 +119, 121, 124, 127, 130, 131, 132, 133, // 2640-2647 +133, 133, 132, 132, 131, 130, 130, 129, // 2648-2655 +129, 129, 127, 128, 126, 125, 124, 124, // 2656-2663 +124, 124, 123, 122, 122, 121, 121, 121, // 2664-2671 +122, 122, 122, 122, 122, 122, 123, 123, // 2672-2679 +124, 124, 124, 124, 125, 127, 130, 134, // 2680-2687 +137, 139, 140, 140, 140, 140, 139, 139, // 2688-2695 +137, 134, 130, 125, 122, 119, 117, 116, // 2696-2703 +116, 117, 117, 119, 121, 123, 125, 129, // 2704-2711 +130, 132, 132, 132, 132, 132, 132, 132, // 2712-2719 +131, 130, 130, 129, 128, 128, 128, 126, // 2720-2727 +125, 125, 124, 123, 122, 122, 122, 122, // 2728-2735 +122, 122, 122, 122, 122, 122, 122, 123, // 2736-2743 +124, 124, 124, 124, 124, 124, 125, 125, // 2744-2751 +126, 128, 129, 131, 134, 136, 137, 138, // 2752-2759 +138, 138, 137, 137, 135, 134, 132, 128, // 2760-2767 +124, 121, 119, 117, 117, 118, 119, 120, // 2768-2775 +122, 123, 124, 128, 130, 132, 133, 134, // 2776-2783 +134, 133, 133, 132, 132, 131, 130, 130, // 2784-2791 +128, 127, 125, 124, 124, 124, 124, 123, // 2792-2799 +123, 123, 122, 122, 123, 123, 123, 124, // 2800-2807 +124, 124, 124, 124, 124, 124, 124, 124, // 2808-2815 +124, 124, 124, 124, 125, 126, 128, 130, // 2816-2823 +133, 135, 137, 138, 138, 138, 137, 137, // 2824-2831 +135, 134, 132, 129, 125, 122, 120, 118, // 2832-2839 +118, 118, 120, 121, 122, 124, 126, 127, // 2840-2847 +130, 132, 132, 133, 133, 132, 132, 130, // 2848-2855 +130, 129, 128, 128, 127, 126, 125, 124, // 2856-2863 +124, 124, 124, 124, 124, 124, 123, 123, // 2864-2871 +123, 123, 123, 123, 124, 124, 124, 124, // 2872-2879 +124, 124, 124, 124, 125, 125, 125, 124, // 2880-2887 +124, 125, 128, 128, 132, 134, 136, 137, // 2888-2895 +137, 137, 137, 137, 136, 134, 132, 130, // 2896-2903 +127, 123, 120, 119, 118, 118, 119, 120, // 2904-2911 +122, 124, 125, 128, 129, 131, 132, 133, // 2912-2919 +133, 132, 132, 130, 130, 128, 127, 128, // 2920-2927 +126, 125, 124, 124, 124, 124, 124, 124, // 2928-2935 +124, 124, 124, 123, 123, 123, 123, 124, // 2936-2943 +124, 124, 124, 124, 124, 124, 124, 124, // 2944-2951 +124, 124, 124, 124, 124, 124, 126, 130, // 2952-2959 +133, 136, 138, 139, 139, 138, 137, 137, // 2960-2967 +136, 134, 132, 129, 124, 121, 118, 117, // 2968-2975 +117, 118, 120, 122, 123, 125, 128, 129, // 2976-2983 +131, 132, 133, 133, 133, 132, 130, 129, // 2984-2991 +128, 128, 128, 126, 126, 125, 125, 124, // 2992-2999 +124, 125, 125, 125, 125, 124, 124, 123, // 3000-3007 +122, 122, 122, 123, 123, 123, 123, 123, // 3008-3015 +123, 124, 124, 124, 124, 124, 124, 124, // 3016-3023 +124, 124, 127, 130, 133, 136, 138, 139, // 3024-3031 +139, 138, 137, 137, 136, 134, 132, 128, // 3032-3039 +124, 120, 118, 117, 118, 120, 121, 122, // 3040-3047 +124, 125, 127, 130, 132, 132, 133, 133, // 3048-3055 +132, 130, 129, 128, 128, 127, 128, 126, // 3056-3063 +126, 126, 126, 126, 126, 128, 128, 127, // 3064-3071 +126, 124, 124, 123, 122, 122, 122, 123, // 3072-3079 +123, 123, 124, 124, 124, 125, 125, 125, // 3080-3087 +125, 125, 125, 124, 124, 124, 125, 127, // 3088-3095 +130, 132, 135, 137, 139, 139, 139, 137, // 3096-3103 +137, 135, 133, 131, 128, 124, 121, 119, // 3104-3111 +118, 119, 120, 122, 123, 124, 126, 129, // 3112-3119 +130, 132, 132, 132, 132, 130, 129, 127, // 3120-3127 +128, 127, 126, 126, 126, 126, 126, 126, // 3128-3135 +128, 128, 127, 128, 125, 124, 123, 123, // 3136-3143 +122, 122, 122, 122, 122, 122, 124, 124, // 3144-3151 +125, 126, 126, 126, 125, 125, 127, 126, // 3152-3159 +125, 124, 124, 124, 124, 126, 128, 130, // 3160-3167 +132, 133, 135, 136, 137, 137, 137, 134, // 3168-3175 +133, 131, 129, 127, 125, 124, 122, 122, // 3176-3183 +122, 122, 124, 124, 126, 128, 129, 130, // 3184-3191 +130, 130, 130, 130, 129, 128, 127, 127, // 3192-3199 +128, 127, 128, 126, 126, 126, 126, 126, // 3200-3207 +126, 126, 125, 124, 123, 122, 122, 122, // 3208-3215 +122, 123, 124, 124, 124, 125, 125, 125, // 3216-3223 +125, 126, 126, 128, 126, 127, 125, 125, // 3224-3231 +125, 126, 128, 129, 129, 130, 130, 130, // 3232-3239 +130, 130, 130, 130, 130, 130, 131, 131, // 3240-3247 +130, 130, 130, 130, 130, 130, 130, 129, // 3248-3255 +129, 129, 128, 127, 128, 126, 125, 125, // 3256-3263 +125, 126, 126, 128, 127, 127, 128, 126, // 3264-3271 +127, 126, 125, 125, 124, 124, 124, 124, // 3272-3279 +124, 124, 124, 124, 125, 126, 126, 126, // 3280-3287 +126, 126, 126, 127, 128, 128, 126, 126, // 3288-3295 +125, 126, 126, 128, 128, 128, 128, 129, // 3296-3303 +129, 129, 127, 128, 127, 128, 128, 127, // 3304-3311 +128, 127, 128, 128, 128, 128, 128, 128, // 3312-3319 +128, 129, 129, 130, 130, 129, 129, 129, // 3320-3327 +129, 129, 128, 128, 128, 128, 129, 129, // 3328-3335 +128, 128, 128, 128, 128, 128, 128, 126, // 3336-3343 +126, 126, 126, 126, 128, 126, 126, 126, // 3344-3351 +126, 126, 127, 128, 127, 127, 126, 128, // 3352-3359 +127, 128, 127, 126, 127, 128, 127, 128, // 3360-3367 +127, 128, 126, 128, 128, 127, 128, 127, // 3368-3375 +127, 126, 128, 128, 127, 126, 126, 126, // 3376-3383 +128, 127, 128, 128, 127, 128, 128, 127, // 3384-3391 +128, 128, 127, 128, 127, 128, 127, 128, // 3392-3399 +127, 128, 127, 129, 129, 129, 127, 126, // 3400-3407 +126, 126, 127, 128, 128, 126}; + +const char V[3955] = {128, 127, 128, 127, 128, 127, 128, 127, // 0-7 +128, 128, 127, 128, 128, 127, 128, 127, // 8-15 +128, 127, 128, 127, 128, 128, 128, 126, // 16-23 +128, 126, 126, 126, 126, 126, 126, 126, // 24-31 +126, 126, 126, 126, 127, 128, 127, 128, // 32-39 +127, 128, 127, 128, 129, 129, 129, 129, // 40-47 +129, 129, 129, 129, 129, 129, 129, 128, // 48-55 +127, 128, 127, 128, 127, 128, 128, 127, // 56-63 +128, 126, 126, 126, 126, 125, 125, 125, // 64-71 +125, 125, 125, 125, 125, 124, 124, 124, // 72-79 +125, 125, 125, 125, 125, 126, 128, 128, // 80-87 +129, 129, 130, 131, 131, 131, 131, 131, // 88-95 +131, 131, 131, 131, 130, 130, 129, 129, // 96-103 +128, 128, 127, 127, 125, 125, 125, 125, // 104-111 +125, 124, 124, 124, 124, 124, 124, 124, // 112-119 +124, 124, 124, 124, 124, 125, 125, 125, // 120-127 +125, 125, 126, 128, 128, 129, 129, 130, // 128-135 +131, 131, 131, 132, 132, 132, 132, 132, // 136-143 +131, 131, 130, 129, 129, 129, 128, 127, // 144-151 +128, 128, 126, 126, 126, 125, 125, 125, // 152-159 +125, 125, 124, 124, 124, 123, 123, 123, // 160-167 +123, 123, 123, 123, 123, 123, 123, 123, // 168-175 +124, 125, 125, 126, 126, 128, 128, 129, // 176-183 +130, 131, 131, 132, 132, 132, 132, 132, // 184-191 +131, 131, 131, 130, 129, 129, 129, 128, // 192-199 +127, 128, 127, 128, 127, 126, 126, 125, // 200-207 +125, 125, 125, 124, 124, 124, 124, 123, // 208-215 +123, 123, 123, 123, 123, 123, 123, 123, // 216-223 +123, 123, 123, 124, 125, 125, 126, 128, // 224-231 +129, 130, 131, 131, 132, 132, 133, 133, // 232-239 +132, 132, 132, 132, 131, 131, 130, 129, // 240-247 +129, 129, 128, 128, 127, 128, 126, 126, // 248-255 +125, 125, 125, 125, 124, 124, 123, 123, // 256-263 +123, 123, 123, 123, 123, 123, 123, 123, // 264-271 +123, 123, 123, 123, 123, 124, 125, 125, // 272-279 +126, 127, 129, 128, 131, 131, 132, 133, // 280-287 +133, 134, 134, 134, 133, 132, 132, 131, // 288-295 +131, 131, 130, 129, 129, 128, 127, 128, // 296-303 +126, 126, 125, 125, 125, 124, 124, 123, // 304-311 +123, 123, 123, 123, 123, 123, 123, 123, // 312-319 +123, 123, 123, 123, 123, 123, 123, 123, // 320-327 +124, 125, 125, 126, 128, 127, 129, 130, // 328-335 +131, 132, 133, 134, 134, 134, 134, 134, // 336-343 +134, 133, 132, 132, 131, 131, 130, 129, // 344-351 +129, 127, 128, 126, 125, 125, 125, 124, // 352-359 +123, 123, 123, 123, 123, 123, 123, 123, // 360-367 +123, 123, 123, 123, 123, 123, 123, 123, // 368-375 +123, 123, 124, 124, 125, 125, 126, 128, // 376-383 +127, 129, 129, 130, 131, 132, 133, 134, // 384-391 +134, 134, 134, 134, 134, 134, 133, 132, // 392-399 +131, 131, 130, 129, 128, 128, 126, 125, // 400-407 +125, 125, 124, 123, 123, 123, 123, 123, // 408-415 +123, 123, 123, 123, 123, 123, 123, 123, // 416-423 +123, 123, 123, 124, 124, 124, 125, 125, // 424-431 +125, 125, 126, 126, 128, 127, 129, 129, // 432-439 +130, 131, 132, 132, 133, 134, 134, 134, // 440-447 +134, 134, 133, 132, 132, 131, 130, 129, // 448-455 +127, 128, 126, 125, 125, 124, 123, 123, // 456-463 +122, 122, 122, 122, 122, 122, 122, 123, // 464-471 +123, 123, 123, 123, 124, 124, 125, 125, // 472-479 +125, 125, 125, 125, 125, 126, 127, 127, // 480-487 +128, 127, 129, 129, 129, 130, 131, 131, // 488-495 +132, 132, 133, 133, 133, 133, 133, 132, // 496-503 +132, 131, 131, 129, 129, 128, 126, 125, // 504-511 +124, 123, 123, 123, 122, 122, 122, 122, // 512-519 +122, 122, 123, 123, 123, 124, 125, 125, // 520-527 +125, 125, 126, 126, 126, 128, 128, 128, // 528-535 +128, 128, 128, 128, 128, 127, 129, 128, // 536-543 +129, 129, 130, 131, 131, 131, 131, 132, // 544-551 +131, 131, 131, 131, 131, 131, 130, 129, // 552-559 +129, 128, 127, 126, 125, 125, 125, 124, // 560-567 +123, 123, 123, 123, 123, 123, 123, 123, // 568-575 +124, 124, 125, 125, 125, 125, 126, 126, // 576-583 +126, 128, 127, 128, 127, 128, 128, 127, // 584-591 +128, 128, 127, 128, 129, 129, 129, 129, // 592-599 +129, 129, 129, 130, 130, 130, 130, 130, // 600-607 +129, 129, 129, 129, 127, 128, 128, 127, // 608-615 +126, 126, 125, 125, 125, 125, 125, 125, // 616-623 +125, 125, 125, 125, 125, 125, 125, 125, // 624-631 +125, 126, 127, 126, 126, 126, 126, 126, // 632-639 +126, 128, 127, 128, 128, 128, 127, 128, // 640-647 +127, 128, 127, 128, 129, 129, 129, 129, // 648-655 +129, 129, 129, 129, 129, 129, 128, 129, // 656-663 +128, 127, 128, 128, 126, 126, 126, 126, // 664-671 +126, 126, 125, 125, 125, 126, 126, 126, // 672-679 +126, 128, 127, 128, 127, 128, 127, 128, // 680-687 +127, 128, 128, 127, 128, 128, 126, 126, // 688-695 +126, 127, 127, 126, 127, 127, 128, 127, // 696-703 +128, 127, 128, 127, 128, 128, 127, 128, // 704-711 +127, 128, 127, 128, 128, 127, 128, 128, // 712-719 +127, 128, 126, 126, 126, 126, 126, 126, // 720-727 +126, 126, 126, 126, 126, 126, 127, 128, // 728-735 +127, 128, 127, 128, 127, 128, 128, 127, // 736-743 +128, 127, 126, 126, 127, 126, 126, 126, // 744-751 +128, 126, 126, 126, 126, 126, 127, 126, // 752-759 +128, 127, 128, 127, 128, 128, 127, 128, // 760-767 +128, 127, 128, 127, 128, 127, 128, 128, // 768-775 +128, 128, 128, 128, 128, 126, 127, 128, // 776-783 +127, 128, 127, 128, 127, 128, 127, 128, // 784-791 +127, 128, 127, 128, 128, 127, 128, 126, // 792-799 +127, 126, 126, 126, 125, 126, 126, 126, // 800-807 +126, 127, 128, 127, 128, 127, 128, 128, // 808-815 +127, 128, 127, 128, 127, 128, 128, 128, // 816-823 +127, 128, 127, 128, 126, 127, 128, 126, // 824-831 +128, 128, 126, 128, 127, 128, 128, 128, // 832-839 +127, 126, 126, 126, 126, 126, 128, 126, // 840-847 +128, 126, 126, 126, 126, 125, 126, 126, // 848-855 +126, 126, 128, 128, 127, 128, 127, 128, // 856-863 +129, 129, 129, 129, 129, 129, 128, 128, // 864-871 +127, 128, 128, 127, 128, 127, 128, 127, // 872-879 +128, 128, 127, 128, 128, 126, 126, 126, // 880-887 +126, 125, 125, 127, 125, 125, 125, 125, // 888-895 +125, 125, 125, 125, 125, 125, 125, 125, // 896-903 +126, 127, 128, 127, 129, 129, 130, 129, // 904-911 +131, 131, 131, 131, 131, 131, 130, 130, // 912-919 +129, 129, 127, 128, 127, 126, 125, 126, // 920-927 +124, 125, 125, 125, 124, 126, 127, 123, // 928-935 +125, 123, 122, 121, 121, 122, 122, 121, // 936-943 +123, 125, 125, 128, 129, 131, 131, 132, // 944-951 +133, 134, 134, 134, 134, 133, 132, 132, // 952-959 +132, 131, 129, 129, 127, 127, 127, 126, // 960-967 +128, 127, 126, 125, 125, 124, 123, 123, // 968-975 +122, 121, 120, 120, 120, 119, 118, 119, // 976-983 +119, 122, 124, 123, 125, 131, 131, 132, // 984-991 +134, 136, 136, 137, 137, 136, 135, 133, // 992-999 +131, 130, 127, 125, 125, 123, 124, 126, // 1000-1007 +128, 126, 129, 129, 129, 130, 129, 129, // 1008-1015 +128, 125, 125, 123, 120, 119, 117, 116, // 1016-1023 +115, 114, 114, 117, 122, 120, 121, 132, // 1024-1031 +132, 132, 137, 141, 141, 141, 141, 140, // 1032-1039 +139, 133, 131, 129, 125, 122, 122, 121, // 1040-1047 +122, 124, 125, 126, 131, 131, 130, 132, // 1048-1055 +130, 129, 128, 124, 120, 119, 115, 112, // 1056-1063 +112, 110, 109, 113, 119, 120, 122, 133, // 1064-1071 +137, 137, 144, 147, 149, 147, 147, 145, // 1072-1079 +142, 134, 129, 125, 119, 114, 114, 114, // 1080-1087 +115, 119, 122, 127, 132, 133, 136, 136, // 1088-1095 +133, 132, 129, 122, 119, 112, 107, 104, // 1096-1103 +100, 101, 108, 114, 114, 125, 140, 140, // 1104-1111 +147, 157, 160, 160, 160, 158, 154, 143, // 1112-1119 +133, 129, 116, 107, 105, 104, 102, 108, // 1120-1127 +112, 119, 128, 132, 139, 143, 139, 141, // 1128-1135 +138, 127, 121, 114, 104, 95, 91, 95, // 1136-1143 +101, 102, 108, 131, 135, 141, 160, 168, // 1144-1151 +170, 172, 174, 168, 160, 144, 138, 123, // 1152-1159 +107, 100, 95, 87, 89, 100, 107, 113, // 1160-1167 +128, 138, 143, 146, 149, 151, 142, 134, // 1168-1175 +129, 115, 100, 93, 91, 91, 91, 95, // 1176-1183 +115, 122, 129, 152, 166, 166, 174, 184, // 1184-1191 +176, 168, 158, 147, 132, 112, 105, 95, // 1192-1199 + 83, 85, 93, 93, 105, 119, 129, 138, // 1200-1207 +143, 148, 152, 143, 140, 135, 118, 107, // 1208-1215 +104, 102, 95, 91, 107, 113, 112, 135, // 1216-1223 +150, 155, 164, 174, 178, 170, 162, 160, // 1224-1231 +143, 125, 117, 106, 91, 87, 87, 89, // 1232-1239 + 95, 107, 119, 128, 138, 147, 148, 149, // 1240-1247 +149, 142, 135, 123, 112, 102, 99, 97, // 1248-1255 + 93, 97, 111, 115, 123, 144, 153, 164, // 1256-1263 +170, 178, 176, 166, 162, 152, 134, 120, // 1264-1271 +111, 97, 89, 87, 89, 93, 102, 113, // 1272-1279 +123, 132, 142, 145, 147, 147, 141, 136, // 1280-1287 +125, 112, 108, 104, 102, 95, 104, 115, // 1288-1295 +112, 129, 145, 150, 160, 170, 172, 172, // 1296-1303 +164, 158, 148, 129, 123, 110, 95, 91, // 1304-1311 + 91, 89, 97, 106, 115, 125, 135, 144, // 1312-1319 +144, 147, 149, 140, 135, 126, 112, 105, // 1320-1327 +101, 100, 95, 97, 113, 115, 121, 145, // 1328-1335 +149, 160, 168, 172, 174, 166, 157, 152, // 1336-1343 +132, 122, 112, 97, 91, 91, 89, 95, // 1344-1351 +105, 114, 125, 134, 144, 146, 147, 149, // 1352-1359 +142, 134, 129, 113, 104, 102, 99, 93, // 1360-1367 + 95, 111, 114, 117, 143, 148, 156, 170, // 1368-1375 +174, 172, 170, 160, 153, 135, 123, 114, // 1376-1383 + 97, 93, 89, 87, 93, 102, 112, 122, // 1384-1391 +133, 144, 147, 148, 152, 146, 137, 134, // 1392-1399 +119, 107, 103, 98, 95, 93, 100, 115, // 1400-1407 +112, 132, 149, 150, 166, 174, 172, 172, // 1408-1415 +166, 154, 144, 126, 119, 104, 93, 91, // 1416-1423 + 85, 89, 98, 105, 117, 130, 140, 149, // 1424-1431 +149, 153, 152, 143, 139, 129, 114, 105, // 1432-1439 + 97, 95, 93, 91, 105, 114, 114, 142, // 1440-1447 +149, 156, 172, 174, 176, 174, 164, 156, // 1448-1455 +139, 124, 115, 97, 93, 87, 83, 91, // 1456-1463 + 97, 108, 120, 132, 143, 150, 152, 154, // 1464-1471 +152, 144, 137, 126, 112, 103, 97, 93, // 1472-1479 + 93, 91, 105, 114, 116, 143, 148, 160, // 1480-1487 +172, 174, 176, 172, 162, 154, 137, 123, // 1488-1495 +113, 95, 93, 87, 85, 91, 98, 110, // 1496-1503 +120, 132, 143, 149, 152, 154, 150, 143, // 1504-1511 +136, 124, 112, 102, 97, 95, 91, 93, // 1512-1519 +109, 110, 122, 143, 146, 162, 170, 174, // 1520-1527 +174, 170, 162, 149, 135, 125, 109, 98, // 1528-1535 + 93, 85, 87, 93, 100, 110, 120, 134, // 1536-1543 +142, 149, 152, 150, 150, 143, 134, 124, // 1544-1551 +112, 104, 100, 97, 93, 100, 111, 110, // 1552-1559 +129, 142, 147, 162, 168, 172, 170, 168, // 1560-1567 +157, 145, 135, 122, 108, 100, 93, 87, // 1568-1575 + 91, 95, 102, 111, 122, 133, 142, 148, // 1576-1583 +149, 149, 148, 141, 134, 123, 112, 104, // 1584-1591 +102, 99, 93, 102, 112, 110, 131, 142, // 1592-1599 +146, 162, 168, 170, 168, 166, 157, 144, // 1600-1607 +136, 123, 109, 103, 95, 89, 91, 95, // 1608-1615 +102, 112, 122, 131, 140, 146, 147, 147, // 1616-1623 +146, 139, 133, 123, 112, 107, 104, 100, // 1624-1631 + 97, 107, 112, 112, 134, 138, 148, 160, // 1632-1639 +166, 168, 166, 164, 152, 143, 135, 120, // 1640-1647 +111, 104, 95, 93, 93, 99, 104, 112, // 1648-1655 +122, 131, 140, 145, 146, 146, 145, 138, // 1656-1663 +132, 122, 112, 108, 106, 102, 99, 110, // 1664-1671 +110, 115, 134, 137, 148, 158, 164, 166, // 1672-1679 +164, 162, 150, 144, 135, 120, 112, 105, // 1680-1687 + 97, 95, 97, 99, 105, 113, 120, 130, // 1688-1695 +139, 143, 145, 145, 144, 138, 132, 125, // 1696-1703 +113, 110, 106, 104, 100, 107, 113, 112, // 1704-1711 +132, 137, 144, 157, 160, 164, 164, 162, // 1712-1719 +154, 144, 137, 123, 114, 107, 99, 97, // 1720-1727 + 95, 99, 104, 112, 119, 127, 137, 142, // 1728-1735 +144, 146, 144, 142, 134, 128, 117, 110, // 1736-1743 +108, 104, 101, 104, 112, 111, 124, 137, // 1744-1751 +139, 154, 158, 164, 164, 164, 157, 147, // 1752-1759 +142, 127, 117, 112, 102, 99, 97, 99, // 1760-1767 +102, 109, 116, 123, 134, 140, 143, 146, // 1768-1775 +144, 143, 139, 129, 123, 113, 107, 105, // 1776-1783 +102, 100, 105, 113, 112, 131, 138, 143, // 1784-1791 +157, 160, 166, 164, 162, 154, 144, 139, // 1792-1799 +123, 114, 108, 99, 98, 97, 99, 104, // 1800-1807 +110, 119, 125, 136, 142, 144, 147, 144, // 1808-1815 +143, 138, 129, 122, 112, 105, 103, 101, // 1816-1823 +100, 102, 113, 114, 125, 142, 143, 156, // 1824-1831 +162, 166, 164, 162, 156, 144, 139, 125, // 1832-1839 +114, 110, 100, 97, 97, 99, 103, 110, // 1840-1847 +117, 124, 135, 142, 144, 148, 146, 143, // 1848-1855 +140, 131, 123, 115, 107, 102, 100, 100, // 1856-1863 +100, 107, 117, 119, 136, 144, 149, 162, // 1864-1871 +164, 166, 164, 160, 150, 140, 134, 118, // 1872-1879 +112, 105, 97, 98, 97, 102, 106, 114, // 1880-1887 +122, 130, 140, 144, 146, 149, 146, 142, // 1888-1895 +138, 129, 119, 112, 104, 99, 98, 99, // 1896-1903 +100, 106, 119, 120, 137, 147, 149, 164, // 1904-1911 +164, 166, 162, 158, 150, 139, 132, 118, // 1912-1919 +110, 106, 97, 97, 99, 100, 107, 114, // 1920-1927 +122, 131, 139, 145, 147, 150, 147, 143, // 1928-1935 +139, 131, 122, 114, 106, 100, 97, 97, // 1936-1943 +100, 103, 111, 123, 125, 142, 150, 152, // 1944-1951 +166, 164, 164, 160, 155, 145, 135, 128, // 1952-1959 +115, 108, 105, 98, 99, 102, 104, 111, // 1960-1967 +118, 125, 134, 142, 144, 148, 147, 146, // 1968-1975 +142, 136, 129, 120, 113, 107, 100, 97, // 1976-1983 + 97, 100, 107, 110, 125, 130, 137, 154, // 1984-1991 +152, 162, 164, 162, 160, 152, 146, 135, // 1992-1999 +128, 117, 108, 106, 100, 99, 104, 105, // 2000-2007 +112, 117, 125, 132, 140, 144, 146, 147, // 2008-2015 +144, 142, 137, 129, 123, 115, 110, 105, // 2016-2023 +100, 98, 100, 105, 111, 114, 127, 135, // 2024-2031 +139, 154, 152, 160, 162, 157, 155, 149, // 2032-2039 +142, 132, 124, 117, 109, 107, 104, 101, // 2040-2047 +107, 108, 113, 120, 126, 133, 139, 143, // 2048-2055 +143, 145, 142, 140, 135, 128, 123, 117, // 2056-2063 +112, 108, 104, 100, 104, 104, 111, 117, // 2064-2071 +119, 136, 136, 143, 154, 149, 160, 154, // 2072-2079 +153, 149, 143, 139, 128, 122, 116, 110, // 2080-2087 +110, 107, 107, 112, 112, 117, 122, 128, // 2088-2095 +134, 138, 141, 142, 143, 139, 137, 134, // 2096-2103 +125, 124, 118, 113, 112, 108, 106, 106, // 2104-2111 +107, 111, 115, 120, 125, 137, 138, 143, // 2112-2119 +151, 148, 154, 150, 149, 145, 141, 136, // 2120-2127 +128, 123, 118, 112, 112, 110, 110, 112, // 2128-2135 +112, 117, 122, 126, 131, 135, 138, 139, // 2136-2143 +141, 138, 137, 133, 129, 125, 120, 117, // 2144-2151 +114, 112, 109, 107, 108, 109, 112, 119, // 2152-2159 +119, 131, 136, 135, 149, 145, 150, 153, // 2160-2167 +149, 149, 144, 141, 133, 129, 123, 115, // 2168-2175 +114, 111, 107, 112, 110, 112, 118, 120, // 2176-2183 +128, 133, 137, 139, 142, 142, 139, 140, // 2184-2191 +134, 131, 128, 120, 118, 114, 111, 108, // 2192-2199 +106, 105, 107, 111, 115, 119, 125, 137, // 2200-2207 +135, 145, 150, 147, 155, 152, 151, 147, // 2208-2215 +143, 137, 130, 125, 117, 112, 112, 105, // 2216-2223 +107, 110, 110, 115, 120, 125, 132, 138, // 2224-2231 +140, 143, 144, 142, 143, 138, 132, 131, // 2232-2239 +122, 119, 115, 111, 108, 106, 105, 104, // 2240-2247 +107, 112, 115, 122, 125, 137, 139, 143, // 2248-2255 +153, 148, 155, 153, 150, 147, 143, 137, // 2256-2263 +129, 123, 117, 112, 110, 107, 107, 110, // 2264-2271 +111, 115, 121, 126, 133, 139, 141, 143, // 2272-2279 +145, 143, 143, 139, 133, 131, 123, 119, // 2280-2287 +116, 112, 110, 107, 106, 105, 107, 109, // 2288-2295 +112, 119, 123, 127, 139, 139, 143, 152, // 2296-2303 +147, 154, 151, 149, 146, 142, 137, 129, // 2304-2311 +124, 117, 112, 111, 107, 108, 110, 111, // 2312-2319 +116, 120, 128, 132, 139, 142, 143, 146, // 2320-2327 +143, 143, 140, 133, 132, 124, 120, 116, // 2328-2335 +112, 110, 108, 106, 105, 106, 107, 110, // 2336-2343 +112, 120, 124, 129, 140, 139, 144, 152, // 2344-2351 +147, 154, 152, 148, 146, 142, 137, 129, // 2352-2359 +123, 116, 112, 112, 107, 108, 110, 112, // 2360-2367 +117, 121, 128, 134, 139, 143, 143, 148, // 2368-2375 +143, 143, 140, 133, 132, 124, 119, 117, // 2376-2383 +112, 110, 108, 108, 104, 107, 107, 108, // 2384-2391 +112, 116, 121, 128, 131, 140, 140, 145, // 2392-2399 +150, 146, 154, 149, 148, 145, 140, 135, // 2400-2407 +128, 123, 117, 112, 112, 108, 110, 112, // 2408-2415 +112, 119, 122, 129, 135, 139, 143, 144, // 2416-2423 +144, 143, 142, 138, 133, 131, 123, 120, // 2424-2431 +117, 113, 112, 110, 108, 107, 108, 108, // 2432-2439 +109, 112, 114, 118, 125, 126, 134, 140, // 2440-2447 +139, 147, 147, 148, 152, 149, 147, 144, // 2448-2455 +141, 134, 129, 123, 116, 114, 112, 109, // 2456-2463 +112, 112, 114, 119, 123, 129, 134, 139, // 2464-2471 +142, 143, 145, 140, 142, 139, 131, 133, // 2472-2479 +124, 121, 119, 114, 112, 111, 110, 107, // 2480-2487 +108, 108, 108, 111, 112, 115, 120, 125, // 2488-2495 +128, 135, 140, 140, 150, 147, 150, 154, // 2496-2503 +149, 149, 145, 141, 135, 129, 122, 116, // 2504-2511 +114, 111, 109, 111, 112, 114, 119, 123, // 2512-2519 +129, 134, 138, 141, 143, 143, 142, 141, // 2520-2527 +139, 134, 133, 128, 123, 120, 115, 112, // 2528-2535 +112, 108, 107, 108, 106, 108, 110, 111, // 2536-2543 +114, 117, 123, 127, 131, 139, 142, 143, // 2544-2551 +151, 149, 152, 154, 149, 151, 144, 140, // 2552-2559 +134, 127, 121, 115, 112, 110, 108, 111, // 2560-2567 +111, 114, 119, 121, 128, 133, 137, 140, // 2568-2575 +143, 143, 142, 143, 139, 136, 135, 127, // 2576-2583 +125, 120, 115, 112, 110, 108, 105, 106, // 2584-2591 +107, 107, 110, 112, 114, 117, 120, 125, // 2592-2599 +132, 134, 139, 145, 143, 150, 152, 150, // 2600-2607 +154, 149, 147, 144, 139, 133, 126, 121, // 2608-2615 +114, 112, 110, 108, 110, 111, 112, 117, // 2616-2623 +120, 126, 132, 137, 140, 142, 143, 142, // 2624-2631 +143, 140, 136, 134, 128, 123, 119, 114, // 2632-2639 +112, 108, 107, 105, 107, 107, 109, 112, // 2640-2647 +114, 116, 120, 122, 128, 132, 136, 139, // 2648-2655 +143, 146, 146, 152, 149, 150, 150, 146, // 2656-2663 +144, 140, 134, 128, 122, 117, 112, 111, // 2664-2671 +108, 108, 110, 111, 115, 119, 123, 130, // 2672-2679 +134, 138, 142, 143, 143, 143, 142, 138, // 2680-2687 +135, 131, 125, 122, 117, 113, 112, 108, // 2688-2695 +108, 107, 108, 110, 112, 114, 117, 120, // 2696-2703 +123, 125, 129, 132, 136, 139, 140, 146, // 2704-2711 +143, 147, 149, 144, 149, 144, 143, 140, // 2712-2719 +134, 130, 123, 119, 114, 112, 110, 108, // 2720-2727 +110, 112, 113, 118, 122, 127, 132, 136, // 2728-2735 +139, 142, 143, 142, 142, 140, 135, 134, // 2736-2743 +129, 123, 120, 115, 113, 112, 110, 110, // 2744-2751 +110, 112, 112, 115, 118, 122, 124, 126, // 2752-2759 +129, 130, 132, 135, 136, 137, 139, 142, // 2760-2767 +139, 143, 143, 142, 145, 140, 140, 136, // 2768-2775 +132, 127, 123, 119, 115, 113, 112, 112, // 2776-2783 +113, 114, 117, 120, 123, 128, 132, 135, // 2784-2791 +139, 140, 141, 140, 140, 137, 134, 132, // 2792-2799 +126, 123, 120, 116, 115, 112, 112, 112, // 2800-2807 +112, 114, 116, 119, 122, 123, 126, 128, // 2808-2815 +129, 130, 130, 129, 132, 132, 132, 134, // 2816-2823 +137, 134, 139, 139, 137, 142, 138, 139, // 2824-2831 +137, 133, 130, 125, 122, 118, 116, 114, // 2832-2839 +113, 115, 115, 117, 121, 123, 127, 132, // 2840-2847 +134, 137, 139, 139, 140, 139, 136, 135, // 2848-2855 +131, 127, 125, 120, 119, 117, 114, 114, // 2856-2863 +114, 114, 115, 118, 119, 122, 124, 125, // 2864-2871 +128, 127, 128, 127, 126, 126, 125, 129, // 2872-2879 +127, 129, 134, 132, 135, 139, 137, 142, // 2880-2887 +141, 140, 140, 137, 134, 129, 125, 121, // 2888-2895 +118, 116, 114, 114, 115, 115, 119, 122, // 2896-2903 +125, 130, 132, 135, 137, 139, 139, 139, // 2904-2911 +137, 134, 132, 129, 125, 123, 120, 117, // 2912-2919 +117, 115, 115, 116, 117, 119, 120, 122, // 2920-2927 +124, 125, 126, 128, 127, 126, 125, 125, // 2928-2935 +123, 123, 125, 125, 126, 131, 132, 133, // 2936-2943 +140, 138, 141, 143, 141, 142, 139, 135, // 2944-2951 +132, 127, 123, 119, 117, 114, 114, 115, // 2952-2959 +115, 118, 121, 123, 129, 131, 134, 136, // 2960-2967 +137, 137, 137, 136, 134, 132, 129, 126, // 2968-2975 +124, 122, 120, 119, 118, 119, 119, 119, // 2976-2983 +120, 122, 123, 124, 125, 127, 127, 128, // 2984-2991 +125, 125, 123, 123, 122, 120, 122, 123, // 2992-2999 +124, 126, 132, 132, 135, 141, 139, 143, // 3000-3007 +143, 142, 143, 138, 135, 131, 125, 122, // 3008-3015 +119, 116, 114, 114, 115, 115, 119, 121, // 3016-3023 +124, 129, 131, 134, 135, 135, 135, 135, // 3024-3031 +134, 132, 131, 129, 126, 125, 123, 123, // 3032-3039 +122, 121, 122, 122, 122, 123, 123, 124, // 3040-3047 +125, 125, 125, 125, 125, 123, 123, 122, // 3048-3055 +121, 120, 120, 119, 122, 123, 125, 129, // 3056-3063 +133, 134, 137, 142, 140, 144, 143, 142, // 3064-3071 +142, 137, 134, 130, 125, 120, 119, 115, // 3072-3079 +114, 115, 115, 117, 120, 122, 125, 129, // 3080-3087 +131, 133, 134, 134, 135, 134, 133, 132, // 3088-3095 +131, 129, 127, 128, 125, 125, 124, 123, // 3096-3103 +123, 123, 123, 123, 123, 123, 123, 123, // 3104-3111 +123, 123, 123, 122, 122, 121, 120, 120, // 3112-3119 +120, 120, 121, 122, 125, 128, 129, 135, // 3120-3127 +134, 138, 142, 139, 143, 141, 140, 139, // 3128-3135 +135, 132, 129, 124, 121, 119, 117, 115, // 3136-3143 +117, 117, 119, 122, 123, 125, 129, 130, // 3144-3151 +132, 132, 133, 133, 132, 132, 131, 131, // 3152-3159 +129, 129, 128, 126, 128, 125, 125, 125, // 3160-3167 +124, 124, 123, 123, 123, 123, 123, 123, // 3168-3175 +122, 122, 122, 122, 121, 121, 121, 120, // 3176-3183 +122, 121, 122, 125, 125, 127, 130, 134, // 3184-3191 +134, 137, 140, 138, 142, 140, 139, 140, // 3192-3199 +135, 134, 131, 125, 123, 120, 119, 117, // 3200-3207 +117, 117, 118, 120, 121, 123, 125, 126, // 3208-3215 +129, 130, 130, 132, 131, 131, 131, 131, // 3216-3223 +131, 131, 131, 129, 129, 129, 128, 127, // 3224-3231 +126, 125, 125, 123, 123, 123, 122, 122, // 3232-3239 +122, 121, 121, 122, 122, 122, 122, 122, // 3240-3247 +122, 123, 122, 123, 125, 124, 128, 129, // 3248-3255 +130, 135, 133, 137, 139, 137, 143, 139, // 3256-3263 +140, 139, 135, 134, 129, 126, 123, 120, // 3264-3271 +119, 117, 117, 117, 117, 119, 120, 122, // 3272-3279 +124, 126, 129, 130, 131, 132, 132, 132, // 3280-3287 +133, 133, 132, 132, 131, 131, 131, 129, // 3288-3295 +127, 128, 125, 125, 124, 123, 123, 122, // 3296-3303 +122, 122, 122, 122, 122, 122, 122, 123, // 3304-3311 +123, 123, 123, 123, 123, 123, 123, 123, // 3312-3319 +124, 128, 128, 129, 133, 134, 134, 139, // 3320-3327 +137, 140, 141, 139, 140, 136, 134, 132, // 3328-3335 +128, 124, 122, 119, 117, 117, 117, 117, // 3336-3343 +119, 119, 121, 123, 125, 127, 130, 131, // 3344-3351 +132, 133, 134, 134, 134, 133, 133, 132, // 3352-3359 +131, 131, 129, 127, 128, 125, 125, 124, // 3360-3367 +123, 123, 123, 123, 123, 123, 123, 123, // 3368-3375 +123, 123, 123, 123, 123, 123, 123, 123, // 3376-3383 +124, 123, 124, 125, 124, 125, 127, 127, // 3384-3391 +131, 130, 134, 134, 135, 138, 135, 139, // 3392-3399 +137, 137, 136, 132, 132, 128, 125, 122, // 3400-3407 +120, 119, 117, 117, 117, 117, 120, 120, // 3408-3415 +123, 125, 128, 130, 131, 132, 134, 134, // 3416-3423 +135, 134, 134, 133, 132, 131, 129, 127, // 3424-3431 +126, 125, 124, 123, 123, 122, 122, 122, // 3432-3439 +123, 123, 123, 124, 124, 124, 125, 125, // 3440-3447 +125, 125, 125, 125, 125, 125, 125, 125, // 3448-3455 +125, 124, 125, 125, 125, 128, 129, 127, // 3456-3463 +131, 132, 132, 136, 134, 136, 137, 135, // 3464-3471 +136, 134, 132, 130, 128, 125, 122, 121, // 3472-3479 +119, 119, 119, 119, 120, 122, 123, 125, // 3480-3487 +128, 129, 131, 132, 133, 133, 133, 133, // 3488-3495 +132, 132, 131, 130, 127, 128, 125, 125, // 3496-3503 +124, 123, 123, 123, 123, 123, 123, 124, // 3504-3511 +124, 125, 125, 125, 125, 125, 125, 125, // 3512-3519 +125, 125, 125, 125, 125, 125, 125, 125, // 3520-3527 +125, 125, 125, 125, 126, 127, 128, 130, // 3528-3535 +131, 132, 134, 134, 135, 136, 135, 135, // 3536-3543 +134, 132, 131, 128, 125, 123, 122, 121, // 3544-3551 +120, 120, 120, 121, 122, 123, 125, 126, // 3552-3559 +129, 130, 131, 132, 132, 132, 132, 131, // 3560-3567 +131, 129, 129, 127, 126, 125, 125, 124, // 3568-3575 +124, 123, 124, 124, 124, 125, 125, 125, // 3576-3583 +126, 125, 126, 126, 125, 125, 125, 125, // 3584-3591 +125, 125, 125, 125, 125, 124, 125, 124, // 3592-3599 +124, 125, 125, 126, 128, 127, 129, 131, // 3600-3607 +132, 132, 134, 135, 135, 136, 135, 134, // 3608-3615 +133, 131, 130, 127, 125, 123, 122, 122, // 3616-3623 +120, 121, 121, 122, 123, 123, 125, 128, // 3624-3631 +129, 130, 130, 131, 131, 131, 131, 131, // 3632-3639 +130, 129, 129, 128, 126, 125, 125, 125, // 3640-3647 +124, 125, 125, 125, 125, 125, 125, 125, // 3648-3655 +125, 125, 125, 125, 125, 125, 125, 125, // 3656-3663 +125, 125, 125, 125, 125, 125, 125, 125, // 3664-3671 +125, 126, 125, 126, 128, 129, 129, 130, // 3672-3679 +131, 132, 132, 134, 134, 134, 134, 132, // 3680-3687 +132, 131, 129, 127, 125, 124, 123, 122, // 3688-3695 +122, 122, 122, 122, 123, 124, 125, 128, // 3696-3703 +127, 129, 130, 130, 131, 131, 131, 131, // 3704-3711 +129, 129, 127, 128, 127, 125, 125, 125, // 3712-3719 +125, 125, 124, 125, 125, 125, 125, 125, // 3720-3727 +125, 125, 125, 125, 125, 125, 125, 125, // 3728-3735 +125, 125, 125, 125, 125, 125, 125, 126, // 3736-3743 +125, 126, 127, 128, 128, 129, 129, 130, // 3744-3751 +131, 131, 131, 132, 132, 132, 132, 132, // 3752-3759 +131, 131, 129, 128, 128, 125, 125, 123, // 3760-3767 +123, 123, 123, 123, 124, 125, 125, 128, // 3768-3775 +128, 129, 129, 130, 130, 130, 129, 129, // 3776-3783 +129, 128, 127, 126, 125, 125, 124, 124, // 3784-3791 +123, 123, 124, 123, 124, 124, 125, 125, // 3792-3799 +125, 125, 126, 126, 126, 126, 126, 126, // 3800-3807 +126, 126, 126, 126, 126, 127, 128, 129, // 3808-3815 +128, 129, 128, 129, 130, 131, 131, 131, // 3816-3823 +131, 131, 131, 131, 131, 131, 130, 129, // 3824-3831 +129, 127, 128, 127, 125, 125, 125, 125, // 3832-3839 +125, 125, 125, 125, 125, 125, 127, 126, // 3840-3847 +126, 127, 128, 127, 128, 126, 126, 126, // 3848-3855 +125, 125, 125, 125, 125, 125, 125, 125, // 3856-3863 +125, 126, 126, 126, 127, 128, 127, 128, // 3864-3871 +127, 128, 128, 127, 128, 127, 128, 127, // 3872-3879 +128, 129, 128, 129, 129, 129, 130, 130, // 3880-3887 +130, 130, 130, 130, 130, 129, 129, 129, // 3888-3895 +129, 127, 128, 127, 128, 128, 126, 128, // 3896-3903 +126, 126, 126, 126, 126, 126, 126, 126, // 3904-3911 +126, 126, 126, 126, 126, 126, 126, 126, // 3912-3919 +126, 126, 126, 126, 125, 126, 125, 126, // 3920-3927 +126, 126, 126, 126, 126, 126, 128, 126, // 3928-3935 +128, 128, 127, 128, 127, 128, 127, 128, // 3936-3943 +127, 128, 128, 127, 128, 127, 128, 127, // 3944-3951 +128, 127, 128}; + +const char W[4781] = {128, 127, 128, 128, 127, 128, 127, 128, // 0-7 +127, 128, 128, 127, 128, 127, 128, 127, // 8-15 +128, 128, 128, 127, 128, 127, 128, 127, // 16-23 +128, 127, 128, 129, 133, 134, 127, 125, // 24-31 +124, 128, 130, 132, 126, 123, 129, 121, // 32-39 +123, 125, 123, 123, 123, 128, 125, 124, // 40-47 +127, 130, 132, 128, 126, 129, 125, 124, // 48-55 +124, 127, 125, 124, 124, 129, 131, 122, // 56-63 +129, 125, 127, 123, 126, 128, 130, 125, // 64-71 +127, 133, 129, 130, 127, 133, 130, 129, // 72-79 +127, 130, 129, 128, 129, 128, 129, 125, // 80-87 +125, 125, 127, 123, 124, 123, 124, 122, // 88-95 +121, 122, 122, 121, 121, 122, 124, 125, // 96-103 +129, 131, 134, 138, 137, 139, 141, 141, // 104-111 +140, 137, 136, 133, 129, 125, 126, 119, // 112-119 +119, 121, 117, 119, 119, 118, 118, 120, // 120-127 +117, 116, 118, 116, 114, 113, 116, 129, // 128-135 +129, 123, 142, 143, 144, 147, 148, 154, // 136-143 +151, 140, 142, 139, 125, 118, 112, 112, // 144-151 +111, 105, 112, 122, 119, 126, 135, 140, // 152-159 +145, 140, 144, 146, 137, 133, 127, 120, // 160-167 +114, 104, 105, 103, 93, 95, 95, 99, // 168-175 +106, 124, 141, 136, 156, 168, 166, 168, // 176-183 +160, 162, 154, 133, 125, 121, 107, 98, // 184-191 + 93, 101, 106, 101, 116, 133, 142, 151, // 192-199 +157, 160, 162, 149, 139, 134, 115, 104, // 200-207 + 93, 93, 87, 77, 83, 89, 98, 105, // 208-215 +123, 166, 170, 160, 184, 184, 178, 158, // 216-223 +143, 143, 114, 87, 91, 91, 85, 85, // 224-231 + 98, 125, 131, 134, 155, 168, 166, 162, // 232-239 +162, 157, 139, 123, 115, 108, 99, 89, // 240-247 + 91, 104, 99, 93, 101, 103, 109, 107, // 248-255 +124, 166, 166, 149, 182, 178, 164, 144, // 256-263 +133, 138, 115, 97, 98, 104, 107, 103, // 264-271 +108, 134, 138, 136, 143, 152, 156, 148, // 272-279 +143, 147, 142, 127, 117, 115, 112, 101, // 280-287 + 93, 103, 106, 95, 93, 95, 103, 103, // 288-295 +107, 140, 182, 172, 168, 184, 182, 162, // 296-303 +130, 122, 114, 95, 83, 83, 101, 113, // 304-311 +112, 130, 152, 153, 153, 148, 150, 151, // 312-319 +137, 129, 132, 134, 125, 113, 116, 116, // 320-327 +105, 97, 102, 106, 100, 97, 95, 102, // 328-335 +106, 113, 143, 184, 184, 172, 184, 170, // 336-343 +147, 115, 101, 95, 91, 87, 93, 119, // 344-351 +138, 142, 151, 156, 153, 149, 129, 125, // 352-359 +131, 125, 124, 130, 139, 137, 130, 119, // 360-367 +114, 106, 95, 99, 100, 99, 99, 98, // 368-375 +105, 112, 124, 152, 184, 184, 168, 180, // 376-383 +152, 127, 102, 85, 89, 101, 105, 113, // 384-391 +140, 152, 155, 151, 140, 137, 131, 112, // 392-399 +116, 126, 138, 143, 145, 147, 142, 127, // 400-407 +108, 99, 93, 93, 102, 106, 110, 111, // 408-415 +106, 111, 115, 118, 134, 176, 184, 162, // 416-423 +164, 151, 132, 115, 91, 93, 111, 117, // 424-431 +119, 138, 144, 153, 147, 131, 128, 126, // 432-439 +118, 120, 125, 138, 151, 148, 145, 139, // 440-447 +124, 111, 100, 95, 100, 109, 115, 115, // 448-455 +112, 111, 107, 106, 108, 112, 135, 184, // 456-463 +184, 162, 166, 144, 131, 108, 81, 91, // 464-471 +112, 121, 131, 139, 151, 162, 144, 130, // 472-479 +119, 115, 118, 119, 126, 145, 153, 151, // 480-487 +142, 124, 115, 106, 98, 98, 103, 115, // 488-495 +121, 113, 110, 107, 108, 110, 108, 117, // 496-503 +160, 184, 180, 162, 147, 130, 120, 91, // 504-511 + 83, 98, 127, 141, 144, 146, 153, 149, // 512-519 +139, 114, 105, 113, 121, 134, 144, 150, // 520-527 +154, 147, 125, 112, 101, 101, 106, 105, // 528-535 +112, 123, 120, 113, 105, 101, 107, 107, // 536-543 +111, 134, 184, 184, 172, 162, 129, 121, // 544-551 +108, 87, 87, 111, 135, 148, 153, 146, // 552-559 +146, 144, 127, 111, 107, 112, 135, 144, // 560-567 +143, 145, 143, 136, 122, 105, 101, 108, // 568-575 +112, 112, 114, 114, 112, 110, 102, 102, // 576-583 +107, 112, 126, 174, 184, 180, 168, 137, // 584-591 +118, 112, 95, 87, 106, 125, 143, 157, // 592-599 +147, 144, 143, 131, 120, 112, 111, 125, // 600-607 +140, 144, 144, 140, 134, 129, 115, 106, // 608-615 +105, 107, 111, 115, 112, 110, 108, 104, // 616-623 +107, 108, 110, 121, 166, 184, 184, 170, // 624-631 +139, 118, 118, 103, 93, 99, 116, 138, // 632-639 +158, 149, 143, 138, 131, 127, 119, 112, // 640-647 +118, 133, 143, 146, 140, 132, 129, 121, // 648-655 +114, 109, 104, 106, 112, 115, 112, 109, // 656-663 +103, 105, 110, 112, 118, 143, 184, 184, // 664-671 +180, 155, 121, 116, 111, 105, 105, 108, // 672-679 +116, 143, 149, 149, 144, 132, 130, 132, // 680-687 +125, 122, 122, 125, 136, 140, 136, 131, // 688-695 +123, 120, 118, 112, 105, 103, 106, 110, // 696-703 +111, 105, 104, 106, 111, 123, 151, 184, // 704-711 +184, 180, 156, 130, 119, 110, 105, 104, // 712-719 +107, 113, 134, 142, 149, 147, 139, 134, // 720-727 +133, 129, 127, 123, 121, 128, 132, 135, // 728-735 +135, 128, 122, 118, 112, 109, 105, 105, // 736-743 +105, 107, 106, 106, 105, 107, 118, 151, // 744-751 +184, 184, 184, 157, 134, 123, 112, 111, // 752-759 +108, 102, 105, 116, 129, 144, 148, 143, // 760-767 +141, 138, 138, 139, 132, 124, 119, 118, // 768-775 +123, 128, 127, 124, 118, 114, 112, 112, // 776-783 +111, 108, 106, 101, 101, 103, 106, 122, // 784-791 +153, 174, 184, 184, 160, 147, 131, 121, // 792-799 +119, 112, 105, 102, 101, 110, 123, 132, // 800-807 +142, 143, 143, 146, 148, 145, 142, 129, // 808-815 +119, 113, 112, 116, 118, 115, 112, 110, // 816-823 +112, 116, 119, 121, 116, 115, 114, 114, // 824-831 +121, 136, 143, 149, 151, 143, 139, 134, // 832-839 +131, 134, 133, 130, 126, 121, 119, 123, // 840-847 +124, 129, 129, 126, 125, 126, 128, 130, // 848-855 +129, 128, 126, 126, 129, 130, 130, 129, // 856-863 +125, 124, 124, 125, 128, 128, 129, 129, // 864-871 +129, 129, 129, 125, 123, 120, 118, 116, // 872-879 +115, 114, 114, 115, 117, 121, 126, 131, // 880-887 +136, 140, 143, 143, 143, 142, 140, 136, // 888-895 +132, 129, 125, 123, 122, 122, 123, 124, // 896-903 +125, 126, 128, 129, 129, 129, 129, 128, // 904-911 +126, 125, 125, 125, 125, 125, 125, 125, // 912-919 +124, 124, 123, 121, 119, 119, 119, 120, // 920-927 +121, 123, 124, 127, 129, 131, 133, 134, // 928-935 +134, 134, 133, 132, 131, 130, 130, 130, // 936-943 +129, 129, 129, 129, 130, 130, 130, 130, // 944-951 +129, 128, 127, 126, 125, 125, 124, 124, // 952-959 +123, 124, 124, 124, 125, 125, 126, 126, // 960-967 +126, 127, 126, 126, 126, 125, 125, 125, // 968-975 +124, 124, 123, 123, 123, 123, 124, 125, // 976-983 +126, 128, 129, 130, 131, 131, 132, 132, // 984-991 +132, 132, 131, 130, 130, 129, 129, 128, // 992-999 +128, 128, 128, 128, 128, 126, 126, 126, // 1000-1007 +125, 125, 125, 125, 125, 125, 125, 125, // 1008-1015 +125, 124, 124, 124, 124, 123, 123, 124, // 1016-1023 +124, 124, 125, 125, 125, 126, 128, 129, // 1024-1031 +129, 130, 130, 130, 130, 130, 130, 129, // 1032-1039 +129, 129, 128, 129, 127, 128, 127, 128, // 1040-1047 +127, 128, 127, 128, 128, 127, 126, 126, // 1048-1055 +125, 125, 125, 124, 124, 124, 124, 124, // 1056-1063 +124, 124, 124, 124, 124, 125, 125, 127, // 1064-1071 +127, 128, 128, 128, 128, 129, 129, 129, // 1072-1079 +129, 129, 129, 129, 129, 129, 129, 129, // 1080-1087 +129, 129, 129, 129, 127, 128, 127, 128, // 1088-1095 +127, 128, 127, 126, 126, 125, 125, 125, // 1096-1103 +125, 124, 124, 124, 124, 124, 124, 124, // 1104-1111 +124, 125, 126, 128, 127, 129, 129, 129, // 1112-1119 +129, 129, 129, 130, 130, 130, 130, 129, // 1120-1127 +129, 129, 129, 129, 129, 128, 127, 128, // 1128-1135 +127, 128, 127, 128, 127, 128, 128, 126, // 1136-1143 +126, 125, 125, 125, 125, 124, 124, 124, // 1144-1151 +124, 123, 123, 123, 123, 124, 126, 128, // 1152-1159 +129, 129, 129, 129, 130, 131, 131, 132, // 1160-1167 +131, 130, 130, 129, 129, 129, 128, 128, // 1168-1175 +127, 125, 125, 127, 127, 128, 127, 128, // 1176-1183 +128, 127, 126, 126, 125, 125, 124, 123, // 1184-1191 +121, 121, 121, 121, 119, 118, 117, 120, // 1192-1199 +125, 131, 136, 136, 135, 133, 131, 135, // 1200-1207 +135, 137, 135, 131, 128, 124, 124, 128, // 1208-1215 +127, 129, 126, 123, 124, 125, 129, 131, // 1216-1223 +131, 130, 128, 126, 126, 124, 123, 120, // 1224-1231 +116, 115, 113, 115, 114, 112, 111, 109, // 1232-1239 +116, 130, 141, 156, 153, 152, 144, 138, // 1240-1247 +140, 138, 139, 133, 122, 114, 111, 111, // 1248-1255 +119, 123, 130, 129, 127, 130, 132, 139, // 1256-1263 +140, 139, 134, 127, 122, 121, 120, 119, // 1264-1271 +114, 110, 107, 107, 111, 112, 112, 109, // 1272-1279 +110, 119, 136, 152, 168, 166, 160, 148, // 1280-1287 +140, 140, 137, 138, 129, 116, 107, 101, // 1288-1295 +105, 114, 121, 130, 130, 131, 134, 139, // 1296-1303 +146, 149, 147, 140, 129, 120, 115, 114, // 1304-1311 +112, 108, 105, 102, 103, 107, 109, 112, // 1312-1319 +109, 111, 121, 139, 155, 170, 170, 164, // 1320-1327 +149, 140, 139, 136, 136, 128, 114, 104, // 1328-1335 + 97, 101, 111, 119, 130, 131, 134, 137, // 1336-1343 +142, 149, 154, 152, 144, 134, 122, 115, // 1344-1351 +112, 111, 107, 104, 101, 102, 106, 110, // 1352-1359 +112, 112, 111, 114, 129, 144, 160, 170, // 1360-1367 +164, 156, 143, 138, 138, 136, 134, 123, // 1368-1375 +111, 102, 98, 106, 115, 125, 132, 132, // 1376-1383 +135, 138, 145, 152, 156, 151, 142, 130, // 1384-1391 +119, 113, 112, 109, 106, 103, 102, 104, // 1392-1399 +108, 112, 114, 114, 112, 115, 130, 145, // 1400-1407 +160, 166, 160, 152, 141, 137, 138, 136, // 1408-1415 +134, 122, 110, 104, 101, 110, 117, 125, // 1416-1423 +130, 130, 133, 137, 145, 153, 155, 150, // 1424-1431 +140, 127, 119, 114, 113, 111, 107, 103, // 1432-1439 +102, 106, 110, 114, 115, 114, 112, 116, // 1440-1447 +128, 144, 156, 164, 157, 151, 142, 138, // 1448-1455 +139, 139, 136, 125, 113, 107, 104, 110, // 1456-1463 +116, 123, 128, 126, 130, 135, 143, 151, // 1464-1471 +152, 149, 140, 130, 122, 118, 116, 112, // 1472-1479 +109, 105, 103, 105, 110, 112, 115, 114, // 1480-1487 +113, 114, 123, 139, 150, 160, 158, 151, // 1488-1495 +144, 140, 141, 141, 139, 131, 119, 111, // 1496-1503 +106, 108, 114, 118, 123, 123, 124, 131, // 1504-1511 +138, 147, 151, 150, 143, 135, 126, 121, // 1512-1519 +119, 115, 111, 106, 103, 103, 107, 111, // 1520-1527 +113, 114, 112, 113, 119, 134, 147, 157, // 1528-1535 +160, 154, 148, 143, 142, 143, 140, 135, // 1536-1543 +124, 114, 108, 107, 112, 116, 119, 121, // 1544-1551 +121, 128, 134, 143, 149, 150, 146, 139, // 1552-1559 +131, 125, 121, 119, 114, 109, 105, 103, // 1560-1567 +106, 110, 112, 112, 112, 112, 114, 124, // 1568-1575 +139, 149, 156, 155, 150, 146, 143, 144, // 1576-1583 +143, 140, 133, 120, 112, 110, 111, 114, // 1584-1591 +116, 118, 119, 121, 127, 135, 143, 148, // 1592-1599 +147, 143, 137, 132, 128, 123, 119, 112, // 1600-1607 +108, 106, 106, 108, 111, 112, 112, 112, // 1608-1615 +112, 115, 124, 137, 146, 152, 152, 148, // 1616-1623 +146, 144, 146, 144, 142, 134, 123, 116, // 1624-1631 +112, 112, 114, 115, 115, 116, 119, 125, // 1632-1639 +134, 140, 144, 145, 143, 140, 136, 133, // 1640-1647 +127, 121, 115, 110, 107, 107, 109, 111, // 1648-1655 +111, 111, 111, 112, 114, 120, 131, 141, // 1656-1663 +147, 149, 148, 148, 146, 147, 147, 144, // 1664-1671 +139, 130, 122, 117, 114, 114, 114, 114, // 1672-1679 +115, 116, 120, 128, 134, 140, 143, 143, // 1680-1687 +143, 140, 136, 133, 126, 120, 114, 111, // 1688-1695 +110, 110, 110, 110, 110, 110, 111, 112, // 1696-1703 +115, 123, 133, 140, 146, 148, 148, 148, // 1704-1711 +147, 148, 146, 143, 138, 130, 123, 118, // 1712-1719 +115, 114, 113, 113, 113, 115, 120, 125, // 1720-1727 +133, 138, 142, 143, 143, 142, 139, 134, // 1728-1735 +129, 121, 116, 112, 112, 111, 111, 110, // 1736-1743 +110, 110, 111, 112, 114, 119, 127, 135, // 1744-1751 +142, 145, 146, 147, 147, 148, 148, 145, // 1752-1759 +143, 136, 129, 124, 119, 116, 115, 112, // 1760-1767 +112, 112, 114, 119, 125, 133, 138, 141, // 1768-1775 +143, 143, 142, 139, 135, 129, 122, 118, // 1776-1783 +115, 112, 112, 111, 109, 108, 109, 111, // 1784-1791 +112, 114, 119, 127, 134, 140, 143, 144, // 1792-1799 +147, 147, 148, 148, 146, 143, 138, 131, // 1800-1807 +126, 121, 118, 114, 112, 111, 111, 112, // 1808-1815 +117, 122, 129, 134, 139, 142, 143, 143, // 1816-1823 +141, 137, 132, 128, 123, 119, 116, 114, // 1824-1831 +112, 110, 108, 109, 110, 111, 112, 114, // 1832-1839 +120, 127, 134, 139, 141, 143, 144, 147, // 1840-1847 +149, 149, 146, 143, 138, 134, 129, 124, // 1848-1855 +119, 114, 111, 110, 111, 112, 116, 120, // 1856-1863 +124, 129, 134, 138, 140, 142, 140, 137, // 1864-1871 +134, 131, 129, 125, 121, 117, 114, 112, // 1872-1879 +111, 111, 110, 110, 110, 114, 119, 124, // 1880-1887 +130, 134, 136, 140, 145, 147, 149, 148, // 1888-1895 +147, 144, 142, 139, 134, 128, 121, 116, // 1896-1903 +114, 112, 112, 112, 114, 116, 120, 125, // 1904-1911 +130, 133, 135, 136, 137, 137, 135, 134, // 1912-1919 +131, 129, 125, 122, 119, 116, 114, 112, // 1920-1927 +112, 112, 112, 116, 119, 121, 124, 129, // 1928-1935 +133, 136, 140, 142, 143, 144, 144, 143, // 1936-1943 +142, 138, 134, 130, 126, 123, 120, 118, // 1944-1951 +117, 117, 118, 119, 120, 121, 124, 126, // 1952-1959 +129, 130, 131, 132, 133, 133, 133, 131, // 1960-1967 +131, 130, 129, 126, 124, 122, 120, 119, // 1968-1975 +118, 117, 117, 118, 118, 119, 120, 122, // 1976-1983 +124, 128, 130, 133, 134, 136, 137, 138, // 1984-1991 +137, 136, 135, 134, 133, 132, 131, 130, // 1992-1999 +129, 128, 125, 125, 124, 124, 124, 124, // 2000-2007 +124, 124, 125, 126, 129, 127, 128, 130, // 2008-2015 +129, 130, 129, 129, 128, 126, 125, 123, // 2016-2023 +121, 119, 119, 118, 118, 118, 118, 119, // 2024-2031 +120, 123, 125, 128, 130, 133, 135, 136, // 2032-2039 +137, 138, 138, 137, 136, 135, 133, 132, // 2040-2047 +130, 129, 128, 125, 125, 124, 124, 124, // 2048-2055 +124, 124, 125, 125, 126, 128, 127, 128, // 2056-2063 +129, 129, 129, 129, 129, 128, 128, 125, // 2064-2071 +125, 124, 122, 121, 120, 119, 117, 118, // 2072-2079 +118, 117, 118, 120, 122, 124, 128, 130, // 2080-2087 +134, 136, 138, 140, 140, 140, 139, 138, // 2088-2095 +137, 135, 132, 130, 128, 125, 123, 122, // 2096-2103 +122, 121, 120, 121, 122, 122, 124, 125, // 2104-2111 +128, 129, 130, 131, 131, 131, 131, 131, // 2112-2119 +129, 128, 125, 123, 120, 118, 116, 114, // 2120-2127 +113, 112, 112, 113, 116, 115, 119, 125, // 2128-2135 +124, 131, 136, 138, 142, 143, 144, 146, // 2136-2143 +144, 143, 143, 138, 136, 133, 127, 125, // 2144-2151 +123, 120, 119, 117, 117, 118, 117, 120, // 2152-2159 +121, 121, 126, 126, 130, 133, 132, 135, // 2160-2167 +135, 134, 135, 131, 130, 128, 122, 120, // 2168-2175 +116, 112, 112, 110, 108, 109, 110, 113, // 2176-2183 +114, 118, 126, 124, 134, 140, 139, 146, // 2184-2191 +149, 147, 151, 150, 148, 146, 142, 138, // 2192-2199 +133, 129, 125, 119, 118, 116, 112, 114, // 2200-2207 +113, 113, 117, 117, 121, 124, 126, 132, // 2208-2215 +132, 136, 137, 136, 139, 135, 135, 133, // 2216-2223 +128, 125, 120, 115, 114, 110, 107, 107, // 2224-2231 +106, 107, 112, 112, 115, 125, 125, 133, // 2232-2239 +142, 140, 148, 151, 150, 153, 152, 149, // 2240-2247 +148, 143, 140, 135, 130, 124, 119, 117, // 2248-2255 +112, 112, 112, 110, 112, 113, 115, 120, // 2256-2263 +121, 126, 131, 132, 137, 137, 139, 140, // 2264-2271 +137, 138, 134, 130, 128, 121, 116, 114, // 2272-2279 +110, 107, 106, 105, 106, 108, 112, 114, // 2280-2287 +119, 129, 128, 139, 143, 143, 153, 152, // 2288-2295 +153, 156, 153, 149, 148, 143, 138, 133, // 2296-2303 +128, 120, 116, 114, 110, 110, 110, 108, // 2304-2311 +112, 112, 114, 121, 123, 127, 133, 134, // 2312-2319 +137, 141, 140, 141, 140, 138, 135, 131, // 2320-2327 +125, 121, 116, 112, 110, 107, 105, 105, // 2328-2335 +106, 106, 111, 114, 118, 122, 133, 133, // 2336-2343 +142, 148, 145, 156, 156, 155, 156, 153, // 2344-2351 +149, 145, 140, 134, 128, 122, 115, 112, // 2352-2359 +110, 106, 107, 107, 108, 111, 113, 117, // 2360-2367 +121, 128, 130, 135, 139, 139, 143, 143, // 2368-2375 +140, 142, 138, 134, 131, 124, 120, 116, // 2376-2383 +111, 109, 106, 104, 105, 105, 107, 110, // 2384-2391 +113, 118, 124, 126, 137, 141, 142, 154, // 2392-2399 +148, 155, 158, 153, 155, 151, 146, 142, // 2400-2407 +135, 129, 121, 116, 112, 107, 107, 104, // 2408-2415 +105, 108, 108, 112, 117, 119, 126, 131, // 2416-2423 +135, 139, 142, 144, 142, 147, 142, 139, // 2424-2431 +141, 130, 130, 124, 116, 115, 111, 106, // 2432-2439 +106, 104, 105, 106, 109, 111, 114, 119, // 2440-2447 +122, 131, 135, 136, 148, 143, 151, 155, // 2448-2455 +148, 158, 151, 150, 147, 143, 136, 131, // 2456-2463 +124, 118, 112, 111, 106, 105, 106, 105, // 2464-2471 +110, 112, 115, 121, 125, 130, 135, 139, // 2472-2479 +143, 144, 146, 145, 143, 143, 139, 136, // 2480-2487 +133, 125, 122, 118, 112, 111, 108, 106, // 2488-2495 +106, 107, 108, 111, 113, 116, 119, 123, // 2496-2503 +128, 132, 138, 136, 144, 146, 141, 155, // 2504-2511 +144, 147, 151, 143, 143, 141, 133, 129, // 2512-2519 +124, 118, 113, 111, 109, 106, 109, 110, // 2520-2527 +112, 116, 119, 123, 130, 133, 136, 140, // 2528-2535 +142, 143, 144, 144, 141, 141, 138, 133, // 2536-2543 +131, 125, 120, 118, 113, 112, 110, 108, // 2544-2551 +108, 110, 112, 112, 115, 118, 120, 123, // 2552-2559 +125, 128, 133, 136, 134, 142, 143, 138, // 2560-2567 +150, 143, 143, 148, 142, 141, 140, 133, // 2568-2575 +129, 124, 118, 115, 112, 112, 109, 112, // 2576-2583 +112, 114, 119, 123, 125, 131, 135, 137, // 2584-2591 +140, 142, 143, 142, 143, 140, 136, 136, // 2592-2599 +129, 126, 124, 118, 116, 114, 111, 112, // 2600-2607 +111, 111, 112, 113, 115, 117, 119, 121, // 2608-2615 +122, 124, 125, 129, 133, 134, 133, 143, // 2616-2623 +138, 140, 149, 140, 145, 147, 140, 140, // 2624-2631 +138, 130, 127, 121, 117, 113, 112, 111, // 2632-2639 +110, 112, 115, 116, 122, 126, 130, 135, // 2640-2647 +138, 139, 143, 143, 142, 142, 139, 135, // 2648-2655 +134, 129, 124, 122, 118, 115, 114, 112, // 2656-2663 +112, 112, 112, 113, 115, 117, 118, 120, // 2664-2671 +121, 121, 124, 124, 125, 130, 133, 131, // 2672-2679 +136, 143, 135, 146, 146, 140, 148, 144, // 2680-2687 +139, 140, 134, 127, 124, 118, 115, 111, // 2688-2695 +111, 111, 111, 114, 118, 119, 125, 131, // 2696-2703 +133, 138, 141, 142, 143, 143, 141, 138, // 2704-2711 +136, 132, 126, 125, 120, 117, 116, 114, // 2712-2719 +112, 114, 113, 114, 116, 117, 119, 120, // 2720-2727 +121, 123, 122, 123, 124, 121, 125, 126, // 2728-2735 +130, 131, 133, 143, 136, 143, 148, 142, // 2736-2743 +146, 147, 140, 139, 136, 128, 123, 118, // 2744-2751 +114, 111, 110, 111, 111, 112, 119, 121, // 2752-2759 +125, 133, 136, 139, 143, 143, 143, 142, // 2760-2767 +140, 135, 134, 130, 124, 122, 119, 116, // 2768-2775 +115, 115, 115, 115, 117, 118, 119, 121, // 2776-2783 +123, 123, 124, 124, 123, 122, 121, 119, // 2784-2791 +120, 121, 124, 130, 129, 136, 142, 137, // 2792-2799 +147, 147, 144, 147, 146, 140, 138, 132, // 2800-2807 +124, 119, 114, 112, 109, 108, 111, 112, // 2808-2815 +115, 122, 125, 131, 136, 140, 142, 143, // 2816-2823 +143, 142, 140, 136, 133, 129, 124, 120, // 2824-2831 +119, 116, 115, 116, 116, 118, 119, 120, // 2832-2839 +122, 123, 124, 125, 124, 124, 121, 120, // 2840-2847 +119, 116, 116, 117, 119, 125, 128, 130, // 2848-2855 +142, 142, 142, 151, 148, 147, 149, 144, // 2856-2863 +139, 135, 128, 121, 114, 111, 110, 107, // 2864-2871 +107, 112, 114, 118, 126, 131, 135, 141, // 2872-2879 +143, 143, 143, 143, 140, 137, 132, 128, // 2880-2887 +124, 119, 118, 116, 115, 116, 118, 118, // 2888-2895 +120, 122, 124, 125, 125, 125, 125, 123, // 2896-2903 +122, 120, 117, 116, 114, 114, 115, 118, // 2904-2911 +125, 129, 131, 143, 143, 143, 153, 151, // 2912-2919 +148, 148, 144, 138, 132, 124, 119, 112, // 2920-2927 +108, 108, 107, 106, 112, 116, 120, 127, // 2928-2935 +135, 139, 142, 144, 145, 144, 142, 139, // 2936-2943 +135, 129, 124, 121, 116, 115, 116, 115, // 2944-2951 +116, 119, 121, 123, 124, 125, 128, 126, // 2952-2959 +126, 125, 123, 120, 118, 116, 114, 112, // 2960-2967 +113, 115, 118, 125, 131, 133, 143, 147, // 2968-2975 +146, 152, 152, 149, 147, 143, 137, 131, // 2976-2983 +121, 116, 112, 107, 106, 108, 108, 112, // 2984-2991 +119, 124, 130, 136, 141, 143, 145, 144, // 2992-2999 +143, 141, 136, 133, 126, 121, 119, 116, // 3000-3007 +114, 115, 116, 118, 120, 123, 125, 127, // 3008-3015 +127, 129, 129, 127, 125, 122, 120, 117, // 3016-3023 +115, 114, 112, 112, 115, 119, 125, 133, // 3024-3031 +135, 143, 149, 148, 151, 154, 149, 144, // 3032-3039 +142, 135, 129, 119, 114, 112, 107, 105, // 3040-3047 +108, 111, 113, 120, 126, 133, 138, 142, // 3048-3055 +144, 146, 143, 143, 140, 134, 129, 125, // 3056-3063 +120, 117, 115, 114, 116, 117, 119, 123, // 3064-3071 +125, 127, 130, 130, 130, 129, 126, 124, // 3072-3079 +122, 118, 116, 114, 113, 112, 112, 115, // 3080-3087 +118, 125, 133, 136, 142, 149, 148, 150, // 3088-3095 +152, 149, 144, 141, 135, 129, 121, 114, // 3096-3103 +112, 110, 106, 108, 112, 115, 120, 126, // 3104-3111 +133, 138, 142, 143, 145, 143, 141, 138, // 3112-3119 +134, 128, 123, 120, 117, 116, 115, 116, // 3120-3127 +119, 121, 124, 128, 130, 130, 131, 130, // 3128-3135 +129, 126, 123, 121, 119, 115, 113, 112, // 3136-3143 +112, 112, 114, 116, 121, 130, 136, 139, // 3144-3151 +143, 150, 148, 149, 149, 147, 143, 136, // 3152-3159 +131, 125, 119, 112, 111, 111, 109, 111, // 3160-3167 +114, 119, 124, 129, 135, 140, 142, 142, // 3168-3175 +143, 142, 138, 133, 130, 124, 120, 117, // 3176-3183 +116, 117, 117, 119, 123, 125, 128, 130, // 3184-3191 +132, 133, 131, 130, 128, 125, 121, 118, // 3192-3199 +116, 114, 112, 112, 112, 113, 115, 116, // 3200-3207 +121, 128, 134, 139, 142, 145, 149, 147, // 3208-3215 +146, 145, 143, 138, 133, 128, 123, 118, // 3216-3223 +112, 112, 112, 112, 114, 118, 123, 127, // 3224-3231 +132, 136, 140, 142, 140, 139, 138, 134, // 3232-3239 +129, 124, 121, 119, 116, 117, 119, 121, // 3240-3247 +123, 128, 130, 133, 134, 134, 134, 131, // 3248-3255 +129, 125, 122, 119, 116, 114, 113, 112, // 3256-3263 +112, 113, 115, 116, 119, 123, 128, 133, // 3264-3271 +140, 142, 143, 147, 147, 144, 143, 142, // 3272-3279 +138, 134, 127, 123, 121, 116, 112, 114, // 3280-3287 +115, 115, 118, 123, 129, 132, 134, 137, // 3288-3295 +140, 139, 137, 135, 133, 129, 124, 120, // 3296-3303 +119, 118, 117, 119, 123, 125, 129, 132, // 3304-3311 +134, 135, 135, 134, 133, 130, 125, 121, // 3312-3319 +119, 116, 114, 113, 113, 114, 114, 115, // 3320-3327 +118, 120, 121, 124, 127, 133, 138, 140, // 3328-3335 +140, 143, 144, 143, 141, 140, 138, 134, // 3336-3343 +130, 125, 124, 120, 116, 116, 118, 118, // 3344-3351 +119, 122, 126, 130, 133, 134, 137, 137, // 3352-3359 +135, 133, 131, 127, 124, 120, 119, 119, // 3360-3367 +119, 120, 123, 127, 130, 133, 135, 136, // 3368-3375 +136, 134, 132, 130, 127, 122, 119, 118, // 3376-3383 +116, 114, 114, 115, 116, 116, 118, 120, // 3384-3391 +122, 124, 124, 128, 130, 134, 138, 137, // 3392-3399 +139, 143, 141, 140, 139, 139, 136, 134, // 3400-3407 +129, 128, 124, 120, 118, 118, 119, 119, // 3408-3415 +120, 123, 127, 130, 131, 133, 135, 134, // 3416-3423 +132, 130, 129, 125, 123, 121, 121, 121, // 3424-3431 +121, 123, 125, 129, 132, 134, 134, 135, // 3432-3439 +135, 133, 130, 127, 123, 121, 119, 116, // 3440-3447 +116, 116, 115, 116, 118, 119, 120, 121, // 3448-3455 +123, 124, 124, 125, 128, 129, 134, 135, // 3456-3463 +134, 139, 141, 140, 139, 140, 139, 136, // 3464-3471 +133, 129, 127, 123, 119, 117, 118, 118, // 3472-3479 +118, 120, 123, 128, 129, 130, 133, 134, // 3480-3487 +133, 131, 130, 127, 125, 123, 122, 123, // 3488-3495 +123, 124, 125, 128, 131, 133, 134, 134, // 3496-3503 +134, 133, 130, 127, 125, 123, 120, 119, // 3504-3511 +118, 118, 117, 118, 118, 119, 120, 121, // 3512-3519 +121, 123, 123, 123, 124, 125, 130, 134, // 3520-3527 +135, 136, 140, 142, 141, 141, 141, 139, // 3528-3535 +136, 132, 128, 125, 121, 118, 116, 116, // 3536-3543 +117, 118, 120, 124, 128, 130, 132, 134, // 3544-3551 +134, 134, 132, 130, 128, 125, 123, 123, // 3552-3559 +123, 123, 124, 125, 129, 131, 132, 133, // 3560-3567 +135, 134, 132, 130, 129, 125, 123, 120, // 3568-3575 +120, 119, 118, 118, 119, 120, 120, 121, // 3576-3583 +121, 122, 123, 122, 122, 122, 123, 125, // 3584-3591 +130, 134, 135, 138, 142, 142, 142, 142, // 3592-3599 +140, 138, 135, 130, 126, 123, 119, 116, // 3600-3607 +115, 116, 117, 119, 121, 125, 129, 131, // 3608-3615 +133, 134, 134, 133, 131, 129, 127, 125, // 3616-3623 +124, 123, 123, 124, 125, 128, 129, 131, // 3624-3631 +133, 133, 133, 133, 131, 129, 126, 124, // 3632-3639 +122, 121, 119, 119, 119, 119, 120, 120, // 3640-3647 +121, 122, 122, 122, 123, 123, 121, 121, // 3648-3655 +122, 124, 129, 133, 135, 137, 141, 143, // 3656-3663 +143, 142, 141, 139, 136, 132, 128, 123, // 3664-3671 +120, 117, 115, 115, 116, 118, 120, 123, // 3672-3679 +128, 131, 132, 133, 134, 134, 133, 130, // 3680-3687 +129, 127, 125, 124, 124, 124, 125, 128, // 3688-3695 +129, 130, 131, 132, 132, 131, 130, 129, // 3696-3703 +126, 124, 122, 121, 120, 120, 119, 120, // 3704-3711 +120, 121, 122, 123, 123, 123, 123, 123, // 3712-3719 +122, 122, 122, 123, 126, 130, 134, 135, // 3720-3727 +138, 142, 142, 142, 141, 139, 137, 134, // 3728-3735 +129, 124, 121, 119, 116, 115, 115, 118, // 3736-3743 +120, 122, 125, 129, 131, 133, 134, 133, // 3744-3751 +133, 131, 130, 127, 126, 125, 124, 124, // 3752-3759 +125, 126, 127, 129, 130, 131, 131, 131, // 3760-3767 +130, 129, 126, 124, 123, 121, 120, 120, // 3768-3775 +120, 120, 120, 121, 123, 123, 123, 124, // 3776-3783 +124, 124, 123, 123, 122, 123, 124, 128, // 3784-3791 +132, 135, 136, 139, 141, 142, 141, 139, // 3792-3799 +138, 135, 132, 128, 123, 120, 118, 116, // 3800-3807 +116, 116, 119, 121, 123, 126, 130, 131, // 3808-3815 +133, 133, 133, 132, 131, 130, 128, 125, // 3816-3823 +125, 125, 125, 125, 126, 127, 129, 130, // 3824-3831 +131, 130, 130, 129, 128, 125, 124, 123, // 3832-3839 +121, 121, 121, 121, 121, 121, 122, 123, // 3840-3847 +124, 124, 124, 124, 124, 124, 123, 122, // 3848-3855 +123, 125, 130, 133, 134, 136, 139, 141, // 3856-3863 +141, 140, 138, 136, 134, 130, 125, 122, // 3864-3871 +120, 118, 117, 116, 117, 120, 122, 125, // 3872-3879 +128, 130, 132, 134, 134, 133, 132, 131, // 3880-3887 +130, 127, 125, 125, 125, 125, 125, 128, // 3888-3895 +127, 129, 130, 130, 130, 129, 127, 126, // 3896-3903 +125, 123, 122, 121, 121, 121, 121, 121, // 3904-3911 +122, 123, 124, 124, 124, 124, 124, 124, // 3912-3919 +124, 123, 123, 124, 126, 130, 133, 135, // 3920-3927 +136, 139, 140, 140, 139, 137, 135, 133, // 3928-3935 +130, 125, 121, 119, 118, 118, 118, 119, // 3936-3943 +120, 123, 125, 129, 130, 132, 133, 133, // 3944-3951 +133, 131, 130, 129, 128, 126, 125, 125, // 3952-3959 +125, 126, 128, 127, 129, 129, 129, 129, // 3960-3967 +127, 126, 125, 124, 123, 122, 121, 121, // 3968-3975 +121, 122, 122, 123, 123, 124, 124, 124, // 3976-3983 +124, 124, 124, 124, 123, 123, 124, 127, // 3984-3991 +131, 133, 135, 136, 138, 139, 139, 138, // 3992-3999 +136, 134, 131, 129, 124, 121, 119, 118, // 4000-4007 +118, 119, 120, 121, 123, 126, 129, 131, // 4008-4015 +131, 132, 132, 132, 131, 129, 128, 126, // 4016-4023 +125, 125, 125, 125, 127, 127, 129, 129, // 4024-4031 +129, 129, 129, 127, 126, 125, 124, 123, // 4032-4039 +122, 122, 122, 122, 122, 123, 123, 124, // 4040-4047 +125, 125, 124, 124, 124, 124, 124, 124, // 4048-4055 +124, 126, 130, 133, 134, 135, 136, 138, // 4056-4063 +138, 138, 136, 134, 131, 129, 126, 124, // 4064-4071 +121, 119, 119, 119, 120, 121, 123, 125, // 4072-4079 +128, 130, 131, 131, 131, 131, 130, 130, // 4080-4087 +129, 127, 125, 125, 125, 126, 127, 128, // 4088-4095 +128, 129, 129, 129, 129, 128, 126, 125, // 4096-4103 +124, 123, 123, 122, 122, 122, 123, 123, // 4104-4111 +124, 124, 124, 125, 125, 124, 124, 124, // 4112-4119 +124, 124, 124, 125, 129, 131, 134, 135, // 4120-4127 +136, 136, 137, 137, 136, 134, 132, 130, // 4128-4135 +128, 125, 123, 121, 120, 120, 121, 122, // 4136-4143 +124, 125, 127, 129, 130, 131, 131, 130, // 4144-4151 +130, 129, 128, 127, 126, 126, 125, 126, // 4152-4159 +127, 128, 129, 129, 129, 129, 128, 127, // 4160-4167 +125, 125, 124, 123, 123, 122, 122, 122, // 4168-4175 +122, 123, 123, 124, 124, 124, 124, 125, // 4176-4183 +125, 125, 125, 125, 126, 129, 131, 133, // 4184-4191 +134, 135, 136, 136, 136, 135, 134, 133, // 4192-4199 +130, 128, 125, 124, 123, 121, 121, 121, // 4200-4207 +122, 124, 125, 126, 127, 129, 130, 130, // 4208-4215 +130, 130, 129, 127, 128, 126, 126, 126, // 4216-4223 +126, 126, 127, 128, 129, 129, 127, 128, // 4224-4231 +127, 125, 125, 124, 123, 123, 122, 122, // 4232-4239 +122, 123, 123, 124, 124, 124, 125, 125, // 4240-4247 +125, 125, 125, 126, 127, 128, 129, 130, // 4248-4255 +132, 133, 134, 135, 135, 135, 135, 134, // 4256-4263 +133, 131, 129, 128, 125, 124, 123, 123, // 4264-4271 +122, 123, 123, 124, 125, 126, 128, 127, // 4272-4279 +128, 127, 128, 127, 126, 125, 125, 125, // 4280-4287 +125, 125, 125, 125, 126, 126, 126, 126, // 4288-4295 +125, 125, 124, 124, 123, 123, 123, 122, // 4296-4303 +122, 123, 123, 124, 125, 126, 127, 129, // 4304-4311 +130, 131, 133, 134, 134, 135, 135, 134, // 4312-4319 +134, 133, 132, 131, 130, 129, 128, 126, // 4320-4327 +125, 124, 124, 124, 124, 125, 125, 126, // 4328-4335 +127, 128, 127, 128, 127, 128, 126, 125, // 4336-4343 +125, 125, 124, 124, 124, 124, 125, 125, // 4344-4351 +125, 125, 125, 125, 125, 125, 125, 125, // 4352-4359 +125, 125, 125, 125, 124, 124, 125, 125, // 4360-4367 +125, 126, 127, 128, 127, 129, 128, 130, // 4368-4375 +130, 130, 130, 130, 130, 130, 130, 130, // 4376-4383 +130, 130, 130, 130, 130, 130, 130, 129, // 4384-4391 +129, 129, 129, 127, 128, 127, 126, 125, // 4392-4399 +125, 125, 124, 124, 124, 124, 124, 124, // 4400-4407 +124, 125, 125, 125, 125, 125, 126, 126, // 4408-4415 +126, 127, 128, 128, 127, 128, 127, 128, // 4416-4423 +127, 128, 128, 126, 126, 126, 126, 126, // 4424-4431 +126, 126, 127, 128, 127, 128, 128, 129, // 4432-4439 +129, 129, 129, 129, 129, 129, 129, 129, // 4440-4447 +129, 129, 128, 129, 129, 128, 129, 128, // 4448-4455 +128, 127, 128, 127, 128, 127, 128, 126, // 4456-4463 +126, 126, 126, 126, 126, 126, 126, 126, // 4464-4471 +127, 128, 127, 128, 128, 127, 128, 127, // 4472-4479 +128, 127, 126, 126, 126, 126, 126, 126, // 4480-4487 +126, 126, 126, 126, 126, 127, 126, 126, // 4488-4495 +126, 126, 126, 126, 126, 126, 126, 126, // 4496-4503 +126, 126, 126, 127, 128, 127, 128, 127, // 4504-4511 +128, 128, 127, 128, 127, 128, 127, 128, // 4512-4519 +128, 127, 128, 127, 128, 127, 128, 127, // 4520-4527 +128, 127, 128, 127, 128, 128, 127, 128, // 4528-4535 +128, 127, 128, 127, 128, 127, 128, 127, // 4536-4543 +128, 128, 127, 128, 127, 128, 127, 128, // 4544-4551 +128, 128, 128, 127, 128, 127, 128, 126, // 4552-4559 +126, 126, 126, 126, 126, 126, 126, 126, // 4560-4567 +126, 126, 128, 128, 127, 128, 127, 128, // 4568-4575 +127, 128, 127, 128, 127, 128, 128, 128, // 4576-4583 +127, 128, 127, 128, 127, 126, 126, 126, // 4584-4591 +127, 128, 127, 126, 126, 126, 127, 128, // 4592-4599 +127, 128, 128, 126, 126, 127, 128, 127, // 4600-4607 +128, 128, 127, 128, 127, 128, 128, 127, // 4608-4615 +128, 127, 128, 127, 128, 128, 127, 128, // 4616-4623 +126, 128, 128, 128, 127, 128, 128, 128, // 4624-4631 +128, 128, 127, 128, 128, 127, 128, 127, // 4632-4639 +128, 127, 128, 127, 128, 127, 128, 128, // 4640-4647 +127, 128, 128, 127, 128, 128, 127, 128, // 4648-4655 +127, 128, 127, 128, 127, 128, 128, 127, // 4656-4663 +128, 127, 128, 128, 126, 127, 128, 127, // 4664-4671 +128, 127, 128, 128, 127, 128, 127, 128, // 4672-4679 +127, 128, 127, 128, 127, 128, 127, 128, // 4680-4687 +127, 128, 127, 128, 127, 128, 128, 127, // 4688-4695 +128, 127, 128, 128, 128, 128, 127, 128, // 4696-4703 +127, 128, 127, 128, 127, 128, 127, 128, // 4704-4711 +127, 128, 127, 128, 127, 128, 128, 127, // 4712-4719 +126, 127, 128, 128, 127, 128, 126, 126, // 4720-4727 +128, 127, 128, 127, 128, 128, 127, 128, // 4728-4735 +127, 128, 127, 128, 127, 128, 127, 128, // 4736-4743 +127, 128, 127, 128, 127, 128, 128, 127, // 4744-4751 +128, 127, 128, 127, 128, 127, 128, 127, // 4752-4759 +127, 126, 128, 127, 128, 127, 128, 126, // 4760-4767 +128, 127, 127, 128, 127, 128, 127, 128, // 4768-4775 +127, 128, 127, 126, 126}; + +const char X[3718] = {127, 128, 127, 128, 127, 128, 128, 128, // 0-7 +127, 128, 128, 127, 128, 127, 128, 127, // 8-15 +128, 128, 127, 128, 127, 128, 127, 129, // 16-23 +129, 130, 132, 140, 160, 143, 108, 135, // 24-31 +119, 95, 117, 129, 134, 121, 126, 125, // 32-39 + 98, 93, 105, 89, 103, 118, 122, 148, // 40-47 +182, 184, 143, 147, 137, 99, 97, 113, // 48-55 +131, 134, 148, 162, 155, 131, 117, 112, // 56-63 +101, 99, 116, 135, 144, 149, 153, 148, // 64-71 +133, 122, 115, 114, 120, 126, 138, 141, // 72-79 +136, 133, 120, 110, 99, 93, 95, 99, // 80-87 +100, 112, 124, 133, 146, 172, 172, 130, // 88-95 +139, 136, 103, 111, 123, 138, 138, 143, // 96-103 +152, 146, 121, 118, 117, 109, 112, 125, // 104-111 +137, 142, 146, 147, 143, 124, 119, 120, // 112-119 +119, 125, 131, 134, 135, 128, 124, 114, // 120-127 +101, 101, 103, 101, 100, 106, 116, 129, // 128-135 +143, 172, 182, 134, 136, 139, 97, 104, // 136-143 +116, 135, 140, 143, 156, 149, 120, 115, // 144-151 +114, 107, 112, 123, 141, 147, 148, 149, // 152-159 +143, 125, 121, 123, 121, 121, 130, 133, // 160-167 +130, 125, 121, 111, 99, 101, 102, 99, // 168-175 + 98, 105, 119, 129, 148, 184, 182, 134, // 176-183 +142, 133, 91, 103, 116, 138, 142, 148, // 184-191 +160, 147, 118, 112, 108, 103, 108, 123, // 192-199 +143, 148, 149, 149, 143, 125, 119, 128, // 200-207 +120, 120, 131, 131, 127, 120, 118, 108, // 208-215 +103, 105, 102, 101, 97, 105, 119, 131, // 216-223 +155, 184, 178, 130, 147, 120, 89, 103, // 224-231 +118, 142, 142, 152, 162, 144, 114, 112, // 232-239 +107, 101, 110, 130, 146, 149, 150, 148, // 240-247 +137, 124, 121, 126, 125, 121, 131, 130, // 248-255 +119, 117, 112, 110, 110, 105, 108, 98, // 256-263 + 93, 106, 118, 140, 166, 184, 166, 133, // 264-271 +148, 103, 89, 105, 123, 143, 146, 157, // 272-279 +160, 135, 112, 112, 101, 101, 115, 136, // 280-287 +148, 152, 149, 143, 127, 118, 129, 133, // 288-295 +120, 132, 135, 117, 118, 112, 112, 111, // 296-303 +111, 112, 110, 95, 93, 100, 114, 131, // 304-311 +166, 184, 172, 141, 148, 110, 87, 100, // 312-319 +118, 142, 144, 158, 164, 140, 115, 111, // 320-327 +100, 98, 112, 132, 148, 152, 152, 146, // 328-335 +130, 120, 124, 125, 123, 131, 135, 124, // 336-343 +122, 117, 111, 112, 112, 110, 111, 98, // 344-351 + 89, 101, 112, 125, 152, 184, 184, 138, // 352-359 +146, 129, 87, 97, 116, 142, 143, 152, // 360-367 +166, 146, 115, 110, 104, 100, 110, 127, // 368-375 +148, 152, 150, 146, 134, 124, 129, 123, // 376-383 +120, 130, 129, 123, 122, 118, 112, 113, // 384-391 +114, 109, 106, 99, 93, 95, 109, 130, // 392-399 +153, 184, 184, 140, 147, 123, 83, 98, // 400-407 +114, 142, 147, 156, 168, 145, 114, 108, // 408-415 + 99, 98, 111, 130, 149, 156, 153, 145, // 416-423 +133, 122, 124, 120, 122, 130, 130, 126, // 424-431 +121, 116, 111, 108, 112, 108, 105, 99, // 432-439 + 93, 97, 114, 134, 160, 184, 182, 142, // 440-447 +143, 115, 87, 101, 117, 143, 148, 157, // 448-455 +164, 140, 114, 107, 99, 101, 114, 133, // 456-463 +151, 153, 149, 143, 132, 123, 124, 120, // 464-471 +125, 127, 128, 127, 120, 115, 111, 112, // 472-479 +112, 106, 107, 100, 93, 98, 115, 133, // 480-487 +154, 184, 184, 141, 142, 122, 89, 101, // 488-495 +116, 142, 147, 155, 162, 143, 115, 108, // 496-503 +101, 102, 113, 130, 148, 153, 148, 143, // 504-511 +133, 121, 130, 124, 119, 133, 126, 121, // 512-519 +121, 116, 114, 111, 114, 111, 106, 98, // 520-527 + 91, 97, 111, 128, 152, 184, 184, 145, // 528-535 +139, 130, 91, 95, 114, 140, 148, 152, // 536-543 +164, 147, 117, 108, 102, 101, 111, 128, // 544-551 +147, 152, 149, 143, 131, 118, 121, 131, // 552-559 +129, 125, 136, 129, 115, 118, 114, 111, // 560-567 +112, 114, 112, 106, 93, 93, 98, 113, // 568-575 +131, 162, 184, 180, 139, 145, 116, 85, // 576-583 +101, 121, 143, 146, 160, 166, 139, 112, // 584-591 +108, 99, 100, 112, 134, 149, 151, 151, // 592-599 +143, 127, 118, 124, 125, 122, 130, 139, // 600-607 +128, 123, 123, 115, 108, 111, 112, 105, // 608-615 +102, 93, 98, 105, 119, 138, 166, 184, // 616-623 +164, 136, 146, 107, 93, 110, 128, 146, // 624-631 +146, 158, 157, 130, 112, 108, 101, 107, // 632-639 +118, 139, 150, 151, 148, 138, 126, 125, // 640-647 +121, 119, 135, 130, 133, 131, 123, 123, // 648-655 +112, 110, 112, 106, 105, 103, 95, 101, // 656-663 +107, 123, 143, 170, 184, 156, 135, 143, // 664-671 +103, 95, 113, 132, 146, 148, 157, 153, // 672-679 +124, 109, 109, 101, 108, 122, 142, 150, // 680-687 +149, 147, 136, 121, 123, 124, 121, 130, // 688-695 +135, 135, 129, 124, 124, 112, 107, 112, // 696-703 +107, 104, 104, 97, 101, 108, 123, 142, // 704-711 +170, 184, 150, 136, 142, 101, 98, 112, // 712-719 +133, 144, 146, 158, 152, 123, 110, 109, // 720-727 +101, 108, 122, 141, 150, 148, 146, 136, // 728-735 +119, 115, 124, 126, 130, 141, 139, 135, // 736-743 +124, 121, 116, 105, 111, 112, 108, 106, // 744-751 +102, 97, 102, 112, 125, 149, 182, 180, // 752-759 +142, 146, 129, 93, 105, 118, 137, 143, // 760-767 +151, 158, 143, 118, 112, 106, 101, 112, // 768-775 +129, 143, 149, 150, 144, 131, 115, 116, // 776-783 +123, 125, 135, 143, 140, 135, 128, 122, // 784-791 +112, 106, 108, 110, 106, 105, 103, 99, // 792-799 +107, 114, 128, 152, 184, 168, 136, 149, // 800-807 +124, 98, 109, 123, 136, 138, 148, 153, // 808-815 +138, 117, 115, 109, 106, 114, 130, 142, // 816-823 +145, 146, 143, 131, 119, 116, 119, 130, // 824-831 +134, 140, 144, 138, 129, 125, 117, 110, // 832-839 +105, 108, 109, 103, 106, 104, 104, 111, // 840-847 +119, 140, 168, 176, 146, 147, 143, 105, // 848-855 +107, 115, 127, 132, 142, 152, 144, 129, // 856-863 +120, 113, 108, 110, 119, 134, 142, 147, // 864-871 +144, 138, 125, 116, 114, 116, 127, 147, // 872-879 +151, 141, 146, 133, 112, 112, 111, 109, // 880-887 +109, 115, 114, 107, 98, 97, 104, 105, // 888-895 +120, 158, 184, 166, 149, 162, 115, 93, // 896-903 +103, 114, 124, 134, 157, 162, 143, 129, // 904-911 +121, 104, 99, 107, 123, 139, 147, 153, // 912-919 +149, 135, 119, 112, 108, 111, 129, 152, // 920-927 +160, 148, 149, 138, 109, 108, 109, 110, // 928-935 +112, 118, 122, 110, 99, 95, 89, 93, // 936-943 +110, 136, 178, 184, 162, 155, 147, 91, // 944-951 + 87, 99, 116, 132, 149, 172, 166, 138, // 952-959 +123, 109, 89, 93, 112, 134, 148, 160, // 960-967 +160, 144, 124, 111, 102, 102, 114, 134, // 968-975 +155, 168, 160, 146, 130, 110, 102, 104, // 976-983 +114, 120, 120, 123, 114, 96, 87, 79, // 984-991 + 87, 103, 128, 170, 184, 180, 146, 154, // 992-999 +103, 77, 93, 112, 134, 149, 172, 174, // 1000-1007 +149, 121, 112, 93, 91, 107, 131, 149, // 1008-1015 +158, 158, 151, 129, 110, 102, 101, 110, // 1016-1023 +127, 148, 157, 160, 155, 143, 121, 112, // 1024-1031 +111, 112, 120, 126, 125, 115, 106, 95, // 1032-1039 + 85, 83, 87, 101, 118, 143, 174, 184, // 1040-1047 +164, 133, 144, 99, 87, 111, 128, 143, // 1048-1055 +152, 164, 162, 138, 115, 112, 103, 104, // 1056-1063 +118, 136, 147, 151, 145, 139, 123, 108, // 1064-1071 +108, 112, 120, 133, 146, 152, 150, 143, // 1072-1079 +138, 127, 118, 116, 120, 123, 124, 121, // 1080-1087 +117, 107, 97, 93, 93, 91, 93, 102, // 1088-1095 +117, 133, 157, 184, 168, 135, 152, 121, // 1096-1103 + 97, 114, 125, 135, 143, 155, 158, 146, // 1104-1111 +125, 123, 114, 106, 112, 125, 134, 140, // 1112-1119 +142, 140, 133, 119, 118, 118, 119, 126, // 1120-1127 +136, 142, 144, 143, 139, 130, 121, 119, // 1128-1135 +120, 119, 123, 125, 119, 115, 109, 102, // 1136-1143 + 98, 95, 93, 99, 98, 107, 125, 143, // 1144-1151 +176, 184, 147, 154, 149, 104, 111, 121, // 1152-1159 +126, 135, 148, 155, 155, 138, 126, 121, // 1160-1167 +108, 105, 113, 123, 131, 139, 140, 142, // 1168-1175 +135, 125, 123, 121, 118, 123, 132, 136, // 1176-1183 +141, 140, 135, 130, 122, 118, 121, 120, // 1184-1191 +120, 123, 123, 116, 112, 108, 103, 101, // 1192-1199 +101, 102, 103, 102, 115, 134, 149, 182, // 1200-1207 +182, 146, 160, 147, 107, 115, 124, 123, // 1208-1215 +131, 144, 148, 149, 135, 126, 122, 110, // 1216-1223 +104, 113, 119, 126, 137, 140, 143, 139, // 1224-1231 +130, 123, 122, 116, 118, 125, 131, 136, // 1232-1239 +139, 136, 131, 123, 117, 116, 117, 119, // 1240-1247 +121, 124, 123, 121, 113, 111, 110, 107, // 1248-1255 +108, 110, 108, 106, 112, 129, 140, 160, // 1256-1263 +184, 164, 149, 164, 130, 109, 119, 119, // 1264-1271 +115, 129, 139, 142, 143, 132, 128, 121, // 1272-1279 +110, 108, 114, 117, 128, 137, 142, 143, // 1280-1287 +139, 133, 129, 119, 115, 119, 123, 128, // 1288-1295 +133, 135, 133, 127, 123, 120, 118, 120, // 1296-1303 +123, 125, 129, 127, 124, 119, 115, 112, // 1304-1311 +112, 114, 116, 116, 113, 113, 119, 122, // 1312-1319 +130, 144, 166, 164, 146, 156, 147, 121, // 1320-1327 +117, 122, 116, 115, 124, 130, 133, 131, // 1328-1335 +129, 127, 123, 118, 120, 123, 128, 130, // 1336-1343 +133, 135, 134, 132, 127, 128, 124, 123, // 1344-1351 +124, 124, 125, 126, 125, 125, 125, 124, // 1352-1359 +126, 130, 129, 129, 129, 124, 121, 119, // 1360-1367 +118, 117, 119, 120, 123, 125, 124, 121, // 1368-1375 +119, 118, 118, 119, 122, 130, 135, 138, // 1376-1383 +142, 144, 142, 137, 136, 133, 127, 125, // 1384-1391 +125, 125, 124, 124, 125, 125, 127, 128, // 1392-1399 +130, 131, 131, 131, 131, 131, 130, 129, // 1400-1407 +128, 125, 123, 122, 121, 121, 121, 123, // 1408-1415 +124, 128, 129, 131, 131, 131, 129, 127, // 1416-1423 +125, 124, 124, 124, 125, 126, 128, 129, // 1424-1431 +128, 127, 126, 125, 124, 125, 125, 126, // 1432-1439 +128, 129, 129, 129, 129, 129, 128, 126, // 1440-1447 +125, 125, 125, 125, 126, 128, 129, 129, // 1448-1455 +129, 130, 130, 130, 129, 130, 130, 130, // 1456-1463 +129, 129, 129, 129, 127, 125, 124, 124, // 1464-1471 +124, 123, 123, 124, 124, 124, 125, 128, // 1472-1479 +127, 128, 129, 129, 129, 129, 129, 129, // 1480-1487 +129, 127, 128, 127, 128, 128, 128, 127, // 1488-1495 +128, 127, 128, 128, 127, 128, 128, 127, // 1496-1503 +128, 126, 127, 126, 125, 125, 125, 125, // 1504-1511 +125, 125, 126, 128, 127, 128, 128, 127, // 1512-1519 +128, 127, 128, 127, 126, 126, 126, 125, // 1520-1527 +126, 126, 126, 125, 125, 125, 125, 125, // 1528-1535 +125, 125, 126, 128, 127, 128, 127, 128, // 1536-1543 +128, 127, 128, 127, 128, 127, 128, 127, // 1544-1551 +128, 128, 127, 128, 127, 126, 126, 126, // 1552-1559 +126, 126, 127, 128, 128, 127, 128, 127, // 1560-1567 +126, 126, 126, 125, 125, 125, 125, 125, // 1568-1575 +126, 126, 126, 127, 128, 128, 127, 128, // 1576-1583 +128, 127, 128, 127, 127, 128, 127, 128, // 1584-1591 +128, 127, 128, 127, 128, 127, 128, 128, // 1592-1599 +127, 128, 127, 128, 126, 126, 126, 126, // 1600-1607 +126, 125, 126, 126, 126, 126, 126, 126, // 1608-1615 +126, 126, 127, 128, 128, 127, 128, 128, // 1616-1623 +127, 128, 127, 128, 126, 126, 126, 126, // 1624-1631 +126, 126, 126, 126, 126, 126, 128, 128, // 1632-1639 +128, 128, 128, 128, 127, 128, 128, 127, // 1640-1647 +128, 127, 127, 128, 127, 128, 127, 128, // 1648-1655 +128, 127, 128, 126, 126, 126, 126, 126, // 1656-1663 +126, 126, 126, 126, 126, 126, 126, 126, // 1664-1671 +127, 126, 126, 127, 128, 128, 128, 127, // 1672-1679 +128, 127, 128, 127, 128, 128, 127, 128, // 1680-1687 +127, 128, 128, 127, 128, 127, 128, 128, // 1688-1695 +127, 128, 128, 127, 128, 127, 128, 127, // 1696-1703 +128, 127, 128, 128, 127, 128, 127, 126, // 1704-1711 +126, 126, 126, 126, 126, 128, 127, 127, // 1712-1719 +128, 127, 128, 127, 128, 127, 128, 127, // 1720-1727 +128, 127, 128, 127, 128, 127, 128, 127, // 1728-1735 +127, 128, 127, 128, 127, 128, 128, 127, // 1736-1743 +128, 127, 128, 127, 128, 127, 128, 127, // 1744-1751 +128, 128, 127, 128, 128, 127, 128, 127, // 1752-1759 +128, 127, 128, 127, 126, 126, 126, 126, // 1760-1767 +126, 126, 126, 126, 126, 126, 128, 127, // 1768-1775 +128, 127, 128, 127, 128, 128, 127, 128, // 1776-1783 +127, 128, 128, 128, 127, 128, 127, 128, // 1784-1791 +127, 128, 127, 128, 127, 128, 127, 128, // 1792-1799 +128, 127, 128, 127, 128, 127, 128, 127, // 1800-1807 +128, 128, 128, 127, 128, 127, 128, 127, // 1808-1815 +128, 127, 128, 126, 127, 128, 127, 126, // 1816-1823 +128, 127, 128, 126, 128, 127, 128, 127, // 1824-1831 +128, 127, 128, 128, 128, 127, 128, 127, // 1832-1839 +128, 127, 128, 128, 128, 128, 128, 128, // 1840-1847 +128, 128, 127, 128, 127, 128, 127, 128, // 1848-1855 +127, 128, 128, 128, 128, 128, 127, 128, // 1856-1863 +128, 128, 127, 128, 126, 126, 126, 126, // 1864-1871 +126, 128, 126, 128, 128, 127, 128, 127, // 1872-1879 +128, 127, 128, 127, 128, 127, 128, 127, // 1880-1887 +128, 128, 127, 128, 127, 128, 127, 128, // 1888-1895 +128, 127, 128, 127, 128, 127, 128, 127, // 1896-1903 +128, 127, 128, 127, 127, 128, 127, 128, // 1904-1911 +128, 127, 128, 128, 127, 128, 127, 128, // 1912-1919 +127, 128, 128, 127, 128, 127, 128, 127, // 1920-1927 +128, 127, 128, 128, 127, 128, 127, 128, // 1928-1935 +128, 128, 127, 128, 127, 128, 127, 128, // 1936-1943 +127, 128, 127, 128, 128, 127, 128, 127, // 1944-1951 +128, 127, 128, 127, 128, 128, 128, 127, // 1952-1959 +128, 127, 128, 128, 128, 127, 128, 127, // 1960-1967 +128, 128, 127, 128, 128, 127, 128, 127, // 1968-1975 +128, 127, 128, 127, 128, 128, 128, 127, // 1976-1983 +128, 128, 128, 128, 127, 128, 128, 127, // 1984-1991 +128, 127, 128, 127, 128, 127, 128, 128, // 1992-1999 +127, 128, 127, 128, 127, 128, 127, 128, // 2000-2007 +127, 128, 127, 128, 128, 127, 128, 128, // 2008-2015 +127, 128, 128, 127, 128, 127, 128, 127, // 2016-2023 +128, 128, 128, 128, 128, 128, 127, 128, // 2024-2031 +127, 128, 127, 128, 127, 128, 127, 128, // 2032-2039 +127, 128, 127, 128, 127, 128, 127, 128, // 2040-2047 +127, 128, 128, 127, 128, 128, 127, 128, // 2048-2055 +127, 128, 127, 128, 127, 128, 127, 128, // 2056-2063 +127, 128, 128, 127, 128, 127, 128, 127, // 2064-2071 +128, 127, 128, 128, 128, 127, 128, 127, // 2072-2079 +128, 127, 128, 128, 127, 128, 127, 128, // 2080-2087 +127, 128, 128, 127, 128, 127, 128, 128, // 2088-2095 +127, 128, 127, 128, 127, 128, 127, 128, // 2096-2103 +127, 128, 127, 128, 127, 128, 127, 128, // 2104-2111 +128, 127, 128, 127, 128, 127, 128, 127, // 2112-2119 +128, 127, 128, 128, 127, 128, 127, 128, // 2120-2127 +128, 127, 128, 127, 128, 127, 128, 127, // 2128-2135 +128, 128, 128, 128, 128, 127, 128, 127, // 2136-2143 +128, 127, 128, 127, 128, 128, 127, 128, // 2144-2151 +127, 128, 127, 128, 127, 128, 127, 128, // 2152-2159 +127, 128, 128, 127, 128, 127, 128, 127, // 2160-2167 +128, 129, 129, 131, 135, 134, 129, 123, // 2168-2175 +120, 121, 124, 128, 129, 129, 127, 125, // 2176-2183 +124, 125, 130, 133, 131, 128, 123, 121, // 2184-2191 +121, 122, 123, 123, 122, 123, 125, 128, // 2192-2199 +130, 131, 131, 130, 129, 129, 129, 129, // 2200-2207 +127, 126, 128, 132, 135, 134, 131, 128, // 2208-2215 +124, 124, 125, 128, 127, 125, 123, 123, // 2216-2223 +125, 126, 127, 128, 127, 128, 129, 129, // 2224-2231 +130, 129, 126, 125, 125, 128, 127, 126, // 2232-2239 +125, 128, 126, 128, 127, 129, 130, 129, // 2240-2247 +129, 128, 129, 129, 128, 126, 125, 126, // 2248-2255 +126, 127, 126, 128, 127, 129, 129, 128, // 2256-2263 +129, 129, 130, 129, 127, 130, 131, 130, // 2264-2271 +128, 125, 125, 127, 126, 127, 128, 128, // 2272-2279 +127, 129, 129, 128, 128, 127, 128, 125, // 2280-2287 +128, 126, 127, 125, 126, 126, 125, 125, // 2288-2295 +126, 127, 128, 128, 127, 128, 126, 125, // 2296-2303 +127, 129, 128, 127, 128, 129, 126, 126, // 2304-2311 +128, 128, 126, 126, 127, 128, 128, 128, // 2312-2319 +126, 128, 127, 126, 128, 128, 128, 128, // 2320-2327 +127, 128, 127, 128, 129, 127, 125, 126, // 2328-2335 +127, 128, 126, 126, 126, 128, 127, 128, // 2336-2343 +127, 128, 127, 128, 127, 128, 126, 126, // 2344-2351 +125, 126, 126, 126, 127, 126, 127, 126, // 2352-2359 +127, 128, 128, 127, 128, 129, 128, 127, // 2360-2367 +127, 128, 127, 128, 128, 127, 128, 127, // 2368-2375 +128, 126, 128, 127, 126, 128, 127, 128, // 2376-2383 +127, 128, 128, 129, 128, 126, 126, 126, // 2384-2391 +127, 128, 126, 128, 127, 127, 128, 127, // 2392-2399 +128, 126, 126, 126, 129, 128, 128, 128, // 2400-2407 +126, 128, 128, 127, 128, 128, 127, 128, // 2408-2415 +127, 128, 127, 125, 127, 128, 129, 129, // 2416-2423 +127, 128, 127, 128, 128, 127, 128, 127, // 2424-2431 +128, 128, 126, 127, 126, 128, 127, 128, // 2432-2439 +127, 129, 127, 128, 127, 128, 128, 126, // 2440-2447 +127, 125, 127, 126, 128, 128, 129, 128, // 2448-2455 +127, 129, 127, 128, 126, 128, 127, 128, // 2456-2463 +127, 128, 127, 128, 127, 126, 127, 128, // 2464-2471 +127, 128, 126, 128, 127, 128, 129, 127, // 2472-2479 +128, 128, 127, 129, 126, 128, 128, 127, // 2480-2487 +126, 127, 128, 127, 128, 127, 128, 127, // 2488-2495 +128, 128, 127, 128, 127, 128, 127, 128, // 2496-2503 +128, 128, 127, 128, 127, 128, 126, 128, // 2504-2511 +127, 129, 127, 126, 128, 127, 129, 126, // 2512-2519 +128, 127, 128, 126, 127, 128, 128, 129, // 2520-2527 +128, 129, 129, 127, 128, 126, 129, 128, // 2528-2535 +126, 128, 127, 128, 126, 128, 128, 129, // 2536-2543 +128, 127, 128, 127, 128, 127, 128, 127, // 2544-2551 +129, 127, 128, 126, 128, 127, 128, 128, // 2552-2559 +127, 128, 126, 129, 128, 129, 128, 129, // 2560-2567 +129, 127, 128, 127, 128, 126, 126, 129, // 2568-2575 +126, 125, 126, 127, 129, 125, 128, 127, // 2576-2583 +129, 126, 128, 127, 128, 129, 128, 127, // 2584-2591 +128, 129, 125, 128, 126, 128, 127, 126, // 2592-2599 +127, 128, 129, 128, 127, 126, 128, 129, // 2600-2607 +128, 125, 129, 128, 127, 126, 127, 128, // 2608-2615 +126, 128, 126, 128, 127, 128, 126, 128, // 2616-2623 +126, 129, 125, 127, 128, 128, 126, 125, // 2624-2631 +129, 125, 129, 126, 128, 127, 128, 127, // 2632-2639 +128, 128, 127, 128, 128, 129, 128, 127, // 2640-2647 +128, 128, 128, 128, 128, 129, 128, 127, // 2648-2655 +128, 127, 128, 126, 128, 126, 127, 126, // 2656-2663 +128, 127, 129, 128, 129, 128, 126, 127, // 2664-2671 +128, 127, 126, 127, 126, 128, 126, 126, // 2672-2679 +126, 127, 128, 127, 128, 127, 128, 127, // 2680-2687 +126, 127, 128, 127, 128, 126, 128, 126, // 2688-2695 +126, 127, 126, 126, 128, 127, 127, 128, // 2696-2703 +126, 128, 129, 127, 126, 128, 127, 128, // 2704-2711 +127, 127, 127, 128, 126, 128, 125, 128, // 2712-2719 +127, 128, 127, 128, 127, 126, 128, 128, // 2720-2727 +128, 127, 128, 129, 128, 127, 128, 126, // 2728-2735 +128, 128, 126, 128, 127, 128, 127, 128, // 2736-2743 +127, 128, 127, 128, 127, 128, 127, 128, // 2744-2751 +127, 128, 128, 127, 128, 127, 128, 127, // 2752-2759 +128, 128, 127, 128, 127, 128, 127, 126, // 2760-2767 +129, 128, 127, 128, 127, 128, 128, 127, // 2768-2775 +128, 128, 127, 128, 127, 128, 127, 128, // 2776-2783 +126, 128, 127, 128, 128, 127, 128, 125, // 2784-2791 +126, 127, 128, 127, 126, 127, 128, 128, // 2792-2799 +127, 126, 128, 127, 128, 127, 128, 127, // 2800-2807 +128, 128, 126, 128, 127, 128, 127, 128, // 2808-2815 +128, 127, 128, 127, 129, 128, 127, 128, // 2816-2823 +127, 128, 127, 128, 128, 127, 128, 127, // 2824-2831 +128, 127, 128, 127, 126, 127, 128, 127, // 2832-2839 +128, 128, 127, 128, 127, 126, 127, 128, // 2840-2847 +127, 128, 128, 126, 128, 127, 128, 127, // 2848-2855 +128, 127, 128, 128, 127, 128, 127, 128, // 2856-2863 +126, 128, 127, 128, 127, 128, 127, 128, // 2864-2871 +126, 127, 128, 127, 128, 126, 127, 128, // 2872-2879 +128, 128, 128, 127, 128, 127, 126, 128, // 2880-2887 +128, 127, 128, 126, 126, 128, 127, 128, // 2888-2895 +128, 128, 127, 128, 127, 126, 127, 128, // 2896-2903 +127, 128, 128, 128, 126, 128, 127, 128, // 2904-2911 +128, 127, 128, 126, 126, 127, 128, 127, // 2912-2919 +126, 128, 127, 128, 127, 128, 128, 126, // 2920-2927 +127, 126, 126, 126, 127, 128, 127, 128, // 2928-2935 +127, 128, 127, 128, 127, 126, 128, 127, // 2936-2943 +126, 127, 125, 126, 128, 126, 126, 127, // 2944-2951 +128, 127, 128, 126, 128, 127, 128, 127, // 2952-2959 +128, 126, 126, 126, 127, 126, 126, 127, // 2960-2967 +126, 127, 126, 128, 127, 128, 127, 128, // 2968-2975 +126, 127, 128, 126, 127, 126, 127, 126, // 2976-2983 +127, 128, 127, 128, 127, 126, 127, 128, // 2984-2991 +126, 128, 127, 128, 126, 127, 128, 128, // 2992-2999 +127, 128, 127, 128, 126, 127, 128, 127, // 3000-3007 +128, 128, 128, 128, 127, 128, 127, 128, // 3008-3015 +127, 126, 128, 127, 128, 128, 127, 128, // 3016-3023 +127, 126, 128, 128, 128, 128, 128, 128, // 3024-3031 +128, 128, 126, 128, 128, 127, 128, 127, // 3032-3039 +128, 127, 128, 126, 128, 126, 127, 128, // 3040-3047 +127, 128, 127, 128, 127, 128, 127, 128, // 3048-3055 +128, 128, 127, 128, 127, 126, 127, 127, // 3056-3063 +128, 127, 128, 127, 128, 128, 127, 126, // 3064-3071 +127, 128, 128, 128, 128, 127, 128, 127, // 3072-3079 +128, 128, 127, 126, 128, 127, 128, 128, // 3080-3087 +127, 128, 127, 128, 128, 128, 127, 126, // 3088-3095 +126, 128, 127, 126, 128, 128, 126, 126, // 3096-3103 +126, 128, 127, 128, 128, 128, 127, 126, // 3104-3111 +127, 126, 128, 128, 128, 126, 127, 128, // 3112-3119 +127, 126, 127, 126, 128, 128, 126, 127, // 3120-3127 +128, 128, 126, 128, 127, 128, 127, 127, // 3128-3135 +127, 128, 127, 128, 127, 128, 127, 126, // 3136-3143 +127, 128, 126, 128, 128, 127, 128, 126, // 3144-3151 +128, 128, 126, 127, 126, 128, 128, 126, // 3152-3159 +126, 128, 128, 126, 126, 127, 128, 126, // 3160-3167 +127, 126, 127, 126, 128, 127, 128, 127, // 3168-3175 +128, 127, 128, 127, 128, 127, 128, 127, // 3176-3183 +128, 127, 126, 127, 128, 128, 127, 126, // 3184-3191 +126, 128, 128, 126, 128, 128, 127, 128, // 3192-3199 +127, 126, 127, 128, 128, 127, 128, 127, // 3200-3207 +128, 126, 128, 127, 128, 127, 128, 128, // 3208-3215 +128, 128, 128, 126, 128, 128, 128, 127, // 3216-3223 +128, 127, 128, 127, 128, 127, 128, 126, // 3224-3231 +127, 128, 127, 128, 128, 128, 126, 128, // 3232-3239 +127, 128, 126, 127, 126, 127, 128, 128, // 3240-3247 +127, 128, 127, 128, 127, 128, 127, 125, // 3248-3255 +127, 126, 125, 125, 126, 127, 128, 128, // 3256-3263 +126, 127, 128, 126, 128, 126, 127, 128, // 3264-3271 +127, 126, 127, 126, 126, 128, 126, 128, // 3272-3279 +128, 128, 127, 128, 127, 128, 128, 128, // 3280-3287 +127, 128, 127, 128, 126, 127, 128, 127, // 3288-3295 +126, 127, 128, 127, 128, 127, 128, 127, // 3296-3303 +128, 126, 128, 127, 128, 128, 128, 127, // 3304-3311 +126, 127, 128, 127, 128, 127, 128, 127, // 3312-3319 +128, 127, 128, 126, 128, 127, 128, 128, // 3320-3327 +128, 127, 128, 127, 128, 127, 128, 126, // 3328-3335 +128, 128, 127, 127, 127, 128, 129, 126, // 3336-3343 +127, 128, 128, 127, 128, 129, 128, 128, // 3344-3351 +126, 126, 126, 128, 126, 128, 127, 128, // 3352-3359 +127, 126, 128, 127, 128, 128, 127, 128, // 3360-3367 +127, 128, 128, 127, 128, 128, 126, 128, // 3368-3375 +126, 128, 126, 128, 127, 128, 126, 126, // 3376-3383 +128, 126, 128, 128, 127, 128, 127, 126, // 3384-3391 +126, 126, 128, 127, 128, 127, 128, 128, // 3392-3399 +128, 127, 128, 126, 128, 127, 128, 126, // 3400-3407 +128, 126, 128, 126, 128, 127, 128, 127, // 3408-3415 +128, 127, 128, 126, 126, 126, 126, 128, // 3416-3423 +127, 128, 127, 128, 127, 128, 126, 126, // 3424-3431 +127, 125, 125, 126, 126, 128, 128, 128, // 3432-3439 +128, 128, 128, 128, 128, 128, 127, 128, // 3440-3447 +127, 128, 127, 128, 127, 128, 126, 126, // 3448-3455 +126, 127, 126, 127, 128, 127, 126, 128, // 3456-3463 +127, 128, 127, 128, 128, 128, 127, 128, // 3464-3471 +127, 126, 126, 128, 127, 128, 126, 125, // 3472-3479 +128, 126, 128, 127, 128, 127, 128, 127, // 3480-3487 +125, 127, 126, 128, 128, 126, 128, 126, // 3488-3495 +126, 127, 128, 127, 128, 127, 128, 127, // 3496-3503 +128, 128, 128, 128, 128, 127, 126, 127, // 3504-3511 +128, 125, 126, 126, 127, 128, 128, 127, // 3512-3519 +128, 128, 128, 127, 127, 127, 128, 126, // 3520-3527 +128, 127, 126, 128, 128, 126, 128, 127, // 3528-3535 +125, 127, 126, 126, 126, 126, 126, 128, // 3536-3543 +127, 128, 127, 128, 127, 126, 126, 126, // 3544-3551 +126, 126, 128, 127, 128, 128, 128, 128, // 3552-3559 +128, 128, 127, 128, 126, 126, 126, 128, // 3560-3567 +127, 126, 128, 127, 126, 127, 128, 129, // 3568-3575 +129, 127, 128, 129, 127, 126, 126, 126, // 3576-3583 +128, 127, 128, 127, 128, 127, 128, 127, // 3584-3591 +128, 127, 128, 127, 128, 128, 126, 126, // 3592-3599 +128, 129, 129, 127, 128, 127, 128, 127, // 3600-3607 +126, 128, 129, 128, 125, 126, 128, 127, // 3608-3615 +126, 127, 129, 127, 125, 127, 128, 127, // 3616-3623 +125, 126, 129, 128, 125, 125, 127, 126, // 3624-3631 +125, 125, 128, 127, 128, 126, 128, 127, // 3632-3639 +127, 127, 127, 127, 128, 125, 126, 126, // 3640-3647 +127, 128, 126, 126, 126, 128, 129, 128, // 3648-3655 +128, 126, 128, 127, 125, 126, 128, 129, // 3656-3663 +126, 126, 128, 127, 128, 127, 128, 128, // 3664-3671 +128, 128, 126, 127, 128, 126, 125, 126, // 3672-3679 +128, 128, 126, 126, 127, 128, 127, 128, // 3680-3687 +127, 128, 127, 126, 126, 128, 126, 128, // 3688-3695 +128, 128, 127, 125, 128, 128, 128, 126, // 3696-3703 +128, 128, 128, 128, 127, 128, 128, 128, // 3704-3711 +128, 127, 126, 126, 126, 128}; + +const char Y[3688] = {125, 125, 124, 124, 124, 124, 124, 124, // 0-7 +123, 123, 123, 123, 123, 124, 125, 128, // 8-15 +129, 131, 133, 134, 134, 135, 135, 134, // 16-23 +134, 133, 133, 131, 131, 129, 128, 126, // 24-31 +125, 124, 123, 123, 123, 123, 124, 124, // 32-39 +125, 125, 125, 125, 125, 124, 124, 124, // 40-47 +123, 123, 123, 122, 121, 121, 121, 122, // 48-55 +124, 125, 129, 131, 134, 135, 135, 136, // 56-63 +135, 135, 134, 134, 133, 131, 130, 129, // 64-71 +127, 125, 124, 124, 123, 124, 124, 124, // 72-79 +125, 125, 125, 126, 126, 126, 125, 125, // 80-87 +124, 124, 123, 123, 123, 121, 121, 120, // 88-95 +120, 120, 121, 123, 126, 130, 133, 135, // 96-103 +136, 137, 137, 136, 136, 135, 134, 133, // 104-111 +131, 130, 129, 126, 124, 123, 123, 123, // 112-119 +123, 124, 125, 125, 126, 128, 127, 128, // 120-127 +126, 125, 124, 123, 122, 121, 121, 120, // 128-135 +120, 119, 118, 118, 120, 122, 126, 130, // 136-143 +134, 138, 139, 140, 140, 139, 138, 135, // 144-151 +134, 133, 130, 129, 126, 124, 122, 120, // 152-159 +120, 120, 121, 122, 124, 126, 129, 130, // 160-167 +130, 130, 130, 128, 125, 124, 122, 120, // 168-175 +119, 119, 118, 117, 116, 115, 116, 119, // 176-183 +123, 129, 134, 140, 143, 144, 144, 144, // 184-191 +141, 138, 135, 132, 129, 126, 124, 122, // 192-199 +120, 119, 118, 118, 119, 121, 124, 127, // 200-207 +130, 133, 134, 134, 133, 131, 128, 124, // 208-215 +121, 118, 116, 115, 114, 113, 112, 112, // 216-223 +114, 117, 121, 130, 138, 145, 151, 154, // 224-231 +154, 151, 147, 142, 135, 129, 123, 118, // 232-239 +115, 113, 112, 112, 112, 114, 116, 121, // 240-247 +127, 134, 139, 143, 144, 143, 142, 136, // 248-255 +130, 123, 116, 112, 108, 106, 106, 107, // 256-263 +108, 110, 112, 116, 122, 131, 142, 151, // 264-271 +158, 166, 166, 162, 153, 143, 133, 122, // 272-279 +114, 110, 107, 107, 108, 110, 112, 116, // 280-287 +120, 125, 133, 139, 144, 147, 148, 146, // 288-295 +142, 134, 124, 115, 108, 103, 100, 101, // 296-303 +102, 106, 110, 113, 117, 122, 130, 139, // 304-311 +148, 158, 166, 170, 166, 158, 146, 133, // 312-319 +119, 110, 103, 101, 103, 107, 112, 115, // 320-327 +120, 125, 131, 136, 142, 147, 150, 151, // 328-335 +147, 142, 131, 120, 110, 102, 98, 95, // 336-343 + 98, 102, 108, 112, 117, 120, 124, 130, // 344-351 +139, 147, 158, 166, 170, 168, 158, 144, // 352-359 +129, 114, 103, 98, 98, 103, 110, 116, // 360-367 +122, 127, 131, 134, 139, 143, 148, 149, // 368-375 +150, 144, 137, 125, 114, 105, 98, 95, // 376-383 + 97, 101, 107, 112, 118, 121, 123, 124, // 384-391 +130, 137, 147, 158, 168, 172, 168, 155, // 392-399 +139, 119, 106, 97, 95, 100, 108, 117, // 400-407 +125, 131, 133, 134, 135, 139, 143, 147, // 408-415 +149, 147, 142, 131, 118, 107, 99, 95, // 416-423 + 97, 101, 107, 114, 119, 123, 123, 121, // 424-431 +121, 125, 135, 147, 162, 170, 172, 166, // 432-439 +149, 131, 112, 99, 93, 98, 107, 117, // 440-447 +125, 133, 134, 132, 133, 133, 139, 143, // 448-455 +149, 150, 145, 136, 122, 110, 101, 97, // 456-463 + 97, 102, 108, 114, 119, 120, 121, 118, // 464-471 +116, 118, 129, 143, 160, 174, 180, 174, // 472-479 +156, 135, 112, 95, 91, 95, 106, 119, // 480-487 +130, 134, 135, 130, 129, 130, 136, 144, // 488-495 +150, 153, 147, 136, 121, 109, 100, 98, // 496-503 +100, 106, 112, 116, 120, 119, 117, 114, // 504-511 +112, 112, 122, 138, 156, 174, 182, 178, // 512-519 +162, 139, 115, 97, 91, 95, 107, 119, // 520-527 +130, 133, 133, 129, 125, 130, 136, 146, // 528-535 +152, 153, 147, 135, 119, 108, 102, 102, // 536-543 +106, 110, 115, 116, 116, 116, 113, 112, // 544-551 +110, 111, 119, 136, 154, 174, 184, 180, // 552-559 +168, 140, 115, 95, 87, 93, 106, 120, // 560-567 +132, 136, 133, 130, 125, 130, 137, 144, // 568-575 +152, 150, 143, 131, 118, 109, 106, 108, // 576-583 +112, 115, 116, 116, 112, 112, 111, 110, // 584-591 +110, 109, 116, 133, 151, 174, 184, 184, // 592-599 +172, 143, 113, 93, 83, 91, 106, 123, // 600-607 +137, 140, 136, 130, 125, 128, 136, 143, // 608-615 +149, 147, 140, 129, 117, 112, 111, 114, // 616-623 +118, 118, 115, 112, 110, 110, 112, 112, // 624-631 +112, 110, 111, 122, 143, 168, 184, 184, // 632-639 +180, 151, 113, 87, 75, 83, 106, 128, // 640-647 +144, 147, 140, 129, 122, 122, 133, 142, // 648-655 +147, 146, 137, 126, 118, 115, 118, 121, // 656-663 +121, 119, 112, 108, 107, 108, 112, 113, // 664-671 +112, 108, 107, 117, 142, 170, 184, 184, // 672-679 +182, 148, 106, 77, 71, 83, 112, 139, // 680-687 +152, 151, 139, 124, 119, 121, 132, 142, // 688-695 +143, 140, 131, 124, 123, 124, 126, 126, // 696-703 +120, 114, 108, 105, 108, 112, 116, 115, // 704-711 +111, 104, 102, 115, 145, 176, 184, 184, // 712-719 +174, 135, 93, 69, 75, 95, 129, 149, // 720-727 +155, 147, 131, 118, 117, 123, 133, 138, // 728-735 +134, 130, 125, 130, 137, 142, 139, 129, // 736-743 +113, 104, 101, 107, 116, 124, 125, 119, // 744-751 +110, 101, 99, 107, 126, 155, 180, 184, // 752-759 +182, 153, 120, 95, 83, 93, 112, 135, // 760-767 +146, 146, 138, 129, 123, 124, 129, 131, // 768-775 +130, 127, 128, 131, 138, 142, 140, 130, // 776-783 +117, 108, 105, 110, 116, 121, 122, 118, // 784-791 +112, 107, 105, 108, 114, 131, 155, 176, // 792-799 +184, 178, 148, 117, 91, 81, 97, 116, // 800-807 +140, 152, 148, 139, 129, 121, 122, 125, // 808-815 +127, 128, 124, 128, 134, 142, 144, 141, // 816-823 +128, 113, 106, 106, 114, 121, 125, 124, // 824-831 +116, 111, 108, 107, 111, 113, 121, 141, // 832-839 +164, 178, 182, 162, 128, 99, 79, 89, // 840-847 +112, 138, 156, 153, 143, 129, 119, 119, // 848-855 +124, 125, 128, 124, 125, 133, 140, 146, // 856-863 +143, 130, 115, 106, 107, 115, 125, 131, // 864-871 +126, 118, 111, 110, 112, 113, 114, 112, // 872-879 +118, 140, 168, 184, 184, 154, 114, 85, // 880-887 + 75, 95, 125, 152, 162, 150, 134, 121, // 888-895 +118, 123, 129, 125, 123, 120, 126, 138, // 896-903 +146, 147, 137, 119, 108, 107, 114, 128, // 904-911 +133, 129, 118, 111, 108, 112, 116, 116, // 912-919 +112, 108, 115, 144, 176, 184, 182, 140, // 920-927 + 97, 73, 75, 112, 145, 162, 162, 140, // 928-935 +123, 118, 120, 128, 126, 119, 117, 119, // 936-943 +133, 146, 149, 143, 125, 112, 109, 114, // 944-951 +125, 135, 132, 124, 112, 110, 112, 117, // 952-959 +120, 117, 110, 103, 108, 132, 168, 184, // 960-967 +184, 152, 106, 81, 77, 105, 140, 157, // 968-975 +162, 143, 127, 121, 122, 124, 125, 116, // 976-983 +115, 119, 132, 146, 147, 140, 125, 114, // 984-991 +112, 121, 129, 135, 130, 121, 116, 112, // 992-999 +116, 120, 120, 120, 114, 108, 106, 111, // 1000-1007 +136, 166, 182, 176, 146, 105, 85, 85, // 1008-1015 +112, 144, 157, 157, 142, 125, 121, 122, // 1016-1023 +123, 123, 116, 116, 123, 135, 146, 143, // 1024-1031 +135, 122, 114, 116, 125, 133, 134, 127, // 1032-1039 +119, 115, 114, 117, 120, 120, 120, 115, // 1040-1047 +110, 105, 107, 126, 160, 180, 178, 153, // 1048-1055 +110, 87, 85, 110, 143, 156, 157, 142, // 1056-1063 +127, 120, 122, 123, 123, 116, 116, 123, // 1064-1071 +134, 144, 143, 134, 121, 115, 120, 130, // 1072-1079 +136, 135, 125, 116, 114, 116, 121, 124, // 1080-1087 +123, 120, 116, 112, 108, 105, 112, 135, // 1088-1095 +164, 180, 172, 141, 105, 87, 93, 120, // 1096-1103 +147, 157, 152, 136, 123, 119, 121, 124, // 1104-1111 +122, 118, 120, 128, 137, 142, 138, 129, // 1112-1119 +119, 120, 126, 134, 135, 129, 119, 114, // 1120-1127 +116, 121, 126, 128, 123, 118, 114, 110, // 1128-1135 +106, 106, 115, 141, 168, 180, 166, 134, // 1136-1143 + 99, 87, 97, 126, 151, 158, 149, 133, // 1144-1151 +120, 118, 121, 123, 122, 120, 123, 130, // 1152-1159 +138, 140, 135, 125, 119, 121, 129, 134, // 1160-1167 +134, 126, 118, 116, 119, 125, 130, 127, // 1168-1175 +121, 116, 113, 112, 110, 107, 111, 130, // 1176-1183 +158, 176, 172, 146, 110, 91, 91, 116, // 1184-1191 +144, 156, 152, 136, 122, 118, 120, 124, // 1192-1199 +123, 120, 120, 125, 134, 139, 136, 129, // 1200-1207 +121, 120, 126, 133, 133, 128, 119, 116, // 1208-1215 +119, 126, 131, 130, 123, 116, 112, 112, // 1216-1223 +110, 109, 109, 119, 143, 168, 176, 160, // 1224-1231 +128, 97, 91, 103, 133, 152, 156, 145, // 1232-1239 +128, 118, 117, 121, 124, 124, 121, 124, // 1240-1247 +129, 136, 136, 133, 124, 120, 123, 130, // 1248-1255 +134, 131, 124, 116, 118, 123, 131, 134, // 1256-1263 +128, 119, 112, 111, 112, 113, 112, 112, // 1264-1271 +118, 142, 164, 172, 158, 127, 98, 91, // 1272-1279 +105, 134, 153, 156, 145, 127, 117, 117, // 1280-1287 +121, 125, 124, 122, 125, 130, 136, 138, // 1288-1295 +133, 124, 120, 122, 130, 134, 132, 125, // 1296-1303 +118, 118, 125, 132, 135, 128, 118, 111, // 1304-1311 +110, 113, 116, 115, 112, 115, 134, 157, // 1312-1319 +170, 162, 136, 106, 93, 103, 127, 151, // 1320-1327 +156, 146, 129, 116, 115, 120, 125, 128, // 1328-1335 +124, 124, 129, 134, 136, 133, 126, 121, // 1336-1343 +122, 127, 133, 134, 128, 121, 119, 123, // 1344-1351 +132, 135, 132, 120, 112, 110, 112, 117, // 1352-1359 +118, 115, 112, 119, 140, 160, 166, 152, // 1360-1367 +124, 101, 98, 112, 138, 153, 151, 139, // 1368-1375 +121, 115, 118, 124, 129, 128, 125, 126, // 1376-1383 +130, 135, 135, 130, 123, 120, 124, 131, // 1384-1391 +134, 132, 124, 119, 121, 127, 135, 134, // 1392-1399 +128, 116, 111, 112, 116, 120, 119, 114, // 1400-1407 +112, 121, 143, 164, 166, 148, 118, 99, // 1408-1415 +101, 118, 143, 152, 147, 133, 119, 116, // 1416-1423 +120, 125, 130, 127, 125, 129, 131, 135, // 1424-1431 +132, 126, 121, 121, 128, 133, 134, 131, // 1432-1439 +123, 120, 121, 129, 135, 133, 126, 116, // 1440-1447 +111, 112, 117, 121, 120, 114, 111, 116, // 1448-1455 +135, 156, 164, 153, 130, 106, 102, 112, // 1456-1463 +135, 148, 146, 136, 123, 118, 121, 125, // 1464-1471 +129, 128, 124, 126, 130, 133, 134, 128, // 1472-1479 +124, 122, 125, 132, 133, 132, 125, 120, // 1480-1487 +122, 127, 133, 134, 127, 119, 112, 112, // 1488-1495 +116, 121, 123, 116, 111, 109, 121, 145, // 1496-1503 +164, 164, 144, 117, 102, 106, 123, 143, // 1504-1511 +147, 142, 129, 120, 121, 125, 129, 128, // 1512-1519 +124, 123, 129, 132, 135, 131, 125, 123, // 1520-1527 +123, 130, 133, 133, 128, 122, 120, 125, // 1528-1535 +132, 136, 133, 124, 116, 111, 114, 120, // 1536-1543 +124, 123, 115, 108, 107, 119, 143, 162, // 1544-1551 +164, 148, 123, 105, 105, 116, 136, 145, // 1552-1559 +142, 134, 124, 123, 125, 125, 124, 124, // 1560-1567 +124, 129, 134, 134, 132, 125, 123, 125, // 1568-1575 +129, 134, 132, 128, 124, 123, 126, 133, // 1576-1583 +134, 133, 124, 118, 115, 114, 120, 123, // 1584-1591 +122, 118, 110, 107, 111, 129, 152, 166, // 1592-1599 +162, 140, 114, 102, 107, 123, 142, 146, // 1600-1607 +142, 133, 124, 123, 124, 123, 123, 124, // 1608-1615 +127, 133, 135, 133, 130, 123, 123, 125, // 1616-1623 +130, 133, 129, 128, 125, 125, 129, 131, // 1624-1631 +131, 129, 123, 120, 117, 117, 119, 120, // 1632-1639 +120, 115, 111, 107, 111, 128, 149, 166, // 1640-1647 +164, 143, 116, 99, 105, 121, 142, 149, // 1648-1655 +144, 134, 125, 121, 122, 123, 123, 125, // 1656-1663 +129, 134, 136, 135, 127, 124, 121, 125, // 1664-1671 +131, 133, 130, 125, 125, 126, 130, 132, // 1672-1679 +131, 129, 124, 121, 119, 119, 119, 120, // 1680-1687 +119, 117, 112, 107, 107, 114, 136, 156, // 1688-1695 +168, 157, 133, 109, 97, 110, 129, 147, // 1696-1703 +150, 143, 131, 123, 120, 121, 122, 123, // 1704-1711 +127, 133, 138, 138, 132, 124, 120, 121, // 1712-1719 +128, 133, 133, 129, 125, 125, 128, 131, // 1720-1727 +132, 131, 128, 124, 121, 120, 119, 118, // 1728-1735 +118, 118, 116, 112, 110, 108, 112, 129, // 1736-1743 +148, 166, 162, 140, 114, 98, 105, 124, // 1744-1751 +144, 153, 146, 134, 123, 120, 120, 122, // 1752-1759 +123, 129, 134, 138, 137, 132, 124, 120, // 1760-1767 +121, 127, 132, 132, 130, 124, 124, 129, // 1768-1775 +133, 133, 132, 127, 124, 122, 121, 120, // 1776-1783 +119, 118, 118, 116, 115, 112, 108, 110, // 1784-1791 +114, 131, 149, 164, 160, 138, 114, 101, // 1792-1799 +107, 128, 145, 153, 145, 134, 123, 119, // 1800-1807 +120, 123, 125, 130, 135, 137, 135, 130, // 1808-1815 +123, 120, 122, 126, 132, 131, 130, 126, // 1816-1823 +125, 129, 131, 132, 131, 129, 125, 123, // 1824-1831 +121, 120, 119, 118, 117, 116, 115, 114, // 1832-1839 +112, 111, 112, 119, 135, 149, 160, 153, // 1840-1847 +133, 114, 107, 115, 135, 147, 149, 142, // 1848-1855 +130, 122, 120, 121, 124, 128, 132, 136, // 1856-1863 +136, 133, 127, 121, 120, 123, 128, 132, // 1864-1871 +131, 130, 126, 125, 129, 131, 133, 131, // 1872-1879 +128, 123, 121, 120, 121, 120, 119, 118, // 1880-1887 +116, 116, 115, 112, 112, 112, 115, 125, // 1888-1895 +140, 152, 160, 147, 128, 112, 109, 123, // 1896-1903 +140, 148, 147, 136, 127, 122, 121, 123, // 1904-1911 +125, 129, 133, 135, 134, 129, 123, 120, // 1912-1919 +121, 126, 131, 133, 131, 129, 126, 125, // 1920-1927 +129, 131, 132, 130, 126, 122, 120, 119, // 1928-1935 +120, 120, 120, 119, 116, 115, 115, 113, // 1936-1943 +112, 113, 116, 124, 138, 151, 160, 150, // 1944-1951 +131, 115, 110, 123, 139, 148, 147, 137, // 1952-1959 +129, 122, 121, 122, 124, 128, 133, 134, // 1960-1967 +133, 126, 120, 120, 122, 129, 131, 132, // 1968-1975 +130, 129, 125, 125, 125, 130, 132, 133, // 1976-1983 +130, 123, 119, 119, 120, 123, 123, 120, // 1984-1991 +117, 114, 114, 116, 116, 116, 115, 116, // 1992-1999 +124, 137, 148, 157, 151, 135, 121, 115, // 2000-2007 +123, 136, 143, 144, 138, 130, 125, 122, // 2008-2015 +121, 122, 124, 130, 133, 131, 127, 121, // 2016-2023 +120, 124, 128, 131, 131, 130, 129, 125, // 2024-2031 +125, 125, 128, 131, 133, 131, 124, 119, // 2032-2039 +118, 120, 124, 124, 122, 118, 115, 115, // 2040-2047 +115, 117, 117, 116, 118, 120, 127, 138, // 2048-2055 +147, 156, 150, 135, 123, 116, 123, 136, // 2056-2063 +142, 143, 136, 129, 124, 121, 119, 120, // 2064-2071 +123, 130, 133, 130, 125, 121, 120, 124, // 2072-2079 +129, 131, 132, 130, 127, 125, 125, 125, // 2080-2087 +128, 130, 133, 131, 128, 121, 119, 120, // 2088-2095 +123, 124, 124, 120, 116, 116, 116, 118, // 2096-2103 +120, 117, 118, 120, 123, 133, 141, 150, // 2104-2111 +156, 144, 131, 119, 116, 129, 138, 141, // 2112-2119 +139, 131, 126, 123, 119, 119, 120, 125, // 2120-2127 +132, 133, 129, 124, 121, 123, 128, 130, // 2128-2135 +131, 131, 130, 129, 128, 127, 126, 129, // 2136-2143 +131, 131, 130, 127, 123, 121, 122, 123, // 2144-2151 +125, 124, 122, 119, 116, 116, 119, 121, // 2152-2159 +120, 118, 118, 120, 128, 136, 144, 152, // 2160-2167 +153, 139, 124, 116, 116, 131, 138, 140, // 2168-2175 +137, 131, 126, 122, 118, 117, 121, 129, // 2176-2183 +134, 133, 127, 124, 124, 125, 129, 130, // 2184-2191 +130, 131, 130, 129, 125, 124, 129, 132, // 2192-2199 +133, 130, 125, 123, 123, 122, 124, 126, // 2200-2207 +129, 129, 123, 118, 115, 116, 119, 122, // 2208-2215 +124, 121, 117, 117, 119, 126, 136, 145, // 2216-2223 +153, 151, 137, 122, 114, 117, 129, 136, // 2224-2231 +139, 138, 134, 127, 120, 114, 116, 122, // 2232-2239 +130, 135, 134, 130, 127, 125, 125, 126, // 2240-2247 +127, 130, 131, 131, 128, 125, 125, 128, // 2248-2255 +129, 130, 129, 126, 124, 124, 125, 126, // 2256-2263 +128, 129, 128, 124, 121, 118, 119, 120, // 2264-2271 +121, 121, 121, 122, 118, 114, 116, 120, // 2272-2279 +130, 142, 147, 153, 147, 130, 118, 114, // 2280-2287 +119, 133, 138, 139, 139, 131, 123, 116, // 2288-2295 +112, 118, 126, 133, 137, 135, 131, 129, // 2296-2303 +124, 123, 124, 126, 130, 132, 130, 128, // 2304-2311 +124, 123, 124, 125, 127, 129, 129, 128, // 2312-2319 +129, 129, 128, 125, 125, 124, 124, 121, // 2320-2327 +120, 121, 120, 121, 122, 122, 121, 116, // 2328-2335 +114, 117, 122, 129, 136, 143, 149, 151, // 2336-2343 +137, 121, 117, 119, 127, 134, 136, 138, // 2344-2351 +136, 129, 120, 115, 116, 123, 130, 134, // 2352-2359 +135, 134, 131, 128, 123, 123, 125, 128, // 2360-2367 +130, 130, 129, 126, 124, 123, 123, 126, // 2368-2375 +130, 130, 130, 129, 131, 130, 125, 124, // 2376-2383 +124, 124, 125, 123, 123, 123, 122, 120, // 2384-2391 +121, 121, 120, 117, 115, 119, 124, 127, // 2392-2399 +132, 137, 144, 148, 142, 129, 121, 121, // 2400-2407 +123, 127, 131, 136, 138, 134, 125, 119, // 2408-2415 +118, 121, 125, 130, 134, 136, 134, 130, // 2416-2423 +124, 123, 123, 124, 127, 127, 129, 127, // 2424-2431 +125, 123, 124, 125, 128, 130, 130, 131, // 2432-2439 +130, 130, 130, 126, 124, 124, 124, 125, // 2440-2447 +125, 123, 123, 123, 121, 120, 120, 120, // 2448-2455 +119, 118, 118, 120, 125, 129, 131, 138, // 2456-2463 +143, 145, 139, 127, 123, 124, 123, 126, // 2464-2471 +131, 135, 136, 132, 125, 123, 121, 122, // 2472-2479 +124, 129, 133, 134, 132, 130, 126, 124, // 2480-2487 +123, 123, 124, 128, 127, 128, 127, 126, // 2488-2495 +126, 128, 127, 130, 130, 130, 130, 130, // 2496-2503 +130, 128, 125, 123, 124, 124, 124, 124, // 2504-2511 +123, 123, 122, 120, 121, 120, 119, 119, // 2512-2519 +119, 121, 125, 125, 129, 134, 139, 143, // 2520-2527 +142, 134, 129, 126, 123, 124, 127, 131, // 2528-2535 +135, 134, 131, 129, 124, 122, 123, 124, // 2536-2543 +129, 131, 131, 131, 130, 127, 124, 122, // 2544-2551 +122, 124, 125, 126, 127, 129, 129, 128, // 2552-2559 +128, 127, 128, 129, 129, 129, 130, 130, // 2560-2567 +127, 125, 124, 124, 123, 123, 124, 124, // 2568-2575 +124, 123, 121, 121, 120, 120, 120, 120, // 2576-2583 +121, 123, 125, 126, 127, 133, 138, 142, // 2584-2591 +140, 135, 131, 129, 124, 123, 126, 131, // 2592-2599 +133, 133, 132, 131, 127, 124, 123, 124, // 2600-2607 +126, 128, 129, 131, 130, 128, 125, 123, // 2608-2615 +123, 123, 123, 125, 128, 129, 129, 130, // 2616-2623 +130, 129, 128, 127, 128, 129, 129, 130, // 2624-2631 +130, 128, 125, 124, 124, 122, 123, 124, // 2632-2639 +124, 123, 123, 123, 121, 120, 119, 120, // 2640-2647 +120, 120, 124, 127, 126, 131, 136, 140, // 2648-2655 +140, 138, 134, 133, 127, 124, 126, 128, // 2656-2663 +130, 131, 132, 132, 130, 126, 125, 124, // 2664-2671 +124, 124, 125, 127, 129, 129, 128, 127, // 2672-2679 +125, 124, 124, 124, 125, 126, 129, 130, // 2680-2687 +131, 131, 130, 129, 128, 127, 128, 129, // 2688-2695 +130, 128, 125, 128, 124, 122, 123, 123, // 2696-2703 +124, 124, 124, 124, 123, 121, 121, 119, // 2704-2711 +118, 121, 121, 123, 128, 126, 130, 136, // 2712-2719 +139, 140, 139, 136, 134, 129, 125, 125, // 2720-2727 +125, 128, 130, 131, 132, 131, 129, 127, // 2728-2735 +125, 123, 123, 123, 124, 126, 128, 129, // 2736-2743 +129, 127, 125, 125, 124, 124, 124, 126, // 2744-2751 +129, 130, 131, 131, 130, 129, 127, 126, // 2752-2759 +126, 128, 129, 128, 126, 128, 125, 123, // 2760-2767 +123, 123, 123, 123, 124, 124, 123, 122, // 2768-2775 +121, 120, 120, 120, 120, 124, 125, 124, // 2776-2783 +129, 134, 137, 139, 142, 138, 136, 132, // 2784-2791 +128, 126, 123, 124, 126, 127, 130, 131, // 2792-2799 +131, 130, 128, 125, 123, 123, 122, 123, // 2800-2807 +124, 126, 127, 129, 129, 128, 127, 125, // 2808-2815 +125, 125, 128, 129, 130, 130, 130, 130, // 2816-2823 +129, 129, 128, 126, 128, 127, 125, 126, // 2824-2831 +125, 124, 124, 124, 124, 124, 123, 123, // 2832-2839 +123, 123, 121, 121, 121, 121, 121, 123, // 2840-2847 +124, 124, 125, 127, 131, 134, 138, 140, // 2848-2855 +139, 137, 136, 131, 128, 126, 124, 124, // 2856-2863 +125, 126, 129, 129, 129, 129, 127, 125, // 2864-2871 +125, 124, 123, 124, 124, 125, 126, 128, // 2872-2879 +129, 129, 129, 129, 129, 129, 129, 129, // 2880-2887 +129, 129, 129, 129, 129, 127, 128, 127, // 2888-2895 +129, 128, 125, 126, 124, 123, 123, 123, // 2896-2903 +123, 123, 123, 123, 123, 123, 123, 122, // 2904-2911 +122, 121, 121, 123, 124, 124, 125, 128, // 2912-2919 +131, 134, 137, 140, 139, 138, 137, 132, // 2920-2927 +130, 128, 124, 123, 123, 124, 125, 126, // 2928-2935 +128, 129, 127, 128, 127, 126, 125, 125, // 2936-2943 +124, 124, 125, 125, 127, 128, 129, 130, // 2944-2951 +130, 130, 130, 130, 129, 129, 128, 126, // 2952-2959 +126, 126, 126, 126, 127, 128, 126, 125, // 2960-2967 +126, 124, 123, 125, 123, 123, 124, 124, // 2968-2975 +123, 124, 124, 124, 123, 123, 124, 123, // 2976-2983 +123, 125, 124, 124, 129, 129, 132, 137, // 2984-2991 +138, 138, 139, 138, 134, 131, 129, 125, // 2992-2999 +123, 123, 123, 123, 124, 125, 126, 128, // 3000-3007 +129, 129, 129, 129, 129, 126, 126, 125, // 3008-3015 +125, 125, 126, 128, 129, 129, 130, 130, // 3016-3023 +130, 130, 129, 128, 128, 128, 126, 125, // 3024-3031 +125, 125, 126, 125, 125, 126, 124, 125, // 3032-3039 +125, 124, 124, 124, 123, 123, 124, 124, // 3040-3047 +123, 123, 124, 124, 123, 125, 125, 124, // 3048-3055 +125, 128, 126, 130, 134, 135, 135, 137, // 3056-3063 +138, 134, 133, 132, 127, 125, 125, 123, // 3064-3071 +121, 123, 123, 124, 125, 127, 128, 129, // 3072-3079 +130, 129, 129, 129, 128, 125, 126, 125, // 3080-3087 +125, 126, 127, 128, 129, 129, 129, 129, // 3088-3095 +129, 129, 128, 128, 126, 125, 125, 125, // 3096-3103 +125, 125, 125, 125, 125, 125, 125, 125, // 3104-3111 +124, 125, 124, 124, 124, 124, 123, 123, // 3112-3119 +124, 124, 124, 124, 125, 124, 125, 126, // 3120-3127 +126, 130, 133, 134, 135, 136, 136, 134, // 3128-3135 +134, 133, 129, 128, 126, 123, 123, 123, // 3136-3143 +122, 123, 125, 125, 127, 129, 129, 130, // 3144-3151 +130, 130, 129, 128, 127, 126, 125, 125, // 3152-3159 +125, 126, 128, 128, 129, 129, 129, 128, // 3160-3167 +129, 129, 128, 127, 126, 125, 125, 125, // 3168-3175 +124, 124, 125, 125, 125, 125, 125, 125, // 3176-3183 +125, 125, 124, 124, 124, 124, 124, 123, // 3184-3191 +123, 124, 124, 124, 125, 125, 128, 129, // 3192-3199 +131, 134, 134, 135, 137, 135, 134, 134, // 3200-3207 +131, 130, 128, 125, 124, 123, 122, 123, // 3208-3215 +124, 124, 125, 128, 129, 129, 130, 130, // 3216-3223 +129, 129, 129, 127, 126, 126, 125, 125, // 3224-3231 +125, 126, 128, 127, 129, 129, 129, 129, // 3232-3239 +129, 129, 128, 127, 126, 125, 125, 125, // 3240-3247 +124, 125, 125, 125, 125, 125, 125, 125, // 3248-3255 +125, 125, 125, 124, 124, 124, 123, 124, // 3256-3263 +124, 124, 124, 124, 125, 125, 127, 130, // 3264-3271 +132, 133, 134, 136, 136, 134, 135, 133, // 3272-3279 +130, 130, 128, 124, 124, 123, 122, 123, // 3280-3287 +123, 124, 125, 126, 128, 129, 130, 130, // 3288-3295 +130, 130, 129, 127, 128, 126, 126, 125, // 3296-3303 +125, 125, 126, 127, 128, 129, 129, 129, // 3304-3311 +129, 129, 127, 128, 126, 125, 125, 124, // 3312-3319 +124, 124, 124, 124, 125, 125, 125, 125, // 3320-3327 +125, 125, 125, 125, 124, 124, 124, 124, // 3328-3335 +124, 124, 124, 124, 125, 125, 128, 131, // 3336-3343 +132, 133, 135, 136, 134, 135, 134, 131, // 3344-3351 +131, 129, 126, 125, 124, 123, 123, 123, // 3352-3359 +123, 124, 125, 128, 128, 129, 130, 130, // 3360-3367 +130, 130, 129, 129, 128, 126, 125, 125, // 3368-3375 +125, 125, 126, 128, 127, 129, 129, 129, // 3376-3383 +129, 128, 127, 128, 125, 125, 124, 124, // 3384-3391 +125, 124, 124, 125, 125, 125, 125, 125, // 3392-3399 +125, 126, 125, 125, 125, 124, 124, 124, // 3400-3407 +124, 124, 124, 125, 125, 126, 127, 129, // 3408-3415 +131, 133, 134, 135, 135, 134, 134, 133, // 3416-3423 +131, 130, 128, 125, 124, 123, 123, 123, // 3424-3431 +123, 123, 124, 125, 128, 129, 129, 130, // 3432-3439 +130, 130, 130, 129, 128, 127, 126, 125, // 3440-3447 +125, 125, 125, 125, 128, 128, 127, 129, // 3448-3455 +127, 129, 127, 128, 126, 125, 125, 124, // 3456-3463 +124, 124, 124, 125, 125, 125, 125, 125, // 3464-3471 +126, 126, 125, 126, 125, 125, 125, 125, // 3472-3479 +125, 125, 125, 125, 125, 126, 127, 130, // 3480-3487 +131, 132, 133, 134, 133, 133, 133, 131, // 3488-3495 +130, 130, 127, 125, 125, 124, 123, 124, // 3496-3503 +123, 124, 125, 125, 128, 128, 129, 129, // 3504-3511 +130, 129, 129, 129, 127, 128, 127, 126, // 3512-3519 +125, 126, 126, 126, 127, 128, 128, 127, // 3520-3527 +128, 128, 127, 126, 126, 125, 125, 125, // 3528-3535 +125, 125, 125, 125, 125, 125, 126, 126, // 3536-3543 +126, 126, 126, 126, 126, 125, 125, 125, // 3544-3551 +125, 125, 125, 125, 126, 128, 127, 129, // 3552-3559 +131, 131, 131, 133, 132, 133, 133, 131, // 3560-3567 +131, 130, 129, 127, 126, 125, 125, 124, // 3568-3575 +124, 124, 125, 125, 125, 128, 128, 127, // 3576-3583 +129, 129, 129, 128, 127, 128, 126, 126, // 3584-3591 +126, 125, 125, 125, 125, 127, 126, 126, // 3592-3599 +126, 126, 125, 125, 125, 125, 125, 125, // 3600-3607 +124, 125, 125, 124, 125, 125, 125, 125, // 3608-3615 +126, 125, 126, 128, 126, 128, 127, 128, // 3616-3623 +129, 129, 130, 130, 131, 131, 131, 131, // 3624-3631 +131, 131, 131, 130, 129, 129, 127, 126, // 3632-3639 +126, 125, 125, 125, 125, 125, 126, 126, // 3640-3647 +127, 128, 127, 128, 128, 127, 126, 125, // 3648-3655 +125, 125, 125, 125, 125, 125, 125, 125, // 3656-3663 +125, 125, 125, 126, 125, 125, 125, 125, // 3664-3671 +125, 125, 125, 125, 125, 125, 126, 126, // 3672-3679 +126, 128, 127, 128, 128, 129, 129, 129}; + +const char Z[3972] = {128, 128, 127, 128, 127, 128, 128, 127, // 0-7 +128, 127, 128, 128, 127, 128, 127, 128, // 8-15 +127, 128, 127, 128, 127, 128, 127, 128, // 16-23 +128, 127, 128, 127, 128, 128, 127, 128, // 24-31 +127, 128, 128, 127, 128, 127, 128, 126, // 32-39 +128, 127, 126, 126, 127, 128, 126, 126, // 40-47 +127, 128, 126, 126, 126, 126, 126, 126, // 48-55 +127, 128, 128, 128, 128, 128, 127, 128, // 56-63 +127, 128, 127, 128, 127, 128, 128, 128, // 64-71 +127, 128, 128, 127, 128, 127, 128, 127, // 72-79 +128, 127, 128, 127, 128, 127, 128, 128, // 80-87 +127, 128, 127, 128, 126, 126, 128, 127, // 88-95 +126, 126, 126, 126, 126, 125, 125, 125, // 96-103 +126, 125, 126, 126, 125, 126, 125, 126, // 104-111 +126, 126, 128, 127, 128, 127, 128, 127, // 112-119 +129, 128, 129, 129, 129, 129, 129, 129, // 120-127 +129, 129, 127, 129, 127, 128, 127, 128, // 128-135 +128, 128, 127, 128, 127, 128, 127, 128, // 136-143 +126, 126, 126, 126, 125, 126, 125, 126, // 144-151 +125, 125, 125, 125, 125, 125, 125, 125, // 152-159 +125, 125, 126, 125, 126, 127, 126, 127, // 160-167 +127, 127, 128, 127, 128, 128, 129, 129, // 168-175 +129, 129, 129, 129, 129, 129, 129, 129, // 176-183 +129, 129, 129, 128, 129, 128, 129, 127, // 184-191 +129, 127, 128, 126, 127, 128, 126, 126, // 192-199 +126, 125, 125, 125, 125, 125, 125, 125, // 200-207 +125, 125, 125, 125, 125, 125, 125, 125, // 208-215 +125, 126, 128, 125, 126, 126, 128, 128, // 216-223 +128, 128, 128, 128, 127, 128, 129, 129, // 224-231 +129, 129, 129, 129, 130, 130, 130, 130, // 232-239 +130, 130, 130, 129, 129, 129, 130, 129, // 240-247 +127, 128, 127, 128, 128, 126, 126, 125, // 248-255 +125, 126, 125, 124, 124, 125, 125, 124, // 256-263 +125, 125, 125, 124, 125, 125, 125, 125, // 264-271 +125, 126, 126, 126, 128, 127, 128, 127, // 272-279 +128, 127, 128, 128, 127, 128, 127, 129, // 280-287 +129, 129, 129, 129, 129, 129, 130, 130, // 288-295 +130, 130, 129, 130, 130, 130, 129, 129, // 296-303 +128, 128, 127, 128, 128, 127, 125, 125, // 304-311 +125, 125, 125, 124, 124, 124, 124, 124, // 312-319 +124, 124, 125, 125, 125, 125, 125, 125, // 320-327 +125, 128, 126, 126, 128, 127, 128, 127, // 328-335 +128, 127, 128, 127, 128, 127, 128, 129, // 336-343 +129, 129, 129, 129, 130, 130, 130, 130, // 344-351 +130, 130, 130, 130, 130, 130, 130, 129, // 352-359 +129, 129, 127, 128, 126, 125, 125, 125, // 360-367 +125, 124, 124, 124, 123, 124, 124, 124, // 368-375 +125, 124, 124, 125, 125, 125, 125, 126, // 376-383 +126, 126, 126, 127, 127, 126, 126, 127, // 384-391 +128, 127, 128, 128, 128, 127, 128, 127, // 392-399 +128, 129, 129, 129, 130, 130, 130, 130, // 400-407 +130, 130, 131, 130, 130, 130, 130, 130, // 408-415 +129, 129, 128, 127, 126, 125, 125, 124, // 416-423 +124, 124, 124, 124, 123, 124, 124, 124, // 424-431 +124, 124, 124, 125, 125, 125, 125, 125, // 432-439 +126, 127, 128, 126, 126, 126, 126, 126, // 440-447 +128, 127, 126, 128, 127, 128, 127, 129, // 448-455 +129, 129, 129, 129, 130, 130, 131, 131, // 456-463 +131, 131, 131, 131, 130, 130, 130, 129, // 464-471 +129, 127, 128, 126, 125, 125, 125, 124, // 472-479 +124, 124, 124, 124, 124, 124, 124, 124, // 480-487 +124, 125, 125, 125, 125, 126, 125, 126, // 488-495 +126, 126, 126, 126, 126, 126, 126, 126, // 496-503 +128, 126, 128, 127, 128, 129, 129, 129, // 504-511 +130, 130, 131, 131, 131, 132, 131, 131, // 512-519 +131, 131, 131, 130, 130, 129, 129, 128, // 520-527 +127, 128, 125, 125, 125, 125, 124, 124, // 528-535 +124, 124, 124, 124, 124, 124, 124, 124, // 536-543 +124, 125, 124, 125, 125, 125, 125, 125, // 544-551 +125, 125, 125, 125, 125, 126, 126, 128, // 552-559 +128, 128, 127, 129, 129, 130, 130, 130, // 560-567 +131, 132, 131, 132, 132, 131, 131, 130, // 568-575 +130, 130, 129, 129, 128, 127, 126, 125, // 576-583 +125, 125, 125, 125, 124, 124, 124, 124, // 584-591 +124, 124, 123, 124, 124, 124, 124, 124, // 592-599 +125, 124, 124, 124, 125, 124, 124, 125, // 600-607 +125, 125, 125, 127, 127, 128, 127, 128, // 608-615 +129, 130, 130, 131, 131, 131, 132, 132, // 616-623 +132, 132, 131, 131, 131, 130, 129, 129, // 624-631 +127, 128, 128, 128, 126, 126, 125, 125, // 632-639 +125, 125, 125, 124, 124, 124, 124, 124, // 640-647 +124, 124, 124, 124, 124, 124, 124, 124, // 648-655 +123, 124, 124, 124, 124, 125, 125, 125, // 656-663 +125, 125, 128, 128, 129, 129, 130, 131, // 664-671 +131, 132, 132, 133, 133, 133, 132, 131, // 672-679 +131, 131, 130, 129, 129, 128, 127, 128, // 680-687 +127, 126, 125, 126, 125, 125, 125, 125, // 688-695 +125, 124, 125, 125, 125, 125, 124, 124, // 696-703 +124, 124, 124, 124, 123, 123, 123, 123, // 704-711 +123, 123, 124, 124, 125, 125, 127, 127, // 712-719 +128, 129, 130, 130, 131, 132, 133, 134, // 720-727 +134, 133, 133, 133, 131, 131, 130, 130, // 728-735 +129, 129, 127, 128, 126, 128, 126, 127, // 736-743 +125, 125, 125, 125, 125, 125, 125, 125, // 744-751 +125, 125, 125, 124, 124, 124, 124, 124, // 752-759 +123, 123, 123, 123, 123, 123, 123, 124, // 760-767 +124, 124, 125, 126, 128, 129, 130, 131, // 768-775 +132, 133, 134, 134, 134, 134, 134, 134, // 776-783 +132, 131, 131, 130, 129, 127, 128, 127, // 784-791 +126, 128, 126, 126, 125, 125, 125, 125, // 792-799 +125, 125, 125, 125, 125, 125, 125, 125, // 800-807 +125, 124, 123, 123, 123, 122, 122, 122, // 808-815 +121, 122, 123, 124, 124, 124, 124, 126, // 816-823 +126, 129, 130, 131, 133, 133, 134, 134, // 824-831 +134, 134, 134, 133, 133, 131, 130, 130, // 832-839 +129, 128, 128, 127, 126, 125, 126, 126, // 840-847 +125, 125, 125, 125, 125, 125, 125, 126, // 848-855 +125, 125, 125, 125, 124, 124, 124, 123, // 856-863 +123, 122, 122, 121, 121, 121, 121, 123, // 864-871 +123, 124, 125, 127, 128, 129, 131, 133, // 872-879 +133, 134, 135, 135, 134, 134, 134, 133, // 880-887 +132, 131, 130, 130, 129, 128, 128, 127, // 888-895 +127, 126, 126, 125, 125, 125, 125, 125, // 896-903 +125, 125, 126, 125, 125, 125, 125, 124, // 904-911 +124, 123, 123, 122, 122, 121, 121, 121, // 912-919 +121, 121, 123, 123, 123, 125, 125, 128, // 920-927 +129, 131, 132, 133, 134, 135, 135, 135, // 928-935 +135, 134, 134, 132, 131, 131, 130, 130, // 936-943 +127, 128, 128, 125, 127, 125, 126, 125, // 944-951 +125, 125, 125, 125, 126, 126, 125, 125, // 952-959 +125, 125, 124, 124, 123, 122, 122, 121, // 960-967 +120, 121, 120, 121, 121, 122, 121, 123, // 968-975 +125, 125, 127, 129, 131, 133, 134, 134, // 976-983 +136, 136, 135, 136, 135, 134, 133, 132, // 984-991 +131, 130, 129, 129, 128, 126, 127, 125, // 992-999 +125, 125, 125, 125, 125, 126, 125, 125, // 1000-1007 +125, 125, 125, 125, 125, 123, 123, 122, // 1008-1015 +122, 120, 120, 120, 120, 120, 121, 121, // 1016-1023 +121, 124, 125, 127, 129, 131, 134, 134, // 1024-1031 +135, 136, 136, 136, 135, 134, 134, 133, // 1032-1039 +131, 131, 130, 129, 128, 127, 128, 128, // 1040-1047 +127, 126, 126, 125, 126, 127, 125, 125, // 1048-1055 +126, 125, 125, 125, 126, 125, 123, 121, // 1056-1063 +121, 120, 119, 119, 118, 119, 120, 120, // 1064-1071 +120, 123, 123, 125, 129, 130, 133, 134, // 1072-1079 +135, 137, 137, 136, 136, 135, 135, 133, // 1080-1087 +131, 131, 130, 129, 129, 129, 128, 126, // 1088-1095 +128, 127, 126, 128, 128, 128, 126, 126, // 1096-1103 +127, 126, 124, 125, 124, 123, 123, 121, // 1104-1111 +121, 119, 118, 117, 116, 116, 118, 118, // 1112-1119 +119, 123, 124, 125, 130, 132, 134, 136, // 1120-1127 +138, 139, 139, 138, 138, 136, 134, 132, // 1128-1135 +130, 130, 129, 125, 126, 127, 128, 125, // 1136-1143 +128, 129, 128, 128, 129, 129, 127, 126, // 1144-1151 +128, 125, 122, 121, 121, 120, 118, 118, // 1152-1159 +116, 114, 114, 118, 118, 116, 120, 126, // 1160-1167 +126, 129, 134, 138, 138, 139, 142, 143, // 1168-1175 +139, 137, 138, 134, 129, 128, 125, 123, // 1176-1183 +120, 121, 125, 124, 125, 130, 131, 131, // 1184-1191 +133, 134, 133, 129, 130, 129, 123, 121, // 1192-1199 +120, 117, 115, 112, 112, 112, 112, 116, // 1200-1207 +118, 118, 123, 129, 129, 134, 138, 141, // 1208-1215 +143, 143, 144, 143, 139, 137, 135, 129, // 1216-1223 +124, 121, 119, 116, 115, 117, 119, 121, // 1224-1231 +124, 130, 135, 135, 138, 140, 138, 136, // 1232-1239 +134, 130, 125, 120, 118, 113, 111, 109, // 1240-1247 +107, 108, 110, 115, 118, 119, 130, 134, // 1248-1255 +135, 143, 146, 147, 148, 148, 147, 143, // 1256-1263 +137, 135, 127, 120, 118, 114, 111, 110, // 1264-1271 +112, 115, 115, 121, 130, 131, 136, 141, // 1272-1279 +141, 140, 138, 137, 131, 124, 121, 115, // 1280-1287 +111, 107, 103, 105, 107, 112, 116, 120, // 1288-1295 +134, 136, 143, 152, 153, 156, 157, 155, // 1296-1303 +151, 143, 138, 131, 119, 114, 110, 103, // 1304-1311 +102, 103, 105, 111, 115, 122, 131, 136, // 1312-1319 +143, 145, 145, 146, 143, 138, 133, 123, // 1320-1327 +116, 108, 101, 97, 91, 95, 101, 109, // 1328-1335 +115, 124, 143, 144, 153, 168, 166, 170, // 1336-1343 +170, 164, 156, 143, 137, 123, 108, 106, // 1344-1351 + 97, 91, 93, 95, 102, 108, 117, 131, // 1352-1359 +136, 143, 152, 149, 150, 148, 140, 134, // 1360-1367 +123, 113, 106, 95, 91, 87, 89, 99, // 1368-1375 +107, 112, 132, 143, 147, 166, 170, 172, // 1376-1383 +174, 172, 166, 151, 143, 133, 112, 107, // 1384-1391 + 99, 89, 91, 91, 98, 107, 115, 129, // 1392-1399 +138, 144, 153, 152, 152, 149, 140, 133, // 1400-1407 +120, 108, 99, 87, 83, 87, 91, 93, // 1408-1415 +107, 127, 130, 148, 166, 168, 178, 180, // 1416-1423 +180, 170, 158, 150, 130, 115, 110, 91, // 1424-1431 + 85, 85, 83, 89, 99, 114, 124, 135, // 1432-1439 +153, 156, 158, 168, 156, 152, 144, 131, // 1440-1447 +118, 105, 95, 81, 75, 79, 81, 91, // 1448-1455 +102, 120, 134, 145, 170, 172, 178, 184, // 1456-1463 +180, 174, 164, 151, 135, 116, 108, 93, // 1464-1471 + 83, 85, 81, 87, 97, 108, 123, 135, // 1472-1479 +148, 160, 162, 168, 164, 153, 150, 135, // 1480-1487 +123, 110, 95, 87, 75, 77, 79, 87, // 1488-1495 +101, 111, 134, 142, 158, 174, 172, 184, // 1496-1503 +182, 174, 166, 152, 139, 120, 109, 99, // 1504-1511 + 85, 85, 83, 83, 95, 104, 118, 133, // 1512-1519 +144, 155, 162, 164, 166, 157, 150, 140, // 1520-1527 +125, 115, 101, 91, 81, 77, 81, 87, // 1528-1535 + 97, 108, 129, 138, 151, 170, 170, 180, // 1536-1543 +182, 174, 168, 156, 143, 125, 114, 104, // 1544-1551 + 89, 87, 85, 83, 95, 102, 112, 127, // 1552-1559 +139, 147, 158, 160, 160, 157, 149, 143, // 1560-1567 +129, 119, 106, 95, 87, 81, 85, 89, // 1568-1575 + 97, 108, 125, 134, 148, 166, 166, 178, // 1576-1583 +178, 174, 168, 157, 146, 129, 118, 107, // 1584-1591 + 93, 91, 87, 85, 95, 101, 111, 123, // 1592-1599 +137, 143, 155, 160, 156, 158, 149, 143, // 1600-1607 +133, 121, 111, 98, 91, 83, 83, 91, // 1608-1615 + 95, 103, 122, 130, 141, 164, 162, 174, // 1616-1623 +178, 174, 170, 160, 151, 134, 124, 112, // 1624-1631 + 98, 95, 89, 85, 93, 98, 107, 117, // 1632-1639 +131, 140, 146, 158, 155, 156, 154, 143, // 1640-1647 +140, 125, 116, 106, 95, 91, 83, 89, // 1648-1655 + 93, 98, 112, 128, 131, 150, 162, 162, // 1656-1663 +176, 172, 170, 164, 157, 143, 130, 122, // 1664-1671 +107, 99, 97, 89, 93, 98, 103, 112, // 1672-1679 +121, 134, 140, 149, 155, 151, 155, 147, // 1680-1687 +140, 136, 120, 114, 103, 95, 91, 87, // 1688-1695 + 93, 97, 103, 117, 129, 133, 156, 155, // 1696-1703 +164, 172, 166, 168, 158, 152, 138, 129, // 1704-1711 +118, 106, 102, 97, 93, 98, 101, 108, // 1712-1719 +115, 125, 135, 142, 149, 151, 151, 151, // 1720-1727 +143, 140, 130, 119, 113, 102, 97, 91, // 1728-1735 + 91, 97, 99, 108, 121, 128, 139, 155, // 1736-1743 +152, 168, 166, 166, 164, 155, 148, 135, // 1744-1751 +129, 114, 107, 104, 95, 98, 100, 102, // 1752-1759 +112, 116, 128, 135, 142, 148, 148, 151, // 1760-1767 +147, 142, 138, 126, 120, 112, 103, 99, // 1768-1775 + 93, 95, 100, 102, 111, 125, 126, 142, // 1776-1783 +153, 152, 166, 162, 164, 160, 153, 143, // 1784-1791 +134, 128, 112, 108, 104, 97, 101, 102, // 1792-1799 +105, 112, 118, 128, 135, 142, 146, 148, // 1800-1807 +148, 144, 142, 136, 128, 120, 112, 106, // 1808-1815 +101, 95, 98, 101, 106, 110, 126, 126, // 1816-1823 +139, 153, 148, 166, 162, 162, 158, 152, // 1824-1831 +145, 134, 129, 115, 110, 107, 99, 103, // 1832-1839 +103, 105, 112, 118, 127, 133, 140, 143, // 1840-1847 +146, 146, 143, 142, 135, 129, 122, 114, // 1848-1855 +109, 105, 99, 99, 103, 107, 110, 122, // 1856-1863 +129, 132, 152, 147, 156, 162, 156, 158, // 1864-1871 +153, 147, 136, 132, 121, 112, 112, 105, // 1872-1879 +104, 107, 107, 112, 117, 122, 129, 136, // 1880-1887 +139, 143, 144, 141, 141, 136, 129, 124, // 1888-1895 +118, 112, 108, 104, 101, 104, 108, 109, // 1896-1903 +116, 129, 126, 143, 148, 146, 160, 154, // 1904-1911 +156, 152, 148, 141, 134, 129, 116, 115, // 1912-1919 +109, 106, 108, 107, 111, 114, 120, 124, // 1920-1927 +131, 137, 138, 143, 141, 139, 139, 132, // 1928-1935 +129, 123, 116, 112, 110, 105, 104, 107, // 1936-1943 +110, 112, 119, 129, 127, 143, 144, 146, // 1944-1951 +157, 151, 155, 150, 146, 139, 135, 127, // 1952-1959 +118, 117, 111, 110, 110, 109, 112, 115, // 1960-1967 +120, 123, 131, 134, 136, 141, 138, 139, // 1968-1975 +136, 132, 129, 124, 118, 115, 112, 107, // 1976-1983 +106, 108, 110, 112, 116, 128, 126, 138, // 1984-1991 +145, 142, 155, 148, 152, 149, 145, 142, // 1992-1999 +134, 132, 120, 119, 114, 111, 112, 110, // 2000-2007 +112, 115, 118, 122, 126, 131, 133, 138, // 2008-2015 +136, 138, 137, 133, 131, 128, 122, 119, // 2016-2023 +115, 112, 110, 109, 110, 112, 114, 118, // 2024-2031 +130, 125, 140, 142, 143, 152, 146, 151, // 2032-2039 +146, 146, 140, 135, 132, 121, 121, 114, // 2040-2047 +112, 112, 111, 113, 114, 118, 120, 125, // 2048-2055 +129, 131, 136, 135, 137, 136, 134, 131, // 2056-2063 +129, 124, 120, 118, 112, 112, 110, 111, // 2064-2071 +113, 113, 118, 127, 123, 138, 140, 140, // 2072-2079 +150, 146, 151, 147, 147, 142, 138, 134, // 2080-2087 +124, 124, 117, 114, 114, 112, 112, 114, // 2088-2095 +116, 119, 123, 126, 130, 135, 134, 137, // 2096-2103 +138, 135, 134, 132, 128, 124, 121, 116, // 2104-2111 +114, 111, 110, 111, 112, 113, 118, 127, // 2112-2119 +123, 139, 139, 141, 150, 145, 151, 147, // 2120-2127 +147, 142, 140, 134, 125, 125, 116, 115, // 2128-2135 +114, 111, 112, 112, 115, 118, 123, 126, // 2136-2143 +129, 135, 134, 138, 138, 136, 136, 133, // 2144-2151 +130, 126, 122, 118, 115, 112, 110, 110, // 2152-2159 +112, 112, 113, 123, 123, 127, 140, 135, // 2160-2167 +147, 147, 148, 150, 147, 146, 140, 139, // 2168-2175 +130, 128, 121, 115, 115, 111, 112, 112, // 2176-2183 +112, 115, 119, 123, 125, 132, 134, 135, // 2184-2191 +139, 137, 137, 136, 133, 130, 126, 121, // 2192-2199 +118, 115, 111, 110, 110, 111, 113, 112, // 2200-2207 +122, 123, 128, 140, 135, 147, 146, 148, // 2208-2215 +150, 147, 146, 141, 139, 131, 127, 121, // 2216-2223 +115, 115, 111, 111, 112, 112, 116, 118, // 2224-2231 +123, 125, 131, 134, 135, 139, 137, 138, // 2232-2239 +136, 134, 131, 128, 124, 120, 116, 113, // 2240-2247 +110, 110, 109, 112, 112, 114, 125, 123, // 2248-2255 +133, 140, 138, 148, 146, 149, 149, 148, // 2256-2263 +144, 140, 138, 129, 126, 119, 115, 115, // 2264-2271 +111, 112, 112, 112, 116, 119, 124, 126, // 2272-2279 +133, 134, 136, 139, 138, 139, 136, 134, // 2280-2287 +132, 127, 124, 121, 116, 114, 111, 109, // 2288-2295 +108, 110, 112, 112, 120, 125, 124, 139, // 2296-2303 +138, 143, 149, 146, 151, 148, 147, 142, // 2304-2311 +140, 134, 127, 124, 116, 115, 112, 111, // 2312-2319 +112, 112, 114, 118, 121, 124, 130, 134, // 2320-2327 +135, 138, 138, 138, 138, 135, 133, 131, // 2328-2335 +125, 123, 119, 115, 112, 110, 109, 108, // 2336-2343 +111, 112, 114, 122, 124, 128, 140, 138, // 2344-2351 +145, 148, 147, 151, 147, 146, 142, 139, // 2352-2359 +132, 128, 123, 116, 116, 112, 111, 113, // 2360-2367 +113, 115, 119, 121, 126, 131, 133, 135, // 2368-2375 +138, 138, 138, 137, 135, 133, 131, 125, // 2376-2383 +123, 120, 115, 114, 111, 110, 109, 110, // 2384-2391 +113, 114, 118, 126, 125, 135, 140, 139, // 2392-2399 +148, 146, 149, 148, 146, 143, 140, 136, // 2400-2407 +129, 126, 120, 116, 116, 112, 112, 115, // 2408-2415 +114, 119, 121, 124, 129, 132, 134, 136, // 2416-2423 +138, 136, 138, 135, 133, 132, 128, 124, // 2424-2431 +122, 117, 116, 112, 111, 110, 109, 112, // 2432-2439 +113, 115, 120, 126, 127, 137, 139, 141, // 2440-2447 +148, 144, 149, 147, 144, 143, 139, 134, // 2448-2455 +129, 125, 119, 116, 116, 112, 115, 115, // 2456-2463 +115, 120, 121, 125, 130, 131, 134, 136, // 2464-2471 +136, 136, 137, 134, 133, 131, 125, 124, // 2472-2479 +121, 117, 116, 112, 112, 111, 110, 112, // 2480-2487 +114, 116, 119, 128, 126, 134, 140, 139, // 2488-2495 +147, 144, 147, 147, 144, 143, 140, 135, // 2496-2503 +130, 126, 121, 117, 118, 114, 114, 116, // 2504-2511 +115, 120, 121, 123, 129, 131, 133, 135, // 2512-2519 +136, 135, 136, 134, 133, 131, 128, 125, // 2520-2527 +123, 119, 117, 115, 112, 112, 110, 111, // 2528-2535 +112, 115, 117, 120, 129, 126, 137, 139, // 2536-2543 +140, 148, 143, 148, 146, 144, 142, 139, // 2544-2551 +135, 129, 127, 120, 118, 118, 113, 116, // 2552-2559 +116, 115, 121, 121, 125, 129, 131, 133, // 2560-2567 +135, 136, 135, 136, 133, 133, 131, 126, // 2568-2575 +125, 122, 119, 118, 115, 112, 112, 111, // 2576-2583 +109, 112, 113, 117, 119, 125, 130, 130, // 2584-2591 +142, 138, 144, 147, 144, 149, 144, 144, // 2592-2599 +141, 138, 133, 129, 124, 119, 118, 116, // 2600-2607 +114, 116, 115, 118, 121, 122, 128, 130, // 2608-2615 +131, 133, 135, 134, 135, 135, 132, 132, // 2616-2623 +129, 126, 124, 121, 119, 116, 114, 112, // 2624-2631 +112, 111, 111, 112, 114, 118, 119, 127, // 2632-2639 +130, 132, 143, 138, 146, 147, 146, 149, // 2640-2647 +145, 144, 141, 138, 132, 129, 124, 119, // 2648-2655 +118, 115, 115, 116, 115, 118, 120, 123, // 2656-2663 +126, 129, 131, 133, 134, 135, 134, 135, // 2664-2671 +133, 132, 130, 128, 125, 121, 119, 118, // 2672-2679 +114, 113, 112, 111, 111, 112, 113, 115, // 2680-2687 +120, 121, 129, 134, 133, 143, 141, 146, // 2688-2695 +149, 146, 149, 146, 143, 140, 137, 131, // 2696-2703 +127, 123, 119, 117, 115, 114, 115, 115, // 2704-2711 +117, 120, 121, 125, 129, 130, 133, 134, // 2712-2719 +134, 135, 134, 133, 133, 130, 129, 125, // 2720-2727 +122, 119, 118, 115, 113, 112, 111, 112, // 2728-2735 +112, 112, 115, 118, 123, 124, 131, 136, // 2736-2743 +135, 144, 143, 146, 150, 146, 149, 146, // 2744-2751 +143, 140, 136, 131, 126, 122, 118, 116, // 2752-2759 +114, 112, 114, 114, 116, 119, 121, 124, // 2760-2767 +128, 130, 133, 134, 135, 135, 135, 134, // 2768-2775 +133, 131, 129, 125, 123, 119, 118, 115, // 2776-2783 +114, 112, 112, 112, 112, 114, 115, 118, // 2784-2791 +120, 124, 129, 131, 139, 138, 143, 147, // 2792-2799 +143, 150, 147, 147, 146, 143, 140, 135, // 2800-2807 +130, 124, 121, 116, 114, 113, 111, 112, // 2808-2815 +113, 115, 118, 120, 124, 127, 130, 133, // 2816-2823 +135, 136, 136, 136, 135, 134, 131, 130, // 2824-2831 +128, 123, 121, 118, 116, 115, 114, 113, // 2832-2839 +113, 114, 115, 116, 118, 120, 123, 125, // 2840-2847 +130, 133, 135, 140, 140, 143, 146, 143, // 2848-2855 +148, 144, 143, 143, 138, 135, 130, 125, // 2856-2863 +121, 118, 114, 112, 112, 111, 112, 115, // 2864-2871 +115, 121, 122, 126, 131, 132, 135, 136, // 2872-2879 +137, 137, 136, 135, 133, 131, 129, 125, // 2880-2887 +123, 120, 119, 117, 116, 115, 115, 116, // 2888-2895 +116, 118, 120, 121, 123, 124, 128, 128, // 2896-2903 +131, 133, 134, 136, 139, 138, 142, 142, // 2904-2911 +139, 143, 138, 139, 137, 132, 130, 125, // 2912-2919 +121, 119, 116, 114, 114, 114, 114, 116, // 2920-2927 +119, 120, 125, 128, 130, 134, 134, 136, // 2928-2935 +136, 135, 136, 134, 133, 131, 129, 125, // 2936-2943 +124, 122, 120, 120, 118, 118, 118, 118, // 2944-2951 +120, 120, 121, 123, 124, 125, 125, 126, // 2952-2959 +128, 127, 129, 131, 130, 133, 134, 131, // 2960-2967 +138, 135, 136, 139, 135, 138, 134, 133, // 2968-2975 +131, 127, 124, 121, 120, 118, 118, 117, // 2976-2983 +117, 120, 120, 123, 126, 126, 131, 132, // 2984-2991 +134, 135, 134, 135, 134, 133, 131, 130, // 2992-2999 +128, 125, 125, 123, 122, 121, 120, 121, // 3000-3007 +120, 121, 121, 123, 123, 124, 124, 124, // 3008-3015 +124, 123, 124, 124, 123, 124, 125, 125, // 3016-3023 +128, 131, 130, 134, 136, 135, 140, 137, // 3024-3031 +139, 138, 135, 134, 131, 128, 124, 123, // 3032-3039 +120, 119, 119, 118, 119, 120, 122, 124, // 3040-3047 +126, 129, 131, 133, 133, 134, 134, 133, // 3048-3055 +133, 131, 130, 129, 125, 125, 124, 123, // 3056-3063 +122, 121, 121, 122, 122, 122, 123, 123, // 3064-3071 +124, 124, 124, 124, 123, 123, 123, 122, // 3072-3079 +122, 123, 124, 125, 125, 130, 131, 132, // 3080-3087 +137, 135, 139, 139, 138, 140, 136, 135, // 3088-3095 +133, 130, 126, 124, 121, 119, 119, 118, // 3096-3103 +118, 120, 120, 123, 125, 126, 129, 131, // 3104-3111 +131, 133, 132, 131, 132, 130, 130, 129, // 3112-3119 +126, 125, 124, 124, 124, 123, 123, 124, // 3120-3127 +123, 124, 124, 124, 125, 125, 125, 125, // 3128-3135 +125, 124, 124, 123, 122, 122, 121, 122, // 3136-3143 +123, 124, 125, 130, 130, 131, 137, 135, // 3144-3151 +139, 139, 138, 140, 136, 135, 133, 130, // 3152-3159 +126, 124, 121, 120, 119, 119, 119, 120, // 3160-3167 +120, 123, 124, 125, 127, 129, 130, 130, // 3168-3175 +131, 131, 131, 131, 130, 130, 129, 127, // 3176-3183 +128, 126, 126, 125, 125, 125, 125, 125, // 3184-3191 +125, 125, 125, 125, 125, 124, 124, 124, // 3192-3199 +123, 123, 122, 122, 121, 122, 123, 123, // 3200-3207 +125, 125, 130, 131, 133, 136, 135, 139, // 3208-3215 +138, 138, 138, 135, 135, 131, 129, 126, // 3216-3223 +124, 122, 120, 120, 119, 120, 121, 121, // 3224-3231 +124, 124, 126, 129, 129, 131, 130, 131, // 3232-3239 +131, 131, 131, 130, 130, 129, 129, 128, // 3240-3247 +128, 126, 125, 125, 124, 124, 124, 124, // 3248-3255 +124, 124, 124, 124, 124, 124, 124, 124, // 3256-3263 +124, 123, 123, 123, 123, 122, 123, 124, // 3264-3271 +124, 127, 130, 130, 133, 135, 134, 138, // 3272-3279 +136, 136, 138, 135, 135, 133, 129, 129, // 3280-3287 +125, 123, 123, 121, 120, 121, 121, 121, // 3288-3295 +123, 123, 124, 126, 126, 129, 129, 129, // 3296-3303 +130, 129, 130, 130, 129, 130, 129, 129, // 3304-3311 +128, 127, 126, 125, 125, 124, 125, 124, // 3312-3319 +124, 124, 124, 124, 124, 124, 124, 124, // 3320-3327 +124, 124, 124, 123, 124, 123, 123, 124, // 3328-3335 +125, 125, 125, 131, 127, 133, 135, 131, // 3336-3343 +139, 135, 136, 138, 134, 135, 133, 130, // 3344-3351 +129, 125, 123, 122, 121, 119, 120, 120, // 3352-3359 +120, 123, 122, 124, 126, 125, 129, 130, // 3360-3367 +129, 131, 130, 131, 131, 130, 131, 130, // 3368-3375 +129, 129, 128, 126, 125, 125, 124, 124, // 3376-3383 +124, 124, 124, 123, 124, 124, 124, 125, // 3384-3391 +124, 124, 124, 124, 124, 124, 124, 123, // 3392-3399 +124, 124, 127, 125, 130, 130, 129, 136, // 3400-3407 +131, 137, 137, 134, 139, 134, 134, 133, // 3408-3415 +130, 129, 125, 124, 122, 121, 120, 120, // 3416-3423 +121, 120, 123, 123, 124, 128, 125, 129, // 3424-3431 +130, 130, 131, 130, 131, 131, 130, 130, // 3432-3439 +130, 129, 127, 128, 126, 125, 125, 124, // 3440-3447 +124, 124, 124, 124, 124, 124, 124, 124, // 3448-3455 +125, 124, 124, 124, 124, 124, 124, 124, // 3456-3463 +123, 124, 124, 127, 125, 129, 131, 129, // 3464-3471 +136, 133, 135, 138, 133, 139, 135, 133, // 3472-3479 +134, 129, 129, 126, 123, 122, 121, 120, // 3480-3487 +120, 121, 120, 122, 123, 124, 128, 126, // 3488-3495 +129, 129, 130, 131, 130, 131, 131, 130, // 3496-3503 +130, 129, 129, 128, 127, 126, 125, 125, // 3504-3511 +124, 124, 124, 124, 124, 124, 124, 124, // 3512-3519 +124, 125, 125, 124, 125, 124, 124, 124, // 3520-3527 +124, 124, 124, 124, 125, 128, 128, 129, // 3528-3535 +132, 129, 134, 134, 132, 138, 133, 135, // 3536-3543 +135, 131, 133, 130, 128, 126, 123, 122, // 3544-3551 +121, 120, 120, 121, 121, 121, 124, 124, // 3552-3559 +125, 129, 127, 130, 130, 130, 131, 130, // 3560-3567 +130, 130, 129, 129, 129, 127, 126, 126, // 3568-3575 +125, 125, 125, 124, 124, 124, 124, 125, // 3576-3583 +124, 125, 125, 124, 125, 124, 124, 125, // 3584-3591 +124, 124, 125, 124, 124, 125, 124, 128, // 3592-3599 +127, 128, 131, 131, 131, 136, 132, 135, // 3600-3607 +136, 133, 136, 133, 131, 131, 127, 126, // 3608-3615 +124, 122, 121, 121, 120, 120, 122, 122, // 3616-3623 +123, 125, 125, 129, 129, 130, 131, 130, // 3624-3631 +131, 131, 130, 130, 129, 129, 127, 128, // 3632-3639 +126, 125, 125, 124, 125, 124, 124, 124, // 3640-3647 +124, 124, 125, 124, 125, 125, 124, 125, // 3648-3655 +124, 125, 125, 124, 125, 125, 124, 125, // 3656-3663 +125, 125, 128, 127, 129, 130, 131, 132, // 3664-3671 +134, 134, 134, 135, 134, 134, 134, 131, // 3672-3679 +130, 128, 125, 124, 123, 122, 121, 121, // 3680-3687 +121, 122, 123, 124, 125, 128, 127, 130, // 3688-3695 +130, 131, 131, 130, 130, 130, 129, 128, // 3696-3703 +128, 127, 127, 125, 125, 125, 125, 124, // 3704-3711 +125, 124, 125, 125, 124, 125, 125, 125, // 3712-3719 +125, 125, 125, 125, 124, 125, 125, 125, // 3720-3727 +125, 125, 126, 126, 127, 127, 128, 129, // 3728-3735 +130, 131, 131, 133, 133, 133, 134, 133, // 3736-3743 +133, 133, 131, 131, 129, 128, 126, 124, // 3744-3751 +124, 123, 122, 123, 123, 123, 124, 125, // 3752-3759 +125, 128, 128, 129, 129, 129, 129, 129, // 3760-3767 +129, 127, 128, 126, 125, 125, 125, 124, // 3768-3775 +124, 124, 124, 125, 124, 125, 125, 125, // 3776-3783 +125, 125, 125, 125, 125, 125, 125, 125, // 3784-3791 +125, 126, 126, 128, 128, 128, 129, 130, // 3792-3799 +130, 131, 132, 132, 133, 133, 133, 133, // 3800-3807 +132, 131, 130, 130, 129, 128, 125, 125, // 3808-3815 +124, 124, 123, 123, 124, 124, 124, 125, // 3816-3823 +125, 126, 127, 128, 128, 127, 128, 126, // 3824-3831 +127, 125, 125, 125, 125, 125, 125, 125, // 3832-3839 +125, 125, 126, 128, 126, 128, 127, 126, // 3840-3847 +128, 126, 126, 126, 125, 126, 125, 125, // 3848-3855 +126, 126, 128, 127, 129, 129, 129, 130, // 3856-3863 +130, 130, 130, 130, 129, 129, 129, 128, // 3864-3871 +128, 127, 128, 128, 126, 128, 127, 128, // 3872-3879 +127, 128, 127, 128, 127, 128, 127, 128, // 3880-3887 +126, 125, 125, 125, 125, 125, 125, 125, // 3888-3895 +125, 125, 126, 126, 128, 127, 128, 127, // 3896-3903 +128, 127, 128, 127, 127, 126, 126, 125, // 3904-3911 +125, 125, 125, 126, 126, 128, 126, 127, // 3912-3919 +128, 127, 128, 127, 128, 128, 127, 128, // 3920-3927 +127, 128, 126, 126, 128, 126, 128, 127, // 3928-3935 +128, 127, 128, 127, 128, 127, 128, 127, // 3936-3943 +128, 127, 128, 128, 126, 128, 127, 128, // 3944-3951 +128, 128, 127, 128, 127, 128, 128, 129, // 3952-3959 +129, 129, 129, 127, 129, 127, 129, 129, // 3960-3967 +127, 128, 127, 128}; + +const char Space[NUM_ELEMENTS] = {}; + +const char Del[NUM_ELEMENTS] = {}; + +int main() +{ + int value = 0; + p2.mode(PullUp); + p3.mode(PullUp); + p4.mode(PullUp); + p5.mode(PullUp); + p6.mode(PullUp); + p7.mode(PullUp); + p8.mode(PullUp); + p9.mode(PullUp); + p10.mode(PullUp); + p11.mode(PullUp); + p12.mode(PullUp); + p13.mode(PullUp); + + for(;;) + { + if(p2 == 0){ + value |= 0x01; + } + if(p3 == 0){ + value |= 0x02; + } + if(p4 == 0){ + value |= 0x04; + } + if(p5 == 0){ + value |= 0x08; + } + if(p6 == 0){ + value |= 0x10; + } + if(p7 == 0){ + value |= 0x20; + } + if(p8 == 0){ + value |= 0x040; + } + if(p9 == 0){ + value |= 0x080; + } + if(p10 == 0){ + value |= 0x0100; + } + if(p11 == 0){ //space + value = 512; + } + if(p12 == 0){ //backspace + value = 513; + } + + + if(value!=0) + { + led = 0; + } + else + { + led = 1; + } + pc.printf("%d\n", value); + + if(pc.readable()) + { + led2 = 0; + switch(pc.getc()) + { + case 'a': + case 'A': + Play_Tone((char *)A, sizeof(A)); + break; + + case 'b': + case 'B': + Play_Tone((char *)B, sizeof(B)); + break; + + case 'c': + case 'C': + Play_Tone((char *)C, sizeof(C)); + break; + + case 'd': + case 'D': + Play_Tone((char *)D, sizeof(D)); + break; + + case 'e': + case 'E': + Play_Tone((char *)E, sizeof(E)); + break; + + case 'f': + case 'F': + Play_Tone((char *)F, sizeof(F)); + break; + + case 'g': + case 'G': + Play_Tone((char *)G, sizeof(G)); + break; + + case 'h': + case 'H': + Play_Tone((char *)H, sizeof(H)); + break; + + case 'i': + case 'I': + Play_Tone((char *)I, sizeof(I)); + break; + + case 'j': + case 'J': + Play_Tone((char *)J, sizeof(J)); + break; + + case 'k': + case 'K': + Play_Tone((char *)K, sizeof(K)); + break; + + case 'l': + case 'L': + Play_Tone((char *)L, sizeof(L)); + break; + + case 'm': + case 'M': + Play_Tone((char *)M, sizeof(M)); + break; + + case 'n': + case 'N': + Play_Tone((char *)N, sizeof(N)); + break; + + case 'o': + case 'O': + Play_Tone((char *)O, sizeof(O)); + break; + + case 'p': + case 'P': + Play_Tone((char *)P, sizeof(P)); + break; + + case 'q': + case 'Q': + Play_Tone((char *)Q, sizeof(Q)); + break; + + case 'r': + case 'R': + Play_Tone((char *)R, sizeof(R)); + break; + + case 's': + case 'S': + Play_Tone((char *)S, sizeof(S)); + break; + + case 't': + case 'T': + Play_Tone((char *)T, sizeof(T)); + break; + + case 'v': + case 'V': + Play_Tone((char *)V, sizeof(V)); + break; + + case 'u': + case 'U': + Play_Tone((char *)U, sizeof(U)); + break; + + case 'w': + case 'W': + Play_Tone((char *)W, sizeof(W)); + break; + + case 'x': + case 'X': + Play_Tone((char *)X, sizeof(X)); + break; + + case 'y': + case 'Y': + Play_Tone((char *)Y, sizeof(Y)); + break; + + case 'z': + case 'Z': + Play_Tone((char *)Z, sizeof(Z)); + break; + + + + default: + led2 = 1; + break; + } + } + value = 0; + } + + + + +} + + +/******************************************************************************* +* Function Name: Play_Tone +******************************************************************************** +* +* Summary: +* Blocking function that 'plays' an array by writing to the SPI +* +* Parameters: +* int *array: Pointer to the array containing 1-bit tune data +* int len : Length of the array +* +* Return: +* None +* +*******************************************************************************/ +int Play_Tone(char *array, int len) +{ + int index = 0; + int response = 0; + int i=0; + while(index < len) + { + pin.write_u16((unsigned short)(array[index])<<4); + wait(1.0/8000); + index = index+1; + } + +} + +int Test_All_Alphabets() +{ + Play_Tone((char *)A, sizeof(A)); + wait_ms(100); + Play_Tone((char *)B, sizeof(B)); + wait_ms(100); + Play_Tone((char *)C, sizeof(C)); + wait_ms(100); + Play_Tone((char *)D, sizeof(D)); + wait_ms(100); + Play_Tone((char *)E, sizeof(E)); + wait_ms(100); + Play_Tone((char *)F, sizeof(F)); + wait_ms(100); + Play_Tone((char *)G, sizeof(G)); + wait_ms(100); + Play_Tone((char *)H, sizeof(H)); + wait_ms(100); + Play_Tone((char *)I, sizeof(I)); + wait_ms(100); + Play_Tone((char *)J, sizeof(J)); + wait_ms(100); + Play_Tone((char *)K, sizeof(K)); + wait_ms(100); + Play_Tone((char *)L, sizeof(L)); + wait_ms(100); + Play_Tone((char *)M, sizeof(M)); + wait_ms(100); + Play_Tone((char *)N, sizeof(N)); + wait_ms(100); + Play_Tone((char *)O, sizeof(O)); + wait_ms(100); + Play_Tone((char *)P, sizeof(P)); + wait_ms(100); + Play_Tone((char *)Q, sizeof(Q)); + wait_ms(100); + Play_Tone((char *)R, sizeof(R)); + wait_ms(100); + Play_Tone((char *)S, sizeof(S)); + wait_ms(100); + Play_Tone((char *)T, sizeof(T)); + wait_ms(100); + Play_Tone((char *)U, sizeof(U)); + wait_ms(100); + Play_Tone((char *)V, sizeof(V)); + wait_ms(100); + Play_Tone((char *)W, sizeof(W)); + wait_ms(100); + Play_Tone((char *)X, sizeof(X)); + wait_ms(100); + Play_Tone((char *)Y, sizeof(Y)); + wait_ms(100); + Play_Tone((char *)Z, sizeof(Z)); + wait_ms(100); +} + +/* Processing Code for the Keyboard */ +///** +// * Simple Read +// * +// * Read data from the serial port and change the color of a rectangle +// * when a switch connected to a Wiring or Arduino board is pressed and released. +// */ +// +//import processing.serial.*; +// +//int SIZE_OF_BOX = 100; +//int GREY = 204; +//int BLACK = 0; +//int WHITE = 255; +//int NUM_BTNS = 9; +//int i = 1; +//int character = 0; +//char array[] = { +//0, // 0 +//0, // 1 +//0, // 2 +//0, // 3 +//0, // 4 +//0, // 5 +//0, // 6 +//0, // 7 +//0, // 8 +//0, // 9 +//0, // 10 +//0, // 11 +//0, // 12 +//0, // 13 +//0, // 14 +//0, // 15 +//0, // 16 +//0, // 17 +//0, // 18 +//0, // 19 +//0, // 20 +//0, // 21 +//0, // 22 +//0, // 23 +//0, // 24 +//0, // 25 +//0, // 26 +//0, // 27 +//0, // 28 +//0, // 29 +//0, // 30 +//0, // 31 +//0, // 32 +//0, // 33 +//0, // 34 +//0, // 35 +//0, // 36 +//0, // 37 +//0, // 38 +//0, // 39 +//0, // 40 +//0, // 41 +//0, // 42 +//0, // 43 +//0, // 44 +//0, // 45 +//0, // 46 +//0, // 47 +//0, // 48 +//0, // 49 +//0, // 50 +//0, // 51 +//0, // 52 +//0, // 53 +//0, // 54 +//0, // 55 +//0, // 56 +//0, // 57 +//0, // 58 +//0, // 59 +//0, // 60 +//0, // 61 +//0, // 62 +//0, // 63 +//0, // 64 +//0, // 65 +//0, // 66 +//0, // 67 +//0, // 68 +//0, // 69 +//0, // 70 +//0, // 71 +//0, // 72 +//0, // 73 +//0, // 74 +//0, // 75 +//0, // 76 +//0, // 77 +//0, // 78 +//0, // 79 +//0, // 80 +//0, // 81 +//0, // 82 +//0, // 83 +//0, // 84 +//0, // 85 +//0, // 86 +//0, // 87 +//0, // 88 +//'D', // 89 +//0, // 90 +//0, // 91 +//0, // 92 +//0, // 93 +//0, // 94 +//'F', // 95 +//0, // 96 +//0, // 97 +//0, // 98 +//0, // 99 +//0, // 100 +//0, // 101 +//0, // 102 +//0, // 103 +//0, // 104 +//0, // 105 +//0, // 106 +//0, // 107 +//0, // 108 +//0, // 109 +//0, // 110 +//0, // 111 +//0, // 112 +//0, // 113 +//0, // 114 +//0, // 115 +//0, // 116 +//0, // 117 +//0, // 118 +//0, // 119 +//0, // 120 +//0, // 121 +//0, // 122 +//0, // 123 +//0, // 124 +//0, // 125 +//0, // 126 +//'P', // 127 +//0, // 128 +//0, // 129 +//0, // 130 +//0, // 131 +//0, // 132 +//0, // 133 +//0, // 134 +//0, // 135 +//0, // 136 +//0, // 137 +//0, // 138 +//0, // 139 +//0, // 140 +//0, // 141 +//0, // 142 +//0, // 143 +//0, // 144 +//0, // 145 +//'I', // 146 +//0, // 147 +//0, // 148 +//'Y', // 149 +//0, // 150 +//'T', // 151 +//0, // 152 +//0, // 153 +//0, // 154 +//0, // 155 +//0, // 156 +//0, // 157 +//0, // 158 +//0, // 159 +//0, // 160 +//0, // 161 +//0, // 162 +//0, // 163 +//0, // 164 +//0, // 165 +//0, // 166 +//0, // 167 +//0, // 168 +//0, // 169 +//0, // 170 +//0, // 171 +//0, // 172 +//0, // 173 +//0, // 174 +//0, // 175 +//0, // 176 +//0, // 177 +//0, // 178 +//0, // 179 +//0, // 180 +//0, // 181 +//0, // 182 +//0, // 183 +//0, // 184 +//0, // 185 +//0, // 186 +//0, // 187 +//0, // 188 +//'V', // 189 +//0, // 190 +//0, // 191 +//0, // 192 +//0, // 193 +//0, // 194 +//0, // 195 +//0, // 196 +//0, // 197 +//0, // 198 +//0, // 199 +//0, // 200 +//0, // 201 +//0, // 202 +//0, // 203 +//0, // 204 +//0, // 205 +//0, // 206 +//0, // 207 +//0, // 208 +//0, // 209 +//0, // 210 +//0, // 211 +//0, // 212 +//0, // 213 +//0, // 214 +//0, // 215 +//0, // 216 +//0, // 217 +//0, // 218 +//'B', // 219 +//0, // 220 +//0, // 221 +//0, // 222 +//0, // 223 +//0, // 224 +//0, // 225 +//0, // 226 +//0, // 227 +//0, // 228 +//0, // 229 +//0, // 230 +//0, // 231 +//0, // 232 +//0, // 233 +//0, // 234 +//0, // 235 +//0, // 236 +//0, // 237 +//0, // 238 +//0, // 239 +//0, // 240 +//0, // 241 +//0, // 242 +//0, // 243 +//0, // 244 +//0, // 245 +//0, // 246 +//0, // 247 +//0, // 248 +//0, // 249 +//0, // 250 +//0, // 251 +//0, // 252 +//0, // 253 +//0, // 254 +//'R', // 255 +//0, // 256 +//0, // 257 +//0, // 258 +//0, // 259 +//0, // 260 +//0, // 261 +//0, // 262 +//0, // 263 +//0, // 264 +//0, // 265 +//0, // 266 +//0, // 267 +//0, // 268 +//0, // 269 +//0, // 270 +//0, // 271 +//0, // 272 +//0, // 273 +//0, // 274 +//0, // 275 +//0, // 276 +//0, // 277 +//0, // 278 +//0, // 279 +//0, // 280 +//0, // 281 +//0, // 282 +//0, // 283 +//0, // 284 +//0, // 285 +//0, // 286 +//0, // 287 +//0, // 288 +//0, // 289 +//0, // 290 +//0, // 291 +//0, // 292 +//0, // 293 +//0, // 294 +//0, // 295 +//0, // 296 +//0, // 297 +//0, // 298 +//0, // 299 +//0, // 300 +//0, // 301 +//0, // 302 +//0, // 303 +//0, // 304 +//0, // 305 +//0, // 306 +//0, // 307 +//0, // 308 +//0, // 309 +//0, // 310 +//0, // 311 +//0, // 312 +//0, // 313 +//0, // 314 +//0, // 315 +//0, // 316 +//0, // 317 +//0, // 318 +//0, // 319 +//0, // 320 +//0, // 321 +//0, // 322 +//0, // 323 +//0, // 324 +//0, // 325 +//0, // 326 +//0, // 327 +//0, // 328 +//0, // 329 +//0, // 330 +//0, // 331 +//0, // 332 +//0, // 333 +//0, // 334 +//0, // 335 +//0, // 336 +//0, // 337 +//0, // 338 +//0, // 339 +//0, // 340 +//'X', // 341 +//0, // 342 +//0, // 343 +//0, // 344 +//0, // 345 +//0, // 346 +//0, // 347 +//0, // 348 +//'K', // 349 +//0, // 350 +//0, // 351 +//0, // 352 +//0, // 353 +//0, // 354 +//0, // 355 +//0, // 356 +//0, // 357 +//0, // 358 +//0, // 359 +//0, // 360 +//0, // 361 +//0, // 362 +//0, // 363 +//0, // 364 +//0, // 365 +//0, // 366 +//'N', // 367 +//0, // 368 +//0, // 369 +//0, // 370 +//0, // 371 +//0, // 372 +//0, // 373 +//0, // 374 +//0, // 375 +//0, // 376 +//0, // 377 +//0, // 378 +//0, // 379 +//0, // 380 +//'H', // 381 +//0, // 382 +//'A', // 383 +//0, // 384 +//0, // 385 +//0, // 386 +//0, // 387 +//0, // 388 +//0, // 389 +//0, // 390 +//0, // 391 +//0, // 392 +//0, // 393 +//0, // 394 +//0, // 395 +//0, // 396 +//0, // 397 +//0, // 398 +//0, // 399 +//0, // 400 +//0, // 401 +//0, // 402 +//0, // 403 +//0, // 404 +//0, // 405 +//0, // 406 +//0, // 407 +//0, // 408 +//0, // 409 +//0, // 410 +//0, // 411 +//0, // 412 +//0, // 413 +//0, // 414 +//0, // 415 +//0, // 416 +//0, // 417 +//0, // 418 +//0, // 419 +//0, // 420 +//0, // 421 +//0, // 422 +//0, // 423 +//0, // 424 +//0, // 425 +//0, // 426 +//0, // 427 +//0, // 428 +//0, // 429 +//0, // 430 +//0, // 431 +//0, // 432 +//0, // 433 +//0, // 434 +//0, // 435 +//0, // 436 +//0, // 437 +//'S', // 438 +//0, // 439 +//0, // 440 +//0, // 441 +//0, // 442 +//0, // 443 +//0, // 444 +//0, // 445 +//0, // 446 +//'G', // 447 +//0, // 448 +//0, // 449 +//0, // 450 +//0, // 451 +//0, // 452 +//0, // 453 +//0, // 454 +//0, // 455 +//0, // 456 +//'L', // 457 +//0, // 458 +//0, // 459 +//0, // 460 +//0, // 461 +//0, // 462 +//'C', // 463 +//0, // 464 +//0, // 465 +//0, // 466 +//0, // 467 +//0, // 468 +//0, // 469 +//0, // 470 +//'Z', // 471 +//0, // 472 +//0, // 473 +//0, // 474 +//'Q', // 475 +//0, // 476 +//0, // 477 +//0, // 478 +//'E', // 479 +//0, // 480 +//0, // 481 +//0, // 482 +//0, // 483 +//'J', // 484 +//0, // 485 +//0, // 486 +//0, // 487 +//0, // 488 +//0, // 489 +//0, // 490 +//0, // 491 +//0, // 492 +//'U', // 493 +//0, // 494 +//'O', // 495 +//0, // 496 +//0, // 497 +//0, // 498 +//0, // 499 +//0, // 500 +//0, // 501 +//0, // 502 +//0, // 503 +//0, // 504 +//0, // 505 +//0, // 506 +//0, // 507 +//0, // 508 +//'W', // 509 +//0, // 510 +//'M', // 511 +//' ', // 512 - Space +//10, // 513 backspace +// +//}; +// +// +//Serial myPort; // Create object from Serial class +//int val;// Data received from the serial port +//int aggregate_val; +//int temp; +//int color_array[] = {0,0,0,0,0,0,0,0,0}; +//int timeout = 1; +//String words = ""; +//int word_len = 0; +//char current_key = 1; +// +//void setup() +//{ +// size(300, 400); // to get 9 grids of 100x100 +// String portName = Serial.list()[0]; +// myPort = new Serial(this, portName, 9600); +// textFont(createFont("Georgia", 12)); +// background(0); +//} +// +//void draw() +//{ +// background(0); // Set background to black +// +// timeout = millis();; +// aggregate_val = 0; +// while((millis()-timeout) < 1000) +// { +// if(myPort.available() > 0) { // If data is available, +// val = 0; +// i = 100; +// temp = myPort.read(); // read it and store it in val +// while(temp != '\n' & i>=1) +// { +// val += (temp-'0')*(i); +// while(myPort.available() == 0); //wait for data +// temp = myPort.read(); // read it and store it in val +// i /= 10; +// } +// if(i!=0) +// { +// val = val/(i*10); +// } +// +// aggregate_val |= val; +// +// print("Aggregate Value: ", aggregate_val); +// +// if(val != 0) +// { +// timeout = millis(); +// } +// print("Timeout: ", millis()-timeout, '\n'); +// +// } +// } +// +// myPort.write(array[aggregate_val]); // send the char back to the board +// switch(array[aggregate_val]) +// { +// case 0: // null - no character +// current_key = 32; // Space - so that nothing seems to be entered :) +// break; +// +// case 10: +// current_key = 10; // backspace +// if(word_len != 0) +// { +// word_len--; +// words = words.substring(0, word_len); +// } +// break; +// +// default: +// current_key = array[aggregate_val]; +// words = words + current_key; +// word_len++; +// break; +// } +// +// text("Current key: " + current_key, 10, 320, 290, 330); +// text("Input Text: " + words, 10, 340, 290, 390); +// +// if(aggregate_val < 512) // 9 squares, 2^9 values :) +// for(int p = 0; p < 9; p++) +// { +// color_array[p] = (((aggregate_val) & (0x01<<p))>0 ? GREY : WHITE); +// } +// +// fill(color_array[0]); +// rect(0*SIZE_OF_BOX, 0*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[1]); +// rect(1*SIZE_OF_BOX, 0*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[2]); +// rect(2*SIZE_OF_BOX, 0*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[3]); +// rect(0*SIZE_OF_BOX, 1*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[4]); +// rect(1*SIZE_OF_BOX, 1*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[5]); +// rect(2*SIZE_OF_BOX, 1*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[6]); +// rect(0*SIZE_OF_BOX, 2*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[7]); +// rect(1*SIZE_OF_BOX, 2*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// fill(color_array[8]); +// rect(2*SIZE_OF_BOX, 2*SIZE_OF_BOX, SIZE_OF_BOX, SIZE_OF_BOX); +// +// +// +//}