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