2154 lines
42 KiB
C++
2154 lines
42 KiB
C++
// Copyright (c) 2012-2020 Wojciech Figat. All rights reserved.
|
|
|
|
#include "Crc.h"
|
|
#include "Engine/Core/Math/Math.h"
|
|
#include "Engine/Platform/Platform.h"
|
|
|
|
// CRC 32 polynomial
|
|
enum { Crc32Poly = 0x04c11db7 };
|
|
|
|
uint32 Crc::CRCTablesSB8[8][256] =
|
|
{
|
|
{
|
|
0x00000000,
|
|
0x77073096,
|
|
0xee0e612c,
|
|
0x990951ba,
|
|
0x076dc419,
|
|
0x706af48f,
|
|
0xe963a535,
|
|
0x9e6495a3,
|
|
0x0edb8832,
|
|
0x79dcb8a4,
|
|
0xe0d5e91e,
|
|
0x97d2d988,
|
|
0x09b64c2b,
|
|
0x7eb17cbd,
|
|
0xe7b82d07,
|
|
0x90bf1d91,
|
|
0x1db71064,
|
|
0x6ab020f2,
|
|
0xf3b97148,
|
|
0x84be41de,
|
|
0x1adad47d,
|
|
0x6ddde4eb,
|
|
0xf4d4b551,
|
|
0x83d385c7,
|
|
0x136c9856,
|
|
0x646ba8c0,
|
|
0xfd62f97a,
|
|
0x8a65c9ec,
|
|
0x14015c4f,
|
|
0x63066cd9,
|
|
0xfa0f3d63,
|
|
0x8d080df5,
|
|
0x3b6e20c8,
|
|
0x4c69105e,
|
|
0xd56041e4,
|
|
0xa2677172,
|
|
0x3c03e4d1,
|
|
0x4b04d447,
|
|
0xd20d85fd,
|
|
0xa50ab56b,
|
|
0x35b5a8fa,
|
|
0x42b2986c,
|
|
0xdbbbc9d6,
|
|
0xacbcf940,
|
|
0x32d86ce3,
|
|
0x45df5c75,
|
|
0xdcd60dcf,
|
|
0xabd13d59,
|
|
0x26d930ac,
|
|
0x51de003a,
|
|
0xc8d75180,
|
|
0xbfd06116,
|
|
0x21b4f4b5,
|
|
0x56b3c423,
|
|
0xcfba9599,
|
|
0xb8bda50f,
|
|
0x2802b89e,
|
|
0x5f058808,
|
|
0xc60cd9b2,
|
|
0xb10be924,
|
|
0x2f6f7c87,
|
|
0x58684c11,
|
|
0xc1611dab,
|
|
0xb6662d3d,
|
|
0x76dc4190,
|
|
0x01db7106,
|
|
0x98d220bc,
|
|
0xefd5102a,
|
|
0x71b18589,
|
|
0x06b6b51f,
|
|
0x9fbfe4a5,
|
|
0xe8b8d433,
|
|
0x7807c9a2,
|
|
0x0f00f934,
|
|
0x9609a88e,
|
|
0xe10e9818,
|
|
0x7f6a0dbb,
|
|
0x086d3d2d,
|
|
0x91646c97,
|
|
0xe6635c01,
|
|
0x6b6b51f4,
|
|
0x1c6c6162,
|
|
0x856530d8,
|
|
0xf262004e,
|
|
0x6c0695ed,
|
|
0x1b01a57b,
|
|
0x8208f4c1,
|
|
0xf50fc457,
|
|
0x65b0d9c6,
|
|
0x12b7e950,
|
|
0x8bbeb8ea,
|
|
0xfcb9887c,
|
|
0x62dd1ddf,
|
|
0x15da2d49,
|
|
0x8cd37cf3,
|
|
0xfbd44c65,
|
|
0x4db26158,
|
|
0x3ab551ce,
|
|
0xa3bc0074,
|
|
0xd4bb30e2,
|
|
0x4adfa541,
|
|
0x3dd895d7,
|
|
0xa4d1c46d,
|
|
0xd3d6f4fb,
|
|
0x4369e96a,
|
|
0x346ed9fc,
|
|
0xad678846,
|
|
0xda60b8d0,
|
|
0x44042d73,
|
|
0x33031de5,
|
|
0xaa0a4c5f,
|
|
0xdd0d7cc9,
|
|
0x5005713c,
|
|
0x270241aa,
|
|
0xbe0b1010,
|
|
0xc90c2086,
|
|
0x5768b525,
|
|
0x206f85b3,
|
|
0xb966d409,
|
|
0xce61e49f,
|
|
0x5edef90e,
|
|
0x29d9c998,
|
|
0xb0d09822,
|
|
0xc7d7a8b4,
|
|
0x59b33d17,
|
|
0x2eb40d81,
|
|
0xb7bd5c3b,
|
|
0xc0ba6cad,
|
|
0xedb88320,
|
|
0x9abfb3b6,
|
|
0x03b6e20c,
|
|
0x74b1d29a,
|
|
0xead54739,
|
|
0x9dd277af,
|
|
0x04db2615,
|
|
0x73dc1683,
|
|
0xe3630b12,
|
|
0x94643b84,
|
|
0x0d6d6a3e,
|
|
0x7a6a5aa8,
|
|
0xe40ecf0b,
|
|
0x9309ff9d,
|
|
0x0a00ae27,
|
|
0x7d079eb1,
|
|
0xf00f9344,
|
|
0x8708a3d2,
|
|
0x1e01f268,
|
|
0x6906c2fe,
|
|
0xf762575d,
|
|
0x806567cb,
|
|
0x196c3671,
|
|
0x6e6b06e7,
|
|
0xfed41b76,
|
|
0x89d32be0,
|
|
0x10da7a5a,
|
|
0x67dd4acc,
|
|
0xf9b9df6f,
|
|
0x8ebeeff9,
|
|
0x17b7be43,
|
|
0x60b08ed5,
|
|
0xd6d6a3e8,
|
|
0xa1d1937e,
|
|
0x38d8c2c4,
|
|
0x4fdff252,
|
|
0xd1bb67f1,
|
|
0xa6bc5767,
|
|
0x3fb506dd,
|
|
0x48b2364b,
|
|
0xd80d2bda,
|
|
0xaf0a1b4c,
|
|
0x36034af6,
|
|
0x41047a60,
|
|
0xdf60efc3,
|
|
0xa867df55,
|
|
0x316e8eef,
|
|
0x4669be79,
|
|
0xcb61b38c,
|
|
0xbc66831a,
|
|
0x256fd2a0,
|
|
0x5268e236,
|
|
0xcc0c7795,
|
|
0xbb0b4703,
|
|
0x220216b9,
|
|
0x5505262f,
|
|
0xc5ba3bbe,
|
|
0xb2bd0b28,
|
|
0x2bb45a92,
|
|
0x5cb36a04,
|
|
0xc2d7ffa7,
|
|
0xb5d0cf31,
|
|
0x2cd99e8b,
|
|
0x5bdeae1d,
|
|
0x9b64c2b0,
|
|
0xec63f226,
|
|
0x756aa39c,
|
|
0x026d930a,
|
|
0x9c0906a9,
|
|
0xeb0e363f,
|
|
0x72076785,
|
|
0x05005713,
|
|
0x95bf4a82,
|
|
0xe2b87a14,
|
|
0x7bb12bae,
|
|
0x0cb61b38,
|
|
0x92d28e9b,
|
|
0xe5d5be0d,
|
|
0x7cdcefb7,
|
|
0x0bdbdf21,
|
|
0x86d3d2d4,
|
|
0xf1d4e242,
|
|
0x68ddb3f8,
|
|
0x1fda836e,
|
|
0x81be16cd,
|
|
0xf6b9265b,
|
|
0x6fb077e1,
|
|
0x18b74777,
|
|
0x88085ae6,
|
|
0xff0f6a70,
|
|
0x66063bca,
|
|
0x11010b5c,
|
|
0x8f659eff,
|
|
0xf862ae69,
|
|
0x616bffd3,
|
|
0x166ccf45,
|
|
0xa00ae278,
|
|
0xd70dd2ee,
|
|
0x4e048354,
|
|
0x3903b3c2,
|
|
0xa7672661,
|
|
0xd06016f7,
|
|
0x4969474d,
|
|
0x3e6e77db,
|
|
0xaed16a4a,
|
|
0xd9d65adc,
|
|
0x40df0b66,
|
|
0x37d83bf0,
|
|
0xa9bcae53,
|
|
0xdebb9ec5,
|
|
0x47b2cf7f,
|
|
0x30b5ffe9,
|
|
0xbdbdf21c,
|
|
0xcabac28a,
|
|
0x53b39330,
|
|
0x24b4a3a6,
|
|
0xbad03605,
|
|
0xcdd70693,
|
|
0x54de5729,
|
|
0x23d967bf,
|
|
0xb3667a2e,
|
|
0xc4614ab8,
|
|
0x5d681b02,
|
|
0x2a6f2b94,
|
|
0xb40bbe37,
|
|
0xc30c8ea1,
|
|
0x5a05df1b,
|
|
0x2d02ef8d
|
|
},
|
|
{
|
|
0x00000000,
|
|
0x191b3141,
|
|
0x32366282,
|
|
0x2b2d53c3,
|
|
0x646cc504,
|
|
0x7d77f445,
|
|
0x565aa786,
|
|
0x4f4196c7,
|
|
0xc8d98a08,
|
|
0xd1c2bb49,
|
|
0xfaefe88a,
|
|
0xe3f4d9cb,
|
|
0xacb54f0c,
|
|
0xb5ae7e4d,
|
|
0x9e832d8e,
|
|
0x87981ccf,
|
|
0x4ac21251,
|
|
0x53d92310,
|
|
0x78f470d3,
|
|
0x61ef4192,
|
|
0x2eaed755,
|
|
0x37b5e614,
|
|
0x1c98b5d7,
|
|
0x05838496,
|
|
0x821b9859,
|
|
0x9b00a918,
|
|
0xb02dfadb,
|
|
0xa936cb9a,
|
|
0xe6775d5d,
|
|
0xff6c6c1c,
|
|
0xd4413fdf,
|
|
0xcd5a0e9e,
|
|
0x958424a2,
|
|
0x8c9f15e3,
|
|
0xa7b24620,
|
|
0xbea97761,
|
|
0xf1e8e1a6,
|
|
0xe8f3d0e7,
|
|
0xc3de8324,
|
|
0xdac5b265,
|
|
0x5d5daeaa,
|
|
0x44469feb,
|
|
0x6f6bcc28,
|
|
0x7670fd69,
|
|
0x39316bae,
|
|
0x202a5aef,
|
|
0x0b07092c,
|
|
0x121c386d,
|
|
0xdf4636f3,
|
|
0xc65d07b2,
|
|
0xed705471,
|
|
0xf46b6530,
|
|
0xbb2af3f7,
|
|
0xa231c2b6,
|
|
0x891c9175,
|
|
0x9007a034,
|
|
0x179fbcfb,
|
|
0x0e848dba,
|
|
0x25a9de79,
|
|
0x3cb2ef38,
|
|
0x73f379ff,
|
|
0x6ae848be,
|
|
0x41c51b7d,
|
|
0x58de2a3c,
|
|
0xf0794f05,
|
|
0xe9627e44,
|
|
0xc24f2d87,
|
|
0xdb541cc6,
|
|
0x94158a01,
|
|
0x8d0ebb40,
|
|
0xa623e883,
|
|
0xbf38d9c2,
|
|
0x38a0c50d,
|
|
0x21bbf44c,
|
|
0x0a96a78f,
|
|
0x138d96ce,
|
|
0x5ccc0009,
|
|
0x45d73148,
|
|
0x6efa628b,
|
|
0x77e153ca,
|
|
0xbabb5d54,
|
|
0xa3a06c15,
|
|
0x888d3fd6,
|
|
0x91960e97,
|
|
0xded79850,
|
|
0xc7cca911,
|
|
0xece1fad2,
|
|
0xf5facb93,
|
|
0x7262d75c,
|
|
0x6b79e61d,
|
|
0x4054b5de,
|
|
0x594f849f,
|
|
0x160e1258,
|
|
0x0f152319,
|
|
0x243870da,
|
|
0x3d23419b,
|
|
0x65fd6ba7,
|
|
0x7ce65ae6,
|
|
0x57cb0925,
|
|
0x4ed03864,
|
|
0x0191aea3,
|
|
0x188a9fe2,
|
|
0x33a7cc21,
|
|
0x2abcfd60,
|
|
0xad24e1af,
|
|
0xb43fd0ee,
|
|
0x9f12832d,
|
|
0x8609b26c,
|
|
0xc94824ab,
|
|
0xd05315ea,
|
|
0xfb7e4629,
|
|
0xe2657768,
|
|
0x2f3f79f6,
|
|
0x362448b7,
|
|
0x1d091b74,
|
|
0x04122a35,
|
|
0x4b53bcf2,
|
|
0x52488db3,
|
|
0x7965de70,
|
|
0x607eef31,
|
|
0xe7e6f3fe,
|
|
0xfefdc2bf,
|
|
0xd5d0917c,
|
|
0xcccba03d,
|
|
0x838a36fa,
|
|
0x9a9107bb,
|
|
0xb1bc5478,
|
|
0xa8a76539,
|
|
0x3b83984b,
|
|
0x2298a90a,
|
|
0x09b5fac9,
|
|
0x10aecb88,
|
|
0x5fef5d4f,
|
|
0x46f46c0e,
|
|
0x6dd93fcd,
|
|
0x74c20e8c,
|
|
0xf35a1243,
|
|
0xea412302,
|
|
0xc16c70c1,
|
|
0xd8774180,
|
|
0x9736d747,
|
|
0x8e2de606,
|
|
0xa500b5c5,
|
|
0xbc1b8484,
|
|
0x71418a1a,
|
|
0x685abb5b,
|
|
0x4377e898,
|
|
0x5a6cd9d9,
|
|
0x152d4f1e,
|
|
0x0c367e5f,
|
|
0x271b2d9c,
|
|
0x3e001cdd,
|
|
0xb9980012,
|
|
0xa0833153,
|
|
0x8bae6290,
|
|
0x92b553d1,
|
|
0xddf4c516,
|
|
0xc4eff457,
|
|
0xefc2a794,
|
|
0xf6d996d5,
|
|
0xae07bce9,
|
|
0xb71c8da8,
|
|
0x9c31de6b,
|
|
0x852aef2a,
|
|
0xca6b79ed,
|
|
0xd37048ac,
|
|
0xf85d1b6f,
|
|
0xe1462a2e,
|
|
0x66de36e1,
|
|
0x7fc507a0,
|
|
0x54e85463,
|
|
0x4df36522,
|
|
0x02b2f3e5,
|
|
0x1ba9c2a4,
|
|
0x30849167,
|
|
0x299fa026,
|
|
0xe4c5aeb8,
|
|
0xfdde9ff9,
|
|
0xd6f3cc3a,
|
|
0xcfe8fd7b,
|
|
0x80a96bbc,
|
|
0x99b25afd,
|
|
0xb29f093e,
|
|
0xab84387f,
|
|
0x2c1c24b0,
|
|
0x350715f1,
|
|
0x1e2a4632,
|
|
0x07317773,
|
|
0x4870e1b4,
|
|
0x516bd0f5,
|
|
0x7a468336,
|
|
0x635db277,
|
|
0xcbfad74e,
|
|
0xd2e1e60f,
|
|
0xf9ccb5cc,
|
|
0xe0d7848d,
|
|
0xaf96124a,
|
|
0xb68d230b,
|
|
0x9da070c8,
|
|
0x84bb4189,
|
|
0x03235d46,
|
|
0x1a386c07,
|
|
0x31153fc4,
|
|
0x280e0e85,
|
|
0x674f9842,
|
|
0x7e54a903,
|
|
0x5579fac0,
|
|
0x4c62cb81,
|
|
0x8138c51f,
|
|
0x9823f45e,
|
|
0xb30ea79d,
|
|
0xaa1596dc,
|
|
0xe554001b,
|
|
0xfc4f315a,
|
|
0xd7626299,
|
|
0xce7953d8,
|
|
0x49e14f17,
|
|
0x50fa7e56,
|
|
0x7bd72d95,
|
|
0x62cc1cd4,
|
|
0x2d8d8a13,
|
|
0x3496bb52,
|
|
0x1fbbe891,
|
|
0x06a0d9d0,
|
|
0x5e7ef3ec,
|
|
0x4765c2ad,
|
|
0x6c48916e,
|
|
0x7553a02f,
|
|
0x3a1236e8,
|
|
0x230907a9,
|
|
0x0824546a,
|
|
0x113f652b,
|
|
0x96a779e4,
|
|
0x8fbc48a5,
|
|
0xa4911b66,
|
|
0xbd8a2a27,
|
|
0xf2cbbce0,
|
|
0xebd08da1,
|
|
0xc0fdde62,
|
|
0xd9e6ef23,
|
|
0x14bce1bd,
|
|
0x0da7d0fc,
|
|
0x268a833f,
|
|
0x3f91b27e,
|
|
0x70d024b9,
|
|
0x69cb15f8,
|
|
0x42e6463b,
|
|
0x5bfd777a,
|
|
0xdc656bb5,
|
|
0xc57e5af4,
|
|
0xee530937,
|
|
0xf7483876,
|
|
0xb809aeb1,
|
|
0xa1129ff0,
|
|
0x8a3fcc33,
|
|
0x9324fd72
|
|
},
|
|
{
|
|
0x00000000,
|
|
0x01c26a37,
|
|
0x0384d46e,
|
|
0x0246be59,
|
|
0x0709a8dc,
|
|
0x06cbc2eb,
|
|
0x048d7cb2,
|
|
0x054f1685,
|
|
0x0e1351b8,
|
|
0x0fd13b8f,
|
|
0x0d9785d6,
|
|
0x0c55efe1,
|
|
0x091af964,
|
|
0x08d89353,
|
|
0x0a9e2d0a,
|
|
0x0b5c473d,
|
|
0x1c26a370,
|
|
0x1de4c947,
|
|
0x1fa2771e,
|
|
0x1e601d29,
|
|
0x1b2f0bac,
|
|
0x1aed619b,
|
|
0x18abdfc2,
|
|
0x1969b5f5,
|
|
0x1235f2c8,
|
|
0x13f798ff,
|
|
0x11b126a6,
|
|
0x10734c91,
|
|
0x153c5a14,
|
|
0x14fe3023,
|
|
0x16b88e7a,
|
|
0x177ae44d,
|
|
0x384d46e0,
|
|
0x398f2cd7,
|
|
0x3bc9928e,
|
|
0x3a0bf8b9,
|
|
0x3f44ee3c,
|
|
0x3e86840b,
|
|
0x3cc03a52,
|
|
0x3d025065,
|
|
0x365e1758,
|
|
0x379c7d6f,
|
|
0x35dac336,
|
|
0x3418a901,
|
|
0x3157bf84,
|
|
0x3095d5b3,
|
|
0x32d36bea,
|
|
0x331101dd,
|
|
0x246be590,
|
|
0x25a98fa7,
|
|
0x27ef31fe,
|
|
0x262d5bc9,
|
|
0x23624d4c,
|
|
0x22a0277b,
|
|
0x20e69922,
|
|
0x2124f315,
|
|
0x2a78b428,
|
|
0x2bbade1f,
|
|
0x29fc6046,
|
|
0x283e0a71,
|
|
0x2d711cf4,
|
|
0x2cb376c3,
|
|
0x2ef5c89a,
|
|
0x2f37a2ad,
|
|
0x709a8dc0,
|
|
0x7158e7f7,
|
|
0x731e59ae,
|
|
0x72dc3399,
|
|
0x7793251c,
|
|
0x76514f2b,
|
|
0x7417f172,
|
|
0x75d59b45,
|
|
0x7e89dc78,
|
|
0x7f4bb64f,
|
|
0x7d0d0816,
|
|
0x7ccf6221,
|
|
0x798074a4,
|
|
0x78421e93,
|
|
0x7a04a0ca,
|
|
0x7bc6cafd,
|
|
0x6cbc2eb0,
|
|
0x6d7e4487,
|
|
0x6f38fade,
|
|
0x6efa90e9,
|
|
0x6bb5866c,
|
|
0x6a77ec5b,
|
|
0x68315202,
|
|
0x69f33835,
|
|
0x62af7f08,
|
|
0x636d153f,
|
|
0x612bab66,
|
|
0x60e9c151,
|
|
0x65a6d7d4,
|
|
0x6464bde3,
|
|
0x662203ba,
|
|
0x67e0698d,
|
|
0x48d7cb20,
|
|
0x4915a117,
|
|
0x4b531f4e,
|
|
0x4a917579,
|
|
0x4fde63fc,
|
|
0x4e1c09cb,
|
|
0x4c5ab792,
|
|
0x4d98dda5,
|
|
0x46c49a98,
|
|
0x4706f0af,
|
|
0x45404ef6,
|
|
0x448224c1,
|
|
0x41cd3244,
|
|
0x400f5873,
|
|
0x4249e62a,
|
|
0x438b8c1d,
|
|
0x54f16850,
|
|
0x55330267,
|
|
0x5775bc3e,
|
|
0x56b7d609,
|
|
0x53f8c08c,
|
|
0x523aaabb,
|
|
0x507c14e2,
|
|
0x51be7ed5,
|
|
0x5ae239e8,
|
|
0x5b2053df,
|
|
0x5966ed86,
|
|
0x58a487b1,
|
|
0x5deb9134,
|
|
0x5c29fb03,
|
|
0x5e6f455a,
|
|
0x5fad2f6d,
|
|
0xe1351b80,
|
|
0xe0f771b7,
|
|
0xe2b1cfee,
|
|
0xe373a5d9,
|
|
0xe63cb35c,
|
|
0xe7fed96b,
|
|
0xe5b86732,
|
|
0xe47a0d05,
|
|
0xef264a38,
|
|
0xeee4200f,
|
|
0xeca29e56,
|
|
0xed60f461,
|
|
0xe82fe2e4,
|
|
0xe9ed88d3,
|
|
0xebab368a,
|
|
0xea695cbd,
|
|
0xfd13b8f0,
|
|
0xfcd1d2c7,
|
|
0xfe976c9e,
|
|
0xff5506a9,
|
|
0xfa1a102c,
|
|
0xfbd87a1b,
|
|
0xf99ec442,
|
|
0xf85cae75,
|
|
0xf300e948,
|
|
0xf2c2837f,
|
|
0xf0843d26,
|
|
0xf1465711,
|
|
0xf4094194,
|
|
0xf5cb2ba3,
|
|
0xf78d95fa,
|
|
0xf64fffcd,
|
|
0xd9785d60,
|
|
0xd8ba3757,
|
|
0xdafc890e,
|
|
0xdb3ee339,
|
|
0xde71f5bc,
|
|
0xdfb39f8b,
|
|
0xddf521d2,
|
|
0xdc374be5,
|
|
0xd76b0cd8,
|
|
0xd6a966ef,
|
|
0xd4efd8b6,
|
|
0xd52db281,
|
|
0xd062a404,
|
|
0xd1a0ce33,
|
|
0xd3e6706a,
|
|
0xd2241a5d,
|
|
0xc55efe10,
|
|
0xc49c9427,
|
|
0xc6da2a7e,
|
|
0xc7184049,
|
|
0xc25756cc,
|
|
0xc3953cfb,
|
|
0xc1d382a2,
|
|
0xc011e895,
|
|
0xcb4dafa8,
|
|
0xca8fc59f,
|
|
0xc8c97bc6,
|
|
0xc90b11f1,
|
|
0xcc440774,
|
|
0xcd866d43,
|
|
0xcfc0d31a,
|
|
0xce02b92d,
|
|
0x91af9640,
|
|
0x906dfc77,
|
|
0x922b422e,
|
|
0x93e92819,
|
|
0x96a63e9c,
|
|
0x976454ab,
|
|
0x9522eaf2,
|
|
0x94e080c5,
|
|
0x9fbcc7f8,
|
|
0x9e7eadcf,
|
|
0x9c381396,
|
|
0x9dfa79a1,
|
|
0x98b56f24,
|
|
0x99770513,
|
|
0x9b31bb4a,
|
|
0x9af3d17d,
|
|
0x8d893530,
|
|
0x8c4b5f07,
|
|
0x8e0de15e,
|
|
0x8fcf8b69,
|
|
0x8a809dec,
|
|
0x8b42f7db,
|
|
0x89044982,
|
|
0x88c623b5,
|
|
0x839a6488,
|
|
0x82580ebf,
|
|
0x801eb0e6,
|
|
0x81dcdad1,
|
|
0x8493cc54,
|
|
0x8551a663,
|
|
0x8717183a,
|
|
0x86d5720d,
|
|
0xa9e2d0a0,
|
|
0xa820ba97,
|
|
0xaa6604ce,
|
|
0xaba46ef9,
|
|
0xaeeb787c,
|
|
0xaf29124b,
|
|
0xad6fac12,
|
|
0xacadc625,
|
|
0xa7f18118,
|
|
0xa633eb2f,
|
|
0xa4755576,
|
|
0xa5b73f41,
|
|
0xa0f829c4,
|
|
0xa13a43f3,
|
|
0xa37cfdaa,
|
|
0xa2be979d,
|
|
0xb5c473d0,
|
|
0xb40619e7,
|
|
0xb640a7be,
|
|
0xb782cd89,
|
|
0xb2cddb0c,
|
|
0xb30fb13b,
|
|
0xb1490f62,
|
|
0xb08b6555,
|
|
0xbbd72268,
|
|
0xba15485f,
|
|
0xb853f606,
|
|
0xb9919c31,
|
|
0xbcde8ab4,
|
|
0xbd1ce083,
|
|
0xbf5a5eda,
|
|
0xbe9834ed
|
|
},
|
|
{
|
|
0x00000000,
|
|
0xb8bc6765,
|
|
0xaa09c88b,
|
|
0x12b5afee,
|
|
0x8f629757,
|
|
0x37def032,
|
|
0x256b5fdc,
|
|
0x9dd738b9,
|
|
0xc5b428ef,
|
|
0x7d084f8a,
|
|
0x6fbde064,
|
|
0xd7018701,
|
|
0x4ad6bfb8,
|
|
0xf26ad8dd,
|
|
0xe0df7733,
|
|
0x58631056,
|
|
0x5019579f,
|
|
0xe8a530fa,
|
|
0xfa109f14,
|
|
0x42acf871,
|
|
0xdf7bc0c8,
|
|
0x67c7a7ad,
|
|
0x75720843,
|
|
0xcdce6f26,
|
|
0x95ad7f70,
|
|
0x2d111815,
|
|
0x3fa4b7fb,
|
|
0x8718d09e,
|
|
0x1acfe827,
|
|
0xa2738f42,
|
|
0xb0c620ac,
|
|
0x087a47c9,
|
|
0xa032af3e,
|
|
0x188ec85b,
|
|
0x0a3b67b5,
|
|
0xb28700d0,
|
|
0x2f503869,
|
|
0x97ec5f0c,
|
|
0x8559f0e2,
|
|
0x3de59787,
|
|
0x658687d1,
|
|
0xdd3ae0b4,
|
|
0xcf8f4f5a,
|
|
0x7733283f,
|
|
0xeae41086,
|
|
0x525877e3,
|
|
0x40edd80d,
|
|
0xf851bf68,
|
|
0xf02bf8a1,
|
|
0x48979fc4,
|
|
0x5a22302a,
|
|
0xe29e574f,
|
|
0x7f496ff6,
|
|
0xc7f50893,
|
|
0xd540a77d,
|
|
0x6dfcc018,
|
|
0x359fd04e,
|
|
0x8d23b72b,
|
|
0x9f9618c5,
|
|
0x272a7fa0,
|
|
0xbafd4719,
|
|
0x0241207c,
|
|
0x10f48f92,
|
|
0xa848e8f7,
|
|
0x9b14583d,
|
|
0x23a83f58,
|
|
0x311d90b6,
|
|
0x89a1f7d3,
|
|
0x1476cf6a,
|
|
0xaccaa80f,
|
|
0xbe7f07e1,
|
|
0x06c36084,
|
|
0x5ea070d2,
|
|
0xe61c17b7,
|
|
0xf4a9b859,
|
|
0x4c15df3c,
|
|
0xd1c2e785,
|
|
0x697e80e0,
|
|
0x7bcb2f0e,
|
|
0xc377486b,
|
|
0xcb0d0fa2,
|
|
0x73b168c7,
|
|
0x6104c729,
|
|
0xd9b8a04c,
|
|
0x446f98f5,
|
|
0xfcd3ff90,
|
|
0xee66507e,
|
|
0x56da371b,
|
|
0x0eb9274d,
|
|
0xb6054028,
|
|
0xa4b0efc6,
|
|
0x1c0c88a3,
|
|
0x81dbb01a,
|
|
0x3967d77f,
|
|
0x2bd27891,
|
|
0x936e1ff4,
|
|
0x3b26f703,
|
|
0x839a9066,
|
|
0x912f3f88,
|
|
0x299358ed,
|
|
0xb4446054,
|
|
0x0cf80731,
|
|
0x1e4da8df,
|
|
0xa6f1cfba,
|
|
0xfe92dfec,
|
|
0x462eb889,
|
|
0x549b1767,
|
|
0xec277002,
|
|
0x71f048bb,
|
|
0xc94c2fde,
|
|
0xdbf98030,
|
|
0x6345e755,
|
|
0x6b3fa09c,
|
|
0xd383c7f9,
|
|
0xc1366817,
|
|
0x798a0f72,
|
|
0xe45d37cb,
|
|
0x5ce150ae,
|
|
0x4e54ff40,
|
|
0xf6e89825,
|
|
0xae8b8873,
|
|
0x1637ef16,
|
|
0x048240f8,
|
|
0xbc3e279d,
|
|
0x21e91f24,
|
|
0x99557841,
|
|
0x8be0d7af,
|
|
0x335cb0ca,
|
|
0xed59b63b,
|
|
0x55e5d15e,
|
|
0x47507eb0,
|
|
0xffec19d5,
|
|
0x623b216c,
|
|
0xda874609,
|
|
0xc832e9e7,
|
|
0x708e8e82,
|
|
0x28ed9ed4,
|
|
0x9051f9b1,
|
|
0x82e4565f,
|
|
0x3a58313a,
|
|
0xa78f0983,
|
|
0x1f336ee6,
|
|
0x0d86c108,
|
|
0xb53aa66d,
|
|
0xbd40e1a4,
|
|
0x05fc86c1,
|
|
0x1749292f,
|
|
0xaff54e4a,
|
|
0x322276f3,
|
|
0x8a9e1196,
|
|
0x982bbe78,
|
|
0x2097d91d,
|
|
0x78f4c94b,
|
|
0xc048ae2e,
|
|
0xd2fd01c0,
|
|
0x6a4166a5,
|
|
0xf7965e1c,
|
|
0x4f2a3979,
|
|
0x5d9f9697,
|
|
0xe523f1f2,
|
|
0x4d6b1905,
|
|
0xf5d77e60,
|
|
0xe762d18e,
|
|
0x5fdeb6eb,
|
|
0xc2098e52,
|
|
0x7ab5e937,
|
|
0x680046d9,
|
|
0xd0bc21bc,
|
|
0x88df31ea,
|
|
0x3063568f,
|
|
0x22d6f961,
|
|
0x9a6a9e04,
|
|
0x07bda6bd,
|
|
0xbf01c1d8,
|
|
0xadb46e36,
|
|
0x15080953,
|
|
0x1d724e9a,
|
|
0xa5ce29ff,
|
|
0xb77b8611,
|
|
0x0fc7e174,
|
|
0x9210d9cd,
|
|
0x2aacbea8,
|
|
0x38191146,
|
|
0x80a57623,
|
|
0xd8c66675,
|
|
0x607a0110,
|
|
0x72cfaefe,
|
|
0xca73c99b,
|
|
0x57a4f122,
|
|
0xef189647,
|
|
0xfdad39a9,
|
|
0x45115ecc,
|
|
0x764dee06,
|
|
0xcef18963,
|
|
0xdc44268d,
|
|
0x64f841e8,
|
|
0xf92f7951,
|
|
0x41931e34,
|
|
0x5326b1da,
|
|
0xeb9ad6bf,
|
|
0xb3f9c6e9,
|
|
0x0b45a18c,
|
|
0x19f00e62,
|
|
0xa14c6907,
|
|
0x3c9b51be,
|
|
0x842736db,
|
|
0x96929935,
|
|
0x2e2efe50,
|
|
0x2654b999,
|
|
0x9ee8defc,
|
|
0x8c5d7112,
|
|
0x34e11677,
|
|
0xa9362ece,
|
|
0x118a49ab,
|
|
0x033fe645,
|
|
0xbb838120,
|
|
0xe3e09176,
|
|
0x5b5cf613,
|
|
0x49e959fd,
|
|
0xf1553e98,
|
|
0x6c820621,
|
|
0xd43e6144,
|
|
0xc68bceaa,
|
|
0x7e37a9cf,
|
|
0xd67f4138,
|
|
0x6ec3265d,
|
|
0x7c7689b3,
|
|
0xc4caeed6,
|
|
0x591dd66f,
|
|
0xe1a1b10a,
|
|
0xf3141ee4,
|
|
0x4ba87981,
|
|
0x13cb69d7,
|
|
0xab770eb2,
|
|
0xb9c2a15c,
|
|
0x017ec639,
|
|
0x9ca9fe80,
|
|
0x241599e5,
|
|
0x36a0360b,
|
|
0x8e1c516e,
|
|
0x866616a7,
|
|
0x3eda71c2,
|
|
0x2c6fde2c,
|
|
0x94d3b949,
|
|
0x090481f0,
|
|
0xb1b8e695,
|
|
0xa30d497b,
|
|
0x1bb12e1e,
|
|
0x43d23e48,
|
|
0xfb6e592d,
|
|
0xe9dbf6c3,
|
|
0x516791a6,
|
|
0xccb0a91f,
|
|
0x740cce7a,
|
|
0x66b96194,
|
|
0xde0506f1
|
|
},
|
|
{
|
|
0x00000000,
|
|
0x3d6029b0,
|
|
0x7ac05360,
|
|
0x47a07ad0,
|
|
0xf580a6c0,
|
|
0xc8e08f70,
|
|
0x8f40f5a0,
|
|
0xb220dc10,
|
|
0x30704bc1,
|
|
0x0d106271,
|
|
0x4ab018a1,
|
|
0x77d03111,
|
|
0xc5f0ed01,
|
|
0xf890c4b1,
|
|
0xbf30be61,
|
|
0x825097d1,
|
|
0x60e09782,
|
|
0x5d80be32,
|
|
0x1a20c4e2,
|
|
0x2740ed52,
|
|
0x95603142,
|
|
0xa80018f2,
|
|
0xefa06222,
|
|
0xd2c04b92,
|
|
0x5090dc43,
|
|
0x6df0f5f3,
|
|
0x2a508f23,
|
|
0x1730a693,
|
|
0xa5107a83,
|
|
0x98705333,
|
|
0xdfd029e3,
|
|
0xe2b00053,
|
|
0xc1c12f04,
|
|
0xfca106b4,
|
|
0xbb017c64,
|
|
0x866155d4,
|
|
0x344189c4,
|
|
0x0921a074,
|
|
0x4e81daa4,
|
|
0x73e1f314,
|
|
0xf1b164c5,
|
|
0xccd14d75,
|
|
0x8b7137a5,
|
|
0xb6111e15,
|
|
0x0431c205,
|
|
0x3951ebb5,
|
|
0x7ef19165,
|
|
0x4391b8d5,
|
|
0xa121b886,
|
|
0x9c419136,
|
|
0xdbe1ebe6,
|
|
0xe681c256,
|
|
0x54a11e46,
|
|
0x69c137f6,
|
|
0x2e614d26,
|
|
0x13016496,
|
|
0x9151f347,
|
|
0xac31daf7,
|
|
0xeb91a027,
|
|
0xd6f18997,
|
|
0x64d15587,
|
|
0x59b17c37,
|
|
0x1e1106e7,
|
|
0x23712f57,
|
|
0x58f35849,
|
|
0x659371f9,
|
|
0x22330b29,
|
|
0x1f532299,
|
|
0xad73fe89,
|
|
0x9013d739,
|
|
0xd7b3ade9,
|
|
0xead38459,
|
|
0x68831388,
|
|
0x55e33a38,
|
|
0x124340e8,
|
|
0x2f236958,
|
|
0x9d03b548,
|
|
0xa0639cf8,
|
|
0xe7c3e628,
|
|
0xdaa3cf98,
|
|
0x3813cfcb,
|
|
0x0573e67b,
|
|
0x42d39cab,
|
|
0x7fb3b51b,
|
|
0xcd93690b,
|
|
0xf0f340bb,
|
|
0xb7533a6b,
|
|
0x8a3313db,
|
|
0x0863840a,
|
|
0x3503adba,
|
|
0x72a3d76a,
|
|
0x4fc3feda,
|
|
0xfde322ca,
|
|
0xc0830b7a,
|
|
0x872371aa,
|
|
0xba43581a,
|
|
0x9932774d,
|
|
0xa4525efd,
|
|
0xe3f2242d,
|
|
0xde920d9d,
|
|
0x6cb2d18d,
|
|
0x51d2f83d,
|
|
0x167282ed,
|
|
0x2b12ab5d,
|
|
0xa9423c8c,
|
|
0x9422153c,
|
|
0xd3826fec,
|
|
0xeee2465c,
|
|
0x5cc29a4c,
|
|
0x61a2b3fc,
|
|
0x2602c92c,
|
|
0x1b62e09c,
|
|
0xf9d2e0cf,
|
|
0xc4b2c97f,
|
|
0x8312b3af,
|
|
0xbe729a1f,
|
|
0x0c52460f,
|
|
0x31326fbf,
|
|
0x7692156f,
|
|
0x4bf23cdf,
|
|
0xc9a2ab0e,
|
|
0xf4c282be,
|
|
0xb362f86e,
|
|
0x8e02d1de,
|
|
0x3c220dce,
|
|
0x0142247e,
|
|
0x46e25eae,
|
|
0x7b82771e,
|
|
0xb1e6b092,
|
|
0x8c869922,
|
|
0xcb26e3f2,
|
|
0xf646ca42,
|
|
0x44661652,
|
|
0x79063fe2,
|
|
0x3ea64532,
|
|
0x03c66c82,
|
|
0x8196fb53,
|
|
0xbcf6d2e3,
|
|
0xfb56a833,
|
|
0xc6368183,
|
|
0x74165d93,
|
|
0x49767423,
|
|
0x0ed60ef3,
|
|
0x33b62743,
|
|
0xd1062710,
|
|
0xec660ea0,
|
|
0xabc67470,
|
|
0x96a65dc0,
|
|
0x248681d0,
|
|
0x19e6a860,
|
|
0x5e46d2b0,
|
|
0x6326fb00,
|
|
0xe1766cd1,
|
|
0xdc164561,
|
|
0x9bb63fb1,
|
|
0xa6d61601,
|
|
0x14f6ca11,
|
|
0x2996e3a1,
|
|
0x6e369971,
|
|
0x5356b0c1,
|
|
0x70279f96,
|
|
0x4d47b626,
|
|
0x0ae7ccf6,
|
|
0x3787e546,
|
|
0x85a73956,
|
|
0xb8c710e6,
|
|
0xff676a36,
|
|
0xc2074386,
|
|
0x4057d457,
|
|
0x7d37fde7,
|
|
0x3a978737,
|
|
0x07f7ae87,
|
|
0xb5d77297,
|
|
0x88b75b27,
|
|
0xcf1721f7,
|
|
0xf2770847,
|
|
0x10c70814,
|
|
0x2da721a4,
|
|
0x6a075b74,
|
|
0x576772c4,
|
|
0xe547aed4,
|
|
0xd8278764,
|
|
0x9f87fdb4,
|
|
0xa2e7d404,
|
|
0x20b743d5,
|
|
0x1dd76a65,
|
|
0x5a7710b5,
|
|
0x67173905,
|
|
0xd537e515,
|
|
0xe857cca5,
|
|
0xaff7b675,
|
|
0x92979fc5,
|
|
0xe915e8db,
|
|
0xd475c16b,
|
|
0x93d5bbbb,
|
|
0xaeb5920b,
|
|
0x1c954e1b,
|
|
0x21f567ab,
|
|
0x66551d7b,
|
|
0x5b3534cb,
|
|
0xd965a31a,
|
|
0xe4058aaa,
|
|
0xa3a5f07a,
|
|
0x9ec5d9ca,
|
|
0x2ce505da,
|
|
0x11852c6a,
|
|
0x562556ba,
|
|
0x6b457f0a,
|
|
0x89f57f59,
|
|
0xb49556e9,
|
|
0xf3352c39,
|
|
0xce550589,
|
|
0x7c75d999,
|
|
0x4115f029,
|
|
0x06b58af9,
|
|
0x3bd5a349,
|
|
0xb9853498,
|
|
0x84e51d28,
|
|
0xc34567f8,
|
|
0xfe254e48,
|
|
0x4c059258,
|
|
0x7165bbe8,
|
|
0x36c5c138,
|
|
0x0ba5e888,
|
|
0x28d4c7df,
|
|
0x15b4ee6f,
|
|
0x521494bf,
|
|
0x6f74bd0f,
|
|
0xdd54611f,
|
|
0xe03448af,
|
|
0xa794327f,
|
|
0x9af41bcf,
|
|
0x18a48c1e,
|
|
0x25c4a5ae,
|
|
0x6264df7e,
|
|
0x5f04f6ce,
|
|
0xed242ade,
|
|
0xd044036e,
|
|
0x97e479be,
|
|
0xaa84500e,
|
|
0x4834505d,
|
|
0x755479ed,
|
|
0x32f4033d,
|
|
0x0f942a8d,
|
|
0xbdb4f69d,
|
|
0x80d4df2d,
|
|
0xc774a5fd,
|
|
0xfa148c4d,
|
|
0x78441b9c,
|
|
0x4524322c,
|
|
0x028448fc,
|
|
0x3fe4614c,
|
|
0x8dc4bd5c,
|
|
0xb0a494ec,
|
|
0xf704ee3c,
|
|
0xca64c78c
|
|
},
|
|
{
|
|
0x00000000,
|
|
0xcb5cd3a5,
|
|
0x4dc8a10b,
|
|
0x869472ae,
|
|
0x9b914216,
|
|
0x50cd91b3,
|
|
0xd659e31d,
|
|
0x1d0530b8,
|
|
0xec53826d,
|
|
0x270f51c8,
|
|
0xa19b2366,
|
|
0x6ac7f0c3,
|
|
0x77c2c07b,
|
|
0xbc9e13de,
|
|
0x3a0a6170,
|
|
0xf156b2d5,
|
|
0x03d6029b,
|
|
0xc88ad13e,
|
|
0x4e1ea390,
|
|
0x85427035,
|
|
0x9847408d,
|
|
0x531b9328,
|
|
0xd58fe186,
|
|
0x1ed33223,
|
|
0xef8580f6,
|
|
0x24d95353,
|
|
0xa24d21fd,
|
|
0x6911f258,
|
|
0x7414c2e0,
|
|
0xbf481145,
|
|
0x39dc63eb,
|
|
0xf280b04e,
|
|
0x07ac0536,
|
|
0xccf0d693,
|
|
0x4a64a43d,
|
|
0x81387798,
|
|
0x9c3d4720,
|
|
0x57619485,
|
|
0xd1f5e62b,
|
|
0x1aa9358e,
|
|
0xebff875b,
|
|
0x20a354fe,
|
|
0xa6372650,
|
|
0x6d6bf5f5,
|
|
0x706ec54d,
|
|
0xbb3216e8,
|
|
0x3da66446,
|
|
0xf6fab7e3,
|
|
0x047a07ad,
|
|
0xcf26d408,
|
|
0x49b2a6a6,
|
|
0x82ee7503,
|
|
0x9feb45bb,
|
|
0x54b7961e,
|
|
0xd223e4b0,
|
|
0x197f3715,
|
|
0xe82985c0,
|
|
0x23755665,
|
|
0xa5e124cb,
|
|
0x6ebdf76e,
|
|
0x73b8c7d6,
|
|
0xb8e41473,
|
|
0x3e7066dd,
|
|
0xf52cb578,
|
|
0x0f580a6c,
|
|
0xc404d9c9,
|
|
0x4290ab67,
|
|
0x89cc78c2,
|
|
0x94c9487a,
|
|
0x5f959bdf,
|
|
0xd901e971,
|
|
0x125d3ad4,
|
|
0xe30b8801,
|
|
0x28575ba4,
|
|
0xaec3290a,
|
|
0x659ffaaf,
|
|
0x789aca17,
|
|
0xb3c619b2,
|
|
0x35526b1c,
|
|
0xfe0eb8b9,
|
|
0x0c8e08f7,
|
|
0xc7d2db52,
|
|
0x4146a9fc,
|
|
0x8a1a7a59,
|
|
0x971f4ae1,
|
|
0x5c439944,
|
|
0xdad7ebea,
|
|
0x118b384f,
|
|
0xe0dd8a9a,
|
|
0x2b81593f,
|
|
0xad152b91,
|
|
0x6649f834,
|
|
0x7b4cc88c,
|
|
0xb0101b29,
|
|
0x36846987,
|
|
0xfdd8ba22,
|
|
0x08f40f5a,
|
|
0xc3a8dcff,
|
|
0x453cae51,
|
|
0x8e607df4,
|
|
0x93654d4c,
|
|
0x58399ee9,
|
|
0xdeadec47,
|
|
0x15f13fe2,
|
|
0xe4a78d37,
|
|
0x2ffb5e92,
|
|
0xa96f2c3c,
|
|
0x6233ff99,
|
|
0x7f36cf21,
|
|
0xb46a1c84,
|
|
0x32fe6e2a,
|
|
0xf9a2bd8f,
|
|
0x0b220dc1,
|
|
0xc07ede64,
|
|
0x46eaacca,
|
|
0x8db67f6f,
|
|
0x90b34fd7,
|
|
0x5bef9c72,
|
|
0xdd7beedc,
|
|
0x16273d79,
|
|
0xe7718fac,
|
|
0x2c2d5c09,
|
|
0xaab92ea7,
|
|
0x61e5fd02,
|
|
0x7ce0cdba,
|
|
0xb7bc1e1f,
|
|
0x31286cb1,
|
|
0xfa74bf14,
|
|
0x1eb014d8,
|
|
0xd5ecc77d,
|
|
0x5378b5d3,
|
|
0x98246676,
|
|
0x852156ce,
|
|
0x4e7d856b,
|
|
0xc8e9f7c5,
|
|
0x03b52460,
|
|
0xf2e396b5,
|
|
0x39bf4510,
|
|
0xbf2b37be,
|
|
0x7477e41b,
|
|
0x6972d4a3,
|
|
0xa22e0706,
|
|
0x24ba75a8,
|
|
0xefe6a60d,
|
|
0x1d661643,
|
|
0xd63ac5e6,
|
|
0x50aeb748,
|
|
0x9bf264ed,
|
|
0x86f75455,
|
|
0x4dab87f0,
|
|
0xcb3ff55e,
|
|
0x006326fb,
|
|
0xf135942e,
|
|
0x3a69478b,
|
|
0xbcfd3525,
|
|
0x77a1e680,
|
|
0x6aa4d638,
|
|
0xa1f8059d,
|
|
0x276c7733,
|
|
0xec30a496,
|
|
0x191c11ee,
|
|
0xd240c24b,
|
|
0x54d4b0e5,
|
|
0x9f886340,
|
|
0x828d53f8,
|
|
0x49d1805d,
|
|
0xcf45f2f3,
|
|
0x04192156,
|
|
0xf54f9383,
|
|
0x3e134026,
|
|
0xb8873288,
|
|
0x73dbe12d,
|
|
0x6eded195,
|
|
0xa5820230,
|
|
0x2316709e,
|
|
0xe84aa33b,
|
|
0x1aca1375,
|
|
0xd196c0d0,
|
|
0x5702b27e,
|
|
0x9c5e61db,
|
|
0x815b5163,
|
|
0x4a0782c6,
|
|
0xcc93f068,
|
|
0x07cf23cd,
|
|
0xf6999118,
|
|
0x3dc542bd,
|
|
0xbb513013,
|
|
0x700de3b6,
|
|
0x6d08d30e,
|
|
0xa65400ab,
|
|
0x20c07205,
|
|
0xeb9ca1a0,
|
|
0x11e81eb4,
|
|
0xdab4cd11,
|
|
0x5c20bfbf,
|
|
0x977c6c1a,
|
|
0x8a795ca2,
|
|
0x41258f07,
|
|
0xc7b1fda9,
|
|
0x0ced2e0c,
|
|
0xfdbb9cd9,
|
|
0x36e74f7c,
|
|
0xb0733dd2,
|
|
0x7b2fee77,
|
|
0x662adecf,
|
|
0xad760d6a,
|
|
0x2be27fc4,
|
|
0xe0beac61,
|
|
0x123e1c2f,
|
|
0xd962cf8a,
|
|
0x5ff6bd24,
|
|
0x94aa6e81,
|
|
0x89af5e39,
|
|
0x42f38d9c,
|
|
0xc467ff32,
|
|
0x0f3b2c97,
|
|
0xfe6d9e42,
|
|
0x35314de7,
|
|
0xb3a53f49,
|
|
0x78f9ecec,
|
|
0x65fcdc54,
|
|
0xaea00ff1,
|
|
0x28347d5f,
|
|
0xe368aefa,
|
|
0x16441b82,
|
|
0xdd18c827,
|
|
0x5b8cba89,
|
|
0x90d0692c,
|
|
0x8dd55994,
|
|
0x46898a31,
|
|
0xc01df89f,
|
|
0x0b412b3a,
|
|
0xfa1799ef,
|
|
0x314b4a4a,
|
|
0xb7df38e4,
|
|
0x7c83eb41,
|
|
0x6186dbf9,
|
|
0xaada085c,
|
|
0x2c4e7af2,
|
|
0xe712a957,
|
|
0x15921919,
|
|
0xdececabc,
|
|
0x585ab812,
|
|
0x93066bb7,
|
|
0x8e035b0f,
|
|
0x455f88aa,
|
|
0xc3cbfa04,
|
|
0x089729a1,
|
|
0xf9c19b74,
|
|
0x329d48d1,
|
|
0xb4093a7f,
|
|
0x7f55e9da,
|
|
0x6250d962,
|
|
0xa90c0ac7,
|
|
0x2f987869,
|
|
0xe4c4abcc
|
|
},
|
|
{
|
|
0x00000000,
|
|
0xa6770bb4,
|
|
0x979f1129,
|
|
0x31e81a9d,
|
|
0xf44f2413,
|
|
0x52382fa7,
|
|
0x63d0353a,
|
|
0xc5a73e8e,
|
|
0x33ef4e67,
|
|
0x959845d3,
|
|
0xa4705f4e,
|
|
0x020754fa,
|
|
0xc7a06a74,
|
|
0x61d761c0,
|
|
0x503f7b5d,
|
|
0xf64870e9,
|
|
0x67de9cce,
|
|
0xc1a9977a,
|
|
0xf0418de7,
|
|
0x56368653,
|
|
0x9391b8dd,
|
|
0x35e6b369,
|
|
0x040ea9f4,
|
|
0xa279a240,
|
|
0x5431d2a9,
|
|
0xf246d91d,
|
|
0xc3aec380,
|
|
0x65d9c834,
|
|
0xa07ef6ba,
|
|
0x0609fd0e,
|
|
0x37e1e793,
|
|
0x9196ec27,
|
|
0xcfbd399c,
|
|
0x69ca3228,
|
|
0x582228b5,
|
|
0xfe552301,
|
|
0x3bf21d8f,
|
|
0x9d85163b,
|
|
0xac6d0ca6,
|
|
0x0a1a0712,
|
|
0xfc5277fb,
|
|
0x5a257c4f,
|
|
0x6bcd66d2,
|
|
0xcdba6d66,
|
|
0x081d53e8,
|
|
0xae6a585c,
|
|
0x9f8242c1,
|
|
0x39f54975,
|
|
0xa863a552,
|
|
0x0e14aee6,
|
|
0x3ffcb47b,
|
|
0x998bbfcf,
|
|
0x5c2c8141,
|
|
0xfa5b8af5,
|
|
0xcbb39068,
|
|
0x6dc49bdc,
|
|
0x9b8ceb35,
|
|
0x3dfbe081,
|
|
0x0c13fa1c,
|
|
0xaa64f1a8,
|
|
0x6fc3cf26,
|
|
0xc9b4c492,
|
|
0xf85cde0f,
|
|
0x5e2bd5bb,
|
|
0x440b7579,
|
|
0xe27c7ecd,
|
|
0xd3946450,
|
|
0x75e36fe4,
|
|
0xb044516a,
|
|
0x16335ade,
|
|
0x27db4043,
|
|
0x81ac4bf7,
|
|
0x77e43b1e,
|
|
0xd19330aa,
|
|
0xe07b2a37,
|
|
0x460c2183,
|
|
0x83ab1f0d,
|
|
0x25dc14b9,
|
|
0x14340e24,
|
|
0xb2430590,
|
|
0x23d5e9b7,
|
|
0x85a2e203,
|
|
0xb44af89e,
|
|
0x123df32a,
|
|
0xd79acda4,
|
|
0x71edc610,
|
|
0x4005dc8d,
|
|
0xe672d739,
|
|
0x103aa7d0,
|
|
0xb64dac64,
|
|
0x87a5b6f9,
|
|
0x21d2bd4d,
|
|
0xe47583c3,
|
|
0x42028877,
|
|
0x73ea92ea,
|
|
0xd59d995e,
|
|
0x8bb64ce5,
|
|
0x2dc14751,
|
|
0x1c295dcc,
|
|
0xba5e5678,
|
|
0x7ff968f6,
|
|
0xd98e6342,
|
|
0xe86679df,
|
|
0x4e11726b,
|
|
0xb8590282,
|
|
0x1e2e0936,
|
|
0x2fc613ab,
|
|
0x89b1181f,
|
|
0x4c162691,
|
|
0xea612d25,
|
|
0xdb8937b8,
|
|
0x7dfe3c0c,
|
|
0xec68d02b,
|
|
0x4a1fdb9f,
|
|
0x7bf7c102,
|
|
0xdd80cab6,
|
|
0x1827f438,
|
|
0xbe50ff8c,
|
|
0x8fb8e511,
|
|
0x29cfeea5,
|
|
0xdf879e4c,
|
|
0x79f095f8,
|
|
0x48188f65,
|
|
0xee6f84d1,
|
|
0x2bc8ba5f,
|
|
0x8dbfb1eb,
|
|
0xbc57ab76,
|
|
0x1a20a0c2,
|
|
0x8816eaf2,
|
|
0x2e61e146,
|
|
0x1f89fbdb,
|
|
0xb9fef06f,
|
|
0x7c59cee1,
|
|
0xda2ec555,
|
|
0xebc6dfc8,
|
|
0x4db1d47c,
|
|
0xbbf9a495,
|
|
0x1d8eaf21,
|
|
0x2c66b5bc,
|
|
0x8a11be08,
|
|
0x4fb68086,
|
|
0xe9c18b32,
|
|
0xd82991af,
|
|
0x7e5e9a1b,
|
|
0xefc8763c,
|
|
0x49bf7d88,
|
|
0x78576715,
|
|
0xde206ca1,
|
|
0x1b87522f,
|
|
0xbdf0599b,
|
|
0x8c184306,
|
|
0x2a6f48b2,
|
|
0xdc27385b,
|
|
0x7a5033ef,
|
|
0x4bb82972,
|
|
0xedcf22c6,
|
|
0x28681c48,
|
|
0x8e1f17fc,
|
|
0xbff70d61,
|
|
0x198006d5,
|
|
0x47abd36e,
|
|
0xe1dcd8da,
|
|
0xd034c247,
|
|
0x7643c9f3,
|
|
0xb3e4f77d,
|
|
0x1593fcc9,
|
|
0x247be654,
|
|
0x820cede0,
|
|
0x74449d09,
|
|
0xd23396bd,
|
|
0xe3db8c20,
|
|
0x45ac8794,
|
|
0x800bb91a,
|
|
0x267cb2ae,
|
|
0x1794a833,
|
|
0xb1e3a387,
|
|
0x20754fa0,
|
|
0x86024414,
|
|
0xb7ea5e89,
|
|
0x119d553d,
|
|
0xd43a6bb3,
|
|
0x724d6007,
|
|
0x43a57a9a,
|
|
0xe5d2712e,
|
|
0x139a01c7,
|
|
0xb5ed0a73,
|
|
0x840510ee,
|
|
0x22721b5a,
|
|
0xe7d525d4,
|
|
0x41a22e60,
|
|
0x704a34fd,
|
|
0xd63d3f49,
|
|
0xcc1d9f8b,
|
|
0x6a6a943f,
|
|
0x5b828ea2,
|
|
0xfdf58516,
|
|
0x3852bb98,
|
|
0x9e25b02c,
|
|
0xafcdaab1,
|
|
0x09baa105,
|
|
0xfff2d1ec,
|
|
0x5985da58,
|
|
0x686dc0c5,
|
|
0xce1acb71,
|
|
0x0bbdf5ff,
|
|
0xadcafe4b,
|
|
0x9c22e4d6,
|
|
0x3a55ef62,
|
|
0xabc30345,
|
|
0x0db408f1,
|
|
0x3c5c126c,
|
|
0x9a2b19d8,
|
|
0x5f8c2756,
|
|
0xf9fb2ce2,
|
|
0xc813367f,
|
|
0x6e643dcb,
|
|
0x982c4d22,
|
|
0x3e5b4696,
|
|
0x0fb35c0b,
|
|
0xa9c457bf,
|
|
0x6c636931,
|
|
0xca146285,
|
|
0xfbfc7818,
|
|
0x5d8b73ac,
|
|
0x03a0a617,
|
|
0xa5d7ada3,
|
|
0x943fb73e,
|
|
0x3248bc8a,
|
|
0xf7ef8204,
|
|
0x519889b0,
|
|
0x6070932d,
|
|
0xc6079899,
|
|
0x304fe870,
|
|
0x9638e3c4,
|
|
0xa7d0f959,
|
|
0x01a7f2ed,
|
|
0xc400cc63,
|
|
0x6277c7d7,
|
|
0x539fdd4a,
|
|
0xf5e8d6fe,
|
|
0x647e3ad9,
|
|
0xc209316d,
|
|
0xf3e12bf0,
|
|
0x55962044,
|
|
0x90311eca,
|
|
0x3646157e,
|
|
0x07ae0fe3,
|
|
0xa1d90457,
|
|
0x579174be,
|
|
0xf1e67f0a,
|
|
0xc00e6597,
|
|
0x66796e23,
|
|
0xa3de50ad,
|
|
0x05a95b19,
|
|
0x34414184,
|
|
0x92364a30
|
|
},
|
|
{
|
|
0x00000000,
|
|
0xccaa009e,
|
|
0x4225077d,
|
|
0x8e8f07e3,
|
|
0x844a0efa,
|
|
0x48e00e64,
|
|
0xc66f0987,
|
|
0x0ac50919,
|
|
0xd3e51bb5,
|
|
0x1f4f1b2b,
|
|
0x91c01cc8,
|
|
0x5d6a1c56,
|
|
0x57af154f,
|
|
0x9b0515d1,
|
|
0x158a1232,
|
|
0xd92012ac,
|
|
0x7cbb312b,
|
|
0xb01131b5,
|
|
0x3e9e3656,
|
|
0xf23436c8,
|
|
0xf8f13fd1,
|
|
0x345b3f4f,
|
|
0xbad438ac,
|
|
0x767e3832,
|
|
0xaf5e2a9e,
|
|
0x63f42a00,
|
|
0xed7b2de3,
|
|
0x21d12d7d,
|
|
0x2b142464,
|
|
0xe7be24fa,
|
|
0x69312319,
|
|
0xa59b2387,
|
|
0xf9766256,
|
|
0x35dc62c8,
|
|
0xbb53652b,
|
|
0x77f965b5,
|
|
0x7d3c6cac,
|
|
0xb1966c32,
|
|
0x3f196bd1,
|
|
0xf3b36b4f,
|
|
0x2a9379e3,
|
|
0xe639797d,
|
|
0x68b67e9e,
|
|
0xa41c7e00,
|
|
0xaed97719,
|
|
0x62737787,
|
|
0xecfc7064,
|
|
0x205670fa,
|
|
0x85cd537d,
|
|
0x496753e3,
|
|
0xc7e85400,
|
|
0x0b42549e,
|
|
0x01875d87,
|
|
0xcd2d5d19,
|
|
0x43a25afa,
|
|
0x8f085a64,
|
|
0x562848c8,
|
|
0x9a824856,
|
|
0x140d4fb5,
|
|
0xd8a74f2b,
|
|
0xd2624632,
|
|
0x1ec846ac,
|
|
0x9047414f,
|
|
0x5ced41d1,
|
|
0x299dc2ed,
|
|
0xe537c273,
|
|
0x6bb8c590,
|
|
0xa712c50e,
|
|
0xadd7cc17,
|
|
0x617dcc89,
|
|
0xeff2cb6a,
|
|
0x2358cbf4,
|
|
0xfa78d958,
|
|
0x36d2d9c6,
|
|
0xb85dde25,
|
|
0x74f7debb,
|
|
0x7e32d7a2,
|
|
0xb298d73c,
|
|
0x3c17d0df,
|
|
0xf0bdd041,
|
|
0x5526f3c6,
|
|
0x998cf358,
|
|
0x1703f4bb,
|
|
0xdba9f425,
|
|
0xd16cfd3c,
|
|
0x1dc6fda2,
|
|
0x9349fa41,
|
|
0x5fe3fadf,
|
|
0x86c3e873,
|
|
0x4a69e8ed,
|
|
0xc4e6ef0e,
|
|
0x084cef90,
|
|
0x0289e689,
|
|
0xce23e617,
|
|
0x40ace1f4,
|
|
0x8c06e16a,
|
|
0xd0eba0bb,
|
|
0x1c41a025,
|
|
0x92cea7c6,
|
|
0x5e64a758,
|
|
0x54a1ae41,
|
|
0x980baedf,
|
|
0x1684a93c,
|
|
0xda2ea9a2,
|
|
0x030ebb0e,
|
|
0xcfa4bb90,
|
|
0x412bbc73,
|
|
0x8d81bced,
|
|
0x8744b5f4,
|
|
0x4beeb56a,
|
|
0xc561b289,
|
|
0x09cbb217,
|
|
0xac509190,
|
|
0x60fa910e,
|
|
0xee7596ed,
|
|
0x22df9673,
|
|
0x281a9f6a,
|
|
0xe4b09ff4,
|
|
0x6a3f9817,
|
|
0xa6959889,
|
|
0x7fb58a25,
|
|
0xb31f8abb,
|
|
0x3d908d58,
|
|
0xf13a8dc6,
|
|
0xfbff84df,
|
|
0x37558441,
|
|
0xb9da83a2,
|
|
0x7570833c,
|
|
0x533b85da,
|
|
0x9f918544,
|
|
0x111e82a7,
|
|
0xddb48239,
|
|
0xd7718b20,
|
|
0x1bdb8bbe,
|
|
0x95548c5d,
|
|
0x59fe8cc3,
|
|
0x80de9e6f,
|
|
0x4c749ef1,
|
|
0xc2fb9912,
|
|
0x0e51998c,
|
|
0x04949095,
|
|
0xc83e900b,
|
|
0x46b197e8,
|
|
0x8a1b9776,
|
|
0x2f80b4f1,
|
|
0xe32ab46f,
|
|
0x6da5b38c,
|
|
0xa10fb312,
|
|
0xabcaba0b,
|
|
0x6760ba95,
|
|
0xe9efbd76,
|
|
0x2545bde8,
|
|
0xfc65af44,
|
|
0x30cfafda,
|
|
0xbe40a839,
|
|
0x72eaa8a7,
|
|
0x782fa1be,
|
|
0xb485a120,
|
|
0x3a0aa6c3,
|
|
0xf6a0a65d,
|
|
0xaa4de78c,
|
|
0x66e7e712,
|
|
0xe868e0f1,
|
|
0x24c2e06f,
|
|
0x2e07e976,
|
|
0xe2ade9e8,
|
|
0x6c22ee0b,
|
|
0xa088ee95,
|
|
0x79a8fc39,
|
|
0xb502fca7,
|
|
0x3b8dfb44,
|
|
0xf727fbda,
|
|
0xfde2f2c3,
|
|
0x3148f25d,
|
|
0xbfc7f5be,
|
|
0x736df520,
|
|
0xd6f6d6a7,
|
|
0x1a5cd639,
|
|
0x94d3d1da,
|
|
0x5879d144,
|
|
0x52bcd85d,
|
|
0x9e16d8c3,
|
|
0x1099df20,
|
|
0xdc33dfbe,
|
|
0x0513cd12,
|
|
0xc9b9cd8c,
|
|
0x4736ca6f,
|
|
0x8b9ccaf1,
|
|
0x8159c3e8,
|
|
0x4df3c376,
|
|
0xc37cc495,
|
|
0x0fd6c40b,
|
|
0x7aa64737,
|
|
0xb60c47a9,
|
|
0x3883404a,
|
|
0xf42940d4,
|
|
0xfeec49cd,
|
|
0x32464953,
|
|
0xbcc94eb0,
|
|
0x70634e2e,
|
|
0xa9435c82,
|
|
0x65e95c1c,
|
|
0xeb665bff,
|
|
0x27cc5b61,
|
|
0x2d095278,
|
|
0xe1a352e6,
|
|
0x6f2c5505,
|
|
0xa386559b,
|
|
0x061d761c,
|
|
0xcab77682,
|
|
0x44387161,
|
|
0x889271ff,
|
|
0x825778e6,
|
|
0x4efd7878,
|
|
0xc0727f9b,
|
|
0x0cd87f05,
|
|
0xd5f86da9,
|
|
0x19526d37,
|
|
0x97dd6ad4,
|
|
0x5b776a4a,
|
|
0x51b26353,
|
|
0x9d1863cd,
|
|
0x1397642e,
|
|
0xdf3d64b0,
|
|
0x83d02561,
|
|
0x4f7a25ff,
|
|
0xc1f5221c,
|
|
0x0d5f2282,
|
|
0x079a2b9b,
|
|
0xcb302b05,
|
|
0x45bf2ce6,
|
|
0x89152c78,
|
|
0x50353ed4,
|
|
0x9c9f3e4a,
|
|
0x121039a9,
|
|
0xdeba3937,
|
|
0xd47f302e,
|
|
0x18d530b0,
|
|
0x965a3753,
|
|
0x5af037cd,
|
|
0xff6b144a,
|
|
0x33c114d4,
|
|
0xbd4e1337,
|
|
0x71e413a9,
|
|
0x7b211ab0,
|
|
0xb78b1a2e,
|
|
0x39041dcd,
|
|
0xf5ae1d53,
|
|
0x2c8e0fff,
|
|
0xe0240f61,
|
|
0x6eab0882,
|
|
0xa201081c,
|
|
0xa8c40105,
|
|
0x646e019b,
|
|
0xeae10678,
|
|
0x264b06e6
|
|
}
|
|
};
|
|
|
|
void Crc::Init()
|
|
{
|
|
#if BUILD_DEBUG
|
|
uint32 rCrc32Poly = ReverseBits((uint32)Crc32Poly);
|
|
|
|
for (uint32 i = 0; i != 256; ++i)
|
|
{
|
|
uint32 CRC = i;
|
|
for (uint32 j = 8; j; --j)
|
|
{
|
|
CRC = (CRC & 1) ? (CRC >> 1) ^ rCrc32Poly : (CRC >> 1);
|
|
}
|
|
|
|
ASSERT(CRCTablesSB8[0][i] == CRC);
|
|
}
|
|
|
|
for (uint32 i = 0; i != 256; ++i)
|
|
{
|
|
uint32 CRC = CRCTablesSB8[0][i];
|
|
for (uint32 j = 1; j != 8; ++j)
|
|
{
|
|
CRC = CRCTablesSB8[0][CRC & 0xFF] ^ (CRC >> 8);
|
|
ASSERT(CRCTablesSB8[j][i] == CRC);
|
|
}
|
|
}
|
|
#endif
|
|
}
|
|
|
|
uint32 Crc::MemCrc32(const void* data, int32 length, uint32 crc)
|
|
{
|
|
// Based on the Slicing-by-8 implementation found here:
|
|
// http://slicing-by-8.sourceforge.net/
|
|
|
|
crc = ~crc;
|
|
|
|
const uint8* __restrict ptr = (uint8*)data;
|
|
|
|
// First we need to align to 32-bits
|
|
int32 initBytes = (int32)(Math::AlignUp<uint64>((uint64)ptr, 4) - (uint64)ptr);
|
|
|
|
if (length > initBytes)
|
|
{
|
|
length -= initBytes;
|
|
|
|
for (; initBytes; --initBytes)
|
|
{
|
|
crc = (crc >> 8) ^ CRCTablesSB8[0][(crc & 0xFF) ^ *ptr++];
|
|
}
|
|
|
|
auto ptr4 = (const uint32*)ptr;
|
|
for (uint32 repeat = length / 8; repeat; --repeat)
|
|
{
|
|
uint32 v1 = *ptr4++ ^ crc;
|
|
uint32 v2 = *ptr4++;
|
|
crc =
|
|
CRCTablesSB8[7][v1 & 0xFF] ^
|
|
CRCTablesSB8[6][(v1 >> 8) & 0xFF] ^
|
|
CRCTablesSB8[5][(v1 >> 16) & 0xFF] ^
|
|
CRCTablesSB8[4][v1 >> 24] ^
|
|
CRCTablesSB8[3][v2 & 0xFF] ^
|
|
CRCTablesSB8[2][(v2 >> 8) & 0xFF] ^
|
|
CRCTablesSB8[1][(v2 >> 16) & 0xFF] ^
|
|
CRCTablesSB8[0][v2 >> 24];
|
|
}
|
|
ptr = (const uint8*)ptr4;
|
|
|
|
length %= 8;
|
|
}
|
|
|
|
for (; length; --length)
|
|
{
|
|
crc = (crc >> 8) ^ CRCTablesSB8[0][(crc & 0xFF) ^ *ptr++];
|
|
}
|
|
|
|
return ~crc;
|
|
}
|