0x0, 2 => 0x77073096, 3 => 0xEE0E612C, 4 => 0x990951BA, 5 => 0x076DC419, 6 => 0x706AF48F, 7 => 0xE963A535, 8 => 0x9E6495A3, 9 => 0x0EDB8832, 10 => 0x79DCB8A4, 11 => 0xE0D5E91E, 12 => 0x97D2D988, 13 => 0x09B64C2B, 14 => 0x7EB17CBD, 15 => 0xE7B82D07, 16 => 0x90BF1D91, 17 => 0x1DB71064, 18 => 0x6AB020F2, 19 => 0xF3B97148, 20 => 0x84BE41DE, 21 => 0x1ADAD47D, 22 => 0x6DDDE4EB, 23 => 0xF4D4B551, 24 => 0x83D385C7, 25 => 0x136C9856, 26 => 0x646BA8C0, 27 => 0xFD62F97A, 28 => 0x8A65C9EC, 29 => 0x14015C4F, 30 => 0x63066CD9, 31 => 0xFA0F3D63, 32 => 0x8D080DF5, 33 => 0x3B6E20C8, 34 => 0x4C69105E, 35 => 0xD56041E4, 36 => 0xA2677172, 37 => 0x3C03E4D1, 38 => 0x4B04D447, 39 => 0xD20D85FD, 40 => 0xA50AB56B, 41 => 0x35B5A8FA, 42 => 0x42B2986C, 43 => 0xDBBBC9D6, 44 => 0xACBCF940, 45 => 0x32D86CE3, 46 => 0x45DF5C75, 47 => 0xDCD60DCF, 48 => 0xABD13D59, 49 => 0x26D930AC, 50 => 0x51DE003A, 51 => 0xC8D75180, 52 => 0xBFD06116, 53 => 0x21B4F4B5, 54 => 0x56B3C423, 55 => 0xCFBA9599, 56 => 0xB8BDA50F, 57 => 0x2802B89E, 58 => 0x5F058808, 59 => 0xC60CD9B2, 60 => 0xB10BE924, 61 => 0x2F6F7C87, 62 => 0x58684C11, 63 => 0xC1611DAB, 64 => 0xB6662D3D, 65 => 0x76DC4190, 66 => 0x01DB7106, 67 => 0x98D220BC, 68 => 0xEFD5102A, 69 => 0x71B18589, 70 => 0x06B6B51F, 71 => 0x9FBFE4A5, 72 => 0xE8B8D433, 73 => 0x7807C9A2, 74 => 0x0F00F934, 75 => 0x9609A88E, 76 => 0xE10E9818, 77 => 0x7F6A0DBB, 78 => 0x086D3D2D, 79 => 0x91646C97, 80 => 0xE6635C01, 81 => 0x6B6B51F4, 82 => 0x1C6C6162, 83 => 0x856530D8, 84 => 0xF262004E, 85 => 0x6C0695ED, 86 => 0x1B01A57B, 87 => 0x8208F4C1, 88 => 0xF50FC457, 89 => 0x65B0D9C6, 90 => 0x12B7E950, 91 => 0x8BBEB8EA, 92 => 0xFCB9887C, 93 => 0x62DD1DDF, 94 => 0x15DA2D49, 95 => 0x8CD37CF3, 96 => 0xFBD44C65, 97 => 0x4DB26158, 98 => 0x3AB551CE, 99 => 0xA3BC0074, 100 => 0xD4BB30E2, 101 => 0x4ADFA541, 102 => 0x3DD895D7, 103 => 0xA4D1C46D, 104 => 0xD3D6F4FB, 105 => 0x4369E96A, 106 => 0x346ED9FC, 107 => 0xAD678846, 108 => 0xDA60B8D0, 109 => 0x44042D73, 110 => 0x33031DE5, 111 => 0xAA0A4C5F, 112 => 0xDD0D7CC9, 113 => 0x5005713C, 114 => 0x270241AA, 115 => 0xBE0B1010, 116 => 0xC90C2086, 117 => 0x5768B525, 118 => 0x206F85B3, 119 => 0xB966D409, 120 => 0xCE61E49F, 121 => 0x5EDEF90E, 122 => 0x29D9C998, 123 => 0xB0D09822, 124 => 0xC7D7A8B4, 125 => 0x59B33D17, 126 => 0x2EB40D81, 127 => 0xB7BD5C3B, 128 => 0xC0BA6CAD, 129 => 0xEDB88320, 130 => 0x9ABFB3B6, 131 => 0x03B6E20C, 132 => 0x74B1D29A, 133 => 0xEAD54739, 134 => 0x9DD277AF, 135 => 0x04DB2615, 136 => 0x73DC1683, 137 => 0xE3630B12, 138 => 0x94643B84, 139 => 0x0D6D6A3E, 140 => 0x7A6A5AA8, 141 => 0xE40ECF0B, 142 => 0x9309FF9D, 143 => 0x0A00AE27, 144 => 0x7D079EB1, 145 => 0xF00F9344, 146 => 0x8708A3D2, 147 => 0x1E01F268, 148 => 0x6906C2FE, 149 => 0xF762575D, 150 => 0x806567CB, 151 => 0x196C3671, 152 => 0x6E6B06E7, 153 => 0xFED41B76, 154 => 0x89D32BE0, 155 => 0x10DA7A5A, 156 => 0x67DD4ACC, 157 => 0xF9B9DF6F, 158 => 0x8EBEEFF9, 159 => 0x17B7BE43, 160 => 0x60B08ED5, 161 => 0xD6D6A3E8, 162 => 0xA1D1937E, 163 => 0x38D8C2C4, 164 => 0x4FDFF252, 165 => 0xD1BB67F1, 166 => 0xA6BC5767, 167 => 0x3FB506DD, 168 => 0x48B2364B, 169 => 0xD80D2BDA, 170 => 0xAF0A1B4C, 171 => 0x36034AF6, 172 => 0x41047A60, 173 => 0xDF60EFC3, 174 => 0xA867DF55, 175 => 0x316E8EEF, 176 => 0x4669BE79, 177 => 0xCB61B38C, 178 => 0xBC66831A, 179 => 0x256FD2A0, 180 => 0x5268E236, 181 => 0xCC0C7795, 182 => 0xBB0B4703, 183 => 0x220216B9, 184 => 0x5505262F, 185 => 0xC5BA3BBE, 186 => 0xB2BD0B28, 187 => 0x2BB45A92, 188 => 0x5CB36A04, 189 => 0xC2D7FFA7, 190 => 0xB5D0CF31, 191 => 0x2CD99E8B, 192 => 0x5BDEAE1D, 193 => 0x9B64C2B0, 194 => 0xEC63F226, 195 => 0x756AA39C, 196 => 0x026D930A, 197 => 0x9C0906A9, 198 => 0xEB0E363F, 199 => 0x72076785, 200 => 0x05005713, 201 => 0x95BF4A82, 202 => 0xE2B87A14, 203 => 0x7BB12BAE, 204 => 0x0CB61B38, 205 => 0x92D28E9B, 206 => 0xE5D5BE0D, 207 => 0x7CDCEFB7, 208 => 0x0BDBDF21, 209 => 0x86D3D2D4, 210 => 0xF1D4E242, 211 => 0x68DDB3F8, 212 => 0x1FDA836E, 213 => 0x81BE16CD, 214 => 0xF6B9265B, 215 => 0x6FB077E1, 216 => 0x18B74777, 217 => 0x88085AE6, 218 => 0xFF0F6A70, 219 => 0x66063BCA, 220 => 0x11010B5C, 221 => 0x8F659EFF, 222 => 0xF862AE69, 223 => 0x616BFFD3, 224 => 0x166CCF45, 225 => 0xA00AE278, 226 => 0xD70DD2EE, 227 => 0x4E048354, 228 => 0x3903B3C2, 229 => 0xA7672661, 230 => 0xD06016F7, 231 => 0x4969474D, 232 => 0x3E6E77DB, 233 => 0xAED16A4A, 234 => 0xD9D65ADC, 235 => 0x40DF0B66, 236 => 0x37D83BF0, 237 => 0xA9BCAE53, 238 => 0xDEBB9EC5, 239 => 0x47B2CF7F, 240 => 0x30B5FFE9, 241 => 0xBDBDF21C, 242 => 0xCABAC28A, 243 => 0x53B39330, 244 => 0x24B4A3A6, 245 => 0xBAD03605, 246 => 0xCDD70693, 247 => 0x54DE5729, 248 => 0x23D967BF, 249 => 0xB3667A2E, 250 => 0xC4614AB8, 251 => 0x5D681B02, 252 => 0x2A6F2B94, 253 => 0xB40BBE37, 254 => 0xC30C8EA1, 255 => 0x5A05DF1B, 256 => 0x2D02EF8D, ]; $xorTableHex = [ "00" => 0x0, "01" => 0x77073096, "02" => 0xEE0E612C, "03" => 0x990951BA, "04" => 0x076DC419, "05" => 0x706AF48F, "06" => 0xE963A535, "07" => 0x9E6495A3, "08" => 0x0EDB8832, "09" => 0x79DCB8A4, "0A" => 0xE0D5E91E, "0B" => 0x97D2D988, "0C" => 0x09B64C2B, "0D" => 0x7EB17CBD, "0E" => 0xE7B82D07, "0F" => 0x90BF1D91, "10" => 0x1DB71064, "11" => 0x6AB020F2, "12" => 0xF3B97148, "13" => 0x84BE41DE, "14" => 0x1ADAD47D, "15" => 0x6DDDE4EB, "16" => 0xF4D4B551, "17" => 0x83D385C7, "18" => 0x136C9856, "19" => 0x646BA8C0, "1A" => 0xFD62F97A, "1B" => 0x8A65C9EC, "1C" => 0x14015C4F, "1D" => 0x63066CD9, "1E" => 0xFA0F3D63, "1F" => 0x8D080DF5, "20" => 0x3B6E20C8, "21" => 0x4C69105E, "22" => 0xD56041E4, "23" => 0xA2677172, "24" => 0x3C03E4D1, "25" => 0x4B04D447, "26" => 0xD20D85FD, "27" => 0xA50AB56B, "28" => 0x35B5A8FA, "29" => 0x42B2986C, "2A" => 0xDBBBC9D6, "2B" => 0xACBCF940, "2C" => 0x32D86CE3, "2D" => 0x45DF5C75, "2E" => 0xDCD60DCF, "2F" => 0xABD13D59, "30" => 0x26D930AC, "31" => 0x51DE003A, "32" => 0xC8D75180, "33" => 0xBFD06116, "34" => 0x21B4F4B5, "35" => 0x56B3C423, "36" => 0xCFBA9599, "37" => 0xB8BDA50F, "38" => 0x2802B89E, "39" => 0x5F058808, "3A" => 0xC60CD9B2, "3B" => 0xB10BE924, "3C" => 0x2F6F7C87, "3D" => 0x58684C11, "3E" => 0xC1611DAB, "3F" => 0xB6662D3D, "40" => 0x76DC4190, "41" => 0x01DB7106, "42" => 0x98D220BC, "43" => 0xEFD5102A, "44" => 0x71B18589, "45" => 0x06B6B51F, "46" => 0x9FBFE4A5, "47" => 0xE8B8D433, "48" => 0x7807C9A2, "49" => 0x0F00F934, "4A" => 0x9609A88E, "4B" => 0xE10E9818, "4C" => 0x7F6A0DBB, "4D" => 0x086D3D2D, "4E" => 0x91646C97, "4F" => 0xE6635C01, "50" => 0x6B6B51F4, "51" => 0x1C6C6162, "52" => 0x856530D8, "53" => 0xF262004E, "54" => 0x6C0695ED, "55" => 0x1B01A57B, "56" => 0x8208F4C1, "57" => 0xF50FC457, "58" => 0x65B0D9C6, "59" => 0x12B7E950, "5A" => 0x8BBEB8EA, "5B" => 0xFCB9887C, "5C" => 0x62DD1DDF, "5D" => 0x15DA2D49, "5E" => 0x8CD37CF3, "5F" => 0xFBD44C65, "60" => 0x4DB26158, "61" => 0x3AB551CE, "62" => 0xA3BC0074, "63" => 0xD4BB30E2, "64" => 0x4ADFA541, "65" => 0x3DD895D7, "66" => 0xA4D1C46D, "67" => 0xD3D6F4FB, "68" => 0x4369E96A, "69" => 0x346ED9FC, "6A" => 0xAD678846, "6B" => 0xDA60B8D0, "6C" => 0x44042D73, "6D" => 0x33031DE5, "6E" => 0xAA0A4C5F, "6F" => 0xDD0D7CC9, "70" => 0x5005713C, "71" => 0x270241AA, "72" => 0xBE0B1010, "73" => 0xC90C2086, "74" => 0x5768B525, "75" => 0x206F85B3, "76" => 0xB966D409, "77" => 0xCE61E49F, "78" => 0x5EDEF90E, "79" => 0x29D9C998, "7A" => 0xB0D09822, "7B" => 0xC7D7A8B4, "7C" => 0x59B33D17, "7D" => 0x2EB40D81, "7E" => 0xB7BD5C3B, "7F" => 0xC0BA6CAD, "80" => 0xEDB88320, "81" => 0x9ABFB3B6, "82" => 0x03B6E20C, "83" => 0x74B1D29A, "84" => 0xEAD54739, "85" => 0x9DD277AF, "86" => 0x04DB2615, "87" => 0x73DC1683, "88" => 0xE3630B12, "89" => 0x94643B84, "8A" => 0x0D6D6A3E, "8B" => 0x7A6A5AA8, "8C" => 0xE40ECF0B, "8D" => 0x9309FF9D, "8E" => 0x0A00AE27, "8F" => 0x7D079EB1, "90" => 0xF00F9344, "91" => 0x8708A3D2, "92" => 0x1E01F268, "93" => 0x6906C2FE, "94" => 0xF762575D, "95" => 0x806567CB, "96" => 0x196C3671, "97" => 0x6E6B06E7, "98" => 0xFED41B76, "99" => 0x89D32BE0, "9A" => 0x10DA7A5A, "9B" => 0x67DD4ACC, "9C" => 0xF9B9DF6F, "9D" => 0x8EBEEFF9, "9E" => 0x17B7BE43, "9F" => 0x60B08ED5, "A0" => 0xD6D6A3E8, "A1" => 0xA1D1937E, "A2" => 0x38D8C2C4, "A3" => 0x4FDFF252, "A4" => 0xD1BB67F1, "A5" => 0xA6BC5767, "A6" => 0x3FB506DD, "A7" => 0x48B2364B, "A8" => 0xD80D2BDA, "A9" => 0xAF0A1B4C, "AA" => 0x36034AF6, "AB" => 0x41047A60, "AC" => 0xDF60EFC3, "AD" => 0xA867DF55, "AE" => 0x316E8EEF, "AF" => 0x4669BE79, "B0" => 0xCB61B38C, "B1" => 0xBC66831A, "B2" => 0x256FD2A0, "B3" => 0x5268E236, "B4" => 0xCC0C7795, "B5" => 0xBB0B4703, "B6" => 0x220216B9, "B7" => 0x5505262F, "B8" => 0xC5BA3BBE, "B9" => 0xB2BD0B28, "BA" => 0x2BB45A92, "BB" => 0x5CB36A04, "BC" => 0xC2D7FFA7, "BD" => 0xB5D0CF31, "BE" => 0x2CD99E8B, "BF" => 0x5BDEAE1D, "C0" => 0x9B64C2B0, "C1" => 0xEC63F226, "C2" => 0x756AA39C, "C3" => 0x026D930A, "C4" => 0x9C0906A9, "C5" => 0xEB0E363F, "C6" => 0x72076785, "C7" => 0x05005713, "C8" => 0x95BF4A82, "C9" => 0xE2B87A14, "CA" => 0x7BB12BAE, "CB" => 0x0CB61B38, "CC" => 0x92D28E9B, "CD" => 0xE5D5BE0D, "CE" => 0x7CDCEFB7, "CF" => 0x0BDBDF21, "D0" => 0x86D3D2D4, "D1" => 0xF1D4E242, "D2" => 0x68DDB3F8, "D3" => 0x1FDA836E, "D4" => 0x81BE16CD, "D5" => 0xF6B9265B, "D6" => 0x6FB077E1, "D7" => 0x18B74777, "D8" => 0x88085AE6, "D9" => 0xFF0F6A70, "DA" => 0x66063BCA, "DB" => 0x11010B5C, "DC" => 0x8F659EFF, "DD" => 0xF862AE69, "DE" => 0x616BFFD3, "DF" => 0x166CCF45, "E0" => 0xA00AE278, "E1" => 0xD70DD2EE, "E2" => 0x4E048354, "E3" => 0x3903B3C2, "E4" => 0xA7672661, "E5" => 0xD06016F7, "E6" => 0x4969474D, "E7" => 0x3E6E77DB, "E8" => 0xAED16A4A, "E9" => 0xD9D65ADC, "EA" => 0x40DF0B66, "EB" => 0x37D83BF0, "EC" => 0xA9BCAE53, "ED" => 0xDEBB9EC5, "EE" => 0x47B2CF7F, "EF" => 0x30B5FFE9, "F0" => 0xBDBDF21C, "F1" => 0xCABAC28A, "F2" => 0x53B39330, "F3" => 0x24B4A3A6, "F4" => 0xBAD03605, "F5" => 0xCDD70693, "F6" => 0x54DE5729, "F7" => 0x23D967BF, "F8" => 0xB3667A2E, "F9" => 0xC4614AB8, "FA" => 0x5D681B02, "FB" => 0x2A6F2B94, "FC" => 0xB40BBE37, "FD" => 0xC30C8EA1, "FE" => 0x5A05DF1B, "FF" => 0x2D02EF8D ];