/*** * This code is a part of EvoApproxLib library (ehw.fit.vutbr.cz/approxlib) distributed under The MIT License. * When used, please cite the following article(s): V. Mrazek, Z. Vasicek, L. Sekanina, H. Jiang and J. Han, "Scalable Construction of Approximate Multipliers With Formally Guaranteed Worst Case Error" in IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 26, no. 11, pp. 2572-2576, Nov. 2018. doi: 10.1109/TVLSI.2018.2856362 * This file contains a circuit from a sub-set of pareto optimal circuits with respect to the pwr and mae parameters ***/ // MAE% = 0.00032 % // MAE = 13653 // WCE% = 0.0015 % // WCE = 65535 // WCRE% = 300.00 % // EP% = 75.00 % // MRE% = 0.034 % // MSE = 35791.394e4 // PDK45_PWR = 2.130 mW // PDK45_AREA = 2576.5 um2 // PDK45_DELAY = 2.98 ns #include #include uint32_t mul16s_HF7(uint16_t A, uint16_t B) { uint32_t O; uint8_t n1007,n1000,n1002,n538,n539,n536,n537,n534,n535,n532,n533,n530,n531,O14,n408,n409,n402,n403,n400,n401,n406,n407,n404,n405,n392,n393,n390,n391,n396,n397,n394,n395,n398,n399,n240,n241,n242,n715,n244,n245,n246,n711,n248,n249,n941,n718,n719,n764,n947,n762,n761,n1279,n1278,n1277,n1276,n1275,n1274,n1273,n1272,n1271,n1270,n1479,n1478,n1475,n1474,n1477,n1476,n1471,n1470,n1473,n1472,n662,n663,n660,n661,n666,n667,n664,n889,n886,n887,n884,n885,n882,n883,n880,n881,n864,n865,n866,n867,n860,n861,n862,n863,n1611,n1610,n1613,n1612,n868,n869,n1617,n1616,n1589,n1588,n1581,n1580,n1583,n1582,n1585,n1584,n1587,n1586,n1057,n1056,n1055,n1054,n1053,n1052,n1051,n1050,O21,n1059,n1058,O1,n1294,n1297,n1296,n1291,n1290,n1293,n1292,n1299,n1298,n1123,n1122,n1121,n1120,n1127,n1126,n1125,n1124,n1129,n1128,n1702,n745,n744,n1683,n117,n746,n1685,n528,n521,n520,n523,n522,n525,n524,n527,n526,n415,n414,n417,n416,n411,n410,n413,n412,n419,n418,n742,n389,n388,n385,n384,n387,n386,n381,n380,n383,n382,n253,n700,n251,n250,n257,n256,n255,n254,n709,n708,n259,n258,O17,n1268,n1269,n1260,n1261,n1262,n1263,n1264,n1265,n1266,n1267,n1468,n1469,n1466,n1467,n1464,n1465,n1462,n1463,n1460,n1461,O6,n899,n898,n679,n678,n891,n674,n677,n676,n671,n670,n673,n672,n877,n876,n875,n874,n873,n872,n871,n870,n1602,n1603,n1600,n1601,n1606,n1607,n879,n878,n1598,n1599,n1592,n1593,n1590,n1591,n1596,n1597,n1594,n1595,n1040,n1041,n1042,n1043,n1044,n1045,n1046,n1047,n1048,n1049,n1286,n1287,n1284,n1285,n1282,n1283,n1280,n1281,n1289,n716,n717,n714,n243,n712,n713,n1138,n1139,n1134,n1135,n1136,n247,n1130,n1131,n1132,n1133,n327,n326,n325,n324,n323,n322,n321,n320,n1574,n1575,n1576,n758,n812,n1570,n943,n1571,n1572,n1573,n759,O16,n460,n461,n462,n463,n464,n465,n466,n467,n468,n469,O18,n268,n269,n266,n267,n264,n265,n262,n263,n260,n261,n1425,n284,n285,n286,n287,n280,n281,n282,n283,n289,n1459,n1458,n1453,n1452,n1451,n1450,n1457,n1456,n1455,n1454,n608,n609,n600,n601,n602,n603,n604,n605,n606,n607,n1637,n1636,n1635,n1634,n1633,n1632,n1631,n1630,n1639,n1638,n842,n843,n840,n841,n846,n847,n844,n845,n848,n849,n149,n114,n115,n148,n110,n111,n112,n113,n833,n118,n119,n888,n665,n1703,O23,n1701,n1707,n1706,n1705,n1704,n1709,n1708,n668,n669,O7,n928,n831,n1149,n1148,n1141,n1140,n1143,n1142,n1145,n1144,n1147,n1146,n1619,n1618,n834,n1615,n1614,n1720,n473,n472,n471,n470,n477,n476,n475,n474,n479,n478,n279,n278,n271,n270,n273,n272,n275,n274,n277,n276,n356,n425,n426,n297,n296,n295,n427,n293,n292,n291,n290,n420,n1448,n1449,n299,n353,O24,n423,n619,n618,n613,n612,n611,n610,n617,n616,n615,n614,n1620,n1621,n1622,n1623,n1624,n1625,n1626,n1627,n1628,n1629,n859,n858,n855,n854,n857,n856,n851,n850,n853,n852,n1657,n107,n106,n105,n104,n103,n102,n101,n100,n109,n108,n1718,n1719,n1715,n1716,n1717,n1710,n1711,n1712,n1713,n909,n905,n774,n1295,n904,O4,n775,n1158,n1159,n1152,n1153,n1150,n1151,n1156,n1157,n1154,n1155,n1652,n777,n770,n730,n448,n449,n446,n447,n444,n445,n442,n732,n440,n441,n733,n734,n227,n224,n225,n1447,n598,n599,n590,n591,n592,n593,n594,n595,n596,n597,n1431,n1430,n1433,n1432,n1435,n1434,n1437,n1436,n914,n1438,n916,n917,n910,n911,n912,n913,n626,n627,n624,n625,n622,n623,n620,n621,n628,n629,n1389,n1388,n1387,n1386,n1385,n1384,n1383,n1382,n1381,n1380,n828,n829,n1549,n1548,n832,n820,n821,n1547,n1546,O5,n1540,n1543,n827,n1555,n1552,n1553,n132,n133,n130,n131,n136,n835,n134,n135,n138,n139,n1099,n1098,O25,n1093,n1092,n1091,n1090,n1097,n1096,n1095,n1094,n1167,n1166,n1165,n1164,n1163,n1162,n1161,n1160,n1169,n1168,n1365,n1364,n1367,n1361,n1360,n1363,n1362,n1369,n1368,n1672,n1677,n1674,n459,n458,n451,n450,n453,n452,n455,n454,n457,n456,n589,n583,n582,n581,n580,n587,n586,n585,n584,n1422,n1423,n1420,n1421,n1426,n1427,n1424,n908,n907,n906,n1428,n1429,n903,n902,n901,n900,n631,n630,n633,n632,n635,n634,n637,n636,n639,n638,n1398,n1399,n1390,n1391,n1392,n1393,n1394,n1395,n1396,n1397,n839,n838,n1559,n1556,n1557,n1554,n830,n837,n836,n1550,n1551,n129,n128,n125,n124,n127,n126,n121,n120,n123,n122,n1084,n1085,n1086,n1087,n1080,n1081,n1082,n1083,n1088,n1089,n1170,n1171,n1172,n1173,n1174,n1175,n1176,n1177,n1178,n1179,n1376,n1377,n1374,n1375,n1372,n1373,n1370,n1371,n1378,n1379,n1444,n1445,n1446,n294,n1440,n1441,n1442,n1443,n298,n1073,n529,n706,n756,n757,n938,n939,n978,n1419,n1418,n932,n933,n930,n931,n1413,n937,n934,n1410,n976,n977,n206,n975,n972,n973,n482,n483,n480,n481,n338,n339,n484,n485,n334,n335,n488,n489,n330,n331,n332,n333,n806,n807,n804,n805,n802,n803,n800,n801,n808,n809,n1569,n1568,n1563,n1562,n1561,n1560,n1567,n1566,n1565,n1564,n158,n159,n150,n151,n152,n153,n154,n155,n156,n157,O27,n69,n68,n996,n997,n1189,n1188,n1185,n1184,n1187,n1186,n1181,n1180,n1183,n1182,n1343,n1342,n1341,n1340,n1347,n1346,n1345,n1344,n998,n1349,n1348,n999,n705,n790,n1655,n1654,n1656,n1651,n1650,n1408,n1409,n1653,n1400,n1401,n1402,n1403,n1404,n1405,n1406,n1407,n499,n498,n329,n328,n495,n494,n497,n496,n491,n490,n493,n492,n811,n810,n813,n1577,n815,n814,n817,n816,n819,n818,n1578,n1579,n925,n924,n927,n926,n921,n920,n923,n922,n143,n142,n141,n140,n929,n146,n145,n144,n74,n75,n76,n77,n70,n71,n72,n79,n701,n252,n703,n702,n1198,O8,n1196,n1197,n1194,n1195,n1192,n1193,n1190,n1191,n1358,n1359,n1354,n1355,n1356,n1357,n1350,n1351,n1352,n1353,O28,n1509,n1013,n1012,n1011,n1010,n1017,n1016,n1015,n1014,n798,n799,n796,n797,n794,n795,n792,n793,n1541,n791,n558,n559,n554,n555,n556,n557,n550,n551,n552,n553,O22,n318,n319,n312,n313,n310,n311,n316,n317,n314,n315,n1500,n1503,n1502,n1505,n1504,n1507,n1506,O9,n1508,n176,n177,n174,n175,n172,n173,n170,n171,n776,n178,n179,n950,n951,n952,n953,n954,n955,n772,n773,n958,n959,n778,n779,n771,O29,n956,n957,n675,n1219,n1218,n890,n1215,n1214,n1217,n1216,n1211,n1210,n1213,n1212,n892,n895,n894,n1691,n1690,n1693,n1692,n1695,n1694,n1697,n1696,n1699,n1698,n896,n1329,n1328,n1321,n1320,n1323,n1322,n1325,n1324,n1327,n1326,n1035,n1034,n1037,n1036,n1031,n1030,n1033,n1032,n1039,n1038,n1609,O19,n1605,n789,n788,n781,n780,n783,n782,n785,n784,n787,n549,n548,n547,n546,n545,n544,n543,n542,n541,n540,n341,n340,n343,n342,n345,n344,n347,n346,n305,n304,n307,n306,n301,n300,n303,n302,n309,n308,O11,n1513,n1510,n1511,n1516,n1517,n1514,n1515,n1518,n1519,n161,n160,n163,n162,n165,n164,n167,n166,n169,n168,n767,n766,n765,n940,n763,n946,n945,n760,n949,n948,n769,n768,n1208,n1209,n1206,n1207,n1204,n1205,n1202,n1203,n1200,n1201,n1682,n1417,n1680,n1681,n1686,n1687,n1684,n1416,n1688,n1689,n1415,n1414,n936,n1412,n1411,n935,n1338,n1339,n1332,n1333,n1330,n1331,n1336,n1337,n1334,n1335,n704,n707,n1026,n1027,n1024,n1025,n1022,n1023,n1020,n1021,n1028,n1029,n971,n486,n487,n336,n337,O15,O10,n578,n579,n572,n573,n570,n571,n576,n577,n574,n575,n680,n681,n682,n684,n685,n686,n687,n688,n689,n370,n371,n372,n373,n374,n375,n376,n377,n378,n379,n1137,n1529,n1528,n1527,n1526,n1525,n1524,n1523,n1522,n1521,n1520,O20,O26,n198,n199,n194,n195,n196,n197,n190,n191,n192,n193,n752,n753,n750,n751,n208,n209,n754,n755,n204,n205,n974,n207,n200,n201,n202,n203,n994,n995,n1239,n1238,n990,n991,n992,n993,n1233,n1232,n1231,n1230,n1237,n1236,n1235,n1234,n1307,n1306,n1305,n1304,n1303,n1302,n1301,n1300,n1659,n1658,n1309,n1308,n443,n85,n84,n87,n86,n81,n80,n83,n82,n1019,n1018,n89,n88,n710,n565,n564,n567,n566,n561,n560,n563,n562,n569,n568,n897,n693,n692,n691,n690,n697,n696,n695,n694,n699,n698,n363,n362,n361,n360,n367,n366,n365,n364,n369,n368,n1538,n1539,O13,n1530,n1531,n1532,n1533,n1534,n1535,n1536,n1537,n189,n188,n187,n185,n184,n183,n182,n181,n180,n969,n968,n749,n748,n219,n218,n961,n216,n215,n214,n213,n212,n211,n210,n1224,n1225,n1226,n1227,n1220,n1221,n1222,n1223,n1228,n1229,n987,n986,n985,n984,n983,n982,n981,n980,n989,n988,n963,O2,n1310,n1311,n1312,n1313,n1642,n1643,n1640,n1641,n1318,n1319,n965,n1648,n1649,n964,n967,n919,n98,n99,n1008,n1009,n92,n1005,n90,n91,n96,n97,n94,n95,n915,n741,n510,n511,n512,n513,n514,n515,n516,n517,n518,n519,O12,n1608,n217,n960,n747,n962,n428,n429,n358,n359,n424,n357,n354,n355,n352,n421,n350,n740,n743,n966,O30,n738,n739,n228,n229,n979,n222,n223,n220,n221,n226,n735,n736,n737,n1251,n1250,n1253,n1252,n1255,n1254,n1257,n1256,n1259,n1258,n1497,n1496,n1495,n1494,n1493,n1492,n1491,n1490,n1499,n1498,n644,n645,n646,n647,n640,n641,n642,n643,n648,n649,n1673,n1545,n1671,n1670,n1676,n1544,n1679,n1678,n822,n823,n824,n825,n826,n1542,n1079,n1078,n1071,n1070,O3,n1072,n1075,n1074,n1077,n1076,n970,n1104,n1107,n1106,n1101,n1100,n1103,n1102,n1109,n1108,n137,n918,n1003,n503,n502,n500,n507,n506,n505,n504,n509,n508,n1646,n1647,n1644,n942,n1314,n1315,n1316,n1317,n349,n348,n439,n438,n437,n436,n435,n434,n433,n432,n431,n430,O31,n235,n234,n237,n236,n231,n230,n232,n239,n238,n729,n728,n723,n722,n721,n720,n727,n726,n725,n724,n1242,n1243,n1240,n1241,n1246,n1247,n1244,n1245,n1248,n1249,n1480,n1481,n1482,n1483,n1484,n1485,n1486,n1487,n1488,n1489,n944,O0,n657,n656,n655,n654,n653,n652,n651,n650,n659,n658,n1668,n1669,n1664,n1665,n1666,n1667,n1660,n1661,n1662,n1663,n1068,n1069,n1062,n1063,n1060,n1061,n1066,n1067,n1064,n1065,n1116,n1117,n1114,n1115,n1112,n1113,n1110,n1111,n1118,n1119,n1512,n731,n1004,n1006; O0=0; O1=0; O2=((B >> 1)&1)&((A >> 1)&1); n1000=((B >> 4)&1)&((A >> 14)&1); n1020=((B >> 4)&1)&((A >> 15)&1); n1084=((B >> 13)&1)&((A >> 6)&1); n1092=((B >> 14)&1)&((A >> 5)&1); n1095=((B >> 15)&1)&((A >> 4)&1); n1097=((B >> 12)&1)&((A >> 7)&1); n1098=((B >> 11)&1)&((A >> 8)&1); n1099=((B >> 10)&1)&((A >> 9)&1); n110=((B >> 3)&1)&((A >> 3)&1); n1100=((B >> 9)&1)&((A >> 10)&1); n1101=((B >> 8)&1)&((A >> 11)&1); n1102=((B >> 7)&1)&((A >> 12)&1); n1103=((B >> 6)&1)&((A >> 13)&1); n1104=((B >> 5)&1)&((A >> 14)&1); n112=((B >> 5)&1)&((A >> 1)&1); n1124=((B >> 5)&1)&((A >> 15)&1); n113=((B >> 4)&1)&((A >> 2)&1); n114=((B >> 2)&1)&((A >> 4)&1); n115=((B >> 1)&1)&((A >> 5)&1); n1189=((B >> 15)&1)&((A >> 5)&1); n1190=((B >> 14)&1)&((A >> 6)&1); n1191=((B >> 13)&1)&((A >> 7)&1); n1192=((B >> 12)&1)&((A >> 8)&1); n1193=((B >> 11)&1)&((A >> 9)&1); n1194=((B >> 10)&1)&((A >> 10)&1); n1195=((B >> 9)&1)&((A >> 11)&1); n1196=((B >> 8)&1)&((A >> 12)&1); n1197=((B >> 7)&1)&((A >> 13)&1); n1198=((B >> 6)&1)&((A >> 14)&1); n1218=((B >> 6)&1)&((A >> 15)&1); n1268=((B >> 13)&1)&((A >> 8)&1); n1276=((B >> 14)&1)&((A >> 7)&1); n1280=((B >> 15)&1)&((A >> 6)&1); n1282=((B >> 12)&1)&((A >> 9)&1); n1283=((B >> 11)&1)&((A >> 10)&1); n1284=((B >> 10)&1)&((A >> 11)&1); n1285=((B >> 9)&1)&((A >> 12)&1); n1286=((B >> 8)&1)&((A >> 13)&1); n1287=((B >> 7)&1)&((A >> 14)&1); n1307=((B >> 7)&1)&((A >> 15)&1); n1358=((B >> 15)&1)&((A >> 7)&1); n1359=((B >> 14)&1)&((A >> 8)&1); n1360=((B >> 13)&1)&((A >> 9)&1); n1361=((B >> 12)&1)&((A >> 10)&1); n1362=((B >> 11)&1)&((A >> 11)&1); n1363=((B >> 10)&1)&((A >> 12)&1); n1364=((B >> 9)&1)&((A >> 13)&1); n1365=((B >> 8)&1)&((A >> 14)&1); n1385=((B >> 8)&1)&((A >> 15)&1); n140=((B >> 4)&1)&((A >> 3)&1); n142=((B >> 6)&1)&((A >> 1)&1); n1421=((B >> 13)&1)&((A >> 10)&1); n1429=((B >> 14)&1)&((A >> 9)&1); n143=((B >> 5)&1)&((A >> 2)&1); n1433=((B >> 15)&1)&((A >> 8)&1); n1435=((B >> 12)&1)&((A >> 11)&1); n1436=((B >> 11)&1)&((A >> 12)&1); n1437=((B >> 10)&1)&((A >> 13)&1); n1438=((B >> 9)&1)&((A >> 14)&1); n144=((B >> 3)&1)&((A >> 4)&1); n145=((B >> 2)&1)&((A >> 5)&1); n1458=((B >> 9)&1)&((A >> 15)&1); n146=((B >> 1)&1)&((A >> 6)&1); n1495=((B >> 15)&1)&((A >> 9)&1); n1496=((B >> 14)&1)&((A >> 10)&1); n1497=((B >> 13)&1)&((A >> 11)&1); n1498=((B >> 12)&1)&((A >> 12)&1); n1499=((B >> 11)&1)&((A >> 13)&1); n1500=((B >> 10)&1)&((A >> 14)&1); n1520=((B >> 10)&1)&((A >> 15)&1); n1542=((B >> 13)&1)&((A >> 12)&1); n1550=((B >> 14)&1)&((A >> 11)&1); n1554=((B >> 15)&1)&((A >> 10)&1); n1556=((B >> 12)&1)&((A >> 13)&1); n1557=((B >> 11)&1)&((A >> 14)&1); n1577=((B >> 11)&1)&((A >> 15)&1); n1600=((B >> 15)&1)&((A >> 11)&1); n1601=((B >> 14)&1)&((A >> 12)&1); n1602=((B >> 13)&1)&((A >> 13)&1); n1603=((B >> 12)&1)&((A >> 14)&1); n1623=((B >> 12)&1)&((A >> 15)&1); n1631=((B >> 13)&1)&((A >> 14)&1); n1639=((B >> 14)&1)&((A >> 13)&1); n1643=((B >> 15)&1)&((A >> 12)&1); n1664=((B >> 13)&1)&((A >> 15)&1); n1673=((B >> 15)&1)&((A >> 13)&1); n1674=((B >> 14)&1)&((A >> 14)&1); n1694=((B >> 14)&1)&((A >> 15)&1); n1698=((B >> 15)&1)&((A >> 14)&1); n1713=((B >> 15)&1)&((A >> 15)&1); n178=((B >> 5)&1)&((A >> 3)&1); n180=((B >> 7)&1)&((A >> 1)&1); n181=((B >> 6)&1)&((A >> 2)&1); n182=((B >> 4)&1)&((A >> 4)&1); n183=((B >> 3)&1)&((A >> 5)&1); n184=((B >> 2)&1)&((A >> 6)&1); n185=((B >> 1)&1)&((A >> 7)&1); n224=((B >> 6)&1)&((A >> 3)&1); n226=((B >> 8)&1)&((A >> 1)&1); n227=((B >> 7)&1)&((A >> 2)&1); n228=((B >> 5)&1)&((A >> 4)&1); n229=((B >> 4)&1)&((A >> 5)&1); n230=((B >> 3)&1)&((A >> 6)&1); n231=((B >> 2)&1)&((A >> 7)&1); n232=((B >> 1)&1)&((A >> 8)&1); n278=((B >> 7)&1)&((A >> 3)&1); n280=((B >> 9)&1)&((A >> 1)&1); n281=((B >> 8)&1)&((A >> 2)&1); n282=((B >> 6)&1)&((A >> 4)&1); n283=((B >> 5)&1)&((A >> 5)&1); n284=((B >> 4)&1)&((A >> 6)&1); n285=((B >> 3)&1)&((A >> 7)&1); n286=((B >> 2)&1)&((A >> 8)&1); n287=((B >> 1)&1)&((A >> 9)&1); n340=((B >> 8)&1)&((A >> 3)&1); n342=((B >> 10)&1)&((A >> 1)&1); n343=((B >> 9)&1)&((A >> 2)&1); n344=((B >> 7)&1)&((A >> 4)&1); n345=((B >> 6)&1)&((A >> 5)&1); n346=((B >> 5)&1)&((A >> 6)&1); n347=((B >> 4)&1)&((A >> 7)&1); n348=((B >> 3)&1)&((A >> 8)&1); n349=((B >> 2)&1)&((A >> 9)&1); n350=((B >> 1)&1)&((A >> 10)&1); n410=((B >> 9)&1)&((A >> 3)&1); n412=((B >> 11)&1)&((A >> 1)&1); n413=((B >> 10)&1)&((A >> 2)&1); n414=((B >> 8)&1)&((A >> 4)&1); n415=((B >> 7)&1)&((A >> 5)&1); n416=((B >> 6)&1)&((A >> 6)&1); n417=((B >> 5)&1)&((A >> 7)&1); n418=((B >> 4)&1)&((A >> 8)&1); n419=((B >> 3)&1)&((A >> 9)&1); n420=((B >> 2)&1)&((A >> 10)&1); n421=((B >> 1)&1)&((A >> 11)&1); n488=((B >> 10)&1)&((A >> 3)&1); n490=((B >> 12)&1)&((A >> 1)&1); n491=((B >> 11)&1)&((A >> 2)&1); n492=((B >> 9)&1)&((A >> 4)&1); n493=((B >> 8)&1)&((A >> 5)&1); n494=((B >> 7)&1)&((A >> 6)&1); n495=((B >> 6)&1)&((A >> 7)&1); n496=((B >> 5)&1)&((A >> 8)&1); n497=((B >> 4)&1)&((A >> 9)&1); n498=((B >> 3)&1)&((A >> 10)&1); n499=((B >> 2)&1)&((A >> 11)&1); n500=((B >> 1)&1)&((A >> 12)&1); n574=((B >> 11)&1)&((A >> 3)&1); n576=((B >> 13)&1)&((A >> 1)&1); n577=((B >> 12)&1)&((A >> 2)&1); n578=((B >> 10)&1)&((A >> 4)&1); n579=((B >> 9)&1)&((A >> 5)&1); n580=((B >> 8)&1)&((A >> 6)&1); n581=((B >> 7)&1)&((A >> 7)&1); n582=((B >> 6)&1)&((A >> 8)&1); n583=((B >> 5)&1)&((A >> 9)&1); n584=((B >> 4)&1)&((A >> 10)&1); n585=((B >> 3)&1)&((A >> 11)&1); n586=((B >> 2)&1)&((A >> 12)&1); n587=((B >> 1)&1)&((A >> 13)&1); n668=((B >> 12)&1)&((A >> 3)&1); n670=((B >> 14)&1)&((A >> 1)&1); n671=((B >> 13)&1)&((A >> 2)&1); n672=((B >> 11)&1)&((A >> 4)&1); n673=((B >> 10)&1)&((A >> 5)&1); n674=((B >> 9)&1)&((A >> 6)&1); n675=((B >> 8)&1)&((A >> 7)&1); n676=((B >> 7)&1)&((A >> 8)&1); n677=((B >> 6)&1)&((A >> 9)&1); n678=((B >> 5)&1)&((A >> 10)&1); n679=((B >> 4)&1)&((A >> 11)&1); n680=((B >> 3)&1)&((A >> 12)&1); n681=((B >> 2)&1)&((A >> 13)&1); n682=((B >> 1)&1)&((A >> 14)&1); n69=((B >> 2)&1)&((A >> 2)&1); n690=((B >> 1)&1)&((A >> 15)&1); n71=((B >> 1)&1)&((A >> 2)&1); n72=((B >> 2)&1)&((A >> 1)&1); n75=((B >> 1)&1)&((A >> 3)&1); n77=((B >> 3)&1)&((A >> 1)&1); n771=((B >> 13)&1)&((A >> 3)&1); n773=((B >> 15)&1)&((A >> 1)&1); n774=((B >> 14)&1)&((A >> 2)&1); n775=((B >> 12)&1)&((A >> 4)&1); n776=((B >> 11)&1)&((A >> 5)&1); n777=((B >> 10)&1)&((A >> 6)&1); n778=((B >> 9)&1)&((A >> 7)&1); n779=((B >> 8)&1)&((A >> 8)&1); n780=((B >> 7)&1)&((A >> 9)&1); n781=((B >> 6)&1)&((A >> 10)&1); n782=((B >> 5)&1)&((A >> 11)&1); n783=((B >> 4)&1)&((A >> 12)&1); n784=((B >> 3)&1)&((A >> 13)&1); n785=((B >> 2)&1)&((A >> 14)&1); n799=((B >> 2)&1)&((A >> 15)&1); n88=((B >> 2)&1)&((A >> 3)&1); n880=((B >> 14)&1)&((A >> 3)&1); n881=((B >> 15)&1)&((A >> 2)&1); n882=((B >> 13)&1)&((A >> 4)&1); n883=((B >> 12)&1)&((A >> 5)&1); n884=((B >> 11)&1)&((A >> 6)&1); n885=((B >> 10)&1)&((A >> 7)&1); n886=((B >> 9)&1)&((A >> 8)&1); n887=((B >> 8)&1)&((A >> 9)&1); n888=((B >> 7)&1)&((A >> 10)&1); n889=((B >> 6)&1)&((A >> 11)&1); n890=((B >> 5)&1)&((A >> 12)&1); n891=((B >> 4)&1)&((A >> 13)&1); n892=((B >> 3)&1)&((A >> 14)&1); n90=((B >> 4)&1)&((A >> 1)&1); n908=((B >> 3)&1)&((A >> 15)&1); n91=((B >> 3)&1)&((A >> 2)&1); n92=((B >> 1)&1)&((A >> 4)&1); n979=((B >> 13)&1)&((A >> 5)&1); n987=((B >> 14)&1)&((A >> 4)&1); n990=~(((A >> 3)&1)|((A >> 2)&1)); n992=((B >> 12)&1)&((A >> 6)&1); n993=((B >> 11)&1)&((A >> 7)&1); n994=((B >> 10)&1)&((A >> 8)&1); n995=((B >> 9)&1)&((A >> 9)&1); n996=((B >> 8)&1)&((A >> 10)&1); n997=((B >> 7)&1)&((A >> 11)&1); n998=((B >> 6)&1)&((A >> 12)&1); n999=((B >> 5)&1)&((A >> 13)&1); n109=n91&n90; n111=n113^n112; n139=n113&n112; n141=n143^n142; n177=n143&n142; n179=n181^n180; n223=n181&n180; n225=n227^n226; n277=n227&n226; n279=n281^n280; n339=n281&n280; n341=n343^n342; n409=n343&n342; n411=n413^n412; n487=n413&n412; n489=n491^n490; n573=n491&n490; n575=n577^n576; n667=n577&n576; n669=n671^n670; n68=n69&O2; n70=~(n72|n71); n76=n77^n69; n770=n671&n670; n772=~(n774^n773); n87=n77&n69; n879=n774&~n773; n89=n91^n90; n985=n880&n881; n989=((B >> 15)&1)&~n990; n991=((A >> 3)&1)&n881; O3=~(n70|n68); n104=n88&n87; n105=n88&n89; n106=n89&n87; n108=~(n110^n109); n1094=~(n1095|n989); n1096=((A >> 4)&1)&n989; n134=n110&n109; n135=n110&n111; n136=n111&n109; n138=~(n140^n139); n172=n140&n139; n173=n140&n141; n174=n141&n139; n176=~(n178^n177); n218=n178&n177; n219=n178&n179; n220=n179&n177; n222=~(n224^n223); n272=n224&n223; n273=n224&n225; n274=n225&n223; n276=~(n278^n277); n334=n278&n277; n335=n278&n279; n336=n279&n277; n338=~(n340^n339); n404=n340&n339; n405=n340&n341; n406=n341&n339; n408=~(n410^n409); n482=n410&n409; n483=n410&n411; n484=n411&n409; n486=~(n488^n487); n568=n488&n487; n569=n488&n489; n570=n489&n487; n572=~(n574^n573); n662=n574&n573; n663=n574&n575; n664=n575&n573; n666=~(n668^n667); n74=~(n75^n68); n765=n668&n667; n766=n668&n669; n767=n669&n667; n769=~(n771^n770); n82=n75&n68; n83=n75&n76; n84=n76&n68; n86=~(n88^n87); n874=n771&n770; n875=n771&n772; n876=n772&n770; n878=~(n880^n879); n984=n880&n879; n986=n881&n879; n988=~n991&n989; O4=~(n76^n74); n103=~(n105|n104); n107=n111^n108; n1090=n987&n988; n1093=~(n1096|n1094); n1188=~(n1189^n1094); n1279=~n1189&n1094; n133=~(n135|n134); n137=n141^n138; n171=~(n173|n172); n175=n179^n176; n217=~(n219|n218); n221=n225^n222; n271=~(n273|n272); n275=n279^n276; n333=~(n335|n334); n337=n341^n338; n403=~(n405|n404); n407=n411^n408; n481=~(n483|n482); n485=n489^n486; n567=~(n569|n568); n571=n575^n572; n661=~(n663|n662); n665=n669^n666; n764=~(n766|n765); n768=n772^n769; n81=~(n83|n82); n85=n89^n86; n873=~(n875|n874); n877=n881^n878; n983=~(n985|n984); n102=~n106&n103; n1186=n1092&n1093; n1274=n1190&n1188; n1278=~n1280&n1279; n128=n114&~n107; n1281=((A >> 6)&1)&~n1279; n132=~n136&n133; n166=n144&~n137; n170=~n174&n171; n212=n182&~n175; n216=~n220&n217; n266=n228&~n221; n270=~n274&n271; n328=n282&~n275; n332=~n336&n333; n398=n344&~n337; n402=~n406&n403; n476=n414&~n407; n480=~n484&n481; n562=n492&~n485; n566=~n570&n567; n656=n578&~n571; n660=~n664&n661; n759=n672&~n665; n763=~n767&n764; n80=~n84&n81; n868=n775&~n768; n872=~n876&n873; n977=n882&~n877; n98=n92&~n85; n982=~n986&n983; n101=~(n107^n102); n1089=n987&~n982; n1091=n988&~n982; n127=~(n107|n102); n1277=~(n1281|n1278); n129=n114&~n102; n131=~(n137^n132); n1357=~(n1358^n1278); n1432=~n1358&n1278; n165=~(n137|n132); n167=n144&~n132; n169=~(n175^n170); n211=~(n175|n170); n213=n182&~n170; n215=~(n221^n216); n265=~(n221|n216); n267=n228&~n216; n269=~(n275^n270); n327=~(n275|n270); n329=n282&~n270; n331=~(n337^n332); n397=~(n337|n332); n399=n344&~n332; n401=~(n407^n402); n475=~(n407|n402); n477=n414&~n402; n479=~(n485^n480); n561=~(n485|n480); n563=n492&~n480; n565=~(n571^n566); n655=~(n571|n566); n657=n578&~n566; n659=~(n665^n660); n758=~(n665|n660); n760=n672&~n660; n762=~(n768^n763); n79=~(n85^n80); n867=~(n768|n763); n869=n775&~n763; n871=~(n877^n872); n97=~(n85|n80); n976=~(n877|n872); n978=n882&~n872; n981=n987^n982; n99=n92&~n80; O5=~(n92^n79); n100=n114^n101; n1088=~(n1090|n1089); n126=~(n128|n127); n130=n144^n131; n1355=n1276&n1277; n1427=n1359&n1357; n1431=~n1433&n1432; n1434=((A >> 8)&1)&~n1432; n164=~(n166|n165); n168=n182^n169; n210=~(n212|n211); n214=n228^n215; n264=~(n266|n265); n268=n282^n269; n326=~(n328|n327); n330=n344^n331; n396=~(n398|n397); n400=n414^n401; n474=~(n476|n475); n478=n492^n479; n560=~(n562|n561); n564=n578^n565; n654=~(n656|n655); n658=n672^n659; n757=~(n759|n758); n761=n775^n762; n866=~(n868|n867); n870=n882^n871; n96=~(n98|n97); n975=~(n977|n976); n980=n988^n981; n1082=n979&~n980; n1087=~n1091&n1088; n122=n115&~n100; n125=~n129&n126; n1430=~(n1434|n1431); n1494=~(n1495^n1431); n1553=~n1495&n1431; n160=n145&~n130; n163=~n167&n164; n206=n183&~n168; n209=~n213&n210; n260=n229&~n214; n263=~n267&n264; n322=n283&~n268; n325=~n329&n326; n392=n345&~n330; n395=~n399&n396; n470=n415&~n400; n473=~n477&n474; n556=n493&~n478; n559=~n563&n560; n650=n579&~n564; n653=~n657&n654; n753=n673&~n658; n756=~n760&n757; n862=n776&~n761; n865=~n869&n866; n95=~n99&n96; n971=n883&~n870; n974=~n978&n975; n1081=n979&~n974; n1083=~(n980|n974); n1086=n1092^n1087; n1185=n1092&~n1087; n1187=n1093&~n1087; n120=~(n100|n95); n121=n115&~n95; n124=~(n130^n125); n1492=n1429&n1430; n1548=n1496&n1494; n1552=~n1554&n1553; n1555=((A >> 10)&1)&~n1553; n158=~(n130|n125); n159=n145&~n125; n162=~(n168^n163); n204=~(n168|n163); n205=n183&~n163; n208=~(n214^n209); n258=~(n214|n209); n259=n229&~n209; n262=~(n268^n263); n320=~(n268|n263); n321=n283&~n263; n324=~(n330^n325); n390=~(n330|n325); n391=n345&~n325; n394=~(n400^n395); n468=~(n400|n395); n469=n415&~n395; n472=~(n478^n473); n554=~(n478|n473); n555=n493&~n473; n558=~(n564^n559); n648=~(n564|n559); n649=n579&~n559; n652=~(n658^n653); n751=~(n658|n653); n752=n673&~n653; n755=~(n761^n756); n860=~(n761|n756); n861=n776&~n756; n864=~(n870^n865); n94=~(n100^n95); n969=~(n870|n865); n970=n883&~n865; n973=n979^n974; O6=~(n115^n94); n1080=~(n1082|n1081); n1085=n1093^n1086; n1184=~(n1186|n1185); n119=~(n121|n120); n123=n145^n124; n1551=~(n1555|n1552); n157=~(n159|n158); n1599=~(n1600^n1552); n161=n183^n162; n1642=~n1600&n1552; n203=~(n205|n204); n207=n229^n208; n257=~(n259|n258); n261=n283^n262; n319=~(n321|n320); n323=n345^n324; n389=~(n391|n390); n393=n415^n394; n467=~(n469|n468); n471=n493^n472; n553=~(n555|n554); n557=n579^n558; n647=~(n649|n648); n651=n673^n652; n750=~(n752|n751); n754=n776^n755; n859=~(n861|n860); n863=n883^n864; n968=~(n970|n969); n972=~(n980^n973); n1075=n992&~n972; n1079=~n1083&n1080; n1179=n1084&~n1085; n118=~n122&n119; n1183=~n1187&n1184; n153=n146&~n123; n156=~n160&n157; n1597=n1550&n1551; n1637=n1601&n1599; n1641=~n1643&n1642; n1644=((A >> 12)&1)&~n1642; n199=n184&~n161; n202=~n206&n203; n253=n230&~n207; n256=~n260&n257; n315=n284&~n261; n318=~n322&n319; n385=n346&~n323; n388=~n392&n389; n463=n416&~n393; n466=~n470&n467; n549=n494&~n471; n552=~n556&n553; n643=n580&~n557; n646=~n650&n647; n746=n674&~n651; n749=~n753&n750; n855=n777&~n754; n858=~n862&n859; n964=n884&~n863; n967=~n971&n968; n1074=~(n972|n967); n1076=n992&~n967; n1078=n1084^n1079; n117=~(n123^n118); n1178=n1084&~n1079; n1180=~(n1085|n1079); n1182=n1188^n1183; n1273=n1188&~n1183; n1275=n1190&~n1183; n151=~(n123|n118); n152=n146&~n118; n155=~(n161^n156); n1640=~(n1644|n1641); n1672=~(n1673^n1641); n1697=~n1673&n1641; n197=~(n161|n156); n198=n184&~n156; n201=~(n207^n202); n251=~(n207|n202); n252=n230&~n202; n255=~(n261^n256); n313=~(n261|n256); n314=n284&~n256; n317=~(n323^n318); n383=~(n323|n318); n384=n346&~n318; n387=~(n393^n388); n461=~(n393|n388); n462=n416&~n388; n465=~(n471^n466); n547=~(n471|n466); n548=n494&~n466; n551=~(n557^n552); n641=~(n557|n552); n642=n580&~n552; n645=~(n651^n646); n744=~(n651|n646); n745=n674&~n646; n748=~(n754^n749); n853=~(n754|n749); n854=n777&~n749; n857=~(n863^n858); n962=~(n863|n858); n963=n884&~n858; n966=~(n972^n967); O7=~(n146^n117); n1073=~(n1075|n1074); n1077=~(n1085^n1078); n1177=~(n1179|n1178); n1181=n1190^n1182; n1272=~(n1274|n1273); n150=~(n152|n151); n154=n184^n155; n1670=n1639&n1640; n1692=n1674&n1672; n1696=~n1698&n1697; n1699=((A >> 14)&1)&~n1697; n196=~(n198|n197); n200=n230^n201; n250=~(n252|n251); n254=n284^n255; n312=~(n314|n313); n316=n346^n317; n382=~(n384|n383); n386=n416^n387; n460=~(n462|n461); n464=n494^n465; n546=~(n548|n547); n550=n580^n551; n640=~(n642|n641); n644=n674^n645; n743=~(n745|n744); n747=n777^n748; n852=~(n854|n853); n856=n884^n857; n961=~(n963|n962); n965=n992^n966; n1068=n993&~n965; n1072=~n1076&n1073; n1172=n1097&~n1077; n1176=~n1180&n1177; n1266=n1191&~n1181; n1271=~n1275&n1272; n149=~n153&n150; n1695=~(n1699|n1696); n1712=~(n1713^n1696); n1719=n1713&n1696; n192=n185&~n154; n195=~n199&n196; n246=n231&~n200; n249=~n253&n250; n308=n285&~n254; n311=~n315&n312; n378=n347&~n316; n381=~n385&n382; n456=n417&~n386; n459=~n463&n460; n542=n495&~n464; n545=~n549&n546; n636=n581&~n550; n639=~n643&n640; n739=n675&~n644; n742=~n746&n743; n848=n778&~n747; n851=~n855&n852; n957=n885&~n856; n960=~n964&n961; n1067=~(n965|n960); n1069=n993&~n960; n1071=~(n1077^n1072); n1171=~(n1077|n1072); n1173=n1097&~n1072; n1175=~(n1181^n1176); n1265=~(n1181|n1176); n1267=n1191&~n1176; n1270=n1276^n1271; n1354=n1276&~n1271; n1356=n1277&~n1271; n148=~(n154^n149); n1710=~n1694&n1695; n190=~(n154|n149); n191=n185&~n149; n194=~(n200^n195); n244=~(n200|n195); n245=n231&~n195; n248=~(n254^n249); n306=~(n254|n249); n307=n285&~n249; n310=~(n316^n311); n376=~(n316|n311); n377=n347&~n311; n380=~(n386^n381); n454=~(n386|n381); n455=n417&~n381; n458=~(n464^n459); n540=~(n464|n459); n541=n495&~n459; n544=~(n550^n545); n634=~(n550|n545); n635=n581&~n545; n638=~(n644^n639); n737=~(n644|n639); n738=n675&~n639; n741=~(n747^n742); n846=~(n747|n742); n847=n778&~n742; n850=~(n856^n851); n955=~(n856|n851); n956=n885&~n851; n959=~(n965^n960); O8=~(n185^n148); n1066=~(n1068|n1067); n1070=n1097^n1071; n1170=~(n1172|n1171); n1174=n1191^n1175; n1264=~(n1266|n1265); n1269=n1277^n1270; n1353=~(n1355|n1354); n189=~(n191|n190); n193=n231^n194; n243=~(n245|n244); n247=n285^n248; n305=~(n307|n306); n309=n347^n310; n375=~(n377|n376); n379=n417^n380; n453=~(n455|n454); n457=n495^n458; n539=~(n541|n540); n543=n581^n544; n633=~(n635|n634); n637=n675^n638; n736=~(n738|n737); n740=n778^n741; n845=~(n847|n846); n849=n885^n850; n954=~(n956|n955); n958=n993^n959; n1061=n994&~n958; n1065=~n1069&n1066; n1165=n1098&~n1070; n1169=~n1173&n1170; n1259=n1192&~n1174; n1263=~n1267&n1264; n1348=n1268&~n1269; n1352=~n1356&n1353; n188=~n192&n189; n239=n232&~n193; n242=~n246&n243; n301=n286&~n247; n304=~n308&n305; n371=n348&~n309; n374=~n378&n375; n449=n418&~n379; n452=~n456&n453; n535=n496&~n457; n538=~n542&n539; n629=n582&~n543; n632=~n636&n633; n732=n676&~n637; n735=~n739&n736; n841=n779&~n740; n844=~n848&n845; n950=n886&~n849; n953=~n957&n954; n1060=~(n958|n953); n1062=n994&~n953; n1064=~(n1070^n1065); n1164=~(n1070|n1065); n1166=n1098&~n1065; n1168=~(n1174^n1169); n1258=~(n1174|n1169); n1260=n1192&~n1169; n1262=n1268^n1263; n1347=n1268&~n1263; n1349=~(n1269|n1263); n1351=n1357^n1352; n1426=n1357&~n1352; n1428=n1359&~n1352; n187=~(n193^n188); n237=~(n193|n188); n238=n232&~n188; n241=~(n247^n242); n299=~(n247|n242); n300=n286&~n242; n303=~(n309^n304); n369=~(n309|n304); n370=n348&~n304; n373=~(n379^n374); n447=~(n379|n374); n448=n418&~n374; n451=~(n457^n452); n533=~(n457|n452); n534=n496&~n452; n537=~(n543^n538); n627=~(n543|n538); n628=n582&~n538; n631=~(n637^n632); n730=~(n637|n632); n731=n676&~n632; n734=~(n740^n735); n839=~(n740|n735); n840=n779&~n735; n843=~(n849^n844); n948=~(n849|n844); n949=n886&~n844; n952=~(n958^n953); O9=~(n232^n187); n1059=~(n1061|n1060); n1063=n1098^n1064; n1163=~(n1165|n1164); n1167=n1192^n1168; n1257=~(n1259|n1258); n1261=~(n1269^n1262); n1346=~(n1348|n1347); n1350=n1359^n1351; n1425=~(n1427|n1426); n236=~(n238|n237); n240=n286^n241; n298=~(n300|n299); n302=n348^n303; n368=~(n370|n369); n372=n418^n373; n446=~(n448|n447); n450=n496^n451; n532=~(n534|n533); n536=n582^n537; n626=~(n628|n627); n630=n676^n631; n729=~(n731|n730); n733=n779^n734; n838=~(n840|n839); n842=n886^n843; n947=~(n949|n948); n951=n994^n952; n1054=n995&~n951; n1058=~n1062&n1059; n1158=n1099&~n1063; n1162=~n1166&n1163; n1252=n1193&~n1167; n1256=~n1260&n1257; n1341=n1282&~n1261; n1345=~n1349&n1346; n1419=n1360&~n1350; n1424=~n1428&n1425; n235=~n239&n236; n294=n287&~n240; n297=~n301&n298; n364=n349&~n302; n367=~n371&n368; n442=n419&~n372; n445=~n449&n446; n528=n497&~n450; n531=~n535&n532; n622=n583&~n536; n625=~n629&n626; n725=n677&~n630; n728=~n732&n729; n834=n780&~n733; n837=~n841&n838; n943=n887&~n842; n946=~n950&n947; n1053=~(n951|n946); n1055=n995&~n946; n1057=~(n1063^n1058); n1157=~(n1063|n1058); n1159=n1099&~n1058; n1161=~(n1167^n1162); n1251=~(n1167|n1162); n1253=n1193&~n1162; n1255=~(n1261^n1256); n1340=~(n1261|n1256); n1342=n1282&~n1256; n1344=~(n1350^n1345); n1418=~(n1350|n1345); n1420=n1360&~n1345; n1423=n1429^n1424; n1491=n1429&~n1424; n1493=n1430&~n1424; n234=~(n240^n235); n292=~(n240|n235); n293=n287&~n235; n296=~(n302^n297); n362=~(n302|n297); n363=n349&~n297; n366=~(n372^n367); n440=~(n372|n367); n441=n419&~n367; n444=~(n450^n445); n526=~(n450|n445); n527=n497&~n445; n530=~(n536^n531); n620=~(n536|n531); n621=n583&~n531; n624=~(n630^n625); n723=~(n630|n625); n724=n677&~n625; n727=~(n733^n728); n832=~(n733|n728); n833=n780&~n728; n836=~(n842^n837); n941=~(n842|n837); n942=n887&~n837; n945=~(n951^n946); O10=~(n287^n234); n1052=~(n1054|n1053); n1056=n1099^n1057; n1156=~(n1158|n1157); n1160=n1193^n1161; n1250=~(n1252|n1251); n1254=n1282^n1255; n1339=~(n1341|n1340); n1343=n1360^n1344; n1417=~(n1419|n1418); n1422=n1430^n1423; n1490=~(n1492|n1491); n291=~(n293|n292); n295=n349^n296; n361=~(n363|n362); n365=n419^n366; n439=~(n441|n440); n443=n497^n444; n525=~(n527|n526); n529=n583^n530; n619=~(n621|n620); n623=n677^n624; n722=~(n724|n723); n726=n780^n727; n831=~(n833|n832); n835=n887^n836; n940=~(n942|n941); n944=n995^n945; n1047=n996&~n944; n1051=~n1055&n1052; n1151=n1100&~n1056; n1155=~n1159&n1156; n1245=n1194&~n1160; n1249=~n1253&n1250; n1334=n1283&~n1254; n1338=~n1342&n1339; n1412=n1361&~n1343; n1416=~n1420&n1417; n1485=n1421&~n1422; n1489=~n1493&n1490; n290=~n294&n291; n357=n350&~n295; n360=~n364&n361; n435=n420&~n365; n438=~n442&n439; n521=n498&~n443; n524=~n528&n525; n615=n584&~n529; n618=~n622&n619; n718=n678&~n623; n721=~n725&n722; n827=n781&~n726; n830=~n834&n831; n936=n888&~n835; n939=~n943&n940; n1046=~(n944|n939); n1048=n996&~n939; n1050=~(n1056^n1051); n1150=~(n1056|n1051); n1152=n1100&~n1051; n1154=~(n1160^n1155); n1244=~(n1160|n1155); n1246=n1194&~n1155; n1248=~(n1254^n1249); n1333=~(n1254|n1249); n1335=n1283&~n1249; n1337=~(n1343^n1338); n1411=~(n1343|n1338); n1413=n1361&~n1338; n1415=n1421^n1416; n1484=n1421&~n1416; n1486=~(n1422|n1416); n1488=n1494^n1489; n1547=n1494&~n1489; n1549=n1496&~n1489; n289=~(n295^n290); n355=~(n295|n290); n356=n350&~n290; n359=~(n365^n360); n433=~(n365|n360); n434=n420&~n360; n437=~(n443^n438); n519=~(n443|n438); n520=n498&~n438; n523=~(n529^n524); n613=~(n529|n524); n614=n584&~n524; n617=~(n623^n618); n716=~(n623|n618); n717=n678&~n618; n720=~(n726^n721); n825=~(n726|n721); n826=n781&~n721; n829=~(n835^n830); n934=~(n835|n830); n935=n888&~n830; n938=~(n944^n939); O11=~(n350^n289); n1045=~(n1047|n1046); n1049=n1100^n1050; n1149=~(n1151|n1150); n1153=n1194^n1154; n1243=~(n1245|n1244); n1247=n1283^n1248; n1332=~(n1334|n1333); n1336=n1361^n1337; n1410=~(n1412|n1411); n1414=~(n1422^n1415); n1483=~(n1485|n1484); n1487=n1496^n1488; n1546=~(n1548|n1547); n354=~(n356|n355); n358=n420^n359; n432=~(n434|n433); n436=n498^n437; n518=~(n520|n519); n522=n584^n523; n612=~(n614|n613); n616=n678^n617; n715=~(n717|n716); n719=n781^n720; n824=~(n826|n825); n828=n888^n829; n933=~(n935|n934); n937=n996^n938; n1040=n997&~n937; n1044=~n1048&n1045; n1144=n1101&~n1049; n1148=~n1152&n1149; n1238=n1195&~n1153; n1242=~n1246&n1243; n1327=n1284&~n1247; n1331=~n1335&n1332; n1405=n1362&~n1336; n1409=~n1413&n1410; n1478=n1435&~n1414; n1482=~n1486&n1483; n1540=n1497&~n1487; n1545=~n1549&n1546; n353=~n357&n354; n428=n421&~n358; n431=~n435&n432; n514=n499&~n436; n517=~n521&n518; n608=n585&~n522; n611=~n615&n612; n711=n679&~n616; n714=~n718&n715; n820=n782&~n719; n823=~n827&n824; n929=n889&~n828; n932=~n936&n933; n1039=~(n937|n932); n1041=n997&~n932; n1043=~(n1049^n1044); n1143=~(n1049|n1044); n1145=n1101&~n1044; n1147=~(n1153^n1148); n1237=~(n1153|n1148); n1239=n1195&~n1148; n1241=~(n1247^n1242); n1326=~(n1247|n1242); n1328=n1284&~n1242; n1330=~(n1336^n1331); n1404=~(n1336|n1331); n1406=n1362&~n1331; n1408=~(n1414^n1409); n1477=~(n1414|n1409); n1479=n1435&~n1409; n1481=~(n1487^n1482); n1539=~(n1487|n1482); n1541=n1497&~n1482; n1544=n1550^n1545; n1596=n1550&~n1545; n1598=n1551&~n1545; n352=~(n358^n353); n426=~(n358|n353); n427=n421&~n353; n430=~(n436^n431); n512=~(n436|n431); n513=n499&~n431; n516=~(n522^n517); n606=~(n522|n517); n607=n585&~n517; n610=~(n616^n611); n709=~(n616|n611); n710=n679&~n611; n713=~(n719^n714); n818=~(n719|n714); n819=n782&~n714; n822=~(n828^n823); n927=~(n828|n823); n928=n889&~n823; n931=~(n937^n932); O12=~(n421^n352); n1038=~(n1040|n1039); n1042=n1101^n1043; n1142=~(n1144|n1143); n1146=n1195^n1147; n1236=~(n1238|n1237); n1240=n1284^n1241; n1325=~(n1327|n1326); n1329=n1362^n1330; n1403=~(n1405|n1404); n1407=n1435^n1408; n1476=~(n1478|n1477); n1480=n1497^n1481; n1538=~(n1540|n1539); n1543=n1551^n1544; n1595=~(n1597|n1596); n425=~(n427|n426); n429=n499^n430; n511=~(n513|n512); n515=n585^n516; n605=~(n607|n606); n609=n679^n610; n708=~(n710|n709); n712=n782^n713; n817=~(n819|n818); n821=n889^n822; n926=~(n928|n927); n930=n997^n931; n1033=n998&~n930; n1037=~n1041&n1038; n1137=n1102&~n1042; n1141=~n1145&n1142; n1231=n1196&~n1146; n1235=~n1239&n1236; n1320=n1285&~n1240; n1324=~n1328&n1325; n1398=n1363&~n1329; n1402=~n1406&n1403; n1471=n1436&~n1407; n1475=~n1479&n1476; n1533=n1498&~n1480; n1537=~n1541&n1538; n1590=n1542&~n1543; n1594=~n1598&n1595; n424=~n428&n425; n507=n500&~n429; n510=~n514&n511; n601=n586&~n515; n604=~n608&n605; n704=n680&~n609; n707=~n711&n708; n813=n783&~n712; n816=~n820&n817; n922=n890&~n821; n925=~n929&n926; n1032=~(n930|n925); n1034=n998&~n925; n1036=~(n1042^n1037); n1136=~(n1042|n1037); n1138=n1102&~n1037; n1140=~(n1146^n1141); n1230=~(n1146|n1141); n1232=n1196&~n1141; n1234=~(n1240^n1235); n1319=~(n1240|n1235); n1321=n1285&~n1235; n1323=~(n1329^n1324); n1397=~(n1329|n1324); n1399=n1363&~n1324; n1401=~(n1407^n1402); n1470=~(n1407|n1402); n1472=n1436&~n1402; n1474=~(n1480^n1475); n1532=~(n1480|n1475); n1534=n1498&~n1475; n1536=n1542^n1537; n1589=n1542&~n1537; n1591=~(n1543|n1537); n1593=n1599^n1594; n1636=n1599&~n1594; n1638=n1601&~n1594; n423=~(n429^n424); n505=~(n429|n424); n506=n500&~n424; n509=~(n515^n510); n599=~(n515|n510); n600=n586&~n510; n603=~(n609^n604); n702=~(n609|n604); n703=n680&~n604; n706=~(n712^n707); n811=~(n712|n707); n812=n783&~n707; n815=~(n821^n816); n920=~(n821|n816); n921=n890&~n816; n924=~(n930^n925); O13=~(n500^n423); n1031=~(n1033|n1032); n1035=n1102^n1036; n1135=~(n1137|n1136); n1139=n1196^n1140; n1229=~(n1231|n1230); n1233=n1285^n1234; n1318=~(n1320|n1319); n1322=n1363^n1323; n1396=~(n1398|n1397); n1400=n1436^n1401; n1469=~(n1471|n1470); n1473=n1498^n1474; n1531=~(n1533|n1532); n1535=~(n1543^n1536); n1588=~(n1590|n1589); n1592=n1601^n1593; n1635=~(n1637|n1636); n504=~(n506|n505); n508=n586^n509; n598=~(n600|n599); n602=n680^n603; n701=~(n703|n702); n705=n783^n706; n810=~(n812|n811); n814=n890^n815; n919=~(n921|n920); n923=n998^n924; n1026=n999&~n923; n1030=~n1034&n1031; n1130=n1103&~n1035; n1134=~n1138&n1135; n1224=n1197&~n1139; n1228=~n1232&n1229; n1313=n1286&~n1233; n1317=~n1321&n1318; n1391=n1364&~n1322; n1395=~n1399&n1396; n1464=n1437&~n1400; n1468=~n1472&n1469; n1526=n1499&~n1473; n1530=~n1534&n1531; n1583=n1556&~n1535; n1587=~n1591&n1588; n1629=n1602&~n1592; n1634=~n1638&n1635; n503=~n507&n504; n594=n587&~n508; n597=~n601&n598; n697=n681&~n602; n700=~n704&n701; n806=n784&~n705; n809=~n813&n810; n915=n891&~n814; n918=~n922&n919; n1025=~(n923|n918); n1027=n999&~n918; n1029=~(n1035^n1030); n1129=~(n1035|n1030); n1131=n1103&~n1030; n1133=~(n1139^n1134); n1223=~(n1139|n1134); n1225=n1197&~n1134; n1227=~(n1233^n1228); n1312=~(n1233|n1228); n1314=n1286&~n1228; n1316=~(n1322^n1317); n1390=~(n1322|n1317); n1392=n1364&~n1317; n1394=~(n1400^n1395); n1463=~(n1400|n1395); n1465=n1437&~n1395; n1467=~(n1473^n1468); n1525=~(n1473|n1468); n1527=n1499&~n1468; n1529=~(n1535^n1530); n1582=~(n1535|n1530); n1584=n1556&~n1530; n1586=~(n1592^n1587); n1628=~(n1592|n1587); n1630=n1602&~n1587; n1633=n1639^n1634; n1669=n1639&~n1634; n1671=n1640&~n1634; n502=~(n508^n503); n592=~(n508|n503); n593=n587&~n503; n596=~(n602^n597); n695=~(n602|n597); n696=n681&~n597; n699=~(n705^n700); n804=~(n705|n700); n805=n784&~n700; n808=~(n814^n809); n913=~(n814|n809); n914=n891&~n809; n917=~(n923^n918); O14=~(n587^n502); n1024=~(n1026|n1025); n1028=n1103^n1029; n1128=~(n1130|n1129); n1132=n1197^n1133; n1222=~(n1224|n1223); n1226=n1286^n1227; n1311=~(n1313|n1312); n1315=n1364^n1316; n1389=~(n1391|n1390); n1393=n1437^n1394; n1462=~(n1464|n1463); n1466=n1499^n1467; n1524=~(n1526|n1525); n1528=n1556^n1529; n1581=~(n1583|n1582); n1585=n1602^n1586; n1627=~(n1629|n1628); n1632=n1640^n1633; n1668=~(n1670|n1669); n591=~(n593|n592); n595=n681^n596; n694=~(n696|n695); n698=n784^n699; n803=~(n805|n804); n807=n891^n808; n912=~(n914|n913); n916=n999^n917; n1018=n1000&~n916; n1023=~n1027&n1024; n1122=n1104&~n1028; n1127=~n1131&n1128; n1216=n1198&~n1132; n1221=~n1225&n1222; n1305=n1287&~n1226; n1310=~n1314&n1311; n1383=n1365&~n1315; n1388=~n1392&n1389; n1456=n1438&~n1393; n1461=~n1465&n1462; n1518=n1500&~n1466; n1523=~n1527&n1524; n1575=n1557&~n1528; n1580=~n1584&n1581; n1621=n1603&~n1585; n1626=~n1630&n1627; n1662=n1631&~n1632; n1667=~n1671&n1668; n590=~n594&n591; n689=n682&~n595; n693=~n697&n694; n798=n785&~n698; n802=~n806&n803; n907=n892&~n807; n911=~n915&n912; n1017=~(n916|n911); n1019=n1000&~n911; n1022=~(n1028^n1023); n1121=~(n1028|n1023); n1123=n1104&~n1023; n1126=~(n1132^n1127); n1215=~(n1132|n1127); n1217=n1198&~n1127; n1220=~(n1226^n1221); n1304=~(n1226|n1221); n1306=n1287&~n1221; n1309=~(n1315^n1310); n1382=~(n1315|n1310); n1384=n1365&~n1310; n1387=~(n1393^n1388); n1455=~(n1393|n1388); n1457=n1438&~n1388; n1460=~(n1466^n1461); n1517=~(n1466|n1461); n1519=n1500&~n1461; n1522=~(n1528^n1523); n1574=~(n1528|n1523); n1576=n1557&~n1523; n1579=~(n1585^n1580); n1620=~(n1585|n1580); n1622=n1603&~n1580; n1625=n1631^n1626; n1661=n1631&~n1626; n1663=~(n1632|n1626); n1666=n1672^n1667; n1691=n1672&~n1667; n1693=n1674&~n1667; n589=~(n595^n590); n687=~(n595|n590); n688=n682&~n590; n692=~(n698^n693); n796=~(n698|n693); n797=n785&~n693; n801=~(n807^n802); n905=~(n807|n802); n906=n892&~n802; n910=~(n916^n911); O15=~(n682^n589); n1016=~(n1018|n1017); n1021=n1104^n1022; n1120=~(n1122|n1121); n1125=n1198^n1126; n1214=~(n1216|n1215); n1219=n1287^n1220; n1303=~(n1305|n1304); n1308=n1365^n1309; n1381=~(n1383|n1382); n1386=n1438^n1387; n1454=~(n1456|n1455); n1459=n1500^n1460; n1516=~(n1518|n1517); n1521=n1557^n1522; n1573=~(n1575|n1574); n1578=n1603^n1579; n1619=~(n1621|n1620); n1624=~(n1632^n1625); n1660=~(n1662|n1661); n1665=n1674^n1666; n1690=~(n1692|n1691); n686=~(n688|n687); n691=n785^n692; n795=~(n797|n796); n800=n892^n801; n904=~(n906|n905); n909=n1000^n910; n1011=~(n908|n909); n1015=~n1019&n1016; n1115=~(n1020|n1021); n1119=~n1123&n1120; n1209=~(n1124|n1125); n1213=~n1217&n1214; n1298=~(n1218|n1219); n1302=~n1306&n1303; n1376=~(n1307|n1308); n1380=~n1384&n1381; n1449=~(n1385|n1386); n1453=~n1457&n1454; n1511=~(n1458|n1459); n1515=~n1519&n1516; n1568=~(n1520|n1521); n1572=~n1576&n1573; n1614=~(n1577|n1578); n1618=~n1622&n1619; n1655=~(n1623|n1624); n1659=~n1663&n1660; n1685=~(n1664|n1665); n1689=~n1693&n1690; n685=~n689&n686; n790=~(n690|n691); n794=~n798&n795; n899=~(n799|n800); n903=~n907&n904; n1010=~(n908|n903); n1012=~(n909|n903); n1014=~(n1020^n1015); n1114=~(n1020|n1015); n1116=~(n1021|n1015); n1118=~(n1124^n1119); n1208=~(n1124|n1119); n1210=~(n1125|n1119); n1212=~(n1218^n1213); n1297=~(n1218|n1213); n1299=~(n1219|n1213); n1301=~(n1307^n1302); n1375=~(n1307|n1302); n1377=~(n1308|n1302); n1379=~(n1385^n1380); n1448=~(n1385|n1380); n1450=~(n1386|n1380); n1452=~(n1458^n1453); n1510=~(n1458|n1453); n1512=~(n1459|n1453); n1514=~(n1520^n1515); n1567=~(n1520|n1515); n1569=~(n1521|n1515); n1571=~(n1577^n1572); n1613=~(n1577|n1572); n1615=~(n1578|n1572); n1617=~(n1623^n1618); n1654=~(n1623|n1618); n1656=~(n1624|n1618); n1658=~(n1664^n1659); n1684=~(n1664|n1659); n1686=~(n1665|n1659); n1688=~(n1694^n1689); n1709=~(n1694|n1689); n1711=n1695&~n1689; n684=~(n690^n685); n789=~(n690|n685); n791=~(n691|n685); n793=~(n799^n794); n898=~(n799|n794); n900=~(n800|n794); n902=~(n908^n903); O16=n691^n684; n1009=~(n1011|n1010); n1013=~(n1021^n1014); n1113=~(n1115|n1114); n1117=~(n1125^n1118); n1207=~(n1209|n1208); n1211=~(n1219^n1212); n1296=~(n1298|n1297); n1300=~(n1308^n1301); n1374=~(n1376|n1375); n1378=~(n1386^n1379); n1447=~(n1449|n1448); n1451=~(n1459^n1452); n1509=~(n1511|n1510); n1513=~(n1521^n1514); n1566=~(n1568|n1567); n1570=~(n1578^n1571); n1612=~(n1614|n1613); n1616=~(n1624^n1617); n1653=~(n1655|n1654); n1657=~(n1665^n1658); n1683=~(n1685|n1684); n1687=n1695^n1688; n1708=~(n1710|n1709); n788=~(n790|n789); n792=~(n800^n793); n897=~(n899|n898); n901=~(n909^n902); n1008=~n1012&n1009; n1112=~n1116&n1113; n1206=~n1210&n1207; n1295=~n1299&n1296; n1373=~n1377&n1374; n1446=~n1450&n1447; n1508=~n1512&n1509; n1565=~n1569&n1566; n1611=~n1615&n1612; n1652=~n1656&n1653; n1682=~n1686&n1683; n1707=~n1711&n1708; n787=~n791&n788; n896=~n900&n897; O17=n792^n787; n1006=~(n901|n896); n1110=~(n1013|n1008); n1204=~(n1117|n1112); n1293=~(n1211|n1206); n1371=~(n1300|n1295); n1444=~(n1378|n1373); n1506=~(n1451|n1446); n1563=~(n1513|n1508); n1609=~(n1570|n1565); n1650=~(n1616|n1611); n1680=~(n1657|n1652); n1705=~(n1687|n1682); n1718=~(n1712|n1707); n894=~(n792|n787); n895=~(n901^n896); O18=~(n895^n894); n1005=~n901&n894; n1007=~n896&n894; n1717=~(n1719|n1718); n1004=~(n1006|n1005); n1003=~n1007&n1004; n1002=~(n1008^n1003); n1109=~(n1008|n1003); n1111=~(n1013|n1003); O19=n1013^n1002; n1108=~(n1110|n1109); n1107=~n1111&n1108; n1106=~(n1112^n1107); n1203=~(n1112|n1107); n1205=~(n1117|n1107); O20=n1117^n1106; n1202=~(n1204|n1203); n1201=~n1205&n1202; n1200=~(n1206^n1201); n1292=~(n1206|n1201); n1294=~(n1211|n1201); O21=n1211^n1200; n1291=~(n1293|n1292); n1290=~n1294&n1291; n1289=~(n1295^n1290); n1370=~(n1295|n1290); n1372=~(n1300|n1290); O22=n1300^n1289; n1369=~(n1371|n1370); n1368=~n1372&n1369; n1367=~(n1373^n1368); n1443=~(n1373|n1368); n1445=~(n1378|n1368); O23=n1378^n1367; n1442=~(n1444|n1443); n1441=~n1445&n1442; n1440=~(n1446^n1441); n1505=~(n1446|n1441); n1507=~(n1451|n1441); O24=n1451^n1440; n1504=~(n1506|n1505); n1503=~n1507&n1504; n1502=~(n1508^n1503); n1562=~(n1508|n1503); n1564=~(n1513|n1503); O25=n1513^n1502; n1561=~(n1563|n1562); n1560=~n1564&n1561; n1559=~(n1565^n1560); n1608=~(n1565|n1560); n1610=~(n1570|n1560); O26=n1570^n1559; n1607=~(n1609|n1608); n1606=~n1610&n1607; n1605=~(n1611^n1606); n1649=~(n1611|n1606); n1651=~(n1616|n1606); O27=n1616^n1605; n1648=~(n1650|n1649); n1647=~n1651&n1648; n1646=~(n1652^n1647); n1679=~(n1652|n1647); n1681=~(n1657|n1647); O28=n1657^n1646; n1678=~(n1680|n1679); n1677=~n1681&n1678; n1676=~(n1682^n1677); n1704=~(n1682|n1677); n1706=~(n1687|n1677); O29=n1687^n1676; n1703=~(n1705|n1704); n1702=~n1706&n1703; n1701=~(n1707^n1702); n1716=~(n1707|n1702); n1720=~(n1712|n1702); O30=n1712^n1701; n1715=n1717&~n1716; O31=~n1720&n1715; O = (O0 << 0)|(O1 << 1)|(O2 << 2)|(O3 << 3)|(O4 << 4)|(O5 << 5)|(O6 << 6)|(O7 << 7)|(O8 << 8)|(O9 << 9)|(O10 << 10)|(O11 << 11)|(O12 << 12)|(O13 << 13)|(O14 << 14)|(O15 << 15)|(O16 << 16)|(O17 << 17)|(O18 << 18)|(O19 << 19)|(O20 << 20)|(O21 << 21)|(O22 << 22)|(O23 << 23)|(O24 << 24)|(O25 << 25)|(O26 << 26)|(O27 << 27)|(O28 << 28)|(O29 << 29)|(O30 << 30)|(O31 << 31); return O; }