@hashgraphonline/standards-sdk 0.0.96 → 0.0.97
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/hcs-10/types.d.ts +0 -3
- package/dist/es/hcs-10/types.d.ts.map +1 -1
- package/dist/es/services/index.d.ts +1 -0
- package/dist/es/services/index.d.ts.map +1 -1
- package/dist/es/standards-sdk.es100.js +3 -22
- package/dist/es/standards-sdk.es100.js.map +1 -1
- package/dist/es/standards-sdk.es101.js +3 -792
- package/dist/es/standards-sdk.es101.js.map +1 -1
- package/dist/es/standards-sdk.es102.js +14 -172
- package/dist/es/standards-sdk.es102.js.map +1 -1
- package/dist/es/standards-sdk.es103.js +4 -142
- package/dist/es/standards-sdk.es103.js.map +1 -1
- package/dist/es/standards-sdk.es104.js +38 -12
- package/dist/es/standards-sdk.es104.js.map +1 -1
- package/dist/es/standards-sdk.es105.js +40 -13
- package/dist/es/standards-sdk.es105.js.map +1 -1
- package/dist/es/standards-sdk.es106.js +36 -31
- package/dist/es/standards-sdk.es106.js.map +1 -1
- package/dist/es/standards-sdk.es107.js +77 -14
- package/dist/es/standards-sdk.es107.js.map +1 -1
- package/dist/es/standards-sdk.es108.js +3 -3
- package/dist/es/standards-sdk.es108.js.map +1 -1
- package/dist/es/standards-sdk.es109.js +33 -3
- package/dist/es/standards-sdk.es109.js.map +1 -1
- package/dist/es/standards-sdk.es110.js +32 -15
- package/dist/es/standards-sdk.es110.js.map +1 -1
- package/dist/es/standards-sdk.es111.js +9 -5
- package/dist/es/standards-sdk.es111.js.map +1 -1
- package/dist/es/standards-sdk.es112.js +34 -39
- package/dist/es/standards-sdk.es112.js.map +1 -1
- package/dist/es/standards-sdk.es113.js +3 -40
- package/dist/es/standards-sdk.es113.js.map +1 -1
- package/dist/es/standards-sdk.es114.js +2 -37
- package/dist/es/standards-sdk.es114.js.map +1 -1
- package/dist/es/standards-sdk.es115.js +2 -78
- package/dist/es/standards-sdk.es115.js.map +1 -1
- package/dist/es/standards-sdk.es116.js +100 -20
- package/dist/es/standards-sdk.es116.js.map +1 -1
- package/dist/es/standards-sdk.es117.js +2 -27
- package/dist/es/standards-sdk.es117.js.map +1 -1
- package/dist/es/standards-sdk.es118.js +15 -25
- package/dist/es/standards-sdk.es118.js.map +1 -1
- package/dist/es/standards-sdk.es119.js +407 -36
- package/dist/es/standards-sdk.es119.js.map +1 -1
- package/dist/es/standards-sdk.es120.js +2282 -3
- package/dist/es/standards-sdk.es120.js.map +1 -1
- package/dist/es/standards-sdk.es121.js +7136 -2
- package/dist/es/standards-sdk.es121.js.map +1 -1
- package/dist/es/standards-sdk.es122.js +10 -2
- package/dist/es/standards-sdk.es122.js.map +1 -1
- package/dist/es/standards-sdk.es123.js +10 -33
- package/dist/es/standards-sdk.es123.js.map +1 -1
- package/dist/es/standards-sdk.es124.js +16 -31
- package/dist/es/standards-sdk.es124.js.map +1 -1
- package/dist/es/standards-sdk.es125.js +6 -9
- package/dist/es/standards-sdk.es125.js.map +1 -1
- package/dist/es/standards-sdk.es126.js +9 -34
- package/dist/es/standards-sdk.es126.js.map +1 -1
- package/dist/es/standards-sdk.es13.js +2 -2
- package/dist/es/standards-sdk.es19.js +1 -1
- package/dist/es/standards-sdk.es20.js +2 -2
- package/dist/es/standards-sdk.es21.js +1 -1
- package/dist/es/standards-sdk.es24.js +966 -1694
- package/dist/es/standards-sdk.es24.js.map +1 -1
- package/dist/es/standards-sdk.es25.js +122 -5543
- package/dist/es/standards-sdk.es25.js.map +1 -1
- package/dist/es/standards-sdk.es26.js +7190 -3
- package/dist/es/standards-sdk.es26.js.map +1 -1
- package/dist/es/standards-sdk.es27.js +3 -9
- package/dist/es/standards-sdk.es27.js.map +1 -1
- package/dist/es/standards-sdk.es28.js +9 -2
- package/dist/es/standards-sdk.es28.js.map +1 -1
- package/dist/es/standards-sdk.es29.js +2 -1041
- package/dist/es/standards-sdk.es29.js.map +1 -1
- package/dist/es/standards-sdk.es30.js +2 -2
- package/dist/es/standards-sdk.es32.js +17 -17
- package/dist/es/standards-sdk.es33.js +1 -1
- package/dist/es/standards-sdk.es35.js +2 -101
- package/dist/es/standards-sdk.es35.js.map +1 -1
- package/dist/es/standards-sdk.es36.js +364 -2
- package/dist/es/standards-sdk.es36.js.map +1 -1
- package/dist/es/standards-sdk.es37.js +5 -15
- package/dist/es/standards-sdk.es37.js.map +1 -1
- package/dist/es/standards-sdk.es38.js +167 -397
- package/dist/es/standards-sdk.es38.js.map +1 -1
- package/dist/es/standards-sdk.es39.js +81 -2282
- package/dist/es/standards-sdk.es39.js.map +1 -1
- package/dist/es/standards-sdk.es4.js +1 -1
- package/dist/es/standards-sdk.es40.js +104 -154
- package/dist/es/standards-sdk.es40.js.map +1 -1
- package/dist/es/standards-sdk.es41.js +39 -7123
- package/dist/es/standards-sdk.es41.js.map +1 -1
- package/dist/es/standards-sdk.es42.js +9 -9
- package/dist/es/standards-sdk.es42.js.map +1 -1
- package/dist/es/standards-sdk.es43.js +94 -8
- package/dist/es/standards-sdk.es43.js.map +1 -1
- package/dist/es/standards-sdk.es44.js +3 -17
- package/dist/es/standards-sdk.es44.js.map +1 -1
- package/dist/es/standards-sdk.es45.js +2 -6
- package/dist/es/standards-sdk.es45.js.map +1 -1
- package/dist/es/standards-sdk.es46.js +112 -8
- package/dist/es/standards-sdk.es46.js.map +1 -1
- package/dist/es/standards-sdk.es47.js +74 -3
- package/dist/es/standards-sdk.es47.js.map +1 -1
- package/dist/es/standards-sdk.es48.js +4 -417
- package/dist/es/standards-sdk.es48.js.map +1 -1
- package/dist/es/standards-sdk.es49.js +5 -2
- package/dist/es/standards-sdk.es49.js.map +1 -1
- package/dist/es/standards-sdk.es5.js +1 -1
- package/dist/es/standards-sdk.es50.js +210 -109
- package/dist/es/standards-sdk.es50.js.map +1 -1
- package/dist/es/standards-sdk.es51.js +58 -4
- package/dist/es/standards-sdk.es51.js.map +1 -1
- package/dist/es/standards-sdk.es52.js +69 -364
- package/dist/es/standards-sdk.es52.js.map +1 -1
- package/dist/es/standards-sdk.es53.js +417 -4
- package/dist/es/standards-sdk.es53.js.map +1 -1
- package/dist/es/standards-sdk.es54.js +2 -179
- package/dist/es/standards-sdk.es54.js.map +1 -1
- package/dist/es/standards-sdk.es55.js +112 -73
- package/dist/es/standards-sdk.es55.js.map +1 -1
- package/dist/es/standards-sdk.es56.js +186 -105
- package/dist/es/standards-sdk.es56.js.map +1 -1
- package/dist/es/standards-sdk.es57.js +433 -47
- package/dist/es/standards-sdk.es57.js.map +1 -1
- package/dist/es/standards-sdk.es58.js +24 -9
- package/dist/es/standards-sdk.es58.js.map +1 -1
- package/dist/es/standards-sdk.es59.js +126 -84
- package/dist/es/standards-sdk.es59.js.map +1 -1
- package/dist/es/standards-sdk.es60.js +17 -3
- package/dist/es/standards-sdk.es60.js.map +1 -1
- package/dist/es/standards-sdk.es61.js +29 -2
- package/dist/es/standards-sdk.es61.js.map +1 -1
- package/dist/es/standards-sdk.es62.js +23 -107
- package/dist/es/standards-sdk.es62.js.map +1 -1
- package/dist/es/standards-sdk.es63.js +18 -71
- package/dist/es/standards-sdk.es63.js.map +1 -1
- package/dist/es/standards-sdk.es64.js +43 -5
- package/dist/es/standards-sdk.es64.js.map +1 -1
- package/dist/es/standards-sdk.es65.js +17 -4
- package/dist/es/standards-sdk.es65.js.map +1 -1
- package/dist/es/standards-sdk.es66.js +49 -209
- package/dist/es/standards-sdk.es66.js.map +1 -1
- package/dist/es/standards-sdk.es67.js +1280 -49
- package/dist/es/standards-sdk.es67.js.map +1 -1
- package/dist/es/standards-sdk.es68.js +148 -69
- package/dist/es/standards-sdk.es68.js.map +1 -1
- package/dist/es/standards-sdk.es69.js +91 -2
- package/dist/es/standards-sdk.es69.js.map +1 -1
- package/dist/es/standards-sdk.es7.js +4 -4
- package/dist/es/standards-sdk.es70.js +80 -28
- package/dist/es/standards-sdk.es70.js.map +1 -1
- package/dist/es/standards-sdk.es71.js +27 -58
- package/dist/es/standards-sdk.es71.js.map +1 -1
- package/dist/es/standards-sdk.es72.js +5 -49
- package/dist/es/standards-sdk.es72.js.map +1 -1
- package/dist/es/standards-sdk.es73.js +157 -8
- package/dist/es/standards-sdk.es73.js.map +1 -1
- package/dist/es/standards-sdk.es74.js +19 -61
- package/dist/es/standards-sdk.es74.js.map +1 -1
- package/dist/es/standards-sdk.es75.js +792 -5
- package/dist/es/standards-sdk.es75.js.map +1 -1
- package/dist/es/standards-sdk.es76.js +171 -12
- package/dist/es/standards-sdk.es76.js.map +1 -1
- package/dist/es/standards-sdk.es77.js +143 -7
- package/dist/es/standards-sdk.es77.js.map +1 -1
- package/dist/es/standards-sdk.es78.js +3 -45
- package/dist/es/standards-sdk.es78.js.map +1 -1
- package/dist/es/standards-sdk.es79.js +164 -2
- package/dist/es/standards-sdk.es79.js.map +1 -1
- package/dist/es/standards-sdk.es8.js +3 -3
- package/dist/es/standards-sdk.es80.js +31 -135
- package/dist/es/standards-sdk.es80.js.map +1 -1
- package/dist/es/standards-sdk.es81.js +55 -164
- package/dist/es/standards-sdk.es81.js.map +1 -1
- package/dist/es/standards-sdk.es82.js +46 -191
- package/dist/es/standards-sdk.es82.js.map +1 -1
- package/dist/es/standards-sdk.es83.js +8 -436
- package/dist/es/standards-sdk.es83.js.map +1 -1
- package/dist/es/standards-sdk.es84.js +60 -20
- package/dist/es/standards-sdk.es84.js.map +1 -1
- package/dist/es/standards-sdk.es85.js +6 -139
- package/dist/es/standards-sdk.es85.js.map +1 -1
- package/dist/es/standards-sdk.es86.js +14 -17
- package/dist/es/standards-sdk.es86.js.map +1 -1
- package/dist/es/standards-sdk.es87.js +7 -29
- package/dist/es/standards-sdk.es87.js.map +1 -1
- package/dist/es/standards-sdk.es88.js +44 -28
- package/dist/es/standards-sdk.es88.js.map +1 -1
- package/dist/es/standards-sdk.es89.js +2 -21
- package/dist/es/standards-sdk.es89.js.map +1 -1
- package/dist/es/standards-sdk.es9.js +1 -1
- package/dist/es/standards-sdk.es90.js +135 -43
- package/dist/es/standards-sdk.es90.js.map +1 -1
- package/dist/es/standards-sdk.es91.js +168 -14
- package/dist/es/standards-sdk.es91.js.map +1 -1
- package/dist/es/standards-sdk.es92.js +11 -51
- package/dist/es/standards-sdk.es92.js.map +1 -1
- package/dist/es/standards-sdk.es93.js +22 -1284
- package/dist/es/standards-sdk.es93.js.map +1 -1
- package/dist/es/standards-sdk.es94.js +24 -146
- package/dist/es/standards-sdk.es94.js.map +1 -1
- package/dist/es/standards-sdk.es95.js +37 -90
- package/dist/es/standards-sdk.es95.js.map +1 -1
- package/dist/es/standards-sdk.es96.js +13 -84
- package/dist/es/standards-sdk.es96.js.map +1 -1
- package/dist/es/standards-sdk.es97.js +13 -32
- package/dist/es/standards-sdk.es97.js.map +1 -1
- package/dist/es/standards-sdk.es98.js +31 -5
- package/dist/es/standards-sdk.es98.js.map +1 -1
- package/dist/es/standards-sdk.es99.js +13 -157
- package/dist/es/standards-sdk.es99.js.map +1 -1
- package/dist/umd/hcs-10/types.d.ts +0 -3
- package/dist/umd/hcs-10/types.d.ts.map +1 -1
- package/dist/umd/services/index.d.ts +1 -0
- package/dist/umd/services/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es25.js","sources":["../../node_modules/@kiloscribe/inscription-sdk/dist/es/index-DufjK3tU.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nimport { PrivateKey, Client, TransferTransaction } from \"@hashgraph/sdk\";\nvar buffer = {};\nvar base64Js = {};\nbase64Js.byteLength = byteLength;\nbase64Js.toByteArray = toByteArray;\nbase64Js.fromByteArray = fromByteArray;\nvar lookup = [];\nvar revLookup = [];\nvar Arr = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\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}\nrevLookup[\"-\".charCodeAt(0)] = 62;\nrevLookup[\"_\".charCodeAt(0)] = 63;\nfunction getLens(b64) {\n var len = b64.length;\n if (len % 4 > 0) {\n throw new Error(\"Invalid string. Length must be a multiple of 4\");\n }\n var validLen = b64.indexOf(\"=\");\n if (validLen === -1) validLen = len;\n var placeHoldersLen = validLen === len ? 0 : 4 - validLen % 4;\n return [validLen, placeHoldersLen];\n}\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}\nfunction _byteLength(b64, validLen, placeHoldersLen) {\n return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen;\n}\nfunction toByteArray(b64) {\n var tmp;\n var lens = getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));\n var curByte = 0;\n var len = placeHoldersLen > 0 ? validLen - 4 : validLen;\n var i;\n for (i = 0; i < len; i += 4) {\n tmp = revLookup[b64.charCodeAt(i)] << 18 | revLookup[b64.charCodeAt(i + 1)] << 12 | revLookup[b64.charCodeAt(i + 2)] << 6 | revLookup[b64.charCodeAt(i + 3)];\n arr[curByte++] = tmp >> 16 & 255;\n arr[curByte++] = tmp >> 8 & 255;\n arr[curByte++] = tmp & 255;\n }\n if (placeHoldersLen === 2) {\n tmp = revLookup[b64.charCodeAt(i)] << 2 | revLookup[b64.charCodeAt(i + 1)] >> 4;\n arr[curByte++] = tmp & 255;\n }\n if (placeHoldersLen === 1) {\n tmp = revLookup[b64.charCodeAt(i)] << 10 | revLookup[b64.charCodeAt(i + 1)] << 4 | revLookup[b64.charCodeAt(i + 2)] >> 2;\n arr[curByte++] = tmp >> 8 & 255;\n arr[curByte++] = tmp & 255;\n }\n return arr;\n}\nfunction tripletToBase64(num) {\n return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63];\n}\nfunction encodeChunk(uint8, start, end) {\n var tmp;\n var output = [];\n for (var i = start; i < end; i += 3) {\n tmp = (uint8[i] << 16 & 16711680) + (uint8[i + 1] << 8 & 65280) + (uint8[i + 2] & 255);\n output.push(tripletToBase64(tmp));\n }\n return output.join(\"\");\n}\nfunction fromByteArray(uint8) {\n var tmp;\n var len = uint8.length;\n var extraBytes = len % 3;\n var parts = [];\n var maxChunkLength = 16383;\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 if (extraBytes === 1) {\n tmp = uint8[len - 1];\n parts.push(\n lookup[tmp >> 2] + lookup[tmp << 4 & 63] + \"==\"\n );\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n parts.push(\n lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + \"=\"\n );\n }\n return parts.join(\"\");\n}\nvar ieee754$1 = {};\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nieee754$1.read = function(buffer2, 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 = buffer2[offset + i];\n i += d;\n e = s & (1 << -nBits) - 1;\n s >>= -nBits;\n nBits += eLen;\n for (; nBits > 0; e = e * 256 + buffer2[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 + buffer2[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};\nieee754$1.write = function(buffer2, 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 value = Math.abs(value);\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 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 for (; mLen >= 8; buffer2[offset + i] = m & 255, i += d, m /= 256, mLen -= 8) {\n }\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer2[offset + i] = e & 255, i += d, e /= 256, eLen -= 8) {\n }\n buffer2[offset + i - d] |= s * 128;\n};\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n(function(exports) {\n const base64 = base64Js;\n const ieee754$1$1 = ieee754$1;\n const customInspectSymbol = typeof Symbol === \"function\" && typeof Symbol[\"for\"] === \"function\" ? Symbol[\"for\"](\"nodejs.util.inspect.custom\") : null;\n exports.Buffer = Buffer3;\n exports.SlowBuffer = SlowBuffer;\n exports.INSPECT_MAX_BYTES = 50;\n const K_MAX_LENGTH = 2147483647;\n exports.kMaxLength = K_MAX_LENGTH;\n const { Uint8Array: GlobalUint8Array, ArrayBuffer: GlobalArrayBuffer, SharedArrayBuffer: GlobalSharedArrayBuffer } = globalThis;\n Buffer3.TYPED_ARRAY_SUPPORT = typedArraySupport();\n if (!Buffer3.TYPED_ARRAY_SUPPORT && typeof console !== \"undefined\" && typeof console.error === \"function\") {\n console.error(\n \"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\"\n );\n }\n function typedArraySupport() {\n try {\n const arr = new GlobalUint8Array(1);\n const proto = { foo: function() {\n return 42;\n } };\n Object.setPrototypeOf(proto, GlobalUint8Array.prototype);\n Object.setPrototypeOf(arr, proto);\n return arr.foo() === 42;\n } catch (e) {\n return false;\n }\n }\n Object.defineProperty(Buffer3.prototype, \"parent\", {\n enumerable: true,\n get: function() {\n if (!Buffer3.isBuffer(this)) return void 0;\n return this.buffer;\n }\n });\n Object.defineProperty(Buffer3.prototype, \"offset\", {\n enumerable: true,\n get: function() {\n if (!Buffer3.isBuffer(this)) return void 0;\n return this.byteOffset;\n }\n });\n function createBuffer(length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"');\n }\n const buf = new GlobalUint8Array(length);\n Object.setPrototypeOf(buf, Buffer3.prototype);\n return buf;\n }\n function Buffer3(arg, encodingOrOffset, length) {\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 Buffer3.poolSize = 8192;\n function from(value, encodingOrOffset, length) {\n if (typeof value === \"string\") {\n return fromString(value, encodingOrOffset);\n }\n if (GlobalArrayBuffer.isView(value)) {\n return fromArrayView(value);\n }\n if (value == null) {\n throw new TypeError(\n \"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \" + typeof value\n );\n }\n if (isInstance(value, GlobalArrayBuffer) || value && isInstance(value.buffer, GlobalArrayBuffer)) {\n return fromArrayBuffer(value, encodingOrOffset, length);\n }\n if (typeof GlobalSharedArrayBuffer !== \"undefined\" && (isInstance(value, GlobalSharedArrayBuffer) || value && isInstance(value.buffer, GlobalSharedArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length);\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 const valueOf = value.valueOf && value.valueOf();\n if (valueOf != null && valueOf !== value) {\n return Buffer3.from(valueOf, encodingOrOffset, length);\n }\n const b = fromObject(value);\n if (b) return b;\n if (typeof Symbol !== \"undefined\" && Symbol.toPrimitive != null && typeof value[Symbol.toPrimitive] === \"function\") {\n return Buffer3.from(value[Symbol.toPrimitive](\"string\"), encodingOrOffset, length);\n }\n throw new TypeError(\n \"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \" + typeof value\n );\n }\n Buffer3.from = function(value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length);\n };\n Object.setPrototypeOf(Buffer3.prototype, GlobalUint8Array.prototype);\n Object.setPrototypeOf(Buffer3, GlobalUint8Array);\n function 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 function alloc(size, fill, encoding) {\n assertSize(size);\n if (size <= 0) {\n return createBuffer(size);\n }\n if (fill !== void 0) {\n return typeof encoding === \"string\" ? createBuffer(size).fill(fill, encoding) : createBuffer(size).fill(fill);\n }\n return createBuffer(size);\n }\n Buffer3.alloc = function(size, fill, encoding) {\n return alloc(size, fill, encoding);\n };\n function allocUnsafe(size) {\n assertSize(size);\n return createBuffer(size < 0 ? 0 : checked(size) | 0);\n }\n Buffer3.allocUnsafe = function(size) {\n return allocUnsafe(size);\n };\n Buffer3.allocUnsafeSlow = function(size) {\n return allocUnsafe(size);\n };\n function fromString(string, encoding) {\n if (typeof encoding !== \"string\" || encoding === \"\") {\n encoding = \"utf8\";\n }\n if (!Buffer3.isEncoding(encoding)) {\n throw new TypeError(\"Unknown encoding: \" + encoding);\n }\n const length = byteLength2(string, encoding) | 0;\n let buf = createBuffer(length);\n const actual = buf.write(string, encoding);\n if (actual !== length) {\n buf = buf.slice(0, actual);\n }\n return buf;\n }\n function 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 function fromArrayView(arrayView) {\n if (isInstance(arrayView, GlobalUint8Array)) {\n const copy = new GlobalUint8Array(arrayView);\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength);\n }\n return fromArrayLike(arrayView);\n }\n function fromArrayBuffer(array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds');\n }\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds');\n }\n let buf;\n if (byteOffset === void 0 && length === void 0) {\n buf = new GlobalUint8Array(array);\n } else if (length === void 0) {\n buf = new GlobalUint8Array(array, byteOffset);\n } else {\n buf = new GlobalUint8Array(array, byteOffset, length);\n }\n Object.setPrototypeOf(buf, Buffer3.prototype);\n return buf;\n }\n function fromObject(obj) {\n if (Buffer3.isBuffer(obj)) {\n const len = checked(obj.length) | 0;\n const buf = createBuffer(len);\n if (buf.length === 0) {\n return buf;\n }\n obj.copy(buf, 0, 0, len);\n return buf;\n }\n if (obj.length !== void 0) {\n if (typeof obj.length !== \"number\" || numberIsNaN(obj.length)) {\n return createBuffer(0);\n }\n return fromArrayLike(obj);\n }\n if (obj.type === \"Buffer\" && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data);\n }\n }\n function checked(length) {\n if (length >= K_MAX_LENGTH) {\n throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\" + K_MAX_LENGTH.toString(16) + \" bytes\");\n }\n return length | 0;\n }\n function SlowBuffer(length) {\n if (+length != length) {\n length = 0;\n }\n return Buffer3.alloc(+length);\n }\n Buffer3.isBuffer = function isBuffer2(b) {\n return b != null && b._isBuffer === true && b !== Buffer3.prototype;\n };\n Buffer3.compare = function compare(a, b) {\n if (isInstance(a, GlobalUint8Array)) a = Buffer3.from(a, a.offset, a.byteLength);\n if (isInstance(b, GlobalUint8Array)) b = Buffer3.from(b, b.offset, b.byteLength);\n if (!Buffer3.isBuffer(a) || !Buffer3.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n );\n }\n if (a === b) return 0;\n let x = a.length;\n let y = b.length;\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 if (x < y) return -1;\n if (y < x) return 1;\n return 0;\n };\n Buffer3.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 Buffer3.concat = function concat(list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers');\n }\n if (list.length === 0) {\n return Buffer3.alloc(0);\n }\n let i;\n if (length === void 0) {\n length = 0;\n for (i = 0; i < list.length; ++i) {\n length += list[i].length;\n }\n }\n const buffer2 = Buffer3.allocUnsafe(length);\n let pos = 0;\n for (i = 0; i < list.length; ++i) {\n let buf = list[i];\n if (isInstance(buf, GlobalUint8Array)) {\n if (pos + buf.length > buffer2.length) {\n if (!Buffer3.isBuffer(buf)) buf = Buffer3.from(buf);\n buf.copy(buffer2, pos);\n } else {\n GlobalUint8Array.prototype.set.call(\n buffer2,\n buf,\n pos\n );\n }\n } else if (!Buffer3.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers');\n } else {\n buf.copy(buffer2, pos);\n }\n pos += buf.length;\n }\n return buffer2;\n };\n function byteLength2(string, encoding) {\n if (Buffer3.isBuffer(string)) {\n return string.length;\n }\n if (GlobalArrayBuffer.isView(string) || isInstance(string, GlobalArrayBuffer)) {\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. Received type ' + typeof string\n );\n }\n const len = string.length;\n const mustMatch = arguments.length > 2 && arguments[2] === true;\n if (!mustMatch && len === 0) return 0;\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;\n }\n encoding = (\"\" + encoding).toLowerCase();\n loweredCase = true;\n }\n }\n }\n Buffer3.byteLength = byteLength2;\n function slowToString(encoding, start, end) {\n let loweredCase = false;\n if (start === void 0 || start < 0) {\n start = 0;\n }\n if (start > this.length) {\n return \"\";\n }\n if (end === void 0 || end > this.length) {\n end = this.length;\n }\n if (end <= 0) {\n return \"\";\n }\n end >>>= 0;\n start >>>= 0;\n if (end <= start) {\n return \"\";\n }\n if (!encoding) encoding = \"utf8\";\n while (true) {\n switch (encoding) {\n case \"hex\":\n return hexSlice(this, start, end);\n case \"utf8\":\n case \"utf-8\":\n return utf8Slice(this, start, end);\n case \"ascii\":\n return asciiSlice(this, start, end);\n case \"latin1\":\n case \"binary\":\n return latin1Slice(this, start, end);\n case \"base64\":\n return base64Slice(this, start, end);\n case \"ucs2\":\n case \"ucs-2\":\n case \"utf16le\":\n case \"utf-16le\":\n return utf16leSlice(this, start, end);\n default:\n if (loweredCase) throw new TypeError(\"Unknown encoding: \" + encoding);\n encoding = (encoding + \"\").toLowerCase();\n loweredCase = true;\n }\n }\n }\n Buffer3.prototype._isBuffer = true;\n function swap(b, n, m) {\n const i = b[n];\n b[n] = b[m];\n b[m] = i;\n }\n Buffer3.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 Buffer3.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 Buffer3.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 Buffer3.prototype.toString = function toString3() {\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 Buffer3.prototype.toLocaleString = Buffer3.prototype.toString;\n Buffer3.prototype.equals = function equals(b) {\n if (!Buffer3.isBuffer(b)) throw new TypeError(\"Argument must be a Buffer\");\n if (this === b) return true;\n return Buffer3.compare(this, b) === 0;\n };\n Buffer3.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 \"<Buffer \" + str + \">\";\n };\n if (customInspectSymbol) {\n Buffer3.prototype[customInspectSymbol] = Buffer3.prototype.inspect;\n }\n Buffer3.prototype.compare = function compare(target, start, end, thisStart, thisEnd) {\n if (isInstance(target, GlobalUint8Array)) {\n target = Buffer3.from(target, target.offset, target.byteLength);\n }\n if (!Buffer3.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. Received type ' + typeof target\n );\n }\n if (start === void 0) {\n start = 0;\n }\n if (end === void 0) {\n end = target ? target.length : 0;\n }\n if (thisStart === void 0) {\n thisStart = 0;\n }\n if (thisEnd === void 0) {\n thisEnd = this.length;\n }\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError(\"out of range index\");\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 start >>>= 0;\n end >>>= 0;\n thisStart >>>= 0;\n thisEnd >>>= 0;\n if (this === target) return 0;\n let x = thisEnd - thisStart;\n let y = end - start;\n const len = Math.min(x, y);\n const thisCopy = this.slice(thisStart, thisEnd);\n const targetCopy = target.slice(start, end);\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 if (x < y) return -1;\n if (y < x) return 1;\n return 0;\n };\n function bidirectionalIndexOf(buffer2, val, byteOffset, encoding, dir) {\n if (buffer2.length === 0) return -1;\n if (typeof byteOffset === \"string\") {\n encoding = byteOffset;\n byteOffset = 0;\n } else if (byteOffset > 2147483647) {\n byteOffset = 2147483647;\n } else if (byteOffset < -2147483648) {\n byteOffset = -2147483648;\n }\n byteOffset = +byteOffset;\n if (numberIsNaN(byteOffset)) {\n byteOffset = dir ? 0 : buffer2.length - 1;\n }\n if (byteOffset < 0) byteOffset = buffer2.length + byteOffset;\n if (byteOffset >= buffer2.length) {\n if (dir) return -1;\n else byteOffset = buffer2.length - 1;\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0;\n else return -1;\n }\n if (typeof val === \"string\") {\n val = Buffer3.from(val, encoding);\n }\n if (Buffer3.isBuffer(val)) {\n if (val.length === 0) {\n return -1;\n }\n return arrayIndexOf(buffer2, val, byteOffset, encoding, dir);\n } else if (typeof val === \"number\") {\n val = val & 255;\n if (typeof GlobalUint8Array.prototype.indexOf === \"function\") {\n if (dir) {\n return GlobalUint8Array.prototype.indexOf.call(buffer2, val, byteOffset);\n } else {\n return GlobalUint8Array.prototype.lastIndexOf.call(buffer2, val, byteOffset);\n }\n }\n return arrayIndexOf(buffer2, [val], byteOffset, encoding, dir);\n }\n throw new TypeError(\"val must be string, number or Buffer\");\n }\n function arrayIndexOf(arr, val, byteOffset, encoding, dir) {\n let indexSize = 1;\n let arrLength = arr.length;\n let valLength = val.length;\n if (encoding !== void 0) {\n encoding = String(encoding).toLowerCase();\n if (encoding === \"ucs2\" || encoding === \"ucs-2\" || 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 function read(buf, i2) {\n if (indexSize === 1) {\n return buf[i2];\n } else {\n return buf.readUInt16BE(i2 * indexSize);\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 return -1;\n }\n Buffer3.prototype.includes = function includes(val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1;\n };\n Buffer3.prototype.indexOf = function indexOf(val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true);\n };\n Buffer3.prototype.lastIndexOf = function lastIndexOf(val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false);\n };\n function 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 const strLen = string.length;\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 function utf8Write(buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length);\n }\n function asciiWrite(buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length);\n }\n function base64Write(buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length);\n }\n function ucs2Write(buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length);\n }\n Buffer3.prototype.write = function write(string, offset, length, encoding) {\n if (offset === void 0) {\n encoding = \"utf8\";\n length = this.length;\n offset = 0;\n } else if (length === void 0 && typeof offset === \"string\") {\n encoding = offset;\n length = this.length;\n offset = 0;\n } else if (isFinite(offset)) {\n offset = offset >>> 0;\n if (isFinite(length)) {\n length = length >>> 0;\n if (encoding === void 0) encoding = \"utf8\";\n } else {\n encoding = length;\n length = void 0;\n }\n } else {\n throw new Error(\n \"Buffer.write(string, encoding, offset[, length]) is no longer supported\"\n );\n }\n const remaining = this.length - offset;\n if (length === void 0 || length > remaining) length = remaining;\n if (string.length > 0 && (length < 0 || offset < 0) || offset > this.length) {\n throw new RangeError(\"Attempt to write outside buffer bounds\");\n }\n if (!encoding) encoding = \"utf8\";\n let loweredCase = false;\n for (; ; ) {\n switch (encoding) {\n case \"hex\":\n return hexWrite(this, string, offset, length);\n case \"utf8\":\n case \"utf-8\":\n return utf8Write(this, string, offset, length);\n case \"ascii\":\n case \"latin1\":\n case \"binary\":\n return asciiWrite(this, string, offset, length);\n case \"base64\":\n return base64Write(this, string, offset, length);\n case \"ucs2\":\n case \"ucs-2\":\n case \"utf16le\":\n case \"utf-16le\":\n return ucs2Write(this, string, offset, length);\n default:\n if (loweredCase) throw new TypeError(\"Unknown encoding: \" + encoding);\n encoding = (\"\" + encoding).toLowerCase();\n loweredCase = true;\n }\n }\n };\n Buffer3.prototype.toJSON = function toJSON2() {\n return {\n type: \"Buffer\",\n data: Array.prototype.slice.call(this._arr || this, 0)\n };\n };\n function 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 function utf8Slice(buf, start, end) {\n end = Math.min(buf.length, end);\n const res = [];\n let i = start;\n while (i < end) {\n const firstByte = buf[i];\n let codePoint = null;\n let bytesPerSequence = firstByte > 239 ? 4 : firstByte > 223 ? 3 : firstByte > 191 ? 2 : 1;\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint;\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 128) {\n codePoint = firstByte;\n }\n break;\n case 2:\n secondByte = buf[i + 1];\n if ((secondByte & 192) === 128) {\n tempCodePoint = (firstByte & 31) << 6 | secondByte & 63;\n if (tempCodePoint > 127) {\n codePoint = tempCodePoint;\n }\n }\n break;\n case 3:\n secondByte = buf[i + 1];\n thirdByte = buf[i + 2];\n if ((secondByte & 192) === 128 && (thirdByte & 192) === 128) {\n tempCodePoint = (firstByte & 15) << 12 | (secondByte & 63) << 6 | thirdByte & 63;\n if (tempCodePoint > 2047 && (tempCodePoint < 55296 || tempCodePoint > 57343)) {\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 & 192) === 128 && (thirdByte & 192) === 128 && (fourthByte & 192) === 128) {\n tempCodePoint = (firstByte & 15) << 18 | (secondByte & 63) << 12 | (thirdByte & 63) << 6 | fourthByte & 63;\n if (tempCodePoint > 65535 && tempCodePoint < 1114112) {\n codePoint = tempCodePoint;\n }\n }\n }\n }\n if (codePoint === null) {\n codePoint = 65533;\n bytesPerSequence = 1;\n } else if (codePoint > 65535) {\n codePoint -= 65536;\n res.push(codePoint >>> 10 & 1023 | 55296);\n codePoint = 56320 | codePoint & 1023;\n }\n res.push(codePoint);\n i += bytesPerSequence;\n }\n return decodeCodePointsArray(res);\n }\n const MAX_ARGUMENTS_LENGTH = 4096;\n function decodeCodePointsArray(codePoints) {\n const len = codePoints.length;\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints);\n }\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 function asciiSlice(buf, start, end) {\n let ret = \"\";\n end = Math.min(buf.length, end);\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 127);\n }\n return ret;\n }\n function latin1Slice(buf, start, end) {\n let ret = \"\";\n end = Math.min(buf.length, end);\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i]);\n }\n return ret;\n }\n function hexSlice(buf, start, end) {\n const len = buf.length;\n if (!start || start < 0) start = 0;\n if (!end || end < 0 || end > len) end = len;\n let out = \"\";\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]];\n }\n return out;\n }\n function utf16leSlice(buf, start, end) {\n const bytes = buf.slice(start, end);\n let res = \"\";\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 Buffer3.prototype.slice = function slice(start, end) {\n const len = this.length;\n start = ~~start;\n end = end === void 0 ? len : ~~end;\n if (start < 0) {\n start += len;\n if (start < 0) start = 0;\n } else if (start > len) {\n start = len;\n }\n if (end < 0) {\n end += len;\n if (end < 0) end = 0;\n } else if (end > len) {\n end = len;\n }\n if (end < start) end = start;\n const newBuf = this.subarray(start, end);\n Object.setPrototypeOf(newBuf, Buffer3.prototype);\n return newBuf;\n };\n function 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 Buffer3.prototype.readUintLE = Buffer3.prototype.readUIntLE = function readUIntLE(offset, byteLength3, noAssert) {\n offset = offset >>> 0;\n byteLength3 = byteLength3 >>> 0;\n if (!noAssert) checkOffset(offset, byteLength3, this.length);\n let val = this[offset];\n let mul = 1;\n let i = 0;\n while (++i < byteLength3 && (mul *= 256)) {\n val += this[offset + i] * mul;\n }\n return val;\n };\n Buffer3.prototype.readUintBE = Buffer3.prototype.readUIntBE = function readUIntBE(offset, byteLength3, noAssert) {\n offset = offset >>> 0;\n byteLength3 = byteLength3 >>> 0;\n if (!noAssert) {\n checkOffset(offset, byteLength3, this.length);\n }\n let val = this[offset + --byteLength3];\n let mul = 1;\n while (byteLength3 > 0 && (mul *= 256)) {\n val += this[offset + --byteLength3] * mul;\n }\n return val;\n };\n Buffer3.prototype.readUint8 = Buffer3.prototype.readUInt8 = function readUInt8(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 1, this.length);\n return this[offset];\n };\n Buffer3.prototype.readUint16LE = Buffer3.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 Buffer3.prototype.readUint16BE = Buffer3.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 Buffer3.prototype.readUint32LE = Buffer3.prototype.readUInt32LE = function readUInt32LE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 4, this.length);\n return (this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16) + this[offset + 3] * 16777216;\n };\n Buffer3.prototype.readUint32BE = Buffer3.prototype.readUInt32BE = function readUInt32BE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 4, this.length);\n return this[offset] * 16777216 + (this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]);\n };\n Buffer3.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 === void 0 || last === void 0) {\n boundsError(offset, this.length - 8);\n }\n const lo = first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24;\n const hi = this[++offset] + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + last * 2 ** 24;\n return BigInt(lo) + (BigInt(hi) << BigInt(32));\n });\n Buffer3.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 === void 0 || last === void 0) {\n boundsError(offset, this.length - 8);\n }\n const hi = first * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset];\n const lo = this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last;\n return (BigInt(hi) << BigInt(32)) + BigInt(lo);\n });\n Buffer3.prototype.readIntLE = function readIntLE(offset, byteLength3, noAssert) {\n offset = offset >>> 0;\n byteLength3 = byteLength3 >>> 0;\n if (!noAssert) checkOffset(offset, byteLength3, this.length);\n let val = this[offset];\n let mul = 1;\n let i = 0;\n while (++i < byteLength3 && (mul *= 256)) {\n val += this[offset + i] * mul;\n }\n mul *= 128;\n if (val >= mul) val -= Math.pow(2, 8 * byteLength3);\n return val;\n };\n Buffer3.prototype.readIntBE = function readIntBE(offset, byteLength3, noAssert) {\n offset = offset >>> 0;\n byteLength3 = byteLength3 >>> 0;\n if (!noAssert) checkOffset(offset, byteLength3, this.length);\n let i = byteLength3;\n let mul = 1;\n let val = this[offset + --i];\n while (i > 0 && (mul *= 256)) {\n val += this[offset + --i] * mul;\n }\n mul *= 128;\n if (val >= mul) val -= Math.pow(2, 8 * byteLength3);\n return val;\n };\n Buffer3.prototype.readInt8 = function readInt8(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 1, this.length);\n if (!(this[offset] & 128)) return this[offset];\n return (255 - this[offset] + 1) * -1;\n };\n Buffer3.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 & 32768 ? val | 4294901760 : val;\n };\n Buffer3.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 & 32768 ? val | 4294901760 : val;\n };\n Buffer3.prototype.readInt32LE = function readInt32LE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 4, this.length);\n return this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16 | this[offset + 3] << 24;\n };\n Buffer3.prototype.readInt32BE = function readInt32BE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 4, this.length);\n return this[offset] << 24 | this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3];\n };\n Buffer3.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 === void 0 || last === void 0) {\n boundsError(offset, this.length - 8);\n }\n const val = this[offset + 4] + this[offset + 5] * 2 ** 8 + this[offset + 6] * 2 ** 16 + (last << 24);\n return (BigInt(val) << BigInt(32)) + BigInt(first + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24);\n });\n Buffer3.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 === void 0 || last === void 0) {\n boundsError(offset, this.length - 8);\n }\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset];\n return (BigInt(val) << BigInt(32)) + BigInt(this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last);\n });\n Buffer3.prototype.readFloatLE = function readFloatLE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 4, this.length);\n return ieee754$1$1.read(this, offset, true, 23, 4);\n };\n Buffer3.prototype.readFloatBE = function readFloatBE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 4, this.length);\n return ieee754$1$1.read(this, offset, false, 23, 4);\n };\n Buffer3.prototype.readDoubleLE = function readDoubleLE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 8, this.length);\n return ieee754$1$1.read(this, offset, true, 52, 8);\n };\n Buffer3.prototype.readDoubleBE = function readDoubleBE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) checkOffset(offset, 8, this.length);\n return ieee754$1$1.read(this, offset, false, 52, 8);\n };\n function checkInt(buf, value, offset, ext, max, min) {\n if (!Buffer3.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 Buffer3.prototype.writeUintLE = Buffer3.prototype.writeUIntLE = function writeUIntLE(value, offset, byteLength3, noAssert) {\n value = +value;\n offset = offset >>> 0;\n byteLength3 = byteLength3 >>> 0;\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength3) - 1;\n checkInt(this, value, offset, byteLength3, maxBytes, 0);\n }\n let mul = 1;\n let i = 0;\n this[offset] = value & 255;\n while (++i < byteLength3 && (mul *= 256)) {\n this[offset + i] = value / mul & 255;\n }\n return offset + byteLength3;\n };\n Buffer3.prototype.writeUintBE = Buffer3.prototype.writeUIntBE = function writeUIntBE(value, offset, byteLength3, noAssert) {\n value = +value;\n offset = offset >>> 0;\n byteLength3 = byteLength3 >>> 0;\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength3) - 1;\n checkInt(this, value, offset, byteLength3, maxBytes, 0);\n }\n let i = byteLength3 - 1;\n let mul = 1;\n this[offset + i] = value & 255;\n while (--i >= 0 && (mul *= 256)) {\n this[offset + i] = value / mul & 255;\n }\n return offset + byteLength3;\n };\n Buffer3.prototype.writeUint8 = Buffer3.prototype.writeUInt8 = function writeUInt8(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 1, 255, 0);\n this[offset] = value & 255;\n return offset + 1;\n };\n Buffer3.prototype.writeUint16LE = Buffer3.prototype.writeUInt16LE = function writeUInt16LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 2, 65535, 0);\n this[offset] = value & 255;\n this[offset + 1] = value >>> 8;\n return offset + 2;\n };\n Buffer3.prototype.writeUint16BE = Buffer3.prototype.writeUInt16BE = function writeUInt16BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 2, 65535, 0);\n this[offset] = value >>> 8;\n this[offset + 1] = value & 255;\n return offset + 2;\n };\n Buffer3.prototype.writeUint32LE = Buffer3.prototype.writeUInt32LE = function writeUInt32LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 4, 4294967295, 0);\n this[offset + 3] = value >>> 24;\n this[offset + 2] = value >>> 16;\n this[offset + 1] = value >>> 8;\n this[offset] = value & 255;\n return offset + 4;\n };\n Buffer3.prototype.writeUint32BE = Buffer3.prototype.writeUInt32BE = function writeUInt32BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 4, 4294967295, 0);\n this[offset] = value >>> 24;\n this[offset + 1] = value >>> 16;\n this[offset + 2] = value >>> 8;\n this[offset + 3] = value & 255;\n return offset + 4;\n };\n function wrtBigUInt64LE(buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7);\n let lo = Number(value & BigInt(4294967295));\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(4294967295));\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 function wrtBigUInt64BE(buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7);\n let lo = Number(value & BigInt(4294967295));\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(4294967295));\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 Buffer3.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE(value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt(\"0xffffffffffffffff\"));\n });\n Buffer3.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE(value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt(\"0xffffffffffffffff\"));\n });\n Buffer3.prototype.writeIntLE = function writeIntLE(value, offset, byteLength3, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) {\n const limit = Math.pow(2, 8 * byteLength3 - 1);\n checkInt(this, value, offset, byteLength3, limit - 1, -limit);\n }\n let i = 0;\n let mul = 1;\n let sub = 0;\n this[offset] = value & 255;\n while (++i < byteLength3 && (mul *= 256)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1;\n }\n this[offset + i] = (value / mul >> 0) - sub & 255;\n }\n return offset + byteLength3;\n };\n Buffer3.prototype.writeIntBE = function writeIntBE(value, offset, byteLength3, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) {\n const limit = Math.pow(2, 8 * byteLength3 - 1);\n checkInt(this, value, offset, byteLength3, limit - 1, -limit);\n }\n let i = byteLength3 - 1;\n let mul = 1;\n let sub = 0;\n this[offset + i] = value & 255;\n while (--i >= 0 && (mul *= 256)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1;\n }\n this[offset + i] = (value / mul >> 0) - sub & 255;\n }\n return offset + byteLength3;\n };\n Buffer3.prototype.writeInt8 = function writeInt8(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 1, 127, -128);\n if (value < 0) value = 255 + value + 1;\n this[offset] = value & 255;\n return offset + 1;\n };\n Buffer3.prototype.writeInt16LE = function writeInt16LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 2, 32767, -32768);\n this[offset] = value & 255;\n this[offset + 1] = value >>> 8;\n return offset + 2;\n };\n Buffer3.prototype.writeInt16BE = function writeInt16BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 2, 32767, -32768);\n this[offset] = value >>> 8;\n this[offset + 1] = value & 255;\n return offset + 2;\n };\n Buffer3.prototype.writeInt32LE = function writeInt32LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 4, 2147483647, -2147483648);\n this[offset] = value & 255;\n this[offset + 1] = value >>> 8;\n this[offset + 2] = value >>> 16;\n this[offset + 3] = value >>> 24;\n return offset + 4;\n };\n Buffer3.prototype.writeInt32BE = function writeInt32BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) checkInt(this, value, offset, 4, 2147483647, -2147483648);\n if (value < 0) value = 4294967295 + value + 1;\n this[offset] = value >>> 24;\n this[offset + 1] = value >>> 16;\n this[offset + 2] = value >>> 8;\n this[offset + 3] = value & 255;\n return offset + 4;\n };\n Buffer3.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE(value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt(\"0x8000000000000000\"), BigInt(\"0x7fffffffffffffff\"));\n });\n Buffer3.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE(value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt(\"0x8000000000000000\"), BigInt(\"0x7fffffffffffffff\"));\n });\n function 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 function writeFloat(buf, value, offset, littleEndian, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4);\n }\n ieee754$1$1.write(buf, value, offset, littleEndian, 23, 4);\n return offset + 4;\n }\n Buffer3.prototype.writeFloatLE = function writeFloatLE(value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert);\n };\n Buffer3.prototype.writeFloatBE = function writeFloatBE(value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert);\n };\n function writeDouble(buf, value, offset, littleEndian, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8);\n }\n ieee754$1$1.write(buf, value, offset, littleEndian, 52, 8);\n return offset + 8;\n }\n Buffer3.prototype.writeDoubleLE = function writeDoubleLE(value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert);\n };\n Buffer3.prototype.writeDoubleBE = function writeDoubleBE(value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert);\n };\n Buffer3.prototype.copy = function copy(target, targetStart, start, end) {\n if (!Buffer3.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 if (end === start) return 0;\n if (target.length === 0 || this.length === 0) return 0;\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 if (end > this.length) end = this.length;\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start;\n }\n const len = end - start;\n if (this === target && typeof GlobalUint8Array.prototype.copyWithin === \"function\") {\n this.copyWithin(targetStart, start, end);\n } else {\n GlobalUint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n );\n }\n return len;\n };\n Buffer3.prototype.fill = function fill(val, start, end, encoding) {\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 !== void 0 && typeof encoding !== \"string\") {\n throw new TypeError(\"encoding must be a string\");\n }\n if (typeof encoding === \"string\" && !Buffer3.isEncoding(encoding)) {\n throw new TypeError(\"Unknown encoding: \" + encoding);\n }\n if (val.length === 1) {\n const code2 = val.charCodeAt(0);\n if (encoding === \"utf8\" && code2 < 128 || encoding === \"latin1\") {\n val = code2;\n }\n }\n } else if (typeof val === \"number\") {\n val = val & 255;\n } else if (typeof val === \"boolean\") {\n val = Number(val);\n }\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError(\"Out of range index\");\n }\n if (end <= start) {\n return this;\n }\n start = start >>> 0;\n end = end === void 0 ? this.length : end >>> 0;\n if (!val) val = 0;\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 = Buffer3.isBuffer(val) ? val : Buffer3.from(val, encoding);\n const len = bytes.length;\n if (len === 0) {\n throw new TypeError('The value \"' + val + '\" is invalid for argument \"value\"');\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len];\n }\n }\n return this;\n };\n const errors = {};\n function E(sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor() {\n super();\n Object.defineProperty(this, \"message\", {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n });\n this.name = `${this.name} [${sym}]`;\n this.stack;\n delete this.name;\n }\n get code() {\n return sym;\n }\n set code(value) {\n Object.defineProperty(this, \"code\", {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n });\n }\n toString() {\n return `${this.name} [${sym}]: ${this.message}`;\n }\n };\n }\n E(\n \"ERR_BUFFER_OUT_OF_BOUNDS\",\n function(name) {\n if (name) {\n return `${name} is outside of buffer bounds`;\n }\n return \"Attempt to access memory outside buffer bounds\";\n },\n RangeError\n );\n E(\n \"ERR_INVALID_ARG_TYPE\",\n function(name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`;\n },\n TypeError\n );\n E(\n \"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 },\n RangeError\n );\n function 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 function checkBounds(buf, offset, byteLength3) {\n validateNumber(offset, \"offset\");\n if (buf[offset] === void 0 || buf[offset + byteLength3] === void 0) {\n boundsError(offset, buf.length - (byteLength3 + 1));\n }\n }\n function checkIntBI(value, min, max, buf, offset, byteLength3) {\n if (value > max || value < min) {\n const n = typeof min === \"bigint\" ? \"n\" : \"\";\n let range;\n {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength3 + 1) * 8}${n}`;\n } else {\n range = `>= -(2${n} ** ${(byteLength3 + 1) * 8 - 1}${n}) and < 2 ** ${(byteLength3 + 1) * 8 - 1}${n}`;\n }\n }\n throw new errors.ERR_OUT_OF_RANGE(\"value\", range, value);\n }\n checkBounds(buf, offset, byteLength3);\n }\n function validateNumber(value, name) {\n if (typeof value !== \"number\") {\n throw new errors.ERR_INVALID_ARG_TYPE(name, \"number\", value);\n }\n }\n function boundsError(value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type);\n throw new errors.ERR_OUT_OF_RANGE(\"offset\", \"an integer\", value);\n }\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS();\n }\n throw new errors.ERR_OUT_OF_RANGE(\n \"offset\",\n `>= ${0} and <= ${length}`,\n value\n );\n }\n const INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n function base64clean(str) {\n str = str.split(\"=\")[0];\n str = str.trim().replace(INVALID_BASE64_RE, \"\");\n if (str.length < 2) return \"\";\n while (str.length % 4 !== 0) {\n str = str + \"=\";\n }\n return str;\n }\n function utf8ToBytes(string, units) {\n units = units || Infinity;\n let codePoint;\n const length = string.length;\n let leadSurrogate = null;\n const bytes = [];\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i);\n if (codePoint > 55295 && codePoint < 57344) {\n if (!leadSurrogate) {\n if (codePoint > 56319) {\n if ((units -= 3) > -1) bytes.push(239, 191, 189);\n continue;\n } else if (i + 1 === length) {\n if ((units -= 3) > -1) bytes.push(239, 191, 189);\n continue;\n }\n leadSurrogate = codePoint;\n continue;\n }\n if (codePoint < 56320) {\n if ((units -= 3) > -1) bytes.push(239, 191, 189);\n leadSurrogate = codePoint;\n continue;\n }\n codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536;\n } else if (leadSurrogate) {\n if ((units -= 3) > -1) bytes.push(239, 191, 189);\n }\n leadSurrogate = null;\n if (codePoint < 128) {\n if ((units -= 1) < 0) break;\n bytes.push(codePoint);\n } else if (codePoint < 2048) {\n if ((units -= 2) < 0) break;\n bytes.push(\n codePoint >> 6 | 192,\n codePoint & 63 | 128\n );\n } else if (codePoint < 65536) {\n if ((units -= 3) < 0) break;\n bytes.push(\n codePoint >> 12 | 224,\n codePoint >> 6 & 63 | 128,\n codePoint & 63 | 128\n );\n } else if (codePoint < 1114112) {\n if ((units -= 4) < 0) break;\n bytes.push(\n codePoint >> 18 | 240,\n codePoint >> 12 & 63 | 128,\n codePoint >> 6 & 63 | 128,\n codePoint & 63 | 128\n );\n } else {\n throw new Error(\"Invalid code point\");\n }\n }\n return bytes;\n }\n function asciiToBytes(str) {\n const byteArray = [];\n for (let i = 0; i < str.length; ++i) {\n byteArray.push(str.charCodeAt(i) & 255);\n }\n return byteArray;\n }\n function 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 c = str.charCodeAt(i);\n hi = c >> 8;\n lo = c % 256;\n byteArray.push(lo);\n byteArray.push(hi);\n }\n return byteArray;\n }\n function base64ToBytes(str) {\n return base64.toByteArray(base64clean(str));\n }\n function 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 function isInstance(obj, type) {\n return obj instanceof type || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type.name;\n }\n function numberIsNaN(obj) {\n return obj !== obj;\n }\n const 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 function defineBigIntMethod(fn) {\n return typeof BigInt === \"undefined\" ? BufferBigIntNotDefined : fn;\n }\n function BufferBigIntNotDefined() {\n throw new Error(\"BigInt not supported\");\n }\n})(buffer);\nconst Buffer2 = buffer.Buffer;\nconst Buffer$1 = buffer.Buffer;\nconst global = globalThis || void 0 || self;\nfunction getDefaultExportFromCjs(x) {\n return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, \"default\") ? x[\"default\"] : x;\n}\nvar browser = { exports: {} };\nvar process = browser.exports = {};\nvar cachedSetTimeout;\nvar cachedClearTimeout;\nfunction defaultSetTimout() {\n throw new Error(\"setTimeout has not been defined\");\n}\nfunction defaultClearTimeout() {\n throw new Error(\"clearTimeout has not been defined\");\n}\n(function() {\n try {\n if (typeof setTimeout === \"function\") {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === \"function\") {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n})();\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n return setTimeout(fun, 0);\n }\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n return cachedSetTimeout(fun, 0);\n } catch (e) {\n try {\n return cachedSetTimeout.call(null, fun, 0);\n } catch (e2) {\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n return clearTimeout(marker);\n }\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n return cachedClearTimeout(marker);\n } catch (e) {\n try {\n return cachedClearTimeout.call(null, marker);\n } catch (e2) {\n return cachedClearTimeout.call(this, marker);\n }\n }\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n var len = queue.length;\n while (len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\nprocess.nextTick = function(fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function() {\n this.fun.apply(null, this.array);\n};\nprocess.title = \"browser\";\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = \"\";\nprocess.versions = {};\nfunction noop$1() {\n}\nprocess.on = noop$1;\nprocess.addListener = noop$1;\nprocess.once = noop$1;\nprocess.off = noop$1;\nprocess.removeListener = noop$1;\nprocess.removeAllListeners = noop$1;\nprocess.emit = noop$1;\nprocess.prependListener = noop$1;\nprocess.prependOnceListener = noop$1;\nprocess.listeners = function(name) {\n return [];\n};\nprocess.binding = function(name) {\n throw new Error(\"process.binding is not supported\");\n};\nprocess.cwd = function() {\n return \"/\";\n};\nprocess.chdir = function(dir) {\n throw new Error(\"process.chdir is not supported\");\n};\nprocess.umask = function() {\n return 0;\n};\nvar browserExports = browser.exports;\nconst process$1 = /* @__PURE__ */ getDefaultExportFromCjs(browserExports);\nfunction bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\nconst { toString } = Object.prototype;\nconst { getPrototypeOf } = Object;\nconst kindOf = /* @__PURE__ */ ((cache) => (thing) => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(/* @__PURE__ */ Object.create(null));\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type;\n};\nconst typeOfTest = (type) => (thing) => typeof thing === type;\nconst { isArray } = Array;\nconst isUndefined = typeOfTest(\"undefined\");\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\nconst isArrayBuffer = kindOfTest(\"ArrayBuffer\");\nfunction isArrayBufferView(val) {\n let result;\n if (typeof ArrayBuffer !== \"undefined\" && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && isArrayBuffer(val.buffer);\n }\n return result;\n}\nconst isString = typeOfTest(\"string\");\nconst isFunction = typeOfTest(\"function\");\nconst isNumber = typeOfTest(\"number\");\nconst isObject = (thing) => thing !== null && typeof thing === \"object\";\nconst isBoolean = (thing) => thing === true || thing === false;\nconst isPlainObject = (val) => {\n if (kindOf(val) !== \"object\") {\n return false;\n }\n const prototype2 = getPrototypeOf(val);\n return (prototype2 === null || prototype2 === Object.prototype || Object.getPrototypeOf(prototype2) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n};\nconst isDate = kindOfTest(\"Date\");\nconst isFile = kindOfTest(\"File\");\nconst isBlob = kindOfTest(\"Blob\");\nconst isFileList = kindOfTest(\"FileList\");\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\nconst isFormData = (thing) => {\n let kind;\n return thing && (typeof FormData === \"function\" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === \"formdata\" || // detect form-data instance\n kind === \"object\" && isFunction(thing.toString) && thing.toString() === \"[object FormData]\"));\n};\nconst isURLSearchParams = kindOfTest(\"URLSearchParams\");\nconst [isReadableStream, isRequest, isResponse, isHeaders] = [\"ReadableStream\", \"Request\", \"Response\", \"Headers\"].map(kindOfTest);\nconst trim = (str) => str.trim ? str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, \"\");\nfunction forEach(obj, fn, { allOwnKeys = false } = {}) {\n if (obj === null || typeof obj === \"undefined\") {\n return;\n }\n let i;\n let l;\n if (typeof obj !== \"object\") {\n obj = [obj];\n }\n if (isArray(obj)) {\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\nconst _global = (() => {\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : global;\n})();\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\nfunction merge() {\n const { caseless } = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n };\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\nconst extend = (a, b, thisArg, { allOwnKeys } = {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, { allOwnKeys });\n return a;\n};\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 65279) {\n content = content.slice(1);\n }\n return content;\n};\nconst inherits = (constructor, superConstructor, props, descriptors2) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors2);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, \"super\", {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n};\nconst toFlatObject = (sourceObj, destObj, filter2, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n destObj = destObj || {};\n if (sourceObj == null) return destObj;\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter2 !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter2 || filter2(sourceObj, destObj)) && sourceObj !== Object.prototype);\n return destObj;\n};\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === void 0 || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n};\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n};\nconst isTypedArray = /* @__PURE__ */ ((TypedArray) => {\n return (thing) => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== \"undefined\" && getPrototypeOf(Uint8Array));\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n const iterator = generator.call(obj);\n let result;\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n};\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n return arr;\n};\nconst isHTMLForm = kindOfTest(\"HTMLFormElement\");\nconst toCamelCase = (str) => {\n return str.toLowerCase().replace(\n /[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\nconst hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype);\nconst isRegExp = kindOfTest(\"RegExp\");\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors2 = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n forEach(descriptors2, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n Object.defineProperties(obj, reducedDescriptors);\n};\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n if (isFunction(obj) && [\"arguments\", \"caller\", \"callee\"].indexOf(name) !== -1) {\n return false;\n }\n const value = obj[name];\n if (!isFunction(value)) return;\n descriptor.enumerable = false;\n if (\"writable\" in descriptor) {\n descriptor.writable = false;\n return;\n }\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error(\"Can not rewrite read-only method '\" + name + \"'\");\n };\n }\n });\n};\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n const define = (arr) => {\n arr.forEach((value) => {\n obj[value] = true;\n });\n };\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n return obj;\n};\nconst noop = () => {\n};\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n};\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === \"FormData\" && thing[Symbol.iterator]);\n}\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n const visit = (source, i) => {\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n if (!(\"toJSON\" in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n stack[i] = void 0;\n return target;\n }\n }\n return source;\n };\n return visit(obj, 0);\n};\nconst isAsyncFn = kindOfTest(\"AsyncFunction\");\nconst isThenable = (thing) => thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({ source, data }) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n };\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === \"function\",\n isFunction(_global.postMessage)\n);\nconst asap = typeof queueMicrotask !== \"undefined\" ? queueMicrotask.bind(_global) : typeof process$1 !== \"undefined\" && process$1.nextTick || _setImmediate;\nconst utils$1 = {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty,\n // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\nfunction AxiosError(message, code2, config, request, response) {\n Error.call(this);\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = new Error().stack;\n }\n this.message = message;\n this.name = \"AxiosError\";\n code2 && (this.code = code2);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\nutils$1.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils$1.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\nconst prototype$1 = AxiosError.prototype;\nconst descriptors = {};\n[\n \"ERR_BAD_OPTION_VALUE\",\n \"ERR_BAD_OPTION\",\n \"ECONNABORTED\",\n \"ETIMEDOUT\",\n \"ERR_NETWORK\",\n \"ERR_FR_TOO_MANY_REDIRECTS\",\n \"ERR_DEPRECATED\",\n \"ERR_BAD_RESPONSE\",\n \"ERR_BAD_REQUEST\",\n \"ERR_CANCELED\",\n \"ERR_NOT_SUPPORT\",\n \"ERR_INVALID_URL\"\n // eslint-disable-next-line func-names\n].forEach((code2) => {\n descriptors[code2] = { value: code2 };\n});\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype$1, \"isAxiosError\", { value: true });\nAxiosError.from = (error, code2, config, request, response, customProps) => {\n const axiosError = Object.create(prototype$1);\n utils$1.toFlatObject(error, axiosError, function filter2(obj) {\n return obj !== Error.prototype;\n }, (prop) => {\n return prop !== \"isAxiosError\";\n });\n AxiosError.call(axiosError, error.message, code2, config, request, response);\n axiosError.cause = error;\n axiosError.name = error.name;\n customProps && Object.assign(axiosError, customProps);\n return axiosError;\n};\nconst httpAdapter = null;\nfunction isVisitable(thing) {\n return utils$1.isPlainObject(thing) || utils$1.isArray(thing);\n}\nfunction removeBrackets(key) {\n return utils$1.endsWith(key, \"[]\") ? key.slice(0, -2) : key;\n}\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n token = removeBrackets(token);\n return !dots && i ? \"[\" + token + \"]\" : token;\n }).join(dots ? \".\" : \"\");\n}\nfunction isFlatArray(arr) {\n return utils$1.isArray(arr) && !arr.some(isVisitable);\n}\nconst predicates = utils$1.toFlatObject(utils$1, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\nfunction toFormData(obj, formData, options) {\n if (!utils$1.isObject(obj)) {\n throw new TypeError(\"target must be an object\");\n }\n formData = formData || new FormData();\n options = utils$1.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n return !utils$1.isUndefined(source[option]);\n });\n const metaTokens = options.metaTokens;\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== \"undefined\" && Blob;\n const useBlob = _Blob && utils$1.isSpecCompliantForm(formData);\n if (!utils$1.isFunction(visitor)) {\n throw new TypeError(\"visitor must be a function\");\n }\n function convertValue(value) {\n if (value === null) return \"\";\n if (utils$1.isDate(value)) {\n return value.toISOString();\n }\n if (!useBlob && utils$1.isBlob(value)) {\n throw new AxiosError(\"Blob is not supported. Use a Buffer instead.\");\n }\n if (utils$1.isArrayBuffer(value) || utils$1.isTypedArray(value)) {\n return useBlob && typeof Blob === \"function\" ? new Blob([value]) : Buffer2.from(value);\n }\n return value;\n }\n function defaultVisitor(value, key, path) {\n let arr = value;\n if (value && !path && typeof value === \"object\") {\n if (utils$1.endsWith(key, \"{}\")) {\n key = metaTokens ? key : key.slice(0, -2);\n value = JSON.stringify(value);\n } else if (utils$1.isArray(value) && isFlatArray(value) || (utils$1.isFileList(value) || utils$1.endsWith(key, \"[]\")) && (arr = utils$1.toArray(value))) {\n key = removeBrackets(key);\n arr.forEach(function each(el, index) {\n !(utils$1.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + \"[]\",\n convertValue(el)\n );\n });\n return false;\n }\n }\n if (isVisitable(value)) {\n return true;\n }\n formData.append(renderKey(path, key, dots), convertValue(value));\n return false;\n }\n const stack = [];\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n function build(value, path) {\n if (utils$1.isUndefined(value)) return;\n if (stack.indexOf(value) !== -1) {\n throw Error(\"Circular reference detected in \" + path.join(\".\"));\n }\n stack.push(value);\n utils$1.forEach(value, function each(el, key) {\n const result = !(utils$1.isUndefined(el) || el === null) && visitor.call(\n formData,\n el,\n utils$1.isString(key) ? key.trim() : key,\n path,\n exposedHelpers\n );\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n stack.pop();\n }\n if (!utils$1.isObject(obj)) {\n throw new TypeError(\"data must be an object\");\n }\n build(obj);\n return formData;\n}\nfunction encode$1(str) {\n const charMap = {\n \"!\": \"%21\",\n \"'\": \"%27\",\n \"(\": \"%28\",\n \")\": \"%29\",\n \"~\": \"%7E\",\n \"%20\": \"+\",\n \"%00\": \"\\0\"\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n params && toFormData(params, this, options);\n}\nconst prototype = AxiosURLSearchParams.prototype;\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\nprototype.toString = function toString2(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode$1);\n } : encode$1;\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + \"=\" + _encode(pair[1]);\n }, \"\").join(\"&\");\n};\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%3A/gi, \":\").replace(/%24/g, \"$\").replace(/%2C/gi, \",\").replace(/%20/g, \"+\").replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n}\nfunction buildURL(url, params, options) {\n if (!params) {\n return url;\n }\n const _encode = options && options.encode || encode;\n if (utils$1.isFunction(options)) {\n options = {\n serialize: options\n };\n }\n const serializeFn = options && options.serialize;\n let serializedParams;\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils$1.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode);\n }\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf(\"?\") === -1 ? \"?\" : \"&\") + serializedParams;\n }\n return url;\n}\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils$1.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\nconst transitionalDefaults = {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\nconst URLSearchParams$1 = typeof URLSearchParams !== \"undefined\" ? URLSearchParams : AxiosURLSearchParams;\nconst FormData$1 = typeof FormData !== \"undefined\" ? FormData : null;\nconst Blob$1 = typeof Blob !== \"undefined\" ? Blob : null;\nconst platform$1 = {\n isBrowser: true,\n classes: {\n URLSearchParams: URLSearchParams$1,\n FormData: FormData$1,\n Blob: Blob$1\n },\n protocols: [\"http\", \"https\", \"file\", \"blob\", \"url\", \"data\"]\n};\nconst hasBrowserEnv = typeof window !== \"undefined\" && typeof document !== \"undefined\";\nconst _navigator = typeof navigator === \"object\" && navigator || void 0;\nconst hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || [\"ReactNative\", \"NativeScript\", \"NS\"].indexOf(_navigator.product) < 0);\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return typeof WorkerGlobalScope !== \"undefined\" && // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope && typeof self.importScripts === \"function\";\n})();\nconst origin = hasBrowserEnv && window.location.href || \"http://localhost\";\nconst utils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n hasBrowserEnv,\n hasStandardBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n navigator: _navigator,\n origin\n}, Symbol.toStringTag, { value: \"Module\" }));\nconst platform = {\n ...utils,\n ...platform$1\n};\nfunction toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils$1.isBuffer(value)) {\n this.append(key, value.toString(\"base64\"));\n return false;\n }\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\nfunction parsePropPath(name) {\n return utils$1.matchAll(/\\w+|\\[(\\w*)]/g, name).map((match) => {\n return match[0] === \"[]\" ? \"\" : match[1] || match[0];\n });\n}\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n if (name === \"__proto__\") return true;\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils$1.isArray(target) ? target.length : name;\n if (isLast) {\n if (utils$1.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n return !isNumericKey;\n }\n if (!target[name] || !utils$1.isObject(target[name])) {\n target[name] = [];\n }\n const result = buildPath(path, value, target[name], index);\n if (result && utils$1.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n return !isNumericKey;\n }\n if (utils$1.isFormData(formData) && utils$1.isFunction(formData.entries)) {\n const obj = {};\n utils$1.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n return obj;\n }\n return null;\n}\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils$1.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils$1.trim(rawValue);\n } catch (e) {\n if (e.name !== \"SyntaxError\") {\n throw e;\n }\n }\n }\n return (0, JSON.stringify)(rawValue);\n}\nconst defaults = {\n transitional: transitionalDefaults,\n adapter: [\"xhr\", \"http\", \"fetch\"],\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || \"\";\n const hasJSONContentType = contentType.indexOf(\"application/json\") > -1;\n const isObjectPayload = utils$1.isObject(data);\n if (isObjectPayload && utils$1.isHTMLForm(data)) {\n data = new FormData(data);\n }\n const isFormData2 = utils$1.isFormData(data);\n if (isFormData2) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n if (utils$1.isArrayBuffer(data) || utils$1.isBuffer(data) || utils$1.isStream(data) || utils$1.isFile(data) || utils$1.isBlob(data) || utils$1.isReadableStream(data)) {\n return data;\n }\n if (utils$1.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils$1.isURLSearchParams(data)) {\n headers.setContentType(\"application/x-www-form-urlencoded;charset=utf-8\", false);\n return data.toString();\n }\n let isFileList2;\n if (isObjectPayload) {\n if (contentType.indexOf(\"application/x-www-form-urlencoded\") > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n if ((isFileList2 = utils$1.isFileList(data)) || contentType.indexOf(\"multipart/form-data\") > -1) {\n const _FormData = this.env && this.env.FormData;\n return toFormData(\n isFileList2 ? { \"files[]\": data } : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n if (isObjectPayload || hasJSONContentType) {\n headers.setContentType(\"application/json\", false);\n return stringifySafely(data);\n }\n return data;\n }],\n transformResponse: [function transformResponse(data) {\n const transitional2 = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing;\n const JSONRequested = this.responseType === \"json\";\n if (utils$1.isResponse(data) || utils$1.isReadableStream(data)) {\n return data;\n }\n if (data && utils$1.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) {\n const silentJSONParsing = transitional2 && transitional2.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === \"SyntaxError\") {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n return data;\n }],\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n xsrfCookieName: \"XSRF-TOKEN\",\n xsrfHeaderName: \"X-XSRF-TOKEN\",\n maxContentLength: -1,\n maxBodyLength: -1,\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n headers: {\n common: {\n \"Accept\": \"application/json, text/plain, */*\",\n \"Content-Type\": void 0\n }\n }\n};\nutils$1.forEach([\"delete\", \"get\", \"head\", \"post\", \"put\", \"patch\"], (method) => {\n defaults.headers[method] = {};\n});\nconst ignoreDuplicateOf = utils$1.toObjectSet([\n \"age\",\n \"authorization\",\n \"content-length\",\n \"content-type\",\n \"etag\",\n \"expires\",\n \"from\",\n \"host\",\n \"if-modified-since\",\n \"if-unmodified-since\",\n \"last-modified\",\n \"location\",\n \"max-forwards\",\n \"proxy-authorization\",\n \"referer\",\n \"retry-after\",\n \"user-agent\"\n]);\nconst parseHeaders = (rawHeaders) => {\n const parsed = {};\n let key;\n let val;\n let i;\n rawHeaders && rawHeaders.split(\"\\n\").forEach(function parser(line) {\n i = line.indexOf(\":\");\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n if (!key || parsed[key] && ignoreDuplicateOf[key]) {\n return;\n }\n if (key === \"set-cookie\") {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + \", \" + val : val;\n }\n });\n return parsed;\n};\nconst $internals = Symbol(\"internals\");\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n return utils$1.isArray(value) ? value.map(normalizeValue) : String(value);\n}\nfunction parseTokens(str) {\n const tokens = /* @__PURE__ */ Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n while (match = tokensRE.exec(str)) {\n tokens[match[1]] = match[2];\n }\n return tokens;\n}\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\nfunction matchHeaderValue(context, value, header, filter2, isHeaderNameFilter) {\n if (utils$1.isFunction(filter2)) {\n return filter2.call(this, value, header);\n }\n if (isHeaderNameFilter) {\n value = header;\n }\n if (!utils$1.isString(value)) return;\n if (utils$1.isString(filter2)) {\n return value.indexOf(filter2) !== -1;\n }\n if (utils$1.isRegExp(filter2)) {\n return filter2.test(value);\n }\n}\nfunction formatHeader(header) {\n return header.trim().toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\nfunction buildAccessors(obj, header) {\n const accessorName = utils$1.toCamelCase(\" \" + header);\n [\"get\", \"set\", \"has\"].forEach((methodName) => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n set(header, valueOrRewrite, rewrite) {\n const self2 = this;\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n if (!lHeader) {\n throw new Error(\"header name must be a non-empty string\");\n }\n const key = utils$1.findKey(self2, lHeader);\n if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) {\n self2[key || _header] = normalizeValue(_value);\n }\n }\n const setHeaders = (headers, _rewrite) => utils$1.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n if (utils$1.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite);\n } else if (utils$1.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils$1.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n return this;\n }\n get(header, parser) {\n header = normalizeHeader(header);\n if (header) {\n const key = utils$1.findKey(this, header);\n if (key) {\n const value = this[key];\n if (!parser) {\n return value;\n }\n if (parser === true) {\n return parseTokens(value);\n }\n if (utils$1.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n if (utils$1.isRegExp(parser)) {\n return parser.exec(value);\n }\n throw new TypeError(\"parser must be boolean|regexp|function\");\n }\n }\n }\n has(header, matcher) {\n header = normalizeHeader(header);\n if (header) {\n const key = utils$1.findKey(this, header);\n return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n return false;\n }\n delete(header, matcher) {\n const self2 = this;\n let deleted = false;\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n if (_header) {\n const key = utils$1.findKey(self2, _header);\n if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) {\n delete self2[key];\n deleted = true;\n }\n }\n }\n if (utils$1.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n return deleted;\n }\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n while (i--) {\n const key = keys[i];\n if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n return deleted;\n }\n normalize(format) {\n const self2 = this;\n const headers = {};\n utils$1.forEach(this, (value, header) => {\n const key = utils$1.findKey(headers, header);\n if (key) {\n self2[key] = normalizeValue(value);\n delete self2[header];\n return;\n }\n const normalized = format ? formatHeader(header) : String(header).trim();\n if (normalized !== header) {\n delete self2[header];\n }\n self2[normalized] = normalizeValue(value);\n headers[normalized] = true;\n });\n return this;\n }\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n toJSON(asStrings) {\n const obj = /* @__PURE__ */ Object.create(null);\n utils$1.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils$1.isArray(value) ? value.join(\", \") : value);\n });\n return obj;\n }\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + \": \" + value).join(\"\\n\");\n }\n get [Symbol.toStringTag]() {\n return \"AxiosHeaders\";\n }\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n static concat(first, ...targets) {\n const computed = new this(first);\n targets.forEach((target) => computed.set(target));\n return computed;\n }\n static accessor(header) {\n const internals = this[$internals] = this[$internals] = {\n accessors: {}\n };\n const accessors = internals.accessors;\n const prototype2 = this.prototype;\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n if (!accessors[lHeader]) {\n buildAccessors(prototype2, _header);\n accessors[lHeader] = true;\n }\n }\n utils$1.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n return this;\n }\n}\nAxiosHeaders.accessor([\"Content-Type\", \"Content-Length\", \"Accept\", \"Accept-Encoding\", \"User-Agent\", \"Authorization\"]);\nutils$1.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1);\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n };\n});\nutils$1.freezeMethods(AxiosHeaders);\nfunction transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n utils$1.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : void 0);\n });\n headers.normalize();\n return data;\n}\nfunction isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\nfunction CanceledError(message, config, request) {\n AxiosError.call(this, message == null ? \"canceled\" : message, AxiosError.ERR_CANCELED, config, request);\n this.name = \"CanceledError\";\n}\nutils$1.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\nfunction settle(resolve, reject, response) {\n const validateStatus2 = response.config.validateStatus;\n if (!response.status || !validateStatus2 || validateStatus2(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n \"Request failed with status code \" + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\nfunction parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || \"\";\n}\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n min = min !== void 0 ? min : 1e3;\n return function push(chunkLength) {\n const now = Date.now();\n const startedAt = timestamps[tail];\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n bytes[head] = chunkLength;\n timestamps[head] = now;\n let i = tail;\n let bytesCount = 0;\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n head = (head + 1) % samplesCount;\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n if (now - firstSampleTS < min) {\n return;\n }\n const passed = startedAt && now - startedAt;\n return passed ? Math.round(bytesCount * 1e3 / passed) : void 0;\n };\n}\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1e3 / freq;\n let lastArgs;\n let timer;\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n };\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if (passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs);\n }, threshold - passed);\n }\n }\n };\n const flush = () => lastArgs && invoke(lastArgs);\n return [throttled, flush];\n}\nconst progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n return throttle((e) => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : void 0;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n bytesNotified = loaded;\n const data = {\n loaded,\n total,\n progress: total ? loaded / total : void 0,\n bytes: progressBytes,\n rate: rate ? rate : void 0,\n estimated: rate && total && inRange ? (total - loaded) / rate : void 0,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? \"download\" : \"upload\"]: true\n };\n listener(data);\n }, freq);\n};\nconst progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n};\nconst asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args));\nconst isURLSameOrigin = platform.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port);\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\nconst cookies = platform.hasStandardBrowserEnv ? (\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + \"=\" + encodeURIComponent(value)];\n utils$1.isNumber(expires) && cookie.push(\"expires=\" + new Date(expires).toGMTString());\n utils$1.isString(path) && cookie.push(\"path=\" + path);\n utils$1.isString(domain) && cookie.push(\"domain=\" + domain);\n secure === true && cookie.push(\"secure\");\n document.cookie = cookie.join(\"; \");\n },\n read(name) {\n const match = document.cookie.match(new RegExp(\"(^|;\\\\s*)(\" + name + \")=([^;]*)\"));\n return match ? decodeURIComponent(match[3]) : null;\n },\n remove(name) {\n this.write(name, \"\", Date.now() - 864e5);\n }\n }\n) : (\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {\n },\n read() {\n return null;\n },\n remove() {\n }\n }\n);\nfunction isAbsoluteURL(url) {\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\nfunction combineURLs(baseURL, relativeURL) {\n return relativeURL ? baseURL.replace(/\\/?\\/$/, \"\") + \"/\" + relativeURL.replace(/^\\/+/, \"\") : baseURL;\n}\nfunction buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {\n let isRelativeUrl = !isAbsoluteURL(requestedURL);\n if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\nfunction mergeConfig(config1, config2) {\n config2 = config2 || {};\n const config = {};\n function getMergedValue(target, source, prop, caseless) {\n if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) {\n return utils$1.merge.call({ caseless }, target, source);\n } else if (utils$1.isPlainObject(source)) {\n return utils$1.merge({}, source);\n } else if (utils$1.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n function mergeDeepProperties(a, b, prop, caseless) {\n if (!utils$1.isUndefined(b)) {\n return getMergedValue(a, b, prop, caseless);\n } else if (!utils$1.isUndefined(a)) {\n return getMergedValue(void 0, a, prop, caseless);\n }\n }\n function valueFromConfig2(a, b) {\n if (!utils$1.isUndefined(b)) {\n return getMergedValue(void 0, b);\n }\n }\n function defaultToConfig2(a, b) {\n if (!utils$1.isUndefined(b)) {\n return getMergedValue(void 0, b);\n } else if (!utils$1.isUndefined(a)) {\n return getMergedValue(void 0, a);\n }\n }\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(void 0, a);\n }\n }\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true)\n };\n utils$1.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge2 = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge2(config1[prop], config2[prop], prop);\n utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue);\n });\n return config;\n}\nconst resolveConfig = (config) => {\n const newConfig = mergeConfig({}, config);\n let { data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig;\n newConfig.headers = headers = AxiosHeaders.from(headers);\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer);\n if (auth) {\n headers.set(\n \"Authorization\",\n \"Basic \" + btoa((auth.username || \"\") + \":\" + (auth.password ? unescape(encodeURIComponent(auth.password)) : \"\"))\n );\n }\n let contentType;\n if (utils$1.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(void 0);\n } else if ((contentType = headers.getContentType()) !== false) {\n const [type, ...tokens] = contentType ? contentType.split(\";\").map((token) => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || \"multipart/form-data\", ...tokens].join(\"; \"));\n }\n }\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils$1.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin(newConfig.url)) {\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n return newConfig;\n};\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== \"undefined\";\nconst xhrAdapter = isXHRAdapterSupported && function(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let { responseType, onUploadProgress, onDownloadProgress } = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n function done() {\n flushUpload && flushUpload();\n flushDownload && flushDownload();\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n _config.signal && _config.signal.removeEventListener(\"abort\", onCanceled);\n }\n let request = new XMLHttpRequest();\n request.open(_config.method.toUpperCase(), _config.url, true);\n request.timeout = _config.timeout;\n function onloadend() {\n if (!request) {\n return;\n }\n const responseHeaders = AxiosHeaders.from(\n \"getAllResponseHeaders\" in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === \"text\" || responseType === \"json\" ? request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n request = null;\n }\n if (\"onloadend\" in request) {\n request.onloadend = onloadend;\n } else {\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf(\"file:\") === 0)) {\n return;\n }\n setTimeout(onloadend);\n };\n }\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n reject(new AxiosError(\"Request aborted\", AxiosError.ECONNABORTED, config, request));\n request = null;\n };\n request.onerror = function handleError() {\n reject(new AxiosError(\"Network Error\", AxiosError.ERR_NETWORK, config, request));\n request = null;\n };\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? \"timeout of \" + _config.timeout + \"ms exceeded\" : \"timeout exceeded\";\n const transitional2 = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional2.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request\n ));\n request = null;\n };\n requestData === void 0 && requestHeaders.setContentType(null);\n if (\"setRequestHeader\" in request) {\n utils$1.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n if (!utils$1.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n if (responseType && responseType !== \"json\") {\n request.responseType = _config.responseType;\n }\n if (onDownloadProgress) {\n [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true);\n request.addEventListener(\"progress\", downloadThrottled);\n }\n if (onUploadProgress && request.upload) {\n [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress);\n request.upload.addEventListener(\"progress\", uploadThrottled);\n request.upload.addEventListener(\"loadend\", flushUpload);\n }\n if (_config.cancelToken || _config.signal) {\n onCanceled = (cancel) => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener(\"abort\", onCanceled);\n }\n }\n const protocol = parseProtocol(_config.url);\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError(\"Unsupported protocol \" + protocol + \":\", AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n request.send(requestData || null);\n });\n};\nconst composeSignals = (signals, timeout) => {\n const { length } = signals = signals ? signals.filter(Boolean) : [];\n if (timeout || length) {\n let controller = new AbortController();\n let aborted;\n const onabort = function(reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n };\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT));\n }, timeout);\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach((signal2) => {\n signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener(\"abort\", onabort);\n });\n signals = null;\n }\n };\n signals.forEach((signal2) => signal2.addEventListener(\"abort\", onabort));\n const { signal } = controller;\n signal.unsubscribe = () => utils$1.asap(unsubscribe);\n return signal;\n }\n};\nconst streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n if (len < chunkSize) {\n yield chunk;\n return;\n }\n let pos = 0;\n let end;\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n};\nconst readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n};\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n const reader = stream.getReader();\n try {\n for (; ; ) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n};\nconst trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n };\n return new ReadableStream({\n async pull(controller) {\n try {\n const { done: done2, value } = await iterator.next();\n if (done2) {\n _onFinish();\n controller.close();\n return;\n }\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n });\n};\nconst isFetchSupported = typeof fetch === \"function\" && typeof Request === \"function\" && typeof Response === \"function\";\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === \"function\";\nconst encodeText = isFetchSupported && (typeof TextEncoder === \"function\" ? /* @__PURE__ */ ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer()));\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false;\n }\n};\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: \"POST\",\n get duplex() {\n duplexAccessed = true;\n return \"half\";\n }\n }).headers.has(\"Content-Type\");\n return duplexAccessed && !hasContentType;\n});\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\nconst supportsResponseStream = isReadableStreamSupported && test(() => utils$1.isReadableStream(new Response(\"\").body));\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\nisFetchSupported && ((res) => {\n [\"text\", \"arrayBuffer\", \"blob\", \"formData\", \"stream\"].forEach((type) => {\n !resolvers[type] && (resolvers[type] = utils$1.isFunction(res[type]) ? (res2) => res2[type]() : (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n });\n });\n})(new Response());\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n if (utils$1.isBlob(body)) {\n return body.size;\n }\n if (utils$1.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: \"POST\",\n body\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n if (utils$1.isArrayBufferView(body) || utils$1.isArrayBuffer(body)) {\n return body.byteLength;\n }\n if (utils$1.isURLSearchParams(body)) {\n body = body + \"\";\n }\n if (utils$1.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n};\nconst resolveBodyLength = async (headers, body) => {\n const length = utils$1.toFiniteNumber(headers.getContentLength());\n return length == null ? getBodyLength(body) : length;\n};\nconst fetchAdapter = isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = \"same-origin\",\n fetchOptions\n } = resolveConfig(config);\n responseType = responseType ? (responseType + \"\").toLowerCase() : \"text\";\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n let request;\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n let requestContentLength;\n try {\n if (onUploadProgress && supportsRequestStream && method !== \"get\" && method !== \"head\" && (requestContentLength = await resolveBodyLength(headers, data)) !== 0) {\n let _request = new Request(url, {\n method: \"POST\",\n body: data,\n duplex: \"half\"\n });\n let contentTypeHeader;\n if (utils$1.isFormData(data) && (contentTypeHeader = _request.headers.get(\"content-type\"))) {\n headers.setContentType(contentTypeHeader);\n }\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n if (!utils$1.isString(withCredentials)) {\n withCredentials = withCredentials ? \"include\" : \"omit\";\n }\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : void 0\n });\n let response = await fetch(request);\n const isStreamResponse = supportsResponseStream && (responseType === \"stream\" || responseType === \"response\");\n if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) {\n const options = {};\n [\"status\", \"statusText\", \"headers\"].forEach((prop) => {\n options[prop] = response[prop];\n });\n const responseContentLength = utils$1.toFiniteNumber(response.headers.get(\"content-length\"));\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n responseType = responseType || \"text\";\n let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || \"text\"](response, config);\n !isStreamResponse && unsubscribe && unsubscribe();\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n });\n });\n } catch (err) {\n unsubscribe && unsubscribe();\n if (err && err.name === \"TypeError\" && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError(\"Network Error\", AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n );\n }\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n};\nutils$1.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, \"name\", { value });\n } catch (e) {\n }\n Object.defineProperty(fn, \"adapterName\", { value });\n }\n});\nconst renderReason = (reason) => `- ${reason}`;\nconst isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false;\nconst adapters = {\n getAdapter: (adapters2) => {\n adapters2 = utils$1.isArray(adapters2) ? adapters2 : [adapters2];\n const { length } = adapters2;\n let nameOrAdapter;\n let adapter;\n const rejectedReasons = {};\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters2[i];\n let id;\n adapter = nameOrAdapter;\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n if (adapter === void 0) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n if (adapter) {\n break;\n }\n rejectedReasons[id || \"#\" + i] = adapter;\n }\n if (!adapter) {\n const reasons = Object.entries(rejectedReasons).map(\n ([id, state]) => `adapter ${id} ` + (state === false ? \"is not supported by the environment\" : \"is not available in the build\")\n );\n let s = length ? reasons.length > 1 ? \"since :\\n\" + reasons.map(renderReason).join(\"\\n\") : \" \" + renderReason(reasons[0]) : \"as no adapter specified\";\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n \"ERR_NOT_SUPPORT\"\n );\n }\n return adapter;\n },\n adapters: knownAdapters\n};\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\nfunction dispatchRequest(config) {\n throwIfCancellationRequested(config);\n config.headers = AxiosHeaders.from(config.headers);\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n if ([\"post\", \"put\", \"patch\"].indexOf(config.method) !== -1) {\n config.headers.setContentType(\"application/x-www-form-urlencoded\", false);\n }\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n response.headers = AxiosHeaders.from(response.headers);\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n return Promise.reject(reason);\n });\n}\nconst VERSION = \"1.8.4\";\nconst validators$1 = {};\n[\"object\", \"boolean\", \"number\", \"function\", \"string\", \"symbol\"].forEach((type, i) => {\n validators$1[type] = function validator2(thing) {\n return typeof thing === type || \"a\" + (i < 1 ? \"n \" : \" \") + type;\n };\n});\nconst deprecatedWarnings = {};\nvalidators$1.transitional = function transitional(validator2, version, message) {\n function formatMessage(opt, desc) {\n return \"[Axios v\" + VERSION + \"] Transitional option '\" + opt + \"'\" + desc + (message ? \". \" + message : \"\");\n }\n return (value, opt, opts) => {\n if (validator2 === false) {\n throw new AxiosError(\n formatMessage(opt, \" has been removed\" + (version ? \" in \" + version : \"\")),\n AxiosError.ERR_DEPRECATED\n );\n }\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n console.warn(\n formatMessage(\n opt,\n \" has been deprecated since v\" + version + \" and will be removed in the near future\"\n )\n );\n }\n return validator2 ? validator2(value, opt, opts) : true;\n };\n};\nvalidators$1.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n };\n};\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== \"object\") {\n throw new AxiosError(\"options must be an object\", AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator2 = schema[opt];\n if (validator2) {\n const value = options[opt];\n const result = value === void 0 || validator2(value, opt, options);\n if (result !== true) {\n throw new AxiosError(\"option \" + opt + \" must be \" + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError(\"Unknown option \" + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\nconst validator = {\n assertOptions,\n validators: validators$1\n};\nconst validators = validator.validators;\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error();\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, \"\") : \"\";\n try {\n if (!err.stack) {\n err.stack = stack;\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, \"\"))) {\n err.stack += \"\\n\" + stack;\n }\n } catch (e) {\n }\n }\n throw err;\n }\n }\n _request(configOrUrl, config) {\n if (typeof configOrUrl === \"string\") {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n config = mergeConfig(this.defaults, config);\n const { transitional: transitional2, paramsSerializer, headers } = config;\n if (transitional2 !== void 0) {\n validator.assertOptions(transitional2, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n if (paramsSerializer != null) {\n if (utils$1.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n };\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n if (config.allowAbsoluteUrls !== void 0) ;\n else if (this.defaults.allowAbsoluteUrls !== void 0) {\n config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;\n } else {\n config.allowAbsoluteUrls = true;\n }\n validator.assertOptions(config, {\n baseUrl: validators.spelling(\"baseURL\"),\n withXsrfToken: validators.spelling(\"withXSRFToken\")\n }, true);\n config.method = (config.method || this.defaults.method || \"get\").toLowerCase();\n let contextHeaders = headers && utils$1.merge(\n headers.common,\n headers[config.method]\n );\n headers && utils$1.forEach(\n [\"delete\", \"get\", \"head\", \"post\", \"put\", \"patch\", \"common\"],\n (method) => {\n delete headers[method];\n }\n );\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === \"function\" && interceptor.runWhen(config) === false) {\n return;\n }\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n let promise;\n let i = 0;\n let len;\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), void 0];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n promise = Promise.resolve(config);\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n return promise;\n }\n len = requestInterceptorChain.length;\n let newConfig = config;\n i = 0;\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n i = 0;\n len = responseInterceptorChain.length;\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n return promise;\n }\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\nutils$1.forEach([\"delete\", \"get\", \"head\", \"options\"], function forEachMethodNoData(method) {\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\nutils$1.forEach([\"post\", \"put\", \"patch\"], function forEachMethodWithData(method) {\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n \"Content-Type\": \"multipart/form-data\"\n } : {},\n url,\n data\n }));\n };\n }\n Axios.prototype[method] = generateHTTPMethod();\n Axios.prototype[method + \"Form\"] = generateHTTPMethod(true);\n});\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== \"function\") {\n throw new TypeError(\"executor must be a function.\");\n }\n let resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n const token = this;\n this.promise.then((cancel) => {\n if (!token._listeners) return;\n let i = token._listeners.length;\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n this.promise.then = (onfulfilled) => {\n let _resolve;\n const promise = new Promise((resolve) => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n return promise;\n };\n executor(function cancel(message, config, request) {\n if (token.reason) {\n return;\n }\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n /**\n * Subscribe to the cancel signal\n */\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n /**\n * Unsubscribe from the cancel signal\n */\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n toAbortSignal() {\n const controller = new AbortController();\n const abort = (err) => {\n controller.abort(err);\n };\n this.subscribe(abort);\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n return controller.signal;\n }\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\nfunction spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\nfunction isAxiosError(payload) {\n return utils$1.isObject(payload) && payload.isAxiosError === true;\n}\nconst HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511\n};\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n utils$1.extend(instance, Axios.prototype, context, { allOwnKeys: true });\n utils$1.extend(instance, context, null, { allOwnKeys: true });\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n return instance;\n}\nconst axios = createInstance(defaults);\naxios.Axios = Axios;\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\naxios.AxiosError = AxiosError;\naxios.Cancel = axios.CanceledError;\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = spread;\naxios.isAxiosError = isAxiosError;\naxios.mergeConfig = mergeConfig;\naxios.AxiosHeaders = AxiosHeaders;\naxios.formToJSON = (thing) => formDataToJSON(utils$1.isHTMLForm(thing) ? new FormData(thing) : thing);\naxios.getAdapter = adapters.getAdapter;\naxios.HttpStatusCode = HttpStatusCode;\naxios.default = axios;\nconst _Logger = class _Logger {\n constructor() {\n __publicField(this, \"isProduction\");\n this.isProduction = process$1.env.NODE_ENV === \"production\";\n }\n static getInstance() {\n if (!_Logger.instance) {\n _Logger.instance = new _Logger();\n }\n return _Logger.instance;\n }\n debug(message, ...args) {\n if (!this.isProduction) {\n console.debug(message, ...args);\n }\n }\n info(message, ...args) {\n if (!this.isProduction) {\n console.info(message, ...args);\n }\n }\n warn(message, ...args) {\n console.warn(message, ...args);\n }\n error(message, ...args) {\n console.error(message, ...args);\n }\n};\n__publicField(_Logger, \"instance\");\nlet Logger = _Logger;\nclass ValidationError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ValidationError\";\n }\n}\nclass Auth {\n constructor(config) {\n __publicField(this, \"accountId\");\n __publicField(this, \"privateKey\");\n __publicField(this, \"baseUrl\");\n __publicField(this, \"network\");\n this.accountId = config.accountId;\n this.privateKey = PrivateKey.fromStringED25519(config.privateKey);\n this.network = config.network || \"mainnet\";\n this.baseUrl = config.baseUrl || \"https://kiloscribe.com\";\n }\n async authenticate() {\n var _a, _b, _c;\n const requestSignatureResponse = await axios.get(\n `${this.baseUrl}/api/auth/request-signature`,\n {\n headers: {\n \"x-session\": this.accountId\n }\n }\n );\n if (!((_a = requestSignatureResponse.data) == null ? void 0 : _a.message)) {\n throw new Error(\"Failed to get signature message\");\n }\n const message = requestSignatureResponse.data.message;\n const signature = await this.signMessage(message);\n const authResponse = await axios.post(\n `${this.baseUrl}/api/auth/authenticate`,\n {\n authData: {\n id: this.accountId,\n signature,\n data: message,\n network: this.network\n },\n include: \"apiKey\"\n }\n );\n if (!((_c = (_b = authResponse.data) == null ? void 0 : _b.user) == null ? void 0 : _c.sessionToken)) {\n throw new Error(\"Authentication failed\");\n }\n return {\n apiKey: authResponse.data.apiKey\n };\n }\n async signMessage(message) {\n const messageBytes = new TextEncoder().encode(message);\n const signatureBytes = await this.privateKey.sign(messageBytes);\n return Buffer2.from(signatureBytes).toString(\"hex\");\n }\n}\nclass ClientAuth {\n constructor(config) {\n __publicField(this, \"accountId\");\n __publicField(this, \"signer\");\n __publicField(this, \"baseUrl\");\n __publicField(this, \"network\");\n __publicField(this, \"logger\");\n this.accountId = config.accountId;\n this.signer = config.signer;\n this.network = config.network || \"mainnet\";\n this.baseUrl = config.baseUrl || \"https://kiloscribe.com\";\n this.logger = config.logger;\n }\n async authenticate() {\n var _a, _b, _c;\n const requestSignatureResponse = await axios.get(\n `${this.baseUrl}/api/auth/request-signature`,\n {\n headers: {\n \"x-session\": this.accountId\n }\n }\n );\n if (!((_a = requestSignatureResponse.data) == null ? void 0 : _a.message)) {\n throw new Error(\"Failed to get signature message\");\n }\n const message = requestSignatureResponse.data.message;\n const signature = await this.signMessage(JSON.stringify(message));\n const authResponse = await axios.post(\n `${this.baseUrl}/api/auth/authenticate`,\n {\n authData: {\n id: this.accountId,\n signature,\n data: message,\n network: this.network\n },\n include: \"apiKey\"\n }\n );\n if (!((_c = (_b = authResponse.data) == null ? void 0 : _b.user) == null ? void 0 : _c.sessionToken)) {\n throw new Error(\"Authentication failed\");\n }\n return {\n apiKey: authResponse.data.apiKey\n };\n }\n async signMessage(message) {\n try {\n const messageBytes = new TextEncoder().encode(message);\n this.logger.debug(`signing message`);\n const signatureBytes = await this.signer.sign([messageBytes], {\n encoding: \"utf-8\"\n });\n return Buffer2.from(signatureBytes == null ? void 0 : signatureBytes[0].signature).toString(\"hex\");\n } catch (e) {\n this.logger.error(`Failed to sign message`, e);\n throw new Error(\"Failed to sign message\");\n }\n }\n}\nvar ieee754 = {};\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nvar hasRequiredIeee754;\nfunction requireIeee754() {\n if (hasRequiredIeee754) return ieee754;\n hasRequiredIeee754 = 1;\n ieee754.read = function(buffer2, 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 = buffer2[offset + i];\n i += d;\n e = s & (1 << -nBits) - 1;\n s >>= -nBits;\n nBits += eLen;\n for (; nBits > 0; e = e * 256 + buffer2[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 + buffer2[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 ieee754.write = function(buffer2, 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 value = Math.abs(value);\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 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 for (; mLen >= 8; buffer2[offset + i] = m & 255, i += d, m /= 256, mLen -= 8) {\n }\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer2[offset + i] = e & 255, i += d, e /= 256, eLen -= 8) {\n }\n buffer2[offset + i - d] |= s * 128;\n };\n return ieee754;\n}\nrequireIeee754();\nfunction dv(array) {\n return new DataView(array.buffer, array.byteOffset);\n}\nconst UINT8 = {\n len: 1,\n get(array, offset) {\n return dv(array).getUint8(offset);\n },\n put(array, offset, value) {\n dv(array).setUint8(offset, value);\n return offset + 1;\n }\n};\nconst UINT16_LE = {\n len: 2,\n get(array, offset) {\n return dv(array).getUint16(offset, true);\n },\n put(array, offset, value) {\n dv(array).setUint16(offset, value, true);\n return offset + 2;\n }\n};\nconst UINT16_BE = {\n len: 2,\n get(array, offset) {\n return dv(array).getUint16(offset);\n },\n put(array, offset, value) {\n dv(array).setUint16(offset, value);\n return offset + 2;\n }\n};\nconst UINT32_LE = {\n len: 4,\n get(array, offset) {\n return dv(array).getUint32(offset, true);\n },\n put(array, offset, value) {\n dv(array).setUint32(offset, value, true);\n return offset + 4;\n }\n};\nconst UINT32_BE = {\n len: 4,\n get(array, offset) {\n return dv(array).getUint32(offset);\n },\n put(array, offset, value) {\n dv(array).setUint32(offset, value);\n return offset + 4;\n }\n};\nconst INT32_BE = {\n len: 4,\n get(array, offset) {\n return dv(array).getInt32(offset);\n },\n put(array, offset, value) {\n dv(array).setInt32(offset, value);\n return offset + 4;\n }\n};\nconst UINT64_LE = {\n len: 8,\n get(array, offset) {\n return dv(array).getBigUint64(offset, true);\n },\n put(array, offset, value) {\n dv(array).setBigUint64(offset, value, true);\n return offset + 8;\n }\n};\nclass StringType {\n constructor(len, encoding) {\n this.len = len;\n this.encoding = encoding;\n }\n get(uint8Array, offset) {\n return Buffer$1.from(uint8Array).toString(this.encoding, offset, offset + this.len);\n }\n}\nconst defaultMessages = \"End-Of-Stream\";\nclass EndOfStreamError extends Error {\n constructor() {\n super(defaultMessages);\n }\n}\nclass Deferred {\n constructor() {\n this.resolve = () => null;\n this.reject = () => null;\n this.promise = new Promise((resolve, reject) => {\n this.reject = reject;\n this.resolve = resolve;\n });\n }\n}\nclass AbstractStreamReader {\n constructor() {\n this.maxStreamReadSize = 1 * 1024 * 1024;\n this.endOfStream = false;\n this.peekQueue = [];\n }\n async peek(uint8Array, offset, length) {\n const bytesRead = await this.read(uint8Array, offset, length);\n this.peekQueue.push(uint8Array.subarray(offset, offset + bytesRead));\n return bytesRead;\n }\n async read(buffer2, offset, length) {\n if (length === 0) {\n return 0;\n }\n let bytesRead = this.readFromPeekBuffer(buffer2, offset, length);\n bytesRead += await this.readRemainderFromStream(buffer2, offset + bytesRead, length - bytesRead);\n if (bytesRead === 0) {\n throw new EndOfStreamError();\n }\n return bytesRead;\n }\n /**\n * Read chunk from stream\n * @param buffer - Target Uint8Array (or Buffer) to store data read from stream in\n * @param offset - Offset target\n * @param length - Number of bytes to read\n * @returns Number of bytes read\n */\n readFromPeekBuffer(buffer2, offset, length) {\n let remaining = length;\n let bytesRead = 0;\n while (this.peekQueue.length > 0 && remaining > 0) {\n const peekData = this.peekQueue.pop();\n if (!peekData)\n throw new Error(\"peekData should be defined\");\n const lenCopy = Math.min(peekData.length, remaining);\n buffer2.set(peekData.subarray(0, lenCopy), offset + bytesRead);\n bytesRead += lenCopy;\n remaining -= lenCopy;\n if (lenCopy < peekData.length) {\n this.peekQueue.push(peekData.subarray(lenCopy));\n }\n }\n return bytesRead;\n }\n async readRemainderFromStream(buffer2, offset, initialRemaining) {\n let remaining = initialRemaining;\n let bytesRead = 0;\n while (remaining > 0 && !this.endOfStream) {\n const reqLen = Math.min(remaining, this.maxStreamReadSize);\n const chunkLen = await this.readFromStream(buffer2, offset + bytesRead, reqLen);\n if (chunkLen === 0)\n break;\n bytesRead += chunkLen;\n remaining -= chunkLen;\n }\n return bytesRead;\n }\n}\nclass StreamReader extends AbstractStreamReader {\n constructor(s) {\n super();\n this.s = s;\n this.deferred = null;\n if (!s.read || !s.once) {\n throw new Error(\"Expected an instance of stream.Readable\");\n }\n this.s.once(\"end\", () => this.reject(new EndOfStreamError()));\n this.s.once(\"error\", (err) => this.reject(err));\n this.s.once(\"close\", () => this.reject(new Error(\"Stream closed\")));\n }\n /**\n * Read chunk from stream\n * @param buffer Target Uint8Array (or Buffer) to store data read from stream in\n * @param offset Offset target\n * @param length Number of bytes to read\n * @returns Number of bytes read\n */\n async readFromStream(buffer2, offset, length) {\n if (this.endOfStream) {\n return 0;\n }\n const readBuffer = this.s.read(length);\n if (readBuffer) {\n buffer2.set(readBuffer, offset);\n return readBuffer.length;\n }\n const request = {\n buffer: buffer2,\n offset,\n length,\n deferred: new Deferred()\n };\n this.deferred = request.deferred;\n this.s.once(\"readable\", () => {\n this.readDeferred(request);\n });\n return request.deferred.promise;\n }\n /**\n * Process deferred read request\n * @param request Deferred read request\n */\n readDeferred(request) {\n const readBuffer = this.s.read(request.length);\n if (readBuffer) {\n request.buffer.set(readBuffer, request.offset);\n request.deferred.resolve(readBuffer.length);\n this.deferred = null;\n } else {\n this.s.once(\"readable\", () => {\n this.readDeferred(request);\n });\n }\n }\n reject(err) {\n this.endOfStream = true;\n if (this.deferred) {\n this.deferred.reject(err);\n this.deferred = null;\n }\n }\n async abort() {\n this.reject(new Error(\"abort\"));\n }\n async close() {\n return this.abort();\n }\n}\nclass AbstractTokenizer {\n constructor(fileInfo) {\n this.position = 0;\n this.numBuffer = new Uint8Array(8);\n this.fileInfo = fileInfo ? fileInfo : {};\n }\n /**\n * Read a token from the tokenizer-stream\n * @param token - The token to read\n * @param position - If provided, the desired position in the tokenizer-stream\n * @returns Promise with token data\n */\n async readToken(token, position = this.position) {\n const uint8Array = new Uint8Array(token.len);\n const len = await this.readBuffer(uint8Array, { position });\n if (len < token.len)\n throw new EndOfStreamError();\n return token.get(uint8Array, 0);\n }\n /**\n * Peek a token from the tokenizer-stream.\n * @param token - Token to peek from the tokenizer-stream.\n * @param position - Offset where to begin reading within the file. If position is null, data will be read from the current file position.\n * @returns Promise with token data\n */\n async peekToken(token, position = this.position) {\n const uint8Array = new Uint8Array(token.len);\n const len = await this.peekBuffer(uint8Array, { position });\n if (len < token.len)\n throw new EndOfStreamError();\n return token.get(uint8Array, 0);\n }\n /**\n * Read a numeric token from the stream\n * @param token - Numeric token\n * @returns Promise with number\n */\n async readNumber(token) {\n const len = await this.readBuffer(this.numBuffer, { length: token.len });\n if (len < token.len)\n throw new EndOfStreamError();\n return token.get(this.numBuffer, 0);\n }\n /**\n * Read a numeric token from the stream\n * @param token - Numeric token\n * @returns Promise with number\n */\n async peekNumber(token) {\n const len = await this.peekBuffer(this.numBuffer, { length: token.len });\n if (len < token.len)\n throw new EndOfStreamError();\n return token.get(this.numBuffer, 0);\n }\n /**\n * Ignore number of bytes, advances the pointer in under tokenizer-stream.\n * @param length - Number of bytes to ignore\n * @return resolves the number of bytes ignored, equals length if this available, otherwise the number of bytes available\n */\n async ignore(length) {\n if (this.fileInfo.size !== void 0) {\n const bytesLeft = this.fileInfo.size - this.position;\n if (length > bytesLeft) {\n this.position += bytesLeft;\n return bytesLeft;\n }\n }\n this.position += length;\n return length;\n }\n async close() {\n }\n normalizeOptions(uint8Array, options) {\n if (options && options.position !== void 0 && options.position < this.position) {\n throw new Error(\"`options.position` must be equal or greater than `tokenizer.position`\");\n }\n if (options) {\n return {\n mayBeLess: options.mayBeLess === true,\n offset: options.offset ? options.offset : 0,\n length: options.length ? options.length : uint8Array.length - (options.offset ? options.offset : 0),\n position: options.position ? options.position : this.position\n };\n }\n return {\n mayBeLess: false,\n offset: 0,\n length: uint8Array.length,\n position: this.position\n };\n }\n}\nconst maxBufferSize = 256e3;\nclass ReadStreamTokenizer extends AbstractTokenizer {\n constructor(streamReader, fileInfo) {\n super(fileInfo);\n this.streamReader = streamReader;\n }\n /**\n * Get file information, an HTTP-client may implement this doing a HEAD request\n * @return Promise with file information\n */\n async getFileInfo() {\n return this.fileInfo;\n }\n /**\n * Read buffer from tokenizer\n * @param uint8Array - Target Uint8Array to fill with data read from the tokenizer-stream\n * @param options - Read behaviour options\n * @returns Promise with number of bytes read\n */\n async readBuffer(uint8Array, options) {\n const normOptions = this.normalizeOptions(uint8Array, options);\n const skipBytes = normOptions.position - this.position;\n if (skipBytes > 0) {\n await this.ignore(skipBytes);\n return this.readBuffer(uint8Array, options);\n } else if (skipBytes < 0) {\n throw new Error(\"`options.position` must be equal or greater than `tokenizer.position`\");\n }\n if (normOptions.length === 0) {\n return 0;\n }\n const bytesRead = await this.streamReader.read(uint8Array, normOptions.offset, normOptions.length);\n this.position += bytesRead;\n if ((!options || !options.mayBeLess) && bytesRead < normOptions.length) {\n throw new EndOfStreamError();\n }\n return bytesRead;\n }\n /**\n * Peek (read ahead) buffer from tokenizer\n * @param uint8Array - Uint8Array (or Buffer) to write data to\n * @param options - Read behaviour options\n * @returns Promise with number of bytes peeked\n */\n async peekBuffer(uint8Array, options) {\n const normOptions = this.normalizeOptions(uint8Array, options);\n let bytesRead = 0;\n if (normOptions.position) {\n const skipBytes = normOptions.position - this.position;\n if (skipBytes > 0) {\n const skipBuffer = new Uint8Array(normOptions.length + skipBytes);\n bytesRead = await this.peekBuffer(skipBuffer, { mayBeLess: normOptions.mayBeLess });\n uint8Array.set(skipBuffer.subarray(skipBytes), normOptions.offset);\n return bytesRead - skipBytes;\n } else if (skipBytes < 0) {\n throw new Error(\"Cannot peek from a negative offset in a stream\");\n }\n }\n if (normOptions.length > 0) {\n try {\n bytesRead = await this.streamReader.peek(uint8Array, normOptions.offset, normOptions.length);\n } catch (err) {\n if (options && options.mayBeLess && err instanceof EndOfStreamError) {\n return 0;\n }\n throw err;\n }\n if (!normOptions.mayBeLess && bytesRead < normOptions.length) {\n throw new EndOfStreamError();\n }\n }\n return bytesRead;\n }\n async ignore(length) {\n const bufSize = Math.min(maxBufferSize, length);\n const buf = new Uint8Array(bufSize);\n let totBytesRead = 0;\n while (totBytesRead < length) {\n const remaining = length - totBytesRead;\n const bytesRead = await this.readBuffer(buf, { length: Math.min(bufSize, remaining) });\n if (bytesRead < 0) {\n return bytesRead;\n }\n totBytesRead += bytesRead;\n }\n return totBytesRead;\n }\n}\nclass BufferTokenizer extends AbstractTokenizer {\n /**\n * Construct BufferTokenizer\n * @param uint8Array - Uint8Array to tokenize\n * @param fileInfo - Pass additional file information to the tokenizer\n */\n constructor(uint8Array, fileInfo) {\n super(fileInfo);\n this.uint8Array = uint8Array;\n this.fileInfo.size = this.fileInfo.size ? this.fileInfo.size : uint8Array.length;\n }\n /**\n * Read buffer from tokenizer\n * @param uint8Array - Uint8Array to tokenize\n * @param options - Read behaviour options\n * @returns {Promise<number>}\n */\n async readBuffer(uint8Array, options) {\n if (options && options.position) {\n if (options.position < this.position) {\n throw new Error(\"`options.position` must be equal or greater than `tokenizer.position`\");\n }\n this.position = options.position;\n }\n const bytesRead = await this.peekBuffer(uint8Array, options);\n this.position += bytesRead;\n return bytesRead;\n }\n /**\n * Peek (read ahead) buffer from tokenizer\n * @param uint8Array\n * @param options - Read behaviour options\n * @returns {Promise<number>}\n */\n async peekBuffer(uint8Array, options) {\n const normOptions = this.normalizeOptions(uint8Array, options);\n const bytes2read = Math.min(this.uint8Array.length - normOptions.position, normOptions.length);\n if (!normOptions.mayBeLess && bytes2read < normOptions.length) {\n throw new EndOfStreamError();\n } else {\n uint8Array.set(this.uint8Array.subarray(normOptions.position, normOptions.position + bytes2read), normOptions.offset);\n return bytes2read;\n }\n }\n async close() {\n }\n}\nfunction fromStream(stream, fileInfo) {\n fileInfo = fileInfo ? fileInfo : {};\n return new ReadStreamTokenizer(new StreamReader(stream), fileInfo);\n}\nfunction fromBuffer(uint8Array, fileInfo) {\n return new BufferTokenizer(uint8Array, fileInfo);\n}\nfunction stringToBytes(string) {\n return [...string].map((character) => character.charCodeAt(0));\n}\nfunction tarHeaderChecksumMatches(buffer2, offset = 0) {\n const readSum = Number.parseInt(buffer2.toString(\"utf8\", 148, 154).replace(/\\0.*$/, \"\").trim(), 8);\n if (Number.isNaN(readSum)) {\n return false;\n }\n let sum = 8 * 32;\n for (let index = offset; index < offset + 148; index++) {\n sum += buffer2[index];\n }\n for (let index = offset + 156; index < offset + 512; index++) {\n sum += buffer2[index];\n }\n return readSum === sum;\n}\nconst uint32SyncSafeToken = {\n get: (buffer2, offset) => buffer2[offset + 3] & 127 | buffer2[offset + 2] << 7 | buffer2[offset + 1] << 14 | buffer2[offset] << 21,\n len: 4\n};\nconst extensions = [\n \"jpg\",\n \"png\",\n \"apng\",\n \"gif\",\n \"webp\",\n \"flif\",\n \"xcf\",\n \"cr2\",\n \"cr3\",\n \"orf\",\n \"arw\",\n \"dng\",\n \"nef\",\n \"rw2\",\n \"raf\",\n \"tif\",\n \"bmp\",\n \"icns\",\n \"jxr\",\n \"psd\",\n \"indd\",\n \"zip\",\n \"tar\",\n \"rar\",\n \"gz\",\n \"bz2\",\n \"7z\",\n \"dmg\",\n \"mp4\",\n \"mid\",\n \"mkv\",\n \"webm\",\n \"mov\",\n \"avi\",\n \"mpg\",\n \"mp2\",\n \"mp3\",\n \"m4a\",\n \"oga\",\n \"ogg\",\n \"ogv\",\n \"opus\",\n \"flac\",\n \"wav\",\n \"spx\",\n \"amr\",\n \"pdf\",\n \"epub\",\n \"elf\",\n \"macho\",\n \"exe\",\n \"swf\",\n \"rtf\",\n \"wasm\",\n \"woff\",\n \"woff2\",\n \"eot\",\n \"ttf\",\n \"otf\",\n \"ico\",\n \"flv\",\n \"ps\",\n \"xz\",\n \"sqlite\",\n \"nes\",\n \"crx\",\n \"xpi\",\n \"cab\",\n \"deb\",\n \"ar\",\n \"rpm\",\n \"Z\",\n \"lz\",\n \"cfb\",\n \"mxf\",\n \"mts\",\n \"blend\",\n \"bpg\",\n \"docx\",\n \"pptx\",\n \"xlsx\",\n \"3gp\",\n \"3g2\",\n \"j2c\",\n \"jp2\",\n \"jpm\",\n \"jpx\",\n \"mj2\",\n \"aif\",\n \"qcp\",\n \"odt\",\n \"ods\",\n \"odp\",\n \"xml\",\n \"mobi\",\n \"heic\",\n \"cur\",\n \"ktx\",\n \"ape\",\n \"wv\",\n \"dcm\",\n \"ics\",\n \"glb\",\n \"pcap\",\n \"dsf\",\n \"lnk\",\n \"alias\",\n \"voc\",\n \"ac3\",\n \"m4v\",\n \"m4p\",\n \"m4b\",\n \"f4v\",\n \"f4p\",\n \"f4b\",\n \"f4a\",\n \"mie\",\n \"asf\",\n \"ogm\",\n \"ogx\",\n \"mpc\",\n \"arrow\",\n \"shp\",\n \"aac\",\n \"mp1\",\n \"it\",\n \"s3m\",\n \"xm\",\n \"ai\",\n \"skp\",\n \"avif\",\n \"eps\",\n \"lzh\",\n \"pgp\",\n \"asar\",\n \"stl\",\n \"chm\",\n \"3mf\",\n \"zst\",\n \"jxl\",\n \"vcf\",\n \"jls\",\n \"pst\",\n \"dwg\",\n \"parquet\",\n \"class\",\n \"arj\",\n \"cpio\",\n \"ace\",\n \"avro\",\n \"icc\",\n \"fbx\"\n];\nconst mimeTypes = [\n \"image/jpeg\",\n \"image/png\",\n \"image/gif\",\n \"image/webp\",\n \"image/flif\",\n \"image/x-xcf\",\n \"image/x-canon-cr2\",\n \"image/x-canon-cr3\",\n \"image/tiff\",\n \"image/bmp\",\n \"image/vnd.ms-photo\",\n \"image/vnd.adobe.photoshop\",\n \"application/x-indesign\",\n \"application/epub+zip\",\n \"application/x-xpinstall\",\n \"application/vnd.oasis.opendocument.text\",\n \"application/vnd.oasis.opendocument.spreadsheet\",\n \"application/vnd.oasis.opendocument.presentation\",\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\n \"application/zip\",\n \"application/x-tar\",\n \"application/x-rar-compressed\",\n \"application/gzip\",\n \"application/x-bzip2\",\n \"application/x-7z-compressed\",\n \"application/x-apple-diskimage\",\n \"application/x-apache-arrow\",\n \"video/mp4\",\n \"audio/midi\",\n \"video/x-matroska\",\n \"video/webm\",\n \"video/quicktime\",\n \"video/vnd.avi\",\n \"audio/vnd.wave\",\n \"audio/qcelp\",\n \"audio/x-ms-asf\",\n \"video/x-ms-asf\",\n \"application/vnd.ms-asf\",\n \"video/mpeg\",\n \"video/3gpp\",\n \"audio/mpeg\",\n \"audio/mp4\",\n // RFC 4337\n \"audio/opus\",\n \"video/ogg\",\n \"audio/ogg\",\n \"application/ogg\",\n \"audio/x-flac\",\n \"audio/ape\",\n \"audio/wavpack\",\n \"audio/amr\",\n \"application/pdf\",\n \"application/x-elf\",\n \"application/x-mach-binary\",\n \"application/x-msdownload\",\n \"application/x-shockwave-flash\",\n \"application/rtf\",\n \"application/wasm\",\n \"font/woff\",\n \"font/woff2\",\n \"application/vnd.ms-fontobject\",\n \"font/ttf\",\n \"font/otf\",\n \"image/x-icon\",\n \"video/x-flv\",\n \"application/postscript\",\n \"application/eps\",\n \"application/x-xz\",\n \"application/x-sqlite3\",\n \"application/x-nintendo-nes-rom\",\n \"application/x-google-chrome-extension\",\n \"application/vnd.ms-cab-compressed\",\n \"application/x-deb\",\n \"application/x-unix-archive\",\n \"application/x-rpm\",\n \"application/x-compress\",\n \"application/x-lzip\",\n \"application/x-cfb\",\n \"application/x-mie\",\n \"application/mxf\",\n \"video/mp2t\",\n \"application/x-blender\",\n \"image/bpg\",\n \"image/j2c\",\n \"image/jp2\",\n \"image/jpx\",\n \"image/jpm\",\n \"image/mj2\",\n \"audio/aiff\",\n \"application/xml\",\n \"application/x-mobipocket-ebook\",\n \"image/heif\",\n \"image/heif-sequence\",\n \"image/heic\",\n \"image/heic-sequence\",\n \"image/icns\",\n \"image/ktx\",\n \"application/dicom\",\n \"audio/x-musepack\",\n \"text/calendar\",\n \"text/vcard\",\n \"model/gltf-binary\",\n \"application/vnd.tcpdump.pcap\",\n \"audio/x-dsf\",\n // Non-standard\n \"application/x.ms.shortcut\",\n // Invented by us\n \"application/x.apple.alias\",\n // Invented by us\n \"audio/x-voc\",\n \"audio/vnd.dolby.dd-raw\",\n \"audio/x-m4a\",\n \"image/apng\",\n \"image/x-olympus-orf\",\n \"image/x-sony-arw\",\n \"image/x-adobe-dng\",\n \"image/x-nikon-nef\",\n \"image/x-panasonic-rw2\",\n \"image/x-fujifilm-raf\",\n \"video/x-m4v\",\n \"video/3gpp2\",\n \"application/x-esri-shape\",\n \"audio/aac\",\n \"audio/x-it\",\n \"audio/x-s3m\",\n \"audio/x-xm\",\n \"video/MP1S\",\n \"video/MP2P\",\n \"application/vnd.sketchup.skp\",\n \"image/avif\",\n \"application/x-lzh-compressed\",\n \"application/pgp-encrypted\",\n \"application/x-asar\",\n \"model/stl\",\n \"application/vnd.ms-htmlhelp\",\n \"model/3mf\",\n \"image/jxl\",\n \"application/zstd\",\n \"image/jls\",\n \"application/vnd.ms-outlook\",\n \"image/vnd.dwg\",\n \"application/x-parquet\",\n \"application/java-vm\",\n \"application/x-arj\",\n \"application/x-cpio\",\n \"application/x-ace-compressed\",\n \"application/avro\",\n \"application/vnd.iccprofile\",\n \"application/x.autodesk.fbx\"\n // Invented by us\n];\nconst minimumBytes = 4100;\nasync function fileTypeFromBuffer(input) {\n return new FileTypeParser().fromBuffer(input);\n}\nfunction _check(buffer2, headers, options) {\n options = {\n offset: 0,\n ...options\n };\n for (const [index, header] of headers.entries()) {\n if (options.mask) {\n if (header !== (options.mask[index] & buffer2[index + options.offset])) {\n return false;\n }\n } else if (header !== buffer2[index + options.offset]) {\n return false;\n }\n }\n return true;\n}\nclass FileTypeParser {\n constructor(options) {\n this.detectors = options == null ? void 0 : options.customDetectors;\n this.fromTokenizer = this.fromTokenizer.bind(this);\n this.fromBuffer = this.fromBuffer.bind(this);\n this.parse = this.parse.bind(this);\n }\n async fromTokenizer(tokenizer) {\n const initialPosition = tokenizer.position;\n for (const detector of this.detectors || []) {\n const fileType = await detector(tokenizer);\n if (fileType) {\n return fileType;\n }\n if (initialPosition !== tokenizer.position) {\n return void 0;\n }\n }\n return this.parse(tokenizer);\n }\n async fromBuffer(input) {\n if (!(input instanceof Uint8Array || input instanceof ArrayBuffer)) {\n throw new TypeError(`Expected the \\`input\\` argument to be of type \\`Uint8Array\\` or \\`Buffer\\` or \\`ArrayBuffer\\`, got \\`${typeof input}\\``);\n }\n const buffer2 = input instanceof Uint8Array ? input : new Uint8Array(input);\n if (!((buffer2 == null ? void 0 : buffer2.length) > 1)) {\n return;\n }\n return this.fromTokenizer(fromBuffer(buffer2));\n }\n async fromBlob(blob) {\n const buffer2 = await blob.arrayBuffer();\n return this.fromBuffer(new Uint8Array(buffer2));\n }\n async fromStream(stream) {\n const tokenizer = await fromStream(stream);\n try {\n return await this.fromTokenizer(tokenizer);\n } finally {\n await tokenizer.close();\n }\n }\n async toDetectionStream(readableStream, options = {}) {\n const { default: stream } = await import(\"./index-DXKaNRfg.js\").then((n) => n.i);\n const { sampleSize = minimumBytes } = options;\n return new Promise((resolve, reject) => {\n readableStream.on(\"error\", reject);\n readableStream.once(\"readable\", () => {\n (async () => {\n try {\n const pass = new stream.PassThrough();\n const outputStream = stream.pipeline ? stream.pipeline(readableStream, pass, () => {\n }) : readableStream.pipe(pass);\n const chunk = readableStream.read(sampleSize) ?? readableStream.read() ?? Buffer$1.alloc(0);\n try {\n pass.fileType = await this.fromBuffer(chunk);\n } catch (error) {\n if (error instanceof EndOfStreamError) {\n pass.fileType = void 0;\n } else {\n reject(error);\n }\n }\n resolve(outputStream);\n } catch (error) {\n reject(error);\n }\n })();\n });\n });\n }\n check(header, options) {\n return _check(this.buffer, header, options);\n }\n checkString(header, options) {\n return this.check(stringToBytes(header), options);\n }\n async parse(tokenizer) {\n this.buffer = Buffer$1.alloc(minimumBytes);\n if (tokenizer.fileInfo.size === void 0) {\n tokenizer.fileInfo.size = Number.MAX_SAFE_INTEGER;\n }\n this.tokenizer = tokenizer;\n await tokenizer.peekBuffer(this.buffer, { length: 12, mayBeLess: true });\n if (this.check([66, 77])) {\n return {\n ext: \"bmp\",\n mime: \"image/bmp\"\n };\n }\n if (this.check([11, 119])) {\n return {\n ext: \"ac3\",\n mime: \"audio/vnd.dolby.dd-raw\"\n };\n }\n if (this.check([120, 1])) {\n return {\n ext: \"dmg\",\n mime: \"application/x-apple-diskimage\"\n };\n }\n if (this.check([77, 90])) {\n return {\n ext: \"exe\",\n mime: \"application/x-msdownload\"\n };\n }\n if (this.check([37, 33])) {\n await tokenizer.peekBuffer(this.buffer, { length: 24, mayBeLess: true });\n if (this.checkString(\"PS-Adobe-\", { offset: 2 }) && this.checkString(\" EPSF-\", { offset: 14 })) {\n return {\n ext: \"eps\",\n mime: \"application/eps\"\n };\n }\n return {\n ext: \"ps\",\n mime: \"application/postscript\"\n };\n }\n if (this.check([31, 160]) || this.check([31, 157])) {\n return {\n ext: \"Z\",\n mime: \"application/x-compress\"\n };\n }\n if (this.check([199, 113])) {\n return {\n ext: \"cpio\",\n mime: \"application/x-cpio\"\n };\n }\n if (this.check([96, 234])) {\n return {\n ext: \"arj\",\n mime: \"application/x-arj\"\n };\n }\n if (this.check([239, 187, 191])) {\n this.tokenizer.ignore(3);\n return this.parse(tokenizer);\n }\n if (this.check([71, 73, 70])) {\n return {\n ext: \"gif\",\n mime: \"image/gif\"\n };\n }\n if (this.check([73, 73, 188])) {\n return {\n ext: \"jxr\",\n mime: \"image/vnd.ms-photo\"\n };\n }\n if (this.check([31, 139, 8])) {\n return {\n ext: \"gz\",\n mime: \"application/gzip\"\n };\n }\n if (this.check([66, 90, 104])) {\n return {\n ext: \"bz2\",\n mime: \"application/x-bzip2\"\n };\n }\n if (this.checkString(\"ID3\")) {\n await tokenizer.ignore(6);\n const id3HeaderLength = await tokenizer.readToken(uint32SyncSafeToken);\n if (tokenizer.position + id3HeaderLength > tokenizer.fileInfo.size) {\n return {\n ext: \"mp3\",\n mime: \"audio/mpeg\"\n };\n }\n await tokenizer.ignore(id3HeaderLength);\n return this.fromTokenizer(tokenizer);\n }\n if (this.checkString(\"MP+\")) {\n return {\n ext: \"mpc\",\n mime: \"audio/x-musepack\"\n };\n }\n if ((this.buffer[0] === 67 || this.buffer[0] === 70) && this.check([87, 83], { offset: 1 })) {\n return {\n ext: \"swf\",\n mime: \"application/x-shockwave-flash\"\n };\n }\n if (this.check([255, 216, 255])) {\n if (this.check([247], { offset: 3 })) {\n return {\n ext: \"jls\",\n mime: \"image/jls\"\n };\n }\n return {\n ext: \"jpg\",\n mime: \"image/jpeg\"\n };\n }\n if (this.check([79, 98, 106, 1])) {\n return {\n ext: \"avro\",\n mime: \"application/avro\"\n };\n }\n if (this.checkString(\"FLIF\")) {\n return {\n ext: \"flif\",\n mime: \"image/flif\"\n };\n }\n if (this.checkString(\"8BPS\")) {\n return {\n ext: \"psd\",\n mime: \"image/vnd.adobe.photoshop\"\n };\n }\n if (this.checkString(\"WEBP\", { offset: 8 })) {\n return {\n ext: \"webp\",\n mime: \"image/webp\"\n };\n }\n if (this.checkString(\"MPCK\")) {\n return {\n ext: \"mpc\",\n mime: \"audio/x-musepack\"\n };\n }\n if (this.checkString(\"FORM\")) {\n return {\n ext: \"aif\",\n mime: \"audio/aiff\"\n };\n }\n if (this.checkString(\"icns\", { offset: 0 })) {\n return {\n ext: \"icns\",\n mime: \"image/icns\"\n };\n }\n if (this.check([80, 75, 3, 4])) {\n try {\n while (tokenizer.position + 30 < tokenizer.fileInfo.size) {\n await tokenizer.readBuffer(this.buffer, { length: 30 });\n const zipHeader = {\n compressedSize: this.buffer.readUInt32LE(18),\n uncompressedSize: this.buffer.readUInt32LE(22),\n filenameLength: this.buffer.readUInt16LE(26),\n extraFieldLength: this.buffer.readUInt16LE(28)\n };\n zipHeader.filename = await tokenizer.readToken(new StringType(zipHeader.filenameLength, \"utf-8\"));\n await tokenizer.ignore(zipHeader.extraFieldLength);\n if (zipHeader.filename === \"META-INF/mozilla.rsa\") {\n return {\n ext: \"xpi\",\n mime: \"application/x-xpinstall\"\n };\n }\n if (zipHeader.filename.endsWith(\".rels\") || zipHeader.filename.endsWith(\".xml\")) {\n const type = zipHeader.filename.split(\"/\")[0];\n switch (type) {\n case \"_rels\":\n break;\n case \"word\":\n return {\n ext: \"docx\",\n mime: \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\"\n };\n case \"ppt\":\n return {\n ext: \"pptx\",\n mime: \"application/vnd.openxmlformats-officedocument.presentationml.presentation\"\n };\n case \"xl\":\n return {\n ext: \"xlsx\",\n mime: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"\n };\n default:\n break;\n }\n }\n if (zipHeader.filename.startsWith(\"xl/\")) {\n return {\n ext: \"xlsx\",\n mime: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"\n };\n }\n if (zipHeader.filename.startsWith(\"3D/\") && zipHeader.filename.endsWith(\".model\")) {\n return {\n ext: \"3mf\",\n mime: \"model/3mf\"\n };\n }\n if (zipHeader.filename === \"mimetype\" && zipHeader.compressedSize === zipHeader.uncompressedSize) {\n let mimeType = await tokenizer.readToken(new StringType(zipHeader.compressedSize, \"utf-8\"));\n mimeType = mimeType.trim();\n switch (mimeType) {\n case \"application/epub+zip\":\n return {\n ext: \"epub\",\n mime: \"application/epub+zip\"\n };\n case \"application/vnd.oasis.opendocument.text\":\n return {\n ext: \"odt\",\n mime: \"application/vnd.oasis.opendocument.text\"\n };\n case \"application/vnd.oasis.opendocument.spreadsheet\":\n return {\n ext: \"ods\",\n mime: \"application/vnd.oasis.opendocument.spreadsheet\"\n };\n case \"application/vnd.oasis.opendocument.presentation\":\n return {\n ext: \"odp\",\n mime: \"application/vnd.oasis.opendocument.presentation\"\n };\n default:\n }\n }\n if (zipHeader.compressedSize === 0) {\n let nextHeaderIndex = -1;\n while (nextHeaderIndex < 0 && tokenizer.position < tokenizer.fileInfo.size) {\n await tokenizer.peekBuffer(this.buffer, { mayBeLess: true });\n nextHeaderIndex = this.buffer.indexOf(\"504B0304\", 0, \"hex\");\n await tokenizer.ignore(nextHeaderIndex >= 0 ? nextHeaderIndex : this.buffer.length);\n }\n } else {\n await tokenizer.ignore(zipHeader.compressedSize);\n }\n }\n } catch (error) {\n if (!(error instanceof EndOfStreamError)) {\n throw error;\n }\n }\n return {\n ext: \"zip\",\n mime: \"application/zip\"\n };\n }\n if (this.checkString(\"OggS\")) {\n await tokenizer.ignore(28);\n const type = Buffer$1.alloc(8);\n await tokenizer.readBuffer(type);\n if (_check(type, [79, 112, 117, 115, 72, 101, 97, 100])) {\n return {\n ext: \"opus\",\n mime: \"audio/opus\"\n };\n }\n if (_check(type, [128, 116, 104, 101, 111, 114, 97])) {\n return {\n ext: \"ogv\",\n mime: \"video/ogg\"\n };\n }\n if (_check(type, [1, 118, 105, 100, 101, 111, 0])) {\n return {\n ext: \"ogm\",\n mime: \"video/ogg\"\n };\n }\n if (_check(type, [127, 70, 76, 65, 67])) {\n return {\n ext: \"oga\",\n mime: \"audio/ogg\"\n };\n }\n if (_check(type, [83, 112, 101, 101, 120, 32, 32])) {\n return {\n ext: \"spx\",\n mime: \"audio/ogg\"\n };\n }\n if (_check(type, [1, 118, 111, 114, 98, 105, 115])) {\n return {\n ext: \"ogg\",\n mime: \"audio/ogg\"\n };\n }\n return {\n ext: \"ogx\",\n mime: \"application/ogg\"\n };\n }\n if (this.check([80, 75]) && (this.buffer[2] === 3 || this.buffer[2] === 5 || this.buffer[2] === 7) && (this.buffer[3] === 4 || this.buffer[3] === 6 || this.buffer[3] === 8)) {\n return {\n ext: \"zip\",\n mime: \"application/zip\"\n };\n }\n if (this.checkString(\"ftyp\", { offset: 4 }) && (this.buffer[8] & 96) !== 0) {\n const brandMajor = this.buffer.toString(\"binary\", 8, 12).replace(\"\\0\", \" \").trim();\n switch (brandMajor) {\n case \"avif\":\n case \"avis\":\n return { ext: \"avif\", mime: \"image/avif\" };\n case \"mif1\":\n return { ext: \"heic\", mime: \"image/heif\" };\n case \"msf1\":\n return { ext: \"heic\", mime: \"image/heif-sequence\" };\n case \"heic\":\n case \"heix\":\n return { ext: \"heic\", mime: \"image/heic\" };\n case \"hevc\":\n case \"hevx\":\n return { ext: \"heic\", mime: \"image/heic-sequence\" };\n case \"qt\":\n return { ext: \"mov\", mime: \"video/quicktime\" };\n case \"M4V\":\n case \"M4VH\":\n case \"M4VP\":\n return { ext: \"m4v\", mime: \"video/x-m4v\" };\n case \"M4P\":\n return { ext: \"m4p\", mime: \"video/mp4\" };\n case \"M4B\":\n return { ext: \"m4b\", mime: \"audio/mp4\" };\n case \"M4A\":\n return { ext: \"m4a\", mime: \"audio/x-m4a\" };\n case \"F4V\":\n return { ext: \"f4v\", mime: \"video/mp4\" };\n case \"F4P\":\n return { ext: \"f4p\", mime: \"video/mp4\" };\n case \"F4A\":\n return { ext: \"f4a\", mime: \"audio/mp4\" };\n case \"F4B\":\n return { ext: \"f4b\", mime: \"audio/mp4\" };\n case \"crx\":\n return { ext: \"cr3\", mime: \"image/x-canon-cr3\" };\n default:\n if (brandMajor.startsWith(\"3g\")) {\n if (brandMajor.startsWith(\"3g2\")) {\n return { ext: \"3g2\", mime: \"video/3gpp2\" };\n }\n return { ext: \"3gp\", mime: \"video/3gpp\" };\n }\n return { ext: \"mp4\", mime: \"video/mp4\" };\n }\n }\n if (this.checkString(\"MThd\")) {\n return {\n ext: \"mid\",\n mime: \"audio/midi\"\n };\n }\n if (this.checkString(\"wOFF\") && (this.check([0, 1, 0, 0], { offset: 4 }) || this.checkString(\"OTTO\", { offset: 4 }))) {\n return {\n ext: \"woff\",\n mime: \"font/woff\"\n };\n }\n if (this.checkString(\"wOF2\") && (this.check([0, 1, 0, 0], { offset: 4 }) || this.checkString(\"OTTO\", { offset: 4 }))) {\n return {\n ext: \"woff2\",\n mime: \"font/woff2\"\n };\n }\n if (this.check([212, 195, 178, 161]) || this.check([161, 178, 195, 212])) {\n return {\n ext: \"pcap\",\n mime: \"application/vnd.tcpdump.pcap\"\n };\n }\n if (this.checkString(\"DSD \")) {\n return {\n ext: \"dsf\",\n mime: \"audio/x-dsf\"\n // Non-standard\n };\n }\n if (this.checkString(\"LZIP\")) {\n return {\n ext: \"lz\",\n mime: \"application/x-lzip\"\n };\n }\n if (this.checkString(\"fLaC\")) {\n return {\n ext: \"flac\",\n mime: \"audio/x-flac\"\n };\n }\n if (this.check([66, 80, 71, 251])) {\n return {\n ext: \"bpg\",\n mime: \"image/bpg\"\n };\n }\n if (this.checkString(\"wvpk\")) {\n return {\n ext: \"wv\",\n mime: \"audio/wavpack\"\n };\n }\n if (this.checkString(\"%PDF\")) {\n try {\n await tokenizer.ignore(1350);\n const maxBufferSize2 = 10 * 1024 * 1024;\n const buffer2 = Buffer$1.alloc(Math.min(maxBufferSize2, tokenizer.fileInfo.size));\n await tokenizer.readBuffer(buffer2, { mayBeLess: true });\n if (buffer2.includes(Buffer$1.from(\"AIPrivateData\"))) {\n return {\n ext: \"ai\",\n mime: \"application/postscript\"\n };\n }\n } catch (error) {\n if (!(error instanceof EndOfStreamError)) {\n throw error;\n }\n }\n return {\n ext: \"pdf\",\n mime: \"application/pdf\"\n };\n }\n if (this.check([0, 97, 115, 109])) {\n return {\n ext: \"wasm\",\n mime: \"application/wasm\"\n };\n }\n if (this.check([73, 73])) {\n const fileType = await this.readTiffHeader(false);\n if (fileType) {\n return fileType;\n }\n }\n if (this.check([77, 77])) {\n const fileType = await this.readTiffHeader(true);\n if (fileType) {\n return fileType;\n }\n }\n if (this.checkString(\"MAC \")) {\n return {\n ext: \"ape\",\n mime: \"audio/ape\"\n };\n }\n if (this.check([26, 69, 223, 163])) {\n async function readField() {\n const msb = await tokenizer.peekNumber(UINT8);\n let mask = 128;\n let ic = 0;\n while ((msb & mask) === 0 && mask !== 0) {\n ++ic;\n mask >>= 1;\n }\n const id = Buffer$1.alloc(ic + 1);\n await tokenizer.readBuffer(id);\n return id;\n }\n async function readElement() {\n const id = await readField();\n const lengthField = await readField();\n lengthField[0] ^= 128 >> lengthField.length - 1;\n const nrLength = Math.min(6, lengthField.length);\n return {\n id: id.readUIntBE(0, id.length),\n len: lengthField.readUIntBE(lengthField.length - nrLength, nrLength)\n };\n }\n async function readChildren(children) {\n while (children > 0) {\n const element = await readElement();\n if (element.id === 17026) {\n const rawValue = await tokenizer.readToken(new StringType(element.len, \"utf-8\"));\n return rawValue.replace(/\\00.*$/g, \"\");\n }\n await tokenizer.ignore(element.len);\n --children;\n }\n }\n const re = await readElement();\n const docType = await readChildren(re.len);\n switch (docType) {\n case \"webm\":\n return {\n ext: \"webm\",\n mime: \"video/webm\"\n };\n case \"matroska\":\n return {\n ext: \"mkv\",\n mime: \"video/x-matroska\"\n };\n default:\n return;\n }\n }\n if (this.check([82, 73, 70, 70])) {\n if (this.check([65, 86, 73], { offset: 8 })) {\n return {\n ext: \"avi\",\n mime: \"video/vnd.avi\"\n };\n }\n if (this.check([87, 65, 86, 69], { offset: 8 })) {\n return {\n ext: \"wav\",\n mime: \"audio/vnd.wave\"\n };\n }\n if (this.check([81, 76, 67, 77], { offset: 8 })) {\n return {\n ext: \"qcp\",\n mime: \"audio/qcelp\"\n };\n }\n }\n if (this.checkString(\"SQLi\")) {\n return {\n ext: \"sqlite\",\n mime: \"application/x-sqlite3\"\n };\n }\n if (this.check([78, 69, 83, 26])) {\n return {\n ext: \"nes\",\n mime: \"application/x-nintendo-nes-rom\"\n };\n }\n if (this.checkString(\"Cr24\")) {\n return {\n ext: \"crx\",\n mime: \"application/x-google-chrome-extension\"\n };\n }\n if (this.checkString(\"MSCF\") || this.checkString(\"ISc(\")) {\n return {\n ext: \"cab\",\n mime: \"application/vnd.ms-cab-compressed\"\n };\n }\n if (this.check([237, 171, 238, 219])) {\n return {\n ext: \"rpm\",\n mime: \"application/x-rpm\"\n };\n }\n if (this.check([197, 208, 211, 198])) {\n return {\n ext: \"eps\",\n mime: \"application/eps\"\n };\n }\n if (this.check([40, 181, 47, 253])) {\n return {\n ext: \"zst\",\n mime: \"application/zstd\"\n };\n }\n if (this.check([127, 69, 76, 70])) {\n return {\n ext: \"elf\",\n mime: \"application/x-elf\"\n };\n }\n if (this.check([33, 66, 68, 78])) {\n return {\n ext: \"pst\",\n mime: \"application/vnd.ms-outlook\"\n };\n }\n if (this.checkString(\"PAR1\")) {\n return {\n ext: \"parquet\",\n mime: \"application/x-parquet\"\n };\n }\n if (this.check([207, 250, 237, 254])) {\n return {\n ext: \"macho\",\n mime: \"application/x-mach-binary\"\n };\n }\n if (this.check([79, 84, 84, 79, 0])) {\n return {\n ext: \"otf\",\n mime: \"font/otf\"\n };\n }\n if (this.checkString(\"#!AMR\")) {\n return {\n ext: \"amr\",\n mime: \"audio/amr\"\n };\n }\n if (this.checkString(\"{\\\\rtf\")) {\n return {\n ext: \"rtf\",\n mime: \"application/rtf\"\n };\n }\n if (this.check([70, 76, 86, 1])) {\n return {\n ext: \"flv\",\n mime: \"video/x-flv\"\n };\n }\n if (this.checkString(\"IMPM\")) {\n return {\n ext: \"it\",\n mime: \"audio/x-it\"\n };\n }\n if (this.checkString(\"-lh0-\", { offset: 2 }) || this.checkString(\"-lh1-\", { offset: 2 }) || this.checkString(\"-lh2-\", { offset: 2 }) || this.checkString(\"-lh3-\", { offset: 2 }) || this.checkString(\"-lh4-\", { offset: 2 }) || this.checkString(\"-lh5-\", { offset: 2 }) || this.checkString(\"-lh6-\", { offset: 2 }) || this.checkString(\"-lh7-\", { offset: 2 }) || this.checkString(\"-lzs-\", { offset: 2 }) || this.checkString(\"-lz4-\", { offset: 2 }) || this.checkString(\"-lz5-\", { offset: 2 }) || this.checkString(\"-lhd-\", { offset: 2 })) {\n return {\n ext: \"lzh\",\n mime: \"application/x-lzh-compressed\"\n };\n }\n if (this.check([0, 0, 1, 186])) {\n if (this.check([33], { offset: 4, mask: [241] })) {\n return {\n ext: \"mpg\",\n // May also be .ps, .mpeg\n mime: \"video/MP1S\"\n };\n }\n if (this.check([68], { offset: 4, mask: [196] })) {\n return {\n ext: \"mpg\",\n // May also be .mpg, .m2p, .vob or .sub\n mime: \"video/MP2P\"\n };\n }\n }\n if (this.checkString(\"ITSF\")) {\n return {\n ext: \"chm\",\n mime: \"application/vnd.ms-htmlhelp\"\n };\n }\n if (this.check([202, 254, 186, 190])) {\n return {\n ext: \"class\",\n mime: \"application/java-vm\"\n };\n }\n if (this.check([253, 55, 122, 88, 90, 0])) {\n return {\n ext: \"xz\",\n mime: \"application/x-xz\"\n };\n }\n if (this.checkString(\"<?xml \")) {\n return {\n ext: \"xml\",\n mime: \"application/xml\"\n };\n }\n if (this.check([55, 122, 188, 175, 39, 28])) {\n return {\n ext: \"7z\",\n mime: \"application/x-7z-compressed\"\n };\n }\n if (this.check([82, 97, 114, 33, 26, 7]) && (this.buffer[6] === 0 || this.buffer[6] === 1)) {\n return {\n ext: \"rar\",\n mime: \"application/x-rar-compressed\"\n };\n }\n if (this.checkString(\"solid \")) {\n return {\n ext: \"stl\",\n mime: \"model/stl\"\n };\n }\n if (this.checkString(\"AC\")) {\n const version = this.buffer.toString(\"binary\", 2, 6);\n if (version.match(\"^d*\") && version >= 1e3 && version <= 1050) {\n return {\n ext: \"dwg\",\n mime: \"image/vnd.dwg\"\n };\n }\n }\n if (this.checkString(\"070707\")) {\n return {\n ext: \"cpio\",\n mime: \"application/x-cpio\"\n };\n }\n if (this.checkString(\"BLENDER\")) {\n return {\n ext: \"blend\",\n mime: \"application/x-blender\"\n };\n }\n if (this.checkString(\"!<arch>\")) {\n await tokenizer.ignore(8);\n const string = await tokenizer.readToken(new StringType(13, \"ascii\"));\n if (string === \"debian-binary\") {\n return {\n ext: \"deb\",\n mime: \"application/x-deb\"\n };\n }\n return {\n ext: \"ar\",\n mime: \"application/x-unix-archive\"\n };\n }\n if (this.checkString(\"**ACE\", { offset: 7 })) {\n await tokenizer.peekBuffer(this.buffer, { length: 14, mayBeLess: true });\n if (this.checkString(\"**\", { offset: 12 })) {\n return {\n ext: \"ace\",\n mime: \"application/x-ace-compressed\"\n };\n }\n }\n if (this.check([137, 80, 78, 71, 13, 10, 26, 10])) {\n await tokenizer.ignore(8);\n async function readChunkHeader() {\n return {\n length: await tokenizer.readToken(INT32_BE),\n type: await tokenizer.readToken(new StringType(4, \"binary\"))\n };\n }\n do {\n const chunk = await readChunkHeader();\n if (chunk.length < 0) {\n return;\n }\n switch (chunk.type) {\n case \"IDAT\":\n return {\n ext: \"png\",\n mime: \"image/png\"\n };\n case \"acTL\":\n return {\n ext: \"apng\",\n mime: \"image/apng\"\n };\n default:\n await tokenizer.ignore(chunk.length + 4);\n }\n } while (tokenizer.position + 8 < tokenizer.fileInfo.size);\n return {\n ext: \"png\",\n mime: \"image/png\"\n };\n }\n if (this.check([65, 82, 82, 79, 87, 49, 0, 0])) {\n return {\n ext: \"arrow\",\n mime: \"application/x-apache-arrow\"\n };\n }\n if (this.check([103, 108, 84, 70, 2, 0, 0, 0])) {\n return {\n ext: \"glb\",\n mime: \"model/gltf-binary\"\n };\n }\n if (this.check([102, 114, 101, 101], { offset: 4 }) || this.check([109, 100, 97, 116], { offset: 4 }) || this.check([109, 111, 111, 118], { offset: 4 }) || this.check([119, 105, 100, 101], { offset: 4 })) {\n return {\n ext: \"mov\",\n mime: \"video/quicktime\"\n };\n }\n if (this.check([73, 73, 82, 79, 8, 0, 0, 0, 24])) {\n return {\n ext: \"orf\",\n mime: \"image/x-olympus-orf\"\n };\n }\n if (this.checkString(\"gimp xcf \")) {\n return {\n ext: \"xcf\",\n mime: \"image/x-xcf\"\n };\n }\n if (this.check([73, 73, 85, 0, 24, 0, 0, 0, 136, 231, 116, 216])) {\n return {\n ext: \"rw2\",\n mime: \"image/x-panasonic-rw2\"\n };\n }\n if (this.check([48, 38, 178, 117, 142, 102, 207, 17, 166, 217])) {\n async function readHeader() {\n const guid = Buffer$1.alloc(16);\n await tokenizer.readBuffer(guid);\n return {\n id: guid,\n size: Number(await tokenizer.readToken(UINT64_LE))\n };\n }\n await tokenizer.ignore(30);\n while (tokenizer.position + 24 < tokenizer.fileInfo.size) {\n const header = await readHeader();\n let payload = header.size - 24;\n if (_check(header.id, [145, 7, 220, 183, 183, 169, 207, 17, 142, 230, 0, 192, 12, 32, 83, 101])) {\n const typeId = Buffer$1.alloc(16);\n payload -= await tokenizer.readBuffer(typeId);\n if (_check(typeId, [64, 158, 105, 248, 77, 91, 207, 17, 168, 253, 0, 128, 95, 92, 68, 43])) {\n return {\n ext: \"asf\",\n mime: \"audio/x-ms-asf\"\n };\n }\n if (_check(typeId, [192, 239, 25, 188, 77, 91, 207, 17, 168, 253, 0, 128, 95, 92, 68, 43])) {\n return {\n ext: \"asf\",\n mime: \"video/x-ms-asf\"\n };\n }\n break;\n }\n await tokenizer.ignore(payload);\n }\n return {\n ext: \"asf\",\n mime: \"application/vnd.ms-asf\"\n };\n }\n if (this.check([171, 75, 84, 88, 32, 49, 49, 187, 13, 10, 26, 10])) {\n return {\n ext: \"ktx\",\n mime: \"image/ktx\"\n };\n }\n if ((this.check([126, 16, 4]) || this.check([126, 24, 4])) && this.check([48, 77, 73, 69], { offset: 4 })) {\n return {\n ext: \"mie\",\n mime: \"application/x-mie\"\n };\n }\n if (this.check([39, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], { offset: 2 })) {\n return {\n ext: \"shp\",\n mime: \"application/x-esri-shape\"\n };\n }\n if (this.check([255, 79, 255, 81])) {\n return {\n ext: \"j2c\",\n mime: \"image/j2c\"\n };\n }\n if (this.check([0, 0, 0, 12, 106, 80, 32, 32, 13, 10, 135, 10])) {\n await tokenizer.ignore(20);\n const type = await tokenizer.readToken(new StringType(4, \"ascii\"));\n switch (type) {\n case \"jp2 \":\n return {\n ext: \"jp2\",\n mime: \"image/jp2\"\n };\n case \"jpx \":\n return {\n ext: \"jpx\",\n mime: \"image/jpx\"\n };\n case \"jpm \":\n return {\n ext: \"jpm\",\n mime: \"image/jpm\"\n };\n case \"mjp2\":\n return {\n ext: \"mj2\",\n mime: \"image/mj2\"\n };\n default:\n return;\n }\n }\n if (this.check([255, 10]) || this.check([0, 0, 0, 12, 74, 88, 76, 32, 13, 10, 135, 10])) {\n return {\n ext: \"jxl\",\n mime: \"image/jxl\"\n };\n }\n if (this.check([254, 255])) {\n if (this.check([0, 60, 0, 63, 0, 120, 0, 109, 0, 108], { offset: 2 })) {\n return {\n ext: \"xml\",\n mime: \"application/xml\"\n };\n }\n return void 0;\n }\n if (this.check([0, 0, 1, 186]) || this.check([0, 0, 1, 179])) {\n return {\n ext: \"mpg\",\n mime: \"video/mpeg\"\n };\n }\n if (this.check([0, 1, 0, 0, 0])) {\n return {\n ext: \"ttf\",\n mime: \"font/ttf\"\n };\n }\n if (this.check([0, 0, 1, 0])) {\n return {\n ext: \"ico\",\n mime: \"image/x-icon\"\n };\n }\n if (this.check([0, 0, 2, 0])) {\n return {\n ext: \"cur\",\n mime: \"image/x-icon\"\n };\n }\n if (this.check([208, 207, 17, 224, 161, 177, 26, 225])) {\n return {\n ext: \"cfb\",\n mime: \"application/x-cfb\"\n };\n }\n await tokenizer.peekBuffer(this.buffer, { length: Math.min(256, tokenizer.fileInfo.size), mayBeLess: true });\n if (this.check([97, 99, 115, 112], { offset: 36 })) {\n return {\n ext: \"icc\",\n mime: \"application/vnd.iccprofile\"\n };\n }\n if (this.checkString(\"BEGIN:\")) {\n if (this.checkString(\"VCARD\", { offset: 6 })) {\n return {\n ext: \"vcf\",\n mime: \"text/vcard\"\n };\n }\n if (this.checkString(\"VCALENDAR\", { offset: 6 })) {\n return {\n ext: \"ics\",\n mime: \"text/calendar\"\n };\n }\n }\n if (this.checkString(\"FUJIFILMCCD-RAW\")) {\n return {\n ext: \"raf\",\n mime: \"image/x-fujifilm-raf\"\n };\n }\n if (this.checkString(\"Extended Module:\")) {\n return {\n ext: \"xm\",\n mime: \"audio/x-xm\"\n };\n }\n if (this.checkString(\"Creative Voice File\")) {\n return {\n ext: \"voc\",\n mime: \"audio/x-voc\"\n };\n }\n if (this.check([4, 0, 0, 0]) && this.buffer.length >= 16) {\n const jsonSize = this.buffer.readUInt32LE(12);\n if (jsonSize > 12 && this.buffer.length >= jsonSize + 16) {\n try {\n const header = this.buffer.slice(16, jsonSize + 16).toString();\n const json = JSON.parse(header);\n if (json.files) {\n return {\n ext: \"asar\",\n mime: \"application/x-asar\"\n };\n }\n } catch {\n }\n }\n }\n if (this.check([6, 14, 43, 52, 2, 5, 1, 1, 13, 1, 2, 1, 1, 2])) {\n return {\n ext: \"mxf\",\n mime: \"application/mxf\"\n };\n }\n if (this.checkString(\"SCRM\", { offset: 44 })) {\n return {\n ext: \"s3m\",\n mime: \"audio/x-s3m\"\n };\n }\n if (this.check([71]) && this.check([71], { offset: 188 })) {\n return {\n ext: \"mts\",\n mime: \"video/mp2t\"\n };\n }\n if (this.check([71], { offset: 4 }) && this.check([71], { offset: 196 })) {\n return {\n ext: \"mts\",\n mime: \"video/mp2t\"\n };\n }\n if (this.check([66, 79, 79, 75, 77, 79, 66, 73], { offset: 60 })) {\n return {\n ext: \"mobi\",\n mime: \"application/x-mobipocket-ebook\"\n };\n }\n if (this.check([68, 73, 67, 77], { offset: 128 })) {\n return {\n ext: \"dcm\",\n mime: \"application/dicom\"\n };\n }\n if (this.check([76, 0, 0, 0, 1, 20, 2, 0, 0, 0, 0, 0, 192, 0, 0, 0, 0, 0, 0, 70])) {\n return {\n ext: \"lnk\",\n mime: \"application/x.ms.shortcut\"\n // Invented by us\n };\n }\n if (this.check([98, 111, 111, 107, 0, 0, 0, 0, 109, 97, 114, 107, 0, 0, 0, 0])) {\n return {\n ext: \"alias\",\n mime: \"application/x.apple.alias\"\n // Invented by us\n };\n }\n if (this.checkString(\"Kaydara FBX Binary \\0\")) {\n return {\n ext: \"fbx\",\n mime: \"application/x.autodesk.fbx\"\n // Invented by us\n };\n }\n if (this.check([76, 80], { offset: 34 }) && (this.check([0, 0, 1], { offset: 8 }) || this.check([1, 0, 2], { offset: 8 }) || this.check([2, 0, 2], { offset: 8 }))) {\n return {\n ext: \"eot\",\n mime: \"application/vnd.ms-fontobject\"\n };\n }\n if (this.check([6, 6, 237, 245, 216, 29, 70, 229, 189, 49, 239, 231, 254, 116, 183, 29])) {\n return {\n ext: \"indd\",\n mime: \"application/x-indesign\"\n };\n }\n await tokenizer.peekBuffer(this.buffer, { length: Math.min(512, tokenizer.fileInfo.size), mayBeLess: true });\n if (tarHeaderChecksumMatches(this.buffer)) {\n return {\n ext: \"tar\",\n mime: \"application/x-tar\"\n };\n }\n if (this.check([255, 254])) {\n if (this.check([60, 0, 63, 0, 120, 0, 109, 0, 108, 0], { offset: 2 })) {\n return {\n ext: \"xml\",\n mime: \"application/xml\"\n };\n }\n if (this.check([255, 14, 83, 0, 107, 0, 101, 0, 116, 0, 99, 0, 104, 0, 85, 0, 112, 0, 32, 0, 77, 0, 111, 0, 100, 0, 101, 0, 108, 0], { offset: 2 })) {\n return {\n ext: \"skp\",\n mime: \"application/vnd.sketchup.skp\"\n };\n }\n return void 0;\n }\n if (this.checkString(\"-----BEGIN PGP MESSAGE-----\")) {\n return {\n ext: \"pgp\",\n mime: \"application/pgp-encrypted\"\n };\n }\n if (this.buffer.length >= 2 && this.check([255, 224], { offset: 0, mask: [255, 224] })) {\n if (this.check([16], { offset: 1, mask: [22] })) {\n if (this.check([8], { offset: 1, mask: [8] })) {\n return {\n ext: \"aac\",\n mime: \"audio/aac\"\n };\n }\n return {\n ext: \"aac\",\n mime: \"audio/aac\"\n };\n }\n if (this.check([2], { offset: 1, mask: [6] })) {\n return {\n ext: \"mp3\",\n mime: \"audio/mpeg\"\n };\n }\n if (this.check([4], { offset: 1, mask: [6] })) {\n return {\n ext: \"mp2\",\n mime: \"audio/mpeg\"\n };\n }\n if (this.check([6], { offset: 1, mask: [6] })) {\n return {\n ext: \"mp1\",\n mime: \"audio/mpeg\"\n };\n }\n }\n }\n async readTiffTag(bigEndian) {\n const tagId = await this.tokenizer.readToken(bigEndian ? UINT16_BE : UINT16_LE);\n this.tokenizer.ignore(10);\n switch (tagId) {\n case 50341:\n return {\n ext: \"arw\",\n mime: \"image/x-sony-arw\"\n };\n case 50706:\n return {\n ext: \"dng\",\n mime: \"image/x-adobe-dng\"\n };\n }\n }\n async readTiffIFD(bigEndian) {\n const numberOfTags = await this.tokenizer.readToken(bigEndian ? UINT16_BE : UINT16_LE);\n for (let n = 0; n < numberOfTags; ++n) {\n const fileType = await this.readTiffTag(bigEndian);\n if (fileType) {\n return fileType;\n }\n }\n }\n async readTiffHeader(bigEndian) {\n const version = (bigEndian ? UINT16_BE : UINT16_LE).get(this.buffer, 2);\n const ifdOffset = (bigEndian ? UINT32_BE : UINT32_LE).get(this.buffer, 4);\n if (version === 42) {\n if (ifdOffset >= 6) {\n if (this.checkString(\"CR\", { offset: 8 })) {\n return {\n ext: \"cr2\",\n mime: \"image/x-canon-cr2\"\n };\n }\n if (ifdOffset >= 8 && (this.check([28, 0, 254, 0], { offset: 8 }) || this.check([31, 0, 11, 0], { offset: 8 }))) {\n return {\n ext: \"nef\",\n mime: \"image/x-nikon-nef\"\n };\n }\n }\n await this.tokenizer.ignore(ifdOffset);\n const fileType = await this.readTiffIFD(bigEndian);\n return fileType ?? {\n ext: \"tif\",\n mime: \"image/tiff\"\n };\n }\n if (version === 43) {\n return {\n ext: \"tif\",\n mime: \"image/tiff\"\n };\n }\n }\n}\nnew Set(extensions);\nnew Set(mimeTypes);\nconst _InscriptionSDK = class _InscriptionSDK {\n constructor(config) {\n __publicField(this, \"client\");\n __publicField(this, \"config\");\n __publicField(this, \"logger\", Logger.getInstance());\n this.config = config;\n if (!config.apiKey) {\n throw new ValidationError(\"API key is required\");\n }\n if (!config.network) {\n throw new ValidationError(\"Network is required\");\n }\n const headers = {\n \"x-api-key\": config.apiKey,\n \"Content-Type\": \"application/json\"\n };\n this.client = axios.create({\n baseURL: \"https://v2-api.tier.bot/api\",\n headers\n });\n this.logger = Logger.getInstance();\n }\n async getFileMetadata(url) {\n try {\n const response = await axios.get(url);\n const mimeType = response.headers[\"content-type\"] || \"\";\n return {\n size: parseInt(response.headers[\"content-length\"] || \"0\", 10),\n mimeType\n };\n } catch (error) {\n this.logger.error(\"Error fetching file metadata:\", error);\n throw new ValidationError(\"Unable to fetch file metadata\");\n }\n }\n /**\n * Gets the MIME type for a file based on its extension.\n * @param fileName - The name of the file.\n * @returns The MIME type of the file.\n * @throws ValidationError if the file has no extension.\n */\n getMimeType(fileName) {\n const extension = fileName.toLowerCase().split(\".\").pop();\n if (!extension) {\n throw new ValidationError(\"File must have an extension\");\n }\n const mimeType = _InscriptionSDK.VALID_MIME_TYPES[extension];\n if (!mimeType) {\n throw new ValidationError(`Unsupported file type: ${extension}`);\n }\n return mimeType;\n }\n /**\n * Validates the request object.\n * @param request - The request object to validate.\n * @throws ValidationError if the request is invalid.\n */\n validateRequest(request) {\n this.logger.debug(\"Validating request:\", request);\n if (!request.holderId || request.holderId.trim() === \"\") {\n this.logger.warn(\"holderId is missing or empty\");\n throw new ValidationError(\"holderId is required\");\n }\n if (!_InscriptionSDK.VALID_MODES.includes(request.mode)) {\n throw new ValidationError(\n `Invalid mode: ${request.mode}. Must be one of: ${_InscriptionSDK.VALID_MODES.join(\", \")}`\n );\n }\n if (request.mode === \"hashinal\") {\n if (!request.jsonFileURL && !request.metadataObject) {\n throw new ValidationError(\n \"Hashinal mode requires either jsonFileURL or metadataObject\"\n );\n }\n }\n if (request.onlyJSONCollection && request.mode !== \"hashinal-collection\") {\n throw new ValidationError(\n \"onlyJSONCollection can only be used with hashinal-collection mode\"\n );\n }\n this.validateFileInput(request.file);\n }\n /**\n * Normalizes the MIME type to a standard format.\n * @param mimeType - The MIME type to normalize.\n * @returns The normalized MIME type.\n */\n normalizeMimeType(mimeType) {\n if (mimeType === \"image/vnd.microsoft.icon\") {\n this.logger.debug(\n \"Normalizing MIME type from image/vnd.microsoft.icon to image/x-icon\"\n );\n return \"image/x-icon\";\n }\n return mimeType;\n }\n validateMimeType(mimeType) {\n const validMimeTypes = Object.values(_InscriptionSDK.VALID_MIME_TYPES);\n if (validMimeTypes.includes(mimeType)) {\n return true;\n }\n if (mimeType === \"image/vnd.microsoft.icon\") {\n this.logger.debug(\n \"Accepting alternative MIME type for ICO: image/vnd.microsoft.icon\"\n );\n return true;\n }\n return false;\n }\n validateFileInput(file) {\n if (file.type === \"base64\") {\n if (!file.base64) {\n throw new ValidationError(\"Base64 data is required\");\n }\n const base64Data = file.base64.replace(/^data:.*?;base64,/, \"\");\n const size = Math.ceil(base64Data.length * 0.75);\n if (size > _InscriptionSDK.MAX_BASE64_SIZE) {\n throw new ValidationError(\n `File size exceeds maximum limit of ${_InscriptionSDK.MAX_BASE64_SIZE / 1024 / 1024}MB`\n );\n }\n const mimeType = file.mimeType || this.getMimeType(file.fileName);\n if (!this.validateMimeType(mimeType)) {\n throw new ValidationError(\n \"File must have one of the supported MIME types\"\n );\n }\n if (file.mimeType === \"image/vnd.microsoft.icon\") {\n file.mimeType = this.normalizeMimeType(file.mimeType);\n }\n } else if (file.type === \"url\") {\n if (!file.url) {\n throw new ValidationError(\"URL is required\");\n }\n }\n }\n async detectMimeTypeFromBase64(base64Data) {\n if (base64Data.startsWith(\"data:\")) {\n const matches = base64Data.match(/^data:([^;]+);base64,/);\n if (matches && matches.length > 1) {\n return matches[1];\n }\n }\n try {\n const sanitizedBase64 = base64Data.replace(/\\s/g, \"\");\n const buffer2 = Buffer2.from(sanitizedBase64, \"base64\");\n const typeResult = await fileTypeFromBuffer(buffer2);\n return (typeResult == null ? void 0 : typeResult.mime) || \"application/octet-stream\";\n } catch (err) {\n this.logger.warn(\"Failed to detect MIME type from buffer\");\n return \"application/octet-stream\";\n }\n }\n /**\n * Starts an inscription and returns the transaction bytes.\n * @param request - The request object containing the file to inscribe and the client configuration\n * @returns The transaction bytes of the started inscription\n * @throws ValidationError if the request is invalid\n * @throws Error if the inscription fails\n */\n async startInscription(request) {\n var _a, _b;\n try {\n this.validateRequest(request);\n let mimeType = request.file.mimeType;\n if (request.file.type === \"url\") {\n const fileMetadata = await this.getFileMetadata(request.file.url);\n mimeType = fileMetadata.mimeType || mimeType;\n if (fileMetadata.size > _InscriptionSDK.MAX_URL_FILE_SIZE) {\n throw new ValidationError(\n `File size exceeds maximum URL file limit of ${_InscriptionSDK.MAX_URL_FILE_SIZE / 1024 / 1024}MB`\n );\n }\n } else if (request.file.type === \"base64\") {\n mimeType = await this.detectMimeTypeFromBase64(request.file.base64);\n }\n if (mimeType === \"image/vnd.microsoft.icon\") {\n mimeType = this.normalizeMimeType(mimeType);\n }\n if (request.jsonFileURL) {\n const jsonMetadata = await this.getFileMetadata(request.jsonFileURL);\n if (jsonMetadata.mimeType !== \"application/json\") {\n throw new ValidationError(\n \"JSON file must be of type application/json\"\n );\n }\n }\n const requestBody = {\n holderId: request.holderId,\n mode: request.mode,\n network: this.config.network,\n onlyJSONCollection: request.onlyJSONCollection ? 1 : 0,\n creator: request.creator,\n description: request.description,\n fileStandard: request.fileStandard,\n metadataObject: request.metadataObject,\n jsonFileURL: request.jsonFileURL\n };\n let response;\n if (request.file.type === \"url\") {\n response = await this.client.post(\"/inscriptions/start-inscription\", {\n ...requestBody,\n fileURL: request.file.url\n });\n } else {\n response = await this.client.post(\"/inscriptions/start-inscription\", {\n ...requestBody,\n fileBase64: request.file.base64,\n fileName: request.file.fileName,\n fileMimeType: mimeType || this.getMimeType(request.file.fileName)\n });\n }\n return response.data;\n } catch (error) {\n if (error instanceof ValidationError) {\n throw error;\n }\n if (axios.isAxiosError(error)) {\n throw new Error(\n ((_b = (_a = error.response) == null ? void 0 : _a.data) == null ? void 0 : _b.message) || \"Failed to start inscription\"\n );\n }\n throw error;\n }\n }\n /**\n * Executes a transaction with the provided transaction bytes,\n * typically called after inscribing a file through `startInscription`.\n * @param transactionBytes - The bytes of the transaction to execute.\n * @param clientConfig - The configuration for the Hedera client.\n * @returns The transaction receipt.\n * @throws ValidationError if the transaction bytes are invalid.\n * @throws Error if the execution fails.\n */\n async executeTransaction(transactionBytes, clientConfig) {\n try {\n const client = clientConfig.network === \"mainnet\" ? Client.forMainnet() : Client.forTestnet();\n const privateKey = PrivateKey.fromString(clientConfig.privateKey);\n client.setOperator(clientConfig.accountId, privateKey);\n const transaction = TransferTransaction.fromBytes(\n Buffer2.from(transactionBytes, \"base64\")\n );\n const signedTransaction = await transaction.sign(privateKey);\n const executeTx = await signedTransaction.execute(client);\n const receipt = await executeTx.getReceipt(client);\n const status = receipt.status.toString();\n if (status !== \"SUCCESS\") {\n throw new Error(`Transaction failed with status: ${status}`);\n }\n return executeTx.transactionId.toString();\n } catch (error) {\n throw new Error(\n `Failed to execute transaction: ${error instanceof Error ? error.message : \"Unknown error\"}`\n );\n }\n }\n /**\n * Executes a transaction with the provided transaction bytes using a Signer,\n * typically called after inscribing a file through `startInscription`.\n * @param transactionBytes - The bytes of the transaction to execute.\n * @param clientConfig - The configuration for the Hedera client.\n * @returns The transaction receipt.\n * @throws ValidationError if the transaction bytes are invalid.\n * @throws Error if the execution fails.\n */\n async executeTransactionWithSigner(transactionBytes, signer) {\n try {\n const transaction = TransferTransaction.fromBytes(\n Buffer2.from(transactionBytes, \"base64\")\n );\n const executeTx = await transaction.executeWithSigner(signer);\n const receipt = await executeTx.getReceiptWithSigner(signer);\n const status = receipt.status.toString();\n if (status !== \"SUCCESS\") {\n throw new Error(`Transaction failed with status: ${status}`);\n }\n return executeTx.transactionId.toString();\n } catch (error) {\n throw new Error(\n `Failed to execute transaction: ${error instanceof Error ? error.message : \"Unknown error\"}`\n );\n }\n }\n /**\n * Inscribes a file and executes the transaction. Note that base64 files are limited to 2MB, while URL files are limited to 100MB.\n * @param request - The request object containing the file to inscribe and the client configuration\n * @param clientConfig - The configuration for the Hedera network and account\n * @returns The transaction ID of the executed transaction\n * @throws ValidationError if the request is invalid\n * @throws Error if the transaction execution fails\n */\n async inscribeAndExecute(request, clientConfig) {\n const inscriptionResponse = await this.startInscription(request);\n if (!inscriptionResponse.transactionBytes) {\n this.logger.error(\n \"No transaction bytes returned from inscription request\",\n inscriptionResponse\n );\n throw new Error(\"No transaction bytes returned from inscription request\");\n }\n this.logger.info(\"executing transaction\");\n const transactionId = await this.executeTransaction(\n inscriptionResponse.transactionBytes,\n clientConfig\n );\n return {\n jobId: inscriptionResponse.tx_id,\n transactionId\n };\n }\n /**\n * Inscribes a file and executes the transaction. Note that base64 files are limited to 2MB, while URL files are limited to 100MB.\n * @param request - The request object containing the file to inscribe and the client configuration\n * @param clientConfig - The configuration for the Hedera network and account\n * @returns The transaction ID of the executed transaction\n * @throws ValidationError if the request is invalid\n * @throws Error if the transaction execution fails\n */\n async inscribe(request, signer) {\n const inscriptionResponse = await this.startInscription(request);\n if (!inscriptionResponse.transactionBytes) {\n this.logger.error(\n \"No transaction bytes returned from inscription request\",\n inscriptionResponse\n );\n throw new Error(\"No transaction bytes returned from inscription request\");\n }\n this.logger.info(\"executing transaction\");\n const transactionId = await this.executeTransactionWithSigner(\n inscriptionResponse.transactionBytes,\n signer\n );\n return {\n jobId: inscriptionResponse.tx_id,\n transactionId\n };\n }\n async retryWithBackoff(operation, maxRetries = 3, baseDelay = 1e3) {\n for (let attempt = 0; attempt < maxRetries; attempt++) {\n try {\n return await operation();\n } catch (error) {\n if (attempt === maxRetries - 1) {\n throw error;\n }\n const delay = baseDelay * Math.pow(2, attempt);\n await new Promise((resolve) => setTimeout(resolve, delay));\n this.logger.debug(\n `Retry attempt ${attempt + 1}/${maxRetries} after ${delay}ms delay`\n );\n }\n }\n throw new Error(\"Retry operation failed\");\n }\n /**\n * Retrieves an inscription by its transaction id. Call this function on an interval\n * so you can retrieve the status. Store the transaction id in your database if you\n * need to reference it later on\n * @param txId - The ID of the inscription to retrieve\n * @returns The retrieved inscription\n * @throws ValidationError if the ID is invalid\n * @throws Error if the retrieval fails\n */\n async retrieveInscription(txId) {\n if (!txId) {\n throw new ValidationError(\"Transaction ID is required\");\n }\n try {\n return await this.retryWithBackoff(async () => {\n const response = await this.client.get(\n `/inscriptions/retrieve-inscription?id=${txId}`\n );\n const result = response.data;\n return { ...result, jobId: result.id };\n });\n } catch (error) {\n this.logger.error(\"Failed to retrieve inscription:\", error);\n throw error;\n }\n }\n /**\n * Fetch inscription numbers with optional filtering and sorting\n * @param params Query parameters for filtering and sorting inscriptions\n * @returns Array of inscription details\n */\n async getInscriptionNumbers(params = {}) {\n try {\n const response = await this.client.get(\"/inscriptions/numbers\", {\n params\n });\n return response.data;\n } catch (error) {\n this.logger.error(\"Failed to fetch inscription numbers:\", error);\n throw error;\n }\n }\n /**\n * Authenticates the SDK with the provided configuration\n * @param config - The configuration for authentication\n * @returns The authentication result\n */\n static async authenticate(config) {\n const auth = new Auth(config);\n return auth.authenticate();\n }\n /**\n * Creates an instance of the InscriptionSDK with authentication.\n * Useful for cases where you don't have an API key but need to authenticate from server-side\n * with a private key.\n * @param config - The configuration for authentication\n * @returns An instance of the InscriptionSDK\n */\n static async createWithAuth(config) {\n const auth = config.type === \"client\" ? new ClientAuth({\n ...config,\n logger: Logger.getInstance()\n }) : new Auth(config);\n const { apiKey } = await auth.authenticate();\n return new _InscriptionSDK({\n apiKey,\n network: config.network || \"mainnet\"\n });\n }\n async waitForInscription(txId, maxAttempts = 30, intervalMs = 4e3, checkCompletion = false, progressCallback) {\n var _a;\n let attempts = 0;\n let highestPercentSoFar = 0;\n const reportProgress = (stage, message, percent, details) => {\n if (progressCallback) {\n try {\n highestPercentSoFar = Math.max(highestPercentSoFar, percent);\n progressCallback({\n stage,\n message,\n progressPercent: highestPercentSoFar,\n details: {\n ...details,\n txId,\n currentAttempt: attempts,\n maxAttempts\n }\n });\n } catch (err) {\n this.logger.warn(`Error in progress callback: ${err}`);\n }\n }\n };\n reportProgress(\"confirming\", \"Starting inscription verification\", 0);\n while (attempts < maxAttempts) {\n reportProgress(\n \"confirming\",\n `Verifying inscription status (attempt ${attempts + 1}/${maxAttempts})`,\n 5,\n { attempt: attempts + 1 }\n );\n const result = await this.retrieveInscription(txId);\n if (result.error) {\n reportProgress(\"verifying\", `Error: ${result.error}`, 100, {\n error: result.error\n });\n throw new Error(result.error);\n }\n let progressPercent = 5;\n if (result.messages !== void 0 && result.maxMessages !== void 0 && result.maxMessages > 0) {\n progressPercent = Math.min(\n 95,\n 5 + result.messages / result.maxMessages * 90\n );\n if (result.completed) {\n progressPercent = 100;\n }\n } else if (result.status === \"processing\") {\n progressPercent = 10;\n } else if (result.completed) {\n progressPercent = 100;\n }\n reportProgress(\n result.completed ? \"completed\" : \"confirming\",\n result.completed ? \"Inscription completed successfully\" : `Processing inscription (${result.status})`,\n progressPercent,\n {\n status: result.status,\n messagesProcessed: result.messages,\n maxMessages: result.maxMessages,\n messageCount: result.messages,\n completed: result.completed,\n confirmedMessages: result.confirmedMessages,\n result\n }\n );\n const isHashinal = result.mode === \"hashinal\";\n const isDynamic = ((_a = result.fileStandard) == null ? void 0 : _a.toString()) === \"6\";\n if (isHashinal && result.topic_id && result.jsonTopicId) {\n if (!checkCompletion || result.completed) {\n reportProgress(\n \"completed\",\n \"Inscription verification complete\",\n 100,\n { result }\n );\n return result;\n }\n }\n if (!isHashinal && !isDynamic && result.topic_id) {\n if (!checkCompletion || result.completed) {\n reportProgress(\n \"completed\",\n \"Inscription verification complete\",\n 100,\n { result }\n );\n return result;\n }\n }\n if (isDynamic && result.topic_id && result.jsonTopicId && result.registryTopicId) {\n if (!checkCompletion || result.completed) {\n reportProgress(\n \"completed\",\n \"Inscription verification complete\",\n 100,\n { result }\n );\n return result;\n }\n }\n await new Promise((resolve) => setTimeout(resolve, intervalMs));\n attempts++;\n }\n reportProgress(\n \"verifying\",\n `Inscription ${txId} did not complete within ${maxAttempts} attempts`,\n 100,\n { timedOut: true }\n );\n throw new Error(\n `Inscription ${txId} did not complete within ${maxAttempts} attempts`\n );\n }\n /**\n * Fetch inscriptions owned by a specific holder\n * @param params Query parameters for retrieving holder's inscriptions\n * @returns Array of inscription details owned by the holder\n */\n async getHolderInscriptions(params) {\n var _a, _b;\n if (!params.holderId) {\n throw new ValidationError(\"Holder ID is required\");\n }\n try {\n const queryParams = {\n holderId: params.holderId\n };\n if (params.includeCollections) {\n queryParams.includeCollections = \"1\";\n }\n const response = await this.client.get(\"/inscriptions/holder-inscriptions\", {\n params: queryParams\n });\n return response.data;\n } catch (error) {\n this.logger.error(\"Failed to fetch holder inscriptions:\", error);\n if (axios.isAxiosError(error)) {\n throw new Error(\n ((_b = (_a = error.response) == null ? void 0 : _a.data) == null ? void 0 : _b.message) || \"Failed to fetch holder inscriptions\"\n );\n }\n throw error;\n }\n }\n};\n__publicField(_InscriptionSDK, \"VALID_MODES\", [\n \"file\",\n \"upload\",\n \"hashinal\",\n \"hashinal-collection\"\n]);\n__publicField(_InscriptionSDK, \"MAX_BASE64_SIZE\", 2 * 1024 * 1024);\n__publicField(_InscriptionSDK, \"MAX_URL_FILE_SIZE\", 100 * 1024 * 1024);\n__publicField(_InscriptionSDK, \"VALID_MIME_TYPES\", {\n jpg: \"image/jpeg\",\n jpeg: \"image/jpeg\",\n png: \"image/png\",\n gif: \"image/gif\",\n ico: \"image/x-icon\",\n heic: \"image/heic\",\n heif: \"image/heif\",\n bmp: \"image/bmp\",\n webp: \"image/webp\",\n tiff: \"image/tiff\",\n tif: \"image/tiff\",\n svg: \"image/svg+xml\",\n mp4: \"video/mp4\",\n webm: \"video/webm\",\n mp3: \"audio/mpeg\",\n pdf: \"application/pdf\",\n doc: \"application/msword\",\n docx: \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\n xls: \"application/vnd.ms-excel\",\n xlsx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\n ppt: \"application/vnd.ms-powerpoint\",\n pptx: \"application/vnd.openxmlformats-officedocument.presentationml.presentation\",\n html: \"text/html\",\n htm: \"text/html\",\n css: \"text/css\",\n php: \"application/x-httpd-php\",\n java: \"text/x-java-source\",\n js: \"application/javascript\",\n mjs: \"application/javascript\",\n csv: \"text/csv\",\n json: \"application/json\",\n txt: \"text/plain\",\n glb: \"model/gltf-binary\",\n wav: \"audio/wav\",\n ogg: \"audio/ogg\",\n oga: \"audio/ogg\",\n flac: \"audio/flac\",\n aac: \"audio/aac\",\n m4a: \"audio/mp4\",\n avi: \"video/x-msvideo\",\n mov: \"video/quicktime\",\n mkv: \"video/x-matroska\",\n m4v: \"video/mp4\",\n mpg: \"video/mpeg\",\n mpeg: \"video/mpeg\",\n ts: \"application/typescript\",\n zip: \"application/zip\",\n rar: \"application/vnd.rar\",\n tar: \"application/x-tar\",\n gz: \"application/gzip\",\n \"7z\": \"application/x-7z-compressed\",\n xml: \"application/xml\",\n yaml: \"application/yaml\",\n yml: \"application/yaml\",\n md: \"text/markdown\",\n markdown: \"text/markdown\",\n rtf: \"application/rtf\",\n gltf: \"model/gltf+json\",\n usdz: \"model/vnd.usdz+zip\",\n obj: \"model/obj\",\n stl: \"model/stl\",\n fbx: \"application/octet-stream\",\n ttf: \"font/ttf\",\n otf: \"font/otf\",\n woff: \"font/woff\",\n woff2: \"font/woff2\",\n eot: \"application/vnd.ms-fontobject\",\n psd: \"application/vnd.adobe.photoshop\",\n ai: \"application/postscript\",\n eps: \"application/postscript\",\n ps: \"application/postscript\",\n sqlite: \"application/x-sqlite3\",\n db: \"application/x-sqlite3\",\n apk: \"application/vnd.android.package-archive\",\n ics: \"text/calendar\",\n vcf: \"text/vcard\",\n py: \"text/x-python\",\n rb: \"text/x-ruby\",\n go: \"text/x-go\",\n rs: \"text/x-rust\",\n typescript: \"application/typescript\",\n jsx: \"text/jsx\",\n tsx: \"text/tsx\",\n sql: \"application/sql\",\n toml: \"application/toml\",\n avif: \"image/avif\",\n jxl: \"image/jxl\",\n weba: \"audio/webm\"\n});\nlet InscriptionSDK = _InscriptionSDK;\nexport {\n Auth as A,\n ClientAuth as C,\n InscriptionSDK as I,\n ValidationError as V,\n process$1 as p\n};\n//# sourceMappingURL=index-DufjK3tU.js.map\n"],"names":["_Logger","_InscriptionSDK"],"mappings":";AAAA,IAAI,YAAY,OAAO;AACvB,IAAI,kBAAkB,CAAC,KAAK,KAAK,UAAU,OAAO,MAAM,UAAU,KAAK,KAAK,EAAE,YAAY,MAAM,cAAc,MAAM,UAAU,MAAM,MAAK,CAAE,IAAI,IAAI,GAAG,IAAI;AAC1J,IAAI,gBAAgB,CAAC,KAAK,KAAK,UAAU,gBAAgB,KAAK,OAAO,QAAQ,WAAW,MAAM,KAAK,KAAK,KAAK;AAE7G,IAAI,SAAS,CAAE;AACf,IAAI,WAAW,CAAE;AACjB,SAAS,aAAa;AACtB,SAAS,cAAc;AACvB,SAAS,gBAAgB;AACzB,IAAI,SAAS,CAAE;AACf,IAAI,YAAY,CAAE;AAClB,IAAI,MAAM,OAAO,eAAe,cAAc,aAAa;AAC3D,IAAI,OAAO;AACX,SAAS,IAAI,GAAG,MAAM,KAAK,QAAQ,IAAI,KAAK,EAAE,GAAG;AAC/C,SAAO,CAAC,IAAI,KAAK,CAAC;AAClB,YAAU,KAAK,WAAW,CAAC,CAAC,IAAI;AAClC;AACA,UAAU,IAAI,WAAW,CAAC,CAAC,IAAI;AAC/B,UAAU,IAAI,WAAW,CAAC,CAAC,IAAI;AAC/B,SAAS,QAAQ,KAAK;AACpB,MAAI,MAAM,IAAI;AACd,MAAI,MAAM,IAAI,GAAG;AACf,UAAM,IAAI,MAAM,gDAAgD;AAAA,EACpE;AACE,MAAI,WAAW,IAAI,QAAQ,GAAG;AAC9B,MAAI,aAAa,GAAI,YAAW;AAChC,MAAI,kBAAkB,aAAa,MAAM,IAAI,IAAI,WAAW;AAC5D,SAAO,CAAC,UAAU,eAAe;AACnC;AACA,SAAS,WAAW,KAAK;AACvB,MAAI,OAAO,QAAQ,GAAG;AACtB,MAAI,WAAW,KAAK,CAAC;AACrB,MAAI,kBAAkB,KAAK,CAAC;AAC5B,UAAQ,WAAW,mBAAmB,IAAI,IAAI;AAChD;AACA,SAAS,YAAY,KAAK,UAAU,iBAAiB;AACnD,UAAQ,WAAW,mBAAmB,IAAI,IAAI;AAChD;AACA,SAAS,YAAY,KAAK;AACxB,MAAI;AACJ,MAAI,OAAO,QAAQ,GAAG;AACtB,MAAI,WAAW,KAAK,CAAC;AACrB,MAAI,kBAAkB,KAAK,CAAC;AAC5B,MAAI,MAAM,IAAI,IAAI,YAAY,KAAK,UAAU,eAAe,CAAC;AAC7D,MAAI,UAAU;AACd,MAAI,MAAM,kBAAkB,IAAI,WAAW,IAAI;AAC/C,MAAI;AACJ,OAAK,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAC3B,UAAM,UAAU,IAAI,WAAW,CAAC,CAAC,KAAK,KAAK,UAAU,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,IAAI,UAAU,IAAI,WAAW,IAAI,CAAC,CAAC;AAC3J,QAAI,SAAS,IAAI,OAAO,KAAK;AAC7B,QAAI,SAAS,IAAI,OAAO,IAAI;AAC5B,QAAI,SAAS,IAAI,MAAM;AAAA,EAC3B;AACE,MAAI,oBAAoB,GAAG;AACzB,UAAM,UAAU,IAAI,WAAW,CAAC,CAAC,KAAK,IAAI,UAAU,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK;AAC9E,QAAI,SAAS,IAAI,MAAM;AAAA,EAC3B;AACE,MAAI,oBAAoB,GAAG;AACzB,UAAM,UAAU,IAAI,WAAW,CAAC,CAAC,KAAK,KAAK,UAAU,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK,IAAI,UAAU,IAAI,WAAW,IAAI,CAAC,CAAC,KAAK;AACvH,QAAI,SAAS,IAAI,OAAO,IAAI;AAC5B,QAAI,SAAS,IAAI,MAAM;AAAA,EAC3B;AACE,SAAO;AACT;AACA,SAAS,gBAAgB,KAAK;AAC5B,SAAO,OAAO,OAAO,KAAK,EAAE,IAAI,OAAO,OAAO,KAAK,EAAE,IAAI,OAAO,OAAO,IAAI,EAAE,IAAI,OAAO,MAAM,EAAE;AAClG;AACA,SAAS,YAAY,OAAO,OAAO,KAAK;AACtC,MAAI;AACJ,MAAI,SAAS,CAAE;AACf,WAAS,IAAI,OAAO,IAAI,KAAK,KAAK,GAAG;AACnC,WAAO,MAAM,CAAC,KAAK,KAAK,aAAa,MAAM,IAAI,CAAC,KAAK,IAAI,UAAU,MAAM,IAAI,CAAC,IAAI;AAClF,WAAO,KAAK,gBAAgB,GAAG,CAAC;AAAA,EACpC;AACE,SAAO,OAAO,KAAK,EAAE;AACvB;AACA,SAAS,cAAc,OAAO;AAC5B,MAAI;AACJ,MAAI,MAAM,MAAM;AAChB,MAAI,aAAa,MAAM;AACvB,MAAI,QAAQ,CAAE;AACd,MAAI,iBAAiB;AACrB,WAAS,IAAI,GAAG,OAAO,MAAM,YAAY,IAAI,MAAM,KAAK,gBAAgB;AACtE,UAAM,KAAK,YAAY,OAAO,GAAG,IAAI,iBAAiB,OAAO,OAAO,IAAI,cAAc,CAAC;AAAA,EAC3F;AACE,MAAI,eAAe,GAAG;AACpB,UAAM,MAAM,MAAM,CAAC;AACnB,UAAM;AAAA,MACJ,OAAO,OAAO,CAAC,IAAI,OAAO,OAAO,IAAI,EAAE,IAAI;AAAA,IAC5C;AAAA,EACL,WAAa,eAAe,GAAG;AAC3B,WAAO,MAAM,MAAM,CAAC,KAAK,KAAK,MAAM,MAAM,CAAC;AAC3C,UAAM;AAAA,MACJ,OAAO,OAAO,EAAE,IAAI,OAAO,OAAO,IAAI,EAAE,IAAI,OAAO,OAAO,IAAI,EAAE,IAAI;AAAA,IACrE;AAAA,EACL;AACE,SAAO,MAAM,KAAK,EAAE;AACtB;AACA,IAAI,YAAY,CAAE;AAClB;AACA,UAAU,OAAO,SAAS,SAAS,QAAQ,MAAM,MAAM,QAAQ;AAC7D,MAAI,GAAG;AACP,MAAI,OAAO,SAAS,IAAI,OAAO;AAC/B,MAAI,QAAQ,KAAK,QAAQ;AACzB,MAAI,QAAQ,QAAQ;AACpB,MAAI,QAAQ;AACZ,MAAI,IAAI,OAAO,SAAS,IAAI;AAC5B,MAAI,IAAI,OAAO,KAAK;AACpB,MAAI,IAAI,QAAQ,SAAS,CAAC;AAC1B,OAAK;AACL,MAAI,KAAK,KAAK,CAAC,SAAS;AACxB,QAAM,CAAC;AACP,WAAS;AACT,SAAO,QAAQ,GAAG,IAAI,IAAI,MAAM,QAAQ,SAAS,CAAC,GAAG,KAAK,GAAG,SAAS,GAAG;AAAA,EAC3E;AACE,MAAI,KAAK,KAAK,CAAC,SAAS;AACxB,QAAM,CAAC;AACP,WAAS;AACT,SAAO,QAAQ,GAAG,IAAI,IAAI,MAAM,QAAQ,SAAS,CAAC,GAAG,KAAK,GAAG,SAAS,GAAG;AAAA,EAC3E;AACE,MAAI,MAAM,GAAG;AACX,QAAI,IAAI;AAAA,EACZ,WAAa,MAAM,MAAM;AACrB,WAAO,IAAI,OAAO,IAAI,KAAK,KAAK;AAAA,EACpC,OAAS;AACL,QAAI,IAAI,KAAK,IAAI,GAAG,IAAI;AACxB,QAAI,IAAI;AAAA,EACZ;AACE,UAAQ,IAAI,KAAK,KAAK,IAAI,KAAK,IAAI,GAAG,IAAI,IAAI;AAChD;AACA,UAAU,QAAQ,SAAS,SAAS,OAAO,QAAQ,MAAM,MAAM,QAAQ;AACrE,MAAI,GAAG,GAAG;AACV,MAAI,OAAO,SAAS,IAAI,OAAO;AAC/B,MAAI,QAAQ,KAAK,QAAQ;AACzB,MAAI,QAAQ,QAAQ;AACpB,MAAI,KAAK,SAAS,KAAK,KAAK,IAAI,GAAG,GAAG,IAAI,KAAK,IAAI,GAAG,GAAG,IAAI;AAC7D,MAAI,IAAI,OAAO,IAAI,SAAS;AAC5B,MAAI,IAAI,OAAO,IAAI;AACnB,MAAI,IAAI,QAAQ,KAAK,UAAU,KAAK,IAAI,QAAQ,IAAI,IAAI;AACxD,UAAQ,KAAK,IAAI,KAAK;AACtB,MAAI,MAAM,KAAK,KAAK,UAAU,UAAU;AACtC,QAAI,MAAM,KAAK,IAAI,IAAI;AACvB,QAAI;AAAA,EACR,OAAS;AACL,QAAI,KAAK,MAAM,KAAK,IAAI,KAAK,IAAI,KAAK,GAAG;AACzC,QAAI,SAAS,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG;AACrC;AACA,WAAK;AAAA,IACX;AACI,QAAI,IAAI,SAAS,GAAG;AAClB,eAAS,KAAK;AAAA,IACpB,OAAW;AACL,eAAS,KAAK,KAAK,IAAI,GAAG,IAAI,KAAK;AAAA,IACzC;AACI,QAAI,QAAQ,KAAK,GAAG;AAClB;AACA,WAAK;AAAA,IACX;AACI,QAAI,IAAI,SAAS,MAAM;AACrB,UAAI;AACJ,UAAI;AAAA,IACV,WAAe,IAAI,SAAS,GAAG;AACzB,WAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,GAAG,IAAI;AACtC,UAAI,IAAI;AAAA,IACd,OAAW;AACL,UAAI,QAAQ,KAAK,IAAI,GAAG,QAAQ,CAAC,IAAI,KAAK,IAAI,GAAG,IAAI;AACrD,UAAI;AAAA,IACV;AAAA,EACA;AACE,SAAO,QAAQ,GAAG,QAAQ,SAAS,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,KAAK,KAAK,QAAQ,GAAG;AAAA,EAChF;AACE,MAAI,KAAK,OAAO;AAChB,UAAQ;AACR,SAAO,OAAO,GAAG,QAAQ,SAAS,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,KAAK,KAAK,QAAQ,GAAG;AAAA,EAC/E;AACE,UAAQ,SAAS,IAAI,CAAC,KAAK,IAAI;AACjC;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAMC,SAAS,SAAS;AACjB,QAAM,SAAS;AACf,QAAM,cAAc;AACpB,QAAM,sBAAsB,OAAO,WAAW,cAAc,OAAO,OAAO,KAAK,MAAM,aAAa,OAAO,KAAK,EAAE,4BAA4B,IAAI;AAChJ,UAAQ,SAAS;AACjB,UAAQ,aAAa;AACrB,UAAQ,oBAAoB;AAC5B,QAAM,eAAe;AACrB,UAAQ,aAAa;AACrB,QAAM,EAAE,YAAY,kBAAkB,aAAa,mBAAmB,mBAAmB,wBAAuB,IAAK;AACrH,UAAQ,sBAAsB,kBAAmB;AACjD,MAAI,CAAC,QAAQ,uBAAuB,OAAO,YAAY,eAAe,OAAO,QAAQ,UAAU,YAAY;AACzG,YAAQ;AAAA,MACN;AAAA,IACD;AAAA,EACL;AACE,WAAS,oBAAoB;AAC3B,QAAI;AACF,YAAM,MAAM,IAAI,iBAAiB,CAAC;AAClC,YAAM,QAAQ,EAAE,KAAK,WAAW;AAC9B,eAAO;AAAA,MACf,EAAS;AACH,aAAO,eAAe,OAAO,iBAAiB,SAAS;AACvD,aAAO,eAAe,KAAK,KAAK;AAChC,aAAO,IAAI,IAAG,MAAO;AAAA,IACtB,SAAQ,GAAG;AACV,aAAO;AAAA,IACb;AAAA,EACA;AACE,SAAO,eAAe,QAAQ,WAAW,UAAU;AAAA,IACjD,YAAY;AAAA,IACZ,KAAK,WAAW;AACd,UAAI,CAAC,QAAQ,SAAS,IAAI,EAAG,QAAO;AACpC,aAAO,KAAK;AAAA,IAClB;AAAA,EACA,CAAG;AACD,SAAO,eAAe,QAAQ,WAAW,UAAU;AAAA,IACjD,YAAY;AAAA,IACZ,KAAK,WAAW;AACd,UAAI,CAAC,QAAQ,SAAS,IAAI,EAAG,QAAO;AACpC,aAAO,KAAK;AAAA,IAClB;AAAA,EACA,CAAG;AACD,WAAS,aAAa,QAAQ;AAC5B,QAAI,SAAS,cAAc;AACzB,YAAM,IAAI,WAAW,gBAAgB,SAAS,gCAAgC;AAAA,IACpF;AACI,UAAM,MAAM,IAAI,iBAAiB,MAAM;AACvC,WAAO,eAAe,KAAK,QAAQ,SAAS;AAC5C,WAAO;AAAA,EACX;AACE,WAAS,QAAQ,KAAK,kBAAkB,QAAQ;AAC9C,QAAI,OAAO,QAAQ,UAAU;AAC3B,UAAI,OAAO,qBAAqB,UAAU;AACxC,cAAM,IAAI;AAAA,UACR;AAAA,QACD;AAAA,MACT;AACM,aAAO,YAAY,GAAG;AAAA,IAC5B;AACI,WAAO,KAAK,KAAK,kBAAkB,MAAM;AAAA,EAC7C;AACE,UAAQ,WAAW;AACnB,WAAS,KAAK,OAAO,kBAAkB,QAAQ;AAC7C,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,WAAW,OAAO,gBAAgB;AAAA,IAC/C;AACI,QAAI,kBAAkB,OAAO,KAAK,GAAG;AACnC,aAAO,cAAc,KAAK;AAAA,IAChC;AACI,QAAI,SAAS,MAAM;AACjB,YAAM,IAAI;AAAA,QACR,oHAAoH,OAAO;AAAA,MAC5H;AAAA,IACP;AACI,QAAI,WAAW,OAAO,iBAAiB,KAAK,SAAS,WAAW,MAAM,QAAQ,iBAAiB,GAAG;AAChG,aAAO,gBAAgB,OAAO,kBAAkB,MAAM;AAAA,IAC5D;AACI,QAAI,OAAO,4BAA4B,gBAAgB,WAAW,OAAO,uBAAuB,KAAK,SAAS,WAAW,MAAM,QAAQ,uBAAuB,IAAI;AAChK,aAAO,gBAAgB,OAAO,kBAAkB,MAAM;AAAA,IAC5D;AACI,QAAI,OAAO,UAAU,UAAU;AAC7B,YAAM,IAAI;AAAA,QACR;AAAA,MACD;AAAA,IACP;AACI,UAAM,UAAU,MAAM,WAAW,MAAM,QAAS;AAChD,QAAI,WAAW,QAAQ,YAAY,OAAO;AACxC,aAAO,QAAQ,KAAK,SAAS,kBAAkB,MAAM;AAAA,IAC3D;AACI,UAAM,IAAI,WAAW,KAAK;AAC1B,QAAI,EAAG,QAAO;AACd,QAAI,OAAO,WAAW,eAAe,OAAO,eAAe,QAAQ,OAAO,MAAM,OAAO,WAAW,MAAM,YAAY;AAClH,aAAO,QAAQ,KAAK,MAAM,OAAO,WAAW,EAAE,QAAQ,GAAG,kBAAkB,MAAM;AAAA,IACvF;AACI,UAAM,IAAI;AAAA,MACR,oHAAoH,OAAO;AAAA,IAC5H;AAAA,EACL;AACE,UAAQ,OAAO,SAAS,OAAO,kBAAkB,QAAQ;AACvD,WAAO,KAAK,OAAO,kBAAkB,MAAM;AAAA,EAC5C;AACD,SAAO,eAAe,QAAQ,WAAW,iBAAiB,SAAS;AACnE,SAAO,eAAe,SAAS,gBAAgB;AAC/C,WAAS,WAAW,MAAM;AACxB,QAAI,OAAO,SAAS,UAAU;AAC5B,YAAM,IAAI,UAAU,wCAAwC;AAAA,IAClE,WAAe,OAAO,GAAG;AACnB,YAAM,IAAI,WAAW,gBAAgB,OAAO,gCAAgC;AAAA,IAClF;AAAA,EACA;AACE,WAAS,MAAM,MAAM,MAAM,UAAU;AACnC,eAAW,IAAI;AACf,QAAI,QAAQ,GAAG;AACb,aAAO,aAAa,IAAI;AAAA,IAC9B;AACI,QAAI,SAAS,QAAQ;AACnB,aAAO,OAAO,aAAa,WAAW,aAAa,IAAI,EAAE,KAAK,MAAM,QAAQ,IAAI,aAAa,IAAI,EAAE,KAAK,IAAI;AAAA,IAClH;AACI,WAAO,aAAa,IAAI;AAAA,EAC5B;AACE,UAAQ,QAAQ,SAAS,MAAM,MAAM,UAAU;AAC7C,WAAO,MAAM,MAAM,MAAM,QAAQ;AAAA,EAClC;AACD,WAAS,YAAY,MAAM;AACzB,eAAW,IAAI;AACf,WAAO,aAAa,OAAO,IAAI,IAAI,QAAQ,IAAI,IAAI,CAAC;AAAA,EACxD;AACE,UAAQ,cAAc,SAAS,MAAM;AACnC,WAAO,YAAY,IAAI;AAAA,EACxB;AACD,UAAQ,kBAAkB,SAAS,MAAM;AACvC,WAAO,YAAY,IAAI;AAAA,EACxB;AACD,WAAS,WAAW,QAAQ,UAAU;AACpC,QAAI,OAAO,aAAa,YAAY,aAAa,IAAI;AACnD,iBAAW;AAAA,IACjB;AACI,QAAI,CAAC,QAAQ,WAAW,QAAQ,GAAG;AACjC,YAAM,IAAI,UAAU,uBAAuB,QAAQ;AAAA,IACzD;AACI,UAAM,SAAS,YAAY,QAAQ,QAAQ,IAAI;AAC/C,QAAI,MAAM,aAAa,MAAM;AAC7B,UAAM,SAAS,IAAI,MAAM,QAAQ,QAAQ;AACzC,QAAI,WAAW,QAAQ;AACrB,YAAM,IAAI,MAAM,GAAG,MAAM;AAAA,IAC/B;AACI,WAAO;AAAA,EACX;AACE,WAAS,cAAc,OAAO;AAC5B,UAAM,SAAS,MAAM,SAAS,IAAI,IAAI,QAAQ,MAAM,MAAM,IAAI;AAC9D,UAAM,MAAM,aAAa,MAAM;AAC/B,aAAS,IAAI,GAAG,IAAI,QAAQ,KAAK,GAAG;AAClC,UAAI,CAAC,IAAI,MAAM,CAAC,IAAI;AAAA,IAC1B;AACI,WAAO;AAAA,EACX;AACE,WAAS,cAAc,WAAW;AAChC,QAAI,WAAW,WAAW,gBAAgB,GAAG;AAC3C,YAAM,OAAO,IAAI,iBAAiB,SAAS;AAC3C,aAAO,gBAAgB,KAAK,QAAQ,KAAK,YAAY,KAAK,UAAU;AAAA,IAC1E;AACI,WAAO,cAAc,SAAS;AAAA,EAClC;AACE,WAAS,gBAAgB,OAAO,YAAY,QAAQ;AAClD,QAAI,aAAa,KAAK,MAAM,aAAa,YAAY;AACnD,YAAM,IAAI,WAAW,sCAAsC;AAAA,IACjE;AACI,QAAI,MAAM,aAAa,cAAc,UAAU,IAAI;AACjD,YAAM,IAAI,WAAW,sCAAsC;AAAA,IACjE;AACI,QAAI;AACJ,QAAI,eAAe,UAAU,WAAW,QAAQ;AAC9C,YAAM,IAAI,iBAAiB,KAAK;AAAA,IACtC,WAAe,WAAW,QAAQ;AAC5B,YAAM,IAAI,iBAAiB,OAAO,UAAU;AAAA,IAClD,OAAW;AACL,YAAM,IAAI,iBAAiB,OAAO,YAAY,MAAM;AAAA,IAC1D;AACI,WAAO,eAAe,KAAK,QAAQ,SAAS;AAC5C,WAAO;AAAA,EACX;AACE,WAAS,WAAW,KAAK;AACvB,QAAI,QAAQ,SAAS,GAAG,GAAG;AACzB,YAAM,MAAM,QAAQ,IAAI,MAAM,IAAI;AAClC,YAAM,MAAM,aAAa,GAAG;AAC5B,UAAI,IAAI,WAAW,GAAG;AACpB,eAAO;AAAA,MACf;AACM,UAAI,KAAK,KAAK,GAAG,GAAG,GAAG;AACvB,aAAO;AAAA,IACb;AACI,QAAI,IAAI,WAAW,QAAQ;AACzB,UAAI,OAAO,IAAI,WAAW,YAAY,YAAY,IAAI,MAAM,GAAG;AAC7D,eAAO,aAAa,CAAC;AAAA,MAC7B;AACM,aAAO,cAAc,GAAG;AAAA,IAC9B;AACI,QAAI,IAAI,SAAS,YAAY,MAAM,QAAQ,IAAI,IAAI,GAAG;AACpD,aAAO,cAAc,IAAI,IAAI;AAAA,IACnC;AAAA,EACA;AACE,WAAS,QAAQ,QAAQ;AACvB,QAAI,UAAU,cAAc;AAC1B,YAAM,IAAI,WAAW,4DAA4D,aAAa,SAAS,EAAE,IAAI,QAAQ;AAAA,IAC3H;AACI,WAAO,SAAS;AAAA,EACpB;AACE,WAAS,WAAW,QAAQ;AAC1B,QAAI,CAAC,UAAU,QAAQ;AACrB,eAAS;AAAA,IACf;AACI,WAAO,QAAQ,MAAM,CAAC,MAAM;AAAA,EAChC;AACE,UAAQ,WAAW,SAAS,UAAU,GAAG;AACvC,WAAO,KAAK,QAAQ,EAAE,cAAc,QAAQ,MAAM,QAAQ;AAAA,EAC3D;AACD,UAAQ,UAAU,SAAS,QAAQ,GAAG,GAAG;AACvC,QAAI,WAAW,GAAG,gBAAgB,EAAG,KAAI,QAAQ,KAAK,GAAG,EAAE,QAAQ,EAAE,UAAU;AAC/E,QAAI,WAAW,GAAG,gBAAgB,EAAG,KAAI,QAAQ,KAAK,GAAG,EAAE,QAAQ,EAAE,UAAU;AAC/E,QAAI,CAAC,QAAQ,SAAS,CAAC,KAAK,CAAC,QAAQ,SAAS,CAAC,GAAG;AAChD,YAAM,IAAI;AAAA,QACR;AAAA,MACD;AAAA,IACP;AACI,QAAI,MAAM,EAAG,QAAO;AACpB,QAAI,IAAI,EAAE;AACV,QAAI,IAAI,EAAE;AACV,aAAS,IAAI,GAAG,MAAM,KAAK,IAAI,GAAG,CAAC,GAAG,IAAI,KAAK,EAAE,GAAG;AAClD,UAAI,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG;AACjB,YAAI,EAAE,CAAC;AACP,YAAI,EAAE,CAAC;AACP;AAAA,MACR;AAAA,IACA;AACI,QAAI,IAAI,EAAG,QAAO;AAClB,QAAI,IAAI,EAAG,QAAO;AAClB,WAAO;AAAA,EACR;AACD,UAAQ,aAAa,SAAS,WAAW,UAAU;AACjD,YAAQ,OAAO,QAAQ,EAAE,YAAa,GAAA;AAAA,MACpC,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IACf;AAAA,EACG;AACD,UAAQ,SAAS,SAAS,OAAO,MAAM,QAAQ;AAC7C,QAAI,CAAC,MAAM,QAAQ,IAAI,GAAG;AACxB,YAAM,IAAI,UAAU,6CAA6C;AAAA,IACvE;AACI,QAAI,KAAK,WAAW,GAAG;AACrB,aAAO,QAAQ,MAAM,CAAC;AAAA,IAC5B;AACI,QAAI;AACJ,QAAI,WAAW,QAAQ;AACrB,eAAS;AACT,WAAK,IAAI,GAAG,IAAI,KAAK,QAAQ,EAAE,GAAG;AAChC,kBAAU,KAAK,CAAC,EAAE;AAAA,MAC1B;AAAA,IACA;AACI,UAAM,UAAU,QAAQ,YAAY,MAAM;AAC1C,QAAI,MAAM;AACV,SAAK,IAAI,GAAG,IAAI,KAAK,QAAQ,EAAE,GAAG;AAChC,UAAI,MAAM,KAAK,CAAC;AAChB,UAAI,WAAW,KAAK,gBAAgB,GAAG;AACrC,YAAI,MAAM,IAAI,SAAS,QAAQ,QAAQ;AACrC,cAAI,CAAC,QAAQ,SAAS,GAAG,EAAG,OAAM,QAAQ,KAAK,GAAG;AAClD,cAAI,KAAK,SAAS,GAAG;AAAA,QAC/B,OAAe;AACL,2BAAiB,UAAU,IAAI;AAAA,YAC7B;AAAA,YACA;AAAA,YACA;AAAA,UACD;AAAA,QACX;AAAA,MACO,WAAU,CAAC,QAAQ,SAAS,GAAG,GAAG;AACjC,cAAM,IAAI,UAAU,6CAA6C;AAAA,MACzE,OAAa;AACL,YAAI,KAAK,SAAS,GAAG;AAAA,MAC7B;AACM,aAAO,IAAI;AAAA,IACjB;AACI,WAAO;AAAA,EACR;AACD,WAAS,YAAY,QAAQ,UAAU;AACrC,QAAI,QAAQ,SAAS,MAAM,GAAG;AAC5B,aAAO,OAAO;AAAA,IACpB;AACI,QAAI,kBAAkB,OAAO,MAAM,KAAK,WAAW,QAAQ,iBAAiB,GAAG;AAC7E,aAAO,OAAO;AAAA,IACpB;AACI,QAAI,OAAO,WAAW,UAAU;AAC9B,YAAM,IAAI;AAAA,QACR,6FAA6F,OAAO;AAAA,MACrG;AAAA,IACP;AACI,UAAM,MAAM,OAAO;AACnB,UAAM,YAAY,UAAU,SAAS,KAAK,UAAU,CAAC,MAAM;AAC3D,QAAI,CAAC,aAAa,QAAQ,EAAG,QAAO;AACpC,QAAI,cAAc;AAClB,eAAW;AACT,cAAQ,UAAQ;AAAA,QACd,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO;AAAA,QACT,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,YAAY,MAAM,EAAE;AAAA,QAC7B,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,MAAM;AAAA,QACf,KAAK;AACH,iBAAO,QAAQ;AAAA,QACjB,KAAK;AACH,iBAAO,cAAc,MAAM,EAAE;AAAA,QAC/B;AACE,cAAI,aAAa;AACf,mBAAO,YAAY,KAAK,YAAY,MAAM,EAAE;AAAA,UACxD;AACU,sBAAY,KAAK,UAAU,YAAa;AACxC,wBAAc;AAAA,MACxB;AAAA,IACA;AAAA,EACA;AACE,UAAQ,aAAa;AACrB,WAAS,aAAa,UAAU,OAAO,KAAK;AAC1C,QAAI,cAAc;AAClB,QAAI,UAAU,UAAU,QAAQ,GAAG;AACjC,cAAQ;AAAA,IACd;AACI,QAAI,QAAQ,KAAK,QAAQ;AACvB,aAAO;AAAA,IACb;AACI,QAAI,QAAQ,UAAU,MAAM,KAAK,QAAQ;AACvC,YAAM,KAAK;AAAA,IACjB;AACI,QAAI,OAAO,GAAG;AACZ,aAAO;AAAA,IACb;AACI,aAAS;AACT,eAAW;AACX,QAAI,OAAO,OAAO;AAChB,aAAO;AAAA,IACb;AACI,QAAI,CAAC,SAAU,YAAW;AAC1B,WAAO,MAAM;AACX,cAAQ,UAAQ;AAAA,QACd,KAAK;AACH,iBAAO,SAAS,MAAM,OAAO,GAAG;AAAA,QAClC,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,UAAU,MAAM,OAAO,GAAG;AAAA,QACnC,KAAK;AACH,iBAAO,WAAW,MAAM,OAAO,GAAG;AAAA,QACpC,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,YAAY,MAAM,OAAO,GAAG;AAAA,QACrC,KAAK;AACH,iBAAO,YAAY,MAAM,OAAO,GAAG;AAAA,QACrC,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,aAAa,MAAM,OAAO,GAAG;AAAA,QACtC;AACE,cAAI,YAAa,OAAM,IAAI,UAAU,uBAAuB,QAAQ;AACpE,sBAAY,WAAW,IAAI,YAAa;AACxC,wBAAc;AAAA,MACxB;AAAA,IACA;AAAA,EACA;AACE,UAAQ,UAAU,YAAY;AAC9B,WAAS,KAAK,GAAG,GAAG,GAAG;AACrB,UAAM,IAAI,EAAE,CAAC;AACb,MAAE,CAAC,IAAI,EAAE,CAAC;AACV,MAAE,CAAC,IAAI;AAAA,EACX;AACE,UAAQ,UAAU,SAAS,SAAS,SAAS;AAC3C,UAAM,MAAM,KAAK;AACjB,QAAI,MAAM,MAAM,GAAG;AACjB,YAAM,IAAI,WAAW,2CAA2C;AAAA,IACtE;AACI,aAAS,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAC/B,WAAK,MAAM,GAAG,IAAI,CAAC;AAAA,IACzB;AACI,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,SAAS,SAAS,SAAS;AAC3C,UAAM,MAAM,KAAK;AACjB,QAAI,MAAM,MAAM,GAAG;AACjB,YAAM,IAAI,WAAW,2CAA2C;AAAA,IACtE;AACI,aAAS,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAC/B,WAAK,MAAM,GAAG,IAAI,CAAC;AACnB,WAAK,MAAM,IAAI,GAAG,IAAI,CAAC;AAAA,IAC7B;AACI,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,SAAS,SAAS,SAAS;AAC3C,UAAM,MAAM,KAAK;AACjB,QAAI,MAAM,MAAM,GAAG;AACjB,YAAM,IAAI,WAAW,2CAA2C;AAAA,IACtE;AACI,aAAS,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG;AAC/B,WAAK,MAAM,GAAG,IAAI,CAAC;AACnB,WAAK,MAAM,IAAI,GAAG,IAAI,CAAC;AACvB,WAAK,MAAM,IAAI,GAAG,IAAI,CAAC;AACvB,WAAK,MAAM,IAAI,GAAG,IAAI,CAAC;AAAA,IAC7B;AACI,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,WAAW,SAAS,YAAY;AAChD,UAAM,SAAS,KAAK;AACpB,QAAI,WAAW,EAAG,QAAO;AACzB,QAAI,UAAU,WAAW,EAAG,QAAO,UAAU,MAAM,GAAG,MAAM;AAC5D,WAAO,aAAa,MAAM,MAAM,SAAS;AAAA,EAC1C;AACD,UAAQ,UAAU,iBAAiB,QAAQ,UAAU;AACrD,UAAQ,UAAU,SAAS,SAAS,OAAO,GAAG;AAC5C,QAAI,CAAC,QAAQ,SAAS,CAAC,EAAG,OAAM,IAAI,UAAU,2BAA2B;AACzE,QAAI,SAAS,EAAG,QAAO;AACvB,WAAO,QAAQ,QAAQ,MAAM,CAAC,MAAM;AAAA,EACrC;AACD,UAAQ,UAAU,UAAU,SAAS,UAAU;AAC7C,QAAI,MAAM;AACV,UAAM,MAAM,QAAQ;AACpB,UAAM,KAAK,SAAS,OAAO,GAAG,GAAG,EAAE,QAAQ,WAAW,KAAK,EAAE,KAAM;AACnE,QAAI,KAAK,SAAS,IAAK,QAAO;AAC9B,WAAO,aAAa,MAAM;AAAA,EAC3B;AACD,MAAI,qBAAqB;AACvB,YAAQ,UAAU,mBAAmB,IAAI,QAAQ,UAAU;AAAA,EAC/D;AACE,UAAQ,UAAU,UAAU,SAAS,QAAQ,QAAQ,OAAO,KAAK,WAAW,SAAS;AACnF,QAAI,WAAW,QAAQ,gBAAgB,GAAG;AACxC,eAAS,QAAQ,KAAK,QAAQ,OAAO,QAAQ,OAAO,UAAU;AAAA,IACpE;AACI,QAAI,CAAC,QAAQ,SAAS,MAAM,GAAG;AAC7B,YAAM,IAAI;AAAA,QACR,mFAAmF,OAAO;AAAA,MAC3F;AAAA,IACP;AACI,QAAI,UAAU,QAAQ;AACpB,cAAQ;AAAA,IACd;AACI,QAAI,QAAQ,QAAQ;AAClB,YAAM,SAAS,OAAO,SAAS;AAAA,IACrC;AACI,QAAI,cAAc,QAAQ;AACxB,kBAAY;AAAA,IAClB;AACI,QAAI,YAAY,QAAQ;AACtB,gBAAU,KAAK;AAAA,IACrB;AACI,QAAI,QAAQ,KAAK,MAAM,OAAO,UAAU,YAAY,KAAK,UAAU,KAAK,QAAQ;AAC9E,YAAM,IAAI,WAAW,oBAAoB;AAAA,IAC/C;AACI,QAAI,aAAa,WAAW,SAAS,KAAK;AACxC,aAAO;AAAA,IACb;AACI,QAAI,aAAa,SAAS;AACxB,aAAO;AAAA,IACb;AACI,QAAI,SAAS,KAAK;AAChB,aAAO;AAAA,IACb;AACI,eAAW;AACX,aAAS;AACT,mBAAe;AACf,iBAAa;AACb,QAAI,SAAS,OAAQ,QAAO;AAC5B,QAAI,IAAI,UAAU;AAClB,QAAI,IAAI,MAAM;AACd,UAAM,MAAM,KAAK,IAAI,GAAG,CAAC;AACzB,UAAM,WAAW,KAAK,MAAM,WAAW,OAAO;AAC9C,UAAM,aAAa,OAAO,MAAM,OAAO,GAAG;AAC1C,aAAS,IAAI,GAAG,IAAI,KAAK,EAAE,GAAG;AAC5B,UAAI,SAAS,CAAC,MAAM,WAAW,CAAC,GAAG;AACjC,YAAI,SAAS,CAAC;AACd,YAAI,WAAW,CAAC;AAChB;AAAA,MACR;AAAA,IACA;AACI,QAAI,IAAI,EAAG,QAAO;AAClB,QAAI,IAAI,EAAG,QAAO;AAClB,WAAO;AAAA,EACR;AACD,WAAS,qBAAqB,SAAS,KAAK,YAAY,UAAU,KAAK;AACrE,QAAI,QAAQ,WAAW,EAAG,QAAO;AACjC,QAAI,OAAO,eAAe,UAAU;AAClC,iBAAW;AACX,mBAAa;AAAA,IACnB,WAAe,aAAa,YAAY;AAClC,mBAAa;AAAA,IACnB,WAAe,aAAa,aAAa;AACnC,mBAAa;AAAA,IACnB;AACI,iBAAa,CAAC;AACd,QAAI,YAAY,UAAU,GAAG;AAC3B,mBAAa,MAAM,IAAI,QAAQ,SAAS;AAAA,IAC9C;AACI,QAAI,aAAa,EAAG,cAAa,QAAQ,SAAS;AAClD,QAAI,cAAc,QAAQ,QAAQ;AAChC,UAAI,IAAK,QAAO;AAAA,UACX,cAAa,QAAQ,SAAS;AAAA,IACzC,WAAe,aAAa,GAAG;AACzB,UAAI,IAAK,cAAa;AAAA,UACjB,QAAO;AAAA,IAClB;AACI,QAAI,OAAO,QAAQ,UAAU;AAC3B,YAAM,QAAQ,KAAK,KAAK,QAAQ;AAAA,IACtC;AACI,QAAI,QAAQ,SAAS,GAAG,GAAG;AACzB,UAAI,IAAI,WAAW,GAAG;AACpB,eAAO;AAAA,MACf;AACM,aAAO,aAAa,SAAS,KAAK,YAAY,UAAU,GAAG;AAAA,IACjE,WAAe,OAAO,QAAQ,UAAU;AAClC,YAAM,MAAM;AACZ,UAAI,OAAO,iBAAiB,UAAU,YAAY,YAAY;AAC5D,YAAI,KAAK;AACP,iBAAO,iBAAiB,UAAU,QAAQ,KAAK,SAAS,KAAK,UAAU;AAAA,QACjF,OAAe;AACL,iBAAO,iBAAiB,UAAU,YAAY,KAAK,SAAS,KAAK,UAAU;AAAA,QACrF;AAAA,MACA;AACM,aAAO,aAAa,SAAS,CAAC,GAAG,GAAG,YAAY,UAAU,GAAG;AAAA,IACnE;AACI,UAAM,IAAI,UAAU,sCAAsC;AAAA,EAC9D;AACE,WAAS,aAAa,KAAK,KAAK,YAAY,UAAU,KAAK;AACzD,QAAI,YAAY;AAChB,QAAI,YAAY,IAAI;AACpB,QAAI,YAAY,IAAI;AACpB,QAAI,aAAa,QAAQ;AACvB,iBAAW,OAAO,QAAQ,EAAE,YAAa;AACzC,UAAI,aAAa,UAAU,aAAa,WAAW,aAAa,aAAa,aAAa,YAAY;AACpG,YAAI,IAAI,SAAS,KAAK,IAAI,SAAS,GAAG;AACpC,iBAAO;AAAA,QACjB;AACQ,oBAAY;AACZ,qBAAa;AACb,qBAAa;AACb,sBAAc;AAAA,MACtB;AAAA,IACA;AACI,aAAS,KAAK,KAAK,IAAI;AACrB,UAAI,cAAc,GAAG;AACnB,eAAO,IAAI,EAAE;AAAA,MACrB,OAAa;AACL,eAAO,IAAI,aAAa,KAAK,SAAS;AAAA,MAC9C;AAAA,IACA;AACI,QAAI;AACJ,QAAI,KAAK;AACP,UAAI,aAAa;AACjB,WAAK,IAAI,YAAY,IAAI,WAAW,KAAK;AACvC,YAAI,KAAK,KAAK,CAAC,MAAM,KAAK,KAAK,eAAe,KAAK,IAAI,IAAI,UAAU,GAAG;AACtE,cAAI,eAAe,GAAI,cAAa;AACpC,cAAI,IAAI,aAAa,MAAM,UAAW,QAAO,aAAa;AAAA,QACpE,OAAe;AACL,cAAI,eAAe,GAAI,MAAK,IAAI;AAChC,uBAAa;AAAA,QACvB;AAAA,MACA;AAAA,IACA,OAAW;AACL,UAAI,aAAa,YAAY,UAAW,cAAa,YAAY;AACjE,WAAK,IAAI,YAAY,KAAK,GAAG,KAAK;AAChC,YAAI,QAAQ;AACZ,iBAAS,IAAI,GAAG,IAAI,WAAW,KAAK;AAClC,cAAI,KAAK,KAAK,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,GAAG;AACrC,oBAAQ;AACR;AAAA,UACZ;AAAA,QACA;AACQ,YAAI,MAAO,QAAO;AAAA,MAC1B;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACE,UAAQ,UAAU,WAAW,SAAS,SAAS,KAAK,YAAY,UAAU;AACxE,WAAO,KAAK,QAAQ,KAAK,YAAY,QAAQ,MAAM;AAAA,EACpD;AACD,UAAQ,UAAU,UAAU,SAAS,QAAQ,KAAK,YAAY,UAAU;AACtE,WAAO,qBAAqB,MAAM,KAAK,YAAY,UAAU,IAAI;AAAA,EAClE;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,KAAK,YAAY,UAAU;AAC9E,WAAO,qBAAqB,MAAM,KAAK,YAAY,UAAU,KAAK;AAAA,EACnE;AACD,WAAS,SAAS,KAAK,QAAQ,QAAQ,QAAQ;AAC7C,aAAS,OAAO,MAAM,KAAK;AAC3B,UAAM,YAAY,IAAI,SAAS;AAC/B,QAAI,CAAC,QAAQ;AACX,eAAS;AAAA,IACf,OAAW;AACL,eAAS,OAAO,MAAM;AACtB,UAAI,SAAS,WAAW;AACtB,iBAAS;AAAA,MACjB;AAAA,IACA;AACI,UAAM,SAAS,OAAO;AACtB,QAAI,SAAS,SAAS,GAAG;AACvB,eAAS,SAAS;AAAA,IACxB;AACI,QAAI;AACJ,SAAK,IAAI,GAAG,IAAI,QAAQ,EAAE,GAAG;AAC3B,YAAM,SAAS,SAAS,OAAO,OAAO,IAAI,GAAG,CAAC,GAAG,EAAE;AACnD,UAAI,YAAY,MAAM,EAAG,QAAO;AAChC,UAAI,SAAS,CAAC,IAAI;AAAA,IACxB;AACI,WAAO;AAAA,EACX;AACE,WAAS,UAAU,KAAK,QAAQ,QAAQ,QAAQ;AAC9C,WAAO,WAAW,YAAY,QAAQ,IAAI,SAAS,MAAM,GAAG,KAAK,QAAQ,MAAM;AAAA,EACnF;AACE,WAAS,WAAW,KAAK,QAAQ,QAAQ,QAAQ;AAC/C,WAAO,WAAW,aAAa,MAAM,GAAG,KAAK,QAAQ,MAAM;AAAA,EAC/D;AACE,WAAS,YAAY,KAAK,QAAQ,QAAQ,QAAQ;AAChD,WAAO,WAAW,cAAc,MAAM,GAAG,KAAK,QAAQ,MAAM;AAAA,EAChE;AACE,WAAS,UAAU,KAAK,QAAQ,QAAQ,QAAQ;AAC9C,WAAO,WAAW,eAAe,QAAQ,IAAI,SAAS,MAAM,GAAG,KAAK,QAAQ,MAAM;AAAA,EACtF;AACE,UAAQ,UAAU,QAAQ,SAAS,MAAM,QAAQ,QAAQ,QAAQ,UAAU;AACzE,QAAI,WAAW,QAAQ;AACrB,iBAAW;AACX,eAAS,KAAK;AACd,eAAS;AAAA,IACV,WAAU,WAAW,UAAU,OAAO,WAAW,UAAU;AAC1D,iBAAW;AACX,eAAS,KAAK;AACd,eAAS;AAAA,IACf,WAAe,SAAS,MAAM,GAAG;AAC3B,eAAS,WAAW;AACpB,UAAI,SAAS,MAAM,GAAG;AACpB,iBAAS,WAAW;AACpB,YAAI,aAAa,OAAQ,YAAW;AAAA,MAC5C,OAAa;AACL,mBAAW;AACX,iBAAS;AAAA,MACjB;AAAA,IACA,OAAW;AACL,YAAM,IAAI;AAAA,QACR;AAAA,MACD;AAAA,IACP;AACI,UAAM,YAAY,KAAK,SAAS;AAChC,QAAI,WAAW,UAAU,SAAS,UAAW,UAAS;AACtD,QAAI,OAAO,SAAS,MAAM,SAAS,KAAK,SAAS,MAAM,SAAS,KAAK,QAAQ;AAC3E,YAAM,IAAI,WAAW,wCAAwC;AAAA,IACnE;AACI,QAAI,CAAC,SAAU,YAAW;AAC1B,QAAI,cAAc;AAClB,eAAW;AACT,cAAQ,UAAQ;AAAA,QACd,KAAK;AACH,iBAAO,SAAS,MAAM,QAAQ,QAAQ,MAAM;AAAA,QAC9C,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,UAAU,MAAM,QAAQ,QAAQ,MAAM;AAAA,QAC/C,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,WAAW,MAAM,QAAQ,QAAQ,MAAM;AAAA,QAChD,KAAK;AACH,iBAAO,YAAY,MAAM,QAAQ,QAAQ,MAAM;AAAA,QACjD,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBAAO,UAAU,MAAM,QAAQ,QAAQ,MAAM;AAAA,QAC/C;AACE,cAAI,YAAa,OAAM,IAAI,UAAU,uBAAuB,QAAQ;AACpE,sBAAY,KAAK,UAAU,YAAa;AACxC,wBAAc;AAAA,MACxB;AAAA,IACA;AAAA,EACG;AACD,UAAQ,UAAU,SAAS,SAAS,UAAU;AAC5C,WAAO;AAAA,MACL,MAAM;AAAA,MACN,MAAM,MAAM,UAAU,MAAM,KAAK,KAAK,QAAQ,MAAM,CAAC;AAAA,IACtD;AAAA,EACF;AACD,WAAS,YAAY,KAAK,OAAO,KAAK;AACpC,QAAI,UAAU,KAAK,QAAQ,IAAI,QAAQ;AACrC,aAAO,OAAO,cAAc,GAAG;AAAA,IACrC,OAAW;AACL,aAAO,OAAO,cAAc,IAAI,MAAM,OAAO,GAAG,CAAC;AAAA,IACvD;AAAA,EACA;AACE,WAAS,UAAU,KAAK,OAAO,KAAK;AAClC,UAAM,KAAK,IAAI,IAAI,QAAQ,GAAG;AAC9B,UAAM,MAAM,CAAE;AACd,QAAI,IAAI;AACR,WAAO,IAAI,KAAK;AACd,YAAM,YAAY,IAAI,CAAC;AACvB,UAAI,YAAY;AAChB,UAAI,mBAAmB,YAAY,MAAM,IAAI,YAAY,MAAM,IAAI,YAAY,MAAM,IAAI;AACzF,UAAI,IAAI,oBAAoB,KAAK;AAC/B,YAAI,YAAY,WAAW,YAAY;AACvC,gBAAQ,kBAAgB;AAAA,UACtB,KAAK;AACH,gBAAI,YAAY,KAAK;AACnB,0BAAY;AAAA,YAC1B;AACY;AAAA,UACF,KAAK;AACH,yBAAa,IAAI,IAAI,CAAC;AACtB,iBAAK,aAAa,SAAS,KAAK;AAC9B,+BAAiB,YAAY,OAAO,IAAI,aAAa;AACrD,kBAAI,gBAAgB,KAAK;AACvB,4BAAY;AAAA,cAC5B;AAAA,YACA;AACY;AAAA,UACF,KAAK;AACH,yBAAa,IAAI,IAAI,CAAC;AACtB,wBAAY,IAAI,IAAI,CAAC;AACrB,iBAAK,aAAa,SAAS,QAAQ,YAAY,SAAS,KAAK;AAC3D,+BAAiB,YAAY,OAAO,MAAM,aAAa,OAAO,IAAI,YAAY;AAC9E,kBAAI,gBAAgB,SAAS,gBAAgB,SAAS,gBAAgB,QAAQ;AAC5E,4BAAY;AAAA,cAC5B;AAAA,YACA;AACY;AAAA,UACF,KAAK;AACH,yBAAa,IAAI,IAAI,CAAC;AACtB,wBAAY,IAAI,IAAI,CAAC;AACrB,yBAAa,IAAI,IAAI,CAAC;AACtB,iBAAK,aAAa,SAAS,QAAQ,YAAY,SAAS,QAAQ,aAAa,SAAS,KAAK;AACzF,+BAAiB,YAAY,OAAO,MAAM,aAAa,OAAO,MAAM,YAAY,OAAO,IAAI,aAAa;AACxG,kBAAI,gBAAgB,SAAS,gBAAgB,SAAS;AACpD,4BAAY;AAAA,cAC5B;AAAA,YACA;AAAA,QACA;AAAA,MACA;AACM,UAAI,cAAc,MAAM;AACtB,oBAAY;AACZ,2BAAmB;AAAA,MAC3B,WAAiB,YAAY,OAAO;AAC5B,qBAAa;AACb,YAAI,KAAK,cAAc,KAAK,OAAO,KAAK;AACxC,oBAAY,QAAQ,YAAY;AAAA,MACxC;AACM,UAAI,KAAK,SAAS;AAClB,WAAK;AAAA,IACX;AACI,WAAO,sBAAsB,GAAG;AAAA,EACpC;AACE,QAAM,uBAAuB;AAC7B,WAAS,sBAAsB,YAAY;AACzC,UAAM,MAAM,WAAW;AACvB,QAAI,OAAO,sBAAsB;AAC/B,aAAO,OAAO,aAAa,MAAM,QAAQ,UAAU;AAAA,IACzD;AACI,QAAI,MAAM;AACV,QAAI,IAAI;AACR,WAAO,IAAI,KAAK;AACd,aAAO,OAAO,aAAa;AAAA,QACzB;AAAA,QACA,WAAW,MAAM,GAAG,KAAK,oBAAoB;AAAA,MAC9C;AAAA,IACP;AACI,WAAO;AAAA,EACX;AACE,WAAS,WAAW,KAAK,OAAO,KAAK;AACnC,QAAI,MAAM;AACV,UAAM,KAAK,IAAI,IAAI,QAAQ,GAAG;AAC9B,aAAS,IAAI,OAAO,IAAI,KAAK,EAAE,GAAG;AAChC,aAAO,OAAO,aAAa,IAAI,CAAC,IAAI,GAAG;AAAA,IAC7C;AACI,WAAO;AAAA,EACX;AACE,WAAS,YAAY,KAAK,OAAO,KAAK;AACpC,QAAI,MAAM;AACV,UAAM,KAAK,IAAI,IAAI,QAAQ,GAAG;AAC9B,aAAS,IAAI,OAAO,IAAI,KAAK,EAAE,GAAG;AAChC,aAAO,OAAO,aAAa,IAAI,CAAC,CAAC;AAAA,IACvC;AACI,WAAO;AAAA,EACX;AACE,WAAS,SAAS,KAAK,OAAO,KAAK;AACjC,UAAM,MAAM,IAAI;AAChB,QAAI,CAAC,SAAS,QAAQ,EAAG,SAAQ;AACjC,QAAI,CAAC,OAAO,MAAM,KAAK,MAAM,IAAK,OAAM;AACxC,QAAI,MAAM;AACV,aAAS,IAAI,OAAO,IAAI,KAAK,EAAE,GAAG;AAChC,aAAO,oBAAoB,IAAI,CAAC,CAAC;AAAA,IACvC;AACI,WAAO;AAAA,EACX;AACE,WAAS,aAAa,KAAK,OAAO,KAAK;AACrC,UAAM,QAAQ,IAAI,MAAM,OAAO,GAAG;AAClC,QAAI,MAAM;AACV,aAAS,IAAI,GAAG,IAAI,MAAM,SAAS,GAAG,KAAK,GAAG;AAC5C,aAAO,OAAO,aAAa,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,GAAG;AAAA,IAC9D;AACI,WAAO;AAAA,EACX;AACE,UAAQ,UAAU,QAAQ,SAAS,MAAM,OAAO,KAAK;AACnD,UAAM,MAAM,KAAK;AACjB,YAAQ,CAAC,CAAC;AACV,UAAM,QAAQ,SAAS,MAAM,CAAC,CAAC;AAC/B,QAAI,QAAQ,GAAG;AACb,eAAS;AACT,UAAI,QAAQ,EAAG,SAAQ;AAAA,IAC7B,WAAe,QAAQ,KAAK;AACtB,cAAQ;AAAA,IACd;AACI,QAAI,MAAM,GAAG;AACX,aAAO;AACP,UAAI,MAAM,EAAG,OAAM;AAAA,IACzB,WAAe,MAAM,KAAK;AACpB,YAAM;AAAA,IACZ;AACI,QAAI,MAAM,MAAO,OAAM;AACvB,UAAM,SAAS,KAAK,SAAS,OAAO,GAAG;AACvC,WAAO,eAAe,QAAQ,QAAQ,SAAS;AAC/C,WAAO;AAAA,EACR;AACD,WAAS,YAAY,QAAQ,KAAK,QAAQ;AACxC,QAAI,SAAS,MAAM,KAAK,SAAS,EAAG,OAAM,IAAI,WAAW,oBAAoB;AAC7E,QAAI,SAAS,MAAM,OAAQ,OAAM,IAAI,WAAW,uCAAuC;AAAA,EAC3F;AACE,UAAQ,UAAU,aAAa,QAAQ,UAAU,aAAa,SAAS,WAAW,QAAQ,aAAa,UAAU;AAC/G,aAAS,WAAW;AACpB,kBAAc,gBAAgB;AAC9B,QAAI,CAAC,SAAU,aAAY,QAAQ,aAAa,KAAK,MAAM;AAC3D,QAAI,MAAM,KAAK,MAAM;AACrB,QAAI,MAAM;AACV,QAAI,IAAI;AACR,WAAO,EAAE,IAAI,gBAAgB,OAAO,MAAM;AACxC,aAAO,KAAK,SAAS,CAAC,IAAI;AAAA,IAChC;AACI,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,aAAa,QAAQ,UAAU,aAAa,SAAS,WAAW,QAAQ,aAAa,UAAU;AAC/G,aAAS,WAAW;AACpB,kBAAc,gBAAgB;AAC9B,QAAI,CAAC,UAAU;AACb,kBAAY,QAAQ,aAAa,KAAK,MAAM;AAAA,IAClD;AACI,QAAI,MAAM,KAAK,SAAS,EAAE,WAAW;AACrC,QAAI,MAAM;AACV,WAAO,cAAc,MAAM,OAAO,MAAM;AACtC,aAAO,KAAK,SAAS,EAAE,WAAW,IAAI;AAAA,IAC5C;AACI,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,YAAY,QAAQ,UAAU,YAAY,SAAS,UAAU,QAAQ,UAAU;AAC/F,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,KAAK,MAAM;AAAA,EACnB;AACD,UAAQ,UAAU,eAAe,QAAQ,UAAU,eAAe,SAAS,aAAa,QAAQ,UAAU;AACxG,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,KAAK,MAAM,IAAI,KAAK,SAAS,CAAC,KAAK;AAAA,EAC3C;AACD,UAAQ,UAAU,eAAe,QAAQ,UAAU,eAAe,SAAS,aAAa,QAAQ,UAAU;AACxG,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,KAAK,MAAM,KAAK,IAAI,KAAK,SAAS,CAAC;AAAA,EAC3C;AACD,UAAQ,UAAU,eAAe,QAAQ,UAAU,eAAe,SAAS,aAAa,QAAQ,UAAU;AACxG,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,YAAQ,KAAK,MAAM,IAAI,KAAK,SAAS,CAAC,KAAK,IAAI,KAAK,SAAS,CAAC,KAAK,MAAM,KAAK,SAAS,CAAC,IAAI;AAAA,EAC7F;AACD,UAAQ,UAAU,eAAe,QAAQ,UAAU,eAAe,SAAS,aAAa,QAAQ,UAAU;AACxG,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,KAAK,MAAM,IAAI,YAAY,KAAK,SAAS,CAAC,KAAK,KAAK,KAAK,SAAS,CAAC,KAAK,IAAI,KAAK,SAAS,CAAC;AAAA,EACnG;AACD,UAAQ,UAAU,kBAAkB,mBAAmB,SAAS,gBAAgB,QAAQ;AACtF,aAAS,WAAW;AACpB,mBAAe,QAAQ,QAAQ;AAC/B,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,OAAO,KAAK,SAAS,CAAC;AAC5B,QAAI,UAAU,UAAU,SAAS,QAAQ;AACvC,kBAAY,QAAQ,KAAK,SAAS,CAAC;AAAA,IACzC;AACI,UAAM,KAAK,QAAQ,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK;AAC9F,UAAM,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,OAAO,KAAK;AAC7F,WAAO,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE;AAAA,EAChD,CAAG;AACD,UAAQ,UAAU,kBAAkB,mBAAmB,SAAS,gBAAgB,QAAQ;AACtF,aAAS,WAAW;AACpB,mBAAe,QAAQ,QAAQ;AAC/B,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,OAAO,KAAK,SAAS,CAAC;AAC5B,QAAI,UAAU,UAAU,SAAS,QAAQ;AACvC,kBAAY,QAAQ,KAAK,SAAS,CAAC;AAAA,IACzC;AACI,UAAM,KAAK,QAAQ,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,KAAK,EAAE,MAAM;AAC/F,UAAM,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI;AAC3F,YAAQ,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAE;AAAA,EACjD,CAAG;AACD,UAAQ,UAAU,YAAY,SAAS,UAAU,QAAQ,aAAa,UAAU;AAC9E,aAAS,WAAW;AACpB,kBAAc,gBAAgB;AAC9B,QAAI,CAAC,SAAU,aAAY,QAAQ,aAAa,KAAK,MAAM;AAC3D,QAAI,MAAM,KAAK,MAAM;AACrB,QAAI,MAAM;AACV,QAAI,IAAI;AACR,WAAO,EAAE,IAAI,gBAAgB,OAAO,MAAM;AACxC,aAAO,KAAK,SAAS,CAAC,IAAI;AAAA,IAChC;AACI,WAAO;AACP,QAAI,OAAO,IAAK,QAAO,KAAK,IAAI,GAAG,IAAI,WAAW;AAClD,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,YAAY,SAAS,UAAU,QAAQ,aAAa,UAAU;AAC9E,aAAS,WAAW;AACpB,kBAAc,gBAAgB;AAC9B,QAAI,CAAC,SAAU,aAAY,QAAQ,aAAa,KAAK,MAAM;AAC3D,QAAI,IAAI;AACR,QAAI,MAAM;AACV,QAAI,MAAM,KAAK,SAAS,EAAE,CAAC;AAC3B,WAAO,IAAI,MAAM,OAAO,MAAM;AAC5B,aAAO,KAAK,SAAS,EAAE,CAAC,IAAI;AAAA,IAClC;AACI,WAAO;AACP,QAAI,OAAO,IAAK,QAAO,KAAK,IAAI,GAAG,IAAI,WAAW;AAClD,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,WAAW,SAAS,SAAS,QAAQ,UAAU;AAC/D,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,QAAI,EAAE,KAAK,MAAM,IAAI,KAAM,QAAO,KAAK,MAAM;AAC7C,YAAQ,MAAM,KAAK,MAAM,IAAI,KAAK;AAAA,EACnC;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,QAAQ,UAAU;AACrE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,UAAM,MAAM,KAAK,MAAM,IAAI,KAAK,SAAS,CAAC,KAAK;AAC/C,WAAO,MAAM,QAAQ,MAAM,aAAa;AAAA,EACzC;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,QAAQ,UAAU;AACrE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,UAAM,MAAM,KAAK,SAAS,CAAC,IAAI,KAAK,MAAM,KAAK;AAC/C,WAAO,MAAM,QAAQ,MAAM,aAAa;AAAA,EACzC;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,QAAQ,UAAU;AACrE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,KAAK,MAAM,IAAI,KAAK,SAAS,CAAC,KAAK,IAAI,KAAK,SAAS,CAAC,KAAK,KAAK,KAAK,SAAS,CAAC,KAAK;AAAA,EAC5F;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,QAAQ,UAAU;AACrE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,KAAK,MAAM,KAAK,KAAK,KAAK,SAAS,CAAC,KAAK,KAAK,KAAK,SAAS,CAAC,KAAK,IAAI,KAAK,SAAS,CAAC;AAAA,EAC7F;AACD,UAAQ,UAAU,iBAAiB,mBAAmB,SAAS,eAAe,QAAQ;AACpF,aAAS,WAAW;AACpB,mBAAe,QAAQ,QAAQ;AAC/B,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,OAAO,KAAK,SAAS,CAAC;AAC5B,QAAI,UAAU,UAAU,SAAS,QAAQ;AACvC,kBAAY,QAAQ,KAAK,SAAS,CAAC;AAAA,IACzC;AACI,UAAM,MAAM,KAAK,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,KAAK,IAAI,KAAK,SAAS,CAAC,IAAI,KAAK,MAAM,QAAQ;AACjG,YAAQ,OAAO,GAAG,KAAK,OAAO,EAAE,KAAK,OAAO,QAAQ,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,EAAE;AAAA,EACrI,CAAG;AACD,UAAQ,UAAU,iBAAiB,mBAAmB,SAAS,eAAe,QAAQ;AACpF,aAAS,WAAW;AACpB,mBAAe,QAAQ,QAAQ;AAC/B,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,OAAO,KAAK,SAAS,CAAC;AAC5B,QAAI,UAAU,UAAU,SAAS,QAAQ;AACvC,kBAAY,QAAQ,KAAK,SAAS,CAAC;AAAA,IACzC;AACI,UAAM,OAAO,SAAS;AAAA,IACtB,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,KAAK,EAAE,MAAM;AAClE,YAAQ,OAAO,GAAG,KAAK,OAAO,EAAE,KAAK,OAAO,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,KAAK,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,IAAI;AAAA,EACpI,CAAG;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,QAAQ,UAAU;AACrE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,YAAY,KAAK,MAAM,QAAQ,MAAM,IAAI,CAAC;AAAA,EAClD;AACD,UAAQ,UAAU,cAAc,SAAS,YAAY,QAAQ,UAAU;AACrE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,YAAY,KAAK,MAAM,QAAQ,OAAO,IAAI,CAAC;AAAA,EACnD;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,QAAQ,UAAU;AACvE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,YAAY,KAAK,MAAM,QAAQ,MAAM,IAAI,CAAC;AAAA,EAClD;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,QAAQ,UAAU;AACvE,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,aAAY,QAAQ,GAAG,KAAK,MAAM;AACjD,WAAO,YAAY,KAAK,MAAM,QAAQ,OAAO,IAAI,CAAC;AAAA,EACnD;AACD,WAAS,SAAS,KAAK,OAAO,QAAQ,KAAK,KAAK,KAAK;AACnD,QAAI,CAAC,QAAQ,SAAS,GAAG,EAAG,OAAM,IAAI,UAAU,6CAA6C;AAC7F,QAAI,QAAQ,OAAO,QAAQ,IAAK,OAAM,IAAI,WAAW,mCAAmC;AACxF,QAAI,SAAS,MAAM,IAAI,OAAQ,OAAM,IAAI,WAAW,oBAAoB;AAAA,EAC5E;AACE,UAAQ,UAAU,cAAc,QAAQ,UAAU,cAAc,SAAS,YAAY,OAAO,QAAQ,aAAa,UAAU;AACzH,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,kBAAc,gBAAgB;AAC9B,QAAI,CAAC,UAAU;AACb,YAAM,WAAW,KAAK,IAAI,GAAG,IAAI,WAAW,IAAI;AAChD,eAAS,MAAM,OAAO,QAAQ,aAAa,UAAU,CAAC;AAAA,IAC5D;AACI,QAAI,MAAM;AACV,QAAI,IAAI;AACR,SAAK,MAAM,IAAI,QAAQ;AACvB,WAAO,EAAE,IAAI,gBAAgB,OAAO,MAAM;AACxC,WAAK,SAAS,CAAC,IAAI,QAAQ,MAAM;AAAA,IACvC;AACI,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,cAAc,QAAQ,UAAU,cAAc,SAAS,YAAY,OAAO,QAAQ,aAAa,UAAU;AACzH,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,kBAAc,gBAAgB;AAC9B,QAAI,CAAC,UAAU;AACb,YAAM,WAAW,KAAK,IAAI,GAAG,IAAI,WAAW,IAAI;AAChD,eAAS,MAAM,OAAO,QAAQ,aAAa,UAAU,CAAC;AAAA,IAC5D;AACI,QAAI,IAAI,cAAc;AACtB,QAAI,MAAM;AACV,SAAK,SAAS,CAAC,IAAI,QAAQ;AAC3B,WAAO,EAAE,KAAK,MAAM,OAAO,MAAM;AAC/B,WAAK,SAAS,CAAC,IAAI,QAAQ,MAAM;AAAA,IACvC;AACI,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,aAAa,QAAQ,UAAU,aAAa,SAAS,WAAW,OAAO,QAAQ,UAAU;AACzG,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,KAAK,CAAC;AACtD,SAAK,MAAM,IAAI,QAAQ;AACvB,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,gBAAgB,QAAQ,UAAU,gBAAgB,SAAS,cAAc,OAAO,QAAQ,UAAU;AAClH,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,OAAO,CAAC;AACxD,SAAK,MAAM,IAAI,QAAQ;AACvB,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,gBAAgB,QAAQ,UAAU,gBAAgB,SAAS,cAAc,OAAO,QAAQ,UAAU;AAClH,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,OAAO,CAAC;AACxD,SAAK,MAAM,IAAI,UAAU;AACzB,SAAK,SAAS,CAAC,IAAI,QAAQ;AAC3B,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,gBAAgB,QAAQ,UAAU,gBAAgB,SAAS,cAAc,OAAO,QAAQ,UAAU;AAClH,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,YAAY,CAAC;AAC7D,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,MAAM,IAAI,QAAQ;AACvB,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,gBAAgB,QAAQ,UAAU,gBAAgB,SAAS,cAAc,OAAO,QAAQ,UAAU;AAClH,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,YAAY,CAAC;AAC7D,SAAK,MAAM,IAAI,UAAU;AACzB,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,QAAQ;AAC3B,WAAO,SAAS;AAAA,EACjB;AACD,WAAS,eAAe,KAAK,OAAO,QAAQ,KAAK,KAAK;AACpD,eAAW,OAAO,KAAK,KAAK,KAAK,QAAQ,CAAC;AAC1C,QAAI,KAAK,OAAO,QAAQ,OAAO,UAAU,CAAC;AAC1C,QAAI,QAAQ,IAAI;AAChB,SAAK,MAAM;AACX,QAAI,QAAQ,IAAI;AAChB,SAAK,MAAM;AACX,QAAI,QAAQ,IAAI;AAChB,SAAK,MAAM;AACX,QAAI,QAAQ,IAAI;AAChB,QAAI,KAAK,OAAO,SAAS,OAAO,EAAE,IAAI,OAAO,UAAU,CAAC;AACxD,QAAI,QAAQ,IAAI;AAChB,SAAK,MAAM;AACX,QAAI,QAAQ,IAAI;AAChB,SAAK,MAAM;AACX,QAAI,QAAQ,IAAI;AAChB,SAAK,MAAM;AACX,QAAI,QAAQ,IAAI;AAChB,WAAO;AAAA,EACX;AACE,WAAS,eAAe,KAAK,OAAO,QAAQ,KAAK,KAAK;AACpD,eAAW,OAAO,KAAK,KAAK,KAAK,QAAQ,CAAC;AAC1C,QAAI,KAAK,OAAO,QAAQ,OAAO,UAAU,CAAC;AAC1C,QAAI,SAAS,CAAC,IAAI;AAClB,SAAK,MAAM;AACX,QAAI,SAAS,CAAC,IAAI;AAClB,SAAK,MAAM;AACX,QAAI,SAAS,CAAC,IAAI;AAClB,SAAK,MAAM;AACX,QAAI,SAAS,CAAC,IAAI;AAClB,QAAI,KAAK,OAAO,SAAS,OAAO,EAAE,IAAI,OAAO,UAAU,CAAC;AACxD,QAAI,SAAS,CAAC,IAAI;AAClB,SAAK,MAAM;AACX,QAAI,SAAS,CAAC,IAAI;AAClB,SAAK,MAAM;AACX,QAAI,SAAS,CAAC,IAAI;AAClB,SAAK,MAAM;AACX,QAAI,MAAM,IAAI;AACd,WAAO,SAAS;AAAA,EACpB;AACE,UAAQ,UAAU,mBAAmB,mBAAmB,SAAS,iBAAiB,OAAO,SAAS,GAAG;AACnG,WAAO,eAAe,MAAM,OAAO,QAAQ,OAAO,CAAC,GAAG,OAAO,oBAAoB,CAAC;AAAA,EACtF,CAAG;AACD,UAAQ,UAAU,mBAAmB,mBAAmB,SAAS,iBAAiB,OAAO,SAAS,GAAG;AACnG,WAAO,eAAe,MAAM,OAAO,QAAQ,OAAO,CAAC,GAAG,OAAO,oBAAoB,CAAC;AAAA,EACtF,CAAG;AACD,UAAQ,UAAU,aAAa,SAAS,WAAW,OAAO,QAAQ,aAAa,UAAU;AACvF,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,UAAU;AACb,YAAM,QAAQ,KAAK,IAAI,GAAG,IAAI,cAAc,CAAC;AAC7C,eAAS,MAAM,OAAO,QAAQ,aAAa,QAAQ,GAAG,CAAC,KAAK;AAAA,IAClE;AACI,QAAI,IAAI;AACR,QAAI,MAAM;AACV,QAAI,MAAM;AACV,SAAK,MAAM,IAAI,QAAQ;AACvB,WAAO,EAAE,IAAI,gBAAgB,OAAO,MAAM;AACxC,UAAI,QAAQ,KAAK,QAAQ,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,GAAG;AACxD,cAAM;AAAA,MACd;AACM,WAAK,SAAS,CAAC,KAAK,QAAQ,OAAO,KAAK,MAAM;AAAA,IACpD;AACI,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,aAAa,SAAS,WAAW,OAAO,QAAQ,aAAa,UAAU;AACvF,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,UAAU;AACb,YAAM,QAAQ,KAAK,IAAI,GAAG,IAAI,cAAc,CAAC;AAC7C,eAAS,MAAM,OAAO,QAAQ,aAAa,QAAQ,GAAG,CAAC,KAAK;AAAA,IAClE;AACI,QAAI,IAAI,cAAc;AACtB,QAAI,MAAM;AACV,QAAI,MAAM;AACV,SAAK,SAAS,CAAC,IAAI,QAAQ;AAC3B,WAAO,EAAE,KAAK,MAAM,OAAO,MAAM;AAC/B,UAAI,QAAQ,KAAK,QAAQ,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,GAAG;AACxD,cAAM;AAAA,MACd;AACM,WAAK,SAAS,CAAC,KAAK,QAAQ,OAAO,KAAK,MAAM;AAAA,IACpD;AACI,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,YAAY,SAAS,UAAU,OAAO,QAAQ,UAAU;AACxE,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,KAAK,IAAI;AACzD,QAAI,QAAQ,EAAG,SAAQ,MAAM,QAAQ;AACrC,SAAK,MAAM,IAAI,QAAQ;AACvB,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,OAAO,QAAQ,UAAU;AAC9E,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,OAAO,MAAM;AAC7D,SAAK,MAAM,IAAI,QAAQ;AACvB,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,OAAO,QAAQ,UAAU;AAC9E,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,OAAO,MAAM;AAC7D,SAAK,MAAM,IAAI,UAAU;AACzB,SAAK,SAAS,CAAC,IAAI,QAAQ;AAC3B,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,OAAO,QAAQ,UAAU;AAC9E,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,YAAY,WAAW;AACvE,SAAK,MAAM,IAAI,QAAQ;AACvB,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,OAAO,QAAQ,UAAU;AAC9E,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,SAAU,UAAS,MAAM,OAAO,QAAQ,GAAG,YAAY,WAAW;AACvE,QAAI,QAAQ,EAAG,SAAQ,aAAa,QAAQ;AAC5C,SAAK,MAAM,IAAI,UAAU;AACzB,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,UAAU;AAC7B,SAAK,SAAS,CAAC,IAAI,QAAQ;AAC3B,WAAO,SAAS;AAAA,EACjB;AACD,UAAQ,UAAU,kBAAkB,mBAAmB,SAAS,gBAAgB,OAAO,SAAS,GAAG;AACjG,WAAO,eAAe,MAAM,OAAO,QAAQ,CAAC,OAAO,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAAA,EAC1G,CAAG;AACD,UAAQ,UAAU,kBAAkB,mBAAmB,SAAS,gBAAgB,OAAO,SAAS,GAAG;AACjG,WAAO,eAAe,MAAM,OAAO,QAAQ,CAAC,OAAO,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAAA,EAC1G,CAAG;AACD,WAAS,aAAa,KAAK,OAAO,QAAQ,KAAK,KAAK,KAAK;AACvD,QAAI,SAAS,MAAM,IAAI,OAAQ,OAAM,IAAI,WAAW,oBAAoB;AACxE,QAAI,SAAS,EAAG,OAAM,IAAI,WAAW,oBAAoB;AAAA,EAC7D;AACE,WAAS,WAAW,KAAK,OAAO,QAAQ,cAAc,UAAU;AAC9D,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,UAAU;AACb,mBAAa,KAAK,OAAO,QAAQ,CAAC;AAAA,IACxC;AACI,gBAAY,MAAM,KAAK,OAAO,QAAQ,cAAc,IAAI,CAAC;AACzD,WAAO,SAAS;AAAA,EACpB;AACE,UAAQ,UAAU,eAAe,SAAS,aAAa,OAAO,QAAQ,UAAU;AAC9E,WAAO,WAAW,MAAM,OAAO,QAAQ,MAAM,QAAQ;AAAA,EACtD;AACD,UAAQ,UAAU,eAAe,SAAS,aAAa,OAAO,QAAQ,UAAU;AAC9E,WAAO,WAAW,MAAM,OAAO,QAAQ,OAAO,QAAQ;AAAA,EACvD;AACD,WAAS,YAAY,KAAK,OAAO,QAAQ,cAAc,UAAU;AAC/D,YAAQ,CAAC;AACT,aAAS,WAAW;AACpB,QAAI,CAAC,UAAU;AACb,mBAAa,KAAK,OAAO,QAAQ,CAAC;AAAA,IACxC;AACI,gBAAY,MAAM,KAAK,OAAO,QAAQ,cAAc,IAAI,CAAC;AACzD,WAAO,SAAS;AAAA,EACpB;AACE,UAAQ,UAAU,gBAAgB,SAAS,cAAc,OAAO,QAAQ,UAAU;AAChF,WAAO,YAAY,MAAM,OAAO,QAAQ,MAAM,QAAQ;AAAA,EACvD;AACD,UAAQ,UAAU,gBAAgB,SAAS,cAAc,OAAO,QAAQ,UAAU;AAChF,WAAO,YAAY,MAAM,OAAO,QAAQ,OAAO,QAAQ;AAAA,EACxD;AACD,UAAQ,UAAU,OAAO,SAAS,KAAK,QAAQ,aAAa,OAAO,KAAK;AACtE,QAAI,CAAC,QAAQ,SAAS,MAAM,EAAG,OAAM,IAAI,UAAU,6BAA6B;AAChF,QAAI,CAAC,MAAO,SAAQ;AACpB,QAAI,CAAC,OAAO,QAAQ,EAAG,OAAM,KAAK;AAClC,QAAI,eAAe,OAAO,OAAQ,eAAc,OAAO;AACvD,QAAI,CAAC,YAAa,eAAc;AAChC,QAAI,MAAM,KAAK,MAAM,MAAO,OAAM;AAClC,QAAI,QAAQ,MAAO,QAAO;AAC1B,QAAI,OAAO,WAAW,KAAK,KAAK,WAAW,EAAG,QAAO;AACrD,QAAI,cAAc,GAAG;AACnB,YAAM,IAAI,WAAW,2BAA2B;AAAA,IACtD;AACI,QAAI,QAAQ,KAAK,SAAS,KAAK,OAAQ,OAAM,IAAI,WAAW,oBAAoB;AAChF,QAAI,MAAM,EAAG,OAAM,IAAI,WAAW,yBAAyB;AAC3D,QAAI,MAAM,KAAK,OAAQ,OAAM,KAAK;AAClC,QAAI,OAAO,SAAS,cAAc,MAAM,OAAO;AAC7C,YAAM,OAAO,SAAS,cAAc;AAAA,IAC1C;AACI,UAAM,MAAM,MAAM;AAClB,QAAI,SAAS,UAAU,OAAO,iBAAiB,UAAU,eAAe,YAAY;AAClF,WAAK,WAAW,aAAa,OAAO,GAAG;AAAA,IAC7C,OAAW;AACL,uBAAiB,UAAU,IAAI;AAAA,QAC7B;AAAA,QACA,KAAK,SAAS,OAAO,GAAG;AAAA,QACxB;AAAA,MACD;AAAA,IACP;AACI,WAAO;AAAA,EACR;AACD,UAAQ,UAAU,OAAO,SAAS,KAAK,KAAK,OAAO,KAAK,UAAU;AAChE,QAAI,OAAO,QAAQ,UAAU;AAC3B,UAAI,OAAO,UAAU,UAAU;AAC7B,mBAAW;AACX,gBAAQ;AACR,cAAM,KAAK;AAAA,MACnB,WAAiB,OAAO,QAAQ,UAAU;AAClC,mBAAW;AACX,cAAM,KAAK;AAAA,MACnB;AACM,UAAI,aAAa,UAAU,OAAO,aAAa,UAAU;AACvD,cAAM,IAAI,UAAU,2BAA2B;AAAA,MACvD;AACM,UAAI,OAAO,aAAa,YAAY,CAAC,QAAQ,WAAW,QAAQ,GAAG;AACjE,cAAM,IAAI,UAAU,uBAAuB,QAAQ;AAAA,MAC3D;AACM,UAAI,IAAI,WAAW,GAAG;AACpB,cAAM,QAAQ,IAAI,WAAW,CAAC;AAC9B,YAAI,aAAa,UAAU,QAAQ,OAAO,aAAa,UAAU;AAC/D,gBAAM;AAAA,QAChB;AAAA,MACA;AAAA,IACA,WAAe,OAAO,QAAQ,UAAU;AAClC,YAAM,MAAM;AAAA,IAClB,WAAe,OAAO,QAAQ,WAAW;AACnC,YAAM,OAAO,GAAG;AAAA,IACtB;AACI,QAAI,QAAQ,KAAK,KAAK,SAAS,SAAS,KAAK,SAAS,KAAK;AACzD,YAAM,IAAI,WAAW,oBAAoB;AAAA,IAC/C;AACI,QAAI,OAAO,OAAO;AAChB,aAAO;AAAA,IACb;AACI,YAAQ,UAAU;AAClB,UAAM,QAAQ,SAAS,KAAK,SAAS,QAAQ;AAC7C,QAAI,CAAC,IAAK,OAAM;AAChB,QAAI;AACJ,QAAI,OAAO,QAAQ,UAAU;AAC3B,WAAK,IAAI,OAAO,IAAI,KAAK,EAAE,GAAG;AAC5B,aAAK,CAAC,IAAI;AAAA,MAClB;AAAA,IACA,OAAW;AACL,YAAM,QAAQ,QAAQ,SAAS,GAAG,IAAI,MAAM,QAAQ,KAAK,KAAK,QAAQ;AACtE,YAAM,MAAM,MAAM;AAClB,UAAI,QAAQ,GAAG;AACb,cAAM,IAAI,UAAU,gBAAgB,MAAM,mCAAmC;AAAA,MACrF;AACM,WAAK,IAAI,GAAG,IAAI,MAAM,OAAO,EAAE,GAAG;AAChC,aAAK,IAAI,KAAK,IAAI,MAAM,IAAI,GAAG;AAAA,MACvC;AAAA,IACA;AACI,WAAO;AAAA,EACR;AACD,QAAM,SAAS,CAAE;AACjB,WAAS,EAAE,KAAK,YAAY,MAAM;AAChC,WAAO,GAAG,IAAI,MAAM,kBAAkB,KAAK;AAAA,MACzC,cAAc;AACZ,cAAO;AACP,eAAO,eAAe,MAAM,WAAW;AAAA,UACrC,OAAO,WAAW,MAAM,MAAM,SAAS;AAAA,UACvC,UAAU;AAAA,UACV,cAAc;AAAA,QACxB,CAAS;AACD,aAAK,OAAO,GAAG,KAAK,IAAI,KAAK,GAAG;AAChC,aAAK;AACL,eAAO,KAAK;AAAA,MACpB;AAAA,MACM,IAAI,OAAO;AACT,eAAO;AAAA,MACf;AAAA,MACM,IAAI,KAAK,OAAO;AACd,eAAO,eAAe,MAAM,QAAQ;AAAA,UAClC,cAAc;AAAA,UACd,YAAY;AAAA,UACZ;AAAA,UACA,UAAU;AAAA,QACpB,CAAS;AAAA,MACT;AAAA,MACM,WAAW;AACT,eAAO,GAAG,KAAK,IAAI,KAAK,GAAG,MAAM,KAAK,OAAO;AAAA,MACrD;AAAA,IACK;AAAA,EACL;AACE;AAAA,IACE;AAAA,IACA,SAAS,MAAM;AACb,UAAI,MAAM;AACR,eAAO,GAAG,IAAI;AAAA,MACtB;AACM,aAAO;AAAA,IACR;AAAA,IACD;AAAA,EACD;AACD;AAAA,IACE;AAAA,IACA,SAAS,MAAM,QAAQ;AACrB,aAAO,QAAQ,IAAI,oDAAoD,OAAO,MAAM;AAAA,IACrF;AAAA,IACD;AAAA,EACD;AACD;AAAA,IACE;AAAA,IACA,SAAS,KAAK,OAAO,OAAO;AAC1B,UAAI,MAAM,iBAAiB,GAAG;AAC9B,UAAI,WAAW;AACf,UAAI,OAAO,UAAU,KAAK,KAAK,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI;AACxD,mBAAW,sBAAsB,OAAO,KAAK,CAAC;AAAA,MACtD,WAAiB,OAAO,UAAU,UAAU;AACpC,mBAAW,OAAO,KAAK;AACvB,YAAI,QAAQ,OAAO,CAAC,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,OAAO,CAAC,KAAK,OAAO,EAAE,IAAI;AACzE,qBAAW,sBAAsB,QAAQ;AAAA,QACnD;AACQ,oBAAY;AAAA,MACpB;AACM,aAAO,eAAe,KAAK,cAAc,QAAQ;AACjD,aAAO;AAAA,IACR;AAAA,IACD;AAAA,EACD;AACD,WAAS,sBAAsB,KAAK;AAClC,QAAI,MAAM;AACV,QAAI,IAAI,IAAI;AACZ,UAAM,QAAQ,IAAI,CAAC,MAAM,MAAM,IAAI;AACnC,WAAO,KAAK,QAAQ,GAAG,KAAK,GAAG;AAC7B,YAAM,IAAI,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG;AAAA,IACzC;AACI,WAAO,GAAG,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG;AAAA,EACnC;AACE,WAAS,YAAY,KAAK,QAAQ,aAAa;AAC7C,mBAAe,QAAQ,QAAQ;AAC/B,QAAI,IAAI,MAAM,MAAM,UAAU,IAAI,SAAS,WAAW,MAAM,QAAQ;AAClE,kBAAY,QAAQ,IAAI,UAAU,cAAc,EAAE;AAAA,IACxD;AAAA,EACA;AACE,WAAS,WAAW,OAAO,KAAK,KAAK,KAAK,QAAQ,aAAa;AAC7D,QAAI,QAAQ,OAAO,QAAQ,KAAK;AAC9B,YAAM,IAAI,OAAO,QAAQ,WAAW,MAAM;AAC1C,UAAI;AACJ;AACE,YAAI,QAAQ,KAAK,QAAQ,OAAO,CAAC,GAAG;AAClC,kBAAQ,OAAO,CAAC,WAAW,CAAC,QAAQ,cAAc,KAAK,CAAC,GAAG,CAAC;AAAA,QACtE,OAAe;AACL,kBAAQ,SAAS,CAAC,QAAQ,cAAc,KAAK,IAAI,CAAC,GAAG,CAAC,iBAAiB,cAAc,KAAK,IAAI,CAAC,GAAG,CAAC;AAAA,QAC7G;AAAA,MACA;AACM,YAAM,IAAI,OAAO,iBAAiB,SAAS,OAAO,KAAK;AAAA,IAC7D;AACI,gBAAY,KAAK,QAAQ,WAAW;AAAA,EACxC;AACE,WAAS,eAAe,OAAO,MAAM;AACnC,QAAI,OAAO,UAAU,UAAU;AAC7B,YAAM,IAAI,OAAO,qBAAqB,MAAM,UAAU,KAAK;AAAA,IACjE;AAAA,EACA;AACE,WAAS,YAAY,OAAO,QAAQ,MAAM;AACxC,QAAI,KAAK,MAAM,KAAK,MAAM,OAAO;AAC/B,qBAAe,OAAO,IAAI;AAC1B,YAAM,IAAI,OAAO,iBAAiB,UAAU,cAAc,KAAK;AAAA,IACrE;AACI,QAAI,SAAS,GAAG;AACd,YAAM,IAAI,OAAO,yBAA0B;AAAA,IACjD;AACI,UAAM,IAAI,OAAO;AAAA,MACf;AAAA,MACA,MAAM,CAAC,WAAW,MAAM;AAAA,MACxB;AAAA,IACD;AAAA,EACL;AACE,QAAM,oBAAoB;AAC1B,WAAS,YAAY,KAAK;AACxB,UAAM,IAAI,MAAM,GAAG,EAAE,CAAC;AACtB,UAAM,IAAI,KAAI,EAAG,QAAQ,mBAAmB,EAAE;AAC9C,QAAI,IAAI,SAAS,EAAG,QAAO;AAC3B,WAAO,IAAI,SAAS,MAAM,GAAG;AAC3B,YAAM,MAAM;AAAA,IAClB;AACI,WAAO;AAAA,EACX;AACE,WAAS,YAAY,QAAQ,OAAO;AAClC,YAAQ,SAAS;AACjB,QAAI;AACJ,UAAM,SAAS,OAAO;AACtB,QAAI,gBAAgB;AACpB,UAAM,QAAQ,CAAE;AAChB,aAAS,IAAI,GAAG,IAAI,QAAQ,EAAE,GAAG;AAC/B,kBAAY,OAAO,WAAW,CAAC;AAC/B,UAAI,YAAY,SAAS,YAAY,OAAO;AAC1C,YAAI,CAAC,eAAe;AAClB,cAAI,YAAY,OAAO;AACrB,iBAAK,SAAS,KAAK,GAAI,OAAM,KAAK,KAAK,KAAK,GAAG;AAC/C;AAAA,UACZ,WAAqB,IAAI,MAAM,QAAQ;AAC3B,iBAAK,SAAS,KAAK,GAAI,OAAM,KAAK,KAAK,KAAK,GAAG;AAC/C;AAAA,UACZ;AACU,0BAAgB;AAChB;AAAA,QACV;AACQ,YAAI,YAAY,OAAO;AACrB,eAAK,SAAS,KAAK,GAAI,OAAM,KAAK,KAAK,KAAK,GAAG;AAC/C,0BAAgB;AAChB;AAAA,QACV;AACQ,qBAAa,gBAAgB,SAAS,KAAK,YAAY,SAAS;AAAA,MACjE,WAAU,eAAe;AACxB,aAAK,SAAS,KAAK,GAAI,OAAM,KAAK,KAAK,KAAK,GAAG;AAAA,MACvD;AACM,sBAAgB;AAChB,UAAI,YAAY,KAAK;AACnB,aAAK,SAAS,KAAK,EAAG;AACtB,cAAM,KAAK,SAAS;AAAA,MAC5B,WAAiB,YAAY,MAAM;AAC3B,aAAK,SAAS,KAAK,EAAG;AACtB,cAAM;AAAA,UACJ,aAAa,IAAI;AAAA,UACjB,YAAY,KAAK;AAAA,QAClB;AAAA,MACT,WAAiB,YAAY,OAAO;AAC5B,aAAK,SAAS,KAAK,EAAG;AACtB,cAAM;AAAA,UACJ,aAAa,KAAK;AAAA,UAClB,aAAa,IAAI,KAAK;AAAA,UACtB,YAAY,KAAK;AAAA,QAClB;AAAA,MACT,WAAiB,YAAY,SAAS;AAC9B,aAAK,SAAS,KAAK,EAAG;AACtB,cAAM;AAAA,UACJ,aAAa,KAAK;AAAA,UAClB,aAAa,KAAK,KAAK;AAAA,UACvB,aAAa,IAAI,KAAK;AAAA,UACtB,YAAY,KAAK;AAAA,QAClB;AAAA,MACT,OAAa;AACL,cAAM,IAAI,MAAM,oBAAoB;AAAA,MAC5C;AAAA,IACA;AACI,WAAO;AAAA,EACX;AACE,WAAS,aAAa,KAAK;AACzB,UAAM,YAAY,CAAE;AACpB,aAAS,IAAI,GAAG,IAAI,IAAI,QAAQ,EAAE,GAAG;AACnC,gBAAU,KAAK,IAAI,WAAW,CAAC,IAAI,GAAG;AAAA,IAC5C;AACI,WAAO;AAAA,EACX;AACE,WAAS,eAAe,KAAK,OAAO;AAClC,QAAI,GAAG,IAAI;AACX,UAAM,YAAY,CAAE;AACpB,aAAS,IAAI,GAAG,IAAI,IAAI,QAAQ,EAAE,GAAG;AACnC,WAAK,SAAS,KAAK,EAAG;AACtB,UAAI,IAAI,WAAW,CAAC;AACpB,WAAK,KAAK;AACV,WAAK,IAAI;AACT,gBAAU,KAAK,EAAE;AACjB,gBAAU,KAAK,EAAE;AAAA,IACvB;AACI,WAAO;AAAA,EACX;AACE,WAAS,cAAc,KAAK;AAC1B,WAAO,OAAO,YAAY,YAAY,GAAG,CAAC;AAAA,EAC9C;AACE,WAAS,WAAW,KAAK,KAAK,QAAQ,QAAQ;AAC5C,QAAI;AACJ,SAAK,IAAI,GAAG,IAAI,QAAQ,EAAE,GAAG;AAC3B,UAAI,IAAI,UAAU,IAAI,UAAU,KAAK,IAAI,OAAQ;AACjD,UAAI,IAAI,MAAM,IAAI,IAAI,CAAC;AAAA,IAC7B;AACI,WAAO;AAAA,EACX;AACE,WAAS,WAAW,KAAK,MAAM;AAC7B,WAAO,eAAe,QAAQ,OAAO,QAAQ,IAAI,eAAe,QAAQ,IAAI,YAAY,QAAQ,QAAQ,IAAI,YAAY,SAAS,KAAK;AAAA,EAC1I;AACE,WAAS,YAAY,KAAK;AACxB,WAAO,QAAQ;AAAA,EACnB;AACE,QAAM,sBAAsB,WAAW;AACrC,UAAM,WAAW;AACjB,UAAM,QAAQ,IAAI,MAAM,GAAG;AAC3B,aAAS,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AAC3B,YAAM,MAAM,IAAI;AAChB,eAAS,IAAI,GAAG,IAAI,IAAI,EAAE,GAAG;AAC3B,cAAM,MAAM,CAAC,IAAI,SAAS,CAAC,IAAI,SAAS,CAAC;AAAA,MACjD;AAAA,IACA;AACI,WAAO;AAAA,EACX,EAAK;AACH,WAAS,mBAAmB,IAAI;AAC9B,WAAO,OAAO,WAAW,cAAc,yBAAyB;AAAA,EACpE;AACE,WAAS,yBAAyB;AAChC,UAAM,IAAI,MAAM,sBAAsB;AAAA,EAC1C;AACA,GAAG,MAAM;AACT,MAAM,UAAU,OAAO;AACvB,MAAM,WAAW,OAAO;AACxB,MAAM,SAAS,cAAc,UAAU;AACvC,SAAS,wBAAwB,GAAG;AAClC,SAAO,KAAK,EAAE,cAAc,OAAO,UAAU,eAAe,KAAK,GAAG,SAAS,IAAI,EAAE,SAAS,IAAI;AAClG;AACA,IAAI,UAAU,EAAE,SAAS,GAAI;AAC7B,IAAI,UAAU,QAAQ,UAAU,CAAE;AAClC,IAAI;AACJ,IAAI;AACJ,SAAS,mBAAmB;AAC1B,QAAM,IAAI,MAAM,iCAAiC;AACnD;AACA,SAAS,sBAAsB;AAC7B,QAAM,IAAI,MAAM,mCAAmC;AACrD;AAAA,CACC,WAAW;AACV,MAAI;AACF,QAAI,OAAO,eAAe,YAAY;AACpC,yBAAmB;AAAA,IACzB,OAAW;AACL,yBAAmB;AAAA,IACzB;AAAA,EACG,SAAQ,GAAG;AACV,uBAAmB;AAAA,EACvB;AACE,MAAI;AACF,QAAI,OAAO,iBAAiB,YAAY;AACtC,2BAAqB;AAAA,IAC3B,OAAW;AACL,2BAAqB;AAAA,IAC3B;AAAA,EACG,SAAQ,GAAG;AACV,yBAAqB;AAAA,EACzB;AACA,GAAI;AACJ,SAAS,WAAW,KAAK;AACvB,MAAI,qBAAqB,YAAY;AACnC,WAAO,WAAW,KAAK,CAAC;AAAA,EAC5B;AACE,OAAK,qBAAqB,oBAAoB,CAAC,qBAAqB,YAAY;AAC9E,uBAAmB;AACnB,WAAO,WAAW,KAAK,CAAC;AAAA,EAC5B;AACE,MAAI;AACF,WAAO,iBAAiB,KAAK,CAAC;AAAA,EAC/B,SAAQ,GAAG;AACV,QAAI;AACF,aAAO,iBAAiB,KAAK,MAAM,KAAK,CAAC;AAAA,IAC1C,SAAQ,IAAI;AACX,aAAO,iBAAiB,KAAK,MAAM,KAAK,CAAC;AAAA,IAC/C;AAAA,EACA;AACA;AACA,SAAS,gBAAgB,QAAQ;AAC/B,MAAI,uBAAuB,cAAc;AACvC,WAAO,aAAa,MAAM;AAAA,EAC9B;AACE,OAAK,uBAAuB,uBAAuB,CAAC,uBAAuB,cAAc;AACvF,yBAAqB;AACrB,WAAO,aAAa,MAAM;AAAA,EAC9B;AACE,MAAI;AACF,WAAO,mBAAmB,MAAM;AAAA,EACjC,SAAQ,GAAG;AACV,QAAI;AACF,aAAO,mBAAmB,KAAK,MAAM,MAAM;AAAA,IAC5C,SAAQ,IAAI;AACX,aAAO,mBAAmB,KAAK,MAAM,MAAM;AAAA,IACjD;AAAA,EACA;AACA;AACA,IAAI,QAAQ,CAAE;AACd,IAAI,WAAW;AACf,IAAI;AACJ,IAAI,aAAa;AACjB,SAAS,kBAAkB;AACzB,MAAI,CAAC,YAAY,CAAC,cAAc;AAC9B;AAAA,EACJ;AACE,aAAW;AACX,MAAI,aAAa,QAAQ;AACvB,YAAQ,aAAa,OAAO,KAAK;AAAA,EACrC,OAAS;AACL,iBAAa;AAAA,EACjB;AACE,MAAI,MAAM,QAAQ;AAChB,eAAY;AAAA,EAChB;AACA;AACA,SAAS,aAAa;AACpB,MAAI,UAAU;AACZ;AAAA,EACJ;AACE,MAAI,UAAU,WAAW,eAAe;AACxC,aAAW;AACX,MAAI,MAAM,MAAM;AAChB,SAAO,KAAK;AACV,mBAAe;AACf,YAAQ,CAAE;AACV,WAAO,EAAE,aAAa,KAAK;AACzB,UAAI,cAAc;AAChB,qBAAa,UAAU,EAAE,IAAK;AAAA,MACtC;AAAA,IACA;AACI,iBAAa;AACb,UAAM,MAAM;AAAA,EAChB;AACE,iBAAe;AACf,aAAW;AACX,kBAAgB,OAAO;AACzB;AACA,QAAQ,WAAW,SAAS,KAAK;AAC/B,MAAI,OAAO,IAAI,MAAM,UAAU,SAAS,CAAC;AACzC,MAAI,UAAU,SAAS,GAAG;AACxB,aAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AACzC,WAAK,IAAI,CAAC,IAAI,UAAU,CAAC;AAAA,IAC/B;AAAA,EACA;AACE,QAAM,KAAK,IAAI,KAAK,KAAK,IAAI,CAAC;AAC9B,MAAI,MAAM,WAAW,KAAK,CAAC,UAAU;AACnC,eAAW,UAAU;AAAA,EACzB;AACA;AACA,SAAS,KAAK,KAAK,OAAO;AACxB,OAAK,MAAM;AACX,OAAK,QAAQ;AACf;AACA,KAAK,UAAU,MAAM,WAAW;AAC9B,OAAK,IAAI,MAAM,MAAM,KAAK,KAAK;AACjC;AACA,QAAQ,QAAQ;AAChB,QAAQ,UAAU;AAClB,QAAQ,MAAM,CAAE;AAChB,QAAQ,OAAO,CAAE;AACjB,QAAQ,UAAU;AAClB,QAAQ,WAAW,CAAE;AACrB,SAAS,SAAS;AAClB;AACA,QAAQ,KAAK;AACb,QAAQ,cAAc;AACtB,QAAQ,OAAO;AACf,QAAQ,MAAM;AACd,QAAQ,iBAAiB;AACzB,QAAQ,qBAAqB;AAC7B,QAAQ,OAAO;AACf,QAAQ,kBAAkB;AAC1B,QAAQ,sBAAsB;AAC9B,QAAQ,YAAY,SAAS,MAAM;AACjC,SAAO,CAAE;AACX;AACA,QAAQ,UAAU,SAAS,MAAM;AAC/B,QAAM,IAAI,MAAM,kCAAkC;AACpD;AACA,QAAQ,MAAM,WAAW;AACvB,SAAO;AACT;AACA,QAAQ,QAAQ,SAAS,KAAK;AAC5B,QAAM,IAAI,MAAM,gCAAgC;AAClD;AACA,QAAQ,QAAQ,WAAW;AACzB,SAAO;AACT;AACA,IAAI,iBAAiB,QAAQ;AACxB,MAAC,YAA4B,wCAAwB,cAAc;AACxE,SAAS,KAAK,IAAI,SAAS;AACzB,SAAO,SAAS,OAAO;AACrB,WAAO,GAAG,MAAM,SAAS,SAAS;AAAA,EACnC;AACH;AACA,MAAM,EAAE,SAAQ,IAAK,OAAO;AAC5B,MAAM,EAAE,eAAgB,IAAG;AAC3B,MAAM,SAA0B,kBAAC,UAAU,CAAC,UAAU;AACpD,QAAM,MAAM,SAAS,KAAK,KAAK;AAC/B,SAAO,MAAM,GAAG,MAAM,MAAM,GAAG,IAAI,IAAI,MAAM,GAAG,EAAE,EAAE,YAAW;AACjE,GAAmB,uBAAO,OAAO,IAAI,CAAC;AACtC,MAAM,aAAa,CAAC,SAAS;AAC3B,SAAO,KAAK,YAAa;AACzB,SAAO,CAAC,UAAU,OAAO,KAAK,MAAM;AACtC;AACA,MAAM,aAAa,CAAC,SAAS,CAAC,UAAU,OAAO,UAAU;AACzD,MAAM,EAAE,QAAS,IAAG;AACpB,MAAM,cAAc,WAAW,WAAW;AAC1C,SAAS,SAAS,KAAK;AACrB,SAAO,QAAQ,QAAQ,CAAC,YAAY,GAAG,KAAK,IAAI,gBAAgB,QAAQ,CAAC,YAAY,IAAI,WAAW,KAAK,WAAW,IAAI,YAAY,QAAQ,KAAK,IAAI,YAAY,SAAS,GAAG;AAC/K;AACA,MAAM,gBAAgB,WAAW,aAAa;AAC9C,SAAS,kBAAkB,KAAK;AAC9B,MAAI;AACJ,MAAI,OAAO,gBAAgB,eAAe,YAAY,QAAQ;AAC5D,aAAS,YAAY,OAAO,GAAG;AAAA,EACnC,OAAS;AACL,aAAS,OAAO,IAAI,UAAU,cAAc,IAAI,MAAM;AAAA,EAC1D;AACE,SAAO;AACT;AACA,MAAM,WAAW,WAAW,QAAQ;AACpC,MAAM,aAAa,WAAW,UAAU;AACxC,MAAM,WAAW,WAAW,QAAQ;AACpC,MAAM,WAAW,CAAC,UAAU,UAAU,QAAQ,OAAO,UAAU;AAC/D,MAAM,YAAY,CAAC,UAAU,UAAU,QAAQ,UAAU;AACzD,MAAM,gBAAgB,CAAC,QAAQ;AAC7B,MAAI,OAAO,GAAG,MAAM,UAAU;AAC5B,WAAO;AAAA,EACX;AACE,QAAM,aAAa,eAAe,GAAG;AACrC,UAAQ,eAAe,QAAQ,eAAe,OAAO,aAAa,OAAO,eAAe,UAAU,MAAM,SAAS,EAAE,OAAO,eAAe,QAAQ,EAAE,OAAO,YAAY;AACxK;AACA,MAAM,SAAS,WAAW,MAAM;AAChC,MAAM,SAAS,WAAW,MAAM;AAChC,MAAM,SAAS,WAAW,MAAM;AAChC,MAAM,aAAa,WAAW,UAAU;AACxC,MAAM,WAAW,CAAC,QAAQ,SAAS,GAAG,KAAK,WAAW,IAAI,IAAI;AAC9D,MAAM,aAAa,CAAC,UAAU;AAC5B,MAAI;AACJ,SAAO,UAAU,OAAO,aAAa,cAAc,iBAAiB,YAAY,WAAW,MAAM,MAAM,OAAO,OAAO,OAAO,KAAK,OAAO;AAAA,EACxI,SAAS,YAAY,WAAW,MAAM,QAAQ,KAAK,MAAM,eAAe;AAC1E;AACA,MAAM,oBAAoB,WAAW,iBAAiB;AACtD,MAAM,CAAC,kBAAkB,WAAW,YAAY,SAAS,IAAI,CAAC,kBAAkB,WAAW,YAAY,SAAS,EAAE,IAAI,UAAU;AAChI,MAAM,OAAO,CAAC,QAAQ,IAAI,OAAO,IAAI,KAAI,IAAK,IAAI,QAAQ,sCAAsC,EAAE;AAClG,SAAS,QAAQ,KAAK,IAAI,EAAE,aAAa,MAAO,IAAG,IAAI;AACrD,MAAI,QAAQ,QAAQ,OAAO,QAAQ,aAAa;AAC9C;AAAA,EACJ;AACE,MAAI;AACJ,MAAI;AACJ,MAAI,OAAO,QAAQ,UAAU;AAC3B,UAAM,CAAC,GAAG;AAAA,EACd;AACE,MAAI,QAAQ,GAAG,GAAG;AAChB,SAAK,IAAI,GAAG,IAAI,IAAI,QAAQ,IAAI,GAAG,KAAK;AACtC,SAAG,KAAK,MAAM,IAAI,CAAC,GAAG,GAAG,GAAG;AAAA,IAClC;AAAA,EACA,OAAS;AACL,UAAM,OAAO,aAAa,OAAO,oBAAoB,GAAG,IAAI,OAAO,KAAK,GAAG;AAC3E,UAAM,MAAM,KAAK;AACjB,QAAI;AACJ,SAAK,IAAI,GAAG,IAAI,KAAK,KAAK;AACxB,YAAM,KAAK,CAAC;AACZ,SAAG,KAAK,MAAM,IAAI,GAAG,GAAG,KAAK,GAAG;AAAA,IACtC;AAAA,EACA;AACA;AACA,SAAS,QAAQ,KAAK,KAAK;AACzB,QAAM,IAAI,YAAa;AACvB,QAAM,OAAO,OAAO,KAAK,GAAG;AAC5B,MAAI,IAAI,KAAK;AACb,MAAI;AACJ,SAAO,MAAM,GAAG;AACd,WAAO,KAAK,CAAC;AACb,QAAI,QAAQ,KAAK,eAAe;AAC9B,aAAO;AAAA,IACb;AAAA,EACA;AACE,SAAO;AACT;AACA,MAAM,WAAW,MAAM;AACrB,MAAI,OAAO,eAAe,YAAa,QAAO;AAC9C,SAAO,OAAO,SAAS,cAAc,OAAO,OAAO,WAAW,cAAc,SAAS;AACvF,GAAI;AACJ,MAAM,mBAAmB,CAAC,YAAY,CAAC,YAAY,OAAO,KAAK,YAAY;AAC3E,SAAS,QAAQ;AACf,QAAM,EAAE,SAAQ,IAAK,iBAAiB,IAAI,KAAK,QAAQ,CAAE;AACzD,QAAM,SAAS,CAAE;AACjB,QAAM,cAAc,CAAC,KAAK,QAAQ;AAChC,UAAM,YAAY,YAAY,QAAQ,QAAQ,GAAG,KAAK;AACtD,QAAI,cAAc,OAAO,SAAS,CAAC,KAAK,cAAc,GAAG,GAAG;AAC1D,aAAO,SAAS,IAAI,MAAM,OAAO,SAAS,GAAG,GAAG;AAAA,IACtD,WAAe,cAAc,GAAG,GAAG;AAC7B,aAAO,SAAS,IAAI,MAAM,CAAA,GAAI,GAAG;AAAA,IACvC,WAAe,QAAQ,GAAG,GAAG;AACvB,aAAO,SAAS,IAAI,IAAI,MAAO;AAAA,IACrC,OAAW;AACL,aAAO,SAAS,IAAI;AAAA,IAC1B;AAAA,EACG;AACD,WAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,IAAI,GAAG,KAAK;AAChD,cAAU,CAAC,KAAK,QAAQ,UAAU,CAAC,GAAG,WAAW;AAAA,EACrD;AACE,SAAO;AACT;AACA,MAAM,SAAS,CAAC,GAAG,GAAG,SAAS,EAAE,WAAY,IAAG,OAAO;AACrD,UAAQ,GAAG,CAAC,KAAK,QAAQ;AACvB,QAAI,WAAW,WAAW,GAAG,GAAG;AAC9B,QAAE,GAAG,IAAI,KAAK,KAAK,OAAO;AAAA,IAChC,OAAW;AACL,QAAE,GAAG,IAAI;AAAA,IACf;AAAA,EACA,GAAK,EAAE,WAAU,CAAE;AACjB,SAAO;AACT;AACA,MAAM,WAAW,CAAC,YAAY;AAC5B,MAAI,QAAQ,WAAW,CAAC,MAAM,OAAO;AACnC,cAAU,QAAQ,MAAM,CAAC;AAAA,EAC7B;AACE,SAAO;AACT;AACA,MAAM,WAAW,CAAC,aAAa,kBAAkB,OAAO,iBAAiB;AACvE,cAAY,YAAY,OAAO,OAAO,iBAAiB,WAAW,YAAY;AAC9E,cAAY,UAAU,cAAc;AACpC,SAAO,eAAe,aAAa,SAAS;AAAA,IAC1C,OAAO,iBAAiB;AAAA,EAC5B,CAAG;AACD,WAAS,OAAO,OAAO,YAAY,WAAW,KAAK;AACrD;AACA,MAAM,eAAe,CAAC,WAAW,SAAS,SAAS,eAAe;AAChE,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,QAAM,SAAS,CAAE;AACjB,YAAU,WAAW,CAAE;AACvB,MAAI,aAAa,KAAM,QAAO;AAC9B,KAAG;AACD,YAAQ,OAAO,oBAAoB,SAAS;AAC5C,QAAI,MAAM;AACV,WAAO,MAAM,GAAG;AACd,aAAO,MAAM,CAAC;AACd,WAAK,CAAC,cAAc,WAAW,MAAM,WAAW,OAAO,MAAM,CAAC,OAAO,IAAI,GAAG;AAC1E,gBAAQ,IAAI,IAAI,UAAU,IAAI;AAC9B,eAAO,IAAI,IAAI;AAAA,MACvB;AAAA,IACA;AACI,gBAAY,YAAY,SAAS,eAAe,SAAS;AAAA,EAC7D,SAAW,cAAc,CAAC,WAAW,QAAQ,WAAW,OAAO,MAAM,cAAc,OAAO;AACxF,SAAO;AACT;AACA,MAAM,WAAW,CAAC,KAAK,cAAc,aAAa;AAChD,QAAM,OAAO,GAAG;AAChB,MAAI,aAAa,UAAU,WAAW,IAAI,QAAQ;AAChD,eAAW,IAAI;AAAA,EACnB;AACE,cAAY,aAAa;AACzB,QAAM,YAAY,IAAI,QAAQ,cAAc,QAAQ;AACpD,SAAO,cAAc,MAAM,cAAc;AAC3C;AACA,MAAM,UAAU,CAAC,UAAU;AACzB,MAAI,CAAC,MAAO,QAAO;AACnB,MAAI,QAAQ,KAAK,EAAG,QAAO;AAC3B,MAAI,IAAI,MAAM;AACd,MAAI,CAAC,SAAS,CAAC,EAAG,QAAO;AACzB,QAAM,MAAM,IAAI,MAAM,CAAC;AACvB,SAAO,MAAM,GAAG;AACd,QAAI,CAAC,IAAI,MAAM,CAAC;AAAA,EACpB;AACE,SAAO;AACT;AACA,MAAM,eAAgC,kBAAC,eAAe;AACpD,SAAO,CAAC,UAAU;AAChB,WAAO,cAAc,iBAAiB;AAAA,EACvC;AACH,GAAG,OAAO,eAAe,eAAe,eAAe,UAAU,CAAC;AAClE,MAAM,eAAe,CAAC,KAAK,OAAO;AAChC,QAAM,YAAY,OAAO,IAAI,OAAO,QAAQ;AAC5C,QAAM,WAAW,UAAU,KAAK,GAAG;AACnC,MAAI;AACJ,UAAQ,SAAS,SAAS,KAAI,MAAO,CAAC,OAAO,MAAM;AACjD,UAAM,OAAO,OAAO;AACpB,OAAG,KAAK,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;AAAA,EACjC;AACA;AACA,MAAM,WAAW,CAAC,QAAQ,QAAQ;AAChC,MAAI;AACJ,QAAM,MAAM,CAAE;AACd,UAAQ,UAAU,OAAO,KAAK,GAAG,OAAO,MAAM;AAC5C,QAAI,KAAK,OAAO;AAAA,EACpB;AACE,SAAO;AACT;AACA,MAAM,aAAa,WAAW,iBAAiB;AAC/C,MAAM,cAAc,CAAC,QAAQ;AAC3B,SAAO,IAAI,YAAW,EAAG;AAAA,IACvB;AAAA,IACA,SAAS,SAAS,GAAG,IAAI,IAAI;AAC3B,aAAO,GAAG,YAAW,IAAK;AAAA,IAChC;AAAA,EACG;AACH;AACA,MAAM,kBAAkB,CAAC,EAAE,gBAAgB,gBAAe,MAAO,CAAC,KAAK,SAAS,gBAAgB,KAAK,KAAK,IAAI,GAAG,OAAO,SAAS;AACjI,MAAM,WAAW,WAAW,QAAQ;AACpC,MAAM,oBAAoB,CAAC,KAAK,YAAY;AAC1C,QAAM,eAAe,OAAO,0BAA0B,GAAG;AACzD,QAAM,qBAAqB,CAAE;AAC7B,UAAQ,cAAc,CAAC,YAAY,SAAS;AAC1C,QAAI;AACJ,SAAK,MAAM,QAAQ,YAAY,MAAM,GAAG,OAAO,OAAO;AACpD,yBAAmB,IAAI,IAAI,OAAO;AAAA,IACxC;AAAA,EACA,CAAG;AACD,SAAO,iBAAiB,KAAK,kBAAkB;AACjD;AACA,MAAM,gBAAgB,CAAC,QAAQ;AAC7B,oBAAkB,KAAK,CAAC,YAAY,SAAS;AAC3C,QAAI,WAAW,GAAG,KAAK,CAAC,aAAa,UAAU,QAAQ,EAAE,QAAQ,IAAI,MAAM,IAAI;AAC7E,aAAO;AAAA,IACb;AACI,UAAM,QAAQ,IAAI,IAAI;AACtB,QAAI,CAAC,WAAW,KAAK,EAAG;AACxB,eAAW,aAAa;AACxB,QAAI,cAAc,YAAY;AAC5B,iBAAW,WAAW;AACtB;AAAA,IACN;AACI,QAAI,CAAC,WAAW,KAAK;AACnB,iBAAW,MAAM,MAAM;AACrB,cAAM,MAAM,uCAAuC,OAAO,GAAG;AAAA,MAC9D;AAAA,IACP;AAAA,EACA,CAAG;AACH;AACA,MAAM,cAAc,CAAC,eAAe,cAAc;AAChD,QAAM,MAAM,CAAE;AACd,QAAM,SAAS,CAAC,QAAQ;AACtB,QAAI,QAAQ,CAAC,UAAU;AACrB,UAAI,KAAK,IAAI;AAAA,IACnB,CAAK;AAAA,EACF;AACD,UAAQ,aAAa,IAAI,OAAO,aAAa,IAAI,OAAO,OAAO,aAAa,EAAE,MAAM,SAAS,CAAC;AAC9F,SAAO;AACT;AACA,MAAM,OAAO,MAAM;AACnB;AACA,MAAM,iBAAiB,CAAC,OAAO,iBAAiB;AAC9C,SAAO,SAAS,QAAQ,OAAO,SAAS,QAAQ,CAAC,KAAK,IAAI,QAAQ;AACpE;AACA,SAAS,oBAAoB,OAAO;AAClC,SAAO,CAAC,EAAE,SAAS,WAAW,MAAM,MAAM,KAAK,MAAM,OAAO,WAAW,MAAM,cAAc,MAAM,OAAO,QAAQ;AAClH;AACA,MAAM,eAAe,CAAC,QAAQ;AAC5B,QAAM,QAAQ,IAAI,MAAM,EAAE;AAC1B,QAAM,QAAQ,CAAC,QAAQ,MAAM;AAC3B,QAAI,SAAS,MAAM,GAAG;AACpB,UAAI,MAAM,QAAQ,MAAM,KAAK,GAAG;AAC9B;AAAA,MACR;AACM,UAAI,EAAE,YAAY,SAAS;AACzB,cAAM,CAAC,IAAI;AACX,cAAM,SAAS,QAAQ,MAAM,IAAI,CAAE,IAAG,CAAE;AACxC,gBAAQ,QAAQ,CAAC,OAAO,QAAQ;AAC9B,gBAAM,eAAe,MAAM,OAAO,IAAI,CAAC;AACvC,WAAC,YAAY,YAAY,MAAM,OAAO,GAAG,IAAI;AAAA,QACvD,CAAS;AACD,cAAM,CAAC,IAAI;AACX,eAAO;AAAA,MACf;AAAA,IACA;AACI,WAAO;AAAA,EACR;AACD,SAAO,MAAM,KAAK,CAAC;AACrB;AACA,MAAM,YAAY,WAAW,eAAe;AAC5C,MAAM,aAAa,CAAC,UAAU,UAAU,SAAS,KAAK,KAAK,WAAW,KAAK,MAAM,WAAW,MAAM,IAAI,KAAK,WAAW,MAAM,KAAK;AACjI,MAAM,iBAAiB,CAAC,uBAAuB,yBAAyB;AACtE,MAAI,uBAAuB;AACzB,WAAO;AAAA,EACX;AACE,SAAO,wBAAwB,CAAC,OAAO,cAAc;AACnD,YAAQ,iBAAiB,WAAW,CAAC,EAAE,QAAQ,KAAI,MAAO;AACxD,UAAI,WAAW,WAAW,SAAS,OAAO;AACxC,kBAAU,UAAU,UAAU,QAAS;AAAA,MAC/C;AAAA,IACK,GAAE,KAAK;AACR,WAAO,CAAC,OAAO;AACb,gBAAU,KAAK,EAAE;AACjB,cAAQ,YAAY,OAAO,GAAG;AAAA,IAC/B;AAAA,EACF,GAAE,SAAS,KAAK,QAAQ,IAAI,CAAE,CAAA,IAAI,CAAC,OAAO,WAAW,EAAE;AAC1D;AAAA,EACE,OAAO,iBAAiB;AAAA,EACxB,WAAW,QAAQ,WAAW;AAChC;AACA,MAAM,OAAO,OAAO,mBAAmB,cAAc,eAAe,KAAK,OAAO,IAAI,OAAO,cAAc,eAAe,UAAU,YAAY;AAC9I,MAAM,UAAU;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA;AAAA,EAEZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,cAAc;AAAA,EACd;AACF;AACA,SAAS,WAAW,SAAS,OAAO,QAAQ,SAAS,UAAU;AAC7D,QAAM,KAAK,IAAI;AACf,MAAI,MAAM,mBAAmB;AAC3B,UAAM,kBAAkB,MAAM,KAAK,WAAW;AAAA,EAClD,OAAS;AACL,SAAK,QAAQ,IAAI,MAAK,EAAG;AAAA,EAC7B;AACE,OAAK,UAAU;AACf,OAAK,OAAO;AACZ,YAAU,KAAK,OAAO;AACtB,aAAW,KAAK,SAAS;AACzB,cAAY,KAAK,UAAU;AAC3B,MAAI,UAAU;AACZ,SAAK,WAAW;AAChB,SAAK,SAAS,SAAS,SAAS,SAAS,SAAS;AAAA,EACtD;AACA;AACA,QAAQ,SAAS,YAAY,OAAO;AAAA,EAClC,QAAQ,SAAS,SAAS;AACxB,WAAO;AAAA;AAAA,MAEL,SAAS,KAAK;AAAA,MACd,MAAM,KAAK;AAAA;AAAA,MAEX,aAAa,KAAK;AAAA,MAClB,QAAQ,KAAK;AAAA;AAAA,MAEb,UAAU,KAAK;AAAA,MACf,YAAY,KAAK;AAAA,MACjB,cAAc,KAAK;AAAA,MACnB,OAAO,KAAK;AAAA;AAAA,MAEZ,QAAQ,QAAQ,aAAa,KAAK,MAAM;AAAA,MACxC,MAAM,KAAK;AAAA,MACX,QAAQ,KAAK;AAAA,IACd;AAAA,EACL;AACA,CAAC;AACD,MAAM,cAAc,WAAW;AAC/B,MAAM,cAAc,CAAE;AACtB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAEF,EAAE,QAAQ,CAAC,UAAU;AACnB,cAAY,KAAK,IAAI,EAAE,OAAO,MAAO;AACvC,CAAC;AACD,OAAO,iBAAiB,YAAY,WAAW;AAC/C,OAAO,eAAe,aAAa,gBAAgB,EAAE,OAAO,KAAI,CAAE;AAClE,WAAW,OAAO,CAAC,OAAO,OAAO,QAAQ,SAAS,UAAU,gBAAgB;AAC1E,QAAM,aAAa,OAAO,OAAO,WAAW;AAC5C,UAAQ,aAAa,OAAO,YAAY,SAAS,QAAQ,KAAK;AAC5D,WAAO,QAAQ,MAAM;AAAA,EACtB,GAAE,CAAC,SAAS;AACX,WAAO,SAAS;AAAA,EACpB,CAAG;AACD,aAAW,KAAK,YAAY,MAAM,SAAS,OAAO,QAAQ,SAAS,QAAQ;AAC3E,aAAW,QAAQ;AACnB,aAAW,OAAO,MAAM;AACxB,iBAAe,OAAO,OAAO,YAAY,WAAW;AACpD,SAAO;AACT;AACA,MAAM,cAAc;AACpB,SAAS,YAAY,OAAO;AAC1B,SAAO,QAAQ,cAAc,KAAK,KAAK,QAAQ,QAAQ,KAAK;AAC9D;AACA,SAAS,eAAe,KAAK;AAC3B,SAAO,QAAQ,SAAS,KAAK,IAAI,IAAI,IAAI,MAAM,GAAG,EAAE,IAAI;AAC1D;AACA,SAAS,UAAU,MAAM,KAAK,MAAM;AAClC,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO,KAAK,OAAO,GAAG,EAAE,IAAI,SAAS,KAAK,OAAO,GAAG;AAClD,YAAQ,eAAe,KAAK;AAC5B,WAAO,CAAC,QAAQ,IAAI,MAAM,QAAQ,MAAM;AAAA,EACzC,CAAA,EAAE,KAAK,OAAO,MAAM,EAAE;AACzB;AACA,SAAS,YAAY,KAAK;AACxB,SAAO,QAAQ,QAAQ,GAAG,KAAK,CAAC,IAAI,KAAK,WAAW;AACtD;AACA,MAAM,aAAa,QAAQ,aAAa,SAAS,CAAE,GAAE,MAAM,SAAS,OAAO,MAAM;AAC/E,SAAO,WAAW,KAAK,IAAI;AAC7B,CAAC;AACD,SAAS,WAAW,KAAK,UAAU,SAAS;AAC1C,MAAI,CAAC,QAAQ,SAAS,GAAG,GAAG;AAC1B,UAAM,IAAI,UAAU,0BAA0B;AAAA,EAClD;AACE,aAAW,YAAY,IAAI,SAAU;AACrC,YAAU,QAAQ,aAAa,SAAS;AAAA,IACtC,YAAY;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA,EACV,GAAE,OAAO,SAAS,QAAQ,QAAQ,QAAQ;AACzC,WAAO,CAAC,QAAQ,YAAY,OAAO,MAAM,CAAC;AAAA,EAC9C,CAAG;AACD,QAAM,aAAa,QAAQ;AAC3B,QAAM,UAAU,QAAQ,WAAW;AACnC,QAAM,OAAO,QAAQ;AACrB,QAAM,UAAU,QAAQ;AACxB,QAAM,QAAQ,QAAQ,QAAQ,OAAO,SAAS,eAAe;AAC7D,QAAM,UAAU,SAAS,QAAQ,oBAAoB,QAAQ;AAC7D,MAAI,CAAC,QAAQ,WAAW,OAAO,GAAG;AAChC,UAAM,IAAI,UAAU,4BAA4B;AAAA,EACpD;AACE,WAAS,aAAa,OAAO;AAC3B,QAAI,UAAU,KAAM,QAAO;AAC3B,QAAI,QAAQ,OAAO,KAAK,GAAG;AACzB,aAAO,MAAM,YAAa;AAAA,IAChC;AACI,QAAI,CAAC,WAAW,QAAQ,OAAO,KAAK,GAAG;AACrC,YAAM,IAAI,WAAW,8CAA8C;AAAA,IACzE;AACI,QAAI,QAAQ,cAAc,KAAK,KAAK,QAAQ,aAAa,KAAK,GAAG;AAC/D,aAAO,WAAW,OAAO,SAAS,aAAa,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,KAAK,KAAK;AAAA,IAC3F;AACI,WAAO;AAAA,EACX;AACE,WAAS,eAAe,OAAO,KAAK,MAAM;AACxC,QAAI,MAAM;AACV,QAAI,SAAS,CAAC,QAAQ,OAAO,UAAU,UAAU;AAC/C,UAAI,QAAQ,SAAS,KAAK,IAAI,GAAG;AAC/B,cAAM,aAAa,MAAM,IAAI,MAAM,GAAG,EAAE;AACxC,gBAAQ,KAAK,UAAU,KAAK;AAAA,MACpC,WAAiB,QAAQ,QAAQ,KAAK,KAAK,YAAY,KAAK,MAAM,QAAQ,WAAW,KAAK,KAAK,QAAQ,SAAS,KAAK,IAAI,OAAO,MAAM,QAAQ,QAAQ,KAAK,IAAI;AACvJ,cAAM,eAAe,GAAG;AACxB,YAAI,QAAQ,SAAS,KAAK,IAAI,OAAO;AACnC,YAAE,QAAQ,YAAY,EAAE,KAAK,OAAO,SAAS,SAAS;AAAA;AAAA,YAEpD,YAAY,OAAO,UAAU,CAAC,GAAG,GAAG,OAAO,IAAI,IAAI,YAAY,OAAO,MAAM,MAAM;AAAA,YAClF,aAAa,EAAE;AAAA,UAChB;AAAA,QACX,CAAS;AACD,eAAO;AAAA,MACf;AAAA,IACA;AACI,QAAI,YAAY,KAAK,GAAG;AACtB,aAAO;AAAA,IACb;AACI,aAAS,OAAO,UAAU,MAAM,KAAK,IAAI,GAAG,aAAa,KAAK,CAAC;AAC/D,WAAO;AAAA,EACX;AACE,QAAM,QAAQ,CAAE;AAChB,QAAM,iBAAiB,OAAO,OAAO,YAAY;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,EACJ,CAAG;AACD,WAAS,MAAM,OAAO,MAAM;AAC1B,QAAI,QAAQ,YAAY,KAAK,EAAG;AAChC,QAAI,MAAM,QAAQ,KAAK,MAAM,IAAI;AAC/B,YAAM,MAAM,oCAAoC,KAAK,KAAK,GAAG,CAAC;AAAA,IACpE;AACI,UAAM,KAAK,KAAK;AAChB,YAAQ,QAAQ,OAAO,SAAS,KAAK,IAAI,KAAK;AAC5C,YAAM,SAAS,EAAE,QAAQ,YAAY,EAAE,KAAK,OAAO,SAAS,QAAQ;AAAA,QAClE;AAAA,QACA;AAAA,QACA,QAAQ,SAAS,GAAG,IAAI,IAAI,KAAM,IAAG;AAAA,QACrC;AAAA,QACA;AAAA,MACD;AACD,UAAI,WAAW,MAAM;AACnB,cAAM,IAAI,OAAO,KAAK,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;AAAA,MACjD;AAAA,IACA,CAAK;AACD,UAAM,IAAK;AAAA,EACf;AACE,MAAI,CAAC,QAAQ,SAAS,GAAG,GAAG;AAC1B,UAAM,IAAI,UAAU,wBAAwB;AAAA,EAChD;AACE,QAAM,GAAG;AACT,SAAO;AACT;AACA,SAAS,SAAS,KAAK;AACrB,QAAM,UAAU;AAAA,IACd,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AACD,SAAO,mBAAmB,GAAG,EAAE,QAAQ,oBAAoB,SAAS,SAAS,OAAO;AAClF,WAAO,QAAQ,KAAK;AAAA,EACxB,CAAG;AACH;AACA,SAAS,qBAAqB,QAAQ,SAAS;AAC7C,OAAK,SAAS,CAAE;AAChB,YAAU,WAAW,QAAQ,MAAM,OAAO;AAC5C;AACA,MAAM,YAAY,qBAAqB;AACvC,UAAU,SAAS,SAAS,OAAO,MAAM,OAAO;AAC9C,OAAK,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAChC;AACA,UAAU,WAAW,SAAS,UAAU,SAAS;AAC/C,QAAM,UAAU,UAAU,SAAS,OAAO;AACxC,WAAO,QAAQ,KAAK,MAAM,OAAO,QAAQ;AAAA,EAC7C,IAAM;AACJ,SAAO,KAAK,OAAO,IAAI,SAAS,KAAK,MAAM;AACzC,WAAO,QAAQ,KAAK,CAAC,CAAC,IAAI,MAAM,QAAQ,KAAK,CAAC,CAAC;AAAA,EACnD,GAAK,EAAE,EAAE,KAAK,GAAG;AACjB;AACA,SAAS,OAAO,KAAK;AACnB,SAAO,mBAAmB,GAAG,EAAE,QAAQ,SAAS,GAAG,EAAE,QAAQ,QAAQ,GAAG,EAAE,QAAQ,SAAS,GAAG,EAAE,QAAQ,QAAQ,GAAG,EAAE,QAAQ,SAAS,GAAG,EAAE,QAAQ,SAAS,GAAG;AACjK;AACA,SAAS,SAAS,KAAK,QAAQ,SAAS;AACtC,MAAI,CAAC,QAAQ;AACX,WAAO;AAAA,EACX;AACE,QAAM,UAAU,WAAW,QAAQ,UAAU;AAC7C,MAAI,QAAQ,WAAW,OAAO,GAAG;AAC/B,cAAU;AAAA,MACR,WAAW;AAAA,IACZ;AAAA,EACL;AACE,QAAM,cAAc,WAAW,QAAQ;AACvC,MAAI;AACJ,MAAI,aAAa;AACf,uBAAmB,YAAY,QAAQ,OAAO;AAAA,EAClD,OAAS;AACL,uBAAmB,QAAQ,kBAAkB,MAAM,IAAI,OAAO,aAAa,IAAI,qBAAqB,QAAQ,OAAO,EAAE,SAAS,OAAO;AAAA,EACzI;AACE,MAAI,kBAAkB;AACpB,UAAM,gBAAgB,IAAI,QAAQ,GAAG;AACrC,QAAI,kBAAkB,IAAI;AACxB,YAAM,IAAI,MAAM,GAAG,aAAa;AAAA,IACtC;AACI,YAAQ,IAAI,QAAQ,GAAG,MAAM,KAAK,MAAM,OAAO;AAAA,EACnD;AACE,SAAO;AACT;AACA,MAAM,mBAAmB;AAAA,EACvB,cAAc;AACZ,SAAK,WAAW,CAAE;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASE,IAAI,WAAW,UAAU,SAAS;AAChC,SAAK,SAAS,KAAK;AAAA,MACjB;AAAA,MACA;AAAA,MACA,aAAa,UAAU,QAAQ,cAAc;AAAA,MAC7C,SAAS,UAAU,QAAQ,UAAU;AAAA,IAC3C,CAAK;AACD,WAAO,KAAK,SAAS,SAAS;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQE,MAAM,IAAI;AACR,QAAI,KAAK,SAAS,EAAE,GAAG;AACrB,WAAK,SAAS,EAAE,IAAI;AAAA,IAC1B;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAME,QAAQ;AACN,QAAI,KAAK,UAAU;AACjB,WAAK,WAAW,CAAE;AAAA,IACxB;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWE,QAAQ,IAAI;AACV,YAAQ,QAAQ,KAAK,UAAU,SAAS,eAAe,GAAG;AACxD,UAAI,MAAM,MAAM;AACd,WAAG,CAAC;AAAA,MACZ;AAAA,IACA,CAAK;AAAA,EACL;AACA;AACA,MAAM,uBAAuB;AAAA,EAC3B,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,qBAAqB;AACvB;AACA,MAAM,oBAAoB,OAAO,oBAAoB,cAAc,kBAAkB;AACrF,MAAM,aAAa,OAAO,aAAa,cAAc,WAAW;AAChE,MAAM,SAAS,OAAO,SAAS,cAAc,OAAO;AACpD,MAAM,aAAa;AAAA,EACjB,WAAW;AAAA,EACX,SAAS;AAAA,IACP,iBAAiB;AAAA,IACjB,UAAU;AAAA,IACV,MAAM;AAAA,EACP;AAAA,EACD,WAAW,CAAC,QAAQ,SAAS,QAAQ,QAAQ,OAAO,MAAM;AAC5D;AACA,MAAM,gBAAgB,OAAO,WAAW,eAAe,OAAO,aAAa;AAC3E,MAAM,aAAa,OAAO,cAAc,YAAY,aAAa;AACjE,MAAM,wBAAwB,kBAAkB,CAAC,cAAc,CAAC,eAAe,gBAAgB,IAAI,EAAE,QAAQ,WAAW,OAAO,IAAI;AACnI,MAAM,kCAAkC,MAAM;AAC5C,SAAO,OAAO,sBAAsB;AAAA,EACpC,gBAAgB,qBAAqB,OAAO,KAAK,kBAAkB;AACrE,GAAI;AACJ,MAAM,SAAS,iBAAiB,OAAO,SAAS,QAAQ;AACxD,MAAM,QAAwB,uBAAO,OAAuB,uBAAO,eAAe;AAAA,EAChF,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AACF,GAAG,OAAO,aAAa,EAAE,OAAO,SAAU,CAAA,CAAC;AAC3C,MAAM,WAAW;AAAA,EACf,GAAG;AAAA,EACH,GAAG;AACL;AACA,SAAS,iBAAiB,MAAM,SAAS;AACvC,SAAO,WAAW,MAAM,IAAI,SAAS,QAAQ,gBAAiB,GAAE,OAAO,OAAO;AAAA,IAC5E,SAAS,SAAS,OAAO,KAAK,MAAM,SAAS;AAC3C,UAAI,SAAS,UAAU,QAAQ,SAAS,KAAK,GAAG;AAC9C,aAAK,OAAO,KAAK,MAAM,SAAS,QAAQ,CAAC;AACzC,eAAO;AAAA,MACf;AACM,aAAO,QAAQ,eAAe,MAAM,MAAM,SAAS;AAAA,IACzD;AAAA,EACG,GAAE,OAAO,CAAC;AACb;AACA,SAAS,cAAc,MAAM;AAC3B,SAAO,QAAQ,SAAS,iBAAiB,IAAI,EAAE,IAAI,CAAC,UAAU;AAC5D,WAAO,MAAM,CAAC,MAAM,OAAO,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC;AAAA,EACvD,CAAG;AACH;AACA,SAAS,cAAc,KAAK;AAC1B,QAAM,MAAM,CAAE;AACd,QAAM,OAAO,OAAO,KAAK,GAAG;AAC5B,MAAI;AACJ,QAAM,MAAM,KAAK;AACjB,MAAI;AACJ,OAAK,IAAI,GAAG,IAAI,KAAK,KAAK;AACxB,UAAM,KAAK,CAAC;AACZ,QAAI,GAAG,IAAI,IAAI,GAAG;AAAA,EACtB;AACE,SAAO;AACT;AACA,SAAS,eAAe,UAAU;AAChC,WAAS,UAAU,MAAM,OAAO,QAAQ,OAAO;AAC7C,QAAI,OAAO,KAAK,OAAO;AACvB,QAAI,SAAS,YAAa,QAAO;AACjC,UAAM,eAAe,OAAO,SAAS,CAAC,IAAI;AAC1C,UAAM,SAAS,SAAS,KAAK;AAC7B,WAAO,CAAC,QAAQ,QAAQ,QAAQ,MAAM,IAAI,OAAO,SAAS;AAC1D,QAAI,QAAQ;AACV,UAAI,QAAQ,WAAW,QAAQ,IAAI,GAAG;AACpC,eAAO,IAAI,IAAI,CAAC,OAAO,IAAI,GAAG,KAAK;AAAA,MAC3C,OAAa;AACL,eAAO,IAAI,IAAI;AAAA,MACvB;AACM,aAAO,CAAC;AAAA,IACd;AACI,QAAI,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,SAAS,OAAO,IAAI,CAAC,GAAG;AACpD,aAAO,IAAI,IAAI,CAAE;AAAA,IACvB;AACI,UAAM,SAAS,UAAU,MAAM,OAAO,OAAO,IAAI,GAAG,KAAK;AACzD,QAAI,UAAU,QAAQ,QAAQ,OAAO,IAAI,CAAC,GAAG;AAC3C,aAAO,IAAI,IAAI,cAAc,OAAO,IAAI,CAAC;AAAA,IAC/C;AACI,WAAO,CAAC;AAAA,EACZ;AACE,MAAI,QAAQ,WAAW,QAAQ,KAAK,QAAQ,WAAW,SAAS,OAAO,GAAG;AACxE,UAAM,MAAM,CAAE;AACd,YAAQ,aAAa,UAAU,CAAC,MAAM,UAAU;AAC9C,gBAAU,cAAc,IAAI,GAAG,OAAO,KAAK,CAAC;AAAA,IAClD,CAAK;AACD,WAAO;AAAA,EACX;AACE,SAAO;AACT;AACA,SAAS,gBAAgB,UAAU,QAAQ,SAAS;AAClD,MAAI,QAAQ,SAAS,QAAQ,GAAG;AAC9B,QAAI;AACF,OAAC,UAAU,KAAK,OAAO,QAAQ;AAC/B,aAAO,QAAQ,KAAK,QAAQ;AAAA,IAC7B,SAAQ,GAAG;AACV,UAAI,EAAE,SAAS,eAAe;AAC5B,cAAM;AAAA,MACd;AAAA,IACA;AAAA,EACA;AACE,UAAW,GAAA,KAAK,WAAW,QAAQ;AACrC;AACA,MAAM,WAAW;AAAA,EACf,cAAc;AAAA,EACd,SAAS,CAAC,OAAO,QAAQ,OAAO;AAAA,EAChC,kBAAkB,CAAC,SAAS,iBAAiB,MAAM,SAAS;AAC1D,UAAM,cAAc,QAAQ,eAAc,KAAM;AAChD,UAAM,qBAAqB,YAAY,QAAQ,kBAAkB,IAAI;AACrE,UAAM,kBAAkB,QAAQ,SAAS,IAAI;AAC7C,QAAI,mBAAmB,QAAQ,WAAW,IAAI,GAAG;AAC/C,aAAO,IAAI,SAAS,IAAI;AAAA,IAC9B;AACI,UAAM,cAAc,QAAQ,WAAW,IAAI;AAC3C,QAAI,aAAa;AACf,aAAO,qBAAqB,KAAK,UAAU,eAAe,IAAI,CAAC,IAAI;AAAA,IACzE;AACI,QAAI,QAAQ,cAAc,IAAI,KAAK,QAAQ,SAAS,IAAI,KAAK,QAAQ,SAAS,IAAI,KAAK,QAAQ,OAAO,IAAI,KAAK,QAAQ,OAAO,IAAI,KAAK,QAAQ,iBAAiB,IAAI,GAAG;AACrK,aAAO;AAAA,IACb;AACI,QAAI,QAAQ,kBAAkB,IAAI,GAAG;AACnC,aAAO,KAAK;AAAA,IAClB;AACI,QAAI,QAAQ,kBAAkB,IAAI,GAAG;AACnC,cAAQ,eAAe,mDAAmD,KAAK;AAC/E,aAAO,KAAK,SAAU;AAAA,IAC5B;AACI,QAAI;AACJ,QAAI,iBAAiB;AACnB,UAAI,YAAY,QAAQ,mCAAmC,IAAI,IAAI;AACjE,eAAO,iBAAiB,MAAM,KAAK,cAAc,EAAE,SAAU;AAAA,MACrE;AACM,WAAK,cAAc,QAAQ,WAAW,IAAI,MAAM,YAAY,QAAQ,qBAAqB,IAAI,IAAI;AAC/F,cAAM,YAAY,KAAK,OAAO,KAAK,IAAI;AACvC,eAAO;AAAA,UACL,cAAc,EAAE,WAAW,KAAI,IAAK;AAAA,UACpC,aAAa,IAAI,UAAW;AAAA,UAC5B,KAAK;AAAA,QACN;AAAA,MACT;AAAA,IACA;AACI,QAAI,mBAAmB,oBAAoB;AACzC,cAAQ,eAAe,oBAAoB,KAAK;AAChD,aAAO,gBAAgB,IAAI;AAAA,IACjC;AACI,WAAO;AAAA,EACX,CAAG;AAAA,EACD,mBAAmB,CAAC,SAAS,kBAAkB,MAAM;AACnD,UAAM,gBAAgB,KAAK,gBAAgB,SAAS;AACpD,UAAM,oBAAoB,iBAAiB,cAAc;AACzD,UAAM,gBAAgB,KAAK,iBAAiB;AAC5C,QAAI,QAAQ,WAAW,IAAI,KAAK,QAAQ,iBAAiB,IAAI,GAAG;AAC9D,aAAO;AAAA,IACb;AACI,QAAI,QAAQ,QAAQ,SAAS,IAAI,MAAM,qBAAqB,CAAC,KAAK,gBAAgB,gBAAgB;AAChG,YAAM,oBAAoB,iBAAiB,cAAc;AACzD,YAAM,oBAAoB,CAAC,qBAAqB;AAChD,UAAI;AACF,eAAO,KAAK,MAAM,IAAI;AAAA,MACvB,SAAQ,GAAG;AACV,YAAI,mBAAmB;AACrB,cAAI,EAAE,SAAS,eAAe;AAC5B,kBAAM,WAAW,KAAK,GAAG,WAAW,kBAAkB,MAAM,MAAM,KAAK,QAAQ;AAAA,UAC3F;AACU,gBAAM;AAAA,QAChB;AAAA,MACA;AAAA,IACA;AACI,WAAO;AAAA,EACX,CAAG;AAAA;AAAA;AAAA;AAAA;AAAA,EAKD,SAAS;AAAA,EACT,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,eAAe;AAAA,EACf,KAAK;AAAA,IACH,UAAU,SAAS,QAAQ;AAAA,IAC3B,MAAM,SAAS,QAAQ;AAAA,EACxB;AAAA,EACD,gBAAgB,SAAS,eAAe,QAAQ;AAC9C,WAAO,UAAU,OAAO,SAAS;AAAA,EAClC;AAAA,EACD,SAAS;AAAA,IACP,QAAQ;AAAA,MACN,UAAU;AAAA,MACV,gBAAgB;AAAA,IACtB;AAAA,EACA;AACA;AACA,QAAQ,QAAQ,CAAC,UAAU,OAAO,QAAQ,QAAQ,OAAO,OAAO,GAAG,CAAC,WAAW;AAC7E,WAAS,QAAQ,MAAM,IAAI,CAAE;AAC/B,CAAC;AACD,MAAM,oBAAoB,QAAQ,YAAY;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACD,MAAM,eAAe,CAAC,eAAe;AACnC,QAAM,SAAS,CAAE;AACjB,MAAI;AACJ,MAAI;AACJ,MAAI;AACJ,gBAAc,WAAW,MAAM,IAAI,EAAE,QAAQ,SAAS,OAAO,MAAM;AACjE,QAAI,KAAK,QAAQ,GAAG;AACpB,UAAM,KAAK,UAAU,GAAG,CAAC,EAAE,KAAM,EAAC,YAAa;AAC/C,UAAM,KAAK,UAAU,IAAI,CAAC,EAAE,KAAM;AAClC,QAAI,CAAC,OAAO,OAAO,GAAG,KAAK,kBAAkB,GAAG,GAAG;AACjD;AAAA,IACN;AACI,QAAI,QAAQ,cAAc;AACxB,UAAI,OAAO,GAAG,GAAG;AACf,eAAO,GAAG,EAAE,KAAK,GAAG;AAAA,MAC5B,OAAa;AACL,eAAO,GAAG,IAAI,CAAC,GAAG;AAAA,MAC1B;AAAA,IACA,OAAW;AACL,aAAO,GAAG,IAAI,OAAO,GAAG,IAAI,OAAO,GAAG,IAAI,OAAO,MAAM;AAAA,IAC7D;AAAA,EACA,CAAG;AACD,SAAO;AACT;AACA,MAAM,aAAa,OAAO,WAAW;AACrC,SAAS,gBAAgB,QAAQ;AAC/B,SAAO,UAAU,OAAO,MAAM,EAAE,KAAI,EAAG,YAAa;AACtD;AACA,SAAS,eAAe,OAAO;AAC7B,MAAI,UAAU,SAAS,SAAS,MAAM;AACpC,WAAO;AAAA,EACX;AACE,SAAO,QAAQ,QAAQ,KAAK,IAAI,MAAM,IAAI,cAAc,IAAI,OAAO,KAAK;AAC1E;AACA,SAAS,YAAY,KAAK;AACxB,QAAM,SAAyB,uBAAO,OAAO,IAAI;AACjD,QAAM,WAAW;AACjB,MAAI;AACJ,SAAO,QAAQ,SAAS,KAAK,GAAG,GAAG;AACjC,WAAO,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC;AAAA,EAC9B;AACE,SAAO;AACT;AACA,MAAM,oBAAoB,CAAC,QAAQ,iCAAiC,KAAK,IAAI,MAAM;AACnF,SAAS,iBAAiB,SAAS,OAAO,QAAQ,SAAS,oBAAoB;AAC7E,MAAI,QAAQ,WAAW,OAAO,GAAG;AAC/B,WAAO,QAAQ,KAAK,MAAM,OAAO,MAAM;AAAA,EAC3C;AACE,MAAI,oBAAoB;AACtB,YAAQ;AAAA,EACZ;AACE,MAAI,CAAC,QAAQ,SAAS,KAAK,EAAG;AAC9B,MAAI,QAAQ,SAAS,OAAO,GAAG;AAC7B,WAAO,MAAM,QAAQ,OAAO,MAAM;AAAA,EACtC;AACE,MAAI,QAAQ,SAAS,OAAO,GAAG;AAC7B,WAAO,QAAQ,KAAK,KAAK;AAAA,EAC7B;AACA;AACA,SAAS,aAAa,QAAQ;AAC5B,SAAO,OAAO,KAAM,EAAC,YAAa,EAAC,QAAQ,mBAAmB,CAAC,GAAG,MAAM,QAAQ;AAC9E,WAAO,KAAK,YAAW,IAAK;AAAA,EAChC,CAAG;AACH;AACA,SAAS,eAAe,KAAK,QAAQ;AACnC,QAAM,eAAe,QAAQ,YAAY,MAAM,MAAM;AACrD,GAAC,OAAO,OAAO,KAAK,EAAE,QAAQ,CAAC,eAAe;AAC5C,WAAO,eAAe,KAAK,aAAa,cAAc;AAAA,MACpD,OAAO,SAAS,MAAM,MAAM,MAAM;AAChC,eAAO,KAAK,UAAU,EAAE,KAAK,MAAM,QAAQ,MAAM,MAAM,IAAI;AAAA,MAC5D;AAAA,MACD,cAAc;AAAA,IACpB,CAAK;AAAA,EACL,CAAG;AACH;AACA,MAAM,aAAa;AAAA,EACjB,YAAY,SAAS;AACnB,eAAW,KAAK,IAAI,OAAO;AAAA,EAC/B;AAAA,EACE,IAAI,QAAQ,gBAAgB,SAAS;AACnC,UAAM,QAAQ;AACd,aAAS,UAAU,QAAQ,SAAS,UAAU;AAC5C,YAAM,UAAU,gBAAgB,OAAO;AACvC,UAAI,CAAC,SAAS;AACZ,cAAM,IAAI,MAAM,wCAAwC;AAAA,MAChE;AACM,YAAM,MAAM,QAAQ,QAAQ,OAAO,OAAO;AAC1C,UAAI,CAAC,OAAO,MAAM,GAAG,MAAM,UAAU,aAAa,QAAQ,aAAa,UAAU,MAAM,GAAG,MAAM,OAAO;AACrG,cAAM,OAAO,OAAO,IAAI,eAAe,MAAM;AAAA,MACrD;AAAA,IACA;AACI,UAAM,aAAa,CAAC,SAAS,aAAa,QAAQ,QAAQ,SAAS,CAAC,QAAQ,YAAY,UAAU,QAAQ,SAAS,QAAQ,CAAC;AAC5H,QAAI,QAAQ,cAAc,MAAM,KAAK,kBAAkB,KAAK,aAAa;AACvE,iBAAW,QAAQ,cAAc;AAAA,IAClC,WAAU,QAAQ,SAAS,MAAM,MAAM,SAAS,OAAO,WAAW,CAAC,kBAAkB,MAAM,GAAG;AAC7F,iBAAW,aAAa,MAAM,GAAG,cAAc;AAAA,IAChD,WAAU,QAAQ,UAAU,MAAM,GAAG;AACpC,iBAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAO,GAAI;AAC3C,kBAAU,OAAO,KAAK,OAAO;AAAA,MACrC;AAAA,IACA,OAAW;AACL,gBAAU,QAAQ,UAAU,gBAAgB,QAAQ,OAAO;AAAA,IACjE;AACI,WAAO;AAAA,EACX;AAAA,EACE,IAAI,QAAQ,QAAQ;AAClB,aAAS,gBAAgB,MAAM;AAC/B,QAAI,QAAQ;AACV,YAAM,MAAM,QAAQ,QAAQ,MAAM,MAAM;AACxC,UAAI,KAAK;AACP,cAAM,QAAQ,KAAK,GAAG;AACtB,YAAI,CAAC,QAAQ;AACX,iBAAO;AAAA,QACjB;AACQ,YAAI,WAAW,MAAM;AACnB,iBAAO,YAAY,KAAK;AAAA,QAClC;AACQ,YAAI,QAAQ,WAAW,MAAM,GAAG;AAC9B,iBAAO,OAAO,KAAK,MAAM,OAAO,GAAG;AAAA,QAC7C;AACQ,YAAI,QAAQ,SAAS,MAAM,GAAG;AAC5B,iBAAO,OAAO,KAAK,KAAK;AAAA,QAClC;AACQ,cAAM,IAAI,UAAU,wCAAwC;AAAA,MACpE;AAAA,IACA;AAAA,EACA;AAAA,EACE,IAAI,QAAQ,SAAS;AACnB,aAAS,gBAAgB,MAAM;AAC/B,QAAI,QAAQ;AACV,YAAM,MAAM,QAAQ,QAAQ,MAAM,MAAM;AACxC,aAAO,CAAC,EAAE,OAAO,KAAK,GAAG,MAAM,WAAW,CAAC,WAAW,iBAAiB,MAAM,KAAK,GAAG,GAAG,KAAK,OAAO;AAAA,IAC1G;AACI,WAAO;AAAA,EACX;AAAA,EACE,OAAO,QAAQ,SAAS;AACtB,UAAM,QAAQ;AACd,QAAI,UAAU;AACd,aAAS,aAAa,SAAS;AAC7B,gBAAU,gBAAgB,OAAO;AACjC,UAAI,SAAS;AACX,cAAM,MAAM,QAAQ,QAAQ,OAAO,OAAO;AAC1C,YAAI,QAAQ,CAAC,WAAW,iBAAiB,OAAO,MAAM,GAAG,GAAG,KAAK,OAAO,IAAI;AAC1E,iBAAO,MAAM,GAAG;AAChB,oBAAU;AAAA,QACpB;AAAA,MACA;AAAA,IACA;AACI,QAAI,QAAQ,QAAQ,MAAM,GAAG;AAC3B,aAAO,QAAQ,YAAY;AAAA,IACjC,OAAW;AACL,mBAAa,MAAM;AAAA,IACzB;AACI,WAAO;AAAA,EACX;AAAA,EACE,MAAM,SAAS;AACb,UAAM,OAAO,OAAO,KAAK,IAAI;AAC7B,QAAI,IAAI,KAAK;AACb,QAAI,UAAU;AACd,WAAO,KAAK;AACV,YAAM,MAAM,KAAK,CAAC;AAClB,UAAI,CAAC,WAAW,iBAAiB,MAAM,KAAK,GAAG,GAAG,KAAK,SAAS,IAAI,GAAG;AACrE,eAAO,KAAK,GAAG;AACf,kBAAU;AAAA,MAClB;AAAA,IACA;AACI,WAAO;AAAA,EACX;AAAA,EACE,UAAU,QAAQ;AAChB,UAAM,QAAQ;AACd,UAAM,UAAU,CAAE;AAClB,YAAQ,QAAQ,MAAM,CAAC,OAAO,WAAW;AACvC,YAAM,MAAM,QAAQ,QAAQ,SAAS,MAAM;AAC3C,UAAI,KAAK;AACP,cAAM,GAAG,IAAI,eAAe,KAAK;AACjC,eAAO,MAAM,MAAM;AACnB;AAAA,MACR;AACM,YAAM,aAAa,SAAS,aAAa,MAAM,IAAI,OAAO,MAAM,EAAE,KAAM;AACxE,UAAI,eAAe,QAAQ;AACzB,eAAO,MAAM,MAAM;AAAA,MAC3B;AACM,YAAM,UAAU,IAAI,eAAe,KAAK;AACxC,cAAQ,UAAU,IAAI;AAAA,IAC5B,CAAK;AACD,WAAO;AAAA,EACX;AAAA,EACE,UAAU,SAAS;AACjB,WAAO,KAAK,YAAY,OAAO,MAAM,GAAG,OAAO;AAAA,EACnD;AAAA,EACE,OAAO,WAAW;AAChB,UAAM,MAAsB,uBAAO,OAAO,IAAI;AAC9C,YAAQ,QAAQ,MAAM,CAAC,OAAO,WAAW;AACvC,eAAS,QAAQ,UAAU,UAAU,IAAI,MAAM,IAAI,aAAa,QAAQ,QAAQ,KAAK,IAAI,MAAM,KAAK,IAAI,IAAI;AAAA,IAClH,CAAK;AACD,WAAO;AAAA,EACX;AAAA,EACE,CAAC,OAAO,QAAQ,IAAI;AAClB,WAAO,OAAO,QAAQ,KAAK,OAAM,CAAE,EAAE,OAAO,QAAQ,EAAG;AAAA,EAC3D;AAAA,EACE,WAAW;AACT,WAAO,OAAO,QAAQ,KAAK,OAAQ,CAAA,EAAE,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,SAAS,OAAO,KAAK,EAAE,KAAK,IAAI;AAAA,EAClG;AAAA,EACE,KAAK,OAAO,WAAW,IAAI;AACzB,WAAO;AAAA,EACX;AAAA,EACE,OAAO,KAAK,OAAO;AACjB,WAAO,iBAAiB,OAAO,QAAQ,IAAI,KAAK,KAAK;AAAA,EACzD;AAAA,EACE,OAAO,OAAO,UAAU,SAAS;AAC/B,UAAM,WAAW,IAAI,KAAK,KAAK;AAC/B,YAAQ,QAAQ,CAAC,WAAW,SAAS,IAAI,MAAM,CAAC;AAChD,WAAO;AAAA,EACX;AAAA,EACE,OAAO,SAAS,QAAQ;AACtB,UAAM,YAAY,KAAK,UAAU,IAAI,KAAK,UAAU,IAAI;AAAA,MACtD,WAAW,CAAA;AAAA,IACZ;AACD,UAAM,YAAY,UAAU;AAC5B,UAAM,aAAa,KAAK;AACxB,aAAS,eAAe,SAAS;AAC/B,YAAM,UAAU,gBAAgB,OAAO;AACvC,UAAI,CAAC,UAAU,OAAO,GAAG;AACvB,uBAAe,YAAY,OAAO;AAClC,kBAAU,OAAO,IAAI;AAAA,MAC7B;AAAA,IACA;AACI,YAAQ,QAAQ,MAAM,IAAI,OAAO,QAAQ,cAAc,IAAI,eAAe,MAAM;AAChF,WAAO;AAAA,EACX;AACA;AACA,aAAa,SAAS,CAAC,gBAAgB,kBAAkB,UAAU,mBAAmB,cAAc,eAAe,CAAC;AACpH,QAAQ,kBAAkB,aAAa,WAAW,CAAC,EAAE,MAAO,GAAE,QAAQ;AACpE,MAAI,SAAS,IAAI,CAAC,EAAE,YAAW,IAAK,IAAI,MAAM,CAAC;AAC/C,SAAO;AAAA,IACL,KAAK,MAAM;AAAA,IACX,IAAI,aAAa;AACf,WAAK,MAAM,IAAI;AAAA,IACrB;AAAA,EACG;AACH,CAAC;AACD,QAAQ,cAAc,YAAY;AAClC,SAAS,cAAc,KAAK,UAAU;AACpC,QAAM,SAAS,QAAQ;AACvB,QAAM,UAAU,YAAY;AAC5B,QAAM,UAAU,aAAa,KAAK,QAAQ,OAAO;AACjD,MAAI,OAAO,QAAQ;AACnB,UAAQ,QAAQ,KAAK,SAAS,UAAU,IAAI;AAC1C,WAAO,GAAG,KAAK,QAAQ,MAAM,QAAQ,UAAS,GAAI,WAAW,SAAS,SAAS,MAAM;AAAA,EACzF,CAAG;AACD,UAAQ,UAAW;AACnB,SAAO;AACT;AACA,SAAS,SAAS,OAAO;AACvB,SAAO,CAAC,EAAE,SAAS,MAAM;AAC3B;AACA,SAAS,cAAc,SAAS,QAAQ,SAAS;AAC/C,aAAW,KAAK,MAAM,WAAW,OAAO,aAAa,SAAS,WAAW,cAAc,QAAQ,OAAO;AACtG,OAAK,OAAO;AACd;AACA,QAAQ,SAAS,eAAe,YAAY;AAAA,EAC1C,YAAY;AACd,CAAC;AACD,SAAS,OAAO,SAAS,QAAQ,UAAU;AACzC,QAAM,kBAAkB,SAAS,OAAO;AACxC,MAAI,CAAC,SAAS,UAAU,CAAC,mBAAmB,gBAAgB,SAAS,MAAM,GAAG;AAC5E,YAAQ,QAAQ;AAAA,EACpB,OAAS;AACL,WAAO,IAAI;AAAA,MACT,qCAAqC,SAAS;AAAA,MAC9C,CAAC,WAAW,iBAAiB,WAAW,gBAAgB,EAAE,KAAK,MAAM,SAAS,SAAS,GAAG,IAAI,CAAC;AAAA,MAC/F,SAAS;AAAA,MACT,SAAS;AAAA,MACT;AAAA,IACN,CAAK;AAAA,EACL;AACA;AACA,SAAS,cAAc,KAAK;AAC1B,QAAM,QAAQ,4BAA4B,KAAK,GAAG;AAClD,SAAO,SAAS,MAAM,CAAC,KAAK;AAC9B;AACA,SAAS,YAAY,cAAc,KAAK;AACtC,iBAAe,gBAAgB;AAC/B,QAAM,QAAQ,IAAI,MAAM,YAAY;AACpC,QAAM,aAAa,IAAI,MAAM,YAAY;AACzC,MAAI,OAAO;AACX,MAAI,OAAO;AACX,MAAI;AACJ,QAAM,QAAQ,SAAS,MAAM;AAC7B,SAAO,SAAS,KAAK,aAAa;AAChC,UAAM,MAAM,KAAK,IAAK;AACtB,UAAM,YAAY,WAAW,IAAI;AACjC,QAAI,CAAC,eAAe;AAClB,sBAAgB;AAAA,IACtB;AACI,UAAM,IAAI,IAAI;AACd,eAAW,IAAI,IAAI;AACnB,QAAI,IAAI;AACR,QAAI,aAAa;AACjB,WAAO,MAAM,MAAM;AACjB,oBAAc,MAAM,GAAG;AACvB,UAAI,IAAI;AAAA,IACd;AACI,YAAQ,OAAO,KAAK;AACpB,QAAI,SAAS,MAAM;AACjB,cAAQ,OAAO,KAAK;AAAA,IAC1B;AACI,QAAI,MAAM,gBAAgB,KAAK;AAC7B;AAAA,IACN;AACI,UAAM,SAAS,aAAa,MAAM;AAClC,WAAO,SAAS,KAAK,MAAM,aAAa,MAAM,MAAM,IAAI;AAAA,EACzD;AACH;AACA,SAAS,SAAS,IAAI,MAAM;AAC1B,MAAI,YAAY;AAChB,MAAI,YAAY,MAAM;AACtB,MAAI;AACJ,MAAI;AACJ,QAAM,SAAS,CAAC,MAAM,MAAM,KAAK,IAAG,MAAO;AACzC,gBAAY;AACZ,eAAW;AACX,QAAI,OAAO;AACT,mBAAa,KAAK;AAClB,cAAQ;AAAA,IACd;AACI,OAAG,MAAM,MAAM,IAAI;AAAA,EACpB;AACD,QAAM,YAAY,IAAI,SAAS;AAC7B,UAAM,MAAM,KAAK,IAAK;AACtB,UAAM,SAAS,MAAM;AACrB,QAAI,UAAU,WAAW;AACvB,aAAO,MAAM,GAAG;AAAA,IACtB,OAAW;AACL,iBAAW;AACX,UAAI,CAAC,OAAO;AACV,gBAAQ,WAAW,MAAM;AACvB,kBAAQ;AACR,iBAAO,QAAQ;AAAA,QACzB,GAAW,YAAY,MAAM;AAAA,MAC7B;AAAA,IACA;AAAA,EACG;AACD,QAAM,QAAQ,MAAM,YAAY,OAAO,QAAQ;AAC/C,SAAO,CAAC,WAAW,KAAK;AAC1B;AACA,MAAM,uBAAuB,CAAC,UAAU,kBAAkB,OAAO,MAAM;AACrE,MAAI,gBAAgB;AACpB,QAAM,eAAe,YAAY,IAAI,GAAG;AACxC,SAAO,SAAS,CAAC,MAAM;AACrB,UAAM,SAAS,EAAE;AACjB,UAAM,QAAQ,EAAE,mBAAmB,EAAE,QAAQ;AAC7C,UAAM,gBAAgB,SAAS;AAC/B,UAAM,OAAO,aAAa,aAAa;AACvC,UAAM,UAAU,UAAU;AAC1B,oBAAgB;AAChB,UAAM,OAAO;AAAA,MACX;AAAA,MACA;AAAA,MACA,UAAU,QAAQ,SAAS,QAAQ;AAAA,MACnC,OAAO;AAAA,MACP,MAAM,OAAO,OAAO;AAAA,MACpB,WAAW,QAAQ,SAAS,WAAW,QAAQ,UAAU,OAAO;AAAA,MAChE,OAAO;AAAA,MACP,kBAAkB,SAAS;AAAA,MAC3B,CAAC,mBAAmB,aAAa,QAAQ,GAAG;AAAA,IAC7C;AACD,aAAS,IAAI;AAAA,EACd,GAAE,IAAI;AACT;AACA,MAAM,yBAAyB,CAAC,OAAO,cAAc;AACnD,QAAM,mBAAmB,SAAS;AAClC,SAAO,CAAC,CAAC,WAAW,UAAU,CAAC,EAAE;AAAA,IAC/B;AAAA,IACA;AAAA,IACA;AAAA,EACJ,CAAG,GAAG,UAAU,CAAC,CAAC;AAClB;AACA,MAAM,iBAAiB,CAAC,OAAO,IAAI,SAAS,QAAQ,KAAK,MAAM,GAAG,GAAG,IAAI,CAAC;AAC1E,MAAM,kBAAkB,SAAS,wBAAyC,kBAAC,SAAS,WAAW,CAAC,QAAQ;AACtG,QAAM,IAAI,IAAI,KAAK,SAAS,MAAM;AAClC,SAAO,QAAQ,aAAa,IAAI,YAAY,QAAQ,SAAS,IAAI,SAAS,UAAU,QAAQ,SAAS,IAAI;AAC3G;AAAA,EACE,IAAI,IAAI,SAAS,MAAM;AAAA,EACvB,SAAS,aAAa,kBAAkB,KAAK,SAAS,UAAU,SAAS;AAC3E,IAAI,MAAM;AACV,MAAM,UAAU,SAAS;AAAA;AAAA,EAEvB;AAAA,IACE,MAAM,MAAM,OAAO,SAAS,MAAM,QAAQ,QAAQ;AAChD,YAAM,SAAS,CAAC,OAAO,MAAM,mBAAmB,KAAK,CAAC;AACtD,cAAQ,SAAS,OAAO,KAAK,OAAO,KAAK,aAAa,IAAI,KAAK,OAAO,EAAE,YAAW,CAAE;AACrF,cAAQ,SAAS,IAAI,KAAK,OAAO,KAAK,UAAU,IAAI;AACpD,cAAQ,SAAS,MAAM,KAAK,OAAO,KAAK,YAAY,MAAM;AAC1D,iBAAW,QAAQ,OAAO,KAAK,QAAQ;AACvC,eAAS,SAAS,OAAO,KAAK,IAAI;AAAA,IACnC;AAAA,IACD,KAAK,MAAM;AACT,YAAM,QAAQ,SAAS,OAAO,MAAM,IAAI,OAAO,eAAe,OAAO,WAAW,CAAC;AACjF,aAAO,QAAQ,mBAAmB,MAAM,CAAC,CAAC,IAAI;AAAA,IAC/C;AAAA,IACD,OAAO,MAAM;AACX,WAAK,MAAM,MAAM,IAAI,KAAK,IAAK,IAAG,KAAK;AAAA,IAC7C;AAAA,EACA;AAAA;AAAA;AAAA,EAGE;AAAA,IACE,QAAQ;AAAA,IACP;AAAA,IACD,OAAO;AACL,aAAO;AAAA,IACR;AAAA,IACD,SAAS;AAAA,IACb;AAAA,EACA;AAAA;AAEA,SAAS,cAAc,KAAK;AAC1B,SAAO,8BAA8B,KAAK,GAAG;AAC/C;AACA,SAAS,YAAY,SAAS,aAAa;AACzC,SAAO,cAAc,QAAQ,QAAQ,UAAU,EAAE,IAAI,MAAM,YAAY,QAAQ,QAAQ,EAAE,IAAI;AAC/F;AACA,SAAS,cAAc,SAAS,cAAc,mBAAmB;AAC/D,MAAI,gBAAgB,CAAC,cAAc,YAAY;AAC/C,MAAI,YAAY,iBAAiB,qBAAqB,QAAQ;AAC5D,WAAO,YAAY,SAAS,YAAY;AAAA,EAC5C;AACE,SAAO;AACT;AACA,MAAM,kBAAkB,CAAC,UAAU,iBAAiB,eAAe,EAAE,GAAG,MAAK,IAAK;AAClF,SAAS,YAAY,SAAS,SAAS;AACrC,YAAU,WAAW,CAAE;AACvB,QAAM,SAAS,CAAE;AACjB,WAAS,eAAe,QAAQ,QAAQ,MAAM,UAAU;AACtD,QAAI,QAAQ,cAAc,MAAM,KAAK,QAAQ,cAAc,MAAM,GAAG;AAClE,aAAO,QAAQ,MAAM,KAAK,EAAE,SAAU,GAAE,QAAQ,MAAM;AAAA,IACvD,WAAU,QAAQ,cAAc,MAAM,GAAG;AACxC,aAAO,QAAQ,MAAM,CAAE,GAAE,MAAM;AAAA,IAChC,WAAU,QAAQ,QAAQ,MAAM,GAAG;AAClC,aAAO,OAAO,MAAO;AAAA,IAC3B;AACI,WAAO;AAAA,EACX;AACE,WAAS,oBAAoB,GAAG,GAAG,MAAM,UAAU;AACjD,QAAI,CAAC,QAAQ,YAAY,CAAC,GAAG;AAC3B,aAAO,eAAe,GAAG,GAAG,MAAM,QAAQ;AAAA,IAC3C,WAAU,CAAC,QAAQ,YAAY,CAAC,GAAG;AAClC,aAAO,eAAe,QAAQ,GAAG,MAAM,QAAQ;AAAA,IACrD;AAAA,EACA;AACE,WAAS,iBAAiB,GAAG,GAAG;AAC9B,QAAI,CAAC,QAAQ,YAAY,CAAC,GAAG;AAC3B,aAAO,eAAe,QAAQ,CAAC;AAAA,IACrC;AAAA,EACA;AACE,WAAS,iBAAiB,GAAG,GAAG;AAC9B,QAAI,CAAC,QAAQ,YAAY,CAAC,GAAG;AAC3B,aAAO,eAAe,QAAQ,CAAC;AAAA,IAChC,WAAU,CAAC,QAAQ,YAAY,CAAC,GAAG;AAClC,aAAO,eAAe,QAAQ,CAAC;AAAA,IACrC;AAAA,EACA;AACE,WAAS,gBAAgB,GAAG,GAAG,MAAM;AACnC,QAAI,QAAQ,SAAS;AACnB,aAAO,eAAe,GAAG,CAAC;AAAA,IAChC,WAAe,QAAQ,SAAS;AAC1B,aAAO,eAAe,QAAQ,CAAC;AAAA,IACrC;AAAA,EACA;AACE,QAAM,WAAW;AAAA,IACf,KAAK;AAAA,IACL,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,IACT,kBAAkB;AAAA,IAClB,mBAAmB;AAAA,IACnB,kBAAkB;AAAA,IAClB,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,IACjB,eAAe;AAAA,IACf,SAAS;AAAA,IACT,cAAc;AAAA,IACd,gBAAgB;AAAA,IAChB,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,YAAY;AAAA,IACZ,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,WAAW;AAAA,IACX,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,kBAAkB;AAAA,IAClB,gBAAgB;AAAA,IAChB,SAAS,CAAC,GAAG,GAAG,SAAS,oBAAoB,gBAAgB,CAAC,GAAG,gBAAgB,CAAC,GAAG,MAAM,IAAI;AAAA,EAChG;AACD,UAAQ,QAAQ,OAAO,KAAK,OAAO,OAAO,IAAI,SAAS,OAAO,CAAC,GAAG,SAAS,mBAAmB,MAAM;AAClG,UAAM,SAAS,SAAS,IAAI,KAAK;AACjC,UAAM,cAAc,OAAO,QAAQ,IAAI,GAAG,QAAQ,IAAI,GAAG,IAAI;AAC7D,YAAQ,YAAY,WAAW,KAAK,WAAW,oBAAoB,OAAO,IAAI,IAAI;AAAA,EACtF,CAAG;AACD,SAAO;AACT;AACA,MAAM,gBAAgB,CAAC,WAAW;AAChC,QAAM,YAAY,YAAY,CAAE,GAAE,MAAM;AACxC,MAAI,EAAE,MAAM,eAAe,gBAAgB,gBAAgB,SAAS,KAAI,IAAK;AAC7E,YAAU,UAAU,UAAU,aAAa,KAAK,OAAO;AACvD,YAAU,MAAM,SAAS,cAAc,UAAU,SAAS,UAAU,KAAK,UAAU,iBAAiB,GAAG,OAAO,QAAQ,OAAO,gBAAgB;AAC7I,MAAI,MAAM;AACR,YAAQ;AAAA,MACN;AAAA,MACA,WAAW,MAAM,KAAK,YAAY,MAAM,OAAO,KAAK,WAAW,SAAS,mBAAmB,KAAK,QAAQ,CAAC,IAAI,GAAG;AAAA,IACjH;AAAA,EACL;AACE,MAAI;AACJ,MAAI,QAAQ,WAAW,IAAI,GAAG;AAC5B,QAAI,SAAS,yBAAyB,SAAS,gCAAgC;AAC7E,cAAQ,eAAe,MAAM;AAAA,IAC9B,YAAW,cAAc,QAAQ,eAAc,OAAQ,OAAO;AAC7D,YAAM,CAAC,MAAM,GAAG,MAAM,IAAI,cAAc,YAAY,MAAM,GAAG,EAAE,IAAI,CAAC,UAAU,MAAM,KAAM,CAAA,EAAE,OAAO,OAAO,IAAI,CAAE;AAChH,cAAQ,eAAe,CAAC,QAAQ,uBAAuB,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC;AAAA,IAClF;AAAA,EACA;AACE,MAAI,SAAS,uBAAuB;AAClC,qBAAiB,QAAQ,WAAW,aAAa,MAAM,gBAAgB,cAAc,SAAS;AAC9F,QAAI,iBAAiB,kBAAkB,SAAS,gBAAgB,UAAU,GAAG,GAAG;AAC9E,YAAM,YAAY,kBAAkB,kBAAkB,QAAQ,KAAK,cAAc;AACjF,UAAI,WAAW;AACb,gBAAQ,IAAI,gBAAgB,SAAS;AAAA,MAC7C;AAAA,IACA;AAAA,EACA;AACE,SAAO;AACT;AACA,MAAM,wBAAwB,OAAO,mBAAmB;AACxD,MAAM,aAAa,yBAAyB,SAAS,QAAQ;AAC3D,SAAO,IAAI,QAAQ,SAAS,mBAAmB,SAAS,QAAQ;AAC9D,UAAM,UAAU,cAAc,MAAM;AACpC,QAAI,cAAc,QAAQ;AAC1B,UAAM,iBAAiB,aAAa,KAAK,QAAQ,OAAO,EAAE,UAAW;AACrE,QAAI,EAAE,cAAc,kBAAkB,mBAAoB,IAAG;AAC7D,QAAI;AACJ,QAAI,iBAAiB;AACrB,QAAI,aAAa;AACjB,aAAS,OAAO;AACd,qBAAe,YAAa;AAC5B,uBAAiB,cAAe;AAChC,cAAQ,eAAe,QAAQ,YAAY,YAAY,UAAU;AACjE,cAAQ,UAAU,QAAQ,OAAO,oBAAoB,SAAS,UAAU;AAAA,IAC9E;AACI,QAAI,UAAU,IAAI,eAAgB;AAClC,YAAQ,KAAK,QAAQ,OAAO,YAAW,GAAI,QAAQ,KAAK,IAAI;AAC5D,YAAQ,UAAU,QAAQ;AAC1B,aAAS,YAAY;AACnB,UAAI,CAAC,SAAS;AACZ;AAAA,MACR;AACM,YAAM,kBAAkB,aAAa;AAAA,QACnC,2BAA2B,WAAW,QAAQ,sBAAqB;AAAA,MACpE;AACD,YAAM,eAAe,CAAC,gBAAgB,iBAAiB,UAAU,iBAAiB,SAAS,QAAQ,eAAe,QAAQ;AAC1H,YAAM,WAAW;AAAA,QACf,MAAM;AAAA,QACN,QAAQ,QAAQ;AAAA,QAChB,YAAY,QAAQ;AAAA,QACpB,SAAS;AAAA,QACT;AAAA,QACA;AAAA,MACD;AACD,aAAO,SAAS,SAAS,OAAO;AAC9B,gBAAQ,KAAK;AACb,aAAM;AAAA,MACd,GAAS,SAAS,QAAQ,KAAK;AACvB,eAAO,GAAG;AACV,aAAM;AAAA,MACP,GAAE,QAAQ;AACX,gBAAU;AAAA,IAChB;AACI,QAAI,eAAe,SAAS;AAC1B,cAAQ,YAAY;AAAA,IAC1B,OAAW;AACL,cAAQ,qBAAqB,SAAS,aAAa;AACjD,YAAI,CAAC,WAAW,QAAQ,eAAe,GAAG;AACxC;AAAA,QACV;AACQ,YAAI,QAAQ,WAAW,KAAK,EAAE,QAAQ,eAAe,QAAQ,YAAY,QAAQ,OAAO,MAAM,IAAI;AAChG;AAAA,QACV;AACQ,mBAAW,SAAS;AAAA,MACrB;AAAA,IACP;AACI,YAAQ,UAAU,SAAS,cAAc;AACvC,UAAI,CAAC,SAAS;AACZ;AAAA,MACR;AACM,aAAO,IAAI,WAAW,mBAAmB,WAAW,cAAc,QAAQ,OAAO,CAAC;AAClF,gBAAU;AAAA,IACX;AACD,YAAQ,UAAU,SAAS,cAAc;AACvC,aAAO,IAAI,WAAW,iBAAiB,WAAW,aAAa,QAAQ,OAAO,CAAC;AAC/E,gBAAU;AAAA,IACX;AACD,YAAQ,YAAY,SAAS,gBAAgB;AAC3C,UAAI,sBAAsB,QAAQ,UAAU,gBAAgB,QAAQ,UAAU,gBAAgB;AAC9F,YAAM,gBAAgB,QAAQ,gBAAgB;AAC9C,UAAI,QAAQ,qBAAqB;AAC/B,8BAAsB,QAAQ;AAAA,MACtC;AACM,aAAO,IAAI;AAAA,QACT;AAAA,QACA,cAAc,sBAAsB,WAAW,YAAY,WAAW;AAAA,QACtE;AAAA,QACA;AAAA,MACR,CAAO;AACD,gBAAU;AAAA,IACX;AACD,oBAAgB,UAAU,eAAe,eAAe,IAAI;AAC5D,QAAI,sBAAsB,SAAS;AACjC,cAAQ,QAAQ,eAAe,OAAQ,GAAE,SAAS,iBAAiB,KAAK,KAAK;AAC3E,gBAAQ,iBAAiB,KAAK,GAAG;AAAA,MACzC,CAAO;AAAA,IACP;AACI,QAAI,CAAC,QAAQ,YAAY,QAAQ,eAAe,GAAG;AACjD,cAAQ,kBAAkB,CAAC,CAAC,QAAQ;AAAA,IAC1C;AACI,QAAI,gBAAgB,iBAAiB,QAAQ;AAC3C,cAAQ,eAAe,QAAQ;AAAA,IACrC;AACI,QAAI,oBAAoB;AACtB,OAAC,mBAAmB,aAAa,IAAI,qBAAqB,oBAAoB,IAAI;AAClF,cAAQ,iBAAiB,YAAY,iBAAiB;AAAA,IAC5D;AACI,QAAI,oBAAoB,QAAQ,QAAQ;AACtC,OAAC,iBAAiB,WAAW,IAAI,qBAAqB,gBAAgB;AACtE,cAAQ,OAAO,iBAAiB,YAAY,eAAe;AAC3D,cAAQ,OAAO,iBAAiB,WAAW,WAAW;AAAA,IAC5D;AACI,QAAI,QAAQ,eAAe,QAAQ,QAAQ;AACzC,mBAAa,CAAC,WAAW;AACvB,YAAI,CAAC,SAAS;AACZ;AAAA,QACV;AACQ,eAAO,CAAC,UAAU,OAAO,OAAO,IAAI,cAAc,MAAM,QAAQ,OAAO,IAAI,MAAM;AACjF,gBAAQ,MAAO;AACf,kBAAU;AAAA,MACX;AACD,cAAQ,eAAe,QAAQ,YAAY,UAAU,UAAU;AAC/D,UAAI,QAAQ,QAAQ;AAClB,gBAAQ,OAAO,UAAU,WAAY,IAAG,QAAQ,OAAO,iBAAiB,SAAS,UAAU;AAAA,MACnG;AAAA,IACA;AACI,UAAM,WAAW,cAAc,QAAQ,GAAG;AAC1C,QAAI,YAAY,SAAS,UAAU,QAAQ,QAAQ,MAAM,IAAI;AAC3D,aAAO,IAAI,WAAW,0BAA0B,WAAW,KAAK,WAAW,iBAAiB,MAAM,CAAC;AACnG;AAAA,IACN;AACI,YAAQ,KAAK,eAAe,IAAI;AAAA,EACpC,CAAG;AACH;AACA,MAAM,iBAAiB,CAAC,SAAS,YAAY;AAC3C,QAAM,EAAE,OAAQ,IAAG,UAAU,UAAU,QAAQ,OAAO,OAAO,IAAI,CAAE;AACnE,MAAI,WAAW,QAAQ;AACrB,QAAI,aAAa,IAAI,gBAAiB;AACtC,QAAI;AACJ,UAAM,UAAU,SAAS,QAAQ;AAC/B,UAAI,CAAC,SAAS;AACZ,kBAAU;AACV,oBAAa;AACb,cAAM,MAAM,kBAAkB,QAAQ,SAAS,KAAK;AACpD,mBAAW,MAAM,eAAe,aAAa,MAAM,IAAI,cAAc,eAAe,QAAQ,IAAI,UAAU,GAAG,CAAC;AAAA,MACtH;AAAA,IACK;AACD,QAAI,QAAQ,WAAW,WAAW,MAAM;AACtC,cAAQ;AACR,cAAQ,IAAI,WAAW,WAAW,OAAO,mBAAmB,WAAW,SAAS,CAAC;AAAA,IAClF,GAAE,OAAO;AACV,UAAM,cAAc,MAAM;AACxB,UAAI,SAAS;AACX,iBAAS,aAAa,KAAK;AAC3B,gBAAQ;AACR,gBAAQ,QAAQ,CAAC,YAAY;AAC3B,kBAAQ,cAAc,QAAQ,YAAY,OAAO,IAAI,QAAQ,oBAAoB,SAAS,OAAO;AAAA,QAC3G,CAAS;AACD,kBAAU;AAAA,MAClB;AAAA,IACK;AACD,YAAQ,QAAQ,CAAC,YAAY,QAAQ,iBAAiB,SAAS,OAAO,CAAC;AACvE,UAAM,EAAE,OAAM,IAAK;AACnB,WAAO,cAAc,MAAM,QAAQ,KAAK,WAAW;AACnD,WAAO;AAAA,EACX;AACA;AACA,MAAM,cAAc,WAAW,OAAO,WAAW;AAC/C,MAAI,MAAM,MAAM;AAChB,MAAI,MAAM,WAAW;AACnB,UAAM;AACN;AAAA,EACJ;AACE,MAAI,MAAM;AACV,MAAI;AACJ,SAAO,MAAM,KAAK;AAChB,UAAM,MAAM;AACZ,UAAM,MAAM,MAAM,KAAK,GAAG;AAC1B,UAAM;AAAA,EACV;AACA;AACA,MAAM,YAAY,iBAAiB,UAAU,WAAW;AACtD,mBAAiB,SAAS,WAAW,QAAQ,GAAG;AAC9C,WAAO,YAAY,OAAO,SAAS;AAAA,EACvC;AACA;AACA,MAAM,aAAa,iBAAiB,QAAQ;AAC1C,MAAI,OAAO,OAAO,aAAa,GAAG;AAChC,WAAO;AACP;AAAA,EACJ;AACE,QAAM,SAAS,OAAO,UAAW;AACjC,MAAI;AACF,eAAW;AACT,YAAM,EAAE,MAAM,MAAO,IAAG,MAAM,OAAO,KAAM;AAC3C,UAAI,MAAM;AACR;AAAA,MACR;AACM,YAAM;AAAA,IACZ;AAAA,EACA,UAAY;AACR,UAAM,OAAO,OAAQ;AAAA,EACzB;AACA;AACA,MAAM,cAAc,CAAC,QAAQ,WAAW,YAAY,aAAa;AAC/D,QAAM,WAAW,UAAU,QAAQ,SAAS;AAC5C,MAAI,QAAQ;AACZ,MAAI;AACJ,MAAI,YAAY,CAAC,MAAM;AACrB,QAAI,CAAC,MAAM;AACT,aAAO;AACP,kBAAY,SAAS,CAAC;AAAA,IAC5B;AAAA,EACG;AACD,SAAO,IAAI,eAAe;AAAA,IACxB,MAAM,KAAK,YAAY;AACrB,UAAI;AACF,cAAM,EAAE,MAAM,OAAO,MAAK,IAAK,MAAM,SAAS,KAAM;AACpD,YAAI,OAAO;AACT,oBAAW;AACX,qBAAW,MAAO;AAClB;AAAA,QACV;AACQ,YAAI,MAAM,MAAM;AAChB,YAAI,YAAY;AACd,cAAI,cAAc,SAAS;AAC3B,qBAAW,WAAW;AAAA,QAChC;AACQ,mBAAW,QAAQ,IAAI,WAAW,KAAK,CAAC;AAAA,MACzC,SAAQ,KAAK;AACZ,kBAAU,GAAG;AACb,cAAM;AAAA,MACd;AAAA,IACK;AAAA,IACD,OAAO,QAAQ;AACb,gBAAU,MAAM;AAChB,aAAO,SAAS,OAAQ;AAAA,IAC9B;AAAA,EACA,GAAK;AAAA,IACD,eAAe;AAAA,EACnB,CAAG;AACH;AACA,MAAM,mBAAmB,OAAO,UAAU,cAAc,OAAO,YAAY,cAAc,OAAO,aAAa;AAC7G,MAAM,4BAA4B,oBAAoB,OAAO,mBAAmB;AAChF,MAAM,aAAa,qBAAqB,OAAO,gBAAgB,aAA8B,kBAAC,YAAY,CAAC,QAAQ,QAAQ,OAAO,GAAG,GAAG,IAAI,aAAa,IAAI,OAAO,QAAQ,IAAI,WAAW,MAAM,IAAI,SAAS,GAAG,EAAE,YAAW,CAAE;AAChO,MAAM,OAAO,CAAC,OAAO,SAAS;AAC5B,MAAI;AACF,WAAO,CAAC,CAAC,GAAG,GAAG,IAAI;AAAA,EACpB,SAAQ,GAAG;AACV,WAAO;AAAA,EACX;AACA;AACA,MAAM,wBAAwB,6BAA6B,KAAK,MAAM;AACpE,MAAI,iBAAiB;AACrB,QAAM,iBAAiB,IAAI,QAAQ,SAAS,QAAQ;AAAA,IAClD,MAAM,IAAI,eAAgB;AAAA,IAC1B,QAAQ;AAAA,IACR,IAAI,SAAS;AACX,uBAAiB;AACjB,aAAO;AAAA,IACb;AAAA,EACA,CAAG,EAAE,QAAQ,IAAI,cAAc;AAC7B,SAAO,kBAAkB,CAAC;AAC5B,CAAC;AACD,MAAM,qBAAqB,KAAK;AAChC,MAAM,yBAAyB,6BAA6B,KAAK,MAAM,QAAQ,iBAAiB,IAAI,SAAS,EAAE,EAAE,IAAI,CAAC;AACtH,MAAM,YAAY;AAAA,EAChB,QAAQ,2BAA2B,CAAC,QAAQ,IAAI;AAClD;AACA,qBAAqB,CAAC,QAAQ;AAC5B,GAAC,QAAQ,eAAe,QAAQ,YAAY,QAAQ,EAAE,QAAQ,CAAC,SAAS;AACtE,KAAC,UAAU,IAAI,MAAM,UAAU,IAAI,IAAI,QAAQ,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,MAAM,CAAC,GAAG,WAAW;AAC7G,YAAM,IAAI,WAAW,kBAAkB,IAAI,sBAAsB,WAAW,iBAAiB,MAAM;AAAA,IACzG;AAAA,EACA,CAAG;AACH,GAAG,IAAI,SAAQ,CAAE;AACjB,MAAM,gBAAgB,OAAO,SAAS;AACpC,MAAI,QAAQ,MAAM;AAChB,WAAO;AAAA,EACX;AACE,MAAI,QAAQ,OAAO,IAAI,GAAG;AACxB,WAAO,KAAK;AAAA,EAChB;AACE,MAAI,QAAQ,oBAAoB,IAAI,GAAG;AACrC,UAAM,WAAW,IAAI,QAAQ,SAAS,QAAQ;AAAA,MAC5C,QAAQ;AAAA,MACR;AAAA,IACN,CAAK;AACD,YAAQ,MAAM,SAAS,YAAW,GAAI;AAAA,EAC1C;AACE,MAAI,QAAQ,kBAAkB,IAAI,KAAK,QAAQ,cAAc,IAAI,GAAG;AAClE,WAAO,KAAK;AAAA,EAChB;AACE,MAAI,QAAQ,kBAAkB,IAAI,GAAG;AACnC,WAAO,OAAO;AAAA,EAClB;AACE,MAAI,QAAQ,SAAS,IAAI,GAAG;AAC1B,YAAQ,MAAM,WAAW,IAAI,GAAG;AAAA,EACpC;AACA;AACA,MAAM,oBAAoB,OAAO,SAAS,SAAS;AACjD,QAAM,SAAS,QAAQ,eAAe,QAAQ,iBAAgB,CAAE;AAChE,SAAO,UAAU,OAAO,cAAc,IAAI,IAAI;AAChD;AACA,MAAM,eAAe,qBAAqB,OAAO,WAAW;AAC1D,MAAI;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,kBAAkB;AAAA,IAClB;AAAA,EACJ,IAAM,cAAc,MAAM;AACxB,iBAAe,gBAAgB,eAAe,IAAI,YAAa,IAAG;AAClE,MAAI,iBAAiB,eAAe,CAAC,QAAQ,eAAe,YAAY,eAAe,GAAG,OAAO;AACjG,MAAI;AACJ,QAAM,cAAc,kBAAkB,eAAe,gBAAgB,MAAM;AACzE,mBAAe,YAAa;AAAA,EAChC;AACE,MAAI;AACJ,MAAI;AACF,QAAI,oBAAoB,yBAAyB,WAAW,SAAS,WAAW,WAAW,uBAAuB,MAAM,kBAAkB,SAAS,IAAI,OAAO,GAAG;AAC/J,UAAI,WAAW,IAAI,QAAQ,KAAK;AAAA,QAC9B,QAAQ;AAAA,QACR,MAAM;AAAA,QACN,QAAQ;AAAA,MAChB,CAAO;AACD,UAAI;AACJ,UAAI,QAAQ,WAAW,IAAI,MAAM,oBAAoB,SAAS,QAAQ,IAAI,cAAc,IAAI;AAC1F,gBAAQ,eAAe,iBAAiB;AAAA,MAChD;AACM,UAAI,SAAS,MAAM;AACjB,cAAM,CAAC,YAAY,KAAK,IAAI;AAAA,UAC1B;AAAA,UACA,qBAAqB,eAAe,gBAAgB,CAAC;AAAA,QACtD;AACD,eAAO,YAAY,SAAS,MAAM,oBAAoB,YAAY,KAAK;AAAA,MAC/E;AAAA,IACA;AACI,QAAI,CAAC,QAAQ,SAAS,eAAe,GAAG;AACtC,wBAAkB,kBAAkB,YAAY;AAAA,IACtD;AACI,UAAM,yBAAyB,iBAAiB,QAAQ;AACxD,cAAU,IAAI,QAAQ,KAAK;AAAA,MACzB,GAAG;AAAA,MACH,QAAQ;AAAA,MACR,QAAQ,OAAO,YAAa;AAAA,MAC5B,SAAS,QAAQ,UAAW,EAAC,OAAQ;AAAA,MACrC,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,aAAa,yBAAyB,kBAAkB;AAAA,IAC9D,CAAK;AACD,QAAI,WAAW,MAAM,MAAM,OAAO;AAClC,UAAM,mBAAmB,2BAA2B,iBAAiB,YAAY,iBAAiB;AAClG,QAAI,2BAA2B,sBAAsB,oBAAoB,cAAc;AACrF,YAAM,UAAU,CAAE;AAClB,OAAC,UAAU,cAAc,SAAS,EAAE,QAAQ,CAAC,SAAS;AACpD,gBAAQ,IAAI,IAAI,SAAS,IAAI;AAAA,MACrC,CAAO;AACD,YAAM,wBAAwB,QAAQ,eAAe,SAAS,QAAQ,IAAI,gBAAgB,CAAC;AAC3F,YAAM,CAAC,YAAY,KAAK,IAAI,sBAAsB;AAAA,QAChD;AAAA,QACA,qBAAqB,eAAe,kBAAkB,GAAG,IAAI;AAAA,MACrE,KAAW,CAAE;AACP,iBAAW,IAAI;AAAA,QACb,YAAY,SAAS,MAAM,oBAAoB,YAAY,MAAM;AAC/D,mBAAS,MAAO;AAChB,yBAAe,YAAa;AAAA,QACtC,CAAS;AAAA,QACD;AAAA,MACD;AAAA,IACP;AACI,mBAAe,gBAAgB;AAC/B,QAAI,eAAe,MAAM,UAAU,QAAQ,QAAQ,WAAW,YAAY,KAAK,MAAM,EAAE,UAAU,MAAM;AACvG,KAAC,oBAAoB,eAAe,YAAa;AACjD,WAAO,MAAM,IAAI,QAAQ,CAAC,SAAS,WAAW;AAC5C,aAAO,SAAS,QAAQ;AAAA,QACtB,MAAM;AAAA,QACN,SAAS,aAAa,KAAK,SAAS,OAAO;AAAA,QAC3C,QAAQ,SAAS;AAAA,QACjB,YAAY,SAAS;AAAA,QACrB;AAAA,QACA;AAAA,MACR,CAAO;AAAA,IACP,CAAK;AAAA,EACF,SAAQ,KAAK;AACZ,mBAAe,YAAa;AAC5B,QAAI,OAAO,IAAI,SAAS,eAAe,SAAS,KAAK,IAAI,OAAO,GAAG;AACjE,YAAM,OAAO;AAAA,QACX,IAAI,WAAW,iBAAiB,WAAW,aAAa,QAAQ,OAAO;AAAA,QACvE;AAAA,UACE,OAAO,IAAI,SAAS;AAAA,QAC9B;AAAA,MACO;AAAA,IACP;AACI,UAAM,WAAW,KAAK,KAAK,OAAO,IAAI,MAAM,QAAQ,OAAO;AAAA,EAC/D;AACA;AACA,MAAM,gBAAgB;AAAA,EACpB,MAAM;AAAA,EACN,KAAK;AAAA,EACL,OAAO;AACT;AACA,QAAQ,QAAQ,eAAe,CAAC,IAAI,UAAU;AAC5C,MAAI,IAAI;AACN,QAAI;AACF,aAAO,eAAe,IAAI,QAAQ,EAAE,MAAK,CAAE;AAAA,IAC5C,SAAQ,GAAG;AAAA,IAChB;AACI,WAAO,eAAe,IAAI,eAAe,EAAE,MAAK,CAAE;AAAA,EACtD;AACA,CAAC;AACD,MAAM,eAAe,CAAC,WAAW,KAAK,MAAM;AAC5C,MAAM,mBAAmB,CAAC,YAAY,QAAQ,WAAW,OAAO,KAAK,YAAY,QAAQ,YAAY;AACrG,MAAM,WAAW;AAAA,EACf,YAAY,CAAC,cAAc;AACzB,gBAAY,QAAQ,QAAQ,SAAS,IAAI,YAAY,CAAC,SAAS;AAC/D,UAAM,EAAE,OAAM,IAAK;AACnB,QAAI;AACJ,QAAI;AACJ,UAAM,kBAAkB,CAAE;AAC1B,aAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAC/B,sBAAgB,UAAU,CAAC;AAC3B,UAAI;AACJ,gBAAU;AACV,UAAI,CAAC,iBAAiB,aAAa,GAAG;AACpC,kBAAU,eAAe,KAAK,OAAO,aAAa,GAAG,aAAa;AAClE,YAAI,YAAY,QAAQ;AACtB,gBAAM,IAAI,WAAW,oBAAoB,EAAE,GAAG;AAAA,QACxD;AAAA,MACA;AACM,UAAI,SAAS;AACX;AAAA,MACR;AACM,sBAAgB,MAAM,MAAM,CAAC,IAAI;AAAA,IACvC;AACI,QAAI,CAAC,SAAS;AACZ,YAAM,UAAU,OAAO,QAAQ,eAAe,EAAE;AAAA,QAC9C,CAAC,CAAC,IAAI,KAAK,MAAM,WAAW,EAAE,OAAO,UAAU,QAAQ,wCAAwC;AAAA,MAChG;AACD,UAAI,IAAI,SAAS,QAAQ,SAAS,IAAI,cAAc,QAAQ,IAAI,YAAY,EAAE,KAAK,IAAI,IAAI,MAAM,aAAa,QAAQ,CAAC,CAAC,IAAI;AAC5H,YAAM,IAAI;AAAA,QACR,0DAA0D;AAAA,QAC1D;AAAA,MACD;AAAA,IACP;AACI,WAAO;AAAA,EACR;AAAA,EACD,UAAU;AACZ;AACA,SAAS,6BAA6B,QAAQ;AAC5C,MAAI,OAAO,aAAa;AACtB,WAAO,YAAY,iBAAkB;AAAA,EACzC;AACE,MAAI,OAAO,UAAU,OAAO,OAAO,SAAS;AAC1C,UAAM,IAAI,cAAc,MAAM,MAAM;AAAA,EACxC;AACA;AACA,SAAS,gBAAgB,QAAQ;AAC/B,+BAA6B,MAAM;AACnC,SAAO,UAAU,aAAa,KAAK,OAAO,OAAO;AACjD,SAAO,OAAO,cAAc;AAAA,IAC1B;AAAA,IACA,OAAO;AAAA,EACR;AACD,MAAI,CAAC,QAAQ,OAAO,OAAO,EAAE,QAAQ,OAAO,MAAM,MAAM,IAAI;AAC1D,WAAO,QAAQ,eAAe,qCAAqC,KAAK;AAAA,EAC5E;AACE,QAAM,UAAU,SAAS,WAAW,OAAO,WAAW,SAAS,OAAO;AACtE,SAAO,QAAQ,MAAM,EAAE,KAAK,SAAS,oBAAoB,UAAU;AACjE,iCAA6B,MAAM;AACnC,aAAS,OAAO,cAAc;AAAA,MAC5B;AAAA,MACA,OAAO;AAAA,MACP;AAAA,IACD;AACD,aAAS,UAAU,aAAa,KAAK,SAAS,OAAO;AACrD,WAAO;AAAA,EACX,GAAK,SAAS,mBAAmB,QAAQ;AACrC,QAAI,CAAC,SAAS,MAAM,GAAG;AACrB,mCAA6B,MAAM;AACnC,UAAI,UAAU,OAAO,UAAU;AAC7B,eAAO,SAAS,OAAO,cAAc;AAAA,UACnC;AAAA,UACA,OAAO;AAAA,UACP,OAAO;AAAA,QACR;AACD,eAAO,SAAS,UAAU,aAAa,KAAK,OAAO,SAAS,OAAO;AAAA,MAC3E;AAAA,IACA;AACI,WAAO,QAAQ,OAAO,MAAM;AAAA,EAChC,CAAG;AACH;AACA,MAAM,UAAU;AAChB,MAAM,eAAe,CAAE;AACvB,CAAC,UAAU,WAAW,UAAU,YAAY,UAAU,QAAQ,EAAE,QAAQ,CAAC,MAAM,MAAM;AACnF,eAAa,IAAI,IAAI,SAAS,WAAW,OAAO;AAC9C,WAAO,OAAO,UAAU,QAAQ,OAAO,IAAI,IAAI,OAAO,OAAO;AAAA,EAC9D;AACH,CAAC;AACD,MAAM,qBAAqB,CAAE;AAC7B,aAAa,eAAe,SAAS,aAAa,YAAY,SAAS,SAAS;AAC9E,WAAS,cAAc,KAAK,MAAM;AAChC,WAAO,aAAa,UAAU,4BAA4B,MAAM,MAAM,QAAQ,UAAU,OAAO,UAAU;AAAA,EAC7G;AACE,SAAO,CAAC,OAAO,KAAK,SAAS;AAC3B,QAAI,eAAe,OAAO;AACxB,YAAM,IAAI;AAAA,QACR,cAAc,KAAK,uBAAuB,UAAU,SAAS,UAAU,GAAG;AAAA,QAC1E,WAAW;AAAA,MACZ;AAAA,IACP;AACI,QAAI,WAAW,CAAC,mBAAmB,GAAG,GAAG;AACvC,yBAAmB,GAAG,IAAI;AAC1B,cAAQ;AAAA,QACN;AAAA,UACE;AAAA,UACA,iCAAiC,UAAU;AAAA,QACrD;AAAA,MACO;AAAA,IACP;AACI,WAAO,aAAa,WAAW,OAAO,KAAK,IAAI,IAAI;AAAA,EACpD;AACH;AACA,aAAa,WAAW,SAAS,SAAS,iBAAiB;AACzD,SAAO,CAAC,OAAO,QAAQ;AACrB,YAAQ,KAAK,GAAG,GAAG,+BAA+B,eAAe,EAAE;AACnE,WAAO;AAAA,EACR;AACH;AACA,SAAS,cAAc,SAAS,QAAQ,cAAc;AACpD,MAAI,OAAO,YAAY,UAAU;AAC/B,UAAM,IAAI,WAAW,6BAA6B,WAAW,oBAAoB;AAAA,EACrF;AACE,QAAM,OAAO,OAAO,KAAK,OAAO;AAChC,MAAI,IAAI,KAAK;AACb,SAAO,MAAM,GAAG;AACd,UAAM,MAAM,KAAK,CAAC;AAClB,UAAM,aAAa,OAAO,GAAG;AAC7B,QAAI,YAAY;AACd,YAAM,QAAQ,QAAQ,GAAG;AACzB,YAAM,SAAS,UAAU,UAAU,WAAW,OAAO,KAAK,OAAO;AACjE,UAAI,WAAW,MAAM;AACnB,cAAM,IAAI,WAAW,YAAY,MAAM,cAAc,QAAQ,WAAW,oBAAoB;AAAA,MACpG;AACM;AAAA,IACN;AACI,QAAI,iBAAiB,MAAM;AACzB,YAAM,IAAI,WAAW,oBAAoB,KAAK,WAAW,cAAc;AAAA,IAC7E;AAAA,EACA;AACA;AACA,MAAM,YAAY;AAAA,EAChB;AAAA,EACA,YAAY;AACd;AACA,MAAM,aAAa,UAAU;AAC7B,MAAM,MAAM;AAAA,EACV,YAAY,gBAAgB;AAC1B,SAAK,WAAW;AAChB,SAAK,eAAe;AAAA,MAClB,SAAS,IAAI,mBAAoB;AAAA,MACjC,UAAU,IAAI,mBAAkB;AAAA,IACjC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASE,MAAM,QAAQ,aAAa,QAAQ;AACjC,QAAI;AACF,aAAO,MAAM,KAAK,SAAS,aAAa,MAAM;AAAA,IAC/C,SAAQ,KAAK;AACZ,UAAI,eAAe,OAAO;AACxB,YAAI,QAAQ,CAAE;AACd,cAAM,oBAAoB,MAAM,kBAAkB,KAAK,IAAI,QAAQ,IAAI,MAAO;AAC9E,cAAM,QAAQ,MAAM,QAAQ,MAAM,MAAM,QAAQ,SAAS,EAAE,IAAI;AAC/D,YAAI;AACF,cAAI,CAAC,IAAI,OAAO;AACd,gBAAI,QAAQ;AAAA,UACb,WAAU,SAAS,CAAC,OAAO,IAAI,KAAK,EAAE,SAAS,MAAM,QAAQ,aAAa,EAAE,CAAC,GAAG;AAC/E,gBAAI,SAAS,OAAO;AAAA,UAChC;AAAA,QACS,SAAQ,GAAG;AAAA,QACpB;AAAA,MACA;AACM,YAAM;AAAA,IACZ;AAAA,EACA;AAAA,EACE,SAAS,aAAa,QAAQ;AAC5B,QAAI,OAAO,gBAAgB,UAAU;AACnC,eAAS,UAAU,CAAE;AACrB,aAAO,MAAM;AAAA,IACnB,OAAW;AACL,eAAS,eAAe,CAAE;AAAA,IAChC;AACI,aAAS,YAAY,KAAK,UAAU,MAAM;AAC1C,UAAM,EAAE,cAAc,eAAe,kBAAkB,QAAS,IAAG;AACnE,QAAI,kBAAkB,QAAQ;AAC5B,gBAAU,cAAc,eAAe;AAAA,QACrC,mBAAmB,WAAW,aAAa,WAAW,OAAO;AAAA,QAC7D,mBAAmB,WAAW,aAAa,WAAW,OAAO;AAAA,QAC7D,qBAAqB,WAAW,aAAa,WAAW,OAAO;AAAA,MAChE,GAAE,KAAK;AAAA,IACd;AACI,QAAI,oBAAoB,MAAM;AAC5B,UAAI,QAAQ,WAAW,gBAAgB,GAAG;AACxC,eAAO,mBAAmB;AAAA,UACxB,WAAW;AAAA,QACZ;AAAA,MACT,OAAa;AACL,kBAAU,cAAc,kBAAkB;AAAA,UACxC,QAAQ,WAAW;AAAA,UACnB,WAAW,WAAW;AAAA,QACvB,GAAE,IAAI;AAAA,MACf;AAAA,IACA;AACI,QAAI,OAAO,sBAAsB,OAAQ;AAAA,aAChC,KAAK,SAAS,sBAAsB,QAAQ;AACnD,aAAO,oBAAoB,KAAK,SAAS;AAAA,IAC/C,OAAW;AACL,aAAO,oBAAoB;AAAA,IACjC;AACI,cAAU,cAAc,QAAQ;AAAA,MAC9B,SAAS,WAAW,SAAS,SAAS;AAAA,MACtC,eAAe,WAAW,SAAS,eAAe;AAAA,IACnD,GAAE,IAAI;AACP,WAAO,UAAU,OAAO,UAAU,KAAK,SAAS,UAAU,OAAO,YAAa;AAC9E,QAAI,iBAAiB,WAAW,QAAQ;AAAA,MACtC,QAAQ;AAAA,MACR,QAAQ,OAAO,MAAM;AAAA,IACtB;AACD,eAAW,QAAQ;AAAA,MACjB,CAAC,UAAU,OAAO,QAAQ,QAAQ,OAAO,SAAS,QAAQ;AAAA,MAC1D,CAAC,WAAW;AACV,eAAO,QAAQ,MAAM;AAAA,MAC7B;AAAA,IACK;AACD,WAAO,UAAU,aAAa,OAAO,gBAAgB,OAAO;AAC5D,UAAM,0BAA0B,CAAE;AAClC,QAAI,iCAAiC;AACrC,SAAK,aAAa,QAAQ,QAAQ,SAAS,2BAA2B,aAAa;AACjF,UAAI,OAAO,YAAY,YAAY,cAAc,YAAY,QAAQ,MAAM,MAAM,OAAO;AACtF;AAAA,MACR;AACM,uCAAiC,kCAAkC,YAAY;AAC/E,8BAAwB,QAAQ,YAAY,WAAW,YAAY,QAAQ;AAAA,IACjF,CAAK;AACD,UAAM,2BAA2B,CAAE;AACnC,SAAK,aAAa,SAAS,QAAQ,SAAS,yBAAyB,aAAa;AAChF,+BAAyB,KAAK,YAAY,WAAW,YAAY,QAAQ;AAAA,IAC/E,CAAK;AACD,QAAI;AACJ,QAAI,IAAI;AACR,QAAI;AACJ,QAAI,CAAC,gCAAgC;AACnC,YAAM,QAAQ,CAAC,gBAAgB,KAAK,IAAI,GAAG,MAAM;AACjD,YAAM,QAAQ,MAAM,OAAO,uBAAuB;AAClD,YAAM,KAAK,MAAM,OAAO,wBAAwB;AAChD,YAAM,MAAM;AACZ,gBAAU,QAAQ,QAAQ,MAAM;AAChC,aAAO,IAAI,KAAK;AACd,kBAAU,QAAQ,KAAK,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC;AAAA,MACrD;AACM,aAAO;AAAA,IACb;AACI,UAAM,wBAAwB;AAC9B,QAAI,YAAY;AAChB,QAAI;AACJ,WAAO,IAAI,KAAK;AACd,YAAM,cAAc,wBAAwB,GAAG;AAC/C,YAAM,aAAa,wBAAwB,GAAG;AAC9C,UAAI;AACF,oBAAY,YAAY,SAAS;AAAA,MAClC,SAAQ,OAAO;AACd,mBAAW,KAAK,MAAM,KAAK;AAC3B;AAAA,MACR;AAAA,IACA;AACI,QAAI;AACF,gBAAU,gBAAgB,KAAK,MAAM,SAAS;AAAA,IAC/C,SAAQ,OAAO;AACd,aAAO,QAAQ,OAAO,KAAK;AAAA,IACjC;AACI,QAAI;AACJ,UAAM,yBAAyB;AAC/B,WAAO,IAAI,KAAK;AACd,gBAAU,QAAQ,KAAK,yBAAyB,GAAG,GAAG,yBAAyB,GAAG,CAAC;AAAA,IACzF;AACI,WAAO;AAAA,EACX;AAAA,EACE,OAAO,QAAQ;AACb,aAAS,YAAY,KAAK,UAAU,MAAM;AAC1C,UAAM,WAAW,cAAc,OAAO,SAAS,OAAO,KAAK,OAAO,iBAAiB;AACnF,WAAO,SAAS,UAAU,OAAO,QAAQ,OAAO,gBAAgB;AAAA,EACpE;AACA;AACA,QAAQ,QAAQ,CAAC,UAAU,OAAO,QAAQ,SAAS,GAAG,SAAS,oBAAoB,QAAQ;AACzF,QAAM,UAAU,MAAM,IAAI,SAAS,KAAK,QAAQ;AAC9C,WAAO,KAAK,QAAQ,YAAY,UAAU,CAAA,GAAI;AAAA,MAC5C;AAAA,MACA;AAAA,MACA,OAAO,UAAU,IAAI;AAAA,IAC3B,CAAK,CAAC;AAAA,EACH;AACH,CAAC;AACD,QAAQ,QAAQ,CAAC,QAAQ,OAAO,OAAO,GAAG,SAAS,sBAAsB,QAAQ;AAC/E,WAAS,mBAAmB,QAAQ;AAClC,WAAO,SAAS,WAAW,KAAK,MAAM,QAAQ;AAC5C,aAAO,KAAK,QAAQ,YAAY,UAAU,CAAA,GAAI;AAAA,QAC5C;AAAA,QACA,SAAS,SAAS;AAAA,UAChB,gBAAgB;AAAA,QAC1B,IAAY,CAAE;AAAA,QACN;AAAA,QACA;AAAA,MACR,CAAO,CAAC;AAAA,IACH;AAAA,EACL;AACE,QAAM,UAAU,MAAM,IAAI,mBAAoB;AAC9C,QAAM,UAAU,SAAS,MAAM,IAAI,mBAAmB,IAAI;AAC5D,CAAC;AACD,MAAM,YAAY;AAAA,EAChB,YAAY,UAAU;AACpB,QAAI,OAAO,aAAa,YAAY;AAClC,YAAM,IAAI,UAAU,8BAA8B;AAAA,IACxD;AACI,QAAI;AACJ,SAAK,UAAU,IAAI,QAAQ,SAAS,gBAAgB,SAAS;AAC3D,uBAAiB;AAAA,IACvB,CAAK;AACD,UAAM,QAAQ;AACd,SAAK,QAAQ,KAAK,CAAC,WAAW;AAC5B,UAAI,CAAC,MAAM,WAAY;AACvB,UAAI,IAAI,MAAM,WAAW;AACzB,aAAO,MAAM,GAAG;AACd,cAAM,WAAW,CAAC,EAAE,MAAM;AAAA,MAClC;AACM,YAAM,aAAa;AAAA,IACzB,CAAK;AACD,SAAK,QAAQ,OAAO,CAAC,gBAAgB;AACnC,UAAI;AACJ,YAAM,UAAU,IAAI,QAAQ,CAAC,YAAY;AACvC,cAAM,UAAU,OAAO;AACvB,mBAAW;AAAA,MACnB,CAAO,EAAE,KAAK,WAAW;AACnB,cAAQ,SAAS,SAAS,SAAS;AACjC,cAAM,YAAY,QAAQ;AAAA,MAC3B;AACD,aAAO;AAAA,IACR;AACD,aAAS,SAAS,OAAO,SAAS,QAAQ,SAAS;AACjD,UAAI,MAAM,QAAQ;AAChB;AAAA,MACR;AACM,YAAM,SAAS,IAAI,cAAc,SAAS,QAAQ,OAAO;AACzD,qBAAe,MAAM,MAAM;AAAA,IACjC,CAAK;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIE,mBAAmB;AACjB,QAAI,KAAK,QAAQ;AACf,YAAM,KAAK;AAAA,IACjB;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAIE,UAAU,UAAU;AAClB,QAAI,KAAK,QAAQ;AACf,eAAS,KAAK,MAAM;AACpB;AAAA,IACN;AACI,QAAI,KAAK,YAAY;AACnB,WAAK,WAAW,KAAK,QAAQ;AAAA,IACnC,OAAW;AACL,WAAK,aAAa,CAAC,QAAQ;AAAA,IACjC;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAIE,YAAY,UAAU;AACpB,QAAI,CAAC,KAAK,YAAY;AACpB;AAAA,IACN;AACI,UAAM,QAAQ,KAAK,WAAW,QAAQ,QAAQ;AAC9C,QAAI,UAAU,IAAI;AAChB,WAAK,WAAW,OAAO,OAAO,CAAC;AAAA,IACrC;AAAA,EACA;AAAA,EACE,gBAAgB;AACd,UAAM,aAAa,IAAI,gBAAiB;AACxC,UAAM,QAAQ,CAAC,QAAQ;AACrB,iBAAW,MAAM,GAAG;AAAA,IACrB;AACD,SAAK,UAAU,KAAK;AACpB,eAAW,OAAO,cAAc,MAAM,KAAK,YAAY,KAAK;AAC5D,WAAO,WAAW;AAAA,EACtB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKE,OAAO,SAAS;AACd,QAAI;AACJ,UAAM,QAAQ,IAAI,YAAY,SAAS,SAAS,GAAG;AACjD,eAAS;AAAA,IACf,CAAK;AACD,WAAO;AAAA,MACL;AAAA,MACA;AAAA,IACD;AAAA,EACL;AACA;AACA,SAAS,OAAO,UAAU;AACxB,SAAO,SAAS,KAAK,KAAK;AACxB,WAAO,SAAS,MAAM,MAAM,GAAG;AAAA,EAChC;AACH;AACA,SAAS,aAAa,SAAS;AAC7B,SAAO,QAAQ,SAAS,OAAO,KAAK,QAAQ,iBAAiB;AAC/D;AACA,MAAM,iBAAiB;AAAA,EACrB,UAAU;AAAA,EACV,oBAAoB;AAAA,EACpB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,IAAI;AAAA,EACJ,SAAS;AAAA,EACT,UAAU;AAAA,EACV,6BAA6B;AAAA,EAC7B,WAAW;AAAA,EACX,cAAc;AAAA,EACd,gBAAgB;AAAA,EAChB,aAAa;AAAA,EACb,iBAAiB;AAAA,EACjB,QAAQ;AAAA,EACR,iBAAiB;AAAA,EACjB,kBAAkB;AAAA,EAClB,OAAO;AAAA,EACP,UAAU;AAAA,EACV,aAAa;AAAA,EACb,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,UAAU;AAAA,EACV,kBAAkB;AAAA,EAClB,eAAe;AAAA,EACf,6BAA6B;AAAA,EAC7B,gBAAgB;AAAA,EAChB,UAAU;AAAA,EACV,MAAM;AAAA,EACN,gBAAgB;AAAA,EAChB,oBAAoB;AAAA,EACpB,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,sBAAsB;AAAA,EACtB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,WAAW;AAAA,EACX,oBAAoB;AAAA,EACpB,qBAAqB;AAAA,EACrB,QAAQ;AAAA,EACR,kBAAkB;AAAA,EAClB,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,sBAAsB;AAAA,EACtB,iBAAiB;AAAA,EACjB,6BAA6B;AAAA,EAC7B,4BAA4B;AAAA,EAC5B,qBAAqB;AAAA,EACrB,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,oBAAoB;AAAA,EACpB,gBAAgB;AAAA,EAChB,yBAAyB;AAAA,EACzB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,cAAc;AAAA,EACd,aAAa;AAAA,EACb,+BAA+B;AACjC;AACA,OAAO,QAAQ,cAAc,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AACvD,iBAAe,KAAK,IAAI;AAC1B,CAAC;AACD,SAAS,eAAe,eAAe;AACrC,QAAM,UAAU,IAAI,MAAM,aAAa;AACvC,QAAM,WAAW,KAAK,MAAM,UAAU,SAAS,OAAO;AACtD,UAAQ,OAAO,UAAU,MAAM,WAAW,SAAS,EAAE,YAAY,MAAM;AACvE,UAAQ,OAAO,UAAU,SAAS,MAAM,EAAE,YAAY,MAAM;AAC5D,WAAS,SAAS,SAAS,OAAO,gBAAgB;AAChD,WAAO,eAAe,YAAY,eAAe,cAAc,CAAC;AAAA,EACjE;AACD,SAAO;AACT;AACA,MAAM,QAAQ,eAAe,QAAQ;AACrC,MAAM,QAAQ;AACd,MAAM,gBAAgB;AACtB,MAAM,cAAc;AACpB,MAAM,WAAW;AACjB,MAAM,UAAU;AAChB,MAAM,aAAa;AACnB,MAAM,aAAa;AACnB,MAAM,SAAS,MAAM;AACrB,MAAM,MAAM,SAAS,IAAI,UAAU;AACjC,SAAO,QAAQ,IAAI,QAAQ;AAC7B;AACA,MAAM,SAAS;AACf,MAAM,eAAe;AACrB,MAAM,cAAc;AACpB,MAAM,eAAe;AACrB,MAAM,aAAa,CAAC,UAAU,eAAe,QAAQ,WAAW,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,KAAK;AACpG,MAAM,aAAa,SAAS;AAC5B,MAAM,iBAAiB;AACvB,MAAM,UAAU;AAChB,MAAM,UAAU,MAAMA,SAAQ;AAAA,EAC5B,cAAc;AACZ,kBAAc,MAAM,cAAc;AAClC,SAAK,eAAe,UAAU,IAAI,aAAa;AAAA,EACnD;AAAA,EACE,OAAO,cAAc;AACnB,QAAI,CAACA,SAAQ,UAAU;AACrB,MAAAA,SAAQ,WAAW,IAAIA,SAAS;AAAA,IACtC;AACI,WAAOA,SAAQ;AAAA,EACnB;AAAA,EACE,MAAM,YAAY,MAAM;AACtB,QAAI,CAAC,KAAK,cAAc;AACtB,cAAQ,MAAM,SAAS,GAAG,IAAI;AAAA,IACpC;AAAA,EACA;AAAA,EACE,KAAK,YAAY,MAAM;AACrB,QAAI,CAAC,KAAK,cAAc;AACtB,cAAQ,KAAK,SAAS,GAAG,IAAI;AAAA,IACnC;AAAA,EACA;AAAA,EACE,KAAK,YAAY,MAAM;AACrB,YAAQ,KAAK,SAAS,GAAG,IAAI;AAAA,EACjC;AAAA,EACE,MAAM,YAAY,MAAM;AACtB,YAAQ,MAAM,SAAS,GAAG,IAAI;AAAA,EAClC;AACA;AACA,cAAc,SAAS,UAAU;AACjC,IAAI,SAAS;AACb,MAAM,wBAAwB,MAAM;AAAA,EAClC,YAAY,SAAS;AACnB,UAAM,OAAO;AACb,SAAK,OAAO;AAAA,EAChB;AACA;AACA,MAAM,KAAK;AAAA,EACT,YAAY,QAAQ;AAClB,kBAAc,MAAM,WAAW;AAC/B,kBAAc,MAAM,YAAY;AAChC,kBAAc,MAAM,SAAS;AAC7B,kBAAc,MAAM,SAAS;AAC7B,SAAK,YAAY,OAAO;AACxB,SAAK,aAAa,WAAW,kBAAkB,OAAO,UAAU;AAChE,SAAK,UAAU,OAAO,WAAW;AACjC,SAAK,UAAU,OAAO,WAAW;AAAA,EACrC;AAAA,EACE,MAAM,eAAe;AACnB,QAAI,IAAI,IAAI;AACZ,UAAM,2BAA2B,MAAM,MAAM;AAAA,MAC3C,GAAG,KAAK,OAAO;AAAA,MACf;AAAA,QACE,SAAS;AAAA,UACP,aAAa,KAAK;AAAA,QAC5B;AAAA,MACA;AAAA,IACK;AACD,QAAI,GAAG,KAAK,yBAAyB,SAAS,OAAO,SAAS,GAAG,UAAU;AACzE,YAAM,IAAI,MAAM,iCAAiC;AAAA,IACvD;AACI,UAAM,UAAU,yBAAyB,KAAK;AAC9C,UAAM,YAAY,MAAM,KAAK,YAAY,OAAO;AAChD,UAAM,eAAe,MAAM,MAAM;AAAA,MAC/B,GAAG,KAAK,OAAO;AAAA,MACf;AAAA,QACE,UAAU;AAAA,UACR,IAAI,KAAK;AAAA,UACT;AAAA,UACA,MAAM;AAAA,UACN,SAAS,KAAK;AAAA,QACf;AAAA,QACD,SAAS;AAAA,MACjB;AAAA,IACK;AACD,QAAI,GAAG,MAAM,KAAK,aAAa,SAAS,OAAO,SAAS,GAAG,SAAS,OAAO,SAAS,GAAG,eAAe;AACpG,YAAM,IAAI,MAAM,uBAAuB;AAAA,IAC7C;AACI,WAAO;AAAA,MACL,QAAQ,aAAa,KAAK;AAAA,IAC3B;AAAA,EACL;AAAA,EACE,MAAM,YAAY,SAAS;AACzB,UAAM,eAAe,IAAI,cAAc,OAAO,OAAO;AACrD,UAAM,iBAAiB,MAAM,KAAK,WAAW,KAAK,YAAY;AAC9D,WAAO,QAAQ,KAAK,cAAc,EAAE,SAAS,KAAK;AAAA,EACtD;AACA;AACA,MAAM,WAAW;AAAA,EACf,YAAY,QAAQ;AAClB,kBAAc,MAAM,WAAW;AAC/B,kBAAc,MAAM,QAAQ;AAC5B,kBAAc,MAAM,SAAS;AAC7B,kBAAc,MAAM,SAAS;AAC7B,kBAAc,MAAM,QAAQ;AAC5B,SAAK,YAAY,OAAO;AACxB,SAAK,SAAS,OAAO;AACrB,SAAK,UAAU,OAAO,WAAW;AACjC,SAAK,UAAU,OAAO,WAAW;AACjC,SAAK,SAAS,OAAO;AAAA,EACzB;AAAA,EACE,MAAM,eAAe;AACnB,QAAI,IAAI,IAAI;AACZ,UAAM,2BAA2B,MAAM,MAAM;AAAA,MAC3C,GAAG,KAAK,OAAO;AAAA,MACf;AAAA,QACE,SAAS;AAAA,UACP,aAAa,KAAK;AAAA,QAC5B;AAAA,MACA;AAAA,IACK;AACD,QAAI,GAAG,KAAK,yBAAyB,SAAS,OAAO,SAAS,GAAG,UAAU;AACzE,YAAM,IAAI,MAAM,iCAAiC;AAAA,IACvD;AACI,UAAM,UAAU,yBAAyB,KAAK;AAC9C,UAAM,YAAY,MAAM,KAAK,YAAY,KAAK,UAAU,OAAO,CAAC;AAChE,UAAM,eAAe,MAAM,MAAM;AAAA,MAC/B,GAAG,KAAK,OAAO;AAAA,MACf;AAAA,QACE,UAAU;AAAA,UACR,IAAI,KAAK;AAAA,UACT;AAAA,UACA,MAAM;AAAA,UACN,SAAS,KAAK;AAAA,QACf;AAAA,QACD,SAAS;AAAA,MACjB;AAAA,IACK;AACD,QAAI,GAAG,MAAM,KAAK,aAAa,SAAS,OAAO,SAAS,GAAG,SAAS,OAAO,SAAS,GAAG,eAAe;AACpG,YAAM,IAAI,MAAM,uBAAuB;AAAA,IAC7C;AACI,WAAO;AAAA,MACL,QAAQ,aAAa,KAAK;AAAA,IAC3B;AAAA,EACL;AAAA,EACE,MAAM,YAAY,SAAS;AACzB,QAAI;AACF,YAAM,eAAe,IAAI,cAAc,OAAO,OAAO;AACrD,WAAK,OAAO,MAAM,iBAAiB;AACnC,YAAM,iBAAiB,MAAM,KAAK,OAAO,KAAK,CAAC,YAAY,GAAG;AAAA,QAC5D,UAAU;AAAA,MAClB,CAAO;AACD,aAAO,QAAQ,KAAK,kBAAkB,OAAO,SAAS,eAAe,CAAC,EAAE,SAAS,EAAE,SAAS,KAAK;AAAA,IAClG,SAAQ,GAAG;AACV,WAAK,OAAO,MAAM,0BAA0B,CAAC;AAC7C,YAAM,IAAI,MAAM,wBAAwB;AAAA,IAC9C;AAAA,EACA;AACA;AAuFA,SAAS,GAAG,OAAO;AACjB,SAAO,IAAI,SAAS,MAAM,QAAQ,MAAM,UAAU;AACpD;AACA,MAAM,QAAQ;AAAA,EACZ,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,SAAS,MAAM;AAAA,EACjC;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,SAAS,QAAQ,KAAK;AAChC,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,YAAY;AAAA,EAChB,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,UAAU,QAAQ,IAAI;AAAA,EACxC;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,UAAU,QAAQ,OAAO,IAAI;AACvC,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,YAAY;AAAA,EAChB,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,UAAU,MAAM;AAAA,EAClC;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,UAAU,QAAQ,KAAK;AACjC,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,YAAY;AAAA,EAChB,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,UAAU,QAAQ,IAAI;AAAA,EACxC;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,UAAU,QAAQ,OAAO,IAAI;AACvC,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,YAAY;AAAA,EAChB,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,UAAU,MAAM;AAAA,EAClC;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,UAAU,QAAQ,KAAK;AACjC,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,WAAW;AAAA,EACf,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,SAAS,MAAM;AAAA,EACjC;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,SAAS,QAAQ,KAAK;AAChC,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,YAAY;AAAA,EAChB,KAAK;AAAA,EACL,IAAI,OAAO,QAAQ;AACjB,WAAO,GAAG,KAAK,EAAE,aAAa,QAAQ,IAAI;AAAA,EAC3C;AAAA,EACD,IAAI,OAAO,QAAQ,OAAO;AACxB,OAAG,KAAK,EAAE,aAAa,QAAQ,OAAO,IAAI;AAC1C,WAAO,SAAS;AAAA,EACpB;AACA;AACA,MAAM,WAAW;AAAA,EACf,YAAY,KAAK,UAAU;AACzB,SAAK,MAAM;AACX,SAAK,WAAW;AAAA,EACpB;AAAA,EACE,IAAI,YAAY,QAAQ;AACtB,WAAO,SAAS,KAAK,UAAU,EAAE,SAAS,KAAK,UAAU,QAAQ,SAAS,KAAK,GAAG;AAAA,EACtF;AACA;AACA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB,MAAM;AAAA,EACnC,cAAc;AACZ,UAAM,eAAe;AAAA,EACzB;AACA;AACA,MAAM,SAAS;AAAA,EACb,cAAc;AACZ,SAAK,UAAU,MAAM;AACrB,SAAK,SAAS,MAAM;AACpB,SAAK,UAAU,IAAI,QAAQ,CAAC,SAAS,WAAW;AAC9C,WAAK,SAAS;AACd,WAAK,UAAU;AAAA,IACrB,CAAK;AAAA,EACL;AACA;AACA,MAAM,qBAAqB;AAAA,EACzB,cAAc;AACZ,SAAK,oBAAoB,IAAI,OAAO;AACpC,SAAK,cAAc;AACnB,SAAK,YAAY,CAAE;AAAA,EACvB;AAAA,EACE,MAAM,KAAK,YAAY,QAAQ,QAAQ;AACrC,UAAM,YAAY,MAAM,KAAK,KAAK,YAAY,QAAQ,MAAM;AAC5D,SAAK,UAAU,KAAK,WAAW,SAAS,QAAQ,SAAS,SAAS,CAAC;AACnE,WAAO;AAAA,EACX;AAAA,EACE,MAAM,KAAK,SAAS,QAAQ,QAAQ;AAClC,QAAI,WAAW,GAAG;AAChB,aAAO;AAAA,IACb;AACI,QAAI,YAAY,KAAK,mBAAmB,SAAS,QAAQ,MAAM;AAC/D,iBAAa,MAAM,KAAK,wBAAwB,SAAS,SAAS,WAAW,SAAS,SAAS;AAC/F,QAAI,cAAc,GAAG;AACnB,YAAM,IAAI,iBAAkB;AAAA,IAClC;AACI,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQE,mBAAmB,SAAS,QAAQ,QAAQ;AAC1C,QAAI,YAAY;AAChB,QAAI,YAAY;AAChB,WAAO,KAAK,UAAU,SAAS,KAAK,YAAY,GAAG;AACjD,YAAM,WAAW,KAAK,UAAU,IAAK;AACrC,UAAI,CAAC;AACH,cAAM,IAAI,MAAM,4BAA4B;AAC9C,YAAM,UAAU,KAAK,IAAI,SAAS,QAAQ,SAAS;AACnD,cAAQ,IAAI,SAAS,SAAS,GAAG,OAAO,GAAG,SAAS,SAAS;AAC7D,mBAAa;AACb,mBAAa;AACb,UAAI,UAAU,SAAS,QAAQ;AAC7B,aAAK,UAAU,KAAK,SAAS,SAAS,OAAO,CAAC;AAAA,MACtD;AAAA,IACA;AACI,WAAO;AAAA,EACX;AAAA,EACE,MAAM,wBAAwB,SAAS,QAAQ,kBAAkB;AAC/D,QAAI,YAAY;AAChB,QAAI,YAAY;AAChB,WAAO,YAAY,KAAK,CAAC,KAAK,aAAa;AACzC,YAAM,SAAS,KAAK,IAAI,WAAW,KAAK,iBAAiB;AACzD,YAAM,WAAW,MAAM,KAAK,eAAe,SAAS,SAAS,WAAW,MAAM;AAC9E,UAAI,aAAa;AACf;AACF,mBAAa;AACb,mBAAa;AAAA,IACnB;AACI,WAAO;AAAA,EACX;AACA;AACA,MAAM,qBAAqB,qBAAqB;AAAA,EAC9C,YAAY,GAAG;AACb,UAAO;AACP,SAAK,IAAI;AACT,SAAK,WAAW;AAChB,QAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM;AACtB,YAAM,IAAI,MAAM,yCAAyC;AAAA,IAC/D;AACI,SAAK,EAAE,KAAK,OAAO,MAAM,KAAK,OAAO,IAAI,iBAAgB,CAAE,CAAC;AAC5D,SAAK,EAAE,KAAK,SAAS,CAAC,QAAQ,KAAK,OAAO,GAAG,CAAC;AAC9C,SAAK,EAAE,KAAK,SAAS,MAAM,KAAK,OAAO,IAAI,MAAM,eAAe,CAAC,CAAC;AAAA,EACtE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQE,MAAM,eAAe,SAAS,QAAQ,QAAQ;AAC5C,QAAI,KAAK,aAAa;AACpB,aAAO;AAAA,IACb;AACI,UAAM,aAAa,KAAK,EAAE,KAAK,MAAM;AACrC,QAAI,YAAY;AACd,cAAQ,IAAI,YAAY,MAAM;AAC9B,aAAO,WAAW;AAAA,IACxB;AACI,UAAM,UAAU;AAAA,MACd,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA,UAAU,IAAI,SAAQ;AAAA,IACvB;AACD,SAAK,WAAW,QAAQ;AACxB,SAAK,EAAE,KAAK,YAAY,MAAM;AAC5B,WAAK,aAAa,OAAO;AAAA,IAC/B,CAAK;AACD,WAAO,QAAQ,SAAS;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA;AAAA,EAKE,aAAa,SAAS;AACpB,UAAM,aAAa,KAAK,EAAE,KAAK,QAAQ,MAAM;AAC7C,QAAI,YAAY;AACd,cAAQ,OAAO,IAAI,YAAY,QAAQ,MAAM;AAC7C,cAAQ,SAAS,QAAQ,WAAW,MAAM;AAC1C,WAAK,WAAW;AAAA,IACtB,OAAW;AACL,WAAK,EAAE,KAAK,YAAY,MAAM;AAC5B,aAAK,aAAa,OAAO;AAAA,MACjC,CAAO;AAAA,IACP;AAAA,EACA;AAAA,EACE,OAAO,KAAK;AACV,SAAK,cAAc;AACnB,QAAI,KAAK,UAAU;AACjB,WAAK,SAAS,OAAO,GAAG;AACxB,WAAK,WAAW;AAAA,IACtB;AAAA,EACA;AAAA,EACE,MAAM,QAAQ;AACZ,SAAK,OAAO,IAAI,MAAM,OAAO,CAAC;AAAA,EAClC;AAAA,EACE,MAAM,QAAQ;AACZ,WAAO,KAAK,MAAO;AAAA,EACvB;AACA;AACA,MAAM,kBAAkB;AAAA,EACtB,YAAY,UAAU;AACpB,SAAK,WAAW;AAChB,SAAK,YAAY,IAAI,WAAW,CAAC;AACjC,SAAK,WAAW,WAAW,WAAW,CAAE;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOE,MAAM,UAAU,OAAO,WAAW,KAAK,UAAU;AAC/C,UAAM,aAAa,IAAI,WAAW,MAAM,GAAG;AAC3C,UAAM,MAAM,MAAM,KAAK,WAAW,YAAY,EAAE,UAAU;AAC1D,QAAI,MAAM,MAAM;AACd,YAAM,IAAI,iBAAkB;AAC9B,WAAO,MAAM,IAAI,YAAY,CAAC;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOE,MAAM,UAAU,OAAO,WAAW,KAAK,UAAU;AAC/C,UAAM,aAAa,IAAI,WAAW,MAAM,GAAG;AAC3C,UAAM,MAAM,MAAM,KAAK,WAAW,YAAY,EAAE,UAAU;AAC1D,QAAI,MAAM,MAAM;AACd,YAAM,IAAI,iBAAkB;AAC9B,WAAO,MAAM,IAAI,YAAY,CAAC;AAAA,EAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAME,MAAM,WAAW,OAAO;AACtB,UAAM,MAAM,MAAM,KAAK,WAAW,KAAK,WAAW,EAAE,QAAQ,MAAM,KAAK;AACvE,QAAI,MAAM,MAAM;AACd,YAAM,IAAI,iBAAkB;AAC9B,WAAO,MAAM,IAAI,KAAK,WAAW,CAAC;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAME,MAAM,WAAW,OAAO;AACtB,UAAM,MAAM,MAAM,KAAK,WAAW,KAAK,WAAW,EAAE,QAAQ,MAAM,KAAK;AACvE,QAAI,MAAM,MAAM;AACd,YAAM,IAAI,iBAAkB;AAC9B,WAAO,MAAM,IAAI,KAAK,WAAW,CAAC;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAME,MAAM,OAAO,QAAQ;AACnB,QAAI,KAAK,SAAS,SAAS,QAAQ;AACjC,YAAM,YAAY,KAAK,SAAS,OAAO,KAAK;AAC5C,UAAI,SAAS,WAAW;AACtB,aAAK,YAAY;AACjB,eAAO;AAAA,MACf;AAAA,IACA;AACI,SAAK,YAAY;AACjB,WAAO;AAAA,EACX;AAAA,EACE,MAAM,QAAQ;AAAA,EAChB;AAAA,EACE,iBAAiB,YAAY,SAAS;AACpC,QAAI,WAAW,QAAQ,aAAa,UAAU,QAAQ,WAAW,KAAK,UAAU;AAC9E,YAAM,IAAI,MAAM,uEAAuE;AAAA,IAC7F;AACI,QAAI,SAAS;AACX,aAAO;AAAA,QACL,WAAW,QAAQ,cAAc;AAAA,QACjC,QAAQ,QAAQ,SAAS,QAAQ,SAAS;AAAA,QAC1C,QAAQ,QAAQ,SAAS,QAAQ,SAAS,WAAW,UAAU,QAAQ,SAAS,QAAQ,SAAS;AAAA,QACjG,UAAU,QAAQ,WAAW,QAAQ,WAAW,KAAK;AAAA,MACtD;AAAA,IACP;AACI,WAAO;AAAA,MACL,WAAW;AAAA,MACX,QAAQ;AAAA,MACR,QAAQ,WAAW;AAAA,MACnB,UAAU,KAAK;AAAA,IAChB;AAAA,EACL;AACA;AACA,MAAM,gBAAgB;AACtB,MAAM,4BAA4B,kBAAkB;AAAA,EAClD,YAAY,cAAc,UAAU;AAClC,UAAM,QAAQ;AACd,SAAK,eAAe;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKE,MAAM,cAAc;AAClB,WAAO,KAAK;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOE,MAAM,WAAW,YAAY,SAAS;AACpC,UAAM,cAAc,KAAK,iBAAiB,YAAY,OAAO;AAC7D,UAAM,YAAY,YAAY,WAAW,KAAK;AAC9C,QAAI,YAAY,GAAG;AACjB,YAAM,KAAK,OAAO,SAAS;AAC3B,aAAO,KAAK,WAAW,YAAY,OAAO;AAAA,IAChD,WAAe,YAAY,GAAG;AACxB,YAAM,IAAI,MAAM,uEAAuE;AAAA,IAC7F;AACI,QAAI,YAAY,WAAW,GAAG;AAC5B,aAAO;AAAA,IACb;AACI,UAAM,YAAY,MAAM,KAAK,aAAa,KAAK,YAAY,YAAY,QAAQ,YAAY,MAAM;AACjG,SAAK,YAAY;AACjB,SAAK,CAAC,WAAW,CAAC,QAAQ,cAAc,YAAY,YAAY,QAAQ;AACtE,YAAM,IAAI,iBAAkB;AAAA,IAClC;AACI,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOE,MAAM,WAAW,YAAY,SAAS;AACpC,UAAM,cAAc,KAAK,iBAAiB,YAAY,OAAO;AAC7D,QAAI,YAAY;AAChB,QAAI,YAAY,UAAU;AACxB,YAAM,YAAY,YAAY,WAAW,KAAK;AAC9C,UAAI,YAAY,GAAG;AACjB,cAAM,aAAa,IAAI,WAAW,YAAY,SAAS,SAAS;AAChE,oBAAY,MAAM,KAAK,WAAW,YAAY,EAAE,WAAW,YAAY,WAAW;AAClF,mBAAW,IAAI,WAAW,SAAS,SAAS,GAAG,YAAY,MAAM;AACjE,eAAO,YAAY;AAAA,MAC3B,WAAiB,YAAY,GAAG;AACxB,cAAM,IAAI,MAAM,gDAAgD;AAAA,MACxE;AAAA,IACA;AACI,QAAI,YAAY,SAAS,GAAG;AAC1B,UAAI;AACF,oBAAY,MAAM,KAAK,aAAa,KAAK,YAAY,YAAY,QAAQ,YAAY,MAAM;AAAA,MAC5F,SAAQ,KAAK;AACZ,YAAI,WAAW,QAAQ,aAAa,eAAe,kBAAkB;AACnE,iBAAO;AAAA,QACjB;AACQ,cAAM;AAAA,MACd;AACM,UAAI,CAAC,YAAY,aAAa,YAAY,YAAY,QAAQ;AAC5D,cAAM,IAAI,iBAAkB;AAAA,MACpC;AAAA,IACA;AACI,WAAO;AAAA,EACX;AAAA,EACE,MAAM,OAAO,QAAQ;AACnB,UAAM,UAAU,KAAK,IAAI,eAAe,MAAM;AAC9C,UAAM,MAAM,IAAI,WAAW,OAAO;AAClC,QAAI,eAAe;AACnB,WAAO,eAAe,QAAQ;AAC5B,YAAM,YAAY,SAAS;AAC3B,YAAM,YAAY,MAAM,KAAK,WAAW,KAAK,EAAE,QAAQ,KAAK,IAAI,SAAS,SAAS,EAAC,CAAE;AACrF,UAAI,YAAY,GAAG;AACjB,eAAO;AAAA,MACf;AACM,sBAAgB;AAAA,IACtB;AACI,WAAO;AAAA,EACX;AACA;AACA,MAAM,wBAAwB,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAM9C,YAAY,YAAY,UAAU;AAChC,UAAM,QAAQ;AACd,SAAK,aAAa;AAClB,SAAK,SAAS,OAAO,KAAK,SAAS,OAAO,KAAK,SAAS,OAAO,WAAW;AAAA,EAC9E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOE,MAAM,WAAW,YAAY,SAAS;AACpC,QAAI,WAAW,QAAQ,UAAU;AAC/B,UAAI,QAAQ,WAAW,KAAK,UAAU;AACpC,cAAM,IAAI,MAAM,uEAAuE;AAAA,MAC/F;AACM,WAAK,WAAW,QAAQ;AAAA,IAC9B;AACI,UAAM,YAAY,MAAM,KAAK,WAAW,YAAY,OAAO;AAC3D,SAAK,YAAY;AACjB,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOE,MAAM,WAAW,YAAY,SAAS;AACpC,UAAM,cAAc,KAAK,iBAAiB,YAAY,OAAO;AAC7D,UAAM,aAAa,KAAK,IAAI,KAAK,WAAW,SAAS,YAAY,UAAU,YAAY,MAAM;AAC7F,QAAI,CAAC,YAAY,aAAa,aAAa,YAAY,QAAQ;AAC7D,YAAM,IAAI,iBAAkB;AAAA,IAClC,OAAW;AACL,iBAAW,IAAI,KAAK,WAAW,SAAS,YAAY,UAAU,YAAY,WAAW,UAAU,GAAG,YAAY,MAAM;AACpH,aAAO;AAAA,IACb;AAAA,EACA;AAAA,EACE,MAAM,QAAQ;AAAA,EAChB;AACA;AACA,SAAS,WAAW,QAAQ,UAAU;AACpC,aAAW,WAAW,WAAW,CAAE;AACnC,SAAO,IAAI,oBAAoB,IAAI,aAAa,MAAM,GAAG,QAAQ;AACnE;AACA,SAAS,WAAW,YAAY,UAAU;AACxC,SAAO,IAAI,gBAAgB,YAAY,QAAQ;AACjD;AACA,SAAS,cAAc,QAAQ;AAC7B,SAAO,CAAC,GAAG,MAAM,EAAE,IAAI,CAAC,cAAc,UAAU,WAAW,CAAC,CAAC;AAC/D;AACA,SAAS,yBAAyB,SAAS,SAAS,GAAG;AACrD,QAAM,UAAU,OAAO,SAAS,QAAQ,SAAS,QAAQ,KAAK,GAAG,EAAE,QAAQ,SAAS,EAAE,EAAE,KAAM,GAAE,CAAC;AACjG,MAAI,OAAO,MAAM,OAAO,GAAG;AACzB,WAAO;AAAA,EACX;AACE,MAAI,MAAM,IAAI;AACd,WAAS,QAAQ,QAAQ,QAAQ,SAAS,KAAK,SAAS;AACtD,WAAO,QAAQ,KAAK;AAAA,EACxB;AACE,WAAS,QAAQ,SAAS,KAAK,QAAQ,SAAS,KAAK,SAAS;AAC5D,WAAO,QAAQ,KAAK;AAAA,EACxB;AACE,SAAO,YAAY;AACrB;AACA,MAAM,sBAAsB;AAAA,EAC1B,KAAK,CAAC,SAAS,WAAW,QAAQ,SAAS,CAAC,IAAI,MAAM,QAAQ,SAAS,CAAC,KAAK,IAAI,QAAQ,SAAS,CAAC,KAAK,KAAK,QAAQ,MAAM,KAAK;AAAA,EAChI,KAAK;AACP;AACA,MAAM,aAAa;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,MAAM,YAAY;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAA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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es25.js","sources":["../../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js"],"sourcesContent":["var buffer = {};\n\nvar base64Js = {};\n\nbase64Js.byteLength = byteLength;\nbase64Js.toByteArray = toByteArray;\nbase64Js.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\nvar ieee754 = {};\n\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\n\nieee754.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\nieee754.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\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n(function (exports) {\n\n\tconst base64 = base64Js;\n\tconst ieee754$1 = ieee754;\n\tconst customInspectSymbol =\n\t (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n\t ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n\t : null;\n\n\texports.Buffer = Buffer;\n\texports.SlowBuffer = SlowBuffer;\n\texports.INSPECT_MAX_BYTES = 50;\n\n\tconst K_MAX_LENGTH = 0x7fffffff;\n\texports.kMaxLength = K_MAX_LENGTH;\n\tconst { Uint8Array: GlobalUint8Array, ArrayBuffer: GlobalArrayBuffer, SharedArrayBuffer: GlobalSharedArrayBuffer } = globalThis;\n\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Print warning and recommend using `buffer` v4.x which has an Object\n\t * implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * We report that the browser does not support typed arrays if the are not subclassable\n\t * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n\t * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n\t * for __proto__ and has a buggy typed array implementation.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n\t typeof console.error === 'function') {\n\t console.error(\n\t 'This browser lacks typed array (Uint8Array) support which is required by ' +\n\t '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n\t );\n\t}\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances can be augmented?\n\t try {\n\t const arr = new GlobalUint8Array(1);\n\t const proto = { foo: function () { return 42 } };\n\t Object.setPrototypeOf(proto, GlobalUint8Array.prototype);\n\t Object.setPrototypeOf(arr, proto);\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tObject.defineProperty(Buffer.prototype, 'parent', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.buffer\n\t }\n\t});\n\n\tObject.defineProperty(Buffer.prototype, 'offset', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.byteOffset\n\t }\n\t});\n\n\tfunction createBuffer (length) {\n\t if (length > K_MAX_LENGTH) {\n\t throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n\t }\n\t // Return an augmented `Uint8Array` instance\n\t const buf = new GlobalUint8Array(length);\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\t return buf\n\t}\n\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be of type string. Received type number'\n\t )\n\t }\n\t return allocUnsafe(arg)\n\t }\n\t return from(arg, encodingOrOffset, length)\n\t}\n\n\tBuffer.poolSize = 8192; // not used by this implementation\n\n\tfunction from (value, encodingOrOffset, length) {\n\t if (typeof value === 'string') {\n\t return fromString(value, encodingOrOffset)\n\t }\n\n\t if (GlobalArrayBuffer.isView(value)) {\n\t return fromArrayView(value)\n\t }\n\n\t if (value == null) {\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t }\n\n\t if (isInstance(value, GlobalArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalArrayBuffer))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof GlobalSharedArrayBuffer !== 'undefined' &&\n\t (isInstance(value, GlobalSharedArrayBuffer) ||\n\t (value && isInstance(value.buffer, GlobalSharedArrayBuffer)))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof value === 'number') {\n\t throw new TypeError(\n\t 'The \"value\" argument must not be of type number. Received type number'\n\t )\n\t }\n\n\t const valueOf = value.valueOf && value.valueOf();\n\t if (valueOf != null && valueOf !== value) {\n\t return Buffer.from(valueOf, encodingOrOffset, length)\n\t }\n\n\t const b = fromObject(value);\n\t if (b) return b\n\n\t if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n\t typeof value[Symbol.toPrimitive] === 'function') {\n\t return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n\t }\n\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t}\n\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(value, encodingOrOffset, length)\n\t};\n\n\t// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n\t// https://github.com/feross/buffer/pull/148\n\tObject.setPrototypeOf(Buffer.prototype, GlobalUint8Array.prototype);\n\tObject.setPrototypeOf(Buffer, GlobalUint8Array);\n\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be of type number')\n\t } else if (size < 0) {\n\t throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n\t }\n\t}\n\n\tfunction alloc (size, fill, encoding) {\n\t assertSize(size);\n\t if (size <= 0) {\n\t return createBuffer(size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpreted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(size).fill(fill, encoding)\n\t : createBuffer(size).fill(fill)\n\t }\n\t return createBuffer(size)\n\t}\n\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(size, fill, encoding)\n\t};\n\n\tfunction allocUnsafe (size) {\n\t assertSize(size);\n\t return createBuffer(size < 0 ? 0 : checked(size) | 0)\n\t}\n\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(size)\n\t};\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(size)\n\t};\n\n\tfunction fromString (string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8';\n\t }\n\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\n\t const length = byteLength(string, encoding) | 0;\n\t let buf = createBuffer(length);\n\n\t const actual = buf.write(string, encoding);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (array) {\n\t const length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t const buf = createBuffer(length);\n\t for (let i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayView (arrayView) {\n\t if (isInstance(arrayView, GlobalUint8Array)) {\n\t const copy = new GlobalUint8Array(arrayView);\n\t return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n\t }\n\t return fromArrayLike(arrayView)\n\t}\n\n\tfunction fromArrayBuffer (array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\"offset\" is outside of buffer bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\"length\" is outside of buffer bounds')\n\t }\n\n\t let buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new GlobalUint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new GlobalUint8Array(array, byteOffset);\n\t } else {\n\t buf = new GlobalUint8Array(array, byteOffset, length);\n\t }\n\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\n\t return buf\n\t}\n\n\tfunction fromObject (obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t const len = checked(obj.length) | 0;\n\t const buf = createBuffer(len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj.length !== undefined) {\n\t if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n\t return createBuffer(0)\n\t }\n\t return fromArrayLike(obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(obj.data)\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0;\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return b != null && b._isBuffer === true &&\n\t b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n\t};\n\n\tBuffer.compare = function compare (a, b) {\n\t if (isInstance(a, GlobalUint8Array)) a = Buffer.from(a, a.offset, a.byteLength);\n\t if (isInstance(b, GlobalUint8Array)) b = Buffer.from(b, b.offset, b.byteLength);\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError(\n\t 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n\t )\n\t }\n\n\t if (a === b) return 0\n\n\t let x = a.length;\n\t let y = b.length;\n\n\t for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i];\n\t y = b[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!Array.isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\n\t let i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t const buffer = Buffer.allocUnsafe(length);\n\t let pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t let buf = list[i];\n\t if (isInstance(buf, GlobalUint8Array)) {\n\t if (pos + buf.length > buffer.length) {\n\t if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf);\n\t buf.copy(buffer, pos);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t buffer,\n\t buf,\n\t pos\n\t );\n\t }\n\t } else if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t } else {\n\t buf.copy(buffer, pos);\n\t }\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (GlobalArrayBuffer.isView(string) || isInstance(string, GlobalArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n\t 'Received type ' + typeof string\n\t )\n\t }\n\n\t const len = string.length;\n\t const mustMatch = (arguments.length > 2 && arguments[2] === true);\n\t if (!mustMatch && len === 0) return 0\n\n\t // Use a for loop to avoid recursion\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) {\n\t return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n\t }\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength;\n\n\tfunction slowToString (encoding, start, end) {\n\t let loweredCase = false;\n\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0;\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\n\t if (end === undefined || end > this.length) {\n\t end = this.length;\n\t }\n\n\t if (end <= 0) {\n\t return ''\n\t }\n\n\t // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0;\n\t start >>>= 0;\n\n\t if (end <= start) {\n\t return ''\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\n\t// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n\t// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n\t// reliably in a browserify context because there could be multiple different\n\t// copies of the 'buffer' package in use. This method works even for Buffer\n\t// instances that were created from another copy of the `buffer` package.\n\t// See: https://github.com/feross/buffer/issues/154\n\tBuffer.prototype._isBuffer = true;\n\n\tfunction swap (b, n, m) {\n\t const i = b[n];\n\t b[n] = b[m];\n\t b[m] = i;\n\t}\n\n\tBuffer.prototype.swap16 = function swap16 () {\n\t const len = this.length;\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (let i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap32 = function swap32 () {\n\t const len = this.length;\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (let i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3);\n\t swap(this, i + 1, i + 2);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap64 = function swap64 () {\n\t const len = this.length;\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (let i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7);\n\t swap(this, i + 1, i + 6);\n\t swap(this, i + 2, i + 5);\n\t swap(this, i + 3, i + 4);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.toString = function toString () {\n\t const length = this.length;\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t};\n\n\tBuffer.prototype.toLocaleString = Buffer.prototype.toString;\n\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t};\n\n\tBuffer.prototype.inspect = function inspect () {\n\t let str = '';\n\t const max = exports.INSPECT_MAX_BYTES;\n\t str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();\n\t if (this.length > max) str += ' ... ';\n\t return '<Buffer ' + str + '>'\n\t};\n\tif (customInspectSymbol) {\n\t Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect;\n\t}\n\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (isInstance(target, GlobalUint8Array)) {\n\t target = Buffer.from(target, target.offset, target.byteLength);\n\t }\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError(\n\t 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n\t 'Received type ' + (typeof target)\n\t )\n\t }\n\n\t if (start === undefined) {\n\t start = 0;\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0;\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0;\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length;\n\t }\n\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\n\t start >>>= 0;\n\t end >>>= 0;\n\t thisStart >>>= 0;\n\t thisEnd >>>= 0;\n\n\t if (this === target) return 0\n\n\t let x = thisEnd - thisStart;\n\t let y = end - start;\n\t const len = Math.min(x, y);\n\n\t const thisCopy = this.slice(thisStart, thisEnd);\n\t const targetCopy = target.slice(start, end);\n\n\t for (let i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i];\n\t y = targetCopy[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset;\n\t byteOffset = 0;\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff;\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000;\n\t }\n\t byteOffset = +byteOffset; // Coerce to Number.\n\t if (numberIsNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1);\n\t }\n\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1;\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0;\n\t else return -1\n\t }\n\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding);\n\t }\n\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF; // Search for a byte value [0-255]\n\t if (typeof GlobalUint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return GlobalUint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return GlobalUint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n\t }\n\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t let indexSize = 1;\n\t let arrLength = arr.length;\n\t let valLength = val.length;\n\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase();\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2;\n\t arrLength /= 2;\n\t valLength /= 2;\n\t byteOffset /= 2;\n\t }\n\t }\n\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\n\t let i;\n\t if (dir) {\n\t let foundIndex = -1;\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i;\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex;\n\t foundIndex = -1;\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n\t for (i = byteOffset; i >= 0; i--) {\n\t let found = true;\n\t for (let j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false;\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\n\t return -1\n\t}\n\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t};\n\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t};\n\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t};\n\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0;\n\t const remaining = buf.length - offset;\n\t if (!length) {\n\t length = remaining;\n\t } else {\n\t length = Number(length);\n\t if (length > remaining) {\n\t length = remaining;\n\t }\n\t }\n\n\t const strLen = string.length;\n\n\t if (length > strLen / 2) {\n\t length = strLen / 2;\n\t }\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t const parsed = parseInt(string.substr(i * 2, 2), 16);\n\t if (numberIsNaN(parsed)) return i\n\t buf[offset + i] = parsed;\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8';\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset;\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset >>> 0;\n\t if (isFinite(length)) {\n\t length = length >>> 0;\n\t if (encoding === undefined) encoding = 'utf8';\n\t } else {\n\t encoding = length;\n\t length = undefined;\n\t }\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\n\t const remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t let loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return asciiWrite(this, string, offset, length)\n\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t};\n\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t};\n\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end);\n\t const res = [];\n\n\t let i = start;\n\t while (i < end) {\n\t const firstByte = buf[i];\n\t let codePoint = null;\n\t let bytesPerSequence = (firstByte > 0xEF)\n\t ? 4\n\t : (firstByte > 0xDF)\n\t ? 3\n\t : (firstByte > 0xBF)\n\t ? 2\n\t : 1;\n\n\t if (i + bytesPerSequence <= end) {\n\t let secondByte, thirdByte, fourthByte, tempCodePoint;\n\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte;\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1];\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F);\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F);\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t fourthByte = buf[i + 3];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F);\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t }\n\t }\n\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD;\n\t bytesPerSequence = 1;\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000;\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n\t codePoint = 0xDC00 | codePoint & 0x3FF;\n\t }\n\n\t res.push(codePoint);\n\t i += bytesPerSequence;\n\t }\n\n\t return decodeCodePointsArray(res)\n\t}\n\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tconst MAX_ARGUMENTS_LENGTH = 0x1000;\n\n\tfunction decodeCodePointsArray (codePoints) {\n\t const len = codePoints.length;\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t let res = '';\n\t let i = 0;\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t );\n\t }\n\t return res\n\t}\n\n\tfunction asciiSlice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F);\n\t }\n\t return ret\n\t}\n\n\tfunction latin1Slice (buf, start, end) {\n\t let ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (let i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i]);\n\t }\n\t return ret\n\t}\n\n\tfunction hexSlice (buf, start, end) {\n\t const len = buf.length;\n\n\t if (!start || start < 0) start = 0;\n\t if (!end || end < 0 || end > len) end = len;\n\n\t let out = '';\n\t for (let i = start; i < end; ++i) {\n\t out += hexSliceLookupTable[buf[i]];\n\t }\n\t return out\n\t}\n\n\tfunction utf16leSlice (buf, start, end) {\n\t const bytes = buf.slice(start, end);\n\t let res = '';\n\t // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n\t for (let i = 0; i < bytes.length - 1; i += 2) {\n\t res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256));\n\t }\n\t return res\n\t}\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t const len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t const newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(newBuf, Buffer.prototype);\n\n\t return newBuf\n\t};\n\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\n\tBuffer.prototype.readUintLE =\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUintBE =\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length);\n\t }\n\n\t let val = this[offset + --byteLength];\n\t let mul = 1;\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUint8 =\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t return this[offset]\n\t};\n\n\tBuffer.prototype.readUint16LE =\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return this[offset] | (this[offset + 1] << 8)\n\t};\n\n\tBuffer.prototype.readUint16BE =\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return (this[offset] << 8) | this[offset + 1]\n\t};\n\n\tBuffer.prototype.readUint32LE =\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t};\n\n\tBuffer.prototype.readUint32BE =\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const lo = first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24;\n\n\t const hi = this[++offset] +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t last * 2 ** 24;\n\n\t return BigInt(lo) + (BigInt(hi) << BigInt(32))\n\t});\n\n\tBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const hi = first * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t const lo = this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last;\n\n\t return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n\t});\n\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let val = this[offset];\n\t let mul = 1;\n\t let i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t let i = byteLength;\n\t let mul = 1;\n\t let val = this[offset + --i];\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t};\n\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset] | (this[offset + 1] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t const val = this[offset + 1] | (this[offset] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t};\n\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t};\n\n\tBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = this[offset + 4] +\n\t this[offset + 5] * 2 ** 8 +\n\t this[offset + 6] * 2 ** 16 +\n\t (last << 24); // Overflow\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(first +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 24)\n\t});\n\n\tBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n\t offset = offset >>> 0;\n\t validateNumber(offset, 'offset');\n\t const first = this[offset];\n\t const last = this[offset + 7];\n\t if (first === undefined || last === undefined) {\n\t boundsError(offset, this.length - 8);\n\t }\n\n\t const val = (first << 24) + // Overflow\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t this[++offset];\n\n\t return (BigInt(val) << BigInt(32)) +\n\t BigInt(this[++offset] * 2 ** 24 +\n\t this[++offset] * 2 ** 16 +\n\t this[++offset] * 2 ** 8 +\n\t last)\n\t});\n\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, true, 23, 4)\n\t};\n\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754$1.read(this, offset, false, 23, 4)\n\t};\n\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, true, 52, 8)\n\t};\n\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754$1.read(this, offset, false, 52, 8)\n\t};\n\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\n\tBuffer.prototype.writeUintLE =\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let mul = 1;\n\t let i = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUintBE =\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t const maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUint8 =\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0);\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeUint16LE =\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint16BE =\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUint32LE =\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset + 3] = (value >>> 24);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeUint32BE =\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t lo = lo >> 8;\n\t buf[offset++] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t hi = hi >> 8;\n\t buf[offset++] = hi;\n\t return offset\n\t}\n\n\tfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n\t checkIntBI(value, min, max, buf, offset, 7);\n\n\t let lo = Number(value & BigInt(0xffffffff));\n\t buf[offset + 7] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 6] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 5] = lo;\n\t lo = lo >> 8;\n\t buf[offset + 4] = lo;\n\t let hi = Number(value >> BigInt(32) & BigInt(0xffffffff));\n\t buf[offset + 3] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 2] = hi;\n\t hi = hi >> 8;\n\t buf[offset + 1] = hi;\n\t hi = hi >> 8;\n\t buf[offset] = hi;\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = 0;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t const limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t let i = byteLength - 1;\n\t let mul = 1;\n\t let sub = 0;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80);\n\t if (value < 0) value = 0xff + value + 1;\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 3] = (value >>> 24);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t if (value < 0) value = 0xffffffff + value + 1;\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n\t return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n\t return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n\t});\n\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 23, 4);\n\t return offset + 4\n\t}\n\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t};\n\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8);\n\t }\n\t ieee754$1.write(buf, value, offset, littleEndian, 52, 8);\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t};\n\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t const len = end - start;\n\n\t if (this === target && typeof GlobalUint8Array.prototype.copyWithin === 'function') {\n\t // Use built-in when available, missing from IE11\n\t this.copyWithin(targetStart, start, end);\n\t } else {\n\t GlobalUint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, end),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start;\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t encoding = end;\n\t end = this.length;\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t if (val.length === 1) {\n\t const code = val.charCodeAt(0);\n\t if ((encoding === 'utf8' && code < 128) ||\n\t encoding === 'latin1') {\n\t // Fast path: If `val` fits into a single byte, use that numeric value.\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t } else if (typeof val === 'boolean') {\n\t val = Number(val);\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t let i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t const bytes = Buffer.isBuffer(val)\n\t ? val\n\t : Buffer.from(val, encoding);\n\t const len = bytes.length;\n\t if (len === 0) {\n\t throw new TypeError('The value \"' + val +\n\t '\" is invalid for argument \"value\"')\n\t }\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\t// CUSTOM ERRORS\n\t// =============\n\n\t// Simplified versions from Node, changed for Buffer-only usage\n\tconst errors = {};\n\tfunction E (sym, getMessage, Base) {\n\t errors[sym] = class NodeError extends Base {\n\t constructor () {\n\t super();\n\n\t Object.defineProperty(this, 'message', {\n\t value: getMessage.apply(this, arguments),\n\t writable: true,\n\t configurable: true\n\t });\n\n\t // Add the error code to the name to include it in the stack trace.\n\t this.name = `${this.name} [${sym}]`;\n\t // Access the stack to generate the error message including the error code\n\t // from the name.\n\t this.stack; // eslint-disable-line no-unused-expressions\n\t // Reset the name to the actual name.\n\t delete this.name;\n\t }\n\n\t get code () {\n\t return sym\n\t }\n\n\t set code (value) {\n\t Object.defineProperty(this, 'code', {\n\t configurable: true,\n\t enumerable: true,\n\t value,\n\t writable: true\n\t });\n\t }\n\n\t toString () {\n\t return `${this.name} [${sym}]: ${this.message}`\n\t }\n\t };\n\t}\n\n\tE('ERR_BUFFER_OUT_OF_BOUNDS',\n\t function (name) {\n\t if (name) {\n\t return `${name} is outside of buffer bounds`\n\t }\n\n\t return 'Attempt to access memory outside buffer bounds'\n\t }, RangeError);\n\tE('ERR_INVALID_ARG_TYPE',\n\t function (name, actual) {\n\t return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n\t }, TypeError);\n\tE('ERR_OUT_OF_RANGE',\n\t function (str, range, input) {\n\t let msg = `The value of \"${str}\" is out of range.`;\n\t let received = input;\n\t if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n\t received = addNumericalSeparator(String(input));\n\t } else if (typeof input === 'bigint') {\n\t received = String(input);\n\t if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n\t received = addNumericalSeparator(received);\n\t }\n\t received += 'n';\n\t }\n\t msg += ` It must be ${range}. Received ${received}`;\n\t return msg\n\t }, RangeError);\n\n\tfunction addNumericalSeparator (val) {\n\t let res = '';\n\t let i = val.length;\n\t const start = val[0] === '-' ? 1 : 0;\n\t for (; i >= start + 4; i -= 3) {\n\t res = `_${val.slice(i - 3, i)}${res}`;\n\t }\n\t return `${val.slice(0, i)}${res}`\n\t}\n\n\t// CHECK FUNCTIONS\n\t// ===============\n\n\tfunction checkBounds (buf, offset, byteLength) {\n\t validateNumber(offset, 'offset');\n\t if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n\t boundsError(offset, buf.length - (byteLength + 1));\n\t }\n\t}\n\n\tfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n\t if (value > max || value < min) {\n\t const n = typeof min === 'bigint' ? 'n' : '';\n\t let range;\n\t if (byteLength > 3) {\n\t if (min === 0 || min === BigInt(0)) {\n\t range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`;\n\t } else {\n\t range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n\t `${(byteLength + 1) * 8 - 1}${n}`;\n\t }\n\t } else {\n\t range = `>= ${min}${n} and <= ${max}${n}`;\n\t }\n\t throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n\t }\n\t checkBounds(buf, offset, byteLength);\n\t}\n\n\tfunction validateNumber (value, name) {\n\t if (typeof value !== 'number') {\n\t throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n\t }\n\t}\n\n\tfunction boundsError (value, length, type) {\n\t if (Math.floor(value) !== value) {\n\t validateNumber(value, type);\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n\t }\n\n\t if (length < 0) {\n\t throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n\t }\n\n\t throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n\t `>= ${type ? 1 : 0} and <= ${length}`,\n\t value)\n\t}\n\n\t// HELPER FUNCTIONS\n\t// ================\n\n\tconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n\n\tfunction base64clean (str) {\n\t // Node takes equal signs as end of the Base64 encoding\n\t str = str.split('=')[0];\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = str.trim().replace(INVALID_BASE64_RE, '');\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '=';\n\t }\n\t return str\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t let codePoint;\n\t const length = string.length;\n\t let leadSurrogate = null;\n\t const bytes = [];\n\n\t for (let i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction asciiToBytes (str) {\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF);\n\t }\n\t return byteArray\n\t}\n\n\tfunction utf16leToBytes (str, units) {\n\t let c, hi, lo;\n\t const byteArray = [];\n\t for (let i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\n\t c = str.charCodeAt(i);\n\t hi = c >> 8;\n\t lo = c % 256;\n\t byteArray.push(lo);\n\t byteArray.push(hi);\n\t }\n\n\t return byteArray\n\t}\n\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t let i;\n\t for (i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\t// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n\t// the `instanceof` check but they should be treated as of that type.\n\t// See: https://github.com/feross/buffer/issues/166\n\tfunction isInstance (obj, type) {\n\t return obj instanceof type ||\n\t (obj != null && obj.constructor != null && obj.constructor.name != null &&\n\t obj.constructor.name === type.name)\n\t}\n\tfunction numberIsNaN (obj) {\n\t // For IE11 support\n\t return obj !== obj // eslint-disable-line no-self-compare\n\t}\n\n\t// Create lookup table for `toString('hex')`\n\t// See: https://github.com/feross/buffer/issues/219\n\tconst hexSliceLookupTable = (function () {\n\t const alphabet = '0123456789abcdef';\n\t const table = new Array(256);\n\t for (let i = 0; i < 16; ++i) {\n\t const i16 = i * 16;\n\t for (let j = 0; j < 16; ++j) {\n\t table[i16 + j] = alphabet[i] + alphabet[j];\n\t }\n\t }\n\t return table\n\t})();\n\n\t// Return not function with Error if BigInt not supported\n\tfunction defineBigIntMethod (fn) {\n\t return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n\t}\n\n\tfunction BufferBigIntNotDefined () {\n\t throw new Error('BigInt not supported')\n\t} \n} (buffer));\n\nconst Buffer = buffer.Buffer;\n\nconst Blob = buffer.Blob;\nconst BlobOptions = buffer.BlobOptions;\nconst Buffer$1 = buffer.Buffer;\nconst File = buffer.File;\nconst FileOptions = buffer.FileOptions;\nconst INSPECT_MAX_BYTES = buffer.INSPECT_MAX_BYTES;\nconst SlowBuffer = buffer.SlowBuffer;\nconst TranscodeEncoding = buffer.TranscodeEncoding;\nconst atob = buffer.atob;\nconst btoa = buffer.btoa;\nconst constants = buffer.constants;\nconst isAscii = buffer.isAscii;\nconst isUtf8 = buffer.isUtf8;\nconst kMaxLength = buffer.kMaxLength;\nconst kStringMaxLength = buffer.kStringMaxLength;\nconst resolveObjectURL = buffer.resolveObjectURL;\nconst transcode = buffer.transcode;\nexport { Blob, BlobOptions, Buffer$1 as Buffer, File, FileOptions, INSPECT_MAX_BYTES, SlowBuffer, TranscodeEncoding, atob, btoa, constants, Buffer as default, isAscii, isUtf8, kMaxLength, kStringMaxLength, resolveObjectURL, transcode };\n//# sourceMappingURL=index.js.map\n"],"names":["buffer","Buffer","byteLength","i","code"],"mappings":"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","x_google_ignoreList":[0]}
|