001/** 002 * Licensed to the Apache Software Foundation (ASF) under one 003 * or more contributor license agreements. See the NOTICE file 004 * distributed with this work for additional information 005 * regarding copyright ownership. The ASF licenses this file 006 * to you under the Apache License, Version 2.0 (the 007 * "License"); you may not use this file except in compliance 008 * with the License. You may obtain a copy of the License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, software 013 * distributed under the License is distributed on an "AS IS" BASIS, 014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 015 * See the License for the specific language governing permissions and 016 * limitations under the License. 017 */ 018package org.apache.hadoop.util; 019 020import java.util.zip.Checksum; 021 022import org.apache.hadoop.classification.InterfaceAudience; 023import org.apache.hadoop.classification.InterfaceStability; 024 025/** 026 * A pure-java implementation of the CRC32 checksum that uses 027 * the same polynomial as the built-in native CRC32. 028 * 029 * This is to avoid the JNI overhead for certain uses of Checksumming 030 * where many small pieces of data are checksummed in succession. 031 * 032 * The current version is ~10x to 1.8x as fast as Sun's native 033 * java.util.zip.CRC32 in Java 1.6 034 * 035 * @see java.util.zip.CRC32 036 */ 037@InterfaceAudience.Public 038@InterfaceStability.Stable 039public class PureJavaCrc32 implements Checksum { 040 041 /** the current CRC value, bit-flipped */ 042 private int crc; 043 044 /** Create a new PureJavaCrc32 object. */ 045 public PureJavaCrc32() { 046 reset(); 047 } 048 049 /** {@inheritDoc} */ 050 public long getValue() { 051 return (~crc) & 0xffffffffL; 052 } 053 054 /** {@inheritDoc} */ 055 public void reset() { 056 crc = 0xffffffff; 057 } 058 059 /** {@inheritDoc} */ 060 public void update(byte[] b, int off, int len) { 061 int localCrc = crc; 062 063 while(len > 7) { 064 final int c0 =(b[off+0] ^ localCrc) & 0xff; 065 final int c1 =(b[off+1] ^ (localCrc >>>= 8)) & 0xff; 066 final int c2 =(b[off+2] ^ (localCrc >>>= 8)) & 0xff; 067 final int c3 =(b[off+3] ^ (localCrc >>>= 8)) & 0xff; 068 localCrc = (T[T8_7_start + c0] ^ T[T8_6_start + c1]) 069 ^ (T[T8_5_start + c2] ^ T[T8_4_start + c3]); 070 071 final int c4 = b[off+4] & 0xff; 072 final int c5 = b[off+5] & 0xff; 073 final int c6 = b[off+6] & 0xff; 074 final int c7 = b[off+7] & 0xff; 075 076 localCrc ^= (T[T8_3_start + c4] ^ T[T8_2_start + c5]) 077 ^ (T[T8_1_start + c6] ^ T[T8_0_start + c7]); 078 079 off += 8; 080 len -= 8; 081 } 082 083 /* loop unroll - duff's device style */ 084 switch(len) { 085 case 7: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 086 case 6: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 087 case 5: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 088 case 4: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 089 case 3: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 090 case 2: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 091 case 1: localCrc = (localCrc >>> 8) ^ T[T8_0_start + ((localCrc ^ b[off++]) & 0xff)]; 092 default: 093 /* nothing */ 094 } 095 096 // Publish crc out to object 097 crc = localCrc; 098 } 099 100 /** {@inheritDoc} */ 101 final public void update(int b) { 102 crc = (crc >>> 8) ^ T[T8_0_start + ((crc ^ b) & 0xff)]; 103 } 104 105 /* 106 * CRC-32 lookup tables generated by the polynomial 0xEDB88320. 107 * See also TestPureJavaCrc32.Table. 108 */ 109 private static final int T8_0_start = 0*256; 110 private static final int T8_1_start = 1*256; 111 private static final int T8_2_start = 2*256; 112 private static final int T8_3_start = 3*256; 113 private static final int T8_4_start = 4*256; 114 private static final int T8_5_start = 5*256; 115 private static final int T8_6_start = 6*256; 116 private static final int T8_7_start = 7*256; 117 118 private static final int[] T = new int[] { 119 /* T8_0 */ 120 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 121 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, 122 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 123 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, 124 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 125 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, 126 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 127 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, 128 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 129 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, 130 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 131 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, 132 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 133 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, 134 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 135 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 136 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 137 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, 138 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 139 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, 140 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 141 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, 142 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 143 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, 144 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 145 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, 146 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 147 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, 148 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 149 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, 150 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 151 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, 152 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 153 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, 154 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 155 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, 156 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 157 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, 158 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 159 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, 160 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 161 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, 162 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 163 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, 164 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 165 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 166 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 167 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, 168 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 169 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, 170 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 171 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 172 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 173 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, 174 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 175 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, 176 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 177 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, 178 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 179 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, 180 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 181 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, 182 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 183 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D, 184 /* T8_1 */ 185 0x00000000, 0x191B3141, 0x32366282, 0x2B2D53C3, 186 0x646CC504, 0x7D77F445, 0x565AA786, 0x4F4196C7, 187 0xC8D98A08, 0xD1C2BB49, 0xFAEFE88A, 0xE3F4D9CB, 188 0xACB54F0C, 0xB5AE7E4D, 0x9E832D8E, 0x87981CCF, 189 0x4AC21251, 0x53D92310, 0x78F470D3, 0x61EF4192, 190 0x2EAED755, 0x37B5E614, 0x1C98B5D7, 0x05838496, 191 0x821B9859, 0x9B00A918, 0xB02DFADB, 0xA936CB9A, 192 0xE6775D5D, 0xFF6C6C1C, 0xD4413FDF, 0xCD5A0E9E, 193 0x958424A2, 0x8C9F15E3, 0xA7B24620, 0xBEA97761, 194 0xF1E8E1A6, 0xE8F3D0E7, 0xC3DE8324, 0xDAC5B265, 195 0x5D5DAEAA, 0x44469FEB, 0x6F6BCC28, 0x7670FD69, 196 0x39316BAE, 0x202A5AEF, 0x0B07092C, 0x121C386D, 197 0xDF4636F3, 0xC65D07B2, 0xED705471, 0xF46B6530, 198 0xBB2AF3F7, 0xA231C2B6, 0x891C9175, 0x9007A034, 199 0x179FBCFB, 0x0E848DBA, 0x25A9DE79, 0x3CB2EF38, 200 0x73F379FF, 0x6AE848BE, 0x41C51B7D, 0x58DE2A3C, 201 0xF0794F05, 0xE9627E44, 0xC24F2D87, 0xDB541CC6, 202 0x94158A01, 0x8D0EBB40, 0xA623E883, 0xBF38D9C2, 203 0x38A0C50D, 0x21BBF44C, 0x0A96A78F, 0x138D96CE, 204 0x5CCC0009, 0x45D73148, 0x6EFA628B, 0x77E153CA, 205 0xBABB5D54, 0xA3A06C15, 0x888D3FD6, 0x91960E97, 206 0xDED79850, 0xC7CCA911, 0xECE1FAD2, 0xF5FACB93, 207 0x7262D75C, 0x6B79E61D, 0x4054B5DE, 0x594F849F, 208 0x160E1258, 0x0F152319, 0x243870DA, 0x3D23419B, 209 0x65FD6BA7, 0x7CE65AE6, 0x57CB0925, 0x4ED03864, 210 0x0191AEA3, 0x188A9FE2, 0x33A7CC21, 0x2ABCFD60, 211 0xAD24E1AF, 0xB43FD0EE, 0x9F12832D, 0x8609B26C, 212 0xC94824AB, 0xD05315EA, 0xFB7E4629, 0xE2657768, 213 0x2F3F79F6, 0x362448B7, 0x1D091B74, 0x04122A35, 214 0x4B53BCF2, 0x52488DB3, 0x7965DE70, 0x607EEF31, 215 0xE7E6F3FE, 0xFEFDC2BF, 0xD5D0917C, 0xCCCBA03D, 216 0x838A36FA, 0x9A9107BB, 0xB1BC5478, 0xA8A76539, 217 0x3B83984B, 0x2298A90A, 0x09B5FAC9, 0x10AECB88, 218 0x5FEF5D4F, 0x46F46C0E, 0x6DD93FCD, 0x74C20E8C, 219 0xF35A1243, 0xEA412302, 0xC16C70C1, 0xD8774180, 220 0x9736D747, 0x8E2DE606, 0xA500B5C5, 0xBC1B8484, 221 0x71418A1A, 0x685ABB5B, 0x4377E898, 0x5A6CD9D9, 222 0x152D4F1E, 0x0C367E5F, 0x271B2D9C, 0x3E001CDD, 223 0xB9980012, 0xA0833153, 0x8BAE6290, 0x92B553D1, 224 0xDDF4C516, 0xC4EFF457, 0xEFC2A794, 0xF6D996D5, 225 0xAE07BCE9, 0xB71C8DA8, 0x9C31DE6B, 0x852AEF2A, 226 0xCA6B79ED, 0xD37048AC, 0xF85D1B6F, 0xE1462A2E, 227 0x66DE36E1, 0x7FC507A0, 0x54E85463, 0x4DF36522, 228 0x02B2F3E5, 0x1BA9C2A4, 0x30849167, 0x299FA026, 229 0xE4C5AEB8, 0xFDDE9FF9, 0xD6F3CC3A, 0xCFE8FD7B, 230 0x80A96BBC, 0x99B25AFD, 0xB29F093E, 0xAB84387F, 231 0x2C1C24B0, 0x350715F1, 0x1E2A4632, 0x07317773, 232 0x4870E1B4, 0x516BD0F5, 0x7A468336, 0x635DB277, 233 0xCBFAD74E, 0xD2E1E60F, 0xF9CCB5CC, 0xE0D7848D, 234 0xAF96124A, 0xB68D230B, 0x9DA070C8, 0x84BB4189, 235 0x03235D46, 0x1A386C07, 0x31153FC4, 0x280E0E85, 236 0x674F9842, 0x7E54A903, 0x5579FAC0, 0x4C62CB81, 237 0x8138C51F, 0x9823F45E, 0xB30EA79D, 0xAA1596DC, 238 0xE554001B, 0xFC4F315A, 0xD7626299, 0xCE7953D8, 239 0x49E14F17, 0x50FA7E56, 0x7BD72D95, 0x62CC1CD4, 240 0x2D8D8A13, 0x3496BB52, 0x1FBBE891, 0x06A0D9D0, 241 0x5E7EF3EC, 0x4765C2AD, 0x6C48916E, 0x7553A02F, 242 0x3A1236E8, 0x230907A9, 0x0824546A, 0x113F652B, 243 0x96A779E4, 0x8FBC48A5, 0xA4911B66, 0xBD8A2A27, 244 0xF2CBBCE0, 0xEBD08DA1, 0xC0FDDE62, 0xD9E6EF23, 245 0x14BCE1BD, 0x0DA7D0FC, 0x268A833F, 0x3F91B27E, 246 0x70D024B9, 0x69CB15F8, 0x42E6463B, 0x5BFD777A, 247 0xDC656BB5, 0xC57E5AF4, 0xEE530937, 0xF7483876, 248 0xB809AEB1, 0xA1129FF0, 0x8A3FCC33, 0x9324FD72, 249 /* T8_2 */ 250 0x00000000, 0x01C26A37, 0x0384D46E, 0x0246BE59, 251 0x0709A8DC, 0x06CBC2EB, 0x048D7CB2, 0x054F1685, 252 0x0E1351B8, 0x0FD13B8F, 0x0D9785D6, 0x0C55EFE1, 253 0x091AF964, 0x08D89353, 0x0A9E2D0A, 0x0B5C473D, 254 0x1C26A370, 0x1DE4C947, 0x1FA2771E, 0x1E601D29, 255 0x1B2F0BAC, 0x1AED619B, 0x18ABDFC2, 0x1969B5F5, 256 0x1235F2C8, 0x13F798FF, 0x11B126A6, 0x10734C91, 257 0x153C5A14, 0x14FE3023, 0x16B88E7A, 0x177AE44D, 258 0x384D46E0, 0x398F2CD7, 0x3BC9928E, 0x3A0BF8B9, 259 0x3F44EE3C, 0x3E86840B, 0x3CC03A52, 0x3D025065, 260 0x365E1758, 0x379C7D6F, 0x35DAC336, 0x3418A901, 261 0x3157BF84, 0x3095D5B3, 0x32D36BEA, 0x331101DD, 262 0x246BE590, 0x25A98FA7, 0x27EF31FE, 0x262D5BC9, 263 0x23624D4C, 0x22A0277B, 0x20E69922, 0x2124F315, 264 0x2A78B428, 0x2BBADE1F, 0x29FC6046, 0x283E0A71, 265 0x2D711CF4, 0x2CB376C3, 0x2EF5C89A, 0x2F37A2AD, 266 0x709A8DC0, 0x7158E7F7, 0x731E59AE, 0x72DC3399, 267 0x7793251C, 0x76514F2B, 0x7417F172, 0x75D59B45, 268 0x7E89DC78, 0x7F4BB64F, 0x7D0D0816, 0x7CCF6221, 269 0x798074A4, 0x78421E93, 0x7A04A0CA, 0x7BC6CAFD, 270 0x6CBC2EB0, 0x6D7E4487, 0x6F38FADE, 0x6EFA90E9, 271 0x6BB5866C, 0x6A77EC5B, 0x68315202, 0x69F33835, 272 0x62AF7F08, 0x636D153F, 0x612BAB66, 0x60E9C151, 273 0x65A6D7D4, 0x6464BDE3, 0x662203BA, 0x67E0698D, 274 0x48D7CB20, 0x4915A117, 0x4B531F4E, 0x4A917579, 275 0x4FDE63FC, 0x4E1C09CB, 0x4C5AB792, 0x4D98DDA5, 276 0x46C49A98, 0x4706F0AF, 0x45404EF6, 0x448224C1, 277 0x41CD3244, 0x400F5873, 0x4249E62A, 0x438B8C1D, 278 0x54F16850, 0x55330267, 0x5775BC3E, 0x56B7D609, 279 0x53F8C08C, 0x523AAABB, 0x507C14E2, 0x51BE7ED5, 280 0x5AE239E8, 0x5B2053DF, 0x5966ED86, 0x58A487B1, 281 0x5DEB9134, 0x5C29FB03, 0x5E6F455A, 0x5FAD2F6D, 282 0xE1351B80, 0xE0F771B7, 0xE2B1CFEE, 0xE373A5D9, 283 0xE63CB35C, 0xE7FED96B, 0xE5B86732, 0xE47A0D05, 284 0xEF264A38, 0xEEE4200F, 0xECA29E56, 0xED60F461, 285 0xE82FE2E4, 0xE9ED88D3, 0xEBAB368A, 0xEA695CBD, 286 0xFD13B8F0, 0xFCD1D2C7, 0xFE976C9E, 0xFF5506A9, 287 0xFA1A102C, 0xFBD87A1B, 0xF99EC442, 0xF85CAE75, 288 0xF300E948, 0xF2C2837F, 0xF0843D26, 0xF1465711, 289 0xF4094194, 0xF5CB2BA3, 0xF78D95FA, 0xF64FFFCD, 290 0xD9785D60, 0xD8BA3757, 0xDAFC890E, 0xDB3EE339, 291 0xDE71F5BC, 0xDFB39F8B, 0xDDF521D2, 0xDC374BE5, 292 0xD76B0CD8, 0xD6A966EF, 0xD4EFD8B6, 0xD52DB281, 293 0xD062A404, 0xD1A0CE33, 0xD3E6706A, 0xD2241A5D, 294 0xC55EFE10, 0xC49C9427, 0xC6DA2A7E, 0xC7184049, 295 0xC25756CC, 0xC3953CFB, 0xC1D382A2, 0xC011E895, 296 0xCB4DAFA8, 0xCA8FC59F, 0xC8C97BC6, 0xC90B11F1, 297 0xCC440774, 0xCD866D43, 0xCFC0D31A, 0xCE02B92D, 298 0x91AF9640, 0x906DFC77, 0x922B422E, 0x93E92819, 299 0x96A63E9C, 0x976454AB, 0x9522EAF2, 0x94E080C5, 300 0x9FBCC7F8, 0x9E7EADCF, 0x9C381396, 0x9DFA79A1, 301 0x98B56F24, 0x99770513, 0x9B31BB4A, 0x9AF3D17D, 302 0x8D893530, 0x8C4B5F07, 0x8E0DE15E, 0x8FCF8B69, 303 0x8A809DEC, 0x8B42F7DB, 0x89044982, 0x88C623B5, 304 0x839A6488, 0x82580EBF, 0x801EB0E6, 0x81DCDAD1, 305 0x8493CC54, 0x8551A663, 0x8717183A, 0x86D5720D, 306 0xA9E2D0A0, 0xA820BA97, 0xAA6604CE, 0xABA46EF9, 307 0xAEEB787C, 0xAF29124B, 0xAD6FAC12, 0xACADC625, 308 0xA7F18118, 0xA633EB2F, 0xA4755576, 0xA5B73F41, 309 0xA0F829C4, 0xA13A43F3, 0xA37CFDAA, 0xA2BE979D, 310 0xB5C473D0, 0xB40619E7, 0xB640A7BE, 0xB782CD89, 311 0xB2CDDB0C, 0xB30FB13B, 0xB1490F62, 0xB08B6555, 312 0xBBD72268, 0xBA15485F, 0xB853F606, 0xB9919C31, 313 0xBCDE8AB4, 0xBD1CE083, 0xBF5A5EDA, 0xBE9834ED, 314 /* T8_3 */ 315 0x00000000, 0xB8BC6765, 0xAA09C88B, 0x12B5AFEE, 316 0x8F629757, 0x37DEF032, 0x256B5FDC, 0x9DD738B9, 317 0xC5B428EF, 0x7D084F8A, 0x6FBDE064, 0xD7018701, 318 0x4AD6BFB8, 0xF26AD8DD, 0xE0DF7733, 0x58631056, 319 0x5019579F, 0xE8A530FA, 0xFA109F14, 0x42ACF871, 320 0xDF7BC0C8, 0x67C7A7AD, 0x75720843, 0xCDCE6F26, 321 0x95AD7F70, 0x2D111815, 0x3FA4B7FB, 0x8718D09E, 322 0x1ACFE827, 0xA2738F42, 0xB0C620AC, 0x087A47C9, 323 0xA032AF3E, 0x188EC85B, 0x0A3B67B5, 0xB28700D0, 324 0x2F503869, 0x97EC5F0C, 0x8559F0E2, 0x3DE59787, 325 0x658687D1, 0xDD3AE0B4, 0xCF8F4F5A, 0x7733283F, 326 0xEAE41086, 0x525877E3, 0x40EDD80D, 0xF851BF68, 327 0xF02BF8A1, 0x48979FC4, 0x5A22302A, 0xE29E574F, 328 0x7F496FF6, 0xC7F50893, 0xD540A77D, 0x6DFCC018, 329 0x359FD04E, 0x8D23B72B, 0x9F9618C5, 0x272A7FA0, 330 0xBAFD4719, 0x0241207C, 0x10F48F92, 0xA848E8F7, 331 0x9B14583D, 0x23A83F58, 0x311D90B6, 0x89A1F7D3, 332 0x1476CF6A, 0xACCAA80F, 0xBE7F07E1, 0x06C36084, 333 0x5EA070D2, 0xE61C17B7, 0xF4A9B859, 0x4C15DF3C, 334 0xD1C2E785, 0x697E80E0, 0x7BCB2F0E, 0xC377486B, 335 0xCB0D0FA2, 0x73B168C7, 0x6104C729, 0xD9B8A04C, 336 0x446F98F5, 0xFCD3FF90, 0xEE66507E, 0x56DA371B, 337 0x0EB9274D, 0xB6054028, 0xA4B0EFC6, 0x1C0C88A3, 338 0x81DBB01A, 0x3967D77F, 0x2BD27891, 0x936E1FF4, 339 0x3B26F703, 0x839A9066, 0x912F3F88, 0x299358ED, 340 0xB4446054, 0x0CF80731, 0x1E4DA8DF, 0xA6F1CFBA, 341 0xFE92DFEC, 0x462EB889, 0x549B1767, 0xEC277002, 342 0x71F048BB, 0xC94C2FDE, 0xDBF98030, 0x6345E755, 343 0x6B3FA09C, 0xD383C7F9, 0xC1366817, 0x798A0F72, 344 0xE45D37CB, 0x5CE150AE, 0x4E54FF40, 0xF6E89825, 345 0xAE8B8873, 0x1637EF16, 0x048240F8, 0xBC3E279D, 346 0x21E91F24, 0x99557841, 0x8BE0D7AF, 0x335CB0CA, 347 0xED59B63B, 0x55E5D15E, 0x47507EB0, 0xFFEC19D5, 348 0x623B216C, 0xDA874609, 0xC832E9E7, 0x708E8E82, 349 0x28ED9ED4, 0x9051F9B1, 0x82E4565F, 0x3A58313A, 350 0xA78F0983, 0x1F336EE6, 0x0D86C108, 0xB53AA66D, 351 0xBD40E1A4, 0x05FC86C1, 0x1749292F, 0xAFF54E4A, 352 0x322276F3, 0x8A9E1196, 0x982BBE78, 0x2097D91D, 353 0x78F4C94B, 0xC048AE2E, 0xD2FD01C0, 0x6A4166A5, 354 0xF7965E1C, 0x4F2A3979, 0x5D9F9697, 0xE523F1F2, 355 0x4D6B1905, 0xF5D77E60, 0xE762D18E, 0x5FDEB6EB, 356 0xC2098E52, 0x7AB5E937, 0x680046D9, 0xD0BC21BC, 357 0x88DF31EA, 0x3063568F, 0x22D6F961, 0x9A6A9E04, 358 0x07BDA6BD, 0xBF01C1D8, 0xADB46E36, 0x15080953, 359 0x1D724E9A, 0xA5CE29FF, 0xB77B8611, 0x0FC7E174, 360 0x9210D9CD, 0x2AACBEA8, 0x38191146, 0x80A57623, 361 0xD8C66675, 0x607A0110, 0x72CFAEFE, 0xCA73C99B, 362 0x57A4F122, 0xEF189647, 0xFDAD39A9, 0x45115ECC, 363 0x764DEE06, 0xCEF18963, 0xDC44268D, 0x64F841E8, 364 0xF92F7951, 0x41931E34, 0x5326B1DA, 0xEB9AD6BF, 365 0xB3F9C6E9, 0x0B45A18C, 0x19F00E62, 0xA14C6907, 366 0x3C9B51BE, 0x842736DB, 0x96929935, 0x2E2EFE50, 367 0x2654B999, 0x9EE8DEFC, 0x8C5D7112, 0x34E11677, 368 0xA9362ECE, 0x118A49AB, 0x033FE645, 0xBB838120, 369 0xE3E09176, 0x5B5CF613, 0x49E959FD, 0xF1553E98, 370 0x6C820621, 0xD43E6144, 0xC68BCEAA, 0x7E37A9CF, 371 0xD67F4138, 0x6EC3265D, 0x7C7689B3, 0xC4CAEED6, 372 0x591DD66F, 0xE1A1B10A, 0xF3141EE4, 0x4BA87981, 373 0x13CB69D7, 0xAB770EB2, 0xB9C2A15C, 0x017EC639, 374 0x9CA9FE80, 0x241599E5, 0x36A0360B, 0x8E1C516E, 375 0x866616A7, 0x3EDA71C2, 0x2C6FDE2C, 0x94D3B949, 376 0x090481F0, 0xB1B8E695, 0xA30D497B, 0x1BB12E1E, 377 0x43D23E48, 0xFB6E592D, 0xE9DBF6C3, 0x516791A6, 378 0xCCB0A91F, 0x740CCE7A, 0x66B96194, 0xDE0506F1, 379 /* T8_4 */ 380 0x00000000, 0x3D6029B0, 0x7AC05360, 0x47A07AD0, 381 0xF580A6C0, 0xC8E08F70, 0x8F40F5A0, 0xB220DC10, 382 0x30704BC1, 0x0D106271, 0x4AB018A1, 0x77D03111, 383 0xC5F0ED01, 0xF890C4B1, 0xBF30BE61, 0x825097D1, 384 0x60E09782, 0x5D80BE32, 0x1A20C4E2, 0x2740ED52, 385 0x95603142, 0xA80018F2, 0xEFA06222, 0xD2C04B92, 386 0x5090DC43, 0x6DF0F5F3, 0x2A508F23, 0x1730A693, 387 0xA5107A83, 0x98705333, 0xDFD029E3, 0xE2B00053, 388 0xC1C12F04, 0xFCA106B4, 0xBB017C64, 0x866155D4, 389 0x344189C4, 0x0921A074, 0x4E81DAA4, 0x73E1F314, 390 0xF1B164C5, 0xCCD14D75, 0x8B7137A5, 0xB6111E15, 391 0x0431C205, 0x3951EBB5, 0x7EF19165, 0x4391B8D5, 392 0xA121B886, 0x9C419136, 0xDBE1EBE6, 0xE681C256, 393 0x54A11E46, 0x69C137F6, 0x2E614D26, 0x13016496, 394 0x9151F347, 0xAC31DAF7, 0xEB91A027, 0xD6F18997, 395 0x64D15587, 0x59B17C37, 0x1E1106E7, 0x23712F57, 396 0x58F35849, 0x659371F9, 0x22330B29, 0x1F532299, 397 0xAD73FE89, 0x9013D739, 0xD7B3ADE9, 0xEAD38459, 398 0x68831388, 0x55E33A38, 0x124340E8, 0x2F236958, 399 0x9D03B548, 0xA0639CF8, 0xE7C3E628, 0xDAA3CF98, 400 0x3813CFCB, 0x0573E67B, 0x42D39CAB, 0x7FB3B51B, 401 0xCD93690B, 0xF0F340BB, 0xB7533A6B, 0x8A3313DB, 402 0x0863840A, 0x3503ADBA, 0x72A3D76A, 0x4FC3FEDA, 403 0xFDE322CA, 0xC0830B7A, 0x872371AA, 0xBA43581A, 404 0x9932774D, 0xA4525EFD, 0xE3F2242D, 0xDE920D9D, 405 0x6CB2D18D, 0x51D2F83D, 0x167282ED, 0x2B12AB5D, 406 0xA9423C8C, 0x9422153C, 0xD3826FEC, 0xEEE2465C, 407 0x5CC29A4C, 0x61A2B3FC, 0x2602C92C, 0x1B62E09C, 408 0xF9D2E0CF, 0xC4B2C97F, 0x8312B3AF, 0xBE729A1F, 409 0x0C52460F, 0x31326FBF, 0x7692156F, 0x4BF23CDF, 410 0xC9A2AB0E, 0xF4C282BE, 0xB362F86E, 0x8E02D1DE, 411 0x3C220DCE, 0x0142247E, 0x46E25EAE, 0x7B82771E, 412 0xB1E6B092, 0x8C869922, 0xCB26E3F2, 0xF646CA42, 413 0x44661652, 0x79063FE2, 0x3EA64532, 0x03C66C82, 414 0x8196FB53, 0xBCF6D2E3, 0xFB56A833, 0xC6368183, 415 0x74165D93, 0x49767423, 0x0ED60EF3, 0x33B62743, 416 0xD1062710, 0xEC660EA0, 0xABC67470, 0x96A65DC0, 417 0x248681D0, 0x19E6A860, 0x5E46D2B0, 0x6326FB00, 418 0xE1766CD1, 0xDC164561, 0x9BB63FB1, 0xA6D61601, 419 0x14F6CA11, 0x2996E3A1, 0x6E369971, 0x5356B0C1, 420 0x70279F96, 0x4D47B626, 0x0AE7CCF6, 0x3787E546, 421 0x85A73956, 0xB8C710E6, 0xFF676A36, 0xC2074386, 422 0x4057D457, 0x7D37FDE7, 0x3A978737, 0x07F7AE87, 423 0xB5D77297, 0x88B75B27, 0xCF1721F7, 0xF2770847, 424 0x10C70814, 0x2DA721A4, 0x6A075B74, 0x576772C4, 425 0xE547AED4, 0xD8278764, 0x9F87FDB4, 0xA2E7D404, 426 0x20B743D5, 0x1DD76A65, 0x5A7710B5, 0x67173905, 427 0xD537E515, 0xE857CCA5, 0xAFF7B675, 0x92979FC5, 428 0xE915E8DB, 0xD475C16B, 0x93D5BBBB, 0xAEB5920B, 429 0x1C954E1B, 0x21F567AB, 0x66551D7B, 0x5B3534CB, 430 0xD965A31A, 0xE4058AAA, 0xA3A5F07A, 0x9EC5D9CA, 431 0x2CE505DA, 0x11852C6A, 0x562556BA, 0x6B457F0A, 432 0x89F57F59, 0xB49556E9, 0xF3352C39, 0xCE550589, 433 0x7C75D999, 0x4115F029, 0x06B58AF9, 0x3BD5A349, 434 0xB9853498, 0x84E51D28, 0xC34567F8, 0xFE254E48, 435 0x4C059258, 0x7165BBE8, 0x36C5C138, 0x0BA5E888, 436 0x28D4C7DF, 0x15B4EE6F, 0x521494BF, 0x6F74BD0F, 437 0xDD54611F, 0xE03448AF, 0xA794327F, 0x9AF41BCF, 438 0x18A48C1E, 0x25C4A5AE, 0x6264DF7E, 0x5F04F6CE, 439 0xED242ADE, 0xD044036E, 0x97E479BE, 0xAA84500E, 440 0x4834505D, 0x755479ED, 0x32F4033D, 0x0F942A8D, 441 0xBDB4F69D, 0x80D4DF2D, 0xC774A5FD, 0xFA148C4D, 442 0x78441B9C, 0x4524322C, 0x028448FC, 0x3FE4614C, 443 0x8DC4BD5C, 0xB0A494EC, 0xF704EE3C, 0xCA64C78C, 444 /* T8_5 */ 445 0x00000000, 0xCB5CD3A5, 0x4DC8A10B, 0x869472AE, 446 0x9B914216, 0x50CD91B3, 0xD659E31D, 0x1D0530B8, 447 0xEC53826D, 0x270F51C8, 0xA19B2366, 0x6AC7F0C3, 448 0x77C2C07B, 0xBC9E13DE, 0x3A0A6170, 0xF156B2D5, 449 0x03D6029B, 0xC88AD13E, 0x4E1EA390, 0x85427035, 450 0x9847408D, 0x531B9328, 0xD58FE186, 0x1ED33223, 451 0xEF8580F6, 0x24D95353, 0xA24D21FD, 0x6911F258, 452 0x7414C2E0, 0xBF481145, 0x39DC63EB, 0xF280B04E, 453 0x07AC0536, 0xCCF0D693, 0x4A64A43D, 0x81387798, 454 0x9C3D4720, 0x57619485, 0xD1F5E62B, 0x1AA9358E, 455 0xEBFF875B, 0x20A354FE, 0xA6372650, 0x6D6BF5F5, 456 0x706EC54D, 0xBB3216E8, 0x3DA66446, 0xF6FAB7E3, 457 0x047A07AD, 0xCF26D408, 0x49B2A6A6, 0x82EE7503, 458 0x9FEB45BB, 0x54B7961E, 0xD223E4B0, 0x197F3715, 459 0xE82985C0, 0x23755665, 0xA5E124CB, 0x6EBDF76E, 460 0x73B8C7D6, 0xB8E41473, 0x3E7066DD, 0xF52CB578, 461 0x0F580A6C, 0xC404D9C9, 0x4290AB67, 0x89CC78C2, 462 0x94C9487A, 0x5F959BDF, 0xD901E971, 0x125D3AD4, 463 0xE30B8801, 0x28575BA4, 0xAEC3290A, 0x659FFAAF, 464 0x789ACA17, 0xB3C619B2, 0x35526B1C, 0xFE0EB8B9, 465 0x0C8E08F7, 0xC7D2DB52, 0x4146A9FC, 0x8A1A7A59, 466 0x971F4AE1, 0x5C439944, 0xDAD7EBEA, 0x118B384F, 467 0xE0DD8A9A, 0x2B81593F, 0xAD152B91, 0x6649F834, 468 0x7B4CC88C, 0xB0101B29, 0x36846987, 0xFDD8BA22, 469 0x08F40F5A, 0xC3A8DCFF, 0x453CAE51, 0x8E607DF4, 470 0x93654D4C, 0x58399EE9, 0xDEADEC47, 0x15F13FE2, 471 0xE4A78D37, 0x2FFB5E92, 0xA96F2C3C, 0x6233FF99, 472 0x7F36CF21, 0xB46A1C84, 0x32FE6E2A, 0xF9A2BD8F, 473 0x0B220DC1, 0xC07EDE64, 0x46EAACCA, 0x8DB67F6F, 474 0x90B34FD7, 0x5BEF9C72, 0xDD7BEEDC, 0x16273D79, 475 0xE7718FAC, 0x2C2D5C09, 0xAAB92EA7, 0x61E5FD02, 476 0x7CE0CDBA, 0xB7BC1E1F, 0x31286CB1, 0xFA74BF14, 477 0x1EB014D8, 0xD5ECC77D, 0x5378B5D3, 0x98246676, 478 0x852156CE, 0x4E7D856B, 0xC8E9F7C5, 0x03B52460, 479 0xF2E396B5, 0x39BF4510, 0xBF2B37BE, 0x7477E41B, 480 0x6972D4A3, 0xA22E0706, 0x24BA75A8, 0xEFE6A60D, 481 0x1D661643, 0xD63AC5E6, 0x50AEB748, 0x9BF264ED, 482 0x86F75455, 0x4DAB87F0, 0xCB3FF55E, 0x006326FB, 483 0xF135942E, 0x3A69478B, 0xBCFD3525, 0x77A1E680, 484 0x6AA4D638, 0xA1F8059D, 0x276C7733, 0xEC30A496, 485 0x191C11EE, 0xD240C24B, 0x54D4B0E5, 0x9F886340, 486 0x828D53F8, 0x49D1805D, 0xCF45F2F3, 0x04192156, 487 0xF54F9383, 0x3E134026, 0xB8873288, 0x73DBE12D, 488 0x6EDED195, 0xA5820230, 0x2316709E, 0xE84AA33B, 489 0x1ACA1375, 0xD196C0D0, 0x5702B27E, 0x9C5E61DB, 490 0x815B5163, 0x4A0782C6, 0xCC93F068, 0x07CF23CD, 491 0xF6999118, 0x3DC542BD, 0xBB513013, 0x700DE3B6, 492 0x6D08D30E, 0xA65400AB, 0x20C07205, 0xEB9CA1A0, 493 0x11E81EB4, 0xDAB4CD11, 0x5C20BFBF, 0x977C6C1A, 494 0x8A795CA2, 0x41258F07, 0xC7B1FDA9, 0x0CED2E0C, 495 0xFDBB9CD9, 0x36E74F7C, 0xB0733DD2, 0x7B2FEE77, 496 0x662ADECF, 0xAD760D6A, 0x2BE27FC4, 0xE0BEAC61, 497 0x123E1C2F, 0xD962CF8A, 0x5FF6BD24, 0x94AA6E81, 498 0x89AF5E39, 0x42F38D9C, 0xC467FF32, 0x0F3B2C97, 499 0xFE6D9E42, 0x35314DE7, 0xB3A53F49, 0x78F9ECEC, 500 0x65FCDC54, 0xAEA00FF1, 0x28347D5F, 0xE368AEFA, 501 0x16441B82, 0xDD18C827, 0x5B8CBA89, 0x90D0692C, 502 0x8DD55994, 0x46898A31, 0xC01DF89F, 0x0B412B3A, 503 0xFA1799EF, 0x314B4A4A, 0xB7DF38E4, 0x7C83EB41, 504 0x6186DBF9, 0xAADA085C, 0x2C4E7AF2, 0xE712A957, 505 0x15921919, 0xDECECABC, 0x585AB812, 0x93066BB7, 506 0x8E035B0F, 0x455F88AA, 0xC3CBFA04, 0x089729A1, 507 0xF9C19B74, 0x329D48D1, 0xB4093A7F, 0x7F55E9DA, 508 0x6250D962, 0xA90C0AC7, 0x2F987869, 0xE4C4ABCC, 509 /* T8_6 */ 510 0x00000000, 0xA6770BB4, 0x979F1129, 0x31E81A9D, 511 0xF44F2413, 0x52382FA7, 0x63D0353A, 0xC5A73E8E, 512 0x33EF4E67, 0x959845D3, 0xA4705F4E, 0x020754FA, 513 0xC7A06A74, 0x61D761C0, 0x503F7B5D, 0xF64870E9, 514 0x67DE9CCE, 0xC1A9977A, 0xF0418DE7, 0x56368653, 515 0x9391B8DD, 0x35E6B369, 0x040EA9F4, 0xA279A240, 516 0x5431D2A9, 0xF246D91D, 0xC3AEC380, 0x65D9C834, 517 0xA07EF6BA, 0x0609FD0E, 0x37E1E793, 0x9196EC27, 518 0xCFBD399C, 0x69CA3228, 0x582228B5, 0xFE552301, 519 0x3BF21D8F, 0x9D85163B, 0xAC6D0CA6, 0x0A1A0712, 520 0xFC5277FB, 0x5A257C4F, 0x6BCD66D2, 0xCDBA6D66, 521 0x081D53E8, 0xAE6A585C, 0x9F8242C1, 0x39F54975, 522 0xA863A552, 0x0E14AEE6, 0x3FFCB47B, 0x998BBFCF, 523 0x5C2C8141, 0xFA5B8AF5, 0xCBB39068, 0x6DC49BDC, 524 0x9B8CEB35, 0x3DFBE081, 0x0C13FA1C, 0xAA64F1A8, 525 0x6FC3CF26, 0xC9B4C492, 0xF85CDE0F, 0x5E2BD5BB, 526 0x440B7579, 0xE27C7ECD, 0xD3946450, 0x75E36FE4, 527 0xB044516A, 0x16335ADE, 0x27DB4043, 0x81AC4BF7, 528 0x77E43B1E, 0xD19330AA, 0xE07B2A37, 0x460C2183, 529 0x83AB1F0D, 0x25DC14B9, 0x14340E24, 0xB2430590, 530 0x23D5E9B7, 0x85A2E203, 0xB44AF89E, 0x123DF32A, 531 0xD79ACDA4, 0x71EDC610, 0x4005DC8D, 0xE672D739, 532 0x103AA7D0, 0xB64DAC64, 0x87A5B6F9, 0x21D2BD4D, 533 0xE47583C3, 0x42028877, 0x73EA92EA, 0xD59D995E, 534 0x8BB64CE5, 0x2DC14751, 0x1C295DCC, 0xBA5E5678, 535 0x7FF968F6, 0xD98E6342, 0xE86679DF, 0x4E11726B, 536 0xB8590282, 0x1E2E0936, 0x2FC613AB, 0x89B1181F, 537 0x4C162691, 0xEA612D25, 0xDB8937B8, 0x7DFE3C0C, 538 0xEC68D02B, 0x4A1FDB9F, 0x7BF7C102, 0xDD80CAB6, 539 0x1827F438, 0xBE50FF8C, 0x8FB8E511, 0x29CFEEA5, 540 0xDF879E4C, 0x79F095F8, 0x48188F65, 0xEE6F84D1, 541 0x2BC8BA5F, 0x8DBFB1EB, 0xBC57AB76, 0x1A20A0C2, 542 0x8816EAF2, 0x2E61E146, 0x1F89FBDB, 0xB9FEF06F, 543 0x7C59CEE1, 0xDA2EC555, 0xEBC6DFC8, 0x4DB1D47C, 544 0xBBF9A495, 0x1D8EAF21, 0x2C66B5BC, 0x8A11BE08, 545 0x4FB68086, 0xE9C18B32, 0xD82991AF, 0x7E5E9A1B, 546 0xEFC8763C, 0x49BF7D88, 0x78576715, 0xDE206CA1, 547 0x1B87522F, 0xBDF0599B, 0x8C184306, 0x2A6F48B2, 548 0xDC27385B, 0x7A5033EF, 0x4BB82972, 0xEDCF22C6, 549 0x28681C48, 0x8E1F17FC, 0xBFF70D61, 0x198006D5, 550 0x47ABD36E, 0xE1DCD8DA, 0xD034C247, 0x7643C9F3, 551 0xB3E4F77D, 0x1593FCC9, 0x247BE654, 0x820CEDE0, 552 0x74449D09, 0xD23396BD, 0xE3DB8C20, 0x45AC8794, 553 0x800BB91A, 0x267CB2AE, 0x1794A833, 0xB1E3A387, 554 0x20754FA0, 0x86024414, 0xB7EA5E89, 0x119D553D, 555 0xD43A6BB3, 0x724D6007, 0x43A57A9A, 0xE5D2712E, 556 0x139A01C7, 0xB5ED0A73, 0x840510EE, 0x22721B5A, 557 0xE7D525D4, 0x41A22E60, 0x704A34FD, 0xD63D3F49, 558 0xCC1D9F8B, 0x6A6A943F, 0x5B828EA2, 0xFDF58516, 559 0x3852BB98, 0x9E25B02C, 0xAFCDAAB1, 0x09BAA105, 560 0xFFF2D1EC, 0x5985DA58, 0x686DC0C5, 0xCE1ACB71, 561 0x0BBDF5FF, 0xADCAFE4B, 0x9C22E4D6, 0x3A55EF62, 562 0xABC30345, 0x0DB408F1, 0x3C5C126C, 0x9A2B19D8, 563 0x5F8C2756, 0xF9FB2CE2, 0xC813367F, 0x6E643DCB, 564 0x982C4D22, 0x3E5B4696, 0x0FB35C0B, 0xA9C457BF, 565 0x6C636931, 0xCA146285, 0xFBFC7818, 0x5D8B73AC, 566 0x03A0A617, 0xA5D7ADA3, 0x943FB73E, 0x3248BC8A, 567 0xF7EF8204, 0x519889B0, 0x6070932D, 0xC6079899, 568 0x304FE870, 0x9638E3C4, 0xA7D0F959, 0x01A7F2ED, 569 0xC400CC63, 0x6277C7D7, 0x539FDD4A, 0xF5E8D6FE, 570 0x647E3AD9, 0xC209316D, 0xF3E12BF0, 0x55962044, 571 0x90311ECA, 0x3646157E, 0x07AE0FE3, 0xA1D90457, 572 0x579174BE, 0xF1E67F0A, 0xC00E6597, 0x66796E23, 573 0xA3DE50AD, 0x05A95B19, 0x34414184, 0x92364A30, 574 /* T8_7 */ 575 0x00000000, 0xCCAA009E, 0x4225077D, 0x8E8F07E3, 576 0x844A0EFA, 0x48E00E64, 0xC66F0987, 0x0AC50919, 577 0xD3E51BB5, 0x1F4F1B2B, 0x91C01CC8, 0x5D6A1C56, 578 0x57AF154F, 0x9B0515D1, 0x158A1232, 0xD92012AC, 579 0x7CBB312B, 0xB01131B5, 0x3E9E3656, 0xF23436C8, 580 0xF8F13FD1, 0x345B3F4F, 0xBAD438AC, 0x767E3832, 581 0xAF5E2A9E, 0x63F42A00, 0xED7B2DE3, 0x21D12D7D, 582 0x2B142464, 0xE7BE24FA, 0x69312319, 0xA59B2387, 583 0xF9766256, 0x35DC62C8, 0xBB53652B, 0x77F965B5, 584 0x7D3C6CAC, 0xB1966C32, 0x3F196BD1, 0xF3B36B4F, 585 0x2A9379E3, 0xE639797D, 0x68B67E9E, 0xA41C7E00, 586 0xAED97719, 0x62737787, 0xECFC7064, 0x205670FA, 587 0x85CD537D, 0x496753E3, 0xC7E85400, 0x0B42549E, 588 0x01875D87, 0xCD2D5D19, 0x43A25AFA, 0x8F085A64, 589 0x562848C8, 0x9A824856, 0x140D4FB5, 0xD8A74F2B, 590 0xD2624632, 0x1EC846AC, 0x9047414F, 0x5CED41D1, 591 0x299DC2ED, 0xE537C273, 0x6BB8C590, 0xA712C50E, 592 0xADD7CC17, 0x617DCC89, 0xEFF2CB6A, 0x2358CBF4, 593 0xFA78D958, 0x36D2D9C6, 0xB85DDE25, 0x74F7DEBB, 594 0x7E32D7A2, 0xB298D73C, 0x3C17D0DF, 0xF0BDD041, 595 0x5526F3C6, 0x998CF358, 0x1703F4BB, 0xDBA9F425, 596 0xD16CFD3C, 0x1DC6FDA2, 0x9349FA41, 0x5FE3FADF, 597 0x86C3E873, 0x4A69E8ED, 0xC4E6EF0E, 0x084CEF90, 598 0x0289E689, 0xCE23E617, 0x40ACE1F4, 0x8C06E16A, 599 0xD0EBA0BB, 0x1C41A025, 0x92CEA7C6, 0x5E64A758, 600 0x54A1AE41, 0x980BAEDF, 0x1684A93C, 0xDA2EA9A2, 601 0x030EBB0E, 0xCFA4BB90, 0x412BBC73, 0x8D81BCED, 602 0x8744B5F4, 0x4BEEB56A, 0xC561B289, 0x09CBB217, 603 0xAC509190, 0x60FA910E, 0xEE7596ED, 0x22DF9673, 604 0x281A9F6A, 0xE4B09FF4, 0x6A3F9817, 0xA6959889, 605 0x7FB58A25, 0xB31F8ABB, 0x3D908D58, 0xF13A8DC6, 606 0xFBFF84DF, 0x37558441, 0xB9DA83A2, 0x7570833C, 607 0x533B85DA, 0x9F918544, 0x111E82A7, 0xDDB48239, 608 0xD7718B20, 0x1BDB8BBE, 0x95548C5D, 0x59FE8CC3, 609 0x80DE9E6F, 0x4C749EF1, 0xC2FB9912, 0x0E51998C, 610 0x04949095, 0xC83E900B, 0x46B197E8, 0x8A1B9776, 611 0x2F80B4F1, 0xE32AB46F, 0x6DA5B38C, 0xA10FB312, 612 0xABCABA0B, 0x6760BA95, 0xE9EFBD76, 0x2545BDE8, 613 0xFC65AF44, 0x30CFAFDA, 0xBE40A839, 0x72EAA8A7, 614 0x782FA1BE, 0xB485A120, 0x3A0AA6C3, 0xF6A0A65D, 615 0xAA4DE78C, 0x66E7E712, 0xE868E0F1, 0x24C2E06F, 616 0x2E07E976, 0xE2ADE9E8, 0x6C22EE0B, 0xA088EE95, 617 0x79A8FC39, 0xB502FCA7, 0x3B8DFB44, 0xF727FBDA, 618 0xFDE2F2C3, 0x3148F25D, 0xBFC7F5BE, 0x736DF520, 619 0xD6F6D6A7, 0x1A5CD639, 0x94D3D1DA, 0x5879D144, 620 0x52BCD85D, 0x9E16D8C3, 0x1099DF20, 0xDC33DFBE, 621 0x0513CD12, 0xC9B9CD8C, 0x4736CA6F, 0x8B9CCAF1, 622 0x8159C3E8, 0x4DF3C376, 0xC37CC495, 0x0FD6C40B, 623 0x7AA64737, 0xB60C47A9, 0x3883404A, 0xF42940D4, 624 0xFEEC49CD, 0x32464953, 0xBCC94EB0, 0x70634E2E, 625 0xA9435C82, 0x65E95C1C, 0xEB665BFF, 0x27CC5B61, 626 0x2D095278, 0xE1A352E6, 0x6F2C5505, 0xA386559B, 627 0x061D761C, 0xCAB77682, 0x44387161, 0x889271FF, 628 0x825778E6, 0x4EFD7878, 0xC0727F9B, 0x0CD87F05, 629 0xD5F86DA9, 0x19526D37, 0x97DD6AD4, 0x5B776A4A, 630 0x51B26353, 0x9D1863CD, 0x1397642E, 0xDF3D64B0, 631 0x83D02561, 0x4F7A25FF, 0xC1F5221C, 0x0D5F2282, 632 0x079A2B9B, 0xCB302B05, 0x45BF2CE6, 0x89152C78, 633 0x50353ED4, 0x9C9F3E4A, 0x121039A9, 0xDEBA3937, 634 0xD47F302E, 0x18D530B0, 0x965A3753, 0x5AF037CD, 635 0xFF6B144A, 0x33C114D4, 0xBD4E1337, 0x71E413A9, 636 0x7B211AB0, 0xB78B1A2E, 0x39041DCD, 0xF5AE1D53, 637 0x2C8E0FFF, 0xE0240F61, 0x6EAB0882, 0xA201081C, 638 0xA8C40105, 0x646E019B, 0xEAE10678, 0x264B06E6 639 }; 640}