{"version":3,"file":"worker.min.js","mappings":"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","sources":["webpack://tesseract.js/./node_modules/regenerator-runtime/runtime.js","webpack://tesseract.js/./src/constants/imageType.js","webpack://tesseract.js/./src/utils/log.js","webpack://tesseract.js/./node_modules/zlibjs/bin/node-zlib.js","webpack://tesseract.js/./node_modules/wasm-feature-detect/dist/cjs/index.cjs","webpack://tesseract.js/./src/worker-script/browser/gunzip.js","webpack://tesseract.js/./src/worker-script/utils/setImage.js","webpack://tesseract.js/./src/worker-script/utils/dump.js","webpack://tesseract.js/./node_modules/bmp-js/lib/encoder.js","webpack://tesseract.js/./node_modules/is-url/index.js","webpack://tesseract.js/./node_modules/bmp-js/index.js","webpack://tesseract.js/./src/worker-script/utils/arrayBufferToBase64.js","webpack://tesseract.js/./node_modules/buffer/index.js","webpack://tesseract.js/./node_modules/idb-keyval/dist/index.js","webpack://tesseract.js/./src/worker-script/constants/defaultOutput.js","webpack://tesseract.js/./node_modules/base64-js/index.js","webpack://tesseract.js/./node_modules/ieee754/index.js","webpack://tesseract.js/./src/worker-script/browser/cache.js","webpack://tesseract.js/./node_modules/bmp-js/lib/decoder.js","webpack://tesseract.js/./src/utils/getEnvironment.js","webpack://tesseract.js/./src/worker-script/index.js","webpack://tesseract.js/./src/constants/PSM.js","webpack://tesseract.js/./src/worker-script/browser/getCore.js","webpack://tesseract.js/webpack/bootstrap","webpack://tesseract.js/webpack/runtime/define property getters","webpack://tesseract.js/webpack/runtime/global","webpack://tesseract.js/webpack/runtime/hasOwnProperty shorthand","webpack://tesseract.js/webpack/runtime/make namespace object","webpack://tesseract.js/webpack/runtime/node module decorator","webpack://tesseract.js/./src/worker-script/browser/index.js"],"sourcesContent":["/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; };\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) });\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: true });\n defineProperty(\n GeneratorFunctionPrototype,\n \"constructor\",\n { value: GeneratorFunction, configurable: true }\n );\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n defineProperty(this, \"_invoke\", { value: enqueue });\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method;\n var method = delegate.iterator[methodName];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method, or a missing .next mehtod, always terminate the\n // yield* loop.\n context.delegate = null;\n\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (methodName === \"throw\" && delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n if (methodName !== \"return\") {\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a '\" + methodName + \"' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(val) {\n var object = Object(val);\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","'use strict';\n\nmodule.exports = {\n COLOR: 0,\n GREY: 1,\n BINARY: 2,\n};\n","'use strict';\n\nlet logging = false;\n\nexports.logging = logging;\n\nexports.setLogging = (_logging) => {\n logging = _logging;\n};\n\nexports.log = (...args) => (logging ? console.log.apply(this, args) : null);\n","/** @license zlib.js 2012 - imaya [ https://github.com/imaya/zlib.js ] The MIT License */(function() {'use strict';function q(b){throw b;}var t=void 0,v=!0;var B=\"undefined\"!==typeof Uint8Array&&\"undefined\"!==typeof Uint16Array&&\"undefined\"!==typeof Uint32Array&&\"undefined\"!==typeof DataView;function G(b,a){this.index=\"number\"===typeof a?a:0;this.m=0;this.buffer=b instanceof(B?Uint8Array:Array)?b:new (B?Uint8Array:Array)(32768);2*this.buffer.length<=this.index&&q(Error(\"invalid index\"));this.buffer.length<=this.index&&this.f()}G.prototype.f=function(){var b=this.buffer,a,c=b.length,d=new (B?Uint8Array:Array)(c<<1);if(B)d.set(b);else for(a=0;a>>8&255]<<16|I[b>>>16&255]<<8|I[b>>>24&255])>>32-a:I[b]>>8-a);if(8>a+f)g=g<>a-k-1&1,8===++f&&(f=0,d[e++]=I[g],g=0,e===d.length&&(d=this.f()));d[e]=g;this.buffer=d;this.m=f;this.index=e};G.prototype.finish=function(){var b=this.buffer,a=this.index,c;0L;++L){for(var R=L,ba=R,ca=7,R=R>>>1;R;R>>>=1)ba<<=1,ba|=R&1,--ca;aa[L]=(ba<>>0}var I=aa;function ha(b,a,c){var d,e=\"number\"===typeof a?a:a=0,f=\"number\"===typeof c?c:b.length;d=-1;for(e=f&7;e--;++a)d=d>>>8^S[(d^b[a])&255];for(e=f>>3;e--;a+=8)d=d>>>8^S[(d^b[a])&255],d=d>>>8^S[(d^b[a+1])&255],d=d>>>8^S[(d^b[a+2])&255],d=d>>>8^S[(d^b[a+3])&255],d=d>>>8^S[(d^b[a+4])&255],d=d>>>8^S[(d^b[a+5])&255],d=d>>>8^S[(d^b[a+6])&255],d=d>>>8^S[(d^b[a+7])&255];return(d^4294967295)>>>0}\nvar ia=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,\n2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,\n2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,\n2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,\n3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,\n936918E3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],S=B?new Uint32Array(ia):ia;function ja(){};function ka(b){this.buffer=new (B?Uint16Array:Array)(2*b);this.length=0}ka.prototype.getParent=function(b){return 2*((b-2)/4|0)};ka.prototype.push=function(b,a){var c,d,e=this.buffer,f;c=this.length;e[this.length++]=a;for(e[this.length++]=b;0e[d])f=e[c],e[c]=e[d],e[d]=f,f=e[c+1],e[c+1]=e[d+1],e[d+1]=f,c=d;else break;return this.length};\nka.prototype.pop=function(){var b,a,c=this.buffer,d,e,f;a=c[0];b=c[1];this.length-=2;c[0]=c[this.length];c[1]=c[this.length+1];for(f=0;;){e=2*f+2;if(e>=this.length)break;e+2c[e]&&(e+=2);if(c[e]>c[f])d=c[f],c[f]=c[e],c[e]=d,d=c[f+1],c[f+1]=c[e+1],c[e+1]=d;else break;f=e}return{index:b,value:a,length:this.length}};function T(b){var a=b.length,c=0,d=Number.POSITIVE_INFINITY,e,f,g,k,h,m,r,p,l,n;for(p=0;pc&&(c=b[p]),b[p]>=1;n=g<<16|p;for(l=m;lU;U++)switch(v){case 143>=U:qa.push([U+48,8]);break;case 255>=U:qa.push([U-144+400,9]);break;case 279>=U:qa.push([U-256+0,7]);break;case 287>=U:qa.push([U-280+192,8]);break;default:q(\"invalid literal: \"+U)}\nna.prototype.h=function(){var b,a,c,d,e=this.input;switch(this.k){case 0:c=0;for(d=e.length;c>>8&255;l[n++]=m&255;l[n++]=m>>>8&255;if(B)l.set(f,n),n+=f.length,l=l.subarray(0,n);else{r=0;for(p=f.length;rA)for(;0A?A:138,F>A-3&&F=F?(J[H++]=17,J[H++]=F-3,P[17]++):(J[H++]=18,J[H++]=F-11,P[18]++),A-=F;else if(J[H++]=K[y],P[K[y]]++,A--,3>A)for(;0A?A:6,F>A-3&&FE;E++)ta[E]=la[qb[E]];for(Y=19;4=a:return[265,a-11,1];case 14>=a:return[266,a-13,1];case 16>=a:return[267,a-15,1];case 18>=a:return[268,a-17,1];case 22>=a:return[269,a-19,2];case 26>=a:return[270,a-23,2];case 30>=a:return[271,a-27,2];case 34>=a:return[272,\na-31,2];case 42>=a:return[273,a-35,3];case 50>=a:return[274,a-43,3];case 58>=a:return[275,a-51,3];case 66>=a:return[276,a-59,3];case 82>=a:return[277,a-67,4];case 98>=a:return[278,a-83,4];case 114>=a:return[279,a-99,4];case 130>=a:return[280,a-115,4];case 162>=a:return[281,a-131,5];case 194>=a:return[282,a-163,5];case 226>=a:return[283,a-195,5];case 257>=a:return[284,a-227,5];case 258===a:return[285,a-258,0];default:q(\"invalid length: \"+a)}}var a=[],c,d;for(c=3;258>=c;c++)d=b(c),a[c]=d[2]<<24|d[1]<<\n16|d[0];return a}(),ya=B?new Uint32Array(xa):xa;\nfunction ra(b,a){function c(a,c){var b=a.N,d=[],f=0,e;e=ya[a.length];d[f++]=e&65535;d[f++]=e>>16&255;d[f++]=e>>24;var g;switch(v){case 1===b:g=[0,b-1,0];break;case 2===b:g=[1,b-2,0];break;case 3===b:g=[2,b-3,0];break;case 4===b:g=[3,b-4,0];break;case 6>=b:g=[4,b-5,1];break;case 8>=b:g=[5,b-7,1];break;case 12>=b:g=[6,b-9,2];break;case 16>=b:g=[7,b-13,2];break;case 24>=b:g=[8,b-17,3];break;case 32>=b:g=[9,b-25,3];break;case 48>=b:g=[10,b-33,4];break;case 64>=b:g=[11,b-49,4];break;case 96>=b:g=[12,b-\n65,5];break;case 128>=b:g=[13,b-97,5];break;case 192>=b:g=[14,b-129,6];break;case 256>=b:g=[15,b-193,6];break;case 384>=b:g=[16,b-257,7];break;case 512>=b:g=[17,b-385,7];break;case 768>=b:g=[18,b-513,8];break;case 1024>=b:g=[19,b-769,8];break;case 1536>=b:g=[20,b-1025,9];break;case 2048>=b:g=[21,b-1537,9];break;case 3072>=b:g=[22,b-2049,10];break;case 4096>=b:g=[23,b-3073,10];break;case 6144>=b:g=[24,b-4097,11];break;case 8192>=b:g=[25,b-6145,11];break;case 12288>=b:g=[26,b-8193,12];break;case 16384>=\nb:g=[27,b-12289,12];break;case 24576>=b:g=[28,b-16385,13];break;case 32768>=b:g=[29,b-24577,13];break;default:q(\"invalid distance\")}e=g;d[f++]=e[0];d[f++]=e[1];d[f++]=e[2];var h,k;h=0;for(k=d.length;h=f;)u[f++]=0;for(f=0;29>=f;)w[f++]=0}u[256]=1;d=0;for(e=a.length;d=e){p&&c(p,-1);f=0;for(g=e-d;fg&&a+gf&&(e=d,f=g);if(258===g)break}return new va(f,a-e)}\nfunction sa(b,a){var c=b.length,d=new ka(572),e=new (B?Uint8Array:Array)(c),f,g,k,h,m;if(!B)for(h=0;h2*e[n-1]+f[n]&&(e[n]=2*e[n-1]+f[n]),k[n]=Array(e[n]),h[n]=Array(e[n]);for(l=0;lb[l]?(k[n][s]=u,h[n][s]=a,w+=2):(k[n][s]=b[l],h[n][s]=l,++l);m[n]=0;1===f[n]&&d(n)}return g}\nfunction ua(b){var a=new (B?Uint16Array:Array)(b.length),c=[],d=[],e=0,f,g,k,h;f=0;for(g=b.length;f>>=1}return a};function Ba(b,a){this.input=b;this.b=this.c=0;this.g={};a&&(a.flags&&(this.g=a.flags),\"string\"===typeof a.filename&&(this.filename=a.filename),\"string\"===typeof a.comment&&(this.w=a.comment),a.deflateOptions&&(this.l=a.deflateOptions));this.l||(this.l={})}\nBa.prototype.h=function(){var b,a,c,d,e,f,g,k,h=new (B?Uint8Array:Array)(32768),m=0,r=this.input,p=this.c,l=this.filename,n=this.w;h[m++]=31;h[m++]=139;h[m++]=8;b=0;this.g.fname&&(b|=Ca);this.g.fcomment&&(b|=Da);this.g.fhcrc&&(b|=Ea);h[m++]=b;a=(Date.now?Date.now():+new Date)/1E3|0;h[m++]=a&255;h[m++]=a>>>8&255;h[m++]=a>>>16&255;h[m++]=a>>>24&255;h[m++]=0;h[m++]=Sa;if(this.g.fname!==t){g=0;for(k=l.length;g>>8&255),h[m++]=f&255;h[m++]=0}if(this.g.comment){g=\n0;for(k=n.length;g>>8&255),h[m++]=f&255;h[m++]=0}this.g.fhcrc&&(c=ha(h,0,m)&65535,h[m++]=c&255,h[m++]=c>>>8&255);this.l.outputBuffer=h;this.l.outputIndex=m;e=new na(r,this.l);h=e.h();m=e.b;B&&(m+8>h.buffer.byteLength?(this.a=new Uint8Array(m+8),this.a.set(new Uint8Array(h.buffer)),h=this.a):h=new Uint8Array(h.buffer));d=ha(r,t,t);h[m++]=d&255;h[m++]=d>>>8&255;h[m++]=d>>>16&255;h[m++]=d>>>24&255;k=r.length;h[m++]=k&255;h[m++]=k>>>8&255;h[m++]=k>>>16&255;h[m++]=\nk>>>24&255;this.c=p;B&&m>>=1;switch(b){case 0:var a=this.input,c=this.c,d=this.a,e=this.b,f=a.length,g=t,k=t,h=d.length,m=t;this.e=this.j=0;c+1>=f&&q(Error(\"invalid uncompressed block header: LEN\"));g=a[c++]|a[c++]<<8;c+1>=f&&q(Error(\"invalid uncompressed block header: NLEN\"));k=a[c++]|a[c++]<<8;g===~k&&q(Error(\"invalid uncompressed block header: length verify\"));c+g>a.length&&q(Error(\"input buffer is broken\"));switch(this.q){case Ua:for(;e+g>d.length;){m=\nh-e;g-=m;if(B)d.set(a.subarray(c,c+m),e),e+=m,c+=m;else for(;m--;)d[e++]=a[c++];this.b=e;d=this.f();e=this.b}break;case Ta:for(;e+g>d.length;)d=this.f({B:2});break;default:q(Error(\"invalid inflate mode\"))}if(B)d.set(a.subarray(c,c+g),e),e+=g,c+=g;else for(;g--;)d[e++]=a[c++];this.c=c;this.b=e;this.a=d;break;case 1:this.r(Va,Wa);break;case 2:for(var r=W(this,5)+257,p=W(this,5)+1,l=W(this,4)+4,n=new (B?Uint8Array:Array)(Xa.length),s=t,u=t,w=t,C=t,x=t,D=t,M=t,z=t,N=t,z=0;z=$?8:255>=$?9:279>=$?7:8;var Va=T(hb),jb=new (B?Uint8Array:Array)(30),kb,lb;kb=0;for(lb=jb.length;kb=g&&q(Error(\"input buffer is broken\")),c|=e[f++]<>>a;b.e=d-a;b.c=f;return k}\nfunction Ya(b,a){for(var c=b.j,d=b.e,e=b.input,f=b.c,g=e.length,k=a[0],h=a[1],m,r;d=g);)c|=e[f++]<>>16;r>d&&q(Error(\"invalid code length: \"+r));b.j=c>>r;b.e=d-r;b.c=f;return m&65535}\nV.prototype.r=function(b,a){var c=this.a,d=this.b;this.A=b;for(var e=c.length-258,f,g,k,h;256!==(f=Ya(this,b));)if(256>f)d>=e&&(this.b=d,c=this.f(),d=this.b),c[d++]=f;else{g=f-257;h=ab[g];0=e&&(this.b=d,c=this.f(),d=this.b);for(;h--;)c[d]=c[d++-k]}for(;8<=this.e;)this.e-=8,this.c--;this.b=d};\nV.prototype.Q=function(b,a){var c=this.a,d=this.b;this.A=b;for(var e=c.length,f,g,k,h;256!==(f=Ya(this,b));)if(256>f)d>=e&&(c=this.f(),e=c.length),c[d++]=f;else{g=f-257;h=ab[g];0e&&(c=this.f(),e=c.length);for(;h--;)c[d]=c[d++-k]}for(;8<=this.e;)this.e-=8,this.c--;this.b=d};\nV.prototype.f=function(){var b=new (B?Uint8Array:Array)(this.b-32768),a=this.b-32768,c,d,e=this.a;if(B)b.set(e.subarray(32768,b.length));else{c=0;for(d=b.length;cc;++c)e[c]=e[a+c];this.b=32768;return e};\nV.prototype.S=function(b){var a,c=this.input.length/this.c+1|0,d,e,f,g=this.input,k=this.a;b&&(\"number\"===typeof b.B&&(c=b.B),\"number\"===typeof b.M&&(c+=b.M));2>c?(d=(g.length-this.c)/this.A[2],f=258*(d/2)|0,e=fa&&(this.a.length=a),b=this.a);return this.buffer=b};function mb(b){this.input=b;this.c=0;this.G=[];this.R=!1}\nmb.prototype.i=function(){for(var b=this.input.length;this.c>>0;ha(e,t,t)!==r&&q(Error(\"invalid CRC-32 checksum: 0x\"+ha(e,t,t).toString(16)+\" / 0x\"+\nr.toString(16)));a.Z=c=(p[l++]|p[l++]<<8|p[l++]<<16|p[l++]<<24)>>>0;(e.length&4294967295)!==c&&q(Error(\"invalid input size: \"+(e.length&4294967295)+\" / \"+c));this.G.push(a);this.c=l}this.R=v;var n=this.G,s,u,w=0,C=0,x;s=0;for(u=n.length;s>>0;b=a}for(var e=1,f=0,g=b.length,k,h=0;0>>0};function ob(b,a){var c,d;this.input=b;this.c=0;if(a||!(a={}))a.index&&(this.c=a.index),a.verify&&(this.V=a.verify);c=b[this.c++];d=b[this.c++];switch(c&15){case pb:this.method=pb;break;default:q(Error(\"unsupported compression method\"))}0!==((c<<8)+d)%31&&q(Error(\"invalid fcheck flag:\"+((c<<8)+d)%31));d&32&&q(Error(\"fdict flag is not supported\"));this.J=new V(b,{index:this.c,bufferSize:a.bufferSize,bufferType:a.bufferType,resize:a.resize})}\nob.prototype.i=function(){var b=this.input,a,c;a=this.J.i();this.c=this.J.c;this.V&&(c=(b[this.c++]<<24|b[this.c++]<<16|b[this.c++]<<8|b[this.c++])>>>0,c!==nb(a)&&q(Error(\"invalid adler-32 checksum\")));return a};var pb=8;function rb(b,a){this.input=b;this.a=new (B?Uint8Array:Array)(32768);this.k=sb.t;var c={},d;if((a||!(a={}))&&\"number\"===typeof a.compressionType)this.k=a.compressionType;for(d in a)c[d]=a[d];c.outputBuffer=this.a;this.I=new na(this.input,c)}var sb=pa;\nrb.prototype.h=function(){var b,a,c,d,e,f,g,k=0;g=this.a;b=pb;switch(b){case pb:a=Math.LOG2E*Math.log(32768)-8;break;default:q(Error(\"invalid compression method\"))}c=a<<4|b;g[k++]=c;switch(b){case pb:switch(this.k){case sb.NONE:e=0;break;case sb.L:e=1;break;case sb.t:e=2;break;default:q(Error(\"unsupported compression type\"))}break;default:q(Error(\"invalid compression method\"))}d=e<<6|0;g[k++]=d|31-(256*c+d)%31;f=nb(this.input);this.I.b=k;g=this.I.h();k=g.length;B&&(g=new Uint8Array(g.buffer),g.length<=\nk+4&&(this.a=new Uint8Array(g.length+4),this.a.set(g),g=this.a),g=g.subarray(0,k+4));g[k++]=f>>24&255;g[k++]=f>>16&255;g[k++]=f>>8&255;g[k++]=f&255;return g};exports.deflate=tb;exports.deflateSync=ub;exports.inflate=vb;exports.inflateSync=wb;exports.gzip=xb;exports.gzipSync=yb;exports.gunzip=zb;exports.gunzipSync=Ab;function tb(b,a,c){process.nextTick(function(){var d,e;try{e=ub(b,c)}catch(f){d=f}a(d,e)})}function ub(b,a){var c;c=(new rb(b)).h();a||(a={});return a.H?c:Bb(c)}function vb(b,a,c){process.nextTick(function(){var d,e;try{e=wb(b,c)}catch(f){d=f}a(d,e)})}\nfunction wb(b,a){var c;b.subarray=b.slice;c=(new ob(b)).i();a||(a={});return a.noBuffer?c:Bb(c)}function xb(b,a,c){process.nextTick(function(){var d,e;try{e=yb(b,c)}catch(f){d=f}a(d,e)})}function yb(b,a){var c;b.subarray=b.slice;c=(new Ba(b)).h();a||(a={});return a.H?c:Bb(c)}function zb(b,a,c){process.nextTick(function(){var d,e;try{e=Ab(b,c)}catch(f){d=f}a(d,e)})}function Ab(b,a){var c;b.subarray=b.slice;c=(new mb(b)).i();a||(a={});return a.H?c:Bb(c)}\nfunction Bb(b){var a=new Buffer(b.length),c,d;c=0;for(d=b.length;c(async e=>{try{return(await WebAssembly.instantiate(e)).instance.exports.b(BigInt(0))===BigInt(0)}catch(e){return!1}})(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,126,1,126,3,2,1,0,7,5,1,1,98,0,0,10,6,1,4,0,32,0,11])),bulkMemory:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),exceptions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),exceptionsFinal:()=>(async()=>{try{return new WebAssembly.Module(Uint8Array.from(atob(\"AGFzbQEAAAABBAFgAAADAgEAChABDgACaR9AAQMAAAsACxoL\"),(e=>e.codePointAt(0)))),!0}catch(e){return!1}})(),extendedConst:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,5,3,1,0,1,11,9,1,0,65,1,65,2,106,11,0])),gc:()=>(async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,95,1,120,0])))(),jsStringBuiltins:()=>(async()=>{try{return await WebAssembly.instantiate(Uint8Array.from(atob(\"AGFzbQEAAAABBgFgAW8BfwIXAQ53YXNtOmpzLXN0cmluZwR0ZXN0AAA=\"),(e=>e.codePointAt(0))),{},{builtins:[\"js-string\"]}),!0}catch(e){return!1}})(),jspi:()=>(async()=>\"Suspending\"in WebAssembly)(),memory64:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,5,3,1,4,1])),multiMemory:()=>(async()=>{try{return new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,5,5,2,0,0,0,0])),!0}catch(e){return!1}})(),multiValue:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,0,2,127,127,3,2,1,0,10,8,1,6,0,65,0,65,0,11])),mutableGlobals:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,2,8,1,1,97,1,98,3,127,1,6,6,1,127,1,65,0,11,7,5,1,1,97,3,1])),referenceTypes:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,7,1,5,0,208,112,26,11])),relaxedSimd:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,15,1,13,0,65,1,253,15,65,2,253,15,253,128,2,11])),saturatedFloatToInt:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,12,1,10,0,67,0,0,0,0,252,0,26,11])),signExtensions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,65,0,192,26,11])),simd:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),streamingCompilation:()=>(async()=>\"compileStreaming\"in WebAssembly)(),tailCall:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,6,1,4,0,18,0,11])),threads:()=>(async e=>{try{return\"undefined\"!=typeof MessageChannel&&(new MessageChannel).port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(e)}catch(e){return!1}})(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11])),typeReflection:()=>(async()=>\"Function\"in WebAssembly)(),typedFunctionReferences:()=>(async()=>{try{return new WebAssembly.Module(Uint8Array.from(atob(\"AGFzbQEAAAABEANgAX8Bf2ABZAABf2AAAX8DBAMBAAIJBQEDAAEBChwDCwBBCkEqIAAUAGoLBwAgAEEBagsGANIBEAAL\"),(e=>e.codePointAt(0)))),!0}catch(e){return!1}})()};module.exports=e;\n","'use strict';\n\nmodule.exports = require('zlibjs').gunzipSync;\n","'use strict';\n\nconst bmp = require('bmp-js');\n\n/**\n * setImage\n *\n * @name setImage\n * @function set image in tesseract for recognition\n * @access public\n */\nmodule.exports = (TessModule, api, image, angle = 0) => {\n // Check for bmp magic numbers (42 and 4D in hex)\n const isBmp = (image[0] === 66 && image[1] === 77) || (image[1] === 66 && image[0] === 77);\n\n const exif = parseInt(image.slice(0, 500).join(' ').match(/1 18 0 3 0 0 0 1 0 (\\d)/)?.[1], 10) || 1;\n\n // /*\n // * Leptonica supports some but not all bmp files\n // * @see https://github.com/DanBloomberg/leptonica/issues/607#issuecomment-1068802516\n // * We therefore use bmp-js to convert all bmp files into a format Leptonica is known to support\n // */\n if (isBmp) {\n // Not sure what this line actually does, but removing breaks the function\n const buf = Buffer.from(Array.from({ ...image, length: Object.keys(image).length }));\n const bmpBuf = bmp.decode(buf);\n TessModule.FS.writeFile('/input', bmp.encode(bmpBuf).data);\n } else {\n TessModule.FS.writeFile('/input', image);\n }\n\n const res = api.SetImageFile(exif, angle);\n if (res === 1) throw Error('Error attempting to read image.');\n};\n","'use strict';\n\n/**\n *\n * Dump data to a big JSON tree\n *\n * @fileoverview dump data to JSON tree\n * @author Kevin Kwok \n * @author Guillermo Webster \n * @author Jerome Wu \n */\nconst arrayBufferToBase64 = require('./arrayBufferToBase64');\nconst imageType = require('../../constants/imageType');\n\n/**\n * deindent\n *\n * The generated HOCR is excessively indented, so\n * we get rid of that indentation\n *\n * @name deindent\n * @function deindent string\n * @access public\n */\nconst deindent = (html) => {\n const lines = html.split('\\n');\n if (lines[0].substring(0, 2) === ' ') {\n for (let i = 0; i < lines.length; i += 1) {\n if (lines[i].substring(0, 2) === ' ') {\n lines[i] = lines[i].slice(2);\n }\n }\n }\n return lines.join('\\n');\n};\n\n/**\n * dump\n *\n * @name dump\n * @function dump recognition result to a JSON object\n * @access public\n */\nmodule.exports = (TessModule, api, output, options) => {\n const enumToString = (value, prefix) => (\n Object.keys(TessModule)\n .filter((e) => (e.startsWith(`${prefix}_`) && TessModule[e] === value))\n .map((e) => e.slice(prefix.length + 1))[0]\n );\n\n const getImage = (type) => {\n api.WriteImage(type, '/image.png');\n const pngBuffer = TessModule.FS.readFile('/image.png');\n const pngStr = `data:image/png;base64,${arrayBufferToBase64(pngBuffer.buffer)}`;\n TessModule.FS.unlink('/image.png');\n return pngStr;\n };\n\n const getPDFInternal = (title, textonly) => {\n const pdfRenderer = new TessModule.TessPDFRenderer('tesseract-ocr', '/', textonly);\n pdfRenderer.BeginDocument(title);\n pdfRenderer.AddImage(api);\n pdfRenderer.EndDocument();\n TessModule._free(pdfRenderer);\n\n return TessModule.FS.readFile('/tesseract-ocr.pdf');\n };\n\n return {\n text: output.text ? api.GetUTF8Text() : null,\n hocr: output.hocr ? deindent(api.GetHOCRText()) : null,\n tsv: output.tsv ? api.GetTSVText() : null,\n box: output.box ? api.GetBoxText() : null,\n unlv: output.unlv ? api.GetUNLVText() : null,\n osd: output.osd ? api.GetOsdText() : null,\n pdf: output.pdf ? getPDFInternal(options.pdfTitle ?? 'Tesseract OCR Result', options.pdfTextOnly ?? false) : null,\n imageColor: output.imageColor ? getImage(imageType.COLOR) : null,\n imageGrey: output.imageGrey ? getImage(imageType.GREY) : null,\n imageBinary: output.imageBinary ? getImage(imageType.BINARY) : null,\n confidence: !options.skipRecognition ? api.MeanTextConf() : null,\n blocks: output.blocks && !options.skipRecognition ? JSON.parse(api.GetJSONText()).blocks : null,\n layoutBlocks: output.layoutBlocks && options.skipRecognition\n ? JSON.parse(api.GetJSONText()).blocks : null,\n psm: enumToString(api.GetPageSegMode(), 'PSM'),\n oem: enumToString(api.oem(), 'OEM'),\n version: api.Version(),\n debug: output.debug ? TessModule.FS.readFile('/debugInternal.txt', { encoding: 'utf8', flags: 'a+' }) : null,\n };\n};\n","/**\n * @author shaozilee\n *\n * BMP format encoder,encode 24bit BMP\n * Not support quality compression\n *\n */\n\nfunction BmpEncoder(imgData){\n\tthis.buffer = imgData.data;\n\tthis.width = imgData.width;\n\tthis.height = imgData.height;\n\tthis.extraBytes = this.width%4;\n\tthis.rgbSize = this.height*(3*this.width+this.extraBytes);\n\tthis.headerInfoSize = 40;\n\n\tthis.data = [];\n\t/******************header***********************/\n\tthis.flag = \"BM\";\n\tthis.reserved = 0;\n\tthis.offset = 54;\n\tthis.fileSize = this.rgbSize+this.offset;\n\tthis.planes = 1;\n\tthis.bitPP = 24;\n\tthis.compress = 0;\n\tthis.hr = 0;\n\tthis.vr = 0;\n\tthis.colors = 0;\n\tthis.importantColors = 0;\n}\n\nBmpEncoder.prototype.encode = function() {\n\tvar tempBuffer = new Buffer(this.offset+this.rgbSize);\n\tthis.pos = 0;\n\ttempBuffer.write(this.flag,this.pos,2);this.pos+=2;\n\ttempBuffer.writeUInt32LE(this.fileSize,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.reserved,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.offset,this.pos);this.pos+=4;\n\n\ttempBuffer.writeUInt32LE(this.headerInfoSize,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.width,this.pos);this.pos+=4;\n\ttempBuffer.writeInt32LE(-this.height,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt16LE(this.planes,this.pos);this.pos+=2;\n\ttempBuffer.writeUInt16LE(this.bitPP,this.pos);this.pos+=2;\n\ttempBuffer.writeUInt32LE(this.compress,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.rgbSize,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.hr,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.vr,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.colors,this.pos);this.pos+=4;\n\ttempBuffer.writeUInt32LE(this.importantColors,this.pos);this.pos+=4;\n\n\tvar i=0;\n\tvar rowBytes = 3*this.width+this.extraBytes;\n\n\tfor (var y = 0; y 0){\n\t\t\tvar fillOffset = this.pos+y*rowBytes+this.width*3;\n\t\t\ttempBuffer.fill(0,fillOffset,fillOffset+this.extraBytes);\n\t\t}\n\t}\n\n\treturn tempBuffer;\n};\n\nmodule.exports = function(imgData, quality) {\n if (typeof quality === 'undefined') quality = 100;\n \tvar encoder = new BmpEncoder(imgData);\n\tvar data = encoder.encode();\n return {\n data: data,\n width: imgData.width,\n height: imgData.height\n };\n};\n","\n/**\n * Expose `isUrl`.\n */\n\nmodule.exports = isUrl;\n\n/**\n * RegExps.\n * A URL must match #1 and then at least one of #2/#3.\n * Use two levels of REs to avoid REDOS.\n */\n\nvar protocolAndDomainRE = /^(?:\\w+:)?\\/\\/(\\S+)$/;\n\nvar localhostDomainRE = /^localhost[\\:?\\d]*(?:[^\\:?\\d]\\S*)?$/\nvar nonLocalhostDomainRE = /^[^\\s\\.]+\\.\\S{2,}$/;\n\n/**\n * Loosely validate a URL `string`.\n *\n * @param {String} string\n * @return {Boolean}\n */\n\nfunction isUrl(string){\n if (typeof string !== 'string') {\n return false;\n }\n\n var match = string.match(protocolAndDomainRE);\n if (!match) {\n return false;\n }\n\n var everythingAfterProtocol = match[1];\n if (!everythingAfterProtocol) {\n return false;\n }\n\n if (localhostDomainRE.test(everythingAfterProtocol) ||\n nonLocalhostDomainRE.test(everythingAfterProtocol)) {\n return true;\n }\n\n return false;\n}\n","/**\n * @author shaozilee\n *\n * support 1bit 4bit 8bit 24bit decode\n * encode with 24bit\n * \n */\n\nvar encode = require('./lib/encoder'),\n decode = require('./lib/decoder');\n\nmodule.exports = {\n encode: encode,\n decode: decode\n};\n","'use strict';\n\n// Copied from https://gist.github.com/jonleighton/958841\n// Copyright 2011 Jon Leighton, MIT LICENSE\n\n/* eslint no-bitwise: 0 */\nmodule.exports = (arrayBuffer) => {\n let base64 = '';\n const encodings = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n const bytes = new Uint8Array(arrayBuffer);\n const { byteLength } = bytes;\n const byteRemainder = byteLength % 3;\n const mainLength = byteLength - byteRemainder;\n\n let a; let b; let c; let\n d;\n let chunk;\n\n // Main loop deals with bytes in chunks of 3\n for (let i = 0; i < mainLength; i += 3) {\n // Combine the three bytes into a single integer\n chunk = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n\n // Use bitmasks to extract 6-bit segments from the triplet\n a = (chunk & 16515072) >> 18; // 16515072 = (2^6 - 1) << 18\n b = (chunk & 258048) >> 12; // 258048 = (2^6 - 1) << 12\n c = (chunk & 4032) >> 6; // 4032 = (2^6 - 1) << 6\n d = chunk & 63; // 63 = 2^6 - 1\n\n // Convert the raw binary segments to the appropriate ASCII encoding\n base64 += encodings[a] + encodings[b] + encodings[c] + encodings[d];\n }\n\n // Deal with the remaining bytes and padding\n if (byteRemainder === 1) {\n chunk = bytes[mainLength];\n\n a = (chunk & 252) >> 2; // 252 = (2^6 - 1) << 2\n\n // Set the 4 least significant bits to zero\n b = (chunk & 3) << 4; // 3 = 2^2 - 1\n\n base64 += `${encodings[a] + encodings[b]}==`;\n } else if (byteRemainder === 2) {\n chunk = (bytes[mainLength] << 8) | bytes[mainLength + 1];\n\n a = (chunk & 64512) >> 10; // 64512 = (2^6 - 1) << 10\n b = (chunk & 1008) >> 4; // 1008 = (2^6 - 1) << 4\n\n // Set the 2 least significant bits to zero\n c = (chunk & 15) << 2; // 15 = 2^4 - 1\n\n base64 += `${encodings[a] + encodings[b] + encodings[c]}=`;\n }\n\n return base64;\n};\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","function promisifyRequest(request) {\n return new Promise((resolve, reject) => {\n // @ts-ignore - file size hacks\n request.oncomplete = request.onsuccess = () => resolve(request.result);\n // @ts-ignore - file size hacks\n request.onabort = request.onerror = () => reject(request.error);\n });\n}\nfunction createStore(dbName, storeName) {\n const request = indexedDB.open(dbName);\n request.onupgradeneeded = () => request.result.createObjectStore(storeName);\n const dbp = promisifyRequest(request);\n return (txMode, callback) => dbp.then((db) => callback(db.transaction(storeName, txMode).objectStore(storeName)));\n}\nlet defaultGetStoreFunc;\nfunction defaultGetStore() {\n if (!defaultGetStoreFunc) {\n defaultGetStoreFunc = createStore('keyval-store', 'keyval');\n }\n return defaultGetStoreFunc;\n}\n/**\n * Get a value by its key.\n *\n * @param key\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction get(key, customStore = defaultGetStore()) {\n return customStore('readonly', (store) => promisifyRequest(store.get(key)));\n}\n/**\n * Set a value with a key.\n *\n * @param key\n * @param value\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction set(key, value, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.put(value, key);\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Set multiple values at once. This is faster than calling set() multiple times.\n * It's also atomic – if one of the pairs can't be added, none will be added.\n *\n * @param entries Array of entries, where each entry is an array of `[key, value]`.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction setMany(entries, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n entries.forEach((entry) => store.put(entry[1], entry[0]));\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Get multiple values by their keys\n *\n * @param keys\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction getMany(keys, customStore = defaultGetStore()) {\n return customStore('readonly', (store) => Promise.all(keys.map((key) => promisifyRequest(store.get(key)))));\n}\n/**\n * Update a value. This lets you see the old value and update it as an atomic operation.\n *\n * @param key\n * @param updater A callback that takes the old value and returns a new value.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction update(key, updater, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => \n // Need to create the promise manually.\n // If I try to chain promises, the transaction closes in browsers\n // that use a promise polyfill (IE10/11).\n new Promise((resolve, reject) => {\n store.get(key).onsuccess = function () {\n try {\n store.put(updater(this.result), key);\n resolve(promisifyRequest(store.transaction));\n }\n catch (err) {\n reject(err);\n }\n };\n }));\n}\n/**\n * Delete a particular key from the store.\n *\n * @param key\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction del(key, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.delete(key);\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Delete multiple keys at once.\n *\n * @param keys List of keys to delete.\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction delMany(keys, customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n keys.forEach((key) => store.delete(key));\n return promisifyRequest(store.transaction);\n });\n}\n/**\n * Clear all values in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction clear(customStore = defaultGetStore()) {\n return customStore('readwrite', (store) => {\n store.clear();\n return promisifyRequest(store.transaction);\n });\n}\nfunction eachCursor(store, callback) {\n store.openCursor().onsuccess = function () {\n if (!this.result)\n return;\n callback(this.result);\n this.result.continue();\n };\n return promisifyRequest(store.transaction);\n}\n/**\n * Get all keys in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction keys(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n if (store.getAllKeys) {\n return promisifyRequest(store.getAllKeys());\n }\n const items = [];\n return eachCursor(store, (cursor) => items.push(cursor.key)).then(() => items);\n });\n}\n/**\n * Get all values in the store.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction values(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n if (store.getAll) {\n return promisifyRequest(store.getAll());\n }\n const items = [];\n return eachCursor(store, (cursor) => items.push(cursor.value)).then(() => items);\n });\n}\n/**\n * Get all entries in the store. Each entry is an array of `[key, value]`.\n *\n * @param customStore Method to get a custom store. Use with caution (see the docs).\n */\nfunction entries(customStore = defaultGetStore()) {\n return customStore('readonly', (store) => {\n // Fast path for modern browsers\n // (although, hopefully we'll get a simpler path some day)\n if (store.getAll && store.getAllKeys) {\n return Promise.all([\n promisifyRequest(store.getAllKeys()),\n promisifyRequest(store.getAll()),\n ]).then(([keys, values]) => keys.map((key, i) => [key, values[i]]));\n }\n const items = [];\n return customStore('readonly', (store) => eachCursor(store, (cursor) => items.push([cursor.key, cursor.value])).then(() => items));\n });\n}\n\nexport { clear, createStore, del, delMany, entries, get, getMany, keys, promisifyRequest, set, setMany, update, values };\n","'use strict';\n\n/*\n * default output formats for tesseract.js\n */\n\nmodule.exports = {\n text: true,\n blocks: false,\n layoutBlocks: false,\n hocr: false,\n tsv: false,\n box: false,\n unlv: false,\n osd: false,\n pdf: false,\n imageColor: false,\n imageGrey: false,\n imageBinary: false,\n debug: false,\n};\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","'use strict';\n\nconst { set, get, del } = require('idb-keyval');\n\nmodule.exports = {\n readCache: get,\n writeCache: set,\n deleteCache: del,\n checkCache: (path) => (\n get(path).then((v) => typeof v !== 'undefined')\n ),\n};\n","/**\n * @author shaozilee\n *\n * Bmp format decoder,support 1bit 4bit 8bit 24bit bmp\n *\n */\n\nfunction BmpDecoder(buffer,is_with_alpha) {\n this.pos = 0;\n this.buffer = buffer;\n this.is_with_alpha = !!is_with_alpha;\n this.bottom_up = true;\n this.flag = this.buffer.toString(\"utf-8\", 0, this.pos += 2);\n if (this.flag != \"BM\") throw new Error(\"Invalid BMP File\");\n this.parseHeader();\n this.parseRGBA();\n}\n\nBmpDecoder.prototype.parseHeader = function() {\n this.fileSize = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.reserved = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.offset = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.headerSize = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.width = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.height = this.buffer.readInt32LE(this.pos);\n this.pos += 4;\n this.planes = this.buffer.readUInt16LE(this.pos);\n this.pos += 2;\n this.bitPP = this.buffer.readUInt16LE(this.pos);\n this.pos += 2;\n this.compress = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.rawSize = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.hr = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.vr = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.colors = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n this.importantColors = this.buffer.readUInt32LE(this.pos);\n this.pos += 4;\n\n if(this.bitPP === 16 && this.is_with_alpha){\n this.bitPP = 15\n }\n if (this.bitPP < 15) {\n var len = this.colors === 0 ? 1 << this.bitPP : this.colors;\n this.palette = new Array(len);\n for (var i = 0; i < len; i++) {\n var blue = this.buffer.readUInt8(this.pos++);\n var green = this.buffer.readUInt8(this.pos++);\n var red = this.buffer.readUInt8(this.pos++);\n var quad = this.buffer.readUInt8(this.pos++);\n this.palette[i] = {\n red: red,\n green: green,\n blue: blue,\n quad: quad\n };\n }\n }\n if(this.height < 0) {\n this.height *= -1;\n this.bottom_up = false;\n }\n\n}\n\nBmpDecoder.prototype.parseRGBA = function() {\n var bitn = \"bit\" + this.bitPP;\n var len = this.width * this.height * 4;\n this.data = new Buffer(len);\n this[bitn]();\n};\n\nBmpDecoder.prototype.bit1 = function() {\n var xlen = Math.ceil(this.width / 8);\n var mode = xlen%4;\n var y = this.height >= 0 ? this.height - 1 : -this.height\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y\n for (var x = 0; x < xlen; x++) {\n var b = this.buffer.readUInt8(this.pos++);\n var location = line * this.width * 4 + x*8*4;\n for (var i = 0; i < 8; i++) {\n if(x*8+i>(7-i))&0x1)];\n\n this.data[location+i*4] = 0;\n this.data[location+i*4 + 1] = rgb.blue;\n this.data[location+i*4 + 2] = rgb.green;\n this.data[location+i*4 + 3] = rgb.red;\n\n }else{\n break;\n }\n }\n }\n\n if (mode != 0){\n this.pos+=(4 - mode);\n }\n }\n};\n\nBmpDecoder.prototype.bit4 = function() {\n //RLE-4\n if(this.compress == 2){\n this.data.fill(0xff);\n\n var location = 0;\n var lines = this.bottom_up?this.height-1:0;\n var low_nibble = false;//for all count of pixel\n\n while(location>4);\n }\n\n if ((i & 1) && (i+1 < b)){\n c = this.buffer.readUInt8(this.pos++);\n }\n\n low_nibble = !low_nibble;\n }\n\n if ((((b+1) >> 1) & 1 ) == 1){\n this.pos++\n }\n }\n\n }else{//encoded mode\n for (var i = 0; i < a; i++) {\n if (low_nibble) {\n setPixelData.call(this, (b & 0x0f));\n } else {\n setPixelData.call(this, (b & 0xf0)>>4);\n }\n low_nibble = !low_nibble;\n }\n }\n\n }\n\n\n\n\n function setPixelData(rgbIndex){\n var rgb = this.palette[rgbIndex];\n this.data[location] = 0;\n this.data[location + 1] = rgb.blue;\n this.data[location + 2] = rgb.green;\n this.data[location + 3] = rgb.red;\n location+=4;\n }\n }else{\n\n var xlen = Math.ceil(this.width/2);\n var mode = xlen%4;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y\n for (var x = 0; x < xlen; x++) {\n var b = this.buffer.readUInt8(this.pos++);\n var location = line * this.width * 4 + x*2*4;\n\n var before = b>>4;\n var after = b&0x0F;\n\n var rgb = this.palette[before];\n this.data[location] = 0;\n this.data[location + 1] = rgb.blue;\n this.data[location + 2] = rgb.green;\n this.data[location + 3] = rgb.red;\n\n\n if(x*2+1>=this.width)break;\n\n rgb = this.palette[after];\n\n this.data[location+4] = 0;\n this.data[location+4 + 1] = rgb.blue;\n this.data[location+4 + 2] = rgb.green;\n this.data[location+4 + 3] = rgb.red;\n\n }\n\n if (mode != 0){\n this.pos+=(4 - mode);\n }\n }\n\n }\n\n};\n\nBmpDecoder.prototype.bit8 = function() {\n //RLE-8\n if(this.compress == 1){\n this.data.fill(0xff);\n\n var location = 0;\n var lines = this.bottom_up?this.height-1:0;\n\n while(location= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y\n for (var x = 0; x < this.width; x++) {\n var b = this.buffer.readUInt8(this.pos++);\n var location = line * this.width * 4 + x * 4;\n if (b < this.palette.length) {\n var rgb = this.palette[b];\n\n this.data[location] = 0;\n this.data[location + 1] = rgb.blue;\n this.data[location + 2] = rgb.green;\n this.data[location + 3] = rgb.red;\n\n } else {\n this.data[location] = 0;\n this.data[location + 1] = 0xFF;\n this.data[location + 2] = 0xFF;\n this.data[location + 3] = 0xFF;\n }\n }\n if (mode != 0) {\n this.pos += (4 - mode);\n }\n }\n }\n};\n\nBmpDecoder.prototype.bit15 = function() {\n var dif_w =this.width % 3;\n var _11111 = parseInt(\"11111\", 2),_1_5 = _11111;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y\n for (var x = 0; x < this.width; x++) {\n\n var B = this.buffer.readUInt16LE(this.pos);\n this.pos+=2;\n var blue = (B & _1_5) / _1_5 * 255 | 0;\n var green = (B >> 5 & _1_5 ) / _1_5 * 255 | 0;\n var red = (B >> 10 & _1_5) / _1_5 * 255 | 0;\n var alpha = (B>>15)?0xFF:0x00;\n\n var location = line * this.width * 4 + x * 4;\n\n this.data[location] = alpha;\n this.data[location + 1] = blue;\n this.data[location + 2] = green;\n this.data[location + 3] = red;\n }\n //skip extra bytes\n this.pos += dif_w;\n }\n};\n\nBmpDecoder.prototype.bit16 = function() {\n var dif_w =(this.width % 2)*2;\n //default xrgb555\n this.maskRed = 0x7C00;\n this.maskGreen = 0x3E0;\n this.maskBlue =0x1F;\n this.mask0 = 0;\n\n if(this.compress == 3){\n this.maskRed = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n this.maskGreen = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n this.maskBlue = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n this.mask0 = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n }\n\n\n var ns=[0,0,0];\n for (var i=0;i<16;i++){\n if ((this.maskRed>>i)&0x01) ns[0]++;\n if ((this.maskGreen>>i)&0x01) ns[1]++;\n if ((this.maskBlue>>i)&0x01) ns[2]++;\n }\n ns[1]+=ns[0]; ns[2]+=ns[1];\tns[0]=8-ns[0]; ns[1]-=8; ns[2]-=8;\n\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n\n var B = this.buffer.readUInt16LE(this.pos);\n this.pos+=2;\n\n var blue = (B&this.maskBlue)<>ns[1];\n var red = (B&this.maskRed)>>ns[2];\n\n var location = line * this.width * 4 + x * 4;\n\n this.data[location] = 0;\n this.data[location + 1] = blue;\n this.data[location + 2] = green;\n this.data[location + 3] = red;\n }\n //skip extra bytes\n this.pos += dif_w;\n }\n};\n\nBmpDecoder.prototype.bit24 = function() {\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y\n for (var x = 0; x < this.width; x++) {\n //Little Endian rgb\n var blue = this.buffer.readUInt8(this.pos++);\n var green = this.buffer.readUInt8(this.pos++);\n var red = this.buffer.readUInt8(this.pos++);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = 0;\n this.data[location + 1] = blue;\n this.data[location + 2] = green;\n this.data[location + 3] = red;\n }\n //skip extra bytes\n this.pos += (this.width % 4);\n }\n\n};\n\n/**\n * add 32bit decode func\n * @author soubok\n */\nBmpDecoder.prototype.bit32 = function() {\n //BI_BITFIELDS\n if(this.compress == 3){\n this.maskRed = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n this.maskGreen = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n this.maskBlue = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n this.mask0 = this.buffer.readUInt32LE(this.pos);\n this.pos+=4;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n //Little Endian rgba\n var alpha = this.buffer.readUInt8(this.pos++);\n var blue = this.buffer.readUInt8(this.pos++);\n var green = this.buffer.readUInt8(this.pos++);\n var red = this.buffer.readUInt8(this.pos++);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = alpha;\n this.data[location + 1] = blue;\n this.data[location + 2] = green;\n this.data[location + 3] = red;\n }\n }\n\n }else{\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n //Little Endian argb\n var blue = this.buffer.readUInt8(this.pos++);\n var green = this.buffer.readUInt8(this.pos++);\n var red = this.buffer.readUInt8(this.pos++);\n var alpha = this.buffer.readUInt8(this.pos++);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = alpha;\n this.data[location + 1] = blue;\n this.data[location + 2] = green;\n this.data[location + 3] = red;\n }\n }\n\n }\n\n\n\n\n};\n\nBmpDecoder.prototype.getData = function() {\n return this.data;\n};\n\nmodule.exports = function(bmpData) {\n var decoder = new BmpDecoder(bmpData);\n return decoder;\n};\n","'use strict';\n\nmodule.exports = (key) => {\n const env = {};\n\n if (typeof WorkerGlobalScope !== 'undefined') {\n env.type = 'webworker';\n } else if (typeof document === 'object') {\n env.type = 'browser';\n } else if (typeof process === 'object' && typeof require === 'function') {\n env.type = 'node';\n }\n\n if (typeof key === 'undefined') {\n return env;\n }\n\n return env[key];\n};\n","'use strict';\n\n/**\n *\n * Worker script for browser and node\n *\n * @fileoverview Worker script for browser and node\n * @author Kevin Kwok \n * @author Guillermo Webster \n * @author Jerome Wu \n */\nrequire('regenerator-runtime/runtime');\nconst isURL = require('is-url');\nconst dump = require('./utils/dump');\nconst env = require('../utils/getEnvironment')('type');\nconst setImage = require('./utils/setImage');\nconst defaultOutput = require('./constants/defaultOutput');\nconst { log, setLogging } = require('../utils/log');\nconst PSM = require('../constants/PSM');\n\n/*\n * Tesseract Module returned by TesseractCore.\n */\nlet TessModule;\n/*\n * TessearctBaseAPI instance\n */\nlet api = null;\nlet latestJob;\nlet adapter = {};\nlet params = {};\nlet loadLanguageLangsWorker;\nlet loadLanguageOptionsWorker;\nlet dataFromCache = false;\n\nconst load = async ({ workerId, jobId, payload: { options: { lstmOnly, corePath, logging } } }, res) => { // eslint-disable-line max-len\n setLogging(logging);\n\n const statusText = 'initializing tesseract';\n\n if (!TessModule) {\n const Core = await adapter.getCore(lstmOnly, corePath, res);\n\n res.progress({ workerId, status: statusText, progress: 0 });\n\n Core({\n TesseractProgress(percent) {\n latestJob.progress({\n workerId,\n jobId,\n status: 'recognizing text',\n progress: Math.max(0, (percent - 30) / 70),\n });\n },\n }).then((tessModule) => {\n TessModule = tessModule;\n res.progress({ workerId, status: statusText, progress: 1 });\n res.resolve({ loaded: true });\n });\n } else {\n res.resolve({ loaded: true });\n }\n};\n\nconst FS = async ({ workerId, payload: { method, args } }, res) => {\n log(`[${workerId}]: FS.${method}`);\n res.resolve(TessModule.FS[method](...args));\n};\n\nconst loadLanguage = async ({\n workerId,\n payload: {\n langs,\n options: {\n langPath,\n dataPath,\n cachePath,\n cacheMethod,\n gzip = true,\n lstmOnly,\n },\n },\n},\nres) => {\n // Remember options for later, as cache may be deleted if `initialize` fails\n loadLanguageLangsWorker = langs;\n loadLanguageOptionsWorker = {\n langPath,\n dataPath,\n cachePath,\n cacheMethod,\n gzip,\n lstmOnly,\n };\n\n const statusText = 'loading language traineddata';\n\n const langsArr = typeof langs === 'string' ? langs.split('+') : langs;\n let progress = 0;\n\n const loadAndGunzipFile = async (_lang) => {\n const lang = typeof _lang === 'string' ? _lang : _lang.code;\n const readCache = ['refresh', 'none'].includes(cacheMethod)\n ? () => Promise.resolve()\n : adapter.readCache;\n let data = null;\n let newData = false;\n\n // Check for existing .traineddata file in cache\n // This automatically fails if cacheMethod is set to 'refresh' or 'none'\n try {\n const _data = await readCache(`${cachePath || '.'}/${lang}.traineddata`);\n if (typeof _data !== 'undefined') {\n log(`[${workerId}]: Load ${lang}.traineddata from cache`);\n data = _data;\n dataFromCache = true;\n } else {\n throw Error('Not found in cache');\n }\n // Attempt to fetch new .traineddata file\n } catch (e) {\n newData = true;\n log(`[${workerId}]: Load ${lang}.traineddata from ${langPath}`);\n if (typeof _lang === 'string') {\n let path = null;\n\n // If `langPath` if not explicitly set by the user, the jsdelivr CDN is used.\n // Data supporting the Legacy model is only included if `lstmOnly` is not true.\n // This saves a significant amount of data for the majority of users that use LSTM only.\n const langPathDownload = langPath || (lstmOnly ? `https://cdn.jsdelivr.net/npm/@tesseract.js-data/${lang}/4.0.0_best_int` : `https://cdn.jsdelivr.net/npm/@tesseract.js-data/${lang}/4.0.0`);\n\n // For Node.js, langPath may be a URL or local file path\n // The is-url package is used to tell the difference\n // For the browser version, langPath is assumed to be a URL\n if (env !== 'node' || isURL(langPathDownload) || langPathDownload.startsWith('moz-extension://') || langPathDownload.startsWith('chrome-extension://') || langPathDownload.startsWith('file://')) { /** When langPathDownload is an URL */\n path = langPathDownload.replace(/\\/$/, '');\n }\n\n // langPathDownload is a URL, fetch from server\n if (path !== null) {\n const fetchUrl = `${path}/${lang}.traineddata${gzip ? '.gz' : ''}`;\n const resp = await (env === 'webworker' ? fetch : adapter.fetch)(fetchUrl);\n if (!resp.ok) {\n throw Error(`Network error while fetching ${fetchUrl}. Response code: ${resp.status}`);\n }\n data = new Uint8Array(await resp.arrayBuffer());\n\n // langPathDownload is a local file, read .traineddata from local filesystem\n // (adapter.readCache is a generic file read function in Node.js version)\n } else {\n data = await adapter.readCache(`${langPathDownload}/${lang}.traineddata${gzip ? '.gz' : ''}`);\n }\n } else {\n data = _lang.data; // eslint-disable-line\n }\n }\n\n progress += 0.5 / langsArr.length;\n if (res) res.progress({ workerId, status: statusText, progress });\n\n // Check for gzip magic numbers (1F and 8B in hex)\n const isGzip = (data[0] === 31 && data[1] === 139) || (data[1] === 31 && data[0] === 139);\n\n if (isGzip) {\n data = adapter.gunzip(data);\n }\n\n if (TessModule) {\n if (dataPath) {\n try {\n TessModule.FS.mkdir(dataPath);\n } catch (err) {\n if (res) res.reject(err.toString());\n }\n }\n TessModule.FS.writeFile(`${dataPath || '.'}/${lang}.traineddata`, data);\n }\n\n if (newData && ['write', 'refresh', undefined].includes(cacheMethod)) {\n try {\n await adapter.writeCache(`${cachePath || '.'}/${lang}.traineddata`, data);\n } catch (err) {\n log(`[${workerId}]: Failed to write ${lang}.traineddata to cache due to error:`);\n log(err.toString());\n }\n }\n\n progress += 0.5 / langsArr.length;\n // Make sure last progress message is 1 (not 0.9999)\n if (Math.round(progress * 100) === 100) progress = 1;\n if (res) res.progress({ workerId, status: statusText, progress });\n };\n\n if (res) res.progress({ workerId, status: statusText, progress: 0 });\n try {\n await Promise.all(langsArr.map(loadAndGunzipFile));\n if (res) res.resolve(langs);\n } catch (err) {\n if (res) res.reject(err.toString());\n }\n};\n\nconst setParameters = async ({ payload: { params: _params } }, res) => {\n // A small number of parameters can only be set at initialization.\n // These can only be set using (1) the `oem` argument of `initialize` (for setting the oem)\n // or (2) the `config` argument of `initialize` (for all other settings).\n // Attempting to set these using this function will have no impact so a warning is printed.\n // This list is generated by searching the Tesseract codebase for parameters\n // defined with `[type]_INIT_MEMBER` rather than `[type]_MEMBER`.\n const initParamNames = ['ambigs_debug_level', 'user_words_suffix', 'user_patterns_suffix', 'user_patterns_suffix',\n 'load_system_dawg', 'load_freq_dawg', 'load_unambig_dawg', 'load_punc_dawg', 'load_number_dawg', 'load_bigram_dawg',\n 'tessedit_ocr_engine_mode', 'tessedit_init_config_only', 'language_model_ngram_on', 'language_model_use_sigmoidal_certainty'];\n\n const initParamStr = Object.keys(_params)\n .filter((k) => initParamNames.includes(k))\n .join(', ');\n\n if (initParamStr.length > 0) console.log(`Attempted to set parameters that can only be set during initialization: ${initParamStr}`);\n\n Object.keys(_params)\n .filter((k) => !k.startsWith('tessjs_'))\n .forEach((key) => {\n api.SetVariable(key, _params[key]);\n });\n params = { ...params, ..._params };\n\n if (typeof res !== 'undefined') {\n res.resolve(params);\n }\n};\n\nconst initialize = async ({\n workerId,\n payload: { langs: _langs, oem, config },\n}, res) => {\n const langs = (typeof _langs === 'string')\n ? _langs\n : _langs.map((l) => ((typeof l === 'string') ? l : l.data)).join('+');\n\n const statusText = 'initializing api';\n\n try {\n res.progress({\n workerId, status: statusText, progress: 0,\n });\n if (api !== null) {\n api.End();\n }\n let configFile;\n let configStr;\n // config argument may either be config file text, or object with key/value pairs\n // In the latter case we convert to config file text here\n if (config && typeof config === 'object' && Object.keys(config).length > 0) {\n configStr = JSON.stringify(config).replace(/,/g, '\\n').replace(/:/g, ' ').replace(/[\"'{}]/g, '');\n } else if (config && typeof config === 'string') {\n configStr = config;\n }\n if (typeof configStr === 'string') {\n configFile = '/config';\n TessModule.FS.writeFile(configFile, configStr);\n }\n\n api = new TessModule.TessBaseAPI();\n let status = api.Init(null, langs, oem, configFile);\n if (status === -1) {\n // Cache is deleted if initialization fails to avoid keeping bad data in cache\n // This assumes that initialization failing only occurs due to bad .traineddata,\n // this should be refined if other reasons for init failing are encountered.\n // The \"if\" condition skips this section if either (1) cache is disabled [so the issue\n // is definitely unrelated to cached data] or (2) cache is set to read-only\n // [so we do not have permission to make any changes].\n if (['write', 'refresh', undefined].includes(loadLanguageOptionsWorker.cacheMethod)) {\n const langsArr = langs.split('+');\n const delCachePromise = langsArr.map((lang) => adapter.deleteCache(`${loadLanguageOptionsWorker.cachePath || '.'}/${lang}.traineddata`));\n await Promise.all(delCachePromise);\n\n // Check for the case when (1) data was loaded from the cache and\n // (2) the data does not support the requested OEM.\n // In this case, loadLanguage is re-run and initialization is attempted a second time.\n // This is because `loadLanguage` has no mechanism for checking whether the cached data\n // supports the requested model, so this only becomes apparent when initialization fails.\n\n // Check for this error message:\n // eslint-disable-next-line\n // \"Tesseract (legacy) engine requested, but components are not present in ./eng.traineddata!!\"\"\n // The .wasm build of Tesseract saves this message in a separate file\n // (in addition to the normal debug file location).\n const debugStr = TessModule.FS.readFile('/debugDev.txt', { encoding: 'utf8', flags: 'a+' });\n if (dataFromCache && /components are not present/.test(debugStr)) {\n log('Data from cache missing requested OEM model. Attempting to refresh cache with new language data.');\n // In this case, language data is re-loaded\n await loadLanguage({ workerId, payload: { langs: loadLanguageLangsWorker, options: loadLanguageOptionsWorker } }); // eslint-disable-line max-len\n status = api.Init(null, langs, oem, configFile);\n if (status === -1) {\n log('Language data refresh failed.');\n const delCachePromise2 = langsArr.map((lang) => adapter.deleteCache(`${loadLanguageOptionsWorker.cachePath || '.'}/${lang}.traineddata`));\n await Promise.all(delCachePromise2);\n } else {\n log('Language data refresh successful.');\n }\n }\n }\n }\n\n if (status === -1) {\n res.reject('initialization failed');\n }\n\n res.progress({\n workerId, status: statusText, progress: 1,\n });\n res.resolve();\n } catch (err) {\n res.reject(err.toString());\n }\n};\n\n// Combines default output with user-specified options and\n// counts (1) total output formats requested and (2) outputs that require OCR\nconst processOutput = (output) => {\n const workingOutput = JSON.parse(JSON.stringify(defaultOutput));\n\n const nonRecOutputs = ['imageColor', 'imageGrey', 'imageBinary', 'layoutBlocks', 'debug'];\n let recOutputCount = 0;\n for (const prop of Object.keys(output)) {\n workingOutput[prop] = output[prop];\n }\n for (const prop of Object.keys(workingOutput)) {\n if (workingOutput[prop]) {\n if (!nonRecOutputs.includes(prop)) {\n recOutputCount += 1;\n }\n }\n }\n const skipRecognition = recOutputCount === 0;\n return { workingOutput, skipRecognition };\n};\n\n// List of options for Tesseract.js (rather than passed through to Tesseract),\n// not including those with prefix \"tessjs_\"\nconst tessjsOptions = ['rectangle', 'pdfTitle', 'pdfTextOnly', 'rotateAuto', 'rotateRadians'];\n\nconst recognize = async ({\n payload: {\n image, options, output,\n },\n}, res) => {\n try {\n const optionsTess = {};\n if (typeof options === 'object' && Object.keys(options).length > 0) {\n // The options provided by users contain a mix of options for Tesseract.js\n // and parameters passed through to Tesseract.\n for (const param of Object.keys(options)) {\n if (!param.startsWith('tessjs_') && !tessjsOptions.includes(param)) {\n optionsTess[param] = options[param];\n }\n }\n }\n if (output.debug) {\n optionsTess.debug_file = '/debugInternal.txt';\n TessModule.FS.writeFile('/debugInternal.txt', '');\n }\n // If any parameters are changed here they are changed back at the end\n if (Object.keys(optionsTess).length > 0) {\n api.SaveParameters();\n for (const prop of Object.keys(optionsTess)) {\n api.SetVariable(prop, optionsTess[prop]);\n }\n }\n\n const { workingOutput, skipRecognition } = processOutput(output);\n\n // When the auto-rotate option is True, setImage is called with no angle,\n // then the angle is calculated by Tesseract and then setImage is re-called.\n // Otherwise, setImage is called once using the user-provided rotateRadiansFinal value.\n let rotateRadiansFinal;\n if (options.rotateAuto) {\n // The angle is only detected if auto page segmentation is used\n // Therefore, if this is not the mode specified by the user, it is enabled temporarily here\n const psmInit = api.GetPageSegMode();\n let psmEdit = false;\n if (![PSM.AUTO, PSM.AUTO_ONLY, PSM.OSD].includes(String(psmInit))) {\n psmEdit = true;\n api.SetVariable('tessedit_pageseg_mode', String(PSM.AUTO));\n }\n\n setImage(TessModule, api, image);\n api.FindLines();\n\n // The function GetAngle will be replaced with GetGradient in 4.0.4,\n // but for now we want to maintain compatibility.\n // We can switch to only using GetGradient in v5.\n const rotateRadiansCalc = api.GetGradient ? api.GetGradient() : api.GetAngle();\n\n // Restore user-provided PSM setting\n if (psmEdit) {\n api.SetVariable('tessedit_pageseg_mode', String(psmInit));\n }\n\n // Small angles (<0.005 radians/~0.3 degrees) are ignored to save on runtime\n if (Math.abs(rotateRadiansCalc) >= 0.005) {\n rotateRadiansFinal = rotateRadiansCalc;\n setImage(TessModule, api, image, rotateRadiansFinal);\n } else {\n // Image needs to be reset if run with different PSM setting earlier\n if (psmEdit) {\n setImage(TessModule, api, image);\n }\n rotateRadiansFinal = 0;\n }\n } else {\n rotateRadiansFinal = options.rotateRadians || 0;\n setImage(TessModule, api, image, rotateRadiansFinal);\n }\n\n const rec = options.rectangle;\n if (typeof rec === 'object') {\n api.SetRectangle(rec.left, rec.top, rec.width, rec.height);\n }\n\n if (!skipRecognition) {\n api.Recognize(null);\n } else {\n if (output.layoutBlocks) {\n api.AnalyseLayout();\n }\n log('Skipping recognition: all output options requiring recognition are disabled.');\n }\n const { pdfTitle } = options;\n const { pdfTextOnly } = options;\n const result = dump(TessModule, api, workingOutput, { pdfTitle, pdfTextOnly, skipRecognition });\n result.rotateRadians = rotateRadiansFinal;\n\n if (output.debug) TessModule.FS.unlink('/debugInternal.txt');\n\n if (Object.keys(optionsTess).length > 0) {\n api.RestoreParameters();\n }\n\n res.resolve(result);\n } catch (err) {\n res.reject(err.toString());\n }\n};\n\nconst detect = async ({ payload: { image } }, res) => {\n try {\n setImage(TessModule, api, image);\n const results = new TessModule.OSResults();\n\n if (!api.DetectOS(results)) {\n res.resolve({\n tesseract_script_id: null,\n script: null,\n script_confidence: null,\n orientation_degrees: null,\n orientation_confidence: null,\n });\n } else {\n const best = results.best_result;\n const oid = best.orientation_id;\n const sid = best.script_id;\n\n res.resolve({\n tesseract_script_id: sid,\n script: results.unicharset.get_script_from_script_id(sid),\n script_confidence: best.sconfidence,\n orientation_degrees: [0, 270, 180, 90][oid],\n orientation_confidence: best.oconfidence,\n });\n }\n } catch (err) {\n res.reject(err.toString());\n }\n};\n\nconst terminate = async (_, res) => {\n try {\n if (api !== null) {\n api.End();\n }\n res.resolve({ terminated: true });\n } catch (err) {\n res.reject(err.toString());\n }\n};\n\n/**\n * dispatchHandlers\n *\n * @name dispatchHandlers\n * @function worker data handler\n * @access public\n * @param {object} data\n * @param {string} data.jobId - unique job id\n * @param {string} data.action - action of the job, only recognize and detect for now\n * @param {object} data.payload - data for the job\n * @param {function} send - trigger job to work\n */\nexports.dispatchHandlers = (packet, send) => {\n const res = (status, data) => {\n // Return only the necessary info to avoid sending unnecessarily large messages\n const packetRes = {\n jobId: packet.jobId,\n workerId: packet.workerId,\n action: packet.action,\n };\n send({\n ...packetRes,\n status,\n data,\n });\n };\n res.resolve = res.bind(this, 'resolve');\n res.reject = res.bind(this, 'reject');\n res.progress = res.bind(this, 'progress');\n\n latestJob = res;\n\n ({\n load,\n FS,\n loadLanguage,\n initialize,\n setParameters,\n recognize,\n detect,\n terminate,\n })[packet.action](packet, res)\n .catch((err) => res.reject(err.toString()));\n};\n\n/**\n * setAdapter\n *\n * @name setAdapter\n * @function\n * @access public\n * @param {object} adapter - implementation of the worker, different in browser and node environment\n */\nexports.setAdapter = (_adapter) => {\n adapter = _adapter;\n};\n","'use strict';\n\n/*\n * PSM = Page Segmentation Mode\n */\nmodule.exports = {\n OSD_ONLY: '0',\n AUTO_OSD: '1',\n AUTO_ONLY: '2',\n AUTO: '3',\n SINGLE_COLUMN: '4',\n SINGLE_BLOCK_VERT_TEXT: '5',\n SINGLE_BLOCK: '6',\n SINGLE_LINE: '7',\n SINGLE_WORD: '8',\n CIRCLE_WORD: '9',\n SINGLE_CHAR: '10',\n SPARSE_TEXT: '11',\n SPARSE_TEXT_OSD: '12',\n RAW_LINE: '13',\n};\n","'use strict';\n\nconst { simd, relaxedSimd } = require('wasm-feature-detect');\nconst coreVersion = require('../../../package.json').dependencies['tesseract.js-core'];\n\nmodule.exports = async (lstmOnly, corePath, res) => {\n if (typeof global.TesseractCore === 'undefined') {\n const statusText = 'loading tesseract core';\n\n res.progress({ status: statusText, progress: 0 });\n\n // If the user specifies a core path, we use that\n // Otherwise, default to CDN\n const corePathImport = corePath || `https://cdn.jsdelivr.net/npm/tesseract.js-core@v${coreVersion.substring(1)}`;\n\n // If a user specifies a specific JavaScript file, load that file.\n // Otherwise, assume a directory has been provided, and load either\n // tesseract-core.wasm.js or tesseract-core-simd.wasm.js depending\n // on whether this device has SIMD support.\n let corePathImportFile;\n if (corePathImport.slice(-2) === 'js') {\n corePathImportFile = corePathImport;\n } else {\n const simdSupport = await simd();\n const relaxedSimdSupport = await relaxedSimd();\n if (relaxedSimdSupport) {\n if (lstmOnly) {\n corePathImportFile = `${corePathImport.replace(/\\/$/, '')}/tesseract-core-relaxedsimd-lstm.wasm.js`;\n } else {\n corePathImportFile = `${corePathImport.replace(/\\/$/, '')}/tesseract-core-relaxedsimd.wasm.js`;\n }\n } else if (simdSupport) {\n if (lstmOnly) {\n corePathImportFile = `${corePathImport.replace(/\\/$/, '')}/tesseract-core-simd-lstm.wasm.js`;\n } else {\n corePathImportFile = `${corePathImport.replace(/\\/$/, '')}/tesseract-core-simd.wasm.js`;\n }\n } else if (lstmOnly) {\n corePathImportFile = `${corePathImport.replace(/\\/$/, '')}/tesseract-core-lstm.wasm.js`;\n } else {\n corePathImportFile = `${corePathImport.replace(/\\/$/, '')}/tesseract-core.wasm.js`;\n }\n }\n\n // Create a module named `global.TesseractCore`\n global.importScripts(corePathImportFile);\n\n // Tesseract.js-core versions through 4.0.3 create a module named `global.TesseractCoreWASM`,\n // so we account for that here to preserve backwards compatibility.\n // This part can be removed when Tesseract.js-core v4.0.3 becomes incompatible for other reasons\n if (typeof global.TesseractCore === 'undefined' && typeof global.TesseractCoreWASM !== 'undefined' && typeof WebAssembly === 'object') {\n global.TesseractCore = global.TesseractCoreWASM;\n } else if (typeof global.TesseractCore === 'undefined') {\n throw Error('Failed to load TesseractCore');\n }\n res.progress({ status: statusText, progress: 1 });\n }\n return global.TesseractCore;\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","'use strict';\n\n/**\n *\n * Browser worker scripts\n *\n * @fileoverview Browser worker implementation\n * @author Kevin Kwok \n * @author Guillermo Webster \n * @author Jerome Wu \n */\n\nconst worker = require('..');\nconst getCore = require('./getCore');\nconst gunzip = require('./gunzip');\nconst cache = require('./cache');\n\n/*\n * register message handler\n */\nglobal.addEventListener('message', ({ data }) => {\n worker.dispatchHandlers(data, (obj) => postMessage(obj));\n});\n\n/*\n * getCore is a sync function to load and return\n * TesseractCore.\n */\nworker.setAdapter({\n getCore,\n gunzip,\n fetch: () => {},\n ...cache,\n});\n"],"names":["runtime","exports","undefined","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","call","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","this","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","module","regeneratorRuntime","accidentalStrictMode","globalThis","Function","COLOR","GREY","BINARY","_this","logging","setLogging","_logging","log","_len","arguments","args","Array","_key","console","apply","q","b","t","v","B","Uint8Array","Uint16Array","Uint32Array","DataView","G","a","index","m","buffer","f","c","d","set","k","e","g","I","subarray","L","aa","ba","R","ca","ha","S","ia","ja","ka","T","h","r","p","l","n","Number","POSITIVE_INFINITY","na","oa","F","input","lazy","compressionType","outputBuffer","outputIndex","getParent","U","pa","NONE","X","qa","va","N","s","w","C","x","u","ra","M","z","Y","da","Fa","ea","Ga","la","Ha","Z","ma","E","Ia","D","qb","ta","ua","sa","y","O","A","fa","H","Ja","Ka","K","J","P","Q","Na","ga","wa","Oa","Pa","Qa","Ra","La","Ma","xa","ya","shift","za","Aa","Ba","flags","filename","comment","deflateOptions","fname","Ca","fcomment","Da","fhcrc","Ea","Date","now","Sa","charCodeAt","byteLength","V","o","j","Ta","bufferSize","bufferType","resize","Ua","W","Va","Wa","Xa","Ya","$","ib","Za","$a","ab","bb","cb","db","eb","fb","gb","hb","kb","lb","jb","mb","nb","split","ob","verify","pb","String","fromCharCode","join","data","toString","concat","rb","sb","ub","Bb","wb","noBuffer","yb","Ab","Buffer","Math","LOG2E","deflate","process","nextTick","deflateSync","inflate","inflateSync","gzip","gzipSync","gunzip","gunzipSync","bigInt","WebAssembly","instantiate","instance","BigInt","bulkMemory","validate","exceptions","exceptionsFinal","Module","from","atob","codePointAt","extendedConst","gc","jsStringBuiltins","builtins","jspi","memory64","multiMemory","multiValue","mutableGlobals","referenceTypes","relaxedSimd","saturatedFloatToInt","signExtensions","simd","streamingCompilation","tailCall","threads","MessageChannel","port1","postMessage","SharedArrayBuffer","typeReflection","typedFunctionReferences","ownKeys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","toPrimitive","_toPrimitive","_toPropertyKey","bmp","require","TessModule","api","image","_image$slice$join$mat","angle","isBmp","exif","parseInt","match","buf","bmpBuf","decode","FS","writeFile","encode","SetImageFile","arrayBufferToBase64","imageType","deindent","html","lines","substring","output","options","_options$pdfTitle","_options$pdfTextOnly","title","textonly","pdfRenderer","enumToString","prefix","startsWith","map","getImage","WriteImage","pngBuffer","readFile","pngStr","unlink","text","GetUTF8Text","hocr","GetHOCRText","tsv","GetTSVText","box","GetBoxText","unlv","GetUNLVText","osd","GetOsdText","pdf","pdfTitle","pdfTextOnly","TessPDFRenderer","BeginDocument","AddImage","EndDocument","_free","imageColor","imageGrey","imageBinary","confidence","skipRecognition","MeanTextConf","blocks","JSON","parse","GetJSONText","layoutBlocks","psm","GetPageSegMode","oem","version","Version","debug","encoding","BmpEncoder","imgData","width","height","extraBytes","rgbSize","headerInfoSize","flag","reserved","offset","fileSize","planes","bitPP","compress","hr","vr","colors","importantColors","tempBuffer","pos","write","writeUInt32LE","writeInt32LE","writeUInt16LE","rowBytes","fillOffset","fill","quality","string","protocolAndDomainRE","everythingAfterProtocol","localhostDomainRE","test","nonLocalhostDomainRE","arrayBuffer","chunk","base64","encodings","bytes","byteRemainder","mainLength","_defineProperties","_isNativeReflectConstruct","Boolean","valueOf","Reflect","construct","_getPrototypeOf","bind","_setPrototypeOf","ieee754","customInspectSymbol","K_MAX_LENGTH","createBuffer","RangeError","encodingOrOffset","allocUnsafe","isEncoding","actual","fromString","ArrayBuffer","isView","arrayView","isInstance","copy","fromArrayBuffer","byteOffset","fromArrayLike","fromArrayView","isBuffer","len","checked","numberIsNaN","isArray","fromObject","assertSize","size","array","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","start","end","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","dir","arrayIndexOf","indexOf","lastIndexOf","arr","indexSize","arrLength","valLength","read","readUInt16BE","foundIndex","found","hexWrite","remaining","strLen","parsed","substr","utf8Write","blitBuffer","asciiWrite","str","byteArray","asciiToBytes","base64Write","ucs2Write","units","hi","lo","utf16leToBytes","fromByteArray","min","res","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","codePoints","MAX_ARGUMENTS_LENGTH","decodeCodePointsArray","TYPED_ARRAY_SUPPORT","proto","foo","typedArraySupport","get","poolSize","alloc","allocUnsafeSlow","_isBuffer","compare","list","swap16","swap32","swap64","toLocaleString","equals","inspect","max","replace","trim","target","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","_arr","ret","out","hexSliceLookupTable","checkOffset","ext","checkInt","wrtBigUInt64LE","checkIntBI","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","readUintLE","readUIntLE","mul","readUintBE","readUIntBE","readUint8","readUInt8","readUint16LE","readUInt16LE","readUint16BE","readUint32LE","readUInt32LE","readUint32BE","readUInt32BE","readBigUInt64LE","defineBigIntMethod","validateNumber","first","last","boundsError","pow","readBigUInt64BE","readIntLE","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readBigInt64LE","readBigInt64BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUintLE","writeUIntLE","writeUintBE","writeUIntBE","writeUint8","writeUInt8","writeUint16LE","writeUint16BE","writeUInt16BE","writeUint32LE","writeUint32BE","writeUInt32BE","writeBigUInt64LE","writeBigUInt64BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32BE","writeBigInt64LE","writeBigInt64BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","code","errors","sym","getMessage","Base","_Base","NodeError","_classCallCheck","ReferenceError","_assertThisInitialized","_possibleConstructorReturn","_callSuper","stack","_inherits","message","addNumericalSeparator","range","ERR_OUT_OF_RANGE","checkBounds","ERR_INVALID_ARG_TYPE","floor","ERR_BUFFER_OUT_OF_BOUNDS","msg","received","isInteger","abs","INVALID_BASE64_RE","Infinity","leadSurrogate","toByteArray","base64clean","src","dst","alphabet","table","i16","BufferBigIntNotDefined","promisifyRequest","request","oncomplete","onsuccess","onabort","onerror","createStore","dbName","storeName","indexedDB","open","onupgradeneeded","createObjectStore","dbp","txMode","callback","transaction","objectStore","defaultGetStoreFunc","defaultGetStore","store","put","setMany","entries","getMany","all","update","updater","del","delete","delMany","clear","eachCursor","openCursor","continue","getAllKeys","items","cursor","getAll","customStore","_ref","_ref2","b64","lens","getLens","validLen","placeHoldersLen","tmp","Arr","_byteLength","curByte","revLookup","uint8","parts","maxChunkLength","len2","encodeChunk","lookup","num","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","rt","LN2","_require","readCache","writeCache","deleteCache","checkCache","path","BmpDecoder","is_with_alpha","bottom_up","parseHeader","parseRGBA","headerSize","rawSize","palette","blue","green","red","quad","bitn","bit1","xlen","ceil","mode","line","location","rgb","bit4","setPixelData","rgbIndex","low_nibble","before","after","bit8","bit15","dif_w","_1_5","alpha","bit16","maskRed","maskGreen","maskBlue","mask0","ns","bit24","bit32","getData","bmpData","env","WorkerGlobalScope","document","_arrayLikeToArray","_regeneratorRuntime","return","catch","asyncGeneratorStep","_asyncToGenerator","_next","_throw","latestJob","loadLanguageLangsWorker","loadLanguageOptionsWorker","isURL","dump","setImage","defaultOutput","PSM","adapter","params","dataFromCache","load","_callee","workerId","jobId","_ref$payload$options","lstmOnly","corePath","statusText","Core","_context","payload","getCore","progress","status","TesseractProgress","percent","tessModule","loaded","_x","_x2","_ref4","_callee2","_ref3","_TessModule$FS","_ref3$payload","_context2","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","_x3","_x4","loadLanguage","_ref6","_callee4","_ref5","_ref5$payload","langs","_ref5$payload$options","langPath","dataPath","cachePath","cacheMethod","_ref5$payload$options2","langsArr","loadAndGunzipFile","_context4","_ref7","_callee3","_lang","lang","newData","_data","langPathDownload","fetchUrl","resp","_context3","t0","fetch","ok","t1","t2","mkdir","t3","round","_x7","_x5","_x6","setParameters","_ref9","_callee5","_ref8","_params","initParamNames","initParamStr","_context5","SetVariable","_x8","_x9","initialize","_ref11","_callee6","_ref10","_ref10$payload","_langs","config","configFile","configStr","delCachePromise","debugStr","delCachePromise2","_context6","End","stringify","TessBaseAPI","Init","_x10","_x11","processOutput","workingOutput","nonRecOutputs","recOutputCount","_i","_Object$keys","prop","_i2","_Object$keys2","tessjsOptions","recognize","_ref13","_callee7","_ref12","_ref12$payload","optionsTess","_i3","_Object$keys3","param","_i4","_Object$keys4","_processOutput","rotateRadiansFinal","psmInit","psmEdit","rotateRadiansCalc","rec","_context7","debug_file","SaveParameters","rotateAuto","AUTO","AUTO_ONLY","OSD","FindLines","GetGradient","GetAngle","rotateRadians","rectangle","SetRectangle","left","top","AnalyseLayout","Recognize","RestoreParameters","_x12","_x13","detect","_ref15","_callee8","_ref14","results","best","oid","sid","_context8","OSResults","DetectOS","best_result","orientation_id","script_id","tesseract_script_id","script","unicharset","get_script_from_script_id","script_confidence","sconfidence","orientation_degrees","orientation_confidence","oconfidence","_x14","_x15","terminate","_ref16","_callee9","_","_context9","terminated","_x16","_x17","dispatchHandlers","packet","send","packetRes","action","setAdapter","_adapter","OSD_ONLY","AUTO_OSD","SINGLE_COLUMN","SINGLE_BLOCK_VERT_TEXT","SINGLE_BLOCK","SINGLE_LINE","SINGLE_WORD","CIRCLE_WORD","SINGLE_CHAR","SPARSE_TEXT","SPARSE_TEXT_OSD","RAW_LINE","coreVersion","corePathImport","corePathImportFile","simdSupport","relaxedSimdSupport","global","TesseractCore","importScripts","TesseractCoreWASM","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","id","__webpack_modules__","definition","window","nmd","paths","children","worker","cache","addEventListener"],"sourceRoot":""}