vendor: 46,144 bytes, lines 1-1190
1(function webpackUniversalModuleDefinition(root, factory) { 2 if(typeof exports === 'object' && typeof module === 'object') 3 module.exports = factory(); 4 else if(typeof define === 'function' && define.amd) 5 define([], factory); 6 else if(typeof exports === 'object') 7 exports["jsQR"] = factory(); 8 else 9 root["jsQR"] = factory(); 10})(typeof self !== 'undefined' ? self : this, function() { 11return /******/ (function(modules) { // webpackBootstrap 12/******/ // The module cache 13/******/ var installedModules = {}; 14/******/ 15/******/ // The require function 16/******/ function __webpack_require__(moduleId) { 17/******/ 18/******/ // Check if module is in cache 19/******/ if(installedModules[moduleId]) { 20/******/ return installedModules[moduleId].exports; 21/******/ } 22/******/ // Create a new module (and put it into the cache) 23/******/ var module = installedModules[moduleId] = { 24/******/ i: moduleId, 25/******/ l: false, 26/******/ exports: {} 27/******/ }; 28/******/ 29/******/ // Execute the module function 30/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); 31/******/ 32/******/ // Flag the module as loaded 33/******/ module.l = true; 34/******/ 35/******/ // Return the exports of the module 36/******/ return module.exports; 37/******/ } 38/******/ 39/******/ 40/******/ // expose the modules object (__webpack_modules__) 41/******/ __webpack_require__.m = modules; 42/******/ 43/******/ // expose the module cache 44/******/ __webpack_require__.c = installedModules; 45/******/ 46/******/ // define getter function for harmony exports 47/******/ __webpack_require__.d = function(exports, name, getter) { 48/******/ if(!__webpack_require__.o(exports, name)) { 49/******/ Object.defineProperty(exports, name, { 50/******/ configurable: false, 51/******/ enumerable: true, 52/******/ get: getter 53/******/ }); 54/******/ } 55/******/ }; 56/******/ 57/******/ // getDefaultExport function for compatibility with non-harmony modules 58/******/ __webpack_require__.n = function(module) { 59/******/ var getter = module && module.__esModule ? 60/******/ function getDefault() { return module['default']; } : 61/******/ function getModuleExports() { return module; }; 62/******/ __webpack_require__.d(getter, 'a', getter); 63/******/ return getter; 64/******/ }; 65/******/ 66/******/ // Object.prototype.hasOwnProperty.call 67/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; 68/******/ 69/******/ // __webpack_public_path__ 70/******/ __webpack_require__.p = ""; 71/******/ 72/******/ // Load entry module and return exports 73/******/ return __webpack_require__(__webpack_require__.s = 3); 74/******/ }) 75/************************************************************************/ 76/******/ ([ 77/* 0 */ 78/***/ (function(module, exports, __webpack_require__) { 79 80"use strict"; 81 82Object.defineProperty(exports, "__esModule", { value: true }); 83var BitMatrix = /** @class */ (function () { 84 function BitMatrix(data, width) { 85 this.width = width; 86 this.height = data.length / width; 87 this.data = data; 88 } 89 BitMatrix.createEmpty = function (width, height) { 90 return new BitMatrix(new Uint8ClampedArray(width * height), width); 91 }; 92 BitMatrix.prototype.get = function (x, y) { 93 if (x < 0 || x >= this.width || y < 0 || y >= this.height) { 94 return false; 95 } 96 return !!this.data[y * this.width + x]; 97 }; 98 BitMatrix.prototype.set = function (x, y, v) { 99 this.data[y * this.width + x] = v ? 1 : 0; 100 }; 101 BitMatrix.prototype.setRegion = function (left, top, width, height, v) { 102 for (var y = top; y < top + height; y++) { 103 for (var x = left; x < left + width; x++) { 104 this.set(x, y, !!v); 105 } 106 } 107 }; 108 return BitMatrix; 109}()); 110exports.BitMatrix = BitMatrix; 111 112 113/***/ }), 114/* 1 */ 115/***/ (function(module, exports, __webpack_require__) { 116 117"use strict"; 118 119Object.defineProperty(exports, "__esModule", { value: true }); 120var GenericGFPoly_1 = __webpack_require__(2); 121function addOrSubtractGF(a, b) { 122 return a ^ b; // tslint:disable-line:no-bitwise 123} 124exports.addOrSubtractGF = addOrSubtractGF; 125var GenericGF = /** @class */ (function () { 126 function GenericGF(primitive, size, genBase) { 127 this.primitive = primitive; 128 this.size = size; 129 this.generatorBase = genBase; 130 this.expTable = new Array(this.size); 131 this.logTable = new Array(this.size); 132 var x = 1; 133 for (var i = 0; i < this.size; i++) { 134 this.expTable[i] = x; 135 x = x * 2; 136 if (x >= this.size) { 137 x = (x ^ this.primitive) & (this.size - 1); // tslint:disable-line:no-bitwise 138 } 139 } 140 for (var i = 0; i < this.size - 1; i++) { 141 this.logTable[this.expTable[i]] = i; 142 } 143 this.zero = new GenericGFPoly_1.default(this, Uint8ClampedArray.from([0])); 144 this.one = new GenericGFPoly_1.default(this, Uint8ClampedArray.from([1])); 145 } 146 GenericGF.prototype.multiply = function (a, b) { 147 if (a === 0 || b === 0) { 148 return 0; 149 } 150 return this.expTable[(this.logTable[a] + this.logTable[b]) % (this.size - 1)]; 151 }; 152 GenericGF.prototype.inverse = function (a) { 153 if (a === 0) { 154 throw new Error("Can't invert 0"); 155 } 156 return this.expTable[this.size - this.logTable[a] - 1]; 157 }; 158 GenericGF.prototype.buildMonomial = function (degree, coefficient) { 159 if (degree < 0) { 160 throw new Error("Invalid monomial degree less than 0"); 161 } 162 if (coefficient === 0) { 163 return this.zero; 164 } 165 var coefficients = new Uint8ClampedArray(degree + 1); 166 coefficients[0] = coefficient; 167 return new GenericGFPoly_1.default(this, coefficients); 168 }; 169 GenericGF.prototype.log = function (a) { 170 if (a === 0) { 171 throw new Error("Can't take log(0)"); 172 } 173 return this.logTable[a]; 174 }; 175 GenericGF.prototype.exp = function (a) { 176 return this.expTable[a]; 177 }; 178 return GenericGF; 179}()); 180exports.default = GenericGF; 181 182 183/***/ }), 184/* 2 */ 185/***/ (function(module, exports, __webpack_require__) { 186 187"use strict"; 188 189Object.defineProperty(exports, "__esModule", { value: true }); 190var GenericGF_1 = __webpack_require__(1); 191var GenericGFPoly = /** @class */ (function () { 192 function GenericGFPoly(field, coefficients) { 193 if (coefficients.length === 0) { 194 throw new Error("No coefficients."); 195 } 196 this.field = field; 197 var coefficientsLength = coefficients.length; 198 if (coefficientsLength > 1 && coefficients[0] === 0) { 199 // Leading term must be non-zero for anything except the constant polynomial "0" 200 var firstNonZero = 1; 201 while (firstNonZero < coefficientsLength && coefficients[firstNonZero] === 0) { 202 firstNonZero++; 203 } 204 if (firstNonZero === coefficientsLength) { 205 this.coefficients = field.zero.coefficients; 206 } 207 else { 208 this.coefficients = new Uint8ClampedArray(coefficientsLength - firstNonZero); 209 for (var i = 0; i < this.coefficients.length; i++) { 210 this.coefficients[i] = coefficients[firstNonZero + i]; 211 } 212 } 213 } 214 else { 215 this.coefficients = coefficients; 216 } 217 } 218 GenericGFPoly.prototype.degree = function () { 219 return this.coefficients.length - 1; 220 }; 221 GenericGFPoly.prototype.isZero = function () { 222 return this.coefficients[0] === 0; 223 }; 224 GenericGFPoly.prototype.getCoefficient = function (degree) { 225 return this.coefficients[this.coefficients.length - 1 - degree]; 226 }; 227 GenericGFPoly.prototype.addOrSubtract = function (other) { 228 var _a; 229 if (this.isZero()) { 230 return other; 231 } 232 if (other.isZero()) { 233 return this; 234 } 235 var smallerCoefficients = this.coefficients; 236 var largerCoefficients = other.coefficients; 237 if (smallerCoefficients.length > largerCoefficients.length) { 238 _a = [largerCoefficients, smallerCoefficients], smallerCoefficients = _a[0], largerCoefficients = _a[1]; 239 } 240 var sumDiff = new Uint8ClampedArray(largerCoefficients.length); 241 var lengthDiff = largerCoefficients.length - smallerCoefficients.length; 242 for (var i = 0; i < lengthDiff; i++) { 243 sumDiff[i] = largerCoefficients[i]; 244 } 245 for (var i = lengthDiff; i < largerCoefficients.length; i++) { 246 sumDiff[i] = GenericGF_1.addOrSubtractGF(smallerCoefficients[i - lengthDiff], largerCoefficients[i]); 247 } 248 return new GenericGFPoly(this.field, sumDiff); 249 }; 250 GenericGFPoly.prototype.multiply = function (scalar) { 251 if (scalar === 0) { 252 return this.field.zero; 253 } 254 if (scalar === 1) { 255 return this; 256 } 257 var size = this.coefficients.length; 258 var product = new Uint8ClampedArray(size); 259 for (var i = 0; i < size; i++) { 260 product[i] = this.field.multiply(this.coefficients[i], scalar); 261 } 262 return new GenericGFPoly(this.field, product); 263 }; 264 GenericGFPoly.prototype.multiplyPoly = function (other) { 265 if (this.isZero() || other.isZero()) { 266 return this.field.zero; 267 } 268 var aCoefficients = this.coefficients; 269 var aLength = aCoefficients.length; 270 var bCoefficients = other.coefficients; 271 var bLength = bCoefficients.length; 272 var product = new Uint8ClampedArray(aLength + bLength - 1); 273 for (var i = 0; i < aLength; i++) { 274 var aCoeff = aCoefficients[i]; 275 for (var j = 0; j < bLength; j++) { 276 product[i + j] = GenericGF_1.addOrSubtractGF(product[i + j], this.field.multiply(aCoeff, bCoefficients[j])); 277 } 278 } 279 return new GenericGFPoly(this.field, product); 280 }; 281 GenericGFPoly.prototype.multiplyByMonomial = function (degree, coefficient) { 282 if (degree < 0) { 283 throw new Error("Invalid degree less than 0"); 284 } 285 if (coefficient === 0) { 286 return this.field.zero; 287 } 288 var size = this.coefficients.length; 289 var product = new Uint8ClampedArray(size + degree); 290 for (var i = 0; i < size; i++) { 291 product[i] = this.field.multiply(this.coefficients[i], coefficient); 292 } 293 return new GenericGFPoly(this.field, product); 294 }; 295 GenericGFPoly.prototype.evaluateAt = function (a) { 296 var result = 0; 297 if (a === 0) { 298 // Just return the x^0 coefficient 299 return this.getCoefficient(0); 300 } 301 var size = this.coefficients.length; 302 if (a === 1) { 303 // Just the sum of the coefficients 304 this.coefficients.forEach(function (coefficient) { 305 result = GenericGF_1.addOrSubtractGF(result, coefficient); 306 }); 307 return result; 308 } 309 result = this.coefficients[0]; 310 for (var i = 1; i < size; i++) { 311 result = GenericGF_1.addOrSubtractGF(this.field.multiply(a, result), this.coefficients[i]); 312 } 313 return result; 314 }; 315 return GenericGFPoly; 316}()); 317exports.default = GenericGFPoly; 318 319 320/***/ }), 321/* 3 */ 322/***/ (function(module, exports, __webpack_require__) { 323 324"use strict"; 325 326Object.defineProperty(exports, "__esModule", { value: true }); 327var binarizer_1 = __webpack_require__(4); 328var decoder_1 = __webpack_require__(5); 329var extractor_1 = __webpack_require__(11); 330var locator_1 = __webpack_require__(12); 331function scan(matrix) { 332 var locations = locator_1.locate(matrix); 333 if (!locations) { 334 return null; 335 } 336 for (var _i = 0, locations_1 = locations; _i < locations_1.length; _i++) { 337 var location_1 = locations_1[_i]; 338 var extracted = extractor_1.extract(matrix, location_1); 339 var decoded = decoder_1.decode(extracted.matrix); 340 if (decoded) { 341 return { 342 binaryData: decoded.bytes, 343 data: decoded.text, 344 chunks: decoded.chunks, 345 version: decoded.version, 346 location: { 347 topRightCorner: extracted.mappingFunction(location_1.dimension, 0), 348 topLeftCorner: extracted.mappingFunction(0, 0), 349 bottomRightCorner: extracted.mappingFunction(location_1.dimension, location_1.dimension), 350 bottomLeftCorner: extracted.mappingFunction(0, location_1.dimension), 351 topRightFinderPattern: location_1.topRight, 352 topLeftFinderPattern: location_1.topLeft, 353 bottomLeftFinderPattern: location_1.bottomLeft, 354 bottomRightAlignmentPattern: location_1.alignmentPattern, 355 }, 356 }; 357 } 358 } 359 return null; 360} 361var defaultOptions = { 362 inversionAttempts: "attemptBoth", 363}; 364function jsQR(data, width, height, providedOptions) { 365 if (providedOptions === void 0) { providedOptions = {}; } 366 var options = defaultOptions; 367 Object.keys(options || {}).forEach(function (opt) { 368 options[opt] = providedOptions[opt] || options[opt]; 369 }); 370 var shouldInvert = options.inversionAttempts === "attemptBoth" || options.inversionAttempts === "invertFirst"; 371 var tryInvertedFirst = options.inversionAttempts === "onlyInvert" || options.inversionAttempts === "invertFirst"; 372 var _a = binarizer_1.binarize(data, width, height, shouldInvert), binarized = _a.binarized, inverted = _a.inverted; 373 var result = scan(tryInvertedFirst ? inverted : binarized); 374 if (!result && (options.inversionAttempts === "attemptBoth" || options.inversionAttempts === "invertFirst")) { 375 result = scan(tryInvertedFirst ? binarized : inverted); 376 } 377 return result; 378} 379jsQR.default = jsQR; 380exports.default = jsQR; 381 382 383/***/ }), 384/* 4 */ 385/***/ (function(module, exports, __webpack_require__) { 386 387"use strict"; 388 389Object.defineProperty(exports, "__esModule", { value: true }); 390var BitMatrix_1 = __webpack_require__(0); 391var REGION_SIZE = 8; 392var MIN_DYNAMIC_RANGE = 24; 393function numBetween(value, min, max) { 394 return value < min ? min : value > max ? max : value; 395} 396// Like BitMatrix but accepts arbitry Uint8 values 397var Matrix = /** @class */ (function () { 398 function Matrix(width, height) { 399 this.width = width; 400 this.data = new Uint8ClampedArray(width * height); 401 } 402 Matrix.prototype.get = function (x, y) { 403 return this.data[y * this.width + x]; 404 }; 405 Matrix.prototype.set = function (x, y, value) { 406 this.data[y * this.width + x] = value; 407 }; 408 return Matrix; 409}()); 410function binarize(data, width, height, returnInverted) { 411 if (data.length !== width * height * 4) { 412 throw new Error("Malformed data passed to binarizer."); 413 } 414 // Convert image to greyscale 415 var greyscalePixels = new Matrix(width, height); 416 for (var x = 0; x < width; x++) { 417 for (var y = 0; y < height; y++) { 418 var r = data[((y * width + x) * 4) + 0]; 419 var g = data[((y * width + x) * 4) + 1]; 420 var b = data[((y * width + x) * 4) + 2]; 421 greyscalePixels.set(x, y, 0.2126 * r + 0.7152 * g + 0.0722 * b); 422 } 423 } 424 var horizontalRegionCount = Math.ceil(width / REGION_SIZE); 425 var verticalRegionCount = Math.ceil(height / REGION_SIZE); 426 var blackPoints = new Matrix(horizontalRegionCount, verticalRegionCount); 427 for (var verticalRegion = 0; verticalRegion < verticalRegionCount; verticalRegion++) { 428 for (var hortizontalRegion = 0; hortizontalRegion < horizontalRegionCount; hortizontalRegion++) { 429 var sum = 0; 430 var min = Infinity; 431 var max = 0; 432 for (var y = 0; y < REGION_SIZE; y++) { 433 for (var x = 0; x < REGION_SIZE; x++) { 434 var pixelLumosity = greyscalePixels.get(hortizontalRegion * REGION_SIZE + x, verticalRegion * REGION_SIZE + y); 435 sum += pixelLumosity; 436 min = Math.min(min, pixelLumosity); 437 max = Math.max(max, pixelLumosity); 438 } 439 } 440 var average = sum / (Math.pow(REGION_SIZE, 2)); 441 if (max - min <= MIN_DYNAMIC_RANGE) { 442 // If variation within the block is low, assume this is a block with only light or only 443 // dark pixels. In that case we do not want to use the average, as it would divide this 444 // low contrast area into black and white pixels, essentially creating data out of noise. 445 // 446 // Default the blackpoint for these blocks to be half the min - effectively white them out 447 average = min / 2; 448 if (verticalRegion > 0 && hortizontalRegion > 0) { 449 // Correct the "white background" assumption for blocks that have neighbors by comparing 450 // the pixels in this block to the previously calculated black points. This is based on 451 // the fact that dark barcode symbology is always surrounded by some amount of light 452 // background for which reasonable black point estimates were made. The bp estimated at 453 // the boundaries is used for the interior. 454 // The (min < bp) is arbitrary but works better than other heuristics that were tried. 455 var averageNeighborBlackPoint = (blackPoints.get(hortizontalRegion, verticalRegion - 1) + 456 (2 * blackPoints.get(hortizontalRegion - 1, verticalRegion)) + 457 blackPoints.get(hortizontalRegion - 1, verticalRegion - 1)) / 4; 458 if (min < averageNeighborBlackPoint) { 459 average = averageNeighborBlackPoint; 460 } 461 } 462 } 463 blackPoints.set(hortizontalRegion, verticalRegion, average); 464 } 465 } 466 var binarized = BitMatrix_1.BitMatrix.createEmpty(width, height); 467 var inverted = null; 468 if (returnInverted) { 469 inverted = BitMatrix_1.BitMatrix.createEmpty(width, height); 470 } 471 for (var verticalRegion = 0; verticalRegion < verticalRegionCount; verticalRegion++) { 472 for (var hortizontalRegion = 0; hortizontalRegion < horizontalRegionCount; hortizontalRegion++) { 473 var left = numBetween(hortizontalRegion, 2, horizontalRegionCount - 3); 474 var top_1 = numBetween(verticalRegion, 2, verticalRegionCount - 3); 475 var sum = 0; 476 for (var xRegion = -2; xRegion <= 2; xRegion++) { 477 for (var yRegion = -2; yRegion <= 2; yRegion++) { 478 sum += blackPoints.get(left + xRegion, top_1 + yRegion); 479 } 480 } 481 var threshold = sum / 25; 482 for (var xRegion = 0; xRegion < REGION_SIZE; xRegion++) { 483 for (var yRegion = 0; yRegion < REGION_SIZE; yRegion++) { 484 var x = hortizontalRegion * REGION_SIZE + xRegion; 485 var y = verticalRegion * REGION_SIZE + yRegion; 486 var lum = greyscalePixels.get(x, y); 487 binarized.set(x, y, lum <= threshold); 488 if (returnInverted) { 489 inverted.set(x, y, !(lum <= threshold)); 490 } 491 } 492 } 493 } 494 } 495 if (returnInverted) { 496 return { binarized: binarized, inverted: inverted }; 497 } 498 return { binarized: binarized }; 499} 500exports.binarize = binarize; 501 502 503/***/ }), 504/* 5 */ 505/***/ (function(module, exports, __webpack_require__) { 506 507"use strict"; 508 509Object.defineProperty(exports, "__esModule", { value: true }); 510var BitMatrix_1 = __webpack_require__(0); 511var decodeData_1 = __webpack_require__(6); 512var reedsolomon_1 = __webpack_require__(9); 513var version_1 = __webpack_require__(10); 514// tslint:disable:no-bitwise 515function numBitsDiffering(x, y) { 516 var z = x ^ y; 517 var bitCount = 0; 518 while (z) { 519 bitCount++; 520 z &= z - 1; 521 } 522 return bitCount; 523} 524function pushBit(bit, byte) { 525 return (byte << 1) | bit; 526} 527// tslint:enable:no-bitwise 528var FORMAT_INFO_TABLE = [ 529 { bits: 0x5412, formatInfo: { errorCorrectionLevel: 1, dataMask: 0 } }, 530 { bits: 0x5125, formatInfo: { errorCorrectionLevel: 1, dataMask: 1 } }, 531 { bits: 0x5E7C, formatInfo: { errorCorrectionLevel: 1, dataMask: 2 } }, 532 { bits: 0x5B4B, formatInfo: { errorCorrectionLevel: 1, dataMask: 3 } }, 533 { bits: 0x45F9, formatInfo: { errorCorrectionLevel: 1, dataMask: 4 } }, 534 { bits: 0x40CE, formatInfo: { errorCorrectionLevel: 1, dataMask: 5 } }, 535 { bits: 0x4F97, formatInfo: { errorCorrectionLevel: 1, dataMask: 6 } }, 536 { bits: 0x4AA0, formatInfo: { errorCorrectionLevel: 1, dataMask: 7 } }, 537 { bits: 0x77C4, formatInfo: { errorCorrectionLevel: 0, dataMask: 0 } }, 538 { bits: 0x72F3, formatInfo: { errorCorrectionLevel: 0, dataMask: 1 } }, 539 { bits: 0x7DAA, formatInfo: { errorCorrectionLevel: 0, dataMask: 2 } }, 540 { bits: 0x789D, formatInfo: { errorCorrectionLevel: 0, dataMask: 3 } }, 541 { bits: 0x662F, formatInfo: { errorCorrectionLevel: 0, dataMask: 4 } }, 542 { bits: 0x6318, formatInfo: { errorCorrectionLevel: 0, dataMask: 5 } }, 543 { bits: 0x6C41, formatInfo: { errorCorrectionLevel: 0, dataMask: 6 } }, 544 { bits: 0x6976, formatInfo: { errorCorrectionLevel: 0, dataMask: 7 } }, 545 { bits: 0x1689, formatInfo: { errorCorrectionLevel: 3, dataMask: 0 } }, 546 { bits: 0x13BE, formatInfo: { errorCorrectionLevel: 3, dataMask: 1 } }, 547 { bits: 0x1CE7, formatInfo: { errorCorrectionLevel: 3, dataMask: 2 } }, 548 { bits: 0x19D0, formatInfo: { errorCorrectionLevel: 3, dataMask: 3 } }, 549 { bits: 0x0762, formatInfo: { errorCorrectionLevel: 3, dataMask: 4 } }, 550 { bits: 0x0255, formatInfo: { errorCorrectionLevel: 3, dataMask: 5 } }, 551 { bits: 0x0D0C, formatInfo: { errorCorrectionLevel: 3, dataMask: 6 } }, 552 { bits: 0x083B, formatInfo: { errorCorrectionLevel: 3, dataMask: 7 } }, 553 { bits: 0x355F, formatInfo: { errorCorrectionLevel: 2, dataMask: 0 } }, 554 { bits: 0x3068, formatInfo: { errorCorrectionLevel: 2, dataMask: 1 } }, 555 { bits: 0x3F31, formatInfo: { errorCorrectionLevel: 2, dataMask: 2 } }, 556 { bits: 0x3A06, formatInfo: { errorCorrectionLevel: 2, dataMask: 3 } }, 557 { bits: 0x24B4, formatInfo: { errorCorrectionLevel: 2, dataMask: 4 } }, 558 { bits: 0x2183, formatInfo: { errorCorrectionLevel: 2, dataMask: 5 } }, 559 { bits: 0x2EDA, formatInfo: { errorCorrectionLevel: 2, dataMask: 6 } }, 560 { bits: 0x2BED, formatInfo: { errorCorrectionLevel: 2, dataMask: 7 } }, 561]; 562var DATA_MASKS = [ 563 function (p) { return ((p.y + p.x) % 2) === 0; }, 564 function (p) { return (p.y % 2) === 0; }, 565 function (p) { return p.x % 3 === 0; }, 566 function (p) { return (p.y + p.x) % 3 === 0; }, 567 function (p) { return (Math.floor(p.y / 2) + Math.floor(p.x / 3)) % 2 === 0; }, 568 function (p) { return ((p.x * p.y) % 2) + ((p.x * p.y) % 3) === 0; }, 569 function (p) { return ((((p.y * p.x) % 2) + (p.y * p.x) % 3) % 2) === 0; }, 570 function (p) { return ((((p.y + p.x) % 2) + (p.y * p.x) % 3) % 2) === 0; }, 571]; 572function buildFunctionPatternMask(version) { 573 var dimension = 17 + 4 * version.versionNumber; 574 var matrix = BitMatrix_1.BitMatrix.createEmpty(dimension, dimension); 575 matrix.setRegion(0, 0, 9, 9, true); // Top left finder pattern + separator + format 576 matrix.setRegion(dimension - 8, 0, 8, 9, true); // Top right finder pattern + separator + format 577 matrix.setRegion(0, dimension - 8, 9, 8, true); // Bottom left finder pattern + separator + format 578 // Alignment patterns 579 for (var _i = 0, _a = version.alignmentPatternCenters; _i < _a.length; _i++) { 580 var x = _a[_i]; 581 for (var _b = 0, _c = version.alignmentPatternCenters; _b < _c.length; _b++) { 582 var y = _c[_b]; 583 if (!(x === 6 && y === 6 || x === 6 && y === dimension - 7 || x === dimension - 7 && y === 6)) { 584 matrix.setRegion(x - 2, y - 2, 5, 5, true); 585 } 586 } 587 } 588 matrix.setRegion(6, 9, 1, dimension - 17, true); // Vertical timing pattern 589 matrix.setRegion(9, 6, dimension - 17, 1, true); // Horizontal timing pattern 590 if (version.versionNumber > 6) { 591 matrix.setRegion(dimension - 11, 0, 3, 6, true); // Version info, top right 592 matrix.setRegion(0, dimension - 11, 6, 3, true); // Version info, bottom left 593 } 594 return matrix; 595} 596function readCodewords(matrix, version, formatInfo) { 597 var dataMask = DATA_MASKS[formatInfo.dataMask]; 598 var dimension = matrix.height; 599 var functionPatternMask = buildFunctionPatternMask(version); 600 var codewords = []; 601 var currentByte = 0; 602 var bitsRead = 0; 603 // Read columns in pairs, from right to left 604 var readingUp = true; 605 for (var columnIndex = dimension - 1; columnIndex > 0; columnIndex -= 2) { 606 if (columnIndex === 6) { // Skip whole column with vertical alignment pattern; 607 columnIndex--; 608 } 609 for (var i = 0; i < dimension; i++) { 610 var y = readingUp ? dimension - 1 - i : i; 611 for (var columnOffset = 0; columnOffset < 2; columnOffset++) { 612 var x = columnIndex - columnOffset; 613 if (!functionPatternMask.get(x, y)) { 614 bitsRead++; 615 var bit = matrix.get(x, y); 616 if (dataMask({ y: y, x: x })) { 617 bit = !bit; 618 } 619 currentByte = pushBit(bit, currentByte); 620 if (bitsRead === 8) { // Whole bytes 621 codewords.push(currentByte); 622 bitsRead = 0; 623 currentByte = 0; 624 } 625 } 626 } 627 } 628 readingUp = !readingUp; 629 } 630 return codewords; 631} 632function readVersion(matrix) { 633 var dimension = matrix.height; 634 var provisionalVersion = Math.floor((dimension - 17) / 4); 635 if (provisionalVersion <= 6) { // 6 and under dont have version info in the QR code 636 return version_1.VERSIONS[provisionalVersion - 1]; 637 } 638 var topRightVersionBits = 0; 639 for (var y = 5; y >= 0; y--) { 640 for (var x = dimension - 9; x >= dimension - 11; x--) { 641 topRightVersionBits = pushBit(matrix.get(x, y), topRightVersionBits); 642 } 643 } 644 var bottomLeftVersionBits = 0; 645 for (var x = 5; x >= 0; x--) { 646 for (var y = dimension - 9; y >= dimension - 11; y--) { 647 bottomLeftVersionBits = pushBit(matrix.get(x, y), bottomLeftVersionBits); 648 } 649 } 650 var bestDifference = Infinity; 651 var bestVersion; 652 for (var _i = 0, VERSIONS_1 = version_1.VERSIONS; _i < VERSIONS_1.length; _i++) { 653 var version = VERSIONS_1[_i]; 654 if (version.infoBits === topRightVersionBits || version.infoBits === bottomLeftVersionBits) { 655 return version; 656 } 657 var difference = numBitsDiffering(topRightVersionBits, version.infoBits); 658 if (difference < bestDifference) { 659 bestVersion = version; 660 bestDifference = difference; 661 } 662 difference = numBitsDiffering(bottomLeftVersionBits, version.infoBits); 663 if (difference < bestDifference) { 664 bestVersion = version; 665 bestDifference = difference; 666 } 667 } 668 // We can tolerate up to 3 bits of error since no two version info codewords will 669 // differ in less than 8 bits. 670 if (bestDifference <= 3) { 671 return bestVersion; 672 } 673} 674function readFormatInformation(matrix) { 675 var topLeftFormatInfoBits = 0; 676 for (var x = 0; x <= 8; x++) { 677 if (x !== 6) { // Skip timing pattern bit 678 topLeftFormatInfoBits = pushBit(matrix.get(x, 8), topLeftFormatInfoBits); 679 } 680 } 681 for (var y = 7; y >= 0; y--) { 682 if (y !== 6) { // Skip timing pattern bit 683 topLeftFormatInfoBits = pushBit(matrix.get(8, y), topLeftFormatInfoBits); 684 } 685 } 686 var dimension = matrix.height; 687 var topRightBottomRightFormatInfoBits = 0; 688 for (var y = dimension - 1; y >= dimension - 7; y--) { // bottom left 689 topRightBottomRightFormatInfoBits = pushBit(matrix.get(8, y), topRightBottomRightFormatInfoBits); 690 } 691 for (var x = dimension - 8; x < dimension; x++) { // top right 692 topRightBottomRightFormatInfoBits = pushBit(matrix.get(x, 8), topRightBottomRightFormatInfoBits); 693 } 694 var bestDifference = Infinity; 695 var bestFormatInfo = null; 696 for (var _i = 0, FORMAT_INFO_TABLE_1 = FORMAT_INFO_TABLE; _i < FORMAT_INFO_TABLE_1.length; _i++) { 697 var _a = FORMAT_INFO_TABLE_1[_i], bits = _a.bits, formatInfo = _a.formatInfo; 698 if (bits === topLeftFormatInfoBits || bits === topRightBottomRightFormatInfoBits) { 699 return formatInfo; 700 } 701 var difference = numBitsDiffering(topLeftFormatInfoBits, bits); 702 if (difference < bestDifference) { 703 bestFormatInfo = formatInfo; 704 bestDifference = difference; 705 } 706 if (topLeftFormatInfoBits !== topRightBottomRightFormatInfoBits) { // also try the other option 707 difference = numBitsDiffering(topRightBottomRightFormatInfoBits, bits); 708 if (difference < bestDifference) { 709 bestFormatInfo = formatInfo; 710 bestDifference = difference; 711 } 712 } 713 } 714 // Hamming distance of the 32 masked codes is 7, by construction, so <= 3 bits differing means we found a match 715 if (bestDifference <= 3) { 716 return bestFormatInfo; 717 } 718 return null; 719} 720function getDataBlocks(codewords, version, ecLevel) { 721 var ecInfo = version.errorCorrectionLevels[ecLevel]; 722 var dataBlocks = []; 723 var totalCodewords = 0; 724 ecInfo.ecBlocks.forEach(function (block) { 725 for (var i = 0; i < block.numBlocks; i++) { 726 dataBlocks.push({ numDataCodewords: block.dataCodewordsPerBlock, codewords: [] }); 727 totalCodewords += block.dataCodewordsPerBlock + ecInfo.ecCodewordsPerBlock; 728 } 729 }); 730 // In some cases the QR code will be malformed enough that we pull off more or less than we should. 731 // If we pull off less there's nothing we can do. 732 // If we pull off more we can safely truncate 733 if (codewords.length < totalCodewords) { 734 return null; 735 } 736 codewords = codewords.slice(0, totalCodewords); 737 var shortBlockSize = ecInfo.ecBlocks[0].dataCodewordsPerBlock; 738 // Pull codewords to fill the blocks up to the minimum size 739 for (var i = 0; i < shortBlockSize; i++) { 740 for (var _i = 0, dataBlocks_1 = dataBlocks; _i < dataBlocks_1.length; _i++) { 741 var dataBlock = dataBlocks_1[_i]; 742 dataBlock.codewords.push(codewords.shift()); 743 } 744 } 745 // If there are any large blocks, pull codewords to fill the last element of those 746 if (ecInfo.ecBlocks.length > 1) { 747 var smallBlockCount = ecInfo.ecBlocks[0].numBlocks; 748 var largeBlockCount = ecInfo.ecBlocks[1].numBlocks; 749 for (var i = 0; i < largeBlockCount; i++) { 750 dataBlocks[smallBlockCount + i].codewords.push(codewords.shift()); 751 } 752 } 753 // Add the rest of the codewords to the blocks. These are the error correction codewords. 754 while (codewords.length > 0) { 755 for (var _a = 0, dataBlocks_2 = dataBlocks; _a < dataBlocks_2.length; _a++) { 756 var dataBlock = dataBlocks_2[_a]; 757 dataBlock.codewords.push(codewords.shift()); 758 } 759 } 760 return dataBlocks; 761} 762function decodeMatrix(matrix) { 763 var version = readVersion(matrix); 764 if (!version) { 765 return null; 766 } 767 var formatInfo = readFormatInformation(matrix); 768 if (!formatInfo) { 769 return null; 770 } 771 var codewords = readCodewords(matrix, version, formatInfo); 772 var dataBlocks = getDataBlocks(codewords, version, formatInfo.errorCorrectionLevel); 773 if (!dataBlocks) { 774 return null; 775 } 776 // Count total number of data bytes 777 var totalBytes = dataBlocks.reduce(function (a, b) { return a + b.numDataCodewords; }, 0); 778 var resultBytes = new Uint8ClampedArray(totalBytes); 779 var resultIndex = 0; 780 for (var _i = 0, dataBlocks_3 = dataBlocks; _i < dataBlocks_3.length; _i++) { 781 var dataBlock = dataBlocks_3[_i]; 782 var correctedBytes = reedsolomon_1.decode(dataBlock.codewords, dataBlock.codewords.length - dataBlock.numDataCodewords); 783 if (!correctedBytes) { 784 return null; 785 } 786 for (var i = 0; i < dataBlock.numDataCodewords; i++) { 787 resultBytes[resultIndex++] = correctedBytes[i]; 788 } 789 } 790 try { 791 return decodeData_1.decode(resultBytes, version.versionNumber); 792 } 793 catch (_a) { 794 return null; 795 } 796} 797function decode(matrix) { 798 if (matrix == null) { 799 return null; 800 } 801 var result = decodeMatrix(matrix); 802 if (result) { 803 return result; 804 } 805 // Decoding didn't work, try mirroring the QR across the topLeft -> bottomRight line. 806 for (var x = 0; x < matrix.width; x++) { 807 for (var y = x + 1; y < matrix.height; y++) { 808 if (matrix.get(x, y) !== matrix.get(y, x)) { 809 matrix.set(x, y, !matrix.get(x, y)); 810 matrix.set(y, x, !matrix.get(y, x)); 811 } 812 } 813 } 814 return decodeMatrix(matrix); 815} 816exports.decode = decode; 817 818 819/***/ }), 820/* 6 */ 821/***/ (function(module, exports, __webpack_require__) { 822 823"use strict"; 824 825Object.defineProperty(exports, "__esModule", { value: true }); 826// tslint:disable:no-bitwise 827var BitStream_1 = __webpack_require__(7); 828var shiftJISTable_1 = __webpack_require__(8); 829var Mode; 830(function (Mode) { 831 Mode["Numeric"] = "numeric"; 832 Mode["Alphanumeric"] = "alphanumeric"; 833 Mode["Byte"] = "byte"; 834 Mode["Kanji"] = "kanji"; 835 Mode["ECI"] = "eci"; 836})(Mode = exports.Mode || (exports.Mode = {})); 837var ModeByte; 838(function (ModeByte) { 839 ModeByte[ModeByte["Terminator"] = 0] = "Terminator"; 840 ModeByte[ModeByte["Numeric"] = 1] = "Numeric"; 841 ModeByte[ModeByte["Alphanumeric"] = 2] = "Alphanumeric"; 842 ModeByte[ModeByte["Byte"] = 4] = "Byte"; 843 ModeByte[ModeByte["Kanji"] = 8] = "Kanji"; 844 ModeByte[ModeByte["ECI"] = 7] = "ECI"; 845 // StructuredAppend = 0x3, 846 // FNC1FirstPosition = 0x5, 847 // FNC1SecondPosition = 0x9, 848})(ModeByte || (ModeByte = {})); 849function decodeNumeric(stream, size) { 850 var bytes = []; 851 var text = ""; 852 var characterCountSize = [10, 12, 14][size]; 853 var length = stream.readBits(characterCountSize); 854 // Read digits in groups of 3 855 while (length >= 3) { 856 var num = stream.readBits(10); 857 if (num >= 1000) { 858 throw new Error("Invalid numeric value above 999"); 859 } 860 var a = Math.floor(num / 100); 861 var b = Math.floor(num / 10) % 10; 862 var c = num % 10; 863 bytes.push(48 + a, 48 + b, 48 + c); 864 text += a.toString() + b.toString() + c.toString(); 865 length -= 3; 866 } 867 // If the number of digits aren't a multiple of 3, the remaining digits are special cased. 868 if (length === 2) { 869 var num = stream.readBits(7); 870 if (num >= 100) { 871 throw new Error("Invalid numeric value above 99"); 872 } 873 var a = Math.floor(num / 10); 874 var b = num % 10; 875 bytes.push(48 + a, 48 + b); 876 text += a.toString() + b.toString(); 877 } 878 else if (length === 1) { 879 var num = stream.readBits(4); 880 if (num >= 10) { 881 throw new Error("Invalid numeric value above 9"); 882 } 883 bytes.push(48 + num); 884 text += num.toString(); 885 } 886 return { bytes: bytes, text: text }; 887} 888var AlphanumericCharacterCodes = [ 889 "0", "1", "2", "3", "4", "5", "6", "7", "8", 890 "9", "A", "B", "C", "D", "E", "F", "G", "H", 891 "I", "J", "K", "L", "M", "N", "O", "P", "Q", 892 "R", "S", "T", "U", "V", "W", "X", "Y", "Z", 893 " ", "$", "%", "*", "+", "-", ".", "/", ":", 894]; 895function decodeAlphanumeric(stream, size) { 896 var bytes = []; 897 var text = ""; 898 var characterCountSize = [9, 11, 13][size]; 899 var length = stream.readBits(characterCountSize); 900 while (length >= 2) { 901 var v = stream.readBits(11); 902 var a = Math.floor(v / 45); 903 var b = v % 45; 904 bytes.push(AlphanumericCharacterCodes[a].charCodeAt(0), AlphanumericCharacterCodes[b].charCodeAt(0)); 905 text += AlphanumericCharacterCodes[a] + AlphanumericCharacterCodes[b]; 906 length -= 2; 907 } 908 if (length === 1) { 909 var a = stream.readBits(6); 910 bytes.push(AlphanumericCharacterCodes[a].charCodeAt(0)); 911 text += AlphanumericCharacterCodes[a]; 912 } 913 return { bytes: bytes, text: text }; 914} 915function decodeByte(stream, size) { 916 var bytes = []; 917 var text = ""; 918 var characterCountSize = [8, 16, 16][size]; 919 var length = stream.readBits(characterCountSize); 920 for (var i = 0; i < length; i++) { 921 var b = stream.readBits(8); 922 bytes.push(b); 923 } 924 try { 925 text += decodeURIComponent(bytes.map(function (b) { return "%" + ("0" + b.toString(16)).substr(-2); }).join("")); 926 } 927 catch (_a) { 928 // failed to decode 929 } 930 return { bytes: bytes, text: text }; 931} 932function decodeKanji(stream, size) { 933 var bytes = []; 934 var text = ""; 935 var characterCountSize = [8, 10, 12][size]; 936 var length = stream.readBits(characterCountSize); 937 for (var i = 0; i < length; i++) { 938 var k = stream.readBits(13); 939 var c = (Math.floor(k / 0xC0) << 8) | (k % 0xC0); 940 if (c < 0x1F00) { 941 c += 0x8140; 942 } 943 else { 944 c += 0xC140; 945 } 946 bytes.push(c >> 8, c & 0xFF); 947 text += String.fromCharCode(shiftJISTable_1.shiftJISTable[c]); 948 } 949 return { bytes: bytes, text: text }; 950} 951function decode(data, version) { 952 var _a, _b, _c, _d; 953 var stream = new BitStream_1.BitStream(data); 954 // There are 3 'sizes' based on the version. 1-9 is small (0), 10-26 is medium (1) and 27-40 is large (2). 955 var size = version <= 9 ? 0 : version <= 26 ? 1 : 2; 956 var result = { 957 text: "", 958 bytes: [], 959 chunks: [], 960 version: version, 961 }; 962 while (stream.available() >= 4) { 963 var mode = stream.readBits(4); 964 if (mode === ModeByte.Terminator) { 965 return result; 966 } 967 else if (mode === ModeByte.ECI) { 968 if (stream.readBits(1) === 0) { 969 result.chunks.push({ 970 type: Mode.ECI, 971 assignmentNumber: stream.readBits(7), 972 }); 973 } 974 else if (stream.readBits(1) === 0) { 975 result.chunks.push({ 976 type: Mode.ECI, 977 assignmentNumber: stream.readBits(14), 978 }); 979 } 980 else if (stream.readBits(1) === 0) { 981 result.chunks.push({ 982 type: Mode.ECI, 983 assignmentNumber: stream.readBits(21), 984 }); 985 } 986 else { 987 // ECI data seems corrupted 988 result.chunks.push({ 989 type: Mode.ECI, 990 assignmentNumber: -1, 991 }); 992 } 993 } 994 else if (mode === ModeByte.Numeric) { 995 var numericResult = decodeNumeric(stream, size); 996 result.text += numericResult.text; 997 (_a = result.bytes).push.apply(_a, numericResult.bytes); 998 result.chunks.push({ 999 type: Mode.Numeric, 1000 text: numericResult.text, 1001 }); 1002 } 1003 else if (mode === ModeByte.Alphanumeric) { 1004 var alphanumericResult = decodeAlphanumeric(stream, size); 1005 result.text += alphanumericResult.text; 1006 (_b = result.bytes).push.apply(_b, alphanumericResult.bytes); 1007 result.chunks.push({ 1008 type: Mode.Alphanumeric, 1009 text: alphanumericResult.text, 1010 }); 1011 } 1012 else if (mode === ModeByte.Byte) { 1013 var byteResult = decodeByte(stream, size); 1014 result.text += byteResult.text; 1015 (_c = result.bytes).push.apply(_c, byteResult.bytes); 1016 result.chunks.push({ 1017 type: Mode.Byte, 1018 bytes: byteResult.bytes, 1019 text: byteResult.text, 1020 }); 1021 } 1022 else if (mode === ModeByte.Kanji) { 1023 var kanjiResult = decodeKanji(stream, size); 1024 result.text += kanjiResult.text; 1025 (_d = result.bytes).push.apply(_d, kanjiResult.bytes); 1026 result.chunks.push({ 1027 type: Mode.Kanji, 1028 bytes: kanjiResult.bytes, 1029 text: kanjiResult.text, 1030 }); 1031 } 1032 } 1033 // If there is no data left, or the remaining bits are all 0, then that counts as a termination marker 1034 if (stream.available() === 0 || stream.readBits(stream.available()) === 0) { 1035 return result; 1036 } 1037} 1038exports.decode = decode; 1039 1040 1041/***/ }), 1042/* 7 */ 1043/***/ (function(module, exports, __webpack_require__) { 1044 1045"use strict"; 1046 1047// tslint:disable:no-bitwise 1048Object.defineProperty(exports, "__esModule", { value: true }); 1049var BitStream = /** @class */ (function () { 1050 function BitStream(bytes) { 1051 this.byteOffset = 0; 1052 this.bitOffset = 0; 1053 this.bytes = bytes; 1054 } 1055 BitStream.prototype.readBits = function (numBits) { 1056 if (numBits < 1 || numBits > 32 || numBits > this.available()) { 1057 throw new Error("Cannot read " + numBits.toString() + " bits"); 1058 } 1059 var result = 0; 1060 // First, read remainder from current byte 1061 if (this.bitOffset > 0) { 1062 var bitsLeft = 8 - this.bitOffset; 1063 var toRead = numBits < bitsLeft ? numBits : bitsLeft; 1064 var bitsToNotRead = bitsLeft - toRead; 1065 var mask = (0xFF >> (8 - toRead)) << bitsToNotRead; 1066 result = (this.bytes[this.byteOffset] & mask) >> bitsToNotRead; 1067 numBits -= toRead; 1068 this.bitOffset += toRead; 1069 if (this.bitOffset === 8) { 1070 this.bitOffset = 0; 1071 this.byteOffset++; 1072 } 1073 } 1074 // Next read whole bytes 1075 if (numBits > 0) { 1076 while (numBits >= 8) { 1077 result = (result << 8) | (this.bytes[this.byteOffset] & 0xFF); 1078 this.byteOffset++; 1079 numBits -= 8; 1080 } 1081 // Finally read a partial byte 1082 if (numBits > 0) { 1083 var bitsToNotRead = 8 - numBits; 1084 var mask = (0xFF >> bitsToNotRead) << bitsToNotRead; 1085 result = (result << numBits) | ((this.bytes[this.byteOffset] & mask) >> bitsToNotRead); 1086 this.bitOffset += numBits; 1087 } 1088 } 1089 return result; 1090 }; 1091 BitStream.prototype.available = function () { 1092 return 8 * (this.bytes.length - this.byteOffset) - this.bitOffset; 1093 }; 1094 return BitStream; 1095}()); 1096exports.BitStream = BitStream; 1097 1098 1099/***/ }), 1100/* 8 */ 1101/***/ (function(module, exports, __webpack_require__) { 1102 1103"use strict"; 1104 1105Object.defineProperty(exports, "__esModule", { value: true }); 1106exports.shiftJISTable = { 1107 0x20: 0x0020, 1108 0x21: 0x0021, 1109 0x22: 0x0022, 1110 0x23: 0x0023, 1111 0x24: 0x0024, 1112 0x25: 0x0025, 1113 0x26: 0x0026, 1114 0x27: 0x0027, 1115 0x28: 0x0028, 1116 0x29: 0x0029, 1117 0x2A: 0x002A, 1118 0x2B: 0x002B, 1119 0x2C: 0x002C, 1120 0x2D: 0x002D, 1121 0x2E: 0x002E, 1122 0x2F: 0x002F, 1123 0x30: 0x0030, 1124 0x31: 0x0031, 1125 0x32: 0x0032, 1126 0x33: 0x0033, 1127 0x34: 0x0034, 1128 0x35: 0x0035, 1129 0x36: 0x0036, 1130 0x37: 0x0037, 1131 0x38: 0x0038, 1132 0x39: 0x0039, 1133 0x3A: 0x003A, 1134 0x3B: 0x003B, 1135 0x3C: 0x003C, 1136 0x3D: 0x003D, 1137 0x3E: 0x003E, 1138 0x3F: 0x003F, 1139 0x40: 0x0040, 1140 0x41: 0x0041, 1141 0x42: 0x0042, 1142 0x43: 0x0043, 1143 0x44: 0x0044, 1144 0x45: 0x0045, 1145 0x46: 0x0046, 1146 0x47: 0x0047, 1147 0x48: 0x0048, 1148 0x49: 0x0049, 1149 0x4A: 0x004A, 1150 0x4B: 0x004B, 1151 0x4C: 0x004C, 1152 0x4D: 0x004D, 1153 0x4E: 0x004E, 1154 0x4F: 0x004F, 1155 0x50: 0x0050, 1156 0x51: 0x0051, 1157 0x52: 0x0052, 1158 0x53: 0x0053, 1159 0x54: 0x0054, 1160 0x55: 0x0055, 1161 0x56: 0x0056, 1162 0x57: 0x0057, 1163 0x58: 0x0058, 1164 0x59: 0x0059, 1165 0x5A: 0x005A, 1166 0x5B: 0x005B, 1167 0x5C: 0x00A5, 1168 0x5D: 0x005D, 1169 0x5E: 0x005E, 1170 0x5F: 0x005F, 1171 0x60: 0x0060, 1172 0x61: 0x0061, 1173 0x62: 0x0062, 1174 0x63: 0x0063, 1175 0x64: 0x0064, 1176 0x65: 0x0065, 1177 0x66: 0x0066, 1178 0x67: 0x0067, 1179 0x68: 0x0068, 1180 0x69: 0x0069, 1181 0x6A: 0x006A, 1182 0x6B: 0x006B, 1183 0x6C: 0x006C, 1184 0x6D: 0x006D, 1185 0x6E: 0x006E, 1186 0x6F: 0x006F, 1187 0x70: 0x0070, 1188 0x71: 0x0071, 1189 0x72: 0x0072, 1190 0x73: 0x0073,
1191 0x74: 0x0074, 1192 0x75: 0x0075, 1193 0x76: 0x0076, 1194 0x77: 0x0077, 1195 0x78: 0x0078, 1196 0x79: 0x0079, 1197 0x7A: 0x007A, 1198 0x7B: 0x007B, 1199 0x7C: 0x007C, 1200 0x7D: 0x007D, 1201 0x7E: 0x203E, 1202 0x8140: 0x3000, 1203 0x8141: 0x3001, 1204 0x8142: 0x3002, 1205 0x8143: 0xFF0C, 1206 0x8144: 0xFF0E, 1207 0x8145: 0x30FB, 1208 0x8146: 0xFF1A, 1209 0x8147: 0xFF1B, 1210 0x8148: 0xFF1F, 1211 0x8149: 0xFF01, 1212 0x814A: 0x309B, 1213 0x814B: 0x309C, 1214 0x814C: 0x00B4, 1215 0x814D: 0xFF40, 1216 0x814E: 0x00A8, 1217 0x814F: 0xFF3E, 1218 0x8150: 0xFFE3, 1219 0x8151: 0xFF3F, 1220 0x8152: 0x30FD, 1221 0x8153: 0x30FE, 1222 0x8154: 0x309D, 1223 0x8155: 0x309E, 1224 0x8156: 0x3003, 1225 0x8157: 0x4EDD, 1226 0x8158: 0x3005, 1227 0x8159: 0x3006, 1228 0x815A: 0x3007, 1229 0x815B: 0x30FC, 1230 0x815C: 0x2015, 1231 0x815D: 0x2010, 1232 0x815E: 0xFF0F, 1233 0x815F: 0x005C, 1234 0x8160: 0x301C, 1235 0x8161: 0x2016, 1236 0x8162: 0xFF5C, 1237 0x8163: 0x2026, 1238 0x8164: 0x2025, 1239 0x8165: 0x2018, 1240 0x8166: 0x2019, 1241 0x8167: 0x201C, 1242 0x8168: 0x201D, 1243 0x8169: 0xFF08, 1244 0x816A: 0xFF09, 1245 0x816B: 0x3014, 1246 0x816C: 0x3015, 1247 0x816D: 0xFF3B, 1248 0x816E: 0xFF3D, 1249 0x816F: 0xFF5B, 1250 0x8170: 0xFF5D, 1251 0x8171: 0x3008, 1252 0x8172: 0x3009, 1253 0x8173: 0x300A, 1254 0x8174: 0x300B, 1255 0x8175: 0x300C, 1256 0x8176: 0x300D, 1257 0x8177: 0x300E, 1258 0x8178: 0x300F, 1259 0x8179: 0x3010, 1260 0x817A: 0x3011, 1261 0x817B: 0xFF0B, 1262 0x817C: 0x2212, 1263 0x817D: 0x00B1, 1264 0x817E: 0x00D7, 1265 0x8180: 0x00F7, 1266 0x8181: 0xFF1D, 1267 0x8182: 0x2260, 1268 0x8183: 0xFF1C, 1269 0x8184: 0xFF1E, 1270 0x8185: 0x2266, 1271 0x8186: 0x2267, 1272 0x8187: 0x221E, 1273 0x8188: 0x2234, 1274 0x8189: 0x2642, 1275 0x818A: 0x2640, 1276 0x818B: 0x00B0, 1277 0x818C: 0x2032, 1278 0x818D: 0x2033, 1279 0x818E: 0x2103, 1280 0x818F: 0xFFE5, 1281 0x8190: 0xFF04, 1282 0x8191: 0x00A2, 1283 0x8192: 0x00A3, 1284 0x8193: 0xFF05, 1285 0x8194: 0xFF03, 1286 0x8195: 0xFF06, 1287 0x8196: 0xFF0A, 1288 0x8197: 0xFF20, 1289 0x8198: 0x00A7, 1290 0x8199: 0x2606, 1291 0x819A: 0x2605, 1292 0x819B: 0x25CB, 1293 0x819C: 0x25CF, 1294 0x819D: 0x25CE, 1295 0x819E: 0x25C7, 1296 0x819F: 0x25C6, 1297 0x81A0: 0x25A1, 1298 0x81A1: 0x25A0, 1299 0x81A2: 0x25B3, 1300 0x81A3: 0x25B2, 1301 0x81A4: 0x25BD, 1302 0x81A5: 0x25BC, 1303 0x81A6: 0x203B, 1304 0x81A7: 0x3012, 1305 0x81A8: 0x2192, 1306 0x81A9: 0x2190, 1307 0x81AA: 0x2191, 1308 0x81AB: 0x2193, 1309 0x81AC: 0x3013, 1310 0x81B8: 0x2208, 1311 0x81B9: 0x220B, 1312 0x81BA: 0x2286, 1313 0x81BB: 0x2287, 1314 0x81BC: 0x2282, 1315 0x81BD: 0x2283, 1316 0x81BE: 0x222A, 1317 0x81BF: 0x2229, 1318 0x81C8: 0x2227, 1319 0x81C9: 0x2228, 1320 0x81CA: 0x00AC, 1321 0x81CB: 0x21D2, 1322 0x81CC: 0x21D4, 1323 0x81CD: 0x2200, 1324 0x81CE: 0x2203, 1325 0x81DA: 0x2220, 1326 0x81DB: 0x22A5, 1327 0x81DC: 0x2312, 1328 0x81DD: 0x2202, 1329 0x81DE: 0x2207, 1330 0x81DF: 0x2261, 1331 0x81E0: 0x2252, 1332 0x81E1: 0x226A, 1333 0x81E2: 0x226B, 1334 0x81E3: 0x221A, 1335 0x81E4: 0x223D, 1336 0x81E5: 0x221D, 1337 0x81E6: 0x2235, 1338 0x81E7: 0x222B, 1339 0x81E8: 0x222C, 1340 0x81F0: 0x212B, 1341 0x81F1: 0x2030, 1342 0x81F2: 0x266F, 1343 0x81F3: 0x266D, 1344 0x81F4: 0x266A, 1345 0x81F5: 0x2020, 1346 0x81F6: 0x2021, 1347 0x81F7: 0x00B6, 1348 0x81FC: 0x25EF, 1349 0x824F: 0xFF10, 1350 0x8250: 0xFF11, 1351 0x8251: 0xFF12, 1352 0x8252: 0xFF13, 1353 0x8253: 0xFF14, 1354 0x8254: 0xFF15, 1355 0x8255: 0xFF16, 1356 0x8256: 0xFF17, 1357 0x8257: 0xFF18, 1358 0x8258: 0xFF19, 1359 0x8260: 0xFF21, 1360 0x8261: 0xFF22, 1361 0x8262: 0xFF23, 1362 0x8263: 0xFF24, 1363 0x8264: 0xFF25, 1364 0x8265: 0xFF26, 1365 0x8266: 0xFF27, 1366 0x8267: 0xFF28, 1367 0x8268: 0xFF29, 1368 0x8269: 0xFF2A, 1369 0x826A: 0xFF2B, 1370 0x826B: 0xFF2C, 1371 0x826C: 0xFF2D, 1372 0x826D: 0xFF2E, 1373 0x826E: 0xFF2F, 1374 0x826F: 0xFF30, 1375 0x8270: 0xFF31, 1376 0x8271: 0xFF32, 1377 0x8272: 0xFF33, 1378 0x8273: 0xFF34, 1379 0x8274: 0xFF35, 1380 0x8275: 0xFF36, 1381 0x8276: 0xFF37, 1382 0x8277: 0xFF38, 1383 0x8278: 0xFF39, 1384 0x8279: 0xFF3A, 1385 0x8281: 0xFF41, 1386 0x8282: 0xFF42, 1387 0x8283: 0xFF43, 1388 0x8284: 0xFF44, 1389 0x8285: 0xFF45, 1390 0x8286: 0xFF46, 1391 0x8287: 0xFF47, 1392 0x8288: 0xFF48, 1393 0x8289: 0xFF49, 1394 0x828A: 0xFF4A, 1395 0x828B: 0xFF4B, 1396 0x828C: 0xFF4C, 1397 0x828D: 0xFF4D, 1398 0x828E: 0xFF4E, 1399 0x828F: 0xFF4F, 1400 0x8290: 0xFF50, 1401 0x8291: 0xFF51, 1402 0x8292: 0xFF52, 1403 0x8293: 0xFF53, 1404 0x8294: 0xFF54, 1405 0x8295: 0xFF55, 1406 0x8296: 0xFF56, 1407 0x8297: 0xFF57, 1408 0x8298: 0xFF58, 1409 0x8299: 0xFF59, 1410 0x829A: 0xFF5A, 1411 0x829F: 0x3041, 1412 0x82A0: 0x3042, 1413 0x82A1: 0x3043, 1414 0x82A2: 0x3044, 1415 0x82A3: 0x3045, 1416 0x82A4: 0x3046, 1417 0x82A5: 0x3047, 1418 0x82A6: 0x3048, 1419 0x82A7: 0x3049, 1420 0x82A8: 0x304A, 1421 0x82A9: 0x304B, 1422 0x82AA: 0x304C, 1423 0x82AB: 0x304D, 1424 0x82AC: 0x304E, 1425 0x82AD: 0x304F, 1426 0x82AE: 0x3050, 1427 0x82AF: 0x3051, 1428 0x82B0: 0x3052, 1429 0x82B1: 0x3053, 1430 0x82B2: 0x3054, 1431 0x82B3: 0x3055, 1432 0x82B4: 0x3056, 1433 0x82B5: 0x3057, 1434 0x82B6: 0x3058, 1435 0x82B7: 0x3059, 1436 0x82B8: 0x305A, 1437 0x82B9: 0x305B, 1438 0x82BA: 0x305C, 1439 0x82BB: 0x305D, 1440 0x82BC: 0x305E, 1441 0x82BD: 0x305F, 1442 0x82BE: 0x3060, 1443 0x82BF: 0x3061, 1444 0x82C0: 0x3062, 1445 0x82C1: 0x3063, 1446 0x82C2: 0x3064, 1447 0x82C3: 0x3065, 1448 0x82C4: 0x3066, 1449 0x82C5: 0x3067, 1450 0x82C6: 0x3068, 1451 0x82C7: 0x3069, 1452 0x82C8: 0x306A, 1453 0x82C9: 0x306B, 1454 0x82CA: 0x306C, 1455 0x82CB: 0x306D, 1456 0x82CC: 0x306E, 1457 0x82CD: 0x306F, 1458 0x82CE: 0x3070, 1459 0x82CF: 0x3071, 1460 0x82D0: 0x3072, 1461 0x82D1: 0x3073, 1462 0x82D2: 0x3074, 1463 0x82D3: 0x3075, 1464 0x82D4: 0x3076, 1465 0x82D5: 0x3077, 1466 0x82D6: 0x3078, 1467 0x82D7: 0x3079, 1468 0x82D8: 0x307A, 1469 0x82D9: 0x307B, 1470 0x82DA: 0x307C, 1471 0x82DB: 0x307D, 1472 0x82DC: 0x307E, 1473 0x82DD: 0x307F, 1474 0x82DE: 0x3080, 1475 0x82DF: 0x3081, 1476 0x82E0: 0x3082, 1477 0x82E1: 0x3083, 1478 0x82E2: 0x3084, 1479 0x82E3: 0x3085, 1480 0x82E4: 0x3086, 1481 0x82E5: 0x3087, 1482 0x82E6: 0x3088, 1483 0x82E7: 0x3089, 1484 0x82E8: 0x308A, 1485 0x82E9: 0x308B, 1486 0x82EA: 0x308C, 1487 0x82EB: 0x308D, 1488 0x82EC: 0x308E, 1489 0x82ED: 0x308F, 1490 0x82EE: 0x3090,
1491 0x82EF: 0x3091, 1492 0x82F0: 0x3092, 1493 0x82F1: 0x3093, 1494 0x8340: 0x30A1, 1495 0x8341: 0x30A2, 1496 0x8342: 0x30A3, 1497 0x8343: 0x30A4, 1498 0x8344: 0x30A5, 1499 0x8345: 0x30A6, 1500 0x8346: 0x30A7, 1501 0x8347: 0x30A8, 1502 0x8348: 0x30A9, 1503 0x8349: 0x30AA, 1504 0x834A: 0x30AB, 1505 0x834B: 0x30AC, 1506 0x834C: 0x30AD, 1507 0x834D: 0x30AE, 1508 0x834E: 0x30AF, 1509 0x834F: 0x30B0, 1510 0x8350: 0x30B1, 1511 0x8351: 0x30B2, 1512 0x8352: 0x30B3, 1513 0x8353: 0x30B4, 1514 0x8354: 0x30B5, 1515 0x8355: 0x30B6, 1516 0x8356: 0x30B7, 1517 0x8357: 0x30B8, 1518 0x8358: 0x30B9, 1519 0x8359: 0x30BA, 1520 0x835A: 0x30BB, 1521 0x835B: 0x30BC, 1522 0x835C: 0x30BD, 1523 0x835D: 0x30BE, 1524 0x835E: 0x30BF, 1525 0x835F: 0x30C0, 1526 0x8360: 0x30C1, 1527 0x8361: 0x30C2, 1528 0x8362: 0x30C3, 1529 0x8363: 0x30C4, 1530 0x8364: 0x30C5, 1531 0x8365: 0x30C6, 1532 0x8366: 0x30C7, 1533 0x8367: 0x30C8, 1534 0x8368: 0x30C9, 1535 0x8369: 0x30CA, 1536 0x836A: 0x30CB, 1537 0x836B: 0x30CC, 1538 0x836C: 0x30CD, 1539 0x836D: 0x30CE, 1540 0x836E: 0x30CF, 1541 0x836F: 0x30D0, 1542 0x8370: 0x30D1, 1543 0x8371: 0x30D2, 1544 0x8372: 0x30D3, 1545 0x8373: 0x30D4, 1546 0x8374: 0x30D5, 1547 0x8375: 0x30D6, 1548 0x8376: 0x30D7, 1549 0x8377: 0x30D8, 1550 0x8378: 0x30D9, 1551 0x8379: 0x30DA, 1552 0x837A: 0x30DB, 1553 0x837B: 0x30DC, 1554 0x837C: 0x30DD, 1555 0x837D: 0x30DE, 1556 0x837E: 0x30DF, 1557 0x8380: 0x30E0, 1558 0x8381: 0x30E1, 1559 0x8382: 0x30E2, 1560 0x8383: 0x30E3, 1561 0x8384: 0x30E4, 1562 0x8385: 0x30E5, 1563 0x8386: 0x30E6, 1564 0x8387: 0x30E7, 1565 0x8388: 0x30E8, 1566 0x8389: 0x30E9, 1567 0x838A: 0x30EA, 1568 0x838B: 0x30EB, 1569 0x838C: 0x30EC, 1570 0x838D: 0x30ED, 1571 0x838E: 0x30EE, 1572 0x838F: 0x30EF, 1573 0x8390: 0x30F0, 1574 0x8391: 0x30F1, 1575 0x8392: 0x30F2, 1576 0x8393: 0x30F3, 1577 0x8394: 0x30F4, 1578 0x8395: 0x30F5, 1579 0x8396: 0x30F6, 1580 0x839F: 0x0391, 1581 0x83A0: 0x0392, 1582 0x83A1: 0x0393, 1583 0x83A2: 0x0394, 1584 0x83A3: 0x0395, 1585 0x83A4: 0x0396, 1586 0x83A5: 0x0397, 1587 0x83A6: 0x0398, 1588 0x83A7: 0x0399, 1589 0x83A8: 0x039A, 1590 0x83A9: 0x039B, 1591 0x83AA: 0x039C, 1592 0x83AB: 0x039D, 1593 0x83AC: 0x039E, 1594 0x83AD: 0x039F, 1595 0x83AE: 0x03A0, 1596 0x83AF: 0x03A1, 1597 0x83B0: 0x03A3, 1598 0x83B1: 0x03A4, 1599 0x83B2: 0x03A5, 1600 0x83B3: 0x03A6, 1601 0x83B4: 0x03A7, 1602 0x83B5: 0x03A8, 1603 0x83B6: 0x03A9, 1604 0x83BF: 0x03B1, 1605 0x83C0: 0x03B2, 1606 0x83C1: 0x03B3, 1607 0x83C2: 0x03B4, 1608 0x83C3: 0x03B5, 1609 0x83C4: 0x03B6, 1610 0x83C5: 0x03B7, 1611 0x83C6: 0x03B8, 1612 0x83C7: 0x03B9, 1613 0x83C8: 0x03BA, 1614 0x83C9: 0x03BB, 1615 0x83CA: 0x03BC, 1616 0x83CB: 0x03BD, 1617 0x83CC: 0x03BE, 1618 0x83CD: 0x03BF, 1619 0x83CE: 0x03C0, 1620 0x83CF: 0x03C1, 1621 0x83D0: 0x03C3, 1622 0x83D1: 0x03C4, 1623 0x83D2: 0x03C5, 1624 0x83D3: 0x03C6, 1625 0x83D4: 0x03C7, 1626 0x83D5: 0x03C8, 1627 0x83D6: 0x03C9, 1628 0x8440: 0x0410, 1629 0x8441: 0x0411, 1630 0x8442: 0x0412, 1631 0x8443: 0x0413, 1632 0x8444: 0x0414, 1633 0x8445: 0x0415, 1634 0x8446: 0x0401, 1635 0x8447: 0x0416, 1636 0x8448: 0x0417, 1637 0x8449: 0x0418, 1638 0x844A: 0x0419, 1639 0x844B: 0x041A, 1640 0x844C: 0x041B, 1641 0x844D: 0x041C, 1642 0x844E: 0x041D, 1643 0x844F: 0x041E, 1644 0x8450: 0x041F, 1645 0x8451: 0x0420, 1646 0x8452: 0x0421, 1647 0x8453: 0x0422, 1648 0x8454: 0x0423, 1649 0x8455: 0x0424, 1650 0x8456: 0x0425, 1651 0x8457: 0x0426, 1652 0x8458: 0x0427, 1653 0x8459: 0x0428, 1654 0x845A: 0x0429, 1655 0x845B: 0x042A, 1656 0x845C: 0x042B, 1657 0x845D: 0x042C, 1658 0x845E: 0x042D, 1659 0x845F: 0x042E, 1660 0x8460: 0x042F, 1661 0x8470: 0x0430, 1662 0x8471: 0x0431, 1663 0x8472: 0x0432, 1664 0x8473: 0x0433, 1665 0x8474: 0x0434, 1666 0x8475: 0x0435, 1667 0x8476: 0x0451, 1668 0x8477: 0x0436, 1669 0x8478: 0x0437, 1670 0x8479: 0x0438, 1671 0x847A: 0x0439, 1672 0x847B: 0x043A, 1673 0x847C: 0x043B, 1674 0x847D: 0x043C, 1675 0x847E: 0x043D, 1676 0x8480: 0x043E, 1677 0x8481: 0x043F, 1678 0x8482: 0x0440, 1679 0x8483: 0x0441, 1680 0x8484: 0x0442, 1681 0x8485: 0x0443, 1682 0x8486: 0x0444, 1683 0x8487: 0x0445, 1684 0x8488: 0x0446, 1685 0x8489: 0x0447, 1686 0x848A: 0x0448, 1687 0x848B: 0x0449, 1688 0x848C: 0x044A, 1689 0x848D: 0x044B, 1690 0x848E: 0x044C, 1691 0x848F: 0x044D, 1692 0x8490: 0x044E, 1693 0x8491: 0x044F, 1694 0x849F: 0x2500, 1695 0x84A0: 0x2502, 1696 0x84A1: 0x250C, 1697 0x84A2: 0x2510, 1698 0x84A3: 0x2518, 1699 0x84A4: 0x2514, 1700 0x84A5: 0x251C, 1701 0x84A6: 0x252C, 1702 0x84A7: 0x2524, 1703 0x84A8: 0x2534, 1704 0x84A9: 0x253C, 1705 0x84AA: 0x2501, 1706 0x84AB: 0x2503, 1707 0x84AC: 0x250F, 1708 0x84AD: 0x2513, 1709 0x84AE: 0x251B, 1710 0x84AF: 0x2517, 1711 0x84B0: 0x2523, 1712 0x84B1: 0x2533, 1713 0x84B2: 0x252B, 1714 0x84B3: 0x253B, 1715 0x84B4: 0x254B, 1716 0x84B5: 0x2520, 1717 0x84B6: 0x252F, 1718 0x84B7: 0x2528, 1719 0x84B8: 0x2537, 1720 0x84B9: 0x253F, 1721 0x84BA: 0x251D, 1722 0x84BB: 0x2530, 1723 0x84BC: 0x2525, 1724 0x84BD: 0x2538, 1725 0x84BE: 0x2542, 1726 0x889F: 0x4E9C, 1727 0x88A0: 0x5516, 1728 0x88A1: 0x5A03, 1729 0x88A2: 0x963F, 1730 0x88A3: 0x54C0, 1731 0x88A4: 0x611B, 1732 0x88A5: 0x6328, 1733 0x88A6: 0x59F6, 1734 0x88A7: 0x9022, 1735 0x88A8: 0x8475, 1736 0x88A9: 0x831C, 1737 0x88AA: 0x7A50, 1738 0x88AB: 0x60AA, 1739 0x88AC: 0x63E1, 1740 0x88AD: 0x6E25, 1741 0x88AE: 0x65ED, 1742 0x88AF: 0x8466, 1743 0x88B0: 0x82A6, 1744 0x88B1: 0x9BF5, 1745 0x88B2: 0x6893, 1746 0x88B3: 0x5727, 1747 0x88B4: 0x65A1, 1748 0x88B5: 0x6271, 1749 0x88B6: 0x5B9B, 1750 0x88B7: 0x59D0, 1751 0x88B8: 0x867B, 1752 0x88B9: 0x98F4,
1753 0x88BA: 0x7D62, 1754 0x88BB: 0x7DBE, 1755 0x88BC: 0x9B8E, 1756 0x88BD: 0x6216, 1757 0x88BE: 0x7C9F, 1758 0x88BF: 0x88B7, 1759 0x88C0: 0x5B89, 1760 0x88C1: 0x5EB5, 1761 0x88C2: 0x6309, 1762 0x88C3: 0x6697, 1763 0x88C4: 0x6848, 1764 0x88C5: 0x95C7, 1765 0x88C6: 0x978D, 1766 0x88C7: 0x674F, 1767 0x88C8: 0x4EE5, 1768 0x88C9: 0x4F0A, 1769 0x88CA: 0x4F4D, 1770 0x88CB: 0x4F9D, 1771 0x88CC: 0x5049, 1772 0x88CD: 0x56F2, 1773 0x88CE: 0x5937, 1774 0x88CF: 0x59D4, 1775 0x88D0: 0x5A01, 1776 0x88D1: 0x5C09, 1777 0x88D2: 0x60DF, 1778 0x88D3: 0x610F, 1779 0x88D4: 0x6170, 1780 0x88D5: 0x6613, 1781 0x88D6: 0x6905, 1782 0x88D7: 0x70BA, 1783 0x88D8: 0x754F, 1784 0x88D9: 0x7570, 1785 0x88DA: 0x79FB, 1786 0x88DB: 0x7DAD, 1787 0x88DC: 0x7DEF, 1788 0x88DD: 0x80C3, 1789 0x88DE: 0x840E, 1790 0x88DF: 0x8863, 1791 0x88E0: 0x8B02, 1792 0x88E1: 0x9055, 1793 0x88E2: 0x907A, 1794 0x88E3: 0x533B, 1795 0x88E4: 0x4E95, 1796 0x88E5: 0x4EA5, 1797 0x88E6: 0x57DF, 1798 0x88E7: 0x80B2, 1799 0x88E8: 0x90C1, 1800 0x88E9: 0x78EF, 1801 0x88EA: 0x4E00, 1802 0x88EB: 0x58F1, 1803 0x88EC: 0x6EA2, 1804 0x88ED: 0x9038, 1805 0x88EE: 0x7A32, 1806 0x88EF: 0x8328, 1807 0x88F0: 0x828B, 1808 0x88F1: 0x9C2F, 1809 0x88F2: 0x5141, 1810 0x88F3: 0x5370, 1811 0x88F4: 0x54BD, 1812 0x88F5: 0x54E1, 1813 0x88F6: 0x56E0, 1814 0x88F7: 0x59FB, 1815 0x88F8: 0x5F15, 1816 0x88F9: 0x98F2, 1817 0x88FA: 0x6DEB, 1818 0x88FB: 0x80E4, 1819 0x88FC: 0x852D, 1820 0x8940: 0x9662, 1821 0x8941: 0x9670, 1822 0x8942: 0x96A0, 1823 0x8943: 0x97FB, 1824 0x8944: 0x540B, 1825 0x8945: 0x53F3, 1826 0x8946: 0x5B87, 1827 0x8947: 0x70CF, 1828 0x8948: 0x7FBD, 1829 0x8949: 0x8FC2, 1830 0x894A: 0x96E8, 1831 0x894B: 0x536F, 1832 0x894C: 0x9D5C, 1833 0x894D: 0x7ABA, 1834 0x894E: 0x4E11, 1835 0x894F: 0x7893, 1836 0x8950: 0x81FC, 1837 0x8951: 0x6E26, 1838 0x8952: 0x5618, 1839 0x8953: 0x5504, 1840 0x8954: 0x6B1D, 1841 0x8955: 0x851A, 1842 0x8956: 0x9C3B, 1843 0x8957: 0x59E5, 1844 0x8958: 0x53A9, 1845 0x8959: 0x6D66, 1846 0x895A: 0x74DC, 1847 0x895B: 0x958F, 1848 0x895C: 0x5642, 1849 0x895D: 0x4E91, 1850 0x895E: 0x904B, 1851 0x895F: 0x96F2, 1852 0x8960: 0x834F, 1853 0x8961: 0x990C, 1854 0x8962: 0x53E1, 1855 0x8963: 0x55B6, 1856 0x8964: 0x5B30, 1857 0x8965: 0x5F71, 1858 0x8966: 0x6620, 1859 0x8967: 0x66F3, 1860 0x8968: 0x6804, 1861 0x8969: 0x6C38, 1862 0x896A: 0x6CF3, 1863 0x896B: 0x6D29, 1864 0x896C: 0x745B, 1865 0x896D: 0x76C8, 1866 0x896E: 0x7A4E, 1867 0x896F: 0x9834, 1868 0x8970: 0x82F1, 1869 0x8971: 0x885B, 1870 0x8972: 0x8A60, 1871 0x8973: 0x92ED, 1872 0x8974: 0x6DB2, 1873 0x8975: 0x75AB, 1874 0x8976: 0x76CA, 1875 0x8977: 0x99C5, 1876 0x8978: 0x60A6, 1877 0x8979: 0x8B01, 1878 0x897A: 0x8D8A, 1879 0x897B: 0x95B2, 1880 0x897C: 0x698E, 1881 0x897D: 0x53AD, 1882 0x897E: 0x5186, 1883 0x8980: 0x5712, 1884 0x8981: 0x5830, 1885 0x8982: 0x5944, 1886 0x8983: 0x5BB4, 1887 0x8984: 0x5EF6, 1888 0x8985: 0x6028, 1889 0x8986: 0x63A9, 1890 0x8987: 0x63F4, 1891 0x8988: 0x6CBF, 1892 0x8989: 0x6F14, 1893 0x898A: 0x708E, 1894 0x898B: 0x7114, 1895 0x898C: 0x7159, 1896 0x898D: 0x71D5, 1897 0x898E: 0x733F, 1898 0x898F: 0x7E01, 1899 0x8990: 0x8276, 1900 0x8991: 0x82D1, 1901 0x8992: 0x8597, 1902 0x8993: 0x9060, 1903 0x8994: 0x925B, 1904 0x8995: 0x9D1B, 1905 0x8996: 0x5869, 1906 0x8997: 0x65BC, 1907 0x8998: 0x6C5A, 1908 0x8999: 0x7525, 1909 0x899A: 0x51F9, 1910 0x899B: 0x592E, 1911 0x899C: 0x5965, 1912 0x899D: 0x5F80, 1913 0x899E: 0x5FDC, 1914 0x899F: 0x62BC, 1915 0x89A0: 0x65FA, 1916 0x89A1: 0x6A2A, 1917 0x89A2: 0x6B27, 1918 0x89A3: 0x6BB4, 1919 0x89A4: 0x738B, 1920 0x89A5: 0x7FC1, 1921 0x89A6: 0x8956, 1922 0x89A7: 0x9D2C, 1923 0x89A8: 0x9D0E, 1924 0x89A9: 0x9EC4, 1925 0x89AA: 0x5CA1, 1926 0x89AB: 0x6C96, 1927 0x89AC: 0x837B, 1928 0x89AD: 0x5104, 1929 0x89AE: 0x5C4B, 1930 0x89AF: 0x61B6, 1931 0x89B0: 0x81C6, 1932 0x89B1: 0x6876, 1933 0x89B2: 0x7261, 1934 0x89B3: 0x4E59, 1935 0x89B4: 0x4FFA, 1936 0x89B5: 0x5378, 1937 0x89B6: 0x6069, 1938 0x89B7: 0x6E29, 1939 0x89B8: 0x7A4F, 1940 0x89B9: 0x97F3, 1941 0x89BA: 0x4E0B, 1942 0x89BB: 0x5316, 1943 0x89BC: 0x4EEE, 1944 0x89BD: 0x4F55, 1945 0x89BE: 0x4F3D, 1946 0x89BF: 0x4FA1, 1947 0x89C0: 0x4F73, 1948 0x89C1: 0x52A0, 1949 0x89C2: 0x53EF, 1950 0x89C3: 0x5609, 1951 0x89C4: 0x590F, 1952 0x89C5: 0x5AC1, 1953 0x89C6: 0x5BB6, 1954 0x89C7: 0x5BE1, 1955 0x89C8: 0x79D1, 1956 0x89C9: 0x6687, 1957 0x89CA: 0x679C, 1958 0x89CB: 0x67B6, 1959 0x89CC: 0x6B4C, 1960 0x89CD: 0x6CB3, 1961 0x89CE: 0x706B,
1962 0x89CF: 0x73C2, 1963 0x89D0: 0x798D, 1964 0x89D1: 0x79BE, 1965 0x89D2: 0x7A3C, 1966 0x89D3: 0x7B87, 1967 0x89D4: 0x82B1, 1968 0x89D5: 0x82DB, 1969 0x89D6: 0x8304, 1970 0x89D7: 0x8377, 1971 0x89D8: 0x83EF, 1972 0x89D9: 0x83D3, 1973 0x89DA: 0x8766, 1974 0x89DB: 0x8AB2, 1975 0x89DC: 0x5629, 1976 0x89DD: 0x8CA8, 1977 0x89DE: 0x8FE6, 1978 0x89DF: 0x904E, 1979 0x89E0: 0x971E, 1980 0x89E1: 0x868A, 1981 0x89E2: 0x4FC4, 1982 0x89E3: 0x5CE8, 1983 0x89E4: 0x6211, 1984 0x89E5: 0x7259, 1985 0x89E6: 0x753B, 1986 0x89E7: 0x81E5, 1987 0x89E8: 0x82BD, 1988 0x89E9: 0x86FE, 1989 0x89EA: 0x8CC0, 1990 0x89EB: 0x96C5, 1991 0x89EC: 0x9913, 1992 0x89ED: 0x99D5, 1993 0x89EE: 0x4ECB, 1994 0x89EF: 0x4F1A, 1995 0x89F0: 0x89E3, 1996 0x89F1: 0x56DE, 1997 0x89F2: 0x584A, 1998 0x89F3: 0x58CA, 1999 0x89F4: 0x5EFB, 2000 0x89F5: 0x5FEB, 2001 0x89F6: 0x602A, 2002 0x89F7: 0x6094, 2003 0x89F8: 0x6062, 2004 0x89F9: 0x61D0, 2005 0x89FA: 0x6212, 2006 0x89FB: 0x62D0, 2007 0x89FC: 0x6539, 2008 0x8A40: 0x9B41, 2009 0x8A41: 0x6666, 2010 0x8A42: 0x68B0, 2011 0x8A43: 0x6D77, 2012 0x8A44: 0x7070, 2013 0x8A45: 0x754C, 2014 0x8A46: 0x7686, 2015 0x8A47: 0x7D75, 2016 0x8A48: 0x82A5, 2017 0x8A49: 0x87F9, 2018 0x8A4A: 0x958B, 2019 0x8A4B: 0x968E, 2020 0x8A4C: 0x8C9D, 2021 0x8A4D: 0x51F1, 2022 0x8A4E: 0x52BE, 2023 0x8A4F: 0x5916, 2024 0x8A50: 0x54B3, 2025 0x8A51: 0x5BB3, 2026 0x8A52: 0x5D16, 2027 0x8A53: 0x6168, 2028 0x8A54: 0x6982, 2029 0x8A55: 0x6DAF, 2030 0x8A56: 0x788D, 2031 0x8A57: 0x84CB, 2032 0x8A58: 0x8857, 2033 0x8A59: 0x8A72, 2034 0x8A5A: 0x93A7, 2035 0x8A5B: 0x9AB8, 2036 0x8A5C: 0x6D6C, 2037 0x8A5D: 0x99A8, 2038 0x8A5E: 0x86D9, 2039 0x8A5F: 0x57A3, 2040 0x8A60: 0x67FF, 2041 0x8A61: 0x86CE, 2042 0x8A62: 0x920E, 2043 0x8A63: 0x5283, 2044 0x8A64: 0x5687, 2045 0x8A65: 0x5404, 2046 0x8A66: 0x5ED3, 2047 0x8A67: 0x62E1, 2048 0x8A68: 0x64B9, 2049 0x8A69: 0x683C, 2050 0x8A6A: 0x6838, 2051 0x8A6B: 0x6BBB, 2052 0x8A6C: 0x7372, 2053 0x8A6D: 0x78BA, 2054 0x8A6E: 0x7A6B, 2055 0x8A6F: 0x899A, 2056 0x8A70: 0x89D2, 2057 0x8A71: 0x8D6B, 2058 0x8A72: 0x8F03, 2059 0x8A73: 0x90ED, 2060 0x8A74: 0x95A3, 2061 0x8A75: 0x9694, 2062 0x8A76: 0x9769, 2063 0x8A77: 0x5B66, 2064 0x8A78: 0x5CB3, 2065 0x8A79: 0x697D, 2066 0x8A7A: 0x984D, 2067 0x8A7B: 0x984E, 2068 0x8A7C: 0x639B, 2069 0x8A7D: 0x7B20, 2070 0x8A7E: 0x6A2B, 2071 0x8A80: 0x6A7F, 2072 0x8A81: 0x68B6, 2073 0x8A82: 0x9C0D, 2074 0x8A83: 0x6F5F, 2075 0x8A84: 0x5272, 2076 0x8A85: 0x559D, 2077 0x8A86: 0x6070, 2078 0x8A87: 0x62EC, 2079 0x8A88: 0x6D3B, 2080 0x8A89: 0x6E07, 2081 0x8A8A: 0x6ED1, 2082 0x8A8B: 0x845B, 2083 0x8A8C: 0x8910, 2084 0x8A8D: 0x8F44, 2085 0x8A8E: 0x4E14, 2086 0x8A8F: 0x9C39, 2087 0x8A90: 0x53F6, 2088 0x8A91: 0x691B, 2089 0x8A92: 0x6A3A, 2090 0x8A93: 0x9784, 2091 0x8A94: 0x682A, 2092 0x8A95: 0x515C, 2093 0x8A96: 0x7AC3, 2094 0x8A97: 0x84B2, 2095 0x8A98: 0x91DC, 2096 0x8A99: 0x938C, 2097 0x8A9A: 0x565B, 2098 0x8A9B: 0x9D28, 2099 0x8A9C: 0x6822, 2100 0x8A9D: 0x8305, 2101 0x8A9E: 0x8431, 2102 0x8A9F: 0x7CA5, 2103 0x8AA0: 0x5208, 2104 0x8AA1: 0x82C5, 2105 0x8AA2: 0x74E6, 2106 0x8AA3: 0x4E7E, 2107 0x8AA4: 0x4F83, 2108 0x8AA5: 0x51A0, 2109 0x8AA6: 0x5BD2, 2110 0x8AA7: 0x520A, 2111 0x8AA8: 0x52D8, 2112 0x8AA9: 0x52E7, 2113 0x8AAA: 0x5DFB, 2114 0x8AAB: 0x559A, 2115 0x8AAC: 0x582A, 2116 0x8AAD: 0x59E6, 2117 0x8AAE: 0x5B8C, 2118 0x8AAF: 0x5B98, 2119 0x8AB0: 0x5BDB, 2120 0x8AB1: 0x5E72, 2121 0x8AB2: 0x5E79, 2122 0x8AB3: 0x60A3, 2123 0x8AB4: 0x611F, 2124 0x8AB5: 0x6163, 2125 0x8AB6: 0x61BE, 2126 0x8AB7: 0x63DB, 2127 0x8AB8: 0x6562, 2128 0x8AB9: 0x67D1, 2129 0x8ABA: 0x6853, 2130 0x8ABB: 0x68FA, 2131 0x8ABC: 0x6B3E, 2132 0x8ABD: 0x6B53, 2133 0x8ABE: 0x6C57, 2134 0x8ABF: 0x6F22, 2135 0x8AC0: 0x6F97, 2136 0x8AC1: 0x6F45, 2137 0x8AC2: 0x74B0, 2138 0x8AC3: 0x7518, 2139 0x8AC4: 0x76E3, 2140 0x8AC5: 0x770B, 2141 0x8AC6: 0x7AFF, 2142 0x8AC7: 0x7BA1, 2143 0x8AC8: 0x7C21, 2144 0x8AC9: 0x7DE9, 2145 0x8ACA: 0x7F36, 2146 0x8ACB: 0x7FF0, 2147 0x8ACC: 0x809D, 2148 0x8ACD: 0x8266, 2149 0x8ACE: 0x839E, 2150 0x8ACF: 0x89B3, 2151 0x8AD0: 0x8ACC, 2152 0x8AD1: 0x8CAB, 2153 0x8AD2: 0x9084, 2154 0x8AD3: 0x9451, 2155 0x8AD4: 0x9593, 2156 0x8AD5: 0x9591, 2157 0x8AD6: 0x95A2, 2158 0x8AD7: 0x9665, 2159 0x8AD8: 0x97D3, 2160 0x8AD9: 0x9928, 2161 0x8ADA: 0x8218,
2162 0x8ADB: 0x4E38, 2163 0x8ADC: 0x542B, 2164 0x8ADD: 0x5CB8, 2165 0x8ADE: 0x5DCC, 2166 0x8ADF: 0x73A9, 2167 0x8AE0: 0x764C, 2168 0x8AE1: 0x773C, 2169 0x8AE2: 0x5CA9, 2170 0x8AE3: 0x7FEB, 2171 0x8AE4: 0x8D0B, 2172 0x8AE5: 0x96C1, 2173 0x8AE6: 0x9811, 2174 0x8AE7: 0x9854, 2175 0x8AE8: 0x9858, 2176 0x8AE9: 0x4F01, 2177 0x8AEA: 0x4F0E, 2178 0x8AEB: 0x5371, 2179 0x8AEC: 0x559C, 2180 0x8AED: 0x5668, 2181 0x8AEE: 0x57FA, 2182 0x8AEF: 0x5947, 2183 0x8AF0: 0x5B09, 2184 0x8AF1: 0x5BC4, 2185 0x8AF2: 0x5C90, 2186 0x8AF3: 0x5E0C, 2187 0x8AF4: 0x5E7E, 2188 0x8AF5: 0x5FCC, 2189 0x8AF6: 0x63EE, 2190 0x8AF7: 0x673A, 2191 0x8AF8: 0x65D7, 2192 0x8AF9: 0x65E2, 2193 0x8AFA: 0x671F, 2194 0x8AFB: 0x68CB, 2195 0x8AFC: 0x68C4, 2196 0x8B40: 0x6A5F, 2197 0x8B41: 0x5E30, 2198 0x8B42: 0x6BC5, 2199 0x8B43: 0x6C17, 2200 0x8B44: 0x6C7D, 2201 0x8B45: 0x757F, 2202 0x8B46: 0x7948, 2203 0x8B47: 0x5B63, 2204 0x8B48: 0x7A00, 2205 0x8B49: 0x7D00, 2206 0x8B4A: 0x5FBD, 2207 0x8B4B: 0x898F, 2208 0x8B4C: 0x8A18, 2209 0x8B4D: 0x8CB4, 2210 0x8B4E: 0x8D77, 2211 0x8B4F: 0x8ECC, 2212 0x8B50: 0x8F1D, 2213 0x8B51: 0x98E2, 2214 0x8B52: 0x9A0E, 2215 0x8B53: 0x9B3C, 2216 0x8B54: 0x4E80, 2217 0x8B55: 0x507D, 2218 0x8B56: 0x5100, 2219 0x8B57: 0x5993, 2220 0x8B58: 0x5B9C, 2221 0x8B59: 0x622F, 2222 0x8B5A: 0x6280, 2223 0x8B5B: 0x64EC, 2224 0x8B5C: 0x6B3A, 2225 0x8B5D: 0x72A0, 2226 0x8B5E: 0x7591, 2227 0x8B5F: 0x7947, 2228 0x8B60: 0x7FA9, 2229 0x8B61: 0x87FB, 2230 0x8B62: 0x8ABC, 2231 0x8B63: 0x8B70, 2232 0x8B64: 0x63AC, 2233 0x8B65: 0x83CA, 2234 0x8B66: 0x97A0, 2235 0x8B67: 0x5409, 2236 0x8B68: 0x5403, 2237 0x8B69: 0x55AB, 2238 0x8B6A: 0x6854, 2239 0x8B6B: 0x6A58, 2240 0x8B6C: 0x8A70, 2241 0x8B6D: 0x7827, 2242 0x8B6E: 0x6775, 2243 0x8B6F: 0x9ECD, 2244 0x8B70: 0x5374, 2245 0x8B71: 0x5BA2, 2246 0x8B72: 0x811A, 2247 0x8B73: 0x8650, 2248 0x8B74: 0x9006, 2249 0x8B75: 0x4E18, 2250 0x8B76: 0x4E45, 2251 0x8B77: 0x4EC7, 2252 0x8B78: 0x4F11, 2253 0x8B79: 0x53CA, 2254 0x8B7A: 0x5438, 2255 0x8B7B: 0x5BAE, 2256 0x8B7C: 0x5F13, 2257 0x8B7D: 0x6025, 2258 0x8B7E: 0x6551, 2259 0x8B80: 0x673D, 2260 0x8B81: 0x6C42, 2261 0x8B82: 0x6C72, 2262 0x8B83: 0x6CE3, 2263 0x8B84: 0x7078, 2264 0x8B85: 0x7403, 2265 0x8B86: 0x7A76, 2266 0x8B87: 0x7AAE, 2267 0x8B88: 0x7B08, 2268 0x8B89: 0x7D1A, 2269 0x8B8A: 0x7CFE, 2270 0x8B8B: 0x7D66, 2271 0x8B8C: 0x65E7, 2272 0x8B8D: 0x725B, 2273 0x8B8E: 0x53BB, 2274 0x8B8F: 0x5C45, 2275 0x8B90: 0x5DE8, 2276 0x8B91: 0x62D2, 2277 0x8B92: 0x62E0, 2278 0x8B93: 0x6319, 2279 0x8B94: 0x6E20, 2280 0x8B95: 0x865A, 2281 0x8B96: 0x8A31, 2282 0x8B97: 0x8DDD, 2283 0x8B98: 0x92F8, 2284 0x8B99: 0x6F01, 2285 0x8B9A: 0x79A6, 2286 0x8B9B: 0x9B5A, 2287 0x8B9C: 0x4EA8, 2288 0x8B9D: 0x4EAB, 2289 0x8B9E: 0x4EAC, 2290 0x8B9F: 0x4F9B, 2291 0x8BA0: 0x4FA0, 2292 0x8BA1: 0x50D1, 2293 0x8BA2: 0x5147, 2294 0x8BA3: 0x7AF6, 2295 0x8BA4: 0x5171, 2296 0x8BA5: 0x51F6, 2297 0x8BA6: 0x5354, 2298 0x8BA7: 0x5321, 2299 0x8BA8: 0x537F, 2300 0x8BA9: 0x53EB, 2301 0x8BAA: 0x55AC, 2302 0x8BAB: 0x5883, 2303 0x8BAC: 0x5CE1, 2304 0x8BAD: 0x5F37, 2305 0x8BAE: 0x5F4A, 2306 0x8BAF: 0x602F, 2307 0x8BB0: 0x6050, 2308 0x8BB1: 0x606D, 2309 0x8BB2: 0x631F, 2310 0x8BB3: 0x6559, 2311 0x8BB4: 0x6A4B, 2312 0x8BB5: 0x6CC1, 2313 0x8BB6: 0x72C2, 2314 0x8BB7: 0x72ED, 2315 0x8BB8: 0x77EF, 2316 0x8BB9: 0x80F8, 2317 0x8BBA: 0x8105, 2318 0x8BBB: 0x8208, 2319 0x8BBC: 0x854E, 2320 0x8BBD: 0x90F7, 2321 0x8BBE: 0x93E1, 2322 0x8BBF: 0x97FF, 2323 0x8BC0: 0x9957, 2324 0x8BC1: 0x9A5A, 2325 0x8BC2: 0x4EF0, 2326 0x8BC3: 0x51DD, 2327 0x8BC4: 0x5C2D, 2328 0x8BC5: 0x6681, 2329 0x8BC6: 0x696D, 2330 0x8BC7: 0x5C40, 2331 0x8BC8: 0x66F2, 2332 0x8BC9: 0x6975, 2333 0x8BCA: 0x7389, 2334 0x8BCB: 0x6850, 2335 0x8BCC: 0x7C81, 2336 0x8BCD: 0x50C5, 2337 0x8BCE: 0x52E4, 2338 0x8BCF: 0x5747, 2339 0x8BD0: 0x5DFE, 2340 0x8BD1: 0x9326, 2341 0x8BD2: 0x65A4, 2342 0x8BD3: 0x6B23, 2343 0x8BD4: 0x6B3D, 2344 0x8BD5: 0x7434, 2345 0x8BD6: 0x7981, 2346 0x8BD7: 0x79BD, 2347 0x8BD8: 0x7B4B, 2348 0x8BD9: 0x7DCA, 2349 0x8BDA: 0x82B9, 2350 0x8BDB: 0x83CC, 2351 0x8BDC: 0x887F, 2352 0x8BDD: 0x895F, 2353 0x8BDE: 0x8B39, 2354 0x8BDF: 0x8FD1, 2355 0x8BE0: 0x91D1, 2356 0x8BE1: 0x541F, 2357 0x8BE2: 0x9280, 2358 0x8BE3: 0x4E5D, 2359 0x8BE4: 0x5036, 2360 0x8BE5: 0x53E5, 2361 0x8BE6: 0x533A, 2362 0x8BE7: 0x72D7, 2363 0x8BE8: 0x7396, 2364 0x8BE9: 0x77E9, 2365 0x8BEA: 0x82E6, 2366 0x8BEB: 0x8EAF, 2367 0x8BEC: 0x99C6, 2368 0x8BED: 0x99C8, 2369 0x8BEE: 0x99D2, 2370 0x8BEF: 0x5177, 2371 0x8BF0: 0x611A, 2372 0x8BF1: 0x865E, 2373 0x8BF2: 0x55B0, 2374 0x8BF3: 0x7A7A, 2375 0x8BF4: 0x5076, 2376 0x8BF5: 0x5BD3,
2377 0x8BF6: 0x9047, 2378 0x8BF7: 0x9685, 2379 0x8BF8: 0x4E32, 2380 0x8BF9: 0x6ADB, 2381 0x8BFA: 0x91E7, 2382 0x8BFB: 0x5C51, 2383 0x8BFC: 0x5C48, 2384 0x8C40: 0x6398, 2385 0x8C41: 0x7A9F, 2386 0x8C42: 0x6C93, 2387 0x8C43: 0x9774, 2388 0x8C44: 0x8F61, 2389 0x8C45: 0x7AAA, 2390 0x8C46: 0x718A, 2391 0x8C47: 0x9688, 2392 0x8C48: 0x7C82, 2393 0x8C49: 0x6817, 2394 0x8C4A: 0x7E70, 2395 0x8C4B: 0x6851, 2396 0x8C4C: 0x936C, 2397 0x8C4D: 0x52F2, 2398 0x8C4E: 0x541B, 2399 0x8C4F: 0x85AB, 2400 0x8C50: 0x8A13, 2401 0x8C51: 0x7FA4, 2402 0x8C52: 0x8ECD, 2403 0x8C53: 0x90E1, 2404 0x8C54: 0x5366, 2405 0x8C55: 0x8888, 2406 0x8C56: 0x7941, 2407 0x8C57: 0x4FC2, 2408 0x8C58: 0x50BE, 2409 0x8C59: 0x5211, 2410 0x8C5A: 0x5144, 2411 0x8C5B: 0x5553, 2412 0x8C5C: 0x572D, 2413 0x8C5D: 0x73EA, 2414 0x8C5E: 0x578B, 2415 0x8C5F: 0x5951, 2416 0x8C60: 0x5F62, 2417 0x8C61: 0x5F84, 2418 0x8C62: 0x6075, 2419 0x8C63: 0x6176, 2420 0x8C64: 0x6167, 2421 0x8C65: 0x61A9, 2422 0x8C66: 0x63B2, 2423 0x8C67: 0x643A, 2424 0x8C68: 0x656C, 2425 0x8C69: 0x666F, 2426 0x8C6A: 0x6842, 2427 0x8C6B: 0x6E13, 2428 0x8C6C: 0x7566, 2429 0x8C6D: 0x7A3D, 2430 0x8C6E: 0x7CFB, 2431 0x8C6F: 0x7D4C, 2432 0x8C70: 0x7D99, 2433 0x8C71: 0x7E4B, 2434 0x8C72: 0x7F6B, 2435 0x8C73: 0x830E, 2436 0x8C74: 0x834A, 2437 0x8C75: 0x86CD, 2438 0x8C76: 0x8A08, 2439 0x8C77: 0x8A63, 2440 0x8C78: 0x8B66, 2441 0x8C79: 0x8EFD, 2442 0x8C7A: 0x981A, 2443 0x8C7B: 0x9D8F, 2444 0x8C7C: 0x82B8, 2445 0x8C7D: 0x8FCE, 2446 0x8C7E: 0x9BE8, 2447 0x8C80: 0x5287, 2448 0x8C81: 0x621F, 2449 0x8C82: 0x6483, 2450 0x8C83: 0x6FC0, 2451 0x8C84: 0x9699, 2452 0x8C85: 0x6841, 2453 0x8C86: 0x5091, 2454 0x8C87: 0x6B20, 2455 0x8C88: 0x6C7A, 2456 0x8C89: 0x6F54, 2457 0x8C8A: 0x7A74, 2458 0x8C8B: 0x7D50, 2459 0x8C8C: 0x8840, 2460 0x8C8D: 0x8A23, 2461 0x8C8E: 0x6708, 2462 0x8C8F: 0x4EF6, 2463 0x8C90: 0x5039, 2464 0x8C91: 0x5026, 2465 0x8C92: 0x5065, 2466 0x8C93: 0x517C, 2467 0x8C94: 0x5238, 2468 0x8C95: 0x5263, 2469 0x8C96: 0x55A7, 2470 0x8C97: 0x570F, 2471 0x8C98: 0x5805, 2472 0x8C99: 0x5ACC, 2473 0x8C9A: 0x5EFA, 2474 0x8C9B: 0x61B2, 2475 0x8C9C: 0x61F8, 2476 0x8C9D: 0x62F3, 2477 0x8C9E: 0x6372, 2478 0x8C9F: 0x691C, 2479 0x8CA0: 0x6A29, 2480 0x8CA1: 0x727D, 2481 0x8CA2: 0x72AC, 2482 0x8CA3: 0x732E, 2483 0x8CA4: 0x7814, 2484 0x8CA5: 0x786F, 2485 0x8CA6: 0x7D79, 2486 0x8CA7: 0x770C, 2487 0x8CA8: 0x80A9, 2488 0x8CA9: 0x898B, 2489 0x8CAA: 0x8B19, 2490 0x8CAB: 0x8CE2, 2491 0x8CAC: 0x8ED2, 2492 0x8CAD: 0x9063, 2493 0x8CAE: 0x9375, 2494 0x8CAF: 0x967A, 2495 0x8CB0: 0x9855, 2496 0x8CB1: 0x9A13, 2497 0x8CB2: 0x9E78, 2498 0x8CB3: 0x5143, 2499 0x8CB4: 0x539F, 2500 0x8CB5: 0x53B3, 2501 0x8CB6: 0x5E7B, 2502 0x8CB7: 0x5F26, 2503 0x8CB8: 0x6E1B, 2504 0x8CB9: 0x6E90, 2505 0x8CBA: 0x7384, 2506 0x8CBB: 0x73FE, 2507 0x8CBC: 0x7D43, 2508 0x8CBD: 0x8237, 2509 0x8CBE: 0x8A00, 2510 0x8CBF: 0x8AFA, 2511 0x8CC0: 0x9650, 2512 0x8CC1: 0x4E4E, 2513 0x8CC2: 0x500B, 2514 0x8CC3: 0x53E4, 2515 0x8CC4: 0x547C, 2516 0x8CC5: 0x56FA, 2517 0x8CC6: 0x59D1, 2518 0x8CC7: 0x5B64, 2519 0x8CC8: 0x5DF1, 2520 0x8CC9: 0x5EAB, 2521 0x8CCA: 0x5F27, 2522 0x8CCB: 0x6238, 2523 0x8CCC: 0x6545, 2524 0x8CCD: 0x67AF, 2525 0x8CCE: 0x6E56, 2526 0x8CCF: 0x72D0, 2527 0x8CD0: 0x7CCA, 2528 0x8CD1: 0x88B4, 2529 0x8CD2: 0x80A1, 2530 0x8CD3: 0x80E1, 2531 0x8CD4: 0x83F0, 2532 0x8CD5: 0x864E, 2533 0x8CD6: 0x8A87, 2534 0x8CD7: 0x8DE8, 2535 0x8CD8: 0x9237, 2536 0x8CD9: 0x96C7, 2537 0x8CDA: 0x9867, 2538 0x8CDB: 0x9F13, 2539 0x8CDC: 0x4E94, 2540 0x8CDD: 0x4E92, 2541 0x8CDE: 0x4F0D, 2542 0x8CDF: 0x5348, 2543 0x8CE0: 0x5449, 2544 0x8CE1: 0x543E, 2545 0x8CE2: 0x5A2F, 2546 0x8CE3: 0x5F8C, 2547 0x8CE4: 0x5FA1, 2548 0x8CE5: 0x609F, 2549 0x8CE6: 0x68A7, 2550 0x8CE7: 0x6A8E, 2551 0x8CE8: 0x745A, 2552 0x8CE9: 0x7881, 2553 0x8CEA: 0x8A9E, 2554 0x8CEB: 0x8AA4, 2555 0x8CEC: 0x8B77, 2556 0x8CED: 0x9190, 2557 0x8CEE: 0x4E5E, 2558 0x8CEF: 0x9BC9, 2559 0x8CF0: 0x4EA4, 2560 0x8CF1: 0x4F7C, 2561 0x8CF2: 0x4FAF, 2562 0x8CF3: 0x5019, 2563 0x8CF4: 0x5016, 2564 0x8CF5: 0x5149, 2565 0x8CF6: 0x516C, 2566 0x8CF7: 0x529F, 2567 0x8CF8: 0x52B9, 2568 0x8CF9: 0x52FE, 2569 0x8CFA: 0x539A, 2570 0x8CFB: 0x53E3, 2571 0x8CFC: 0x5411, 2572 0x8D40: 0x540E, 2573 0x8D41: 0x5589, 2574 0x8D42: 0x5751, 2575 0x8D43: 0x57A2, 2576 0x8D44: 0x597D, 2577 0x8D45: 0x5B54, 2578 0x8D46: 0x5B5D, 2579 0x8D47: 0x5B8F, 2580 0x8D48: 0x5DE5, 2581 0x8D49: 0x5DE7, 2582 0x8D4A: 0x5DF7, 2583 0x8D4B: 0x5E78, 2584 0x8D4C: 0x5E83, 2585 0x8D4D: 0x5E9A, 2586 0x8D4E: 0x5EB7, 2587 0x8D4F: 0x5F18, 2588 0x8D50: 0x6052, 2589 0x8D51: 0x614C, 2590 0x8D52: 0x6297, 2591 0x8D53: 0x62D8, 2592 0x8D54: 0x63A7,
2593 0x8D55: 0x653B, 2594 0x8D56: 0x6602, 2595 0x8D57: 0x6643, 2596 0x8D58: 0x66F4, 2597 0x8D59: 0x676D, 2598 0x8D5A: 0x6821, 2599 0x8D5B: 0x6897, 2600 0x8D5C: 0x69CB, 2601 0x8D5D: 0x6C5F, 2602 0x8D5E: 0x6D2A, 2603 0x8D5F: 0x6D69, 2604 0x8D60: 0x6E2F, 2605 0x8D61: 0x6E9D, 2606 0x8D62: 0x7532, 2607 0x8D63: 0x7687, 2608 0x8D64: 0x786C, 2609 0x8D65: 0x7A3F, 2610 0x8D66: 0x7CE0, 2611 0x8D67: 0x7D05, 2612 0x8D68: 0x7D18, 2613 0x8D69: 0x7D5E, 2614 0x8D6A: 0x7DB1, 2615 0x8D6B: 0x8015, 2616 0x8D6C: 0x8003, 2617 0x8D6D: 0x80AF, 2618 0x8D6E: 0x80B1, 2619 0x8D6F: 0x8154, 2620 0x8D70: 0x818F, 2621 0x8D71: 0x822A, 2622 0x8D72: 0x8352, 2623 0x8D73: 0x884C, 2624 0x8D74: 0x8861, 2625 0x8D75: 0x8B1B, 2626 0x8D76: 0x8CA2, 2627 0x8D77: 0x8CFC, 2628 0x8D78: 0x90CA, 2629 0x8D79: 0x9175, 2630 0x8D7A: 0x9271, 2631 0x8D7B: 0x783F, 2632 0x8D7C: 0x92FC, 2633 0x8D7D: 0x95A4, 2634 0x8D7E: 0x964D, 2635 0x8D80: 0x9805, 2636 0x8D81: 0x9999, 2637 0x8D82: 0x9AD8, 2638 0x8D83: 0x9D3B, 2639 0x8D84: 0x525B, 2640 0x8D85: 0x52AB, 2641 0x8D86: 0x53F7, 2642 0x8D87: 0x5408, 2643 0x8D88: 0x58D5, 2644 0x8D89: 0x62F7, 2645 0x8D8A: 0x6FE0, 2646 0x8D8B: 0x8C6A, 2647 0x8D8C: 0x8F5F, 2648 0x8D8D: 0x9EB9, 2649 0x8D8E: 0x514B, 2650 0x8D8F: 0x523B, 2651 0x8D90: 0x544A, 2652 0x8D91: 0x56FD, 2653 0x8D92: 0x7A40, 2654 0x8D93: 0x9177, 2655 0x8D94: 0x9D60, 2656 0x8D95: 0x9ED2, 2657 0x8D96: 0x7344, 2658 0x8D97: 0x6F09, 2659 0x8D98: 0x8170, 2660 0x8D99: 0x7511, 2661 0x8D9A: 0x5FFD, 2662 0x8D9B: 0x60DA, 2663 0x8D9C: 0x9AA8, 2664 0x8D9D: 0x72DB, 2665 0x8D9E: 0x8FBC, 2666 0x8D9F: 0x6B64, 2667 0x8DA0: 0x9803, 2668 0x8DA1: 0x4ECA, 2669 0x8DA2: 0x56F0, 2670 0x8DA3: 0x5764, 2671 0x8DA4: 0x58BE, 2672 0x8DA5: 0x5A5A, 2673 0x8DA6: 0x6068, 2674 0x8DA7: 0x61C7, 2675 0x8DA8: 0x660F, 2676 0x8DA9: 0x6606, 2677 0x8DAA: 0x6839, 2678 0x8DAB: 0x68B1, 2679 0x8DAC: 0x6DF7, 2680 0x8DAD: 0x75D5, 2681 0x8DAE: 0x7D3A, 2682 0x8DAF: 0x826E, 2683 0x8DB0: 0x9B42, 2684 0x8DB1: 0x4E9B, 2685 0x8DB2: 0x4F50, 2686 0x8DB3: 0x53C9, 2687 0x8DB4: 0x5506, 2688 0x8DB5: 0x5D6F, 2689 0x8DB6: 0x5DE6, 2690 0x8DB7: 0x5DEE, 2691 0x8DB8: 0x67FB, 2692 0x8DB9: 0x6C99, 2693 0x8DBA: 0x7473, 2694 0x8DBB: 0x7802, 2695 0x8DBC: 0x8A50, 2696 0x8DBD: 0x9396, 2697 0x8DBE: 0x88DF, 2698 0x8DBF: 0x5750, 2699 0x8DC0: 0x5EA7, 2700 0x8DC1: 0x632B, 2701 0x8DC2: 0x50B5, 2702 0x8DC3: 0x50AC, 2703 0x8DC4: 0x518D, 2704 0x8DC5: 0x6700, 2705 0x8DC6: 0x54C9, 2706 0x8DC7: 0x585E, 2707 0x8DC8: 0x59BB, 2708 0x8DC9: 0x5BB0, 2709 0x8DCA: 0x5F69, 2710 0x8DCB: 0x624D, 2711 0x8DCC: 0x63A1, 2712 0x8DCD: 0x683D, 2713 0x8DCE: 0x6B73, 2714 0x8DCF: 0x6E08, 2715 0x8DD0: 0x707D, 2716 0x8DD1: 0x91C7, 2717 0x8DD2: 0x7280, 2718 0x8DD3: 0x7815, 2719 0x8DD4: 0x7826, 2720 0x8DD5: 0x796D, 2721 0x8DD6: 0x658E, 2722 0x8DD7: 0x7D30, 2723 0x8DD8: 0x83DC, 2724 0x8DD9: 0x88C1, 2725 0x8DDA: 0x8F09, 2726 0x8DDB: 0x969B, 2727 0x8DDC: 0x5264, 2728 0x8DDD: 0x5728, 2729 0x8DDE: 0x6750, 2730 0x8DDF: 0x7F6A, 2731 0x8DE0: 0x8CA1, 2732 0x8DE1: 0x51B4, 2733 0x8DE2: 0x5742, 2734 0x8DE3: 0x962A, 2735 0x8DE4: 0x583A, 2736 0x8DE5: 0x698A, 2737 0x8DE6: 0x80B4, 2738 0x8DE7: 0x54B2, 2739 0x8DE8: 0x5D0E, 2740 0x8DE9: 0x57FC, 2741 0x8DEA: 0x7895, 2742 0x8DEB: 0x9DFA, 2743 0x8DEC: 0x4F5C, 2744 0x8DED: 0x524A, 2745 0x8DEE: 0x548B, 2746 0x8DEF: 0x643E, 2747 0x8DF0: 0x6628, 2748 0x8DF1: 0x6714, 2749 0x8DF2: 0x67F5, 2750 0x8DF3: 0x7A84, 2751 0x8DF4: 0x7B56, 2752 0x8DF5: 0x7D22, 2753 0x8DF6: 0x932F, 2754 0x8DF7: 0x685C, 2755 0x8DF8: 0x9BAD, 2756 0x8DF9: 0x7B39, 2757 0x8DFA: 0x5319, 2758 0x8DFB: 0x518A, 2759 0x8DFC: 0x5237, 2760 0x8E40: 0x5BDF, 2761 0x8E41: 0x62F6, 2762 0x8E42: 0x64AE, 2763 0x8E43: 0x64E6, 2764 0x8E44: 0x672D, 2765 0x8E45: 0x6BBA, 2766 0x8E46: 0x85A9, 2767 0x8E47: 0x96D1, 2768 0x8E48: 0x7690, 2769 0x8E49: 0x9BD6, 2770 0x8E4A: 0x634C, 2771 0x8E4B: 0x9306, 2772 0x8E4C: 0x9BAB, 2773 0x8E4D: 0x76BF, 2774 0x8E4E: 0x6652, 2775 0x8E4F: 0x4E09, 2776 0x8E50: 0x5098, 2777 0x8E51: 0x53C2, 2778 0x8E52: 0x5C71, 2779 0x8E53: 0x60E8, 2780 0x8E54: 0x6492, 2781 0x8E55: 0x6563, 2782 0x8E56: 0x685F, 2783 0x8E57: 0x71E6, 2784 0x8E58: 0x73CA, 2785 0x8E59: 0x7523, 2786 0x8E5A: 0x7B97, 2787 0x8E5B: 0x7E82, 2788 0x8E5C: 0x8695, 2789 0x8E5D: 0x8B83, 2790 0x8E5E: 0x8CDB, 2791 0x8E5F: 0x9178, 2792 0x8E60: 0x9910, 2793 0x8E61: 0x65AC, 2794 0x8E62: 0x66AB, 2795 0x8E63: 0x6B8B, 2796 0x8E64: 0x4ED5, 2797 0x8E65: 0x4ED4, 2798 0x8E66: 0x4F3A, 2799 0x8E67: 0x4F7F, 2800 0x8E68: 0x523A, 2801 0x8E69: 0x53F8, 2802 0x8E6A: 0x53F2, 2803 0x8E6B: 0x55E3, 2804 0x8E6C: 0x56DB, 2805 0x8E6D: 0x58EB, 2806 0x8E6E: 0x59CB, 2807 0x8E6F: 0x59C9, 2808 0x8E70: 0x59FF, 2809 0x8E71: 0x5B50, 2810 0x8E72: 0x5C4D, 2811 0x8E73: 0x5E02, 2812 0x8E74: 0x5E2B, 2813 0x8E75: 0x5FD7, 2814 0x8E76: 0x601D, 2815 0x8E77: 0x6307, 2816 0x8E78: 0x652F,
2817 0x8E79: 0x5B5C, 2818 0x8E7A: 0x65AF, 2819 0x8E7B: 0x65BD, 2820 0x8E7C: 0x65E8, 2821 0x8E7D: 0x679D, 2822 0x8E7E: 0x6B62, 2823 0x8E80: 0x6B7B, 2824 0x8E81: 0x6C0F, 2825 0x8E82: 0x7345, 2826 0x8E83: 0x7949, 2827 0x8E84: 0x79C1, 2828 0x8E85: 0x7CF8, 2829 0x8E86: 0x7D19, 2830 0x8E87: 0x7D2B, 2831 0x8E88: 0x80A2, 2832 0x8E89: 0x8102, 2833 0x8E8A: 0x81F3, 2834 0x8E8B: 0x8996, 2835 0x8E8C: 0x8A5E, 2836 0x8E8D: 0x8A69, 2837 0x8E8E: 0x8A66, 2838 0x8E8F: 0x8A8C, 2839 0x8E90: 0x8AEE, 2840 0x8E91: 0x8CC7, 2841 0x8E92: 0x8CDC, 2842 0x8E93: 0x96CC, 2843 0x8E94: 0x98FC, 2844 0x8E95: 0x6B6F, 2845 0x8E96: 0x4E8B, 2846 0x8E97: 0x4F3C, 2847 0x8E98: 0x4F8D, 2848 0x8E99: 0x5150, 2849 0x8E9A: 0x5B57, 2850 0x8E9B: 0x5BFA, 2851 0x8E9C: 0x6148, 2852 0x8E9D: 0x6301, 2853 0x8E9E: 0x6642, 2854 0x8E9F: 0x6B21, 2855 0x8EA0: 0x6ECB, 2856 0x8EA1: 0x6CBB, 2857 0x8EA2: 0x723E, 2858 0x8EA3: 0x74BD, 2859 0x8EA4: 0x75D4, 2860 0x8EA5: 0x78C1, 2861 0x8EA6: 0x793A, 2862 0x8EA7: 0x800C, 2863 0x8EA8: 0x8033, 2864 0x8EA9: 0x81EA, 2865 0x8EAA: 0x8494, 2866 0x8EAB: 0x8F9E, 2867 0x8EAC: 0x6C50, 2868 0x8EAD: 0x9E7F, 2869 0x8EAE: 0x5F0F, 2870 0x8EAF: 0x8B58, 2871 0x8EB0: 0x9D2B, 2872 0x8EB1: 0x7AFA, 2873 0x8EB2: 0x8EF8, 2874 0x8EB3: 0x5B8D, 2875 0x8EB4: 0x96EB, 2876 0x8EB5: 0x4E03, 2877 0x8EB6: 0x53F1, 2878 0x8EB7: 0x57F7, 2879 0x8EB8: 0x5931, 2880 0x8EB9: 0x5AC9, 2881 0x8EBA: 0x5BA4, 2882 0x8EBB: 0x6089, 2883 0x8EBC: 0x6E7F, 2884 0x8EBD: 0x6F06, 2885 0x8EBE: 0x75BE, 2886 0x8EBF: 0x8CEA, 2887 0x8EC0: 0x5B9F, 2888 0x8EC1: 0x8500, 2889 0x8EC2: 0x7BE0, 2890 0x8EC3: 0x5072, 2891 0x8EC4: 0x67F4, 2892 0x8EC5: 0x829D, 2893 0x8EC6: 0x5C61, 2894 0x8EC7: 0x854A, 2895 0x8EC8: 0x7E1E, 2896 0x8EC9: 0x820E, 2897 0x8ECA: 0x5199, 2898 0x8ECB: 0x5C04, 2899 0x8ECC: 0x6368, 2900 0x8ECD: 0x8D66, 2901 0x8ECE: 0x659C, 2902 0x8ECF: 0x716E, 2903 0x8ED0: 0x793E, 2904 0x8ED1: 0x7D17, 2905 0x8ED2: 0x8005, 2906 0x8ED3: 0x8B1D, 2907 0x8ED4: 0x8ECA, 2908 0x8ED5: 0x906E, 2909 0x8ED6: 0x86C7, 2910 0x8ED7: 0x90AA, 2911 0x8ED8: 0x501F, 2912 0x8ED9: 0x52FA, 2913 0x8EDA: 0x5C3A, 2914 0x8EDB: 0x6753, 2915 0x8EDC: 0x707C, 2916 0x8EDD: 0x7235, 2917 0x8EDE: 0x914C, 2918 0x8EDF: 0x91C8, 2919 0x8EE0: 0x932B, 2920 0x8EE1: 0x82E5, 2921 0x8EE2: 0x5BC2, 2922 0x8EE3: 0x5F31, 2923 0x8EE4: 0x60F9, 2924 0x8EE5: 0x4E3B, 2925 0x8EE6: 0x53D6, 2926 0x8EE7: 0x5B88, 2927 0x8EE8: 0x624B, 2928 0x8EE9: 0x6731, 2929 0x8EEA: 0x6B8A, 2930 0x8EEB: 0x72E9, 2931 0x8EEC: 0x73E0, 2932 0x8EED: 0x7A2E, 2933 0x8EEE: 0x816B, 2934 0x8EEF: 0x8DA3, 2935 0x8EF0: 0x9152, 2936 0x8EF1: 0x9996, 2937 0x8EF2: 0x5112, 2938 0x8EF3: 0x53D7, 2939 0x8EF4: 0x546A, 2940 0x8EF5: 0x5BFF, 2941 0x8EF6: 0x6388,
2942 0x8EF7: 0x6A39, 2943 0x8EF8: 0x7DAC, 2944 0x8EF9: 0x9700, 2945 0x8EFA: 0x56DA, 2946 0x8EFB: 0x53CE, 2947 0x8EFC: 0x5468, 2948 0x8F40: 0x5B97, 2949 0x8F41: 0x5C31, 2950 0x8F42: 0x5DDE, 2951 0x8F43: 0x4FEE, 2952 0x8F44: 0x6101, 2953 0x8F45: 0x62FE, 2954 0x8F46: 0x6D32, 2955 0x8F47: 0x79C0, 2956 0x8F48: 0x79CB, 2957 0x8F49: 0x7D42, 2958 0x8F4A: 0x7E4D, 2959 0x8F4B: 0x7FD2, 2960 0x8F4C: 0x81ED, 2961 0x8F4D: 0x821F, 2962 0x8F4E: 0x8490, 2963 0x8F4F: 0x8846, 2964 0x8F50: 0x8972, 2965 0x8F51: 0x8B90, 2966 0x8F52: 0x8E74, 2967 0x8F53: 0x8F2F, 2968 0x8F54: 0x9031, 2969 0x8F55: 0x914B, 2970 0x8F56: 0x916C, 2971 0x8F57: 0x96C6, 2972 0x8F58: 0x919C, 2973 0x8F59: 0x4EC0, 2974 0x8F5A: 0x4F4F, 2975 0x8F5B: 0x5145, 2976 0x8F5C: 0x5341, 2977 0x8F5D: 0x5F93, 2978 0x8F5E: 0x620E, 2979 0x8F5F: 0x67D4, 2980 0x8F60: 0x6C41, 2981 0x8F61: 0x6E0B, 2982 0x8F62: 0x7363, 2983 0x8F63: 0x7E26, 2984 0x8F64: 0x91CD, 2985 0x8F65: 0x9283, 2986 0x8F66: 0x53D4, 2987 0x8F67: 0x5919, 2988 0x8F68: 0x5BBF, 2989 0x8F69: 0x6DD1, 2990 0x8F6A: 0x795D, 2991 0x8F6B: 0x7E2E, 2992 0x8F6C: 0x7C9B, 2993 0x8F6D: 0x587E, 2994 0x8F6E: 0x719F, 2995 0x8F6F: 0x51FA, 2996 0x8F70: 0x8853, 2997 0x8F71: 0x8FF0, 2998 0x8F72: 0x4FCA, 2999 0x8F73: 0x5CFB, 3000 0x8F74: 0x6625, 3001 0x8F75: 0x77AC, 3002 0x8F76: 0x7AE3, 3003 0x8F77: 0x821C, 3004 0x8F78: 0x99FF, 3005 0x8F79: 0x51C6, 3006 0x8F7A: 0x5FAA, 3007 0x8F7B: 0x65EC, 3008 0x8F7C: 0x696F, 3009 0x8F7D: 0x6B89, 3010 0x8F7E: 0x6DF3, 3011 0x8F80: 0x6E96, 3012 0x8F81: 0x6F64, 3013 0x8F82: 0x76FE, 3014 0x8F83: 0x7D14, 3015 0x8F84: 0x5DE1, 3016 0x8F85: 0x9075, 3017 0x8F86: 0x9187, 3018 0x8F87: 0x9806, 3019 0x8F88: 0x51E6, 3020 0x8F89: 0x521D, 3021 0x8F8A: 0x6240, 3022 0x8F8B: 0x6691, 3023 0x8F8C: 0x66D9, 3024 0x8F8D: 0x6E1A, 3025 0x8F8E: 0x5EB6, 3026 0x8F8F: 0x7DD2, 3027 0x8F90: 0x7F72, 3028 0x8F91: 0x66F8, 3029 0x8F92: 0x85AF, 3030 0x8F93: 0x85F7, 3031 0x8F94: 0x8AF8, 3032 0x8F95: 0x52A9, 3033 0x8F96: 0x53D9, 3034 0x8F97: 0x5973, 3035 0x8F98: 0x5E8F, 3036 0x8F99: 0x5F90, 3037 0x8F9A: 0x6055, 3038 0x8F9B: 0x92E4, 3039 0x8F9C: 0x9664, 3040 0x8F9D: 0x50B7, 3041 0x8F9E: 0x511F, 3042 0x8F9F: 0x52DD, 3043 0x8FA0: 0x5320, 3044 0x8FA1: 0x5347, 3045 0x8FA2: 0x53EC, 3046 0x8FA3: 0x54E8, 3047 0x8FA4: 0x5546, 3048 0x8FA5: 0x5531, 3049 0x8FA6: 0x5617, 3050 0x8FA7: 0x5968, 3051 0x8FA8: 0x59BE, 3052 0x8FA9: 0x5A3C, 3053 0x8FAA: 0x5BB5, 3054 0x8FAB: 0x5C06, 3055 0x8FAC: 0x5C0F, 3056 0x8FAD: 0x5C11, 3057 0x8FAE: 0x5C1A, 3058 0x8FAF: 0x5E84, 3059 0x8FB0: 0x5E8A, 3060 0x8FB1: 0x5EE0, 3061 0x8FB2: 0x5F70, 3062 0x8FB3: 0x627F, 3063 0x8FB4: 0x6284, 3064 0x8FB5: 0x62DB, 3065 0x8FB6: 0x638C,
3066 0x8FB7: 0x6377, 3067 0x8FB8: 0x6607, 3068 0x8FB9: 0x660C, 3069 0x8FBA: 0x662D, 3070 0x8FBB: 0x6676, 3071 0x8FBC: 0x677E, 3072 0x8FBD: 0x68A2, 3073 0x8FBE: 0x6A1F, 3074 0x8FBF: 0x6A35, 3075 0x8FC0: 0x6CBC, 3076 0x8FC1: 0x6D88, 3077 0x8FC2: 0x6E09, 3078 0x8FC3: 0x6E58, 3079 0x8FC4: 0x713C, 3080 0x8FC5: 0x7126, 3081 0x8FC6: 0x7167, 3082 0x8FC7: 0x75C7, 3083 0x8FC8: 0x7701, 3084 0x8FC9: 0x785D, 3085 0x8FCA: 0x7901, 3086 0x8FCB: 0x7965, 3087 0x8FCC: 0x79F0, 3088 0x8FCD: 0x7AE0, 3089 0x8FCE: 0x7B11, 3090 0x8FCF: 0x7CA7, 3091 0x8FD0: 0x7D39, 3092 0x8FD1: 0x8096, 3093 0x8FD2: 0x83D6, 3094 0x8FD3: 0x848B, 3095 0x8FD4: 0x8549, 3096 0x8FD5: 0x885D, 3097 0x8FD6: 0x88F3, 3098 0x8FD7: 0x8A1F, 3099 0x8FD8: 0x8A3C, 3100 0x8FD9: 0x8A54, 3101 0x8FDA: 0x8A73, 3102 0x8FDB: 0x8C61, 3103 0x8FDC: 0x8CDE, 3104 0x8FDD: 0x91A4, 3105 0x8FDE: 0x9266, 3106 0x8FDF: 0x937E, 3107 0x8FE0: 0x9418, 3108 0x8FE1: 0x969C, 3109 0x8FE2: 0x9798, 3110 0x8FE3: 0x4E0A, 3111 0x8FE4: 0x4E08, 3112 0x8FE5: 0x4E1E, 3113 0x8FE6: 0x4E57, 3114 0x8FE7: 0x5197, 3115 0x8FE8: 0x5270, 3116 0x8FE9: 0x57CE, 3117 0x8FEA: 0x5834, 3118 0x8FEB: 0x58CC, 3119 0x8FEC: 0x5B22, 3120 0x8FED: 0x5E38, 3121 0x8FEE: 0x60C5, 3122 0x8FEF: 0x64FE, 3123 0x8FF0: 0x6761, 3124 0x8FF1: 0x6756, 3125 0x8FF2: 0x6D44, 3126 0x8FF3: 0x72B6, 3127 0x8FF4: 0x7573, 3128 0x8FF5: 0x7A63, 3129 0x8FF6: 0x84B8, 3130 0x8FF7: 0x8B72, 3131 0x8FF8: 0x91B8, 3132 0x8FF9: 0x9320, 3133 0x8FFA: 0x5631, 3134 0x8FFB: 0x57F4, 3135 0x8FFC: 0x98FE, 3136 0x9040: 0x62ED, 3137 0x9041: 0x690D, 3138 0x9042: 0x6B96, 3139 0x9043: 0x71ED, 3140 0x9044: 0x7E54, 3141 0x9045: 0x8077, 3142 0x9046: 0x8272, 3143 0x9047: 0x89E6, 3144 0x9048: 0x98DF, 3145 0x9049: 0x8755, 3146 0x904A: 0x8FB1, 3147 0x904B: 0x5C3B, 3148 0x904C: 0x4F38, 3149 0x904D: 0x4FE1, 3150 0x904E: 0x4FB5, 3151 0x904F: 0x5507, 3152 0x9050: 0x5A20, 3153 0x9051: 0x5BDD, 3154 0x9052: 0x5BE9, 3155 0x9053: 0x5FC3, 3156 0x9054: 0x614E, 3157 0x9055: 0x632F, 3158 0x9056: 0x65B0, 3159 0x9057: 0x664B, 3160 0x9058: 0x68EE, 3161 0x9059: 0x699B, 3162 0x905A: 0x6D78, 3163 0x905B: 0x6DF1, 3164 0x905C: 0x7533, 3165 0x905D: 0x75B9, 3166 0x905E: 0x771F, 3167 0x905F: 0x795E, 3168 0x9060: 0x79E6, 3169 0x9061: 0x7D33, 3170 0x9062: 0x81E3, 3171 0x9063: 0x82AF, 3172 0x9064: 0x85AA, 3173 0x9065: 0x89AA, 3174 0x9066: 0x8A3A, 3175 0x9067: 0x8EAB, 3176 0x9068: 0x8F9B, 3177 0x9069: 0x9032, 3178 0x906A: 0x91DD, 3179 0x906B: 0x9707, 3180 0x906C: 0x4EBA, 3181 0x906D: 0x4EC1, 3182 0x906E: 0x5203, 3183 0x906F: 0x5875, 3184 0x9070: 0x58EC, 3185 0x9071: 0x5C0B, 3186 0x9072: 0x751A, 3187 0x9073: 0x5C3D, 3188 0x9074: 0x814E, 3189 0x9075: 0x8A0A, 3190 0x9076: 0x8FC5, 3191 0x9077: 0x9663, 3192 0x9078: 0x976D, 3193 0x9079: 0x7B25, 3194 0x907A: 0x8ACF, 3195 0x907B: 0x9808, 3196 0x907C: 0x9162, 3197 0x907D: 0x56F3, 3198 0x907E: 0x53A8, 3199 0x9080: 0x9017, 3200 0x9081: 0x5439, 3201 0x9082: 0x5782, 3202 0x9083: 0x5E25, 3203 0x9084: 0x63A8, 3204 0x9085: 0x6C34, 3205 0x9086: 0x708A, 3206 0x9087: 0x7761, 3207 0x9088: 0x7C8B, 3208 0x9089: 0x7FE0, 3209 0x908A: 0x8870, 3210 0x908B: 0x9042, 3211 0x908C: 0x9154, 3212 0x908D: 0x9310, 3213 0x908E: 0x9318, 3214 0x908F: 0x968F, 3215 0x9090: 0x745E, 3216 0x9091: 0x9AC4, 3217 0x9092: 0x5D07, 3218 0x9093: 0x5D69, 3219 0x9094: 0x6570, 3220 0x9095: 0x67A2, 3221 0x9096: 0x8DA8, 3222 0x9097: 0x96DB, 3223 0x9098: 0x636E, 3224 0x9099: 0x6749, 3225 0x909A: 0x6919, 3226 0x909B: 0x83C5, 3227 0x909C: 0x9817, 3228 0x909D: 0x96C0, 3229 0x909E: 0x88FE, 3230 0x909F: 0x6F84, 3231 0x90A0: 0x647A, 3232 0x90A1: 0x5BF8, 3233 0x90A2: 0x4E16, 3234 0x90A3: 0x702C, 3235 0x90A4: 0x755D, 3236 0x90A5: 0x662F, 3237 0x90A6: 0x51C4, 3238 0x90A7: 0x5236, 3239 0x90A8: 0x52E2, 3240 0x90A9: 0x59D3, 3241 0x90AA: 0x5F81, 3242 0x90AB: 0x6027,
3243 0x90AC: 0x6210, 3244 0x90AD: 0x653F, 3245 0x90AE: 0x6574, 3246 0x90AF: 0x661F, 3247 0x90B0: 0x6674, 3248 0x90B1: 0x68F2, 3249 0x90B2: 0x6816, 3250 0x90B3: 0x6B63, 3251 0x90B4: 0x6E05, 3252 0x90B5: 0x7272, 3253 0x90B6: 0x751F, 3254 0x90B7: 0x76DB, 3255 0x90B8: 0x7CBE, 3256 0x90B9: 0x8056, 3257 0x90BA: 0x58F0, 3258 0x90BB: 0x88FD, 3259 0x90BC: 0x897F, 3260 0x90BD: 0x8AA0, 3261 0x90BE: 0x8A93, 3262 0x90BF: 0x8ACB, 3263 0x90C0: 0x901D, 3264 0x90C1: 0x9192, 3265 0x90C2: 0x9752, 3266 0x90C3: 0x9759, 3267 0x90C4: 0x6589, 3268 0x90C5: 0x7A0E, 3269 0x90C6: 0x8106, 3270 0x90C7: 0x96BB, 3271 0x90C8: 0x5E2D, 3272 0x90C9: 0x60DC, 3273 0x90CA: 0x621A, 3274 0x90CB: 0x65A5, 3275 0x90CC: 0x6614, 3276 0x90CD: 0x6790, 3277 0x90CE: 0x77F3, 3278 0x90CF: 0x7A4D, 3279 0x90D0: 0x7C4D, 3280 0x90D1: 0x7E3E, 3281 0x90D2: 0x810A, 3282 0x90D3: 0x8CAC, 3283 0x90D4: 0x8D64, 3284 0x90D5: 0x8DE1, 3285 0x90D6: 0x8E5F, 3286 0x90D7: 0x78A9, 3287 0x90D8: 0x5207, 3288 0x90D9: 0x62D9, 3289 0x90DA: 0x63A5, 3290 0x90DB: 0x6442, 3291 0x90DC: 0x6298, 3292 0x90DD: 0x8A2D, 3293 0x90DE: 0x7A83, 3294 0x90DF: 0x7BC0, 3295 0x90E0: 0x8AAC, 3296 0x90E1: 0x96EA, 3297 0x90E2: 0x7D76, 3298 0x90E3: 0x820C, 3299 0x90E4: 0x8749, 3300 0x90E5: 0x4ED9, 3301 0x90E6: 0x5148, 3302 0x90E7: 0x5343, 3303 0x90E8: 0x5360, 3304 0x90E9: 0x5BA3, 3305 0x90EA: 0x5C02, 3306 0x90EB: 0x5C16, 3307 0x90EC: 0x5DDD, 3308 0x90ED: 0x6226, 3309 0x90EE: 0x6247, 3310 0x90EF: 0x64B0, 3311 0x90F0: 0x6813, 3312 0x90F1: 0x6834, 3313 0x90F2: 0x6CC9, 3314 0x90F3: 0x6D45, 3315 0x90F4: 0x6D17, 3316 0x90F5: 0x67D3, 3317 0x90F6: 0x6F5C, 3318 0x90F7: 0x714E, 3319 0x90F8: 0x717D, 3320 0x90F9: 0x65CB, 3321 0x90FA: 0x7A7F, 3322 0x90FB: 0x7BAD, 3323 0x90FC: 0x7DDA, 3324 0x9140: 0x7E4A, 3325 0x9141: 0x7FA8, 3326 0x9142: 0x817A, 3327 0x9143: 0x821B, 3328 0x9144: 0x8239, 3329 0x9145: 0x85A6, 3330 0x9146: 0x8A6E, 3331 0x9147: 0x8CCE, 3332 0x9148: 0x8DF5, 3333 0x9149: 0x9078, 3334 0x914A: 0x9077, 3335 0x914B: 0x92AD, 3336 0x914C: 0x9291, 3337 0x914D: 0x9583, 3338 0x914E: 0x9BAE, 3339 0x914F: 0x524D, 3340 0x9150: 0x5584, 3341 0x9151: 0x6F38, 3342 0x9152: 0x7136, 3343 0x9153: 0x5168, 3344 0x9154: 0x7985, 3345 0x9155: 0x7E55, 3346 0x9156: 0x81B3, 3347 0x9157: 0x7CCE, 3348 0x9158: 0x564C, 3349 0x9159: 0x5851, 3350 0x915A: 0x5CA8, 3351 0x915B: 0x63AA, 3352 0x915C: 0x66FE, 3353 0x915D: 0x66FD, 3354 0x915E: 0x695A, 3355 0x915F: 0x72D9, 3356 0x9160: 0x758F, 3357 0x9161: 0x758E, 3358 0x9162: 0x790E, 3359 0x9163: 0x7956, 3360 0x9164: 0x79DF, 3361 0x9165: 0x7C97, 3362 0x9166: 0x7D20, 3363 0x9167: 0x7D44, 3364 0x9168: 0x8607, 3365 0x9169: 0x8A34, 3366 0x916A: 0x963B, 3367 0x916B: 0x9061, 3368 0x916C: 0x9F20, 3369 0x916D: 0x50E7, 3370 0x916E: 0x5275, 3371 0x916F: 0x53CC, 3372 0x9170: 0x53E2, 3373 0x9171: 0x5009, 3374 0x9172: 0x55AA, 3375 0x9173: 0x58EE, 3376 0x9174: 0x594F, 3377 0x9175: 0x723D, 3378 0x9176: 0x5B8B, 3379 0x9177: 0x5C64, 3380 0x9178: 0x531D, 3381 0x9179: 0x60E3, 3382 0x917A: 0x60F3, 3383 0x917B: 0x635C, 3384 0x917C: 0x6383, 3385 0x917D: 0x633F, 3386 0x917E: 0x63BB, 3387 0x9180: 0x64CD, 3388 0x9181: 0x65E9, 3389 0x9182: 0x66F9, 3390 0x9183: 0x5DE3, 3391 0x9184: 0x69CD, 3392 0x9185: 0x69FD, 3393 0x9186: 0x6F15, 3394 0x9187: 0x71E5, 3395 0x9188: 0x4E89, 3396 0x9189: 0x75E9, 3397 0x918A: 0x76F8, 3398 0x918B: 0x7A93, 3399 0x918C: 0x7CDF, 3400 0x918D: 0x7DCF, 3401 0x918E: 0x7D9C, 3402 0x918F: 0x8061, 3403 0x9190: 0x8349, 3404 0x9191: 0x8358, 3405 0x9192: 0x846C, 3406 0x9193: 0x84BC, 3407 0x9194: 0x85FB, 3408 0x9195: 0x88C5, 3409 0x9196: 0x8D70, 3410 0x9197: 0x9001, 3411 0x9198: 0x906D, 3412 0x9199: 0x9397, 3413 0x919A: 0x971C, 3414 0x919B: 0x9A12, 3415 0x919C: 0x50CF, 3416 0x919D: 0x5897, 3417 0x919E: 0x618E, 3418 0x919F: 0x81D3, 3419 0x91A0: 0x8535, 3420 0x91A1: 0x8D08, 3421 0x91A2: 0x9020, 3422 0x91A3: 0x4FC3, 3423 0x91A4: 0x5074, 3424 0x91A5: 0x5247, 3425 0x91A6: 0x5373, 3426 0x91A7: 0x606F, 3427 0x91A8: 0x6349, 3428 0x91A9: 0x675F, 3429 0x91AA: 0x6E2C, 3430 0x91AB: 0x8DB3, 3431 0x91AC: 0x901F, 3432 0x91AD: 0x4FD7, 3433 0x91AE: 0x5C5E, 3434 0x91AF: 0x8CCA, 3435 0x91B0: 0x65CF, 3436 0x91B1: 0x7D9A, 3437 0x91B2: 0x5352, 3438 0x91B3: 0x8896, 3439 0x91B4: 0x5176, 3440 0x91B5: 0x63C3, 3441 0x91B6: 0x5B58, 3442 0x91B7: 0x5B6B, 3443 0x91B8: 0x5C0A, 3444 0x91B9: 0x640D, 3445 0x91BA: 0x6751, 3446 0x91BB: 0x905C, 3447 0x91BC: 0x4ED6, 3448 0x91BD: 0x591A, 3449 0x91BE: 0x592A, 3450 0x91BF: 0x6C70, 3451 0x91C0: 0x8A51, 3452 0x91C1: 0x553E, 3453 0x91C2: 0x5815, 3454 0x91C3: 0x59A5, 3455 0x91C4: 0x60F0, 3456 0x91C5: 0x6253, 3457 0x91C6: 0x67C1, 3458 0x91C7: 0x8235, 3459 0x91C8: 0x6955, 3460 0x91C9: 0x9640, 3461 0x91CA: 0x99C4, 3462 0x91CB: 0x9A28, 3463 0x91CC: 0x4F53, 3464 0x91CD: 0x5806, 3465 0x91CE: 0x5BFE, 3466 0x91CF: 0x8010, 3467 0x91D0: 0x5CB1, 3468 0x91D1: 0x5E2F, 3469 0x91D2: 0x5F85, 3470 0x91D3: 0x6020, 3471 0x91D4: 0x614B, 3472 0x91D5: 0x6234, 3473 0x91D6: 0x66FF, 3474 0x91D7: 0x6CF0, 3475 0x91D8: 0x6EDE, 3476 0x91D9: 0x80CE, 3477 0x91DA: 0x817F, 3478 0x91DB: 0x82D4, 3479 0x91DC: 0x888B, 3480 0x91DD: 0x8CB8, 3481 0x91DE: 0x9000,
3482 0x91DF: 0x902E, 3483 0x91E0: 0x968A, 3484 0x91E1: 0x9EDB, 3485 0x91E2: 0x9BDB, 3486 0x91E3: 0x4EE3, 3487 0x91E4: 0x53F0, 3488 0x91E5: 0x5927, 3489 0x91E6: 0x7B2C, 3490 0x91E7: 0x918D, 3491 0x91E8: 0x984C, 3492 0x91E9: 0x9DF9, 3493 0x91EA: 0x6EDD, 3494 0x91EB: 0x7027, 3495 0x91EC: 0x5353, 3496 0x91ED: 0x5544, 3497 0x91EE: 0x5B85, 3498 0x91EF: 0x6258, 3499 0x91F0: 0x629E, 3500 0x91F1: 0x62D3, 3501 0x91F2: 0x6CA2, 3502 0x91F3: 0x6FEF, 3503 0x91F4: 0x7422, 3504 0x91F5: 0x8A17, 3505 0x91F6: 0x9438, 3506 0x91F7: 0x6FC1, 3507 0x91F8: 0x8AFE, 3508 0x91F9: 0x8338, 3509 0x91FA: 0x51E7, 3510 0x91FB: 0x86F8, 3511 0x91FC: 0x53EA, 3512 0x9240: 0x53E9, 3513 0x9241: 0x4F46, 3514 0x9242: 0x9054, 3515 0x9243: 0x8FB0, 3516 0x9244: 0x596A, 3517 0x9245: 0x8131, 3518 0x9246: 0x5DFD, 3519 0x9247: 0x7AEA, 3520 0x9248: 0x8FBF, 3521 0x9249: 0x68DA, 3522 0x924A: 0x8C37, 3523 0x924B: 0x72F8, 3524 0x924C: 0x9C48, 3525 0x924D: 0x6A3D, 3526 0x924E: 0x8AB0, 3527 0x924F: 0x4E39, 3528 0x9250: 0x5358, 3529 0x9251: 0x5606, 3530 0x9252: 0x5766, 3531 0x9253: 0x62C5, 3532 0x9254: 0x63A2, 3533 0x9255: 0x65E6, 3534 0x9256: 0x6B4E, 3535 0x9257: 0x6DE1, 3536 0x9258: 0x6E5B, 3537 0x9259: 0x70AD, 3538 0x925A: 0x77ED, 3539 0x925B: 0x7AEF, 3540 0x925C: 0x7BAA, 3541 0x925D: 0x7DBB, 3542 0x925E: 0x803D, 3543 0x925F: 0x80C6, 3544 0x9260: 0x86CB, 3545 0x9261: 0x8A95, 3546 0x9262: 0x935B, 3547 0x9263: 0x56E3, 3548 0x9264: 0x58C7, 3549 0x9265: 0x5F3E, 3550 0x9266: 0x65AD, 3551 0x9267: 0x6696, 3552 0x9268: 0x6A80, 3553 0x9269: 0x6BB5, 3554 0x926A: 0x7537, 3555 0x926B: 0x8AC7, 3556 0x926C: 0x5024, 3557 0x926D: 0x77E5, 3558 0x926E: 0x5730, 3559 0x926F: 0x5F1B, 3560 0x9270: 0x6065, 3561 0x9271: 0x667A, 3562 0x9272: 0x6C60, 3563 0x9273: 0x75F4, 3564 0x9274: 0x7A1A, 3565 0x9275: 0x7F6E, 3566 0x9276: 0x81F4, 3567 0x9277: 0x8718, 3568 0x9278: 0x9045, 3569 0x9279: 0x99B3, 3570 0x927A: 0x7BC9, 3571 0x927B: 0x755C, 3572 0x927C: 0x7AF9, 3573 0x927D: 0x7B51, 3574 0x927E: 0x84C4, 3575 0x9280: 0x9010, 3576 0x9281: 0x79E9, 3577 0x9282: 0x7A92, 3578 0x9283: 0x8336, 3579 0x9284: 0x5AE1, 3580 0x9285: 0x7740, 3581 0x9286: 0x4E2D, 3582 0x9287: 0x4EF2, 3583 0x9288: 0x5B99, 3584 0x9289: 0x5FE0, 3585 0x928A: 0x62BD, 3586 0x928B: 0x663C, 3587 0x928C: 0x67F1, 3588 0x928D: 0x6CE8, 3589 0x928E: 0x866B, 3590 0x928F: 0x8877, 3591 0x9290: 0x8A3B, 3592 0x9291: 0x914E, 3593 0x9292: 0x92F3, 3594 0x9293: 0x99D0, 3595 0x9294: 0x6A17, 3596 0x9295: 0x7026, 3597 0x9296: 0x732A, 3598 0x9297: 0x82E7, 3599 0x9298: 0x8457, 3600 0x9299: 0x8CAF, 3601 0x929A: 0x4E01, 3602 0x929B: 0x5146, 3603 0x929C: 0x51CB, 3604 0x929D: 0x558B, 3605 0x929E: 0x5BF5, 3606 0x929F: 0x5E16, 3607 0x92A0: 0x5E33, 3608 0x92A1: 0x5E81, 3609 0x92A2: 0x5F14, 3610 0x92A3: 0x5F35, 3611 0x92A4: 0x5F6B, 3612 0x92A5: 0x5FB4, 3613 0x92A6: 0x61F2, 3614 0x92A7: 0x6311, 3615 0x92A8: 0x66A2, 3616 0x92A9: 0x671D, 3617 0x92AA: 0x6F6E, 3618 0x92AB: 0x7252, 3619 0x92AC: 0x753A, 3620 0x92AD: 0x773A, 3621 0x92AE: 0x8074, 3622 0x92AF: 0x8139, 3623 0x92B0: 0x8178, 3624 0x92B1: 0x8776, 3625 0x92B2: 0x8ABF, 3626 0x92B3: 0x8ADC, 3627 0x92B4: 0x8D85, 3628 0x92B5: 0x8DF3, 3629 0x92B6: 0x929A, 3630 0x92B7: 0x9577, 3631 0x92B8: 0x9802, 3632 0x92B9: 0x9CE5, 3633 0x92BA: 0x52C5, 3634 0x92BB: 0x6357, 3635 0x92BC: 0x76F4, 3636 0x92BD: 0x6715, 3637 0x92BE: 0x6C88, 3638 0x92BF: 0x73CD, 3639 0x92C0: 0x8CC3, 3640 0x92C1: 0x93AE, 3641 0x92C2: 0x9673, 3642 0x92C3: 0x6D25, 3643 0x92C4: 0x589C, 3644 0x92C5: 0x690E, 3645 0x92C6: 0x69CC, 3646 0x92C7: 0x8FFD, 3647 0x92C8: 0x939A, 3648 0x92C9: 0x75DB, 3649 0x92CA: 0x901A, 3650 0x92CB: 0x585A, 3651 0x92CC: 0x6802, 3652 0x92CD: 0x63B4, 3653 0x92CE: 0x69FB, 3654 0x92CF: 0x4F43, 3655 0x92D0: 0x6F2C, 3656 0x92D1: 0x67D8, 3657 0x92D2: 0x8FBB, 3658 0x92D3: 0x8526, 3659 0x92D4: 0x7DB4, 3660 0x92D5: 0x9354, 3661 0x92D6: 0x693F, 3662 0x92D7: 0x6F70, 3663 0x92D8: 0x576A, 3664 0x92D9: 0x58F7, 3665 0x92DA: 0x5B2C, 3666 0x92DB: 0x7D2C, 3667 0x92DC: 0x722A, 3668 0x92DD: 0x540A, 3669 0x92DE: 0x91E3, 3670 0x92DF: 0x9DB4, 3671 0x92E0: 0x4EAD, 3672 0x92E1: 0x4F4E, 3673 0x92E2: 0x505C, 3674 0x92E3: 0x5075, 3675 0x92E4: 0x5243, 3676 0x92E5: 0x8C9E, 3677 0x92E6: 0x5448, 3678 0x92E7: 0x5824, 3679 0x92E8: 0x5B9A, 3680 0x92E9: 0x5E1D, 3681 0x92EA: 0x5E95, 3682 0x92EB: 0x5EAD, 3683 0x92EC: 0x5EF7, 3684 0x92ED: 0x5F1F, 3685 0x92EE: 0x608C, 3686 0x92EF: 0x62B5, 3687 0x92F0: 0x633A, 3688 0x92F1: 0x63D0, 3689 0x92F2: 0x68AF, 3690 0x92F3: 0x6C40, 3691 0x92F4: 0x7887, 3692 0x92F5: 0x798E, 3693 0x92F6: 0x7A0B, 3694 0x92F7: 0x7DE0, 3695 0x92F8: 0x8247, 3696 0x92F9: 0x8A02, 3697 0x92FA: 0x8AE6, 3698 0x92FB: 0x8E44, 3699 0x92FC: 0x9013, 3700 0x9340: 0x90B8, 3701 0x9341: 0x912D, 3702 0x9342: 0x91D8, 3703 0x9343: 0x9F0E, 3704 0x9344: 0x6CE5, 3705 0x9345: 0x6458, 3706 0x9346: 0x64E2, 3707 0x9347: 0x6575, 3708 0x9348: 0x6EF4, 3709 0x9349: 0x7684, 3710 0x934A: 0x7B1B, 3711 0x934B: 0x9069, 3712 0x934C: 0x93D1, 3713 0x934D: 0x6EBA,
3714 0x934E: 0x54F2, 3715 0x934F: 0x5FB9, 3716 0x9350: 0x64A4, 3717 0x9351: 0x8F4D, 3718 0x9352: 0x8FED, 3719 0x9353: 0x9244, 3720 0x9354: 0x5178, 3721 0x9355: 0x586B, 3722 0x9356: 0x5929, 3723 0x9357: 0x5C55, 3724 0x9358: 0x5E97, 3725 0x9359: 0x6DFB, 3726 0x935A: 0x7E8F, 3727 0x935B: 0x751C, 3728 0x935C: 0x8CBC, 3729 0x935D: 0x8EE2, 3730 0x935E: 0x985B, 3731 0x935F: 0x70B9, 3732 0x9360: 0x4F1D, 3733 0x9361: 0x6BBF, 3734 0x9362: 0x6FB1, 3735 0x9363: 0x7530, 3736 0x9364: 0x96FB, 3737 0x9365: 0x514E, 3738 0x9366: 0x5410, 3739 0x9367: 0x5835, 3740 0x9368: 0x5857, 3741 0x9369: 0x59AC, 3742 0x936A: 0x5C60, 3743 0x936B: 0x5F92, 3744 0x936C: 0x6597, 3745 0x936D: 0x675C, 3746 0x936E: 0x6E21, 3747 0x936F: 0x767B, 3748 0x9370: 0x83DF, 3749 0x9371: 0x8CED, 3750 0x9372: 0x9014, 3751 0x9373: 0x90FD, 3752 0x9374: 0x934D, 3753 0x9375: 0x7825, 3754 0x9376: 0x783A, 3755 0x9377: 0x52AA, 3756 0x9378: 0x5EA6, 3757 0x9379: 0x571F, 3758 0x937A: 0x5974, 3759 0x937B: 0x6012, 3760 0x937C: 0x5012, 3761 0x937D: 0x515A, 3762 0x937E: 0x51AC, 3763 0x9380: 0x51CD, 3764 0x9381: 0x5200, 3765 0x9382: 0x5510, 3766 0x9383: 0x5854, 3767 0x9384: 0x5858, 3768 0x9385: 0x5957, 3769 0x9386: 0x5B95, 3770 0x9387: 0x5CF6, 3771 0x9388: 0x5D8B, 3772 0x9389: 0x60BC, 3773 0x938A: 0x6295, 3774 0x938B: 0x642D, 3775 0x938C: 0x6771, 3776 0x938D: 0x6843, 3777 0x938E: 0x68BC, 3778 0x938F: 0x68DF, 3779 0x9390: 0x76D7, 3780 0x9391: 0x6DD8, 3781 0x9392: 0x6E6F, 3782 0x9393: 0x6D9B, 3783 0x9394: 0x706F, 3784 0x9395: 0x71C8, 3785 0x9396: 0x5F53, 3786 0x9397: 0x75D8, 3787 0x9398: 0x7977, 3788 0x9399: 0x7B49, 3789 0x939A: 0x7B54, 3790 0x939B: 0x7B52, 3791 0x939C: 0x7CD6, 3792 0x939D: 0x7D71, 3793 0x939E: 0x5230, 3794 0x939F: 0x8463, 3795 0x93A0: 0x8569, 3796 0x93A1: 0x85E4, 3797 0x93A2: 0x8A0E, 3798 0x93A3: 0x8B04, 3799 0x93A4: 0x8C46, 3800 0x93A5: 0x8E0F, 3801 0x93A6: 0x9003, 3802 0x93A7: 0x900F, 3803 0x93A8: 0x9419, 3804 0x93A9: 0x9676, 3805 0x93AA: 0x982D, 3806 0x93AB: 0x9A30, 3807 0x93AC: 0x95D8, 3808 0x93AD: 0x50CD, 3809 0x93AE: 0x52D5, 3810 0x93AF: 0x540C, 3811 0x93B0: 0x5802, 3812 0x93B1: 0x5C0E, 3813 0x93B2: 0x61A7, 3814 0x93B3: 0x649E, 3815 0x93B4: 0x6D1E, 3816 0x93B5: 0x77B3, 3817 0x93B6: 0x7AE5, 3818 0x93B7: 0x80F4, 3819 0x93B8: 0x8404, 3820 0x93B9: 0x9053, 3821 0x93BA: 0x9285, 3822 0x93BB: 0x5CE0, 3823 0x93BC: 0x9D07, 3824 0x93BD: 0x533F, 3825 0x93BE: 0x5F97, 3826 0x93BF: 0x5FB3, 3827 0x93C0: 0x6D9C, 3828 0x93C1: 0x7279, 3829 0x93C2: 0x7763, 3830 0x93C3: 0x79BF, 3831 0x93C4: 0x7BE4, 3832 0x93C5: 0x6BD2, 3833 0x93C6: 0x72EC, 3834 0x93C7: 0x8AAD, 3835 0x93C8: 0x6803, 3836 0x93C9: 0x6A61, 3837 0x93CA: 0x51F8, 3838 0x93CB: 0x7A81, 3839 0x93CC: 0x6934, 3840 0x93CD: 0x5C4A, 3841 0x93CE: 0x9CF6, 3842 0x93CF: 0x82EB, 3843 0x93D0: 0x5BC5, 3844 0x93D1: 0x9149, 3845 0x93D2: 0x701E, 3846 0x93D3: 0x5678, 3847 0x93D4: 0x5C6F, 3848 0x93D5: 0x60C7, 3849 0x93D6: 0x6566, 3850 0x93D7: 0x6C8C, 3851 0x93D8: 0x8C5A, 3852 0x93D9: 0x9041, 3853 0x93DA: 0x9813, 3854 0x93DB: 0x5451, 3855 0x93DC: 0x66C7, 3856 0x93DD: 0x920D, 3857 0x93DE: 0x5948, 3858 0x93DF: 0x90A3, 3859 0x93E0: 0x5185, 3860 0x93E1: 0x4E4D, 3861 0x93E2: 0x51EA, 3862 0x93E3: 0x8599, 3863 0x93E4: 0x8B0E, 3864 0x93E5: 0x7058, 3865 0x93E6: 0x637A, 3866 0x93E7: 0x934B, 3867 0x93E8: 0x6962, 3868 0x93E9: 0x99B4, 3869 0x93EA: 0x7E04, 3870 0x93EB: 0x7577, 3871 0x93EC: 0x5357, 3872 0x93ED: 0x6960, 3873 0x93EE: 0x8EDF, 3874 0x93EF: 0x96E3, 3875 0x93F0: 0x6C5D, 3876 0x93F1: 0x4E8C, 3877 0x93F2: 0x5C3C, 3878 0x93F3: 0x5F10, 3879 0x93F4: 0x8FE9, 3880 0x93F5: 0x5302, 3881 0x93F6: 0x8CD1, 3882 0x93F7: 0x8089, 3883 0x93F8: 0x8679, 3884 0x93F9: 0x5EFF, 3885 0x93FA: 0x65E5, 3886 0x93FB: 0x4E73, 3887 0x93FC: 0x5165, 3888 0x9440: 0x5982, 3889 0x9441: 0x5C3F, 3890 0x9442: 0x97EE, 3891 0x9443: 0x4EFB, 3892 0x9444: 0x598A, 3893 0x9445: 0x5FCD, 3894 0x9446: 0x8A8D, 3895 0x9447: 0x6FE1, 3896 0x9448: 0x79B0, 3897 0x9449: 0x7962, 3898 0x944A: 0x5BE7, 3899 0x944B: 0x8471, 3900 0x944C: 0x732B, 3901 0x944D: 0x71B1, 3902 0x944E: 0x5E74, 3903 0x944F: 0x5FF5, 3904 0x9450: 0x637B, 3905 0x9451: 0x649A, 3906 0x9452: 0x71C3, 3907 0x9453: 0x7C98, 3908 0x9454: 0x4E43, 3909 0x9455: 0x5EFC, 3910 0x9456: 0x4E4B, 3911 0x9457: 0x57DC, 3912 0x9458: 0x56A2, 3913 0x9459: 0x60A9, 3914 0x945A: 0x6FC3, 3915 0x945B: 0x7D0D, 3916 0x945C: 0x80FD,
3917 0x945D: 0x8133, 3918 0x945E: 0x81BF, 3919 0x945F: 0x8FB2, 3920 0x9460: 0x8997, 3921 0x9461: 0x86A4, 3922 0x9462: 0x5DF4, 3923 0x9463: 0x628A, 3924 0x9464: 0x64AD, 3925 0x9465: 0x8987, 3926 0x9466: 0x6777, 3927 0x9467: 0x6CE2, 3928 0x9468: 0x6D3E, 3929 0x9469: 0x7436, 3930 0x946A: 0x7834, 3931 0x946B: 0x5A46, 3932 0x946C: 0x7F75, 3933 0x946D: 0x82AD, 3934 0x946E: 0x99AC, 3935 0x946F: 0x4FF3, 3936 0x9470: 0x5EC3, 3937 0x9471: 0x62DD, 3938 0x9472: 0x6392, 3939 0x9473: 0x6557, 3940 0x9474: 0x676F, 3941 0x9475: 0x76C3, 3942 0x9476: 0x724C, 3943 0x9477: 0x80CC, 3944 0x9478: 0x80BA, 3945 0x9479: 0x8F29, 3946 0x947A: 0x914D, 3947 0x947B: 0x500D, 3948 0x947C: 0x57F9, 3949 0x947D: 0x5A92, 3950 0x947E: 0x6885, 3951 0x9480: 0x6973, 3952 0x9481: 0x7164, 3953 0x9482: 0x72FD, 3954 0x9483: 0x8CB7, 3955 0x9484: 0x58F2, 3956 0x9485: 0x8CE0, 3957 0x9486: 0x966A, 3958 0x9487: 0x9019, 3959 0x9488: 0x877F, 3960 0x9489: 0x79E4, 3961 0x948A: 0x77E7, 3962 0x948B: 0x8429, 3963 0x948C: 0x4F2F, 3964 0x948D: 0x5265, 3965 0x948E: 0x535A, 3966 0x948F: 0x62CD, 3967 0x9490: 0x67CF, 3968 0x9491: 0x6CCA, 3969 0x9492: 0x767D, 3970 0x9493: 0x7B94, 3971 0x9494: 0x7C95, 3972 0x9495: 0x8236, 3973 0x9496: 0x8584, 3974 0x9497: 0x8FEB, 3975 0x9498: 0x66DD, 3976 0x9499: 0x6F20, 3977 0x949A: 0x7206, 3978 0x949B: 0x7E1B, 3979 0x949C: 0x83AB, 3980 0x949D: 0x99C1, 3981 0x949E: 0x9EA6, 3982 0x949F: 0x51FD, 3983 0x94A0: 0x7BB1, 3984 0x94A1: 0x7872, 3985 0x94A2: 0x7BB8, 3986 0x94A3: 0x8087, 3987 0x94A4: 0x7B48, 3988 0x94A5: 0x6AE8, 3989 0x94A6: 0x5E61, 3990 0x94A7: 0x808C, 3991 0x94A8: 0x7551, 3992 0x94A9: 0x7560, 3993 0x94AA: 0x516B, 3994 0x94AB: 0x9262, 3995 0x94AC: 0x6E8C, 3996 0x94AD: 0x767A, 3997 0x94AE: 0x9197, 3998 0x94AF: 0x9AEA, 3999 0x94B0: 0x4F10, 4000 0x94B1: 0x7F70, 4001 0x94B2: 0x629C, 4002 0x94B3: 0x7B4F, 4003 0x94B4: 0x95A5, 4004 0x94B5: 0x9CE9, 4005 0x94B6: 0x567A, 4006 0x94B7: 0x5859, 4007 0x94B8: 0x86E4, 4008 0x94B9: 0x96BC, 4009 0x94BA: 0x4F34, 4010 0x94BB: 0x5224, 4011 0x94BC: 0x534A, 4012 0x94BD: 0x53CD, 4013 0x94BE: 0x53DB, 4014 0x94BF: 0x5E06, 4015 0x94C0: 0x642C, 4016 0x94C1: 0x6591, 4017 0x94C2: 0x677F, 4018 0x94C3: 0x6C3E, 4019 0x94C4: 0x6C4E, 4020 0x94C5: 0x7248, 4021 0x94C6: 0x72AF, 4022 0x94C7: 0x73ED, 4023 0x94C8: 0x7554, 4024 0x94C9: 0x7E41, 4025 0x94CA: 0x822C, 4026 0x94CB: 0x85E9, 4027 0x94CC: 0x8CA9, 4028 0x94CD: 0x7BC4, 4029 0x94CE: 0x91C6, 4030 0x94CF: 0x7169, 4031 0x94D0: 0x9812, 4032 0x94D1: 0x98EF, 4033 0x94D2: 0x633D, 4034 0x94D3: 0x6669, 4035 0x94D4: 0x756A, 4036 0x94D5: 0x76E4, 4037 0x94D6: 0x78D0, 4038 0x94D7: 0x8543, 4039 0x94D8: 0x86EE, 4040 0x94D9: 0x532A, 4041 0x94DA: 0x5351, 4042 0x94DB: 0x5426, 4043 0x94DC: 0x5983, 4044 0x94DD: 0x5E87, 4045 0x94DE: 0x5F7C, 4046 0x94DF: 0x60B2, 4047 0x94E0: 0x6249, 4048 0x94E1: 0x6279, 4049 0x94E2: 0x62AB, 4050 0x94E3: 0x6590, 4051 0x94E4: 0x6BD4, 4052 0x94E5: 0x6CCC, 4053 0x94E6: 0x75B2, 4054 0x94E7: 0x76AE, 4055 0x94E8: 0x7891, 4056 0x94E9: 0x79D8, 4057 0x94EA: 0x7DCB, 4058 0x94EB: 0x7F77, 4059 0x94EC: 0x80A5, 4060 0x94ED: 0x88AB, 4061 0x94EE: 0x8AB9, 4062 0x94EF: 0x8CBB, 4063 0x94F0: 0x907F, 4064 0x94F1: 0x975E, 4065 0x94F2: 0x98DB, 4066 0x94F3: 0x6A0B, 4067 0x94F4: 0x7C38, 4068 0x94F5: 0x5099, 4069 0x94F6: 0x5C3E, 4070 0x94F7: 0x5FAE, 4071 0x94F8: 0x6787, 4072 0x94F9: 0x6BD8, 4073 0x94FA: 0x7435, 4074 0x94FB: 0x7709, 4075 0x94FC: 0x7F8E, 4076 0x9540: 0x9F3B, 4077 0x9541: 0x67CA, 4078 0x9542: 0x7A17, 4079 0x9543: 0x5339, 4080 0x9544: 0x758B, 4081 0x9545: 0x9AED, 4082 0x9546: 0x5F66, 4083 0x9547: 0x819D, 4084 0x9548: 0x83F1, 4085 0x9549: 0x8098, 4086 0x954A: 0x5F3C, 4087 0x954B: 0x5FC5, 4088 0x954C: 0x7562, 4089 0x954D: 0x7B46, 4090 0x954E: 0x903C, 4091 0x954F: 0x6867, 4092 0x9550: 0x59EB, 4093 0x9551: 0x5A9B, 4094 0x9552: 0x7D10, 4095 0x9553: 0x767E, 4096 0x9554: 0x8B2C, 4097 0x9555: 0x4FF5, 4098 0x9556: 0x5F6A, 4099 0x9557: 0x6A19, 4100 0x9558: 0x6C37, 4101 0x9559: 0x6F02, 4102 0x955A: 0x74E2, 4103 0x955B: 0x7968, 4104 0x955C: 0x8868, 4105 0x955D: 0x8A55, 4106 0x955E: 0x8C79, 4107 0x955F: 0x5EDF, 4108 0x9560: 0x63CF, 4109 0x9561: 0x75C5, 4110 0x9562: 0x79D2, 4111 0x9563: 0x82D7, 4112 0x9564: 0x9328, 4113 0x9565: 0x92F2, 4114 0x9566: 0x849C, 4115 0x9567: 0x86ED, 4116 0x9568: 0x9C2D, 4117 0x9569: 0x54C1, 4118 0x956A: 0x5F6C, 4119 0x956B: 0x658C, 4120 0x956C: 0x6D5C, 4121 0x956D: 0x7015, 4122 0x956E: 0x8CA7, 4123 0x956F: 0x8CD3, 4124 0x9570: 0x983B, 4125 0x9571: 0x654F, 4126 0x9572: 0x74F6, 4127 0x9573: 0x4E0D, 4128 0x9574: 0x4ED8, 4129 0x9575: 0x57E0, 4130 0x9576: 0x592B, 4131 0x9577: 0x5A66, 4132 0x9578: 0x5BCC, 4133 0x9579: 0x51A8, 4134 0x957A: 0x5E03, 4135 0x957B: 0x5E9C, 4136 0x957C: 0x6016, 4137 0x957D: 0x6276, 4138 0x957E: 0x6577, 4139 0x9580: 0x65A7, 4140 0x9581: 0x666E, 4141 0x9582: 0x6D6E, 4142 0x9583: 0x7236, 4143 0x9584: 0x7B26, 4144 0x9585: 0x8150, 4145 0x9586: 0x819A, 4146 0x9587: 0x8299, 4147 0x9588: 0x8B5C, 4148 0x9589: 0x8CA0, 4149 0x958A: 0x8CE6, 4150 0x958B: 0x8D74, 4151 0x958C: 0x961C, 4152 0x958D: 0x9644, 4153 0x958E: 0x4FAE, 4154 0x958F: 0x64AB, 4155 0x9590: 0x6B66, 4156 0x9591: 0x821E, 4157 0x9592: 0x8461, 4158 0x9593: 0x856A, 4159 0x9594: 0x90E8, 4160 0x9595: 0x5C01, 4161 0x9596: 0x6953, 4162 0x9597: 0x98A8, 4163 0x9598: 0x847A, 4164 0x9599: 0x8557, 4165 0x959A: 0x4F0F, 4166 0x959B: 0x526F, 4167 0x959C: 0x5FA9, 4168 0x959D: 0x5E45, 4169 0x959E: 0x670D, 4170 0x959F: 0x798F, 4171 0x95A0: 0x8179, 4172 0x95A1: 0x8907, 4173 0x95A2: 0x8986, 4174 0x95A3: 0x6DF5, 4175 0x95A4: 0x5F17, 4176 0x95A5: 0x6255,
4177 0x95A6: 0x6CB8, 4178 0x95A7: 0x4ECF, 4179 0x95A8: 0x7269, 4180 0x95A9: 0x9B92, 4181 0x95AA: 0x5206, 4182 0x95AB: 0x543B, 4183 0x95AC: 0x5674, 4184 0x95AD: 0x58B3, 4185 0x95AE: 0x61A4, 4186 0x95AF: 0x626E, 4187 0x95B0: 0x711A, 4188 0x95B1: 0x596E, 4189 0x95B2: 0x7C89, 4190 0x95B3: 0x7CDE, 4191 0x95B4: 0x7D1B, 4192 0x95B5: 0x96F0, 4193 0x95B6: 0x6587, 4194 0x95B7: 0x805E, 4195 0x95B8: 0x4E19, 4196 0x95B9: 0x4F75, 4197 0x95BA: 0x5175, 4198 0x95BB: 0x5840, 4199 0x95BC: 0x5E63, 4200 0x95BD: 0x5E73, 4201 0x95BE: 0x5F0A, 4202 0x95BF: 0x67C4, 4203 0x95C0: 0x4E26, 4204 0x95C1: 0x853D, 4205 0x95C2: 0x9589, 4206 0x95C3: 0x965B, 4207 0x95C4: 0x7C73, 4208 0x95C5: 0x9801, 4209 0x95C6: 0x50FB, 4210 0x95C7: 0x58C1, 4211 0x95C8: 0x7656, 4212 0x95C9: 0x78A7, 4213 0x95CA: 0x5225, 4214 0x95CB: 0x77A5, 4215 0x95CC: 0x8511, 4216 0x95CD: 0x7B86, 4217 0x95CE: 0x504F, 4218 0x95CF: 0x5909, 4219 0x95D0: 0x7247, 4220 0x95D1: 0x7BC7, 4221 0x95D2: 0x7DE8, 4222 0x95D3: 0x8FBA, 4223 0x95D4: 0x8FD4, 4224 0x95D5: 0x904D, 4225 0x95D6: 0x4FBF, 4226 0x95D7: 0x52C9, 4227 0x95D8: 0x5A29, 4228 0x95D9: 0x5F01, 4229 0x95DA: 0x97AD, 4230 0x95DB: 0x4FDD, 4231 0x95DC: 0x8217, 4232 0x95DD: 0x92EA, 4233 0x95DE: 0x5703, 4234 0x95DF: 0x6355, 4235 0x95E0: 0x6B69, 4236 0x95E1: 0x752B, 4237 0x95E2: 0x88DC, 4238 0x95E3: 0x8F14, 4239 0x95E4: 0x7A42, 4240 0x95E5: 0x52DF, 4241 0x95E6: 0x5893, 4242 0x95E7: 0x6155, 4243 0x95E8: 0x620A, 4244 0x95E9: 0x66AE, 4245 0x95EA: 0x6BCD, 4246 0x95EB: 0x7C3F, 4247 0x95EC: 0x83E9, 4248 0x95ED: 0x5023, 4249 0x95EE: 0x4FF8, 4250 0x95EF: 0x5305, 4251 0x95F0: 0x5446, 4252 0x95F1: 0x5831, 4253 0x95F2: 0x5949, 4254 0x95F3: 0x5B9D, 4255 0x95F4: 0x5CF0, 4256 0x95F5: 0x5CEF, 4257 0x95F6: 0x5D29, 4258 0x95F7: 0x5E96, 4259 0x95F8: 0x62B1, 4260 0x95F9: 0x6367, 4261 0x95FA: 0x653E, 4262 0x95FB: 0x65B9, 4263 0x95FC: 0x670B, 4264 0x9640: 0x6CD5, 4265 0x9641: 0x6CE1, 4266 0x9642: 0x70F9, 4267 0x9643: 0x7832, 4268 0x9644: 0x7E2B, 4269 0x9645: 0x80DE, 4270 0x9646: 0x82B3, 4271 0x9647: 0x840C, 4272 0x9648: 0x84EC, 4273 0x9649: 0x8702, 4274 0x964A: 0x8912, 4275 0x964B: 0x8A2A, 4276 0x964C: 0x8C4A, 4277 0x964D: 0x90A6, 4278 0x964E: 0x92D2, 4279 0x964F: 0x98FD, 4280 0x9650: 0x9CF3, 4281 0x9651: 0x9D6C, 4282 0x9652: 0x4E4F, 4283 0x9653: 0x4EA1, 4284 0x9654: 0x508D, 4285 0x9655: 0x5256, 4286 0x9656: 0x574A, 4287 0x9657: 0x59A8, 4288 0x9658: 0x5E3D, 4289 0x9659: 0x5FD8, 4290 0x965A: 0x5FD9, 4291 0x965B: 0x623F, 4292 0x965C: 0x66B4, 4293 0x965D: 0x671B, 4294 0x965E: 0x67D0, 4295 0x965F: 0x68D2, 4296 0x9660: 0x5192, 4297 0x9661: 0x7D21, 4298 0x9662: 0x80AA, 4299 0x9663: 0x81A8, 4300 0x9664: 0x8B00, 4301 0x9665: 0x8C8C, 4302 0x9666: 0x8CBF, 4303 0x9667: 0x927E, 4304 0x9668: 0x9632, 4305 0x9669: 0x5420, 4306 0x966A: 0x982C, 4307 0x966B: 0x5317, 4308 0x966C: 0x50D5, 4309 0x966D: 0x535C, 4310 0x966E: 0x58A8, 4311 0x966F: 0x64B2, 4312 0x9670: 0x6734, 4313 0x9671: 0x7267, 4314 0x9672: 0x7766, 4315 0x9673: 0x7A46, 4316 0x9674: 0x91E6, 4317 0x9675: 0x52C3, 4318 0x9676: 0x6CA1, 4319 0x9677: 0x6B86, 4320 0x9678: 0x5800, 4321 0x9679: 0x5E4C, 4322 0x967A: 0x5954, 4323 0x967B: 0x672C, 4324 0x967C: 0x7FFB, 4325 0x967D: 0x51E1, 4326 0x967E: 0x76C6, 4327 0x9680: 0x6469, 4328 0x9681: 0x78E8, 4329 0x9682: 0x9B54, 4330 0x9683: 0x9EBB, 4331 0x9684: 0x57CB, 4332 0x9685: 0x59B9, 4333 0x9686: 0x6627, 4334 0x9687: 0x679A, 4335 0x9688: 0x6BCE, 4336 0x9689: 0x54E9, 4337 0x968A: 0x69D9, 4338 0x968B: 0x5E55, 4339 0x968C: 0x819C, 4340 0x968D: 0x6795, 4341 0x968E: 0x9BAA, 4342 0x968F: 0x67FE, 4343 0x9690: 0x9C52, 4344 0x9691: 0x685D, 4345 0x9692: 0x4EA6, 4346 0x9693: 0x4FE3, 4347 0x9694: 0x53C8, 4348 0x9695: 0x62B9, 4349 0x9696: 0x672B, 4350 0x9697: 0x6CAB, 4351 0x9698: 0x8FC4, 4352 0x9699: 0x4FAD, 4353 0x969A: 0x7E6D, 4354 0x969B: 0x9EBF, 4355 0x969C: 0x4E07, 4356 0x969D: 0x6162, 4357 0x969E: 0x6E80, 4358 0x969F: 0x6F2B, 4359 0x96A0: 0x8513, 4360 0x96A1: 0x5473, 4361 0x96A2: 0x672A, 4362 0x96A3: 0x9B45, 4363 0x96A4: 0x5DF3, 4364 0x96A5: 0x7B95, 4365 0x96A6: 0x5CAC, 4366 0x96A7: 0x5BC6, 4367 0x96A8: 0x871C, 4368 0x96A9: 0x6E4A, 4369 0x96AA: 0x84D1, 4370 0x96AB: 0x7A14, 4371 0x96AC: 0x8108, 4372 0x96AD: 0x5999, 4373 0x96AE: 0x7C8D, 4374 0x96AF: 0x6C11, 4375 0x96B0: 0x7720, 4376 0x96B1: 0x52D9, 4377 0x96B2: 0x5922, 4378 0x96B3: 0x7121, 4379 0x96B4: 0x725F, 4380 0x96B5: 0x77DB, 4381 0x96B6: 0x9727, 4382 0x96B7: 0x9D61, 4383 0x96B8: 0x690B, 4384 0x96B9: 0x5A7F, 4385 0x96BA: 0x5A18, 4386 0x96BB: 0x51A5, 4387 0x96BC: 0x540D, 4388 0x96BD: 0x547D, 4389 0x96BE: 0x660E, 4390 0x96BF: 0x76DF, 4391 0x96C0: 0x8FF7, 4392 0x96C1: 0x9298, 4393 0x96C2: 0x9CF4, 4394 0x96C3: 0x59EA, 4395 0x96C4: 0x725D, 4396 0x96C5: 0x6EC5, 4397 0x96C6: 0x514D, 4398 0x96C7: 0x68C9, 4399 0x96C8: 0x7DBF, 4400 0x96C9: 0x7DEC, 4401 0x96CA: 0x9762, 4402 0x96CB: 0x9EBA, 4403 0x96CC: 0x6478, 4404 0x96CD: 0x6A21, 4405 0x96CE: 0x8302, 4406 0x96CF: 0x5984, 4407 0x96D0: 0x5B5F, 4408 0x96D1: 0x6BDB, 4409 0x96D2: 0x731B, 4410 0x96D3: 0x76F2, 4411 0x96D4: 0x7DB2, 4412 0x96D5: 0x8017, 4413 0x96D6: 0x8499, 4414 0x96D7: 0x5132, 4415 0x96D8: 0x6728, 4416 0x96D9: 0x9ED9, 4417 0x96DA: 0x76EE, 4418 0x96DB: 0x6762, 4419 0x96DC: 0x52FF, 4420 0x96DD: 0x9905, 4421 0x96DE: 0x5C24,
4422 0x96DF: 0x623B, 4423 0x96E0: 0x7C7E, 4424 0x96E1: 0x8CB0, 4425 0x96E2: 0x554F, 4426 0x96E3: 0x60B6, 4427 0x96E4: 0x7D0B, 4428 0x96E5: 0x9580, 4429 0x96E6: 0x5301, 4430 0x96E7: 0x4E5F, 4431 0x96E8: 0x51B6, 4432 0x96E9: 0x591C, 4433 0x96EA: 0x723A, 4434 0x96EB: 0x8036, 4435 0x96EC: 0x91CE, 4436 0x96ED: 0x5F25, 4437 0x96EE: 0x77E2, 4438 0x96EF: 0x5384, 4439 0x96F0: 0x5F79, 4440 0x96F1: 0x7D04, 4441 0x96F2: 0x85AC, 4442 0x96F3: 0x8A33, 4443 0x96F4: 0x8E8D, 4444 0x96F5: 0x9756, 4445 0x96F6: 0x67F3, 4446 0x96F7: 0x85AE, 4447 0x96F8: 0x9453, 4448 0x96F9: 0x6109, 4449 0x96FA: 0x6108, 4450 0x96FB: 0x6CB9, 4451 0x96FC: 0x7652, 4452 0x9740: 0x8AED, 4453 0x9741: 0x8F38, 4454 0x9742: 0x552F, 4455 0x9743: 0x4F51, 4456 0x9744: 0x512A, 4457 0x9745: 0x52C7, 4458 0x9746: 0x53CB, 4459 0x9747: 0x5BA5, 4460 0x9748: 0x5E7D, 4461 0x9749: 0x60A0, 4462 0x974A: 0x6182, 4463 0x974B: 0x63D6, 4464 0x974C: 0x6709, 4465 0x974D: 0x67DA, 4466 0x974E: 0x6E67, 4467 0x974F: 0x6D8C, 4468 0x9750: 0x7336, 4469 0x9751: 0x7337, 4470 0x9752: 0x7531, 4471 0x9753: 0x7950, 4472 0x9754: 0x88D5, 4473 0x9755: 0x8A98, 4474 0x9756: 0x904A, 4475 0x9757: 0x9091, 4476 0x9758: 0x90F5, 4477 0x9759: 0x96C4, 4478 0x975A: 0x878D, 4479 0x975B: 0x5915, 4480 0x975C: 0x4E88, 4481 0x975D: 0x4F59, 4482 0x975E: 0x4E0E, 4483 0x975F: 0x8A89, 4484 0x9760: 0x8F3F, 4485 0x9761: 0x9810, 4486 0x9762: 0x50AD, 4487 0x9763: 0x5E7C, 4488 0x9764: 0x5996, 4489 0x9765: 0x5BB9, 4490 0x9766: 0x5EB8, 4491 0x9767: 0x63DA, 4492 0x9768: 0x63FA, 4493 0x9769: 0x64C1, 4494 0x976A: 0x66DC, 4495 0x976B: 0x694A, 4496 0x976C: 0x69D8, 4497 0x976D: 0x6D0B, 4498 0x976E: 0x6EB6, 4499 0x976F: 0x7194, 4500 0x9770: 0x7528, 4501 0x9771: 0x7AAF, 4502 0x9772: 0x7F8A, 4503 0x9773: 0x8000, 4504 0x9774: 0x8449, 4505 0x9775: 0x84C9, 4506 0x9776: 0x8981, 4507 0x9777: 0x8B21, 4508 0x9778: 0x8E0A, 4509 0x9779: 0x9065, 4510 0x977A: 0x967D, 4511 0x977B: 0x990A, 4512 0x977C: 0x617E, 4513 0x977D: 0x6291, 4514 0x977E: 0x6B32, 4515 0x9780: 0x6C83, 4516 0x9781: 0x6D74, 4517 0x9782: 0x7FCC, 4518 0x9783: 0x7FFC, 4519 0x9784: 0x6DC0, 4520 0x9785: 0x7F85, 4521 0x9786: 0x87BA, 4522 0x9787: 0x88F8, 4523 0x9788: 0x6765, 4524 0x9789: 0x83B1, 4525 0x978A: 0x983C, 4526 0x978B: 0x96F7, 4527 0x978C: 0x6D1B, 4528 0x978D: 0x7D61, 4529 0x978E: 0x843D, 4530 0x978F: 0x916A, 4531 0x9790: 0x4E71, 4532 0x9791: 0x5375, 4533 0x9792: 0x5D50, 4534 0x9793: 0x6B04, 4535 0x9794: 0x6FEB, 4536 0x9795: 0x85CD, 4537 0x9796: 0x862D, 4538 0x9797: 0x89A7, 4539 0x9798: 0x5229, 4540 0x9799: 0x540F, 4541 0x979A: 0x5C65, 4542 0x979B: 0x674E, 4543 0x979C: 0x68A8, 4544 0x979D: 0x7406, 4545 0x979E: 0x7483, 4546 0x979F: 0x75E2, 4547 0x97A0: 0x88CF, 4548 0x97A1: 0x88E1, 4549 0x97A2: 0x91CC, 4550 0x97A3: 0x96E2, 4551 0x97A4: 0x9678, 4552 0x97A5: 0x5F8B, 4553 0x97A6: 0x7387, 4554 0x97A7: 0x7ACB, 4555 0x97A8: 0x844E, 4556 0x97A9: 0x63A0, 4557 0x97AA: 0x7565, 4558 0x97AB: 0x5289, 4559 0x97AC: 0x6D41, 4560 0x97AD: 0x6E9C, 4561 0x97AE: 0x7409, 4562 0x97AF: 0x7559, 4563 0x97B0: 0x786B, 4564 0x97B1: 0x7C92, 4565 0x97B2: 0x9686, 4566 0x97B3: 0x7ADC, 4567 0x97B4: 0x9F8D, 4568 0x97B5: 0x4FB6, 4569 0x97B6: 0x616E, 4570 0x97B7: 0x65C5, 4571 0x97B8: 0x865C, 4572 0x97B9: 0x4E86, 4573 0x97BA: 0x4EAE, 4574 0x97BB: 0x50DA, 4575 0x97BC: 0x4E21, 4576 0x97BD: 0x51CC, 4577 0x97BE: 0x5BEE, 4578 0x97BF: 0x6599, 4579 0x97C0: 0x6881, 4580 0x97C1: 0x6DBC, 4581 0x97C2: 0x731F, 4582 0x97C3: 0x7642, 4583 0x97C4: 0x77AD, 4584 0x97C5: 0x7A1C, 4585 0x97C6: 0x7CE7, 4586 0x97C7: 0x826F, 4587 0x97C8: 0x8AD2, 4588 0x97C9: 0x907C, 4589 0x97CA: 0x91CF, 4590 0x97CB: 0x9675, 4591 0x97CC: 0x9818, 4592 0x97CD: 0x529B, 4593 0x97CE: 0x7DD1, 4594 0x97CF: 0x502B, 4595 0x97D0: 0x5398, 4596 0x97D1: 0x6797, 4597 0x97D2: 0x6DCB, 4598 0x97D3: 0x71D0, 4599 0x97D4: 0x7433, 4600 0x97D5: 0x81E8, 4601 0x97D6: 0x8F2A, 4602 0x97D7: 0x96A3, 4603 0x97D8: 0x9C57, 4604 0x97D9: 0x9E9F, 4605 0x97DA: 0x7460, 4606 0x97DB: 0x5841, 4607 0x97DC: 0x6D99, 4608 0x97DD: 0x7D2F, 4609 0x97DE: 0x985E, 4610 0x97DF: 0x4EE4, 4611 0x97E0: 0x4F36, 4612 0x97E1: 0x4F8B, 4613 0x97E2: 0x51B7, 4614 0x97E3: 0x52B1, 4615 0x97E4: 0x5DBA, 4616 0x97E5: 0x601C, 4617 0x97E6: 0x73B2, 4618 0x97E7: 0x793C, 4619 0x97E8: 0x82D3, 4620 0x97E9: 0x9234, 4621 0x97EA: 0x96B7, 4622 0x97EB: 0x96F6, 4623 0x97EC: 0x970A, 4624 0x97ED: 0x9E97, 4625 0x97EE: 0x9F62, 4626 0x97EF: 0x66A6, 4627 0x97F0: 0x6B74, 4628 0x97F1: 0x5217, 4629 0x97F2: 0x52A3, 4630 0x97F3: 0x70C8, 4631 0x97F4: 0x88C2, 4632 0x97F5: 0x5EC9, 4633 0x97F6: 0x604B, 4634 0x97F7: 0x6190, 4635 0x97F8: 0x6F23, 4636 0x97F9: 0x7149, 4637 0x97FA: 0x7C3E, 4638 0x97FB: 0x7DF4, 4639 0x97FC: 0x806F, 4640 0x9840: 0x84EE, 4641 0x9841: 0x9023, 4642 0x9842: 0x932C, 4643 0x9843: 0x5442, 4644 0x9844: 0x9B6F, 4645 0x9845: 0x6AD3,
4646 0x9846: 0x7089, 4647 0x9847: 0x8CC2, 4648 0x9848: 0x8DEF, 4649 0x9849: 0x9732, 4650 0x984A: 0x52B4, 4651 0x984B: 0x5A41, 4652 0x984C: 0x5ECA, 4653 0x984D: 0x5F04, 4654 0x984E: 0x6717, 4655 0x984F: 0x697C, 4656 0x9850: 0x6994, 4657 0x9851: 0x6D6A, 4658 0x9852: 0x6F0F, 4659 0x9853: 0x7262, 4660 0x9854: 0x72FC, 4661 0x9855: 0x7BED, 4662 0x9856: 0x8001, 4663 0x9857: 0x807E, 4664 0x9858: 0x874B, 4665 0x9859: 0x90CE, 4666 0x985A: 0x516D, 4667 0x985B: 0x9E93, 4668 0x985C: 0x7984, 4669 0x985D: 0x808B, 4670 0x985E: 0x9332, 4671 0x985F: 0x8AD6, 4672 0x9860: 0x502D, 4673 0x9861: 0x548C, 4674 0x9862: 0x8A71, 4675 0x9863: 0x6B6A, 4676 0x9864: 0x8CC4, 4677 0x9865: 0x8107, 4678 0x9866: 0x60D1, 4679 0x9867: 0x67A0, 4680 0x9868: 0x9DF2, 4681 0x9869: 0x4E99, 4682 0x986A: 0x4E98, 4683 0x986B: 0x9C10, 4684 0x986C: 0x8A6B, 4685 0x986D: 0x85C1, 4686 0x986E: 0x8568, 4687 0x986F: 0x6900, 4688 0x9870: 0x6E7E, 4689 0x9871: 0x7897, 4690 0x9872: 0x8155, 4691 0x989F: 0x5F0C, 4692 0x98A0: 0x4E10, 4693 0x98A1: 0x4E15, 4694 0x98A2: 0x4E2A, 4695 0x98A3: 0x4E31, 4696 0x98A4: 0x4E36, 4697 0x98A5: 0x4E3C, 4698 0x98A6: 0x4E3F, 4699 0x98A7: 0x4E42, 4700 0x98A8: 0x4E56, 4701 0x98A9: 0x4E58, 4702 0x98AA: 0x4E82, 4703 0x98AB: 0x4E85, 4704 0x98AC: 0x8C6B, 4705 0x98AD: 0x4E8A, 4706 0x98AE: 0x8212, 4707 0x98AF: 0x5F0D, 4708 0x98B0: 0x4E8E, 4709 0x98B1: 0x4E9E, 4710 0x98B2: 0x4E9F, 4711 0x98B3: 0x4EA0, 4712 0x98B4: 0x4EA2, 4713 0x98B5: 0x4EB0, 4714 0x98B6: 0x4EB3, 4715 0x98B7: 0x4EB6, 4716 0x98B8: 0x4ECE, 4717 0x98B9: 0x4ECD, 4718 0x98BA: 0x4EC4, 4719 0x98BB: 0x4EC6, 4720 0x98BC: 0x4EC2, 4721 0x98BD: 0x4ED7, 4722 0x98BE: 0x4EDE, 4723 0x98BF: 0x4EED, 4724 0x98C0: 0x4EDF, 4725 0x98C1: 0x4EF7, 4726 0x98C2: 0x4F09, 4727 0x98C3: 0x4F5A, 4728 0x98C4: 0x4F30, 4729 0x98C5: 0x4F5B, 4730 0x98C6: 0x4F5D, 4731 0x98C7: 0x4F57, 4732 0x98C8: 0x4F47, 4733 0x98C9: 0x4F76, 4734 0x98CA: 0x4F88, 4735 0x98CB: 0x4F8F, 4736 0x98CC: 0x4F98, 4737 0x98CD: 0x4F7B, 4738 0x98CE: 0x4F69, 4739 0x98CF: 0x4F70, 4740 0x98D0: 0x4F91, 4741 0x98D1: 0x4F6F, 4742 0x98D2: 0x4F86, 4743 0x98D3: 0x4F96, 4744 0x98D4: 0x5118, 4745 0x98D5: 0x4FD4, 4746 0x98D6: 0x4FDF, 4747 0x98D7: 0x4FCE, 4748 0x98D8: 0x4FD8, 4749 0x98D9: 0x4FDB, 4750 0x98DA: 0x4FD1, 4751 0x98DB: 0x4FDA,
4752 0x98DC: 0x4FD0, 4753 0x98DD: 0x4FE4, 4754 0x98DE: 0x4FE5, 4755 0x98DF: 0x501A, 4756 0x98E0: 0x5028, 4757 0x98E1: 0x5014, 4758 0x98E2: 0x502A, 4759 0x98E3: 0x5025, 4760 0x98E4: 0x5005, 4761 0x98E5: 0x4F1C, 4762 0x98E6: 0x4FF6, 4763 0x98E7: 0x5021, 4764 0x98E8: 0x5029, 4765 0x98E9: 0x502C, 4766 0x98EA: 0x4FFE, 4767 0x98EB: 0x4FEF, 4768 0x98EC: 0x5011, 4769 0x98ED: 0x5006, 4770 0x98EE: 0x5043, 4771 0x98EF: 0x5047, 4772 0x98F0: 0x6703, 4773 0x98F1: 0x5055, 4774 0x98F2: 0x5050, 4775 0x98F3: 0x5048, 4776 0x98F4: 0x505A, 4777 0x98F5: 0x5056, 4778 0x98F6: 0x506C, 4779 0x98F7: 0x5078, 4780 0x98F8: 0x5080, 4781 0x98F9: 0x509A, 4782 0x98FA: 0x5085, 4783 0x98FB: 0x50B4, 4784 0x98FC: 0x50B2, 4785 0x9940: 0x50C9, 4786 0x9941: 0x50CA, 4787 0x9942: 0x50B3, 4788 0x9943: 0x50C2, 4789 0x9944: 0x50D6, 4790 0x9945: 0x50DE, 4791 0x9946: 0x50E5, 4792 0x9947: 0x50ED, 4793 0x9948: 0x50E3, 4794 0x9949: 0x50EE, 4795 0x994A: 0x50F9, 4796 0x994B: 0x50F5, 4797 0x994C: 0x5109, 4798 0x994D: 0x5101, 4799 0x994E: 0x5102, 4800 0x994F: 0x5116, 4801 0x9950: 0x5115, 4802 0x9951: 0x5114, 4803 0x9952: 0x511A, 4804 0x9953: 0x5121, 4805 0x9954: 0x513A, 4806 0x9955: 0x5137, 4807 0x9956: 0x513C, 4808 0x9957: 0x513B, 4809 0x9958: 0x513F, 4810 0x9959: 0x5140, 4811 0x995A: 0x5152, 4812 0x995B: 0x514C, 4813 0x995C: 0x5154, 4814 0x995D: 0x5162, 4815 0x995E: 0x7AF8, 4816 0x995F: 0x5169, 4817 0x9960: 0x516A, 4818 0x9961: 0x516E, 4819 0x9962: 0x5180, 4820 0x9963: 0x5182, 4821 0x9964: 0x56D8, 4822 0x9965: 0x518C, 4823 0x9966: 0x5189, 4824 0x9967: 0x518F, 4825 0x9968: 0x5191, 4826 0x9969: 0x5193, 4827 0x996A: 0x5195, 4828 0x996B: 0x5196, 4829 0x996C: 0x51A4, 4830 0x996D: 0x51A6, 4831 0x996E: 0x51A2, 4832 0x996F: 0x51A9, 4833 0x9970: 0x51AA, 4834 0x9971: 0x51AB, 4835 0x9972: 0x51B3, 4836 0x9973: 0x51B1, 4837 0x9974: 0x51B2, 4838 0x9975: 0x51B0, 4839 0x9976: 0x51B5, 4840 0x9977: 0x51BD, 4841 0x9978: 0x51C5, 4842 0x9979: 0x51C9, 4843 0x997A: 0x51DB, 4844 0x997B: 0x51E0, 4845 0x997C: 0x8655, 4846 0x997D: 0x51E9, 4847 0x997E: 0x51ED, 4848 0x9980: 0x51F0, 4849 0x9981: 0x51F5, 4850 0x9982: 0x51FE, 4851 0x9983: 0x5204, 4852 0x9984: 0x520B, 4853 0x9985: 0x5214, 4854 0x9986: 0x520E, 4855 0x9987: 0x5227, 4856 0x9988: 0x522A, 4857 0x9989: 0x522E, 4858 0x998A: 0x5233, 4859 0x998B: 0x5239, 4860 0x998C: 0x524F, 4861 0x998D: 0x5244, 4862 0x998E: 0x524B, 4863 0x998F: 0x524C, 4864 0x9990: 0x525E, 4865 0x9991: 0x5254, 4866 0x9992: 0x526A, 4867 0x9993: 0x5274, 4868 0x9994: 0x5269, 4869 0x9995: 0x5273, 4870 0x9996: 0x527F, 4871 0x9997: 0x527D, 4872 0x9998: 0x528D, 4873 0x9999: 0x5294, 4874 0x999A: 0x5292, 4875 0x999B: 0x5271, 4876 0x999C: 0x5288, 4877 0x999D: 0x5291, 4878 0x999E: 0x8FA8, 4879 0x999F: 0x8FA7, 4880 0x99A0: 0x52AC, 4881 0x99A1: 0x52AD, 4882 0x99A2: 0x52BC, 4883 0x99A3: 0x52B5, 4884 0x99A4: 0x52C1, 4885 0x99A5: 0x52CD, 4886 0x99A6: 0x52D7, 4887 0x99A7: 0x52DE, 4888 0x99A8: 0x52E3, 4889 0x99A9: 0x52E6, 4890 0x99AA: 0x98ED, 4891 0x99AB: 0x52E0, 4892 0x99AC: 0x52F3, 4893 0x99AD: 0x52F5, 4894 0x99AE: 0x52F8, 4895 0x99AF: 0x52F9, 4896 0x99B0: 0x5306, 4897 0x99B1: 0x5308, 4898 0x99B2: 0x7538, 4899 0x99B3: 0x530D, 4900 0x99B4: 0x5310, 4901 0x99B5: 0x530F, 4902 0x99B6: 0x5315, 4903 0x99B7: 0x531A, 4904 0x99B8: 0x5323, 4905 0x99B9: 0x532F, 4906 0x99BA: 0x5331, 4907 0x99BB: 0x5333, 4908 0x99BC: 0x5338, 4909 0x99BD: 0x5340, 4910 0x99BE: 0x5346, 4911 0x99BF: 0x5345, 4912 0x99C0: 0x4E17, 4913 0x99C1: 0x5349, 4914 0x99C2: 0x534D, 4915 0x99C3: 0x51D6, 4916 0x99C4: 0x535E, 4917 0x99C5: 0x5369, 4918 0x99C6: 0x536E, 4919 0x99C7: 0x5918, 4920 0x99C8: 0x537B, 4921 0x99C9: 0x5377, 4922 0x99CA: 0x5382, 4923 0x99CB: 0x5396, 4924 0x99CC: 0x53A0, 4925 0x99CD: 0x53A6, 4926 0x99CE: 0x53A5, 4927 0x99CF: 0x53AE, 4928 0x99D0: 0x53B0, 4929 0x99D1: 0x53B6, 4930 0x99D2: 0x53C3, 4931 0x99D3: 0x7C12, 4932 0x99D4: 0x96D9, 4933 0x99D5: 0x53DF, 4934 0x99D6: 0x66FC, 4935 0x99D7: 0x71EE, 4936 0x99D8: 0x53EE, 4937 0x99D9: 0x53E8, 4938 0x99DA: 0x53ED, 4939 0x99DB: 0x53FA, 4940 0x99DC: 0x5401, 4941 0x99DD: 0x543D, 4942 0x99DE: 0x5440, 4943 0x99DF: 0x542C, 4944 0x99E0: 0x542D, 4945 0x99E1: 0x543C, 4946 0x99E2: 0x542E, 4947 0x99E3: 0x5436, 4948 0x99E4: 0x5429, 4949 0x99E5: 0x541D, 4950 0x99E6: 0x544E, 4951 0x99E7: 0x548F, 4952 0x99E8: 0x5475, 4953 0x99E9: 0x548E, 4954 0x99EA: 0x545F, 4955 0x99EB: 0x5471, 4956 0x99EC: 0x5477, 4957 0x99ED: 0x5470, 4958 0x99EE: 0x5492, 4959 0x99EF: 0x547B, 4960 0x99F0: 0x5480, 4961 0x99F1: 0x5476, 4962 0x99F2: 0x5484, 4963 0x99F3: 0x5490, 4964 0x99F4: 0x5486, 4965 0x99F5: 0x54C7, 4966 0x99F6: 0x54A2, 4967 0x99F7: 0x54B8, 4968 0x99F8: 0x54A5, 4969 0x99F9: 0x54AC, 4970 0x99FA: 0x54C4, 4971 0x99FB: 0x54C8, 4972 0x99FC: 0x54A8, 4973 0x9A40: 0x54AB, 4974 0x9A41: 0x54C2, 4975 0x9A42: 0x54A4, 4976 0x9A43: 0x54BE, 4977 0x9A44: 0x54BC, 4978 0x9A45: 0x54D8,
4979 0x9A46: 0x54E5, 4980 0x9A47: 0x54E6, 4981 0x9A48: 0x550F, 4982 0x9A49: 0x5514, 4983 0x9A4A: 0x54FD, 4984 0x9A4B: 0x54EE, 4985 0x9A4C: 0x54ED, 4986 0x9A4D: 0x54FA, 4987 0x9A4E: 0x54E2, 4988 0x9A4F: 0x5539, 4989 0x9A50: 0x5540, 4990 0x9A51: 0x5563, 4991 0x9A52: 0x554C, 4992 0x9A53: 0x552E, 4993 0x9A54: 0x555C, 4994 0x9A55: 0x5545, 4995 0x9A56: 0x5556, 4996 0x9A57: 0x5557, 4997 0x9A58: 0x5538, 4998 0x9A59: 0x5533, 4999 0x9A5A: 0x555D, 5000 0x9A5B: 0x5599, 5001 0x9A5C: 0x5580, 5002 0x9A5D: 0x54AF, 5003 0x9A5E: 0x558A, 5004 0x9A5F: 0x559F, 5005 0x9A60: 0x557B, 5006 0x9A61: 0x557E, 5007 0x9A62: 0x5598, 5008 0x9A63: 0x559E, 5009 0x9A64: 0x55AE, 5010 0x9A65: 0x557C, 5011 0x9A66: 0x5583, 5012 0x9A67: 0x55A9, 5013 0x9A68: 0x5587, 5014 0x9A69: 0x55A8, 5015 0x9A6A: 0x55DA, 5016 0x9A6B: 0x55C5, 5017 0x9A6C: 0x55DF, 5018 0x9A6D: 0x55C4, 5019 0x9A6E: 0x55DC, 5020 0x9A6F: 0x55E4, 5021 0x9A70: 0x55D4, 5022 0x9A71: 0x5614, 5023 0x9A72: 0x55F7, 5024 0x9A73: 0x5616, 5025 0x9A74: 0x55FE, 5026 0x9A75: 0x55FD, 5027 0x9A76: 0x561B, 5028 0x9A77: 0x55F9, 5029 0x9A78: 0x564E, 5030 0x9A79: 0x5650, 5031 0x9A7A: 0x71DF, 5032 0x9A7B: 0x5634, 5033 0x9A7C: 0x5636, 5034 0x9A7D: 0x5632, 5035 0x9A7E: 0x5638, 5036 0x9A80: 0x566B, 5037 0x9A81: 0x5664, 5038 0x9A82: 0x562F, 5039 0x9A83: 0x566C, 5040 0x9A84: 0x566A, 5041 0x9A85: 0x5686, 5042 0x9A86: 0x5680, 5043 0x9A87: 0x568A, 5044 0x9A88: 0x56A0, 5045 0x9A89: 0x5694, 5046 0x9A8A: 0x568F, 5047 0x9A8B: 0x56A5, 5048 0x9A8C: 0x56AE, 5049 0x9A8D: 0x56B6, 5050 0x9A8E: 0x56B4, 5051 0x9A8F: 0x56C2, 5052 0x9A90: 0x56BC, 5053 0x9A91: 0x56C1, 5054 0x9A92: 0x56C3, 5055 0x9A93: 0x56C0, 5056 0x9A94: 0x56C8, 5057 0x9A95: 0x56CE, 5058 0x9A96: 0x56D1, 5059 0x9A97: 0x56D3, 5060 0x9A98: 0x56D7, 5061 0x9A99: 0x56EE, 5062 0x9A9A: 0x56F9, 5063 0x9A9B: 0x5700, 5064 0x9A9C: 0x56FF, 5065 0x9A9D: 0x5704, 5066 0x9A9E: 0x5709, 5067 0x9A9F: 0x5708, 5068 0x9AA0: 0x570B, 5069 0x9AA1: 0x570D, 5070 0x9AA2: 0x5713, 5071 0x9AA3: 0x5718, 5072 0x9AA4: 0x5716, 5073 0x9AA5: 0x55C7, 5074 0x9AA6: 0x571C, 5075 0x9AA7: 0x5726, 5076 0x9AA8: 0x5737, 5077 0x9AA9: 0x5738, 5078 0x9AAA: 0x574E, 5079 0x9AAB: 0x573B, 5080 0x9AAC: 0x5740, 5081 0x9AAD: 0x574F, 5082 0x9AAE: 0x5769, 5083 0x9AAF: 0x57C0, 5084 0x9AB0: 0x5788, 5085 0x9AB1: 0x5761, 5086 0x9AB2: 0x577F, 5087 0x9AB3: 0x5789, 5088 0x9AB4: 0x5793, 5089 0x9AB5: 0x57A0, 5090 0x9AB6: 0x57B3, 5091 0x9AB7: 0x57A4, 5092 0x9AB8: 0x57AA, 5093 0x9AB9: 0x57B0, 5094 0x9ABA: 0x57C3, 5095 0x9ABB: 0x57C6, 5096 0x9ABC: 0x57D4, 5097 0x9ABD: 0x57D2, 5098 0x9ABE: 0x57D3, 5099 0x9ABF: 0x580A, 5100 0x9AC0: 0x57D6, 5101 0x9AC1: 0x57E3, 5102 0x9AC2: 0x580B, 5103 0x9AC3: 0x5819, 5104 0x9AC4: 0x581D, 5105 0x9AC5: 0x5872, 5106 0x9AC6: 0x5821, 5107 0x9AC7: 0x5862, 5108 0x9AC8: 0x584B, 5109 0x9AC9: 0x5870, 5110 0x9ACA: 0x6BC0, 5111 0x9ACB: 0x5852, 5112 0x9ACC: 0x583D, 5113 0x9ACD: 0x5879, 5114 0x9ACE: 0x5885, 5115 0x9ACF: 0x58B9, 5116 0x9AD0: 0x589F, 5117 0x9AD1: 0x58AB, 5118 0x9AD2: 0x58BA, 5119 0x9AD3: 0x58DE, 5120 0x9AD4: 0x58BB, 5121 0x9AD5: 0x58B8, 5122 0x9AD6: 0x58AE, 5123 0x9AD7: 0x58C5, 5124 0x9AD8: 0x58D3, 5125 0x9AD9: 0x58D1, 5126 0x9ADA: 0x58D7, 5127 0x9ADB: 0x58D9, 5128 0x9ADC: 0x58D8, 5129 0x9ADD: 0x58E5, 5130 0x9ADE: 0x58DC, 5131 0x9ADF: 0x58E4, 5132 0x9AE0: 0x58DF, 5133 0x9AE1: 0x58EF, 5134 0x9AE2: 0x58FA, 5135 0x9AE3: 0x58F9, 5136 0x9AE4: 0x58FB, 5137 0x9AE5: 0x58FC, 5138 0x9AE6: 0x58FD, 5139 0x9AE7: 0x5902, 5140 0x9AE8: 0x590A, 5141 0x9AE9: 0x5910, 5142 0x9AEA: 0x591B, 5143 0x9AEB: 0x68A6, 5144 0x9AEC: 0x5925, 5145 0x9AED: 0x592C, 5146 0x9AEE: 0x592D, 5147 0x9AEF: 0x5932, 5148 0x9AF0: 0x5938, 5149 0x9AF1: 0x593E, 5150 0x9AF2: 0x7AD2, 5151 0x9AF3: 0x5955, 5152 0x9AF4: 0x5950, 5153 0x9AF5: 0x594E, 5154 0x9AF6: 0x595A, 5155 0x9AF7: 0x5958, 5156 0x9AF8: 0x5962, 5157 0x9AF9: 0x5960, 5158 0x9AFA: 0x5967, 5159 0x9AFB: 0x596C, 5160 0x9AFC: 0x5969, 5161 0x9B40: 0x5978, 5162 0x9B41: 0x5981, 5163 0x9B42: 0x599D, 5164 0x9B43: 0x4F5E, 5165 0x9B44: 0x4FAB, 5166 0x9B45: 0x59A3, 5167 0x9B46: 0x59B2, 5168 0x9B47: 0x59C6, 5169 0x9B48: 0x59E8, 5170 0x9B49: 0x59DC, 5171 0x9B4A: 0x598D, 5172 0x9B4B: 0x59D9, 5173 0x9B4C: 0x59DA, 5174 0x9B4D: 0x5A25, 5175 0x9B4E: 0x5A1F, 5176 0x9B4F: 0x5A11, 5177 0x9B50: 0x5A1C, 5178 0x9B51: 0x5A09, 5179 0x9B52: 0x5A1A, 5180 0x9B53: 0x5A40, 5181 0x9B54: 0x5A6C, 5182 0x9B55: 0x5A49, 5183 0x9B56: 0x5A35, 5184 0x9B57: 0x5A36, 5185 0x9B58: 0x5A62, 5186 0x9B59: 0x5A6A, 5187 0x9B5A: 0x5A9A, 5188 0x9B5B: 0x5ABC, 5189 0x9B5C: 0x5ABE, 5190 0x9B5D: 0x5ACB, 5191 0x9B5E: 0x5AC2, 5192 0x9B5F: 0x5ABD, 5193 0x9B60: 0x5AE3, 5194 0x9B61: 0x5AD7, 5195 0x9B62: 0x5AE6, 5196 0x9B63: 0x5AE9, 5197 0x9B64: 0x5AD6, 5198 0x9B65: 0x5AFA, 5199 0x9B66: 0x5AFB, 5200 0x9B67: 0x5B0C,
5201 0x9B68: 0x5B0B, 5202 0x9B69: 0x5B16, 5203 0x9B6A: 0x5B32, 5204 0x9B6B: 0x5AD0, 5205 0x9B6C: 0x5B2A, 5206 0x9B6D: 0x5B36, 5207 0x9B6E: 0x5B3E, 5208 0x9B6F: 0x5B43, 5209 0x9B70: 0x5B45, 5210 0x9B71: 0x5B40, 5211 0x9B72: 0x5B51, 5212 0x9B73: 0x5B55, 5213 0x9B74: 0x5B5A, 5214 0x9B75: 0x5B5B, 5215 0x9B76: 0x5B65, 5216 0x9B77: 0x5B69, 5217 0x9B78: 0x5B70, 5218 0x9B79: 0x5B73, 5219 0x9B7A: 0x5B75, 5220 0x9B7B: 0x5B78, 5221 0x9B7C: 0x6588, 5222 0x9B7D: 0x5B7A, 5223 0x9B7E: 0x5B80, 5224 0x9B80: 0x5B83, 5225 0x9B81: 0x5BA6, 5226 0x9B82: 0x5BB8, 5227 0x9B83: 0x5BC3, 5228 0x9B84: 0x5BC7, 5229 0x9B85: 0x5BC9, 5230 0x9B86: 0x5BD4, 5231 0x9B87: 0x5BD0, 5232 0x9B88: 0x5BE4, 5233 0x9B89: 0x5BE6, 5234 0x9B8A: 0x5BE2, 5235 0x9B8B: 0x5BDE, 5236 0x9B8C: 0x5BE5, 5237 0x9B8D: 0x5BEB, 5238 0x9B8E: 0x5BF0, 5239 0x9B8F: 0x5BF6, 5240 0x9B90: 0x5BF3, 5241 0x9B91: 0x5C05, 5242 0x9B92: 0x5C07, 5243 0x9B93: 0x5C08, 5244 0x9B94: 0x5C0D, 5245 0x9B95: 0x5C13, 5246 0x9B96: 0x5C20, 5247 0x9B97: 0x5C22, 5248 0x9B98: 0x5C28, 5249 0x9B99: 0x5C38, 5250 0x9B9A: 0x5C39, 5251 0x9B9B: 0x5C41, 5252 0x9B9C: 0x5C46, 5253 0x9B9D: 0x5C4E, 5254 0x9B9E: 0x5C53, 5255 0x9B9F: 0x5C50, 5256 0x9BA0: 0x5C4F, 5257 0x9BA1: 0x5B71, 5258 0x9BA2: 0x5C6C, 5259 0x9BA3: 0x5C6E, 5260 0x9BA4: 0x4E62, 5261 0x9BA5: 0x5C76, 5262 0x9BA6: 0x5C79, 5263 0x9BA7: 0x5C8C, 5264 0x9BA8: 0x5C91, 5265 0x9BA9: 0x5C94, 5266 0x9BAA: 0x599B, 5267 0x9BAB: 0x5CAB, 5268 0x9BAC: 0x5CBB, 5269 0x9BAD: 0x5CB6, 5270 0x9BAE: 0x5CBC, 5271 0x9BAF: 0x5CB7, 5272 0x9BB0: 0x5CC5, 5273 0x9BB1: 0x5CBE, 5274 0x9BB2: 0x5CC7, 5275 0x9BB3: 0x5CD9, 5276 0x9BB4: 0x5CE9, 5277 0x9BB5: 0x5CFD, 5278 0x9BB6: 0x5CFA, 5279 0x9BB7: 0x5CED, 5280 0x9BB8: 0x5D8C, 5281 0x9BB9: 0x5CEA, 5282 0x9BBA: 0x5D0B, 5283 0x9BBB: 0x5D15, 5284 0x9BBC: 0x5D17, 5285 0x9BBD: 0x5D5C, 5286 0x9BBE: 0x5D1F, 5287 0x9BBF: 0x5D1B, 5288 0x9BC0: 0x5D11, 5289 0x9BC1: 0x5D14, 5290 0x9BC2: 0x5D22, 5291 0x9BC3: 0x5D1A, 5292 0x9BC4: 0x5D19, 5293 0x9BC5: 0x5D18, 5294 0x9BC6: 0x5D4C, 5295 0x9BC7: 0x5D52, 5296 0x9BC8: 0x5D4E, 5297 0x9BC9: 0x5D4B, 5298 0x9BCA: 0x5D6C, 5299 0x9BCB: 0x5D73, 5300 0x9BCC: 0x5D76, 5301 0x9BCD: 0x5D87, 5302 0x9BCE: 0x5D84, 5303 0x9BCF: 0x5D82, 5304 0x9BD0: 0x5DA2, 5305 0x9BD1: 0x5D9D, 5306 0x9BD2: 0x5DAC, 5307 0x9BD3: 0x5DAE, 5308 0x9BD4: 0x5DBD, 5309 0x9BD5: 0x5D90, 5310 0x9BD6: 0x5DB7, 5311 0x9BD7: 0x5DBC, 5312 0x9BD8: 0x5DC9, 5313 0x9BD9: 0x5DCD, 5314 0x9BDA: 0x5DD3, 5315 0x9BDB: 0x5DD2, 5316 0x9BDC: 0x5DD6, 5317 0x9BDD: 0x5DDB, 5318 0x9BDE: 0x5DEB, 5319 0x9BDF: 0x5DF2, 5320 0x9BE0: 0x5DF5, 5321 0x9BE1: 0x5E0B, 5322 0x9BE2: 0x5E1A, 5323 0x9BE3: 0x5E19, 5324 0x9BE4: 0x5E11, 5325 0x9BE5: 0x5E1B, 5326 0x9BE6: 0x5E36, 5327 0x9BE7: 0x5E37, 5328 0x9BE8: 0x5E44, 5329 0x9BE9: 0x5E43, 5330 0x9BEA: 0x5E40, 5331 0x9BEB: 0x5E4E, 5332 0x9BEC: 0x5E57, 5333 0x9BED: 0x5E54, 5334 0x9BEE: 0x5E5F, 5335 0x9BEF: 0x5E62, 5336 0x9BF0: 0x5E64, 5337 0x9BF1: 0x5E47, 5338 0x9BF2: 0x5E75, 5339 0x9BF3: 0x5E76, 5340 0x9BF4: 0x5E7A, 5341 0x9BF5: 0x9EBC, 5342 0x9BF6: 0x5E7F, 5343 0x9BF7: 0x5EA0, 5344 0x9BF8: 0x5EC1, 5345 0x9BF9: 0x5EC2, 5346 0x9BFA: 0x5EC8, 5347 0x9BFB: 0x5ED0, 5348 0x9BFC: 0x5ECF, 5349 0x9C40: 0x5ED6, 5350 0x9C41: 0x5EE3, 5351 0x9C42: 0x5EDD, 5352 0x9C43: 0x5EDA, 5353 0x9C44: 0x5EDB, 5354 0x9C45: 0x5EE2, 5355 0x9C46: 0x5EE1, 5356 0x9C47: 0x5EE8, 5357 0x9C48: 0x5EE9, 5358 0x9C49: 0x5EEC, 5359 0x9C4A: 0x5EF1, 5360 0x9C4B: 0x5EF3, 5361 0x9C4C: 0x5EF0, 5362 0x9C4D: 0x5EF4, 5363 0x9C4E: 0x5EF8, 5364 0x9C4F: 0x5EFE, 5365 0x9C50: 0x5F03, 5366 0x9C51: 0x5F09, 5367 0x9C52: 0x5F5D, 5368 0x9C53: 0x5F5C, 5369 0x9C54: 0x5F0B, 5370 0x9C55: 0x5F11, 5371 0x9C56: 0x5F16, 5372 0x9C57: 0x5F29, 5373 0x9C58: 0x5F2D, 5374 0x9C59: 0x5F38, 5375 0x9C5A: 0x5F41, 5376 0x9C5B: 0x5F48, 5377 0x9C5C: 0x5F4C, 5378 0x9C5D: 0x5F4E, 5379 0x9C5E: 0x5F2F, 5380 0x9C5F: 0x5F51, 5381 0x9C60: 0x5F56, 5382 0x9C61: 0x5F57, 5383 0x9C62: 0x5F59, 5384 0x9C63: 0x5F61, 5385 0x9C64: 0x5F6D, 5386 0x9C65: 0x5F73, 5387 0x9C66: 0x5F77, 5388 0x9C67: 0x5F83, 5389 0x9C68: 0x5F82, 5390 0x9C69: 0x5F7F, 5391 0x9C6A: 0x5F8A, 5392 0x9C6B: 0x5F88, 5393 0x9C6C: 0x5F91, 5394 0x9C6D: 0x5F87, 5395 0x9C6E: 0x5F9E, 5396 0x9C6F: 0x5F99, 5397 0x9C70: 0x5F98, 5398 0x9C71: 0x5FA0, 5399 0x9C72: 0x5FA8, 5400 0x9C73: 0x5FAD, 5401 0x9C74: 0x5FBC, 5402 0x9C75: 0x5FD6, 5403 0x9C76: 0x5FFB,
5404 0x9C77: 0x5FE4, 5405 0x9C78: 0x5FF8, 5406 0x9C79: 0x5FF1, 5407 0x9C7A: 0x5FDD, 5408 0x9C7B: 0x60B3, 5409 0x9C7C: 0x5FFF, 5410 0x9C7D: 0x6021, 5411 0x9C7E: 0x6060, 5412 0x9C80: 0x6019, 5413 0x9C81: 0x6010, 5414 0x9C82: 0x6029, 5415 0x9C83: 0x600E, 5416 0x9C84: 0x6031, 5417 0x9C85: 0x601B, 5418 0x9C86: 0x6015, 5419 0x9C87: 0x602B, 5420 0x9C88: 0x6026, 5421 0x9C89: 0x600F, 5422 0x9C8A: 0x603A, 5423 0x9C8B: 0x605A, 5424 0x9C8C: 0x6041, 5425 0x9C8D: 0x606A, 5426 0x9C8E: 0x6077, 5427 0x9C8F: 0x605F, 5428 0x9C90: 0x604A, 5429 0x9C91: 0x6046, 5430 0x9C92: 0x604D, 5431 0x9C93: 0x6063, 5432 0x9C94: 0x6043, 5433 0x9C95: 0x6064, 5434 0x9C96: 0x6042, 5435 0x9C97: 0x606C, 5436 0x9C98: 0x606B, 5437 0x9C99: 0x6059, 5438 0x9C9A: 0x6081, 5439 0x9C9B: 0x608D, 5440 0x9C9C: 0x60E7, 5441 0x9C9D: 0x6083, 5442 0x9C9E: 0x609A, 5443 0x9C9F: 0x6084, 5444 0x9CA0: 0x609B, 5445 0x9CA1: 0x6096, 5446 0x9CA2: 0x6097, 5447 0x9CA3: 0x6092, 5448 0x9CA4: 0x60A7, 5449 0x9CA5: 0x608B, 5450 0x9CA6: 0x60E1, 5451 0x9CA7: 0x60B8, 5452 0x9CA8: 0x60E0, 5453 0x9CA9: 0x60D3, 5454 0x9CAA: 0x60B4, 5455 0x9CAB: 0x5FF0, 5456 0x9CAC: 0x60BD, 5457 0x9CAD: 0x60C6, 5458 0x9CAE: 0x60B5, 5459 0x9CAF: 0x60D8, 5460 0x9CB0: 0x614D, 5461 0x9CB1: 0x6115, 5462 0x9CB2: 0x6106, 5463 0x9CB3: 0x60F6, 5464 0x9CB4: 0x60F7, 5465 0x9CB5: 0x6100, 5466 0x9CB6: 0x60F4, 5467 0x9CB7: 0x60FA, 5468 0x9CB8: 0x6103, 5469 0x9CB9: 0x6121, 5470 0x9CBA: 0x60FB, 5471 0x9CBB: 0x60F1, 5472 0x9CBC: 0x610D, 5473 0x9CBD: 0x610E, 5474 0x9CBE: 0x6147, 5475 0x9CBF: 0x613E, 5476 0x9CC0: 0x6128, 5477 0x9CC1: 0x6127, 5478 0x9CC2: 0x614A, 5479 0x9CC3: 0x613F, 5480 0x9CC4: 0x613C, 5481 0x9CC5: 0x612C, 5482 0x9CC6: 0x6134, 5483 0x9CC7: 0x613D, 5484 0x9CC8: 0x6142, 5485 0x9CC9: 0x6144, 5486 0x9CCA: 0x6173, 5487 0x9CCB: 0x6177, 5488 0x9CCC: 0x6158, 5489 0x9CCD: 0x6159, 5490 0x9CCE: 0x615A, 5491 0x9CCF: 0x616B, 5492 0x9CD0: 0x6174, 5493 0x9CD1: 0x616F, 5494 0x9CD2: 0x6165, 5495 0x9CD3: 0x6171, 5496 0x9CD4: 0x615F, 5497 0x9CD5: 0x615D, 5498 0x9CD6: 0x6153, 5499 0x9CD7: 0x6175, 5500 0x9CD8: 0x6199, 5501 0x9CD9: 0x6196, 5502 0x9CDA: 0x6187, 5503 0x9CDB: 0x61AC, 5504 0x9CDC: 0x6194, 5505 0x9CDD: 0x619A, 5506 0x9CDE: 0x618A, 5507 0x9CDF: 0x6191, 5508 0x9CE0: 0x61AB, 5509 0x9CE1: 0x61AE, 5510 0x9CE2: 0x61CC, 5511 0x9CE3: 0x61CA, 5512 0x9CE4: 0x61C9, 5513 0x9CE5: 0x61F7, 5514 0x9CE6: 0x61C8, 5515 0x9CE7: 0x61C3, 5516 0x9CE8: 0x61C6, 5517 0x9CE9: 0x61BA, 5518 0x9CEA: 0x61CB, 5519 0x9CEB: 0x7F79, 5520 0x9CEC: 0x61CD, 5521 0x9CED: 0x61E6, 5522 0x9CEE: 0x61E3, 5523 0x9CEF: 0x61F6, 5524 0x9CF0: 0x61FA, 5525 0x9CF1: 0x61F4, 5526 0x9CF2: 0x61FF, 5527 0x9CF3: 0x61FD, 5528 0x9CF4: 0x61FC, 5529 0x9CF5: 0x61FE, 5530 0x9CF6: 0x6200, 5531 0x9CF7: 0x6208, 5532 0x9CF8: 0x6209, 5533 0x9CF9: 0x620D, 5534 0x9CFA: 0x620C, 5535 0x9CFB: 0x6214, 5536 0x9CFC: 0x621B, 5537 0x9D40: 0x621E, 5538 0x9D41: 0x6221, 5539 0x9D42: 0x622A, 5540 0x9D43: 0x622E, 5541 0x9D44: 0x6230, 5542 0x9D45: 0x6232, 5543 0x9D46: 0x6233, 5544 0x9D47: 0x6241, 5545 0x9D48: 0x624E, 5546 0x9D49: 0x625E, 5547 0x9D4A: 0x6263, 5548 0x9D4B: 0x625B, 5549 0x9D4C: 0x6260, 5550 0x9D4D: 0x6268, 5551 0x9D4E: 0x627C, 5552 0x9D4F: 0x6282, 5553 0x9D50: 0x6289, 5554 0x9D51: 0x627E, 5555 0x9D52: 0x6292, 5556 0x9D53: 0x6293, 5557 0x9D54: 0x6296, 5558 0x9D55: 0x62D4, 5559 0x9D56: 0x6283, 5560 0x9D57: 0x6294, 5561 0x9D58: 0x62D7, 5562 0x9D59: 0x62D1, 5563 0x9D5A: 0x62BB, 5564 0x9D5B: 0x62CF, 5565 0x9D5C: 0x62FF, 5566 0x9D5D: 0x62C6, 5567 0x9D5E: 0x64D4, 5568 0x9D5F: 0x62C8, 5569 0x9D60: 0x62DC, 5570 0x9D61: 0x62CC, 5571 0x9D62: 0x62CA, 5572 0x9D63: 0x62C2, 5573 0x9D64: 0x62C7, 5574 0x9D65: 0x629B, 5575 0x9D66: 0x62C9, 5576 0x9D67: 0x630C, 5577 0x9D68: 0x62EE, 5578 0x9D69: 0x62F1, 5579 0x9D6A: 0x6327, 5580 0x9D6B: 0x6302, 5581 0x9D6C: 0x6308, 5582 0x9D6D: 0x62EF, 5583 0x9D6E: 0x62F5, 5584 0x9D6F: 0x6350, 5585 0x9D70: 0x633E, 5586 0x9D71: 0x634D, 5587 0x9D72: 0x641C, 5588 0x9D73: 0x634F, 5589 0x9D74: 0x6396, 5590 0x9D75: 0x638E, 5591 0x9D76: 0x6380, 5592 0x9D77: 0x63AB, 5593 0x9D78: 0x6376, 5594 0x9D79: 0x63A3, 5595 0x9D7A: 0x638F, 5596 0x9D7B: 0x6389, 5597 0x9D7C: 0x639F, 5598 0x9D7D: 0x63B5, 5599 0x9D7E: 0x636B,
5600 0x9D80: 0x6369, 5601 0x9D81: 0x63BE, 5602 0x9D82: 0x63E9, 5603 0x9D83: 0x63C0, 5604 0x9D84: 0x63C6, 5605 0x9D85: 0x63E3, 5606 0x9D86: 0x63C9, 5607 0x9D87: 0x63D2, 5608 0x9D88: 0x63F6, 5609 0x9D89: 0x63C4, 5610 0x9D8A: 0x6416, 5611 0x9D8B: 0x6434, 5612 0x9D8C: 0x6406, 5613 0x9D8D: 0x6413, 5614 0x9D8E: 0x6426, 5615 0x9D8F: 0x6436, 5616 0x9D90: 0x651D, 5617 0x9D91: 0x6417, 5618 0x9D92: 0x6428, 5619 0x9D93: 0x640F, 5620 0x9D94: 0x6467, 5621 0x9D95: 0x646F, 5622 0x9D96: 0x6476, 5623 0x9D97: 0x644E, 5624 0x9D98: 0x652A, 5625 0x9D99: 0x6495, 5626 0x9D9A: 0x6493, 5627 0x9D9B: 0x64A5, 5628 0x9D9C: 0x64A9, 5629 0x9D9D: 0x6488, 5630 0x9D9E: 0x64BC, 5631 0x9D9F: 0x64DA, 5632 0x9DA0: 0x64D2, 5633 0x9DA1: 0x64C5, 5634 0x9DA2: 0x64C7, 5635 0x9DA3: 0x64BB, 5636 0x9DA4: 0x64D8, 5637 0x9DA5: 0x64C2, 5638 0x9DA6: 0x64F1, 5639 0x9DA7: 0x64E7, 5640 0x9DA8: 0x8209, 5641 0x9DA9: 0x64E0, 5642 0x9DAA: 0x64E1, 5643 0x9DAB: 0x62AC, 5644 0x9DAC: 0x64E3, 5645 0x9DAD: 0x64EF, 5646 0x9DAE: 0x652C, 5647 0x9DAF: 0x64F6, 5648 0x9DB0: 0x64F4, 5649 0x9DB1: 0x64F2, 5650 0x9DB2: 0x64FA, 5651 0x9DB3: 0x6500, 5652 0x9DB4: 0x64FD, 5653 0x9DB5: 0x6518, 5654 0x9DB6: 0x651C, 5655 0x9DB7: 0x6505, 5656 0x9DB8: 0x6524, 5657 0x9DB9: 0x6523, 5658 0x9DBA: 0x652B, 5659 0x9DBB: 0x6534, 5660 0x9DBC: 0x6535, 5661 0x9DBD: 0x6537, 5662 0x9DBE: 0x6536, 5663 0x9DBF: 0x6538, 5664 0x9DC0: 0x754B, 5665 0x9DC1: 0x6548, 5666 0x9DC2: 0x6556, 5667 0x9DC3: 0x6555, 5668 0x9DC4: 0x654D, 5669 0x9DC5: 0x6558, 5670 0x9DC6: 0x655E, 5671 0x9DC7: 0x655D, 5672 0x9DC8: 0x6572, 5673 0x9DC9: 0x6578, 5674 0x9DCA: 0x6582, 5675 0x9DCB: 0x6583, 5676 0x9DCC: 0x8B8A,
5677 0x9DCD: 0x659B, 5678 0x9DCE: 0x659F, 5679 0x9DCF: 0x65AB, 5680 0x9DD0: 0x65B7, 5681 0x9DD1: 0x65C3, 5682 0x9DD2: 0x65C6, 5683 0x9DD3: 0x65C1, 5684 0x9DD4: 0x65C4, 5685 0x9DD5: 0x65CC, 5686 0x9DD6: 0x65D2, 5687 0x9DD7: 0x65DB, 5688 0x9DD8: 0x65D9, 5689 0x9DD9: 0x65E0, 5690 0x9DDA: 0x65E1, 5691 0x9DDB: 0x65F1, 5692 0x9DDC: 0x6772, 5693 0x9DDD: 0x660A, 5694 0x9DDE: 0x6603, 5695 0x9DDF: 0x65FB, 5696 0x9DE0: 0x6773, 5697 0x9DE1: 0x6635, 5698 0x9DE2: 0x6636, 5699 0x9DE3: 0x6634, 5700 0x9DE4: 0x661C, 5701 0x9DE5: 0x664F, 5702 0x9DE6: 0x6644, 5703 0x9DE7: 0x6649, 5704 0x9DE8: 0x6641, 5705 0x9DE9: 0x665E, 5706 0x9DEA: 0x665D, 5707 0x9DEB: 0x6664, 5708 0x9DEC: 0x6667, 5709 0x9DED: 0x6668, 5710 0x9DEE: 0x665F, 5711 0x9DEF: 0x6662, 5712 0x9DF0: 0x6670, 5713 0x9DF1: 0x6683, 5714 0x9DF2: 0x6688, 5715 0x9DF3: 0x668E, 5716 0x9DF4: 0x6689, 5717 0x9DF5: 0x6684, 5718 0x9DF6: 0x6698, 5719 0x9DF7: 0x669D, 5720 0x9DF8: 0x66C1, 5721 0x9DF9: 0x66B9, 5722 0x9DFA: 0x66C9, 5723 0x9DFB: 0x66BE, 5724 0x9DFC: 0x66BC, 5725 0x9E40: 0x66C4, 5726 0x9E41: 0x66B8, 5727 0x9E42: 0x66D6, 5728 0x9E43: 0x66DA, 5729 0x9E44: 0x66E0, 5730 0x9E45: 0x663F, 5731 0x9E46: 0x66E6, 5732 0x9E47: 0x66E9, 5733 0x9E48: 0x66F0, 5734 0x9E49: 0x66F5, 5735 0x9E4A: 0x66F7, 5736 0x9E4B: 0x670F, 5737 0x9E4C: 0x6716, 5738 0x9E4D: 0x671E, 5739 0x9E4E: 0x6726, 5740 0x9E4F: 0x6727, 5741 0x9E50: 0x9738, 5742 0x9E51: 0x672E, 5743 0x9E52: 0x673F, 5744 0x9E53: 0x6736, 5745 0x9E54: 0x6741, 5746 0x9E55: 0x6738, 5747 0x9E56: 0x6737, 5748 0x9E57: 0x6746, 5749 0x9E58: 0x675E, 5750 0x9E59: 0x6760, 5751 0x9E5A: 0x6759, 5752 0x9E5B: 0x6763, 5753 0x9E5C: 0x6764, 5754 0x9E5D: 0x6789, 5755 0x9E5E: 0x6770, 5756 0x9E5F: 0x67A9, 5757 0x9E60: 0x677C, 5758 0x9E61: 0x676A, 5759 0x9E62: 0x678C, 5760 0x9E63: 0x678B, 5761 0x9E64: 0x67A6, 5762 0x9E65: 0x67A1, 5763 0x9E66: 0x6785, 5764 0x9E67: 0x67B7, 5765 0x9E68: 0x67EF, 5766 0x9E69: 0x67B4, 5767 0x9E6A: 0x67EC, 5768 0x9E6B: 0x67B3, 5769 0x9E6C: 0x67E9, 5770 0x9E6D: 0x67B8, 5771 0x9E6E: 0x67E4, 5772 0x9E6F: 0x67DE, 5773 0x9E70: 0x67DD, 5774 0x9E71: 0x67E2, 5775 0x9E72: 0x67EE, 5776 0x9E73: 0x67B9, 5777 0x9E74: 0x67CE, 5778 0x9E75: 0x67C6, 5779 0x9E76: 0x67E7, 5780 0x9E77: 0x6A9C, 5781 0x9E78: 0x681E, 5782 0x9E79: 0x6846, 5783 0x9E7A: 0x6829, 5784 0x9E7B: 0x6840, 5785 0x9E7C: 0x684D, 5786 0x9E7D: 0x6832, 5787 0x9E7E: 0x684E, 5788 0x9E80: 0x68B3, 5789 0x9E81: 0x682B, 5790 0x9E82: 0x6859, 5791 0x9E83: 0x6863, 5792 0x9E84: 0x6877, 5793 0x9E85: 0x687F, 5794 0x9E86: 0x689F, 5795 0x9E87: 0x688F, 5796 0x9E88: 0x68AD, 5797 0x9E89: 0x6894, 5798 0x9E8A: 0x689D, 5799 0x9E8B: 0x689B, 5800 0x9E8C: 0x6883, 5801 0x9E8D: 0x6AAE, 5802 0x9E8E: 0x68B9, 5803 0x9E8F: 0x6874, 5804 0x9E90: 0x68B5, 5805 0x9E91: 0x68A0, 5806 0x9E92: 0x68BA, 5807 0x9E93: 0x690F, 5808 0x9E94: 0x688D, 5809 0x9E95: 0x687E, 5810 0x9E96: 0x6901, 5811 0x9E97: 0x68CA, 5812 0x9E98: 0x6908, 5813 0x9E99: 0x68D8, 5814 0x9E9A: 0x6922, 5815 0x9E9B: 0x6926, 5816 0x9E9C: 0x68E1, 5817 0x9E9D: 0x690C, 5818 0x9E9E: 0x68CD, 5819 0x9E9F: 0x68D4, 5820 0x9EA0: 0x68E7, 5821 0x9EA1: 0x68D5, 5822 0x9EA2: 0x6936, 5823 0x9EA3: 0x6912, 5824 0x9EA4: 0x6904, 5825 0x9EA5: 0x68D7, 5826 0x9EA6: 0x68E3, 5827 0x9EA7: 0x6925, 5828 0x9EA8: 0x68F9, 5829 0x9EA9: 0x68E0, 5830 0x9EAA: 0x68EF, 5831 0x9EAB: 0x6928, 5832 0x9EAC: 0x692A, 5833 0x9EAD: 0x691A, 5834 0x9EAE: 0x6923, 5835 0x9EAF: 0x6921, 5836 0x9EB0: 0x68C6, 5837 0x9EB1: 0x6979, 5838 0x9EB2: 0x6977, 5839 0x9EB3: 0x695C, 5840 0x9EB4: 0x6978, 5841 0x9EB5: 0x696B, 5842 0x9EB6: 0x6954, 5843 0x9EB7: 0x697E, 5844 0x9EB8: 0x696E, 5845 0x9EB9: 0x6939, 5846 0x9EBA: 0x6974, 5847 0x9EBB: 0x693D, 5848 0x9EBC: 0x6959, 5849 0x9EBD: 0x6930, 5850 0x9EBE: 0x6961, 5851 0x9EBF: 0x695E, 5852 0x9EC0: 0x695D, 5853 0x9EC1: 0x6981, 5854 0x9EC2: 0x696A, 5855 0x9EC3: 0x69B2, 5856 0x9EC4: 0x69AE, 5857 0x9EC5: 0x69D0, 5858 0x9EC6: 0x69BF, 5859 0x9EC7: 0x69C1, 5860 0x9EC8: 0x69D3, 5861 0x9EC9: 0x69BE, 5862 0x9ECA: 0x69CE, 5863 0x9ECB: 0x5BE8, 5864 0x9ECC: 0x69CA, 5865 0x9ECD: 0x69DD, 5866 0x9ECE: 0x69BB, 5867 0x9ECF: 0x69C3, 5868 0x9ED0: 0x69A7, 5869 0x9ED1: 0x6A2E, 5870 0x9ED2: 0x6991, 5871 0x9ED3: 0x69A0, 5872 0x9ED4: 0x699C, 5873 0x9ED5: 0x6995, 5874 0x9ED6: 0x69B4, 5875 0x9ED7: 0x69DE, 5876 0x9ED8: 0x69E8, 5877 0x9ED9: 0x6A02, 5878 0x9EDA: 0x6A1B, 5879 0x9EDB: 0x69FF, 5880 0x9EDC: 0x6B0A, 5881 0x9EDD: 0x69F9, 5882 0x9EDE: 0x69F2, 5883 0x9EDF: 0x69E7, 5884 0x9EE0: 0x6A05, 5885 0x9EE1: 0x69B1, 5886 0x9EE2: 0x6A1E, 5887 0x9EE3: 0x69ED, 5888 0x9EE4: 0x6A14, 5889 0x9EE5: 0x69EB, 5890 0x9EE6: 0x6A0A, 5891 0x9EE7: 0x6A12, 5892 0x9EE8: 0x6AC1, 5893 0x9EE9: 0x6A23, 5894 0x9EEA: 0x6A13, 5895 0x9EEB: 0x6A44, 5896 0x9EEC: 0x6A0C, 5897 0x9EED: 0x6A72, 5898 0x9EEE: 0x6A36, 5899 0x9EEF: 0x6A78, 5900 0x9EF0: 0x6A47, 5901 0x9EF1: 0x6A62, 5902 0x9EF2: 0x6A59, 5903 0x9EF3: 0x6A66, 5904 0x9EF4: 0x6A48, 5905 0x9EF5: 0x6A38, 5906 0x9EF6: 0x6A22, 5907 0x9EF7: 0x6A90, 5908 0x9EF8: 0x6A8D,
5909 0x9EF9: 0x6AA0, 5910 0x9EFA: 0x6A84, 5911 0x9EFB: 0x6AA2, 5912 0x9EFC: 0x6AA3, 5913 0x9F40: 0x6A97, 5914 0x9F41: 0x8617, 5915 0x9F42: 0x6ABB, 5916 0x9F43: 0x6AC3, 5917 0x9F44: 0x6AC2, 5918 0x9F45: 0x6AB8, 5919 0x9F46: 0x6AB3, 5920 0x9F47: 0x6AAC, 5921 0x9F48: 0x6ADE, 5922 0x9F49: 0x6AD1, 5923 0x9F4A: 0x6ADF, 5924 0x9F4B: 0x6AAA, 5925 0x9F4C: 0x6ADA, 5926 0x9F4D: 0x6AEA, 5927 0x9F4E: 0x6AFB, 5928 0x9F4F: 0x6B05, 5929 0x9F50: 0x8616, 5930 0x9F51: 0x6AFA, 5931 0x9F52: 0x6B12, 5932 0x9F53: 0x6B16, 5933 0x9F54: 0x9B31, 5934 0x9F55: 0x6B1F, 5935 0x9F56: 0x6B38, 5936 0x9F57: 0x6B37, 5937 0x9F58: 0x76DC, 5938 0x9F59: 0x6B39, 5939 0x9F5A: 0x98EE, 5940 0x9F5B: 0x6B47, 5941 0x9F5C: 0x6B43, 5942 0x9F5D: 0x6B49, 5943 0x9F5E: 0x6B50, 5944 0x9F5F: 0x6B59, 5945 0x9F60: 0x6B54, 5946 0x9F61: 0x6B5B, 5947 0x9F62: 0x6B5F, 5948 0x9F63: 0x6B61, 5949 0x9F64: 0x6B78, 5950 0x9F65: 0x6B79, 5951 0x9F66: 0x6B7F, 5952 0x9F67: 0x6B80, 5953 0x9F68: 0x6B84, 5954 0x9F69: 0x6B83, 5955 0x9F6A: 0x6B8D, 5956 0x9F6B: 0x6B98, 5957 0x9F6C: 0x6B95, 5958 0x9F6D: 0x6B9E, 5959 0x9F6E: 0x6BA4, 5960 0x9F6F: 0x6BAA, 5961 0x9F70: 0x6BAB, 5962 0x9F71: 0x6BAF, 5963 0x9F72: 0x6BB2, 5964 0x9F73: 0x6BB1, 5965 0x9F74: 0x6BB3, 5966 0x9F75: 0x6BB7, 5967 0x9F76: 0x6BBC, 5968 0x9F77: 0x6BC6, 5969 0x9F78: 0x6BCB, 5970 0x9F79: 0x6BD3, 5971 0x9F7A: 0x6BDF, 5972 0x9F7B: 0x6BEC, 5973 0x9F7C: 0x6BEB, 5974 0x9F7D: 0x6BF3, 5975 0x9F7E: 0x6BEF, 5976 0x9F80: 0x9EBE, 5977 0x9F81: 0x6C08, 5978 0x9F82: 0x6C13, 5979 0x9F83: 0x6C14, 5980 0x9F84: 0x6C1B, 5981 0x9F85: 0x6C24, 5982 0x9F86: 0x6C23, 5983 0x9F87: 0x6C5E, 5984 0x9F88: 0x6C55, 5985 0x9F89: 0x6C62, 5986 0x9F8A: 0x6C6A, 5987 0x9F8B: 0x6C82, 5988 0x9F8C: 0x6C8D, 5989 0x9F8D: 0x6C9A, 5990 0x9F8E: 0x6C81, 5991 0x9F8F: 0x6C9B, 5992 0x9F90: 0x6C7E, 5993 0x9F91: 0x6C68, 5994 0x9F92: 0x6C73, 5995 0x9F93: 0x6C92, 5996 0x9F94: 0x6C90, 5997 0x9F95: 0x6CC4, 5998 0x9F96: 0x6CF1, 5999 0x9F97: 0x6CD3, 6000 0x9F98: 0x6CBD, 6001 0x9F99: 0x6CD7, 6002 0x9F9A: 0x6CC5, 6003 0x9F9B: 0x6CDD, 6004 0x9F9C: 0x6CAE, 6005 0x9F9D: 0x6CB1, 6006 0x9F9E: 0x6CBE, 6007 0x9F9F: 0x6CBA, 6008 0x9FA0: 0x6CDB, 6009 0x9FA1: 0x6CEF, 6010 0x9FA2: 0x6CD9, 6011 0x9FA3: 0x6CEA, 6012 0x9FA4: 0x6D1F, 6013 0x9FA5: 0x884D, 6014 0x9FA6: 0x6D36, 6015 0x9FA7: 0x6D2B, 6016 0x9FA8: 0x6D3D, 6017 0x9FA9: 0x6D38, 6018 0x9FAA: 0x6D19, 6019 0x9FAB: 0x6D35, 6020 0x9FAC: 0x6D33, 6021 0x9FAD: 0x6D12, 6022 0x9FAE: 0x6D0C, 6023 0x9FAF: 0x6D63, 6024 0x9FB0: 0x6D93, 6025 0x9FB1: 0x6D64, 6026 0x9FB2: 0x6D5A, 6027 0x9FB3: 0x6D79, 6028 0x9FB4: 0x6D59, 6029 0x9FB5: 0x6D8E, 6030 0x9FB6: 0x6D95, 6031 0x9FB7: 0x6FE4, 6032 0x9FB8: 0x6D85, 6033 0x9FB9: 0x6DF9, 6034 0x9FBA: 0x6E15, 6035 0x9FBB: 0x6E0A, 6036 0x9FBC: 0x6DB5, 6037 0x9FBD: 0x6DC7, 6038 0x9FBE: 0x6DE6, 6039 0x9FBF: 0x6DB8, 6040 0x9FC0: 0x6DC6, 6041 0x9FC1: 0x6DEC, 6042 0x9FC2: 0x6DDE, 6043 0x9FC3: 0x6DCC, 6044 0x9FC4: 0x6DE8, 6045 0x9FC5: 0x6DD2, 6046 0x9FC6: 0x6DC5, 6047 0x9FC7: 0x6DFA, 6048 0x9FC8: 0x6DD9, 6049 0x9FC9: 0x6DE4, 6050 0x9FCA: 0x6DD5, 6051 0x9FCB: 0x6DEA, 6052 0x9FCC: 0x6DEE, 6053 0x9FCD: 0x6E2D, 6054 0x9FCE: 0x6E6E, 6055 0x9FCF: 0x6E2E, 6056 0x9FD0: 0x6E19, 6057 0x9FD1: 0x6E72, 6058 0x9FD2: 0x6E5F, 6059 0x9FD3: 0x6E3E, 6060 0x9FD4: 0x6E23, 6061 0x9FD5: 0x6E6B, 6062 0x9FD6: 0x6E2B, 6063 0x9FD7: 0x6E76, 6064 0x9FD8: 0x6E4D, 6065 0x9FD9: 0x6E1F, 6066 0x9FDA: 0x6E43, 6067 0x9FDB: 0x6E3A, 6068 0x9FDC: 0x6E4E, 6069 0x9FDD: 0x6E24, 6070 0x9FDE: 0x6EFF, 6071 0x9FDF: 0x6E1D, 6072 0x9FE0: 0x6E38, 6073 0x9FE1: 0x6E82, 6074 0x9FE2: 0x6EAA, 6075 0x9FE3: 0x6E98, 6076 0x9FE4: 0x6EC9, 6077 0x9FE5: 0x6EB7, 6078 0x9FE6: 0x6ED3, 6079 0x9FE7: 0x6EBD, 6080 0x9FE8: 0x6EAF, 6081 0x9FE9: 0x6EC4, 6082 0x9FEA: 0x6EB2, 6083 0x9FEB: 0x6ED4, 6084 0x9FEC: 0x6ED5, 6085 0x9FED: 0x6E8F, 6086 0x9FEE: 0x6EA5, 6087 0x9FEF: 0x6EC2, 6088 0x9FF0: 0x6E9F, 6089 0x9FF1: 0x6F41, 6090 0x9FF2: 0x6F11, 6091 0x9FF3: 0x704C, 6092 0x9FF4: 0x6EEC, 6093 0x9FF5: 0x6EF8, 6094 0x9FF6: 0x6EFE, 6095 0x9FF7: 0x6F3F, 6096 0x9FF8: 0x6EF2, 6097 0x9FF9: 0x6F31, 6098 0x9FFA: 0x6EEF, 6099 0x9FFB: 0x6F32, 6100 0x9FFC: 0x6ECC, 6101 0xA1: 0xFF61, 6102 0xA2: 0xFF62, 6103 0xA3: 0xFF63, 6104 0xA4: 0xFF64, 6105 0xA5: 0xFF65, 6106 0xA6: 0xFF66, 6107 0xA7: 0xFF67, 6108 0xA8: 0xFF68, 6109 0xA9: 0xFF69, 6110 0xAA: 0xFF6A, 6111 0xAB: 0xFF6B, 6112 0xAC: 0xFF6C, 6113 0xAD: 0xFF6D, 6114 0xAE: 0xFF6E, 6115 0xAF: 0xFF6F, 6116 0xB0: 0xFF70, 6117 0xB1: 0xFF71, 6118 0xB2: 0xFF72, 6119 0xB3: 0xFF73, 6120 0xB4: 0xFF74, 6121 0xB5: 0xFF75, 6122 0xB6: 0xFF76, 6123 0xB7: 0xFF77, 6124 0xB8: 0xFF78, 6125 0xB9: 0xFF79, 6126 0xBA: 0xFF7A, 6127 0xBB: 0xFF7B, 6128 0xBC: 0xFF7C, 6129 0xBD: 0xFF7D, 6130 0xBE: 0xFF7E, 6131 0xBF: 0xFF7F, 6132 0xC0: 0xFF80, 6133 0xC1: 0xFF81, 6134 0xC2: 0xFF82, 6135 0xC3: 0xFF83, 6136 0xC4: 0xFF84, 6137 0xC5: 0xFF85, 6138 0xC6: 0xFF86, 6139 0xC7: 0xFF87, 6140 0xC8: 0xFF88, 6141 0xC9: 0xFF89, 6142 0xCA: 0xFF8A, 6143 0xCB: 0xFF8B, 6144 0xCC: 0xFF8C, 6145 0xCD: 0xFF8D, 6146 0xCE: 0xFF8E, 6147 0xCF: 0xFF8F, 6148 0xD0: 0xFF90, 6149 0xD1: 0xFF91, 6150 0xD2: 0xFF92, 6151 0xD3: 0xFF93, 6152 0xD4: 0xFF94,
6153 0xD5: 0xFF95, 6154 0xD6: 0xFF96, 6155 0xD7: 0xFF97, 6156 0xD8: 0xFF98, 6157 0xD9: 0xFF99, 6158 0xDA: 0xFF9A, 6159 0xDB: 0xFF9B, 6160 0xDC: 0xFF9C, 6161 0xDD: 0xFF9D, 6162 0xDE: 0xFF9E, 6163 0xDF: 0xFF9F, 6164 0xE040: 0x6F3E, 6165 0xE041: 0x6F13, 6166 0xE042: 0x6EF7, 6167 0xE043: 0x6F86, 6168 0xE044: 0x6F7A, 6169 0xE045: 0x6F78, 6170 0xE046: 0x6F81, 6171 0xE047: 0x6F80, 6172 0xE048: 0x6F6F, 6173 0xE049: 0x6F5B, 6174 0xE04A: 0x6FF3, 6175 0xE04B: 0x6F6D, 6176 0xE04C: 0x6F82, 6177 0xE04D: 0x6F7C, 6178 0xE04E: 0x6F58, 6179 0xE04F: 0x6F8E, 6180 0xE050: 0x6F91, 6181 0xE051: 0x6FC2, 6182 0xE052: 0x6F66, 6183 0xE053: 0x6FB3, 6184 0xE054: 0x6FA3, 6185 0xE055: 0x6FA1, 6186 0xE056: 0x6FA4, 6187 0xE057: 0x6FB9, 6188 0xE058: 0x6FC6, 6189 0xE059: 0x6FAA, 6190 0xE05A: 0x6FDF, 6191 0xE05B: 0x6FD5, 6192 0xE05C: 0x6FEC, 6193 0xE05D: 0x6FD4, 6194 0xE05E: 0x6FD8, 6195 0xE05F: 0x6FF1, 6196 0xE060: 0x6FEE, 6197 0xE061: 0x6FDB, 6198 0xE062: 0x7009, 6199 0xE063: 0x700B, 6200 0xE064: 0x6FFA, 6201 0xE065: 0x7011, 6202 0xE066: 0x7001, 6203 0xE067: 0x700F, 6204 0xE068: 0x6FFE, 6205 0xE069: 0x701B, 6206 0xE06A: 0x701A, 6207 0xE06B: 0x6F74, 6208 0xE06C: 0x701D, 6209 0xE06D: 0x7018, 6210 0xE06E: 0x701F, 6211 0xE06F: 0x7030, 6212 0xE070: 0x703E, 6213 0xE071: 0x7032, 6214 0xE072: 0x7051, 6215 0xE073: 0x7063, 6216 0xE074: 0x7099, 6217 0xE075: 0x7092, 6218 0xE076: 0x70AF, 6219 0xE077: 0x70F1, 6220 0xE078: 0x70AC, 6221 0xE079: 0x70B8, 6222 0xE07A: 0x70B3, 6223 0xE07B: 0x70AE, 6224 0xE07C: 0x70DF, 6225 0xE07D: 0x70CB, 6226 0xE07E: 0x70DD, 6227 0xE080: 0x70D9, 6228 0xE081: 0x7109, 6229 0xE082: 0x70FD, 6230 0xE083: 0x711C, 6231 0xE084: 0x7119, 6232 0xE085: 0x7165, 6233 0xE086: 0x7155, 6234 0xE087: 0x7188, 6235 0xE088: 0x7166, 6236 0xE089: 0x7162, 6237 0xE08A: 0x714C, 6238 0xE08B: 0x7156, 6239 0xE08C: 0x716C, 6240 0xE08D: 0x718F, 6241 0xE08E: 0x71FB, 6242 0xE08F: 0x7184, 6243 0xE090: 0x7195, 6244 0xE091: 0x71A8, 6245 0xE092: 0x71AC, 6246 0xE093: 0x71D7, 6247 0xE094: 0x71B9, 6248 0xE095: 0x71BE, 6249 0xE096: 0x71D2, 6250 0xE097: 0x71C9, 6251 0xE098: 0x71D4, 6252 0xE099: 0x71CE, 6253 0xE09A: 0x71E0, 6254 0xE09B: 0x71EC, 6255 0xE09C: 0x71E7, 6256 0xE09D: 0x71F5, 6257 0xE09E: 0x71FC, 6258 0xE09F: 0x71F9, 6259 0xE0A0: 0x71FF, 6260 0xE0A1: 0x720D, 6261 0xE0A2: 0x7210, 6262 0xE0A3: 0x721B, 6263 0xE0A4: 0x7228, 6264 0xE0A5: 0x722D, 6265 0xE0A6: 0x722C, 6266 0xE0A7: 0x7230, 6267 0xE0A8: 0x7232, 6268 0xE0A9: 0x723B, 6269 0xE0AA: 0x723C, 6270 0xE0AB: 0x723F, 6271 0xE0AC: 0x7240, 6272 0xE0AD: 0x7246, 6273 0xE0AE: 0x724B, 6274 0xE0AF: 0x7258, 6275 0xE0B0: 0x7274, 6276 0xE0B1: 0x727E, 6277 0xE0B2: 0x7282, 6278 0xE0B3: 0x7281, 6279 0xE0B4: 0x7287, 6280 0xE0B5: 0x7292, 6281 0xE0B6: 0x7296, 6282 0xE0B7: 0x72A2,
6283 0xE0B8: 0x72A7, 6284 0xE0B9: 0x72B9, 6285 0xE0BA: 0x72B2, 6286 0xE0BB: 0x72C3, 6287 0xE0BC: 0x72C6, 6288 0xE0BD: 0x72C4, 6289 0xE0BE: 0x72CE, 6290 0xE0BF: 0x72D2, 6291 0xE0C0: 0x72E2, 6292 0xE0C1: 0x72E0, 6293 0xE0C2: 0x72E1, 6294 0xE0C3: 0x72F9, 6295 0xE0C4: 0x72F7, 6296 0xE0C5: 0x500F, 6297 0xE0C6: 0x7317, 6298 0xE0C7: 0x730A, 6299 0xE0C8: 0x731C, 6300 0xE0C9: 0x7316, 6301 0xE0CA: 0x731D, 6302 0xE0CB: 0x7334, 6303 0xE0CC: 0x732F, 6304 0xE0CD: 0x7329, 6305 0xE0CE: 0x7325, 6306 0xE0CF: 0x733E, 6307 0xE0D0: 0x734E, 6308 0xE0D1: 0x734F, 6309 0xE0D2: 0x9ED8, 6310 0xE0D3: 0x7357, 6311 0xE0D4: 0x736A, 6312 0xE0D5: 0x7368, 6313 0xE0D6: 0x7370, 6314 0xE0D7: 0x7378, 6315 0xE0D8: 0x7375, 6316 0xE0D9: 0x737B, 6317 0xE0DA: 0x737A, 6318 0xE0DB: 0x73C8, 6319 0xE0DC: 0x73B3, 6320 0xE0DD: 0x73CE, 6321 0xE0DE: 0x73BB, 6322 0xE0DF: 0x73C0, 6323 0xE0E0: 0x73E5, 6324 0xE0E1: 0x73EE, 6325 0xE0E2: 0x73DE, 6326 0xE0E3: 0x74A2, 6327 0xE0E4: 0x7405, 6328 0xE0E5: 0x746F, 6329 0xE0E6: 0x7425, 6330 0xE0E7: 0x73F8, 6331 0xE0E8: 0x7432, 6332 0xE0E9: 0x743A, 6333 0xE0EA: 0x7455, 6334 0xE0EB: 0x743F, 6335 0xE0EC: 0x745F, 6336 0xE0ED: 0x7459, 6337 0xE0EE: 0x7441, 6338 0xE0EF: 0x745C, 6339 0xE0F0: 0x7469, 6340 0xE0F1: 0x7470, 6341 0xE0F2: 0x7463, 6342 0xE0F3: 0x746A, 6343 0xE0F4: 0x7476, 6344 0xE0F5: 0x747E, 6345 0xE0F6: 0x748B, 6346 0xE0F7: 0x749E, 6347 0xE0F8: 0x74A7, 6348 0xE0F9: 0x74CA, 6349 0xE0FA: 0x74CF, 6350 0xE0FB: 0x74D4, 6351 0xE0FC: 0x73F1, 6352 0xE140: 0x74E0, 6353 0xE141: 0x74E3, 6354 0xE142: 0x74E7, 6355 0xE143: 0x74E9, 6356 0xE144: 0x74EE, 6357 0xE145: 0x74F2, 6358 0xE146: 0x74F0, 6359 0xE147: 0x74F1, 6360 0xE148: 0x74F8, 6361 0xE149: 0x74F7, 6362 0xE14A: 0x7504, 6363 0xE14B: 0x7503, 6364 0xE14C: 0x7505, 6365 0xE14D: 0x750C, 6366 0xE14E: 0x750E, 6367 0xE14F: 0x750D, 6368 0xE150: 0x7515, 6369 0xE151: 0x7513, 6370 0xE152: 0x751E, 6371 0xE153: 0x7526, 6372 0xE154: 0x752C, 6373 0xE155: 0x753C, 6374 0xE156: 0x7544, 6375 0xE157: 0x754D, 6376 0xE158: 0x754A, 6377 0xE159: 0x7549, 6378 0xE15A: 0x755B, 6379 0xE15B: 0x7546, 6380 0xE15C: 0x755A, 6381 0xE15D: 0x7569, 6382 0xE15E: 0x7564, 6383 0xE15F: 0x7567, 6384 0xE160: 0x756B, 6385 0xE161: 0x756D, 6386 0xE162: 0x7578, 6387 0xE163: 0x7576, 6388 0xE164: 0x7586, 6389 0xE165: 0x7587, 6390 0xE166: 0x7574, 6391 0xE167: 0x758A, 6392 0xE168: 0x7589, 6393 0xE169: 0x7582, 6394 0xE16A: 0x7594, 6395 0xE16B: 0x759A, 6396 0xE16C: 0x759D, 6397 0xE16D: 0x75A5, 6398 0xE16E: 0x75A3, 6399 0xE16F: 0x75C2, 6400 0xE170: 0x75B3, 6401 0xE171: 0x75C3, 6402 0xE172: 0x75B5, 6403 0xE173: 0x75BD, 6404 0xE174: 0x75B8, 6405 0xE175: 0x75BC, 6406 0xE176: 0x75B1, 6407 0xE177: 0x75CD, 6408 0xE178: 0x75CA, 6409 0xE179: 0x75D2, 6410 0xE17A: 0x75D9, 6411 0xE17B: 0x75E3, 6412 0xE17C: 0x75DE, 6413 0xE17D: 0x75FE, 6414 0xE17E: 0x75FF, 6415 0xE180: 0x75FC, 6416 0xE181: 0x7601, 6417 0xE182: 0x75F0, 6418 0xE183: 0x75FA, 6419 0xE184: 0x75F2, 6420 0xE185: 0x75F3, 6421 0xE186: 0x760B, 6422 0xE187: 0x760D, 6423 0xE188: 0x7609, 6424 0xE189: 0x761F, 6425 0xE18A: 0x7627, 6426 0xE18B: 0x7620, 6427 0xE18C: 0x7621, 6428 0xE18D: 0x7622, 6429 0xE18E: 0x7624, 6430 0xE18F: 0x7634, 6431 0xE190: 0x7630, 6432 0xE191: 0x763B, 6433 0xE192: 0x7647, 6434 0xE193: 0x7648, 6435 0xE194: 0x7646, 6436 0xE195: 0x765C, 6437 0xE196: 0x7658, 6438 0xE197: 0x7661, 6439 0xE198: 0x7662, 6440 0xE199: 0x7668, 6441 0xE19A: 0x7669, 6442 0xE19B: 0x766A, 6443 0xE19C: 0x7667, 6444 0xE19D: 0x766C, 6445 0xE19E: 0x7670, 6446 0xE19F: 0x7672, 6447 0xE1A0: 0x7676, 6448 0xE1A1: 0x7678, 6449 0xE1A2: 0x767C, 6450 0xE1A3: 0x7680, 6451 0xE1A4: 0x7683, 6452 0xE1A5: 0x7688, 6453 0xE1A6: 0x768B, 6454 0xE1A7: 0x768E, 6455 0xE1A8: 0x7696, 6456 0xE1A9: 0x7693, 6457 0xE1AA: 0x7699, 6458 0xE1AB: 0x769A, 6459 0xE1AC: 0x76B0, 6460 0xE1AD: 0x76B4, 6461 0xE1AE: 0x76B8, 6462 0xE1AF: 0x76B9, 6463 0xE1B0: 0x76BA, 6464 0xE1B1: 0x76C2, 6465 0xE1B2: 0x76CD, 6466 0xE1B3: 0x76D6, 6467 0xE1B4: 0x76D2, 6468 0xE1B5: 0x76DE, 6469 0xE1B6: 0x76E1, 6470 0xE1B7: 0x76E5, 6471 0xE1B8: 0x76E7, 6472 0xE1B9: 0x76EA, 6473 0xE1BA: 0x862F, 6474 0xE1BB: 0x76FB, 6475 0xE1BC: 0x7708, 6476 0xE1BD: 0x7707, 6477 0xE1BE: 0x7704, 6478 0xE1BF: 0x7729, 6479 0xE1C0: 0x7724, 6480 0xE1C1: 0x771E, 6481 0xE1C2: 0x7725, 6482 0xE1C3: 0x7726, 6483 0xE1C4: 0x771B, 6484 0xE1C5: 0x7737, 6485 0xE1C6: 0x7738, 6486 0xE1C7: 0x7747, 6487 0xE1C8: 0x775A, 6488 0xE1C9: 0x7768, 6489 0xE1CA: 0x776B,
6490 0xE1CB: 0x775B, 6491 0xE1CC: 0x7765, 6492 0xE1CD: 0x777F, 6493 0xE1CE: 0x777E, 6494 0xE1CF: 0x7779, 6495 0xE1D0: 0x778E, 6496 0xE1D1: 0x778B, 6497 0xE1D2: 0x7791, 6498 0xE1D3: 0x77A0, 6499 0xE1D4: 0x779E, 6500 0xE1D5: 0x77B0, 6501 0xE1D6: 0x77B6, 6502 0xE1D7: 0x77B9, 6503 0xE1D8: 0x77BF, 6504 0xE1D9: 0x77BC, 6505 0xE1DA: 0x77BD, 6506 0xE1DB: 0x77BB, 6507 0xE1DC: 0x77C7, 6508 0xE1DD: 0x77CD, 6509 0xE1DE: 0x77D7, 6510 0xE1DF: 0x77DA, 6511 0xE1E0: 0x77DC, 6512 0xE1E1: 0x77E3, 6513 0xE1E2: 0x77EE, 6514 0xE1E3: 0x77FC, 6515 0xE1E4: 0x780C, 6516 0xE1E5: 0x7812, 6517 0xE1E6: 0x7926, 6518 0xE1E7: 0x7820, 6519 0xE1E8: 0x792A, 6520 0xE1E9: 0x7845, 6521 0xE1EA: 0x788E, 6522 0xE1EB: 0x7874, 6523 0xE1EC: 0x7886, 6524 0xE1ED: 0x787C, 6525 0xE1EE: 0x789A, 6526 0xE1EF: 0x788C, 6527 0xE1F0: 0x78A3, 6528 0xE1F1: 0x78B5, 6529 0xE1F2: 0x78AA, 6530 0xE1F3: 0x78AF, 6531 0xE1F4: 0x78D1, 6532 0xE1F5: 0x78C6, 6533 0xE1F6: 0x78CB, 6534 0xE1F7: 0x78D4, 6535 0xE1F8: 0x78BE, 6536 0xE1F9: 0x78BC, 6537 0xE1FA: 0x78C5, 6538 0xE1FB: 0x78CA, 6539 0xE1FC: 0x78EC, 6540 0xE240: 0x78E7, 6541 0xE241: 0x78DA, 6542 0xE242: 0x78FD, 6543 0xE243: 0x78F4, 6544 0xE244: 0x7907, 6545 0xE245: 0x7912, 6546 0xE246: 0x7911, 6547 0xE247: 0x7919, 6548 0xE248: 0x792C, 6549 0xE249: 0x792B, 6550 0xE24A: 0x7940, 6551 0xE24B: 0x7960, 6552 0xE24C: 0x7957, 6553 0xE24D: 0x795F, 6554 0xE24E: 0x795A, 6555 0xE24F: 0x7955, 6556 0xE250: 0x7953, 6557 0xE251: 0x797A, 6558 0xE252: 0x797F, 6559 0xE253: 0x798A, 6560 0xE254: 0x799D, 6561 0xE255: 0x79A7, 6562 0xE256: 0x9F4B, 6563 0xE257: 0x79AA, 6564 0xE258: 0x79AE, 6565 0xE259: 0x79B3, 6566 0xE25A: 0x79B9, 6567 0xE25B: 0x79BA, 6568 0xE25C: 0x79C9, 6569 0xE25D: 0x79D5, 6570 0xE25E: 0x79E7, 6571 0xE25F: 0x79EC, 6572 0xE260: 0x79E1, 6573 0xE261: 0x79E3, 6574 0xE262: 0x7A08, 6575 0xE263: 0x7A0D, 6576 0xE264: 0x7A18, 6577 0xE265: 0x7A19, 6578 0xE266: 0x7A20, 6579 0xE267: 0x7A1F, 6580 0xE268: 0x7980, 6581 0xE269: 0x7A31, 6582 0xE26A: 0x7A3B, 6583 0xE26B: 0x7A3E, 6584 0xE26C: 0x7A37, 6585 0xE26D: 0x7A43, 6586 0xE26E: 0x7A57, 6587 0xE26F: 0x7A49, 6588 0xE270: 0x7A61, 6589 0xE271: 0x7A62, 6590 0xE272: 0x7A69, 6591 0xE273: 0x9F9D, 6592 0xE274: 0x7A70, 6593 0xE275: 0x7A79, 6594 0xE276: 0x7A7D, 6595 0xE277: 0x7A88, 6596 0xE278: 0x7A97, 6597 0xE279: 0x7A95, 6598 0xE27A: 0x7A98, 6599 0xE27B: 0x7A96, 6600 0xE27C: 0x7AA9, 6601 0xE27D: 0x7AC8, 6602 0xE27E: 0x7AB0, 6603 0xE280: 0x7AB6, 6604 0xE281: 0x7AC5, 6605 0xE282: 0x7AC4, 6606 0xE283: 0x7ABF, 6607 0xE284: 0x9083, 6608 0xE285: 0x7AC7, 6609 0xE286: 0x7ACA, 6610 0xE287: 0x7ACD, 6611 0xE288: 0x7ACF, 6612 0xE289: 0x7AD5, 6613 0xE28A: 0x7AD3, 6614 0xE28B: 0x7AD9, 6615 0xE28C: 0x7ADA, 6616 0xE28D: 0x7ADD, 6617 0xE28E: 0x7AE1, 6618 0xE28F: 0x7AE2, 6619 0xE290: 0x7AE6, 6620 0xE291: 0x7AED, 6621 0xE292: 0x7AF0, 6622 0xE293: 0x7B02, 6623 0xE294: 0x7B0F, 6624 0xE295: 0x7B0A, 6625 0xE296: 0x7B06, 6626 0xE297: 0x7B33, 6627 0xE298: 0x7B18, 6628 0xE299: 0x7B19, 6629 0xE29A: 0x7B1E, 6630 0xE29B: 0x7B35, 6631 0xE29C: 0x7B28, 6632 0xE29D: 0x7B36, 6633 0xE29E: 0x7B50, 6634 0xE29F: 0x7B7A, 6635 0xE2A0: 0x7B04, 6636 0xE2A1: 0x7B4D, 6637 0xE2A2: 0x7B0B, 6638 0xE2A3: 0x7B4C, 6639 0xE2A4: 0x7B45, 6640 0xE2A5: 0x7B75, 6641 0xE2A6: 0x7B65, 6642 0xE2A7: 0x7B74, 6643 0xE2A8: 0x7B67, 6644 0xE2A9: 0x7B70, 6645 0xE2AA: 0x7B71, 6646 0xE2AB: 0x7B6C, 6647 0xE2AC: 0x7B6E, 6648 0xE2AD: 0x7B9D, 6649 0xE2AE: 0x7B98, 6650 0xE2AF: 0x7B9F, 6651 0xE2B0: 0x7B8D, 6652 0xE2B1: 0x7B9C, 6653 0xE2B2: 0x7B9A, 6654 0xE2B3: 0x7B8B, 6655 0xE2B4: 0x7B92, 6656 0xE2B5: 0x7B8F, 6657 0xE2B6: 0x7B5D, 6658 0xE2B7: 0x7B99, 6659 0xE2B8: 0x7BCB, 6660 0xE2B9: 0x7BC1, 6661 0xE2BA: 0x7BCC, 6662 0xE2BB: 0x7BCF, 6663 0xE2BC: 0x7BB4,
6664 0xE2BD: 0x7BC6, 6665 0xE2BE: 0x7BDD, 6666 0xE2BF: 0x7BE9, 6667 0xE2C0: 0x7C11, 6668 0xE2C1: 0x7C14, 6669 0xE2C2: 0x7BE6, 6670 0xE2C3: 0x7BE5, 6671 0xE2C4: 0x7C60, 6672 0xE2C5: 0x7C00, 6673 0xE2C6: 0x7C07, 6674 0xE2C7: 0x7C13, 6675 0xE2C8: 0x7BF3, 6676 0xE2C9: 0x7BF7, 6677 0xE2CA: 0x7C17, 6678 0xE2CB: 0x7C0D, 6679 0xE2CC: 0x7BF6, 6680 0xE2CD: 0x7C23, 6681 0xE2CE: 0x7C27, 6682 0xE2CF: 0x7C2A, 6683 0xE2D0: 0x7C1F, 6684 0xE2D1: 0x7C37, 6685 0xE2D2: 0x7C2B, 6686 0xE2D3: 0x7C3D, 6687 0xE2D4: 0x7C4C, 6688 0xE2D5: 0x7C43, 6689 0xE2D6: 0x7C54, 6690 0xE2D7: 0x7C4F, 6691 0xE2D8: 0x7C40, 6692 0xE2D9: 0x7C50, 6693 0xE2DA: 0x7C58, 6694 0xE2DB: 0x7C5F, 6695 0xE2DC: 0x7C64, 6696 0xE2DD: 0x7C56, 6697 0xE2DE: 0x7C65, 6698 0xE2DF: 0x7C6C, 6699 0xE2E0: 0x7C75, 6700 0xE2E1: 0x7C83, 6701 0xE2E2: 0x7C90, 6702 0xE2E3: 0x7CA4, 6703 0xE2E4: 0x7CAD, 6704 0xE2E5: 0x7CA2, 6705 0xE2E6: 0x7CAB, 6706 0xE2E7: 0x7CA1, 6707 0xE2E8: 0x7CA8, 6708 0xE2E9: 0x7CB3, 6709 0xE2EA: 0x7CB2, 6710 0xE2EB: 0x7CB1, 6711 0xE2EC: 0x7CAE, 6712 0xE2ED: 0x7CB9, 6713 0xE2EE: 0x7CBD, 6714 0xE2EF: 0x7CC0, 6715 0xE2F0: 0x7CC5, 6716 0xE2F1: 0x7CC2, 6717 0xE2F2: 0x7CD8, 6718 0xE2F3: 0x7CD2, 6719 0xE2F4: 0x7CDC, 6720 0xE2F5: 0x7CE2, 6721 0xE2F6: 0x9B3B, 6722 0xE2F7: 0x7CEF, 6723 0xE2F8: 0x7CF2, 6724 0xE2F9: 0x7CF4, 6725 0xE2FA: 0x7CF6, 6726 0xE2FB: 0x7CFA, 6727 0xE2FC: 0x7D06, 6728 0xE340: 0x7D02, 6729 0xE341: 0x7D1C, 6730 0xE342: 0x7D15, 6731 0xE343: 0x7D0A, 6732 0xE344: 0x7D45, 6733 0xE345: 0x7D4B, 6734 0xE346: 0x7D2E, 6735 0xE347: 0x7D32, 6736 0xE348: 0x7D3F, 6737 0xE349: 0x7D35, 6738 0xE34A: 0x7D46, 6739 0xE34B: 0x7D73, 6740 0xE34C: 0x7D56, 6741 0xE34D: 0x7D4E, 6742 0xE34E: 0x7D72, 6743 0xE34F: 0x7D68, 6744 0xE350: 0x7D6E, 6745 0xE351: 0x7D4F, 6746 0xE352: 0x7D63, 6747 0xE353: 0x7D93, 6748 0xE354: 0x7D89, 6749 0xE355: 0x7D5B, 6750 0xE356: 0x7D8F, 6751 0xE357: 0x7D7D, 6752 0xE358: 0x7D9B, 6753 0xE359: 0x7DBA, 6754 0xE35A: 0x7DAE, 6755 0xE35B: 0x7DA3, 6756 0xE35C: 0x7DB5, 6757 0xE35D: 0x7DC7, 6758 0xE35E: 0x7DBD, 6759 0xE35F: 0x7DAB, 6760 0xE360: 0x7E3D, 6761 0xE361: 0x7DA2, 6762 0xE362: 0x7DAF, 6763 0xE363: 0x7DDC, 6764 0xE364: 0x7DB8, 6765 0xE365: 0x7D9F, 6766 0xE366: 0x7DB0, 6767 0xE367: 0x7DD8, 6768 0xE368: 0x7DDD, 6769 0xE369: 0x7DE4, 6770 0xE36A: 0x7DDE, 6771 0xE36B: 0x7DFB, 6772 0xE36C: 0x7DF2, 6773 0xE36D: 0x7DE1, 6774 0xE36E: 0x7E05, 6775 0xE36F: 0x7E0A, 6776 0xE370: 0x7E23, 6777 0xE371: 0x7E21, 6778 0xE372: 0x7E12, 6779 0xE373: 0x7E31, 6780 0xE374: 0x7E1F, 6781 0xE375: 0x7E09, 6782 0xE376: 0x7E0B, 6783 0xE377: 0x7E22, 6784 0xE378: 0x7E46, 6785 0xE379: 0x7E66, 6786 0xE37A: 0x7E3B, 6787 0xE37B: 0x7E35, 6788 0xE37C: 0x7E39, 6789 0xE37D: 0x7E43, 6790 0xE37E: 0x7E37, 6791 0xE380: 0x7E32, 6792 0xE381: 0x7E3A, 6793 0xE382: 0x7E67, 6794 0xE383: 0x7E5D, 6795 0xE384: 0x7E56, 6796 0xE385: 0x7E5E, 6797 0xE386: 0x7E59, 6798 0xE387: 0x7E5A, 6799 0xE388: 0x7E79, 6800 0xE389: 0x7E6A, 6801 0xE38A: 0x7E69, 6802 0xE38B: 0x7E7C, 6803 0xE38C: 0x7E7B, 6804 0xE38D: 0x7E83, 6805 0xE38E: 0x7DD5, 6806 0xE38F: 0x7E7D, 6807 0xE390: 0x8FAE, 6808 0xE391: 0x7E7F, 6809 0xE392: 0x7E88, 6810 0xE393: 0x7E89, 6811 0xE394: 0x7E8C, 6812 0xE395: 0x7E92, 6813 0xE396: 0x7E90, 6814 0xE397: 0x7E93, 6815 0xE398: 0x7E94, 6816 0xE399: 0x7E96, 6817 0xE39A: 0x7E8E, 6818 0xE39B: 0x7E9B, 6819 0xE39C: 0x7E9C, 6820 0xE39D: 0x7F38, 6821 0xE39E: 0x7F3A, 6822 0xE39F: 0x7F45, 6823 0xE3A0: 0x7F4C, 6824 0xE3A1: 0x7F4D, 6825 0xE3A2: 0x7F4E, 6826 0xE3A3: 0x7F50, 6827 0xE3A4: 0x7F51, 6828 0xE3A5: 0x7F55, 6829 0xE3A6: 0x7F54, 6830 0xE3A7: 0x7F58, 6831 0xE3A8: 0x7F5F, 6832 0xE3A9: 0x7F60, 6833 0xE3AA: 0x7F68, 6834 0xE3AB: 0x7F69, 6835 0xE3AC: 0x7F67, 6836 0xE3AD: 0x7F78, 6837 0xE3AE: 0x7F82, 6838 0xE3AF: 0x7F86, 6839 0xE3B0: 0x7F83, 6840 0xE3B1: 0x7F88, 6841 0xE3B2: 0x7F87, 6842 0xE3B3: 0x7F8C, 6843 0xE3B4: 0x7F94, 6844 0xE3B5: 0x7F9E, 6845 0xE3B6: 0x7F9D, 6846 0xE3B7: 0x7F9A, 6847 0xE3B8: 0x7FA3, 6848 0xE3B9: 0x7FAF, 6849 0xE3BA: 0x7FB2, 6850 0xE3BB: 0x7FB9, 6851 0xE3BC: 0x7FAE, 6852 0xE3BD: 0x7FB6, 6853 0xE3BE: 0x7FB8, 6854 0xE3BF: 0x8B71, 6855 0xE3C0: 0x7FC5, 6856 0xE3C1: 0x7FC6, 6857 0xE3C2: 0x7FCA, 6858 0xE3C3: 0x7FD5, 6859 0xE3C4: 0x7FD4, 6860 0xE3C5: 0x7FE1, 6861 0xE3C6: 0x7FE6, 6862 0xE3C7: 0x7FE9, 6863 0xE3C8: 0x7FF3, 6864 0xE3C9: 0x7FF9, 6865 0xE3CA: 0x98DC, 6866 0xE3CB: 0x8006, 6867 0xE3CC: 0x8004, 6868 0xE3CD: 0x800B, 6869 0xE3CE: 0x8012, 6870 0xE3CF: 0x8018, 6871 0xE3D0: 0x8019,
6872 0xE3D1: 0x801C, 6873 0xE3D2: 0x8021, 6874 0xE3D3: 0x8028, 6875 0xE3D4: 0x803F, 6876 0xE3D5: 0x803B, 6877 0xE3D6: 0x804A, 6878 0xE3D7: 0x8046, 6879 0xE3D8: 0x8052, 6880 0xE3D9: 0x8058, 6881 0xE3DA: 0x805A, 6882 0xE3DB: 0x805F, 6883 0xE3DC: 0x8062, 6884 0xE3DD: 0x8068, 6885 0xE3DE: 0x8073, 6886 0xE3DF: 0x8072, 6887 0xE3E0: 0x8070, 6888 0xE3E1: 0x8076, 6889 0xE3E2: 0x8079, 6890 0xE3E3: 0x807D, 6891 0xE3E4: 0x807F, 6892 0xE3E5: 0x8084, 6893 0xE3E6: 0x8086, 6894 0xE3E7: 0x8085, 6895 0xE3E8: 0x809B, 6896 0xE3E9: 0x8093, 6897 0xE3EA: 0x809A, 6898 0xE3EB: 0x80AD, 6899 0xE3EC: 0x5190, 6900 0xE3ED: 0x80AC, 6901 0xE3EE: 0x80DB, 6902 0xE3EF: 0x80E5, 6903 0xE3F0: 0x80D9, 6904 0xE3F1: 0x80DD, 6905 0xE3F2: 0x80C4, 6906 0xE3F3: 0x80DA, 6907 0xE3F4: 0x80D6, 6908 0xE3F5: 0x8109, 6909 0xE3F6: 0x80EF, 6910 0xE3F7: 0x80F1, 6911 0xE3F8: 0x811B, 6912 0xE3F9: 0x8129, 6913 0xE3FA: 0x8123, 6914 0xE3FB: 0x812F, 6915 0xE3FC: 0x814B, 6916 0xE440: 0x968B, 6917 0xE441: 0x8146, 6918 0xE442: 0x813E, 6919 0xE443: 0x8153, 6920 0xE444: 0x8151, 6921 0xE445: 0x80FC, 6922 0xE446: 0x8171, 6923 0xE447: 0x816E, 6924 0xE448: 0x8165, 6925 0xE449: 0x8166, 6926 0xE44A: 0x8174, 6927 0xE44B: 0x8183, 6928 0xE44C: 0x8188, 6929 0xE44D: 0x818A, 6930 0xE44E: 0x8180, 6931 0xE44F: 0x8182, 6932 0xE450: 0x81A0, 6933 0xE451: 0x8195, 6934 0xE452: 0x81A4, 6935 0xE453: 0x81A3, 6936 0xE454: 0x815F, 6937 0xE455: 0x8193, 6938 0xE456: 0x81A9, 6939 0xE457: 0x81B0, 6940 0xE458: 0x81B5, 6941 0xE459: 0x81BE, 6942 0xE45A: 0x81B8, 6943 0xE45B: 0x81BD, 6944 0xE45C: 0x81C0, 6945 0xE45D: 0x81C2, 6946 0xE45E: 0x81BA, 6947 0xE45F: 0x81C9, 6948 0xE460: 0x81CD, 6949 0xE461: 0x81D1, 6950 0xE462: 0x81D9, 6951 0xE463: 0x81D8, 6952 0xE464: 0x81C8, 6953 0xE465: 0x81DA, 6954 0xE466: 0x81DF, 6955 0xE467: 0x81E0, 6956 0xE468: 0x81E7, 6957 0xE469: 0x81FA, 6958 0xE46A: 0x81FB, 6959 0xE46B: 0x81FE, 6960 0xE46C: 0x8201, 6961 0xE46D: 0x8202, 6962 0xE46E: 0x8205, 6963 0xE46F: 0x8207, 6964 0xE470: 0x820A, 6965 0xE471: 0x820D, 6966 0xE472: 0x8210, 6967 0xE473: 0x8216, 6968 0xE474: 0x8229, 6969 0xE475: 0x822B, 6970 0xE476: 0x8238, 6971 0xE477: 0x8233, 6972 0xE478: 0x8240, 6973 0xE479: 0x8259, 6974 0xE47A: 0x8258, 6975 0xE47B: 0x825D, 6976 0xE47C: 0x825A, 6977 0xE47D: 0x825F, 6978 0xE47E: 0x8264, 6979 0xE480: 0x8262, 6980 0xE481: 0x8268, 6981 0xE482: 0x826A, 6982 0xE483: 0x826B, 6983 0xE484: 0x822E, 6984 0xE485: 0x8271, 6985 0xE486: 0x8277, 6986 0xE487: 0x8278, 6987 0xE488: 0x827E, 6988 0xE489: 0x828D, 6989 0xE48A: 0x8292, 6990 0xE48B: 0x82AB, 6991 0xE48C: 0x829F, 6992 0xE48D: 0x82BB, 6993 0xE48E: 0x82AC, 6994 0xE48F: 0x82E1, 6995 0xE490: 0x82E3, 6996 0xE491: 0x82DF, 6997 0xE492: 0x82D2, 6998 0xE493: 0x82F4, 6999 0xE494: 0x82F3, 7000 0xE495: 0x82FA, 7001 0xE496: 0x8393, 7002 0xE497: 0x8303, 7003 0xE498: 0x82FB, 7004 0xE499: 0x82F9, 7005 0xE49A: 0x82DE, 7006 0xE49B: 0x8306, 7007 0xE49C: 0x82DC, 7008 0xE49D: 0x8309, 7009 0xE49E: 0x82D9, 7010 0xE49F: 0x8335, 7011 0xE4A0: 0x8334, 7012 0xE4A1: 0x8316, 7013 0xE4A2: 0x8332, 7014 0xE4A3: 0x8331, 7015 0xE4A4: 0x8340, 7016 0xE4A5: 0x8339, 7017 0xE4A6: 0x8350, 7018 0xE4A7: 0x8345, 7019 0xE4A8: 0x832F, 7020 0xE4A9: 0x832B, 7021 0xE4AA: 0x8317, 7022 0xE4AB: 0x8318, 7023 0xE4AC: 0x8385, 7024 0xE4AD: 0x839A, 7025 0xE4AE: 0x83AA, 7026 0xE4AF: 0x839F, 7027 0xE4B0: 0x83A2, 7028 0xE4B1: 0x8396, 7029 0xE4B2: 0x8323, 7030 0xE4B3: 0x838E, 7031 0xE4B4: 0x8387, 7032 0xE4B5: 0x838A, 7033 0xE4B6: 0x837C, 7034 0xE4B7: 0x83B5, 7035 0xE4B8: 0x8373, 7036 0xE4B9: 0x8375, 7037 0xE4BA: 0x83A0, 7038 0xE4BB: 0x8389, 7039 0xE4BC: 0x83A8, 7040 0xE4BD: 0x83F4, 7041 0xE4BE: 0x8413, 7042 0xE4BF: 0x83EB, 7043 0xE4C0: 0x83CE, 7044 0xE4C1: 0x83FD, 7045 0xE4C2: 0x8403, 7046 0xE4C3: 0x83D8, 7047 0xE4C4: 0x840B, 7048 0xE4C5: 0x83C1, 7049 0xE4C6: 0x83F7, 7050 0xE4C7: 0x8407, 7051 0xE4C8: 0x83E0, 7052 0xE4C9: 0x83F2, 7053 0xE4CA: 0x840D, 7054 0xE4CB: 0x8422, 7055 0xE4CC: 0x8420, 7056 0xE4CD: 0x83BD, 7057 0xE4CE: 0x8438, 7058 0xE4CF: 0x8506, 7059 0xE4D0: 0x83FB, 7060 0xE4D1: 0x846D, 7061 0xE4D2: 0x842A, 7062 0xE4D3: 0x843C, 7063 0xE4D4: 0x855A, 7064 0xE4D5: 0x8484, 7065 0xE4D6: 0x8477, 7066 0xE4D7: 0x846B, 7067 0xE4D8: 0x84AD, 7068 0xE4D9: 0x846E, 7069 0xE4DA: 0x8482,
7070 0xE4DB: 0x8469, 7071 0xE4DC: 0x8446, 7072 0xE4DD: 0x842C, 7073 0xE4DE: 0x846F, 7074 0xE4DF: 0x8479, 7075 0xE4E0: 0x8435, 7076 0xE4E1: 0x84CA, 7077 0xE4E2: 0x8462, 7078 0xE4E3: 0x84B9, 7079 0xE4E4: 0x84BF, 7080 0xE4E5: 0x849F, 7081 0xE4E6: 0x84D9, 7082 0xE4E7: 0x84CD, 7083 0xE4E8: 0x84BB, 7084 0xE4E9: 0x84DA, 7085 0xE4EA: 0x84D0, 7086 0xE4EB: 0x84C1, 7087 0xE4EC: 0x84C6, 7088 0xE4ED: 0x84D6, 7089 0xE4EE: 0x84A1, 7090 0xE4EF: 0x8521, 7091 0xE4F0: 0x84FF, 7092 0xE4F1: 0x84F4, 7093 0xE4F2: 0x8517, 7094 0xE4F3: 0x8518, 7095 0xE4F4: 0x852C, 7096 0xE4F5: 0x851F, 7097 0xE4F6: 0x8515, 7098 0xE4F7: 0x8514, 7099 0xE4F8: 0x84FC, 7100 0xE4F9: 0x8540, 7101 0xE4FA: 0x8563, 7102 0xE4FB: 0x8558, 7103 0xE4FC: 0x8548, 7104 0xE540: 0x8541, 7105 0xE541: 0x8602, 7106 0xE542: 0x854B, 7107 0xE543: 0x8555, 7108 0xE544: 0x8580, 7109 0xE545: 0x85A4, 7110 0xE546: 0x8588, 7111 0xE547: 0x8591, 7112 0xE548: 0x858A, 7113 0xE549: 0x85A8, 7114 0xE54A: 0x856D, 7115 0xE54B: 0x8594, 7116 0xE54C: 0x859B, 7117 0xE54D: 0x85EA, 7118 0xE54E: 0x8587, 7119 0xE54F: 0x859C, 7120 0xE550: 0x8577, 7121 0xE551: 0x857E, 7122 0xE552: 0x8590, 7123 0xE553: 0x85C9, 7124 0xE554: 0x85BA, 7125 0xE555: 0x85CF, 7126 0xE556: 0x85B9, 7127 0xE557: 0x85D0, 7128 0xE558: 0x85D5, 7129 0xE559: 0x85DD, 7130 0xE55A: 0x85E5, 7131 0xE55B: 0x85DC, 7132 0xE55C: 0x85F9, 7133 0xE55D: 0x860A, 7134 0xE55E: 0x8613, 7135 0xE55F: 0x860B, 7136 0xE560: 0x85FE, 7137 0xE561: 0x85FA, 7138 0xE562: 0x8606, 7139 0xE563: 0x8622, 7140 0xE564: 0x861A, 7141 0xE565: 0x8630, 7142 0xE566: 0x863F, 7143 0xE567: 0x864D, 7144 0xE568: 0x4E55, 7145 0xE569: 0x8654, 7146 0xE56A: 0x865F, 7147 0xE56B: 0x8667, 7148 0xE56C: 0x8671, 7149 0xE56D: 0x8693, 7150 0xE56E: 0x86A3, 7151 0xE56F: 0x86A9, 7152 0xE570: 0x86AA, 7153 0xE571: 0x868B, 7154 0xE572: 0x868C, 7155 0xE573: 0x86B6, 7156 0xE574: 0x86AF, 7157 0xE575: 0x86C4, 7158 0xE576: 0x86C6, 7159 0xE577: 0x86B0, 7160 0xE578: 0x86C9, 7161 0xE579: 0x8823, 7162 0xE57A: 0x86AB, 7163 0xE57B: 0x86D4, 7164 0xE57C: 0x86DE, 7165 0xE57D: 0x86E9, 7166 0xE57E: 0x86EC, 7167 0xE580: 0x86DF, 7168 0xE581: 0x86DB, 7169 0xE582: 0x86EF, 7170 0xE583: 0x8712, 7171 0xE584: 0x8706, 7172 0xE585: 0x8708, 7173 0xE586: 0x8700, 7174 0xE587: 0x8703, 7175 0xE588: 0x86FB, 7176 0xE589: 0x8711, 7177 0xE58A: 0x8709, 7178 0xE58B: 0x870D, 7179 0xE58C: 0x86F9, 7180 0xE58D: 0x870A, 7181 0xE58E: 0x8734, 7182 0xE58F: 0x873F, 7183 0xE590: 0x8737, 7184 0xE591: 0x873B, 7185 0xE592: 0x8725, 7186 0xE593: 0x8729, 7187 0xE594: 0x871A, 7188 0xE595: 0x8760, 7189 0xE596: 0x875F, 7190 0xE597: 0x8778, 7191 0xE598: 0x874C, 7192 0xE599: 0x874E, 7193 0xE59A: 0x8774, 7194 0xE59B: 0x8757, 7195 0xE59C: 0x8768, 7196 0xE59D: 0x876E, 7197 0xE59E: 0x8759, 7198 0xE59F: 0x8753, 7199 0xE5A0: 0x8763, 7200 0xE5A1: 0x876A, 7201 0xE5A2: 0x8805, 7202 0xE5A3: 0x87A2, 7203 0xE5A4: 0x879F, 7204 0xE5A5: 0x8782, 7205 0xE5A6: 0x87AF, 7206 0xE5A7: 0x87CB, 7207 0xE5A8: 0x87BD, 7208 0xE5A9: 0x87C0, 7209 0xE5AA: 0x87D0, 7210 0xE5AB: 0x96D6, 7211 0xE5AC: 0x87AB, 7212 0xE5AD: 0x87C4, 7213 0xE5AE: 0x87B3, 7214 0xE5AF: 0x87C7, 7215 0xE5B0: 0x87C6, 7216 0xE5B1: 0x87BB, 7217 0xE5B2: 0x87EF, 7218 0xE5B3: 0x87F2, 7219 0xE5B4: 0x87E0, 7220 0xE5B5: 0x880F, 7221 0xE5B6: 0x880D, 7222 0xE5B7: 0x87FE, 7223 0xE5B8: 0x87F6, 7224 0xE5B9: 0x87F7, 7225 0xE5BA: 0x880E, 7226 0xE5BB: 0x87D2, 7227 0xE5BC: 0x8811, 7228 0xE5BD: 0x8816, 7229 0xE5BE: 0x8815, 7230 0xE5BF: 0x8822, 7231 0xE5C0: 0x8821, 7232 0xE5C1: 0x8831, 7233 0xE5C2: 0x8836, 7234 0xE5C3: 0x8839, 7235 0xE5C4: 0x8827, 7236 0xE5C5: 0x883B, 7237 0xE5C6: 0x8844, 7238 0xE5C7: 0x8842, 7239 0xE5C8: 0x8852, 7240 0xE5C9: 0x8859, 7241 0xE5CA: 0x885E, 7242 0xE5CB: 0x8862, 7243 0xE5CC: 0x886B, 7244 0xE5CD: 0x8881, 7245 0xE5CE: 0x887E, 7246 0xE5CF: 0x889E, 7247 0xE5D0: 0x8875, 7248 0xE5D1: 0x887D, 7249 0xE5D2: 0x88B5, 7250 0xE5D3: 0x8872, 7251 0xE5D4: 0x8882, 7252 0xE5D5: 0x8897, 7253 0xE5D6: 0x8892, 7254 0xE5D7: 0x88AE, 7255 0xE5D8: 0x8899, 7256 0xE5D9: 0x88A2, 7257 0xE5DA: 0x888D, 7258 0xE5DB: 0x88A4, 7259 0xE5DC: 0x88B0, 7260 0xE5DD: 0x88BF, 7261 0xE5DE: 0x88B1, 7262 0xE5DF: 0x88C3, 7263 0xE5E0: 0x88C4, 7264 0xE5E1: 0x88D4, 7265 0xE5E2: 0x88D8, 7266 0xE5E3: 0x88D9, 7267 0xE5E4: 0x88DD, 7268 0xE5E5: 0x88F9, 7269 0xE5E6: 0x8902, 7270 0xE5E7: 0x88FC, 7271 0xE5E8: 0x88F4, 7272 0xE5E9: 0x88E8, 7273 0xE5EA: 0x88F2, 7274 0xE5EB: 0x8904, 7275 0xE5EC: 0x890C, 7276 0xE5ED: 0x890A, 7277 0xE5EE: 0x8913, 7278 0xE5EF: 0x8943, 7279 0xE5F0: 0x891E, 7280 0xE5F1: 0x8925, 7281 0xE5F2: 0x892A, 7282 0xE5F3: 0x892B, 7283 0xE5F4: 0x8941, 7284 0xE5F5: 0x8944, 7285 0xE5F6: 0x893B, 7286 0xE5F7: 0x8936, 7287 0xE5F8: 0x8938, 7288 0xE5F9: 0x894C, 7289 0xE5FA: 0x891D, 7290 0xE5FB: 0x8960, 7291 0xE5FC: 0x895E, 7292 0xE640: 0x8966, 7293 0xE641: 0x8964, 7294 0xE642: 0x896D, 7295 0xE643: 0x896A, 7296 0xE644: 0x896F, 7297 0xE645: 0x8974, 7298 0xE646: 0x8977, 7299 0xE647: 0x897E, 7300 0xE648: 0x8983, 7301 0xE649: 0x8988, 7302 0xE64A: 0x898A, 7303 0xE64B: 0x8993, 7304 0xE64C: 0x8998, 7305 0xE64D: 0x89A1, 7306 0xE64E: 0x89A9, 7307 0xE64F: 0x89A6, 7308 0xE650: 0x89AC, 7309 0xE651: 0x89AF, 7310 0xE652: 0x89B2, 7311 0xE653: 0x89BA, 7312 0xE654: 0x89BD,
7313 0xE655: 0x89BF, 7314 0xE656: 0x89C0, 7315 0xE657: 0x89DA, 7316 0xE658: 0x89DC, 7317 0xE659: 0x89DD, 7318 0xE65A: 0x89E7, 7319 0xE65B: 0x89F4, 7320 0xE65C: 0x89F8, 7321 0xE65D: 0x8A03, 7322 0xE65E: 0x8A16, 7323 0xE65F: 0x8A10, 7324 0xE660: 0x8A0C, 7325 0xE661: 0x8A1B, 7326 0xE662: 0x8A1D, 7327 0xE663: 0x8A25, 7328 0xE664: 0x8A36, 7329 0xE665: 0x8A41, 7330 0xE666: 0x8A5B, 7331 0xE667: 0x8A52, 7332 0xE668: 0x8A46, 7333 0xE669: 0x8A48, 7334 0xE66A: 0x8A7C, 7335 0xE66B: 0x8A6D, 7336 0xE66C: 0x8A6C, 7337 0xE66D: 0x8A62, 7338 0xE66E: 0x8A85, 7339 0xE66F: 0x8A82, 7340 0xE670: 0x8A84, 7341 0xE671: 0x8AA8, 7342 0xE672: 0x8AA1, 7343 0xE673: 0x8A91, 7344 0xE674: 0x8AA5, 7345 0xE675: 0x8AA6, 7346 0xE676: 0x8A9A, 7347 0xE677: 0x8AA3, 7348 0xE678: 0x8AC4, 7349 0xE679: 0x8ACD, 7350 0xE67A: 0x8AC2, 7351 0xE67B: 0x8ADA, 7352 0xE67C: 0x8AEB, 7353 0xE67D: 0x8AF3, 7354 0xE67E: 0x8AE7, 7355 0xE680: 0x8AE4, 7356 0xE681: 0x8AF1, 7357 0xE682: 0x8B14, 7358 0xE683: 0x8AE0, 7359 0xE684: 0x8AE2, 7360 0xE685: 0x8AF7, 7361 0xE686: 0x8ADE, 7362 0xE687: 0x8ADB, 7363 0xE688: 0x8B0C, 7364 0xE689: 0x8B07, 7365 0xE68A: 0x8B1A, 7366 0xE68B: 0x8AE1, 7367 0xE68C: 0x8B16, 7368 0xE68D: 0x8B10, 7369 0xE68E: 0x8B17, 7370 0xE68F: 0x8B20, 7371 0xE690: 0x8B33, 7372 0xE691: 0x97AB, 7373 0xE692: 0x8B26, 7374 0xE693: 0x8B2B, 7375 0xE694: 0x8B3E, 7376 0xE695: 0x8B28, 7377 0xE696: 0x8B41, 7378 0xE697: 0x8B4C, 7379 0xE698: 0x8B4F, 7380 0xE699: 0x8B4E, 7381 0xE69A: 0x8B49, 7382 0xE69B: 0x8B56, 7383 0xE69C: 0x8B5B, 7384 0xE69D: 0x8B5A, 7385 0xE69E: 0x8B6B, 7386 0xE69F: 0x8B5F, 7387 0xE6A0: 0x8B6C, 7388 0xE6A1: 0x8B6F, 7389 0xE6A2: 0x8B74, 7390 0xE6A3: 0x8B7D, 7391 0xE6A4: 0x8B80, 7392 0xE6A5: 0x8B8C, 7393 0xE6A6: 0x8B8E, 7394 0xE6A7: 0x8B92, 7395 0xE6A8: 0x8B93, 7396 0xE6A9: 0x8B96, 7397 0xE6AA: 0x8B99, 7398 0xE6AB: 0x8B9A, 7399 0xE6AC: 0x8C3A, 7400 0xE6AD: 0x8C41, 7401 0xE6AE: 0x8C3F, 7402 0xE6AF: 0x8C48, 7403 0xE6B0: 0x8C4C, 7404 0xE6B1: 0x8C4E, 7405 0xE6B2: 0x8C50, 7406 0xE6B3: 0x8C55, 7407 0xE6B4: 0x8C62, 7408 0xE6B5: 0x8C6C, 7409 0xE6B6: 0x8C78, 7410 0xE6B7: 0x8C7A, 7411 0xE6B8: 0x8C82, 7412 0xE6B9: 0x8C89, 7413 0xE6BA: 0x8C85, 7414 0xE6BB: 0x8C8A, 7415 0xE6BC: 0x8C8D, 7416 0xE6BD: 0x8C8E, 7417 0xE6BE: 0x8C94, 7418 0xE6BF: 0x8C7C, 7419 0xE6C0: 0x8C98, 7420 0xE6C1: 0x621D, 7421 0xE6C2: 0x8CAD, 7422 0xE6C3: 0x8CAA, 7423 0xE6C4: 0x8CBD, 7424 0xE6C5: 0x8CB2, 7425 0xE6C6: 0x8CB3, 7426 0xE6C7: 0x8CAE, 7427 0xE6C8: 0x8CB6, 7428 0xE6C9: 0x8CC8, 7429 0xE6CA: 0x8CC1, 7430 0xE6CB: 0x8CE4, 7431 0xE6CC: 0x8CE3, 7432 0xE6CD: 0x8CDA, 7433 0xE6CE: 0x8CFD, 7434 0xE6CF: 0x8CFA, 7435 0xE6D0: 0x8CFB, 7436 0xE6D1: 0x8D04, 7437 0xE6D2: 0x8D05, 7438 0xE6D3: 0x8D0A, 7439 0xE6D4: 0x8D07, 7440 0xE6D5: 0x8D0F, 7441 0xE6D6: 0x8D0D, 7442 0xE6D7: 0x8D10, 7443 0xE6D8: 0x9F4E, 7444 0xE6D9: 0x8D13, 7445 0xE6DA: 0x8CCD, 7446 0xE6DB: 0x8D14, 7447 0xE6DC: 0x8D16, 7448 0xE6DD: 0x8D67, 7449 0xE6DE: 0x8D6D, 7450 0xE6DF: 0x8D71, 7451 0xE6E0: 0x8D73, 7452 0xE6E1: 0x8D81, 7453 0xE6E2: 0x8D99, 7454 0xE6E3: 0x8DC2, 7455 0xE6E4: 0x8DBE, 7456 0xE6E5: 0x8DBA, 7457 0xE6E6: 0x8DCF, 7458 0xE6E7: 0x8DDA, 7459 0xE6E8: 0x8DD6, 7460 0xE6E9: 0x8DCC, 7461 0xE6EA: 0x8DDB, 7462 0xE6EB: 0x8DCB, 7463 0xE6EC: 0x8DEA, 7464 0xE6ED: 0x8DEB, 7465 0xE6EE: 0x8DDF, 7466 0xE6EF: 0x8DE3, 7467 0xE6F0: 0x8DFC, 7468 0xE6F1: 0x8E08, 7469 0xE6F2: 0x8E09, 7470 0xE6F3: 0x8DFF, 7471 0xE6F4: 0x8E1D, 7472 0xE6F5: 0x8E1E, 7473 0xE6F6: 0x8E10, 7474 0xE6F7: 0x8E1F, 7475 0xE6F8: 0x8E42, 7476 0xE6F9: 0x8E35, 7477 0xE6FA: 0x8E30, 7478 0xE6FB: 0x8E34, 7479 0xE6FC: 0x8E4A, 7480 0xE740: 0x8E47, 7481 0xE741: 0x8E49, 7482 0xE742: 0x8E4C, 7483 0xE743: 0x8E50, 7484 0xE744: 0x8E48, 7485 0xE745: 0x8E59, 7486 0xE746: 0x8E64, 7487 0xE747: 0x8E60, 7488 0xE748: 0x8E2A, 7489 0xE749: 0x8E63, 7490 0xE74A: 0x8E55, 7491 0xE74B: 0x8E76, 7492 0xE74C: 0x8E72, 7493 0xE74D: 0x8E7C, 7494 0xE74E: 0x8E81, 7495 0xE74F: 0x8E87, 7496 0xE750: 0x8E85, 7497 0xE751: 0x8E84, 7498 0xE752: 0x8E8B, 7499 0xE753: 0x8E8A, 7500 0xE754: 0x8E93, 7501 0xE755: 0x8E91, 7502 0xE756: 0x8E94, 7503 0xE757: 0x8E99, 7504 0xE758: 0x8EAA, 7505 0xE759: 0x8EA1, 7506 0xE75A: 0x8EAC, 7507 0xE75B: 0x8EB0, 7508 0xE75C: 0x8EC6, 7509 0xE75D: 0x8EB1, 7510 0xE75E: 0x8EBE, 7511 0xE75F: 0x8EC5, 7512 0xE760: 0x8EC8, 7513 0xE761: 0x8ECB, 7514 0xE762: 0x8EDB, 7515 0xE763: 0x8EE3, 7516 0xE764: 0x8EFC, 7517 0xE765: 0x8EFB, 7518 0xE766: 0x8EEB, 7519 0xE767: 0x8EFE, 7520 0xE768: 0x8F0A, 7521 0xE769: 0x8F05, 7522 0xE76A: 0x8F15, 7523 0xE76B: 0x8F12, 7524 0xE76C: 0x8F19, 7525 0xE76D: 0x8F13, 7526 0xE76E: 0x8F1C, 7527 0xE76F: 0x8F1F, 7528 0xE770: 0x8F1B, 7529 0xE771: 0x8F0C, 7530 0xE772: 0x8F26, 7531 0xE773: 0x8F33, 7532 0xE774: 0x8F3B, 7533 0xE775: 0x8F39, 7534 0xE776: 0x8F45, 7535 0xE777: 0x8F42, 7536 0xE778: 0x8F3E, 7537 0xE779: 0x8F4C, 7538 0xE77A: 0x8F49, 7539 0xE77B: 0x8F46, 7540 0xE77C: 0x8F4E, 7541 0xE77D: 0x8F57, 7542 0xE77E: 0x8F5C, 7543 0xE780: 0x8F62, 7544 0xE781: 0x8F63, 7545 0xE782: 0x8F64, 7546 0xE783: 0x8F9C, 7547 0xE784: 0x8F9F, 7548 0xE785: 0x8FA3, 7549 0xE786: 0x8FAD, 7550 0xE787: 0x8FAF, 7551 0xE788: 0x8FB7, 7552 0xE789: 0x8FDA, 7553 0xE78A: 0x8FE5, 7554 0xE78B: 0x8FE2, 7555 0xE78C: 0x8FEA, 7556 0xE78D: 0x8FEF, 7557 0xE78E: 0x9087, 7558 0xE78F: 0x8FF4, 7559 0xE790: 0x9005,
7560 0xE791: 0x8FF9, 7561 0xE792: 0x8FFA, 7562 0xE793: 0x9011, 7563 0xE794: 0x9015, 7564 0xE795: 0x9021, 7565 0xE796: 0x900D, 7566 0xE797: 0x901E, 7567 0xE798: 0x9016, 7568 0xE799: 0x900B, 7569 0xE79A: 0x9027, 7570 0xE79B: 0x9036, 7571 0xE79C: 0x9035, 7572 0xE79D: 0x9039, 7573 0xE79E: 0x8FF8, 7574 0xE79F: 0x904F, 7575 0xE7A0: 0x9050, 7576 0xE7A1: 0x9051, 7577 0xE7A2: 0x9052, 7578 0xE7A3: 0x900E, 7579 0xE7A4: 0x9049, 7580 0xE7A5: 0x903E, 7581 0xE7A6: 0x9056, 7582 0xE7A7: 0x9058, 7583 0xE7A8: 0x905E, 7584 0xE7A9: 0x9068, 7585 0xE7AA: 0x906F, 7586 0xE7AB: 0x9076, 7587 0xE7AC: 0x96A8, 7588 0xE7AD: 0x9072, 7589 0xE7AE: 0x9082, 7590 0xE7AF: 0x907D, 7591 0xE7B0: 0x9081, 7592 0xE7B1: 0x9080, 7593 0xE7B2: 0x908A, 7594 0xE7B3: 0x9089, 7595 0xE7B4: 0x908F, 7596 0xE7B5: 0x90A8, 7597 0xE7B6: 0x90AF, 7598 0xE7B7: 0x90B1, 7599 0xE7B8: 0x90B5, 7600 0xE7B9: 0x90E2, 7601 0xE7BA: 0x90E4, 7602 0xE7BB: 0x6248, 7603 0xE7BC: 0x90DB, 7604 0xE7BD: 0x9102, 7605 0xE7BE: 0x9112, 7606 0xE7BF: 0x9119, 7607 0xE7C0: 0x9132, 7608 0xE7C1: 0x9130, 7609 0xE7C2: 0x914A, 7610 0xE7C3: 0x9156, 7611 0xE7C4: 0x9158, 7612 0xE7C5: 0x9163, 7613 0xE7C6: 0x9165, 7614 0xE7C7: 0x9169, 7615 0xE7C8: 0x9173, 7616 0xE7C9: 0x9172, 7617 0xE7CA: 0x918B, 7618 0xE7CB: 0x9189, 7619 0xE7CC: 0x9182, 7620 0xE7CD: 0x91A2, 7621 0xE7CE: 0x91AB, 7622 0xE7CF: 0x91AF, 7623 0xE7D0: 0x91AA, 7624 0xE7D1: 0x91B5, 7625 0xE7D2: 0x91B4, 7626 0xE7D3: 0x91BA, 7627 0xE7D4: 0x91C0, 7628 0xE7D5: 0x91C1, 7629 0xE7D6: 0x91C9, 7630 0xE7D7: 0x91CB, 7631 0xE7D8: 0x91D0, 7632 0xE7D9: 0x91D6, 7633 0xE7DA: 0x91DF, 7634 0xE7DB: 0x91E1, 7635 0xE7DC: 0x91DB, 7636 0xE7DD: 0x91FC, 7637 0xE7DE: 0x91F5, 7638 0xE7DF: 0x91F6, 7639 0xE7E0: 0x921E, 7640 0xE7E1: 0x91FF, 7641 0xE7E2: 0x9214, 7642 0xE7E3: 0x922C, 7643 0xE7E4: 0x9215, 7644 0xE7E5: 0x9211, 7645 0xE7E6: 0x925E, 7646 0xE7E7: 0x9257, 7647 0xE7E8: 0x9245, 7648 0xE7E9: 0x9249, 7649 0xE7EA: 0x9264, 7650 0xE7EB: 0x9248, 7651 0xE7EC: 0x9295, 7652 0xE7ED: 0x923F, 7653 0xE7EE: 0x924B, 7654 0xE7EF: 0x9250, 7655 0xE7F0: 0x929C, 7656 0xE7F1: 0x9296, 7657 0xE7F2: 0x9293, 7658 0xE7F3: 0x929B, 7659 0xE7F4: 0x925A, 7660 0xE7F5: 0x92CF, 7661 0xE7F6: 0x92B9, 7662 0xE7F7: 0x92B7, 7663 0xE7F8: 0x92E9, 7664 0xE7F9: 0x930F, 7665 0xE7FA: 0x92FA, 7666 0xE7FB: 0x9344, 7667 0xE7FC: 0x932E, 7668 0xE840: 0x9319, 7669 0xE841: 0x9322, 7670 0xE842: 0x931A, 7671 0xE843: 0x9323, 7672 0xE844: 0x933A, 7673 0xE845: 0x9335, 7674 0xE846: 0x933B, 7675 0xE847: 0x935C, 7676 0xE848: 0x9360, 7677 0xE849: 0x937C, 7678 0xE84A: 0x936E, 7679 0xE84B: 0x9356, 7680 0xE84C: 0x93B0, 7681 0xE84D: 0x93AC, 7682 0xE84E: 0x93AD, 7683 0xE84F: 0x9394, 7684 0xE850: 0x93B9, 7685 0xE851: 0x93D6, 7686 0xE852: 0x93D7, 7687 0xE853: 0x93E8, 7688 0xE854: 0x93E5, 7689 0xE855: 0x93D8, 7690 0xE856: 0x93C3, 7691 0xE857: 0x93DD, 7692 0xE858: 0x93D0, 7693 0xE859: 0x93C8, 7694 0xE85A: 0x93E4, 7695 0xE85B: 0x941A, 7696 0xE85C: 0x9414, 7697 0xE85D: 0x9413, 7698 0xE85E: 0x9403, 7699 0xE85F: 0x9407, 7700 0xE860: 0x9410, 7701 0xE861: 0x9436, 7702 0xE862: 0x942B, 7703 0xE863: 0x9435, 7704 0xE864: 0x9421, 7705 0xE865: 0x943A, 7706 0xE866: 0x9441, 7707 0xE867: 0x9452, 7708 0xE868: 0x9444, 7709 0xE869: 0x945B, 7710 0xE86A: 0x9460, 7711 0xE86B: 0x9462, 7712 0xE86C: 0x945E, 7713 0xE86D: 0x946A, 7714 0xE86E: 0x9229, 7715 0xE86F: 0x9470, 7716 0xE870: 0x9475, 7717 0xE871: 0x9477, 7718 0xE872: 0x947D, 7719 0xE873: 0x945A, 7720 0xE874: 0x947C, 7721 0xE875: 0x947E, 7722 0xE876: 0x9481, 7723 0xE877: 0x947F, 7724 0xE878: 0x9582, 7725 0xE879: 0x9587, 7726 0xE87A: 0x958A, 7727 0xE87B: 0x9594, 7728 0xE87C: 0x9596, 7729 0xE87D: 0x9598, 7730 0xE87E: 0x9599, 7731 0xE880: 0x95A0, 7732 0xE881: 0x95A8, 7733 0xE882: 0x95A7, 7734 0xE883: 0x95AD, 7735 0xE884: 0x95BC, 7736 0xE885: 0x95BB, 7737 0xE886: 0x95B9, 7738 0xE887: 0x95BE, 7739 0xE888: 0x95CA, 7740 0xE889: 0x6FF6, 7741 0xE88A: 0x95C3, 7742 0xE88B: 0x95CD, 7743 0xE88C: 0x95CC, 7744 0xE88D: 0x95D5, 7745 0xE88E: 0x95D4, 7746 0xE88F: 0x95D6, 7747 0xE890: 0x95DC, 7748 0xE891: 0x95E1, 7749 0xE892: 0x95E5, 7750 0xE893: 0x95E2, 7751 0xE894: 0x9621, 7752 0xE895: 0x9628, 7753 0xE896: 0x962E, 7754 0xE897: 0x962F, 7755 0xE898: 0x9642, 7756 0xE899: 0x964C, 7757 0xE89A: 0x964F, 7758 0xE89B: 0x964B, 7759 0xE89C: 0x9677, 7760 0xE89D: 0x965C, 7761 0xE89E: 0x965E, 7762 0xE89F: 0x965D, 7763 0xE8A0: 0x965F, 7764 0xE8A1: 0x9666, 7765 0xE8A2: 0x9672, 7766 0xE8A3: 0x966C, 7767 0xE8A4: 0x968D, 7768 0xE8A5: 0x9698, 7769 0xE8A6: 0x9695, 7770 0xE8A7: 0x9697, 7771 0xE8A8: 0x96AA, 7772 0xE8A9: 0x96A7, 7773 0xE8AA: 0x96B1,
7774 0xE8AB: 0x96B2, 7775 0xE8AC: 0x96B0, 7776 0xE8AD: 0x96B4, 7777 0xE8AE: 0x96B6, 7778 0xE8AF: 0x96B8, 7779 0xE8B0: 0x96B9, 7780 0xE8B1: 0x96CE, 7781 0xE8B2: 0x96CB, 7782 0xE8B3: 0x96C9, 7783 0xE8B4: 0x96CD, 7784 0xE8B5: 0x894D, 7785 0xE8B6: 0x96DC, 7786 0xE8B7: 0x970D, 7787 0xE8B8: 0x96D5, 7788 0xE8B9: 0x96F9, 7789 0xE8BA: 0x9704, 7790 0xE8BB: 0x9706, 7791 0xE8BC: 0x9708, 7792 0xE8BD: 0x9713, 7793 0xE8BE: 0x970E, 7794 0xE8BF: 0x9711, 7795 0xE8C0: 0x970F, 7796 0xE8C1: 0x9716, 7797 0xE8C2: 0x9719, 7798 0xE8C3: 0x9724, 7799 0xE8C4: 0x972A, 7800 0xE8C5: 0x9730, 7801 0xE8C6: 0x9739, 7802 0xE8C7: 0x973D, 7803 0xE8C8: 0x973E, 7804 0xE8C9: 0x9744, 7805 0xE8CA: 0x9746, 7806 0xE8CB: 0x9748, 7807 0xE8CC: 0x9742, 7808 0xE8CD: 0x9749, 7809 0xE8CE: 0x975C, 7810 0xE8CF: 0x9760, 7811 0xE8D0: 0x9764, 7812 0xE8D1: 0x9766, 7813 0xE8D2: 0x9768, 7814 0xE8D3: 0x52D2, 7815 0xE8D4: 0x976B, 7816 0xE8D5: 0x9771, 7817 0xE8D6: 0x9779, 7818 0xE8D7: 0x9785, 7819 0xE8D8: 0x977C, 7820 0xE8D9: 0x9781, 7821 0xE8DA: 0x977A, 7822 0xE8DB: 0x9786, 7823 0xE8DC: 0x978B, 7824 0xE8DD: 0x978F, 7825 0xE8DE: 0x9790, 7826 0xE8DF: 0x979C, 7827 0xE8E0: 0x97A8, 7828 0xE8E1: 0x97A6, 7829 0xE8E2: 0x97A3, 7830 0xE8E3: 0x97B3, 7831 0xE8E4: 0x97B4, 7832 0xE8E5: 0x97C3, 7833 0xE8E6: 0x97C6, 7834 0xE8E7: 0x97C8, 7835 0xE8E8: 0x97CB, 7836 0xE8E9: 0x97DC, 7837 0xE8EA: 0x97ED, 7838 0xE8EB: 0x9F4F, 7839 0xE8EC: 0x97F2, 7840 0xE8ED: 0x7ADF, 7841 0xE8EE: 0x97F6, 7842 0xE8EF: 0x97F5, 7843 0xE8F0: 0x980F, 7844 0xE8F1: 0x980C, 7845 0xE8F2: 0x9838, 7846 0xE8F3: 0x9824, 7847 0xE8F4: 0x9821, 7848 0xE8F5: 0x9837, 7849 0xE8F6: 0x983D, 7850 0xE8F7: 0x9846, 7851 0xE8F8: 0x984F, 7852 0xE8F9: 0x984B, 7853 0xE8FA: 0x986B, 7854 0xE8FB: 0x986F, 7855 0xE8FC: 0x9870, 7856 0xE940: 0x9871, 7857 0xE941: 0x9874, 7858 0xE942: 0x9873, 7859 0xE943: 0x98AA, 7860 0xE944: 0x98AF, 7861 0xE945: 0x98B1, 7862 0xE946: 0x98B6, 7863 0xE947: 0x98C4, 7864 0xE948: 0x98C3, 7865 0xE949: 0x98C6, 7866 0xE94A: 0x98E9, 7867 0xE94B: 0x98EB, 7868 0xE94C: 0x9903, 7869 0xE94D: 0x9909, 7870 0xE94E: 0x9912, 7871 0xE94F: 0x9914, 7872 0xE950: 0x9918, 7873 0xE951: 0x9921, 7874 0xE952: 0x991D, 7875 0xE953: 0x991E, 7876 0xE954: 0x9924, 7877 0xE955: 0x9920, 7878 0xE956: 0x992C, 7879 0xE957: 0x992E, 7880 0xE958: 0x993D, 7881 0xE959: 0x993E, 7882 0xE95A: 0x9942, 7883 0xE95B: 0x9949, 7884 0xE95C: 0x9945, 7885 0xE95D: 0x9950, 7886 0xE95E: 0x994B, 7887 0xE95F: 0x9951, 7888 0xE960: 0x9952, 7889 0xE961: 0x994C, 7890 0xE962: 0x9955, 7891 0xE963: 0x9997, 7892 0xE964: 0x9998, 7893 0xE965: 0x99A5, 7894 0xE966: 0x99AD, 7895 0xE967: 0x99AE, 7896 0xE968: 0x99BC, 7897 0xE969: 0x99DF, 7898 0xE96A: 0x99DB, 7899 0xE96B: 0x99DD, 7900 0xE96C: 0x99D8, 7901 0xE96D: 0x99D1, 7902 0xE96E: 0x99ED, 7903 0xE96F: 0x99EE, 7904 0xE970: 0x99F1, 7905 0xE971: 0x99F2, 7906 0xE972: 0x99FB, 7907 0xE973: 0x99F8, 7908 0xE974: 0x9A01, 7909 0xE975: 0x9A0F, 7910 0xE976: 0x9A05, 7911 0xE977: 0x99E2, 7912 0xE978: 0x9A19, 7913 0xE979: 0x9A2B, 7914 0xE97A: 0x9A37, 7915 0xE97B: 0x9A45, 7916 0xE97C: 0x9A42, 7917 0xE97D: 0x9A40, 7918 0xE97E: 0x9A43, 7919 0xE980: 0x9A3E, 7920 0xE981: 0x9A55, 7921 0xE982: 0x9A4D, 7922 0xE983: 0x9A5B, 7923 0xE984: 0x9A57, 7924 0xE985: 0x9A5F, 7925 0xE986: 0x9A62, 7926 0xE987: 0x9A65, 7927 0xE988: 0x9A64, 7928 0xE989: 0x9A69, 7929 0xE98A: 0x9A6B, 7930 0xE98B: 0x9A6A, 7931 0xE98C: 0x9AAD, 7932 0xE98D: 0x9AB0, 7933 0xE98E: 0x9ABC, 7934 0xE98F: 0x9AC0, 7935 0xE990: 0x9ACF, 7936 0xE991: 0x9AD1, 7937 0xE992: 0x9AD3, 7938 0xE993: 0x9AD4, 7939 0xE994: 0x9ADE, 7940 0xE995: 0x9ADF, 7941 0xE996: 0x9AE2, 7942 0xE997: 0x9AE3, 7943 0xE998: 0x9AE6, 7944 0xE999: 0x9AEF, 7945 0xE99A: 0x9AEB, 7946 0xE99B: 0x9AEE, 7947 0xE99C: 0x9AF4, 7948 0xE99D: 0x9AF1, 7949 0xE99E: 0x9AF7, 7950 0xE99F: 0x9AFB, 7951 0xE9A0: 0x9B06, 7952 0xE9A1: 0x9B18, 7953 0xE9A2: 0x9B1A, 7954 0xE9A3: 0x9B1F, 7955 0xE9A4: 0x9B22, 7956 0xE9A5: 0x9B23, 7957 0xE9A6: 0x9B25, 7958 0xE9A7: 0x9B27, 7959 0xE9A8: 0x9B28, 7960 0xE9A9: 0x9B29, 7961 0xE9AA: 0x9B2A, 7962 0xE9AB: 0x9B2E, 7963 0xE9AC: 0x9B2F, 7964 0xE9AD: 0x9B32, 7965 0xE9AE: 0x9B44, 7966 0xE9AF: 0x9B43, 7967 0xE9B0: 0x9B4F, 7968 0xE9B1: 0x9B4D, 7969 0xE9B2: 0x9B4E, 7970 0xE9B3: 0x9B51, 7971 0xE9B4: 0x9B58, 7972 0xE9B5: 0x9B74, 7973 0xE9B6: 0x9B93, 7974 0xE9B7: 0x9B83, 7975 0xE9B8: 0x9B91, 7976 0xE9B9: 0x9B96, 7977 0xE9BA: 0x9B97, 7978 0xE9BB: 0x9B9F, 7979 0xE9BC: 0x9BA0, 7980 0xE9BD: 0x9BA8, 7981 0xE9BE: 0x9BB4, 7982 0xE9BF: 0x9BC0, 7983 0xE9C0: 0x9BCA, 7984 0xE9C1: 0x9BB9, 7985 0xE9C2: 0x9BC6, 7986 0xE9C3: 0x9BCF, 7987 0xE9C4: 0x9BD1, 7988 0xE9C5: 0x9BD2, 7989 0xE9C6: 0x9BE3,
7990 0xE9C7: 0x9BE2, 7991 0xE9C8: 0x9BE4, 7992 0xE9C9: 0x9BD4, 7993 0xE9CA: 0x9BE1, 7994 0xE9CB: 0x9C3A, 7995 0xE9CC: 0x9BF2, 7996 0xE9CD: 0x9BF1, 7997 0xE9CE: 0x9BF0, 7998 0xE9CF: 0x9C15, 7999 0xE9D0: 0x9C14, 8000 0xE9D1: 0x9C09, 8001 0xE9D2: 0x9C13, 8002 0xE9D3: 0x9C0C, 8003 0xE9D4: 0x9C06, 8004 0xE9D5: 0x9C08, 8005 0xE9D6: 0x9C12, 8006 0xE9D7: 0x9C0A, 8007 0xE9D8: 0x9C04, 8008 0xE9D9: 0x9C2E, 8009 0xE9DA: 0x9C1B, 8010 0xE9DB: 0x9C25, 8011 0xE9DC: 0x9C24, 8012 0xE9DD: 0x9C21, 8013 0xE9DE: 0x9C30, 8014 0xE9DF: 0x9C47, 8015 0xE9E0: 0x9C32, 8016 0xE9E1: 0x9C46, 8017 0xE9E2: 0x9C3E, 8018 0xE9E3: 0x9C5A, 8019 0xE9E4: 0x9C60, 8020 0xE9E5: 0x9C67, 8021 0xE9E6: 0x9C76, 8022 0xE9E7: 0x9C78, 8023 0xE9E8: 0x9CE7, 8024 0xE9E9: 0x9CEC, 8025 0xE9EA: 0x9CF0, 8026 0xE9EB: 0x9D09, 8027 0xE9EC: 0x9D08, 8028 0xE9ED: 0x9CEB, 8029 0xE9EE: 0x9D03, 8030 0xE9EF: 0x9D06, 8031 0xE9F0: 0x9D2A, 8032 0xE9F1: 0x9D26, 8033 0xE9F2: 0x9DAF, 8034 0xE9F3: 0x9D23, 8035 0xE9F4: 0x9D1F, 8036 0xE9F5: 0x9D44, 8037 0xE9F6: 0x9D15, 8038 0xE9F7: 0x9D12, 8039 0xE9F8: 0x9D41, 8040 0xE9F9: 0x9D3F, 8041 0xE9FA: 0x9D3E, 8042 0xE9FB: 0x9D46, 8043 0xE9FC: 0x9D48, 8044 0xEA40: 0x9D5D, 8045 0xEA41: 0x9D5E, 8046 0xEA42: 0x9D64, 8047 0xEA43: 0x9D51, 8048 0xEA44: 0x9D50, 8049 0xEA45: 0x9D59, 8050 0xEA46: 0x9D72, 8051 0xEA47: 0x9D89, 8052 0xEA48: 0x9D87, 8053 0xEA49: 0x9DAB, 8054 0xEA4A: 0x9D6F, 8055 0xEA4B: 0x9D7A, 8056 0xEA4C: 0x9D9A, 8057 0xEA4D: 0x9DA4, 8058 0xEA4E: 0x9DA9, 8059 0xEA4F: 0x9DB2, 8060 0xEA50: 0x9DC4, 8061 0xEA51: 0x9DC1, 8062 0xEA52: 0x9DBB, 8063 0xEA53: 0x9DB8, 8064 0xEA54: 0x9DBA, 8065 0xEA55: 0x9DC6, 8066 0xEA56: 0x9DCF, 8067 0xEA57: 0x9DC2, 8068 0xEA58: 0x9DD9, 8069 0xEA59: 0x9DD3, 8070 0xEA5A: 0x9DF8, 8071 0xEA5B: 0x9DE6, 8072 0xEA5C: 0x9DED, 8073 0xEA5D: 0x9DEF, 8074 0xEA5E: 0x9DFD, 8075 0xEA5F: 0x9E1A, 8076 0xEA60: 0x9E1B, 8077 0xEA61: 0x9E1E, 8078 0xEA62: 0x9E75, 8079 0xEA63: 0x9E79, 8080 0xEA64: 0x9E7D, 8081 0xEA65: 0x9E81, 8082 0xEA66: 0x9E88, 8083 0xEA67: 0x9E8B, 8084 0xEA68: 0x9E8C, 8085 0xEA69: 0x9E92, 8086 0xEA6A: 0x9E95, 8087 0xEA6B: 0x9E91, 8088 0xEA6C: 0x9E9D, 8089 0xEA6D: 0x9EA5, 8090 0xEA6E: 0x9EA9, 8091 0xEA6F: 0x9EB8, 8092 0xEA70: 0x9EAA, 8093 0xEA71: 0x9EAD, 8094 0xEA72: 0x9761, 8095 0xEA73: 0x9ECC, 8096 0xEA74: 0x9ECE, 8097 0xEA75: 0x9ECF, 8098 0xEA76: 0x9ED0, 8099 0xEA77: 0x9ED4, 8100 0xEA78: 0x9EDC, 8101 0xEA79: 0x9EDE, 8102 0xEA7A: 0x9EDD, 8103 0xEA7B: 0x9EE0, 8104 0xEA7C: 0x9EE5, 8105 0xEA7D: 0x9EE8, 8106 0xEA7E: 0x9EEF, 8107 0xEA80: 0x9EF4, 8108 0xEA81: 0x9EF6, 8109 0xEA82: 0x9EF7, 8110 0xEA83: 0x9EF9, 8111 0xEA84: 0x9EFB, 8112 0xEA85: 0x9EFC, 8113 0xEA86: 0x9EFD, 8114 0xEA87: 0x9F07, 8115 0xEA88: 0x9F08, 8116 0xEA89: 0x76B7, 8117 0xEA8A: 0x9F15, 8118 0xEA8B: 0x9F21, 8119 0xEA8C: 0x9F2C, 8120 0xEA8D: 0x9F3E, 8121 0xEA8E: 0x9F4A, 8122 0xEA8F: 0x9F52, 8123 0xEA90: 0x9F54, 8124 0xEA91: 0x9F63, 8125 0xEA92: 0x9F5F, 8126 0xEA93: 0x9F60, 8127 0xEA94: 0x9F61, 8128 0xEA95: 0x9F66, 8129 0xEA96: 0x9F67, 8130 0xEA97: 0x9F6C, 8131 0xEA98: 0x9F6A, 8132 0xEA99: 0x9F77, 8133 0xEA9A: 0x9F72, 8134 0xEA9B: 0x9F76, 8135 0xEA9C: 0x9F95, 8136 0xEA9D: 0x9F9C, 8137 0xEA9E: 0x9FA0, 8138 0xEA9F: 0x582F, 8139 0xEAA0: 0x69C7, 8140 0xEAA1: 0x9059, 8141 0xEAA2: 0x7464, 8142 0xEAA3: 0x51DC, 8143 0xEAA4: 0x7199, 8144};
vendor: 21,137 bytes, lines 8145-8769
8145 8146 8147/***/ }), 8148/* 9 */ 8149/***/ (function(module, exports, __webpack_require__) { 8150 8151"use strict"; 8152 8153Object.defineProperty(exports, "__esModule", { value: true }); 8154var GenericGF_1 = __webpack_require__(1); 8155var GenericGFPoly_1 = __webpack_require__(2); 8156function runEuclideanAlgorithm(field, a, b, R) { 8157 var _a; 8158 // Assume a's degree is >= b's 8159 if (a.degree() < b.degree()) { 8160 _a = [b, a], a = _a[0], b = _a[1]; 8161 } 8162 var rLast = a; 8163 var r = b; 8164 var tLast = field.zero; 8165 var t = field.one; 8166 // Run Euclidean algorithm until r's degree is less than R/2 8167 while (r.degree() >= R / 2) { 8168 var rLastLast = rLast; 8169 var tLastLast = tLast; 8170 rLast = r; 8171 tLast = t; 8172 // Divide rLastLast by rLast, with quotient in q and remainder in r 8173 if (rLast.isZero()) { 8174 // Euclidean algorithm already terminated? 8175 return null; 8176 } 8177 r = rLastLast; 8178 var q = field.zero; 8179 var denominatorLeadingTerm = rLast.getCoefficient(rLast.degree()); 8180 var dltInverse = field.inverse(denominatorLeadingTerm); 8181 while (r.degree() >= rLast.degree() && !r.isZero()) { 8182 var degreeDiff = r.degree() - rLast.degree(); 8183 var scale = field.multiply(r.getCoefficient(r.degree()), dltInverse); 8184 q = q.addOrSubtract(field.buildMonomial(degreeDiff, scale)); 8185 r = r.addOrSubtract(rLast.multiplyByMonomial(degreeDiff, scale)); 8186 } 8187 t = q.multiplyPoly(tLast).addOrSubtract(tLastLast); 8188 if (r.degree() >= rLast.degree()) { 8189 return null; 8190 } 8191 } 8192 var sigmaTildeAtZero = t.getCoefficient(0); 8193 if (sigmaTildeAtZero === 0) { 8194 return null; 8195 } 8196 var inverse = field.inverse(sigmaTildeAtZero); 8197 return [t.multiply(inverse), r.multiply(inverse)]; 8198} 8199function findErrorLocations(field, errorLocator) { 8200 // This is a direct application of Chien's search 8201 var numErrors = errorLocator.degree(); 8202 if (numErrors === 1) { 8203 return [errorLocator.getCoefficient(1)]; 8204 } 8205 var result = new Array(numErrors); 8206 var errorCount = 0; 8207 for (var i = 1; i < field.size && errorCount < numErrors; i++) { 8208 if (errorLocator.evaluateAt(i) === 0) { 8209 result[errorCount] = field.inverse(i); 8210 errorCount++; 8211 } 8212 } 8213 if (errorCount !== numErrors) { 8214 return null; 8215 } 8216 return result; 8217} 8218function findErrorMagnitudes(field, errorEvaluator, errorLocations) { 8219 // This is directly applying Forney's Formula 8220 var s = errorLocations.length; 8221 var result = new Array(s); 8222 for (var i = 0; i < s; i++) { 8223 var xiInverse = field.inverse(errorLocations[i]); 8224 var denominator = 1; 8225 for (var j = 0; j < s; j++) { 8226 if (i !== j) { 8227 denominator = field.multiply(denominator, GenericGF_1.addOrSubtractGF(1, field.multiply(errorLocations[j], xiInverse))); 8228 } 8229 } 8230 result[i] = field.multiply(errorEvaluator.evaluateAt(xiInverse), field.inverse(denominator)); 8231 if (field.generatorBase !== 0) { 8232 result[i] = field.multiply(result[i], xiInverse); 8233 } 8234 } 8235 return result; 8236} 8237function decode(bytes, twoS) { 8238 var outputBytes = new Uint8ClampedArray(bytes.length); 8239 outputBytes.set(bytes); 8240 var field = new GenericGF_1.default(0x011D, 256, 0); // x^8 + x^4 + x^3 + x^2 + 1 8241 var poly = new GenericGFPoly_1.default(field, outputBytes); 8242 var syndromeCoefficients = new Uint8ClampedArray(twoS); 8243 var error = false; 8244 for (var s = 0; s < twoS; s++) { 8245 var evaluation = poly.evaluateAt(field.exp(s + field.generatorBase)); 8246 syndromeCoefficients[syndromeCoefficients.length - 1 - s] = evaluation; 8247 if (evaluation !== 0) { 8248 error = true; 8249 } 8250 } 8251 if (!error) { 8252 return outputBytes; 8253 } 8254 var syndrome = new GenericGFPoly_1.default(field, syndromeCoefficients); 8255 var sigmaOmega = runEuclideanAlgorithm(field, field.buildMonomial(twoS, 1), syndrome, twoS); 8256 if (sigmaOmega === null) { 8257 return null; 8258 } 8259 var errorLocations = findErrorLocations(field, sigmaOmega[0]); 8260 if (errorLocations == null) { 8261 return null; 8262 } 8263 var errorMagnitudes = findErrorMagnitudes(field, sigmaOmega[1], errorLocations); 8264 for (var i = 0; i < errorLocations.length; i++) { 8265 var position = outputBytes.length - 1 - field.log(errorLocations[i]); 8266 if (position < 0) { 8267 return null; 8268 } 8269 outputBytes[position] = GenericGF_1.addOrSubtractGF(outputBytes[position], errorMagnitudes[i]); 8270 } 8271 return outputBytes; 8272} 8273exports.decode = decode; 8274 8275 8276/***/ }), 8277/* 10 */ 8278/***/ (function(module, exports, __webpack_require__) { 8279 8280"use strict"; 8281 8282Object.defineProperty(exports, "__esModule", { value: true }); 8283exports.VERSIONS = [ 8284 { 8285 infoBits: null, 8286 versionNumber: 1, 8287 alignmentPatternCenters: [], 8288 errorCorrectionLevels: [ 8289 { 8290 ecCodewordsPerBlock: 7, 8291 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 19 }], 8292 }, 8293 { 8294 ecCodewordsPerBlock: 10, 8295 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 16 }], 8296 }, 8297 { 8298 ecCodewordsPerBlock: 13, 8299 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 13 }], 8300 }, 8301 { 8302 ecCodewordsPerBlock: 17, 8303 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 9 }], 8304 }, 8305 ], 8306 }, 8307 { 8308 infoBits: null, 8309 versionNumber: 2, 8310 alignmentPatternCenters: [6, 18], 8311 errorCorrectionLevels: [ 8312 { 8313 ecCodewordsPerBlock: 10, 8314 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 34 }], 8315 }, 8316 { 8317 ecCodewordsPerBlock: 16, 8318 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 28 }], 8319 }, 8320 { 8321 ecCodewordsPerBlock: 22, 8322 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 22 }], 8323 }, 8324 { 8325 ecCodewordsPerBlock: 28, 8326 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 16 }], 8327 }, 8328 ], 8329 }, 8330 { 8331 infoBits: null, 8332 versionNumber: 3, 8333 alignmentPatternCenters: [6, 22], 8334 errorCorrectionLevels: [ 8335 { 8336 ecCodewordsPerBlock: 15, 8337 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 55 }], 8338 }, 8339 { 8340 ecCodewordsPerBlock: 26, 8341 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 44 }], 8342 }, 8343 { 8344 ecCodewordsPerBlock: 18, 8345 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 17 }], 8346 }, 8347 { 8348 ecCodewordsPerBlock: 22, 8349 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 13 }], 8350 }, 8351 ], 8352 }, 8353 { 8354 infoBits: null, 8355 versionNumber: 4, 8356 alignmentPatternCenters: [6, 26], 8357 errorCorrectionLevels: [ 8358 { 8359 ecCodewordsPerBlock: 20, 8360 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 80 }], 8361 }, 8362 { 8363 ecCodewordsPerBlock: 18, 8364 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 32 }], 8365 }, 8366 { 8367 ecCodewordsPerBlock: 26, 8368 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 24 }], 8369 }, 8370 { 8371 ecCodewordsPerBlock: 16, 8372 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 9 }], 8373 }, 8374 ], 8375 }, 8376 { 8377 infoBits: null, 8378 versionNumber: 5, 8379 alignmentPatternCenters: [6, 30], 8380 errorCorrectionLevels: [ 8381 { 8382 ecCodewordsPerBlock: 26, 8383 ecBlocks: [{ numBlocks: 1, dataCodewordsPerBlock: 108 }], 8384 }, 8385 { 8386 ecCodewordsPerBlock: 24, 8387 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 43 }], 8388 }, 8389 { 8390 ecCodewordsPerBlock: 18, 8391 ecBlocks: [ 8392 { numBlocks: 2, dataCodewordsPerBlock: 15 }, 8393 { numBlocks: 2, dataCodewordsPerBlock: 16 }, 8394 ], 8395 }, 8396 { 8397 ecCodewordsPerBlock: 22, 8398 ecBlocks: [ 8399 { numBlocks: 2, dataCodewordsPerBlock: 11 }, 8400 { numBlocks: 2, dataCodewordsPerBlock: 12 }, 8401 ], 8402 }, 8403 ], 8404 }, 8405 { 8406 infoBits: null, 8407 versionNumber: 6, 8408 alignmentPatternCenters: [6, 34], 8409 errorCorrectionLevels: [ 8410 { 8411 ecCodewordsPerBlock: 18, 8412 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 68 }], 8413 }, 8414 { 8415 ecCodewordsPerBlock: 16, 8416 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 27 }], 8417 }, 8418 { 8419 ecCodewordsPerBlock: 24, 8420 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 19 }], 8421 }, 8422 { 8423 ecCodewordsPerBlock: 28, 8424 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 15 }], 8425 }, 8426 ], 8427 }, 8428 { 8429 infoBits: 0x07C94, 8430 versionNumber: 7, 8431 alignmentPatternCenters: [6, 22, 38], 8432 errorCorrectionLevels: [ 8433 { 8434 ecCodewordsPerBlock: 20, 8435 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 78 }], 8436 }, 8437 { 8438 ecCodewordsPerBlock: 18, 8439 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 31 }], 8440 }, 8441 { 8442 ecCodewordsPerBlock: 18, 8443 ecBlocks: [ 8444 { numBlocks: 2, dataCodewordsPerBlock: 14 }, 8445 { numBlocks: 4, dataCodewordsPerBlock: 15 }, 8446 ], 8447 }, 8448 { 8449 ecCodewordsPerBlock: 26, 8450 ecBlocks: [ 8451 { numBlocks: 4, dataCodewordsPerBlock: 13 }, 8452 { numBlocks: 1, dataCodewordsPerBlock: 14 }, 8453 ], 8454 }, 8455 ], 8456 }, 8457 { 8458 infoBits: 0x085BC, 8459 versionNumber: 8, 8460 alignmentPatternCenters: [6, 24, 42], 8461 errorCorrectionLevels: [ 8462 { 8463 ecCodewordsPerBlock: 24, 8464 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 97 }], 8465 }, 8466 { 8467 ecCodewordsPerBlock: 22, 8468 ecBlocks: [ 8469 { numBlocks: 2, dataCodewordsPerBlock: 38 }, 8470 { numBlocks: 2, dataCodewordsPerBlock: 39 }, 8471 ], 8472 }, 8473 { 8474 ecCodewordsPerBlock: 22, 8475 ecBlocks: [ 8476 { numBlocks: 4, dataCodewordsPerBlock: 18 }, 8477 { numBlocks: 2, dataCodewordsPerBlock: 19 }, 8478 ], 8479 }, 8480 { 8481 ecCodewordsPerBlock: 26, 8482 ecBlocks: [ 8483 { numBlocks: 4, dataCodewordsPerBlock: 14 }, 8484 { numBlocks: 2, dataCodewordsPerBlock: 15 }, 8485 ], 8486 }, 8487 ], 8488 }, 8489 { 8490 infoBits: 0x09A99, 8491 versionNumber: 9, 8492 alignmentPatternCenters: [6, 26, 46], 8493 errorCorrectionLevels: [ 8494 { 8495 ecCodewordsPerBlock: 30, 8496 ecBlocks: [{ numBlocks: 2, dataCodewordsPerBlock: 116 }], 8497 }, 8498 { 8499 ecCodewordsPerBlock: 22, 8500 ecBlocks: [ 8501 { numBlocks: 3, dataCodewordsPerBlock: 36 }, 8502 { numBlocks: 2, dataCodewordsPerBlock: 37 }, 8503 ], 8504 }, 8505 { 8506 ecCodewordsPerBlock: 20, 8507 ecBlocks: [ 8508 { numBlocks: 4, dataCodewordsPerBlock: 16 }, 8509 { numBlocks: 4, dataCodewordsPerBlock: 17 }, 8510 ], 8511 }, 8512 { 8513 ecCodewordsPerBlock: 24, 8514 ecBlocks: [ 8515 { numBlocks: 4, dataCodewordsPerBlock: 12 }, 8516 { numBlocks: 4, dataCodewordsPerBlock: 13 }, 8517 ], 8518 }, 8519 ], 8520 }, 8521 { 8522 infoBits: 0x0A4D3, 8523 versionNumber: 10, 8524 alignmentPatternCenters: [6, 28, 50], 8525 errorCorrectionLevels: [ 8526 { 8527 ecCodewordsPerBlock: 18, 8528 ecBlocks: [ 8529 { numBlocks: 2, dataCodewordsPerBlock: 68 }, 8530 { numBlocks: 2, dataCodewordsPerBlock: 69 }, 8531 ], 8532 }, 8533 { 8534 ecCodewordsPerBlock: 26, 8535 ecBlocks: [ 8536 { numBlocks: 4, dataCodewordsPerBlock: 43 }, 8537 { numBlocks: 1, dataCodewordsPerBlock: 44 }, 8538 ], 8539 }, 8540 { 8541 ecCodewordsPerBlock: 24, 8542 ecBlocks: [ 8543 { numBlocks: 6, dataCodewordsPerBlock: 19 }, 8544 { numBlocks: 2, dataCodewordsPerBlock: 20 }, 8545 ], 8546 }, 8547 { 8548 ecCodewordsPerBlock: 28, 8549 ecBlocks: [ 8550 { numBlocks: 6, dataCodewordsPerBlock: 15 }, 8551 { numBlocks: 2, dataCodewordsPerBlock: 16 }, 8552 ], 8553 }, 8554 ], 8555 }, 8556 { 8557 infoBits: 0x0BBF6, 8558 versionNumber: 11, 8559 alignmentPatternCenters: [6, 30, 54], 8560 errorCorrectionLevels: [ 8561 { 8562 ecCodewordsPerBlock: 20, 8563 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 81 }], 8564 }, 8565 { 8566 ecCodewordsPerBlock: 30, 8567 ecBlocks: [ 8568 { numBlocks: 1, dataCodewordsPerBlock: 50 }, 8569 { numBlocks: 4, dataCodewordsPerBlock: 51 }, 8570 ], 8571 }, 8572 { 8573 ecCodewordsPerBlock: 28, 8574 ecBlocks: [ 8575 { numBlocks: 4, dataCodewordsPerBlock: 22 }, 8576 { numBlocks: 4, dataCodewordsPerBlock: 23 }, 8577 ], 8578 }, 8579 { 8580 ecCodewordsPerBlock: 24, 8581 ecBlocks: [ 8582 { numBlocks: 3, dataCodewordsPerBlock: 12 }, 8583 { numBlocks: 8, dataCodewordsPerBlock: 13 }, 8584 ], 8585 }, 8586 ], 8587 }, 8588 { 8589 infoBits: 0x0C762, 8590 versionNumber: 12, 8591 alignmentPatternCenters: [6, 32, 58], 8592 errorCorrectionLevels: [ 8593 { 8594 ecCodewordsPerBlock: 24, 8595 ecBlocks: [ 8596 { numBlocks: 2, dataCodewordsPerBlock: 92 }, 8597 { numBlocks: 2, dataCodewordsPerBlock: 93 }, 8598 ], 8599 }, 8600 { 8601 ecCodewordsPerBlock: 22, 8602 ecBlocks: [ 8603 { numBlocks: 6, dataCodewordsPerBlock: 36 }, 8604 { numBlocks: 2, dataCodewordsPerBlock: 37 }, 8605 ], 8606 }, 8607 { 8608 ecCodewordsPerBlock: 26, 8609 ecBlocks: [ 8610 { numBlocks: 4, dataCodewordsPerBlock: 20 }, 8611 { numBlocks: 6, dataCodewordsPerBlock: 21 }, 8612 ], 8613 }, 8614 { 8615 ecCodewordsPerBlock: 28, 8616 ecBlocks: [ 8617 { numBlocks: 7, dataCodewordsPerBlock: 14 }, 8618 { numBlocks: 4, dataCodewordsPerBlock: 15 }, 8619 ], 8620 }, 8621 ], 8622 }, 8623 { 8624 infoBits: 0x0D847, 8625 versionNumber: 13, 8626 alignmentPatternCenters: [6, 34, 62], 8627 errorCorrectionLevels: [ 8628 { 8629 ecCodewordsPerBlock: 26, 8630 ecBlocks: [{ numBlocks: 4, dataCodewordsPerBlock: 107 }], 8631 }, 8632 { 8633 ecCodewordsPerBlock: 22, 8634 ecBlocks: [ 8635 { numBlocks: 8, dataCodewordsPerBlock: 37 }, 8636 { numBlocks: 1, dataCodewordsPerBlock: 38 }, 8637 ], 8638 }, 8639 { 8640 ecCodewordsPerBlock: 24, 8641 ecBlocks: [ 8642 { numBlocks: 8, dataCodewordsPerBlock: 20 }, 8643 { numBlocks: 4, dataCodewordsPerBlock: 21 }, 8644 ], 8645 }, 8646 { 8647 ecCodewordsPerBlock: 22, 8648 ecBlocks: [ 8649 { numBlocks: 12, dataCodewordsPerBlock: 11 }, 8650 { numBlocks: 4, dataCodewordsPerBlock: 12 }, 8651 ], 8652 }, 8653 ], 8654 }, 8655 { 8656 infoBits: 0x0E60D, 8657 versionNumber: 14, 8658 alignmentPatternCenters: [6, 26, 46, 66], 8659 errorCorrectionLevels: [ 8660 { 8661 ecCodewordsPerBlock: 30, 8662 ecBlocks: [ 8663 { numBlocks: 3, dataCodewordsPerBlock: 115 }, 8664 { numBlocks: 1, dataCodewordsPerBlock: 116 }, 8665 ], 8666 }, 8667 { 8668 ecCodewordsPerBlock: 24, 8669 ecBlocks: [ 8670 { numBlocks: 4, dataCodewordsPerBlock: 40 }, 8671 { numBlocks: 5, dataCodewordsPerBlock: 41 }, 8672 ], 8673 }, 8674 { 8675 ecCodewordsPerBlock: 20, 8676 ecBlocks: [ 8677 { numBlocks: 11, dataCodewordsPerBlock: 16 }, 8678 { numBlocks: 5, dataCodewordsPerBlock: 17 }, 8679 ], 8680 }, 8681 { 8682 ecCodewordsPerBlock: 24, 8683 ecBlocks: [ 8684 { numBlocks: 11, dataCodewordsPerBlock: 12 }, 8685 { numBlocks: 5, dataCodewordsPerBlock: 13 }, 8686 ], 8687 }, 8688 ], 8689 }, 8690 { 8691 infoBits: 0x0F928, 8692 versionNumber: 15, 8693 alignmentPatternCenters: [6, 26, 48, 70], 8694 errorCorrectionLevels: [ 8695 { 8696 ecCodewordsPerBlock: 22, 8697 ecBlocks: [ 8698 { numBlocks: 5, dataCodewordsPerBlock: 87 }, 8699 { numBlocks: 1, dataCodewordsPerBlock: 88 }, 8700 ], 8701 }, 8702 { 8703 ecCodewordsPerBlock: 24, 8704 ecBlocks: [ 8705 { numBlocks: 5, dataCodewordsPerBlock: 41 }, 8706 { numBlocks: 5, dataCodewordsPerBlock: 42 }, 8707 ], 8708 }, 8709 { 8710 ecCodewordsPerBlock: 30, 8711 ecBlocks: [ 8712 { numBlocks: 5, dataCodewordsPerBlock: 24 }, 8713 { numBlocks: 7, dataCodewordsPerBlock: 25 }, 8714 ], 8715 }, 8716 { 8717 ecCodewordsPerBlock: 24, 8718 ecBlocks: [ 8719 { numBlocks: 11, dataCodewordsPerBlock: 12 }, 8720 { numBlocks: 7, dataCodewordsPerBlock: 13 }, 8721 ], 8722 }, 8723 ], 8724 }, 8725 { 8726 infoBits: 0x10B78, 8727 versionNumber: 16, 8728 alignmentPatternCenters: [6, 26, 50, 74], 8729 errorCorrectionLevels: [ 8730 { 8731 ecCodewordsPerBlock: 24, 8732 ecBlocks: [ 8733 { numBlocks: 5, dataCodewordsPerBlock: 98 }, 8734 { numBlocks: 1, dataCodewordsPerBlock: 99 }, 8735 ], 8736 }, 8737 { 8738 ecCodewordsPerBlock: 28, 8739 ecBlocks: [ 8740 { numBlocks: 7, dataCodewordsPerBlock: 45 }, 8741 { numBlocks: 3, dataCodewordsPerBlock: 46 }, 8742 ], 8743 }, 8744 { 8745 ecCodewordsPerBlock: 24, 8746 ecBlocks: [ 8747 { numBlocks: 15, dataCodewordsPerBlock: 19 }, 8748 { numBlocks: 2, dataCodewordsPerBlock: 20 }, 8749 ], 8750 }, 8751 { 8752 ecCodewordsPerBlock: 30, 8753 ecBlocks: [ 8754 { numBlocks: 3, dataCodewordsPerBlock: 15 }, 8755 { numBlocks: 13, dataCodewordsPerBlock: 16 }, 8756 ], 8757 }, 8758 ], 8759 }, 8760 { 8761 infoBits: 0x1145D, 8762 versionNumber: 17, 8763 alignmentPatternCenters: [6, 30, 54, 78], 8764 errorCorrectionLevels: [ 8765 { 8766 ecCodewordsPerBlock: 28, 8767 ecBlocks: [ 8768 { numBlocks: 1, dataCodewordsPerBlock: 107 }, 8769
8769 { numBlocks: 5, dataCodewordsPerBlock: 108 }, 8770 ], 8771 }, 8772 { 8773 ecCodewordsPerBlock: 28, 8774 ecBlocks: [ 8775 { numBlocks: 10, dataCodewordsPerBlock: 46 }, 8776 { numBlocks: 1, dataCodewordsPerBlock: 47 }, 8777 ], 8778 }, 8779 { 8780 ecCodewordsPerBlock: 28, 8781 ecBlocks: [ 8782 { numBlocks: 1, dataCodewordsPerBlock: 22 }, 8783 { numBlocks: 15, dataCodewordsPerBlock: 23 }, 8784 ], 8785 }, 8786 { 8787 ecCodewordsPerBlock: 28, 8788 ecBlocks: [ 8789 { numBlocks: 2, dataCodewordsPerBlock: 14 }, 8790 { numBlocks: 17, dataCodewordsPerBlock: 15 }, 8791 ], 8792 }, 8793 ], 8794 }, 8795 { 8796 infoBits: 0x12A17, 8797 versionNumber: 18, 8798 alignmentPatternCenters: [6, 30, 56, 82], 8799 errorCorrectionLevels: [ 8800 { 8801 ecCodewordsPerBlock: 30, 8802 ecBlocks: [ 8803 { numBlocks: 5, dataCodewordsPerBlock: 120 }, 8804 { numBlocks: 1, dataCodewordsPerBlock: 121 }, 8805 ], 8806 }, 8807 { 8808 ecCodewordsPerBlock: 26, 8809 ecBlocks: [ 8810 { numBlocks: 9, dataCodewordsPerBlock: 43 }, 8811 { numBlocks: 4, dataCodewordsPerBlock: 44 }, 8812 ], 8813 }, 8814 { 8815 ecCodewordsPerBlock: 28, 8816 ecBlocks: [ 8817 { numBlocks: 17, dataCodewordsPerBlock: 22 }, 8818 { numBlocks: 1, dataCodewordsPerBlock: 23 }, 8819 ], 8820 }, 8821 { 8822 ecCodewordsPerBlock: 28, 8823 ecBlocks: [ 8824 { numBlocks: 2, dataCodewordsPerBlock: 14 }, 8825 { numBlocks: 19, dataCodewordsPerBlock: 15 }, 8826 ], 8827 }, 8828 ], 8829 }, 8830 { 8831 infoBits: 0x13532, 8832 versionNumber: 19, 8833 alignmentPatternCenters: [6, 30, 58, 86], 8834 errorCorrectionLevels: [ 8835 { 8836 ecCodewordsPerBlock: 28, 8837 ecBlocks: [ 8838 { numBlocks: 3, dataCodewordsPerBlock: 113 }, 8839 { numBlocks: 4, dataCodewordsPerBlock: 114 }, 8840 ], 8841 }, 8842 { 8843 ecCodewordsPerBlock: 26, 8844 ecBlocks: [ 8845 { numBlocks: 3, dataCodewordsPerBlock: 44 }, 8846 { numBlocks: 11, dataCodewordsPerBlock: 45 }, 8847 ], 8848 }, 8849 { 8850 ecCodewordsPerBlock: 26, 8851 ecBlocks: [ 8852 { numBlocks: 17, dataCodewordsPerBlock: 21 }, 8853 { numBlocks: 4, dataCodewordsPerBlock: 22 }, 8854 ], 8855 }, 8856 { 8857 ecCodewordsPerBlock: 26, 8858 ecBlocks: [ 8859 { numBlocks: 9, dataCodewordsPerBlock: 13 }, 8860 { numBlocks: 16, dataCodewordsPerBlock: 14 }, 8861 ], 8862 }, 8863 ], 8864 }, 8865 { 8866 infoBits: 0x149A6, 8867 versionNumber: 20, 8868 alignmentPatternCenters: [6, 34, 62, 90], 8869 errorCorrectionLevels: [ 8870 { 8871 ecCodewordsPerBlock: 28, 8872 ecBlocks: [ 8873 { numBlocks: 3, dataCodewordsPerBlock: 107 }, 8874 { numBlocks: 5, dataCodewordsPerBlock: 108 }, 8875 ], 8876 }, 8877 { 8878 ecCodewordsPerBlock: 26, 8879 ecBlocks: [ 8880 { numBlocks: 3, dataCodewordsPerBlock: 41 }, 8881 { numBlocks: 13, dataCodewordsPerBlock: 42 }, 8882 ], 8883 }, 8884 { 8885 ecCodewordsPerBlock: 30, 8886 ecBlocks: [ 8887 { numBlocks: 15, dataCodewordsPerBlock: 24 }, 8888 { numBlocks: 5, dataCodewordsPerBlock: 25 }, 8889 ], 8890 }, 8891 { 8892 ecCodewordsPerBlock: 28, 8893 ecBlocks: [ 8894 { numBlocks: 15, dataCodewordsPerBlock: 15 }, 8895 { numBlocks: 10, dataCodewordsPerBlock: 16 }, 8896 ], 8897 }, 8898 ], 8899 }, 8900 { 8901 infoBits: 0x15683, 8902 versionNumber: 21, 8903 alignmentPatternCenters: [6, 28, 50, 72, 94], 8904 errorCorrectionLevels: [ 8905 { 8906 ecCodewordsPerBlock: 28, 8907 ecBlocks: [ 8908 { numBlocks: 4, dataCodewordsPerBlock: 116 }, 8909 { numBlocks: 4, dataCodewordsPerBlock: 117 }, 8910 ], 8911 }, 8912 { 8913 ecCodewordsPerBlock: 26, 8914 ecBlocks: [{ numBlocks: 17, dataCodewordsPerBlock: 42 }], 8915 }, 8916 { 8917 ecCodewordsPerBlock: 28, 8918 ecBlocks: [ 8919 { numBlocks: 17, dataCodewordsPerBlock: 22 }, 8920 { numBlocks: 6, dataCodewordsPerBlock: 23 }, 8921 ], 8922 }, 8923 { 8924 ecCodewordsPerBlock: 30, 8925 ecBlocks: [ 8926 { numBlocks: 19, dataCodewordsPerBlock: 16 }, 8927 { numBlocks: 6, dataCodewordsPerBlock: 17 }, 8928 ], 8929 }, 8930 ], 8931 }, 8932 { 8933 infoBits: 0x168C9, 8934 versionNumber: 22, 8935 alignmentPatternCenters: [6, 26, 50, 74, 98], 8936 errorCorrectionLevels: [ 8937 { 8938 ecCodewordsPerBlock: 28, 8939 ecBlocks: [ 8940 { numBlocks: 2, dataCodewordsPerBlock: 111 }, 8941 { numBlocks: 7, dataCodewordsPerBlock: 112 }, 8942 ], 8943 }, 8944 { 8945 ecCodewordsPerBlock: 28, 8946 ecBlocks: [{ numBlocks: 17, dataCodewordsPerBlock: 46 }], 8947 }, 8948 { 8949 ecCodewordsPerBlock: 30, 8950 ecBlocks: [ 8951 { numBlocks: 7, dataCodewordsPerBlock: 24 }, 8952 { numBlocks: 16, dataCodewordsPerBlock: 25 }, 8953 ], 8954 }, 8955 { 8956 ecCodewordsPerBlock: 24, 8957 ecBlocks: [{ numBlocks: 34, dataCodewordsPerBlock: 13 }], 8958 }, 8959 ], 8960 }, 8961 { 8962 infoBits: 0x177EC, 8963 versionNumber: 23, 8964 alignmentPatternCenters: [6, 30, 54, 74, 102], 8965 errorCorrectionLevels: [ 8966 { 8967 ecCodewordsPerBlock: 30, 8968 ecBlocks: [ 8969 { numBlocks: 4, dataCodewordsPerBlock: 121 }, 8970 { numBlocks: 5, dataCodewordsPerBlock: 122 }, 8971 ], 8972 }, 8973 { 8974 ecCodewordsPerBlock: 28, 8975 ecBlocks: [ 8976 { numBlocks: 4, dataCodewordsPerBlock: 47 }, 8977 { numBlocks: 14, dataCodewordsPerBlock: 48 }, 8978 ], 8979 }, 8980 { 8981 ecCodewordsPerBlock: 30, 8982 ecBlocks: [ 8983 { numBlocks: 11, dataCodewordsPerBlock: 24 }, 8984 { numBlocks: 14, dataCodewordsPerBlock: 25 }, 8985 ], 8986 }, 8987 { 8988 ecCodewordsPerBlock: 30, 8989 ecBlocks: [ 8990 { numBlocks: 16, dataCodewordsPerBlock: 15 }, 8991 { numBlocks: 14, dataCodewordsPerBlock: 16 }, 8992 ], 8993 }, 8994 ], 8995 }, 8996 { 8997 infoBits: 0x18EC4, 8998 versionNumber: 24, 8999 alignmentPatternCenters: [6, 28, 54, 80, 106], 9000 errorCorrectionLevels: [ 9001 { 9002 ecCodewordsPerBlock: 30, 9003 ecBlocks: [ 9004 { numBlocks: 6, dataCodewordsPerBlock: 117 }, 9005 { numBlocks: 4, dataCodewordsPerBlock: 118 }, 9006 ], 9007 }, 9008 { 9009 ecCodewordsPerBlock: 28, 9010 ecBlocks: [ 9011 { numBlocks: 6, dataCodewordsPerBlock: 45 }, 9012 { numBlocks: 14, dataCodewordsPerBlock: 46 }, 9013 ], 9014 }, 9015 { 9016 ecCodewordsPerBlock: 30, 9017 ecBlocks: [ 9018 { numBlocks: 11, dataCodewordsPerBlock: 24 }, 9019 { numBlocks: 16, dataCodewordsPerBlock: 25 }, 9020 ], 9021 }, 9022 { 9023 ecCodewordsPerBlock: 30, 9024 ecBlocks: [ 9025 { numBlocks: 30, dataCodewordsPerBlock: 16 }, 9026 { numBlocks: 2, dataCodewordsPerBlock: 17 }, 9027 ], 9028 }, 9029 ], 9030 }, 9031 { 9032 infoBits: 0x191E1, 9033 versionNumber: 25, 9034 alignmentPatternCenters: [6, 32, 58, 84, 110], 9035 errorCorrectionLevels: [ 9036 { 9037 ecCodewordsPerBlock: 26, 9038 ecBlocks: [ 9039 { numBlocks: 8, dataCodewordsPerBlock: 106 }, 9040 { numBlocks: 4, dataCodewordsPerBlock: 107 }, 9041 ], 9042 }, 9043 { 9044 ecCodewordsPerBlock: 28, 9045 ecBlocks: [ 9046 { numBlocks: 8, dataCodewordsPerBlock: 47 }, 9047 { numBlocks: 13, dataCodewordsPerBlock: 48 }, 9048 ], 9049 }, 9050 { 9051 ecCodewordsPerBlock: 30, 9052 ecBlocks: [ 9053 { numBlocks: 7, dataCodewordsPerBlock: 24 }, 9054 { numBlocks: 22, dataCodewordsPerBlock: 25 }, 9055 ], 9056 }, 9057 { 9058 ecCodewordsPerBlock: 30, 9059 ecBlocks: [ 9060 { numBlocks: 22, dataCodewordsPerBlock: 15 }, 9061 { numBlocks: 13, dataCodewordsPerBlock: 16 }, 9062 ], 9063 }, 9064 ], 9065 }, 9066 { 9067 infoBits: 0x1AFAB, 9068 versionNumber: 26, 9069 alignmentPatternCenters: [6, 30, 58, 86, 114], 9070 errorCorrectionLevels: [ 9071 { 9072 ecCodewordsPerBlock: 28, 9073 ecBlocks: [ 9074 { numBlocks: 10, dataCodewordsPerBlock: 114 }, 9075 { numBlocks: 2, dataCodewordsPerBlock: 115 }, 9076 ], 9077 }, 9078 { 9079 ecCodewordsPerBlock: 28, 9080 ecBlocks: [ 9081 { numBlocks: 19, dataCodewordsPerBlock: 46 }, 9082 { numBlocks: 4, dataCodewordsPerBlock: 47 }, 9083 ], 9084 }, 9085 { 9086 ecCodewordsPerBlock: 28, 9087 ecBlocks: [ 9088 { numBlocks: 28, dataCodewordsPerBlock: 22 }, 9089 { numBlocks: 6, dataCodewordsPerBlock: 23 }, 9090 ], 9091 }, 9092 { 9093 ecCodewordsPerBlock: 30, 9094 ecBlocks: [ 9095 { numBlocks: 33, dataCodewordsPerBlock: 16 }, 9096 { numBlocks: 4, dataCodewordsPerBlock: 17 }, 9097 ], 9098 }, 9099 ], 9100 }, 9101 { 9102 infoBits: 0x1B08E, 9103 versionNumber: 27, 9104 alignmentPatternCenters: [6, 34, 62, 90, 118], 9105 errorCorrectionLevels: [ 9106 { 9107 ecCodewordsPerBlock: 30, 9108 ecBlocks: [ 9109 { numBlocks: 8, dataCodewordsPerBlock: 122 }, 9110 { numBlocks: 4, dataCodewordsPerBlock: 123 }, 9111 ], 9112 }, 9113 { 9114 ecCodewordsPerBlock: 28, 9115 ecBlocks: [ 9116 { numBlocks: 22, dataCodewordsPerBlock: 45 }, 9117 { numBlocks: 3, dataCodewordsPerBlock: 46 }, 9118 ], 9119 }, 9120 { 9121 ecCodewordsPerBlock: 30, 9122 ecBlocks: [ 9123 { numBlocks: 8, dataCodewordsPerBlock: 23 }, 9124 { numBlocks: 26, dataCodewordsPerBlock: 24 }, 9125 ], 9126 }, 9127 { 9128 ecCodewordsPerBlock: 30, 9129 ecBlocks: [ 9130 { numBlocks: 12, dataCodewordsPerBlock: 15 }, 9131 { numBlocks: 28, dataCodewordsPerBlock: 16 }, 9132 ], 9133 }, 9134 ], 9135 }, 9136 { 9137 infoBits: 0x1CC1A, 9138 versionNumber: 28, 9139 alignmentPatternCenters: [6, 26, 50, 74, 98, 122], 9140 errorCorrectionLevels: [ 9141 { 9142 ecCodewordsPerBlock: 30, 9143 ecBlocks: [ 9144 { numBlocks: 3, dataCodewordsPerBlock: 117 }, 9145 { numBlocks: 10, dataCodewordsPerBlock: 118 }, 9146 ], 9147 }, 9148 { 9149 ecCodewordsPerBlock: 28, 9150 ecBlocks: [ 9151 { numBlocks: 3, dataCodewordsPerBlock: 45 }, 9152 { numBlocks: 23, dataCodewordsPerBlock: 46 }, 9153 ], 9154 }, 9155 { 9156 ecCodewordsPerBlock: 30, 9157 ecBlocks: [ 9158 { numBlocks: 4, dataCodewordsPerBlock: 24 }, 9159 { numBlocks: 31, dataCodewordsPerBlock: 25 }, 9160 ], 9161 }, 9162 { 9163 ecCodewordsPerBlock: 30, 9164 ecBlocks: [ 9165 { numBlocks: 11, dataCodewordsPerBlock: 15 }, 9166 { numBlocks: 31, dataCodewordsPerBlock: 16 }, 9167 ], 9168 }, 9169 ], 9170 }, 9171 { 9172 infoBits: 0x1D33F, 9173 versionNumber: 29, 9174 alignmentPatternCenters: [6, 30, 54, 78, 102, 126], 9175 errorCorrectionLevels: [ 9176 { 9177 ecCodewordsPerBlock: 30, 9178 ecBlocks: [ 9179 { numBlocks: 7, dataCodewordsPerBlock: 116 }, 9180 { numBlocks: 7, dataCodewordsPerBlock: 117 }, 9181 ], 9182 }, 9183 { 9184 ecCodewordsPerBlock: 28, 9185 ecBlocks: [ 9186 { numBlocks: 21, dataCodewordsPerBlock: 45 }, 9187 { numBlocks: 7, dataCodewordsPerBlock: 46 }, 9188 ], 9189 }, 9190 { 9191 ecCodewordsPerBlock: 30, 9192 ecBlocks: [ 9193 { numBlocks: 1, dataCodewordsPerBlock: 23 }, 9194 { numBlocks: 37, dataCodewordsPerBlock: 24 }, 9195 ], 9196 }, 9197 { 9198 ecCodewordsPerBlock: 30, 9199 ecBlocks: [ 9200 { numBlocks: 19, dataCodewordsPerBlock: 15 }, 9201 { numBlocks: 26, dataCodewordsPerBlock: 16 }, 9202 ], 9203 }, 9204 ], 9205 }, 9206 { 9207 infoBits: 0x1ED75, 9208 versionNumber: 30, 9209 alignmentPatternCenters: [6, 26, 52, 78, 104, 130], 9210 errorCorrectionLevels: [ 9211 { 9212 ecCodewordsPerBlock: 30, 9213 ecBlocks: [ 9214 { numBlocks: 5, dataCodewordsPerBlock: 115 }, 9215 { numBlocks: 10, dataCodewordsPerBlock: 116 }, 9216 ], 9217 }, 9218 { 9219 ecCodewordsPerBlock: 28, 9220 ecBlocks: [ 9221 { numBlocks: 19, dataCodewordsPerBlock: 47 }, 9222 { numBlocks: 10, dataCodewordsPerBlock: 48 }, 9223 ], 9224 }, 9225 { 9226 ecCodewordsPerBlock: 30, 9227 ecBlocks: [ 9228 { numBlocks: 15, dataCodewordsPerBlock: 24 }, 9229 { numBlocks: 25, dataCodewordsPerBlock: 25 }, 9230 ], 9231 }, 9232 { 9233 ecCodewordsPerBlock: 30, 9234 ecBlocks: [ 9235 { numBlocks: 23, dataCodewordsPerBlock: 15 }, 9236 { numBlocks: 25, dataCodewordsPerBlock: 16 }, 9237 ], 9238 }, 9239 ], 9240 }, 9241 { 9242 infoBits: 0x1F250, 9243 versionNumber: 31, 9244 alignmentPatternCenters: [6, 30, 56, 82, 108, 134], 9245 errorCorrectionLevels: [ 9246 { 9247 ecCodewordsPerBlock: 30, 9248 ecBlocks: [ 9249 { numBlocks: 13, dataCodewordsPerBlock:
9249115 }, 9250 { numBlocks: 3, dataCodewordsPerBlock: 116 }, 9251 ], 9252 }, 9253 { 9254 ecCodewordsPerBlock: 28, 9255 ecBlocks: [ 9256 { numBlocks: 2, dataCodewordsPerBlock: 46 }, 9257 { numBlocks: 29, dataCodewordsPerBlock: 47 }, 9258 ], 9259 }, 9260 { 9261 ecCodewordsPerBlock: 30, 9262 ecBlocks: [ 9263 { numBlocks: 42, dataCodewordsPerBlock: 24 }, 9264 { numBlocks: 1, dataCodewordsPerBlock: 25 }, 9265 ], 9266 }, 9267 { 9268 ecCodewordsPerBlock: 30, 9269 ecBlocks: [ 9270 { numBlocks: 23, dataCodewordsPerBlock: 15 }, 9271 { numBlocks: 28, dataCodewordsPerBlock: 16 }, 9272 ], 9273 }, 9274 ], 9275 }, 9276 { 9277 infoBits: 0x209D5, 9278 versionNumber: 32, 9279 alignmentPatternCenters: [6, 34, 60, 86, 112, 138], 9280 errorCorrectionLevels: [ 9281 { 9282 ecCodewordsPerBlock: 30, 9283 ecBlocks: [{ numBlocks: 17, dataCodewordsPerBlock: 115 }], 9284 }, 9285 { 9286 ecCodewordsPerBlock: 28, 9287 ecBlocks: [ 9288 { numBlocks: 10, dataCodewordsPerBlock: 46 }, 9289 { numBlocks: 23, dataCodewordsPerBlock: 47 }, 9290 ], 9291 }, 9292 { 9293 ecCodewordsPerBlock: 30, 9294 ecBlocks: [ 9295 { numBlocks: 10, dataCodewordsPerBlock: 24 }, 9296 { numBlocks: 35, dataCodewordsPerBlock: 25 }, 9297 ], 9298 }, 9299 { 9300 ecCodewordsPerBlock: 30, 9301 ecBlocks: [ 9302 { numBlocks: 19, dataCodewordsPerBlock: 15 }, 9303 { numBlocks: 35, dataCodewordsPerBlock: 16 }, 9304 ], 9305 }, 9306 ], 9307 }, 9308 { 9309 infoBits: 0x216F0, 9310 versionNumber: 33, 9311 alignmentPatternCenters: [6, 30, 58, 86, 114, 142], 9312 errorCorrectionLevels: [ 9313 { 9314 ecCodewordsPerBlock: 30, 9315 ecBlocks: [ 9316 { numBlocks: 17, dataCodewordsPerBlock: 115 }, 9317 { numBlocks: 1, dataCodewordsPerBlock: 116 }, 9318 ], 9319 }, 9320 { 9321 ecCodewordsPerBlock: 28, 9322 ecBlocks: [ 9323 { numBlocks: 14, dataCodewordsPerBlock: 46 }, 9324 { numBlocks: 21, dataCodewordsPerBlock: 47 }, 9325 ], 9326 }, 9327 { 9328 ecCodewordsPerBlock: 30, 9329 ecBlocks: [ 9330 { numBlocks: 29, dataCodewordsPerBlock: 24 }, 9331 { numBlocks: 19, dataCodewordsPerBlock: 25 }, 9332 ], 9333 }, 9334 { 9335 ecCodewordsPerBlock: 30, 9336 ecBlocks: [ 9337 { numBlocks: 11, dataCodewordsPerBlock: 15 }, 9338 { numBlocks: 46, dataCodewordsPerBlock: 16 }, 9339 ], 9340 }, 9341 ], 9342 }, 9343 { 9344 infoBits: 0x228BA, 9345 versionNumber: 34, 9346 alignmentPatternCenters: [6, 34, 62, 90, 118, 146], 9347 errorCorrectionLevels: [ 9348 { 9349 ecCodewordsPerBlock: 30, 9350 ecBlocks: [ 9351 { numBlocks: 13, dataCodewordsPerBlock: 115 }, 9352 { numBlocks: 6, dataCodewordsPerBlock: 116 }, 9353 ], 9354 }, 9355 { 9356 ecCodewordsPerBlock: 28, 9357 ecBlocks: [ 9358 { numBlocks: 14, dataCodewordsPerBlock: 46 }, 9359 { numBlocks: 23, dataCodewordsPerBlock: 47 }, 9360 ], 9361 }, 9362 { 9363 ecCodewordsPerBlock: 30, 9364 ecBlocks: [ 9365 { numBlocks: 44, dataCodewordsPerBlock: 24 }, 9366 { numBlocks: 7, dataCodewordsPerBlock: 25 }, 9367 ], 9368 }, 9369 { 9370 ecCodewordsPerBlock: 30, 9371 ecBlocks: [ 9372 { numBlocks: 59, dataCodewordsPerBlock: 16 }, 9373 { numBlocks: 1, dataCodewordsPerBlock: 17 }, 9374 ], 9375 }, 9376 ], 9377 }, 9378 { 9379 infoBits: 0x2379F, 9380 versionNumber: 35, 9381 alignmentPatternCenters: [6, 30, 54, 78, 102, 126, 150], 9382 errorCorrectionLevels: [ 9383 { 9384 ecCodewordsPerBlock: 30, 9385 ecBlocks: [ 9386 { numBlocks: 12, dataCodewordsPerBlock: 121 }, 9387 { numBlocks: 7, dataCodewordsPerBlock: 122 }, 9388 ], 9389 }, 9390 { 9391 ecCodewordsPerBlock: 28, 9392 ecBlocks: [ 9393 { numBlocks: 12, dataCodewordsPerBlock: 47 }, 9394 { numBlocks: 26, dataCodewordsPerBlock: 48 }, 9395 ], 9396 }, 9397 { 9398 ecCodewordsPerBlock: 30, 9399 ecBlocks: [ 9400 { numBlocks: 39, dataCodewordsPerBlock: 24 }, 9401 { numBlocks: 14, dataCodewordsPerBlock: 25 }, 9402 ], 9403 }, 9404 { 9405 ecCodewordsPerBlock: 30, 9406 ecBlocks: [ 9407 { numBlocks: 22, dataCodewordsPerBlock: 15 }, 9408 { numBlocks: 41, dataCodewordsPerBlock: 16 }, 9409 ], 9410 }, 9411 ], 9412 }, 9413 { 9414 infoBits: 0x24B0B, 9415 versionNumber: 36, 9416 alignmentPatternCenters: [6, 24, 50, 76, 102, 128, 154], 9417 errorCorrectionLevels: [ 9418 { 9419 ecCodewordsPerBlock: 30, 9420 ecBlocks: [ 9421 { numBlocks: 6, dataCodewordsPerBlock: 121 }, 9422 { numBlocks: 14, dataCodewordsPerBlock: 122 }, 9423 ], 9424 }, 9425 { 9426 ecCodewordsPerBlock: 28, 9427 ecBlocks: [ 9428 { numBlocks: 6, dataCodewordsPerBlock: 47 }, 9429 { numBlocks: 34, dataCodewordsPerBlock: 48 }, 9430 ], 9431 }, 9432 { 9433 ecCodewordsPerBlock: 30, 9434 ecBlocks: [ 9435 { numBlocks: 46, dataCodewordsPerBlock: 24 }, 9436 { numBlocks: 10, dataCodewordsPerBlock: 25 }, 9437 ], 9438 }, 9439 { 9440 ecCodewordsPerBlock: 30, 9441 ecBlocks: [ 9442 { numBlocks: 2, dataCodewordsPerBlock: 15 }, 9443 { numBlocks: 64, dataCodewordsPerBlock: 16 }, 9444 ], 9445 }, 9446 ], 9447 }, 9448 { 9449 infoBits: 0x2542E, 9450 versionNumber: 37, 9451 alignmentPatternCenters: [6, 28, 54, 80, 106, 132, 158], 9452 errorCorrectionLevels: [ 9453 { 9454 ecCodewordsPerBlock: 30, 9455 ecBlocks: [ 9456 { numBlocks: 17, dataCodewordsPerBlock: 122 }, 9457 { numBlocks: 4, dataCodewordsPerBlock: 123 }, 9458 ], 9459 }, 9460 { 9461 ecCodewordsPerBlock: 28, 9462 ecBlocks: [ 9463 { numBlocks: 29, dataCodewordsPerBlock: 46 }, 9464 { numBlocks: 14, dataCodewordsPerBlock: 47 }, 9465 ], 9466 }, 9467 { 9468 ecCodewordsPerBlock: 30, 9469 ecBlocks: [ 9470 { numBlocks: 49, dataCodewordsPerBlock: 24 }, 9471 { numBlocks: 10, dataCodewordsPerBlock: 25 }, 9472 ], 9473 }, 9474 { 9475 ecCodewordsPerBlock: 30, 9476 ecBlocks: [ 9477 { numBlocks: 24, dataCodewordsPerBlock: 15 }, 9478 { numBlocks: 46, dataCodewordsPerBlock: 16 }, 9479 ], 9480 }, 9481 ], 9482 }, 9483 { 9484 infoBits: 0x26A64, 9485 versionNumber: 38, 9486 alignmentPatternCenters: [6, 32, 58, 84, 110, 136, 162], 9487 errorCorrectionLevels: [ 9488 { 9489 ecCodewordsPerBlock: 30, 9490 ecBlocks: [ 9491 { numBlocks: 4, dataCodewordsPerBlock: 122 }, 9492 { numBlocks: 18, dataCodewordsPerBlock: 123 }, 9493 ], 9494 }, 9495 { 9496 ecCodewordsPerBlock: 28, 9497 ecBlocks: [ 9498 { numBlocks: 13, dataCodewordsPerBlock: 46 }, 9499 { numBlocks: 32, dataCodewordsPerBlock: 47 }, 9500 ], 9501 }, 9502 { 9503 ecCodewordsPerBlock: 30, 9504 ecBlocks: [ 9505 { numBlocks: 48, dataCodewordsPerBlock: 24 }, 9506 { numBlocks: 14, dataCodewordsPerBlock: 25 }, 9507 ], 9508 }, 9509 { 9510 ecCodewordsPerBlock: 30, 9511 ecBlocks: [ 9512 { numBlocks: 42, dataCodewordsPerBlock: 15 }, 9513 { numBlocks: 32, dataCodewordsPerBlock: 16 }, 9514 ], 9515 }, 9516 ], 9517 }, 9518 { 9519 infoBits: 0x27541, 9520 versionNumber: 39, 9521 alignmentPatternCenters: [6, 26, 54, 82, 110, 138, 166], 9522 errorCorrectionLevels: [ 9523 { 9524 ecCodewordsPerBlock: 30, 9525 ecBlocks: [ 9526 { numBlocks: 20, dataCodewordsPerBlock: 117 }, 9527 { numBlocks: 4, dataCodewordsPerBlock: 118 }, 9528 ], 9529 }, 9530 { 9531 ecCodewordsPerBlock: 28, 9532 ecBlocks: [ 9533 { numBlocks: 40, dataCodewordsPerBlock: 47 }, 9534 { numBlocks: 7, dataCodewordsPerBlock: 48 }, 9535 ], 9536 }, 9537 { 9538 ecCodewordsPerBlock: 30, 9539 ecBlocks: [ 9540 { numBlocks: 43, dataCodewordsPerBlock: 24 }, 9541 { numBlocks: 22, dataCodewordsPerBlock: 25 }, 9542 ], 9543 }, 9544 { 9545 ecCodewordsPerBlock: 30, 9546 ecBlocks: [ 9547 { numBlocks: 10, dataCodewordsPerBlock: 15 }, 9548 { numBlocks: 67, dataCodewordsPerBlock: 16 }, 9549 ], 9550 }, 9551 ], 9552 }, 9553 { 9554 infoBits: 0x28C69, 9555 versionNumber: 40, 9556 alignmentPatternCenters: [6, 30, 58, 86, 114, 142, 170], 9557 errorCorrectionLevels: [ 9558 { 9559 ecCodewordsPerBlock: 30, 9560 ecBlocks: [ 9561 { numBlocks: 19, dataCodewordsPerBlock: 118 }, 9562 { numBlocks: 6, dataCodewordsPerBlock: 119 }, 9563 ], 9564 }, 9565 { 9566 ecCodewordsPerBlock: 28, 9567 ecBlocks: [ 9568 { numBlocks: 18, dataCodewordsPerBlock: 47 }, 9569 { numBlocks: 31, dataCodewordsPerBlock: 48 }, 9570 ], 9571 }, 9572 { 9573 ecCodewordsPerBlock: 30, 9574 ecBlocks: [ 9575 { numBlocks: 34, dataCodewordsPerBlock: 24 }, 9576 { numBlocks: 34, dataCodewordsPerBlock: 25 }, 9577 ], 9578 }, 9579 { 9580 ecCodewordsPerBlock: 30, 9581 ecBlocks: [ 9582 { numBlocks: 20, dataCodewordsPerBlock: 15 }, 9583 { numBlocks: 61, dataCodewordsPerBlock: 16 }, 9584 ], 9585 }, 9586 ], 9587 }, 9588]; 9589 9590 9591/***/ }), 9592/* 11 */ 9593/***/ (function(module, exports, __webpack_require__) { 9594 9595"use strict"; 9596 9597Object.defineProperty(exports, "__esModule", { value: true });
vendor: 25,478 bytes, lines 9598-10100
9598var BitMatrix_1 = __webpack_require__(0); 9599function squareToQuadrilateral(p1, p2, p3, p4) { 9600 var dx3 = p1.x - p2.x + p3.x - p4.x; 9601 var dy3 = p1.y - p2.y + p3.y - p4.y; 9602 if (dx3 === 0 && dy3 === 0) { // Affine 9603 return { 9604 a11: p2.x - p1.x, 9605 a12: p2.y - p1.y, 9606 a13: 0, 9607 a21: p3.x - p2.x, 9608 a22: p3.y - p2.y, 9609 a23: 0, 9610 a31: p1.x, 9611 a32: p1.y, 9612 a33: 1, 9613 }; 9614 } 9615 else { 9616 var dx1 = p2.x - p3.x; 9617 var dx2 = p4.x - p3.x; 9618 var dy1 = p2.y - p3.y; 9619 var dy2 = p4.y - p3.y; 9620 var denominator = dx1 * dy2 - dx2 * dy1; 9621 var a13 = (dx3 * dy2 - dx2 * dy3) / denominator; 9622 var a23 = (dx1 * dy3 - dx3 * dy1) / denominator; 9623 return { 9624 a11: p2.x - p1.x + a13 * p2.x, 9625 a12: p2.y - p1.y + a13 * p2.y, 9626 a13: a13, 9627 a21: p4.x - p1.x + a23 * p4.x, 9628 a22: p4.y - p1.y + a23 * p4.y, 9629 a23: a23, 9630 a31: p1.x, 9631 a32: p1.y, 9632 a33: 1, 9633 }; 9634 } 9635} 9636function quadrilateralToSquare(p1, p2, p3, p4) { 9637 // Here, the adjoint serves as the inverse: 9638 var sToQ = squareToQuadrilateral(p1, p2, p3, p4); 9639 return { 9640 a11: sToQ.a22 * sToQ.a33 - sToQ.a23 * sToQ.a32, 9641 a12: sToQ.a13 * sToQ.a32 - sToQ.a12 * sToQ.a33, 9642 a13: sToQ.a12 * sToQ.a23 - sToQ.a13 * sToQ.a22, 9643 a21: sToQ.a23 * sToQ.a31 - sToQ.a21 * sToQ.a33, 9644 a22: sToQ.a11 * sToQ.a33 - sToQ.a13 * sToQ.a31, 9645 a23: sToQ.a13 * sToQ.a21 - sToQ.a11 * sToQ.a23, 9646 a31: sToQ.a21 * sToQ.a32 - sToQ.a22 * sToQ.a31, 9647 a32: sToQ.a12 * sToQ.a31 - sToQ.a11 * sToQ.a32, 9648 a33: sToQ.a11 * sToQ.a22 - sToQ.a12 * sToQ.a21, 9649 }; 9650} 9651function times(a, b) { 9652 return { 9653 a11: a.a11 * b.a11 + a.a21 * b.a12 + a.a31 * b.a13, 9654 a12: a.a12 * b.a11 + a.a22 * b.a12 + a.a32 * b.a13, 9655 a13: a.a13 * b.a11 + a.a23 * b.a12 + a.a33 * b.a13, 9656 a21: a.a11 * b.a21 + a.a21 * b.a22 + a.a31 * b.a23, 9657 a22: a.a12 * b.a21 + a.a22 * b.a22 + a.a32 * b.a23, 9658 a23: a.a13 * b.a21 + a.a23 * b.a22 + a.a33 * b.a23, 9659 a31: a.a11 * b.a31 + a.a21 * b.a32 + a.a31 * b.a33, 9660 a32: a.a12 * b.a31 + a.a22 * b.a32 + a.a32 * b.a33, 9661 a33: a.a13 * b.a31 + a.a23 * b.a32 + a.a33 * b.a33, 9662 }; 9663} 9664function extract(image, location) { 9665 var qToS = quadrilateralToSquare({ x: 3.5, y: 3.5 }, { x: location.dimension - 3.5, y: 3.5 }, { x: location.dimension - 6.5, y: location.dimension - 6.5 }, { x: 3.5, y: location.dimension - 3.5 }); 9666 var sToQ = squareToQuadrilateral(location.topLeft, location.topRight, location.alignmentPattern, location.bottomLeft); 9667 var transform = times(sToQ, qToS); 9668 var matrix = BitMatrix_1.BitMatrix.createEmpty(location.dimension, location.dimension); 9669 var mappingFunction = function (x, y) { 9670 var denominator = transform.a13 * x + transform.a23 * y + transform.a33; 9671 return { 9672 x: (transform.a11 * x + transform.a21 * y + transform.a31) / denominator, 9673 y: (transform.a12 * x + transform.a22 * y + transform.a32) / denominator, 9674 }; 9675 }; 9676 for (var y = 0; y < location.dimension; y++) { 9677 for (var x = 0; x < location.dimension; x++) { 9678 var xValue = x + 0.5; 9679 var yValue = y + 0.5; 9680 var sourcePixel = mappingFunction(xValue, yValue); 9681 matrix.set(x, y, image.get(Math.floor(sourcePixel.x), Math.floor(sourcePixel.y))); 9682 } 9683 } 9684 return { 9685 matrix: matrix, 9686 mappingFunction: mappingFunction, 9687 }; 9688} 9689exports.extract = extract; 9690 9691 9692/***/ }), 9693/* 12 */ 9694/***/ (function(module, exports, __webpack_require__) { 9695 9696"use strict"; 9697 9698Object.defineProperty(exports, "__esModule", { value: true }); 9699var MAX_FINDERPATTERNS_TO_SEARCH = 4; 9700var MIN_QUAD_RATIO = 0.5; 9701var MAX_QUAD_RATIO = 1.5; 9702var distance = function (a, b) { return Math.sqrt(Math.pow((b.x - a.x), 2) + Math.pow((b.y - a.y), 2)); }; 9703function sum(values) { 9704 return values.reduce(function (a, b) { return a + b; }); 9705} 9706// Takes three finder patterns and organizes them into topLeft, topRight, etc 9707function reorderFinderPatterns(pattern1, pattern2, pattern3) { 9708 var _a, _b, _c, _d; 9709 // Find distances between pattern centers 9710 var oneTwoDistance = distance(pattern1, pattern2); 9711 var twoThreeDistance = distance(pattern2, pattern3); 9712 var oneThreeDistance = distance(pattern1, pattern3); 9713 var bottomLeft; 9714 var topLeft; 9715 var topRight; 9716 // Assume one closest to other two is B; A and C will just be guesses at first 9717 if (twoThreeDistance >= oneTwoDistance && twoThreeDistance >= oneThreeDistance) { 9718 _a = [pattern2, pattern1, pattern3], bottomLeft = _a[0], topLeft = _a[1], topRight = _a[2]; 9719 } 9720 else if (oneThreeDistance >= twoThreeDistance && oneThreeDistance >= oneTwoDistance) { 9721 _b = [pattern1, pattern2, pattern3], bottomLeft = _b[0], topLeft = _b[1], topRight = _b[2]; 9722 } 9723 else { 9724 _c = [pattern1, pattern3, pattern2], bottomLeft = _c[0], topLeft = _c[1], topRight = _c[2]; 9725 } 9726 // Use cross product to figure out whether bottomLeft (A) and topRight (C) are correct or flipped in relation to topLeft (B) 9727 // This asks whether BC x BA has a positive z component, which is the arrangement we want. If it's negative, then 9728 // we've got it flipped around and should swap topRight and bottomLeft. 9729 if (((topRight.x - topLeft.x) * (bottomLeft.y - topLeft.y)) - ((topRight.y - topLeft.y) * (bottomLeft.x - topLeft.x)) < 0) { 9730 _d = [topRight, bottomLeft], bottomLeft = _d[0], topRight = _d[1]; 9731 } 9732 return { bottomLeft: bottomLeft, topLeft: topLeft, topRight: topRight }; 9733} 9734// Computes the dimension (number of modules on a side) of the QR Code based on the position of the finder patterns 9735function computeDimension(topLeft, topRight, bottomLeft, matrix) { 9736 var moduleSize = (sum(countBlackWhiteRun(topLeft, bottomLeft, matrix, 5)) / 7 + // Divide by 7 since the ratio is 1:1:3:1:1 9737 sum(countBlackWhiteRun(topLeft, topRight, matrix, 5)) / 7 + 9738 sum(countBlackWhiteRun(bottomLeft, topLeft, matrix, 5)) / 7 + 9739 sum(countBlackWhiteRun(topRight, topLeft, matrix, 5)) / 7) / 4; 9740 if (moduleSize < 1) { 9741 throw new Error("Invalid module size"); 9742 } 9743 var topDimension = Math.round(distance(topLeft, topRight) / moduleSize); 9744 var sideDimension = Math.round(distance(topLeft, bottomLeft) / moduleSize); 9745 var dimension = Math.floor((topDimension + sideDimension) / 2) + 7; 9746 switch (dimension % 4) { 9747 case 0: 9748 dimension++; 9749 break; 9750 case 2: 9751 dimension--; 9752 break; 9753 } 9754 return { dimension: dimension, moduleSize: moduleSize }; 9755} 9756// Takes an origin point and an end point and counts the sizes of the black white run from the origin towards the end point. 9757// Returns an array of elements, representing the pixel size of the black white run. 9758// Uses a variant of http://en.wikipedia.org/wiki/Bresenham's_line_algorithm 9759function countBlackWhiteRunTowardsPoint(origin, end, matrix, length) { 9760 var switchPoints = [{ x: Math.floor(origin.x), y: Math.floor(origin.y) }]; 9761 var steep = Math.abs(end.y - origin.y) > Math.abs(end.x - origin.x); 9762 var fromX; 9763 var fromY; 9764 var toX; 9765 var toY; 9766 if (steep) { 9767 fromX = Math.floor(origin.y); 9768 fromY = Math.floor(origin.x); 9769 toX = Math.floor(end.y); 9770 toY = Math.floor(end.x); 9771 } 9772 else { 9773 fromX = Math.floor(origin.x); 9774 fromY = Math.floor(origin.y); 9775 toX = Math.floor(end.x); 9776 toY = Math.floor(end.y); 9777 } 9778 var dx = Math.abs(toX - fromX); 9779 var dy = Math.abs(toY - fromY); 9780 var error = Math.floor(-dx / 2); 9781 var xStep = fromX < toX ? 1 : -1; 9782 var yStep = fromY < toY ? 1 : -1; 9783 var currentPixel = true; 9784 // Loop up until x == toX, but not beyond 9785 for (var x = fromX, y = fromY; x !== toX + xStep; x += xStep) { 9786 // Does current pixel mean we have moved white to black or vice versa? 9787 // Scanning black in state 0,2 and white in state 1, so if we find the wrong 9788 // color, advance to next state or end if we are in state 2 already 9789 var realX = steep ? y : x; 9790 var realY = steep ? x : y; 9791 if (matrix.get(realX, realY) !== currentPixel) { 9792 currentPixel = !currentPixel; 9793 switchPoints.push({ x: realX, y: realY }); 9794 if (switchPoints.length === length + 1) { 9795 break; 9796 } 9797 } 9798 error += dy; 9799 if (error > 0) { 9800 if (y === toY) { 9801 break; 9802 } 9803 y += yStep; 9804 error -= dx; 9805 } 9806 } 9807 var distances = []; 9808 for (var i = 0; i < length; i++) { 9809 if (switchPoints[i] && switchPoints[i + 1]) { 9810 distances.push(distance(switchPoints[i], switchPoints[i + 1])); 9811 } 9812 else { 9813 distances.push(0); 9814 } 9815 } 9816 return distances; 9817} 9818// Takes an origin point and an end point and counts the sizes of the black white run in the origin point 9819// along the line that intersects with the end point. Returns an array of elements, representing the pixel sizes 9820// of the black white run. Takes a length which represents the number of switches from black to white to look for. 9821function countBlackWhiteRun(origin, end, matrix, length) { 9822 var _a; 9823 var rise = end.y - origin.y; 9824 var run = end.x - origin.x; 9825 var towardsEnd = countBlackWhiteRunTowardsPoint(origin, end, matrix, Math.ceil(length / 2)); 9826 var awayFromEnd = countBlackWhiteRunTowardsPoint(origin, { x: origin.x - run, y: origin.y - rise }, matrix, Math.ceil(length / 2)); 9827 var middleValue = towardsEnd.shift() + awayFromEnd.shift() - 1; // Substract one so we don't double count a pixel 9828 return (_a = awayFromEnd.concat(middleValue)).concat.apply(_a, towardsEnd); 9829} 9830// Takes in a black white run and an array of expected ratios. Returns the average size of the run as well as the "error" - 9831// that is the amount the run diverges from the expected ratio 9832function scoreBlackWhiteRun(sequence, ratios) { 9833 var averageSize = sum(sequence) / sum(ratios); 9834 var error = 0; 9835 ratios.forEach(function (ratio, i) { 9836 error += Math.pow((sequence[i] - ratio * averageSize), 2); 9837 }); 9838 return { averageSize: averageSize, error: error }; 9839} 9840// Takes an X,Y point and an array of sizes and scores the point against those ratios. 9841// For example for a finder pattern takes the ratio list of 1:1:3:1:1 and checks horizontal, vertical and diagonal ratios 9842// against that. 9843function scorePattern(point, ratios, matrix) { 9844 try { 9845 var horizontalRun = countBlackWhiteRun(point, { x: -1, y: point.y }, matrix, ratios.length); 9846 var verticalRun = countBlackWhiteRun(point, { x: point.x, y: -1 }, matrix, ratios.length); 9847 var topLeftPoint = { 9848 x: Math.max(0, point.x - point.y) - 1, 9849 y: Math.max(0, point.y - point.x) - 1, 9850 }; 9851 var topLeftBottomRightRun = countBlackWhiteRun(point, topLeftPoint, matrix, ratios.length); 9852 var bottomLeftPoint = { 9853 x: Math.min(matrix.width, point.x + point.y) + 1, 9854 y: Math.min(matrix.height, point.y + point.x) + 1, 9855 }; 9856 var bottomLeftTopRightRun = countBlackWhiteRun(point, bottomLeftPoint, matrix, ratios.length); 9857 var horzError = scoreBlackWhiteRun(horizontalRun, ratios); 9858 var vertError = scoreBlackWhiteRun(verticalRun, ratios); 9859 var diagDownError = scoreBlackWhiteRun(topLeftBottomRightRun, ratios); 9860 var diagUpError = scoreBlackWhiteRun(bottomLeftTopRightRun, ratios); 9861 var ratioError = Math.sqrt(horzError.error * horzError.error + 9862 vertError.error * vertError.error + 9863 diagDownError.error * diagDownError.error + 9864 diagUpError.error * diagUpError.error); 9865 var avgSize = (horzError.averageSize + vertError.averageSize + diagDownError.averageSize + diagUpError.averageSize) / 4; 9866 var sizeError = (Math.pow((horzError.averageSize - avgSize), 2) + 9867 Math.pow((vertError.averageSize - avgSize), 2) + 9868 Math.pow((diagDownError.averageSize - avgSize), 2) + 9869 Math.pow((diagUpError.averageSize - avgSize), 2)) / avgSize; 9870 return ratioError + sizeError; 9871 } 9872 catch (_a) { 9873 return Infinity; 9874 } 9875} 9876function recenterLocation(matrix, p) { 9877 var leftX = Math.round(p.x); 9878 while (matrix.get(leftX, Math.round(p.y))) { 9879 leftX--; 9880 } 9881 var rightX = Math.round(p.x); 9882 while (matrix.get(rightX, Math.round(p.y))) { 9883 rightX++; 9884 } 9885 var x = (leftX + rightX) / 2; 9886 var topY = Math.round(p.y); 9887 while (matrix.get(Math.round(x), topY)) { 9888 topY--; 9889 } 9890 var bottomY = Math.round(p.y); 9891 while (matrix.get(Math.round(x), bottomY)) { 9892 bottomY++; 9893 } 9894 var y = (topY + bottomY) / 2; 9895 return { x: x, y: y }; 9896} 9897function locate(matrix) { 9898 var finderPatternQuads = []; 9899 var activeFinderPatternQuads = []; 9900 var alignmentPatternQuads = []; 9901 var activeAlignmentPatternQuads = []; 9902 var _loop_1 = function (y) { 9903 var length_1 = 0; 9904 var lastBit = false; 9905 var scans = [0, 0, 0, 0, 0]; 9906 var _loop_2 = function (x) { 9907 var v = matrix.get(x, y); 9908 if (v === lastBit) { 9909 length_1++; 9910 } 9911 else { 9912 scans = [scans[1], scans[2], scans[3], scans[4], length_1]; 9913 length_1 = 1; 9914 lastBit = v; 9915 // Do the last 5 color changes ~ match the expected ratio for a finder pattern? 1:1:3:1:1 of b:w:b:w:b 9916 var averageFinderPatternBlocksize = sum(scans) / 7; 9917 var validFinderPattern = Math.abs(scans[0] - averageFinderPatternBlocksize) < averageFinderPatternBlocksize && 9918 Math.abs(scans[1] - averageFinderPatternBlocksize) < averageFinderPatternBlocksize && 9919 Math.abs(scans[2] - 3 * averageFinderPatternBlocksize) < 3 * averageFinderPatternBlocksize && 9920 Math.abs(scans[3] - averageFinderPatternBlocksize) < averageFinderPatternBlocksize && 9921 Math.abs(scans[4] - averageFinderPatternBlocksize) < averageFinderPatternBlocksize && 9922 !v; // And make sure the current pixel is white since finder patterns are bordered in white 9923 // Do the last 3 color changes ~ match the expected ratio for an alignment pattern? 1:1:1 of w:b:w 9924 var averageAlignmentPatternBlocksize = sum(scans.slice(-3)) / 3; 9925 var validAlignmentPattern = Math.abs(scans[2] - averageAlignmentPatternBlocksize) < averageAlignmentPatternBlocksize && 9926 Math.abs(scans[3] - averageAlignmentPatternBlocksize) < averageAlignmentPatternBlocksize && 9927 Math.abs(scans[4] - averageAlignmentPatternBlocksize) < averageAlignmentPatternBlocksize && 9928 v; // Is the current pixel black since alignment patterns are bordered in black 9929 if (validFinderPattern) { 9930 // Compute the start and end x values of the large center black square 9931 var endX_1 = x - scans[3] - scans[4]; 9932 var startX_1 = endX_1 - scans[2]; 9933 var line = { startX: startX_1, endX: endX_1, y: y }; 9934 // Is there a quad directly above the current spot? If so, extend it with the new line. Otherwise, create a new quad with 9935 // that line as the starting point. 9936 var matchingQuads = activeFinderPatternQuads.filter(function (q) { 9937 return (startX_1 >= q.bottom.startX && startX_1 <= q.bottom.endX) || 9938 (endX_1 >= q.bottom.startX && startX_1 <= q.bottom.endX) || 9939 (startX_1 <= q.bottom.startX && endX_1 >= q.bottom.endX && ((scans[2] / (q.bottom.endX - q.bottom.startX)) < MAX_QUAD_RATIO && 9940 (scans[2] / (q.bottom.endX - q.bottom.startX)) > MIN_QUAD_RATIO)); 9941 }); 9942 if (matchingQuads.length > 0) { 9943 matchingQuads[0].bottom = line; 9944 } 9945 else { 9946 activeFinderPatternQuads.push({ top: line, bottom: line }); 9947 } 9948 } 9949 if (validAlignmentPattern) { 9950 // Compute the start and end x values of the center black square 9951 var endX_2 = x - scans[4]; 9952 var startX_2 = endX_2 - scans[3]; 9953 var line = { startX: startX_2, y: y, endX: endX_2 }; 9954 // Is there a quad directly above the current spot? If so, extend it with the new line. Otherwise, create a new quad with 9955 // that line as the starting point. 9956 var matchingQuads = activeAlignmentPatternQuads.filter(function (q) { 9957 return (startX_2 >= q.bottom.startX && startX_2 <= q.bottom.endX) || 9958 (endX_2 >= q.bottom.startX && startX_2 <= q.bottom.endX) || 9959 (startX_2 <= q.bottom.startX && endX_2 >= q.bottom.endX && ((scans[2] / (q.bottom.endX - q.bottom.startX)) < MAX_QUAD_RATIO && 9960 (scans[2] / (q.bottom.endX - q.bottom.startX)) > MIN_QUAD_RATIO)); 9961 }); 9962 if (matchingQuads.length > 0) { 9963 matchingQuads[0].bottom = line; 9964 } 9965 else { 9966 activeAlignmentPatternQuads.push({ top: line, bottom: line }); 9967 } 9968 } 9969 } 9970 }; 9971 for (var x = -1; x <= matrix.width; x++) { 9972 _loop_2(x); 9973 } 9974 finderPatternQuads.push.apply(finderPatternQuads, activeFinderPatternQuads.filter(function (q) { return q.bottom.y !== y && q.bottom.y - q.top.y >= 2; })); 9975 activeFinderPatternQuads = activeFinderPatternQuads.filter(function (q) { return q.bottom.y === y; }); 9976 alignmentPatternQuads.push.apply(alignmentPatternQuads, activeAlignmentPatternQuads.filter(function (q) { return q.bottom.y !== y; })); 9977 activeAlignmentPatternQuads = activeAlignmentPatternQuads.filter(function (q) { return q.bottom.y === y; }); 9978 }; 9979 for (var y = 0; y <= matrix.height; y++) { 9980 _loop_1(y); 9981 } 9982 finderPatternQuads.push.apply(finderPatternQuads, activeFinderPatternQuads.filter(function (q) { return q.bottom.y - q.top.y >= 2; })); 9983 alignmentPatternQuads.push.apply(alignmentPatternQuads, activeAlignmentPatternQuads); 9984 var finderPatternGroups = finderPatternQuads 9985 .filter(function (q) { return q.bottom.y - q.top.y >= 2; }) // All quads must be at least 2px tall since the center square is larger than a block 9986 .map(function (q) { 9987 var x = (q.top.startX + q.top.endX + q.bottom.startX + q.bottom.endX) / 4; 9988 var y = (q.top.y + q.bottom.y + 1) / 2; 9989 if (!matrix.get(Math.round(x), Math.round(y))) { 9990 return; 9991 } 9992 var lengths = [q.top.endX - q.top.startX, q.bottom.endX - q.bottom.startX, q.bottom.y - q.top.y + 1]; 9993 var size = sum(lengths) / lengths.length; 9994 var score = scorePattern({ x: Math.round(x), y: Math.round(y) }, [1, 1, 3, 1, 1], matrix); 9995 return { score: score, x: x, y: y, size: size }; 9996 }) 9997 .filter(function (q) { return !!q; }) // Filter out any rejected quads from above 9998 .sort(function (a, b) { return a.score - b.score; }) 9999 // Now take the top finder pattern options and try to find 2 other options with a similar size. 10000 .map(function (point, i, finderPatterns) { 10001 if (i > MAX_FINDERPATTERNS_TO_SEARCH) { 10002 return null; 10003 } 10004 var otherPoints = finderPatterns 10005 .filter(function (p, ii) { return i !== ii; }) 10006 .map(function (p) { return ({ x: p.x, y: p.y, score: p.score + (Math.pow((p.size - point.size), 2)) / point.size, size: p.size }); }) 10007 .sort(function (a, b) { return a.score - b.score; }); 10008 if (otherPoints.length < 2) { 10009 return null; 10010 } 10011 var score = point.score + otherPoints[0].score + otherPoints[1].score; 10012 return { points: [point].concat(otherPoints.slice(0, 2)), score: score }; 10013 }) 10014 .filter(function (q) { return !!q; }) // Filter out any rejected finder patterns from above 10015 .sort(function (a, b) { return a.score - b.score; }); 10016 if (finderPatternGroups.length === 0) { 10017 return null; 10018 } 10019 var _a = reorderFinderPatterns(finderPatternGroups[0].points[0], finderPatternGroups[0].points[1], finderPatternGroups[0].points[2]), topRight = _a.topRight, topLeft = _a.topLeft, bottomLeft = _a.bottomLeft; 10020 var alignment = findAlignmentPattern(matrix, alignmentPatternQuads, topRight, topLeft, bottomLeft); 10021 var result = []; 10022 if (alignment) { 10023 result.push({ 10024 alignmentPattern: { x: alignment.alignmentPattern.x, y: alignment.alignmentPattern.y }, 10025 bottomLeft: { x: bottomLeft.x, y: bottomLeft.y }, 10026 dimension: alignment.dimension, 10027 topLeft: { x: topLeft.x, y: topLeft.y }, 10028 topRight: { x: topRight.x, y: topRight.y }, 10029 }); 10030 } 10031 // We normally use the center of the quads as the location of the tracking points, which is optimal for most cases and will account 10032 // for a skew in the image. However, In some cases, a slight skew might not be real and instead be caused by image compression 10033 // errors and/or low resolution. For those cases, we'd be better off centering the point exactly in the middle of the black area. We 10034 // compute and return the location data for the naively centered points as it is little additional work and allows for multiple 10035 // attempts at decoding harder images. 10036 var midTopRight = recenterLocation(matrix, topRight); 10037 var midTopLeft = recenterLocation(matrix, topLeft); 10038 var midBottomLeft = recenterLocation(matrix, bottomLeft); 10039 var centeredAlignment = findAlignmentPattern(matrix, alignmentPatternQuads, midTopRight, midTopLeft, midBottomLeft); 10040 if (centeredAlignment) { 10041 result.push({ 10042 alignmentPattern: { x: centeredAlignment.alignmentPattern.x, y: centeredAlignment.alignmentPattern.y }, 10043 bottomLeft: { x: midBottomLeft.x, y: midBottomLeft.y }, 10044 topLeft: { x: midTopLeft.x, y: midTopLeft.y }, 10045 topRight: { x: midTopRight.x, y: midTopRight.y }, 10046 dimension: centeredAlignment.dimension, 10047 }); 10048 } 10049 if (result.length === 0) { 10050 return null; 10051 } 10052 return result; 10053} 10054exports.locate = locate; 10055function findAlignmentPattern(matrix, alignmentPatternQuads, topRight, topLeft, bottomLeft) { 10056 var _a; 10057 // Now that we've found the three finder patterns we can determine the blockSize and the size of the QR code. 10058 // We'll use these to help find the alignment pattern but also later when we do the extraction. 10059 var dimension; 10060 var moduleSize; 10061 try { 10062 (_a = computeDimension(topLeft, topRight, bottomLeft, matrix), dimension = _a.dimension, moduleSize = _a.moduleSize); 10063 } 10064 catch (e) { 10065 return null; 10066 } 10067 // Now find the alignment pattern 10068 var bottomRightFinderPattern = { 10069 x: topRight.x - topLeft.x + bottomLeft.x, 10070 y: topRight.y - topLeft.y + bottomLeft.y, 10071 }; 10072 var modulesBetweenFinderPatterns = ((distance(topLeft, bottomLeft) + distance(topLeft, topRight)) / 2 / moduleSize); 10073 var correctionToTopLeft = 1 - (3 / modulesBetweenFinderPatterns); 10074 var expectedAlignmentPattern = { 10075 x: topLeft.x + correctionToTopLeft * (bottomRightFinderPattern.x - topLeft.x), 10076 y: topLeft.y + correctionToTopLeft * (bottomRightFinderPattern.y - topLeft.y), 10077 }; 10078 var alignmentPatterns = alignmentPatternQuads 10079 .map(function (q) { 10080 var x = (q.top.startX + q.top.endX + q.bottom.startX + q.bottom.endX) / 4; 10081 var y = (q.top.y + q.bottom.y + 1) / 2; 10082 if (!matrix.get(Math.floor(x), Math.floor(y))) { 10083 return; 10084 } 10085 var sizeScore = scorePattern({ x: Math.floor(x), y: Math.floor(y) }, [1, 1, 1], matrix); 10086 var score = sizeScore + distance({ x: x, y: y }, expectedAlignmentPattern); 10087 return { x: x, y: y, score: score }; 10088 }) 10089 .filter(function (v) { return !!v; }) 10090 .sort(function (a, b) { return a.score - b.score; }); 10091 // If there are less than 15 modules between finder patterns it's a version 1 QR code and as such has no alignmemnt pattern 10092 // so we can only use our best guess. 10093 var alignmentPattern = modulesBetweenFinderPatterns >= 15 && alignmentPatterns.length ? alignmentPatterns[0] : expectedAlignmentPattern; 10094 return { alignmentPattern: alignmentPattern, dimension: dimension }; 10095} 10096 10097 10098/***/ }) 10099/******/ ])["default"]; 10100});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.