Skip to content

Instantly share code, notes, and snippets.

@manzt
Created August 16, 2022 15:47
Show Gist options
  • Save manzt/fb8fbc336a8285b83773745669dcd82a to your computer and use it in GitHub Desktop.
Save manzt/fb8fbc336a8285b83773745669dcd82a to your computer and use it in GitHub Desktop.
patch of gosling v0.9.22 with API support for custom chromsizes
This file has been truncated, but you can view the full file.
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('pixi.js'), require('react'), require('higlass'), require('react-dom')) :
typeof define === 'function' && define.amd ? define(['exports', 'pixi.js', 'react', 'higlass', 'react-dom'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.gosling = {}, global.PIXI, global.React, global.hglib, global.ReactDOM));
}(this, (function (exports, pixi_js, React, higlass, ReactDOM) { 'use strict';
var __mods = { 'pixi.js': pixi_js, 'react': React, 'react-dom': ReactDOM, 'higlass': higlass };
var require = name => __mods[name];
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __esm = (fn, res) => function __init() {
return fn && (res = (0, fn[Object.keys(fn)[0]])(fn = 0)), res;
};
var __commonJS = (cb, mod) => function __require() {
return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __export = (target, all2) => {
__markAsModule(target);
for (var name2 in all2)
__defProp(target, name2, { get: all2[name2], enumerable: true });
};
var __reExport = (target, module2, desc) => {
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
for (let key of __getOwnPropNames(module2))
if (!__hasOwnProp.call(target, key) && key !== "default")
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
}
return target;
};
var __toModule = (module2) => {
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
};
// node_modules/base64-js/index.js
var require_base64_js = __commonJS({
"node_modules/base64-js/index.js"(exports2) {
init_buffer_shim();
"use strict";
exports2.byteLength = byteLength;
exports2.toByteArray = toByteArray;
exports2.fromByteArray = fromByteArray;
var lookup = [];
var revLookup = [];
var Arr = typeof Uint8Array !== "undefined" ? Uint8Array : Array;
var code = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
for (i4 = 0, len = code.length; i4 < len; ++i4) {
lookup[i4] = code[i4];
revLookup[code.charCodeAt(i4)] = i4;
}
var i4;
var len;
revLookup["-".charCodeAt(0)] = 62;
revLookup["_".charCodeAt(0)] = 63;
function getLens(b64) {
var len2 = b64.length;
if (len2 % 4 > 0) {
throw new Error("Invalid string. Length must be a multiple of 4");
}
var validLen = b64.indexOf("=");
if (validLen === -1)
validLen = len2;
var placeHoldersLen = validLen === len2 ? 0 : 4 - validLen % 4;
return [validLen, placeHoldersLen];
}
function byteLength(b64) {
var lens = getLens(b64);
var validLen = lens[0];
var placeHoldersLen = lens[1];
return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen;
}
function _byteLength(b64, validLen, placeHoldersLen) {
return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen;
}
function toByteArray(b64) {
var tmp;
var lens = getLens(b64);
var validLen = lens[0];
var placeHoldersLen = lens[1];
var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));
var curByte = 0;
var len2 = placeHoldersLen > 0 ? validLen - 4 : validLen;
var i5;
for (i5 = 0; i5 < len2; i5 += 4) {
tmp = revLookup[b64.charCodeAt(i5)] << 18 | revLookup[b64.charCodeAt(i5 + 1)] << 12 | revLookup[b64.charCodeAt(i5 + 2)] << 6 | revLookup[b64.charCodeAt(i5 + 3)];
arr[curByte++] = tmp >> 16 & 255;
arr[curByte++] = tmp >> 8 & 255;
arr[curByte++] = tmp & 255;
}
if (placeHoldersLen === 2) {
tmp = revLookup[b64.charCodeAt(i5)] << 2 | revLookup[b64.charCodeAt(i5 + 1)] >> 4;
arr[curByte++] = tmp & 255;
}
if (placeHoldersLen === 1) {
tmp = revLookup[b64.charCodeAt(i5)] << 10 | revLookup[b64.charCodeAt(i5 + 1)] << 4 | revLookup[b64.charCodeAt(i5 + 2)] >> 2;
arr[curByte++] = tmp >> 8 & 255;
arr[curByte++] = tmp & 255;
}
return arr;
}
function tripletToBase64(num) {
return lookup[num >> 18 & 63] + lookup[num >> 12 & 63] + lookup[num >> 6 & 63] + lookup[num & 63];
}
function encodeChunk(uint8, start, end) {
var tmp;
var output = [];
for (var i5 = start; i5 < end; i5 += 3) {
tmp = (uint8[i5] << 16 & 16711680) + (uint8[i5 + 1] << 8 & 65280) + (uint8[i5 + 2] & 255);
output.push(tripletToBase64(tmp));
}
return output.join("");
}
function fromByteArray(uint8) {
var tmp;
var len2 = uint8.length;
var extraBytes = len2 % 3;
var parts = [];
var maxChunkLength = 16383;
for (var i5 = 0, len22 = len2 - extraBytes; i5 < len22; i5 += maxChunkLength) {
parts.push(encodeChunk(uint8, i5, i5 + maxChunkLength > len22 ? len22 : i5 + maxChunkLength));
}
if (extraBytes === 1) {
tmp = uint8[len2 - 1];
parts.push(lookup[tmp >> 2] + lookup[tmp << 4 & 63] + "==");
} else if (extraBytes === 2) {
tmp = (uint8[len2 - 2] << 8) + uint8[len2 - 1];
parts.push(lookup[tmp >> 10] + lookup[tmp >> 4 & 63] + lookup[tmp << 2 & 63] + "=");
}
return parts.join("");
}
}
});
// node_modules/ieee754/index.js
var require_ieee754 = __commonJS({
"node_modules/ieee754/index.js"(exports2) {
init_buffer_shim();
exports2.read = function(buffer2, offset, isLE, mLen, nBytes) {
var e4, m5;
var eLen = nBytes * 8 - mLen - 1;
var eMax = (1 << eLen) - 1;
var eBias = eMax >> 1;
var nBits = -7;
var i4 = isLE ? nBytes - 1 : 0;
var d3 = isLE ? -1 : 1;
var s4 = buffer2[offset + i4];
i4 += d3;
e4 = s4 & (1 << -nBits) - 1;
s4 >>= -nBits;
nBits += eLen;
for (; nBits > 0; e4 = e4 * 256 + buffer2[offset + i4], i4 += d3, nBits -= 8) {
}
m5 = e4 & (1 << -nBits) - 1;
e4 >>= -nBits;
nBits += mLen;
for (; nBits > 0; m5 = m5 * 256 + buffer2[offset + i4], i4 += d3, nBits -= 8) {
}
if (e4 === 0) {
e4 = 1 - eBias;
} else if (e4 === eMax) {
return m5 ? NaN : (s4 ? -1 : 1) * Infinity;
} else {
m5 = m5 + Math.pow(2, mLen);
e4 = e4 - eBias;
}
return (s4 ? -1 : 1) * m5 * Math.pow(2, e4 - mLen);
};
exports2.write = function(buffer2, value, offset, isLE, mLen, nBytes) {
var e4, m5, c6;
var eLen = nBytes * 8 - mLen - 1;
var eMax = (1 << eLen) - 1;
var eBias = eMax >> 1;
var rt2 = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0;
var i4 = isLE ? 0 : nBytes - 1;
var d3 = isLE ? 1 : -1;
var s4 = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;
value = Math.abs(value);
if (isNaN(value) || value === Infinity) {
m5 = isNaN(value) ? 1 : 0;
e4 = eMax;
} else {
e4 = Math.floor(Math.log(value) / Math.LN2);
if (value * (c6 = Math.pow(2, -e4)) < 1) {
e4--;
c6 *= 2;
}
if (e4 + eBias >= 1) {
value += rt2 / c6;
} else {
value += rt2 * Math.pow(2, 1 - eBias);
}
if (value * c6 >= 2) {
e4++;
c6 /= 2;
}
if (e4 + eBias >= eMax) {
m5 = 0;
e4 = eMax;
} else if (e4 + eBias >= 1) {
m5 = (value * c6 - 1) * Math.pow(2, mLen);
e4 = e4 + eBias;
} else {
m5 = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);
e4 = 0;
}
}
for (; mLen >= 8; buffer2[offset + i4] = m5 & 255, i4 += d3, m5 /= 256, mLen -= 8) {
}
e4 = e4 << mLen | m5;
eLen += mLen;
for (; eLen > 0; buffer2[offset + i4] = e4 & 255, i4 += d3, e4 /= 256, eLen -= 8) {
}
buffer2[offset + i4 - d3] |= s4 * 128;
};
}
});
// node_modules/buffer/index.js
var require_buffer = __commonJS({
"node_modules/buffer/index.js"(exports2) {
init_buffer_shim();
"use strict";
var base64 = require_base64_js();
var ieee754 = require_ieee754();
var customInspectSymbol = typeof Symbol === "function" && typeof Symbol["for"] === "function" ? Symbol["for"]("nodejs.util.inspect.custom") : null;
exports2.Buffer = Buffer4;
exports2.SlowBuffer = SlowBuffer;
exports2.INSPECT_MAX_BYTES = 50;
var K_MAX_LENGTH = 2147483647;
exports2.kMaxLength = K_MAX_LENGTH;
Buffer4.TYPED_ARRAY_SUPPORT = typedArraySupport();
if (!Buffer4.TYPED_ARRAY_SUPPORT && typeof console !== "undefined" && typeof console.error === "function") {
console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");
}
function typedArraySupport() {
try {
const arr = new Uint8Array(1);
const proto = { foo: function() {
return 42;
} };
Object.setPrototypeOf(proto, Uint8Array.prototype);
Object.setPrototypeOf(arr, proto);
return arr.foo() === 42;
} catch (e4) {
return false;
}
}
Object.defineProperty(Buffer4.prototype, "parent", {
enumerable: true,
get: function() {
if (!Buffer4.isBuffer(this))
return void 0;
return this.buffer;
}
});
Object.defineProperty(Buffer4.prototype, "offset", {
enumerable: true,
get: function() {
if (!Buffer4.isBuffer(this))
return void 0;
return this.byteOffset;
}
});
function createBuffer(length) {
if (length > K_MAX_LENGTH) {
throw new RangeError('The value "' + length + '" is invalid for option "size"');
}
const buf = new Uint8Array(length);
Object.setPrototypeOf(buf, Buffer4.prototype);
return buf;
}
function Buffer4(arg, encodingOrOffset, length) {
if (typeof arg === "number") {
if (typeof encodingOrOffset === "string") {
throw new TypeError('The "string" argument must be of type string. Received type number');
}
return allocUnsafe(arg);
}
return from2(arg, encodingOrOffset, length);
}
Buffer4.poolSize = 8192;
function from2(value, encodingOrOffset, length) {
if (typeof value === "string") {
return fromString2(value, encodingOrOffset);
}
if (ArrayBuffer.isView(value)) {
return fromArrayView(value);
}
if (value == null) {
throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
}
if (isInstance(value, ArrayBuffer) || value && isInstance(value.buffer, ArrayBuffer)) {
return fromArrayBuffer(value, encodingOrOffset, length);
}
if (typeof SharedArrayBuffer !== "undefined" && (isInstance(value, SharedArrayBuffer) || value && isInstance(value.buffer, SharedArrayBuffer))) {
return fromArrayBuffer(value, encodingOrOffset, length);
}
if (typeof value === "number") {
throw new TypeError('The "value" argument must not be of type number. Received type number');
}
const valueOf = value.valueOf && value.valueOf();
if (valueOf != null && valueOf !== value) {
return Buffer4.from(valueOf, encodingOrOffset, length);
}
const b3 = fromObject(value);
if (b3)
return b3;
if (typeof Symbol !== "undefined" && Symbol.toPrimitive != null && typeof value[Symbol.toPrimitive] === "function") {
return Buffer4.from(value[Symbol.toPrimitive]("string"), encodingOrOffset, length);
}
throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
}
Buffer4.from = function(value, encodingOrOffset, length) {
return from2(value, encodingOrOffset, length);
};
Object.setPrototypeOf(Buffer4.prototype, Uint8Array.prototype);
Object.setPrototypeOf(Buffer4, Uint8Array);
function assertSize(size) {
if (typeof size !== "number") {
throw new TypeError('"size" argument must be of type number');
} else if (size < 0) {
throw new RangeError('The value "' + size + '" is invalid for option "size"');
}
}
function alloc(size, fill, encoding) {
assertSize(size);
if (size <= 0) {
return createBuffer(size);
}
if (fill !== void 0) {
return typeof encoding === "string" ? createBuffer(size).fill(fill, encoding) : createBuffer(size).fill(fill);
}
return createBuffer(size);
}
Buffer4.alloc = function(size, fill, encoding) {
return alloc(size, fill, encoding);
};
function allocUnsafe(size) {
assertSize(size);
return createBuffer(size < 0 ? 0 : checked(size) | 0);
}
Buffer4.allocUnsafe = function(size) {
return allocUnsafe(size);
};
Buffer4.allocUnsafeSlow = function(size) {
return allocUnsafe(size);
};
function fromString2(string, encoding) {
if (typeof encoding !== "string" || encoding === "") {
encoding = "utf8";
}
if (!Buffer4.isEncoding(encoding)) {
throw new TypeError("Unknown encoding: " + encoding);
}
const length = byteLength(string, encoding) | 0;
let buf = createBuffer(length);
const actual = buf.write(string, encoding);
if (actual !== length) {
buf = buf.slice(0, actual);
}
return buf;
}
function fromArrayLike(array) {
const length = array.length < 0 ? 0 : checked(array.length) | 0;
const buf = createBuffer(length);
for (let i4 = 0; i4 < length; i4 += 1) {
buf[i4] = array[i4] & 255;
}
return buf;
}
function fromArrayView(arrayView) {
if (isInstance(arrayView, Uint8Array)) {
const copy4 = new Uint8Array(arrayView);
return fromArrayBuffer(copy4.buffer, copy4.byteOffset, copy4.byteLength);
}
return fromArrayLike(arrayView);
}
function fromArrayBuffer(array, byteOffset, length) {
if (byteOffset < 0 || array.byteLength < byteOffset) {
throw new RangeError('"offset" is outside of buffer bounds');
}
if (array.byteLength < byteOffset + (length || 0)) {
throw new RangeError('"length" is outside of buffer bounds');
}
let buf;
if (byteOffset === void 0 && length === void 0) {
buf = new Uint8Array(array);
} else if (length === void 0) {
buf = new Uint8Array(array, byteOffset);
} else {
buf = new Uint8Array(array, byteOffset, length);
}
Object.setPrototypeOf(buf, Buffer4.prototype);
return buf;
}
function fromObject(obj) {
if (Buffer4.isBuffer(obj)) {
const len = checked(obj.length) | 0;
const buf = createBuffer(len);
if (buf.length === 0) {
return buf;
}
obj.copy(buf, 0, 0, len);
return buf;
}
if (obj.length !== void 0) {
if (typeof obj.length !== "number" || numberIsNaN(obj.length)) {
return createBuffer(0);
}
return fromArrayLike(obj);
}
if (obj.type === "Buffer" && Array.isArray(obj.data)) {
return fromArrayLike(obj.data);
}
}
function checked(length) {
if (length >= K_MAX_LENGTH) {
throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + K_MAX_LENGTH.toString(16) + " bytes");
}
return length | 0;
}
function SlowBuffer(length) {
if (+length != length) {
length = 0;
}
return Buffer4.alloc(+length);
}
Buffer4.isBuffer = function isBuffer2(b3) {
return b3 != null && b3._isBuffer === true && b3 !== Buffer4.prototype;
};
Buffer4.compare = function compare2(a4, b3) {
if (isInstance(a4, Uint8Array))
a4 = Buffer4.from(a4, a4.offset, a4.byteLength);
if (isInstance(b3, Uint8Array))
b3 = Buffer4.from(b3, b3.offset, b3.byteLength);
if (!Buffer4.isBuffer(a4) || !Buffer4.isBuffer(b3)) {
throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');
}
if (a4 === b3)
return 0;
let x3 = a4.length;
let y4 = b3.length;
for (let i4 = 0, len = Math.min(x3, y4); i4 < len; ++i4) {
if (a4[i4] !== b3[i4]) {
x3 = a4[i4];
y4 = b3[i4];
break;
}
}
if (x3 < y4)
return -1;
if (y4 < x3)
return 1;
return 0;
};
Buffer4.isEncoding = function isEncoding(encoding) {
switch (String(encoding).toLowerCase()) {
case "hex":
case "utf8":
case "utf-8":
case "ascii":
case "latin1":
case "binary":
case "base64":
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return true;
default:
return false;
}
};
Buffer4.concat = function concat2(list, length) {
if (!Array.isArray(list)) {
throw new TypeError('"list" argument must be an Array of Buffers');
}
if (list.length === 0) {
return Buffer4.alloc(0);
}
let i4;
if (length === void 0) {
length = 0;
for (i4 = 0; i4 < list.length; ++i4) {
length += list[i4].length;
}
}
const buffer2 = Buffer4.allocUnsafe(length);
let pos = 0;
for (i4 = 0; i4 < list.length; ++i4) {
let buf = list[i4];
if (isInstance(buf, Uint8Array)) {
if (pos + buf.length > buffer2.length) {
if (!Buffer4.isBuffer(buf))
buf = Buffer4.from(buf);
buf.copy(buffer2, pos);
} else {
Uint8Array.prototype.set.call(buffer2, buf, pos);
}
} else if (!Buffer4.isBuffer(buf)) {
throw new TypeError('"list" argument must be an Array of Buffers');
} else {
buf.copy(buffer2, pos);
}
pos += buf.length;
}
return buffer2;
};
function byteLength(string, encoding) {
if (Buffer4.isBuffer(string)) {
return string.length;
}
if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {
return string.byteLength;
}
if (typeof string !== "string") {
throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof string);
}
const len = string.length;
const mustMatch = arguments.length > 2 && arguments[2] === true;
if (!mustMatch && len === 0)
return 0;
let loweredCase = false;
for (; ; ) {
switch (encoding) {
case "ascii":
case "latin1":
case "binary":
return len;
case "utf8":
case "utf-8":
return utf8ToBytes(string).length;
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return len * 2;
case "hex":
return len >>> 1;
case "base64":
return base64ToBytes(string).length;
default:
if (loweredCase) {
return mustMatch ? -1 : utf8ToBytes(string).length;
}
encoding = ("" + encoding).toLowerCase();
loweredCase = true;
}
}
}
Buffer4.byteLength = byteLength;
function slowToString(encoding, start, end) {
let loweredCase = false;
if (start === void 0 || start < 0) {
start = 0;
}
if (start > this.length) {
return "";
}
if (end === void 0 || end > this.length) {
end = this.length;
}
if (end <= 0) {
return "";
}
end >>>= 0;
start >>>= 0;
if (end <= start) {
return "";
}
if (!encoding)
encoding = "utf8";
while (true) {
switch (encoding) {
case "hex":
return hexSlice(this, start, end);
case "utf8":
case "utf-8":
return utf8Slice(this, start, end);
case "ascii":
return asciiSlice(this, start, end);
case "latin1":
case "binary":
return latin1Slice(this, start, end);
case "base64":
return base64Slice(this, start, end);
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return utf16leSlice(this, start, end);
default:
if (loweredCase)
throw new TypeError("Unknown encoding: " + encoding);
encoding = (encoding + "").toLowerCase();
loweredCase = true;
}
}
}
Buffer4.prototype._isBuffer = true;
function swap(b3, n4, m5) {
const i4 = b3[n4];
b3[n4] = b3[m5];
b3[m5] = i4;
}
Buffer4.prototype.swap16 = function swap16() {
const len = this.length;
if (len % 2 !== 0) {
throw new RangeError("Buffer size must be a multiple of 16-bits");
}
for (let i4 = 0; i4 < len; i4 += 2) {
swap(this, i4, i4 + 1);
}
return this;
};
Buffer4.prototype.swap32 = function swap32() {
const len = this.length;
if (len % 4 !== 0) {
throw new RangeError("Buffer size must be a multiple of 32-bits");
}
for (let i4 = 0; i4 < len; i4 += 4) {
swap(this, i4, i4 + 3);
swap(this, i4 + 1, i4 + 2);
}
return this;
};
Buffer4.prototype.swap64 = function swap64() {
const len = this.length;
if (len % 8 !== 0) {
throw new RangeError("Buffer size must be a multiple of 64-bits");
}
for (let i4 = 0; i4 < len; i4 += 8) {
swap(this, i4, i4 + 7);
swap(this, i4 + 1, i4 + 6);
swap(this, i4 + 2, i4 + 5);
swap(this, i4 + 3, i4 + 4);
}
return this;
};
Buffer4.prototype.toString = function toString9() {
const length = this.length;
if (length === 0)
return "";
if (arguments.length === 0)
return utf8Slice(this, 0, length);
return slowToString.apply(this, arguments);
};
Buffer4.prototype.toLocaleString = Buffer4.prototype.toString;
Buffer4.prototype.equals = function equals2(b3) {
if (!Buffer4.isBuffer(b3))
throw new TypeError("Argument must be a Buffer");
if (this === b3)
return true;
return Buffer4.compare(this, b3) === 0;
};
Buffer4.prototype.inspect = function inspect() {
let str = "";
const max8 = exports2.INSPECT_MAX_BYTES;
str = this.toString("hex", 0, max8).replace(/(.{2})/g, "$1 ").trim();
if (this.length > max8)
str += " ... ";
return "<Buffer " + str + ">";
};
if (customInspectSymbol) {
Buffer4.prototype[customInspectSymbol] = Buffer4.prototype.inspect;
}
Buffer4.prototype.compare = function compare2(target, start, end, thisStart, thisEnd) {
if (isInstance(target, Uint8Array)) {
target = Buffer4.from(target, target.offset, target.byteLength);
}
if (!Buffer4.isBuffer(target)) {
throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof target);
}
if (start === void 0) {
start = 0;
}
if (end === void 0) {
end = target ? target.length : 0;
}
if (thisStart === void 0) {
thisStart = 0;
}
if (thisEnd === void 0) {
thisEnd = this.length;
}
if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
throw new RangeError("out of range index");
}
if (thisStart >= thisEnd && start >= end) {
return 0;
}
if (thisStart >= thisEnd) {
return -1;
}
if (start >= end) {
return 1;
}
start >>>= 0;
end >>>= 0;
thisStart >>>= 0;
thisEnd >>>= 0;
if (this === target)
return 0;
let x3 = thisEnd - thisStart;
let y4 = end - start;
const len = Math.min(x3, y4);
const thisCopy = this.slice(thisStart, thisEnd);
const targetCopy = target.slice(start, end);
for (let i4 = 0; i4 < len; ++i4) {
if (thisCopy[i4] !== targetCopy[i4]) {
x3 = thisCopy[i4];
y4 = targetCopy[i4];
break;
}
}
if (x3 < y4)
return -1;
if (y4 < x3)
return 1;
return 0;
};
function bidirectionalIndexOf(buffer2, val, byteOffset, encoding, dir) {
if (buffer2.length === 0)
return -1;
if (typeof byteOffset === "string") {
encoding = byteOffset;
byteOffset = 0;
} else if (byteOffset > 2147483647) {
byteOffset = 2147483647;
} else if (byteOffset < -2147483648) {
byteOffset = -2147483648;
}
byteOffset = +byteOffset;
if (numberIsNaN(byteOffset)) {
byteOffset = dir ? 0 : buffer2.length - 1;
}
if (byteOffset < 0)
byteOffset = buffer2.length + byteOffset;
if (byteOffset >= buffer2.length) {
if (dir)
return -1;
else
byteOffset = buffer2.length - 1;
} else if (byteOffset < 0) {
if (dir)
byteOffset = 0;
else
return -1;
}
if (typeof val === "string") {
val = Buffer4.from(val, encoding);
}
if (Buffer4.isBuffer(val)) {
if (val.length === 0) {
return -1;
}
return arrayIndexOf(buffer2, val, byteOffset, encoding, dir);
} else if (typeof val === "number") {
val = val & 255;
if (typeof Uint8Array.prototype.indexOf === "function") {
if (dir) {
return Uint8Array.prototype.indexOf.call(buffer2, val, byteOffset);
} else {
return Uint8Array.prototype.lastIndexOf.call(buffer2, val, byteOffset);
}
}
return arrayIndexOf(buffer2, [val], byteOffset, encoding, dir);
}
throw new TypeError("val must be string, number or Buffer");
}
function arrayIndexOf(arr, val, byteOffset, encoding, dir) {
let indexSize = 1;
let arrLength = arr.length;
let valLength = val.length;
if (encoding !== void 0) {
encoding = String(encoding).toLowerCase();
if (encoding === "ucs2" || encoding === "ucs-2" || encoding === "utf16le" || encoding === "utf-16le") {
if (arr.length < 2 || val.length < 2) {
return -1;
}
indexSize = 2;
arrLength /= 2;
valLength /= 2;
byteOffset /= 2;
}
}
function read(buf, i5) {
if (indexSize === 1) {
return buf[i5];
} else {
return buf.readUInt16BE(i5 * indexSize);
}
}
let i4;
if (dir) {
let foundIndex = -1;
for (i4 = byteOffset; i4 < arrLength; i4++) {
if (read(arr, i4) === read(val, foundIndex === -1 ? 0 : i4 - foundIndex)) {
if (foundIndex === -1)
foundIndex = i4;
if (i4 - foundIndex + 1 === valLength)
return foundIndex * indexSize;
} else {
if (foundIndex !== -1)
i4 -= i4 - foundIndex;
foundIndex = -1;
}
}
} else {
if (byteOffset + valLength > arrLength)
byteOffset = arrLength - valLength;
for (i4 = byteOffset; i4 >= 0; i4--) {
let found = true;
for (let j2 = 0; j2 < valLength; j2++) {
if (read(arr, i4 + j2) !== read(val, j2)) {
found = false;
break;
}
}
if (found)
return i4;
}
}
return -1;
}
Buffer4.prototype.includes = function includes2(val, byteOffset, encoding) {
return this.indexOf(val, byteOffset, encoding) !== -1;
};
Buffer4.prototype.indexOf = function indexOf2(val, byteOffset, encoding) {
return bidirectionalIndexOf(this, val, byteOffset, encoding, true);
};
Buffer4.prototype.lastIndexOf = function lastIndexOf(val, byteOffset, encoding) {
return bidirectionalIndexOf(this, val, byteOffset, encoding, false);
};
function hexWrite(buf, string, offset, length) {
offset = Number(offset) || 0;
const remaining = buf.length - offset;
if (!length) {
length = remaining;
} else {
length = Number(length);
if (length > remaining) {
length = remaining;
}
}
const strLen = string.length;
if (length > strLen / 2) {
length = strLen / 2;
}
let i4;
for (i4 = 0; i4 < length; ++i4) {
const parsed = parseInt(string.substr(i4 * 2, 2), 16);
if (numberIsNaN(parsed))
return i4;
buf[offset + i4] = parsed;
}
return i4;
}
function utf8Write(buf, string, offset, length) {
return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length);
}
function asciiWrite(buf, string, offset, length) {
return blitBuffer(asciiToBytes(string), buf, offset, length);
}
function base64Write(buf, string, offset, length) {
return blitBuffer(base64ToBytes(string), buf, offset, length);
}
function ucs2Write(buf, string, offset, length) {
return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length);
}
Buffer4.prototype.write = function write(string, offset, length, encoding) {
if (offset === void 0) {
encoding = "utf8";
length = this.length;
offset = 0;
} else if (length === void 0 && typeof offset === "string") {
encoding = offset;
length = this.length;
offset = 0;
} else if (isFinite(offset)) {
offset = offset >>> 0;
if (isFinite(length)) {
length = length >>> 0;
if (encoding === void 0)
encoding = "utf8";
} else {
encoding = length;
length = void 0;
}
} else {
throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");
}
const remaining = this.length - offset;
if (length === void 0 || length > remaining)
length = remaining;
if (string.length > 0 && (length < 0 || offset < 0) || offset > this.length) {
throw new RangeError("Attempt to write outside buffer bounds");
}
if (!encoding)
encoding = "utf8";
let loweredCase = false;
for (; ; ) {
switch (encoding) {
case "hex":
return hexWrite(this, string, offset, length);
case "utf8":
case "utf-8":
return utf8Write(this, string, offset, length);
case "ascii":
case "latin1":
case "binary":
return asciiWrite(this, string, offset, length);
case "base64":
return base64Write(this, string, offset, length);
case "ucs2":
case "ucs-2":
case "utf16le":
case "utf-16le":
return ucs2Write(this, string, offset, length);
default:
if (loweredCase)
throw new TypeError("Unknown encoding: " + encoding);
encoding = ("" + encoding).toLowerCase();
loweredCase = true;
}
}
};
Buffer4.prototype.toJSON = function toJSON() {
return {
type: "Buffer",
data: Array.prototype.slice.call(this._arr || this, 0)
};
};
function base64Slice(buf, start, end) {
if (start === 0 && end === buf.length) {
return base64.fromByteArray(buf);
} else {
return base64.fromByteArray(buf.slice(start, end));
}
}
function utf8Slice(buf, start, end) {
end = Math.min(buf.length, end);
const res = [];
let i4 = start;
while (i4 < end) {
const firstByte = buf[i4];
let codePoint = null;
let bytesPerSequence = firstByte > 239 ? 4 : firstByte > 223 ? 3 : firstByte > 191 ? 2 : 1;
if (i4 + bytesPerSequence <= end) {
let secondByte, thirdByte, fourthByte, tempCodePoint;
switch (bytesPerSequence) {
case 1:
if (firstByte < 128) {
codePoint = firstByte;
}
break;
case 2:
secondByte = buf[i4 + 1];
if ((secondByte & 192) === 128) {
tempCodePoint = (firstByte & 31) << 6 | secondByte & 63;
if (tempCodePoint > 127) {
codePoint = tempCodePoint;
}
}
break;
case 3:
secondByte = buf[i4 + 1];
thirdByte = buf[i4 + 2];
if ((secondByte & 192) === 128 && (thirdByte & 192) === 128) {
tempCodePoint = (firstByte & 15) << 12 | (secondByte & 63) << 6 | thirdByte & 63;
if (tempCodePoint > 2047 && (tempCodePoint < 55296 || tempCodePoint > 57343)) {
codePoint = tempCodePoint;
}
}
break;
case 4:
secondByte = buf[i4 + 1];
thirdByte = buf[i4 + 2];
fourthByte = buf[i4 + 3];
if ((secondByte & 192) === 128 && (thirdByte & 192) === 128 && (fourthByte & 192) === 128) {
tempCodePoint = (firstByte & 15) << 18 | (secondByte & 63) << 12 | (thirdByte & 63) << 6 | fourthByte & 63;
if (tempCodePoint > 65535 && tempCodePoint < 1114112) {
codePoint = tempCodePoint;
}
}
}
}
if (codePoint === null) {
codePoint = 65533;
bytesPerSequence = 1;
} else if (codePoint > 65535) {
codePoint -= 65536;
res.push(codePoint >>> 10 & 1023 | 55296);
codePoint = 56320 | codePoint & 1023;
}
res.push(codePoint);
i4 += bytesPerSequence;
}
return decodeCodePointsArray(res);
}
var MAX_ARGUMENTS_LENGTH = 4096;
function decodeCodePointsArray(codePoints) {
const len = codePoints.length;
if (len <= MAX_ARGUMENTS_LENGTH) {
return String.fromCharCode.apply(String, codePoints);
}
let res = "";
let i4 = 0;
while (i4 < len) {
res += String.fromCharCode.apply(String, codePoints.slice(i4, i4 += MAX_ARGUMENTS_LENGTH));
}
return res;
}
function asciiSlice(buf, start, end) {
let ret = "";
end = Math.min(buf.length, end);
for (let i4 = start; i4 < end; ++i4) {
ret += String.fromCharCode(buf[i4] & 127);
}
return ret;
}
function latin1Slice(buf, start, end) {
let ret = "";
end = Math.min(buf.length, end);
for (let i4 = start; i4 < end; ++i4) {
ret += String.fromCharCode(buf[i4]);
}
return ret;
}
function hexSlice(buf, start, end) {
const len = buf.length;
if (!start || start < 0)
start = 0;
if (!end || end < 0 || end > len)
end = len;
let out = "";
for (let i4 = start; i4 < end; ++i4) {
out += hexSliceLookupTable[buf[i4]];
}
return out;
}
function utf16leSlice(buf, start, end) {
const bytes = buf.slice(start, end);
let res = "";
for (let i4 = 0; i4 < bytes.length - 1; i4 += 2) {
res += String.fromCharCode(bytes[i4] + bytes[i4 + 1] * 256);
}
return res;
}
Buffer4.prototype.slice = function slice(start, end) {
const len = this.length;
start = ~~start;
end = end === void 0 ? len : ~~end;
if (start < 0) {
start += len;
if (start < 0)
start = 0;
} else if (start > len) {
start = len;
}
if (end < 0) {
end += len;
if (end < 0)
end = 0;
} else if (end > len) {
end = len;
}
if (end < start)
end = start;
const newBuf = this.subarray(start, end);
Object.setPrototypeOf(newBuf, Buffer4.prototype);
return newBuf;
};
function checkOffset(offset, ext, length) {
if (offset % 1 !== 0 || offset < 0)
throw new RangeError("offset is not uint");
if (offset + ext > length)
throw new RangeError("Trying to access beyond buffer length");
}
Buffer4.prototype.readUintLE = Buffer4.prototype.readUIntLE = function readUIntLE(offset, byteLength2, noAssert) {
offset = offset >>> 0;
byteLength2 = byteLength2 >>> 0;
if (!noAssert)
checkOffset(offset, byteLength2, this.length);
let val = this[offset];
let mul = 1;
let i4 = 0;
while (++i4 < byteLength2 && (mul *= 256)) {
val += this[offset + i4] * mul;
}
return val;
};
Buffer4.prototype.readUintBE = Buffer4.prototype.readUIntBE = function readUIntBE(offset, byteLength2, noAssert) {
offset = offset >>> 0;
byteLength2 = byteLength2 >>> 0;
if (!noAssert) {
checkOffset(offset, byteLength2, this.length);
}
let val = this[offset + --byteLength2];
let mul = 1;
while (byteLength2 > 0 && (mul *= 256)) {
val += this[offset + --byteLength2] * mul;
}
return val;
};
Buffer4.prototype.readUint8 = Buffer4.prototype.readUInt8 = function readUInt8(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 1, this.length);
return this[offset];
};
Buffer4.prototype.readUint16LE = Buffer4.prototype.readUInt16LE = function readUInt16LE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 2, this.length);
return this[offset] | this[offset + 1] << 8;
};
Buffer4.prototype.readUint16BE = Buffer4.prototype.readUInt16BE = function readUInt16BE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 2, this.length);
return this[offset] << 8 | this[offset + 1];
};
Buffer4.prototype.readUint32LE = Buffer4.prototype.readUInt32LE = function readUInt32LE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 4, this.length);
return (this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16) + this[offset + 3] * 16777216;
};
Buffer4.prototype.readUint32BE = Buffer4.prototype.readUInt32BE = function readUInt32BE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 4, this.length);
return this[offset] * 16777216 + (this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]);
};
Buffer4.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE(offset) {
offset = offset >>> 0;
validateNumber(offset, "offset");
const first2 = this[offset];
const last2 = this[offset + 7];
if (first2 === void 0 || last2 === void 0) {
boundsError(offset, this.length - 8);
}
const lo = first2 + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24;
const hi = this[++offset] + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + last2 * 2 ** 24;
return BigInt(lo) + (BigInt(hi) << BigInt(32));
});
Buffer4.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE(offset) {
offset = offset >>> 0;
validateNumber(offset, "offset");
const first2 = this[offset];
const last2 = this[offset + 7];
if (first2 === void 0 || last2 === void 0) {
boundsError(offset, this.length - 8);
}
const hi = first2 * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset];
const lo = this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last2;
return (BigInt(hi) << BigInt(32)) + BigInt(lo);
});
Buffer4.prototype.readIntLE = function readIntLE(offset, byteLength2, noAssert) {
offset = offset >>> 0;
byteLength2 = byteLength2 >>> 0;
if (!noAssert)
checkOffset(offset, byteLength2, this.length);
let val = this[offset];
let mul = 1;
let i4 = 0;
while (++i4 < byteLength2 && (mul *= 256)) {
val += this[offset + i4] * mul;
}
mul *= 128;
if (val >= mul)
val -= Math.pow(2, 8 * byteLength2);
return val;
};
Buffer4.prototype.readIntBE = function readIntBE(offset, byteLength2, noAssert) {
offset = offset >>> 0;
byteLength2 = byteLength2 >>> 0;
if (!noAssert)
checkOffset(offset, byteLength2, this.length);
let i4 = byteLength2;
let mul = 1;
let val = this[offset + --i4];
while (i4 > 0 && (mul *= 256)) {
val += this[offset + --i4] * mul;
}
mul *= 128;
if (val >= mul)
val -= Math.pow(2, 8 * byteLength2);
return val;
};
Buffer4.prototype.readInt8 = function readInt8(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 1, this.length);
if (!(this[offset] & 128))
return this[offset];
return (255 - this[offset] + 1) * -1;
};
Buffer4.prototype.readInt16LE = function readInt16LE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 2, this.length);
const val = this[offset] | this[offset + 1] << 8;
return val & 32768 ? val | 4294901760 : val;
};
Buffer4.prototype.readInt16BE = function readInt16BE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 2, this.length);
const val = this[offset + 1] | this[offset] << 8;
return val & 32768 ? val | 4294901760 : val;
};
Buffer4.prototype.readInt32LE = function readInt32LE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 4, this.length);
return this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16 | this[offset + 3] << 24;
};
Buffer4.prototype.readInt32BE = function readInt32BE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 4, this.length);
return this[offset] << 24 | this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3];
};
Buffer4.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE(offset) {
offset = offset >>> 0;
validateNumber(offset, "offset");
const first2 = this[offset];
const last2 = this[offset + 7];
if (first2 === void 0 || last2 === void 0) {
boundsError(offset, this.length - 8);
}
const val = this[offset + 4] + this[offset + 5] * 2 ** 8 + this[offset + 6] * 2 ** 16 + (last2 << 24);
return (BigInt(val) << BigInt(32)) + BigInt(first2 + this[++offset] * 2 ** 8 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 24);
});
Buffer4.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE(offset) {
offset = offset >>> 0;
validateNumber(offset, "offset");
const first2 = this[offset];
const last2 = this[offset + 7];
if (first2 === void 0 || last2 === void 0) {
boundsError(offset, this.length - 8);
}
const val = (first2 << 24) + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + this[++offset];
return (BigInt(val) << BigInt(32)) + BigInt(this[++offset] * 2 ** 24 + this[++offset] * 2 ** 16 + this[++offset] * 2 ** 8 + last2);
});
Buffer4.prototype.readFloatLE = function readFloatLE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 4, this.length);
return ieee754.read(this, offset, true, 23, 4);
};
Buffer4.prototype.readFloatBE = function readFloatBE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 4, this.length);
return ieee754.read(this, offset, false, 23, 4);
};
Buffer4.prototype.readDoubleLE = function readDoubleLE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 8, this.length);
return ieee754.read(this, offset, true, 52, 8);
};
Buffer4.prototype.readDoubleBE = function readDoubleBE(offset, noAssert) {
offset = offset >>> 0;
if (!noAssert)
checkOffset(offset, 8, this.length);
return ieee754.read(this, offset, false, 52, 8);
};
function checkInt(buf, value, offset, ext, max8, min9) {
if (!Buffer4.isBuffer(buf))
throw new TypeError('"buffer" argument must be a Buffer instance');
if (value > max8 || value < min9)
throw new RangeError('"value" argument is out of bounds');
if (offset + ext > buf.length)
throw new RangeError("Index out of range");
}
Buffer4.prototype.writeUintLE = Buffer4.prototype.writeUIntLE = function writeUIntLE(value, offset, byteLength2, noAssert) {
value = +value;
offset = offset >>> 0;
byteLength2 = byteLength2 >>> 0;
if (!noAssert) {
const maxBytes = Math.pow(2, 8 * byteLength2) - 1;
checkInt(this, value, offset, byteLength2, maxBytes, 0);
}
let mul = 1;
let i4 = 0;
this[offset] = value & 255;
while (++i4 < byteLength2 && (mul *= 256)) {
this[offset + i4] = value / mul & 255;
}
return offset + byteLength2;
};
Buffer4.prototype.writeUintBE = Buffer4.prototype.writeUIntBE = function writeUIntBE(value, offset, byteLength2, noAssert) {
value = +value;
offset = offset >>> 0;
byteLength2 = byteLength2 >>> 0;
if (!noAssert) {
const maxBytes = Math.pow(2, 8 * byteLength2) - 1;
checkInt(this, value, offset, byteLength2, maxBytes, 0);
}
let i4 = byteLength2 - 1;
let mul = 1;
this[offset + i4] = value & 255;
while (--i4 >= 0 && (mul *= 256)) {
this[offset + i4] = value / mul & 255;
}
return offset + byteLength2;
};
Buffer4.prototype.writeUint8 = Buffer4.prototype.writeUInt8 = function writeUInt8(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 1, 255, 0);
this[offset] = value & 255;
return offset + 1;
};
Buffer4.prototype.writeUint16LE = Buffer4.prototype.writeUInt16LE = function writeUInt16LE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 2, 65535, 0);
this[offset] = value & 255;
this[offset + 1] = value >>> 8;
return offset + 2;
};
Buffer4.prototype.writeUint16BE = Buffer4.prototype.writeUInt16BE = function writeUInt16BE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 2, 65535, 0);
this[offset] = value >>> 8;
this[offset + 1] = value & 255;
return offset + 2;
};
Buffer4.prototype.writeUint32LE = Buffer4.prototype.writeUInt32LE = function writeUInt32LE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 4, 4294967295, 0);
this[offset + 3] = value >>> 24;
this[offset + 2] = value >>> 16;
this[offset + 1] = value >>> 8;
this[offset] = value & 255;
return offset + 4;
};
Buffer4.prototype.writeUint32BE = Buffer4.prototype.writeUInt32BE = function writeUInt32BE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 4, 4294967295, 0);
this[offset] = value >>> 24;
this[offset + 1] = value >>> 16;
this[offset + 2] = value >>> 8;
this[offset + 3] = value & 255;
return offset + 4;
};
function wrtBigUInt64LE(buf, value, offset, min9, max8) {
checkIntBI(value, min9, max8, buf, offset, 7);
let lo = Number(value & BigInt(4294967295));
buf[offset++] = lo;
lo = lo >> 8;
buf[offset++] = lo;
lo = lo >> 8;
buf[offset++] = lo;
lo = lo >> 8;
buf[offset++] = lo;
let hi = Number(value >> BigInt(32) & BigInt(4294967295));
buf[offset++] = hi;
hi = hi >> 8;
buf[offset++] = hi;
hi = hi >> 8;
buf[offset++] = hi;
hi = hi >> 8;
buf[offset++] = hi;
return offset;
}
function wrtBigUInt64BE(buf, value, offset, min9, max8) {
checkIntBI(value, min9, max8, buf, offset, 7);
let lo = Number(value & BigInt(4294967295));
buf[offset + 7] = lo;
lo = lo >> 8;
buf[offset + 6] = lo;
lo = lo >> 8;
buf[offset + 5] = lo;
lo = lo >> 8;
buf[offset + 4] = lo;
let hi = Number(value >> BigInt(32) & BigInt(4294967295));
buf[offset + 3] = hi;
hi = hi >> 8;
buf[offset + 2] = hi;
hi = hi >> 8;
buf[offset + 1] = hi;
hi = hi >> 8;
buf[offset] = hi;
return offset + 8;
}
Buffer4.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE(value, offset = 0) {
return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt("0xffffffffffffffff"));
});
Buffer4.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE(value, offset = 0) {
return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt("0xffffffffffffffff"));
});
Buffer4.prototype.writeIntLE = function writeIntLE(value, offset, byteLength2, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert) {
const limit = Math.pow(2, 8 * byteLength2 - 1);
checkInt(this, value, offset, byteLength2, limit - 1, -limit);
}
let i4 = 0;
let mul = 1;
let sub = 0;
this[offset] = value & 255;
while (++i4 < byteLength2 && (mul *= 256)) {
if (value < 0 && sub === 0 && this[offset + i4 - 1] !== 0) {
sub = 1;
}
this[offset + i4] = (value / mul >> 0) - sub & 255;
}
return offset + byteLength2;
};
Buffer4.prototype.writeIntBE = function writeIntBE(value, offset, byteLength2, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert) {
const limit = Math.pow(2, 8 * byteLength2 - 1);
checkInt(this, value, offset, byteLength2, limit - 1, -limit);
}
let i4 = byteLength2 - 1;
let mul = 1;
let sub = 0;
this[offset + i4] = value & 255;
while (--i4 >= 0 && (mul *= 256)) {
if (value < 0 && sub === 0 && this[offset + i4 + 1] !== 0) {
sub = 1;
}
this[offset + i4] = (value / mul >> 0) - sub & 255;
}
return offset + byteLength2;
};
Buffer4.prototype.writeInt8 = function writeInt8(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 1, 127, -128);
if (value < 0)
value = 255 + value + 1;
this[offset] = value & 255;
return offset + 1;
};
Buffer4.prototype.writeInt16LE = function writeInt16LE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 2, 32767, -32768);
this[offset] = value & 255;
this[offset + 1] = value >>> 8;
return offset + 2;
};
Buffer4.prototype.writeInt16BE = function writeInt16BE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 2, 32767, -32768);
this[offset] = value >>> 8;
this[offset + 1] = value & 255;
return offset + 2;
};
Buffer4.prototype.writeInt32LE = function writeInt32LE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 4, 2147483647, -2147483648);
this[offset] = value & 255;
this[offset + 1] = value >>> 8;
this[offset + 2] = value >>> 16;
this[offset + 3] = value >>> 24;
return offset + 4;
};
Buffer4.prototype.writeInt32BE = function writeInt32BE(value, offset, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert)
checkInt(this, value, offset, 4, 2147483647, -2147483648);
if (value < 0)
value = 4294967295 + value + 1;
this[offset] = value >>> 24;
this[offset + 1] = value >>> 16;
this[offset + 2] = value >>> 8;
this[offset + 3] = value & 255;
return offset + 4;
};
Buffer4.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE(value, offset = 0) {
return wrtBigUInt64LE(this, value, offset, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff"));
});
Buffer4.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE(value, offset = 0) {
return wrtBigUInt64BE(this, value, offset, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff"));
});
function checkIEEE754(buf, value, offset, ext, max8, min9) {
if (offset + ext > buf.length)
throw new RangeError("Index out of range");
if (offset < 0)
throw new RangeError("Index out of range");
}
function writeFloat(buf, value, offset, littleEndian, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert) {
checkIEEE754(buf, value, offset, 4, 34028234663852886e22, -34028234663852886e22);
}
ieee754.write(buf, value, offset, littleEndian, 23, 4);
return offset + 4;
}
Buffer4.prototype.writeFloatLE = function writeFloatLE(value, offset, noAssert) {
return writeFloat(this, value, offset, true, noAssert);
};
Buffer4.prototype.writeFloatBE = function writeFloatBE(value, offset, noAssert) {
return writeFloat(this, value, offset, false, noAssert);
};
function writeDouble(buf, value, offset, littleEndian, noAssert) {
value = +value;
offset = offset >>> 0;
if (!noAssert) {
checkIEEE754(buf, value, offset, 8, 17976931348623157e292, -17976931348623157e292);
}
ieee754.write(buf, value, offset, littleEndian, 52, 8);
return offset + 8;
}
Buffer4.prototype.writeDoubleLE = function writeDoubleLE(value, offset, noAssert) {
return writeDouble(this, value, offset, true, noAssert);
};
Buffer4.prototype.writeDoubleBE = function writeDoubleBE(value, offset, noAssert) {
return writeDouble(this, value, offset, false, noAssert);
};
Buffer4.prototype.copy = function copy4(target, targetStart, start, end) {
if (!Buffer4.isBuffer(target))
throw new TypeError("argument should be a Buffer");
if (!start)
start = 0;
if (!end && end !== 0)
end = this.length;
if (targetStart >= target.length)
targetStart = target.length;
if (!targetStart)
targetStart = 0;
if (end > 0 && end < start)
end = start;
if (end === start)
return 0;
if (target.length === 0 || this.length === 0)
return 0;
if (targetStart < 0) {
throw new RangeError("targetStart out of bounds");
}
if (start < 0 || start >= this.length)
throw new RangeError("Index out of range");
if (end < 0)
throw new RangeError("sourceEnd out of bounds");
if (end > this.length)
end = this.length;
if (target.length - targetStart < end - start) {
end = target.length - targetStart + start;
}
const len = end - start;
if (this === target && typeof Uint8Array.prototype.copyWithin === "function") {
this.copyWithin(targetStart, start, end);
} else {
Uint8Array.prototype.set.call(target, this.subarray(start, end), targetStart);
}
return len;
};
Buffer4.prototype.fill = function fill(val, start, end, encoding) {
if (typeof val === "string") {
if (typeof start === "string") {
encoding = start;
start = 0;
end = this.length;
} else if (typeof end === "string") {
encoding = end;
end = this.length;
}
if (encoding !== void 0 && typeof encoding !== "string") {
throw new TypeError("encoding must be a string");
}
if (typeof encoding === "string" && !Buffer4.isEncoding(encoding)) {
throw new TypeError("Unknown encoding: " + encoding);
}
if (val.length === 1) {
const code = val.charCodeAt(0);
if (encoding === "utf8" && code < 128 || encoding === "latin1") {
val = code;
}
}
} else if (typeof val === "number") {
val = val & 255;
} else if (typeof val === "boolean") {
val = Number(val);
}
if (start < 0 || this.length < start || this.length < end) {
throw new RangeError("Out of range index");
}
if (end <= start) {
return this;
}
start = start >>> 0;
end = end === void 0 ? this.length : end >>> 0;
if (!val)
val = 0;
let i4;
if (typeof val === "number") {
for (i4 = start; i4 < end; ++i4) {
this[i4] = val;
}
} else {
const bytes = Buffer4.isBuffer(val) ? val : Buffer4.from(val, encoding);
const len = bytes.length;
if (len === 0) {
throw new TypeError('The value "' + val + '" is invalid for argument "value"');
}
for (i4 = 0; i4 < end - start; ++i4) {
this[i4 + start] = bytes[i4 % len];
}
}
return this;
};
var errors = {};
function E4(sym, getMessage, Base) {
errors[sym] = class NodeError extends Base {
constructor() {
super();
Object.defineProperty(this, "message", {
value: getMessage.apply(this, arguments),
writable: true,
configurable: true
});
this.name = `${this.name} [${sym}]`;
this.stack;
delete this.name;
}
get code() {
return sym;
}
set code(value) {
Object.defineProperty(this, "code", {
configurable: true,
enumerable: true,
value,
writable: true
});
}
toString() {
return `${this.name} [${sym}]: ${this.message}`;
}
};
}
E4("ERR_BUFFER_OUT_OF_BOUNDS", function(name2) {
if (name2) {
return `${name2} is outside of buffer bounds`;
}
return "Attempt to access memory outside buffer bounds";
}, RangeError);
E4("ERR_INVALID_ARG_TYPE", function(name2, actual) {
return `The "${name2}" argument must be of type number. Received type ${typeof actual}`;
}, TypeError);
E4("ERR_OUT_OF_RANGE", function(str, range2, input) {
let msg = `The value of "${str}" is out of range.`;
let received = input;
if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {
received = addNumericalSeparator(String(input));
} else if (typeof input === "bigint") {
received = String(input);
if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {
received = addNumericalSeparator(received);
}
received += "n";
}
msg += ` It must be ${range2}. Received ${received}`;
return msg;
}, RangeError);
function addNumericalSeparator(val) {
let res = "";
let i4 = val.length;
const start = val[0] === "-" ? 1 : 0;
for (; i4 >= start + 4; i4 -= 3) {
res = `_${val.slice(i4 - 3, i4)}${res}`;
}
return `${val.slice(0, i4)}${res}`;
}
function checkBounds(buf, offset, byteLength2) {
validateNumber(offset, "offset");
if (buf[offset] === void 0 || buf[offset + byteLength2] === void 0) {
boundsError(offset, buf.length - (byteLength2 + 1));
}
}
function checkIntBI(value, min9, max8, buf, offset, byteLength2) {
if (value > max8 || value < min9) {
const n4 = typeof min9 === "bigint" ? "n" : "";
let range2;
if (byteLength2 > 3) {
if (min9 === 0 || min9 === BigInt(0)) {
range2 = `>= 0${n4} and < 2${n4} ** ${(byteLength2 + 1) * 8}${n4}`;
} else {
range2 = `>= -(2${n4} ** ${(byteLength2 + 1) * 8 - 1}${n4}) and < 2 ** ${(byteLength2 + 1) * 8 - 1}${n4}`;
}
} else {
range2 = `>= ${min9}${n4} and <= ${max8}${n4}`;
}
throw new errors.ERR_OUT_OF_RANGE("value", range2, value);
}
checkBounds(buf, offset, byteLength2);
}
function validateNumber(value, name2) {
if (typeof value !== "number") {
throw new errors.ERR_INVALID_ARG_TYPE(name2, "number", value);
}
}
function boundsError(value, length, type2) {
if (Math.floor(value) !== value) {
validateNumber(value, type2);
throw new errors.ERR_OUT_OF_RANGE(type2 || "offset", "an integer", value);
}
if (length < 0) {
throw new errors.ERR_BUFFER_OUT_OF_BOUNDS();
}
throw new errors.ERR_OUT_OF_RANGE(type2 || "offset", `>= ${type2 ? 1 : 0} and <= ${length}`, value);
}
var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;
function base64clean(str) {
str = str.split("=")[0];
str = str.trim().replace(INVALID_BASE64_RE, "");
if (str.length < 2)
return "";
while (str.length % 4 !== 0) {
str = str + "=";
}
return str;
}
function utf8ToBytes(string, units) {
units = units || Infinity;
let codePoint;
const length = string.length;
let leadSurrogate = null;
const bytes = [];
for (let i4 = 0; i4 < length; ++i4) {
codePoint = string.charCodeAt(i4);
if (codePoint > 55295 && codePoint < 57344) {
if (!leadSurrogate) {
if (codePoint > 56319) {
if ((units -= 3) > -1)
bytes.push(239, 191, 189);
continue;
} else if (i4 + 1 === length) {
if ((units -= 3) > -1)
bytes.push(239, 191, 189);
continue;
}
leadSurrogate = codePoint;
continue;
}
if (codePoint < 56320) {
if ((units -= 3) > -1)
bytes.push(239, 191, 189);
leadSurrogate = codePoint;
continue;
}
codePoint = (leadSurrogate - 55296 << 10 | codePoint - 56320) + 65536;
} else if (leadSurrogate) {
if ((units -= 3) > -1)
bytes.push(239, 191, 189);
}
leadSurrogate = null;
if (codePoint < 128) {
if ((units -= 1) < 0)
break;
bytes.push(codePoint);
} else if (codePoint < 2048) {
if ((units -= 2) < 0)
break;
bytes.push(codePoint >> 6 | 192, codePoint & 63 | 128);
} else if (codePoint < 65536) {
if ((units -= 3) < 0)
break;
bytes.push(codePoint >> 12 | 224, codePoint >> 6 & 63 | 128, codePoint & 63 | 128);
} else if (codePoint < 1114112) {
if ((units -= 4) < 0)
break;
bytes.push(codePoint >> 18 | 240, codePoint >> 12 & 63 | 128, codePoint >> 6 & 63 | 128, codePoint & 63 | 128);
} else {
throw new Error("Invalid code point");
}
}
return bytes;
}
function asciiToBytes(str) {
const byteArray = [];
for (let i4 = 0; i4 < str.length; ++i4) {
byteArray.push(str.charCodeAt(i4) & 255);
}
return byteArray;
}
function utf16leToBytes(str, units) {
let c6, hi, lo;
const byteArray = [];
for (let i4 = 0; i4 < str.length; ++i4) {
if ((units -= 2) < 0)
break;
c6 = str.charCodeAt(i4);
hi = c6 >> 8;
lo = c6 % 256;
byteArray.push(lo);
byteArray.push(hi);
}
return byteArray;
}
function base64ToBytes(str) {
return base64.toByteArray(base64clean(str));
}
function blitBuffer(src, dst, offset, length) {
let i4;
for (i4 = 0; i4 < length; ++i4) {
if (i4 + offset >= dst.length || i4 >= src.length)
break;
dst[i4 + offset] = src[i4];
}
return i4;
}
function isInstance(obj, type2) {
return obj instanceof type2 || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type2.name;
}
function numberIsNaN(obj) {
return obj !== obj;
}
var hexSliceLookupTable = function() {
const alphabet = "0123456789abcdef";
const table = new Array(256);
for (let i4 = 0; i4 < 16; ++i4) {
const i16 = i4 * 16;
for (let j2 = 0; j2 < 16; ++j2) {
table[i16 + j2] = alphabet[i4] + alphabet[j2];
}
}
return table;
}();
function defineBigIntMethod(fn) {
return typeof BigInt === "undefined" ? BufferBigIntNotDefined : fn;
}
function BufferBigIntNotDefined() {
throw new Error("BigInt not supported");
}
}
});
// src/alias/buffer-shim.js
var import_buffer;
var init_buffer_shim = __esm({
"src/alias/buffer-shim.js"() {
import_buffer = __toModule(require_buffer());
}
});
// node_modules/uuid/dist/esm-browser/rng.js
function rng() {
if (!getRandomValues) {
getRandomValues = typeof crypto !== "undefined" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== "undefined" && typeof msCrypto.getRandomValues === "function" && msCrypto.getRandomValues.bind(msCrypto);
if (!getRandomValues) {
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
}
}
return getRandomValues(rnds8);
}
var getRandomValues, rnds8;
var init_rng = __esm({
"node_modules/uuid/dist/esm-browser/rng.js"() {
init_buffer_shim();
rnds8 = new Uint8Array(16);
}
});
// node_modules/uuid/dist/esm-browser/regex.js
var regex_default;
var init_regex = __esm({
"node_modules/uuid/dist/esm-browser/regex.js"() {
init_buffer_shim();
regex_default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
}
});
// node_modules/uuid/dist/esm-browser/validate.js
function validate(uuid) {
return typeof uuid === "string" && regex_default.test(uuid);
}
var validate_default;
var init_validate = __esm({
"node_modules/uuid/dist/esm-browser/validate.js"() {
init_buffer_shim();
init_regex();
validate_default = validate;
}
});
// node_modules/uuid/dist/esm-browser/stringify.js
function stringify(arr) {
var offset = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
if (!validate_default(uuid)) {
throw TypeError("Stringified UUID is invalid");
}
return uuid;
}
var byteToHex, i4, stringify_default;
var init_stringify = __esm({
"node_modules/uuid/dist/esm-browser/stringify.js"() {
init_buffer_shim();
init_validate();
byteToHex = [];
for (i4 = 0; i4 < 256; ++i4) {
byteToHex.push((i4 + 256).toString(16).substr(1));
}
stringify_default = stringify;
}
});
// node_modules/uuid/dist/esm-browser/v1.js
function v1(options, buf, offset) {
var i4 = buf && offset || 0;
var b3 = buf || new Array(16);
options = options || {};
var node2 = options.node || _nodeId;
var clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq;
if (node2 == null || clockseq == null) {
var seedBytes = options.random || (options.rng || rng)();
if (node2 == null) {
node2 = _nodeId = [seedBytes[0] | 1, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]];
}
if (clockseq == null) {
clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 16383;
}
}
var msecs = options.msecs !== void 0 ? options.msecs : Date.now();
var nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1;
var dt2 = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4;
if (dt2 < 0 && options.clockseq === void 0) {
clockseq = clockseq + 1 & 16383;
}
if ((dt2 < 0 || msecs > _lastMSecs) && options.nsecs === void 0) {
nsecs = 0;
}
if (nsecs >= 1e4) {
throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
}
_lastMSecs = msecs;
_lastNSecs = nsecs;
_clockseq = clockseq;
msecs += 122192928e5;
var tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296;
b3[i4++] = tl >>> 24 & 255;
b3[i4++] = tl >>> 16 & 255;
b3[i4++] = tl >>> 8 & 255;
b3[i4++] = tl & 255;
var tmh = msecs / 4294967296 * 1e4 & 268435455;
b3[i4++] = tmh >>> 8 & 255;
b3[i4++] = tmh & 255;
b3[i4++] = tmh >>> 24 & 15 | 16;
b3[i4++] = tmh >>> 16 & 255;
b3[i4++] = clockseq >>> 8 | 128;
b3[i4++] = clockseq & 255;
for (var n4 = 0; n4 < 6; ++n4) {
b3[i4 + n4] = node2[n4];
}
return buf || stringify_default(b3);
}
var _nodeId, _clockseq, _lastMSecs, _lastNSecs, v1_default;
var init_v1 = __esm({
"node_modules/uuid/dist/esm-browser/v1.js"() {
init_buffer_shim();
init_rng();
init_stringify();
_lastMSecs = 0;
_lastNSecs = 0;
v1_default = v1;
}
});
// node_modules/uuid/dist/esm-browser/parse.js
function parse(uuid) {
if (!validate_default(uuid)) {
throw TypeError("Invalid UUID");
}
var v7;
var arr = new Uint8Array(16);
arr[0] = (v7 = parseInt(uuid.slice(0, 8), 16)) >>> 24;
arr[1] = v7 >>> 16 & 255;
arr[2] = v7 >>> 8 & 255;
arr[3] = v7 & 255;
arr[4] = (v7 = parseInt(uuid.slice(9, 13), 16)) >>> 8;
arr[5] = v7 & 255;
arr[6] = (v7 = parseInt(uuid.slice(14, 18), 16)) >>> 8;
arr[7] = v7 & 255;
arr[8] = (v7 = parseInt(uuid.slice(19, 23), 16)) >>> 8;
arr[9] = v7 & 255;
arr[10] = (v7 = parseInt(uuid.slice(24, 36), 16)) / 1099511627776 & 255;
arr[11] = v7 / 4294967296 & 255;
arr[12] = v7 >>> 24 & 255;
arr[13] = v7 >>> 16 & 255;
arr[14] = v7 >>> 8 & 255;
arr[15] = v7 & 255;
return arr;
}
var parse_default;
var init_parse = __esm({
"node_modules/uuid/dist/esm-browser/parse.js"() {
init_buffer_shim();
init_validate();
parse_default = parse;
}
});
// node_modules/uuid/dist/esm-browser/v35.js
function stringToBytes(str) {
str = unescape(encodeURIComponent(str));
var bytes = [];
for (var i4 = 0; i4 < str.length; ++i4) {
bytes.push(str.charCodeAt(i4));
}
return bytes;
}
function v35_default(name2, version3, hashfunc) {
function generateUUID(value, namespace, buf, offset) {
if (typeof value === "string") {
value = stringToBytes(value);
}
if (typeof namespace === "string") {
namespace = parse_default(namespace);
}
if (namespace.length !== 16) {
throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");
}
var bytes = new Uint8Array(16 + value.length);
bytes.set(namespace);
bytes.set(value, namespace.length);
bytes = hashfunc(bytes);
bytes[6] = bytes[6] & 15 | version3;
bytes[8] = bytes[8] & 63 | 128;
if (buf) {
offset = offset || 0;
for (var i4 = 0; i4 < 16; ++i4) {
buf[offset + i4] = bytes[i4];
}
return buf;
}
return stringify_default(bytes);
}
try {
generateUUID.name = name2;
} catch (err2) {
}
generateUUID.DNS = DNS;
generateUUID.URL = URL2;
return generateUUID;
}
var DNS, URL2;
var init_v35 = __esm({
"node_modules/uuid/dist/esm-browser/v35.js"() {
init_buffer_shim();
init_stringify();
init_parse();
DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8";
}
});
// node_modules/uuid/dist/esm-browser/md5.js
function md5(bytes) {
if (typeof bytes === "string") {
var msg = unescape(encodeURIComponent(bytes));
bytes = new Uint8Array(msg.length);
for (var i4 = 0; i4 < msg.length; ++i4) {
bytes[i4] = msg.charCodeAt(i4);
}
}
return md5ToHexEncodedArray(wordsToMd5(bytesToWords(bytes), bytes.length * 8));
}
function md5ToHexEncodedArray(input) {
var output = [];
var length32 = input.length * 32;
var hexTab = "0123456789abcdef";
for (var i4 = 0; i4 < length32; i4 += 8) {
var x3 = input[i4 >> 5] >>> i4 % 32 & 255;
var hex2 = parseInt(hexTab.charAt(x3 >>> 4 & 15) + hexTab.charAt(x3 & 15), 16);
output.push(hex2);
}
return output;
}
function getOutputLength(inputLength8) {
return (inputLength8 + 64 >>> 9 << 4) + 14 + 1;
}
function wordsToMd5(x3, len) {
x3[len >> 5] |= 128 << len % 32;
x3[getOutputLength(len) - 1] = len;
var a4 = 1732584193;
var b3 = -271733879;
var c6 = -1732584194;
var d3 = 271733878;
for (var i4 = 0; i4 < x3.length; i4 += 16) {
var olda = a4;
var oldb = b3;
var oldc = c6;
var oldd = d3;
a4 = md5ff(a4, b3, c6, d3, x3[i4], 7, -680876936);
d3 = md5ff(d3, a4, b3, c6, x3[i4 + 1], 12, -389564586);
c6 = md5ff(c6, d3, a4, b3, x3[i4 + 2], 17, 606105819);
b3 = md5ff(b3, c6, d3, a4, x3[i4 + 3], 22, -1044525330);
a4 = md5ff(a4, b3, c6, d3, x3[i4 + 4], 7, -176418897);
d3 = md5ff(d3, a4, b3, c6, x3[i4 + 5], 12, 1200080426);
c6 = md5ff(c6, d3, a4, b3, x3[i4 + 6], 17, -1473231341);
b3 = md5ff(b3, c6, d3, a4, x3[i4 + 7], 22, -45705983);
a4 = md5ff(a4, b3, c6, d3, x3[i4 + 8], 7, 1770035416);
d3 = md5ff(d3, a4, b3, c6, x3[i4 + 9], 12, -1958414417);
c6 = md5ff(c6, d3, a4, b3, x3[i4 + 10], 17, -42063);
b3 = md5ff(b3, c6, d3, a4, x3[i4 + 11], 22, -1990404162);
a4 = md5ff(a4, b3, c6, d3, x3[i4 + 12], 7, 1804603682);
d3 = md5ff(d3, a4, b3, c6, x3[i4 + 13], 12, -40341101);
c6 = md5ff(c6, d3, a4, b3, x3[i4 + 14], 17, -1502002290);
b3 = md5ff(b3, c6, d3, a4, x3[i4 + 15], 22, 1236535329);
a4 = md5gg(a4, b3, c6, d3, x3[i4 + 1], 5, -165796510);
d3 = md5gg(d3, a4, b3, c6, x3[i4 + 6], 9, -1069501632);
c6 = md5gg(c6, d3, a4, b3, x3[i4 + 11], 14, 643717713);
b3 = md5gg(b3, c6, d3, a4, x3[i4], 20, -373897302);
a4 = md5gg(a4, b3, c6, d3, x3[i4 + 5], 5, -701558691);
d3 = md5gg(d3, a4, b3, c6, x3[i4 + 10], 9, 38016083);
c6 = md5gg(c6, d3, a4, b3, x3[i4 + 15], 14, -660478335);
b3 = md5gg(b3, c6, d3, a4, x3[i4 + 4], 20, -405537848);
a4 = md5gg(a4, b3, c6, d3, x3[i4 + 9], 5, 568446438);
d3 = md5gg(d3, a4, b3, c6, x3[i4 + 14], 9, -1019803690);
c6 = md5gg(c6, d3, a4, b3, x3[i4 + 3], 14, -187363961);
b3 = md5gg(b3, c6, d3, a4, x3[i4 + 8], 20, 1163531501);
a4 = md5gg(a4, b3, c6, d3, x3[i4 + 13], 5, -1444681467);
d3 = md5gg(d3, a4, b3, c6, x3[i4 + 2], 9, -51403784);
c6 = md5gg(c6, d3, a4, b3, x3[i4 + 7], 14, 1735328473);
b3 = md5gg(b3, c6, d3, a4, x3[i4 + 12], 20, -1926607734);
a4 = md5hh(a4, b3, c6, d3, x3[i4 + 5], 4, -378558);
d3 = md5hh(d3, a4, b3, c6, x3[i4 + 8], 11, -2022574463);
c6 = md5hh(c6, d3, a4, b3, x3[i4 + 11], 16, 1839030562);
b3 = md5hh(b3, c6, d3, a4, x3[i4 + 14], 23, -35309556);
a4 = md5hh(a4, b3, c6, d3, x3[i4 + 1], 4, -1530992060);
d3 = md5hh(d3, a4, b3, c6, x3[i4 + 4], 11, 1272893353);
c6 = md5hh(c6, d3, a4, b3, x3[i4 + 7], 16, -155497632);
b3 = md5hh(b3, c6, d3, a4, x3[i4 + 10], 23, -1094730640);
a4 = md5hh(a4, b3, c6, d3, x3[i4 + 13], 4, 681279174);
d3 = md5hh(d3, a4, b3, c6, x3[i4], 11, -358537222);
c6 = md5hh(c6, d3, a4, b3, x3[i4 + 3], 16, -722521979);
b3 = md5hh(b3, c6, d3, a4, x3[i4 + 6], 23, 76029189);
a4 = md5hh(a4, b3, c6, d3, x3[i4 + 9], 4, -640364487);
d3 = md5hh(d3, a4, b3, c6, x3[i4 + 12], 11, -421815835);
c6 = md5hh(c6, d3, a4, b3, x3[i4 + 15], 16, 530742520);
b3 = md5hh(b3, c6, d3, a4, x3[i4 + 2], 23, -995338651);
a4 = md5ii(a4, b3, c6, d3, x3[i4], 6, -198630844);
d3 = md5ii(d3, a4, b3, c6, x3[i4 + 7], 10, 1126891415);
c6 = md5ii(c6, d3, a4, b3, x3[i4 + 14], 15, -1416354905);
b3 = md5ii(b3, c6, d3, a4, x3[i4 + 5], 21, -57434055);
a4 = md5ii(a4, b3, c6, d3, x3[i4 + 12], 6, 1700485571);
d3 = md5ii(d3, a4, b3, c6, x3[i4 + 3], 10, -1894986606);
c6 = md5ii(c6, d3, a4, b3, x3[i4 + 10], 15, -1051523);
b3 = md5ii(b3, c6, d3, a4, x3[i4 + 1], 21, -2054922799);
a4 = md5ii(a4, b3, c6, d3, x3[i4 + 8], 6, 1873313359);
d3 = md5ii(d3, a4, b3, c6, x3[i4 + 15], 10, -30611744);
c6 = md5ii(c6, d3, a4, b3, x3[i4 + 6], 15, -1560198380);
b3 = md5ii(b3, c6, d3, a4, x3[i4 + 13], 21, 1309151649);
a4 = md5ii(a4, b3, c6, d3, x3[i4 + 4], 6, -145523070);
d3 = md5ii(d3, a4, b3, c6, x3[i4 + 11], 10, -1120210379);
c6 = md5ii(c6, d3, a4, b3, x3[i4 + 2], 15, 718787259);
b3 = md5ii(b3, c6, d3, a4, x3[i4 + 9], 21, -343485551);
a4 = safeAdd(a4, olda);
b3 = safeAdd(b3, oldb);
c6 = safeAdd(c6, oldc);
d3 = safeAdd(d3, oldd);
}
return [a4, b3, c6, d3];
}
function bytesToWords(input) {
if (input.length === 0) {
return [];
}
var length8 = input.length * 8;
var output = new Uint32Array(getOutputLength(length8));
for (var i4 = 0; i4 < length8; i4 += 8) {
output[i4 >> 5] |= (input[i4 / 8] & 255) << i4 % 32;
}
return output;
}
function safeAdd(x3, y4) {
var lsw = (x3 & 65535) + (y4 & 65535);
var msw = (x3 >> 16) + (y4 >> 16) + (lsw >> 16);
return msw << 16 | lsw & 65535;
}
function bitRotateLeft(num, cnt) {
return num << cnt | num >>> 32 - cnt;
}
function md5cmn(q2, a4, b3, x3, s4, t5) {
return safeAdd(bitRotateLeft(safeAdd(safeAdd(a4, q2), safeAdd(x3, t5)), s4), b3);
}
function md5ff(a4, b3, c6, d3, x3, s4, t5) {
return md5cmn(b3 & c6 | ~b3 & d3, a4, b3, x3, s4, t5);
}
function md5gg(a4, b3, c6, d3, x3, s4, t5) {
return md5cmn(b3 & d3 | c6 & ~d3, a4, b3, x3, s4, t5);
}
function md5hh(a4, b3, c6, d3, x3, s4, t5) {
return md5cmn(b3 ^ c6 ^ d3, a4, b3, x3, s4, t5);
}
function md5ii(a4, b3, c6, d3, x3, s4, t5) {
return md5cmn(c6 ^ (b3 | ~d3), a4, b3, x3, s4, t5);
}
var md5_default;
var init_md5 = __esm({
"node_modules/uuid/dist/esm-browser/md5.js"() {
init_buffer_shim();
md5_default = md5;
}
});
// node_modules/uuid/dist/esm-browser/v3.js
var v3, v3_default;
var init_v3 = __esm({
"node_modules/uuid/dist/esm-browser/v3.js"() {
init_buffer_shim();
init_v35();
init_md5();
v3 = v35_default("v3", 48, md5_default);
v3_default = v3;
}
});
// node_modules/uuid/dist/esm-browser/v4.js
function v4(options, buf, offset) {
options = options || {};
var rnds = options.random || (options.rng || rng)();
rnds[6] = rnds[6] & 15 | 64;
rnds[8] = rnds[8] & 63 | 128;
if (buf) {
offset = offset || 0;
for (var i4 = 0; i4 < 16; ++i4) {
buf[offset + i4] = rnds[i4];
}
return buf;
}
return stringify_default(rnds);
}
var v4_default;
var init_v4 = __esm({
"node_modules/uuid/dist/esm-browser/v4.js"() {
init_buffer_shim();
init_rng();
init_stringify();
v4_default = v4;
}
});
// node_modules/uuid/dist/esm-browser/sha1.js
function f(s4, x3, y4, z3) {
switch (s4) {
case 0:
return x3 & y4 ^ ~x3 & z3;
case 1:
return x3 ^ y4 ^ z3;
case 2:
return x3 & y4 ^ x3 & z3 ^ y4 & z3;
case 3:
return x3 ^ y4 ^ z3;
}
}
function ROTL(x3, n4) {
return x3 << n4 | x3 >>> 32 - n4;
}
function sha1(bytes) {
var K2 = [1518500249, 1859775393, 2400959708, 3395469782];
var H2 = [1732584193, 4023233417, 2562383102, 271733878, 3285377520];
if (typeof bytes === "string") {
var msg = unescape(encodeURIComponent(bytes));
bytes = [];
for (var i4 = 0; i4 < msg.length; ++i4) {
bytes.push(msg.charCodeAt(i4));
}
} else if (!Array.isArray(bytes)) {
bytes = Array.prototype.slice.call(bytes);
}
bytes.push(128);
var l4 = bytes.length / 4 + 2;
var N3 = Math.ceil(l4 / 16);
var M2 = new Array(N3);
for (var _i = 0; _i < N3; ++_i) {
var arr = new Uint32Array(16);
for (var j2 = 0; j2 < 16; ++j2) {
arr[j2] = bytes[_i * 64 + j2 * 4] << 24 | bytes[_i * 64 + j2 * 4 + 1] << 16 | bytes[_i * 64 + j2 * 4 + 2] << 8 | bytes[_i * 64 + j2 * 4 + 3];
}
M2[_i] = arr;
}
M2[N3 - 1][14] = (bytes.length - 1) * 8 / Math.pow(2, 32);
M2[N3 - 1][14] = Math.floor(M2[N3 - 1][14]);
M2[N3 - 1][15] = (bytes.length - 1) * 8 & 4294967295;
for (var _i2 = 0; _i2 < N3; ++_i2) {
var W3 = new Uint32Array(80);
for (var t5 = 0; t5 < 16; ++t5) {
W3[t5] = M2[_i2][t5];
}
for (var _t2 = 16; _t2 < 80; ++_t2) {
W3[_t2] = ROTL(W3[_t2 - 3] ^ W3[_t2 - 8] ^ W3[_t2 - 14] ^ W3[_t2 - 16], 1);
}
var a4 = H2[0];
var b3 = H2[1];
var c6 = H2[2];
var d3 = H2[3];
var e4 = H2[4];
for (var _t22 = 0; _t22 < 80; ++_t22) {
var s4 = Math.floor(_t22 / 20);
var T3 = ROTL(a4, 5) + f(s4, b3, c6, d3) + e4 + K2[s4] + W3[_t22] >>> 0;
e4 = d3;
d3 = c6;
c6 = ROTL(b3, 30) >>> 0;
b3 = a4;
a4 = T3;
}
H2[0] = H2[0] + a4 >>> 0;
H2[1] = H2[1] + b3 >>> 0;
H2[2] = H2[2] + c6 >>> 0;
H2[3] = H2[3] + d3 >>> 0;
H2[4] = H2[4] + e4 >>> 0;
}
return [H2[0] >> 24 & 255, H2[0] >> 16 & 255, H2[0] >> 8 & 255, H2[0] & 255, H2[1] >> 24 & 255, H2[1] >> 16 & 255, H2[1] >> 8 & 255, H2[1] & 255, H2[2] >> 24 & 255, H2[2] >> 16 & 255, H2[2] >> 8 & 255, H2[2] & 255, H2[3] >> 24 & 255, H2[3] >> 16 & 255, H2[3] >> 8 & 255, H2[3] & 255, H2[4] >> 24 & 255, H2[4] >> 16 & 255, H2[4] >> 8 & 255, H2[4] & 255];
}
var sha1_default;
var init_sha1 = __esm({
"node_modules/uuid/dist/esm-browser/sha1.js"() {
init_buffer_shim();
sha1_default = sha1;
}
});
// node_modules/uuid/dist/esm-browser/v5.js
var v5, v5_default;
var init_v5 = __esm({
"node_modules/uuid/dist/esm-browser/v5.js"() {
init_buffer_shim();
init_v35();
init_sha1();
v5 = v35_default("v5", 80, sha1_default);
v5_default = v5;
}
});
// node_modules/uuid/dist/esm-browser/nil.js
var nil_default;
var init_nil = __esm({
"node_modules/uuid/dist/esm-browser/nil.js"() {
init_buffer_shim();
nil_default = "00000000-0000-0000-0000-000000000000";
}
});
// node_modules/uuid/dist/esm-browser/version.js
function version(uuid) {
if (!validate_default(uuid)) {
throw TypeError("Invalid UUID");
}
return parseInt(uuid.substr(14, 1), 16);
}
var version_default;
var init_version = __esm({
"node_modules/uuid/dist/esm-browser/version.js"() {
init_buffer_shim();
init_validate();
version_default = version;
}
});
// node_modules/uuid/dist/esm-browser/index.js
var esm_browser_exports = {};
__export(esm_browser_exports, {
NIL: () => nil_default,
parse: () => parse_default,
stringify: () => stringify_default,
v1: () => v1_default,
v3: () => v3_default,
v4: () => v4_default,
v5: () => v5_default,
validate: () => validate_default,
version: () => version_default
});
var init_esm_browser = __esm({
"node_modules/uuid/dist/esm-browser/index.js"() {
init_buffer_shim();
init_v1();
init_v3();
init_v4();
init_v5();
init_nil();
init_version();
init_validate();
init_stringify();
init_parse();
}
});
// node_modules/slugid/slugid.js
var require_slugid = __commonJS({
"node_modules/slugid/slugid.js"(exports2) {
init_buffer_shim();
var uuid = (init_esm_browser(), esm_browser_exports);
exports2.encode = function(uuid_) {
var bytes = uuid.parse(uuid_);
var base64 = import_buffer.Buffer.from(bytes).toString("base64");
var slug = base64.replace(/\+/g, "-").replace(/\//g, "_").substring(0, 22);
return slug;
};
exports2.decode = function(slug) {
var base64 = slug.replace(/-/g, "+").replace(/_/g, "/") + "==";
return uuid.stringify(import_buffer.Buffer.from(base64, "base64"));
};
exports2.v4 = function() {
var bytes = uuid.v4(null, import_buffer.Buffer.alloc(16));
var base64 = bytes.toString("base64");
var slug = base64.replace(/\+/g, "-").replace(/\//g, "_").substring(0, 22);
return slug;
};
exports2.nice = function() {
var bytes = uuid.v4(null, import_buffer.Buffer.alloc(16));
bytes[0] = bytes[0] & 127;
var base64 = bytes.toString("base64");
var slug = base64.replace(/\+/g, "-").replace(/\//g, "_").substring(0, 22);
return slug;
};
}
});
// node_modules/slugid/index.js
var require_slugid2 = __commonJS({
"node_modules/slugid/index.js"(exports2, module2) {
init_buffer_shim();
module2.exports = require_slugid();
}
});
// node_modules/rbush/rbush.min.js
var require_rbush_min = __commonJS({
"node_modules/rbush/rbush.min.js"(exports2, module2) {
init_buffer_shim();
!function(t5, i4) {
typeof exports2 == "object" && typeof module2 != "undefined" ? module2.exports = i4() : typeof define == "function" && define.amd ? define(i4) : (t5 = t5 || self).RBush = i4();
}(exports2, function() {
"use strict";
function t5(t6, r4, e6, a5, h5) {
!function t7(n5, r5, e7, a6, h6) {
for (; a6 > e7; ) {
if (a6 - e7 > 600) {
var o5 = a6 - e7 + 1, s5 = r5 - e7 + 1, l5 = Math.log(o5), f7 = 0.5 * Math.exp(2 * l5 / 3), u5 = 0.5 * Math.sqrt(l5 * f7 * (o5 - f7) / o5) * (s5 - o5 / 2 < 0 ? -1 : 1), m6 = Math.max(e7, Math.floor(r5 - s5 * f7 / o5 + u5)), c7 = Math.min(a6, Math.floor(r5 + (o5 - s5) * f7 / o5 + u5));
t7(n5, r5, m6, c7, h6);
}
var p5 = n5[r5], d4 = e7, x3 = a6;
for (i4(n5, e7, r5), h6(n5[a6], p5) > 0 && i4(n5, e7, a6); d4 < x3; ) {
for (i4(n5, d4, x3), d4++, x3--; h6(n5[d4], p5) < 0; )
d4++;
for (; h6(n5[x3], p5) > 0; )
x3--;
}
h6(n5[e7], p5) === 0 ? i4(n5, e7, x3) : i4(n5, ++x3, a6), x3 <= r5 && (e7 = x3 + 1), r5 <= x3 && (a6 = x3 - 1);
}
}(t6, r4, e6 || 0, a5 || t6.length - 1, h5 || n4);
}
function i4(t6, i5, n5) {
var r4 = t6[i5];
t6[i5] = t6[n5], t6[n5] = r4;
}
function n4(t6, i5) {
return t6 < i5 ? -1 : t6 > i5 ? 1 : 0;
}
var r3 = function(t6) {
t6 === void 0 && (t6 = 9), this._maxEntries = Math.max(4, t6), this._minEntries = Math.max(2, Math.ceil(0.4 * this._maxEntries)), this.clear();
};
function e4(t6, i5, n5) {
if (!n5)
return i5.indexOf(t6);
for (var r4 = 0; r4 < i5.length; r4++)
if (n5(t6, i5[r4]))
return r4;
return -1;
}
function a4(t6, i5) {
h4(t6, 0, t6.children.length, i5, t6);
}
function h4(t6, i5, n5, r4, e6) {
e6 || (e6 = p4(null)), e6.minX = 1 / 0, e6.minY = 1 / 0, e6.maxX = -1 / 0, e6.maxY = -1 / 0;
for (var a5 = i5; a5 < n5; a5++) {
var h5 = t6.children[a5];
o4(e6, t6.leaf ? r4(h5) : h5);
}
return e6;
}
function o4(t6, i5) {
return t6.minX = Math.min(t6.minX, i5.minX), t6.minY = Math.min(t6.minY, i5.minY), t6.maxX = Math.max(t6.maxX, i5.maxX), t6.maxY = Math.max(t6.maxY, i5.maxY), t6;
}
function s4(t6, i5) {
return t6.minX - i5.minX;
}
function l4(t6, i5) {
return t6.minY - i5.minY;
}
function f6(t6) {
return (t6.maxX - t6.minX) * (t6.maxY - t6.minY);
}
function u4(t6) {
return t6.maxX - t6.minX + (t6.maxY - t6.minY);
}
function m5(t6, i5) {
return t6.minX <= i5.minX && t6.minY <= i5.minY && i5.maxX <= t6.maxX && i5.maxY <= t6.maxY;
}
function c6(t6, i5) {
return i5.minX <= t6.maxX && i5.minY <= t6.maxY && i5.maxX >= t6.minX && i5.maxY >= t6.minY;
}
function p4(t6) {
return { children: t6, height: 1, leaf: true, minX: 1 / 0, minY: 1 / 0, maxX: -1 / 0, maxY: -1 / 0 };
}
function d3(i5, n5, r4, e6, a5) {
for (var h5 = [n5, r4]; h5.length; )
if (!((r4 = h5.pop()) - (n5 = h5.pop()) <= e6)) {
var o5 = n5 + Math.ceil((r4 - n5) / e6 / 2) * e6;
t5(i5, o5, n5, r4, a5), h5.push(n5, o5, o5, r4);
}
}
return r3.prototype.all = function() {
return this._all(this.data, []);
}, r3.prototype.search = function(t6) {
var i5 = this.data, n5 = [];
if (!c6(t6, i5))
return n5;
for (var r4 = this.toBBox, e6 = []; i5; ) {
for (var a5 = 0; a5 < i5.children.length; a5++) {
var h5 = i5.children[a5], o5 = i5.leaf ? r4(h5) : h5;
c6(t6, o5) && (i5.leaf ? n5.push(h5) : m5(t6, o5) ? this._all(h5, n5) : e6.push(h5));
}
i5 = e6.pop();
}
return n5;
}, r3.prototype.collides = function(t6) {
var i5 = this.data;
if (!c6(t6, i5))
return false;
for (var n5 = []; i5; ) {
for (var r4 = 0; r4 < i5.children.length; r4++) {
var e6 = i5.children[r4], a5 = i5.leaf ? this.toBBox(e6) : e6;
if (c6(t6, a5)) {
if (i5.leaf || m5(t6, a5))
return true;
n5.push(e6);
}
}
i5 = n5.pop();
}
return false;
}, r3.prototype.load = function(t6) {
if (!t6 || !t6.length)
return this;
if (t6.length < this._minEntries) {
for (var i5 = 0; i5 < t6.length; i5++)
this.insert(t6[i5]);
return this;
}
var n5 = this._build(t6.slice(), 0, t6.length - 1, 0);
if (this.data.children.length)
if (this.data.height === n5.height)
this._splitRoot(this.data, n5);
else {
if (this.data.height < n5.height) {
var r4 = this.data;
this.data = n5, n5 = r4;
}
this._insert(n5, this.data.height - n5.height - 1, true);
}
else
this.data = n5;
return this;
}, r3.prototype.insert = function(t6) {
return t6 && this._insert(t6, this.data.height - 1), this;
}, r3.prototype.clear = function() {
return this.data = p4([]), this;
}, r3.prototype.remove = function(t6, i5) {
if (!t6)
return this;
for (var n5, r4, a5, h5 = this.data, o5 = this.toBBox(t6), s5 = [], l5 = []; h5 || s5.length; ) {
if (h5 || (h5 = s5.pop(), r4 = s5[s5.length - 1], n5 = l5.pop(), a5 = true), h5.leaf) {
var f7 = e4(t6, h5.children, i5);
if (f7 !== -1)
return h5.children.splice(f7, 1), s5.push(h5), this._condense(s5), this;
}
a5 || h5.leaf || !m5(h5, o5) ? r4 ? (n5++, h5 = r4.children[n5], a5 = false) : h5 = null : (s5.push(h5), l5.push(n5), n5 = 0, r4 = h5, h5 = h5.children[0]);
}
return this;
}, r3.prototype.toBBox = function(t6) {
return t6;
}, r3.prototype.compareMinX = function(t6, i5) {
return t6.minX - i5.minX;
}, r3.prototype.compareMinY = function(t6, i5) {
return t6.minY - i5.minY;
}, r3.prototype.toJSON = function() {
return this.data;
}, r3.prototype.fromJSON = function(t6) {
return this.data = t6, this;
}, r3.prototype._all = function(t6, i5) {
for (var n5 = []; t6; )
t6.leaf ? i5.push.apply(i5, t6.children) : n5.push.apply(n5, t6.children), t6 = n5.pop();
return i5;
}, r3.prototype._build = function(t6, i5, n5, r4) {
var e6, h5 = n5 - i5 + 1, o5 = this._maxEntries;
if (h5 <= o5)
return a4(e6 = p4(t6.slice(i5, n5 + 1)), this.toBBox), e6;
r4 || (r4 = Math.ceil(Math.log(h5) / Math.log(o5)), o5 = Math.ceil(h5 / Math.pow(o5, r4 - 1))), (e6 = p4([])).leaf = false, e6.height = r4;
var s5 = Math.ceil(h5 / o5), l5 = s5 * Math.ceil(Math.sqrt(o5));
d3(t6, i5, n5, l5, this.compareMinX);
for (var f7 = i5; f7 <= n5; f7 += l5) {
var u5 = Math.min(f7 + l5 - 1, n5);
d3(t6, f7, u5, s5, this.compareMinY);
for (var m6 = f7; m6 <= u5; m6 += s5) {
var c7 = Math.min(m6 + s5 - 1, u5);
e6.children.push(this._build(t6, m6, c7, r4 - 1));
}
}
return a4(e6, this.toBBox), e6;
}, r3.prototype._chooseSubtree = function(t6, i5, n5, r4) {
for (; r4.push(i5), !i5.leaf && r4.length - 1 !== n5; ) {
for (var e6 = 1 / 0, a5 = 1 / 0, h5 = void 0, o5 = 0; o5 < i5.children.length; o5++) {
var s5 = i5.children[o5], l5 = f6(s5), u5 = (m6 = t6, c7 = s5, (Math.max(c7.maxX, m6.maxX) - Math.min(c7.minX, m6.minX)) * (Math.max(c7.maxY, m6.maxY) - Math.min(c7.minY, m6.minY)) - l5);
u5 < a5 ? (a5 = u5, e6 = l5 < e6 ? l5 : e6, h5 = s5) : u5 === a5 && l5 < e6 && (e6 = l5, h5 = s5);
}
i5 = h5 || i5.children[0];
}
var m6, c7;
return i5;
}, r3.prototype._insert = function(t6, i5, n5) {
var r4 = n5 ? t6 : this.toBBox(t6), e6 = [], a5 = this._chooseSubtree(r4, this.data, i5, e6);
for (a5.children.push(t6), o4(a5, r4); i5 >= 0 && e6[i5].children.length > this._maxEntries; )
this._split(e6, i5), i5--;
this._adjustParentBBoxes(r4, e6, i5);
}, r3.prototype._split = function(t6, i5) {
var n5 = t6[i5], r4 = n5.children.length, e6 = this._minEntries;
this._chooseSplitAxis(n5, e6, r4);
var h5 = this._chooseSplitIndex(n5, e6, r4), o5 = p4(n5.children.splice(h5, n5.children.length - h5));
o5.height = n5.height, o5.leaf = n5.leaf, a4(n5, this.toBBox), a4(o5, this.toBBox), i5 ? t6[i5 - 1].children.push(o5) : this._splitRoot(n5, o5);
}, r3.prototype._splitRoot = function(t6, i5) {
this.data = p4([t6, i5]), this.data.height = t6.height + 1, this.data.leaf = false, a4(this.data, this.toBBox);
}, r3.prototype._chooseSplitIndex = function(t6, i5, n5) {
for (var r4, e6, a5, o5, s5, l5, u5, m6 = 1 / 0, c7 = 1 / 0, p5 = i5; p5 <= n5 - i5; p5++) {
var d4 = h4(t6, 0, p5, this.toBBox), x3 = h4(t6, p5, n5, this.toBBox), v7 = (e6 = d4, a5 = x3, o5 = void 0, s5 = void 0, l5 = void 0, u5 = void 0, o5 = Math.max(e6.minX, a5.minX), s5 = Math.max(e6.minY, a5.minY), l5 = Math.min(e6.maxX, a5.maxX), u5 = Math.min(e6.maxY, a5.maxY), Math.max(0, l5 - o5) * Math.max(0, u5 - s5)), M2 = f6(d4) + f6(x3);
v7 < m6 ? (m6 = v7, r4 = p5, c7 = M2 < c7 ? M2 : c7) : v7 === m6 && M2 < c7 && (c7 = M2, r4 = p5);
}
return r4 || n5 - i5;
}, r3.prototype._chooseSplitAxis = function(t6, i5, n5) {
var r4 = t6.leaf ? this.compareMinX : s4, e6 = t6.leaf ? this.compareMinY : l4;
this._allDistMargin(t6, i5, n5, r4) < this._allDistMargin(t6, i5, n5, e6) && t6.children.sort(r4);
}, r3.prototype._allDistMargin = function(t6, i5, n5, r4) {
t6.children.sort(r4);
for (var e6 = this.toBBox, a5 = h4(t6, 0, i5, e6), s5 = h4(t6, n5 - i5, n5, e6), l5 = u4(a5) + u4(s5), f7 = i5; f7 < n5 - i5; f7++) {
var m6 = t6.children[f7];
o4(a5, t6.leaf ? e6(m6) : m6), l5 += u4(a5);
}
for (var c7 = n5 - i5 - 1; c7 >= i5; c7--) {
var p5 = t6.children[c7];
o4(s5, t6.leaf ? e6(p5) : p5), l5 += u4(s5);
}
return l5;
}, r3.prototype._adjustParentBBoxes = function(t6, i5, n5) {
for (var r4 = n5; r4 >= 0; r4--)
o4(i5[r4], t6);
}, r3.prototype._condense = function(t6) {
for (var i5 = t6.length - 1, n5 = void 0; i5 >= 0; i5--)
t6[i5].children.length === 0 ? i5 > 0 ? (n5 = t6[i5 - 1].children).splice(n5.indexOf(t6[i5]), 1) : this.clear() : a4(t6[i5], this.toBBox);
}, r3;
});
}
});
// node_modules/threads/dist/serializers.js
var require_serializers = __commonJS({
"node_modules/threads/dist/serializers.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.DefaultSerializer = exports2.extendSerializer = void 0;
function extendSerializer(extend2, implementation) {
const fallbackDeserializer = extend2.deserialize.bind(extend2);
const fallbackSerializer = extend2.serialize.bind(extend2);
return {
deserialize(message) {
return implementation.deserialize(message, fallbackDeserializer);
},
serialize(input) {
return implementation.serialize(input, fallbackSerializer);
}
};
}
exports2.extendSerializer = extendSerializer;
var DefaultErrorSerializer = {
deserialize(message) {
return Object.assign(Error(message.message), {
name: message.name,
stack: message.stack
});
},
serialize(error) {
return {
__error_marker: "$$error",
message: error.message,
name: error.name,
stack: error.stack
};
}
};
var isSerializedError = (thing) => thing && typeof thing === "object" && "__error_marker" in thing && thing.__error_marker === "$$error";
exports2.DefaultSerializer = {
deserialize(message) {
if (isSerializedError(message)) {
return DefaultErrorSerializer.deserialize(message);
} else {
return message;
}
},
serialize(input) {
if (input instanceof Error) {
return DefaultErrorSerializer.serialize(input);
} else {
return input;
}
}
};
}
});
// node_modules/threads/dist/common.js
var require_common = __commonJS({
"node_modules/threads/dist/common.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.serialize = exports2.deserialize = exports2.registerSerializer = void 0;
var serializers_1 = require_serializers();
var registeredSerializer = serializers_1.DefaultSerializer;
function registerSerializer2(serializer) {
registeredSerializer = serializers_1.extendSerializer(registeredSerializer, serializer);
}
exports2.registerSerializer = registerSerializer2;
function deserialize(message) {
return registeredSerializer.deserialize(message);
}
exports2.deserialize = deserialize;
function serialize(input) {
return registeredSerializer.serialize(input);
}
exports2.serialize = serialize;
}
});
// node_modules/threads/dist/master/get-bundle-url.browser.js
var require_get_bundle_url_browser = __commonJS({
"node_modules/threads/dist/master/get-bundle-url.browser.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.getBundleURL = exports2.getBaseURL = void 0;
var bundleURL;
function getBundleURLCached() {
if (!bundleURL) {
bundleURL = getBundleURL();
}
return bundleURL;
}
exports2.getBundleURL = getBundleURLCached;
function getBundleURL() {
try {
throw new Error();
} catch (err2) {
const matches = ("" + err2.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\/\/[^)\n]+/g);
if (matches) {
return getBaseURL(matches[0]);
}
}
return "/";
}
function getBaseURL(url) {
return ("" + url).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\/\/.+)?\/[^/]+(?:\?.*)?$/, "$1") + "/";
}
exports2.getBaseURL = getBaseURL;
}
});
// node_modules/threads/dist/master/implementation.browser.js
var require_implementation_browser = __commonJS({
"node_modules/threads/dist/master/implementation.browser.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.isWorkerRuntime = exports2.getWorkerImplementation = exports2.defaultPoolSize = void 0;
var get_bundle_url_browser_1 = require_get_bundle_url_browser();
exports2.defaultPoolSize = typeof navigator !== "undefined" && navigator.hardwareConcurrency ? navigator.hardwareConcurrency : 4;
var isAbsoluteURL = (value) => /^[a-zA-Z][a-zA-Z\d+\-.]*:/.test(value);
function createSourceBlobURL(code) {
const blob2 = new Blob([code], { type: "application/javascript" });
return URL.createObjectURL(blob2);
}
function selectWorkerImplementation() {
if (typeof Worker === "undefined") {
return class NoWebWorker {
constructor() {
throw Error("No web worker implementation available. You might have tried to spawn a worker within a worker in a browser that doesn't support workers in workers.");
}
};
}
class WebWorker extends Worker {
constructor(url, options) {
var _a3, _b3;
if (typeof url === "string" && options && options._baseURL) {
url = new URL(url, options._baseURL);
} else if (typeof url === "string" && !isAbsoluteURL(url) && get_bundle_url_browser_1.getBundleURL().match(/^file:\/\//i)) {
url = new URL(url, get_bundle_url_browser_1.getBundleURL().replace(/\/[^\/]+$/, "/"));
if ((_a3 = options === null || options === void 0 ? void 0 : options.CORSWorkaround) !== null && _a3 !== void 0 ? _a3 : true) {
url = createSourceBlobURL(`importScripts(${JSON.stringify(url)});`);
}
}
if (typeof url === "string" && isAbsoluteURL(url)) {
if ((_b3 = options === null || options === void 0 ? void 0 : options.CORSWorkaround) !== null && _b3 !== void 0 ? _b3 : true) {
url = createSourceBlobURL(`importScripts(${JSON.stringify(url)});`);
}
}
super(url, options);
}
}
class BlobWorker extends WebWorker {
constructor(blob2, options) {
const url = window.URL.createObjectURL(blob2);
super(url, options);
}
static fromText(source, options) {
const blob2 = new window.Blob([source], { type: "text/javascript" });
return new BlobWorker(blob2, options);
}
}
return {
blob: BlobWorker,
default: WebWorker
};
}
var implementation;
function getWorkerImplementation() {
if (!implementation) {
implementation = selectWorkerImplementation();
}
return implementation;
}
exports2.getWorkerImplementation = getWorkerImplementation;
function isWorkerRuntime() {
const isWindowContext = typeof self !== "undefined" && typeof Window !== "undefined" && self instanceof Window;
return typeof self !== "undefined" && self.postMessage && !isWindowContext ? true : false;
}
exports2.isWorkerRuntime = isWorkerRuntime;
}
});
// node_modules/ms/index.js
var require_ms = __commonJS({
"node_modules/ms/index.js"(exports2, module2) {
init_buffer_shim();
var s4 = 1e3;
var m5 = s4 * 60;
var h4 = m5 * 60;
var d3 = h4 * 24;
var w3 = d3 * 7;
var y4 = d3 * 365.25;
module2.exports = function(val, options) {
options = options || {};
var type2 = typeof val;
if (type2 === "string" && val.length > 0) {
return parse3(val);
} else if (type2 === "number" && isFinite(val)) {
return options.long ? fmtLong(val) : fmtShort(val);
}
throw new Error("val is not a non-empty string or a valid number. val=" + JSON.stringify(val));
};
function parse3(str) {
str = String(str);
if (str.length > 100) {
return;
}
var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(str);
if (!match) {
return;
}
var n4 = parseFloat(match[1]);
var type2 = (match[2] || "ms").toLowerCase();
switch (type2) {
case "years":
case "year":
case "yrs":
case "yr":
case "y":
return n4 * y4;
case "weeks":
case "week":
case "w":
return n4 * w3;
case "days":
case "day":
case "d":
return n4 * d3;
case "hours":
case "hour":
case "hrs":
case "hr":
case "h":
return n4 * h4;
case "minutes":
case "minute":
case "mins":
case "min":
case "m":
return n4 * m5;
case "seconds":
case "second":
case "secs":
case "sec":
case "s":
return n4 * s4;
case "milliseconds":
case "millisecond":
case "msecs":
case "msec":
case "ms":
return n4;
default:
return void 0;
}
}
function fmtShort(ms) {
var msAbs = Math.abs(ms);
if (msAbs >= d3) {
return Math.round(ms / d3) + "d";
}
if (msAbs >= h4) {
return Math.round(ms / h4) + "h";
}
if (msAbs >= m5) {
return Math.round(ms / m5) + "m";
}
if (msAbs >= s4) {
return Math.round(ms / s4) + "s";
}
return ms + "ms";
}
function fmtLong(ms) {
var msAbs = Math.abs(ms);
if (msAbs >= d3) {
return plural(ms, msAbs, d3, "day");
}
if (msAbs >= h4) {
return plural(ms, msAbs, h4, "hour");
}
if (msAbs >= m5) {
return plural(ms, msAbs, m5, "minute");
}
if (msAbs >= s4) {
return plural(ms, msAbs, s4, "second");
}
return ms + " ms";
}
function plural(ms, msAbs, n4, name2) {
var isPlural = msAbs >= n4 * 1.5;
return Math.round(ms / n4) + " " + name2 + (isPlural ? "s" : "");
}
}
});
// node_modules/debug/src/common.js
var require_common2 = __commonJS({
"node_modules/debug/src/common.js"(exports2, module2) {
init_buffer_shim();
function setup(env) {
createDebug.debug = createDebug;
createDebug.default = createDebug;
createDebug.coerce = coerce;
createDebug.disable = disable;
createDebug.enable = enable;
createDebug.enabled = enabled;
createDebug.humanize = require_ms();
createDebug.destroy = destroy;
Object.keys(env).forEach((key) => {
createDebug[key] = env[key];
});
createDebug.names = [];
createDebug.skips = [];
createDebug.formatters = {};
function selectColor(namespace) {
let hash = 0;
for (let i4 = 0; i4 < namespace.length; i4++) {
hash = (hash << 5) - hash + namespace.charCodeAt(i4);
hash |= 0;
}
return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
}
createDebug.selectColor = selectColor;
function createDebug(namespace) {
let prevTime;
let enableOverride = null;
let namespacesCache;
let enabledCache;
function debug(...args) {
if (!debug.enabled) {
return;
}
const self2 = debug;
const curr = Number(new Date());
const ms = curr - (prevTime || curr);
self2.diff = ms;
self2.prev = prevTime;
self2.curr = curr;
prevTime = curr;
args[0] = createDebug.coerce(args[0]);
if (typeof args[0] !== "string") {
args.unshift("%O");
}
let index3 = 0;
args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format3) => {
if (match === "%%") {
return "%";
}
index3++;
const formatter = createDebug.formatters[format3];
if (typeof formatter === "function") {
const val = args[index3];
match = formatter.call(self2, val);
args.splice(index3, 1);
index3--;
}
return match;
});
createDebug.formatArgs.call(self2, args);
const logFn = self2.log || createDebug.log;
logFn.apply(self2, args);
}
debug.namespace = namespace;
debug.useColors = createDebug.useColors();
debug.color = createDebug.selectColor(namespace);
debug.extend = extend2;
debug.destroy = createDebug.destroy;
Object.defineProperty(debug, "enabled", {
enumerable: true,
configurable: false,
get: () => {
if (enableOverride !== null) {
return enableOverride;
}
if (namespacesCache !== createDebug.namespaces) {
namespacesCache = createDebug.namespaces;
enabledCache = createDebug.enabled(namespace);
}
return enabledCache;
},
set: (v7) => {
enableOverride = v7;
}
});
if (typeof createDebug.init === "function") {
createDebug.init(debug);
}
return debug;
}
function extend2(namespace, delimiter) {
const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace);
newDebug.log = this.log;
return newDebug;
}
function enable(namespaces) {
createDebug.save(namespaces);
createDebug.namespaces = namespaces;
createDebug.names = [];
createDebug.skips = [];
let i4;
const split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/);
const len = split.length;
for (i4 = 0; i4 < len; i4++) {
if (!split[i4]) {
continue;
}
namespaces = split[i4].replace(/\*/g, ".*?");
if (namespaces[0] === "-") {
createDebug.skips.push(new RegExp("^" + namespaces.substr(1) + "$"));
} else {
createDebug.names.push(new RegExp("^" + namespaces + "$"));
}
}
}
function disable() {
const namespaces = [
...createDebug.names.map(toNamespace),
...createDebug.skips.map(toNamespace).map((namespace) => "-" + namespace)
].join(",");
createDebug.enable("");
return namespaces;
}
function enabled(name2) {
if (name2[name2.length - 1] === "*") {
return true;
}
let i4;
let len;
for (i4 = 0, len = createDebug.skips.length; i4 < len; i4++) {
if (createDebug.skips[i4].test(name2)) {
return false;
}
}
for (i4 = 0, len = createDebug.names.length; i4 < len; i4++) {
if (createDebug.names[i4].test(name2)) {
return true;
}
}
return false;
}
function toNamespace(regexp) {
return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, "*");
}
function coerce(val) {
if (val instanceof Error) {
return val.stack || val.message;
}
return val;
}
function destroy() {
console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
}
createDebug.enable(createDebug.load());
return createDebug;
}
module2.exports = setup;
}
});
// node_modules/debug/src/browser.js
var require_browser = __commonJS({
"node_modules/debug/src/browser.js"(exports2, module2) {
init_buffer_shim();
exports2.formatArgs = formatArgs;
exports2.save = save;
exports2.load = load;
exports2.useColors = useColors;
exports2.storage = localstorage();
exports2.destroy = (() => {
let warned = false;
return () => {
if (!warned) {
warned = true;
console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
}
};
})();
exports2.colors = [
"#0000CC",
"#0000FF",
"#0033CC",
"#0033FF",
"#0066CC",
"#0066FF",
"#0099CC",
"#0099FF",
"#00CC00",
"#00CC33",
"#00CC66",
"#00CC99",
"#00CCCC",
"#00CCFF",
"#3300CC",
"#3300FF",
"#3333CC",
"#3333FF",
"#3366CC",
"#3366FF",
"#3399CC",
"#3399FF",
"#33CC00",
"#33CC33",
"#33CC66",
"#33CC99",
"#33CCCC",
"#33CCFF",
"#6600CC",
"#6600FF",
"#6633CC",
"#6633FF",
"#66CC00",
"#66CC33",
"#9900CC",
"#9900FF",
"#9933CC",
"#9933FF",
"#99CC00",
"#99CC33",
"#CC0000",
"#CC0033",
"#CC0066",
"#CC0099",
"#CC00CC",
"#CC00FF",
"#CC3300",
"#CC3333",
"#CC3366",
"#CC3399",
"#CC33CC",
"#CC33FF",
"#CC6600",
"#CC6633",
"#CC9900",
"#CC9933",
"#CCCC00",
"#CCCC33",
"#FF0000",
"#FF0033",
"#FF0066",
"#FF0099",
"#FF00CC",
"#FF00FF",
"#FF3300",
"#FF3333",
"#FF3366",
"#FF3399",
"#FF33CC",
"#FF33FF",
"#FF6600",
"#FF6633",
"#FF9900",
"#FF9933",
"#FFCC00",
"#FFCC33"
];
function useColors() {
if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) {
return true;
}
if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
return false;
}
return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
}
function formatArgs(args) {
args[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff);
if (!this.useColors) {
return;
}
const c6 = "color: " + this.color;
args.splice(1, 0, c6, "color: inherit");
let index3 = 0;
let lastC = 0;
args[0].replace(/%[a-zA-Z%]/g, (match) => {
if (match === "%%") {
return;
}
index3++;
if (match === "%c") {
lastC = index3;
}
});
args.splice(lastC, 0, c6);
}
exports2.log = console.debug || console.log || (() => {
});
function save(namespaces) {
try {
if (namespaces) {
exports2.storage.setItem("debug", namespaces);
} else {
exports2.storage.removeItem("debug");
}
} catch (error) {
}
}
function load() {
let r3;
try {
r3 = exports2.storage.getItem("debug");
} catch (error) {
}
if (!r3 && typeof process !== "undefined" && "env" in process) {
r3 = process.env.DEBUG;
}
return r3;
}
function localstorage() {
try {
return localStorage;
} catch (error) {
}
}
module2.exports = require_common2()(exports2);
var { formatters } = module2.exports;
formatters.j = function(v7) {
try {
return JSON.stringify(v7);
} catch (error) {
return "[UnexpectedJSONParseError]: " + error.message;
}
};
}
});
// node_modules/observable-fns/dist/_scheduler.js
var require_scheduler = __commonJS({
"node_modules/observable-fns/dist/_scheduler.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.AsyncSerialScheduler = void 0;
var AsyncSerialScheduler = class {
constructor(observer) {
this._baseObserver = observer;
this._pendingPromises = new Set();
}
complete() {
Promise.all(this._pendingPromises).then(() => this._baseObserver.complete()).catch((error) => this._baseObserver.error(error));
}
error(error) {
this._baseObserver.error(error);
}
schedule(task2) {
const prevPromisesCompletion = Promise.all(this._pendingPromises);
const values2 = [];
const next = (value) => values2.push(value);
const promise = Promise.resolve().then(() => __awaiter(this, void 0, void 0, function* () {
yield prevPromisesCompletion;
yield task2(next);
this._pendingPromises.delete(promise);
for (const value of values2) {
this._baseObserver.next(value);
}
})).catch((error) => {
this._pendingPromises.delete(promise);
this._baseObserver.error(error);
});
this._pendingPromises.add(promise);
}
};
exports2.AsyncSerialScheduler = AsyncSerialScheduler;
}
});
// node_modules/observable-fns/dist/symbols.js
var require_symbols = __commonJS({
"node_modules/observable-fns/dist/symbols.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
}
});
// node_modules/observable-fns/dist/_symbols.js
var require_symbols2 = __commonJS({
"node_modules/observable-fns/dist/_symbols.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.registerObservableSymbol = exports2.getSymbol = exports2.hasSymbol = exports2.hasSymbols = void 0;
var hasSymbols = () => typeof Symbol === "function";
exports2.hasSymbols = hasSymbols;
var hasSymbol = (name2) => exports2.hasSymbols() && Boolean(Symbol[name2]);
exports2.hasSymbol = hasSymbol;
var getSymbol = (name2) => exports2.hasSymbol(name2) ? Symbol[name2] : "@@" + name2;
exports2.getSymbol = getSymbol;
function registerObservableSymbol() {
if (exports2.hasSymbols() && !exports2.hasSymbol("observable")) {
Symbol.observable = Symbol("observable");
}
}
exports2.registerObservableSymbol = registerObservableSymbol;
if (!exports2.hasSymbol("asyncIterator")) {
Symbol.asyncIterator = Symbol.asyncIterator || Symbol.for("Symbol.asyncIterator");
}
}
});
// node_modules/observable-fns/dist/observable.js
var require_observable = __commonJS({
"node_modules/observable-fns/dist/observable.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.Observable = exports2.SubscriptionObserver = exports2.Subscription = void 0;
require_symbols();
var _symbols_1 = require_symbols2();
var SymbolIterator = _symbols_1.getSymbol("iterator");
var SymbolObservable = _symbols_1.getSymbol("observable");
var SymbolSpecies = _symbols_1.getSymbol("species");
function getMethod4(obj, key) {
const value = obj[key];
if (value == null) {
return void 0;
}
if (typeof value !== "function") {
throw new TypeError(value + " is not a function");
}
return value;
}
function getSpecies(obj) {
let ctor = obj.constructor;
if (ctor !== void 0) {
ctor = ctor[SymbolSpecies];
if (ctor === null) {
ctor = void 0;
}
}
return ctor !== void 0 ? ctor : Observable2;
}
function isObservable2(x3) {
return x3 instanceof Observable2;
}
function hostReportError2(error) {
if (hostReportError2.log) {
hostReportError2.log(error);
} else {
setTimeout(() => {
throw error;
}, 0);
}
}
function enqueue(fn) {
Promise.resolve().then(() => {
try {
fn();
} catch (e4) {
hostReportError2(e4);
}
});
}
function cleanupSubscription(subscription) {
const cleanup = subscription._cleanup;
if (cleanup === void 0) {
return;
}
subscription._cleanup = void 0;
if (!cleanup) {
return;
}
try {
if (typeof cleanup === "function") {
cleanup();
} else {
const unsubscribe2 = getMethod4(cleanup, "unsubscribe");
if (unsubscribe2) {
unsubscribe2.call(cleanup);
}
}
} catch (e4) {
hostReportError2(e4);
}
}
function closeSubscription(subscription) {
subscription._observer = void 0;
subscription._queue = void 0;
subscription._state = "closed";
}
function flushSubscription(subscription) {
const queue2 = subscription._queue;
if (!queue2) {
return;
}
subscription._queue = void 0;
subscription._state = "ready";
for (const item of queue2) {
notifySubscription(subscription, item.type, item.value);
if (subscription._state === "closed") {
break;
}
}
}
function notifySubscription(subscription, type2, value) {
subscription._state = "running";
const observer = subscription._observer;
try {
const m5 = observer ? getMethod4(observer, type2) : void 0;
switch (type2) {
case "next":
if (m5)
m5.call(observer, value);
break;
case "error":
closeSubscription(subscription);
if (m5)
m5.call(observer, value);
else
throw value;
break;
case "complete":
closeSubscription(subscription);
if (m5)
m5.call(observer);
break;
}
} catch (e4) {
hostReportError2(e4);
}
if (subscription._state === "closed") {
cleanupSubscription(subscription);
} else if (subscription._state === "running") {
subscription._state = "ready";
}
}
function onNotify(subscription, type2, value) {
if (subscription._state === "closed") {
return;
}
if (subscription._state === "buffering") {
subscription._queue = subscription._queue || [];
subscription._queue.push({ type: type2, value });
return;
}
if (subscription._state !== "ready") {
subscription._state = "buffering";
subscription._queue = [{ type: type2, value }];
enqueue(() => flushSubscription(subscription));
return;
}
notifySubscription(subscription, type2, value);
}
var Subscription2 = class {
constructor(observer, subscriber) {
this._cleanup = void 0;
this._observer = observer;
this._queue = void 0;
this._state = "initializing";
const subscriptionObserver = new SubscriptionObserver(this);
try {
this._cleanup = subscriber.call(void 0, subscriptionObserver);
} catch (e4) {
subscriptionObserver.error(e4);
}
if (this._state === "initializing") {
this._state = "ready";
}
}
get closed() {
return this._state === "closed";
}
unsubscribe() {
if (this._state !== "closed") {
closeSubscription(this);
cleanupSubscription(this);
}
}
};
exports2.Subscription = Subscription2;
var SubscriptionObserver = class {
constructor(subscription) {
this._subscription = subscription;
}
get closed() {
return this._subscription._state === "closed";
}
next(value) {
onNotify(this._subscription, "next", value);
}
error(value) {
onNotify(this._subscription, "error", value);
}
complete() {
onNotify(this._subscription, "complete");
}
};
exports2.SubscriptionObserver = SubscriptionObserver;
var Observable2 = class {
constructor(subscriber) {
if (!(this instanceof Observable2)) {
throw new TypeError("Observable cannot be called as a function");
}
if (typeof subscriber !== "function") {
throw new TypeError("Observable initializer must be a function");
}
this._subscriber = subscriber;
}
subscribe(nextOrObserver, onError, onComplete) {
if (typeof nextOrObserver !== "object" || nextOrObserver === null) {
nextOrObserver = {
next: nextOrObserver,
error: onError,
complete: onComplete
};
}
return new Subscription2(nextOrObserver, this._subscriber);
}
pipe(first2, ...mappers) {
let intermediate = this;
for (const mapper of [first2, ...mappers]) {
intermediate = mapper(intermediate);
}
return intermediate;
}
tap(nextOrObserver, onError, onComplete) {
const tapObserver = typeof nextOrObserver !== "object" || nextOrObserver === null ? {
next: nextOrObserver,
error: onError,
complete: onComplete
} : nextOrObserver;
return new Observable2((observer) => {
return this.subscribe({
next(value) {
tapObserver.next && tapObserver.next(value);
observer.next(value);
},
error(error) {
tapObserver.error && tapObserver.error(error);
observer.error(error);
},
complete() {
tapObserver.complete && tapObserver.complete();
observer.complete();
},
start(subscription) {
tapObserver.start && tapObserver.start(subscription);
}
});
});
}
forEach(fn) {
return new Promise((resolve3, reject2) => {
if (typeof fn !== "function") {
reject2(new TypeError(fn + " is not a function"));
return;
}
function done() {
subscription.unsubscribe();
resolve3(void 0);
}
const subscription = this.subscribe({
next(value) {
try {
fn(value, done);
} catch (e4) {
reject2(e4);
subscription.unsubscribe();
}
},
error(error) {
reject2(error);
},
complete() {
resolve3(void 0);
}
});
});
}
map(fn) {
if (typeof fn !== "function") {
throw new TypeError(fn + " is not a function");
}
const C4 = getSpecies(this);
return new C4((observer) => this.subscribe({
next(value) {
let propagatedValue = value;
try {
propagatedValue = fn(value);
} catch (e4) {
return observer.error(e4);
}
observer.next(propagatedValue);
},
error(e4) {
observer.error(e4);
},
complete() {
observer.complete();
}
}));
}
filter(fn) {
if (typeof fn !== "function") {
throw new TypeError(fn + " is not a function");
}
const C4 = getSpecies(this);
return new C4((observer) => this.subscribe({
next(value) {
try {
if (!fn(value))
return;
} catch (e4) {
return observer.error(e4);
}
observer.next(value);
},
error(e4) {
observer.error(e4);
},
complete() {
observer.complete();
}
}));
}
reduce(fn, seed) {
if (typeof fn !== "function") {
throw new TypeError(fn + " is not a function");
}
const C4 = getSpecies(this);
const hasSeed = arguments.length > 1;
let hasValue = false;
let acc = seed;
return new C4((observer) => this.subscribe({
next(value) {
const first2 = !hasValue;
hasValue = true;
if (!first2 || hasSeed) {
try {
acc = fn(acc, value);
} catch (e4) {
return observer.error(e4);
}
} else {
acc = value;
}
},
error(e4) {
observer.error(e4);
},
complete() {
if (!hasValue && !hasSeed) {
return observer.error(new TypeError("Cannot reduce an empty sequence"));
}
observer.next(acc);
observer.complete();
}
}));
}
concat(...sources) {
const C4 = getSpecies(this);
return new C4((observer) => {
let subscription;
let index3 = 0;
function startNext(next) {
subscription = next.subscribe({
next(v7) {
observer.next(v7);
},
error(e4) {
observer.error(e4);
},
complete() {
if (index3 === sources.length) {
subscription = void 0;
observer.complete();
} else {
startNext(C4.from(sources[index3++]));
}
}
});
}
startNext(this);
return () => {
if (subscription) {
subscription.unsubscribe();
subscription = void 0;
}
};
});
}
flatMap(fn) {
if (typeof fn !== "function") {
throw new TypeError(fn + " is not a function");
}
const C4 = getSpecies(this);
return new C4((observer) => {
const subscriptions = [];
const outer = this.subscribe({
next(value) {
let normalizedValue;
if (fn) {
try {
normalizedValue = fn(value);
} catch (e4) {
return observer.error(e4);
}
} else {
normalizedValue = value;
}
const inner = C4.from(normalizedValue).subscribe({
next(innerValue) {
observer.next(innerValue);
},
error(e4) {
observer.error(e4);
},
complete() {
const i4 = subscriptions.indexOf(inner);
if (i4 >= 0)
subscriptions.splice(i4, 1);
completeIfDone();
}
});
subscriptions.push(inner);
},
error(e4) {
observer.error(e4);
},
complete() {
completeIfDone();
}
});
function completeIfDone() {
if (outer.closed && subscriptions.length === 0) {
observer.complete();
}
}
return () => {
subscriptions.forEach((s4) => s4.unsubscribe());
outer.unsubscribe();
};
});
}
[(Symbol.observable, SymbolObservable)]() {
return this;
}
static from(x3) {
const C4 = typeof this === "function" ? this : Observable2;
if (x3 == null) {
throw new TypeError(x3 + " is not an object");
}
const observableMethod = getMethod4(x3, SymbolObservable);
if (observableMethod) {
const observable2 = observableMethod.call(x3);
if (Object(observable2) !== observable2) {
throw new TypeError(observable2 + " is not an object");
}
if (isObservable2(observable2) && observable2.constructor === C4) {
return observable2;
}
return new C4((observer) => observable2.subscribe(observer));
}
if (_symbols_1.hasSymbol("iterator")) {
const iteratorMethod = getMethod4(x3, SymbolIterator);
if (iteratorMethod) {
return new C4((observer) => {
enqueue(() => {
if (observer.closed)
return;
for (const item of iteratorMethod.call(x3)) {
observer.next(item);
if (observer.closed)
return;
}
observer.complete();
});
});
}
}
if (Array.isArray(x3)) {
return new C4((observer) => {
enqueue(() => {
if (observer.closed)
return;
for (const item of x3) {
observer.next(item);
if (observer.closed)
return;
}
observer.complete();
});
});
}
throw new TypeError(x3 + " is not observable");
}
static of(...items2) {
const C4 = typeof this === "function" ? this : Observable2;
return new C4((observer) => {
enqueue(() => {
if (observer.closed)
return;
for (const item of items2) {
observer.next(item);
if (observer.closed)
return;
}
observer.complete();
});
});
}
static get [SymbolSpecies]() {
return this;
}
};
exports2.Observable = Observable2;
if (_symbols_1.hasSymbols()) {
Object.defineProperty(Observable2, Symbol("extensions"), {
value: {
symbol: SymbolObservable,
hostReportError: hostReportError2
},
configurable: true
});
}
exports2.default = Observable2;
}
});
// node_modules/observable-fns/dist/unsubscribe.js
var require_unsubscribe = __commonJS({
"node_modules/observable-fns/dist/unsubscribe.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
function unsubscribe2(subscription) {
if (typeof subscription === "function") {
subscription();
} else if (subscription && typeof subscription.unsubscribe === "function") {
subscription.unsubscribe();
}
}
exports2.default = unsubscribe2;
}
});
// node_modules/observable-fns/dist/filter.js
var require_filter = __commonJS({
"node_modules/observable-fns/dist/filter.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports2, "__esModule", { value: true });
var _scheduler_1 = require_scheduler();
var observable_1 = require_observable();
var unsubscribe_1 = require_unsubscribe();
function filter2(test2) {
return (observable2) => {
return new observable_1.default((observer) => {
const scheduler = new _scheduler_1.AsyncSerialScheduler(observer);
const subscription = observable2.subscribe({
complete() {
scheduler.complete();
},
error(error) {
scheduler.error(error);
},
next(input) {
scheduler.schedule((next) => __awaiter(this, void 0, void 0, function* () {
if (yield test2(input)) {
next(input);
}
}));
}
});
return () => unsubscribe_1.default(subscription);
});
};
}
exports2.default = filter2;
}
});
// node_modules/observable-fns/dist/_util.js
var require_util = __commonJS({
"node_modules/observable-fns/dist/_util.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.isIterator = exports2.isAsyncIterator = void 0;
var _symbols_1 = require_symbols2();
function isAsyncIterator(thing) {
return thing && _symbols_1.hasSymbol("asyncIterator") && thing[Symbol.asyncIterator];
}
exports2.isAsyncIterator = isAsyncIterator;
function isIterator(thing) {
return thing && _symbols_1.hasSymbol("iterator") && thing[Symbol.iterator];
}
exports2.isIterator = isIterator;
}
});
// node_modules/observable-fns/dist/flatMap.js
var require_flatMap = __commonJS({
"node_modules/observable-fns/dist/flatMap.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __asyncValues = exports2 && exports2.__asyncValues || function(o4) {
if (!Symbol.asyncIterator)
throw new TypeError("Symbol.asyncIterator is not defined.");
var m5 = o4[Symbol.asyncIterator], i4;
return m5 ? m5.call(o4) : (o4 = typeof __values === "function" ? __values(o4) : o4[Symbol.iterator](), i4 = {}, verb("next"), verb("throw"), verb("return"), i4[Symbol.asyncIterator] = function() {
return this;
}, i4);
function verb(n4) {
i4[n4] = o4[n4] && function(v7) {
return new Promise(function(resolve3, reject2) {
v7 = o4[n4](v7), settle(resolve3, reject2, v7.done, v7.value);
});
};
}
function settle(resolve3, reject2, d3, v7) {
Promise.resolve(v7).then(function(v8) {
resolve3({ value: v8, done: d3 });
}, reject2);
}
};
Object.defineProperty(exports2, "__esModule", { value: true });
var _scheduler_1 = require_scheduler();
var _util_1 = require_util();
var observable_1 = require_observable();
var unsubscribe_1 = require_unsubscribe();
function flatMap2(mapper) {
return (observable2) => {
return new observable_1.default((observer) => {
const scheduler = new _scheduler_1.AsyncSerialScheduler(observer);
const subscription = observable2.subscribe({
complete() {
scheduler.complete();
},
error(error) {
scheduler.error(error);
},
next(input) {
scheduler.schedule((next) => __awaiter(this, void 0, void 0, function* () {
var e_1, _a3;
const mapped = yield mapper(input);
if (_util_1.isIterator(mapped) || _util_1.isAsyncIterator(mapped)) {
try {
for (var mapped_1 = __asyncValues(mapped), mapped_1_1; mapped_1_1 = yield mapped_1.next(), !mapped_1_1.done; ) {
const element = mapped_1_1.value;
next(element);
}
} catch (e_1_1) {
e_1 = { error: e_1_1 };
} finally {
try {
if (mapped_1_1 && !mapped_1_1.done && (_a3 = mapped_1.return))
yield _a3.call(mapped_1);
} finally {
if (e_1)
throw e_1.error;
}
}
} else {
mapped.map((output) => next(output));
}
}));
}
});
return () => unsubscribe_1.default(subscription);
});
};
}
exports2.default = flatMap2;
}
});
// node_modules/observable-fns/dist/interval.js
var require_interval = __commonJS({
"node_modules/observable-fns/dist/interval.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
var observable_1 = require_observable();
function interval2(period) {
return new observable_1.Observable((observer) => {
let counter = 0;
const handle = setInterval(() => {
observer.next(counter++);
}, period);
return () => clearInterval(handle);
});
}
exports2.default = interval2;
}
});
// node_modules/observable-fns/dist/map.js
var require_map = __commonJS({
"node_modules/observable-fns/dist/map.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports2, "__esModule", { value: true });
var _scheduler_1 = require_scheduler();
var observable_1 = require_observable();
var unsubscribe_1 = require_unsubscribe();
function map3(mapper) {
return (observable2) => {
return new observable_1.default((observer) => {
const scheduler = new _scheduler_1.AsyncSerialScheduler(observer);
const subscription = observable2.subscribe({
complete() {
scheduler.complete();
},
error(error) {
scheduler.error(error);
},
next(input) {
scheduler.schedule((next) => __awaiter(this, void 0, void 0, function* () {
const mapped = yield mapper(input);
next(mapped);
}));
}
});
return () => unsubscribe_1.default(subscription);
});
};
}
exports2.default = map3;
}
});
// node_modules/observable-fns/dist/merge.js
var require_merge = __commonJS({
"node_modules/observable-fns/dist/merge.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
var observable_1 = require_observable();
var unsubscribe_1 = require_unsubscribe();
function merge2(...observables) {
if (observables.length === 0) {
return observable_1.Observable.from([]);
}
return new observable_1.Observable((observer) => {
let completed = 0;
const subscriptions = observables.map((input) => {
return input.subscribe({
error(error) {
observer.error(error);
unsubscribeAll();
},
next(value) {
observer.next(value);
},
complete() {
if (++completed === observables.length) {
observer.complete();
unsubscribeAll();
}
}
});
});
const unsubscribeAll = () => {
subscriptions.forEach((subscription) => unsubscribe_1.default(subscription));
};
return unsubscribeAll;
});
}
exports2.default = merge2;
}
});
// node_modules/observable-fns/dist/subject.js
var require_subject = __commonJS({
"node_modules/observable-fns/dist/subject.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
var observable_1 = require_observable();
var MulticastSubject = class extends observable_1.default {
constructor() {
super((observer) => {
this._observers.add(observer);
return () => this._observers.delete(observer);
});
this._observers = new Set();
}
next(value) {
for (const observer of this._observers) {
observer.next(value);
}
}
error(error) {
for (const observer of this._observers) {
observer.error(error);
}
}
complete() {
for (const observer of this._observers) {
observer.complete();
}
}
};
exports2.default = MulticastSubject;
}
});
// node_modules/observable-fns/dist/multicast.js
var require_multicast = __commonJS({
"node_modules/observable-fns/dist/multicast.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
var observable_1 = require_observable();
var subject_1 = require_subject();
var unsubscribe_1 = require_unsubscribe();
function multicast2(coldObservable) {
const subject = new subject_1.default();
let sourceSubscription;
let subscriberCount = 0;
return new observable_1.default((observer) => {
if (!sourceSubscription) {
sourceSubscription = coldObservable.subscribe(subject);
}
const subscription = subject.subscribe(observer);
subscriberCount++;
return () => {
subscriberCount--;
subscription.unsubscribe();
if (subscriberCount === 0) {
unsubscribe_1.default(sourceSubscription);
sourceSubscription = void 0;
}
};
});
}
exports2.default = multicast2;
}
});
// node_modules/observable-fns/dist/scan.js
var require_scan = __commonJS({
"node_modules/observable-fns/dist/scan.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports2, "__esModule", { value: true });
var _scheduler_1 = require_scheduler();
var observable_1 = require_observable();
var unsubscribe_1 = require_unsubscribe();
function scan2(accumulator, seed) {
return (observable2) => {
return new observable_1.default((observer) => {
let accumulated;
let index3 = 0;
const scheduler = new _scheduler_1.AsyncSerialScheduler(observer);
const subscription = observable2.subscribe({
complete() {
scheduler.complete();
},
error(error) {
scheduler.error(error);
},
next(value) {
scheduler.schedule((next) => __awaiter(this, void 0, void 0, function* () {
const prevAcc = index3 === 0 ? typeof seed === "undefined" ? value : seed : accumulated;
accumulated = yield accumulator(prevAcc, value, index3++);
next(accumulated);
}));
}
});
return () => unsubscribe_1.default(subscription);
});
};
}
exports2.default = scan2;
}
});
// node_modules/observable-fns/dist/index.js
var require_dist = __commonJS({
"node_modules/observable-fns/dist/index.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.unsubscribe = exports2.Subject = exports2.scan = exports2.Observable = exports2.multicast = exports2.merge = exports2.map = exports2.interval = exports2.flatMap = exports2.filter = void 0;
var filter_1 = require_filter();
Object.defineProperty(exports2, "filter", { enumerable: true, get: function() {
return filter_1.default;
} });
var flatMap_1 = require_flatMap();
Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() {
return flatMap_1.default;
} });
var interval_1 = require_interval();
Object.defineProperty(exports2, "interval", { enumerable: true, get: function() {
return interval_1.default;
} });
var map_1 = require_map();
Object.defineProperty(exports2, "map", { enumerable: true, get: function() {
return map_1.default;
} });
var merge_1 = require_merge();
Object.defineProperty(exports2, "merge", { enumerable: true, get: function() {
return merge_1.default;
} });
var multicast_1 = require_multicast();
Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() {
return multicast_1.default;
} });
var observable_1 = require_observable();
Object.defineProperty(exports2, "Observable", { enumerable: true, get: function() {
return observable_1.default;
} });
var scan_1 = require_scan();
Object.defineProperty(exports2, "scan", { enumerable: true, get: function() {
return scan_1.default;
} });
var subject_1 = require_subject();
Object.defineProperty(exports2, "Subject", { enumerable: true, get: function() {
return subject_1.default;
} });
var unsubscribe_1 = require_unsubscribe();
Object.defineProperty(exports2, "unsubscribe", { enumerable: true, get: function() {
return unsubscribe_1.default;
} });
}
});
// node_modules/observable-fns/index.js
var require_observable_fns = __commonJS({
"node_modules/observable-fns/index.js"(exports2, module2) {
init_buffer_shim();
module2.exports = require_dist();
}
});
// node_modules/threads/dist/ponyfills.js
var require_ponyfills = __commonJS({
"node_modules/threads/dist/ponyfills.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.allSettled = void 0;
function allSettled(values2) {
return Promise.all(values2.map((item) => {
const onFulfill = (value) => {
return { status: "fulfilled", value };
};
const onReject = (reason) => {
return { status: "rejected", reason };
};
const itemPromise = Promise.resolve(item);
try {
return itemPromise.then(onFulfill, onReject);
} catch (error) {
return Promise.reject(error);
}
}));
}
exports2.allSettled = allSettled;
}
});
// node_modules/threads/dist/master/pool-types.js
var require_pool_types = __commonJS({
"node_modules/threads/dist/master/pool-types.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.PoolEventType = void 0;
var PoolEventType;
(function(PoolEventType2) {
PoolEventType2["initialized"] = "initialized";
PoolEventType2["taskCanceled"] = "taskCanceled";
PoolEventType2["taskCompleted"] = "taskCompleted";
PoolEventType2["taskFailed"] = "taskFailed";
PoolEventType2["taskQueued"] = "taskQueued";
PoolEventType2["taskQueueDrained"] = "taskQueueDrained";
PoolEventType2["taskStart"] = "taskStart";
PoolEventType2["terminated"] = "terminated";
})(PoolEventType = exports2.PoolEventType || (exports2.PoolEventType = {}));
}
});
// node_modules/threads/dist/symbols.js
var require_symbols3 = __commonJS({
"node_modules/threads/dist/symbols.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.$worker = exports2.$transferable = exports2.$terminate = exports2.$events = exports2.$errors = void 0;
exports2.$errors = Symbol("thread.errors");
exports2.$events = Symbol("thread.events");
exports2.$terminate = Symbol("thread.terminate");
exports2.$transferable = Symbol("thread.transferable");
exports2.$worker = Symbol("thread.worker");
}
});
// node_modules/threads/dist/master/thread.js
var require_thread = __commonJS({
"node_modules/threads/dist/master/thread.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.Thread = void 0;
var symbols_1 = require_symbols3();
function fail(message) {
throw Error(message);
}
exports2.Thread = {
errors(thread) {
return thread[symbols_1.$errors] || fail("Error observable not found. Make sure to pass a thread instance as returned by the spawn() promise.");
},
events(thread) {
return thread[symbols_1.$events] || fail("Events observable not found. Make sure to pass a thread instance as returned by the spawn() promise.");
},
terminate(thread) {
return thread[symbols_1.$terminate]();
}
};
}
});
// node_modules/threads/dist/master/pool.js
var require_pool = __commonJS({
"node_modules/threads/dist/master/pool.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = exports2 && exports2.__importDefault || function(mod) {
return mod && mod.__esModule ? mod : { "default": mod };
};
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.Pool = exports2.Thread = exports2.PoolEventType = void 0;
var debug_1 = __importDefault(require_browser());
var observable_fns_1 = require_observable_fns();
var ponyfills_1 = require_ponyfills();
var implementation_1 = require_implementation_browser();
var pool_types_1 = require_pool_types();
Object.defineProperty(exports2, "PoolEventType", { enumerable: true, get: function() {
return pool_types_1.PoolEventType;
} });
var thread_1 = require_thread();
Object.defineProperty(exports2, "Thread", { enumerable: true, get: function() {
return thread_1.Thread;
} });
var nextPoolID = 1;
function createArray(size) {
const array = [];
for (let index3 = 0; index3 < size; index3++) {
array.push(index3);
}
return array;
}
function delay2(ms) {
return new Promise((resolve3) => setTimeout(resolve3, ms));
}
function flatMap2(array, mapper) {
return array.reduce((flattened, element) => [...flattened, ...mapper(element)], []);
}
function slugify(text) {
return text.replace(/\W/g, " ").trim().replace(/\s+/g, "-");
}
function spawnWorkers(spawnWorker, count2) {
return createArray(count2).map(() => ({
init: spawnWorker(),
runningTasks: []
}));
}
var WorkerPool = class {
constructor(spawnWorker, optionsOrSize) {
this.eventSubject = new observable_fns_1.Subject();
this.initErrors = [];
this.isClosing = false;
this.nextTaskID = 1;
this.taskQueue = [];
const options = typeof optionsOrSize === "number" ? { size: optionsOrSize } : optionsOrSize || {};
const { size = implementation_1.defaultPoolSize } = options;
this.debug = debug_1.default(`threads:pool:${slugify(options.name || String(nextPoolID++))}`);
this.options = options;
this.workers = spawnWorkers(spawnWorker, size);
this.eventObservable = observable_fns_1.multicast(observable_fns_1.Observable.from(this.eventSubject));
Promise.all(this.workers.map((worker) => worker.init)).then(() => this.eventSubject.next({
type: pool_types_1.PoolEventType.initialized,
size: this.workers.length
}), (error) => {
this.debug("Error while initializing pool worker:", error);
this.eventSubject.error(error);
this.initErrors.push(error);
});
}
findIdlingWorker() {
const { concurrency = 1 } = this.options;
return this.workers.find((worker) => worker.runningTasks.length < concurrency);
}
runPoolTask(worker, task2) {
return __awaiter(this, void 0, void 0, function* () {
const workerID = this.workers.indexOf(worker) + 1;
this.debug(`Running task #${task2.id} on worker #${workerID}...`);
this.eventSubject.next({
type: pool_types_1.PoolEventType.taskStart,
taskID: task2.id,
workerID
});
try {
const returnValue = yield task2.run(yield worker.init);
this.debug(`Task #${task2.id} completed successfully`);
this.eventSubject.next({
type: pool_types_1.PoolEventType.taskCompleted,
returnValue,
taskID: task2.id,
workerID
});
} catch (error) {
this.debug(`Task #${task2.id} failed`);
this.eventSubject.next({
type: pool_types_1.PoolEventType.taskFailed,
taskID: task2.id,
error,
workerID
});
}
});
}
run(worker, task2) {
return __awaiter(this, void 0, void 0, function* () {
const runPromise = (() => __awaiter(this, void 0, void 0, function* () {
const removeTaskFromWorkersRunningTasks = () => {
worker.runningTasks = worker.runningTasks.filter((someRunPromise) => someRunPromise !== runPromise);
};
yield delay2(0);
try {
yield this.runPoolTask(worker, task2);
} finally {
removeTaskFromWorkersRunningTasks();
if (!this.isClosing) {
this.scheduleWork();
}
}
}))();
worker.runningTasks.push(runPromise);
});
}
scheduleWork() {
this.debug(`Attempt de-queueing a task in order to run it...`);
const availableWorker = this.findIdlingWorker();
if (!availableWorker)
return;
const nextTask = this.taskQueue.shift();
if (!nextTask) {
this.debug(`Task queue is empty`);
this.eventSubject.next({ type: pool_types_1.PoolEventType.taskQueueDrained });
return;
}
this.run(availableWorker, nextTask);
}
taskCompletion(taskID) {
return new Promise((resolve3, reject2) => {
const eventSubscription = this.events().subscribe((event) => {
if (event.type === pool_types_1.PoolEventType.taskCompleted && event.taskID === taskID) {
eventSubscription.unsubscribe();
resolve3(event.returnValue);
} else if (event.type === pool_types_1.PoolEventType.taskFailed && event.taskID === taskID) {
eventSubscription.unsubscribe();
reject2(event.error);
} else if (event.type === pool_types_1.PoolEventType.terminated) {
eventSubscription.unsubscribe();
reject2(Error("Pool has been terminated before task was run."));
}
});
});
}
settled(allowResolvingImmediately = false) {
return __awaiter(this, void 0, void 0, function* () {
const getCurrentlyRunningTasks = () => flatMap2(this.workers, (worker) => worker.runningTasks);
const taskFailures = [];
const failureSubscription = this.eventObservable.subscribe((event) => {
if (event.type === pool_types_1.PoolEventType.taskFailed) {
taskFailures.push(event.error);
}
});
if (this.initErrors.length > 0) {
return Promise.reject(this.initErrors[0]);
}
if (allowResolvingImmediately && this.taskQueue.length === 0) {
yield ponyfills_1.allSettled(getCurrentlyRunningTasks());
return taskFailures;
}
yield new Promise((resolve3, reject2) => {
const subscription = this.eventObservable.subscribe({
next(event) {
if (event.type === pool_types_1.PoolEventType.taskQueueDrained) {
subscription.unsubscribe();
resolve3(void 0);
}
},
error: reject2
});
});
yield ponyfills_1.allSettled(getCurrentlyRunningTasks());
failureSubscription.unsubscribe();
return taskFailures;
});
}
completed(allowResolvingImmediately = false) {
return __awaiter(this, void 0, void 0, function* () {
const settlementPromise = this.settled(allowResolvingImmediately);
const earlyExitPromise = new Promise((resolve3, reject2) => {
const subscription = this.eventObservable.subscribe({
next(event) {
if (event.type === pool_types_1.PoolEventType.taskQueueDrained) {
subscription.unsubscribe();
resolve3(settlementPromise);
} else if (event.type === pool_types_1.PoolEventType.taskFailed) {
subscription.unsubscribe();
reject2(event.error);
}
},
error: reject2
});
});
const errors = yield Promise.race([
settlementPromise,
earlyExitPromise
]);
if (errors.length > 0) {
throw errors[0];
}
});
}
events() {
return this.eventObservable;
}
queue(taskFunction) {
const { maxQueuedJobs = Infinity } = this.options;
if (this.isClosing) {
throw Error(`Cannot schedule pool tasks after terminate() has been called.`);
}
if (this.initErrors.length > 0) {
throw this.initErrors[0];
}
const taskID = this.nextTaskID++;
const taskCompletion = this.taskCompletion(taskID);
taskCompletion.catch((error) => {
this.debug(`Task #${taskID} errored:`, error);
});
const task2 = {
id: taskID,
run: taskFunction,
cancel: () => {
if (this.taskQueue.indexOf(task2) === -1)
return;
this.taskQueue = this.taskQueue.filter((someTask) => someTask !== task2);
this.eventSubject.next({
type: pool_types_1.PoolEventType.taskCanceled,
taskID: task2.id
});
},
then: taskCompletion.then.bind(taskCompletion)
};
if (this.taskQueue.length >= maxQueuedJobs) {
throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\nThis usually happens for one of two reasons: We are either at peak workload right now or some tasks just won't finish, thus blocking the pool.");
}
this.debug(`Queueing task #${task2.id}...`);
this.taskQueue.push(task2);
this.eventSubject.next({
type: pool_types_1.PoolEventType.taskQueued,
taskID: task2.id
});
this.scheduleWork();
return task2;
}
terminate(force) {
return __awaiter(this, void 0, void 0, function* () {
this.isClosing = true;
if (!force) {
yield this.completed(true);
}
this.eventSubject.next({
type: pool_types_1.PoolEventType.terminated,
remainingQueue: [...this.taskQueue]
});
this.eventSubject.complete();
yield Promise.all(this.workers.map((worker) => __awaiter(this, void 0, void 0, function* () {
return thread_1.Thread.terminate(yield worker.init);
})));
});
}
};
WorkerPool.EventType = pool_types_1.PoolEventType;
function PoolConstructor(spawnWorker, optionsOrSize) {
return new WorkerPool(spawnWorker, optionsOrSize);
}
PoolConstructor.EventType = pool_types_1.PoolEventType;
exports2.Pool = PoolConstructor;
}
});
// node_modules/threads/dist/promise.js
var require_promise = __commonJS({
"node_modules/threads/dist/promise.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.createPromiseWithResolver = void 0;
var doNothing = () => void 0;
function createPromiseWithResolver() {
let alreadyResolved = false;
let resolvedTo;
let resolver = doNothing;
const promise = new Promise((resolve3) => {
if (alreadyResolved) {
resolve3(resolvedTo);
} else {
resolver = resolve3;
}
});
const exposedResolver = (value) => {
alreadyResolved = true;
resolvedTo = value;
resolver(resolvedTo);
};
return [promise, exposedResolver];
}
exports2.createPromiseWithResolver = createPromiseWithResolver;
}
});
// node_modules/threads/dist/types/master.js
var require_master = __commonJS({
"node_modules/threads/dist/types/master.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.WorkerEventType = void 0;
var symbols_1 = require_symbols3();
var WorkerEventType;
(function(WorkerEventType2) {
WorkerEventType2["internalError"] = "internalError";
WorkerEventType2["message"] = "message";
WorkerEventType2["termination"] = "termination";
})(WorkerEventType = exports2.WorkerEventType || (exports2.WorkerEventType = {}));
}
});
// node_modules/threads/dist/observable-promise.js
var require_observable_promise = __commonJS({
"node_modules/threads/dist/observable-promise.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.ObservablePromise = void 0;
var observable_fns_1 = require_observable_fns();
var doNothing = () => void 0;
var returnInput = (input) => input;
var runDeferred = (fn) => Promise.resolve().then(fn);
function fail(error) {
throw error;
}
function isThenable2(thing) {
return thing && typeof thing.then === "function";
}
var ObservablePromise = class extends observable_fns_1.Observable {
constructor(init2) {
super((originalObserver) => {
const self2 = this;
const observer = Object.assign(Object.assign({}, originalObserver), {
complete() {
originalObserver.complete();
self2.onCompletion();
},
error(error) {
originalObserver.error(error);
self2.onError(error);
},
next(value) {
originalObserver.next(value);
self2.onNext(value);
}
});
try {
this.initHasRun = true;
return init2(observer);
} catch (error) {
observer.error(error);
}
});
this.initHasRun = false;
this.fulfillmentCallbacks = [];
this.rejectionCallbacks = [];
this.firstValueSet = false;
this.state = "pending";
}
onNext(value) {
if (!this.firstValueSet) {
this.firstValue = value;
this.firstValueSet = true;
}
}
onError(error) {
this.state = "rejected";
this.rejection = error;
for (const onRejected of this.rejectionCallbacks) {
runDeferred(() => onRejected(error));
}
}
onCompletion() {
this.state = "fulfilled";
for (const onFulfilled of this.fulfillmentCallbacks) {
runDeferred(() => onFulfilled(this.firstValue));
}
}
then(onFulfilledRaw, onRejectedRaw) {
const onFulfilled = onFulfilledRaw || returnInput;
const onRejected = onRejectedRaw || fail;
let onRejectedCalled = false;
return new Promise((resolve3, reject2) => {
const rejectionCallback = (error) => {
if (onRejectedCalled)
return;
onRejectedCalled = true;
try {
resolve3(onRejected(error));
} catch (anotherError) {
reject2(anotherError);
}
};
const fulfillmentCallback = (value) => {
try {
resolve3(onFulfilled(value));
} catch (error) {
rejectionCallback(error);
}
};
if (!this.initHasRun) {
this.subscribe({ error: rejectionCallback });
}
if (this.state === "fulfilled") {
return resolve3(onFulfilled(this.firstValue));
}
if (this.state === "rejected") {
onRejectedCalled = true;
return resolve3(onRejected(this.rejection));
}
this.fulfillmentCallbacks.push(fulfillmentCallback);
this.rejectionCallbacks.push(rejectionCallback);
});
}
catch(onRejected) {
return this.then(void 0, onRejected);
}
finally(onCompleted) {
const handler = onCompleted || doNothing;
return this.then((value) => {
handler();
return value;
}, () => handler());
}
static from(thing) {
if (isThenable2(thing)) {
return new ObservablePromise((observer) => {
const onFulfilled = (value) => {
observer.next(value);
observer.complete();
};
const onRejected = (error) => {
observer.error(error);
};
thing.then(onFulfilled, onRejected);
});
} else {
return super.from(thing);
}
}
};
exports2.ObservablePromise = ObservablePromise;
}
});
// node_modules/threads/dist/transferable.js
var require_transferable = __commonJS({
"node_modules/threads/dist/transferable.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.Transfer = exports2.isTransferDescriptor = void 0;
var symbols_1 = require_symbols3();
function isTransferable(thing) {
if (!thing || typeof thing !== "object")
return false;
return true;
}
function isTransferDescriptor(thing) {
return thing && typeof thing === "object" && thing[symbols_1.$transferable];
}
exports2.isTransferDescriptor = isTransferDescriptor;
function Transfer2(payload, transferables) {
if (!transferables) {
if (!isTransferable(payload))
throw Error();
transferables = [payload];
}
return {
[symbols_1.$transferable]: true,
send: payload,
transferables
};
}
exports2.Transfer = Transfer2;
}
});
// node_modules/threads/dist/types/messages.js
var require_messages = __commonJS({
"node_modules/threads/dist/types/messages.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.WorkerMessageType = exports2.MasterMessageType = void 0;
var MasterMessageType;
(function(MasterMessageType2) {
MasterMessageType2["cancel"] = "cancel";
MasterMessageType2["run"] = "run";
})(MasterMessageType = exports2.MasterMessageType || (exports2.MasterMessageType = {}));
var WorkerMessageType;
(function(WorkerMessageType2) {
WorkerMessageType2["error"] = "error";
WorkerMessageType2["init"] = "init";
WorkerMessageType2["result"] = "result";
WorkerMessageType2["running"] = "running";
WorkerMessageType2["uncaughtError"] = "uncaughtError";
})(WorkerMessageType = exports2.WorkerMessageType || (exports2.WorkerMessageType = {}));
}
});
// node_modules/threads/dist/master/invocation-proxy.js
var require_invocation_proxy = __commonJS({
"node_modules/threads/dist/master/invocation-proxy.js"(exports2) {
init_buffer_shim();
"use strict";
var __importDefault = exports2 && exports2.__importDefault || function(mod) {
return mod && mod.__esModule ? mod : { "default": mod };
};
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.createProxyModule = exports2.createProxyFunction = void 0;
var debug_1 = __importDefault(require_browser());
var observable_fns_1 = require_observable_fns();
var common_1 = require_common();
var observable_promise_1 = require_observable_promise();
var transferable_1 = require_transferable();
var messages_1 = require_messages();
var debugMessages = debug_1.default("threads:master:messages");
var nextJobUID = 1;
var dedupe = (array) => Array.from(new Set(array));
var isJobErrorMessage = (data2) => data2 && data2.type === messages_1.WorkerMessageType.error;
var isJobResultMessage = (data2) => data2 && data2.type === messages_1.WorkerMessageType.result;
var isJobStartMessage = (data2) => data2 && data2.type === messages_1.WorkerMessageType.running;
function createObservableForJob(worker, jobUID) {
return new observable_fns_1.Observable((observer) => {
let asyncType;
const messageHandler = (event) => {
debugMessages("Message from worker:", event.data);
if (!event.data || event.data.uid !== jobUID)
return;
if (isJobStartMessage(event.data)) {
asyncType = event.data.resultType;
} else if (isJobResultMessage(event.data)) {
if (asyncType === "promise") {
if (typeof event.data.payload !== "undefined") {
observer.next(common_1.deserialize(event.data.payload));
}
observer.complete();
worker.removeEventListener("message", messageHandler);
} else {
if (event.data.payload) {
observer.next(common_1.deserialize(event.data.payload));
}
if (event.data.complete) {
observer.complete();
worker.removeEventListener("message", messageHandler);
}
}
} else if (isJobErrorMessage(event.data)) {
const error = common_1.deserialize(event.data.error);
if (asyncType === "promise" || !asyncType) {
observer.error(error);
} else {
observer.error(error);
}
worker.removeEventListener("message", messageHandler);
}
};
worker.addEventListener("message", messageHandler);
return () => {
if (asyncType === "observable" || !asyncType) {
const cancelMessage = {
type: messages_1.MasterMessageType.cancel,
uid: jobUID
};
worker.postMessage(cancelMessage);
}
worker.removeEventListener("message", messageHandler);
};
});
}
function prepareArguments(rawArgs) {
if (rawArgs.length === 0) {
return {
args: [],
transferables: []
};
}
const args = [];
const transferables = [];
for (const arg of rawArgs) {
if (transferable_1.isTransferDescriptor(arg)) {
args.push(common_1.serialize(arg.send));
transferables.push(...arg.transferables);
} else {
args.push(common_1.serialize(arg));
}
}
return {
args,
transferables: transferables.length === 0 ? transferables : dedupe(transferables)
};
}
function createProxyFunction(worker, method) {
return (...rawArgs) => {
const uid = nextJobUID++;
const { args, transferables } = prepareArguments(rawArgs);
const runMessage = {
type: messages_1.MasterMessageType.run,
uid,
method,
args
};
debugMessages("Sending command to run function to worker:", runMessage);
try {
worker.postMessage(runMessage, transferables);
} catch (error) {
return observable_promise_1.ObservablePromise.from(Promise.reject(error));
}
return observable_promise_1.ObservablePromise.from(observable_fns_1.multicast(createObservableForJob(worker, uid)));
};
}
exports2.createProxyFunction = createProxyFunction;
function createProxyModule(worker, methodNames) {
const proxy = {};
for (const methodName of methodNames) {
proxy[methodName] = createProxyFunction(worker, methodName);
}
return proxy;
}
exports2.createProxyModule = createProxyModule;
}
});
// node_modules/threads/dist/master/spawn.js
var require_spawn = __commonJS({
"node_modules/threads/dist/master/spawn.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = exports2 && exports2.__importDefault || function(mod) {
return mod && mod.__esModule ? mod : { "default": mod };
};
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.spawn = void 0;
var debug_1 = __importDefault(require_browser());
var observable_fns_1 = require_observable_fns();
var common_1 = require_common();
var promise_1 = require_promise();
var symbols_1 = require_symbols3();
var master_1 = require_master();
var invocation_proxy_1 = require_invocation_proxy();
var debugMessages = debug_1.default("threads:master:messages");
var debugSpawn = debug_1.default("threads:master:spawn");
var debugThreadUtils = debug_1.default("threads:master:thread-utils");
var isInitMessage = (data2) => data2 && data2.type === "init";
var isUncaughtErrorMessage = (data2) => data2 && data2.type === "uncaughtError";
var initMessageTimeout = typeof process !== "undefined" && undefined ? Number.parseInt(undefined, 10) : 1e4;
function withTimeout(promise, timeoutInMs, errorMessage) {
return __awaiter(this, void 0, void 0, function* () {
let timeoutHandle;
const timeout2 = new Promise((resolve3, reject2) => {
timeoutHandle = setTimeout(() => reject2(Error(errorMessage)), timeoutInMs);
});
const result = yield Promise.race([
promise,
timeout2
]);
clearTimeout(timeoutHandle);
return result;
});
}
function receiveInitMessage(worker) {
return new Promise((resolve3, reject2) => {
const messageHandler = (event) => {
debugMessages("Message from worker before finishing initialization:", event.data);
if (isInitMessage(event.data)) {
worker.removeEventListener("message", messageHandler);
resolve3(event.data);
} else if (isUncaughtErrorMessage(event.data)) {
worker.removeEventListener("message", messageHandler);
reject2(common_1.deserialize(event.data.error));
}
};
worker.addEventListener("message", messageHandler);
});
}
function createEventObservable(worker, workerTermination) {
return new observable_fns_1.Observable((observer) => {
const messageHandler = (messageEvent) => {
const workerEvent = {
type: master_1.WorkerEventType.message,
data: messageEvent.data
};
observer.next(workerEvent);
};
const rejectionHandler = (errorEvent) => {
debugThreadUtils("Unhandled promise rejection event in thread:", errorEvent);
const workerEvent = {
type: master_1.WorkerEventType.internalError,
error: Error(errorEvent.reason)
};
observer.next(workerEvent);
};
worker.addEventListener("message", messageHandler);
worker.addEventListener("unhandledrejection", rejectionHandler);
workerTermination.then(() => {
const terminationEvent = {
type: master_1.WorkerEventType.termination
};
worker.removeEventListener("message", messageHandler);
worker.removeEventListener("unhandledrejection", rejectionHandler);
observer.next(terminationEvent);
observer.complete();
});
});
}
function createTerminator(worker) {
const [termination, resolver] = promise_1.createPromiseWithResolver();
const terminate = () => __awaiter(this, void 0, void 0, function* () {
debugThreadUtils("Terminating worker");
yield worker.terminate();
resolver();
});
return { terminate, termination };
}
function setPrivateThreadProps(raw, worker, workerEvents, terminate) {
const workerErrors = workerEvents.filter((event) => event.type === master_1.WorkerEventType.internalError).map((errorEvent) => errorEvent.error);
return Object.assign(raw, {
[symbols_1.$errors]: workerErrors,
[symbols_1.$events]: workerEvents,
[symbols_1.$terminate]: terminate,
[symbols_1.$worker]: worker
});
}
function spawn2(worker, options) {
return __awaiter(this, void 0, void 0, function* () {
debugSpawn("Initializing new thread");
const timeout2 = options && options.timeout ? options.timeout : initMessageTimeout;
const initMessage = yield withTimeout(receiveInitMessage(worker), timeout2, `Timeout: Did not receive an init message from worker after ${timeout2}ms. Make sure the worker calls expose().`);
const exposed = initMessage.exposed;
const { termination, terminate } = createTerminator(worker);
const events = createEventObservable(worker, termination);
if (exposed.type === "function") {
const proxy = invocation_proxy_1.createProxyFunction(worker);
return setPrivateThreadProps(proxy, worker, events, terminate);
} else if (exposed.type === "module") {
const proxy = invocation_proxy_1.createProxyModule(worker, exposed.methods);
return setPrivateThreadProps(proxy, worker, events, terminate);
} else {
const type2 = exposed.type;
throw Error(`Worker init message states unexpected type of expose(): ${type2}`);
}
});
}
exports2.spawn = spawn2;
}
});
// node_modules/threads/dist/master/index.js
var require_master2 = __commonJS({
"node_modules/threads/dist/master/index.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.Worker = exports2.BlobWorker = exports2.isWorkerRuntime = exports2.Thread = exports2.spawn = exports2.Pool = void 0;
var implementation_1 = require_implementation_browser();
Object.defineProperty(exports2, "isWorkerRuntime", { enumerable: true, get: function() {
return implementation_1.isWorkerRuntime;
} });
var pool_1 = require_pool();
Object.defineProperty(exports2, "Pool", { enumerable: true, get: function() {
return pool_1.Pool;
} });
var spawn_1 = require_spawn();
Object.defineProperty(exports2, "spawn", { enumerable: true, get: function() {
return spawn_1.spawn;
} });
var thread_1 = require_thread();
Object.defineProperty(exports2, "Thread", { enumerable: true, get: function() {
return thread_1.Thread;
} });
exports2.BlobWorker = implementation_1.getWorkerImplementation().blob;
exports2.Worker = implementation_1.getWorkerImplementation().default;
}
});
// node_modules/is-observable/index.js
var require_is_observable = __commonJS({
"node_modules/is-observable/index.js"(exports2, module2) {
init_buffer_shim();
"use strict";
module2.exports = (value) => {
if (!value) {
return false;
}
if (typeof Symbol.observable === "symbol" && typeof value[Symbol.observable] === "function") {
return value === value[Symbol.observable]();
}
if (typeof value["@@observable"] === "function") {
return value === value["@@observable"]();
}
return false;
};
}
});
// node_modules/threads/dist/worker/implementation.browser.js
var require_implementation_browser2 = __commonJS({
"node_modules/threads/dist/worker/implementation.browser.js"(exports2) {
init_buffer_shim();
"use strict";
Object.defineProperty(exports2, "__esModule", { value: true });
var isWorkerRuntime = function isWorkerRuntime2() {
const isWindowContext = typeof self !== "undefined" && typeof Window !== "undefined" && self instanceof Window;
return typeof self !== "undefined" && self.postMessage && !isWindowContext ? true : false;
};
var postMessageToMaster = function postMessageToMaster2(data2, transferList) {
self.postMessage(data2, transferList);
};
var subscribeToMasterMessages = function subscribeToMasterMessages2(onMessage) {
const messageHandler = (messageEvent) => {
onMessage(messageEvent.data);
};
const unsubscribe2 = () => {
self.removeEventListener("message", messageHandler);
};
self.addEventListener("message", messageHandler);
return unsubscribe2;
};
exports2.default = {
isWorkerRuntime,
postMessageToMaster,
subscribeToMasterMessages
};
}
});
// node_modules/threads/dist/worker/index.js
var require_worker = __commonJS({
"node_modules/threads/dist/worker/index.js"(exports2) {
init_buffer_shim();
"use strict";
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e4) {
reject2(e4);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e4) {
reject2(e4);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = exports2 && exports2.__importDefault || function(mod) {
return mod && mod.__esModule ? mod : { "default": mod };
};
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.expose = exports2.isWorkerRuntime = exports2.Transfer = exports2.registerSerializer = void 0;
var is_observable_1 = __importDefault(require_is_observable());
var common_1 = require_common();
var transferable_1 = require_transferable();
var messages_1 = require_messages();
var implementation_1 = __importDefault(require_implementation_browser2());
var common_2 = require_common();
Object.defineProperty(exports2, "registerSerializer", { enumerable: true, get: function() {
return common_2.registerSerializer;
} });
var transferable_2 = require_transferable();
Object.defineProperty(exports2, "Transfer", { enumerable: true, get: function() {
return transferable_2.Transfer;
} });
exports2.isWorkerRuntime = implementation_1.default.isWorkerRuntime;
var exposeCalled = false;
var activeSubscriptions = new Map();
var isMasterJobCancelMessage = (thing) => thing && thing.type === messages_1.MasterMessageType.cancel;
var isMasterJobRunMessage = (thing) => thing && thing.type === messages_1.MasterMessageType.run;
var isObservable2 = (thing) => is_observable_1.default(thing) || isZenObservable(thing);
function isZenObservable(thing) {
return thing && typeof thing === "object" && typeof thing.subscribe === "function";
}
function deconstructTransfer(thing) {
return transferable_1.isTransferDescriptor(thing) ? { payload: thing.send, transferables: thing.transferables } : { payload: thing, transferables: void 0 };
}
function postFunctionInitMessage() {
const initMessage = {
type: messages_1.WorkerMessageType.init,
exposed: {
type: "function"
}
};
implementation_1.default.postMessageToMaster(initMessage);
}
function postModuleInitMessage(methodNames) {
const initMessage = {
type: messages_1.WorkerMessageType.init,
exposed: {
type: "module",
methods: methodNames
}
};
implementation_1.default.postMessageToMaster(initMessage);
}
function postJobErrorMessage(uid, rawError) {
const { payload: error, transferables } = deconstructTransfer(rawError);
const errorMessage = {
type: messages_1.WorkerMessageType.error,
uid,
error: common_1.serialize(error)
};
implementation_1.default.postMessageToMaster(errorMessage, transferables);
}
function postJobResultMessage(uid, completed, resultValue) {
const { payload, transferables } = deconstructTransfer(resultValue);
const resultMessage = {
type: messages_1.WorkerMessageType.result,
uid,
complete: completed ? true : void 0,
payload
};
implementation_1.default.postMessageToMaster(resultMessage, transferables);
}
function postJobStartMessage(uid, resultType) {
const startMessage = {
type: messages_1.WorkerMessageType.running,
uid,
resultType
};
implementation_1.default.postMessageToMaster(startMessage);
}
function postUncaughtErrorMessage(error) {
try {
const errorMessage = {
type: messages_1.WorkerMessageType.uncaughtError,
error: common_1.serialize(error)
};
implementation_1.default.postMessageToMaster(errorMessage);
} catch (subError) {
console.error("Not reporting uncaught error back to master thread as it occured while reporting an uncaught error already.\nLatest error:", subError, "\nOriginal error:", error);
}
}
function runFunction(jobUID, fn, args) {
return __awaiter(this, void 0, void 0, function* () {
let syncResult;
try {
syncResult = fn(...args);
} catch (error) {
return postJobErrorMessage(jobUID, error);
}
const resultType = isObservable2(syncResult) ? "observable" : "promise";
postJobStartMessage(jobUID, resultType);
if (isObservable2(syncResult)) {
const subscription = syncResult.subscribe((value) => postJobResultMessage(jobUID, false, common_1.serialize(value)), (error) => {
postJobErrorMessage(jobUID, common_1.serialize(error));
activeSubscriptions.delete(jobUID);
}, () => {
postJobResultMessage(jobUID, true);
activeSubscriptions.delete(jobUID);
});
activeSubscriptions.set(jobUID, subscription);
} else {
try {
const result = yield syncResult;
postJobResultMessage(jobUID, true, common_1.serialize(result));
} catch (error) {
postJobErrorMessage(jobUID, common_1.serialize(error));
}
}
});
}
function expose(exposed) {
if (!implementation_1.default.isWorkerRuntime()) {
throw Error("expose() called in the master thread.");
}
if (exposeCalled) {
throw Error("expose() called more than once. This is not possible. Pass an object to expose() if you want to expose multiple functions.");
}
exposeCalled = true;
if (typeof exposed === "function") {
implementation_1.default.subscribeToMasterMessages((messageData) => {
if (isMasterJobRunMessage(messageData) && !messageData.method) {
runFunction(messageData.uid, exposed, messageData.args.map(common_1.deserialize));
}
});
postFunctionInitMessage();
} else if (typeof exposed === "object" && exposed) {
implementation_1.default.subscribeToMasterMessages((messageData) => {
if (isMasterJobRunMessage(messageData) && messageData.method) {
runFunction(messageData.uid, exposed[messageData.method], messageData.args.map(common_1.deserialize));
}
});
const methodNames = Object.keys(exposed).filter((key) => typeof exposed[key] === "function");
postModuleInitMessage(methodNames);
} else {
throw Error(`Invalid argument passed to expose(). Expected a function or an object, got: ${exposed}`);
}
implementation_1.default.subscribeToMasterMessages((messageData) => {
if (isMasterJobCancelMessage(messageData)) {
const jobUID = messageData.uid;
const subscription = activeSubscriptions.get(jobUID);
if (subscription) {
subscription.unsubscribe();
activeSubscriptions.delete(jobUID);
}
}
});
}
exports2.expose = expose;
if (typeof self !== "undefined" && typeof self.addEventListener === "function" && implementation_1.default.isWorkerRuntime()) {
self.addEventListener("error", (event) => {
setTimeout(() => postUncaughtErrorMessage(event.error || event), 250);
});
self.addEventListener("unhandledrejection", (event) => {
const error = event.reason;
if (error && typeof error.message === "string") {
setTimeout(() => postUncaughtErrorMessage(error), 250);
}
});
}
if (typeof process !== "undefined" && typeof process.on === "function" && implementation_1.default.isWorkerRuntime()) {
process.on("uncaughtException", (error) => {
setTimeout(() => postUncaughtErrorMessage(error), 250);
});
process.on("unhandledRejection", (error) => {
if (error && typeof error.message === "string") {
setTimeout(() => postUncaughtErrorMessage(error), 250);
}
});
}
}
});
// node_modules/threads/dist/index.js
var require_dist2 = __commonJS({
"node_modules/threads/dist/index.js"(exports2) {
init_buffer_shim();
"use strict";
var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o4, m5, k3, k22) {
if (k22 === void 0)
k22 = k3;
Object.defineProperty(o4, k22, { enumerable: true, get: function() {
return m5[k3];
} });
} : function(o4, m5, k3, k22) {
if (k22 === void 0)
k22 = k3;
o4[k22] = m5[k3];
});
var __exportStar = exports2 && exports2.__exportStar || function(m5, exports3) {
for (var p4 in m5)
if (p4 !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p4))
__createBinding(exports3, m5, p4);
};
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.Transfer = exports2.DefaultSerializer = exports2.expose = exports2.registerSerializer = void 0;
var common_1 = require_common();
Object.defineProperty(exports2, "registerSerializer", { enumerable: true, get: function() {
return common_1.registerSerializer;
} });
__exportStar(require_master2(), exports2);
var index_1 = require_worker();
Object.defineProperty(exports2, "expose", { enumerable: true, get: function() {
return index_1.expose;
} });
var serializers_1 = require_serializers();
Object.defineProperty(exports2, "DefaultSerializer", { enumerable: true, get: function() {
return serializers_1.DefaultSerializer;
} });
var transferable_1 = require_transferable();
Object.defineProperty(exports2, "Transfer", { enumerable: true, get: function() {
return transferable_1.Transfer;
} });
}
});
// node_modules/@babel/runtime/helpers/interopRequireDefault.js
var require_interopRequireDefault = __commonJS({
"node_modules/@babel/runtime/helpers/interopRequireDefault.js"(exports2, module2) {
init_buffer_shim();
function _interopRequireDefault2(obj) {
return obj && obj.__esModule ? obj : {
"default": obj
};
}
module2.exports = _interopRequireDefault2;
module2.exports["default"] = module2.exports, module2.exports.__esModule = true;
}
});
// (disabled):node_modules/generic-filehandle/dist/localFile
var require_localFile = __commonJS({
"(disabled):node_modules/generic-filehandle/dist/localFile"() {
init_buffer_shim();
}
});
// node_modules/regenerator-runtime/runtime.js
var require_runtime = __commonJS({
"node_modules/regenerator-runtime/runtime.js"(exports2, module2) {
init_buffer_shim();
var runtime2 = function(exports3) {
"use strict";
var Op = Object.prototype;
var hasOwn = Op.hasOwnProperty;
var undefined2;
var $Symbol = typeof Symbol === "function" ? Symbol : {};
var iteratorSymbol = $Symbol.iterator || "@@iterator";
var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
function define2(obj, key, value) {
Object.defineProperty(obj, key, {
value,
enumerable: true,
configurable: true,
writable: true
});
return obj[key];
}
try {
define2({}, "");
} catch (err2) {
define2 = function(obj, key, value) {
return obj[key] = value;
};
}
function wrap(innerFn, outerFn, self2, tryLocsList) {
var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
var generator = Object.create(protoGenerator.prototype);
var context2 = new Context3(tryLocsList || []);
generator._invoke = makeInvokeMethod(innerFn, self2, context2);
return generator;
}
exports3.wrap = wrap;
function tryCatch(fn, obj, arg) {
try {
return { type: "normal", arg: fn.call(obj, arg) };
} catch (err2) {
return { type: "throw", arg: err2 };
}
}
var GenStateSuspendedStart = "suspendedStart";
var GenStateSuspendedYield = "suspendedYield";
var GenStateExecuting = "executing";
var GenStateCompleted = "completed";
var ContinueSentinel = {};
function Generator() {
}
function GeneratorFunction() {
}
function GeneratorFunctionPrototype() {
}
var IteratorPrototype = {};
define2(IteratorPrototype, iteratorSymbol, function() {
return this;
});
var getProto = Object.getPrototypeOf;
var NativeIteratorPrototype = getProto && getProto(getProto(values2([])));
if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
IteratorPrototype = NativeIteratorPrototype;
}
var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
GeneratorFunction.prototype = GeneratorFunctionPrototype;
define2(Gp, "constructor", GeneratorFunctionPrototype);
define2(GeneratorFunctionPrototype, "constructor", GeneratorFunction);
GeneratorFunction.displayName = define2(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction");
function defineIteratorMethods(prototype) {
["next", "throw", "return"].forEach(function(method) {
define2(prototype, method, function(arg) {
return this._invoke(method, arg);
});
});
}
exports3.isGeneratorFunction = function(genFun) {
var ctor = typeof genFun === "function" && genFun.constructor;
return ctor ? ctor === GeneratorFunction || (ctor.displayName || ctor.name) === "GeneratorFunction" : false;
};
exports3.mark = function(genFun) {
if (Object.setPrototypeOf) {
Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
} else {
genFun.__proto__ = GeneratorFunctionPrototype;
define2(genFun, toStringTagSymbol, "GeneratorFunction");
}
genFun.prototype = Object.create(Gp);
return genFun;
};
exports3.awrap = function(arg) {
return { __await: arg };
};
function AsyncIterator(generator, PromiseImpl) {
function invoke(method, arg, resolve3, reject2) {
var record = tryCatch(generator[method], generator, arg);
if (record.type === "throw") {
reject2(record.arg);
} else {
var result = record.arg;
var value = result.value;
if (value && typeof value === "object" && hasOwn.call(value, "__await")) {
return PromiseImpl.resolve(value.__await).then(function(value2) {
invoke("next", value2, resolve3, reject2);
}, function(err2) {
invoke("throw", err2, resolve3, reject2);
});
}
return PromiseImpl.resolve(value).then(function(unwrapped) {
result.value = unwrapped;
resolve3(result);
}, function(error) {
return invoke("throw", error, resolve3, reject2);
});
}
}
var previousPromise;
function enqueue(method, arg) {
function callInvokeWithMethodAndArg() {
return new PromiseImpl(function(resolve3, reject2) {
invoke(method, arg, resolve3, reject2);
});
}
return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
}
this._invoke = enqueue;
}
defineIteratorMethods(AsyncIterator.prototype);
define2(AsyncIterator.prototype, asyncIteratorSymbol, function() {
return this;
});
exports3.AsyncIterator = AsyncIterator;
exports3.async = function(innerFn, outerFn, self2, tryLocsList, PromiseImpl) {
if (PromiseImpl === void 0)
PromiseImpl = Promise;
var iter = new AsyncIterator(wrap(innerFn, outerFn, self2, tryLocsList), PromiseImpl);
return exports3.isGeneratorFunction(outerFn) ? iter : iter.next().then(function(result) {
return result.done ? result.value : iter.next();
});
};
function makeInvokeMethod(innerFn, self2, context2) {
var state = GenStateSuspendedStart;
return function invoke(method, arg) {
if (state === GenStateExecuting) {
throw new Error("Generator is already running");
}
if (state === GenStateCompleted) {
if (method === "throw") {
throw arg;
}
return doneResult();
}
context2.method = method;
context2.arg = arg;
while (true) {
var delegate = context2.delegate;
if (delegate) {
var delegateResult = maybeInvokeDelegate(delegate, context2);
if (delegateResult) {
if (delegateResult === ContinueSentinel)
continue;
return delegateResult;
}
}
if (context2.method === "next") {
context2.sent = context2._sent = context2.arg;
} else if (context2.method === "throw") {
if (state === GenStateSuspendedStart) {
state = GenStateCompleted;
throw context2.arg;
}
context2.dispatchException(context2.arg);
} else if (context2.method === "return") {
context2.abrupt("return", context2.arg);
}
state = GenStateExecuting;
var record = tryCatch(innerFn, self2, context2);
if (record.type === "normal") {
state = context2.done ? GenStateCompleted : GenStateSuspendedYield;
if (record.arg === ContinueSentinel) {
continue;
}
return {
value: record.arg,
done: context2.done
};
} else if (record.type === "throw") {
state = GenStateCompleted;
context2.method = "throw";
context2.arg = record.arg;
}
}
};
}
function maybeInvokeDelegate(delegate, context2) {
var method = delegate.iterator[context2.method];
if (method === undefined2) {
context2.delegate = null;
if (context2.method === "throw") {
if (delegate.iterator["return"]) {
context2.method = "return";
context2.arg = undefined2;
maybeInvokeDelegate(delegate, context2);
if (context2.method === "throw") {
return ContinueSentinel;
}
}
context2.method = "throw";
context2.arg = new TypeError("The iterator does not provide a 'throw' method");
}
return ContinueSentinel;
}
var record = tryCatch(method, delegate.iterator, context2.arg);
if (record.type === "throw") {
context2.method = "throw";
context2.arg = record.arg;
context2.delegate = null;
return ContinueSentinel;
}
var info = record.arg;
if (!info) {
context2.method = "throw";
context2.arg = new TypeError("iterator result is not an object");
context2.delegate = null;
return ContinueSentinel;
}
if (info.done) {
context2[delegate.resultName] = info.value;
context2.next = delegate.nextLoc;
if (context2.method !== "return") {
context2.method = "next";
context2.arg = undefined2;
}
} else {
return info;
}
context2.delegate = null;
return ContinueSentinel;
}
defineIteratorMethods(Gp);
define2(Gp, toStringTagSymbol, "Generator");
define2(Gp, iteratorSymbol, function() {
return this;
});
define2(Gp, "toString", function() {
return "[object Generator]";
});
function pushTryEntry(locs) {
var entry = { tryLoc: locs[0] };
if (1 in locs) {
entry.catchLoc = locs[1];
}
if (2 in locs) {
entry.finallyLoc = locs[2];
entry.afterLoc = locs[3];
}
this.tryEntries.push(entry);
}
function resetTryEntry(entry) {
var record = entry.completion || {};
record.type = "normal";
delete record.arg;
entry.completion = record;
}
function Context3(tryLocsList) {
this.tryEntries = [{ tryLoc: "root" }];
tryLocsList.forEach(pushTryEntry, this);
this.reset(true);
}
exports3.keys = function(object) {
var keys2 = [];
for (var key in object) {
keys2.push(key);
}
keys2.reverse();
return function next() {
while (keys2.length) {
var key2 = keys2.pop();
if (key2 in object) {
next.value = key2;
next.done = false;
return next;
}
}
next.done = true;
return next;
};
};
function values2(iterable) {
if (iterable) {
var iteratorMethod = iterable[iteratorSymbol];
if (iteratorMethod) {
return iteratorMethod.call(iterable);
}
if (typeof iterable.next === "function") {
return iterable;
}
if (!isNaN(iterable.length)) {
var i4 = -1, next = function next2() {
while (++i4 < iterable.length) {
if (hasOwn.call(iterable, i4)) {
next2.value = iterable[i4];
next2.done = false;
return next2;
}
}
next2.value = undefined2;
next2.done = true;
return next2;
};
return next.next = next;
}
}
return { next: doneResult };
}
exports3.values = values2;
function doneResult() {
return { value: undefined2, done: true };
}
Context3.prototype = {
constructor: Context3,
reset: function(skipTempReset) {
this.prev = 0;
this.next = 0;
this.sent = this._sent = undefined2;
this.done = false;
this.delegate = null;
this.method = "next";
this.arg = undefined2;
this.tryEntries.forEach(resetTryEntry);
if (!skipTempReset) {
for (var name2 in this) {
if (name2.charAt(0) === "t" && hasOwn.call(this, name2) && !isNaN(+name2.slice(1))) {
this[name2] = undefined2;
}
}
}
},
stop: function() {
this.done = true;
var rootEntry = this.tryEntries[0];
var rootRecord = rootEntry.completion;
if (rootRecord.type === "throw") {
throw rootRecord.arg;
}
return this.rval;
},
dispatchException: function(exception) {
if (this.done) {
throw exception;
}
var context2 = this;
function handle(loc, caught) {
record.type = "throw";
record.arg = exception;
context2.next = loc;
if (caught) {
context2.method = "next";
context2.arg = undefined2;
}
return !!caught;
}
for (var i4 = this.tryEntries.length - 1; i4 >= 0; --i4) {
var entry = this.tryEntries[i4];
var record = entry.completion;
if (entry.tryLoc === "root") {
return handle("end");
}
if (entry.tryLoc <= this.prev) {
var hasCatch = hasOwn.call(entry, "catchLoc");
var hasFinally = hasOwn.call(entry, "finallyLoc");
if (hasCatch && hasFinally) {
if (this.prev < entry.catchLoc) {
return handle(entry.catchLoc, true);
} else if (this.prev < entry.finallyLoc) {
return handle(entry.finallyLoc);
}
} else if (hasCatch) {
if (this.prev < entry.catchLoc) {
return handle(entry.catchLoc, true);
}
} else if (hasFinally) {
if (this.prev < entry.finallyLoc) {
return handle(entry.finallyLoc);
}
} else {
throw new Error("try statement without catch or finally");
}
}
}
},
abrupt: function(type2, arg) {
for (var i4 = this.tryEntries.length - 1; i4 >= 0; --i4) {
var entry = this.tryEntries[i4];
if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
var finallyEntry = entry;
break;
}
}
if (finallyEntry && (type2 === "break" || type2 === "continue") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {
finallyEntry = null;
}
var record = finallyEntry ? finallyEntry.completion : {};
record.type = type2;
record.arg = arg;
if (finallyEntry) {
this.method = "next";
this.next = finallyEntry.finallyLoc;
return ContinueSentinel;
}
return this.complete(record);
},
complete: function(record, afterLoc) {
if (record.type === "throw") {
throw record.arg;
}
if (record.type === "break" || record.type === "continue") {
this.next = record.arg;
} else if (record.type === "return") {
this.rval = this.arg = record.arg;
this.method = "return";
this.next = "end";
} else if (record.type === "normal" && afterLoc) {
this.next = afterLoc;
}
return ContinueSentinel;
},
finish: function(finallyLoc) {
for (var i4 = this.tryEntries.length - 1; i4 >= 0; --i4) {
var entry = this.tryEntries[i4];
if (entry.finallyLoc === finallyLoc) {
this.complete(entry.completion, entry.afterLoc);
resetTryEntry(entry);
return ContinueSentinel;
}
}
},
"catch": function(tryLoc) {
for (var i4 = this.tryEntries.length - 1; i4 >= 0; --i4) {
var entry = this.tryEntries[i4];
if (entry.tryLoc === tryLoc) {
var record = entry.completion;
if (record.type === "throw") {
var thrown = record.arg;
resetTryEntry(entry);
}
return thrown;
}
}
throw new Error("illegal catch attempt");
},
delegateYield: function(iterable, resultName, nextLoc) {
this.delegate = {
iterator: values2(iterable),
resultName,
nextLoc
};
if (this.method === "next") {
this.arg = undefined2;
}
return ContinueSentinel;
}
};
return exports3;
}(typeof module2 === "object" ? module2.exports : {});
try {
regeneratorRuntime = runtime2;
} catch (accidentalStrictMode) {
if (typeof globalThis === "object") {
globalThis.regeneratorRuntime = runtime2;
} else {
Function("r", "regeneratorRuntime = r")(runtime2);
}
}
}
});
// node_modules/@babel/runtime/regenerator/index.js
var require_regenerator = __commonJS({
"node_modules/@babel/runtime/regenerator/index.js"(exports2, module2) {
init_buffer_shim();
module2.exports = require_runtime();
}
});
// node_modules/@babel/runtime/helpers/asyncToGenerator.js
var require_asyncToGenerator = __commonJS({
"node_modules/@babel/runtime/helpers/asyncToGenerator.js"(exports2, module2) {
init_buffer_shim();
function asyncGeneratorStep2(gen, resolve3, reject2, _next, _throw, key, arg) {
try {
var info = gen[key](arg);
var value = info.value;
} catch (error) {
reject2(error);
return;
}
if (info.done) {
resolve3(value);
} else {
Promise.resolve(value).then(_next, _throw);
}
}
function _asyncToGenerator3(fn) {
return function() {
var self2 = this, args = arguments;
return new Promise(function(resolve3, reject2) {
var gen = fn.apply(self2, args);
function _next(value) {
asyncGeneratorStep2(gen, resolve3, reject2, _next, _throw, "next", value);
}
function _throw(err2) {
asyncGeneratorStep2(gen, resolve3, reject2, _next, _throw, "throw", err2);
}
_next(void 0);
});
};
}
module2.exports = _asyncToGenerator3;
module2.exports["default"] = module2.exports, module2.exports.__esModule = true;
}
});
// node_modules/@babel/runtime/helpers/classCallCheck.js
var require_classCallCheck = __commonJS({
"node_modules/@babel/runtime/helpers/classCallCheck.js"(exports2, module2) {
init_buffer_shim();
function _classCallCheck5(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
module2.exports = _classCallCheck5;
module2.exports["default"] = module2.exports, module2.exports.__esModule = true;
}
});
// node_modules/@babel/runtime/helpers/createClass.js
var require_createClass = __commonJS({
"node_modules/@babel/runtime/helpers/createClass.js"(exports2, module2) {
init_buffer_shim();
function _defineProperties2(target, props) {
for (var i4 = 0; i4 < props.length; i4++) {
var descriptor = props[i4];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor)
descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function _createClass4(Constructor, protoProps, staticProps) {
if (protoProps)
_defineProperties2(Constructor.prototype, protoProps);
if (staticProps)
_defineProperties2(Constructor, staticProps);
return Constructor;
}
module2.exports = _createClass4;
module2.exports["default"] = module2.exports, module2.exports.__esModule = true;
}
});
// node_modules/@babel/runtime/helpers/defineProperty.js
var require_defineProperty = __commonJS({
"node_modules/@babel/runtime/helpers/defineProperty.js"(exports2, module2) {
init_buffer_shim();
function _defineProperty3(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
module2.exports = _defineProperty3;
module2.exports["default"] = module2.exports, module2.exports.__esModule = true;
}
});
// (disabled):node_modules/file-uri-to-path/dist/src/index.js
var require_src = __commonJS({
"(disabled):node_modules/file-uri-to-path/dist/src/index.js"() {
init_buffer_shim();
}
});
// node_modules/generic-filehandle/dist/remoteFile.js
var require_remoteFile = __commonJS({
"node_modules/generic-filehandle/dist/remoteFile.js"(exports2) {
init_buffer_shim();
"use strict";
var _interopRequireDefault2 = require_interopRequireDefault();
Object.defineProperty(exports2, "__esModule", {
value: true
});
exports2.default = void 0;
var _regenerator2 = _interopRequireDefault2(require_regenerator());
var _asyncToGenerator22 = _interopRequireDefault2(require_asyncToGenerator());
var _classCallCheck23 = _interopRequireDefault2(require_classCallCheck());
var _createClass23 = _interopRequireDefault2(require_createClass());
var _defineProperty22 = _interopRequireDefault2(require_defineProperty());
var _fileUriToPath = _interopRequireDefault2(require_src());
var _3 = require_dist3();
function ownKeys3(object, enumerableOnly) {
var keys2 = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly)
symbols = symbols.filter(function(sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
keys2.push.apply(keys2, symbols);
}
return keys2;
}
function _objectSpread3(target) {
for (var i4 = 1; i4 < arguments.length; i4++) {
var source = arguments[i4] != null ? arguments[i4] : {};
if (i4 % 2) {
ownKeys3(Object(source), true).forEach(function(key) {
(0, _defineProperty22.default)(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys3(Object(source)).forEach(function(key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
var myGlobal = typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {
fetch: void 0
};
var RemoteFile2 = /* @__PURE__ */ function() {
(0, _createClass23.default)(RemoteFile3, [{
key: "getBufferFromResponse",
value: function() {
var _getBufferFromResponse = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee(response) {
var resp;
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (!(typeof response.buffer === "function")) {
_context.next = 4;
break;
}
return _context.abrupt("return", response.buffer());
case 4:
if (!(typeof response.arrayBuffer === "function")) {
_context.next = 11;
break;
}
_context.next = 7;
return response.arrayBuffer();
case 7:
resp = _context.sent;
return _context.abrupt("return", import_buffer.Buffer.from(resp));
case 11:
throw new TypeError("invalid HTTP response object, has no buffer method, and no arrayBuffer method");
case 12:
case "end":
return _context.stop();
}
}
}, _callee);
}));
function getBufferFromResponse(_x) {
return _getBufferFromResponse.apply(this, arguments);
}
return getBufferFromResponse;
}()
}]);
function RemoteFile3(source) {
var opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
(0, _classCallCheck23.default)(this, RemoteFile3);
(0, _defineProperty22.default)(this, "url", void 0);
(0, _defineProperty22.default)(this, "_stat", void 0);
(0, _defineProperty22.default)(this, "fetchImplementation", void 0);
(0, _defineProperty22.default)(this, "baseOverrides", {});
this.url = source;
if (source.startsWith("file://")) {
var path2 = (0, _fileUriToPath.default)(source);
if (!path2) {
throw new TypeError("invalid file url");
}
var localFile = new _3.LocalFile(path2);
this.read = localFile.read.bind(localFile);
this.readFile = localFile.readFile.bind(localFile);
this.stat = localFile.stat.bind(localFile);
this.fetchImplementation = function() {
};
return;
}
var fetch2 = opts.fetch || myGlobal.fetch && myGlobal.fetch.bind(myGlobal);
if (!fetch2) {
throw new TypeError("no fetch function supplied, and none found in global environment");
}
if (opts.overrides) {
this.baseOverrides = opts.overrides;
}
this.fetchImplementation = fetch2;
}
(0, _createClass23.default)(RemoteFile3, [{
key: "fetch",
value: function() {
var _fetch = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee2(input, init2) {
var response;
return _regenerator2.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
_context2.prev = 0;
_context2.next = 3;
return this.fetchImplementation(input, init2);
case 3:
response = _context2.sent;
_context2.next = 16;
break;
case 6:
_context2.prev = 6;
_context2.t0 = _context2["catch"](0);
if (!(_context2.t0.message === "Failed to fetch")) {
_context2.next = 15;
break;
}
console.warn("generic-filehandle: refetching ".concat(input, " to attempt to work around chrome CORS header caching bug"));
_context2.next = 12;
return this.fetchImplementation(input, _objectSpread3(_objectSpread3({}, init2), {}, {
cache: "reload"
}));
case 12:
response = _context2.sent;
_context2.next = 16;
break;
case 15:
throw _context2.t0;
case 16:
return _context2.abrupt("return", response);
case 17:
case "end":
return _context2.stop();
}
}
}, _callee2, this, [[0, 6]]);
}));
function fetch2(_x2, _x3) {
return _fetch.apply(this, arguments);
}
return fetch2;
}()
}, {
key: "read",
value: function() {
var _read = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee3(buffer2) {
var offset, length, position, opts, _opts$headers, headers, signal, _opts$overrides, overrides, args, response, responseData, bytesCopied, res, sizeMatch, _args3 = arguments;
return _regenerator2.default.wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
offset = _args3.length > 1 && _args3[1] !== void 0 ? _args3[1] : 0;
length = _args3.length > 2 ? _args3[2] : void 0;
position = _args3.length > 3 && _args3[3] !== void 0 ? _args3[3] : 0;
opts = _args3.length > 4 && _args3[4] !== void 0 ? _args3[4] : {};
_opts$headers = opts.headers, headers = _opts$headers === void 0 ? {} : _opts$headers, signal = opts.signal, _opts$overrides = opts.overrides, overrides = _opts$overrides === void 0 ? {} : _opts$overrides;
if (length < Infinity) {
headers.range = "bytes=".concat(position, "-").concat(position + length);
} else if (length === Infinity && position !== 0) {
headers.range = "bytes=".concat(position, "-");
}
args = _objectSpread3(_objectSpread3(_objectSpread3({}, this.baseOverrides), overrides), {}, {
headers: _objectSpread3(_objectSpread3(_objectSpread3({}, headers), overrides.headers), this.baseOverrides.headers),
method: "GET",
redirect: "follow",
mode: "cors",
signal
});
_context3.next = 9;
return this.fetch(this.url, args);
case 9:
response = _context3.sent;
if (response.ok) {
_context3.next = 12;
break;
}
throw new Error("HTTP ".concat(response.status, " ").concat(response.statusText));
case 12:
if (!(response.status === 200 && position === 0 || response.status === 206)) {
_context3.next = 21;
break;
}
_context3.next = 15;
return this.getBufferFromResponse(response);
case 15:
responseData = _context3.sent;
bytesCopied = responseData.copy(buffer2, offset, 0, Math.min(length, responseData.length));
res = response.headers.get("content-range");
sizeMatch = /\/(\d+)$/.exec(res || "");
if (sizeMatch && sizeMatch[1]) {
this._stat = {
size: parseInt(sizeMatch[1], 10)
};
}
return _context3.abrupt("return", {
bytesRead: bytesCopied,
buffer: buffer2
});
case 21:
if (!(response.status === 200)) {
_context3.next = 23;
break;
}
throw new Error("${this.url} fetch returned status 200, expected 206");
case 23:
throw new Error("HTTP ".concat(response.status, " fetching ").concat(this.url));
case 24:
case "end":
return _context3.stop();
}
}
}, _callee3, this);
}));
function read(_x4) {
return _read.apply(this, arguments);
}
return read;
}()
}, {
key: "readFile",
value: function() {
var _readFile = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee4() {
var options, encoding, opts, _opts, _opts$headers2, headers, signal, _opts$overrides2, overrides, args, response, _args4 = arguments;
return _regenerator2.default.wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
options = _args4.length > 0 && _args4[0] !== void 0 ? _args4[0] : {};
if (typeof options === "string") {
encoding = options;
opts = {};
} else {
encoding = options.encoding;
opts = options;
delete opts.encoding;
}
_opts = opts, _opts$headers2 = _opts.headers, headers = _opts$headers2 === void 0 ? {} : _opts$headers2, signal = _opts.signal, _opts$overrides2 = _opts.overrides, overrides = _opts$overrides2 === void 0 ? {} : _opts$overrides2;
args = _objectSpread3(_objectSpread3({
headers,
method: "GET",
redirect: "follow",
mode: "cors",
signal
}, this.baseOverrides), overrides);
_context4.next = 6;
return this.fetch(this.url, args);
case 6:
response = _context4.sent;
if (response) {
_context4.next = 9;
break;
}
throw new Error("generic-filehandle failed to fetch");
case 9:
if (!(response.status !== 200)) {
_context4.next = 11;
break;
}
throw Object.assign(new Error("HTTP ".concat(response.status, " fetching ").concat(this.url)), {
status: response.status
});
case 11:
if (!(encoding === "utf8")) {
_context4.next = 13;
break;
}
return _context4.abrupt("return", response.text());
case 13:
if (!encoding) {
_context4.next = 15;
break;
}
throw new Error("unsupported encoding: ".concat(encoding));
case 15:
return _context4.abrupt("return", this.getBufferFromResponse(response));
case 16:
case "end":
return _context4.stop();
}
}
}, _callee4, this);
}));
function readFile() {
return _readFile.apply(this, arguments);
}
return readFile;
}()
}, {
key: "stat",
value: function() {
var _stat = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee5() {
var buf;
return _regenerator2.default.wrap(function _callee5$(_context5) {
while (1) {
switch (_context5.prev = _context5.next) {
case 0:
if (this._stat) {
_context5.next = 6;
break;
}
buf = import_buffer.Buffer.allocUnsafe(10);
_context5.next = 4;
return this.read(buf, 0, 10, 0);
case 4:
if (this._stat) {
_context5.next = 6;
break;
}
throw new Error("unable to determine size of file at ".concat(this.url));
case 6:
return _context5.abrupt("return", this._stat);
case 7:
case "end":
return _context5.stop();
}
}
}, _callee5, this);
}));
function stat() {
return _stat.apply(this, arguments);
}
return stat;
}()
}, {
key: "close",
value: function() {
var _close = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee6() {
return _regenerator2.default.wrap(function _callee6$(_context6) {
while (1) {
switch (_context6.prev = _context6.next) {
case 0:
return _context6.abrupt("return");
case 1:
case "end":
return _context6.stop();
}
}
}, _callee6);
}));
function close() {
return _close.apply(this, arguments);
}
return close;
}()
}]);
return RemoteFile3;
}();
exports2.default = RemoteFile2;
}
});
// node_modules/generic-filehandle/dist/blobFile.js
var require_blobFile = __commonJS({
"node_modules/generic-filehandle/dist/blobFile.js"(exports2) {
init_buffer_shim();
"use strict";
var _interopRequireDefault2 = require_interopRequireDefault();
Object.defineProperty(exports2, "__esModule", {
value: true
});
exports2.default = void 0;
var _regenerator2 = _interopRequireDefault2(require_regenerator());
var _asyncToGenerator22 = _interopRequireDefault2(require_asyncToGenerator());
var _classCallCheck23 = _interopRequireDefault2(require_classCallCheck());
var _createClass23 = _interopRequireDefault2(require_createClass());
var _defineProperty22 = _interopRequireDefault2(require_defineProperty());
function readBlobAsArrayBuffer(blob2) {
var fileReader = new FileReader();
return new Promise(function(resolve3, reject2) {
fileReader.onerror = function() {
fileReader.abort();
reject2(new Error("problem reading blob"));
};
fileReader.onabort = function() {
reject2(new Error("blob reading was aborted"));
};
fileReader.onload = function() {
if (fileReader.result && typeof fileReader.result !== "string") {
resolve3(fileReader.result);
} else {
reject2(new Error("unknown error reading blob"));
}
};
fileReader.readAsArrayBuffer(blob2);
});
}
function readBlobAsText(blob2) {
var fileReader = new FileReader();
return new Promise(function(resolve3, reject2) {
fileReader.onerror = function() {
fileReader.abort();
reject2(new Error("problem reading blob"));
};
fileReader.onabort = function() {
reject2(new Error("blob reading was aborted"));
};
fileReader.onload = function() {
if (fileReader.result && typeof fileReader.result === "string") {
resolve3(fileReader.result);
} else {
reject2(new Error("unknown error reading blob"));
}
};
fileReader.readAsText(blob2);
});
}
var BlobFile = /* @__PURE__ */ function() {
function BlobFile2(blob2) {
(0, _classCallCheck23.default)(this, BlobFile2);
(0, _defineProperty22.default)(this, "blob", void 0);
(0, _defineProperty22.default)(this, "size", void 0);
this.blob = blob2;
this.size = blob2.size;
}
(0, _createClass23.default)(BlobFile2, [{
key: "read",
value: function() {
var _read = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee(buffer2) {
var offset, length, position, start, end, result, resultBuffer, bytesCopied, _args = arguments;
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
offset = _args.length > 1 && _args[1] !== void 0 ? _args[1] : 0;
length = _args.length > 2 ? _args[2] : void 0;
position = _args.length > 3 && _args[3] !== void 0 ? _args[3] : 0;
if (length) {
_context.next = 5;
break;
}
return _context.abrupt("return", {
bytesRead: 0,
buffer: buffer2
});
case 5:
start = position;
end = start + length;
_context.next = 9;
return readBlobAsArrayBuffer(this.blob.slice(start, end));
case 9:
result = _context.sent;
resultBuffer = import_buffer.Buffer.from(result);
bytesCopied = resultBuffer.copy(buffer2, offset);
return _context.abrupt("return", {
bytesRead: bytesCopied,
buffer: resultBuffer
});
case 13:
case "end":
return _context.stop();
}
}
}, _callee, this);
}));
function read(_x) {
return _read.apply(this, arguments);
}
return read;
}()
}, {
key: "readFile",
value: function() {
var _readFile = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee2(options) {
var encoding, result;
return _regenerator2.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
if (typeof options === "string") {
encoding = options;
} else {
encoding = options && options.encoding;
}
if (!(encoding === "utf8")) {
_context2.next = 3;
break;
}
return _context2.abrupt("return", readBlobAsText(this.blob));
case 3:
if (!encoding) {
_context2.next = 5;
break;
}
throw new Error("unsupported encoding: ".concat(encoding));
case 5:
_context2.next = 7;
return readBlobAsArrayBuffer(this.blob);
case 7:
result = _context2.sent;
return _context2.abrupt("return", import_buffer.Buffer.from(result));
case 9:
case "end":
return _context2.stop();
}
}
}, _callee2, this);
}));
function readFile(_x2) {
return _readFile.apply(this, arguments);
}
return readFile;
}()
}, {
key: "stat",
value: function() {
var _stat = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee3() {
return _regenerator2.default.wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
return _context3.abrupt("return", {
size: this.size
});
case 1:
case "end":
return _context3.stop();
}
}
}, _callee3, this);
}));
function stat() {
return _stat.apply(this, arguments);
}
return stat;
}()
}, {
key: "close",
value: function() {
var _close = (0, _asyncToGenerator22.default)(/* @__PURE__ */ _regenerator2.default.mark(function _callee4() {
return _regenerator2.default.wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
return _context4.abrupt("return");
case 1:
case "end":
return _context4.stop();
}
}
}, _callee4);
}));
function close() {
return _close.apply(this, arguments);
}
return close;
}()
}]);
return BlobFile2;
}();
exports2.default = BlobFile;
}
});
// node_modules/generic-filehandle/dist/filehandle.js
var require_filehandle = __commonJS({
"node_modules/generic-filehandle/dist/filehandle.js"() {
init_buffer_shim();
"use strict";
}
});
// node_modules/generic-filehandle/dist/index.js
var require_dist3 = __commonJS({
"node_modules/generic-filehandle/dist/index.js"(exports2) {
init_buffer_shim();
"use strict";
var _interopRequireDefault2 = require_interopRequireDefault();
Object.defineProperty(exports2, "__esModule", {
value: true
});
var _exportNames = {
open: true,
fromUrl: true,
LocalFile: true,
RemoteFile: true,
BlobFile: true
};
exports2.open = open2;
exports2.fromUrl = fromUrl;
Object.defineProperty(exports2, "LocalFile", {
enumerable: true,
get: function get3() {
return _localFile.default;
}
});
Object.defineProperty(exports2, "RemoteFile", {
enumerable: true,
get: function get3() {
return _remoteFile.default;
}
});
Object.defineProperty(exports2, "BlobFile", {
enumerable: true,
get: function get3() {
return _blobFile.default;
}
});
var _localFile = _interopRequireDefault2(require_localFile());
var _remoteFile = _interopRequireDefault2(require_remoteFile());
var _blobFile = _interopRequireDefault2(require_blobFile());
var _filehandle = require_filehandle();
Object.keys(_filehandle).forEach(function(key) {
if (key === "default" || key === "__esModule")
return;
if (Object.prototype.hasOwnProperty.call(_exportNames, key))
return;
Object.defineProperty(exports2, key, {
enumerable: true,
get: function get3() {
return _filehandle[key];
}
});
});
function fromUrl(source) {
var opts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
return new _remoteFile.default(source, opts);
}
function open2(maybeUrl, maybePath, maybeFilehandle) {
var opts = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
if (maybeFilehandle !== void 0) {
return maybeFilehandle;
}
if (maybeUrl !== void 0) {
return fromUrl(maybeUrl, opts);
}
if (maybePath !== void 0) {
return new _localFile.default(maybePath, opts);
}
throw new Error("no url, path, or filehandle provided, cannot open");
}
}
});
// node_modules/pubsub-js/src/pubsub.js
var require_pubsub = __commonJS({
"node_modules/pubsub-js/src/pubsub.js"(exports2, module2) {
init_buffer_shim();
(function(root2, factory2) {
"use strict";
var PubSub2 = {};
root2.PubSub = PubSub2;
factory2(PubSub2);
if (typeof exports2 === "object") {
if (module2 !== void 0 && module2.exports) {
exports2 = module2.exports = PubSub2;
}
exports2.PubSub = PubSub2;
module2.exports = exports2 = PubSub2;
} else if (typeof define === "function" && define.amd) {
define(function() {
return PubSub2;
});
}
})(typeof window === "object" && window || exports2, function(PubSub2) {
"use strict";
var messages = {}, lastUid = -1, ALL_SUBSCRIBING_MSG = "*";
function hasKeys(obj) {
var key;
for (key in obj) {
if (Object.prototype.hasOwnProperty.call(obj, key)) {
return true;
}
}
return false;
}
function throwException(ex) {
return function reThrowException() {
throw ex;
};
}
function callSubscriberWithDelayedExceptions(subscriber, message, data2) {
try {
subscriber(message, data2);
} catch (ex) {
setTimeout(throwException(ex), 0);
}
}
function callSubscriberWithImmediateExceptions(subscriber, message, data2) {
subscriber(message, data2);
}
function deliverMessage(originalMessage, matchedMessage, data2, immediateExceptions) {
var subscribers = messages[matchedMessage], callSubscriber = immediateExceptions ? callSubscriberWithImmediateExceptions : callSubscriberWithDelayedExceptions, s4;
if (!Object.prototype.hasOwnProperty.call(messages, matchedMessage)) {
return;
}
for (s4 in subscribers) {
if (Object.prototype.hasOwnProperty.call(subscribers, s4)) {
callSubscriber(subscribers[s4], originalMessage, data2);
}
}
}
function createDeliveryFunction(message, data2, immediateExceptions) {
return function deliverNamespaced() {
var topic = String(message), position = topic.lastIndexOf(".");
deliverMessage(message, message, data2, immediateExceptions);
while (position !== -1) {
topic = topic.substr(0, position);
position = topic.lastIndexOf(".");
deliverMessage(message, topic, data2, immediateExceptions);
}
deliverMessage(message, ALL_SUBSCRIBING_MSG, data2, immediateExceptions);
};
}
function hasDirectSubscribersFor(message) {
var topic = String(message), found = Boolean(Object.prototype.hasOwnProperty.call(messages, topic) && hasKeys(messages[topic]));
return found;
}
function messageHasSubscribers(message) {
var topic = String(message), found = hasDirectSubscribersFor(topic) || hasDirectSubscribersFor(ALL_SUBSCRIBING_MSG), position = topic.lastIndexOf(".");
while (!found && position !== -1) {
topic = topic.substr(0, position);
position = topic.lastIndexOf(".");
found = hasDirectSubscribersFor(topic);
}
return found;
}
function publish2(message, data2, sync, immediateExceptions) {
message = typeof message === "symbol" ? message.toString() : message;
var deliver = createDeliveryFunction(message, data2, immediateExceptions), hasSubscribers = messageHasSubscribers(message);
if (!hasSubscribers) {
return false;
}
if (sync === true) {
deliver();
} else {
setTimeout(deliver, 0);
}
return true;
}
PubSub2.publish = function(message, data2) {
return publish2(message, data2, false, PubSub2.immediateExceptions);
};
PubSub2.publishSync = function(message, data2) {
return publish2(message, data2, true, PubSub2.immediateExceptions);
};
PubSub2.subscribe = function(message, func) {
if (typeof func !== "function") {
return false;
}
message = typeof message === "symbol" ? message.toString() : message;
if (!Object.prototype.hasOwnProperty.call(messages, message)) {
messages[message] = {};
}
var token = "uid_" + String(++lastUid);
messages[message][token] = func;
return token;
};
PubSub2.subscribeAll = function(func) {
return PubSub2.subscribe(ALL_SUBSCRIBING_MSG, func);
};
PubSub2.subscribeOnce = function(message, func) {
var token = PubSub2.subscribe(message, function() {
PubSub2.unsubscribe(token);
func.apply(this, arguments);
});
return PubSub2;
};
PubSub2.clearAllSubscriptions = function clearAllSubscriptions() {
messages = {};
};
PubSub2.clearSubscriptions = function clearSubscriptions(topic) {
var m5;
for (m5 in messages) {
if (Object.prototype.hasOwnProperty.call(messages, m5) && m5.indexOf(topic) === 0) {
delete messages[m5];
}
}
};
PubSub2.countSubscriptions = function countSubscriptions(topic) {
var m5;
var token;
var count2 = 0;
for (m5 in messages) {
if (Object.prototype.hasOwnProperty.call(messages, m5) && m5.indexOf(topic) === 0) {
for (token in messages[m5]) {
count2++;
}
break;
}
}
return count2;
};
PubSub2.getSubscriptions = function getSubscriptions(topic) {
var m5;
var list = [];
for (m5 in messages) {
if (Object.prototype.hasOwnProperty.call(messages, m5) && m5.indexOf(topic) === 0) {
list.push(m5);
}
}
return list;
};
PubSub2.unsubscribe = function(value) {
var descendantTopicExists = function(topic) {
var m6;
for (m6 in messages) {
if (Object.prototype.hasOwnProperty.call(messages, m6) && m6.indexOf(topic) === 0) {
return true;
}
}
return false;
}, isTopic = typeof value === "string" && (Object.prototype.hasOwnProperty.call(messages, value) || descendantTopicExists(value)), isToken = !isTopic && typeof value === "string", isFunction3 = typeof value === "function", result = false, m5, message, t5;
if (isTopic) {
PubSub2.clearSubscriptions(value);
return;
}
for (m5 in messages) {
if (Object.prototype.hasOwnProperty.call(messages, m5)) {
message = messages[m5];
if (isToken && message[value]) {
delete message[value];
result = value;
break;
}
if (isFunction3) {
for (t5 in message) {
if (Object.prototype.hasOwnProperty.call(message, t5) && message[t5] === value) {
delete message[t5];
result = true;
}
}
}
}
}
return result;
};
});
}
});
// node_modules/@babel/runtime/helpers/esm/typeof.js
function _typeof(obj) {
"@babel/helpers - typeof";
if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
_typeof = function _typeof4(obj2) {
return typeof obj2;
};
} else {
_typeof = function _typeof4(obj2) {
return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
};
}
return _typeof(obj);
}
var init_typeof = __esm({
"node_modules/@babel/runtime/helpers/esm/typeof.js"() {
init_buffer_shim();
}
});
// node_modules/jspdf/node_modules/fflate/esm/browser.js
function zlibSync(data2, opts) {
if (opts === void 0) {
opts = {};
}
var a4 = adler();
a4.p(data2);
var d3 = dopt(data2, opts, 2, 4);
return zlh(d3, opts), wbytes(d3, d3.length - 4, a4.d()), d3;
}
function unzlibSync2(data2, out) {
return inflt2((zlv2(data2), data2.subarray(2, -4)), out);
}
var u82, u162, u322, fleb2, fdeb2, clim2, freb2, _a2, fl2, revfl2, _b2, fd2, revfd2, rev2, x3, i4, hMap2, flt2, i4, i4, i4, i4, fdt2, i4, flm, flrm2, fdm, fdrm2, max5, bits2, bits162, shft2, slc2, inflt2, wbits, wbits16, hTree, ln, lc, clen, wfblk, wblk, deo, et2, dflt, adler, dopt, wbytes, zlh, zlv2;
var init_browser = __esm({
"node_modules/jspdf/node_modules/fflate/esm/browser.js"() {
init_buffer_shim();
u82 = Uint8Array;
u162 = Uint16Array;
u322 = Uint32Array;
fleb2 = new u82([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0, 0]);
fdeb2 = new u82([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 0, 0]);
clim2 = new u82([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]);
freb2 = function(eb, start) {
var b3 = new u162(31);
for (var i4 = 0; i4 < 31; ++i4) {
b3[i4] = start += 1 << eb[i4 - 1];
}
var r3 = new u322(b3[30]);
for (var i4 = 1; i4 < 30; ++i4) {
for (var j2 = b3[i4]; j2 < b3[i4 + 1]; ++j2) {
r3[j2] = j2 - b3[i4] << 5 | i4;
}
}
return [b3, r3];
};
_a2 = freb2(fleb2, 2);
fl2 = _a2[0];
revfl2 = _a2[1];
fl2[28] = 258, revfl2[258] = 28;
_b2 = freb2(fdeb2, 0);
fd2 = _b2[0];
revfd2 = _b2[1];
rev2 = new u162(32768);
for (i4 = 0; i4 < 32768; ++i4) {
x3 = (i4 & 43690) >>> 1 | (i4 & 21845) << 1;
x3 = (x3 & 52428) >>> 2 | (x3 & 13107) << 2;
x3 = (x3 & 61680) >>> 4 | (x3 & 3855) << 4;
rev2[i4] = ((x3 & 65280) >>> 8 | (x3 & 255) << 8) >>> 1;
}
hMap2 = function(cd, mb, r3) {
var s4 = cd.length;
var i4 = 0;
var l4 = new u162(mb);
for (; i4 < s4; ++i4)
++l4[cd[i4] - 1];
var le2 = new u162(mb);
for (i4 = 0; i4 < mb; ++i4) {
le2[i4] = le2[i4 - 1] + l4[i4 - 1] << 1;
}
var co;
if (r3) {
co = new u162(1 << mb);
var rvb = 15 - mb;
for (i4 = 0; i4 < s4; ++i4) {
if (cd[i4]) {
var sv = i4 << 4 | cd[i4];
var r_1 = mb - cd[i4];
var v7 = le2[cd[i4] - 1]++ << r_1;
for (var m5 = v7 | (1 << r_1) - 1; v7 <= m5; ++v7) {
co[rev2[v7] >>> rvb] = sv;
}
}
}
} else {
co = new u162(s4);
for (i4 = 0; i4 < s4; ++i4)
co[i4] = rev2[le2[cd[i4] - 1]++] >>> 15 - cd[i4];
}
return co;
};
flt2 = new u82(288);
for (i4 = 0; i4 < 144; ++i4)
flt2[i4] = 8;
for (i4 = 144; i4 < 256; ++i4)
flt2[i4] = 9;
for (i4 = 256; i4 < 280; ++i4)
flt2[i4] = 7;
for (i4 = 280; i4 < 288; ++i4)
flt2[i4] = 8;
fdt2 = new u82(32);
for (i4 = 0; i4 < 32; ++i4)
fdt2[i4] = 5;
flm = /* @__PURE__ */ hMap2(flt2, 9, 0);
flrm2 = /* @__PURE__ */ hMap2(flt2, 9, 1);
fdm = /* @__PURE__ */ hMap2(fdt2, 5, 0);
fdrm2 = /* @__PURE__ */ hMap2(fdt2, 5, 1);
max5 = function(a4) {
var m5 = a4[0];
for (var i4 = 1; i4 < a4.length; ++i4) {
if (a4[i4] > m5)
m5 = a4[i4];
}
return m5;
};
bits2 = function(d3, p4, m5) {
var o4 = p4 / 8 >> 0;
return (d3[o4] | d3[o4 + 1] << 8) >>> (p4 & 7) & m5;
};
bits162 = function(d3, p4) {
var o4 = p4 / 8 >> 0;
return (d3[o4] | d3[o4 + 1] << 8 | d3[o4 + 2] << 16) >>> (p4 & 7);
};
shft2 = function(p4) {
return (p4 / 8 >> 0) + (p4 & 7 && 1);
};
slc2 = function(v7, s4, e4) {
if (s4 == null || s4 < 0)
s4 = 0;
if (e4 == null || e4 > v7.length)
e4 = v7.length;
var n4 = new (v7 instanceof u162 ? u162 : v7 instanceof u322 ? u322 : u82)(e4 - s4);
n4.set(v7.subarray(s4, e4));
return n4;
};
inflt2 = function(dat, buf, st2) {
var sl = dat.length;
var noBuf = !buf || st2;
var noSt = !st2 || st2.i;
if (!st2)
st2 = {};
if (!buf)
buf = new u82(sl * 3);
var cbuf = function(l5) {
var bl = buf.length;
if (l5 > bl) {
var nbuf = new u82(Math.max(bl * 2, l5));
nbuf.set(buf);
buf = nbuf;
}
};
var final = st2.f || 0, pos = st2.p || 0, bt2 = st2.b || 0, lm = st2.l, dm = st2.d, lbt = st2.m, dbt = st2.n;
var tbts = sl * 8;
do {
if (!lm) {
st2.f = final = bits2(dat, pos, 1);
var type2 = bits2(dat, pos + 1, 3);
pos += 3;
if (!type2) {
var s4 = shft2(pos) + 4, l4 = dat[s4 - 4] | dat[s4 - 3] << 8, t5 = s4 + l4;
if (t5 > sl) {
if (noSt)
throw "unexpected EOF";
break;
}
if (noBuf)
cbuf(bt2 + l4);
buf.set(dat.subarray(s4, t5), bt2);
st2.b = bt2 += l4, st2.p = pos = t5 * 8;
continue;
} else if (type2 == 1)
lm = flrm2, dm = fdrm2, lbt = 9, dbt = 5;
else if (type2 == 2) {
var hLit = bits2(dat, pos, 31) + 257, hcLen = bits2(dat, pos + 10, 15) + 4;
var tl = hLit + bits2(dat, pos + 5, 31) + 1;
pos += 14;
var ldt = new u82(tl);
var clt = new u82(19);
for (var i4 = 0; i4 < hcLen; ++i4) {
clt[clim2[i4]] = bits2(dat, pos + i4 * 3, 7);
}
pos += hcLen * 3;
var clb = max5(clt), clbmsk = (1 << clb) - 1;
if (!noSt && pos + tl * (clb + 7) > tbts)
break;
var clm = hMap2(clt, clb, 1);
for (var i4 = 0; i4 < tl; ) {
var r3 = clm[bits2(dat, pos, clbmsk)];
pos += r3 & 15;
var s4 = r3 >>> 4;
if (s4 < 16) {
ldt[i4++] = s4;
} else {
var c6 = 0, n4 = 0;
if (s4 == 16)
n4 = 3 + bits2(dat, pos, 3), pos += 2, c6 = ldt[i4 - 1];
else if (s4 == 17)
n4 = 3 + bits2(dat, pos, 7), pos += 3;
else if (s4 == 18)
n4 = 11 + bits2(dat, pos, 127), pos += 7;
while (n4--)
ldt[i4++] = c6;
}
}
var lt2 = ldt.subarray(0, hLit), dt2 = ldt.subarray(hLit);
lbt = max5(lt2);
dbt = max5(dt2);
lm = hMap2(lt2, lbt, 1);
dm = hMap2(dt2, dbt, 1);
} else
throw "invalid block type";
if (pos > tbts)
throw "unexpected EOF";
}
if (noBuf)
cbuf(bt2 + 131072);
var lms = (1 << lbt) - 1, dms = (1 << dbt) - 1;
var mxa = lbt + dbt + 18;
while (noSt || pos + mxa < tbts) {
var c6 = lm[bits162(dat, pos) & lms], sym = c6 >>> 4;
pos += c6 & 15;
if (pos > tbts)
throw "unexpected EOF";
if (!c6)
throw "invalid length/literal";
if (sym < 256)
buf[bt2++] = sym;
else if (sym == 256) {
lm = null;
break;
} else {
var add2 = sym - 254;
if (sym > 264) {
var i4 = sym - 257, b3 = fleb2[i4];
add2 = bits2(dat, pos, (1 << b3) - 1) + fl2[i4];
pos += b3;
}
var d3 = dm[bits162(dat, pos) & dms], dsym = d3 >>> 4;
if (!d3)
throw "invalid distance";
pos += d3 & 15;
var dt2 = fd2[dsym];
if (dsym > 3) {
var b3 = fdeb2[dsym];
dt2 += bits162(dat, pos) & (1 << b3) - 1, pos += b3;
}
if (pos > tbts)
throw "unexpected EOF";
if (noBuf)
cbuf(bt2 + 131072);
var end = bt2 + add2;
for (; bt2 < end; bt2 += 4) {
buf[bt2] = buf[bt2 - dt2];
buf[bt2 + 1] = buf[bt2 + 1 - dt2];
buf[bt2 + 2] = buf[bt2 + 2 - dt2];
buf[bt2 + 3] = buf[bt2 + 3 - dt2];
}
bt2 = end;
}
}
st2.l = lm, st2.p = pos, st2.b = bt2;
if (lm)
final = 1, st2.m = lbt, st2.d = dm, st2.n = dbt;
} while (!final);
return bt2 == buf.length ? buf : slc2(buf, 0, bt2);
};
wbits = function(d3, p4, v7) {
v7 <<= p4 & 7;
var o4 = p4 / 8 >> 0;
d3[o4] |= v7;
d3[o4 + 1] |= v7 >>> 8;
};
wbits16 = function(d3, p4, v7) {
v7 <<= p4 & 7;
var o4 = p4 / 8 >> 0;
d3[o4] |= v7;
d3[o4 + 1] |= v7 >>> 8;
d3[o4 + 2] |= v7 >>> 16;
};
hTree = function(d3, mb) {
var t5 = [];
for (var i4 = 0; i4 < d3.length; ++i4) {
if (d3[i4])
t5.push({ s: i4, f: d3[i4] });
}
var s4 = t5.length;
var t22 = t5.slice();
if (!s4)
return [new u82(0), 0];
if (s4 == 1) {
var v7 = new u82(t5[0].s + 1);
v7[t5[0].s] = 1;
return [v7, 1];
}
t5.sort(function(a4, b3) {
return a4.f - b3.f;
});
t5.push({ s: -1, f: 25001 });
var l4 = t5[0], r3 = t5[1], i0 = 0, i1 = 1, i22 = 2;
t5[0] = { s: -1, f: l4.f + r3.f, l: l4, r: r3 };
while (i1 != s4 - 1) {
l4 = t5[t5[i0].f < t5[i22].f ? i0++ : i22++];
r3 = t5[i0 != i1 && t5[i0].f < t5[i22].f ? i0++ : i22++];
t5[i1++] = { s: -1, f: l4.f + r3.f, l: l4, r: r3 };
}
var maxSym = t22[0].s;
for (var i4 = 1; i4 < s4; ++i4) {
if (t22[i4].s > maxSym)
maxSym = t22[i4].s;
}
var tr = new u162(maxSym + 1);
var mbt = ln(t5[i1 - 1], tr, 0);
if (mbt > mb) {
var i4 = 0, dt2 = 0;
var lft = mbt - mb, cst = 1 << lft;
t22.sort(function(a4, b3) {
return tr[b3.s] - tr[a4.s] || a4.f - b3.f;
});
for (; i4 < s4; ++i4) {
var i2_1 = t22[i4].s;
if (tr[i2_1] > mb) {
dt2 += cst - (1 << mbt - tr[i2_1]);
tr[i2_1] = mb;
} else
break;
}
dt2 >>>= lft;
while (dt2 > 0) {
var i2_2 = t22[i4].s;
if (tr[i2_2] < mb)
dt2 -= 1 << mb - tr[i2_2]++ - 1;
else
++i4;
}
for (; i4 >= 0 && dt2; --i4) {
var i2_3 = t22[i4].s;
if (tr[i2_3] == mb) {
--tr[i2_3];
++dt2;
}
}
mbt = mb;
}
return [new u82(tr), mbt];
};
ln = function(n4, l4, d3) {
return n4.s == -1 ? Math.max(ln(n4.l, l4, d3 + 1), ln(n4.r, l4, d3 + 1)) : l4[n4.s] = d3;
};
lc = function(c6) {
var s4 = c6.length;
while (s4 && !c6[--s4])
;
var cl = new u162(++s4);
var cli = 0, cln = c6[0], cls = 1;
var w3 = function(v7) {
cl[cli++] = v7;
};
for (var i4 = 1; i4 <= s4; ++i4) {
if (c6[i4] == cln && i4 != s4)
++cls;
else {
if (!cln && cls > 2) {
for (; cls > 138; cls -= 138)
w3(32754);
if (cls > 2) {
w3(cls > 10 ? cls - 11 << 5 | 28690 : cls - 3 << 5 | 12305);
cls = 0;
}
} else if (cls > 3) {
w3(cln), --cls;
for (; cls > 6; cls -= 6)
w3(8304);
if (cls > 2)
w3(cls - 3 << 5 | 8208), cls = 0;
}
while (cls--)
w3(cln);
cls = 1;
cln = c6[i4];
}
}
return [cl.subarray(0, cli), s4];
};
clen = function(cf, cl) {
var l4 = 0;
for (var i4 = 0; i4 < cl.length; ++i4)
l4 += cf[i4] * cl[i4];
return l4;
};
wfblk = function(out, pos, dat) {
var s4 = dat.length;
var o4 = shft2(pos + 2);
out[o4] = s4 & 255;
out[o4 + 1] = s4 >>> 8;
out[o4 + 2] = out[o4] ^ 255;
out[o4 + 3] = out[o4 + 1] ^ 255;
for (var i4 = 0; i4 < s4; ++i4)
out[o4 + i4 + 4] = dat[i4];
return (o4 + 4 + s4) * 8;
};
wblk = function(dat, out, final, syms, lf, df, eb, li, bs, bl, p4) {
wbits(out, p4++, final);
++lf[256];
var _a3 = hTree(lf, 15), dlt = _a3[0], mlb = _a3[1];
var _b3 = hTree(df, 15), ddt = _b3[0], mdb = _b3[1];
var _c = lc(dlt), lclt = _c[0], nlc = _c[1];
var _d = lc(ddt), lcdt = _d[0], ndc = _d[1];
var lcfreq = new u162(19);
for (var i4 = 0; i4 < lclt.length; ++i4)
lcfreq[lclt[i4] & 31]++;
for (var i4 = 0; i4 < lcdt.length; ++i4)
lcfreq[lcdt[i4] & 31]++;
var _e = hTree(lcfreq, 7), lct = _e[0], mlcb = _e[1];
var nlcc = 19;
for (; nlcc > 4 && !lct[clim2[nlcc - 1]]; --nlcc)
;
var flen = bl + 5 << 3;
var ftlen = clen(lf, flt2) + clen(df, fdt2) + eb;
var dtlen = clen(lf, dlt) + clen(df, ddt) + eb + 14 + 3 * nlcc + clen(lcfreq, lct) + (2 * lcfreq[16] + 3 * lcfreq[17] + 7 * lcfreq[18]);
if (flen <= ftlen && flen <= dtlen)
return wfblk(out, p4, dat.subarray(bs, bs + bl));
var lm, ll, dm, dl;
wbits(out, p4, 1 + (dtlen < ftlen)), p4 += 2;
if (dtlen < ftlen) {
lm = hMap2(dlt, mlb, 0), ll = dlt, dm = hMap2(ddt, mdb, 0), dl = ddt;
var llm = hMap2(lct, mlcb, 0);
wbits(out, p4, nlc - 257);
wbits(out, p4 + 5, ndc - 1);
wbits(out, p4 + 10, nlcc - 4);
p4 += 14;
for (var i4 = 0; i4 < nlcc; ++i4)
wbits(out, p4 + 3 * i4, lct[clim2[i4]]);
p4 += 3 * nlcc;
var lcts = [lclt, lcdt];
for (var it2 = 0; it2 < 2; ++it2) {
var clct = lcts[it2];
for (var i4 = 0; i4 < clct.length; ++i4) {
var len = clct[i4] & 31;
wbits(out, p4, llm[len]), p4 += lct[len];
if (len > 15)
wbits(out, p4, clct[i4] >>> 5 & 127), p4 += clct[i4] >>> 12;
}
}
} else {
lm = flm, ll = flt2, dm = fdm, dl = fdt2;
}
for (var i4 = 0; i4 < li; ++i4) {
if (syms[i4] > 255) {
var len = syms[i4] >>> 18 & 31;
wbits16(out, p4, lm[len + 257]), p4 += ll[len + 257];
if (len > 7)
wbits(out, p4, syms[i4] >>> 23 & 31), p4 += fleb2[len];
var dst = syms[i4] & 31;
wbits16(out, p4, dm[dst]), p4 += dl[dst];
if (dst > 3)
wbits16(out, p4, syms[i4] >>> 5 & 8191), p4 += fdeb2[dst];
} else {
wbits16(out, p4, lm[syms[i4]]), p4 += ll[syms[i4]];
}
}
wbits16(out, p4, lm[256]);
return p4 + ll[256];
};
deo = /* @__PURE__ */ new u322([65540, 131080, 131088, 131104, 262176, 1048704, 1048832, 2114560, 2117632]);
et2 = /* @__PURE__ */ new u82(0);
dflt = function(dat, lvl, plvl, pre, post, lst) {
var s4 = dat.length;
var o4 = new u82(pre + s4 + 5 * (1 + Math.floor(s4 / 7e3)) + post);
var w3 = o4.subarray(pre, o4.length - post);
var pos = 0;
if (!lvl || s4 < 8) {
for (var i4 = 0; i4 <= s4; i4 += 65535) {
var e4 = i4 + 65535;
if (e4 < s4) {
pos = wfblk(w3, pos, dat.subarray(i4, e4));
} else {
w3[i4] = lst;
pos = wfblk(w3, pos, dat.subarray(i4, s4));
}
}
} else {
var opt = deo[lvl - 1];
var n4 = opt >>> 13, c6 = opt & 8191;
var msk_1 = (1 << plvl) - 1;
var prev = new u162(32768), head = new u162(msk_1 + 1);
var bs1_1 = Math.ceil(plvl / 3), bs2_1 = 2 * bs1_1;
var hsh = function(i5) {
return (dat[i5] ^ dat[i5 + 1] << bs1_1 ^ dat[i5 + 2] << bs2_1) & msk_1;
};
var syms = new u322(25e3);
var lf = new u162(288), df = new u162(32);
var lc_1 = 0, eb = 0, i4 = 0, li = 0, wi = 0, bs = 0;
for (; i4 < s4; ++i4) {
var hv = hsh(i4);
var imod = i4 & 32767;
var pimod = head[hv];
prev[imod] = pimod;
head[hv] = imod;
if (wi <= i4) {
var rem = s4 - i4;
if ((lc_1 > 7e3 || li > 24576) && rem > 423) {
pos = wblk(dat, w3, 0, syms, lf, df, eb, li, bs, i4 - bs, pos);
li = lc_1 = eb = 0, bs = i4;
for (var j2 = 0; j2 < 286; ++j2)
lf[j2] = 0;
for (var j2 = 0; j2 < 30; ++j2)
df[j2] = 0;
}
var l4 = 2, d3 = 0, ch_1 = c6, dif = imod - pimod & 32767;
if (rem > 2 && hv == hsh(i4 - dif)) {
var maxn = Math.min(n4, rem) - 1;
var maxd = Math.min(32767, i4);
var ml = Math.min(258, rem);
while (dif <= maxd && --ch_1 && imod != pimod) {
if (dat[i4 + l4] == dat[i4 + l4 - dif]) {
var nl = 0;
for (; nl < ml && dat[i4 + nl] == dat[i4 + nl - dif]; ++nl)
;
if (nl > l4) {
l4 = nl, d3 = dif;
if (nl > maxn)
break;
var mmd = Math.min(dif, nl - 2);
var md = 0;
for (var j2 = 0; j2 < mmd; ++j2) {
var ti = i4 - dif + j2 + 32768 & 32767;
var pti = prev[ti];
var cd = ti - pti + 32768 & 32767;
if (cd > md)
md = cd, pimod = ti;
}
}
}
imod = pimod, pimod = prev[imod];
dif += imod - pimod + 32768 & 32767;
}
}
if (d3) {
syms[li++] = 268435456 | revfl2[l4] << 18 | revfd2[d3];
var lin = revfl2[l4] & 31, din = revfd2[d3] & 31;
eb += fleb2[lin] + fdeb2[din];
++lf[257 + lin];
++df[din];
wi = i4 + l4;
++lc_1;
} else {
syms[li++] = dat[i4];
++lf[dat[i4]];
}
}
}
pos = wblk(dat, w3, lst, syms, lf, df, eb, li, bs, i4 - bs, pos);
if (!lst)
pos = wfblk(w3, pos, et2);
}
return slc2(o4, 0, pre + shft2(pos) + post);
};
adler = function() {
var a4 = 1, b3 = 0;
return {
p: function(d3) {
var n4 = a4, m5 = b3;
var l4 = d3.length;
for (var i4 = 0; i4 != l4; ) {
var e4 = Math.min(i4 + 5552, l4);
for (; i4 < e4; ++i4)
n4 += d3[i4], m5 += n4;
n4 %= 65521, m5 %= 65521;
}
a4 = n4, b3 = m5;
},
d: function() {
return (a4 >>> 8 << 16 | (b3 & 255) << 8 | b3 >>> 8) + ((a4 & 255) << 23) * 2;
}
};
};
dopt = function(dat, opt, pre, post, st2) {
return dflt(dat, opt.level == null ? 6 : opt.level, opt.mem == null ? Math.ceil(Math.max(8, Math.min(13, Math.log(dat.length))) * 1.5) : 12 + opt.mem, pre, post, !st2);
};
wbytes = function(d3, b3, v7) {
for (; v7; ++b3)
d3[b3] = v7, v7 >>>= 8;
};
zlh = function(c6, o4) {
var lv = o4.level, fl3 = lv == 0 ? 0 : lv < 6 ? 1 : lv == 9 ? 3 : 2;
c6[0] = 120, c6[1] = fl3 << 6 | (fl3 ? 32 - 2 * fl3 : 1);
};
zlv2 = function(d3) {
if ((d3[0] & 15) != 8 || d3[0] >>> 4 > 7 || (d3[0] << 8 | d3[1]) % 31)
throw "invalid zlib data";
if (d3[1] & 32)
throw "invalid zlib data: preset dictionaries not supported";
};
}
});
// node_modules/html2canvas/dist/html2canvas.js
var require_html2canvas = __commonJS({
"node_modules/html2canvas/dist/html2canvas.js"(exports2, module2) {
init_buffer_shim();
(function(global4, factory2) {
typeof exports2 === "object" && typeof module2 !== "undefined" ? module2.exports = factory2() : typeof define === "function" && define.amd ? define(factory2) : (global4 = typeof globalThis !== "undefined" ? globalThis : global4 || self, global4.html2canvas = factory2());
})(exports2, function() {
"use strict";
var extendStatics2 = function(d3, b3) {
extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d4, b4) {
d4.__proto__ = b4;
} || function(d4, b4) {
for (var p4 in b4)
if (Object.prototype.hasOwnProperty.call(b4, p4))
d4[p4] = b4[p4];
};
return extendStatics2(d3, b3);
};
function __extends2(d3, b3) {
if (typeof b3 !== "function" && b3 !== null)
throw new TypeError("Class extends value " + String(b3) + " is not a constructor or null");
extendStatics2(d3, b3);
function __() {
this.constructor = d3;
}
d3.prototype = b3 === null ? Object.create(b3) : (__.prototype = b3.prototype, new __());
}
var __assign = function() {
__assign = Object.assign || function __assign2(t5) {
for (var s4, i5 = 1, n4 = arguments.length; i5 < n4; i5++) {
s4 = arguments[i5];
for (var p4 in s4)
if (Object.prototype.hasOwnProperty.call(s4, p4))
t5[p4] = s4[p4];
}
return t5;
};
return __assign.apply(this, arguments);
};
function __awaiter(thisArg, _arguments, P3, generator) {
function adopt(value) {
return value instanceof P3 ? value : new P3(function(resolve3) {
resolve3(value);
});
}
return new (P3 || (P3 = Promise))(function(resolve3, reject2) {
function fulfilled(value) {
try {
step(generator.next(value));
} catch (e6) {
reject2(e6);
}
}
function rejected(value) {
try {
step(generator["throw"](value));
} catch (e6) {
reject2(e6);
}
}
function step(result) {
result.done ? resolve3(result.value) : adopt(result.value).then(fulfilled, rejected);
}
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _3 = { label: 0, sent: function() {
if (t5[0] & 1)
throw t5[1];
return t5[1];
}, trys: [], ops: [] }, f7, y4, t5, g3;
return g3 = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g3[Symbol.iterator] = function() {
return this;
}), g3;
function verb(n4) {
return function(v7) {
return step([n4, v7]);
};
}
function step(op) {
if (f7)
throw new TypeError("Generator is already executing.");
while (_3)
try {
if (f7 = 1, y4 && (t5 = op[0] & 2 ? y4["return"] : op[0] ? y4["throw"] || ((t5 = y4["return"]) && t5.call(y4), 0) : y4.next) && !(t5 = t5.call(y4, op[1])).done)
return t5;
if (y4 = 0, t5)
op = [op[0] & 2, t5.value];
switch (op[0]) {
case 0:
case 1:
t5 = op;
break;
case 4:
_3.label++;
return { value: op[1], done: false };
case 5:
_3.label++;
y4 = op[1];
op = [0];
continue;
case 7:
op = _3.ops.pop();
_3.trys.pop();
continue;
default:
if (!(t5 = _3.trys, t5 = t5.length > 0 && t5[t5.length - 1]) && (op[0] === 6 || op[0] === 2)) {
_3 = 0;
continue;
}
if (op[0] === 3 && (!t5 || op[1] > t5[0] && op[1] < t5[3])) {
_3.label = op[1];
break;
}
if (op[0] === 6 && _3.label < t5[1]) {
_3.label = t5[1];
t5 = op;
break;
}
if (t5 && _3.label < t5[2]) {
_3.label = t5[2];
_3.ops.push(op);
break;
}
if (t5[2])
_3.ops.pop();
_3.trys.pop();
continue;
}
op = body.call(thisArg, _3);
} catch (e6) {
op = [6, e6];
y4 = 0;
} finally {
f7 = t5 = 0;
}
if (op[0] & 5)
throw op[1];
return { value: op[0] ? op[1] : void 0, done: true };
}
}
function __spreadArray(to, from2, pack2) {
if (pack2 || arguments.length === 2)
for (var i5 = 0, l4 = from2.length, ar; i5 < l4; i5++) {
if (ar || !(i5 in from2)) {
if (!ar)
ar = Array.prototype.slice.call(from2, 0, i5);
ar[i5] = from2[i5];
}
}
return to.concat(ar || from2);
}
var Bounds = function() {
function Bounds2(left, top, width, height) {
this.left = left;
this.top = top;
this.width = width;
this.height = height;
}
Bounds2.prototype.add = function(x3, y4, w3, h4) {
return new Bounds2(this.left + x3, this.top + y4, this.width + w3, this.height + h4);
};
Bounds2.fromClientRect = function(context2, clientRect) {
return new Bounds2(clientRect.left + context2.windowBounds.left, clientRect.top + context2.windowBounds.top, clientRect.width, clientRect.height);
};
Bounds2.fromDOMRectList = function(context2, domRectList) {
var domRect = domRectList[0];
return domRect ? new Bounds2(domRect.x + context2.windowBounds.left, domRect.y + context2.windowBounds.top, domRect.width, domRect.height) : Bounds2.EMPTY;
};
Bounds2.EMPTY = new Bounds2(0, 0, 0, 0);
return Bounds2;
}();
var parseBounds = function(context2, node2) {
return Bounds.fromClientRect(context2, node2.getBoundingClientRect());
};
var parseDocumentSize = function(document3) {
var body = document3.body;
var documentElement = document3.documentElement;
if (!body || !documentElement) {
throw new Error("Unable to get document size");
}
var width = Math.max(Math.max(body.scrollWidth, documentElement.scrollWidth), Math.max(body.offsetWidth, documentElement.offsetWidth), Math.max(body.clientWidth, documentElement.clientWidth));
var height = Math.max(Math.max(body.scrollHeight, documentElement.scrollHeight), Math.max(body.offsetHeight, documentElement.offsetHeight), Math.max(body.clientHeight, documentElement.clientHeight));
return new Bounds(0, 0, width, height);
};
var toCodePoints$1 = function(str) {
var codePoints = [];
var i5 = 0;
var length = str.length;
while (i5 < length) {
var value = str.charCodeAt(i5++);
if (value >= 55296 && value <= 56319 && i5 < length) {
var extra = str.charCodeAt(i5++);
if ((extra & 64512) === 56320) {
codePoints.push(((value & 1023) << 10) + (extra & 1023) + 65536);
} else {
codePoints.push(value);
i5--;
}
} else {
codePoints.push(value);
}
}
return codePoints;
};
var fromCodePoint$1 = function() {
var codePoints = [];
for (var _i = 0; _i < arguments.length; _i++) {
codePoints[_i] = arguments[_i];
}
if (String.fromCodePoint) {
return String.fromCodePoint.apply(String, codePoints);
}
var length = codePoints.length;
if (!length) {
return "";
}
var codeUnits = [];
var index3 = -1;
var result = "";
while (++index3 < length) {
var codePoint = codePoints[index3];
if (codePoint <= 65535) {
codeUnits.push(codePoint);
} else {
codePoint -= 65536;
codeUnits.push((codePoint >> 10) + 55296, codePoint % 1024 + 56320);
}
if (index3 + 1 === length || codeUnits.length > 16384) {
result += String.fromCharCode.apply(String, codeUnits);
codeUnits.length = 0;
}
}
return result;
};
var chars$2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var lookup$2 = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
for (var i$2 = 0; i$2 < chars$2.length; i$2++) {
lookup$2[chars$2.charCodeAt(i$2)] = i$2;
}
var decode$1 = function(base642) {
var bufferLength = base642.length * 0.75, len = base642.length, i5, p4 = 0, encoded1, encoded2, encoded3, encoded4;
if (base642[base642.length - 1] === "=") {
bufferLength--;
if (base642[base642.length - 2] === "=") {
bufferLength--;
}
}
var buffer2 = typeof ArrayBuffer !== "undefined" && typeof Uint8Array !== "undefined" && typeof Uint8Array.prototype.slice !== "undefined" ? new ArrayBuffer(bufferLength) : new Array(bufferLength);
var bytes = Array.isArray(buffer2) ? buffer2 : new Uint8Array(buffer2);
for (i5 = 0; i5 < len; i5 += 4) {
encoded1 = lookup$2[base642.charCodeAt(i5)];
encoded2 = lookup$2[base642.charCodeAt(i5 + 1)];
encoded3 = lookup$2[base642.charCodeAt(i5 + 2)];
encoded4 = lookup$2[base642.charCodeAt(i5 + 3)];
bytes[p4++] = encoded1 << 2 | encoded2 >> 4;
bytes[p4++] = (encoded2 & 15) << 4 | encoded3 >> 2;
bytes[p4++] = (encoded3 & 3) << 6 | encoded4 & 63;
}
return buffer2;
};
var polyUint16Array$1 = function(buffer2) {
var length = buffer2.length;
var bytes = [];
for (var i5 = 0; i5 < length; i5 += 2) {
bytes.push(buffer2[i5 + 1] << 8 | buffer2[i5]);
}
return bytes;
};
var polyUint32Array$1 = function(buffer2) {
var length = buffer2.length;
var bytes = [];
for (var i5 = 0; i5 < length; i5 += 4) {
bytes.push(buffer2[i5 + 3] << 24 | buffer2[i5 + 2] << 16 | buffer2[i5 + 1] << 8 | buffer2[i5]);
}
return bytes;
};
var UTRIE2_SHIFT_2$1 = 5;
var UTRIE2_SHIFT_1$1 = 6 + 5;
var UTRIE2_INDEX_SHIFT$1 = 2;
var UTRIE2_SHIFT_1_2$1 = UTRIE2_SHIFT_1$1 - UTRIE2_SHIFT_2$1;
var UTRIE2_LSCP_INDEX_2_OFFSET$1 = 65536 >> UTRIE2_SHIFT_2$1;
var UTRIE2_DATA_BLOCK_LENGTH$1 = 1 << UTRIE2_SHIFT_2$1;
var UTRIE2_DATA_MASK$1 = UTRIE2_DATA_BLOCK_LENGTH$1 - 1;
var UTRIE2_LSCP_INDEX_2_LENGTH$1 = 1024 >> UTRIE2_SHIFT_2$1;
var UTRIE2_INDEX_2_BMP_LENGTH$1 = UTRIE2_LSCP_INDEX_2_OFFSET$1 + UTRIE2_LSCP_INDEX_2_LENGTH$1;
var UTRIE2_UTF8_2B_INDEX_2_OFFSET$1 = UTRIE2_INDEX_2_BMP_LENGTH$1;
var UTRIE2_UTF8_2B_INDEX_2_LENGTH$1 = 2048 >> 6;
var UTRIE2_INDEX_1_OFFSET$1 = UTRIE2_UTF8_2B_INDEX_2_OFFSET$1 + UTRIE2_UTF8_2B_INDEX_2_LENGTH$1;
var UTRIE2_OMITTED_BMP_INDEX_1_LENGTH$1 = 65536 >> UTRIE2_SHIFT_1$1;
var UTRIE2_INDEX_2_BLOCK_LENGTH$1 = 1 << UTRIE2_SHIFT_1_2$1;
var UTRIE2_INDEX_2_MASK$1 = UTRIE2_INDEX_2_BLOCK_LENGTH$1 - 1;
var slice16$1 = function(view, start, end) {
if (view.slice) {
return view.slice(start, end);
}
return new Uint16Array(Array.prototype.slice.call(view, start, end));
};
var slice32$1 = function(view, start, end) {
if (view.slice) {
return view.slice(start, end);
}
return new Uint32Array(Array.prototype.slice.call(view, start, end));
};
var createTrieFromBase64$1 = function(base642) {
var buffer2 = decode$1(base642);
var view32 = Array.isArray(buffer2) ? polyUint32Array$1(buffer2) : new Uint32Array(buffer2);
var view16 = Array.isArray(buffer2) ? polyUint16Array$1(buffer2) : new Uint16Array(buffer2);
var headerLength = 24;
var index3 = slice16$1(view16, headerLength / 2, view32[4] / 2);
var data2 = view32[5] === 2 ? slice16$1(view16, (headerLength + view32[4]) / 2) : slice32$1(view32, Math.ceil((headerLength + view32[4]) / 4));
return new Trie$1(view32[0], view32[1], view32[2], view32[3], index3, data2);
};
var Trie$1 = function() {
function Trie2(initialValue, errorValue, highStart, highValueIndex, index3, data2) {
this.initialValue = initialValue;
this.errorValue = errorValue;
this.highStart = highStart;
this.highValueIndex = highValueIndex;
this.index = index3;
this.data = data2;
}
Trie2.prototype.get = function(codePoint) {
var ix;
if (codePoint >= 0) {
if (codePoint < 55296 || codePoint > 56319 && codePoint <= 65535) {
ix = this.index[codePoint >> UTRIE2_SHIFT_2$1];
ix = (ix << UTRIE2_INDEX_SHIFT$1) + (codePoint & UTRIE2_DATA_MASK$1);
return this.data[ix];
}
if (codePoint <= 65535) {
ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET$1 + (codePoint - 55296 >> UTRIE2_SHIFT_2$1)];
ix = (ix << UTRIE2_INDEX_SHIFT$1) + (codePoint & UTRIE2_DATA_MASK$1);
return this.data[ix];
}
if (codePoint < this.highStart) {
ix = UTRIE2_INDEX_1_OFFSET$1 - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH$1 + (codePoint >> UTRIE2_SHIFT_1$1);
ix = this.index[ix];
ix += codePoint >> UTRIE2_SHIFT_2$1 & UTRIE2_INDEX_2_MASK$1;
ix = this.index[ix];
ix = (ix << UTRIE2_INDEX_SHIFT$1) + (codePoint & UTRIE2_DATA_MASK$1);
return this.data[ix];
}
if (codePoint <= 1114111) {
return this.data[this.highValueIndex];
}
}
return this.errorValue;
};
return Trie2;
}();
var base64$1 = "KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==";
var LETTER_NUMBER_MODIFIER = 50;
var BK = 1;
var CR$1 = 2;
var LF$1 = 3;
var CM = 4;
var NL = 5;
var WJ = 7;
var ZW = 8;
var GL = 9;
var SP = 10;
var ZWJ$1 = 11;
var B22 = 12;
var BA = 13;
var BB = 14;
var HY = 15;
var CB = 16;
var CL = 17;
var CP = 18;
var EX = 19;
var IN = 20;
var NS = 21;
var OP = 22;
var QU = 23;
var IS = 24;
var NU = 25;
var PO = 26;
var PR = 27;
var SY = 28;
var AI = 29;
var AL = 30;
var CJ = 31;
var EB2 = 32;
var EM = 33;
var H2 = 34;
var H3 = 35;
var HL = 36;
var ID = 37;
var JL = 38;
var JV = 39;
var JT = 40;
var RI$1 = 41;
var SA = 42;
var XX = 43;
var ea_OP = [9001, 65288];
var BREAK_MANDATORY = "!";
var BREAK_NOT_ALLOWED$1 = "\xD7";
var BREAK_ALLOWED$1 = "\xF7";
var UnicodeTrie$1 = createTrieFromBase64$1(base64$1);
var ALPHABETICS = [AL, HL];
var HARD_LINE_BREAKS = [BK, CR$1, LF$1, NL];
var SPACE$1 = [SP, ZW];
var PREFIX_POSTFIX = [PR, PO];
var LINE_BREAKS = HARD_LINE_BREAKS.concat(SPACE$1);
var KOREAN_SYLLABLE_BLOCK = [JL, JV, JT, H2, H3];
var HYPHEN = [HY, BA];
var codePointsToCharacterClasses = function(codePoints, lineBreak2) {
if (lineBreak2 === void 0) {
lineBreak2 = "strict";
}
var types = [];
var indices = [];
var categories = [];
codePoints.forEach(function(codePoint, index3) {
var classType = UnicodeTrie$1.get(codePoint);
if (classType > LETTER_NUMBER_MODIFIER) {
categories.push(true);
classType -= LETTER_NUMBER_MODIFIER;
} else {
categories.push(false);
}
if (["normal", "auto", "loose"].indexOf(lineBreak2) !== -1) {
if ([8208, 8211, 12316, 12448].indexOf(codePoint) !== -1) {
indices.push(index3);
return types.push(CB);
}
}
if (classType === CM || classType === ZWJ$1) {
if (index3 === 0) {
indices.push(index3);
return types.push(AL);
}
var prev = types[index3 - 1];
if (LINE_BREAKS.indexOf(prev) === -1) {
indices.push(indices[index3 - 1]);
return types.push(prev);
}
indices.push(index3);
return types.push(AL);
}
indices.push(index3);
if (classType === CJ) {
return types.push(lineBreak2 === "strict" ? NS : ID);
}
if (classType === SA) {
return types.push(AL);
}
if (classType === AI) {
return types.push(AL);
}
if (classType === XX) {
if (codePoint >= 131072 && codePoint <= 196605 || codePoint >= 196608 && codePoint <= 262141) {
return types.push(ID);
} else {
return types.push(AL);
}
}
types.push(classType);
});
return [indices, types, categories];
};
var isAdjacentWithSpaceIgnored = function(a5, b3, currentIndex, classTypes) {
var current = classTypes[currentIndex];
if (Array.isArray(a5) ? a5.indexOf(current) !== -1 : a5 === current) {
var i5 = currentIndex;
while (i5 <= classTypes.length) {
i5++;
var next = classTypes[i5];
if (next === b3) {
return true;
}
if (next !== SP) {
break;
}
}
}
if (current === SP) {
var i5 = currentIndex;
while (i5 > 0) {
i5--;
var prev = classTypes[i5];
if (Array.isArray(a5) ? a5.indexOf(prev) !== -1 : a5 === prev) {
var n4 = currentIndex;
while (n4 <= classTypes.length) {
n4++;
var next = classTypes[n4];
if (next === b3) {
return true;
}
if (next !== SP) {
break;
}
}
}
if (prev !== SP) {
break;
}
}
}
return false;
};
var previousNonSpaceClassType = function(currentIndex, classTypes) {
var i5 = currentIndex;
while (i5 >= 0) {
var type2 = classTypes[i5];
if (type2 === SP) {
i5--;
} else {
return type2;
}
}
return 0;
};
var _lineBreakAtIndex = function(codePoints, classTypes, indicies, index3, forbiddenBreaks) {
if (indicies[index3] === 0) {
return BREAK_NOT_ALLOWED$1;
}
var currentIndex = index3 - 1;
if (Array.isArray(forbiddenBreaks) && forbiddenBreaks[currentIndex] === true) {
return BREAK_NOT_ALLOWED$1;
}
var beforeIndex = currentIndex - 1;
var afterIndex = currentIndex + 1;
var current = classTypes[currentIndex];
var before = beforeIndex >= 0 ? classTypes[beforeIndex] : 0;
var next = classTypes[afterIndex];
if (current === CR$1 && next === LF$1) {
return BREAK_NOT_ALLOWED$1;
}
if (HARD_LINE_BREAKS.indexOf(current) !== -1) {
return BREAK_MANDATORY;
}
if (HARD_LINE_BREAKS.indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if (SPACE$1.indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if (previousNonSpaceClassType(currentIndex, classTypes) === ZW) {
return BREAK_ALLOWED$1;
}
if (UnicodeTrie$1.get(codePoints[currentIndex]) === ZWJ$1) {
return BREAK_NOT_ALLOWED$1;
}
if ((current === EB2 || current === EM) && UnicodeTrie$1.get(codePoints[afterIndex]) === ZWJ$1) {
return BREAK_NOT_ALLOWED$1;
}
if (current === WJ || next === WJ) {
return BREAK_NOT_ALLOWED$1;
}
if (current === GL) {
return BREAK_NOT_ALLOWED$1;
}
if ([SP, BA, HY].indexOf(current) === -1 && next === GL) {
return BREAK_NOT_ALLOWED$1;
}
if ([CL, CP, EX, IS, SY].indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if (previousNonSpaceClassType(currentIndex, classTypes) === OP) {
return BREAK_NOT_ALLOWED$1;
}
if (isAdjacentWithSpaceIgnored(QU, OP, currentIndex, classTypes)) {
return BREAK_NOT_ALLOWED$1;
}
if (isAdjacentWithSpaceIgnored([CL, CP], NS, currentIndex, classTypes)) {
return BREAK_NOT_ALLOWED$1;
}
if (isAdjacentWithSpaceIgnored(B22, B22, currentIndex, classTypes)) {
return BREAK_NOT_ALLOWED$1;
}
if (current === SP) {
return BREAK_ALLOWED$1;
}
if (current === QU || next === QU) {
return BREAK_NOT_ALLOWED$1;
}
if (next === CB || current === CB) {
return BREAK_ALLOWED$1;
}
if ([BA, HY, NS].indexOf(next) !== -1 || current === BB) {
return BREAK_NOT_ALLOWED$1;
}
if (before === HL && HYPHEN.indexOf(current) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if (current === SY && next === HL) {
return BREAK_NOT_ALLOWED$1;
}
if (next === IN) {
return BREAK_NOT_ALLOWED$1;
}
if (ALPHABETICS.indexOf(next) !== -1 && current === NU || ALPHABETICS.indexOf(current) !== -1 && next === NU) {
return BREAK_NOT_ALLOWED$1;
}
if (current === PR && [ID, EB2, EM].indexOf(next) !== -1 || [ID, EB2, EM].indexOf(current) !== -1 && next === PO) {
return BREAK_NOT_ALLOWED$1;
}
if (ALPHABETICS.indexOf(current) !== -1 && PREFIX_POSTFIX.indexOf(next) !== -1 || PREFIX_POSTFIX.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if ([PR, PO].indexOf(current) !== -1 && (next === NU || [OP, HY].indexOf(next) !== -1 && classTypes[afterIndex + 1] === NU) || [OP, HY].indexOf(current) !== -1 && next === NU || current === NU && [NU, SY, IS].indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if ([NU, SY, IS, CL, CP].indexOf(next) !== -1) {
var prevIndex = currentIndex;
while (prevIndex >= 0) {
var type2 = classTypes[prevIndex];
if (type2 === NU) {
return BREAK_NOT_ALLOWED$1;
} else if ([SY, IS].indexOf(type2) !== -1) {
prevIndex--;
} else {
break;
}
}
}
if ([PR, PO].indexOf(next) !== -1) {
var prevIndex = [CL, CP].indexOf(current) !== -1 ? beforeIndex : currentIndex;
while (prevIndex >= 0) {
var type2 = classTypes[prevIndex];
if (type2 === NU) {
return BREAK_NOT_ALLOWED$1;
} else if ([SY, IS].indexOf(type2) !== -1) {
prevIndex--;
} else {
break;
}
}
}
if (JL === current && [JL, JV, H2, H3].indexOf(next) !== -1 || [JV, H2].indexOf(current) !== -1 && [JV, JT].indexOf(next) !== -1 || [JT, H3].indexOf(current) !== -1 && next === JT) {
return BREAK_NOT_ALLOWED$1;
}
if (KOREAN_SYLLABLE_BLOCK.indexOf(current) !== -1 && [IN, PO].indexOf(next) !== -1 || KOREAN_SYLLABLE_BLOCK.indexOf(next) !== -1 && current === PR) {
return BREAK_NOT_ALLOWED$1;
}
if (ALPHABETICS.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if (current === IS && ALPHABETICS.indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED$1;
}
if (ALPHABETICS.concat(NU).indexOf(current) !== -1 && next === OP && ea_OP.indexOf(codePoints[afterIndex]) === -1 || ALPHABETICS.concat(NU).indexOf(next) !== -1 && current === CP) {
return BREAK_NOT_ALLOWED$1;
}
if (current === RI$1 && next === RI$1) {
var i5 = indicies[currentIndex];
var count2 = 1;
while (i5 > 0) {
i5--;
if (classTypes[i5] === RI$1) {
count2++;
} else {
break;
}
}
if (count2 % 2 !== 0) {
return BREAK_NOT_ALLOWED$1;
}
}
if (current === EB2 && next === EM) {
return BREAK_NOT_ALLOWED$1;
}
return BREAK_ALLOWED$1;
};
var cssFormattedClasses = function(codePoints, options) {
if (!options) {
options = { lineBreak: "normal", wordBreak: "normal" };
}
var _a3 = codePointsToCharacterClasses(codePoints, options.lineBreak), indicies = _a3[0], classTypes = _a3[1], isLetterNumber = _a3[2];
if (options.wordBreak === "break-all" || options.wordBreak === "break-word") {
classTypes = classTypes.map(function(type2) {
return [NU, AL, SA].indexOf(type2) !== -1 ? ID : type2;
});
}
var forbiddenBreakpoints = options.wordBreak === "keep-all" ? isLetterNumber.map(function(letterNumber, i5) {
return letterNumber && codePoints[i5] >= 19968 && codePoints[i5] <= 40959;
}) : void 0;
return [indicies, classTypes, forbiddenBreakpoints];
};
var Break = function() {
function Break2(codePoints, lineBreak2, start, end) {
this.codePoints = codePoints;
this.required = lineBreak2 === BREAK_MANDATORY;
this.start = start;
this.end = end;
}
Break2.prototype.slice = function() {
return fromCodePoint$1.apply(void 0, this.codePoints.slice(this.start, this.end));
};
return Break2;
}();
var LineBreaker = function(str, options) {
var codePoints = toCodePoints$1(str);
var _a3 = cssFormattedClasses(codePoints, options), indicies = _a3[0], classTypes = _a3[1], forbiddenBreakpoints = _a3[2];
var length = codePoints.length;
var lastEnd = 0;
var nextIndex = 0;
return {
next: function() {
if (nextIndex >= length) {
return { done: true, value: null };
}
var lineBreak2 = BREAK_NOT_ALLOWED$1;
while (nextIndex < length && (lineBreak2 = _lineBreakAtIndex(codePoints, classTypes, indicies, ++nextIndex, forbiddenBreakpoints)) === BREAK_NOT_ALLOWED$1) {
}
if (lineBreak2 !== BREAK_NOT_ALLOWED$1 || nextIndex === length) {
var value = new Break(codePoints, lineBreak2, lastEnd, nextIndex);
lastEnd = nextIndex;
return { value, done: false };
}
return { done: true, value: null };
}
};
};
var FLAG_UNRESTRICTED = 1 << 0;
var FLAG_ID = 1 << 1;
var FLAG_INTEGER = 1 << 2;
var FLAG_NUMBER = 1 << 3;
var LINE_FEED = 10;
var SOLIDUS = 47;
var REVERSE_SOLIDUS = 92;
var CHARACTER_TABULATION = 9;
var SPACE = 32;
var QUOTATION_MARK = 34;
var EQUALS_SIGN = 61;
var NUMBER_SIGN = 35;
var DOLLAR_SIGN = 36;
var PERCENTAGE_SIGN = 37;
var APOSTROPHE = 39;
var LEFT_PARENTHESIS = 40;
var RIGHT_PARENTHESIS = 41;
var LOW_LINE = 95;
var HYPHEN_MINUS = 45;
var EXCLAMATION_MARK = 33;
var LESS_THAN_SIGN = 60;
var GREATER_THAN_SIGN = 62;
var COMMERCIAL_AT = 64;
var LEFT_SQUARE_BRACKET = 91;
var RIGHT_SQUARE_BRACKET = 93;
var CIRCUMFLEX_ACCENT = 61;
var LEFT_CURLY_BRACKET = 123;
var QUESTION_MARK = 63;
var RIGHT_CURLY_BRACKET = 125;
var VERTICAL_LINE = 124;
var TILDE = 126;
var CONTROL = 128;
var REPLACEMENT_CHARACTER = 65533;
var ASTERISK = 42;
var PLUS_SIGN = 43;
var COMMA = 44;
var COLON = 58;
var SEMICOLON = 59;
var FULL_STOP = 46;
var NULL = 0;
var BACKSPACE = 8;
var LINE_TABULATION = 11;
var SHIFT_OUT = 14;
var INFORMATION_SEPARATOR_ONE = 31;
var DELETE = 127;
var EOF2 = -1;
var ZERO3 = 48;
var a4 = 97;
var e4 = 101;
var f6 = 102;
var u4 = 117;
var z3 = 122;
var A4 = 65;
var E4 = 69;
var F3 = 70;
var U2 = 85;
var Z2 = 90;
var isDigit = function(codePoint) {
return codePoint >= ZERO3 && codePoint <= 57;
};
var isSurrogateCodePoint = function(codePoint) {
return codePoint >= 55296 && codePoint <= 57343;
};
var isHex = function(codePoint) {
return isDigit(codePoint) || codePoint >= A4 && codePoint <= F3 || codePoint >= a4 && codePoint <= f6;
};
var isLowerCaseLetter = function(codePoint) {
return codePoint >= a4 && codePoint <= z3;
};
var isUpperCaseLetter = function(codePoint) {
return codePoint >= A4 && codePoint <= Z2;
};
var isLetter = function(codePoint) {
return isLowerCaseLetter(codePoint) || isUpperCaseLetter(codePoint);
};
var isNonASCIICodePoint = function(codePoint) {
return codePoint >= CONTROL;
};
var isWhiteSpace = function(codePoint) {
return codePoint === LINE_FEED || codePoint === CHARACTER_TABULATION || codePoint === SPACE;
};
var isNameStartCodePoint = function(codePoint) {
return isLetter(codePoint) || isNonASCIICodePoint(codePoint) || codePoint === LOW_LINE;
};
var isNameCodePoint = function(codePoint) {
return isNameStartCodePoint(codePoint) || isDigit(codePoint) || codePoint === HYPHEN_MINUS;
};
var isNonPrintableCodePoint = function(codePoint) {
return codePoint >= NULL && codePoint <= BACKSPACE || codePoint === LINE_TABULATION || codePoint >= SHIFT_OUT && codePoint <= INFORMATION_SEPARATOR_ONE || codePoint === DELETE;
};
var isValidEscape = function(c1, c22) {
if (c1 !== REVERSE_SOLIDUS) {
return false;
}
return c22 !== LINE_FEED;
};
var isIdentifierStart = function(c1, c22, c32) {
if (c1 === HYPHEN_MINUS) {
return isNameStartCodePoint(c22) || isValidEscape(c22, c32);
} else if (isNameStartCodePoint(c1)) {
return true;
} else if (c1 === REVERSE_SOLIDUS && isValidEscape(c1, c22)) {
return true;
}
return false;
};
var isNumberStart = function(c1, c22, c32) {
if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {
if (isDigit(c22)) {
return true;
}
return c22 === FULL_STOP && isDigit(c32);
}
if (c1 === FULL_STOP) {
return isDigit(c22);
}
return isDigit(c1);
};
var stringToNumber = function(codePoints) {
var c6 = 0;
var sign = 1;
if (codePoints[c6] === PLUS_SIGN || codePoints[c6] === HYPHEN_MINUS) {
if (codePoints[c6] === HYPHEN_MINUS) {
sign = -1;
}
c6++;
}
var integers = [];
while (isDigit(codePoints[c6])) {
integers.push(codePoints[c6++]);
}
var int = integers.length ? parseInt(fromCodePoint$1.apply(void 0, integers), 10) : 0;
if (codePoints[c6] === FULL_STOP) {
c6++;
}
var fraction = [];
while (isDigit(codePoints[c6])) {
fraction.push(codePoints[c6++]);
}
var fracd = fraction.length;
var frac = fracd ? parseInt(fromCodePoint$1.apply(void 0, fraction), 10) : 0;
if (codePoints[c6] === E4 || codePoints[c6] === e4) {
c6++;
}
var expsign = 1;
if (codePoints[c6] === PLUS_SIGN || codePoints[c6] === HYPHEN_MINUS) {
if (codePoints[c6] === HYPHEN_MINUS) {
expsign = -1;
}
c6++;
}
var exponent2 = [];
while (isDigit(codePoints[c6])) {
exponent2.push(codePoints[c6++]);
}
var exp = exponent2.length ? parseInt(fromCodePoint$1.apply(void 0, exponent2), 10) : 0;
return sign * (int + frac * Math.pow(10, -fracd)) * Math.pow(10, expsign * exp);
};
var LEFT_PARENTHESIS_TOKEN = {
type: 2
};
var RIGHT_PARENTHESIS_TOKEN = {
type: 3
};
var COMMA_TOKEN = { type: 4 };
var SUFFIX_MATCH_TOKEN = { type: 13 };
var PREFIX_MATCH_TOKEN = { type: 8 };
var COLUMN_TOKEN = { type: 21 };
var DASH_MATCH_TOKEN = { type: 9 };
var INCLUDE_MATCH_TOKEN = { type: 10 };
var LEFT_CURLY_BRACKET_TOKEN = {
type: 11
};
var RIGHT_CURLY_BRACKET_TOKEN = {
type: 12
};
var SUBSTRING_MATCH_TOKEN = { type: 14 };
var BAD_URL_TOKEN = { type: 23 };
var BAD_STRING_TOKEN = { type: 1 };
var CDO_TOKEN = { type: 25 };
var CDC_TOKEN = { type: 24 };
var COLON_TOKEN = { type: 26 };
var SEMICOLON_TOKEN = { type: 27 };
var LEFT_SQUARE_BRACKET_TOKEN = {
type: 28
};
var RIGHT_SQUARE_BRACKET_TOKEN = {
type: 29
};
var WHITESPACE_TOKEN = { type: 31 };
var EOF_TOKEN = { type: 32 };
var Tokenizer = function() {
function Tokenizer2() {
this._value = [];
}
Tokenizer2.prototype.write = function(chunk) {
this._value = this._value.concat(toCodePoints$1(chunk));
};
Tokenizer2.prototype.read = function() {
var tokens = [];
var token = this.consumeToken();
while (token !== EOF_TOKEN) {
tokens.push(token);
token = this.consumeToken();
}
return tokens;
};
Tokenizer2.prototype.consumeToken = function() {
var codePoint = this.consumeCodePoint();
switch (codePoint) {
case QUOTATION_MARK:
return this.consumeStringToken(QUOTATION_MARK);
case NUMBER_SIGN:
var c1 = this.peekCodePoint(0);
var c22 = this.peekCodePoint(1);
var c32 = this.peekCodePoint(2);
if (isNameCodePoint(c1) || isValidEscape(c22, c32)) {
var flags2 = isIdentifierStart(c1, c22, c32) ? FLAG_ID : FLAG_UNRESTRICTED;
var value = this.consumeName();
return { type: 5, value, flags: flags2 };
}
break;
case DOLLAR_SIGN:
if (this.peekCodePoint(0) === EQUALS_SIGN) {
this.consumeCodePoint();
return SUFFIX_MATCH_TOKEN;
}
break;
case APOSTROPHE:
return this.consumeStringToken(APOSTROPHE);
case LEFT_PARENTHESIS:
return LEFT_PARENTHESIS_TOKEN;
case RIGHT_PARENTHESIS:
return RIGHT_PARENTHESIS_TOKEN;
case ASTERISK:
if (this.peekCodePoint(0) === EQUALS_SIGN) {
this.consumeCodePoint();
return SUBSTRING_MATCH_TOKEN;
}
break;
case PLUS_SIGN:
if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {
this.reconsumeCodePoint(codePoint);
return this.consumeNumericToken();
}
break;
case COMMA:
return COMMA_TOKEN;
case HYPHEN_MINUS:
var e1 = codePoint;
var e22 = this.peekCodePoint(0);
var e32 = this.peekCodePoint(1);
if (isNumberStart(e1, e22, e32)) {
this.reconsumeCodePoint(codePoint);
return this.consumeNumericToken();
}
if (isIdentifierStart(e1, e22, e32)) {
this.reconsumeCodePoint(codePoint);
return this.consumeIdentLikeToken();
}
if (e22 === HYPHEN_MINUS && e32 === GREATER_THAN_SIGN) {
this.consumeCodePoint();
this.consumeCodePoint();
return CDC_TOKEN;
}
break;
case FULL_STOP:
if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {
this.reconsumeCodePoint(codePoint);
return this.consumeNumericToken();
}
break;
case SOLIDUS:
if (this.peekCodePoint(0) === ASTERISK) {
this.consumeCodePoint();
while (true) {
var c6 = this.consumeCodePoint();
if (c6 === ASTERISK) {
c6 = this.consumeCodePoint();
if (c6 === SOLIDUS) {
return this.consumeToken();
}
}
if (c6 === EOF2) {
return this.consumeToken();
}
}
}
break;
case COLON:
return COLON_TOKEN;
case SEMICOLON:
return SEMICOLON_TOKEN;
case LESS_THAN_SIGN:
if (this.peekCodePoint(0) === EXCLAMATION_MARK && this.peekCodePoint(1) === HYPHEN_MINUS && this.peekCodePoint(2) === HYPHEN_MINUS) {
this.consumeCodePoint();
this.consumeCodePoint();
return CDO_TOKEN;
}
break;
case COMMERCIAL_AT:
var a1 = this.peekCodePoint(0);
var a22 = this.peekCodePoint(1);
var a32 = this.peekCodePoint(2);
if (isIdentifierStart(a1, a22, a32)) {
var value = this.consumeName();
return { type: 7, value };
}
break;
case LEFT_SQUARE_BRACKET:
return LEFT_SQUARE_BRACKET_TOKEN;
case REVERSE_SOLIDUS:
if (isValidEscape(codePoint, this.peekCodePoint(0))) {
this.reconsumeCodePoint(codePoint);
return this.consumeIdentLikeToken();
}
break;
case RIGHT_SQUARE_BRACKET:
return RIGHT_SQUARE_BRACKET_TOKEN;
case CIRCUMFLEX_ACCENT:
if (this.peekCodePoint(0) === EQUALS_SIGN) {
this.consumeCodePoint();
return PREFIX_MATCH_TOKEN;
}
break;
case LEFT_CURLY_BRACKET:
return LEFT_CURLY_BRACKET_TOKEN;
case RIGHT_CURLY_BRACKET:
return RIGHT_CURLY_BRACKET_TOKEN;
case u4:
case U2:
var u1 = this.peekCodePoint(0);
var u22 = this.peekCodePoint(1);
if (u1 === PLUS_SIGN && (isHex(u22) || u22 === QUESTION_MARK)) {
this.consumeCodePoint();
this.consumeUnicodeRangeToken();
}
this.reconsumeCodePoint(codePoint);
return this.consumeIdentLikeToken();
case VERTICAL_LINE:
if (this.peekCodePoint(0) === EQUALS_SIGN) {
this.consumeCodePoint();
return DASH_MATCH_TOKEN;
}
if (this.peekCodePoint(0) === VERTICAL_LINE) {
this.consumeCodePoint();
return COLUMN_TOKEN;
}
break;
case TILDE:
if (this.peekCodePoint(0) === EQUALS_SIGN) {
this.consumeCodePoint();
return INCLUDE_MATCH_TOKEN;
}
break;
case EOF2:
return EOF_TOKEN;
}
if (isWhiteSpace(codePoint)) {
this.consumeWhiteSpace();
return WHITESPACE_TOKEN;
}
if (isDigit(codePoint)) {
this.reconsumeCodePoint(codePoint);
return this.consumeNumericToken();
}
if (isNameStartCodePoint(codePoint)) {
this.reconsumeCodePoint(codePoint);
return this.consumeIdentLikeToken();
}
return { type: 6, value: fromCodePoint$1(codePoint) };
};
Tokenizer2.prototype.consumeCodePoint = function() {
var value = this._value.shift();
return typeof value === "undefined" ? -1 : value;
};
Tokenizer2.prototype.reconsumeCodePoint = function(codePoint) {
this._value.unshift(codePoint);
};
Tokenizer2.prototype.peekCodePoint = function(delta) {
if (delta >= this._value.length) {
return -1;
}
return this._value[delta];
};
Tokenizer2.prototype.consumeUnicodeRangeToken = function() {
var digits = [];
var codePoint = this.consumeCodePoint();
while (isHex(codePoint) && digits.length < 6) {
digits.push(codePoint);
codePoint = this.consumeCodePoint();
}
var questionMarks = false;
while (codePoint === QUESTION_MARK && digits.length < 6) {
digits.push(codePoint);
codePoint = this.consumeCodePoint();
questionMarks = true;
}
if (questionMarks) {
var start_1 = parseInt(fromCodePoint$1.apply(void 0, digits.map(function(digit) {
return digit === QUESTION_MARK ? ZERO3 : digit;
})), 16);
var end = parseInt(fromCodePoint$1.apply(void 0, digits.map(function(digit) {
return digit === QUESTION_MARK ? F3 : digit;
})), 16);
return { type: 30, start: start_1, end };
}
var start = parseInt(fromCodePoint$1.apply(void 0, digits), 16);
if (this.peekCodePoint(0) === HYPHEN_MINUS && isHex(this.peekCodePoint(1))) {
this.consumeCodePoint();
codePoint = this.consumeCodePoint();
var endDigits = [];
while (isHex(codePoint) && endDigits.length < 6) {
endDigits.push(codePoint);
codePoint = this.consumeCodePoint();
}
var end = parseInt(fromCodePoint$1.apply(void 0, endDigits), 16);
return { type: 30, start, end };
} else {
return { type: 30, start, end: start };
}
};
Tokenizer2.prototype.consumeIdentLikeToken = function() {
var value = this.consumeName();
if (value.toLowerCase() === "url" && this.peekCodePoint(0) === LEFT_PARENTHESIS) {
this.consumeCodePoint();
return this.consumeUrlToken();
} else if (this.peekCodePoint(0) === LEFT_PARENTHESIS) {
this.consumeCodePoint();
return { type: 19, value };
}
return { type: 20, value };
};
Tokenizer2.prototype.consumeUrlToken = function() {
var value = [];
this.consumeWhiteSpace();
if (this.peekCodePoint(0) === EOF2) {
return { type: 22, value: "" };
}
var next = this.peekCodePoint(0);
if (next === APOSTROPHE || next === QUOTATION_MARK) {
var stringToken = this.consumeStringToken(this.consumeCodePoint());
if (stringToken.type === 0) {
this.consumeWhiteSpace();
if (this.peekCodePoint(0) === EOF2 || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {
this.consumeCodePoint();
return { type: 22, value: stringToken.value };
}
}
this.consumeBadUrlRemnants();
return BAD_URL_TOKEN;
}
while (true) {
var codePoint = this.consumeCodePoint();
if (codePoint === EOF2 || codePoint === RIGHT_PARENTHESIS) {
return { type: 22, value: fromCodePoint$1.apply(void 0, value) };
} else if (isWhiteSpace(codePoint)) {
this.consumeWhiteSpace();
if (this.peekCodePoint(0) === EOF2 || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {
this.consumeCodePoint();
return { type: 22, value: fromCodePoint$1.apply(void 0, value) };
}
this.consumeBadUrlRemnants();
return BAD_URL_TOKEN;
} else if (codePoint === QUOTATION_MARK || codePoint === APOSTROPHE || codePoint === LEFT_PARENTHESIS || isNonPrintableCodePoint(codePoint)) {
this.consumeBadUrlRemnants();
return BAD_URL_TOKEN;
} else if (codePoint === REVERSE_SOLIDUS) {
if (isValidEscape(codePoint, this.peekCodePoint(0))) {
value.push(this.consumeEscapedCodePoint());
} else {
this.consumeBadUrlRemnants();
return BAD_URL_TOKEN;
}
} else {
value.push(codePoint);
}
}
};
Tokenizer2.prototype.consumeWhiteSpace = function() {
while (isWhiteSpace(this.peekCodePoint(0))) {
this.consumeCodePoint();
}
};
Tokenizer2.prototype.consumeBadUrlRemnants = function() {
while (true) {
var codePoint = this.consumeCodePoint();
if (codePoint === RIGHT_PARENTHESIS || codePoint === EOF2) {
return;
}
if (isValidEscape(codePoint, this.peekCodePoint(0))) {
this.consumeEscapedCodePoint();
}
}
};
Tokenizer2.prototype.consumeStringSlice = function(count2) {
var SLICE_STACK_SIZE = 6e4;
var value = "";
while (count2 > 0) {
var amount = Math.min(SLICE_STACK_SIZE, count2);
value += fromCodePoint$1.apply(void 0, this._value.splice(0, amount));
count2 -= amount;
}
this._value.shift();
return value;
};
Tokenizer2.prototype.consumeStringToken = function(endingCodePoint) {
var value = "";
var i5 = 0;
do {
var codePoint = this._value[i5];
if (codePoint === EOF2 || codePoint === void 0 || codePoint === endingCodePoint) {
value += this.consumeStringSlice(i5);
return { type: 0, value };
}
if (codePoint === LINE_FEED) {
this._value.splice(0, i5);
return BAD_STRING_TOKEN;
}
if (codePoint === REVERSE_SOLIDUS) {
var next = this._value[i5 + 1];
if (next !== EOF2 && next !== void 0) {
if (next === LINE_FEED) {
value += this.consumeStringSlice(i5);
i5 = -1;
this._value.shift();
} else if (isValidEscape(codePoint, next)) {
value += this.consumeStringSlice(i5);
value += fromCodePoint$1(this.consumeEscapedCodePoint());
i5 = -1;
}
}
}
i5++;
} while (true);
};
Tokenizer2.prototype.consumeNumber = function() {
var repr = [];
var type2 = FLAG_INTEGER;
var c1 = this.peekCodePoint(0);
if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {
repr.push(this.consumeCodePoint());
}
while (isDigit(this.peekCodePoint(0))) {
repr.push(this.consumeCodePoint());
}
c1 = this.peekCodePoint(0);
var c22 = this.peekCodePoint(1);
if (c1 === FULL_STOP && isDigit(c22)) {
repr.push(this.consumeCodePoint(), this.consumeCodePoint());
type2 = FLAG_NUMBER;
while (isDigit(this.peekCodePoint(0))) {
repr.push(this.consumeCodePoint());
}
}
c1 = this.peekCodePoint(0);
c22 = this.peekCodePoint(1);
var c32 = this.peekCodePoint(2);
if ((c1 === E4 || c1 === e4) && ((c22 === PLUS_SIGN || c22 === HYPHEN_MINUS) && isDigit(c32) || isDigit(c22))) {
repr.push(this.consumeCodePoint(), this.consumeCodePoint());
type2 = FLAG_NUMBER;
while (isDigit(this.peekCodePoint(0))) {
repr.push(this.consumeCodePoint());
}
}
return [stringToNumber(repr), type2];
};
Tokenizer2.prototype.consumeNumericToken = function() {
var _a3 = this.consumeNumber(), number2 = _a3[0], flags2 = _a3[1];
var c1 = this.peekCodePoint(0);
var c22 = this.peekCodePoint(1);
var c32 = this.peekCodePoint(2);
if (isIdentifierStart(c1, c22, c32)) {
var unit2 = this.consumeName();
return { type: 15, number: number2, flags: flags2, unit: unit2 };
}
if (c1 === PERCENTAGE_SIGN) {
this.consumeCodePoint();
return { type: 16, number: number2, flags: flags2 };
}
return { type: 17, number: number2, flags: flags2 };
};
Tokenizer2.prototype.consumeEscapedCodePoint = function() {
var codePoint = this.consumeCodePoint();
if (isHex(codePoint)) {
var hex2 = fromCodePoint$1(codePoint);
while (isHex(this.peekCodePoint(0)) && hex2.length < 6) {
hex2 += fromCodePoint$1(this.consumeCodePoint());
}
if (isWhiteSpace(this.peekCodePoint(0))) {
this.consumeCodePoint();
}
var hexCodePoint = parseInt(hex2, 16);
if (hexCodePoint === 0 || isSurrogateCodePoint(hexCodePoint) || hexCodePoint > 1114111) {
return REPLACEMENT_CHARACTER;
}
return hexCodePoint;
}
if (codePoint === EOF2) {
return REPLACEMENT_CHARACTER;
}
return codePoint;
};
Tokenizer2.prototype.consumeName = function() {
var result = "";
while (true) {
var codePoint = this.consumeCodePoint();
if (isNameCodePoint(codePoint)) {
result += fromCodePoint$1(codePoint);
} else if (isValidEscape(codePoint, this.peekCodePoint(0))) {
result += fromCodePoint$1(this.consumeEscapedCodePoint());
} else {
this.reconsumeCodePoint(codePoint);
return result;
}
}
};
return Tokenizer2;
}();
var Parser3 = function() {
function Parser4(tokens) {
this._tokens = tokens;
}
Parser4.create = function(value) {
var tokenizer = new Tokenizer();
tokenizer.write(value);
return new Parser4(tokenizer.read());
};
Parser4.parseValue = function(value) {
return Parser4.create(value).parseComponentValue();
};
Parser4.parseValues = function(value) {
return Parser4.create(value).parseComponentValues();
};
Parser4.prototype.parseComponentValue = function() {
var token = this.consumeToken();
while (token.type === 31) {
token = this.consumeToken();
}
if (token.type === 32) {
throw new SyntaxError("Error parsing CSS component value, unexpected EOF");
}
this.reconsumeToken(token);
var value = this.consumeComponentValue();
do {
token = this.consumeToken();
} while (token.type === 31);
if (token.type === 32) {
return value;
}
throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one");
};
Parser4.prototype.parseComponentValues = function() {
var values2 = [];
while (true) {
var value = this.consumeComponentValue();
if (value.type === 32) {
return values2;
}
values2.push(value);
values2.push();
}
};
Parser4.prototype.consumeComponentValue = function() {
var token = this.consumeToken();
switch (token.type) {
case 11:
case 28:
case 2:
return this.consumeSimpleBlock(token.type);
case 19:
return this.consumeFunction(token);
}
return token;
};
Parser4.prototype.consumeSimpleBlock = function(type2) {
var block = { type: type2, values: [] };
var token = this.consumeToken();
while (true) {
if (token.type === 32 || isEndingTokenFor(token, type2)) {
return block;
}
this.reconsumeToken(token);
block.values.push(this.consumeComponentValue());
token = this.consumeToken();
}
};
Parser4.prototype.consumeFunction = function(functionToken) {
var cssFunction = {
name: functionToken.value,
values: [],
type: 18
};
while (true) {
var token = this.consumeToken();
if (token.type === 32 || token.type === 3) {
return cssFunction;
}
this.reconsumeToken(token);
cssFunction.values.push(this.consumeComponentValue());
}
};
Parser4.prototype.consumeToken = function() {
var token = this._tokens.shift();
return typeof token === "undefined" ? EOF_TOKEN : token;
};
Parser4.prototype.reconsumeToken = function(token) {
this._tokens.unshift(token);
};
return Parser4;
}();
var isDimensionToken = function(token) {
return token.type === 15;
};
var isNumberToken = function(token) {
return token.type === 17;
};
var isIdentToken = function(token) {
return token.type === 20;
};
var isStringToken = function(token) {
return token.type === 0;
};
var isIdentWithValue = function(token, value) {
return isIdentToken(token) && token.value === value;
};
var nonWhiteSpace = function(token) {
return token.type !== 31;
};
var nonFunctionArgSeparator = function(token) {
return token.type !== 31 && token.type !== 4;
};
var parseFunctionArgs = function(tokens) {
var args = [];
var arg = [];
tokens.forEach(function(token) {
if (token.type === 4) {
if (arg.length === 0) {
throw new Error("Error parsing function args, zero tokens for arg");
}
args.push(arg);
arg = [];
return;
}
if (token.type !== 31) {
arg.push(token);
}
});
if (arg.length) {
args.push(arg);
}
return args;
};
var isEndingTokenFor = function(token, type2) {
if (type2 === 11 && token.type === 12) {
return true;
}
if (type2 === 28 && token.type === 29) {
return true;
}
return type2 === 2 && token.type === 3;
};
var isLength2 = function(token) {
return token.type === 17 || token.type === 15;
};
var isLengthPercentage = function(token) {
return token.type === 16 || isLength2(token);
};
var parseLengthPercentageTuple = function(tokens) {
return tokens.length > 1 ? [tokens[0], tokens[1]] : [tokens[0]];
};
var ZERO_LENGTH = {
type: 17,
number: 0,
flags: FLAG_INTEGER
};
var FIFTY_PERCENT = {
type: 16,
number: 50,
flags: FLAG_INTEGER
};
var HUNDRED_PERCENT = {
type: 16,
number: 100,
flags: FLAG_INTEGER
};
var getAbsoluteValueForTuple = function(tuple, width, height) {
var x3 = tuple[0], y4 = tuple[1];
return [getAbsoluteValue(x3, width), getAbsoluteValue(typeof y4 !== "undefined" ? y4 : x3, height)];
};
var getAbsoluteValue = function(token, parent) {
if (token.type === 16) {
return token.number / 100 * parent;
}
if (isDimensionToken(token)) {
switch (token.unit) {
case "rem":
case "em":
return 16 * token.number;
case "px":
default:
return token.number;
}
}
return token.number;
};
var DEG = "deg";
var GRAD = "grad";
var RAD = "rad";
var TURN = "turn";
var angle = {
name: "angle",
parse: function(_context, value) {
if (value.type === 15) {
switch (value.unit) {
case DEG:
return Math.PI * value.number / 180;
case GRAD:
return Math.PI / 200 * value.number;
case RAD:
return value.number;
case TURN:
return Math.PI * 2 * value.number;
}
}
throw new Error("Unsupported angle type");
}
};
var isAngle = function(value) {
if (value.type === 15) {
if (value.unit === DEG || value.unit === GRAD || value.unit === RAD || value.unit === TURN) {
return true;
}
}
return false;
};
var parseNamedSide = function(tokens) {
var sideOrCorner = tokens.filter(isIdentToken).map(function(ident) {
return ident.value;
}).join(" ");
switch (sideOrCorner) {
case "to bottom right":
case "to right bottom":
case "left top":
case "top left":
return [ZERO_LENGTH, ZERO_LENGTH];
case "to top":
case "bottom":
return deg(0);
case "to bottom left":
case "to left bottom":
case "right top":
case "top right":
return [ZERO_LENGTH, HUNDRED_PERCENT];
case "to right":
case "left":
return deg(90);
case "to top left":
case "to left top":
case "right bottom":
case "bottom right":
return [HUNDRED_PERCENT, HUNDRED_PERCENT];
case "to bottom":
case "top":
return deg(180);
case "to top right":
case "to right top":
case "left bottom":
case "bottom left":
return [HUNDRED_PERCENT, ZERO_LENGTH];
case "to left":
case "right":
return deg(270);
}
return 0;
};
var deg = function(deg2) {
return Math.PI * deg2 / 180;
};
var color$1 = {
name: "color",
parse: function(context2, value) {
if (value.type === 18) {
var colorFunction = SUPPORTED_COLOR_FUNCTIONS[value.name];
if (typeof colorFunction === "undefined") {
throw new Error('Attempting to parse an unsupported color function "' + value.name + '"');
}
return colorFunction(context2, value.values);
}
if (value.type === 5) {
if (value.value.length === 3) {
var r3 = value.value.substring(0, 1);
var g3 = value.value.substring(1, 2);
var b3 = value.value.substring(2, 3);
return pack(parseInt(r3 + r3, 16), parseInt(g3 + g3, 16), parseInt(b3 + b3, 16), 1);
}
if (value.value.length === 4) {
var r3 = value.value.substring(0, 1);
var g3 = value.value.substring(1, 2);
var b3 = value.value.substring(2, 3);
var a5 = value.value.substring(3, 4);
return pack(parseInt(r3 + r3, 16), parseInt(g3 + g3, 16), parseInt(b3 + b3, 16), parseInt(a5 + a5, 16) / 255);
}
if (value.value.length === 6) {
var r3 = value.value.substring(0, 2);
var g3 = value.value.substring(2, 4);
var b3 = value.value.substring(4, 6);
return pack(parseInt(r3, 16), parseInt(g3, 16), parseInt(b3, 16), 1);
}
if (value.value.length === 8) {
var r3 = value.value.substring(0, 2);
var g3 = value.value.substring(2, 4);
var b3 = value.value.substring(4, 6);
var a5 = value.value.substring(6, 8);
return pack(parseInt(r3, 16), parseInt(g3, 16), parseInt(b3, 16), parseInt(a5, 16) / 255);
}
}
if (value.type === 20) {
var namedColor = COLORS[value.value.toUpperCase()];
if (typeof namedColor !== "undefined") {
return namedColor;
}
}
return COLORS.TRANSPARENT;
}
};
var isTransparent = function(color3) {
return (255 & color3) === 0;
};
var asString = function(color3) {
var alpha = 255 & color3;
var blue = 255 & color3 >> 8;
var green = 255 & color3 >> 16;
var red = 255 & color3 >> 24;
return alpha < 255 ? "rgba(" + red + "," + green + "," + blue + "," + alpha / 255 + ")" : "rgb(" + red + "," + green + "," + blue + ")";
};
var pack = function(r3, g3, b3, a5) {
return (r3 << 24 | g3 << 16 | b3 << 8 | Math.round(a5 * 255) << 0) >>> 0;
};
var getTokenColorValue = function(token, i5) {
if (token.type === 17) {
return token.number;
}
if (token.type === 16) {
var max8 = i5 === 3 ? 1 : 255;
return i5 === 3 ? token.number / 100 * max8 : Math.round(token.number / 100 * max8);
}
return 0;
};
var rgb2 = function(_context, args) {
var tokens = args.filter(nonFunctionArgSeparator);
if (tokens.length === 3) {
var _a3 = tokens.map(getTokenColorValue), r3 = _a3[0], g3 = _a3[1], b3 = _a3[2];
return pack(r3, g3, b3, 1);
}
if (tokens.length === 4) {
var _b3 = tokens.map(getTokenColorValue), r3 = _b3[0], g3 = _b3[1], b3 = _b3[2], a5 = _b3[3];
return pack(r3, g3, b3, a5);
}
return 0;
};
function hue2rgb(t1, t22, hue2) {
if (hue2 < 0) {
hue2 += 1;
}
if (hue2 >= 1) {
hue2 -= 1;
}
if (hue2 < 1 / 6) {
return (t22 - t1) * hue2 * 6 + t1;
} else if (hue2 < 1 / 2) {
return t22;
} else if (hue2 < 2 / 3) {
return (t22 - t1) * 6 * (2 / 3 - hue2) + t1;
} else {
return t1;
}
}
var hsl2 = function(context2, args) {
var tokens = args.filter(nonFunctionArgSeparator);
var hue2 = tokens[0], saturation = tokens[1], lightness = tokens[2], alpha = tokens[3];
var h4 = (hue2.type === 17 ? deg(hue2.number) : angle.parse(context2, hue2)) / (Math.PI * 2);
var s4 = isLengthPercentage(saturation) ? saturation.number / 100 : 0;
var l4 = isLengthPercentage(lightness) ? lightness.number / 100 : 0;
var a5 = typeof alpha !== "undefined" && isLengthPercentage(alpha) ? getAbsoluteValue(alpha, 1) : 1;
if (s4 === 0) {
return pack(l4 * 255, l4 * 255, l4 * 255, 1);
}
var t22 = l4 <= 0.5 ? l4 * (s4 + 1) : l4 + s4 - l4 * s4;
var t1 = l4 * 2 - t22;
var r3 = hue2rgb(t1, t22, h4 + 1 / 3);
var g3 = hue2rgb(t1, t22, h4);
var b3 = hue2rgb(t1, t22, h4 - 1 / 3);
return pack(r3 * 255, g3 * 255, b3 * 255, a5);
};
var SUPPORTED_COLOR_FUNCTIONS = {
hsl: hsl2,
hsla: hsl2,
rgb: rgb2,
rgba: rgb2
};
var parseColor = function(context2, value) {
return color$1.parse(context2, Parser3.create(value).parseComponentValue());
};
var COLORS = {
ALICEBLUE: 4042850303,
ANTIQUEWHITE: 4209760255,
AQUA: 16777215,
AQUAMARINE: 2147472639,
AZURE: 4043309055,
BEIGE: 4126530815,
BISQUE: 4293182719,
BLACK: 255,
BLANCHEDALMOND: 4293643775,
BLUE: 65535,
BLUEVIOLET: 2318131967,
BROWN: 2771004159,
BURLYWOOD: 3736635391,
CADETBLUE: 1604231423,
CHARTREUSE: 2147418367,
CHOCOLATE: 3530104575,
CORAL: 4286533887,
CORNFLOWERBLUE: 1687547391,
CORNSILK: 4294499583,
CRIMSON: 3692313855,
CYAN: 16777215,
DARKBLUE: 35839,
DARKCYAN: 9145343,
DARKGOLDENROD: 3095837695,
DARKGRAY: 2846468607,
DARKGREEN: 6553855,
DARKGREY: 2846468607,
DARKKHAKI: 3182914559,
DARKMAGENTA: 2332068863,
DARKOLIVEGREEN: 1433087999,
DARKORANGE: 4287365375,
DARKORCHID: 2570243327,
DARKRED: 2332033279,
DARKSALMON: 3918953215,
DARKSEAGREEN: 2411499519,
DARKSLATEBLUE: 1211993087,
DARKSLATEGRAY: 793726975,
DARKSLATEGREY: 793726975,
DARKTURQUOISE: 13554175,
DARKVIOLET: 2483082239,
DEEPPINK: 4279538687,
DEEPSKYBLUE: 12582911,
DIMGRAY: 1768516095,
DIMGREY: 1768516095,
DODGERBLUE: 512819199,
FIREBRICK: 2988581631,
FLORALWHITE: 4294635775,
FORESTGREEN: 579543807,
FUCHSIA: 4278255615,
GAINSBORO: 3705462015,
GHOSTWHITE: 4177068031,
GOLD: 4292280575,
GOLDENROD: 3668254975,
GRAY: 2155905279,
GREEN: 8388863,
GREENYELLOW: 2919182335,
GREY: 2155905279,
HONEYDEW: 4043305215,
HOTPINK: 4285117695,
INDIANRED: 3445382399,
INDIGO: 1258324735,
IVORY: 4294963455,
KHAKI: 4041641215,
LAVENDER: 3873897215,
LAVENDERBLUSH: 4293981695,
LAWNGREEN: 2096890111,
LEMONCHIFFON: 4294626815,
LIGHTBLUE: 2916673279,
LIGHTCORAL: 4034953471,
LIGHTCYAN: 3774873599,
LIGHTGOLDENRODYELLOW: 4210742015,
LIGHTGRAY: 3553874943,
LIGHTGREEN: 2431553791,
LIGHTGREY: 3553874943,
LIGHTPINK: 4290167295,
LIGHTSALMON: 4288707327,
LIGHTSEAGREEN: 548580095,
LIGHTSKYBLUE: 2278488831,
LIGHTSLATEGRAY: 2005441023,
LIGHTSLATEGREY: 2005441023,
LIGHTSTEELBLUE: 2965692159,
LIGHTYELLOW: 4294959359,
LIME: 16711935,
LIMEGREEN: 852308735,
LINEN: 4210091775,
MAGENTA: 4278255615,
MAROON: 2147483903,
MEDIUMAQUAMARINE: 1724754687,
MEDIUMBLUE: 52735,
MEDIUMORCHID: 3126187007,
MEDIUMPURPLE: 2473647103,
MEDIUMSEAGREEN: 1018393087,
MEDIUMSLATEBLUE: 2070474495,
MEDIUMSPRINGGREEN: 16423679,
MEDIUMTURQUOISE: 1221709055,
MEDIUMVIOLETRED: 3340076543,
MIDNIGHTBLUE: 421097727,
MINTCREAM: 4127193855,
MISTYROSE: 4293190143,
MOCCASIN: 4293178879,
NAVAJOWHITE: 4292783615,
NAVY: 33023,
OLDLACE: 4260751103,
OLIVE: 2155872511,
OLIVEDRAB: 1804477439,
ORANGE: 4289003775,
ORANGERED: 4282712319,
ORCHID: 3664828159,
PALEGOLDENROD: 4008225535,
PALEGREEN: 2566625535,
PALETURQUOISE: 2951671551,
PALEVIOLETRED: 3681588223,
PAPAYAWHIP: 4293907967,
PEACHPUFF: 4292524543,
PERU: 3448061951,
PINK: 4290825215,
PLUM: 3718307327,
POWDERBLUE: 2967529215,
PURPLE: 2147516671,
REBECCAPURPLE: 1714657791,
RED: 4278190335,
ROSYBROWN: 3163525119,
ROYALBLUE: 1097458175,
SADDLEBROWN: 2336560127,
SALMON: 4202722047,
SANDYBROWN: 4104413439,
SEAGREEN: 780883967,
SEASHELL: 4294307583,
SIENNA: 2689740287,
SILVER: 3233857791,
SKYBLUE: 2278484991,
SLATEBLUE: 1784335871,
SLATEGRAY: 1887473919,
SLATEGREY: 1887473919,
SNOW: 4294638335,
SPRINGGREEN: 16744447,
STEELBLUE: 1182971135,
TAN: 3535047935,
TEAL: 8421631,
THISTLE: 3636451583,
TOMATO: 4284696575,
TRANSPARENT: 0,
TURQUOISE: 1088475391,
VIOLET: 4001558271,
WHEAT: 4125012991,
WHITE: 4294967295,
WHITESMOKE: 4126537215,
YELLOW: 4294902015,
YELLOWGREEN: 2597139199
};
var BACKGROUND_CLIP;
(function(BACKGROUND_CLIP2) {
BACKGROUND_CLIP2[BACKGROUND_CLIP2["BORDER_BOX"] = 0] = "BORDER_BOX";
BACKGROUND_CLIP2[BACKGROUND_CLIP2["PADDING_BOX"] = 1] = "PADDING_BOX";
BACKGROUND_CLIP2[BACKGROUND_CLIP2["CONTENT_BOX"] = 2] = "CONTENT_BOX";
})(BACKGROUND_CLIP || (BACKGROUND_CLIP = {}));
var backgroundClip = {
name: "background-clip",
initialValue: "border-box",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return tokens.map(function(token) {
if (isIdentToken(token)) {
switch (token.value) {
case "padding-box":
return BACKGROUND_CLIP.PADDING_BOX;
case "content-box":
return BACKGROUND_CLIP.CONTENT_BOX;
}
}
return BACKGROUND_CLIP.BORDER_BOX;
});
}
};
var backgroundColor = {
name: "background-color",
initialValue: "transparent",
prefix: false,
type: 3,
format: "color"
};
var parseColorStop = function(context2, args) {
var color3 = color$1.parse(context2, args[0]);
var stop = args[1];
return stop && isLengthPercentage(stop) ? { color: color3, stop } : { color: color3, stop: null };
};
var processColorStops = function(stops, lineLength) {
var first2 = stops[0];
var last2 = stops[stops.length - 1];
if (first2.stop === null) {
first2.stop = ZERO_LENGTH;
}
if (last2.stop === null) {
last2.stop = HUNDRED_PERCENT;
}
var processStops = [];
var previous = 0;
for (var i5 = 0; i5 < stops.length; i5++) {
var stop_1 = stops[i5].stop;
if (stop_1 !== null) {
var absoluteValue = getAbsoluteValue(stop_1, lineLength);
if (absoluteValue > previous) {
processStops.push(absoluteValue);
} else {
processStops.push(previous);
}
previous = absoluteValue;
} else {
processStops.push(null);
}
}
var gapBegin = null;
for (var i5 = 0; i5 < processStops.length; i5++) {
var stop_2 = processStops[i5];
if (stop_2 === null) {
if (gapBegin === null) {
gapBegin = i5;
}
} else if (gapBegin !== null) {
var gapLength = i5 - gapBegin;
var beforeGap = processStops[gapBegin - 1];
var gapValue = (stop_2 - beforeGap) / (gapLength + 1);
for (var g3 = 1; g3 <= gapLength; g3++) {
processStops[gapBegin + g3 - 1] = gapValue * g3;
}
gapBegin = null;
}
}
return stops.map(function(_a3, i6) {
var color3 = _a3.color;
return { color: color3, stop: Math.max(Math.min(1, processStops[i6] / lineLength), 0) };
});
};
var getAngleFromCorner = function(corner, width, height) {
var centerX = width / 2;
var centerY = height / 2;
var x3 = getAbsoluteValue(corner[0], width) - centerX;
var y4 = centerY - getAbsoluteValue(corner[1], height);
return (Math.atan2(y4, x3) + Math.PI * 2) % (Math.PI * 2);
};
var calculateGradientDirection = function(angle2, width, height) {
var radian = typeof angle2 === "number" ? angle2 : getAngleFromCorner(angle2, width, height);
var lineLength = Math.abs(width * Math.sin(radian)) + Math.abs(height * Math.cos(radian));
var halfWidth = width / 2;
var halfHeight = height / 2;
var halfLineLength = lineLength / 2;
var yDiff = Math.sin(radian - Math.PI / 2) * halfLineLength;
var xDiff = Math.cos(radian - Math.PI / 2) * halfLineLength;
return [lineLength, halfWidth - xDiff, halfWidth + xDiff, halfHeight - yDiff, halfHeight + yDiff];
};
var distance = function(a5, b3) {
return Math.sqrt(a5 * a5 + b3 * b3);
};
var findCorner = function(width, height, x3, y4, closest) {
var corners = [
[0, 0],
[0, height],
[width, 0],
[width, height]
];
return corners.reduce(function(stat, corner) {
var cx = corner[0], cy = corner[1];
var d3 = distance(x3 - cx, y4 - cy);
if (closest ? d3 < stat.optimumDistance : d3 > stat.optimumDistance) {
return {
optimumCorner: corner,
optimumDistance: d3
};
}
return stat;
}, {
optimumDistance: closest ? Infinity : -Infinity,
optimumCorner: null
}).optimumCorner;
};
var calculateRadius = function(gradient, x3, y4, width, height) {
var rx = 0;
var ry = 0;
switch (gradient.size) {
case CSSRadialExtent.CLOSEST_SIDE:
if (gradient.shape === CSSRadialShape.CIRCLE) {
rx = ry = Math.min(Math.abs(x3), Math.abs(x3 - width), Math.abs(y4), Math.abs(y4 - height));
} else if (gradient.shape === CSSRadialShape.ELLIPSE) {
rx = Math.min(Math.abs(x3), Math.abs(x3 - width));
ry = Math.min(Math.abs(y4), Math.abs(y4 - height));
}
break;
case CSSRadialExtent.CLOSEST_CORNER:
if (gradient.shape === CSSRadialShape.CIRCLE) {
rx = ry = Math.min(distance(x3, y4), distance(x3, y4 - height), distance(x3 - width, y4), distance(x3 - width, y4 - height));
} else if (gradient.shape === CSSRadialShape.ELLIPSE) {
var c6 = Math.min(Math.abs(y4), Math.abs(y4 - height)) / Math.min(Math.abs(x3), Math.abs(x3 - width));
var _a3 = findCorner(width, height, x3, y4, true), cx = _a3[0], cy = _a3[1];
rx = distance(cx - x3, (cy - y4) / c6);
ry = c6 * rx;
}
break;
case CSSRadialExtent.FARTHEST_SIDE:
if (gradient.shape === CSSRadialShape.CIRCLE) {
rx = ry = Math.max(Math.abs(x3), Math.abs(x3 - width), Math.abs(y4), Math.abs(y4 - height));
} else if (gradient.shape === CSSRadialShape.ELLIPSE) {
rx = Math.max(Math.abs(x3), Math.abs(x3 - width));
ry = Math.max(Math.abs(y4), Math.abs(y4 - height));
}
break;
case CSSRadialExtent.FARTHEST_CORNER:
if (gradient.shape === CSSRadialShape.CIRCLE) {
rx = ry = Math.max(distance(x3, y4), distance(x3, y4 - height), distance(x3 - width, y4), distance(x3 - width, y4 - height));
} else if (gradient.shape === CSSRadialShape.ELLIPSE) {
var c6 = Math.max(Math.abs(y4), Math.abs(y4 - height)) / Math.max(Math.abs(x3), Math.abs(x3 - width));
var _b3 = findCorner(width, height, x3, y4, false), cx = _b3[0], cy = _b3[1];
rx = distance(cx - x3, (cy - y4) / c6);
ry = c6 * rx;
}
break;
}
if (Array.isArray(gradient.size)) {
rx = getAbsoluteValue(gradient.size[0], width);
ry = gradient.size.length === 2 ? getAbsoluteValue(gradient.size[1], height) : rx;
}
return [rx, ry];
};
var linearGradient = function(context2, tokens) {
var angle$1 = deg(180);
var stops = [];
parseFunctionArgs(tokens).forEach(function(arg, i5) {
if (i5 === 0) {
var firstToken = arg[0];
if (firstToken.type === 20 && firstToken.value === "to") {
angle$1 = parseNamedSide(arg);
return;
} else if (isAngle(firstToken)) {
angle$1 = angle.parse(context2, firstToken);
return;
}
}
var colorStop = parseColorStop(context2, arg);
stops.push(colorStop);
});
return { angle: angle$1, stops, type: CSSImageType.LINEAR_GRADIENT };
};
var prefixLinearGradient = function(context2, tokens) {
var angle$1 = deg(180);
var stops = [];
parseFunctionArgs(tokens).forEach(function(arg, i5) {
if (i5 === 0) {
var firstToken = arg[0];
if (firstToken.type === 20 && ["top", "left", "right", "bottom"].indexOf(firstToken.value) !== -1) {
angle$1 = parseNamedSide(arg);
return;
} else if (isAngle(firstToken)) {
angle$1 = (angle.parse(context2, firstToken) + deg(270)) % deg(360);
return;
}
}
var colorStop = parseColorStop(context2, arg);
stops.push(colorStop);
});
return {
angle: angle$1,
stops,
type: CSSImageType.LINEAR_GRADIENT
};
};
var webkitGradient = function(context2, tokens) {
var angle2 = deg(180);
var stops = [];
var type2 = CSSImageType.LINEAR_GRADIENT;
var shape = CSSRadialShape.CIRCLE;
var size = CSSRadialExtent.FARTHEST_CORNER;
var position2 = [];
parseFunctionArgs(tokens).forEach(function(arg, i5) {
var firstToken = arg[0];
if (i5 === 0) {
if (isIdentToken(firstToken) && firstToken.value === "linear") {
type2 = CSSImageType.LINEAR_GRADIENT;
return;
} else if (isIdentToken(firstToken) && firstToken.value === "radial") {
type2 = CSSImageType.RADIAL_GRADIENT;
return;
}
}
if (firstToken.type === 18) {
if (firstToken.name === "from") {
var color3 = color$1.parse(context2, firstToken.values[0]);
stops.push({ stop: ZERO_LENGTH, color: color3 });
} else if (firstToken.name === "to") {
var color3 = color$1.parse(context2, firstToken.values[0]);
stops.push({ stop: HUNDRED_PERCENT, color: color3 });
} else if (firstToken.name === "color-stop") {
var values2 = firstToken.values.filter(nonFunctionArgSeparator);
if (values2.length === 2) {
var color3 = color$1.parse(context2, values2[1]);
var stop_1 = values2[0];
if (isNumberToken(stop_1)) {
stops.push({
stop: { type: 16, number: stop_1.number * 100, flags: stop_1.flags },
color: color3
});
}
}
}
}
});
return type2 === CSSImageType.LINEAR_GRADIENT ? {
angle: (angle2 + deg(180)) % deg(360),
stops,
type: type2
} : { size, shape, stops, position: position2, type: type2 };
};
var CLOSEST_SIDE = "closest-side";
var FARTHEST_SIDE = "farthest-side";
var CLOSEST_CORNER = "closest-corner";
var FARTHEST_CORNER = "farthest-corner";
var CIRCLE = "circle";
var ELLIPSE = "ellipse";
var COVER = "cover";
var CONTAIN = "contain";
var radialGradient = function(context2, tokens) {
var shape = CSSRadialShape.CIRCLE;
var size = CSSRadialExtent.FARTHEST_CORNER;
var stops = [];
var position2 = [];
parseFunctionArgs(tokens).forEach(function(arg, i5) {
var isColorStop = true;
if (i5 === 0) {
var isAtPosition_1 = false;
isColorStop = arg.reduce(function(acc, token) {
if (isAtPosition_1) {
if (isIdentToken(token)) {
switch (token.value) {
case "center":
position2.push(FIFTY_PERCENT);
return acc;
case "top":
case "left":
position2.push(ZERO_LENGTH);
return acc;
case "right":
case "bottom":
position2.push(HUNDRED_PERCENT);
return acc;
}
} else if (isLengthPercentage(token) || isLength2(token)) {
position2.push(token);
}
} else if (isIdentToken(token)) {
switch (token.value) {
case CIRCLE:
shape = CSSRadialShape.CIRCLE;
return false;
case ELLIPSE:
shape = CSSRadialShape.ELLIPSE;
return false;
case "at":
isAtPosition_1 = true;
return false;
case CLOSEST_SIDE:
size = CSSRadialExtent.CLOSEST_SIDE;
return false;
case COVER:
case FARTHEST_SIDE:
size = CSSRadialExtent.FARTHEST_SIDE;
return false;
case CONTAIN:
case CLOSEST_CORNER:
size = CSSRadialExtent.CLOSEST_CORNER;
return false;
case FARTHEST_CORNER:
size = CSSRadialExtent.FARTHEST_CORNER;
return false;
}
} else if (isLength2(token) || isLengthPercentage(token)) {
if (!Array.isArray(size)) {
size = [];
}
size.push(token);
return false;
}
return acc;
}, isColorStop);
}
if (isColorStop) {
var colorStop = parseColorStop(context2, arg);
stops.push(colorStop);
}
});
return { size, shape, stops, position: position2, type: CSSImageType.RADIAL_GRADIENT };
};
var prefixRadialGradient = function(context2, tokens) {
var shape = CSSRadialShape.CIRCLE;
var size = CSSRadialExtent.FARTHEST_CORNER;
var stops = [];
var position2 = [];
parseFunctionArgs(tokens).forEach(function(arg, i5) {
var isColorStop = true;
if (i5 === 0) {
isColorStop = arg.reduce(function(acc, token) {
if (isIdentToken(token)) {
switch (token.value) {
case "center":
position2.push(FIFTY_PERCENT);
return false;
case "top":
case "left":
position2.push(ZERO_LENGTH);
return false;
case "right":
case "bottom":
position2.push(HUNDRED_PERCENT);
return false;
}
} else if (isLengthPercentage(token) || isLength2(token)) {
position2.push(token);
return false;
}
return acc;
}, isColorStop);
} else if (i5 === 1) {
isColorStop = arg.reduce(function(acc, token) {
if (isIdentToken(token)) {
switch (token.value) {
case CIRCLE:
shape = CSSRadialShape.CIRCLE;
return false;
case ELLIPSE:
shape = CSSRadialShape.ELLIPSE;
return false;
case CONTAIN:
case CLOSEST_SIDE:
size = CSSRadialExtent.CLOSEST_SIDE;
return false;
case FARTHEST_SIDE:
size = CSSRadialExtent.FARTHEST_SIDE;
return false;
case CLOSEST_CORNER:
size = CSSRadialExtent.CLOSEST_CORNER;
return false;
case COVER:
case FARTHEST_CORNER:
size = CSSRadialExtent.FARTHEST_CORNER;
return false;
}
} else if (isLength2(token) || isLengthPercentage(token)) {
if (!Array.isArray(size)) {
size = [];
}
size.push(token);
return false;
}
return acc;
}, isColorStop);
}
if (isColorStop) {
var colorStop = parseColorStop(context2, arg);
stops.push(colorStop);
}
});
return { size, shape, stops, position: position2, type: CSSImageType.RADIAL_GRADIENT };
};
var CSSImageType;
(function(CSSImageType2) {
CSSImageType2[CSSImageType2["URL"] = 0] = "URL";
CSSImageType2[CSSImageType2["LINEAR_GRADIENT"] = 1] = "LINEAR_GRADIENT";
CSSImageType2[CSSImageType2["RADIAL_GRADIENT"] = 2] = "RADIAL_GRADIENT";
})(CSSImageType || (CSSImageType = {}));
var isLinearGradient = function(background) {
return background.type === CSSImageType.LINEAR_GRADIENT;
};
var isRadialGradient = function(background) {
return background.type === CSSImageType.RADIAL_GRADIENT;
};
var CSSRadialShape;
(function(CSSRadialShape2) {
CSSRadialShape2[CSSRadialShape2["CIRCLE"] = 0] = "CIRCLE";
CSSRadialShape2[CSSRadialShape2["ELLIPSE"] = 1] = "ELLIPSE";
})(CSSRadialShape || (CSSRadialShape = {}));
var CSSRadialExtent;
(function(CSSRadialExtent2) {
CSSRadialExtent2[CSSRadialExtent2["CLOSEST_SIDE"] = 0] = "CLOSEST_SIDE";
CSSRadialExtent2[CSSRadialExtent2["FARTHEST_SIDE"] = 1] = "FARTHEST_SIDE";
CSSRadialExtent2[CSSRadialExtent2["CLOSEST_CORNER"] = 2] = "CLOSEST_CORNER";
CSSRadialExtent2[CSSRadialExtent2["FARTHEST_CORNER"] = 3] = "FARTHEST_CORNER";
})(CSSRadialExtent || (CSSRadialExtent = {}));
var image = {
name: "image",
parse: function(context2, value) {
if (value.type === 22) {
var image_1 = { url: value.value, type: CSSImageType.URL };
context2.cache.addImage(value.value);
return image_1;
}
if (value.type === 18) {
var imageFunction = SUPPORTED_IMAGE_FUNCTIONS[value.name];
if (typeof imageFunction === "undefined") {
throw new Error('Attempting to parse an unsupported image function "' + value.name + '"');
}
return imageFunction(context2, value.values);
}
throw new Error("Unsupported image type " + value.type);
}
};
function isSupportedImage(value) {
return !(value.type === 20 && value.value === "none") && (value.type !== 18 || !!SUPPORTED_IMAGE_FUNCTIONS[value.name]);
}
var SUPPORTED_IMAGE_FUNCTIONS = {
"linear-gradient": linearGradient,
"-moz-linear-gradient": prefixLinearGradient,
"-ms-linear-gradient": prefixLinearGradient,
"-o-linear-gradient": prefixLinearGradient,
"-webkit-linear-gradient": prefixLinearGradient,
"radial-gradient": radialGradient,
"-moz-radial-gradient": prefixRadialGradient,
"-ms-radial-gradient": prefixRadialGradient,
"-o-radial-gradient": prefixRadialGradient,
"-webkit-radial-gradient": prefixRadialGradient,
"-webkit-gradient": webkitGradient
};
var backgroundImage = {
name: "background-image",
initialValue: "none",
type: 1,
prefix: false,
parse: function(context2, tokens) {
if (tokens.length === 0) {
return [];
}
var first2 = tokens[0];
if (first2.type === 20 && first2.value === "none") {
return [];
}
return tokens.filter(function(value) {
return nonFunctionArgSeparator(value) && isSupportedImage(value);
}).map(function(value) {
return image.parse(context2, value);
});
}
};
var backgroundOrigin = {
name: "background-origin",
initialValue: "border-box",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return tokens.map(function(token) {
if (isIdentToken(token)) {
switch (token.value) {
case "padding-box":
return 1;
case "content-box":
return 2;
}
}
return 0;
});
}
};
var backgroundPosition = {
name: "background-position",
initialValue: "0% 0%",
type: 1,
prefix: false,
parse: function(_context, tokens) {
return parseFunctionArgs(tokens).map(function(values2) {
return values2.filter(isLengthPercentage);
}).map(parseLengthPercentageTuple);
}
};
var BACKGROUND_REPEAT;
(function(BACKGROUND_REPEAT2) {
BACKGROUND_REPEAT2[BACKGROUND_REPEAT2["REPEAT"] = 0] = "REPEAT";
BACKGROUND_REPEAT2[BACKGROUND_REPEAT2["NO_REPEAT"] = 1] = "NO_REPEAT";
BACKGROUND_REPEAT2[BACKGROUND_REPEAT2["REPEAT_X"] = 2] = "REPEAT_X";
BACKGROUND_REPEAT2[BACKGROUND_REPEAT2["REPEAT_Y"] = 3] = "REPEAT_Y";
})(BACKGROUND_REPEAT || (BACKGROUND_REPEAT = {}));
var backgroundRepeat = {
name: "background-repeat",
initialValue: "repeat",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return parseFunctionArgs(tokens).map(function(values2) {
return values2.filter(isIdentToken).map(function(token) {
return token.value;
}).join(" ");
}).map(parseBackgroundRepeat);
}
};
var parseBackgroundRepeat = function(value) {
switch (value) {
case "no-repeat":
return BACKGROUND_REPEAT.NO_REPEAT;
case "repeat-x":
case "repeat no-repeat":
return BACKGROUND_REPEAT.REPEAT_X;
case "repeat-y":
case "no-repeat repeat":
return BACKGROUND_REPEAT.REPEAT_Y;
case "repeat":
default:
return BACKGROUND_REPEAT.REPEAT;
}
};
var BACKGROUND_SIZE;
(function(BACKGROUND_SIZE2) {
BACKGROUND_SIZE2["AUTO"] = "auto";
BACKGROUND_SIZE2["CONTAIN"] = "contain";
BACKGROUND_SIZE2["COVER"] = "cover";
})(BACKGROUND_SIZE || (BACKGROUND_SIZE = {}));
var backgroundSize = {
name: "background-size",
initialValue: "0",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return parseFunctionArgs(tokens).map(function(values2) {
return values2.filter(isBackgroundSizeInfoToken);
});
}
};
var isBackgroundSizeInfoToken = function(value) {
return isIdentToken(value) || isLengthPercentage(value);
};
var borderColorForSide = function(side) {
return {
name: "border-" + side + "-color",
initialValue: "transparent",
prefix: false,
type: 3,
format: "color"
};
};
var borderTopColor = borderColorForSide("top");
var borderRightColor = borderColorForSide("right");
var borderBottomColor = borderColorForSide("bottom");
var borderLeftColor = borderColorForSide("left");
var borderRadiusForSide = function(side) {
return {
name: "border-radius-" + side,
initialValue: "0 0",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return parseLengthPercentageTuple(tokens.filter(isLengthPercentage));
}
};
};
var borderTopLeftRadius = borderRadiusForSide("top-left");
var borderTopRightRadius = borderRadiusForSide("top-right");
var borderBottomRightRadius = borderRadiusForSide("bottom-right");
var borderBottomLeftRadius = borderRadiusForSide("bottom-left");
var BORDER_STYLE;
(function(BORDER_STYLE2) {
BORDER_STYLE2[BORDER_STYLE2["NONE"] = 0] = "NONE";
BORDER_STYLE2[BORDER_STYLE2["SOLID"] = 1] = "SOLID";
BORDER_STYLE2[BORDER_STYLE2["DASHED"] = 2] = "DASHED";
BORDER_STYLE2[BORDER_STYLE2["DOTTED"] = 3] = "DOTTED";
BORDER_STYLE2[BORDER_STYLE2["DOUBLE"] = 4] = "DOUBLE";
})(BORDER_STYLE || (BORDER_STYLE = {}));
var borderStyleForSide = function(side) {
return {
name: "border-" + side + "-style",
initialValue: "solid",
prefix: false,
type: 2,
parse: function(_context, style) {
switch (style) {
case "none":
return BORDER_STYLE.NONE;
case "dashed":
return BORDER_STYLE.DASHED;
case "dotted":
return BORDER_STYLE.DOTTED;
case "double":
return BORDER_STYLE.DOUBLE;
}
return BORDER_STYLE.SOLID;
}
};
};
var borderTopStyle = borderStyleForSide("top");
var borderRightStyle = borderStyleForSide("right");
var borderBottomStyle = borderStyleForSide("bottom");
var borderLeftStyle = borderStyleForSide("left");
var borderWidthForSide = function(side) {
return {
name: "border-" + side + "-width",
initialValue: "0",
type: 0,
prefix: false,
parse: function(_context, token) {
if (isDimensionToken(token)) {
return token.number;
}
return 0;
}
};
};
var borderTopWidth = borderWidthForSide("top");
var borderRightWidth = borderWidthForSide("right");
var borderBottomWidth = borderWidthForSide("bottom");
var borderLeftWidth = borderWidthForSide("left");
var color2 = {
name: "color",
initialValue: "transparent",
prefix: false,
type: 3,
format: "color"
};
var direction = {
name: "direction",
initialValue: "ltr",
prefix: false,
type: 2,
parse: function(_context, direction2) {
switch (direction2) {
case "rtl":
return 1;
case "ltr":
default:
return 0;
}
}
};
var display = {
name: "display",
initialValue: "inline-block",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return tokens.filter(isIdentToken).reduce(function(bit, token) {
return bit | parseDisplayValue(token.value);
}, 0);
}
};
var parseDisplayValue = function(display2) {
switch (display2) {
case "block":
case "-webkit-box":
return 2;
case "inline":
return 4;
case "run-in":
return 8;
case "flow":
return 16;
case "flow-root":
return 32;
case "table":
return 64;
case "flex":
case "-webkit-flex":
return 128;
case "grid":
case "-ms-grid":
return 256;
case "ruby":
return 512;
case "subgrid":
return 1024;
case "list-item":
return 2048;
case "table-row-group":
return 4096;
case "table-header-group":
return 8192;
case "table-footer-group":
return 16384;
case "table-row":
return 32768;
case "table-cell":
return 65536;
case "table-column-group":
return 131072;
case "table-column":
return 262144;
case "table-caption":
return 524288;
case "ruby-base":
return 1048576;
case "ruby-text":
return 2097152;
case "ruby-base-container":
return 4194304;
case "ruby-text-container":
return 8388608;
case "contents":
return 16777216;
case "inline-block":
return 33554432;
case "inline-list-item":
return 67108864;
case "inline-table":
return 134217728;
case "inline-flex":
return 268435456;
case "inline-grid":
return 536870912;
}
return 0;
};
var FLOAT;
(function(FLOAT2) {
FLOAT2[FLOAT2["NONE"] = 0] = "NONE";
FLOAT2[FLOAT2["LEFT"] = 1] = "LEFT";
FLOAT2[FLOAT2["RIGHT"] = 2] = "RIGHT";
FLOAT2[FLOAT2["INLINE_START"] = 3] = "INLINE_START";
FLOAT2[FLOAT2["INLINE_END"] = 4] = "INLINE_END";
})(FLOAT || (FLOAT = {}));
var float = {
name: "float",
initialValue: "none",
prefix: false,
type: 2,
parse: function(_context, float2) {
switch (float2) {
case "left":
return FLOAT.LEFT;
case "right":
return FLOAT.RIGHT;
case "inline-start":
return FLOAT.INLINE_START;
case "inline-end":
return FLOAT.INLINE_END;
}
return FLOAT.NONE;
}
};
var letterSpacing = {
name: "letter-spacing",
initialValue: "0",
prefix: false,
type: 0,
parse: function(_context, token) {
if (token.type === 20 && token.value === "normal") {
return 0;
}
if (token.type === 17) {
return token.number;
}
if (token.type === 15) {
return token.number;
}
return 0;
}
};
var LINE_BREAK;
(function(LINE_BREAK2) {
LINE_BREAK2["NORMAL"] = "normal";
LINE_BREAK2["STRICT"] = "strict";
})(LINE_BREAK || (LINE_BREAK = {}));
var lineBreak = {
name: "line-break",
initialValue: "normal",
prefix: false,
type: 2,
parse: function(_context, lineBreak2) {
switch (lineBreak2) {
case "strict":
return LINE_BREAK.STRICT;
case "normal":
default:
return LINE_BREAK.NORMAL;
}
}
};
var lineHeight = {
name: "line-height",
initialValue: "normal",
prefix: false,
type: 4
};
var computeLineHeight = function(token, fontSize2) {
if (isIdentToken(token) && token.value === "normal") {
return 1.2 * fontSize2;
} else if (token.type === 17) {
return fontSize2 * token.number;
} else if (isLengthPercentage(token)) {
return getAbsoluteValue(token, fontSize2);
}
return fontSize2;
};
var listStyleImage = {
name: "list-style-image",
initialValue: "none",
type: 0,
prefix: false,
parse: function(context2, token) {
if (token.type === 20 && token.value === "none") {
return null;
}
return image.parse(context2, token);
}
};
var LIST_STYLE_POSITION;
(function(LIST_STYLE_POSITION2) {
LIST_STYLE_POSITION2[LIST_STYLE_POSITION2["INSIDE"] = 0] = "INSIDE";
LIST_STYLE_POSITION2[LIST_STYLE_POSITION2["OUTSIDE"] = 1] = "OUTSIDE";
})(LIST_STYLE_POSITION || (LIST_STYLE_POSITION = {}));
var listStylePosition = {
name: "list-style-position",
initialValue: "outside",
prefix: false,
type: 2,
parse: function(_context, position2) {
switch (position2) {
case "inside":
return LIST_STYLE_POSITION.INSIDE;
case "outside":
default:
return LIST_STYLE_POSITION.OUTSIDE;
}
}
};
var LIST_STYLE_TYPE;
(function(LIST_STYLE_TYPE2) {
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["NONE"] = -1] = "NONE";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["DISC"] = 0] = "DISC";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["CIRCLE"] = 1] = "CIRCLE";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["SQUARE"] = 2] = "SQUARE";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["DECIMAL"] = 3] = "DECIMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["CJK_DECIMAL"] = 4] = "CJK_DECIMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["DECIMAL_LEADING_ZERO"] = 5] = "DECIMAL_LEADING_ZERO";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["LOWER_ROMAN"] = 6] = "LOWER_ROMAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["UPPER_ROMAN"] = 7] = "UPPER_ROMAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["LOWER_GREEK"] = 8] = "LOWER_GREEK";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["LOWER_ALPHA"] = 9] = "LOWER_ALPHA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["UPPER_ALPHA"] = 10] = "UPPER_ALPHA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["ARABIC_INDIC"] = 11] = "ARABIC_INDIC";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["ARMENIAN"] = 12] = "ARMENIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["BENGALI"] = 13] = "BENGALI";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["CAMBODIAN"] = 14] = "CAMBODIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["CJK_EARTHLY_BRANCH"] = 15] = "CJK_EARTHLY_BRANCH";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["CJK_HEAVENLY_STEM"] = 16] = "CJK_HEAVENLY_STEM";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["CJK_IDEOGRAPHIC"] = 17] = "CJK_IDEOGRAPHIC";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["DEVANAGARI"] = 18] = "DEVANAGARI";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["ETHIOPIC_NUMERIC"] = 19] = "ETHIOPIC_NUMERIC";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["GEORGIAN"] = 20] = "GEORGIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["GUJARATI"] = 21] = "GUJARATI";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["GURMUKHI"] = 22] = "GURMUKHI";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["HEBREW"] = 22] = "HEBREW";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["HIRAGANA"] = 23] = "HIRAGANA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["HIRAGANA_IROHA"] = 24] = "HIRAGANA_IROHA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["JAPANESE_FORMAL"] = 25] = "JAPANESE_FORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["JAPANESE_INFORMAL"] = 26] = "JAPANESE_INFORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KANNADA"] = 27] = "KANNADA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KATAKANA"] = 28] = "KATAKANA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KATAKANA_IROHA"] = 29] = "KATAKANA_IROHA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KHMER"] = 30] = "KHMER";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KOREAN_HANGUL_FORMAL"] = 31] = "KOREAN_HANGUL_FORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KOREAN_HANJA_FORMAL"] = 32] = "KOREAN_HANJA_FORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["KOREAN_HANJA_INFORMAL"] = 33] = "KOREAN_HANJA_INFORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["LAO"] = 34] = "LAO";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["LOWER_ARMENIAN"] = 35] = "LOWER_ARMENIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["MALAYALAM"] = 36] = "MALAYALAM";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["MONGOLIAN"] = 37] = "MONGOLIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["MYANMAR"] = 38] = "MYANMAR";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["ORIYA"] = 39] = "ORIYA";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["PERSIAN"] = 40] = "PERSIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["SIMP_CHINESE_FORMAL"] = 41] = "SIMP_CHINESE_FORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["SIMP_CHINESE_INFORMAL"] = 42] = "SIMP_CHINESE_INFORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["TAMIL"] = 43] = "TAMIL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["TELUGU"] = 44] = "TELUGU";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["THAI"] = 45] = "THAI";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["TIBETAN"] = 46] = "TIBETAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["TRAD_CHINESE_FORMAL"] = 47] = "TRAD_CHINESE_FORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["TRAD_CHINESE_INFORMAL"] = 48] = "TRAD_CHINESE_INFORMAL";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["UPPER_ARMENIAN"] = 49] = "UPPER_ARMENIAN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["DISCLOSURE_OPEN"] = 50] = "DISCLOSURE_OPEN";
LIST_STYLE_TYPE2[LIST_STYLE_TYPE2["DISCLOSURE_CLOSED"] = 51] = "DISCLOSURE_CLOSED";
})(LIST_STYLE_TYPE || (LIST_STYLE_TYPE = {}));
var listStyleType = {
name: "list-style-type",
initialValue: "none",
prefix: false,
type: 2,
parse: function(_context, type2) {
switch (type2) {
case "disc":
return LIST_STYLE_TYPE.DISC;
case "circle":
return LIST_STYLE_TYPE.CIRCLE;
case "square":
return LIST_STYLE_TYPE.SQUARE;
case "decimal":
return LIST_STYLE_TYPE.DECIMAL;
case "cjk-decimal":
return LIST_STYLE_TYPE.CJK_DECIMAL;
case "decimal-leading-zero":
return LIST_STYLE_TYPE.DECIMAL_LEADING_ZERO;
case "lower-roman":
return LIST_STYLE_TYPE.LOWER_ROMAN;
case "upper-roman":
return LIST_STYLE_TYPE.UPPER_ROMAN;
case "lower-greek":
return LIST_STYLE_TYPE.LOWER_GREEK;
case "lower-alpha":
return LIST_STYLE_TYPE.LOWER_ALPHA;
case "upper-alpha":
return LIST_STYLE_TYPE.UPPER_ALPHA;
case "arabic-indic":
return LIST_STYLE_TYPE.ARABIC_INDIC;
case "armenian":
return LIST_STYLE_TYPE.ARMENIAN;
case "bengali":
return LIST_STYLE_TYPE.BENGALI;
case "cambodian":
return LIST_STYLE_TYPE.CAMBODIAN;
case "cjk-earthly-branch":
return LIST_STYLE_TYPE.CJK_EARTHLY_BRANCH;
case "cjk-heavenly-stem":
return LIST_STYLE_TYPE.CJK_HEAVENLY_STEM;
case "cjk-ideographic":
return LIST_STYLE_TYPE.CJK_IDEOGRAPHIC;
case "devanagari":
return LIST_STYLE_TYPE.DEVANAGARI;
case "ethiopic-numeric":
return LIST_STYLE_TYPE.ETHIOPIC_NUMERIC;
case "georgian":
return LIST_STYLE_TYPE.GEORGIAN;
case "gujarati":
return LIST_STYLE_TYPE.GUJARATI;
case "gurmukhi":
return LIST_STYLE_TYPE.GURMUKHI;
case "hebrew":
return LIST_STYLE_TYPE.HEBREW;
case "hiragana":
return LIST_STYLE_TYPE.HIRAGANA;
case "hiragana-iroha":
return LIST_STYLE_TYPE.HIRAGANA_IROHA;
case "japanese-formal":
return LIST_STYLE_TYPE.JAPANESE_FORMAL;
case "japanese-informal":
return LIST_STYLE_TYPE.JAPANESE_INFORMAL;
case "kannada":
return LIST_STYLE_TYPE.KANNADA;
case "katakana":
return LIST_STYLE_TYPE.KATAKANA;
case "katakana-iroha":
return LIST_STYLE_TYPE.KATAKANA_IROHA;
case "khmer":
return LIST_STYLE_TYPE.KHMER;
case "korean-hangul-formal":
return LIST_STYLE_TYPE.KOREAN_HANGUL_FORMAL;
case "korean-hanja-formal":
return LIST_STYLE_TYPE.KOREAN_HANJA_FORMAL;
case "korean-hanja-informal":
return LIST_STYLE_TYPE.KOREAN_HANJA_INFORMAL;
case "lao":
return LIST_STYLE_TYPE.LAO;
case "lower-armenian":
return LIST_STYLE_TYPE.LOWER_ARMENIAN;
case "malayalam":
return LIST_STYLE_TYPE.MALAYALAM;
case "mongolian":
return LIST_STYLE_TYPE.MONGOLIAN;
case "myanmar":
return LIST_STYLE_TYPE.MYANMAR;
case "oriya":
return LIST_STYLE_TYPE.ORIYA;
case "persian":
return LIST_STYLE_TYPE.PERSIAN;
case "simp-chinese-formal":
return LIST_STYLE_TYPE.SIMP_CHINESE_FORMAL;
case "simp-chinese-informal":
return LIST_STYLE_TYPE.SIMP_CHINESE_INFORMAL;
case "tamil":
return LIST_STYLE_TYPE.TAMIL;
case "telugu":
return LIST_STYLE_TYPE.TELUGU;
case "thai":
return LIST_STYLE_TYPE.THAI;
case "tibetan":
return LIST_STYLE_TYPE.TIBETAN;
case "trad-chinese-formal":
return LIST_STYLE_TYPE.TRAD_CHINESE_FORMAL;
case "trad-chinese-informal":
return LIST_STYLE_TYPE.TRAD_CHINESE_INFORMAL;
case "upper-armenian":
return LIST_STYLE_TYPE.UPPER_ARMENIAN;
case "disclosure-open":
return LIST_STYLE_TYPE.DISCLOSURE_OPEN;
case "disclosure-closed":
return LIST_STYLE_TYPE.DISCLOSURE_CLOSED;
case "none":
default:
return LIST_STYLE_TYPE.NONE;
}
}
};
var marginForSide = function(side) {
return {
name: "margin-" + side,
initialValue: "0",
prefix: false,
type: 4
};
};
var marginTop = marginForSide("top");
var marginRight = marginForSide("right");
var marginBottom = marginForSide("bottom");
var marginLeft = marginForSide("left");
var OVERFLOW;
(function(OVERFLOW2) {
OVERFLOW2[OVERFLOW2["VISIBLE"] = 0] = "VISIBLE";
OVERFLOW2[OVERFLOW2["HIDDEN"] = 1] = "HIDDEN";
OVERFLOW2[OVERFLOW2["SCROLL"] = 2] = "SCROLL";
OVERFLOW2[OVERFLOW2["CLIP"] = 3] = "CLIP";
OVERFLOW2[OVERFLOW2["AUTO"] = 4] = "AUTO";
})(OVERFLOW || (OVERFLOW = {}));
var overflow = {
name: "overflow",
initialValue: "visible",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return tokens.filter(isIdentToken).map(function(overflow2) {
switch (overflow2.value) {
case "hidden":
return OVERFLOW.HIDDEN;
case "scroll":
return OVERFLOW.SCROLL;
case "clip":
return OVERFLOW.CLIP;
case "auto":
return OVERFLOW.AUTO;
case "visible":
default:
return OVERFLOW.VISIBLE;
}
});
}
};
var overflowWrap = {
name: "overflow-wrap",
initialValue: "normal",
prefix: false,
type: 2,
parse: function(_context, overflow2) {
switch (overflow2) {
case "break-word":
return "break-word";
case "normal":
default:
return "normal";
}
}
};
var paddingForSide = function(side) {
return {
name: "padding-" + side,
initialValue: "0",
prefix: false,
type: 3,
format: "length-percentage"
};
};
var paddingTop = paddingForSide("top");
var paddingRight = paddingForSide("right");
var paddingBottom = paddingForSide("bottom");
var paddingLeft = paddingForSide("left");
var TEXT_ALIGN;
(function(TEXT_ALIGN2) {
TEXT_ALIGN2[TEXT_ALIGN2["LEFT"] = 0] = "LEFT";
TEXT_ALIGN2[TEXT_ALIGN2["CENTER"] = 1] = "CENTER";
TEXT_ALIGN2[TEXT_ALIGN2["RIGHT"] = 2] = "RIGHT";
})(TEXT_ALIGN || (TEXT_ALIGN = {}));
var textAlign = {
name: "text-align",
initialValue: "left",
prefix: false,
type: 2,
parse: function(_context, textAlign2) {
switch (textAlign2) {
case "right":
return TEXT_ALIGN.RIGHT;
case "center":
case "justify":
return TEXT_ALIGN.CENTER;
case "left":
default:
return TEXT_ALIGN.LEFT;
}
}
};
var POSITION;
(function(POSITION2) {
POSITION2[POSITION2["STATIC"] = 0] = "STATIC";
POSITION2[POSITION2["RELATIVE"] = 1] = "RELATIVE";
POSITION2[POSITION2["ABSOLUTE"] = 2] = "ABSOLUTE";
POSITION2[POSITION2["FIXED"] = 3] = "FIXED";
POSITION2[POSITION2["STICKY"] = 4] = "STICKY";
})(POSITION || (POSITION = {}));
var position = {
name: "position",
initialValue: "static",
prefix: false,
type: 2,
parse: function(_context, position2) {
switch (position2) {
case "relative":
return POSITION.RELATIVE;
case "absolute":
return POSITION.ABSOLUTE;
case "fixed":
return POSITION.FIXED;
case "sticky":
return POSITION.STICKY;
}
return POSITION.STATIC;
}
};
var textShadow = {
name: "text-shadow",
initialValue: "none",
type: 1,
prefix: false,
parse: function(context2, tokens) {
if (tokens.length === 1 && isIdentWithValue(tokens[0], "none")) {
return [];
}
return parseFunctionArgs(tokens).map(function(values2) {
var shadow = {
color: COLORS.TRANSPARENT,
offsetX: ZERO_LENGTH,
offsetY: ZERO_LENGTH,
blur: ZERO_LENGTH
};
var c6 = 0;
for (var i5 = 0; i5 < values2.length; i5++) {
var token = values2[i5];
if (isLength2(token)) {
if (c6 === 0) {
shadow.offsetX = token;
} else if (c6 === 1) {
shadow.offsetY = token;
} else {
shadow.blur = token;
}
c6++;
} else {
shadow.color = color$1.parse(context2, token);
}
}
return shadow;
});
}
};
var TEXT_TRANSFORM;
(function(TEXT_TRANSFORM2) {
TEXT_TRANSFORM2[TEXT_TRANSFORM2["NONE"] = 0] = "NONE";
TEXT_TRANSFORM2[TEXT_TRANSFORM2["LOWERCASE"] = 1] = "LOWERCASE";
TEXT_TRANSFORM2[TEXT_TRANSFORM2["UPPERCASE"] = 2] = "UPPERCASE";
TEXT_TRANSFORM2[TEXT_TRANSFORM2["CAPITALIZE"] = 3] = "CAPITALIZE";
})(TEXT_TRANSFORM || (TEXT_TRANSFORM = {}));
var textTransform = {
name: "text-transform",
initialValue: "none",
prefix: false,
type: 2,
parse: function(_context, textTransform2) {
switch (textTransform2) {
case "uppercase":
return TEXT_TRANSFORM.UPPERCASE;
case "lowercase":
return TEXT_TRANSFORM.LOWERCASE;
case "capitalize":
return TEXT_TRANSFORM.CAPITALIZE;
}
return TEXT_TRANSFORM.NONE;
}
};
var transform$1 = {
name: "transform",
initialValue: "none",
prefix: true,
type: 0,
parse: function(_context, token) {
if (token.type === 20 && token.value === "none") {
return null;
}
if (token.type === 18) {
var transformFunction = SUPPORTED_TRANSFORM_FUNCTIONS[token.name];
if (typeof transformFunction === "undefined") {
throw new Error('Attempting to parse an unsupported transform function "' + token.name + '"');
}
return transformFunction(token.values);
}
return null;
}
};
var matrix = function(args) {
var values2 = args.filter(function(arg) {
return arg.type === 17;
}).map(function(arg) {
return arg.number;
});
return values2.length === 6 ? values2 : null;
};
var matrix3d = function(args) {
var values2 = args.filter(function(arg) {
return arg.type === 17;
}).map(function(arg) {
return arg.number;
});
var a1 = values2[0], b1 = values2[1];
values2[2];
values2[3];
var a22 = values2[4], b22 = values2[5];
values2[6];
values2[7];
values2[8];
values2[9];
values2[10];
values2[11];
var a42 = values2[12], b4 = values2[13];
values2[14];
values2[15];
return values2.length === 16 ? [a1, b1, a22, b22, a42, b4] : null;
};
var SUPPORTED_TRANSFORM_FUNCTIONS = {
matrix,
matrix3d
};
var DEFAULT_VALUE = {
type: 16,
number: 50,
flags: FLAG_INTEGER
};
var DEFAULT = [DEFAULT_VALUE, DEFAULT_VALUE];
var transformOrigin = {
name: "transform-origin",
initialValue: "50% 50%",
prefix: true,
type: 1,
parse: function(_context, tokens) {
var origins = tokens.filter(isLengthPercentage);
if (origins.length !== 2) {
return DEFAULT;
}
return [origins[0], origins[1]];
}
};
var VISIBILITY;
(function(VISIBILITY2) {
VISIBILITY2[VISIBILITY2["VISIBLE"] = 0] = "VISIBLE";
VISIBILITY2[VISIBILITY2["HIDDEN"] = 1] = "HIDDEN";
VISIBILITY2[VISIBILITY2["COLLAPSE"] = 2] = "COLLAPSE";
})(VISIBILITY || (VISIBILITY = {}));
var visibility = {
name: "visible",
initialValue: "none",
prefix: false,
type: 2,
parse: function(_context, visibility2) {
switch (visibility2) {
case "hidden":
return VISIBILITY.HIDDEN;
case "collapse":
return VISIBILITY.COLLAPSE;
case "visible":
default:
return VISIBILITY.VISIBLE;
}
}
};
var WORD_BREAK;
(function(WORD_BREAK2) {
WORD_BREAK2["NORMAL"] = "normal";
WORD_BREAK2["BREAK_ALL"] = "break-all";
WORD_BREAK2["KEEP_ALL"] = "keep-all";
})(WORD_BREAK || (WORD_BREAK = {}));
var wordBreak = {
name: "word-break",
initialValue: "normal",
prefix: false,
type: 2,
parse: function(_context, wordBreak2) {
switch (wordBreak2) {
case "break-all":
return WORD_BREAK.BREAK_ALL;
case "keep-all":
return WORD_BREAK.KEEP_ALL;
case "normal":
default:
return WORD_BREAK.NORMAL;
}
}
};
var zIndex = {
name: "z-index",
initialValue: "auto",
prefix: false,
type: 0,
parse: function(_context, token) {
if (token.type === 20) {
return { auto: true, order: 0 };
}
if (isNumberToken(token)) {
return { auto: false, order: token.number };
}
throw new Error("Invalid z-index number parsed");
}
};
var time2 = {
name: "time",
parse: function(_context, value) {
if (value.type === 15) {
switch (value.unit.toLowerCase()) {
case "s":
return 1e3 * value.number;
case "ms":
return value.number;
}
}
throw new Error("Unsupported time type");
}
};
var opacity = {
name: "opacity",
initialValue: "1",
type: 0,
prefix: false,
parse: function(_context, token) {
if (isNumberToken(token)) {
return token.number;
}
return 1;
}
};
var textDecorationColor = {
name: "text-decoration-color",
initialValue: "transparent",
prefix: false,
type: 3,
format: "color"
};
var textDecorationLine = {
name: "text-decoration-line",
initialValue: "none",
prefix: false,
type: 1,
parse: function(_context, tokens) {
return tokens.filter(isIdentToken).map(function(token) {
switch (token.value) {
case "underline":
return 1;
case "overline":
return 2;
case "line-through":
return 3;
case "none":
return 4;
}
return 0;
}).filter(function(line) {
return line !== 0;
});
}
};
var fontFamily = {
name: "font-family",
initialValue: "",
prefix: false,
type: 1,
parse: function(_context, tokens) {
var accumulator = [];
var results = [];
tokens.forEach(function(token) {
switch (token.type) {
case 20:
case 0:
accumulator.push(token.value);
break;
case 17:
accumulator.push(token.number.toString());
break;
case 4:
results.push(accumulator.join(" "));
accumulator.length = 0;
break;
}
});
if (accumulator.length) {
results.push(accumulator.join(" "));
}
return results.map(function(result) {
return result.indexOf(" ") === -1 ? result : "'" + result + "'";
});
}
};
var fontSize = {
name: "font-size",
initialValue: "0",
prefix: false,
type: 3,
format: "length"
};
var fontWeight = {
name: "font-weight",
initialValue: "normal",
type: 0,
prefix: false,
parse: function(_context, token) {
if (isNumberToken(token)) {
return token.number;
}
if (isIdentToken(token)) {
switch (token.value) {
case "bold":
return 700;
case "normal":
default:
return 400;
}
}
return 400;
}
};
var fontVariant = {
name: "font-variant",
initialValue: "none",
type: 1,
prefix: false,
parse: function(_context, tokens) {
return tokens.filter(isIdentToken).map(function(token) {
return token.value;
});
}
};
var FONT_STYLE;
(function(FONT_STYLE2) {
FONT_STYLE2["NORMAL"] = "normal";
FONT_STYLE2["ITALIC"] = "italic";
FONT_STYLE2["OBLIQUE"] = "oblique";
})(FONT_STYLE || (FONT_STYLE = {}));
var fontStyle = {
name: "font-style",
initialValue: "normal",
prefix: false,
type: 2,
parse: function(_context, overflow2) {
switch (overflow2) {
case "oblique":
return FONT_STYLE.OBLIQUE;
case "italic":
return FONT_STYLE.ITALIC;
case "normal":
default:
return FONT_STYLE.NORMAL;
}
}
};
var contains2 = function(bit, value) {
return (bit & value) !== 0;
};
var content = {
name: "content",
initialValue: "none",
type: 1,
prefix: false,
parse: function(_context, tokens) {
if (tokens.length === 0) {
return [];
}
var first2 = tokens[0];
if (first2.type === 20 && first2.value === "none") {
return [];
}
return tokens;
}
};
var counterIncrement = {
name: "counter-increment",
initialValue: "none",
prefix: true,
type: 1,
parse: function(_context, tokens) {
if (tokens.length === 0) {
return null;
}
var first2 = tokens[0];
if (first2.type === 20 && first2.value === "none") {
return null;
}
var increments = [];
var filtered = tokens.filter(nonWhiteSpace);
for (var i5 = 0; i5 < filtered.length; i5++) {
var counter = filtered[i5];
var next = filtered[i5 + 1];
if (counter.type === 20) {
var increment = next && isNumberToken(next) ? next.number : 1;
increments.push({ counter: counter.value, increment });
}
}
return increments;
}
};
var counterReset = {
name: "counter-reset",
initialValue: "none",
prefix: true,
type: 1,
parse: function(_context, tokens) {
if (tokens.length === 0) {
return [];
}
var resets = [];
var filtered = tokens.filter(nonWhiteSpace);
for (var i5 = 0; i5 < filtered.length; i5++) {
var counter = filtered[i5];
var next = filtered[i5 + 1];
if (isIdentToken(counter) && counter.value !== "none") {
var reset = next && isNumberToken(next) ? next.number : 0;
resets.push({ counter: counter.value, reset });
}
}
return resets;
}
};
var duration = {
name: "duration",
initialValue: "0s",
prefix: false,
type: 1,
parse: function(context2, tokens) {
return tokens.filter(isDimensionToken).map(function(token) {
return time2.parse(context2, token);
});
}
};
var quotes = {
name: "quotes",
initialValue: "none",
prefix: true,
type: 1,
parse: function(_context, tokens) {
if (tokens.length === 0) {
return null;
}
var first2 = tokens[0];
if (first2.type === 20 && first2.value === "none") {
return null;
}
var quotes2 = [];
var filtered = tokens.filter(isStringToken);
if (filtered.length % 2 !== 0) {
return null;
}
for (var i5 = 0; i5 < filtered.length; i5 += 2) {
var open_1 = filtered[i5].value;
var close_1 = filtered[i5 + 1].value;
quotes2.push({ open: open_1, close: close_1 });
}
return quotes2;
}
};
var getQuote = function(quotes2, depth, open2) {
if (!quotes2) {
return "";
}
var quote = quotes2[Math.min(depth, quotes2.length - 1)];
if (!quote) {
return "";
}
return open2 ? quote.open : quote.close;
};
var boxShadow = {
name: "box-shadow",
initialValue: "none",
type: 1,
prefix: false,
parse: function(context2, tokens) {
if (tokens.length === 1 && isIdentWithValue(tokens[0], "none")) {
return [];
}
return parseFunctionArgs(tokens).map(function(values2) {
var shadow = {
color: 255,
offsetX: ZERO_LENGTH,
offsetY: ZERO_LENGTH,
blur: ZERO_LENGTH,
spread: ZERO_LENGTH,
inset: false
};
var c6 = 0;
for (var i5 = 0; i5 < values2.length; i5++) {
var token = values2[i5];
if (isIdentWithValue(token, "inset")) {
shadow.inset = true;
} else if (isLength2(token)) {
if (c6 === 0) {
shadow.offsetX = token;
} else if (c6 === 1) {
shadow.offsetY = token;
} else if (c6 === 2) {
shadow.blur = token;
} else {
shadow.spread = token;
}
c6++;
} else {
shadow.color = color$1.parse(context2, token);
}
}
return shadow;
});
}
};
var PAINT_ORDER_LAYER;
(function(PAINT_ORDER_LAYER2) {
PAINT_ORDER_LAYER2[PAINT_ORDER_LAYER2["FILL"] = 0] = "FILL";
PAINT_ORDER_LAYER2[PAINT_ORDER_LAYER2["STROKE"] = 1] = "STROKE";
PAINT_ORDER_LAYER2[PAINT_ORDER_LAYER2["MARKERS"] = 2] = "MARKERS";
})(PAINT_ORDER_LAYER || (PAINT_ORDER_LAYER = {}));
var paintOrder = {
name: "paint-order",
initialValue: "normal",
prefix: false,
type: 1,
parse: function(_context, tokens) {
var DEFAULT_VALUE2 = [PAINT_ORDER_LAYER.FILL, PAINT_ORDER_LAYER.STROKE, PAINT_ORDER_LAYER.MARKERS];
var layers = [];
tokens.filter(isIdentToken).forEach(function(token) {
switch (token.value) {
case "stroke":
layers.push(PAINT_ORDER_LAYER.STROKE);
break;
case "fill":
layers.push(PAINT_ORDER_LAYER.FILL);
break;
case "markers":
layers.push(PAINT_ORDER_LAYER.MARKERS);
break;
}
});
DEFAULT_VALUE2.forEach(function(value) {
if (layers.indexOf(value) === -1) {
layers.push(value);
}
});
return layers;
}
};
var webkitTextStrokeColor = {
name: "-webkit-text-stroke-color",
initialValue: "currentcolor",
prefix: false,
type: 3,
format: "color"
};
var webkitTextStrokeWidth = {
name: "-webkit-text-stroke-width",
initialValue: "0",
type: 0,
prefix: false,
parse: function(_context, token) {
if (isDimensionToken(token)) {
return token.number;
}
return 0;
}
};
var CSSParsedDeclaration = function() {
function CSSParsedDeclaration2(context2, declaration) {
var _a3, _b3;
this.animationDuration = parse3(context2, duration, declaration.animationDuration);
this.backgroundClip = parse3(context2, backgroundClip, declaration.backgroundClip);
this.backgroundColor = parse3(context2, backgroundColor, declaration.backgroundColor);
this.backgroundImage = parse3(context2, backgroundImage, declaration.backgroundImage);
this.backgroundOrigin = parse3(context2, backgroundOrigin, declaration.backgroundOrigin);
this.backgroundPosition = parse3(context2, backgroundPosition, declaration.backgroundPosition);
this.backgroundRepeat = parse3(context2, backgroundRepeat, declaration.backgroundRepeat);
this.backgroundSize = parse3(context2, backgroundSize, declaration.backgroundSize);
this.borderTopColor = parse3(context2, borderTopColor, declaration.borderTopColor);
this.borderRightColor = parse3(context2, borderRightColor, declaration.borderRightColor);
this.borderBottomColor = parse3(context2, borderBottomColor, declaration.borderBottomColor);
this.borderLeftColor = parse3(context2, borderLeftColor, declaration.borderLeftColor);
this.borderTopLeftRadius = parse3(context2, borderTopLeftRadius, declaration.borderTopLeftRadius);
this.borderTopRightRadius = parse3(context2, borderTopRightRadius, declaration.borderTopRightRadius);
this.borderBottomRightRadius = parse3(context2, borderBottomRightRadius, declaration.borderBottomRightRadius);
this.borderBottomLeftRadius = parse3(context2, borderBottomLeftRadius, declaration.borderBottomLeftRadius);
this.borderTopStyle = parse3(context2, borderTopStyle, declaration.borderTopStyle);
this.borderRightStyle = parse3(context2, borderRightStyle, declaration.borderRightStyle);
this.borderBottomStyle = parse3(context2, borderBottomStyle, declaration.borderBottomStyle);
this.borderLeftStyle = parse3(context2, borderLeftStyle, declaration.borderLeftStyle);
this.borderTopWidth = parse3(context2, borderTopWidth, declaration.borderTopWidth);
this.borderRightWidth = parse3(context2, borderRightWidth, declaration.borderRightWidth);
this.borderBottomWidth = parse3(context2, borderBottomWidth, declaration.borderBottomWidth);
this.borderLeftWidth = parse3(context2, borderLeftWidth, declaration.borderLeftWidth);
this.boxShadow = parse3(context2, boxShadow, declaration.boxShadow);
this.color = parse3(context2, color2, declaration.color);
this.direction = parse3(context2, direction, declaration.direction);
this.display = parse3(context2, display, declaration.display);
this.float = parse3(context2, float, declaration.cssFloat);
this.fontFamily = parse3(context2, fontFamily, declaration.fontFamily);
this.fontSize = parse3(context2, fontSize, declaration.fontSize);
this.fontStyle = parse3(context2, fontStyle, declaration.fontStyle);
this.fontVariant = parse3(context2, fontVariant, declaration.fontVariant);
this.fontWeight = parse3(context2, fontWeight, declaration.fontWeight);
this.letterSpacing = parse3(context2, letterSpacing, declaration.letterSpacing);
this.lineBreak = parse3(context2, lineBreak, declaration.lineBreak);
this.lineHeight = parse3(context2, lineHeight, declaration.lineHeight);
this.listStyleImage = parse3(context2, listStyleImage, declaration.listStyleImage);
this.listStylePosition = parse3(context2, listStylePosition, declaration.listStylePosition);
this.listStyleType = parse3(context2, listStyleType, declaration.listStyleType);
this.marginTop = parse3(context2, marginTop, declaration.marginTop);
this.marginRight = parse3(context2, marginRight, declaration.marginRight);
this.marginBottom = parse3(context2, marginBottom, declaration.marginBottom);
this.marginLeft = parse3(context2, marginLeft, declaration.marginLeft);
this.opacity = parse3(context2, opacity, declaration.opacity);
var overflowTuple = parse3(context2, overflow, declaration.overflow);
this.overflowX = overflowTuple[0];
this.overflowY = overflowTuple[overflowTuple.length > 1 ? 1 : 0];
this.overflowWrap = parse3(context2, overflowWrap, declaration.overflowWrap);
this.paddingTop = parse3(context2, paddingTop, declaration.paddingTop);
this.paddingRight = parse3(context2, paddingRight, declaration.paddingRight);
this.paddingBottom = parse3(context2, paddingBottom, declaration.paddingBottom);
this.paddingLeft = parse3(context2, paddingLeft, declaration.paddingLeft);
this.paintOrder = parse3(context2, paintOrder, declaration.paintOrder);
this.position = parse3(context2, position, declaration.position);
this.textAlign = parse3(context2, textAlign, declaration.textAlign);
this.textDecorationColor = parse3(context2, textDecorationColor, (_a3 = declaration.textDecorationColor) !== null && _a3 !== void 0 ? _a3 : declaration.color);
this.textDecorationLine = parse3(context2, textDecorationLine, (_b3 = declaration.textDecorationLine) !== null && _b3 !== void 0 ? _b3 : declaration.textDecoration);
this.textShadow = parse3(context2, textShadow, declaration.textShadow);
this.textTransform = parse3(context2, textTransform, declaration.textTransform);
this.transform = parse3(context2, transform$1, declaration.transform);
this.transformOrigin = parse3(context2, transformOrigin, declaration.transformOrigin);
this.visibility = parse3(context2, visibility, declaration.visibility);
this.webkitTextStrokeColor = parse3(context2, webkitTextStrokeColor, declaration.webkitTextStrokeColor);
this.webkitTextStrokeWidth = parse3(context2, webkitTextStrokeWidth, declaration.webkitTextStrokeWidth);
this.wordBreak = parse3(context2, wordBreak, declaration.wordBreak);
this.zIndex = parse3(context2, zIndex, declaration.zIndex);
}
CSSParsedDeclaration2.prototype.isVisible = function() {
return this.display > 0 && this.opacity > 0 && this.visibility === VISIBILITY.VISIBLE;
};
CSSParsedDeclaration2.prototype.isTransparent = function() {
return isTransparent(this.backgroundColor);
};
CSSParsedDeclaration2.prototype.isTransformed = function() {
return this.transform !== null;
};
CSSParsedDeclaration2.prototype.isPositioned = function() {
return this.position !== POSITION.STATIC;
};
CSSParsedDeclaration2.prototype.isPositionedWithZIndex = function() {
return this.isPositioned() && !this.zIndex.auto;
};
CSSParsedDeclaration2.prototype.isFloating = function() {
return this.float !== FLOAT.NONE;
};
CSSParsedDeclaration2.prototype.isInlineLevel = function() {
return contains2(this.display, 4) || contains2(this.display, 33554432) || contains2(this.display, 268435456) || contains2(this.display, 536870912) || contains2(this.display, 67108864) || contains2(this.display, 134217728);
};
return CSSParsedDeclaration2;
}();
var CSSParsedPseudoDeclaration = function() {
function CSSParsedPseudoDeclaration2(context2, declaration) {
this.content = parse3(context2, content, declaration.content);
this.quotes = parse3(context2, quotes, declaration.quotes);
}
return CSSParsedPseudoDeclaration2;
}();
var CSSParsedCounterDeclaration = function() {
function CSSParsedCounterDeclaration2(context2, declaration) {
this.counterIncrement = parse3(context2, counterIncrement, declaration.counterIncrement);
this.counterReset = parse3(context2, counterReset, declaration.counterReset);
}
return CSSParsedCounterDeclaration2;
}();
var parse3 = function(context2, descriptor, style) {
var tokenizer = new Tokenizer();
var value = style !== null && typeof style !== "undefined" ? style.toString() : descriptor.initialValue;
tokenizer.write(value);
var parser = new Parser3(tokenizer.read());
switch (descriptor.type) {
case 2:
var token = parser.parseComponentValue();
return descriptor.parse(context2, isIdentToken(token) ? token.value : descriptor.initialValue);
case 0:
return descriptor.parse(context2, parser.parseComponentValue());
case 1:
return descriptor.parse(context2, parser.parseComponentValues());
case 4:
return parser.parseComponentValue();
case 3:
switch (descriptor.format) {
case "angle":
return angle.parse(context2, parser.parseComponentValue());
case "color":
return color$1.parse(context2, parser.parseComponentValue());
case "image":
return image.parse(context2, parser.parseComponentValue());
case "length":
var length_1 = parser.parseComponentValue();
return isLength2(length_1) ? length_1 : ZERO_LENGTH;
case "length-percentage":
var value_1 = parser.parseComponentValue();
return isLengthPercentage(value_1) ? value_1 : ZERO_LENGTH;
case "time":
return time2.parse(context2, parser.parseComponentValue());
}
break;
}
};
var elementDebuggerAttribute = "data-html2canvas-debug";
var getElementDebugType = function(element) {
var attribute = element.getAttribute(elementDebuggerAttribute);
switch (attribute) {
case "all":
return 1;
case "clone":
return 2;
case "parse":
return 3;
case "render":
return 4;
default:
return 0;
}
};
var isDebugging = function(element, type2) {
var elementType = getElementDebugType(element);
return elementType === 1 || type2 === elementType;
};
var ElementContainer = function() {
function ElementContainer2(context2, element) {
this.context = context2;
this.textNodes = [];
this.elements = [];
this.flags = 0;
if (isDebugging(element, 3)) {
debugger;
}
this.styles = new CSSParsedDeclaration(context2, window.getComputedStyle(element, null));
if (isHTMLElementNode(element)) {
if (this.styles.animationDuration.some(function(duration2) {
return duration2 > 0;
})) {
element.style.animationDuration = "0s";
}
if (this.styles.transform !== null) {
element.style.transform = "none";
}
}
this.bounds = parseBounds(this.context, element);
if (isDebugging(element, 4)) {
this.flags |= 16;
}
}
return ElementContainer2;
}();
var base64 = "AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=";
var chars$1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var lookup$1 = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
for (var i$1 = 0; i$1 < chars$1.length; i$1++) {
lookup$1[chars$1.charCodeAt(i$1)] = i$1;
}
var decode = function(base642) {
var bufferLength = base642.length * 0.75, len = base642.length, i5, p4 = 0, encoded1, encoded2, encoded3, encoded4;
if (base642[base642.length - 1] === "=") {
bufferLength--;
if (base642[base642.length - 2] === "=") {
bufferLength--;
}
}
var buffer2 = typeof ArrayBuffer !== "undefined" && typeof Uint8Array !== "undefined" && typeof Uint8Array.prototype.slice !== "undefined" ? new ArrayBuffer(bufferLength) : new Array(bufferLength);
var bytes = Array.isArray(buffer2) ? buffer2 : new Uint8Array(buffer2);
for (i5 = 0; i5 < len; i5 += 4) {
encoded1 = lookup$1[base642.charCodeAt(i5)];
encoded2 = lookup$1[base642.charCodeAt(i5 + 1)];
encoded3 = lookup$1[base642.charCodeAt(i5 + 2)];
encoded4 = lookup$1[base642.charCodeAt(i5 + 3)];
bytes[p4++] = encoded1 << 2 | encoded2 >> 4;
bytes[p4++] = (encoded2 & 15) << 4 | encoded3 >> 2;
bytes[p4++] = (encoded3 & 3) << 6 | encoded4 & 63;
}
return buffer2;
};
var polyUint16Array = function(buffer2) {
var length = buffer2.length;
var bytes = [];
for (var i5 = 0; i5 < length; i5 += 2) {
bytes.push(buffer2[i5 + 1] << 8 | buffer2[i5]);
}
return bytes;
};
var polyUint32Array = function(buffer2) {
var length = buffer2.length;
var bytes = [];
for (var i5 = 0; i5 < length; i5 += 4) {
bytes.push(buffer2[i5 + 3] << 24 | buffer2[i5 + 2] << 16 | buffer2[i5 + 1] << 8 | buffer2[i5]);
}
return bytes;
};
var UTRIE2_SHIFT_2 = 5;
var UTRIE2_SHIFT_1 = 6 + 5;
var UTRIE2_INDEX_SHIFT = 2;
var UTRIE2_SHIFT_1_2 = UTRIE2_SHIFT_1 - UTRIE2_SHIFT_2;
var UTRIE2_LSCP_INDEX_2_OFFSET = 65536 >> UTRIE2_SHIFT_2;
var UTRIE2_DATA_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_2;
var UTRIE2_DATA_MASK = UTRIE2_DATA_BLOCK_LENGTH - 1;
var UTRIE2_LSCP_INDEX_2_LENGTH = 1024 >> UTRIE2_SHIFT_2;
var UTRIE2_INDEX_2_BMP_LENGTH = UTRIE2_LSCP_INDEX_2_OFFSET + UTRIE2_LSCP_INDEX_2_LENGTH;
var UTRIE2_UTF8_2B_INDEX_2_OFFSET = UTRIE2_INDEX_2_BMP_LENGTH;
var UTRIE2_UTF8_2B_INDEX_2_LENGTH = 2048 >> 6;
var UTRIE2_INDEX_1_OFFSET = UTRIE2_UTF8_2B_INDEX_2_OFFSET + UTRIE2_UTF8_2B_INDEX_2_LENGTH;
var UTRIE2_OMITTED_BMP_INDEX_1_LENGTH = 65536 >> UTRIE2_SHIFT_1;
var UTRIE2_INDEX_2_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_1_2;
var UTRIE2_INDEX_2_MASK = UTRIE2_INDEX_2_BLOCK_LENGTH - 1;
var slice16 = function(view, start, end) {
if (view.slice) {
return view.slice(start, end);
}
return new Uint16Array(Array.prototype.slice.call(view, start, end));
};
var slice32 = function(view, start, end) {
if (view.slice) {
return view.slice(start, end);
}
return new Uint32Array(Array.prototype.slice.call(view, start, end));
};
var createTrieFromBase64 = function(base642, _byteLength) {
var buffer2 = decode(base642);
var view32 = Array.isArray(buffer2) ? polyUint32Array(buffer2) : new Uint32Array(buffer2);
var view16 = Array.isArray(buffer2) ? polyUint16Array(buffer2) : new Uint16Array(buffer2);
var headerLength = 24;
var index3 = slice16(view16, headerLength / 2, view32[4] / 2);
var data2 = view32[5] === 2 ? slice16(view16, (headerLength + view32[4]) / 2) : slice32(view32, Math.ceil((headerLength + view32[4]) / 4));
return new Trie(view32[0], view32[1], view32[2], view32[3], index3, data2);
};
var Trie = function() {
function Trie2(initialValue, errorValue, highStart, highValueIndex, index3, data2) {
this.initialValue = initialValue;
this.errorValue = errorValue;
this.highStart = highStart;
this.highValueIndex = highValueIndex;
this.index = index3;
this.data = data2;
}
Trie2.prototype.get = function(codePoint) {
var ix;
if (codePoint >= 0) {
if (codePoint < 55296 || codePoint > 56319 && codePoint <= 65535) {
ix = this.index[codePoint >> UTRIE2_SHIFT_2];
ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);
return this.data[ix];
}
if (codePoint <= 65535) {
ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET + (codePoint - 55296 >> UTRIE2_SHIFT_2)];
ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);
return this.data[ix];
}
if (codePoint < this.highStart) {
ix = UTRIE2_INDEX_1_OFFSET - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH + (codePoint >> UTRIE2_SHIFT_1);
ix = this.index[ix];
ix += codePoint >> UTRIE2_SHIFT_2 & UTRIE2_INDEX_2_MASK;
ix = this.index[ix];
ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);
return this.data[ix];
}
if (codePoint <= 1114111) {
return this.data[this.highValueIndex];
}
}
return this.errorValue;
};
return Trie2;
}();
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var lookup = typeof Uint8Array === "undefined" ? [] : new Uint8Array(256);
for (var i4 = 0; i4 < chars.length; i4++) {
lookup[chars.charCodeAt(i4)] = i4;
}
var Prepend = 1;
var CR = 2;
var LF = 3;
var Control = 4;
var Extend = 5;
var SpacingMark = 7;
var L2 = 8;
var V2 = 9;
var T3 = 10;
var LV = 11;
var LVT = 12;
var ZWJ = 13;
var Extended_Pictographic = 14;
var RI = 15;
var toCodePoints = function(str) {
var codePoints = [];
var i5 = 0;
var length = str.length;
while (i5 < length) {
var value = str.charCodeAt(i5++);
if (value >= 55296 && value <= 56319 && i5 < length) {
var extra = str.charCodeAt(i5++);
if ((extra & 64512) === 56320) {
codePoints.push(((value & 1023) << 10) + (extra & 1023) + 65536);
} else {
codePoints.push(value);
i5--;
}
} else {
codePoints.push(value);
}
}
return codePoints;
};
var fromCodePoint = function() {
var codePoints = [];
for (var _i = 0; _i < arguments.length; _i++) {
codePoints[_i] = arguments[_i];
}
if (String.fromCodePoint) {
return String.fromCodePoint.apply(String, codePoints);
}
var length = codePoints.length;
if (!length) {
return "";
}
var codeUnits = [];
var index3 = -1;
var result = "";
while (++index3 < length) {
var codePoint = codePoints[index3];
if (codePoint <= 65535) {
codeUnits.push(codePoint);
} else {
codePoint -= 65536;
codeUnits.push((codePoint >> 10) + 55296, codePoint % 1024 + 56320);
}
if (index3 + 1 === length || codeUnits.length > 16384) {
result += String.fromCharCode.apply(String, codeUnits);
codeUnits.length = 0;
}
}
return result;
};
var UnicodeTrie = createTrieFromBase64(base64);
var BREAK_NOT_ALLOWED = "\xD7";
var BREAK_ALLOWED = "\xF7";
var codePointToClass = function(codePoint) {
return UnicodeTrie.get(codePoint);
};
var _graphemeBreakAtIndex = function(_codePoints, classTypes, index3) {
var prevIndex = index3 - 2;
var prev = classTypes[prevIndex];
var current = classTypes[index3 - 1];
var next = classTypes[index3];
if (current === CR && next === LF) {
return BREAK_NOT_ALLOWED;
}
if (current === CR || current === LF || current === Control) {
return BREAK_ALLOWED;
}
if (next === CR || next === LF || next === Control) {
return BREAK_ALLOWED;
}
if (current === L2 && [L2, V2, LV, LVT].indexOf(next) !== -1) {
return BREAK_NOT_ALLOWED;
}
if ((current === LV || current === V2) && (next === V2 || next === T3)) {
return BREAK_NOT_ALLOWED;
}
if ((current === LVT || current === T3) && next === T3) {
return BREAK_NOT_ALLOWED;
}
if (next === ZWJ || next === Extend) {
return BREAK_NOT_ALLOWED;
}
if (next === SpacingMark) {
return BREAK_NOT_ALLOWED;
}
if (current === Prepend) {
return BREAK_NOT_ALLOWED;
}
if (current === ZWJ && next === Extended_Pictographic) {
while (prev === Extend) {
prev = classTypes[--prevIndex];
}
if (prev === Extended_Pictographic) {
return BREAK_NOT_ALLOWED;
}
}
if (current === RI && next === RI) {
var countRI = 0;
while (prev === RI) {
countRI++;
prev = classTypes[--prevIndex];
}
if (countRI % 2 === 0) {
return BREAK_NOT_ALLOWED;
}
}
return BREAK_ALLOWED;
};
var GraphemeBreaker = function(str) {
var codePoints = toCodePoints(str);
var length = codePoints.length;
var index3 = 0;
var lastEnd = 0;
var classTypes = codePoints.map(codePointToClass);
return {
next: function() {
if (index3 >= length) {
return { done: true, value: null };
}
var graphemeBreak = BREAK_NOT_ALLOWED;
while (index3 < length && (graphemeBreak = _graphemeBreakAtIndex(codePoints, classTypes, ++index3)) === BREAK_NOT_ALLOWED) {
}
if (graphemeBreak !== BREAK_NOT_ALLOWED || index3 === length) {
var value = fromCodePoint.apply(null, codePoints.slice(lastEnd, index3));
lastEnd = index3;
return { value, done: false };
}
return { done: true, value: null };
}
};
};
var splitGraphemes = function(str) {
var breaker = GraphemeBreaker(str);
var graphemes = [];
var bk;
while (!(bk = breaker.next()).done) {
if (bk.value) {
graphemes.push(bk.value.slice());
}
}
return graphemes;
};
var testRangeBounds = function(document3) {
var TEST_HEIGHT = 123;
if (document3.createRange) {
var range2 = document3.createRange();
if (range2.getBoundingClientRect) {
var testElement = document3.createElement("boundtest");
testElement.style.height = TEST_HEIGHT + "px";
testElement.style.display = "block";
document3.body.appendChild(testElement);
range2.selectNode(testElement);
var rangeBounds = range2.getBoundingClientRect();
var rangeHeight = Math.round(rangeBounds.height);
document3.body.removeChild(testElement);
if (rangeHeight === TEST_HEIGHT) {
return true;
}
}
}
return false;
};
var testIOSLineBreak = function(document3) {
var testElement = document3.createElement("boundtest");
testElement.style.width = "50px";
testElement.style.display = "block";
testElement.style.fontSize = "12px";
testElement.style.letterSpacing = "0px";
testElement.style.wordSpacing = "0px";
document3.body.appendChild(testElement);
var range2 = document3.createRange();
testElement.innerHTML = typeof "".repeat === "function" ? "&#128104;".repeat(10) : "";
var node2 = testElement.firstChild;
var textList = toCodePoints$1(node2.data).map(function(i5) {
return fromCodePoint$1(i5);
});
var offset = 0;
var prev = {};
var supports = textList.every(function(text, i5) {
range2.setStart(node2, offset);
range2.setEnd(node2, offset + text.length);
var rect = range2.getBoundingClientRect();
offset += text.length;
var boundAhead = rect.x > prev.x || rect.y > prev.y;
prev = rect;
if (i5 === 0) {
return true;
}
return boundAhead;
});
document3.body.removeChild(testElement);
return supports;
};
var testCORS = function() {
return typeof new Image().crossOrigin !== "undefined";
};
var testResponseType = function() {
return typeof new XMLHttpRequest().responseType === "string";
};
var testSVG = function(document3) {
var img = new Image();
var canvas = document3.createElement("canvas");
var ctx = canvas.getContext("2d");
if (!ctx) {
return false;
}
img.src = "data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";
try {
ctx.drawImage(img, 0, 0);
canvas.toDataURL();
} catch (e6) {
return false;
}
return true;
};
var isGreenPixel = function(data2) {
return data2[0] === 0 && data2[1] === 255 && data2[2] === 0 && data2[3] === 255;
};
var testForeignObject = function(document3) {
var canvas = document3.createElement("canvas");
var size = 100;
canvas.width = size;
canvas.height = size;
var ctx = canvas.getContext("2d");
if (!ctx) {
return Promise.reject(false);
}
ctx.fillStyle = "rgb(0, 255, 0)";
ctx.fillRect(0, 0, size, size);
var img = new Image();
var greenImageSrc = canvas.toDataURL();
img.src = greenImageSrc;
var svg = createForeignObjectSVG(size, size, 0, 0, img);
ctx.fillStyle = "red";
ctx.fillRect(0, 0, size, size);
return loadSerializedSVG$1(svg).then(function(img2) {
ctx.drawImage(img2, 0, 0);
var data2 = ctx.getImageData(0, 0, size, size).data;
ctx.fillStyle = "red";
ctx.fillRect(0, 0, size, size);
var node2 = document3.createElement("div");
node2.style.backgroundImage = "url(" + greenImageSrc + ")";
node2.style.height = size + "px";
return isGreenPixel(data2) ? loadSerializedSVG$1(createForeignObjectSVG(size, size, 0, 0, node2)) : Promise.reject(false);
}).then(function(img2) {
ctx.drawImage(img2, 0, 0);
return isGreenPixel(ctx.getImageData(0, 0, size, size).data);
}).catch(function() {
return false;
});
};
var createForeignObjectSVG = function(width, height, x3, y4, node2) {
var xmlns = "http://www.w3.org/2000/svg";
var svg = document.createElementNS(xmlns, "svg");
var foreignObject = document.createElementNS(xmlns, "foreignObject");
svg.setAttributeNS(null, "width", width.toString());
svg.setAttributeNS(null, "height", height.toString());
foreignObject.setAttributeNS(null, "width", "100%");
foreignObject.setAttributeNS(null, "height", "100%");
foreignObject.setAttributeNS(null, "x", x3.toString());
foreignObject.setAttributeNS(null, "y", y4.toString());
foreignObject.setAttributeNS(null, "externalResourcesRequired", "true");
svg.appendChild(foreignObject);
foreignObject.appendChild(node2);
return svg;
};
var loadSerializedSVG$1 = function(svg) {
return new Promise(function(resolve3, reject2) {
var img = new Image();
img.onload = function() {
return resolve3(img);
};
img.onerror = reject2;
img.src = "data:image/svg+xml;charset=utf-8," + encodeURIComponent(new XMLSerializer().serializeToString(svg));
});
};
var FEATURES = {
get SUPPORT_RANGE_BOUNDS() {
var value = testRangeBounds(document);
Object.defineProperty(FEATURES, "SUPPORT_RANGE_BOUNDS", { value });
return value;
},
get SUPPORT_WORD_BREAKING() {
var value = FEATURES.SUPPORT_RANGE_BOUNDS && testIOSLineBreak(document);
Object.defineProperty(FEATURES, "SUPPORT_WORD_BREAKING", { value });
return value;
},
get SUPPORT_SVG_DRAWING() {
var value = testSVG(document);
Object.defineProperty(FEATURES, "SUPPORT_SVG_DRAWING", { value });
return value;
},
get SUPPORT_FOREIGNOBJECT_DRAWING() {
var value = typeof Array.from === "function" && typeof window.fetch === "function" ? testForeignObject(document) : Promise.resolve(false);
Object.defineProperty(FEATURES, "SUPPORT_FOREIGNOBJECT_DRAWING", { value });
return value;
},
get SUPPORT_CORS_IMAGES() {
var value = testCORS();
Object.defineProperty(FEATURES, "SUPPORT_CORS_IMAGES", { value });
return value;
},
get SUPPORT_RESPONSE_TYPE() {
var value = testResponseType();
Object.defineProperty(FEATURES, "SUPPORT_RESPONSE_TYPE", { value });
return value;
},
get SUPPORT_CORS_XHR() {
var value = "withCredentials" in new XMLHttpRequest();
Object.defineProperty(FEATURES, "SUPPORT_CORS_XHR", { value });
return value;
}
};
var TextBounds = function() {
function TextBounds2(text, bounds) {
this.text = text;
this.bounds = bounds;
}
return TextBounds2;
}();
var parseTextBounds = function(context2, value, styles, node2) {
var textList = breakText(value, styles);
var textBounds = [];
var offset = 0;
textList.forEach(function(text) {
if (styles.textDecorationLine.length || text.trim().length > 0) {
if (FEATURES.SUPPORT_RANGE_BOUNDS) {
if (!FEATURES.SUPPORT_WORD_BREAKING) {
textBounds.push(new TextBounds(text, Bounds.fromDOMRectList(context2, createRange(node2, offset, text.length).getClientRects())));
} else {
textBounds.push(new TextBounds(text, getRangeBounds(context2, node2, offset, text.length)));
}
} else {
var replacementNode = node2.splitText(text.length);
textBounds.push(new TextBounds(text, getWrapperBounds(context2, node2)));
node2 = replacementNode;
}
} else if (!FEATURES.SUPPORT_RANGE_BOUNDS) {
node2 = node2.splitText(text.length);
}
offset += text.length;
});
return textBounds;
};
var getWrapperBounds = function(context2, node2) {
var ownerDocument = node2.ownerDocument;
if (ownerDocument) {
var wrapper = ownerDocument.createElement("html2canvaswrapper");
wrapper.appendChild(node2.cloneNode(true));
var parentNode = node2.parentNode;
if (parentNode) {
parentNode.replaceChild(wrapper, node2);
var bounds = parseBounds(context2, wrapper);
if (wrapper.firstChild) {
parentNode.replaceChild(wrapper.firstChild, wrapper);
}
return bounds;
}
}
return Bounds.EMPTY;
};
var createRange = function(node2, offset, length) {
var ownerDocument = node2.ownerDocument;
if (!ownerDocument) {
throw new Error("Node has no owner document");
}
var range2 = ownerDocument.createRange();
range2.setStart(node2, offset);
range2.setEnd(node2, offset + length);
return range2;
};
var getRangeBounds = function(context2, node2, offset, length) {
return Bounds.fromClientRect(context2, createRange(node2, offset, length).getBoundingClientRect());
};
var breakText = function(value, styles) {
return styles.letterSpacing !== 0 ? splitGraphemes(value) : breakWords(value, styles);
};
var wordSeparators = [32, 160, 4961, 65792, 65793, 4153, 4241];
var breakWords = function(str, styles) {
var breaker = LineBreaker(str, {
lineBreak: styles.lineBreak,
wordBreak: styles.overflowWrap === "break-word" ? "break-word" : styles.wordBreak
});
var words = [];
var bk;
var _loop_1 = function() {
if (bk.value) {
var value = bk.value.slice();
var codePoints = toCodePoints$1(value);
var word_1 = "";
codePoints.forEach(function(codePoint) {
if (wordSeparators.indexOf(codePoint) === -1) {
word_1 += fromCodePoint$1(codePoint);
} else {
if (word_1.length) {
words.push(word_1);
}
words.push(fromCodePoint$1(codePoint));
word_1 = "";
}
});
if (word_1.length) {
words.push(word_1);
}
}
};
while (!(bk = breaker.next()).done) {
_loop_1();
}
return words;
};
var TextContainer = function() {
function TextContainer2(context2, node2, styles) {
this.text = transform(node2.data, styles.textTransform);
this.textBounds = parseTextBounds(context2, this.text, styles, node2);
}
return TextContainer2;
}();
var transform = function(text, transform2) {
switch (transform2) {
case TEXT_TRANSFORM.LOWERCASE:
return text.toLowerCase();
case TEXT_TRANSFORM.CAPITALIZE:
return text.replace(CAPITALIZE, capitalize);
case TEXT_TRANSFORM.UPPERCASE:
return text.toUpperCase();
default:
return text;
}
};
var CAPITALIZE = /(^|\s|:|-|\(|\))([a-z])/g;
var capitalize = function(m5, p1, p22) {
if (m5.length > 0) {
return p1 + p22.toUpperCase();
}
return m5;
};
var ImageElementContainer = function(_super) {
__extends2(ImageElementContainer2, _super);
function ImageElementContainer2(context2, img) {
var _this = _super.call(this, context2, img) || this;
_this.src = img.currentSrc || img.src;
_this.intrinsicWidth = img.naturalWidth;
_this.intrinsicHeight = img.naturalHeight;
_this.context.cache.addImage(_this.src);
return _this;
}
return ImageElementContainer2;
}(ElementContainer);
var CanvasElementContainer = function(_super) {
__extends2(CanvasElementContainer2, _super);
function CanvasElementContainer2(context2, canvas) {
var _this = _super.call(this, context2, canvas) || this;
_this.canvas = canvas;
_this.intrinsicWidth = canvas.width;
_this.intrinsicHeight = canvas.height;
return _this;
}
return CanvasElementContainer2;
}(ElementContainer);
var SVGElementContainer = function(_super) {
__extends2(SVGElementContainer2, _super);
function SVGElementContainer2(context2, img) {
var _this = _super.call(this, context2, img) || this;
var s4 = new XMLSerializer();
var bounds = parseBounds(context2, img);
img.setAttribute("width", bounds.width + "px");
img.setAttribute("height", bounds.height + "px");
_this.svg = "data:image/svg+xml," + encodeURIComponent(s4.serializeToString(img));
_this.intrinsicWidth = img.width.baseVal.value;
_this.intrinsicHeight = img.height.baseVal.value;
_this.context.cache.addImage(_this.svg);
return _this;
}
return SVGElementContainer2;
}(ElementContainer);
var LIElementContainer = function(_super) {
__extends2(LIElementContainer2, _super);
function LIElementContainer2(context2, element) {
var _this = _super.call(this, context2, element) || this;
_this.value = element.value;
return _this;
}
return LIElementContainer2;
}(ElementContainer);
var OLElementContainer = function(_super) {
__extends2(OLElementContainer2, _super);
function OLElementContainer2(context2, element) {
var _this = _super.call(this, context2, element) || this;
_this.start = element.start;
_this.reversed = typeof element.reversed === "boolean" && element.reversed === true;
return _this;
}
return OLElementContainer2;
}(ElementContainer);
var CHECKBOX_BORDER_RADIUS = [
{
type: 15,
flags: 0,
unit: "px",
number: 3
}
];
var RADIO_BORDER_RADIUS = [
{
type: 16,
flags: 0,
number: 50
}
];
var reformatInputBounds = function(bounds) {
if (bounds.width > bounds.height) {
return new Bounds(bounds.left + (bounds.width - bounds.height) / 2, bounds.top, bounds.height, bounds.height);
} else if (bounds.width < bounds.height) {
return new Bounds(bounds.left, bounds.top + (bounds.height - bounds.width) / 2, bounds.width, bounds.width);
}
return bounds;
};
var getInputValue = function(node2) {
var value = node2.type === PASSWORD ? new Array(node2.value.length + 1).join("\u2022") : node2.value;
return value.length === 0 ? node2.placeholder || "" : value;
};
var CHECKBOX = "checkbox";
var RADIO = "radio";
var PASSWORD = "password";
var INPUT_COLOR = 707406591;
var InputElementContainer = function(_super) {
__extends2(InputElementContainer2, _super);
function InputElementContainer2(context2, input) {
var _this = _super.call(this, context2, input) || this;
_this.type = input.type.toLowerCase();
_this.checked = input.checked;
_this.value = getInputValue(input);
if (_this.type === CHECKBOX || _this.type === RADIO) {
_this.styles.backgroundColor = 3739148031;
_this.styles.borderTopColor = _this.styles.borderRightColor = _this.styles.borderBottomColor = _this.styles.borderLeftColor = 2779096575;
_this.styles.borderTopWidth = _this.styles.borderRightWidth = _this.styles.borderBottomWidth = _this.styles.borderLeftWidth = 1;
_this.styles.borderTopStyle = _this.styles.borderRightStyle = _this.styles.borderBottomStyle = _this.styles.borderLeftStyle = BORDER_STYLE.SOLID;
_this.styles.backgroundClip = [BACKGROUND_CLIP.BORDER_BOX];
_this.styles.backgroundOrigin = [0];
_this.bounds = reformatInputBounds(_this.bounds);
}
switch (_this.type) {
case CHECKBOX:
_this.styles.borderTopRightRadius = _this.styles.borderTopLeftRadius = _this.styles.borderBottomRightRadius = _this.styles.borderBottomLeftRadius = CHECKBOX_BORDER_RADIUS;
break;
case RADIO:
_this.styles.borderTopRightRadius = _this.styles.borderTopLeftRadius = _this.styles.borderBottomRightRadius = _this.styles.borderBottomLeftRadius = RADIO_BORDER_RADIUS;
break;
}
return _this;
}
return InputElementContainer2;
}(ElementContainer);
var SelectElementContainer = function(_super) {
__extends2(SelectElementContainer2, _super);
function SelectElementContainer2(context2, element) {
var _this = _super.call(this, context2, element) || this;
var option = element.options[element.selectedIndex || 0];
_this.value = option ? option.text || "" : "";
return _this;
}
return SelectElementContainer2;
}(ElementContainer);
var TextareaElementContainer = function(_super) {
__extends2(TextareaElementContainer2, _super);
function TextareaElementContainer2(context2, element) {
var _this = _super.call(this, context2, element) || this;
_this.value = element.value;
return _this;
}
return TextareaElementContainer2;
}(ElementContainer);
var IFrameElementContainer = function(_super) {
__extends2(IFrameElementContainer2, _super);
function IFrameElementContainer2(context2, iframe) {
var _this = _super.call(this, context2, iframe) || this;
_this.src = iframe.src;
_this.width = parseInt(iframe.width, 10) || 0;
_this.height = parseInt(iframe.height, 10) || 0;
_this.backgroundColor = _this.styles.backgroundColor;
try {
if (iframe.contentWindow && iframe.contentWindow.document && iframe.contentWindow.document.documentElement) {
_this.tree = parseTree(context2, iframe.contentWindow.document.documentElement);
var documentBackgroundColor = iframe.contentWindow.document.documentElement ? parseColor(context2, getComputedStyle(iframe.contentWindow.document.documentElement).backgroundColor) : COLORS.TRANSPARENT;
var bodyBackgroundColor = iframe.contentWindow.document.body ? parseColor(context2, getComputedStyle(iframe.contentWindow.document.body).backgroundColor) : COLORS.TRANSPARENT;
_this.backgroundColor = isTransparent(documentBackgroundColor) ? isTransparent(bodyBackgroundColor) ? _this.styles.backgroundColor : bodyBackgroundColor : documentBackgroundColor;
}
} catch (e6) {
}
return _this;
}
return IFrameElementContainer2;
}(ElementContainer);
var LIST_OWNERS = ["OL", "UL", "MENU"];
var parseNodeTree = function(context2, node2, parent, root2) {
for (var childNode = node2.firstChild, nextNode = void 0; childNode; childNode = nextNode) {
nextNode = childNode.nextSibling;
if (isTextNode(childNode) && childNode.data.trim().length > 0) {
parent.textNodes.push(new TextContainer(context2, childNode, parent.styles));
} else if (isElementNode(childNode)) {
if (isSlotElement(childNode) && childNode.assignedNodes) {
childNode.assignedNodes().forEach(function(childNode2) {
return parseNodeTree(context2, childNode2, parent, root2);
});
} else {
var container = createContainer(context2, childNode);
if (container.styles.isVisible()) {
if (createsRealStackingContext(childNode, container, root2)) {
container.flags |= 4;
} else if (createsStackingContext(container.styles)) {
container.flags |= 2;
}
if (LIST_OWNERS.indexOf(childNode.tagName) !== -1) {
container.flags |= 8;
}
parent.elements.push(container);
childNode.slot;
if (childNode.shadowRoot) {
parseNodeTree(context2, childNode.shadowRoot, container, root2);
} else if (!isTextareaElement(childNode) && !isSVGElement(childNode) && !isSelectElement(childNode)) {
parseNodeTree(context2, childNode, container, root2);
}
}
}
}
}
};
var createContainer = function(context2, element) {
if (isImageElement(element)) {
return new ImageElementContainer(context2, element);
}
if (isCanvasElement(element)) {
return new CanvasElementContainer(context2, element);
}
if (isSVGElement(element)) {
return new SVGElementContainer(context2, element);
}
if (isLIElement(element)) {
return new LIElementContainer(context2, element);
}
if (isOLElement(element)) {
return new OLElementContainer(context2, element);
}
if (isInputElement(element)) {
return new InputElementContainer(context2, element);
}
if (isSelectElement(element)) {
return new SelectElementContainer(context2, element);
}
if (isTextareaElement(element)) {
return new TextareaElementContainer(context2, element);
}
if (isIFrameElement(element)) {
return new IFrameElementContainer(context2, element);
}
return new ElementContainer(context2, element);
};
var parseTree = function(context2, element) {
var container = createContainer(context2, element);
container.flags |= 4;
parseNodeTree(context2, element, container, container);
return container;
};
var createsRealStackingContext = function(node2, container, root2) {
return container.styles.isPositionedWithZIndex() || container.styles.opacity < 1 || container.styles.isTransformed() || isBodyElement(node2) && root2.styles.isTransparent();
};
var createsStackingContext = function(styles) {
return styles.isPositioned() || styles.isFloating();
};
var isTextNode = function(node2) {
return node2.nodeType === Node.TEXT_NODE;
};
var isElementNode = function(node2) {
return node2.nodeType === Node.ELEMENT_NODE;
};
var isHTMLElementNode = function(node2) {
return isElementNode(node2) && typeof node2.style !== "undefined" && !isSVGElementNode(node2);
};
var isSVGElementNode = function(element) {
return typeof element.className === "object";
};
var isLIElement = function(node2) {
return node2.tagName === "LI";
};
var isOLElement = function(node2) {
return node2.tagName === "OL";
};
var isInputElement = function(node2) {
return node2.tagName === "INPUT";
};
var isHTMLElement = function(node2) {
return node2.tagName === "HTML";
};
var isSVGElement = function(node2) {
return node2.tagName === "svg";
};
var isBodyElement = function(node2) {
return node2.tagName === "BODY";
};
var isCanvasElement = function(node2) {
return node2.tagName === "CANVAS";
};
var isImageElement = function(node2) {
return node2.tagName === "IMG";
};
var isIFrameElement = function(node2) {
return node2.tagName === "IFRAME";
};
var isStyleElement = function(node2) {
return node2.tagName === "STYLE";
};
var isScriptElement = function(node2) {
return node2.tagName === "SCRIPT";
};
var isTextareaElement = function(node2) {
return node2.tagName === "TEXTAREA";
};
var isSelectElement = function(node2) {
return node2.tagName === "SELECT";
};
var isSlotElement = function(node2) {
return node2.tagName === "SLOT";
};
var CounterState = function() {
function CounterState2() {
this.counters = {};
}
CounterState2.prototype.getCounterValue = function(name2) {
var counter = this.counters[name2];
if (counter && counter.length) {
return counter[counter.length - 1];
}
return 1;
};
CounterState2.prototype.getCounterValues = function(name2) {
var counter = this.counters[name2];
return counter ? counter : [];
};
CounterState2.prototype.pop = function(counters) {
var _this = this;
counters.forEach(function(counter) {
return _this.counters[counter].pop();
});
};
CounterState2.prototype.parse = function(style) {
var _this = this;
var counterIncrement2 = style.counterIncrement;
var counterReset2 = style.counterReset;
var canReset = true;
if (counterIncrement2 !== null) {
counterIncrement2.forEach(function(entry) {
var counter = _this.counters[entry.counter];
if (counter && entry.increment !== 0) {
canReset = false;
if (!counter.length) {
counter.push(1);
}
counter[Math.max(0, counter.length - 1)] += entry.increment;
}
});
}
var counterNames = [];
if (canReset) {
counterReset2.forEach(function(entry) {
var counter = _this.counters[entry.counter];
counterNames.push(entry.counter);
if (!counter) {
counter = _this.counters[entry.counter] = [];
}
counter.push(entry.reset);
});
}
return counterNames;
};
return CounterState2;
}();
var ROMAN_UPPER = {
integers: [1e3, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1],
values: ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"]
};
var ARMENIAN = {
integers: [
9e3,
8e3,
7e3,
6e3,
5e3,
4e3,
3e3,
2e3,
1e3,
900,
800,
700,
600,
500,
400,
300,
200,
100,
90,
80,
70,
60,
50,
40,
30,
20,
10,
9,
8,
7,
6,
5,
4,
3,
2,
1
],
values: [
"\u0554",
"\u0553",
"\u0552",
"\u0551",
"\u0550",
"\u054F",
"\u054E",
"\u054D",
"\u054C",
"\u054B",
"\u054A",
"\u0549",
"\u0548",
"\u0547",
"\u0546",
"\u0545",
"\u0544",
"\u0543",
"\u0542",
"\u0541",
"\u0540",
"\u053F",
"\u053E",
"\u053D",
"\u053C",
"\u053B",
"\u053A",
"\u0539",
"\u0538",
"\u0537",
"\u0536",
"\u0535",
"\u0534",
"\u0533",
"\u0532",
"\u0531"
]
};
var HEBREW = {
integers: [
1e4,
9e3,
8e3,
7e3,
6e3,
5e3,
4e3,
3e3,
2e3,
1e3,
400,
300,
200,
100,
90,
80,
70,
60,
50,
40,
30,
20,
19,
18,
17,
16,
15,
10,
9,
8,
7,
6,
5,
4,
3,
2,
1
],
values: [
"\u05D9\u05F3",
"\u05D8\u05F3",
"\u05D7\u05F3",
"\u05D6\u05F3",
"\u05D5\u05F3",
"\u05D4\u05F3",
"\u05D3\u05F3",
"\u05D2\u05F3",
"\u05D1\u05F3",
"\u05D0\u05F3",
"\u05EA",
"\u05E9",
"\u05E8",
"\u05E7",
"\u05E6",
"\u05E4",
"\u05E2",
"\u05E1",
"\u05E0",
"\u05DE",
"\u05DC",
"\u05DB",
"\u05D9\u05D8",
"\u05D9\u05D7",
"\u05D9\u05D6",
"\u05D8\u05D6",
"\u05D8\u05D5",
"\u05D9",
"\u05D8",
"\u05D7",
"\u05D6",
"\u05D5",
"\u05D4",
"\u05D3",
"\u05D2",
"\u05D1",
"\u05D0"
]
};
var GEORGIAN = {
integers: [
1e4,
9e3,
8e3,
7e3,
6e3,
5e3,
4e3,
3e3,
2e3,
1e3,
900,
800,
700,
600,
500,
400,
300,
200,
100,
90,
80,
70,
60,
50,
40,
30,
20,
10,
9,
8,
7,
6,
5,
4,
3,
2,
1
],
values: [
"\u10F5",
"\u10F0",
"\u10EF",
"\u10F4",
"\u10EE",
"\u10ED",
"\u10EC",
"\u10EB",
"\u10EA",
"\u10E9",
"\u10E8",
"\u10E7",
"\u10E6",
"\u10E5",
"\u10E4",
"\u10F3",
"\u10E2",
"\u10E1",
"\u10E0",
"\u10DF",
"\u10DE",
"\u10DD",
"\u10F2",
"\u10DC",
"\u10DB",
"\u10DA",
"\u10D9",
"\u10D8",
"\u10D7",
"\u10F1",
"\u10D6",
"\u10D5",
"\u10D4",
"\u10D3",
"\u10D2",
"\u10D1",
"\u10D0"
]
};
var createAdditiveCounter = function(value, min9, max8, symbols, fallback, suffix) {
if (value < min9 || value > max8) {
return createCounterText(value, fallback, suffix.length > 0);
}
return symbols.integers.reduce(function(string, integer, index3) {
while (value >= integer) {
value -= integer;
string += symbols.values[index3];
}
return string;
}, "") + suffix;
};
var createCounterStyleWithSymbolResolver = function(value, codePointRangeLength, isNumeric2, resolver) {
var string = "";
do {
if (!isNumeric2) {
value--;
}
string = resolver(value) + string;
value /= codePointRangeLength;
} while (value * codePointRangeLength >= codePointRangeLength);
return string;
};
var createCounterStyleFromRange = function(value, codePointRangeStart, codePointRangeEnd, isNumeric2, suffix) {
var codePointRangeLength = codePointRangeEnd - codePointRangeStart + 1;
return (value < 0 ? "-" : "") + (createCounterStyleWithSymbolResolver(Math.abs(value), codePointRangeLength, isNumeric2, function(codePoint) {
return fromCodePoint$1(Math.floor(codePoint % codePointRangeLength) + codePointRangeStart);
}) + suffix);
};
var createCounterStyleFromSymbols = function(value, symbols, suffix) {
if (suffix === void 0) {
suffix = ". ";
}
var codePointRangeLength = symbols.length;
return createCounterStyleWithSymbolResolver(Math.abs(value), codePointRangeLength, false, function(codePoint) {
return symbols[Math.floor(codePoint % codePointRangeLength)];
}) + suffix;
};
var CJK_ZEROS = 1 << 0;
var CJK_TEN_COEFFICIENTS = 1 << 1;
var CJK_TEN_HIGH_COEFFICIENTS = 1 << 2;
var CJK_HUNDRED_COEFFICIENTS = 1 << 3;
var createCJKCounter = function(value, numbers, multipliers, negativeSign, suffix, flags2) {
if (value < -9999 || value > 9999) {
return createCounterText(value, LIST_STYLE_TYPE.CJK_DECIMAL, suffix.length > 0);
}
var tmp = Math.abs(value);
var string = suffix;
if (tmp === 0) {
return numbers[0] + string;
}
for (var digit = 0; tmp > 0 && digit <= 4; digit++) {
var coefficient = tmp % 10;
if (coefficient === 0 && contains2(flags2, CJK_ZEROS) && string !== "") {
string = numbers[coefficient] + string;
} else if (coefficient > 1 || coefficient === 1 && digit === 0 || coefficient === 1 && digit === 1 && contains2(flags2, CJK_TEN_COEFFICIENTS) || coefficient === 1 && digit === 1 && contains2(flags2, CJK_TEN_HIGH_COEFFICIENTS) && value > 100 || coefficient === 1 && digit > 1 && contains2(flags2, CJK_HUNDRED_COEFFICIENTS)) {
string = numbers[coefficient] + (digit > 0 ? multipliers[digit - 1] : "") + string;
} else if (coefficient === 1 && digit > 0) {
string = multipliers[digit - 1] + string;
}
tmp = Math.floor(tmp / 10);
}
return (value < 0 ? negativeSign : "") + string;
};
var CHINESE_INFORMAL_MULTIPLIERS = "\u5341\u767E\u5343\u842C";
var CHINESE_FORMAL_MULTIPLIERS = "\u62FE\u4F70\u4EDF\u842C";
var JAPANESE_NEGATIVE = "\u30DE\u30A4\u30CA\u30B9";
var KOREAN_NEGATIVE = "\uB9C8\uC774\uB108\uC2A4";
var createCounterText = function(value, type2, appendSuffix) {
var defaultSuffix = appendSuffix ? ". " : "";
var cjkSuffix = appendSuffix ? "\u3001" : "";
var koreanSuffix = appendSuffix ? ", " : "";
var spaceSuffix = appendSuffix ? " " : "";
switch (type2) {
case LIST_STYLE_TYPE.DISC:
return "\u2022" + spaceSuffix;
case LIST_STYLE_TYPE.CIRCLE:
return "\u25E6" + spaceSuffix;
case LIST_STYLE_TYPE.SQUARE:
return "\u25FE" + spaceSuffix;
case LIST_STYLE_TYPE.DECIMAL_LEADING_ZERO:
var string = createCounterStyleFromRange(value, 48, 57, true, defaultSuffix);
return string.length < 4 ? "0" + string : string;
case LIST_STYLE_TYPE.CJK_DECIMAL:
return createCounterStyleFromSymbols(value, "\u3007\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D", cjkSuffix);
case LIST_STYLE_TYPE.LOWER_ROMAN:
return createAdditiveCounter(value, 1, 3999, ROMAN_UPPER, LIST_STYLE_TYPE.DECIMAL, defaultSuffix).toLowerCase();
case LIST_STYLE_TYPE.UPPER_ROMAN:
return createAdditiveCounter(value, 1, 3999, ROMAN_UPPER, LIST_STYLE_TYPE.DECIMAL, defaultSuffix);
case LIST_STYLE_TYPE.LOWER_GREEK:
return createCounterStyleFromRange(value, 945, 969, false, defaultSuffix);
case LIST_STYLE_TYPE.LOWER_ALPHA:
return createCounterStyleFromRange(value, 97, 122, false, defaultSuffix);
case LIST_STYLE_TYPE.UPPER_ALPHA:
return createCounterStyleFromRange(value, 65, 90, false, defaultSuffix);
case LIST_STYLE_TYPE.ARABIC_INDIC:
return createCounterStyleFromRange(value, 1632, 1641, true, defaultSuffix);
case LIST_STYLE_TYPE.ARMENIAN:
case LIST_STYLE_TYPE.UPPER_ARMENIAN:
return createAdditiveCounter(value, 1, 9999, ARMENIAN, LIST_STYLE_TYPE.DECIMAL, defaultSuffix);
case LIST_STYLE_TYPE.LOWER_ARMENIAN:
return createAdditiveCounter(value, 1, 9999, ARMENIAN, LIST_STYLE_TYPE.DECIMAL, defaultSuffix).toLowerCase();
case LIST_STYLE_TYPE.BENGALI:
return createCounterStyleFromRange(value, 2534, 2543, true, defaultSuffix);
case LIST_STYLE_TYPE.CAMBODIAN:
case LIST_STYLE_TYPE.KHMER:
return createCounterStyleFromRange(value, 6112, 6121, true, defaultSuffix);
case LIST_STYLE_TYPE.CJK_EARTHLY_BRANCH:
return createCounterStyleFromSymbols(value, "\u5B50\u4E11\u5BC5\u536F\u8FB0\u5DF3\u5348\u672A\u7533\u9149\u620C\u4EA5", cjkSuffix);
case LIST_STYLE_TYPE.CJK_HEAVENLY_STEM:
return createCounterStyleFromSymbols(value, "\u7532\u4E59\u4E19\u4E01\u620A\u5DF1\u5E9A\u8F9B\u58EC\u7678", cjkSuffix);
case LIST_STYLE_TYPE.CJK_IDEOGRAPHIC:
case LIST_STYLE_TYPE.TRAD_CHINESE_INFORMAL:
return createCJKCounter(value, "\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D", CHINESE_INFORMAL_MULTIPLIERS, "\u8CA0", cjkSuffix, CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);
case LIST_STYLE_TYPE.TRAD_CHINESE_FORMAL:
return createCJKCounter(value, "\u96F6\u58F9\u8CB3\u53C3\u8086\u4F0D\u9678\u67D2\u634C\u7396", CHINESE_FORMAL_MULTIPLIERS, "\u8CA0", cjkSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);
case LIST_STYLE_TYPE.SIMP_CHINESE_INFORMAL:
return createCJKCounter(value, "\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D", CHINESE_INFORMAL_MULTIPLIERS, "\u8D1F", cjkSuffix, CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);
case LIST_STYLE_TYPE.SIMP_CHINESE_FORMAL:
return createCJKCounter(value, "\u96F6\u58F9\u8D30\u53C1\u8086\u4F0D\u9646\u67D2\u634C\u7396", CHINESE_FORMAL_MULTIPLIERS, "\u8D1F", cjkSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS | CJK_HUNDRED_COEFFICIENTS);
case LIST_STYLE_TYPE.JAPANESE_INFORMAL:
return createCJKCounter(value, "\u3007\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D", "\u5341\u767E\u5343\u4E07", JAPANESE_NEGATIVE, cjkSuffix, 0);
case LIST_STYLE_TYPE.JAPANESE_FORMAL:
return createCJKCounter(value, "\u96F6\u58F1\u5F10\u53C2\u56DB\u4F0D\u516D\u4E03\u516B\u4E5D", "\u62FE\u767E\u5343\u4E07", JAPANESE_NEGATIVE, cjkSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS);
case LIST_STYLE_TYPE.KOREAN_HANGUL_FORMAL:
return createCJKCounter(value, "\uC601\uC77C\uC774\uC0BC\uC0AC\uC624\uC721\uCE60\uD314\uAD6C", "\uC2ED\uBC31\uCC9C\uB9CC", KOREAN_NEGATIVE, koreanSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS);
case LIST_STYLE_TYPE.KOREAN_HANJA_INFORMAL:
return createCJKCounter(value, "\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D", "\u5341\u767E\u5343\u842C", KOREAN_NEGATIVE, koreanSuffix, 0);
case LIST_STYLE_TYPE.KOREAN_HANJA_FORMAL:
return createCJKCounter(value, "\u96F6\u58F9\u8CB3\u53C3\u56DB\u4E94\u516D\u4E03\u516B\u4E5D", "\u62FE\u767E\u5343", KOREAN_NEGATIVE, koreanSuffix, CJK_ZEROS | CJK_TEN_COEFFICIENTS | CJK_TEN_HIGH_COEFFICIENTS);
case LIST_STYLE_TYPE.DEVANAGARI:
return createCounterStyleFromRange(value, 2406, 2415, true, defaultSuffix);
case LIST_STYLE_TYPE.GEORGIAN:
return createAdditiveCounter(value, 1, 19999, GEORGIAN, LIST_STYLE_TYPE.DECIMAL, defaultSuffix);
case LIST_STYLE_TYPE.GUJARATI:
return createCounterStyleFromRange(value, 2790, 2799, true, defaultSuffix);
case LIST_STYLE_TYPE.GURMUKHI:
return createCounterStyleFromRange(value, 2662, 2671, true, defaultSuffix);
case LIST_STYLE_TYPE.HEBREW:
return createAdditiveCounter(value, 1, 10999, HEBREW, LIST_STYLE_TYPE.DECIMAL, defaultSuffix);
case LIST_STYLE_TYPE.HIRAGANA:
return createCounterStyleFromSymbols(value, "\u3042\u3044\u3046\u3048\u304A\u304B\u304D\u304F\u3051\u3053\u3055\u3057\u3059\u305B\u305D\u305F\u3061\u3064\u3066\u3068\u306A\u306B\u306C\u306D\u306E\u306F\u3072\u3075\u3078\u307B\u307E\u307F\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308A\u308B\u308C\u308D\u308F\u3090\u3091\u3092\u3093");
case LIST_STYLE_TYPE.HIRAGANA_IROHA:
return createCounterStyleFromSymbols(value, "\u3044\u308D\u306F\u306B\u307B\u3078\u3068\u3061\u308A\u306C\u308B\u3092\u308F\u304B\u3088\u305F\u308C\u305D\u3064\u306D\u306A\u3089\u3080\u3046\u3090\u306E\u304A\u304F\u3084\u307E\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304D\u3086\u3081\u307F\u3057\u3091\u3072\u3082\u305B\u3059");
case LIST_STYLE_TYPE.KANNADA:
return createCounterStyleFromRange(value, 3302, 3311, true, defaultSuffix);
case LIST_STYLE_TYPE.KATAKANA:
return createCounterStyleFromSymbols(value, "\u30A2\u30A4\u30A6\u30A8\u30AA\u30AB\u30AD\u30AF\u30B1\u30B3\u30B5\u30B7\u30B9\u30BB\u30BD\u30BF\u30C1\u30C4\u30C6\u30C8\u30CA\u30CB\u30CC\u30CD\u30CE\u30CF\u30D2\u30D5\u30D8\u30DB\u30DE\u30DF\u30E0\u30E1\u30E2\u30E4\u30E6\u30E8\u30E9\u30EA\u30EB\u30EC\u30ED\u30EF\u30F0\u30F1\u30F2\u30F3", cjkSuffix);
case LIST_STYLE_TYPE.KATAKANA_IROHA:
return createCounterStyleFromSymbols(value, "\u30A4\u30ED\u30CF\u30CB\u30DB\u30D8\u30C8\u30C1\u30EA\u30CC\u30EB\u30F2\u30EF\u30AB\u30E8\u30BF\u30EC\u30BD\u30C4\u30CD\u30CA\u30E9\u30E0\u30A6\u30F0\u30CE\u30AA\u30AF\u30E4\u30DE\u30B1\u30D5\u30B3\u30A8\u30C6\u30A2\u30B5\u30AD\u30E6\u30E1\u30DF\u30B7\u30F1\u30D2\u30E2\u30BB\u30B9", cjkSuffix);
case LIST_STYLE_TYPE.LAO:
return createCounterStyleFromRange(value, 3792, 3801, true, defaultSuffix);
case LIST_STYLE_TYPE.MONGOLIAN:
return createCounterStyleFromRange(value, 6160, 6169, true, defaultSuffix);
case LIST_STYLE_TYPE.MYANMAR:
return createCounterStyleFromRange(value, 4160, 4169, true, defaultSuffix);
case LIST_STYLE_TYPE.ORIYA:
return createCounterStyleFromRange(value, 2918, 2927, true, defaultSuffix);
case LIST_STYLE_TYPE.PERSIAN:
return createCounterStyleFromRange(value, 1776, 1785, true, defaultSuffix);
case LIST_STYLE_TYPE.TAMIL:
return createCounterStyleFromRange(value, 3046, 3055, true, defaultSuffix);
case LIST_STYLE_TYPE.TELUGU:
return createCounterStyleFromRange(value, 3174, 3183, true, defaultSuffix);
case LIST_STYLE_TYPE.THAI:
return createCounterStyleFromRange(value, 3664, 3673, true, defaultSuffix);
case LIST_STYLE_TYPE.TIBETAN:
return createCounterStyleFromRange(value, 3872, 3881, true, defaultSuffix);
case LIST_STYLE_TYPE.DECIMAL:
default:
return createCounterStyleFromRange(value, 48, 57, true, defaultSuffix);
}
};
var IGNORE_ATTRIBUTE = "data-html2canvas-ignore";
var DocumentCloner = function() {
function DocumentCloner2(context2, element, options) {
this.context = context2;
this.options = options;
this.scrolledElements = [];
this.referenceElement = element;
this.counters = new CounterState();
this.quoteDepth = 0;
if (!element.ownerDocument) {
throw new Error("Cloned element does not have an owner document");
}
this.documentElement = this.cloneNode(element.ownerDocument.documentElement);
}
DocumentCloner2.prototype.toIFrame = function(ownerDocument, windowSize) {
var _this = this;
var iframe = createIFrameContainer(ownerDocument, windowSize);
if (!iframe.contentWindow) {
return Promise.reject("Unable to find iframe window");
}
var scrollX = ownerDocument.defaultView.pageXOffset;
var scrollY = ownerDocument.defaultView.pageYOffset;
var cloneWindow = iframe.contentWindow;
var documentClone = cloneWindow.document;
var iframeLoad = iframeLoader(iframe).then(function() {
return __awaiter(_this, void 0, void 0, function() {
var onclone, referenceElement;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
this.scrolledElements.forEach(restoreNodeScroll);
if (cloneWindow) {
cloneWindow.scrollTo(windowSize.left, windowSize.top);
if (/(iPad|iPhone|iPod)/g.test(navigator.userAgent) && (cloneWindow.scrollY !== windowSize.top || cloneWindow.scrollX !== windowSize.left)) {
this.context.logger.warn("Unable to restore scroll position for cloned document");
this.context.windowBounds = this.context.windowBounds.add(cloneWindow.scrollX - windowSize.left, cloneWindow.scrollY - windowSize.top, 0, 0);
}
}
onclone = this.options.onclone;
referenceElement = this.clonedReferenceElement;
if (typeof referenceElement === "undefined") {
return [2, Promise.reject("Error finding the " + this.referenceElement.nodeName + " in the cloned document")];
}
if (!(documentClone.fonts && documentClone.fonts.ready))
return [3, 2];
return [4, documentClone.fonts.ready];
case 1:
_a3.sent();
_a3.label = 2;
case 2:
if (!/(AppleWebKit)/g.test(navigator.userAgent))
return [3, 4];
return [4, imagesReady(documentClone)];
case 3:
_a3.sent();
_a3.label = 4;
case 4:
if (typeof onclone === "function") {
return [2, Promise.resolve().then(function() {
return onclone(documentClone, referenceElement);
}).then(function() {
return iframe;
})];
}
return [2, iframe];
}
});
});
});
documentClone.open();
documentClone.write(serializeDoctype(document.doctype) + "<html></html>");
restoreOwnerScroll(this.referenceElement.ownerDocument, scrollX, scrollY);
documentClone.replaceChild(documentClone.adoptNode(this.documentElement), documentClone.documentElement);
documentClone.close();
return iframeLoad;
};
DocumentCloner2.prototype.createElementClone = function(node2) {
if (isDebugging(node2, 2)) {
debugger;
}
if (isCanvasElement(node2)) {
return this.createCanvasClone(node2);
}
if (isStyleElement(node2)) {
return this.createStyleClone(node2);
}
var clone = node2.cloneNode(false);
if (isImageElement(clone)) {
if (isImageElement(node2) && node2.currentSrc && node2.currentSrc !== node2.src) {
clone.src = node2.currentSrc;
clone.srcset = "";
}
if (clone.loading === "lazy") {
clone.loading = "eager";
}
}
return clone;
};
DocumentCloner2.prototype.createStyleClone = function(node2) {
try {
var sheet = node2.sheet;
if (sheet && sheet.cssRules) {
var css = [].slice.call(sheet.cssRules, 0).reduce(function(css2, rule) {
if (rule && typeof rule.cssText === "string") {
return css2 + rule.cssText;
}
return css2;
}, "");
var style = node2.cloneNode(false);
style.textContent = css;
return style;
}
} catch (e6) {
this.context.logger.error("Unable to access cssRules property", e6);
if (e6.name !== "SecurityError") {
throw e6;
}
}
return node2.cloneNode(false);
};
DocumentCloner2.prototype.createCanvasClone = function(canvas) {
var _a3;
if (this.options.inlineImages && canvas.ownerDocument) {
var img = canvas.ownerDocument.createElement("img");
try {
img.src = canvas.toDataURL();
return img;
} catch (e6) {
this.context.logger.info("Unable to inline canvas contents, canvas is tainted", canvas);
}
}
var clonedCanvas = canvas.cloneNode(false);
try {
clonedCanvas.width = canvas.width;
clonedCanvas.height = canvas.height;
var ctx = canvas.getContext("2d");
var clonedCtx = clonedCanvas.getContext("2d");
if (clonedCtx) {
if (!this.options.allowTaint && ctx) {
clonedCtx.putImageData(ctx.getImageData(0, 0, canvas.width, canvas.height), 0, 0);
} else {
var gl = (_a3 = canvas.getContext("webgl2")) !== null && _a3 !== void 0 ? _a3 : canvas.getContext("webgl");
if (gl) {
var attribs = gl.getContextAttributes();
if ((attribs === null || attribs === void 0 ? void 0 : attribs.preserveDrawingBuffer) === false) {
this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false", canvas);
}
}
clonedCtx.drawImage(canvas, 0, 0);
}
}
return clonedCanvas;
} catch (e6) {
this.context.logger.info("Unable to clone canvas as it is tainted", canvas);
}
return clonedCanvas;
};
DocumentCloner2.prototype.cloneNode = function(node2) {
if (isTextNode(node2)) {
return document.createTextNode(node2.data);
}
if (!node2.ownerDocument) {
return node2.cloneNode(false);
}
var window2 = node2.ownerDocument.defaultView;
if (window2 && isElementNode(node2) && (isHTMLElementNode(node2) || isSVGElementNode(node2))) {
var clone = this.createElementClone(node2);
clone.style.transitionProperty = "none";
var style = window2.getComputedStyle(node2);
var styleBefore = window2.getComputedStyle(node2, ":before");
var styleAfter = window2.getComputedStyle(node2, ":after");
if (this.referenceElement === node2 && isHTMLElementNode(clone)) {
this.clonedReferenceElement = clone;
}
if (isBodyElement(clone)) {
createPseudoHideStyles(clone);
}
var counters = this.counters.parse(new CSSParsedCounterDeclaration(this.context, style));
var before = this.resolvePseudoContent(node2, clone, styleBefore, PseudoElementType.BEFORE);
for (var child = node2.firstChild; child; child = child.nextSibling) {
if (!isElementNode(child) || !isScriptElement(child) && !child.hasAttribute(IGNORE_ATTRIBUTE) && (typeof this.options.ignoreElements !== "function" || !this.options.ignoreElements(child))) {
if (!this.options.copyStyles || !isElementNode(child) || !isStyleElement(child)) {
clone.appendChild(this.cloneNode(child));
}
}
}
if (before) {
clone.insertBefore(before, clone.firstChild);
}
var after = this.resolvePseudoContent(node2, clone, styleAfter, PseudoElementType.AFTER);
if (after) {
clone.appendChild(after);
}
this.counters.pop(counters);
if (style && (this.options.copyStyles || isSVGElementNode(node2)) && !isIFrameElement(node2)) {
copyCSSStyles(style, clone);
}
if (node2.scrollTop !== 0 || node2.scrollLeft !== 0) {
this.scrolledElements.push([clone, node2.scrollLeft, node2.scrollTop]);
}
if ((isTextareaElement(node2) || isSelectElement(node2)) && (isTextareaElement(clone) || isSelectElement(clone))) {
clone.value = node2.value;
}
return clone;
}
return node2.cloneNode(false);
};
DocumentCloner2.prototype.resolvePseudoContent = function(node2, clone, style, pseudoElt) {
var _this = this;
if (!style) {
return;
}
var value = style.content;
var document3 = clone.ownerDocument;
if (!document3 || !value || value === "none" || value === "-moz-alt-content" || style.display === "none") {
return;
}
this.counters.parse(new CSSParsedCounterDeclaration(this.context, style));
var declaration = new CSSParsedPseudoDeclaration(this.context, style);
var anonymousReplacedElement = document3.createElement("html2canvaspseudoelement");
copyCSSStyles(style, anonymousReplacedElement);
declaration.content.forEach(function(token) {
if (token.type === 0) {
anonymousReplacedElement.appendChild(document3.createTextNode(token.value));
} else if (token.type === 22) {
var img = document3.createElement("img");
img.src = token.value;
img.style.opacity = "1";
anonymousReplacedElement.appendChild(img);
} else if (token.type === 18) {
if (token.name === "attr") {
var attr = token.values.filter(isIdentToken);
if (attr.length) {
anonymousReplacedElement.appendChild(document3.createTextNode(node2.getAttribute(attr[0].value) || ""));
}
} else if (token.name === "counter") {
var _a3 = token.values.filter(nonFunctionArgSeparator), counter = _a3[0], counterStyle = _a3[1];
if (counter && isIdentToken(counter)) {
var counterState = _this.counters.getCounterValue(counter.value);
var counterType = counterStyle && isIdentToken(counterStyle) ? listStyleType.parse(_this.context, counterStyle.value) : LIST_STYLE_TYPE.DECIMAL;
anonymousReplacedElement.appendChild(document3.createTextNode(createCounterText(counterState, counterType, false)));
}
} else if (token.name === "counters") {
var _b3 = token.values.filter(nonFunctionArgSeparator), counter = _b3[0], delim = _b3[1], counterStyle = _b3[2];
if (counter && isIdentToken(counter)) {
var counterStates = _this.counters.getCounterValues(counter.value);
var counterType_1 = counterStyle && isIdentToken(counterStyle) ? listStyleType.parse(_this.context, counterStyle.value) : LIST_STYLE_TYPE.DECIMAL;
var separator = delim && delim.type === 0 ? delim.value : "";
var text = counterStates.map(function(value2) {
return createCounterText(value2, counterType_1, false);
}).join(separator);
anonymousReplacedElement.appendChild(document3.createTextNode(text));
}
} else
;
} else if (token.type === 20) {
switch (token.value) {
case "open-quote":
anonymousReplacedElement.appendChild(document3.createTextNode(getQuote(declaration.quotes, _this.quoteDepth++, true)));
break;
case "close-quote":
anonymousReplacedElement.appendChild(document3.createTextNode(getQuote(declaration.quotes, --_this.quoteDepth, false)));
break;
default:
anonymousReplacedElement.appendChild(document3.createTextNode(token.value));
}
}
});
anonymousReplacedElement.className = PSEUDO_HIDE_ELEMENT_CLASS_BEFORE + " " + PSEUDO_HIDE_ELEMENT_CLASS_AFTER;
var newClassName = pseudoElt === PseudoElementType.BEFORE ? " " + PSEUDO_HIDE_ELEMENT_CLASS_BEFORE : " " + PSEUDO_HIDE_ELEMENT_CLASS_AFTER;
if (isSVGElementNode(clone)) {
clone.className.baseValue += newClassName;
} else {
clone.className += newClassName;
}
return anonymousReplacedElement;
};
DocumentCloner2.destroy = function(container) {
if (container.parentNode) {
container.parentNode.removeChild(container);
return true;
}
return false;
};
return DocumentCloner2;
}();
var PseudoElementType;
(function(PseudoElementType2) {
PseudoElementType2[PseudoElementType2["BEFORE"] = 0] = "BEFORE";
PseudoElementType2[PseudoElementType2["AFTER"] = 1] = "AFTER";
})(PseudoElementType || (PseudoElementType = {}));
var createIFrameContainer = function(ownerDocument, bounds) {
var cloneIframeContainer = ownerDocument.createElement("iframe");
cloneIframeContainer.className = "html2canvas-container";
cloneIframeContainer.style.visibility = "hidden";
cloneIframeContainer.style.position = "fixed";
cloneIframeContainer.style.left = "-10000px";
cloneIframeContainer.style.top = "0px";
cloneIframeContainer.style.border = "0";
cloneIframeContainer.width = bounds.width.toString();
cloneIframeContainer.height = bounds.height.toString();
cloneIframeContainer.scrolling = "no";
cloneIframeContainer.setAttribute(IGNORE_ATTRIBUTE, "true");
ownerDocument.body.appendChild(cloneIframeContainer);
return cloneIframeContainer;
};
var imageReady = function(img) {
return new Promise(function(resolve3) {
if (img.complete) {
resolve3();
return;
}
if (!img.src) {
resolve3();
return;
}
img.onload = resolve3;
img.onerror = resolve3;
});
};
var imagesReady = function(document3) {
return Promise.all([].slice.call(document3.images, 0).map(imageReady));
};
var iframeLoader = function(iframe) {
return new Promise(function(resolve3, reject2) {
var cloneWindow = iframe.contentWindow;
if (!cloneWindow) {
return reject2("No window assigned for iframe");
}
var documentClone = cloneWindow.document;
cloneWindow.onload = iframe.onload = function() {
cloneWindow.onload = iframe.onload = null;
var interval2 = setInterval(function() {
if (documentClone.body.childNodes.length > 0 && documentClone.readyState === "complete") {
clearInterval(interval2);
resolve3(iframe);
}
}, 50);
};
});
};
var ignoredStyleProperties = [
"all",
"d",
"content"
];
var copyCSSStyles = function(style, target) {
for (var i5 = style.length - 1; i5 >= 0; i5--) {
var property2 = style.item(i5);
if (ignoredStyleProperties.indexOf(property2) === -1) {
target.style.setProperty(property2, style.getPropertyValue(property2));
}
}
return target;
};
var serializeDoctype = function(doctype) {
var str = "";
if (doctype) {
str += "<!DOCTYPE ";
if (doctype.name) {
str += doctype.name;
}
if (doctype.internalSubset) {
str += doctype.internalSubset;
}
if (doctype.publicId) {
str += '"' + doctype.publicId + '"';
}
if (doctype.systemId) {
str += '"' + doctype.systemId + '"';
}
str += ">";
}
return str;
};
var restoreOwnerScroll = function(ownerDocument, x3, y4) {
if (ownerDocument && ownerDocument.defaultView && (x3 !== ownerDocument.defaultView.pageXOffset || y4 !== ownerDocument.defaultView.pageYOffset)) {
ownerDocument.defaultView.scrollTo(x3, y4);
}
};
var restoreNodeScroll = function(_a3) {
var element = _a3[0], x3 = _a3[1], y4 = _a3[2];
element.scrollLeft = x3;
element.scrollTop = y4;
};
var PSEUDO_BEFORE = ":before";
var PSEUDO_AFTER = ":after";
var PSEUDO_HIDE_ELEMENT_CLASS_BEFORE = "___html2canvas___pseudoelement_before";
var PSEUDO_HIDE_ELEMENT_CLASS_AFTER = "___html2canvas___pseudoelement_after";
var PSEUDO_HIDE_ELEMENT_STYLE = '{\n content: "" !important;\n display: none !important;\n}';
var createPseudoHideStyles = function(body) {
createStyles(body, "." + PSEUDO_HIDE_ELEMENT_CLASS_BEFORE + PSEUDO_BEFORE + PSEUDO_HIDE_ELEMENT_STYLE + "\n ." + PSEUDO_HIDE_ELEMENT_CLASS_AFTER + PSEUDO_AFTER + PSEUDO_HIDE_ELEMENT_STYLE);
};
var createStyles = function(body, styles) {
var document3 = body.ownerDocument;
if (document3) {
var style = document3.createElement("style");
style.textContent = styles;
body.appendChild(style);
}
};
var CacheStorage = function() {
function CacheStorage2() {
}
CacheStorage2.getOrigin = function(url) {
var link = CacheStorage2._link;
if (!link) {
return "about:blank";
}
link.href = url;
link.href = link.href;
return link.protocol + link.hostname + link.port;
};
CacheStorage2.isSameOrigin = function(src) {
return CacheStorage2.getOrigin(src) === CacheStorage2._origin;
};
CacheStorage2.setContext = function(window2) {
CacheStorage2._link = window2.document.createElement("a");
CacheStorage2._origin = CacheStorage2.getOrigin(window2.location.href);
};
CacheStorage2._origin = "about:blank";
return CacheStorage2;
}();
var Cache3 = function() {
function Cache4(context2, _options) {
this.context = context2;
this._options = _options;
this._cache = {};
}
Cache4.prototype.addImage = function(src) {
var result = Promise.resolve();
if (this.has(src)) {
return result;
}
if (isBlobImage(src) || isRenderable(src)) {
(this._cache[src] = this.loadImage(src)).catch(function() {
});
return result;
}
return result;
};
Cache4.prototype.match = function(src) {
return this._cache[src];
};
Cache4.prototype.loadImage = function(key) {
return __awaiter(this, void 0, void 0, function() {
var isSameOrigin, useCORS, useProxy, src;
var _this = this;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
isSameOrigin = CacheStorage.isSameOrigin(key);
useCORS = !isInlineImage(key) && this._options.useCORS === true && FEATURES.SUPPORT_CORS_IMAGES && !isSameOrigin;
useProxy = !isInlineImage(key) && !isSameOrigin && !isBlobImage(key) && typeof this._options.proxy === "string" && FEATURES.SUPPORT_CORS_XHR && !useCORS;
if (!isSameOrigin && this._options.allowTaint === false && !isInlineImage(key) && !isBlobImage(key) && !useProxy && !useCORS) {
return [2];
}
src = key;
if (!useProxy)
return [3, 2];
return [4, this.proxy(src)];
case 1:
src = _a3.sent();
_a3.label = 2;
case 2:
this.context.logger.debug("Added image " + key.substring(0, 256));
return [4, new Promise(function(resolve3, reject2) {
var img = new Image();
img.onload = function() {
return resolve3(img);
};
img.onerror = reject2;
if (isInlineBase64Image(src) || useCORS) {
img.crossOrigin = "anonymous";
}
img.src = src;
if (img.complete === true) {
setTimeout(function() {
return resolve3(img);
}, 500);
}
if (_this._options.imageTimeout > 0) {
setTimeout(function() {
return reject2("Timed out (" + _this._options.imageTimeout + "ms) loading image");
}, _this._options.imageTimeout);
}
})];
case 3:
return [2, _a3.sent()];
}
});
});
};
Cache4.prototype.has = function(key) {
return typeof this._cache[key] !== "undefined";
};
Cache4.prototype.keys = function() {
return Promise.resolve(Object.keys(this._cache));
};
Cache4.prototype.proxy = function(src) {
var _this = this;
var proxy = this._options.proxy;
if (!proxy) {
throw new Error("No proxy defined");
}
var key = src.substring(0, 256);
return new Promise(function(resolve3, reject2) {
var responseType = FEATURES.SUPPORT_RESPONSE_TYPE ? "blob" : "text";
var xhr = new XMLHttpRequest();
xhr.onload = function() {
if (xhr.status === 200) {
if (responseType === "text") {
resolve3(xhr.response);
} else {
var reader_1 = new FileReader();
reader_1.addEventListener("load", function() {
return resolve3(reader_1.result);
}, false);
reader_1.addEventListener("error", function(e6) {
return reject2(e6);
}, false);
reader_1.readAsDataURL(xhr.response);
}
} else {
reject2("Failed to proxy resource " + key + " with status code " + xhr.status);
}
};
xhr.onerror = reject2;
var queryString = proxy.indexOf("?") > -1 ? "&" : "?";
xhr.open("GET", "" + proxy + queryString + "url=" + encodeURIComponent(src) + "&responseType=" + responseType);
if (responseType !== "text" && xhr instanceof XMLHttpRequest) {
xhr.responseType = responseType;
}
if (_this._options.imageTimeout) {
var timeout_1 = _this._options.imageTimeout;
xhr.timeout = timeout_1;
xhr.ontimeout = function() {
return reject2("Timed out (" + timeout_1 + "ms) proxying " + key);
};
}
xhr.send();
});
};
return Cache4;
}();
var INLINE_SVG = /^data:image\/svg\+xml/i;
var INLINE_BASE64 = /^data:image\/.*;base64,/i;
var INLINE_IMG = /^data:image\/.*/i;
var isRenderable = function(src) {
return FEATURES.SUPPORT_SVG_DRAWING || !isSVG(src);
};
var isInlineImage = function(src) {
return INLINE_IMG.test(src);
};
var isInlineBase64Image = function(src) {
return INLINE_BASE64.test(src);
};
var isBlobImage = function(src) {
return src.substr(0, 4) === "blob";
};
var isSVG = function(src) {
return src.substr(-3).toLowerCase() === "svg" || INLINE_SVG.test(src);
};
var PathType;
(function(PathType2) {
PathType2[PathType2["VECTOR"] = 0] = "VECTOR";
PathType2[PathType2["BEZIER_CURVE"] = 1] = "BEZIER_CURVE";
})(PathType || (PathType = {}));
var equalPath = function(a5, b3) {
if (a5.length === b3.length) {
return a5.some(function(v7, i5) {
return v7 === b3[i5];
});
}
return false;
};
var transformPath = function(path2, deltaX, deltaY, deltaW, deltaH) {
return path2.map(function(point2, index3) {
switch (index3) {
case 0:
return point2.add(deltaX, deltaY);
case 1:
return point2.add(deltaX + deltaW, deltaY);
case 2:
return point2.add(deltaX + deltaW, deltaY + deltaH);
case 3:
return point2.add(deltaX, deltaY + deltaH);
}
return point2;
});
};
var Vector = function() {
function Vector2(x3, y4) {
this.type = PathType.VECTOR;
this.x = x3;
this.y = y4;
}
Vector2.prototype.add = function(deltaX, deltaY) {
return new Vector2(this.x + deltaX, this.y + deltaY);
};
return Vector2;
}();
var lerp = function(a5, b3, t5) {
return new Vector(a5.x + (b3.x - a5.x) * t5, a5.y + (b3.y - a5.y) * t5);
};
var BezierCurve = function() {
function BezierCurve2(start, startControl, endControl, end) {
this.type = PathType.BEZIER_CURVE;
this.start = start;
this.startControl = startControl;
this.endControl = endControl;
this.end = end;
}
BezierCurve2.prototype.subdivide = function(t5, firstHalf) {
var ab = lerp(this.start, this.startControl, t5);
var bc = lerp(this.startControl, this.endControl, t5);
var cd = lerp(this.endControl, this.end, t5);
var abbc = lerp(ab, bc, t5);
var bccd = lerp(bc, cd, t5);
var dest = lerp(abbc, bccd, t5);
return firstHalf ? new BezierCurve2(this.start, ab, abbc, dest) : new BezierCurve2(dest, bccd, cd, this.end);
};
BezierCurve2.prototype.add = function(deltaX, deltaY) {
return new BezierCurve2(this.start.add(deltaX, deltaY), this.startControl.add(deltaX, deltaY), this.endControl.add(deltaX, deltaY), this.end.add(deltaX, deltaY));
};
BezierCurve2.prototype.reverse = function() {
return new BezierCurve2(this.end, this.endControl, this.startControl, this.start);
};
return BezierCurve2;
}();
var isBezierCurve = function(path2) {
return path2.type === PathType.BEZIER_CURVE;
};
var BoundCurves = function() {
function BoundCurves2(element) {
var styles = element.styles;
var bounds = element.bounds;
var _a3 = getAbsoluteValueForTuple(styles.borderTopLeftRadius, bounds.width, bounds.height), tlh = _a3[0], tlv = _a3[1];
var _b3 = getAbsoluteValueForTuple(styles.borderTopRightRadius, bounds.width, bounds.height), trh = _b3[0], trv = _b3[1];
var _c = getAbsoluteValueForTuple(styles.borderBottomRightRadius, bounds.width, bounds.height), brh = _c[0], brv = _c[1];
var _d = getAbsoluteValueForTuple(styles.borderBottomLeftRadius, bounds.width, bounds.height), blh = _d[0], blv = _d[1];
var factors = [];
factors.push((tlh + trh) / bounds.width);
factors.push((blh + brh) / bounds.width);
factors.push((tlv + blv) / bounds.height);
factors.push((trv + brv) / bounds.height);
var maxFactor = Math.max.apply(Math, factors);
if (maxFactor > 1) {
tlh /= maxFactor;
tlv /= maxFactor;
trh /= maxFactor;
trv /= maxFactor;
brh /= maxFactor;
brv /= maxFactor;
blh /= maxFactor;
blv /= maxFactor;
}
var topWidth = bounds.width - trh;
var rightHeight = bounds.height - brv;
var bottomWidth = bounds.width - brh;
var leftHeight = bounds.height - blv;
var borderTopWidth2 = styles.borderTopWidth;
var borderRightWidth2 = styles.borderRightWidth;
var borderBottomWidth2 = styles.borderBottomWidth;
var borderLeftWidth2 = styles.borderLeftWidth;
var paddingTop2 = getAbsoluteValue(styles.paddingTop, element.bounds.width);
var paddingRight2 = getAbsoluteValue(styles.paddingRight, element.bounds.width);
var paddingBottom2 = getAbsoluteValue(styles.paddingBottom, element.bounds.width);
var paddingLeft2 = getAbsoluteValue(styles.paddingLeft, element.bounds.width);
this.topLeftBorderDoubleOuterBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 / 3, bounds.top + borderTopWidth2 / 3, tlh - borderLeftWidth2 / 3, tlv - borderTopWidth2 / 3, CORNER.TOP_LEFT) : new Vector(bounds.left + borderLeftWidth2 / 3, bounds.top + borderTopWidth2 / 3);
this.topRightBorderDoubleOuterBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + topWidth, bounds.top + borderTopWidth2 / 3, trh - borderRightWidth2 / 3, trv - borderTopWidth2 / 3, CORNER.TOP_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2 / 3, bounds.top + borderTopWidth2 / 3);
this.bottomRightBorderDoubleOuterBox = brh > 0 || brv > 0 ? getCurvePoints(bounds.left + bottomWidth, bounds.top + rightHeight, brh - borderRightWidth2 / 3, brv - borderBottomWidth2 / 3, CORNER.BOTTOM_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2 / 3, bounds.top + bounds.height - borderBottomWidth2 / 3);
this.bottomLeftBorderDoubleOuterBox = blh > 0 || blv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 / 3, bounds.top + leftHeight, blh - borderLeftWidth2 / 3, blv - borderBottomWidth2 / 3, CORNER.BOTTOM_LEFT) : new Vector(bounds.left + borderLeftWidth2 / 3, bounds.top + bounds.height - borderBottomWidth2 / 3);
this.topLeftBorderDoubleInnerBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 * 2 / 3, bounds.top + borderTopWidth2 * 2 / 3, tlh - borderLeftWidth2 * 2 / 3, tlv - borderTopWidth2 * 2 / 3, CORNER.TOP_LEFT) : new Vector(bounds.left + borderLeftWidth2 * 2 / 3, bounds.top + borderTopWidth2 * 2 / 3);
this.topRightBorderDoubleInnerBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + topWidth, bounds.top + borderTopWidth2 * 2 / 3, trh - borderRightWidth2 * 2 / 3, trv - borderTopWidth2 * 2 / 3, CORNER.TOP_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2 * 2 / 3, bounds.top + borderTopWidth2 * 2 / 3);
this.bottomRightBorderDoubleInnerBox = brh > 0 || brv > 0 ? getCurvePoints(bounds.left + bottomWidth, bounds.top + rightHeight, brh - borderRightWidth2 * 2 / 3, brv - borderBottomWidth2 * 2 / 3, CORNER.BOTTOM_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2 * 2 / 3, bounds.top + bounds.height - borderBottomWidth2 * 2 / 3);
this.bottomLeftBorderDoubleInnerBox = blh > 0 || blv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 * 2 / 3, bounds.top + leftHeight, blh - borderLeftWidth2 * 2 / 3, blv - borderBottomWidth2 * 2 / 3, CORNER.BOTTOM_LEFT) : new Vector(bounds.left + borderLeftWidth2 * 2 / 3, bounds.top + bounds.height - borderBottomWidth2 * 2 / 3);
this.topLeftBorderStroke = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 / 2, bounds.top + borderTopWidth2 / 2, tlh - borderLeftWidth2 / 2, tlv - borderTopWidth2 / 2, CORNER.TOP_LEFT) : new Vector(bounds.left + borderLeftWidth2 / 2, bounds.top + borderTopWidth2 / 2);
this.topRightBorderStroke = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + topWidth, bounds.top + borderTopWidth2 / 2, trh - borderRightWidth2 / 2, trv - borderTopWidth2 / 2, CORNER.TOP_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2 / 2, bounds.top + borderTopWidth2 / 2);
this.bottomRightBorderStroke = brh > 0 || brv > 0 ? getCurvePoints(bounds.left + bottomWidth, bounds.top + rightHeight, brh - borderRightWidth2 / 2, brv - borderBottomWidth2 / 2, CORNER.BOTTOM_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2 / 2, bounds.top + bounds.height - borderBottomWidth2 / 2);
this.bottomLeftBorderStroke = blh > 0 || blv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 / 2, bounds.top + leftHeight, blh - borderLeftWidth2 / 2, blv - borderBottomWidth2 / 2, CORNER.BOTTOM_LEFT) : new Vector(bounds.left + borderLeftWidth2 / 2, bounds.top + bounds.height - borderBottomWidth2 / 2);
this.topLeftBorderBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left, bounds.top, tlh, tlv, CORNER.TOP_LEFT) : new Vector(bounds.left, bounds.top);
this.topRightBorderBox = trh > 0 || trv > 0 ? getCurvePoints(bounds.left + topWidth, bounds.top, trh, trv, CORNER.TOP_RIGHT) : new Vector(bounds.left + bounds.width, bounds.top);
this.bottomRightBorderBox = brh > 0 || brv > 0 ? getCurvePoints(bounds.left + bottomWidth, bounds.top + rightHeight, brh, brv, CORNER.BOTTOM_RIGHT) : new Vector(bounds.left + bounds.width, bounds.top + bounds.height);
this.bottomLeftBorderBox = blh > 0 || blv > 0 ? getCurvePoints(bounds.left, bounds.top + leftHeight, blh, blv, CORNER.BOTTOM_LEFT) : new Vector(bounds.left, bounds.top + bounds.height);
this.topLeftPaddingBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2, bounds.top + borderTopWidth2, Math.max(0, tlh - borderLeftWidth2), Math.max(0, tlv - borderTopWidth2), CORNER.TOP_LEFT) : new Vector(bounds.left + borderLeftWidth2, bounds.top + borderTopWidth2);
this.topRightPaddingBox = trh > 0 || trv > 0 ? getCurvePoints(bounds.left + Math.min(topWidth, bounds.width - borderRightWidth2), bounds.top + borderTopWidth2, topWidth > bounds.width + borderRightWidth2 ? 0 : Math.max(0, trh - borderRightWidth2), Math.max(0, trv - borderTopWidth2), CORNER.TOP_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2, bounds.top + borderTopWidth2);
this.bottomRightPaddingBox = brh > 0 || brv > 0 ? getCurvePoints(bounds.left + Math.min(bottomWidth, bounds.width - borderLeftWidth2), bounds.top + Math.min(rightHeight, bounds.height - borderBottomWidth2), Math.max(0, brh - borderRightWidth2), Math.max(0, brv - borderBottomWidth2), CORNER.BOTTOM_RIGHT) : new Vector(bounds.left + bounds.width - borderRightWidth2, bounds.top + bounds.height - borderBottomWidth2);
this.bottomLeftPaddingBox = blh > 0 || blv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2, bounds.top + Math.min(leftHeight, bounds.height - borderBottomWidth2), Math.max(0, blh - borderLeftWidth2), Math.max(0, blv - borderBottomWidth2), CORNER.BOTTOM_LEFT) : new Vector(bounds.left + borderLeftWidth2, bounds.top + bounds.height - borderBottomWidth2);
this.topLeftContentBox = tlh > 0 || tlv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 + paddingLeft2, bounds.top + borderTopWidth2 + paddingTop2, Math.max(0, tlh - (borderLeftWidth2 + paddingLeft2)), Math.max(0, tlv - (borderTopWidth2 + paddingTop2)), CORNER.TOP_LEFT) : new Vector(bounds.left + borderLeftWidth2 + paddingLeft2, bounds.top + borderTopWidth2 + paddingTop2);
this.topRightContentBox = trh > 0 || trv > 0 ? getCurvePoints(bounds.left + Math.min(topWidth, bounds.width + borderLeftWidth2 + paddingLeft2), bounds.top + borderTopWidth2 + paddingTop2, topWidth > bounds.width + borderLeftWidth2 + paddingLeft2 ? 0 : trh - borderLeftWidth2 + paddingLeft2, trv - (borderTopWidth2 + paddingTop2), CORNER.TOP_RIGHT) : new Vector(bounds.left + bounds.width - (borderRightWidth2 + paddingRight2), bounds.top + borderTopWidth2 + paddingTop2);
this.bottomRightContentBox = brh > 0 || brv > 0 ? getCurvePoints(bounds.left + Math.min(bottomWidth, bounds.width - (borderLeftWidth2 + paddingLeft2)), bounds.top + Math.min(rightHeight, bounds.height + borderTopWidth2 + paddingTop2), Math.max(0, brh - (borderRightWidth2 + paddingRight2)), brv - (borderBottomWidth2 + paddingBottom2), CORNER.BOTTOM_RIGHT) : new Vector(bounds.left + bounds.width - (borderRightWidth2 + paddingRight2), bounds.top + bounds.height - (borderBottomWidth2 + paddingBottom2));
this.bottomLeftContentBox = blh > 0 || blv > 0 ? getCurvePoints(bounds.left + borderLeftWidth2 + paddingLeft2, bounds.top + leftHeight, Math.max(0, blh - (borderLeftWidth2 + paddingLeft2)), blv - (borderBottomWidth2 + paddingBottom2), CORNER.BOTTOM_LEFT) : new Vector(bounds.left + borderLeftWidth2 + paddingLeft2, bounds.top + bounds.height - (borderBottomWidth2 + paddingBottom2));
}
return BoundCurves2;
}();
var CORNER;
(function(CORNER2) {
CORNER2[CORNER2["TOP_LEFT"] = 0] = "TOP_LEFT";
CORNER2[CORNER2["TOP_RIGHT"] = 1] = "TOP_RIGHT";
CORNER2[CORNER2["BOTTOM_RIGHT"] = 2] = "BOTTOM_RIGHT";
CORNER2[CORNER2["BOTTOM_LEFT"] = 3] = "BOTTOM_LEFT";
})(CORNER || (CORNER = {}));
var getCurvePoints = function(x3, y4, r1, r22, position2) {
var kappa = 4 * ((Math.sqrt(2) - 1) / 3);
var ox = r1 * kappa;
var oy = r22 * kappa;
var xm = x3 + r1;
var ym = y4 + r22;
switch (position2) {
case CORNER.TOP_LEFT:
return new BezierCurve(new Vector(x3, ym), new Vector(x3, ym - oy), new Vector(xm - ox, y4), new Vector(xm, y4));
case CORNER.TOP_RIGHT:
return new BezierCurve(new Vector(x3, y4), new Vector(x3 + ox, y4), new Vector(xm, ym - oy), new Vector(xm, ym));
case CORNER.BOTTOM_RIGHT:
return new BezierCurve(new Vector(xm, y4), new Vector(xm, y4 + oy), new Vector(x3 + ox, ym), new Vector(x3, ym));
case CORNER.BOTTOM_LEFT:
default:
return new BezierCurve(new Vector(xm, ym), new Vector(xm - ox, ym), new Vector(x3, y4 + oy), new Vector(x3, y4));
}
};
var calculateBorderBoxPath = function(curves) {
return [curves.topLeftBorderBox, curves.topRightBorderBox, curves.bottomRightBorderBox, curves.bottomLeftBorderBox];
};
var calculateContentBoxPath = function(curves) {
return [
curves.topLeftContentBox,
curves.topRightContentBox,
curves.bottomRightContentBox,
curves.bottomLeftContentBox
];
};
var calculatePaddingBoxPath = function(curves) {
return [
curves.topLeftPaddingBox,
curves.topRightPaddingBox,
curves.bottomRightPaddingBox,
curves.bottomLeftPaddingBox
];
};
var TransformEffect = function() {
function TransformEffect2(offsetX, offsetY, matrix2) {
this.offsetX = offsetX;
this.offsetY = offsetY;
this.matrix = matrix2;
this.type = 0;
this.target = 2 | 4;
}
return TransformEffect2;
}();
var ClipEffect = function() {
function ClipEffect2(path2, target) {
this.path = path2;
this.target = target;
this.type = 1;
}
return ClipEffect2;
}();
var OpacityEffect = function() {
function OpacityEffect2(opacity2) {
this.opacity = opacity2;
this.type = 2;
this.target = 2 | 4;
}
return OpacityEffect2;
}();
var isTransformEffect = function(effect) {
return effect.type === 0;
};
var isClipEffect = function(effect) {
return effect.type === 1;
};
var isOpacityEffect = function(effect) {
return effect.type === 2;
};
var StackingContext = function() {
function StackingContext2(container) {
this.element = container;
this.inlineLevel = [];
this.nonInlineLevel = [];
this.negativeZIndex = [];
this.zeroOrAutoZIndexOrTransformedOrOpacity = [];
this.positiveZIndex = [];
this.nonPositionedFloats = [];
this.nonPositionedInlineLevel = [];
}
return StackingContext2;
}();
var ElementPaint = function() {
function ElementPaint2(container, parent) {
this.container = container;
this.parent = parent;
this.effects = [];
this.curves = new BoundCurves(this.container);
if (this.container.styles.opacity < 1) {
this.effects.push(new OpacityEffect(this.container.styles.opacity));
}
if (this.container.styles.transform !== null) {
var offsetX = this.container.bounds.left + this.container.styles.transformOrigin[0].number;
var offsetY = this.container.bounds.top + this.container.styles.transformOrigin[1].number;
var matrix2 = this.container.styles.transform;
this.effects.push(new TransformEffect(offsetX, offsetY, matrix2));
}
if (this.container.styles.overflowX !== OVERFLOW.VISIBLE) {
var borderBox = calculateBorderBoxPath(this.curves);
var paddingBox2 = calculatePaddingBoxPath(this.curves);
if (equalPath(borderBox, paddingBox2)) {
this.effects.push(new ClipEffect(borderBox, 2 | 4));
} else {
this.effects.push(new ClipEffect(borderBox, 2));
this.effects.push(new ClipEffect(paddingBox2, 4));
}
}
}
ElementPaint2.prototype.getEffects = function(target) {
var inFlow = [POSITION.ABSOLUTE, POSITION.FIXED].indexOf(this.container.styles.position) === -1;
var parent = this.parent;
var effects = this.effects.slice(0);
while (parent) {
var croplessEffects = parent.effects.filter(function(effect) {
return !isClipEffect(effect);
});
if (inFlow || parent.container.styles.position !== POSITION.STATIC || !parent.parent) {
effects.unshift.apply(effects, croplessEffects);
inFlow = [POSITION.ABSOLUTE, POSITION.FIXED].indexOf(parent.container.styles.position) === -1;
if (parent.container.styles.overflowX !== OVERFLOW.VISIBLE) {
var borderBox = calculateBorderBoxPath(parent.curves);
var paddingBox2 = calculatePaddingBoxPath(parent.curves);
if (!equalPath(borderBox, paddingBox2)) {
effects.unshift(new ClipEffect(paddingBox2, 2 | 4));
}
}
} else {
effects.unshift.apply(effects, croplessEffects);
}
parent = parent.parent;
}
return effects.filter(function(effect) {
return contains2(effect.target, target);
});
};
return ElementPaint2;
}();
var parseStackTree = function(parent, stackingContext, realStackingContext, listItems) {
parent.container.elements.forEach(function(child) {
var treatAsRealStackingContext = contains2(child.flags, 4);
var createsStackingContext2 = contains2(child.flags, 2);
var paintContainer = new ElementPaint(child, parent);
if (contains2(child.styles.display, 2048)) {
listItems.push(paintContainer);
}
var listOwnerItems = contains2(child.flags, 8) ? [] : listItems;
if (treatAsRealStackingContext || createsStackingContext2) {
var parentStack = treatAsRealStackingContext || child.styles.isPositioned() ? realStackingContext : stackingContext;
var stack = new StackingContext(paintContainer);
if (child.styles.isPositioned() || child.styles.opacity < 1 || child.styles.isTransformed()) {
var order_1 = child.styles.zIndex.order;
if (order_1 < 0) {
var index_1 = 0;
parentStack.negativeZIndex.some(function(current, i5) {
if (order_1 > current.element.container.styles.zIndex.order) {
index_1 = i5;
return false;
} else if (index_1 > 0) {
return true;
}
return false;
});
parentStack.negativeZIndex.splice(index_1, 0, stack);
} else if (order_1 > 0) {
var index_2 = 0;
parentStack.positiveZIndex.some(function(current, i5) {
if (order_1 >= current.element.container.styles.zIndex.order) {
index_2 = i5 + 1;
return false;
} else if (index_2 > 0) {
return true;
}
return false;
});
parentStack.positiveZIndex.splice(index_2, 0, stack);
} else {
parentStack.zeroOrAutoZIndexOrTransformedOrOpacity.push(stack);
}
} else {
if (child.styles.isFloating()) {
parentStack.nonPositionedFloats.push(stack);
} else {
parentStack.nonPositionedInlineLevel.push(stack);
}
}
parseStackTree(paintContainer, stack, treatAsRealStackingContext ? stack : realStackingContext, listOwnerItems);
} else {
if (child.styles.isInlineLevel()) {
stackingContext.inlineLevel.push(paintContainer);
} else {
stackingContext.nonInlineLevel.push(paintContainer);
}
parseStackTree(paintContainer, stackingContext, realStackingContext, listOwnerItems);
}
if (contains2(child.flags, 8)) {
processListItems(child, listOwnerItems);
}
});
};
var processListItems = function(owner, elements2) {
var numbering = owner instanceof OLElementContainer ? owner.start : 1;
var reversed = owner instanceof OLElementContainer ? owner.reversed : false;
for (var i5 = 0; i5 < elements2.length; i5++) {
var item = elements2[i5];
if (item.container instanceof LIElementContainer && typeof item.container.value === "number" && item.container.value !== 0) {
numbering = item.container.value;
}
item.listValue = createCounterText(numbering, item.container.styles.listStyleType, true);
numbering += reversed ? -1 : 1;
}
};
var parseStackingContexts = function(container) {
var paintContainer = new ElementPaint(container, null);
var root2 = new StackingContext(paintContainer);
var listItems = [];
parseStackTree(paintContainer, root2, root2, listItems);
processListItems(paintContainer.container, listItems);
return root2;
};
var parsePathForBorder = function(curves, borderSide) {
switch (borderSide) {
case 0:
return createPathFromCurves(curves.topLeftBorderBox, curves.topLeftPaddingBox, curves.topRightBorderBox, curves.topRightPaddingBox);
case 1:
return createPathFromCurves(curves.topRightBorderBox, curves.topRightPaddingBox, curves.bottomRightBorderBox, curves.bottomRightPaddingBox);
case 2:
return createPathFromCurves(curves.bottomRightBorderBox, curves.bottomRightPaddingBox, curves.bottomLeftBorderBox, curves.bottomLeftPaddingBox);
case 3:
default:
return createPathFromCurves(curves.bottomLeftBorderBox, curves.bottomLeftPaddingBox, curves.topLeftBorderBox, curves.topLeftPaddingBox);
}
};
var parsePathForBorderDoubleOuter = function(curves, borderSide) {
switch (borderSide) {
case 0:
return createPathFromCurves(curves.topLeftBorderBox, curves.topLeftBorderDoubleOuterBox, curves.topRightBorderBox, curves.topRightBorderDoubleOuterBox);
case 1:
return createPathFromCurves(curves.topRightBorderBox, curves.topRightBorderDoubleOuterBox, curves.bottomRightBorderBox, curves.bottomRightBorderDoubleOuterBox);
case 2:
return createPathFromCurves(curves.bottomRightBorderBox, curves.bottomRightBorderDoubleOuterBox, curves.bottomLeftBorderBox, curves.bottomLeftBorderDoubleOuterBox);
case 3:
default:
return createPathFromCurves(curves.bottomLeftBorderBox, curves.bottomLeftBorderDoubleOuterBox, curves.topLeftBorderBox, curves.topLeftBorderDoubleOuterBox);
}
};
var parsePathForBorderDoubleInner = function(curves, borderSide) {
switch (borderSide) {
case 0:
return createPathFromCurves(curves.topLeftBorderDoubleInnerBox, curves.topLeftPaddingBox, curves.topRightBorderDoubleInnerBox, curves.topRightPaddingBox);
case 1:
return createPathFromCurves(curves.topRightBorderDoubleInnerBox, curves.topRightPaddingBox, curves.bottomRightBorderDoubleInnerBox, curves.bottomRightPaddingBox);
case 2:
return createPathFromCurves(curves.bottomRightBorderDoubleInnerBox, curves.bottomRightPaddingBox, curves.bottomLeftBorderDoubleInnerBox, curves.bottomLeftPaddingBox);
case 3:
default:
return createPathFromCurves(curves.bottomLeftBorderDoubleInnerBox, curves.bottomLeftPaddingBox, curves.topLeftBorderDoubleInnerBox, curves.topLeftPaddingBox);
}
};
var parsePathForBorderStroke = function(curves, borderSide) {
switch (borderSide) {
case 0:
return createStrokePathFromCurves(curves.topLeftBorderStroke, curves.topRightBorderStroke);
case 1:
return createStrokePathFromCurves(curves.topRightBorderStroke, curves.bottomRightBorderStroke);
case 2:
return createStrokePathFromCurves(curves.bottomRightBorderStroke, curves.bottomLeftBorderStroke);
case 3:
default:
return createStrokePathFromCurves(curves.bottomLeftBorderStroke, curves.topLeftBorderStroke);
}
};
var createStrokePathFromCurves = function(outer1, outer2) {
var path2 = [];
if (isBezierCurve(outer1)) {
path2.push(outer1.subdivide(0.5, false));
} else {
path2.push(outer1);
}
if (isBezierCurve(outer2)) {
path2.push(outer2.subdivide(0.5, true));
} else {
path2.push(outer2);
}
return path2;
};
var createPathFromCurves = function(outer1, inner1, outer2, inner2) {
var path2 = [];
if (isBezierCurve(outer1)) {
path2.push(outer1.subdivide(0.5, false));
} else {
path2.push(outer1);
}
if (isBezierCurve(outer2)) {
path2.push(outer2.subdivide(0.5, true));
} else {
path2.push(outer2);
}
if (isBezierCurve(inner2)) {
path2.push(inner2.subdivide(0.5, true).reverse());
} else {
path2.push(inner2);
}
if (isBezierCurve(inner1)) {
path2.push(inner1.subdivide(0.5, false).reverse());
} else {
path2.push(inner1);
}
return path2;
};
var paddingBox = function(element) {
var bounds = element.bounds;
var styles = element.styles;
return bounds.add(styles.borderLeftWidth, styles.borderTopWidth, -(styles.borderRightWidth + styles.borderLeftWidth), -(styles.borderTopWidth + styles.borderBottomWidth));
};
var contentBox = function(element) {
var styles = element.styles;
var bounds = element.bounds;
var paddingLeft2 = getAbsoluteValue(styles.paddingLeft, bounds.width);
var paddingRight2 = getAbsoluteValue(styles.paddingRight, bounds.width);
var paddingTop2 = getAbsoluteValue(styles.paddingTop, bounds.width);
var paddingBottom2 = getAbsoluteValue(styles.paddingBottom, bounds.width);
return bounds.add(paddingLeft2 + styles.borderLeftWidth, paddingTop2 + styles.borderTopWidth, -(styles.borderRightWidth + styles.borderLeftWidth + paddingLeft2 + paddingRight2), -(styles.borderTopWidth + styles.borderBottomWidth + paddingTop2 + paddingBottom2));
};
var calculateBackgroundPositioningArea = function(backgroundOrigin2, element) {
if (backgroundOrigin2 === 0) {
return element.bounds;
}
if (backgroundOrigin2 === 2) {
return contentBox(element);
}
return paddingBox(element);
};
var calculateBackgroundPaintingArea = function(backgroundClip2, element) {
if (backgroundClip2 === BACKGROUND_CLIP.BORDER_BOX) {
return element.bounds;
}
if (backgroundClip2 === BACKGROUND_CLIP.CONTENT_BOX) {
return contentBox(element);
}
return paddingBox(element);
};
var calculateBackgroundRendering = function(container, index3, intrinsicSize) {
var backgroundPositioningArea = calculateBackgroundPositioningArea(getBackgroundValueForIndex(container.styles.backgroundOrigin, index3), container);
var backgroundPaintingArea = calculateBackgroundPaintingArea(getBackgroundValueForIndex(container.styles.backgroundClip, index3), container);
var backgroundImageSize = calculateBackgroundSize(getBackgroundValueForIndex(container.styles.backgroundSize, index3), intrinsicSize, backgroundPositioningArea);
var sizeWidth = backgroundImageSize[0], sizeHeight = backgroundImageSize[1];
var position2 = getAbsoluteValueForTuple(getBackgroundValueForIndex(container.styles.backgroundPosition, index3), backgroundPositioningArea.width - sizeWidth, backgroundPositioningArea.height - sizeHeight);
var path2 = calculateBackgroundRepeatPath(getBackgroundValueForIndex(container.styles.backgroundRepeat, index3), position2, backgroundImageSize, backgroundPositioningArea, backgroundPaintingArea);
var offsetX = Math.round(backgroundPositioningArea.left + position2[0]);
var offsetY = Math.round(backgroundPositioningArea.top + position2[1]);
return [path2, offsetX, offsetY, sizeWidth, sizeHeight];
};
var isAuto = function(token) {
return isIdentToken(token) && token.value === BACKGROUND_SIZE.AUTO;
};
var hasIntrinsicValue = function(value) {
return typeof value === "number";
};
var calculateBackgroundSize = function(size, _a3, bounds) {
var intrinsicWidth = _a3[0], intrinsicHeight = _a3[1], intrinsicProportion = _a3[2];
var first2 = size[0], second = size[1];
if (!first2) {
return [0, 0];
}
if (isLengthPercentage(first2) && second && isLengthPercentage(second)) {
return [getAbsoluteValue(first2, bounds.width), getAbsoluteValue(second, bounds.height)];
}
var hasIntrinsicProportion = hasIntrinsicValue(intrinsicProportion);
if (isIdentToken(first2) && (first2.value === BACKGROUND_SIZE.CONTAIN || first2.value === BACKGROUND_SIZE.COVER)) {
if (hasIntrinsicValue(intrinsicProportion)) {
var targetRatio = bounds.width / bounds.height;
return targetRatio < intrinsicProportion !== (first2.value === BACKGROUND_SIZE.COVER) ? [bounds.width, bounds.width / intrinsicProportion] : [bounds.height * intrinsicProportion, bounds.height];
}
return [bounds.width, bounds.height];
}
var hasIntrinsicWidth = hasIntrinsicValue(intrinsicWidth);
var hasIntrinsicHeight = hasIntrinsicValue(intrinsicHeight);
var hasIntrinsicDimensions = hasIntrinsicWidth || hasIntrinsicHeight;
if (isAuto(first2) && (!second || isAuto(second))) {
if (hasIntrinsicWidth && hasIntrinsicHeight) {
return [intrinsicWidth, intrinsicHeight];
}
if (!hasIntrinsicProportion && !hasIntrinsicDimensions) {
return [bounds.width, bounds.height];
}
if (hasIntrinsicDimensions && hasIntrinsicProportion) {
var width_1 = hasIntrinsicWidth ? intrinsicWidth : intrinsicHeight * intrinsicProportion;
var height_1 = hasIntrinsicHeight ? intrinsicHeight : intrinsicWidth / intrinsicProportion;
return [width_1, height_1];
}
var width_2 = hasIntrinsicWidth ? intrinsicWidth : bounds.width;
var height_2 = hasIntrinsicHeight ? intrinsicHeight : bounds.height;
return [width_2, height_2];
}
if (hasIntrinsicProportion) {
var width_3 = 0;
var height_3 = 0;
if (isLengthPercentage(first2)) {
width_3 = getAbsoluteValue(first2, bounds.width);
} else if (isLengthPercentage(second)) {
height_3 = getAbsoluteValue(second, bounds.height);
}
if (isAuto(first2)) {
width_3 = height_3 * intrinsicProportion;
} else if (!second || isAuto(second)) {
height_3 = width_3 / intrinsicProportion;
}
return [width_3, height_3];
}
var width = null;
var height = null;
if (isLengthPercentage(first2)) {
width = getAbsoluteValue(first2, bounds.width);
} else if (second && isLengthPercentage(second)) {
height = getAbsoluteValue(second, bounds.height);
}
if (width !== null && (!second || isAuto(second))) {
height = hasIntrinsicWidth && hasIntrinsicHeight ? width / intrinsicWidth * intrinsicHeight : bounds.height;
}
if (height !== null && isAuto(first2)) {
width = hasIntrinsicWidth && hasIntrinsicHeight ? height / intrinsicHeight * intrinsicWidth : bounds.width;
}
if (width !== null && height !== null) {
return [width, height];
}
throw new Error("Unable to calculate background-size for element");
};
var getBackgroundValueForIndex = function(values2, index3) {
var value = values2[index3];
if (typeof value === "undefined") {
return values2[0];
}
return value;
};
var calculateBackgroundRepeatPath = function(repeat2, _a3, _b3, backgroundPositioningArea, backgroundPaintingArea) {
var x3 = _a3[0], y4 = _a3[1];
var width = _b3[0], height = _b3[1];
switch (repeat2) {
case BACKGROUND_REPEAT.REPEAT_X:
return [
new Vector(Math.round(backgroundPositioningArea.left), Math.round(backgroundPositioningArea.top + y4)),
new Vector(Math.round(backgroundPositioningArea.left + backgroundPositioningArea.width), Math.round(backgroundPositioningArea.top + y4)),
new Vector(Math.round(backgroundPositioningArea.left + backgroundPositioningArea.width), Math.round(height + backgroundPositioningArea.top + y4)),
new Vector(Math.round(backgroundPositioningArea.left), Math.round(height + backgroundPositioningArea.top + y4))
];
case BACKGROUND_REPEAT.REPEAT_Y:
return [
new Vector(Math.round(backgroundPositioningArea.left + x3), Math.round(backgroundPositioningArea.top)),
new Vector(Math.round(backgroundPositioningArea.left + x3 + width), Math.round(backgroundPositioningArea.top)),
new Vector(Math.round(backgroundPositioningArea.left + x3 + width), Math.round(backgroundPositioningArea.height + backgroundPositioningArea.top)),
new Vector(Math.round(backgroundPositioningArea.left + x3), Math.round(backgroundPositioningArea.height + backgroundPositioningArea.top))
];
case BACKGROUND_REPEAT.NO_REPEAT:
return [
new Vector(Math.round(backgroundPositioningArea.left + x3), Math.round(backgroundPositioningArea.top + y4)),
new Vector(Math.round(backgroundPositioningArea.left + x3 + width), Math.round(backgroundPositioningArea.top + y4)),
new Vector(Math.round(backgroundPositioningArea.left + x3 + width), Math.round(backgroundPositioningArea.top + y4 + height)),
new Vector(Math.round(backgroundPositioningArea.left + x3), Math.round(backgroundPositioningArea.top + y4 + height))
];
default:
return [
new Vector(Math.round(backgroundPaintingArea.left), Math.round(backgroundPaintingArea.top)),
new Vector(Math.round(backgroundPaintingArea.left + backgroundPaintingArea.width), Math.round(backgroundPaintingArea.top)),
new Vector(Math.round(backgroundPaintingArea.left + backgroundPaintingArea.width), Math.round(backgroundPaintingArea.height + backgroundPaintingArea.top)),
new Vector(Math.round(backgroundPaintingArea.left), Math.round(backgroundPaintingArea.height + backgroundPaintingArea.top))
];
}
};
var SMALL_IMAGE = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";
var SAMPLE_TEXT = "Hidden Text";
var FontMetrics = function() {
function FontMetrics2(document3) {
this._data = {};
this._document = document3;
}
FontMetrics2.prototype.parseMetrics = function(fontFamily2, fontSize2) {
var container = this._document.createElement("div");
var img = this._document.createElement("img");
var span = this._document.createElement("span");
var body = this._document.body;
container.style.visibility = "hidden";
container.style.fontFamily = fontFamily2;
container.style.fontSize = fontSize2;
container.style.margin = "0";
container.style.padding = "0";
body.appendChild(container);
img.src = SMALL_IMAGE;
img.width = 1;
img.height = 1;
img.style.margin = "0";
img.style.padding = "0";
img.style.verticalAlign = "baseline";
span.style.fontFamily = fontFamily2;
span.style.fontSize = fontSize2;
span.style.margin = "0";
span.style.padding = "0";
span.appendChild(this._document.createTextNode(SAMPLE_TEXT));
container.appendChild(span);
container.appendChild(img);
var baseline = img.offsetTop - span.offsetTop + 2;
container.removeChild(span);
container.appendChild(this._document.createTextNode(SAMPLE_TEXT));
container.style.lineHeight = "normal";
img.style.verticalAlign = "super";
var middle = img.offsetTop - container.offsetTop + 2;
body.removeChild(container);
return { baseline, middle };
};
FontMetrics2.prototype.getMetrics = function(fontFamily2, fontSize2) {
var key = fontFamily2 + " " + fontSize2;
if (typeof this._data[key] === "undefined") {
this._data[key] = this.parseMetrics(fontFamily2, fontSize2);
}
return this._data[key];
};
return FontMetrics2;
}();
var Renderer = function() {
function Renderer2(context2, options) {
this.context = context2;
this.options = options;
}
return Renderer2;
}();
var MASK_OFFSET = 1e4;
var CanvasRenderer = function(_super) {
__extends2(CanvasRenderer2, _super);
function CanvasRenderer2(context2, options) {
var _this = _super.call(this, context2, options) || this;
_this._activeEffects = [];
_this.canvas = options.canvas ? options.canvas : document.createElement("canvas");
_this.ctx = _this.canvas.getContext("2d");
if (!options.canvas) {
_this.canvas.width = Math.floor(options.width * options.scale);
_this.canvas.height = Math.floor(options.height * options.scale);
_this.canvas.style.width = options.width + "px";
_this.canvas.style.height = options.height + "px";
}
_this.fontMetrics = new FontMetrics(document);
_this.ctx.scale(_this.options.scale, _this.options.scale);
_this.ctx.translate(-options.x, -options.y);
_this.ctx.textBaseline = "bottom";
_this._activeEffects = [];
_this.context.logger.debug("Canvas renderer initialized (" + options.width + "x" + options.height + ") with scale " + options.scale);
return _this;
}
CanvasRenderer2.prototype.applyEffects = function(effects) {
var _this = this;
while (this._activeEffects.length) {
this.popEffect();
}
effects.forEach(function(effect) {
return _this.applyEffect(effect);
});
};
CanvasRenderer2.prototype.applyEffect = function(effect) {
this.ctx.save();
if (isOpacityEffect(effect)) {
this.ctx.globalAlpha = effect.opacity;
}
if (isTransformEffect(effect)) {
this.ctx.translate(effect.offsetX, effect.offsetY);
this.ctx.transform(effect.matrix[0], effect.matrix[1], effect.matrix[2], effect.matrix[3], effect.matrix[4], effect.matrix[5]);
this.ctx.translate(-effect.offsetX, -effect.offsetY);
}
if (isClipEffect(effect)) {
this.path(effect.path);
this.ctx.clip();
}
this._activeEffects.push(effect);
};
CanvasRenderer2.prototype.popEffect = function() {
this._activeEffects.pop();
this.ctx.restore();
};
CanvasRenderer2.prototype.renderStack = function(stack) {
return __awaiter(this, void 0, void 0, function() {
var styles;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
styles = stack.element.container.styles;
if (!styles.isVisible())
return [3, 2];
return [4, this.renderStackContent(stack)];
case 1:
_a3.sent();
_a3.label = 2;
case 2:
return [2];
}
});
});
};
CanvasRenderer2.prototype.renderNode = function(paint) {
return __awaiter(this, void 0, void 0, function() {
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
if (contains2(paint.container.flags, 16)) {
debugger;
}
if (!paint.container.styles.isVisible())
return [3, 3];
return [4, this.renderNodeBackgroundAndBorders(paint)];
case 1:
_a3.sent();
return [4, this.renderNodeContent(paint)];
case 2:
_a3.sent();
_a3.label = 3;
case 3:
return [2];
}
});
});
};
CanvasRenderer2.prototype.renderTextWithLetterSpacing = function(text, letterSpacing2, baseline) {
var _this = this;
if (letterSpacing2 === 0) {
this.ctx.fillText(text.text, text.bounds.left, text.bounds.top + baseline);
} else {
var letters = splitGraphemes(text.text);
letters.reduce(function(left, letter) {
_this.ctx.fillText(letter, left, text.bounds.top + baseline);
return left + _this.ctx.measureText(letter).width;
}, text.bounds.left);
}
};
CanvasRenderer2.prototype.createFontStyle = function(styles) {
var fontVariant2 = styles.fontVariant.filter(function(variant) {
return variant === "normal" || variant === "small-caps";
}).join("");
var fontFamily2 = styles.fontFamily.join(", ");
var fontSize2 = isDimensionToken(styles.fontSize) ? "" + styles.fontSize.number + styles.fontSize.unit : styles.fontSize.number + "px";
return [
[styles.fontStyle, fontVariant2, styles.fontWeight, fontSize2, fontFamily2].join(" "),
fontFamily2,
fontSize2
];
};
CanvasRenderer2.prototype.renderTextNode = function(text, styles) {
return __awaiter(this, void 0, void 0, function() {
var _a3, font, fontFamily2, fontSize2, _b3, baseline, middle, paintOrder2;
var _this = this;
return __generator(this, function(_c) {
_a3 = this.createFontStyle(styles), font = _a3[0], fontFamily2 = _a3[1], fontSize2 = _a3[2];
this.ctx.font = font;
this.ctx.direction = styles.direction === 1 ? "rtl" : "ltr";
this.ctx.textAlign = "left";
this.ctx.textBaseline = "alphabetic";
_b3 = this.fontMetrics.getMetrics(fontFamily2, fontSize2), baseline = _b3.baseline, middle = _b3.middle;
paintOrder2 = styles.paintOrder;
text.textBounds.forEach(function(text2) {
paintOrder2.forEach(function(paintOrderLayer) {
switch (paintOrderLayer) {
case PAINT_ORDER_LAYER.FILL:
_this.ctx.fillStyle = asString(styles.color);
_this.renderTextWithLetterSpacing(text2, styles.letterSpacing, baseline);
var textShadows = styles.textShadow;
if (textShadows.length && text2.text.trim().length) {
textShadows.slice(0).reverse().forEach(function(textShadow2) {
_this.ctx.shadowColor = asString(textShadow2.color);
_this.ctx.shadowOffsetX = textShadow2.offsetX.number * _this.options.scale;
_this.ctx.shadowOffsetY = textShadow2.offsetY.number * _this.options.scale;
_this.ctx.shadowBlur = textShadow2.blur.number;
_this.renderTextWithLetterSpacing(text2, styles.letterSpacing, baseline);
});
_this.ctx.shadowColor = "";
_this.ctx.shadowOffsetX = 0;
_this.ctx.shadowOffsetY = 0;
_this.ctx.shadowBlur = 0;
}
if (styles.textDecorationLine.length) {
_this.ctx.fillStyle = asString(styles.textDecorationColor || styles.color);
styles.textDecorationLine.forEach(function(textDecorationLine2) {
switch (textDecorationLine2) {
case 1:
_this.ctx.fillRect(text2.bounds.left, Math.round(text2.bounds.top + baseline), text2.bounds.width, 1);
break;
case 2:
_this.ctx.fillRect(text2.bounds.left, Math.round(text2.bounds.top), text2.bounds.width, 1);
break;
case 3:
_this.ctx.fillRect(text2.bounds.left, Math.ceil(text2.bounds.top + middle), text2.bounds.width, 1);
break;
}
});
}
break;
case PAINT_ORDER_LAYER.STROKE:
if (styles.webkitTextStrokeWidth && text2.text.trim().length) {
_this.ctx.strokeStyle = asString(styles.webkitTextStrokeColor);
_this.ctx.lineWidth = styles.webkitTextStrokeWidth;
_this.ctx.lineJoin = !!window.chrome ? "miter" : "round";
_this.ctx.strokeText(text2.text, text2.bounds.left, text2.bounds.top + baseline);
}
_this.ctx.strokeStyle = "";
_this.ctx.lineWidth = 0;
_this.ctx.lineJoin = "miter";
break;
}
});
});
return [2];
});
});
};
CanvasRenderer2.prototype.renderReplacedElement = function(container, curves, image2) {
if (image2 && container.intrinsicWidth > 0 && container.intrinsicHeight > 0) {
var box = contentBox(container);
var path2 = calculatePaddingBoxPath(curves);
this.path(path2);
this.ctx.save();
this.ctx.clip();
this.ctx.drawImage(image2, 0, 0, container.intrinsicWidth, container.intrinsicHeight, box.left, box.top, box.width, box.height);
this.ctx.restore();
}
};
CanvasRenderer2.prototype.renderNodeContent = function(paint) {
return __awaiter(this, void 0, void 0, function() {
var container, curves, styles, _i, _a3, child, image2, image2, iframeRenderer, canvas, size, _b3, fontFamily2, fontSize2, baseline, bounds, x3, textBounds, img, image2, url, fontFamily2, bounds;
return __generator(this, function(_c) {
switch (_c.label) {
case 0:
this.applyEffects(paint.getEffects(4));
container = paint.container;
curves = paint.curves;
styles = container.styles;
_i = 0, _a3 = container.textNodes;
_c.label = 1;
case 1:
if (!(_i < _a3.length))
return [3, 4];
child = _a3[_i];
return [4, this.renderTextNode(child, styles)];
case 2:
_c.sent();
_c.label = 3;
case 3:
_i++;
return [3, 1];
case 4:
if (!(container instanceof ImageElementContainer))
return [3, 8];
_c.label = 5;
case 5:
_c.trys.push([5, 7, , 8]);
return [4, this.context.cache.match(container.src)];
case 6:
image2 = _c.sent();
this.renderReplacedElement(container, curves, image2);
return [3, 8];
case 7:
_c.sent();
this.context.logger.error("Error loading image " + container.src);
return [3, 8];
case 8:
if (container instanceof CanvasElementContainer) {
this.renderReplacedElement(container, curves, container.canvas);
}
if (!(container instanceof SVGElementContainer))
return [3, 12];
_c.label = 9;
case 9:
_c.trys.push([9, 11, , 12]);
return [4, this.context.cache.match(container.svg)];
case 10:
image2 = _c.sent();
this.renderReplacedElement(container, curves, image2);
return [3, 12];
case 11:
_c.sent();
this.context.logger.error("Error loading svg " + container.svg.substring(0, 255));
return [3, 12];
case 12:
if (!(container instanceof IFrameElementContainer && container.tree))
return [3, 14];
iframeRenderer = new CanvasRenderer2(this.context, {
scale: this.options.scale,
backgroundColor: container.backgroundColor,
x: 0,
y: 0,
width: container.width,
height: container.height
});
return [4, iframeRenderer.render(container.tree)];
case 13:
canvas = _c.sent();
if (container.width && container.height) {
this.ctx.drawImage(canvas, 0, 0, container.width, container.height, container.bounds.left, container.bounds.top, container.bounds.width, container.bounds.height);
}
_c.label = 14;
case 14:
if (container instanceof InputElementContainer) {
size = Math.min(container.bounds.width, container.bounds.height);
if (container.type === CHECKBOX) {
if (container.checked) {
this.ctx.save();
this.path([
new Vector(container.bounds.left + size * 0.39363, container.bounds.top + size * 0.79),
new Vector(container.bounds.left + size * 0.16, container.bounds.top + size * 0.5549),
new Vector(container.bounds.left + size * 0.27347, container.bounds.top + size * 0.44071),
new Vector(container.bounds.left + size * 0.39694, container.bounds.top + size * 0.5649),
new Vector(container.bounds.left + size * 0.72983, container.bounds.top + size * 0.23),
new Vector(container.bounds.left + size * 0.84, container.bounds.top + size * 0.34085),
new Vector(container.bounds.left + size * 0.39363, container.bounds.top + size * 0.79)
]);
this.ctx.fillStyle = asString(INPUT_COLOR);
this.ctx.fill();
this.ctx.restore();
}
} else if (container.type === RADIO) {
if (container.checked) {
this.ctx.save();
this.ctx.beginPath();
this.ctx.arc(container.bounds.left + size / 2, container.bounds.top + size / 2, size / 4, 0, Math.PI * 2, true);
this.ctx.fillStyle = asString(INPUT_COLOR);
this.ctx.fill();
this.ctx.restore();
}
}
}
if (isTextInputElement(container) && container.value.length) {
_b3 = this.createFontStyle(styles), fontFamily2 = _b3[0], fontSize2 = _b3[1];
baseline = this.fontMetrics.getMetrics(fontFamily2, fontSize2).baseline;
this.ctx.font = fontFamily2;
this.ctx.fillStyle = asString(styles.color);
this.ctx.textBaseline = "alphabetic";
this.ctx.textAlign = canvasTextAlign(container.styles.textAlign);
bounds = contentBox(container);
x3 = 0;
switch (container.styles.textAlign) {
case TEXT_ALIGN.CENTER:
x3 += bounds.width / 2;
break;
case TEXT_ALIGN.RIGHT:
x3 += bounds.width;
break;
}
textBounds = bounds.add(x3, 0, 0, -bounds.height / 2 + 1);
this.ctx.save();
this.path([
new Vector(bounds.left, bounds.top),
new Vector(bounds.left + bounds.width, bounds.top),
new Vector(bounds.left + bounds.width, bounds.top + bounds.height),
new Vector(bounds.left, bounds.top + bounds.height)
]);
this.ctx.clip();
this.renderTextWithLetterSpacing(new TextBounds(container.value, textBounds), styles.letterSpacing, baseline);
this.ctx.restore();
this.ctx.textBaseline = "alphabetic";
this.ctx.textAlign = "left";
}
if (!contains2(container.styles.display, 2048))
return [3, 20];
if (!(container.styles.listStyleImage !== null))
return [3, 19];
img = container.styles.listStyleImage;
if (!(img.type === CSSImageType.URL))
return [3, 18];
image2 = void 0;
url = img.url;
_c.label = 15;
case 15:
_c.trys.push([15, 17, , 18]);
return [4, this.context.cache.match(url)];
case 16:
image2 = _c.sent();
this.ctx.drawImage(image2, container.bounds.left - (image2.width + 10), container.bounds.top);
return [3, 18];
case 17:
_c.sent();
this.context.logger.error("Error loading list-style-image " + url);
return [3, 18];
case 18:
return [3, 20];
case 19:
if (paint.listValue && container.styles.listStyleType !== LIST_STYLE_TYPE.NONE) {
fontFamily2 = this.createFontStyle(styles)[0];
this.ctx.font = fontFamily2;
this.ctx.fillStyle = asString(styles.color);
this.ctx.textBaseline = "middle";
this.ctx.textAlign = "right";
bounds = new Bounds(container.bounds.left, container.bounds.top + getAbsoluteValue(container.styles.paddingTop, container.bounds.width), container.bounds.width, computeLineHeight(styles.lineHeight, styles.fontSize.number) / 2 + 1);
this.renderTextWithLetterSpacing(new TextBounds(paint.listValue, bounds), styles.letterSpacing, computeLineHeight(styles.lineHeight, styles.fontSize.number) / 2 + 2);
this.ctx.textBaseline = "bottom";
this.ctx.textAlign = "left";
}
_c.label = 20;
case 20:
return [2];
}
});
});
};
CanvasRenderer2.prototype.renderStackContent = function(stack) {
return __awaiter(this, void 0, void 0, function() {
var _i, _a3, child, _b3, _c, child, _d, _e, child, _f, _g, child, _h, _j, child, _k, _l, child, _m, _o, child;
return __generator(this, function(_p) {
switch (_p.label) {
case 0:
if (contains2(stack.element.container.flags, 16)) {
debugger;
}
return [4, this.renderNodeBackgroundAndBorders(stack.element)];
case 1:
_p.sent();
_i = 0, _a3 = stack.negativeZIndex;
_p.label = 2;
case 2:
if (!(_i < _a3.length))
return [3, 5];
child = _a3[_i];
return [4, this.renderStack(child)];
case 3:
_p.sent();
_p.label = 4;
case 4:
_i++;
return [3, 2];
case 5:
return [4, this.renderNodeContent(stack.element)];
case 6:
_p.sent();
_b3 = 0, _c = stack.nonInlineLevel;
_p.label = 7;
case 7:
if (!(_b3 < _c.length))
return [3, 10];
child = _c[_b3];
return [4, this.renderNode(child)];
case 8:
_p.sent();
_p.label = 9;
case 9:
_b3++;
return [3, 7];
case 10:
_d = 0, _e = stack.nonPositionedFloats;
_p.label = 11;
case 11:
if (!(_d < _e.length))
return [3, 14];
child = _e[_d];
return [4, this.renderStack(child)];
case 12:
_p.sent();
_p.label = 13;
case 13:
_d++;
return [3, 11];
case 14:
_f = 0, _g = stack.nonPositionedInlineLevel;
_p.label = 15;
case 15:
if (!(_f < _g.length))
return [3, 18];
child = _g[_f];
return [4, this.renderStack(child)];
case 16:
_p.sent();
_p.label = 17;
case 17:
_f++;
return [3, 15];
case 18:
_h = 0, _j = stack.inlineLevel;
_p.label = 19;
case 19:
if (!(_h < _j.length))
return [3, 22];
child = _j[_h];
return [4, this.renderNode(child)];
case 20:
_p.sent();
_p.label = 21;
case 21:
_h++;
return [3, 19];
case 22:
_k = 0, _l = stack.zeroOrAutoZIndexOrTransformedOrOpacity;
_p.label = 23;
case 23:
if (!(_k < _l.length))
return [3, 26];
child = _l[_k];
return [4, this.renderStack(child)];
case 24:
_p.sent();
_p.label = 25;
case 25:
_k++;
return [3, 23];
case 26:
_m = 0, _o = stack.positiveZIndex;
_p.label = 27;
case 27:
if (!(_m < _o.length))
return [3, 30];
child = _o[_m];
return [4, this.renderStack(child)];
case 28:
_p.sent();
_p.label = 29;
case 29:
_m++;
return [3, 27];
case 30:
return [2];
}
});
});
};
CanvasRenderer2.prototype.mask = function(paths) {
this.ctx.beginPath();
this.ctx.moveTo(0, 0);
this.ctx.lineTo(this.canvas.width, 0);
this.ctx.lineTo(this.canvas.width, this.canvas.height);
this.ctx.lineTo(0, this.canvas.height);
this.ctx.lineTo(0, 0);
this.formatPath(paths.slice(0).reverse());
this.ctx.closePath();
};
CanvasRenderer2.prototype.path = function(paths) {
this.ctx.beginPath();
this.formatPath(paths);
this.ctx.closePath();
};
CanvasRenderer2.prototype.formatPath = function(paths) {
var _this = this;
paths.forEach(function(point2, index3) {
var start = isBezierCurve(point2) ? point2.start : point2;
if (index3 === 0) {
_this.ctx.moveTo(start.x, start.y);
} else {
_this.ctx.lineTo(start.x, start.y);
}
if (isBezierCurve(point2)) {
_this.ctx.bezierCurveTo(point2.startControl.x, point2.startControl.y, point2.endControl.x, point2.endControl.y, point2.end.x, point2.end.y);
}
});
};
CanvasRenderer2.prototype.renderRepeat = function(path2, pattern2, offsetX, offsetY) {
this.path(path2);
this.ctx.fillStyle = pattern2;
this.ctx.translate(offsetX, offsetY);
this.ctx.fill();
this.ctx.translate(-offsetX, -offsetY);
};
CanvasRenderer2.prototype.resizeImage = function(image2, width, height) {
var _a3;
if (image2.width === width && image2.height === height) {
return image2;
}
var ownerDocument = (_a3 = this.canvas.ownerDocument) !== null && _a3 !== void 0 ? _a3 : document;
var canvas = ownerDocument.createElement("canvas");
canvas.width = Math.max(1, width);
canvas.height = Math.max(1, height);
var ctx = canvas.getContext("2d");
ctx.drawImage(image2, 0, 0, image2.width, image2.height, 0, 0, width, height);
return canvas;
};
CanvasRenderer2.prototype.renderBackgroundImage = function(container) {
return __awaiter(this, void 0, void 0, function() {
var index3, _loop_1, this_1, _i, _a3, backgroundImage2;
return __generator(this, function(_b3) {
switch (_b3.label) {
case 0:
index3 = container.styles.backgroundImage.length - 1;
_loop_1 = function(backgroundImage3) {
var image2, url, _c, path2, x3, y4, width, height, pattern2, _d, path2, x3, y4, width, height, _e, lineLength, x0, x1, y0, y1, canvas, ctx, gradient_1, pattern2, _f, path2, left, top_1, width, height, position2, x3, y4, _g, rx, ry, radialGradient_1, midX, midY, f7, invF;
return __generator(this, function(_h) {
switch (_h.label) {
case 0:
if (!(backgroundImage3.type === CSSImageType.URL))
return [3, 5];
image2 = void 0;
url = backgroundImage3.url;
_h.label = 1;
case 1:
_h.trys.push([1, 3, , 4]);
return [4, this_1.context.cache.match(url)];
case 2:
image2 = _h.sent();
return [3, 4];
case 3:
_h.sent();
this_1.context.logger.error("Error loading background-image " + url);
return [3, 4];
case 4:
if (image2) {
_c = calculateBackgroundRendering(container, index3, [
image2.width,
image2.height,
image2.width / image2.height
]), path2 = _c[0], x3 = _c[1], y4 = _c[2], width = _c[3], height = _c[4];
pattern2 = this_1.ctx.createPattern(this_1.resizeImage(image2, width, height), "repeat");
this_1.renderRepeat(path2, pattern2, x3, y4);
}
return [3, 6];
case 5:
if (isLinearGradient(backgroundImage3)) {
_d = calculateBackgroundRendering(container, index3, [null, null, null]), path2 = _d[0], x3 = _d[1], y4 = _d[2], width = _d[3], height = _d[4];
_e = calculateGradientDirection(backgroundImage3.angle, width, height), lineLength = _e[0], x0 = _e[1], x1 = _e[2], y0 = _e[3], y1 = _e[4];
canvas = document.createElement("canvas");
canvas.width = width;
canvas.height = height;
ctx = canvas.getContext("2d");
gradient_1 = ctx.createLinearGradient(x0, y0, x1, y1);
processColorStops(backgroundImage3.stops, lineLength).forEach(function(colorStop) {
return gradient_1.addColorStop(colorStop.stop, asString(colorStop.color));
});
ctx.fillStyle = gradient_1;
ctx.fillRect(0, 0, width, height);
if (width > 0 && height > 0) {
pattern2 = this_1.ctx.createPattern(canvas, "repeat");
this_1.renderRepeat(path2, pattern2, x3, y4);
}
} else if (isRadialGradient(backgroundImage3)) {
_f = calculateBackgroundRendering(container, index3, [
null,
null,
null
]), path2 = _f[0], left = _f[1], top_1 = _f[2], width = _f[3], height = _f[4];
position2 = backgroundImage3.position.length === 0 ? [FIFTY_PERCENT] : backgroundImage3.position;
x3 = getAbsoluteValue(position2[0], width);
y4 = getAbsoluteValue(position2[position2.length - 1], height);
_g = calculateRadius(backgroundImage3, x3, y4, width, height), rx = _g[0], ry = _g[1];
if (rx > 0 && ry > 0) {
radialGradient_1 = this_1.ctx.createRadialGradient(left + x3, top_1 + y4, 0, left + x3, top_1 + y4, rx);
processColorStops(backgroundImage3.stops, rx * 2).forEach(function(colorStop) {
return radialGradient_1.addColorStop(colorStop.stop, asString(colorStop.color));
});
this_1.path(path2);
this_1.ctx.fillStyle = radialGradient_1;
if (rx !== ry) {
midX = container.bounds.left + 0.5 * container.bounds.width;
midY = container.bounds.top + 0.5 * container.bounds.height;
f7 = ry / rx;
invF = 1 / f7;
this_1.ctx.save();
this_1.ctx.translate(midX, midY);
this_1.ctx.transform(1, 0, 0, f7, 0, 0);
this_1.ctx.translate(-midX, -midY);
this_1.ctx.fillRect(left, invF * (top_1 - midY) + midY, width, height * invF);
this_1.ctx.restore();
} else {
this_1.ctx.fill();
}
}
}
_h.label = 6;
case 6:
index3--;
return [2];
}
});
};
this_1 = this;
_i = 0, _a3 = container.styles.backgroundImage.slice(0).reverse();
_b3.label = 1;
case 1:
if (!(_i < _a3.length))
return [3, 4];
backgroundImage2 = _a3[_i];
return [5, _loop_1(backgroundImage2)];
case 2:
_b3.sent();
_b3.label = 3;
case 3:
_i++;
return [3, 1];
case 4:
return [2];
}
});
});
};
CanvasRenderer2.prototype.renderSolidBorder = function(color3, side, curvePoints) {
return __awaiter(this, void 0, void 0, function() {
return __generator(this, function(_a3) {
this.path(parsePathForBorder(curvePoints, side));
this.ctx.fillStyle = asString(color3);
this.ctx.fill();
return [2];
});
});
};
CanvasRenderer2.prototype.renderDoubleBorder = function(color3, width, side, curvePoints) {
return __awaiter(this, void 0, void 0, function() {
var outerPaths, innerPaths;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
if (!(width < 3))
return [3, 2];
return [4, this.renderSolidBorder(color3, side, curvePoints)];
case 1:
_a3.sent();
return [2];
case 2:
outerPaths = parsePathForBorderDoubleOuter(curvePoints, side);
this.path(outerPaths);
this.ctx.fillStyle = asString(color3);
this.ctx.fill();
innerPaths = parsePathForBorderDoubleInner(curvePoints, side);
this.path(innerPaths);
this.ctx.fill();
return [2];
}
});
});
};
CanvasRenderer2.prototype.renderNodeBackgroundAndBorders = function(paint) {
return __awaiter(this, void 0, void 0, function() {
var styles, hasBackground, borders, backgroundPaintingArea, side, _i, borders_1, border;
var _this = this;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
this.applyEffects(paint.getEffects(2));
styles = paint.container.styles;
hasBackground = !isTransparent(styles.backgroundColor) || styles.backgroundImage.length;
borders = [
{ style: styles.borderTopStyle, color: styles.borderTopColor, width: styles.borderTopWidth },
{ style: styles.borderRightStyle, color: styles.borderRightColor, width: styles.borderRightWidth },
{ style: styles.borderBottomStyle, color: styles.borderBottomColor, width: styles.borderBottomWidth },
{ style: styles.borderLeftStyle, color: styles.borderLeftColor, width: styles.borderLeftWidth }
];
backgroundPaintingArea = calculateBackgroundCurvedPaintingArea(getBackgroundValueForIndex(styles.backgroundClip, 0), paint.curves);
if (!(hasBackground || styles.boxShadow.length))
return [3, 2];
this.ctx.save();
this.path(backgroundPaintingArea);
this.ctx.clip();
if (!isTransparent(styles.backgroundColor)) {
this.ctx.fillStyle = asString(styles.backgroundColor);
this.ctx.fill();
}
return [4, this.renderBackgroundImage(paint.container)];
case 1:
_a3.sent();
this.ctx.restore();
styles.boxShadow.slice(0).reverse().forEach(function(shadow) {
_this.ctx.save();
var borderBoxArea = calculateBorderBoxPath(paint.curves);
var maskOffset = shadow.inset ? 0 : MASK_OFFSET;
var shadowPaintingArea = transformPath(borderBoxArea, -maskOffset + (shadow.inset ? 1 : -1) * shadow.spread.number, (shadow.inset ? 1 : -1) * shadow.spread.number, shadow.spread.number * (shadow.inset ? -2 : 2), shadow.spread.number * (shadow.inset ? -2 : 2));
if (shadow.inset) {
_this.path(borderBoxArea);
_this.ctx.clip();
_this.mask(shadowPaintingArea);
} else {
_this.mask(borderBoxArea);
_this.ctx.clip();
_this.path(shadowPaintingArea);
}
_this.ctx.shadowOffsetX = shadow.offsetX.number + maskOffset;
_this.ctx.shadowOffsetY = shadow.offsetY.number;
_this.ctx.shadowColor = asString(shadow.color);
_this.ctx.shadowBlur = shadow.blur.number;
_this.ctx.fillStyle = shadow.inset ? asString(shadow.color) : "rgba(0,0,0,1)";
_this.ctx.fill();
_this.ctx.restore();
});
_a3.label = 2;
case 2:
side = 0;
_i = 0, borders_1 = borders;
_a3.label = 3;
case 3:
if (!(_i < borders_1.length))
return [3, 13];
border = borders_1[_i];
if (!(border.style !== BORDER_STYLE.NONE && !isTransparent(border.color) && border.width > 0))
return [3, 11];
if (!(border.style === BORDER_STYLE.DASHED))
return [3, 5];
return [4, this.renderDashedDottedBorder(border.color, border.width, side, paint.curves, BORDER_STYLE.DASHED)];
case 4:
_a3.sent();
return [3, 11];
case 5:
if (!(border.style === BORDER_STYLE.DOTTED))
return [3, 7];
return [4, this.renderDashedDottedBorder(border.color, border.width, side, paint.curves, BORDER_STYLE.DOTTED)];
case 6:
_a3.sent();
return [3, 11];
case 7:
if (!(border.style === BORDER_STYLE.DOUBLE))
return [3, 9];
return [4, this.renderDoubleBorder(border.color, border.width, side, paint.curves)];
case 8:
_a3.sent();
return [3, 11];
case 9:
return [4, this.renderSolidBorder(border.color, side, paint.curves)];
case 10:
_a3.sent();
_a3.label = 11;
case 11:
side++;
_a3.label = 12;
case 12:
_i++;
return [3, 3];
case 13:
return [2];
}
});
});
};
CanvasRenderer2.prototype.renderDashedDottedBorder = function(color3, width, side, curvePoints, style) {
return __awaiter(this, void 0, void 0, function() {
var strokePaths, boxPaths, startX, startY, endX, endY, length, dashLength, spaceLength, useLineDash, multiplier, numberOfDashes, minSpace, maxSpace, path1, path2, path1, path2;
return __generator(this, function(_a3) {
this.ctx.save();
strokePaths = parsePathForBorderStroke(curvePoints, side);
boxPaths = parsePathForBorder(curvePoints, side);
if (style === BORDER_STYLE.DASHED) {
this.path(boxPaths);
this.ctx.clip();
}
if (isBezierCurve(boxPaths[0])) {
startX = boxPaths[0].start.x;
startY = boxPaths[0].start.y;
} else {
startX = boxPaths[0].x;
startY = boxPaths[0].y;
}
if (isBezierCurve(boxPaths[1])) {
endX = boxPaths[1].end.x;
endY = boxPaths[1].end.y;
} else {
endX = boxPaths[1].x;
endY = boxPaths[1].y;
}
if (side === 0 || side === 2) {
length = Math.abs(startX - endX);
} else {
length = Math.abs(startY - endY);
}
this.ctx.beginPath();
if (style === BORDER_STYLE.DOTTED) {
this.formatPath(strokePaths);
} else {
this.formatPath(boxPaths.slice(0, 2));
}
dashLength = width < 3 ? width * 3 : width * 2;
spaceLength = width < 3 ? width * 2 : width;
if (style === BORDER_STYLE.DOTTED) {
dashLength = width;
spaceLength = width;
}
useLineDash = true;
if (length <= dashLength * 2) {
useLineDash = false;
} else if (length <= dashLength * 2 + spaceLength) {
multiplier = length / (2 * dashLength + spaceLength);
dashLength *= multiplier;
spaceLength *= multiplier;
} else {
numberOfDashes = Math.floor((length + spaceLength) / (dashLength + spaceLength));
minSpace = (length - numberOfDashes * dashLength) / (numberOfDashes - 1);
maxSpace = (length - (numberOfDashes + 1) * dashLength) / numberOfDashes;
spaceLength = maxSpace <= 0 || Math.abs(spaceLength - minSpace) < Math.abs(spaceLength - maxSpace) ? minSpace : maxSpace;
}
if (useLineDash) {
if (style === BORDER_STYLE.DOTTED) {
this.ctx.setLineDash([0, dashLength + spaceLength]);
} else {
this.ctx.setLineDash([dashLength, spaceLength]);
}
}
if (style === BORDER_STYLE.DOTTED) {
this.ctx.lineCap = "round";
this.ctx.lineWidth = width;
} else {
this.ctx.lineWidth = width * 2 + 1.1;
}
this.ctx.strokeStyle = asString(color3);
this.ctx.stroke();
this.ctx.setLineDash([]);
if (style === BORDER_STYLE.DASHED) {
if (isBezierCurve(boxPaths[0])) {
path1 = boxPaths[3];
path2 = boxPaths[0];
this.ctx.beginPath();
this.formatPath([new Vector(path1.end.x, path1.end.y), new Vector(path2.start.x, path2.start.y)]);
this.ctx.stroke();
}
if (isBezierCurve(boxPaths[1])) {
path1 = boxPaths[1];
path2 = boxPaths[2];
this.ctx.beginPath();
this.formatPath([new Vector(path1.end.x, path1.end.y), new Vector(path2.start.x, path2.start.y)]);
this.ctx.stroke();
}
}
this.ctx.restore();
return [2];
});
});
};
CanvasRenderer2.prototype.render = function(element) {
return __awaiter(this, void 0, void 0, function() {
var stack;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
if (this.options.backgroundColor) {
this.ctx.fillStyle = asString(this.options.backgroundColor);
this.ctx.fillRect(this.options.x, this.options.y, this.options.width, this.options.height);
}
stack = parseStackingContexts(element);
return [4, this.renderStack(stack)];
case 1:
_a3.sent();
this.applyEffects([]);
return [2, this.canvas];
}
});
});
};
return CanvasRenderer2;
}(Renderer);
var isTextInputElement = function(container) {
if (container instanceof TextareaElementContainer) {
return true;
} else if (container instanceof SelectElementContainer) {
return true;
} else if (container instanceof InputElementContainer && container.type !== RADIO && container.type !== CHECKBOX) {
return true;
}
return false;
};
var calculateBackgroundCurvedPaintingArea = function(clip, curves) {
switch (clip) {
case BACKGROUND_CLIP.BORDER_BOX:
return calculateBorderBoxPath(curves);
case BACKGROUND_CLIP.CONTENT_BOX:
return calculateContentBoxPath(curves);
case BACKGROUND_CLIP.PADDING_BOX:
default:
return calculatePaddingBoxPath(curves);
}
};
var canvasTextAlign = function(textAlign2) {
switch (textAlign2) {
case TEXT_ALIGN.CENTER:
return "center";
case TEXT_ALIGN.RIGHT:
return "right";
case TEXT_ALIGN.LEFT:
default:
return "left";
}
};
var ForeignObjectRenderer = function(_super) {
__extends2(ForeignObjectRenderer2, _super);
function ForeignObjectRenderer2(context2, options) {
var _this = _super.call(this, context2, options) || this;
_this.canvas = options.canvas ? options.canvas : document.createElement("canvas");
_this.ctx = _this.canvas.getContext("2d");
_this.options = options;
_this.canvas.width = Math.floor(options.width * options.scale);
_this.canvas.height = Math.floor(options.height * options.scale);
_this.canvas.style.width = options.width + "px";
_this.canvas.style.height = options.height + "px";
_this.ctx.scale(_this.options.scale, _this.options.scale);
_this.ctx.translate(-options.x, -options.y);
_this.context.logger.debug("EXPERIMENTAL ForeignObject renderer initialized (" + options.width + "x" + options.height + " at " + options.x + "," + options.y + ") with scale " + options.scale);
return _this;
}
ForeignObjectRenderer2.prototype.render = function(element) {
return __awaiter(this, void 0, void 0, function() {
var svg, img;
return __generator(this, function(_a3) {
switch (_a3.label) {
case 0:
svg = createForeignObjectSVG(this.options.width * this.options.scale, this.options.height * this.options.scale, this.options.scale, this.options.scale, element);
return [4, loadSerializedSVG(svg)];
case 1:
img = _a3.sent();
if (this.options.backgroundColor) {
this.ctx.fillStyle = asString(this.options.backgroundColor);
this.ctx.fillRect(0, 0, this.options.width * this.options.scale, this.options.height * this.options.scale);
}
this.ctx.drawImage(img, -this.options.x * this.options.scale, -this.options.y * this.options.scale);
return [2, this.canvas];
}
});
});
};
return ForeignObjectRenderer2;
}(Renderer);
var loadSerializedSVG = function(svg) {
return new Promise(function(resolve3, reject2) {
var img = new Image();
img.onload = function() {
resolve3(img);
};
img.onerror = reject2;
img.src = "data:image/svg+xml;charset=utf-8," + encodeURIComponent(new XMLSerializer().serializeToString(svg));
});
};
var Logger = function() {
function Logger2(_a3) {
var id = _a3.id, enabled = _a3.enabled;
this.id = id;
this.enabled = enabled;
this.start = Date.now();
}
Logger2.prototype.debug = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (this.enabled) {
if (typeof window !== "undefined" && window.console && typeof console.debug === "function") {
console.debug.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
} else {
this.info.apply(this, args);
}
}
};
Logger2.prototype.getTime = function() {
return Date.now() - this.start;
};
Logger2.prototype.info = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (this.enabled) {
if (typeof window !== "undefined" && window.console && typeof console.info === "function") {
console.info.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
}
}
};
Logger2.prototype.warn = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (this.enabled) {
if (typeof window !== "undefined" && window.console && typeof console.warn === "function") {
console.warn.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
} else {
this.info.apply(this, args);
}
}
};
Logger2.prototype.error = function() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (this.enabled) {
if (typeof window !== "undefined" && window.console && typeof console.error === "function") {
console.error.apply(console, __spreadArray([this.id, this.getTime() + "ms"], args));
} else {
this.info.apply(this, args);
}
}
};
Logger2.instances = {};
return Logger2;
}();
var Context3 = function() {
function Context4(options, windowBounds) {
var _a3;
this.windowBounds = windowBounds;
this.instanceName = "#" + Context4.instanceCount++;
this.logger = new Logger({ id: this.instanceName, enabled: options.logging });
this.cache = (_a3 = options.cache) !== null && _a3 !== void 0 ? _a3 : new Cache3(this, options);
}
Context4.instanceCount = 1;
return Context4;
}();
var html2canvas = function(element, options) {
if (options === void 0) {
options = {};
}
return renderElement(element, options);
};
if (typeof window !== "undefined") {
CacheStorage.setContext(window);
}
var renderElement = function(element, opts) {
return __awaiter(void 0, void 0, void 0, function() {
var ownerDocument, defaultView, resourceOptions, contextOptions, windowOptions, windowBounds, context2, foreignObjectRendering, cloneOptions, documentCloner, clonedElement, container, _a3, width, height, left, top, backgroundColor2, renderOptions, canvas, renderer, root2, renderer;
var _b3, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t2;
return __generator(this, function(_u) {
switch (_u.label) {
case 0:
if (!element || typeof element !== "object") {
return [2, Promise.reject("Invalid element provided as first argument")];
}
ownerDocument = element.ownerDocument;
if (!ownerDocument) {
throw new Error("Element is not attached to a Document");
}
defaultView = ownerDocument.defaultView;
if (!defaultView) {
throw new Error("Document is not attached to a Window");
}
resourceOptions = {
allowTaint: (_b3 = opts.allowTaint) !== null && _b3 !== void 0 ? _b3 : false,
imageTimeout: (_c = opts.imageTimeout) !== null && _c !== void 0 ? _c : 15e3,
proxy: opts.proxy,
useCORS: (_d = opts.useCORS) !== null && _d !== void 0 ? _d : false
};
contextOptions = __assign({ logging: (_e = opts.logging) !== null && _e !== void 0 ? _e : true, cache: opts.cache }, resourceOptions);
windowOptions = {
windowWidth: (_f = opts.windowWidth) !== null && _f !== void 0 ? _f : defaultView.innerWidth,
windowHeight: (_g = opts.windowHeight) !== null && _g !== void 0 ? _g : defaultView.innerHeight,
scrollX: (_h = opts.scrollX) !== null && _h !== void 0 ? _h : defaultView.pageXOffset,
scrollY: (_j = opts.scrollY) !== null && _j !== void 0 ? _j : defaultView.pageYOffset
};
windowBounds = new Bounds(windowOptions.scrollX, windowOptions.scrollY, windowOptions.windowWidth, windowOptions.windowHeight);
context2 = new Context3(contextOptions, windowBounds);
foreignObjectRendering = (_k = opts.foreignObjectRendering) !== null && _k !== void 0 ? _k : false;
cloneOptions = {
allowTaint: (_l = opts.allowTaint) !== null && _l !== void 0 ? _l : false,
onclone: opts.onclone,
ignoreElements: opts.ignoreElements,
inlineImages: foreignObjectRendering,
copyStyles: foreignObjectRendering
};
context2.logger.debug("Starting document clone with size " + windowBounds.width + "x" + windowBounds.height + " scrolled to " + -windowBounds.left + "," + -windowBounds.top);
documentCloner = new DocumentCloner(context2, element, cloneOptions);
clonedElement = documentCloner.clonedReferenceElement;
if (!clonedElement) {
return [2, Promise.reject("Unable to find element in cloned iframe")];
}
return [4, documentCloner.toIFrame(ownerDocument, windowBounds)];
case 1:
container = _u.sent();
_a3 = isBodyElement(clonedElement) || isHTMLElement(clonedElement) ? parseDocumentSize(clonedElement.ownerDocument) : parseBounds(context2, clonedElement), width = _a3.width, height = _a3.height, left = _a3.left, top = _a3.top;
backgroundColor2 = parseBackgroundColor(context2, clonedElement, opts.backgroundColor);
renderOptions = {
canvas: opts.canvas,
backgroundColor: backgroundColor2,
scale: (_o = (_m = opts.scale) !== null && _m !== void 0 ? _m : defaultView.devicePixelRatio) !== null && _o !== void 0 ? _o : 1,
x: ((_p = opts.x) !== null && _p !== void 0 ? _p : 0) + left,
y: ((_q = opts.y) !== null && _q !== void 0 ? _q : 0) + top,
width: (_r = opts.width) !== null && _r !== void 0 ? _r : Math.ceil(width),
height: (_s = opts.height) !== null && _s !== void 0 ? _s : Math.ceil(height)
};
if (!foreignObjectRendering)
return [3, 3];
context2.logger.debug("Document cloned, using foreign object rendering");
renderer = new ForeignObjectRenderer(context2, renderOptions);
return [4, renderer.render(clonedElement)];
case 2:
canvas = _u.sent();
return [3, 5];
case 3:
context2.logger.debug("Document cloned, element located at " + left + "," + top + " with size " + width + "x" + height + " using computed rendering");
context2.logger.debug("Starting DOM parsing");
root2 = parseTree(context2, clonedElement);
if (backgroundColor2 === root2.styles.backgroundColor) {
root2.styles.backgroundColor = COLORS.TRANSPARENT;
}
context2.logger.debug("Starting renderer for element at " + renderOptions.x + "," + renderOptions.y + " with size " + renderOptions.width + "x" + renderOptions.height);
renderer = new CanvasRenderer(context2, renderOptions);
return [4, renderer.render(root2)];
case 4:
canvas = _u.sent();
_u.label = 5;
case 5:
if ((_t2 = opts.removeContainer) !== null && _t2 !== void 0 ? _t2 : true) {
if (!DocumentCloner.destroy(container)) {
context2.logger.error("Cannot detach cloned iframe as it is not in the DOM anymore");
}
}
context2.logger.debug("Finished rendering");
return [2, canvas];
}
});
});
};
var parseBackgroundColor = function(context2, element, backgroundColorOverride) {
var ownerDocument = element.ownerDocument;
var documentBackgroundColor = ownerDocument.documentElement ? parseColor(context2, getComputedStyle(ownerDocument.documentElement).backgroundColor) : COLORS.TRANSPARENT;
var bodyBackgroundColor = ownerDocument.body ? parseColor(context2, getComputedStyle(ownerDocument.body).backgroundColor) : COLORS.TRANSPARENT;
var defaultBackgroundColor = typeof backgroundColorOverride === "string" ? parseColor(context2, backgroundColorOverride) : backgroundColorOverride === null ? COLORS.TRANSPARENT : 4294967295;
return element === ownerDocument.documentElement ? isTransparent(documentBackgroundColor) ? isTransparent(bodyBackgroundColor) ? defaultBackgroundColor : bodyBackgroundColor : documentBackgroundColor : defaultBackgroundColor;
};
return html2canvas;
});
}
});
// node_modules/dompurify/dist/purify.js
var require_purify = __commonJS({
"node_modules/dompurify/dist/purify.js"(exports2, module2) {
init_buffer_shim();
(function(global4, factory2) {
typeof exports2 === "object" && typeof module2 !== "undefined" ? module2.exports = factory2() : typeof define === "function" && define.amd ? define(factory2) : (global4 = global4 || self, global4.DOMPurify = factory2());
})(exports2, function() {
"use strict";
function _toConsumableArray(arr) {
if (Array.isArray(arr)) {
for (var i4 = 0, arr2 = Array(arr.length); i4 < arr.length; i4++) {
arr2[i4] = arr[i4];
}
return arr2;
} else {
return Array.from(arr);
}
}
var hasOwnProperty10 = Object.hasOwnProperty, setPrototypeOf3 = Object.setPrototypeOf, isFrozen = Object.isFrozen, getPrototypeOf2 = Object.getPrototypeOf, getOwnPropertyDescriptor3 = Object.getOwnPropertyDescriptor;
var freeze = Object.freeze, seal = Object.seal, create = Object.create;
var _ref = typeof Reflect !== "undefined" && Reflect, apply = _ref.apply, construct2 = _ref.construct;
if (!apply) {
apply = function apply2(fun, thisValue, args) {
return fun.apply(thisValue, args);
};
}
if (!freeze) {
freeze = function freeze2(x3) {
return x3;
};
}
if (!seal) {
seal = function seal2(x3) {
return x3;
};
}
if (!construct2) {
construct2 = function construct3(Func, args) {
return new (Function.prototype.bind.apply(Func, [null].concat(_toConsumableArray(args))))();
};
}
var arrayForEach = unapply(Array.prototype.forEach);
var arrayPop = unapply(Array.prototype.pop);
var arrayPush3 = unapply(Array.prototype.push);
var stringToLowerCase = unapply(String.prototype.toLowerCase);
var stringMatch = unapply(String.prototype.match);
var stringReplace = unapply(String.prototype.replace);
var stringIndexOf = unapply(String.prototype.indexOf);
var stringTrim = unapply(String.prototype.trim);
var regExpTest = unapply(RegExp.prototype.test);
var typeErrorCreate = unconstruct(TypeError);
function unapply(func) {
return function(thisArg) {
for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
args[_key - 1] = arguments[_key];
}
return apply(func, thisArg, args);
};
}
function unconstruct(func) {
return function() {
for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
args[_key2] = arguments[_key2];
}
return construct2(func, args);
};
}
function addToSet(set, array) {
if (setPrototypeOf3) {
setPrototypeOf3(set, null);
}
var l4 = array.length;
while (l4--) {
var element = array[l4];
if (typeof element === "string") {
var lcElement = stringToLowerCase(element);
if (lcElement !== element) {
if (!isFrozen(array)) {
array[l4] = lcElement;
}
element = lcElement;
}
}
set[element] = true;
}
return set;
}
function clone(object) {
var newObject = create(null);
var property2 = void 0;
for (property2 in object) {
if (apply(hasOwnProperty10, object, [property2])) {
newObject[property2] = object[property2];
}
}
return newObject;
}
function lookupGetter(object, prop) {
while (object !== null) {
var desc = getOwnPropertyDescriptor3(object, prop);
if (desc) {
if (desc.get) {
return unapply(desc.get);
}
if (typeof desc.value === "function") {
return unapply(desc.value);
}
}
object = getPrototypeOf2(object);
}
function fallbackValue(element) {
console.warn("fallback value for", element);
return null;
}
return fallbackValue;
}
var html = freeze(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "section", "select", "shadow", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]);
var svg = freeze(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]);
var svgFilters = freeze(["feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDistantLight", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence"]);
var svgDisallowed = freeze(["animate", "color-profile", "cursor", "discard", "fedropshadow", "feimage", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]);
var mathMl = freeze(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover"]);
var mathMlDisallowed = freeze(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]);
var text = freeze(["#text"]);
var html$1 = freeze(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "noshade", "novalidate", "nowrap", "open", "optimum", "pattern", "placeholder", "playsinline", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "xmlns", "slot"]);
var svg$1 = freeze(["accent-height", "accumulate", "additive", "alignment-baseline", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "display", "divisor", "dur", "edgemode", "elevation", "end", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "targetx", "targety", "transform", "text-anchor", "text-decoration", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]);
var mathMl$1 = freeze(["accent", "accentunder", "align", "bevelled", "close", "columnsalign", "columnlines", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lspace", "lquote", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]);
var xml = freeze(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]);
var MUSTACHE_EXPR = seal(/\{\{[\s\S]*|[\s\S]*\}\}/gm);
var ERB_EXPR = seal(/<%[\s\S]*|[\s\S]*%>/gm);
var DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]/);
var ARIA_ATTR = seal(/^aria-[\-\w]+$/);
var IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i);
var IS_SCRIPT_OR_DATA = seal(/^(?:\w+script|data):/i);
var ATTR_WHITESPACE = seal(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g);
var _typeof4 = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function(obj) {
return typeof obj;
} : function(obj) {
return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
};
function _toConsumableArray$1(arr) {
if (Array.isArray(arr)) {
for (var i4 = 0, arr2 = Array(arr.length); i4 < arr.length; i4++) {
arr2[i4] = arr[i4];
}
return arr2;
} else {
return Array.from(arr);
}
}
var getGlobal3 = function getGlobal4() {
return typeof window === "undefined" ? null : window;
};
var _createTrustedTypesPolicy = function _createTrustedTypesPolicy2(trustedTypes, document3) {
if ((typeof trustedTypes === "undefined" ? "undefined" : _typeof4(trustedTypes)) !== "object" || typeof trustedTypes.createPolicy !== "function") {
return null;
}
var suffix = null;
var ATTR_NAME = "data-tt-policy-suffix";
if (document3.currentScript && document3.currentScript.hasAttribute(ATTR_NAME)) {
suffix = document3.currentScript.getAttribute(ATTR_NAME);
}
var policyName = "dompurify" + (suffix ? "#" + suffix : "");
try {
return trustedTypes.createPolicy(policyName, {
createHTML: function createHTML(html$$1) {
return html$$1;
}
});
} catch (_3) {
console.warn("TrustedTypes policy " + policyName + " could not be created.");
return null;
}
};
function createDOMPurify() {
var window2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal3();
var DOMPurify = function DOMPurify2(root2) {
return createDOMPurify(root2);
};
DOMPurify.version = "2.3.3";
DOMPurify.removed = [];
if (!window2 || !window2.document || window2.document.nodeType !== 9) {
DOMPurify.isSupported = false;
return DOMPurify;
}
var originalDocument = window2.document;
var document3 = window2.document;
var DocumentFragment = window2.DocumentFragment, HTMLTemplateElement = window2.HTMLTemplateElement, Node2 = window2.Node, Element2 = window2.Element, NodeFilter = window2.NodeFilter, _window$NamedNodeMap = window2.NamedNodeMap, NamedNodeMap = _window$NamedNodeMap === void 0 ? window2.NamedNodeMap || window2.MozNamedAttrMap : _window$NamedNodeMap, Text = window2.Text, Comment = window2.Comment, DOMParser2 = window2.DOMParser, trustedTypes = window2.trustedTypes;
var ElementPrototype = Element2.prototype;
var cloneNode = lookupGetter(ElementPrototype, "cloneNode");
var getNextSibling = lookupGetter(ElementPrototype, "nextSibling");
var getChildNodes = lookupGetter(ElementPrototype, "childNodes");
var getParentNode = lookupGetter(ElementPrototype, "parentNode");
if (typeof HTMLTemplateElement === "function") {
var template = document3.createElement("template");
if (template.content && template.content.ownerDocument) {
document3 = template.content.ownerDocument;
}
}
var trustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, originalDocument);
var emptyHTML = trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML("") : "";
var _document = document3, implementation = _document.implementation, createNodeIterator = _document.createNodeIterator, createDocumentFragment = _document.createDocumentFragment, getElementsByTagName = _document.getElementsByTagName;
var importNode = originalDocument.importNode;
var documentMode = {};
try {
documentMode = clone(document3).documentMode ? document3.documentMode : {};
} catch (_3) {
}
var hooks = {};
DOMPurify.isSupported = typeof getParentNode === "function" && implementation && typeof implementation.createHTMLDocument !== "undefined" && documentMode !== 9;
var MUSTACHE_EXPR$$1 = MUSTACHE_EXPR, ERB_EXPR$$1 = ERB_EXPR, DATA_ATTR$$1 = DATA_ATTR, ARIA_ATTR$$1 = ARIA_ATTR, IS_SCRIPT_OR_DATA$$1 = IS_SCRIPT_OR_DATA, ATTR_WHITESPACE$$1 = ATTR_WHITESPACE;
var IS_ALLOWED_URI$$1 = IS_ALLOWED_URI;
var ALLOWED_TAGS = null;
var DEFAULT_ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray$1(html), _toConsumableArray$1(svg), _toConsumableArray$1(svgFilters), _toConsumableArray$1(mathMl), _toConsumableArray$1(text)));
var ALLOWED_ATTR = null;
var DEFAULT_ALLOWED_ATTR = addToSet({}, [].concat(_toConsumableArray$1(html$1), _toConsumableArray$1(svg$1), _toConsumableArray$1(mathMl$1), _toConsumableArray$1(xml)));
var FORBID_TAGS = null;
var FORBID_ATTR = null;
var ALLOW_ARIA_ATTR = true;
var ALLOW_DATA_ATTR = true;
var ALLOW_UNKNOWN_PROTOCOLS = false;
var SAFE_FOR_TEMPLATES = false;
var WHOLE_DOCUMENT = false;
var SET_CONFIG = false;
var FORCE_BODY = false;
var RETURN_DOM = false;
var RETURN_DOM_FRAGMENT = false;
var RETURN_DOM_IMPORT = true;
var RETURN_TRUSTED_TYPE = false;
var SANITIZE_DOM = true;
var KEEP_CONTENT = true;
var IN_PLACE = false;
var USE_PROFILES = {};
var FORBID_CONTENTS = null;
var DEFAULT_FORBID_CONTENTS = addToSet({}, ["annotation-xml", "audio", "colgroup", "desc", "foreignobject", "head", "iframe", "math", "mi", "mn", "mo", "ms", "mtext", "noembed", "noframes", "noscript", "plaintext", "script", "style", "svg", "template", "thead", "title", "video", "xmp"]);
var DATA_URI_TAGS = null;
var DEFAULT_DATA_URI_TAGS = addToSet({}, ["audio", "video", "img", "source", "image", "track"]);
var URI_SAFE_ATTRIBUTES = null;
var DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]);
var MATHML_NAMESPACE = "http://www.w3.org/1998/Math/MathML";
var SVG_NAMESPACE = "http://www.w3.org/2000/svg";
var HTML_NAMESPACE = "http://www.w3.org/1999/xhtml";
var NAMESPACE = HTML_NAMESPACE;
var IS_EMPTY_INPUT = false;
var PARSER_MEDIA_TYPE = void 0;
var SUPPORTED_PARSER_MEDIA_TYPES = ["application/xhtml+xml", "text/html"];
var DEFAULT_PARSER_MEDIA_TYPE = "text/html";
var transformCaseFunc = void 0;
var CONFIG = null;
var formElement = document3.createElement("form");
var _parseConfig = function _parseConfig2(cfg) {
if (CONFIG && CONFIG === cfg) {
return;
}
if (!cfg || (typeof cfg === "undefined" ? "undefined" : _typeof4(cfg)) !== "object") {
cfg = {};
}
cfg = clone(cfg);
ALLOWED_TAGS = "ALLOWED_TAGS" in cfg ? addToSet({}, cfg.ALLOWED_TAGS) : DEFAULT_ALLOWED_TAGS;
ALLOWED_ATTR = "ALLOWED_ATTR" in cfg ? addToSet({}, cfg.ALLOWED_ATTR) : DEFAULT_ALLOWED_ATTR;
URI_SAFE_ATTRIBUTES = "ADD_URI_SAFE_ATTR" in cfg ? addToSet(clone(DEFAULT_URI_SAFE_ATTRIBUTES), cfg.ADD_URI_SAFE_ATTR) : DEFAULT_URI_SAFE_ATTRIBUTES;
DATA_URI_TAGS = "ADD_DATA_URI_TAGS" in cfg ? addToSet(clone(DEFAULT_DATA_URI_TAGS), cfg.ADD_DATA_URI_TAGS) : DEFAULT_DATA_URI_TAGS;
FORBID_CONTENTS = "FORBID_CONTENTS" in cfg ? addToSet({}, cfg.FORBID_CONTENTS) : DEFAULT_FORBID_CONTENTS;
FORBID_TAGS = "FORBID_TAGS" in cfg ? addToSet({}, cfg.FORBID_TAGS) : {};
FORBID_ATTR = "FORBID_ATTR" in cfg ? addToSet({}, cfg.FORBID_ATTR) : {};
USE_PROFILES = "USE_PROFILES" in cfg ? cfg.USE_PROFILES : false;
ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false;
ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false;
ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false;
SAFE_FOR_TEMPLATES = cfg.SAFE_FOR_TEMPLATES || false;
WHOLE_DOCUMENT = cfg.WHOLE_DOCUMENT || false;
RETURN_DOM = cfg.RETURN_DOM || false;
RETURN_DOM_FRAGMENT = cfg.RETURN_DOM_FRAGMENT || false;
RETURN_DOM_IMPORT = cfg.RETURN_DOM_IMPORT !== false;
RETURN_TRUSTED_TYPE = cfg.RETURN_TRUSTED_TYPE || false;
FORCE_BODY = cfg.FORCE_BODY || false;
SANITIZE_DOM = cfg.SANITIZE_DOM !== false;
KEEP_CONTENT = cfg.KEEP_CONTENT !== false;
IN_PLACE = cfg.IN_PLACE || false;
IS_ALLOWED_URI$$1 = cfg.ALLOWED_URI_REGEXP || IS_ALLOWED_URI$$1;
NAMESPACE = cfg.NAMESPACE || HTML_NAMESPACE;
PARSER_MEDIA_TYPE = SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? PARSER_MEDIA_TYPE = DEFAULT_PARSER_MEDIA_TYPE : PARSER_MEDIA_TYPE = cfg.PARSER_MEDIA_TYPE;
transformCaseFunc = PARSER_MEDIA_TYPE === "application/xhtml+xml" ? function(x3) {
return x3;
} : stringToLowerCase;
if (SAFE_FOR_TEMPLATES) {
ALLOW_DATA_ATTR = false;
}
if (RETURN_DOM_FRAGMENT) {
RETURN_DOM = true;
}
if (USE_PROFILES) {
ALLOWED_TAGS = addToSet({}, [].concat(_toConsumableArray$1(text)));
ALLOWED_ATTR = [];
if (USE_PROFILES.html === true) {
addToSet(ALLOWED_TAGS, html);
addToSet(ALLOWED_ATTR, html$1);
}
if (USE_PROFILES.svg === true) {
addToSet(ALLOWED_TAGS, svg);
addToSet(ALLOWED_ATTR, svg$1);
addToSet(ALLOWED_ATTR, xml);
}
if (USE_PROFILES.svgFilters === true) {
addToSet(ALLOWED_TAGS, svgFilters);
addToSet(ALLOWED_ATTR, svg$1);
addToSet(ALLOWED_ATTR, xml);
}
if (USE_PROFILES.mathMl === true) {
addToSet(ALLOWED_TAGS, mathMl);
addToSet(ALLOWED_ATTR, mathMl$1);
addToSet(ALLOWED_ATTR, xml);
}
}
if (cfg.ADD_TAGS) {
if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) {
ALLOWED_TAGS = clone(ALLOWED_TAGS);
}
addToSet(ALLOWED_TAGS, cfg.ADD_TAGS);
}
if (cfg.ADD_ATTR) {
if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {
ALLOWED_ATTR = clone(ALLOWED_ATTR);
}
addToSet(ALLOWED_ATTR, cfg.ADD_ATTR);
}
if (cfg.ADD_URI_SAFE_ATTR) {
addToSet(URI_SAFE_ATTRIBUTES, cfg.ADD_URI_SAFE_ATTR);
}
if (cfg.FORBID_CONTENTS) {
if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) {
FORBID_CONTENTS = clone(FORBID_CONTENTS);
}
addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS);
}
if (KEEP_CONTENT) {
ALLOWED_TAGS["#text"] = true;
}
if (WHOLE_DOCUMENT) {
addToSet(ALLOWED_TAGS, ["html", "head", "body"]);
}
if (ALLOWED_TAGS.table) {
addToSet(ALLOWED_TAGS, ["tbody"]);
delete FORBID_TAGS.tbody;
}
if (freeze) {
freeze(cfg);
}
CONFIG = cfg;
};
var MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, ["mi", "mo", "mn", "ms", "mtext"]);
var HTML_INTEGRATION_POINTS = addToSet({}, ["foreignobject", "desc", "title", "annotation-xml"]);
var ALL_SVG_TAGS = addToSet({}, svg);
addToSet(ALL_SVG_TAGS, svgFilters);
addToSet(ALL_SVG_TAGS, svgDisallowed);
var ALL_MATHML_TAGS = addToSet({}, mathMl);
addToSet(ALL_MATHML_TAGS, mathMlDisallowed);
var _checkValidNamespace = function _checkValidNamespace2(element) {
var parent = getParentNode(element);
if (!parent || !parent.tagName) {
parent = {
namespaceURI: HTML_NAMESPACE,
tagName: "template"
};
}
var tagName = stringToLowerCase(element.tagName);
var parentTagName = stringToLowerCase(parent.tagName);
if (element.namespaceURI === SVG_NAMESPACE) {
if (parent.namespaceURI === HTML_NAMESPACE) {
return tagName === "svg";
}
if (parent.namespaceURI === MATHML_NAMESPACE) {
return tagName === "svg" && (parentTagName === "annotation-xml" || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]);
}
return Boolean(ALL_SVG_TAGS[tagName]);
}
if (element.namespaceURI === MATHML_NAMESPACE) {
if (parent.namespaceURI === HTML_NAMESPACE) {
return tagName === "math";
}
if (parent.namespaceURI === SVG_NAMESPACE) {
return tagName === "math" && HTML_INTEGRATION_POINTS[parentTagName];
}
return Boolean(ALL_MATHML_TAGS[tagName]);
}
if (element.namespaceURI === HTML_NAMESPACE) {
if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) {
return false;
}
if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) {
return false;
}
var commonSvgAndHTMLElements = addToSet({}, ["title", "style", "font", "a", "script"]);
return !ALL_MATHML_TAGS[tagName] && (commonSvgAndHTMLElements[tagName] || !ALL_SVG_TAGS[tagName]);
}
return false;
};
var _forceRemove = function _forceRemove2(node2) {
arrayPush3(DOMPurify.removed, { element: node2 });
try {
node2.parentNode.removeChild(node2);
} catch (_3) {
try {
node2.outerHTML = emptyHTML;
} catch (_4) {
node2.remove();
}
}
};
var _removeAttribute = function _removeAttribute2(name2, node2) {
try {
arrayPush3(DOMPurify.removed, {
attribute: node2.getAttributeNode(name2),
from: node2
});
} catch (_3) {
arrayPush3(DOMPurify.removed, {
attribute: null,
from: node2
});
}
node2.removeAttribute(name2);
if (name2 === "is" && !ALLOWED_ATTR[name2]) {
if (RETURN_DOM || RETURN_DOM_FRAGMENT) {
try {
_forceRemove(node2);
} catch (_3) {
}
} else {
try {
node2.setAttribute(name2, "");
} catch (_3) {
}
}
}
};
var _initDocument = function _initDocument2(dirty) {
var doc = void 0;
var leadingWhitespace = void 0;
if (FORCE_BODY) {
dirty = "<remove></remove>" + dirty;
} else {
var matches = stringMatch(dirty, /^[\r\n\t ]+/);
leadingWhitespace = matches && matches[0];
}
if (PARSER_MEDIA_TYPE === "application/xhtml+xml") {
dirty = '<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>' + dirty + "</body></html>";
}
var dirtyPayload = trustedTypesPolicy ? trustedTypesPolicy.createHTML(dirty) : dirty;
if (NAMESPACE === HTML_NAMESPACE) {
try {
doc = new DOMParser2().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE);
} catch (_3) {
}
}
if (!doc || !doc.documentElement) {
doc = implementation.createDocument(NAMESPACE, "template", null);
try {
doc.documentElement.innerHTML = IS_EMPTY_INPUT ? "" : dirtyPayload;
} catch (_3) {
}
}
var body = doc.body || doc.documentElement;
if (dirty && leadingWhitespace) {
body.insertBefore(document3.createTextNode(leadingWhitespace), body.childNodes[0] || null);
}
if (NAMESPACE === HTML_NAMESPACE) {
return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? "html" : "body")[0];
}
return WHOLE_DOCUMENT ? doc.documentElement : body;
};
var _createIterator = function _createIterator2(root2) {
return createNodeIterator.call(root2.ownerDocument || root2, root2, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, null, false);
};
var _isClobbered = function _isClobbered2(elm) {
if (elm instanceof Text || elm instanceof Comment) {
return false;
}
if (typeof elm.nodeName !== "string" || typeof elm.textContent !== "string" || typeof elm.removeChild !== "function" || !(elm.attributes instanceof NamedNodeMap) || typeof elm.removeAttribute !== "function" || typeof elm.setAttribute !== "function" || typeof elm.namespaceURI !== "string" || typeof elm.insertBefore !== "function") {
return true;
}
return false;
};
var _isNode = function _isNode2(object) {
return (typeof Node2 === "undefined" ? "undefined" : _typeof4(Node2)) === "object" ? object instanceof Node2 : object && (typeof object === "undefined" ? "undefined" : _typeof4(object)) === "object" && typeof object.nodeType === "number" && typeof object.nodeName === "string";
};
var _executeHook = function _executeHook2(entryPoint, currentNode, data2) {
if (!hooks[entryPoint]) {
return;
}
arrayForEach(hooks[entryPoint], function(hook) {
hook.call(DOMPurify, currentNode, data2, CONFIG);
});
};
var _sanitizeElements = function _sanitizeElements2(currentNode) {
var content = void 0;
_executeHook("beforeSanitizeElements", currentNode, null);
if (_isClobbered(currentNode)) {
_forceRemove(currentNode);
return true;
}
if (stringMatch(currentNode.nodeName, /[\u0080-\uFFFF]/)) {
_forceRemove(currentNode);
return true;
}
var tagName = transformCaseFunc(currentNode.nodeName);
_executeHook("uponSanitizeElement", currentNode, {
tagName,
allowedTags: ALLOWED_TAGS
});
if (!_isNode(currentNode.firstElementChild) && (!_isNode(currentNode.content) || !_isNode(currentNode.content.firstElementChild)) && regExpTest(/<[/\w]/g, currentNode.innerHTML) && regExpTest(/<[/\w]/g, currentNode.textContent)) {
_forceRemove(currentNode);
return true;
}
if (tagName === "select" && regExpTest(/<template/i, currentNode.innerHTML)) {
_forceRemove(currentNode);
return true;
}
if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {
if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) {
var parentNode = getParentNode(currentNode) || currentNode.parentNode;
var childNodes = getChildNodes(currentNode) || currentNode.childNodes;
if (childNodes && parentNode) {
var childCount = childNodes.length;
for (var i4 = childCount - 1; i4 >= 0; --i4) {
parentNode.insertBefore(cloneNode(childNodes[i4], true), getNextSibling(currentNode));
}
}
}
_forceRemove(currentNode);
return true;
}
if (currentNode instanceof Element2 && !_checkValidNamespace(currentNode)) {
_forceRemove(currentNode);
return true;
}
if ((tagName === "noscript" || tagName === "noembed") && regExpTest(/<\/no(script|embed)/i, currentNode.innerHTML)) {
_forceRemove(currentNode);
return true;
}
if (SAFE_FOR_TEMPLATES && currentNode.nodeType === 3) {
content = currentNode.textContent;
content = stringReplace(content, MUSTACHE_EXPR$$1, " ");
content = stringReplace(content, ERB_EXPR$$1, " ");
if (currentNode.textContent !== content) {
arrayPush3(DOMPurify.removed, { element: currentNode.cloneNode() });
currentNode.textContent = content;
}
}
_executeHook("afterSanitizeElements", currentNode, null);
return false;
};
var _isValidAttribute = function _isValidAttribute2(lcTag, lcName, value) {
if (SANITIZE_DOM && (lcName === "id" || lcName === "name") && (value in document3 || value in formElement)) {
return false;
}
if (ALLOW_DATA_ATTR && !FORBID_ATTR[lcName] && regExpTest(DATA_ATTR$$1, lcName))
;
else if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR$$1, lcName))
;
else if (!ALLOWED_ATTR[lcName] || FORBID_ATTR[lcName]) {
return false;
} else if (URI_SAFE_ATTRIBUTES[lcName])
;
else if (regExpTest(IS_ALLOWED_URI$$1, stringReplace(value, ATTR_WHITESPACE$$1, "")))
;
else if ((lcName === "src" || lcName === "xlink:href" || lcName === "href") && lcTag !== "script" && stringIndexOf(value, "data:") === 0 && DATA_URI_TAGS[lcTag])
;
else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA$$1, stringReplace(value, ATTR_WHITESPACE$$1, "")))
;
else if (!value)
;
else {
return false;
}
return true;
};
var _sanitizeAttributes = function _sanitizeAttributes2(currentNode) {
var attr = void 0;
var value = void 0;
var lcName = void 0;
var l4 = void 0;
_executeHook("beforeSanitizeAttributes", currentNode, null);
var attributes = currentNode.attributes;
if (!attributes) {
return;
}
var hookEvent = {
attrName: "",
attrValue: "",
keepAttr: true,
allowedAttributes: ALLOWED_ATTR
};
l4 = attributes.length;
while (l4--) {
attr = attributes[l4];
var _attr = attr, name2 = _attr.name, namespaceURI = _attr.namespaceURI;
value = stringTrim(attr.value);
lcName = transformCaseFunc(name2);
hookEvent.attrName = lcName;
hookEvent.attrValue = value;
hookEvent.keepAttr = true;
hookEvent.forceKeepAttr = void 0;
_executeHook("uponSanitizeAttribute", currentNode, hookEvent);
value = hookEvent.attrValue;
if (hookEvent.forceKeepAttr) {
continue;
}
_removeAttribute(name2, currentNode);
if (!hookEvent.keepAttr) {
continue;
}
if (regExpTest(/\/>/i, value)) {
_removeAttribute(name2, currentNode);
continue;
}
if (SAFE_FOR_TEMPLATES) {
value = stringReplace(value, MUSTACHE_EXPR$$1, " ");
value = stringReplace(value, ERB_EXPR$$1, " ");
}
var lcTag = transformCaseFunc(currentNode.nodeName);
if (!_isValidAttribute(lcTag, lcName, value)) {
continue;
}
try {
if (namespaceURI) {
currentNode.setAttributeNS(namespaceURI, name2, value);
} else {
currentNode.setAttribute(name2, value);
}
arrayPop(DOMPurify.removed);
} catch (_3) {
}
}
_executeHook("afterSanitizeAttributes", currentNode, null);
};
var _sanitizeShadowDOM = function _sanitizeShadowDOM2(fragment) {
var shadowNode = void 0;
var shadowIterator = _createIterator(fragment);
_executeHook("beforeSanitizeShadowDOM", fragment, null);
while (shadowNode = shadowIterator.nextNode()) {
_executeHook("uponSanitizeShadowNode", shadowNode, null);
if (_sanitizeElements(shadowNode)) {
continue;
}
if (shadowNode.content instanceof DocumentFragment) {
_sanitizeShadowDOM2(shadowNode.content);
}
_sanitizeAttributes(shadowNode);
}
_executeHook("afterSanitizeShadowDOM", fragment, null);
};
DOMPurify.sanitize = function(dirty, cfg) {
var body = void 0;
var importedNode = void 0;
var currentNode = void 0;
var oldNode = void 0;
var returnNode = void 0;
IS_EMPTY_INPUT = !dirty;
if (IS_EMPTY_INPUT) {
dirty = "<!-->";
}
if (typeof dirty !== "string" && !_isNode(dirty)) {
if (typeof dirty.toString !== "function") {
throw typeErrorCreate("toString is not a function");
} else {
dirty = dirty.toString();
if (typeof dirty !== "string") {
throw typeErrorCreate("dirty is not a string, aborting");
}
}
}
if (!DOMPurify.isSupported) {
if (_typeof4(window2.toStaticHTML) === "object" || typeof window2.toStaticHTML === "function") {
if (typeof dirty === "string") {
return window2.toStaticHTML(dirty);
}
if (_isNode(dirty)) {
return window2.toStaticHTML(dirty.outerHTML);
}
}
return dirty;
}
if (!SET_CONFIG) {
_parseConfig(cfg);
}
DOMPurify.removed = [];
if (typeof dirty === "string") {
IN_PLACE = false;
}
if (IN_PLACE)
;
else if (dirty instanceof Node2) {
body = _initDocument("<!---->");
importedNode = body.ownerDocument.importNode(dirty, true);
if (importedNode.nodeType === 1 && importedNode.nodeName === "BODY") {
body = importedNode;
} else if (importedNode.nodeName === "HTML") {
body = importedNode;
} else {
body.appendChild(importedNode);
}
} else {
if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT && dirty.indexOf("<") === -1) {
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty;
}
body = _initDocument(dirty);
if (!body) {
return RETURN_DOM ? null : emptyHTML;
}
}
if (body && FORCE_BODY) {
_forceRemove(body.firstChild);
}
var nodeIterator = _createIterator(IN_PLACE ? dirty : body);
while (currentNode = nodeIterator.nextNode()) {
if (currentNode.nodeType === 3 && currentNode === oldNode) {
continue;
}
if (_sanitizeElements(currentNode)) {
continue;
}
if (currentNode.content instanceof DocumentFragment) {
_sanitizeShadowDOM(currentNode.content);
}
_sanitizeAttributes(currentNode);
oldNode = currentNode;
}
oldNode = null;
if (IN_PLACE) {
return dirty;
}
if (RETURN_DOM) {
if (RETURN_DOM_FRAGMENT) {
returnNode = createDocumentFragment.call(body.ownerDocument);
while (body.firstChild) {
returnNode.appendChild(body.firstChild);
}
} else {
returnNode = body;
}
if (RETURN_DOM_IMPORT) {
returnNode = importNode.call(originalDocument, returnNode, true);
}
return returnNode;
}
var serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML;
if (SAFE_FOR_TEMPLATES) {
serializedHTML = stringReplace(serializedHTML, MUSTACHE_EXPR$$1, " ");
serializedHTML = stringReplace(serializedHTML, ERB_EXPR$$1, " ");
}
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML;
};
DOMPurify.setConfig = function(cfg) {
_parseConfig(cfg);
SET_CONFIG = true;
};
DOMPurify.clearConfig = function() {
CONFIG = null;
SET_CONFIG = false;
};
DOMPurify.isValidAttribute = function(tag, attr, value) {
if (!CONFIG) {
_parseConfig({});
}
var lcTag = transformCaseFunc(tag);
var lcName = transformCaseFunc(attr);
return _isValidAttribute(lcTag, lcName, value);
};
DOMPurify.addHook = function(entryPoint, hookFunction) {
if (typeof hookFunction !== "function") {
return;
}
hooks[entryPoint] = hooks[entryPoint] || [];
arrayPush3(hooks[entryPoint], hookFunction);
};
DOMPurify.removeHook = function(entryPoint) {
if (hooks[entryPoint]) {
arrayPop(hooks[entryPoint]);
}
};
DOMPurify.removeHooks = function(entryPoint) {
if (hooks[entryPoint]) {
hooks[entryPoint] = [];
}
};
DOMPurify.removeAllHooks = function() {
hooks = {};
};
return DOMPurify;
}
var purify = createDOMPurify();
return purify;
});
}
});
// node_modules/core-js/internals/global.js
var require_global = __commonJS({
"node_modules/core-js/internals/global.js"(exports2, module2) {
init_buffer_shim();
var check = function(it2) {
return it2 && it2.Math == Math && it2;
};
module2.exports = check(typeof globalThis == "object" && globalThis) || check(typeof window == "object" && window) || check(typeof self == "object" && self) || check(typeof global == "object" && global) || function() {
return this;
}() || Function("return this")();
}
});
// node_modules/core-js/internals/fails.js
var require_fails = __commonJS({
"node_modules/core-js/internals/fails.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(exec) {
try {
return !!exec();
} catch (error) {
return true;
}
};
}
});
// node_modules/core-js/internals/descriptors.js
var require_descriptors = __commonJS({
"node_modules/core-js/internals/descriptors.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
module2.exports = !fails4(function() {
return Object.defineProperty({}, 1, { get: function() {
return 7;
} })[1] != 7;
});
}
});
// node_modules/core-js/internals/object-property-is-enumerable.js
var require_object_property_is_enumerable = __commonJS({
"node_modules/core-js/internals/object-property-is-enumerable.js"(exports2) {
init_buffer_shim();
"use strict";
var $propertyIsEnumerable = {}.propertyIsEnumerable;
var getOwnPropertyDescriptor3 = Object.getOwnPropertyDescriptor;
var NASHORN_BUG = getOwnPropertyDescriptor3 && !$propertyIsEnumerable.call({ 1: 2 }, 1);
exports2.f = NASHORN_BUG ? function propertyIsEnumerable3(V2) {
var descriptor = getOwnPropertyDescriptor3(this, V2);
return !!descriptor && descriptor.enumerable;
} : $propertyIsEnumerable;
}
});
// node_modules/core-js/internals/create-property-descriptor.js
var require_create_property_descriptor = __commonJS({
"node_modules/core-js/internals/create-property-descriptor.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(bitmap, value) {
return {
enumerable: !(bitmap & 1),
configurable: !(bitmap & 2),
writable: !(bitmap & 4),
value
};
};
}
});
// node_modules/core-js/internals/classof-raw.js
var require_classof_raw = __commonJS({
"node_modules/core-js/internals/classof-raw.js"(exports2, module2) {
init_buffer_shim();
var toString9 = {}.toString;
module2.exports = function(it2) {
return toString9.call(it2).slice(8, -1);
};
}
});
// node_modules/core-js/internals/indexed-object.js
var require_indexed_object = __commonJS({
"node_modules/core-js/internals/indexed-object.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
var classof = require_classof_raw();
var split = "".split;
module2.exports = fails4(function() {
return !Object("z").propertyIsEnumerable(0);
}) ? function(it2) {
return classof(it2) == "String" ? split.call(it2, "") : Object(it2);
} : Object;
}
});
// node_modules/core-js/internals/require-object-coercible.js
var require_require_object_coercible = __commonJS({
"node_modules/core-js/internals/require-object-coercible.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(it2) {
if (it2 == void 0)
throw TypeError("Can't call method on " + it2);
return it2;
};
}
});
// node_modules/core-js/internals/to-indexed-object.js
var require_to_indexed_object = __commonJS({
"node_modules/core-js/internals/to-indexed-object.js"(exports2, module2) {
init_buffer_shim();
var IndexedObject = require_indexed_object();
var requireObjectCoercible7 = require_require_object_coercible();
module2.exports = function(it2) {
return IndexedObject(requireObjectCoercible7(it2));
};
}
});
// node_modules/core-js/internals/is-callable.js
var require_is_callable = __commonJS({
"node_modules/core-js/internals/is-callable.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(argument) {
return typeof argument === "function";
};
}
});
// node_modules/core-js/internals/is-object.js
var require_is_object = __commonJS({
"node_modules/core-js/internals/is-object.js"(exports2, module2) {
init_buffer_shim();
var isCallable3 = require_is_callable();
module2.exports = function(it2) {
return typeof it2 === "object" ? it2 !== null : isCallable3(it2);
};
}
});
// node_modules/core-js/internals/get-built-in.js
var require_get_built_in = __commonJS({
"node_modules/core-js/internals/get-built-in.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var isCallable3 = require_is_callable();
var aFunction = function(argument) {
return isCallable3(argument) ? argument : void 0;
};
module2.exports = function(namespace, method) {
return arguments.length < 2 ? aFunction(global4[namespace]) : global4[namespace] && global4[namespace][method];
};
}
});
// node_modules/core-js/internals/engine-user-agent.js
var require_engine_user_agent = __commonJS({
"node_modules/core-js/internals/engine-user-agent.js"(exports2, module2) {
init_buffer_shim();
var getBuiltIn2 = require_get_built_in();
module2.exports = getBuiltIn2("navigator", "userAgent") || "";
}
});
// node_modules/core-js/internals/engine-v8-version.js
var require_engine_v8_version = __commonJS({
"node_modules/core-js/internals/engine-v8-version.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var userAgent = require_engine_user_agent();
var process3 = global4.process;
var Deno = global4.Deno;
var versions = process3 && process3.versions || Deno && Deno.version;
var v8 = versions && versions.v8;
var match;
var version3;
if (v8) {
match = v8.split(".");
version3 = match[0] < 4 ? 1 : match[0] + match[1];
} else if (userAgent) {
match = userAgent.match(/Edge\/(\d+)/);
if (!match || match[1] >= 74) {
match = userAgent.match(/Chrome\/(\d+)/);
if (match)
version3 = match[1];
}
}
module2.exports = version3 && +version3;
}
});
// node_modules/core-js/internals/native-symbol.js
var require_native_symbol = __commonJS({
"node_modules/core-js/internals/native-symbol.js"(exports2, module2) {
init_buffer_shim();
var V8_VERSION2 = require_engine_v8_version();
var fails4 = require_fails();
module2.exports = !!Object.getOwnPropertySymbols && !fails4(function() {
var symbol = Symbol();
return !String(symbol) || !(Object(symbol) instanceof Symbol) || !Symbol.sham && V8_VERSION2 && V8_VERSION2 < 41;
});
}
});
// node_modules/core-js/internals/use-symbol-as-uid.js
var require_use_symbol_as_uid = __commonJS({
"node_modules/core-js/internals/use-symbol-as-uid.js"(exports2, module2) {
init_buffer_shim();
var NATIVE_SYMBOL = require_native_symbol();
module2.exports = NATIVE_SYMBOL && !Symbol.sham && typeof Symbol.iterator == "symbol";
}
});
// node_modules/core-js/internals/is-symbol.js
var require_is_symbol = __commonJS({
"node_modules/core-js/internals/is-symbol.js"(exports2, module2) {
init_buffer_shim();
var isCallable3 = require_is_callable();
var getBuiltIn2 = require_get_built_in();
var USE_SYMBOL_AS_UID = require_use_symbol_as_uid();
module2.exports = USE_SYMBOL_AS_UID ? function(it2) {
return typeof it2 == "symbol";
} : function(it2) {
var $Symbol = getBuiltIn2("Symbol");
return isCallable3($Symbol) && Object(it2) instanceof $Symbol;
};
}
});
// node_modules/core-js/internals/try-to-string.js
var require_try_to_string = __commonJS({
"node_modules/core-js/internals/try-to-string.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(argument) {
try {
return String(argument);
} catch (error) {
return "Object";
}
};
}
});
// node_modules/core-js/internals/a-callable.js
var require_a_callable = __commonJS({
"node_modules/core-js/internals/a-callable.js"(exports2, module2) {
init_buffer_shim();
var isCallable3 = require_is_callable();
var tryToString = require_try_to_string();
module2.exports = function(argument) {
if (isCallable3(argument))
return argument;
throw TypeError(tryToString(argument) + " is not a function");
};
}
});
// node_modules/core-js/internals/get-method.js
var require_get_method = __commonJS({
"node_modules/core-js/internals/get-method.js"(exports2, module2) {
init_buffer_shim();
var aCallable2 = require_a_callable();
module2.exports = function(V2, P3) {
var func = V2[P3];
return func == null ? void 0 : aCallable2(func);
};
}
});
// node_modules/core-js/internals/ordinary-to-primitive.js
var require_ordinary_to_primitive = __commonJS({
"node_modules/core-js/internals/ordinary-to-primitive.js"(exports2, module2) {
init_buffer_shim();
var isCallable3 = require_is_callable();
var isObject4 = require_is_object();
module2.exports = function(input, pref) {
var fn, val;
if (pref === "string" && isCallable3(fn = input.toString) && !isObject4(val = fn.call(input)))
return val;
if (isCallable3(fn = input.valueOf) && !isObject4(val = fn.call(input)))
return val;
if (pref !== "string" && isCallable3(fn = input.toString) && !isObject4(val = fn.call(input)))
return val;
throw TypeError("Can't convert object to primitive value");
};
}
});
// node_modules/core-js/internals/is-pure.js
var require_is_pure = __commonJS({
"node_modules/core-js/internals/is-pure.js"(exports2, module2) {
init_buffer_shim();
module2.exports = false;
}
});
// node_modules/core-js/internals/set-global.js
var require_set_global = __commonJS({
"node_modules/core-js/internals/set-global.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
module2.exports = function(key, value) {
try {
Object.defineProperty(global4, key, { value, configurable: true, writable: true });
} catch (error) {
global4[key] = value;
}
return value;
};
}
});
// node_modules/core-js/internals/shared-store.js
var require_shared_store = __commonJS({
"node_modules/core-js/internals/shared-store.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var setGlobal = require_set_global();
var SHARED = "__core-js_shared__";
var store = global4[SHARED] || setGlobal(SHARED, {});
module2.exports = store;
}
});
// node_modules/core-js/internals/shared.js
var require_shared = __commonJS({
"node_modules/core-js/internals/shared.js"(exports2, module2) {
init_buffer_shim();
var IS_PURE4 = require_is_pure();
var store = require_shared_store();
(module2.exports = function(key, value) {
return store[key] || (store[key] = value !== void 0 ? value : {});
})("versions", []).push({
version: "3.18.0",
mode: IS_PURE4 ? "pure" : "global",
copyright: "\xA9 2021 Denis Pushkarev (zloirock.ru)"
});
}
});
// node_modules/core-js/internals/to-object.js
var require_to_object = __commonJS({
"node_modules/core-js/internals/to-object.js"(exports2, module2) {
init_buffer_shim();
var requireObjectCoercible7 = require_require_object_coercible();
module2.exports = function(argument) {
return Object(requireObjectCoercible7(argument));
};
}
});
// node_modules/core-js/internals/has.js
var require_has = __commonJS({
"node_modules/core-js/internals/has.js"(exports2, module2) {
init_buffer_shim();
var toObject = require_to_object();
var hasOwnProperty10 = {}.hasOwnProperty;
module2.exports = Object.hasOwn || function hasOwn(it2, key) {
return hasOwnProperty10.call(toObject(it2), key);
};
}
});
// node_modules/core-js/internals/uid.js
var require_uid = __commonJS({
"node_modules/core-js/internals/uid.js"(exports2, module2) {
init_buffer_shim();
var id = 0;
var postfix = Math.random();
module2.exports = function(key) {
return "Symbol(" + String(key === void 0 ? "" : key) + ")_" + (++id + postfix).toString(36);
};
}
});
// node_modules/core-js/internals/well-known-symbol.js
var require_well_known_symbol = __commonJS({
"node_modules/core-js/internals/well-known-symbol.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var shared = require_shared();
var has = require_has();
var uid = require_uid();
var NATIVE_SYMBOL = require_native_symbol();
var USE_SYMBOL_AS_UID = require_use_symbol_as_uid();
var WellKnownSymbolsStore = shared("wks");
var Symbol3 = global4.Symbol;
var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol3 : Symbol3 && Symbol3.withoutSetter || uid;
module2.exports = function(name2) {
if (!has(WellKnownSymbolsStore, name2) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name2] == "string")) {
if (NATIVE_SYMBOL && has(Symbol3, name2)) {
WellKnownSymbolsStore[name2] = Symbol3[name2];
} else {
WellKnownSymbolsStore[name2] = createWellKnownSymbol("Symbol." + name2);
}
}
return WellKnownSymbolsStore[name2];
};
}
});
// node_modules/core-js/internals/to-primitive.js
var require_to_primitive = __commonJS({
"node_modules/core-js/internals/to-primitive.js"(exports2, module2) {
init_buffer_shim();
var isObject4 = require_is_object();
var isSymbol2 = require_is_symbol();
var getMethod4 = require_get_method();
var ordinaryToPrimitive = require_ordinary_to_primitive();
var wellKnownSymbol4 = require_well_known_symbol();
var TO_PRIMITIVE = wellKnownSymbol4("toPrimitive");
module2.exports = function(input, pref) {
if (!isObject4(input) || isSymbol2(input))
return input;
var exoticToPrim = getMethod4(input, TO_PRIMITIVE);
var result;
if (exoticToPrim) {
if (pref === void 0)
pref = "default";
result = exoticToPrim.call(input, pref);
if (!isObject4(result) || isSymbol2(result))
return result;
throw TypeError("Can't convert object to primitive value");
}
if (pref === void 0)
pref = "number";
return ordinaryToPrimitive(input, pref);
};
}
});
// node_modules/core-js/internals/to-property-key.js
var require_to_property_key = __commonJS({
"node_modules/core-js/internals/to-property-key.js"(exports2, module2) {
init_buffer_shim();
var toPrimitive = require_to_primitive();
var isSymbol2 = require_is_symbol();
module2.exports = function(argument) {
var key = toPrimitive(argument, "string");
return isSymbol2(key) ? key : String(key);
};
}
});
// node_modules/core-js/internals/document-create-element.js
var require_document_create_element = __commonJS({
"node_modules/core-js/internals/document-create-element.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var isObject4 = require_is_object();
var document3 = global4.document;
var EXISTS = isObject4(document3) && isObject4(document3.createElement);
module2.exports = function(it2) {
return EXISTS ? document3.createElement(it2) : {};
};
}
});
// node_modules/core-js/internals/ie8-dom-define.js
var require_ie8_dom_define = __commonJS({
"node_modules/core-js/internals/ie8-dom-define.js"(exports2, module2) {
init_buffer_shim();
var DESCRIPTORS = require_descriptors();
var fails4 = require_fails();
var createElement = require_document_create_element();
module2.exports = !DESCRIPTORS && !fails4(function() {
return Object.defineProperty(createElement("div"), "a", {
get: function() {
return 7;
}
}).a != 7;
});
}
});
// node_modules/core-js/internals/object-get-own-property-descriptor.js
var require_object_get_own_property_descriptor = __commonJS({
"node_modules/core-js/internals/object-get-own-property-descriptor.js"(exports2) {
init_buffer_shim();
var DESCRIPTORS = require_descriptors();
var propertyIsEnumerableModule = require_object_property_is_enumerable();
var createPropertyDescriptor = require_create_property_descriptor();
var toIndexedObject = require_to_indexed_object();
var toPropertyKey = require_to_property_key();
var has = require_has();
var IE8_DOM_DEFINE = require_ie8_dom_define();
var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
exports2.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor3(O4, P3) {
O4 = toIndexedObject(O4);
P3 = toPropertyKey(P3);
if (IE8_DOM_DEFINE)
try {
return $getOwnPropertyDescriptor(O4, P3);
} catch (error) {
}
if (has(O4, P3))
return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O4, P3), O4[P3]);
};
}
});
// node_modules/core-js/internals/an-object.js
var require_an_object = __commonJS({
"node_modules/core-js/internals/an-object.js"(exports2, module2) {
init_buffer_shim();
var isObject4 = require_is_object();
module2.exports = function(argument) {
if (isObject4(argument))
return argument;
throw TypeError(String(argument) + " is not an object");
};
}
});
// node_modules/core-js/internals/object-define-property.js
var require_object_define_property = __commonJS({
"node_modules/core-js/internals/object-define-property.js"(exports2) {
init_buffer_shim();
var DESCRIPTORS = require_descriptors();
var IE8_DOM_DEFINE = require_ie8_dom_define();
var anObject5 = require_an_object();
var toPropertyKey = require_to_property_key();
var $defineProperty = Object.defineProperty;
exports2.f = DESCRIPTORS ? $defineProperty : function defineProperty2(O4, P3, Attributes) {
anObject5(O4);
P3 = toPropertyKey(P3);
anObject5(Attributes);
if (IE8_DOM_DEFINE)
try {
return $defineProperty(O4, P3, Attributes);
} catch (error) {
}
if ("get" in Attributes || "set" in Attributes)
throw TypeError("Accessors not supported");
if ("value" in Attributes)
O4[P3] = Attributes.value;
return O4;
};
}
});
// node_modules/core-js/internals/create-non-enumerable-property.js
var require_create_non_enumerable_property = __commonJS({
"node_modules/core-js/internals/create-non-enumerable-property.js"(exports2, module2) {
init_buffer_shim();
var DESCRIPTORS = require_descriptors();
var definePropertyModule = require_object_define_property();
var createPropertyDescriptor = require_create_property_descriptor();
module2.exports = DESCRIPTORS ? function(object, key, value) {
return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
} : function(object, key, value) {
object[key] = value;
return object;
};
}
});
// node_modules/core-js/internals/inspect-source.js
var require_inspect_source = __commonJS({
"node_modules/core-js/internals/inspect-source.js"(exports2, module2) {
init_buffer_shim();
var isCallable3 = require_is_callable();
var store = require_shared_store();
var functionToString = Function.toString;
if (!isCallable3(store.inspectSource)) {
store.inspectSource = function(it2) {
return functionToString.call(it2);
};
}
module2.exports = store.inspectSource;
}
});
// node_modules/core-js/internals/native-weak-map.js
var require_native_weak_map = __commonJS({
"node_modules/core-js/internals/native-weak-map.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var isCallable3 = require_is_callable();
var inspectSource2 = require_inspect_source();
var WeakMap2 = global4.WeakMap;
module2.exports = isCallable3(WeakMap2) && /native code/.test(inspectSource2(WeakMap2));
}
});
// node_modules/core-js/internals/shared-key.js
var require_shared_key = __commonJS({
"node_modules/core-js/internals/shared-key.js"(exports2, module2) {
init_buffer_shim();
var shared = require_shared();
var uid = require_uid();
var keys2 = shared("keys");
module2.exports = function(key) {
return keys2[key] || (keys2[key] = uid(key));
};
}
});
// node_modules/core-js/internals/hidden-keys.js
var require_hidden_keys = __commonJS({
"node_modules/core-js/internals/hidden-keys.js"(exports2, module2) {
init_buffer_shim();
module2.exports = {};
}
});
// node_modules/core-js/internals/internal-state.js
var require_internal_state = __commonJS({
"node_modules/core-js/internals/internal-state.js"(exports2, module2) {
init_buffer_shim();
var NATIVE_WEAK_MAP = require_native_weak_map();
var global4 = require_global();
var isObject4 = require_is_object();
var createNonEnumerableProperty2 = require_create_non_enumerable_property();
var objectHas = require_has();
var shared = require_shared_store();
var sharedKey = require_shared_key();
var hiddenKeys = require_hidden_keys();
var OBJECT_ALREADY_INITIALIZED = "Object already initialized";
var WeakMap2 = global4.WeakMap;
var set;
var get3;
var has;
var enforce = function(it2) {
return has(it2) ? get3(it2) : set(it2, {});
};
var getterFor = function(TYPE) {
return function(it2) {
var state;
if (!isObject4(it2) || (state = get3(it2)).type !== TYPE) {
throw TypeError("Incompatible receiver, " + TYPE + " required");
}
return state;
};
};
if (NATIVE_WEAK_MAP || shared.state) {
store = shared.state || (shared.state = new WeakMap2());
wmget = store.get;
wmhas = store.has;
wmset = store.set;
set = function(it2, metadata) {
if (wmhas.call(store, it2))
throw new TypeError(OBJECT_ALREADY_INITIALIZED);
metadata.facade = it2;
wmset.call(store, it2, metadata);
return metadata;
};
get3 = function(it2) {
return wmget.call(store, it2) || {};
};
has = function(it2) {
return wmhas.call(store, it2);
};
} else {
STATE = sharedKey("state");
hiddenKeys[STATE] = true;
set = function(it2, metadata) {
if (objectHas(it2, STATE))
throw new TypeError(OBJECT_ALREADY_INITIALIZED);
metadata.facade = it2;
createNonEnumerableProperty2(it2, STATE, metadata);
return metadata;
};
get3 = function(it2) {
return objectHas(it2, STATE) ? it2[STATE] : {};
};
has = function(it2) {
return objectHas(it2, STATE);
};
}
var store;
var wmget;
var wmhas;
var wmset;
var STATE;
module2.exports = {
set,
get: get3,
has,
enforce,
getterFor
};
}
});
// node_modules/core-js/internals/function-name.js
var require_function_name = __commonJS({
"node_modules/core-js/internals/function-name.js"(exports2, module2) {
init_buffer_shim();
var DESCRIPTORS = require_descriptors();
var has = require_has();
var FunctionPrototype = Function.prototype;
var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;
var EXISTS = has(FunctionPrototype, "name");
var PROPER = EXISTS && function something() {
}.name === "something";
var CONFIGURABLE = EXISTS && (!DESCRIPTORS || DESCRIPTORS && getDescriptor(FunctionPrototype, "name").configurable);
module2.exports = {
EXISTS,
PROPER,
CONFIGURABLE
};
}
});
// node_modules/core-js/internals/redefine.js
var require_redefine = __commonJS({
"node_modules/core-js/internals/redefine.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var isCallable3 = require_is_callable();
var has = require_has();
var createNonEnumerableProperty2 = require_create_non_enumerable_property();
var setGlobal = require_set_global();
var inspectSource2 = require_inspect_source();
var InternalStateModule2 = require_internal_state();
var CONFIGURABLE_FUNCTION_NAME = require_function_name().CONFIGURABLE;
var getInternalState2 = InternalStateModule2.get;
var enforceInternalState = InternalStateModule2.enforce;
var TEMPLATE = String(String).split("String");
(module2.exports = function(O4, key, value, options) {
var unsafe = options ? !!options.unsafe : false;
var simple = options ? !!options.enumerable : false;
var noTargetGet = options ? !!options.noTargetGet : false;
var name2 = options && options.name !== void 0 ? options.name : key;
var state;
if (isCallable3(value)) {
if (String(name2).slice(0, 7) === "Symbol(") {
name2 = "[" + String(name2).replace(/^Symbol\(([^)]*)\)/, "$1") + "]";
}
if (!has(value, "name") || CONFIGURABLE_FUNCTION_NAME && value.name !== name2) {
createNonEnumerableProperty2(value, "name", name2);
}
state = enforceInternalState(value);
if (!state.source) {
state.source = TEMPLATE.join(typeof name2 == "string" ? name2 : "");
}
}
if (O4 === global4) {
if (simple)
O4[key] = value;
else
setGlobal(key, value);
return;
} else if (!unsafe) {
delete O4[key];
} else if (!noTargetGet && O4[key]) {
simple = true;
}
if (simple)
O4[key] = value;
else
createNonEnumerableProperty2(O4, key, value);
})(Function.prototype, "toString", function toString9() {
return isCallable3(this) && getInternalState2(this).source || inspectSource2(this);
});
}
});
// node_modules/core-js/internals/to-integer.js
var require_to_integer = __commonJS({
"node_modules/core-js/internals/to-integer.js"(exports2, module2) {
init_buffer_shim();
var ceil = Math.ceil;
var floor = Math.floor;
module2.exports = function(argument) {
return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
};
}
});
// node_modules/core-js/internals/to-length.js
var require_to_length = __commonJS({
"node_modules/core-js/internals/to-length.js"(exports2, module2) {
init_buffer_shim();
var toInteger3 = require_to_integer();
var min9 = Math.min;
module2.exports = function(argument) {
return argument > 0 ? min9(toInteger3(argument), 9007199254740991) : 0;
};
}
});
// node_modules/core-js/internals/to-absolute-index.js
var require_to_absolute_index = __commonJS({
"node_modules/core-js/internals/to-absolute-index.js"(exports2, module2) {
init_buffer_shim();
var toInteger3 = require_to_integer();
var max8 = Math.max;
var min9 = Math.min;
module2.exports = function(index3, length) {
var integer = toInteger3(index3);
return integer < 0 ? max8(integer + length, 0) : min9(integer, length);
};
}
});
// node_modules/core-js/internals/array-includes.js
var require_array_includes = __commonJS({
"node_modules/core-js/internals/array-includes.js"(exports2, module2) {
init_buffer_shim();
var toIndexedObject = require_to_indexed_object();
var toLength6 = require_to_length();
var toAbsoluteIndex = require_to_absolute_index();
var createMethod = function(IS_INCLUDES) {
return function($this, el, fromIndex) {
var O4 = toIndexedObject($this);
var length = toLength6(O4.length);
var index3 = toAbsoluteIndex(fromIndex, length);
var value;
if (IS_INCLUDES && el != el)
while (length > index3) {
value = O4[index3++];
if (value != value)
return true;
}
else
for (; length > index3; index3++) {
if ((IS_INCLUDES || index3 in O4) && O4[index3] === el)
return IS_INCLUDES || index3 || 0;
}
return !IS_INCLUDES && -1;
};
};
module2.exports = {
includes: createMethod(true),
indexOf: createMethod(false)
};
}
});
// node_modules/core-js/internals/object-keys-internal.js
var require_object_keys_internal = __commonJS({
"node_modules/core-js/internals/object-keys-internal.js"(exports2, module2) {
init_buffer_shim();
var has = require_has();
var toIndexedObject = require_to_indexed_object();
var indexOf2 = require_array_includes().indexOf;
var hiddenKeys = require_hidden_keys();
module2.exports = function(object, names) {
var O4 = toIndexedObject(object);
var i4 = 0;
var result = [];
var key;
for (key in O4)
!has(hiddenKeys, key) && has(O4, key) && result.push(key);
while (names.length > i4)
if (has(O4, key = names[i4++])) {
~indexOf2(result, key) || result.push(key);
}
return result;
};
}
});
// node_modules/core-js/internals/enum-bug-keys.js
var require_enum_bug_keys = __commonJS({
"node_modules/core-js/internals/enum-bug-keys.js"(exports2, module2) {
init_buffer_shim();
module2.exports = [
"constructor",
"hasOwnProperty",
"isPrototypeOf",
"propertyIsEnumerable",
"toLocaleString",
"toString",
"valueOf"
];
}
});
// node_modules/core-js/internals/object-get-own-property-names.js
var require_object_get_own_property_names = __commonJS({
"node_modules/core-js/internals/object-get-own-property-names.js"(exports2) {
init_buffer_shim();
var internalObjectKeys = require_object_keys_internal();
var enumBugKeys = require_enum_bug_keys();
var hiddenKeys = enumBugKeys.concat("length", "prototype");
exports2.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O4) {
return internalObjectKeys(O4, hiddenKeys);
};
}
});
// node_modules/core-js/internals/object-get-own-property-symbols.js
var require_object_get_own_property_symbols = __commonJS({
"node_modules/core-js/internals/object-get-own-property-symbols.js"(exports2) {
init_buffer_shim();
exports2.f = Object.getOwnPropertySymbols;
}
});
// node_modules/core-js/internals/own-keys.js
var require_own_keys = __commonJS({
"node_modules/core-js/internals/own-keys.js"(exports2, module2) {
init_buffer_shim();
var getBuiltIn2 = require_get_built_in();
var getOwnPropertyNamesModule = require_object_get_own_property_names();
var getOwnPropertySymbolsModule = require_object_get_own_property_symbols();
var anObject5 = require_an_object();
module2.exports = getBuiltIn2("Reflect", "ownKeys") || function ownKeys3(it2) {
var keys2 = getOwnPropertyNamesModule.f(anObject5(it2));
var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
return getOwnPropertySymbols ? keys2.concat(getOwnPropertySymbols(it2)) : keys2;
};
}
});
// node_modules/core-js/internals/copy-constructor-properties.js
var require_copy_constructor_properties = __commonJS({
"node_modules/core-js/internals/copy-constructor-properties.js"(exports2, module2) {
init_buffer_shim();
var has = require_has();
var ownKeys3 = require_own_keys();
var getOwnPropertyDescriptorModule = require_object_get_own_property_descriptor();
var definePropertyModule = require_object_define_property();
module2.exports = function(target, source) {
var keys2 = ownKeys3(source);
var defineProperty2 = definePropertyModule.f;
var getOwnPropertyDescriptor3 = getOwnPropertyDescriptorModule.f;
for (var i4 = 0; i4 < keys2.length; i4++) {
var key = keys2[i4];
if (!has(target, key))
defineProperty2(target, key, getOwnPropertyDescriptor3(source, key));
}
};
}
});
// node_modules/core-js/internals/is-forced.js
var require_is_forced = __commonJS({
"node_modules/core-js/internals/is-forced.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
var isCallable3 = require_is_callable();
var replacement = /#|\.prototype\./;
var isForced2 = function(feature, detection) {
var value = data2[normalize2(feature)];
return value == POLYFILL ? true : value == NATIVE ? false : isCallable3(detection) ? fails4(detection) : !!detection;
};
var normalize2 = isForced2.normalize = function(string) {
return String(string).replace(replacement, ".").toLowerCase();
};
var data2 = isForced2.data = {};
var NATIVE = isForced2.NATIVE = "N";
var POLYFILL = isForced2.POLYFILL = "P";
module2.exports = isForced2;
}
});
// node_modules/core-js/internals/export.js
var require_export = __commonJS({
"node_modules/core-js/internals/export.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var getOwnPropertyDescriptor3 = require_object_get_own_property_descriptor().f;
var createNonEnumerableProperty2 = require_create_non_enumerable_property();
var redefine3 = require_redefine();
var setGlobal = require_set_global();
var copyConstructorProperties = require_copy_constructor_properties();
var isForced2 = require_is_forced();
module2.exports = function(options, source) {
var TARGET = options.target;
var GLOBAL = options.global;
var STATIC = options.stat;
var FORCED2, target, key, targetProperty, sourceProperty, descriptor;
if (GLOBAL) {
target = global4;
} else if (STATIC) {
target = global4[TARGET] || setGlobal(TARGET, {});
} else {
target = (global4[TARGET] || {}).prototype;
}
if (target)
for (key in source) {
sourceProperty = source[key];
if (options.noTargetGet) {
descriptor = getOwnPropertyDescriptor3(target, key);
targetProperty = descriptor && descriptor.value;
} else
targetProperty = target[key];
FORCED2 = isForced2(GLOBAL ? key : TARGET + (STATIC ? "." : "#") + key, options.forced);
if (!FORCED2 && targetProperty !== void 0) {
if (typeof sourceProperty === typeof targetProperty)
continue;
copyConstructorProperties(sourceProperty, targetProperty);
}
if (options.sham || targetProperty && targetProperty.sham) {
createNonEnumerableProperty2(sourceProperty, "sham", true);
}
redefine3(target, key, sourceProperty, options);
}
};
}
});
// node_modules/core-js/internals/native-promise-constructor.js
var require_native_promise_constructor = __commonJS({
"node_modules/core-js/internals/native-promise-constructor.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
module2.exports = global4.Promise;
}
});
// node_modules/core-js/internals/redefine-all.js
var require_redefine_all = __commonJS({
"node_modules/core-js/internals/redefine-all.js"(exports2, module2) {
init_buffer_shim();
var redefine3 = require_redefine();
module2.exports = function(target, src, options) {
for (var key in src)
redefine3(target, key, src[key], options);
return target;
};
}
});
// node_modules/core-js/internals/a-possible-prototype.js
var require_a_possible_prototype = __commonJS({
"node_modules/core-js/internals/a-possible-prototype.js"(exports2, module2) {
init_buffer_shim();
var isCallable3 = require_is_callable();
module2.exports = function(argument) {
if (typeof argument === "object" || isCallable3(argument))
return argument;
throw TypeError("Can't set " + String(argument) + " as a prototype");
};
}
});
// node_modules/core-js/internals/object-set-prototype-of.js
var require_object_set_prototype_of = __commonJS({
"node_modules/core-js/internals/object-set-prototype-of.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var aPossiblePrototype = require_a_possible_prototype();
module2.exports = Object.setPrototypeOf || ("__proto__" in {} ? function() {
var CORRECT_SETTER = false;
var test2 = {};
var setter;
try {
setter = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__").set;
setter.call(test2, []);
CORRECT_SETTER = test2 instanceof Array;
} catch (error) {
}
return function setPrototypeOf3(O4, proto) {
anObject5(O4);
aPossiblePrototype(proto);
if (CORRECT_SETTER)
setter.call(O4, proto);
else
O4.__proto__ = proto;
return O4;
};
}() : void 0);
}
});
// node_modules/core-js/internals/set-to-string-tag.js
var require_set_to_string_tag = __commonJS({
"node_modules/core-js/internals/set-to-string-tag.js"(exports2, module2) {
init_buffer_shim();
var defineProperty2 = require_object_define_property().f;
var has = require_has();
var wellKnownSymbol4 = require_well_known_symbol();
var TO_STRING_TAG2 = wellKnownSymbol4("toStringTag");
module2.exports = function(it2, TAG, STATIC) {
if (it2 && !has(it2 = STATIC ? it2 : it2.prototype, TO_STRING_TAG2)) {
defineProperty2(it2, TO_STRING_TAG2, { configurable: true, value: TAG });
}
};
}
});
// node_modules/core-js/internals/set-species.js
var require_set_species = __commonJS({
"node_modules/core-js/internals/set-species.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var getBuiltIn2 = require_get_built_in();
var definePropertyModule = require_object_define_property();
var wellKnownSymbol4 = require_well_known_symbol();
var DESCRIPTORS = require_descriptors();
var SPECIES2 = wellKnownSymbol4("species");
module2.exports = function(CONSTRUCTOR_NAME) {
var Constructor = getBuiltIn2(CONSTRUCTOR_NAME);
var defineProperty2 = definePropertyModule.f;
if (DESCRIPTORS && Constructor && !Constructor[SPECIES2]) {
defineProperty2(Constructor, SPECIES2, {
configurable: true,
get: function() {
return this;
}
});
}
};
}
});
// node_modules/core-js/internals/an-instance.js
var require_an_instance = __commonJS({
"node_modules/core-js/internals/an-instance.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(it2, Constructor, name2) {
if (it2 instanceof Constructor)
return it2;
throw TypeError("Incorrect " + (name2 ? name2 + " " : "") + "invocation");
};
}
});
// node_modules/core-js/internals/iterators.js
var require_iterators = __commonJS({
"node_modules/core-js/internals/iterators.js"(exports2, module2) {
init_buffer_shim();
module2.exports = {};
}
});
// node_modules/core-js/internals/is-array-iterator-method.js
var require_is_array_iterator_method = __commonJS({
"node_modules/core-js/internals/is-array-iterator-method.js"(exports2, module2) {
init_buffer_shim();
var wellKnownSymbol4 = require_well_known_symbol();
var Iterators = require_iterators();
var ITERATOR2 = wellKnownSymbol4("iterator");
var ArrayPrototype = Array.prototype;
module2.exports = function(it2) {
return it2 !== void 0 && (Iterators.Array === it2 || ArrayPrototype[ITERATOR2] === it2);
};
}
});
// node_modules/core-js/internals/function-bind-context.js
var require_function_bind_context = __commonJS({
"node_modules/core-js/internals/function-bind-context.js"(exports2, module2) {
init_buffer_shim();
var aCallable2 = require_a_callable();
module2.exports = function(fn, that, length) {
aCallable2(fn);
if (that === void 0)
return fn;
switch (length) {
case 0:
return function() {
return fn.call(that);
};
case 1:
return function(a4) {
return fn.call(that, a4);
};
case 2:
return function(a4, b3) {
return fn.call(that, a4, b3);
};
case 3:
return function(a4, b3, c6) {
return fn.call(that, a4, b3, c6);
};
}
return function() {
return fn.apply(that, arguments);
};
};
}
});
// node_modules/core-js/internals/to-string-tag-support.js
var require_to_string_tag_support = __commonJS({
"node_modules/core-js/internals/to-string-tag-support.js"(exports2, module2) {
init_buffer_shim();
var wellKnownSymbol4 = require_well_known_symbol();
var TO_STRING_TAG2 = wellKnownSymbol4("toStringTag");
var test2 = {};
test2[TO_STRING_TAG2] = "z";
module2.exports = String(test2) === "[object z]";
}
});
// node_modules/core-js/internals/classof.js
var require_classof = __commonJS({
"node_modules/core-js/internals/classof.js"(exports2, module2) {
init_buffer_shim();
var TO_STRING_TAG_SUPPORT = require_to_string_tag_support();
var isCallable3 = require_is_callable();
var classofRaw = require_classof_raw();
var wellKnownSymbol4 = require_well_known_symbol();
var TO_STRING_TAG2 = wellKnownSymbol4("toStringTag");
var CORRECT_ARGUMENTS = classofRaw(function() {
return arguments;
}()) == "Arguments";
var tryGet = function(it2, key) {
try {
return it2[key];
} catch (error) {
}
};
module2.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function(it2) {
var O4, tag, result;
return it2 === void 0 ? "Undefined" : it2 === null ? "Null" : typeof (tag = tryGet(O4 = Object(it2), TO_STRING_TAG2)) == "string" ? tag : CORRECT_ARGUMENTS ? classofRaw(O4) : (result = classofRaw(O4)) == "Object" && isCallable3(O4.callee) ? "Arguments" : result;
};
}
});
// node_modules/core-js/internals/get-iterator-method.js
var require_get_iterator_method = __commonJS({
"node_modules/core-js/internals/get-iterator-method.js"(exports2, module2) {
init_buffer_shim();
var classof = require_classof();
var getMethod4 = require_get_method();
var Iterators = require_iterators();
var wellKnownSymbol4 = require_well_known_symbol();
var ITERATOR2 = wellKnownSymbol4("iterator");
module2.exports = function(it2) {
if (it2 != void 0)
return getMethod4(it2, ITERATOR2) || getMethod4(it2, "@@iterator") || Iterators[classof(it2)];
};
}
});
// node_modules/core-js/internals/get-iterator.js
var require_get_iterator = __commonJS({
"node_modules/core-js/internals/get-iterator.js"(exports2, module2) {
init_buffer_shim();
var aCallable2 = require_a_callable();
var anObject5 = require_an_object();
var getIteratorMethod = require_get_iterator_method();
module2.exports = function(argument, usingIterator) {
var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
if (aCallable2(iteratorMethod))
return anObject5(iteratorMethod.call(argument));
throw TypeError(String(argument) + " is not iterable");
};
}
});
// node_modules/core-js/internals/iterator-close.js
var require_iterator_close = __commonJS({
"node_modules/core-js/internals/iterator-close.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var getMethod4 = require_get_method();
module2.exports = function(iterator2, kind, value) {
var innerResult, innerError;
anObject5(iterator2);
try {
innerResult = getMethod4(iterator2, "return");
if (!innerResult) {
if (kind === "throw")
throw value;
return value;
}
innerResult = innerResult.call(iterator2);
} catch (error) {
innerError = true;
innerResult = error;
}
if (kind === "throw")
throw value;
if (innerError)
throw innerResult;
anObject5(innerResult);
return value;
};
}
});
// node_modules/core-js/internals/iterate.js
var require_iterate = __commonJS({
"node_modules/core-js/internals/iterate.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var isArrayIteratorMethod = require_is_array_iterator_method();
var toLength6 = require_to_length();
var bind2 = require_function_bind_context();
var getIterator = require_get_iterator();
var getIteratorMethod = require_get_iterator_method();
var iteratorClose = require_iterator_close();
var Result = function(stopped, result) {
this.stopped = stopped;
this.result = result;
};
module2.exports = function(iterable, unboundFunction, options) {
var that = options && options.that;
var AS_ENTRIES = !!(options && options.AS_ENTRIES);
var IS_ITERATOR = !!(options && options.IS_ITERATOR);
var INTERRUPTED = !!(options && options.INTERRUPTED);
var fn = bind2(unboundFunction, that, 1 + AS_ENTRIES + INTERRUPTED);
var iterator2, iterFn, index3, length, result, next, step;
var stop = function(condition) {
if (iterator2)
iteratorClose(iterator2, "normal", condition);
return new Result(true, condition);
};
var callFn = function(value) {
if (AS_ENTRIES) {
anObject5(value);
return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);
}
return INTERRUPTED ? fn(value, stop) : fn(value);
};
if (IS_ITERATOR) {
iterator2 = iterable;
} else {
iterFn = getIteratorMethod(iterable);
if (!iterFn)
throw TypeError(String(iterable) + " is not iterable");
if (isArrayIteratorMethod(iterFn)) {
for (index3 = 0, length = toLength6(iterable.length); length > index3; index3++) {
result = callFn(iterable[index3]);
if (result && result instanceof Result)
return result;
}
return new Result(false);
}
iterator2 = getIterator(iterable, iterFn);
}
next = iterator2.next;
while (!(step = next.call(iterator2)).done) {
try {
result = callFn(step.value);
} catch (error) {
iteratorClose(iterator2, "throw", error);
}
if (typeof result == "object" && result && result instanceof Result)
return result;
}
return new Result(false);
};
}
});
// node_modules/core-js/internals/check-correctness-of-iteration.js
var require_check_correctness_of_iteration = __commonJS({
"node_modules/core-js/internals/check-correctness-of-iteration.js"(exports2, module2) {
init_buffer_shim();
var wellKnownSymbol4 = require_well_known_symbol();
var ITERATOR2 = wellKnownSymbol4("iterator");
var SAFE_CLOSING = false;
try {
called = 0;
iteratorWithReturn = {
next: function() {
return { done: !!called++ };
},
"return": function() {
SAFE_CLOSING = true;
}
};
iteratorWithReturn[ITERATOR2] = function() {
return this;
};
Array.from(iteratorWithReturn, function() {
throw 2;
});
} catch (error) {
}
var called;
var iteratorWithReturn;
module2.exports = function(exec, SKIP_CLOSING) {
if (!SKIP_CLOSING && !SAFE_CLOSING)
return false;
var ITERATION_SUPPORT = false;
try {
var object = {};
object[ITERATOR2] = function() {
return {
next: function() {
return { done: ITERATION_SUPPORT = true };
}
};
};
exec(object);
} catch (error) {
}
return ITERATION_SUPPORT;
};
}
});
// node_modules/core-js/internals/is-constructor.js
var require_is_constructor = __commonJS({
"node_modules/core-js/internals/is-constructor.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
var isCallable3 = require_is_callable();
var classof = require_classof();
var getBuiltIn2 = require_get_built_in();
var inspectSource2 = require_inspect_source();
var empty2 = [];
var construct2 = getBuiltIn2("Reflect", "construct");
var constructorRegExp = /^\s*(?:class|function)\b/;
var exec = constructorRegExp.exec;
var INCORRECT_TO_STRING = !constructorRegExp.exec(function() {
});
var isConstructorModern = function(argument) {
if (!isCallable3(argument))
return false;
try {
construct2(Object, empty2, argument);
return true;
} catch (error) {
return false;
}
};
var isConstructorLegacy = function(argument) {
if (!isCallable3(argument))
return false;
switch (classof(argument)) {
case "AsyncFunction":
case "GeneratorFunction":
case "AsyncGeneratorFunction":
return false;
}
return INCORRECT_TO_STRING || !!exec.call(constructorRegExp, inspectSource2(argument));
};
module2.exports = !construct2 || fails4(function() {
var called;
return isConstructorModern(isConstructorModern.call) || !isConstructorModern(Object) || !isConstructorModern(function() {
called = true;
}) || called;
}) ? isConstructorLegacy : isConstructorModern;
}
});
// node_modules/core-js/internals/a-constructor.js
var require_a_constructor = __commonJS({
"node_modules/core-js/internals/a-constructor.js"(exports2, module2) {
init_buffer_shim();
var isConstructor = require_is_constructor();
var tryToString = require_try_to_string();
module2.exports = function(argument) {
if (isConstructor(argument))
return argument;
throw TypeError(tryToString(argument) + " is not a constructor");
};
}
});
// node_modules/core-js/internals/species-constructor.js
var require_species_constructor = __commonJS({
"node_modules/core-js/internals/species-constructor.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var aConstructor = require_a_constructor();
var wellKnownSymbol4 = require_well_known_symbol();
var SPECIES2 = wellKnownSymbol4("species");
module2.exports = function(O4, defaultConstructor) {
var C4 = anObject5(O4).constructor;
var S3;
return C4 === void 0 || (S3 = anObject5(C4)[SPECIES2]) == void 0 ? defaultConstructor : aConstructor(S3);
};
}
});
// node_modules/core-js/internals/html.js
var require_html = __commonJS({
"node_modules/core-js/internals/html.js"(exports2, module2) {
init_buffer_shim();
var getBuiltIn2 = require_get_built_in();
module2.exports = getBuiltIn2("document", "documentElement");
}
});
// node_modules/core-js/internals/engine-is-ios.js
var require_engine_is_ios = __commonJS({
"node_modules/core-js/internals/engine-is-ios.js"(exports2, module2) {
init_buffer_shim();
var userAgent = require_engine_user_agent();
module2.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);
}
});
// node_modules/core-js/internals/engine-is-node.js
var require_engine_is_node = __commonJS({
"node_modules/core-js/internals/engine-is-node.js"(exports2, module2) {
init_buffer_shim();
var classof = require_classof_raw();
var global4 = require_global();
module2.exports = classof(global4.process) == "process";
}
});
// node_modules/core-js/internals/task.js
var require_task = __commonJS({
"node_modules/core-js/internals/task.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var isCallable3 = require_is_callable();
var fails4 = require_fails();
var bind2 = require_function_bind_context();
var html = require_html();
var createElement = require_document_create_element();
var IS_IOS = require_engine_is_ios();
var IS_NODE3 = require_engine_is_node();
var set = global4.setImmediate;
var clear = global4.clearImmediate;
var process3 = global4.process;
var MessageChannel = global4.MessageChannel;
var Dispatch = global4.Dispatch;
var counter = 0;
var queue2 = {};
var ONREADYSTATECHANGE = "onreadystatechange";
var location2;
var defer2;
var channel;
var port;
try {
location2 = global4.location;
} catch (error) {
}
var run = function(id) {
if (queue2.hasOwnProperty(id)) {
var fn = queue2[id];
delete queue2[id];
fn();
}
};
var runner = function(id) {
return function() {
run(id);
};
};
var listener = function(event) {
run(event.data);
};
var post = function(id) {
global4.postMessage(String(id), location2.protocol + "//" + location2.host);
};
if (!set || !clear) {
set = function setImmediate(fn) {
var args = [];
var argumentsLength = arguments.length;
var i4 = 1;
while (argumentsLength > i4)
args.push(arguments[i4++]);
queue2[++counter] = function() {
(isCallable3(fn) ? fn : Function(fn)).apply(void 0, args);
};
defer2(counter);
return counter;
};
clear = function clearImmediate(id) {
delete queue2[id];
};
if (IS_NODE3) {
defer2 = function(id) {
process3.nextTick(runner(id));
};
} else if (Dispatch && Dispatch.now) {
defer2 = function(id) {
Dispatch.now(runner(id));
};
} else if (MessageChannel && !IS_IOS) {
channel = new MessageChannel();
port = channel.port2;
channel.port1.onmessage = listener;
defer2 = bind2(port.postMessage, port, 1);
} else if (global4.addEventListener && isCallable3(global4.postMessage) && !global4.importScripts && location2 && location2.protocol !== "file:" && !fails4(post)) {
defer2 = post;
global4.addEventListener("message", listener, false);
} else if (ONREADYSTATECHANGE in createElement("script")) {
defer2 = function(id) {
html.appendChild(createElement("script"))[ONREADYSTATECHANGE] = function() {
html.removeChild(this);
run(id);
};
};
} else {
defer2 = function(id) {
setTimeout(runner(id), 0);
};
}
}
module2.exports = {
set,
clear
};
}
});
// node_modules/core-js/internals/engine-is-ios-pebble.js
var require_engine_is_ios_pebble = __commonJS({
"node_modules/core-js/internals/engine-is-ios-pebble.js"(exports2, module2) {
init_buffer_shim();
var userAgent = require_engine_user_agent();
var global4 = require_global();
module2.exports = /ipad|iphone|ipod/i.test(userAgent) && global4.Pebble !== void 0;
}
});
// node_modules/core-js/internals/engine-is-webos-webkit.js
var require_engine_is_webos_webkit = __commonJS({
"node_modules/core-js/internals/engine-is-webos-webkit.js"(exports2, module2) {
init_buffer_shim();
var userAgent = require_engine_user_agent();
module2.exports = /web0s(?!.*chrome)/i.test(userAgent);
}
});
// node_modules/core-js/internals/microtask.js
var require_microtask = __commonJS({
"node_modules/core-js/internals/microtask.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
var getOwnPropertyDescriptor3 = require_object_get_own_property_descriptor().f;
var macrotask = require_task().set;
var IS_IOS = require_engine_is_ios();
var IS_IOS_PEBBLE = require_engine_is_ios_pebble();
var IS_WEBOS_WEBKIT = require_engine_is_webos_webkit();
var IS_NODE3 = require_engine_is_node();
var MutationObserver2 = global4.MutationObserver || global4.WebKitMutationObserver;
var document3 = global4.document;
var process3 = global4.process;
var Promise3 = global4.Promise;
var queueMicrotaskDescriptor = getOwnPropertyDescriptor3(global4, "queueMicrotask");
var queueMicrotask2 = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;
var flush;
var head;
var last2;
var notify2;
var toggle;
var node2;
var promise;
var then;
if (!queueMicrotask2) {
flush = function() {
var parent, fn;
if (IS_NODE3 && (parent = process3.domain))
parent.exit();
while (head) {
fn = head.fn;
head = head.next;
try {
fn();
} catch (error) {
if (head)
notify2();
else
last2 = void 0;
throw error;
}
}
last2 = void 0;
if (parent)
parent.enter();
};
if (!IS_IOS && !IS_NODE3 && !IS_WEBOS_WEBKIT && MutationObserver2 && document3) {
toggle = true;
node2 = document3.createTextNode("");
new MutationObserver2(flush).observe(node2, { characterData: true });
notify2 = function() {
node2.data = toggle = !toggle;
};
} else if (!IS_IOS_PEBBLE && Promise3 && Promise3.resolve) {
promise = Promise3.resolve(void 0);
promise.constructor = Promise3;
then = promise.then;
notify2 = function() {
then.call(promise, flush);
};
} else if (IS_NODE3) {
notify2 = function() {
process3.nextTick(flush);
};
} else {
notify2 = function() {
macrotask.call(global4, flush);
};
}
}
module2.exports = queueMicrotask2 || function(fn) {
var task2 = { fn, next: void 0 };
if (last2)
last2.next = task2;
if (!head) {
head = task2;
notify2();
}
last2 = task2;
};
}
});
// node_modules/core-js/internals/new-promise-capability.js
var require_new_promise_capability = __commonJS({
"node_modules/core-js/internals/new-promise-capability.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var aCallable2 = require_a_callable();
var PromiseCapability = function(C4) {
var resolve3, reject2;
this.promise = new C4(function($$resolve, $$reject) {
if (resolve3 !== void 0 || reject2 !== void 0)
throw TypeError("Bad Promise constructor");
resolve3 = $$resolve;
reject2 = $$reject;
});
this.resolve = aCallable2(resolve3);
this.reject = aCallable2(reject2);
};
module2.exports.f = function(C4) {
return new PromiseCapability(C4);
};
}
});
// node_modules/core-js/internals/promise-resolve.js
var require_promise_resolve = __commonJS({
"node_modules/core-js/internals/promise-resolve.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var isObject4 = require_is_object();
var newPromiseCapability2 = require_new_promise_capability();
module2.exports = function(C4, x3) {
anObject5(C4);
if (isObject4(x3) && x3.constructor === C4)
return x3;
var promiseCapability = newPromiseCapability2.f(C4);
var resolve3 = promiseCapability.resolve;
resolve3(x3);
return promiseCapability.promise;
};
}
});
// node_modules/core-js/internals/host-report-errors.js
var require_host_report_errors = __commonJS({
"node_modules/core-js/internals/host-report-errors.js"(exports2, module2) {
init_buffer_shim();
var global4 = require_global();
module2.exports = function(a4, b3) {
var console2 = global4.console;
if (console2 && console2.error) {
arguments.length === 1 ? console2.error(a4) : console2.error(a4, b3);
}
};
}
});
// node_modules/core-js/internals/perform.js
var require_perform = __commonJS({
"node_modules/core-js/internals/perform.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(exec) {
try {
return { error: false, value: exec() };
} catch (error) {
return { error: true, value: error };
}
};
}
});
// node_modules/core-js/internals/engine-is-browser.js
var require_engine_is_browser = __commonJS({
"node_modules/core-js/internals/engine-is-browser.js"(exports2, module2) {
init_buffer_shim();
module2.exports = typeof window == "object";
}
});
// node_modules/core-js/modules/es.promise.js
var $, IS_PURE, global2, getBuiltIn, NativePromise, redefine, redefineAll, setPrototypeOf, setToStringTag, setSpecies, aCallable, isCallable, isObject2, anInstance, inspectSource, iterate, checkCorrectnessOfIteration, speciesConstructor, task, microtask, promiseResolve, hostReportErrors, newPromiseCapabilityModule, perform, InternalStateModule, isForced, wellKnownSymbol, IS_BROWSER, IS_NODE, V8_VERSION, SPECIES, PROMISE, getInternalState, setInternalState, getInternalPromiseState, NativePromisePrototype, PromiseConstructor, PromiseConstructorPrototype, TypeError2, document2, process2, newPromiseCapability, newGenericPromiseCapability, DISPATCH_EVENT, NATIVE_REJECTION_EVENT, UNHANDLED_REJECTION, REJECTION_HANDLED, PENDING, FULFILLED, REJECTED, HANDLED, UNHANDLED, SUBCLASSING, Internal, OwnPromiseCapability, PromiseWrapper, nativeThen, FORCED, INCORRECT_ITERATION, isThenable, notify, dispatchEvent, onUnhandled, isUnhandled, onHandleUnhandled, bind, internalReject, internalResolve;
var init_es_promise = __esm({
"node_modules/core-js/modules/es.promise.js"() {
init_buffer_shim();
"use strict";
$ = require_export();
IS_PURE = require_is_pure();
global2 = require_global();
getBuiltIn = require_get_built_in();
NativePromise = require_native_promise_constructor();
redefine = require_redefine();
redefineAll = require_redefine_all();
setPrototypeOf = require_object_set_prototype_of();
setToStringTag = require_set_to_string_tag();
setSpecies = require_set_species();
aCallable = require_a_callable();
isCallable = require_is_callable();
isObject2 = require_is_object();
anInstance = require_an_instance();
inspectSource = require_inspect_source();
iterate = require_iterate();
checkCorrectnessOfIteration = require_check_correctness_of_iteration();
speciesConstructor = require_species_constructor();
task = require_task().set;
microtask = require_microtask();
promiseResolve = require_promise_resolve();
hostReportErrors = require_host_report_errors();
newPromiseCapabilityModule = require_new_promise_capability();
perform = require_perform();
InternalStateModule = require_internal_state();
isForced = require_is_forced();
wellKnownSymbol = require_well_known_symbol();
IS_BROWSER = require_engine_is_browser();
IS_NODE = require_engine_is_node();
V8_VERSION = require_engine_v8_version();
SPECIES = wellKnownSymbol("species");
PROMISE = "Promise";
getInternalState = InternalStateModule.get;
setInternalState = InternalStateModule.set;
getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
NativePromisePrototype = NativePromise && NativePromise.prototype;
PromiseConstructor = NativePromise;
PromiseConstructorPrototype = NativePromisePrototype;
TypeError2 = global2.TypeError;
document2 = global2.document;
process2 = global2.process;
newPromiseCapability = newPromiseCapabilityModule.f;
newGenericPromiseCapability = newPromiseCapability;
DISPATCH_EVENT = !!(document2 && document2.createEvent && global2.dispatchEvent);
NATIVE_REJECTION_EVENT = isCallable(global2.PromiseRejectionEvent);
UNHANDLED_REJECTION = "unhandledrejection";
REJECTION_HANDLED = "rejectionhandled";
PENDING = 0;
FULFILLED = 1;
REJECTED = 2;
HANDLED = 1;
UNHANDLED = 2;
SUBCLASSING = false;
FORCED = isForced(PROMISE, function() {
var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(PromiseConstructor);
var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(PromiseConstructor);
if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66)
return true;
if (IS_PURE && !PromiseConstructorPrototype["finally"])
return true;
if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE))
return false;
var promise = new PromiseConstructor(function(resolve3) {
resolve3(1);
});
var FakePromise = function(exec) {
exec(function() {
}, function() {
});
};
var constructor = promise.constructor = {};
constructor[SPECIES] = FakePromise;
SUBCLASSING = promise.then(function() {
}) instanceof FakePromise;
if (!SUBCLASSING)
return true;
return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_REJECTION_EVENT;
});
INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function(iterable) {
PromiseConstructor.all(iterable)["catch"](function() {
});
});
isThenable = function(it2) {
var then;
return isObject2(it2) && isCallable(then = it2.then) ? then : false;
};
notify = function(state, isReject) {
if (state.notified)
return;
state.notified = true;
var chain = state.reactions;
microtask(function() {
var value = state.value;
var ok = state.state == FULFILLED;
var index3 = 0;
while (chain.length > index3) {
var reaction = chain[index3++];
var handler = ok ? reaction.ok : reaction.fail;
var resolve3 = reaction.resolve;
var reject2 = reaction.reject;
var domain = reaction.domain;
var result, then, exited;
try {
if (handler) {
if (!ok) {
if (state.rejection === UNHANDLED)
onHandleUnhandled(state);
state.rejection = HANDLED;
}
if (handler === true)
result = value;
else {
if (domain)
domain.enter();
result = handler(value);
if (domain) {
domain.exit();
exited = true;
}
}
if (result === reaction.promise) {
reject2(TypeError2("Promise-chain cycle"));
} else if (then = isThenable(result)) {
then.call(result, resolve3, reject2);
} else
resolve3(result);
} else
reject2(value);
} catch (error) {
if (domain && !exited)
domain.exit();
reject2(error);
}
}
state.reactions = [];
state.notified = false;
if (isReject && !state.rejection)
onUnhandled(state);
});
};
dispatchEvent = function(name2, promise, reason) {
var event, handler;
if (DISPATCH_EVENT) {
event = document2.createEvent("Event");
event.promise = promise;
event.reason = reason;
event.initEvent(name2, false, true);
global2.dispatchEvent(event);
} else
event = { promise, reason };
if (!NATIVE_REJECTION_EVENT && (handler = global2["on" + name2]))
handler(event);
else if (name2 === UNHANDLED_REJECTION)
hostReportErrors("Unhandled promise rejection", reason);
};
onUnhandled = function(state) {
task.call(global2, function() {
var promise = state.facade;
var value = state.value;
var IS_UNHANDLED = isUnhandled(state);
var result;
if (IS_UNHANDLED) {
result = perform(function() {
if (IS_NODE) {
process2.emit("unhandledRejection", value, promise);
} else
dispatchEvent(UNHANDLED_REJECTION, promise, value);
});
state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;
if (result.error)
throw result.value;
}
});
};
isUnhandled = function(state) {
return state.rejection !== HANDLED && !state.parent;
};
onHandleUnhandled = function(state) {
task.call(global2, function() {
var promise = state.facade;
if (IS_NODE) {
process2.emit("rejectionHandled", promise);
} else
dispatchEvent(REJECTION_HANDLED, promise, state.value);
});
};
bind = function(fn, state, unwrap) {
return function(value) {
fn(state, value, unwrap);
};
};
internalReject = function(state, value, unwrap) {
if (state.done)
return;
state.done = true;
if (unwrap)
state = unwrap;
state.value = value;
state.state = REJECTED;
notify(state, true);
};
internalResolve = function(state, value, unwrap) {
if (state.done)
return;
state.done = true;
if (unwrap)
state = unwrap;
try {
if (state.facade === value)
throw TypeError2("Promise can't be resolved itself");
var then = isThenable(value);
if (then) {
microtask(function() {
var wrapper = { done: false };
try {
then.call(value, bind(internalResolve, wrapper, state), bind(internalReject, wrapper, state));
} catch (error) {
internalReject(wrapper, error, state);
}
});
} else {
state.value = value;
state.state = FULFILLED;
notify(state, false);
}
} catch (error) {
internalReject({ done: false }, error, state);
}
};
if (FORCED) {
PromiseConstructor = function Promise3(executor) {
anInstance(this, PromiseConstructor, PROMISE);
aCallable(executor);
Internal.call(this);
var state = getInternalState(this);
try {
executor(bind(internalResolve, state), bind(internalReject, state));
} catch (error) {
internalReject(state, error);
}
};
PromiseConstructorPrototype = PromiseConstructor.prototype;
Internal = function Promise3(executor) {
setInternalState(this, {
type: PROMISE,
done: false,
notified: false,
parent: false,
reactions: [],
rejection: false,
state: PENDING,
value: void 0
});
};
Internal.prototype = redefineAll(PromiseConstructorPrototype, {
then: function then(onFulfilled, onRejected) {
var state = getInternalPromiseState(this);
var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));
reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;
reaction.fail = isCallable(onRejected) && onRejected;
reaction.domain = IS_NODE ? process2.domain : void 0;
state.parent = true;
state.reactions.push(reaction);
if (state.state != PENDING)
notify(state, false);
return reaction.promise;
},
"catch": function(onRejected) {
return this.then(void 0, onRejected);
}
});
OwnPromiseCapability = function() {
var promise = new Internal();
var state = getInternalState(promise);
this.promise = promise;
this.resolve = bind(internalResolve, state);
this.reject = bind(internalReject, state);
};
newPromiseCapabilityModule.f = newPromiseCapability = function(C4) {
return C4 === PromiseConstructor || C4 === PromiseWrapper ? new OwnPromiseCapability(C4) : newGenericPromiseCapability(C4);
};
if (!IS_PURE && isCallable(NativePromise) && NativePromisePrototype !== Object.prototype) {
nativeThen = NativePromisePrototype.then;
if (!SUBCLASSING) {
redefine(NativePromisePrototype, "then", function then(onFulfilled, onRejected) {
var that = this;
return new PromiseConstructor(function(resolve3, reject2) {
nativeThen.call(that, resolve3, reject2);
}).then(onFulfilled, onRejected);
}, { unsafe: true });
redefine(NativePromisePrototype, "catch", PromiseConstructorPrototype["catch"], { unsafe: true });
}
try {
delete NativePromisePrototype.constructor;
} catch (error) {
}
if (setPrototypeOf) {
setPrototypeOf(NativePromisePrototype, PromiseConstructorPrototype);
}
}
}
$({ global: true, wrap: true, forced: FORCED }, {
Promise: PromiseConstructor
});
setToStringTag(PromiseConstructor, PROMISE, false, true);
setSpecies(PROMISE);
PromiseWrapper = getBuiltIn(PROMISE);
$({ target: PROMISE, stat: true, forced: FORCED }, {
reject: function reject(r3) {
var capability = newPromiseCapability(this);
capability.reject.call(void 0, r3);
return capability.promise;
}
});
$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {
resolve: function resolve(x3) {
return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x3);
}
});
$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {
all: function all(iterable) {
var C4 = this;
var capability = newPromiseCapability(C4);
var resolve3 = capability.resolve;
var reject2 = capability.reject;
var result = perform(function() {
var $promiseResolve = aCallable(C4.resolve);
var values2 = [];
var counter = 0;
var remaining = 1;
iterate(iterable, function(promise) {
var index3 = counter++;
var alreadyCalled = false;
values2.push(void 0);
remaining++;
$promiseResolve.call(C4, promise).then(function(value) {
if (alreadyCalled)
return;
alreadyCalled = true;
values2[index3] = value;
--remaining || resolve3(values2);
}, reject2);
});
--remaining || resolve3(values2);
});
if (result.error)
reject2(result.value);
return capability.promise;
},
race: function race(iterable) {
var C4 = this;
var capability = newPromiseCapability(C4);
var reject2 = capability.reject;
var result = perform(function() {
var $promiseResolve = aCallable(C4.resolve);
iterate(iterable, function(promise) {
$promiseResolve.call(C4, promise).then(capability.resolve, reject2);
});
});
if (result.error)
reject2(result.value);
return capability.promise;
}
});
}
});
// node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
function asyncGeneratorStep(gen, resolve3, reject2, _next, _throw, key, arg) {
try {
var info = gen[key](arg);
var value = info.value;
} catch (error) {
reject2(error);
return;
}
if (info.done) {
resolve3(value);
} else {
Promise.resolve(value).then(_next, _throw);
}
}
function _asyncToGenerator(fn) {
return function() {
var self2 = this, args = arguments;
return new Promise(function(resolve3, reject2) {
var gen = fn.apply(self2, args);
function _next(value) {
asyncGeneratorStep(gen, resolve3, reject2, _next, _throw, "next", value);
}
function _throw(err2) {
asyncGeneratorStep(gen, resolve3, reject2, _next, _throw, "throw", err2);
}
_next(void 0);
});
};
}
var init_asyncToGenerator = __esm({
"node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js"() {
init_buffer_shim();
}
});
// node_modules/core-js/internals/to-string.js
var require_to_string = __commonJS({
"node_modules/core-js/internals/to-string.js"(exports2, module2) {
init_buffer_shim();
var classof = require_classof();
module2.exports = function(argument) {
if (classof(argument) === "Symbol")
throw TypeError("Cannot convert a Symbol value to a string");
return String(argument);
};
}
});
// node_modules/core-js/internals/regexp-flags.js
var require_regexp_flags = __commonJS({
"node_modules/core-js/internals/regexp-flags.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var anObject5 = require_an_object();
module2.exports = function() {
var that = anObject5(this);
var result = "";
if (that.global)
result += "g";
if (that.ignoreCase)
result += "i";
if (that.multiline)
result += "m";
if (that.dotAll)
result += "s";
if (that.unicode)
result += "u";
if (that.sticky)
result += "y";
return result;
};
}
});
// node_modules/core-js/internals/regexp-sticky-helpers.js
var require_regexp_sticky_helpers = __commonJS({
"node_modules/core-js/internals/regexp-sticky-helpers.js"(exports2) {
init_buffer_shim();
var fails4 = require_fails();
var global4 = require_global();
var $RegExp = global4.RegExp;
exports2.UNSUPPORTED_Y = fails4(function() {
var re4 = $RegExp("a", "y");
re4.lastIndex = 2;
return re4.exec("abcd") != null;
});
exports2.BROKEN_CARET = fails4(function() {
var re4 = $RegExp("^r", "gy");
re4.lastIndex = 2;
return re4.exec("str") != null;
});
}
});
// node_modules/core-js/internals/object-keys.js
var require_object_keys = __commonJS({
"node_modules/core-js/internals/object-keys.js"(exports2, module2) {
init_buffer_shim();
var internalObjectKeys = require_object_keys_internal();
var enumBugKeys = require_enum_bug_keys();
module2.exports = Object.keys || function keys2(O4) {
return internalObjectKeys(O4, enumBugKeys);
};
}
});
// node_modules/core-js/internals/object-define-properties.js
var require_object_define_properties = __commonJS({
"node_modules/core-js/internals/object-define-properties.js"(exports2, module2) {
init_buffer_shim();
var DESCRIPTORS = require_descriptors();
var definePropertyModule = require_object_define_property();
var anObject5 = require_an_object();
var objectKeys = require_object_keys();
module2.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O4, Properties) {
anObject5(O4);
var keys2 = objectKeys(Properties);
var length = keys2.length;
var index3 = 0;
var key;
while (length > index3)
definePropertyModule.f(O4, key = keys2[index3++], Properties[key]);
return O4;
};
}
});
// node_modules/core-js/internals/object-create.js
var require_object_create = __commonJS({
"node_modules/core-js/internals/object-create.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var defineProperties = require_object_define_properties();
var enumBugKeys = require_enum_bug_keys();
var hiddenKeys = require_hidden_keys();
var html = require_html();
var documentCreateElement = require_document_create_element();
var sharedKey = require_shared_key();
var GT = ">";
var LT = "<";
var PROTOTYPE = "prototype";
var SCRIPT = "script";
var IE_PROTO = sharedKey("IE_PROTO");
var EmptyConstructor = function() {
};
var scriptTag = function(content) {
return LT + SCRIPT + GT + content + LT + "/" + SCRIPT + GT;
};
var NullProtoObjectViaActiveX = function(activeXDocument2) {
activeXDocument2.write(scriptTag(""));
activeXDocument2.close();
var temp = activeXDocument2.parentWindow.Object;
activeXDocument2 = null;
return temp;
};
var NullProtoObjectViaIFrame = function() {
var iframe = documentCreateElement("iframe");
var JS = "java" + SCRIPT + ":";
var iframeDocument;
iframe.style.display = "none";
html.appendChild(iframe);
iframe.src = String(JS);
iframeDocument = iframe.contentWindow.document;
iframeDocument.open();
iframeDocument.write(scriptTag("document.F=Object"));
iframeDocument.close();
return iframeDocument.F;
};
var activeXDocument;
var NullProtoObject = function() {
try {
activeXDocument = new ActiveXObject("htmlfile");
} catch (error) {
}
NullProtoObject = typeof document != "undefined" ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument);
var length = enumBugKeys.length;
while (length--)
delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
return NullProtoObject();
};
hiddenKeys[IE_PROTO] = true;
module2.exports = Object.create || function create(O4, Properties) {
var result;
if (O4 !== null) {
EmptyConstructor[PROTOTYPE] = anObject5(O4);
result = new EmptyConstructor();
EmptyConstructor[PROTOTYPE] = null;
result[IE_PROTO] = O4;
} else
result = NullProtoObject();
return Properties === void 0 ? result : defineProperties(result, Properties);
};
}
});
// node_modules/core-js/internals/regexp-unsupported-dot-all.js
var require_regexp_unsupported_dot_all = __commonJS({
"node_modules/core-js/internals/regexp-unsupported-dot-all.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
var global4 = require_global();
var $RegExp = global4.RegExp;
module2.exports = fails4(function() {
var re4 = $RegExp(".", "s");
return !(re4.dotAll && re4.exec("\n") && re4.flags === "s");
});
}
});
// node_modules/core-js/internals/regexp-unsupported-ncg.js
var require_regexp_unsupported_ncg = __commonJS({
"node_modules/core-js/internals/regexp-unsupported-ncg.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
var global4 = require_global();
var $RegExp = global4.RegExp;
module2.exports = fails4(function() {
var re4 = $RegExp("(?<a>b)", "g");
return re4.exec("b").groups.a !== "b" || "b".replace(re4, "$<a>c") !== "bc";
});
}
});
// node_modules/core-js/internals/regexp-exec.js
var require_regexp_exec = __commonJS({
"node_modules/core-js/internals/regexp-exec.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var toString9 = require_to_string();
var regexpFlags = require_regexp_flags();
var stickyHelpers2 = require_regexp_sticky_helpers();
var shared = require_shared();
var create = require_object_create();
var getInternalState2 = require_internal_state().get;
var UNSUPPORTED_DOT_ALL = require_regexp_unsupported_dot_all();
var UNSUPPORTED_NCG = require_regexp_unsupported_ncg();
var nativeExec = RegExp.prototype.exec;
var nativeReplace = shared("native-string-replace", String.prototype.replace);
var patchedExec = nativeExec;
var UPDATES_LAST_INDEX_WRONG = function() {
var re1 = /a/;
var re22 = /b*/g;
nativeExec.call(re1, "a");
nativeExec.call(re22, "a");
return re1.lastIndex !== 0 || re22.lastIndex !== 0;
}();
var UNSUPPORTED_Y2 = stickyHelpers2.UNSUPPORTED_Y || stickyHelpers2.BROKEN_CARET;
var NPCG_INCLUDED = /()??/.exec("")[1] !== void 0;
var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y2 || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;
if (PATCH) {
patchedExec = function exec(string) {
var re4 = this;
var state = getInternalState2(re4);
var str = toString9(string);
var raw = state.raw;
var result, reCopy, lastIndex, match, i4, object, group2;
if (raw) {
raw.lastIndex = re4.lastIndex;
result = patchedExec.call(raw, str);
re4.lastIndex = raw.lastIndex;
return result;
}
var groups2 = state.groups;
var sticky = UNSUPPORTED_Y2 && re4.sticky;
var flags2 = regexpFlags.call(re4);
var source = re4.source;
var charsAdded = 0;
var strCopy = str;
if (sticky) {
flags2 = flags2.replace("y", "");
if (flags2.indexOf("g") === -1) {
flags2 += "g";
}
strCopy = str.slice(re4.lastIndex);
if (re4.lastIndex > 0 && (!re4.multiline || re4.multiline && str.charAt(re4.lastIndex - 1) !== "\n")) {
source = "(?: " + source + ")";
strCopy = " " + strCopy;
charsAdded++;
}
reCopy = new RegExp("^(?:" + source + ")", flags2);
}
if (NPCG_INCLUDED) {
reCopy = new RegExp("^" + source + "$(?!\\s)", flags2);
}
if (UPDATES_LAST_INDEX_WRONG)
lastIndex = re4.lastIndex;
match = nativeExec.call(sticky ? reCopy : re4, strCopy);
if (sticky) {
if (match) {
match.input = match.input.slice(charsAdded);
match[0] = match[0].slice(charsAdded);
match.index = re4.lastIndex;
re4.lastIndex += match[0].length;
} else
re4.lastIndex = 0;
} else if (UPDATES_LAST_INDEX_WRONG && match) {
re4.lastIndex = re4.global ? match.index + match[0].length : lastIndex;
}
if (NPCG_INCLUDED && match && match.length > 1) {
nativeReplace.call(match[0], reCopy, function() {
for (i4 = 1; i4 < arguments.length - 2; i4++) {
if (arguments[i4] === void 0)
match[i4] = void 0;
}
});
}
if (match && groups2) {
match.groups = object = create(null);
for (i4 = 0; i4 < groups2.length; i4++) {
group2 = groups2[i4];
object[group2[0]] = match[group2[1]];
}
}
return match;
};
}
module2.exports = patchedExec;
}
});
// node_modules/core-js/modules/es.regexp.exec.js
var require_es_regexp_exec = __commonJS({
"node_modules/core-js/modules/es.regexp.exec.js"() {
init_buffer_shim();
"use strict";
var $10 = require_export();
var exec = require_regexp_exec();
$10({ target: "RegExp", proto: true, forced: /./.exec !== exec }, {
exec
});
}
});
// node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js
var require_fix_regexp_well_known_symbol_logic = __commonJS({
"node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js"(exports2, module2) {
init_buffer_shim();
"use strict";
require_es_regexp_exec();
var redefine3 = require_redefine();
var regexpExec2 = require_regexp_exec();
var fails4 = require_fails();
var wellKnownSymbol4 = require_well_known_symbol();
var createNonEnumerableProperty2 = require_create_non_enumerable_property();
var SPECIES2 = wellKnownSymbol4("species");
var RegExpPrototype2 = RegExp.prototype;
module2.exports = function(KEY, exec, FORCED2, SHAM) {
var SYMBOL = wellKnownSymbol4(KEY);
var DELEGATES_TO_SYMBOL = !fails4(function() {
var O4 = {};
O4[SYMBOL] = function() {
return 7;
};
return ""[KEY](O4) != 7;
});
var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails4(function() {
var execCalled = false;
var re4 = /a/;
if (KEY === "split") {
re4 = {};
re4.constructor = {};
re4.constructor[SPECIES2] = function() {
return re4;
};
re4.flags = "";
re4[SYMBOL] = /./[SYMBOL];
}
re4.exec = function() {
execCalled = true;
return null;
};
re4[SYMBOL]("");
return !execCalled;
});
if (!DELEGATES_TO_SYMBOL || !DELEGATES_TO_EXEC || FORCED2) {
var nativeRegExpMethod = /./[SYMBOL];
var methods = exec(SYMBOL, ""[KEY], function(nativeMethod, regexp, str, arg2, forceStringMethod) {
var $exec = regexp.exec;
if ($exec === regexpExec2 || $exec === RegExpPrototype2.exec) {
if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
}
return { done: true, value: nativeMethod.call(str, regexp, arg2) };
}
return { done: false };
});
redefine3(String.prototype, KEY, methods[0]);
redefine3(RegExpPrototype2, SYMBOL, methods[1]);
}
if (SHAM)
createNonEnumerableProperty2(RegExpPrototype2[SYMBOL], "sham", true);
};
}
});
// node_modules/core-js/internals/string-multibyte.js
var require_string_multibyte = __commonJS({
"node_modules/core-js/internals/string-multibyte.js"(exports2, module2) {
init_buffer_shim();
var toInteger3 = require_to_integer();
var toString9 = require_to_string();
var requireObjectCoercible7 = require_require_object_coercible();
var createMethod = function(CONVERT_TO_STRING) {
return function($this, pos) {
var S3 = toString9(requireObjectCoercible7($this));
var position = toInteger3(pos);
var size = S3.length;
var first2, second;
if (position < 0 || position >= size)
return CONVERT_TO_STRING ? "" : void 0;
first2 = S3.charCodeAt(position);
return first2 < 55296 || first2 > 56319 || position + 1 === size || (second = S3.charCodeAt(position + 1)) < 56320 || second > 57343 ? CONVERT_TO_STRING ? S3.charAt(position) : first2 : CONVERT_TO_STRING ? S3.slice(position, position + 2) : (first2 - 55296 << 10) + (second - 56320) + 65536;
};
};
module2.exports = {
codeAt: createMethod(false),
charAt: createMethod(true)
};
}
});
// node_modules/core-js/internals/advance-string-index.js
var require_advance_string_index = __commonJS({
"node_modules/core-js/internals/advance-string-index.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var charAt = require_string_multibyte().charAt;
module2.exports = function(S3, index3, unicode) {
return index3 + (unicode ? charAt(S3, index3).length : 1);
};
}
});
// node_modules/core-js/internals/regexp-exec-abstract.js
var require_regexp_exec_abstract = __commonJS({
"node_modules/core-js/internals/regexp-exec-abstract.js"(exports2, module2) {
init_buffer_shim();
var anObject5 = require_an_object();
var isCallable3 = require_is_callable();
var classof = require_classof_raw();
var regexpExec2 = require_regexp_exec();
module2.exports = function(R3, S3) {
var exec = R3.exec;
if (isCallable3(exec)) {
var result = exec.call(R3, S3);
if (result !== null)
anObject5(result);
return result;
}
if (classof(R3) === "RegExp")
return regexpExec2.call(R3, S3);
throw TypeError("RegExp#exec called on incompatible receiver");
};
}
});
// node_modules/core-js/modules/es.string.match.js
var fixRegExpWellKnownSymbolLogic, anObject, toLength, toString2, requireObjectCoercible, getMethod, advanceStringIndex, regExpExec;
var init_es_string_match = __esm({
"node_modules/core-js/modules/es.string.match.js"() {
init_buffer_shim();
"use strict";
fixRegExpWellKnownSymbolLogic = require_fix_regexp_well_known_symbol_logic();
anObject = require_an_object();
toLength = require_to_length();
toString2 = require_to_string();
requireObjectCoercible = require_require_object_coercible();
getMethod = require_get_method();
advanceStringIndex = require_advance_string_index();
regExpExec = require_regexp_exec_abstract();
fixRegExpWellKnownSymbolLogic("match", function(MATCH, nativeMatch, maybeCallNative) {
return [
function match(regexp) {
var O4 = requireObjectCoercible(this);
var matcher = regexp == void 0 ? void 0 : getMethod(regexp, MATCH);
return matcher ? matcher.call(regexp, O4) : new RegExp(regexp)[MATCH](toString2(O4));
},
function(string) {
var rx = anObject(this);
var S3 = toString2(string);
var res = maybeCallNative(nativeMatch, rx, S3);
if (res.done)
return res.value;
if (!rx.global)
return regExpExec(rx, S3);
var fullUnicode = rx.unicode;
rx.lastIndex = 0;
var A4 = [];
var n4 = 0;
var result;
while ((result = regExpExec(rx, S3)) !== null) {
var matchStr = toString2(result[0]);
A4[n4] = matchStr;
if (matchStr === "")
rx.lastIndex = advanceStringIndex(S3, toLength(rx.lastIndex), fullUnicode);
n4++;
}
return n4 === 0 ? null : A4;
}
];
});
}
});
// node_modules/core-js/internals/get-substitution.js
var require_get_substitution = __commonJS({
"node_modules/core-js/internals/get-substitution.js"(exports2, module2) {
init_buffer_shim();
var toObject = require_to_object();
var floor = Math.floor;
var replace = "".replace;
var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
module2.exports = function(matched, str, position, captures, namedCaptures, replacement) {
var tailPos = position + matched.length;
var m5 = captures.length;
var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
if (namedCaptures !== void 0) {
namedCaptures = toObject(namedCaptures);
symbols = SUBSTITUTION_SYMBOLS;
}
return replace.call(replacement, symbols, function(match, ch) {
var capture;
switch (ch.charAt(0)) {
case "$":
return "$";
case "&":
return matched;
case "`":
return str.slice(0, position);
case "'":
return str.slice(tailPos);
case "<":
capture = namedCaptures[ch.slice(1, -1)];
break;
default:
var n4 = +ch;
if (n4 === 0)
return match;
if (n4 > m5) {
var f6 = floor(n4 / 10);
if (f6 === 0)
return match;
if (f6 <= m5)
return captures[f6 - 1] === void 0 ? ch.charAt(1) : captures[f6 - 1] + ch.charAt(1);
return match;
}
capture = captures[n4 - 1];
}
return capture === void 0 ? "" : capture;
});
};
}
});
// node_modules/core-js/modules/es.string.replace.js
var fixRegExpWellKnownSymbolLogic2, fails, anObject2, isCallable2, toInteger2, toLength2, toString3, requireObjectCoercible2, advanceStringIndex2, getMethod2, getSubstitution, regExpExec2, wellKnownSymbol2, REPLACE, max6, min4, maybeToString, REPLACE_KEEPS_$0, REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE, REPLACE_SUPPORTS_NAMED_GROUPS;
var init_es_string_replace = __esm({
"node_modules/core-js/modules/es.string.replace.js"() {
init_buffer_shim();
"use strict";
fixRegExpWellKnownSymbolLogic2 = require_fix_regexp_well_known_symbol_logic();
fails = require_fails();
anObject2 = require_an_object();
isCallable2 = require_is_callable();
toInteger2 = require_to_integer();
toLength2 = require_to_length();
toString3 = require_to_string();
requireObjectCoercible2 = require_require_object_coercible();
advanceStringIndex2 = require_advance_string_index();
getMethod2 = require_get_method();
getSubstitution = require_get_substitution();
regExpExec2 = require_regexp_exec_abstract();
wellKnownSymbol2 = require_well_known_symbol();
REPLACE = wellKnownSymbol2("replace");
max6 = Math.max;
min4 = Math.min;
maybeToString = function(it2) {
return it2 === void 0 ? it2 : String(it2);
};
REPLACE_KEEPS_$0 = function() {
return "a".replace(/./, "$0") === "$0";
}();
REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = function() {
if (/./[REPLACE]) {
return /./[REPLACE]("a", "$0") === "";
}
return false;
}();
REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function() {
var re4 = /./;
re4.exec = function() {
var result = [];
result.groups = { a: "7" };
return result;
};
return "".replace(re4, "$<a>") !== "7";
});
fixRegExpWellKnownSymbolLogic2("replace", function(_3, nativeReplace, maybeCallNative) {
var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? "$" : "$0";
return [
function replace(searchValue, replaceValue) {
var O4 = requireObjectCoercible2(this);
var replacer = searchValue == void 0 ? void 0 : getMethod2(searchValue, REPLACE);
return replacer ? replacer.call(searchValue, O4, replaceValue) : nativeReplace.call(toString3(O4), searchValue, replaceValue);
},
function(string, replaceValue) {
var rx = anObject2(this);
var S3 = toString3(string);
if (typeof replaceValue === "string" && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1 && replaceValue.indexOf("$<") === -1) {
var res = maybeCallNative(nativeReplace, rx, S3, replaceValue);
if (res.done)
return res.value;
}
var functionalReplace = isCallable2(replaceValue);
if (!functionalReplace)
replaceValue = toString3(replaceValue);
var global4 = rx.global;
if (global4) {
var fullUnicode = rx.unicode;
rx.lastIndex = 0;
}
var results = [];
while (true) {
var result = regExpExec2(rx, S3);
if (result === null)
break;
results.push(result);
if (!global4)
break;
var matchStr = toString3(result[0]);
if (matchStr === "")
rx.lastIndex = advanceStringIndex2(S3, toLength2(rx.lastIndex), fullUnicode);
}
var accumulatedResult = "";
var nextSourcePosition = 0;
for (var i4 = 0; i4 < results.length; i4++) {
result = results[i4];
var matched = toString3(result[0]);
var position = max6(min4(toInteger2(result.index), S3.length), 0);
var captures = [];
for (var j2 = 1; j2 < result.length; j2++)
captures.push(maybeToString(result[j2]));
var namedCaptures = result.groups;
if (functionalReplace) {
var replacerArgs = [matched].concat(captures, position, S3);
if (namedCaptures !== void 0)
replacerArgs.push(namedCaptures);
var replacement = toString3(replaceValue.apply(void 0, replacerArgs));
} else {
replacement = getSubstitution(matched, S3, position, captures, namedCaptures, replaceValue);
}
if (position >= nextSourcePosition) {
accumulatedResult += S3.slice(nextSourcePosition, position) + replacement;
nextSourcePosition = position + matched.length;
}
}
return accumulatedResult + S3.slice(nextSourcePosition);
}
];
}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);
}
});
// node_modules/core-js/internals/is-regexp.js
var require_is_regexp = __commonJS({
"node_modules/core-js/internals/is-regexp.js"(exports2, module2) {
init_buffer_shim();
var isObject4 = require_is_object();
var classof = require_classof_raw();
var wellKnownSymbol4 = require_well_known_symbol();
var MATCH = wellKnownSymbol4("match");
module2.exports = function(it2) {
var isRegExp2;
return isObject4(it2) && ((isRegExp2 = it2[MATCH]) !== void 0 ? !!isRegExp2 : classof(it2) == "RegExp");
};
}
});
// node_modules/core-js/internals/not-a-regexp.js
var require_not_a_regexp = __commonJS({
"node_modules/core-js/internals/not-a-regexp.js"(exports2, module2) {
init_buffer_shim();
var isRegExp2 = require_is_regexp();
module2.exports = function(it2) {
if (isRegExp2(it2)) {
throw TypeError("The method doesn't accept regular expressions");
}
return it2;
};
}
});
// node_modules/core-js/internals/correct-is-regexp-logic.js
var require_correct_is_regexp_logic = __commonJS({
"node_modules/core-js/internals/correct-is-regexp-logic.js"(exports2, module2) {
init_buffer_shim();
var wellKnownSymbol4 = require_well_known_symbol();
var MATCH = wellKnownSymbol4("match");
module2.exports = function(METHOD_NAME) {
var regexp = /./;
try {
"/./"[METHOD_NAME](regexp);
} catch (error1) {
try {
regexp[MATCH] = false;
return "/./"[METHOD_NAME](regexp);
} catch (error2) {
}
}
return false;
};
}
});
// node_modules/core-js/modules/es.string.starts-with.js
var $2, getOwnPropertyDescriptor, toLength3, toString4, notARegExp, requireObjectCoercible3, correctIsRegExpLogic, IS_PURE2, $startsWith, min5, CORRECT_IS_REGEXP_LOGIC, MDN_POLYFILL_BUG;
var init_es_string_starts_with = __esm({
"node_modules/core-js/modules/es.string.starts-with.js"() {
init_buffer_shim();
"use strict";
$2 = require_export();
getOwnPropertyDescriptor = require_object_get_own_property_descriptor().f;
toLength3 = require_to_length();
toString4 = require_to_string();
notARegExp = require_not_a_regexp();
requireObjectCoercible3 = require_require_object_coercible();
correctIsRegExpLogic = require_correct_is_regexp_logic();
IS_PURE2 = require_is_pure();
$startsWith = "".startsWith;
min5 = Math.min;
CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic("startsWith");
MDN_POLYFILL_BUG = !IS_PURE2 && !CORRECT_IS_REGEXP_LOGIC && !!function() {
var descriptor = getOwnPropertyDescriptor(String.prototype, "startsWith");
return descriptor && !descriptor.writable;
}();
$2({ target: "String", proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {
startsWith: function startsWith(searchString) {
var that = toString4(requireObjectCoercible3(this));
notARegExp(searchString);
var index3 = toLength3(min5(arguments.length > 1 ? arguments[1] : void 0, that.length));
var search = toString4(searchString);
return $startsWith ? $startsWith.call(that, search, index3) : that.slice(index3, index3 + search.length) === search;
}
});
}
});
// node_modules/core-js/internals/add-to-unscopables.js
var require_add_to_unscopables = __commonJS({
"node_modules/core-js/internals/add-to-unscopables.js"(exports2, module2) {
init_buffer_shim();
var wellKnownSymbol4 = require_well_known_symbol();
var create = require_object_create();
var definePropertyModule = require_object_define_property();
var UNSCOPABLES = wellKnownSymbol4("unscopables");
var ArrayPrototype = Array.prototype;
if (ArrayPrototype[UNSCOPABLES] == void 0) {
definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
configurable: true,
value: create(null)
});
}
module2.exports = function(key) {
ArrayPrototype[UNSCOPABLES][key] = true;
};
}
});
// node_modules/core-js/internals/correct-prototype-getter.js
var require_correct_prototype_getter = __commonJS({
"node_modules/core-js/internals/correct-prototype-getter.js"(exports2, module2) {
init_buffer_shim();
var fails4 = require_fails();
module2.exports = !fails4(function() {
function F3() {
}
F3.prototype.constructor = null;
return Object.getPrototypeOf(new F3()) !== F3.prototype;
});
}
});
// node_modules/core-js/internals/object-get-prototype-of.js
var require_object_get_prototype_of = __commonJS({
"node_modules/core-js/internals/object-get-prototype-of.js"(exports2, module2) {
init_buffer_shim();
var has = require_has();
var isCallable3 = require_is_callable();
var toObject = require_to_object();
var sharedKey = require_shared_key();
var CORRECT_PROTOTYPE_GETTER = require_correct_prototype_getter();
var IE_PROTO = sharedKey("IE_PROTO");
var ObjectPrototype = Object.prototype;
module2.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function(O4) {
var object = toObject(O4);
if (has(object, IE_PROTO))
return object[IE_PROTO];
var constructor = object.constructor;
if (isCallable3(constructor) && object instanceof constructor) {
return constructor.prototype;
}
return object instanceof Object ? ObjectPrototype : null;
};
}
});
// node_modules/core-js/internals/iterators-core.js
var require_iterators_core = __commonJS({
"node_modules/core-js/internals/iterators-core.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var fails4 = require_fails();
var isCallable3 = require_is_callable();
var create = require_object_create();
var getPrototypeOf2 = require_object_get_prototype_of();
var redefine3 = require_redefine();
var wellKnownSymbol4 = require_well_known_symbol();
var IS_PURE4 = require_is_pure();
var ITERATOR2 = wellKnownSymbol4("iterator");
var BUGGY_SAFARI_ITERATORS = false;
var IteratorPrototype;
var PrototypeOfArrayIteratorPrototype;
var arrayIterator;
if ([].keys) {
arrayIterator = [].keys();
if (!("next" in arrayIterator))
BUGGY_SAFARI_ITERATORS = true;
else {
PrototypeOfArrayIteratorPrototype = getPrototypeOf2(getPrototypeOf2(arrayIterator));
if (PrototypeOfArrayIteratorPrototype !== Object.prototype)
IteratorPrototype = PrototypeOfArrayIteratorPrototype;
}
}
var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == void 0 || fails4(function() {
var test2 = {};
return IteratorPrototype[ITERATOR2].call(test2) !== test2;
});
if (NEW_ITERATOR_PROTOTYPE)
IteratorPrototype = {};
else if (IS_PURE4)
IteratorPrototype = create(IteratorPrototype);
if (!isCallable3(IteratorPrototype[ITERATOR2])) {
redefine3(IteratorPrototype, ITERATOR2, function() {
return this;
});
}
module2.exports = {
IteratorPrototype,
BUGGY_SAFARI_ITERATORS
};
}
});
// node_modules/core-js/internals/create-iterator-constructor.js
var require_create_iterator_constructor = __commonJS({
"node_modules/core-js/internals/create-iterator-constructor.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var IteratorPrototype = require_iterators_core().IteratorPrototype;
var create = require_object_create();
var createPropertyDescriptor = require_create_property_descriptor();
var setToStringTag2 = require_set_to_string_tag();
var Iterators = require_iterators();
var returnThis = function() {
return this;
};
module2.exports = function(IteratorConstructor, NAME, next) {
var TO_STRING_TAG2 = NAME + " Iterator";
IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
setToStringTag2(IteratorConstructor, TO_STRING_TAG2, false, true);
Iterators[TO_STRING_TAG2] = returnThis;
return IteratorConstructor;
};
}
});
// node_modules/core-js/internals/define-iterator.js
var require_define_iterator = __commonJS({
"node_modules/core-js/internals/define-iterator.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var $10 = require_export();
var IS_PURE4 = require_is_pure();
var FunctionName = require_function_name();
var isCallable3 = require_is_callable();
var createIteratorConstructor = require_create_iterator_constructor();
var getPrototypeOf2 = require_object_get_prototype_of();
var setPrototypeOf3 = require_object_set_prototype_of();
var setToStringTag2 = require_set_to_string_tag();
var createNonEnumerableProperty2 = require_create_non_enumerable_property();
var redefine3 = require_redefine();
var wellKnownSymbol4 = require_well_known_symbol();
var Iterators = require_iterators();
var IteratorsCore = require_iterators_core();
var PROPER_FUNCTION_NAME2 = FunctionName.PROPER;
var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
var IteratorPrototype = IteratorsCore.IteratorPrototype;
var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
var ITERATOR2 = wellKnownSymbol4("iterator");
var KEYS = "keys";
var VALUES = "values";
var ENTRIES = "entries";
var returnThis = function() {
return this;
};
module2.exports = function(Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED2) {
createIteratorConstructor(IteratorConstructor, NAME, next);
var getIterationMethod = function(KIND) {
if (KIND === DEFAULT && defaultIterator)
return defaultIterator;
if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype)
return IterablePrototype[KIND];
switch (KIND) {
case KEYS:
return function keys2() {
return new IteratorConstructor(this, KIND);
};
case VALUES:
return function values2() {
return new IteratorConstructor(this, KIND);
};
case ENTRIES:
return function entries() {
return new IteratorConstructor(this, KIND);
};
}
return function() {
return new IteratorConstructor(this);
};
};
var TO_STRING_TAG2 = NAME + " Iterator";
var INCORRECT_VALUES_NAME = false;
var IterablePrototype = Iterable.prototype;
var nativeIterator = IterablePrototype[ITERATOR2] || IterablePrototype["@@iterator"] || DEFAULT && IterablePrototype[DEFAULT];
var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
var anyNativeIterator = NAME == "Array" ? IterablePrototype.entries || nativeIterator : nativeIterator;
var CurrentIteratorPrototype, methods, KEY;
if (anyNativeIterator) {
CurrentIteratorPrototype = getPrototypeOf2(anyNativeIterator.call(new Iterable()));
if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
if (!IS_PURE4 && getPrototypeOf2(CurrentIteratorPrototype) !== IteratorPrototype) {
if (setPrototypeOf3) {
setPrototypeOf3(CurrentIteratorPrototype, IteratorPrototype);
} else if (!isCallable3(CurrentIteratorPrototype[ITERATOR2])) {
redefine3(CurrentIteratorPrototype, ITERATOR2, returnThis);
}
}
setToStringTag2(CurrentIteratorPrototype, TO_STRING_TAG2, true, true);
if (IS_PURE4)
Iterators[TO_STRING_TAG2] = returnThis;
}
}
if (PROPER_FUNCTION_NAME2 && DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
if (!IS_PURE4 && CONFIGURABLE_FUNCTION_NAME) {
createNonEnumerableProperty2(IterablePrototype, "name", VALUES);
} else {
INCORRECT_VALUES_NAME = true;
defaultIterator = function values2() {
return nativeIterator.call(this);
};
}
}
if (DEFAULT) {
methods = {
values: getIterationMethod(VALUES),
keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
entries: getIterationMethod(ENTRIES)
};
if (FORCED2)
for (KEY in methods) {
if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
redefine3(IterablePrototype, KEY, methods[KEY]);
}
}
else
$10({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
}
if ((!IS_PURE4 || FORCED2) && IterablePrototype[ITERATOR2] !== defaultIterator) {
redefine3(IterablePrototype, ITERATOR2, defaultIterator, { name: DEFAULT });
}
Iterators[NAME] = defaultIterator;
return methods;
};
}
});
// node_modules/core-js/modules/es.array.iterator.js
var require_es_array_iterator = __commonJS({
"node_modules/core-js/modules/es.array.iterator.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var toIndexedObject = require_to_indexed_object();
var addToUnscopables = require_add_to_unscopables();
var Iterators = require_iterators();
var InternalStateModule2 = require_internal_state();
var defineIterator = require_define_iterator();
var ARRAY_ITERATOR = "Array Iterator";
var setInternalState2 = InternalStateModule2.set;
var getInternalState2 = InternalStateModule2.getterFor(ARRAY_ITERATOR);
module2.exports = defineIterator(Array, "Array", function(iterated, kind) {
setInternalState2(this, {
type: ARRAY_ITERATOR,
target: toIndexedObject(iterated),
index: 0,
kind
});
}, function() {
var state = getInternalState2(this);
var target = state.target;
var kind = state.kind;
var index3 = state.index++;
if (!target || index3 >= target.length) {
state.target = void 0;
return { value: void 0, done: true };
}
if (kind == "keys")
return { value: index3, done: false };
if (kind == "values")
return { value: target[index3], done: false };
return { value: [index3, target[index3]], done: false };
}, "values");
Iterators.Arguments = Iterators.Array;
addToUnscopables("keys");
addToUnscopables("values");
addToUnscopables("entries");
}
});
// node_modules/core-js/internals/dom-iterables.js
var require_dom_iterables = __commonJS({
"node_modules/core-js/internals/dom-iterables.js"(exports2, module2) {
init_buffer_shim();
module2.exports = {
CSSRuleList: 0,
CSSStyleDeclaration: 0,
CSSValueList: 0,
ClientRectList: 0,
DOMRectList: 0,
DOMStringList: 0,
DOMTokenList: 1,
DataTransferItemList: 0,
FileList: 0,
HTMLAllCollection: 0,
HTMLCollection: 0,
HTMLFormElement: 0,
HTMLSelectElement: 0,
MediaList: 0,
MimeTypeArray: 0,
NamedNodeMap: 0,
NodeList: 1,
PaintRequestList: 0,
Plugin: 0,
PluginArray: 0,
SVGLengthList: 0,
SVGNumberList: 0,
SVGPathSegList: 0,
SVGPointList: 0,
SVGStringList: 0,
SVGTransformList: 0,
SourceBufferList: 0,
StyleSheetList: 0,
TextTrackCueList: 0,
TextTrackList: 0,
TouchList: 0
};
}
});
// node_modules/core-js/internals/dom-token-list-prototype.js
var require_dom_token_list_prototype = __commonJS({
"node_modules/core-js/internals/dom-token-list-prototype.js"(exports2, module2) {
init_buffer_shim();
var documentCreateElement = require_document_create_element();
var classList = documentCreateElement("span").classList;
var DOMTokenListPrototype2 = classList && classList.constructor && classList.constructor.prototype;
module2.exports = DOMTokenListPrototype2 === Object.prototype ? void 0 : DOMTokenListPrototype2;
}
});
// node_modules/core-js/modules/web.dom-collections.iterator.js
var global3, DOMIterables, DOMTokenListPrototype, ArrayIteratorMethods, createNonEnumerableProperty, wellKnownSymbol3, ITERATOR, TO_STRING_TAG, ArrayValues, handlePrototype, COLLECTION_NAME;
var init_web_dom_collections_iterator = __esm({
"node_modules/core-js/modules/web.dom-collections.iterator.js"() {
init_buffer_shim();
global3 = require_global();
DOMIterables = require_dom_iterables();
DOMTokenListPrototype = require_dom_token_list_prototype();
ArrayIteratorMethods = require_es_array_iterator();
createNonEnumerableProperty = require_create_non_enumerable_property();
wellKnownSymbol3 = require_well_known_symbol();
ITERATOR = wellKnownSymbol3("iterator");
TO_STRING_TAG = wellKnownSymbol3("toStringTag");
ArrayValues = ArrayIteratorMethods.values;
handlePrototype = function(CollectionPrototype, COLLECTION_NAME) {
if (CollectionPrototype) {
if (CollectionPrototype[ITERATOR] !== ArrayValues)
try {
createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
} catch (error) {
CollectionPrototype[ITERATOR] = ArrayValues;
}
if (!CollectionPrototype[TO_STRING_TAG]) {
createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
}
if (DOMIterables[COLLECTION_NAME])
for (var METHOD_NAME in ArrayIteratorMethods) {
if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME])
try {
createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
} catch (error) {
CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
}
}
}
};
for (COLLECTION_NAME in DOMIterables) {
handlePrototype(global3[COLLECTION_NAME] && global3[COLLECTION_NAME].prototype, COLLECTION_NAME);
}
handlePrototype(DOMTokenListPrototype, "DOMTokenList");
}
});
// node_modules/@babel/runtime/helpers/esm/defineProperty.js
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
var init_defineProperty = __esm({
"node_modules/@babel/runtime/helpers/esm/defineProperty.js"() {
init_buffer_shim();
}
});
// node_modules/core-js/internals/array-reduce.js
var require_array_reduce = __commonJS({
"node_modules/core-js/internals/array-reduce.js"(exports2, module2) {
init_buffer_shim();
var aCallable2 = require_a_callable();
var toObject = require_to_object();
var IndexedObject = require_indexed_object();
var toLength6 = require_to_length();
var createMethod = function(IS_RIGHT) {
return function(that, callbackfn, argumentsLength, memo) {
aCallable2(callbackfn);
var O4 = toObject(that);
var self2 = IndexedObject(O4);
var length = toLength6(O4.length);
var index3 = IS_RIGHT ? length - 1 : 0;
var i4 = IS_RIGHT ? -1 : 1;
if (argumentsLength < 2)
while (true) {
if (index3 in self2) {
memo = self2[index3];
index3 += i4;
break;
}
index3 += i4;
if (IS_RIGHT ? index3 < 0 : length <= index3) {
throw TypeError("Reduce of empty array with no initial value");
}
}
for (; IS_RIGHT ? index3 >= 0 : length > index3; index3 += i4)
if (index3 in self2) {
memo = callbackfn(memo, self2[index3], index3, O4);
}
return memo;
};
};
module2.exports = {
left: createMethod(false),
right: createMethod(true)
};
}
});
// node_modules/core-js/internals/array-method-is-strict.js
var require_array_method_is_strict = __commonJS({
"node_modules/core-js/internals/array-method-is-strict.js"(exports2, module2) {
init_buffer_shim();
"use strict";
var fails4 = require_fails();
module2.exports = function(METHOD_NAME, argument) {
var method = [][METHOD_NAME];
return !!method && fails4(function() {
method.call(null, argument || function() {
throw 1;
}, 1);
});
};
}
});
// node_modules/core-js/modules/es.array.reduce.js
var $3, $reduce, arrayMethodIsStrict, CHROME_VERSION, IS_NODE2, STRICT_METHOD, CHROME_BUG;
var init_es_array_reduce = __esm({
"node_modules/core-js/modules/es.array.reduce.js"() {
init_buffer_shim();
"use strict";
$3 = require_export();
$reduce = require_array_reduce().left;
arrayMethodIsStrict = require_array_method_is_strict();
CHROME_VERSION = require_engine_v8_version();
IS_NODE2 = require_engine_is_node();
STRICT_METHOD = arrayMethodIsStrict("reduce");
CHROME_BUG = !IS_NODE2 && CHROME_VERSION > 79 && CHROME_VERSION < 83;
$3({ target: "Array", proto: true, forced: !STRICT_METHOD || CHROME_BUG }, {
reduce: function reduce(callbackfn) {
return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : void 0);
}
});
}
});
// node_modules/core-js/modules/es.string.ends-with.js
var $4, getOwnPropertyDescriptor2, toLength4, toString5, notARegExp2, requireObjectCoercible4, correctIsRegExpLogic2, IS_PURE3, $endsWith, min6, CORRECT_IS_REGEXP_LOGIC2, MDN_POLYFILL_BUG2;
var init_es_string_ends_with = __esm({
"node_modules/core-js/modules/es.string.ends-with.js"() {
init_buffer_shim();
"use strict";
$4 = require_export();
getOwnPropertyDescriptor2 = require_object_get_own_property_descriptor().f;
toLength4 = require_to_length();
toString5 = require_to_string();
notARegExp2 = require_not_a_regexp();
requireObjectCoercible4 = require_require_object_coercible();
correctIsRegExpLogic2 = require_correct_is_regexp_logic();
IS_PURE3 = require_is_pure();
$endsWith = "".endsWith;
min6 = Math.min;
CORRECT_IS_REGEXP_LOGIC2 = correctIsRegExpLogic2("endsWith");
MDN_POLYFILL_BUG2 = !IS_PURE3 && !CORRECT_IS_REGEXP_LOGIC2 && !!function() {
var descriptor = getOwnPropertyDescriptor2(String.prototype, "endsWith");
return descriptor && !descriptor.writable;
}();
$4({ target: "String", proto: true, forced: !MDN_POLYFILL_BUG2 && !CORRECT_IS_REGEXP_LOGIC2 }, {
endsWith: function endsWith(searchString) {
var that = toString5(requireObjectCoercible4(this));
notARegExp2(searchString);
var endPosition = arguments.length > 1 ? arguments[1] : void 0;
var len = toLength4(that.length);
var end = endPosition === void 0 ? len : min6(toLength4(endPosition), len);
var search = toString5(searchString);
return $endsWith ? $endsWith.call(that, search, end) : that.slice(end - search.length, end) === search;
}
});
}
});
// node_modules/core-js/modules/es.string.split.js
var fixRegExpWellKnownSymbolLogic3, isRegExp, anObject3, requireObjectCoercible5, speciesConstructor2, advanceStringIndex3, toLength5, toString6, getMethod3, callRegExpExec, regexpExec, stickyHelpers, fails2, UNSUPPORTED_Y, arrayPush2, min7, MAX_UINT32, SPLIT_WORKS_WITH_OVERWRITTEN_EXEC;
var init_es_string_split = __esm({
"node_modules/core-js/modules/es.string.split.js"() {
init_buffer_shim();
"use strict";
fixRegExpWellKnownSymbolLogic3 = require_fix_regexp_well_known_symbol_logic();
isRegExp = require_is_regexp();
anObject3 = require_an_object();
requireObjectCoercible5 = require_require_object_coercible();
speciesConstructor2 = require_species_constructor();
advanceStringIndex3 = require_advance_string_index();
toLength5 = require_to_length();
toString6 = require_to_string();
getMethod3 = require_get_method();
callRegExpExec = require_regexp_exec_abstract();
regexpExec = require_regexp_exec();
stickyHelpers = require_regexp_sticky_helpers();
fails2 = require_fails();
UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;
arrayPush2 = [].push;
min7 = Math.min;
MAX_UINT32 = 4294967295;
SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails2(function() {
var re4 = /(?:)/;
var originalExec = re4.exec;
re4.exec = function() {
return originalExec.apply(this, arguments);
};
var result = "ab".split(re4);
return result.length !== 2 || result[0] !== "a" || result[1] !== "b";
});
fixRegExpWellKnownSymbolLogic3("split", function(SPLIT, nativeSplit, maybeCallNative) {
var internalSplit;
if ("abbc".split(/(b)*/)[1] == "c" || "test".split(/(?:)/, -1).length != 4 || "ab".split(/(?:ab)*/).length != 2 || ".".split(/(.?)(.?)/).length != 4 || ".".split(/()()/).length > 1 || "".split(/.?/).length) {
internalSplit = function(separator, limit) {
var string = toString6(requireObjectCoercible5(this));
var lim = limit === void 0 ? MAX_UINT32 : limit >>> 0;
if (lim === 0)
return [];
if (separator === void 0)
return [string];
if (!isRegExp(separator)) {
return nativeSplit.call(string, separator, lim);
}
var output = [];
var flags2 = (separator.ignoreCase ? "i" : "") + (separator.multiline ? "m" : "") + (separator.unicode ? "u" : "") + (separator.sticky ? "y" : "");
var lastLastIndex = 0;
var separatorCopy = new RegExp(separator.source, flags2 + "g");
var match, lastIndex, lastLength;
while (match = regexpExec.call(separatorCopy, string)) {
lastIndex = separatorCopy.lastIndex;
if (lastIndex > lastLastIndex) {
output.push(string.slice(lastLastIndex, match.index));
if (match.length > 1 && match.index < string.length)
arrayPush2.apply(output, match.slice(1));
lastLength = match[0].length;
lastLastIndex = lastIndex;
if (output.length >= lim)
break;
}
if (separatorCopy.lastIndex === match.index)
separatorCopy.lastIndex++;
}
if (lastLastIndex === string.length) {
if (lastLength || !separatorCopy.test(""))
output.push("");
} else
output.push(string.slice(lastLastIndex));
return output.length > lim ? output.slice(0, lim) : output;
};
} else if ("0".split(void 0, 0).length) {
internalSplit = function(separator, limit) {
return separator === void 0 && limit === 0 ? [] : nativeSplit.call(this, separator, limit);
};
} else
internalSplit = nativeSplit;
return [
function split(separator, limit) {
var O4 = requireObjectCoercible5(this);
var splitter = separator == void 0 ? void 0 : getMethod3(separator, SPLIT);
return splitter ? splitter.call(separator, O4, limit) : internalSplit.call(toString6(O4), separator, limit);
},
function(string, limit) {
var rx = anObject3(this);
var S3 = toString6(string);
var res = maybeCallNative(internalSplit, rx, S3, limit, internalSplit !== nativeSplit);
if (res.done)
return res.value;
var C4 = speciesConstructor2(rx, RegExp);
var unicodeMatching = rx.unicode;
var flags2 = (rx.ignoreCase ? "i" : "") + (rx.multiline ? "m" : "") + (rx.unicode ? "u" : "") + (UNSUPPORTED_Y ? "g" : "y");
var splitter = new C4(UNSUPPORTED_Y ? "^(?:" + rx.source + ")" : rx, flags2);
var lim = limit === void 0 ? MAX_UINT32 : limit >>> 0;
if (lim === 0)
return [];
if (S3.length === 0)
return callRegExpExec(splitter, S3) === null ? [S3] : [];
var p4 = 0;
var q2 = 0;
var A4 = [];
while (q2 < S3.length) {
splitter.lastIndex = UNSUPPORTED_Y ? 0 : q2;
var z3 = callRegExpExec(splitter, UNSUPPORTED_Y ? S3.slice(q2) : S3);
var e4;
if (z3 === null || (e4 = min7(toLength5(splitter.lastIndex + (UNSUPPORTED_Y ? q2 : 0)), S3.length)) === p4) {
q2 = advanceStringIndex3(S3, q2, unicodeMatching);
} else {
A4.push(S3.slice(p4, q2));
if (A4.length === lim)
return A4;
for (var i4 = 1; i4 <= z3.length - 1; i4++) {
A4.push(z3[i4]);
if (A4.length === lim)
return A4;
}
q2 = p4 = e4;
}
}
A4.push(S3.slice(p4));
return A4;
}
];
}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);
}
});
// node_modules/performance-now/lib/performance-now.js
var require_performance_now = __commonJS({
"node_modules/performance-now/lib/performance-now.js"(exports2, module2) {
init_buffer_shim();
(function() {
var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;
if (typeof performance !== "undefined" && performance !== null && performance.now) {
module2.exports = function() {
return performance.now();
};
} else if (typeof process !== "undefined" && process !== null && process.hrtime) {
module2.exports = function() {
return (getNanoSeconds() - nodeLoadTime) / 1e6;
};
hrtime = process.hrtime;
getNanoSeconds = function() {
var hr;
hr = hrtime();
return hr[0] * 1e9 + hr[1];
};
moduleLoadTime = getNanoSeconds();
upTime = process.uptime() * 1e9;
nodeLoadTime = moduleLoadTime - upTime;
} else if (Date.now) {
module2.exports = function() {
return Date.now() - loadTime;
};
loadTime = Date.now();
} else {
module2.exports = function() {
return new Date().getTime() - loadTime;
};
loadTime = new Date().getTime();
}
}).call(exports2);
}
});
// node_modules/raf/index.js
var require_raf = __commonJS({
"node_modules/raf/index.js"(exports2, module2) {
init_buffer_shim();
var now = require_performance_now();
var root2 = typeof window === "undefined" ? global : window;
var vendors = ["moz", "webkit"];
var suffix = "AnimationFrame";
var raf = root2["request" + suffix];
var caf = root2["cancel" + suffix] || root2["cancelRequest" + suffix];
for (i4 = 0; !raf && i4 < vendors.length; i4++) {
raf = root2[vendors[i4] + "Request" + suffix];
caf = root2[vendors[i4] + "Cancel" + suffix] || root2[vendors[i4] + "CancelRequest" + suffix];
}
var i4;
if (!raf || !caf) {
last2 = 0, id = 0, queue2 = [], frameDuration = 1e3 / 60;
raf = function(callback) {
if (queue2.length === 0) {
var _now = now(), next = Math.max(0, frameDuration - (_now - last2));
last2 = next + _now;
setTimeout(function() {
var cp = queue2.slice(0);
queue2.length = 0;
for (var i5 = 0; i5 < cp.length; i5++) {
if (!cp[i5].cancelled) {
try {
cp[i5].callback(last2);
} catch (e4) {
setTimeout(function() {
throw e4;
}, 0);
}
}
}
}, Math.round(next));
}
queue2.push({
handle: ++id,
callback,
cancelled: false
});
return id;
};
caf = function(handle) {
for (var i5 = 0; i5 < queue2.length; i5++) {
if (queue2[i5].handle === handle) {
queue2[i5].cancelled = true;
}
}
};
}
var last2;
var id;
var queue2;
var frameDuration;
module2.exports = function(fn) {
return raf.call(root2, fn);
};
module2.exports.cancel = function() {
caf.apply(root2, arguments);
};
module2.exports.polyfill = function(object) {
if (!object) {
object = root2;
}
object.requestAnimationFrame = raf;
object.cancelAnimationFrame = caf;
};
}
});
// node_modules/core-js/internals/whitespaces.js
var require_whitespaces = __commonJS({
"node_modules/core-js/internals/whitespaces.js"(exports2, module2) {
init_buffer_shim();
module2.exports = " \n\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF";
}
});
// node_modules/core-js/internals/string-trim.js
var require_string_trim = __commonJS({
"node_modules/core-js/internals/string-trim.js"(exports2, module2) {
init_buffer_shim();
var requireObjectCoercible7 = require_require_object_coercible();
var toString9 = require_to_string();
var whitespaces = require_whitespaces();
var whitespace = "[" + whitespaces + "]";
var ltrim = RegExp("^" + whitespace + whitespace + "*");
var rtrim = RegExp(whitespace + whitespace + "*$");
var createMethod = function(TYPE) {
return function($this) {
var string = toString9(requireObjectCoercible7($this));
if (TYPE & 1)
string = string.replace(ltrim, "");
if (TYPE & 2)
string = string.replace(rtrim, "");
return string;
};
};
module2.exports = {
start: createMethod(1),
end: createMethod(2),
trim: createMethod(3)
};
}
});
// node_modules/core-js/internals/string-trim-forced.js
var require_string_trim_forced = __commonJS({
"node_modules/core-js/internals/string-trim-forced.js"(exports2, module2) {
init_buffer_shim();
var PROPER_FUNCTION_NAME2 = require_function_name().PROPER;
var fails4 = require_fails();
var whitespaces = require_whitespaces();
var non = "\u200B\x85\u180E";
module2.exports = function(METHOD_NAME) {
return fails4(function() {
return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() !== non || PROPER_FUNCTION_NAME2 && whitespaces[METHOD_NAME].name !== METHOD_NAME;
});
};
}
});
// node_modules/core-js/modules/es.string.trim.js
var $5, $trim, forcedStringTrimMethod;
var init_es_string_trim = __esm({
"node_modules/core-js/modules/es.string.trim.js"() {
init_buffer_shim();
"use strict";
$5 = require_export();
$trim = require_string_trim().trim;
forcedStringTrimMethod = require_string_trim_forced();
$5({ target: "String", proto: true, forced: forcedStringTrimMethod("trim") }, {
trim: function trim() {
return $trim(this);
}
});
}
});
// node_modules/rgbcolor/index.js
var require_rgbcolor = __commonJS({
"node_modules/rgbcolor/index.js"(exports2, module2) {
init_buffer_shim();
module2.exports = function(color_string) {
this.ok = false;
this.alpha = 1;
if (color_string.charAt(0) == "#") {
color_string = color_string.substr(1, 6);
}
color_string = color_string.replace(/ /g, "");
color_string = color_string.toLowerCase();
var simple_colors = {
aliceblue: "f0f8ff",
antiquewhite: "faebd7",
aqua: "00ffff",
aquamarine: "7fffd4",
azure: "f0ffff",
beige: "f5f5dc",
bisque: "ffe4c4",
black: "000000",
blanchedalmond: "ffebcd",
blue: "0000ff",
blueviolet: "8a2be2",
brown: "a52a2a",
burlywood: "deb887",
cadetblue: "5f9ea0",
chartreuse: "7fff00",
chocolate: "d2691e",
coral: "ff7f50",
cornflowerblue: "6495ed",
cornsilk: "fff8dc",
crimson: "dc143c",
cyan: "00ffff",
darkblue: "00008b",
darkcyan: "008b8b",
darkgoldenrod: "b8860b",
darkgray: "a9a9a9",
darkgreen: "006400",
darkkhaki: "bdb76b",
darkmagenta: "8b008b",
darkolivegreen: "556b2f",
darkorange: "ff8c00",
darkorchid: "9932cc",
darkred: "8b0000",
darksalmon: "e9967a",
darkseagreen: "8fbc8f",
darkslateblue: "483d8b",
darkslategray: "2f4f4f",
darkturquoise: "00ced1",
darkviolet: "9400d3",
deeppink: "ff1493",
deepskyblue: "00bfff",
dimgray: "696969",
dodgerblue: "1e90ff",
feldspar: "d19275",
firebrick: "b22222",
floralwhite: "fffaf0",
forestgreen: "228b22",
fuchsia: "ff00ff",
gainsboro: "dcdcdc",
ghostwhite: "f8f8ff",
gold: "ffd700",
goldenrod: "daa520",
gray: "808080",
green: "008000",
greenyellow: "adff2f",
honeydew: "f0fff0",
hotpink: "ff69b4",
indianred: "cd5c5c",
indigo: "4b0082",
ivory: "fffff0",
khaki: "f0e68c",
lavender: "e6e6fa",
lavenderblush: "fff0f5",
lawngreen: "7cfc00",
lemonchiffon: "fffacd",
lightblue: "add8e6",
lightcoral: "f08080",
lightcyan: "e0ffff",
lightgoldenrodyellow: "fafad2",
lightgrey: "d3d3d3",
lightgreen: "90ee90",
lightpink: "ffb6c1",
lightsalmon: "ffa07a",
lightseagreen: "20b2aa",
lightskyblue: "87cefa",
lightslateblue: "8470ff",
lightslategray: "778899",
lightsteelblue: "b0c4de",
lightyellow: "ffffe0",
lime: "00ff00",
limegreen: "32cd32",
linen: "faf0e6",
magenta: "ff00ff",
maroon: "800000",
mediumaquamarine: "66cdaa",
mediumblue: "0000cd",
mediumorchid: "ba55d3",
mediumpurple: "9370d8",
mediumseagreen: "3cb371",
mediumslateblue: "7b68ee",
mediumspringgreen: "00fa9a",
mediumturquoise: "48d1cc",
mediumvioletred: "c71585",
midnightblue: "191970",
mintcream: "f5fffa",
mistyrose: "ffe4e1",
moccasin: "ffe4b5",
navajowhite: "ffdead",
navy: "000080",
oldlace: "fdf5e6",
olive: "808000",
olivedrab: "6b8e23",
orange: "ffa500",
orangered: "ff4500",
orchid: "da70d6",
palegoldenrod: "eee8aa",
palegreen: "98fb98",
paleturquoise: "afeeee",
palevioletred: "d87093",
papayawhip: "ffefd5",
peachpuff: "ffdab9",
peru: "cd853f",
pink: "ffc0cb",
plum: "dda0dd",
powderblue: "b0e0e6",
purple: "800080",
rebeccapurple: "663399",
red: "ff0000",
rosybrown: "bc8f8f",
royalblue: "4169e1",
saddlebrown: "8b4513",
salmon: "fa8072",
sandybrown: "f4a460",
seagreen: "2e8b57",
seashell: "fff5ee",
sienna: "a0522d",
silver: "c0c0c0",
skyblue: "87ceeb",
slateblue: "6a5acd",
slategray: "708090",
snow: "fffafa",
springgreen: "00ff7f",
steelblue: "4682b4",
tan: "d2b48c",
teal: "008080",
thistle: "d8bfd8",
tomato: "ff6347",
turquoise: "40e0d0",
violet: "ee82ee",
violetred: "d02090",
wheat: "f5deb3",
white: "ffffff",
whitesmoke: "f5f5f5",
yellow: "ffff00",
yellowgreen: "9acd32"
};
color_string = simple_colors[color_string] || color_string;
var color_defs = [
{
re: /^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*((?:\d?\.)?\d)\)$/,
example: ["rgba(123, 234, 45, 0.8)", "rgba(255,234,245,1.0)"],
process: function(bits4) {
return [
parseInt(bits4[1]),
parseInt(bits4[2]),
parseInt(bits4[3]),
parseFloat(bits4[4])
];
}
},
{
re: /^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,
example: ["rgb(123, 234, 45)", "rgb(255,234,245)"],
process: function(bits4) {
return [
parseInt(bits4[1]),
parseInt(bits4[2]),
parseInt(bits4[3])
];
}
},
{
re: /^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,
example: ["#00ff00", "336699"],
process: function(bits4) {
return [
parseInt(bits4[1], 16),
parseInt(bits4[2], 16),
parseInt(bits4[3], 16)
];
}
},
{
re: /^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
example: ["#fb0", "f0f"],
process: function(bits4) {
return [
parseInt(bits4[1] + bits4[1], 16),
parseInt(bits4[2] + bits4[2], 16),
parseInt(bits4[3] + bits4[3], 16)
];
}
}
];
for (var i4 = 0; i4 < color_defs.length; i4++) {
var re4 = color_defs[i4].re;
var processor = color_defs[i4].process;
var bits3 = re4.exec(color_string);
if (bits3) {
var channels = processor(bits3);
this.r = channels[0];
this.g = channels[1];
this.b = channels[2];
if (channels.length > 3) {
this.alpha = channels[3];
}
this.ok = true;
}
}
this.r = this.r < 0 || isNaN(this.r) ? 0 : this.r > 255 ? 255 : this.r;
this.g = this.g < 0 || isNaN(this.g) ? 0 : this.g > 255 ? 255 : this.g;
this.b = this.b < 0 || isNaN(this.b) ? 0 : this.b > 255 ? 255 : this.b;
this.alpha = this.alpha < 0 ? 0 : this.alpha > 1 || isNaN(this.alpha) ? 1 : this.alpha;
this.toRGB = function() {
return "rgb(" + this.r + ", " + this.g + ", " + this.b + ")";
};
this.toRGBA = function() {
return "rgba(" + this.r + ", " + this.g + ", " + this.b + ", " + this.alpha + ")";
};
this.toHex = function() {
var r3 = this.r.toString(16);
var g3 = this.g.toString(16);
var b3 = this.b.toString(16);
if (r3.length == 1)
r3 = "0" + r3;
if (g3.length == 1)
g3 = "0" + g3;
if (b3.length == 1)
b3 = "0" + b3;
return "#" + r3 + g3 + b3;
};
this.getHelpXML = function() {
var examples = new Array();
for (var i5 = 0; i5 < color_defs.length; i5++) {
var example2 = color_defs[i5].example;
for (var j2 = 0; j2 < example2.length; j2++) {
examples[examples.length] = example2[j2];
}
}
for (var sc in simple_colors) {
examples[examples.length] = sc;
}
var xml = document.createElement("ul");
xml.setAttribute("id", "rgbcolor-examples");
for (var i5 = 0; i5 < examples.length; i5++) {
try {
var list_item = document.createElement("li");
var list_color = new RGBColor(examples[i5]);
var example_div = document.createElement("div");
example_div.style.cssText = "margin: 3px; border: 1px solid black; background:" + list_color.toHex() + "; color:" + list_color.toHex();
example_div.appendChild(document.createTextNode("test"));
var list_item_value = document.createTextNode(" " + examples[i5] + " -> " + list_color.toRGB() + " -> " + list_color.toHex());
list_item.appendChild(example_div);
list_item.appendChild(list_item_value);
xml.appendChild(list_item);
} catch (e4) {
}
}
return xml;
};
};
}
});
// node_modules/core-js/modules/es.string.includes.js
var $6, notARegExp3, requireObjectCoercible6, toString7, correctIsRegExpLogic3;
var init_es_string_includes = __esm({
"node_modules/core-js/modules/es.string.includes.js"() {
init_buffer_shim();
"use strict";
$6 = require_export();
notARegExp3 = require_not_a_regexp();
requireObjectCoercible6 = require_require_object_coercible();
toString7 = require_to_string();
correctIsRegExpLogic3 = require_correct_is_regexp_logic();
$6({ target: "String", proto: true, forced: !correctIsRegExpLogic3("includes") }, {
includes: function includes(searchString) {
return !!~toString7(requireObjectCoercible6(this)).indexOf(toString7(notARegExp3(searchString)), arguments.length > 1 ? arguments[1] : void 0);
}
});
}
});
// node_modules/core-js/modules/es.array.index-of.js
var $7, $indexOf, arrayMethodIsStrict2, nativeIndexOf, NEGATIVE_ZERO, STRICT_METHOD2;
var init_es_array_index_of = __esm({
"node_modules/core-js/modules/es.array.index-of.js"() {
init_buffer_shim();
"use strict";
$7 = require_export();
$indexOf = require_array_includes().indexOf;
arrayMethodIsStrict2 = require_array_method_is_strict();
nativeIndexOf = [].indexOf;
NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0;
STRICT_METHOD2 = arrayMethodIsStrict2("indexOf");
$7({ target: "Array", proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD2 }, {
indexOf: function indexOf(searchElement) {
return NEGATIVE_ZERO ? nativeIndexOf.apply(this, arguments) || 0 : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : void 0);
}
});
}
});
// node_modules/core-js/internals/is-array.js
var require_is_array = __commonJS({
"node_modules/core-js/internals/is-array.js"(exports2, module2) {
init_buffer_shim();
var classof = require_classof_raw();
module2.exports = Array.isArray || function isArray4(argument) {
return classof(argument) == "Array";
};
}
});
// node_modules/core-js/modules/es.array.reverse.js
var $8, isArray2, nativeReverse, test;
var init_es_array_reverse = __esm({
"node_modules/core-js/modules/es.array.reverse.js"() {
init_buffer_shim();
"use strict";
$8 = require_export();
isArray2 = require_is_array();
nativeReverse = [].reverse;
test = [1, 2];
$8({ target: "Array", proto: true, forced: String(test) === String(test.reverse()) }, {
reverse: function reverse() {
if (isArray2(this))
this.length = this.length;
return nativeReverse.call(this);
}
});
}
});
// node_modules/svg-pathdata/lib/SVGPathData.module.js
function r2(r3, e4) {
function i4() {
this.constructor = r3;
}
t3(r3, e4), r3.prototype = e4 === null ? Object.create(e4) : (i4.prototype = e4.prototype, new i4());
}
function e3(t5) {
var r3 = "";
Array.isArray(t5) || (t5 = [t5]);
for (var e4 = 0; e4 < t5.length; e4++) {
var i4 = t5[e4];
if (i4.type === f3.CLOSE_PATH)
r3 += "z";
else if (i4.type === f3.HORIZ_LINE_TO)
r3 += (i4.relative ? "h" : "H") + i4.x;
else if (i4.type === f3.VERT_LINE_TO)
r3 += (i4.relative ? "v" : "V") + i4.y;
else if (i4.type === f3.MOVE_TO)
r3 += (i4.relative ? "m" : "M") + i4.x + " " + i4.y;
else if (i4.type === f3.LINE_TO)
r3 += (i4.relative ? "l" : "L") + i4.x + " " + i4.y;
else if (i4.type === f3.CURVE_TO)
r3 += (i4.relative ? "c" : "C") + i4.x1 + " " + i4.y1 + " " + i4.x2 + " " + i4.y2 + " " + i4.x + " " + i4.y;
else if (i4.type === f3.SMOOTH_CURVE_TO)
r3 += (i4.relative ? "s" : "S") + i4.x2 + " " + i4.y2 + " " + i4.x + " " + i4.y;
else if (i4.type === f3.QUAD_TO)
r3 += (i4.relative ? "q" : "Q") + i4.x1 + " " + i4.y1 + " " + i4.x + " " + i4.y;
else if (i4.type === f3.SMOOTH_QUAD_TO)
r3 += (i4.relative ? "t" : "T") + i4.x + " " + i4.y;
else {
if (i4.type !== f3.ARC)
throw new Error('Unexpected command type "' + i4.type + '" at index ' + e4 + ".");
r3 += (i4.relative ? "a" : "A") + i4.rX + " " + i4.rY + " " + i4.xRot + " " + +i4.lArcFlag + " " + +i4.sweepFlag + " " + i4.x + " " + i4.y;
}
}
return r3;
}
function i2(t5, r3) {
var e4 = t5[0], i4 = t5[1];
return [e4 * Math.cos(r3) - i4 * Math.sin(r3), e4 * Math.sin(r3) + i4 * Math.cos(r3)];
}
function a2() {
for (var t5 = [], r3 = 0; r3 < arguments.length; r3++)
t5[r3] = arguments[r3];
for (var e4 = 0; e4 < t5.length; e4++)
if (typeof t5[e4] != "number")
throw new Error("assertNumbers arguments[" + e4 + "] is not a number. " + typeof t5[e4] + " == typeof " + t5[e4]);
return true;
}
function o2(t5, r3, e4) {
t5.lArcFlag = t5.lArcFlag === 0 ? 0 : 1, t5.sweepFlag = t5.sweepFlag === 0 ? 0 : 1;
var a4 = t5.rX, o4 = t5.rY, s4 = t5.x, u4 = t5.y;
a4 = Math.abs(t5.rX), o4 = Math.abs(t5.rY);
var h4 = i2([(r3 - s4) / 2, (e4 - u4) / 2], -t5.xRot / 180 * n2), c6 = h4[0], y4 = h4[1], p4 = Math.pow(c6, 2) / Math.pow(a4, 2) + Math.pow(y4, 2) / Math.pow(o4, 2);
1 < p4 && (a4 *= Math.sqrt(p4), o4 *= Math.sqrt(p4)), t5.rX = a4, t5.rY = o4;
var m5 = Math.pow(a4, 2) * Math.pow(y4, 2) + Math.pow(o4, 2) * Math.pow(c6, 2), O4 = (t5.lArcFlag !== t5.sweepFlag ? 1 : -1) * Math.sqrt(Math.max(0, (Math.pow(a4, 2) * Math.pow(o4, 2) - m5) / m5)), T3 = a4 * y4 / o4 * O4, v7 = -o4 * c6 / a4 * O4, l4 = i2([T3, v7], t5.xRot / 180 * n2);
t5.cX = l4[0] + (r3 + s4) / 2, t5.cY = l4[1] + (e4 + u4) / 2, t5.phi1 = Math.atan2((y4 - v7) / o4, (c6 - T3) / a4), t5.phi2 = Math.atan2((-y4 - v7) / o4, (-c6 - T3) / a4), t5.sweepFlag === 0 && t5.phi2 > t5.phi1 && (t5.phi2 -= 2 * n2), t5.sweepFlag === 1 && t5.phi2 < t5.phi1 && (t5.phi2 += 2 * n2), t5.phi1 *= 180 / n2, t5.phi2 *= 180 / n2;
}
function s2(t5, r3, e4) {
a2(t5, r3, e4);
var i4 = t5 * t5 + r3 * r3 - e4 * e4;
if (0 > i4)
return [];
if (i4 === 0)
return [[t5 * e4 / (t5 * t5 + r3 * r3), r3 * e4 / (t5 * t5 + r3 * r3)]];
var n4 = Math.sqrt(i4);
return [[(t5 * e4 + r3 * n4) / (t5 * t5 + r3 * r3), (r3 * e4 - t5 * n4) / (t5 * t5 + r3 * r3)], [(t5 * e4 - r3 * n4) / (t5 * t5 + r3 * r3), (r3 * e4 + t5 * n4) / (t5 * t5 + r3 * r3)]];
}
function c3(t5, r3, e4) {
return (1 - e4) * t5 + e4 * r3;
}
function y2(t5, r3, e4, i4) {
return t5 + Math.cos(i4 / 180 * n2) * r3 + Math.sin(i4 / 180 * n2) * e4;
}
function p2(t5, r3, e4, i4) {
var a4 = r3 - t5, n4 = e4 - r3, o4 = 3 * a4 + 3 * (i4 - e4) - 6 * n4, s4 = 6 * (n4 - a4), u4 = 3 * a4;
return Math.abs(o4) < 1e-6 ? [-u4 / s4] : function(t6, r4, e6) {
e6 === void 0 && (e6 = 1e-6);
var i5 = t6 * t6 / 4 - r4;
if (i5 < -e6)
return [];
if (i5 <= e6)
return [-t6 / 2];
var a5 = Math.sqrt(i5);
return [-t6 / 2 - a5, -t6 / 2 + a5];
}(s4 / o4, u4 / o4, 1e-6);
}
function m2(t5, r3, e4, i4, a4) {
var n4 = 1 - a4;
return t5 * (n4 * n4 * n4) + r3 * (3 * n4 * n4 * a4) + e4 * (3 * n4 * a4 * a4) + i4 * (a4 * a4 * a4);
}
var t3, n2, u2, h2, O2, T, v2, l2, _, f3, N;
var init_SVGPathData_module = __esm({
"node_modules/svg-pathdata/lib/SVGPathData.module.js"() {
init_buffer_shim();
t3 = function(r3, e4) {
return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t5, r4) {
t5.__proto__ = r4;
} || function(t5, r4) {
for (var e6 in r4)
r4.hasOwnProperty(e6) && (t5[e6] = r4[e6]);
})(r3, e4);
};
n2 = Math.PI;
h2 = Math.PI / 180;
!function(t5) {
function r3() {
return u4(function(t6, r4, e6) {
return t6.relative && (t6.x1 !== void 0 && (t6.x1 += r4), t6.y1 !== void 0 && (t6.y1 += e6), t6.x2 !== void 0 && (t6.x2 += r4), t6.y2 !== void 0 && (t6.y2 += e6), t6.x !== void 0 && (t6.x += r4), t6.y !== void 0 && (t6.y += e6), t6.relative = false), t6;
});
}
function e4() {
var t6 = NaN, r4 = NaN, e6 = NaN, i4 = NaN;
return u4(function(a4, n5, o4) {
return a4.type & f3.SMOOTH_CURVE_TO && (a4.type = f3.CURVE_TO, t6 = isNaN(t6) ? n5 : t6, r4 = isNaN(r4) ? o4 : r4, a4.x1 = a4.relative ? n5 - t6 : 2 * n5 - t6, a4.y1 = a4.relative ? o4 - r4 : 2 * o4 - r4), a4.type & f3.CURVE_TO ? (t6 = a4.relative ? n5 + a4.x2 : a4.x2, r4 = a4.relative ? o4 + a4.y2 : a4.y2) : (t6 = NaN, r4 = NaN), a4.type & f3.SMOOTH_QUAD_TO && (a4.type = f3.QUAD_TO, e6 = isNaN(e6) ? n5 : e6, i4 = isNaN(i4) ? o4 : i4, a4.x1 = a4.relative ? n5 - e6 : 2 * n5 - e6, a4.y1 = a4.relative ? o4 - i4 : 2 * o4 - i4), a4.type & f3.QUAD_TO ? (e6 = a4.relative ? n5 + a4.x1 : a4.x1, i4 = a4.relative ? o4 + a4.y1 : a4.y1) : (e6 = NaN, i4 = NaN), a4;
});
}
function n4() {
var t6 = NaN, r4 = NaN;
return u4(function(e6, i4, a4) {
if (e6.type & f3.SMOOTH_QUAD_TO && (e6.type = f3.QUAD_TO, t6 = isNaN(t6) ? i4 : t6, r4 = isNaN(r4) ? a4 : r4, e6.x1 = e6.relative ? i4 - t6 : 2 * i4 - t6, e6.y1 = e6.relative ? a4 - r4 : 2 * a4 - r4), e6.type & f3.QUAD_TO) {
t6 = e6.relative ? i4 + e6.x1 : e6.x1, r4 = e6.relative ? a4 + e6.y1 : e6.y1;
var n5 = e6.x1, o4 = e6.y1;
e6.type = f3.CURVE_TO, e6.x1 = ((e6.relative ? 0 : i4) + 2 * n5) / 3, e6.y1 = ((e6.relative ? 0 : a4) + 2 * o4) / 3, e6.x2 = (e6.x + 2 * n5) / 3, e6.y2 = (e6.y + 2 * o4) / 3;
} else
t6 = NaN, r4 = NaN;
return e6;
});
}
function u4(t6) {
var r4 = 0, e6 = 0, i4 = NaN, a4 = NaN;
return function(n5) {
if (isNaN(i4) && !(n5.type & f3.MOVE_TO))
throw new Error("path must start with moveto");
var o4 = t6(n5, r4, e6, i4, a4);
return n5.type & f3.CLOSE_PATH && (r4 = i4, e6 = a4), n5.x !== void 0 && (r4 = n5.relative ? r4 + n5.x : n5.x), n5.y !== void 0 && (e6 = n5.relative ? e6 + n5.y : n5.y), n5.type & f3.MOVE_TO && (i4 = r4, a4 = e6), o4;
};
}
function O4(t6, r4, e6, i4, n5, o4) {
return a2(t6, r4, e6, i4, n5, o4), u4(function(a4, s4, u5, h4) {
var c6 = a4.x1, y4 = a4.x2, p4 = a4.relative && !isNaN(h4), m5 = a4.x !== void 0 ? a4.x : p4 ? 0 : s4, O5 = a4.y !== void 0 ? a4.y : p4 ? 0 : u5;
function T4(t7) {
return t7 * t7;
}
a4.type & f3.HORIZ_LINE_TO && r4 !== 0 && (a4.type = f3.LINE_TO, a4.y = a4.relative ? 0 : u5), a4.type & f3.VERT_LINE_TO && e6 !== 0 && (a4.type = f3.LINE_TO, a4.x = a4.relative ? 0 : s4), a4.x !== void 0 && (a4.x = a4.x * t6 + O5 * e6 + (p4 ? 0 : n5)), a4.y !== void 0 && (a4.y = m5 * r4 + a4.y * i4 + (p4 ? 0 : o4)), a4.x1 !== void 0 && (a4.x1 = a4.x1 * t6 + a4.y1 * e6 + (p4 ? 0 : n5)), a4.y1 !== void 0 && (a4.y1 = c6 * r4 + a4.y1 * i4 + (p4 ? 0 : o4)), a4.x2 !== void 0 && (a4.x2 = a4.x2 * t6 + a4.y2 * e6 + (p4 ? 0 : n5)), a4.y2 !== void 0 && (a4.y2 = y4 * r4 + a4.y2 * i4 + (p4 ? 0 : o4));
var v7 = t6 * i4 - r4 * e6;
if (a4.xRot !== void 0 && (t6 !== 1 || r4 !== 0 || e6 !== 0 || i4 !== 1))
if (v7 === 0)
delete a4.rX, delete a4.rY, delete a4.xRot, delete a4.lArcFlag, delete a4.sweepFlag, a4.type = f3.LINE_TO;
else {
var l4 = a4.xRot * Math.PI / 180, _3 = Math.sin(l4), N3 = Math.cos(l4), x3 = 1 / T4(a4.rX), d3 = 1 / T4(a4.rY), A4 = T4(N3) * x3 + T4(_3) * d3, E4 = 2 * _3 * N3 * (x3 - d3), C4 = T4(_3) * x3 + T4(N3) * d3, M2 = A4 * i4 * i4 - E4 * r4 * i4 + C4 * r4 * r4, R3 = E4 * (t6 * i4 + r4 * e6) - 2 * (A4 * e6 * i4 + C4 * t6 * r4), g3 = A4 * e6 * e6 - E4 * t6 * e6 + C4 * t6 * t6, I2 = (Math.atan2(R3, M2 - g3) + Math.PI) % Math.PI / 2, S3 = Math.sin(I2), L2 = Math.cos(I2);
a4.rX = Math.abs(v7) / Math.sqrt(M2 * T4(L2) + R3 * S3 * L2 + g3 * T4(S3)), a4.rY = Math.abs(v7) / Math.sqrt(M2 * T4(S3) - R3 * S3 * L2 + g3 * T4(L2)), a4.xRot = 180 * I2 / Math.PI;
}
return a4.sweepFlag !== void 0 && 0 > v7 && (a4.sweepFlag = +!a4.sweepFlag), a4;
});
}
function T3() {
return function(t6) {
var r4 = {};
for (var e6 in t6)
r4[e6] = t6[e6];
return r4;
};
}
t5.ROUND = function(t6) {
function r4(r5) {
return Math.round(r5 * t6) / t6;
}
return t6 === void 0 && (t6 = 1e13), a2(t6), function(t7) {
return t7.x1 !== void 0 && (t7.x1 = r4(t7.x1)), t7.y1 !== void 0 && (t7.y1 = r4(t7.y1)), t7.x2 !== void 0 && (t7.x2 = r4(t7.x2)), t7.y2 !== void 0 && (t7.y2 = r4(t7.y2)), t7.x !== void 0 && (t7.x = r4(t7.x)), t7.y !== void 0 && (t7.y = r4(t7.y)), t7.rX !== void 0 && (t7.rX = r4(t7.rX)), t7.rY !== void 0 && (t7.rY = r4(t7.rY)), t7;
};
}, t5.TO_ABS = r3, t5.TO_REL = function() {
return u4(function(t6, r4, e6) {
return t6.relative || (t6.x1 !== void 0 && (t6.x1 -= r4), t6.y1 !== void 0 && (t6.y1 -= e6), t6.x2 !== void 0 && (t6.x2 -= r4), t6.y2 !== void 0 && (t6.y2 -= e6), t6.x !== void 0 && (t6.x -= r4), t6.y !== void 0 && (t6.y -= e6), t6.relative = true), t6;
});
}, t5.NORMALIZE_HVZ = function(t6, r4, e6) {
return t6 === void 0 && (t6 = true), r4 === void 0 && (r4 = true), e6 === void 0 && (e6 = true), u4(function(i4, a4, n5, o4, s4) {
if (isNaN(o4) && !(i4.type & f3.MOVE_TO))
throw new Error("path must start with moveto");
return r4 && i4.type & f3.HORIZ_LINE_TO && (i4.type = f3.LINE_TO, i4.y = i4.relative ? 0 : n5), e6 && i4.type & f3.VERT_LINE_TO && (i4.type = f3.LINE_TO, i4.x = i4.relative ? 0 : a4), t6 && i4.type & f3.CLOSE_PATH && (i4.type = f3.LINE_TO, i4.x = i4.relative ? o4 - a4 : o4, i4.y = i4.relative ? s4 - n5 : s4), i4.type & f3.ARC && (i4.rX === 0 || i4.rY === 0) && (i4.type = f3.LINE_TO, delete i4.rX, delete i4.rY, delete i4.xRot, delete i4.lArcFlag, delete i4.sweepFlag), i4;
});
}, t5.NORMALIZE_ST = e4, t5.QT_TO_C = n4, t5.INFO = u4, t5.SANITIZE = function(t6) {
t6 === void 0 && (t6 = 0), a2(t6);
var r4 = NaN, e6 = NaN, i4 = NaN, n5 = NaN;
return u4(function(a4, o4, s4, u5, h4) {
var c6 = Math.abs, y4 = false, p4 = 0, m5 = 0;
if (a4.type & f3.SMOOTH_CURVE_TO && (p4 = isNaN(r4) ? 0 : o4 - r4, m5 = isNaN(e6) ? 0 : s4 - e6), a4.type & (f3.CURVE_TO | f3.SMOOTH_CURVE_TO) ? (r4 = a4.relative ? o4 + a4.x2 : a4.x2, e6 = a4.relative ? s4 + a4.y2 : a4.y2) : (r4 = NaN, e6 = NaN), a4.type & f3.SMOOTH_QUAD_TO ? (i4 = isNaN(i4) ? o4 : 2 * o4 - i4, n5 = isNaN(n5) ? s4 : 2 * s4 - n5) : a4.type & f3.QUAD_TO ? (i4 = a4.relative ? o4 + a4.x1 : a4.x1, n5 = a4.relative ? s4 + a4.y1 : a4.y2) : (i4 = NaN, n5 = NaN), a4.type & f3.LINE_COMMANDS || a4.type & f3.ARC && (a4.rX === 0 || a4.rY === 0 || !a4.lArcFlag) || a4.type & f3.CURVE_TO || a4.type & f3.SMOOTH_CURVE_TO || a4.type & f3.QUAD_TO || a4.type & f3.SMOOTH_QUAD_TO) {
var O5 = a4.x === void 0 ? 0 : a4.relative ? a4.x : a4.x - o4, T4 = a4.y === void 0 ? 0 : a4.relative ? a4.y : a4.y - s4;
p4 = isNaN(i4) ? a4.x1 === void 0 ? p4 : a4.relative ? a4.x : a4.x1 - o4 : i4 - o4, m5 = isNaN(n5) ? a4.y1 === void 0 ? m5 : a4.relative ? a4.y : a4.y1 - s4 : n5 - s4;
var v7 = a4.x2 === void 0 ? 0 : a4.relative ? a4.x : a4.x2 - o4, l4 = a4.y2 === void 0 ? 0 : a4.relative ? a4.y : a4.y2 - s4;
c6(O5) <= t6 && c6(T4) <= t6 && c6(p4) <= t6 && c6(m5) <= t6 && c6(v7) <= t6 && c6(l4) <= t6 && (y4 = true);
}
return a4.type & f3.CLOSE_PATH && c6(o4 - u5) <= t6 && c6(s4 - h4) <= t6 && (y4 = true), y4 ? [] : a4;
});
}, t5.MATRIX = O4, t5.ROTATE = function(t6, r4, e6) {
r4 === void 0 && (r4 = 0), e6 === void 0 && (e6 = 0), a2(t6, r4, e6);
var i4 = Math.sin(t6), n5 = Math.cos(t6);
return O4(n5, i4, -i4, n5, r4 - r4 * n5 + e6 * i4, e6 - r4 * i4 - e6 * n5);
}, t5.TRANSLATE = function(t6, r4) {
return r4 === void 0 && (r4 = 0), a2(t6, r4), O4(1, 0, 0, 1, t6, r4);
}, t5.SCALE = function(t6, r4) {
return r4 === void 0 && (r4 = t6), a2(t6, r4), O4(t6, 0, 0, r4, 0, 0);
}, t5.SKEW_X = function(t6) {
return a2(t6), O4(1, 0, Math.atan(t6), 1, 0, 0);
}, t5.SKEW_Y = function(t6) {
return a2(t6), O4(1, Math.atan(t6), 0, 1, 0, 0);
}, t5.X_AXIS_SYMMETRY = function(t6) {
return t6 === void 0 && (t6 = 0), a2(t6), O4(-1, 0, 0, 1, t6, 0);
}, t5.Y_AXIS_SYMMETRY = function(t6) {
return t6 === void 0 && (t6 = 0), a2(t6), O4(1, 0, 0, -1, 0, t6);
}, t5.A_TO_C = function() {
return u4(function(t6, r4, e6) {
return f3.ARC === t6.type ? function(t7, r5, e7) {
var a4, n5, s4, u5;
t7.cX || o2(t7, r5, e7);
for (var y4 = Math.min(t7.phi1, t7.phi2), p4 = Math.max(t7.phi1, t7.phi2) - y4, m5 = Math.ceil(p4 / 90), O5 = new Array(m5), T4 = r5, v7 = e7, l4 = 0; l4 < m5; l4++) {
var _3 = c3(t7.phi1, t7.phi2, l4 / m5), N3 = c3(t7.phi1, t7.phi2, (l4 + 1) / m5), x3 = N3 - _3, d3 = 4 / 3 * Math.tan(x3 * h2 / 4), A4 = [Math.cos(_3 * h2) - d3 * Math.sin(_3 * h2), Math.sin(_3 * h2) + d3 * Math.cos(_3 * h2)], E4 = A4[0], C4 = A4[1], M2 = [Math.cos(N3 * h2), Math.sin(N3 * h2)], R3 = M2[0], g3 = M2[1], I2 = [R3 + d3 * Math.sin(N3 * h2), g3 - d3 * Math.cos(N3 * h2)], S3 = I2[0], L2 = I2[1];
O5[l4] = { relative: t7.relative, type: f3.CURVE_TO };
var H2 = function(r6, e8) {
var a5 = i2([r6 * t7.rX, e8 * t7.rY], t7.xRot), n6 = a5[0], o4 = a5[1];
return [t7.cX + n6, t7.cY + o4];
};
a4 = H2(E4, C4), O5[l4].x1 = a4[0], O5[l4].y1 = a4[1], n5 = H2(S3, L2), O5[l4].x2 = n5[0], O5[l4].y2 = n5[1], s4 = H2(R3, g3), O5[l4].x = s4[0], O5[l4].y = s4[1], t7.relative && (O5[l4].x1 -= T4, O5[l4].y1 -= v7, O5[l4].x2 -= T4, O5[l4].y2 -= v7, O5[l4].x -= T4, O5[l4].y -= v7), T4 = (u5 = [O5[l4].x, O5[l4].y])[0], v7 = u5[1];
}
return O5;
}(t6, t6.relative ? 0 : r4, t6.relative ? 0 : e6) : t6;
});
}, t5.ANNOTATE_ARCS = function() {
return u4(function(t6, r4, e6) {
return t6.relative && (r4 = 0, e6 = 0), f3.ARC === t6.type && o2(t6, r4, e6), t6;
});
}, t5.CLONE = T3, t5.CALCULATE_BOUNDS = function() {
var t6 = function(t7) {
var r4 = {};
for (var e6 in t7)
r4[e6] = t7[e6];
return r4;
}, i4 = r3(), a4 = n4(), h4 = e4(), c6 = u4(function(r4, e6, n5) {
var u5 = h4(a4(i4(t6(r4))));
function O5(t7) {
t7 > c6.maxX && (c6.maxX = t7), t7 < c6.minX && (c6.minX = t7);
}
function T4(t7) {
t7 > c6.maxY && (c6.maxY = t7), t7 < c6.minY && (c6.minY = t7);
}
if (u5.type & f3.DRAWING_COMMANDS && (O5(e6), T4(n5)), u5.type & f3.HORIZ_LINE_TO && O5(u5.x), u5.type & f3.VERT_LINE_TO && T4(u5.y), u5.type & f3.LINE_TO && (O5(u5.x), T4(u5.y)), u5.type & f3.CURVE_TO) {
O5(u5.x), T4(u5.y);
for (var v7 = 0, l4 = p2(e6, u5.x1, u5.x2, u5.x); v7 < l4.length; v7++) {
0 < (w3 = l4[v7]) && 1 > w3 && O5(m2(e6, u5.x1, u5.x2, u5.x, w3));
}
for (var _3 = 0, N3 = p2(n5, u5.y1, u5.y2, u5.y); _3 < N3.length; _3++) {
0 < (w3 = N3[_3]) && 1 > w3 && T4(m2(n5, u5.y1, u5.y2, u5.y, w3));
}
}
if (u5.type & f3.ARC) {
O5(u5.x), T4(u5.y), o2(u5, e6, n5);
for (var x3 = u5.xRot / 180 * Math.PI, d3 = Math.cos(x3) * u5.rX, A4 = Math.sin(x3) * u5.rX, E4 = -Math.sin(x3) * u5.rY, C4 = Math.cos(x3) * u5.rY, M2 = u5.phi1 < u5.phi2 ? [u5.phi1, u5.phi2] : -180 > u5.phi2 ? [u5.phi2 + 360, u5.phi1 + 360] : [u5.phi2, u5.phi1], R3 = M2[0], g3 = M2[1], I2 = function(t7) {
var r5 = t7[0], e7 = t7[1], i5 = 180 * Math.atan2(e7, r5) / Math.PI;
return i5 < R3 ? i5 + 360 : i5;
}, S3 = 0, L2 = s2(E4, -d3, 0).map(I2); S3 < L2.length; S3++) {
(w3 = L2[S3]) > R3 && w3 < g3 && O5(y2(u5.cX, d3, E4, w3));
}
for (var H2 = 0, U2 = s2(C4, -A4, 0).map(I2); H2 < U2.length; H2++) {
var w3;
(w3 = U2[H2]) > R3 && w3 < g3 && T4(y2(u5.cY, A4, C4, w3));
}
}
return r4;
});
return c6.minX = 1 / 0, c6.maxX = -1 / 0, c6.minY = 1 / 0, c6.maxY = -1 / 0, c6;
};
}(u2 || (u2 = {}));
T = function() {
function t5() {
}
return t5.prototype.round = function(t6) {
return this.transform(u2.ROUND(t6));
}, t5.prototype.toAbs = function() {
return this.transform(u2.TO_ABS());
}, t5.prototype.toRel = function() {
return this.transform(u2.TO_REL());
}, t5.prototype.normalizeHVZ = function(t6, r3, e4) {
return this.transform(u2.NORMALIZE_HVZ(t6, r3, e4));
}, t5.prototype.normalizeST = function() {
return this.transform(u2.NORMALIZE_ST());
}, t5.prototype.qtToC = function() {
return this.transform(u2.QT_TO_C());
}, t5.prototype.aToC = function() {
return this.transform(u2.A_TO_C());
}, t5.prototype.sanitize = function(t6) {
return this.transform(u2.SANITIZE(t6));
}, t5.prototype.translate = function(t6, r3) {
return this.transform(u2.TRANSLATE(t6, r3));
}, t5.prototype.scale = function(t6, r3) {
return this.transform(u2.SCALE(t6, r3));
}, t5.prototype.rotate = function(t6, r3, e4) {
return this.transform(u2.ROTATE(t6, r3, e4));
}, t5.prototype.matrix = function(t6, r3, e4, i4, a4, n4) {
return this.transform(u2.MATRIX(t6, r3, e4, i4, a4, n4));
}, t5.prototype.skewX = function(t6) {
return this.transform(u2.SKEW_X(t6));
}, t5.prototype.skewY = function(t6) {
return this.transform(u2.SKEW_Y(t6));
}, t5.prototype.xSymmetry = function(t6) {
return this.transform(u2.X_AXIS_SYMMETRY(t6));
}, t5.prototype.ySymmetry = function(t6) {
return this.transform(u2.Y_AXIS_SYMMETRY(t6));
}, t5.prototype.annotateArcs = function() {
return this.transform(u2.ANNOTATE_ARCS());
}, t5;
}();
v2 = function(t5) {
return t5 === " " || t5 === " " || t5 === "\r" || t5 === "\n";
};
l2 = function(t5) {
return "0".charCodeAt(0) <= t5.charCodeAt(0) && t5.charCodeAt(0) <= "9".charCodeAt(0);
};
_ = function(t5) {
function e4() {
var r3 = t5.call(this) || this;
return r3.curNumber = "", r3.curCommandType = -1, r3.curCommandRelative = false, r3.canParseCommandOrComma = true, r3.curNumberHasExp = false, r3.curNumberHasExpDigits = false, r3.curNumberHasDecimal = false, r3.curArgs = [], r3;
}
return r2(e4, t5), e4.prototype.finish = function(t6) {
if (t6 === void 0 && (t6 = []), this.parse(" ", t6), this.curArgs.length !== 0 || !this.canParseCommandOrComma)
throw new SyntaxError("Unterminated command at the path end.");
return t6;
}, e4.prototype.parse = function(t6, r3) {
var e6 = this;
r3 === void 0 && (r3 = []);
for (var i4 = function(t7) {
r3.push(t7), e6.curArgs.length = 0, e6.canParseCommandOrComma = true;
}, a4 = 0; a4 < t6.length; a4++) {
var n4 = t6[a4], o4 = !(this.curCommandType !== f3.ARC || this.curArgs.length !== 3 && this.curArgs.length !== 4 || this.curNumber.length !== 1 || this.curNumber !== "0" && this.curNumber !== "1"), s4 = l2(n4) && (this.curNumber === "0" && n4 === "0" || o4);
if (!l2(n4) || s4)
if (n4 !== "e" && n4 !== "E")
if (n4 !== "-" && n4 !== "+" || !this.curNumberHasExp || this.curNumberHasExpDigits)
if (n4 !== "." || this.curNumberHasExp || this.curNumberHasDecimal || o4) {
if (this.curNumber && this.curCommandType !== -1) {
var u4 = Number(this.curNumber);
if (isNaN(u4))
throw new SyntaxError("Invalid number ending at " + a4);
if (this.curCommandType === f3.ARC) {
if (this.curArgs.length === 0 || this.curArgs.length === 1) {
if (0 > u4)
throw new SyntaxError('Expected positive number, got "' + u4 + '" at index "' + a4 + '"');
} else if ((this.curArgs.length === 3 || this.curArgs.length === 4) && this.curNumber !== "0" && this.curNumber !== "1")
throw new SyntaxError('Expected a flag, got "' + this.curNumber + '" at index "' + a4 + '"');
}
this.curArgs.push(u4), this.curArgs.length === N[this.curCommandType] && (f3.HORIZ_LINE_TO === this.curCommandType ? i4({ type: f3.HORIZ_LINE_TO, relative: this.curCommandRelative, x: u4 }) : f3.VERT_LINE_TO === this.curCommandType ? i4({ type: f3.VERT_LINE_TO, relative: this.curCommandRelative, y: u4 }) : this.curCommandType === f3.MOVE_TO || this.curCommandType === f3.LINE_TO || this.curCommandType === f3.SMOOTH_QUAD_TO ? (i4({ type: this.curCommandType, relative: this.curCommandRelative, x: this.curArgs[0], y: this.curArgs[1] }), f3.MOVE_TO === this.curCommandType && (this.curCommandType = f3.LINE_TO)) : this.curCommandType === f3.CURVE_TO ? i4({ type: f3.CURVE_TO, relative: this.curCommandRelative, x1: this.curArgs[0], y1: this.curArgs[1], x2: this.curArgs[2], y2: this.curArgs[3], x: this.curArgs[4], y: this.curArgs[5] }) : this.curCommandType === f3.SMOOTH_CURVE_TO ? i4({ type: f3.SMOOTH_CURVE_TO, relative: this.curCommandRelative, x2: this.curArgs[0], y2: this.curArgs[1], x: this.curArgs[2], y: this.curArgs[3] }) : this.curCommandType === f3.QUAD_TO ? i4({ type: f3.QUAD_TO, relative: this.curCommandRelative, x1: this.curArgs[0], y1: this.curArgs[1], x: this.curArgs[2], y: this.curArgs[3] }) : this.curCommandType === f3.ARC && i4({ type: f3.ARC, relative: this.curCommandRelative, rX: this.curArgs[0], rY: this.curArgs[1], xRot: this.curArgs[2], lArcFlag: this.curArgs[3], sweepFlag: this.curArgs[4], x: this.curArgs[5], y: this.curArgs[6] })), this.curNumber = "", this.curNumberHasExpDigits = false, this.curNumberHasExp = false, this.curNumberHasDecimal = false, this.canParseCommandOrComma = true;
}
if (!v2(n4))
if (n4 === "," && this.canParseCommandOrComma)
this.canParseCommandOrComma = false;
else if (n4 !== "+" && n4 !== "-" && n4 !== ".")
if (s4)
this.curNumber = n4, this.curNumberHasDecimal = false;
else {
if (this.curArgs.length !== 0)
throw new SyntaxError("Unterminated command at index " + a4 + ".");
if (!this.canParseCommandOrComma)
throw new SyntaxError('Unexpected character "' + n4 + '" at index ' + a4 + ". Command cannot follow comma");
if (this.canParseCommandOrComma = false, n4 !== "z" && n4 !== "Z")
if (n4 === "h" || n4 === "H")
this.curCommandType = f3.HORIZ_LINE_TO, this.curCommandRelative = n4 === "h";
else if (n4 === "v" || n4 === "V")
this.curCommandType = f3.VERT_LINE_TO, this.curCommandRelative = n4 === "v";
else if (n4 === "m" || n4 === "M")
this.curCommandType = f3.MOVE_TO, this.curCommandRelative = n4 === "m";
else if (n4 === "l" || n4 === "L")
this.curCommandType = f3.LINE_TO, this.curCommandRelative = n4 === "l";
else if (n4 === "c" || n4 === "C")
this.curCommandType = f3.CURVE_TO, this.curCommandRelative = n4 === "c";
else if (n4 === "s" || n4 === "S")
this.curCommandType = f3.SMOOTH_CURVE_TO, this.curCommandRelative = n4 === "s";
else if (n4 === "q" || n4 === "Q")
this.curCommandType = f3.QUAD_TO, this.curCommandRelative = n4 === "q";
else if (n4 === "t" || n4 === "T")
this.curCommandType = f3.SMOOTH_QUAD_TO, this.curCommandRelative = n4 === "t";
else {
if (n4 !== "a" && n4 !== "A")
throw new SyntaxError('Unexpected character "' + n4 + '" at index ' + a4 + ".");
this.curCommandType = f3.ARC, this.curCommandRelative = n4 === "a";
}
else
r3.push({ type: f3.CLOSE_PATH }), this.canParseCommandOrComma = true, this.curCommandType = -1;
}
else
this.curNumber = n4, this.curNumberHasDecimal = n4 === ".";
} else
this.curNumber += n4, this.curNumberHasDecimal = true;
else
this.curNumber += n4;
else
this.curNumber += n4, this.curNumberHasExp = true;
else
this.curNumber += n4, this.curNumberHasExpDigits = this.curNumberHasExp;
}
return r3;
}, e4.prototype.transform = function(t6) {
return Object.create(this, { parse: { value: function(r3, e6) {
e6 === void 0 && (e6 = []);
for (var i4 = 0, a4 = Object.getPrototypeOf(this).parse.call(this, r3); i4 < a4.length; i4++) {
var n4 = a4[i4], o4 = t6(n4);
Array.isArray(o4) ? e6.push.apply(e6, o4) : e6.push(o4);
}
return e6;
} } });
}, e4;
}(T);
f3 = function(t5) {
function i4(r3) {
var e4 = t5.call(this) || this;
return e4.commands = typeof r3 == "string" ? i4.parse(r3) : r3, e4;
}
return r2(i4, t5), i4.prototype.encode = function() {
return i4.encode(this.commands);
}, i4.prototype.getBounds = function() {
var t6 = u2.CALCULATE_BOUNDS();
return this.transform(t6), t6;
}, i4.prototype.transform = function(t6) {
for (var r3 = [], e4 = 0, i5 = this.commands; e4 < i5.length; e4++) {
var a4 = t6(i5[e4]);
Array.isArray(a4) ? r3.push.apply(r3, a4) : r3.push(a4);
}
return this.commands = r3, this;
}, i4.encode = function(t6) {
return e3(t6);
}, i4.parse = function(t6) {
var r3 = new _(), e4 = [];
return r3.parse(t6, e4), r3.finish(e4), e4;
}, i4.CLOSE_PATH = 1, i4.MOVE_TO = 2, i4.HORIZ_LINE_TO = 4, i4.VERT_LINE_TO = 8, i4.LINE_TO = 16, i4.CURVE_TO = 32, i4.SMOOTH_CURVE_TO = 64, i4.QUAD_TO = 128, i4.SMOOTH_QUAD_TO = 256, i4.ARC = 512, i4.LINE_COMMANDS = i4.LINE_TO | i4.HORIZ_LINE_TO | i4.VERT_LINE_TO, i4.DRAWING_COMMANDS = i4.HORIZ_LINE_TO | i4.VERT_LINE_TO | i4.LINE_TO | i4.CURVE_TO | i4.SMOOTH_CURVE_TO | i4.QUAD_TO | i4.SMOOTH_QUAD_TO | i4.ARC, i4;
}(T);
N = ((O2 = {})[f3.MOVE_TO] = 2, O2[f3.LINE_TO] = 2, O2[f3.HORIZ_LINE_TO] = 1, O2[f3.VERT_LINE_TO] = 1, O2[f3.CLOSE_PATH] = 0, O2[f3.QUAD_TO] = 4, O2[f3.SMOOTH_QUAD_TO] = 2, O2[f3.CURVE_TO] = 6, O2[f3.SMOOTH_CURVE_TO] = 4, O2[f3.ARC] = 7, O2);
}
});
// node_modules/core-js/modules/es.regexp.to-string.js
var PROPER_FUNCTION_NAME, redefine2, anObject4, $toString, fails3, flags, TO_STRING, RegExpPrototype, nativeToString, NOT_GENERIC, INCORRECT_NAME;
var init_es_regexp_to_string = __esm({
"node_modules/core-js/modules/es.regexp.to-string.js"() {
init_buffer_shim();
"use strict";
PROPER_FUNCTION_NAME = require_function_name().PROPER;
redefine2 = require_redefine();
anObject4 = require_an_object();
$toString = require_to_string();
fails3 = require_fails();
flags = require_regexp_flags();
TO_STRING = "toString";
RegExpPrototype = RegExp.prototype;
nativeToString = RegExpPrototype[TO_STRING];
NOT_GENERIC = fails3(function() {
return nativeToString.call({ source: "a", flags: "b" }) != "/a/b";
});
INCORRECT_NAME = PROPER_FUNCTION_NAME && nativeToString.name != TO_STRING;
if (NOT_GENERIC || INCORRECT_NAME) {
redefine2(RegExp.prototype, TO_STRING, function toString9() {
var R3 = anObject4(this);
var p4 = $toString(R3.source);
var rf = R3.flags;
var f6 = $toString(rf === void 0 && R3 instanceof RegExp && !("flags" in RegExpPrototype) ? flags.call(R3) : rf);
return "/" + p4 + "/" + f6;
}, { unsafe: true });
}
}
});
// node_modules/stackblur-canvas/dist/stackblur-es.js
function _typeof2(obj) {
"@babel/helpers - typeof";
if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
_typeof2 = function(obj2) {
return typeof obj2;
};
} else {
_typeof2 = function(obj2) {
return obj2 && typeof Symbol === "function" && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2;
};
}
return _typeof2(obj);
}
function _classCallCheck3(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
function getImageDataFromCanvas(canvas, topX, topY, width, height) {
if (typeof canvas === "string") {
canvas = document.getElementById(canvas);
}
if (!canvas || _typeof2(canvas) !== "object" || !("getContext" in canvas)) {
throw new TypeError("Expecting canvas with `getContext` method in processCanvasRGB(A) calls!");
}
var context2 = canvas.getContext("2d");
try {
return context2.getImageData(topX, topY, width, height);
} catch (e4) {
throw new Error("unable to access image data: " + e4);
}
}
function processCanvasRGBA(canvas, topX, topY, width, height, radius) {
if (isNaN(radius) || radius < 1) {
return;
}
radius |= 0;
var imageData = getImageDataFromCanvas(canvas, topX, topY, width, height);
imageData = processImageDataRGBA(imageData, topX, topY, width, height, radius);
canvas.getContext("2d").putImageData(imageData, topX, topY);
}
function processImageDataRGBA(imageData, topX, topY, width, height, radius) {
var pixels = imageData.data;
var div = 2 * radius + 1;
var widthMinus1 = width - 1;
var heightMinus1 = height - 1;
var radiusPlus1 = radius + 1;
var sumFactor = radiusPlus1 * (radiusPlus1 + 1) / 2;
var stackStart = new BlurStack();
var stack = stackStart;
var stackEnd;
for (var i4 = 1; i4 < div; i4++) {
stack = stack.next = new BlurStack();
if (i4 === radiusPlus1) {
stackEnd = stack;
}
}
stack.next = stackStart;
var stackIn = null, stackOut = null, yw = 0, yi = 0;
var mulSum = mulTable[radius];
var shgSum = shgTable[radius];
for (var y4 = 0; y4 < height; y4++) {
stack = stackStart;
var pr = pixels[yi], pg = pixels[yi + 1], pb = pixels[yi + 2], pa = pixels[yi + 3];
for (var _i = 0; _i < radiusPlus1; _i++) {
stack.r = pr;
stack.g = pg;
stack.b = pb;
stack.a = pa;
stack = stack.next;
}
var rInSum = 0, gInSum = 0, bInSum = 0, aInSum = 0, rOutSum = radiusPlus1 * pr, gOutSum = radiusPlus1 * pg, bOutSum = radiusPlus1 * pb, aOutSum = radiusPlus1 * pa, rSum = sumFactor * pr, gSum = sumFactor * pg, bSum = sumFactor * pb, aSum = sumFactor * pa;
for (var _i2 = 1; _i2 < radiusPlus1; _i2++) {
var p4 = yi + ((widthMinus1 < _i2 ? widthMinus1 : _i2) << 2);
var r3 = pixels[p4], g3 = pixels[p4 + 1], b3 = pixels[p4 + 2], a4 = pixels[p4 + 3];
var rbs = radiusPlus1 - _i2;
rSum += (stack.r = r3) * rbs;
gSum += (stack.g = g3) * rbs;
bSum += (stack.b = b3) * rbs;
aSum += (stack.a = a4) * rbs;
rInSum += r3;
gInSum += g3;
bInSum += b3;
aInSum += a4;
stack = stack.next;
}
stackIn = stackStart;
stackOut = stackEnd;
for (var x3 = 0; x3 < width; x3++) {
var paInitial = aSum * mulSum >> shgSum;
pixels[yi + 3] = paInitial;
if (paInitial !== 0) {
var _a22 = 255 / paInitial;
pixels[yi] = (rSum * mulSum >> shgSum) * _a22;
pixels[yi + 1] = (gSum * mulSum >> shgSum) * _a22;
pixels[yi + 2] = (bSum * mulSum >> shgSum) * _a22;
} else {
pixels[yi] = pixels[yi + 1] = pixels[yi + 2] = 0;
}
rSum -= rOutSum;
gSum -= gOutSum;
bSum -= bOutSum;
aSum -= aOutSum;
rOutSum -= stackIn.r;
gOutSum -= stackIn.g;
bOutSum -= stackIn.b;
aOutSum -= stackIn.a;
var _p = x3 + radius + 1;
_p = yw + (_p < widthMinus1 ? _p : widthMinus1) << 2;
rInSum += stackIn.r = pixels[_p];
gInSum += stackIn.g = pixels[_p + 1];
bInSum += stackIn.b = pixels[_p + 2];
aInSum += stackIn.a = pixels[_p + 3];
rSum += rInSum;
gSum += gInSum;
bSum += bInSum;
aSum += aInSum;
stackIn = stackIn.next;
var _stackOut = stackOut, _r = _stackOut.r, _g = _stackOut.g, _b3 = _stackOut.b, _a3 = _stackOut.a;
rOutSum += _r;
gOutSum += _g;
bOutSum += _b3;
aOutSum += _a3;
rInSum -= _r;
gInSum -= _g;
bInSum -= _b3;
aInSum -= _a3;
stackOut = stackOut.next;
yi += 4;
}
yw += width;
}
for (var _x = 0; _x < width; _x++) {
yi = _x << 2;
var _pr = pixels[yi], _pg = pixels[yi + 1], _pb = pixels[yi + 2], _pa = pixels[yi + 3], _rOutSum = radiusPlus1 * _pr, _gOutSum = radiusPlus1 * _pg, _bOutSum = radiusPlus1 * _pb, _aOutSum = radiusPlus1 * _pa, _rSum = sumFactor * _pr, _gSum = sumFactor * _pg, _bSum = sumFactor * _pb, _aSum = sumFactor * _pa;
stack = stackStart;
for (var _i3 = 0; _i3 < radiusPlus1; _i3++) {
stack.r = _pr;
stack.g = _pg;
stack.b = _pb;
stack.a = _pa;
stack = stack.next;
}
var yp = width;
var _gInSum = 0, _bInSum = 0, _aInSum = 0, _rInSum = 0;
for (var _i4 = 1; _i4 <= radius; _i4++) {
yi = yp + _x << 2;
var _rbs = radiusPlus1 - _i4;
_rSum += (stack.r = _pr = pixels[yi]) * _rbs;
_gSum += (stack.g = _pg = pixels[yi + 1]) * _rbs;
_bSum += (stack.b = _pb = pixels[yi + 2]) * _rbs;
_aSum += (stack.a = _pa = pixels[yi + 3]) * _rbs;
_rInSum += _pr;
_gInSum += _pg;
_bInSum += _pb;
_aInSum += _pa;
stack = stack.next;
if (_i4 < heightMinus1) {
yp += width;
}
}
yi = _x;
stackIn = stackStart;
stackOut = stackEnd;
for (var _y = 0; _y < height; _y++) {
var _p2 = yi << 2;
pixels[_p2 + 3] = _pa = _aSum * mulSum >> shgSum;
if (_pa > 0) {
_pa = 255 / _pa;
pixels[_p2] = (_rSum * mulSum >> shgSum) * _pa;
pixels[_p2 + 1] = (_gSum * mulSum >> shgSum) * _pa;
pixels[_p2 + 2] = (_bSum * mulSum >> shgSum) * _pa;
} else {
pixels[_p2] = pixels[_p2 + 1] = pixels[_p2 + 2] = 0;
}
_rSum -= _rOutSum;
_gSum -= _gOutSum;
_bSum -= _bOutSum;
_aSum -= _aOutSum;
_rOutSum -= stackIn.r;
_gOutSum -= stackIn.g;
_bOutSum -= stackIn.b;
_aOutSum -= stackIn.a;
_p2 = _x + ((_p2 = _y + radiusPlus1) < heightMinus1 ? _p2 : heightMinus1) * width << 2;
_rSum += _rInSum += stackIn.r = pixels[_p2];
_gSum += _gInSum += stackIn.g = pixels[_p2 + 1];
_bSum += _bInSum += stackIn.b = pixels[_p2 + 2];
_aSum += _aInSum += stackIn.a = pixels[_p2 + 3];
stackIn = stackIn.next;
_rOutSum += _pr = stackOut.r;
_gOutSum += _pg = stackOut.g;
_bOutSum += _pb = stackOut.b;
_aOutSum += _pa = stackOut.a;
_rInSum -= _pr;
_gInSum -= _pg;
_bInSum -= _pb;
_aInSum -= _pa;
stackOut = stackOut.next;
yi += width;
}
}
return imageData;
}
var mulTable, shgTable, BlurStack;
var init_stackblur_es = __esm({
"node_modules/stackblur-canvas/dist/stackblur-es.js"() {
init_buffer_shim();
mulTable = [512, 512, 456, 512, 328, 456, 335, 512, 405, 328, 271, 456, 388, 335, 292, 512, 454, 405, 364, 328, 298, 271, 496, 456, 420, 388, 360, 335, 312, 292, 273, 512, 482, 454, 428, 405, 383, 364, 345, 328, 312, 298, 284, 271, 259, 496, 475, 456, 437, 420, 404, 388, 374, 360, 347, 335, 323, 312, 302, 292, 282, 273, 265, 512, 497, 482, 468, 454, 441, 428, 417, 405, 394, 383, 373, 364, 354, 345, 337, 328, 320, 312, 305, 298, 291, 284, 278, 271, 265, 259, 507, 496, 485, 475, 465, 456, 446, 437, 428, 420, 412, 404, 396, 388, 381, 374, 367, 360, 354, 347, 341, 335, 329, 323, 318, 312, 307, 302, 297, 292, 287, 282, 278, 273, 269, 265, 261, 512, 505, 497, 489, 482, 475, 468, 461, 454, 447, 441, 435, 428, 422, 417, 411, 405, 399, 394, 389, 383, 378, 373, 368, 364, 359, 354, 350, 345, 341, 337, 332, 328, 324, 320, 316, 312, 309, 305, 301, 298, 294, 291, 287, 284, 281, 278, 274, 271, 268, 265, 262, 259, 257, 507, 501, 496, 491, 485, 480, 475, 470, 465, 460, 456, 451, 446, 442, 437, 433, 428, 424, 420, 416, 412, 408, 404, 400, 396, 392, 388, 385, 381, 377, 374, 370, 367, 363, 360, 357, 354, 350, 347, 344, 341, 338, 335, 332, 329, 326, 323, 320, 318, 315, 312, 310, 307, 304, 302, 299, 297, 294, 292, 289, 287, 285, 282, 280, 278, 275, 273, 271, 269, 267, 265, 263, 261, 259];
shgTable = [9, 11, 12, 13, 13, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24];
BlurStack = function BlurStack2() {
_classCallCheck3(this, BlurStack2);
this.r = 0;
this.g = 0;
this.b = 0;
this.a = 0;
this.next = null;
};
}
});
// node_modules/canvg/lib/index.es.js
var index_es_exports = {};
__export(index_es_exports, {
AElement: () => AElement,
AnimateColorElement: () => AnimateColorElement,
AnimateElement: () => AnimateElement,
AnimateTransformElement: () => AnimateTransformElement,
BoundingBox: () => BoundingBox,
CB1: () => CB1,
CB2: () => CB2,
CB3: () => CB3,
CB4: () => CB4,
Canvg: () => Canvg,
CircleElement: () => CircleElement,
ClipPathElement: () => ClipPathElement,
DefsElement: () => DefsElement,
DescElement: () => DescElement,
Document: () => Document,
Element: () => Element,
EllipseElement: () => EllipseElement,
FeColorMatrixElement: () => FeColorMatrixElement,
FeCompositeElement: () => FeCompositeElement,
FeDropShadowElement: () => FeDropShadowElement,
FeGaussianBlurElement: () => FeGaussianBlurElement,
FeMorphologyElement: () => FeMorphologyElement,
FilterElement: () => FilterElement,
Font: () => Font,
FontElement: () => FontElement,
FontFaceElement: () => FontFaceElement,
GElement: () => GElement,
GlyphElement: () => GlyphElement,
GradientElement: () => GradientElement,
ImageElement: () => ImageElement,
LineElement: () => LineElement,
LinearGradientElement: () => LinearGradientElement,
MarkerElement: () => MarkerElement,
MaskElement: () => MaskElement,
Matrix: () => Matrix,
MissingGlyphElement: () => MissingGlyphElement,
Mouse: () => Mouse,
PSEUDO_ZERO: () => PSEUDO_ZERO,
Parser: () => Parser,
PathElement: () => PathElement,
PathParser: () => PathParser,
PatternElement: () => PatternElement,
Point: () => Point,
PolygonElement: () => PolygonElement,
PolylineElement: () => PolylineElement,
Property: () => Property,
QB1: () => QB1,
QB2: () => QB2,
QB3: () => QB3,
RadialGradientElement: () => RadialGradientElement,
RectElement: () => RectElement,
RenderedElement: () => RenderedElement,
Rotate: () => Rotate,
SVGElement: () => SVGElement,
SVGFontLoader: () => SVGFontLoader,
Scale: () => Scale,
Screen: () => Screen,
Skew: () => Skew,
SkewX: () => SkewX,
SkewY: () => SkewY,
StopElement: () => StopElement,
StyleElement: () => StyleElement,
SymbolElement: () => SymbolElement,
TRefElement: () => TRefElement,
TSpanElement: () => TSpanElement,
TextElement: () => TextElement,
TextPathElement: () => TextPathElement,
TitleElement: () => TitleElement,
Transform: () => Transform,
Translate: () => Translate,
UnknownElement: () => UnknownElement,
UseElement: () => UseElement,
ViewPort: () => ViewPort,
compressSpaces: () => compressSpaces,
default: () => index_es_default,
getSelectorSpecificity: () => getSelectorSpecificity,
normalizeAttributeName: () => normalizeAttributeName,
normalizeColor: () => normalizeColor,
parseExternalUrl: () => parseExternalUrl,
presets: () => index2,
toNumbers: () => toNumbers,
trimLeft: () => trimLeft,
trimRight: () => trimRight,
vectorMagnitude: () => vectorMagnitude,
vectorsAngle: () => vectorsAngle,
vectorsRatio: () => vectorsRatio
});
function offscreen() {
var {
DOMParser: DOMParserFallback
} = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
var preset = {
window: null,
ignoreAnimation: true,
ignoreMouse: true,
DOMParser: DOMParserFallback,
createCanvas(width, height) {
return new OffscreenCanvas(width, height);
},
createImage(url) {
return _asyncToGenerator(function* () {
var response = yield fetch(url);
var blob2 = yield response.blob();
var img = yield createImageBitmap(blob2);
return img;
})();
}
};
if (typeof DOMParser !== "undefined" || typeof DOMParserFallback === "undefined") {
Reflect.deleteProperty(preset, "DOMParser");
}
return preset;
}
function node(_ref) {
var {
DOMParser: DOMParser2,
canvas,
fetch: fetch2
} = _ref;
return {
window: null,
ignoreAnimation: true,
ignoreMouse: true,
DOMParser: DOMParser2,
fetch: fetch2,
createCanvas: canvas.createCanvas,
createImage: canvas.loadImage
};
}
function compressSpaces(str) {
return str.replace(/(?!\u3000)\s+/gm, " ");
}
function trimLeft(str) {
return str.replace(/^[\n \t]+/, "");
}
function trimRight(str) {
return str.replace(/[\n \t]+$/, "");
}
function toNumbers(str) {
var matches = (str || "").match(/-?(\d+(?:\.\d*(?:[eE][+-]?\d+)?)?|\.\d+)(?=\D|$)/gm) || [];
return matches.map(parseFloat);
}
function normalizeAttributeName(name2) {
if (allUppercase.test(name2)) {
return name2.toLowerCase();
}
return name2;
}
function parseExternalUrl(url) {
var urlMatch = /url\(('([^']+)'|"([^"]+)"|([^'")]+))\)/.exec(url) || [];
return urlMatch[2] || urlMatch[3] || urlMatch[4];
}
function normalizeColor(color2) {
if (!color2.startsWith("rgb")) {
return color2;
}
var rgbParts = 3;
var normalizedColor = color2.replace(/\d+(\.\d+)?/g, (num, isFloat) => rgbParts-- && isFloat ? String(Math.round(parseFloat(num))) : num);
return normalizedColor;
}
function findSelectorMatch(selector, regex2) {
var matches = regex2.exec(selector);
if (!matches) {
return [selector, 0];
}
return [selector.replace(regex2, " "), matches.length];
}
function getSelectorSpecificity(selector) {
var specificity = [0, 0, 0];
var currentSelector = selector.replace(/:not\(([^)]*)\)/g, " $1 ").replace(/{[\s\S]*/gm, " ");
var delta = 0;
[currentSelector, delta] = findSelectorMatch(currentSelector, attributeRegex);
specificity[1] += delta;
[currentSelector, delta] = findSelectorMatch(currentSelector, idRegex);
specificity[0] += delta;
[currentSelector, delta] = findSelectorMatch(currentSelector, classRegex);
specificity[1] += delta;
[currentSelector, delta] = findSelectorMatch(currentSelector, pseudoElementRegex);
specificity[2] += delta;
[currentSelector, delta] = findSelectorMatch(currentSelector, pseudoClassWithBracketsRegex);
specificity[1] += delta;
[currentSelector, delta] = findSelectorMatch(currentSelector, pseudoClassRegex);
specificity[1] += delta;
currentSelector = currentSelector.replace(/[*\s+>~]/g, " ").replace(/[#.]/g, " ");
[currentSelector, delta] = findSelectorMatch(currentSelector, elementRegex);
specificity[2] += delta;
return specificity.join("");
}
function vectorMagnitude(v7) {
return Math.sqrt(Math.pow(v7[0], 2) + Math.pow(v7[1], 2));
}
function vectorsRatio(u4, v7) {
return (u4[0] * v7[0] + u4[1] * v7[1]) / (vectorMagnitude(u4) * vectorMagnitude(v7));
}
function vectorsAngle(u4, v7) {
return (u4[0] * v7[1] < u4[1] * v7[0] ? -1 : 1) * Math.acos(vectorsRatio(u4, v7));
}
function CB1(t5) {
return t5 * t5 * t5;
}
function CB2(t5) {
return 3 * t5 * t5 * (1 - t5);
}
function CB3(t5) {
return 3 * t5 * (1 - t5) * (1 - t5);
}
function CB4(t5) {
return (1 - t5) * (1 - t5) * (1 - t5);
}
function QB1(t5) {
return t5 * t5;
}
function QB2(t5) {
return 2 * t5 * (1 - t5);
}
function QB3(t5) {
return (1 - t5) * (1 - t5);
}
function parseTransforms(transform) {
return compressSpaces(transform).trim().replace(/\)([a-zA-Z])/g, ") $1").replace(/\)(\s?,\s?)/g, ") ").split(/\s(?=[a-z])/);
}
function parseTransform(transform) {
var [type2, value] = transform.split("(");
return [type2.trim(), value.trim().replace(")", "")];
}
function wrapFontFamily(fontFamily) {
var trimmed = fontFamily.trim();
return /^('|")/.test(trimmed) ? trimmed : '"'.concat(trimmed, '"');
}
function prepareFontFamily(fontFamily) {
return typeof process === "undefined" ? fontFamily : fontFamily.trim().split(",").map(wrapFontFamily).join(",");
}
function prepareFontStyle(fontStyle) {
if (!fontStyle) {
return "";
}
var targetFontStyle = fontStyle.trim().toLowerCase();
switch (targetFontStyle) {
case "normal":
case "italic":
case "oblique":
case "inherit":
case "initial":
case "unset":
return targetFontStyle;
default:
if (/^oblique\s+(-|)\d+deg$/.test(targetFontStyle)) {
return targetFontStyle;
}
return "";
}
}
function prepareFontWeight(fontWeight) {
if (!fontWeight) {
return "";
}
var targetFontWeight = fontWeight.trim().toLowerCase();
switch (targetFontWeight) {
case "normal":
case "bold":
case "lighter":
case "bolder":
case "inherit":
case "initial":
case "unset":
return targetFontWeight;
default:
if (/^[\d.]+$/.test(targetFontWeight)) {
return targetFontWeight;
}
return "";
}
}
function ownKeys$2(object, enumerableOnly) {
var keys2 = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly)
symbols = symbols.filter(function(sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
keys2.push.apply(keys2, symbols);
}
return keys2;
}
function _objectSpread$2(target) {
for (var i4 = 1; i4 < arguments.length; i4++) {
var source = arguments[i4] != null ? arguments[i4] : {};
if (i4 % 2) {
ownKeys$2(Object(source), true).forEach(function(key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys$2(Object(source)).forEach(function(key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
function imGet(img, x3, y4, width, _height, rgba2) {
return img[y4 * width * 4 + x3 * 4 + rgba2];
}
function imSet(img, x3, y4, width, _height, rgba2, val) {
img[y4 * width * 4 + x3 * 4 + rgba2] = val;
}
function m3(matrix, i4, v7) {
var mi = matrix[i4];
return mi * v7;
}
function c4(a4, m1, m22, m32) {
return m1 + Math.cos(a4) * m22 + Math.sin(a4) * m32;
}
function ownKeys$1(object, enumerableOnly) {
var keys2 = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly)
symbols = symbols.filter(function(sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
keys2.push.apply(keys2, symbols);
}
return keys2;
}
function _objectSpread$1(target) {
for (var i4 = 1; i4 < arguments.length; i4++) {
var source = arguments[i4] != null ? arguments[i4] : {};
if (i4 % 2) {
ownKeys$1(Object(source), true).forEach(function(key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys$1(Object(source)).forEach(function(key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
function createCanvas(width, height) {
var canvas = document.createElement("canvas");
canvas.width = width;
canvas.height = height;
return canvas;
}
function createImage(_x) {
return _createImage.apply(this, arguments);
}
function _createImage() {
_createImage = _asyncToGenerator(function* (src) {
var anonymousCrossOrigin = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
var image = document.createElement("img");
if (anonymousCrossOrigin) {
image.crossOrigin = "Anonymous";
}
return new Promise((resolve3, reject2) => {
image.onload = () => {
resolve3(image);
};
image.onerror = (_event, _source, _lineno, _colno, error) => {
reject2(error);
};
image.src = src;
});
});
return _createImage.apply(this, arguments);
}
function ownKeys(object, enumerableOnly) {
var keys2 = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly)
symbols = symbols.filter(function(sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
keys2.push.apply(keys2, symbols);
}
return keys2;
}
function _objectSpread(target) {
for (var i4 = 1; i4 < arguments.length; i4++) {
var source = arguments[i4] != null ? arguments[i4] : {};
if (i4 % 2) {
ownKeys(Object(source), true).forEach(function(key) {
_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys(Object(source)).forEach(function(key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
var import_es_array_iterator, import_raf, import_rgbcolor, index2, allUppercase, attributeRegex, idRegex, classRegex, pseudoElementRegex, pseudoClassWithBracketsRegex, pseudoClassRegex, elementRegex, PSEUDO_ZERO, Property, ViewPort, Point, Mouse, defaultWindow, defaultFetch$1, Screen, defaultFetch, DefaultDOMParser, Parser, Translate, Rotate, Scale, Matrix, Skew, SkewX, SkewY, Transform, Element, UnknownElement, Font, BoundingBox, PathParser, RenderedElement, PathElement, GlyphElement, TextElement, TSpanElement, TextNode, SVGElement, RectElement, CircleElement, EllipseElement, LineElement, PolylineElement, PolygonElement, PatternElement, MarkerElement, DefsElement, GElement, GradientElement, LinearGradientElement, RadialGradientElement, StopElement, AnimateElement, AnimateColorElement, AnimateTransformElement, FontElement, FontFaceElement, MissingGlyphElement, TRefElement, AElement, TextPathElement, dataUriRegex, ImageElement, SymbolElement, SVGFontLoader, StyleElement, UseElement, FeColorMatrixElement, MaskElement, noop2, ClipPathElement, FilterElement, FeDropShadowElement, FeMorphologyElement, FeCompositeElement, FeGaussianBlurElement, TitleElement, DescElement, elements, Document, Canvg, index_es_default;
var init_index_es = __esm({
"node_modules/canvg/lib/index.es.js"() {
init_buffer_shim();
init_es_promise();
init_asyncToGenerator();
init_es_string_match();
init_es_string_replace();
init_es_string_starts_with();
import_es_array_iterator = __toModule(require_es_array_iterator());
init_web_dom_collections_iterator();
init_defineProperty();
init_es_array_reduce();
init_es_string_ends_with();
init_es_string_split();
import_raf = __toModule(require_raf());
init_es_string_trim();
import_rgbcolor = __toModule(require_rgbcolor());
init_es_string_includes();
init_es_array_index_of();
init_es_array_reverse();
init_SVGPathData_module();
init_es_regexp_to_string();
init_stackblur_es();
index2 = /* @__PURE__ */ Object.freeze({
__proto__: null,
offscreen,
node
});
allUppercase = /^[A-Z-]+$/;
attributeRegex = /(\[[^\]]+\])/g;
idRegex = /(#[^\s+>~.[:]+)/g;
classRegex = /(\.[^\s+>~.[:]+)/g;
pseudoElementRegex = /(::[^\s+>~.[:]+|:first-line|:first-letter|:before|:after)/gi;
pseudoClassWithBracketsRegex = /(:[\w-]+\([^)]*\))/gi;
pseudoClassRegex = /(:[^\s+>~.[:]+)/g;
elementRegex = /([^\s+>~.[:]+)/g;
PSEUDO_ZERO = 1e-8;
Property = class {
constructor(document3, name2, value) {
this.document = document3;
this.name = name2;
this.value = value;
this.isNormalizedColor = false;
}
static empty(document3) {
return new Property(document3, "EMPTY", "");
}
split() {
var separator = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : " ";
var {
document: document3,
name: name2
} = this;
return compressSpaces(this.getString()).trim().split(separator).map((value) => new Property(document3, name2, value));
}
hasValue(zeroIsValue) {
var {
value
} = this;
return value !== null && value !== "" && (zeroIsValue || value !== 0) && typeof value !== "undefined";
}
isString(regexp) {
var {
value
} = this;
var result = typeof value === "string";
if (!result || !regexp) {
return result;
}
return regexp.test(value);
}
isUrlDefinition() {
return this.isString(/^url\(/);
}
isPixels() {
if (!this.hasValue()) {
return false;
}
var asString = this.getString();
switch (true) {
case asString.endsWith("px"):
case /^[0-9]+$/.test(asString):
return true;
default:
return false;
}
}
setValue(value) {
this.value = value;
return this;
}
getValue(def) {
if (typeof def === "undefined" || this.hasValue()) {
return this.value;
}
return def;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment