1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577
|
default Order dec
$include <exception_basic.sail>
$include <vector_dec.sail>
overload zero_extend = {sail_zero_extend}
function main (() : unit) -> unit = {
assert(unsigned(zero_extend(0x2e015f0, 64)) == 48240112);
assert(unsigned(zero_extend(0x2e015f8, 64)) == 48240120);
assert(unsigned(zero_extend(0x2e01600, 64)) == 48240128);
assert(unsigned(zero_extend(0x2e01608, 64)) == 48240136);
assert(unsigned(zero_extend(0x2e01610, 64)) == 48240144);
assert(unsigned(zero_extend(0x2e01618, 64)) == 48240152);
assert(unsigned(zero_extend(0x2e01620, 64)) == 48240160);
assert(unsigned(zero_extend(0x2e01628, 64)) == 48240168);
assert(unsigned(zero_extend(0x2e01630, 64)) == 48240176);
assert(unsigned(zero_extend(0x2e01638, 64)) == 48240184);
assert(unsigned(zero_extend(0x2e01640, 64)) == 48240192);
assert(unsigned(zero_extend(0x2e01648, 64)) == 48240200);
assert(unsigned(zero_extend(0x2e01650, 64)) == 48240208);
assert(unsigned(zero_extend(0x2e01658, 64)) == 48240216);
assert(unsigned(zero_extend(0x2e01660, 64)) == 48240224);
assert(unsigned(zero_extend(0x2e01668, 64)) == 48240232);
assert(unsigned(zero_extend(0x2e01670, 64)) == 48240240);
assert(unsigned(zero_extend(0x2e01678, 64)) == 48240248);
assert(unsigned(zero_extend(0x2e01680, 64)) == 48240256);
assert(unsigned(zero_extend(0x2e01688, 64)) == 48240264);
assert(unsigned(zero_extend(0x2e01690, 64)) == 48240272);
assert(unsigned(zero_extend(0x2e01698, 64)) == 48240280);
assert(unsigned(zero_extend(0x2e016a0, 64)) == 48240288);
assert(unsigned(zero_extend(0x2e016a8, 64)) == 48240296);
assert(unsigned(zero_extend(0x2e016b0, 64)) == 48240304);
assert(unsigned(zero_extend(0x2e016b8, 64)) == 48240312);
assert(unsigned(zero_extend(0x2e016c0, 64)) == 48240320);
assert(unsigned(zero_extend(0x2e016c8, 64)) == 48240328);
assert(unsigned(zero_extend(0x2e016d0, 64)) == 48240336);
assert(unsigned(zero_extend(0x2e016d8, 64)) == 48240344);
assert(unsigned(zero_extend(0x2e016e0, 64)) == 48240352);
assert(unsigned(zero_extend(0x2e016e8, 64)) == 48240360);
assert(unsigned(zero_extend(0x2e016f0, 64)) == 48240368);
assert(unsigned(zero_extend(0x2e016f8, 64)) == 48240376);
assert(unsigned(zero_extend(0x2e01700, 64)) == 48240384);
assert(unsigned(zero_extend(0x2e01708, 64)) == 48240392);
assert(unsigned(zero_extend(0x2e01710, 64)) == 48240400);
assert(unsigned(zero_extend(0x2e01718, 64)) == 48240408);
assert(unsigned(zero_extend(0x2e01720, 64)) == 48240416);
assert(unsigned(zero_extend(0x2e01728, 64)) == 48240424);
assert(unsigned(zero_extend(0x2e01730, 64)) == 48240432);
assert(unsigned(zero_extend(0x2e01738, 64)) == 48240440);
assert(unsigned(zero_extend(0x2e01740, 64)) == 48240448);
assert(unsigned(zero_extend(0x2e01748, 64)) == 48240456);
assert(unsigned(zero_extend(0x2e01750, 64)) == 48240464);
assert(unsigned(zero_extend(0x2e01758, 64)) == 48240472);
assert(unsigned(zero_extend(0x2e01760, 64)) == 48240480);
assert(unsigned(zero_extend(0x2e01768, 64)) == 48240488);
assert(unsigned(zero_extend(0x2e01770, 64)) == 48240496);
assert(unsigned(zero_extend(0x2e01778, 64)) == 48240504);
assert(unsigned(zero_extend(0x2e01780, 64)) == 48240512);
assert(unsigned(zero_extend(0x2e01788, 64)) == 48240520);
assert(unsigned(zero_extend(0x2e01790, 64)) == 48240528);
assert(unsigned(zero_extend(0x2e01798, 64)) == 48240536);
assert(unsigned(zero_extend(0x2e017a0, 64)) == 48240544);
assert(unsigned(zero_extend(0x2e017a8, 64)) == 48240552);
assert(unsigned(zero_extend(0x2e017b0, 64)) == 48240560);
assert(unsigned(zero_extend(0x2e017b8, 64)) == 48240568);
assert(unsigned(zero_extend(0x2e017c0, 64)) == 48240576);
assert(unsigned(zero_extend(0x2e017c8, 64)) == 48240584);
assert(unsigned(zero_extend(0x2e017d0, 64)) == 48240592);
assert(unsigned(zero_extend(0x2e017d8, 64)) == 48240600);
assert(unsigned(zero_extend(0x2e017e0, 64)) == 48240608);
assert(unsigned(zero_extend(0x2e017e8, 64)) == 48240616);
assert(unsigned(zero_extend(0x2e017f0, 64)) == 48240624);
assert(unsigned(zero_extend(0x2e017f8, 64)) == 48240632);
assert(unsigned(zero_extend(0x2e01800, 64)) == 48240640);
assert(unsigned(zero_extend(0x2e01808, 64)) == 48240648);
assert(unsigned(zero_extend(0x2e01810, 64)) == 48240656);
assert(unsigned(zero_extend(0x2e01818, 64)) == 48240664);
assert(unsigned(zero_extend(0x2e01820, 64)) == 48240672);
assert(unsigned(zero_extend(0x2e01828, 64)) == 48240680);
assert(unsigned(zero_extend(0x2e01830, 64)) == 48240688);
assert(unsigned(zero_extend(0x2e01838, 64)) == 48240696);
assert(unsigned(zero_extend(0x2e01840, 64)) == 48240704);
assert(unsigned(zero_extend(0x2e01848, 64)) == 48240712);
assert(unsigned(zero_extend(0x2e01850, 64)) == 48240720);
assert(unsigned(zero_extend(0x2e01858, 64)) == 48240728);
assert(unsigned(zero_extend(0x2e01860, 64)) == 48240736);
assert(unsigned(zero_extend(0x2e01868, 64)) == 48240744);
assert(unsigned(zero_extend(0x2e01870, 64)) == 48240752);
assert(unsigned(zero_extend(0x2e01878, 64)) == 48240760);
assert(unsigned(zero_extend(0x2e01880, 64)) == 48240768);
assert(unsigned(zero_extend(0x2e01888, 64)) == 48240776);
assert(unsigned(zero_extend(0x2e01890, 64)) == 48240784);
assert(unsigned(zero_extend(0x2e01898, 64)) == 48240792);
assert(unsigned(zero_extend(0x2e018a0, 64)) == 48240800);
assert(unsigned(zero_extend(0x2e018a8, 64)) == 48240808);
assert(unsigned(zero_extend(0x2e018b0, 64)) == 48240816);
assert(unsigned(zero_extend(0x2e018b8, 64)) == 48240824);
assert(unsigned(zero_extend(0x2eb0000, 64)) == 48955392);
assert(unsigned(zero_extend(0x2ec0000, 64)) == 49020928);
assert(unsigned(zero_extend(0x2ee0000, 64)) == 49152000);
assert(unsigned(zero_extend(0x2ef0000, 64)) == 49217536);
assert(unsigned(zero_extend(0x2ef0040, 64)) == 49217600);
assert(unsigned(zero_extend(0x2f, 64)) == 47);
assert(unsigned(zero_extend(0x2f0, 64)) == 752);
assert(unsigned(zero_extend(0x2f00000, 64)) == 49283072);
assert(unsigned(zero_extend(0x2f00000004, 64)) == 201863462916);
assert(unsigned(zero_extend(0x2f00008, 64)) == 49283080);
assert(unsigned(zero_extend(0x2f00010, 64)) == 49283088);
assert(unsigned(zero_extend(0x2f00018, 64)) == 49283096);
assert(unsigned(zero_extend(0x2f00020, 64)) == 49283104);
assert(unsigned(zero_extend(0x2f00028, 64)) == 49283112);
assert(unsigned(zero_extend(0x2f00030, 64)) == 49283120);
assert(unsigned(zero_extend(0x2f00038, 64)) == 49283128);
assert(unsigned(zero_extend(0x2f00040, 64)) == 49283136);
assert(unsigned(zero_extend(0x2f00048, 64)) == 49283144);
assert(unsigned(zero_extend(0x2f00050, 64)) == 49283152);
assert(unsigned(zero_extend(0x2f00058, 64)) == 49283160);
assert(unsigned(zero_extend(0x2f00060, 64)) == 49283168);
assert(unsigned(zero_extend(0x2f00068, 64)) == 49283176);
assert(unsigned(zero_extend(0x2f00070, 64)) == 49283184);
assert(unsigned(zero_extend(0x2f00078, 64)) == 49283192);
assert(unsigned(zero_extend(0x2f00080, 64)) == 49283200);
assert(unsigned(zero_extend(0x2f00088, 64)) == 49283208);
assert(unsigned(zero_extend(0x2f00090, 64)) == 49283216);
assert(unsigned(zero_extend(0x2f00098, 64)) == 49283224);
assert(unsigned(zero_extend(0x2f000a0, 64)) == 49283232);
assert(unsigned(zero_extend(0x2f000a8, 64)) == 49283240);
assert(unsigned(zero_extend(0x2f000b0, 64)) == 49283248);
assert(unsigned(zero_extend(0x2f000b8, 64)) == 49283256);
assert(unsigned(zero_extend(0x2f000c0, 64)) == 49283264);
assert(unsigned(zero_extend(0x2f000c8, 64)) == 49283272);
assert(unsigned(zero_extend(0x2f000d0, 64)) == 49283280);
assert(unsigned(zero_extend(0x2f000d8, 64)) == 49283288);
assert(unsigned(zero_extend(0x2f000e0, 64)) == 49283296);
assert(unsigned(zero_extend(0x2f000e8, 64)) == 49283304);
assert(unsigned(zero_extend(0x2f000f0, 64)) == 49283312);
assert(unsigned(zero_extend(0x2f000f8, 64)) == 49283320);
assert(unsigned(zero_extend(0x2f00100, 64)) == 49283328);
assert(unsigned(zero_extend(0x2f00108, 64)) == 49283336);
assert(unsigned(zero_extend(0x2f00110, 64)) == 49283344);
assert(unsigned(zero_extend(0x2f00118, 64)) == 49283352);
assert(unsigned(zero_extend(0x2f00120, 64)) == 49283360);
assert(unsigned(zero_extend(0x2f00128, 64)) == 49283368);
assert(unsigned(zero_extend(0x2f00130, 64)) == 49283376);
assert(unsigned(zero_extend(0x2f00138, 64)) == 49283384);
assert(unsigned(zero_extend(0x2f00140, 64)) == 49283392);
assert(unsigned(zero_extend(0x2f00148, 64)) == 49283400);
assert(unsigned(zero_extend(0x2f00150, 64)) == 49283408);
assert(unsigned(zero_extend(0x2f00158, 64)) == 49283416);
assert(unsigned(zero_extend(0x2f00160, 64)) == 49283424);
assert(unsigned(zero_extend(0x2f00168, 64)) == 49283432);
assert(unsigned(zero_extend(0x2f00170, 64)) == 49283440);
assert(unsigned(zero_extend(0x2f00178, 64)) == 49283448);
assert(unsigned(zero_extend(0x2f00180, 64)) == 49283456);
assert(unsigned(zero_extend(0x2f00188, 64)) == 49283464);
assert(unsigned(zero_extend(0x2f00190, 64)) == 49283472);
assert(unsigned(zero_extend(0x2f00198, 64)) == 49283480);
assert(unsigned(zero_extend(0x2f001a0, 64)) == 49283488);
assert(unsigned(zero_extend(0x2f001a8, 64)) == 49283496);
assert(unsigned(zero_extend(0x2f001b0, 64)) == 49283504);
assert(unsigned(zero_extend(0x2f001b8, 64)) == 49283512);
assert(unsigned(zero_extend(0x2f001c0, 64)) == 49283520);
assert(unsigned(zero_extend(0x2f001c8, 64)) == 49283528);
assert(unsigned(zero_extend(0x2f001d0, 64)) == 49283536);
assert(unsigned(zero_extend(0x2f001d8, 64)) == 49283544);
assert(unsigned(zero_extend(0x2f001e0, 64)) == 49283552);
assert(unsigned(zero_extend(0x2f001e8, 64)) == 49283560);
assert(unsigned(zero_extend(0x2f001f0, 64)) == 49283568);
assert(unsigned(zero_extend(0x2f001f8, 64)) == 49283576);
assert(unsigned(zero_extend(0x2f00200, 64)) == 49283584);
assert(unsigned(zero_extend(0x2f00208, 64)) == 49283592);
assert(unsigned(zero_extend(0x2f00210, 64)) == 49283600);
assert(unsigned(zero_extend(0x2f00218, 64)) == 49283608);
assert(unsigned(zero_extend(0x2f00220, 64)) == 49283616);
assert(unsigned(zero_extend(0x2f00228, 64)) == 49283624);
assert(unsigned(zero_extend(0x2f00230, 64)) == 49283632);
assert(unsigned(zero_extend(0x2f00238, 64)) == 49283640);
assert(unsigned(zero_extend(0x2f00240, 64)) == 49283648);
assert(unsigned(zero_extend(0x2f00248, 64)) == 49283656);
assert(unsigned(zero_extend(0x2f00250, 64)) == 49283664);
assert(unsigned(zero_extend(0x2f00258, 64)) == 49283672);
assert(unsigned(zero_extend(0x2f00260, 64)) == 49283680);
assert(unsigned(zero_extend(0x2f00268, 64)) == 49283688);
assert(unsigned(zero_extend(0x2f00270, 64)) == 49283696);
assert(unsigned(zero_extend(0x2f00278, 64)) == 49283704);
assert(unsigned(zero_extend(0x2f00280, 64)) == 49283712);
assert(unsigned(zero_extend(0x2f00288, 64)) == 49283720);
assert(unsigned(zero_extend(0x2f00290, 64)) == 49283728);
assert(unsigned(zero_extend(0x2f00298, 64)) == 49283736);
assert(unsigned(zero_extend(0x2f002a0, 64)) == 49283744);
assert(unsigned(zero_extend(0x2f002a8, 64)) == 49283752);
assert(unsigned(zero_extend(0x2f002b0, 64)) == 49283760);
assert(unsigned(zero_extend(0x2f002b8, 64)) == 49283768);
assert(unsigned(zero_extend(0x2f002c0, 64)) == 49283776);
assert(unsigned(zero_extend(0x2f002c8, 64)) == 49283784);
assert(unsigned(zero_extend(0x2f002d0, 64)) == 49283792);
assert(unsigned(zero_extend(0x2f002d8, 64)) == 49283800);
assert(unsigned(zero_extend(0x2f002e0, 64)) == 49283808);
assert(unsigned(zero_extend(0x2f002e8, 64)) == 49283816);
assert(unsigned(zero_extend(0x2f002f0, 64)) == 49283824);
assert(unsigned(zero_extend(0x2f002f8, 64)) == 49283832);
assert(unsigned(zero_extend(0x2f00300, 64)) == 49283840);
assert(unsigned(zero_extend(0x2f00308, 64)) == 49283848);
assert(unsigned(zero_extend(0x2f00310, 64)) == 49283856);
assert(unsigned(zero_extend(0x2f00318, 64)) == 49283864);
assert(unsigned(zero_extend(0x2f00320, 64)) == 49283872);
assert(unsigned(zero_extend(0x2f00328, 64)) == 49283880);
assert(unsigned(zero_extend(0x2f00330, 64)) == 49283888);
assert(unsigned(zero_extend(0x2f00338, 64)) == 49283896);
assert(unsigned(zero_extend(0x2f00340, 64)) == 49283904);
assert(unsigned(zero_extend(0x2f00348, 64)) == 49283912);
assert(unsigned(zero_extend(0x2f00350, 64)) == 49283920);
assert(unsigned(zero_extend(0x2f00358, 64)) == 49283928);
assert(unsigned(zero_extend(0x2f00360, 64)) == 49283936);
assert(unsigned(zero_extend(0x2f00368, 64)) == 49283944);
assert(unsigned(zero_extend(0x2f00370, 64)) == 49283952);
assert(unsigned(zero_extend(0x2f00378, 64)) == 49283960);
assert(unsigned(zero_extend(0x2f00380, 64)) == 49283968);
assert(unsigned(zero_extend(0x2f00388, 64)) == 49283976);
assert(unsigned(zero_extend(0x2f00390, 64)) == 49283984);
assert(unsigned(zero_extend(0x2f00398, 64)) == 49283992);
assert(unsigned(zero_extend(0x2f003a0, 64)) == 49284000);
assert(unsigned(zero_extend(0x2f003a8, 64)) == 49284008);
assert(unsigned(zero_extend(0x2f003b0, 64)) == 49284016);
assert(unsigned(zero_extend(0x2f003b8, 64)) == 49284024);
assert(unsigned(zero_extend(0x2f003c0, 64)) == 49284032);
assert(unsigned(zero_extend(0x2f003c8, 64)) == 49284040);
assert(unsigned(zero_extend(0x2f003d0, 64)) == 49284048);
assert(unsigned(zero_extend(0x2f003d8, 64)) == 49284056);
assert(unsigned(zero_extend(0x2f003e0, 64)) == 49284064);
assert(unsigned(zero_extend(0x2f003e8, 64)) == 49284072);
assert(unsigned(zero_extend(0x2f003f0, 64)) == 49284080);
assert(unsigned(zero_extend(0x2f003f8, 64)) == 49284088);
assert(unsigned(zero_extend(0x2f00400, 64)) == 49284096);
assert(unsigned(zero_extend(0x2f00408, 64)) == 49284104);
assert(unsigned(zero_extend(0x2f00410, 64)) == 49284112);
assert(unsigned(zero_extend(0x2f00418, 64)) == 49284120);
assert(unsigned(zero_extend(0x2f00420, 64)) == 49284128);
assert(unsigned(zero_extend(0x2f00428, 64)) == 49284136);
assert(unsigned(zero_extend(0x2f00430, 64)) == 49284144);
assert(unsigned(zero_extend(0x2f00438, 64)) == 49284152);
assert(unsigned(zero_extend(0x2f00440, 64)) == 49284160);
assert(unsigned(zero_extend(0x2f00448, 64)) == 49284168);
assert(unsigned(zero_extend(0x2f00450, 64)) == 49284176);
assert(unsigned(zero_extend(0x2f00458, 64)) == 49284184);
assert(unsigned(zero_extend(0x2f00460, 64)) == 49284192);
assert(unsigned(zero_extend(0x2f00468, 64)) == 49284200);
assert(unsigned(zero_extend(0x2f00470, 64)) == 49284208);
assert(unsigned(zero_extend(0x2f00478, 64)) == 49284216);
assert(unsigned(zero_extend(0x2f00480, 64)) == 49284224);
assert(unsigned(zero_extend(0x2f00488, 64)) == 49284232);
assert(unsigned(zero_extend(0x2f00490, 64)) == 49284240);
assert(unsigned(zero_extend(0x2f00498, 64)) == 49284248);
assert(unsigned(zero_extend(0x2f004a0, 64)) == 49284256);
assert(unsigned(zero_extend(0x2f004a8, 64)) == 49284264);
assert(unsigned(zero_extend(0x2f004b0, 64)) == 49284272);
assert(unsigned(zero_extend(0x2f004b8, 64)) == 49284280);
assert(unsigned(zero_extend(0x2f004c0, 64)) == 49284288);
assert(unsigned(zero_extend(0x2f004c8, 64)) == 49284296);
assert(unsigned(zero_extend(0x2f004d0, 64)) == 49284304);
assert(unsigned(zero_extend(0x2f004d8, 64)) == 49284312);
assert(unsigned(zero_extend(0x2f004e0, 64)) == 49284320);
assert(unsigned(zero_extend(0x2f004e8, 64)) == 49284328);
assert(unsigned(zero_extend(0x2f004f0, 64)) == 49284336);
assert(unsigned(zero_extend(0x2f004f8, 64)) == 49284344);
assert(unsigned(zero_extend(0x2f00500, 64)) == 49284352);
assert(unsigned(zero_extend(0x2f00508, 64)) == 49284360);
assert(unsigned(zero_extend(0x2f00510, 64)) == 49284368);
assert(unsigned(zero_extend(0x2f00518, 64)) == 49284376);
assert(unsigned(zero_extend(0x2f00520, 64)) == 49284384);
assert(unsigned(zero_extend(0x2f00528, 64)) == 49284392);
assert(unsigned(zero_extend(0x2f00530, 64)) == 49284400);
assert(unsigned(zero_extend(0x2f00538, 64)) == 49284408);
assert(unsigned(zero_extend(0x2f00540, 64)) == 49284416);
assert(unsigned(zero_extend(0x2f00548, 64)) == 49284424);
assert(unsigned(zero_extend(0x2f00550, 64)) == 49284432);
assert(unsigned(zero_extend(0x2f00558, 64)) == 49284440);
assert(unsigned(zero_extend(0x2f00560, 64)) == 49284448);
assert(unsigned(zero_extend(0x2f00568, 64)) == 49284456);
assert(unsigned(zero_extend(0x2f00570, 64)) == 49284464);
assert(unsigned(zero_extend(0x2f00578, 64)) == 49284472);
assert(unsigned(zero_extend(0x2f00580, 64)) == 49284480);
assert(unsigned(zero_extend(0x2f00588, 64)) == 49284488);
assert(unsigned(zero_extend(0x2f00590, 64)) == 49284496);
assert(unsigned(zero_extend(0x2f00598, 64)) == 49284504);
assert(unsigned(zero_extend(0x2f005a0, 64)) == 49284512);
assert(unsigned(zero_extend(0x2f005a8, 64)) == 49284520);
assert(unsigned(zero_extend(0x2f005b0, 64)) == 49284528);
assert(unsigned(zero_extend(0x2f005b8, 64)) == 49284536);
assert(unsigned(zero_extend(0x2f005c0, 64)) == 49284544);
assert(unsigned(zero_extend(0x2f005c8, 64)) == 49284552);
assert(unsigned(zero_extend(0x2f005d0, 64)) == 49284560);
assert(unsigned(zero_extend(0x2f005d8, 64)) == 49284568);
assert(unsigned(zero_extend(0x2f005e0, 64)) == 49284576);
assert(unsigned(zero_extend(0x2f005e8, 64)) == 49284584);
assert(unsigned(zero_extend(0x2f005f0, 64)) == 49284592);
assert(unsigned(zero_extend(0x2f005f8, 64)) == 49284600);
assert(unsigned(zero_extend(0x2f00600, 64)) == 49284608);
assert(unsigned(zero_extend(0x2f00608, 64)) == 49284616);
assert(unsigned(zero_extend(0x2f00610, 64)) == 49284624);
assert(unsigned(zero_extend(0x2f00618, 64)) == 49284632);
assert(unsigned(zero_extend(0x2f00620, 64)) == 49284640);
assert(unsigned(zero_extend(0x2f00628, 64)) == 49284648);
assert(unsigned(zero_extend(0x2f00630, 64)) == 49284656);
assert(unsigned(zero_extend(0x2f00638, 64)) == 49284664);
assert(unsigned(zero_extend(0x2f00640, 64)) == 49284672);
assert(unsigned(zero_extend(0x2f00648, 64)) == 49284680);
assert(unsigned(zero_extend(0x2f00650, 64)) == 49284688);
assert(unsigned(zero_extend(0x2f00658, 64)) == 49284696);
assert(unsigned(zero_extend(0x2f00660, 64)) == 49284704);
assert(unsigned(zero_extend(0x2f00668, 64)) == 49284712);
assert(unsigned(zero_extend(0x2f00670, 64)) == 49284720);
assert(unsigned(zero_extend(0x2f00678, 64)) == 49284728);
assert(unsigned(zero_extend(0x2f00680, 64)) == 49284736);
assert(unsigned(zero_extend(0x2f00688, 64)) == 49284744);
assert(unsigned(zero_extend(0x2f00690, 64)) == 49284752);
assert(unsigned(zero_extend(0x2f00698, 64)) == 49284760);
assert(unsigned(zero_extend(0x2f006a0, 64)) == 49284768);
assert(unsigned(zero_extend(0x2f006a8, 64)) == 49284776);
assert(unsigned(zero_extend(0x2f006b0, 64)) == 49284784);
assert(unsigned(zero_extend(0x2f006b8, 64)) == 49284792);
assert(unsigned(zero_extend(0x2f006c0, 64)) == 49284800);
assert(unsigned(zero_extend(0x2f006c8, 64)) == 49284808);
assert(unsigned(zero_extend(0x2f006d0, 64)) == 49284816);
assert(unsigned(zero_extend(0x2f006d8, 64)) == 49284824);
assert(unsigned(zero_extend(0x2f006e0, 64)) == 49284832);
assert(unsigned(zero_extend(0x2f006e8, 64)) == 49284840);
assert(unsigned(zero_extend(0x2f006f0, 64)) == 49284848);
assert(unsigned(zero_extend(0x2f006f8, 64)) == 49284856);
assert(unsigned(zero_extend(0x2f00700, 64)) == 49284864);
assert(unsigned(zero_extend(0x2f00708, 64)) == 49284872);
assert(unsigned(zero_extend(0x2f00710, 64)) == 49284880);
assert(unsigned(zero_extend(0x2f00718, 64)) == 49284888);
assert(unsigned(zero_extend(0x2f00720, 64)) == 49284896);
assert(unsigned(zero_extend(0x2f00728, 64)) == 49284904);
assert(unsigned(zero_extend(0x2f00730, 64)) == 49284912);
assert(unsigned(zero_extend(0x2f00738, 64)) == 49284920);
assert(unsigned(zero_extend(0x2f00740, 64)) == 49284928);
assert(unsigned(zero_extend(0x2f00748, 64)) == 49284936);
assert(unsigned(zero_extend(0x2f00750, 64)) == 49284944);
assert(unsigned(zero_extend(0x2f00758, 64)) == 49284952);
assert(unsigned(zero_extend(0x2f00760, 64)) == 49284960);
assert(unsigned(zero_extend(0x2f00768, 64)) == 49284968);
assert(unsigned(zero_extend(0x2f00770, 64)) == 49284976);
assert(unsigned(zero_extend(0x2f00778, 64)) == 49284984);
assert(unsigned(zero_extend(0x2f00780, 64)) == 49284992);
assert(unsigned(zero_extend(0x2f00788, 64)) == 49285000);
assert(unsigned(zero_extend(0x2f00790, 64)) == 49285008);
assert(unsigned(zero_extend(0x2f00798, 64)) == 49285016);
assert(unsigned(zero_extend(0x2f007a0, 64)) == 49285024);
assert(unsigned(zero_extend(0x2f007a8, 64)) == 49285032);
assert(unsigned(zero_extend(0x2f007b0, 64)) == 49285040);
assert(unsigned(zero_extend(0x2f007b8, 64)) == 49285048);
assert(unsigned(zero_extend(0x2f007c0, 64)) == 49285056);
assert(unsigned(zero_extend(0x2f007c8, 64)) == 49285064);
assert(unsigned(zero_extend(0x2f007d0, 64)) == 49285072);
assert(unsigned(zero_extend(0x2f007d8, 64)) == 49285080);
assert(unsigned(zero_extend(0x2f007e0, 64)) == 49285088);
assert(unsigned(zero_extend(0x2f007e8, 64)) == 49285096);
assert(unsigned(zero_extend(0x2f007f0, 64)) == 49285104);
assert(unsigned(zero_extend(0x2f007f8, 64)) == 49285112);
assert(unsigned(zero_extend(0x2f00800, 64)) == 49285120);
assert(unsigned(zero_extend(0x2f00808, 64)) == 49285128);
assert(unsigned(zero_extend(0x2f00810, 64)) == 49285136);
assert(unsigned(zero_extend(0x2f00818, 64)) == 49285144);
assert(unsigned(zero_extend(0x2f00820, 64)) == 49285152);
assert(unsigned(zero_extend(0x2f00828, 64)) == 49285160);
assert(unsigned(zero_extend(0x2f00830, 64)) == 49285168);
assert(unsigned(zero_extend(0x2f00838, 64)) == 49285176);
assert(unsigned(zero_extend(0x2f00840, 64)) == 49285184);
assert(unsigned(zero_extend(0x2f00848, 64)) == 49285192);
assert(unsigned(zero_extend(0x2f00850, 64)) == 49285200);
assert(unsigned(zero_extend(0x2f00858, 64)) == 49285208);
assert(unsigned(zero_extend(0x2f00860, 64)) == 49285216);
assert(unsigned(zero_extend(0x2f00868, 64)) == 49285224);
assert(unsigned(zero_extend(0x2f00870, 64)) == 49285232);
assert(unsigned(zero_extend(0x2f00878, 64)) == 49285240);
assert(unsigned(zero_extend(0x2f00880, 64)) == 49285248);
assert(unsigned(zero_extend(0x2f00888, 64)) == 49285256);
assert(unsigned(zero_extend(0x2f00890, 64)) == 49285264);
assert(unsigned(zero_extend(0x2f00898, 64)) == 49285272);
assert(unsigned(zero_extend(0x2f008a0, 64)) == 49285280);
assert(unsigned(zero_extend(0x2f008a8, 64)) == 49285288);
assert(unsigned(zero_extend(0x2f008b0, 64)) == 49285296);
assert(unsigned(zero_extend(0x2f008b8, 64)) == 49285304);
assert(unsigned(zero_extend(0x2f008c0, 64)) == 49285312);
assert(unsigned(zero_extend(0x2f008c8, 64)) == 49285320);
assert(unsigned(zero_extend(0x2f008d0, 64)) == 49285328);
assert(unsigned(zero_extend(0x2f008d8, 64)) == 49285336);
assert(unsigned(zero_extend(0x2f008e0, 64)) == 49285344);
assert(unsigned(zero_extend(0x2f008e8, 64)) == 49285352);
assert(unsigned(zero_extend(0x2f008f0, 64)) == 49285360);
assert(unsigned(zero_extend(0x2f008f8, 64)) == 49285368);
assert(unsigned(zero_extend(0x2f00900, 64)) == 49285376);
assert(unsigned(zero_extend(0x2f00908, 64)) == 49285384);
assert(unsigned(zero_extend(0x2f00910, 64)) == 49285392);
assert(unsigned(zero_extend(0x2f00918, 64)) == 49285400);
assert(unsigned(zero_extend(0x2f00920, 64)) == 49285408);
assert(unsigned(zero_extend(0x2f00928, 64)) == 49285416);
assert(unsigned(zero_extend(0x2f00930, 64)) == 49285424);
assert(unsigned(zero_extend(0x2f00938, 64)) == 49285432);
assert(unsigned(zero_extend(0x2f00940, 64)) == 49285440);
assert(unsigned(zero_extend(0x2f00948, 64)) == 49285448);
assert(unsigned(zero_extend(0x2f00950, 64)) == 49285456);
assert(unsigned(zero_extend(0x2f00958, 64)) == 49285464);
assert(unsigned(zero_extend(0x2f00960, 64)) == 49285472);
assert(unsigned(zero_extend(0x2f00968, 64)) == 49285480);
assert(unsigned(zero_extend(0x2f00970, 64)) == 49285488);
assert(unsigned(zero_extend(0x2f00978, 64)) == 49285496);
assert(unsigned(zero_extend(0x2f00980, 64)) == 49285504);
assert(unsigned(zero_extend(0x2f00988, 64)) == 49285512);
assert(unsigned(zero_extend(0x2f00990, 64)) == 49285520);
assert(unsigned(zero_extend(0x2f00998, 64)) == 49285528);
assert(unsigned(zero_extend(0x2f009a0, 64)) == 49285536);
assert(unsigned(zero_extend(0x2f009a8, 64)) == 49285544);
assert(unsigned(zero_extend(0x2f009b0, 64)) == 49285552);
assert(unsigned(zero_extend(0x2f009b8, 64)) == 49285560);
assert(unsigned(zero_extend(0x2f009c0, 64)) == 49285568);
assert(unsigned(zero_extend(0x2f009c8, 64)) == 49285576);
assert(unsigned(zero_extend(0x2f009d0, 64)) == 49285584);
assert(unsigned(zero_extend(0x2f009d8, 64)) == 49285592);
assert(unsigned(zero_extend(0x2f009e0, 64)) == 49285600);
assert(unsigned(zero_extend(0x2f009e8, 64)) == 49285608);
assert(unsigned(zero_extend(0x2f009f0, 64)) == 49285616);
assert(unsigned(zero_extend(0x2f009f8, 64)) == 49285624);
assert(unsigned(zero_extend(0x2f00a00, 64)) == 49285632);
assert(unsigned(zero_extend(0x2f00a08, 64)) == 49285640);
assert(unsigned(zero_extend(0x2f00a10, 64)) == 49285648);
assert(unsigned(zero_extend(0x2f00a18, 64)) == 49285656);
assert(unsigned(zero_extend(0x2f00a20, 64)) == 49285664);
assert(unsigned(zero_extend(0x2f00a28, 64)) == 49285672);
assert(unsigned(zero_extend(0x2f00a30, 64)) == 49285680);
assert(unsigned(zero_extend(0x2f00a38, 64)) == 49285688);
assert(unsigned(zero_extend(0x2f00a40, 64)) == 49285696);
assert(unsigned(zero_extend(0x2f00a48, 64)) == 49285704);
assert(unsigned(zero_extend(0x2f00a50, 64)) == 49285712);
assert(unsigned(zero_extend(0x2f00a58, 64)) == 49285720);
assert(unsigned(zero_extend(0x2f00a60, 64)) == 49285728);
assert(unsigned(zero_extend(0x2f00a68, 64)) == 49285736);
assert(unsigned(zero_extend(0x2f00a70, 64)) == 49285744);
assert(unsigned(zero_extend(0x2f00a78, 64)) == 49285752);
assert(unsigned(zero_extend(0x2f00a80, 64)) == 49285760);
assert(unsigned(zero_extend(0x2f00a88, 64)) == 49285768);
assert(unsigned(zero_extend(0x2f00a90, 64)) == 49285776);
assert(unsigned(zero_extend(0x2f00a98, 64)) == 49285784);
assert(unsigned(zero_extend(0x2f00aa0, 64)) == 49285792);
assert(unsigned(zero_extend(0x2f00aa8, 64)) == 49285800);
assert(unsigned(zero_extend(0x2f00ab0, 64)) == 49285808);
assert(unsigned(zero_extend(0x2f00ab8, 64)) == 49285816);
assert(unsigned(zero_extend(0x2f00ac0, 64)) == 49285824);
assert(unsigned(zero_extend(0x2f00ac8, 64)) == 49285832);
assert(unsigned(zero_extend(0x2f00ad0, 64)) == 49285840);
assert(unsigned(zero_extend(0x2f00ad8, 64)) == 49285848);
assert(unsigned(zero_extend(0x2f00ae0, 64)) == 49285856);
assert(unsigned(zero_extend(0x2f00ae8, 64)) == 49285864);
assert(unsigned(zero_extend(0x2f00af0, 64)) == 49285872);
assert(unsigned(zero_extend(0x2f00af8, 64)) == 49285880);
assert(unsigned(zero_extend(0x2f00b00, 64)) == 49285888);
assert(unsigned(zero_extend(0x2f00b08, 64)) == 49285896);
assert(unsigned(zero_extend(0x2f00b10, 64)) == 49285904);
assert(unsigned(zero_extend(0x2f00b18, 64)) == 49285912);
assert(unsigned(zero_extend(0x2f00b20, 64)) == 49285920);
assert(unsigned(zero_extend(0x2f00b28, 64)) == 49285928);
assert(unsigned(zero_extend(0x2f00b30, 64)) == 49285936);
assert(unsigned(zero_extend(0x2f00b38, 64)) == 49285944);
assert(unsigned(zero_extend(0x2f00b40, 64)) == 49285952);
assert(unsigned(zero_extend(0x2f00b48, 64)) == 49285960);
assert(unsigned(zero_extend(0x2f00b50, 64)) == 49285968);
assert(unsigned(zero_extend(0x2f00b58, 64)) == 49285976);
assert(unsigned(zero_extend(0x2f00b60, 64)) == 49285984);
assert(unsigned(zero_extend(0x2f00b68, 64)) == 49285992);
assert(unsigned(zero_extend(0x2f00b70, 64)) == 49286000);
assert(unsigned(zero_extend(0x2f00b78, 64)) == 49286008);
assert(unsigned(zero_extend(0x2f00b80, 64)) == 49286016);
assert(unsigned(zero_extend(0x2f00b88, 64)) == 49286024);
assert(unsigned(zero_extend(0x2f00b90, 64)) == 49286032);
assert(unsigned(zero_extend(0x2f00b98, 64)) == 49286040);
assert(unsigned(zero_extend(0x2f00ba0, 64)) == 49286048);
assert(unsigned(zero_extend(0x2f00ba8, 64)) == 49286056);
assert(unsigned(zero_extend(0x2f00bb0, 64)) == 49286064);
assert(unsigned(zero_extend(0x2f00bb8, 64)) == 49286072);
assert(unsigned(zero_extend(0x2f00bc0, 64)) == 49286080);
assert(unsigned(zero_extend(0x2f00bc8, 64)) == 49286088);
assert(unsigned(zero_extend(0x2f00bd0, 64)) == 49286096);
assert(unsigned(zero_extend(0x2f00bd8, 64)) == 49286104);
assert(unsigned(zero_extend(0x2f00be0, 64)) == 49286112);
assert(unsigned(zero_extend(0x2f00be8, 64)) == 49286120);
assert(unsigned(zero_extend(0x2f00bf0, 64)) == 49286128);
assert(unsigned(zero_extend(0x2f00bf8, 64)) == 49286136);
assert(unsigned(zero_extend(0x2f00c00, 64)) == 49286144);
assert(unsigned(zero_extend(0x2f00c08, 64)) == 49286152);
assert(unsigned(zero_extend(0x2f00c10, 64)) == 49286160);
assert(unsigned(zero_extend(0x2f00c18, 64)) == 49286168);
assert(unsigned(zero_extend(0x2f00c20, 64)) == 49286176);
assert(unsigned(zero_extend(0x2f00c28, 64)) == 49286184);
assert(unsigned(zero_extend(0x2f00c30, 64)) == 49286192);
assert(unsigned(zero_extend(0x2f00c38, 64)) == 49286200);
assert(unsigned(zero_extend(0x2f00c40, 64)) == 49286208);
assert(unsigned(zero_extend(0x2f00c48, 64)) == 49286216);
assert(unsigned(zero_extend(0x2f00c50, 64)) == 49286224);
assert(unsigned(zero_extend(0x2f00c58, 64)) == 49286232);
assert(unsigned(zero_extend(0x2f00c60, 64)) == 49286240);
assert(unsigned(zero_extend(0x2f00c68, 64)) == 49286248);
assert(unsigned(zero_extend(0x2f00c70, 64)) == 49286256);
assert(unsigned(zero_extend(0x2f00c78, 64)) == 49286264);
assert(unsigned(zero_extend(0x2f00c80, 64)) == 49286272);
assert(unsigned(zero_extend(0x2f00c88, 64)) == 49286280);
assert(unsigned(zero_extend(0x2f00c90, 64)) == 49286288);
assert(unsigned(zero_extend(0x2f00c98, 64)) == 49286296);
assert(unsigned(zero_extend(0x2f00ca0, 64)) == 49286304);
assert(unsigned(zero_extend(0x2f00ca8, 64)) == 49286312);
assert(unsigned(zero_extend(0x2f00cb0, 64)) == 49286320);
assert(unsigned(zero_extend(0x2f00cb8, 64)) == 49286328);
assert(unsigned(zero_extend(0x2f00cc0, 64)) == 49286336);
assert(unsigned(zero_extend(0x2f00cc8, 64)) == 49286344);
assert(unsigned(zero_extend(0x2f00cd0, 64)) == 49286352);
assert(unsigned(zero_extend(0x2f00cd8, 64)) == 49286360);
assert(unsigned(zero_extend(0x2f00ce0, 64)) == 49286368);
assert(unsigned(zero_extend(0x2f00ce8, 64)) == 49286376);
assert(unsigned(zero_extend(0x2f00cf0, 64)) == 49286384);
assert(unsigned(zero_extend(0x2f00cf8, 64)) == 49286392);
assert(unsigned(zero_extend(0x2f00d00, 64)) == 49286400);
assert(unsigned(zero_extend(0x2f00d08, 64)) == 49286408);
assert(unsigned(zero_extend(0x2f00d10, 64)) == 49286416);
assert(unsigned(zero_extend(0x2f00d18, 64)) == 49286424);
assert(unsigned(zero_extend(0x2f00d20, 64)) == 49286432);
assert(unsigned(zero_extend(0x2f00d28, 64)) == 49286440);
assert(unsigned(zero_extend(0x2f00d30, 64)) == 49286448);
assert(unsigned(zero_extend(0x2f00d38, 64)) == 49286456);
assert(unsigned(zero_extend(0x2f00d40, 64)) == 49286464);
assert(unsigned(zero_extend(0x2f00d48, 64)) == 49286472);
assert(unsigned(zero_extend(0x2f00d50, 64)) == 49286480);
assert(unsigned(zero_extend(0x2f00d58, 64)) == 49286488);
assert(unsigned(zero_extend(0x2f00d60, 64)) == 49286496);
assert(unsigned(zero_extend(0x2f00d68, 64)) == 49286504);
assert(unsigned(zero_extend(0x2f00d70, 64)) == 49286512);
assert(unsigned(zero_extend(0x2f00d78, 64)) == 49286520);
assert(unsigned(zero_extend(0x2f00d80, 64)) == 49286528);
assert(unsigned(zero_extend(0x2f00d88, 64)) == 49286536);
assert(unsigned(zero_extend(0x2f00d90, 64)) == 49286544);
assert(unsigned(zero_extend(0x2f00d98, 64)) == 49286552);
assert(unsigned(zero_extend(0x2f00da0, 64)) == 49286560);
assert(unsigned(zero_extend(0x2f00da8, 64)) == 49286568);
assert(unsigned(zero_extend(0x2f00db0, 64)) == 49286576);
assert(unsigned(zero_extend(0x2f00db8, 64)) == 49286584);
assert(unsigned(zero_extend(0x2f00dc0, 64)) == 49286592);
assert(unsigned(zero_extend(0x2f00dc8, 64)) == 49286600);
assert(unsigned(zero_extend(0x2f00dd0, 64)) == 49286608);
assert(unsigned(zero_extend(0x2f00dd8, 64)) == 49286616);
assert(unsigned(zero_extend(0x2f00de0, 64)) == 49286624);
assert(unsigned(zero_extend(0x2f00de8, 64)) == 49286632);
assert(unsigned(zero_extend(0x2f00df0, 64)) == 49286640);
assert(unsigned(zero_extend(0x2f10000, 64)) == 49348608);
assert(unsigned(zero_extend(0x2f10800, 64)) == 49350656);
assert(unsigned(zero_extend(0x2f40000, 64)) == 49545216);
assert(unsigned(zero_extend(0x2f50000, 64)) == 49610752);
assert(unsigned(zero_extend(0x2f50040, 64)) == 49610816);
assert(unsigned(zero_extend(0x2f60000, 64)) == 49676288);
assert(unsigned(zero_extend(0x2f60200, 64)) == 49676800);
assert(unsigned(zero_extend(0x2f70000, 64)) == 49741824);
assert(unsigned(zero_extend(0x2f70800, 64)) == 49743872);
assert(unsigned(zero_extend(0x3, 64)) == 3);
assert(unsigned(zero_extend(0x30, 64)) == 48);
assert(unsigned(zero_extend(0x3000, 64)) == 12288);
assert(unsigned(zero_extend(0x30000, 64)) == 196608);
assert(unsigned(zero_extend(0x300000, 64)) == 3145728);
assert(unsigned(zero_extend(0x300001, 64)) == 3145729);
assert(unsigned(zero_extend(0x3000014, 64)) == 50331668);
assert(unsigned(zero_extend(0x3000018, 64)) == 50331672);
assert(unsigned(zero_extend(0x300001c, 64)) == 50331676);
assert(unsigned(zero_extend(0x300002, 64)) == 3145730);
assert(unsigned(zero_extend(0x3000020, 64)) == 50331680);
assert(unsigned(zero_extend(0x3000024, 64)) == 50331684);
assert(unsigned(zero_extend(0x300003, 64)) == 3145731);
assert(unsigned(zero_extend(0x3000030, 64)) == 50331696);
assert(unsigned(zero_extend(0x300004, 64)) == 3145732);
assert(unsigned(zero_extend(0x300005, 64)) == 3145733);
assert(unsigned(zero_extend(0x3000054, 64)) == 50331732);
assert(unsigned(zero_extend(0x3000058, 64)) == 50331736);
assert(unsigned(zero_extend(0x300005c, 64)) == 50331740);
assert(unsigned(zero_extend(0x300006, 64)) == 3145734);
assert(unsigned(zero_extend(0x3000068, 64)) == 50331752);
assert(unsigned(zero_extend(0x300007, 64)) == 3145735);
assert(unsigned(zero_extend(0x300008, 64)) == 3145736);
assert(unsigned(zero_extend(0x300009, 64)) == 3145737);
assert(unsigned(zero_extend(0x30000a, 64)) == 3145738);
assert(unsigned(zero_extend(0x30000b, 64)) == 3145739);
assert(unsigned(zero_extend(0x30000c, 64)) == 3145740);
assert(unsigned(zero_extend(0x30000c4, 64)) == 50331844);
assert(unsigned(zero_extend(0x30000c8, 64)) == 50331848);
assert(unsigned(zero_extend(0x30000cc, 64)) == 50331852);
assert(unsigned(zero_extend(0x30000d, 64)) == 3145741);
assert(unsigned(zero_extend(0x30000e, 64)) == 3145742);
assert(unsigned(zero_extend(0x3000288, 64)) == 50332296);
assert(unsigned(zero_extend(0x30002a0, 64)) == 50332320);
assert(unsigned(zero_extend(0x3002940, 64)) == 50342208);
assert(unsigned(zero_extend(0x3006b10, 64)) == 50359056);
assert(unsigned(zero_extend(0x3006b14, 64)) == 50359060);
assert(unsigned(zero_extend(0x3006b1c, 64)) == 50359068);
assert(unsigned(zero_extend(0x3006e40, 64)) == 50359872);
assert(unsigned(zero_extend(0x3008d20, 64)) == 50367776);
assert(unsigned(zero_extend(0x3008d21, 64)) == 50367777);
assert(unsigned(zero_extend(0x3008d24, 64)) == 50367780);
assert(unsigned(zero_extend(0x3008d28, 64)) == 50367784);
assert(unsigned(zero_extend(0x3008d30, 64)) == 50367792);
assert(unsigned(zero_extend(0x3008d38, 64)) == 50367800);
assert(unsigned(zero_extend(0x3008d40, 64)) == 50367808);
assert(unsigned(zero_extend(0x3008d48, 64)) == 50367816);
assert(unsigned(zero_extend(0x3008d50, 64)) == 50367824);
assert(unsigned(zero_extend(0x3008d51, 64)) == 50367825);
assert(unsigned(zero_extend(0x3008d54, 64)) == 50367828);
assert(unsigned(zero_extend(0x3008d58, 64)) == 50367832);
assert(unsigned(zero_extend(0x3008d5c, 64)) == 50367836);
assert(unsigned(zero_extend(0x3008d60, 64)) == 50367840);
assert(unsigned(zero_extend(0x3008d64, 64)) == 50367844);
assert(unsigned(zero_extend(0x3008d68, 64)) == 50367848);
assert(unsigned(zero_extend(0x3008d6c, 64)) == 50367852);
assert(unsigned(zero_extend(0x3008d70, 64)) == 50367856);
assert(unsigned(zero_extend(0x3008d74, 64)) == 50367860);
assert(unsigned(zero_extend(0x3008d78, 64)) == 50367864);
assert(unsigned(zero_extend(0x3008d7c, 64)) == 50367868);
assert(unsigned(zero_extend(0x3008d80, 64)) == 50367872);
assert(unsigned(zero_extend(0x3008d84, 64)) == 50367876);
assert(unsigned(zero_extend(0x3008d88, 64)) == 50367880);
assert(unsigned(zero_extend(0x3008d8c, 64)) == 50367884);
assert(unsigned(zero_extend(0x3008d90, 64)) == 50367888);
assert(unsigned(zero_extend(0x3008d94, 64)) == 50367892);
assert(unsigned(zero_extend(0x3008d98, 64)) == 50367896);
assert(unsigned(zero_extend(0x3008d9c, 64)) == 50367900);
assert(unsigned(zero_extend(0x3008da0, 64)) == 50367904);
assert(unsigned(zero_extend(0x3008da4, 64)) == 50367908);
assert(unsigned(zero_extend(0x3008da8, 64)) == 50367912);
assert(unsigned(zero_extend(0x3008dac, 64)) == 50367916);
assert(unsigned(zero_extend(0x3008db0, 64)) == 50367920);
assert(unsigned(zero_extend(0x3008db4, 64)) == 50367924);
assert(unsigned(zero_extend(0x3008db8, 64)) == 50367928);
assert(unsigned(zero_extend(0x3008dbc, 64)) == 50367932);
assert(unsigned(zero_extend(0x3008dc0, 64)) == 50367936);
assert(unsigned(zero_extend(0x3008dc4, 64)) == 50367940);
assert(unsigned(zero_extend(0x3008dc8, 64)) == 50367944);
assert(unsigned(zero_extend(0x3008dcc, 64)) == 50367948);
assert(unsigned(zero_extend(0x3008dd0, 64)) == 50367952);
assert(unsigned(zero_extend(0x3008dd4, 64)) == 50367956);
assert(unsigned(zero_extend(0x3008dd8, 64)) == 50367960);
assert(unsigned(zero_extend(0x3008ddc, 64)) == 50367964);
assert(unsigned(zero_extend(0x3008de0, 64)) == 50367968);
assert(unsigned(zero_extend(0x3008de4, 64)) == 50367972);
assert(unsigned(zero_extend(0x3008de8, 64)) == 50367976);
assert(unsigned(zero_extend(0x3008dec, 64)) == 50367980);
assert(unsigned(zero_extend(0x3008df0, 64)) == 50367984);
assert(unsigned(zero_extend(0x3008df8, 64)) == 50367992);
assert(unsigned(zero_extend(0x3008e00, 64)) == 50368000);
assert(unsigned(zero_extend(0x3008e08, 64)) == 50368008);
assert(unsigned(zero_extend(0x3008e10, 64)) == 50368016);
assert(unsigned(zero_extend(0x3008e18, 64)) == 50368024);
assert(unsigned(zero_extend(0x3008e20, 64)) == 50368032);
assert(unsigned(zero_extend(0x3008e28, 64)) == 50368040);
assert(unsigned(zero_extend(0x3008e30, 64)) == 50368048);
assert(unsigned(zero_extend(0x3008e38, 64)) == 50368056);
assert(unsigned(zero_extend(0x3008e40, 64)) == 50368064);
assert(unsigned(zero_extend(0x3010e40, 64)) == 50400832);
assert(unsigned(zero_extend(0x30e0000, 64)) == 51249152);
assert(unsigned(zero_extend(0x30f0000, 64)) == 51314688);
assert(unsigned(zero_extend(0x31, 64)) == 49);
assert(unsigned(zero_extend(0x3100000, 64)) == 51380224);
assert(unsigned(zero_extend(0x3100040, 64)) == 51380288);
assert(unsigned(zero_extend(0x3110000, 64)) == 51445760);
assert(unsigned(zero_extend(0x3110208, 64)) == 51446280);
assert(unsigned(zero_extend(0x3120000, 64)) == 51511296);
assert(unsigned(zero_extend(0x3120800, 64)) == 51513344);
assert(unsigned(zero_extend(0x31d0000, 64)) == 52232192);
assert(unsigned(zero_extend(0x31d0004, 64)) == 52232196);
assert(unsigned(zero_extend(0x31d0008, 64)) == 52232200);
assert(unsigned(zero_extend(0x31d000c, 64)) == 52232204);
assert(unsigned(zero_extend(0x31d0010, 64)) == 52232208);
assert(unsigned(zero_extend(0x31d0014, 64)) == 52232212);
assert(unsigned(zero_extend(0x31d0018, 64)) == 52232216);
assert(unsigned(zero_extend(0x31d001c, 64)) == 52232220);
assert(unsigned(zero_extend(0x31d0020, 64)) == 52232224);
assert(unsigned(zero_extend(0x31d0040, 64)) == 52232256);
assert(unsigned(zero_extend(0x31d0044, 64)) == 52232260);
assert(unsigned(zero_extend(0x31d0048, 64)) == 52232264);
assert(unsigned(zero_extend(0x31d004c, 64)) == 52232268);
assert(unsigned(zero_extend(0x31d0050, 64)) == 52232272);
assert(unsigned(zero_extend(0x31d0054, 64)) == 52232276);
assert(unsigned(zero_extend(0x31d0058, 64)) == 52232280);
assert(unsigned(zero_extend(0x31d005c, 64)) == 52232284);
assert(unsigned(zero_extend(0x31d0060, 64)) == 52232288);
assert(unsigned(zero_extend(0x31d0064, 64)) == 52232292);
assert(unsigned(zero_extend(0x31d0068, 64)) == 52232296);
assert(unsigned(zero_extend(0x31d006c, 64)) == 52232300);
assert(unsigned(zero_extend(0x31d0070, 64)) == 52232304);
assert(unsigned(zero_extend(0x31d0074, 64)) == 52232308);
assert(unsigned(zero_extend(0x31d0078, 64)) == 52232312);
assert(unsigned(zero_extend(0x31d007c, 64)) == 52232316);
assert(unsigned(zero_extend(0x31d0080, 64)) == 52232320);
assert(unsigned(zero_extend(0x31d0084, 64)) == 52232324);
assert(unsigned(zero_extend(0x31d0088, 64)) == 52232328);
assert(unsigned(zero_extend(0x31d008c, 64)) == 52232332);
assert(unsigned(zero_extend(0x31d0090, 64)) == 52232336);
assert(unsigned(zero_extend(0x31d0094, 64)) == 52232340);
assert(unsigned(zero_extend(0x31d0098, 64)) == 52232344);
assert(unsigned(zero_extend(0x31d009c, 64)) == 52232348);
assert(unsigned(zero_extend(0x31d00a0, 64)) == 52232352);
assert(unsigned(zero_extend(0x31d00a4, 64)) == 52232356);
assert(unsigned(zero_extend(0x31d00a8, 64)) == 52232360);
assert(unsigned(zero_extend(0x31d00ac, 64)) == 52232364);
assert(unsigned(zero_extend(0x31d00b0, 64)) == 52232368);
assert(unsigned(zero_extend(0x31d00b4, 64)) == 52232372);
assert(unsigned(zero_extend(0x31d00b8, 64)) == 52232376);
assert(unsigned(zero_extend(0x31d00bc, 64)) == 52232380);
assert(unsigned(zero_extend(0x31d00c0, 64)) == 52232384);
assert(unsigned(zero_extend(0x31d00c4, 64)) == 52232388);
assert(unsigned(zero_extend(0x31d00c8, 64)) == 52232392);
assert(unsigned(zero_extend(0x31d00cc, 64)) == 52232396);
assert(unsigned(zero_extend(0x31d00d0, 64)) == 52232400);
assert(unsigned(zero_extend(0x31d00d4, 64)) == 52232404);
assert(unsigned(zero_extend(0x31d00d8, 64)) == 52232408);
assert(unsigned(zero_extend(0x31d00dc, 64)) == 52232412);
assert(unsigned(zero_extend(0x31d00e0, 64)) == 52232416);
assert(unsigned(zero_extend(0x31d00e4, 64)) == 52232420);
assert(unsigned(zero_extend(0x31d00e8, 64)) == 52232424);
assert(unsigned(zero_extend(0x31d00ec, 64)) == 52232428);
assert(unsigned(zero_extend(0x31d00f0, 64)) == 52232432);
assert(unsigned(zero_extend(0x31d00f4, 64)) == 52232436);
assert(unsigned(zero_extend(0x31d00f8, 64)) == 52232440);
assert(unsigned(zero_extend(0x31d00fc, 64)) == 52232444);
assert(unsigned(zero_extend(0x31d0100, 64)) == 52232448);
assert(unsigned(zero_extend(0x31d0104, 64)) == 52232452);
assert(unsigned(zero_extend(0x31d0108, 64)) == 52232456);
assert(unsigned(zero_extend(0x31d010c, 64)) == 52232460);
assert(unsigned(zero_extend(0x31d0110, 64)) == 52232464);
assert(unsigned(zero_extend(0x31d0138, 64)) == 52232504);
assert(unsigned(zero_extend(0x31d013c, 64)) == 52232508);
assert(unsigned(zero_extend(0x31d0140, 64)) == 52232512);
assert(unsigned(zero_extend(0x31d0144, 64)) == 52232516);
assert(unsigned(zero_extend(0x31d0178, 64)) == 52232568);
assert(unsigned(zero_extend(0x31d017c, 64)) == 52232572);
assert(unsigned(zero_extend(0x31d0194, 64)) == 52232596);
assert(unsigned(zero_extend(0x31d01a0, 64)) == 52232608);
assert(unsigned(zero_extend(0x31d01c0, 64)) == 52232640);
assert(unsigned(zero_extend(0x31d01e0, 64)) == 52232672);
assert(unsigned(zero_extend(0x31d01e8, 64)) == 52232680);
assert(unsigned(zero_extend(0x31d01f0, 64)) == 52232688);
assert(unsigned(zero_extend(0x31d0200, 64)) == 52232704);
assert(unsigned(zero_extend(0x31d0208, 64)) == 52232712);
assert(unsigned(zero_extend(0x31d0218, 64)) == 52232728);
assert(unsigned(zero_extend(0x31d0220, 64)) == 52232736);
assert(unsigned(zero_extend(0x31d0228, 64)) == 52232744);
assert(unsigned(zero_extend(0x31d0230, 64)) == 52232752);
assert(unsigned(zero_extend(0x31d0248, 64)) == 52232776);
assert(unsigned(zero_extend(0x31d0250, 64)) == 52232784);
assert(unsigned(zero_extend(0x31d0258, 64)) == 52232792);
assert(unsigned(zero_extend(0x31d0260, 64)) == 52232800);
assert(unsigned(zero_extend(0x31d02e0, 64)) == 52232928);
assert(unsigned(zero_extend(0x31d02f0, 64)) == 52232944);
assert(unsigned(zero_extend(0x31d02f8, 64)) == 52232952);
assert(unsigned(zero_extend(0x31d0300, 64)) == 52232960);
assert(unsigned(zero_extend(0x31d0308, 64)) == 52232968);
assert(unsigned(zero_extend(0x31d0318, 64)) == 52232984);
assert(unsigned(zero_extend(0x31d0320, 64)) == 52232992);
assert(unsigned(zero_extend(0x31d0328, 64)) == 52233000);
assert(unsigned(zero_extend(0x31d04d0, 64)) == 52233424);
assert(unsigned(zero_extend(0x31d04d4, 64)) == 52233428);
assert(unsigned(zero_extend(0x31d04d8, 64)) == 52233432);
assert(unsigned(zero_extend(0x31d04dc, 64)) == 52233436);
assert(unsigned(zero_extend(0x31d04e0, 64)) == 52233440);
assert(unsigned(zero_extend(0x31d04e4, 64)) == 52233444);
assert(unsigned(zero_extend(0x31d04e8, 64)) == 52233448);
assert(unsigned(zero_extend(0x31d04ec, 64)) == 52233452);
assert(unsigned(zero_extend(0x31d04f0, 64)) == 52233456);
assert(unsigned(zero_extend(0x31d04f4, 64)) == 52233460);
assert(unsigned(zero_extend(0x31d04f8, 64)) == 52233464);
assert(unsigned(zero_extend(0x31d04fc, 64)) == 52233468);
assert(unsigned(zero_extend(0x31d0500, 64)) == 52233472);
assert(unsigned(zero_extend(0x31d0504, 64)) == 52233476);
assert(unsigned(zero_extend(0x31d0508, 64)) == 52233480);
assert(unsigned(zero_extend(0x31d050c, 64)) == 52233484);
assert(unsigned(zero_extend(0x31d0510, 64)) == 52233488);
assert(unsigned(zero_extend(0x31d0514, 64)) == 52233492);
assert(unsigned(zero_extend(0x31d0518, 64)) == 52233496);
assert(unsigned(zero_extend(0x31d051c, 64)) == 52233500);
assert(unsigned(zero_extend(0x31d0520, 64)) == 52233504);
assert(unsigned(zero_extend(0x31d0524, 64)) == 52233508);
assert(unsigned(zero_extend(0x31d0528, 64)) == 52233512);
assert(unsigned(zero_extend(0x31d052c, 64)) == 52233516);
assert(unsigned(zero_extend(0x31d0530, 64)) == 52233520);
assert(unsigned(zero_extend(0x31d0534, 64)) == 52233524);
assert(unsigned(zero_extend(0x31d0538, 64)) == 52233528);
assert(unsigned(zero_extend(0x31d053c, 64)) == 52233532);
assert(unsigned(zero_extend(0x31d0540, 64)) == 52233536);
assert(unsigned(zero_extend(0x31d0544, 64)) == 52233540);
assert(unsigned(zero_extend(0x31d0548, 64)) == 52233544);
assert(unsigned(zero_extend(0x31d054c, 64)) == 52233548);
assert(unsigned(zero_extend(0x31d0550, 64)) == 52233552);
assert(unsigned(zero_extend(0x31d0554, 64)) == 52233556);
assert(unsigned(zero_extend(0x31d0558, 64)) == 52233560);
assert(unsigned(zero_extend(0x31d055c, 64)) == 52233564);
assert(unsigned(zero_extend(0x31d0560, 64)) == 52233568);
assert(unsigned(zero_extend(0x31d0564, 64)) == 52233572);
assert(unsigned(zero_extend(0x31d0568, 64)) == 52233576);
assert(unsigned(zero_extend(0x31d056c, 64)) == 52233580);
assert(unsigned(zero_extend(0x31d0570, 64)) == 52233584);
assert(unsigned(zero_extend(0x31d0574, 64)) == 52233588);
assert(unsigned(zero_extend(0x31d0578, 64)) == 52233592);
assert(unsigned(zero_extend(0x31d057c, 64)) == 52233596);
assert(unsigned(zero_extend(0x31d0580, 64)) == 52233600);
assert(unsigned(zero_extend(0x31d0584, 64)) == 52233604);
assert(unsigned(zero_extend(0x31d0588, 64)) == 52233608);
assert(unsigned(zero_extend(0x31d058c, 64)) == 52233612);
assert(unsigned(zero_extend(0x31d0590, 64)) == 52233616);
assert(unsigned(zero_extend(0x31d0594, 64)) == 52233620);
assert(unsigned(zero_extend(0x31d0598, 64)) == 52233624);
assert(unsigned(zero_extend(0x31d059c, 64)) == 52233628);
assert(unsigned(zero_extend(0x31d05a0, 64)) == 52233632);
assert(unsigned(zero_extend(0x31d05a4, 64)) == 52233636);
assert(unsigned(zero_extend(0x31d05a8, 64)) == 52233640);
assert(unsigned(zero_extend(0x31d05ac, 64)) == 52233644);
assert(unsigned(zero_extend(0x31d05b0, 64)) == 52233648);
assert(unsigned(zero_extend(0x31d05b4, 64)) == 52233652);
assert(unsigned(zero_extend(0x31d05b8, 64)) == 52233656);
assert(unsigned(zero_extend(0x31d05bc, 64)) == 52233660);
assert(unsigned(zero_extend(0x31d05c0, 64)) == 52233664);
assert(unsigned(zero_extend(0x31d05c4, 64)) == 52233668);
assert(unsigned(zero_extend(0x31d05c8, 64)) == 52233672);
assert(unsigned(zero_extend(0x31d05cc, 64)) == 52233676);
assert(unsigned(zero_extend(0x31d05d0, 64)) == 52233680);
assert(unsigned(zero_extend(0x31d05d4, 64)) == 52233684);
assert(unsigned(zero_extend(0x31d05d8, 64)) == 52233688);
assert(unsigned(zero_extend(0x31d05dc, 64)) == 52233692);
assert(unsigned(zero_extend(0x31d05e0, 64)) == 52233696);
assert(unsigned(zero_extend(0x31d05e4, 64)) == 52233700);
assert(unsigned(zero_extend(0x31d05e8, 64)) == 52233704);
assert(unsigned(zero_extend(0x31d05ec, 64)) == 52233708);
assert(unsigned(zero_extend(0x31d05f0, 64)) == 52233712);
assert(unsigned(zero_extend(0x31d05f4, 64)) == 52233716);
assert(unsigned(zero_extend(0x31d05f8, 64)) == 52233720);
assert(unsigned(zero_extend(0x31d05fc, 64)) == 52233724);
assert(unsigned(zero_extend(0x31d0600, 64)) == 52233728);
assert(unsigned(zero_extend(0x31d0604, 64)) == 52233732);
assert(unsigned(zero_extend(0x31d0608, 64)) == 52233736);
assert(unsigned(zero_extend(0x31d060c, 64)) == 52233740);
assert(unsigned(zero_extend(0x31d0610, 64)) == 52233744);
assert(unsigned(zero_extend(0x31d0614, 64)) == 52233748);
assert(unsigned(zero_extend(0x31d0618, 64)) == 52233752);
assert(unsigned(zero_extend(0x31d061c, 64)) == 52233756);
assert(unsigned(zero_extend(0x31d0620, 64)) == 52233760);
assert(unsigned(zero_extend(0x31d0624, 64)) == 52233764);
assert(unsigned(zero_extend(0x31d0628, 64)) == 52233768);
assert(unsigned(zero_extend(0x31d062c, 64)) == 52233772);
assert(unsigned(zero_extend(0x31d0630, 64)) == 52233776);
assert(unsigned(zero_extend(0x31d0634, 64)) == 52233780);
assert(unsigned(zero_extend(0x31d0638, 64)) == 52233784);
assert(unsigned(zero_extend(0x31d063c, 64)) == 52233788);
assert(unsigned(zero_extend(0x31d0640, 64)) == 52233792);
assert(unsigned(zero_extend(0x31d0644, 64)) == 52233796);
assert(unsigned(zero_extend(0x31d0648, 64)) == 52233800);
assert(unsigned(zero_extend(0x31d064c, 64)) == 52233804);
assert(unsigned(zero_extend(0x31d0650, 64)) == 52233808);
assert(unsigned(zero_extend(0x31d0654, 64)) == 52233812);
assert(unsigned(zero_extend(0x31d0658, 64)) == 52233816);
assert(unsigned(zero_extend(0x31d065c, 64)) == 52233820);
assert(unsigned(zero_extend(0x31d0660, 64)) == 52233824);
assert(unsigned(zero_extend(0x31d0664, 64)) == 52233828);
assert(unsigned(zero_extend(0x31d0668, 64)) == 52233832);
assert(unsigned(zero_extend(0x31d066c, 64)) == 52233836);
assert(unsigned(zero_extend(0x31d0670, 64)) == 52233840);
assert(unsigned(zero_extend(0x31d0674, 64)) == 52233844);
assert(unsigned(zero_extend(0x31d0678, 64)) == 52233848);
assert(unsigned(zero_extend(0x31d067c, 64)) == 52233852);
assert(unsigned(zero_extend(0x31d0680, 64)) == 52233856);
assert(unsigned(zero_extend(0x31d0684, 64)) == 52233860);
assert(unsigned(zero_extend(0x31d0688, 64)) == 52233864);
assert(unsigned(zero_extend(0x31d068c, 64)) == 52233868);
assert(unsigned(zero_extend(0x31d0690, 64)) == 52233872);
assert(unsigned(zero_extend(0x31d0694, 64)) == 52233876);
assert(unsigned(zero_extend(0x31d0698, 64)) == 52233880);
assert(unsigned(zero_extend(0x31d06b0, 64)) == 52233904);
assert(unsigned(zero_extend(0x31d06b4, 64)) == 52233908);
assert(unsigned(zero_extend(0x31d06b8, 64)) == 52233912);
assert(unsigned(zero_extend(0x31d06bc, 64)) == 52233916);
assert(unsigned(zero_extend(0x31d06c0, 64)) == 52233920);
assert(unsigned(zero_extend(0x31d06c4, 64)) == 52233924);
assert(unsigned(zero_extend(0x31d06c8, 64)) == 52233928);
assert(unsigned(zero_extend(0x31d06cc, 64)) == 52233932);
assert(unsigned(zero_extend(0x31d06d0, 64)) == 52233936);
assert(unsigned(zero_extend(0x31d06d4, 64)) == 52233940);
assert(unsigned(zero_extend(0x31d06d8, 64)) == 52233944);
assert(unsigned(zero_extend(0x31d06dc, 64)) == 52233948);
assert(unsigned(zero_extend(0x31d06e0, 64)) == 52233952);
assert(unsigned(zero_extend(0x31d06e4, 64)) == 52233956);
assert(unsigned(zero_extend(0x31d06e8, 64)) == 52233960);
assert(unsigned(zero_extend(0x31d0700, 64)) == 52233984);
assert(unsigned(zero_extend(0x31d0704, 64)) == 52233988);
assert(unsigned(zero_extend(0x31d0708, 64)) == 52233992);
assert(unsigned(zero_extend(0x31d070c, 64)) == 52233996);
assert(unsigned(zero_extend(0x31d0710, 64)) == 52234000);
assert(unsigned(zero_extend(0x31d0714, 64)) == 52234004);
assert(unsigned(zero_extend(0x31d0718, 64)) == 52234008);
assert(unsigned(zero_extend(0x31d071c, 64)) == 52234012);
assert(unsigned(zero_extend(0x31d0720, 64)) == 52234016);
assert(unsigned(zero_extend(0x31d0724, 64)) == 52234020);
assert(unsigned(zero_extend(0x31d073c, 64)) == 52234044);
assert(unsigned(zero_extend(0x31d0740, 64)) == 52234048);
assert(unsigned(zero_extend(0x31d0744, 64)) == 52234052);
assert(unsigned(zero_extend(0x31d0748, 64)) == 52234056);
assert(unsigned(zero_extend(0x31d074c, 64)) == 52234060);
assert(unsigned(zero_extend(0x31d0750, 64)) == 52234064);
assert(unsigned(zero_extend(0x31d0754, 64)) == 52234068);
assert(unsigned(zero_extend(0x31d0758, 64)) == 52234072);
assert(unsigned(zero_extend(0x31d075c, 64)) == 52234076);
assert(unsigned(zero_extend(0x31d0760, 64)) == 52234080);
assert(unsigned(zero_extend(0x31d0764, 64)) == 52234084);
assert(unsigned(zero_extend(0x31d0768, 64)) == 52234088);
assert(unsigned(zero_extend(0x31d076c, 64)) == 52234092);
assert(unsigned(zero_extend(0x31d0770, 64)) == 52234096);
assert(unsigned(zero_extend(0x31d0774, 64)) == 52234100);
assert(unsigned(zero_extend(0x31d0778, 64)) == 52234104);
assert(unsigned(zero_extend(0x31d077c, 64)) == 52234108);
assert(unsigned(zero_extend(0x31d0780, 64)) == 52234112);
assert(unsigned(zero_extend(0x31d0784, 64)) == 52234116);
assert(unsigned(zero_extend(0x31d0788, 64)) == 52234120);
assert(unsigned(zero_extend(0x31d078c, 64)) == 52234124);
assert(unsigned(zero_extend(0x31d0790, 64)) == 52234128);
assert(unsigned(zero_extend(0x31d07d8, 64)) == 52234200);
assert(unsigned(zero_extend(0x31d07dc, 64)) == 52234204);
assert(unsigned(zero_extend(0x31d07e0, 64)) == 52234208);
assert(unsigned(zero_extend(0x31d07e4, 64)) == 52234212);
assert(unsigned(zero_extend(0x31d07e8, 64)) == 52234216);
assert(unsigned(zero_extend(0x31d07ec, 64)) == 52234220);
assert(unsigned(zero_extend(0x31d07f0, 64)) == 52234224);
assert(unsigned(zero_extend(0x31d07f4, 64)) == 52234228);
assert(unsigned(zero_extend(0x31d07f8, 64)) == 52234232);
assert(unsigned(zero_extend(0x31d07fc, 64)) == 52234236);
assert(unsigned(zero_extend(0x31d0800, 64)) == 52234240);
assert(unsigned(zero_extend(0x31d0804, 64)) == 52234244);
assert(unsigned(zero_extend(0x31d0808, 64)) == 52234248);
assert(unsigned(zero_extend(0x31d080c, 64)) == 52234252);
assert(unsigned(zero_extend(0x31d0810, 64)) == 52234256);
assert(unsigned(zero_extend(0x31d0814, 64)) == 52234260);
assert(unsigned(zero_extend(0x31d0818, 64)) == 52234264);
assert(unsigned(zero_extend(0x31d081c, 64)) == 52234268);
assert(unsigned(zero_extend(0x31d0820, 64)) == 52234272);
assert(unsigned(zero_extend(0x31d0824, 64)) == 52234276);
assert(unsigned(zero_extend(0x31d0828, 64)) == 52234280);
assert(unsigned(zero_extend(0x31d082c, 64)) == 52234284);
assert(unsigned(zero_extend(0x31d0830, 64)) == 52234288);
assert(unsigned(zero_extend(0x31d0834, 64)) == 52234292);
assert(unsigned(zero_extend(0x31d0838, 64)) == 52234296);
assert(unsigned(zero_extend(0x31d083c, 64)) == 52234300);
assert(unsigned(zero_extend(0x31d0840, 64)) == 52234304);
assert(unsigned(zero_extend(0x31d0844, 64)) == 52234308);
assert(unsigned(zero_extend(0x31d0848, 64)) == 52234312);
assert(unsigned(zero_extend(0x31d084c, 64)) == 52234316);
assert(unsigned(zero_extend(0x31d0850, 64)) == 52234320);
assert(unsigned(zero_extend(0x31d0854, 64)) == 52234324);
assert(unsigned(zero_extend(0x31d0858, 64)) == 52234328);
assert(unsigned(zero_extend(0x31d085c, 64)) == 52234332);
assert(unsigned(zero_extend(0x31d0860, 64)) == 52234336);
assert(unsigned(zero_extend(0x31d0864, 64)) == 52234340);
assert(unsigned(zero_extend(0x31d0868, 64)) == 52234344);
assert(unsigned(zero_extend(0x31d086c, 64)) == 52234348);
assert(unsigned(zero_extend(0x31d0870, 64)) == 52234352);
assert(unsigned(zero_extend(0x31d0874, 64)) == 52234356);
assert(unsigned(zero_extend(0x31d0890, 64)) == 52234384);
assert(unsigned(zero_extend(0x31d0898, 64)) == 52234392);
assert(unsigned(zero_extend(0x31d08a0, 64)) == 52234400);
assert(unsigned(zero_extend(0x31d08a8, 64)) == 52234408);
assert(unsigned(zero_extend(0x31d08ac, 64)) == 52234412);
assert(unsigned(zero_extend(0x31d08b0, 64)) == 52234416);
assert(unsigned(zero_extend(0x31d08b4, 64)) == 52234420);
assert(unsigned(zero_extend(0x31d08b8, 64)) == 52234424);
assert(unsigned(zero_extend(0x31d08bc, 64)) == 52234428);
assert(unsigned(zero_extend(0x31d08c0, 64)) == 52234432);
assert(unsigned(zero_extend(0x31d08c4, 64)) == 52234436);
assert(unsigned(zero_extend(0x31d08c8, 64)) == 52234440);
assert(unsigned(zero_extend(0x31d08cc, 64)) == 52234444);
assert(unsigned(zero_extend(0x31d08d0, 64)) == 52234448);
assert(unsigned(zero_extend(0x31d08d4, 64)) == 52234452);
assert(unsigned(zero_extend(0x31d08d8, 64)) == 52234456);
assert(unsigned(zero_extend(0x31d08dc, 64)) == 52234460);
assert(unsigned(zero_extend(0x31d08e0, 64)) == 52234464);
assert(unsigned(zero_extend(0x31d08e4, 64)) == 52234468);
assert(unsigned(zero_extend(0x31d08e8, 64)) == 52234472);
assert(unsigned(zero_extend(0x31d08ec, 64)) == 52234476);
assert(unsigned(zero_extend(0x31d08f0, 64)) == 52234480);
assert(unsigned(zero_extend(0x31d08f4, 64)) == 52234484);
assert(unsigned(zero_extend(0x31d08fc, 64)) == 52234492);
assert(unsigned(zero_extend(0x31d0900, 64)) == 52234496);
assert(unsigned(zero_extend(0x31d0904, 64)) == 52234500);
assert(unsigned(zero_extend(0x31d0908, 64)) == 52234504);
assert(unsigned(zero_extend(0x31d090c, 64)) == 52234508);
assert(unsigned(zero_extend(0x31d0910, 64)) == 52234512);
assert(unsigned(zero_extend(0x31d0914, 64)) == 52234516);
assert(unsigned(zero_extend(0x31d0918, 64)) == 52234520);
assert(unsigned(zero_extend(0x31d091c, 64)) == 52234524);
assert(unsigned(zero_extend(0x31d0920, 64)) == 52234528);
assert(unsigned(zero_extend(0x31d0924, 64)) == 52234532);
assert(unsigned(zero_extend(0x31d0928, 64)) == 52234536);
assert(unsigned(zero_extend(0x31d092c, 64)) == 52234540);
assert(unsigned(zero_extend(0x31d0930, 64)) == 52234544);
assert(unsigned(zero_extend(0x31d0934, 64)) == 52234548);
assert(unsigned(zero_extend(0x31d0938, 64)) == 52234552);
assert(unsigned(zero_extend(0x31d093c, 64)) == 52234556);
assert(unsigned(zero_extend(0x31d0940, 64)) == 52234560);
assert(unsigned(zero_extend(0x31d0944, 64)) == 52234564);
assert(unsigned(zero_extend(0x31d0948, 64)) == 52234568);
assert(unsigned(zero_extend(0x31d094c, 64)) == 52234572);
assert(unsigned(zero_extend(0x31d0950, 64)) == 52234576);
assert(unsigned(zero_extend(0x31d0954, 64)) == 52234580);
assert(unsigned(zero_extend(0x31d0958, 64)) == 52234584);
assert(unsigned(zero_extend(0x31d095c, 64)) == 52234588);
assert(unsigned(zero_extend(0x31d0960, 64)) == 52234592);
assert(unsigned(zero_extend(0x31d0964, 64)) == 52234596);
assert(unsigned(zero_extend(0x31d0968, 64)) == 52234600);
assert(unsigned(zero_extend(0x31d096c, 64)) == 52234604);
assert(unsigned(zero_extend(0x31d0970, 64)) == 52234608);
assert(unsigned(zero_extend(0x31d0974, 64)) == 52234612);
assert(unsigned(zero_extend(0x31d0978, 64)) == 52234616);
assert(unsigned(zero_extend(0x31d097c, 64)) == 52234620);
assert(unsigned(zero_extend(0x31d0980, 64)) == 52234624);
assert(unsigned(zero_extend(0x31d0984, 64)) == 52234628);
assert(unsigned(zero_extend(0x31d0988, 64)) == 52234632);
assert(unsigned(zero_extend(0x31d098c, 64)) == 52234636);
assert(unsigned(zero_extend(0x31d0990, 64)) == 52234640);
assert(unsigned(zero_extend(0x31d0994, 64)) == 52234644);
assert(unsigned(zero_extend(0x31d0998, 64)) == 52234648);
assert(unsigned(zero_extend(0x31d099c, 64)) == 52234652);
assert(unsigned(zero_extend(0x31d09a0, 64)) == 52234656);
assert(unsigned(zero_extend(0x31d09a4, 64)) == 52234660);
assert(unsigned(zero_extend(0x31d09a8, 64)) == 52234664);
assert(unsigned(zero_extend(0x31d09ac, 64)) == 52234668);
assert(unsigned(zero_extend(0x31d09b0, 64)) == 52234672);
assert(unsigned(zero_extend(0x31d09b4, 64)) == 52234676);
assert(unsigned(zero_extend(0x31d09b8, 64)) == 52234680);
assert(unsigned(zero_extend(0x31d09bc, 64)) == 52234684);
assert(unsigned(zero_extend(0x31d09c0, 64)) == 52234688);
assert(unsigned(zero_extend(0x31d09c4, 64)) == 52234692);
assert(unsigned(zero_extend(0x31d09c8, 64)) == 52234696);
assert(unsigned(zero_extend(0x31d09cc, 64)) == 52234700);
assert(unsigned(zero_extend(0x31d09d0, 64)) == 52234704);
assert(unsigned(zero_extend(0x31d09d4, 64)) == 52234708);
assert(unsigned(zero_extend(0x31d09dc, 64)) == 52234716);
assert(unsigned(zero_extend(0x31d09e0, 64)) == 52234720);
assert(unsigned(zero_extend(0x31d09e4, 64)) == 52234724);
assert(unsigned(zero_extend(0x31d09e8, 64)) == 52234728);
assert(unsigned(zero_extend(0x31d09ec, 64)) == 52234732);
assert(unsigned(zero_extend(0x31d09f0, 64)) == 52234736);
assert(unsigned(zero_extend(0x31d09f4, 64)) == 52234740);
assert(unsigned(zero_extend(0x31d09f8, 64)) == 52234744);
assert(unsigned(zero_extend(0x31d09fc, 64)) == 52234748);
assert(unsigned(zero_extend(0x31d0a08, 64)) == 52234760);
assert(unsigned(zero_extend(0x31d0a0c, 64)) == 52234764);
assert(unsigned(zero_extend(0x31d0a10, 64)) == 52234768);
assert(unsigned(zero_extend(0x31d0a14, 64)) == 52234772);
assert(unsigned(zero_extend(0x31d0a18, 64)) == 52234776);
assert(unsigned(zero_extend(0x31d0a1c, 64)) == 52234780);
assert(unsigned(zero_extend(0x31d0a20, 64)) == 52234784);
assert(unsigned(zero_extend(0x31d0a24, 64)) == 52234788);
assert(unsigned(zero_extend(0x31d0a28, 64)) == 52234792);
assert(unsigned(zero_extend(0x31d0a2c, 64)) == 52234796);
assert(unsigned(zero_extend(0x31d0a30, 64)) == 52234800);
assert(unsigned(zero_extend(0x31d0a34, 64)) == 52234804);
assert(unsigned(zero_extend(0x31d0a38, 64)) == 52234808);
assert(unsigned(zero_extend(0x31d0a3c, 64)) == 52234812);
assert(unsigned(zero_extend(0x31d0a40, 64)) == 52234816);
assert(unsigned(zero_extend(0x31d0a44, 64)) == 52234820);
assert(unsigned(zero_extend(0x31d0a48, 64)) == 52234824);
assert(unsigned(zero_extend(0x31d0a4c, 64)) == 52234828);
assert(unsigned(zero_extend(0x31d0a50, 64)) == 52234832);
assert(unsigned(zero_extend(0x31d0a54, 64)) == 52234836);
assert(unsigned(zero_extend(0x31d0a58, 64)) == 52234840);
assert(unsigned(zero_extend(0x31d0a5c, 64)) == 52234844);
assert(unsigned(zero_extend(0x31d0a60, 64)) == 52234848);
assert(unsigned(zero_extend(0x31d0a64, 64)) == 52234852);
assert(unsigned(zero_extend(0x31d0a68, 64)) == 52234856);
assert(unsigned(zero_extend(0x31d0a6c, 64)) == 52234860);
assert(unsigned(zero_extend(0x31d0a70, 64)) == 52234864);
assert(unsigned(zero_extend(0x31d0a74, 64)) == 52234868);
assert(unsigned(zero_extend(0x31d0a78, 64)) == 52234872);
assert(unsigned(zero_extend(0x31d0a7c, 64)) == 52234876);
assert(unsigned(zero_extend(0x31d0a80, 64)) == 52234880);
assert(unsigned(zero_extend(0x31d0a84, 64)) == 52234884);
assert(unsigned(zero_extend(0x31d0a88, 64)) == 52234888);
assert(unsigned(zero_extend(0x31d0a8c, 64)) == 52234892);
assert(unsigned(zero_extend(0x31d0a90, 64)) == 52234896);
assert(unsigned(zero_extend(0x31d0a94, 64)) == 52234900);
assert(unsigned(zero_extend(0x31d0a98, 64)) == 52234904);
assert(unsigned(zero_extend(0x31d0a9c, 64)) == 52234908);
assert(unsigned(zero_extend(0x31d0aa0, 64)) == 52234912);
assert(unsigned(zero_extend(0x31d0aa4, 64)) == 52234916);
assert(unsigned(zero_extend(0x31d0aa8, 64)) == 52234920);
assert(unsigned(zero_extend(0x31d0aac, 64)) == 52234924);
assert(unsigned(zero_extend(0x31d0ab0, 64)) == 52234928);
assert(unsigned(zero_extend(0x31d0ab4, 64)) == 52234932);
assert(unsigned(zero_extend(0x31d0ab8, 64)) == 52234936);
assert(unsigned(zero_extend(0x31d0abc, 64)) == 52234940);
assert(unsigned(zero_extend(0x31d0ac0, 64)) == 52234944);
assert(unsigned(zero_extend(0x31d0ac4, 64)) == 52234948);
assert(unsigned(zero_extend(0x31d0ac8, 64)) == 52234952);
assert(unsigned(zero_extend(0x31d0acc, 64)) == 52234956);
assert(unsigned(zero_extend(0x31d0ad0, 64)) == 52234960);
assert(unsigned(zero_extend(0x31d0ad4, 64)) == 52234964);
assert(unsigned(zero_extend(0x31d0ad8, 64)) == 52234968);
assert(unsigned(zero_extend(0x31d0adc, 64)) == 52234972);
assert(unsigned(zero_extend(0x31d0ae0, 64)) == 52234976);
assert(unsigned(zero_extend(0x31d0ae4, 64)) == 52234980);
assert(unsigned(zero_extend(0x31d0ae8, 64)) == 52234984);
assert(unsigned(zero_extend(0x31d0aec, 64)) == 52234988);
assert(unsigned(zero_extend(0x31d0af0, 64)) == 52234992);
assert(unsigned(zero_extend(0x31d0af4, 64)) == 52234996);
assert(unsigned(zero_extend(0x31d0af8, 64)) == 52235000);
assert(unsigned(zero_extend(0x31d0b08, 64)) == 52235016);
assert(unsigned(zero_extend(0x31d0b0c, 64)) == 52235020);
assert(unsigned(zero_extend(0x31d0b10, 64)) == 52235024);
assert(unsigned(zero_extend(0x31d0b14, 64)) == 52235028);
assert(unsigned(zero_extend(0x31d0b18, 64)) == 52235032);
assert(unsigned(zero_extend(0x31d0b1c, 64)) == 52235036);
assert(unsigned(zero_extend(0x31d0b20, 64)) == 52235040);
assert(unsigned(zero_extend(0x31d0b24, 64)) == 52235044);
assert(unsigned(zero_extend(0x31d0b28, 64)) == 52235048);
assert(unsigned(zero_extend(0x31d0b34, 64)) == 52235060);
assert(unsigned(zero_extend(0x31d0b38, 64)) == 52235064);
assert(unsigned(zero_extend(0x31d0b3c, 64)) == 52235068);
assert(unsigned(zero_extend(0x31d0b40, 64)) == 52235072);
assert(unsigned(zero_extend(0x31d0b50, 64)) == 52235088);
assert(unsigned(zero_extend(0x31d0b54, 64)) == 52235092);
assert(unsigned(zero_extend(0x31d0b58, 64)) == 52235096);
assert(unsigned(zero_extend(0x31d0b5c, 64)) == 52235100);
assert(unsigned(zero_extend(0x31d0b60, 64)) == 52235104);
assert(unsigned(zero_extend(0x31d0b64, 64)) == 52235108);
assert(unsigned(zero_extend(0x31d0b68, 64)) == 52235112);
assert(unsigned(zero_extend(0x31d0b6c, 64)) == 52235116);
assert(unsigned(zero_extend(0x31d0b70, 64)) == 52235120);
assert(unsigned(zero_extend(0x31d0b74, 64)) == 52235124);
assert(unsigned(zero_extend(0x31d0b78, 64)) == 52235128);
assert(unsigned(zero_extend(0x31d0b7c, 64)) == 52235132);
assert(unsigned(zero_extend(0x31d0b80, 64)) == 52235136);
assert(unsigned(zero_extend(0x31d0b84, 64)) == 52235140);
assert(unsigned(zero_extend(0x31d0b88, 64)) == 52235144);
assert(unsigned(zero_extend(0x31d0b8c, 64)) == 52235148);
assert(unsigned(zero_extend(0x31d0b90, 64)) == 52235152);
assert(unsigned(zero_extend(0x31d0b94, 64)) == 52235156);
assert(unsigned(zero_extend(0x31d0b98, 64)) == 52235160);
assert(unsigned(zero_extend(0x31d0b9c, 64)) == 52235164);
assert(unsigned(zero_extend(0x31d0ba0, 64)) == 52235168);
assert(unsigned(zero_extend(0x31d0ba4, 64)) == 52235172);
assert(unsigned(zero_extend(0x31d0ba8, 64)) == 52235176);
assert(unsigned(zero_extend(0x31d0bac, 64)) == 52235180);
assert(unsigned(zero_extend(0x31d0bb0, 64)) == 52235184);
assert(unsigned(zero_extend(0x31d0bb4, 64)) == 52235188);
assert(unsigned(zero_extend(0x31d0bb8, 64)) == 52235192);
assert(unsigned(zero_extend(0x31d0bbc, 64)) == 52235196);
assert(unsigned(zero_extend(0x31d0bc0, 64)) == 52235200);
assert(unsigned(zero_extend(0x31d0bc4, 64)) == 52235204);
assert(unsigned(zero_extend(0x31d0bc8, 64)) == 52235208);
assert(unsigned(zero_extend(0x31d0bcc, 64)) == 52235212);
assert(unsigned(zero_extend(0x31d0bd0, 64)) == 52235216);
assert(unsigned(zero_extend(0x31d0bd4, 64)) == 52235220);
assert(unsigned(zero_extend(0x31d0bd8, 64)) == 52235224);
assert(unsigned(zero_extend(0x31d0bdc, 64)) == 52235228);
assert(unsigned(zero_extend(0x31d0be0, 64)) == 52235232);
assert(unsigned(zero_extend(0x31d0be4, 64)) == 52235236);
assert(unsigned(zero_extend(0x31d0be8, 64)) == 52235240);
assert(unsigned(zero_extend(0x31d0bec, 64)) == 52235244);
assert(unsigned(zero_extend(0x31d0bf0, 64)) == 52235248);
assert(unsigned(zero_extend(0x31d0bf4, 64)) == 52235252);
assert(unsigned(zero_extend(0x31d0bf8, 64)) == 52235256);
assert(unsigned(zero_extend(0x31d0bfc, 64)) == 52235260);
assert(unsigned(zero_extend(0x31d0c00, 64)) == 52235264);
assert(unsigned(zero_extend(0x31d0c04, 64)) == 52235268);
assert(unsigned(zero_extend(0x31d0c08, 64)) == 52235272);
assert(unsigned(zero_extend(0x31d0c0c, 64)) == 52235276);
assert(unsigned(zero_extend(0x31d0c1c, 64)) == 52235292);
assert(unsigned(zero_extend(0x31d0c20, 64)) == 52235296);
assert(unsigned(zero_extend(0x31d0c24, 64)) == 52235300);
assert(unsigned(zero_extend(0x31d0c28, 64)) == 52235304);
assert(unsigned(zero_extend(0x31d0c2c, 64)) == 52235308);
assert(unsigned(zero_extend(0x31d0c30, 64)) == 52235312);
assert(unsigned(zero_extend(0x31d0c34, 64)) == 52235316);
assert(unsigned(zero_extend(0x31d0c38, 64)) == 52235320);
assert(unsigned(zero_extend(0x31d0c3c, 64)) == 52235324);
assert(unsigned(zero_extend(0x31d0c48, 64)) == 52235336);
assert(unsigned(zero_extend(0x31d0c4c, 64)) == 52235340);
assert(unsigned(zero_extend(0x31d0c50, 64)) == 52235344);
assert(unsigned(zero_extend(0x31d0c54, 64)) == 52235348);
assert(unsigned(zero_extend(0x31d0c64, 64)) == 52235364);
assert(unsigned(zero_extend(0x31d0c68, 64)) == 52235368);
assert(unsigned(zero_extend(0x31d0c6c, 64)) == 52235372);
assert(unsigned(zero_extend(0x31d0c70, 64)) == 52235376);
assert(unsigned(zero_extend(0x31d0c74, 64)) == 52235380);
assert(unsigned(zero_extend(0x31d0c78, 64)) == 52235384);
assert(unsigned(zero_extend(0x31d0c7c, 64)) == 52235388);
assert(unsigned(zero_extend(0x31d0c80, 64)) == 52235392);
assert(unsigned(zero_extend(0x31d0c84, 64)) == 52235396);
assert(unsigned(zero_extend(0x31d0c88, 64)) == 52235400);
assert(unsigned(zero_extend(0x31d0c8c, 64)) == 52235404);
assert(unsigned(zero_extend(0x31d0c90, 64)) == 52235408);
assert(unsigned(zero_extend(0x31d0c94, 64)) == 52235412);
assert(unsigned(zero_extend(0x31d0c98, 64)) == 52235416);
assert(unsigned(zero_extend(0x31d0c9c, 64)) == 52235420);
assert(unsigned(zero_extend(0x31d0ca0, 64)) == 52235424);
assert(unsigned(zero_extend(0x31d0ca4, 64)) == 52235428);
assert(unsigned(zero_extend(0x31d0ca8, 64)) == 52235432);
assert(unsigned(zero_extend(0x31d0cac, 64)) == 52235436);
assert(unsigned(zero_extend(0x31d0cb0, 64)) == 52235440);
assert(unsigned(zero_extend(0x31d0cb4, 64)) == 52235444);
assert(unsigned(zero_extend(0x31d0cb8, 64)) == 52235448);
assert(unsigned(zero_extend(0x31d0cbc, 64)) == 52235452);
assert(unsigned(zero_extend(0x31d0cc0, 64)) == 52235456);
assert(unsigned(zero_extend(0x31d0cc4, 64)) == 52235460);
assert(unsigned(zero_extend(0x31d0cc8, 64)) == 52235464);
assert(unsigned(zero_extend(0x31d0ccc, 64)) == 52235468);
assert(unsigned(zero_extend(0x31d0cd0, 64)) == 52235472);
assert(unsigned(zero_extend(0x31d0cd4, 64)) == 52235476);
assert(unsigned(zero_extend(0x31d0cd8, 64)) == 52235480);
assert(unsigned(zero_extend(0x31d0cdc, 64)) == 52235484);
assert(unsigned(zero_extend(0x31d0ce0, 64)) == 52235488);
assert(unsigned(zero_extend(0x31d0ce4, 64)) == 52235492);
assert(unsigned(zero_extend(0x31d0ce8, 64)) == 52235496);
assert(unsigned(zero_extend(0x31d0cec, 64)) == 52235500);
assert(unsigned(zero_extend(0x31d0cf0, 64)) == 52235504);
assert(unsigned(zero_extend(0x31d0cf4, 64)) == 52235508);
assert(unsigned(zero_extend(0x31d0cf8, 64)) == 52235512);
assert(unsigned(zero_extend(0x31d0cfc, 64)) == 52235516);
assert(unsigned(zero_extend(0x31d0d00, 64)) == 52235520);
assert(unsigned(zero_extend(0x31d0d04, 64)) == 52235524);
assert(unsigned(zero_extend(0x31d0d08, 64)) == 52235528);
assert(unsigned(zero_extend(0x31d0d0c, 64)) == 52235532);
assert(unsigned(zero_extend(0x31d0d10, 64)) == 52235536);
assert(unsigned(zero_extend(0x31d0d14, 64)) == 52235540);
assert(unsigned(zero_extend(0x31d0d24, 64)) == 52235556);
assert(unsigned(zero_extend(0x31d0d28, 64)) == 52235560);
assert(unsigned(zero_extend(0x31d0d2c, 64)) == 52235564);
assert(unsigned(zero_extend(0x31d0d30, 64)) == 52235568);
assert(unsigned(zero_extend(0x31d0d34, 64)) == 52235572);
assert(unsigned(zero_extend(0x31d0d38, 64)) == 52235576);
assert(unsigned(zero_extend(0x31d0d3c, 64)) == 52235580);
assert(unsigned(zero_extend(0x31d0d48, 64)) == 52235592);
assert(unsigned(zero_extend(0x31d0d4c, 64)) == 52235596);
assert(unsigned(zero_extend(0x31d0d50, 64)) == 52235600);
assert(unsigned(zero_extend(0x31d0d54, 64)) == 52235604);
assert(unsigned(zero_extend(0x31d0d64, 64)) == 52235620);
assert(unsigned(zero_extend(0x31d0d68, 64)) == 52235624);
assert(unsigned(zero_extend(0x31d0d6c, 64)) == 52235628);
assert(unsigned(zero_extend(0x31d0d70, 64)) == 52235632);
assert(unsigned(zero_extend(0x31d0d74, 64)) == 52235636);
assert(unsigned(zero_extend(0x31d0d78, 64)) == 52235640);
assert(unsigned(zero_extend(0x31d0d7c, 64)) == 52235644);
assert(unsigned(zero_extend(0x31d0d80, 64)) == 52235648);
assert(unsigned(zero_extend(0x31d0d84, 64)) == 52235652);
assert(unsigned(zero_extend(0x31d0d88, 64)) == 52235656);
assert(unsigned(zero_extend(0x31d0d8c, 64)) == 52235660);
assert(unsigned(zero_extend(0x31d0d90, 64)) == 52235664);
assert(unsigned(zero_extend(0x31d0d94, 64)) == 52235668);
assert(unsigned(zero_extend(0x31d0d98, 64)) == 52235672);
assert(unsigned(zero_extend(0x31d0d9c, 64)) == 52235676);
assert(unsigned(zero_extend(0x31d0da0, 64)) == 52235680);
assert(unsigned(zero_extend(0x31d0da4, 64)) == 52235684);
assert(unsigned(zero_extend(0x31d0da8, 64)) == 52235688);
assert(unsigned(zero_extend(0x31d0dac, 64)) == 52235692);
assert(unsigned(zero_extend(0x31d0db0, 64)) == 52235696);
assert(unsigned(zero_extend(0x31d0db4, 64)) == 52235700);
assert(unsigned(zero_extend(0x31d0db8, 64)) == 52235704);
assert(unsigned(zero_extend(0x31d0dbc, 64)) == 52235708);
assert(unsigned(zero_extend(0x31d0dc0, 64)) == 52235712);
assert(unsigned(zero_extend(0x31d0dc4, 64)) == 52235716);
assert(unsigned(zero_extend(0x31d0dc8, 64)) == 52235720);
assert(unsigned(zero_extend(0x31d0dcc, 64)) == 52235724);
assert(unsigned(zero_extend(0x31d0dd0, 64)) == 52235728);
assert(unsigned(zero_extend(0x31d0dd4, 64)) == 52235732);
assert(unsigned(zero_extend(0x31d0dd8, 64)) == 52235736);
assert(unsigned(zero_extend(0x31d0ddc, 64)) == 52235740);
assert(unsigned(zero_extend(0x31d0de0, 64)) == 52235744);
assert(unsigned(zero_extend(0x31d0de4, 64)) == 52235748);
assert(unsigned(zero_extend(0x31d0de8, 64)) == 52235752);
assert(unsigned(zero_extend(0x31d0dec, 64)) == 52235756);
assert(unsigned(zero_extend(0x31d0df0, 64)) == 52235760);
assert(unsigned(zero_extend(0x31d0df4, 64)) == 52235764);
assert(unsigned(zero_extend(0x31d0df8, 64)) == 52235768);
assert(unsigned(zero_extend(0x31d0dfc, 64)) == 52235772);
assert(unsigned(zero_extend(0x31d0e00, 64)) == 52235776);
assert(unsigned(zero_extend(0x31d0e04, 64)) == 52235780);
assert(unsigned(zero_extend(0x31d0e08, 64)) == 52235784);
assert(unsigned(zero_extend(0x31d0e0c, 64)) == 52235788);
assert(unsigned(zero_extend(0x31d0e10, 64)) == 52235792);
assert(unsigned(zero_extend(0x31d0e14, 64)) == 52235796);
assert(unsigned(zero_extend(0x31d0e18, 64)) == 52235800);
assert(unsigned(zero_extend(0x31d0e1c, 64)) == 52235804);
assert(unsigned(zero_extend(0x31d0e20, 64)) == 52235808);
assert(unsigned(zero_extend(0x31d0e24, 64)) == 52235812);
assert(unsigned(zero_extend(0x31d0e28, 64)) == 52235816);
assert(unsigned(zero_extend(0x31d0e2c, 64)) == 52235820);
assert(unsigned(zero_extend(0x31d0e30, 64)) == 52235824);
assert(unsigned(zero_extend(0x31d0e34, 64)) == 52235828);
assert(unsigned(zero_extend(0x31d0e38, 64)) == 52235832);
assert(unsigned(zero_extend(0x31d0e40, 64)) == 52235840);
assert(unsigned(zero_extend(0x31d0e48, 64)) == 52235848);
assert(unsigned(zero_extend(0x31d0e50, 64)) == 52235856);
assert(unsigned(zero_extend(0x31d0e58, 64)) == 52235864);
assert(unsigned(zero_extend(0x31d0e5c, 64)) == 52235868);
assert(unsigned(zero_extend(0x31d0e60, 64)) == 52235872);
assert(unsigned(zero_extend(0x31d0e64, 64)) == 52235876);
assert(unsigned(zero_extend(0x31d0e68, 64)) == 52235880);
assert(unsigned(zero_extend(0x31d0e6c, 64)) == 52235884);
assert(unsigned(zero_extend(0x31d0e70, 64)) == 52235888);
assert(unsigned(zero_extend(0x31d0e74, 64)) == 52235892);
assert(unsigned(zero_extend(0x31d0e78, 64)) == 52235896);
assert(unsigned(zero_extend(0x31d0e7c, 64)) == 52235900);
assert(unsigned(zero_extend(0x31d0e80, 64)) == 52235904);
assert(unsigned(zero_extend(0x31d0e84, 64)) == 52235908);
assert(unsigned(zero_extend(0x31d0e88, 64)) == 52235912);
assert(unsigned(zero_extend(0x31d0e8c, 64)) == 52235916);
assert(unsigned(zero_extend(0x31d0f3c, 64)) == 52236092);
assert(unsigned(zero_extend(0x31d0f40, 64)) == 52236096);
assert(unsigned(zero_extend(0x31d0f44, 64)) == 52236100);
assert(unsigned(zero_extend(0x31d0f48, 64)) == 52236104);
assert(unsigned(zero_extend(0x31d0f4c, 64)) == 52236108);
assert(unsigned(zero_extend(0x31d0f50, 64)) == 52236112);
assert(unsigned(zero_extend(0x31d0f54, 64)) == 52236116);
assert(unsigned(zero_extend(0x31d0f58, 64)) == 52236120);
assert(unsigned(zero_extend(0x31d0f5c, 64)) == 52236124);
assert(unsigned(zero_extend(0x31d0f60, 64)) == 52236128);
assert(unsigned(zero_extend(0x31d0f64, 64)) == 52236132);
assert(unsigned(zero_extend(0x31d0f68, 64)) == 52236136);
assert(unsigned(zero_extend(0x31d0f6c, 64)) == 52236140);
assert(unsigned(zero_extend(0x31d0f70, 64)) == 52236144);
assert(unsigned(zero_extend(0x31d0f74, 64)) == 52236148);
assert(unsigned(zero_extend(0x31d0f78, 64)) == 52236152);
assert(unsigned(zero_extend(0x31d0f7c, 64)) == 52236156);
assert(unsigned(zero_extend(0x31d0f8c, 64)) == 52236172);
assert(unsigned(zero_extend(0x31d0f90, 64)) == 52236176);
assert(unsigned(zero_extend(0x31d0f94, 64)) == 52236180);
assert(unsigned(zero_extend(0x31d0f98, 64)) == 52236184);
assert(unsigned(zero_extend(0x31d0f9c, 64)) == 52236188);
assert(unsigned(zero_extend(0x31d0fa0, 64)) == 52236192);
assert(unsigned(zero_extend(0x31d0fb0, 64)) == 52236208);
assert(unsigned(zero_extend(0x31d0fb4, 64)) == 52236212);
assert(unsigned(zero_extend(0x31d0fb8, 64)) == 52236216);
assert(unsigned(zero_extend(0x31d0fbc, 64)) == 52236220);
assert(unsigned(zero_extend(0x31d0fc0, 64)) == 52236224);
assert(unsigned(zero_extend(0x31d0fc4, 64)) == 52236228);
assert(unsigned(zero_extend(0x31d105c, 64)) == 52236380);
assert(unsigned(zero_extend(0x31d1060, 64)) == 52236384);
assert(unsigned(zero_extend(0x31d1064, 64)) == 52236388);
assert(unsigned(zero_extend(0x31d1068, 64)) == 52236392);
assert(unsigned(zero_extend(0x31d106c, 64)) == 52236396);
assert(unsigned(zero_extend(0x31d1078, 64)) == 52236408);
assert(unsigned(zero_extend(0x31d107c, 64)) == 52236412);
assert(unsigned(zero_extend(0x31d1080, 64)) == 52236416);
assert(unsigned(zero_extend(0x31d1084, 64)) == 52236420);
assert(unsigned(zero_extend(0x31d1088, 64)) == 52236424);
assert(unsigned(zero_extend(0x31d108c, 64)) == 52236428);
assert(unsigned(zero_extend(0x31d1090, 64)) == 52236432);
assert(unsigned(zero_extend(0x31d1094, 64)) == 52236436);
assert(unsigned(zero_extend(0x31d10a0, 64)) == 52236448);
assert(unsigned(zero_extend(0x31d10a4, 64)) == 52236452);
assert(unsigned(zero_extend(0x31d10a8, 64)) == 52236456);
assert(unsigned(zero_extend(0x31d10b0, 64)) == 52236464);
assert(unsigned(zero_extend(0x31d10b8, 64)) == 52236472);
assert(unsigned(zero_extend(0x31d10bc, 64)) == 52236476);
assert(unsigned(zero_extend(0x31d10c0, 64)) == 52236480);
assert(unsigned(zero_extend(0x31d10c4, 64)) == 52236484);
assert(unsigned(zero_extend(0x31d10c8, 64)) == 52236488);
assert(unsigned(zero_extend(0x31d10cc, 64)) == 52236492);
assert(unsigned(zero_extend(0x31d10d0, 64)) == 52236496);
assert(unsigned(zero_extend(0x31d10d4, 64)) == 52236500);
assert(unsigned(zero_extend(0x31d10d8, 64)) == 52236504);
assert(unsigned(zero_extend(0x31d10dc, 64)) == 52236508);
assert(unsigned(zero_extend(0x31d10e0, 64)) == 52236512);
assert(unsigned(zero_extend(0x31d10e4, 64)) == 52236516);
assert(unsigned(zero_extend(0x31d10e8, 64)) == 52236520);
assert(unsigned(zero_extend(0x31d10ec, 64)) == 52236524);
assert(unsigned(zero_extend(0x31d10f0, 64)) == 52236528);
assert(unsigned(zero_extend(0x31d10f4, 64)) == 52236532);
assert(unsigned(zero_extend(0x31d10f8, 64)) == 52236536);
assert(unsigned(zero_extend(0x31d1100, 64)) == 52236544);
assert(unsigned(zero_extend(0x31d1108, 64)) == 52236552);
assert(unsigned(zero_extend(0x31d1110, 64)) == 52236560);
assert(unsigned(zero_extend(0x31d1118, 64)) == 52236568);
assert(unsigned(zero_extend(0x31d111c, 64)) == 52236572);
assert(unsigned(zero_extend(0x31d1120, 64)) == 52236576);
assert(unsigned(zero_extend(0x31d1124, 64)) == 52236580);
assert(unsigned(zero_extend(0x31d1128, 64)) == 52236584);
assert(unsigned(zero_extend(0x31d112c, 64)) == 52236588);
assert(unsigned(zero_extend(0x31d1130, 64)) == 52236592);
assert(unsigned(zero_extend(0x31d1134, 64)) == 52236596);
assert(unsigned(zero_extend(0x31d1138, 64)) == 52236600);
assert(unsigned(zero_extend(0x31d113c, 64)) == 52236604);
assert(unsigned(zero_extend(0x31d1140, 64)) == 52236608);
assert(unsigned(zero_extend(0x31d1144, 64)) == 52236612);
assert(unsigned(zero_extend(0x31d1148, 64)) == 52236616);
assert(unsigned(zero_extend(0x31d114c, 64)) == 52236620);
assert(unsigned(zero_extend(0x31d1150, 64)) == 52236624);
assert(unsigned(zero_extend(0x31d1154, 64)) == 52236628);
assert(unsigned(zero_extend(0x31d1158, 64)) == 52236632);
assert(unsigned(zero_extend(0x31d115c, 64)) == 52236636);
assert(unsigned(zero_extend(0x31d1160, 64)) == 52236640);
assert(unsigned(zero_extend(0x31d1164, 64)) == 52236644);
assert(unsigned(zero_extend(0x31d1168, 64)) == 52236648);
assert(unsigned(zero_extend(0x31d1170, 64)) == 52236656);
assert(unsigned(zero_extend(0x31d1178, 64)) == 52236664);
assert(unsigned(zero_extend(0x31d1180, 64)) == 52236672);
assert(unsigned(zero_extend(0x31d1184, 64)) == 52236676);
assert(unsigned(zero_extend(0x31d1188, 64)) == 52236680);
assert(unsigned(zero_extend(0x31d118c, 64)) == 52236684);
assert(unsigned(zero_extend(0x31d1190, 64)) == 52236688);
assert(unsigned(zero_extend(0x31d1194, 64)) == 52236692);
assert(unsigned(zero_extend(0x31d1198, 64)) == 52236696);
assert(unsigned(zero_extend(0x31d119c, 64)) == 52236700);
assert(unsigned(zero_extend(0x31d11a0, 64)) == 52236704);
assert(unsigned(zero_extend(0x31d11a4, 64)) == 52236708);
assert(unsigned(zero_extend(0x31d11a8, 64)) == 52236712);
assert(unsigned(zero_extend(0x31d11ac, 64)) == 52236716);
assert(unsigned(zero_extend(0x31d11b0, 64)) == 52236720);
assert(unsigned(zero_extend(0x31d11b4, 64)) == 52236724);
assert(unsigned(zero_extend(0x31d11b8, 64)) == 52236728);
assert(unsigned(zero_extend(0x31d11bc, 64)) == 52236732);
assert(unsigned(zero_extend(0x31d11c0, 64)) == 52236736);
assert(unsigned(zero_extend(0x31d11c4, 64)) == 52236740);
assert(unsigned(zero_extend(0x31d11c8, 64)) == 52236744);
assert(unsigned(zero_extend(0x31d11cc, 64)) == 52236748);
assert(unsigned(zero_extend(0x31d11d0, 64)) == 52236752);
assert(unsigned(zero_extend(0x31d11d4, 64)) == 52236756);
assert(unsigned(zero_extend(0x31d11d8, 64)) == 52236760);
assert(unsigned(zero_extend(0x31d11dc, 64)) == 52236764);
assert(unsigned(zero_extend(0x31d11e0, 64)) == 52236768);
assert(unsigned(zero_extend(0x31d11ec, 64)) == 52236780);
assert(unsigned(zero_extend(0x31d11f0, 64)) == 52236784);
assert(unsigned(zero_extend(0x31d11f8, 64)) == 52236792);
assert(unsigned(zero_extend(0x31d11fc, 64)) == 52236796);
assert(unsigned(zero_extend(0x31d1200, 64)) == 52236800);
assert(unsigned(zero_extend(0x31d1204, 64)) == 52236804);
assert(unsigned(zero_extend(0x31d1208, 64)) == 52236808);
assert(unsigned(zero_extend(0x31d120c, 64)) == 52236812);
assert(unsigned(zero_extend(0x31d1220, 64)) == 52236832);
assert(unsigned(zero_extend(0x31d1224, 64)) == 52236836);
assert(unsigned(zero_extend(0x31d1254, 64)) == 52236884);
assert(unsigned(zero_extend(0x31d1258, 64)) == 52236888);
assert(unsigned(zero_extend(0x31d125c, 64)) == 52236892);
assert(unsigned(zero_extend(0x31d129c, 64)) == 52236956);
assert(unsigned(zero_extend(0x31d12a0, 64)) == 52236960);
assert(unsigned(zero_extend(0x31d12a4, 64)) == 52236964);
assert(unsigned(zero_extend(0x31d12a8, 64)) == 52236968);
assert(unsigned(zero_extend(0x31d12ac, 64)) == 52236972);
assert(unsigned(zero_extend(0x31d12b0, 64)) == 52236976);
assert(unsigned(zero_extend(0x31d12b4, 64)) == 52236980);
assert(unsigned(zero_extend(0x31d12b8, 64)) == 52236984);
assert(unsigned(zero_extend(0x31d12bc, 64)) == 52236988);
assert(unsigned(zero_extend(0x31d12c0, 64)) == 52236992);
assert(unsigned(zero_extend(0x31d12c4, 64)) == 52236996);
assert(unsigned(zero_extend(0x31d12c8, 64)) == 52237000);
assert(unsigned(zero_extend(0x31d12cc, 64)) == 52237004);
assert(unsigned(zero_extend(0x31d12d0, 64)) == 52237008);
assert(unsigned(zero_extend(0x31d12d4, 64)) == 52237012);
assert(unsigned(zero_extend(0x31d12d8, 64)) == 52237016);
assert(unsigned(zero_extend(0x31d12dc, 64)) == 52237020);
assert(unsigned(zero_extend(0x31d12e0, 64)) == 52237024);
assert(unsigned(zero_extend(0x31d12e4, 64)) == 52237028);
assert(unsigned(zero_extend(0x31d12e8, 64)) == 52237032);
assert(unsigned(zero_extend(0x31d12ec, 64)) == 52237036);
assert(unsigned(zero_extend(0x31d12f0, 64)) == 52237040);
assert(unsigned(zero_extend(0x31d12f4, 64)) == 52237044);
assert(unsigned(zero_extend(0x31d12f8, 64)) == 52237048);
assert(unsigned(zero_extend(0x31d12fc, 64)) == 52237052);
assert(unsigned(zero_extend(0x31d1300, 64)) == 52237056);
assert(unsigned(zero_extend(0x31d1304, 64)) == 52237060);
assert(unsigned(zero_extend(0x31d1308, 64)) == 52237064);
assert(unsigned(zero_extend(0x31d130c, 64)) == 52237068);
assert(unsigned(zero_extend(0x31d1310, 64)) == 52237072);
assert(unsigned(zero_extend(0x31d1314, 64)) == 52237076);
assert(unsigned(zero_extend(0x31d1318, 64)) == 52237080);
assert(unsigned(zero_extend(0x31d131c, 64)) == 52237084);
assert(unsigned(zero_extend(0x31d1320, 64)) == 52237088);
assert(unsigned(zero_extend(0x31d1324, 64)) == 52237092);
assert(unsigned(zero_extend(0x31d1328, 64)) == 52237096);
assert(unsigned(zero_extend(0x31d132c, 64)) == 52237100);
assert(unsigned(zero_extend(0x31d1330, 64)) == 52237104);
assert(unsigned(zero_extend(0x31d1334, 64)) == 52237108);
assert(unsigned(zero_extend(0x31d1338, 64)) == 52237112);
assert(unsigned(zero_extend(0x31d133c, 64)) == 52237116);
assert(unsigned(zero_extend(0x31d1340, 64)) == 52237120);
assert(unsigned(zero_extend(0x31d1344, 64)) == 52237124);
assert(unsigned(zero_extend(0x31d1348, 64)) == 52237128);
assert(unsigned(zero_extend(0x31d134c, 64)) == 52237132);
assert(unsigned(zero_extend(0x31d1350, 64)) == 52237136);
assert(unsigned(zero_extend(0x31d1354, 64)) == 52237140);
assert(unsigned(zero_extend(0x31d1358, 64)) == 52237144);
assert(unsigned(zero_extend(0x31d135c, 64)) == 52237148);
assert(unsigned(zero_extend(0x31d1360, 64)) == 52237152);
assert(unsigned(zero_extend(0x31d1364, 64)) == 52237156);
assert(unsigned(zero_extend(0x31d1368, 64)) == 52237160);
assert(unsigned(zero_extend(0x31d136c, 64)) == 52237164);
assert(unsigned(zero_extend(0x31d1370, 64)) == 52237168);
assert(unsigned(zero_extend(0x31d1374, 64)) == 52237172);
assert(unsigned(zero_extend(0x31d1378, 64)) == 52237176);
assert(unsigned(zero_extend(0x31d137c, 64)) == 52237180);
assert(unsigned(zero_extend(0x31d1380, 64)) == 52237184);
assert(unsigned(zero_extend(0x31d1384, 64)) == 52237188);
assert(unsigned(zero_extend(0x31d1388, 64)) == 52237192);
assert(unsigned(zero_extend(0x31d1390, 64)) == 52237200);
assert(unsigned(zero_extend(0x31d1398, 64)) == 52237208);
assert(unsigned(zero_extend(0x31d13a0, 64)) == 52237216);
assert(unsigned(zero_extend(0x31d13a8, 64)) == 52237224);
assert(unsigned(zero_extend(0x31d13b0, 64)) == 52237232);
assert(unsigned(zero_extend(0x31d13b8, 64)) == 52237240);
assert(unsigned(zero_extend(0x31d13c0, 64)) == 52237248);
assert(unsigned(zero_extend(0x31d13c8, 64)) == 52237256);
assert(unsigned(zero_extend(0x31d13d0, 64)) == 52237264);
assert(unsigned(zero_extend(0x31d13d8, 64)) == 52237272);
assert(unsigned(zero_extend(0x31d13e0, 64)) == 52237280);
assert(unsigned(zero_extend(0x31d13e8, 64)) == 52237288);
assert(unsigned(zero_extend(0x31d13f0, 64)) == 52237296);
assert(unsigned(zero_extend(0x31d13f8, 64)) == 52237304);
assert(unsigned(zero_extend(0x31d1400, 64)) == 52237312);
assert(unsigned(zero_extend(0x31d1408, 64)) == 52237320);
assert(unsigned(zero_extend(0x31d1410, 64)) == 52237328);
assert(unsigned(zero_extend(0x31d1418, 64)) == 52237336);
assert(unsigned(zero_extend(0x31d1420, 64)) == 52237344);
assert(unsigned(zero_extend(0x31d1428, 64)) == 52237352);
assert(unsigned(zero_extend(0x31d1430, 64)) == 52237360);
assert(unsigned(zero_extend(0x31d1438, 64)) == 52237368);
assert(unsigned(zero_extend(0x31d1440, 64)) == 52237376);
assert(unsigned(zero_extend(0x31d1448, 64)) == 52237384);
assert(unsigned(zero_extend(0x31d1450, 64)) == 52237392);
assert(unsigned(zero_extend(0x31d1458, 64)) == 52237400);
assert(unsigned(zero_extend(0x31d1460, 64)) == 52237408);
assert(unsigned(zero_extend(0x31d1468, 64)) == 52237416);
assert(unsigned(zero_extend(0x31d1470, 64)) == 52237424);
assert(unsigned(zero_extend(0x31d1478, 64)) == 52237432);
assert(unsigned(zero_extend(0x31d1480, 64)) == 52237440);
assert(unsigned(zero_extend(0x31d1488, 64)) == 52237448);
assert(unsigned(zero_extend(0x31d1490, 64)) == 52237456);
assert(unsigned(zero_extend(0x31d1498, 64)) == 52237464);
assert(unsigned(zero_extend(0x31d14a0, 64)) == 52237472);
assert(unsigned(zero_extend(0x31d14a8, 64)) == 52237480);
assert(unsigned(zero_extend(0x31d14b0, 64)) == 52237488);
assert(unsigned(zero_extend(0x31d14b8, 64)) == 52237496);
assert(unsigned(zero_extend(0x31d14c0, 64)) == 52237504);
assert(unsigned(zero_extend(0x31d14c8, 64)) == 52237512);
assert(unsigned(zero_extend(0x31d14d0, 64)) == 52237520);
assert(unsigned(zero_extend(0x31d14d8, 64)) == 52237528);
assert(unsigned(zero_extend(0x31d14e0, 64)) == 52237536);
assert(unsigned(zero_extend(0x31d14e8, 64)) == 52237544);
assert(unsigned(zero_extend(0x31d14f0, 64)) == 52237552);
assert(unsigned(zero_extend(0x31d14f8, 64)) == 52237560);
assert(unsigned(zero_extend(0x31d1500, 64)) == 52237568);
assert(unsigned(zero_extend(0x31d1508, 64)) == 52237576);
assert(unsigned(zero_extend(0x31d1510, 64)) == 52237584);
assert(unsigned(zero_extend(0x31d1518, 64)) == 52237592);
assert(unsigned(zero_extend(0x31d1520, 64)) == 52237600);
assert(unsigned(zero_extend(0x31d1528, 64)) == 52237608);
assert(unsigned(zero_extend(0x31d1530, 64)) == 52237616);
assert(unsigned(zero_extend(0x31d1538, 64)) == 52237624);
assert(unsigned(zero_extend(0x31d1540, 64)) == 52237632);
assert(unsigned(zero_extend(0x31d1548, 64)) == 52237640);
assert(unsigned(zero_extend(0x31d1550, 64)) == 52237648);
assert(unsigned(zero_extend(0x31d1558, 64)) == 52237656);
assert(unsigned(zero_extend(0x31d1560, 64)) == 52237664);
assert(unsigned(zero_extend(0x31d1568, 64)) == 52237672);
assert(unsigned(zero_extend(0x31d1570, 64)) == 52237680);
assert(unsigned(zero_extend(0x31d1578, 64)) == 52237688);
assert(unsigned(zero_extend(0x31d1580, 64)) == 52237696);
assert(unsigned(zero_extend(0x31d1588, 64)) == 52237704);
assert(unsigned(zero_extend(0x31d1590, 64)) == 52237712);
assert(unsigned(zero_extend(0x31d1598, 64)) == 52237720);
assert(unsigned(zero_extend(0x31d15a0, 64)) == 52237728);
assert(unsigned(zero_extend(0x31d15a8, 64)) == 52237736);
assert(unsigned(zero_extend(0x31d15b0, 64)) == 52237744);
assert(unsigned(zero_extend(0x31d15b8, 64)) == 52237752);
assert(unsigned(zero_extend(0x31d15c0, 64)) == 52237760);
assert(unsigned(zero_extend(0x31d15c8, 64)) == 52237768);
assert(unsigned(zero_extend(0x31d15d0, 64)) == 52237776);
assert(unsigned(zero_extend(0x31d15d8, 64)) == 52237784);
assert(unsigned(zero_extend(0x31d15e0, 64)) == 52237792);
assert(unsigned(zero_extend(0x31d15e8, 64)) == 52237800);
assert(unsigned(zero_extend(0x31d15f0, 64)) == 52237808);
assert(unsigned(zero_extend(0x31d15f8, 64)) == 52237816);
assert(unsigned(zero_extend(0x31d1600, 64)) == 52237824);
assert(unsigned(zero_extend(0x31d1608, 64)) == 52237832);
assert(unsigned(zero_extend(0x31d1610, 64)) == 52237840);
assert(unsigned(zero_extend(0x31d1618, 64)) == 52237848);
assert(unsigned(zero_extend(0x31d1620, 64)) == 52237856);
assert(unsigned(zero_extend(0x31d1628, 64)) == 52237864);
assert(unsigned(zero_extend(0x31d1630, 64)) == 52237872);
assert(unsigned(zero_extend(0x31d1638, 64)) == 52237880);
assert(unsigned(zero_extend(0x31d1640, 64)) == 52237888);
assert(unsigned(zero_extend(0x31d1648, 64)) == 52237896);
assert(unsigned(zero_extend(0x31d1650, 64)) == 52237904);
assert(unsigned(zero_extend(0x31d1658, 64)) == 52237912);
assert(unsigned(zero_extend(0x31d1660, 64)) == 52237920);
assert(unsigned(zero_extend(0x31d1668, 64)) == 52237928);
assert(unsigned(zero_extend(0x31d1670, 64)) == 52237936);
assert(unsigned(zero_extend(0x31d1678, 64)) == 52237944);
assert(unsigned(zero_extend(0x31d1680, 64)) == 52237952);
assert(unsigned(zero_extend(0x31d1688, 64)) == 52237960);
assert(unsigned(zero_extend(0x31d1690, 64)) == 52237968);
assert(unsigned(zero_extend(0x31d1698, 64)) == 52237976);
assert(unsigned(zero_extend(0x31d16a0, 64)) == 52237984);
assert(unsigned(zero_extend(0x31d16a8, 64)) == 52237992);
assert(unsigned(zero_extend(0x31d16b0, 64)) == 52238000);
assert(unsigned(zero_extend(0x31d16b8, 64)) == 52238008);
assert(unsigned(zero_extend(0x31d16c0, 64)) == 52238016);
assert(unsigned(zero_extend(0x31d16c8, 64)) == 52238024);
assert(unsigned(zero_extend(0x31d16d0, 64)) == 52238032);
assert(unsigned(zero_extend(0x31d16d8, 64)) == 52238040);
assert(unsigned(zero_extend(0x31d16e0, 64)) == 52238048);
assert(unsigned(zero_extend(0x31d16e8, 64)) == 52238056);
assert(unsigned(zero_extend(0x31d16f0, 64)) == 52238064);
assert(unsigned(zero_extend(0x31d16f8, 64)) == 52238072);
assert(unsigned(zero_extend(0x31d1700, 64)) == 52238080);
assert(unsigned(zero_extend(0x31d1708, 64)) == 52238088);
assert(unsigned(zero_extend(0x31d1710, 64)) == 52238096);
assert(unsigned(zero_extend(0x31d1718, 64)) == 52238104);
assert(unsigned(zero_extend(0x31d1720, 64)) == 52238112);
assert(unsigned(zero_extend(0x31d1728, 64)) == 52238120);
assert(unsigned(zero_extend(0x31d1730, 64)) == 52238128);
assert(unsigned(zero_extend(0x31d1738, 64)) == 52238136);
assert(unsigned(zero_extend(0x31d1740, 64)) == 52238144);
assert(unsigned(zero_extend(0x31d1748, 64)) == 52238152);
assert(unsigned(zero_extend(0x31d1750, 64)) == 52238160);
assert(unsigned(zero_extend(0x31d1758, 64)) == 52238168);
assert(unsigned(zero_extend(0x31d1760, 64)) == 52238176);
assert(unsigned(zero_extend(0x31d1768, 64)) == 52238184);
assert(unsigned(zero_extend(0x31d1770, 64)) == 52238192);
assert(unsigned(zero_extend(0x31d1778, 64)) == 52238200);
assert(unsigned(zero_extend(0x31d1780, 64)) == 52238208);
assert(unsigned(zero_extend(0x31d17d0, 64)) == 52238288);
assert(unsigned(zero_extend(0x31d17d4, 64)) == 52238292);
assert(unsigned(zero_extend(0x31d17e0, 64)) == 52238304);
assert(unsigned(zero_extend(0x31d17e8, 64)) == 52238312);
assert(unsigned(zero_extend(0x31d17f0, 64)) == 52238320);
assert(unsigned(zero_extend(0x31d17f4, 64)) == 52238324);
assert(unsigned(zero_extend(0x31d17f8, 64)) == 52238328);
assert(unsigned(zero_extend(0x31d1800, 64)) == 52238336);
assert(unsigned(zero_extend(0x31d1808, 64)) == 52238344);
assert(unsigned(zero_extend(0x31d1810, 64)) == 52238352);
assert(unsigned(zero_extend(0x31d1818, 64)) == 52238360);
assert(unsigned(zero_extend(0x31d1820, 64)) == 52238368);
assert(unsigned(zero_extend(0x31d1828, 64)) == 52238376);
assert(unsigned(zero_extend(0x31d1830, 64)) == 52238384);
assert(unsigned(zero_extend(0x31d1838, 64)) == 52238392);
assert(unsigned(zero_extend(0x31d1840, 64)) == 52238400);
assert(unsigned(zero_extend(0x31d1848, 64)) == 52238408);
assert(unsigned(zero_extend(0x31d1850, 64)) == 52238416);
assert(unsigned(zero_extend(0x31d1858, 64)) == 52238424);
assert(unsigned(zero_extend(0x31d1860, 64)) == 52238432);
assert(unsigned(zero_extend(0x31d1868, 64)) == 52238440);
assert(unsigned(zero_extend(0x31d1870, 64)) == 52238448);
assert(unsigned(zero_extend(0x31d1878, 64)) == 52238456);
assert(unsigned(zero_extend(0x31d1880, 64)) == 52238464);
assert(unsigned(zero_extend(0x31d1888, 64)) == 52238472);
assert(unsigned(zero_extend(0x31d1890, 64)) == 52238480);
assert(unsigned(zero_extend(0x31d1898, 64)) == 52238488);
assert(unsigned(zero_extend(0x31d18a0, 64)) == 52238496);
assert(unsigned(zero_extend(0x31d18a8, 64)) == 52238504);
assert(unsigned(zero_extend(0x31d18b0, 64)) == 52238512);
assert(unsigned(zero_extend(0x31d18b8, 64)) == 52238520);
assert(unsigned(zero_extend(0x31d18c0, 64)) == 52238528);
assert(unsigned(zero_extend(0x31d18d0, 64)) == 52238544);
assert(unsigned(zero_extend(0x31d18d8, 64)) == 52238552);
assert(unsigned(zero_extend(0x31d18e0, 64)) == 52238560);
assert(unsigned(zero_extend(0x31d18e8, 64)) == 52238568);
assert(unsigned(zero_extend(0x31d18f0, 64)) == 52238576);
assert(unsigned(zero_extend(0x31d18f8, 64)) == 52238584);
assert(unsigned(zero_extend(0x31d1900, 64)) == 52238592);
assert(unsigned(zero_extend(0x31d1908, 64)) == 52238600);
assert(unsigned(zero_extend(0x31d1910, 64)) == 52238608);
assert(unsigned(zero_extend(0x31d1918, 64)) == 52238616);
assert(unsigned(zero_extend(0x31d1920, 64)) == 52238624);
assert(unsigned(zero_extend(0x31d1928, 64)) == 52238632);
assert(unsigned(zero_extend(0x31d1930, 64)) == 52238640);
assert(unsigned(zero_extend(0x31d1938, 64)) == 52238648);
assert(unsigned(zero_extend(0x31d1940, 64)) == 52238656);
assert(unsigned(zero_extend(0x31d1948, 64)) == 52238664);
assert(unsigned(zero_extend(0x31d1950, 64)) == 52238672);
assert(unsigned(zero_extend(0x31d1958, 64)) == 52238680);
assert(unsigned(zero_extend(0x31d1960, 64)) == 52238688);
assert(unsigned(zero_extend(0x31d1968, 64)) == 52238696);
assert(unsigned(zero_extend(0x31d1970, 64)) == 52238704);
assert(unsigned(zero_extend(0x31d1980, 64)) == 52238720);
assert(unsigned(zero_extend(0x31d1b80, 64)) == 52239232);
assert(unsigned(zero_extend(0x31d1b88, 64)) == 52239240);
assert(unsigned(zero_extend(0x31d1b90, 64)) == 52239248);
assert(unsigned(zero_extend(0x31d1b98, 64)) == 52239256);
assert(unsigned(zero_extend(0x31d1ba0, 64)) == 52239264);
assert(unsigned(zero_extend(0x31d1ba8, 64)) == 52239272);
assert(unsigned(zero_extend(0x31d1bb0, 64)) == 52239280);
assert(unsigned(zero_extend(0x31d1bb8, 64)) == 52239288);
assert(unsigned(zero_extend(0x31d1bc0, 64)) == 52239296);
assert(unsigned(zero_extend(0x31d1bc8, 64)) == 52239304);
assert(unsigned(zero_extend(0x31d1bd0, 64)) == 52239312);
assert(unsigned(zero_extend(0x31d1bd8, 64)) == 52239320);
assert(unsigned(zero_extend(0x31d1be0, 64)) == 52239328);
assert(unsigned(zero_extend(0x31d1be8, 64)) == 52239336);
assert(unsigned(zero_extend(0x31d1bf0, 64)) == 52239344);
assert(unsigned(zero_extend(0x31d1bf8, 64)) == 52239352);
assert(unsigned(zero_extend(0x31d1c00, 64)) == 52239360);
assert(unsigned(zero_extend(0x31d1c08, 64)) == 52239368);
assert(unsigned(zero_extend(0x31d1c10, 64)) == 52239376);
assert(unsigned(zero_extend(0x31d1c18, 64)) == 52239384);
assert(unsigned(zero_extend(0x31d1c20, 64)) == 52239392);
assert(unsigned(zero_extend(0x31d1c28, 64)) == 52239400);
assert(unsigned(zero_extend(0x31d1c2c, 64)) == 52239404);
assert(unsigned(zero_extend(0x31d1c30, 64)) == 52239408);
assert(unsigned(zero_extend(0x31d1c34, 64)) == 52239412);
assert(unsigned(zero_extend(0x31d1c38, 64)) == 52239416);
assert(unsigned(zero_extend(0x31d1c3c, 64)) == 52239420);
assert(unsigned(zero_extend(0x31d1c40, 64)) == 52239424);
assert(unsigned(zero_extend(0x31d1c44, 64)) == 52239428);
assert(unsigned(zero_extend(0x31d1c48, 64)) == 52239432);
assert(unsigned(zero_extend(0x31d1c4c, 64)) == 52239436);
assert(unsigned(zero_extend(0x31d1c50, 64)) == 52239440);
assert(unsigned(zero_extend(0x31d1c54, 64)) == 52239444);
assert(unsigned(zero_extend(0x31d1c58, 64)) == 52239448);
assert(unsigned(zero_extend(0x31d1c5c, 64)) == 52239452);
assert(unsigned(zero_extend(0x31d1c60, 64)) == 52239456);
assert(unsigned(zero_extend(0x31d1c64, 64)) == 52239460);
assert(unsigned(zero_extend(0x31d1c68, 64)) == 52239464);
assert(unsigned(zero_extend(0x31d1c6c, 64)) == 52239468);
assert(unsigned(zero_extend(0x31d1c70, 64)) == 52239472);
assert(unsigned(zero_extend(0x31d1c74, 64)) == 52239476);
assert(unsigned(zero_extend(0x31d1c78, 64)) == 52239480);
assert(unsigned(zero_extend(0x32, 64)) == 50);
assert(unsigned(zero_extend(0x320, 64)) == 800);
assert(unsigned(zero_extend(0x33, 64)) == 51);
assert(unsigned(zero_extend(0x34, 64)) == 52);
assert(unsigned(zero_extend(0x34000, 64)) == 212992);
assert(unsigned(zero_extend(0x34040, 64)) == 213056);
assert(unsigned(zero_extend(0x35, 64)) == 53);
assert(unsigned(zero_extend(0x36, 64)) == 54);
assert(unsigned(zero_extend(0x368, 64)) == 872);
assert(unsigned(zero_extend(0x37, 64)) == 55);
assert(unsigned(zero_extend(0x38, 64)) == 56);
assert(unsigned(zero_extend(0x3800000, 64)) == 58720256);
assert(unsigned(zero_extend(0x380000a, 64)) == 58720266);
assert(unsigned(zero_extend(0x3800010, 64)) == 58720272);
assert(unsigned(zero_extend(0x3800011, 64)) == 58720273);
assert(unsigned(zero_extend(0x3800012, 64)) == 58720274);
assert(unsigned(zero_extend(0x3800013, 64)) == 58720275);
assert(unsigned(zero_extend(0x3800018, 64)) == 58720280);
assert(unsigned(zero_extend(0x3800038, 64)) == 58720312);
assert(unsigned(zero_extend(0x380003a, 64)) == 58720314);
assert(unsigned(zero_extend(0x380003b, 64)) == 58720315);
assert(unsigned(zero_extend(0x380003c, 64)) == 58720316);
assert(unsigned(zero_extend(0x380003d, 64)) == 58720317);
assert(unsigned(zero_extend(0x3800040, 64)) == 58720320);
assert(unsigned(zero_extend(0x380004b, 64)) == 58720331);
assert(unsigned(zero_extend(0x380004c, 64)) == 58720332);
assert(unsigned(zero_extend(0x380004d, 64)) == 58720333);
assert(unsigned(zero_extend(0x380004e, 64)) == 58720334);
assert(unsigned(zero_extend(0x3800050, 64)) == 58720336);
assert(unsigned(zero_extend(0x3800060, 64)) == 58720352);
assert(unsigned(zero_extend(0x38002c0, 64)) == 58720960);
assert(unsigned(zero_extend(0x38002c8, 64)) == 58720968);
assert(unsigned(zero_extend(0x38002d0, 64)) == 58720976);
assert(unsigned(zero_extend(0x38002d8, 64)) == 58720984);
assert(unsigned(zero_extend(0x38002e0, 64)) == 58720992);
assert(unsigned(zero_extend(0x38002e8, 64)) == 58721000);
assert(unsigned(zero_extend(0x38002f0, 64)) == 58721008);
assert(unsigned(zero_extend(0x38002f8, 64)) == 58721016);
assert(unsigned(zero_extend(0x3800300, 64)) == 58721024);
assert(unsigned(zero_extend(0x3800310, 64)) == 58721040);
assert(unsigned(zero_extend(0x3800318, 64)) == 58721048);
assert(unsigned(zero_extend(0x3800320, 64)) == 58721056);
assert(unsigned(zero_extend(0x3800328, 64)) == 58721064);
assert(unsigned(zero_extend(0x3800330, 64)) == 58721072);
assert(unsigned(zero_extend(0x3800338, 64)) == 58721080);
assert(unsigned(zero_extend(0x3800340, 64)) == 58721088);
assert(unsigned(zero_extend(0x3800350, 64)) == 58721104);
assert(unsigned(zero_extend(0x3800358, 64)) == 58721112);
assert(unsigned(zero_extend(0x3800360, 64)) == 58721120);
assert(unsigned(zero_extend(0x3800368, 64)) == 58721128);
assert(unsigned(zero_extend(0x38003a0, 64)) == 58721184);
assert(unsigned(zero_extend(0x38003a8, 64)) == 58721192);
assert(unsigned(zero_extend(0x38003b0, 64)) == 58721200);
assert(unsigned(zero_extend(0x38003b4, 64)) == 58721204);
assert(unsigned(zero_extend(0x38003b8, 64)) == 58721208);
assert(unsigned(zero_extend(0x38003bc, 64)) == 58721212);
assert(unsigned(zero_extend(0x38003c0, 64)) == 58721216);
assert(unsigned(zero_extend(0x38003c4, 64)) == 58721220);
assert(unsigned(zero_extend(0x38003c8, 64)) == 58721224);
assert(unsigned(zero_extend(0x38003cc, 64)) == 58721228);
assert(unsigned(zero_extend(0x38003d0, 64)) == 58721232);
assert(unsigned(zero_extend(0x38003d4, 64)) == 58721236);
assert(unsigned(zero_extend(0x38003d8, 64)) == 58721240);
assert(unsigned(zero_extend(0x38003dc, 64)) == 58721244);
assert(unsigned(zero_extend(0x38003e0, 64)) == 58721248);
assert(unsigned(zero_extend(0x38003e4, 64)) == 58721252);
assert(unsigned(zero_extend(0x38003e8, 64)) == 58721256);
assert(unsigned(zero_extend(0x38003ec, 64)) == 58721260);
assert(unsigned(zero_extend(0x38003f0, 64)) == 58721264);
assert(unsigned(zero_extend(0x38003f8, 64)) == 58721272);
assert(unsigned(zero_extend(0x3800400, 64)) == 58721280);
assert(unsigned(zero_extend(0x3800408, 64)) == 58721288);
assert(unsigned(zero_extend(0x3800410, 64)) == 58721296);
assert(unsigned(zero_extend(0x3800418, 64)) == 58721304);
assert(unsigned(zero_extend(0x3800420, 64)) == 58721312);
assert(unsigned(zero_extend(0x3800428, 64)) == 58721320);
assert(unsigned(zero_extend(0x3800430, 64)) == 58721328);
assert(unsigned(zero_extend(0x3800438, 64)) == 58721336);
assert(unsigned(zero_extend(0x3800440, 64)) == 58721344);
assert(unsigned(zero_extend(0x3800448, 64)) == 58721352);
assert(unsigned(zero_extend(0x3800450, 64)) == 58721360);
assert(unsigned(zero_extend(0x3800458, 64)) == 58721368);
assert(unsigned(zero_extend(0x3800460, 64)) == 58721376);
assert(unsigned(zero_extend(0x3808060, 64)) == 58753120);
assert(unsigned(zero_extend(0x3808064, 64)) == 58753124);
assert(unsigned(zero_extend(0x3808068, 64)) == 58753128);
assert(unsigned(zero_extend(0x3808070, 64)) == 58753136);
assert(unsigned(zero_extend(0x3808078, 64)) == 58753144);
assert(unsigned(zero_extend(0x3808080, 64)) == 58753152);
assert(unsigned(zero_extend(0x3808140, 64)) == 58753344);
assert(unsigned(zero_extend(0x3808148, 64)) == 58753352);
assert(unsigned(zero_extend(0x3808248, 64)) == 58753608);
assert(unsigned(zero_extend(0x3808250, 64)) == 58753616);
assert(unsigned(zero_extend(0x3808258, 64)) == 58753624);
assert(unsigned(zero_extend(0x3808a00, 64)) == 58755584);
assert(unsigned(zero_extend(0x3808a04, 64)) == 58755588);
assert(unsigned(zero_extend(0x3808a08, 64)) == 58755592);
assert(unsigned(zero_extend(0x3808a10, 64)) == 58755600);
assert(unsigned(zero_extend(0x3808a18, 64)) == 58755608);
assert(unsigned(zero_extend(0x3808a20, 64)) == 58755616);
assert(unsigned(zero_extend(0x3808a70, 64)) == 58755696);
assert(unsigned(zero_extend(0x3808a78, 64)) == 58755704);
assert(unsigned(zero_extend(0x3808b78, 64)) == 58755960);
assert(unsigned(zero_extend(0x3808b80, 64)) == 58755968);
assert(unsigned(zero_extend(0x380d000, 64)) == 58773504);
assert(unsigned(zero_extend(0x380d610, 64)) == 58775056);
assert(unsigned(zero_extend(0x380d880, 64)) == 58775680);
assert(unsigned(zero_extend(0x380d888, 64)) == 58775688);
assert(unsigned(zero_extend(0x380d890, 64)) == 58775696);
assert(unsigned(zero_extend(0x380d898, 64)) == 58775704);
assert(unsigned(zero_extend(0x380d8a0, 64)) == 58775712);
assert(unsigned(zero_extend(0x380d8a8, 64)) == 58775720);
assert(unsigned(zero_extend(0x380d8b0, 64)) == 58775728);
assert(unsigned(zero_extend(0x380d8b8, 64)) == 58775736);
assert(unsigned(zero_extend(0x380d8c0, 64)) == 58775744);
assert(unsigned(zero_extend(0x380d8c8, 64)) == 58775752);
assert(unsigned(zero_extend(0x380d8d0, 64)) == 58775760);
assert(unsigned(zero_extend(0x380d8d8, 64)) == 58775768);
assert(unsigned(zero_extend(0x380d8e0, 64)) == 58775776);
assert(unsigned(zero_extend(0x380d8e8, 64)) == 58775784);
assert(unsigned(zero_extend(0x380d8f0, 64)) == 58775792);
assert(unsigned(zero_extend(0x380d8f8, 64)) == 58775800);
assert(unsigned(zero_extend(0x380d900, 64)) == 58775808);
assert(unsigned(zero_extend(0x380d908, 64)) == 58775816);
assert(unsigned(zero_extend(0x380d910, 64)) == 58775824);
assert(unsigned(zero_extend(0x380d960, 64)) == 58775904);
assert(unsigned(zero_extend(0x380d968, 64)) == 58775912);
assert(unsigned(zero_extend(0x380d970, 64)) == 58775920);
assert(unsigned(zero_extend(0x380d974, 64)) == 58775924);
assert(unsigned(zero_extend(0x380d978, 64)) == 58775928);
assert(unsigned(zero_extend(0x380d97c, 64)) == 58775932);
assert(unsigned(zero_extend(0x380d980, 64)) == 58775936);
assert(unsigned(zero_extend(0x380d984, 64)) == 58775940);
assert(unsigned(zero_extend(0x380d988, 64)) == 58775944);
assert(unsigned(zero_extend(0x380d98c, 64)) == 58775948);
assert(unsigned(zero_extend(0x380d990, 64)) == 58775952);
assert(unsigned(zero_extend(0x380d994, 64)) == 58775956);
assert(unsigned(zero_extend(0x380d998, 64)) == 58775960);
assert(unsigned(zero_extend(0x380d99c, 64)) == 58775964);
assert(unsigned(zero_extend(0x380d9a0, 64)) == 58775968);
assert(unsigned(zero_extend(0x380d9a4, 64)) == 58775972);
assert(unsigned(zero_extend(0x380d9a8, 64)) == 58775976);
assert(unsigned(zero_extend(0x380d9ac, 64)) == 58775980);
assert(unsigned(zero_extend(0x380d9b0, 64)) == 58775984);
assert(unsigned(zero_extend(0x380d9b8, 64)) == 58775992);
assert(unsigned(zero_extend(0x380d9c0, 64)) == 58776000);
assert(unsigned(zero_extend(0x380d9c8, 64)) == 58776008);
assert(unsigned(zero_extend(0x380d9d0, 64)) == 58776016);
assert(unsigned(zero_extend(0x380d9d8, 64)) == 58776024);
assert(unsigned(zero_extend(0x380d9e0, 64)) == 58776032);
assert(unsigned(zero_extend(0x380d9e8, 64)) == 58776040);
assert(unsigned(zero_extend(0x380d9f0, 64)) == 58776048);
assert(unsigned(zero_extend(0x380d9f8, 64)) == 58776056);
assert(unsigned(zero_extend(0x380da00, 64)) == 58776064);
assert(unsigned(zero_extend(0x380da08, 64)) == 58776072);
assert(unsigned(zero_extend(0x380da10, 64)) == 58776080);
assert(unsigned(zero_extend(0x3811610, 64)) == 58791440);
assert(unsigned(zero_extend(0x3813610, 64)) == 58799632);
assert(unsigned(zero_extend(0x3815610, 64)) == 58807824);
assert(unsigned(zero_extend(0x3815618, 64)) == 58807832);
assert(unsigned(zero_extend(0x3815624, 64)) == 58807844);
assert(unsigned(zero_extend(0x3815628, 64)) == 58807848);
assert(unsigned(zero_extend(0x3815630, 64)) == 58807856);
assert(unsigned(zero_extend(0x3815638, 64)) == 58807864);
assert(unsigned(zero_extend(0x381563c, 64)) == 58807868);
assert(unsigned(zero_extend(0x3815640, 64)) == 58807872);
assert(unsigned(zero_extend(0x3815648, 64)) == 58807880);
assert(unsigned(zero_extend(0x3815650, 64)) == 58807888);
assert(unsigned(zero_extend(0x3815658, 64)) == 58807896);
assert(unsigned(zero_extend(0x3815668, 64)) == 58807912);
assert(unsigned(zero_extend(0x3815670, 64)) == 58807920);
assert(unsigned(zero_extend(0x3815678, 64)) == 58807928);
assert(unsigned(zero_extend(0x3815778, 64)) == 58808184);
assert(unsigned(zero_extend(0x3815780, 64)) == 58808192);
assert(unsigned(zero_extend(0x3815b50, 64)) == 58809168);
assert(unsigned(zero_extend(0x3815b58, 64)) == 58809176);
assert(unsigned(zero_extend(0x3815c58, 64)) == 58809432);
assert(unsigned(zero_extend(0x3815c60, 64)) == 58809440);
assert(unsigned(zero_extend(0x3815d80, 64)) == 58809728);
assert(unsigned(zero_extend(0x3817d80, 64)) == 58817920);
assert(unsigned(zero_extend(0x3819d80, 64)) == 58826112);
assert(unsigned(zero_extend(0x3819d84, 64)) == 58826116);
assert(unsigned(zero_extend(0x3819d88, 64)) == 58826120);
assert(unsigned(zero_extend(0x3819d8c, 64)) == 58826124);
assert(unsigned(zero_extend(0x3819d90, 64)) == 58826128);
assert(unsigned(zero_extend(0x3819d98, 64)) == 58826136);
assert(unsigned(zero_extend(0x3819da0, 64)) == 58826144);
assert(unsigned(zero_extend(0x3819da8, 64)) == 58826152);
assert(unsigned(zero_extend(0x3819db8, 64)) == 58826168);
assert(unsigned(zero_extend(0x3819dc0, 64)) == 58826176);
assert(unsigned(zero_extend(0x3819dc8, 64)) == 58826184);
assert(unsigned(zero_extend(0x3819ed0, 64)) == 58826448);
assert(unsigned(zero_extend(0x381a000, 64)) == 58826752);
assert(unsigned(zero_extend(0x381a280, 64)) == 58827392);
assert(unsigned(zero_extend(0x381a284, 64)) == 58827396);
assert(unsigned(zero_extend(0x381a288, 64)) == 58827400);
assert(unsigned(zero_extend(0x381a28c, 64)) == 58827404);
assert(unsigned(zero_extend(0x381a290, 64)) == 58827408);
assert(unsigned(zero_extend(0x381a298, 64)) == 58827416);
assert(unsigned(zero_extend(0x381a2a0, 64)) == 58827424);
assert(unsigned(zero_extend(0x381a2a8, 64)) == 58827432);
assert(unsigned(zero_extend(0x381a2b8, 64)) == 58827448);
assert(unsigned(zero_extend(0x381a2c0, 64)) == 58827456);
assert(unsigned(zero_extend(0x381a2c8, 64)) == 58827464);
assert(unsigned(zero_extend(0x381a3c8, 64)) == 58827720);
assert(unsigned(zero_extend(0x381a3d0, 64)) == 58827728);
assert(unsigned(zero_extend(0x381a4f0, 64)) == 58828016);
assert(unsigned(zero_extend(0x381a780, 64)) == 58828672);
assert(unsigned(zero_extend(0x381a784, 64)) == 58828676);
assert(unsigned(zero_extend(0x381a788, 64)) == 58828680);
assert(unsigned(zero_extend(0x381a790, 64)) == 58828688);
assert(unsigned(zero_extend(0x381a798, 64)) == 58828696);
assert(unsigned(zero_extend(0x381a7a0, 64)) == 58828704);
assert(unsigned(zero_extend(0x381a7a4, 64)) == 58828708);
assert(unsigned(zero_extend(0x381a7ac, 64)) == 58828716);
assert(unsigned(zero_extend(0x381a7b0, 64)) == 58828720);
assert(unsigned(zero_extend(0x381a7b8, 64)) == 58828728);
assert(unsigned(zero_extend(0x381a7c0, 64)) == 58828736);
assert(unsigned(zero_extend(0x381a7c8, 64)) == 58828744);
assert(unsigned(zero_extend(0x381a7d8, 64)) == 58828760);
assert(unsigned(zero_extend(0x381a7e0, 64)) == 58828768);
assert(unsigned(zero_extend(0x381a8e0, 64)) == 58829024);
assert(unsigned(zero_extend(0x381a8e8, 64)) == 58829032);
assert(unsigned(zero_extend(0x381aa08, 64)) == 58829320);
assert(unsigned(zero_extend(0x381acb0, 64)) == 58830000);
assert(unsigned(zero_extend(0x381acb8, 64)) == 58830008);
assert(unsigned(zero_extend(0x381adb8, 64)) == 58830264);
assert(unsigned(zero_extend(0x381adc0, 64)) == 58830272);
assert(unsigned(zero_extend(0x381aee0, 64)) == 58830560);
assert(unsigned(zero_extend(0x381aee4, 64)) == 58830564);
assert(unsigned(zero_extend(0x381aee8, 64)) == 58830568);
assert(unsigned(zero_extend(0x381af00, 64)) == 58830592);
assert(unsigned(zero_extend(0x381b150, 64)) == 58831184);
assert(unsigned(zero_extend(0x381b158, 64)) == 58831192);
assert(unsigned(zero_extend(0x381b160, 64)) == 58831200);
assert(unsigned(zero_extend(0x381b168, 64)) == 58831208);
assert(unsigned(zero_extend(0x381b170, 64)) == 58831216);
assert(unsigned(zero_extend(0x381b178, 64)) == 58831224);
assert(unsigned(zero_extend(0x381b180, 64)) == 58831232);
assert(unsigned(zero_extend(0x381b188, 64)) == 58831240);
assert(unsigned(zero_extend(0x381b190, 64)) == 58831248);
assert(unsigned(zero_extend(0x381b1a0, 64)) == 58831264);
assert(unsigned(zero_extend(0x381b1a8, 64)) == 58831272);
assert(unsigned(zero_extend(0x381b1b0, 64)) == 58831280);
assert(unsigned(zero_extend(0x381b1b8, 64)) == 58831288);
assert(unsigned(zero_extend(0x381b1c0, 64)) == 58831296);
assert(unsigned(zero_extend(0x381b1c8, 64)) == 58831304);
assert(unsigned(zero_extend(0x381b1d0, 64)) == 58831312);
assert(unsigned(zero_extend(0x381b1d8, 64)) == 58831320);
assert(unsigned(zero_extend(0x381b1e0, 64)) == 58831328);
assert(unsigned(zero_extend(0x381b1e8, 64)) == 58831336);
assert(unsigned(zero_extend(0x381b1f0, 64)) == 58831344);
assert(unsigned(zero_extend(0x381b1f8, 64)) == 58831352);
assert(unsigned(zero_extend(0x381b200, 64)) == 58831360);
assert(unsigned(zero_extend(0x381b240, 64)) == 58831424);
assert(unsigned(zero_extend(0x381b248, 64)) == 58831432);
assert(unsigned(zero_extend(0x381b250, 64)) == 58831440);
assert(unsigned(zero_extend(0x381b254, 64)) == 58831444);
assert(unsigned(zero_extend(0x381b258, 64)) == 58831448);
assert(unsigned(zero_extend(0x381b25c, 64)) == 58831452);
assert(unsigned(zero_extend(0x381b260, 64)) == 58831456);
assert(unsigned(zero_extend(0x381b264, 64)) == 58831460);
assert(unsigned(zero_extend(0x381b268, 64)) == 58831464);
assert(unsigned(zero_extend(0x381b26c, 64)) == 58831468);
assert(unsigned(zero_extend(0x381b270, 64)) == 58831472);
assert(unsigned(zero_extend(0x381b274, 64)) == 58831476);
assert(unsigned(zero_extend(0x381b278, 64)) == 58831480);
assert(unsigned(zero_extend(0x381b27c, 64)) == 58831484);
assert(unsigned(zero_extend(0x381b280, 64)) == 58831488);
assert(unsigned(zero_extend(0x381b284, 64)) == 58831492);
assert(unsigned(zero_extend(0x381b288, 64)) == 58831496);
assert(unsigned(zero_extend(0x381b28c, 64)) == 58831500);
assert(unsigned(zero_extend(0x381b290, 64)) == 58831504);
assert(unsigned(zero_extend(0x381b298, 64)) == 58831512);
assert(unsigned(zero_extend(0x381b2a0, 64)) == 58831520);
assert(unsigned(zero_extend(0x381b2a8, 64)) == 58831528);
assert(unsigned(zero_extend(0x381b2b0, 64)) == 58831536);
assert(unsigned(zero_extend(0x381b2b8, 64)) == 58831544);
assert(unsigned(zero_extend(0x381b2c0, 64)) == 58831552);
assert(unsigned(zero_extend(0x381b2c8, 64)) == 58831560);
assert(unsigned(zero_extend(0x381b2d0, 64)) == 58831568);
assert(unsigned(zero_extend(0x381b2d8, 64)) == 58831576);
assert(unsigned(zero_extend(0x381b2e0, 64)) == 58831584);
assert(unsigned(zero_extend(0x381b2e8, 64)) == 58831592);
assert(unsigned(zero_extend(0x381b2f0, 64)) == 58831600);
assert(unsigned(zero_extend(0x381b2f8, 64)) == 58831608);
assert(unsigned(zero_extend(0x381b300, 64)) == 58831616);
assert(unsigned(zero_extend(0x39, 64)) == 57);
assert(unsigned(zero_extend(0x3a, 64)) == 58);
assert(unsigned(zero_extend(0x3b, 64)) == 59);
assert(unsigned(zero_extend(0x3c, 64)) == 60);
assert(unsigned(zero_extend(0x3d, 64)) == 61);
assert(unsigned(zero_extend(0x3e, 64)) == 62);
assert(unsigned(zero_extend(0x3f, 64)) == 63);
assert(unsigned(zero_extend(0x3ff83ff83ff83ff8, 64)) == 4609504554071375864);
assert(unsigned(zero_extend(0x3fff, 64)) == 16383);
assert(unsigned(zero_extend(0x3ffffffff, 64)) == 17179869183);
assert(unsigned(zero_extend(0x4, 64)) == 4);
assert(unsigned(zero_extend(0x40, 64)) == 64);
assert(unsigned(zero_extend(0x400, 64)) == 1024);
assert(unsigned(zero_extend(0x4000, 64)) == 16384);
assert(unsigned(zero_extend(0x400000000, 64)) == 17179869184);
assert(unsigned(zero_extend(0x41, 64)) == 65);
assert(unsigned(zero_extend(0x42, 64)) == 66);
assert(unsigned(zero_extend(0x43, 64)) == 67);
assert(unsigned(zero_extend(0x44, 64)) == 68);
assert(unsigned(zero_extend(0x45, 64)) == 69);
assert(unsigned(zero_extend(0x46, 64)) == 70);
assert(unsigned(zero_extend(0x47, 64)) == 71);
assert(unsigned(zero_extend(0x48, 64)) == 72);
assert(unsigned(zero_extend(0x49, 64)) == 73);
assert(unsigned(zero_extend(0x4a, 64)) == 74);
assert(unsigned(zero_extend(0x4b, 64)) == 75);
assert(unsigned(zero_extend(0x4c, 64)) == 76);
assert(unsigned(zero_extend(0x4c000, 64)) == 311296);
assert(unsigned(zero_extend(0x4c800, 64)) == 313344);
assert(unsigned(zero_extend(0x4d, 64)) == 77);
assert(unsigned(zero_extend(0x4e, 64)) == 78);
assert(unsigned(zero_extend(0x4f, 64)) == 79);
assert(unsigned(zero_extend(0x5, 64)) == 5);
assert(unsigned(zero_extend(0x50, 64)) == 80);
assert(unsigned(zero_extend(0x51, 64)) == 81);
assert(unsigned(zero_extend(0x52, 64)) == 82);
assert(unsigned(zero_extend(0x53, 64)) == 83);
assert(unsigned(zero_extend(0x530, 64)) == 1328);
assert(unsigned(zero_extend(0x54, 64)) == 84);
assert(unsigned(zero_extend(0x54000, 64)) == 344064);
assert(unsigned(zero_extend(0x55, 64)) == 85);
assert(unsigned(zero_extend(0x56, 64)) == 86);
assert(unsigned(zero_extend(0x57, 64)) == 87);
assert(unsigned(zero_extend(0x58, 64)) == 88);
assert(unsigned(zero_extend(0x58000, 64)) == 360448);
assert(unsigned(zero_extend(0x59, 64)) == 89);
assert(unsigned(zero_extend(0x5a, 64)) == 90);
assert(unsigned(zero_extend(0x5a5a, 64)) == 23130);
assert(unsigned(zero_extend(0x5a5a5a59, 64)) == 1515870809);
assert(unsigned(zero_extend(0x5a5a5a5a, 64)) == 1515870810);
assert(unsigned(zero_extend(0x5a5a5a5a5a5a5a59, 64)) == 6510615555426900569);
assert(unsigned(zero_extend(0x5a5a5a5a5a5a5a5a, 64)) == 6510615555426900570);
assert(unsigned(zero_extend(0x5b, 64)) == 91);
assert(unsigned(zero_extend(0x5c, 64)) == 92);
assert(unsigned(zero_extend(0x5c000, 64)) == 376832);
assert(unsigned(zero_extend(0x5c040, 64)) == 376896);
assert(unsigned(zero_extend(0x5d, 64)) == 93);
assert(unsigned(zero_extend(0x5e, 64)) == 94);
assert(unsigned(zero_extend(0x5f, 64)) == 95);
assert(unsigned(zero_extend(0x6, 64)) == 6);
assert(unsigned(zero_extend(0x60, 64)) == 96);
assert(unsigned(zero_extend(0x61, 64)) == 97);
assert(unsigned(zero_extend(0x610, 64)) == 1552);
assert(unsigned(zero_extend(0x62, 64)) == 98);
assert(unsigned(zero_extend(0x620e000, 64)) == 102817792);
assert(unsigned(zero_extend(0x620e010, 64)) == 102817808);
assert(unsigned(zero_extend(0x6216000, 64)) == 102850560);
assert(unsigned(zero_extend(0x6216001, 64)) == 102850561);
assert(unsigned(zero_extend(0x6216002, 64)) == 102850562);
assert(unsigned(zero_extend(0x6216003, 64)) == 102850563);
assert(unsigned(zero_extend(0x6216004, 64)) == 102850564);
assert(unsigned(zero_extend(0x6216005, 64)) == 102850565);
assert(unsigned(zero_extend(0x6216006, 64)) == 102850566);
assert(unsigned(zero_extend(0x6216007, 64)) == 102850567);
assert(unsigned(zero_extend(0x6216008, 64)) == 102850568);
assert(unsigned(zero_extend(0x6216009, 64)) == 102850569);
assert(unsigned(zero_extend(0x621600a, 64)) == 102850570);
assert(unsigned(zero_extend(0x621600b, 64)) == 102850571);
assert(unsigned(zero_extend(0x621600c, 64)) == 102850572);
assert(unsigned(zero_extend(0x621600d, 64)) == 102850573);
assert(unsigned(zero_extend(0x621600e, 64)) == 102850574);
assert(unsigned(zero_extend(0x621600f, 64)) == 102850575);
assert(unsigned(zero_extend(0x6216030, 64)) == 102850608);
assert(unsigned(zero_extend(0x6216031, 64)) == 102850609);
assert(unsigned(zero_extend(0x6216032, 64)) == 102850610);
assert(unsigned(zero_extend(0x6216033, 64)) == 102850611);
assert(unsigned(zero_extend(0x6216034, 64)) == 102850612);
assert(unsigned(zero_extend(0x6216035, 64)) == 102850613);
assert(unsigned(zero_extend(0x6216036, 64)) == 102850614);
assert(unsigned(zero_extend(0x6216037, 64)) == 102850615);
assert(unsigned(zero_extend(0x6216038, 64)) == 102850616);
assert(unsigned(zero_extend(0x6216039, 64)) == 102850617);
assert(unsigned(zero_extend(0x621603a, 64)) == 102850618);
assert(unsigned(zero_extend(0x621603b, 64)) == 102850619);
assert(unsigned(zero_extend(0x621603c, 64)) == 102850620);
assert(unsigned(zero_extend(0x621603d, 64)) == 102850621);
assert(unsigned(zero_extend(0x621603e, 64)) == 102850622);
assert(unsigned(zero_extend(0x621603f, 64)) == 102850623);
assert(unsigned(zero_extend(0x6216040, 64)) == 102850624);
assert(unsigned(zero_extend(0x6216041, 64)) == 102850625);
assert(unsigned(zero_extend(0x6216042, 64)) == 102850626);
assert(unsigned(zero_extend(0x6216043, 64)) == 102850627);
assert(unsigned(zero_extend(0x6216044, 64)) == 102850628);
assert(unsigned(zero_extend(0x6216045, 64)) == 102850629);
assert(unsigned(zero_extend(0x6216046, 64)) == 102850630);
assert(unsigned(zero_extend(0x6216047, 64)) == 102850631);
assert(unsigned(zero_extend(0x6216048, 64)) == 102850632);
assert(unsigned(zero_extend(0x6216049, 64)) == 102850633);
assert(unsigned(zero_extend(0x621604a, 64)) == 102850634);
assert(unsigned(zero_extend(0x621604b, 64)) == 102850635);
assert(unsigned(zero_extend(0x621604c, 64)) == 102850636);
assert(unsigned(zero_extend(0x621604d, 64)) == 102850637);
assert(unsigned(zero_extend(0x621604e, 64)) == 102850638);
assert(unsigned(zero_extend(0x621604f, 64)) == 102850639);
assert(unsigned(zero_extend(0x6216050, 64)) == 102850640);
assert(unsigned(zero_extend(0x6216054, 64)) == 102850644);
assert(unsigned(zero_extend(0x6216058, 64)) == 102850648);
assert(unsigned(zero_extend(0x621605c, 64)) == 102850652);
assert(unsigned(zero_extend(0x6216064, 64)) == 102850660);
assert(unsigned(zero_extend(0x6216065, 64)) == 102850661);
assert(unsigned(zero_extend(0x6216066, 64)) == 102850662);
assert(unsigned(zero_extend(0x6216067, 64)) == 102850663);
assert(unsigned(zero_extend(0x6216069, 64)) == 102850665);
assert(unsigned(zero_extend(0x621606a, 64)) == 102850666);
assert(unsigned(zero_extend(0x621606b, 64)) == 102850667);
assert(unsigned(zero_extend(0x621606c, 64)) == 102850668);
assert(unsigned(zero_extend(0x62160aa, 64)) == 102850730);
assert(unsigned(zero_extend(0x63, 64)) == 99);
assert(unsigned(zero_extend(0x64, 64)) == 100);
assert(unsigned(zero_extend(0x65, 64)) == 101);
assert(unsigned(zero_extend(0x66, 64)) == 102);
assert(unsigned(zero_extend(0x67, 64)) == 103);
assert(unsigned(zero_extend(0x68, 64)) == 104);
assert(unsigned(zero_extend(0x69, 64)) == 105);
assert(unsigned(zero_extend(0x6a, 64)) == 106);
assert(unsigned(zero_extend(0x6b, 64)) == 107);
assert(unsigned(zero_extend(0x6b7c8d9f, 64)) == 1803324831);
assert(unsigned(zero_extend(0x6c, 64)) == 108);
assert(unsigned(zero_extend(0x6d, 64)) == 109);
assert(unsigned(zero_extend(0x6e, 64)) == 110);
assert(unsigned(zero_extend(0x6ede4cbc6ede4cbb, 64)) == 7988907161199463611);
assert(unsigned(zero_extend(0x6f, 64)) == 111);
assert(unsigned(zero_extend(0x6ffffffffffffffe, 64)) == 8070450532247928830);
assert(unsigned(zero_extend(0x6fffffffffffffff, 64)) == 8070450532247928831);
assert(unsigned(zero_extend(0x7, 64)) == 7);
assert(unsigned(zero_extend(0x70, 64)) == 112);
assert(unsigned(zero_extend(0x71, 64)) == 113);
assert(unsigned(zero_extend(0x72, 64)) == 114);
assert(unsigned(zero_extend(0x73, 64)) == 115);
assert(unsigned(zero_extend(0x74, 64)) == 116);
assert(unsigned(zero_extend(0x75, 64)) == 117);
assert(unsigned(zero_extend(0x76, 64)) == 118);
assert(unsigned(zero_extend(0x764c321, 64)) == 124044065);
assert(unsigned(zero_extend(0x77, 64)) == 119);
assert(unsigned(zero_extend(0x7765554377655542, 64)) == 8603376411415500098);
assert(unsigned(zero_extend(0x7766554477665542, 64)) == 8603657890687243586);
assert(unsigned(zero_extend(0x78, 64)) == 120);
assert(unsigned(zero_extend(0x789abcdef0123456, 64)) == 8690466096661279830);
assert(unsigned(zero_extend(0x79, 64)) == 121);
assert(unsigned(zero_extend(0x7a, 64)) == 122);
assert(unsigned(zero_extend(0x7b, 64)) == 123);
assert(unsigned(zero_extend(0x7c, 64)) == 124);
assert(unsigned(zero_extend(0x7d, 64)) == 125);
assert(unsigned(zero_extend(0x7e, 64)) == 126);
assert(unsigned(zero_extend(0x7f, 64)) == 127);
assert(unsigned(zero_extend(0x7ff, 64)) == 2047);
assert(unsigned(zero_extend(0x7ffc, 64)) == 32764);
assert(unsigned(zero_extend(0x7ffe, 64)) == 32766);
assert(unsigned(zero_extend(0x7fff, 64)) == 32767);
assert(unsigned(zero_extend(0x7fff7fff, 64)) == 2147450879);
assert(unsigned(zero_extend(0x7fff7fff7fff7ffd, 64)) == 9223231297218904061);
assert(unsigned(zero_extend(0x7fff7fff7fff7fff, 64)) == 9223231297218904063);
assert(unsigned(zero_extend(0x7fffffc, 64)) == 134217724);
assert(unsigned(zero_extend(0x7ffffffe, 64)) == 2147483646);
assert(unsigned(zero_extend(0x7fffffff, 64)) == 2147483647);
assert(unsigned(zero_extend(0x7fffffff00000000, 64)) == 9223372032559808512);
assert(unsigned(zero_extend(0x7fffffff00000001, 64)) == 9223372032559808513);
assert(unsigned(zero_extend(0x7fffffff7ffffffe, 64)) == 9223372034707292158);
assert(unsigned(zero_extend(0x7fffffff7fffffff, 64)) == 9223372034707292159);
assert(unsigned(zero_extend(0x7fffffff80000000, 64)) == 9223372034707292160);
assert(unsigned(zero_extend(0x7fffffff80000001, 64)) == 9223372034707292161);
assert(unsigned(zero_extend(0x7fffffffffff0000, 64)) == 9223372036854710272);
assert(unsigned(zero_extend(0x7fffffffffff0001, 64)) == 9223372036854710273);
assert(unsigned(zero_extend(0x7fffffffffff7ffe, 64)) == 9223372036854743038);
assert(unsigned(zero_extend(0x7fffffffffff7fff, 64)) == 9223372036854743039);
assert(unsigned(zero_extend(0x7fffffffffff8000, 64)) == 9223372036854743040);
assert(unsigned(zero_extend(0x7fffffffffff8001, 64)) == 9223372036854743041);
assert(unsigned(zero_extend(0x7ffffffffffffffc, 64)) == 9223372036854775804);
assert(unsigned(zero_extend(0x7ffffffffffffffd, 64)) == 9223372036854775805);
assert(unsigned(zero_extend(0x7ffffffffffffffe, 64)) == 9223372036854775806);
assert(unsigned(zero_extend(0x7fffffffffffffff, 64)) == 9223372036854775807);
assert(unsigned(zero_extend(0x8, 64)) == 8);
assert(unsigned(zero_extend(0x80, 64)) == 128);
assert(unsigned(zero_extend(0x800, 64)) == 2048);
assert(unsigned(zero_extend(0x8000, 64)) == 32768);
assert(unsigned(zero_extend(0x80000000, 64)) == 2147483648);
assert(unsigned(zero_extend(0x8000000000000000, 64)) == 9223372036854775808);
assert(unsigned(zero_extend(0x8000000000000001, 64)) == 9223372036854775809);
assert(unsigned(zero_extend(0x8000000000000002, 64)) == 9223372036854775810);
assert(unsigned(zero_extend(0x8000000000000003, 64)) == 9223372036854775811);
assert(unsigned(zero_extend(0x8000000000007ffe, 64)) == 9223372036854808574);
assert(unsigned(zero_extend(0x8000000000007fff, 64)) == 9223372036854808575);
assert(unsigned(zero_extend(0x8000000000008000, 64)) == 9223372036854808576);
assert(unsigned(zero_extend(0x8000000000008001, 64)) == 9223372036854808577);
assert(unsigned(zero_extend(0x800000000000fffe, 64)) == 9223372036854841342);
assert(unsigned(zero_extend(0x800000000000ffff, 64)) == 9223372036854841343);
assert(unsigned(zero_extend(0x800000007ffffffe, 64)) == 9223372039002259454);
assert(unsigned(zero_extend(0x800000007fffffff, 64)) == 9223372039002259455);
assert(unsigned(zero_extend(0x8000000080000000, 64)) == 9223372039002259456);
assert(unsigned(zero_extend(0x8000000080000001, 64)) == 9223372039002259457);
assert(unsigned(zero_extend(0x80000000fffffffe, 64)) == 9223372041149743102);
assert(unsigned(zero_extend(0x80000000ffffffff, 64)) == 9223372041149743103);
assert(unsigned(zero_extend(0x80000001, 64)) == 2147483649);
assert(unsigned(zero_extend(0x80000002, 64)) == 2147483650);
assert(unsigned(zero_extend(0x80000003, 64)) == 2147483651);
assert(unsigned(zero_extend(0x80008000, 64)) == 2147516416);
assert(unsigned(zero_extend(0x8000800080008000, 64)) == 9223512776490647552);
assert(unsigned(zero_extend(0x8000800080008002, 64)) == 9223512776490647554);
assert(unsigned(zero_extend(0x8001, 64)) == 32769);
assert(unsigned(zero_extend(0x80010003, 64)) == 2147549187);
assert(unsigned(zero_extend(0x8002, 64)) == 32770);
assert(unsigned(zero_extend(0x8003, 64)) == 32771);
assert(unsigned(zero_extend(0x8004, 64)) == 32772);
assert(unsigned(zero_extend(0x8008, 64)) == 32776);
assert(unsigned(zero_extend(0x800c, 64)) == 32780);
assert(unsigned(zero_extend(0x8030, 64)) == 32816);
assert(unsigned(zero_extend(0x8034, 64)) == 32820);
assert(unsigned(zero_extend(0x8038, 64)) == 32824);
assert(unsigned(zero_extend(0x803c, 64)) == 32828);
assert(unsigned(zero_extend(0x8040, 64)) == 32832);
assert(unsigned(zero_extend(0x8054, 64)) == 32852);
assert(unsigned(zero_extend(0x8058, 64)) == 32856);
assert(unsigned(zero_extend(0x8064, 64)) == 32868);
assert(unsigned(zero_extend(0x8069, 64)) == 32873);
assert(unsigned(zero_extend(0x80aa, 64)) == 32938);
assert(unsigned(zero_extend(0x81, 64)) == 129);
assert(unsigned(zero_extend(0x82, 64)) == 130);
assert(unsigned(zero_extend(0x83, 64)) == 131);
assert(unsigned(zero_extend(0x84, 64)) == 132);
assert(unsigned(zero_extend(0x84000, 64)) == 540672);
assert(unsigned(zero_extend(0x84800, 64)) == 542720);
assert(unsigned(zero_extend(0x85, 64)) == 133);
assert(unsigned(zero_extend(0x86, 64)) == 134);
assert(unsigned(zero_extend(0x87, 64)) == 135);
assert(unsigned(zero_extend(0x87654321, 64)) == 2271560481);
assert(unsigned(zero_extend(0x876543210fedcba9, 64)) == 9756277977048271785);
assert(unsigned(zero_extend(0x88, 64)) == 136);
assert(unsigned(zero_extend(0x8899aabb, 64)) == 2291772091);
assert(unsigned(zero_extend(0x8899aabb8899aabb, 64)) == 9843086183022308027);
assert(unsigned(zero_extend(0x8899aabb8899aabd, 64)) == 9843086183022308029);
assert(unsigned(zero_extend(0x889aaabc889aaabd, 64)) == 9843367662294051517);
assert(unsigned(zero_extend(0x89, 64)) == 137);
assert(unsigned(zero_extend(0x89ab, 64)) == 35243);
assert(unsigned(zero_extend(0x8a, 64)) == 138);
assert(unsigned(zero_extend(0x8b, 64)) == 139);
assert(unsigned(zero_extend(0x8c, 64)) == 140);
assert(unsigned(zero_extend(0x8d, 64)) == 141);
assert(unsigned(zero_extend(0x8fffffffffffffff, 64)) == 10376293541461622783);
assert(unsigned(zero_extend(0x9, 64)) == 9);
assert(unsigned(zero_extend(0x90, 64)) == 144);
assert(unsigned(zero_extend(0x90000000, 64)) == 2415919104);
assert(unsigned(zero_extend(0x9000000000000000, 64)) == 10376293541461622784);
assert(unsigned(zero_extend(0x9000000000000001, 64)) == 10376293541461622785);
assert(unsigned(zero_extend(0x90000001, 64)) == 2415919105);
assert(unsigned(zero_extend(0x9121b3439121b344, 64)) == 10457836912510088004);
assert(unsigned(zero_extend(0x9200000, 64)) == 153092096);
assert(unsigned(zero_extend(0x9200004, 64)) == 153092100);
assert(unsigned(zero_extend(0x9200008, 64)) == 153092104);
assert(unsigned(zero_extend(0x9200010, 64)) == 153092112);
assert(unsigned(zero_extend(0x9200014, 64)) == 153092116);
assert(unsigned(zero_extend(0x9200018, 64)) == 153092120);
assert(unsigned(zero_extend(0x9200020, 64)) == 153092128);
assert(unsigned(zero_extend(0x9200024, 64)) == 153092132);
assert(unsigned(zero_extend(0x9200028, 64)) == 153092136);
assert(unsigned(zero_extend(0x9200030, 64)) == 153092144);
assert(unsigned(zero_extend(0x9200034, 64)) == 153092148);
assert(unsigned(zero_extend(0x9200038, 64)) == 153092152);
assert(unsigned(zero_extend(0x920003c, 64)) == 153092156);
assert(unsigned(zero_extend(0x9200040, 64)) == 153092160);
assert(unsigned(zero_extend(0x9200044, 64)) == 153092164);
assert(unsigned(zero_extend(0x9200048, 64)) == 153092168);
assert(unsigned(zero_extend(0x920004c, 64)) == 153092172);
assert(unsigned(zero_extend(0x9200050, 64)) == 153092176);
assert(unsigned(zero_extend(0x9200054, 64)) == 153092180);
assert(unsigned(zero_extend(0x9200058, 64)) == 153092184);
assert(unsigned(zero_extend(0x920005c, 64)) == 153092188);
assert(unsigned(zero_extend(0x9200060, 64)) == 153092192);
assert(unsigned(zero_extend(0x9200064, 64)) == 153092196);
assert(unsigned(zero_extend(0x9200068, 64)) == 153092200);
assert(unsigned(zero_extend(0x920006c, 64)) == 153092204);
assert(unsigned(zero_extend(0x9200070, 64)) == 153092208);
assert(unsigned(zero_extend(0x9200074, 64)) == 153092212);
assert(unsigned(zero_extend(0x9200078, 64)) == 153092216);
assert(unsigned(zero_extend(0x920007c, 64)) == 153092220);
assert(unsigned(zero_extend(0x9200080, 64)) == 153092224);
assert(unsigned(zero_extend(0x9200084, 64)) == 153092228);
assert(unsigned(zero_extend(0x9200088, 64)) == 153092232);
assert(unsigned(zero_extend(0x920008c, 64)) == 153092236);
assert(unsigned(zero_extend(0x9234567a, 64)) == 2452903546);
assert(unsigned(zero_extend(0x9be0, 64)) == 39904);
assert(unsigned(zero_extend(0xa, 64)) == 10);
assert(unsigned(zero_extend(0xa0, 64)) == 160);
assert(unsigned(zero_extend(0xa000, 64)) == 40960);
assert(unsigned(zero_extend(0xa0000000, 64)) == 2684354560);
assert(unsigned(zero_extend(0xa200000, 64)) == 169869312);
assert(unsigned(zero_extend(0xa200004, 64)) == 169869316);
assert(unsigned(zero_extend(0xa200008, 64)) == 169869320);
assert(unsigned(zero_extend(0xa200010, 64)) == 169869328);
assert(unsigned(zero_extend(0xa200014, 64)) == 169869332);
assert(unsigned(zero_extend(0xa200018, 64)) == 169869336);
assert(unsigned(zero_extend(0xa200020, 64)) == 169869344);
assert(unsigned(zero_extend(0xa200024, 64)) == 169869348);
assert(unsigned(zero_extend(0xa200028, 64)) == 169869352);
assert(unsigned(zero_extend(0xa200030, 64)) == 169869360);
assert(unsigned(zero_extend(0xa200034, 64)) == 169869364);
assert(unsigned(zero_extend(0xa200038, 64)) == 169869368);
assert(unsigned(zero_extend(0xa200040, 64)) == 169869376);
assert(unsigned(zero_extend(0xa200044, 64)) == 169869380);
assert(unsigned(zero_extend(0xa200048, 64)) == 169869384);
assert(unsigned(zero_extend(0xa200050, 64)) == 169869392);
assert(unsigned(zero_extend(0xa200054, 64)) == 169869396);
assert(unsigned(zero_extend(0xa200058, 64)) == 169869400);
assert(unsigned(zero_extend(0xa20005c, 64)) == 169869404);
assert(unsigned(zero_extend(0xa200060, 64)) == 169869408);
assert(unsigned(zero_extend(0xa200064, 64)) == 169869412);
assert(unsigned(zero_extend(0xa200068, 64)) == 169869416);
assert(unsigned(zero_extend(0xa20006c, 64)) == 169869420);
assert(unsigned(zero_extend(0xa200070, 64)) == 169869424);
assert(unsigned(zero_extend(0xa200074, 64)) == 169869428);
assert(unsigned(zero_extend(0xa200078, 64)) == 169869432);
assert(unsigned(zero_extend(0xa20007c, 64)) == 169869436);
assert(unsigned(zero_extend(0xa200080, 64)) == 169869440);
assert(unsigned(zero_extend(0xa200084, 64)) == 169869444);
assert(unsigned(zero_extend(0xa200088, 64)) == 169869448);
assert(unsigned(zero_extend(0xa20008c, 64)) == 169869452);
assert(unsigned(zero_extend(0xa200090, 64)) == 169869456);
assert(unsigned(zero_extend(0xa200094, 64)) == 169869460);
assert(unsigned(zero_extend(0xa200098, 64)) == 169869464);
assert(unsigned(zero_extend(0xa20009c, 64)) == 169869468);
assert(unsigned(zero_extend(0xa2000a0, 64)) == 169869472);
assert(unsigned(zero_extend(0xa2000a4, 64)) == 169869476);
assert(unsigned(zero_extend(0xa2000a8, 64)) == 169869480);
assert(unsigned(zero_extend(0xa2000ac, 64)) == 169869484);
assert(unsigned(zero_extend(0xa50006c, 64)) == 173015148);
assert(unsigned(zero_extend(0xa500070, 64)) == 173015152);
assert(unsigned(zero_extend(0xa500074, 64)) == 173015156);
assert(unsigned(zero_extend(0xa5a5, 64)) == 42405);
assert(unsigned(zero_extend(0xa5a5a5a5, 64)) == 2779096485);
assert(unsigned(zero_extend(0xa5a5a5a5a5a5a5a5, 64)) == 11936128518282651045);
assert(unsigned(zero_extend(0xa8, 64)) == 168);
assert(unsigned(zero_extend(0xb, 64)) == 11);
assert(unsigned(zero_extend(0xb0, 64)) == 176);
assert(unsigned(zero_extend(0xb8, 64)) == 184);
assert(unsigned(zero_extend(0xc, 64)) == 12);
assert(unsigned(zero_extend(0xc0, 64)) == 192);
assert(unsigned(zero_extend(0xc00fefff, 64)) == 3222269951);
assert(unsigned(zero_extend(0xd, 64)) == 13);
assert(unsigned(zero_extend(0xd0, 64)) == 208);
assert(unsigned(zero_extend(0xdddddddddddddddc, 64)) == 15987178197214944732);
assert(unsigned(zero_extend(0xe, 64)) == 14);
assert(unsigned(zero_extend(0xe0, 64)) == 224);
assert(unsigned(zero_extend(0xedcba9876543210e, 64)) == 17134975606245761294);
assert(unsigned(zero_extend(0xf, 64)) == 15);
assert(unsigned(zero_extend(0xf00, 64)) == 3840);
assert(unsigned(zero_extend(0xf000000000000000, 64)) == 17293822569102704640);
assert(unsigned(zero_extend(0xff, 64)) == 255);
assert(unsigned(zero_extend(0xfffe, 64)) == 65534);
assert(unsigned(zero_extend(0xffff, 64)) == 65535);
assert(unsigned(zero_extend(0xffff8000, 64)) == 4294934528);
assert(unsigned(zero_extend(0xffffc, 64)) == 1048572);
assert(unsigned(zero_extend(0xffffe000ffffe000, 64)) == 18446708893632421888);
assert(unsigned(zero_extend(0xfffffff, 64)) == 268435455);
assert(unsigned(zero_extend(0xfffffffe, 64)) == 4294967294);
assert(unsigned(zero_extend(0xfffffffe77665544, 64)) == 18446744067122812228);
assert(unsigned(zero_extend(0xfffffffe7fffffff, 64)) == 18446744067267100671);
assert(unsigned(zero_extend(0xfffffffe80000000, 64)) == 18446744067267100672);
assert(unsigned(zero_extend(0xfffffffef89b3cde, 64)) == 18446744069290540254);
assert(unsigned(zero_extend(0xfffffffefffffffe, 64)) == 18446744069414584318);
assert(unsigned(zero_extend(0xfffffffeffffffff, 64)) == 18446744069414584319);
assert(unsigned(zero_extend(0xffffffff, 64)) == 4294967295);
assert(unsigned(zero_extend(0xffffffff00000000, 64)) == 18446744069414584320);
assert(unsigned(zero_extend(0xffffffff00000001, 64)) == 18446744069414584321);
assert(unsigned(zero_extend(0xffffffff00007fff, 64)) == 18446744069414617087);
assert(unsigned(zero_extend(0xffffffff3ff01000, 64)) == 18446744070487281664);
assert(unsigned(zero_extend(0xffffffff5fffffff, 64)) == 18446744071025197055);
assert(unsigned(zero_extend(0xffffffff6dcba985, 64)) == 18446744071256648069);
assert(unsigned(zero_extend(0xffffffff6ffffffe, 64)) == 18446744071293632510);
assert(unsigned(zero_extend(0xffffffff6fffffff, 64)) == 18446744071293632511);
assert(unsigned(zero_extend(0xffffffff77665544, 64)) == 18446744071417779524);
assert(unsigned(zero_extend(0xffffffff7ffefffc, 64)) == 18446744071562002428);
assert(unsigned(zero_extend(0xffffffff7ffffffc, 64)) == 18446744071562067964);
assert(unsigned(zero_extend(0xffffffff7ffffffd, 64)) == 18446744071562067965);
assert(unsigned(zero_extend(0xffffffff7ffffffe, 64)) == 18446744071562067966);
assert(unsigned(zero_extend(0xffffffff7fffffff, 64)) == 18446744071562067967);
assert(unsigned(zero_extend(0xffffffff80000000, 64)) == 18446744071562067968);
assert(unsigned(zero_extend(0xffffffff80000001, 64)) == 18446744071562067969);
assert(unsigned(zero_extend(0xffffffff94837260, 64)) == 18446744071906226784);
assert(unsigned(zero_extend(0xffffffffdfffffff, 64)) == 18446744073172680703);
assert(unsigned(zero_extend(0xffffffffed9fff7f, 64)) == 18446744073401270143);
assert(unsigned(zero_extend(0xffffffffedafff8f, 64)) == 18446744073402318735);
assert(unsigned(zero_extend(0xfffffffff0000000, 64)) == 18446744073441116160);
assert(unsigned(zero_extend(0xfffffffff7ffffff, 64)) == 18446744073575333887);
assert(unsigned(zero_extend(0xfffffffff89b3cde, 64)) == 18446744073585507550);
assert(unsigned(zero_extend(0xfffffffffcefffff, 64)) == 18446744073658171391);
assert(unsigned(zero_extend(0xfffffffffcf0ffff, 64)) == 18446744073658236927);
assert(unsigned(zero_extend(0xfffffffffcf1ffff, 64)) == 18446744073658302463);
assert(unsigned(zero_extend(0xfffffffffcf84000, 64)) == 18446744073658712064);
assert(unsigned(zero_extend(0xfffffffffcf94000, 64)) == 18446744073658777600);
assert(unsigned(zero_extend(0xfffffffffcfa4000, 64)) == 18446744073658843136);
assert(unsigned(zero_extend(0xfffffffffd0affff, 64)) == 18446744073659940863);
assert(unsigned(zero_extend(0xfffffffffd0bffff, 64)) == 18446744073660006399);
assert(unsigned(zero_extend(0xfffffffffd0fc000, 64)) == 18446744073660252160);
assert(unsigned(zero_extend(0xfffffffffd10c000, 64)) == 18446744073660317696);
assert(unsigned(zero_extend(0xfffffffffd10ffff, 64)) == 18446744073660334079);
assert(unsigned(zero_extend(0xfffffffffd11ffff, 64)) == 18446744073660399615);
assert(unsigned(zero_extend(0xfffffffffd130000, 64)) == 18446744073660465152);
assert(unsigned(zero_extend(0xfffffffffd13ffff, 64)) == 18446744073660530687);
assert(unsigned(zero_extend(0xfffffffffd140000, 64)) == 18446744073660530688);
assert(unsigned(zero_extend(0xfffffffffd14ffff, 64)) == 18446744073660596223);
assert(unsigned(zero_extend(0xfffffffffd170000, 64)) == 18446744073660727296);
assert(unsigned(zero_extend(0xfffffffffd18c000, 64)) == 18446744073660841984);
assert(unsigned(zero_extend(0xfffffffffebffe6b, 64)) == 18446744073688579691);
assert(unsigned(zero_extend(0xfffffffffebffefb, 64)) == 18446744073688579835);
assert(unsigned(zero_extend(0xfffffffffebfff3b, 64)) == 18446744073688579899);
assert(unsigned(zero_extend(0xffffffffffefffff, 64)) == 18446744073708503039);
assert(unsigned(zero_extend(0xfffffffffff, 64)) == 17592186044415);
assert(unsigned(zero_extend(0xfffffffffff70000, 64)) == 18446744073708961792);
assert(unsigned(zero_extend(0xfffffffffff80000, 64)) == 18446744073709027328);
assert(unsigned(zero_extend(0xfffffffffffc0000, 64)) == 18446744073709289472);
assert(unsigned(zero_extend(0xfffffffffffd0000, 64)) == 18446744073709355008);
assert(unsigned(zero_extend(0xfffffffffffdffff, 64)) == 18446744073709420543);
assert(unsigned(zero_extend(0xfffffffffffe0000, 64)) == 18446744073709420544);
assert(unsigned(zero_extend(0xfffffffffffe7ffe, 64)) == 18446744073709453310);
assert(unsigned(zero_extend(0xfffffffffffe7fff, 64)) == 18446744073709453311);
assert(unsigned(zero_extend(0xfffffffffffe8000, 64)) == 18446744073709453312);
assert(unsigned(zero_extend(0xfffffffffffe8001, 64)) == 18446744073709453313);
assert(unsigned(zero_extend(0xfffffffffffefffe, 64)) == 18446744073709486078);
assert(unsigned(zero_extend(0xfffffffffffeffff, 64)) == 18446744073709486079);
assert(unsigned(zero_extend(0xffffffffffff0000, 64)) == 18446744073709486080);
assert(unsigned(zero_extend(0xffffffffffff0001, 64)) == 18446744073709486081);
assert(unsigned(zero_extend(0xffffffffffff641f, 64)) == 18446744073709511711);
assert(unsigned(zero_extend(0xffffffffffff7ffc, 64)) == 18446744073709518844);
assert(unsigned(zero_extend(0xffffffffffff7ffd, 64)) == 18446744073709518845);
assert(unsigned(zero_extend(0xffffffffffff7ffe, 64)) == 18446744073709518846);
assert(unsigned(zero_extend(0xffffffffffff7fff, 64)) == 18446744073709518847);
assert(unsigned(zero_extend(0xffffffffffff8000, 64)) == 18446744073709518848);
assert(unsigned(zero_extend(0xffffffffffff8001, 64)) == 18446744073709518849);
assert(unsigned(zero_extend(0xffffffffffffbeff, 64)) == 18446744073709534975);
assert(unsigned(zero_extend(0xffffffffffffbf40, 64)) == 18446744073709535040);
assert(unsigned(zero_extend(0xffffffffffffbf41, 64)) == 18446744073709535041);
assert(unsigned(zero_extend(0xffffffffffffbfff, 64)) == 18446744073709535231);
assert(unsigned(zero_extend(0xffffffffffffc22c, 64)) == 18446744073709535788);
assert(unsigned(zero_extend(0xffffffffffffc24c, 64)) == 18446744073709535820);
assert(unsigned(zero_extend(0xffffffffffffd220, 64)) == 18446744073709539872);
assert(unsigned(zero_extend(0xffffffffffffd23c, 64)) == 18446744073709539900);
assert(unsigned(zero_extend(0xffffffffffffe220, 64)) == 18446744073709543968);
assert(unsigned(zero_extend(0xffffffffffffe23c, 64)) == 18446744073709543996);
assert(unsigned(zero_extend(0xffffffffffffefff, 64)) == 18446744073709547519);
assert(unsigned(zero_extend(0xfffffffffffffeef, 64)) == 18446744073709551343);
assert(unsigned(zero_extend(0xfffffffffffffeff, 64)) == 18446744073709551359);
assert(unsigned(zero_extend(0xffffffffffffff1f, 64)) == 18446744073709551391);
assert(unsigned(zero_extend(0xffffffffffffff2f, 64)) == 18446744073709551407);
assert(unsigned(zero_extend(0xffffffffffffff4f, 64)) == 18446744073709551439);
assert(unsigned(zero_extend(0xffffffffffffff6f, 64)) == 18446744073709551471);
assert(unsigned(zero_extend(0xffffffffffffff80, 64)) == 18446744073709551488);
assert(unsigned(zero_extend(0xffffffffffffff8f, 64)) == 18446744073709551503);
assert(unsigned(zero_extend(0xffffffffffffff9f, 64)) == 18446744073709551519);
assert(unsigned(zero_extend(0xffffffffffffffa0, 64)) == 18446744073709551520);
assert(unsigned(zero_extend(0xffffffffffffffaf, 64)) == 18446744073709551535);
assert(unsigned(zero_extend(0xffffffffffffffbf, 64)) == 18446744073709551551);
assert(unsigned(zero_extend(0xffffffffffffffc2, 64)) == 18446744073709551554);
assert(unsigned(zero_extend(0xffffffffffffffc4, 64)) == 18446744073709551556);
assert(unsigned(zero_extend(0xffffffffffffffc6, 64)) == 18446744073709551558);
assert(unsigned(zero_extend(0xffffffffffffffc8, 64)) == 18446744073709551560);
assert(unsigned(zero_extend(0xffffffffffffffca, 64)) == 18446744073709551562);
assert(unsigned(zero_extend(0xffffffffffffffcc, 64)) == 18446744073709551564);
assert(unsigned(zero_extend(0xffffffffffffffce, 64)) == 18446744073709551566);
assert(unsigned(zero_extend(0xffffffffffffffcf, 64)) == 18446744073709551567);
assert(unsigned(zero_extend(0xffffffffffffffd0, 64)) == 18446744073709551568);
assert(unsigned(zero_extend(0xffffffffffffffd2, 64)) == 18446744073709551570);
assert(unsigned(zero_extend(0xffffffffffffffd4, 64)) == 18446744073709551572);
assert(unsigned(zero_extend(0xffffffffffffffd6, 64)) == 18446744073709551574);
assert(unsigned(zero_extend(0xffffffffffffffd8, 64)) == 18446744073709551576);
assert(unsigned(zero_extend(0xffffffffffffffda, 64)) == 18446744073709551578);
assert(unsigned(zero_extend(0xffffffffffffffdb, 64)) == 18446744073709551579);
assert(unsigned(zero_extend(0xffffffffffffffdc, 64)) == 18446744073709551580);
assert(unsigned(zero_extend(0xffffffffffffffde, 64)) == 18446744073709551582);
assert(unsigned(zero_extend(0xffffffffffffffdf, 64)) == 18446744073709551583);
assert(unsigned(zero_extend(0xffffffffffffffe0, 64)) == 18446744073709551584);
assert(unsigned(zero_extend(0xffffffffffffffe2, 64)) == 18446744073709551586);
assert(unsigned(zero_extend(0xffffffffffffffe4, 64)) == 18446744073709551588);
assert(unsigned(zero_extend(0xffffffffffffffe6, 64)) == 18446744073709551590);
assert(unsigned(zero_extend(0xffffffffffffffe7, 64)) == 18446744073709551591);
assert(unsigned(zero_extend(0xffffffffffffffe8, 64)) == 18446744073709551592);
assert(unsigned(zero_extend(0xffffffffffffffea, 64)) == 18446744073709551594);
assert(unsigned(zero_extend(0xffffffffffffffec, 64)) == 18446744073709551596);
assert(unsigned(zero_extend(0xffffffffffffffee, 64)) == 18446744073709551598);
assert(unsigned(zero_extend(0xffffffffffffffef, 64)) == 18446744073709551599);
assert(unsigned(zero_extend(0xfffffffffffffff, 64)) == 1152921504606846975);
assert(unsigned(zero_extend(0xfffffffffffffff0, 64)) == 18446744073709551600);
assert(unsigned(zero_extend(0xfffffffffffffff1, 64)) == 18446744073709551601);
assert(unsigned(zero_extend(0xfffffffffffffff2, 64)) == 18446744073709551602);
assert(unsigned(zero_extend(0xfffffffffffffff4, 64)) == 18446744073709551604);
assert(unsigned(zero_extend(0xfffffffffffffff6, 64)) == 18446744073709551606);
assert(unsigned(zero_extend(0xfffffffffffffff7, 64)) == 18446744073709551607);
assert(unsigned(zero_extend(0xfffffffffffffff8, 64)) == 18446744073709551608);
assert(unsigned(zero_extend(0xfffffffffffffffa, 64)) == 18446744073709551610);
assert(unsigned(zero_extend(0xfffffffffffffffb, 64)) == 18446744073709551611);
assert(unsigned(zero_extend(0xfffffffffffffffc, 64)) == 18446744073709551612);
assert(unsigned(zero_extend(0xfffffffffffffffd, 64)) == 18446744073709551613);
assert(unsigned(zero_extend(0xfffffffffffffffe, 64)) == 18446744073709551614);
assert(unsigned(zero_extend(0xffffffffffffffff, 64)) == 18446744073709551615);
assert(unsigned(zero_extend(0x0, 8)) == 0);
assert(unsigned(zero_extend(0x20, 8)) == 32);
assert(unsigned(zero_extend(0x28, 8)) == 40);
assert(unsigned(zero_extend(0x29, 8)) == 41);
assert(unsigned(zero_extend(0x2a, 8)) == 42);
assert(unsigned(zero_extend(0x2d, 8)) == 45);
assert(unsigned(zero_extend(0x30, 8)) == 48);
assert(unsigned(zero_extend(0x31, 8)) == 49);
assert(unsigned(zero_extend(0x32, 8)) == 50);
assert(unsigned(zero_extend(0x33, 8)) == 51);
assert(unsigned(zero_extend(0x34, 8)) == 52);
assert(unsigned(zero_extend(0x35, 8)) == 53);
assert(unsigned(zero_extend(0x36, 8)) == 54);
assert(unsigned(zero_extend(0x37, 8)) == 55);
assert(unsigned(zero_extend(0x38, 8)) == 56);
assert(unsigned(zero_extend(0x39, 8)) == 57);
assert(unsigned(zero_extend(0x3a, 8)) == 58);
assert(unsigned(zero_extend(0x3e, 8)) == 62);
assert(unsigned(zero_extend(0x41, 8)) == 65);
assert(unsigned(zero_extend(0x43, 8)) == 67);
assert(unsigned(zero_extend(0x44, 8)) == 68);
assert(unsigned(zero_extend(0x45, 8)) == 69);
assert(unsigned(zero_extend(0x46, 8)) == 70);
assert(unsigned(zero_extend(0x4b, 8)) == 75);
assert(unsigned(zero_extend(0x4c, 8)) == 76);
assert(unsigned(zero_extend(0x4e, 8)) == 78);
assert(unsigned(zero_extend(0x4f, 8)) == 79);
assert(unsigned(zero_extend(0x50, 8)) == 80);
assert(unsigned(zero_extend(0x52, 8)) == 82);
assert(unsigned(zero_extend(0x53, 8)) == 83);
assert(unsigned(zero_extend(0x54, 8)) == 84);
assert(unsigned(zero_extend(0x55, 8)) == 85);
assert(unsigned(zero_extend(0x5f, 8)) == 95);
assert(unsigned(zero_extend(0x61, 8)) == 97);
assert(unsigned(zero_extend(0x62, 8)) == 98);
assert(unsigned(zero_extend(0x63, 8)) == 99);
assert(unsigned(zero_extend(0x64, 8)) == 100);
assert(unsigned(zero_extend(0x65, 8)) == 101);
assert(unsigned(zero_extend(0x66, 8)) == 102);
assert(unsigned(zero_extend(0x68, 8)) == 104);
assert(unsigned(zero_extend(0x69, 8)) == 105);
assert(unsigned(zero_extend(0x6c, 8)) == 108);
assert(unsigned(zero_extend(0x6d, 8)) == 109);
assert(unsigned(zero_extend(0x6e, 8)) == 110);
assert(unsigned(zero_extend(0x6f, 8)) == 111);
assert(unsigned(zero_extend(0x70, 8)) == 112);
assert(unsigned(zero_extend(0x72, 8)) == 114);
assert(unsigned(zero_extend(0x73, 8)) == 115);
assert(unsigned(zero_extend(0x74, 8)) == 116);
assert(unsigned(zero_extend(0x75, 8)) == 117);
assert(unsigned(zero_extend(0x76, 8)) == 118);
assert(unsigned(zero_extend(0x9, 8)) == 9);
assert(unsigned(zero_extend(0xa, 8)) == 10);
}
|