postgresql/src/port/pg_crc32c_sb8.c

1170 lines
53 KiB
C
Raw Normal View History

XLOG (and related) changes: * Store two past checkpoint locations, not just one, in pg_control. On startup, we fall back to the older checkpoint if the newer one is unreadable. Also, a physical copy of the newest checkpoint record is kept in pg_control for possible use in disaster recovery (ie, complete loss of pg_xlog). Also add a version number for pg_control itself. Remove archdir from pg_control; it ought to be a GUC parameter, not a special case (not that it's implemented yet anyway). * Suppress successive checkpoint records when nothing has been entered in the WAL log since the last one. This is not so much to avoid I/O as to make it actually useful to keep track of the last two checkpoints. If the things are right next to each other then there's not a lot of redundancy gained... * Change CRC scheme to a true 64-bit CRC, not a pair of 32-bit CRCs on alternate bytes. Polynomial borrowed from ECMA DLT1 standard. * Fix XLOG record length handling so that it will work at BLCKSZ = 32k. * Change XID allocation to work more like OID allocation. (This is of dubious necessity, but I think it's a good idea anyway.) * Fix a number of minor bugs, such as off-by-one logic for XLOG file wraparound at the 4 gig mark. * Add documentation and clean up some coding infelicities; move file format declarations out to include files where planned contrib utilities can get at them. * Checkpoint will now occur every CHECKPOINT_SEGMENTS log segments or every CHECKPOINT_TIMEOUT seconds, whichever comes first. It is also possible to force a checkpoint by sending SIGUSR1 to the postmaster (undocumented feature...) * Defend against kill -9 postmaster by storing shmem block's key and ID in postmaster.pid lockfile, and checking at startup to ensure that no processes are still connected to old shmem block (if it still exists). * Switch backends to accept SIGQUIT rather than SIGUSR1 for emergency stop, for symmetry with postmaster and xlog utilities. Clean up signal handling in bootstrap.c so that xlog utilities launched by postmaster will react to signals better. * Standalone bootstrap now grabs lockfile in target directory, as added insurance against running it in parallel with live postmaster.
2001-03-13 02:17:06 +01:00
/*-------------------------------------------------------------------------
*
* pg_crc32c_sb8.c
* Compute CRC-32C checksum using slicing-by-8 algorithm.
*
* Michael E. Kounavis, Frank L. Berry,
* "Novel Table Lookup-Based Algorithms for High-Performance CRC
* Generation", IEEE Transactions on Computers, vol.57, no. 11,
* pp. 1550-1560, November 2008, doi:10.1109/TC.2008.85
*
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
XLOG (and related) changes: * Store two past checkpoint locations, not just one, in pg_control. On startup, we fall back to the older checkpoint if the newer one is unreadable. Also, a physical copy of the newest checkpoint record is kept in pg_control for possible use in disaster recovery (ie, complete loss of pg_xlog). Also add a version number for pg_control itself. Remove archdir from pg_control; it ought to be a GUC parameter, not a special case (not that it's implemented yet anyway). * Suppress successive checkpoint records when nothing has been entered in the WAL log since the last one. This is not so much to avoid I/O as to make it actually useful to keep track of the last two checkpoints. If the things are right next to each other then there's not a lot of redundancy gained... * Change CRC scheme to a true 64-bit CRC, not a pair of 32-bit CRCs on alternate bytes. Polynomial borrowed from ECMA DLT1 standard. * Fix XLOG record length handling so that it will work at BLCKSZ = 32k. * Change XID allocation to work more like OID allocation. (This is of dubious necessity, but I think it's a good idea anyway.) * Fix a number of minor bugs, such as off-by-one logic for XLOG file wraparound at the 4 gig mark. * Add documentation and clean up some coding infelicities; move file format declarations out to include files where planned contrib utilities can get at them. * Checkpoint will now occur every CHECKPOINT_SEGMENTS log segments or every CHECKPOINT_TIMEOUT seconds, whichever comes first. It is also possible to force a checkpoint by sending SIGUSR1 to the postmaster (undocumented feature...) * Defend against kill -9 postmaster by storing shmem block's key and ID in postmaster.pid lockfile, and checking at startup to ensure that no processes are still connected to old shmem block (if it still exists). * Switch backends to accept SIGQUIT rather than SIGUSR1 for emergency stop, for symmetry with postmaster and xlog utilities. Clean up signal handling in bootstrap.c so that xlog utilities launched by postmaster will react to signals better. * Standalone bootstrap now grabs lockfile in target directory, as added insurance against running it in parallel with live postmaster.
2001-03-13 02:17:06 +01:00
* Portions Copyright (c) 1994, Regents of the University of California
*
*
* IDENTIFICATION
* src/port/pg_crc32c_sb8.c
XLOG (and related) changes: * Store two past checkpoint locations, not just one, in pg_control. On startup, we fall back to the older checkpoint if the newer one is unreadable. Also, a physical copy of the newest checkpoint record is kept in pg_control for possible use in disaster recovery (ie, complete loss of pg_xlog). Also add a version number for pg_control itself. Remove archdir from pg_control; it ought to be a GUC parameter, not a special case (not that it's implemented yet anyway). * Suppress successive checkpoint records when nothing has been entered in the WAL log since the last one. This is not so much to avoid I/O as to make it actually useful to keep track of the last two checkpoints. If the things are right next to each other then there's not a lot of redundancy gained... * Change CRC scheme to a true 64-bit CRC, not a pair of 32-bit CRCs on alternate bytes. Polynomial borrowed from ECMA DLT1 standard. * Fix XLOG record length handling so that it will work at BLCKSZ = 32k. * Change XID allocation to work more like OID allocation. (This is of dubious necessity, but I think it's a good idea anyway.) * Fix a number of minor bugs, such as off-by-one logic for XLOG file wraparound at the 4 gig mark. * Add documentation and clean up some coding infelicities; move file format declarations out to include files where planned contrib utilities can get at them. * Checkpoint will now occur every CHECKPOINT_SEGMENTS log segments or every CHECKPOINT_TIMEOUT seconds, whichever comes first. It is also possible to force a checkpoint by sending SIGUSR1 to the postmaster (undocumented feature...) * Defend against kill -9 postmaster by storing shmem block's key and ID in postmaster.pid lockfile, and checking at startup to ensure that no processes are still connected to old shmem block (if it still exists). * Switch backends to accept SIGQUIT rather than SIGUSR1 for emergency stop, for symmetry with postmaster and xlog utilities. Clean up signal handling in bootstrap.c so that xlog utilities launched by postmaster will react to signals better. * Standalone bootstrap now grabs lockfile in target directory, as added insurance against running it in parallel with live postmaster.
2001-03-13 02:17:06 +01:00
*
*-------------------------------------------------------------------------
*/
#include "c.h"
XLOG (and related) changes: * Store two past checkpoint locations, not just one, in pg_control. On startup, we fall back to the older checkpoint if the newer one is unreadable. Also, a physical copy of the newest checkpoint record is kept in pg_control for possible use in disaster recovery (ie, complete loss of pg_xlog). Also add a version number for pg_control itself. Remove archdir from pg_control; it ought to be a GUC parameter, not a special case (not that it's implemented yet anyway). * Suppress successive checkpoint records when nothing has been entered in the WAL log since the last one. This is not so much to avoid I/O as to make it actually useful to keep track of the last two checkpoints. If the things are right next to each other then there's not a lot of redundancy gained... * Change CRC scheme to a true 64-bit CRC, not a pair of 32-bit CRCs on alternate bytes. Polynomial borrowed from ECMA DLT1 standard. * Fix XLOG record length handling so that it will work at BLCKSZ = 32k. * Change XID allocation to work more like OID allocation. (This is of dubious necessity, but I think it's a good idea anyway.) * Fix a number of minor bugs, such as off-by-one logic for XLOG file wraparound at the 4 gig mark. * Add documentation and clean up some coding infelicities; move file format declarations out to include files where planned contrib utilities can get at them. * Checkpoint will now occur every CHECKPOINT_SEGMENTS log segments or every CHECKPOINT_TIMEOUT seconds, whichever comes first. It is also possible to force a checkpoint by sending SIGUSR1 to the postmaster (undocumented feature...) * Defend against kill -9 postmaster by storing shmem block's key and ID in postmaster.pid lockfile, and checking at startup to ensure that no processes are still connected to old shmem block (if it still exists). * Switch backends to accept SIGQUIT rather than SIGUSR1 for emergency stop, for symmetry with postmaster and xlog utilities. Clean up signal handling in bootstrap.c so that xlog utilities launched by postmaster will react to signals better. * Standalone bootstrap now grabs lockfile in target directory, as added insurance against running it in parallel with live postmaster.
2001-03-13 02:17:06 +01:00
#include "port/pg_crc32c.h"
static const uint32 pg_crc32c_table[8][256];
/* Accumulate one input byte */
#ifdef WORDS_BIGENDIAN
#define CRC8(x) pg_crc32c_table[0][((crc >> 24) ^ (x)) & 0xFF] ^ (crc << 8)
#else
#define CRC8(x) pg_crc32c_table[0][(crc ^ (x)) & 0xFF] ^ (crc >> 8)
#endif
pg_crc32c
pg_comp_crc32c_sb8(pg_crc32c crc, const void *data, size_t len)
{
const unsigned char *p = data;
const uint32 *p4;
/*
* Handle 0-3 initial bytes one at a time, so that the loop below starts
* with a pointer aligned to four bytes.
*/
while (len > 0 && ((uintptr_t) p & 3))
{
crc = CRC8(*p++);
len--;
}
/*
* Process eight bytes of data at a time.
*/
p4 = (const uint32 *) p;
while (len >= 8)
{
uint32 a = *p4++ ^ crc;
uint32 b = *p4++;
#ifdef WORDS_BIGENDIAN
const uint8 c0 = b;
const uint8 c1 = b >> 8;
const uint8 c2 = b >> 16;
const uint8 c3 = b >> 24;
const uint8 c4 = a;
const uint8 c5 = a >> 8;
const uint8 c6 = a >> 16;
const uint8 c7 = a >> 24;
#else
const uint8 c0 = b >> 24;
const uint8 c1 = b >> 16;
const uint8 c2 = b >> 8;
const uint8 c3 = b;
const uint8 c4 = a >> 24;
const uint8 c5 = a >> 16;
const uint8 c6 = a >> 8;
const uint8 c7 = a;
#endif
crc =
pg_crc32c_table[0][c0] ^ pg_crc32c_table[1][c1] ^
pg_crc32c_table[2][c2] ^ pg_crc32c_table[3][c3] ^
pg_crc32c_table[4][c4] ^ pg_crc32c_table[5][c5] ^
pg_crc32c_table[6][c6] ^ pg_crc32c_table[7][c7];
len -= 8;
}
/*
* Handle any remaining bytes one at a time.
*/
p = (const unsigned char *) p4;
while (len > 0)
{
crc = CRC8(*p++);
len--;
}
return crc;
}
/*
* Lookup tables for the slicing-by-8 algorithm, for the so-called Castagnoli
* polynomial (the same that is used e.g. in iSCSI), 0x1EDC6F41. Using
* Williams' terms, this is the "normal", not "reflected" version. However, on
* big-endian systems the values in the tables are stored in byte-reversed
* order (IOW, the tables are stored in little-endian order even on big-endian
* systems).
*/
static const uint32 pg_crc32c_table[8][256] = {
#ifndef WORDS_BIGENDIAN
{
0x00000000, 0xF26B8303, 0xE13B70F7, 0x1350F3F4,
0xC79A971F, 0x35F1141C, 0x26A1E7E8, 0xD4CA64EB,
0x8AD958CF, 0x78B2DBCC, 0x6BE22838, 0x9989AB3B,
0x4D43CFD0, 0xBF284CD3, 0xAC78BF27, 0x5E133C24,
0x105EC76F, 0xE235446C, 0xF165B798, 0x030E349B,
0xD7C45070, 0x25AFD373, 0x36FF2087, 0xC494A384,
0x9A879FA0, 0x68EC1CA3, 0x7BBCEF57, 0x89D76C54,
0x5D1D08BF, 0xAF768BBC, 0xBC267848, 0x4E4DFB4B,
0x20BD8EDE, 0xD2D60DDD, 0xC186FE29, 0x33ED7D2A,
0xE72719C1, 0x154C9AC2, 0x061C6936, 0xF477EA35,
0xAA64D611, 0x580F5512, 0x4B5FA6E6, 0xB93425E5,
0x6DFE410E, 0x9F95C20D, 0x8CC531F9, 0x7EAEB2FA,
0x30E349B1, 0xC288CAB2, 0xD1D83946, 0x23B3BA45,
0xF779DEAE, 0x05125DAD, 0x1642AE59, 0xE4292D5A,
0xBA3A117E, 0x4851927D, 0x5B016189, 0xA96AE28A,
0x7DA08661, 0x8FCB0562, 0x9C9BF696, 0x6EF07595,
0x417B1DBC, 0xB3109EBF, 0xA0406D4B, 0x522BEE48,
0x86E18AA3, 0x748A09A0, 0x67DAFA54, 0x95B17957,
0xCBA24573, 0x39C9C670, 0x2A993584, 0xD8F2B687,
0x0C38D26C, 0xFE53516F, 0xED03A29B, 0x1F682198,
0x5125DAD3, 0xA34E59D0, 0xB01EAA24, 0x42752927,
0x96BF4DCC, 0x64D4CECF, 0x77843D3B, 0x85EFBE38,
0xDBFC821C, 0x2997011F, 0x3AC7F2EB, 0xC8AC71E8,
0x1C661503, 0xEE0D9600, 0xFD5D65F4, 0x0F36E6F7,
0x61C69362, 0x93AD1061, 0x80FDE395, 0x72966096,
0xA65C047D, 0x5437877E, 0x4767748A, 0xB50CF789,
0xEB1FCBAD, 0x197448AE, 0x0A24BB5A, 0xF84F3859,
0x2C855CB2, 0xDEEEDFB1, 0xCDBE2C45, 0x3FD5AF46,
0x7198540D, 0x83F3D70E, 0x90A324FA, 0x62C8A7F9,
0xB602C312, 0x44694011, 0x5739B3E5, 0xA55230E6,
0xFB410CC2, 0x092A8FC1, 0x1A7A7C35, 0xE811FF36,
0x3CDB9BDD, 0xCEB018DE, 0xDDE0EB2A, 0x2F8B6829,
0x82F63B78, 0x709DB87B, 0x63CD4B8F, 0x91A6C88C,
0x456CAC67, 0xB7072F64, 0xA457DC90, 0x563C5F93,
0x082F63B7, 0xFA44E0B4, 0xE9141340, 0x1B7F9043,
0xCFB5F4A8, 0x3DDE77AB, 0x2E8E845F, 0xDCE5075C,
0x92A8FC17, 0x60C37F14, 0x73938CE0, 0x81F80FE3,
0x55326B08, 0xA759E80B, 0xB4091BFF, 0x466298FC,
0x1871A4D8, 0xEA1A27DB, 0xF94AD42F, 0x0B21572C,
0xDFEB33C7, 0x2D80B0C4, 0x3ED04330, 0xCCBBC033,
0xA24BB5A6, 0x502036A5, 0x4370C551, 0xB11B4652,
0x65D122B9, 0x97BAA1BA, 0x84EA524E, 0x7681D14D,
0x2892ED69, 0xDAF96E6A, 0xC9A99D9E, 0x3BC21E9D,
0xEF087A76, 0x1D63F975, 0x0E330A81, 0xFC588982,
0xB21572C9, 0x407EF1CA, 0x532E023E, 0xA145813D,
0x758FE5D6, 0x87E466D5, 0x94B49521, 0x66DF1622,
0x38CC2A06, 0xCAA7A905, 0xD9F75AF1, 0x2B9CD9F2,
0xFF56BD19, 0x0D3D3E1A, 0x1E6DCDEE, 0xEC064EED,
0xC38D26C4, 0x31E6A5C7, 0x22B65633, 0xD0DDD530,
0x0417B1DB, 0xF67C32D8, 0xE52CC12C, 0x1747422F,
0x49547E0B, 0xBB3FFD08, 0xA86F0EFC, 0x5A048DFF,
0x8ECEE914, 0x7CA56A17, 0x6FF599E3, 0x9D9E1AE0,
0xD3D3E1AB, 0x21B862A8, 0x32E8915C, 0xC083125F,
0x144976B4, 0xE622F5B7, 0xF5720643, 0x07198540,
0x590AB964, 0xAB613A67, 0xB831C993, 0x4A5A4A90,
0x9E902E7B, 0x6CFBAD78, 0x7FAB5E8C, 0x8DC0DD8F,
0xE330A81A, 0x115B2B19, 0x020BD8ED, 0xF0605BEE,
0x24AA3F05, 0xD6C1BC06, 0xC5914FF2, 0x37FACCF1,
0x69E9F0D5, 0x9B8273D6, 0x88D28022, 0x7AB90321,
0xAE7367CA, 0x5C18E4C9, 0x4F48173D, 0xBD23943E,
0xF36E6F75, 0x0105EC76, 0x12551F82, 0xE03E9C81,
0x34F4F86A, 0xC69F7B69, 0xD5CF889D, 0x27A40B9E,
0x79B737BA, 0x8BDCB4B9, 0x988C474D, 0x6AE7C44E,
0xBE2DA0A5, 0x4C4623A6, 0x5F16D052, 0xAD7D5351
},
{
0x00000000, 0x13A29877, 0x274530EE, 0x34E7A899,
0x4E8A61DC, 0x5D28F9AB, 0x69CF5132, 0x7A6DC945,
0x9D14C3B8, 0x8EB65BCF, 0xBA51F356, 0xA9F36B21,
0xD39EA264, 0xC03C3A13, 0xF4DB928A, 0xE7790AFD,
0x3FC5F181, 0x2C6769F6, 0x1880C16F, 0x0B225918,
0x714F905D, 0x62ED082A, 0x560AA0B3, 0x45A838C4,
0xA2D13239, 0xB173AA4E, 0x859402D7, 0x96369AA0,
0xEC5B53E5, 0xFFF9CB92, 0xCB1E630B, 0xD8BCFB7C,
0x7F8BE302, 0x6C297B75, 0x58CED3EC, 0x4B6C4B9B,
0x310182DE, 0x22A31AA9, 0x1644B230, 0x05E62A47,
0xE29F20BA, 0xF13DB8CD, 0xC5DA1054, 0xD6788823,
0xAC154166, 0xBFB7D911, 0x8B507188, 0x98F2E9FF,
0x404E1283, 0x53EC8AF4, 0x670B226D, 0x74A9BA1A,
0x0EC4735F, 0x1D66EB28, 0x298143B1, 0x3A23DBC6,
0xDD5AD13B, 0xCEF8494C, 0xFA1FE1D5, 0xE9BD79A2,
0x93D0B0E7, 0x80722890, 0xB4958009, 0xA737187E,
0xFF17C604, 0xECB55E73, 0xD852F6EA, 0xCBF06E9D,
0xB19DA7D8, 0xA23F3FAF, 0x96D89736, 0x857A0F41,
0x620305BC, 0x71A19DCB, 0x45463552, 0x56E4AD25,
0x2C896460, 0x3F2BFC17, 0x0BCC548E, 0x186ECCF9,
0xC0D23785, 0xD370AFF2, 0xE797076B, 0xF4359F1C,
0x8E585659, 0x9DFACE2E, 0xA91D66B7, 0xBABFFEC0,
0x5DC6F43D, 0x4E646C4A, 0x7A83C4D3, 0x69215CA4,
0x134C95E1, 0x00EE0D96, 0x3409A50F, 0x27AB3D78,
0x809C2506, 0x933EBD71, 0xA7D915E8, 0xB47B8D9F,
0xCE1644DA, 0xDDB4DCAD, 0xE9537434, 0xFAF1EC43,
0x1D88E6BE, 0x0E2A7EC9, 0x3ACDD650, 0x296F4E27,
0x53028762, 0x40A01F15, 0x7447B78C, 0x67E52FFB,
0xBF59D487, 0xACFB4CF0, 0x981CE469, 0x8BBE7C1E,
0xF1D3B55B, 0xE2712D2C, 0xD69685B5, 0xC5341DC2,
0x224D173F, 0x31EF8F48, 0x050827D1, 0x16AABFA6,
0x6CC776E3, 0x7F65EE94, 0x4B82460D, 0x5820DE7A,
0xFBC3FAF9, 0xE861628E, 0xDC86CA17, 0xCF245260,
0xB5499B25, 0xA6EB0352, 0x920CABCB, 0x81AE33BC,
0x66D73941, 0x7575A136, 0x419209AF, 0x523091D8,
0x285D589D, 0x3BFFC0EA, 0x0F186873, 0x1CBAF004,
0xC4060B78, 0xD7A4930F, 0xE3433B96, 0xF0E1A3E1,
0x8A8C6AA4, 0x992EF2D3, 0xADC95A4A, 0xBE6BC23D,
0x5912C8C0, 0x4AB050B7, 0x7E57F82E, 0x6DF56059,
0x1798A91C, 0x043A316B, 0x30DD99F2, 0x237F0185,
0x844819FB, 0x97EA818C, 0xA30D2915, 0xB0AFB162,
0xCAC27827, 0xD960E050, 0xED8748C9, 0xFE25D0BE,
0x195CDA43, 0x0AFE4234, 0x3E19EAAD, 0x2DBB72DA,
0x57D6BB9F, 0x447423E8, 0x70938B71, 0x63311306,
0xBB8DE87A, 0xA82F700D, 0x9CC8D894, 0x8F6A40E3,
0xF50789A6, 0xE6A511D1, 0xD242B948, 0xC1E0213F,
0x26992BC2, 0x353BB3B5, 0x01DC1B2C, 0x127E835B,
0x68134A1E, 0x7BB1D269, 0x4F567AF0, 0x5CF4E287,
0x04D43CFD, 0x1776A48A, 0x23910C13, 0x30339464,
0x4A5E5D21, 0x59FCC556, 0x6D1B6DCF, 0x7EB9F5B8,
0x99C0FF45, 0x8A626732, 0xBE85CFAB, 0xAD2757DC,
0xD74A9E99, 0xC4E806EE, 0xF00FAE77, 0xE3AD3600,
0x3B11CD7C, 0x28B3550B, 0x1C54FD92, 0x0FF665E5,
0x759BACA0, 0x663934D7, 0x52DE9C4E, 0x417C0439,
0xA6050EC4, 0xB5A796B3, 0x81403E2A, 0x92E2A65D,
0xE88F6F18, 0xFB2DF76F, 0xCFCA5FF6, 0xDC68C781,
0x7B5FDFFF, 0x68FD4788, 0x5C1AEF11, 0x4FB87766,
0x35D5BE23, 0x26772654, 0x12908ECD, 0x013216BA,
0xE64B1C47, 0xF5E98430, 0xC10E2CA9, 0xD2ACB4DE,
0xA8C17D9B, 0xBB63E5EC, 0x8F844D75, 0x9C26D502,
0x449A2E7E, 0x5738B609, 0x63DF1E90, 0x707D86E7,
0x0A104FA2, 0x19B2D7D5, 0x2D557F4C, 0x3EF7E73B,
0xD98EEDC6, 0xCA2C75B1, 0xFECBDD28, 0xED69455F,
0x97048C1A, 0x84A6146D, 0xB041BCF4, 0xA3E32483
},
{
0x00000000, 0xA541927E, 0x4F6F520D, 0xEA2EC073,
0x9EDEA41A, 0x3B9F3664, 0xD1B1F617, 0x74F06469,
0x38513EC5, 0x9D10ACBB, 0x773E6CC8, 0xD27FFEB6,
0xA68F9ADF, 0x03CE08A1, 0xE9E0C8D2, 0x4CA15AAC,
0x70A27D8A, 0xD5E3EFF4, 0x3FCD2F87, 0x9A8CBDF9,
0xEE7CD990, 0x4B3D4BEE, 0xA1138B9D, 0x045219E3,
0x48F3434F, 0xEDB2D131, 0x079C1142, 0xA2DD833C,
0xD62DE755, 0x736C752B, 0x9942B558, 0x3C032726,
0xE144FB14, 0x4405696A, 0xAE2BA919, 0x0B6A3B67,
0x7F9A5F0E, 0xDADBCD70, 0x30F50D03, 0x95B49F7D,
0xD915C5D1, 0x7C5457AF, 0x967A97DC, 0x333B05A2,
0x47CB61CB, 0xE28AF3B5, 0x08A433C6, 0xADE5A1B8,
0x91E6869E, 0x34A714E0, 0xDE89D493, 0x7BC846ED,
0x0F382284, 0xAA79B0FA, 0x40577089, 0xE516E2F7,
0xA9B7B85B, 0x0CF62A25, 0xE6D8EA56, 0x43997828,
0x37691C41, 0x92288E3F, 0x78064E4C, 0xDD47DC32,
0xC76580D9, 0x622412A7, 0x880AD2D4, 0x2D4B40AA,
0x59BB24C3, 0xFCFAB6BD, 0x16D476CE, 0xB395E4B0,
0xFF34BE1C, 0x5A752C62, 0xB05BEC11, 0x151A7E6F,
0x61EA1A06, 0xC4AB8878, 0x2E85480B, 0x8BC4DA75,
0xB7C7FD53, 0x12866F2D, 0xF8A8AF5E, 0x5DE93D20,
0x29195949, 0x8C58CB37, 0x66760B44, 0xC337993A,
0x8F96C396, 0x2AD751E8, 0xC0F9919B, 0x65B803E5,
0x1148678C, 0xB409F5F2, 0x5E273581, 0xFB66A7FF,
0x26217BCD, 0x8360E9B3, 0x694E29C0, 0xCC0FBBBE,
0xB8FFDFD7, 0x1DBE4DA9, 0xF7908DDA, 0x52D11FA4,
0x1E704508, 0xBB31D776, 0x511F1705, 0xF45E857B,
0x80AEE112, 0x25EF736C, 0xCFC1B31F, 0x6A802161,
0x56830647, 0xF3C29439, 0x19EC544A, 0xBCADC634,
0xC85DA25D, 0x6D1C3023, 0x8732F050, 0x2273622E,
0x6ED23882, 0xCB93AAFC, 0x21BD6A8F, 0x84FCF8F1,
0xF00C9C98, 0x554D0EE6, 0xBF63CE95, 0x1A225CEB,
0x8B277743, 0x2E66E53D, 0xC448254E, 0x6109B730,
0x15F9D359, 0xB0B84127, 0x5A968154, 0xFFD7132A,
0xB3764986, 0x1637DBF8, 0xFC191B8B, 0x595889F5,
0x2DA8ED9C, 0x88E97FE2, 0x62C7BF91, 0xC7862DEF,
0xFB850AC9, 0x5EC498B7, 0xB4EA58C4, 0x11ABCABA,
0x655BAED3, 0xC01A3CAD, 0x2A34FCDE, 0x8F756EA0,
0xC3D4340C, 0x6695A672, 0x8CBB6601, 0x29FAF47F,
0x5D0A9016, 0xF84B0268, 0x1265C21B, 0xB7245065,
0x6A638C57, 0xCF221E29, 0x250CDE5A, 0x804D4C24,
0xF4BD284D, 0x51FCBA33, 0xBBD27A40, 0x1E93E83E,
0x5232B292, 0xF77320EC, 0x1D5DE09F, 0xB81C72E1,
0xCCEC1688, 0x69AD84F6, 0x83834485, 0x26C2D6FB,
0x1AC1F1DD, 0xBF8063A3, 0x55AEA3D0, 0xF0EF31AE,
0x841F55C7, 0x215EC7B9, 0xCB7007CA, 0x6E3195B4,
0x2290CF18, 0x87D15D66, 0x6DFF9D15, 0xC8BE0F6B,
0xBC4E6B02, 0x190FF97C, 0xF321390F, 0x5660AB71,
0x4C42F79A, 0xE90365E4, 0x032DA597, 0xA66C37E9,
0xD29C5380, 0x77DDC1FE, 0x9DF3018D, 0x38B293F3,
0x7413C95F, 0xD1525B21, 0x3B7C9B52, 0x9E3D092C,
0xEACD6D45, 0x4F8CFF3B, 0xA5A23F48, 0x00E3AD36,
0x3CE08A10, 0x99A1186E, 0x738FD81D, 0xD6CE4A63,
0xA23E2E0A, 0x077FBC74, 0xED517C07, 0x4810EE79,
0x04B1B4D5, 0xA1F026AB, 0x4BDEE6D8, 0xEE9F74A6,
0x9A6F10CF, 0x3F2E82B1, 0xD50042C2, 0x7041D0BC,
0xAD060C8E, 0x08479EF0, 0xE2695E83, 0x4728CCFD,
0x33D8A894, 0x96993AEA, 0x7CB7FA99, 0xD9F668E7,
0x9557324B, 0x3016A035, 0xDA386046, 0x7F79F238,
0x0B899651, 0xAEC8042F, 0x44E6C45C, 0xE1A75622,
0xDDA47104, 0x78E5E37A, 0x92CB2309, 0x378AB177,
0x437AD51E, 0xE63B4760, 0x0C158713, 0xA954156D,
0xE5F54FC1, 0x40B4DDBF, 0xAA9A1DCC, 0x0FDB8FB2,
0x7B2BEBDB, 0xDE6A79A5, 0x3444B9D6, 0x91052BA8
},
{
0x00000000, 0xDD45AAB8, 0xBF672381, 0x62228939,
0x7B2231F3, 0xA6679B4B, 0xC4451272, 0x1900B8CA,
0xF64463E6, 0x2B01C95E, 0x49234067, 0x9466EADF,
0x8D665215, 0x5023F8AD, 0x32017194, 0xEF44DB2C,
0xE964B13D, 0x34211B85, 0x560392BC, 0x8B463804,
0x924680CE, 0x4F032A76, 0x2D21A34F, 0xF06409F7,
0x1F20D2DB, 0xC2657863, 0xA047F15A, 0x7D025BE2,
0x6402E328, 0xB9474990, 0xDB65C0A9, 0x06206A11,
0xD725148B, 0x0A60BE33, 0x6842370A, 0xB5079DB2,
0xAC072578, 0x71428FC0, 0x136006F9, 0xCE25AC41,
0x2161776D, 0xFC24DDD5, 0x9E0654EC, 0x4343FE54,
0x5A43469E, 0x8706EC26, 0xE524651F, 0x3861CFA7,
0x3E41A5B6, 0xE3040F0E, 0x81268637, 0x5C632C8F,
0x45639445, 0x98263EFD, 0xFA04B7C4, 0x27411D7C,
0xC805C650, 0x15406CE8, 0x7762E5D1, 0xAA274F69,
0xB327F7A3, 0x6E625D1B, 0x0C40D422, 0xD1057E9A,
0xABA65FE7, 0x76E3F55F, 0x14C17C66, 0xC984D6DE,
0xD0846E14, 0x0DC1C4AC, 0x6FE34D95, 0xB2A6E72D,
0x5DE23C01, 0x80A796B9, 0xE2851F80, 0x3FC0B538,
0x26C00DF2, 0xFB85A74A, 0x99A72E73, 0x44E284CB,
0x42C2EEDA, 0x9F874462, 0xFDA5CD5B, 0x20E067E3,
0x39E0DF29, 0xE4A57591, 0x8687FCA8, 0x5BC25610,
0xB4868D3C, 0x69C32784, 0x0BE1AEBD, 0xD6A40405,
0xCFA4BCCF, 0x12E11677, 0x70C39F4E, 0xAD8635F6,
0x7C834B6C, 0xA1C6E1D4, 0xC3E468ED, 0x1EA1C255,
0x07A17A9F, 0xDAE4D027, 0xB8C6591E, 0x6583F3A6,
0x8AC7288A, 0x57828232, 0x35A00B0B, 0xE8E5A1B3,
0xF1E51979, 0x2CA0B3C1, 0x4E823AF8, 0x93C79040,
0x95E7FA51, 0x48A250E9, 0x2A80D9D0, 0xF7C57368,
0xEEC5CBA2, 0x3380611A, 0x51A2E823, 0x8CE7429B,
0x63A399B7, 0xBEE6330F, 0xDCC4BA36, 0x0181108E,
0x1881A844, 0xC5C402FC, 0xA7E68BC5, 0x7AA3217D,
0x52A0C93F, 0x8FE56387, 0xEDC7EABE, 0x30824006,
0x2982F8CC, 0xF4C75274, 0x96E5DB4D, 0x4BA071F5,
0xA4E4AAD9, 0x79A10061, 0x1B838958, 0xC6C623E0,
0xDFC69B2A, 0x02833192, 0x60A1B8AB, 0xBDE41213,
0xBBC47802, 0x6681D2BA, 0x04A35B83, 0xD9E6F13B,
0xC0E649F1, 0x1DA3E349, 0x7F816A70, 0xA2C4C0C8,
0x4D801BE4, 0x90C5B15C, 0xF2E73865, 0x2FA292DD,
0x36A22A17, 0xEBE780AF, 0x89C50996, 0x5480A32E,
0x8585DDB4, 0x58C0770C, 0x3AE2FE35, 0xE7A7548D,
0xFEA7EC47, 0x23E246FF, 0x41C0CFC6, 0x9C85657E,
0x73C1BE52, 0xAE8414EA, 0xCCA69DD3, 0x11E3376B,
0x08E38FA1, 0xD5A62519, 0xB784AC20, 0x6AC10698,
0x6CE16C89, 0xB1A4C631, 0xD3864F08, 0x0EC3E5B0,
0x17C35D7A, 0xCA86F7C2, 0xA8A47EFB, 0x75E1D443,
0x9AA50F6F, 0x47E0A5D7, 0x25C22CEE, 0xF8878656,
0xE1873E9C, 0x3CC29424, 0x5EE01D1D, 0x83A5B7A5,
0xF90696D8, 0x24433C60, 0x4661B559, 0x9B241FE1,
0x8224A72B, 0x5F610D93, 0x3D4384AA, 0xE0062E12,
0x0F42F53E, 0xD2075F86, 0xB025D6BF, 0x6D607C07,
0x7460C4CD, 0xA9256E75, 0xCB07E74C, 0x16424DF4,
0x106227E5, 0xCD278D5D, 0xAF050464, 0x7240AEDC,
0x6B401616, 0xB605BCAE, 0xD4273597, 0x09629F2F,
0xE6264403, 0x3B63EEBB, 0x59416782, 0x8404CD3A,
0x9D0475F0, 0x4041DF48, 0x22635671, 0xFF26FCC9,
0x2E238253, 0xF36628EB, 0x9144A1D2, 0x4C010B6A,
0x5501B3A0, 0x88441918, 0xEA669021, 0x37233A99,
0xD867E1B5, 0x05224B0D, 0x6700C234, 0xBA45688C,
0xA345D046, 0x7E007AFE, 0x1C22F3C7, 0xC167597F,
0xC747336E, 0x1A0299D6, 0x782010EF, 0xA565BA57,
0xBC65029D, 0x6120A825, 0x0302211C, 0xDE478BA4,
0x31035088, 0xEC46FA30, 0x8E647309, 0x5321D9B1,
0x4A21617B, 0x9764CBC3, 0xF54642FA, 0x2803E842
},
{
0x00000000, 0x38116FAC, 0x7022DF58, 0x4833B0F4,
0xE045BEB0, 0xD854D11C, 0x906761E8, 0xA8760E44,
0xC5670B91, 0xFD76643D, 0xB545D4C9, 0x8D54BB65,
0x2522B521, 0x1D33DA8D, 0x55006A79, 0x6D1105D5,
0x8F2261D3, 0xB7330E7F, 0xFF00BE8B, 0xC711D127,
0x6F67DF63, 0x5776B0CF, 0x1F45003B, 0x27546F97,
0x4A456A42, 0x725405EE, 0x3A67B51A, 0x0276DAB6,
0xAA00D4F2, 0x9211BB5E, 0xDA220BAA, 0xE2336406,
0x1BA8B557, 0x23B9DAFB, 0x6B8A6A0F, 0x539B05A3,
0xFBED0BE7, 0xC3FC644B, 0x8BCFD4BF, 0xB3DEBB13,
0xDECFBEC6, 0xE6DED16A, 0xAEED619E, 0x96FC0E32,
0x3E8A0076, 0x069B6FDA, 0x4EA8DF2E, 0x76B9B082,
0x948AD484, 0xAC9BBB28, 0xE4A80BDC, 0xDCB96470,
0x74CF6A34, 0x4CDE0598, 0x04EDB56C, 0x3CFCDAC0,
0x51EDDF15, 0x69FCB0B9, 0x21CF004D, 0x19DE6FE1,
0xB1A861A5, 0x89B90E09, 0xC18ABEFD, 0xF99BD151,
0x37516AAE, 0x0F400502, 0x4773B5F6, 0x7F62DA5A,
0xD714D41E, 0xEF05BBB2, 0xA7360B46, 0x9F2764EA,
0xF236613F, 0xCA270E93, 0x8214BE67, 0xBA05D1CB,
0x1273DF8F, 0x2A62B023, 0x625100D7, 0x5A406F7B,
0xB8730B7D, 0x806264D1, 0xC851D425, 0xF040BB89,
0x5836B5CD, 0x6027DA61, 0x28146A95, 0x10050539,
0x7D1400EC, 0x45056F40, 0x0D36DFB4, 0x3527B018,
0x9D51BE5C, 0xA540D1F0, 0xED736104, 0xD5620EA8,
0x2CF9DFF9, 0x14E8B055, 0x5CDB00A1, 0x64CA6F0D,
0xCCBC6149, 0xF4AD0EE5, 0xBC9EBE11, 0x848FD1BD,
0xE99ED468, 0xD18FBBC4, 0x99BC0B30, 0xA1AD649C,
0x09DB6AD8, 0x31CA0574, 0x79F9B580, 0x41E8DA2C,
0xA3DBBE2A, 0x9BCAD186, 0xD3F96172, 0xEBE80EDE,
0x439E009A, 0x7B8F6F36, 0x33BCDFC2, 0x0BADB06E,
0x66BCB5BB, 0x5EADDA17, 0x169E6AE3, 0x2E8F054F,
0x86F90B0B, 0xBEE864A7, 0xF6DBD453, 0xCECABBFF,
0x6EA2D55C, 0x56B3BAF0, 0x1E800A04, 0x269165A8,
0x8EE76BEC, 0xB6F60440, 0xFEC5B4B4, 0xC6D4DB18,
0xABC5DECD, 0x93D4B161, 0xDBE70195, 0xE3F66E39,
0x4B80607D, 0x73910FD1, 0x3BA2BF25, 0x03B3D089,
0xE180B48F, 0xD991DB23, 0x91A26BD7, 0xA9B3047B,
0x01C50A3F, 0x39D46593, 0x71E7D567, 0x49F6BACB,
0x24E7BF1E, 0x1CF6D0B2, 0x54C56046, 0x6CD40FEA,
0xC4A201AE, 0xFCB36E02, 0xB480DEF6, 0x8C91B15A,
0x750A600B, 0x4D1B0FA7, 0x0528BF53, 0x3D39D0FF,
0x954FDEBB, 0xAD5EB117, 0xE56D01E3, 0xDD7C6E4F,
0xB06D6B9A, 0x887C0436, 0xC04FB4C2, 0xF85EDB6E,
0x5028D52A, 0x6839BA86, 0x200A0A72, 0x181B65DE,
0xFA2801D8, 0xC2396E74, 0x8A0ADE80, 0xB21BB12C,
0x1A6DBF68, 0x227CD0C4, 0x6A4F6030, 0x525E0F9C,
0x3F4F0A49, 0x075E65E5, 0x4F6DD511, 0x777CBABD,
0xDF0AB4F9, 0xE71BDB55, 0xAF286BA1, 0x9739040D,
0x59F3BFF2, 0x61E2D05E, 0x29D160AA, 0x11C00F06,
0xB9B60142, 0x81A76EEE, 0xC994DE1A, 0xF185B1B6,
0x9C94B463, 0xA485DBCF, 0xECB66B3B, 0xD4A70497,
0x7CD10AD3, 0x44C0657F, 0x0CF3D58B, 0x34E2BA27,
0xD6D1DE21, 0xEEC0B18D, 0xA6F30179, 0x9EE26ED5,
0x36946091, 0x0E850F3D, 0x46B6BFC9, 0x7EA7D065,
0x13B6D5B0, 0x2BA7BA1C, 0x63940AE8, 0x5B856544,
0xF3F36B00, 0xCBE204AC, 0x83D1B458, 0xBBC0DBF4,
0x425B0AA5, 0x7A4A6509, 0x3279D5FD, 0x0A68BA51,
0xA21EB415, 0x9A0FDBB9, 0xD23C6B4D, 0xEA2D04E1,
0x873C0134, 0xBF2D6E98, 0xF71EDE6C, 0xCF0FB1C0,
0x6779BF84, 0x5F68D028, 0x175B60DC, 0x2F4A0F70,
0xCD796B76, 0xF56804DA, 0xBD5BB42E, 0x854ADB82,
0x2D3CD5C6, 0x152DBA6A, 0x5D1E0A9E, 0x650F6532,
0x081E60E7, 0x300F0F4B, 0x783CBFBF, 0x402DD013,
0xE85BDE57, 0xD04AB1FB, 0x9879010F, 0xA0686EA3
},
{
0x00000000, 0xEF306B19, 0xDB8CA0C3, 0x34BCCBDA,
0xB2F53777, 0x5DC55C6E, 0x697997B4, 0x8649FCAD,
0x6006181F, 0x8F367306, 0xBB8AB8DC, 0x54BAD3C5,
0xD2F32F68, 0x3DC34471, 0x097F8FAB, 0xE64FE4B2,
0xC00C303E, 0x2F3C5B27, 0x1B8090FD, 0xF4B0FBE4,
0x72F90749, 0x9DC96C50, 0xA975A78A, 0x4645CC93,
0xA00A2821, 0x4F3A4338, 0x7B8688E2, 0x94B6E3FB,
0x12FF1F56, 0xFDCF744F, 0xC973BF95, 0x2643D48C,
0x85F4168D, 0x6AC47D94, 0x5E78B64E, 0xB148DD57,
0x370121FA, 0xD8314AE3, 0xEC8D8139, 0x03BDEA20,
0xE5F20E92, 0x0AC2658B, 0x3E7EAE51, 0xD14EC548,
0x570739E5, 0xB83752FC, 0x8C8B9926, 0x63BBF23F,
0x45F826B3, 0xAAC84DAA, 0x9E748670, 0x7144ED69,
0xF70D11C4, 0x183D7ADD, 0x2C81B107, 0xC3B1DA1E,
0x25FE3EAC, 0xCACE55B5, 0xFE729E6F, 0x1142F576,
0x970B09DB, 0x783B62C2, 0x4C87A918, 0xA3B7C201,
0x0E045BEB, 0xE13430F2, 0xD588FB28, 0x3AB89031,
0xBCF16C9C, 0x53C10785, 0x677DCC5F, 0x884DA746,
0x6E0243F4, 0x813228ED, 0xB58EE337, 0x5ABE882E,
0xDCF77483, 0x33C71F9A, 0x077BD440, 0xE84BBF59,
0xCE086BD5, 0x213800CC, 0x1584CB16, 0xFAB4A00F,
0x7CFD5CA2, 0x93CD37BB, 0xA771FC61, 0x48419778,
0xAE0E73CA, 0x413E18D3, 0x7582D309, 0x9AB2B810,
0x1CFB44BD, 0xF3CB2FA4, 0xC777E47E, 0x28478F67,
0x8BF04D66, 0x64C0267F, 0x507CEDA5, 0xBF4C86BC,
0x39057A11, 0xD6351108, 0xE289DAD2, 0x0DB9B1CB,
0xEBF65579, 0x04C63E60, 0x307AF5BA, 0xDF4A9EA3,
0x5903620E, 0xB6330917, 0x828FC2CD, 0x6DBFA9D4,
0x4BFC7D58, 0xA4CC1641, 0x9070DD9B, 0x7F40B682,
0xF9094A2F, 0x16392136, 0x2285EAEC, 0xCDB581F5,
0x2BFA6547, 0xC4CA0E5E, 0xF076C584, 0x1F46AE9D,
0x990F5230, 0x763F3929, 0x4283F2F3, 0xADB399EA,
0x1C08B7D6, 0xF338DCCF, 0xC7841715, 0x28B47C0C,
0xAEFD80A1, 0x41CDEBB8, 0x75712062, 0x9A414B7B,
0x7C0EAFC9, 0x933EC4D0, 0xA7820F0A, 0x48B26413,
0xCEFB98BE, 0x21CBF3A7, 0x1577387D, 0xFA475364,
0xDC0487E8, 0x3334ECF1, 0x0788272B, 0xE8B84C32,
0x6EF1B09F, 0x81C1DB86, 0xB57D105C, 0x5A4D7B45,
0xBC029FF7, 0x5332F4EE, 0x678E3F34, 0x88BE542D,
0x0EF7A880, 0xE1C7C399, 0xD57B0843, 0x3A4B635A,
0x99FCA15B, 0x76CCCA42, 0x42700198, 0xAD406A81,
0x2B09962C, 0xC439FD35, 0xF08536EF, 0x1FB55DF6,
0xF9FAB944, 0x16CAD25D, 0x22761987, 0xCD46729E,
0x4B0F8E33, 0xA43FE52A, 0x90832EF0, 0x7FB345E9,
0x59F09165, 0xB6C0FA7C, 0x827C31A6, 0x6D4C5ABF,
0xEB05A612, 0x0435CD0B, 0x308906D1, 0xDFB96DC8,
0x39F6897A, 0xD6C6E263, 0xE27A29B9, 0x0D4A42A0,
0x8B03BE0D, 0x6433D514, 0x508F1ECE, 0xBFBF75D7,
0x120CEC3D, 0xFD3C8724, 0xC9804CFE, 0x26B027E7,
0xA0F9DB4A, 0x4FC9B053, 0x7B757B89, 0x94451090,
0x720AF422, 0x9D3A9F3B, 0xA98654E1, 0x46B63FF8,
0xC0FFC355, 0x2FCFA84C, 0x1B736396, 0xF443088F,
0xD200DC03, 0x3D30B71A, 0x098C7CC0, 0xE6BC17D9,
0x60F5EB74, 0x8FC5806D, 0xBB794BB7, 0x544920AE,
0xB206C41C, 0x5D36AF05, 0x698A64DF, 0x86BA0FC6,
0x00F3F36B, 0xEFC39872, 0xDB7F53A8, 0x344F38B1,
0x97F8FAB0, 0x78C891A9, 0x4C745A73, 0xA344316A,
0x250DCDC7, 0xCA3DA6DE, 0xFE816D04, 0x11B1061D,
0xF7FEE2AF, 0x18CE89B6, 0x2C72426C, 0xC3422975,
0x450BD5D8, 0xAA3BBEC1, 0x9E87751B, 0x71B71E02,
0x57F4CA8E, 0xB8C4A197, 0x8C786A4D, 0x63480154,
0xE501FDF9, 0x0A3196E0, 0x3E8D5D3A, 0xD1BD3623,
0x37F2D291, 0xD8C2B988, 0xEC7E7252, 0x034E194B,
0x8507E5E6, 0x6A378EFF, 0x5E8B4525, 0xB1BB2E3C
},
{
0x00000000, 0x68032CC8, 0xD0065990, 0xB8057558,
0xA5E0C5D1, 0xCDE3E919, 0x75E69C41, 0x1DE5B089,
0x4E2DFD53, 0x262ED19B, 0x9E2BA4C3, 0xF628880B,
0xEBCD3882, 0x83CE144A, 0x3BCB6112, 0x53C84DDA,
0x9C5BFAA6, 0xF458D66E, 0x4C5DA336, 0x245E8FFE,
0x39BB3F77, 0x51B813BF, 0xE9BD66E7, 0x81BE4A2F,
0xD27607F5, 0xBA752B3D, 0x02705E65, 0x6A7372AD,
0x7796C224, 0x1F95EEEC, 0xA7909BB4, 0xCF93B77C,
0x3D5B83BD, 0x5558AF75, 0xED5DDA2D, 0x855EF6E5,
0x98BB466C, 0xF0B86AA4, 0x48BD1FFC, 0x20BE3334,
0x73767EEE, 0x1B755226, 0xA370277E, 0xCB730BB6,
0xD696BB3F, 0xBE9597F7, 0x0690E2AF, 0x6E93CE67,
0xA100791B, 0xC90355D3, 0x7106208B, 0x19050C43,
0x04E0BCCA, 0x6CE39002, 0xD4E6E55A, 0xBCE5C992,
0xEF2D8448, 0x872EA880, 0x3F2BDDD8, 0x5728F110,
0x4ACD4199, 0x22CE6D51, 0x9ACB1809, 0xF2C834C1,
0x7AB7077A, 0x12B42BB2, 0xAAB15EEA, 0xC2B27222,
0xDF57C2AB, 0xB754EE63, 0x0F519B3B, 0x6752B7F3,
0x349AFA29, 0x5C99D6E1, 0xE49CA3B9, 0x8C9F8F71,
0x917A3FF8, 0xF9791330, 0x417C6668, 0x297F4AA0,
0xE6ECFDDC, 0x8EEFD114, 0x36EAA44C, 0x5EE98884,
0x430C380D, 0x2B0F14C5, 0x930A619D, 0xFB094D55,
0xA8C1008F, 0xC0C22C47, 0x78C7591F, 0x10C475D7,
0x0D21C55E, 0x6522E996, 0xDD279CCE, 0xB524B006,
0x47EC84C7, 0x2FEFA80F, 0x97EADD57, 0xFFE9F19F,
0xE20C4116, 0x8A0F6DDE, 0x320A1886, 0x5A09344E,
0x09C17994, 0x61C2555C, 0xD9C72004, 0xB1C40CCC,
0xAC21BC45, 0xC422908D, 0x7C27E5D5, 0x1424C91D,
0xDBB77E61, 0xB3B452A9, 0x0BB127F1, 0x63B20B39,
0x7E57BBB0, 0x16549778, 0xAE51E220, 0xC652CEE8,
0x959A8332, 0xFD99AFFA, 0x459CDAA2, 0x2D9FF66A,
0x307A46E3, 0x58796A2B, 0xE07C1F73, 0x887F33BB,
0xF56E0EF4, 0x9D6D223C, 0x25685764, 0x4D6B7BAC,
0x508ECB25, 0x388DE7ED, 0x808892B5, 0xE88BBE7D,
0xBB43F3A7, 0xD340DF6F, 0x6B45AA37, 0x034686FF,
0x1EA33676, 0x76A01ABE, 0xCEA56FE6, 0xA6A6432E,
0x6935F452, 0x0136D89A, 0xB933ADC2, 0xD130810A,
0xCCD53183, 0xA4D61D4B, 0x1CD36813, 0x74D044DB,
0x27180901, 0x4F1B25C9, 0xF71E5091, 0x9F1D7C59,
0x82F8CCD0, 0xEAFBE018, 0x52FE9540, 0x3AFDB988,
0xC8358D49, 0xA036A181, 0x1833D4D9, 0x7030F811,
0x6DD54898, 0x05D66450, 0xBDD31108, 0xD5D03DC0,
0x8618701A, 0xEE1B5CD2, 0x561E298A, 0x3E1D0542,
0x23F8B5CB, 0x4BFB9903, 0xF3FEEC5B, 0x9BFDC093,
0x546E77EF, 0x3C6D5B27, 0x84682E7F, 0xEC6B02B7,
0xF18EB23E, 0x998D9EF6, 0x2188EBAE, 0x498BC766,
0x1A438ABC, 0x7240A674, 0xCA45D32C, 0xA246FFE4,
0xBFA34F6D, 0xD7A063A5, 0x6FA516FD, 0x07A63A35,
0x8FD9098E, 0xE7DA2546, 0x5FDF501E, 0x37DC7CD6,
0x2A39CC5F, 0x423AE097, 0xFA3F95CF, 0x923CB907,
0xC1F4F4DD, 0xA9F7D815, 0x11F2AD4D, 0x79F18185,
0x6414310C, 0x0C171DC4, 0xB412689C, 0xDC114454,
0x1382F328, 0x7B81DFE0, 0xC384AAB8, 0xAB878670,
0xB66236F9, 0xDE611A31, 0x66646F69, 0x0E6743A1,
0x5DAF0E7B, 0x35AC22B3, 0x8DA957EB, 0xE5AA7B23,
0xF84FCBAA, 0x904CE762, 0x2849923A, 0x404ABEF2,
0xB2828A33, 0xDA81A6FB, 0x6284D3A3, 0x0A87FF6B,
0x17624FE2, 0x7F61632A, 0xC7641672, 0xAF673ABA,
0xFCAF7760, 0x94AC5BA8, 0x2CA92EF0, 0x44AA0238,
0x594FB2B1, 0x314C9E79, 0x8949EB21, 0xE14AC7E9,
0x2ED97095, 0x46DA5C5D, 0xFEDF2905, 0x96DC05CD,
0x8B39B544, 0xE33A998C, 0x5B3FECD4, 0x333CC01C,
0x60F48DC6, 0x08F7A10E, 0xB0F2D456, 0xD8F1F89E,
0xC5144817, 0xAD1764DF, 0x15121187, 0x7D113D4F
},
{
0x00000000, 0x493C7D27, 0x9278FA4E, 0xDB448769,
0x211D826D, 0x6821FF4A, 0xB3657823, 0xFA590504,
0x423B04DA, 0x0B0779FD, 0xD043FE94, 0x997F83B3,
0x632686B7, 0x2A1AFB90, 0xF15E7CF9, 0xB86201DE,
0x847609B4, 0xCD4A7493, 0x160EF3FA, 0x5F328EDD,
0xA56B8BD9, 0xEC57F6FE, 0x37137197, 0x7E2F0CB0,
0xC64D0D6E, 0x8F717049, 0x5435F720, 0x1D098A07,
0xE7508F03, 0xAE6CF224, 0x7528754D, 0x3C14086A,
0x0D006599, 0x443C18BE, 0x9F789FD7, 0xD644E2F0,
0x2C1DE7F4, 0x65219AD3, 0xBE651DBA, 0xF759609D,
0x4F3B6143, 0x06071C64, 0xDD439B0D, 0x947FE62A,
0x6E26E32E, 0x271A9E09, 0xFC5E1960, 0xB5626447,
0x89766C2D, 0xC04A110A, 0x1B0E9663, 0x5232EB44,
0xA86BEE40, 0xE1579367, 0x3A13140E, 0x732F6929,
0xCB4D68F7, 0x827115D0, 0x593592B9, 0x1009EF9E,
0xEA50EA9A, 0xA36C97BD, 0x782810D4, 0x31146DF3,
0x1A00CB32, 0x533CB615, 0x8878317C, 0xC1444C5B,
0x3B1D495F, 0x72213478, 0xA965B311, 0xE059CE36,
0x583BCFE8, 0x1107B2CF, 0xCA4335A6, 0x837F4881,
0x79264D85, 0x301A30A2, 0xEB5EB7CB, 0xA262CAEC,
0x9E76C286, 0xD74ABFA1, 0x0C0E38C8, 0x453245EF,
0xBF6B40EB, 0xF6573DCC, 0x2D13BAA5, 0x642FC782,
0xDC4DC65C, 0x9571BB7B, 0x4E353C12, 0x07094135,
0xFD504431, 0xB46C3916, 0x6F28BE7F, 0x2614C358,
0x1700AEAB, 0x5E3CD38C, 0x857854E5, 0xCC4429C2,
0x361D2CC6, 0x7F2151E1, 0xA465D688, 0xED59ABAF,
0x553BAA71, 0x1C07D756, 0xC743503F, 0x8E7F2D18,
0x7426281C, 0x3D1A553B, 0xE65ED252, 0xAF62AF75,
0x9376A71F, 0xDA4ADA38, 0x010E5D51, 0x48322076,
0xB26B2572, 0xFB575855, 0x2013DF3C, 0x692FA21B,
0xD14DA3C5, 0x9871DEE2, 0x4335598B, 0x0A0924AC,
0xF05021A8, 0xB96C5C8F, 0x6228DBE6, 0x2B14A6C1,
0x34019664, 0x7D3DEB43, 0xA6796C2A, 0xEF45110D,
0x151C1409, 0x5C20692E, 0x8764EE47, 0xCE589360,
0x763A92BE, 0x3F06EF99, 0xE44268F0, 0xAD7E15D7,
0x572710D3, 0x1E1B6DF4, 0xC55FEA9D, 0x8C6397BA,
0xB0779FD0, 0xF94BE2F7, 0x220F659E, 0x6B3318B9,
0x916A1DBD, 0xD856609A, 0x0312E7F3, 0x4A2E9AD4,
0xF24C9B0A, 0xBB70E62D, 0x60346144, 0x29081C63,
0xD3511967, 0x9A6D6440, 0x4129E329, 0x08159E0E,
0x3901F3FD, 0x703D8EDA, 0xAB7909B3, 0xE2457494,
0x181C7190, 0x51200CB7, 0x8A648BDE, 0xC358F6F9,
0x7B3AF727, 0x32068A00, 0xE9420D69, 0xA07E704E,
0x5A27754A, 0x131B086D, 0xC85F8F04, 0x8163F223,
0xBD77FA49, 0xF44B876E, 0x2F0F0007, 0x66337D20,
0x9C6A7824, 0xD5560503, 0x0E12826A, 0x472EFF4D,
0xFF4CFE93, 0xB67083B4, 0x6D3404DD, 0x240879FA,
0xDE517CFE, 0x976D01D9, 0x4C2986B0, 0x0515FB97,
0x2E015D56, 0x673D2071, 0xBC79A718, 0xF545DA3F,
0x0F1CDF3B, 0x4620A21C, 0x9D642575, 0xD4585852,
0x6C3A598C, 0x250624AB, 0xFE42A3C2, 0xB77EDEE5,
0x4D27DBE1, 0x041BA6C6, 0xDF5F21AF, 0x96635C88,
0xAA7754E2, 0xE34B29C5, 0x380FAEAC, 0x7133D38B,
0x8B6AD68F, 0xC256ABA8, 0x19122CC1, 0x502E51E6,
0xE84C5038, 0xA1702D1F, 0x7A34AA76, 0x3308D751,
0xC951D255, 0x806DAF72, 0x5B29281B, 0x1215553C,
0x230138CF, 0x6A3D45E8, 0xB179C281, 0xF845BFA6,
0x021CBAA2, 0x4B20C785, 0x906440EC, 0xD9583DCB,
0x613A3C15, 0x28064132, 0xF342C65B, 0xBA7EBB7C,
0x4027BE78, 0x091BC35F, 0xD25F4436, 0x9B633911,
0xA777317B, 0xEE4B4C5C, 0x350FCB35, 0x7C33B612,
0x866AB316, 0xCF56CE31, 0x14124958, 0x5D2E347F,
0xE54C35A1, 0xAC704886, 0x7734CFEF, 0x3E08B2C8,
0xC451B7CC, 0x8D6DCAEB, 0x56294D82, 0x1F1530A5
}
#else /* !WORDS_BIGENDIAN */
{
0x00000000, 0x03836BF2, 0xF7703BE1, 0xF4F35013,
0x1F979AC7, 0x1C14F135, 0xE8E7A126, 0xEB64CAD4,
0xCF58D98A, 0xCCDBB278, 0x3828E26B, 0x3BAB8999,
0xD0CF434D, 0xD34C28BF, 0x27BF78AC, 0x243C135E,
0x6FC75E10, 0x6C4435E2, 0x98B765F1, 0x9B340E03,
0x7050C4D7, 0x73D3AF25, 0x8720FF36, 0x84A394C4,
0xA09F879A, 0xA31CEC68, 0x57EFBC7B, 0x546CD789,
0xBF081D5D, 0xBC8B76AF, 0x487826BC, 0x4BFB4D4E,
0xDE8EBD20, 0xDD0DD6D2, 0x29FE86C1, 0x2A7DED33,
0xC11927E7, 0xC29A4C15, 0x36691C06, 0x35EA77F4,
0x11D664AA, 0x12550F58, 0xE6A65F4B, 0xE52534B9,
0x0E41FE6D, 0x0DC2959F, 0xF931C58C, 0xFAB2AE7E,
0xB149E330, 0xB2CA88C2, 0x4639D8D1, 0x45BAB323,
0xAEDE79F7, 0xAD5D1205, 0x59AE4216, 0x5A2D29E4,
0x7E113ABA, 0x7D925148, 0x8961015B, 0x8AE26AA9,
0x6186A07D, 0x6205CB8F, 0x96F69B9C, 0x9575F06E,
0xBC1D7B41, 0xBF9E10B3, 0x4B6D40A0, 0x48EE2B52,
0xA38AE186, 0xA0098A74, 0x54FADA67, 0x5779B195,
0x7345A2CB, 0x70C6C939, 0x8435992A, 0x87B6F2D8,
0x6CD2380C, 0x6F5153FE, 0x9BA203ED, 0x9821681F,
0xD3DA2551, 0xD0594EA3, 0x24AA1EB0, 0x27297542,
0xCC4DBF96, 0xCFCED464, 0x3B3D8477, 0x38BEEF85,
0x1C82FCDB, 0x1F019729, 0xEBF2C73A, 0xE871ACC8,
0x0315661C, 0x00960DEE, 0xF4655DFD, 0xF7E6360F,
0x6293C661, 0x6110AD93, 0x95E3FD80, 0x96609672,
0x7D045CA6, 0x7E873754, 0x8A746747, 0x89F70CB5,
0xADCB1FEB, 0xAE487419, 0x5ABB240A, 0x59384FF8,
0xB25C852C, 0xB1DFEEDE, 0x452CBECD, 0x46AFD53F,
0x0D549871, 0x0ED7F383, 0xFA24A390, 0xF9A7C862,
0x12C302B6, 0x11406944, 0xE5B33957, 0xE63052A5,
0xC20C41FB, 0xC18F2A09, 0x357C7A1A, 0x36FF11E8,
0xDD9BDB3C, 0xDE18B0CE, 0x2AEBE0DD, 0x29688B2F,
0x783BF682, 0x7BB89D70, 0x8F4BCD63, 0x8CC8A691,
0x67AC6C45, 0x642F07B7, 0x90DC57A4, 0x935F3C56,
0xB7632F08, 0xB4E044FA, 0x401314E9, 0x43907F1B,
0xA8F4B5CF, 0xAB77DE3D, 0x5F848E2E, 0x5C07E5DC,
0x17FCA892, 0x147FC360, 0xE08C9373, 0xE30FF881,
0x086B3255, 0x0BE859A7, 0xFF1B09B4, 0xFC986246,
0xD8A47118, 0xDB271AEA, 0x2FD44AF9, 0x2C57210B,
0xC733EBDF, 0xC4B0802D, 0x3043D03E, 0x33C0BBCC,
0xA6B54BA2, 0xA5362050, 0x51C57043, 0x52461BB1,
0xB922D165, 0xBAA1BA97, 0x4E52EA84, 0x4DD18176,
0x69ED9228, 0x6A6EF9DA, 0x9E9DA9C9, 0x9D1EC23B,
0x767A08EF, 0x75F9631D, 0x810A330E, 0x828958FC,
0xC97215B2, 0xCAF17E40, 0x3E022E53, 0x3D8145A1,
0xD6E58F75, 0xD566E487, 0x2195B494, 0x2216DF66,
0x062ACC38, 0x05A9A7CA, 0xF15AF7D9, 0xF2D99C2B,
0x19BD56FF, 0x1A3E3D0D, 0xEECD6D1E, 0xED4E06EC,
0xC4268DC3, 0xC7A5E631, 0x3356B622, 0x30D5DDD0,
0xDBB11704, 0xD8327CF6, 0x2CC12CE5, 0x2F424717,
0x0B7E5449, 0x08FD3FBB, 0xFC0E6FA8, 0xFF8D045A,
0x14E9CE8E, 0x176AA57C, 0xE399F56F, 0xE01A9E9D,
0xABE1D3D3, 0xA862B821, 0x5C91E832, 0x5F1283C0,
0xB4764914, 0xB7F522E6, 0x430672F5, 0x40851907,
0x64B90A59, 0x673A61AB, 0x93C931B8, 0x904A5A4A,
0x7B2E909E, 0x78ADFB6C, 0x8C5EAB7F, 0x8FDDC08D,
0x1AA830E3, 0x192B5B11, 0xEDD80B02, 0xEE5B60F0,
0x053FAA24, 0x06BCC1D6, 0xF24F91C5, 0xF1CCFA37,
0xD5F0E969, 0xD673829B, 0x2280D288, 0x2103B97A,
0xCA6773AE, 0xC9E4185C, 0x3D17484F, 0x3E9423BD,
0x756F6EF3, 0x76EC0501, 0x821F5512, 0x819C3EE0,
0x6AF8F434, 0x697B9FC6, 0x9D88CFD5, 0x9E0BA427,
0xBA37B779, 0xB9B4DC8B, 0x4D478C98, 0x4EC4E76A,
0xA5A02DBE, 0xA623464C, 0x52D0165F, 0x51537DAD,
},
{
0x00000000, 0x7798A213, 0xEE304527, 0x99A8E734,
0xDC618A4E, 0xABF9285D, 0x3251CF69, 0x45C96D7A,
0xB8C3149D, 0xCF5BB68E, 0x56F351BA, 0x216BF3A9,
0x64A29ED3, 0x133A3CC0, 0x8A92DBF4, 0xFD0A79E7,
0x81F1C53F, 0xF669672C, 0x6FC18018, 0x1859220B,
0x5D904F71, 0x2A08ED62, 0xB3A00A56, 0xC438A845,
0x3932D1A2, 0x4EAA73B1, 0xD7029485, 0xA09A3696,
0xE5535BEC, 0x92CBF9FF, 0x0B631ECB, 0x7CFBBCD8,
0x02E38B7F, 0x757B296C, 0xECD3CE58, 0x9B4B6C4B,
0xDE820131, 0xA91AA322, 0x30B24416, 0x472AE605,
0xBA209FE2, 0xCDB83DF1, 0x5410DAC5, 0x238878D6,
0x664115AC, 0x11D9B7BF, 0x8871508B, 0xFFE9F298,
0x83124E40, 0xF48AEC53, 0x6D220B67, 0x1ABAA974,
0x5F73C40E, 0x28EB661D, 0xB1438129, 0xC6DB233A,
0x3BD15ADD, 0x4C49F8CE, 0xD5E11FFA, 0xA279BDE9,
0xE7B0D093, 0x90287280, 0x098095B4, 0x7E1837A7,
0x04C617FF, 0x735EB5EC, 0xEAF652D8, 0x9D6EF0CB,
0xD8A79DB1, 0xAF3F3FA2, 0x3697D896, 0x410F7A85,
0xBC050362, 0xCB9DA171, 0x52354645, 0x25ADE456,
0x6064892C, 0x17FC2B3F, 0x8E54CC0B, 0xF9CC6E18,
0x8537D2C0, 0xF2AF70D3, 0x6B0797E7, 0x1C9F35F4,
0x5956588E, 0x2ECEFA9D, 0xB7661DA9, 0xC0FEBFBA,
0x3DF4C65D, 0x4A6C644E, 0xD3C4837A, 0xA45C2169,
0xE1954C13, 0x960DEE00, 0x0FA50934, 0x783DAB27,
0x06259C80, 0x71BD3E93, 0xE815D9A7, 0x9F8D7BB4,
0xDA4416CE, 0xADDCB4DD, 0x347453E9, 0x43ECF1FA,
0xBEE6881D, 0xC97E2A0E, 0x50D6CD3A, 0x274E6F29,
0x62870253, 0x151FA040, 0x8CB74774, 0xFB2FE567,
0x87D459BF, 0xF04CFBAC, 0x69E41C98, 0x1E7CBE8B,
0x5BB5D3F1, 0x2C2D71E2, 0xB58596D6, 0xC21D34C5,
0x3F174D22, 0x488FEF31, 0xD1270805, 0xA6BFAA16,
0xE376C76C, 0x94EE657F, 0x0D46824B, 0x7ADE2058,
0xF9FAC3FB, 0x8E6261E8, 0x17CA86DC, 0x605224CF,
0x259B49B5, 0x5203EBA6, 0xCBAB0C92, 0xBC33AE81,
0x4139D766, 0x36A17575, 0xAF099241, 0xD8913052,
0x9D585D28, 0xEAC0FF3B, 0x7368180F, 0x04F0BA1C,
0x780B06C4, 0x0F93A4D7, 0x963B43E3, 0xE1A3E1F0,
0xA46A8C8A, 0xD3F22E99, 0x4A5AC9AD, 0x3DC26BBE,
0xC0C81259, 0xB750B04A, 0x2EF8577E, 0x5960F56D,
0x1CA99817, 0x6B313A04, 0xF299DD30, 0x85017F23,
0xFB194884, 0x8C81EA97, 0x15290DA3, 0x62B1AFB0,
0x2778C2CA, 0x50E060D9, 0xC94887ED, 0xBED025FE,
0x43DA5C19, 0x3442FE0A, 0xADEA193E, 0xDA72BB2D,
0x9FBBD657, 0xE8237444, 0x718B9370, 0x06133163,
0x7AE88DBB, 0x0D702FA8, 0x94D8C89C, 0xE3406A8F,
0xA68907F5, 0xD111A5E6, 0x48B942D2, 0x3F21E0C1,
0xC22B9926, 0xB5B33B35, 0x2C1BDC01, 0x5B837E12,
0x1E4A1368, 0x69D2B17B, 0xF07A564F, 0x87E2F45C,
0xFD3CD404, 0x8AA47617, 0x130C9123, 0x64943330,
0x215D5E4A, 0x56C5FC59, 0xCF6D1B6D, 0xB8F5B97E,
0x45FFC099, 0x3267628A, 0xABCF85BE, 0xDC5727AD,
0x999E4AD7, 0xEE06E8C4, 0x77AE0FF0, 0x0036ADE3,
0x7CCD113B, 0x0B55B328, 0x92FD541C, 0xE565F60F,
0xA0AC9B75, 0xD7343966, 0x4E9CDE52, 0x39047C41,
0xC40E05A6, 0xB396A7B5, 0x2A3E4081, 0x5DA6E292,
0x186F8FE8, 0x6FF72DFB, 0xF65FCACF, 0x81C768DC,
0xFFDF5F7B, 0x8847FD68, 0x11EF1A5C, 0x6677B84F,
0x23BED535, 0x54267726, 0xCD8E9012, 0xBA163201,
0x471C4BE6, 0x3084E9F5, 0xA92C0EC1, 0xDEB4ACD2,
0x9B7DC1A8, 0xECE563BB, 0x754D848F, 0x02D5269C,
0x7E2E9A44, 0x09B63857, 0x901EDF63, 0xE7867D70,
0xA24F100A, 0xD5D7B219, 0x4C7F552D, 0x3BE7F73E,
0xC6ED8ED9, 0xB1752CCA, 0x28DDCBFE, 0x5F4569ED,
0x1A8C0497, 0x6D14A684, 0xF4BC41B0, 0x8324E3A3,
},
{
0x00000000, 0x7E9241A5, 0x0D526F4F, 0x73C02EEA,
0x1AA4DE9E, 0x64369F3B, 0x17F6B1D1, 0x6964F074,
0xC53E5138, 0xBBAC109D, 0xC86C3E77, 0xB6FE7FD2,
0xDF9A8FA6, 0xA108CE03, 0xD2C8E0E9, 0xAC5AA14C,
0x8A7DA270, 0xF4EFE3D5, 0x872FCD3F, 0xF9BD8C9A,
0x90D97CEE, 0xEE4B3D4B, 0x9D8B13A1, 0xE3195204,
0x4F43F348, 0x31D1B2ED, 0x42119C07, 0x3C83DDA2,
0x55E72DD6, 0x2B756C73, 0x58B54299, 0x2627033C,
0x14FB44E1, 0x6A690544, 0x19A92BAE, 0x673B6A0B,
0x0E5F9A7F, 0x70CDDBDA, 0x030DF530, 0x7D9FB495,
0xD1C515D9, 0xAF57547C, 0xDC977A96, 0xA2053B33,
0xCB61CB47, 0xB5F38AE2, 0xC633A408, 0xB8A1E5AD,
0x9E86E691, 0xE014A734, 0x93D489DE, 0xED46C87B,
0x8422380F, 0xFAB079AA, 0x89705740, 0xF7E216E5,
0x5BB8B7A9, 0x252AF60C, 0x56EAD8E6, 0x28789943,
0x411C6937, 0x3F8E2892, 0x4C4E0678, 0x32DC47DD,
0xD98065C7, 0xA7122462, 0xD4D20A88, 0xAA404B2D,
0xC324BB59, 0xBDB6FAFC, 0xCE76D416, 0xB0E495B3,
0x1CBE34FF, 0x622C755A, 0x11EC5BB0, 0x6F7E1A15,
0x061AEA61, 0x7888ABC4, 0x0B48852E, 0x75DAC48B,
0x53FDC7B7, 0x2D6F8612, 0x5EAFA8F8, 0x203DE95D,
0x49591929, 0x37CB588C, 0x440B7666, 0x3A9937C3,
0x96C3968F, 0xE851D72A, 0x9B91F9C0, 0xE503B865,
0x8C674811, 0xF2F509B4, 0x8135275E, 0xFFA766FB,
0xCD7B2126, 0xB3E96083, 0xC0294E69, 0xBEBB0FCC,
0xD7DFFFB8, 0xA94DBE1D, 0xDA8D90F7, 0xA41FD152,
0x0845701E, 0x76D731BB, 0x05171F51, 0x7B855EF4,
0x12E1AE80, 0x6C73EF25, 0x1FB3C1CF, 0x6121806A,
0x47068356, 0x3994C2F3, 0x4A54EC19, 0x34C6ADBC,
0x5DA25DC8, 0x23301C6D, 0x50F03287, 0x2E627322,
0x8238D26E, 0xFCAA93CB, 0x8F6ABD21, 0xF1F8FC84,
0x989C0CF0, 0xE60E4D55, 0x95CE63BF, 0xEB5C221A,
0x4377278B, 0x3DE5662E, 0x4E2548C4, 0x30B70961,
0x59D3F915, 0x2741B8B0, 0x5481965A, 0x2A13D7FF,
0x864976B3, 0xF8DB3716, 0x8B1B19FC, 0xF5895859,
0x9CEDA82D, 0xE27FE988, 0x91BFC762, 0xEF2D86C7,
0xC90A85FB, 0xB798C45E, 0xC458EAB4, 0xBACAAB11,
0xD3AE5B65, 0xAD3C1AC0, 0xDEFC342A, 0xA06E758F,
0x0C34D4C3, 0x72A69566, 0x0166BB8C, 0x7FF4FA29,
0x16900A5D, 0x68024BF8, 0x1BC26512, 0x655024B7,
0x578C636A, 0x291E22CF, 0x5ADE0C25, 0x244C4D80,
0x4D28BDF4, 0x33BAFC51, 0x407AD2BB, 0x3EE8931E,
0x92B23252, 0xEC2073F7, 0x9FE05D1D, 0xE1721CB8,
0x8816ECCC, 0xF684AD69, 0x85448383, 0xFBD6C226,
0xDDF1C11A, 0xA36380BF, 0xD0A3AE55, 0xAE31EFF0,
0xC7551F84, 0xB9C75E21, 0xCA0770CB, 0xB495316E,
0x18CF9022, 0x665DD187, 0x159DFF6D, 0x6B0FBEC8,
0x026B4EBC, 0x7CF90F19, 0x0F3921F3, 0x71AB6056,
0x9AF7424C, 0xE46503E9, 0x97A52D03, 0xE9376CA6,
0x80539CD2, 0xFEC1DD77, 0x8D01F39D, 0xF393B238,
0x5FC91374, 0x215B52D1, 0x529B7C3B, 0x2C093D9E,
0x456DCDEA, 0x3BFF8C4F, 0x483FA2A5, 0x36ADE300,
0x108AE03C, 0x6E18A199, 0x1DD88F73, 0x634ACED6,
0x0A2E3EA2, 0x74BC7F07, 0x077C51ED, 0x79EE1048,
0xD5B4B104, 0xAB26F0A1, 0xD8E6DE4B, 0xA6749FEE,
0xCF106F9A, 0xB1822E3F, 0xC24200D5, 0xBCD04170,
0x8E0C06AD, 0xF09E4708, 0x835E69E2, 0xFDCC2847,
0x94A8D833, 0xEA3A9996, 0x99FAB77C, 0xE768F6D9,
0x4B325795, 0x35A01630, 0x466038DA, 0x38F2797F,
0x5196890B, 0x2F04C8AE, 0x5CC4E644, 0x2256A7E1,
0x0471A4DD, 0x7AE3E578, 0x0923CB92, 0x77B18A37,
0x1ED57A43, 0x60473BE6, 0x1387150C, 0x6D1554A9,
0xC14FF5E5, 0xBFDDB440, 0xCC1D9AAA, 0xB28FDB0F,
0xDBEB2B7B, 0xA5796ADE, 0xD6B94434, 0xA82B0591,
},
{
0x00000000, 0xB8AA45DD, 0x812367BF, 0x39892262,
0xF331227B, 0x4B9B67A6, 0x721245C4, 0xCAB80019,
0xE66344F6, 0x5EC9012B, 0x67402349, 0xDFEA6694,
0x1552668D, 0xADF82350, 0x94710132, 0x2CDB44EF,
0x3DB164E9, 0x851B2134, 0xBC920356, 0x0438468B,
0xCE804692, 0x762A034F, 0x4FA3212D, 0xF70964F0,
0xDBD2201F, 0x637865C2, 0x5AF147A0, 0xE25B027D,
0x28E30264, 0x904947B9, 0xA9C065DB, 0x116A2006,
0x8B1425D7, 0x33BE600A, 0x0A374268, 0xB29D07B5,
0x782507AC, 0xC08F4271, 0xF9066013, 0x41AC25CE,
0x6D776121, 0xD5DD24FC, 0xEC54069E, 0x54FE4343,
0x9E46435A, 0x26EC0687, 0x1F6524E5, 0xA7CF6138,
0xB6A5413E, 0x0E0F04E3, 0x37862681, 0x8F2C635C,
0x45946345, 0xFD3E2698, 0xC4B704FA, 0x7C1D4127,
0x50C605C8, 0xE86C4015, 0xD1E56277, 0x694F27AA,
0xA3F727B3, 0x1B5D626E, 0x22D4400C, 0x9A7E05D1,
0xE75FA6AB, 0x5FF5E376, 0x667CC114, 0xDED684C9,
0x146E84D0, 0xACC4C10D, 0x954DE36F, 0x2DE7A6B2,
0x013CE25D, 0xB996A780, 0x801F85E2, 0x38B5C03F,
0xF20DC026, 0x4AA785FB, 0x732EA799, 0xCB84E244,
0xDAEEC242, 0x6244879F, 0x5BCDA5FD, 0xE367E020,
0x29DFE039, 0x9175A5E4, 0xA8FC8786, 0x1056C25B,
0x3C8D86B4, 0x8427C369, 0xBDAEE10B, 0x0504A4D6,
0xCFBCA4CF, 0x7716E112, 0x4E9FC370, 0xF63586AD,
0x6C4B837C, 0xD4E1C6A1, 0xED68E4C3, 0x55C2A11E,
0x9F7AA107, 0x27D0E4DA, 0x1E59C6B8, 0xA6F38365,
0x8A28C78A, 0x32828257, 0x0B0BA035, 0xB3A1E5E8,
0x7919E5F1, 0xC1B3A02C, 0xF83A824E, 0x4090C793,
0x51FAE795, 0xE950A248, 0xD0D9802A, 0x6873C5F7,
0xA2CBC5EE, 0x1A618033, 0x23E8A251, 0x9B42E78C,
0xB799A363, 0x0F33E6BE, 0x36BAC4DC, 0x8E108101,
0x44A88118, 0xFC02C4C5, 0xC58BE6A7, 0x7D21A37A,
0x3FC9A052, 0x8763E58F, 0xBEEAC7ED, 0x06408230,
0xCCF88229, 0x7452C7F4, 0x4DDBE596, 0xF571A04B,
0xD9AAE4A4, 0x6100A179, 0x5889831B, 0xE023C6C6,
0x2A9BC6DF, 0x92318302, 0xABB8A160, 0x1312E4BD,
0x0278C4BB, 0xBAD28166, 0x835BA304, 0x3BF1E6D9,
0xF149E6C0, 0x49E3A31D, 0x706A817F, 0xC8C0C4A2,
0xE41B804D, 0x5CB1C590, 0x6538E7F2, 0xDD92A22F,
0x172AA236, 0xAF80E7EB, 0x9609C589, 0x2EA38054,
0xB4DD8585, 0x0C77C058, 0x35FEE23A, 0x8D54A7E7,
0x47ECA7FE, 0xFF46E223, 0xC6CFC041, 0x7E65859C,
0x52BEC173, 0xEA1484AE, 0xD39DA6CC, 0x6B37E311,
0xA18FE308, 0x1925A6D5, 0x20AC84B7, 0x9806C16A,
0x896CE16C, 0x31C6A4B1, 0x084F86D3, 0xB0E5C30E,
0x7A5DC317, 0xC2F786CA, 0xFB7EA4A8, 0x43D4E175,
0x6F0FA59A, 0xD7A5E047, 0xEE2CC225, 0x568687F8,
0x9C3E87E1, 0x2494C23C, 0x1D1DE05E, 0xA5B7A583,
0xD89606F9, 0x603C4324, 0x59B56146, 0xE11F249B,
0x2BA72482, 0x930D615F, 0xAA84433D, 0x122E06E0,
0x3EF5420F, 0x865F07D2, 0xBFD625B0, 0x077C606D,
0xCDC46074, 0x756E25A9, 0x4CE707CB, 0xF44D4216,
0xE5276210, 0x5D8D27CD, 0x640405AF, 0xDCAE4072,
0x1616406B, 0xAEBC05B6, 0x973527D4, 0x2F9F6209,
0x034426E6, 0xBBEE633B, 0x82674159, 0x3ACD0484,
0xF075049D, 0x48DF4140, 0x71566322, 0xC9FC26FF,
0x5382232E, 0xEB2866F3, 0xD2A14491, 0x6A0B014C,
0xA0B30155, 0x18194488, 0x219066EA, 0x993A2337,
0xB5E167D8, 0x0D4B2205, 0x34C20067, 0x8C6845BA,
0x46D045A3, 0xFE7A007E, 0xC7F3221C, 0x7F5967C1,
0x6E3347C7, 0xD699021A, 0xEF102078, 0x57BA65A5,
0x9D0265BC, 0x25A82061, 0x1C210203, 0xA48B47DE,
0x88500331, 0x30FA46EC, 0x0973648E, 0xB1D92153,
0x7B61214A, 0xC3CB6497, 0xFA4246F5, 0x42E80328,
},
{
0x00000000, 0xAC6F1138, 0x58DF2270, 0xF4B03348,
0xB0BE45E0, 0x1CD154D8, 0xE8616790, 0x440E76A8,
0x910B67C5, 0x3D6476FD, 0xC9D445B5, 0x65BB548D,
0x21B52225, 0x8DDA331D, 0x796A0055, 0xD505116D,
0xD361228F, 0x7F0E33B7, 0x8BBE00FF, 0x27D111C7,
0x63DF676F, 0xCFB07657, 0x3B00451F, 0x976F5427,
0x426A454A, 0xEE055472, 0x1AB5673A, 0xB6DA7602,
0xF2D400AA, 0x5EBB1192, 0xAA0B22DA, 0x066433E2,
0x57B5A81B, 0xFBDAB923, 0x0F6A8A6B, 0xA3059B53,
0xE70BEDFB, 0x4B64FCC3, 0xBFD4CF8B, 0x13BBDEB3,
0xC6BECFDE, 0x6AD1DEE6, 0x9E61EDAE, 0x320EFC96,
0x76008A3E, 0xDA6F9B06, 0x2EDFA84E, 0x82B0B976,
0x84D48A94, 0x28BB9BAC, 0xDC0BA8E4, 0x7064B9DC,
0x346ACF74, 0x9805DE4C, 0x6CB5ED04, 0xC0DAFC3C,
0x15DFED51, 0xB9B0FC69, 0x4D00CF21, 0xE16FDE19,
0xA561A8B1, 0x090EB989, 0xFDBE8AC1, 0x51D19BF9,
0xAE6A5137, 0x0205400F, 0xF6B57347, 0x5ADA627F,
0x1ED414D7, 0xB2BB05EF, 0x460B36A7, 0xEA64279F,
0x3F6136F2, 0x930E27CA, 0x67BE1482, 0xCBD105BA,
0x8FDF7312, 0x23B0622A, 0xD7005162, 0x7B6F405A,
0x7D0B73B8, 0xD1646280, 0x25D451C8, 0x89BB40F0,
0xCDB53658, 0x61DA2760, 0x956A1428, 0x39050510,
0xEC00147D, 0x406F0545, 0xB4DF360D, 0x18B02735,
0x5CBE519D, 0xF0D140A5, 0x046173ED, 0xA80E62D5,
0xF9DFF92C, 0x55B0E814, 0xA100DB5C, 0x0D6FCA64,
0x4961BCCC, 0xE50EADF4, 0x11BE9EBC, 0xBDD18F84,
0x68D49EE9, 0xC4BB8FD1, 0x300BBC99, 0x9C64ADA1,
0xD86ADB09, 0x7405CA31, 0x80B5F979, 0x2CDAE841,
0x2ABEDBA3, 0x86D1CA9B, 0x7261F9D3, 0xDE0EE8EB,
0x9A009E43, 0x366F8F7B, 0xC2DFBC33, 0x6EB0AD0B,
0xBBB5BC66, 0x17DAAD5E, 0xE36A9E16, 0x4F058F2E,
0x0B0BF986, 0xA764E8BE, 0x53D4DBF6, 0xFFBBCACE,
0x5CD5A26E, 0xF0BAB356, 0x040A801E, 0xA8659126,
0xEC6BE78E, 0x4004F6B6, 0xB4B4C5FE, 0x18DBD4C6,
0xCDDEC5AB, 0x61B1D493, 0x9501E7DB, 0x396EF6E3,
0x7D60804B, 0xD10F9173, 0x25BFA23B, 0x89D0B303,
0x8FB480E1, 0x23DB91D9, 0xD76BA291, 0x7B04B3A9,
0x3F0AC501, 0x9365D439, 0x67D5E771, 0xCBBAF649,
0x1EBFE724, 0xB2D0F61C, 0x4660C554, 0xEA0FD46C,
0xAE01A2C4, 0x026EB3FC, 0xF6DE80B4, 0x5AB1918C,
0x0B600A75, 0xA70F1B4D, 0x53BF2805, 0xFFD0393D,
0xBBDE4F95, 0x17B15EAD, 0xE3016DE5, 0x4F6E7CDD,
0x9A6B6DB0, 0x36047C88, 0xC2B44FC0, 0x6EDB5EF8,
0x2AD52850, 0x86BA3968, 0x720A0A20, 0xDE651B18,
0xD80128FA, 0x746E39C2, 0x80DE0A8A, 0x2CB11BB2,
0x68BF6D1A, 0xC4D07C22, 0x30604F6A, 0x9C0F5E52,
0x490A4F3F, 0xE5655E07, 0x11D56D4F, 0xBDBA7C77,
0xF9B40ADF, 0x55DB1BE7, 0xA16B28AF, 0x0D043997,
0xF2BFF359, 0x5ED0E261, 0xAA60D129, 0x060FC011,
0x4201B6B9, 0xEE6EA781, 0x1ADE94C9, 0xB6B185F1,
0x63B4949C, 0xCFDB85A4, 0x3B6BB6EC, 0x9704A7D4,
0xD30AD17C, 0x7F65C044, 0x8BD5F30C, 0x27BAE234,
0x21DED1D6, 0x8DB1C0EE, 0x7901F3A6, 0xD56EE29E,
0x91609436, 0x3D0F850E, 0xC9BFB646, 0x65D0A77E,
0xB0D5B613, 0x1CBAA72B, 0xE80A9463, 0x4465855B,
0x006BF3F3, 0xAC04E2CB, 0x58B4D183, 0xF4DBC0BB,
0xA50A5B42, 0x09654A7A, 0xFDD57932, 0x51BA680A,
0x15B41EA2, 0xB9DB0F9A, 0x4D6B3CD2, 0xE1042DEA,
0x34013C87, 0x986E2DBF, 0x6CDE1EF7, 0xC0B10FCF,
0x84BF7967, 0x28D0685F, 0xDC605B17, 0x700F4A2F,
0x766B79CD, 0xDA0468F5, 0x2EB45BBD, 0x82DB4A85,
0xC6D53C2D, 0x6ABA2D15, 0x9E0A1E5D, 0x32650F65,
0xE7601E08, 0x4B0F0F30, 0xBFBF3C78, 0x13D02D40,
0x57DE5BE8, 0xFBB14AD0, 0x0F017998, 0xA36E68A0,
},
{
0x00000000, 0x196B30EF, 0xC3A08CDB, 0xDACBBC34,
0x7737F5B2, 0x6E5CC55D, 0xB4977969, 0xADFC4986,
0x1F180660, 0x0673368F, 0xDCB88ABB, 0xC5D3BA54,
0x682FF3D2, 0x7144C33D, 0xAB8F7F09, 0xB2E44FE6,
0x3E300CC0, 0x275B3C2F, 0xFD90801B, 0xE4FBB0F4,
0x4907F972, 0x506CC99D, 0x8AA775A9, 0x93CC4546,
0x21280AA0, 0x38433A4F, 0xE288867B, 0xFBE3B694,
0x561FFF12, 0x4F74CFFD, 0x95BF73C9, 0x8CD44326,
0x8D16F485, 0x947DC46A, 0x4EB6785E, 0x57DD48B1,
0xFA210137, 0xE34A31D8, 0x39818DEC, 0x20EABD03,
0x920EF2E5, 0x8B65C20A, 0x51AE7E3E, 0x48C54ED1,
0xE5390757, 0xFC5237B8, 0x26998B8C, 0x3FF2BB63,
0xB326F845, 0xAA4DC8AA, 0x7086749E, 0x69ED4471,
0xC4110DF7, 0xDD7A3D18, 0x07B1812C, 0x1EDAB1C3,
0xAC3EFE25, 0xB555CECA, 0x6F9E72FE, 0x76F54211,
0xDB090B97, 0xC2623B78, 0x18A9874C, 0x01C2B7A3,
0xEB5B040E, 0xF23034E1, 0x28FB88D5, 0x3190B83A,
0x9C6CF1BC, 0x8507C153, 0x5FCC7D67, 0x46A74D88,
0xF443026E, 0xED283281, 0x37E38EB5, 0x2E88BE5A,
0x8374F7DC, 0x9A1FC733, 0x40D47B07, 0x59BF4BE8,
0xD56B08CE, 0xCC003821, 0x16CB8415, 0x0FA0B4FA,
0xA25CFD7C, 0xBB37CD93, 0x61FC71A7, 0x78974148,
0xCA730EAE, 0xD3183E41, 0x09D38275, 0x10B8B29A,
0xBD44FB1C, 0xA42FCBF3, 0x7EE477C7, 0x678F4728,
0x664DF08B, 0x7F26C064, 0xA5ED7C50, 0xBC864CBF,
0x117A0539, 0x081135D6, 0xD2DA89E2, 0xCBB1B90D,
0x7955F6EB, 0x603EC604, 0xBAF57A30, 0xA39E4ADF,
0x0E620359, 0x170933B6, 0xCDC28F82, 0xD4A9BF6D,
0x587DFC4B, 0x4116CCA4, 0x9BDD7090, 0x82B6407F,
0x2F4A09F9, 0x36213916, 0xECEA8522, 0xF581B5CD,
0x4765FA2B, 0x5E0ECAC4, 0x84C576F0, 0x9DAE461F,
0x30520F99, 0x29393F76, 0xF3F28342, 0xEA99B3AD,
0xD6B7081C, 0xCFDC38F3, 0x151784C7, 0x0C7CB428,
0xA180FDAE, 0xB8EBCD41, 0x62207175, 0x7B4B419A,
0xC9AF0E7C, 0xD0C43E93, 0x0A0F82A7, 0x1364B248,
0xBE98FBCE, 0xA7F3CB21, 0x7D387715, 0x645347FA,
0xE88704DC, 0xF1EC3433, 0x2B278807, 0x324CB8E8,
0x9FB0F16E, 0x86DBC181, 0x5C107DB5, 0x457B4D5A,
0xF79F02BC, 0xEEF43253, 0x343F8E67, 0x2D54BE88,
0x80A8F70E, 0x99C3C7E1, 0x43087BD5, 0x5A634B3A,
0x5BA1FC99, 0x42CACC76, 0x98017042, 0x816A40AD,
0x2C96092B, 0x35FD39C4, 0xEF3685F0, 0xF65DB51F,
0x44B9FAF9, 0x5DD2CA16, 0x87197622, 0x9E7246CD,
0x338E0F4B, 0x2AE53FA4, 0xF02E8390, 0xE945B37F,
0x6591F059, 0x7CFAC0B6, 0xA6317C82, 0xBF5A4C6D,
0x12A605EB, 0x0BCD3504, 0xD1068930, 0xC86DB9DF,
0x7A89F639, 0x63E2C6D6, 0xB9297AE2, 0xA0424A0D,
0x0DBE038B, 0x14D53364, 0xCE1E8F50, 0xD775BFBF,
0x3DEC0C12, 0x24873CFD, 0xFE4C80C9, 0xE727B026,
0x4ADBF9A0, 0x53B0C94F, 0x897B757B, 0x90104594,
0x22F40A72, 0x3B9F3A9D, 0xE15486A9, 0xF83FB646,
0x55C3FFC0, 0x4CA8CF2F, 0x9663731B, 0x8F0843F4,
0x03DC00D2, 0x1AB7303D, 0xC07C8C09, 0xD917BCE6,
0x74EBF560, 0x6D80C58F, 0xB74B79BB, 0xAE204954,
0x1CC406B2, 0x05AF365D, 0xDF648A69, 0xC60FBA86,
0x6BF3F300, 0x7298C3EF, 0xA8537FDB, 0xB1384F34,
0xB0FAF897, 0xA991C878, 0x735A744C, 0x6A3144A3,
0xC7CD0D25, 0xDEA63DCA, 0x046D81FE, 0x1D06B111,
0xAFE2FEF7, 0xB689CE18, 0x6C42722C, 0x752942C3,
0xD8D50B45, 0xC1BE3BAA, 0x1B75879E, 0x021EB771,
0x8ECAF457, 0x97A1C4B8, 0x4D6A788C, 0x54014863,
0xF9FD01E5, 0xE096310A, 0x3A5D8D3E, 0x2336BDD1,
0x91D2F237, 0x88B9C2D8, 0x52727EEC, 0x4B194E03,
0xE6E50785, 0xFF8E376A, 0x25458B5E, 0x3C2EBBB1,
},
{
0x00000000, 0xC82C0368, 0x905906D0, 0x587505B8,
0xD1C5E0A5, 0x19E9E3CD, 0x419CE675, 0x89B0E51D,
0x53FD2D4E, 0x9BD12E26, 0xC3A42B9E, 0x0B8828F6,
0x8238CDEB, 0x4A14CE83, 0x1261CB3B, 0xDA4DC853,
0xA6FA5B9C, 0x6ED658F4, 0x36A35D4C, 0xFE8F5E24,
0x773FBB39, 0xBF13B851, 0xE766BDE9, 0x2F4ABE81,
0xF50776D2, 0x3D2B75BA, 0x655E7002, 0xAD72736A,
0x24C29677, 0xECEE951F, 0xB49B90A7, 0x7CB793CF,
0xBD835B3D, 0x75AF5855, 0x2DDA5DED, 0xE5F65E85,
0x6C46BB98, 0xA46AB8F0, 0xFC1FBD48, 0x3433BE20,
0xEE7E7673, 0x2652751B, 0x7E2770A3, 0xB60B73CB,
0x3FBB96D6, 0xF79795BE, 0xAFE29006, 0x67CE936E,
0x1B7900A1, 0xD35503C9, 0x8B200671, 0x430C0519,
0xCABCE004, 0x0290E36C, 0x5AE5E6D4, 0x92C9E5BC,
0x48842DEF, 0x80A82E87, 0xD8DD2B3F, 0x10F12857,
0x9941CD4A, 0x516DCE22, 0x0918CB9A, 0xC134C8F2,
0x7A07B77A, 0xB22BB412, 0xEA5EB1AA, 0x2272B2C2,
0xABC257DF, 0x63EE54B7, 0x3B9B510F, 0xF3B75267,
0x29FA9A34, 0xE1D6995C, 0xB9A39CE4, 0x718F9F8C,
0xF83F7A91, 0x301379F9, 0x68667C41, 0xA04A7F29,
0xDCFDECE6, 0x14D1EF8E, 0x4CA4EA36, 0x8488E95E,
0x0D380C43, 0xC5140F2B, 0x9D610A93, 0x554D09FB,
0x8F00C1A8, 0x472CC2C0, 0x1F59C778, 0xD775C410,
0x5EC5210D, 0x96E92265, 0xCE9C27DD, 0x06B024B5,
0xC784EC47, 0x0FA8EF2F, 0x57DDEA97, 0x9FF1E9FF,
0x16410CE2, 0xDE6D0F8A, 0x86180A32, 0x4E34095A,
0x9479C109, 0x5C55C261, 0x0420C7D9, 0xCC0CC4B1,
0x45BC21AC, 0x8D9022C4, 0xD5E5277C, 0x1DC92414,
0x617EB7DB, 0xA952B4B3, 0xF127B10B, 0x390BB263,
0xB0BB577E, 0x78975416, 0x20E251AE, 0xE8CE52C6,
0x32839A95, 0xFAAF99FD, 0xA2DA9C45, 0x6AF69F2D,
0xE3467A30, 0x2B6A7958, 0x731F7CE0, 0xBB337F88,
0xF40E6EF5, 0x3C226D9D, 0x64576825, 0xAC7B6B4D,
0x25CB8E50, 0xEDE78D38, 0xB5928880, 0x7DBE8BE8,
0xA7F343BB, 0x6FDF40D3, 0x37AA456B, 0xFF864603,
0x7636A31E, 0xBE1AA076, 0xE66FA5CE, 0x2E43A6A6,
0x52F43569, 0x9AD83601, 0xC2AD33B9, 0x0A8130D1,
0x8331D5CC, 0x4B1DD6A4, 0x1368D31C, 0xDB44D074,
0x01091827, 0xC9251B4F, 0x91501EF7, 0x597C1D9F,
0xD0CCF882, 0x18E0FBEA, 0x4095FE52, 0x88B9FD3A,
0x498D35C8, 0x81A136A0, 0xD9D43318, 0x11F83070,
0x9848D56D, 0x5064D605, 0x0811D3BD, 0xC03DD0D5,
0x1A701886, 0xD25C1BEE, 0x8A291E56, 0x42051D3E,
0xCBB5F823, 0x0399FB4B, 0x5BECFEF3, 0x93C0FD9B,
0xEF776E54, 0x275B6D3C, 0x7F2E6884, 0xB7026BEC,
0x3EB28EF1, 0xF69E8D99, 0xAEEB8821, 0x66C78B49,
0xBC8A431A, 0x74A64072, 0x2CD345CA, 0xE4FF46A2,
0x6D4FA3BF, 0xA563A0D7, 0xFD16A56F, 0x353AA607,
0x8E09D98F, 0x4625DAE7, 0x1E50DF5F, 0xD67CDC37,
0x5FCC392A, 0x97E03A42, 0xCF953FFA, 0x07B93C92,
0xDDF4F4C1, 0x15D8F7A9, 0x4DADF211, 0x8581F179,
0x0C311464, 0xC41D170C, 0x9C6812B4, 0x544411DC,
0x28F38213, 0xE0DF817B, 0xB8AA84C3, 0x708687AB,
0xF93662B6, 0x311A61DE, 0x696F6466, 0xA143670E,
0x7B0EAF5D, 0xB322AC35, 0xEB57A98D, 0x237BAAE5,
0xAACB4FF8, 0x62E74C90, 0x3A924928, 0xF2BE4A40,
0x338A82B2, 0xFBA681DA, 0xA3D38462, 0x6BFF870A,
0xE24F6217, 0x2A63617F, 0x721664C7, 0xBA3A67AF,
0x6077AFFC, 0xA85BAC94, 0xF02EA92C, 0x3802AA44,
0xB1B24F59, 0x799E4C31, 0x21EB4989, 0xE9C74AE1,
0x9570D92E, 0x5D5CDA46, 0x0529DFFE, 0xCD05DC96,
0x44B5398B, 0x8C993AE3, 0xD4EC3F5B, 0x1CC03C33,
0xC68DF460, 0x0EA1F708, 0x56D4F2B0, 0x9EF8F1D8,
0x174814C5, 0xDF6417AD, 0x87111215, 0x4F3D117D,
},
{
0x00000000, 0x277D3C49, 0x4EFA7892, 0x698744DB,
0x6D821D21, 0x4AFF2168, 0x237865B3, 0x040559FA,
0xDA043B42, 0xFD79070B, 0x94FE43D0, 0xB3837F99,
0xB7862663, 0x90FB1A2A, 0xF97C5EF1, 0xDE0162B8,
0xB4097684, 0x93744ACD, 0xFAF30E16, 0xDD8E325F,
0xD98B6BA5, 0xFEF657EC, 0x97711337, 0xB00C2F7E,
0x6E0D4DC6, 0x4970718F, 0x20F73554, 0x078A091D,
0x038F50E7, 0x24F26CAE, 0x4D752875, 0x6A08143C,
0x9965000D, 0xBE183C44, 0xD79F789F, 0xF0E244D6,
0xF4E71D2C, 0xD39A2165, 0xBA1D65BE, 0x9D6059F7,
0x43613B4F, 0x641C0706, 0x0D9B43DD, 0x2AE67F94,
0x2EE3266E, 0x099E1A27, 0x60195EFC, 0x476462B5,
0x2D6C7689, 0x0A114AC0, 0x63960E1B, 0x44EB3252,
0x40EE6BA8, 0x679357E1, 0x0E14133A, 0x29692F73,
0xF7684DCB, 0xD0157182, 0xB9923559, 0x9EEF0910,
0x9AEA50EA, 0xBD976CA3, 0xD4102878, 0xF36D1431,
0x32CB001A, 0x15B63C53, 0x7C317888, 0x5B4C44C1,
0x5F491D3B, 0x78342172, 0x11B365A9, 0x36CE59E0,
0xE8CF3B58, 0xCFB20711, 0xA63543CA, 0x81487F83,
0x854D2679, 0xA2301A30, 0xCBB75EEB, 0xECCA62A2,
0x86C2769E, 0xA1BF4AD7, 0xC8380E0C, 0xEF453245,
0xEB406BBF, 0xCC3D57F6, 0xA5BA132D, 0x82C72F64,
0x5CC64DDC, 0x7BBB7195, 0x123C354E, 0x35410907,
0x314450FD, 0x16396CB4, 0x7FBE286F, 0x58C31426,
0xABAE0017, 0x8CD33C5E, 0xE5547885, 0xC22944CC,
0xC62C1D36, 0xE151217F, 0x88D665A4, 0xAFAB59ED,
0x71AA3B55, 0x56D7071C, 0x3F5043C7, 0x182D7F8E,
0x1C282674, 0x3B551A3D, 0x52D25EE6, 0x75AF62AF,
0x1FA77693, 0x38DA4ADA, 0x515D0E01, 0x76203248,
0x72256BB2, 0x555857FB, 0x3CDF1320, 0x1BA22F69,
0xC5A34DD1, 0xE2DE7198, 0x8B593543, 0xAC24090A,
0xA82150F0, 0x8F5C6CB9, 0xE6DB2862, 0xC1A6142B,
0x64960134, 0x43EB3D7D, 0x2A6C79A6, 0x0D1145EF,
0x09141C15, 0x2E69205C, 0x47EE6487, 0x609358CE,
0xBE923A76, 0x99EF063F, 0xF06842E4, 0xD7157EAD,
0xD3102757, 0xF46D1B1E, 0x9DEA5FC5, 0xBA97638C,
0xD09F77B0, 0xF7E24BF9, 0x9E650F22, 0xB918336B,
0xBD1D6A91, 0x9A6056D8, 0xF3E71203, 0xD49A2E4A,
0x0A9B4CF2, 0x2DE670BB, 0x44613460, 0x631C0829,
0x671951D3, 0x40646D9A, 0x29E32941, 0x0E9E1508,
0xFDF30139, 0xDA8E3D70, 0xB30979AB, 0x947445E2,
0x90711C18, 0xB70C2051, 0xDE8B648A, 0xF9F658C3,
0x27F73A7B, 0x008A0632, 0x690D42E9, 0x4E707EA0,
0x4A75275A, 0x6D081B13, 0x048F5FC8, 0x23F26381,
0x49FA77BD, 0x6E874BF4, 0x07000F2F, 0x207D3366,
0x24786A9C, 0x030556D5, 0x6A82120E, 0x4DFF2E47,
0x93FE4CFF, 0xB48370B6, 0xDD04346D, 0xFA790824,
0xFE7C51DE, 0xD9016D97, 0xB086294C, 0x97FB1505,
0x565D012E, 0x71203D67, 0x18A779BC, 0x3FDA45F5,
0x3BDF1C0F, 0x1CA22046, 0x7525649D, 0x525858D4,
0x8C593A6C, 0xAB240625, 0xC2A342FE, 0xE5DE7EB7,
0xE1DB274D, 0xC6A61B04, 0xAF215FDF, 0x885C6396,
0xE25477AA, 0xC5294BE3, 0xACAE0F38, 0x8BD33371,
0x8FD66A8B, 0xA8AB56C2, 0xC12C1219, 0xE6512E50,
0x38504CE8, 0x1F2D70A1, 0x76AA347A, 0x51D70833,
0x55D251C9, 0x72AF6D80, 0x1B28295B, 0x3C551512,
0xCF380123, 0xE8453D6A, 0x81C279B1, 0xA6BF45F8,
0xA2BA1C02, 0x85C7204B, 0xEC406490, 0xCB3D58D9,
0x153C3A61, 0x32410628, 0x5BC642F3, 0x7CBB7EBA,
0x78BE2740, 0x5FC31B09, 0x36445FD2, 0x1139639B,
0x7B3177A7, 0x5C4C4BEE, 0x35CB0F35, 0x12B6337C,
0x16B36A86, 0x31CE56CF, 0x58491214, 0x7F342E5D,
0xA1354CE5, 0x864870AC, 0xEFCF3477, 0xC8B2083E,
0xCCB751C4, 0xEBCA6D8D, 0x824D2956, 0xA530151F
}
Phase 2 of pgindent updates. Change pg_bsd_indent to follow upstream rules for placement of comments to the right of code, and remove pgindent hack that caused comments following #endif to not obey the general rule. Commit e3860ffa4dd0dad0dd9eea4be9cc1412373a8c89 wasn't actually using the published version of pg_bsd_indent, but a hacked-up version that tried to minimize the amount of movement of comments to the right of code. The situation of interest is where such a comment has to be moved to the right of its default placement at column 33 because there's code there. BSD indent has always moved right in units of tab stops in such cases --- but in the previous incarnation, indent was working in 8-space tab stops, while now it knows we use 4-space tabs. So the net result is that in about half the cases, such comments are placed one tab stop left of before. This is better all around: it leaves more room on the line for comment text, and it means that in such cases the comment uniformly starts at the next 4-space tab stop after the code, rather than sometimes one and sometimes two tabs after. Also, ensure that comments following #endif are indented the same as comments following other preprocessor commands such as #else. That inconsistency turns out to have been self-inflicted damage from a poorly-thought-through post-indent "fixup" in pgindent. This patch is much less interesting than the first round of indent changes, but also bulkier, so I thought it best to separate the effects. Discussion: https://postgr.es/m/E1dAmxK-0006EE-1r@gemulon.postgresql.org Discussion: https://postgr.es/m/30527.1495162840@sss.pgh.pa.us
2017-06-21 21:18:54 +02:00
#endif /* WORDS_BIGENDIAN */
};