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 __esm = (fn, res) => function __init() { return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; }; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var __accessCheck = (obj, member, msg) => { if (!member.has(obj)) throw TypeError("Cannot " + msg); }; var __privateGet = (obj, member, getter) => { __accessCheck(obj, member, "read from private field"); return getter ? getter.call(obj) : member.get(obj); }; var __privateAdd = (obj, member, value) => { if (member.has(obj)) throw TypeError("Cannot add the same private member more than once"); member instanceof WeakSet ? member.add(obj) : member.set(obj, value); }; var __privateSet = (obj, member, value, setter) => { __accessCheck(obj, member, "write to private field"); setter ? setter.call(obj, value) : member.set(obj, value); return value; }; // ../../node_modules/.pnpm/tslib@1.14.1/node_modules/tslib/tslib.js var require_tslib = __commonJS({ "../../node_modules/.pnpm/tslib@1.14.1/node_modules/tslib/tslib.js"(exports, module2) { var __extends; var __assign; var __rest; var __decorate; var __param; var __metadata; var __awaiter; var __generator; var __exportStar; var __values; var __read; var __spread; var __spreadArrays; var __await; var __asyncGenerator; var __asyncDelegator; var __asyncValues; var __makeTemplateObject; var __importStar; var __importDefault; var __classPrivateFieldGet; var __classPrivateFieldSet; var __createBinding; (function(factory) { var root = typeof global === "object" ? global : typeof self === "object" ? self : typeof this === "object" ? this : {}; if (typeof define === "function" && define.amd) { define("tslib", ["exports"], function(exports2) { factory(createExporter(root, createExporter(exports2))); }); } else if (typeof module2 === "object" && typeof module2.exports === "object") { factory(createExporter(root, createExporter(module2.exports))); } else { factory(createExporter(root)); } function createExporter(exports2, previous) { if (exports2 !== root) { if (typeof Object.create === "function") { Object.defineProperty(exports2, "__esModule", { value: true }); } else { exports2.__esModule = true; } } return function(id, v) { return exports2[id] = previous ? previous(id, v) : v; }; } })(function(exporter) { var extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d, b) { d.__proto__ = b; } || function(d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; __extends = function(d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; __assign = Object.assign || function(t2) { for (var s2, i2 = 1, n = arguments.length; i2 < n; i2++) { s2 = arguments[i2]; for (var p in s2) if (Object.prototype.hasOwnProperty.call(s2, p)) t2[p] = s2[p]; } return t2; }; __rest = function(s2, e2) { var t2 = {}; for (var p in s2) if (Object.prototype.hasOwnProperty.call(s2, p) && e2.indexOf(p) < 0) t2[p] = s2[p]; if (s2 != null && typeof Object.getOwnPropertySymbols === "function") for (var i2 = 0, p = Object.getOwnPropertySymbols(s2); i2 < p.length; i2++) { if (e2.indexOf(p[i2]) < 0 && Object.prototype.propertyIsEnumerable.call(s2, p[i2])) t2[p[i2]] = s2[p[i2]]; } return t2; }; __decorate = function(decorators, target, key, desc) { var c2 = arguments.length, r3 = c2 < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r3 = Reflect.decorate(decorators, target, key, desc); else for (var i2 = decorators.length - 1; i2 >= 0; i2--) if (d = decorators[i2]) r3 = (c2 < 3 ? d(r3) : c2 > 3 ? d(target, key, r3) : d(target, key)) || r3; return c2 > 3 && r3 && Object.defineProperty(target, key, r3), r3; }; __param = function(paramIndex, decorator) { return function(target, key) { decorator(target, key, paramIndex); }; }; __metadata = function(metadataKey, metadataValue) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); }; __awaiter = function(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e2) { reject(e2); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e2) { reject(e2); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; __generator = function(thisArg, body) { var _ = { label: 0, sent: function() { if (t2[0] & 1) throw t2[1]; return t2[1]; }, trys: [], ops: [] }, f4, y, t2, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function(v) { return step([n, v]); }; } function step(op) { if (f4) throw new TypeError("Generator is already executing."); while (_) try { if (f4 = 1, y && (t2 = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t2 = y["return"]) && t2.call(y), 0) : y.next) && !(t2 = t2.call(y, op[1])).done) return t2; if (y = 0, t2) op = [op[0] & 2, t2.value]; switch (op[0]) { case 0: case 1: t2 = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t2[1]) { _.label = t2[1]; t2 = op; break; } if (t2 && _.label < t2[2]) { _.label = t2[2]; _.ops.push(op); break; } if (t2[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e2) { op = [6, e2]; y = 0; } finally { f4 = t2 = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; __createBinding = function(o2, m2, k, k2) { if (k2 === void 0) k2 = k; o2[k2] = m2[k]; }; __exportStar = function(m2, exports2) { for (var p in m2) if (p !== "default" && !exports2.hasOwnProperty(p)) exports2[p] = m2[p]; }; __values = function(o2) { var s2 = typeof Symbol === "function" && Symbol.iterator, m2 = s2 && o2[s2], i2 = 0; if (m2) return m2.call(o2); if (o2 && typeof o2.length === "number") return { next: function() { if (o2 && i2 >= o2.length) o2 = void 0; return { value: o2 && o2[i2++], done: !o2 }; } }; throw new TypeError(s2 ? "Object is not iterable." : "Symbol.iterator is not defined."); }; __read = function(o2, n) { var m2 = typeof Symbol === "function" && o2[Symbol.iterator]; if (!m2) return o2; var i2 = m2.call(o2), r3, ar = [], e2; try { while ((n === void 0 || n-- > 0) && !(r3 = i2.next()).done) ar.push(r3.value); } catch (error) { e2 = { error }; } finally { try { if (r3 && !r3.done && (m2 = i2["return"])) m2.call(i2); } finally { if (e2) throw e2.error; } } return ar; }; __spread = function() { for (var ar = [], i2 = 0; i2 < arguments.length; i2++) ar = ar.concat(__read(arguments[i2])); return ar; }; __spreadArrays = function() { for (var s2 = 0, i2 = 0, il = arguments.length; i2 < il; i2++) s2 += arguments[i2].length; for (var r3 = Array(s2), k = 0, i2 = 0; i2 < il; i2++) for (var a = arguments[i2], j = 0, jl = a.length; j < jl; j++, k++) r3[k] = a[j]; return r3; }; __await = function(v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }; __asyncGenerator = function(thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i2, q = []; return i2 = {}, verb("next"), verb("throw"), verb("return"), i2[Symbol.asyncIterator] = function() { return this; }, i2; function verb(n) { if (g[n]) i2[n] = function(v) { return new Promise(function(a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } function resume(n, v) { try { step(g[n](v)); } catch (e2) { settle(q[0][3], e2); } } function step(r3) { r3.value instanceof __await ? Promise.resolve(r3.value.v).then(fulfill, reject) : settle(q[0][2], r3); } function fulfill(value) { resume("next", value); } function reject(value) { resume("throw", value); } function settle(f4, v) { if (f4(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } }; __asyncDelegator = function(o2) { var i2, p; return i2 = {}, verb("next"), verb("throw", function(e2) { throw e2; }), verb("return"), i2[Symbol.iterator] = function() { return this; }, i2; function verb(n, f4) { i2[n] = o2[n] ? function(v) { return (p = !p) ? { value: __await(o2[n](v)), done: n === "return" } : f4 ? f4(v) : v; } : f4; } }; __asyncValues = function(o2) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m2 = o2[Symbol.asyncIterator], i2; return m2 ? m2.call(o2) : (o2 = typeof __values === "function" ? __values(o2) : o2[Symbol.iterator](), i2 = {}, verb("next"), verb("throw"), verb("return"), i2[Symbol.asyncIterator] = function() { return this; }, i2); function verb(n) { i2[n] = o2[n] && function(v) { return new Promise(function(resolve, reject) { v = o2[n](v), settle(resolve, reject, v.done, v.value); }); }; } function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v2) { resolve({ value: v2, done: d }); }, reject); } }; __makeTemplateObject = function(cooked, raw) { if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } return cooked; }; __importStar = function(mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) { for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; } result["default"] = mod; return result; }; __importDefault = function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; __classPrivateFieldGet = function(receiver, privateMap) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return privateMap.get(receiver); }; __classPrivateFieldSet = function(receiver, privateMap, value) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to set private field on non-instance"); } privateMap.set(receiver, value); return value; }; exporter("__extends", __extends); exporter("__assign", __assign); exporter("__rest", __rest); exporter("__decorate", __decorate); exporter("__param", __param); exporter("__metadata", __metadata); exporter("__awaiter", __awaiter); exporter("__generator", __generator); exporter("__exportStar", __exportStar); exporter("__createBinding", __createBinding); exporter("__values", __values); exporter("__read", __read); exporter("__spread", __spread); exporter("__spreadArrays", __spreadArrays); exporter("__await", __await); exporter("__asyncGenerator", __asyncGenerator); exporter("__asyncDelegator", __asyncDelegator); exporter("__asyncValues", __asyncValues); exporter("__makeTemplateObject", __makeTemplateObject); exporter("__importStar", __importStar); exporter("__importDefault", __importDefault); exporter("__classPrivateFieldGet", __classPrivateFieldGet); exporter("__classPrivateFieldSet", __classPrivateFieldSet); }); } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/async.js var require_async = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/async.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); function forget(promise) { void promise.then(null, function(e2) { console.error(e2); }); } exports.forget = forget; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/node.js var require_node = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/node.js"(exports, module2) { Object.defineProperty(exports, "__esModule", { value: true }); function isNodeEnv() { return Object.prototype.toString.call(typeof process !== "undefined" ? process : 0) === "[object process]"; } exports.isNodeEnv = isNodeEnv; function dynamicRequire(mod, request) { return mod.require(request); } exports.dynamicRequire = dynamicRequire; function loadModule(moduleName) { var mod; try { mod = dynamicRequire(module2, moduleName); } catch (e2) { } try { var cwd = dynamicRequire(module2, "process").cwd; mod = dynamicRequire(module2, cwd() + "/node_modules/" + moduleName); } catch (e2) { } return mod; } exports.loadModule = loadModule; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/global.js var require_global = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/global.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var node_1 = require_node(); var fallbackGlobalObject = {}; function getGlobalObject() { return node_1.isNodeEnv() ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : fallbackGlobalObject; } exports.getGlobalObject = getGlobalObject; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/is.js var require_is = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/is.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); function isError(wat) { switch (Object.prototype.toString.call(wat)) { case "[object Error]": return true; case "[object Exception]": return true; case "[object DOMException]": return true; default: return isInstanceOf(wat, Error); } } exports.isError = isError; function isErrorEvent(wat) { return Object.prototype.toString.call(wat) === "[object ErrorEvent]"; } exports.isErrorEvent = isErrorEvent; function isDOMError(wat) { return Object.prototype.toString.call(wat) === "[object DOMError]"; } exports.isDOMError = isDOMError; function isDOMException(wat) { return Object.prototype.toString.call(wat) === "[object DOMException]"; } exports.isDOMException = isDOMException; function isString(wat) { return Object.prototype.toString.call(wat) === "[object String]"; } exports.isString = isString; function isPrimitive(wat) { return wat === null || typeof wat !== "object" && typeof wat !== "function"; } exports.isPrimitive = isPrimitive; function isPlainObject(wat) { return Object.prototype.toString.call(wat) === "[object Object]"; } exports.isPlainObject = isPlainObject; function isEvent(wat) { return typeof Event !== "undefined" && isInstanceOf(wat, Event); } exports.isEvent = isEvent; function isElement(wat) { return typeof Element !== "undefined" && isInstanceOf(wat, Element); } exports.isElement = isElement; function isRegExp(wat) { return Object.prototype.toString.call(wat) === "[object RegExp]"; } exports.isRegExp = isRegExp; function isThenable(wat) { return Boolean(wat && wat.then && typeof wat.then === "function"); } exports.isThenable = isThenable; function isSyntheticEvent(wat) { return isPlainObject(wat) && "nativeEvent" in wat && "preventDefault" in wat && "stopPropagation" in wat; } exports.isSyntheticEvent = isSyntheticEvent; function isInstanceOf(wat, base) { try { return wat instanceof base; } catch (_e) { return false; } } exports.isInstanceOf = isInstanceOf; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/browser.js var require_browser = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/browser.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var global_1 = require_global(); var is_1 = require_is(); function htmlTreeAsString(elem, keyAttrs) { try { var currentElem = elem; var MAX_TRAVERSE_HEIGHT = 5; var MAX_OUTPUT_LEN = 80; var out = []; var height = 0; var len = 0; var separator = " > "; var sepLength = separator.length; var nextStr = void 0; while (currentElem && height++ < MAX_TRAVERSE_HEIGHT) { nextStr = _htmlElementAsString(currentElem, keyAttrs); if (nextStr === "html" || height > 1 && len + out.length * sepLength + nextStr.length >= MAX_OUTPUT_LEN) { break; } out.push(nextStr); len += nextStr.length; currentElem = currentElem.parentNode; } return out.reverse().join(separator); } catch (_oO) { return ""; } } exports.htmlTreeAsString = htmlTreeAsString; function _htmlElementAsString(el, keyAttrs) { var _a4, _b; var elem = el; var out = []; var className; var classes; var key; var attr; var i2; if (!elem || !elem.tagName) { return ""; } out.push(elem.tagName.toLowerCase()); var keyAttrPairs = ((_a4 = keyAttrs) === null || _a4 === void 0 ? void 0 : _a4.length) ? keyAttrs.filter(function(keyAttr) { return elem.getAttribute(keyAttr); }).map(function(keyAttr) { return [keyAttr, elem.getAttribute(keyAttr)]; }) : null; if ((_b = keyAttrPairs) === null || _b === void 0 ? void 0 : _b.length) { keyAttrPairs.forEach(function(keyAttrPair) { out.push("[" + keyAttrPair[0] + '="' + keyAttrPair[1] + '"]'); }); } else { if (elem.id) { out.push("#" + elem.id); } className = elem.className; if (className && is_1.isString(className)) { classes = className.split(/\s+/); for (i2 = 0; i2 < classes.length; i2++) { out.push("." + classes[i2]); } } } var allowedAttrs = ["type", "name", "title", "alt"]; for (i2 = 0; i2 < allowedAttrs.length; i2++) { key = allowedAttrs[i2]; attr = elem.getAttribute(key); if (attr) { out.push("[" + key + '="' + attr + '"]'); } } return out.join(""); } function getLocationHref() { var global2 = global_1.getGlobalObject(); try { return global2.document.location.href; } catch (oO) { return ""; } } exports.getLocationHref = getLocationHref; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/polyfill.js var require_polyfill = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/polyfill.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.setPrototypeOf = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties); function setProtoOf(obj, proto) { obj.__proto__ = proto; return obj; } function mixinProperties(obj, proto) { for (var prop in proto) { if (!Object.prototype.hasOwnProperty.call(obj, prop)) { obj[prop] = proto[prop]; } } return obj; } } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/error.js var require_error = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/error.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var polyfill_1 = require_polyfill(); var SentryError = function(_super) { tslib_1.__extends(SentryError2, _super); function SentryError2(message) { var _newTarget = this.constructor; var _this = _super.call(this, message) || this; _this.message = message; _this.name = _newTarget.prototype.constructor.name; polyfill_1.setPrototypeOf(_this, _newTarget.prototype); return _this; } return SentryError2; }(Error); exports.SentryError = SentryError; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/dsn.js var require_dsn = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/dsn.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var error_1 = require_error(); var DSN_REGEX = /^(?:(\w+):)\/\/(?:(\w+)(?::(\w+))?@)([\w.-]+)(?::(\d+))?\/(.+)/; var ERROR_MESSAGE = "Invalid Dsn"; var Dsn = function() { function Dsn2(from) { if (typeof from === "string") { this._fromString(from); } else { this._fromComponents(from); } this._validate(); } Dsn2.prototype.toString = function(withPassword) { if (withPassword === void 0) { withPassword = false; } var _a4 = this, host = _a4.host, path5 = _a4.path, pass = _a4.pass, port = _a4.port, projectId = _a4.projectId, protocol = _a4.protocol, publicKey = _a4.publicKey; return protocol + "://" + publicKey + (withPassword && pass ? ":" + pass : "") + ("@" + host + (port ? ":" + port : "") + "/" + (path5 ? path5 + "/" : path5) + projectId); }; Dsn2.prototype._fromString = function(str) { var match = DSN_REGEX.exec(str); if (!match) { throw new error_1.SentryError(ERROR_MESSAGE); } var _a4 = tslib_1.__read(match.slice(1), 6), protocol = _a4[0], publicKey = _a4[1], _b = _a4[2], pass = _b === void 0 ? "" : _b, host = _a4[3], _c = _a4[4], port = _c === void 0 ? "" : _c, lastPath = _a4[5]; var path5 = ""; var projectId = lastPath; var split = projectId.split("/"); if (split.length > 1) { path5 = split.slice(0, -1).join("/"); projectId = split.pop(); } if (projectId) { var projectMatch = projectId.match(/^\d+/); if (projectMatch) { projectId = projectMatch[0]; } } this._fromComponents({ host, pass, path: path5, projectId, port, protocol, publicKey }); }; Dsn2.prototype._fromComponents = function(components) { if ("user" in components && !("publicKey" in components)) { components.publicKey = components.user; } this.user = components.publicKey || ""; this.protocol = components.protocol; this.publicKey = components.publicKey || ""; this.pass = components.pass || ""; this.host = components.host; this.port = components.port || ""; this.path = components.path || ""; this.projectId = components.projectId; }; Dsn2.prototype._validate = function() { var _this = this; ["protocol", "publicKey", "host", "projectId"].forEach(function(component) { if (!_this[component]) { throw new error_1.SentryError(ERROR_MESSAGE + ": " + component + " missing"); } }); if (!this.projectId.match(/^\d+$/)) { throw new error_1.SentryError(ERROR_MESSAGE + ": Invalid projectId " + this.projectId); } if (this.protocol !== "http" && this.protocol !== "https") { throw new error_1.SentryError(ERROR_MESSAGE + ": Invalid protocol " + this.protocol); } if (this.port && isNaN(parseInt(this.port, 10))) { throw new error_1.SentryError(ERROR_MESSAGE + ": Invalid port " + this.port); } }; return Dsn2; }(); exports.Dsn = Dsn; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/logger.js var require_logger = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/logger.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var global_1 = require_global(); var global2 = global_1.getGlobalObject(); var PREFIX = "Sentry Logger "; function consoleSandbox(callback) { var global3 = global_1.getGlobalObject(); var levels = ["debug", "info", "warn", "error", "log", "assert"]; if (!("console" in global3)) { return callback(); } var originalConsole = global3.console; var wrappedLevels = {}; levels.forEach(function(level) { if (level in global3.console && originalConsole[level].__sentry_original__) { wrappedLevels[level] = originalConsole[level]; originalConsole[level] = originalConsole[level].__sentry_original__; } }); var result = callback(); Object.keys(wrappedLevels).forEach(function(level) { originalConsole[level] = wrappedLevels[level]; }); return result; } exports.consoleSandbox = consoleSandbox; var Logger = function() { function Logger2() { this._enabled = false; } Logger2.prototype.disable = function() { this._enabled = false; }; Logger2.prototype.enable = function() { this._enabled = true; }; Logger2.prototype.log = function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } if (!this._enabled) { return; } consoleSandbox(function() { global2.console.log(PREFIX + "[Log]: " + args.join(" ")); }); }; Logger2.prototype.warn = function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } if (!this._enabled) { return; } consoleSandbox(function() { global2.console.warn(PREFIX + "[Warn]: " + args.join(" ")); }); }; Logger2.prototype.error = function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } if (!this._enabled) { return; } consoleSandbox(function() { global2.console.error(PREFIX + "[Error]: " + args.join(" ")); }); }; return Logger2; }(); global2.__SENTRY__ = global2.__SENTRY__ || {}; var logger = global2.__SENTRY__.logger || (global2.__SENTRY__.logger = new Logger()); exports.logger = logger; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/memo.js var require_memo = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/memo.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var Memo = function() { function Memo2() { this._hasWeakSet = typeof WeakSet === "function"; this._inner = this._hasWeakSet ? /* @__PURE__ */ new WeakSet() : []; } Memo2.prototype.memoize = function(obj) { if (this._hasWeakSet) { if (this._inner.has(obj)) { return true; } this._inner.add(obj); return false; } for (var i2 = 0; i2 < this._inner.length; i2++) { var value = this._inner[i2]; if (value === obj) { return true; } } this._inner.push(obj); return false; }; Memo2.prototype.unmemoize = function(obj) { if (this._hasWeakSet) { this._inner.delete(obj); } else { for (var i2 = 0; i2 < this._inner.length; i2++) { if (this._inner[i2] === obj) { this._inner.splice(i2, 1); break; } } } }; return Memo2; }(); exports.Memo = Memo; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/stacktrace.js var require_stacktrace = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/stacktrace.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var defaultFunctionName = ""; function getFunctionName(fn) { try { if (!fn || typeof fn !== "function") { return defaultFunctionName; } return fn.name || defaultFunctionName; } catch (e2) { return defaultFunctionName; } } exports.getFunctionName = getFunctionName; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/string.js var require_string = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/string.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var is_1 = require_is(); function truncate(str, max) { if (max === void 0) { max = 0; } if (typeof str !== "string" || max === 0) { return str; } return str.length <= max ? str : str.substr(0, max) + "..."; } exports.truncate = truncate; function snipLine(line, colno) { var newLine = line; var ll = newLine.length; if (ll <= 150) { return newLine; } if (colno > ll) { colno = ll; } var start = Math.max(colno - 60, 0); if (start < 5) { start = 0; } var end = Math.min(start + 140, ll); if (end > ll - 5) { end = ll; } if (end === ll) { start = Math.max(end - 140, 0); } newLine = newLine.slice(start, end); if (start > 0) { newLine = "'{snip} " + newLine; } if (end < ll) { newLine += " {snip}"; } return newLine; } exports.snipLine = snipLine; function safeJoin(input, delimiter) { if (!Array.isArray(input)) { return ""; } var output = []; for (var i2 = 0; i2 < input.length; i2++) { var value = input[i2]; try { output.push(String(value)); } catch (e2) { output.push("[value cannot be serialized]"); } } return output.join(delimiter); } exports.safeJoin = safeJoin; function isMatchingPattern(value, pattern) { if (!is_1.isString(value)) { return false; } if (is_1.isRegExp(pattern)) { return pattern.test(value); } if (typeof pattern === "string") { return value.indexOf(pattern) !== -1; } return false; } exports.isMatchingPattern = isMatchingPattern; function escapeStringForRegex(regexString) { return regexString.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d"); } exports.escapeStringForRegex = escapeStringForRegex; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/object.js var require_object = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/object.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var browser_1 = require_browser(); var is_1 = require_is(); var memo_1 = require_memo(); var stacktrace_1 = require_stacktrace(); var string_1 = require_string(); function fill(source2, name, replacementFactory) { if (!(name in source2)) { return; } var original = source2[name]; var wrapped = replacementFactory(original); if (typeof wrapped === "function") { try { wrapped.prototype = wrapped.prototype || {}; Object.defineProperties(wrapped, { __sentry_original__: { enumerable: false, value: original } }); } catch (_Oo) { } } source2[name] = wrapped; } exports.fill = fill; function urlEncode(object) { return Object.keys(object).map(function(key) { return encodeURIComponent(key) + "=" + encodeURIComponent(object[key]); }).join("&"); } exports.urlEncode = urlEncode; function getWalkSource(value) { if (is_1.isError(value)) { var error = value; var err = { message: error.message, name: error.name, stack: error.stack }; for (var i2 in error) { if (Object.prototype.hasOwnProperty.call(error, i2)) { err[i2] = error[i2]; } } return err; } if (is_1.isEvent(value)) { var event_1 = value; var source2 = {}; source2.type = event_1.type; try { source2.target = is_1.isElement(event_1.target) ? browser_1.htmlTreeAsString(event_1.target) : Object.prototype.toString.call(event_1.target); } catch (_oO) { source2.target = ""; } try { source2.currentTarget = is_1.isElement(event_1.currentTarget) ? browser_1.htmlTreeAsString(event_1.currentTarget) : Object.prototype.toString.call(event_1.currentTarget); } catch (_oO) { source2.currentTarget = ""; } if (typeof CustomEvent !== "undefined" && is_1.isInstanceOf(value, CustomEvent)) { source2.detail = event_1.detail; } for (var attr in event_1) { if (Object.prototype.hasOwnProperty.call(event_1, attr)) { source2[attr] = event_1[attr]; } } return source2; } return value; } function utf8Length(value) { return ~-encodeURI(value).split(/%..|./).length; } function jsonSize(value) { return utf8Length(JSON.stringify(value)); } function normalizeToSize(object, depth, maxSize) { if (depth === void 0) { depth = 3; } if (maxSize === void 0) { maxSize = 100 * 1024; } var serialized = normalize(object, depth); if (jsonSize(serialized) > maxSize) { return normalizeToSize(object, depth - 1, maxSize); } return serialized; } exports.normalizeToSize = normalizeToSize; function serializeValue(value) { var type = Object.prototype.toString.call(value); if (typeof value === "string") { return value; } if (type === "[object Object]") { return "[Object]"; } if (type === "[object Array]") { return "[Array]"; } var normalized = normalizeValue(value); return is_1.isPrimitive(normalized) ? normalized : type; } function normalizeValue(value, key) { if (key === "domain" && value && typeof value === "object" && value._events) { return "[Domain]"; } if (key === "domainEmitter") { return "[DomainEmitter]"; } if (typeof global !== "undefined" && value === global) { return "[Global]"; } if (typeof window !== "undefined" && value === window) { return "[Window]"; } if (typeof document !== "undefined" && value === document) { return "[Document]"; } if (is_1.isSyntheticEvent(value)) { return "[SyntheticEvent]"; } if (typeof value === "number" && value !== value) { return "[NaN]"; } if (value === void 0) { return "[undefined]"; } if (typeof value === "function") { return "[Function: " + stacktrace_1.getFunctionName(value) + "]"; } if (typeof value === "symbol") { return "[" + String(value) + "]"; } if (typeof value === "bigint") { return "[BigInt: " + String(value) + "]"; } return value; } function walk(key, value, depth, memo) { if (depth === void 0) { depth = Infinity; } if (memo === void 0) { memo = new memo_1.Memo(); } if (depth === 0) { return serializeValue(value); } if (value !== null && value !== void 0 && typeof value.toJSON === "function") { return value.toJSON(); } var normalized = normalizeValue(value, key); if (is_1.isPrimitive(normalized)) { return normalized; } var source2 = getWalkSource(value); var acc = Array.isArray(value) ? [] : {}; if (memo.memoize(value)) { return "[Circular ~]"; } for (var innerKey in source2) { if (!Object.prototype.hasOwnProperty.call(source2, innerKey)) { continue; } acc[innerKey] = walk(innerKey, source2[innerKey], depth - 1, memo); } memo.unmemoize(value); return acc; } exports.walk = walk; function normalize(input, depth) { try { return JSON.parse(JSON.stringify(input, function(key, value) { return walk(key, value, depth); })); } catch (_oO) { return "**non-serializable**"; } } exports.normalize = normalize; function extractExceptionKeysForMessage(exception, maxLength) { if (maxLength === void 0) { maxLength = 40; } var keys = Object.keys(getWalkSource(exception)); keys.sort(); if (!keys.length) { return "[object has no keys]"; } if (keys[0].length >= maxLength) { return string_1.truncate(keys[0], maxLength); } for (var includedKeys = keys.length; includedKeys > 0; includedKeys--) { var serialized = keys.slice(0, includedKeys).join(", "); if (serialized.length > maxLength) { continue; } if (includedKeys === keys.length) { return serialized; } return string_1.truncate(serialized, maxLength); } return ""; } exports.extractExceptionKeysForMessage = extractExceptionKeysForMessage; function dropUndefinedKeys(val) { var e_1, _a4; if (is_1.isPlainObject(val)) { var obj = val; var rv = {}; try { for (var _b = tslib_1.__values(Object.keys(obj)), _c = _b.next(); !_c.done; _c = _b.next()) { var key = _c.value; if (typeof obj[key] !== "undefined") { rv[key] = dropUndefinedKeys(obj[key]); } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a4 = _b.return)) _a4.call(_b); } finally { if (e_1) throw e_1.error; } } return rv; } if (Array.isArray(val)) { return val.map(dropUndefinedKeys); } return val; } exports.dropUndefinedKeys = dropUndefinedKeys; function objectify(wat) { var objectified; switch (true) { case (wat === void 0 || wat === null): objectified = new String(wat); break; case (typeof wat === "symbol" || typeof wat === "bigint"): objectified = Object(wat); break; case is_1.isPrimitive(wat): objectified = new wat.constructor(wat); break; default: objectified = wat; break; } return objectified; } exports.objectify = objectify; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/supports.js var require_supports = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/supports.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var global_1 = require_global(); var logger_1 = require_logger(); function supportsErrorEvent() { try { new ErrorEvent(""); return true; } catch (e2) { return false; } } exports.supportsErrorEvent = supportsErrorEvent; function supportsDOMError() { try { new DOMError(""); return true; } catch (e2) { return false; } } exports.supportsDOMError = supportsDOMError; function supportsDOMException() { try { new DOMException(""); return true; } catch (e2) { return false; } } exports.supportsDOMException = supportsDOMException; function supportsFetch() { if (!("fetch" in global_1.getGlobalObject())) { return false; } try { new Headers(); new Request(""); new Response(); return true; } catch (e2) { return false; } } exports.supportsFetch = supportsFetch; function isNativeFetch(func) { return func && /^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(func.toString()); } exports.isNativeFetch = isNativeFetch; function supportsNativeFetch() { if (!supportsFetch()) { return false; } var global2 = global_1.getGlobalObject(); if (isNativeFetch(global2.fetch)) { return true; } var result = false; var doc = global2.document; if (doc && typeof doc.createElement === "function") { try { var sandbox = doc.createElement("iframe"); sandbox.hidden = true; doc.head.appendChild(sandbox); if (sandbox.contentWindow && sandbox.contentWindow.fetch) { result = isNativeFetch(sandbox.contentWindow.fetch); } doc.head.removeChild(sandbox); } catch (err) { logger_1.logger.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ", err); } } return result; } exports.supportsNativeFetch = supportsNativeFetch; function supportsReportingObserver() { return "ReportingObserver" in global_1.getGlobalObject(); } exports.supportsReportingObserver = supportsReportingObserver; function supportsReferrerPolicy() { if (!supportsFetch()) { return false; } try { new Request("_", { referrerPolicy: "origin" }); return true; } catch (e2) { return false; } } exports.supportsReferrerPolicy = supportsReferrerPolicy; function supportsHistory() { var global2 = global_1.getGlobalObject(); var chrome = global2.chrome; var isChromePackagedApp = chrome && chrome.app && chrome.app.runtime; var hasHistoryApi = "history" in global2 && !!global2.history.pushState && !!global2.history.replaceState; return !isChromePackagedApp && hasHistoryApi; } exports.supportsHistory = supportsHistory; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/instrument.js var require_instrument = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/instrument.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var global_1 = require_global(); var is_1 = require_is(); var logger_1 = require_logger(); var object_1 = require_object(); var stacktrace_1 = require_stacktrace(); var supports_1 = require_supports(); var global2 = global_1.getGlobalObject(); var handlers = {}; var instrumented = {}; function instrument(type) { if (instrumented[type]) { return; } instrumented[type] = true; switch (type) { case "console": instrumentConsole(); break; case "dom": instrumentDOM(); break; case "xhr": instrumentXHR(); break; case "fetch": instrumentFetch(); break; case "history": instrumentHistory(); break; case "error": instrumentError(); break; case "unhandledrejection": instrumentUnhandledRejection(); break; default: logger_1.logger.warn("unknown instrumentation type:", type); } } function addInstrumentationHandler(handler) { if (!handler || typeof handler.type !== "string" || typeof handler.callback !== "function") { return; } handlers[handler.type] = handlers[handler.type] || []; handlers[handler.type].push(handler.callback); instrument(handler.type); } exports.addInstrumentationHandler = addInstrumentationHandler; function triggerHandlers(type, data) { var e_1, _a4; if (!type || !handlers[type]) { return; } try { for (var _b = tslib_1.__values(handlers[type] || []), _c = _b.next(); !_c.done; _c = _b.next()) { var handler = _c.value; try { handler(data); } catch (e2) { logger_1.logger.error("Error while triggering instrumentation handler.\nType: " + type + "\nName: " + stacktrace_1.getFunctionName(handler) + "\nError: " + e2); } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a4 = _b.return)) _a4.call(_b); } finally { if (e_1) throw e_1.error; } } } function instrumentConsole() { if (!("console" in global2)) { return; } ["debug", "info", "warn", "error", "log", "assert"].forEach(function(level) { if (!(level in global2.console)) { return; } object_1.fill(global2.console, level, function(originalConsoleLevel) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } triggerHandlers("console", { args, level }); if (originalConsoleLevel) { Function.prototype.apply.call(originalConsoleLevel, global2.console, args); } }; }); }); } function instrumentFetch() { if (!supports_1.supportsNativeFetch()) { return; } object_1.fill(global2, "fetch", function(originalFetch) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var handlerData = { args, fetchData: { method: getFetchMethod(args), url: getFetchUrl(args) }, startTimestamp: Date.now() }; triggerHandlers("fetch", tslib_1.__assign({}, handlerData)); return originalFetch.apply(global2, args).then(function(response) { triggerHandlers("fetch", tslib_1.__assign(tslib_1.__assign({}, handlerData), { endTimestamp: Date.now(), response })); return response; }, function(error) { triggerHandlers("fetch", tslib_1.__assign(tslib_1.__assign({}, handlerData), { endTimestamp: Date.now(), error })); throw error; }); }; }); } function getFetchMethod(fetchArgs) { if (fetchArgs === void 0) { fetchArgs = []; } if ("Request" in global2 && is_1.isInstanceOf(fetchArgs[0], Request) && fetchArgs[0].method) { return String(fetchArgs[0].method).toUpperCase(); } if (fetchArgs[1] && fetchArgs[1].method) { return String(fetchArgs[1].method).toUpperCase(); } return "GET"; } function getFetchUrl(fetchArgs) { if (fetchArgs === void 0) { fetchArgs = []; } if (typeof fetchArgs[0] === "string") { return fetchArgs[0]; } if ("Request" in global2 && is_1.isInstanceOf(fetchArgs[0], Request)) { return fetchArgs[0].url; } return String(fetchArgs[0]); } function instrumentXHR() { if (!("XMLHttpRequest" in global2)) { return; } var requestKeys = []; var requestValues = []; var xhrproto = XMLHttpRequest.prototype; object_1.fill(xhrproto, "open", function(originalOpen) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var xhr = this; var url = args[1]; xhr.__sentry_xhr__ = { method: is_1.isString(args[0]) ? args[0].toUpperCase() : args[0], url: args[1] }; if (is_1.isString(url) && xhr.__sentry_xhr__.method === "POST" && url.match(/sentry_key/)) { xhr.__sentry_own_request__ = true; } var onreadystatechangeHandler = function() { if (xhr.readyState === 4) { try { if (xhr.__sentry_xhr__) { xhr.__sentry_xhr__.status_code = xhr.status; } } catch (e2) { } try { var requestPos = requestKeys.indexOf(xhr); if (requestPos !== -1) { requestKeys.splice(requestPos); var args_1 = requestValues.splice(requestPos)[0]; if (xhr.__sentry_xhr__ && args_1[0] !== void 0) { xhr.__sentry_xhr__.body = args_1[0]; } } } catch (e2) { } triggerHandlers("xhr", { args, endTimestamp: Date.now(), startTimestamp: Date.now(), xhr }); } }; if ("onreadystatechange" in xhr && typeof xhr.onreadystatechange === "function") { object_1.fill(xhr, "onreadystatechange", function(original) { return function() { var readyStateArgs = []; for (var _i2 = 0; _i2 < arguments.length; _i2++) { readyStateArgs[_i2] = arguments[_i2]; } onreadystatechangeHandler(); return original.apply(xhr, readyStateArgs); }; }); } else { xhr.addEventListener("readystatechange", onreadystatechangeHandler); } return originalOpen.apply(xhr, args); }; }); object_1.fill(xhrproto, "send", function(originalSend) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } requestKeys.push(this); requestValues.push(args); triggerHandlers("xhr", { args, startTimestamp: Date.now(), xhr: this }); return originalSend.apply(this, args); }; }); } var lastHref; function instrumentHistory() { if (!supports_1.supportsHistory()) { return; } var oldOnPopState = global2.onpopstate; global2.onpopstate = function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var to = global2.location.href; var from = lastHref; lastHref = to; triggerHandlers("history", { from, to }); if (oldOnPopState) { try { return oldOnPopState.apply(this, args); } catch (_oO) { } } }; function historyReplacementFunction(originalHistoryFunction) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var url = args.length > 2 ? args[2] : void 0; if (url) { var from = lastHref; var to = String(url); lastHref = to; triggerHandlers("history", { from, to }); } return originalHistoryFunction.apply(this, args); }; } object_1.fill(global2.history, "pushState", historyReplacementFunction); object_1.fill(global2.history, "replaceState", historyReplacementFunction); } var debounceDuration = 1e3; var debounceTimerID; var lastCapturedEvent; function shouldShortcircuitPreviousDebounce(previous, current) { if (!previous) { return true; } if (previous.type !== current.type) { return true; } try { if (previous.target !== current.target) { return true; } } catch (e2) { } return false; } function shouldSkipDOMEvent(event) { if (event.type !== "keypress") { return false; } try { var target = event.target; if (!target || !target.tagName) { return true; } if (target.tagName === "INPUT" || target.tagName === "TEXTAREA" || target.isContentEditable) { return false; } } catch (e2) { } return true; } function makeDOMEventHandler(handler, globalListener) { if (globalListener === void 0) { globalListener = false; } return function(event) { if (!event || lastCapturedEvent === event) { return; } if (shouldSkipDOMEvent(event)) { return; } var name = event.type === "keypress" ? "input" : event.type; if (debounceTimerID === void 0) { handler({ event, name, global: globalListener }); lastCapturedEvent = event; } else if (shouldShortcircuitPreviousDebounce(lastCapturedEvent, event)) { handler({ event, name, global: globalListener }); lastCapturedEvent = event; } clearTimeout(debounceTimerID); debounceTimerID = global2.setTimeout(function() { debounceTimerID = void 0; }, debounceDuration); }; } function instrumentDOM() { if (!("document" in global2)) { return; } var triggerDOMHandler = triggerHandlers.bind(null, "dom"); var globalDOMEventHandler = makeDOMEventHandler(triggerDOMHandler, true); global2.document.addEventListener("click", globalDOMEventHandler, false); global2.document.addEventListener("keypress", globalDOMEventHandler, false); ["EventTarget", "Node"].forEach(function(target) { var proto = global2[target] && global2[target].prototype; if (!proto || !proto.hasOwnProperty || !proto.hasOwnProperty("addEventListener")) { return; } object_1.fill(proto, "addEventListener", function(originalAddEventListener) { return function(type, listener, options) { if (type === "click" || type == "keypress") { try { var el = this; var handlers_1 = el.__sentry_instrumentation_handlers__ = el.__sentry_instrumentation_handlers__ || {}; var handlerForType = handlers_1[type] = handlers_1[type] || { refCount: 0 }; if (!handlerForType.handler) { var handler = makeDOMEventHandler(triggerDOMHandler); handlerForType.handler = handler; originalAddEventListener.call(this, type, handler, options); } handlerForType.refCount += 1; } catch (e2) { } } return originalAddEventListener.call(this, type, listener, options); }; }); object_1.fill(proto, "removeEventListener", function(originalRemoveEventListener) { return function(type, listener, options) { if (type === "click" || type == "keypress") { try { var el = this; var handlers_2 = el.__sentry_instrumentation_handlers__ || {}; var handlerForType = handlers_2[type]; if (handlerForType) { handlerForType.refCount -= 1; if (handlerForType.refCount <= 0) { originalRemoveEventListener.call(this, type, handlerForType.handler, options); handlerForType.handler = void 0; delete handlers_2[type]; } if (Object.keys(handlers_2).length === 0) { delete el.__sentry_instrumentation_handlers__; } } } catch (e2) { } } return originalRemoveEventListener.call(this, type, listener, options); }; }); }); } var _oldOnErrorHandler = null; function instrumentError() { _oldOnErrorHandler = global2.onerror; global2.onerror = function(msg, url, line, column, error) { triggerHandlers("error", { column, error, line, msg, url }); if (_oldOnErrorHandler) { return _oldOnErrorHandler.apply(this, arguments); } return false; }; } var _oldOnUnhandledRejectionHandler = null; function instrumentUnhandledRejection() { _oldOnUnhandledRejectionHandler = global2.onunhandledrejection; global2.onunhandledrejection = function(e2) { triggerHandlers("unhandledrejection", e2); if (_oldOnUnhandledRejectionHandler) { return _oldOnUnhandledRejectionHandler.apply(this, arguments); } return true; }; } } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/misc.js var require_misc = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/misc.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var global_1 = require_global(); var string_1 = require_string(); function uuid4() { var global2 = global_1.getGlobalObject(); var crypto = global2.crypto || global2.msCrypto; if (!(crypto === void 0) && crypto.getRandomValues) { var arr = new Uint16Array(8); crypto.getRandomValues(arr); arr[3] = arr[3] & 4095 | 16384; arr[4] = arr[4] & 16383 | 32768; var pad = function(num) { var v = num.toString(16); while (v.length < 4) { v = "0" + v; } return v; }; return pad(arr[0]) + pad(arr[1]) + pad(arr[2]) + pad(arr[3]) + pad(arr[4]) + pad(arr[5]) + pad(arr[6]) + pad(arr[7]); } return "xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g, function(c2) { var r3 = Math.random() * 16 | 0; var v = c2 === "x" ? r3 : r3 & 3 | 8; return v.toString(16); }); } exports.uuid4 = uuid4; function parseUrl(url) { if (!url) { return {}; } var match = url.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/); if (!match) { return {}; } var query = match[6] || ""; var fragment = match[8] || ""; return { host: match[4], path: match[5], protocol: match[2], relative: match[5] + query + fragment }; } exports.parseUrl = parseUrl; function getEventDescription(event) { if (event.message) { return event.message; } if (event.exception && event.exception.values && event.exception.values[0]) { var exception = event.exception.values[0]; if (exception.type && exception.value) { return exception.type + ": " + exception.value; } return exception.type || exception.value || event.event_id || ""; } return event.event_id || ""; } exports.getEventDescription = getEventDescription; function addExceptionTypeValue(event, value, type) { event.exception = event.exception || {}; event.exception.values = event.exception.values || []; event.exception.values[0] = event.exception.values[0] || {}; event.exception.values[0].value = event.exception.values[0].value || value || ""; event.exception.values[0].type = event.exception.values[0].type || type || "Error"; } exports.addExceptionTypeValue = addExceptionTypeValue; function addExceptionMechanism(event, newMechanism) { var _a4; if (!event.exception || !event.exception.values) { return; } var exceptionValue0 = event.exception.values[0]; var defaultMechanism = { type: "generic", handled: true }; var currentMechanism = exceptionValue0.mechanism; exceptionValue0.mechanism = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, defaultMechanism), currentMechanism), newMechanism); if (newMechanism && "data" in newMechanism) { var mergedData = tslib_1.__assign(tslib_1.__assign({}, (_a4 = currentMechanism) === null || _a4 === void 0 ? void 0 : _a4.data), newMechanism.data); exceptionValue0.mechanism.data = mergedData; } } exports.addExceptionMechanism = addExceptionMechanism; var SEMVER_REGEXP = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/; function parseSemver(input) { var match = input.match(SEMVER_REGEXP) || []; var major = parseInt(match[1], 10); var minor = parseInt(match[2], 10); var patch = parseInt(match[3], 10); return { buildmetadata: match[5], major: isNaN(major) ? void 0 : major, minor: isNaN(minor) ? void 0 : minor, patch: isNaN(patch) ? void 0 : patch, prerelease: match[4] }; } exports.parseSemver = parseSemver; var defaultRetryAfter = 60 * 1e3; function parseRetryAfterHeader(now, header) { if (!header) { return defaultRetryAfter; } var headerDelay = parseInt("" + header, 10); if (!isNaN(headerDelay)) { return headerDelay * 1e3; } var headerDate = Date.parse("" + header); if (!isNaN(headerDate)) { return headerDate - now; } return defaultRetryAfter; } exports.parseRetryAfterHeader = parseRetryAfterHeader; function addContextToFrame(lines, frame, linesOfContext) { if (linesOfContext === void 0) { linesOfContext = 5; } var lineno = frame.lineno || 0; var maxLines = lines.length; var sourceLine = Math.max(Math.min(maxLines, lineno - 1), 0); frame.pre_context = lines.slice(Math.max(0, sourceLine - linesOfContext), sourceLine).map(function(line) { return string_1.snipLine(line, 0); }); frame.context_line = string_1.snipLine(lines[Math.min(maxLines - 1, sourceLine)], frame.colno || 0); frame.post_context = lines.slice(Math.min(sourceLine + 1, maxLines), sourceLine + 1 + linesOfContext).map(function(line) { return string_1.snipLine(line, 0); }); } exports.addContextToFrame = addContextToFrame; function stripUrlQueryAndFragment(urlPath) { return urlPath.split(/[\?#]/, 1)[0]; } exports.stripUrlQueryAndFragment = stripUrlQueryAndFragment; function checkOrSetAlreadyCaught(exception) { var _a4; if ((_a4 = exception) === null || _a4 === void 0 ? void 0 : _a4.__sentry_captured__) { return true; } try { Object.defineProperty(exception, "__sentry_captured__", { value: true }); } catch (err) { } return false; } exports.checkOrSetAlreadyCaught = checkOrSetAlreadyCaught; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/path.js var require_path = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/path.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); function normalizeArray(parts, allowAboveRoot) { var up = 0; for (var i2 = parts.length - 1; i2 >= 0; i2--) { var last = parts[i2]; if (last === ".") { parts.splice(i2, 1); } else if (last === "..") { parts.splice(i2, 1); up++; } else if (up) { parts.splice(i2, 1); up--; } } if (allowAboveRoot) { for (; up--; up) { parts.unshift(".."); } } return parts; } var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^/]+?|)(\.[^./]*|))(?:[/]*)$/; function splitPath(filename) { var parts = splitPathRe.exec(filename); return parts ? parts.slice(1) : []; } function resolve() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var resolvedPath = ""; var resolvedAbsolute = false; for (var i2 = args.length - 1; i2 >= -1 && !resolvedAbsolute; i2--) { var path5 = i2 >= 0 ? args[i2] : "/"; if (!path5) { continue; } resolvedPath = path5 + "/" + resolvedPath; resolvedAbsolute = path5.charAt(0) === "/"; } resolvedPath = normalizeArray(resolvedPath.split("/").filter(function(p) { return !!p; }), !resolvedAbsolute).join("/"); return (resolvedAbsolute ? "/" : "") + resolvedPath || "."; } exports.resolve = resolve; function trim(arr) { var start = 0; for (; start < arr.length; start++) { if (arr[start] !== "") { break; } } var end = arr.length - 1; for (; end >= 0; end--) { if (arr[end] !== "") { break; } } if (start > end) { return []; } return arr.slice(start, end - start + 1); } function relative(from, to) { from = resolve(from).substr(1); to = resolve(to).substr(1); var fromParts = trim(from.split("/")); var toParts = trim(to.split("/")); var length = Math.min(fromParts.length, toParts.length); var samePartsLength = length; for (var i2 = 0; i2 < length; i2++) { if (fromParts[i2] !== toParts[i2]) { samePartsLength = i2; break; } } var outputParts = []; for (var i2 = samePartsLength; i2 < fromParts.length; i2++) { outputParts.push(".."); } outputParts = outputParts.concat(toParts.slice(samePartsLength)); return outputParts.join("/"); } exports.relative = relative; function normalizePath(path5) { var isPathAbsolute = isAbsolute(path5); var trailingSlash = path5.substr(-1) === "/"; var normalizedPath = normalizeArray(path5.split("/").filter(function(p) { return !!p; }), !isPathAbsolute).join("/"); if (!normalizedPath && !isPathAbsolute) { normalizedPath = "."; } if (normalizedPath && trailingSlash) { normalizedPath += "/"; } return (isPathAbsolute ? "/" : "") + normalizedPath; } exports.normalizePath = normalizePath; function isAbsolute(path5) { return path5.charAt(0) === "/"; } exports.isAbsolute = isAbsolute; function join() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return normalizePath(args.join("/")); } exports.join = join; function dirname(path5) { var result = splitPath(path5); var root = result[0]; var dir = result[1]; if (!root && !dir) { return "."; } if (dir) { dir = dir.substr(0, dir.length - 1); } return root + dir; } exports.dirname = dirname; function basename2(path5, ext) { var f4 = splitPath(path5)[2]; if (ext && f4.substr(ext.length * -1) === ext) { f4 = f4.substr(0, f4.length - ext.length); } return f4; } exports.basename = basename2; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/syncpromise.js var require_syncpromise = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/syncpromise.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var is_1 = require_is(); var States; (function(States2) { States2["PENDING"] = "PENDING"; States2["RESOLVED"] = "RESOLVED"; States2["REJECTED"] = "REJECTED"; })(States || (States = {})); var SyncPromise = function() { function SyncPromise2(executor) { var _this = this; this._state = States.PENDING; this._handlers = []; this._resolve = function(value) { _this._setResult(States.RESOLVED, value); }; this._reject = function(reason) { _this._setResult(States.REJECTED, reason); }; this._setResult = function(state, value) { if (_this._state !== States.PENDING) { return; } if (is_1.isThenable(value)) { void value.then(_this._resolve, _this._reject); return; } _this._state = state; _this._value = value; _this._executeHandlers(); }; this._attachHandler = function(handler) { _this._handlers = _this._handlers.concat(handler); _this._executeHandlers(); }; this._executeHandlers = function() { if (_this._state === States.PENDING) { return; } var cachedHandlers = _this._handlers.slice(); _this._handlers = []; cachedHandlers.forEach(function(handler) { if (handler.done) { return; } if (_this._state === States.RESOLVED) { if (handler.onfulfilled) { handler.onfulfilled(_this._value); } } if (_this._state === States.REJECTED) { if (handler.onrejected) { handler.onrejected(_this._value); } } handler.done = true; }); }; try { executor(this._resolve, this._reject); } catch (e2) { this._reject(e2); } } SyncPromise2.resolve = function(value) { return new SyncPromise2(function(resolve) { resolve(value); }); }; SyncPromise2.reject = function(reason) { return new SyncPromise2(function(_, reject) { reject(reason); }); }; SyncPromise2.all = function(collection) { return new SyncPromise2(function(resolve, reject) { if (!Array.isArray(collection)) { reject(new TypeError("Promise.all requires an array as input.")); return; } if (collection.length === 0) { resolve([]); return; } var counter = collection.length; var resolvedCollection = []; collection.forEach(function(item, index) { void SyncPromise2.resolve(item).then(function(value) { resolvedCollection[index] = value; counter -= 1; if (counter !== 0) { return; } resolve(resolvedCollection); }).then(null, reject); }); }); }; SyncPromise2.prototype.then = function(onfulfilled, onrejected) { var _this = this; return new SyncPromise2(function(resolve, reject) { _this._attachHandler({ done: false, onfulfilled: function(result) { if (!onfulfilled) { resolve(result); return; } try { resolve(onfulfilled(result)); return; } catch (e2) { reject(e2); return; } }, onrejected: function(reason) { if (!onrejected) { reject(reason); return; } try { resolve(onrejected(reason)); return; } catch (e2) { reject(e2); return; } } }); }); }; SyncPromise2.prototype.catch = function(onrejected) { return this.then(function(val) { return val; }, onrejected); }; SyncPromise2.prototype.finally = function(onfinally) { var _this = this; return new SyncPromise2(function(resolve, reject) { var val; var isRejected; return _this.then(function(value) { isRejected = false; val = value; if (onfinally) { onfinally(); } }, function(reason) { isRejected = true; val = reason; if (onfinally) { onfinally(); } }).then(function() { if (isRejected) { reject(val); return; } resolve(val); }); }); }; SyncPromise2.prototype.toString = function() { return "[object SyncPromise]"; }; return SyncPromise2; }(); exports.SyncPromise = SyncPromise; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/promisebuffer.js var require_promisebuffer = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/promisebuffer.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var error_1 = require_error(); var syncpromise_1 = require_syncpromise(); var PromiseBuffer = function() { function PromiseBuffer2(_limit) { this._limit = _limit; this._buffer = []; } PromiseBuffer2.prototype.isReady = function() { return this._limit === void 0 || this.length() < this._limit; }; PromiseBuffer2.prototype.add = function(taskProducer) { var _this = this; if (!this.isReady()) { return syncpromise_1.SyncPromise.reject(new error_1.SentryError("Not adding Promise due to buffer limit reached.")); } var task = taskProducer(); if (this._buffer.indexOf(task) === -1) { this._buffer.push(task); } void task.then(function() { return _this.remove(task); }).then(null, function() { return _this.remove(task).then(null, function() { }); }); return task; }; PromiseBuffer2.prototype.remove = function(task) { var removedTask = this._buffer.splice(this._buffer.indexOf(task), 1)[0]; return removedTask; }; PromiseBuffer2.prototype.length = function() { return this._buffer.length; }; PromiseBuffer2.prototype.drain = function(timeout) { var _this = this; return new syncpromise_1.SyncPromise(function(resolve) { var capturedSetTimeout = setTimeout(function() { if (timeout && timeout > 0) { resolve(false); } }, timeout); void syncpromise_1.SyncPromise.all(_this._buffer).then(function() { clearTimeout(capturedSetTimeout); resolve(true); }).then(null, function() { resolve(true); }); }); }; return PromiseBuffer2; }(); exports.PromiseBuffer = PromiseBuffer; } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/time.js var require_time = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/time.js"(exports, module2) { Object.defineProperty(exports, "__esModule", { value: true }); var global_1 = require_global(); var node_1 = require_node(); var dateTimestampSource = { nowSeconds: function() { return Date.now() / 1e3; } }; function getBrowserPerformance() { var performance2 = global_1.getGlobalObject().performance; if (!performance2 || !performance2.now) { return void 0; } var timeOrigin = Date.now() - performance2.now(); return { now: function() { return performance2.now(); }, timeOrigin }; } function getNodePerformance() { try { var perfHooks = node_1.dynamicRequire(module2, "perf_hooks"); return perfHooks.performance; } catch (_) { return void 0; } } var platformPerformance = node_1.isNodeEnv() ? getNodePerformance() : getBrowserPerformance(); var timestampSource = platformPerformance === void 0 ? dateTimestampSource : { nowSeconds: function() { return (platformPerformance.timeOrigin + platformPerformance.now()) / 1e3; } }; exports.dateTimestampInSeconds = dateTimestampSource.nowSeconds.bind(dateTimestampSource); exports.timestampInSeconds = timestampSource.nowSeconds.bind(timestampSource); exports.timestampWithMs = exports.timestampInSeconds; exports.usingPerformanceAPI = platformPerformance !== void 0; exports.browserPerformanceTimeOrigin = function() { var performance2 = global_1.getGlobalObject().performance; if (!performance2 || !performance2.now) { exports._browserPerformanceTimeOriginMode = "none"; return void 0; } var threshold = 3600 * 1e3; var performanceNow = performance2.now(); var dateNow = Date.now(); var timeOriginDelta = performance2.timeOrigin ? Math.abs(performance2.timeOrigin + performanceNow - dateNow) : threshold; var timeOriginIsReliable = timeOriginDelta < threshold; var navigationStart = performance2.timing && performance2.timing.navigationStart; var hasNavigationStart = typeof navigationStart === "number"; var navigationStartDelta = hasNavigationStart ? Math.abs(navigationStart + performanceNow - dateNow) : threshold; var navigationStartIsReliable = navigationStartDelta < threshold; if (timeOriginIsReliable || navigationStartIsReliable) { if (timeOriginDelta <= navigationStartDelta) { exports._browserPerformanceTimeOriginMode = "timeOrigin"; return performance2.timeOrigin; } else { exports._browserPerformanceTimeOriginMode = "navigationStart"; return navigationStart; } } exports._browserPerformanceTimeOriginMode = "dateNow"; return dateNow; }(); } }); // ../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/index.js var require_dist = __commonJS({ "../../node_modules/.pnpm/@sentry+utils@6.15.0/node_modules/@sentry/utils/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); tslib_1.__exportStar(require_async(), exports); tslib_1.__exportStar(require_browser(), exports); tslib_1.__exportStar(require_dsn(), exports); tslib_1.__exportStar(require_error(), exports); tslib_1.__exportStar(require_global(), exports); tslib_1.__exportStar(require_instrument(), exports); tslib_1.__exportStar(require_is(), exports); tslib_1.__exportStar(require_logger(), exports); tslib_1.__exportStar(require_memo(), exports); tslib_1.__exportStar(require_misc(), exports); tslib_1.__exportStar(require_node(), exports); tslib_1.__exportStar(require_object(), exports); tslib_1.__exportStar(require_path(), exports); tslib_1.__exportStar(require_promisebuffer(), exports); tslib_1.__exportStar(require_stacktrace(), exports); tslib_1.__exportStar(require_string(), exports); tslib_1.__exportStar(require_supports(), exports); tslib_1.__exportStar(require_syncpromise(), exports); tslib_1.__exportStar(require_time(), exports); } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/angular.js var require_angular = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/angular.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var angularPattern = /^\[((?:[$a-zA-Z0-9]+:)?(?:[$a-zA-Z0-9]+))\] (.*?)\n?(\S+)$/; var Angular = function() { function Angular2(options) { if (options === void 0) { options = {}; } this.name = Angular2.id; utils_1.logger.log("You are still using the Angular integration, consider moving to @sentry/angular"); this._angular = options.angular || utils_1.getGlobalObject().angular; if (!this._angular) { utils_1.logger.error("AngularIntegration is missing an Angular instance"); return; } this._module = this._angular.module(Angular2.moduleName, []); } Angular2.prototype.setupOnce = function(_, getCurrentHub) { var _this = this; if (!this._module) { return; } this._getCurrentHub = getCurrentHub; this._module.config([ "$provide", function($provide) { $provide.decorator("$exceptionHandler", ["$delegate", _this._$exceptionHandlerDecorator.bind(_this)]); } ]); }; Angular2.prototype._$exceptionHandlerDecorator = function($delegate) { var _this = this; return function(exception, cause) { var hub = _this._getCurrentHub && _this._getCurrentHub(); if (hub && hub.getIntegration(Angular2)) { hub.withScope(function(scope) { if (cause) { scope.setExtra("cause", cause); } scope.addEventProcessor(function(event) { var ex = event.exception && event.exception.values && event.exception.values[0]; if (ex) { var matches = angularPattern.exec(ex.value || ""); if (matches) { ex.type = matches[1]; ex.value = matches[2]; event.message = ex.type + ": " + ex.value; event.extra = tslib_1.__assign(tslib_1.__assign({}, event.extra), { angularDocs: matches[3].substr(0, 250) }); } } return event; }); hub.captureException(exception); }); } $delegate(exception, cause); }; }; Angular2.id = "AngularJS"; Angular2.moduleName = "ngSentry"; return Angular2; }(); exports.Angular = Angular; } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/loglevel.js var require_loglevel = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/loglevel.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var LogLevel; (function(LogLevel2) { LogLevel2[LogLevel2["None"] = 0] = "None"; LogLevel2[LogLevel2["Error"] = 1] = "Error"; LogLevel2[LogLevel2["Debug"] = 2] = "Debug"; LogLevel2[LogLevel2["Verbose"] = 3] = "Verbose"; })(LogLevel = exports.LogLevel || (exports.LogLevel = {})); } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/session.js var require_session = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/session.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var SessionStatus; (function(SessionStatus2) { SessionStatus2["Ok"] = "ok"; SessionStatus2["Exited"] = "exited"; SessionStatus2["Crashed"] = "crashed"; SessionStatus2["Abnormal"] = "abnormal"; })(SessionStatus = exports.SessionStatus || (exports.SessionStatus = {})); var RequestSessionStatus; (function(RequestSessionStatus2) { RequestSessionStatus2["Ok"] = "ok"; RequestSessionStatus2["Errored"] = "errored"; RequestSessionStatus2["Crashed"] = "crashed"; })(RequestSessionStatus = exports.RequestSessionStatus || (exports.RequestSessionStatus = {})); } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/severity.js var require_severity = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/severity.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var Severity; (function(Severity2) { Severity2["Fatal"] = "fatal"; Severity2["Error"] = "error"; Severity2["Warning"] = "warning"; Severity2["Log"] = "log"; Severity2["Info"] = "info"; Severity2["Debug"] = "debug"; Severity2["Critical"] = "critical"; })(Severity = exports.Severity || (exports.Severity = {})); (function(Severity2) { function fromString(level) { switch (level) { case "debug": return Severity2.Debug; case "info": return Severity2.Info; case "warn": case "warning": return Severity2.Warning; case "error": return Severity2.Error; case "fatal": return Severity2.Fatal; case "critical": return Severity2.Critical; case "log": default: return Severity2.Log; } } Severity2.fromString = fromString; })(Severity = exports.Severity || (exports.Severity = {})); } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/status.js var require_status = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/status.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var Status; (function(Status2) { Status2["Unknown"] = "unknown"; Status2["Skipped"] = "skipped"; Status2["Success"] = "success"; Status2["RateLimit"] = "rate_limit"; Status2["Invalid"] = "invalid"; Status2["Failed"] = "failed"; })(Status = exports.Status || (exports.Status = {})); (function(Status2) { function fromHttpCode(code) { if (code >= 200 && code < 300) { return Status2.Success; } if (code === 429) { return Status2.RateLimit; } if (code >= 400 && code < 500) { return Status2.Invalid; } if (code >= 500) { return Status2.Failed; } return Status2.Unknown; } Status2.fromHttpCode = fromHttpCode; })(Status = exports.Status || (exports.Status = {})); } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/transaction.js var require_transaction = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/transaction.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var TransactionSamplingMethod; (function(TransactionSamplingMethod2) { TransactionSamplingMethod2["Explicit"] = "explicitly_set"; TransactionSamplingMethod2["Sampler"] = "client_sampler"; TransactionSamplingMethod2["Rate"] = "client_rate"; TransactionSamplingMethod2["Inheritance"] = "inheritance"; })(TransactionSamplingMethod = exports.TransactionSamplingMethod || (exports.TransactionSamplingMethod = {})); } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/transport.js var require_transport = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/transport.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var Outcome; (function(Outcome2) { Outcome2["BeforeSend"] = "before_send"; Outcome2["EventProcessor"] = "event_processor"; Outcome2["NetworkError"] = "network_error"; Outcome2["QueueOverflow"] = "queue_overflow"; Outcome2["RateLimitBackoff"] = "ratelimit_backoff"; Outcome2["SampleRate"] = "sample_rate"; })(Outcome = exports.Outcome || (exports.Outcome = {})); } }); // ../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/index.js var require_dist2 = __commonJS({ "../../node_modules/.pnpm/@sentry+types@6.15.0/node_modules/@sentry/types/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var loglevel_1 = require_loglevel(); exports.LogLevel = loglevel_1.LogLevel; var session_1 = require_session(); exports.SessionStatus = session_1.SessionStatus; exports.RequestSessionStatus = session_1.RequestSessionStatus; var severity_1 = require_severity(); exports.Severity = severity_1.Severity; var status_1 = require_status(); exports.Status = status_1.Status; var transaction_1 = require_transaction(); exports.TransactionSamplingMethod = transaction_1.TransactionSamplingMethod; var transport_1 = require_transport(); exports.Outcome = transport_1.Outcome; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/captureconsole.js var require_captureconsole = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/captureconsole.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var types_1 = require_dist2(); var utils_1 = require_dist(); var global2 = utils_1.getGlobalObject(); var CaptureConsole = function() { function CaptureConsole2(options) { if (options === void 0) { options = {}; } this.name = CaptureConsole2.id; this._levels = ["log", "info", "warn", "error", "debug", "assert"]; if (options.levels) { this._levels = options.levels; } } CaptureConsole2.prototype.setupOnce = function(_, getCurrentHub) { if (!("console" in global2)) { return; } this._levels.forEach(function(level) { if (!(level in global2.console)) { return; } utils_1.fill(global2.console, level, function(originalConsoleLevel) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var hub = getCurrentHub(); if (hub.getIntegration(CaptureConsole2)) { hub.withScope(function(scope) { scope.setLevel(types_1.Severity.fromString(level)); scope.setExtra("arguments", args); scope.addEventProcessor(function(event) { event.logger = "console"; return event; }); var message = utils_1.safeJoin(args, " "); if (level === "assert") { if (args[0] === false) { message = "Assertion failed: " + (utils_1.safeJoin(args.slice(1), " ") || "console.assert"); scope.setExtra("arguments", args.slice(1)); hub.captureMessage(message); } } else if (level === "error" && args[0] instanceof Error) { hub.captureException(args[0]); } else { hub.captureMessage(message); } }); } if (originalConsoleLevel) { Function.prototype.apply.call(originalConsoleLevel, global2.console, args); } }; }); }); }; CaptureConsole2.id = "CaptureConsole"; return CaptureConsole2; }(); exports.CaptureConsole = CaptureConsole; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/debug.js var require_debug = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/debug.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var Debug = function() { function Debug2(options) { this.name = Debug2.id; this._options = tslib_1.__assign({ debugger: false, stringify: false }, options); } Debug2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { addGlobalEventProcessor(function(event, hint) { var self2 = getCurrentHub().getIntegration(Debug2); if (self2) { if (self2._options.debugger) { debugger; } utils_1.consoleSandbox(function() { if (self2._options.stringify) { console.log(JSON.stringify(event, null, 2)); if (hint) { console.log(JSON.stringify(hint, null, 2)); } } else { console.log(event); if (hint) { console.log(hint); } } }); } return event; }); }; Debug2.id = "Debug"; return Debug2; }(); exports.Debug = Debug; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/dedupe.js var require_dedupe = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/dedupe.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var Dedupe = function() { function Dedupe2() { this.name = Dedupe2.id; } Dedupe2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { addGlobalEventProcessor(function(currentEvent) { var self2 = getCurrentHub().getIntegration(Dedupe2); if (self2) { try { if (self2._shouldDropEvent(currentEvent, self2._previousEvent)) { utils_1.logger.warn("Event dropped due to being a duplicate of previously captured event."); return null; } } catch (_oO) { return self2._previousEvent = currentEvent; } return self2._previousEvent = currentEvent; } return currentEvent; }); }; Dedupe2.prototype._shouldDropEvent = function(currentEvent, previousEvent) { if (!previousEvent) { return false; } if (this._isSameMessageEvent(currentEvent, previousEvent)) { return true; } if (this._isSameExceptionEvent(currentEvent, previousEvent)) { return true; } return false; }; Dedupe2.prototype._isSameMessageEvent = function(currentEvent, previousEvent) { var currentMessage = currentEvent.message; var previousMessage = previousEvent.message; if (!currentMessage && !previousMessage) { return false; } if (currentMessage && !previousMessage || !currentMessage && previousMessage) { return false; } if (currentMessage !== previousMessage) { return false; } if (!this._isSameFingerprint(currentEvent, previousEvent)) { return false; } if (!this._isSameStacktrace(currentEvent, previousEvent)) { return false; } return true; }; Dedupe2.prototype._getFramesFromEvent = function(event) { var exception = event.exception; if (exception) { try { return exception.values[0].stacktrace.frames; } catch (_oO) { return void 0; } } else if (event.stacktrace) { return event.stacktrace.frames; } return void 0; }; Dedupe2.prototype._isSameStacktrace = function(currentEvent, previousEvent) { var currentFrames = this._getFramesFromEvent(currentEvent); var previousFrames = this._getFramesFromEvent(previousEvent); if (!currentFrames && !previousFrames) { return true; } if (currentFrames && !previousFrames || !currentFrames && previousFrames) { return false; } currentFrames = currentFrames; previousFrames = previousFrames; if (previousFrames.length !== currentFrames.length) { return false; } for (var i2 = 0; i2 < previousFrames.length; i2++) { var frameA = previousFrames[i2]; var frameB = currentFrames[i2]; if (frameA.filename !== frameB.filename || frameA.lineno !== frameB.lineno || frameA.colno !== frameB.colno || frameA.function !== frameB.function) { return false; } } return true; }; Dedupe2.prototype._getExceptionFromEvent = function(event) { return event.exception && event.exception.values && event.exception.values[0]; }; Dedupe2.prototype._isSameExceptionEvent = function(currentEvent, previousEvent) { var previousException = this._getExceptionFromEvent(previousEvent); var currentException = this._getExceptionFromEvent(currentEvent); if (!previousException || !currentException) { return false; } if (previousException.type !== currentException.type || previousException.value !== currentException.value) { return false; } if (!this._isSameFingerprint(currentEvent, previousEvent)) { return false; } if (!this._isSameStacktrace(currentEvent, previousEvent)) { return false; } return true; }; Dedupe2.prototype._isSameFingerprint = function(currentEvent, previousEvent) { var currentFingerprint = currentEvent.fingerprint; var previousFingerprint = previousEvent.fingerprint; if (!currentFingerprint && !previousFingerprint) { return true; } if (currentFingerprint && !previousFingerprint || !currentFingerprint && previousFingerprint) { return false; } currentFingerprint = currentFingerprint; previousFingerprint = previousFingerprint; try { return !!(currentFingerprint.join("") === previousFingerprint.join("")); } catch (_oO) { return false; } }; Dedupe2.id = "Dedupe"; return Dedupe2; }(); exports.Dedupe = Dedupe; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/ember.js var require_ember = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/ember.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var Ember = function() { function Ember2(options) { if (options === void 0) { options = {}; } this.name = Ember2.id; this._Ember = options.Ember || utils_1.getGlobalObject().Ember; } Ember2.prototype.setupOnce = function(_, getCurrentHub) { var _this = this; if (!this._Ember) { utils_1.logger.error("EmberIntegration is missing an Ember instance"); return; } var oldOnError = this._Ember.onerror; this._Ember.onerror = function(error) { if (getCurrentHub().getIntegration(Ember2)) { getCurrentHub().captureException(error, { originalException: error }); } if (typeof oldOnError === "function") { oldOnError.call(_this._Ember, error); } else if (_this._Ember.testing) { throw error; } }; this._Ember.RSVP.on("error", function(reason) { if (getCurrentHub().getIntegration(Ember2)) { getCurrentHub().withScope(function(scope) { if (utils_1.isInstanceOf(reason, Error)) { scope.setExtra("context", "Unhandled Promise error detected"); getCurrentHub().captureException(reason, { originalException: reason }); } else { scope.setExtra("reason", reason); getCurrentHub().captureMessage("Unhandled Promise error detected"); } }); } }); }; Ember2.id = "Ember"; return Ember2; }(); exports.Ember = Ember; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/extraerrordata.js var require_extraerrordata = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/extraerrordata.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var ExtraErrorData = function() { function ExtraErrorData2(_options) { if (_options === void 0) { _options = { depth: 3 }; } this._options = _options; this.name = ExtraErrorData2.id; } ExtraErrorData2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { addGlobalEventProcessor(function(event, hint) { var self2 = getCurrentHub().getIntegration(ExtraErrorData2); if (!self2) { return event; } return self2.enhanceEventWithErrorData(event, hint); }); }; ExtraErrorData2.prototype.enhanceEventWithErrorData = function(event, hint) { var _a4; if (!hint || !hint.originalException || !utils_1.isError(hint.originalException)) { return event; } var name = hint.originalException.name || hint.originalException.constructor.name; var errorData = this._extractErrorData(hint.originalException); if (errorData) { var contexts = tslib_1.__assign({}, event.contexts); var normalizedErrorData = utils_1.normalize(errorData, this._options.depth); if (utils_1.isPlainObject(normalizedErrorData)) { contexts = tslib_1.__assign(tslib_1.__assign({}, event.contexts), (_a4 = {}, _a4[name] = tslib_1.__assign({}, normalizedErrorData), _a4)); } return tslib_1.__assign(tslib_1.__assign({}, event), { contexts }); } return event; }; ExtraErrorData2.prototype._extractErrorData = function(error) { var e_1, _a4, e_2, _b; try { var nativeKeys = [ "name", "message", "stack", "line", "column", "fileName", "lineNumber", "columnNumber", "toJSON" ]; var extraErrorInfo = {}; try { for (var _c = tslib_1.__values(Object.keys(error)), _d2 = _c.next(); !_d2.done; _d2 = _c.next()) { var key = _d2.value; if (nativeKeys.indexOf(key) !== -1) { continue; } var value = error[key]; extraErrorInfo[key] = utils_1.isError(value) ? value.toString() : value; } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_d2 && !_d2.done && (_a4 = _c.return)) _a4.call(_c); } finally { if (e_1) throw e_1.error; } } if (typeof error.toJSON === "function") { var serializedError = error.toJSON(); try { for (var _e = tslib_1.__values(Object.keys(serializedError)), _f = _e.next(); !_f.done; _f = _e.next()) { var key = _f.value; var value = serializedError[key]; extraErrorInfo[key] = utils_1.isError(value) ? value.toString() : value; } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (_f && !_f.done && (_b = _e.return)) _b.call(_e); } finally { if (e_2) throw e_2.error; } } } return extraErrorInfo; } catch (oO) { utils_1.logger.error("Unable to extract extra data from the Error object:", oO); } return null; }; ExtraErrorData2.id = "ExtraErrorData"; return ExtraErrorData2; }(); exports.ExtraErrorData = ExtraErrorData; } }); // ../../node_modules/.pnpm/localforage@1.10.0/node_modules/localforage/dist/localforage.js var require_localforage = __commonJS({ "../../node_modules/.pnpm/localforage@1.10.0/node_modules/localforage/dist/localforage.js"(exports, module2) { (function(f4) { if (typeof exports === "object" && typeof module2 !== "undefined") { module2.exports = f4(); } else if (typeof define === "function" && define.amd) { define([], f4); } else { var g; if (typeof window !== "undefined") { g = window; } else if (typeof global !== "undefined") { g = global; } else if (typeof self !== "undefined") { g = self; } else { g = this; } g.localforage = f4(); } })(function() { var define2, module3, exports2; return function e2(t2, n, r3) { function s2(o3, u) { if (!n[o3]) { if (!t2[o3]) { var a = typeof require == "function" && require; if (!u && a) return a(o3, true); if (i2) return i2(o3, true); var f4 = new Error("Cannot find module '" + o3 + "'"); throw f4.code = "MODULE_NOT_FOUND", f4; } var l = n[o3] = { exports: {} }; t2[o3][0].call(l.exports, function(e3) { var n2 = t2[o3][1][e3]; return s2(n2 ? n2 : e3); }, l, l.exports, e2, t2, n, r3); } return n[o3].exports; } var i2 = typeof require == "function" && require; for (var o2 = 0; o2 < r3.length; o2++) s2(r3[o2]); return s2; }({ 1: [function(_dereq_, module4, exports3) { (function(global2) { "use strict"; var Mutation = global2.MutationObserver || global2.WebKitMutationObserver; var scheduleDrain; { if (Mutation) { var called = 0; var observer = new Mutation(nextTick); var element = global2.document.createTextNode(""); observer.observe(element, { characterData: true }); scheduleDrain = function() { element.data = called = ++called % 2; }; } else if (!global2.setImmediate && typeof global2.MessageChannel !== "undefined") { var channel = new global2.MessageChannel(); channel.port1.onmessage = nextTick; scheduleDrain = function() { channel.port2.postMessage(0); }; } else if ("document" in global2 && "onreadystatechange" in global2.document.createElement("script")) { scheduleDrain = function() { var scriptEl = global2.document.createElement("script"); scriptEl.onreadystatechange = function() { nextTick(); scriptEl.onreadystatechange = null; scriptEl.parentNode.removeChild(scriptEl); scriptEl = null; }; global2.document.documentElement.appendChild(scriptEl); }; } else { scheduleDrain = function() { setTimeout(nextTick, 0); }; } } var draining; var queue = []; function nextTick() { draining = true; var i2, oldQueue; var len = queue.length; while (len) { oldQueue = queue; queue = []; i2 = -1; while (++i2 < len) { oldQueue[i2](); } len = queue.length; } draining = false; } module4.exports = immediate; function immediate(task) { if (queue.push(task) === 1 && !draining) { scheduleDrain(); } } }).call(this, typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}); }, {}], 2: [function(_dereq_, module4, exports3) { "use strict"; var immediate = _dereq_(1); function INTERNAL() { } var handlers = {}; var REJECTED = ["REJECTED"]; var FULFILLED = ["FULFILLED"]; var PENDING = ["PENDING"]; module4.exports = Promise2; function Promise2(resolver) { if (typeof resolver !== "function") { throw new TypeError("resolver must be a function"); } this.state = PENDING; this.queue = []; this.outcome = void 0; if (resolver !== INTERNAL) { safelyResolveThenable(this, resolver); } } Promise2.prototype["catch"] = function(onRejected) { return this.then(null, onRejected); }; Promise2.prototype.then = function(onFulfilled, onRejected) { if (typeof onFulfilled !== "function" && this.state === FULFILLED || typeof onRejected !== "function" && this.state === REJECTED) { return this; } var promise = new this.constructor(INTERNAL); if (this.state !== PENDING) { var resolver = this.state === FULFILLED ? onFulfilled : onRejected; unwrap(promise, resolver, this.outcome); } else { this.queue.push(new QueueItem(promise, onFulfilled, onRejected)); } return promise; }; function QueueItem(promise, onFulfilled, onRejected) { this.promise = promise; if (typeof onFulfilled === "function") { this.onFulfilled = onFulfilled; this.callFulfilled = this.otherCallFulfilled; } if (typeof onRejected === "function") { this.onRejected = onRejected; this.callRejected = this.otherCallRejected; } } QueueItem.prototype.callFulfilled = function(value) { handlers.resolve(this.promise, value); }; QueueItem.prototype.otherCallFulfilled = function(value) { unwrap(this.promise, this.onFulfilled, value); }; QueueItem.prototype.callRejected = function(value) { handlers.reject(this.promise, value); }; QueueItem.prototype.otherCallRejected = function(value) { unwrap(this.promise, this.onRejected, value); }; function unwrap(promise, func, value) { immediate(function() { var returnValue; try { returnValue = func(value); } catch (e2) { return handlers.reject(promise, e2); } if (returnValue === promise) { handlers.reject(promise, new TypeError("Cannot resolve promise with itself")); } else { handlers.resolve(promise, returnValue); } }); } handlers.resolve = function(self2, value) { var result = tryCatch(getThen, value); if (result.status === "error") { return handlers.reject(self2, result.value); } var thenable = result.value; if (thenable) { safelyResolveThenable(self2, thenable); } else { self2.state = FULFILLED; self2.outcome = value; var i2 = -1; var len = self2.queue.length; while (++i2 < len) { self2.queue[i2].callFulfilled(value); } } return self2; }; handlers.reject = function(self2, error) { self2.state = REJECTED; self2.outcome = error; var i2 = -1; var len = self2.queue.length; while (++i2 < len) { self2.queue[i2].callRejected(error); } return self2; }; function getThen(obj) { var then = obj && obj.then; if (obj && (typeof obj === "object" || typeof obj === "function") && typeof then === "function") { return function appyThen() { then.apply(obj, arguments); }; } } function safelyResolveThenable(self2, thenable) { var called = false; function onError(value) { if (called) { return; } called = true; handlers.reject(self2, value); } function onSuccess(value) { if (called) { return; } called = true; handlers.resolve(self2, value); } function tryToUnwrap() { thenable(onSuccess, onError); } var result = tryCatch(tryToUnwrap); if (result.status === "error") { onError(result.value); } } function tryCatch(func, value) { var out = {}; try { out.value = func(value); out.status = "success"; } catch (e2) { out.status = "error"; out.value = e2; } return out; } Promise2.resolve = resolve; function resolve(value) { if (value instanceof this) { return value; } return handlers.resolve(new this(INTERNAL), value); } Promise2.reject = reject; function reject(reason) { var promise = new this(INTERNAL); return handlers.reject(promise, reason); } Promise2.all = all; function all(iterable) { var self2 = this; if (Object.prototype.toString.call(iterable) !== "[object Array]") { return this.reject(new TypeError("must be an array")); } var len = iterable.length; var called = false; if (!len) { return this.resolve([]); } var values = new Array(len); var resolved = 0; var i2 = -1; var promise = new this(INTERNAL); while (++i2 < len) { allResolver(iterable[i2], i2); } return promise; function allResolver(value, i3) { self2.resolve(value).then(resolveFromAll, function(error) { if (!called) { called = true; handlers.reject(promise, error); } }); function resolveFromAll(outValue) { values[i3] = outValue; if (++resolved === len && !called) { called = true; handlers.resolve(promise, values); } } } } Promise2.race = race; function race(iterable) { var self2 = this; if (Object.prototype.toString.call(iterable) !== "[object Array]") { return this.reject(new TypeError("must be an array")); } var len = iterable.length; var called = false; if (!len) { return this.resolve([]); } var i2 = -1; var promise = new this(INTERNAL); while (++i2 < len) { resolver(iterable[i2]); } return promise; function resolver(value) { self2.resolve(value).then(function(response) { if (!called) { called = true; handlers.resolve(promise, response); } }, function(error) { if (!called) { called = true; handlers.reject(promise, error); } }); } } }, { "1": 1 }], 3: [function(_dereq_, module4, exports3) { (function(global2) { "use strict"; if (typeof global2.Promise !== "function") { global2.Promise = _dereq_(2); } }).call(this, typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}); }, { "2": 2 }], 4: [function(_dereq_, module4, exports3) { "use strict"; var _typeof = 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 _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function getIDB() { try { if (typeof indexedDB !== "undefined") { return indexedDB; } if (typeof webkitIndexedDB !== "undefined") { return webkitIndexedDB; } if (typeof mozIndexedDB !== "undefined") { return mozIndexedDB; } if (typeof OIndexedDB !== "undefined") { return OIndexedDB; } if (typeof msIndexedDB !== "undefined") { return msIndexedDB; } } catch (e2) { return; } } var idb = getIDB(); function isIndexedDBValid() { try { if (!idb || !idb.open) { return false; } var isSafari = typeof openDatabase !== "undefined" && /(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent) && !/BlackBerry/.test(navigator.platform); var hasFetch = typeof fetch === "function" && fetch.toString().indexOf("[native code") !== -1; return (!isSafari || hasFetch) && typeof indexedDB !== "undefined" && typeof IDBKeyRange !== "undefined"; } catch (e2) { return false; } } function createBlob(parts, properties) { parts = parts || []; properties = properties || {}; try { return new Blob(parts, properties); } catch (e2) { if (e2.name !== "TypeError") { throw e2; } var Builder = typeof BlobBuilder !== "undefined" ? BlobBuilder : typeof MSBlobBuilder !== "undefined" ? MSBlobBuilder : typeof MozBlobBuilder !== "undefined" ? MozBlobBuilder : WebKitBlobBuilder; var builder = new Builder(); for (var i2 = 0; i2 < parts.length; i2 += 1) { builder.append(parts[i2]); } return builder.getBlob(properties.type); } } if (typeof Promise === "undefined") { _dereq_(3); } var Promise$1 = Promise; function executeCallback(promise, callback) { if (callback) { promise.then(function(result) { callback(null, result); }, function(error) { callback(error); }); } } function executeTwoCallbacks(promise, callback, errorCallback) { if (typeof callback === "function") { promise.then(callback); } if (typeof errorCallback === "function") { promise["catch"](errorCallback); } } function normalizeKey(key2) { if (typeof key2 !== "string") { console.warn(key2 + " used as a key, but it is not a string."); key2 = String(key2); } return key2; } function getCallback() { if (arguments.length && typeof arguments[arguments.length - 1] === "function") { return arguments[arguments.length - 1]; } } var DETECT_BLOB_SUPPORT_STORE = "local-forage-detect-blob-support"; var supportsBlobs = void 0; var dbContexts = {}; var toString = Object.prototype.toString; var READ_ONLY = "readonly"; var READ_WRITE = "readwrite"; function _binStringToArrayBuffer(bin) { var length2 = bin.length; var buf = new ArrayBuffer(length2); var arr = new Uint8Array(buf); for (var i2 = 0; i2 < length2; i2++) { arr[i2] = bin.charCodeAt(i2); } return buf; } function _checkBlobSupportWithoutCaching(idb2) { return new Promise$1(function(resolve) { var txn = idb2.transaction(DETECT_BLOB_SUPPORT_STORE, READ_WRITE); var blob = createBlob([""]); txn.objectStore(DETECT_BLOB_SUPPORT_STORE).put(blob, "key"); txn.onabort = function(e2) { e2.preventDefault(); e2.stopPropagation(); resolve(false); }; txn.oncomplete = function() { var matchedChrome = navigator.userAgent.match(/Chrome\/(\d+)/); var matchedEdge = navigator.userAgent.match(/Edge\//); resolve(matchedEdge || !matchedChrome || parseInt(matchedChrome[1], 10) >= 43); }; })["catch"](function() { return false; }); } function _checkBlobSupport(idb2) { if (typeof supportsBlobs === "boolean") { return Promise$1.resolve(supportsBlobs); } return _checkBlobSupportWithoutCaching(idb2).then(function(value) { supportsBlobs = value; return supportsBlobs; }); } function _deferReadiness(dbInfo) { var dbContext = dbContexts[dbInfo.name]; var deferredOperation = {}; deferredOperation.promise = new Promise$1(function(resolve, reject) { deferredOperation.resolve = resolve; deferredOperation.reject = reject; }); dbContext.deferredOperations.push(deferredOperation); if (!dbContext.dbReady) { dbContext.dbReady = deferredOperation.promise; } else { dbContext.dbReady = dbContext.dbReady.then(function() { return deferredOperation.promise; }); } } function _advanceReadiness(dbInfo) { var dbContext = dbContexts[dbInfo.name]; var deferredOperation = dbContext.deferredOperations.pop(); if (deferredOperation) { deferredOperation.resolve(); return deferredOperation.promise; } } function _rejectReadiness(dbInfo, err) { var dbContext = dbContexts[dbInfo.name]; var deferredOperation = dbContext.deferredOperations.pop(); if (deferredOperation) { deferredOperation.reject(err); return deferredOperation.promise; } } function _getConnection(dbInfo, upgradeNeeded) { return new Promise$1(function(resolve, reject) { dbContexts[dbInfo.name] = dbContexts[dbInfo.name] || createDbContext(); if (dbInfo.db) { if (upgradeNeeded) { _deferReadiness(dbInfo); dbInfo.db.close(); } else { return resolve(dbInfo.db); } } var dbArgs = [dbInfo.name]; if (upgradeNeeded) { dbArgs.push(dbInfo.version); } var openreq = idb.open.apply(idb, dbArgs); if (upgradeNeeded) { openreq.onupgradeneeded = function(e2) { var db = openreq.result; try { db.createObjectStore(dbInfo.storeName); if (e2.oldVersion <= 1) { db.createObjectStore(DETECT_BLOB_SUPPORT_STORE); } } catch (ex) { if (ex.name === "ConstraintError") { console.warn('The database "' + dbInfo.name + '" has been upgraded from version ' + e2.oldVersion + " to version " + e2.newVersion + ', but the storage "' + dbInfo.storeName + '" already exists.'); } else { throw ex; } } }; } openreq.onerror = function(e2) { e2.preventDefault(); reject(openreq.error); }; openreq.onsuccess = function() { var db = openreq.result; db.onversionchange = function(e2) { e2.target.close(); }; resolve(db); _advanceReadiness(dbInfo); }; }); } function _getOriginalConnection(dbInfo) { return _getConnection(dbInfo, false); } function _getUpgradedConnection(dbInfo) { return _getConnection(dbInfo, true); } function _isUpgradeNeeded(dbInfo, defaultVersion) { if (!dbInfo.db) { return true; } var isNewStore = !dbInfo.db.objectStoreNames.contains(dbInfo.storeName); var isDowngrade = dbInfo.version < dbInfo.db.version; var isUpgrade = dbInfo.version > dbInfo.db.version; if (isDowngrade) { if (dbInfo.version !== defaultVersion) { console.warn('The database "' + dbInfo.name + `" can't be downgraded from version ` + dbInfo.db.version + " to version " + dbInfo.version + "."); } dbInfo.version = dbInfo.db.version; } if (isUpgrade || isNewStore) { if (isNewStore) { var incVersion = dbInfo.db.version + 1; if (incVersion > dbInfo.version) { dbInfo.version = incVersion; } } return true; } return false; } function _encodeBlob(blob) { return new Promise$1(function(resolve, reject) { var reader = new FileReader(); reader.onerror = reject; reader.onloadend = function(e2) { var base64 = btoa(e2.target.result || ""); resolve({ __local_forage_encoded_blob: true, data: base64, type: blob.type }); }; reader.readAsBinaryString(blob); }); } function _decodeBlob(encodedBlob) { var arrayBuff = _binStringToArrayBuffer(atob(encodedBlob.data)); return createBlob([arrayBuff], { type: encodedBlob.type }); } function _isEncodedBlob(value) { return value && value.__local_forage_encoded_blob; } function _fullyReady(callback) { var self2 = this; var promise = self2._initReady().then(function() { var dbContext = dbContexts[self2._dbInfo.name]; if (dbContext && dbContext.dbReady) { return dbContext.dbReady; } }); executeTwoCallbacks(promise, callback, callback); return promise; } function _tryReconnect(dbInfo) { _deferReadiness(dbInfo); var dbContext = dbContexts[dbInfo.name]; var forages = dbContext.forages; for (var i2 = 0; i2 < forages.length; i2++) { var forage = forages[i2]; if (forage._dbInfo.db) { forage._dbInfo.db.close(); forage._dbInfo.db = null; } } dbInfo.db = null; return _getOriginalConnection(dbInfo).then(function(db) { dbInfo.db = db; if (_isUpgradeNeeded(dbInfo)) { return _getUpgradedConnection(dbInfo); } return db; }).then(function(db) { dbInfo.db = dbContext.db = db; for (var i3 = 0; i3 < forages.length; i3++) { forages[i3]._dbInfo.db = db; } })["catch"](function(err) { _rejectReadiness(dbInfo, err); throw err; }); } function createTransaction(dbInfo, mode, callback, retries) { if (retries === void 0) { retries = 1; } try { var tx = dbInfo.db.transaction(dbInfo.storeName, mode); callback(null, tx); } catch (err) { if (retries > 0 && (!dbInfo.db || err.name === "InvalidStateError" || err.name === "NotFoundError")) { return Promise$1.resolve().then(function() { if (!dbInfo.db || err.name === "NotFoundError" && !dbInfo.db.objectStoreNames.contains(dbInfo.storeName) && dbInfo.version <= dbInfo.db.version) { if (dbInfo.db) { dbInfo.version = dbInfo.db.version + 1; } return _getUpgradedConnection(dbInfo); } }).then(function() { return _tryReconnect(dbInfo).then(function() { createTransaction(dbInfo, mode, callback, retries - 1); }); })["catch"](callback); } callback(err); } } function createDbContext() { return { forages: [], db: null, dbReady: null, deferredOperations: [] }; } function _initStorage(options) { var self2 = this; var dbInfo = { db: null }; if (options) { for (var i2 in options) { dbInfo[i2] = options[i2]; } } var dbContext = dbContexts[dbInfo.name]; if (!dbContext) { dbContext = createDbContext(); dbContexts[dbInfo.name] = dbContext; } dbContext.forages.push(self2); if (!self2._initReady) { self2._initReady = self2.ready; self2.ready = _fullyReady; } var initPromises = []; function ignoreErrors() { return Promise$1.resolve(); } for (var j = 0; j < dbContext.forages.length; j++) { var forage = dbContext.forages[j]; if (forage !== self2) { initPromises.push(forage._initReady()["catch"](ignoreErrors)); } } var forages = dbContext.forages.slice(0); return Promise$1.all(initPromises).then(function() { dbInfo.db = dbContext.db; return _getOriginalConnection(dbInfo); }).then(function(db) { dbInfo.db = db; if (_isUpgradeNeeded(dbInfo, self2._defaultConfig.version)) { return _getUpgradedConnection(dbInfo); } return db; }).then(function(db) { dbInfo.db = dbContext.db = db; self2._dbInfo = dbInfo; for (var k = 0; k < forages.length; k++) { var forage2 = forages[k]; if (forage2 !== self2) { forage2._dbInfo.db = dbInfo.db; forage2._dbInfo.version = dbInfo.version; } } }); } function getItem(key2, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { createTransaction(self2._dbInfo, READ_ONLY, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var req = store.get(key2); req.onsuccess = function() { var value = req.result; if (value === void 0) { value = null; } if (_isEncodedBlob(value)) { value = _decodeBlob(value); } resolve(value); }; req.onerror = function() { reject(req.error); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function iterate(iterator, callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { createTransaction(self2._dbInfo, READ_ONLY, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var req = store.openCursor(); var iterationNumber = 1; req.onsuccess = function() { var cursor = req.result; if (cursor) { var value = cursor.value; if (_isEncodedBlob(value)) { value = _decodeBlob(value); } var result = iterator(value, cursor.key, iterationNumber++); if (result !== void 0) { resolve(result); } else { cursor["continue"](); } } else { resolve(); } }; req.onerror = function() { reject(req.error); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function setItem(key2, value, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = new Promise$1(function(resolve, reject) { var dbInfo; self2.ready().then(function() { dbInfo = self2._dbInfo; if (toString.call(value) === "[object Blob]") { return _checkBlobSupport(dbInfo.db).then(function(blobSupport) { if (blobSupport) { return value; } return _encodeBlob(value); }); } return value; }).then(function(value2) { createTransaction(self2._dbInfo, READ_WRITE, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); if (value2 === null) { value2 = void 0; } var req = store.put(value2, key2); transaction.oncomplete = function() { if (value2 === void 0) { value2 = null; } resolve(value2); }; transaction.onabort = transaction.onerror = function() { var err2 = req.error ? req.error : req.transaction.error; reject(err2); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function removeItem(key2, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { createTransaction(self2._dbInfo, READ_WRITE, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var req = store["delete"](key2); transaction.oncomplete = function() { resolve(); }; transaction.onerror = function() { reject(req.error); }; transaction.onabort = function() { var err2 = req.error ? req.error : req.transaction.error; reject(err2); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function clear(callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { createTransaction(self2._dbInfo, READ_WRITE, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var req = store.clear(); transaction.oncomplete = function() { resolve(); }; transaction.onabort = transaction.onerror = function() { var err2 = req.error ? req.error : req.transaction.error; reject(err2); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function length(callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { createTransaction(self2._dbInfo, READ_ONLY, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var req = store.count(); req.onsuccess = function() { resolve(req.result); }; req.onerror = function() { reject(req.error); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function key(n, callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { if (n < 0) { resolve(null); return; } self2.ready().then(function() { createTransaction(self2._dbInfo, READ_ONLY, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var advanced = false; var req = store.openKeyCursor(); req.onsuccess = function() { var cursor = req.result; if (!cursor) { resolve(null); return; } if (n === 0) { resolve(cursor.key); } else { if (!advanced) { advanced = true; cursor.advance(n); } else { resolve(cursor.key); } } }; req.onerror = function() { reject(req.error); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function keys(callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { createTransaction(self2._dbInfo, READ_ONLY, function(err, transaction) { if (err) { return reject(err); } try { var store = transaction.objectStore(self2._dbInfo.storeName); var req = store.openKeyCursor(); var keys2 = []; req.onsuccess = function() { var cursor = req.result; if (!cursor) { resolve(keys2); return; } keys2.push(cursor.key); cursor["continue"](); }; req.onerror = function() { reject(req.error); }; } catch (e2) { reject(e2); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function dropInstance(options, callback) { callback = getCallback.apply(this, arguments); var currentConfig = this.config(); options = typeof options !== "function" && options || {}; if (!options.name) { options.name = options.name || currentConfig.name; options.storeName = options.storeName || currentConfig.storeName; } var self2 = this; var promise; if (!options.name) { promise = Promise$1.reject("Invalid arguments"); } else { var isCurrentDb = options.name === currentConfig.name && self2._dbInfo.db; var dbPromise = isCurrentDb ? Promise$1.resolve(self2._dbInfo.db) : _getOriginalConnection(options).then(function(db) { var dbContext = dbContexts[options.name]; var forages = dbContext.forages; dbContext.db = db; for (var i2 = 0; i2 < forages.length; i2++) { forages[i2]._dbInfo.db = db; } return db; }); if (!options.storeName) { promise = dbPromise.then(function(db) { _deferReadiness(options); var dbContext = dbContexts[options.name]; var forages = dbContext.forages; db.close(); for (var i2 = 0; i2 < forages.length; i2++) { var forage = forages[i2]; forage._dbInfo.db = null; } var dropDBPromise = new Promise$1(function(resolve, reject) { var req = idb.deleteDatabase(options.name); req.onerror = function() { var db2 = req.result; if (db2) { db2.close(); } reject(req.error); }; req.onblocked = function() { console.warn('dropInstance blocked for database "' + options.name + '" until all open connections are closed'); }; req.onsuccess = function() { var db2 = req.result; if (db2) { db2.close(); } resolve(db2); }; }); return dropDBPromise.then(function(db2) { dbContext.db = db2; for (var i3 = 0; i3 < forages.length; i3++) { var _forage = forages[i3]; _advanceReadiness(_forage._dbInfo); } })["catch"](function(err) { (_rejectReadiness(options, err) || Promise$1.resolve())["catch"](function() { }); throw err; }); }); } else { promise = dbPromise.then(function(db) { if (!db.objectStoreNames.contains(options.storeName)) { return; } var newVersion = db.version + 1; _deferReadiness(options); var dbContext = dbContexts[options.name]; var forages = dbContext.forages; db.close(); for (var i2 = 0; i2 < forages.length; i2++) { var forage = forages[i2]; forage._dbInfo.db = null; forage._dbInfo.version = newVersion; } var dropObjectPromise = new Promise$1(function(resolve, reject) { var req = idb.open(options.name, newVersion); req.onerror = function(err) { var db2 = req.result; db2.close(); reject(err); }; req.onupgradeneeded = function() { var db2 = req.result; db2.deleteObjectStore(options.storeName); }; req.onsuccess = function() { var db2 = req.result; db2.close(); resolve(db2); }; }); return dropObjectPromise.then(function(db2) { dbContext.db = db2; for (var j = 0; j < forages.length; j++) { var _forage2 = forages[j]; _forage2._dbInfo.db = db2; _advanceReadiness(_forage2._dbInfo); } })["catch"](function(err) { (_rejectReadiness(options, err) || Promise$1.resolve())["catch"](function() { }); throw err; }); }); } } executeCallback(promise, callback); return promise; } var asyncStorage = { _driver: "asyncStorage", _initStorage, _support: isIndexedDBValid(), iterate, getItem, setItem, removeItem, clear, length, key, keys, dropInstance }; function isWebSQLValid() { return typeof openDatabase === "function"; } var BASE_CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var BLOB_TYPE_PREFIX = "~~local_forage_type~"; var BLOB_TYPE_PREFIX_REGEX = /^~~local_forage_type~([^~]+)~/; var SERIALIZED_MARKER = "__lfsc__:"; var SERIALIZED_MARKER_LENGTH = SERIALIZED_MARKER.length; var TYPE_ARRAYBUFFER = "arbf"; var TYPE_BLOB = "blob"; var TYPE_INT8ARRAY = "si08"; var TYPE_UINT8ARRAY = "ui08"; var TYPE_UINT8CLAMPEDARRAY = "uic8"; var TYPE_INT16ARRAY = "si16"; var TYPE_INT32ARRAY = "si32"; var TYPE_UINT16ARRAY = "ur16"; var TYPE_UINT32ARRAY = "ui32"; var TYPE_FLOAT32ARRAY = "fl32"; var TYPE_FLOAT64ARRAY = "fl64"; var TYPE_SERIALIZED_MARKER_LENGTH = SERIALIZED_MARKER_LENGTH + TYPE_ARRAYBUFFER.length; var toString$1 = Object.prototype.toString; function stringToBuffer(serializedString) { var bufferLength = serializedString.length * 0.75; var len = serializedString.length; var i2; var p = 0; var encoded1, encoded2, encoded3, encoded4; if (serializedString[serializedString.length - 1] === "=") { bufferLength--; if (serializedString[serializedString.length - 2] === "=") { bufferLength--; } } var buffer = new ArrayBuffer(bufferLength); var bytes = new Uint8Array(buffer); for (i2 = 0; i2 < len; i2 += 4) { encoded1 = BASE_CHARS.indexOf(serializedString[i2]); encoded2 = BASE_CHARS.indexOf(serializedString[i2 + 1]); encoded3 = BASE_CHARS.indexOf(serializedString[i2 + 2]); encoded4 = BASE_CHARS.indexOf(serializedString[i2 + 3]); bytes[p++] = encoded1 << 2 | encoded2 >> 4; bytes[p++] = (encoded2 & 15) << 4 | encoded3 >> 2; bytes[p++] = (encoded3 & 3) << 6 | encoded4 & 63; } return buffer; } function bufferToString(buffer) { var bytes = new Uint8Array(buffer); var base64String = ""; var i2; for (i2 = 0; i2 < bytes.length; i2 += 3) { base64String += BASE_CHARS[bytes[i2] >> 2]; base64String += BASE_CHARS[(bytes[i2] & 3) << 4 | bytes[i2 + 1] >> 4]; base64String += BASE_CHARS[(bytes[i2 + 1] & 15) << 2 | bytes[i2 + 2] >> 6]; base64String += BASE_CHARS[bytes[i2 + 2] & 63]; } if (bytes.length % 3 === 2) { base64String = base64String.substring(0, base64String.length - 1) + "="; } else if (bytes.length % 3 === 1) { base64String = base64String.substring(0, base64String.length - 2) + "=="; } return base64String; } function serialize(value, callback) { var valueType = ""; if (value) { valueType = toString$1.call(value); } if (value && (valueType === "[object ArrayBuffer]" || value.buffer && toString$1.call(value.buffer) === "[object ArrayBuffer]")) { var buffer; var marker = SERIALIZED_MARKER; if (value instanceof ArrayBuffer) { buffer = value; marker += TYPE_ARRAYBUFFER; } else { buffer = value.buffer; if (valueType === "[object Int8Array]") { marker += TYPE_INT8ARRAY; } else if (valueType === "[object Uint8Array]") { marker += TYPE_UINT8ARRAY; } else if (valueType === "[object Uint8ClampedArray]") { marker += TYPE_UINT8CLAMPEDARRAY; } else if (valueType === "[object Int16Array]") { marker += TYPE_INT16ARRAY; } else if (valueType === "[object Uint16Array]") { marker += TYPE_UINT16ARRAY; } else if (valueType === "[object Int32Array]") { marker += TYPE_INT32ARRAY; } else if (valueType === "[object Uint32Array]") { marker += TYPE_UINT32ARRAY; } else if (valueType === "[object Float32Array]") { marker += TYPE_FLOAT32ARRAY; } else if (valueType === "[object Float64Array]") { marker += TYPE_FLOAT64ARRAY; } else { callback(new Error("Failed to get type for BinaryArray")); } } callback(marker + bufferToString(buffer)); } else if (valueType === "[object Blob]") { var fileReader = new FileReader(); fileReader.onload = function() { var str = BLOB_TYPE_PREFIX + value.type + "~" + bufferToString(this.result); callback(SERIALIZED_MARKER + TYPE_BLOB + str); }; fileReader.readAsArrayBuffer(value); } else { try { callback(JSON.stringify(value)); } catch (e2) { console.error("Couldn't convert value into a JSON string: ", value); callback(null, e2); } } } function deserialize(value) { if (value.substring(0, SERIALIZED_MARKER_LENGTH) !== SERIALIZED_MARKER) { return JSON.parse(value); } var serializedString = value.substring(TYPE_SERIALIZED_MARKER_LENGTH); var type = value.substring(SERIALIZED_MARKER_LENGTH, TYPE_SERIALIZED_MARKER_LENGTH); var blobType; if (type === TYPE_BLOB && BLOB_TYPE_PREFIX_REGEX.test(serializedString)) { var matcher = serializedString.match(BLOB_TYPE_PREFIX_REGEX); blobType = matcher[1]; serializedString = serializedString.substring(matcher[0].length); } var buffer = stringToBuffer(serializedString); switch (type) { case TYPE_ARRAYBUFFER: return buffer; case TYPE_BLOB: return createBlob([buffer], { type: blobType }); case TYPE_INT8ARRAY: return new Int8Array(buffer); case TYPE_UINT8ARRAY: return new Uint8Array(buffer); case TYPE_UINT8CLAMPEDARRAY: return new Uint8ClampedArray(buffer); case TYPE_INT16ARRAY: return new Int16Array(buffer); case TYPE_UINT16ARRAY: return new Uint16Array(buffer); case TYPE_INT32ARRAY: return new Int32Array(buffer); case TYPE_UINT32ARRAY: return new Uint32Array(buffer); case TYPE_FLOAT32ARRAY: return new Float32Array(buffer); case TYPE_FLOAT64ARRAY: return new Float64Array(buffer); default: throw new Error("Unkown type: " + type); } } var localforageSerializer = { serialize, deserialize, stringToBuffer, bufferToString }; function createDbTable(t2, dbInfo, callback, errorCallback) { t2.executeSql("CREATE TABLE IF NOT EXISTS " + dbInfo.storeName + " (id INTEGER PRIMARY KEY, key unique, value)", [], callback, errorCallback); } function _initStorage$1(options) { var self2 = this; var dbInfo = { db: null }; if (options) { for (var i2 in options) { dbInfo[i2] = typeof options[i2] !== "string" ? options[i2].toString() : options[i2]; } } var dbInfoPromise = new Promise$1(function(resolve, reject) { try { dbInfo.db = openDatabase(dbInfo.name, String(dbInfo.version), dbInfo.description, dbInfo.size); } catch (e2) { return reject(e2); } dbInfo.db.transaction(function(t2) { createDbTable(t2, dbInfo, function() { self2._dbInfo = dbInfo; resolve(); }, function(t3, error) { reject(error); }); }, reject); }); dbInfo.serializer = localforageSerializer; return dbInfoPromise; } function tryExecuteSql(t2, dbInfo, sqlStatement, args, callback, errorCallback) { t2.executeSql(sqlStatement, args, callback, function(t3, error) { if (error.code === error.SYNTAX_ERR) { t3.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?", [dbInfo.storeName], function(t4, results) { if (!results.rows.length) { createDbTable(t4, dbInfo, function() { t4.executeSql(sqlStatement, args, callback, errorCallback); }, errorCallback); } else { errorCallback(t4, error); } }, errorCallback); } else { errorCallback(t3, error); } }, errorCallback); } function getItem$1(key2, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "SELECT * FROM " + dbInfo.storeName + " WHERE key = ? LIMIT 1", [key2], function(t3, results) { var result = results.rows.length ? results.rows.item(0).value : null; if (result) { result = dbInfo.serializer.deserialize(result); } resolve(result); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function iterate$1(iterator, callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "SELECT * FROM " + dbInfo.storeName, [], function(t3, results) { var rows = results.rows; var length2 = rows.length; for (var i2 = 0; i2 < length2; i2++) { var item = rows.item(i2); var result = item.value; if (result) { result = dbInfo.serializer.deserialize(result); } result = iterator(result, item.key, i2 + 1); if (result !== void 0) { resolve(result); return; } } resolve(); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function _setItem(key2, value, callback, retriesLeft) { var self2 = this; key2 = normalizeKey(key2); var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { if (value === void 0) { value = null; } var originalValue = value; var dbInfo = self2._dbInfo; dbInfo.serializer.serialize(value, function(value2, error) { if (error) { reject(error); } else { dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "INSERT OR REPLACE INTO " + dbInfo.storeName + " (key, value) VALUES (?, ?)", [key2, value2], function() { resolve(originalValue); }, function(t3, error2) { reject(error2); }); }, function(sqlError) { if (sqlError.code === sqlError.QUOTA_ERR) { if (retriesLeft > 0) { resolve(_setItem.apply(self2, [key2, originalValue, callback, retriesLeft - 1])); return; } reject(sqlError); } }); } }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function setItem$1(key2, value, callback) { return _setItem.apply(this, [key2, value, callback, 1]); } function removeItem$1(key2, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "DELETE FROM " + dbInfo.storeName + " WHERE key = ?", [key2], function() { resolve(); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function clear$1(callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "DELETE FROM " + dbInfo.storeName, [], function() { resolve(); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function length$1(callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "SELECT COUNT(key) as c FROM " + dbInfo.storeName, [], function(t3, results) { var result = results.rows.item(0).c; resolve(result); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function key$1(n, callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "SELECT key FROM " + dbInfo.storeName + " WHERE id = ? LIMIT 1", [n + 1], function(t3, results) { var result = results.rows.length ? results.rows.item(0).key : null; resolve(result); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function keys$1(callback) { var self2 = this; var promise = new Promise$1(function(resolve, reject) { self2.ready().then(function() { var dbInfo = self2._dbInfo; dbInfo.db.transaction(function(t2) { tryExecuteSql(t2, dbInfo, "SELECT key FROM " + dbInfo.storeName, [], function(t3, results) { var keys2 = []; for (var i2 = 0; i2 < results.rows.length; i2++) { keys2.push(results.rows.item(i2).key); } resolve(keys2); }, function(t3, error) { reject(error); }); }); })["catch"](reject); }); executeCallback(promise, callback); return promise; } function getAllStoreNames(db) { return new Promise$1(function(resolve, reject) { db.transaction(function(t2) { t2.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'", [], function(t3, results) { var storeNames = []; for (var i2 = 0; i2 < results.rows.length; i2++) { storeNames.push(results.rows.item(i2).name); } resolve({ db, storeNames }); }, function(t3, error) { reject(error); }); }, function(sqlError) { reject(sqlError); }); }); } function dropInstance$1(options, callback) { callback = getCallback.apply(this, arguments); var currentConfig = this.config(); options = typeof options !== "function" && options || {}; if (!options.name) { options.name = options.name || currentConfig.name; options.storeName = options.storeName || currentConfig.storeName; } var self2 = this; var promise; if (!options.name) { promise = Promise$1.reject("Invalid arguments"); } else { promise = new Promise$1(function(resolve) { var db; if (options.name === currentConfig.name) { db = self2._dbInfo.db; } else { db = openDatabase(options.name, "", "", 0); } if (!options.storeName) { resolve(getAllStoreNames(db)); } else { resolve({ db, storeNames: [options.storeName] }); } }).then(function(operationInfo) { return new Promise$1(function(resolve, reject) { operationInfo.db.transaction(function(t2) { function dropTable(storeName) { return new Promise$1(function(resolve2, reject2) { t2.executeSql("DROP TABLE IF EXISTS " + storeName, [], function() { resolve2(); }, function(t3, error) { reject2(error); }); }); } var operations = []; for (var i2 = 0, len = operationInfo.storeNames.length; i2 < len; i2++) { operations.push(dropTable(operationInfo.storeNames[i2])); } Promise$1.all(operations).then(function() { resolve(); })["catch"](function(e2) { reject(e2); }); }, function(sqlError) { reject(sqlError); }); }); }); } executeCallback(promise, callback); return promise; } var webSQLStorage = { _driver: "webSQLStorage", _initStorage: _initStorage$1, _support: isWebSQLValid(), iterate: iterate$1, getItem: getItem$1, setItem: setItem$1, removeItem: removeItem$1, clear: clear$1, length: length$1, key: key$1, keys: keys$1, dropInstance: dropInstance$1 }; function isLocalStorageValid() { try { return typeof localStorage !== "undefined" && "setItem" in localStorage && !!localStorage.setItem; } catch (e2) { return false; } } function _getKeyPrefix(options, defaultConfig) { var keyPrefix = options.name + "/"; if (options.storeName !== defaultConfig.storeName) { keyPrefix += options.storeName + "/"; } return keyPrefix; } function checkIfLocalStorageThrows() { var localStorageTestKey = "_localforage_support_test"; try { localStorage.setItem(localStorageTestKey, true); localStorage.removeItem(localStorageTestKey); return false; } catch (e2) { return true; } } function _isLocalStorageUsable() { return !checkIfLocalStorageThrows() || localStorage.length > 0; } function _initStorage$2(options) { var self2 = this; var dbInfo = {}; if (options) { for (var i2 in options) { dbInfo[i2] = options[i2]; } } dbInfo.keyPrefix = _getKeyPrefix(options, self2._defaultConfig); if (!_isLocalStorageUsable()) { return Promise$1.reject(); } self2._dbInfo = dbInfo; dbInfo.serializer = localforageSerializer; return Promise$1.resolve(); } function clear$2(callback) { var self2 = this; var promise = self2.ready().then(function() { var keyPrefix = self2._dbInfo.keyPrefix; for (var i2 = localStorage.length - 1; i2 >= 0; i2--) { var key2 = localStorage.key(i2); if (key2.indexOf(keyPrefix) === 0) { localStorage.removeItem(key2); } } }); executeCallback(promise, callback); return promise; } function getItem$2(key2, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = self2.ready().then(function() { var dbInfo = self2._dbInfo; var result = localStorage.getItem(dbInfo.keyPrefix + key2); if (result) { result = dbInfo.serializer.deserialize(result); } return result; }); executeCallback(promise, callback); return promise; } function iterate$2(iterator, callback) { var self2 = this; var promise = self2.ready().then(function() { var dbInfo = self2._dbInfo; var keyPrefix = dbInfo.keyPrefix; var keyPrefixLength = keyPrefix.length; var length2 = localStorage.length; var iterationNumber = 1; for (var i2 = 0; i2 < length2; i2++) { var key2 = localStorage.key(i2); if (key2.indexOf(keyPrefix) !== 0) { continue; } var value = localStorage.getItem(key2); if (value) { value = dbInfo.serializer.deserialize(value); } value = iterator(value, key2.substring(keyPrefixLength), iterationNumber++); if (value !== void 0) { return value; } } }); executeCallback(promise, callback); return promise; } function key$2(n, callback) { var self2 = this; var promise = self2.ready().then(function() { var dbInfo = self2._dbInfo; var result; try { result = localStorage.key(n); } catch (error) { result = null; } if (result) { result = result.substring(dbInfo.keyPrefix.length); } return result; }); executeCallback(promise, callback); return promise; } function keys$2(callback) { var self2 = this; var promise = self2.ready().then(function() { var dbInfo = self2._dbInfo; var length2 = localStorage.length; var keys2 = []; for (var i2 = 0; i2 < length2; i2++) { var itemKey = localStorage.key(i2); if (itemKey.indexOf(dbInfo.keyPrefix) === 0) { keys2.push(itemKey.substring(dbInfo.keyPrefix.length)); } } return keys2; }); executeCallback(promise, callback); return promise; } function length$2(callback) { var self2 = this; var promise = self2.keys().then(function(keys2) { return keys2.length; }); executeCallback(promise, callback); return promise; } function removeItem$2(key2, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = self2.ready().then(function() { var dbInfo = self2._dbInfo; localStorage.removeItem(dbInfo.keyPrefix + key2); }); executeCallback(promise, callback); return promise; } function setItem$2(key2, value, callback) { var self2 = this; key2 = normalizeKey(key2); var promise = self2.ready().then(function() { if (value === void 0) { value = null; } var originalValue = value; return new Promise$1(function(resolve, reject) { var dbInfo = self2._dbInfo; dbInfo.serializer.serialize(value, function(value2, error) { if (error) { reject(error); } else { try { localStorage.setItem(dbInfo.keyPrefix + key2, value2); resolve(originalValue); } catch (e2) { if (e2.name === "QuotaExceededError" || e2.name === "NS_ERROR_DOM_QUOTA_REACHED") { reject(e2); } reject(e2); } } }); }); }); executeCallback(promise, callback); return promise; } function dropInstance$2(options, callback) { callback = getCallback.apply(this, arguments); options = typeof options !== "function" && options || {}; if (!options.name) { var currentConfig = this.config(); options.name = options.name || currentConfig.name; options.storeName = options.storeName || currentConfig.storeName; } var self2 = this; var promise; if (!options.name) { promise = Promise$1.reject("Invalid arguments"); } else { promise = new Promise$1(function(resolve) { if (!options.storeName) { resolve(options.name + "/"); } else { resolve(_getKeyPrefix(options, self2._defaultConfig)); } }).then(function(keyPrefix) { for (var i2 = localStorage.length - 1; i2 >= 0; i2--) { var key2 = localStorage.key(i2); if (key2.indexOf(keyPrefix) === 0) { localStorage.removeItem(key2); } } }); } executeCallback(promise, callback); return promise; } var localStorageWrapper = { _driver: "localStorageWrapper", _initStorage: _initStorage$2, _support: isLocalStorageValid(), iterate: iterate$2, getItem: getItem$2, setItem: setItem$2, removeItem: removeItem$2, clear: clear$2, length: length$2, key: key$2, keys: keys$2, dropInstance: dropInstance$2 }; var sameValue = function sameValue2(x2, y) { return x2 === y || typeof x2 === "number" && typeof y === "number" && isNaN(x2) && isNaN(y); }; var includes = function includes2(array, searchElement) { var len = array.length; var i2 = 0; while (i2 < len) { if (sameValue(array[i2], searchElement)) { return true; } i2++; } return false; }; var isArray = Array.isArray || function(arg) { return Object.prototype.toString.call(arg) === "[object Array]"; }; var DefinedDrivers = {}; var DriverSupport = {}; var DefaultDrivers = { INDEXEDDB: asyncStorage, WEBSQL: webSQLStorage, LOCALSTORAGE: localStorageWrapper }; var DefaultDriverOrder = [DefaultDrivers.INDEXEDDB._driver, DefaultDrivers.WEBSQL._driver, DefaultDrivers.LOCALSTORAGE._driver]; var OptionalDriverMethods = ["dropInstance"]; var LibraryMethods = ["clear", "getItem", "iterate", "key", "keys", "length", "removeItem", "setItem"].concat(OptionalDriverMethods); var DefaultConfig = { description: "", driver: DefaultDriverOrder.slice(), name: "localforage", size: 4980736, storeName: "keyvaluepairs", version: 1 }; function callWhenReady(localForageInstance, libraryMethod) { localForageInstance[libraryMethod] = function() { var _args = arguments; return localForageInstance.ready().then(function() { return localForageInstance[libraryMethod].apply(localForageInstance, _args); }); }; } function extend() { for (var i2 = 1; i2 < arguments.length; i2++) { var arg = arguments[i2]; if (arg) { for (var _key in arg) { if (arg.hasOwnProperty(_key)) { if (isArray(arg[_key])) { arguments[0][_key] = arg[_key].slice(); } else { arguments[0][_key] = arg[_key]; } } } } } return arguments[0]; } var LocalForage = function() { function LocalForage2(options) { _classCallCheck(this, LocalForage2); for (var driverTypeKey in DefaultDrivers) { if (DefaultDrivers.hasOwnProperty(driverTypeKey)) { var driver = DefaultDrivers[driverTypeKey]; var driverName = driver._driver; this[driverTypeKey] = driverName; if (!DefinedDrivers[driverName]) { this.defineDriver(driver); } } } this._defaultConfig = extend({}, DefaultConfig); this._config = extend({}, this._defaultConfig, options); this._driverSet = null; this._initDriver = null; this._ready = false; this._dbInfo = null; this._wrapLibraryMethodsWithReady(); this.setDriver(this._config.driver)["catch"](function() { }); } LocalForage2.prototype.config = function config4(options) { if ((typeof options === "undefined" ? "undefined" : _typeof(options)) === "object") { if (this._ready) { return new Error("Can't call config() after localforage has been used."); } for (var i2 in options) { if (i2 === "storeName") { options[i2] = options[i2].replace(/\W/g, "_"); } if (i2 === "version" && typeof options[i2] !== "number") { return new Error("Database version must be a number."); } this._config[i2] = options[i2]; } if ("driver" in options && options.driver) { return this.setDriver(this._config.driver); } return true; } else if (typeof options === "string") { return this._config[options]; } else { return this._config; } }; LocalForage2.prototype.defineDriver = function defineDriver(driverObject, callback, errorCallback) { var promise = new Promise$1(function(resolve, reject) { try { var driverName = driverObject._driver; var complianceError = new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver"); if (!driverObject._driver) { reject(complianceError); return; } var driverMethods = LibraryMethods.concat("_initStorage"); for (var i2 = 0, len = driverMethods.length; i2 < len; i2++) { var driverMethodName = driverMethods[i2]; var isRequired = !includes(OptionalDriverMethods, driverMethodName); if ((isRequired || driverObject[driverMethodName]) && typeof driverObject[driverMethodName] !== "function") { reject(complianceError); return; } } var configureMissingMethods = function configureMissingMethods2() { var methodNotImplementedFactory = function methodNotImplementedFactory2(methodName) { return function() { var error = new Error("Method " + methodName + " is not implemented by the current driver"); var promise2 = Promise$1.reject(error); executeCallback(promise2, arguments[arguments.length - 1]); return promise2; }; }; for (var _i = 0, _len = OptionalDriverMethods.length; _i < _len; _i++) { var optionalDriverMethod = OptionalDriverMethods[_i]; if (!driverObject[optionalDriverMethod]) { driverObject[optionalDriverMethod] = methodNotImplementedFactory(optionalDriverMethod); } } }; configureMissingMethods(); var setDriverSupport = function setDriverSupport2(support) { if (DefinedDrivers[driverName]) { console.info("Redefining LocalForage driver: " + driverName); } DefinedDrivers[driverName] = driverObject; DriverSupport[driverName] = support; resolve(); }; if ("_support" in driverObject) { if (driverObject._support && typeof driverObject._support === "function") { driverObject._support().then(setDriverSupport, reject); } else { setDriverSupport(!!driverObject._support); } } else { setDriverSupport(true); } } catch (e2) { reject(e2); } }); executeTwoCallbacks(promise, callback, errorCallback); return promise; }; LocalForage2.prototype.driver = function driver() { return this._driver || null; }; LocalForage2.prototype.getDriver = function getDriver(driverName, callback, errorCallback) { var getDriverPromise = DefinedDrivers[driverName] ? Promise$1.resolve(DefinedDrivers[driverName]) : Promise$1.reject(new Error("Driver not found.")); executeTwoCallbacks(getDriverPromise, callback, errorCallback); return getDriverPromise; }; LocalForage2.prototype.getSerializer = function getSerializer(callback) { var serializerPromise = Promise$1.resolve(localforageSerializer); executeTwoCallbacks(serializerPromise, callback); return serializerPromise; }; LocalForage2.prototype.ready = function ready(callback) { var self2 = this; var promise = self2._driverSet.then(function() { if (self2._ready === null) { self2._ready = self2._initDriver(); } return self2._ready; }); executeTwoCallbacks(promise, callback, callback); return promise; }; LocalForage2.prototype.setDriver = function setDriver(drivers, callback, errorCallback) { var self2 = this; if (!isArray(drivers)) { drivers = [drivers]; } var supportedDrivers = this._getSupportedDrivers(drivers); function setDriverToConfig() { self2._config.driver = self2.driver(); } function extendSelfWithDriver(driver) { self2._extend(driver); setDriverToConfig(); self2._ready = self2._initStorage(self2._config); return self2._ready; } function initDriver(supportedDrivers2) { return function() { var currentDriverIndex = 0; function driverPromiseLoop() { while (currentDriverIndex < supportedDrivers2.length) { var driverName = supportedDrivers2[currentDriverIndex]; currentDriverIndex++; self2._dbInfo = null; self2._ready = null; return self2.getDriver(driverName).then(extendSelfWithDriver)["catch"](driverPromiseLoop); } setDriverToConfig(); var error = new Error("No available storage method found."); self2._driverSet = Promise$1.reject(error); return self2._driverSet; } return driverPromiseLoop(); }; } var oldDriverSetDone = this._driverSet !== null ? this._driverSet["catch"](function() { return Promise$1.resolve(); }) : Promise$1.resolve(); this._driverSet = oldDriverSetDone.then(function() { var driverName = supportedDrivers[0]; self2._dbInfo = null; self2._ready = null; return self2.getDriver(driverName).then(function(driver) { self2._driver = driver._driver; setDriverToConfig(); self2._wrapLibraryMethodsWithReady(); self2._initDriver = initDriver(supportedDrivers); }); })["catch"](function() { setDriverToConfig(); var error = new Error("No available storage method found."); self2._driverSet = Promise$1.reject(error); return self2._driverSet; }); executeTwoCallbacks(this._driverSet, callback, errorCallback); return this._driverSet; }; LocalForage2.prototype.supports = function supports(driverName) { return !!DriverSupport[driverName]; }; LocalForage2.prototype._extend = function _extend(libraryMethodsAndProperties) { extend(this, libraryMethodsAndProperties); }; LocalForage2.prototype._getSupportedDrivers = function _getSupportedDrivers(drivers) { var supportedDrivers = []; for (var i2 = 0, len = drivers.length; i2 < len; i2++) { var driverName = drivers[i2]; if (this.supports(driverName)) { supportedDrivers.push(driverName); } } return supportedDrivers; }; LocalForage2.prototype._wrapLibraryMethodsWithReady = function _wrapLibraryMethodsWithReady() { for (var i2 = 0, len = LibraryMethods.length; i2 < len; i2++) { callWhenReady(this, LibraryMethods[i2]); } }; LocalForage2.prototype.createInstance = function createInstance(options) { return new LocalForage2(options); }; return LocalForage2; }(); var localforage_js = new LocalForage(); module4.exports = localforage_js; }, { "3": 3 }] }, {}, [4])(4); }); } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/offline.js var require_offline = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/offline.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var localforage_1 = tslib_1.__importDefault(require_localforage()); var Offline = function() { function Offline2(options) { if (options === void 0) { options = {}; } this.name = Offline2.id; this.global = utils_1.getGlobalObject(); this.maxStoredEvents = options.maxStoredEvents || 30; this.offlineEventStore = localforage_1.default.createInstance({ name: "sentry/offlineEventStore" }); } Offline2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { var _this = this; this.hub = getCurrentHub(); if ("addEventListener" in this.global) { this.global.addEventListener("online", function() { void _this._sendEvents().catch(function() { utils_1.logger.warn("could not send cached events"); }); }); } addGlobalEventProcessor(function(event) { if (_this.hub && _this.hub.getIntegration(Offline2)) { if ("navigator" in _this.global && "onLine" in _this.global.navigator && !_this.global.navigator.onLine) { void _this._cacheEvent(event).then(function(_event) { return _this._enforceMaxEvents(); }).catch(function(_error) { utils_1.logger.warn("could not cache event while offline"); }); return null; } } return event; }); if ("navigator" in this.global && "onLine" in this.global.navigator && this.global.navigator.onLine) { void this._sendEvents().catch(function() { utils_1.logger.warn("could not send cached events"); }); } }; Offline2.prototype._cacheEvent = function(event) { return tslib_1.__awaiter(this, void 0, void 0, function() { return tslib_1.__generator(this, function(_a4) { return [2, this.offlineEventStore.setItem(utils_1.uuid4(), utils_1.normalize(event))]; }); }); }; Offline2.prototype._enforceMaxEvents = function() { return tslib_1.__awaiter(this, void 0, void 0, function() { var events; var _this = this; return tslib_1.__generator(this, function(_a4) { events = []; return [2, this.offlineEventStore.iterate(function(event, cacheKey, _index) { events.push({ cacheKey, event }); }).then(function() { return _this._purgeEvents( events.sort(function(a, b) { return (b.event.timestamp || 0) - (a.event.timestamp || 0); }).slice(_this.maxStoredEvents < events.length ? _this.maxStoredEvents : events.length).map(function(event) { return event.cacheKey; }) ); }).catch(function(_error) { utils_1.logger.warn("could not enforce max events"); })]; }); }); }; Offline2.prototype._purgeEvent = function(cacheKey) { return tslib_1.__awaiter(this, void 0, void 0, function() { return tslib_1.__generator(this, function(_a4) { return [2, this.offlineEventStore.removeItem(cacheKey)]; }); }); }; Offline2.prototype._purgeEvents = function(cacheKeys) { return tslib_1.__awaiter(this, void 0, void 0, function() { var _this = this; return tslib_1.__generator(this, function(_a4) { return [2, Promise.all(cacheKeys.map(function(cacheKey) { return _this._purgeEvent(cacheKey); })).then()]; }); }); }; Offline2.prototype._sendEvents = function() { return tslib_1.__awaiter(this, void 0, void 0, function() { var _this = this; return tslib_1.__generator(this, function(_a4) { return [2, this.offlineEventStore.iterate(function(event, cacheKey, _index) { if (_this.hub) { _this.hub.captureEvent(event); void _this._purgeEvent(cacheKey).catch(function(_error) { utils_1.logger.warn("could not purge event from cache"); }); } else { utils_1.logger.warn("no hub found - could not send cached event"); } })]; }); }); }; Offline2.id = "Offline"; return Offline2; }(); exports.Offline = Offline; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/reportingobserver.js var require_reportingobserver = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/reportingobserver.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var ReportTypes; (function(ReportTypes2) { ReportTypes2["Crash"] = "crash"; ReportTypes2["Deprecation"] = "deprecation"; ReportTypes2["Intervention"] = "intervention"; })(ReportTypes || (ReportTypes = {})); var ReportingObserver = function() { function ReportingObserver2(_options) { if (_options === void 0) { _options = { types: [ReportTypes.Crash, ReportTypes.Deprecation, ReportTypes.Intervention] }; } this._options = _options; this.name = ReportingObserver2.id; } ReportingObserver2.prototype.setupOnce = function(_, getCurrentHub) { if (!utils_1.supportsReportingObserver()) { return; } this._getCurrentHub = getCurrentHub; var observer = new (utils_1.getGlobalObject()).ReportingObserver(this.handler.bind(this), { buffered: true, types: this._options.types }); observer.observe(); }; ReportingObserver2.prototype.handler = function(reports) { var e_1, _a4; var hub = this._getCurrentHub && this._getCurrentHub(); if (!hub || !hub.getIntegration(ReportingObserver2)) { return; } var _loop_1 = function(report2) { hub.withScope(function(scope) { scope.setExtra("url", report2.url); var label = "ReportingObserver [" + report2.type + "]"; var details = "No details available"; if (report2.body) { var plainBody = {}; for (var prop in report2.body) { plainBody[prop] = report2.body[prop]; } scope.setExtra("body", plainBody); if (report2.type === ReportTypes.Crash) { var body = report2.body; details = [body.crashId || "", body.reason || ""].join(" ").trim() || details; } else { var body = report2.body; details = body.message || details; } } hub.captureMessage(label + ": " + details); }); }; try { for (var reports_1 = tslib_1.__values(reports), reports_1_1 = reports_1.next(); !reports_1_1.done; reports_1_1 = reports_1.next()) { var report = reports_1_1.value; _loop_1(report); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (reports_1_1 && !reports_1_1.done && (_a4 = reports_1.return)) _a4.call(reports_1); } finally { if (e_1) throw e_1.error; } } }; ReportingObserver2.id = "ReportingObserver"; return ReportingObserver2; }(); exports.ReportingObserver = ReportingObserver; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/rewriteframes.js var require_rewriteframes = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/rewriteframes.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var RewriteFrames2 = function() { function RewriteFrames3(options) { var _this = this; if (options === void 0) { options = {}; } this.name = RewriteFrames3.id; this._prefix = "app:///"; this._iteratee = function(frame) { if (!frame.filename) { return frame; } var isWindowsFrame = /^[A-Z]:\\/.test(frame.filename); var startsWithSlash = /^\//.test(frame.filename); if (isWindowsFrame || startsWithSlash) { var filename = isWindowsFrame ? frame.filename.replace(/^[A-Z]:/, "").replace(/\\/g, "/") : frame.filename; var base = _this._root ? utils_1.relative(_this._root, filename) : utils_1.basename(filename); frame.filename = "" + _this._prefix + base; } return frame; }; if (options.root) { this._root = options.root; } if (options.prefix) { this._prefix = options.prefix; } if (options.iteratee) { this._iteratee = options.iteratee; } } RewriteFrames3.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { addGlobalEventProcessor(function(event) { var self2 = getCurrentHub().getIntegration(RewriteFrames3); if (self2) { return self2.process(event); } return event; }); }; RewriteFrames3.prototype.process = function(originalEvent) { var processedEvent = originalEvent; if (originalEvent.exception && Array.isArray(originalEvent.exception.values)) { processedEvent = this._processExceptionsEvent(processedEvent); } if (originalEvent.stacktrace) { processedEvent = this._processStacktraceEvent(processedEvent); } return processedEvent; }; RewriteFrames3.prototype._processExceptionsEvent = function(event) { var _this = this; try { return tslib_1.__assign(tslib_1.__assign({}, event), { exception: tslib_1.__assign(tslib_1.__assign({}, event.exception), { values: event.exception.values.map(function(value) { return tslib_1.__assign(tslib_1.__assign({}, value), { stacktrace: _this._processStacktrace(value.stacktrace) }); }) }) }); } catch (_oO) { return event; } }; RewriteFrames3.prototype._processStacktraceEvent = function(event) { try { return tslib_1.__assign(tslib_1.__assign({}, event), { stacktrace: this._processStacktrace(event.stacktrace) }); } catch (_oO) { return event; } }; RewriteFrames3.prototype._processStacktrace = function(stacktrace) { var _this = this; return tslib_1.__assign(tslib_1.__assign({}, stacktrace), { frames: stacktrace && stacktrace.frames && stacktrace.frames.map(function(f4) { return _this._iteratee(f4); }) }); }; RewriteFrames3.id = "RewriteFrames"; return RewriteFrames3; }(); exports.RewriteFrames = RewriteFrames2; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/sessiontiming.js var require_sessiontiming = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/sessiontiming.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var SessionTiming = function() { function SessionTiming2() { this.name = SessionTiming2.id; this._startTime = Date.now(); } SessionTiming2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { addGlobalEventProcessor(function(event) { var self2 = getCurrentHub().getIntegration(SessionTiming2); if (self2) { return self2.process(event); } return event; }); }; SessionTiming2.prototype.process = function(event) { var _a4; var now = Date.now(); return tslib_1.__assign(tslib_1.__assign({}, event), { extra: tslib_1.__assign(tslib_1.__assign({}, event.extra), (_a4 = {}, _a4["session:start"] = this._startTime, _a4["session:duration"] = now - this._startTime, _a4["session:end"] = now, _a4)) }); }; SessionTiming2.id = "SessionTiming"; return SessionTiming2; }(); exports.SessionTiming = SessionTiming; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/transaction.js var require_transaction2 = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/transaction.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var Transaction = function() { function Transaction2() { this.name = Transaction2.id; } Transaction2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { addGlobalEventProcessor(function(event) { var self2 = getCurrentHub().getIntegration(Transaction2); if (self2) { return self2.process(event); } return event; }); }; Transaction2.prototype.process = function(event) { var frames = this._getFramesFromEvent(event); for (var i2 = frames.length - 1; i2 >= 0; i2--) { var frame = frames[i2]; if (frame.in_app === true) { event.transaction = this._getTransaction(frame); break; } } return event; }; Transaction2.prototype._getFramesFromEvent = function(event) { var exception = event.exception && event.exception.values && event.exception.values[0]; return exception && exception.stacktrace && exception.stacktrace.frames || []; }; Transaction2.prototype._getTransaction = function(frame) { return frame.module || frame.function ? (frame.module || "?") + "/" + (frame.function || "?") : ""; }; Transaction2.id = "Transaction"; return Transaction2; }(); exports.Transaction = Transaction; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/vue.js var require_vue = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/vue.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var TRACING_GETTER = { id: "Tracing" }; var BROWSER_TRACING_GETTER = { id: "BrowserTracing" }; var HOOKS = { activate: ["activated", "deactivated"], create: ["beforeCreate", "created"], destroy: ["beforeDestroy", "destroyed"], mount: ["beforeMount", "mounted"], update: ["beforeUpdate", "updated"] }; var COMPONENT_NAME_REGEXP = /(?:^|[-_/])(\w)/g; var ROOT_COMPONENT_NAME = "root"; var ANONYMOUS_COMPONENT_NAME = "anonymous component"; var Vue = function() { function Vue2(options) { var _this = this; this.name = Vue2.id; this._componentsCache = {}; this._applyTracingHooks = function(vm, getCurrentHub) { if (vm.$options.$_sentryPerfHook) { return; } vm.$options.$_sentryPerfHook = true; var name = _this._getComponentName(vm); var rootMount = name === ROOT_COMPONENT_NAME; var spans = {}; var rootHandler = function(hook) { var now = utils_1.timestampWithMs(); if (_this._rootSpan) { _this._finishRootSpan(now, getCurrentHub); } else { vm.$once("hook:" + hook, function() { var tracingIntegration = getCurrentHub().getIntegration(TRACING_GETTER); if (tracingIntegration) { _this._tracingActivity = tracingIntegration.constructor.pushActivity("Vue Application Render"); var transaction = tracingIntegration.constructor.getTransaction(); if (transaction) { _this._rootSpan = transaction.startChild({ description: "Application Render", op: "vue" }); } } else { var activeTransaction = getActiveTransaction(getCurrentHub()); if (activeTransaction) { _this._rootSpan = activeTransaction.startChild({ description: "Application Render", op: "vue" }); } } }); } }; var childHandler = function(hook, operation) { var shouldTrack = Array.isArray(_this._options.tracingOptions.trackComponents) ? _this._options.tracingOptions.trackComponents.indexOf(name) > -1 : _this._options.tracingOptions.trackComponents; if (!_this._rootSpan || !shouldTrack) { return; } var now = utils_1.timestampWithMs(); var span = spans[operation]; if (span) { span.finish(); _this._finishRootSpan(now, getCurrentHub); } else { vm.$once("hook:" + hook, function() { if (_this._rootSpan) { spans[operation] = _this._rootSpan.startChild({ description: "Vue <" + name + ">", op: operation }); } }); } }; _this._options.tracingOptions.hooks.forEach(function(operation) { var internalHooks = HOOKS[operation]; if (!internalHooks) { utils_1.logger.warn("Unknown hook: " + operation); return; } internalHooks.forEach(function(internalHook) { var handler = rootMount ? rootHandler.bind(_this, internalHook) : childHandler.bind(_this, internalHook, operation); var currentValue = vm.$options[internalHook]; if (Array.isArray(currentValue)) { vm.$options[internalHook] = tslib_1.__spread([handler], currentValue); } else if (typeof currentValue === "function") { vm.$options[internalHook] = [handler, currentValue]; } else { vm.$options[internalHook] = [handler]; } }); }); }; utils_1.logger.log("You are still using the Vue.js integration, consider moving to @sentry/vue"); this._options = tslib_1.__assign(tslib_1.__assign({ Vue: utils_1.getGlobalObject().Vue, attachProps: true, logErrors: false, tracing: false }, options), { tracingOptions: tslib_1.__assign({ hooks: ["mount", "update"], timeout: 2e3, trackComponents: false }, options.tracingOptions) }); } Vue2.prototype.setupOnce = function(_, getCurrentHub) { if (!this._options.Vue) { utils_1.logger.error("Vue integration is missing a Vue instance"); return; } this._attachErrorHandler(getCurrentHub); if (this._options.tracing) { this._startTracing(getCurrentHub); } }; Vue2.prototype._getComponentName = function(vm) { if (!vm) { return ANONYMOUS_COMPONENT_NAME; } if (vm.$root === vm) { return ROOT_COMPONENT_NAME; } if (!vm.$options) { return ANONYMOUS_COMPONENT_NAME; } if (vm.$options.name) { return vm.$options.name; } if (vm.$options._componentTag) { return vm.$options._componentTag; } if (vm.$options.__file) { var unifiedFile = vm.$options.__file.replace(/^[a-zA-Z]:/, "").replace(/\\/g, "/"); var filename = utils_1.basename(unifiedFile, ".vue"); return this._componentsCache[filename] || (this._componentsCache[filename] = filename.replace(COMPONENT_NAME_REGEXP, function(_, c2) { return c2 ? c2.toUpperCase() : ""; })); } return ANONYMOUS_COMPONENT_NAME; }; Vue2.prototype._finishRootSpan = function(timestamp, getCurrentHub) { var _this = this; if (this._rootSpanTimer) { clearTimeout(this._rootSpanTimer); } this._rootSpanTimer = setTimeout(function() { if (_this._tracingActivity) { var tracingIntegration = getCurrentHub().getIntegration(TRACING_GETTER); if (tracingIntegration) { tracingIntegration.constructor.popActivity(_this._tracingActivity); } } if (_this._rootSpan) { _this._rootSpan.finish(timestamp); } }, this._options.tracingOptions.timeout); }; Vue2.prototype._startTracing = function(getCurrentHub) { var applyTracingHooks = this._applyTracingHooks; this._options.Vue.mixin({ beforeCreate: function() { if (getCurrentHub().getIntegration(TRACING_GETTER) || getCurrentHub().getIntegration(BROWSER_TRACING_GETTER)) { applyTracingHooks(this, getCurrentHub); } else { utils_1.logger.error("Vue integration has tracing enabled, but Tracing integration is not configured"); } } }); }; Vue2.prototype._attachErrorHandler = function(getCurrentHub) { var _this = this; var currentErrorHandler = this._options.Vue.config.errorHandler; this._options.Vue.config.errorHandler = function(error, vm, info) { var metadata = {}; if (vm) { try { metadata.componentName = _this._getComponentName(vm); if (_this._options.attachProps) { metadata.propsData = vm.$options.propsData; } } catch (_oO) { utils_1.logger.warn("Unable to extract metadata from Vue component."); } } if (info) { metadata.lifecycleHook = info; } if (getCurrentHub().getIntegration(Vue2)) { setTimeout(function() { getCurrentHub().withScope(function(scope) { scope.setContext("vue", metadata); getCurrentHub().captureException(error); }); }); } if (typeof currentErrorHandler === "function") { currentErrorHandler.call(_this._options.Vue, error, vm, info); } if (_this._options.logErrors) { if (_this._options.Vue.util) { _this._options.Vue.util.warn("Error in " + info + ': "' + (error && error.toString()) + '"', vm); } console.error(error); } }; }; Vue2.id = "Vue"; return Vue2; }(); exports.Vue = Vue; function getActiveTransaction(hub) { if (hub && hub.getScope) { var scope = hub.getScope(); if (scope) { return scope.getTransaction(); } } return void 0; } exports.getActiveTransaction = getActiveTransaction; } }); // ../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/index.js var require_dist3 = __commonJS({ "../../node_modules/.pnpm/@sentry+integrations@6.15.0/node_modules/@sentry/integrations/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var angular_1 = require_angular(); exports.Angular = angular_1.Angular; var captureconsole_1 = require_captureconsole(); exports.CaptureConsole = captureconsole_1.CaptureConsole; var debug_1 = require_debug(); exports.Debug = debug_1.Debug; var dedupe_1 = require_dedupe(); exports.Dedupe = dedupe_1.Dedupe; var ember_1 = require_ember(); exports.Ember = ember_1.Ember; var extraerrordata_1 = require_extraerrordata(); exports.ExtraErrorData = extraerrordata_1.ExtraErrorData; var offline_1 = require_offline(); exports.Offline = offline_1.Offline; var reportingobserver_1 = require_reportingobserver(); exports.ReportingObserver = reportingobserver_1.ReportingObserver; var rewriteframes_1 = require_rewriteframes(); exports.RewriteFrames = rewriteframes_1.RewriteFrames; var sessiontiming_1 = require_sessiontiming(); exports.SessionTiming = sessiontiming_1.SessionTiming; var transaction_1 = require_transaction2(); exports.Transaction = transaction_1.Transaction; var vue_1 = require_vue(); exports.Vue = vue_1.Vue; } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/format.js var require_format = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/format.js"(exports, module2) { "use strict"; var InvalidFormatError = class extends Error { constructor(formatFn) { super(`Format functions must be synchronous taking a two arguments: (info, opts) Found: ${formatFn.toString().split("\n")[0]} `); Error.captureStackTrace(this, InvalidFormatError); } }; module2.exports = (formatFn) => { if (formatFn.length > 2) { throw new InvalidFormatError(formatFn); } function Format(options = {}) { this.options = options; } Format.prototype.transform = formatFn; function createFormatWrap(opts) { return new Format(opts); } createFormatWrap.Format = Format; return createFormatWrap; }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/styles.js var require_styles = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/styles.js"(exports, module2) { var styles = {}; module2["exports"] = styles; var codes = { reset: [0, 0], bold: [1, 22], dim: [2, 22], italic: [3, 23], underline: [4, 24], inverse: [7, 27], hidden: [8, 28], strikethrough: [9, 29], black: [30, 39], red: [31, 39], green: [32, 39], yellow: [33, 39], blue: [34, 39], magenta: [35, 39], cyan: [36, 39], white: [37, 39], gray: [90, 39], grey: [90, 39], brightRed: [91, 39], brightGreen: [92, 39], brightYellow: [93, 39], brightBlue: [94, 39], brightMagenta: [95, 39], brightCyan: [96, 39], brightWhite: [97, 39], bgBlack: [40, 49], bgRed: [41, 49], bgGreen: [42, 49], bgYellow: [43, 49], bgBlue: [44, 49], bgMagenta: [45, 49], bgCyan: [46, 49], bgWhite: [47, 49], bgGray: [100, 49], bgGrey: [100, 49], bgBrightRed: [101, 49], bgBrightGreen: [102, 49], bgBrightYellow: [103, 49], bgBrightBlue: [104, 49], bgBrightMagenta: [105, 49], bgBrightCyan: [106, 49], bgBrightWhite: [107, 49], blackBG: [40, 49], redBG: [41, 49], greenBG: [42, 49], yellowBG: [43, 49], blueBG: [44, 49], magentaBG: [45, 49], cyanBG: [46, 49], whiteBG: [47, 49] }; Object.keys(codes).forEach(function(key) { var val = codes[key]; var style = styles[key] = []; style.open = "\x1B[" + val[0] + "m"; style.close = "\x1B[" + val[1] + "m"; }); } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/system/has-flag.js var require_has_flag = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/system/has-flag.js"(exports, module2) { "use strict"; module2.exports = function(flag, argv) { argv = argv || process.argv; var terminatorPos = argv.indexOf("--"); var prefix = /^-{1,2}/.test(flag) ? "" : "--"; var pos = argv.indexOf(prefix + flag); return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos); }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/system/supports-colors.js var require_supports_colors = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/system/supports-colors.js"(exports, module2) { "use strict"; var os = require("os"); var hasFlag = require_has_flag(); var env = process.env; var forceColor = void 0; if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false")) { forceColor = false; } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { forceColor = true; } if ("FORCE_COLOR" in env) { forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0; } function translateLevel(level) { if (level === 0) { return false; } return { level, hasBasic: true, has256: level >= 2, has16m: level >= 3 }; } function supportsColor(stream) { if (forceColor === false) { return 0; } if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { return 3; } if (hasFlag("color=256")) { return 2; } if (stream && !stream.isTTY && forceColor !== true) { return 0; } var min = forceColor ? 1 : 0; if (process.platform === "win32") { var osRelease = os.release().split("."); if (Number(process.versions.node.split(".")[0]) >= 8 && Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { return Number(osRelease[2]) >= 14931 ? 3 : 2; } return 1; } if ("CI" in env) { if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some(function(sign) { return sign in env; }) || env.CI_NAME === "codeship") { return 1; } return min; } if ("TEAMCITY_VERSION" in env) { return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; } if ("TERM_PROGRAM" in env) { var version2 = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); switch (env.TERM_PROGRAM) { case "iTerm.app": return version2 >= 3 ? 3 : 2; case "Hyper": return 3; case "Apple_Terminal": return 2; } } if (/-256(color)?$/i.test(env.TERM)) { return 2; } if (/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { return 1; } if ("COLORTERM" in env) { return 1; } if (env.TERM === "dumb") { return min; } return min; } function getSupportLevel(stream) { var level = supportsColor(stream); return translateLevel(level); } module2.exports = { supportsColor: getSupportLevel, stdout: getSupportLevel(process.stdout), stderr: getSupportLevel(process.stderr) }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/custom/trap.js var require_trap = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/custom/trap.js"(exports, module2) { module2["exports"] = function runTheTrap(text, options) { var result = ""; text = text || "Run the trap, drop the bass"; text = text.split(""); var trap = { a: ["@", "\u0104", "\u023A", "\u0245", "\u0394", "\u039B", "\u0414"], b: ["\xDF", "\u0181", "\u0243", "\u026E", "\u03B2", "\u0E3F"], c: ["\xA9", "\u023B", "\u03FE"], d: ["\xD0", "\u018A", "\u0500", "\u0501", "\u0502", "\u0503"], e: [ "\xCB", "\u0115", "\u018E", "\u0258", "\u03A3", "\u03BE", "\u04BC", "\u0A6C" ], f: ["\u04FA"], g: ["\u0262"], h: ["\u0126", "\u0195", "\u04A2", "\u04BA", "\u04C7", "\u050A"], i: ["\u0F0F"], j: ["\u0134"], k: ["\u0138", "\u04A0", "\u04C3", "\u051E"], l: ["\u0139"], m: ["\u028D", "\u04CD", "\u04CE", "\u0520", "\u0521", "\u0D69"], n: ["\xD1", "\u014B", "\u019D", "\u0376", "\u03A0", "\u048A"], o: [ "\xD8", "\xF5", "\xF8", "\u01FE", "\u0298", "\u047A", "\u05DD", "\u06DD", "\u0E4F" ], p: ["\u01F7", "\u048E"], q: ["\u09CD"], r: ["\xAE", "\u01A6", "\u0210", "\u024C", "\u0280", "\u042F"], s: ["\xA7", "\u03DE", "\u03DF", "\u03E8"], t: ["\u0141", "\u0166", "\u0373"], u: ["\u01B1", "\u054D"], v: ["\u05D8"], w: ["\u0428", "\u0460", "\u047C", "\u0D70"], x: ["\u04B2", "\u04FE", "\u04FC", "\u04FD"], y: ["\xA5", "\u04B0", "\u04CB"], z: ["\u01B5", "\u0240"] }; text.forEach(function(c2) { c2 = c2.toLowerCase(); var chars = trap[c2] || [" "]; var rand = Math.floor(Math.random() * chars.length); if (typeof trap[c2] !== "undefined") { result += trap[c2][rand]; } else { result += c2; } }); return result; }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/custom/zalgo.js var require_zalgo = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/custom/zalgo.js"(exports, module2) { module2["exports"] = function zalgo(text, options) { text = text || " he is here "; var soul = { "up": [ "\u030D", "\u030E", "\u0304", "\u0305", "\u033F", "\u0311", "\u0306", "\u0310", "\u0352", "\u0357", "\u0351", "\u0307", "\u0308", "\u030A", "\u0342", "\u0313", "\u0308", "\u034A", "\u034B", "\u034C", "\u0303", "\u0302", "\u030C", "\u0350", "\u0300", "\u0301", "\u030B", "\u030F", "\u0312", "\u0313", "\u0314", "\u033D", "\u0309", "\u0363", "\u0364", "\u0365", "\u0366", "\u0367", "\u0368", "\u0369", "\u036A", "\u036B", "\u036C", "\u036D", "\u036E", "\u036F", "\u033E", "\u035B", "\u0346", "\u031A" ], "down": [ "\u0316", "\u0317", "\u0318", "\u0319", "\u031C", "\u031D", "\u031E", "\u031F", "\u0320", "\u0324", "\u0325", "\u0326", "\u0329", "\u032A", "\u032B", "\u032C", "\u032D", "\u032E", "\u032F", "\u0330", "\u0331", "\u0332", "\u0333", "\u0339", "\u033A", "\u033B", "\u033C", "\u0345", "\u0347", "\u0348", "\u0349", "\u034D", "\u034E", "\u0353", "\u0354", "\u0355", "\u0356", "\u0359", "\u035A", "\u0323" ], "mid": [ "\u0315", "\u031B", "\u0300", "\u0301", "\u0358", "\u0321", "\u0322", "\u0327", "\u0328", "\u0334", "\u0335", "\u0336", "\u035C", "\u035D", "\u035E", "\u035F", "\u0360", "\u0362", "\u0338", "\u0337", "\u0361", " \u0489" ] }; var all = [].concat(soul.up, soul.down, soul.mid); function randomNumber(range) { var r3 = Math.floor(Math.random() * range); return r3; } function isChar(character) { var bool = false; all.filter(function(i2) { bool = i2 === character; }); return bool; } function heComes(text2, options2) { var result = ""; var counts; var l; options2 = options2 || {}; options2["up"] = typeof options2["up"] !== "undefined" ? options2["up"] : true; options2["mid"] = typeof options2["mid"] !== "undefined" ? options2["mid"] : true; options2["down"] = typeof options2["down"] !== "undefined" ? options2["down"] : true; options2["size"] = typeof options2["size"] !== "undefined" ? options2["size"] : "maxi"; text2 = text2.split(""); for (l in text2) { if (isChar(l)) { continue; } result = result + text2[l]; counts = { "up": 0, "down": 0, "mid": 0 }; switch (options2.size) { case "mini": counts.up = randomNumber(8); counts.mid = randomNumber(2); counts.down = randomNumber(8); break; case "maxi": counts.up = randomNumber(16) + 3; counts.mid = randomNumber(4) + 1; counts.down = randomNumber(64) + 3; break; default: counts.up = randomNumber(8) + 1; counts.mid = randomNumber(6) / 2; counts.down = randomNumber(8) + 1; break; } var arr = ["up", "mid", "down"]; for (var d in arr) { var index = arr[d]; for (var i2 = 0; i2 <= counts[index]; i2++) { if (options2[index]) { result = result + soul[index][randomNumber(soul[index].length)]; } } } } return result; } return heComes(text, options); }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/america.js var require_america = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/america.js"(exports, module2) { module2["exports"] = function(colors) { return function(letter, i2, exploded) { if (letter === " ") return letter; switch (i2 % 3) { case 0: return colors.red(letter); case 1: return colors.white(letter); case 2: return colors.blue(letter); } }; }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/zebra.js var require_zebra = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/zebra.js"(exports, module2) { module2["exports"] = function(colors) { return function(letter, i2, exploded) { return i2 % 2 === 0 ? letter : colors.inverse(letter); }; }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/rainbow.js var require_rainbow = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/rainbow.js"(exports, module2) { module2["exports"] = function(colors) { var rainbowColors = ["red", "yellow", "green", "blue", "magenta"]; return function(letter, i2, exploded) { if (letter === " ") { return letter; } else { return colors[rainbowColors[i2++ % rainbowColors.length]](letter); } }; }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/random.js var require_random = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/maps/random.js"(exports, module2) { module2["exports"] = function(colors) { var available = [ "underline", "inverse", "grey", "yellow", "red", "green", "blue", "white", "cyan", "magenta", "brightYellow", "brightRed", "brightGreen", "brightBlue", "brightWhite", "brightCyan", "brightMagenta" ]; return function(letter, i2, exploded) { return letter === " " ? letter : colors[available[Math.round(Math.random() * (available.length - 2))]](letter); }; }; } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/colors.js var require_colors = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/lib/colors.js"(exports, module2) { var colors = {}; module2["exports"] = colors; colors.themes = {}; var util = require("util"); var ansiStyles = colors.styles = require_styles(); var defineProps = Object.defineProperties; var newLineRegex = new RegExp(/[\r\n]+/g); colors.supportsColor = require_supports_colors().supportsColor; if (typeof colors.enabled === "undefined") { colors.enabled = colors.supportsColor() !== false; } colors.enable = function() { colors.enabled = true; }; colors.disable = function() { colors.enabled = false; }; colors.stripColors = colors.strip = function(str) { return ("" + str).replace(/\x1B\[\d+m/g, ""); }; var stylize = colors.stylize = function stylize2(str, style) { if (!colors.enabled) { return str + ""; } var styleMap = ansiStyles[style]; if (!styleMap && style in colors) { return colors[style](str); } return styleMap.open + str + styleMap.close; }; var matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g; var escapeStringRegexp = function(str) { if (typeof str !== "string") { throw new TypeError("Expected a string"); } return str.replace(matchOperatorsRe, "\\$&"); }; function build(_styles) { var builder = function builder2() { return applyStyle.apply(builder2, arguments); }; builder._styles = _styles; builder.__proto__ = proto; return builder; } var styles = function() { var ret = {}; ansiStyles.grey = ansiStyles.gray; Object.keys(ansiStyles).forEach(function(key) { ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), "g"); ret[key] = { get: function() { return build(this._styles.concat(key)); } }; }); return ret; }(); var proto = defineProps(function colors2() { }, styles); function applyStyle() { var args = Array.prototype.slice.call(arguments); var str = args.map(function(arg) { if (arg != null && arg.constructor === String) { return arg; } else { return util.inspect(arg); } }).join(" "); if (!colors.enabled || !str) { return str; } var newLinesPresent = str.indexOf("\n") != -1; var nestedStyles = this._styles; var i2 = nestedStyles.length; while (i2--) { var code = ansiStyles[nestedStyles[i2]]; str = code.open + str.replace(code.closeRe, code.open) + code.close; if (newLinesPresent) { str = str.replace(newLineRegex, function(match) { return code.close + match + code.open; }); } } return str; } colors.setTheme = function(theme) { if (typeof theme === "string") { console.log("colors.setTheme now only accepts an object, not a string. If you are trying to set a theme from a file, it is now your (the caller's) responsibility to require the file. The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));"); return; } for (var style in theme) { (function(style2) { colors[style2] = function(str) { if (typeof theme[style2] === "object") { var out = str; for (var i2 in theme[style2]) { out = colors[theme[style2][i2]](out); } return out; } return colors[theme[style2]](str); }; })(style); } }; function init2() { var ret = {}; Object.keys(styles).forEach(function(name) { ret[name] = { get: function() { return build([name]); } }; }); return ret; } var sequencer = function sequencer2(map2, str) { var exploded = str.split(""); exploded = exploded.map(map2); return exploded.join(""); }; colors.trap = require_trap(); colors.zalgo = require_zalgo(); colors.maps = {}; colors.maps.america = require_america()(colors); colors.maps.zebra = require_zebra()(colors); colors.maps.rainbow = require_rainbow()(colors); colors.maps.random = require_random()(colors); for (map in colors.maps) { (function(map2) { colors[map2] = function(str) { return sequencer(colors.maps[map2], str); }; })(map); } var map; defineProps(colors, init2()); } }); // ../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/safe.js var require_safe = __commonJS({ "../../node_modules/.pnpm/@colors+colors@1.5.0/node_modules/@colors/colors/safe.js"(exports, module2) { var colors = require_colors(); module2["exports"] = colors; } }); // ../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/cli.js var require_cli = __commonJS({ "../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/cli.js"(exports) { "use strict"; exports.levels = { error: 0, warn: 1, help: 2, data: 3, info: 4, debug: 5, prompt: 6, verbose: 7, input: 8, silly: 9 }; exports.colors = { error: "red", warn: "yellow", help: "cyan", data: "grey", info: "green", debug: "blue", prompt: "grey", verbose: "cyan", input: "grey", silly: "magenta" }; } }); // ../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/npm.js var require_npm = __commonJS({ "../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/npm.js"(exports) { "use strict"; exports.levels = { error: 0, warn: 1, info: 2, http: 3, verbose: 4, debug: 5, silly: 6 }; exports.colors = { error: "red", warn: "yellow", info: "green", http: "green", verbose: "cyan", debug: "blue", silly: "magenta" }; } }); // ../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/syslog.js var require_syslog = __commonJS({ "../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/syslog.js"(exports) { "use strict"; exports.levels = { emerg: 0, alert: 1, crit: 2, error: 3, warning: 4, notice: 5, info: 6, debug: 7 }; exports.colors = { emerg: "red", alert: "yellow", crit: "red", error: "red", warning: "red", notice: "yellow", info: "green", debug: "blue" }; } }); // ../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/index.js var require_config = __commonJS({ "../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/config/index.js"(exports) { "use strict"; Object.defineProperty(exports, "cli", { value: require_cli() }); Object.defineProperty(exports, "npm", { value: require_npm() }); Object.defineProperty(exports, "syslog", { value: require_syslog() }); } }); // ../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/index.js var require_triple_beam = __commonJS({ "../../node_modules/.pnpm/triple-beam@1.3.0/node_modules/triple-beam/index.js"(exports) { "use strict"; Object.defineProperty(exports, "LEVEL", { value: Symbol.for("level") }); Object.defineProperty(exports, "MESSAGE", { value: Symbol.for("message") }); Object.defineProperty(exports, "SPLAT", { value: Symbol.for("splat") }); Object.defineProperty(exports, "configs", { value: require_config() }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/colorize.js var require_colorize = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/colorize.js"(exports, module2) { "use strict"; var colors = require_safe(); var { LEVEL, MESSAGE } = require_triple_beam(); colors.enabled = true; var hasSpace = /\s+/; var Colorizer = class { constructor(opts = {}) { if (opts.colors) { this.addColors(opts.colors); } this.options = opts; } static addColors(clrs) { const nextColors = Object.keys(clrs).reduce((acc, level) => { acc[level] = hasSpace.test(clrs[level]) ? clrs[level].split(hasSpace) : clrs[level]; return acc; }, {}); Colorizer.allColors = Object.assign({}, Colorizer.allColors || {}, nextColors); return Colorizer.allColors; } addColors(clrs) { return Colorizer.addColors(clrs); } colorize(lookup, level, message) { if (typeof message === "undefined") { message = level; } if (!Array.isArray(Colorizer.allColors[lookup])) { return colors[Colorizer.allColors[lookup]](message); } for (let i2 = 0, len = Colorizer.allColors[lookup].length; i2 < len; i2++) { message = colors[Colorizer.allColors[lookup][i2]](message); } return message; } transform(info, opts) { if (opts.all && typeof info[MESSAGE] === "string") { info[MESSAGE] = this.colorize(info[LEVEL], info.level, info[MESSAGE]); } if (opts.level || opts.all || !opts.message) { info.level = this.colorize(info[LEVEL], info.level); } if (opts.all || opts.message) { info.message = this.colorize(info[LEVEL], info.level, info.message); } return info; } }; module2.exports = (opts) => new Colorizer(opts); module2.exports.Colorizer = module2.exports.Format = Colorizer; } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/levels.js var require_levels = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/levels.js"(exports, module2) { "use strict"; var { Colorizer } = require_colorize(); module2.exports = (config4) => { Colorizer.addColors(config4.colors || config4); return config4; }; } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/align.js var require_align = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/align.js"(exports, module2) { "use strict"; var format3 = require_format(); module2.exports = format3((info) => { info.message = ` ${info.message}`; return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/errors.js var require_errors = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/errors.js"(exports, module2) { "use strict"; var format3 = require_format(); var { LEVEL, MESSAGE } = require_triple_beam(); module2.exports = format3((einfo, { stack, cause }) => { if (einfo instanceof Error) { const info = Object.assign({}, einfo, { level: einfo.level, [LEVEL]: einfo[LEVEL] || einfo.level, message: einfo.message, [MESSAGE]: einfo[MESSAGE] || einfo.message }); if (stack) info.stack = einfo.stack; if (cause) info.cause = einfo.cause; return info; } if (!(einfo.message instanceof Error)) return einfo; const err = einfo.message; Object.assign(einfo, err); einfo.message = err.message; einfo[MESSAGE] = err.message; if (stack) einfo.stack = err.stack; if (cause) einfo.cause = err.cause; return einfo; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/pad-levels.js var require_pad_levels = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/pad-levels.js"(exports, module2) { "use strict"; var { configs, LEVEL, MESSAGE } = require_triple_beam(); var Padder = class { constructor(opts = { levels: configs.npm.levels }) { this.paddings = Padder.paddingForLevels(opts.levels, opts.filler); this.options = opts; } static getLongestLevel(levels) { const lvls = Object.keys(levels).map((level) => level.length); return Math.max(...lvls); } static paddingForLevel(level, filler, maxLength) { const targetLen = maxLength + 1 - level.length; const rep = Math.floor(targetLen / filler.length); const padding = `${filler}${filler.repeat(rep)}`; return padding.slice(0, targetLen); } static paddingForLevels(levels, filler = " ") { const maxLength = Padder.getLongestLevel(levels); return Object.keys(levels).reduce((acc, level) => { acc[level] = Padder.paddingForLevel(level, filler, maxLength); return acc; }, {}); } transform(info, opts) { info.message = `${this.paddings[info[LEVEL]]}${info.message}`; if (info[MESSAGE]) { info[MESSAGE] = `${this.paddings[info[LEVEL]]}${info[MESSAGE]}`; } return info; } }; module2.exports = (opts) => new Padder(opts); module2.exports.Padder = module2.exports.Format = Padder; } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/cli.js var require_cli2 = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/cli.js"(exports, module2) { "use strict"; var { Colorizer } = require_colorize(); var { Padder } = require_pad_levels(); var { configs, MESSAGE } = require_triple_beam(); var CliFormat = class { constructor(opts = {}) { if (!opts.levels) { opts.levels = configs.cli.levels; } this.colorizer = new Colorizer(opts); this.padder = new Padder(opts); this.options = opts; } transform(info, opts) { this.colorizer.transform( this.padder.transform(info, opts), opts ); info[MESSAGE] = `${info.level}:${info.message}`; return info; } }; module2.exports = (opts) => new CliFormat(opts); module2.exports.Format = CliFormat; } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/combine.js var require_combine = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/combine.js"(exports, module2) { "use strict"; var format3 = require_format(); function cascade(formats) { if (!formats.every(isValidFormat)) { return; } return (info) => { let obj = info; for (let i2 = 0; i2 < formats.length; i2++) { obj = formats[i2].transform(obj, formats[i2].options); if (!obj) { return false; } } return obj; }; } function isValidFormat(fmt) { if (typeof fmt.transform !== "function") { throw new Error([ "No transform function found on format. Did you create a format instance?", "const myFormat = format(formatFn);", "const instance = myFormat();" ].join("\n")); } return true; } module2.exports = (...formats) => { const combinedFormat = format3(cascade(formats)); const instance = combinedFormat(); instance.Format = combinedFormat.Format; return instance; }; module2.exports.cascade = cascade; } }); // ../../node_modules/.pnpm/safe-stable-stringify@2.4.3/node_modules/safe-stable-stringify/index.js var require_safe_stable_stringify = __commonJS({ "../../node_modules/.pnpm/safe-stable-stringify@2.4.3/node_modules/safe-stable-stringify/index.js"(exports, module2) { "use strict"; var { hasOwnProperty } = Object.prototype; var stringify2 = configure(); stringify2.configure = configure; stringify2.stringify = stringify2; stringify2.default = stringify2; exports.stringify = stringify2; exports.configure = configure; module2.exports = stringify2; var strEscapeSequencesRegExp = /[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/; function strEscape(str) { if (str.length < 5e3 && !strEscapeSequencesRegExp.test(str)) { return `"${str}"`; } return JSON.stringify(str); } function insertSort(array) { if (array.length > 200) { return array.sort(); } for (let i2 = 1; i2 < array.length; i2++) { const currentValue = array[i2]; let position = i2; while (position !== 0 && array[position - 1] > currentValue) { array[position] = array[position - 1]; position--; } array[position] = currentValue; } return array; } var typedArrayPrototypeGetSymbolToStringTag = Object.getOwnPropertyDescriptor( Object.getPrototypeOf( Object.getPrototypeOf( new Int8Array() ) ), Symbol.toStringTag ).get; function isTypedArrayWithEntries(value) { return typedArrayPrototypeGetSymbolToStringTag.call(value) !== void 0 && value.length !== 0; } function stringifyTypedArray(array, separator, maximumBreadth) { if (array.length < maximumBreadth) { maximumBreadth = array.length; } const whitespace = separator === "," ? "" : " "; let res = `"0":${whitespace}${array[0]}`; for (let i2 = 1; i2 < maximumBreadth; i2++) { res += `${separator}"${i2}":${whitespace}${array[i2]}`; } return res; } function getCircularValueOption(options) { if (hasOwnProperty.call(options, "circularValue")) { const circularValue = options.circularValue; if (typeof circularValue === "string") { return `"${circularValue}"`; } if (circularValue == null) { return circularValue; } if (circularValue === Error || circularValue === TypeError) { return { toString() { throw new TypeError("Converting circular structure to JSON"); } }; } throw new TypeError('The "circularValue" argument must be of type string or the value null or undefined'); } return '"[Circular]"'; } function getBooleanOption(options, key) { let value; if (hasOwnProperty.call(options, key)) { value = options[key]; if (typeof value !== "boolean") { throw new TypeError(`The "${key}" argument must be of type boolean`); } } return value === void 0 ? true : value; } function getPositiveIntegerOption(options, key) { let value; if (hasOwnProperty.call(options, key)) { value = options[key]; if (typeof value !== "number") { throw new TypeError(`The "${key}" argument must be of type number`); } if (!Number.isInteger(value)) { throw new TypeError(`The "${key}" argument must be an integer`); } if (value < 1) { throw new RangeError(`The "${key}" argument must be >= 1`); } } return value === void 0 ? Infinity : value; } function getItemCount(number) { if (number === 1) { return "1 item"; } return `${number} items`; } function getUniqueReplacerSet(replacerArray) { const replacerSet = /* @__PURE__ */ new Set(); for (const value of replacerArray) { if (typeof value === "string" || typeof value === "number") { replacerSet.add(String(value)); } } return replacerSet; } function getStrictOption(options) { if (hasOwnProperty.call(options, "strict")) { const value = options.strict; if (typeof value !== "boolean") { throw new TypeError('The "strict" argument must be of type boolean'); } if (value) { return (value2) => { let message = `Object can not safely be stringified. Received type ${typeof value2}`; if (typeof value2 !== "function") message += ` (${value2.toString()})`; throw new Error(message); }; } } } function configure(options) { options = { ...options }; const fail = getStrictOption(options); if (fail) { if (options.bigint === void 0) { options.bigint = false; } if (!("circularValue" in options)) { options.circularValue = Error; } } const circularValue = getCircularValueOption(options); const bigint = getBooleanOption(options, "bigint"); const deterministic = getBooleanOption(options, "deterministic"); const maximumDepth = getPositiveIntegerOption(options, "maximumDepth"); const maximumBreadth = getPositiveIntegerOption(options, "maximumBreadth"); function stringifyFnReplacer(key, parent, stack, replacer, spacer, indentation) { let value = parent[key]; if (typeof value === "object" && value !== null && typeof value.toJSON === "function") { value = value.toJSON(key); } value = replacer.call(parent, key, value); switch (typeof value) { case "string": return strEscape(value); case "object": { if (value === null) { return "null"; } if (stack.indexOf(value) !== -1) { return circularValue; } let res = ""; let join = ","; const originalIndentation = indentation; if (Array.isArray(value)) { if (value.length === 0) { return "[]"; } if (maximumDepth < stack.length + 1) { return '"[Array]"'; } stack.push(value); if (spacer !== "") { indentation += spacer; res += ` ${indentation}`; join = `, ${indentation}`; } const maximumValuesToStringify = Math.min(value.length, maximumBreadth); let i2 = 0; for (; i2 < maximumValuesToStringify - 1; i2++) { const tmp2 = stringifyFnReplacer(String(i2), value, stack, replacer, spacer, indentation); res += tmp2 !== void 0 ? tmp2 : "null"; res += join; } const tmp = stringifyFnReplacer(String(i2), value, stack, replacer, spacer, indentation); res += tmp !== void 0 ? tmp : "null"; if (value.length - 1 > maximumBreadth) { const removedKeys = value.length - maximumBreadth - 1; res += `${join}"... ${getItemCount(removedKeys)} not stringified"`; } if (spacer !== "") { res += ` ${originalIndentation}`; } stack.pop(); return `[${res}]`; } let keys = Object.keys(value); const keyLength = keys.length; if (keyLength === 0) { return "{}"; } if (maximumDepth < stack.length + 1) { return '"[Object]"'; } let whitespace = ""; let separator = ""; if (spacer !== "") { indentation += spacer; join = `, ${indentation}`; whitespace = " "; } const maximumPropertiesToStringify = Math.min(keyLength, maximumBreadth); if (deterministic && !isTypedArrayWithEntries(value)) { keys = insertSort(keys); } stack.push(value); for (let i2 = 0; i2 < maximumPropertiesToStringify; i2++) { const key2 = keys[i2]; const tmp = stringifyFnReplacer(key2, value, stack, replacer, spacer, indentation); if (tmp !== void 0) { res += `${separator}${strEscape(key2)}:${whitespace}${tmp}`; separator = join; } } if (keyLength > maximumBreadth) { const removedKeys = keyLength - maximumBreadth; res += `${separator}"...":${whitespace}"${getItemCount(removedKeys)} not stringified"`; separator = join; } if (spacer !== "" && separator.length > 1) { res = ` ${indentation}${res} ${originalIndentation}`; } stack.pop(); return `{${res}}`; } case "number": return isFinite(value) ? String(value) : fail ? fail(value) : "null"; case "boolean": return value === true ? "true" : "false"; case "undefined": return void 0; case "bigint": if (bigint) { return String(value); } default: return fail ? fail(value) : void 0; } } function stringifyArrayReplacer(key, value, stack, replacer, spacer, indentation) { if (typeof value === "object" && value !== null && typeof value.toJSON === "function") { value = value.toJSON(key); } switch (typeof value) { case "string": return strEscape(value); case "object": { if (value === null) { return "null"; } if (stack.indexOf(value) !== -1) { return circularValue; } const originalIndentation = indentation; let res = ""; let join = ","; if (Array.isArray(value)) { if (value.length === 0) { return "[]"; } if (maximumDepth < stack.length + 1) { return '"[Array]"'; } stack.push(value); if (spacer !== "") { indentation += spacer; res += ` ${indentation}`; join = `, ${indentation}`; } const maximumValuesToStringify = Math.min(value.length, maximumBreadth); let i2 = 0; for (; i2 < maximumValuesToStringify - 1; i2++) { const tmp2 = stringifyArrayReplacer(String(i2), value[i2], stack, replacer, spacer, indentation); res += tmp2 !== void 0 ? tmp2 : "null"; res += join; } const tmp = stringifyArrayReplacer(String(i2), value[i2], stack, replacer, spacer, indentation); res += tmp !== void 0 ? tmp : "null"; if (value.length - 1 > maximumBreadth) { const removedKeys = value.length - maximumBreadth - 1; res += `${join}"... ${getItemCount(removedKeys)} not stringified"`; } if (spacer !== "") { res += ` ${originalIndentation}`; } stack.pop(); return `[${res}]`; } stack.push(value); let whitespace = ""; if (spacer !== "") { indentation += spacer; join = `, ${indentation}`; whitespace = " "; } let separator = ""; for (const key2 of replacer) { const tmp = stringifyArrayReplacer(key2, value[key2], stack, replacer, spacer, indentation); if (tmp !== void 0) { res += `${separator}${strEscape(key2)}:${whitespace}${tmp}`; separator = join; } } if (spacer !== "" && separator.length > 1) { res = ` ${indentation}${res} ${originalIndentation}`; } stack.pop(); return `{${res}}`; } case "number": return isFinite(value) ? String(value) : fail ? fail(value) : "null"; case "boolean": return value === true ? "true" : "false"; case "undefined": return void 0; case "bigint": if (bigint) { return String(value); } default: return fail ? fail(value) : void 0; } } function stringifyIndent(key, value, stack, spacer, indentation) { switch (typeof value) { case "string": return strEscape(value); case "object": { if (value === null) { return "null"; } if (typeof value.toJSON === "function") { value = value.toJSON(key); if (typeof value !== "object") { return stringifyIndent(key, value, stack, spacer, indentation); } if (value === null) { return "null"; } } if (stack.indexOf(value) !== -1) { return circularValue; } const originalIndentation = indentation; if (Array.isArray(value)) { if (value.length === 0) { return "[]"; } if (maximumDepth < stack.length + 1) { return '"[Array]"'; } stack.push(value); indentation += spacer; let res2 = ` ${indentation}`; const join2 = `, ${indentation}`; const maximumValuesToStringify = Math.min(value.length, maximumBreadth); let i2 = 0; for (; i2 < maximumValuesToStringify - 1; i2++) { const tmp2 = stringifyIndent(String(i2), value[i2], stack, spacer, indentation); res2 += tmp2 !== void 0 ? tmp2 : "null"; res2 += join2; } const tmp = stringifyIndent(String(i2), value[i2], stack, spacer, indentation); res2 += tmp !== void 0 ? tmp : "null"; if (value.length - 1 > maximumBreadth) { const removedKeys = value.length - maximumBreadth - 1; res2 += `${join2}"... ${getItemCount(removedKeys)} not stringified"`; } res2 += ` ${originalIndentation}`; stack.pop(); return `[${res2}]`; } let keys = Object.keys(value); const keyLength = keys.length; if (keyLength === 0) { return "{}"; } if (maximumDepth < stack.length + 1) { return '"[Object]"'; } indentation += spacer; const join = `, ${indentation}`; let res = ""; let separator = ""; let maximumPropertiesToStringify = Math.min(keyLength, maximumBreadth); if (isTypedArrayWithEntries(value)) { res += stringifyTypedArray(value, join, maximumBreadth); keys = keys.slice(value.length); maximumPropertiesToStringify -= value.length; separator = join; } if (deterministic) { keys = insertSort(keys); } stack.push(value); for (let i2 = 0; i2 < maximumPropertiesToStringify; i2++) { const key2 = keys[i2]; const tmp = stringifyIndent(key2, value[key2], stack, spacer, indentation); if (tmp !== void 0) { res += `${separator}${strEscape(key2)}: ${tmp}`; separator = join; } } if (keyLength > maximumBreadth) { const removedKeys = keyLength - maximumBreadth; res += `${separator}"...": "${getItemCount(removedKeys)} not stringified"`; separator = join; } if (separator !== "") { res = ` ${indentation}${res} ${originalIndentation}`; } stack.pop(); return `{${res}}`; } case "number": return isFinite(value) ? String(value) : fail ? fail(value) : "null"; case "boolean": return value === true ? "true" : "false"; case "undefined": return void 0; case "bigint": if (bigint) { return String(value); } default: return fail ? fail(value) : void 0; } } function stringifySimple(key, value, stack) { switch (typeof value) { case "string": return strEscape(value); case "object": { if (value === null) { return "null"; } if (typeof value.toJSON === "function") { value = value.toJSON(key); if (typeof value !== "object") { return stringifySimple(key, value, stack); } if (value === null) { return "null"; } } if (stack.indexOf(value) !== -1) { return circularValue; } let res = ""; if (Array.isArray(value)) { if (value.length === 0) { return "[]"; } if (maximumDepth < stack.length + 1) { return '"[Array]"'; } stack.push(value); const maximumValuesToStringify = Math.min(value.length, maximumBreadth); let i2 = 0; for (; i2 < maximumValuesToStringify - 1; i2++) { const tmp2 = stringifySimple(String(i2), value[i2], stack); res += tmp2 !== void 0 ? tmp2 : "null"; res += ","; } const tmp = stringifySimple(String(i2), value[i2], stack); res += tmp !== void 0 ? tmp : "null"; if (value.length - 1 > maximumBreadth) { const removedKeys = value.length - maximumBreadth - 1; res += `,"... ${getItemCount(removedKeys)} not stringified"`; } stack.pop(); return `[${res}]`; } let keys = Object.keys(value); const keyLength = keys.length; if (keyLength === 0) { return "{}"; } if (maximumDepth < stack.length + 1) { return '"[Object]"'; } let separator = ""; let maximumPropertiesToStringify = Math.min(keyLength, maximumBreadth); if (isTypedArrayWithEntries(value)) { res += stringifyTypedArray(value, ",", maximumBreadth); keys = keys.slice(value.length); maximumPropertiesToStringify -= value.length; separator = ","; } if (deterministic) { keys = insertSort(keys); } stack.push(value); for (let i2 = 0; i2 < maximumPropertiesToStringify; i2++) { const key2 = keys[i2]; const tmp = stringifySimple(key2, value[key2], stack); if (tmp !== void 0) { res += `${separator}${strEscape(key2)}:${tmp}`; separator = ","; } } if (keyLength > maximumBreadth) { const removedKeys = keyLength - maximumBreadth; res += `${separator}"...":"${getItemCount(removedKeys)} not stringified"`; } stack.pop(); return `{${res}}`; } case "number": return isFinite(value) ? String(value) : fail ? fail(value) : "null"; case "boolean": return value === true ? "true" : "false"; case "undefined": return void 0; case "bigint": if (bigint) { return String(value); } default: return fail ? fail(value) : void 0; } } function stringify3(value, replacer, space) { if (arguments.length > 1) { let spacer = ""; if (typeof space === "number") { spacer = " ".repeat(Math.min(space, 10)); } else if (typeof space === "string") { spacer = space.slice(0, 10); } if (replacer != null) { if (typeof replacer === "function") { return stringifyFnReplacer("", { "": value }, [], replacer, spacer, ""); } if (Array.isArray(replacer)) { return stringifyArrayReplacer("", value, [], getUniqueReplacerSet(replacer), spacer, ""); } } if (spacer.length !== 0) { return stringifyIndent("", value, [], spacer, ""); } } return stringifySimple("", value, []); } return stringify3; } } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/json.js var require_json = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/json.js"(exports, module2) { "use strict"; var format3 = require_format(); var { MESSAGE } = require_triple_beam(); var stringify2 = require_safe_stable_stringify(); function replacer(key, value) { if (typeof value === "bigint") return value.toString(); return value; } module2.exports = format3((info, opts) => { const jsonStringify = stringify2.configure(opts); info[MESSAGE] = jsonStringify(info, opts.replacer || replacer, opts.space); return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/label.js var require_label = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/label.js"(exports, module2) { "use strict"; var format3 = require_format(); module2.exports = format3((info, opts) => { if (opts.message) { info.message = `[${opts.label}] ${info.message}`; return info; } info.label = opts.label; return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/logstash.js var require_logstash = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/logstash.js"(exports, module2) { "use strict"; var format3 = require_format(); var { MESSAGE } = require_triple_beam(); var jsonStringify = require_safe_stable_stringify(); module2.exports = format3((info) => { const logstash = {}; if (info.message) { logstash["@message"] = info.message; delete info.message; } if (info.timestamp) { logstash["@timestamp"] = info.timestamp; delete info.timestamp; } logstash["@fields"] = info; info[MESSAGE] = jsonStringify(logstash); return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/metadata.js var require_metadata = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/metadata.js"(exports, module2) { "use strict"; var format3 = require_format(); function fillExcept(info, fillExceptKeys, metadataKey) { const savedKeys = fillExceptKeys.reduce((acc, key) => { acc[key] = info[key]; delete info[key]; return acc; }, {}); const metadata = Object.keys(info).reduce((acc, key) => { acc[key] = info[key]; delete info[key]; return acc; }, {}); Object.assign(info, savedKeys, { [metadataKey]: metadata }); return info; } function fillWith(info, fillWithKeys, metadataKey) { info[metadataKey] = fillWithKeys.reduce((acc, key) => { acc[key] = info[key]; delete info[key]; return acc; }, {}); return info; } module2.exports = format3((info, opts = {}) => { let metadataKey = "metadata"; if (opts.key) { metadataKey = opts.key; } let fillExceptKeys = []; if (!opts.fillExcept && !opts.fillWith) { fillExceptKeys.push("level"); fillExceptKeys.push("message"); } if (opts.fillExcept) { fillExceptKeys = opts.fillExcept; } if (fillExceptKeys.length > 0) { return fillExcept(info, fillExceptKeys, metadataKey); } if (opts.fillWith) { return fillWith(info, opts.fillWith, metadataKey); } return info; }); } }); // ../../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js var require_ms = __commonJS({ "../../node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js"(exports, module2) { var s2 = 1e3; var m2 = s2 * 60; var h3 = m2 * 60; var d = h3 * 24; var w = d * 7; var y = d * 365.25; module2.exports = function(val, options) { options = options || {}; var type = typeof val; if (type === "string" && val.length > 0) { return parse2(val); } else if (type === "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 parse2(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 n = parseFloat(match[1]); var type = (match[2] || "ms").toLowerCase(); switch (type) { case "years": case "year": case "yrs": case "yr": case "y": return n * y; case "weeks": case "week": case "w": return n * w; case "days": case "day": case "d": return n * d; case "hours": case "hour": case "hrs": case "hr": case "h": return n * h3; case "minutes": case "minute": case "mins": case "min": case "m": return n * m2; case "seconds": case "second": case "secs": case "sec": case "s": return n * s2; case "milliseconds": case "millisecond": case "msecs": case "msec": case "ms": return n; default: return void 0; } } function fmtShort(ms) { var msAbs = Math.abs(ms); if (msAbs >= d) { return Math.round(ms / d) + "d"; } if (msAbs >= h3) { return Math.round(ms / h3) + "h"; } if (msAbs >= m2) { return Math.round(ms / m2) + "m"; } if (msAbs >= s2) { return Math.round(ms / s2) + "s"; } return ms + "ms"; } function fmtLong(ms) { var msAbs = Math.abs(ms); if (msAbs >= d) { return plural(ms, msAbs, d, "day"); } if (msAbs >= h3) { return plural(ms, msAbs, h3, "hour"); } if (msAbs >= m2) { return plural(ms, msAbs, m2, "minute"); } if (msAbs >= s2) { return plural(ms, msAbs, s2, "second"); } return ms + " ms"; } function plural(ms, msAbs, n, name) { var isPlural = msAbs >= n * 1.5; return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); } } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/ms.js var require_ms2 = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/ms.js"(exports, module2) { "use strict"; var format3 = require_format(); var ms = require_ms(); module2.exports = format3((info) => { const curr = +new Date(); exports.diff = curr - (exports.prevTime || curr); exports.prevTime = curr; info.ms = `+${ms(exports.diff)}`; return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/pretty-print.js var require_pretty_print = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/pretty-print.js"(exports, module2) { "use strict"; var inspect = require("util").inspect; var format3 = require_format(); var { LEVEL, MESSAGE, SPLAT } = require_triple_beam(); module2.exports = format3((info, opts = {}) => { const stripped = Object.assign({}, info); delete stripped[LEVEL]; delete stripped[MESSAGE]; delete stripped[SPLAT]; info[MESSAGE] = inspect(stripped, false, opts.depth || null, opts.colorize); return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/printf.js var require_printf = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/printf.js"(exports, module2) { "use strict"; var { MESSAGE } = require_triple_beam(); var Printf = class { constructor(templateFn) { this.template = templateFn; } transform(info) { info[MESSAGE] = this.template(info); return info; } }; module2.exports = (opts) => new Printf(opts); module2.exports.Printf = module2.exports.Format = Printf; } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/simple.js var require_simple = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/simple.js"(exports, module2) { "use strict"; var format3 = require_format(); var { MESSAGE } = require_triple_beam(); var jsonStringify = require_safe_stable_stringify(); module2.exports = format3((info) => { const stringifiedRest = jsonStringify(Object.assign({}, info, { level: void 0, message: void 0, splat: void 0 })); const padding = info.padding && info.padding[info.level] || ""; if (stringifiedRest !== "{}") { info[MESSAGE] = `${info.level}:${padding} ${info.message} ${stringifiedRest}`; } else { info[MESSAGE] = `${info.level}:${padding} ${info.message}`; } return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/splat.js var require_splat = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/splat.js"(exports, module2) { "use strict"; var util = require("util"); var { SPLAT } = require_triple_beam(); var formatRegExp = /%[scdjifoO%]/g; var escapedPercent = /%%/g; var Splatter = class { constructor(opts) { this.options = opts; } _splat(info, tokens) { const msg = info.message; const splat = info[SPLAT] || info.splat || []; const percents = msg.match(escapedPercent); const escapes = percents && percents.length || 0; const expectedSplat = tokens.length - escapes; const extraSplat = expectedSplat - splat.length; const metas = extraSplat < 0 ? splat.splice(extraSplat, -1 * extraSplat) : []; const metalen = metas.length; if (metalen) { for (let i2 = 0; i2 < metalen; i2++) { Object.assign(info, metas[i2]); } } info.message = util.format(msg, ...splat); return info; } transform(info) { const msg = info.message; const splat = info[SPLAT] || info.splat; if (!splat || !splat.length) { return info; } const tokens = msg && msg.match && msg.match(formatRegExp); if (!tokens && (splat || splat.length)) { const metas = splat.length > 1 ? splat.splice(0) : splat; const metalen = metas.length; if (metalen) { for (let i2 = 0; i2 < metalen; i2++) { Object.assign(info, metas[i2]); } } return info; } if (tokens) { return this._splat(info, tokens); } return info; } }; module2.exports = (opts) => new Splatter(opts); } }); // ../../node_modules/.pnpm/fecha@4.2.3/node_modules/fecha/lib/fecha.umd.js var require_fecha_umd = __commonJS({ "../../node_modules/.pnpm/fecha@4.2.3/node_modules/fecha/lib/fecha.umd.js"(exports, module2) { (function(global2, factory) { typeof exports === "object" && typeof module2 !== "undefined" ? factory(exports) : typeof define === "function" && define.amd ? define(["exports"], factory) : factory(global2.fecha = {}); })(exports, function(exports2) { "use strict"; var token = /d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g; var twoDigitsOptional = "\\d\\d?"; var twoDigits = "\\d\\d"; var threeDigits = "\\d{3}"; var fourDigits = "\\d{4}"; var word = "[^\\s]+"; var literal = /\[([^]*?)\]/gm; function shorten(arr, sLen) { var newArr = []; for (var i2 = 0, len = arr.length; i2 < len; i2++) { newArr.push(arr[i2].substr(0, sLen)); } return newArr; } var monthUpdate = function(arrName) { return function(v, i18n) { var lowerCaseArr = i18n[arrName].map(function(v2) { return v2.toLowerCase(); }); var index = lowerCaseArr.indexOf(v.toLowerCase()); if (index > -1) { return index; } return null; }; }; function assign(origObj) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } for (var _a4 = 0, args_1 = args; _a4 < args_1.length; _a4++) { var obj = args_1[_a4]; for (var key in obj) { origObj[key] = obj[key]; } } return origObj; } var dayNames = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ]; var monthNames = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ]; var monthNamesShort = shorten(monthNames, 3); var dayNamesShort = shorten(dayNames, 3); var defaultI18n = { dayNamesShort, dayNames, monthNamesShort, monthNames, amPm: ["am", "pm"], DoFn: function(dayOfMonth) { return dayOfMonth + ["th", "st", "nd", "rd"][dayOfMonth % 10 > 3 ? 0 : (dayOfMonth - dayOfMonth % 10 !== 10 ? 1 : 0) * dayOfMonth % 10]; } }; var globalI18n = assign({}, defaultI18n); var setGlobalDateI18n = function(i18n) { return globalI18n = assign(globalI18n, i18n); }; var regexEscape = function(str) { return str.replace(/[|\\{()[^$+*?.-]/g, "\\$&"); }; var pad = function(val, len) { if (len === void 0) { len = 2; } val = String(val); while (val.length < len) { val = "0" + val; } return val; }; var formatFlags = { D: function(dateObj) { return String(dateObj.getDate()); }, DD: function(dateObj) { return pad(dateObj.getDate()); }, Do: function(dateObj, i18n) { return i18n.DoFn(dateObj.getDate()); }, d: function(dateObj) { return String(dateObj.getDay()); }, dd: function(dateObj) { return pad(dateObj.getDay()); }, ddd: function(dateObj, i18n) { return i18n.dayNamesShort[dateObj.getDay()]; }, dddd: function(dateObj, i18n) { return i18n.dayNames[dateObj.getDay()]; }, M: function(dateObj) { return String(dateObj.getMonth() + 1); }, MM: function(dateObj) { return pad(dateObj.getMonth() + 1); }, MMM: function(dateObj, i18n) { return i18n.monthNamesShort[dateObj.getMonth()]; }, MMMM: function(dateObj, i18n) { return i18n.monthNames[dateObj.getMonth()]; }, YY: function(dateObj) { return pad(String(dateObj.getFullYear()), 4).substr(2); }, YYYY: function(dateObj) { return pad(dateObj.getFullYear(), 4); }, h: function(dateObj) { return String(dateObj.getHours() % 12 || 12); }, hh: function(dateObj) { return pad(dateObj.getHours() % 12 || 12); }, H: function(dateObj) { return String(dateObj.getHours()); }, HH: function(dateObj) { return pad(dateObj.getHours()); }, m: function(dateObj) { return String(dateObj.getMinutes()); }, mm: function(dateObj) { return pad(dateObj.getMinutes()); }, s: function(dateObj) { return String(dateObj.getSeconds()); }, ss: function(dateObj) { return pad(dateObj.getSeconds()); }, S: function(dateObj) { return String(Math.round(dateObj.getMilliseconds() / 100)); }, SS: function(dateObj) { return pad(Math.round(dateObj.getMilliseconds() / 10), 2); }, SSS: function(dateObj) { return pad(dateObj.getMilliseconds(), 3); }, a: function(dateObj, i18n) { return dateObj.getHours() < 12 ? i18n.amPm[0] : i18n.amPm[1]; }, A: function(dateObj, i18n) { return dateObj.getHours() < 12 ? i18n.amPm[0].toUpperCase() : i18n.amPm[1].toUpperCase(); }, ZZ: function(dateObj) { var offset = dateObj.getTimezoneOffset(); return (offset > 0 ? "-" : "+") + pad(Math.floor(Math.abs(offset) / 60) * 100 + Math.abs(offset) % 60, 4); }, Z: function(dateObj) { var offset = dateObj.getTimezoneOffset(); return (offset > 0 ? "-" : "+") + pad(Math.floor(Math.abs(offset) / 60), 2) + ":" + pad(Math.abs(offset) % 60, 2); } }; var monthParse = function(v) { return +v - 1; }; var emptyDigits = [null, twoDigitsOptional]; var emptyWord = [null, word]; var amPm = [ "isPm", word, function(v, i18n) { var val = v.toLowerCase(); if (val === i18n.amPm[0]) { return 0; } else if (val === i18n.amPm[1]) { return 1; } return null; } ]; var timezoneOffset = [ "timezoneOffset", "[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z?", function(v) { var parts = (v + "").match(/([+-]|\d\d)/gi); if (parts) { var minutes = +parts[1] * 60 + parseInt(parts[2], 10); return parts[0] === "+" ? minutes : -minutes; } return 0; } ]; var parseFlags = { D: ["day", twoDigitsOptional], DD: ["day", twoDigits], Do: ["day", twoDigitsOptional + word, function(v) { return parseInt(v, 10); }], M: ["month", twoDigitsOptional, monthParse], MM: ["month", twoDigits, monthParse], YY: [ "year", twoDigits, function(v) { var now = new Date(); var cent = +("" + now.getFullYear()).substr(0, 2); return +("" + (+v > 68 ? cent - 1 : cent) + v); } ], h: ["hour", twoDigitsOptional, void 0, "isPm"], hh: ["hour", twoDigits, void 0, "isPm"], H: ["hour", twoDigitsOptional], HH: ["hour", twoDigits], m: ["minute", twoDigitsOptional], mm: ["minute", twoDigits], s: ["second", twoDigitsOptional], ss: ["second", twoDigits], YYYY: ["year", fourDigits], S: ["millisecond", "\\d", function(v) { return +v * 100; }], SS: ["millisecond", twoDigits, function(v) { return +v * 10; }], SSS: ["millisecond", threeDigits], d: emptyDigits, dd: emptyDigits, ddd: emptyWord, dddd: emptyWord, MMM: ["month", word, monthUpdate("monthNamesShort")], MMMM: ["month", word, monthUpdate("monthNames")], a: amPm, A: amPm, ZZ: timezoneOffset, Z: timezoneOffset }; var globalMasks = { default: "ddd MMM DD YYYY HH:mm:ss", shortDate: "M/D/YY", mediumDate: "MMM D, YYYY", longDate: "MMMM D, YYYY", fullDate: "dddd, MMMM D, YYYY", isoDate: "YYYY-MM-DD", isoDateTime: "YYYY-MM-DDTHH:mm:ssZ", shortTime: "HH:mm", mediumTime: "HH:mm:ss", longTime: "HH:mm:ss.SSS" }; var setGlobalDateMasks = function(masks) { return assign(globalMasks, masks); }; var format3 = function(dateObj, mask, i18n) { if (mask === void 0) { mask = globalMasks["default"]; } if (i18n === void 0) { i18n = {}; } if (typeof dateObj === "number") { dateObj = new Date(dateObj); } if (Object.prototype.toString.call(dateObj) !== "[object Date]" || isNaN(dateObj.getTime())) { throw new Error("Invalid Date pass to format"); } mask = globalMasks[mask] || mask; var literals = []; mask = mask.replace(literal, function($0, $1) { literals.push($1); return "@@@"; }); var combinedI18nSettings = assign(assign({}, globalI18n), i18n); mask = mask.replace(token, function($0) { return formatFlags[$0](dateObj, combinedI18nSettings); }); return mask.replace(/@@@/g, function() { return literals.shift(); }); }; function parse2(dateStr, format4, i18n) { if (i18n === void 0) { i18n = {}; } if (typeof format4 !== "string") { throw new Error("Invalid format in fecha parse"); } format4 = globalMasks[format4] || format4; if (dateStr.length > 1e3) { return null; } var today = new Date(); var dateInfo = { year: today.getFullYear(), month: 0, day: 1, hour: 0, minute: 0, second: 0, millisecond: 0, isPm: null, timezoneOffset: null }; var parseInfo = []; var literals = []; var newFormat = format4.replace(literal, function($0, $1) { literals.push(regexEscape($1)); return "@@@"; }); var specifiedFields = {}; var requiredFields = {}; newFormat = regexEscape(newFormat).replace(token, function($0) { var info = parseFlags[$0]; var field2 = info[0], regex2 = info[1], requiredField = info[3]; if (specifiedFields[field2]) { throw new Error("Invalid format. " + field2 + " specified twice in format"); } specifiedFields[field2] = true; if (requiredField) { requiredFields[requiredField] = true; } parseInfo.push(info); return "(" + regex2 + ")"; }); Object.keys(requiredFields).forEach(function(field2) { if (!specifiedFields[field2]) { throw new Error("Invalid format. " + field2 + " is required in specified format"); } }); newFormat = newFormat.replace(/@@@/g, function() { return literals.shift(); }); var matches = dateStr.match(new RegExp(newFormat, "i")); if (!matches) { return null; } var combinedI18nSettings = assign(assign({}, globalI18n), i18n); for (var i2 = 1; i2 < matches.length; i2++) { var _a4 = parseInfo[i2 - 1], field = _a4[0], parser = _a4[2]; var value = parser ? parser(matches[i2], combinedI18nSettings) : +matches[i2]; if (value == null) { return null; } dateInfo[field] = value; } if (dateInfo.isPm === 1 && dateInfo.hour != null && +dateInfo.hour !== 12) { dateInfo.hour = +dateInfo.hour + 12; } else if (dateInfo.isPm === 0 && +dateInfo.hour === 12) { dateInfo.hour = 0; } var dateTZ; if (dateInfo.timezoneOffset == null) { dateTZ = new Date(dateInfo.year, dateInfo.month, dateInfo.day, dateInfo.hour, dateInfo.minute, dateInfo.second, dateInfo.millisecond); var validateFields = [ ["month", "getMonth"], ["day", "getDate"], ["hour", "getHours"], ["minute", "getMinutes"], ["second", "getSeconds"] ]; for (var i2 = 0, len = validateFields.length; i2 < len; i2++) { if (specifiedFields[validateFields[i2][0]] && dateInfo[validateFields[i2][0]] !== dateTZ[validateFields[i2][1]]()) { return null; } } } else { dateTZ = new Date(Date.UTC(dateInfo.year, dateInfo.month, dateInfo.day, dateInfo.hour, dateInfo.minute - dateInfo.timezoneOffset, dateInfo.second, dateInfo.millisecond)); if (dateInfo.month > 11 || dateInfo.month < 0 || dateInfo.day > 31 || dateInfo.day < 1 || dateInfo.hour > 23 || dateInfo.hour < 0 || dateInfo.minute > 59 || dateInfo.minute < 0 || dateInfo.second > 59 || dateInfo.second < 0) { return null; } } return dateTZ; } var fecha = { format: format3, parse: parse2, defaultI18n, setGlobalDateI18n, setGlobalDateMasks }; exports2.assign = assign; exports2.default = fecha; exports2.format = format3; exports2.parse = parse2; exports2.defaultI18n = defaultI18n; exports2.setGlobalDateI18n = setGlobalDateI18n; exports2.setGlobalDateMasks = setGlobalDateMasks; Object.defineProperty(exports2, "__esModule", { value: true }); }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/timestamp.js var require_timestamp = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/timestamp.js"(exports, module2) { "use strict"; var fecha = require_fecha_umd(); var format3 = require_format(); module2.exports = format3((info, opts = {}) => { if (opts.format) { info.timestamp = typeof opts.format === "function" ? opts.format() : fecha.format(new Date(), opts.format); } if (!info.timestamp) { info.timestamp = new Date().toISOString(); } if (opts.alias) { info[opts.alias] = info.timestamp; } return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/uncolorize.js var require_uncolorize = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/uncolorize.js"(exports, module2) { "use strict"; var colors = require_safe(); var format3 = require_format(); var { MESSAGE } = require_triple_beam(); module2.exports = format3((info, opts) => { if (opts.level !== false) { info.level = colors.strip(info.level); } if (opts.message !== false) { info.message = colors.strip(String(info.message)); } if (opts.raw !== false && info[MESSAGE]) { info[MESSAGE] = colors.strip(String(info[MESSAGE])); } return info; }); } }); // ../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/index.js var require_logform = __commonJS({ "../../node_modules/.pnpm/logform@2.5.1/node_modules/logform/index.js"(exports) { "use strict"; var format3 = exports.format = require_format(); exports.levels = require_levels(); function exposeFormat(name, requireFormat) { Object.defineProperty(format3, name, { get() { return requireFormat(); }, configurable: true }); } exposeFormat("align", function() { return require_align(); }); exposeFormat("errors", function() { return require_errors(); }); exposeFormat("cli", function() { return require_cli2(); }); exposeFormat("combine", function() { return require_combine(); }); exposeFormat("colorize", function() { return require_colorize(); }); exposeFormat("json", function() { return require_json(); }); exposeFormat("label", function() { return require_label(); }); exposeFormat("logstash", function() { return require_logstash(); }); exposeFormat("metadata", function() { return require_metadata(); }); exposeFormat("ms", function() { return require_ms2(); }); exposeFormat("padLevels", function() { return require_pad_levels(); }); exposeFormat("prettyPrint", function() { return require_pretty_print(); }); exposeFormat("printf", function() { return require_printf(); }); exposeFormat("simple", function() { return require_simple(); }); exposeFormat("splat", function() { return require_splat(); }); exposeFormat("timestamp", function() { return require_timestamp(); }); exposeFormat("uncolorize", function() { return require_uncolorize(); }); } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/common.js var require_common = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/common.js"(exports) { "use strict"; var { format: format3 } = require("util"); exports.warn = { deprecated(prop) { return () => { throw new Error(format3("{ %s } was removed in winston@3.0.0.", prop)); }; }, useFormat(prop) { return () => { throw new Error([ format3("{ %s } was removed in winston@3.0.0.", prop), "Use a custom winston.format = winston.format(function) instead." ].join("\n")); }; }, forFunctions(obj, type, props) { props.forEach((prop) => { obj[prop] = exports.warn[type](prop); }); }, moved(obj, movedTo, prop) { function movedNotice() { return () => { throw new Error([ format3("winston.%s was moved in winston@3.0.0.", prop), format3("Use a winston.%s instead.", movedTo) ].join("\n")); }; } Object.defineProperty(obj, prop, { get: movedNotice, set: movedNotice }); }, forProperties(obj, type, props) { props.forEach((prop) => { const notice = exports.warn[type](prop); Object.defineProperty(obj, prop, { get: notice, set: notice }); }); } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/package.json var require_package = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/package.json"(exports, module2) { module2.exports = { name: "winston", description: "A logger for just about everything.", version: "3.4.0", author: "Charlie Robbins ", maintainers: [ "David Hyde " ], repository: { type: "git", url: "https://github.com/winstonjs/winston.git" }, keywords: [ "winston", "logger", "logging", "logs", "sysadmin", "bunyan", "pino", "loglevel", "tools", "json", "stream" ], dependencies: { async: "^3.2.3", "@dabh/diagnostics": "^2.0.2", "is-stream": "^2.0.0", logform: "^2.3.2", "one-time": "^1.0.0", "readable-stream": "^3.4.0", "stack-trace": "0.0.x", "triple-beam": "^1.3.0", "winston-transport": "^4.4.2" }, devDependencies: { "@babel/cli": "^7.16.7", "@babel/core": "^7.16.7", "@babel/preset-env": "^7.16.7", "@types/node": "^16.11.12", "abstract-winston-transport": "^0.5.1", assume: "^2.2.0", colors: "1.4.0", "cross-spawn-async": "^2.2.5", "eslint-config-populist": "^4.2.0", hock: "^1.4.1", mocha: "8.1.3", nyc: "^15.1.0", rimraf: "^3.0.2", split2: "^4.1.0", "std-mocks": "^1.0.1", through2: "^4.0.2", "winston-compat": "^0.1.5" }, main: "./lib/winston", browser: "./dist/winston", types: "./index.d.ts", scripts: { lint: "populist lib/*.js lib/winston/*.js lib/winston/**/*.js", pretest: "npm run lint", test: "nyc --reporter=text --reporter lcov npm run test:mocha", "test:mocha": "mocha test/*.test.js test/**/*.test.js --exit", build: "rimraf dist && babel lib -d dist", prepublishOnly: "npm run build" }, engines: { node: ">= 6.4.0" }, license: "MIT" }; } }); // ../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js var require_node2 = __commonJS({ "../../node_modules/.pnpm/util-deprecate@1.0.2/node_modules/util-deprecate/node.js"(exports, module2) { module2.exports = require("util").deprecate; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/stream.js var require_stream = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/stream.js"(exports, module2) { module2.exports = require("stream"); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/destroy.js var require_destroy = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports, module2) { "use strict"; function destroy(err, cb) { var _this = this; var readableDestroyed = this._readableState && this._readableState.destroyed; var writableDestroyed = this._writableState && this._writableState.destroyed; if (readableDestroyed || writableDestroyed) { if (cb) { cb(err); } else if (err) { if (!this._writableState) { process.nextTick(emitErrorNT, this, err); } else if (!this._writableState.errorEmitted) { this._writableState.errorEmitted = true; process.nextTick(emitErrorNT, this, err); } } return this; } if (this._readableState) { this._readableState.destroyed = true; } if (this._writableState) { this._writableState.destroyed = true; } this._destroy(err || null, function(err2) { if (!cb && err2) { if (!_this._writableState) { process.nextTick(emitErrorAndCloseNT, _this, err2); } else if (!_this._writableState.errorEmitted) { _this._writableState.errorEmitted = true; process.nextTick(emitErrorAndCloseNT, _this, err2); } else { process.nextTick(emitCloseNT, _this); } } else if (cb) { process.nextTick(emitCloseNT, _this); cb(err2); } else { process.nextTick(emitCloseNT, _this); } }); return this; } function emitErrorAndCloseNT(self2, err) { emitErrorNT(self2, err); emitCloseNT(self2); } function emitCloseNT(self2) { if (self2._writableState && !self2._writableState.emitClose) return; if (self2._readableState && !self2._readableState.emitClose) return; self2.emit("close"); } function undestroy() { if (this._readableState) { this._readableState.destroyed = false; this._readableState.reading = false; this._readableState.ended = false; this._readableState.endEmitted = false; } if (this._writableState) { this._writableState.destroyed = false; this._writableState.ended = false; this._writableState.ending = false; this._writableState.finalCalled = false; this._writableState.prefinished = false; this._writableState.finished = false; this._writableState.errorEmitted = false; } } function emitErrorNT(self2, err) { self2.emit("error", err); } function errorOrDestroy(stream, err) { var rState = stream._readableState; var wState = stream._writableState; if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err); else stream.emit("error", err); } module2.exports = { destroy, undestroy, errorOrDestroy }; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/errors.js var require_errors2 = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/errors.js"(exports, module2) { "use strict"; var codes = {}; function createErrorType(code, message, Base) { if (!Base) { Base = Error; } function getMessage(arg1, arg2, arg3) { if (typeof message === "string") { return message; } else { return message(arg1, arg2, arg3); } } class NodeError extends Base { constructor(arg1, arg2, arg3) { super(getMessage(arg1, arg2, arg3)); } } NodeError.prototype.name = Base.name; NodeError.prototype.code = code; codes[code] = NodeError; } function oneOf(expected, thing) { if (Array.isArray(expected)) { const len = expected.length; expected = expected.map((i2) => String(i2)); if (len > 2) { return `one of ${thing} ${expected.slice(0, len - 1).join(", ")}, or ` + expected[len - 1]; } else if (len === 2) { return `one of ${thing} ${expected[0]} or ${expected[1]}`; } else { return `of ${thing} ${expected[0]}`; } } else { return `of ${thing} ${String(expected)}`; } } function startsWith(str, search, pos) { return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search; } function endsWith(str, search, this_len) { if (this_len === void 0 || this_len > str.length) { this_len = str.length; } return str.substring(this_len - search.length, this_len) === search; } function includes(str, search, start) { if (typeof start !== "number") { start = 0; } if (start + search.length > str.length) { return false; } else { return str.indexOf(search, start) !== -1; } } createErrorType("ERR_INVALID_OPT_VALUE", function(name, value) { return 'The value "' + value + '" is invalid for option "' + name + '"'; }, TypeError); createErrorType("ERR_INVALID_ARG_TYPE", function(name, expected, actual) { let determiner; if (typeof expected === "string" && startsWith(expected, "not ")) { determiner = "must not be"; expected = expected.replace(/^not /, ""); } else { determiner = "must be"; } let msg; if (endsWith(name, " argument")) { msg = `The ${name} ${determiner} ${oneOf(expected, "type")}`; } else { const type = includes(name, ".") ? "property" : "argument"; msg = `The "${name}" ${type} ${determiner} ${oneOf(expected, "type")}`; } msg += `. Received type ${typeof actual}`; return msg; }, TypeError); createErrorType("ERR_STREAM_PUSH_AFTER_EOF", "stream.push() after EOF"); createErrorType("ERR_METHOD_NOT_IMPLEMENTED", function(name) { return "The " + name + " method is not implemented"; }); createErrorType("ERR_STREAM_PREMATURE_CLOSE", "Premature close"); createErrorType("ERR_STREAM_DESTROYED", function(name) { return "Cannot call " + name + " after a stream was destroyed"; }); createErrorType("ERR_MULTIPLE_CALLBACK", "Callback called multiple times"); createErrorType("ERR_STREAM_CANNOT_PIPE", "Cannot pipe, not readable"); createErrorType("ERR_STREAM_WRITE_AFTER_END", "write after end"); createErrorType("ERR_STREAM_NULL_VALUES", "May not write null values to stream", TypeError); createErrorType("ERR_UNKNOWN_ENCODING", function(arg) { return "Unknown encoding: " + arg; }, TypeError); createErrorType("ERR_STREAM_UNSHIFT_AFTER_END_EVENT", "stream.unshift() after end event"); module2.exports.codes = codes; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/state.js var require_state = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/state.js"(exports, module2) { "use strict"; var ERR_INVALID_OPT_VALUE = require_errors2().codes.ERR_INVALID_OPT_VALUE; function highWaterMarkFrom(options, isDuplex, duplexKey) { return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; } function getHighWaterMark(state, options, duplexKey, isDuplex) { var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); if (hwm != null) { if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { var name = isDuplex ? duplexKey : "highWaterMark"; throw new ERR_INVALID_OPT_VALUE(name, hwm); } return Math.floor(hwm); } return state.objectMode ? 16 : 16 * 1024; } module2.exports = { getHighWaterMark }; } }); // ../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js var require_inherits_browser = __commonJS({ "../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits_browser.js"(exports, module2) { if (typeof Object.create === "function") { module2.exports = function inherits(ctor, superCtor) { if (superCtor) { ctor.super_ = superCtor; ctor.prototype = Object.create(superCtor.prototype, { constructor: { value: ctor, enumerable: false, writable: true, configurable: true } }); } }; } else { module2.exports = function inherits(ctor, superCtor) { if (superCtor) { ctor.super_ = superCtor; var TempCtor = function() { }; TempCtor.prototype = superCtor.prototype; ctor.prototype = new TempCtor(); ctor.prototype.constructor = ctor; } }; } } }); // ../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js var require_inherits = __commonJS({ "../../node_modules/.pnpm/inherits@2.0.4/node_modules/inherits/inherits.js"(exports, module2) { try { util = require("util"); if (typeof util.inherits !== "function") throw ""; module2.exports = util.inherits; } catch (e2) { module2.exports = require_inherits_browser(); } var util; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/buffer_list.js var require_buffer_list = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports, module2) { "use strict"; function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function(sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i2 = 1; i2 < arguments.length; i2++) { var source2 = null != arguments[i2] ? arguments[i2] : {}; i2 % 2 ? ownKeys(Object(source2), true).forEach(function(key) { _defineProperty(target, key, source2[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source2)) : ownKeys(Object(source2)).forEach(function(key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source2, key)); }); } return target; } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i2 = 0; i2 < props.length; i2++) { var descriptor = props[i2]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } var _require = require("buffer"); var Buffer4 = _require.Buffer; var _require2 = require("util"); var inspect = _require2.inspect; var custom = inspect && inspect.custom || "inspect"; function copyBuffer(src, target, offset) { Buffer4.prototype.copy.call(src, target, offset); } module2.exports = /* @__PURE__ */ function() { function BufferList() { _classCallCheck(this, BufferList); this.head = null; this.tail = null; this.length = 0; } _createClass(BufferList, [{ key: "push", value: function push(v) { var entry = { data: v, next: null }; if (this.length > 0) this.tail.next = entry; else this.head = entry; this.tail = entry; ++this.length; } }, { key: "unshift", value: function unshift(v) { var entry = { data: v, next: this.head }; if (this.length === 0) this.tail = entry; this.head = entry; ++this.length; } }, { key: "shift", value: function shift() { if (this.length === 0) return; var ret = this.head.data; if (this.length === 1) this.head = this.tail = null; else this.head = this.head.next; --this.length; return ret; } }, { key: "clear", value: function clear() { this.head = this.tail = null; this.length = 0; } }, { key: "join", value: function join(s2) { if (this.length === 0) return ""; var p = this.head; var ret = "" + p.data; while (p = p.next) ret += s2 + p.data; return ret; } }, { key: "concat", value: function concat(n) { if (this.length === 0) return Buffer4.alloc(0); var ret = Buffer4.allocUnsafe(n >>> 0); var p = this.head; var i2 = 0; while (p) { copyBuffer(p.data, ret, i2); i2 += p.data.length; p = p.next; } return ret; } }, { key: "consume", value: function consume(n, hasStrings) { var ret; if (n < this.head.data.length) { ret = this.head.data.slice(0, n); this.head.data = this.head.data.slice(n); } else if (n === this.head.data.length) { ret = this.shift(); } else { ret = hasStrings ? this._getString(n) : this._getBuffer(n); } return ret; } }, { key: "first", value: function first() { return this.head.data; } }, { key: "_getString", value: function _getString(n) { var p = this.head; var c2 = 1; var ret = p.data; n -= ret.length; while (p = p.next) { var str = p.data; var nb = n > str.length ? str.length : n; if (nb === str.length) ret += str; else ret += str.slice(0, n); n -= nb; if (n === 0) { if (nb === str.length) { ++c2; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { this.head = p; p.data = str.slice(nb); } break; } ++c2; } this.length -= c2; return ret; } }, { key: "_getBuffer", value: function _getBuffer(n) { var ret = Buffer4.allocUnsafe(n); var p = this.head; var c2 = 1; p.data.copy(ret); n -= p.data.length; while (p = p.next) { var buf = p.data; var nb = n > buf.length ? buf.length : n; buf.copy(ret, ret.length - n, 0, nb); n -= nb; if (n === 0) { if (nb === buf.length) { ++c2; if (p.next) this.head = p.next; else this.head = this.tail = null; } else { this.head = p; p.data = buf.slice(nb); } break; } ++c2; } this.length -= c2; return ret; } }, { key: custom, value: function value(_, options) { return inspect(this, _objectSpread(_objectSpread({}, options), {}, { depth: 0, customInspect: false })); } }]); return BufferList; }(); } }); // ../../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js var require_safe_buffer = __commonJS({ "../../node_modules/.pnpm/safe-buffer@5.2.1/node_modules/safe-buffer/index.js"(exports, module2) { var buffer = require("buffer"); var Buffer4 = buffer.Buffer; function copyProps(src, dst) { for (var key in src) { dst[key] = src[key]; } } if (Buffer4.from && Buffer4.alloc && Buffer4.allocUnsafe && Buffer4.allocUnsafeSlow) { module2.exports = buffer; } else { copyProps(buffer, exports); exports.Buffer = SafeBuffer; } function SafeBuffer(arg, encodingOrOffset, length) { return Buffer4(arg, encodingOrOffset, length); } SafeBuffer.prototype = Object.create(Buffer4.prototype); copyProps(Buffer4, SafeBuffer); SafeBuffer.from = function(arg, encodingOrOffset, length) { if (typeof arg === "number") { throw new TypeError("Argument must not be a number"); } return Buffer4(arg, encodingOrOffset, length); }; SafeBuffer.alloc = function(size, fill, encoding) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } var buf = Buffer4(size); if (fill !== void 0) { if (typeof encoding === "string") { buf.fill(fill, encoding); } else { buf.fill(fill); } } else { buf.fill(0); } return buf; }; SafeBuffer.allocUnsafe = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return Buffer4(size); }; SafeBuffer.allocUnsafeSlow = function(size) { if (typeof size !== "number") { throw new TypeError("Argument must be a number"); } return buffer.SlowBuffer(size); }; } }); // ../../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/lib/string_decoder.js var require_string_decoder = __commonJS({ "../../node_modules/.pnpm/string_decoder@1.3.0/node_modules/string_decoder/lib/string_decoder.js"(exports) { "use strict"; var Buffer4 = require_safe_buffer().Buffer; var isEncoding = Buffer4.isEncoding || function(encoding) { encoding = "" + encoding; switch (encoding && encoding.toLowerCase()) { case "hex": case "utf8": case "utf-8": case "ascii": case "binary": case "base64": case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": case "raw": return true; default: return false; } }; function _normalizeEncoding(enc) { if (!enc) return "utf8"; var retried; while (true) { switch (enc) { case "utf8": case "utf-8": return "utf8"; case "ucs2": case "ucs-2": case "utf16le": case "utf-16le": return "utf16le"; case "latin1": case "binary": return "latin1"; case "base64": case "ascii": case "hex": return enc; default: if (retried) return; enc = ("" + enc).toLowerCase(); retried = true; } } } function normalizeEncoding(enc) { var nenc = _normalizeEncoding(enc); if (typeof nenc !== "string" && (Buffer4.isEncoding === isEncoding || !isEncoding(enc))) throw new Error("Unknown encoding: " + enc); return nenc || enc; } exports.StringDecoder = StringDecoder; function StringDecoder(encoding) { this.encoding = normalizeEncoding(encoding); var nb; switch (this.encoding) { case "utf16le": this.text = utf16Text; this.end = utf16End; nb = 4; break; case "utf8": this.fillLast = utf8FillLast; nb = 4; break; case "base64": this.text = base64Text; this.end = base64End; nb = 3; break; default: this.write = simpleWrite; this.end = simpleEnd; return; } this.lastNeed = 0; this.lastTotal = 0; this.lastChar = Buffer4.allocUnsafe(nb); } StringDecoder.prototype.write = function(buf) { if (buf.length === 0) return ""; var r3; var i2; if (this.lastNeed) { r3 = this.fillLast(buf); if (r3 === void 0) return ""; i2 = this.lastNeed; this.lastNeed = 0; } else { i2 = 0; } if (i2 < buf.length) return r3 ? r3 + this.text(buf, i2) : this.text(buf, i2); return r3 || ""; }; StringDecoder.prototype.end = utf8End; StringDecoder.prototype.text = utf8Text; StringDecoder.prototype.fillLast = function(buf) { if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length); this.lastNeed -= buf.length; }; function utf8CheckByte(byte) { if (byte <= 127) return 0; else if (byte >> 5 === 6) return 2; else if (byte >> 4 === 14) return 3; else if (byte >> 3 === 30) return 4; return byte >> 6 === 2 ? -1 : -2; } function utf8CheckIncomplete(self2, buf, i2) { var j = buf.length - 1; if (j < i2) return 0; var nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 1; return nb; } if (--j < i2 || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) self2.lastNeed = nb - 2; return nb; } if (--j < i2 || nb === -2) return 0; nb = utf8CheckByte(buf[j]); if (nb >= 0) { if (nb > 0) { if (nb === 2) nb = 0; else self2.lastNeed = nb - 3; } return nb; } return 0; } function utf8CheckExtraBytes(self2, buf, p) { if ((buf[0] & 192) !== 128) { self2.lastNeed = 0; return "\uFFFD"; } if (self2.lastNeed > 1 && buf.length > 1) { if ((buf[1] & 192) !== 128) { self2.lastNeed = 1; return "\uFFFD"; } if (self2.lastNeed > 2 && buf.length > 2) { if ((buf[2] & 192) !== 128) { self2.lastNeed = 2; return "\uFFFD"; } } } } function utf8FillLast(buf) { var p = this.lastTotal - this.lastNeed; var r3 = utf8CheckExtraBytes(this, buf, p); if (r3 !== void 0) return r3; if (this.lastNeed <= buf.length) { buf.copy(this.lastChar, p, 0, this.lastNeed); return this.lastChar.toString(this.encoding, 0, this.lastTotal); } buf.copy(this.lastChar, p, 0, buf.length); this.lastNeed -= buf.length; } function utf8Text(buf, i2) { var total = utf8CheckIncomplete(this, buf, i2); if (!this.lastNeed) return buf.toString("utf8", i2); this.lastTotal = total; var end = buf.length - (total - this.lastNeed); buf.copy(this.lastChar, 0, end); return buf.toString("utf8", i2, end); } function utf8End(buf) { var r3 = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r3 + "\uFFFD"; return r3; } function utf16Text(buf, i2) { if ((buf.length - i2) % 2 === 0) { var r3 = buf.toString("utf16le", i2); if (r3) { var c2 = r3.charCodeAt(r3.length - 1); if (c2 >= 55296 && c2 <= 56319) { this.lastNeed = 2; this.lastTotal = 4; this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; return r3.slice(0, -1); } } return r3; } this.lastNeed = 1; this.lastTotal = 2; this.lastChar[0] = buf[buf.length - 1]; return buf.toString("utf16le", i2, buf.length - 1); } function utf16End(buf) { var r3 = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) { var end = this.lastTotal - this.lastNeed; return r3 + this.lastChar.toString("utf16le", 0, end); } return r3; } function base64Text(buf, i2) { var n = (buf.length - i2) % 3; if (n === 0) return buf.toString("base64", i2); this.lastNeed = 3 - n; this.lastTotal = 3; if (n === 1) { this.lastChar[0] = buf[buf.length - 1]; } else { this.lastChar[0] = buf[buf.length - 2]; this.lastChar[1] = buf[buf.length - 1]; } return buf.toString("base64", i2, buf.length - n); } function base64End(buf) { var r3 = buf && buf.length ? this.write(buf) : ""; if (this.lastNeed) return r3 + this.lastChar.toString("base64", 0, 3 - this.lastNeed); return r3; } function simpleWrite(buf) { return buf.toString(this.encoding); } function simpleEnd(buf) { return buf && buf.length ? this.write(buf) : ""; } } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/end-of-stream.js var require_end_of_stream = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports, module2) { "use strict"; var ERR_STREAM_PREMATURE_CLOSE = require_errors2().codes.ERR_STREAM_PREMATURE_CLOSE; function once(callback) { var called = false; return function() { if (called) return; called = true; for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } callback.apply(this, args); }; } function noop2() { } function isRequest2(stream) { return stream.setHeader && typeof stream.abort === "function"; } function eos(stream, opts, callback) { if (typeof opts === "function") return eos(stream, null, opts); if (!opts) opts = {}; callback = once(callback || noop2); var readable = opts.readable || opts.readable !== false && stream.readable; var writable = opts.writable || opts.writable !== false && stream.writable; var onlegacyfinish = function onlegacyfinish2() { if (!stream.writable) onfinish(); }; var writableEnded = stream._writableState && stream._writableState.finished; var onfinish = function onfinish2() { writable = false; writableEnded = true; if (!readable) callback.call(stream); }; var readableEnded = stream._readableState && stream._readableState.endEmitted; var onend = function onend2() { readable = false; readableEnded = true; if (!writable) callback.call(stream); }; var onerror = function onerror2(err) { callback.call(stream, err); }; var onclose = function onclose2() { var err; if (readable && !readableEnded) { if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); return callback.call(stream, err); } if (writable && !writableEnded) { if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE(); return callback.call(stream, err); } }; var onrequest = function onrequest2() { stream.req.on("finish", onfinish); }; if (isRequest2(stream)) { stream.on("complete", onfinish); stream.on("abort", onclose); if (stream.req) onrequest(); else stream.on("request", onrequest); } else if (writable && !stream._writableState) { stream.on("end", onlegacyfinish); stream.on("close", onlegacyfinish); } stream.on("end", onend); stream.on("finish", onfinish); if (opts.error !== false) stream.on("error", onerror); stream.on("close", onclose); return function() { stream.removeListener("complete", onfinish); stream.removeListener("abort", onclose); stream.removeListener("request", onrequest); if (stream.req) stream.req.removeListener("finish", onfinish); stream.removeListener("end", onlegacyfinish); stream.removeListener("close", onlegacyfinish); stream.removeListener("finish", onfinish); stream.removeListener("end", onend); stream.removeListener("error", onerror); stream.removeListener("close", onclose); }; } module2.exports = eos; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/async_iterator.js var require_async_iterator = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports, module2) { "use strict"; var _Object$setPrototypeO; function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } var finished = require_end_of_stream(); var kLastResolve = Symbol("lastResolve"); var kLastReject = Symbol("lastReject"); var kError = Symbol("error"); var kEnded = Symbol("ended"); var kLastPromise = Symbol("lastPromise"); var kHandlePromise = Symbol("handlePromise"); var kStream = Symbol("stream"); function createIterResult(value, done) { return { value, done }; } function readAndResolve(iter) { var resolve = iter[kLastResolve]; if (resolve !== null) { var data = iter[kStream].read(); if (data !== null) { iter[kLastPromise] = null; iter[kLastResolve] = null; iter[kLastReject] = null; resolve(createIterResult(data, false)); } } } function onReadable(iter) { process.nextTick(readAndResolve, iter); } function wrapForNext(lastPromise, iter) { return function(resolve, reject) { lastPromise.then(function() { if (iter[kEnded]) { resolve(createIterResult(void 0, true)); return; } iter[kHandlePromise](resolve, reject); }, reject); }; } var AsyncIteratorPrototype = Object.getPrototypeOf(function() { }); var ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = { get stream() { return this[kStream]; }, next: function next() { var _this = this; var error = this[kError]; if (error !== null) { return Promise.reject(error); } if (this[kEnded]) { return Promise.resolve(createIterResult(void 0, true)); } if (this[kStream].destroyed) { return new Promise(function(resolve, reject) { process.nextTick(function() { if (_this[kError]) { reject(_this[kError]); } else { resolve(createIterResult(void 0, true)); } }); }); } var lastPromise = this[kLastPromise]; var promise; if (lastPromise) { promise = new Promise(wrapForNext(lastPromise, this)); } else { var data = this[kStream].read(); if (data !== null) { return Promise.resolve(createIterResult(data, false)); } promise = new Promise(this[kHandlePromise]); } this[kLastPromise] = promise; return promise; } }, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function() { return this; }), _defineProperty(_Object$setPrototypeO, "return", function _return() { var _this2 = this; return new Promise(function(resolve, reject) { _this2[kStream].destroy(null, function(err) { if (err) { reject(err); return; } resolve(createIterResult(void 0, true)); }); }); }), _Object$setPrototypeO), AsyncIteratorPrototype); var createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator2(stream) { var _Object$create; var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, { value: stream, writable: true }), _defineProperty(_Object$create, kLastResolve, { value: null, writable: true }), _defineProperty(_Object$create, kLastReject, { value: null, writable: true }), _defineProperty(_Object$create, kError, { value: null, writable: true }), _defineProperty(_Object$create, kEnded, { value: stream._readableState.endEmitted, writable: true }), _defineProperty(_Object$create, kHandlePromise, { value: function value(resolve, reject) { var data = iterator[kStream].read(); if (data) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; resolve(createIterResult(data, false)); } else { iterator[kLastResolve] = resolve; iterator[kLastReject] = reject; } }, writable: true }), _Object$create)); iterator[kLastPromise] = null; finished(stream, function(err) { if (err && err.code !== "ERR_STREAM_PREMATURE_CLOSE") { var reject = iterator[kLastReject]; if (reject !== null) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; reject(err); } iterator[kError] = err; return; } var resolve = iterator[kLastResolve]; if (resolve !== null) { iterator[kLastPromise] = null; iterator[kLastResolve] = null; iterator[kLastReject] = null; resolve(createIterResult(void 0, true)); } iterator[kEnded] = true; }); stream.on("readable", onReadable.bind(null, iterator)); return iterator; }; module2.exports = createReadableStreamAsyncIterator; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/from.js var require_from = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/from.js"(exports, module2) { "use strict"; function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function() { var self2 = this, args = arguments; return new Promise(function(resolve, reject) { var gen = fn.apply(self2, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(void 0); }); }; } function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function(sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i2 = 1; i2 < arguments.length; i2++) { var source2 = null != arguments[i2] ? arguments[i2] : {}; i2 % 2 ? ownKeys(Object(source2), true).forEach(function(key) { _defineProperty(target, key, source2[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source2)) : ownKeys(Object(source2)).forEach(function(key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source2, key)); }); } return target; } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); } function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } var ERR_INVALID_ARG_TYPE = require_errors2().codes.ERR_INVALID_ARG_TYPE; function from(Readable, iterable, opts) { var iterator; if (iterable && typeof iterable.next === "function") { iterator = iterable; } else if (iterable && iterable[Symbol.asyncIterator]) iterator = iterable[Symbol.asyncIterator](); else if (iterable && iterable[Symbol.iterator]) iterator = iterable[Symbol.iterator](); else throw new ERR_INVALID_ARG_TYPE("iterable", ["Iterable"], iterable); var readable = new Readable(_objectSpread({ objectMode: true }, opts)); var reading = false; readable._read = function() { if (!reading) { reading = true; next(); } }; function next() { return _next2.apply(this, arguments); } function _next2() { _next2 = _asyncToGenerator(function* () { try { var _yield$iterator$next = yield iterator.next(), value = _yield$iterator$next.value, done = _yield$iterator$next.done; if (done) { readable.push(null); } else if (readable.push(yield value)) { next(); } else { reading = false; } } catch (err) { readable.destroy(err); } }); return _next2.apply(this, arguments); } return readable; } module2.exports = from; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_readable.js var require_stream_readable = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_readable.js"(exports, module2) { "use strict"; module2.exports = Readable; var Duplex; Readable.ReadableState = ReadableState; var EE = require("events").EventEmitter; var EElistenerCount = function EElistenerCount2(emitter, type) { return emitter.listeners(type).length; }; var Stream3 = require_stream(); var Buffer4 = require("buffer").Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer4.from(chunk); } function _isUint8Array(obj) { return Buffer4.isBuffer(obj) || obj instanceof OurUint8Array; } var debugUtil = require("util"); var debug; if (debugUtil && debugUtil.debuglog) { debug = debugUtil.debuglog("stream"); } else { debug = function debug2() { }; } var BufferList = require_buffer_list(); var destroyImpl = require_destroy(); var _require = require_state(); var getHighWaterMark = _require.getHighWaterMark; var _require$codes = require_errors2().codes; var ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE; var ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT; var StringDecoder; var createReadableStreamAsyncIterator; var from; require_inherits()(Readable, Stream3); var errorOrDestroy = destroyImpl.errorOrDestroy; var kProxyEvents = ["error", "close", "destroy", "pause", "resume"]; function prependListener(emitter, event, fn) { if (typeof emitter.prependListener === "function") return emitter.prependListener(event, fn); if (!emitter._events || !emitter._events[event]) emitter.on(event, fn); else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn); else emitter._events[event] = [fn, emitter._events[event]]; } function ReadableState(options, stream, isDuplex) { Duplex = Duplex || require_stream_duplex(); options = options || {}; if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode; this.highWaterMark = getHighWaterMark(this, options, "readableHighWaterMark", isDuplex); this.buffer = new BufferList(); this.length = 0; this.pipes = null; this.pipesCount = 0; this.flowing = null; this.ended = false; this.endEmitted = false; this.reading = false; this.sync = true; this.needReadable = false; this.emittedReadable = false; this.readableListening = false; this.resumeScheduled = false; this.paused = true; this.emitClose = options.emitClose !== false; this.autoDestroy = !!options.autoDestroy; this.destroyed = false; this.defaultEncoding = options.defaultEncoding || "utf8"; this.awaitDrain = 0; this.readingMore = false; this.decoder = null; this.encoding = null; if (options.encoding) { if (!StringDecoder) StringDecoder = require_string_decoder().StringDecoder; this.decoder = new StringDecoder(options.encoding); this.encoding = options.encoding; } } function Readable(options) { Duplex = Duplex || require_stream_duplex(); if (!(this instanceof Readable)) return new Readable(options); var isDuplex = this instanceof Duplex; this._readableState = new ReadableState(options, this, isDuplex); this.readable = true; if (options) { if (typeof options.read === "function") this._read = options.read; if (typeof options.destroy === "function") this._destroy = options.destroy; } Stream3.call(this); } Object.defineProperty(Readable.prototype, "destroyed", { enumerable: false, get: function get() { if (this._readableState === void 0) { return false; } return this._readableState.destroyed; }, set: function set(value) { if (!this._readableState) { return; } this._readableState.destroyed = value; } }); Readable.prototype.destroy = destroyImpl.destroy; Readable.prototype._undestroy = destroyImpl.undestroy; Readable.prototype._destroy = function(err, cb) { cb(err); }; Readable.prototype.push = function(chunk, encoding) { var state = this._readableState; var skipChunkCheck; if (!state.objectMode) { if (typeof chunk === "string") { encoding = encoding || state.defaultEncoding; if (encoding !== state.encoding) { chunk = Buffer4.from(chunk, encoding); encoding = ""; } skipChunkCheck = true; } } else { skipChunkCheck = true; } return readableAddChunk(this, chunk, encoding, false, skipChunkCheck); }; Readable.prototype.unshift = function(chunk) { return readableAddChunk(this, chunk, null, true, false); }; function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) { debug("readableAddChunk", chunk); var state = stream._readableState; if (chunk === null) { state.reading = false; onEofChunk(stream, state); } else { var er; if (!skipChunkCheck) er = chunkInvalid(state, chunk); if (er) { errorOrDestroy(stream, er); } else if (state.objectMode || chunk && chunk.length > 0) { if (typeof chunk !== "string" && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer4.prototype) { chunk = _uint8ArrayToBuffer(chunk); } if (addToFront) { if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT()); else addChunk(stream, state, chunk, true); } else if (state.ended) { errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF()); } else if (state.destroyed) { return false; } else { state.reading = false; if (state.decoder && !encoding) { chunk = state.decoder.write(chunk); if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false); else maybeReadMore(stream, state); } else { addChunk(stream, state, chunk, false); } } } else if (!addToFront) { state.reading = false; maybeReadMore(stream, state); } } return !state.ended && (state.length < state.highWaterMark || state.length === 0); } function addChunk(stream, state, chunk, addToFront) { if (state.flowing && state.length === 0 && !state.sync) { state.awaitDrain = 0; stream.emit("data", chunk); } else { state.length += state.objectMode ? 1 : chunk.length; if (addToFront) state.buffer.unshift(chunk); else state.buffer.push(chunk); if (state.needReadable) emitReadable(stream); } maybeReadMore(stream, state); } function chunkInvalid(state, chunk) { var er; if (!_isUint8Array(chunk) && typeof chunk !== "string" && chunk !== void 0 && !state.objectMode) { er = new ERR_INVALID_ARG_TYPE("chunk", ["string", "Buffer", "Uint8Array"], chunk); } return er; } Readable.prototype.isPaused = function() { return this._readableState.flowing === false; }; Readable.prototype.setEncoding = function(enc) { if (!StringDecoder) StringDecoder = require_string_decoder().StringDecoder; var decoder = new StringDecoder(enc); this._readableState.decoder = decoder; this._readableState.encoding = this._readableState.decoder.encoding; var p = this._readableState.buffer.head; var content = ""; while (p !== null) { content += decoder.write(p.data); p = p.next; } this._readableState.buffer.clear(); if (content !== "") this._readableState.buffer.push(content); this._readableState.length = content.length; return this; }; var MAX_HWM = 1073741824; function computeNewHighWaterMark(n) { if (n >= MAX_HWM) { n = MAX_HWM; } else { n--; n |= n >>> 1; n |= n >>> 2; n |= n >>> 4; n |= n >>> 8; n |= n >>> 16; n++; } return n; } function howMuchToRead(n, state) { if (n <= 0 || state.length === 0 && state.ended) return 0; if (state.objectMode) return 1; if (n !== n) { if (state.flowing && state.length) return state.buffer.head.data.length; else return state.length; } if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n); if (n <= state.length) return n; if (!state.ended) { state.needReadable = true; return 0; } return state.length; } Readable.prototype.read = function(n) { debug("read", n); n = parseInt(n, 10); var state = this._readableState; var nOrig = n; if (n !== 0) state.emittedReadable = false; if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) { debug("read: emitReadable", state.length, state.ended); if (state.length === 0 && state.ended) endReadable(this); else emitReadable(this); return null; } n = howMuchToRead(n, state); if (n === 0 && state.ended) { if (state.length === 0) endReadable(this); return null; } var doRead = state.needReadable; debug("need readable", doRead); if (state.length === 0 || state.length - n < state.highWaterMark) { doRead = true; debug("length less than watermark", doRead); } if (state.ended || state.reading) { doRead = false; debug("reading or ended", doRead); } else if (doRead) { debug("do read"); state.reading = true; state.sync = true; if (state.length === 0) state.needReadable = true; this._read(state.highWaterMark); state.sync = false; if (!state.reading) n = howMuchToRead(nOrig, state); } var ret; if (n > 0) ret = fromList(n, state); else ret = null; if (ret === null) { state.needReadable = state.length <= state.highWaterMark; n = 0; } else { state.length -= n; state.awaitDrain = 0; } if (state.length === 0) { if (!state.ended) state.needReadable = true; if (nOrig !== n && state.ended) endReadable(this); } if (ret !== null) this.emit("data", ret); return ret; }; function onEofChunk(stream, state) { debug("onEofChunk"); if (state.ended) return; if (state.decoder) { var chunk = state.decoder.end(); if (chunk && chunk.length) { state.buffer.push(chunk); state.length += state.objectMode ? 1 : chunk.length; } } state.ended = true; if (state.sync) { emitReadable(stream); } else { state.needReadable = false; if (!state.emittedReadable) { state.emittedReadable = true; emitReadable_(stream); } } } function emitReadable(stream) { var state = stream._readableState; debug("emitReadable", state.needReadable, state.emittedReadable); state.needReadable = false; if (!state.emittedReadable) { debug("emitReadable", state.flowing); state.emittedReadable = true; process.nextTick(emitReadable_, stream); } } function emitReadable_(stream) { var state = stream._readableState; debug("emitReadable_", state.destroyed, state.length, state.ended); if (!state.destroyed && (state.length || state.ended)) { stream.emit("readable"); state.emittedReadable = false; } state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark; flow(stream); } function maybeReadMore(stream, state) { if (!state.readingMore) { state.readingMore = true; process.nextTick(maybeReadMore_, stream, state); } } function maybeReadMore_(stream, state) { while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) { var len = state.length; debug("maybeReadMore read 0"); stream.read(0); if (len === state.length) break; } state.readingMore = false; } Readable.prototype._read = function(n) { errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED("_read()")); }; Readable.prototype.pipe = function(dest, pipeOpts) { var src = this; var state = this._readableState; switch (state.pipesCount) { case 0: state.pipes = dest; break; case 1: state.pipes = [state.pipes, dest]; break; default: state.pipes.push(dest); break; } state.pipesCount += 1; debug("pipe count=%d opts=%j", state.pipesCount, pipeOpts); var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr; var endFn = doEnd ? onend : unpipe; if (state.endEmitted) process.nextTick(endFn); else src.once("end", endFn); dest.on("unpipe", onunpipe); function onunpipe(readable, unpipeInfo) { debug("onunpipe"); if (readable === src) { if (unpipeInfo && unpipeInfo.hasUnpiped === false) { unpipeInfo.hasUnpiped = true; cleanup(); } } } function onend() { debug("onend"); dest.end(); } var ondrain = pipeOnDrain(src); dest.on("drain", ondrain); var cleanedUp = false; function cleanup() { debug("cleanup"); dest.removeListener("close", onclose); dest.removeListener("finish", onfinish); dest.removeListener("drain", ondrain); dest.removeListener("error", onerror); dest.removeListener("unpipe", onunpipe); src.removeListener("end", onend); src.removeListener("end", unpipe); src.removeListener("data", ondata); cleanedUp = true; if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain(); } src.on("data", ondata); function ondata(chunk) { debug("ondata"); var ret = dest.write(chunk); debug("dest.write", ret); if (ret === false) { if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) { debug("false write response, pause", state.awaitDrain); state.awaitDrain++; } src.pause(); } } function onerror(er) { debug("onerror", er); unpipe(); dest.removeListener("error", onerror); if (EElistenerCount(dest, "error") === 0) errorOrDestroy(dest, er); } prependListener(dest, "error", onerror); function onclose() { dest.removeListener("finish", onfinish); unpipe(); } dest.once("close", onclose); function onfinish() { debug("onfinish"); dest.removeListener("close", onclose); unpipe(); } dest.once("finish", onfinish); function unpipe() { debug("unpipe"); src.unpipe(dest); } dest.emit("pipe", src); if (!state.flowing) { debug("pipe resume"); src.resume(); } return dest; }; function pipeOnDrain(src) { return function pipeOnDrainFunctionResult() { var state = src._readableState; debug("pipeOnDrain", state.awaitDrain); if (state.awaitDrain) state.awaitDrain--; if (state.awaitDrain === 0 && EElistenerCount(src, "data")) { state.flowing = true; flow(src); } }; } Readable.prototype.unpipe = function(dest) { var state = this._readableState; var unpipeInfo = { hasUnpiped: false }; if (state.pipesCount === 0) return this; if (state.pipesCount === 1) { if (dest && dest !== state.pipes) return this; if (!dest) dest = state.pipes; state.pipes = null; state.pipesCount = 0; state.flowing = false; if (dest) dest.emit("unpipe", this, unpipeInfo); return this; } if (!dest) { var dests = state.pipes; var len = state.pipesCount; state.pipes = null; state.pipesCount = 0; state.flowing = false; for (var i2 = 0; i2 < len; i2++) dests[i2].emit("unpipe", this, { hasUnpiped: false }); return this; } var index = indexOf(state.pipes, dest); if (index === -1) return this; state.pipes.splice(index, 1); state.pipesCount -= 1; if (state.pipesCount === 1) state.pipes = state.pipes[0]; dest.emit("unpipe", this, unpipeInfo); return this; }; Readable.prototype.on = function(ev, fn) { var res = Stream3.prototype.on.call(this, ev, fn); var state = this._readableState; if (ev === "data") { state.readableListening = this.listenerCount("readable") > 0; if (state.flowing !== false) this.resume(); } else if (ev === "readable") { if (!state.endEmitted && !state.readableListening) { state.readableListening = state.needReadable = true; state.flowing = false; state.emittedReadable = false; debug("on readable", state.length, state.reading); if (state.length) { emitReadable(this); } else if (!state.reading) { process.nextTick(nReadingNextTick, this); } } } return res; }; Readable.prototype.addListener = Readable.prototype.on; Readable.prototype.removeListener = function(ev, fn) { var res = Stream3.prototype.removeListener.call(this, ev, fn); if (ev === "readable") { process.nextTick(updateReadableListening, this); } return res; }; Readable.prototype.removeAllListeners = function(ev) { var res = Stream3.prototype.removeAllListeners.apply(this, arguments); if (ev === "readable" || ev === void 0) { process.nextTick(updateReadableListening, this); } return res; }; function updateReadableListening(self2) { var state = self2._readableState; state.readableListening = self2.listenerCount("readable") > 0; if (state.resumeScheduled && !state.paused) { state.flowing = true; } else if (self2.listenerCount("data") > 0) { self2.resume(); } } function nReadingNextTick(self2) { debug("readable nexttick read 0"); self2.read(0); } Readable.prototype.resume = function() { var state = this._readableState; if (!state.flowing) { debug("resume"); state.flowing = !state.readableListening; resume(this, state); } state.paused = false; return this; }; function resume(stream, state) { if (!state.resumeScheduled) { state.resumeScheduled = true; process.nextTick(resume_, stream, state); } } function resume_(stream, state) { debug("resume", state.reading); if (!state.reading) { stream.read(0); } state.resumeScheduled = false; stream.emit("resume"); flow(stream); if (state.flowing && !state.reading) stream.read(0); } Readable.prototype.pause = function() { debug("call pause flowing=%j", this._readableState.flowing); if (this._readableState.flowing !== false) { debug("pause"); this._readableState.flowing = false; this.emit("pause"); } this._readableState.paused = true; return this; }; function flow(stream) { var state = stream._readableState; debug("flow", state.flowing); while (state.flowing && stream.read() !== null) ; } Readable.prototype.wrap = function(stream) { var _this = this; var state = this._readableState; var paused = false; stream.on("end", function() { debug("wrapped end"); if (state.decoder && !state.ended) { var chunk = state.decoder.end(); if (chunk && chunk.length) _this.push(chunk); } _this.push(null); }); stream.on("data", function(chunk) { debug("wrapped data"); if (state.decoder) chunk = state.decoder.write(chunk); if (state.objectMode && (chunk === null || chunk === void 0)) return; else if (!state.objectMode && (!chunk || !chunk.length)) return; var ret = _this.push(chunk); if (!ret) { paused = true; stream.pause(); } }); for (var i2 in stream) { if (this[i2] === void 0 && typeof stream[i2] === "function") { this[i2] = function methodWrap(method) { return function methodWrapReturnFunction() { return stream[method].apply(stream, arguments); }; }(i2); } } for (var n = 0; n < kProxyEvents.length; n++) { stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n])); } this._read = function(n2) { debug("wrapped _read", n2); if (paused) { paused = false; stream.resume(); } }; return this; }; if (typeof Symbol === "function") { Readable.prototype[Symbol.asyncIterator] = function() { if (createReadableStreamAsyncIterator === void 0) { createReadableStreamAsyncIterator = require_async_iterator(); } return createReadableStreamAsyncIterator(this); }; } Object.defineProperty(Readable.prototype, "readableHighWaterMark", { enumerable: false, get: function get() { return this._readableState.highWaterMark; } }); Object.defineProperty(Readable.prototype, "readableBuffer", { enumerable: false, get: function get() { return this._readableState && this._readableState.buffer; } }); Object.defineProperty(Readable.prototype, "readableFlowing", { enumerable: false, get: function get() { return this._readableState.flowing; }, set: function set(state) { if (this._readableState) { this._readableState.flowing = state; } } }); Readable._fromList = fromList; Object.defineProperty(Readable.prototype, "readableLength", { enumerable: false, get: function get() { return this._readableState.length; } }); function fromList(n, state) { if (state.length === 0) return null; var ret; if (state.objectMode) ret = state.buffer.shift(); else if (!n || n >= state.length) { if (state.decoder) ret = state.buffer.join(""); else if (state.buffer.length === 1) ret = state.buffer.first(); else ret = state.buffer.concat(state.length); state.buffer.clear(); } else { ret = state.buffer.consume(n, state.decoder); } return ret; } function endReadable(stream) { var state = stream._readableState; debug("endReadable", state.endEmitted); if (!state.endEmitted) { state.ended = true; process.nextTick(endReadableNT, state, stream); } } function endReadableNT(state, stream) { debug("endReadableNT", state.endEmitted, state.length); if (!state.endEmitted && state.length === 0) { state.endEmitted = true; stream.readable = false; stream.emit("end"); if (state.autoDestroy) { var wState = stream._writableState; if (!wState || wState.autoDestroy && wState.finished) { stream.destroy(); } } } } if (typeof Symbol === "function") { Readable.from = function(iterable, opts) { if (from === void 0) { from = require_from(); } return from(Readable, iterable, opts); }; } function indexOf(xs, x2) { for (var i2 = 0, l = xs.length; i2 < l; i2++) { if (xs[i2] === x2) return i2; } return -1; } } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_duplex.js var require_stream_duplex = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_duplex.js"(exports, module2) { "use strict"; var objectKeys = Object.keys || function(obj) { var keys2 = []; for (var key in obj) keys2.push(key); return keys2; }; module2.exports = Duplex; var Readable = require_stream_readable(); var Writable = require_stream_writable(); require_inherits()(Duplex, Readable); { keys = objectKeys(Writable.prototype); for (v = 0; v < keys.length; v++) { method = keys[v]; if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method]; } } var keys; var method; var v; function Duplex(options) { if (!(this instanceof Duplex)) return new Duplex(options); Readable.call(this, options); Writable.call(this, options); this.allowHalfOpen = true; if (options) { if (options.readable === false) this.readable = false; if (options.writable === false) this.writable = false; if (options.allowHalfOpen === false) { this.allowHalfOpen = false; this.once("end", onend); } } } Object.defineProperty(Duplex.prototype, "writableHighWaterMark", { enumerable: false, get: function get() { return this._writableState.highWaterMark; } }); Object.defineProperty(Duplex.prototype, "writableBuffer", { enumerable: false, get: function get() { return this._writableState && this._writableState.getBuffer(); } }); Object.defineProperty(Duplex.prototype, "writableLength", { enumerable: false, get: function get() { return this._writableState.length; } }); function onend() { if (this._writableState.ended) return; process.nextTick(onEndNT, this); } function onEndNT(self2) { self2.end(); } Object.defineProperty(Duplex.prototype, "destroyed", { enumerable: false, get: function get() { if (this._readableState === void 0 || this._writableState === void 0) { return false; } return this._readableState.destroyed && this._writableState.destroyed; }, set: function set(value) { if (this._readableState === void 0 || this._writableState === void 0) { return; } this._readableState.destroyed = value; this._writableState.destroyed = value; } }); } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_writable.js var require_stream_writable = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_writable.js"(exports, module2) { "use strict"; module2.exports = Writable; function CorkedRequest(state) { var _this = this; this.next = null; this.entry = null; this.finish = function() { onCorkedFinish(_this, state); }; } var Duplex; Writable.WritableState = WritableState; var internalUtil = { deprecate: require_node2() }; var Stream3 = require_stream(); var Buffer4 = require("buffer").Buffer; var OurUint8Array = (typeof global !== "undefined" ? global : typeof window !== "undefined" ? window : typeof self !== "undefined" ? self : {}).Uint8Array || function() { }; function _uint8ArrayToBuffer(chunk) { return Buffer4.from(chunk); } function _isUint8Array(obj) { return Buffer4.isBuffer(obj) || obj instanceof OurUint8Array; } var destroyImpl = require_destroy(); var _require = require_state(); var getHighWaterMark = _require.getHighWaterMark; var _require$codes = require_errors2().codes; var ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK; var ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE; var ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; var ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES; var ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END; var ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING; var errorOrDestroy = destroyImpl.errorOrDestroy; require_inherits()(Writable, Stream3); function nop() { } function WritableState(options, stream, isDuplex) { Duplex = Duplex || require_stream_duplex(); options = options || {}; if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; this.objectMode = !!options.objectMode; if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode; this.highWaterMark = getHighWaterMark(this, options, "writableHighWaterMark", isDuplex); this.finalCalled = false; this.needDrain = false; this.ending = false; this.ended = false; this.finished = false; this.destroyed = false; var noDecode = options.decodeStrings === false; this.decodeStrings = !noDecode; this.defaultEncoding = options.defaultEncoding || "utf8"; this.length = 0; this.writing = false; this.corked = 0; this.sync = true; this.bufferProcessing = false; this.onwrite = function(er) { onwrite(stream, er); }; this.writecb = null; this.writelen = 0; this.bufferedRequest = null; this.lastBufferedRequest = null; this.pendingcb = 0; this.prefinished = false; this.errorEmitted = false; this.emitClose = options.emitClose !== false; this.autoDestroy = !!options.autoDestroy; this.bufferedRequestCount = 0; this.corkedRequestsFree = new CorkedRequest(this); } WritableState.prototype.getBuffer = function getBuffer() { var current = this.bufferedRequest; var out = []; while (current) { out.push(current); current = current.next; } return out; }; (function() { try { Object.defineProperty(WritableState.prototype, "buffer", { get: internalUtil.deprecate(function writableStateBufferGetter() { return this.getBuffer(); }, "_writableState.buffer is deprecated. Use _writableState.getBuffer instead.", "DEP0003") }); } catch (_) { } })(); var realHasInstance; if (typeof Symbol === "function" && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === "function") { realHasInstance = Function.prototype[Symbol.hasInstance]; Object.defineProperty(Writable, Symbol.hasInstance, { value: function value(object) { if (realHasInstance.call(this, object)) return true; if (this !== Writable) return false; return object && object._writableState instanceof WritableState; } }); } else { realHasInstance = function realHasInstance2(object) { return object instanceof this; }; } function Writable(options) { Duplex = Duplex || require_stream_duplex(); var isDuplex = this instanceof Duplex; if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options); this._writableState = new WritableState(options, this, isDuplex); this.writable = true; if (options) { if (typeof options.write === "function") this._write = options.write; if (typeof options.writev === "function") this._writev = options.writev; if (typeof options.destroy === "function") this._destroy = options.destroy; if (typeof options.final === "function") this._final = options.final; } Stream3.call(this); } Writable.prototype.pipe = function() { errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE()); }; function writeAfterEnd(stream, cb) { var er = new ERR_STREAM_WRITE_AFTER_END(); errorOrDestroy(stream, er); process.nextTick(cb, er); } function validChunk(stream, state, chunk, cb) { var er; if (chunk === null) { er = new ERR_STREAM_NULL_VALUES(); } else if (typeof chunk !== "string" && !state.objectMode) { er = new ERR_INVALID_ARG_TYPE("chunk", ["string", "Buffer"], chunk); } if (er) { errorOrDestroy(stream, er); process.nextTick(cb, er); return false; } return true; } Writable.prototype.write = function(chunk, encoding, cb) { var state = this._writableState; var ret = false; var isBuf = !state.objectMode && _isUint8Array(chunk); if (isBuf && !Buffer4.isBuffer(chunk)) { chunk = _uint8ArrayToBuffer(chunk); } if (typeof encoding === "function") { cb = encoding; encoding = null; } if (isBuf) encoding = "buffer"; else if (!encoding) encoding = state.defaultEncoding; if (typeof cb !== "function") cb = nop; if (state.ending) writeAfterEnd(this, cb); else if (isBuf || validChunk(this, state, chunk, cb)) { state.pendingcb++; ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb); } return ret; }; Writable.prototype.cork = function() { this._writableState.corked++; }; Writable.prototype.uncork = function() { var state = this._writableState; if (state.corked) { state.corked--; if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state); } }; Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) { if (typeof encoding === "string") encoding = encoding.toLowerCase(); if (!(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((encoding + "").toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding); this._writableState.defaultEncoding = encoding; return this; }; Object.defineProperty(Writable.prototype, "writableBuffer", { enumerable: false, get: function get() { return this._writableState && this._writableState.getBuffer(); } }); function decodeChunk(state, chunk, encoding) { if (!state.objectMode && state.decodeStrings !== false && typeof chunk === "string") { chunk = Buffer4.from(chunk, encoding); } return chunk; } Object.defineProperty(Writable.prototype, "writableHighWaterMark", { enumerable: false, get: function get() { return this._writableState.highWaterMark; } }); function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) { if (!isBuf) { var newChunk = decodeChunk(state, chunk, encoding); if (chunk !== newChunk) { isBuf = true; encoding = "buffer"; chunk = newChunk; } } var len = state.objectMode ? 1 : chunk.length; state.length += len; var ret = state.length < state.highWaterMark; if (!ret) state.needDrain = true; if (state.writing || state.corked) { var last = state.lastBufferedRequest; state.lastBufferedRequest = { chunk, encoding, isBuf, callback: cb, next: null }; if (last) { last.next = state.lastBufferedRequest; } else { state.bufferedRequest = state.lastBufferedRequest; } state.bufferedRequestCount += 1; } else { doWrite(stream, state, false, len, chunk, encoding, cb); } return ret; } function doWrite(stream, state, writev, len, chunk, encoding, cb) { state.writelen = len; state.writecb = cb; state.writing = true; state.sync = true; if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED("write")); else if (writev) stream._writev(chunk, state.onwrite); else stream._write(chunk, encoding, state.onwrite); state.sync = false; } function onwriteError(stream, state, sync, er, cb) { --state.pendingcb; if (sync) { process.nextTick(cb, er); process.nextTick(finishMaybe, stream, state); stream._writableState.errorEmitted = true; errorOrDestroy(stream, er); } else { cb(er); stream._writableState.errorEmitted = true; errorOrDestroy(stream, er); finishMaybe(stream, state); } } function onwriteStateUpdate(state) { state.writing = false; state.writecb = null; state.length -= state.writelen; state.writelen = 0; } function onwrite(stream, er) { var state = stream._writableState; var sync = state.sync; var cb = state.writecb; if (typeof cb !== "function") throw new ERR_MULTIPLE_CALLBACK(); onwriteStateUpdate(state); if (er) onwriteError(stream, state, sync, er, cb); else { var finished = needFinish(state) || stream.destroyed; if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) { clearBuffer(stream, state); } if (sync) { process.nextTick(afterWrite, stream, state, finished, cb); } else { afterWrite(stream, state, finished, cb); } } } function afterWrite(stream, state, finished, cb) { if (!finished) onwriteDrain(stream, state); state.pendingcb--; cb(); finishMaybe(stream, state); } function onwriteDrain(stream, state) { if (state.length === 0 && state.needDrain) { state.needDrain = false; stream.emit("drain"); } } function clearBuffer(stream, state) { state.bufferProcessing = true; var entry = state.bufferedRequest; if (stream._writev && entry && entry.next) { var l = state.bufferedRequestCount; var buffer = new Array(l); var holder = state.corkedRequestsFree; holder.entry = entry; var count = 0; var allBuffers = true; while (entry) { buffer[count] = entry; if (!entry.isBuf) allBuffers = false; entry = entry.next; count += 1; } buffer.allBuffers = allBuffers; doWrite(stream, state, true, state.length, buffer, "", holder.finish); state.pendingcb++; state.lastBufferedRequest = null; if (holder.next) { state.corkedRequestsFree = holder.next; holder.next = null; } else { state.corkedRequestsFree = new CorkedRequest(state); } state.bufferedRequestCount = 0; } else { while (entry) { var chunk = entry.chunk; var encoding = entry.encoding; var cb = entry.callback; var len = state.objectMode ? 1 : chunk.length; doWrite(stream, state, false, len, chunk, encoding, cb); entry = entry.next; state.bufferedRequestCount--; if (state.writing) { break; } } if (entry === null) state.lastBufferedRequest = null; } state.bufferedRequest = entry; state.bufferProcessing = false; } Writable.prototype._write = function(chunk, encoding, cb) { cb(new ERR_METHOD_NOT_IMPLEMENTED("_write()")); }; Writable.prototype._writev = null; Writable.prototype.end = function(chunk, encoding, cb) { var state = this._writableState; if (typeof chunk === "function") { cb = chunk; chunk = null; encoding = null; } else if (typeof encoding === "function") { cb = encoding; encoding = null; } if (chunk !== null && chunk !== void 0) this.write(chunk, encoding); if (state.corked) { state.corked = 1; this.uncork(); } if (!state.ending) endWritable(this, state, cb); return this; }; Object.defineProperty(Writable.prototype, "writableLength", { enumerable: false, get: function get() { return this._writableState.length; } }); function needFinish(state) { return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing; } function callFinal(stream, state) { stream._final(function(err) { state.pendingcb--; if (err) { errorOrDestroy(stream, err); } state.prefinished = true; stream.emit("prefinish"); finishMaybe(stream, state); }); } function prefinish(stream, state) { if (!state.prefinished && !state.finalCalled) { if (typeof stream._final === "function" && !state.destroyed) { state.pendingcb++; state.finalCalled = true; process.nextTick(callFinal, stream, state); } else { state.prefinished = true; stream.emit("prefinish"); } } } function finishMaybe(stream, state) { var need = needFinish(state); if (need) { prefinish(stream, state); if (state.pendingcb === 0) { state.finished = true; stream.emit("finish"); if (state.autoDestroy) { var rState = stream._readableState; if (!rState || rState.autoDestroy && rState.endEmitted) { stream.destroy(); } } } } return need; } function endWritable(stream, state, cb) { state.ending = true; finishMaybe(stream, state); if (cb) { if (state.finished) process.nextTick(cb); else stream.once("finish", cb); } state.ended = true; stream.writable = false; } function onCorkedFinish(corkReq, state, err) { var entry = corkReq.entry; corkReq.entry = null; while (entry) { var cb = entry.callback; state.pendingcb--; cb(err); entry = entry.next; } state.corkedRequestsFree.next = corkReq; } Object.defineProperty(Writable.prototype, "destroyed", { enumerable: false, get: function get() { if (this._writableState === void 0) { return false; } return this._writableState.destroyed; }, set: function set(value) { if (!this._writableState) { return; } this._writableState.destroyed = value; } }); Writable.prototype.destroy = destroyImpl.destroy; Writable.prototype._undestroy = destroyImpl.undestroy; Writable.prototype._destroy = function(err, cb) { cb(err); }; } }); // ../../node_modules/.pnpm/winston-transport@4.5.0/node_modules/winston-transport/legacy.js var require_legacy = __commonJS({ "../../node_modules/.pnpm/winston-transport@4.5.0/node_modules/winston-transport/legacy.js"(exports, module2) { "use strict"; var util = require("util"); var { LEVEL } = require_triple_beam(); var TransportStream = require_winston_transport(); var LegacyTransportStream = module2.exports = function LegacyTransportStream2(options = {}) { TransportStream.call(this, options); if (!options.transport || typeof options.transport.log !== "function") { throw new Error("Invalid transport, must be an object with a log method."); } this.transport = options.transport; this.level = this.level || options.transport.level; this.handleExceptions = this.handleExceptions || options.transport.handleExceptions; this._deprecated(); function transportError(err) { this.emit("error", err, this.transport); } if (!this.transport.__winstonError) { this.transport.__winstonError = transportError.bind(this); this.transport.on("error", this.transport.__winstonError); } }; util.inherits(LegacyTransportStream, TransportStream); LegacyTransportStream.prototype._write = function _write(info, enc, callback) { if (this.silent || info.exception === true && !this.handleExceptions) { return callback(null); } if (!this.level || this.levels[this.level] >= this.levels[info[LEVEL]]) { this.transport.log(info[LEVEL], info.message, info, this._nop); } callback(null); }; LegacyTransportStream.prototype._writev = function _writev(chunks, callback) { for (let i2 = 0; i2 < chunks.length; i2++) { if (this._accept(chunks[i2])) { this.transport.log( chunks[i2].chunk[LEVEL], chunks[i2].chunk.message, chunks[i2].chunk, this._nop ); chunks[i2].callback(); } } return callback(null); }; LegacyTransportStream.prototype._deprecated = function _deprecated() { console.error([ `${this.transport.name} is a legacy winston transport. Consider upgrading: `, "- Upgrade docs: https://github.com/winstonjs/winston/blob/master/UPGRADE-3.0.md" ].join("\n")); }; LegacyTransportStream.prototype.close = function close() { if (this.transport.close) { this.transport.close(); } if (this.transport.__winstonError) { this.transport.removeListener("error", this.transport.__winstonError); this.transport.__winstonError = null; } }; } }); // ../../node_modules/.pnpm/winston-transport@4.5.0/node_modules/winston-transport/index.js var require_winston_transport = __commonJS({ "../../node_modules/.pnpm/winston-transport@4.5.0/node_modules/winston-transport/index.js"(exports, module2) { "use strict"; var util = require("util"); var Writable = require_stream_writable(); var { LEVEL } = require_triple_beam(); var TransportStream = module2.exports = function TransportStream2(options = {}) { Writable.call(this, { objectMode: true, highWaterMark: options.highWaterMark }); this.format = options.format; this.level = options.level; this.handleExceptions = options.handleExceptions; this.handleRejections = options.handleRejections; this.silent = options.silent; if (options.log) this.log = options.log; if (options.logv) this.logv = options.logv; if (options.close) this.close = options.close; this.once("pipe", (logger) => { this.levels = logger.levels; this.parent = logger; }); this.once("unpipe", (src) => { if (src === this.parent) { this.parent = null; if (this.close) { this.close(); } } }); }; util.inherits(TransportStream, Writable); TransportStream.prototype._write = function _write(info, enc, callback) { if (this.silent || info.exception === true && !this.handleExceptions) { return callback(null); } const level = this.level || this.parent && this.parent.level; if (!level || this.levels[level] >= this.levels[info[LEVEL]]) { if (info && !this.format) { return this.log(info, callback); } let errState; let transformed; try { transformed = this.format.transform(Object.assign({}, info), this.format.options); } catch (err) { errState = err; } if (errState || !transformed) { callback(); if (errState) throw errState; return; } return this.log(transformed, callback); } this._writableState.sync = false; return callback(null); }; TransportStream.prototype._writev = function _writev(chunks, callback) { if (this.logv) { const infos = chunks.filter(this._accept, this); if (!infos.length) { return callback(null); } return this.logv(infos, callback); } for (let i2 = 0; i2 < chunks.length; i2++) { if (!this._accept(chunks[i2])) continue; if (chunks[i2].chunk && !this.format) { this.log(chunks[i2].chunk, chunks[i2].callback); continue; } let errState; let transformed; try { transformed = this.format.transform( Object.assign({}, chunks[i2].chunk), this.format.options ); } catch (err) { errState = err; } if (errState || !transformed) { chunks[i2].callback(); if (errState) { callback(null); throw errState; } } else { this.log(transformed, chunks[i2].callback); } } return callback(null); }; TransportStream.prototype._accept = function _accept(write) { const info = write.chunk; if (this.silent) { return false; } const level = this.level || this.parent && this.parent.level; if (info.exception === true || !level || this.levels[level] >= this.levels[info[LEVEL]]) { if (this.handleExceptions || info.exception !== true) { return true; } } return false; }; TransportStream.prototype._nop = function _nop() { return void 0; }; module2.exports.LegacyTransportStream = require_legacy(); } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/console.js var require_console = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/console.js"(exports, module2) { "use strict"; var os = require("os"); var { LEVEL, MESSAGE } = require_triple_beam(); var TransportStream = require_winston_transport(); module2.exports = class Console extends TransportStream { constructor(options = {}) { super(options); this.name = options.name || "console"; this.stderrLevels = this._stringArrayToSet(options.stderrLevels); this.consoleWarnLevels = this._stringArrayToSet(options.consoleWarnLevels); this.eol = typeof options.eol === "string" ? options.eol : os.EOL; this.setMaxListeners(30); } log(info, callback) { setImmediate(() => this.emit("logged", info)); if (this.stderrLevels[info[LEVEL]]) { if (console._stderr) { console._stderr.write(`${info[MESSAGE]}${this.eol}`); } else { console.error(info[MESSAGE]); } if (callback) { callback(); } return; } else if (this.consoleWarnLevels[info[LEVEL]]) { if (console._stderr) { console._stderr.write(`${info[MESSAGE]}${this.eol}`); } else { console.warn(info[MESSAGE]); } if (callback) { callback(); } return; } if (console._stdout) { console._stdout.write(`${info[MESSAGE]}${this.eol}`); } else { console.log(info[MESSAGE]); } if (callback) { callback(); } } _stringArrayToSet(strArray, errMsg) { if (!strArray) return {}; errMsg = errMsg || "Cannot make set from type other than Array of string elements"; if (!Array.isArray(strArray)) { throw new Error(errMsg); } return strArray.reduce((set, el) => { if (typeof el !== "string") { throw new Error(errMsg); } set[el] = true; return set; }, {}); } }; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/isArrayLike.js var require_isArrayLike = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/isArrayLike.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = isArrayLike; function isArrayLike(value) { return value && typeof value.length === "number" && value.length >= 0 && value.length % 1 === 0; } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/initialParams.js var require_initialParams = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/initialParams.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function(fn) { return function(...args) { var callback = args.pop(); return fn.call(this, args, callback); }; }; module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/setImmediate.js var require_setImmediate = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/setImmediate.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fallback = fallback; exports.wrap = wrap; var hasQueueMicrotask = exports.hasQueueMicrotask = typeof queueMicrotask === "function" && queueMicrotask; var hasSetImmediate = exports.hasSetImmediate = typeof setImmediate === "function" && setImmediate; var hasNextTick = exports.hasNextTick = typeof process === "object" && typeof process.nextTick === "function"; function fallback(fn) { setTimeout(fn, 0); } function wrap(defer) { return (fn, ...args) => defer(() => fn(...args)); } var _defer; if (hasQueueMicrotask) { _defer = queueMicrotask; } else if (hasSetImmediate) { _defer = setImmediate; } else if (hasNextTick) { _defer = process.nextTick; } else { _defer = fallback; } exports.default = wrap(_defer); } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/asyncify.js var require_asyncify = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/asyncify.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = asyncify; var _initialParams = require_initialParams(); var _initialParams2 = _interopRequireDefault(_initialParams); var _setImmediate = require_setImmediate(); var _setImmediate2 = _interopRequireDefault(_setImmediate); var _wrapAsync = require_wrapAsync(); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function asyncify(func) { if ((0, _wrapAsync.isAsync)(func)) { return function(...args) { const callback = args.pop(); const promise = func.apply(this, args); return handlePromise(promise, callback); }; } return (0, _initialParams2.default)(function(args, callback) { var result; try { result = func.apply(this, args); } catch (e2) { return callback(e2); } if (result && typeof result.then === "function") { return handlePromise(result, callback); } else { callback(null, result); } }); } function handlePromise(promise, callback) { return promise.then((value) => { invokeCallback(callback, null, value); }, (err) => { invokeCallback(callback, err && err.message ? err : new Error(err)); }); } function invokeCallback(callback, error, value) { try { callback(error, value); } catch (err) { (0, _setImmediate2.default)((e2) => { throw e2; }, err); } } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/wrapAsync.js var require_wrapAsync = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/wrapAsync.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isAsyncIterable = exports.isAsyncGenerator = exports.isAsync = void 0; var _asyncify = require_asyncify(); var _asyncify2 = _interopRequireDefault(_asyncify); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function isAsync(fn) { return fn[Symbol.toStringTag] === "AsyncFunction"; } function isAsyncGenerator(fn) { return fn[Symbol.toStringTag] === "AsyncGenerator"; } function isAsyncIterable(obj) { return typeof obj[Symbol.asyncIterator] === "function"; } function wrapAsync(asyncFn) { if (typeof asyncFn !== "function") throw new Error("expected a function"); return isAsync(asyncFn) ? (0, _asyncify2.default)(asyncFn) : asyncFn; } exports.default = wrapAsync; exports.isAsync = isAsync; exports.isAsyncGenerator = isAsyncGenerator; exports.isAsyncIterable = isAsyncIterable; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/awaitify.js var require_awaitify = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/awaitify.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = awaitify; function awaitify(asyncFn, arity = asyncFn.length) { if (!arity) throw new Error("arity is undefined"); function awaitable(...args) { if (typeof args[arity - 1] === "function") { return asyncFn.apply(this, args); } return new Promise((resolve, reject) => { args[arity - 1] = (err, ...cbArgs) => { if (err) return reject(err); resolve(cbArgs.length > 1 ? cbArgs : cbArgs[0]); }; asyncFn.apply(this, args); }); } return awaitable; } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/parallel.js var require_parallel = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/parallel.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _isArrayLike = require_isArrayLike(); var _isArrayLike2 = _interopRequireDefault(_isArrayLike); var _wrapAsync = require_wrapAsync(); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); var _awaitify = require_awaitify(); var _awaitify2 = _interopRequireDefault(_awaitify); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = (0, _awaitify2.default)((eachfn, tasks, callback) => { var results = (0, _isArrayLike2.default)(tasks) ? [] : {}; eachfn(tasks, (task, key, taskCb) => { (0, _wrapAsync2.default)(task)((err, ...result) => { if (result.length < 2) { [result] = result; } results[key] = result; taskCb(err); }); }, (err) => callback(err, results)); }, 3); module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/once.js var require_once = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/once.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = once; function once(fn) { function wrapper(...args) { if (fn === null) return; var callFn = fn; fn = null; callFn.apply(this, args); } Object.assign(wrapper, fn); return wrapper; } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/getIterator.js var require_getIterator = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/getIterator.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function(coll) { return coll[Symbol.iterator] && coll[Symbol.iterator](); }; module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/iterator.js var require_iterator = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/iterator.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = createIterator; var _isArrayLike = require_isArrayLike(); var _isArrayLike2 = _interopRequireDefault(_isArrayLike); var _getIterator = require_getIterator(); var _getIterator2 = _interopRequireDefault(_getIterator); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function createArrayIterator(coll) { var i2 = -1; var len = coll.length; return function next() { return ++i2 < len ? { value: coll[i2], key: i2 } : null; }; } function createES2015Iterator(iterator) { var i2 = -1; return function next() { var item = iterator.next(); if (item.done) return null; i2++; return { value: item.value, key: i2 }; }; } function createObjectIterator(obj) { var okeys = obj ? Object.keys(obj) : []; var i2 = -1; var len = okeys.length; return function next() { var key = okeys[++i2]; if (key === "__proto__") { return next(); } return i2 < len ? { value: obj[key], key } : null; }; } function createIterator(coll) { if ((0, _isArrayLike2.default)(coll)) { return createArrayIterator(coll); } var iterator = (0, _getIterator2.default)(coll); return iterator ? createES2015Iterator(iterator) : createObjectIterator(coll); } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/onlyOnce.js var require_onlyOnce = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/onlyOnce.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = onlyOnce; function onlyOnce(fn) { return function(...args) { if (fn === null) throw new Error("Callback was already called."); var callFn = fn; fn = null; callFn.apply(this, args); }; } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/breakLoop.js var require_breakLoop = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/breakLoop.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var breakLoop = {}; exports.default = breakLoop; module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/asyncEachOfLimit.js var require_asyncEachOfLimit = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/asyncEachOfLimit.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = asyncEachOfLimit; var _breakLoop = require_breakLoop(); var _breakLoop2 = _interopRequireDefault(_breakLoop); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function asyncEachOfLimit(generator, limit, iteratee, callback) { let done = false; let canceled = false; let awaiting = false; let running = 0; let idx = 0; function replenish() { if (running >= limit || awaiting || done) return; awaiting = true; generator.next().then(({ value, done: iterDone }) => { if (canceled || done) return; awaiting = false; if (iterDone) { done = true; if (running <= 0) { callback(null); } return; } running++; iteratee(value, idx, iterateeCallback); idx++; replenish(); }).catch(handleError); } function iterateeCallback(err, result) { running -= 1; if (canceled) return; if (err) return handleError(err); if (err === false) { done = true; canceled = true; return; } if (result === _breakLoop2.default || done && running <= 0) { done = true; return callback(null); } replenish(); } function handleError(err) { if (canceled) return; awaiting = false; done = true; callback(err); } replenish(); } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/eachOfLimit.js var require_eachOfLimit = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/eachOfLimit.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _once = require_once(); var _once2 = _interopRequireDefault(_once); var _iterator = require_iterator(); var _iterator2 = _interopRequireDefault(_iterator); var _onlyOnce = require_onlyOnce(); var _onlyOnce2 = _interopRequireDefault(_onlyOnce); var _wrapAsync = require_wrapAsync(); var _asyncEachOfLimit = require_asyncEachOfLimit(); var _asyncEachOfLimit2 = _interopRequireDefault(_asyncEachOfLimit); var _breakLoop = require_breakLoop(); var _breakLoop2 = _interopRequireDefault(_breakLoop); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = (limit) => { return (obj, iteratee, callback) => { callback = (0, _once2.default)(callback); if (limit <= 0) { throw new RangeError("concurrency limit cannot be less than 1"); } if (!obj) { return callback(null); } if ((0, _wrapAsync.isAsyncGenerator)(obj)) { return (0, _asyncEachOfLimit2.default)(obj, limit, iteratee, callback); } if ((0, _wrapAsync.isAsyncIterable)(obj)) { return (0, _asyncEachOfLimit2.default)(obj[Symbol.asyncIterator](), limit, iteratee, callback); } var nextElem = (0, _iterator2.default)(obj); var done = false; var canceled = false; var running = 0; var looping = false; function iterateeCallback(err, value) { if (canceled) return; running -= 1; if (err) { done = true; callback(err); } else if (err === false) { done = true; canceled = true; } else if (value === _breakLoop2.default || done && running <= 0) { done = true; return callback(null); } else if (!looping) { replenish(); } } function replenish() { looping = true; while (running < limit && !done) { var elem = nextElem(); if (elem === null) { done = true; if (running <= 0) { callback(null); } return; } running += 1; iteratee(elem.value, elem.key, (0, _onlyOnce2.default)(iterateeCallback)); } looping = false; } replenish(); }; }; module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/eachOfLimit.js var require_eachOfLimit2 = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/eachOfLimit.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _eachOfLimit2 = require_eachOfLimit(); var _eachOfLimit3 = _interopRequireDefault(_eachOfLimit2); var _wrapAsync = require_wrapAsync(); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); var _awaitify = require_awaitify(); var _awaitify2 = _interopRequireDefault(_awaitify); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function eachOfLimit(coll, limit, iteratee, callback) { return (0, _eachOfLimit3.default)(limit)(coll, (0, _wrapAsync2.default)(iteratee), callback); } exports.default = (0, _awaitify2.default)(eachOfLimit, 4); module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/eachOfSeries.js var require_eachOfSeries = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/eachOfSeries.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _eachOfLimit = require_eachOfLimit2(); var _eachOfLimit2 = _interopRequireDefault(_eachOfLimit); var _awaitify = require_awaitify(); var _awaitify2 = _interopRequireDefault(_awaitify); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function eachOfSeries(coll, iteratee, callback) { return (0, _eachOfLimit2.default)(coll, 1, iteratee, callback); } exports.default = (0, _awaitify2.default)(eachOfSeries, 3); module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/series.js var require_series = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/series.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = series; var _parallel2 = require_parallel(); var _parallel3 = _interopRequireDefault(_parallel2); var _eachOfSeries = require_eachOfSeries(); var _eachOfSeries2 = _interopRequireDefault(_eachOfSeries); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function series(tasks, callback) { return (0, _parallel3.default)(_eachOfSeries2.default, tasks, callback); } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_transform.js var require_stream_transform = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_transform.js"(exports, module2) { "use strict"; module2.exports = Transform; var _require$codes = require_errors2().codes; var ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED; var ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK; var ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING; var ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0; var Duplex = require_stream_duplex(); require_inherits()(Transform, Duplex); function afterTransform(er, data) { var ts = this._transformState; ts.transforming = false; var cb = ts.writecb; if (cb === null) { return this.emit("error", new ERR_MULTIPLE_CALLBACK()); } ts.writechunk = null; ts.writecb = null; if (data != null) this.push(data); cb(er); var rs = this._readableState; rs.reading = false; if (rs.needReadable || rs.length < rs.highWaterMark) { this._read(rs.highWaterMark); } } function Transform(options) { if (!(this instanceof Transform)) return new Transform(options); Duplex.call(this, options); this._transformState = { afterTransform: afterTransform.bind(this), needTransform: false, transforming: false, writecb: null, writechunk: null, writeencoding: null }; this._readableState.needReadable = true; this._readableState.sync = false; if (options) { if (typeof options.transform === "function") this._transform = options.transform; if (typeof options.flush === "function") this._flush = options.flush; } this.on("prefinish", prefinish); } function prefinish() { var _this = this; if (typeof this._flush === "function" && !this._readableState.destroyed) { this._flush(function(er, data) { done(_this, er, data); }); } else { done(this, null, null); } } Transform.prototype.push = function(chunk, encoding) { this._transformState.needTransform = false; return Duplex.prototype.push.call(this, chunk, encoding); }; Transform.prototype._transform = function(chunk, encoding, cb) { cb(new ERR_METHOD_NOT_IMPLEMENTED("_transform()")); }; Transform.prototype._write = function(chunk, encoding, cb) { var ts = this._transformState; ts.writecb = cb; ts.writechunk = chunk; ts.writeencoding = encoding; if (!ts.transforming) { var rs = this._readableState; if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark); } }; Transform.prototype._read = function(n) { var ts = this._transformState; if (ts.writechunk !== null && !ts.transforming) { ts.transforming = true; this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform); } else { ts.needTransform = true; } }; Transform.prototype._destroy = function(err, cb) { Duplex.prototype._destroy.call(this, err, function(err2) { cb(err2); }); }; function done(stream, er, data) { if (er) return stream.emit("error", er); if (data != null) stream.push(data); if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0(); if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING(); return stream.push(null); } } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_passthrough.js var require_stream_passthrough = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/_stream_passthrough.js"(exports, module2) { "use strict"; module2.exports = PassThrough3; var Transform = require_stream_transform(); require_inherits()(PassThrough3, Transform); function PassThrough3(options) { if (!(this instanceof PassThrough3)) return new PassThrough3(options); Transform.call(this, options); } PassThrough3.prototype._transform = function(chunk, encoding, cb) { cb(null, chunk); }; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/pipeline.js var require_pipeline = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/lib/internal/streams/pipeline.js"(exports, module2) { "use strict"; var eos; function once(callback) { var called = false; return function() { if (called) return; called = true; callback.apply(void 0, arguments); }; } var _require$codes = require_errors2().codes; var ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS; var ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED; function noop2(err) { if (err) throw err; } function isRequest2(stream) { return stream.setHeader && typeof stream.abort === "function"; } function destroyer(stream, reading, writing, callback) { callback = once(callback); var closed = false; stream.on("close", function() { closed = true; }); if (eos === void 0) eos = require_end_of_stream(); eos(stream, { readable: reading, writable: writing }, function(err) { if (err) return callback(err); closed = true; callback(); }); var destroyed = false; return function(err) { if (closed) return; if (destroyed) return; destroyed = true; if (isRequest2(stream)) return stream.abort(); if (typeof stream.destroy === "function") return stream.destroy(); callback(err || new ERR_STREAM_DESTROYED("pipe")); }; } function call(fn) { fn(); } function pipe(from, to) { return from.pipe(to); } function popCallback(streams) { if (!streams.length) return noop2; if (typeof streams[streams.length - 1] !== "function") return noop2; return streams.pop(); } function pipeline2() { for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) { streams[_key] = arguments[_key]; } var callback = popCallback(streams); if (Array.isArray(streams[0])) streams = streams[0]; if (streams.length < 2) { throw new ERR_MISSING_ARGS("streams"); } var error; var destroys = streams.map(function(stream, i2) { var reading = i2 < streams.length - 1; var writing = i2 > 0; return destroyer(stream, reading, writing, function(err) { if (!error) error = err; if (err) destroys.forEach(call); if (reading) return; destroys.forEach(call); callback(error); }); }); return streams.reduce(pipe); } module2.exports = pipeline2; } }); // ../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/readable.js var require_readable = __commonJS({ "../../node_modules/.pnpm/readable-stream@3.6.2/node_modules/readable-stream/readable.js"(exports, module2) { var Stream3 = require("stream"); if (process.env.READABLE_STREAM === "disable" && Stream3) { module2.exports = Stream3.Readable; Object.assign(module2.exports, Stream3); module2.exports.Stream = Stream3; } else { exports = module2.exports = require_stream_readable(); exports.Stream = Stream3 || exports; exports.Readable = exports; exports.Writable = require_stream_writable(); exports.Duplex = require_stream_duplex(); exports.Transform = require_stream_transform(); exports.PassThrough = require_stream_passthrough(); exports.finished = require_end_of_stream(); exports.pipeline = require_pipeline(); } } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/diagnostics.js var require_diagnostics = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/diagnostics.js"(exports, module2) { var adapters = []; var modifiers = []; var logger = function devnull() { }; function use(adapter) { if (~adapters.indexOf(adapter)) return false; adapters.push(adapter); return true; } function set(custom) { logger = custom; } function enabled(namespace) { var async = []; for (var i2 = 0; i2 < adapters.length; i2++) { if (adapters[i2].async) { async.push(adapters[i2]); continue; } if (adapters[i2](namespace)) return true; } if (!async.length) return false; return new Promise(function pinky(resolve) { Promise.all( async.map(function prebind(fn) { return fn(namespace); }) ).then(function resolved(values) { resolve(values.some(Boolean)); }); }); } function modify(fn) { if (~modifiers.indexOf(fn)) return false; modifiers.push(fn); return true; } function write() { logger.apply(logger, arguments); } function process2(message) { for (var i2 = 0; i2 < modifiers.length; i2++) { message = modifiers[i2].apply(modifiers[i2], arguments); } return message; } function introduce(fn, options) { var has = Object.prototype.hasOwnProperty; for (var key in options) { if (has.call(options, key)) { fn[key] = options[key]; } } return fn; } function nope(options) { options.enabled = false; options.modify = modify; options.set = set; options.use = use; return introduce(function diagnopes() { return false; }, options); } function yep(options) { function diagnostics() { var args = Array.prototype.slice.call(arguments, 0); write.call(write, options, process2(args, options)); return true; } options.enabled = true; options.modify = modify; options.set = set; options.use = use; return introduce(diagnostics, options); } module2.exports = function create(diagnostics) { diagnostics.introduce = introduce; diagnostics.enabled = enabled; diagnostics.process = process2; diagnostics.modify = modify; diagnostics.write = write; diagnostics.nope = nope; diagnostics.yep = yep; diagnostics.set = set; diagnostics.use = use; return diagnostics; }; } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/node/production.js var require_production = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/node/production.js"(exports, module2) { var create = require_diagnostics(); var diagnostics = create(function prod(namespace, options) { options = options || {}; options.namespace = namespace; options.prod = true; options.dev = false; if (!(options.force || prod.force)) return prod.nope(options); return prod.yep(options); }); module2.exports = diagnostics; } }); // ../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js var require_color_name = __commonJS({ "../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js"(exports, module2) { "use strict"; module2.exports = { "aliceblue": [240, 248, 255], "antiquewhite": [250, 235, 215], "aqua": [0, 255, 255], "aquamarine": [127, 255, 212], "azure": [240, 255, 255], "beige": [245, 245, 220], "bisque": [255, 228, 196], "black": [0, 0, 0], "blanchedalmond": [255, 235, 205], "blue": [0, 0, 255], "blueviolet": [138, 43, 226], "brown": [165, 42, 42], "burlywood": [222, 184, 135], "cadetblue": [95, 158, 160], "chartreuse": [127, 255, 0], "chocolate": [210, 105, 30], "coral": [255, 127, 80], "cornflowerblue": [100, 149, 237], "cornsilk": [255, 248, 220], "crimson": [220, 20, 60], "cyan": [0, 255, 255], "darkblue": [0, 0, 139], "darkcyan": [0, 139, 139], "darkgoldenrod": [184, 134, 11], "darkgray": [169, 169, 169], "darkgreen": [0, 100, 0], "darkgrey": [169, 169, 169], "darkkhaki": [189, 183, 107], "darkmagenta": [139, 0, 139], "darkolivegreen": [85, 107, 47], "darkorange": [255, 140, 0], "darkorchid": [153, 50, 204], "darkred": [139, 0, 0], "darksalmon": [233, 150, 122], "darkseagreen": [143, 188, 143], "darkslateblue": [72, 61, 139], "darkslategray": [47, 79, 79], "darkslategrey": [47, 79, 79], "darkturquoise": [0, 206, 209], "darkviolet": [148, 0, 211], "deeppink": [255, 20, 147], "deepskyblue": [0, 191, 255], "dimgray": [105, 105, 105], "dimgrey": [105, 105, 105], "dodgerblue": [30, 144, 255], "firebrick": [178, 34, 34], "floralwhite": [255, 250, 240], "forestgreen": [34, 139, 34], "fuchsia": [255, 0, 255], "gainsboro": [220, 220, 220], "ghostwhite": [248, 248, 255], "gold": [255, 215, 0], "goldenrod": [218, 165, 32], "gray": [128, 128, 128], "green": [0, 128, 0], "greenyellow": [173, 255, 47], "grey": [128, 128, 128], "honeydew": [240, 255, 240], "hotpink": [255, 105, 180], "indianred": [205, 92, 92], "indigo": [75, 0, 130], "ivory": [255, 255, 240], "khaki": [240, 230, 140], "lavender": [230, 230, 250], "lavenderblush": [255, 240, 245], "lawngreen": [124, 252, 0], "lemonchiffon": [255, 250, 205], "lightblue": [173, 216, 230], "lightcoral": [240, 128, 128], "lightcyan": [224, 255, 255], "lightgoldenrodyellow": [250, 250, 210], "lightgray": [211, 211, 211], "lightgreen": [144, 238, 144], "lightgrey": [211, 211, 211], "lightpink": [255, 182, 193], "lightsalmon": [255, 160, 122], "lightseagreen": [32, 178, 170], "lightskyblue": [135, 206, 250], "lightslategray": [119, 136, 153], "lightslategrey": [119, 136, 153], "lightsteelblue": [176, 196, 222], "lightyellow": [255, 255, 224], "lime": [0, 255, 0], "limegreen": [50, 205, 50], "linen": [250, 240, 230], "magenta": [255, 0, 255], "maroon": [128, 0, 0], "mediumaquamarine": [102, 205, 170], "mediumblue": [0, 0, 205], "mediumorchid": [186, 85, 211], "mediumpurple": [147, 112, 219], "mediumseagreen": [60, 179, 113], "mediumslateblue": [123, 104, 238], "mediumspringgreen": [0, 250, 154], "mediumturquoise": [72, 209, 204], "mediumvioletred": [199, 21, 133], "midnightblue": [25, 25, 112], "mintcream": [245, 255, 250], "mistyrose": [255, 228, 225], "moccasin": [255, 228, 181], "navajowhite": [255, 222, 173], "navy": [0, 0, 128], "oldlace": [253, 245, 230], "olive": [128, 128, 0], "olivedrab": [107, 142, 35], "orange": [255, 165, 0], "orangered": [255, 69, 0], "orchid": [218, 112, 214], "palegoldenrod": [238, 232, 170], "palegreen": [152, 251, 152], "paleturquoise": [175, 238, 238], "palevioletred": [219, 112, 147], "papayawhip": [255, 239, 213], "peachpuff": [255, 218, 185], "peru": [205, 133, 63], "pink": [255, 192, 203], "plum": [221, 160, 221], "powderblue": [176, 224, 230], "purple": [128, 0, 128], "rebeccapurple": [102, 51, 153], "red": [255, 0, 0], "rosybrown": [188, 143, 143], "royalblue": [65, 105, 225], "saddlebrown": [139, 69, 19], "salmon": [250, 128, 114], "sandybrown": [244, 164, 96], "seagreen": [46, 139, 87], "seashell": [255, 245, 238], "sienna": [160, 82, 45], "silver": [192, 192, 192], "skyblue": [135, 206, 235], "slateblue": [106, 90, 205], "slategray": [112, 128, 144], "slategrey": [112, 128, 144], "snow": [255, 250, 250], "springgreen": [0, 255, 127], "steelblue": [70, 130, 180], "tan": [210, 180, 140], "teal": [0, 128, 128], "thistle": [216, 191, 216], "tomato": [255, 99, 71], "turquoise": [64, 224, 208], "violet": [238, 130, 238], "wheat": [245, 222, 179], "white": [255, 255, 255], "whitesmoke": [245, 245, 245], "yellow": [255, 255, 0], "yellowgreen": [154, 205, 50] }; } }); // ../../node_modules/.pnpm/is-arrayish@0.3.2/node_modules/is-arrayish/index.js var require_is_arrayish = __commonJS({ "../../node_modules/.pnpm/is-arrayish@0.3.2/node_modules/is-arrayish/index.js"(exports, module2) { module2.exports = function isArrayish(obj) { if (!obj || typeof obj === "string") { return false; } return obj instanceof Array || Array.isArray(obj) || obj.length >= 0 && (obj.splice instanceof Function || Object.getOwnPropertyDescriptor(obj, obj.length - 1) && obj.constructor.name !== "String"); }; } }); // ../../node_modules/.pnpm/simple-swizzle@0.2.2/node_modules/simple-swizzle/index.js var require_simple_swizzle = __commonJS({ "../../node_modules/.pnpm/simple-swizzle@0.2.2/node_modules/simple-swizzle/index.js"(exports, module2) { "use strict"; var isArrayish = require_is_arrayish(); var concat = Array.prototype.concat; var slice = Array.prototype.slice; var swizzle = module2.exports = function swizzle2(args) { var results = []; for (var i2 = 0, len = args.length; i2 < len; i2++) { var arg = args[i2]; if (isArrayish(arg)) { results = concat.call(results, slice.call(arg)); } else { results.push(arg); } } return results; }; swizzle.wrap = function(fn) { return function() { return fn(swizzle(arguments)); }; }; } }); // ../../node_modules/.pnpm/color-string@1.9.1/node_modules/color-string/index.js var require_color_string = __commonJS({ "../../node_modules/.pnpm/color-string@1.9.1/node_modules/color-string/index.js"(exports, module2) { var colorNames = require_color_name(); var swizzle = require_simple_swizzle(); var hasOwnProperty = Object.hasOwnProperty; var reverseNames = /* @__PURE__ */ Object.create(null); for (name in colorNames) { if (hasOwnProperty.call(colorNames, name)) { reverseNames[colorNames[name]] = name; } } var name; var cs = module2.exports = { to: {}, get: {} }; cs.get = function(string) { var prefix = string.substring(0, 3).toLowerCase(); var val; var model; switch (prefix) { case "hsl": val = cs.get.hsl(string); model = "hsl"; break; case "hwb": val = cs.get.hwb(string); model = "hwb"; break; default: val = cs.get.rgb(string); model = "rgb"; break; } if (!val) { return null; } return { model, value: val }; }; cs.get.rgb = function(string) { if (!string) { return null; } var abbr = /^#([a-f0-9]{3,4})$/i; var hex = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i; var rgba = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/; var per = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/; var keyword = /^(\w+)$/; var rgb = [0, 0, 0, 1]; var match; var i2; var hexAlpha; if (match = string.match(hex)) { hexAlpha = match[2]; match = match[1]; for (i2 = 0; i2 < 3; i2++) { var i22 = i2 * 2; rgb[i2] = parseInt(match.slice(i22, i22 + 2), 16); } if (hexAlpha) { rgb[3] = parseInt(hexAlpha, 16) / 255; } } else if (match = string.match(abbr)) { match = match[1]; hexAlpha = match[3]; for (i2 = 0; i2 < 3; i2++) { rgb[i2] = parseInt(match[i2] + match[i2], 16); } if (hexAlpha) { rgb[3] = parseInt(hexAlpha + hexAlpha, 16) / 255; } } else if (match = string.match(rgba)) { for (i2 = 0; i2 < 3; i2++) { rgb[i2] = parseInt(match[i2 + 1], 0); } if (match[4]) { if (match[5]) { rgb[3] = parseFloat(match[4]) * 0.01; } else { rgb[3] = parseFloat(match[4]); } } } else if (match = string.match(per)) { for (i2 = 0; i2 < 3; i2++) { rgb[i2] = Math.round(parseFloat(match[i2 + 1]) * 2.55); } if (match[4]) { if (match[5]) { rgb[3] = parseFloat(match[4]) * 0.01; } else { rgb[3] = parseFloat(match[4]); } } } else if (match = string.match(keyword)) { if (match[1] === "transparent") { return [0, 0, 0, 0]; } if (!hasOwnProperty.call(colorNames, match[1])) { return null; } rgb = colorNames[match[1]]; rgb[3] = 1; return rgb; } else { return null; } for (i2 = 0; i2 < 3; i2++) { rgb[i2] = clamp(rgb[i2], 0, 255); } rgb[3] = clamp(rgb[3], 0, 1); return rgb; }; cs.get.hsl = function(string) { if (!string) { return null; } var hsl = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/; var match = string.match(hsl); if (match) { var alpha = parseFloat(match[4]); var h3 = (parseFloat(match[1]) % 360 + 360) % 360; var s2 = clamp(parseFloat(match[2]), 0, 100); var l = clamp(parseFloat(match[3]), 0, 100); var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1); return [h3, s2, l, a]; } return null; }; cs.get.hwb = function(string) { if (!string) { return null; } var hwb = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/; var match = string.match(hwb); if (match) { var alpha = parseFloat(match[4]); var h3 = (parseFloat(match[1]) % 360 + 360) % 360; var w = clamp(parseFloat(match[2]), 0, 100); var b = clamp(parseFloat(match[3]), 0, 100); var a = clamp(isNaN(alpha) ? 1 : alpha, 0, 1); return [h3, w, b, a]; } return null; }; cs.to.hex = function() { var rgba = swizzle(arguments); return "#" + hexDouble(rgba[0]) + hexDouble(rgba[1]) + hexDouble(rgba[2]) + (rgba[3] < 1 ? hexDouble(Math.round(rgba[3] * 255)) : ""); }; cs.to.rgb = function() { var rgba = swizzle(arguments); return rgba.length < 4 || rgba[3] === 1 ? "rgb(" + Math.round(rgba[0]) + ", " + Math.round(rgba[1]) + ", " + Math.round(rgba[2]) + ")" : "rgba(" + Math.round(rgba[0]) + ", " + Math.round(rgba[1]) + ", " + Math.round(rgba[2]) + ", " + rgba[3] + ")"; }; cs.to.rgb.percent = function() { var rgba = swizzle(arguments); var r3 = Math.round(rgba[0] / 255 * 100); var g = Math.round(rgba[1] / 255 * 100); var b = Math.round(rgba[2] / 255 * 100); return rgba.length < 4 || rgba[3] === 1 ? "rgb(" + r3 + "%, " + g + "%, " + b + "%)" : "rgba(" + r3 + "%, " + g + "%, " + b + "%, " + rgba[3] + ")"; }; cs.to.hsl = function() { var hsla = swizzle(arguments); return hsla.length < 4 || hsla[3] === 1 ? "hsl(" + hsla[0] + ", " + hsla[1] + "%, " + hsla[2] + "%)" : "hsla(" + hsla[0] + ", " + hsla[1] + "%, " + hsla[2] + "%, " + hsla[3] + ")"; }; cs.to.hwb = function() { var hwba = swizzle(arguments); var a = ""; if (hwba.length >= 4 && hwba[3] !== 1) { a = ", " + hwba[3]; } return "hwb(" + hwba[0] + ", " + hwba[1] + "%, " + hwba[2] + "%" + a + ")"; }; cs.to.keyword = function(rgb) { return reverseNames[rgb.slice(0, 3)]; }; function clamp(num, min, max) { return Math.min(Math.max(min, num), max); } function hexDouble(num) { var str = Math.round(num).toString(16).toUpperCase(); return str.length < 2 ? "0" + str : str; } } }); // ../../node_modules/.pnpm/color-name@1.1.3/node_modules/color-name/index.js var require_color_name2 = __commonJS({ "../../node_modules/.pnpm/color-name@1.1.3/node_modules/color-name/index.js"(exports, module2) { "use strict"; module2.exports = { "aliceblue": [240, 248, 255], "antiquewhite": [250, 235, 215], "aqua": [0, 255, 255], "aquamarine": [127, 255, 212], "azure": [240, 255, 255], "beige": [245, 245, 220], "bisque": [255, 228, 196], "black": [0, 0, 0], "blanchedalmond": [255, 235, 205], "blue": [0, 0, 255], "blueviolet": [138, 43, 226], "brown": [165, 42, 42], "burlywood": [222, 184, 135], "cadetblue": [95, 158, 160], "chartreuse": [127, 255, 0], "chocolate": [210, 105, 30], "coral": [255, 127, 80], "cornflowerblue": [100, 149, 237], "cornsilk": [255, 248, 220], "crimson": [220, 20, 60], "cyan": [0, 255, 255], "darkblue": [0, 0, 139], "darkcyan": [0, 139, 139], "darkgoldenrod": [184, 134, 11], "darkgray": [169, 169, 169], "darkgreen": [0, 100, 0], "darkgrey": [169, 169, 169], "darkkhaki": [189, 183, 107], "darkmagenta": [139, 0, 139], "darkolivegreen": [85, 107, 47], "darkorange": [255, 140, 0], "darkorchid": [153, 50, 204], "darkred": [139, 0, 0], "darksalmon": [233, 150, 122], "darkseagreen": [143, 188, 143], "darkslateblue": [72, 61, 139], "darkslategray": [47, 79, 79], "darkslategrey": [47, 79, 79], "darkturquoise": [0, 206, 209], "darkviolet": [148, 0, 211], "deeppink": [255, 20, 147], "deepskyblue": [0, 191, 255], "dimgray": [105, 105, 105], "dimgrey": [105, 105, 105], "dodgerblue": [30, 144, 255], "firebrick": [178, 34, 34], "floralwhite": [255, 250, 240], "forestgreen": [34, 139, 34], "fuchsia": [255, 0, 255], "gainsboro": [220, 220, 220], "ghostwhite": [248, 248, 255], "gold": [255, 215, 0], "goldenrod": [218, 165, 32], "gray": [128, 128, 128], "green": [0, 128, 0], "greenyellow": [173, 255, 47], "grey": [128, 128, 128], "honeydew": [240, 255, 240], "hotpink": [255, 105, 180], "indianred": [205, 92, 92], "indigo": [75, 0, 130], "ivory": [255, 255, 240], "khaki": [240, 230, 140], "lavender": [230, 230, 250], "lavenderblush": [255, 240, 245], "lawngreen": [124, 252, 0], "lemonchiffon": [255, 250, 205], "lightblue": [173, 216, 230], "lightcoral": [240, 128, 128], "lightcyan": [224, 255, 255], "lightgoldenrodyellow": [250, 250, 210], "lightgray": [211, 211, 211], "lightgreen": [144, 238, 144], "lightgrey": [211, 211, 211], "lightpink": [255, 182, 193], "lightsalmon": [255, 160, 122], "lightseagreen": [32, 178, 170], "lightskyblue": [135, 206, 250], "lightslategray": [119, 136, 153], "lightslategrey": [119, 136, 153], "lightsteelblue": [176, 196, 222], "lightyellow": [255, 255, 224], "lime": [0, 255, 0], "limegreen": [50, 205, 50], "linen": [250, 240, 230], "magenta": [255, 0, 255], "maroon": [128, 0, 0], "mediumaquamarine": [102, 205, 170], "mediumblue": [0, 0, 205], "mediumorchid": [186, 85, 211], "mediumpurple": [147, 112, 219], "mediumseagreen": [60, 179, 113], "mediumslateblue": [123, 104, 238], "mediumspringgreen": [0, 250, 154], "mediumturquoise": [72, 209, 204], "mediumvioletred": [199, 21, 133], "midnightblue": [25, 25, 112], "mintcream": [245, 255, 250], "mistyrose": [255, 228, 225], "moccasin": [255, 228, 181], "navajowhite": [255, 222, 173], "navy": [0, 0, 128], "oldlace": [253, 245, 230], "olive": [128, 128, 0], "olivedrab": [107, 142, 35], "orange": [255, 165, 0], "orangered": [255, 69, 0], "orchid": [218, 112, 214], "palegoldenrod": [238, 232, 170], "palegreen": [152, 251, 152], "paleturquoise": [175, 238, 238], "palevioletred": [219, 112, 147], "papayawhip": [255, 239, 213], "peachpuff": [255, 218, 185], "peru": [205, 133, 63], "pink": [255, 192, 203], "plum": [221, 160, 221], "powderblue": [176, 224, 230], "purple": [128, 0, 128], "rebeccapurple": [102, 51, 153], "red": [255, 0, 0], "rosybrown": [188, 143, 143], "royalblue": [65, 105, 225], "saddlebrown": [139, 69, 19], "salmon": [250, 128, 114], "sandybrown": [244, 164, 96], "seagreen": [46, 139, 87], "seashell": [255, 245, 238], "sienna": [160, 82, 45], "silver": [192, 192, 192], "skyblue": [135, 206, 235], "slateblue": [106, 90, 205], "slategray": [112, 128, 144], "slategrey": [112, 128, 144], "snow": [255, 250, 250], "springgreen": [0, 255, 127], "steelblue": [70, 130, 180], "tan": [210, 180, 140], "teal": [0, 128, 128], "thistle": [216, 191, 216], "tomato": [255, 99, 71], "turquoise": [64, 224, 208], "violet": [238, 130, 238], "wheat": [245, 222, 179], "white": [255, 255, 255], "whitesmoke": [245, 245, 245], "yellow": [255, 255, 0], "yellowgreen": [154, 205, 50] }; } }); // ../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/conversions.js var require_conversions = __commonJS({ "../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/conversions.js"(exports, module2) { var cssKeywords = require_color_name2(); var reverseKeywords = {}; for (key in cssKeywords) { if (cssKeywords.hasOwnProperty(key)) { reverseKeywords[cssKeywords[key]] = key; } } var key; var convert = module2.exports = { rgb: { channels: 3, labels: "rgb" }, hsl: { channels: 3, labels: "hsl" }, hsv: { channels: 3, labels: "hsv" }, hwb: { channels: 3, labels: "hwb" }, cmyk: { channels: 4, labels: "cmyk" }, xyz: { channels: 3, labels: "xyz" }, lab: { channels: 3, labels: "lab" }, lch: { channels: 3, labels: "lch" }, hex: { channels: 1, labels: ["hex"] }, keyword: { channels: 1, labels: ["keyword"] }, ansi16: { channels: 1, labels: ["ansi16"] }, ansi256: { channels: 1, labels: ["ansi256"] }, hcg: { channels: 3, labels: ["h", "c", "g"] }, apple: { channels: 3, labels: ["r16", "g16", "b16"] }, gray: { channels: 1, labels: ["gray"] } }; for (model in convert) { if (convert.hasOwnProperty(model)) { if (!("channels" in convert[model])) { throw new Error("missing channels property: " + model); } if (!("labels" in convert[model])) { throw new Error("missing channel labels property: " + model); } if (convert[model].labels.length !== convert[model].channels) { throw new Error("channel and label counts mismatch: " + model); } channels = convert[model].channels; labels = convert[model].labels; delete convert[model].channels; delete convert[model].labels; Object.defineProperty(convert[model], "channels", { value: channels }); Object.defineProperty(convert[model], "labels", { value: labels }); } } var channels; var labels; var model; convert.rgb.hsl = function(rgb) { var r3 = rgb[0] / 255; var g = rgb[1] / 255; var b = rgb[2] / 255; var min = Math.min(r3, g, b); var max = Math.max(r3, g, b); var delta = max - min; var h3; var s2; var l; if (max === min) { h3 = 0; } else if (r3 === max) { h3 = (g - b) / delta; } else if (g === max) { h3 = 2 + (b - r3) / delta; } else if (b === max) { h3 = 4 + (r3 - g) / delta; } h3 = Math.min(h3 * 60, 360); if (h3 < 0) { h3 += 360; } l = (min + max) / 2; if (max === min) { s2 = 0; } else if (l <= 0.5) { s2 = delta / (max + min); } else { s2 = delta / (2 - max - min); } return [h3, s2 * 100, l * 100]; }; convert.rgb.hsv = function(rgb) { var rdif; var gdif; var bdif; var h3; var s2; var r3 = rgb[0] / 255; var g = rgb[1] / 255; var b = rgb[2] / 255; var v = Math.max(r3, g, b); var diff = v - Math.min(r3, g, b); var diffc = function(c2) { return (v - c2) / 6 / diff + 1 / 2; }; if (diff === 0) { h3 = s2 = 0; } else { s2 = diff / v; rdif = diffc(r3); gdif = diffc(g); bdif = diffc(b); if (r3 === v) { h3 = bdif - gdif; } else if (g === v) { h3 = 1 / 3 + rdif - bdif; } else if (b === v) { h3 = 2 / 3 + gdif - rdif; } if (h3 < 0) { h3 += 1; } else if (h3 > 1) { h3 -= 1; } } return [ h3 * 360, s2 * 100, v * 100 ]; }; convert.rgb.hwb = function(rgb) { var r3 = rgb[0]; var g = rgb[1]; var b = rgb[2]; var h3 = convert.rgb.hsl(rgb)[0]; var w = 1 / 255 * Math.min(r3, Math.min(g, b)); b = 1 - 1 / 255 * Math.max(r3, Math.max(g, b)); return [h3, w * 100, b * 100]; }; convert.rgb.cmyk = function(rgb) { var r3 = rgb[0] / 255; var g = rgb[1] / 255; var b = rgb[2] / 255; var c2; var m2; var y; var k; k = Math.min(1 - r3, 1 - g, 1 - b); c2 = (1 - r3 - k) / (1 - k) || 0; m2 = (1 - g - k) / (1 - k) || 0; y = (1 - b - k) / (1 - k) || 0; return [c2 * 100, m2 * 100, y * 100, k * 100]; }; function comparativeDistance(x2, y) { return Math.pow(x2[0] - y[0], 2) + Math.pow(x2[1] - y[1], 2) + Math.pow(x2[2] - y[2], 2); } convert.rgb.keyword = function(rgb) { var reversed = reverseKeywords[rgb]; if (reversed) { return reversed; } var currentClosestDistance = Infinity; var currentClosestKeyword; for (var keyword in cssKeywords) { if (cssKeywords.hasOwnProperty(keyword)) { var value = cssKeywords[keyword]; var distance = comparativeDistance(rgb, value); if (distance < currentClosestDistance) { currentClosestDistance = distance; currentClosestKeyword = keyword; } } } return currentClosestKeyword; }; convert.keyword.rgb = function(keyword) { return cssKeywords[keyword]; }; convert.rgb.xyz = function(rgb) { var r3 = rgb[0] / 255; var g = rgb[1] / 255; var b = rgb[2] / 255; r3 = r3 > 0.04045 ? Math.pow((r3 + 0.055) / 1.055, 2.4) : r3 / 12.92; g = g > 0.04045 ? Math.pow((g + 0.055) / 1.055, 2.4) : g / 12.92; b = b > 0.04045 ? Math.pow((b + 0.055) / 1.055, 2.4) : b / 12.92; var x2 = r3 * 0.4124 + g * 0.3576 + b * 0.1805; var y = r3 * 0.2126 + g * 0.7152 + b * 0.0722; var z = r3 * 0.0193 + g * 0.1192 + b * 0.9505; return [x2 * 100, y * 100, z * 100]; }; convert.rgb.lab = function(rgb) { var xyz = convert.rgb.xyz(rgb); var x2 = xyz[0]; var y = xyz[1]; var z = xyz[2]; var l; var a; var b; x2 /= 95.047; y /= 100; z /= 108.883; x2 = x2 > 8856e-6 ? Math.pow(x2, 1 / 3) : 7.787 * x2 + 16 / 116; y = y > 8856e-6 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116; z = z > 8856e-6 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116; l = 116 * y - 16; a = 500 * (x2 - y); b = 200 * (y - z); return [l, a, b]; }; convert.hsl.rgb = function(hsl) { var h3 = hsl[0] / 360; var s2 = hsl[1] / 100; var l = hsl[2] / 100; var t1; var t2; var t3; var rgb; var val; if (s2 === 0) { val = l * 255; return [val, val, val]; } if (l < 0.5) { t2 = l * (1 + s2); } else { t2 = l + s2 - l * s2; } t1 = 2 * l - t2; rgb = [0, 0, 0]; for (var i2 = 0; i2 < 3; i2++) { t3 = h3 + 1 / 3 * -(i2 - 1); if (t3 < 0) { t3++; } if (t3 > 1) { t3--; } if (6 * t3 < 1) { val = t1 + (t2 - t1) * 6 * t3; } else if (2 * t3 < 1) { val = t2; } else if (3 * t3 < 2) { val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; } else { val = t1; } rgb[i2] = val * 255; } return rgb; }; convert.hsl.hsv = function(hsl) { var h3 = hsl[0]; var s2 = hsl[1] / 100; var l = hsl[2] / 100; var smin = s2; var lmin = Math.max(l, 0.01); var sv; var v; l *= 2; s2 *= l <= 1 ? l : 2 - l; smin *= lmin <= 1 ? lmin : 2 - lmin; v = (l + s2) / 2; sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s2 / (l + s2); return [h3, sv * 100, v * 100]; }; convert.hsv.rgb = function(hsv) { var h3 = hsv[0] / 60; var s2 = hsv[1] / 100; var v = hsv[2] / 100; var hi = Math.floor(h3) % 6; var f4 = h3 - Math.floor(h3); var p = 255 * v * (1 - s2); var q = 255 * v * (1 - s2 * f4); var t2 = 255 * v * (1 - s2 * (1 - f4)); v *= 255; switch (hi) { case 0: return [v, t2, p]; case 1: return [q, v, p]; case 2: return [p, v, t2]; case 3: return [p, q, v]; case 4: return [t2, p, v]; case 5: return [v, p, q]; } }; convert.hsv.hsl = function(hsv) { var h3 = hsv[0]; var s2 = hsv[1] / 100; var v = hsv[2] / 100; var vmin = Math.max(v, 0.01); var lmin; var sl; var l; l = (2 - s2) * v; lmin = (2 - s2) * vmin; sl = s2 * vmin; sl /= lmin <= 1 ? lmin : 2 - lmin; sl = sl || 0; l /= 2; return [h3, sl * 100, l * 100]; }; convert.hwb.rgb = function(hwb) { var h3 = hwb[0] / 360; var wh = hwb[1] / 100; var bl = hwb[2] / 100; var ratio = wh + bl; var i2; var v; var f4; var n; if (ratio > 1) { wh /= ratio; bl /= ratio; } i2 = Math.floor(6 * h3); v = 1 - bl; f4 = 6 * h3 - i2; if ((i2 & 1) !== 0) { f4 = 1 - f4; } n = wh + f4 * (v - wh); var r3; var g; var b; switch (i2) { default: case 6: case 0: r3 = v; g = n; b = wh; break; case 1: r3 = n; g = v; b = wh; break; case 2: r3 = wh; g = v; b = n; break; case 3: r3 = wh; g = n; b = v; break; case 4: r3 = n; g = wh; b = v; break; case 5: r3 = v; g = wh; b = n; break; } return [r3 * 255, g * 255, b * 255]; }; convert.cmyk.rgb = function(cmyk) { var c2 = cmyk[0] / 100; var m2 = cmyk[1] / 100; var y = cmyk[2] / 100; var k = cmyk[3] / 100; var r3; var g; var b; r3 = 1 - Math.min(1, c2 * (1 - k) + k); g = 1 - Math.min(1, m2 * (1 - k) + k); b = 1 - Math.min(1, y * (1 - k) + k); return [r3 * 255, g * 255, b * 255]; }; convert.xyz.rgb = function(xyz) { var x2 = xyz[0] / 100; var y = xyz[1] / 100; var z = xyz[2] / 100; var r3; var g; var b; r3 = x2 * 3.2406 + y * -1.5372 + z * -0.4986; g = x2 * -0.9689 + y * 1.8758 + z * 0.0415; b = x2 * 0.0557 + y * -0.204 + z * 1.057; r3 = r3 > 31308e-7 ? 1.055 * Math.pow(r3, 1 / 2.4) - 0.055 : r3 * 12.92; g = g > 31308e-7 ? 1.055 * Math.pow(g, 1 / 2.4) - 0.055 : g * 12.92; b = b > 31308e-7 ? 1.055 * Math.pow(b, 1 / 2.4) - 0.055 : b * 12.92; r3 = Math.min(Math.max(0, r3), 1); g = Math.min(Math.max(0, g), 1); b = Math.min(Math.max(0, b), 1); return [r3 * 255, g * 255, b * 255]; }; convert.xyz.lab = function(xyz) { var x2 = xyz[0]; var y = xyz[1]; var z = xyz[2]; var l; var a; var b; x2 /= 95.047; y /= 100; z /= 108.883; x2 = x2 > 8856e-6 ? Math.pow(x2, 1 / 3) : 7.787 * x2 + 16 / 116; y = y > 8856e-6 ? Math.pow(y, 1 / 3) : 7.787 * y + 16 / 116; z = z > 8856e-6 ? Math.pow(z, 1 / 3) : 7.787 * z + 16 / 116; l = 116 * y - 16; a = 500 * (x2 - y); b = 200 * (y - z); return [l, a, b]; }; convert.lab.xyz = function(lab) { var l = lab[0]; var a = lab[1]; var b = lab[2]; var x2; var y; var z; y = (l + 16) / 116; x2 = a / 500 + y; z = y - b / 200; var y2 = Math.pow(y, 3); var x22 = Math.pow(x2, 3); var z2 = Math.pow(z, 3); y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787; x2 = x22 > 8856e-6 ? x22 : (x2 - 16 / 116) / 7.787; z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787; x2 *= 95.047; y *= 100; z *= 108.883; return [x2, y, z]; }; convert.lab.lch = function(lab) { var l = lab[0]; var a = lab[1]; var b = lab[2]; var hr; var h3; var c2; hr = Math.atan2(b, a); h3 = hr * 360 / 2 / Math.PI; if (h3 < 0) { h3 += 360; } c2 = Math.sqrt(a * a + b * b); return [l, c2, h3]; }; convert.lch.lab = function(lch) { var l = lch[0]; var c2 = lch[1]; var h3 = lch[2]; var a; var b; var hr; hr = h3 / 360 * 2 * Math.PI; a = c2 * Math.cos(hr); b = c2 * Math.sin(hr); return [l, a, b]; }; convert.rgb.ansi16 = function(args) { var r3 = args[0]; var g = args[1]; var b = args[2]; var value = 1 in arguments ? arguments[1] : convert.rgb.hsv(args)[2]; value = Math.round(value / 50); if (value === 0) { return 30; } var ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r3 / 255)); if (value === 2) { ansi += 60; } return ansi; }; convert.hsv.ansi16 = function(args) { return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]); }; convert.rgb.ansi256 = function(args) { var r3 = args[0]; var g = args[1]; var b = args[2]; if (r3 === g && g === b) { if (r3 < 8) { return 16; } if (r3 > 248) { return 231; } return Math.round((r3 - 8) / 247 * 24) + 232; } var ansi = 16 + 36 * Math.round(r3 / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5); return ansi; }; convert.ansi16.rgb = function(args) { var color = args % 10; if (color === 0 || color === 7) { if (args > 50) { color += 3.5; } color = color / 10.5 * 255; return [color, color, color]; } var mult = (~~(args > 50) + 1) * 0.5; var r3 = (color & 1) * mult * 255; var g = (color >> 1 & 1) * mult * 255; var b = (color >> 2 & 1) * mult * 255; return [r3, g, b]; }; convert.ansi256.rgb = function(args) { if (args >= 232) { var c2 = (args - 232) * 10 + 8; return [c2, c2, c2]; } args -= 16; var rem; var r3 = Math.floor(args / 36) / 5 * 255; var g = Math.floor((rem = args % 36) / 6) / 5 * 255; var b = rem % 6 / 5 * 255; return [r3, g, b]; }; convert.rgb.hex = function(args) { var integer = ((Math.round(args[0]) & 255) << 16) + ((Math.round(args[1]) & 255) << 8) + (Math.round(args[2]) & 255); var string = integer.toString(16).toUpperCase(); return "000000".substring(string.length) + string; }; convert.hex.rgb = function(args) { var match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); if (!match) { return [0, 0, 0]; } var colorString = match[0]; if (match[0].length === 3) { colorString = colorString.split("").map(function(char) { return char + char; }).join(""); } var integer = parseInt(colorString, 16); var r3 = integer >> 16 & 255; var g = integer >> 8 & 255; var b = integer & 255; return [r3, g, b]; }; convert.rgb.hcg = function(rgb) { var r3 = rgb[0] / 255; var g = rgb[1] / 255; var b = rgb[2] / 255; var max = Math.max(Math.max(r3, g), b); var min = Math.min(Math.min(r3, g), b); var chroma = max - min; var grayscale; var hue; if (chroma < 1) { grayscale = min / (1 - chroma); } else { grayscale = 0; } if (chroma <= 0) { hue = 0; } else if (max === r3) { hue = (g - b) / chroma % 6; } else if (max === g) { hue = 2 + (b - r3) / chroma; } else { hue = 4 + (r3 - g) / chroma + 4; } hue /= 6; hue %= 1; return [hue * 360, chroma * 100, grayscale * 100]; }; convert.hsl.hcg = function(hsl) { var s2 = hsl[1] / 100; var l = hsl[2] / 100; var c2 = 1; var f4 = 0; if (l < 0.5) { c2 = 2 * s2 * l; } else { c2 = 2 * s2 * (1 - l); } if (c2 < 1) { f4 = (l - 0.5 * c2) / (1 - c2); } return [hsl[0], c2 * 100, f4 * 100]; }; convert.hsv.hcg = function(hsv) { var s2 = hsv[1] / 100; var v = hsv[2] / 100; var c2 = s2 * v; var f4 = 0; if (c2 < 1) { f4 = (v - c2) / (1 - c2); } return [hsv[0], c2 * 100, f4 * 100]; }; convert.hcg.rgb = function(hcg) { var h3 = hcg[0] / 360; var c2 = hcg[1] / 100; var g = hcg[2] / 100; if (c2 === 0) { return [g * 255, g * 255, g * 255]; } var pure = [0, 0, 0]; var hi = h3 % 1 * 6; var v = hi % 1; var w = 1 - v; var mg = 0; switch (Math.floor(hi)) { case 0: pure[0] = 1; pure[1] = v; pure[2] = 0; break; case 1: pure[0] = w; pure[1] = 1; pure[2] = 0; break; case 2: pure[0] = 0; pure[1] = 1; pure[2] = v; break; case 3: pure[0] = 0; pure[1] = w; pure[2] = 1; break; case 4: pure[0] = v; pure[1] = 0; pure[2] = 1; break; default: pure[0] = 1; pure[1] = 0; pure[2] = w; } mg = (1 - c2) * g; return [ (c2 * pure[0] + mg) * 255, (c2 * pure[1] + mg) * 255, (c2 * pure[2] + mg) * 255 ]; }; convert.hcg.hsv = function(hcg) { var c2 = hcg[1] / 100; var g = hcg[2] / 100; var v = c2 + g * (1 - c2); var f4 = 0; if (v > 0) { f4 = c2 / v; } return [hcg[0], f4 * 100, v * 100]; }; convert.hcg.hsl = function(hcg) { var c2 = hcg[1] / 100; var g = hcg[2] / 100; var l = g * (1 - c2) + 0.5 * c2; var s2 = 0; if (l > 0 && l < 0.5) { s2 = c2 / (2 * l); } else if (l >= 0.5 && l < 1) { s2 = c2 / (2 * (1 - l)); } return [hcg[0], s2 * 100, l * 100]; }; convert.hcg.hwb = function(hcg) { var c2 = hcg[1] / 100; var g = hcg[2] / 100; var v = c2 + g * (1 - c2); return [hcg[0], (v - c2) * 100, (1 - v) * 100]; }; convert.hwb.hcg = function(hwb) { var w = hwb[1] / 100; var b = hwb[2] / 100; var v = 1 - b; var c2 = v - w; var g = 0; if (c2 < 1) { g = (v - c2) / (1 - c2); } return [hwb[0], c2 * 100, g * 100]; }; convert.apple.rgb = function(apple) { return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255]; }; convert.rgb.apple = function(rgb) { return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535]; }; convert.gray.rgb = function(args) { return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255]; }; convert.gray.hsl = convert.gray.hsv = function(args) { return [0, 0, args[0]]; }; convert.gray.hwb = function(gray) { return [0, 100, gray[0]]; }; convert.gray.cmyk = function(gray) { return [0, 0, 0, gray[0]]; }; convert.gray.lab = function(gray) { return [gray[0], 0, 0]; }; convert.gray.hex = function(gray) { var val = Math.round(gray[0] / 100 * 255) & 255; var integer = (val << 16) + (val << 8) + val; var string = integer.toString(16).toUpperCase(); return "000000".substring(string.length) + string; }; convert.rgb.gray = function(rgb) { var val = (rgb[0] + rgb[1] + rgb[2]) / 3; return [val / 255 * 100]; }; } }); // ../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/route.js var require_route = __commonJS({ "../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/route.js"(exports, module2) { var conversions = require_conversions(); function buildGraph() { var graph = {}; var models = Object.keys(conversions); for (var len = models.length, i2 = 0; i2 < len; i2++) { graph[models[i2]] = { distance: -1, parent: null }; } return graph; } function deriveBFS(fromModel) { var graph = buildGraph(); var queue = [fromModel]; graph[fromModel].distance = 0; while (queue.length) { var current = queue.pop(); var adjacents = Object.keys(conversions[current]); for (var len = adjacents.length, i2 = 0; i2 < len; i2++) { var adjacent = adjacents[i2]; var node = graph[adjacent]; if (node.distance === -1) { node.distance = graph[current].distance + 1; node.parent = current; queue.unshift(adjacent); } } } return graph; } function link(from, to) { return function(args) { return to(from(args)); }; } function wrapConversion(toModel, graph) { var path5 = [graph[toModel].parent, toModel]; var fn = conversions[graph[toModel].parent][toModel]; var cur = graph[toModel].parent; while (graph[cur].parent) { path5.unshift(graph[cur].parent); fn = link(conversions[graph[cur].parent][cur], fn); cur = graph[cur].parent; } fn.conversion = path5; return fn; } module2.exports = function(fromModel) { var graph = deriveBFS(fromModel); var conversion = {}; var models = Object.keys(graph); for (var len = models.length, i2 = 0; i2 < len; i2++) { var toModel = models[i2]; var node = graph[toModel]; if (node.parent === null) { continue; } conversion[toModel] = wrapConversion(toModel, graph); } return conversion; }; } }); // ../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/index.js var require_color_convert = __commonJS({ "../../node_modules/.pnpm/color-convert@1.9.3/node_modules/color-convert/index.js"(exports, module2) { var conversions = require_conversions(); var route = require_route(); var convert = {}; var models = Object.keys(conversions); function wrapRaw(fn) { var wrappedFn = function(args) { if (args === void 0 || args === null) { return args; } if (arguments.length > 1) { args = Array.prototype.slice.call(arguments); } return fn(args); }; if ("conversion" in fn) { wrappedFn.conversion = fn.conversion; } return wrappedFn; } function wrapRounded(fn) { var wrappedFn = function(args) { if (args === void 0 || args === null) { return args; } if (arguments.length > 1) { args = Array.prototype.slice.call(arguments); } var result = fn(args); if (typeof result === "object") { for (var len = result.length, i2 = 0; i2 < len; i2++) { result[i2] = Math.round(result[i2]); } } return result; }; if ("conversion" in fn) { wrappedFn.conversion = fn.conversion; } return wrappedFn; } models.forEach(function(fromModel) { convert[fromModel] = {}; Object.defineProperty(convert[fromModel], "channels", { value: conversions[fromModel].channels }); Object.defineProperty(convert[fromModel], "labels", { value: conversions[fromModel].labels }); var routes = route(fromModel); var routeModels = Object.keys(routes); routeModels.forEach(function(toModel) { var fn = routes[toModel]; convert[fromModel][toModel] = wrapRounded(fn); convert[fromModel][toModel].raw = wrapRaw(fn); }); }); module2.exports = convert; } }); // ../../node_modules/.pnpm/color@3.2.1/node_modules/color/index.js var require_color = __commonJS({ "../../node_modules/.pnpm/color@3.2.1/node_modules/color/index.js"(exports, module2) { "use strict"; var colorString = require_color_string(); var convert = require_color_convert(); var _slice = [].slice; var skippedModels = [ "keyword", "gray", "hex" ]; var hashedModelKeys = {}; Object.keys(convert).forEach(function(model) { hashedModelKeys[_slice.call(convert[model].labels).sort().join("")] = model; }); var limiters = {}; function Color(obj, model) { if (!(this instanceof Color)) { return new Color(obj, model); } if (model && model in skippedModels) { model = null; } if (model && !(model in convert)) { throw new Error("Unknown model: " + model); } var i2; var channels; if (obj == null) { this.model = "rgb"; this.color = [0, 0, 0]; this.valpha = 1; } else if (obj instanceof Color) { this.model = obj.model; this.color = obj.color.slice(); this.valpha = obj.valpha; } else if (typeof obj === "string") { var result = colorString.get(obj); if (result === null) { throw new Error("Unable to parse color from string: " + obj); } this.model = result.model; channels = convert[this.model].channels; this.color = result.value.slice(0, channels); this.valpha = typeof result.value[channels] === "number" ? result.value[channels] : 1; } else if (obj.length) { this.model = model || "rgb"; channels = convert[this.model].channels; var newArr = _slice.call(obj, 0, channels); this.color = zeroArray(newArr, channels); this.valpha = typeof obj[channels] === "number" ? obj[channels] : 1; } else if (typeof obj === "number") { obj &= 16777215; this.model = "rgb"; this.color = [ obj >> 16 & 255, obj >> 8 & 255, obj & 255 ]; this.valpha = 1; } else { this.valpha = 1; var keys = Object.keys(obj); if ("alpha" in obj) { keys.splice(keys.indexOf("alpha"), 1); this.valpha = typeof obj.alpha === "number" ? obj.alpha : 0; } var hashedKeys = keys.sort().join(""); if (!(hashedKeys in hashedModelKeys)) { throw new Error("Unable to parse color from object: " + JSON.stringify(obj)); } this.model = hashedModelKeys[hashedKeys]; var labels = convert[this.model].labels; var color = []; for (i2 = 0; i2 < labels.length; i2++) { color.push(obj[labels[i2]]); } this.color = zeroArray(color); } if (limiters[this.model]) { channels = convert[this.model].channels; for (i2 = 0; i2 < channels; i2++) { var limit = limiters[this.model][i2]; if (limit) { this.color[i2] = limit(this.color[i2]); } } } this.valpha = Math.max(0, Math.min(1, this.valpha)); if (Object.freeze) { Object.freeze(this); } } Color.prototype = { toString: function() { return this.string(); }, toJSON: function() { return this[this.model](); }, string: function(places) { var self2 = this.model in colorString.to ? this : this.rgb(); self2 = self2.round(typeof places === "number" ? places : 1); var args = self2.valpha === 1 ? self2.color : self2.color.concat(this.valpha); return colorString.to[self2.model](args); }, percentString: function(places) { var self2 = this.rgb().round(typeof places === "number" ? places : 1); var args = self2.valpha === 1 ? self2.color : self2.color.concat(this.valpha); return colorString.to.rgb.percent(args); }, array: function() { return this.valpha === 1 ? this.color.slice() : this.color.concat(this.valpha); }, object: function() { var result = {}; var channels = convert[this.model].channels; var labels = convert[this.model].labels; for (var i2 = 0; i2 < channels; i2++) { result[labels[i2]] = this.color[i2]; } if (this.valpha !== 1) { result.alpha = this.valpha; } return result; }, unitArray: function() { var rgb = this.rgb().color; rgb[0] /= 255; rgb[1] /= 255; rgb[2] /= 255; if (this.valpha !== 1) { rgb.push(this.valpha); } return rgb; }, unitObject: function() { var rgb = this.rgb().object(); rgb.r /= 255; rgb.g /= 255; rgb.b /= 255; if (this.valpha !== 1) { rgb.alpha = this.valpha; } return rgb; }, round: function(places) { places = Math.max(places || 0, 0); return new Color(this.color.map(roundToPlace(places)).concat(this.valpha), this.model); }, alpha: function(val) { if (arguments.length) { return new Color(this.color.concat(Math.max(0, Math.min(1, val))), this.model); } return this.valpha; }, red: getset("rgb", 0, maxfn(255)), green: getset("rgb", 1, maxfn(255)), blue: getset("rgb", 2, maxfn(255)), hue: getset(["hsl", "hsv", "hsl", "hwb", "hcg"], 0, function(val) { return (val % 360 + 360) % 360; }), saturationl: getset("hsl", 1, maxfn(100)), lightness: getset("hsl", 2, maxfn(100)), saturationv: getset("hsv", 1, maxfn(100)), value: getset("hsv", 2, maxfn(100)), chroma: getset("hcg", 1, maxfn(100)), gray: getset("hcg", 2, maxfn(100)), white: getset("hwb", 1, maxfn(100)), wblack: getset("hwb", 2, maxfn(100)), cyan: getset("cmyk", 0, maxfn(100)), magenta: getset("cmyk", 1, maxfn(100)), yellow: getset("cmyk", 2, maxfn(100)), black: getset("cmyk", 3, maxfn(100)), x: getset("xyz", 0, maxfn(100)), y: getset("xyz", 1, maxfn(100)), z: getset("xyz", 2, maxfn(100)), l: getset("lab", 0, maxfn(100)), a: getset("lab", 1), b: getset("lab", 2), keyword: function(val) { if (arguments.length) { return new Color(val); } return convert[this.model].keyword(this.color); }, hex: function(val) { if (arguments.length) { return new Color(val); } return colorString.to.hex(this.rgb().round().color); }, rgbNumber: function() { var rgb = this.rgb().color; return (rgb[0] & 255) << 16 | (rgb[1] & 255) << 8 | rgb[2] & 255; }, luminosity: function() { var rgb = this.rgb().color; var lum = []; for (var i2 = 0; i2 < rgb.length; i2++) { var chan = rgb[i2] / 255; lum[i2] = chan <= 0.03928 ? chan / 12.92 : Math.pow((chan + 0.055) / 1.055, 2.4); } return 0.2126 * lum[0] + 0.7152 * lum[1] + 0.0722 * lum[2]; }, contrast: function(color2) { var lum1 = this.luminosity(); var lum2 = color2.luminosity(); if (lum1 > lum2) { return (lum1 + 0.05) / (lum2 + 0.05); } return (lum2 + 0.05) / (lum1 + 0.05); }, level: function(color2) { var contrastRatio = this.contrast(color2); if (contrastRatio >= 7.1) { return "AAA"; } return contrastRatio >= 4.5 ? "AA" : ""; }, isDark: function() { var rgb = this.rgb().color; var yiq = (rgb[0] * 299 + rgb[1] * 587 + rgb[2] * 114) / 1e3; return yiq < 128; }, isLight: function() { return !this.isDark(); }, negate: function() { var rgb = this.rgb(); for (var i2 = 0; i2 < 3; i2++) { rgb.color[i2] = 255 - rgb.color[i2]; } return rgb; }, lighten: function(ratio) { var hsl = this.hsl(); hsl.color[2] += hsl.color[2] * ratio; return hsl; }, darken: function(ratio) { var hsl = this.hsl(); hsl.color[2] -= hsl.color[2] * ratio; return hsl; }, saturate: function(ratio) { var hsl = this.hsl(); hsl.color[1] += hsl.color[1] * ratio; return hsl; }, desaturate: function(ratio) { var hsl = this.hsl(); hsl.color[1] -= hsl.color[1] * ratio; return hsl; }, whiten: function(ratio) { var hwb = this.hwb(); hwb.color[1] += hwb.color[1] * ratio; return hwb; }, blacken: function(ratio) { var hwb = this.hwb(); hwb.color[2] += hwb.color[2] * ratio; return hwb; }, grayscale: function() { var rgb = this.rgb().color; var val = rgb[0] * 0.3 + rgb[1] * 0.59 + rgb[2] * 0.11; return Color.rgb(val, val, val); }, fade: function(ratio) { return this.alpha(this.valpha - this.valpha * ratio); }, opaquer: function(ratio) { return this.alpha(this.valpha + this.valpha * ratio); }, rotate: function(degrees) { var hsl = this.hsl(); var hue = hsl.color[0]; hue = (hue + degrees) % 360; hue = hue < 0 ? 360 + hue : hue; hsl.color[0] = hue; return hsl; }, mix: function(mixinColor, weight) { if (!mixinColor || !mixinColor.rgb) { throw new Error('Argument to "mix" was not a Color instance, but rather an instance of ' + typeof mixinColor); } var color1 = mixinColor.rgb(); var color2 = this.rgb(); var p = weight === void 0 ? 0.5 : weight; var w = 2 * p - 1; var a = color1.alpha() - color2.alpha(); var w1 = ((w * a === -1 ? w : (w + a) / (1 + w * a)) + 1) / 2; var w2 = 1 - w1; return Color.rgb( w1 * color1.red() + w2 * color2.red(), w1 * color1.green() + w2 * color2.green(), w1 * color1.blue() + w2 * color2.blue(), color1.alpha() * p + color2.alpha() * (1 - p) ); } }; Object.keys(convert).forEach(function(model) { if (skippedModels.indexOf(model) !== -1) { return; } var channels = convert[model].channels; Color.prototype[model] = function() { if (this.model === model) { return new Color(this); } if (arguments.length) { return new Color(arguments, model); } var newAlpha = typeof arguments[channels] === "number" ? channels : this.valpha; return new Color(assertArray(convert[this.model][model].raw(this.color)).concat(newAlpha), model); }; Color[model] = function(color) { if (typeof color === "number") { color = zeroArray(_slice.call(arguments), channels); } return new Color(color, model); }; }); function roundTo(num, places) { return Number(num.toFixed(places)); } function roundToPlace(places) { return function(num) { return roundTo(num, places); }; } function getset(model, channel, modifier) { model = Array.isArray(model) ? model : [model]; model.forEach(function(m2) { (limiters[m2] || (limiters[m2] = []))[channel] = modifier; }); model = model[0]; return function(val) { var result; if (arguments.length) { if (modifier) { val = modifier(val); } result = this[model](); result.color[channel] = val; return result; } result = this[model]().color[channel]; if (modifier) { result = modifier(result); } return result; }; } function maxfn(max) { return function(v) { return Math.max(0, Math.min(max, v)); }; } function assertArray(val) { return Array.isArray(val) ? val : [val]; } function zeroArray(arr, length) { for (var i2 = 0; i2 < length; i2++) { if (typeof arr[i2] !== "number") { arr[i2] = 0; } } return arr; } module2.exports = Color; } }); // ../../node_modules/.pnpm/text-hex@1.0.0/node_modules/text-hex/index.js var require_text_hex = __commonJS({ "../../node_modules/.pnpm/text-hex@1.0.0/node_modules/text-hex/index.js"(exports, module2) { "use strict"; module2.exports = function hex(str) { for (var i2 = 0, hash = 0; i2 < str.length; hash = str.charCodeAt(i2++) + ((hash << 5) - hash)) ; var color = Math.floor( Math.abs( Math.sin(hash) * 1e4 % 1 * 16777216 ) ).toString(16); return "#" + Array(6 - color.length + 1).join("0") + color; }; } }); // ../../node_modules/.pnpm/colorspace@1.1.4/node_modules/colorspace/index.js var require_colorspace = __commonJS({ "../../node_modules/.pnpm/colorspace@1.1.4/node_modules/colorspace/index.js"(exports, module2) { "use strict"; var color = require_color(); var hex = require_text_hex(); module2.exports = function colorspace(namespace, delimiter) { var split = namespace.split(delimiter || ":"); var base = hex(split[0]); if (!split.length) return base; for (var i2 = 0, l = split.length - 1; i2 < l; i2++) { base = color(base).mix(color(hex(split[i2 + 1]))).saturate(1).hex(); } return base; }; } }); // ../../node_modules/.pnpm/kuler@2.0.0/node_modules/kuler/index.js var require_kuler = __commonJS({ "../../node_modules/.pnpm/kuler@2.0.0/node_modules/kuler/index.js"(exports, module2) { "use strict"; function Kuler(text, color) { if (color) return new Kuler(text).style(color); if (!(this instanceof Kuler)) return new Kuler(text); this.text = text; } Kuler.prototype.prefix = "\x1B["; Kuler.prototype.suffix = "m"; Kuler.prototype.hex = function hex(color) { color = color[0] === "#" ? color.substring(1) : color; if (color.length === 3) { color = color.split(""); color[5] = color[2]; color[4] = color[2]; color[3] = color[1]; color[2] = color[1]; color[1] = color[0]; color = color.join(""); } var r3 = color.substring(0, 2), g = color.substring(2, 4), b = color.substring(4, 6); return [parseInt(r3, 16), parseInt(g, 16), parseInt(b, 16)]; }; Kuler.prototype.rgb = function rgb(r3, g, b) { var red = r3 / 255 * 5, green = g / 255 * 5, blue = b / 255 * 5; return this.ansi(red, green, blue); }; Kuler.prototype.ansi = function ansi(r3, g, b) { var red = Math.round(r3), green = Math.round(g), blue = Math.round(b); return 16 + red * 36 + green * 6 + blue; }; Kuler.prototype.reset = function reset() { return this.prefix + "39;49" + this.suffix; }; Kuler.prototype.style = function style(color) { return this.prefix + "38;5;" + this.rgb.apply(this, this.hex(color)) + this.suffix + this.text + this.reset(); }; module2.exports = Kuler; } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/modifiers/namespace-ansi.js var require_namespace_ansi = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/modifiers/namespace-ansi.js"(exports, module2) { var colorspace = require_colorspace(); var kuler = require_kuler(); module2.exports = function ansiModifier(args, options) { var namespace = options.namespace; var ansi = options.colors !== false ? kuler(namespace + ":", colorspace(namespace)) : namespace + ":"; args[0] = ansi + " " + args[0]; return args; }; } }); // ../../node_modules/.pnpm/enabled@2.0.0/node_modules/enabled/index.js var require_enabled = __commonJS({ "../../node_modules/.pnpm/enabled@2.0.0/node_modules/enabled/index.js"(exports, module2) { "use strict"; module2.exports = function enabled(name, variable) { if (!variable) return false; var variables = variable.split(/[\s,]+/), i2 = 0; for (; i2 < variables.length; i2++) { variable = variables[i2].replace("*", ".*?"); if ("-" === variable.charAt(0)) { if (new RegExp("^" + variable.substr(1) + "$").test(name)) { return false; } continue; } if (new RegExp("^" + variable + "$").test(name)) { return true; } } return false; }; } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/adapters/index.js var require_adapters = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/adapters/index.js"(exports, module2) { var enabled = require_enabled(); module2.exports = function create(fn) { return function adapter(namespace) { try { return enabled(namespace, fn()); } catch (e2) { } return false; }; }; } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/adapters/process.env.js var require_process_env = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/adapters/process.env.js"(exports, module2) { var adapter = require_adapters(); module2.exports = adapter(function processenv() { return process.env.DEBUG || process.env.DIAGNOSTICS; }); } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/logger/console.js var require_console2 = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/logger/console.js"(exports, module2) { module2.exports = function(meta, messages) { try { Function.prototype.apply.call(console.log, console, messages); } catch (e2) { } }; } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/node/development.js var require_development = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/node/development.js"(exports, module2) { var create = require_diagnostics(); var tty = require("tty").isatty(1); var diagnostics = create(function dev(namespace, options) { options = options || {}; options.colors = "colors" in options ? options.colors : tty; options.namespace = namespace; options.prod = false; options.dev = true; if (!dev.enabled(namespace) && !(options.force || dev.force)) { return dev.nope(options); } return dev.yep(options); }); diagnostics.modify(require_namespace_ansi()); diagnostics.use(require_process_env()); diagnostics.set(require_console2()); module2.exports = diagnostics; } }); // ../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/node/index.js var require_node3 = __commonJS({ "../../node_modules/.pnpm/@dabh+diagnostics@2.0.3/node_modules/@dabh/diagnostics/node/index.js"(exports, module2) { if (process.env.NODE_ENV === "production") { module2.exports = require_production(); } else { module2.exports = require_development(); } } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/tail-file.js var require_tail_file = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/tail-file.js"(exports, module2) { "use strict"; var fs4 = require("fs"); var { StringDecoder } = require("string_decoder"); var { Stream: Stream3 } = require_readable(); function noop2() { } module2.exports = (options, iter) => { const buffer = Buffer.alloc(64 * 1024); const decode = new StringDecoder("utf8"); const stream = new Stream3(); let buff = ""; let pos = 0; let row = 0; if (options.start === -1) { delete options.start; } stream.readable = true; stream.destroy = () => { stream.destroyed = true; stream.emit("end"); stream.emit("close"); }; fs4.open(options.file, "a+", "0644", (err, fd) => { if (err) { if (!iter) { stream.emit("error", err); } else { iter(err); } stream.destroy(); return; } (function read() { if (stream.destroyed) { fs4.close(fd, noop2); return; } return fs4.read(fd, buffer, 0, buffer.length, pos, (error, bytes) => { if (error) { if (!iter) { stream.emit("error", error); } else { iter(error); } stream.destroy(); return; } if (!bytes) { if (buff) { if (options.start == null || row > options.start) { if (!iter) { stream.emit("line", buff); } else { iter(null, buff); } } row++; buff = ""; } return setTimeout(read, 1e3); } let data = decode.write(buffer.slice(0, bytes)); if (!iter) { stream.emit("data", data); } data = (buff + data).split(/\n+/); const l = data.length - 1; let i2 = 0; for (; i2 < l; i2++) { if (options.start == null || row > options.start) { if (!iter) { stream.emit("line", data[i2]); } else { iter(null, data[i2]); } } row++; } buff = data[l]; pos += bytes; return read(); }); })(); }); if (!iter) { return stream; } return stream.destroy; }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/file.js var require_file = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/file.js"(exports, module2) { "use strict"; var fs4 = require("fs"); var path5 = require("path"); var asyncSeries = require_series(); var zlib2 = require("zlib"); var { MESSAGE } = require_triple_beam(); var { Stream: Stream3, PassThrough: PassThrough3 } = require_readable(); var TransportStream = require_winston_transport(); var debug = require_node3()("winston:file"); var os = require("os"); var tailFile = require_tail_file(); module2.exports = class File extends TransportStream { constructor(options = {}) { super(options); this.name = options.name || "file"; function throwIf(target, ...args) { args.slice(1).forEach((name) => { if (options[name]) { throw new Error(`Cannot set ${name} and ${target} together`); } }); } this._stream = new PassThrough3(); this._stream.setMaxListeners(30); this._onError = this._onError.bind(this); if (options.filename || options.dirname) { throwIf("filename or dirname", "stream"); this._basename = this.filename = options.filename ? path5.basename(options.filename) : "winston.log"; this.dirname = options.dirname || path5.dirname(options.filename); this.options = options.options || { flags: "a" }; } else if (options.stream) { console.warn("options.stream will be removed in winston@4. Use winston.transports.Stream"); throwIf("stream", "filename", "maxsize"); this._dest = this._stream.pipe(this._setupStream(options.stream)); this.dirname = path5.dirname(this._dest.path); } else { throw new Error("Cannot log to file without filename or stream."); } this.maxsize = options.maxsize || null; this.rotationFormat = options.rotationFormat || false; this.zippedArchive = options.zippedArchive || false; this.maxFiles = options.maxFiles || null; this.eol = typeof options.eol === "string" ? options.eol : os.EOL; this.tailable = options.tailable || false; this._size = 0; this._pendingSize = 0; this._created = 0; this._drain = false; this._opening = false; this._ending = false; if (this.dirname) this._createLogDirIfNotExist(this.dirname); this.open(); } finishIfEnding() { if (this._ending) { if (this._opening) { this.once("open", () => { this._stream.once("finish", () => this.emit("finish")); setImmediate(() => this._stream.end()); }); } else { this._stream.once("finish", () => this.emit("finish")); setImmediate(() => this._stream.end()); } } } log(info, callback = () => { }) { if (this.silent) { callback(); return true; } if (this._drain) { this._stream.once("drain", () => { this._drain = false; this.log(info, callback); }); return; } if (this._rotate) { this._stream.once("rotate", () => { this._rotate = false; this.log(info, callback); }); return; } const output = `${info[MESSAGE]}${this.eol}`; const bytes = Buffer.byteLength(output); function logged() { this._size += bytes; this._pendingSize -= bytes; debug("logged %s %s", this._size, output); this.emit("logged", info); if (this._opening) { return; } if (!this._needsNewFile()) { return; } this._rotate = true; this._endStream(() => this._rotateFile()); } this._pendingSize += bytes; if (this._opening && !this.rotatedWhileOpening && this._needsNewFile(this._size + this._pendingSize)) { this.rotatedWhileOpening = true; } const written = this._stream.write(output, logged.bind(this)); if (!written) { this._drain = true; this._stream.once("drain", () => { this._drain = false; callback(); }); } else { callback(); } debug("written", written, this._drain); this.finishIfEnding(); return written; } query(options, callback) { if (typeof options === "function") { callback = options; options = {}; } options = normalizeQuery(options); const file = path5.join(this.dirname, this.filename); let buff = ""; let results = []; let row = 0; const stream = fs4.createReadStream(file, { encoding: "utf8" }); stream.on("error", (err) => { if (stream.readable) { stream.destroy(); } if (!callback) { return; } return err.code !== "ENOENT" ? callback(err) : callback(null, results); }); stream.on("data", (data) => { data = (buff + data).split(/\n+/); const l = data.length - 1; let i2 = 0; for (; i2 < l; i2++) { if (!options.start || row >= options.start) { add(data[i2]); } row++; } buff = data[l]; }); stream.on("close", () => { if (buff) { add(buff, true); } if (options.order === "desc") { results = results.reverse(); } if (callback) callback(null, results); }); function add(buff2, attempt) { try { const log = JSON.parse(buff2); if (check(log)) { push(log); } } catch (e2) { if (!attempt) { stream.emit("error", e2); } } } function push(log) { if (options.rows && results.length >= options.rows && options.order !== "desc") { if (stream.readable) { stream.destroy(); } return; } if (options.fields) { log = options.fields.reduce((obj, key) => { obj[key] = log[key]; return obj; }, {}); } if (options.order === "desc") { if (results.length >= options.rows) { results.shift(); } } results.push(log); } function check(log) { if (!log) { return; } if (typeof log !== "object") { return; } const time = new Date(log.timestamp); if (options.from && time < options.from || options.until && time > options.until || options.level && options.level !== log.level) { return; } return true; } function normalizeQuery(options2) { options2 = options2 || {}; options2.rows = options2.rows || options2.limit || 10; options2.start = options2.start || 0; options2.until = options2.until || new Date(); if (typeof options2.until !== "object") { options2.until = new Date(options2.until); } options2.from = options2.from || options2.until - 24 * 60 * 60 * 1e3; if (typeof options2.from !== "object") { options2.from = new Date(options2.from); } options2.order = options2.order || "desc"; return options2; } } stream(options = {}) { const file = path5.join(this.dirname, this.filename); const stream = new Stream3(); const tail = { file, start: options.start }; stream.destroy = tailFile(tail, (err, line) => { if (err) { return stream.emit("error", err); } try { stream.emit("data", line); line = JSON.parse(line); stream.emit("log", line); } catch (e2) { stream.emit("error", e2); } }); return stream; } open() { if (!this.filename) return; if (this._opening) return; this._opening = true; this.stat((err, size) => { if (err) { return this.emit("error", err); } debug("stat done: %s { size: %s }", this.filename, size); this._size = size; this._dest = this._createStream(this._stream); this._opening = false; this.once("open", () => { if (this._stream.eventNames().includes("rotate")) { this._stream.emit("rotate"); } else { this._rotate = false; } }); }); } stat(callback) { const target = this._getFile(); const fullpath = path5.join(this.dirname, target); fs4.stat(fullpath, (err, stat2) => { if (err && err.code === "ENOENT") { debug("ENOENT\xA0ok", fullpath); this.filename = target; return callback(null, 0); } if (err) { debug(`err ${err.code} ${fullpath}`); return callback(err); } if (!stat2 || this._needsNewFile(stat2.size)) { return this._incFile(() => this.stat(callback)); } this.filename = target; callback(null, stat2.size); }); } close(cb) { if (!this._stream) { return; } this._stream.end(() => { if (cb) { cb(); } this.emit("flush"); this.emit("closed"); }); } _needsNewFile(size) { size = size || this._size; return this.maxsize && size >= this.maxsize; } _onError(err) { this.emit("error", err); } _setupStream(stream) { stream.on("error", this._onError); return stream; } _cleanupStream(stream) { stream.removeListener("error", this._onError); return stream; } _rotateFile() { this._incFile(() => this.open()); } _endStream(callback = () => { }) { if (this._dest) { this._stream.unpipe(this._dest); this._dest.end(() => { this._cleanupStream(this._dest); callback(); }); } else { callback(); } } _createStream(source2) { const fullpath = path5.join(this.dirname, this.filename); debug("create stream start", fullpath, this.options); const dest = fs4.createWriteStream(fullpath, this.options).on("error", (err) => debug(err)).on("close", () => debug("close", dest.path, dest.bytesWritten)).on("open", () => { debug("file open ok", fullpath); this.emit("open", fullpath); source2.pipe(dest); if (this.rotatedWhileOpening) { this._stream = new PassThrough3(); this._stream.setMaxListeners(30); this._rotateFile(); this.rotatedWhileOpening = false; this._cleanupStream(dest); source2.end(); } }); debug("create stream ok", fullpath); if (this.zippedArchive) { const gzip = zlib2.createGzip(); gzip.pipe(dest); return gzip; } return dest; } _incFile(callback) { debug("_incFile", this.filename); const ext = path5.extname(this._basename); const basename2 = path5.basename(this._basename, ext); if (!this.tailable) { this._created += 1; this._checkMaxFilesIncrementing(ext, basename2, callback); } else { this._checkMaxFilesTailable(ext, basename2, callback); } } _getFile() { const ext = path5.extname(this._basename); const basename2 = path5.basename(this._basename, ext); const isRotation = this.rotationFormat ? this.rotationFormat() : this._created; const target = !this.tailable && this._created ? `${basename2}${isRotation}${ext}` : `${basename2}${ext}`; return this.zippedArchive && !this.tailable ? `${target}.gz` : target; } _checkMaxFilesIncrementing(ext, basename2, callback) { if (!this.maxFiles || this._created < this.maxFiles) { return setImmediate(callback); } const oldest = this._created - this.maxFiles; const isOldest = oldest !== 0 ? oldest : ""; const isZipped = this.zippedArchive ? ".gz" : ""; const filePath = `${basename2}${isOldest}${ext}${isZipped}`; const target = path5.join(this.dirname, filePath); fs4.unlink(target, callback); } _checkMaxFilesTailable(ext, basename2, callback) { const tasks = []; if (!this.maxFiles) { return; } const isZipped = this.zippedArchive ? ".gz" : ""; for (let x2 = this.maxFiles - 1; x2 > 1; x2--) { tasks.push(function(i2, cb) { let fileName = `${basename2}${i2 - 1}${ext}${isZipped}`; const tmppath = path5.join(this.dirname, fileName); fs4.exists(tmppath, (exists) => { if (!exists) { return cb(null); } fileName = `${basename2}${i2}${ext}${isZipped}`; fs4.rename(tmppath, path5.join(this.dirname, fileName), cb); }); }.bind(this, x2)); } asyncSeries(tasks, () => { fs4.rename( path5.join(this.dirname, `${basename2}${ext}`), path5.join(this.dirname, `${basename2}1${ext}${isZipped}`), callback ); }); } _createLogDirIfNotExist(dirPath) { if (!fs4.existsSync(dirPath)) { fs4.mkdirSync(dirPath, { recursive: true }); } } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/http.js var require_http = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/http.js"(exports, module2) { "use strict"; var http3 = require("http"); var https2 = require("https"); var { Stream: Stream3 } = require_readable(); var TransportStream = require_winston_transport(); module2.exports = class Http extends TransportStream { constructor(options = {}) { super(options); this.options = options; this.name = options.name || "http"; this.ssl = !!options.ssl; this.host = options.host || "localhost"; this.port = options.port; this.auth = options.auth; this.path = options.path || ""; this.agent = options.agent; this.headers = options.headers || {}; this.headers["content-type"] = "application/json"; if (!this.port) { this.port = this.ssl ? 443 : 80; } } log(info, callback) { this._request(info, (err, res) => { if (res && res.statusCode !== 200) { err = new Error(`Invalid HTTP Status Code: ${res.statusCode}`); } if (err) { this.emit("warn", err); } else { this.emit("logged", info); } }); if (callback) { setImmediate(callback); } } query(options, callback) { if (typeof options === "function") { callback = options; options = {}; } options = { method: "query", params: this.normalizeQuery(options) }; if (options.params.path) { options.path = options.params.path; delete options.params.path; } if (options.params.auth) { options.auth = options.params.auth; delete options.params.auth; } this._request(options, (err, res, body) => { if (res && res.statusCode !== 200) { err = new Error(`Invalid HTTP Status Code: ${res.statusCode}`); } if (err) { return callback(err); } if (typeof body === "string") { try { body = JSON.parse(body); } catch (e2) { return callback(e2); } } callback(null, body); }); } stream(options = {}) { const stream = new Stream3(); options = { method: "stream", params: options }; if (options.params.path) { options.path = options.params.path; delete options.params.path; } if (options.params.auth) { options.auth = options.params.auth; delete options.params.auth; } let buff = ""; const req = this._request(options); stream.destroy = () => req.destroy(); req.on("data", (data) => { data = (buff + data).split(/\n+/); const l = data.length - 1; let i2 = 0; for (; i2 < l; i2++) { try { stream.emit("log", JSON.parse(data[i2])); } catch (e2) { stream.emit("error", e2); } } buff = data[l]; }); req.on("error", (err) => stream.emit("error", err)); return stream; } _request(options, callback) { options = options || {}; const auth = options.auth || this.auth; const path5 = options.path || this.path || ""; delete options.auth; delete options.path; const headers = Object.assign({}, this.headers); if (auth && auth.bearer) { headers.Authorization = `Bearer ${auth.bearer}`; } const req = (this.ssl ? https2 : http3).request({ ...this.options, method: "POST", host: this.host, port: this.port, path: `/${path5.replace(/^\//, "")}`, headers, auth: auth && auth.username && auth.password ? `${auth.username}:${auth.password}` : "", agent: this.agent }); req.on("error", callback); req.on("response", (res) => res.on("end", () => callback(null, res)).resume()); req.end(Buffer.from(JSON.stringify(options), "utf8")); } }; } }); // ../../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js var require_is_stream = __commonJS({ "../../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js"(exports, module2) { "use strict"; var isStream = (stream) => stream !== null && typeof stream === "object" && typeof stream.pipe === "function"; isStream.writable = (stream) => isStream(stream) && stream.writable !== false && typeof stream._write === "function" && typeof stream._writableState === "object"; isStream.readable = (stream) => isStream(stream) && stream.readable !== false && typeof stream._read === "function" && typeof stream._readableState === "object"; isStream.duplex = (stream) => isStream.writable(stream) && isStream.readable(stream); isStream.transform = (stream) => isStream.duplex(stream) && typeof stream._transform === "function"; module2.exports = isStream; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/stream.js var require_stream2 = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/stream.js"(exports, module2) { "use strict"; var isStream = require_is_stream(); var { MESSAGE } = require_triple_beam(); var os = require("os"); var TransportStream = require_winston_transport(); module2.exports = class Stream extends TransportStream { constructor(options = {}) { super(options); if (!options.stream || !isStream(options.stream)) { throw new Error("options.stream is required."); } this._stream = options.stream; this._stream.setMaxListeners(Infinity); this.isObjectMode = options.stream._writableState.objectMode; this.eol = typeof options.eol === "string" ? options.eol : os.EOL; } log(info, callback) { setImmediate(() => this.emit("logged", info)); if (this.isObjectMode) { this._stream.write(info); if (callback) { callback(); } return; } this._stream.write(`${info[MESSAGE]}${this.eol}`); if (callback) { callback(); } return; } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/index.js var require_transports = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/transports/index.js"(exports) { "use strict"; Object.defineProperty(exports, "Console", { configurable: true, enumerable: true, get() { return require_console(); } }); Object.defineProperty(exports, "File", { configurable: true, enumerable: true, get() { return require_file(); } }); Object.defineProperty(exports, "Http", { configurable: true, enumerable: true, get() { return require_http(); } }); Object.defineProperty(exports, "Stream", { configurable: true, enumerable: true, get() { return require_stream2(); } }); } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/config/index.js var require_config2 = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/config/index.js"(exports) { "use strict"; var logform = require_logform(); var { configs } = require_triple_beam(); exports.cli = logform.levels(configs.cli); exports.npm = logform.levels(configs.npm); exports.syslog = logform.levels(configs.syslog); exports.addColors = logform.levels; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/eachOf.js var require_eachOf = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/eachOf.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _isArrayLike = require_isArrayLike(); var _isArrayLike2 = _interopRequireDefault(_isArrayLike); var _breakLoop = require_breakLoop(); var _breakLoop2 = _interopRequireDefault(_breakLoop); var _eachOfLimit = require_eachOfLimit2(); var _eachOfLimit2 = _interopRequireDefault(_eachOfLimit); var _once = require_once(); var _once2 = _interopRequireDefault(_once); var _onlyOnce = require_onlyOnce(); var _onlyOnce2 = _interopRequireDefault(_onlyOnce); var _wrapAsync = require_wrapAsync(); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); var _awaitify = require_awaitify(); var _awaitify2 = _interopRequireDefault(_awaitify); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function eachOfArrayLike(coll, iteratee, callback) { callback = (0, _once2.default)(callback); var index = 0, completed = 0, { length } = coll, canceled = false; if (length === 0) { callback(null); } function iteratorCallback(err, value) { if (err === false) { canceled = true; } if (canceled === true) return; if (err) { callback(err); } else if (++completed === length || value === _breakLoop2.default) { callback(null); } } for (; index < length; index++) { iteratee(coll[index], index, (0, _onlyOnce2.default)(iteratorCallback)); } } function eachOfGeneric(coll, iteratee, callback) { return (0, _eachOfLimit2.default)(coll, Infinity, iteratee, callback); } function eachOf(coll, iteratee, callback) { var eachOfImplementation = (0, _isArrayLike2.default)(coll) ? eachOfArrayLike : eachOfGeneric; return eachOfImplementation(coll, (0, _wrapAsync2.default)(iteratee), callback); } exports.default = (0, _awaitify2.default)(eachOf, 3); module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/withoutIndex.js var require_withoutIndex = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/internal/withoutIndex.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _withoutIndex; function _withoutIndex(iteratee) { return (value, index, callback) => iteratee(value, callback); } module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/async@3.2.4/node_modules/async/forEach.js var require_forEach = __commonJS({ "../../node_modules/.pnpm/async@3.2.4/node_modules/async/forEach.js"(exports, module2) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _eachOf = require_eachOf(); var _eachOf2 = _interopRequireDefault(_eachOf); var _withoutIndex = require_withoutIndex(); var _withoutIndex2 = _interopRequireDefault(_withoutIndex); var _wrapAsync = require_wrapAsync(); var _wrapAsync2 = _interopRequireDefault(_wrapAsync); var _awaitify = require_awaitify(); var _awaitify2 = _interopRequireDefault(_awaitify); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function eachLimit(coll, iteratee, callback) { return (0, _eachOf2.default)(coll, (0, _withoutIndex2.default)((0, _wrapAsync2.default)(iteratee)), callback); } exports.default = (0, _awaitify2.default)(eachLimit, 3); module2.exports = exports["default"]; } }); // ../../node_modules/.pnpm/fn.name@1.1.0/node_modules/fn.name/index.js var require_fn = __commonJS({ "../../node_modules/.pnpm/fn.name@1.1.0/node_modules/fn.name/index.js"(exports, module2) { "use strict"; var toString = Object.prototype.toString; module2.exports = function name(fn) { if ("string" === typeof fn.displayName && fn.constructor.name) { return fn.displayName; } else if ("string" === typeof fn.name && fn.name) { return fn.name; } if ("object" === typeof fn && fn.constructor && "string" === typeof fn.constructor.name) return fn.constructor.name; var named = fn.toString(), type = toString.call(fn).slice(8, -1); if ("Function" === type) { named = named.substring(named.indexOf("(") + 1, named.indexOf(")")); } else { named = type; } return named || "anonymous"; }; } }); // ../../node_modules/.pnpm/one-time@1.0.0/node_modules/one-time/index.js var require_one_time = __commonJS({ "../../node_modules/.pnpm/one-time@1.0.0/node_modules/one-time/index.js"(exports, module2) { "use strict"; var name = require_fn(); module2.exports = function one(fn) { var called = 0, value; function onetime() { if (called) return value; called = 1; value = fn.apply(this, arguments); fn = null; return value; } onetime.displayName = name(fn); return onetime; }; } }); // ../../node_modules/.pnpm/stack-trace@0.0.10/node_modules/stack-trace/lib/stack-trace.js var require_stack_trace = __commonJS({ "../../node_modules/.pnpm/stack-trace@0.0.10/node_modules/stack-trace/lib/stack-trace.js"(exports) { exports.get = function(belowFn) { var oldLimit = Error.stackTraceLimit; Error.stackTraceLimit = Infinity; var dummyObject = {}; var v8Handler = Error.prepareStackTrace; Error.prepareStackTrace = function(dummyObject2, v8StackTrace2) { return v8StackTrace2; }; Error.captureStackTrace(dummyObject, belowFn || exports.get); var v8StackTrace = dummyObject.stack; Error.prepareStackTrace = v8Handler; Error.stackTraceLimit = oldLimit; return v8StackTrace; }; exports.parse = function(err) { if (!err.stack) { return []; } var self2 = this; var lines = err.stack.split("\n").slice(1); return lines.map(function(line) { if (line.match(/^\s*[-]{4,}$/)) { return self2._createParsedCallSite({ fileName: line, lineNumber: null, functionName: null, typeName: null, methodName: null, columnNumber: null, "native": null }); } var lineMatch = line.match(/at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/); if (!lineMatch) { return; } var object = null; var method = null; var functionName = null; var typeName = null; var methodName = null; var isNative = lineMatch[5] === "native"; if (lineMatch[1]) { functionName = lineMatch[1]; var methodStart = functionName.lastIndexOf("."); if (functionName[methodStart - 1] == ".") methodStart--; if (methodStart > 0) { object = functionName.substr(0, methodStart); method = functionName.substr(methodStart + 1); var objectEnd = object.indexOf(".Module"); if (objectEnd > 0) { functionName = functionName.substr(objectEnd + 1); object = object.substr(0, objectEnd); } } typeName = null; } if (method) { typeName = object; methodName = method; } if (method === "") { methodName = null; functionName = null; } var properties = { fileName: lineMatch[2] || null, lineNumber: parseInt(lineMatch[3], 10) || null, functionName, typeName, methodName, columnNumber: parseInt(lineMatch[4], 10) || null, "native": isNative }; return self2._createParsedCallSite(properties); }).filter(function(callSite) { return !!callSite; }); }; function CallSite(properties) { for (var property in properties) { this[property] = properties[property]; } } var strProperties = [ "this", "typeName", "functionName", "methodName", "fileName", "lineNumber", "columnNumber", "function", "evalOrigin" ]; var boolProperties = [ "topLevel", "eval", "native", "constructor" ]; strProperties.forEach(function(property) { CallSite.prototype[property] = null; CallSite.prototype["get" + property[0].toUpperCase() + property.substr(1)] = function() { return this[property]; }; }); boolProperties.forEach(function(property) { CallSite.prototype[property] = false; CallSite.prototype["is" + property[0].toUpperCase() + property.substr(1)] = function() { return this[property]; }; }); exports._createParsedCallSite = function(properties) { return new CallSite(properties); }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/exception-stream.js var require_exception_stream = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/exception-stream.js"(exports, module2) { "use strict"; var { Writable } = require_readable(); module2.exports = class ExceptionStream extends Writable { constructor(transport) { super({ objectMode: true }); if (!transport) { throw new Error("ExceptionStream requires a TransportStream instance."); } this.handleExceptions = true; this.transport = transport; } _write(info, enc, callback) { if (info.exception) { return this.transport.log(info, callback); } callback(); return true; } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/exception-handler.js var require_exception_handler = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/exception-handler.js"(exports, module2) { "use strict"; var os = require("os"); var asyncForEach = require_forEach(); var debug = require_node3()("winston:exception"); var once = require_one_time(); var stackTrace = require_stack_trace(); var ExceptionStream = require_exception_stream(); module2.exports = class ExceptionHandler { constructor(logger) { if (!logger) { throw new Error("Logger is required to handle exceptions"); } this.logger = logger; this.handlers = /* @__PURE__ */ new Map(); } handle(...args) { args.forEach((arg) => { if (Array.isArray(arg)) { return arg.forEach((handler) => this._addHandler(handler)); } this._addHandler(arg); }); if (!this.catcher) { this.catcher = this._uncaughtException.bind(this); process.on("uncaughtException", this.catcher); } } unhandle() { if (this.catcher) { process.removeListener("uncaughtException", this.catcher); this.catcher = false; Array.from(this.handlers.values()).forEach((wrapper) => this.logger.unpipe(wrapper)); } } getAllInfo(err) { let { message } = err; if (!message && typeof err === "string") { message = err; } return { error: err, level: "error", message: [ `uncaughtException: ${message || "(no error message)"}`, err.stack || " No stack trace" ].join("\n"), stack: err.stack, exception: true, date: new Date().toString(), process: this.getProcessInfo(), os: this.getOsInfo(), trace: this.getTrace(err) }; } getProcessInfo() { return { pid: process.pid, uid: process.getuid ? process.getuid() : null, gid: process.getgid ? process.getgid() : null, cwd: process.cwd(), execPath: process.execPath, version: process.version, argv: process.argv, memoryUsage: process.memoryUsage() }; } getOsInfo() { return { loadavg: os.loadavg(), uptime: os.uptime() }; } getTrace(err) { const trace = err ? stackTrace.parse(err) : stackTrace.get(); return trace.map((site) => { return { column: site.getColumnNumber(), file: site.getFileName(), function: site.getFunctionName(), line: site.getLineNumber(), method: site.getMethodName(), native: site.isNative() }; }); } _addHandler(handler) { if (!this.handlers.has(handler)) { handler.handleExceptions = true; const wrapper = new ExceptionStream(handler); this.handlers.set(handler, wrapper); this.logger.pipe(wrapper); } } _uncaughtException(err) { const info = this.getAllInfo(err); const handlers = this._getExceptionHandlers(); let doExit = typeof this.logger.exitOnError === "function" ? this.logger.exitOnError(err) : this.logger.exitOnError; let timeout; if (!handlers.length && doExit) { console.warn("winston: exitOnError cannot be true with no exception handlers."); console.warn("winston: not exiting process."); doExit = false; } function gracefulExit() { debug("doExit", doExit); debug("process._exiting", process._exiting); if (doExit && !process._exiting) { if (timeout) { clearTimeout(timeout); } process.exit(1); } } if (!handlers || handlers.length === 0) { return process.nextTick(gracefulExit); } asyncForEach(handlers, (handler, next) => { const done = once(next); const transport = handler.transport || handler; function onDone(event) { return () => { debug(event); done(); }; } transport._ending = true; transport.once("finish", onDone("finished")); transport.once("error", onDone("error")); }, () => doExit && gracefulExit()); this.logger.log(info); if (doExit) { timeout = setTimeout(gracefulExit, 3e3); } } _getExceptionHandlers() { return this.logger.transports.filter((wrap) => { const transport = wrap.transport || wrap; return transport.handleExceptions; }); } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/rejection-handler.js var require_rejection_handler = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/rejection-handler.js"(exports, module2) { "use strict"; var os = require("os"); var asyncForEach = require_forEach(); var debug = require_node3()("winston:rejection"); var once = require_one_time(); var stackTrace = require_stack_trace(); var ExceptionStream = require_exception_stream(); module2.exports = class RejectionHandler { constructor(logger) { if (!logger) { throw new Error("Logger is required to handle rejections"); } this.logger = logger; this.handlers = /* @__PURE__ */ new Map(); } handle(...args) { args.forEach((arg) => { if (Array.isArray(arg)) { return arg.forEach((handler) => this._addHandler(handler)); } this._addHandler(arg); }); if (!this.catcher) { this.catcher = this._unhandledRejection.bind(this); process.on("unhandledRejection", this.catcher); } } unhandle() { if (this.catcher) { process.removeListener("unhandledRejection", this.catcher); this.catcher = false; Array.from(this.handlers.values()).forEach( (wrapper) => this.logger.unpipe(wrapper) ); } } getAllInfo(err) { let message = null; if (err) { message = typeof err === "string" ? err : err.message; } return { error: err, level: "error", message: [ `unhandledRejection: ${message || "(no error message)"}`, err && err.stack || " No stack trace" ].join("\n"), stack: err && err.stack, exception: true, date: new Date().toString(), process: this.getProcessInfo(), os: this.getOsInfo(), trace: this.getTrace(err) }; } getProcessInfo() { return { pid: process.pid, uid: process.getuid ? process.getuid() : null, gid: process.getgid ? process.getgid() : null, cwd: process.cwd(), execPath: process.execPath, version: process.version, argv: process.argv, memoryUsage: process.memoryUsage() }; } getOsInfo() { return { loadavg: os.loadavg(), uptime: os.uptime() }; } getTrace(err) { const trace = err ? stackTrace.parse(err) : stackTrace.get(); return trace.map((site) => { return { column: site.getColumnNumber(), file: site.getFileName(), function: site.getFunctionName(), line: site.getLineNumber(), method: site.getMethodName(), native: site.isNative() }; }); } _addHandler(handler) { if (!this.handlers.has(handler)) { handler.handleRejections = true; const wrapper = new ExceptionStream(handler); this.handlers.set(handler, wrapper); this.logger.pipe(wrapper); } } _unhandledRejection(err) { const info = this.getAllInfo(err); const handlers = this._getRejectionHandlers(); let doExit = typeof this.logger.exitOnError === "function" ? this.logger.exitOnError(err) : this.logger.exitOnError; let timeout; if (!handlers.length && doExit) { console.warn("winston: exitOnError cannot be true with no rejection handlers."); console.warn("winston: not exiting process."); doExit = false; } function gracefulExit() { debug("doExit", doExit); debug("process._exiting", process._exiting); if (doExit && !process._exiting) { if (timeout) { clearTimeout(timeout); } process.exit(1); } } if (!handlers || handlers.length === 0) { return process.nextTick(gracefulExit); } asyncForEach( handlers, (handler, next) => { const done = once(next); const transport = handler.transport || handler; function onDone(event) { return () => { debug(event); done(); }; } transport._ending = true; transport.once("finish", onDone("finished")); transport.once("error", onDone("error")); }, () => doExit && gracefulExit() ); this.logger.log(info); if (doExit) { timeout = setTimeout(gracefulExit, 3e3); } } _getRejectionHandlers() { return this.logger.transports.filter((wrap) => { const transport = wrap.transport || wrap; return transport.handleRejections; }); } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/profiler.js var require_profiler = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/profiler.js"(exports, module2) { "use strict"; module2.exports = class Profiler { constructor(logger) { if (!logger) { throw new Error("Logger is required for profiling."); } this.logger = logger; this.start = Date.now(); } done(...args) { if (typeof args[args.length - 1] === "function") { console.warn("Callback function no longer supported as of winston@3.0.0"); args.pop(); } const info = typeof args[args.length - 1] === "object" ? args.pop() : {}; info.level = info.level || "info"; info.durationMs = Date.now() - this.start; return this.logger.write(info); } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/logger.js var require_logger2 = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/logger.js"(exports, module2) { "use strict"; var { Stream: Stream3, Transform } = require_readable(); var asyncForEach = require_forEach(); var { LEVEL, SPLAT } = require_triple_beam(); var isStream = require_is_stream(); var ExceptionHandler = require_exception_handler(); var RejectionHandler = require_rejection_handler(); var LegacyTransportStream = require_legacy(); var Profiler = require_profiler(); var { warn } = require_common(); var config4 = require_config2(); var formatRegExp = /%[scdjifoO%]/g; var Logger = class extends Transform { constructor(options) { super({ objectMode: true }); this.configure(options); } child(defaultRequestMetadata) { const logger = this; return Object.create(logger, { write: { value: function(info) { const infoClone = Object.assign( {}, defaultRequestMetadata, info ); if (info instanceof Error) { infoClone.stack = info.stack; infoClone.message = info.message; } logger.write(infoClone); } } }); } configure({ silent, format: format3, defaultMeta, levels, level = "info", exitOnError = true, transports: transports3, colors, emitErrs, formatters, padLevels, rewriters, stripColors, exceptionHandlers, rejectionHandlers } = {}) { if (this.transports.length) { this.clear(); } this.silent = silent; this.format = format3 || this.format || require_json()(); this.defaultMeta = defaultMeta || null; this.levels = levels || this.levels || config4.npm.levels; this.level = level; if (this.exceptions) { this.exceptions.unhandle(); } if (this.rejections) { this.rejections.unhandle(); } this.exceptions = new ExceptionHandler(this); this.rejections = new RejectionHandler(this); this.profilers = {}; this.exitOnError = exitOnError; if (transports3) { transports3 = Array.isArray(transports3) ? transports3 : [transports3]; transports3.forEach((transport) => this.add(transport)); } if (colors || emitErrs || formatters || padLevels || rewriters || stripColors) { throw new Error( [ "{ colors, emitErrs, formatters, padLevels, rewriters, stripColors } were removed in winston@3.0.0.", "Use a custom winston.format(function) instead.", "See: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md" ].join("\n") ); } if (exceptionHandlers) { this.exceptions.handle(exceptionHandlers); } if (rejectionHandlers) { this.rejections.handle(rejectionHandlers); } } isLevelEnabled(level) { const givenLevelValue = getLevelValue(this.levels, level); if (givenLevelValue === null) { return false; } const configuredLevelValue = getLevelValue(this.levels, this.level); if (configuredLevelValue === null) { return false; } if (!this.transports || this.transports.length === 0) { return configuredLevelValue >= givenLevelValue; } const index = this.transports.findIndex((transport) => { let transportLevelValue = getLevelValue(this.levels, transport.level); if (transportLevelValue === null) { transportLevelValue = configuredLevelValue; } return transportLevelValue >= givenLevelValue; }); return index !== -1; } log(level, msg, ...splat) { if (arguments.length === 1) { level[LEVEL] = level.level; this._addDefaultMeta(level); this.write(level); return this; } if (arguments.length === 2) { if (msg && typeof msg === "object") { msg[LEVEL] = msg.level = level; this._addDefaultMeta(msg); this.write(msg); return this; } msg = { [LEVEL]: level, level, message: msg }; this._addDefaultMeta(msg); this.write(msg); return this; } const [meta] = splat; if (typeof meta === "object" && meta !== null) { const tokens = msg && msg.match && msg.match(formatRegExp); if (!tokens) { const info = Object.assign({}, this.defaultMeta, meta, { [LEVEL]: level, [SPLAT]: splat, level, message: msg }); if (meta.message) info.message = `${info.message} ${meta.message}`; if (meta.stack) info.stack = meta.stack; this.write(info); return this; } } this.write(Object.assign({}, this.defaultMeta, { [LEVEL]: level, [SPLAT]: splat, level, message: msg })); return this; } _transform(info, enc, callback) { if (this.silent) { return callback(); } if (!info[LEVEL]) { info[LEVEL] = info.level; } if (!this.levels[info[LEVEL]] && this.levels[info[LEVEL]] !== 0) { console.error("[winston] Unknown logger level: %s", info[LEVEL]); } if (!this._readableState.pipes) { console.error( "[winston] Attempt to write logs with no transports %j", info ); } try { this.push(this.format.transform(info, this.format.options)); } catch (ex) { throw ex; } finally { callback(); } } _final(callback) { const transports3 = this.transports.slice(); asyncForEach( transports3, (transport, next) => { if (!transport || transport.finished) return setImmediate(next); transport.once("finish", next); transport.end(); }, callback ); } add(transport) { const target = !isStream(transport) || transport.log.length > 2 ? new LegacyTransportStream({ transport }) : transport; if (!target._writableState || !target._writableState.objectMode) { throw new Error( "Transports must WritableStreams in objectMode. Set { objectMode: true }." ); } this._onEvent("error", target); this._onEvent("warn", target); this.pipe(target); if (transport.handleExceptions) { this.exceptions.handle(); } if (transport.handleRejections) { this.rejections.handle(); } return this; } remove(transport) { if (!transport) return this; let target = transport; if (!isStream(transport) || transport.log.length > 2) { target = this.transports.filter( (match) => match.transport === transport )[0]; } if (target) { this.unpipe(target); } return this; } clear() { this.unpipe(); return this; } close() { this.exceptions.unhandle(); this.rejections.unhandle(); this.clear(); this.emit("close"); return this; } setLevels() { warn.deprecated("setLevels"); } query(options, callback) { if (typeof options === "function") { callback = options; options = {}; } options = options || {}; const results = {}; const queryObject = Object.assign({}, options.query || {}); function queryTransport(transport, next) { if (options.query && typeof transport.formatQuery === "function") { options.query = transport.formatQuery(queryObject); } transport.query(options, (err, res) => { if (err) { return next(err); } if (typeof transport.formatResults === "function") { res = transport.formatResults(res, options.format); } next(null, res); }); } function addResults(transport, next) { queryTransport(transport, (err, result) => { if (next) { result = err || result; if (result) { results[transport.name] = result; } next(); } next = null; }); } asyncForEach( this.transports.filter((transport) => !!transport.query), addResults, () => callback(null, results) ); } stream(options = {}) { const out = new Stream3(); const streams = []; out._streams = streams; out.destroy = () => { let i2 = streams.length; while (i2--) { streams[i2].destroy(); } }; this.transports.filter((transport) => !!transport.stream).forEach((transport) => { const str = transport.stream(options); if (!str) { return; } streams.push(str); str.on("log", (log) => { log.transport = log.transport || []; log.transport.push(transport.name); out.emit("log", log); }); str.on("error", (err) => { err.transport = err.transport || []; err.transport.push(transport.name); out.emit("error", err); }); }); return out; } startTimer() { return new Profiler(this); } profile(id, ...args) { const time = Date.now(); if (this.profilers[id]) { const timeEnd = this.profilers[id]; delete this.profilers[id]; if (typeof args[args.length - 2] === "function") { console.warn( "Callback function no longer supported as of winston@3.0.0" ); args.pop(); } const info = typeof args[args.length - 1] === "object" ? args.pop() : {}; info.level = info.level || "info"; info.durationMs = time - timeEnd; info.message = info.message || id; return this.write(info); } this.profilers[id] = time; return this; } handleExceptions(...args) { console.warn( "Deprecated: .handleExceptions() will be removed in winston@4. Use .exceptions.handle()" ); this.exceptions.handle(...args); } unhandleExceptions(...args) { console.warn( "Deprecated: .unhandleExceptions() will be removed in winston@4. Use .exceptions.unhandle()" ); this.exceptions.unhandle(...args); } cli() { throw new Error( [ "Logger.cli() was removed in winston@3.0.0", "Use a custom winston.formats.cli() instead.", "See: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md" ].join("\n") ); } _onEvent(event, transport) { function transportEvent(err) { if (event === "error" && !this.transports.includes(transport)) { this.add(transport); } this.emit(event, err, transport); } if (!transport["__winston" + event]) { transport["__winston" + event] = transportEvent.bind(this); transport.on(event, transport["__winston" + event]); } } _addDefaultMeta(msg) { if (this.defaultMeta) { Object.assign(msg, this.defaultMeta); } } }; function getLevelValue(levels, level) { const value = levels[level]; if (!value && value !== 0) { return null; } return value; } Object.defineProperty(Logger.prototype, "transports", { configurable: false, enumerable: true, get() { const { pipes } = this._readableState; return !Array.isArray(pipes) ? [pipes].filter(Boolean) : pipes; } }); module2.exports = Logger; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/create-logger.js var require_create_logger = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/create-logger.js"(exports, module2) { "use strict"; var { LEVEL } = require_triple_beam(); var config4 = require_config2(); var Logger = require_logger2(); var debug = require_node3()("winston:create-logger"); function isLevelEnabledFunctionName(level) { return "is" + level.charAt(0).toUpperCase() + level.slice(1) + "Enabled"; } module2.exports = function(opts = {}) { opts.levels = opts.levels || config4.npm.levels; class DerivedLogger extends Logger { constructor(options) { super(options); } } const logger = new DerivedLogger(opts); Object.keys(opts.levels).forEach(function(level) { debug('Define prototype method for "%s"', level); if (level === "log") { console.warn('Level "log" not defined: conflicts with the method "log". Use a different level name.'); return; } DerivedLogger.prototype[level] = function(...args) { const self2 = this || logger; if (args.length === 1) { const [msg] = args; const info = msg && msg.message && msg || { message: msg }; info.level = info[LEVEL] = level; self2._addDefaultMeta(info); self2.write(info); return this || logger; } if (args.length === 0) { self2.log(level, ""); return self2; } return self2.log(level, ...args); }; DerivedLogger.prototype[isLevelEnabledFunctionName(level)] = function() { return (this || logger).isLevelEnabled(level); }; }); return logger; }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/container.js var require_container = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston/container.js"(exports, module2) { "use strict"; var createLogger3 = require_create_logger(); module2.exports = class Container { constructor(options = {}) { this.loggers = /* @__PURE__ */ new Map(); this.options = options; } add(id, options) { if (!this.loggers.has(id)) { options = Object.assign({}, options || this.options); const existing = options.transports || this.options.transports; options.transports = existing ? existing.slice() : []; const logger = createLogger3(options); logger.on("close", () => this._delete(id)); this.loggers.set(id, logger); } return this.loggers.get(id); } get(id, options) { return this.add(id, options); } has(id) { return !!this.loggers.has(id); } close(id) { if (id) { return this._removeLogger(id); } this.loggers.forEach((val, key) => this._removeLogger(key)); } _removeLogger(id) { if (!this.loggers.has(id)) { return; } const logger = this.loggers.get(id); logger.close(); this._delete(id); } _delete(id) { this.loggers.delete(id); } }; } }); // ../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston.js var require_winston = __commonJS({ "../../node_modules/.pnpm/winston@3.4.0/node_modules/winston/lib/winston.js"(exports) { "use strict"; var logform = require_logform(); var { warn } = require_common(); exports.version = require_package().version; exports.transports = require_transports(); exports.config = require_config2(); exports.addColors = logform.levels; exports.format = logform.format; exports.createLogger = require_create_logger(); exports.ExceptionHandler = require_exception_handler(); exports.RejectionHandler = require_rejection_handler(); exports.Container = require_container(); exports.Transport = require_winston_transport(); exports.loggers = new exports.Container(); var defaultLogger = exports.createLogger(); Object.keys(exports.config.npm.levels).concat([ "log", "query", "stream", "add", "remove", "clear", "profile", "startTimer", "handleExceptions", "unhandleExceptions", "handleRejections", "unhandleRejections", "configure", "child" ]).forEach( (method) => exports[method] = (...args) => defaultLogger[method](...args) ); Object.defineProperty(exports, "level", { get() { return defaultLogger.level; }, set(val) { defaultLogger.level = val; } }); Object.defineProperty(exports, "exceptions", { get() { return defaultLogger.exceptions; } }); ["exitOnError"].forEach((prop) => { Object.defineProperty(exports, prop, { get() { return defaultLogger[prop]; }, set(val) { defaultLogger[prop] = val; } }); }); Object.defineProperty(exports, "default", { get() { return { exceptionHandlers: defaultLogger.exceptionHandlers, rejectionHandlers: defaultLogger.rejectionHandlers, transports: defaultLogger.transports }; } }); warn.deprecated(exports, "setLevels"); warn.forFunctions(exports, "useFormat", ["cli"]); warn.forProperties(exports, "useFormat", ["padLevels", "stripColors"]); warn.forFunctions(exports, "deprecated", [ "addRewriter", "addFilter", "clone", "extend" ]); warn.forProperties(exports, "deprecated", ["emitErrs", "levelLength"]); warn.moved(exports, "createLogger", "Logger"); } }); // ../../node_modules/.pnpm/sqlstring@2.3.3/node_modules/sqlstring/lib/SqlString.js var require_SqlString = __commonJS({ "../../node_modules/.pnpm/sqlstring@2.3.3/node_modules/sqlstring/lib/SqlString.js"(exports) { var SqlString = exports; var ID_GLOBAL_REGEXP = /`/g; var QUAL_GLOBAL_REGEXP = /\./g; var CHARS_GLOBAL_REGEXP = /[\0\b\t\n\r\x1a\"\'\\]/g; var CHARS_ESCAPE_MAP = { "\0": "\\0", "\b": "\\b", " ": "\\t", "\n": "\\n", "\r": "\\r", "": "\\Z", '"': '\\"', "'": "\\'", "\\": "\\\\" }; SqlString.escapeId = function escapeId(val, forbidQualified) { if (Array.isArray(val)) { var sql = ""; for (var i2 = 0; i2 < val.length; i2++) { sql += (i2 === 0 ? "" : ", ") + SqlString.escapeId(val[i2], forbidQualified); } return sql; } else if (forbidQualified) { return "`" + String(val).replace(ID_GLOBAL_REGEXP, "``") + "`"; } else { return "`" + String(val).replace(ID_GLOBAL_REGEXP, "``").replace(QUAL_GLOBAL_REGEXP, "`.`") + "`"; } }; SqlString.escape = function escape(val, stringifyObjects, timeZone) { if (val === void 0 || val === null) { return "NULL"; } switch (typeof val) { case "boolean": return val ? "true" : "false"; case "number": return val + ""; case "object": if (Object.prototype.toString.call(val) === "[object Date]") { return SqlString.dateToString(val, timeZone || "local"); } else if (Array.isArray(val)) { return SqlString.arrayToList(val, timeZone); } else if (Buffer.isBuffer(val)) { return SqlString.bufferToString(val); } else if (typeof val.toSqlString === "function") { return String(val.toSqlString()); } else if (stringifyObjects) { return escapeString(val.toString()); } else { return SqlString.objectToValues(val, timeZone); } default: return escapeString(val); } }; SqlString.arrayToList = function arrayToList(array, timeZone) { var sql = ""; for (var i2 = 0; i2 < array.length; i2++) { var val = array[i2]; if (Array.isArray(val)) { sql += (i2 === 0 ? "" : ", ") + "(" + SqlString.arrayToList(val, timeZone) + ")"; } else { sql += (i2 === 0 ? "" : ", ") + SqlString.escape(val, true, timeZone); } } return sql; }; SqlString.format = function format3(sql, values, stringifyObjects, timeZone) { if (values == null) { return sql; } if (!Array.isArray(values)) { values = [values]; } var chunkIndex = 0; var placeholdersRegex = /\?+/g; var result = ""; var valuesIndex = 0; var match; while (valuesIndex < values.length && (match = placeholdersRegex.exec(sql))) { var len = match[0].length; if (len > 2) { continue; } var value = len === 2 ? SqlString.escapeId(values[valuesIndex]) : SqlString.escape(values[valuesIndex], stringifyObjects, timeZone); result += sql.slice(chunkIndex, match.index) + value; chunkIndex = placeholdersRegex.lastIndex; valuesIndex++; } if (chunkIndex === 0) { return sql; } if (chunkIndex < sql.length) { return result + sql.slice(chunkIndex); } return result; }; SqlString.dateToString = function dateToString(date, timeZone) { var dt = new Date(date); if (isNaN(dt.getTime())) { return "NULL"; } var year; var month; var day; var hour; var minute; var second; var millisecond; if (timeZone === "local") { year = dt.getFullYear(); month = dt.getMonth() + 1; day = dt.getDate(); hour = dt.getHours(); minute = dt.getMinutes(); second = dt.getSeconds(); millisecond = dt.getMilliseconds(); } else { var tz = convertTimezone(timeZone); if (tz !== false && tz !== 0) { dt.setTime(dt.getTime() + tz * 6e4); } year = dt.getUTCFullYear(); month = dt.getUTCMonth() + 1; day = dt.getUTCDate(); hour = dt.getUTCHours(); minute = dt.getUTCMinutes(); second = dt.getUTCSeconds(); millisecond = dt.getUTCMilliseconds(); } var str = zeroPad(year, 4) + "-" + zeroPad(month, 2) + "-" + zeroPad(day, 2) + " " + zeroPad(hour, 2) + ":" + zeroPad(minute, 2) + ":" + zeroPad(second, 2) + "." + zeroPad(millisecond, 3); return escapeString(str); }; SqlString.bufferToString = function bufferToString(buffer) { return "X" + escapeString(buffer.toString("hex")); }; SqlString.objectToValues = function objectToValues(object, timeZone) { var sql = ""; for (var key in object) { var val = object[key]; if (typeof val === "function") { continue; } sql += (sql.length === 0 ? "" : ", ") + SqlString.escapeId(key) + " = " + SqlString.escape(val, true, timeZone); } return sql; }; SqlString.raw = function raw(sql) { if (typeof sql !== "string") { throw new TypeError("argument sql must be a string"); } return { toSqlString: function toSqlString() { return sql; } }; }; function escapeString(val) { var chunkIndex = CHARS_GLOBAL_REGEXP.lastIndex = 0; var escapedVal = ""; var match; while (match = CHARS_GLOBAL_REGEXP.exec(val)) { escapedVal += val.slice(chunkIndex, match.index) + CHARS_ESCAPE_MAP[match[0]]; chunkIndex = CHARS_GLOBAL_REGEXP.lastIndex; } if (chunkIndex === 0) { return "'" + val + "'"; } if (chunkIndex < val.length) { return "'" + escapedVal + val.slice(chunkIndex) + "'"; } return "'" + escapedVal + "'"; } function zeroPad(number, length) { number = number.toString(); while (number.length < length) { number = "0" + number; } return number; } function convertTimezone(tz) { if (tz === "Z") { return 0; } var m2 = tz.match(/([\+\-\s])(\d\d):?(\d\d)?/); if (m2) { return (m2[1] === "-" ? -1 : 1) * (parseInt(m2[2], 10) + (m2[3] ? parseInt(m2[3], 10) : 0) / 60) * 60; } return false; } } }); // ../../node_modules/.pnpm/sqlstring@2.3.3/node_modules/sqlstring/index.js var require_sqlstring = __commonJS({ "../../node_modules/.pnpm/sqlstring@2.3.3/node_modules/sqlstring/index.js"(exports, module2) { module2.exports = require_SqlString(); } }); // ../../node_modules/.pnpm/denque@2.1.0/node_modules/denque/index.js var require_denque = __commonJS({ "../../node_modules/.pnpm/denque@2.1.0/node_modules/denque/index.js"(exports, module2) { "use strict"; function Denque(array, options) { var options = options || {}; this._capacity = options.capacity; this._head = 0; this._tail = 0; if (Array.isArray(array)) { this._fromArray(array); } else { this._capacityMask = 3; this._list = new Array(4); } } Denque.prototype.peekAt = function peekAt(index) { var i2 = index; if (i2 !== (i2 | 0)) { return void 0; } var len = this.size(); if (i2 >= len || i2 < -len) return void 0; if (i2 < 0) i2 += len; i2 = this._head + i2 & this._capacityMask; return this._list[i2]; }; Denque.prototype.get = function get(i2) { return this.peekAt(i2); }; Denque.prototype.peek = function peek() { if (this._head === this._tail) return void 0; return this._list[this._head]; }; Denque.prototype.peekFront = function peekFront() { return this.peek(); }; Denque.prototype.peekBack = function peekBack() { return this.peekAt(-1); }; Object.defineProperty(Denque.prototype, "length", { get: function length() { return this.size(); } }); Denque.prototype.size = function size() { if (this._head === this._tail) return 0; if (this._head < this._tail) return this._tail - this._head; else return this._capacityMask + 1 - (this._head - this._tail); }; Denque.prototype.unshift = function unshift(item) { if (arguments.length === 0) return this.size(); var len = this._list.length; this._head = this._head - 1 + len & this._capacityMask; this._list[this._head] = item; if (this._tail === this._head) this._growArray(); if (this._capacity && this.size() > this._capacity) this.pop(); if (this._head < this._tail) return this._tail - this._head; else return this._capacityMask + 1 - (this._head - this._tail); }; Denque.prototype.shift = function shift() { var head = this._head; if (head === this._tail) return void 0; var item = this._list[head]; this._list[head] = void 0; this._head = head + 1 & this._capacityMask; if (head < 2 && this._tail > 1e4 && this._tail <= this._list.length >>> 2) this._shrinkArray(); return item; }; Denque.prototype.push = function push(item) { if (arguments.length === 0) return this.size(); var tail = this._tail; this._list[tail] = item; this._tail = tail + 1 & this._capacityMask; if (this._tail === this._head) { this._growArray(); } if (this._capacity && this.size() > this._capacity) { this.shift(); } if (this._head < this._tail) return this._tail - this._head; else return this._capacityMask + 1 - (this._head - this._tail); }; Denque.prototype.pop = function pop() { var tail = this._tail; if (tail === this._head) return void 0; var len = this._list.length; this._tail = tail - 1 + len & this._capacityMask; var item = this._list[this._tail]; this._list[this._tail] = void 0; if (this._head < 2 && tail > 1e4 && tail <= len >>> 2) this._shrinkArray(); return item; }; Denque.prototype.removeOne = function removeOne(index) { var i2 = index; if (i2 !== (i2 | 0)) { return void 0; } if (this._head === this._tail) return void 0; var size = this.size(); var len = this._list.length; if (i2 >= size || i2 < -size) return void 0; if (i2 < 0) i2 += size; i2 = this._head + i2 & this._capacityMask; var item = this._list[i2]; var k; if (index < size / 2) { for (k = index; k > 0; k--) { this._list[i2] = this._list[i2 = i2 - 1 + len & this._capacityMask]; } this._list[i2] = void 0; this._head = this._head + 1 + len & this._capacityMask; } else { for (k = size - 1 - index; k > 0; k--) { this._list[i2] = this._list[i2 = i2 + 1 + len & this._capacityMask]; } this._list[i2] = void 0; this._tail = this._tail - 1 + len & this._capacityMask; } return item; }; Denque.prototype.remove = function remove(index, count) { var i2 = index; var removed; var del_count = count; if (i2 !== (i2 | 0)) { return void 0; } if (this._head === this._tail) return void 0; var size = this.size(); var len = this._list.length; if (i2 >= size || i2 < -size || count < 1) return void 0; if (i2 < 0) i2 += size; if (count === 1 || !count) { removed = new Array(1); removed[0] = this.removeOne(i2); return removed; } if (i2 === 0 && i2 + count >= size) { removed = this.toArray(); this.clear(); return removed; } if (i2 + count > size) count = size - i2; var k; removed = new Array(count); for (k = 0; k < count; k++) { removed[k] = this._list[this._head + i2 + k & this._capacityMask]; } i2 = this._head + i2 & this._capacityMask; if (index + count === size) { this._tail = this._tail - count + len & this._capacityMask; for (k = count; k > 0; k--) { this._list[i2 = i2 + 1 + len & this._capacityMask] = void 0; } return removed; } if (index === 0) { this._head = this._head + count + len & this._capacityMask; for (k = count - 1; k > 0; k--) { this._list[i2 = i2 + 1 + len & this._capacityMask] = void 0; } return removed; } if (i2 < size / 2) { this._head = this._head + index + count + len & this._capacityMask; for (k = index; k > 0; k--) { this.unshift(this._list[i2 = i2 - 1 + len & this._capacityMask]); } i2 = this._head - 1 + len & this._capacityMask; while (del_count > 0) { this._list[i2 = i2 - 1 + len & this._capacityMask] = void 0; del_count--; } if (index < 0) this._tail = i2; } else { this._tail = i2; i2 = i2 + count + len & this._capacityMask; for (k = size - (count + index); k > 0; k--) { this.push(this._list[i2++]); } i2 = this._tail; while (del_count > 0) { this._list[i2 = i2 + 1 + len & this._capacityMask] = void 0; del_count--; } } if (this._head < 2 && this._tail > 1e4 && this._tail <= len >>> 2) this._shrinkArray(); return removed; }; Denque.prototype.splice = function splice(index, count) { var i2 = index; if (i2 !== (i2 | 0)) { return void 0; } var size = this.size(); if (i2 < 0) i2 += size; if (i2 > size) return void 0; if (arguments.length > 2) { var k; var temp; var removed; var arg_len = arguments.length; var len = this._list.length; var arguments_index = 2; if (!size || i2 < size / 2) { temp = new Array(i2); for (k = 0; k < i2; k++) { temp[k] = this._list[this._head + k & this._capacityMask]; } if (count === 0) { removed = []; if (i2 > 0) { this._head = this._head + i2 + len & this._capacityMask; } } else { removed = this.remove(i2, count); this._head = this._head + i2 + len & this._capacityMask; } while (arg_len > arguments_index) { this.unshift(arguments[--arg_len]); } for (k = i2; k > 0; k--) { this.unshift(temp[k - 1]); } } else { temp = new Array(size - (i2 + count)); var leng = temp.length; for (k = 0; k < leng; k++) { temp[k] = this._list[this._head + i2 + count + k & this._capacityMask]; } if (count === 0) { removed = []; if (i2 != size) { this._tail = this._head + i2 + len & this._capacityMask; } } else { removed = this.remove(i2, count); this._tail = this._tail - leng + len & this._capacityMask; } while (arguments_index < arg_len) { this.push(arguments[arguments_index++]); } for (k = 0; k < leng; k++) { this.push(temp[k]); } } return removed; } else { return this.remove(i2, count); } }; Denque.prototype.clear = function clear() { this._list = new Array(this._list.length); this._head = 0; this._tail = 0; }; Denque.prototype.isEmpty = function isEmpty() { return this._head === this._tail; }; Denque.prototype.toArray = function toArray() { return this._copyArray(false); }; Denque.prototype._fromArray = function _fromArray(array) { var length = array.length; var capacity = this._nextPowerOf2(length); this._list = new Array(capacity); this._capacityMask = capacity - 1; this._tail = length; for (var i2 = 0; i2 < length; i2++) this._list[i2] = array[i2]; }; Denque.prototype._copyArray = function _copyArray(fullCopy, size) { var src = this._list; var capacity = src.length; var length = this.length; size = size | length; if (size == length && this._head < this._tail) { return this._list.slice(this._head, this._tail); } var dest = new Array(size); var k = 0; var i2; if (fullCopy || this._head > this._tail) { for (i2 = this._head; i2 < capacity; i2++) dest[k++] = src[i2]; for (i2 = 0; i2 < this._tail; i2++) dest[k++] = src[i2]; } else { for (i2 = this._head; i2 < this._tail; i2++) dest[k++] = src[i2]; } return dest; }; Denque.prototype._growArray = function _growArray() { if (this._head != 0) { var newList = this._copyArray(true, this._list.length << 1); this._tail = this._list.length; this._head = 0; this._list = newList; } else { this._tail = this._list.length; this._list.length <<= 1; } this._capacityMask = this._capacityMask << 1 | 1; }; Denque.prototype._shrinkArray = function _shrinkArray() { this._list.length >>>= 1; this._capacityMask >>>= 1; }; Denque.prototype._nextPowerOf2 = function _nextPowerOf2(num) { var log2 = Math.log(num) / Math.log(2); var nextPow2 = 1 << log2 + 1; return Math.max(nextPow2, 4); }; module2.exports = Denque; } }); // ../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js var require_iterator2 = __commonJS({ "../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/iterator.js"(exports, module2) { "use strict"; module2.exports = function(Yallist) { Yallist.prototype[Symbol.iterator] = function* () { for (let walker = this.head; walker; walker = walker.next) { yield walker.value; } }; }; } }); // ../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js var require_yallist = __commonJS({ "../../node_modules/.pnpm/yallist@4.0.0/node_modules/yallist/yallist.js"(exports, module2) { "use strict"; module2.exports = Yallist; Yallist.Node = Node; Yallist.create = Yallist; function Yallist(list) { var self2 = this; if (!(self2 instanceof Yallist)) { self2 = new Yallist(); } self2.tail = null; self2.head = null; self2.length = 0; if (list && typeof list.forEach === "function") { list.forEach(function(item) { self2.push(item); }); } else if (arguments.length > 0) { for (var i2 = 0, l = arguments.length; i2 < l; i2++) { self2.push(arguments[i2]); } } return self2; } Yallist.prototype.removeNode = function(node) { if (node.list !== this) { throw new Error("removing node which does not belong to this list"); } var next = node.next; var prev = node.prev; if (next) { next.prev = prev; } if (prev) { prev.next = next; } if (node === this.head) { this.head = next; } if (node === this.tail) { this.tail = prev; } node.list.length--; node.next = null; node.prev = null; node.list = null; return next; }; Yallist.prototype.unshiftNode = function(node) { if (node === this.head) { return; } if (node.list) { node.list.removeNode(node); } var head = this.head; node.list = this; node.next = head; if (head) { head.prev = node; } this.head = node; if (!this.tail) { this.tail = node; } this.length++; }; Yallist.prototype.pushNode = function(node) { if (node === this.tail) { return; } if (node.list) { node.list.removeNode(node); } var tail = this.tail; node.list = this; node.prev = tail; if (tail) { tail.next = node; } this.tail = node; if (!this.head) { this.head = node; } this.length++; }; Yallist.prototype.push = function() { for (var i2 = 0, l = arguments.length; i2 < l; i2++) { push(this, arguments[i2]); } return this.length; }; Yallist.prototype.unshift = function() { for (var i2 = 0, l = arguments.length; i2 < l; i2++) { unshift(this, arguments[i2]); } return this.length; }; Yallist.prototype.pop = function() { if (!this.tail) { return void 0; } var res = this.tail.value; this.tail = this.tail.prev; if (this.tail) { this.tail.next = null; } else { this.head = null; } this.length--; return res; }; Yallist.prototype.shift = function() { if (!this.head) { return void 0; } var res = this.head.value; this.head = this.head.next; if (this.head) { this.head.prev = null; } else { this.tail = null; } this.length--; return res; }; Yallist.prototype.forEach = function(fn, thisp) { thisp = thisp || this; for (var walker = this.head, i2 = 0; walker !== null; i2++) { fn.call(thisp, walker.value, i2, this); walker = walker.next; } }; Yallist.prototype.forEachReverse = function(fn, thisp) { thisp = thisp || this; for (var walker = this.tail, i2 = this.length - 1; walker !== null; i2--) { fn.call(thisp, walker.value, i2, this); walker = walker.prev; } }; Yallist.prototype.get = function(n) { for (var i2 = 0, walker = this.head; walker !== null && i2 < n; i2++) { walker = walker.next; } if (i2 === n && walker !== null) { return walker.value; } }; Yallist.prototype.getReverse = function(n) { for (var i2 = 0, walker = this.tail; walker !== null && i2 < n; i2++) { walker = walker.prev; } if (i2 === n && walker !== null) { return walker.value; } }; Yallist.prototype.map = function(fn, thisp) { thisp = thisp || this; var res = new Yallist(); for (var walker = this.head; walker !== null; ) { res.push(fn.call(thisp, walker.value, this)); walker = walker.next; } return res; }; Yallist.prototype.mapReverse = function(fn, thisp) { thisp = thisp || this; var res = new Yallist(); for (var walker = this.tail; walker !== null; ) { res.push(fn.call(thisp, walker.value, this)); walker = walker.prev; } return res; }; Yallist.prototype.reduce = function(fn, initial) { var acc; var walker = this.head; if (arguments.length > 1) { acc = initial; } else if (this.head) { walker = this.head.next; acc = this.head.value; } else { throw new TypeError("Reduce of empty list with no initial value"); } for (var i2 = 0; walker !== null; i2++) { acc = fn(acc, walker.value, i2); walker = walker.next; } return acc; }; Yallist.prototype.reduceReverse = function(fn, initial) { var acc; var walker = this.tail; if (arguments.length > 1) { acc = initial; } else if (this.tail) { walker = this.tail.prev; acc = this.tail.value; } else { throw new TypeError("Reduce of empty list with no initial value"); } for (var i2 = this.length - 1; walker !== null; i2--) { acc = fn(acc, walker.value, i2); walker = walker.prev; } return acc; }; Yallist.prototype.toArray = function() { var arr = new Array(this.length); for (var i2 = 0, walker = this.head; walker !== null; i2++) { arr[i2] = walker.value; walker = walker.next; } return arr; }; Yallist.prototype.toArrayReverse = function() { var arr = new Array(this.length); for (var i2 = 0, walker = this.tail; walker !== null; i2++) { arr[i2] = walker.value; walker = walker.prev; } return arr; }; Yallist.prototype.slice = function(from, to) { to = to || this.length; if (to < 0) { to += this.length; } from = from || 0; if (from < 0) { from += this.length; } var ret = new Yallist(); if (to < from || to < 0) { return ret; } if (from < 0) { from = 0; } if (to > this.length) { to = this.length; } for (var i2 = 0, walker = this.head; walker !== null && i2 < from; i2++) { walker = walker.next; } for (; walker !== null && i2 < to; i2++, walker = walker.next) { ret.push(walker.value); } return ret; }; Yallist.prototype.sliceReverse = function(from, to) { to = to || this.length; if (to < 0) { to += this.length; } from = from || 0; if (from < 0) { from += this.length; } var ret = new Yallist(); if (to < from || to < 0) { return ret; } if (from < 0) { from = 0; } if (to > this.length) { to = this.length; } for (var i2 = this.length, walker = this.tail; walker !== null && i2 > to; i2--) { walker = walker.prev; } for (; walker !== null && i2 > from; i2--, walker = walker.prev) { ret.push(walker.value); } return ret; }; Yallist.prototype.splice = function(start, deleteCount, ...nodes) { if (start > this.length) { start = this.length - 1; } if (start < 0) { start = this.length + start; } for (var i2 = 0, walker = this.head; walker !== null && i2 < start; i2++) { walker = walker.next; } var ret = []; for (var i2 = 0; walker && i2 < deleteCount; i2++) { ret.push(walker.value); walker = this.removeNode(walker); } if (walker === null) { walker = this.tail; } if (walker !== this.head && walker !== this.tail) { walker = walker.prev; } for (var i2 = 0; i2 < nodes.length; i2++) { walker = insert(this, walker, nodes[i2]); } return ret; }; Yallist.prototype.reverse = function() { var head = this.head; var tail = this.tail; for (var walker = head; walker !== null; walker = walker.prev) { var p = walker.prev; walker.prev = walker.next; walker.next = p; } this.head = tail; this.tail = head; return this; }; function insert(self2, node, value) { var inserted = node === self2.head ? new Node(value, null, node, self2) : new Node(value, node, node.next, self2); if (inserted.next === null) { self2.tail = inserted; } if (inserted.prev === null) { self2.head = inserted; } self2.length++; return inserted; } function push(self2, item) { self2.tail = new Node(item, self2.tail, null, self2); if (!self2.head) { self2.head = self2.tail; } self2.length++; } function unshift(self2, item) { self2.head = new Node(item, null, self2.head, self2); if (!self2.tail) { self2.tail = self2.head; } self2.length++; } function Node(value, prev, next, list) { if (!(this instanceof Node)) { return new Node(value, prev, next, list); } this.list = list; this.value = value; if (prev) { prev.next = this; this.prev = prev; } else { this.prev = null; } if (next) { next.prev = this; this.next = next; } else { this.next = null; } } try { require_iterator2()(Yallist); } catch (er) { } } }); // ../../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js var require_lru_cache = __commonJS({ "../../node_modules/.pnpm/lru-cache@6.0.0/node_modules/lru-cache/index.js"(exports, module2) { "use strict"; var Yallist = require_yallist(); var MAX = Symbol("max"); var LENGTH = Symbol("length"); var LENGTH_CALCULATOR = Symbol("lengthCalculator"); var ALLOW_STALE = Symbol("allowStale"); var MAX_AGE = Symbol("maxAge"); var DISPOSE = Symbol("dispose"); var NO_DISPOSE_ON_SET = Symbol("noDisposeOnSet"); var LRU_LIST = Symbol("lruList"); var CACHE = Symbol("cache"); var UPDATE_AGE_ON_GET = Symbol("updateAgeOnGet"); var naiveLength = () => 1; var LRUCache = class { constructor(options) { if (typeof options === "number") options = { max: options }; if (!options) options = {}; if (options.max && (typeof options.max !== "number" || options.max < 0)) throw new TypeError("max must be a non-negative number"); const max = this[MAX] = options.max || Infinity; const lc = options.length || naiveLength; this[LENGTH_CALCULATOR] = typeof lc !== "function" ? naiveLength : lc; this[ALLOW_STALE] = options.stale || false; if (options.maxAge && typeof options.maxAge !== "number") throw new TypeError("maxAge must be a number"); this[MAX_AGE] = options.maxAge || 0; this[DISPOSE] = options.dispose; this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false; this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false; this.reset(); } set max(mL) { if (typeof mL !== "number" || mL < 0) throw new TypeError("max must be a non-negative number"); this[MAX] = mL || Infinity; trim(this); } get max() { return this[MAX]; } set allowStale(allowStale) { this[ALLOW_STALE] = !!allowStale; } get allowStale() { return this[ALLOW_STALE]; } set maxAge(mA) { if (typeof mA !== "number") throw new TypeError("maxAge must be a non-negative number"); this[MAX_AGE] = mA; trim(this); } get maxAge() { return this[MAX_AGE]; } set lengthCalculator(lC) { if (typeof lC !== "function") lC = naiveLength; if (lC !== this[LENGTH_CALCULATOR]) { this[LENGTH_CALCULATOR] = lC; this[LENGTH] = 0; this[LRU_LIST].forEach((hit) => { hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key); this[LENGTH] += hit.length; }); } trim(this); } get lengthCalculator() { return this[LENGTH_CALCULATOR]; } get length() { return this[LENGTH]; } get itemCount() { return this[LRU_LIST].length; } rforEach(fn, thisp) { thisp = thisp || this; for (let walker = this[LRU_LIST].tail; walker !== null; ) { const prev = walker.prev; forEachStep(this, fn, walker, thisp); walker = prev; } } forEach(fn, thisp) { thisp = thisp || this; for (let walker = this[LRU_LIST].head; walker !== null; ) { const next = walker.next; forEachStep(this, fn, walker, thisp); walker = next; } } keys() { return this[LRU_LIST].toArray().map((k) => k.key); } values() { return this[LRU_LIST].toArray().map((k) => k.value); } reset() { if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) { this[LRU_LIST].forEach((hit) => this[DISPOSE](hit.key, hit.value)); } this[CACHE] = /* @__PURE__ */ new Map(); this[LRU_LIST] = new Yallist(); this[LENGTH] = 0; } dump() { return this[LRU_LIST].map((hit) => isStale(this, hit) ? false : { k: hit.key, v: hit.value, e: hit.now + (hit.maxAge || 0) }).toArray().filter((h3) => h3); } dumpLru() { return this[LRU_LIST]; } set(key, value, maxAge) { maxAge = maxAge || this[MAX_AGE]; if (maxAge && typeof maxAge !== "number") throw new TypeError("maxAge must be a number"); const now = maxAge ? Date.now() : 0; const len = this[LENGTH_CALCULATOR](value, key); if (this[CACHE].has(key)) { if (len > this[MAX]) { del(this, this[CACHE].get(key)); return false; } const node = this[CACHE].get(key); const item = node.value; if (this[DISPOSE]) { if (!this[NO_DISPOSE_ON_SET]) this[DISPOSE](key, item.value); } item.now = now; item.maxAge = maxAge; item.value = value; this[LENGTH] += len - item.length; item.length = len; this.get(key); trim(this); return true; } const hit = new Entry(key, value, len, now, maxAge); if (hit.length > this[MAX]) { if (this[DISPOSE]) this[DISPOSE](key, value); return false; } this[LENGTH] += hit.length; this[LRU_LIST].unshift(hit); this[CACHE].set(key, this[LRU_LIST].head); trim(this); return true; } has(key) { if (!this[CACHE].has(key)) return false; const hit = this[CACHE].get(key).value; return !isStale(this, hit); } get(key) { return get(this, key, true); } peek(key) { return get(this, key, false); } pop() { const node = this[LRU_LIST].tail; if (!node) return null; del(this, node); return node.value; } del(key) { del(this, this[CACHE].get(key)); } load(arr) { this.reset(); const now = Date.now(); for (let l = arr.length - 1; l >= 0; l--) { const hit = arr[l]; const expiresAt = hit.e || 0; if (expiresAt === 0) this.set(hit.k, hit.v); else { const maxAge = expiresAt - now; if (maxAge > 0) { this.set(hit.k, hit.v, maxAge); } } } } prune() { this[CACHE].forEach((value, key) => get(this, key, false)); } }; var get = (self2, key, doUse) => { const node = self2[CACHE].get(key); if (node) { const hit = node.value; if (isStale(self2, hit)) { del(self2, node); if (!self2[ALLOW_STALE]) return void 0; } else { if (doUse) { if (self2[UPDATE_AGE_ON_GET]) node.value.now = Date.now(); self2[LRU_LIST].unshiftNode(node); } } return hit.value; } }; var isStale = (self2, hit) => { if (!hit || !hit.maxAge && !self2[MAX_AGE]) return false; const diff = Date.now() - hit.now; return hit.maxAge ? diff > hit.maxAge : self2[MAX_AGE] && diff > self2[MAX_AGE]; }; var trim = (self2) => { if (self2[LENGTH] > self2[MAX]) { for (let walker = self2[LRU_LIST].tail; self2[LENGTH] > self2[MAX] && walker !== null; ) { const prev = walker.prev; del(self2, walker); walker = prev; } } }; var del = (self2, node) => { if (node) { const hit = node.value; if (self2[DISPOSE]) self2[DISPOSE](hit.key, hit.value); self2[LENGTH] -= hit.length; self2[CACHE].delete(hit.key); self2[LRU_LIST].removeNode(node); } }; var Entry = class { constructor(key, value, length, now, maxAge) { this.key = key; this.value = value; this.length = length; this.now = now; this.maxAge = maxAge || 0; } }; var forEachStep = (self2, fn, node, thisp) => { let hit = node.value; if (isStale(self2, hit)) { del(self2, node); if (!self2[ALLOW_STALE]) hit = void 0; } if (hit) fn.call(thisp, hit.value, hit.key, self2); }; module2.exports = LRUCache; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/errors.js var require_errors3 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/errors.js"(exports) { "use strict"; exports.EE_CANTCREATEFILE = 1; exports.EE_READ = 2; exports.EE_WRITE = 3; exports.EE_BADCLOSE = 4; exports.EE_OUTOFMEMORY = 5; exports.EE_DELETE = 6; exports.EE_LINK = 7; exports.EE_EOFERR = 9; exports.EE_CANTLOCK = 10; exports.EE_CANTUNLOCK = 11; exports.EE_DIR = 12; exports.EE_STAT = 13; exports.EE_CANT_CHSIZE = 14; exports.EE_CANT_OPEN_STREAM = 15; exports.EE_GETWD = 16; exports.EE_SETWD = 17; exports.EE_LINK_WARNING = 18; exports.EE_OPEN_WARNING = 19; exports.EE_DISK_FULL = 20; exports.EE_CANT_MKDIR = 21; exports.EE_UNKNOWN_CHARSET = 22; exports.EE_OUT_OF_FILERESOURCES = 23; exports.EE_CANT_READLINK = 24; exports.EE_CANT_SYMLINK = 25; exports.EE_REALPATH = 26; exports.EE_SYNC = 27; exports.EE_UNKNOWN_COLLATION = 28; exports.EE_FILENOTFOUND = 29; exports.EE_FILE_NOT_CLOSED = 30; exports.EE_CHANGE_OWNERSHIP = 31; exports.EE_CHANGE_PERMISSIONS = 32; exports.EE_CANT_SEEK = 33; exports.HA_ERR_KEY_NOT_FOUND = 120; exports.HA_ERR_FOUND_DUPP_KEY = 121; exports.HA_ERR_INTERNAL_ERROR = 122; exports.HA_ERR_RECORD_CHANGED = 123; exports.HA_ERR_WRONG_INDEX = 124; exports.HA_ERR_CRASHED = 126; exports.HA_ERR_WRONG_IN_RECORD = 127; exports.HA_ERR_OUT_OF_MEM = 128; exports.HA_ERR_NOT_A_TABLE = 130; exports.HA_ERR_WRONG_COMMAND = 131; exports.HA_ERR_OLD_FILE = 132; exports.HA_ERR_NO_ACTIVE_RECORD = 133; exports.HA_ERR_RECORD_DELETED = 134; exports.HA_ERR_RECORD_FILE_FULL = 135; exports.HA_ERR_INDEX_FILE_FULL = 136; exports.HA_ERR_END_OF_FILE = 137; exports.HA_ERR_UNSUPPORTED = 138; exports.HA_ERR_TO_BIG_ROW = 139; exports.HA_WRONG_CREATE_OPTION = 140; exports.HA_ERR_FOUND_DUPP_UNIQUE = 141; exports.HA_ERR_UNKNOWN_CHARSET = 142; exports.HA_ERR_WRONG_MRG_TABLE_DEF = 143; exports.HA_ERR_CRASHED_ON_REPAIR = 144; exports.HA_ERR_CRASHED_ON_USAGE = 145; exports.HA_ERR_LOCK_WAIT_TIMEOUT = 146; exports.HA_ERR_LOCK_TABLE_FULL = 147; exports.HA_ERR_READ_ONLY_TRANSACTION = 148; exports.HA_ERR_LOCK_DEADLOCK = 149; exports.HA_ERR_CANNOT_ADD_FOREIGN = 150; exports.HA_ERR_NO_REFERENCED_ROW = 151; exports.HA_ERR_ROW_IS_REFERENCED = 152; exports.HA_ERR_NO_SAVEPOINT = 153; exports.HA_ERR_NON_UNIQUE_BLOCK_SIZE = 154; exports.HA_ERR_NO_SUCH_TABLE = 155; exports.HA_ERR_TABLE_EXIST = 156; exports.HA_ERR_NO_CONNECTION = 157; exports.HA_ERR_NULL_IN_SPATIAL = 158; exports.HA_ERR_TABLE_DEF_CHANGED = 159; exports.HA_ERR_NO_PARTITION_FOUND = 160; exports.HA_ERR_RBR_LOGGING_FAILED = 161; exports.HA_ERR_DROP_INDEX_FK = 162; exports.HA_ERR_FOREIGN_DUPLICATE_KEY = 163; exports.HA_ERR_TABLE_NEEDS_UPGRADE = 164; exports.HA_ERR_TABLE_READONLY = 165; exports.HA_ERR_AUTOINC_READ_FAILED = 166; exports.HA_ERR_AUTOINC_ERANGE = 167; exports.HA_ERR_GENERIC = 168; exports.HA_ERR_RECORD_IS_THE_SAME = 169; exports.HA_ERR_LOGGING_IMPOSSIBLE = 170; exports.HA_ERR_CORRUPT_EVENT = 171; exports.HA_ERR_NEW_FILE = 172; exports.HA_ERR_ROWS_EVENT_APPLY = 173; exports.HA_ERR_INITIALIZATION = 174; exports.HA_ERR_FILE_TOO_SHORT = 175; exports.HA_ERR_WRONG_CRC = 176; exports.HA_ERR_TOO_MANY_CONCURRENT_TRXS = 177; exports.HA_ERR_NOT_IN_LOCK_PARTITIONS = 178; exports.HA_ERR_INDEX_COL_TOO_LONG = 179; exports.HA_ERR_INDEX_CORRUPT = 180; exports.HA_ERR_UNDO_REC_TOO_BIG = 181; exports.HA_FTS_INVALID_DOCID = 182; exports.HA_ERR_TABLE_IN_FK_CHECK = 183; exports.HA_ERR_TABLESPACE_EXISTS = 184; exports.HA_ERR_TOO_MANY_FIELDS = 185; exports.HA_ERR_ROW_IN_WRONG_PARTITION = 186; exports.HA_ERR_INNODB_READ_ONLY = 187; exports.HA_ERR_FTS_EXCEED_RESULT_CACHE_LIMIT = 188; exports.HA_ERR_TEMP_FILE_WRITE_FAILURE = 189; exports.HA_ERR_INNODB_FORCED_RECOVERY = 190; exports.HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE = 191; exports.ER_HASHCHK = 1e3; exports.ER_NISAMCHK = 1001; exports.ER_NO = 1002; exports.ER_YES = 1003; exports.ER_CANT_CREATE_FILE = 1004; exports.ER_CANT_CREATE_TABLE = 1005; exports.ER_CANT_CREATE_DB = 1006; exports.ER_DB_CREATE_EXISTS = 1007; exports.ER_DB_DROP_EXISTS = 1008; exports.ER_DB_DROP_DELETE = 1009; exports.ER_DB_DROP_RMDIR = 1010; exports.ER_CANT_DELETE_FILE = 1011; exports.ER_CANT_FIND_SYSTEM_REC = 1012; exports.ER_CANT_GET_STAT = 1013; exports.ER_CANT_GET_WD = 1014; exports.ER_CANT_LOCK = 1015; exports.ER_CANT_OPEN_FILE = 1016; exports.ER_FILE_NOT_FOUND = 1017; exports.ER_CANT_READ_DIR = 1018; exports.ER_CANT_SET_WD = 1019; exports.ER_CHECKREAD = 1020; exports.ER_DISK_FULL = 1021; exports.ER_DUP_KEY = 1022; exports.ER_ERROR_ON_CLOSE = 1023; exports.ER_ERROR_ON_READ = 1024; exports.ER_ERROR_ON_RENAME = 1025; exports.ER_ERROR_ON_WRITE = 1026; exports.ER_FILE_USED = 1027; exports.ER_FILSORT_ABORT = 1028; exports.ER_FORM_NOT_FOUND = 1029; exports.ER_GET_ERRNO = 1030; exports.ER_ILLEGAL_HA = 1031; exports.ER_KEY_NOT_FOUND = 1032; exports.ER_NOT_FORM_FILE = 1033; exports.ER_NOT_KEYFILE = 1034; exports.ER_OLD_KEYFILE = 1035; exports.ER_OPEN_AS_READONLY = 1036; exports.ER_OUTOFMEMORY = 1037; exports.ER_OUT_OF_SORTMEMORY = 1038; exports.ER_UNEXPECTED_EOF = 1039; exports.ER_CON_COUNT_ERROR = 1040; exports.ER_OUT_OF_RESOURCES = 1041; exports.ER_BAD_HOST_ERROR = 1042; exports.ER_HANDSHAKE_ERROR = 1043; exports.ER_DBACCESS_DENIED_ERROR = 1044; exports.ER_ACCESS_DENIED_ERROR = 1045; exports.ER_NO_DB_ERROR = 1046; exports.ER_UNKNOWN_COM_ERROR = 1047; exports.ER_BAD_NULL_ERROR = 1048; exports.ER_BAD_DB_ERROR = 1049; exports.ER_TABLE_EXISTS_ERROR = 1050; exports.ER_BAD_TABLE_ERROR = 1051; exports.ER_NON_UNIQ_ERROR = 1052; exports.ER_SERVER_SHUTDOWN = 1053; exports.ER_BAD_FIELD_ERROR = 1054; exports.ER_WRONG_FIELD_WITH_GROUP = 1055; exports.ER_WRONG_GROUP_FIELD = 1056; exports.ER_WRONG_SUM_SELECT = 1057; exports.ER_WRONG_VALUE_COUNT = 1058; exports.ER_TOO_LONG_IDENT = 1059; exports.ER_DUP_FIELDNAME = 1060; exports.ER_DUP_KEYNAME = 1061; exports.ER_DUP_ENTRY = 1062; exports.ER_WRONG_FIELD_SPEC = 1063; exports.ER_PARSE_ERROR = 1064; exports.ER_EMPTY_QUERY = 1065; exports.ER_NONUNIQ_TABLE = 1066; exports.ER_INVALID_DEFAULT = 1067; exports.ER_MULTIPLE_PRI_KEY = 1068; exports.ER_TOO_MANY_KEYS = 1069; exports.ER_TOO_MANY_KEY_PARTS = 1070; exports.ER_TOO_LONG_KEY = 1071; exports.ER_KEY_COLUMN_DOES_NOT_EXITS = 1072; exports.ER_BLOB_USED_AS_KEY = 1073; exports.ER_TOO_BIG_FIELDLENGTH = 1074; exports.ER_WRONG_AUTO_KEY = 1075; exports.ER_READY = 1076; exports.ER_NORMAL_SHUTDOWN = 1077; exports.ER_GOT_SIGNAL = 1078; exports.ER_SHUTDOWN_COMPLETE = 1079; exports.ER_FORCING_CLOSE = 1080; exports.ER_IPSOCK_ERROR = 1081; exports.ER_NO_SUCH_INDEX = 1082; exports.ER_WRONG_FIELD_TERMINATORS = 1083; exports.ER_BLOBS_AND_NO_TERMINATED = 1084; exports.ER_TEXTFILE_NOT_READABLE = 1085; exports.ER_FILE_EXISTS_ERROR = 1086; exports.ER_LOAD_INFO = 1087; exports.ER_ALTER_INFO = 1088; exports.ER_WRONG_SUB_KEY = 1089; exports.ER_CANT_REMOVE_ALL_FIELDS = 1090; exports.ER_CANT_DROP_FIELD_OR_KEY = 1091; exports.ER_INSERT_INFO = 1092; exports.ER_UPDATE_TABLE_USED = 1093; exports.ER_NO_SUCH_THREAD = 1094; exports.ER_KILL_DENIED_ERROR = 1095; exports.ER_NO_TABLES_USED = 1096; exports.ER_TOO_BIG_SET = 1097; exports.ER_NO_UNIQUE_LOGFILE = 1098; exports.ER_TABLE_NOT_LOCKED_FOR_WRITE = 1099; exports.ER_TABLE_NOT_LOCKED = 1100; exports.ER_BLOB_CANT_HAVE_DEFAULT = 1101; exports.ER_WRONG_DB_NAME = 1102; exports.ER_WRONG_TABLE_NAME = 1103; exports.ER_TOO_BIG_SELECT = 1104; exports.ER_UNKNOWN_ERROR = 1105; exports.ER_UNKNOWN_PROCEDURE = 1106; exports.ER_WRONG_PARAMCOUNT_TO_PROCEDURE = 1107; exports.ER_WRONG_PARAMETERS_TO_PROCEDURE = 1108; exports.ER_UNKNOWN_TABLE = 1109; exports.ER_FIELD_SPECIFIED_TWICE = 1110; exports.ER_INVALID_GROUP_FUNC_USE = 1111; exports.ER_UNSUPPORTED_EXTENSION = 1112; exports.ER_TABLE_MUST_HAVE_COLUMNS = 1113; exports.ER_RECORD_FILE_FULL = 1114; exports.ER_UNKNOWN_CHARACTER_SET = 1115; exports.ER_TOO_MANY_TABLES = 1116; exports.ER_TOO_MANY_FIELDS = 1117; exports.ER_TOO_BIG_ROWSIZE = 1118; exports.ER_STACK_OVERRUN = 1119; exports.ER_WRONG_OUTER_JOIN = 1120; exports.ER_NULL_COLUMN_IN_INDEX = 1121; exports.ER_CANT_FIND_UDF = 1122; exports.ER_CANT_INITIALIZE_UDF = 1123; exports.ER_UDF_NO_PATHS = 1124; exports.ER_UDF_EXISTS = 1125; exports.ER_CANT_OPEN_LIBRARY = 1126; exports.ER_CANT_FIND_DL_ENTRY = 1127; exports.ER_FUNCTION_NOT_DEFINED = 1128; exports.ER_HOST_IS_BLOCKED = 1129; exports.ER_HOST_NOT_PRIVILEGED = 1130; exports.ER_PASSWORD_ANONYMOUS_USER = 1131; exports.ER_PASSWORD_NOT_ALLOWED = 1132; exports.ER_PASSWORD_NO_MATCH = 1133; exports.ER_UPDATE_INFO = 1134; exports.ER_CANT_CREATE_THREAD = 1135; exports.ER_WRONG_VALUE_COUNT_ON_ROW = 1136; exports.ER_CANT_REOPEN_TABLE = 1137; exports.ER_INVALID_USE_OF_NULL = 1138; exports.ER_REGEXP_ERROR = 1139; exports.ER_MIX_OF_GROUP_FUNC_AND_FIELDS = 1140; exports.ER_NONEXISTING_GRANT = 1141; exports.ER_TABLEACCESS_DENIED_ERROR = 1142; exports.ER_COLUMNACCESS_DENIED_ERROR = 1143; exports.ER_ILLEGAL_GRANT_FOR_TABLE = 1144; exports.ER_GRANT_WRONG_HOST_OR_USER = 1145; exports.ER_NO_SUCH_TABLE = 1146; exports.ER_NONEXISTING_TABLE_GRANT = 1147; exports.ER_NOT_ALLOWED_COMMAND = 1148; exports.ER_SYNTAX_ERROR = 1149; exports.ER_DELAYED_CANT_CHANGE_LOCK = 1150; exports.ER_TOO_MANY_DELAYED_THREADS = 1151; exports.ER_ABORTING_CONNECTION = 1152; exports.ER_NET_PACKET_TOO_LARGE = 1153; exports.ER_NET_READ_ERROR_FROM_PIPE = 1154; exports.ER_NET_FCNTL_ERROR = 1155; exports.ER_NET_PACKETS_OUT_OF_ORDER = 1156; exports.ER_NET_UNCOMPRESS_ERROR = 1157; exports.ER_NET_READ_ERROR = 1158; exports.ER_NET_READ_INTERRUPTED = 1159; exports.ER_NET_ERROR_ON_WRITE = 1160; exports.ER_NET_WRITE_INTERRUPTED = 1161; exports.ER_TOO_LONG_STRING = 1162; exports.ER_TABLE_CANT_HANDLE_BLOB = 1163; exports.ER_TABLE_CANT_HANDLE_AUTO_INCREMENT = 1164; exports.ER_DELAYED_INSERT_TABLE_LOCKED = 1165; exports.ER_WRONG_COLUMN_NAME = 1166; exports.ER_WRONG_KEY_COLUMN = 1167; exports.ER_WRONG_MRG_TABLE = 1168; exports.ER_DUP_UNIQUE = 1169; exports.ER_BLOB_KEY_WITHOUT_LENGTH = 1170; exports.ER_PRIMARY_CANT_HAVE_NULL = 1171; exports.ER_TOO_MANY_ROWS = 1172; exports.ER_REQUIRES_PRIMARY_KEY = 1173; exports.ER_NO_RAID_COMPILED = 1174; exports.ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE = 1175; exports.ER_KEY_DOES_NOT_EXITS = 1176; exports.ER_CHECK_NO_SUCH_TABLE = 1177; exports.ER_CHECK_NOT_IMPLEMENTED = 1178; exports.ER_CANT_DO_THIS_DURING_AN_TRANSACTION = 1179; exports.ER_ERROR_DURING_COMMIT = 1180; exports.ER_ERROR_DURING_ROLLBACK = 1181; exports.ER_ERROR_DURING_FLUSH_LOGS = 1182; exports.ER_ERROR_DURING_CHECKPOINT = 1183; exports.ER_NEW_ABORTING_CONNECTION = 1184; exports.ER_DUMP_NOT_IMPLEMENTED = 1185; exports.ER_FLUSH_MASTER_BINLOG_CLOSED = 1186; exports.ER_FLUSH_SOURCE_BINLOG_CLOSED = 1186; exports.ER_INDEX_REBUILD = 1187; exports.ER_MASTER = 1188; exports.ER_SOURCE = 1188; exports.ER_MASTER_NET_READ = 1189; exports.ER_SOURCE_NET_READ = 1189; exports.ER_MASTER_NET_WRITE = 1190; exports.ER_SOURCE_NET_WRITE = 1190; exports.ER_FT_MATCHING_KEY_NOT_FOUND = 1191; exports.ER_LOCK_OR_ACTIVE_TRANSACTION = 1192; exports.ER_UNKNOWN_SYSTEM_VARIABLE = 1193; exports.ER_CRASHED_ON_USAGE = 1194; exports.ER_CRASHED_ON_REPAIR = 1195; exports.ER_WARNING_NOT_COMPLETE_ROLLBACK = 1196; exports.ER_TRANS_CACHE_FULL = 1197; exports.ER_SLAVE_MUST_STOP = 1198; exports.ER_REPLICA_MUST_STOP = 1198; exports.ER_SLAVE_NOT_RUNNING = 1199; exports.ER_REPLICA_NOT_RUNNING = 1199; exports.ER_BAD_SLAVE = 1200; exports.ER_BAD_REPLICA = 1200; exports.ER_MASTER_INFO = 1201; exports.ER_SOURCE_INFO = 1201; exports.ER_SLAVE_THREAD = 1202; exports.ER_REPLICA_THREAD = 1202; exports.ER_TOO_MANY_USER_CONNECTIONS = 1203; exports.ER_SET_CONSTANTS_ONLY = 1204; exports.ER_LOCK_WAIT_TIMEOUT = 1205; exports.ER_LOCK_TABLE_FULL = 1206; exports.ER_READ_ONLY_TRANSACTION = 1207; exports.ER_DROP_DB_WITH_READ_LOCK = 1208; exports.ER_CREATE_DB_WITH_READ_LOCK = 1209; exports.ER_WRONG_ARGUMENTS = 1210; exports.ER_NO_PERMISSION_TO_CREATE_USER = 1211; exports.ER_UNION_TABLES_IN_DIFFERENT_DIR = 1212; exports.ER_LOCK_DEADLOCK = 1213; exports.ER_TABLE_CANT_HANDLE_FT = 1214; exports.ER_CANNOT_ADD_FOREIGN = 1215; exports.ER_NO_REFERENCED_ROW = 1216; exports.ER_ROW_IS_REFERENCED = 1217; exports.ER_CONNECT_TO_MASTER = 1218; exports.ER_CONNECT_TO_SOURCE = 1218; exports.ER_QUERY_ON_MASTER = 1219; exports.ER_QUERY_ON_SOURCE = 1219; exports.ER_ERROR_WHEN_EXECUTING_COMMAND = 1220; exports.ER_WRONG_USAGE = 1221; exports.ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT = 1222; exports.ER_CANT_UPDATE_WITH_READLOCK = 1223; exports.ER_MIXING_NOT_ALLOWED = 1224; exports.ER_DUP_ARGUMENT = 1225; exports.ER_USER_LIMIT_REACHED = 1226; exports.ER_SPECIFIC_ACCESS_DENIED_ERROR = 1227; exports.ER_LOCAL_VARIABLE = 1228; exports.ER_GLOBAL_VARIABLE = 1229; exports.ER_NO_DEFAULT = 1230; exports.ER_WRONG_VALUE_FOR_VAR = 1231; exports.ER_WRONG_TYPE_FOR_VAR = 1232; exports.ER_VAR_CANT_BE_READ = 1233; exports.ER_CANT_USE_OPTION_HERE = 1234; exports.ER_NOT_SUPPORTED_YET = 1235; exports.ER_MASTER_FATAL_ERROR_READING_BINLOG = 1236; exports.ER_SOURCE_FATAL_ERROR_READING_BINLOG = 1236; exports.ER_SLAVE_IGNORED_TABLE = 1237; exports.ER_REPLICA_IGNORED_TABLE = 1237; exports.ER_INCORRECT_GLOBAL_LOCAL_VAR = 1238; exports.ER_WRONG_FK_DEF = 1239; exports.ER_KEY_REF_DO_NOT_MATCH_TABLE_REF = 1240; exports.ER_OPERAND_COLUMNS = 1241; exports.ER_SUBQUERY_NO_1_ROW = 1242; exports.ER_UNKNOWN_STMT_HANDLER = 1243; exports.ER_CORRUPT_HELP_DB = 1244; exports.ER_CYCLIC_REFERENCE = 1245; exports.ER_AUTO_CONVERT = 1246; exports.ER_ILLEGAL_REFERENCE = 1247; exports.ER_DERIVED_MUST_HAVE_ALIAS = 1248; exports.ER_SELECT_REDUCED = 1249; exports.ER_TABLENAME_NOT_ALLOWED_HERE = 1250; exports.ER_NOT_SUPPORTED_AUTH_MODE = 1251; exports.ER_SPATIAL_CANT_HAVE_NULL = 1252; exports.ER_COLLATION_CHARSET_MISMATCH = 1253; exports.ER_SLAVE_WAS_RUNNING = 1254; exports.ER_REPLICA_WAS_RUNNING = 1254; exports.ER_SLAVE_WAS_NOT_RUNNING = 1255; exports.ER_REPLICA_WAS_NOT_RUNNING = 1255; exports.ER_TOO_BIG_FOR_UNCOMPRESS = 1256; exports.ER_ZLIB_Z_MEM_ERROR = 1257; exports.ER_ZLIB_Z_BUF_ERROR = 1258; exports.ER_ZLIB_Z_DATA_ERROR = 1259; exports.ER_CUT_VALUE_GROUP_CONCAT = 1260; exports.ER_WARN_TOO_FEW_RECORDS = 1261; exports.ER_WARN_TOO_MANY_RECORDS = 1262; exports.ER_WARN_NULL_TO_NOTNULL = 1263; exports.ER_WARN_DATA_OUT_OF_RANGE = 1264; exports.ER_WARN_DATA_TRUNCATED = 1265; exports.ER_WARN_USING_OTHER_HANDLER = 1266; exports.ER_CANT_AGGREGATE_2COLLATIONS = 1267; exports.ER_DROP_USER = 1268; exports.ER_REVOKE_GRANTS = 1269; exports.ER_CANT_AGGREGATE_3COLLATIONS = 1270; exports.ER_CANT_AGGREGATE_NCOLLATIONS = 1271; exports.ER_VARIABLE_IS_NOT_STRUCT = 1272; exports.ER_UNKNOWN_COLLATION = 1273; exports.ER_SLAVE_IGNORED_SSL_PARAMS = 1274; exports.ER_REPLICA_IGNORED_SSL_PARAMS = 1274; exports.ER_SERVER_IS_IN_SECURE_AUTH_MODE = 1275; exports.ER_WARN_FIELD_RESOLVED = 1276; exports.ER_BAD_SLAVE_UNTIL_COND = 1277; exports.ER_BAD_REPLICA_UNTIL_COND = 1277; exports.ER_MISSING_SKIP_SLAVE = 1278; exports.ER_MISSING_SKIP_REPLICA = 1278; exports.ER_UNTIL_COND_IGNORED = 1279; exports.ER_WRONG_NAME_FOR_INDEX = 1280; exports.ER_WRONG_NAME_FOR_CATALOG = 1281; exports.ER_WARN_QC_RESIZE = 1282; exports.ER_BAD_FT_COLUMN = 1283; exports.ER_UNKNOWN_KEY_CACHE = 1284; exports.ER_WARN_HOSTNAME_WONT_WORK = 1285; exports.ER_UNKNOWN_STORAGE_ENGINE = 1286; exports.ER_WARN_DEPRECATED_SYNTAX = 1287; exports.ER_NON_UPDATABLE_TABLE = 1288; exports.ER_FEATURE_DISABLED = 1289; exports.ER_OPTION_PREVENTS_STATEMENT = 1290; exports.ER_DUPLICATED_VALUE_IN_TYPE = 1291; exports.ER_TRUNCATED_WRONG_VALUE = 1292; exports.ER_TOO_MUCH_AUTO_TIMESTAMP_COLS = 1293; exports.ER_INVALID_ON_UPDATE = 1294; exports.ER_UNSUPPORTED_PS = 1295; exports.ER_GET_ERRMSG = 1296; exports.ER_GET_TEMPORARY_ERRMSG = 1297; exports.ER_UNKNOWN_TIME_ZONE = 1298; exports.ER_WARN_INVALID_TIMESTAMP = 1299; exports.ER_INVALID_CHARACTER_STRING = 1300; exports.ER_WARN_ALLOWED_PACKET_OVERFLOWED = 1301; exports.ER_CONFLICTING_DECLARATIONS = 1302; exports.ER_SP_NO_RECURSIVE_CREATE = 1303; exports.ER_SP_ALREADY_EXISTS = 1304; exports.ER_SP_DOES_NOT_EXIST = 1305; exports.ER_SP_DROP_FAILED = 1306; exports.ER_SP_STORE_FAILED = 1307; exports.ER_SP_LILABEL_MISMATCH = 1308; exports.ER_SP_LABEL_REDEFINE = 1309; exports.ER_SP_LABEL_MISMATCH = 1310; exports.ER_SP_UNINIT_VAR = 1311; exports.ER_SP_BADSELECT = 1312; exports.ER_SP_BADRETURN = 1313; exports.ER_SP_BADSTATEMENT = 1314; exports.ER_UPDATE_LOG_DEPRECATED_IGNORED = 1315; exports.ER_UPDATE_LOG_DEPRECATED_TRANSLATED = 1316; exports.ER_QUERY_INTERRUPTED = 1317; exports.ER_SP_WRONG_NO_OF_ARGS = 1318; exports.ER_SP_COND_MISMATCH = 1319; exports.ER_SP_NORETURN = 1320; exports.ER_SP_NORETURNEND = 1321; exports.ER_SP_BAD_CURSOR_QUERY = 1322; exports.ER_SP_BAD_CURSOR_SELECT = 1323; exports.ER_SP_CURSOR_MISMATCH = 1324; exports.ER_SP_CURSOR_ALREADY_OPEN = 1325; exports.ER_SP_CURSOR_NOT_OPEN = 1326; exports.ER_SP_UNDECLARED_VAR = 1327; exports.ER_SP_WRONG_NO_OF_FETCH_ARGS = 1328; exports.ER_SP_FETCH_NO_DATA = 1329; exports.ER_SP_DUP_PARAM = 1330; exports.ER_SP_DUP_VAR = 1331; exports.ER_SP_DUP_COND = 1332; exports.ER_SP_DUP_CURS = 1333; exports.ER_SP_CANT_ALTER = 1334; exports.ER_SP_SUBSELECT_NYI = 1335; exports.ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG = 1336; exports.ER_SP_VARCOND_AFTER_CURSHNDLR = 1337; exports.ER_SP_CURSOR_AFTER_HANDLER = 1338; exports.ER_SP_CASE_NOT_FOUND = 1339; exports.ER_FPARSER_TOO_BIG_FILE = 1340; exports.ER_FPARSER_BAD_HEADER = 1341; exports.ER_FPARSER_EOF_IN_COMMENT = 1342; exports.ER_FPARSER_ERROR_IN_PARAMETER = 1343; exports.ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER = 1344; exports.ER_VIEW_NO_EXPLAIN = 1345; exports.ER_FRM_UNKNOWN_TYPE = 1346; exports.ER_WRONG_OBJECT = 1347; exports.ER_NONUPDATEABLE_COLUMN = 1348; exports.ER_VIEW_SELECT_DERIVED = 1349; exports.ER_VIEW_SELECT_CLAUSE = 1350; exports.ER_VIEW_SELECT_VARIABLE = 1351; exports.ER_VIEW_SELECT_TMPTABLE = 1352; exports.ER_VIEW_WRONG_LIST = 1353; exports.ER_WARN_VIEW_MERGE = 1354; exports.ER_WARN_VIEW_WITHOUT_KEY = 1355; exports.ER_VIEW_INVALID = 1356; exports.ER_SP_NO_DROP_SP = 1357; exports.ER_SP_GOTO_IN_HNDLR = 1358; exports.ER_TRG_ALREADY_EXISTS = 1359; exports.ER_TRG_DOES_NOT_EXIST = 1360; exports.ER_TRG_ON_VIEW_OR_TEMP_TABLE = 1361; exports.ER_TRG_CANT_CHANGE_ROW = 1362; exports.ER_TRG_NO_SUCH_ROW_IN_TRG = 1363; exports.ER_NO_DEFAULT_FOR_FIELD = 1364; exports.ER_DIVISION_BY_ZERO = 1365; exports.ER_TRUNCATED_WRONG_VALUE_FOR_FIELD = 1366; exports.ER_ILLEGAL_VALUE_FOR_TYPE = 1367; exports.ER_VIEW_NONUPD_CHECK = 1368; exports.ER_VIEW_CHECK_FAILED = 1369; exports.ER_PROCACCESS_DENIED_ERROR = 1370; exports.ER_RELAY_LOG_FAIL = 1371; exports.ER_PASSWD_LENGTH = 1372; exports.ER_UNKNOWN_TARGET_BINLOG = 1373; exports.ER_IO_ERR_LOG_INDEX_READ = 1374; exports.ER_BINLOG_PURGE_PROHIBITED = 1375; exports.ER_FSEEK_FAIL = 1376; exports.ER_BINLOG_PURGE_FATAL_ERR = 1377; exports.ER_LOG_IN_USE = 1378; exports.ER_LOG_PURGE_UNKNOWN_ERR = 1379; exports.ER_RELAY_LOG_INIT = 1380; exports.ER_NO_BINARY_LOGGING = 1381; exports.ER_RESERVED_SYNTAX = 1382; exports.ER_WSAS_FAILED = 1383; exports.ER_DIFF_GROUPS_PROC = 1384; exports.ER_NO_GROUP_FOR_PROC = 1385; exports.ER_ORDER_WITH_PROC = 1386; exports.ER_LOGGING_PROHIBIT_CHANGING_OF = 1387; exports.ER_NO_FILE_MAPPING = 1388; exports.ER_WRONG_MAGIC = 1389; exports.ER_PS_MANY_PARAM = 1390; exports.ER_KEY_PART_0 = 1391; exports.ER_VIEW_CHECKSUM = 1392; exports.ER_VIEW_MULTIUPDATE = 1393; exports.ER_VIEW_NO_INSERT_FIELD_LIST = 1394; exports.ER_VIEW_DELETE_MERGE_VIEW = 1395; exports.ER_CANNOT_USER = 1396; exports.ER_XAER_NOTA = 1397; exports.ER_XAER_INVAL = 1398; exports.ER_XAER_RMFAIL = 1399; exports.ER_XAER_OUTSIDE = 1400; exports.ER_XAER_RMERR = 1401; exports.ER_XA_RBROLLBACK = 1402; exports.ER_NONEXISTING_PROC_GRANT = 1403; exports.ER_PROC_AUTO_GRANT_FAIL = 1404; exports.ER_PROC_AUTO_REVOKE_FAIL = 1405; exports.ER_DATA_TOO_LONG = 1406; exports.ER_SP_BAD_SQLSTATE = 1407; exports.ER_STARTUP = 1408; exports.ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR = 1409; exports.ER_CANT_CREATE_USER_WITH_GRANT = 1410; exports.ER_WRONG_VALUE_FOR_TYPE = 1411; exports.ER_TABLE_DEF_CHANGED = 1412; exports.ER_SP_DUP_HANDLER = 1413; exports.ER_SP_NOT_VAR_ARG = 1414; exports.ER_SP_NO_RETSET = 1415; exports.ER_CANT_CREATE_GEOMETRY_OBJECT = 1416; exports.ER_FAILED_ROUTINE_BREAK_BINLOG = 1417; exports.ER_BINLOG_UNSAFE_ROUTINE = 1418; exports.ER_BINLOG_CREATE_ROUTINE_NEED_SUPER = 1419; exports.ER_EXEC_STMT_WITH_OPEN_CURSOR = 1420; exports.ER_STMT_HAS_NO_OPEN_CURSOR = 1421; exports.ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG = 1422; exports.ER_NO_DEFAULT_FOR_VIEW_FIELD = 1423; exports.ER_SP_NO_RECURSION = 1424; exports.ER_TOO_BIG_SCALE = 1425; exports.ER_TOO_BIG_PRECISION = 1426; exports.ER_M_BIGGER_THAN_D = 1427; exports.ER_WRONG_LOCK_OF_SYSTEM_TABLE = 1428; exports.ER_CONNECT_TO_FOREIGN_DATA_SOURCE = 1429; exports.ER_QUERY_ON_FOREIGN_DATA_SOURCE = 1430; exports.ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST = 1431; exports.ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE = 1432; exports.ER_FOREIGN_DATA_STRING_INVALID = 1433; exports.ER_CANT_CREATE_FEDERATED_TABLE = 1434; exports.ER_TRG_IN_WRONG_SCHEMA = 1435; exports.ER_STACK_OVERRUN_NEED_MORE = 1436; exports.ER_TOO_LONG_BODY = 1437; exports.ER_WARN_CANT_DROP_DEFAULT_KEYCACHE = 1438; exports.ER_TOO_BIG_DISPLAYWIDTH = 1439; exports.ER_XAER_DUPID = 1440; exports.ER_DATETIME_FUNCTION_OVERFLOW = 1441; exports.ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG = 1442; exports.ER_VIEW_PREVENT_UPDATE = 1443; exports.ER_PS_NO_RECURSION = 1444; exports.ER_SP_CANT_SET_AUTOCOMMIT = 1445; exports.ER_MALFORMED_DEFINER = 1446; exports.ER_VIEW_FRM_NO_USER = 1447; exports.ER_VIEW_OTHER_USER = 1448; exports.ER_NO_SUCH_USER = 1449; exports.ER_FORBID_SCHEMA_CHANGE = 1450; exports.ER_ROW_IS_REFERENCED_2 = 1451; exports.ER_NO_REFERENCED_ROW_2 = 1452; exports.ER_SP_BAD_VAR_SHADOW = 1453; exports.ER_TRG_NO_DEFINER = 1454; exports.ER_OLD_FILE_FORMAT = 1455; exports.ER_SP_RECURSION_LIMIT = 1456; exports.ER_SP_PROC_TABLE_CORRUPT = 1457; exports.ER_SP_WRONG_NAME = 1458; exports.ER_TABLE_NEEDS_UPGRADE = 1459; exports.ER_SP_NO_AGGREGATE = 1460; exports.ER_MAX_PREPARED_STMT_COUNT_REACHED = 1461; exports.ER_VIEW_RECURSIVE = 1462; exports.ER_NON_GROUPING_FIELD_USED = 1463; exports.ER_TABLE_CANT_HANDLE_SPKEYS = 1464; exports.ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA = 1465; exports.ER_REMOVED_SPACES = 1466; exports.ER_AUTOINC_READ_FAILED = 1467; exports.ER_USERNAME = 1468; exports.ER_HOSTNAME = 1469; exports.ER_WRONG_STRING_LENGTH = 1470; exports.ER_NON_INSERTABLE_TABLE = 1471; exports.ER_ADMIN_WRONG_MRG_TABLE = 1472; exports.ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT = 1473; exports.ER_NAME_BECOMES_EMPTY = 1474; exports.ER_AMBIGUOUS_FIELD_TERM = 1475; exports.ER_FOREIGN_SERVER_EXISTS = 1476; exports.ER_FOREIGN_SERVER_DOESNT_EXIST = 1477; exports.ER_ILLEGAL_HA_CREATE_OPTION = 1478; exports.ER_PARTITION_REQUIRES_VALUES_ERROR = 1479; exports.ER_PARTITION_WRONG_VALUES_ERROR = 1480; exports.ER_PARTITION_MAXVALUE_ERROR = 1481; exports.ER_PARTITION_SUBPARTITION_ERROR = 1482; exports.ER_PARTITION_SUBPART_MIX_ERROR = 1483; exports.ER_PARTITION_WRONG_NO_PART_ERROR = 1484; exports.ER_PARTITION_WRONG_NO_SUBPART_ERROR = 1485; exports.ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR = 1486; exports.ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR = 1487; exports.ER_FIELD_NOT_FOUND_PART_ERROR = 1488; exports.ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR = 1489; exports.ER_INCONSISTENT_PARTITION_INFO_ERROR = 1490; exports.ER_PARTITION_FUNC_NOT_ALLOWED_ERROR = 1491; exports.ER_PARTITIONS_MUST_BE_DEFINED_ERROR = 1492; exports.ER_RANGE_NOT_INCREASING_ERROR = 1493; exports.ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR = 1494; exports.ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR = 1495; exports.ER_PARTITION_ENTRY_ERROR = 1496; exports.ER_MIX_HANDLER_ERROR = 1497; exports.ER_PARTITION_NOT_DEFINED_ERROR = 1498; exports.ER_TOO_MANY_PARTITIONS_ERROR = 1499; exports.ER_SUBPARTITION_ERROR = 1500; exports.ER_CANT_CREATE_HANDLER_FILE = 1501; exports.ER_BLOB_FIELD_IN_PART_FUNC_ERROR = 1502; exports.ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF = 1503; exports.ER_NO_PARTS_ERROR = 1504; exports.ER_PARTITION_MGMT_ON_NONPARTITIONED = 1505; exports.ER_FOREIGN_KEY_ON_PARTITIONED = 1506; exports.ER_DROP_PARTITION_NON_EXISTENT = 1507; exports.ER_DROP_LAST_PARTITION = 1508; exports.ER_COALESCE_ONLY_ON_HASH_PARTITION = 1509; exports.ER_REORG_HASH_ONLY_ON_SAME_NO = 1510; exports.ER_REORG_NO_PARAM_ERROR = 1511; exports.ER_ONLY_ON_RANGE_LIST_PARTITION = 1512; exports.ER_ADD_PARTITION_SUBPART_ERROR = 1513; exports.ER_ADD_PARTITION_NO_NEW_PARTITION = 1514; exports.ER_COALESCE_PARTITION_NO_PARTITION = 1515; exports.ER_REORG_PARTITION_NOT_EXIST = 1516; exports.ER_SAME_NAME_PARTITION = 1517; exports.ER_NO_BINLOG_ERROR = 1518; exports.ER_CONSECUTIVE_REORG_PARTITIONS = 1519; exports.ER_REORG_OUTSIDE_RANGE = 1520; exports.ER_PARTITION_FUNCTION_FAILURE = 1521; exports.ER_PART_STATE_ERROR = 1522; exports.ER_LIMITED_PART_RANGE = 1523; exports.ER_PLUGIN_IS_NOT_LOADED = 1524; exports.ER_WRONG_VALUE = 1525; exports.ER_NO_PARTITION_FOR_GIVEN_VALUE = 1526; exports.ER_FILEGROUP_OPTION_ONLY_ONCE = 1527; exports.ER_CREATE_FILEGROUP_FAILED = 1528; exports.ER_DROP_FILEGROUP_FAILED = 1529; exports.ER_TABLESPACE_AUTO_EXTEND_ERROR = 1530; exports.ER_WRONG_SIZE_NUMBER = 1531; exports.ER_SIZE_OVERFLOW_ERROR = 1532; exports.ER_ALTER_FILEGROUP_FAILED = 1533; exports.ER_BINLOG_ROW_LOGGING_FAILED = 1534; exports.ER_BINLOG_ROW_WRONG_TABLE_DEF = 1535; exports.ER_BINLOG_ROW_RBR_TO_SBR = 1536; exports.ER_EVENT_ALREADY_EXISTS = 1537; exports.ER_EVENT_STORE_FAILED = 1538; exports.ER_EVENT_DOES_NOT_EXIST = 1539; exports.ER_EVENT_CANT_ALTER = 1540; exports.ER_EVENT_DROP_FAILED = 1541; exports.ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG = 1542; exports.ER_EVENT_ENDS_BEFORE_STARTS = 1543; exports.ER_EVENT_EXEC_TIME_IN_THE_PAST = 1544; exports.ER_EVENT_OPEN_TABLE_FAILED = 1545; exports.ER_EVENT_NEITHER_M_EXPR_NOR_M_AT = 1546; exports.ER_COL_COUNT_DOESNT_MATCH_CORRUPTED = 1547; exports.ER_CANNOT_LOAD_FROM_TABLE = 1548; exports.ER_EVENT_CANNOT_DELETE = 1549; exports.ER_EVENT_COMPILE_ERROR = 1550; exports.ER_EVENT_SAME_NAME = 1551; exports.ER_EVENT_DATA_TOO_LONG = 1552; exports.ER_DROP_INDEX_FK = 1553; exports.ER_WARN_DEPRECATED_SYNTAX_WITH_VER = 1554; exports.ER_CANT_WRITE_LOCK_LOG_TABLE = 1555; exports.ER_CANT_LOCK_LOG_TABLE = 1556; exports.ER_FOREIGN_DUPLICATE_KEY = 1557; exports.ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE = 1558; exports.ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR = 1559; exports.ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT = 1560; exports.ER_NDB_CANT_SWITCH_BINLOG_FORMAT = 1561; exports.ER_PARTITION_NO_TEMPORARY = 1562; exports.ER_PARTITION_CONST_DOMAIN_ERROR = 1563; exports.ER_PARTITION_FUNCTION_IS_NOT_ALLOWED = 1564; exports.ER_DDL_LOG_ERROR = 1565; exports.ER_NULL_IN_VALUES_LESS_THAN = 1566; exports.ER_WRONG_PARTITION_NAME = 1567; exports.ER_CANT_CHANGE_TX_ISOLATION = 1568; exports.ER_DUP_ENTRY_AUTOINCREMENT_CASE = 1569; exports.ER_EVENT_MODIFY_QUEUE_ERROR = 1570; exports.ER_EVENT_SET_VAR_ERROR = 1571; exports.ER_PARTITION_MERGE_ERROR = 1572; exports.ER_CANT_ACTIVATE_LOG = 1573; exports.ER_RBR_NOT_AVAILABLE = 1574; exports.ER_BASE64_DECODE_ERROR = 1575; exports.ER_EVENT_RECURSION_FORBIDDEN = 1576; exports.ER_EVENTS_DB_ERROR = 1577; exports.ER_ONLY_INTEGERS_ALLOWED = 1578; exports.ER_UNSUPORTED_LOG_ENGINE = 1579; exports.ER_BAD_LOG_STATEMENT = 1580; exports.ER_CANT_RENAME_LOG_TABLE = 1581; exports.ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT = 1582; exports.ER_WRONG_PARAMETERS_TO_NATIVE_FCT = 1583; exports.ER_WRONG_PARAMETERS_TO_STORED_FCT = 1584; exports.ER_NATIVE_FCT_NAME_COLLISION = 1585; exports.ER_DUP_ENTRY_WITH_KEY_NAME = 1586; exports.ER_BINLOG_PURGE_EMFILE = 1587; exports.ER_EVENT_CANNOT_CREATE_IN_THE_PAST = 1588; exports.ER_EVENT_CANNOT_ALTER_IN_THE_PAST = 1589; exports.ER_SLAVE_INCIDENT = 1590; exports.ER_REPLICA_INCIDENT = 1590; exports.ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT = 1591; exports.ER_BINLOG_UNSAFE_STATEMENT = 1592; exports.ER_SLAVE_FATAL_ERROR = 1593; exports.ER_REPLICA_FATAL_ERROR = 1593; exports.ER_SLAVE_RELAY_LOG_READ_FAILURE = 1594; exports.ER_REPLICA_RELAY_LOG_READ_FAILURE = 1594; exports.ER_SLAVE_RELAY_LOG_WRITE_FAILURE = 1595; exports.ER_REPLICA_RELAY_LOG_WRITE_FAILURE = 1595; exports.ER_SLAVE_CREATE_EVENT_FAILURE = 1596; exports.ER_REPLICA_CREATE_EVENT_FAILURE = 1596; exports.ER_SLAVE_MASTER_COM_FAILURE = 1597; exports.ER_REPLICA_SOURCE_COM_FAILURE = 1597; exports.ER_BINLOG_LOGGING_IMPOSSIBLE = 1598; exports.ER_VIEW_NO_CREATION_CTX = 1599; exports.ER_VIEW_INVALID_CREATION_CTX = 1600; exports.ER_SR_INVALID_CREATION_CTX = 1601; exports.ER_TRG_CORRUPTED_FILE = 1602; exports.ER_TRG_NO_CREATION_CTX = 1603; exports.ER_TRG_INVALID_CREATION_CTX = 1604; exports.ER_EVENT_INVALID_CREATION_CTX = 1605; exports.ER_TRG_CANT_OPEN_TABLE = 1606; exports.ER_CANT_CREATE_SROUTINE = 1607; exports.ER_NEVER_USED = 1608; exports.ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT = 1609; exports.ER_SLAVE_CORRUPT_EVENT = 1610; exports.ER_REPLICA_CORRUPT_EVENT = 1610; exports.ER_LOAD_DATA_INVALID_COLUMN = 1611; exports.ER_LOG_PURGE_NO_FILE = 1612; exports.ER_XA_RBTIMEOUT = 1613; exports.ER_XA_RBDEADLOCK = 1614; exports.ER_NEED_REPREPARE = 1615; exports.ER_DELAYED_NOT_SUPPORTED = 1616; exports.WARN_NO_MASTER_INFO = 1617; exports.WARN_NO_SOURCE_INFO = 1617; exports.WARN_OPTION_IGNORED = 1618; exports.WARN_PLUGIN_DELETE_BUILTIN = 1619; exports.WARN_PLUGIN_BUSY = 1620; exports.ER_VARIABLE_IS_READONLY = 1621; exports.ER_WARN_ENGINE_TRANSACTION_ROLLBACK = 1622; exports.ER_SLAVE_HEARTBEAT_FAILURE = 1623; exports.ER_REPLICA_HEARTBEAT_FAILURE = 1623; exports.ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE = 1624; exports.ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE = 1624; exports.ER_NDB_REPLICATION_SCHEMA_ERROR = 1625; exports.ER_CONFLICT_FN_PARSE_ERROR = 1626; exports.ER_EXCEPTIONS_WRITE_ERROR = 1627; exports.ER_TOO_LONG_TABLE_COMMENT = 1628; exports.ER_TOO_LONG_FIELD_COMMENT = 1629; exports.ER_FUNC_INEXISTENT_NAME_COLLISION = 1630; exports.ER_DATABASE_NAME = 1631; exports.ER_TABLE_NAME = 1632; exports.ER_PARTITION_NAME = 1633; exports.ER_SUBPARTITION_NAME = 1634; exports.ER_TEMPORARY_NAME = 1635; exports.ER_RENAMED_NAME = 1636; exports.ER_TOO_MANY_CONCURRENT_TRXS = 1637; exports.WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED = 1638; exports.ER_DEBUG_SYNC_TIMEOUT = 1639; exports.ER_DEBUG_SYNC_HIT_LIMIT = 1640; exports.ER_DUP_SIGNAL_SET = 1641; exports.ER_SIGNAL_WARN = 1642; exports.ER_SIGNAL_NOT_FOUND = 1643; exports.ER_SIGNAL_EXCEPTION = 1644; exports.ER_RESIGNAL_WITHOUT_ACTIVE_HANDLER = 1645; exports.ER_SIGNAL_BAD_CONDITION_TYPE = 1646; exports.WARN_COND_ITEM_TRUNCATED = 1647; exports.ER_COND_ITEM_TOO_LONG = 1648; exports.ER_UNKNOWN_LOCALE = 1649; exports.ER_SLAVE_IGNORE_SERVER_IDS = 1650; exports.ER_REPLICA_IGNORE_SERVER_IDS = 1650; exports.ER_QUERY_CACHE_DISABLED = 1651; exports.ER_SAME_NAME_PARTITION_FIELD = 1652; exports.ER_PARTITION_COLUMN_LIST_ERROR = 1653; exports.ER_WRONG_TYPE_COLUMN_VALUE_ERROR = 1654; exports.ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR = 1655; exports.ER_MAXVALUE_IN_VALUES_IN = 1656; exports.ER_TOO_MANY_VALUES_ERROR = 1657; exports.ER_ROW_SINGLE_PARTITION_FIELD_ERROR = 1658; exports.ER_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD = 1659; exports.ER_PARTITION_FIELDS_TOO_LONG = 1660; exports.ER_BINLOG_ROW_ENGINE_AND_STMT_ENGINE = 1661; exports.ER_BINLOG_ROW_MODE_AND_STMT_ENGINE = 1662; exports.ER_BINLOG_UNSAFE_AND_STMT_ENGINE = 1663; exports.ER_BINLOG_ROW_INJECTION_AND_STMT_ENGINE = 1664; exports.ER_BINLOG_STMT_MODE_AND_ROW_ENGINE = 1665; exports.ER_BINLOG_ROW_INJECTION_AND_STMT_MODE = 1666; exports.ER_BINLOG_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE = 1667; exports.ER_BINLOG_UNSAFE_LIMIT = 1668; exports.ER_BINLOG_UNSAFE_INSERT_DELAYED = 1669; exports.ER_BINLOG_UNSAFE_SYSTEM_TABLE = 1670; exports.ER_BINLOG_UNSAFE_AUTOINC_COLUMNS = 1671; exports.ER_BINLOG_UNSAFE_UDF = 1672; exports.ER_BINLOG_UNSAFE_SYSTEM_VARIABLE = 1673; exports.ER_BINLOG_UNSAFE_SYSTEM_FUNCTION = 1674; exports.ER_BINLOG_UNSAFE_NONTRANS_AFTER_TRANS = 1675; exports.ER_MESSAGE_AND_STATEMENT = 1676; exports.ER_SLAVE_CONVERSION_FAILED = 1677; exports.ER_REPLICA_CONVERSION_FAILED = 1677; exports.ER_SLAVE_CANT_CREATE_CONVERSION = 1678; exports.ER_REPLICA_CANT_CREATE_CONVERSION = 1678; exports.ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_FORMAT = 1679; exports.ER_PATH_LENGTH = 1680; exports.ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT = 1681; exports.ER_WRONG_NATIVE_TABLE_STRUCTURE = 1682; exports.ER_WRONG_PERFSCHEMA_USAGE = 1683; exports.ER_WARN_I_S_SKIPPED_TABLE = 1684; exports.ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_DIRECT = 1685; exports.ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_DIRECT = 1686; exports.ER_SPATIAL_MUST_HAVE_GEOM_COL = 1687; exports.ER_TOO_LONG_INDEX_COMMENT = 1688; exports.ER_LOCK_ABORTED = 1689; exports.ER_DATA_OUT_OF_RANGE = 1690; exports.ER_WRONG_SPVAR_TYPE_IN_LIMIT = 1691; exports.ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE = 1692; exports.ER_BINLOG_UNSAFE_MIXED_STATEMENT = 1693; exports.ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_SQL_LOG_BIN = 1694; exports.ER_STORED_FUNCTION_PREVENTS_SWITCH_SQL_LOG_BIN = 1695; exports.ER_FAILED_READ_FROM_PAR_FILE = 1696; exports.ER_VALUES_IS_NOT_INT_TYPE_ERROR = 1697; exports.ER_ACCESS_DENIED_NO_PASSWORD_ERROR = 1698; exports.ER_SET_PASSWORD_AUTH_PLUGIN = 1699; exports.ER_GRANT_PLUGIN_USER_EXISTS = 1700; exports.ER_TRUNCATE_ILLEGAL_FK = 1701; exports.ER_PLUGIN_IS_PERMANENT = 1702; exports.ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN = 1703; exports.ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN = 1703; exports.ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX = 1704; exports.ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX = 1704; exports.ER_STMT_CACHE_FULL = 1705; exports.ER_MULTI_UPDATE_KEY_CONFLICT = 1706; exports.ER_TABLE_NEEDS_REBUILD = 1707; exports.WARN_OPTION_BELOW_LIMIT = 1708; exports.ER_INDEX_COLUMN_TOO_LONG = 1709; exports.ER_ERROR_IN_TRIGGER_BODY = 1710; exports.ER_ERROR_IN_UNKNOWN_TRIGGER_BODY = 1711; exports.ER_INDEX_CORRUPT = 1712; exports.ER_UNDO_RECORD_TOO_BIG = 1713; exports.ER_BINLOG_UNSAFE_INSERT_IGNORE_SELECT = 1714; exports.ER_BINLOG_UNSAFE_INSERT_SELECT_UPDATE = 1715; exports.ER_BINLOG_UNSAFE_REPLACE_SELECT = 1716; exports.ER_BINLOG_UNSAFE_CREATE_IGNORE_SELECT = 1717; exports.ER_BINLOG_UNSAFE_CREATE_REPLACE_SELECT = 1718; exports.ER_BINLOG_UNSAFE_UPDATE_IGNORE = 1719; exports.ER_PLUGIN_NO_UNINSTALL = 1720; exports.ER_PLUGIN_NO_INSTALL = 1721; exports.ER_BINLOG_UNSAFE_WRITE_AUTOINC_SELECT = 1722; exports.ER_BINLOG_UNSAFE_CREATE_SELECT_AUTOINC = 1723; exports.ER_BINLOG_UNSAFE_INSERT_TWO_KEYS = 1724; exports.ER_TABLE_IN_FK_CHECK = 1725; exports.ER_UNSUPPORTED_ENGINE = 1726; exports.ER_BINLOG_UNSAFE_AUTOINC_NOT_FIRST = 1727; exports.ER_CANNOT_LOAD_FROM_TABLE_V2 = 1728; exports.ER_MASTER_DELAY_VALUE_OUT_OF_RANGE = 1729; exports.ER_SOURCE_DELAY_VALUE_OUT_OF_RANGE = 1729; exports.ER_ONLY_FD_AND_RBR_EVENTS_ALLOWED_IN_BINLOG_STATEMENT = 1730; exports.ER_PARTITION_EXCHANGE_DIFFERENT_OPTION = 1731; exports.ER_PARTITION_EXCHANGE_PART_TABLE = 1732; exports.ER_PARTITION_EXCHANGE_TEMP_TABLE = 1733; exports.ER_PARTITION_INSTEAD_OF_SUBPARTITION = 1734; exports.ER_UNKNOWN_PARTITION = 1735; exports.ER_TABLES_DIFFERENT_METADATA = 1736; exports.ER_ROW_DOES_NOT_MATCH_PARTITION = 1737; exports.ER_BINLOG_CACHE_SIZE_GREATER_THAN_MAX = 1738; exports.ER_WARN_INDEX_NOT_APPLICABLE = 1739; exports.ER_PARTITION_EXCHANGE_FOREIGN_KEY = 1740; exports.ER_NO_SUCH_KEY_VALUE = 1741; exports.ER_RPL_INFO_DATA_TOO_LONG = 1742; exports.ER_NETWORK_READ_EVENT_CHECKSUM_FAILURE = 1743; exports.ER_BINLOG_READ_EVENT_CHECKSUM_FAILURE = 1744; exports.ER_BINLOG_STMT_CACHE_SIZE_GREATER_THAN_MAX = 1745; exports.ER_CANT_UPDATE_TABLE_IN_CREATE_TABLE_SELECT = 1746; exports.ER_PARTITION_CLAUSE_ON_NONPARTITIONED = 1747; exports.ER_ROW_DOES_NOT_MATCH_GIVEN_PARTITION_SET = 1748; exports.ER_NO_SUCH_PARTITION = 1749; exports.ER_CHANGE_RPL_INFO_REPOSITORY_FAILURE = 1750; exports.ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_CREATED_TEMP_TABLE = 1751; exports.ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_DROPPED_TEMP_TABLE = 1752; exports.ER_MTS_FEATURE_IS_NOT_SUPPORTED = 1753; exports.ER_MTS_UPDATED_DBS_GREATER_MAX = 1754; exports.ER_MTS_CANT_PARALLEL = 1755; exports.ER_MTS_INCONSISTENT_DATA = 1756; exports.ER_FULLTEXT_NOT_SUPPORTED_WITH_PARTITIONING = 1757; exports.ER_DA_INVALID_CONDITION_NUMBER = 1758; exports.ER_INSECURE_PLAIN_TEXT = 1759; exports.ER_INSECURE_CHANGE_MASTER = 1760; exports.ER_INSECURE_CHANGE_SOURCE = 1760; exports.ER_FOREIGN_DUPLICATE_KEY_WITH_CHILD_INFO = 1761; exports.ER_FOREIGN_DUPLICATE_KEY_WITHOUT_CHILD_INFO = 1762; exports.ER_SQLTHREAD_WITH_SECURE_SLAVE = 1763; exports.ER_SQLTHREAD_WITH_SECURE_REPLICA = 1763; exports.ER_TABLE_HAS_NO_FT = 1764; exports.ER_VARIABLE_NOT_SETTABLE_IN_SF_OR_TRIGGER = 1765; exports.ER_VARIABLE_NOT_SETTABLE_IN_TRANSACTION = 1766; exports.ER_GTID_NEXT_IS_NOT_IN_GTID_NEXT_LIST = 1767; exports.ER_CANT_CHANGE_GTID_NEXT_IN_TRANSACTION_WHEN_GTID_NEXT_LIST_IS_NULL = 1768; exports.ER_SET_STATEMENT_CANNOT_INVOKE_FUNCTION = 1769; exports.ER_GTID_NEXT_CANT_BE_AUTOMATIC_IF_GTID_NEXT_LIST_IS_NON_NULL = 1770; exports.ER_SKIPPING_LOGGED_TRANSACTION = 1771; exports.ER_MALFORMED_GTID_SET_SPECIFICATION = 1772; exports.ER_MALFORMED_GTID_SET_ENCODING = 1773; exports.ER_MALFORMED_GTID_SPECIFICATION = 1774; exports.ER_GNO_EXHAUSTED = 1775; exports.ER_BAD_SLAVE_AUTO_POSITION = 1776; exports.ER_BAD_REPLICA_AUTO_POSITION = 1776; exports.ER_AUTO_POSITION_REQUIRES_GTID_MODE_ON = 1777; exports.ER_CANT_DO_IMPLICIT_COMMIT_IN_TRX_WHEN_GTID_NEXT_IS_SET = 1778; exports.ER_GTID_MODE_2_OR_3_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON = 1779; exports.ER_GTID_MODE_REQUIRES_BINLOG = 1780; exports.ER_CANT_SET_GTID_NEXT_TO_GTID_WHEN_GTID_MODE_IS_OFF = 1781; exports.ER_CANT_SET_GTID_NEXT_TO_ANONYMOUS_WHEN_GTID_MODE_IS_ON = 1782; exports.ER_CANT_SET_GTID_NEXT_LIST_TO_NON_NULL_WHEN_GTID_MODE_IS_OFF = 1783; exports.ER_FOUND_GTID_EVENT_WHEN_GTID_MODE_IS_OFF = 1784; exports.ER_GTID_UNSAFE_NON_TRANSACTIONAL_TABLE = 1785; exports.ER_GTID_UNSAFE_CREATE_SELECT = 1786; exports.ER_GTID_UNSAFE_CREATE_DROP_TEMPORARY_TABLE_IN_TRANSACTION = 1787; exports.ER_GTID_MODE_CAN_ONLY_CHANGE_ONE_STEP_AT_A_TIME = 1788; exports.ER_MASTER_HAS_PURGED_REQUIRED_GTIDS = 1789; exports.ER_SOURCE_HAS_PURGED_REQUIRED_GTIDS = 1789; exports.ER_CANT_SET_GTID_NEXT_WHEN_OWNING_GTID = 1790; exports.ER_UNKNOWN_EXPLAIN_FORMAT = 1791; exports.ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION = 1792; exports.ER_TOO_LONG_TABLE_PARTITION_COMMENT = 1793; exports.ER_SLAVE_CONFIGURATION = 1794; exports.ER_REPLICA_CONFIGURATION = 1794; exports.ER_INNODB_FT_LIMIT = 1795; exports.ER_INNODB_NO_FT_TEMP_TABLE = 1796; exports.ER_INNODB_FT_WRONG_DOCID_COLUMN = 1797; exports.ER_INNODB_FT_WRONG_DOCID_INDEX = 1798; exports.ER_INNODB_ONLINE_LOG_TOO_BIG = 1799; exports.ER_UNKNOWN_ALTER_ALGORITHM = 1800; exports.ER_UNKNOWN_ALTER_LOCK = 1801; exports.ER_MTS_CHANGE_MASTER_CANT_RUN_WITH_GAPS = 1802; exports.ER_MTS_CHANGE_SOURCE_CANT_RUN_WITH_GAPS = 1802; exports.ER_MTS_RECOVERY_FAILURE = 1803; exports.ER_MTS_RESET_WORKERS = 1804; exports.ER_COL_COUNT_DOESNT_MATCH_CORRUPTED_V2 = 1805; exports.ER_SLAVE_SILENT_RETRY_TRANSACTION = 1806; exports.ER_REPLICA_SILENT_RETRY_TRANSACTION = 1806; exports.ER_DISCARD_FK_CHECKS_RUNNING = 1807; exports.ER_TABLE_SCHEMA_MISMATCH = 1808; exports.ER_TABLE_IN_SYSTEM_TABLESPACE = 1809; exports.ER_IO_READ_ERROR = 1810; exports.ER_IO_WRITE_ERROR = 1811; exports.ER_TABLESPACE_MISSING = 1812; exports.ER_TABLESPACE_EXISTS = 1813; exports.ER_TABLESPACE_DISCARDED = 1814; exports.ER_INTERNAL_ERROR = 1815; exports.ER_INNODB_IMPORT_ERROR = 1816; exports.ER_INNODB_INDEX_CORRUPT = 1817; exports.ER_INVALID_YEAR_COLUMN_LENGTH = 1818; exports.ER_NOT_VALID_PASSWORD = 1819; exports.ER_MUST_CHANGE_PASSWORD = 1820; exports.ER_FK_NO_INDEX_CHILD = 1821; exports.ER_FK_NO_INDEX_PARENT = 1822; exports.ER_FK_FAIL_ADD_SYSTEM = 1823; exports.ER_FK_CANNOT_OPEN_PARENT = 1824; exports.ER_FK_INCORRECT_OPTION = 1825; exports.ER_FK_DUP_NAME = 1826; exports.ER_PASSWORD_FORMAT = 1827; exports.ER_FK_COLUMN_CANNOT_DROP = 1828; exports.ER_FK_COLUMN_CANNOT_DROP_CHILD = 1829; exports.ER_FK_COLUMN_NOT_NULL = 1830; exports.ER_DUP_INDEX = 1831; exports.ER_FK_COLUMN_CANNOT_CHANGE = 1832; exports.ER_FK_COLUMN_CANNOT_CHANGE_CHILD = 1833; exports.ER_FK_CANNOT_DELETE_PARENT = 1834; exports.ER_MALFORMED_PACKET = 1835; exports.ER_READ_ONLY_MODE = 1836; exports.ER_GTID_NEXT_TYPE_UNDEFINED_GROUP = 1837; exports.ER_VARIABLE_NOT_SETTABLE_IN_SP = 1838; exports.ER_CANT_SET_GTID_PURGED_WHEN_GTID_MODE_IS_OFF = 1839; exports.ER_CANT_SET_GTID_PURGED_WHEN_GTID_EXECUTED_IS_NOT_EMPTY = 1840; exports.ER_CANT_SET_GTID_PURGED_WHEN_OWNED_GTIDS_IS_NOT_EMPTY = 1841; exports.ER_GTID_PURGED_WAS_CHANGED = 1842; exports.ER_GTID_EXECUTED_WAS_CHANGED = 1843; exports.ER_BINLOG_STMT_MODE_AND_NO_REPL_TABLES = 1844; exports.ER_ALTER_OPERATION_NOT_SUPPORTED = 1845; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON = 1846; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COPY = 1847; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_PARTITION = 1848; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_RENAME = 1849; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COLUMN_TYPE = 1850; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_CHECK = 1851; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_IGNORE = 1852; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOPK = 1853; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_AUTOINC = 1854; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_HIDDEN_FTS = 1855; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_CHANGE_FTS = 1856; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FTS = 1857; exports.ER_SQL_SLAVE_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE = 1858; exports.ER_SQL_REPLICA_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE = 1858; exports.ER_DUP_UNKNOWN_IN_INDEX = 1859; exports.ER_IDENT_CAUSES_TOO_LONG_PATH = 1860; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOT_NULL = 1861; exports.ER_MUST_CHANGE_PASSWORD_LOGIN = 1862; exports.ER_ROW_IN_WRONG_PARTITION = 1863; exports.ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX = 1864; exports.ER_INNODB_NO_FT_USES_PARSER = 1865; exports.ER_BINLOG_LOGICAL_CORRUPTION = 1866; exports.ER_WARN_PURGE_LOG_IN_USE = 1867; exports.ER_WARN_PURGE_LOG_IS_ACTIVE = 1868; exports.ER_AUTO_INCREMENT_CONFLICT = 1869; exports.WARN_ON_BLOCKHOLE_IN_RBR = 1870; exports.ER_SLAVE_MI_INIT_REPOSITORY = 1871; exports.ER_REPLICA_MI_INIT_REPOSITORY = 1871; exports.ER_SLAVE_RLI_INIT_REPOSITORY = 1872; exports.ER_REPLICA_RLI_INIT_REPOSITORY = 1872; exports.ER_ACCESS_DENIED_CHANGE_USER_ERROR = 1873; exports.ER_INNODB_READ_ONLY = 1874; exports.ER_STOP_SLAVE_SQL_THREAD_TIMEOUT = 1875; exports.ER_STOP_REPLICA_SQL_THREAD_TIMEOUT = 1875; exports.ER_STOP_SLAVE_IO_THREAD_TIMEOUT = 1876; exports.ER_STOP_REPLICA_IO_THREAD_TIMEOUT = 1876; exports.ER_TABLE_CORRUPT = 1877; exports.ER_TEMP_FILE_WRITE_FAILURE = 1878; exports.ER_INNODB_FT_AUX_NOT_HEX_ID = 1879; exports.ER_OLD_TEMPORALS_UPGRADED = 1880; exports.ER_INNODB_FORCED_RECOVERY = 1881; exports.ER_AES_INVALID_IV = 1882; exports.ER_FILE_CORRUPT = 1883; exports.ER_ERROR_ON_SOURCE = 1884; exports.ER_INCONSISTENT_ERROR = 1885; exports.ER_STORAGE_ENGINE_NOT_LOADED = 1886; exports.ER_GET_STACKED_DA_WITHOUT_ACTIVE_HANDLER = 1887; exports.ER_WARN_LEGACY_SYNTAX_CONVERTED = 1888; exports.ER_BINLOG_UNSAFE_FULLTEXT_PLUGIN = 1889; exports.ER_CANNOT_DISCARD_TEMPORARY_TABLE = 1890; exports.ER_FK_DEPTH_EXCEEDED = 1891; exports.ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE_V2 = 1892; exports.ER_WARN_TRIGGER_DOESNT_HAVE_CREATED = 1893; exports.ER_REFERENCED_TRG_DOES_NOT_EXIST = 1894; exports.ER_EXPLAIN_NOT_SUPPORTED = 1895; exports.ER_INVALID_FIELD_SIZE = 1896; exports.ER_MISSING_HA_CREATE_OPTION = 1897; exports.ER_ENGINE_OUT_OF_MEMORY = 1898; exports.ER_PASSWORD_EXPIRE_ANONYMOUS_USER = 1899; exports.ER_REPLICA_SQL_THREAD_MUST_STOP = 1900; exports.ER_NO_FT_MATERIALIZED_SUBQUERY = 1901; exports.ER_INNODB_UNDO_LOG_FULL = 1902; exports.ER_INVALID_ARGUMENT_FOR_LOGARITHM = 1903; exports.ER_REPLICA_IO_THREAD_MUST_STOP = 1904; exports.ER_WARN_OPEN_TEMP_TABLES_MUST_BE_ZERO = 1905; exports.ER_WARN_ONLY_SOURCE_LOG_FILE_NO_POS = 1906; exports.ER_QUERY_TIMEOUT = 1907; exports.ER_NON_RO_SELECT_DISABLE_TIMER = 1908; exports.ER_DUP_LIST_ENTRY = 1909; exports.ER_SQL_MODE_NO_EFFECT = 1910; exports.ER_SESSION_WAS_KILLED = 3169; exports.ER_CLIENT_INTERACTION_TIMEOUT = 4031; exports[1] = "EE_CANTCREATEFILE"; exports[2] = "EE_READ"; exports[3] = "EE_WRITE"; exports[4] = "EE_BADCLOSE"; exports[5] = "EE_OUTOFMEMORY"; exports[6] = "EE_DELETE"; exports[7] = "EE_LINK"; exports[9] = "EE_EOFERR"; exports[10] = "EE_CANTLOCK"; exports[11] = "EE_CANTUNLOCK"; exports[12] = "EE_DIR"; exports[13] = "EE_STAT"; exports[14] = "EE_CANT_CHSIZE"; exports[15] = "EE_CANT_OPEN_STREAM"; exports[16] = "EE_GETWD"; exports[17] = "EE_SETWD"; exports[18] = "EE_LINK_WARNING"; exports[19] = "EE_OPEN_WARNING"; exports[20] = "EE_DISK_FULL"; exports[21] = "EE_CANT_MKDIR"; exports[22] = "EE_UNKNOWN_CHARSET"; exports[23] = "EE_OUT_OF_FILERESOURCES"; exports[24] = "EE_CANT_READLINK"; exports[25] = "EE_CANT_SYMLINK"; exports[26] = "EE_REALPATH"; exports[27] = "EE_SYNC"; exports[28] = "EE_UNKNOWN_COLLATION"; exports[29] = "EE_FILENOTFOUND"; exports[30] = "EE_FILE_NOT_CLOSED"; exports[31] = "EE_CHANGE_OWNERSHIP"; exports[32] = "EE_CHANGE_PERMISSIONS"; exports[33] = "EE_CANT_SEEK"; exports[120] = "HA_ERR_KEY_NOT_FOUND"; exports[121] = "HA_ERR_FOUND_DUPP_KEY"; exports[122] = "HA_ERR_INTERNAL_ERROR"; exports[123] = "HA_ERR_RECORD_CHANGED"; exports[124] = "HA_ERR_WRONG_INDEX"; exports[126] = "HA_ERR_CRASHED"; exports[127] = "HA_ERR_WRONG_IN_RECORD"; exports[128] = "HA_ERR_OUT_OF_MEM"; exports[130] = "HA_ERR_NOT_A_TABLE"; exports[131] = "HA_ERR_WRONG_COMMAND"; exports[132] = "HA_ERR_OLD_FILE"; exports[133] = "HA_ERR_NO_ACTIVE_RECORD"; exports[134] = "HA_ERR_RECORD_DELETED"; exports[135] = "HA_ERR_RECORD_FILE_FULL"; exports[136] = "HA_ERR_INDEX_FILE_FULL"; exports[137] = "HA_ERR_END_OF_FILE"; exports[138] = "HA_ERR_UNSUPPORTED"; exports[139] = "HA_ERR_TO_BIG_ROW"; exports[140] = "HA_WRONG_CREATE_OPTION"; exports[141] = "HA_ERR_FOUND_DUPP_UNIQUE"; exports[142] = "HA_ERR_UNKNOWN_CHARSET"; exports[143] = "HA_ERR_WRONG_MRG_TABLE_DEF"; exports[144] = "HA_ERR_CRASHED_ON_REPAIR"; exports[145] = "HA_ERR_CRASHED_ON_USAGE"; exports[146] = "HA_ERR_LOCK_WAIT_TIMEOUT"; exports[147] = "HA_ERR_LOCK_TABLE_FULL"; exports[148] = "HA_ERR_READ_ONLY_TRANSACTION"; exports[149] = "HA_ERR_LOCK_DEADLOCK"; exports[150] = "HA_ERR_CANNOT_ADD_FOREIGN"; exports[151] = "HA_ERR_NO_REFERENCED_ROW"; exports[152] = "HA_ERR_ROW_IS_REFERENCED"; exports[153] = "HA_ERR_NO_SAVEPOINT"; exports[154] = "HA_ERR_NON_UNIQUE_BLOCK_SIZE"; exports[155] = "HA_ERR_NO_SUCH_TABLE"; exports[156] = "HA_ERR_TABLE_EXIST"; exports[157] = "HA_ERR_NO_CONNECTION"; exports[158] = "HA_ERR_NULL_IN_SPATIAL"; exports[159] = "HA_ERR_TABLE_DEF_CHANGED"; exports[160] = "HA_ERR_NO_PARTITION_FOUND"; exports[161] = "HA_ERR_RBR_LOGGING_FAILED"; exports[162] = "HA_ERR_DROP_INDEX_FK"; exports[163] = "HA_ERR_FOREIGN_DUPLICATE_KEY"; exports[164] = "HA_ERR_TABLE_NEEDS_UPGRADE"; exports[165] = "HA_ERR_TABLE_READONLY"; exports[166] = "HA_ERR_AUTOINC_READ_FAILED"; exports[167] = "HA_ERR_AUTOINC_ERANGE"; exports[168] = "HA_ERR_GENERIC"; exports[169] = "HA_ERR_RECORD_IS_THE_SAME"; exports[170] = "HA_ERR_LOGGING_IMPOSSIBLE"; exports[171] = "HA_ERR_CORRUPT_EVENT"; exports[172] = "HA_ERR_NEW_FILE"; exports[173] = "HA_ERR_ROWS_EVENT_APPLY"; exports[174] = "HA_ERR_INITIALIZATION"; exports[175] = "HA_ERR_FILE_TOO_SHORT"; exports[176] = "HA_ERR_WRONG_CRC"; exports[177] = "HA_ERR_TOO_MANY_CONCURRENT_TRXS"; exports[178] = "HA_ERR_NOT_IN_LOCK_PARTITIONS"; exports[179] = "HA_ERR_INDEX_COL_TOO_LONG"; exports[180] = "HA_ERR_INDEX_CORRUPT"; exports[181] = "HA_ERR_UNDO_REC_TOO_BIG"; exports[182] = "HA_FTS_INVALID_DOCID"; exports[183] = "HA_ERR_TABLE_IN_FK_CHECK"; exports[184] = "HA_ERR_TABLESPACE_EXISTS"; exports[185] = "HA_ERR_TOO_MANY_FIELDS"; exports[186] = "HA_ERR_ROW_IN_WRONG_PARTITION"; exports[187] = "HA_ERR_INNODB_READ_ONLY"; exports[188] = "HA_ERR_FTS_EXCEED_RESULT_CACHE_LIMIT"; exports[189] = "HA_ERR_TEMP_FILE_WRITE_FAILURE"; exports[190] = "HA_ERR_INNODB_FORCED_RECOVERY"; exports[191] = "HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE"; exports[1e3] = "ER_HASHCHK"; exports[1001] = "ER_NISAMCHK"; exports[1002] = "ER_NO"; exports[1003] = "ER_YES"; exports[1004] = "ER_CANT_CREATE_FILE"; exports[1005] = "ER_CANT_CREATE_TABLE"; exports[1006] = "ER_CANT_CREATE_DB"; exports[1007] = "ER_DB_CREATE_EXISTS"; exports[1008] = "ER_DB_DROP_EXISTS"; exports[1009] = "ER_DB_DROP_DELETE"; exports[1010] = "ER_DB_DROP_RMDIR"; exports[1011] = "ER_CANT_DELETE_FILE"; exports[1012] = "ER_CANT_FIND_SYSTEM_REC"; exports[1013] = "ER_CANT_GET_STAT"; exports[1014] = "ER_CANT_GET_WD"; exports[1015] = "ER_CANT_LOCK"; exports[1016] = "ER_CANT_OPEN_FILE"; exports[1017] = "ER_FILE_NOT_FOUND"; exports[1018] = "ER_CANT_READ_DIR"; exports[1019] = "ER_CANT_SET_WD"; exports[1020] = "ER_CHECKREAD"; exports[1021] = "ER_DISK_FULL"; exports[1022] = "ER_DUP_KEY"; exports[1023] = "ER_ERROR_ON_CLOSE"; exports[1024] = "ER_ERROR_ON_READ"; exports[1025] = "ER_ERROR_ON_RENAME"; exports[1026] = "ER_ERROR_ON_WRITE"; exports[1027] = "ER_FILE_USED"; exports[1028] = "ER_FILSORT_ABORT"; exports[1029] = "ER_FORM_NOT_FOUND"; exports[1030] = "ER_GET_ERRNO"; exports[1031] = "ER_ILLEGAL_HA"; exports[1032] = "ER_KEY_NOT_FOUND"; exports[1033] = "ER_NOT_FORM_FILE"; exports[1034] = "ER_NOT_KEYFILE"; exports[1035] = "ER_OLD_KEYFILE"; exports[1036] = "ER_OPEN_AS_READONLY"; exports[1037] = "ER_OUTOFMEMORY"; exports[1038] = "ER_OUT_OF_SORTMEMORY"; exports[1039] = "ER_UNEXPECTED_EOF"; exports[1040] = "ER_CON_COUNT_ERROR"; exports[1041] = "ER_OUT_OF_RESOURCES"; exports[1042] = "ER_BAD_HOST_ERROR"; exports[1043] = "ER_HANDSHAKE_ERROR"; exports[1044] = "ER_DBACCESS_DENIED_ERROR"; exports[1045] = "ER_ACCESS_DENIED_ERROR"; exports[1046] = "ER_NO_DB_ERROR"; exports[1047] = "ER_UNKNOWN_COM_ERROR"; exports[1048] = "ER_BAD_NULL_ERROR"; exports[1049] = "ER_BAD_DB_ERROR"; exports[1050] = "ER_TABLE_EXISTS_ERROR"; exports[1051] = "ER_BAD_TABLE_ERROR"; exports[1052] = "ER_NON_UNIQ_ERROR"; exports[1053] = "ER_SERVER_SHUTDOWN"; exports[1054] = "ER_BAD_FIELD_ERROR"; exports[1055] = "ER_WRONG_FIELD_WITH_GROUP"; exports[1056] = "ER_WRONG_GROUP_FIELD"; exports[1057] = "ER_WRONG_SUM_SELECT"; exports[1058] = "ER_WRONG_VALUE_COUNT"; exports[1059] = "ER_TOO_LONG_IDENT"; exports[1060] = "ER_DUP_FIELDNAME"; exports[1061] = "ER_DUP_KEYNAME"; exports[1062] = "ER_DUP_ENTRY"; exports[1063] = "ER_WRONG_FIELD_SPEC"; exports[1064] = "ER_PARSE_ERROR"; exports[1065] = "ER_EMPTY_QUERY"; exports[1066] = "ER_NONUNIQ_TABLE"; exports[1067] = "ER_INVALID_DEFAULT"; exports[1068] = "ER_MULTIPLE_PRI_KEY"; exports[1069] = "ER_TOO_MANY_KEYS"; exports[1070] = "ER_TOO_MANY_KEY_PARTS"; exports[1071] = "ER_TOO_LONG_KEY"; exports[1072] = "ER_KEY_COLUMN_DOES_NOT_EXITS"; exports[1073] = "ER_BLOB_USED_AS_KEY"; exports[1074] = "ER_TOO_BIG_FIELDLENGTH"; exports[1075] = "ER_WRONG_AUTO_KEY"; exports[1076] = "ER_READY"; exports[1077] = "ER_NORMAL_SHUTDOWN"; exports[1078] = "ER_GOT_SIGNAL"; exports[1079] = "ER_SHUTDOWN_COMPLETE"; exports[1080] = "ER_FORCING_CLOSE"; exports[1081] = "ER_IPSOCK_ERROR"; exports[1082] = "ER_NO_SUCH_INDEX"; exports[1083] = "ER_WRONG_FIELD_TERMINATORS"; exports[1084] = "ER_BLOBS_AND_NO_TERMINATED"; exports[1085] = "ER_TEXTFILE_NOT_READABLE"; exports[1086] = "ER_FILE_EXISTS_ERROR"; exports[1087] = "ER_LOAD_INFO"; exports[1088] = "ER_ALTER_INFO"; exports[1089] = "ER_WRONG_SUB_KEY"; exports[1090] = "ER_CANT_REMOVE_ALL_FIELDS"; exports[1091] = "ER_CANT_DROP_FIELD_OR_KEY"; exports[1092] = "ER_INSERT_INFO"; exports[1093] = "ER_UPDATE_TABLE_USED"; exports[1094] = "ER_NO_SUCH_THREAD"; exports[1095] = "ER_KILL_DENIED_ERROR"; exports[1096] = "ER_NO_TABLES_USED"; exports[1097] = "ER_TOO_BIG_SET"; exports[1098] = "ER_NO_UNIQUE_LOGFILE"; exports[1099] = "ER_TABLE_NOT_LOCKED_FOR_WRITE"; exports[1100] = "ER_TABLE_NOT_LOCKED"; exports[1101] = "ER_BLOB_CANT_HAVE_DEFAULT"; exports[1102] = "ER_WRONG_DB_NAME"; exports[1103] = "ER_WRONG_TABLE_NAME"; exports[1104] = "ER_TOO_BIG_SELECT"; exports[1105] = "ER_UNKNOWN_ERROR"; exports[1106] = "ER_UNKNOWN_PROCEDURE"; exports[1107] = "ER_WRONG_PARAMCOUNT_TO_PROCEDURE"; exports[1108] = "ER_WRONG_PARAMETERS_TO_PROCEDURE"; exports[1109] = "ER_UNKNOWN_TABLE"; exports[1110] = "ER_FIELD_SPECIFIED_TWICE"; exports[1111] = "ER_INVALID_GROUP_FUNC_USE"; exports[1112] = "ER_UNSUPPORTED_EXTENSION"; exports[1113] = "ER_TABLE_MUST_HAVE_COLUMNS"; exports[1114] = "ER_RECORD_FILE_FULL"; exports[1115] = "ER_UNKNOWN_CHARACTER_SET"; exports[1116] = "ER_TOO_MANY_TABLES"; exports[1117] = "ER_TOO_MANY_FIELDS"; exports[1118] = "ER_TOO_BIG_ROWSIZE"; exports[1119] = "ER_STACK_OVERRUN"; exports[1120] = "ER_WRONG_OUTER_JOIN"; exports[1121] = "ER_NULL_COLUMN_IN_INDEX"; exports[1122] = "ER_CANT_FIND_UDF"; exports[1123] = "ER_CANT_INITIALIZE_UDF"; exports[1124] = "ER_UDF_NO_PATHS"; exports[1125] = "ER_UDF_EXISTS"; exports[1126] = "ER_CANT_OPEN_LIBRARY"; exports[1127] = "ER_CANT_FIND_DL_ENTRY"; exports[1128] = "ER_FUNCTION_NOT_DEFINED"; exports[1129] = "ER_HOST_IS_BLOCKED"; exports[1130] = "ER_HOST_NOT_PRIVILEGED"; exports[1131] = "ER_PASSWORD_ANONYMOUS_USER"; exports[1132] = "ER_PASSWORD_NOT_ALLOWED"; exports[1133] = "ER_PASSWORD_NO_MATCH"; exports[1134] = "ER_UPDATE_INFO"; exports[1135] = "ER_CANT_CREATE_THREAD"; exports[1136] = "ER_WRONG_VALUE_COUNT_ON_ROW"; exports[1137] = "ER_CANT_REOPEN_TABLE"; exports[1138] = "ER_INVALID_USE_OF_NULL"; exports[1139] = "ER_REGEXP_ERROR"; exports[1140] = "ER_MIX_OF_GROUP_FUNC_AND_FIELDS"; exports[1141] = "ER_NONEXISTING_GRANT"; exports[1142] = "ER_TABLEACCESS_DENIED_ERROR"; exports[1143] = "ER_COLUMNACCESS_DENIED_ERROR"; exports[1144] = "ER_ILLEGAL_GRANT_FOR_TABLE"; exports[1145] = "ER_GRANT_WRONG_HOST_OR_USER"; exports[1146] = "ER_NO_SUCH_TABLE"; exports[1147] = "ER_NONEXISTING_TABLE_GRANT"; exports[1148] = "ER_NOT_ALLOWED_COMMAND"; exports[1149] = "ER_SYNTAX_ERROR"; exports[1150] = "ER_DELAYED_CANT_CHANGE_LOCK"; exports[1151] = "ER_TOO_MANY_DELAYED_THREADS"; exports[1152] = "ER_ABORTING_CONNECTION"; exports[1153] = "ER_NET_PACKET_TOO_LARGE"; exports[1154] = "ER_NET_READ_ERROR_FROM_PIPE"; exports[1155] = "ER_NET_FCNTL_ERROR"; exports[1156] = "ER_NET_PACKETS_OUT_OF_ORDER"; exports[1157] = "ER_NET_UNCOMPRESS_ERROR"; exports[1158] = "ER_NET_READ_ERROR"; exports[1159] = "ER_NET_READ_INTERRUPTED"; exports[1160] = "ER_NET_ERROR_ON_WRITE"; exports[1161] = "ER_NET_WRITE_INTERRUPTED"; exports[1162] = "ER_TOO_LONG_STRING"; exports[1163] = "ER_TABLE_CANT_HANDLE_BLOB"; exports[1164] = "ER_TABLE_CANT_HANDLE_AUTO_INCREMENT"; exports[1165] = "ER_DELAYED_INSERT_TABLE_LOCKED"; exports[1166] = "ER_WRONG_COLUMN_NAME"; exports[1167] = "ER_WRONG_KEY_COLUMN"; exports[1168] = "ER_WRONG_MRG_TABLE"; exports[1169] = "ER_DUP_UNIQUE"; exports[1170] = "ER_BLOB_KEY_WITHOUT_LENGTH"; exports[1171] = "ER_PRIMARY_CANT_HAVE_NULL"; exports[1172] = "ER_TOO_MANY_ROWS"; exports[1173] = "ER_REQUIRES_PRIMARY_KEY"; exports[1174] = "ER_NO_RAID_COMPILED"; exports[1175] = "ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE"; exports[1176] = "ER_KEY_DOES_NOT_EXITS"; exports[1177] = "ER_CHECK_NO_SUCH_TABLE"; exports[1178] = "ER_CHECK_NOT_IMPLEMENTED"; exports[1179] = "ER_CANT_DO_THIS_DURING_AN_TRANSACTION"; exports[1180] = "ER_ERROR_DURING_COMMIT"; exports[1181] = "ER_ERROR_DURING_ROLLBACK"; exports[1182] = "ER_ERROR_DURING_FLUSH_LOGS"; exports[1183] = "ER_ERROR_DURING_CHECKPOINT"; exports[1184] = "ER_NEW_ABORTING_CONNECTION"; exports[1185] = "ER_DUMP_NOT_IMPLEMENTED"; exports[1186] = "ER_FLUSH_SOURCE_BINLOG_CLOSED"; exports[1187] = "ER_INDEX_REBUILD"; exports[1188] = "ER_SOURCE"; exports[1189] = "ER_SOURCE_NET_READ"; exports[1190] = "ER_SOURCE_NET_WRITE"; exports[1191] = "ER_FT_MATCHING_KEY_NOT_FOUND"; exports[1192] = "ER_LOCK_OR_ACTIVE_TRANSACTION"; exports[1193] = "ER_UNKNOWN_SYSTEM_VARIABLE"; exports[1194] = "ER_CRASHED_ON_USAGE"; exports[1195] = "ER_CRASHED_ON_REPAIR"; exports[1196] = "ER_WARNING_NOT_COMPLETE_ROLLBACK"; exports[1197] = "ER_TRANS_CACHE_FULL"; exports[1198] = "ER_REPLICA_MUST_STOP"; exports[1199] = "ER_REPLICA_NOT_RUNNING"; exports[1200] = "ER_BAD_REPLICA"; exports[1201] = "ER_SOURCE_INFO"; exports[1202] = "ER_REPLICA_THREAD"; exports[1203] = "ER_TOO_MANY_USER_CONNECTIONS"; exports[1204] = "ER_SET_CONSTANTS_ONLY"; exports[1205] = "ER_LOCK_WAIT_TIMEOUT"; exports[1206] = "ER_LOCK_TABLE_FULL"; exports[1207] = "ER_READ_ONLY_TRANSACTION"; exports[1208] = "ER_DROP_DB_WITH_READ_LOCK"; exports[1209] = "ER_CREATE_DB_WITH_READ_LOCK"; exports[1210] = "ER_WRONG_ARGUMENTS"; exports[1211] = "ER_NO_PERMISSION_TO_CREATE_USER"; exports[1212] = "ER_UNION_TABLES_IN_DIFFERENT_DIR"; exports[1213] = "ER_LOCK_DEADLOCK"; exports[1214] = "ER_TABLE_CANT_HANDLE_FT"; exports[1215] = "ER_CANNOT_ADD_FOREIGN"; exports[1216] = "ER_NO_REFERENCED_ROW"; exports[1217] = "ER_ROW_IS_REFERENCED"; exports[1218] = "ER_CONNECT_TO_SOURCE"; exports[1219] = "ER_QUERY_ON_SOURCE"; exports[1220] = "ER_ERROR_WHEN_EXECUTING_COMMAND"; exports[1221] = "ER_WRONG_USAGE"; exports[1222] = "ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT"; exports[1223] = "ER_CANT_UPDATE_WITH_READLOCK"; exports[1224] = "ER_MIXING_NOT_ALLOWED"; exports[1225] = "ER_DUP_ARGUMENT"; exports[1226] = "ER_USER_LIMIT_REACHED"; exports[1227] = "ER_SPECIFIC_ACCESS_DENIED_ERROR"; exports[1228] = "ER_LOCAL_VARIABLE"; exports[1229] = "ER_GLOBAL_VARIABLE"; exports[1230] = "ER_NO_DEFAULT"; exports[1231] = "ER_WRONG_VALUE_FOR_VAR"; exports[1232] = "ER_WRONG_TYPE_FOR_VAR"; exports[1233] = "ER_VAR_CANT_BE_READ"; exports[1234] = "ER_CANT_USE_OPTION_HERE"; exports[1235] = "ER_NOT_SUPPORTED_YET"; exports[1236] = "ER_SOURCE_FATAL_ERROR_READING_BINLOG"; exports[1237] = "ER_REPLICA_IGNORED_TABLE"; exports[1238] = "ER_INCORRECT_GLOBAL_LOCAL_VAR"; exports[1239] = "ER_WRONG_FK_DEF"; exports[1240] = "ER_KEY_REF_DO_NOT_MATCH_TABLE_REF"; exports[1241] = "ER_OPERAND_COLUMNS"; exports[1242] = "ER_SUBQUERY_NO_1_ROW"; exports[1243] = "ER_UNKNOWN_STMT_HANDLER"; exports[1244] = "ER_CORRUPT_HELP_DB"; exports[1245] = "ER_CYCLIC_REFERENCE"; exports[1246] = "ER_AUTO_CONVERT"; exports[1247] = "ER_ILLEGAL_REFERENCE"; exports[1248] = "ER_DERIVED_MUST_HAVE_ALIAS"; exports[1249] = "ER_SELECT_REDUCED"; exports[1250] = "ER_TABLENAME_NOT_ALLOWED_HERE"; exports[1251] = "ER_NOT_SUPPORTED_AUTH_MODE"; exports[1252] = "ER_SPATIAL_CANT_HAVE_NULL"; exports[1253] = "ER_COLLATION_CHARSET_MISMATCH"; exports[1254] = "ER_REPLICA_WAS_RUNNING"; exports[1255] = "ER_REPLICA_WAS_NOT_RUNNING"; exports[1256] = "ER_TOO_BIG_FOR_UNCOMPRESS"; exports[1257] = "ER_ZLIB_Z_MEM_ERROR"; exports[1258] = "ER_ZLIB_Z_BUF_ERROR"; exports[1259] = "ER_ZLIB_Z_DATA_ERROR"; exports[1260] = "ER_CUT_VALUE_GROUP_CONCAT"; exports[1261] = "ER_WARN_TOO_FEW_RECORDS"; exports[1262] = "ER_WARN_TOO_MANY_RECORDS"; exports[1263] = "ER_WARN_NULL_TO_NOTNULL"; exports[1264] = "ER_WARN_DATA_OUT_OF_RANGE"; exports[1265] = "ER_WARN_DATA_TRUNCATED"; exports[1266] = "ER_WARN_USING_OTHER_HANDLER"; exports[1267] = "ER_CANT_AGGREGATE_2COLLATIONS"; exports[1268] = "ER_DROP_USER"; exports[1269] = "ER_REVOKE_GRANTS"; exports[1270] = "ER_CANT_AGGREGATE_3COLLATIONS"; exports[1271] = "ER_CANT_AGGREGATE_NCOLLATIONS"; exports[1272] = "ER_VARIABLE_IS_NOT_STRUCT"; exports[1273] = "ER_UNKNOWN_COLLATION"; exports[1274] = "ER_REPLICA_IGNORED_SSL_PARAMS"; exports[1275] = "ER_SERVER_IS_IN_SECURE_AUTH_MODE"; exports[1276] = "ER_WARN_FIELD_RESOLVED"; exports[1277] = "ER_BAD_REPLICA_UNTIL_COND"; exports[1278] = "ER_MISSING_SKIP_REPLICA"; exports[1279] = "ER_UNTIL_COND_IGNORED"; exports[1280] = "ER_WRONG_NAME_FOR_INDEX"; exports[1281] = "ER_WRONG_NAME_FOR_CATALOG"; exports[1282] = "ER_WARN_QC_RESIZE"; exports[1283] = "ER_BAD_FT_COLUMN"; exports[1284] = "ER_UNKNOWN_KEY_CACHE"; exports[1285] = "ER_WARN_HOSTNAME_WONT_WORK"; exports[1286] = "ER_UNKNOWN_STORAGE_ENGINE"; exports[1287] = "ER_WARN_DEPRECATED_SYNTAX"; exports[1288] = "ER_NON_UPDATABLE_TABLE"; exports[1289] = "ER_FEATURE_DISABLED"; exports[1290] = "ER_OPTION_PREVENTS_STATEMENT"; exports[1291] = "ER_DUPLICATED_VALUE_IN_TYPE"; exports[1292] = "ER_TRUNCATED_WRONG_VALUE"; exports[1293] = "ER_TOO_MUCH_AUTO_TIMESTAMP_COLS"; exports[1294] = "ER_INVALID_ON_UPDATE"; exports[1295] = "ER_UNSUPPORTED_PS"; exports[1296] = "ER_GET_ERRMSG"; exports[1297] = "ER_GET_TEMPORARY_ERRMSG"; exports[1298] = "ER_UNKNOWN_TIME_ZONE"; exports[1299] = "ER_WARN_INVALID_TIMESTAMP"; exports[1300] = "ER_INVALID_CHARACTER_STRING"; exports[1301] = "ER_WARN_ALLOWED_PACKET_OVERFLOWED"; exports[1302] = "ER_CONFLICTING_DECLARATIONS"; exports[1303] = "ER_SP_NO_RECURSIVE_CREATE"; exports[1304] = "ER_SP_ALREADY_EXISTS"; exports[1305] = "ER_SP_DOES_NOT_EXIST"; exports[1306] = "ER_SP_DROP_FAILED"; exports[1307] = "ER_SP_STORE_FAILED"; exports[1308] = "ER_SP_LILABEL_MISMATCH"; exports[1309] = "ER_SP_LABEL_REDEFINE"; exports[1310] = "ER_SP_LABEL_MISMATCH"; exports[1311] = "ER_SP_UNINIT_VAR"; exports[1312] = "ER_SP_BADSELECT"; exports[1313] = "ER_SP_BADRETURN"; exports[1314] = "ER_SP_BADSTATEMENT"; exports[1315] = "ER_UPDATE_LOG_DEPRECATED_IGNORED"; exports[1316] = "ER_UPDATE_LOG_DEPRECATED_TRANSLATED"; exports[1317] = "ER_QUERY_INTERRUPTED"; exports[1318] = "ER_SP_WRONG_NO_OF_ARGS"; exports[1319] = "ER_SP_COND_MISMATCH"; exports[1320] = "ER_SP_NORETURN"; exports[1321] = "ER_SP_NORETURNEND"; exports[1322] = "ER_SP_BAD_CURSOR_QUERY"; exports[1323] = "ER_SP_BAD_CURSOR_SELECT"; exports[1324] = "ER_SP_CURSOR_MISMATCH"; exports[1325] = "ER_SP_CURSOR_ALREADY_OPEN"; exports[1326] = "ER_SP_CURSOR_NOT_OPEN"; exports[1327] = "ER_SP_UNDECLARED_VAR"; exports[1328] = "ER_SP_WRONG_NO_OF_FETCH_ARGS"; exports[1329] = "ER_SP_FETCH_NO_DATA"; exports[1330] = "ER_SP_DUP_PARAM"; exports[1331] = "ER_SP_DUP_VAR"; exports[1332] = "ER_SP_DUP_COND"; exports[1333] = "ER_SP_DUP_CURS"; exports[1334] = "ER_SP_CANT_ALTER"; exports[1335] = "ER_SP_SUBSELECT_NYI"; exports[1336] = "ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG"; exports[1337] = "ER_SP_VARCOND_AFTER_CURSHNDLR"; exports[1338] = "ER_SP_CURSOR_AFTER_HANDLER"; exports[1339] = "ER_SP_CASE_NOT_FOUND"; exports[1340] = "ER_FPARSER_TOO_BIG_FILE"; exports[1341] = "ER_FPARSER_BAD_HEADER"; exports[1342] = "ER_FPARSER_EOF_IN_COMMENT"; exports[1343] = "ER_FPARSER_ERROR_IN_PARAMETER"; exports[1344] = "ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER"; exports[1345] = "ER_VIEW_NO_EXPLAIN"; exports[1346] = "ER_FRM_UNKNOWN_TYPE"; exports[1347] = "ER_WRONG_OBJECT"; exports[1348] = "ER_NONUPDATEABLE_COLUMN"; exports[1349] = "ER_VIEW_SELECT_DERIVED"; exports[1350] = "ER_VIEW_SELECT_CLAUSE"; exports[1351] = "ER_VIEW_SELECT_VARIABLE"; exports[1352] = "ER_VIEW_SELECT_TMPTABLE"; exports[1353] = "ER_VIEW_WRONG_LIST"; exports[1354] = "ER_WARN_VIEW_MERGE"; exports[1355] = "ER_WARN_VIEW_WITHOUT_KEY"; exports[1356] = "ER_VIEW_INVALID"; exports[1357] = "ER_SP_NO_DROP_SP"; exports[1358] = "ER_SP_GOTO_IN_HNDLR"; exports[1359] = "ER_TRG_ALREADY_EXISTS"; exports[1360] = "ER_TRG_DOES_NOT_EXIST"; exports[1361] = "ER_TRG_ON_VIEW_OR_TEMP_TABLE"; exports[1362] = "ER_TRG_CANT_CHANGE_ROW"; exports[1363] = "ER_TRG_NO_SUCH_ROW_IN_TRG"; exports[1364] = "ER_NO_DEFAULT_FOR_FIELD"; exports[1365] = "ER_DIVISION_BY_ZERO"; exports[1366] = "ER_TRUNCATED_WRONG_VALUE_FOR_FIELD"; exports[1367] = "ER_ILLEGAL_VALUE_FOR_TYPE"; exports[1368] = "ER_VIEW_NONUPD_CHECK"; exports[1369] = "ER_VIEW_CHECK_FAILED"; exports[1370] = "ER_PROCACCESS_DENIED_ERROR"; exports[1371] = "ER_RELAY_LOG_FAIL"; exports[1372] = "ER_PASSWD_LENGTH"; exports[1373] = "ER_UNKNOWN_TARGET_BINLOG"; exports[1374] = "ER_IO_ERR_LOG_INDEX_READ"; exports[1375] = "ER_BINLOG_PURGE_PROHIBITED"; exports[1376] = "ER_FSEEK_FAIL"; exports[1377] = "ER_BINLOG_PURGE_FATAL_ERR"; exports[1378] = "ER_LOG_IN_USE"; exports[1379] = "ER_LOG_PURGE_UNKNOWN_ERR"; exports[1380] = "ER_RELAY_LOG_INIT"; exports[1381] = "ER_NO_BINARY_LOGGING"; exports[1382] = "ER_RESERVED_SYNTAX"; exports[1383] = "ER_WSAS_FAILED"; exports[1384] = "ER_DIFF_GROUPS_PROC"; exports[1385] = "ER_NO_GROUP_FOR_PROC"; exports[1386] = "ER_ORDER_WITH_PROC"; exports[1387] = "ER_LOGGING_PROHIBIT_CHANGING_OF"; exports[1388] = "ER_NO_FILE_MAPPING"; exports[1389] = "ER_WRONG_MAGIC"; exports[1390] = "ER_PS_MANY_PARAM"; exports[1391] = "ER_KEY_PART_0"; exports[1392] = "ER_VIEW_CHECKSUM"; exports[1393] = "ER_VIEW_MULTIUPDATE"; exports[1394] = "ER_VIEW_NO_INSERT_FIELD_LIST"; exports[1395] = "ER_VIEW_DELETE_MERGE_VIEW"; exports[1396] = "ER_CANNOT_USER"; exports[1397] = "ER_XAER_NOTA"; exports[1398] = "ER_XAER_INVAL"; exports[1399] = "ER_XAER_RMFAIL"; exports[1400] = "ER_XAER_OUTSIDE"; exports[1401] = "ER_XA_RMERR"; exports[1402] = "ER_XA_RBROLLBACK"; exports[1403] = "ER_NONEXISTING_PROC_GRANT"; exports[1404] = "ER_PROC_AUTO_GRANT_FAIL"; exports[1405] = "ER_PROC_AUTO_REVOKE_FAIL"; exports[1406] = "ER_DATA_TOO_LONG"; exports[1407] = "ER_SP_BAD_SQLSTATE"; exports[1408] = "ER_STARTUP"; exports[1409] = "ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR"; exports[1410] = "ER_CANT_CREATE_USER_WITH_GRANT"; exports[1411] = "ER_WRONG_VALUE_FOR_TYPE"; exports[1412] = "ER_TABLE_DEF_CHANGED"; exports[1413] = "ER_SP_DUP_HANDLER"; exports[1414] = "ER_SP_NOT_VAR_ARG"; exports[1415] = "ER_SP_NO_RETSET"; exports[1416] = "ER_CANT_CREATE_GEOMETRY_OBJECT"; exports[1417] = "ER_FAILED_ROUTINE_BREAK_BINLOG"; exports[1418] = "ER_BINLOG_UNSAFE_ROUTINE"; exports[1419] = "ER_BINLOG_CREATE_ROUTINE_NEED_SUPER"; exports[1420] = "ER_EXEC_STMT_WITH_OPEN_CURSOR"; exports[1421] = "ER_STMT_HAS_NO_OPEN_CURSOR"; exports[1422] = "ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG"; exports[1423] = "ER_NO_DEFAULT_FOR_VIEW_FIELD"; exports[1424] = "ER_SP_NO_RECURSION"; exports[1425] = "ER_TOO_BIG_SCALE"; exports[1426] = "ER_TOO_BIG_PRECISION"; exports[1427] = "ER_M_BIGGER_THAN_D"; exports[1428] = "ER_WRONG_LOCK_OF_SYSTEM_TABLE"; exports[1429] = "ER_CONNECT_TO_FOREIGN_DATA_SOURCE"; exports[1430] = "ER_QUERY_ON_FOREIGN_DATA_SOURCE"; exports[1431] = "ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST"; exports[1432] = "ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE"; exports[1433] = "ER_FOREIGN_DATA_STRING_INVALID"; exports[1434] = "ER_CANT_CREATE_FEDERATED_TABLE"; exports[1435] = "ER_TRG_IN_WRONG_SCHEMA"; exports[1436] = "ER_STACK_OVERRUN_NEED_MORE"; exports[1437] = "ER_TOO_LONG_BODY"; exports[1438] = "ER_WARN_CANT_DROP_DEFAULT_KEYCACHE"; exports[1439] = "ER_TOO_BIG_DISPLAYWIDTH"; exports[1440] = "ER_XAER_DUPID"; exports[1441] = "ER_DATETIME_FUNCTION_OVERFLOW"; exports[1442] = "ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG"; exports[1443] = "ER_VIEW_PREVENT_UPDATE"; exports[1444] = "ER_PS_NO_RECURSION"; exports[1445] = "ER_SP_CANT_SET_AUTOCOMMIT"; exports[1446] = "ER_MALFORMED_DEFINER"; exports[1447] = "ER_VIEW_FRM_NO_USER"; exports[1448] = "ER_VIEW_OTHER_USER"; exports[1449] = "ER_NO_SUCH_USER"; exports[1450] = "ER_FORBID_SCHEMA_CHANGE"; exports[1451] = "ER_ROW_IS_REFERENCED_2"; exports[1452] = "ER_NO_REFERENCED_ROW_2"; exports[1453] = "ER_SP_BAD_VAR_SHADOW"; exports[1454] = "ER_TRG_NO_DEFINER"; exports[1455] = "ER_OLD_FILE_FORMAT"; exports[1456] = "ER_SP_RECURSION_LIMIT"; exports[1457] = "ER_SP_PROC_TABLE_CORRUPT"; exports[1458] = "ER_SP_WRONG_NAME"; exports[1459] = "ER_TABLE_NEEDS_UPGRADE"; exports[1460] = "ER_SP_NO_AGGREGATE"; exports[1461] = "ER_MAX_PREPARED_STMT_COUNT_REACHED"; exports[1462] = "ER_VIEW_RECURSIVE"; exports[1463] = "ER_NON_GROUPING_FIELD_USED"; exports[1464] = "ER_TABLE_CANT_HANDLE_SPKEYS"; exports[1465] = "ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA"; exports[1466] = "ER_REMOVED_SPACES"; exports[1467] = "ER_AUTOINC_READ_FAILED"; exports[1468] = "ER_USERNAME"; exports[1469] = "ER_HOSTNAME"; exports[1470] = "ER_WRONG_STRING_LENGTH"; exports[1471] = "ER_NON_INSERTABLE_TABLE"; exports[1472] = "ER_ADMIN_WRONG_MRG_TABLE"; exports[1473] = "ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT"; exports[1474] = "ER_NAME_BECOMES_EMPTY"; exports[1475] = "ER_AMBIGUOUS_FIELD_TERM"; exports[1476] = "ER_FOREIGN_SERVER_EXISTS"; exports[1477] = "ER_FOREIGN_SERVER_DOESNT_EXIST"; exports[1478] = "ER_ILLEGAL_HA_CREATE_OPTION"; exports[1479] = "ER_PARTITION_REQUIRES_VALUES_ERROR"; exports[1480] = "ER_PARTITION_WRONG_VALUES_ERROR"; exports[1481] = "ER_PARTITION_MAXVALUE_ERROR"; exports[1482] = "ER_PARTITION_SUBPARTITION_ERROR"; exports[1483] = "ER_PARTITION_SUBPART_MIX_ERROR"; exports[1484] = "ER_PARTITION_WRONG_NO_PART_ERROR"; exports[1485] = "ER_PARTITION_WRONG_NO_SUBPART_ERROR"; exports[1486] = "ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR"; exports[1487] = "ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR"; exports[1488] = "ER_FIELD_NOT_FOUND_PART_ERROR"; exports[1489] = "ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR"; exports[1490] = "ER_INCONSISTENT_PARTITION_INFO_ERROR"; exports[1491] = "ER_PARTITION_FUNC_NOT_ALLOWED_ERROR"; exports[1492] = "ER_PARTITIONS_MUST_BE_DEFINED_ERROR"; exports[1493] = "ER_RANGE_NOT_INCREASING_ERROR"; exports[1494] = "ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR"; exports[1495] = "ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR"; exports[1496] = "ER_PARTITION_ENTRY_ERROR"; exports[1497] = "ER_MIX_HANDLER_ERROR"; exports[1498] = "ER_PARTITION_NOT_DEFINED_ERROR"; exports[1499] = "ER_TOO_MANY_PARTITIONS_ERROR"; exports[1500] = "ER_SUBPARTITION_ERROR"; exports[1501] = "ER_CANT_CREATE_HANDLER_FILE"; exports[1502] = "ER_BLOB_FIELD_IN_PART_FUNC_ERROR"; exports[1503] = "ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF"; exports[1504] = "ER_NO_PARTS_ERROR"; exports[1505] = "ER_PARTITION_MGMT_ON_NONPARTITIONED"; exports[1506] = "ER_FOREIGN_KEY_ON_PARTITIONED"; exports[1507] = "ER_DROP_PARTITION_NON_EXISTENT"; exports[1508] = "ER_DROP_LAST_PARTITION"; exports[1509] = "ER_COALESCE_ONLY_ON_HASH_PARTITION"; exports[1510] = "ER_REORG_HASH_ONLY_ON_SAME_NO"; exports[1511] = "ER_REORG_NO_PARAM_ERROR"; exports[1512] = "ER_ONLY_ON_RANGE_LIST_PARTITION"; exports[1513] = "ER_ADD_PARTITION_SUBPART_ERROR"; exports[1514] = "ER_ADD_PARTITION_NO_NEW_PARTITION"; exports[1515] = "ER_COALESCE_PARTITION_NO_PARTITION"; exports[1516] = "ER_REORG_PARTITION_NOT_EXIST"; exports[1517] = "ER_SAME_NAME_PARTITION"; exports[1518] = "ER_NO_BINLOG_ERROR"; exports[1519] = "ER_CONSECUTIVE_REORG_PARTITIONS"; exports[1520] = "ER_REORG_OUTSIDE_RANGE"; exports[1521] = "ER_PARTITION_FUNCTION_FAILURE"; exports[1522] = "ER_PART_STATE_ERROR"; exports[1523] = "ER_LIMITED_PART_RANGE"; exports[1524] = "ER_PLUGIN_IS_NOT_LOADED"; exports[1525] = "ER_WRONG_VALUE"; exports[1526] = "ER_NO_PARTITION_FOR_GIVEN_VALUE"; exports[1527] = "ER_FILEGROUP_OPTION_ONLY_ONCE"; exports[1528] = "ER_CREATE_FILEGROUP_FAILED"; exports[1529] = "ER_DROP_FILEGROUP_FAILED"; exports[1530] = "ER_TABLESPACE_AUTO_EXTEND_ERROR"; exports[1531] = "ER_WRONG_SIZE_NUMBER"; exports[1532] = "ER_SIZE_OVERFLOW_ERROR"; exports[1533] = "ER_ALTER_FILEGROUP_FAILED"; exports[1534] = "ER_BINLOG_ROW_LOGGING_FAILED"; exports[1535] = "ER_BINLOG_ROW_WRONG_TABLE_DEF"; exports[1536] = "ER_BINLOG_ROW_RBR_TO_SBR"; exports[1537] = "ER_EVENT_ALREADY_EXISTS"; exports[1538] = "ER_EVENT_STORE_FAILED"; exports[1539] = "ER_EVENT_DOES_NOT_EXIST"; exports[1540] = "ER_EVENT_CANT_ALTER"; exports[1541] = "ER_EVENT_DROP_FAILED"; exports[1542] = "ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG"; exports[1543] = "ER_EVENT_ENDS_BEFORE_STARTS"; exports[1544] = "ER_EVENT_EXEC_TIME_IN_THE_PAST"; exports[1545] = "ER_EVENT_OPEN_TABLE_FAILED"; exports[1546] = "ER_EVENT_NEITHER_M_EXPR_NOR_M_AT"; exports[1547] = "ER_COL_COUNT_DOESNT_MATCH_CORRUPTED"; exports[1548] = "ER_CANNOT_LOAD_FROM_TABLE"; exports[1549] = "ER_EVENT_CANNOT_DELETE"; exports[1550] = "ER_EVENT_COMPILE_ERROR"; exports[1551] = "ER_EVENT_SAME_NAME"; exports[1552] = "ER_EVENT_DATA_TOO_LONG"; exports[1553] = "ER_DROP_INDEX_FK"; exports[1554] = "ER_WARN_DEPRECATED_SYNTAX_WITH_VER"; exports[1555] = "ER_CANT_WRITE_LOCK_LOG_TABLE"; exports[1556] = "ER_CANT_LOCK_LOG_TABLE"; exports[1557] = "ER_FOREIGN_DUPLICATE_KEY"; exports[1558] = "ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE"; exports[1559] = "ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR"; exports[1560] = "ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT"; exports[1561] = "ER_NDB_CANT_SWITCH_BINLOG_FORMAT"; exports[1562] = "ER_PARTITION_NO_TEMPORARY"; exports[1563] = "ER_PARTITION_CONST_DOMAIN_ERROR"; exports[1564] = "ER_PARTITION_FUNCTION_IS_NOT_ALLOWED"; exports[1565] = "ER_DDL_LOG_ERROR"; exports[1566] = "ER_NULL_IN_VALUES_LESS_THAN"; exports[1567] = "ER_WRONG_PARTITION_NAME"; exports[1568] = "ER_CANT_CHANGE_TX_ISOLATION"; exports[1569] = "ER_DUP_ENTRY_AUTOINCREMENT_CASE"; exports[1570] = "ER_EVENT_MODIFY_QUEUE_ERROR"; exports[1571] = "ER_EVENT_SET_VAR_ERROR"; exports[1572] = "ER_PARTITION_MERGE_ERROR"; exports[1573] = "ER_CANT_ACTIVATE_LOG"; exports[1574] = "ER_RBR_NOT_AVAILABLE"; exports[1575] = "ER_BASE64_DECODE_ERROR"; exports[1576] = "ER_EVENT_RECURSION_FORBIDDEN"; exports[1577] = "ER_EVENTS_DB_ERROR"; exports[1578] = "ER_ONLY_INTEGERS_ALLOWED"; exports[1579] = "ER_UNSUPORTED_LOG_ENGINE"; exports[1580] = "ER_BAD_LOG_STATEMENT"; exports[1581] = "ER_CANT_RENAME_LOG_TABLE"; exports[1582] = "ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT"; exports[1583] = "ER_WRONG_PARAMETERS_TO_NATIVE_FCT"; exports[1584] = "ER_WRONG_PARAMETERS_TO_STORED_FCT"; exports[1585] = "ER_NATIVE_FCT_NAME_COLLISION"; exports[1586] = "ER_DUP_ENTRY_WITH_KEY_NAME"; exports[1587] = "ER_BINLOG_PURGE_EMFILE"; exports[1588] = "ER_EVENT_CANNOT_CREATE_IN_THE_PAST"; exports[1589] = "ER_EVENT_CANNOT_ALTER_IN_THE_PAST"; exports[1590] = "ER_REPLICA_INCIDENT"; exports[1591] = "ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT"; exports[1592] = "ER_BINLOG_UNSAFE_STATEMENT"; exports[1593] = "ER_REPLICA_FATAL_ERROR"; exports[1594] = "ER_REPLICA_RELAY_LOG_READ_FAILURE"; exports[1595] = "ER_REPLICA_RELAY_LOG_WRITE_FAILURE"; exports[1596] = "ER_REPLICA_CREATE_EVENT_FAILURE"; exports[1597] = "ER_REPLICA_SOURCE_COM_FAILURE"; exports[1598] = "ER_BINLOG_LOGGING_IMPOSSIBLE"; exports[1599] = "ER_VIEW_NO_CREATION_CTX"; exports[1600] = "ER_VIEW_INVALID_CREATION_CTX"; exports[1601] = "ER_SR_INVALID_CREATION_CTX"; exports[1602] = "ER_TRG_CORRUPTED_FILE"; exports[1603] = "ER_TRG_NO_CREATION_CTX"; exports[1604] = "ER_TRG_INVALID_CREATION_CTX"; exports[1605] = "ER_EVENT_INVALID_CREATION_CTX"; exports[1606] = "ER_TRG_CANT_OPEN_TABLE"; exports[1607] = "ER_CANT_CREATE_SROUTINE"; exports[1608] = "ER_NEVER_USED"; exports[1609] = "ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT"; exports[1610] = "ER_REPLICA_CORRUPT_EVENT"; exports[1611] = "ER_LOAD_DATA_INVALID_COLUMN"; exports[1612] = "ER_LOG_PURGE_NO_FILE"; exports[1613] = "ER_XA_RBTIMEOUT"; exports[1614] = "ER_XA_RBDEADLOCK"; exports[1615] = "ER_NEED_REPREPARE"; exports[1616] = "ER_DELAYED_NOT_SUPPORTED"; exports[1617] = "WARN_NO_SOURCE_INFO"; exports[1618] = "WARN_OPTION_IGNORED"; exports[1619] = "WARN_PLUGIN_DELETE_BUILTIN"; exports[1620] = "WARN_PLUGIN_BUSY"; exports[1621] = "ER_VARIABLE_IS_READONLY"; exports[1622] = "ER_WARN_ENGINE_TRANSACTION_ROLLBACK"; exports[1623] = "ER_REPLICA_HEARTBEAT_FAILURE"; exports[1624] = "ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE"; exports[1625] = "ER_NDB_REPLICATION_SCHEMA_ERROR"; exports[1626] = "ER_CONFLICT_FN_PARSE_ERROR"; exports[1627] = "ER_EXCEPTIONS_WRITE_ERROR"; exports[1628] = "ER_TOO_LONG_TABLE_COMMENT"; exports[1629] = "ER_TOO_LONG_FIELD_COMMENT"; exports[1630] = "ER_FUNC_INEXISTENT_NAME_COLLISION"; exports[1631] = "ER_DATABASE_NAME"; exports[1632] = "ER_TABLE_NAME"; exports[1633] = "ER_PARTITION_NAME"; exports[1634] = "ER_SUBPARTITION_NAME"; exports[1635] = "ER_TEMPORARY_NAME"; exports[1636] = "ER_RENAMED_NAME"; exports[1637] = "ER_TOO_MANY_CONCURRENT_TRXS"; exports[1638] = "WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED"; exports[1639] = "ER_DEBUG_SYNC_TIMEOUT"; exports[1640] = "ER_DEBUG_SYNC_HIT_LIMIT"; exports[1641] = "ER_DUP_SIGNAL_SET"; exports[1642] = "ER_SIGNAL_WARN"; exports[1643] = "ER_SIGNAL_NOT_FOUND"; exports[1644] = "ER_SIGNAL_EXCEPTION"; exports[1645] = "ER_RESIGNAL_WITHOUT_ACTIVE_HANDLER"; exports[1646] = "ER_SIGNAL_BAD_CONDITION_TYPE"; exports[1647] = "WARN_COND_ITEM_TRUNCATED"; exports[1648] = "ER_COND_ITEM_TOO_LONG"; exports[1649] = "ER_UNKNOWN_LOCALE"; exports[1650] = "ER_REPLICA_IGNORE_SERVER_IDS"; exports[1651] = "ER_QUERY_CACHE_DISABLED"; exports[1652] = "ER_SAME_NAME_PARTITION_FIELD"; exports[1653] = "ER_PARTITION_COLUMN_LIST_ERROR"; exports[1654] = "ER_WRONG_TYPE_COLUMN_VALUE_ERROR"; exports[1655] = "ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR"; exports[1656] = "ER_MAXVALUE_IN_VALUES_IN"; exports[1657] = "ER_TOO_MANY_VALUES_ERROR"; exports[1658] = "ER_ROW_SINGLE_PARTITION_FIELD_ERROR"; exports[1659] = "ER_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD"; exports[1660] = "ER_PARTITION_FIELDS_TOO_LONG"; exports[1661] = "ER_BINLOG_ROW_ENGINE_AND_STMT_ENGINE"; exports[1662] = "ER_BINLOG_ROW_MODE_AND_STMT_ENGINE"; exports[1663] = "ER_BINLOG_UNSAFE_AND_STMT_ENGINE"; exports[1664] = "ER_BINLOG_ROW_INJECTION_AND_STMT_ENGINE"; exports[1665] = "ER_BINLOG_STMT_MODE_AND_ROW_ENGINE"; exports[1666] = "ER_BINLOG_ROW_INJECTION_AND_STMT_MODE"; exports[1667] = "ER_BINLOG_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE"; exports[1668] = "ER_BINLOG_UNSAFE_LIMIT"; exports[1669] = "ER_BINLOG_UNSAFE_INSERT_DELAYED"; exports[1670] = "ER_BINLOG_UNSAFE_SYSTEM_TABLE"; exports[1671] = "ER_BINLOG_UNSAFE_AUTOINC_COLUMNS"; exports[1672] = "ER_BINLOG_UNSAFE_UDF"; exports[1673] = "ER_BINLOG_UNSAFE_SYSTEM_VARIABLE"; exports[1674] = "ER_BINLOG_UNSAFE_SYSTEM_FUNCTION"; exports[1675] = "ER_BINLOG_UNSAFE_NONTRANS_AFTER_TRANS"; exports[1676] = "ER_MESSAGE_AND_STATEMENT"; exports[1677] = "ER_REPLICA_CONVERSION_FAILED"; exports[1678] = "ER_REPLICA_CANT_CREATE_CONVERSION"; exports[1679] = "ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_FORMAT"; exports[1680] = "ER_PATH_LENGTH"; exports[1681] = "ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT"; exports[1682] = "ER_WRONG_NATIVE_TABLE_STRUCTURE"; exports[1683] = "ER_WRONG_PERFSCHEMA_USAGE"; exports[1684] = "ER_WARN_I_S_SKIPPED_TABLE"; exports[1685] = "ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_DIRECT"; exports[1686] = "ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_DIRECT"; exports[1687] = "ER_SPATIAL_MUST_HAVE_GEOM_COL"; exports[1688] = "ER_TOO_LONG_INDEX_COMMENT"; exports[1689] = "ER_LOCK_ABORTED"; exports[1690] = "ER_DATA_OUT_OF_RANGE"; exports[1691] = "ER_WRONG_SPVAR_TYPE_IN_LIMIT"; exports[1692] = "ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE"; exports[1693] = "ER_BINLOG_UNSAFE_MIXED_STATEMENT"; exports[1694] = "ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_SQL_LOG_BIN"; exports[1695] = "ER_STORED_FUNCTION_PREVENTS_SWITCH_SQL_LOG_BIN"; exports[1696] = "ER_FAILED_READ_FROM_PAR_FILE"; exports[1697] = "ER_VALUES_IS_NOT_INT_TYPE_ERROR"; exports[1698] = "ER_ACCESS_DENIED_NO_PASSWORD_ERROR"; exports[1699] = "ER_SET_PASSWORD_AUTH_PLUGIN"; exports[1700] = "ER_GRANT_PLUGIN_USER_EXISTS"; exports[1701] = "ER_TRUNCATE_ILLEGAL_FK"; exports[1702] = "ER_PLUGIN_IS_PERMANENT"; exports[1703] = "ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN"; exports[1704] = "ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX"; exports[1705] = "ER_STMT_CACHE_FULL"; exports[1706] = "ER_MULTI_UPDATE_KEY_CONFLICT"; exports[1707] = "ER_TABLE_NEEDS_REBUILD"; exports[1708] = "WARN_OPTION_BELOW_LIMIT"; exports[1709] = "ER_INDEX_COLUMN_TOO_LONG"; exports[1710] = "ER_ERROR_IN_TRIGGER_BODY"; exports[1711] = "ER_ERROR_IN_UNKNOWN_TRIGGER_BODY"; exports[1712] = "ER_INDEX_CORRUPT"; exports[1713] = "ER_UNDO_RECORD_TOO_BIG"; exports[1714] = "ER_BINLOG_UNSAFE_INSERT_IGNORE_SELECT"; exports[1715] = "ER_BINLOG_UNSAFE_INSERT_SELECT_UPDATE"; exports[1716] = "ER_BINLOG_UNSAFE_REPLACE_SELECT"; exports[1717] = "ER_BINLOG_UNSAFE_CREATE_IGNORE_SELECT"; exports[1718] = "ER_BINLOG_UNSAFE_CREATE_REPLACE_SELECT"; exports[1719] = "ER_BINLOG_UNSAFE_UPDATE_IGNORE"; exports[1720] = "ER_PLUGIN_NO_UNINSTALL"; exports[1721] = "ER_PLUGIN_NO_INSTALL"; exports[1722] = "ER_BINLOG_UNSAFE_WRITE_AUTOINC_SELECT"; exports[1723] = "ER_BINLOG_UNSAFE_CREATE_SELECT_AUTOINC"; exports[1724] = "ER_BINLOG_UNSAFE_INSERT_TWO_KEYS"; exports[1725] = "ER_TABLE_IN_FK_CHECK"; exports[1726] = "ER_UNSUPPORTED_ENGINE"; exports[1727] = "ER_BINLOG_UNSAFE_AUTOINC_NOT_FIRST"; exports[1728] = "ER_CANNOT_LOAD_FROM_TABLE_V2"; exports[1729] = "ER_SOURCE_DELAY_VALUE_OUT_OF_RANGE"; exports[1730] = "ER_ONLY_FD_AND_RBR_EVENTS_ALLOWED_IN_BINLOG_STATEMENT"; exports[1731] = "ER_PARTITION_EXCHANGE_DIFFERENT_OPTION"; exports[1732] = "ER_PARTITION_EXCHANGE_PART_TABLE"; exports[1733] = "ER_PARTITION_EXCHANGE_TEMP_TABLE"; exports[1734] = "ER_PARTITION_INSTEAD_OF_SUBPARTITION"; exports[1735] = "ER_UNKNOWN_PARTITION"; exports[1736] = "ER_TABLES_DIFFERENT_METADATA"; exports[1737] = "ER_ROW_DOES_NOT_MATCH_PARTITION"; exports[1738] = "ER_BINLOG_CACHE_SIZE_GREATER_THAN_MAX"; exports[1739] = "ER_WARN_INDEX_NOT_APPLICABLE"; exports[1740] = "ER_PARTITION_EXCHANGE_FOREIGN_KEY"; exports[1741] = "ER_NO_SUCH_KEY_VALUE"; exports[1742] = "ER_RPL_INFO_DATA_TOO_LONG"; exports[1743] = "ER_NETWORK_READ_EVENT_CHECKSUM_FAILURE"; exports[1744] = "ER_BINLOG_READ_EVENT_CHECKSUM_FAILURE"; exports[1745] = "ER_BINLOG_STMT_CACHE_SIZE_GREATER_THAN_MAX"; exports[1746] = "ER_CANT_UPDATE_TABLE_IN_CREATE_TABLE_SELECT"; exports[1747] = "ER_PARTITION_CLAUSE_ON_NONPARTITIONED"; exports[1748] = "ER_ROW_DOES_NOT_MATCH_GIVEN_PARTITION_SET"; exports[1749] = "ER_NO_SUCH_PARTITION"; exports[1750] = "ER_CHANGE_RPL_INFO_REPOSITORY_FAILURE"; exports[1751] = "ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_CREATED_TEMP_TABLE"; exports[1752] = "ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_DROPPED_TEMP_TABLE"; exports[1753] = "ER_MTS_FEATURE_IS_NOT_SUPPORTED"; exports[1754] = "ER_MTS_UPDATED_DBS_GREATER_MAX"; exports[1755] = "ER_MTS_CANT_PARALLEL"; exports[1756] = "ER_MTS_INCONSISTENT_DATA"; exports[1757] = "ER_FULLTEXT_NOT_SUPPORTED_WITH_PARTITIONING"; exports[1758] = "ER_DA_INVALID_CONDITION_NUMBER"; exports[1759] = "ER_INSECURE_PLAIN_TEXT"; exports[1760] = "ER_INSECURE_CHANGE_SOURCE"; exports[1761] = "ER_FOREIGN_DUPLICATE_KEY_WITH_CHILD_INFO"; exports[1762] = "ER_FOREIGN_DUPLICATE_KEY_WITHOUT_CHILD_INFO"; exports[1763] = "ER_SQLTHREAD_WITH_SECURE_REPLICA"; exports[1764] = "ER_TABLE_HAS_NO_FT"; exports[1765] = "ER_VARIABLE_NOT_SETTABLE_IN_SF_OR_TRIGGER"; exports[1766] = "ER_VARIABLE_NOT_SETTABLE_IN_TRANSACTION"; exports[1767] = "ER_GTID_NEXT_IS_NOT_IN_GTID_NEXT_LIST"; exports[1768] = "ER_CANT_CHANGE_GTID_NEXT_IN_TRANSACTION_WHEN_GTID_NEXT_LIST_IS_NULL"; exports[1769] = "ER_SET_STATEMENT_CANNOT_INVOKE_FUNCTION"; exports[1770] = "ER_GTID_NEXT_CANT_BE_AUTOMATIC_IF_GTID_NEXT_LIST_IS_NON_NULL"; exports[1771] = "ER_SKIPPING_LOGGED_TRANSACTION"; exports[1772] = "ER_MALFORMED_GTID_SET_SPECIFICATION"; exports[1773] = "ER_MALFORMED_GTID_SET_ENCODING"; exports[1774] = "ER_MALFORMED_GTID_SPECIFICATION"; exports[1775] = "ER_GNO_EXHAUSTED"; exports[1776] = "ER_BAD_REPLICA_AUTO_POSITION"; exports[1777] = "ER_AUTO_POSITION_REQUIRES_GTID_MODE_ON"; exports[1778] = "ER_CANT_DO_IMPLICIT_COMMIT_IN_TRX_WHEN_GTID_NEXT_IS_SET"; exports[1779] = "ER_GTID_MODE_2_OR_3_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON"; exports[1780] = "ER_GTID_MODE_REQUIRES_BINLOG"; exports[1781] = "ER_CANT_SET_GTID_NEXT_TO_GTID_WHEN_GTID_MODE_IS_OFF"; exports[1782] = "ER_CANT_SET_GTID_NEXT_TO_ANONYMOUS_WHEN_GTID_MODE_IS_ON"; exports[1783] = "ER_CANT_SET_GTID_NEXT_LIST_TO_NON_NULL_WHEN_GTID_MODE_IS_OFF"; exports[1784] = "ER_FOUND_GTID_EVENT_WHEN_GTID_MODE_IS_OFF"; exports[1785] = "ER_GTID_UNSAFE_NON_TRANSACTIONAL_TABLE"; exports[1786] = "ER_GTID_UNSAFE_CREATE_SELECT"; exports[1787] = "ER_GTID_UNSAFE_CREATE_DROP_TEMPORARY_TABLE_IN_TRANSACTION"; exports[1788] = "ER_GTID_MODE_CAN_ONLY_CHANGE_ONE_STEP_AT_A_TIME"; exports[1789] = "ER_SOURCE_HAS_PURGED_REQUIRED_GTIDS"; exports[1790] = "ER_CANT_SET_GTID_NEXT_WHEN_OWNING_GTID"; exports[1791] = "ER_UNKNOWN_EXPLAIN_FORMAT"; exports[1792] = "ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION"; exports[1793] = "ER_TOO_LONG_TABLE_PARTITION_COMMENT"; exports[1794] = "ER_REPLICA_CONFIGURATION"; exports[1795] = "ER_INNODB_FT_LIMIT"; exports[1796] = "ER_INNODB_NO_FT_TEMP_TABLE"; exports[1797] = "ER_INNODB_FT_WRONG_DOCID_COLUMN"; exports[1798] = "ER_INNODB_FT_WRONG_DOCID_INDEX"; exports[1799] = "ER_INNODB_ONLINE_LOG_TOO_BIG"; exports[1800] = "ER_UNKNOWN_ALTER_ALGORITHM"; exports[1801] = "ER_UNKNOWN_ALTER_LOCK"; exports[1802] = "ER_MTS_CHANGE_SOURCE_CANT_RUN_WITH_GAPS"; exports[1803] = "ER_MTS_RECOVERY_FAILURE"; exports[1804] = "ER_MTS_RESET_WORKERS"; exports[1805] = "ER_COL_COUNT_DOESNT_MATCH_CORRUPTED_V2"; exports[1806] = "ER_REPLICA_SILENT_RETRY_TRANSACTION"; exports[1807] = "ER_DISCARD_FK_CHECKS_RUNNING"; exports[1808] = "ER_TABLE_SCHEMA_MISMATCH"; exports[1809] = "ER_TABLE_IN_SYSTEM_TABLESPACE"; exports[1810] = "ER_IO_READ_ERROR"; exports[1811] = "ER_IO_WRITE_ERROR"; exports[1812] = "ER_TABLESPACE_MISSING"; exports[1813] = "ER_TABLESPACE_EXISTS"; exports[1814] = "ER_TABLESPACE_DISCARDED"; exports[1815] = "ER_INTERNAL_ERROR"; exports[1816] = "ER_INNODB_IMPORT_ERROR"; exports[1817] = "ER_INNODB_INDEX_CORRUPT"; exports[1818] = "ER_INVALID_YEAR_COLUMN_LENGTH"; exports[1819] = "ER_NOT_VALID_PASSWORD"; exports[1820] = "ER_MUST_CHANGE_PASSWORD"; exports[1821] = "ER_FK_NO_INDEX_CHILD"; exports[1822] = "ER_FK_NO_INDEX_PARENT"; exports[1823] = "ER_FK_FAIL_ADD_SYSTEM"; exports[1824] = "ER_FK_CANNOT_OPEN_PARENT"; exports[1825] = "ER_FK_INCORRECT_OPTION"; exports[1826] = "ER_FK_DUP_NAME"; exports[1827] = "ER_PASSWORD_FORMAT"; exports[1828] = "ER_FK_COLUMN_CANNOT_DROP"; exports[1829] = "ER_FK_COLUMN_CANNOT_DROP_CHILD"; exports[1830] = "ER_FK_COLUMN_NOT_NULL"; exports[1831] = "ER_DUP_INDEX"; exports[1832] = "ER_FK_COLUMN_CANNOT_CHANGE"; exports[1833] = "ER_FK_COLUMN_CANNOT_CHANGE_CHILD"; exports[1834] = "ER_FK_CANNOT_DELETE_PARENT"; exports[1835] = "ER_MALFORMED_PACKET"; exports[1836] = "ER_READ_ONLY_MODE"; exports[1837] = "ER_GTID_NEXT_TYPE_UNDEFINED_GROUP"; exports[1838] = "ER_VARIABLE_NOT_SETTABLE_IN_SP"; exports[1839] = "ER_CANT_SET_GTID_PURGED_WHEN_GTID_MODE_IS_OFF"; exports[1840] = "ER_CANT_SET_GTID_PURGED_WHEN_GTID_EXECUTED_IS_NOT_EMPTY"; exports[1841] = "ER_CANT_SET_GTID_PURGED_WHEN_OWNED_GTIDS_IS_NOT_EMPTY"; exports[1842] = "ER_GTID_PURGED_WAS_CHANGED"; exports[1843] = "ER_GTID_EXECUTED_WAS_CHANGED"; exports[1844] = "ER_BINLOG_STMT_MODE_AND_NO_REPL_TABLES"; exports[1845] = "ER_ALTER_OPERATION_NOT_SUPPORTED"; exports[1846] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON"; exports[1847] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COPY"; exports[1848] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_PARTITION"; exports[1849] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_RENAME"; exports[1850] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COLUMN_TYPE"; exports[1851] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_CHECK"; exports[1852] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_IGNORE"; exports[1853] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOPK"; exports[1854] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_AUTOINC"; exports[1855] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_HIDDEN_FTS"; exports[1856] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_CHANGE_FTS"; exports[1857] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FTS"; exports[1858] = "ER_SQL_REPLICA_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE"; exports[1859] = "ER_DUP_UNKNOWN_IN_INDEX"; exports[1860] = "ER_IDENT_CAUSES_TOO_LONG_PATH"; exports[1861] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOT_NULL"; exports[1862] = "ER_MUST_CHANGE_PASSWORD_LOGIN"; exports[1863] = "ER_ROW_IN_WRONG_PARTITION"; exports[1864] = "ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX"; exports[1865] = "ER_INNODB_NO_FT_USES_PARSER"; exports[1866] = "ER_BINLOG_LOGICAL_CORRUPTION"; exports[1867] = "ER_WARN_PURGE_LOG_IN_USE"; exports[1868] = "ER_WARN_PURGE_LOG_IS_ACTIVE"; exports[1869] = "ER_AUTO_INCREMENT_CONFLICT"; exports[1870] = "WARN_ON_BLOCKHOLE_IN_RBR"; exports[1871] = "ER_REPLICA_MI_INIT_REPOSITORY"; exports[1872] = "ER_REPLICA_RLI_INIT_REPOSITORY"; exports[1873] = "ER_ACCESS_DENIED_CHANGE_USER_ERROR"; exports[1874] = "ER_INNODB_READ_ONLY"; exports[1875] = "ER_STOP_REPLICA_SQL_THREAD_TIMEOUT"; exports[1876] = "ER_STOP_REPLICA_IO_THREAD_TIMEOUT"; exports[1877] = "ER_TABLE_CORRUPT"; exports[1878] = "ER_TEMP_FILE_WRITE_FAILURE"; exports[1879] = "ER_INNODB_FT_AUX_NOT_HEX_ID"; exports[1880] = "ER_OLD_TEMPORALS_UPGRADED"; exports[1881] = "ER_INNODB_FORCED_RECOVERY"; exports[1882] = "ER_AES_INVALID_IV"; exports[1883] = "ER_FILE_CORRUPT"; exports[1884] = "ER_ERROR_ON_SOURCE"; exports[1885] = "ER_INCONSISTENT_ERROR"; exports[1886] = "ER_STORAGE_ENGINE_NOT_LOADED"; exports[1887] = "ER_GET_STACKED_DA_WITHOUT_ACTIVE_HANDLER"; exports[1888] = "ER_WARN_LEGACY_SYNTAX_CONVERTED"; exports[1889] = "ER_BINLOG_UNSAFE_FULLTEXT_PLUGIN"; exports[1890] = "ER_CANNOT_DISCARD_TEMPORARY_TABLE"; exports[1891] = "ER_FK_DEPTH_EXCEEDED"; exports[1892] = "ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE_V2"; exports[1893] = "ER_WARN_TRIGGER_DOESNT_HAVE_CREATED"; exports[1894] = "ER_REFERENCED_TRG_DOES_NOT_EXIST"; exports[1895] = "ER_EXPLAIN_NOT_SUPPORTED"; exports[1896] = "ER_INVALID_FIELD_SIZE"; exports[1897] = "ER_MISSING_HA_CREATE_OPTION"; exports[1898] = "ER_ENGINE_OUT_OF_MEMORY"; exports[1899] = "ER_PASSWORD_EXPIRE_ANONYMOUS_USER"; exports[1900] = "ER_REPLICA_SQL_THREAD_MUST_STOP"; exports[1901] = "ER_NO_FT_MATERIALIZED_SUBQUERY"; exports[1902] = "ER_INNODB_UNDO_LOG_FULL"; exports[1903] = "ER_INVALID_ARGUMENT_FOR_LOGARITHM"; exports[1904] = "ER_REPLICA_IO_THREAD_MUST_STOP"; exports[1905] = "ER_WARN_OPEN_TEMP_TABLES_MUST_BE_ZERO"; exports[1906] = "ER_WARN_ONLY_SOURCE_LOG_FILE_NO_POS"; exports[1907] = "ER_QUERY_TIMEOUT"; exports[1908] = "ER_NON_RO_SELECT_DISABLE_TIMER"; exports[1909] = "ER_DUP_LIST_ENTRY"; exports[1910] = "ER_SQL_MODE_NO_EFFECT"; exports[3169] = "ER_SESSION_WAS_KILLED"; exports[4031] = "ER_CLIENT_INTERACTION_TIMEOUT"; } }); // ../../node_modules/.pnpm/long@4.0.0/node_modules/long/src/long.js var require_long = __commonJS({ "../../node_modules/.pnpm/long@4.0.0/node_modules/long/src/long.js"(exports, module2) { module2.exports = Long; var wasm = null; try { wasm = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([ 0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11 ])), {}).exports; } catch (e2) { } function Long(low, high, unsigned) { this.low = low | 0; this.high = high | 0; this.unsigned = !!unsigned; } Long.prototype.__isLong__; Object.defineProperty(Long.prototype, "__isLong__", { value: true }); function isLong(obj) { return (obj && obj["__isLong__"]) === true; } Long.isLong = isLong; var INT_CACHE = {}; var UINT_CACHE = {}; function fromInt(value, unsigned) { var obj, cachedObj, cache; if (unsigned) { value >>>= 0; if (cache = 0 <= value && value < 256) { cachedObj = UINT_CACHE[value]; if (cachedObj) return cachedObj; } obj = fromBits(value, (value | 0) < 0 ? -1 : 0, true); if (cache) UINT_CACHE[value] = obj; return obj; } else { value |= 0; if (cache = -128 <= value && value < 128) { cachedObj = INT_CACHE[value]; if (cachedObj) return cachedObj; } obj = fromBits(value, value < 0 ? -1 : 0, false); if (cache) INT_CACHE[value] = obj; return obj; } } Long.fromInt = fromInt; function fromNumber(value, unsigned) { if (isNaN(value)) return unsigned ? UZERO : ZERO; if (unsigned) { if (value < 0) return UZERO; if (value >= TWO_PWR_64_DBL) return MAX_UNSIGNED_VALUE; } else { if (value <= -TWO_PWR_63_DBL) return MIN_VALUE; if (value + 1 >= TWO_PWR_63_DBL) return MAX_VALUE; } if (value < 0) return fromNumber(-value, unsigned).neg(); return fromBits(value % TWO_PWR_32_DBL | 0, value / TWO_PWR_32_DBL | 0, unsigned); } Long.fromNumber = fromNumber; function fromBits(lowBits, highBits, unsigned) { return new Long(lowBits, highBits, unsigned); } Long.fromBits = fromBits; var pow_dbl = Math.pow; function fromString(str, unsigned, radix) { if (str.length === 0) throw Error("empty string"); if (str === "NaN" || str === "Infinity" || str === "+Infinity" || str === "-Infinity") return ZERO; if (typeof unsigned === "number") { radix = unsigned, unsigned = false; } else { unsigned = !!unsigned; } radix = radix || 10; if (radix < 2 || 36 < radix) throw RangeError("radix"); var p; if ((p = str.indexOf("-")) > 0) throw Error("interior hyphen"); else if (p === 0) { return fromString(str.substring(1), unsigned, radix).neg(); } var radixToPower = fromNumber(pow_dbl(radix, 8)); var result = ZERO; for (var i2 = 0; i2 < str.length; i2 += 8) { var size = Math.min(8, str.length - i2), value = parseInt(str.substring(i2, i2 + size), radix); if (size < 8) { var power = fromNumber(pow_dbl(radix, size)); result = result.mul(power).add(fromNumber(value)); } else { result = result.mul(radixToPower); result = result.add(fromNumber(value)); } } result.unsigned = unsigned; return result; } Long.fromString = fromString; function fromValue(val, unsigned) { if (typeof val === "number") return fromNumber(val, unsigned); if (typeof val === "string") return fromString(val, unsigned); return fromBits(val.low, val.high, typeof unsigned === "boolean" ? unsigned : val.unsigned); } Long.fromValue = fromValue; var TWO_PWR_16_DBL = 1 << 16; var TWO_PWR_24_DBL = 1 << 24; var TWO_PWR_32_DBL = TWO_PWR_16_DBL * TWO_PWR_16_DBL; var TWO_PWR_64_DBL = TWO_PWR_32_DBL * TWO_PWR_32_DBL; var TWO_PWR_63_DBL = TWO_PWR_64_DBL / 2; var TWO_PWR_24 = fromInt(TWO_PWR_24_DBL); var ZERO = fromInt(0); Long.ZERO = ZERO; var UZERO = fromInt(0, true); Long.UZERO = UZERO; var ONE = fromInt(1); Long.ONE = ONE; var UONE = fromInt(1, true); Long.UONE = UONE; var NEG_ONE = fromInt(-1); Long.NEG_ONE = NEG_ONE; var MAX_VALUE = fromBits(4294967295 | 0, 2147483647 | 0, false); Long.MAX_VALUE = MAX_VALUE; var MAX_UNSIGNED_VALUE = fromBits(4294967295 | 0, 4294967295 | 0, true); Long.MAX_UNSIGNED_VALUE = MAX_UNSIGNED_VALUE; var MIN_VALUE = fromBits(0, 2147483648 | 0, false); Long.MIN_VALUE = MIN_VALUE; var LongPrototype = Long.prototype; LongPrototype.toInt = function toInt() { return this.unsigned ? this.low >>> 0 : this.low; }; LongPrototype.toNumber = function toNumber() { if (this.unsigned) return (this.high >>> 0) * TWO_PWR_32_DBL + (this.low >>> 0); return this.high * TWO_PWR_32_DBL + (this.low >>> 0); }; LongPrototype.toString = function toString(radix) { radix = radix || 10; if (radix < 2 || 36 < radix) throw RangeError("radix"); if (this.isZero()) return "0"; if (this.isNegative()) { if (this.eq(MIN_VALUE)) { var radixLong = fromNumber(radix), div = this.div(radixLong), rem1 = div.mul(radixLong).sub(this); return div.toString(radix) + rem1.toInt().toString(radix); } else return "-" + this.neg().toString(radix); } var radixToPower = fromNumber(pow_dbl(radix, 6), this.unsigned), rem = this; var result = ""; while (true) { var remDiv = rem.div(radixToPower), intval = rem.sub(remDiv.mul(radixToPower)).toInt() >>> 0, digits = intval.toString(radix); rem = remDiv; if (rem.isZero()) return digits + result; else { while (digits.length < 6) digits = "0" + digits; result = "" + digits + result; } } }; LongPrototype.getHighBits = function getHighBits() { return this.high; }; LongPrototype.getHighBitsUnsigned = function getHighBitsUnsigned() { return this.high >>> 0; }; LongPrototype.getLowBits = function getLowBits() { return this.low; }; LongPrototype.getLowBitsUnsigned = function getLowBitsUnsigned() { return this.low >>> 0; }; LongPrototype.getNumBitsAbs = function getNumBitsAbs() { if (this.isNegative()) return this.eq(MIN_VALUE) ? 64 : this.neg().getNumBitsAbs(); var val = this.high != 0 ? this.high : this.low; for (var bit = 31; bit > 0; bit--) if ((val & 1 << bit) != 0) break; return this.high != 0 ? bit + 33 : bit + 1; }; LongPrototype.isZero = function isZero() { return this.high === 0 && this.low === 0; }; LongPrototype.eqz = LongPrototype.isZero; LongPrototype.isNegative = function isNegative() { return !this.unsigned && this.high < 0; }; LongPrototype.isPositive = function isPositive() { return this.unsigned || this.high >= 0; }; LongPrototype.isOdd = function isOdd() { return (this.low & 1) === 1; }; LongPrototype.isEven = function isEven() { return (this.low & 1) === 0; }; LongPrototype.equals = function equals(other) { if (!isLong(other)) other = fromValue(other); if (this.unsigned !== other.unsigned && this.high >>> 31 === 1 && other.high >>> 31 === 1) return false; return this.high === other.high && this.low === other.low; }; LongPrototype.eq = LongPrototype.equals; LongPrototype.notEquals = function notEquals(other) { return !this.eq(other); }; LongPrototype.neq = LongPrototype.notEquals; LongPrototype.ne = LongPrototype.notEquals; LongPrototype.lessThan = function lessThan(other) { return this.comp(other) < 0; }; LongPrototype.lt = LongPrototype.lessThan; LongPrototype.lessThanOrEqual = function lessThanOrEqual(other) { return this.comp(other) <= 0; }; LongPrototype.lte = LongPrototype.lessThanOrEqual; LongPrototype.le = LongPrototype.lessThanOrEqual; LongPrototype.greaterThan = function greaterThan(other) { return this.comp(other) > 0; }; LongPrototype.gt = LongPrototype.greaterThan; LongPrototype.greaterThanOrEqual = function greaterThanOrEqual(other) { return this.comp(other) >= 0; }; LongPrototype.gte = LongPrototype.greaterThanOrEqual; LongPrototype.ge = LongPrototype.greaterThanOrEqual; LongPrototype.compare = function compare(other) { if (!isLong(other)) other = fromValue(other); if (this.eq(other)) return 0; var thisNeg = this.isNegative(), otherNeg = other.isNegative(); if (thisNeg && !otherNeg) return -1; if (!thisNeg && otherNeg) return 1; if (!this.unsigned) return this.sub(other).isNegative() ? -1 : 1; return other.high >>> 0 > this.high >>> 0 || other.high === this.high && other.low >>> 0 > this.low >>> 0 ? -1 : 1; }; LongPrototype.comp = LongPrototype.compare; LongPrototype.negate = function negate() { if (!this.unsigned && this.eq(MIN_VALUE)) return MIN_VALUE; return this.not().add(ONE); }; LongPrototype.neg = LongPrototype.negate; LongPrototype.add = function add(addend) { if (!isLong(addend)) addend = fromValue(addend); var a48 = this.high >>> 16; var a32 = this.high & 65535; var a16 = this.low >>> 16; var a00 = this.low & 65535; var b48 = addend.high >>> 16; var b32 = addend.high & 65535; var b16 = addend.low >>> 16; var b00 = addend.low & 65535; var c48 = 0, c32 = 0, c16 = 0, c00 = 0; c00 += a00 + b00; c16 += c00 >>> 16; c00 &= 65535; c16 += a16 + b16; c32 += c16 >>> 16; c16 &= 65535; c32 += a32 + b32; c48 += c32 >>> 16; c32 &= 65535; c48 += a48 + b48; c48 &= 65535; return fromBits(c16 << 16 | c00, c48 << 16 | c32, this.unsigned); }; LongPrototype.subtract = function subtract(subtrahend) { if (!isLong(subtrahend)) subtrahend = fromValue(subtrahend); return this.add(subtrahend.neg()); }; LongPrototype.sub = LongPrototype.subtract; LongPrototype.multiply = function multiply(multiplier) { if (this.isZero()) return ZERO; if (!isLong(multiplier)) multiplier = fromValue(multiplier); if (wasm) { var low = wasm.mul( this.low, this.high, multiplier.low, multiplier.high ); return fromBits(low, wasm.get_high(), this.unsigned); } if (multiplier.isZero()) return ZERO; if (this.eq(MIN_VALUE)) return multiplier.isOdd() ? MIN_VALUE : ZERO; if (multiplier.eq(MIN_VALUE)) return this.isOdd() ? MIN_VALUE : ZERO; if (this.isNegative()) { if (multiplier.isNegative()) return this.neg().mul(multiplier.neg()); else return this.neg().mul(multiplier).neg(); } else if (multiplier.isNegative()) return this.mul(multiplier.neg()).neg(); if (this.lt(TWO_PWR_24) && multiplier.lt(TWO_PWR_24)) return fromNumber(this.toNumber() * multiplier.toNumber(), this.unsigned); var a48 = this.high >>> 16; var a32 = this.high & 65535; var a16 = this.low >>> 16; var a00 = this.low & 65535; var b48 = multiplier.high >>> 16; var b32 = multiplier.high & 65535; var b16 = multiplier.low >>> 16; var b00 = multiplier.low & 65535; var c48 = 0, c32 = 0, c16 = 0, c00 = 0; c00 += a00 * b00; c16 += c00 >>> 16; c00 &= 65535; c16 += a16 * b00; c32 += c16 >>> 16; c16 &= 65535; c16 += a00 * b16; c32 += c16 >>> 16; c16 &= 65535; c32 += a32 * b00; c48 += c32 >>> 16; c32 &= 65535; c32 += a16 * b16; c48 += c32 >>> 16; c32 &= 65535; c32 += a00 * b32; c48 += c32 >>> 16; c32 &= 65535; c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48; c48 &= 65535; return fromBits(c16 << 16 | c00, c48 << 16 | c32, this.unsigned); }; LongPrototype.mul = LongPrototype.multiply; LongPrototype.divide = function divide(divisor) { if (!isLong(divisor)) divisor = fromValue(divisor); if (divisor.isZero()) throw Error("division by zero"); if (wasm) { if (!this.unsigned && this.high === -2147483648 && divisor.low === -1 && divisor.high === -1) { return this; } var low = (this.unsigned ? wasm.div_u : wasm.div_s)( this.low, this.high, divisor.low, divisor.high ); return fromBits(low, wasm.get_high(), this.unsigned); } if (this.isZero()) return this.unsigned ? UZERO : ZERO; var approx, rem, res; if (!this.unsigned) { if (this.eq(MIN_VALUE)) { if (divisor.eq(ONE) || divisor.eq(NEG_ONE)) return MIN_VALUE; else if (divisor.eq(MIN_VALUE)) return ONE; else { var halfThis = this.shr(1); approx = halfThis.div(divisor).shl(1); if (approx.eq(ZERO)) { return divisor.isNegative() ? ONE : NEG_ONE; } else { rem = this.sub(divisor.mul(approx)); res = approx.add(rem.div(divisor)); return res; } } } else if (divisor.eq(MIN_VALUE)) return this.unsigned ? UZERO : ZERO; if (this.isNegative()) { if (divisor.isNegative()) return this.neg().div(divisor.neg()); return this.neg().div(divisor).neg(); } else if (divisor.isNegative()) return this.div(divisor.neg()).neg(); res = ZERO; } else { if (!divisor.unsigned) divisor = divisor.toUnsigned(); if (divisor.gt(this)) return UZERO; if (divisor.gt(this.shru(1))) return UONE; res = UZERO; } rem = this; while (rem.gte(divisor)) { approx = Math.max(1, Math.floor(rem.toNumber() / divisor.toNumber())); var log2 = Math.ceil(Math.log(approx) / Math.LN2), delta = log2 <= 48 ? 1 : pow_dbl(2, log2 - 48), approxRes = fromNumber(approx), approxRem = approxRes.mul(divisor); while (approxRem.isNegative() || approxRem.gt(rem)) { approx -= delta; approxRes = fromNumber(approx, this.unsigned); approxRem = approxRes.mul(divisor); } if (approxRes.isZero()) approxRes = ONE; res = res.add(approxRes); rem = rem.sub(approxRem); } return res; }; LongPrototype.div = LongPrototype.divide; LongPrototype.modulo = function modulo(divisor) { if (!isLong(divisor)) divisor = fromValue(divisor); if (wasm) { var low = (this.unsigned ? wasm.rem_u : wasm.rem_s)( this.low, this.high, divisor.low, divisor.high ); return fromBits(low, wasm.get_high(), this.unsigned); } return this.sub(this.div(divisor).mul(divisor)); }; LongPrototype.mod = LongPrototype.modulo; LongPrototype.rem = LongPrototype.modulo; LongPrototype.not = function not() { return fromBits(~this.low, ~this.high, this.unsigned); }; LongPrototype.and = function and(other) { if (!isLong(other)) other = fromValue(other); return fromBits(this.low & other.low, this.high & other.high, this.unsigned); }; LongPrototype.or = function or(other) { if (!isLong(other)) other = fromValue(other); return fromBits(this.low | other.low, this.high | other.high, this.unsigned); }; LongPrototype.xor = function xor(other) { if (!isLong(other)) other = fromValue(other); return fromBits(this.low ^ other.low, this.high ^ other.high, this.unsigned); }; LongPrototype.shiftLeft = function shiftLeft(numBits) { if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; else if (numBits < 32) return fromBits(this.low << numBits, this.high << numBits | this.low >>> 32 - numBits, this.unsigned); else return fromBits(0, this.low << numBits - 32, this.unsigned); }; LongPrototype.shl = LongPrototype.shiftLeft; LongPrototype.shiftRight = function shiftRight(numBits) { if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; else if (numBits < 32) return fromBits(this.low >>> numBits | this.high << 32 - numBits, this.high >> numBits, this.unsigned); else return fromBits(this.high >> numBits - 32, this.high >= 0 ? 0 : -1, this.unsigned); }; LongPrototype.shr = LongPrototype.shiftRight; LongPrototype.shiftRightUnsigned = function shiftRightUnsigned(numBits) { if (isLong(numBits)) numBits = numBits.toInt(); numBits &= 63; if (numBits === 0) return this; else { var high = this.high; if (numBits < 32) { var low = this.low; return fromBits(low >>> numBits | high << 32 - numBits, high >>> numBits, this.unsigned); } else if (numBits === 32) return fromBits(high, 0, this.unsigned); else return fromBits(high >>> numBits - 32, 0, this.unsigned); } }; LongPrototype.shru = LongPrototype.shiftRightUnsigned; LongPrototype.shr_u = LongPrototype.shiftRightUnsigned; LongPrototype.toSigned = function toSigned() { if (!this.unsigned) return this; return fromBits(this.low, this.high, false); }; LongPrototype.toUnsigned = function toUnsigned() { if (this.unsigned) return this; return fromBits(this.low, this.high, true); }; LongPrototype.toBytes = function toBytes(le) { return le ? this.toBytesLE() : this.toBytesBE(); }; LongPrototype.toBytesLE = function toBytesLE() { var hi = this.high, lo = this.low; return [ lo & 255, lo >>> 8 & 255, lo >>> 16 & 255, lo >>> 24, hi & 255, hi >>> 8 & 255, hi >>> 16 & 255, hi >>> 24 ]; }; LongPrototype.toBytesBE = function toBytesBE() { var hi = this.high, lo = this.low; return [ hi >>> 24, hi >>> 16 & 255, hi >>> 8 & 255, hi & 255, lo >>> 24, lo >>> 16 & 255, lo >>> 8 & 255, lo & 255 ]; }; Long.fromBytes = function fromBytes(bytes, unsigned, le) { return le ? Long.fromBytesLE(bytes, unsigned) : Long.fromBytesBE(bytes, unsigned); }; Long.fromBytesLE = function fromBytesLE(bytes, unsigned) { return new Long( bytes[0] | bytes[1] << 8 | bytes[2] << 16 | bytes[3] << 24, bytes[4] | bytes[5] << 8 | bytes[6] << 16 | bytes[7] << 24, unsigned ); }; Long.fromBytesBE = function fromBytesBE(bytes, unsigned) { return new Long( bytes[4] << 24 | bytes[5] << 16 | bytes[6] << 8 | bytes[7], bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], unsigned ); }; } }); // ../../node_modules/.pnpm/safer-buffer@2.1.2/node_modules/safer-buffer/safer.js var require_safer = __commonJS({ "../../node_modules/.pnpm/safer-buffer@2.1.2/node_modules/safer-buffer/safer.js"(exports, module2) { "use strict"; var buffer = require("buffer"); var Buffer4 = buffer.Buffer; var safer = {}; var key; for (key in buffer) { if (!buffer.hasOwnProperty(key)) continue; if (key === "SlowBuffer" || key === "Buffer") continue; safer[key] = buffer[key]; } var Safer = safer.Buffer = {}; for (key in Buffer4) { if (!Buffer4.hasOwnProperty(key)) continue; if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue; Safer[key] = Buffer4[key]; } safer.Buffer.prototype = Buffer4.prototype; if (!Safer.from || Safer.from === Uint8Array.from) { Safer.from = function(value, encodingOrOffset, length) { if (typeof value === "number") { throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value); } if (value && typeof value.length === "undefined") { throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value); } return Buffer4(value, encodingOrOffset, length); }; } if (!Safer.alloc) { Safer.alloc = function(size, fill, encoding) { if (typeof size !== "number") { throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size); } if (size < 0 || size >= 2 * (1 << 30)) { throw new RangeError('The value "' + size + '" is invalid for option "size"'); } var buf = Buffer4(size); if (!fill || fill.length === 0) { buf.fill(0); } else if (typeof encoding === "string") { buf.fill(fill, encoding); } else { buf.fill(fill); } return buf; }; } if (!safer.kStringMaxLength) { try { safer.kStringMaxLength = process.binding("buffer").kStringMaxLength; } catch (e2) { } } if (!safer.constants) { safer.constants = { MAX_LENGTH: safer.kMaxLength }; if (safer.kStringMaxLength) { safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength; } } module2.exports = safer; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/lib/bom-handling.js var require_bom_handling = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/lib/bom-handling.js"(exports) { "use strict"; var BOMChar = "\uFEFF"; exports.PrependBOM = PrependBOMWrapper; function PrependBOMWrapper(encoder, options) { this.encoder = encoder; this.addBOM = true; } PrependBOMWrapper.prototype.write = function(str) { if (this.addBOM) { str = BOMChar + str; this.addBOM = false; } return this.encoder.write(str); }; PrependBOMWrapper.prototype.end = function() { return this.encoder.end(); }; exports.StripBOM = StripBOMWrapper; function StripBOMWrapper(decoder, options) { this.decoder = decoder; this.pass = false; this.options = options || {}; } StripBOMWrapper.prototype.write = function(buf) { var res = this.decoder.write(buf); if (this.pass || !res) return res; if (res[0] === BOMChar) { res = res.slice(1); if (typeof this.options.stripBOM === "function") this.options.stripBOM(); } this.pass = true; return res; }; StripBOMWrapper.prototype.end = function() { return this.decoder.end(); }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/internal.js var require_internal = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/internal.js"(exports, module2) { "use strict"; var Buffer4 = require_safer().Buffer; module2.exports = { utf8: { type: "_internal", bomAware: true }, cesu8: { type: "_internal", bomAware: true }, unicode11utf8: "utf8", ucs2: { type: "_internal", bomAware: true }, utf16le: "ucs2", binary: { type: "_internal" }, base64: { type: "_internal" }, hex: { type: "_internal" }, _internal: InternalCodec }; function InternalCodec(codecOptions, iconv) { this.enc = codecOptions.encodingName; this.bomAware = codecOptions.bomAware; if (this.enc === "base64") this.encoder = InternalEncoderBase64; else if (this.enc === "cesu8") { this.enc = "utf8"; this.encoder = InternalEncoderCesu8; if (Buffer4.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") { this.decoder = InternalDecoderCesu8; this.defaultCharUnicode = iconv.defaultCharUnicode; } } } InternalCodec.prototype.encoder = InternalEncoder; InternalCodec.prototype.decoder = InternalDecoder; var StringDecoder = require("string_decoder").StringDecoder; if (!StringDecoder.prototype.end) StringDecoder.prototype.end = function() { }; function InternalDecoder(options, codec) { this.decoder = new StringDecoder(codec.enc); } InternalDecoder.prototype.write = function(buf) { if (!Buffer4.isBuffer(buf)) { buf = Buffer4.from(buf); } return this.decoder.write(buf); }; InternalDecoder.prototype.end = function() { return this.decoder.end(); }; function InternalEncoder(options, codec) { this.enc = codec.enc; } InternalEncoder.prototype.write = function(str) { return Buffer4.from(str, this.enc); }; InternalEncoder.prototype.end = function() { }; function InternalEncoderBase64(options, codec) { this.prevStr = ""; } InternalEncoderBase64.prototype.write = function(str) { str = this.prevStr + str; var completeQuads = str.length - str.length % 4; this.prevStr = str.slice(completeQuads); str = str.slice(0, completeQuads); return Buffer4.from(str, "base64"); }; InternalEncoderBase64.prototype.end = function() { return Buffer4.from(this.prevStr, "base64"); }; function InternalEncoderCesu8(options, codec) { } InternalEncoderCesu8.prototype.write = function(str) { var buf = Buffer4.alloc(str.length * 3), bufIdx = 0; for (var i2 = 0; i2 < str.length; i2++) { var charCode = str.charCodeAt(i2); if (charCode < 128) buf[bufIdx++] = charCode; else if (charCode < 2048) { buf[bufIdx++] = 192 + (charCode >>> 6); buf[bufIdx++] = 128 + (charCode & 63); } else { buf[bufIdx++] = 224 + (charCode >>> 12); buf[bufIdx++] = 128 + (charCode >>> 6 & 63); buf[bufIdx++] = 128 + (charCode & 63); } } return buf.slice(0, bufIdx); }; InternalEncoderCesu8.prototype.end = function() { }; function InternalDecoderCesu8(options, codec) { this.acc = 0; this.contBytes = 0; this.accBytes = 0; this.defaultCharUnicode = codec.defaultCharUnicode; } InternalDecoderCesu8.prototype.write = function(buf) { var acc = this.acc, contBytes = this.contBytes, accBytes = this.accBytes, res = ""; for (var i2 = 0; i2 < buf.length; i2++) { var curByte = buf[i2]; if ((curByte & 192) !== 128) { if (contBytes > 0) { res += this.defaultCharUnicode; contBytes = 0; } if (curByte < 128) { res += String.fromCharCode(curByte); } else if (curByte < 224) { acc = curByte & 31; contBytes = 1; accBytes = 1; } else if (curByte < 240) { acc = curByte & 15; contBytes = 2; accBytes = 1; } else { res += this.defaultCharUnicode; } } else { if (contBytes > 0) { acc = acc << 6 | curByte & 63; contBytes--; accBytes++; if (contBytes === 0) { if (accBytes === 2 && acc < 128 && acc > 0) res += this.defaultCharUnicode; else if (accBytes === 3 && acc < 2048) res += this.defaultCharUnicode; else res += String.fromCharCode(acc); } } else { res += this.defaultCharUnicode; } } } this.acc = acc; this.contBytes = contBytes; this.accBytes = accBytes; return res; }; InternalDecoderCesu8.prototype.end = function() { var res = 0; if (this.contBytes > 0) res += this.defaultCharUnicode; return res; }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/utf32.js var require_utf32 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/utf32.js"(exports) { "use strict"; var Buffer4 = require_safer().Buffer; exports._utf32 = Utf32Codec; function Utf32Codec(codecOptions, iconv) { this.iconv = iconv; this.bomAware = true; this.isLE = codecOptions.isLE; } exports.utf32le = { type: "_utf32", isLE: true }; exports.utf32be = { type: "_utf32", isLE: false }; exports.ucs4le = "utf32le"; exports.ucs4be = "utf32be"; Utf32Codec.prototype.encoder = Utf32Encoder; Utf32Codec.prototype.decoder = Utf32Decoder; function Utf32Encoder(options, codec) { this.isLE = codec.isLE; this.highSurrogate = 0; } Utf32Encoder.prototype.write = function(str) { var src = Buffer4.from(str, "ucs2"); var dst = Buffer4.alloc(src.length * 2); var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE; var offset = 0; for (var i2 = 0; i2 < src.length; i2 += 2) { var code = src.readUInt16LE(i2); var isHighSurrogate = 55296 <= code && code < 56320; var isLowSurrogate = 56320 <= code && code < 57344; if (this.highSurrogate) { if (isHighSurrogate || !isLowSurrogate) { write32.call(dst, this.highSurrogate, offset); offset += 4; } else { var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536; write32.call(dst, codepoint, offset); offset += 4; this.highSurrogate = 0; continue; } } if (isHighSurrogate) this.highSurrogate = code; else { write32.call(dst, code, offset); offset += 4; this.highSurrogate = 0; } } if (offset < dst.length) dst = dst.slice(0, offset); return dst; }; Utf32Encoder.prototype.end = function() { if (!this.highSurrogate) return; var buf = Buffer4.alloc(4); if (this.isLE) buf.writeUInt32LE(this.highSurrogate, 0); else buf.writeUInt32BE(this.highSurrogate, 0); this.highSurrogate = 0; return buf; }; function Utf32Decoder(options, codec) { this.isLE = codec.isLE; this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0); this.overflow = []; } Utf32Decoder.prototype.write = function(src) { if (src.length === 0) return ""; var i2 = 0; var codepoint = 0; var dst = Buffer4.alloc(src.length + 4); var offset = 0; var isLE = this.isLE; var overflow = this.overflow; var badChar = this.badChar; if (overflow.length > 0) { for (; i2 < src.length && overflow.length < 4; i2++) overflow.push(src[i2]); if (overflow.length === 4) { if (isLE) { codepoint = overflow[i2] | overflow[i2 + 1] << 8 | overflow[i2 + 2] << 16 | overflow[i2 + 3] << 24; } else { codepoint = overflow[i2 + 3] | overflow[i2 + 2] << 8 | overflow[i2 + 1] << 16 | overflow[i2] << 24; } overflow.length = 0; offset = _writeCodepoint(dst, offset, codepoint, badChar); } } for (; i2 < src.length - 3; i2 += 4) { if (isLE) { codepoint = src[i2] | src[i2 + 1] << 8 | src[i2 + 2] << 16 | src[i2 + 3] << 24; } else { codepoint = src[i2 + 3] | src[i2 + 2] << 8 | src[i2 + 1] << 16 | src[i2] << 24; } offset = _writeCodepoint(dst, offset, codepoint, badChar); } for (; i2 < src.length; i2++) { overflow.push(src[i2]); } return dst.slice(0, offset).toString("ucs2"); }; function _writeCodepoint(dst, offset, codepoint, badChar) { if (codepoint < 0 || codepoint > 1114111) { codepoint = badChar; } if (codepoint >= 65536) { codepoint -= 65536; var high = 55296 | codepoint >> 10; dst[offset++] = high & 255; dst[offset++] = high >> 8; var codepoint = 56320 | codepoint & 1023; } dst[offset++] = codepoint & 255; dst[offset++] = codepoint >> 8; return offset; } Utf32Decoder.prototype.end = function() { this.overflow.length = 0; }; exports.utf32 = Utf32AutoCodec; exports.ucs4 = "utf32"; function Utf32AutoCodec(options, iconv) { this.iconv = iconv; } Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder; Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder; function Utf32AutoEncoder(options, codec) { options = options || {}; if (options.addBOM === void 0) options.addBOM = true; this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options); } Utf32AutoEncoder.prototype.write = function(str) { return this.encoder.write(str); }; Utf32AutoEncoder.prototype.end = function() { return this.encoder.end(); }; function Utf32AutoDecoder(options, codec) { this.decoder = null; this.initialBufs = []; this.initialBufsLen = 0; this.options = options || {}; this.iconv = codec.iconv; } Utf32AutoDecoder.prototype.write = function(buf) { if (!this.decoder) { this.initialBufs.push(buf); this.initialBufsLen += buf.length; if (this.initialBufsLen < 32) return ""; var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); this.decoder = this.iconv.getDecoder(encoding, this.options); var resStr = ""; for (var i2 = 0; i2 < this.initialBufs.length; i2++) resStr += this.decoder.write(this.initialBufs[i2]); this.initialBufs.length = this.initialBufsLen = 0; return resStr; } return this.decoder.write(buf); }; Utf32AutoDecoder.prototype.end = function() { if (!this.decoder) { var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); this.decoder = this.iconv.getDecoder(encoding, this.options); var resStr = ""; for (var i2 = 0; i2 < this.initialBufs.length; i2++) resStr += this.decoder.write(this.initialBufs[i2]); var trail = this.decoder.end(); if (trail) resStr += trail; this.initialBufs.length = this.initialBufsLen = 0; return resStr; } return this.decoder.end(); }; function detectEncoding(bufs, defaultEncoding) { var b = []; var charsProcessed = 0; var invalidLE = 0, invalidBE = 0; var bmpCharsLE = 0, bmpCharsBE = 0; outer_loop: for (var i2 = 0; i2 < bufs.length; i2++) { var buf = bufs[i2]; for (var j = 0; j < buf.length; j++) { b.push(buf[j]); if (b.length === 4) { if (charsProcessed === 0) { if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) { return "utf-32le"; } if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) { return "utf-32be"; } } if (b[0] !== 0 || b[1] > 16) invalidBE++; if (b[3] !== 0 || b[2] > 16) invalidLE++; if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++; if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++; b.length = 0; charsProcessed++; if (charsProcessed >= 100) { break outer_loop; } } } } if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be"; if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le"; return defaultEncoding || "utf-32le"; } } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/utf16.js var require_utf16 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/utf16.js"(exports) { "use strict"; var Buffer4 = require_safer().Buffer; exports.utf16be = Utf16BECodec; function Utf16BECodec() { } Utf16BECodec.prototype.encoder = Utf16BEEncoder; Utf16BECodec.prototype.decoder = Utf16BEDecoder; Utf16BECodec.prototype.bomAware = true; function Utf16BEEncoder() { } Utf16BEEncoder.prototype.write = function(str) { var buf = Buffer4.from(str, "ucs2"); for (var i2 = 0; i2 < buf.length; i2 += 2) { var tmp = buf[i2]; buf[i2] = buf[i2 + 1]; buf[i2 + 1] = tmp; } return buf; }; Utf16BEEncoder.prototype.end = function() { }; function Utf16BEDecoder() { this.overflowByte = -1; } Utf16BEDecoder.prototype.write = function(buf) { if (buf.length == 0) return ""; var buf2 = Buffer4.alloc(buf.length + 1), i2 = 0, j = 0; if (this.overflowByte !== -1) { buf2[0] = buf[0]; buf2[1] = this.overflowByte; i2 = 1; j = 2; } for (; i2 < buf.length - 1; i2 += 2, j += 2) { buf2[j] = buf[i2 + 1]; buf2[j + 1] = buf[i2]; } this.overflowByte = i2 == buf.length - 1 ? buf[buf.length - 1] : -1; return buf2.slice(0, j).toString("ucs2"); }; Utf16BEDecoder.prototype.end = function() { this.overflowByte = -1; }; exports.utf16 = Utf16Codec; function Utf16Codec(codecOptions, iconv) { this.iconv = iconv; } Utf16Codec.prototype.encoder = Utf16Encoder; Utf16Codec.prototype.decoder = Utf16Decoder; function Utf16Encoder(options, codec) { options = options || {}; if (options.addBOM === void 0) options.addBOM = true; this.encoder = codec.iconv.getEncoder("utf-16le", options); } Utf16Encoder.prototype.write = function(str) { return this.encoder.write(str); }; Utf16Encoder.prototype.end = function() { return this.encoder.end(); }; function Utf16Decoder(options, codec) { this.decoder = null; this.initialBufs = []; this.initialBufsLen = 0; this.options = options || {}; this.iconv = codec.iconv; } Utf16Decoder.prototype.write = function(buf) { if (!this.decoder) { this.initialBufs.push(buf); this.initialBufsLen += buf.length; if (this.initialBufsLen < 16) return ""; var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); this.decoder = this.iconv.getDecoder(encoding, this.options); var resStr = ""; for (var i2 = 0; i2 < this.initialBufs.length; i2++) resStr += this.decoder.write(this.initialBufs[i2]); this.initialBufs.length = this.initialBufsLen = 0; return resStr; } return this.decoder.write(buf); }; Utf16Decoder.prototype.end = function() { if (!this.decoder) { var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding); this.decoder = this.iconv.getDecoder(encoding, this.options); var resStr = ""; for (var i2 = 0; i2 < this.initialBufs.length; i2++) resStr += this.decoder.write(this.initialBufs[i2]); var trail = this.decoder.end(); if (trail) resStr += trail; this.initialBufs.length = this.initialBufsLen = 0; return resStr; } return this.decoder.end(); }; function detectEncoding(bufs, defaultEncoding) { var b = []; var charsProcessed = 0; var asciiCharsLE = 0, asciiCharsBE = 0; outer_loop: for (var i2 = 0; i2 < bufs.length; i2++) { var buf = bufs[i2]; for (var j = 0; j < buf.length; j++) { b.push(buf[j]); if (b.length === 2) { if (charsProcessed === 0) { if (b[0] === 255 && b[1] === 254) return "utf-16le"; if (b[0] === 254 && b[1] === 255) return "utf-16be"; } if (b[0] === 0 && b[1] !== 0) asciiCharsBE++; if (b[0] !== 0 && b[1] === 0) asciiCharsLE++; b.length = 0; charsProcessed++; if (charsProcessed >= 100) { break outer_loop; } } } } if (asciiCharsBE > asciiCharsLE) return "utf-16be"; if (asciiCharsBE < asciiCharsLE) return "utf-16le"; return defaultEncoding || "utf-16le"; } } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/utf7.js var require_utf7 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/utf7.js"(exports) { "use strict"; var Buffer4 = require_safer().Buffer; exports.utf7 = Utf7Codec; exports.unicode11utf7 = "utf7"; function Utf7Codec(codecOptions, iconv) { this.iconv = iconv; } Utf7Codec.prototype.encoder = Utf7Encoder; Utf7Codec.prototype.decoder = Utf7Decoder; Utf7Codec.prototype.bomAware = true; var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g; function Utf7Encoder(options, codec) { this.iconv = codec.iconv; } Utf7Encoder.prototype.write = function(str) { return Buffer4.from(str.replace(nonDirectChars, function(chunk) { return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-"; }.bind(this))); }; Utf7Encoder.prototype.end = function() { }; function Utf7Decoder(options, codec) { this.iconv = codec.iconv; this.inBase64 = false; this.base64Accum = ""; } var base64Regex = /[A-Za-z0-9\/+]/; var base64Chars = []; for (i2 = 0; i2 < 256; i2++) base64Chars[i2] = base64Regex.test(String.fromCharCode(i2)); var i2; var plusChar = "+".charCodeAt(0); var minusChar = "-".charCodeAt(0); var andChar = "&".charCodeAt(0); Utf7Decoder.prototype.write = function(buf) { var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum; for (var i3 = 0; i3 < buf.length; i3++) { if (!inBase64) { if (buf[i3] == plusChar) { res += this.iconv.decode(buf.slice(lastI, i3), "ascii"); lastI = i3 + 1; inBase64 = true; } } else { if (!base64Chars[buf[i3]]) { if (i3 == lastI && buf[i3] == minusChar) { res += "+"; } else { var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i3), "ascii"); res += this.iconv.decode(Buffer4.from(b64str, "base64"), "utf16-be"); } if (buf[i3] != minusChar) i3--; lastI = i3 + 1; inBase64 = false; base64Accum = ""; } } } if (!inBase64) { res += this.iconv.decode(buf.slice(lastI), "ascii"); } else { var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii"); var canBeDecoded = b64str.length - b64str.length % 8; base64Accum = b64str.slice(canBeDecoded); b64str = b64str.slice(0, canBeDecoded); res += this.iconv.decode(Buffer4.from(b64str, "base64"), "utf16-be"); } this.inBase64 = inBase64; this.base64Accum = base64Accum; return res; }; Utf7Decoder.prototype.end = function() { var res = ""; if (this.inBase64 && this.base64Accum.length > 0) res = this.iconv.decode(Buffer4.from(this.base64Accum, "base64"), "utf16-be"); this.inBase64 = false; this.base64Accum = ""; return res; }; exports.utf7imap = Utf7IMAPCodec; function Utf7IMAPCodec(codecOptions, iconv) { this.iconv = iconv; } Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder; Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder; Utf7IMAPCodec.prototype.bomAware = true; function Utf7IMAPEncoder(options, codec) { this.iconv = codec.iconv; this.inBase64 = false; this.base64Accum = Buffer4.alloc(6); this.base64AccumIdx = 0; } Utf7IMAPEncoder.prototype.write = function(str) { var inBase64 = this.inBase64, base64Accum = this.base64Accum, base64AccumIdx = this.base64AccumIdx, buf = Buffer4.alloc(str.length * 5 + 10), bufIdx = 0; for (var i3 = 0; i3 < str.length; i3++) { var uChar = str.charCodeAt(i3); if (32 <= uChar && uChar <= 126) { if (inBase64) { if (base64AccumIdx > 0) { bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx); base64AccumIdx = 0; } buf[bufIdx++] = minusChar; inBase64 = false; } if (!inBase64) { buf[bufIdx++] = uChar; if (uChar === andChar) buf[bufIdx++] = minusChar; } } else { if (!inBase64) { buf[bufIdx++] = andChar; inBase64 = true; } if (inBase64) { base64Accum[base64AccumIdx++] = uChar >> 8; base64Accum[base64AccumIdx++] = uChar & 255; if (base64AccumIdx == base64Accum.length) { bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx); base64AccumIdx = 0; } } } } this.inBase64 = inBase64; this.base64AccumIdx = base64AccumIdx; return buf.slice(0, bufIdx); }; Utf7IMAPEncoder.prototype.end = function() { var buf = Buffer4.alloc(10), bufIdx = 0; if (this.inBase64) { if (this.base64AccumIdx > 0) { bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx); this.base64AccumIdx = 0; } buf[bufIdx++] = minusChar; this.inBase64 = false; } return buf.slice(0, bufIdx); }; function Utf7IMAPDecoder(options, codec) { this.iconv = codec.iconv; this.inBase64 = false; this.base64Accum = ""; } var base64IMAPChars = base64Chars.slice(); base64IMAPChars[",".charCodeAt(0)] = true; Utf7IMAPDecoder.prototype.write = function(buf) { var res = "", lastI = 0, inBase64 = this.inBase64, base64Accum = this.base64Accum; for (var i3 = 0; i3 < buf.length; i3++) { if (!inBase64) { if (buf[i3] == andChar) { res += this.iconv.decode(buf.slice(lastI, i3), "ascii"); lastI = i3 + 1; inBase64 = true; } } else { if (!base64IMAPChars[buf[i3]]) { if (i3 == lastI && buf[i3] == minusChar) { res += "&"; } else { var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i3), "ascii").replace(/,/g, "/"); res += this.iconv.decode(Buffer4.from(b64str, "base64"), "utf16-be"); } if (buf[i3] != minusChar) i3--; lastI = i3 + 1; inBase64 = false; base64Accum = ""; } } } if (!inBase64) { res += this.iconv.decode(buf.slice(lastI), "ascii"); } else { var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/"); var canBeDecoded = b64str.length - b64str.length % 8; base64Accum = b64str.slice(canBeDecoded); b64str = b64str.slice(0, canBeDecoded); res += this.iconv.decode(Buffer4.from(b64str, "base64"), "utf16-be"); } this.inBase64 = inBase64; this.base64Accum = base64Accum; return res; }; Utf7IMAPDecoder.prototype.end = function() { var res = ""; if (this.inBase64 && this.base64Accum.length > 0) res = this.iconv.decode(Buffer4.from(this.base64Accum, "base64"), "utf16-be"); this.inBase64 = false; this.base64Accum = ""; return res; }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/sbcs-codec.js var require_sbcs_codec = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports) { "use strict"; var Buffer4 = require_safer().Buffer; exports._sbcs = SBCSCodec; function SBCSCodec(codecOptions, iconv) { if (!codecOptions) throw new Error("SBCS codec is called without the data."); if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256) throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)"); if (codecOptions.chars.length === 128) { var asciiString = ""; for (var i2 = 0; i2 < 128; i2++) asciiString += String.fromCharCode(i2); codecOptions.chars = asciiString + codecOptions.chars; } this.decodeBuf = Buffer4.from(codecOptions.chars, "ucs2"); var encodeBuf = Buffer4.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0)); for (var i2 = 0; i2 < codecOptions.chars.length; i2++) encodeBuf[codecOptions.chars.charCodeAt(i2)] = i2; this.encodeBuf = encodeBuf; } SBCSCodec.prototype.encoder = SBCSEncoder; SBCSCodec.prototype.decoder = SBCSDecoder; function SBCSEncoder(options, codec) { this.encodeBuf = codec.encodeBuf; } SBCSEncoder.prototype.write = function(str) { var buf = Buffer4.alloc(str.length); for (var i2 = 0; i2 < str.length; i2++) buf[i2] = this.encodeBuf[str.charCodeAt(i2)]; return buf; }; SBCSEncoder.prototype.end = function() { }; function SBCSDecoder(options, codec) { this.decodeBuf = codec.decodeBuf; } SBCSDecoder.prototype.write = function(buf) { var decodeBuf = this.decodeBuf; var newBuf = Buffer4.alloc(buf.length * 2); var idx1 = 0, idx2 = 0; for (var i2 = 0; i2 < buf.length; i2++) { idx1 = buf[i2] * 2; idx2 = i2 * 2; newBuf[idx2] = decodeBuf[idx1]; newBuf[idx2 + 1] = decodeBuf[idx1 + 1]; } return newBuf.toString("ucs2"); }; SBCSDecoder.prototype.end = function() { }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/sbcs-data.js var require_sbcs_data = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/sbcs-data.js"(exports, module2) { "use strict"; module2.exports = { "10029": "maccenteuro", "maccenteuro": { "type": "_sbcs", "chars": "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7" }, "808": "cp808", "ibm808": "cp808", "cp808": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0" }, "mik": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "cp720": { "type": "_sbcs", "chars": "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ascii8bit": "ascii", "usascii": "ascii", "ansix34": "ascii", "ansix341968": "ascii", "ansix341986": "ascii", "csascii": "ascii", "cp367": "ascii", "ibm367": "ascii", "isoir6": "ascii", "iso646us": "ascii", "iso646irv": "ascii", "us": "ascii", "latin1": "iso88591", "latin2": "iso88592", "latin3": "iso88593", "latin4": "iso88594", "latin5": "iso88599", "latin6": "iso885910", "latin7": "iso885913", "latin8": "iso885914", "latin9": "iso885915", "latin10": "iso885916", "csisolatin1": "iso88591", "csisolatin2": "iso88592", "csisolatin3": "iso88593", "csisolatin4": "iso88594", "csisolatincyrillic": "iso88595", "csisolatinarabic": "iso88596", "csisolatingreek": "iso88597", "csisolatinhebrew": "iso88598", "csisolatin5": "iso88599", "csisolatin6": "iso885910", "l1": "iso88591", "l2": "iso88592", "l3": "iso88593", "l4": "iso88594", "l5": "iso88599", "l6": "iso885910", "l7": "iso885913", "l8": "iso885914", "l9": "iso885915", "l10": "iso885916", "isoir14": "iso646jp", "isoir57": "iso646cn", "isoir100": "iso88591", "isoir101": "iso88592", "isoir109": "iso88593", "isoir110": "iso88594", "isoir144": "iso88595", "isoir127": "iso88596", "isoir126": "iso88597", "isoir138": "iso88598", "isoir148": "iso88599", "isoir157": "iso885910", "isoir166": "tis620", "isoir179": "iso885913", "isoir199": "iso885914", "isoir203": "iso885915", "isoir226": "iso885916", "cp819": "iso88591", "ibm819": "iso88591", "cyrillic": "iso88595", "arabic": "iso88596", "arabic8": "iso88596", "ecma114": "iso88596", "asmo708": "iso88596", "greek": "iso88597", "greek8": "iso88597", "ecma118": "iso88597", "elot928": "iso88597", "hebrew": "iso88598", "hebrew8": "iso88598", "turkish": "iso88599", "turkish8": "iso88599", "thai": "iso885911", "thai8": "iso885911", "celtic": "iso885914", "celtic8": "iso885914", "isoceltic": "iso885914", "tis6200": "tis620", "tis62025291": "tis620", "tis62025330": "tis620", "10000": "macroman", "10006": "macgreek", "10007": "maccyrillic", "10079": "maciceland", "10081": "macturkish", "cspc8codepage437": "cp437", "cspc775baltic": "cp775", "cspc850multilingual": "cp850", "cspcp852": "cp852", "cspc862latinhebrew": "cp862", "cpgr": "cp869", "msee": "cp1250", "mscyrl": "cp1251", "msansi": "cp1252", "msgreek": "cp1253", "msturk": "cp1254", "mshebr": "cp1255", "msarab": "cp1256", "winbaltrim": "cp1257", "cp20866": "koi8r", "20866": "koi8r", "ibm878": "koi8r", "cskoi8r": "koi8r", "cp21866": "koi8u", "21866": "koi8u", "ibm1168": "koi8u", "strk10482002": "rk1048", "tcvn5712": "tcvn", "tcvn57121": "tcvn", "gb198880": "iso646cn", "cn": "iso646cn", "csiso14jisc6220ro": "iso646jp", "jisc62201969ro": "iso646jp", "jp": "iso646jp", "cshproman8": "hproman8", "r8": "hproman8", "roman8": "hproman8", "xroman8": "hproman8", "ibm1051": "hproman8", "mac": "macintosh", "csmacintosh": "macintosh" }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/sbcs-data-generated.js var require_sbcs_data_generated = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports, module2) { "use strict"; module2.exports = { "437": "cp437", "737": "cp737", "775": "cp775", "850": "cp850", "852": "cp852", "855": "cp855", "856": "cp856", "857": "cp857", "858": "cp858", "860": "cp860", "861": "cp861", "862": "cp862", "863": "cp863", "864": "cp864", "865": "cp865", "866": "cp866", "869": "cp869", "874": "windows874", "922": "cp922", "1046": "cp1046", "1124": "cp1124", "1125": "cp1125", "1129": "cp1129", "1133": "cp1133", "1161": "cp1161", "1162": "cp1162", "1163": "cp1163", "1250": "windows1250", "1251": "windows1251", "1252": "windows1252", "1253": "windows1253", "1254": "windows1254", "1255": "windows1255", "1256": "windows1256", "1257": "windows1257", "1258": "windows1258", "28591": "iso88591", "28592": "iso88592", "28593": "iso88593", "28594": "iso88594", "28595": "iso88595", "28596": "iso88596", "28597": "iso88597", "28598": "iso88598", "28599": "iso88599", "28600": "iso885910", "28601": "iso885911", "28603": "iso885913", "28604": "iso885914", "28605": "iso885915", "28606": "iso885916", "windows874": { "type": "_sbcs", "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" }, "win874": "windows874", "cp874": "windows874", "windows1250": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9" }, "win1250": "windows1250", "cp1250": "windows1250", "windows1251": { "type": "_sbcs", "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" }, "win1251": "windows1251", "cp1251": "windows1251", "windows1252": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "win1252": "windows1252", "cp1252": "windows1252", "windows1253": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" }, "win1253": "windows1253", "cp1253": "windows1253", "windows1254": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF" }, "win1254": "windows1254", "cp1254": "windows1254", "windows1255": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" }, "win1255": "windows1255", "cp1255": "windows1255", "windows1256": { "type": "_sbcs", "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2" }, "win1256": "windows1256", "cp1256": "windows1256", "windows1257": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9" }, "win1257": "windows1257", "cp1257": "windows1257", "windows1258": { "type": "_sbcs", "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" }, "win1258": "windows1258", "cp1258": "windows1258", "iso88591": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "cp28591": "iso88591", "iso88592": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9" }, "cp28592": "iso88592", "iso88593": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9" }, "cp28593": "iso88593", "iso88594": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9" }, "cp28594": "iso88594", "iso88595": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F" }, "cp28595": "iso88595", "iso88596": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "cp28596": "iso88596", "iso88597": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" }, "cp28597": "iso88597", "iso88598": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" }, "cp28598": "iso88598", "iso88599": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF" }, "cp28599": "iso88599", "iso885910": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138" }, "cp28600": "iso885910", "iso885911": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" }, "cp28601": "iso885911", "iso885913": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019" }, "cp28603": "iso885913", "iso885914": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF" }, "cp28604": "iso885914", "iso885915": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "cp28605": "iso885915", "iso885916": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF" }, "cp28606": "iso885916", "cp437": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm437": "cp437", "csibm437": "cp437", "cp737": { "type": "_sbcs", "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm737": "cp737", "csibm737": "cp737", "cp775": { "type": "_sbcs", "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm775": "cp775", "csibm775": "cp775", "cp850": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm850": "cp850", "csibm850": "cp850", "cp852": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0" }, "ibm852": "cp852", "csibm852": "cp852", "cp855": { "type": "_sbcs", "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0" }, "ibm855": "cp855", "csibm855": "cp855", "cp856": { "type": "_sbcs", "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm856": "cp856", "csibm856": "cp856", "cp857": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm857": "cp857", "csibm857": "cp857", "cp858": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0" }, "ibm858": "cp858", "csibm858": "cp858", "cp860": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm860": "cp860", "csibm860": "cp860", "cp861": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm861": "cp861", "csibm861": "cp861", "cp862": { "type": "_sbcs", "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm862": "cp862", "csibm862": "cp862", "cp863": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm863": "cp863", "csibm863": "cp863", "cp864": { "type": "_sbcs", "chars": "\0\x07\b \n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD" }, "ibm864": "cp864", "csibm864": "cp864", "cp865": { "type": "_sbcs", "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0" }, "ibm865": "cp865", "csibm865": "cp865", "cp866": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0" }, "ibm866": "cp866", "csibm866": "cp866", "cp869": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0" }, "ibm869": "cp869", "csibm869": "cp869", "cp922": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF" }, "ibm922": "cp922", "csibm922": "cp922", "cp1046": { "type": "_sbcs", "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD" }, "ibm1046": "cp1046", "csibm1046": "cp1046", "cp1124": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F" }, "ibm1124": "cp1124", "csibm1124": "cp1124", "cp1125": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0" }, "ibm1125": "cp1125", "csibm1125": "cp1125", "cp1129": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" }, "ibm1129": "cp1129", "csibm1129": "cp1129", "cp1133": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD" }, "ibm1133": "cp1133", "csibm1133": "cp1133", "cp1161": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0" }, "ibm1161": "cp1161", "csibm1161": "cp1161", "cp1162": { "type": "_sbcs", "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" }, "ibm1162": "cp1162", "csibm1162": "cp1162", "cp1163": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF" }, "ibm1163": "cp1163", "csibm1163": "cp1163", "maccroatian": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7" }, "maccyrillic": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4" }, "macgreek": { "type": "_sbcs", "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD" }, "maciceland": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macroman": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macromania": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macthai": { "type": "_sbcs", "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD" }, "macturkish": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "macukraine": { "type": "_sbcs", "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4" }, "koi8r": { "type": "_sbcs", "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "koi8u": { "type": "_sbcs", "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "koi8ru": { "type": "_sbcs", "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "koi8t": { "type": "_sbcs", "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" }, "armscii8": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD" }, "rk1048": { "type": "_sbcs", "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" }, "tcvn": { "type": "_sbcs", "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0" }, "georgianacademy": { "type": "_sbcs", "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "georgianps": { "type": "_sbcs", "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF" }, "pt154": { "type": "_sbcs", "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" }, "viscii": { "type": "_sbcs", "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b \n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE" }, "iso646cn": { "type": "_sbcs", "chars": "\0\x07\b \n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "iso646jp": { "type": "_sbcs", "chars": "\0\x07\b \n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "hproman8": { "type": "_sbcs", "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD" }, "macintosh": { "type": "_sbcs", "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7" }, "ascii": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" }, "tis620": { "type": "_sbcs", "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" } }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/dbcs-codec.js var require_dbcs_codec = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports) { "use strict"; var Buffer4 = require_safer().Buffer; exports._dbcs = DBCSCodec; var UNASSIGNED = -1; var GB18030_CODE = -2; var SEQ_START = -10; var NODE_START = -1e3; var UNASSIGNED_NODE = new Array(256); var DEF_CHAR = -1; for (i2 = 0; i2 < 256; i2++) UNASSIGNED_NODE[i2] = UNASSIGNED; var i2; function DBCSCodec(codecOptions, iconv) { this.encodingName = codecOptions.encodingName; if (!codecOptions) throw new Error("DBCS codec is called without the data."); if (!codecOptions.table) throw new Error("Encoding '" + this.encodingName + "' has no data."); var mappingTable = codecOptions.table(); this.decodeTables = []; this.decodeTables[0] = UNASSIGNED_NODE.slice(0); this.decodeTableSeq = []; for (var i3 = 0; i3 < mappingTable.length; i3++) this._addDecodeChunk(mappingTable[i3]); if (typeof codecOptions.gb18030 === "function") { this.gb18030 = codecOptions.gb18030(); var commonThirdByteNodeIdx = this.decodeTables.length; this.decodeTables.push(UNASSIGNED_NODE.slice(0)); var commonFourthByteNodeIdx = this.decodeTables.length; this.decodeTables.push(UNASSIGNED_NODE.slice(0)); var firstByteNode = this.decodeTables[0]; for (var i3 = 129; i3 <= 254; i3++) { var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i3]]; for (var j = 48; j <= 57; j++) { if (secondByteNode[j] === UNASSIGNED) { secondByteNode[j] = NODE_START - commonThirdByteNodeIdx; } else if (secondByteNode[j] > NODE_START) { throw new Error("gb18030 decode tables conflict at byte 2"); } var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j]]; for (var k = 129; k <= 254; k++) { if (thirdByteNode[k] === UNASSIGNED) { thirdByteNode[k] = NODE_START - commonFourthByteNodeIdx; } else if (thirdByteNode[k] === NODE_START - commonFourthByteNodeIdx) { continue; } else if (thirdByteNode[k] > NODE_START) { throw new Error("gb18030 decode tables conflict at byte 3"); } var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k]]; for (var l = 48; l <= 57; l++) { if (fourthByteNode[l] === UNASSIGNED) fourthByteNode[l] = GB18030_CODE; } } } } } this.defaultCharUnicode = iconv.defaultCharUnicode; this.encodeTable = []; this.encodeTableSeq = []; var skipEncodeChars = {}; if (codecOptions.encodeSkipVals) for (var i3 = 0; i3 < codecOptions.encodeSkipVals.length; i3++) { var val = codecOptions.encodeSkipVals[i3]; if (typeof val === "number") skipEncodeChars[val] = true; else for (var j = val.from; j <= val.to; j++) skipEncodeChars[j] = true; } this._fillEncodeTable(0, 0, skipEncodeChars); if (codecOptions.encodeAdd) { for (var uChar in codecOptions.encodeAdd) if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar)) this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]); } this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)]; if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"]; if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0); } DBCSCodec.prototype.encoder = DBCSEncoder; DBCSCodec.prototype.decoder = DBCSDecoder; DBCSCodec.prototype._getDecodeTrieNode = function(addr) { var bytes = []; for (; addr > 0; addr >>>= 8) bytes.push(addr & 255); if (bytes.length == 0) bytes.push(0); var node = this.decodeTables[0]; for (var i3 = bytes.length - 1; i3 > 0; i3--) { var val = node[bytes[i3]]; if (val == UNASSIGNED) { node[bytes[i3]] = NODE_START - this.decodeTables.length; this.decodeTables.push(node = UNASSIGNED_NODE.slice(0)); } else if (val <= NODE_START) { node = this.decodeTables[NODE_START - val]; } else throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16)); } return node; }; DBCSCodec.prototype._addDecodeChunk = function(chunk) { var curAddr = parseInt(chunk[0], 16); var writeTable = this._getDecodeTrieNode(curAddr); curAddr = curAddr & 255; for (var k = 1; k < chunk.length; k++) { var part = chunk[k]; if (typeof part === "string") { for (var l = 0; l < part.length; ) { var code = part.charCodeAt(l++); if (55296 <= code && code < 56320) { var codeTrail = part.charCodeAt(l++); if (56320 <= codeTrail && codeTrail < 57344) writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320); else throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]); } else if (4080 < code && code <= 4095) { var len = 4095 - code + 2; var seq = []; for (var m2 = 0; m2 < len; m2++) seq.push(part.charCodeAt(l++)); writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length; this.decodeTableSeq.push(seq); } else writeTable[curAddr++] = code; } } else if (typeof part === "number") { var charCode = writeTable[curAddr - 1] + 1; for (var l = 0; l < part; l++) writeTable[curAddr++] = charCode++; } else throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]); } if (curAddr > 255) throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr); }; DBCSCodec.prototype._getEncodeBucket = function(uCode) { var high = uCode >> 8; if (this.encodeTable[high] === void 0) this.encodeTable[high] = UNASSIGNED_NODE.slice(0); return this.encodeTable[high]; }; DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) { var bucket = this._getEncodeBucket(uCode); var low = uCode & 255; if (bucket[low] <= SEQ_START) this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode; else if (bucket[low] == UNASSIGNED) bucket[low] = dbcsCode; }; DBCSCodec.prototype._setEncodeSequence = function(seq, dbcsCode) { var uCode = seq[0]; var bucket = this._getEncodeBucket(uCode); var low = uCode & 255; var node; if (bucket[low] <= SEQ_START) { node = this.encodeTableSeq[SEQ_START - bucket[low]]; } else { node = {}; if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low]; bucket[low] = SEQ_START - this.encodeTableSeq.length; this.encodeTableSeq.push(node); } for (var j = 1; j < seq.length - 1; j++) { var oldVal = node[uCode]; if (typeof oldVal === "object") node = oldVal; else { node = node[uCode] = {}; if (oldVal !== void 0) node[DEF_CHAR] = oldVal; } } uCode = seq[seq.length - 1]; node[uCode] = dbcsCode; }; DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) { var node = this.decodeTables[nodeIdx]; var hasValues = false; var subNodeEmpty = {}; for (var i3 = 0; i3 < 256; i3++) { var uCode = node[i3]; var mbCode = prefix + i3; if (skipEncodeChars[mbCode]) continue; if (uCode >= 0) { this._setEncodeChar(uCode, mbCode); hasValues = true; } else if (uCode <= NODE_START) { var subNodeIdx = NODE_START - uCode; if (!subNodeEmpty[subNodeIdx]) { var newPrefix = mbCode << 8 >>> 0; if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars)) hasValues = true; else subNodeEmpty[subNodeIdx] = true; } } else if (uCode <= SEQ_START) { this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode); hasValues = true; } } return hasValues; }; function DBCSEncoder(options, codec) { this.leadSurrogate = -1; this.seqObj = void 0; this.encodeTable = codec.encodeTable; this.encodeTableSeq = codec.encodeTableSeq; this.defaultCharSingleByte = codec.defCharSB; this.gb18030 = codec.gb18030; } DBCSEncoder.prototype.write = function(str) { var newBuf = Buffer4.alloc(str.length * (this.gb18030 ? 4 : 3)), leadSurrogate = this.leadSurrogate, seqObj = this.seqObj, nextChar = -1, i3 = 0, j = 0; while (true) { if (nextChar === -1) { if (i3 == str.length) break; var uCode = str.charCodeAt(i3++); } else { var uCode = nextChar; nextChar = -1; } if (55296 <= uCode && uCode < 57344) { if (uCode < 56320) { if (leadSurrogate === -1) { leadSurrogate = uCode; continue; } else { leadSurrogate = uCode; uCode = UNASSIGNED; } } else { if (leadSurrogate !== -1) { uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320); leadSurrogate = -1; } else { uCode = UNASSIGNED; } } } else if (leadSurrogate !== -1) { nextChar = uCode; uCode = UNASSIGNED; leadSurrogate = -1; } var dbcsCode = UNASSIGNED; if (seqObj !== void 0 && uCode != UNASSIGNED) { var resCode = seqObj[uCode]; if (typeof resCode === "object") { seqObj = resCode; continue; } else if (typeof resCode == "number") { dbcsCode = resCode; } else if (resCode == void 0) { resCode = seqObj[DEF_CHAR]; if (resCode !== void 0) { dbcsCode = resCode; nextChar = uCode; } else { } } seqObj = void 0; } else if (uCode >= 0) { var subtable = this.encodeTable[uCode >> 8]; if (subtable !== void 0) dbcsCode = subtable[uCode & 255]; if (dbcsCode <= SEQ_START) { seqObj = this.encodeTableSeq[SEQ_START - dbcsCode]; continue; } if (dbcsCode == UNASSIGNED && this.gb18030) { var idx = findIdx(this.gb18030.uChars, uCode); if (idx != -1) { var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]); newBuf[j++] = 129 + Math.floor(dbcsCode / 12600); dbcsCode = dbcsCode % 12600; newBuf[j++] = 48 + Math.floor(dbcsCode / 1260); dbcsCode = dbcsCode % 1260; newBuf[j++] = 129 + Math.floor(dbcsCode / 10); dbcsCode = dbcsCode % 10; newBuf[j++] = 48 + dbcsCode; continue; } } } if (dbcsCode === UNASSIGNED) dbcsCode = this.defaultCharSingleByte; if (dbcsCode < 256) { newBuf[j++] = dbcsCode; } else if (dbcsCode < 65536) { newBuf[j++] = dbcsCode >> 8; newBuf[j++] = dbcsCode & 255; } else if (dbcsCode < 16777216) { newBuf[j++] = dbcsCode >> 16; newBuf[j++] = dbcsCode >> 8 & 255; newBuf[j++] = dbcsCode & 255; } else { newBuf[j++] = dbcsCode >>> 24; newBuf[j++] = dbcsCode >>> 16 & 255; newBuf[j++] = dbcsCode >>> 8 & 255; newBuf[j++] = dbcsCode & 255; } } this.seqObj = seqObj; this.leadSurrogate = leadSurrogate; return newBuf.slice(0, j); }; DBCSEncoder.prototype.end = function() { if (this.leadSurrogate === -1 && this.seqObj === void 0) return; var newBuf = Buffer4.alloc(10), j = 0; if (this.seqObj) { var dbcsCode = this.seqObj[DEF_CHAR]; if (dbcsCode !== void 0) { if (dbcsCode < 256) { newBuf[j++] = dbcsCode; } else { newBuf[j++] = dbcsCode >> 8; newBuf[j++] = dbcsCode & 255; } } else { } this.seqObj = void 0; } if (this.leadSurrogate !== -1) { newBuf[j++] = this.defaultCharSingleByte; this.leadSurrogate = -1; } return newBuf.slice(0, j); }; DBCSEncoder.prototype.findIdx = findIdx; function DBCSDecoder(options, codec) { this.nodeIdx = 0; this.prevBytes = []; this.decodeTables = codec.decodeTables; this.decodeTableSeq = codec.decodeTableSeq; this.defaultCharUnicode = codec.defaultCharUnicode; this.gb18030 = codec.gb18030; } DBCSDecoder.prototype.write = function(buf) { var newBuf = Buffer4.alloc(buf.length * 2), nodeIdx = this.nodeIdx, prevBytes = this.prevBytes, prevOffset = this.prevBytes.length, seqStart = -this.prevBytes.length, uCode; for (var i3 = 0, j = 0; i3 < buf.length; i3++) { var curByte = i3 >= 0 ? buf[i3] : prevBytes[i3 + prevOffset]; var uCode = this.decodeTables[nodeIdx][curByte]; if (uCode >= 0) { } else if (uCode === UNASSIGNED) { uCode = this.defaultCharUnicode.charCodeAt(0); i3 = seqStart; } else if (uCode === GB18030_CODE) { if (i3 >= 3) { var ptr = (buf[i3 - 3] - 129) * 12600 + (buf[i3 - 2] - 48) * 1260 + (buf[i3 - 1] - 129) * 10 + (curByte - 48); } else { var ptr = (prevBytes[i3 - 3 + prevOffset] - 129) * 12600 + ((i3 - 2 >= 0 ? buf[i3 - 2] : prevBytes[i3 - 2 + prevOffset]) - 48) * 1260 + ((i3 - 1 >= 0 ? buf[i3 - 1] : prevBytes[i3 - 1 + prevOffset]) - 129) * 10 + (curByte - 48); } var idx = findIdx(this.gb18030.gbChars, ptr); uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx]; } else if (uCode <= NODE_START) { nodeIdx = NODE_START - uCode; continue; } else if (uCode <= SEQ_START) { var seq = this.decodeTableSeq[SEQ_START - uCode]; for (var k = 0; k < seq.length - 1; k++) { uCode = seq[k]; newBuf[j++] = uCode & 255; newBuf[j++] = uCode >> 8; } uCode = seq[seq.length - 1]; } else throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte); if (uCode >= 65536) { uCode -= 65536; var uCodeLead = 55296 | uCode >> 10; newBuf[j++] = uCodeLead & 255; newBuf[j++] = uCodeLead >> 8; uCode = 56320 | uCode & 1023; } newBuf[j++] = uCode & 255; newBuf[j++] = uCode >> 8; nodeIdx = 0; seqStart = i3 + 1; } this.nodeIdx = nodeIdx; this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf)); return newBuf.slice(0, j).toString("ucs2"); }; DBCSDecoder.prototype.end = function() { var ret = ""; while (this.prevBytes.length > 0) { ret += this.defaultCharUnicode; var bytesArr = this.prevBytes.slice(1); this.prevBytes = []; this.nodeIdx = 0; if (bytesArr.length > 0) ret += this.write(bytesArr); } this.prevBytes = []; this.nodeIdx = 0; return ret; }; function findIdx(table, val) { if (table[0] > val) return -1; var l = 0, r3 = table.length; while (l < r3 - 1) { var mid = l + (r3 - l + 1 >> 1); if (table[mid] <= val) l = mid; else r3 = mid; } return l; } } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/shiftjis.json var require_shiftjis = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports, module2) { module2.exports = [ ["0", "\0", 128], ["a1", "\uFF61", 62], ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"], ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"], ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"], ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"], ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"], ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"], ["81fc", "\u25EF"], ["824f", "\uFF10", 9], ["8260", "\uFF21", 25], ["8281", "\uFF41", 25], ["829f", "\u3041", 82], ["8340", "\u30A1", 62], ["8380", "\u30E0", 22], ["839f", "\u0391", 16, "\u03A3", 6], ["83bf", "\u03B1", 16, "\u03C3", 6], ["8440", "\u0410", 5, "\u0401\u0416", 25], ["8470", "\u0430", 5, "\u0451\u0436", 7], ["8480", "\u043E", 17], ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"], ["8740", "\u2460", 19, "\u2160", 9], ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"], ["877e", "\u337B"], ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"], ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"], ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"], ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"], ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"], ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"], ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"], ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"], ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"], ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"], ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"], ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"], ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"], ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"], ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"], ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"], ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"], ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"], ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"], ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"], ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"], ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"], ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"], ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"], ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"], ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"], ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"], ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"], ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"], ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"], ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"], ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"], ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"], ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"], ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"], ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"], ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"], ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"], ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"], ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"], ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"], ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"], ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"], ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"], ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"], ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"], ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"], ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"], ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"], ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"], ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"], ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"], ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"], ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"], ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"], ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"], ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"], ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"], ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"], ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"], ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"], ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"], ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"], ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"], ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"], ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"], ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"], ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"], ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"], ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"], ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"], ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"], ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"], ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"], ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"], ["f040", "\uE000", 62], ["f080", "\uE03F", 124], ["f140", "\uE0BC", 62], ["f180", "\uE0FB", 124], ["f240", "\uE178", 62], ["f280", "\uE1B7", 124], ["f340", "\uE234", 62], ["f380", "\uE273", 124], ["f440", "\uE2F0", 62], ["f480", "\uE32F", 124], ["f540", "\uE3AC", 62], ["f580", "\uE3EB", 124], ["f640", "\uE468", 62], ["f680", "\uE4A7", 124], ["f740", "\uE524", 62], ["f780", "\uE563", 124], ["f840", "\uE5E0", 62], ["f880", "\uE61F", 124], ["f940", "\uE69C"], ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"], ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"], ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"], ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"], ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/eucjp.json var require_eucjp = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports, module2) { module2.exports = [ ["0", "\0", 127], ["8ea1", "\uFF61", 62], ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"], ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"], ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"], ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"], ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"], ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"], ["a2fe", "\u25EF"], ["a3b0", "\uFF10", 9], ["a3c1", "\uFF21", 25], ["a3e1", "\uFF41", 25], ["a4a1", "\u3041", 82], ["a5a1", "\u30A1", 85], ["a6a1", "\u0391", 16, "\u03A3", 6], ["a6c1", "\u03B1", 16, "\u03C3", 6], ["a7a1", "\u0410", 5, "\u0401\u0416", 25], ["a7d1", "\u0430", 5, "\u0451\u0436", 25], ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"], ["ada1", "\u2460", 19, "\u2160", 9], ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"], ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"], ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"], ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"], ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"], ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"], ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"], ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"], ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"], ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"], ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"], ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"], ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"], ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"], ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"], ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"], ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"], ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"], ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"], ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"], ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"], ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"], ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"], ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"], ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"], ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"], ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"], ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"], ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"], ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"], ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"], ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"], ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"], ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"], ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"], ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"], ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"], ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"], ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"], ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"], ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"], ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"], ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"], ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"], ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"], ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"], ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"], ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"], ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"], ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"], ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"], ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"], ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"], ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"], ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"], ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"], ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"], ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"], ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"], ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"], ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"], ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"], ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"], ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"], ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"], ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"], ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"], ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"], ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"], ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"], ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"], ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"], ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"], ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"], ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"], ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"], ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"], ["8fa2c2", "\xA1\xA6\xBF"], ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"], ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"], ["8fa6e7", "\u038C"], ["8fa6e9", "\u038E\u03AB"], ["8fa6ec", "\u038F"], ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"], ["8fa7c2", "\u0402", 10, "\u040E\u040F"], ["8fa7f2", "\u0452", 10, "\u045E\u045F"], ["8fa9a1", "\xC6\u0110"], ["8fa9a4", "\u0126"], ["8fa9a6", "\u0132"], ["8fa9a8", "\u0141\u013F"], ["8fa9ab", "\u014A\xD8\u0152"], ["8fa9af", "\u0166\xDE"], ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"], ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"], ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"], ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"], ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"], ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"], ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"], ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"], ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"], ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"], ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"], ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"], ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"], ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"], ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"], ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"], ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"], ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"], ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"], ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"], ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"], ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"], ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"], ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"], ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"], ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"], ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"], ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"], ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"], ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"], ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"], ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"], ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"], ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"], ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"], ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"], ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"], ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"], ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"], ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"], ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5], ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"], ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"], ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"], ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"], ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"], ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"], ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"], ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"], ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"], ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"], ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"], ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"], ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"], ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"], ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"], ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"], ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"], ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"], ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"], ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"], ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"], ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"], ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4], ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"], ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"], ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"], ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/cp936.json var require_cp936 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/cp936.json"(exports, module2) { module2.exports = [ ["0", "\0", 127, "\u20AC"], ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"], ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"], ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11], ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"], ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"], ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5], ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"], ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"], ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"], ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"], ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"], ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"], ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4], ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6], ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"], ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7], ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"], ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"], ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"], ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5], ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"], ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6], ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"], ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4], ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4], ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"], ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"], ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6], ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"], ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"], ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"], ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6], ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"], ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"], ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"], ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"], ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"], ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"], ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8], ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"], ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"], ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"], ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"], ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5], ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"], ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"], ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"], ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"], ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5], ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6], ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"], ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"], ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"], ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"], ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"], ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5], ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"], ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"], ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6], ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"], ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"], ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4], ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19], ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"], ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"], ["a2a1", "\u2170", 9], ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9], ["a2e5", "\u3220", 9], ["a2f1", "\u2160", 11], ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"], ["a4a1", "\u3041", 82], ["a5a1", "\u30A1", 85], ["a6a1", "\u0391", 16, "\u03A3", 6], ["a6c1", "\u03B1", 16, "\u03C3", 6], ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"], ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"], ["a6f4", "\uFE33\uFE34"], ["a7a1", "\u0410", 5, "\u0401\u0416", 25], ["a7d1", "\u0430", 5, "\u0451\u0436", 25], ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6], ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"], ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"], ["a8bd", "\u0144\u0148"], ["a8c0", "\u0261"], ["a8c5", "\u3105", 36], ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"], ["a959", "\u2121\u3231"], ["a95c", "\u2010"], ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8], ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"], ["a996", "\u3007"], ["a9a4", "\u2500", 75], ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8], ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"], ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4], ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4], ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11], ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"], ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12], ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"], ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"], ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"], ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"], ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"], ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"], ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"], ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"], ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"], ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4], ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"], ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"], ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"], ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9], ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"], ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"], ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"], ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"], ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"], ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16], ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"], ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"], ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"], ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"], ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"], ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"], ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"], ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9], ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"], ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5], ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"], ["bd40", "\u7D37", 54, "\u7D6F", 7], ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"], ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42], ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"], ["bf40", "\u7DFB", 62], ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"], ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"], ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"], ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"], ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"], ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"], ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"], ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"], ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"], ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"], ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"], ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"], ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"], ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"], ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"], ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"], ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"], ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"], ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"], ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"], ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"], ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10], ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"], ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"], ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"], ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"], ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"], ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"], ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"], ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"], ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"], ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9], ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"], ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"], ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"], ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5], ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"], ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"], ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"], ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6], ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"], ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21], ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"], ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46], ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"], ["d640", "\u8AE4", 34, "\u8B08", 27], ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"], ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25], ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"], ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"], ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"], ["d940", "\u8CAE", 62], ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"], ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"], ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"], ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"], ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"], ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7], ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"], ["dd40", "\u8EE5", 62], ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"], ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"], ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"], ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"], ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"], ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"], ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"], ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"], ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"], ["e240", "\u91E6", 62], ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"], ["e340", "\u9246", 45, "\u9275", 16], ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"], ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31], ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"], ["e540", "\u930A", 51, "\u933F", 10], ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"], ["e640", "\u936C", 34, "\u9390", 27], ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"], ["e740", "\u93CE", 7, "\u93D7", 54], ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"], ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"], ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"], ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42], ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"], ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"], ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"], ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"], ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"], ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7], ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"], ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46], ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"], ["ee40", "\u980F", 62], ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"], ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4], ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"], ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26], ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"], ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47], ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"], ["f240", "\u99FA", 62], ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"], ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"], ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"], ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5], ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"], ["f540", "\u9B7C", 62], ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"], ["f640", "\u9BDC", 62], ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"], ["f740", "\u9C3C", 62], ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"], ["f840", "\u9CE3", 62], ["f880", "\u9D22", 32], ["f940", "\u9D43", 62], ["f980", "\u9D82", 32], ["fa40", "\u9DA3", 62], ["fa80", "\u9DE2", 32], ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"], ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"], ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6], ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"], ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38], ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"], ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/gbk-added.json var require_gbk_added = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports, module2) { module2.exports = [ ["a140", "\uE4C6", 62], ["a180", "\uE505", 32], ["a240", "\uE526", 62], ["a280", "\uE565", 32], ["a2ab", "\uE766", 5], ["a2e3", "\u20AC\uE76D"], ["a2ef", "\uE76E\uE76F"], ["a2fd", "\uE770\uE771"], ["a340", "\uE586", 62], ["a380", "\uE5C5", 31, "\u3000"], ["a440", "\uE5E6", 62], ["a480", "\uE625", 32], ["a4f4", "\uE772", 10], ["a540", "\uE646", 62], ["a580", "\uE685", 32], ["a5f7", "\uE77D", 7], ["a640", "\uE6A6", 62], ["a680", "\uE6E5", 32], ["a6b9", "\uE785", 7], ["a6d9", "\uE78D", 6], ["a6ec", "\uE794\uE795"], ["a6f3", "\uE796"], ["a6f6", "\uE797", 8], ["a740", "\uE706", 62], ["a780", "\uE745", 32], ["a7c2", "\uE7A0", 14], ["a7f2", "\uE7AF", 12], ["a896", "\uE7BC", 10], ["a8bc", "\u1E3F"], ["a8bf", "\u01F9"], ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"], ["a8ea", "\uE7CD", 20], ["a958", "\uE7E2"], ["a95b", "\uE7E3"], ["a95d", "\uE7E4\uE7E5\uE7E6"], ["a989", "\u303E\u2FF0", 11], ["a997", "\uE7F4", 12], ["a9f0", "\uE801", 14], ["aaa1", "\uE000", 93], ["aba1", "\uE05E", 93], ["aca1", "\uE0BC", 93], ["ada1", "\uE11A", 93], ["aea1", "\uE178", 93], ["afa1", "\uE1D6", 93], ["d7fa", "\uE810", 4], ["f8a1", "\uE234", 93], ["f9a1", "\uE292", 93], ["faa1", "\uE2F0", 93], ["fba1", "\uE34E", 93], ["fca1", "\uE3AC", 93], ["fda1", "\uE40A", 93], ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"], ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93], ["8135f437", "\uE7C7"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json var require_gb18030_ranges = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports, module2) { module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/cp949.json var require_cp949 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/cp949.json"(exports, module2) { module2.exports = [ ["0", "\0", 127], ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"], ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"], ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"], ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5], ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"], ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18], ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7], ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"], ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8], ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8], ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18], ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"], ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4], ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"], ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"], ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"], ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10], ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"], ["8741", "\uB19E", 9, "\uB1A9", 15], ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"], ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4], ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4], ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"], ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"], ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"], ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"], ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15], ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"], ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"], ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"], ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"], ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8], ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18], ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4], ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5], ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16], ["8d41", "\uB6C3", 16, "\uB6D5", 8], ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"], ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"], ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8], ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19], ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7], ["8f41", "\uB885", 7, "\uB88E", 17], ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4], ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5], ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"], ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15], ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"], ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5], ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5], ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6], ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"], ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4], ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"], ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"], ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8], ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"], ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8], ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12], ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24], ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"], ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"], ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14], ["9641", "\uBEB8", 23, "\uBED2\uBED3"], ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8], ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44], ["9741", "\uBF83", 16, "\uBF95", 8], ["9761", "\uBF9E", 17, "\uBFB1", 7], ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"], ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"], ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15], ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"], ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"], ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"], ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"], ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16], ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"], ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"], ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8], ["9b61", "\uC333", 17, "\uC346", 7], ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"], ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5], ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9], ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12], ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8], ["9d61", "\uC4C6", 25], ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"], ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"], ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"], ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"], ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"], ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"], ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"], ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"], ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13], ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"], ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"], ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"], ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"], ["a241", "\uC910\uC912", 5, "\uC919", 18], ["a261", "\uC92D", 6, "\uC935", 18], ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"], ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"], ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16], ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"], ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"], ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12], ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93], ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"], ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"], ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9], ["a5b0", "\u2160", 9], ["a5c1", "\u0391", 16, "\u03A3", 6], ["a5e1", "\u03B1", 16, "\u03C3", 6], ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"], ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6], ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7], ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7], ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"], ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"], ["a841", "\uCB6D", 10, "\uCB7A", 14], ["a861", "\uCB89", 18, "\uCB9D", 6], ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"], ["a8a6", "\u0132"], ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"], ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"], ["a941", "\uCBC5", 14, "\uCBD5", 10], ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18], ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"], ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"], ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"], ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82], ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"], ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5], ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85], ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"], ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4], ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25], ["acd1", "\u0430", 5, "\u0451\u0436", 25], ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7], ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"], ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"], ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16], ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4], ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"], ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19], ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"], ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"], ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12], ["b061", "\uCEBB", 5, "\uCEC2", 19], ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"], ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"], ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11], ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"], ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"], ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"], ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"], ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"], ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5], ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"], ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5], ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"], ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"], ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5], ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4], ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"], ["b641", "\uD105", 7, "\uD10E", 17], ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"], ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"], ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"], ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"], ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"], ["b841", "\uD1D0", 7, "\uD1D9", 17], ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13], ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"], ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"], ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"], ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"], ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"], ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5], ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"], ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"], ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"], ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"], ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"], ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"], ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"], ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"], ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13], ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"], ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14], ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"], ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"], ["bf41", "\uD49E", 10, "\uD4AA", 14], ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"], ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"], ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5], ["c061", "\uD51E", 25], ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"], ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"], ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"], ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"], ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"], ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"], ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"], ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4], ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11], ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"], ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"], ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4], ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"], ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"], ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4], ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"], ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5], ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"], ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"], ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"], ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"], ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"], ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"], ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"], ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"], ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"], ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"], ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"], ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"], ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"], ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"], ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"], ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"], ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"], ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"], ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"], ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"], ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"], ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"], ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"], ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"], ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"], ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"], ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"], ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"], ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"], ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"], ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"], ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"], ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"], ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"], ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"], ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"], ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"], ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"], ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"], ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"], ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"], ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"], ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"], ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"], ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"], ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"], ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"], ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"], ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"], ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"], ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"], ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"], ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"], ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"], ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/cp950.json var require_cp950 = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/cp950.json"(exports, module2) { module2.exports = [ ["0", "\0", 127], ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"], ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"], ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"], ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21], ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10], ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"], ["a3e1", "\u20AC"], ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"], ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"], ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"], ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"], ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"], ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"], ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"], ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"], ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"], ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"], ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"], ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"], ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"], ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"], ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"], ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"], ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"], ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"], ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"], ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"], ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"], ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"], ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"], ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"], ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"], ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"], ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"], ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"], ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"], ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"], ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"], ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"], ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"], ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"], ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"], ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"], ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"], ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"], ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"], ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"], ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"], ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"], ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"], ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"], ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"], ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"], ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"], ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"], ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"], ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"], ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"], ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"], ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"], ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"], ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"], ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"], ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"], ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"], ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"], ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"], ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"], ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"], ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"], ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"], ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"], ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"], ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"], ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"], ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"], ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"], ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"], ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"], ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"], ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"], ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"], ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"], ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"], ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"], ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"], ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"], ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"], ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"], ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"], ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"], ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"], ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"], ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"], ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"], ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"], ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"], ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"], ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"], ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"], ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"], ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"], ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"], ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"], ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"], ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"], ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"], ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"], ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"], ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"], ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"], ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"], ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"], ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"], ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"], ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"], ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"], ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"], ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"], ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"], ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"], ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"], ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"], ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"], ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"], ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"], ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"], ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"], ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"], ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"], ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"], ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"], ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"], ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"], ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"], ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"], ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"], ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"], ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"], ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"], ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"], ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"], ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"], ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"], ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"], ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"], ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"], ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"], ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"], ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"], ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"], ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"], ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"], ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"], ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"], ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"], ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"], ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"], ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"], ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"], ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"], ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"], ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"], ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"], ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"], ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"], ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"], ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"], ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"], ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"], ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"], ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"], ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"], ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/big5-added.json var require_big5_added = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports, module2) { module2.exports = [ ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"], ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"], ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"], ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"], ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"], ["8940", "\u{2A3A9}\u{21145}"], ["8943", "\u650A"], ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"], ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"], ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"], ["89ab", "\u918C\u78B8\u915E\u80BC"], ["89b0", "\u8D0B\u80F6\u{209E7}"], ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"], ["89c1", "\u6E9A\u823E\u7519"], ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"], ["8a40", "\u{27D84}\u5525"], ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"], ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"], ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"], ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"], ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"], ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"], ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"], ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"], ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"], ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"], ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"], ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"], ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"], ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"], ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"], ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"], ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"], ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"], ["8cc9", "\u9868\u676B\u4276\u573D"], ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"], ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"], ["8d40", "\u{20B9F}"], ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"], ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"], ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"], ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"], ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"], ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"], ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"], ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"], ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"], ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"], ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"], ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"], ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"], ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"], ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"], ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"], ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"], ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"], ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"], ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"], ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"], ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"], ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"], ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"], ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"], ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"], ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"], ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"], ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"], ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"], ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"], ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"], ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"], ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"], ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"], ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"], ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"], ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"], ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"], ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"], ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"], ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"], ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"], ["9fae", "\u9159\u9681\u915C"], ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"], ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"], ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"], ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"], ["9fe7", "\u6BFA\u8818\u7F78"], ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"], ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"], ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"], ["a055", "\u{2183B}\u{26E05}"], ["a058", "\u8A7E\u{2251B}"], ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"], ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"], ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"], ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"], ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"], ["a0ae", "\u77FE"], ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"], ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"], ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"], ["a3c0", "\u2400", 31, "\u2421"], ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23], ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"], ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4], ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"], ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"], ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"], ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"], ["f9fe", "\uFFED"], ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"], ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"], ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"], ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"], ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"], ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"], ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"], ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"], ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"], ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"] ]; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/dbcs-data.js var require_dbcs_data = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/dbcs-data.js"(exports, module2) { "use strict"; module2.exports = { "shiftjis": { type: "_dbcs", table: function() { return require_shiftjis(); }, encodeAdd: { "\xA5": 92, "\u203E": 126 }, encodeSkipVals: [{ from: 60736, to: 63808 }] }, "csshiftjis": "shiftjis", "mskanji": "shiftjis", "sjis": "shiftjis", "windows31j": "shiftjis", "ms31j": "shiftjis", "xsjis": "shiftjis", "windows932": "shiftjis", "ms932": "shiftjis", "932": "shiftjis", "cp932": "shiftjis", "eucjp": { type: "_dbcs", table: function() { return require_eucjp(); }, encodeAdd: { "\xA5": 92, "\u203E": 126 } }, "gb2312": "cp936", "gb231280": "cp936", "gb23121980": "cp936", "csgb2312": "cp936", "csiso58gb231280": "cp936", "euccn": "cp936", "windows936": "cp936", "ms936": "cp936", "936": "cp936", "cp936": { type: "_dbcs", table: function() { return require_cp936(); } }, "gbk": { type: "_dbcs", table: function() { return require_cp936().concat(require_gbk_added()); } }, "xgbk": "gbk", "isoir58": "gbk", "gb18030": { type: "_dbcs", table: function() { return require_cp936().concat(require_gbk_added()); }, gb18030: function() { return require_gb18030_ranges(); }, encodeSkipVals: [128], encodeAdd: { "\u20AC": 41699 } }, "chinese": "gb18030", "windows949": "cp949", "ms949": "cp949", "949": "cp949", "cp949": { type: "_dbcs", table: function() { return require_cp949(); } }, "cseuckr": "cp949", "csksc56011987": "cp949", "euckr": "cp949", "isoir149": "cp949", "korean": "cp949", "ksc56011987": "cp949", "ksc56011989": "cp949", "ksc5601": "cp949", "windows950": "cp950", "ms950": "cp950", "950": "cp950", "cp950": { type: "_dbcs", table: function() { return require_cp950(); } }, "big5": "big5hkscs", "big5hkscs": { type: "_dbcs", table: function() { return require_cp950().concat(require_big5_added()); }, encodeSkipVals: [ 36457, 36463, 36478, 36523, 36532, 36557, 36560, 36695, 36713, 36718, 36811, 36862, 36973, 36986, 37060, 37084, 37105, 37311, 37551, 37552, 37553, 37554, 37585, 37959, 38090, 38361, 38652, 39285, 39798, 39800, 39803, 39878, 39902, 39916, 39926, 40002, 40019, 40034, 40040, 40043, 40055, 40124, 40125, 40144, 40279, 40282, 40388, 40431, 40443, 40617, 40687, 40701, 40800, 40907, 41079, 41180, 41183, 36812, 37576, 38468, 38637, 41636, 41637, 41639, 41638, 41676, 41678 ] }, "cnbig5": "big5hkscs", "csbig5": "big5hkscs", "xxbig5": "big5hkscs" }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/index.js var require_encodings = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/encodings/index.js"(exports, module2) { "use strict"; var modules = [ require_internal(), require_utf32(), require_utf16(), require_utf7(), require_sbcs_codec(), require_sbcs_data(), require_sbcs_data_generated(), require_dbcs_codec(), require_dbcs_data() ]; for (i2 = 0; i2 < modules.length; i2++) { module2 = modules[i2]; for (enc in module2) if (Object.prototype.hasOwnProperty.call(module2, enc)) exports[enc] = module2[enc]; } var module2; var enc; var i2; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/lib/streams.js var require_streams = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/lib/streams.js"(exports, module2) { "use strict"; var Buffer4 = require_safer().Buffer; module2.exports = function(stream_module) { var Transform = stream_module.Transform; function IconvLiteEncoderStream(conv, options) { this.conv = conv; options = options || {}; options.decodeStrings = false; Transform.call(this, options); } IconvLiteEncoderStream.prototype = Object.create(Transform.prototype, { constructor: { value: IconvLiteEncoderStream } }); IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) { if (typeof chunk != "string") return done(new Error("Iconv encoding stream needs strings as its input.")); try { var res = this.conv.write(chunk); if (res && res.length) this.push(res); done(); } catch (e2) { done(e2); } }; IconvLiteEncoderStream.prototype._flush = function(done) { try { var res = this.conv.end(); if (res && res.length) this.push(res); done(); } catch (e2) { done(e2); } }; IconvLiteEncoderStream.prototype.collect = function(cb) { var chunks = []; this.on("error", cb); this.on("data", function(chunk) { chunks.push(chunk); }); this.on("end", function() { cb(null, Buffer4.concat(chunks)); }); return this; }; function IconvLiteDecoderStream(conv, options) { this.conv = conv; options = options || {}; options.encoding = this.encoding = "utf8"; Transform.call(this, options); } IconvLiteDecoderStream.prototype = Object.create(Transform.prototype, { constructor: { value: IconvLiteDecoderStream } }); IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) { if (!Buffer4.isBuffer(chunk) && !(chunk instanceof Uint8Array)) return done(new Error("Iconv decoding stream needs buffers as its input.")); try { var res = this.conv.write(chunk); if (res && res.length) this.push(res, this.encoding); done(); } catch (e2) { done(e2); } }; IconvLiteDecoderStream.prototype._flush = function(done) { try { var res = this.conv.end(); if (res && res.length) this.push(res, this.encoding); done(); } catch (e2) { done(e2); } }; IconvLiteDecoderStream.prototype.collect = function(cb) { var res = ""; this.on("error", cb); this.on("data", function(chunk) { res += chunk; }); this.on("end", function() { cb(null, res); }); return this; }; return { IconvLiteEncoderStream, IconvLiteDecoderStream }; }; } }); // ../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/lib/index.js var require_lib = __commonJS({ "../../node_modules/.pnpm/iconv-lite@0.6.3/node_modules/iconv-lite/lib/index.js"(exports, module2) { "use strict"; var Buffer4 = require_safer().Buffer; var bomHandling = require_bom_handling(); var iconv = module2.exports; iconv.encodings = null; iconv.defaultCharUnicode = "\uFFFD"; iconv.defaultCharSingleByte = "?"; iconv.encode = function encode(str, encoding, options) { str = "" + (str || ""); var encoder = iconv.getEncoder(encoding, options); var res = encoder.write(str); var trail = encoder.end(); return trail && trail.length > 0 ? Buffer4.concat([res, trail]) : res; }; iconv.decode = function decode(buf, encoding, options) { if (typeof buf === "string") { if (!iconv.skipDecodeWarning) { console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"); iconv.skipDecodeWarning = true; } buf = Buffer4.from("" + (buf || ""), "binary"); } var decoder = iconv.getDecoder(encoding, options); var res = decoder.write(buf); var trail = decoder.end(); return trail ? res + trail : res; }; iconv.encodingExists = function encodingExists(enc) { try { iconv.getCodec(enc); return true; } catch (e2) { return false; } }; iconv.toEncoding = iconv.encode; iconv.fromEncoding = iconv.decode; iconv._codecDataCache = {}; iconv.getCodec = function getCodec(encoding) { if (!iconv.encodings) iconv.encodings = require_encodings(); var enc = iconv._canonicalizeEncoding(encoding); var codecOptions = {}; while (true) { var codec = iconv._codecDataCache[enc]; if (codec) return codec; var codecDef = iconv.encodings[enc]; switch (typeof codecDef) { case "string": enc = codecDef; break; case "object": for (var key in codecDef) codecOptions[key] = codecDef[key]; if (!codecOptions.encodingName) codecOptions.encodingName = enc; enc = codecDef.type; break; case "function": if (!codecOptions.encodingName) codecOptions.encodingName = enc; codec = new codecDef(codecOptions, iconv); iconv._codecDataCache[codecOptions.encodingName] = codec; return codec; default: throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')"); } } }; iconv._canonicalizeEncoding = function(encoding) { return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, ""); }; iconv.getEncoder = function getEncoder(encoding, options) { var codec = iconv.getCodec(encoding), encoder = new codec.encoder(options, codec); if (codec.bomAware && options && options.addBOM) encoder = new bomHandling.PrependBOM(encoder, options); return encoder; }; iconv.getDecoder = function getDecoder(encoding, options) { var codec = iconv.getCodec(encoding), decoder = new codec.decoder(options, codec); if (codec.bomAware && !(options && options.stripBOM === false)) decoder = new bomHandling.StripBOM(decoder, options); return decoder; }; iconv.enableStreamingAPI = function enableStreamingAPI(stream_module2) { if (iconv.supportsStreams) return; var streams = require_streams()(stream_module2); iconv.IconvLiteEncoderStream = streams.IconvLiteEncoderStream; iconv.IconvLiteDecoderStream = streams.IconvLiteDecoderStream; iconv.encodeStream = function encodeStream(encoding, options) { return new iconv.IconvLiteEncoderStream(iconv.getEncoder(encoding, options), options); }; iconv.decodeStream = function decodeStream(encoding, options) { return new iconv.IconvLiteDecoderStream(iconv.getDecoder(encoding, options), options); }; iconv.supportsStreams = true; }; var stream_module; try { stream_module = require("stream"); } catch (e2) { } if (stream_module && stream_module.Transform) { iconv.enableStreamingAPI(stream_module); } else { iconv.encodeStream = iconv.decodeStream = function() { throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it."); }; } if (false) { console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info."); } } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/string.js var require_string2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/string.js"(exports) { "use strict"; var Iconv = require_lib(); exports.decode = function(buffer, encoding, start, end, options) { if (Buffer.isEncoding(encoding)) { return buffer.toString(encoding, start, end); } const decoder = Iconv.getDecoder(encoding, options || {}); const res = decoder.write(buffer.slice(start, end)); const trail = decoder.end(); return trail ? res + trail : res; }; exports.encode = function(string, encoding, options) { if (Buffer.isEncoding(encoding)) { return Buffer.from(string, encoding); } const encoder = Iconv.getEncoder(encoding, options || {}); const res = encoder.write(string); const trail = encoder.end(); return trail && trail.length > 0 ? Buffer.concat([res, trail]) : res; }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/packet.js var require_packet = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/packet.js"(exports, module2) { "use strict"; var ErrorCodeToName = require_errors3(); var NativeBuffer = require("buffer").Buffer; var Long = require_long(); var StringParser = require_string2(); var INVALID_DATE = new Date(NaN); var pad = "000000000000"; function leftPad(num, value) { const s2 = value.toString(); if (s2.length >= num) { return s2; } return (pad + s2).slice(-num); } var minus = "-".charCodeAt(0); var plus = "+".charCodeAt(0); var dot = ".".charCodeAt(0); var exponent = "e".charCodeAt(0); var exponentCapital = "E".charCodeAt(0); var Packet = class { constructor(id, buffer, start, end) { this.sequenceId = id; this.numPackets = 1; this.buffer = buffer; this.start = start; this.offset = start + 4; this.end = end; } reset() { this.offset = this.start + 4; } length() { return this.end - this.start; } slice() { return this.buffer.slice(this.start, this.end); } dump() { console.log( [this.buffer.asciiSlice(this.start, this.end)], this.buffer.slice(this.start, this.end), this.length(), this.sequenceId ); } haveMoreData() { return this.end > this.offset; } skip(num) { this.offset += num; } readInt8() { return this.buffer[this.offset++]; } readInt16() { this.offset += 2; return this.buffer.readUInt16LE(this.offset - 2); } readInt24() { return this.readInt16() + (this.readInt8() << 16); } readInt32() { this.offset += 4; return this.buffer.readUInt32LE(this.offset - 4); } readSInt8() { return this.buffer.readInt8(this.offset++); } readSInt16() { this.offset += 2; return this.buffer.readInt16LE(this.offset - 2); } readSInt32() { this.offset += 4; return this.buffer.readInt32LE(this.offset - 4); } readInt64JSNumber() { const word0 = this.readInt32(); const word1 = this.readInt32(); const l = new Long(word0, word1, true); return l.toNumber(); } readSInt64JSNumber() { const word0 = this.readInt32(); const word1 = this.readInt32(); if (!(word1 & 2147483648)) { return word0 + 4294967296 * word1; } const l = new Long(word0, word1, false); return l.toNumber(); } readInt64String() { const word0 = this.readInt32(); const word1 = this.readInt32(); const res = new Long(word0, word1, true); return res.toString(); } readSInt64String() { const word0 = this.readInt32(); const word1 = this.readInt32(); const res = new Long(word0, word1, false); return res.toString(); } readInt64() { const word0 = this.readInt32(); const word1 = this.readInt32(); let res = new Long(word0, word1, true); const resNumber = res.toNumber(); const resString = res.toString(); res = resNumber.toString() === resString ? resNumber : resString; return res; } readSInt64() { const word0 = this.readInt32(); const word1 = this.readInt32(); let res = new Long(word0, word1, false); const resNumber = res.toNumber(); const resString = res.toString(); res = resNumber.toString() === resString ? resNumber : resString; return res; } isEOF() { return this.buffer[this.offset] === 254 && this.length() < 13; } eofStatusFlags() { return this.buffer.readInt16LE(this.offset + 3); } eofWarningCount() { return this.buffer.readInt16LE(this.offset + 1); } readLengthCodedNumber(bigNumberStrings, signed) { const byte1 = this.buffer[this.offset++]; if (byte1 < 251) { return byte1; } return this.readLengthCodedNumberExt(byte1, bigNumberStrings, signed); } readLengthCodedNumberSigned(bigNumberStrings) { return this.readLengthCodedNumber(bigNumberStrings, true); } readLengthCodedNumberExt(tag, bigNumberStrings, signed) { let word0, word1; let res; if (tag === 251) { return null; } if (tag === 252) { return this.readInt8() + (this.readInt8() << 8); } if (tag === 253) { return this.readInt8() + (this.readInt8() << 8) + (this.readInt8() << 16); } if (tag === 254) { word0 = this.readInt32(); word1 = this.readInt32(); if (word1 === 0) { return word0; } if (word1 < 2097152) { return word1 * 4294967296 + word0; } res = new Long(word0, word1, !signed); const resNumber = res.toNumber(); const resString = res.toString(); res = resNumber.toString() === resString ? resNumber : resString; return bigNumberStrings ? resString : res; } console.trace(); throw new Error(`Should not reach here: ${tag}`); } readFloat() { const res = this.buffer.readFloatLE(this.offset); this.offset += 4; return res; } readDouble() { const res = this.buffer.readDoubleLE(this.offset); this.offset += 8; return res; } readBuffer(len) { if (typeof len === "undefined") { len = this.end - this.offset; } this.offset += len; return this.buffer.slice(this.offset - len, this.offset); } readDateTime(timezone) { if (!timezone || timezone === "Z" || timezone === "local") { const length = this.readInt8(); if (length === 251) { return null; } let y = 0; let m2 = 0; let d = 0; let H = 0; let M = 0; let S2 = 0; let ms = 0; if (length > 3) { y = this.readInt16(); m2 = this.readInt8(); d = this.readInt8(); } if (length > 6) { H = this.readInt8(); M = this.readInt8(); S2 = this.readInt8(); } if (length > 10) { ms = this.readInt32() / 1e3; } if (y + m2 + d + H + M + S2 + ms === 0) { return INVALID_DATE; } if (timezone === "Z") { return new Date(Date.UTC(y, m2 - 1, d, H, M, S2, ms)); } return new Date(y, m2 - 1, d, H, M, S2, ms); } let str = this.readDateTimeString(6, "T"); if (str.length === 10) { str += "T00:00:00"; } return new Date(str + timezone); } readDateTimeString(decimals, timeSep) { const length = this.readInt8(); let y = 0; let m2 = 0; let d = 0; let H = 0; let M = 0; let S2 = 0; let ms = 0; let str; if (length > 3) { y = this.readInt16(); m2 = this.readInt8(); d = this.readInt8(); str = [leftPad(4, y), leftPad(2, m2), leftPad(2, d)].join("-"); } if (length > 6) { H = this.readInt8(); M = this.readInt8(); S2 = this.readInt8(); str += `${timeSep || " "}${[ leftPad(2, H), leftPad(2, M), leftPad(2, S2) ].join(":")}`; } if (length > 10) { ms = this.readInt32(); str += "."; if (decimals) { ms = leftPad(6, ms); if (ms.length > decimals) { ms = ms.substring(0, decimals); } } str += ms; } return str; } readTimeString(convertTtoMs) { const length = this.readInt8(); if (length === 0) { return "00:00:00"; } const sign = this.readInt8() ? -1 : 1; let d = 0; let H = 0; let M = 0; let S2 = 0; let ms = 0; if (length > 6) { d = this.readInt32(); H = this.readInt8(); M = this.readInt8(); S2 = this.readInt8(); } if (length > 10) { ms = this.readInt32(); } if (convertTtoMs) { H += d * 24; M += H * 60; S2 += M * 60; ms += S2 * 1e3; ms *= sign; return ms; } return (sign === -1 ? "-" : "") + [leftPad(2, d * 24 + H), leftPad(2, M), leftPad(2, S2)].join(":") + (ms ? `.${ms}`.replace(/0+$/, "") : ""); } readLengthCodedString(encoding) { const len = this.readLengthCodedNumber(); if (len === null) { return null; } this.offset += len; return StringParser.decode( this.buffer, encoding, this.offset - len, this.offset ); } readLengthCodedBuffer() { const len = this.readLengthCodedNumber(); if (len === null) { return null; } return this.readBuffer(len); } readNullTerminatedString(encoding) { const start = this.offset; let end = this.offset; while (this.buffer[end]) { end = end + 1; } this.offset = end + 1; return StringParser.decode(this.buffer, encoding, start, end); } readString(len, encoding) { if (typeof len === "string" && typeof encoding === "undefined") { encoding = len; len = void 0; } if (typeof len === "undefined") { len = this.end - this.offset; } this.offset += len; return StringParser.decode( this.buffer, encoding, this.offset - len, this.offset ); } parseInt(len, supportBigNumbers) { if (len === null) { return null; } if (len >= 14 && !supportBigNumbers) { const s2 = this.buffer.toString("ascii", this.offset, this.offset + len); this.offset += len; return Number(s2); } let result = 0; const start = this.offset; const end = this.offset + len; let sign = 1; if (len === 0) { return 0; } if (this.buffer[this.offset] === minus) { this.offset++; sign = -1; } let str; const numDigits = end - this.offset; if (supportBigNumbers) { if (numDigits >= 15) { str = this.readString(end - this.offset, "binary"); result = parseInt(str, 10); if (result.toString() === str) { return sign * result; } return sign === -1 ? `-${str}` : str; } if (numDigits > 16) { str = this.readString(end - this.offset); return sign === -1 ? `-${str}` : str; } } if (this.buffer[this.offset] === plus) { this.offset++; } while (this.offset < end) { result *= 10; result += this.buffer[this.offset] - 48; this.offset++; } const num = result * sign; if (!supportBigNumbers) { return num; } str = this.buffer.toString("ascii", start, end); if (num.toString() === str) { return num; } return str; } parseIntNoBigCheck(len) { if (len === null) { return null; } let result = 0; const end = this.offset + len; let sign = 1; if (len === 0) { return 0; } if (this.buffer[this.offset] === minus) { this.offset++; sign = -1; } if (this.buffer[this.offset] === plus) { this.offset++; } while (this.offset < end) { result *= 10; result += this.buffer[this.offset] - 48; this.offset++; } return result * sign; } parseGeometryValue() { const buffer = this.readLengthCodedBuffer(); let offset = 4; if (buffer === null || !buffer.length) { return null; } function parseGeometry() { let x2, y, i2, j, numPoints, line; let result = null; const byteOrder = buffer.readUInt8(offset); offset += 1; const wkbType = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; switch (wkbType) { case 1: x2 = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; y = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; result = { x: x2, y }; break; case 2: numPoints = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; result = []; for (i2 = numPoints; i2 > 0; i2--) { x2 = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; y = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; result.push({ x: x2, y }); } break; case 3: const numRings = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; result = []; for (i2 = numRings; i2 > 0; i2--) { numPoints = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; line = []; for (j = numPoints; j > 0; j--) { x2 = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; y = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; line.push({ x: x2, y }); } result.push(line); } break; case 4: case 5: case 6: case 7: const num = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; result = []; for (i2 = num; i2 > 0; i2--) { result.push(parseGeometry()); } break; } return result; } return parseGeometry(); } parseDate(timezone) { const strLen = this.readLengthCodedNumber(); if (strLen === null) { return null; } if (strLen !== 10) { return new Date(NaN); } const y = this.parseInt(4); this.offset++; const m2 = this.parseInt(2); this.offset++; const d = this.parseInt(2); if (!timezone || timezone === "local") { return new Date(y, m2 - 1, d); } if (timezone === "Z") { return new Date(Date.UTC(y, m2 - 1, d)); } return new Date( `${leftPad(4, y)}-${leftPad(2, m2)}-${leftPad(2, d)}T00:00:00${timezone}` ); } parseDateTime(timezone) { const str = this.readLengthCodedString("binary"); if (str === null) { return null; } if (!timezone || timezone === "local") { return new Date(str); } return new Date(`${str}${timezone}`); } parseFloat(len) { if (len === null) { return null; } let result = 0; const end = this.offset + len; let factor = 1; let pastDot = false; let charCode = 0; if (len === 0) { return 0; } if (this.buffer[this.offset] === minus) { this.offset++; factor = -1; } if (this.buffer[this.offset] === plus) { this.offset++; } while (this.offset < end) { charCode = this.buffer[this.offset]; if (charCode === dot) { pastDot = true; this.offset++; } else if (charCode === exponent || charCode === exponentCapital) { this.offset++; const exponentValue = this.parseInt(end - this.offset); return result / factor * Math.pow(10, exponentValue); } else { result *= 10; result += this.buffer[this.offset] - 48; this.offset++; if (pastDot) { factor = factor * 10; } } } return result / factor; } parseLengthCodedIntNoBigCheck() { return this.parseIntNoBigCheck(this.readLengthCodedNumber()); } parseLengthCodedInt(supportBigNumbers) { return this.parseInt(this.readLengthCodedNumber(), supportBigNumbers); } parseLengthCodedIntString() { return this.readLengthCodedString("binary"); } parseLengthCodedFloat() { return this.parseFloat(this.readLengthCodedNumber()); } peekByte() { return this.buffer[this.offset]; } isAlt() { return this.peekByte() === 254; } isError() { return this.peekByte() === 255; } asError(encoding) { this.reset(); this.readInt8(); const errorCode = this.readInt16(); let sqlState = ""; if (this.buffer[this.offset] === 35) { this.skip(1); sqlState = this.readBuffer(5).toString(); } const message = this.readString(void 0, encoding); const err = new Error(message); err.code = ErrorCodeToName[errorCode]; err.errno = errorCode; err.sqlState = sqlState; err.sqlMessage = message; return err; } writeInt32(n) { this.buffer.writeUInt32LE(n, this.offset); this.offset += 4; } writeInt24(n) { this.writeInt8(n & 255); this.writeInt16(n >> 8); } writeInt16(n) { this.buffer.writeUInt16LE(n, this.offset); this.offset += 2; } writeInt8(n) { this.buffer.writeUInt8(n, this.offset); this.offset++; } writeDouble(n) { this.buffer.writeDoubleLE(n, this.offset); this.offset += 8; } writeBuffer(b) { b.copy(this.buffer, this.offset); this.offset += b.length; } writeNull() { this.buffer[this.offset] = 251; this.offset++; } writeNullTerminatedString(s2, encoding) { const buf = StringParser.encode(s2, encoding); this.buffer.length && buf.copy(this.buffer, this.offset); this.offset += buf.length; this.writeInt8(0); } writeString(s2, encoding) { if (s2 === null) { this.writeInt8(251); return; } if (s2.length === 0) { return; } const buf = StringParser.encode(s2, encoding); this.buffer.length && buf.copy(this.buffer, this.offset); this.offset += buf.length; } writeLengthCodedString(s2, encoding) { const buf = StringParser.encode(s2, encoding); this.writeLengthCodedNumber(buf.length); this.buffer.length && buf.copy(this.buffer, this.offset); this.offset += buf.length; } writeLengthCodedBuffer(b) { this.writeLengthCodedNumber(b.length); b.copy(this.buffer, this.offset); this.offset += b.length; } writeLengthCodedNumber(n) { if (n < 251) { return this.writeInt8(n); } if (n < 65535) { this.writeInt8(252); return this.writeInt16(n); } if (n < 16777215) { this.writeInt8(253); return this.writeInt24(n); } if (n === null) { return this.writeInt8(251); } this.writeInt8(254); this.buffer.writeUInt32LE(n, this.offset); this.offset += 4; this.buffer.writeUInt32LE(n >> 32, this.offset); this.offset += 4; return this.offset; } writeDate(d, timezone) { this.buffer.writeUInt8(11, this.offset); if (!timezone || timezone === "local") { this.buffer.writeUInt16LE(d.getFullYear(), this.offset + 1); this.buffer.writeUInt8(d.getMonth() + 1, this.offset + 3); this.buffer.writeUInt8(d.getDate(), this.offset + 4); this.buffer.writeUInt8(d.getHours(), this.offset + 5); this.buffer.writeUInt8(d.getMinutes(), this.offset + 6); this.buffer.writeUInt8(d.getSeconds(), this.offset + 7); this.buffer.writeUInt32LE(d.getMilliseconds() * 1e3, this.offset + 8); } else { if (timezone !== "Z") { const offset = (timezone[0] === "-" ? -1 : 1) * (parseInt(timezone.substring(1, 3), 10) * 60 + parseInt(timezone.substring(4), 10)); if (offset !== 0) { d = new Date(d.getTime() + 6e4 * offset); } } this.buffer.writeUInt16LE(d.getUTCFullYear(), this.offset + 1); this.buffer.writeUInt8(d.getUTCMonth() + 1, this.offset + 3); this.buffer.writeUInt8(d.getUTCDate(), this.offset + 4); this.buffer.writeUInt8(d.getUTCHours(), this.offset + 5); this.buffer.writeUInt8(d.getUTCMinutes(), this.offset + 6); this.buffer.writeUInt8(d.getUTCSeconds(), this.offset + 7); this.buffer.writeUInt32LE(d.getUTCMilliseconds() * 1e3, this.offset + 8); } this.offset += 12; } writeHeader(sequenceId) { const offset = this.offset; this.offset = 0; this.writeInt24(this.buffer.length - 4); this.writeInt8(sequenceId); this.offset = offset; } clone() { return new Packet(this.sequenceId, this.buffer, this.start, this.end); } type() { if (this.isEOF()) { return "EOF"; } if (this.isError()) { return "Error"; } if (this.buffer[this.offset] === 0) { return "maybeOK"; } return ""; } static lengthCodedNumberLength(n) { if (n < 251) { return 1; } if (n < 65535) { return 3; } if (n < 16777215) { return 5; } return 9; } static lengthCodedStringLength(str, encoding) { const buf = StringParser.encode(str, encoding); const slen = buf.length; return Packet.lengthCodedNumberLength(slen) + slen; } static MockBuffer() { const noop2 = function() { }; const res = Buffer.alloc(0); for (const op in NativeBuffer.prototype) { if (typeof res[op] === "function") { res[op] = noop2; } } return res; } }; module2.exports = Packet; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packet_parser.js var require_packet_parser = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packet_parser.js"(exports, module2) { "use strict"; var Packet = require_packet(); var MAX_PACKET_LENGTH = 16777215; function readPacketLength(b, off) { const b0 = b[off]; const b1 = b[off + 1]; const b2 = b[off + 2]; if (b1 + b2 === 0) { return b0; } return b0 + (b1 << 8) + (b2 << 16); } var PacketParser = class { constructor(onPacket, packetHeaderLength) { if (typeof packetHeaderLength === "undefined") { packetHeaderLength = 4; } this.buffer = []; this.bufferLength = 0; this.packetHeaderLength = packetHeaderLength; this.headerLen = 0; this.length = 0; this.largePacketParts = []; this.firstPacketSequenceId = 0; this.onPacket = onPacket; this.execute = PacketParser.prototype.executeStart; this._flushLargePacket = packetHeaderLength === 7 ? this._flushLargePacket7 : this._flushLargePacket4; } _flushLargePacket4() { const numPackets = this.largePacketParts.length; this.largePacketParts.unshift(Buffer.from([0, 0, 0, 0])); const body = Buffer.concat(this.largePacketParts); const packet = new Packet(this.firstPacketSequenceId, body, 0, body.length); this.largePacketParts.length = 0; packet.numPackets = numPackets; this.onPacket(packet); } _flushLargePacket7() { const numPackets = this.largePacketParts.length; this.largePacketParts.unshift(Buffer.from([0, 0, 0, 0, 0, 0, 0])); const body = Buffer.concat(this.largePacketParts); this.largePacketParts.length = 0; const packet = new Packet(this.firstPacketSequenceId, body, 0, body.length); packet.numPackets = numPackets; this.onPacket(packet); } executeStart(chunk) { let start = 0; const end = chunk.length; while (end - start >= 3) { this.length = readPacketLength(chunk, start); if (end - start >= this.length + this.packetHeaderLength) { const sequenceId = chunk[start + 3]; if (this.length < MAX_PACKET_LENGTH && this.largePacketParts.length === 0) { this.onPacket( new Packet( sequenceId, chunk, start, start + this.packetHeaderLength + this.length ) ); } else { if (this.largePacketParts.length === 0) { this.firstPacketSequenceId = sequenceId; } this.largePacketParts.push( chunk.slice( start + this.packetHeaderLength, start + this.packetHeaderLength + this.length ) ); if (this.length < MAX_PACKET_LENGTH) { this._flushLargePacket(); } } start += this.packetHeaderLength + this.length; } else { this.buffer = [chunk.slice(start + 3, end)]; this.bufferLength = end - start - 3; this.execute = PacketParser.prototype.executePayload; return; } } if (end - start > 0) { this.headerLen = end - start; this.length = chunk[start]; if (this.headerLen === 2) { this.length = chunk[start] + (chunk[start + 1] << 8); this.execute = PacketParser.prototype.executeHeader3; } else { this.execute = PacketParser.prototype.executeHeader2; } } } executePayload(chunk) { let start = 0; const end = chunk.length; const remainingPayload = this.length - this.bufferLength + this.packetHeaderLength - 3; if (end - start >= remainingPayload) { const payload = Buffer.allocUnsafe(this.length + this.packetHeaderLength); let offset = 3; for (let i2 = 0; i2 < this.buffer.length; ++i2) { this.buffer[i2].copy(payload, offset); offset += this.buffer[i2].length; } chunk.copy(payload, offset, start, start + remainingPayload); const sequenceId = payload[3]; if (this.length < MAX_PACKET_LENGTH && this.largePacketParts.length === 0) { this.onPacket( new Packet( sequenceId, payload, 0, this.length + this.packetHeaderLength ) ); } else { if (this.largePacketParts.length === 0) { this.firstPacketSequenceId = sequenceId; } this.largePacketParts.push( payload.slice( this.packetHeaderLength, this.packetHeaderLength + this.length ) ); if (this.length < MAX_PACKET_LENGTH) { this._flushLargePacket(); } } this.buffer = []; this.bufferLength = 0; this.execute = PacketParser.prototype.executeStart; start += remainingPayload; if (end - start > 0) { return this.execute(chunk.slice(start, end)); } } else { this.buffer.push(chunk); this.bufferLength += chunk.length; } return null; } executeHeader2(chunk) { this.length += chunk[0] << 8; if (chunk.length > 1) { this.length += chunk[1] << 16; this.execute = PacketParser.prototype.executePayload; return this.executePayload(chunk.slice(2)); } this.execute = PacketParser.prototype.executeHeader3; return null; } executeHeader3(chunk) { this.length += chunk[0] << 16; this.execute = PacketParser.prototype.executePayload; return this.executePayload(chunk.slice(1)); } }; module2.exports = PacketParser; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/auth_switch_request.js var require_auth_switch_request = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/auth_switch_request.js"(exports, module2) { "use strict"; var Packet = require_packet(); var AuthSwitchRequest = class { constructor(opts) { this.pluginName = opts.pluginName; this.pluginData = opts.pluginData; } toPacket() { const length = 6 + this.pluginName.length + this.pluginData.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(254); packet.writeNullTerminatedString(this.pluginName, "cesu8"); packet.writeBuffer(this.pluginData); return packet; } static fromPacket(packet) { packet.readInt8(); const name = packet.readNullTerminatedString("cesu8"); const data = packet.readBuffer(); return new AuthSwitchRequest({ pluginName: name, pluginData: data }); } }; module2.exports = AuthSwitchRequest; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/auth_switch_request_more_data.js var require_auth_switch_request_more_data = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/auth_switch_request_more_data.js"(exports, module2) { "use strict"; var Packet = require_packet(); var AuthSwitchRequestMoreData = class { constructor(data) { this.data = data; } toPacket() { const length = 5 + this.data.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(1); packet.writeBuffer(this.data); return packet; } static fromPacket(packet) { packet.readInt8(); const data = packet.readBuffer(); return new AuthSwitchRequestMoreData(data); } static verifyMarker(packet) { return packet.peekByte() === 1; } }; module2.exports = AuthSwitchRequestMoreData; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/auth_switch_response.js var require_auth_switch_response = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/auth_switch_response.js"(exports, module2) { "use strict"; var Packet = require_packet(); var AuthSwitchResponse = class { constructor(data) { if (!Buffer.isBuffer(data)) { data = Buffer.from(data); } this.data = data; } toPacket() { const length = 4 + this.data.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeBuffer(this.data); return packet; } static fromPacket(packet) { const data = packet.readBuffer(); return new AuthSwitchResponse(data); } }; module2.exports = AuthSwitchResponse; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/types.js var require_types = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/types.js"(exports) { "use strict"; exports.DECIMAL = 0; exports.TINY = 1; exports.SHORT = 2; exports.LONG = 3; exports.FLOAT = 4; exports.DOUBLE = 5; exports.NULL = 6; exports.TIMESTAMP = 7; exports.LONGLONG = 8; exports.INT24 = 9; exports.DATE = 10; exports.TIME = 11; exports.DATETIME = 12; exports.YEAR = 13; exports.NEWDATE = 14; exports.VARCHAR = 15; exports.BIT = 16; exports.JSON = 245; exports.NEWDECIMAL = 246; exports.ENUM = 247; exports.SET = 248; exports.TINY_BLOB = 249; exports.MEDIUM_BLOB = 250; exports.LONG_BLOB = 251; exports.BLOB = 252; exports.VAR_STRING = 253; exports.STRING = 254; exports.GEOMETRY = 255; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/binary_row.js var require_binary_row = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/binary_row.js"(exports, module2) { "use strict"; var Types = require_types(); var Packet = require_packet(); var binaryReader = new Array(256); var BinaryRow = class { constructor(columns) { this.columns = columns || []; } toPacket() { throw new Error("Not implemented"); } static fromPacket(fields, packet) { const columns = new Array(fields.length); packet.readInt8(); const nullBitmapLength = Math.floor((fields.length + 7 + 2) / 8); packet.skip(nullBitmapLength); for (let i2 = 0; i2 < columns.length; ++i2) { columns[i2] = binaryReader[fields[i2].columnType].apply(packet); } return new BinaryRow(columns); } }; binaryReader[Types.DECIMAL] = Packet.prototype.readLengthCodedString; binaryReader[1] = Packet.prototype.readInt8; binaryReader[2] = Packet.prototype.readInt16; binaryReader[3] = Packet.prototype.readInt32; binaryReader[4] = Packet.prototype.readFloat; binaryReader[5] = Packet.prototype.readDouble; binaryReader[6] = Packet.prototype.assertInvalid; binaryReader[7] = Packet.prototype.readTimestamp; binaryReader[8] = Packet.prototype.readInt64; binaryReader[9] = Packet.prototype.readInt32; binaryReader[10] = Packet.prototype.readTimestamp; binaryReader[11] = Packet.prototype.readTime; binaryReader[12] = Packet.prototype.readDateTime; binaryReader[13] = Packet.prototype.readInt16; binaryReader[Types.VAR_STRING] = Packet.prototype.readLengthCodedString; module2.exports = BinaryRow; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/commands.js var require_commands = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/commands.js"(exports, module2) { "use strict"; module2.exports = { SLEEP: 0, QUIT: 1, INIT_DB: 2, QUERY: 3, FIELD_LIST: 4, CREATE_DB: 5, DROP_DB: 6, REFRESH: 7, SHUTDOWN: 8, STATISTICS: 9, PROCESS_INFO: 10, CONNECT: 11, PROCESS_KILL: 12, DEBUG: 13, PING: 14, TIME: 15, DELAYED_INSERT: 16, CHANGE_USER: 17, BINLOG_DUMP: 18, TABLE_DUMP: 19, CONNECT_OUT: 20, REGISTER_SLAVE: 21, STMT_PREPARE: 22, STMT_EXECUTE: 23, STMT_SEND_LONG_DATA: 24, STMT_CLOSE: 25, STMT_RESET: 26, SET_OPTION: 27, STMT_FETCH: 28, DAEMON: 29, BINLOG_DUMP_GTID: 30, UNKNOWN: 255 }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/binlog_dump.js var require_binlog_dump = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/binlog_dump.js"(exports, module2) { "use strict"; var Packet = require_packet(); var CommandCodes = require_commands(); var BinlogDump = class { constructor(opts) { this.binlogPos = opts.binlogPos || 0; this.serverId = opts.serverId || 0; this.flags = opts.flags || 0; this.filename = opts.filename || ""; } toPacket() { const length = 15 + Buffer.byteLength(this.filename, "utf8"); const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.BINLOG_DUMP); packet.writeInt32(this.binlogPos); packet.writeInt16(this.flags); packet.writeInt32(this.serverId); packet.writeString(this.filename); return packet; } }; module2.exports = BinlogDump; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/client.js var require_client = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/client.js"(exports) { "use strict"; exports.LONG_PASSWORD = 1; exports.FOUND_ROWS = 2; exports.LONG_FLAG = 4; exports.CONNECT_WITH_DB = 8; exports.NO_SCHEMA = 16; exports.COMPRESS = 32; exports.ODBC = 64; exports.LOCAL_FILES = 128; exports.IGNORE_SPACE = 256; exports.PROTOCOL_41 = 512; exports.INTERACTIVE = 1024; exports.SSL = 2048; exports.IGNORE_SIGPIPE = 4096; exports.TRANSACTIONS = 8192; exports.RESERVED = 16384; exports.SECURE_CONNECTION = 32768; exports.MULTI_STATEMENTS = 65536; exports.MULTI_RESULTS = 131072; exports.PS_MULTI_RESULTS = 262144; exports.PLUGIN_AUTH = 524288; exports.CONNECT_ATTRS = 1048576; exports.PLUGIN_AUTH_LENENC_CLIENT_DATA = 2097152; exports.CAN_HANDLE_EXPIRED_PASSWORDS = 4194304; exports.SESSION_TRACK = 8388608; exports.DEPRECATE_EOF = 16777216; exports.SSL_VERIFY_SERVER_CERT = 1073741824; exports.REMEMBER_OPTIONS = 2147483648; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_41.js var require_auth_41 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_41.js"(exports) { "use strict"; var crypto = require("crypto"); function sha1(msg, msg1, msg2) { const hash = crypto.createHash("sha1"); hash.update(msg); if (msg1) { hash.update(msg1); } if (msg2) { hash.update(msg2); } return hash.digest(); } function xor(a, b) { if (!Buffer.isBuffer(a)) { a = Buffer.from(a, "binary"); } if (!Buffer.isBuffer(b)) { b = Buffer.from(b, "binary"); } const result = Buffer.allocUnsafe(a.length); for (let i2 = 0; i2 < a.length; i2++) { result[i2] = a[i2] ^ b[i2]; } return result; } exports.xor = xor; function token(password, scramble1, scramble2) { if (!password) { return Buffer.alloc(0); } const stage1 = sha1(password); return exports.calculateTokenFromPasswordSha(stage1, scramble1, scramble2); } exports.calculateTokenFromPasswordSha = function(passwordSha, scramble1, scramble2) { const authPluginData1 = scramble1.slice(0, 8); const authPluginData2 = scramble2.slice(0, 12); const stage2 = sha1(passwordSha); const stage3 = sha1(authPluginData1, authPluginData2, stage2); return xor(stage3, passwordSha); }; exports.calculateToken = token; exports.verifyToken = function(publicSeed1, publicSeed2, token2, doubleSha) { const hashStage1 = xor(token2, sha1(publicSeed1, publicSeed2, doubleSha)); const candidateHash2 = sha1(hashStage1); return candidateHash2.compare(doubleSha) === 0; }; exports.doubleSha1 = function(password) { return sha1(sha1(password)); }; function xorRotating(a, seed) { if (!Buffer.isBuffer(a)) { a = Buffer.from(a, "binary"); } if (!Buffer.isBuffer(seed)) { seed = Buffer.from(seed, "binary"); } const result = Buffer.allocUnsafe(a.length); const seedLen = seed.length; for (let i2 = 0; i2 < a.length; i2++) { result[i2] = a[i2] ^ seed[i2 % seedLen]; } return result; } exports.xorRotating = xorRotating; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/charset_encodings.js var require_charset_encodings = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/charset_encodings.js"(exports, module2) { "use strict"; module2.exports = [ "utf8", "big5", "latin2", "dec8", "cp850", "latin1", "hp8", "koi8r", "latin1", "latin2", "swe7", "ascii", "eucjp", "sjis", "cp1251", "latin1", "hebrew", "utf8", "tis620", "euckr", "latin7", "latin2", "koi8u", "cp1251", "gb2312", "greek", "cp1250", "latin2", "gbk", "cp1257", "latin5", "latin1", "armscii8", "cesu8", "cp1250", "ucs2", "cp866", "keybcs2", "macintosh", "macroman", "cp852", "latin7", "latin7", "macintosh", "cp1250", "utf8", "utf8", "latin1", "latin1", "latin1", "cp1251", "cp1251", "cp1251", "macroman", "utf16", "utf16", "utf16-le", "cp1256", "cp1257", "cp1257", "utf32", "utf32", "utf16-le", "binary", "armscii8", "ascii", "cp1250", "cp1256", "cp866", "dec8", "greek", "hebrew", "hp8", "keybcs2", "koi8r", "koi8u", "cesu8", "latin2", "latin5", "latin7", "cp850", "cp852", "swe7", "cesu8", "big5", "euckr", "gb2312", "gbk", "sjis", "tis620", "ucs2", "eucjp", "geostd8", "geostd8", "latin1", "cp932", "cp932", "eucjpms", "eucjpms", "cp1250", "utf8", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf8", "utf8", "utf8", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "ucs2", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "cesu8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "gb18030", "gb18030", "gb18030", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8" ]; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/change_user.js var require_change_user = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/change_user.js"(exports, module2) { "use strict"; var CommandCode = require_commands(); var ClientConstants = require_client(); var Packet = require_packet(); var auth41 = require_auth_41(); var CharsetToEncoding = require_charset_encodings(); var ChangeUser = class { constructor(opts) { this.flags = opts.flags; this.user = opts.user || ""; this.database = opts.database || ""; this.password = opts.password || ""; this.passwordSha1 = opts.passwordSha1; this.authPluginData1 = opts.authPluginData1; this.authPluginData2 = opts.authPluginData2; this.connectAttributes = opts.connectAttrinutes || {}; let authToken; if (this.passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( this.passwordSha1, this.authPluginData1, this.authPluginData2 ); } else { authToken = auth41.calculateToken( this.password, this.authPluginData1, this.authPluginData2 ); } this.authToken = authToken; this.charsetNumber = opts.charsetNumber; } serializeToBuffer(buffer) { const isSet = (flag) => this.flags & ClientConstants[flag]; const packet = new Packet(0, buffer, 0, buffer.length); packet.offset = 4; const encoding = CharsetToEncoding[this.charsetNumber]; packet.writeInt8(CommandCode.CHANGE_USER); packet.writeNullTerminatedString(this.user, encoding); if (isSet("SECURE_CONNECTION")) { packet.writeInt8(this.authToken.length); packet.writeBuffer(this.authToken); } else { packet.writeBuffer(this.authToken); packet.writeInt8(0); } packet.writeNullTerminatedString(this.database, encoding); packet.writeInt16(this.charsetNumber); if (isSet("PLUGIN_AUTH")) { packet.writeNullTerminatedString("mysql_native_password", "latin1"); } if (isSet("CONNECT_ATTRS")) { const connectAttributes = this.connectAttributes; const attrNames = Object.keys(connectAttributes); let keysLength = 0; for (let k = 0; k < attrNames.length; ++k) { keysLength += Packet.lengthCodedStringLength(attrNames[k], encoding); keysLength += Packet.lengthCodedStringLength( connectAttributes[attrNames[k]], encoding ); } packet.writeLengthCodedNumber(keysLength); for (let k = 0; k < attrNames.length; ++k) { packet.writeLengthCodedString(attrNames[k], encoding); packet.writeLengthCodedString( connectAttributes[attrNames[k]], encoding ); } } return packet; } toPacket() { if (typeof this.user !== "string") { throw new Error('"user" connection config property must be a string'); } if (typeof this.database !== "string") { throw new Error('"database" connection config property must be a string'); } const p = this.serializeToBuffer(Packet.MockBuffer()); return this.serializeToBuffer(Buffer.allocUnsafe(p.offset)); } }; module2.exports = ChangeUser; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/close_statement.js var require_close_statement = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/close_statement.js"(exports, module2) { "use strict"; var Packet = require_packet(); var CommandCodes = require_commands(); var CloseStatement = class { constructor(id) { this.id = id; } toPacket() { const packet = new Packet(0, Buffer.allocUnsafe(9), 0, 9); packet.offset = 4; packet.writeInt8(CommandCodes.STMT_CLOSE); packet.writeInt32(this.id); return packet; } }; module2.exports = CloseStatement; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/column_definition.js var require_column_definition = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/column_definition.js"(exports, module2) { "use strict"; var Packet = require_packet(); var StringParser = require_string2(); var CharsetToEncoding = require_charset_encodings(); var fields = ["catalog", "schema", "table", "orgTable", "name", "orgName"]; var ColumnDefinition = class { constructor(packet, clientEncoding) { this._buf = packet.buffer; this._clientEncoding = clientEncoding; this._catalogLength = packet.readLengthCodedNumber(); this._catalogStart = packet.offset; packet.offset += this._catalogLength; this._schemaLength = packet.readLengthCodedNumber(); this._schemaStart = packet.offset; packet.offset += this._schemaLength; this._tableLength = packet.readLengthCodedNumber(); this._tableStart = packet.offset; packet.offset += this._tableLength; this._orgTableLength = packet.readLengthCodedNumber(); this._orgTableStart = packet.offset; packet.offset += this._orgTableLength; const _nameLength = packet.readLengthCodedNumber(); const _nameStart = packet.offset; packet.offset += _nameLength; this._orgNameLength = packet.readLengthCodedNumber(); this._orgNameStart = packet.offset; packet.offset += this._orgNameLength; packet.skip(1); this.characterSet = packet.readInt16(); this.encoding = CharsetToEncoding[this.characterSet]; this.name = StringParser.decode( this._buf, this.encoding === "binary" ? this._clientEncoding : this.encoding, _nameStart, _nameStart + _nameLength ); this.columnLength = packet.readInt32(); this.columnType = packet.readInt8(); this.flags = packet.readInt16(); this.decimals = packet.readInt8(); } inspect() { return { catalog: this.catalog, schema: this.schema, name: this.name, orgName: this.orgName, table: this.table, orgTable: this.orgTable, characterSet: this.characterSet, columnLength: this.columnLength, columnType: this.columnType, flags: this.flags, decimals: this.decimals }; } static toPacket(column, sequenceId) { let length = 17; fields.forEach((field) => { length += Packet.lengthCodedStringLength( column[field], CharsetToEncoding[column.characterSet] ); }); const buffer = Buffer.allocUnsafe(length); const packet = new Packet(sequenceId, buffer, 0, length); function writeField(name) { packet.writeLengthCodedString( column[name], CharsetToEncoding[column.characterSet] ); } packet.offset = 4; fields.forEach(writeField); packet.writeInt8(12); packet.writeInt16(column.characterSet); packet.writeInt32(column.columnLength); packet.writeInt8(column.columnType); packet.writeInt16(column.flags); packet.writeInt8(column.decimals); packet.writeInt16(0); return packet; } get db() { return this.schema; } }; var addString = function(name) { Object.defineProperty(ColumnDefinition.prototype, name, { get: function() { const start = this[`_${name}Start`]; const end = start + this[`_${name}Length`]; const val = StringParser.decode( this._buf, this.encoding === "binary" ? this._clientEncoding : this.encoding, start, end ); Object.defineProperty(this, name, { value: val, writable: false, configurable: false, enumerable: false }); return val; } }); }; addString("catalog"); addString("schema"); addString("table"); addString("orgTable"); addString("orgName"); module2.exports = ColumnDefinition; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/cursor.js var require_cursor = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/cursor.js"(exports, module2) { "use strict"; module2.exports = { NO_CURSOR: 0, READ_ONLY: 1, FOR_UPDATE: 2, SCROLLABLE: 3 }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/execute.js var require_execute = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/execute.js"(exports, module2) { "use strict"; var CursorType = require_cursor(); var CommandCodes = require_commands(); var Types = require_types(); var Packet = require_packet(); var CharsetToEncoding = require_charset_encodings(); function isJSON(value) { return Array.isArray(value) || value.constructor === Object || typeof value.toJSON === "function" && !Buffer.isBuffer(value); } function toParameter(value, encoding, timezone) { let type = Types.VAR_STRING; let length; let writer = function(value2) { return Packet.prototype.writeLengthCodedString.call(this, value2, encoding); }; if (value !== null) { switch (typeof value) { case "undefined": throw new TypeError("Bind parameters must not contain undefined"); case "number": type = Types.DOUBLE; length = 8; writer = Packet.prototype.writeDouble; break; case "boolean": value = value | 0; type = Types.TINY; length = 1; writer = Packet.prototype.writeInt8; break; case "object": if (Object.prototype.toString.call(value) === "[object Date]") { type = Types.DATETIME; length = 12; writer = function(value2) { return Packet.prototype.writeDate.call(this, value2, timezone); }; } else if (isJSON(value)) { value = JSON.stringify(value); type = Types.JSON; } else if (Buffer.isBuffer(value)) { length = Packet.lengthCodedNumberLength(value.length) + value.length; writer = Packet.prototype.writeLengthCodedBuffer; } break; default: value = value.toString(); } } else { value = ""; type = Types.NULL; } if (!length) { length = Packet.lengthCodedStringLength(value, encoding); } return { value, type, length, writer }; } var Execute = class { constructor(id, parameters, charsetNumber, timezone) { this.id = id; this.parameters = parameters; this.encoding = CharsetToEncoding[charsetNumber]; this.timezone = timezone; } toPacket() { let length = 14; let parameters; if (this.parameters && this.parameters.length > 0) { length += Math.floor((this.parameters.length + 7) / 8); length += 1; length += 2 * this.parameters.length; parameters = this.parameters.map( (value) => toParameter(value, this.encoding, this.timezone) ); length += parameters.reduce( (accumulator, parameter) => accumulator + parameter.length, 0 ); } const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.STMT_EXECUTE); packet.writeInt32(this.id); packet.writeInt8(CursorType.NO_CURSOR); packet.writeInt32(1); if (parameters) { let bitmap = 0; let bitValue = 1; parameters.forEach((parameter) => { if (parameter.type === Types.NULL) { bitmap += bitValue; } bitValue *= 2; if (bitValue === 256) { packet.writeInt8(bitmap); bitmap = 0; bitValue = 1; } }); if (bitValue !== 1) { packet.writeInt8(bitmap); } packet.writeInt8(1); parameters.forEach((parameter) => { packet.writeInt8(parameter.type); packet.writeInt8(0); }); parameters.forEach((parameter) => { if (parameter.type !== Types.NULL) { parameter.writer.call(packet, parameter.value); } }); } return packet; } }; module2.exports = Execute; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/handshake.js var require_handshake = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/handshake.js"(exports, module2) { "use strict"; var Packet = require_packet(); var ClientConstants = require_client(); var Handshake = class { constructor(args) { this.protocolVersion = args.protocolVersion; this.serverVersion = args.serverVersion; this.capabilityFlags = args.capabilityFlags; this.connectionId = args.connectionId; this.authPluginData1 = args.authPluginData1; this.authPluginData2 = args.authPluginData2; this.characterSet = args.characterSet; this.statusFlags = args.statusFlags; this.autPluginName = args.autPluginName; } setScrambleData(cb) { require("crypto").randomBytes(20, (err, data) => { if (err) { cb(err); return; } this.authPluginData1 = data.slice(0, 8); this.authPluginData2 = data.slice(8, 20); cb(); }); } toPacket(sequenceId) { const length = 68 + Buffer.byteLength(this.serverVersion, "utf8"); const buffer = Buffer.alloc(length + 4, 0); const packet = new Packet(sequenceId, buffer, 0, length + 4); packet.offset = 4; packet.writeInt8(this.protocolVersion); packet.writeString(this.serverVersion, "cesu8"); packet.writeInt8(0); packet.writeInt32(this.connectionId); packet.writeBuffer(this.authPluginData1); packet.writeInt8(0); const capabilityFlagsBuffer = Buffer.allocUnsafe(4); capabilityFlagsBuffer.writeUInt32LE(this.capabilityFlags, 0); packet.writeBuffer(capabilityFlagsBuffer.slice(0, 2)); packet.writeInt8(this.characterSet); packet.writeInt16(this.statusFlags); packet.writeBuffer(capabilityFlagsBuffer.slice(2, 4)); packet.writeInt8(21); packet.skip(10); packet.writeBuffer(this.authPluginData2); packet.writeInt8(0); packet.writeString("mysql_native_password", "latin1"); packet.writeInt8(0); return packet; } static fromPacket(packet) { const args = {}; args.protocolVersion = packet.readInt8(); args.serverVersion = packet.readNullTerminatedString("cesu8"); args.connectionId = packet.readInt32(); args.authPluginData1 = packet.readBuffer(8); packet.skip(1); const capabilityFlagsBuffer = Buffer.allocUnsafe(4); capabilityFlagsBuffer[0] = packet.readInt8(); capabilityFlagsBuffer[1] = packet.readInt8(); if (packet.haveMoreData()) { args.characterSet = packet.readInt8(); args.statusFlags = packet.readInt16(); capabilityFlagsBuffer[2] = packet.readInt8(); capabilityFlagsBuffer[3] = packet.readInt8(); args.capabilityFlags = capabilityFlagsBuffer.readUInt32LE(0); if (args.capabilityFlags & ClientConstants.PLUGIN_AUTH) { args.authPluginDataLength = packet.readInt8(); } else { args.authPluginDataLength = 0; packet.skip(1); } packet.skip(10); } else { args.capabilityFlags = capabilityFlagsBuffer.readUInt16LE(0); } const isSecureConnection = args.capabilityFlags & ClientConstants.SECURE_CONNECTION; if (isSecureConnection) { const authPluginDataLength = args.authPluginDataLength; if (authPluginDataLength === 0) { args.authPluginDataLength = 20; args.authPluginData2 = packet.readBuffer(12); packet.skip(1); } else { const len = Math.max(13, authPluginDataLength - 8); args.authPluginData2 = packet.readBuffer(len); } } if (args.capabilityFlags & ClientConstants.PLUGIN_AUTH) { args.autPluginName = packet.readNullTerminatedString("ascii"); } return new Handshake(args); } }; module2.exports = Handshake; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/handshake_response.js var require_handshake_response = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/handshake_response.js"(exports, module2) { "use strict"; var ClientConstants = require_client(); var CharsetToEncoding = require_charset_encodings(); var Packet = require_packet(); var auth41 = require_auth_41(); var HandshakeResponse = class { constructor(handshake) { this.user = handshake.user || ""; this.database = handshake.database || ""; this.password = handshake.password || ""; this.passwordSha1 = handshake.passwordSha1; this.authPluginData1 = handshake.authPluginData1; this.authPluginData2 = handshake.authPluginData2; this.compress = handshake.compress; this.clientFlags = handshake.flags; let authToken; if (this.passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( this.passwordSha1, this.authPluginData1, this.authPluginData2 ); } else { authToken = auth41.calculateToken( this.password, this.authPluginData1, this.authPluginData2 ); } this.authToken = authToken; this.charsetNumber = handshake.charsetNumber; this.encoding = CharsetToEncoding[handshake.charsetNumber]; this.connectAttributes = handshake.connectAttributes; } serializeResponse(buffer) { const isSet = (flag) => this.clientFlags & ClientConstants[flag]; const packet = new Packet(0, buffer, 0, buffer.length); packet.offset = 4; packet.writeInt32(this.clientFlags); packet.writeInt32(0); packet.writeInt8(this.charsetNumber); packet.skip(23); const encoding = this.encoding; packet.writeNullTerminatedString(this.user, encoding); let k; if (isSet("PLUGIN_AUTH_LENENC_CLIENT_DATA")) { packet.writeLengthCodedNumber(this.authToken.length); packet.writeBuffer(this.authToken); } else if (isSet("SECURE_CONNECTION")) { packet.writeInt8(this.authToken.length); packet.writeBuffer(this.authToken); } else { packet.writeBuffer(this.authToken); packet.writeInt8(0); } if (isSet("CONNECT_WITH_DB")) { packet.writeNullTerminatedString(this.database, encoding); } if (isSet("PLUGIN_AUTH")) { packet.writeNullTerminatedString("mysql_native_password", "latin1"); } if (isSet("CONNECT_ATTRS")) { const connectAttributes = this.connectAttributes || {}; const attrNames = Object.keys(connectAttributes); let keysLength = 0; for (k = 0; k < attrNames.length; ++k) { keysLength += Packet.lengthCodedStringLength(attrNames[k], encoding); keysLength += Packet.lengthCodedStringLength( connectAttributes[attrNames[k]], encoding ); } packet.writeLengthCodedNumber(keysLength); for (k = 0; k < attrNames.length; ++k) { packet.writeLengthCodedString(attrNames[k], encoding); packet.writeLengthCodedString( connectAttributes[attrNames[k]], encoding ); } } return packet; } toPacket() { if (typeof this.user !== "string") { throw new Error('"user" connection config property must be a string'); } if (typeof this.database !== "string") { throw new Error('"database" connection config property must be a string'); } const p = this.serializeResponse(Packet.MockBuffer()); return this.serializeResponse(Buffer.alloc(p.offset)); } static fromPacket(packet) { const args = {}; args.clientFlags = packet.readInt32(); function isSet(flag) { return args.clientFlags & ClientConstants[flag]; } args.maxPacketSize = packet.readInt32(); args.charsetNumber = packet.readInt8(); const encoding = CharsetToEncoding[args.charsetNumber]; args.encoding = encoding; packet.skip(23); args.user = packet.readNullTerminatedString(encoding); let authTokenLength; if (isSet("PLUGIN_AUTH_LENENC_CLIENT_DATA")) { authTokenLength = packet.readLengthCodedNumber(encoding); args.authToken = packet.readBuffer(authTokenLength); } else if (isSet("SECURE_CONNECTION")) { authTokenLength = packet.readInt8(); args.authToken = packet.readBuffer(authTokenLength); } else { args.authToken = packet.readNullTerminatedString(encoding); } if (isSet("CONNECT_WITH_DB")) { args.database = packet.readNullTerminatedString(encoding); } if (isSet("PLUGIN_AUTH")) { args.authPluginName = packet.readNullTerminatedString(encoding); } if (isSet("CONNECT_ATTRS")) { const keysLength = packet.readLengthCodedNumber(encoding); const keysEnd = packet.offset + keysLength; const attrs = {}; while (packet.offset < keysEnd) { attrs[packet.readLengthCodedString(encoding)] = packet.readLengthCodedString(encoding); } args.connectAttributes = attrs; } return args; } }; module2.exports = HandshakeResponse; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/prepare_statement.js var require_prepare_statement = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/prepare_statement.js"(exports, module2) { "use strict"; var Packet = require_packet(); var CommandCodes = require_commands(); var StringParser = require_string2(); var CharsetToEncoding = require_charset_encodings(); var PrepareStatement = class { constructor(sql, charsetNumber) { this.query = sql; this.charsetNumber = charsetNumber; this.encoding = CharsetToEncoding[charsetNumber]; } toPacket() { const buf = StringParser.encode(this.query, this.encoding); const length = 5 + buf.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.STMT_PREPARE); packet.writeBuffer(buf); return packet; } }; module2.exports = PrepareStatement; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/prepared_statement_header.js var require_prepared_statement_header = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/prepared_statement_header.js"(exports, module2) { "use strict"; var PreparedStatementHeader = class { constructor(packet) { packet.skip(1); this.id = packet.readInt32(); this.fieldCount = packet.readInt16(); this.parameterCount = packet.readInt16(); packet.skip(1); this.warningCount = packet.readInt16(); } }; module2.exports = PreparedStatementHeader; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/query.js var require_query = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/query.js"(exports, module2) { "use strict"; var Packet = require_packet(); var CommandCode = require_commands(); var StringParser = require_string2(); var CharsetToEncoding = require_charset_encodings(); var Query = class { constructor(sql, charsetNumber) { this.query = sql; this.charsetNumber = charsetNumber; this.encoding = CharsetToEncoding[charsetNumber]; } toPacket() { const buf = StringParser.encode(this.query, this.encoding); const length = 5 + buf.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCode.QUERY); packet.writeBuffer(buf); return packet; } }; module2.exports = Query; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/register_slave.js var require_register_slave = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/register_slave.js"(exports, module2) { "use strict"; var Packet = require_packet(); var CommandCodes = require_commands(); var RegisterSlave = class { constructor(opts) { this.serverId = opts.serverId || 0; this.slaveHostname = opts.slaveHostname || ""; this.slaveUser = opts.slaveUser || ""; this.slavePassword = opts.slavePassword || ""; this.slavePort = opts.slavePort || 0; this.replicationRank = opts.replicationRank || 0; this.masterId = opts.masterId || 0; } toPacket() { const length = 15 + Buffer.byteLength(this.slaveHostname, "utf8") + Buffer.byteLength(this.slaveUser, "utf8") + Buffer.byteLength(this.slavePassword, "utf8") + 3 + 4; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.REGISTER_SLAVE); packet.writeInt32(this.serverId); packet.writeInt8(Buffer.byteLength(this.slaveHostname, "utf8")); packet.writeString(this.slaveHostname); packet.writeInt8(Buffer.byteLength(this.slaveUser, "utf8")); packet.writeString(this.slaveUser); packet.writeInt8(Buffer.byteLength(this.slavePassword, "utf8")); packet.writeString(this.slavePassword); packet.writeInt16(this.slavePort); packet.writeInt32(this.replicationRank); packet.writeInt32(this.masterId); return packet; } }; module2.exports = RegisterSlave; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/server_status.js var require_server_status = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/server_status.js"(exports) { "use strict"; exports.SERVER_STATUS_IN_TRANS = 1; exports.SERVER_STATUS_AUTOCOMMIT = 2; exports.SERVER_MORE_RESULTS_EXISTS = 8; exports.SERVER_QUERY_NO_GOOD_INDEX_USED = 16; exports.SERVER_QUERY_NO_INDEX_USED = 32; exports.SERVER_STATUS_CURSOR_EXISTS = 64; exports.SERVER_STATUS_LAST_ROW_SENT = 128; exports.SERVER_STATUS_DB_DROPPED = 256; exports.SERVER_STATUS_NO_BACKSLASH_ESCAPES = 512; exports.SERVER_STATUS_METADATA_CHANGED = 1024; exports.SERVER_QUERY_WAS_SLOW = 2048; exports.SERVER_PS_OUT_PARAMS = 4096; exports.SERVER_STATUS_IN_TRANS_READONLY = 8192; exports.SERVER_SESSION_STATE_CHANGED = 16384; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/encoding_charset.js var require_encoding_charset = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/encoding_charset.js"(exports, module2) { "use strict"; module2.exports = { big5: 1, latin2: 2, dec8: 3, cp850: 4, latin1: 5, hp8: 6, koi8r: 7, swe7: 10, ascii: 11, eucjp: 12, sjis: 13, cp1251: 14, hebrew: 16, tis620: 18, euckr: 19, latin7: 20, koi8u: 22, gb2312: 24, greek: 25, cp1250: 26, gbk: 28, cp1257: 29, latin5: 30, armscii8: 32, cesu8: 33, ucs2: 35, cp866: 36, keybcs2: 37, macintosh: 38, macroman: 39, cp852: 40, utf8: 45, utf8mb4: 45, utf16: 54, utf16le: 56, cp1256: 57, utf32: 60, binary: 63, geostd8: 92, cp932: 95, eucjpms: 97, gb18030: 248 }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/session_track.js var require_session_track = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/session_track.js"(exports) { "use strict"; exports.SYSTEM_VARIABLES = 0; exports.SCHEMA = 1; exports.STATE_CHANGE = 2; exports.STATE_GTIDS = 3; exports.TRANSACTION_CHARACTERISTICS = 4; exports.TRANSACTION_STATE = 5; exports.FIRST_KEY = exports.SYSTEM_VARIABLES; exports.LAST_KEY = exports.TRANSACTION_STATE; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/resultset_header.js var require_resultset_header = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/resultset_header.js"(exports, module2) { "use strict"; var Packet = require_packet(); var ClientConstants = require_client(); var ServerSatusFlags = require_server_status(); var EncodingToCharset = require_encoding_charset(); var sessionInfoTypes = require_session_track(); var ResultSetHeader = class { constructor(packet, connection) { const bigNumberStrings = connection.config.bigNumberStrings; const encoding = connection.serverEncoding; const flags = connection._handshakePacket.capabilityFlags; const isSet = function(flag) { return flags & ClientConstants[flag]; }; if (packet.buffer[packet.offset] !== 0) { this.fieldCount = packet.readLengthCodedNumber(); if (this.fieldCount === null) { this.infileName = packet.readString(void 0, encoding); } return; } this.fieldCount = packet.readInt8(); this.affectedRows = packet.readLengthCodedNumber(bigNumberStrings); this.insertId = packet.readLengthCodedNumberSigned(bigNumberStrings); this.info = ""; if (isSet("PROTOCOL_41")) { this.serverStatus = packet.readInt16(); this.warningStatus = packet.readInt16(); } else if (isSet("TRANSACTIONS")) { this.serverStatus = packet.readInt16(); } let stateChanges = null; if (isSet("SESSION_TRACK") && packet.offset < packet.end) { this.info = packet.readLengthCodedString(encoding); if (this.serverStatus && ServerSatusFlags.SERVER_SESSION_STATE_CHANGED) { let len = packet.offset < packet.end ? packet.readLengthCodedNumber() : 0; const end = packet.offset + len; let type, key, stateEnd; if (len > 0) { stateChanges = { systemVariables: {}, schema: null, trackStateChange: null }; } while (packet.offset < end) { type = packet.readInt8(); len = packet.readLengthCodedNumber(); stateEnd = packet.offset + len; if (type === sessionInfoTypes.SYSTEM_VARIABLES) { key = packet.readLengthCodedString(encoding); const val = packet.readLengthCodedString(encoding); stateChanges.systemVariables[key] = val; if (key === "character_set_client") { const charsetNumber = EncodingToCharset[val]; connection.config.charsetNumber = charsetNumber; } } else if (type === sessionInfoTypes.SCHEMA) { key = packet.readLengthCodedString(encoding); stateChanges.schema = key; } else if (type === sessionInfoTypes.STATE_CHANGE) { stateChanges.trackStateChange = packet.readLengthCodedString( encoding ); } else { } packet.offset = stateEnd; } } } else { this.info = packet.readString(void 0, encoding); } if (stateChanges) { this.stateChanges = stateChanges; } const m2 = this.info.match(/\schanged:\s*(\d+)/i); if (m2 !== null) { this.changedRows = parseInt(m2[1], 10); } } static toPacket(fieldCount, insertId) { let length = 4 + Packet.lengthCodedNumberLength(fieldCount); if (typeof insertId !== "undefined") { length += Packet.lengthCodedNumberLength(insertId); } const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeLengthCodedNumber(fieldCount); if (typeof insertId !== "undefined") { packet.writeLengthCodedNumber(insertId); } return packet; } }; module2.exports = ResultSetHeader; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/ssl_request.js var require_ssl_request = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/ssl_request.js"(exports, module2) { "use strict"; var ClientConstants = require_client(); var Packet = require_packet(); var SSLRequest = class { constructor(flags, charset) { this.clientFlags = flags | ClientConstants.SSL; this.charset = charset; } toPacket() { const length = 36; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); buffer.fill(0); packet.offset = 4; packet.writeInt32(this.clientFlags); packet.writeInt32(0); packet.writeInt8(this.charset); return packet; } }; module2.exports = SSLRequest; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/text_row.js var require_text_row = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/text_row.js"(exports, module2) { "use strict"; var Packet = require_packet(); var TextRow = class { constructor(columns) { this.columns = columns || []; } static fromPacket(packet) { const columns = []; while (packet.haveMoreData()) { columns.push(packet.readLengthCodedString()); } return new TextRow(columns); } static toPacket(columns, encoding) { const sequenceId = 0; let length = 0; columns.forEach((val) => { if (val === null || typeof val === "undefined") { ++length; return; } length += Packet.lengthCodedStringLength(val.toString(10), encoding); }); const buffer = Buffer.allocUnsafe(length + 4); const packet = new Packet(sequenceId, buffer, 0, length + 4); packet.offset = 4; columns.forEach((val) => { if (val === null) { packet.writeNull(); return; } if (typeof val === "undefined") { packet.writeInt8(0); return; } packet.writeLengthCodedString(val.toString(10), encoding); }); return packet; } }; module2.exports = TextRow; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/index.js var require_packets = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/index.js"(exports, module2) { "use strict"; var process2 = require("process"); var AuthSwitchRequest = require_auth_switch_request(); var AuthSwitchRequestMoreData = require_auth_switch_request_more_data(); var AuthSwitchResponse = require_auth_switch_response(); var BinaryRow = require_binary_row(); var BinlogDump = require_binlog_dump(); var ChangeUser = require_change_user(); var CloseStatement = require_close_statement(); var ColumnDefinition = require_column_definition(); var Execute = require_execute(); var Handshake = require_handshake(); var HandshakeResponse = require_handshake_response(); var PrepareStatement = require_prepare_statement(); var PreparedStatementHeader = require_prepared_statement_header(); var Query = require_query(); var RegisterSlave = require_register_slave(); var ResultSetHeader = require_resultset_header(); var SSLRequest = require_ssl_request(); var TextRow = require_text_row(); var ctorMap = { AuthSwitchRequest, AuthSwitchRequestMoreData, AuthSwitchResponse, BinaryRow, BinlogDump, ChangeUser, CloseStatement, ColumnDefinition, Execute, Handshake, HandshakeResponse, PrepareStatement, PreparedStatementHeader, Query, RegisterSlave, ResultSetHeader, SSLRequest, TextRow }; Object.entries(ctorMap).forEach(([name, ctor]) => { module2.exports[name] = ctor; if (process2.env.NODE_DEBUG) { if (ctor.prototype.toPacket) { const old = ctor.prototype.toPacket; ctor.prototype.toPacket = function() { const p = old.call(this); p._name = name; return p; }; } } }); var Packet = require_packet(); exports.Packet = Packet; var OK = class { static toPacket(args, encoding) { args = args || {}; const affectedRows = args.affectedRows || 0; const insertId = args.insertId || 0; const serverStatus = args.serverStatus || 0; const warningCount = args.warningCount || 0; const message = args.message || ""; let length = 9 + Packet.lengthCodedNumberLength(affectedRows); length += Packet.lengthCodedNumberLength(insertId); const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(0); packet.writeLengthCodedNumber(affectedRows); packet.writeLengthCodedNumber(insertId); packet.writeInt16(serverStatus); packet.writeInt16(warningCount); packet.writeString(message, encoding); packet._name = "OK"; return packet; } }; exports.OK = OK; var EOF = class { static toPacket(warnings, statusFlags) { if (typeof warnings === "undefined") { warnings = 0; } if (typeof statusFlags === "undefined") { statusFlags = 0; } const packet = new Packet(0, Buffer.allocUnsafe(9), 0, 9); packet.offset = 4; packet.writeInt8(254); packet.writeInt16(warnings); packet.writeInt16(statusFlags); packet._name = "EOF"; return packet; } }; exports.EOF = EOF; var Error2 = class { static toPacket(args, encoding) { const length = 13 + Buffer.byteLength(args.message, "utf8"); const packet = new Packet(0, Buffer.allocUnsafe(length), 0, length); packet.offset = 4; packet.writeInt8(255); packet.writeInt16(args.code); packet.writeString("#_____", encoding); packet.writeString(args.message, encoding); packet._name = "Error"; return packet; } static fromPacket(packet) { packet.readInt8(); const code = packet.readInt16(); packet.readString(1, "ascii"); packet.readString(5, "ascii"); const message = packet.readNullTerminatedString("utf8"); const error = new Error2(); error.message = message; error.code = code; return error; } }; exports.Error = Error2; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/command.js var require_command = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/command.js"(exports, module2) { "use strict"; var EventEmitter = require("events").EventEmitter; var Timers = require("timers"); var Command = class extends EventEmitter { constructor() { super(); this.next = null; } stateName() { const state = this.next; for (const i2 in this) { if (this[i2] === state && i2 !== "next") { return i2; } } return "unknown name"; } execute(packet, connection) { if (!this.next) { this.next = this.start; connection._resetSequenceId(); } if (packet && packet.isError()) { const err = packet.asError(connection.clientEncoding); err.sql = this.sql || this.query; if (this.queryTimeout) { Timers.clearTimeout(this.queryTimeout); this.queryTimeout = null; } if (this.onResult) { this.onResult(err); this.emit("end"); } else { this.emit("error", err); this.emit("end"); } return true; } this.next = this.next(packet, connection); if (this.next) { return false; } this.emit("end"); return true; } }; module2.exports = Command; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_plugins/sha256_password.js var require_sha256_password = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_plugins/sha256_password.js"(exports, module2) { "use strict"; var PLUGIN_NAME = "sha256_password"; var crypto = require("crypto"); var { xor } = require_auth_41(); var REQUEST_SERVER_KEY_PACKET = Buffer.from([1]); var STATE_INITIAL = 0; var STATE_WAIT_SERVER_KEY = 1; var STATE_FINAL = -1; function encrypt(password, scramble, key) { const stage1 = xor( Buffer.from(`${password}\0`, "utf8").toString("binary"), scramble.toString("binary") ); return crypto.publicEncrypt(key, stage1); } module2.exports = (pluginOptions = {}) => ({ connection }) => { let state = 0; let scramble = null; const password = connection.config.password; const authWithKey = (serverKey) => { const _password = encrypt(password, scramble, serverKey); state = STATE_FINAL; return _password; }; return (data) => { switch (state) { case STATE_INITIAL: scramble = data.slice(0, 20); if (pluginOptions.serverPublicKey) { return authWithKey(pluginOptions.serverPublicKey); } state = STATE_WAIT_SERVER_KEY; return REQUEST_SERVER_KEY_PACKET; case STATE_WAIT_SERVER_KEY: if (pluginOptions.onServerPublicKey) { pluginOptions.onServerPublicKey(data); } return authWithKey(data); case STATE_FINAL: throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in STATE_FINAL state.` ); } throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in state ${state}` ); }; }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.js var require_caching_sha2_password = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.js"(exports, module2) { "use strict"; var PLUGIN_NAME = "caching_sha2_password"; var crypto = require("crypto"); var { xor, xorRotating } = require_auth_41(); var REQUEST_SERVER_KEY_PACKET = Buffer.from([2]); var FAST_AUTH_SUCCESS_PACKET = Buffer.from([3]); var PERFORM_FULL_AUTHENTICATION_PACKET = Buffer.from([4]); var STATE_INITIAL = 0; var STATE_TOKEN_SENT = 1; var STATE_WAIT_SERVER_KEY = 2; var STATE_FINAL = -1; function sha256(msg) { const hash = crypto.createHash("sha256"); hash.update(msg, "binary"); return hash.digest("binary"); } function calculateToken(password, scramble) { if (!password) { return Buffer.alloc(0); } const stage1 = sha256(Buffer.from(password, "utf8").toString("binary")); const stage2 = sha256(stage1); const stage3 = sha256(stage2 + scramble.toString("binary")); return xor(stage1, stage3); } function encrypt(password, scramble, key) { const stage1 = xorRotating( Buffer.from(`${password}\0`, "utf8").toString("binary"), scramble.toString("binary") ); return crypto.publicEncrypt(key, stage1); } module2.exports = (pluginOptions = {}) => ({ connection }) => { let state = 0; let scramble = null; const password = connection.config.password; const authWithKey = (serverKey) => { const _password = encrypt(password, scramble, serverKey); state = STATE_FINAL; return _password; }; return (data) => { switch (state) { case STATE_INITIAL: scramble = data.slice(0, 20); state = STATE_TOKEN_SENT; return calculateToken(password, scramble); case STATE_TOKEN_SENT: if (FAST_AUTH_SUCCESS_PACKET.equals(data)) { state = STATE_FINAL; return null; } if (PERFORM_FULL_AUTHENTICATION_PACKET.equals(data)) { const isSecureConnection = typeof pluginOptions.overrideIsSecure === "undefined" ? connection.config.ssl || connection.config.socketPath : pluginOptions.overrideIsSecure; if (isSecureConnection) { state = STATE_FINAL; return Buffer.from(`${password}\0`, "utf8"); } if (pluginOptions.serverPublicKey) { return authWithKey(pluginOptions.serverPublicKey); } state = STATE_WAIT_SERVER_KEY; return REQUEST_SERVER_KEY_PACKET; } throw new Error( `Invalid AuthMoreData packet received by ${PLUGIN_NAME} plugin in STATE_TOKEN_SENT state.` ); case STATE_WAIT_SERVER_KEY: if (pluginOptions.onServerPublicKey) { pluginOptions.onServerPublicKey(data); } return authWithKey(data); case STATE_FINAL: throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in STATE_FINAL state.` ); } throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in state ${state}` ); }; }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_plugins/mysql_native_password.js var require_mysql_native_password = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/auth_plugins/mysql_native_password.js"(exports, module2) { "use strict"; var auth41 = require_auth_41(); module2.exports = (pluginOptions) => ({ connection, command }) => { const password = command.password || pluginOptions.password || connection.config.password; const passwordSha1 = command.passwordSha1 || pluginOptions.passwordSha1 || connection.config.passwordSha1; return (data) => { const authPluginData1 = data.slice(0, 8); const authPluginData2 = data.slice(8, 20); let authToken; if (passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( passwordSha1, authPluginData1, authPluginData2 ); } else { authToken = auth41.calculateToken( password, authPluginData1, authPluginData2 ); } return authToken; }; }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/auth_switch.js var require_auth_switch = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/auth_switch.js"(exports, module2) { "use strict"; var Packets = require_packets(); var sha256_password = require_sha256_password(); var caching_sha2_password = require_caching_sha2_password(); var mysql_native_password = require_mysql_native_password(); var standardAuthPlugins = { sha256_password: sha256_password({}), caching_sha2_password: caching_sha2_password({}), mysql_native_password: mysql_native_password({}) }; function warnLegacyAuthSwitch() { console.warn( "WARNING! authSwitchHandler api is deprecated, please use new authPlugins api" ); } function authSwitchPluginError(error, command) { error.code = "AUTH_SWITCH_PLUGIN_ERROR"; error.fatal = true; command.emit("error", error); } function authSwitchRequest(packet, connection, command) { const { pluginName, pluginData } = Packets.AuthSwitchRequest.fromPacket( packet ); let authPlugin = connection.config.authPlugins && connection.config.authPlugins[pluginName]; if (connection.config.authSwitchHandler && pluginName !== "mysql_native_password") { const legacySwitchHandler = connection.config.authSwitchHandler; warnLegacyAuthSwitch(); legacySwitchHandler({ pluginName, pluginData }, (err, data) => { if (err) { return authSwitchPluginError(err, command); } connection.writePacket(new Packets.AuthSwitchResponse(data).toPacket()); }); return; } if (!authPlugin) { authPlugin = standardAuthPlugins[pluginName]; } if (!authPlugin) { throw new Error( `Server requests authentication using unknown plugin ${pluginName}. See ${"TODO: add plugins doco here"} on how to configure or author authentication plugins.` ); } connection._authPlugin = authPlugin({ connection, command }); Promise.resolve(connection._authPlugin(pluginData)).then((data) => { if (data) { connection.writePacket(new Packets.AuthSwitchResponse(data).toPacket()); } }).catch((err) => { authSwitchPluginError(err, command); }); } function authSwitchRequestMoreData(packet, connection, command) { const { data } = Packets.AuthSwitchRequestMoreData.fromPacket(packet); if (connection.config.authSwitchHandler) { const legacySwitchHandler = connection.config.authSwitchHandler; warnLegacyAuthSwitch(); legacySwitchHandler({ pluginData: data }, (err, data2) => { if (err) { return authSwitchPluginError(err, command); } connection.writePacket(new Packets.AuthSwitchResponse(data2).toPacket()); }); return; } if (!connection._authPlugin) { throw new Error( "AuthPluginMoreData received but no auth plugin instance found" ); } Promise.resolve(connection._authPlugin(data)).then((data2) => { if (data2) { connection.writePacket(new Packets.AuthSwitchResponse(data2).toPacket()); } }).catch((err) => { authSwitchPluginError(err, command); }); } module2.exports = { authSwitchRequest, authSwitchRequestMoreData }; } }); // ../../node_modules/.pnpm/seq-queue@0.0.5/node_modules/seq-queue/lib/seq-queue.js var require_seq_queue = __commonJS({ "../../node_modules/.pnpm/seq-queue@0.0.5/node_modules/seq-queue/lib/seq-queue.js"(exports, module2) { var EventEmitter = require("events").EventEmitter; var util = require("util"); var DEFAULT_TIMEOUT = 3e3; var INIT_ID = 0; var EVENT_CLOSED = "closed"; var EVENT_DRAINED = "drained"; var SeqQueue = function(timeout) { EventEmitter.call(this); if (timeout && timeout > 0) { this.timeout = timeout; } else { this.timeout = DEFAULT_TIMEOUT; } this.status = SeqQueueManager.STATUS_IDLE; this.curId = INIT_ID; this.queue = []; }; util.inherits(SeqQueue, EventEmitter); SeqQueue.prototype.push = function(fn, ontimeout, timeout) { if (this.status !== SeqQueueManager.STATUS_IDLE && this.status !== SeqQueueManager.STATUS_BUSY) { return false; } if (typeof fn !== "function") { throw new Error("fn should be a function."); } this.queue.push({ fn, ontimeout, timeout }); if (this.status === SeqQueueManager.STATUS_IDLE) { this.status = SeqQueueManager.STATUS_BUSY; var self2 = this; process.nextTick(function() { self2._next(self2.curId); }); } return true; }; SeqQueue.prototype.close = function(force) { if (this.status !== SeqQueueManager.STATUS_IDLE && this.status !== SeqQueueManager.STATUS_BUSY) { return; } if (force) { this.status = SeqQueueManager.STATUS_DRAINED; if (this.timerId) { clearTimeout(this.timerId); this.timerId = void 0; } this.emit(EVENT_DRAINED); } else { this.status = SeqQueueManager.STATUS_CLOSED; this.emit(EVENT_CLOSED); } }; SeqQueue.prototype._next = function(tid) { if (tid !== this.curId || this.status !== SeqQueueManager.STATUS_BUSY && this.status !== SeqQueueManager.STATUS_CLOSED) { return; } if (this.timerId) { clearTimeout(this.timerId); this.timerId = void 0; } var task = this.queue.shift(); if (!task) { if (this.status === SeqQueueManager.STATUS_BUSY) { this.status = SeqQueueManager.STATUS_IDLE; this.curId++; } else { this.status = SeqQueueManager.STATUS_DRAINED; this.emit(EVENT_DRAINED); } return; } var self2 = this; task.id = ++this.curId; var timeout = task.timeout > 0 ? task.timeout : this.timeout; timeout = timeout > 0 ? timeout : DEFAULT_TIMEOUT; this.timerId = setTimeout(function() { process.nextTick(function() { self2._next(task.id); }); self2.emit("timeout", task); if (task.ontimeout) { task.ontimeout(); } }, timeout); try { task.fn({ done: function() { var res = task.id === self2.curId; process.nextTick(function() { self2._next(task.id); }); return res; } }); } catch (err) { self2.emit("error", err, task); process.nextTick(function() { self2._next(task.id); }); } }; var SeqQueueManager = module2.exports; SeqQueueManager.STATUS_IDLE = 0; SeqQueueManager.STATUS_BUSY = 1; SeqQueueManager.STATUS_CLOSED = 2; SeqQueueManager.STATUS_DRAINED = 3; SeqQueueManager.createQueue = function(timeout) { return new SeqQueue(timeout); }; } }); // ../../node_modules/.pnpm/seq-queue@0.0.5/node_modules/seq-queue/index.js var require_seq_queue2 = __commonJS({ "../../node_modules/.pnpm/seq-queue@0.0.5/node_modules/seq-queue/index.js"(exports, module2) { module2.exports = require_seq_queue(); } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/compressed_protocol.js var require_compressed_protocol = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/compressed_protocol.js"(exports, module2) { "use strict"; var zlib2 = require("zlib"); var PacketParser = require_packet_parser(); function handleCompressedPacket(packet) { const connection = this; const deflatedLength = packet.readInt24(); const body = packet.readBuffer(); if (deflatedLength !== 0) { connection.inflateQueue.push((task) => { zlib2.inflate(body, (err, data) => { if (err) { connection._handleNetworkError(err); return; } connection._bumpCompressedSequenceId(packet.numPackets); connection._inflatedPacketsParser.execute(data); task.done(); }); }); } else { connection.inflateQueue.push((task) => { connection._bumpCompressedSequenceId(packet.numPackets); connection._inflatedPacketsParser.execute(body); task.done(); }); } } function writeCompressed(buffer) { const MAX_COMPRESSED_LENGTH = 16777210; let start; if (buffer.length > MAX_COMPRESSED_LENGTH) { for (start = 0; start < buffer.length; start += MAX_COMPRESSED_LENGTH) { writeCompressed.call( this, buffer.slice(start, start + MAX_COMPRESSED_LENGTH) ); } return; } const connection = this; let packetLen = buffer.length; const compressHeader = Buffer.allocUnsafe(7); (function(seqId) { connection.deflateQueue.push((task) => { zlib2.deflate(buffer, (err, compressed) => { if (err) { connection._handleFatalError(err); return; } let compressedLength = compressed.length; if (compressedLength < packetLen) { compressHeader.writeUInt8(compressedLength & 255, 0); compressHeader.writeUInt16LE(compressedLength >> 8, 1); compressHeader.writeUInt8(seqId, 3); compressHeader.writeUInt8(packetLen & 255, 4); compressHeader.writeUInt16LE(packetLen >> 8, 5); connection.writeUncompressed(compressHeader); connection.writeUncompressed(compressed); } else { compressedLength = packetLen; packetLen = 0; compressHeader.writeUInt8(compressedLength & 255, 0); compressHeader.writeUInt16LE(compressedLength >> 8, 1); compressHeader.writeUInt8(seqId, 3); compressHeader.writeUInt8(packetLen & 255, 4); compressHeader.writeUInt16LE(packetLen >> 8, 5); connection.writeUncompressed(compressHeader); connection.writeUncompressed(buffer); } task.done(); }); }); })(connection.compressedSequenceId); connection._bumpCompressedSequenceId(1); } function enableCompression(connection) { connection._lastWrittenPacketId = 0; connection._lastReceivedPacketId = 0; connection._handleCompressedPacket = handleCompressedPacket; connection._inflatedPacketsParser = new PacketParser((p) => { connection.handlePacket(p); }, 4); connection._inflatedPacketsParser._lastPacket = 0; connection.packetParser = new PacketParser((packet) => { connection._handleCompressedPacket(packet); }, 7); connection.writeUncompressed = connection.write; connection.write = writeCompressed; const seqqueue = require_seq_queue2(); connection.inflateQueue = seqqueue.createQueue(); connection.deflateQueue = seqqueue.createQueue(); } module2.exports = { enableCompression }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/client_handshake.js var require_client_handshake = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/client_handshake.js"(exports, module2) { "use strict"; var Command = require_command(); var Packets = require_packets(); var ClientConstants = require_client(); var CharsetToEncoding = require_charset_encodings(); var auth41 = require_auth_41(); function flagNames(flags) { const res = []; for (const c2 in ClientConstants) { if (flags & ClientConstants[c2]) { res.push(c2.replace(/_/g, " ").toLowerCase()); } } return res; } var ClientHandshake = class extends Command { constructor(clientFlags) { super(); this.handshake = null; this.clientFlags = clientFlags; } start() { return ClientHandshake.prototype.handshakeInit; } sendSSLRequest(connection) { const sslRequest = new Packets.SSLRequest( this.clientFlags, connection.config.charsetNumber ); connection.writePacket(sslRequest.toPacket()); } sendCredentials(connection) { if (connection.config.debug) { console.log( "Sending handshake packet: flags:%d=(%s)", this.clientFlags, flagNames(this.clientFlags).join(", ") ); } this.user = connection.config.user; this.password = connection.config.password; this.passwordSha1 = connection.config.passwordSha1; this.database = connection.config.database; this.autPluginName = this.handshake.autPluginName; const handshakeResponse = new Packets.HandshakeResponse({ flags: this.clientFlags, user: this.user, database: this.database, password: this.password, passwordSha1: this.passwordSha1, charsetNumber: connection.config.charsetNumber, authPluginData1: this.handshake.authPluginData1, authPluginData2: this.handshake.authPluginData2, compress: connection.config.compress, connectAttributes: connection.config.connectAttributes }); connection.writePacket(handshakeResponse.toPacket()); } calculateNativePasswordAuthToken(authPluginData) { const authPluginData1 = authPluginData.slice(0, 8); const authPluginData2 = authPluginData.slice(8, 20); let authToken; if (this.passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( this.passwordSha1, authPluginData1, authPluginData2 ); } else { authToken = auth41.calculateToken( this.password, authPluginData1, authPluginData2 ); } return authToken; } handshakeInit(helloPacket, connection) { this.on("error", (e2) => { connection._fatalError = e2; connection._protocolError = e2; }); this.handshake = Packets.Handshake.fromPacket(helloPacket); if (connection.config.debug) { console.log( "Server hello packet: capability flags:%d=(%s)", this.handshake.capabilityFlags, flagNames(this.handshake.capabilityFlags).join(", ") ); } connection.serverCapabilityFlags = this.handshake.capabilityFlags; connection.serverEncoding = CharsetToEncoding[this.handshake.characterSet]; connection.connectionId = this.handshake.connectionId; const serverSSLSupport = this.handshake.capabilityFlags & ClientConstants.SSL; connection.config.compress = connection.config.compress && this.handshake.capabilityFlags & ClientConstants.COMPRESS; this.clientFlags = this.clientFlags | connection.config.compress; if (connection.config.ssl) { if (!serverSSLSupport) { const err = new Error("Server does not support secure connnection"); err.code = "HANDSHAKE_NO_SSL_SUPPORT"; err.fatal = true; this.emit("error", err); return false; } this.clientFlags |= ClientConstants.SSL; this.sendSSLRequest(connection); connection.startTLS((err) => { if (err) { err.code = "HANDSHAKE_SSL_ERROR"; err.fatal = true; this.emit("error", err); return; } this.sendCredentials(connection); }); } else { this.sendCredentials(connection); } return ClientHandshake.prototype.handshakeResult; } handshakeResult(packet, connection) { const marker = packet.peekByte(); if (marker === 254 || marker === 1) { const authSwitch = require_auth_switch(); try { if (marker === 1) { authSwitch.authSwitchRequestMoreData(packet, connection, this); } else { authSwitch.authSwitchRequest(packet, connection, this); } return ClientHandshake.prototype.handshakeResult; } catch (err) { err.code = "AUTH_SWITCH_PLUGIN_ERROR"; err.fatal = true; if (this.onResult) { this.onResult(err); } else { this.emit("error", err); } return null; } } if (marker !== 0) { const err = new Error("Unexpected packet during handshake phase"); err.code = "HANDSHAKE_UNKNOWN_ERROR"; err.fatal = true; if (this.onResult) { this.onResult(err); } else { this.emit("error", err); } return null; } if (!connection.authorized) { connection.authorized = true; if (connection.config.compress) { const enableCompression = require_compressed_protocol().enableCompression; enableCompression(connection); } } if (this.onResult) { this.onResult(null); } return null; } }; module2.exports = ClientHandshake; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/server_handshake.js var require_server_handshake = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/server_handshake.js"(exports, module2) { "use strict"; var CommandCode = require_commands(); var Errors = require_errors3(); var Command = require_command(); var Packets = require_packets(); var ServerHandshake = class extends Command { constructor(args) { super(); this.args = args; } start(packet, connection) { const serverHelloPacket = new Packets.Handshake(this.args); this.serverHello = serverHelloPacket; serverHelloPacket.setScrambleData((err) => { if (err) { connection.emit("error", new Error("Error generating random bytes")); return; } connection.writePacket(serverHelloPacket.toPacket(0)); }); return ServerHandshake.prototype.readClientReply; } readClientReply(packet, connection) { const clientHelloReply = Packets.HandshakeResponse.fromPacket(packet); connection.clientHelloReply = clientHelloReply; if (this.args.authCallback) { this.args.authCallback( { user: clientHelloReply.user, database: clientHelloReply.database, address: connection.stream.remoteAddress, authPluginData1: this.serverHello.authPluginData1, authPluginData2: this.serverHello.authPluginData2, authToken: clientHelloReply.authToken }, (err, mysqlError) => { if (!mysqlError) { connection.writeOk(); } else { connection.writeError({ message: mysqlError.message || "", code: mysqlError.code || 1045 }); connection.close(); } } ); } else { connection.writeOk(); } return ServerHandshake.prototype.dispatchCommands; } dispatchCommands(packet, connection) { let knownCommand = true; const encoding = connection.clientHelloReply.encoding; const commandCode = packet.readInt8(); switch (commandCode) { case CommandCode.QUIT: if (connection.listeners("quit").length) { connection.emit("quit"); } else { connection.stream.end(); } break; case CommandCode.INIT_DB: if (connection.listeners("init_db").length) { const schemaName = packet.readString(void 0, encoding); connection.emit("init_db", schemaName); } else { connection.writeOk(); } break; case CommandCode.QUERY: if (connection.listeners("query").length) { const query = packet.readString(void 0, encoding); connection.emit("query", query); } else { connection.writeError({ code: Errors.HA_ERR_INTERNAL_ERROR, message: "No query handler" }); } break; case CommandCode.FIELD_LIST: if (connection.listeners("field_list").length) { const table = packet.readNullTerminatedString(); const fields = packet.readString(void 0, encoding); connection.emit("field_list", table, fields); } else { connection.writeError({ code: Errors.ER_WARN_DEPRECATED_SYNTAX, message: "As of MySQL 5.7.11, COM_FIELD_LIST is deprecated and will be removed in a future version of MySQL." }); } break; case CommandCode.PING: if (connection.listeners("ping").length) { connection.emit("ping"); } else { connection.writeOk(); } break; default: knownCommand = false; } if (connection.listeners("packet").length) { connection.emit("packet", packet.clone(), knownCommand, commandCode); } else if (!knownCommand) { console.log("Unknown command:", commandCode); } return ServerHandshake.prototype.dispatchCommands; } }; module2.exports = ServerHandshake; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/charsets.js var require_charsets = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/charsets.js"(exports) { "use strict"; exports.BIG5_CHINESE_CI = 1; exports.LATIN2_CZECH_CS = 2; exports.DEC8_SWEDISH_CI = 3; exports.CP850_GENERAL_CI = 4; exports.LATIN1_GERMAN1_CI = 5; exports.HP8_ENGLISH_CI = 6; exports.KOI8R_GENERAL_CI = 7; exports.LATIN1_SWEDISH_CI = 8; exports.LATIN2_GENERAL_CI = 9; exports.SWE7_SWEDISH_CI = 10; exports.ASCII_GENERAL_CI = 11; exports.UJIS_JAPANESE_CI = 12; exports.SJIS_JAPANESE_CI = 13; exports.CP1251_BULGARIAN_CI = 14; exports.LATIN1_DANISH_CI = 15; exports.HEBREW_GENERAL_CI = 16; exports.TIS620_THAI_CI = 18; exports.EUCKR_KOREAN_CI = 19; exports.LATIN7_ESTONIAN_CS = 20; exports.LATIN2_HUNGARIAN_CI = 21; exports.KOI8U_GENERAL_CI = 22; exports.CP1251_UKRAINIAN_CI = 23; exports.GB2312_CHINESE_CI = 24; exports.GREEK_GENERAL_CI = 25; exports.CP1250_GENERAL_CI = 26; exports.LATIN2_CROATIAN_CI = 27; exports.GBK_CHINESE_CI = 28; exports.CP1257_LITHUANIAN_CI = 29; exports.LATIN5_TURKISH_CI = 30; exports.LATIN1_GERMAN2_CI = 31; exports.ARMSCII8_GENERAL_CI = 32; exports.UTF8_GENERAL_CI = 33; exports.CP1250_CZECH_CS = 34; exports.UCS2_GENERAL_CI = 35; exports.CP866_GENERAL_CI = 36; exports.KEYBCS2_GENERAL_CI = 37; exports.MACCE_GENERAL_CI = 38; exports.MACROMAN_GENERAL_CI = 39; exports.CP852_GENERAL_CI = 40; exports.LATIN7_GENERAL_CI = 41; exports.LATIN7_GENERAL_CS = 42; exports.MACCE_BIN = 43; exports.CP1250_CROATIAN_CI = 44; exports.UTF8MB4_GENERAL_CI = 45; exports.UTF8MB4_BIN = 46; exports.LATIN1_BIN = 47; exports.LATIN1_GENERAL_CI = 48; exports.LATIN1_GENERAL_CS = 49; exports.CP1251_BIN = 50; exports.CP1251_GENERAL_CI = 51; exports.CP1251_GENERAL_CS = 52; exports.MACROMAN_BIN = 53; exports.UTF16_GENERAL_CI = 54; exports.UTF16_BIN = 55; exports.UTF16LE_GENERAL_CI = 56; exports.CP1256_GENERAL_CI = 57; exports.CP1257_BIN = 58; exports.CP1257_GENERAL_CI = 59; exports.UTF32_GENERAL_CI = 60; exports.UTF32_BIN = 61; exports.UTF16LE_BIN = 62; exports.BINARY = 63; exports.ARMSCII8_BIN = 64; exports.ASCII_BIN = 65; exports.CP1250_BIN = 66; exports.CP1256_BIN = 67; exports.CP866_BIN = 68; exports.DEC8_BIN = 69; exports.GREEK_BIN = 70; exports.HEBREW_BIN = 71; exports.HP8_BIN = 72; exports.KEYBCS2_BIN = 73; exports.KOI8R_BIN = 74; exports.KOI8U_BIN = 75; exports.UTF8_TOLOWER_CI = 76; exports.LATIN2_BIN = 77; exports.LATIN5_BIN = 78; exports.LATIN7_BIN = 79; exports.CP850_BIN = 80; exports.CP852_BIN = 81; exports.SWE7_BIN = 82; exports.UTF8_BIN = 83; exports.BIG5_BIN = 84; exports.EUCKR_BIN = 85; exports.GB2312_BIN = 86; exports.GBK_BIN = 87; exports.SJIS_BIN = 88; exports.TIS620_BIN = 89; exports.UCS2_BIN = 90; exports.UJIS_BIN = 91; exports.GEOSTD8_GENERAL_CI = 92; exports.GEOSTD8_BIN = 93; exports.LATIN1_SPANISH_CI = 94; exports.CP932_JAPANESE_CI = 95; exports.CP932_BIN = 96; exports.EUCJPMS_JAPANESE_CI = 97; exports.EUCJPMS_BIN = 98; exports.CP1250_POLISH_CI = 99; exports.UTF16_UNICODE_CI = 101; exports.UTF16_ICELANDIC_CI = 102; exports.UTF16_LATVIAN_CI = 103; exports.UTF16_ROMANIAN_CI = 104; exports.UTF16_SLOVENIAN_CI = 105; exports.UTF16_POLISH_CI = 106; exports.UTF16_ESTONIAN_CI = 107; exports.UTF16_SPANISH_CI = 108; exports.UTF16_SWEDISH_CI = 109; exports.UTF16_TURKISH_CI = 110; exports.UTF16_CZECH_CI = 111; exports.UTF16_DANISH_CI = 112; exports.UTF16_LITHUANIAN_CI = 113; exports.UTF16_SLOVAK_CI = 114; exports.UTF16_SPANISH2_CI = 115; exports.UTF16_ROMAN_CI = 116; exports.UTF16_PERSIAN_CI = 117; exports.UTF16_ESPERANTO_CI = 118; exports.UTF16_HUNGARIAN_CI = 119; exports.UTF16_SINHALA_CI = 120; exports.UTF16_GERMAN2_CI = 121; exports.UTF16_CROATIAN_CI = 122; exports.UTF16_UNICODE_520_CI = 123; exports.UTF16_VIETNAMESE_CI = 124; exports.UCS2_UNICODE_CI = 128; exports.UCS2_ICELANDIC_CI = 129; exports.UCS2_LATVIAN_CI = 130; exports.UCS2_ROMANIAN_CI = 131; exports.UCS2_SLOVENIAN_CI = 132; exports.UCS2_POLISH_CI = 133; exports.UCS2_ESTONIAN_CI = 134; exports.UCS2_SPANISH_CI = 135; exports.UCS2_SWEDISH_CI = 136; exports.UCS2_TURKISH_CI = 137; exports.UCS2_CZECH_CI = 138; exports.UCS2_DANISH_CI = 139; exports.UCS2_LITHUANIAN_CI = 140; exports.UCS2_SLOVAK_CI = 141; exports.UCS2_SPANISH2_CI = 142; exports.UCS2_ROMAN_CI = 143; exports.UCS2_PERSIAN_CI = 144; exports.UCS2_ESPERANTO_CI = 145; exports.UCS2_HUNGARIAN_CI = 146; exports.UCS2_SINHALA_CI = 147; exports.UCS2_GERMAN2_CI = 148; exports.UCS2_CROATIAN_CI = 149; exports.UCS2_UNICODE_520_CI = 150; exports.UCS2_VIETNAMESE_CI = 151; exports.UCS2_GENERAL_MYSQL500_CI = 159; exports.UTF32_UNICODE_CI = 160; exports.UTF32_ICELANDIC_CI = 161; exports.UTF32_LATVIAN_CI = 162; exports.UTF32_ROMANIAN_CI = 163; exports.UTF32_SLOVENIAN_CI = 164; exports.UTF32_POLISH_CI = 165; exports.UTF32_ESTONIAN_CI = 166; exports.UTF32_SPANISH_CI = 167; exports.UTF32_SWEDISH_CI = 168; exports.UTF32_TURKISH_CI = 169; exports.UTF32_CZECH_CI = 170; exports.UTF32_DANISH_CI = 171; exports.UTF32_LITHUANIAN_CI = 172; exports.UTF32_SLOVAK_CI = 173; exports.UTF32_SPANISH2_CI = 174; exports.UTF32_ROMAN_CI = 175; exports.UTF32_PERSIAN_CI = 176; exports.UTF32_ESPERANTO_CI = 177; exports.UTF32_HUNGARIAN_CI = 178; exports.UTF32_SINHALA_CI = 179; exports.UTF32_GERMAN2_CI = 180; exports.UTF32_CROATIAN_CI = 181; exports.UTF32_UNICODE_520_CI = 182; exports.UTF32_VIETNAMESE_CI = 183; exports.UTF8_UNICODE_CI = 192; exports.UTF8_ICELANDIC_CI = 193; exports.UTF8_LATVIAN_CI = 194; exports.UTF8_ROMANIAN_CI = 195; exports.UTF8_SLOVENIAN_CI = 196; exports.UTF8_POLISH_CI = 197; exports.UTF8_ESTONIAN_CI = 198; exports.UTF8_SPANISH_CI = 199; exports.UTF8_SWEDISH_CI = 200; exports.UTF8_TURKISH_CI = 201; exports.UTF8_CZECH_CI = 202; exports.UTF8_DANISH_CI = 203; exports.UTF8_LITHUANIAN_CI = 204; exports.UTF8_SLOVAK_CI = 205; exports.UTF8_SPANISH2_CI = 206; exports.UTF8_ROMAN_CI = 207; exports.UTF8_PERSIAN_CI = 208; exports.UTF8_ESPERANTO_CI = 209; exports.UTF8_HUNGARIAN_CI = 210; exports.UTF8_SINHALA_CI = 211; exports.UTF8_GERMAN2_CI = 212; exports.UTF8_CROATIAN_CI = 213; exports.UTF8_UNICODE_520_CI = 214; exports.UTF8_VIETNAMESE_CI = 215; exports.UTF8_GENERAL_MYSQL500_CI = 223; exports.UTF8MB4_UNICODE_CI = 224; exports.UTF8MB4_ICELANDIC_CI = 225; exports.UTF8MB4_LATVIAN_CI = 226; exports.UTF8MB4_ROMANIAN_CI = 227; exports.UTF8MB4_SLOVENIAN_CI = 228; exports.UTF8MB4_POLISH_CI = 229; exports.UTF8MB4_ESTONIAN_CI = 230; exports.UTF8MB4_SPANISH_CI = 231; exports.UTF8MB4_SWEDISH_CI = 232; exports.UTF8MB4_TURKISH_CI = 233; exports.UTF8MB4_CZECH_CI = 234; exports.UTF8MB4_DANISH_CI = 235; exports.UTF8MB4_LITHUANIAN_CI = 236; exports.UTF8MB4_SLOVAK_CI = 237; exports.UTF8MB4_SPANISH2_CI = 238; exports.UTF8MB4_ROMAN_CI = 239; exports.UTF8MB4_PERSIAN_CI = 240; exports.UTF8MB4_ESPERANTO_CI = 241; exports.UTF8MB4_HUNGARIAN_CI = 242; exports.UTF8MB4_SINHALA_CI = 243; exports.UTF8MB4_GERMAN2_CI = 244; exports.UTF8MB4_CROATIAN_CI = 245; exports.UTF8MB4_UNICODE_520_CI = 246; exports.UTF8MB4_VIETNAMESE_CI = 247; exports.GB18030_CHINESE_CI = 248; exports.GB18030_BIN = 249; exports.GB18030_UNICODE_520_CI = 250; exports.UTF8_GENERAL50_CI = 253; exports.UTF8MB4_0900_AI_CI = 255; exports.UTF8MB4_CS_0900_AI_CI = 266; exports.UTF8MB4_DA_0900_AI_CI = 267; exports.UTF8MB4_DE_PB_0900_AI_CI = 256; exports.UTF8MB4_EO_0900_AI_CI = 273; exports.UTF8MB4_ES_0900_AI_CI = 263; exports.UTF8MB4_ES_TRAD_0900_AI_CI = 270; exports.UTF8MB4_ET_0900_AI_CI = 262; exports.UTF8MB4_HR_0900_AI_CI = 275; exports.UTF8MB4_HU_0900_AI_CI = 274; exports.UTF8MB4_IS_0900_AI_CI = 257; exports.UTF8MB4_LA_0900_AI_CI = 271; exports.UTF8MB4_LT_0900_AI_CI = 268; exports.UTF8MB4_LV_0900_AI_CI = 258; exports.UTF8MB4_PL_0900_AI_CI = 261; exports.UTF8MB4_RO_0900_AI_CI = 259; exports.UTF8MB4_SK_0900_AI_CI = 269; exports.UTF8MB4_SL_0900_AI_CI = 260; exports.UTF8MB4_SV_0900_AI_CI = 264; exports.UTF8MB4_TR_0900_AI_CI = 265; exports.UTF8MB4_VI_0900_AI_CI = 277; exports.BIG5 = exports.BIG5_CHINESE_CI; exports.DEC8 = exports.DEC8_SWEDISH_CI; exports.CP850 = exports.CP850_GENERAL_CI; exports.HP8 = exports.HP8_ENGLISH_CI; exports.KOI8R = exports.KOI8R_GENERAL_CI; exports.LATIN1 = exports.LATIN1_SWEDISH_CI; exports.LATIN2 = exports.LATIN2_GENERAL_CI; exports.SWE7 = exports.SWE7_SWEDISH_CI; exports.ASCII = exports.ASCII_GENERAL_CI; exports.UJIS = exports.UJIS_JAPANESE_CI; exports.SJIS = exports.SJIS_JAPANESE_CI; exports.HEBREW = exports.HEBREW_GENERAL_CI; exports.TIS620 = exports.TIS620_THAI_CI; exports.EUCKR = exports.EUCKR_KOREAN_CI; exports.KOI8U = exports.KOI8U_GENERAL_CI; exports.GB2312 = exports.GB2312_CHINESE_CI; exports.GREEK = exports.GREEK_GENERAL_CI; exports.CP1250 = exports.CP1250_GENERAL_CI; exports.GBK = exports.GBK_CHINESE_CI; exports.LATIN5 = exports.LATIN5_TURKISH_CI; exports.ARMSCII8 = exports.ARMSCII8_GENERAL_CI; exports.UTF8 = exports.UTF8_GENERAL_CI; exports.UCS2 = exports.UCS2_GENERAL_CI; exports.CP866 = exports.CP866_GENERAL_CI; exports.KEYBCS2 = exports.KEYBCS2_GENERAL_CI; exports.MACCE = exports.MACCE_GENERAL_CI; exports.MACROMAN = exports.MACROMAN_GENERAL_CI; exports.CP852 = exports.CP852_GENERAL_CI; exports.LATIN7 = exports.LATIN7_GENERAL_CI; exports.UTF8MB4 = exports.UTF8MB4_GENERAL_CI; exports.CP1251 = exports.CP1251_GENERAL_CI; exports.UTF16 = exports.UTF16_GENERAL_CI; exports.UTF16LE = exports.UTF16LE_GENERAL_CI; exports.CP1256 = exports.CP1256_GENERAL_CI; exports.CP1257 = exports.CP1257_GENERAL_CI; exports.UTF32 = exports.UTF32_GENERAL_CI; exports.CP932 = exports.CP932_JAPANESE_CI; exports.EUCJPMS = exports.EUCJPMS_JAPANESE_CI; exports.GB18030 = exports.GB18030_CHINESE_CI; exports.GEOSTD8 = exports.GEOSTD8_GENERAL_CI; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/helpers.js var require_helpers = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/helpers.js"(exports) { "use strict"; function srcEscape(str) { return JSON.stringify({ [str]: 1 }).slice(1, -3); } exports.srcEscape = srcEscape; var highlightFn; var cardinalRecommended = false; try { highlightFn = require("cardinal").highlight; } catch (err) { highlightFn = (text) => { if (!cardinalRecommended) { console.log("For nicer debug output consider install cardinal@^2.0.0"); cardinalRecommended = true; } return text; }; } function printDebugWithCode(msg, code) { console.log(` ${msg}: `); console.log(`${highlightFn(code)} `); } exports.printDebugWithCode = printDebugWithCode; function typeMatch(type, list, Types) { if (Array.isArray(list)) { return list.some((t2) => type === Types[t2]); } return !!list; } exports.typeMatch = typeMatch; } }); // ../../node_modules/.pnpm/is-property@1.0.2/node_modules/is-property/is-property.js var require_is_property = __commonJS({ "../../node_modules/.pnpm/is-property@1.0.2/node_modules/is-property/is-property.js"(exports, module2) { "use strict"; function isProperty(str) { return /^[$A-Z\_a-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0\u08a2-\u08ac\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097f\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f0\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191c\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2e2f\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua697\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa80-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc][$A-Z\_a-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0\u08a2-\u08ac\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097f\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f0\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191c\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2e2f\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua697\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa80-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc0-9\u0300-\u036f\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u08fe\u0900-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c01-\u0c03\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c82\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0d02\u0d03\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d82\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19b0-\u19c0\u19c8\u19c9\u19d0-\u19d9\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf2-\u1cf4\u1dc0-\u1de6\u1dfc-\u1dff\u200c\u200d\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua620-\ua629\ua66f\ua674-\ua67d\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua880\ua881\ua8b4-\ua8c4\ua8d0-\ua8d9\ua8e0-\ua8f1\ua900-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f]*$/.test(str); } module2.exports = isProperty; } }); // ../../node_modules/.pnpm/generate-function@2.3.1/node_modules/generate-function/index.js var require_generate_function = __commonJS({ "../../node_modules/.pnpm/generate-function@2.3.1/node_modules/generate-function/index.js"(exports, module2) { var util = require("util"); var isProperty = require_is_property(); var INDENT_START = /[\{\[]/; var INDENT_END = /[\}\]]/; var RESERVED = [ "do", "if", "in", "for", "let", "new", "try", "var", "case", "else", "enum", "eval", "null", "this", "true", "void", "with", "await", "break", "catch", "class", "const", "false", "super", "throw", "while", "yield", "delete", "export", "import", "public", "return", "static", "switch", "typeof", "default", "extends", "finally", "package", "private", "continue", "debugger", "function", "arguments", "interface", "protected", "implements", "instanceof", "NaN", "undefined" ]; var RESERVED_MAP = {}; for (i2 = 0; i2 < RESERVED.length; i2++) { RESERVED_MAP[RESERVED[i2]] = true; } var i2; var isVariable = function(name) { return isProperty(name) && !RESERVED_MAP.hasOwnProperty(name); }; var formats = { s: function(s2) { return "" + s2; }, d: function(d) { return "" + Number(d); }, o: function(o2) { return JSON.stringify(o2); } }; var genfun = function() { var lines = []; var indent = 0; var vars = {}; var push = function(str) { var spaces = ""; while (spaces.length < indent * 2) spaces += " "; lines.push(spaces + str); }; var pushLine = function(line2) { if (INDENT_END.test(line2.trim()[0]) && INDENT_START.test(line2[line2.length - 1])) { indent--; push(line2); indent++; return; } if (INDENT_START.test(line2[line2.length - 1])) { push(line2); indent++; return; } if (INDENT_END.test(line2.trim()[0])) { indent--; push(line2); return; } push(line2); }; var line = function(fmt) { if (!fmt) return line; if (arguments.length === 1 && fmt.indexOf("\n") > -1) { var lines2 = fmt.trim().split("\n"); for (var i3 = 0; i3 < lines2.length; i3++) { pushLine(lines2[i3].trim()); } } else { pushLine(util.format.apply(util, arguments)); } return line; }; line.scope = {}; line.formats = formats; line.sym = function(name) { if (!name || !isVariable(name)) name = "tmp"; if (!vars[name]) vars[name] = 0; return name + (vars[name]++ || ""); }; line.property = function(obj, name) { if (arguments.length === 1) { name = obj; obj = ""; } name = name + ""; if (isProperty(name)) return obj ? obj + "." + name : name; return obj ? obj + "[" + JSON.stringify(name) + "]" : JSON.stringify(name); }; line.toString = function() { return lines.join("\n"); }; line.toFunction = function(scope) { if (!scope) scope = {}; var src = "return (" + line.toString() + ")"; Object.keys(line.scope).forEach(function(key) { if (!scope[key]) scope[key] = line.scope[key]; }); var keys = Object.keys(scope).map(function(key) { return key; }); var vals = keys.map(function(key) { return scope[key]; }); return Function.apply(null, keys.concat(src)).apply(null, vals); }; if (arguments.length) line.apply(null, arguments); return line; }; genfun.formats = formats; module2.exports = genfun; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/parser_cache.js var require_parser_cache = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/parser_cache.js"(exports, module2) { "use strict"; var LRU = require_lru_cache(); var parserCache = new LRU({ max: 15e3 }); function keyFromFields(type, fields, options, config4) { let res = `${type}/${typeof options.nestTables}/${options.nestTables}/${options.rowsAsArray}/${options.supportBigNumbers || config4.supportBigNumbers}/${options.bigNumberStrings || config4.bigNumberStrings}/${typeof options.typeCast}/${options.timezone || config4.timezone}/${options.decimalNumbers}/${options.dateStrings}`; for (let i2 = 0; i2 < fields.length; ++i2) { const field = fields[i2]; res += `/${field.name}:${field.columnType}:${field.length}:${field.schema}:${field.table}:${field.flags}:${field.characterSet}`; } return res; } function getParser(type, fields, options, config4, compiler) { const key = keyFromFields(type, fields, options, config4); let parser = parserCache.get(key); if (parser) { return parser; } parser = compiler(fields, options, config4); parserCache.set(key, parser); return parser; } function setMaxCache(max) { parserCache.max = max; } function clearCache() { parserCache.reset(); } module2.exports = { getParser, setMaxCache, clearCache }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/text_parser.js var require_text_parser = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/text_parser.js"(exports, module2) { "use strict"; var Types = require_types(); var Charsets = require_charsets(); var helpers = require_helpers(); var genFunc = require_generate_function(); var parserCache = require_parser_cache(); var typeNames = []; for (const t2 in Types) { typeNames[Types[t2]] = t2; } function readCodeFor(type, charset, encodingExpr, config4, options) { const supportBigNumbers = options.supportBigNumbers || config4.supportBigNumbers; const bigNumberStrings = options.bigNumberStrings || config4.bigNumberStrings; const timezone = options.timezone || config4.timezone; const dateStrings = options.dateStrings || config4.dateStrings; switch (type) { case Types.TINY: case Types.SHORT: case Types.LONG: case Types.INT24: case Types.YEAR: return "packet.parseLengthCodedIntNoBigCheck()"; case Types.LONGLONG: if (supportBigNumbers && bigNumberStrings) { return "packet.parseLengthCodedIntString()"; } return `packet.parseLengthCodedInt(${supportBigNumbers})`; case Types.FLOAT: case Types.DOUBLE: return "packet.parseLengthCodedFloat()"; case Types.NULL: return "packet.readLengthCodedNumber()"; case Types.DECIMAL: case Types.NEWDECIMAL: if (config4.decimalNumbers) { return "packet.parseLengthCodedFloat()"; } return 'packet.readLengthCodedString("ascii")'; case Types.DATE: if (helpers.typeMatch(type, dateStrings, Types)) { return 'packet.readLengthCodedString("ascii")'; } return `packet.parseDate('${timezone}')`; case Types.DATETIME: case Types.TIMESTAMP: if (helpers.typeMatch(type, dateStrings, Types)) { return 'packet.readLengthCodedString("ascii")'; } return `packet.parseDateTime('${timezone}')`; case Types.TIME: return 'packet.readLengthCodedString("ascii")'; case Types.GEOMETRY: return "packet.parseGeometryValue()"; case Types.JSON: return 'JSON.parse(packet.readLengthCodedString("utf8"))'; default: if (charset === Charsets.BINARY) { return "packet.readLengthCodedBuffer()"; } return `packet.readLengthCodedString(${encodingExpr})`; } } function compile(fields, options, config4) { if (typeof config4.typeCast === "function" && typeof options.typeCast !== "function") { options.typeCast = config4.typeCast; } function wrap(field, _this) { return { type: typeNames[field.columnType], length: field.columnLength, db: field.schema, table: field.table, name: field.name, string: function() { return _this.packet.readLengthCodedString(field.encoding); }, buffer: function() { return _this.packet.readLengthCodedBuffer(); }, geometry: function() { return _this.packet.parseGeometryValue(); } }; } const parserFn = genFunc(); parserFn("(function () {")( "return class TextRow {" ); parserFn("constructor(fields) {"); if (typeof options.typeCast === "function") { parserFn("const _this = this;"); parserFn("for(let i=0; i { this.onResult(null, rows, fields); }); } else { process2.nextTick(() => { this.onResult(null, rows); }); } } return null; } doneInsert(rs) { if (this._localStreamError) { if (this.onResult) { this.onResult(this._localStreamError, rs); } else { this.emit("error", this._localStreamError); } return null; } this._rows.push(rs); this._fields.push(void 0); this.emit("fields", void 0); this.emit("result", rs); if (rs.serverStatus & ServerStatus.SERVER_MORE_RESULTS_EXISTS) { this._resultIndex++; return this.resultsetHeader; } return this.done(); } resultsetHeader(packet, connection) { const rs = new Packets.ResultSetHeader(packet, connection); this._fieldCount = rs.fieldCount; if (connection.config.debug) { console.log( ` Resultset header received, expecting ${rs.fieldCount} column definition packets` ); } if (this._fieldCount === 0) { return this.doneInsert(rs); } if (this._fieldCount === null) { return this._streamLocalInfile(connection, rs.infileName); } this._receivedFieldsCount = 0; this._rows.push([]); this._fields.push([]); return this.readField; } _streamLocalInfile(connection, path5) { if (this._streamFactory) { this._localStream = this._streamFactory(path5); } else { this._localStreamError = new Error( `As a result of LOCAL INFILE command server wants to read ${path5} file, but as of v2.0 you must provide streamFactory option returning ReadStream.` ); connection.writePacket(EmptyPacket); return this.infileOk; } const onConnectionError = () => { this._unpipeStream(); }; const onDrain = () => { this._localStream.resume(); }; const onPause = () => { this._localStream.pause(); }; const onData = function(data) { const dataWithHeader = Buffer.allocUnsafe(data.length + 4); data.copy(dataWithHeader, 4); connection.writePacket( new Packets.Packet(0, dataWithHeader, 0, dataWithHeader.length) ); }; const onEnd = () => { connection.removeListener("error", onConnectionError); connection.writePacket(EmptyPacket); }; const onError = (err) => { this._localStreamError = err; connection.removeListener("error", onConnectionError); connection.writePacket(EmptyPacket); }; this._unpipeStream = () => { connection.stream.removeListener("pause", onPause); connection.stream.removeListener("drain", onDrain); this._localStream.removeListener("data", onData); this._localStream.removeListener("end", onEnd); this._localStream.removeListener("error", onError); }; connection.stream.on("pause", onPause); connection.stream.on("drain", onDrain); this._localStream.on("data", onData); this._localStream.on("end", onEnd); this._localStream.on("error", onError); connection.once("error", onConnectionError); return this.infileOk; } readField(packet, connection) { this._receivedFieldsCount++; if (this._fields[this._resultIndex].length !== this._fieldCount) { const field = new Packets.ColumnDefinition( packet, connection.clientEncoding ); this._fields[this._resultIndex].push(field); if (connection.config.debug) { console.log(" Column definition:"); console.log(` name: ${field.name}`); console.log(` type: ${field.columnType}`); console.log(` flags: ${field.flags}`); } } if (this._receivedFieldsCount === this._fieldCount) { const fields = this._fields[this._resultIndex]; this.emit("fields", fields); this._rowParser = new (getTextParser(fields, this.options, connection.config))(fields); return Query.prototype.fieldsEOF; } return Query.prototype.readField; } fieldsEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet"); } return this.row; } row(packet, _connection) { if (packet.isEOF()) { const status = packet.eofStatusFlags(); const moreResults = status & ServerStatus.SERVER_MORE_RESULTS_EXISTS; if (moreResults) { this._resultIndex++; return Query.prototype.resultsetHeader; } return this.done(); } let row; try { row = this._rowParser.next( packet, this._fields[this._resultIndex], this.options ); } catch (err) { this._localStreamError = err; return this.doneInsert(null); } if (this.onResult) { this._rows[this._resultIndex].push(row); } else { this.emit("result", row); } return Query.prototype.row; } infileOk(packet, connection) { const rs = new Packets.ResultSetHeader(packet, connection); return this.doneInsert(rs); } stream(options) { options = options || {}; options.objectMode = true; const stream = new Readable(options); stream._read = () => { this._connection && this._connection.resume(); }; this.on("result", (row) => { if (!stream.push(row)) { this._connection.pause(); } stream.emit("result", row); }); this.on("error", (err) => { stream.emit("error", err); }); this.on("end", () => { stream.push(null); stream.emit("close"); }); this.on("fields", (fields) => { stream.emit("fields", fields); }); return stream; } _setTimeout() { if (this.timeout) { const timeoutHandler = this._handleTimeoutError.bind(this); this.queryTimeout = Timers.setTimeout( timeoutHandler, this.timeout ); } } _handleTimeoutError() { if (this.queryTimeout) { Timers.clearTimeout(this.queryTimeout); this.queryTimeout = null; } const err = new Error("Query inactivity timeout"); err.errorno = "PROTOCOL_SEQUENCE_TIMEOUT"; err.code = "PROTOCOL_SEQUENCE_TIMEOUT"; err.syscall = "query"; if (this.onResult) { this.onResult(err); } else { this.emit("error", err); } } }; Query.prototype.catch = Query.prototype.then; module2.exports = Query; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/close_statement.js var require_close_statement2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/close_statement.js"(exports, module2) { "use strict"; var Command = require_command(); var Packets = require_packets(); var CloseStatement = class extends Command { constructor(id) { super(); this.id = id; } start(packet, connection) { connection.writePacket(new Packets.CloseStatement(this.id).toPacket(1)); return null; } }; module2.exports = CloseStatement; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/field_flags.js var require_field_flags = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/field_flags.js"(exports) { "use strict"; exports.NOT_NULL = 1; exports.PRI_KEY = 2; exports.UNIQUE_KEY = 4; exports.MULTIPLE_KEY = 8; exports.BLOB = 16; exports.UNSIGNED = 32; exports.ZEROFILL = 64; exports.BINARY = 128; exports.ENUM = 256; exports.AUTO_INCREMENT = 512; exports.TIMESTAMP = 1024; exports.SET = 2048; exports.NO_DEFAULT_VALUE = 4096; exports.ON_UPDATE_NOW = 8192; exports.NUM = 32768; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/binary_parser.js var require_binary_parser = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/parsers/binary_parser.js"(exports, module2) { "use strict"; var FieldFlags = require_field_flags(); var Charsets = require_charsets(); var Types = require_types(); var helpers = require_helpers(); var genFunc = require_generate_function(); var parserCache = require_parser_cache(); var typeNames = []; for (const t2 in Types) { typeNames[Types[t2]] = t2; } function readCodeFor(field, config4, options, fieldNum) { const supportBigNumbers = options.supportBigNumbers || config4.supportBigNumbers; const bigNumberStrings = options.bigNumberStrings || config4.bigNumberStrings; const timezone = options.timezone || config4.timezone; const dateStrings = options.dateStrings || config4.dateStrings; const unsigned = field.flags & FieldFlags.UNSIGNED; switch (field.columnType) { case Types.TINY: return unsigned ? "packet.readInt8();" : "packet.readSInt8();"; case Types.SHORT: return unsigned ? "packet.readInt16();" : "packet.readSInt16();"; case Types.LONG: case Types.INT24: return unsigned ? "packet.readInt32();" : "packet.readSInt32();"; case Types.YEAR: return "packet.readInt16()"; case Types.FLOAT: return "packet.readFloat();"; case Types.DOUBLE: return "packet.readDouble();"; case Types.NULL: return "null;"; case Types.DATE: case Types.DATETIME: case Types.TIMESTAMP: case Types.NEWDATE: if (helpers.typeMatch(field.columnType, dateStrings, Types)) { return `packet.readDateTimeString(${field.decimals});`; } return `packet.readDateTime('${timezone}');`; case Types.TIME: return "packet.readTimeString()"; case Types.DECIMAL: case Types.NEWDECIMAL: if (config4.decimalNumbers) { return "packet.parseLengthCodedFloat();"; } return 'packet.readLengthCodedString("ascii");'; case Types.GEOMETRY: return "packet.parseGeometryValue();"; case Types.JSON: return 'JSON.parse(packet.readLengthCodedString("utf8"));'; case Types.LONGLONG: if (!supportBigNumbers) { return unsigned ? "packet.readInt64JSNumber();" : "packet.readSInt64JSNumber();"; } if (bigNumberStrings) { return unsigned ? "packet.readInt64String();" : "packet.readSInt64String();"; } return unsigned ? "packet.readInt64();" : "packet.readSInt64();"; default: if (field.characterSet === Charsets.BINARY) { return "packet.readLengthCodedBuffer();"; } return `packet.readLengthCodedString(fields[${fieldNum}].encoding)`; } } function compile(fields, options, config4) { const parserFn = genFunc(); let i2 = 0; const nullBitmapLength = Math.floor((fields.length + 7 + 2) / 8); parserFn("(function(){"); parserFn("return class BinaryRow {"); parserFn("constructor() {"); parserFn("}"); parserFn("next(packet, fields, options) {"); if (options.rowsAsArray) { parserFn(`const result = new Array(${fields.length});`); } else { parserFn("const result = {};"); } const resultTables = {}; let resultTablesArray = []; if (options.nestTables === true) { for (i2 = 0; i2 < fields.length; i2++) { resultTables[fields[i2].table] = 1; } resultTablesArray = Object.keys(resultTables); for (i2 = 0; i2 < resultTablesArray.length; i2++) { parserFn(`result[${helpers.srcEscape(resultTablesArray[i2])}] = {};`); } } parserFn("packet.readInt8();"); for (i2 = 0; i2 < nullBitmapLength; ++i2) { parserFn(`const nullBitmaskByte${i2} = packet.readInt8();`); } let lvalue = ""; let currentFieldNullBit = 4; let nullByteIndex = 0; let fieldName = ""; let tableName = ""; for (i2 = 0; i2 < fields.length; i2++) { fieldName = helpers.srcEscape(fields[i2].name); parserFn(`// ${fieldName}: ${typeNames[fields[i2].columnType]}`); if (typeof options.nestTables === "string") { tableName = helpers.srcEscape(fields[i2].table); lvalue = `result[${helpers.srcEscape( fields[i2].table + options.nestTables + fields[i2].name )}]`; } else if (options.nestTables === true) { tableName = helpers.srcEscape(fields[i2].table); lvalue = `result[${tableName}][${fieldName}]`; } else if (options.rowsAsArray) { lvalue = `result[${i2.toString(10)}]`; } else { lvalue = `result[${helpers.srcEscape(fields[i2].name)}]`; } parserFn(`if (nullBitmaskByte${nullByteIndex} & ${currentFieldNullBit})`); parserFn(`${lvalue} = null;`); parserFn("else"); parserFn(`${lvalue} = ${readCodeFor(fields[i2], config4, options, i2)}`); currentFieldNullBit *= 2; if (currentFieldNullBit === 256) { currentFieldNullBit = 1; nullByteIndex++; } } parserFn("return result;"); parserFn("}"); parserFn("};")("})()"); if (config4.debug) { helpers.printDebugWithCode( "Compiled binary protocol row parser", parserFn.toString() ); } return parserFn.toFunction(); } function getBinaryParser(fields, options, config4) { return parserCache.getParser("binary", fields, options, config4, compile); } module2.exports = getBinaryParser; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/execute.js var require_execute2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/execute.js"(exports, module2) { "use strict"; var Command = require_command(); var Query = require_query2(); var Packets = require_packets(); var getBinaryParser = require_binary_parser(); var Execute = class extends Command { constructor(options, callback) { super(); this.statement = options.statement; this.sql = options.sql; this.values = options.values; this.onResult = callback; this.parameters = options.values; this.insertId = 0; this.timeout = options.timeout; this.queryTimeout = null; this._rows = []; this._fields = []; this._result = []; this._fieldCount = 0; this._rowParser = null; this._executeOptions = options; this._resultIndex = 0; this._localStream = null; this._unpipeStream = function() { }; this._streamFactory = options.infileStreamFactory; this._connection = null; } buildParserFromFields(fields, connection) { return getBinaryParser(fields, this.options, connection.config); } start(packet, connection) { this._connection = connection; this.options = Object.assign({}, connection.config, this._executeOptions); this._setTimeout(); const executePacket = new Packets.Execute( this.statement.id, this.parameters, connection.config.charsetNumber, connection.config.timezone ); try { connection.writePacket(executePacket.toPacket(1)); } catch (error) { this.onResult(error); } return Execute.prototype.resultsetHeader; } readField(packet, connection) { let fields; const field = new Packets.ColumnDefinition( packet, connection.clientEncoding ); this._receivedFieldsCount++; this._fields[this._resultIndex].push(field); if (this._receivedFieldsCount === this._fieldCount) { fields = this._fields[this._resultIndex]; this.emit("fields", fields, this._resultIndex); return Execute.prototype.fieldsEOF; } return Execute.prototype.readField; } fieldsEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet"); } this._rowParser = new (this.buildParserFromFields( this._fields[this._resultIndex], connection ))(); return Execute.prototype.row; } }; Execute.prototype.done = Query.prototype.done; Execute.prototype.doneInsert = Query.prototype.doneInsert; Execute.prototype.resultsetHeader = Query.prototype.resultsetHeader; Execute.prototype._findOrCreateReadStream = Query.prototype._findOrCreateReadStream; Execute.prototype._streamLocalInfile = Query.prototype._streamLocalInfile; Execute.prototype._setTimeout = Query.prototype._setTimeout; Execute.prototype._handleTimeoutError = Query.prototype._handleTimeoutError; Execute.prototype.row = Query.prototype.row; Execute.prototype.stream = Query.prototype.stream; module2.exports = Execute; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/prepare.js var require_prepare = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/prepare.js"(exports, module2) { "use strict"; var Packets = require_packets(); var Command = require_command(); var CloseStatement = require_close_statement2(); var Execute = require_execute2(); var PreparedStatementInfo = class { constructor(query, id, columns, parameters, connection) { this.query = query; this.id = id; this.columns = columns; this.parameters = parameters; this.rowParser = null; this._connection = connection; } close() { return this._connection.addCommand(new CloseStatement(this.id)); } execute(parameters, callback) { if (typeof parameters === "function") { callback = parameters; parameters = []; } return this._connection.addCommand( new Execute({ statement: this, values: parameters }, callback) ); } }; var Prepare = class extends Command { constructor(options, callback) { super(); this.query = options.sql; this.onResult = callback; this.id = 0; this.fieldCount = 0; this.parameterCount = 0; this.fields = []; this.parameterDefinitions = []; this.options = options; } start(packet, connection) { const Connection = connection.constructor; this.key = Connection.statementKey(this.options); const statement = connection._statements.get(this.key); if (statement) { if (this.onResult) { this.onResult(null, statement); } return null; } const cmdPacket = new Packets.PrepareStatement( this.query, connection.config.charsetNumber ); connection.writePacket(cmdPacket.toPacket(1)); return Prepare.prototype.prepareHeader; } prepareHeader(packet, connection) { const header = new Packets.PreparedStatementHeader(packet); this.id = header.id; this.fieldCount = header.fieldCount; this.parameterCount = header.parameterCount; if (this.parameterCount > 0) { return Prepare.prototype.readParameter; } if (this.fieldCount > 0) { return Prepare.prototype.readField; } return this.prepareDone(connection); } readParameter(packet, connection) { const def = new Packets.ColumnDefinition(packet, connection.clientEncoding); this.parameterDefinitions.push(def); if (this.parameterDefinitions.length === this.parameterCount) { return Prepare.prototype.parametersEOF; } return this.readParameter; } readField(packet, connection) { const def = new Packets.ColumnDefinition(packet, connection.clientEncoding); this.fields.push(def); if (this.fields.length === this.fieldCount) { return Prepare.prototype.fieldsEOF; } return Prepare.prototype.readField; } parametersEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet after parameters"); } if (this.fieldCount > 0) { return Prepare.prototype.readField; } return this.prepareDone(connection); } fieldsEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet after fields"); } return this.prepareDone(connection); } prepareDone(connection) { const statement = new PreparedStatementInfo( this.query, this.id, this.fields, this.parameterDefinitions, connection ); connection._statements.set(this.key, statement); if (this.onResult) { this.onResult(null, statement); } return null; } }; module2.exports = Prepare; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/ping.js var require_ping = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/ping.js"(exports, module2) { "use strict"; var Command = require_command(); var CommandCode = require_commands(); var Packet = require_packet(); var Ping = class extends Command { constructor(callback) { super(); this.onResult = callback; } start(packet, connection) { const ping = new Packet( 0, Buffer.from([1, 0, 0, 0, CommandCode.PING]), 0, 5 ); connection.writePacket(ping); return Ping.prototype.pingResponse; } pingResponse() { if (this.onResult) { process.nextTick(this.onResult.bind(this)); } return null; } }; module2.exports = Ping; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/register_slave.js var require_register_slave2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/register_slave.js"(exports, module2) { "use strict"; var Command = require_command(); var Packets = require_packets(); var RegisterSlave = class extends Command { constructor(opts, callback) { super(); this.onResult = callback; this.opts = opts; } start(packet, connection) { const newPacket = new Packets.RegisterSlave(this.opts); connection.writePacket(newPacket.toPacket(1)); return RegisterSlave.prototype.registerResponse; } registerResponse() { if (this.onResult) { process.nextTick(this.onResult.bind(this)); } return null; } }; module2.exports = RegisterSlave; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/binlog_query_statusvars.js var require_binlog_query_statusvars = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/packets/binlog_query_statusvars.js"(exports, module2) { "use strict"; var keys = { FLAGS2: 0, SQL_MODE: 1, CATALOG: 2, AUTO_INCREMENT: 3, CHARSET: 4, TIME_ZONE: 5, CATALOG_NZ: 6, LC_TIME_NAMES: 7, CHARSET_DATABASE: 8, TABLE_MAP_FOR_UPDATE: 9, MASTER_DATA_WRITTEN: 10, INVOKERS: 11, UPDATED_DB_NAMES: 12, MICROSECONDS: 3 }; module2.exports = function parseStatusVars(buffer) { const result = {}; let offset = 0; let key, length, prevOffset; while (offset < buffer.length) { key = buffer[offset++]; switch (key) { case keys.FLAGS2: result.flags = buffer.readUInt32LE(offset); offset += 4; break; case keys.SQL_MODE: result.sqlMode = buffer.readUInt32LE(offset); offset += 8; break; case keys.CATALOG: length = buffer[offset++]; result.catalog = buffer.toString("utf8", offset, offset + length); offset += length + 1; break; case keys.CHARSET: result.clientCharset = buffer.readUInt16LE(offset); result.connectionCollation = buffer.readUInt16LE(offset + 2); result.serverCharset = buffer.readUInt16LE(offset + 4); offset += 6; break; case keys.TIME_ZONE: length = buffer[offset++]; result.timeZone = buffer.toString("utf8", offset, offset + length); offset += length; break; case keys.CATALOG_NZ: length = buffer[offset++]; result.catalogNz = buffer.toString("utf8", offset, offset + length); offset += length; break; case keys.LC_TIME_NAMES: result.lcTimeNames = buffer.readUInt16LE(offset); offset += 2; break; case keys.CHARSET_DATABASE: result.schemaCharset = buffer.readUInt16LE(offset); offset += 2; break; case keys.TABLE_MAP_FOR_UPDATE: result.mapForUpdate1 = buffer.readUInt32LE(offset); result.mapForUpdate2 = buffer.readUInt32LE(offset + 4); offset += 8; break; case keys.MASTER_DATA_WRITTEN: result.masterDataWritten = buffer.readUInt32LE(offset); offset += 4; break; case keys.INVOKERS: length = buffer[offset++]; result.invokerUsername = buffer.toString( "utf8", offset, offset + length ); offset += length; length = buffer[offset++]; result.invokerHostname = buffer.toString( "utf8", offset, offset + length ); offset += length; break; case keys.UPDATED_DB_NAMES: length = buffer[offset++]; result.updatedDBs = []; for (; length; --length) { prevOffset = offset; while (buffer[offset++] && offset < buffer.length) { } result.updatedDBs.push( buffer.toString("utf8", prevOffset, offset - 1) ); } break; case keys.MICROSECONDS: result.microseconds = buffer.readInt16LE(offset) + (buffer[offset + 2] << 16); offset += 3; } } return result; }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/binlog_dump.js var require_binlog_dump2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/binlog_dump.js"(exports, module2) { "use strict"; var Command = require_command(); var Packets = require_packets(); var eventParsers = []; var BinlogEventHeader = class { constructor(packet) { this.timestamp = packet.readInt32(); this.eventType = packet.readInt8(); this.serverId = packet.readInt32(); this.eventSize = packet.readInt32(); this.logPos = packet.readInt32(); this.flags = packet.readInt16(); } }; var BinlogDump = class extends Command { constructor(opts) { super(); this.opts = opts; } start(packet, connection) { const newPacket = new Packets.BinlogDump(this.opts); connection.writePacket(newPacket.toPacket(1)); return BinlogDump.prototype.binlogData; } binlogData(packet) { if (packet.isEOF()) { this.emit("eof"); return null; } packet.readInt8(); const header = new BinlogEventHeader(packet); const EventParser = eventParsers[header.eventType]; let event; if (EventParser) { event = new EventParser(packet); } else { event = { name: "UNKNOWN" }; } event.header = header; this.emit("event", event); return BinlogDump.prototype.binlogData; } }; var RotateEvent = class { constructor(packet) { this.pposition = packet.readInt32(); packet.readInt32(); this.nextBinlog = packet.readString(); this.name = "RotateEvent"; } }; var FormatDescriptionEvent = class { constructor(packet) { this.binlogVersion = packet.readInt16(); this.serverVersion = packet.readString(50).replace(/\u0000.*/, ""); this.createTimestamp = packet.readInt32(); this.eventHeaderLength = packet.readInt8(); this.eventsLength = packet.readBuffer(); this.name = "FormatDescriptionEvent"; } }; var QueryEvent = class { constructor(packet) { const parseStatusVars = require_binlog_query_statusvars(); this.slaveProxyId = packet.readInt32(); this.executionTime = packet.readInt32(); const schemaLength = packet.readInt8(); this.errorCode = packet.readInt16(); const statusVarsLength = packet.readInt16(); const statusVars = packet.readBuffer(statusVarsLength); this.schema = packet.readString(schemaLength); packet.readInt8(); this.statusVars = parseStatusVars(statusVars); this.query = packet.readString(); this.name = "QueryEvent"; } }; var XidEvent = class { constructor(packet) { this.binlogVersion = packet.readInt16(); this.xid = packet.readInt64(); this.name = "XidEvent"; } }; eventParsers[2] = QueryEvent; eventParsers[4] = RotateEvent; eventParsers[15] = FormatDescriptionEvent; eventParsers[16] = XidEvent; module2.exports = BinlogDump; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/change_user.js var require_change_user2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/change_user.js"(exports, module2) { "use strict"; var Command = require_command(); var Packets = require_packets(); var ClientHandshake = require_client_handshake(); var CharsetToEncoding = require_charset_encodings(); var ChangeUser = class extends Command { constructor(options, callback) { super(); this.onResult = callback; this.user = options.user; this.password = options.password; this.database = options.database; this.passwordSha1 = options.passwordSha1; this.charsetNumber = options.charsetNumber; this.currentConfig = options.currentConfig; } start(packet, connection) { const newPacket = new Packets.ChangeUser({ flags: connection.config.clientFlags, user: this.user, database: this.database, charsetNumber: this.charsetNumber, password: this.password, passwordSha1: this.passwordSha1, authPluginData1: connection._handshakePacket.authPluginData1, authPluginData2: connection._handshakePacket.authPluginData2 }); this.currentConfig.user = this.user; this.currentConfig.password = this.password; this.currentConfig.database = this.database; this.currentConfig.charsetNumber = this.charsetNumber; connection.clientEncoding = CharsetToEncoding[this.charsetNumber]; connection._statements.reset(); connection.writePacket(newPacket.toPacket()); return ChangeUser.prototype.handshakeResult; } }; ChangeUser.prototype.handshakeResult = ClientHandshake.prototype.handshakeResult; ChangeUser.prototype.calculateNativePasswordAuthToken = ClientHandshake.prototype.calculateNativePasswordAuthToken; module2.exports = ChangeUser; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/quit.js var require_quit = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/quit.js"(exports, module2) { "use strict"; var Command = require_command(); var CommandCode = require_commands(); var Packet = require_packet(); var Quit = class extends Command { constructor(callback) { super(); this.done = callback; } start(packet, connection) { connection._closing = true; const quit = new Packet( 0, Buffer.from([1, 0, 0, 0, CommandCode.QUIT]), 0, 5 ); if (this.done) { this.done(); } connection.writePacket(quit); return null; } }; module2.exports = Quit; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/index.js var require_commands2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/commands/index.js"(exports, module2) { "use strict"; var ClientHandshake = require_client_handshake(); var ServerHandshake = require_server_handshake(); var Query = require_query2(); var Prepare = require_prepare(); var CloseStatement = require_close_statement2(); var Execute = require_execute2(); var Ping = require_ping(); var RegisterSlave = require_register_slave2(); var BinlogDump = require_binlog_dump2(); var ChangeUser = require_change_user2(); var Quit = require_quit(); module2.exports = { ClientHandshake, ServerHandshake, Query, Prepare, CloseStatement, Execute, Ping, RegisterSlave, BinlogDump, ChangeUser, Quit }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/ssl_profiles.js var require_ssl_profiles = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/constants/ssl_profiles.js"(exports) { "use strict"; exports["Amazon RDS"] = { ca: [ "-----BEGIN CERTIFICATE-----\nMIID9DCCAtygAwIBAgIBQjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUwOTExMzFaFw0y\nMDAzMDUwOTExMzFaMIGKMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEbMBkGA1UEAwwSQW1hem9uIFJE\nUyBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuD8nrZ8V\nu+VA8yVlUipCZIKPTDcOILYpUe8Tct0YeQQr0uyl018StdBsa3CjBgvwpDRq1HgF\nJi2N3+39+shCNspQeE6aYU+BHXhKhIIStt3r7gl/4NqYiDDMWKHxHq0nsGDFfArf\nAOcjZdJagOMqb3fF46flc8k2E7THTm9Sz4L7RY1WdABMuurpICLFE3oHcGdapOb9\nT53pQR+xpHW9atkcf3pf7gbO0rlKVSIoUenBlZipUlp1VZl/OD/E+TtRhDDNdI2J\nP/DSMM3aEsq6ZQkfbz/Ilml+Lx3tJYXUDmp+ZjzMPLk/+3beT8EhrwtcG3VPpvwp\nBIOqsqVVTvw/CwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw\nAwEB/zAdBgNVHQ4EFgQUTgLurD72FchM7Sz1BcGPnIQISYMwHwYDVR0jBBgwFoAU\nTgLurD72FchM7Sz1BcGPnIQISYMwDQYJKoZIhvcNAQEFBQADggEBAHZcgIio8pAm\nMjHD5cl6wKjXxScXKtXygWH2BoDMYBJF9yfyKO2jEFxYKbHePpnXB1R04zJSWAw5\n2EUuDI1pSBh9BA82/5PkuNlNeSTB3dXDD2PEPdzVWbSKvUB8ZdooV+2vngL0Zm4r\n47QPyd18yPHrRIbtBtHR/6CwKevLZ394zgExqhnekYKIqqEX41xsUV0Gm6x4vpjf\n2u6O/+YE2U+qyyxHE5Wd5oqde0oo9UUpFETJPVb6Q2cEeQib8PBAyi0i6KnF+kIV\nA9dY7IHSubtCK/i8wxMVqfd5GtbA8mmpeJFwnDvm9rBEsHybl08qlax9syEwsUYr\n/40NawZfTUU=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBRDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMDZaFw0y\nMDAzMDUyMjAzMDZaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1ub3J0aGVhc3QtMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAMmM2B4PfTXCZjbZMWiDPyxvk/eeNwIRJAhfzesiGUiLozX6CRy3rwC1ZOPV\nAcQf0LB+O8wY88C/cV+d4Q2nBDmnk+Vx7o2MyMh343r5rR3Na+4izd89tkQVt0WW\nvO21KRH5i8EuBjinboOwAwu6IJ+HyiQiM0VjgjrmEr/YzFPL8MgHD/YUHehqjACn\nC0+B7/gu7W4qJzBL2DOf7ub2qszGtwPE+qQzkCRDwE1A4AJmVE++/FLH2Zx78Egg\nfV1sUxPtYgjGH76VyyO6GNKM6rAUMD/q5mnPASQVIXgKbupr618bnH+SWHFjBqZq\nHvDGPMtiiWII41EmGUypyt5AbysCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFIiKM0Q6n1K4EmLxs3ZXxINbwEwR\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQBezGbE9Rw/k2e25iGjj5n8r+M3dlye8ORfCE/dijHtxqAKasXHgKX8I9Tw\nJkBiGWiuzqn7gO5MJ0nMMro1+gq29qjZnYX1pDHPgsRjUX8R+juRhgJ3JSHijRbf\n4qNJrnwga7pj94MhcLq9u0f6dxH6dXbyMv21T4TZMTmcFduf1KgaiVx1PEyJjC6r\nM+Ru+A0eM+jJ7uCjUoZKcpX8xkj4nmSnz9NMPog3wdOSB9cAW7XIc5mHa656wr7I\nWJxVcYNHTXIjCcng2zMKd1aCcl2KSFfy56sRfT7J5Wp69QSr+jq8KM55gw8uqAwi\nVPrXn2899T1rcTtFYFP16WXjGuc0\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBRTANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMTlaFw0y\nMDAzMDUyMjAzMTlaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1zb3V0aGVhc3QtMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBANaXElmSEYt/UtxHFsARFhSUahTf1KNJzR0Dmay6hqOXQuRVbKRwPd19u5vx\nDdF1sLT7D69IK3VDnUiQScaCv2Dpu9foZt+rLx+cpx1qiQd1UHrvqq8xPzQOqCdC\nRFStq6yVYZ69yfpfoI67AjclMOjl2Vph3ftVnqP0IgVKZdzeC7fd+umGgR9xY0Qr\nUbhd/lWdsbNvzK3f1TPWcfIKQnpvSt85PIEDJir6/nuJUKMtmJRwTymJf0i+JZ4x\n7dJa341p2kHKcHMgOPW7nJQklGBA70ytjUV6/qebS3yIugr/28mwReflg3TJzVDl\nEOvi6pqbqNbkMuEwGDCmEQIVqgkCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFAu93/4k5xbWOsgdCdn+/KdiRuit\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQBlcjSyscpPjf5+MgzMuAsCxByqUt+WFspwcMCpwdaBeHOPSQrXNqX2Sk6P\nkth6oCivA64trWo8tFMvPYlUA1FYVD5WpN0kCK+P5pD4KHlaDsXhuhClJzp/OP8t\npOyUr5109RHLxqoKB5J5m1XA7rgcFjnMxwBSWFe3/4uMk/+4T53YfCVXuc6QV3i7\nI/2LAJwFf//pTtt6fZenYfCsahnr2nvrNRNyAxcfvGZ/4Opn/mJtR6R/AjvQZHiR\nbkRNKF2GW0ueK5W4FkZVZVhhX9xh1Aj2Ollb+lbOqADaVj+AT3PoJPZ3MPQHKCXm\nxwG0LOLlRr/TfD6li1AfOVTAJXv9\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBRjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMjRaFw0y\nMDAzMDUyMjAzMjRaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1zb3V0aGVhc3QtMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAJqBAJutz69hFOh3BtLHZTbwE8eejGGKayn9hu98YMDPzWzGXWCmW+ZYWELA\ncY3cNWNF8K4FqKXFr2ssorBYim1UtYFX8yhydT2hMD5zgQ2sCGUpuidijuPA6zaq\nZ3tdhVR94f0q8mpwpv2zqR9PcqaGDx2VR1x773FupRPRo7mEW1vC3IptHCQlP/zE\n7jQiLl28bDIH2567xg7e7E9WnZToRnhlYdTaDaJsHTzi5mwILi4cihSok7Shv/ME\nhnukvxeSPUpaVtFaBhfBqq055ePq9I+Ns4KGreTKMhU0O9fkkaBaBmPaFgmeX/XO\nn2AX7gMouo3mtv34iDTZ0h6YCGkCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFIlQnY0KHYWn1jYumSdJYfwj/Nfw\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQA0wVU6/l41cTzHc4azc4CDYY2Wd90DFWiH9C/mw0SgToYfCJ/5Cfi0NT/Y\nPRnk3GchychCJgoPA/k9d0//IhYEAIiIDjyFVgjbTkKV3sh4RbdldKVOUB9kumz/\nZpShplsGt3z4QQiVnKfrAgqxWDjR0I0pQKkxXa6Sjkicos9LQxVtJ0XA4ieG1E7z\nzJr+6t80wmzxvkInSaWP3xNJK9azVRTrgQZQlvkbpDbExl4mNTG66VD3bAp6t3Wa\nB49//uDdfZmPkqqbX+hsxp160OH0rxJppwO3Bh869PkDnaPEd/Pxw7PawC+li0gi\nNRV8iCEx85aFxcyOhqn0WZOasxee\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/zCCAuegAwIBAgIBRzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMzFaFw0y\nMDAzMDUyMjAzMzFaMIGSMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEjMCEGA1UEAwwaQW1hem9uIFJE\nUyBldS1jZW50cmFsLTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQDFtP2dhSLuaPOI4ZrrPWsK4OY9ocQBp3yApH1KJYmI9wpQKZG/KCH2E6Oo7JAw\nQORU519r033T+FO2Z7pFPlmz1yrxGXyHpJs8ySx3Yo5S8ncDCdZJCLmtPiq/hahg\n5/0ffexMFUCQaYicFZsrJ/cStdxUV+tSw2JQLD7UxS9J97LQWUPyyG+ZrjYVTVq+\nzudnFmNSe4QoecXMhAFTGJFQXxP7nhSL9Ao5FGgdXy7/JWeWdQIAj8ku6cBDKPa6\nY6kP+ak+In+Lye8z9qsCD/afUozfWjPR2aA4JoIZVF8dNRShIMo8l0XfgfM2q0+n\nApZWZ+BjhIO5XuoUgHS3D2YFAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNV\nHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBRm4GsWIA/M6q+tK8WGHWDGh2gcyTAf\nBgNVHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOC\nAQEAHpMmeVQNqcxgfQdbDIi5UIy+E7zZykmtAygN1XQrvga9nXTis4kOTN6g5/+g\nHCx7jIXeNJzAbvg8XFqBN84Quqgpl/tQkbpco9Jh1HDs558D5NnZQxNqH5qXQ3Mm\nuPgCw0pYcPOa7bhs07i+MdVwPBsX27CFDtsgAIru8HvKxY1oTZrWnyIRo93tt/pk\nWuItVMVHjaQZVfTCow0aDUbte6Vlw82KjUFq+n2NMSCJDiDKsDDHT6BJc4AJHIq3\n/4Z52MSC9KMr0yAaaoWfW/yMEj9LliQauAgwVjArF4q78rxpfKTG9Rfd8U1BZANP\n7FrFMN0ThjfA1IvmOYcgskY5bQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMzVaFw0y\nMDAzMDUyMjAzMzVaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBldS13ZXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCx\nPdbqQ0HKRj79Pmocxvjc+P6i4Ux24kgFIl+ckiir1vzkmesc3a58gjrMlCksEObt\nYihs5IhzEq1ePT0gbfS9GYFp34Uj/MtPwlrfCBWG4d2TcrsKRHr1/EXUYhWqmdrb\nRhX8XqoRhVkbF/auzFSBhTzcGGvZpQ2KIaxRcQfcXlMVhj/pxxAjh8U4F350Fb0h\nnX1jw4/KvEreBL0Xb2lnlGTkwVxaKGSgXEnOgIyOFdOQc61vdome0+eeZsP4jqeR\nTGYJA9izJsRbe2YJxHuazD+548hsPlM3vFzKKEVURCha466rAaYAHy3rKur3HYQx\nYt+SoKcEz9PXuSGj96ejAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTebg//h2oeXbZjQ4uuoiuLYzuiPDAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nTikPaGeZasTPw+4RBemlsyPAjtFFQLo7ddaFdORLgdEysVf8aBqndvbA6MT/v4lj\nGtEtUdF59ZcbWOrVm+fBZ2h/jYJ59dYF/xzb09nyRbdMSzB9+mkSsnOMqluq5y8o\nDY/PfP2vGhEg/2ZncRC7nlQU1Dm8F4lFWEiQ2fi7O1cW852Vmbq61RIfcYsH/9Ma\nkpgk10VZ75b8m3UhmpZ/2uRY+JEHImH5WpcTJ7wNiPNJsciZMznGtrgOnPzYco8L\ncDleOASIZifNMQi9PKOJKvi0ITz0B/imr8KBsW0YjZVJ54HMa7W1lwugSM7aMAs+\nE3Sd5lS+SHwWaOCHwhOEVA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSTANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzNDBaFw0y\nMDAzMDUyMjAzNDBaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBzYS1lYXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCU\nX4OBnQ5xA6TLJAiFEI6l7bUWjoVJBa/VbMdCCSs2i2dOKmqUaXu2ix2zcPILj3lZ\nGMk3d/2zvTK/cKhcFrewHUBamTeVHdEmynhMQamqNmkM4ptYzFcvEUw1TGxHT4pV\nQ6gSN7+/AJewQvyHexHo8D0+LDN0/Wa9mRm4ixCYH2CyYYJNKaZt9+EZfNu+PPS4\n8iB0TWH0DgQkbWMBfCRgolLLitAZklZ4dvdlEBS7evN1/7ttBxUK6SvkeeSx3zBl\nww3BlXqc3bvTQL0A+RRysaVyFbvtp9domFaDKZCpMmDFAN/ntx215xmQdrSt+K3F\ncXdGQYHx5q410CAclGnbAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBT6iVWnm/uakS+tEX2mzIfw+8JL0zAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nFmDD+QuDklXn2EgShwQxV13+txPRuVdOSrutHhoCgMwFWCMtPPtBAKs6KPY7Guvw\nDpJoZSehDiOfsgMirjOWjvfkeWSNvKfjWTVneX7pZD9W5WPnsDBvTbCGezm+v87z\nb+ZM2ZMo98m/wkMcIEAgdSKilR2fuw8rLkAjhYFfs0A7tDgZ9noKwgHvoE4dsrI0\nKZYco6DlP/brASfHTPa2puBLN9McK3v+h0JaSqqm5Ro2Bh56tZkQh8AWy/miuDuK\n3+hNEVdxosxlkM1TPa1DGj0EzzK0yoeerXuH2HX7LlCrrxf6/wdKnjR12PMrLQ4A\npCqkcWw894z6bV9MAvKe6A==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBQzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMTU0MDRaFw0y\nMDAzMDUyMTU0MDRaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy1lYXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI\nUIuwh8NusKHk1SqPXcP7OqxY3S/M2ZyQWD3w7Bfihpyyy/fc1w0/suIpX3kbMhAV\n2ESwged2/2zSx4pVnjp/493r4luhSqQYzru78TuPt9bhJIJ51WXunZW2SWkisSaf\nUSYUzVN9ezR/bjXTumSUQaLIouJt3OHLX49s+3NAbUyOI8EdvgBQWD68H1epsC0n\nCI5s+pIktyOZ59c4DCDLQcXErQ+tNbDC++oct1ANd/q8p9URonYwGCGOBy7sbCYq\n9eVHh1Iy2M+SNXddVOGw5EuruvHoCIQyOz5Lz4zSuZA9dRbrfztNOpezCNYu6NKM\nn+hzcvdiyxv77uNm8EaxAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQSQG3TmMe6Sa3KufaPBa72v4QFDzAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nL/mOZfB3187xTmjOHMqN2G2oSKHBKiQLM9uv8+97qT+XR+TVsBT6b3yoPpMAGhHA\nPc7nxAF5gPpuzatx0OTLPcmYucFmfqT/1qA5WlgCnMNtczyNMH97lKFTNV7Njtek\njWEzAEQSyEWrkNpNlC4j6kMYyPzVXQeXUeZTgJ9FNnVZqmvfjip2N22tawMjrCn5\n7KN/zN65EwY2oO9XsaTwwWmBu3NrDdMbzJnbxoWcFWj4RBwanR1XjQOVNhDwmCOl\n/1Et13b8CPyj69PC8BOVU6cfTSx8WUVy0qvYOKHNY9Bqa5BDnIL3IVmUkeTlM1mt\nenRpyBj+Bk9rh/ICdiRKmA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzNDVaFw0y\nMDAzMDUyMjAzNDVaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy13ZXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDE\nDhw+uw/ycaiIhhyu2pXFRimq0DlB8cNtIe8hdqndH8TV/TFrljNgR8QdzOgZtZ9C\nzzQ2GRpInN/qJF6slEd6wO+6TaDBQkPY+07TXNt52POFUhdVkhJXHpE2BS7Xn6J7\n7RFAOeG1IZmc2DDt+sR1BgXzUqHslQGfFYNS0/MBO4P+ya6W7IhruB1qfa4HiYQS\ndbe4MvGWnv0UzwAqdR7OF8+8/5c58YXZIXCO9riYF2ql6KNSL5cyDPcYK5VK0+Q9\nVI6vuJHSMYcF7wLePw8jtBktqAFE/wbdZiIHhZvNyiNWPPNTGUmQbaJ+TzQEHDs5\n8en+/W7JKnPyBOkxxENbAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBS0nw/tFR9bCjgqWTPJkyy4oOD8bzAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nCXGAY3feAak6lHdqj6+YWjy6yyUnLK37bRxZDsyDVXrPRQaXRzPTzx79jvDwEb/H\nQ/bdQ7zQRWqJcbivQlwhuPJ4kWPUZgSt3JUUuqkMsDzsvj/bwIjlrEFDOdHGh0mi\neVIngFEjUXjMh+5aHPEF9BlQnB8LfVtKj18e15UDTXFa+xJPFxUR7wDzCfo4WI1m\nsUMG4q1FkGAZgsoyFPZfF8IVvgCuGdR8z30VWKklFxttlK0eGLlPAyIO0CQxPQlo\nsaNJrHf4tLOgZIWk+LpDhNd9Et5EzvJ3aURUsKY4pISPPF5WdvM9OE59bERwUErd\nnuOuQWQeeadMceZnauRzJQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzNTBaFw0y\nMDAzMDUyMjAzNTBaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy13ZXN0LTIgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDM\nH58SR48U6jyERC1vYTnub34smf5EQVXyzaTmspWGWGzT31NLNZGSDFaa7yef9kdO\nmzJsgebR5tXq6LdwlIoWkKYQ7ycUaadtVKVYdI40QcI3cHn0qLFlg2iBXmWp/B+i\nZ34VuVlCh31Uj5WmhaBoz8t/GRqh1V/aCsf3Wc6jCezH3QfuCjBpzxdOOHN6Ie2v\nxX09O5qmZTvMoRBAvPkxdaPg/Mi7fxueWTbEVk78kuFbF1jHYw8U1BLILIAhcqlq\nx4u8nl73t3O3l/soNUcIwUDK0/S+Kfqhwn9yQyPlhb4Wy3pfnZLJdkyHldktnQav\n9TB9u7KH5Lk0aAYslMLxAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBT8roM4lRnlFHWMPWRz0zkwFZog1jAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nJwrxwgwmPtcdaU7O7WDdYa4hprpOMamI49NDzmE0s10oGrqmLwZygcWU0jT+fJ+Y\npJe1w0CVfKaeLYNsOBVW3X4ZPmffYfWBheZiaiEflq/P6t7/Eg81gaKYnZ/x1Dfa\nsUYkzPvCkXe9wEz5zdUTOCptDt89rBR9CstL9vE7WYUgiVVmBJffWbHQLtfjv6OF\nNMb0QME981kGRzc2WhgP71YS2hHd1kXtsoYP1yTu4vThSKsoN4bkiHsaC1cRkLoy\n0fFA4wpB3WloMEvCDaUvvH1LZlBXTNlwi9KtcwD4tDxkkBt4tQczKLGpQ/nF/W9n\n8YDWk3IIc1sd0bkZqoau2Q==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBTDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTExMDYwMDA1NDZaFw0y\nMDAzMDUwMDA1NDZaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1ub3J0aGVhc3QtMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAKSwd+RVUzTRH0FgnbwoTK8TMm/zMT4+2BvALpAUe6YXbkisg2goycWuuWLg\njOpFBB3GtyvXZnkqi7MkDWUmj1a2kf8l2oLyoaZ+Hm9x/sV+IJzOqPvj1XVUGjP6\nyYYnPJmUYqvZeI7fEkIGdFkP2m4/sgsSGsFvpD9FK1bL1Kx2UDpYX0kHTtr18Zm/\n1oN6irqWALSmXMDydb8hE0FB2A1VFyeKE6PnoDj/Y5cPHwPPdEi6/3gkDkSaOG30\nrWeQfL3pOcKqzbHaWTxMphd0DSL/quZ64Nr+Ly65Q5PRcTrtr55ekOUziuqXwk+o\n9QpACMwcJ7ROqOznZTqTzSFVXFECAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFM6Nox/QWbhzWVvzoJ/y0kGpNPK+\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQCTkWBqNvyRf3Y/W21DwFx3oT/AIWrHt0BdGZO34tavummXemTH9LZ/mqv9\naljt6ZuDtf5DEQjdsAwXMsyo03ffnP7doWm8iaF1+Mui77ot0TmTsP/deyGwukvJ\ntkxX8bZjDh+EaNauWKr+CYnniNxCQLfFtXYJsfOdVBzK3xNL+Z3ucOQRhr2helWc\nCDQgwfhP1+3pRVKqHvWCPC4R3fT7RZHuRmZ38kndv476GxRntejh+ePffif78bFI\n3rIZCPBGobrrUMycafSbyXteoGca/kA+/IqrAPlk0pWQ4aEL0yTWN2h2dnjoD7oX\nbyIuL/g9AGRh97+ssn7D6bDRPTbW\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/TCCAuWgAwIBAgIBTTANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjA1MDMyMTI5MjJaFw0y\nMDAzMDUyMTI5MjJaMIGQMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEhMB8GA1UEAwwYQW1hem9uIFJE\nUyBhcC1zb3V0aC0xIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n06eWGLE0TeqL9kyWOLkS8q0fXO97z+xyBV3DKSB2lg2GkgBz3B98MkmkeB0SZy3G\nCe4uCpCPbFKiFEdiUclOlhZsrBuCeaimxLM3Ig2wuenElO/7TqgaYHYUbT3d+VQW\nGUbLn5GRZJZe1OAClYdOWm7A1CKpuo+cVV1vxbY2nGUQSJPpVn2sT9gnwvjdE60U\nJGYU/RLCTm8zmZBvlWaNIeKDnreIc4rKn6gUnJ2cQn1ryCVleEeyc3xjYDSrjgdn\nFLYGcp9mphqVT0byeQMOk0c7RHpxrCSA0V5V6/CreFV2LteK50qcDQzDSM18vWP/\np09FoN8O7QrtOeZJzH/lmwIDAQABo2YwZDAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0T\nAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU2i83QHuEl/d0keXF+69HNJph7cMwHwYD\nVR0jBBgwFoAUTgLurD72FchM7Sz1BcGPnIQISYMwDQYJKoZIhvcNAQELBQADggEB\nACqnH2VjApoDqoSQOky52QBwsGaj+xWYHW5Gm7EvCqvQuhWMkeBuD6YJmMvNyA9G\nI2lh6/o+sUk/RIsbYbxPRdhNPTOgDR9zsNRw6qxaHztq/CEC+mxDCLa3O1hHBaDV\nBmB3nCZb93BvO0EQSEk7aytKq/f+sjyxqOcs385gintdHGU9uM7gTZHnU9vByJsm\n/TL07Miq67X0NlhIoo3jAk+xHaeKJdxdKATQp0448P5cY20q4b8aMk1twcNaMvCP\ndG4M5doaoUA8OQ/0ukLLae/LBxLeTw04q1/a2SyFaVUX2Twbb1S3xVWwLA8vsyGr\nigXx7B5GgP+IHb6DTjPJAi0=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBTjANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjA4MTExOTU4NDVaFw0y\nMDAzMDUxOTU4NDVaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy1lYXN0LTIgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCp\nWnnUX7wM0zzstccX+4iXKJa9GR0a2PpvB1paEX4QRCgfhEdQWDaSqyrWNgdVCKkt\n1aQkWu5j6VAC2XIG7kKoonm1ZdBVyBLqW5lXNywlaiU9yhJkwo8BR+/OqgE+PLt/\nEO1mlN0PQudja/XkExCXTO29TG2j7F/O7hox6vTyHNHc0H88zS21uPuBE+jivViS\nyzj/BkyoQ85hnkues3f9R6gCGdc+J51JbZnmgzUkvXjAEuKhAm9JksVOxcOKUYe5\nERhn0U9zjzpfbAITIkul97VVa5IxskFFTHIPJbvRKHJkiF6wTJww/tc9wm+fSCJ1\n+DbQTGZgkQ3bJrqRN29/AgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSAHQzUYYZbepwKEMvGdHp8wzHnfDAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOCAQEA\nMbaEzSYZ+aZeTBxf8yi0ta8K4RdwEJsEmP6IhFFQHYUtva2Cynl4Q9tZg3RMsybT\n9mlnSQQlbN/wqIIXbkrcgFcHoXG9Odm/bDtUwwwDaiEhXVfeQom3G77QHOWMTCGK\nqadwuh5msrb17JdXZoXr4PYHDKP7j0ONfAyFNER2+uecblHfRSpVq5UeF3L6ZJb8\nfSw/GtAV6an+/0r+Qm+PiI2H5XuZ4GmRJYnGMhqWhBYrY7p3jtVnKcsh39wgfUnW\nAvZEZG/yhFyAZW0Essa39LiL5VSq14Y1DOj0wgnhSY/9WHxaAo1HB1T9OeZknYbD\nfl/EGSZ0TEvZkENrXcPlVA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/zCCAuegAwIBAgIBTzANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjA5MTUwMDEwMTFaFw0y\nMDAzMDUwMDEwMTFaMIGSMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEjMCEGA1UEAwwaQW1hem9uIFJE\nUyBjYS1jZW50cmFsLTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQCZYI/iQ6DrS3ny3t1EwX1wAD+3LMgh7Fd01EW5LIuaK2kYIIQpsVKhxLCit/V5\nAGc/1qiJS1Qz9ODLTh0Na6bZW6EakRzuHJLe32KJtoFYPC7Z09UqzXrpA/XL+1hM\nP0ZmCWsU7Nn/EmvfBp9zX3dZp6P6ATrvDuYaVFr+SA7aT3FXpBroqBS1fyzUPs+W\nc6zTR6+yc4zkHX0XQxC5RH6xjgpeRkoOajA/sNo7AQF7KlWmKHbdVF44cvvAhRKZ\nXaoVs/C4GjkaAEPTCbopYdhzg+KLx9eB2BQnYLRrIOQZtRfbQI2Nbj7p3VsRuOW1\ntlcks2w1Gb0YC6w6SuIMFkl1AgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNV\nHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBToYWxE1lawl6Ks6NsvpbHQ3GKEtzAf\nBgNVHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOC\nAQEAG/8tQ0ooi3hoQpa5EJz0/E5VYBsAz3YxA2HoIonn0jJyG16bzB4yZt4vNQMA\nKsNlQ1uwDWYL1nz63axieUUFIxqxl1KmwfhsmLgZ0Hd2mnTPIl2Hw3uj5+wdgGBg\nagnAZ0bajsBYgD2VGQbqjdk2Qn7Fjy3LEWIvGZx4KyZ99OJ2QxB7JOPdauURAtWA\nDKYkP4LLJxtj07DSzG8kuRWb9B47uqUD+eKDIyjfjbnzGtd9HqqzYFau7EX3HVD9\n9Qhnjl7bTZ6YfAEZ3nH2t3Vc0z76XfGh47rd0pNRhMV+xpok75asKf/lNh5mcUrr\nVKwflyMkQpSbDCmcdJ90N2xEXQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBUDANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjEwMTAxNzQ0NDJaFw0y\nMDAzMDUxNzQ0NDJaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBldS13ZXN0LTIgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDO\ncttLJfubB4XMMIGWNfJISkIdCMGJyOzLiMJaiWB5GYoXKhEl7YGotpy0qklwW3BQ\na0fmVdcCLX+dIuVQ9iFK+ZcK7zwm7HtdDTCHOCKeOh2IcnU4c/VIokFi6Gn8udM6\nN/Zi5M5OGpVwLVALQU7Yctsn3c95el6MdVx6mJiIPVu7tCVZn88Z2koBQ2gq9P4O\nSb249SHFqOb03lYDsaqy1NDsznEOhaRBw7DPJFpvmw1lA3/Y6qrExRI06H2VYR2i\n7qxwDV50N58fs10n7Ye1IOxTVJsgEA7X6EkRRXqYaM39Z76R894548WHfwXWjUsi\nMEX0RS0/t1GmnUQjvevDAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQBxmcuRSxERYCtNnSr5xNfySokHjAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOCAQEA\nUyCUQjsF3nUAABjfEZmpksTuUo07aT3KGYt+EMMFdejnBQ0+2lJJFGtT+CDAk1SD\nRSgfEBon5vvKEtlnTf9a3pv8WXOAkhfxnryr9FH6NiB8obISHNQNPHn0ljT2/T+I\nY6ytfRvKHa0cu3V0NXbJm2B4KEOt4QCDiFxUIX9z6eB4Kditwu05OgQh6KcogOiP\nJesWxBMXXGoDC1rIYTFO7szwDyOHlCcVXJDNsTJhc32oDWYdeIbW7o/5I+aQsrXZ\nC96HykZcgWzz6sElrQxUaT3IoMw/5nmw4uWKKnZnxgI9bY4fpQwMeBZ96iHfFxvH\nmqfEEuC7uUoPofXdBp2ObQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBUTANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNzA4MjUyMTM5MjZaFw0y\nMDAzMDUyMTM5MjZaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBldS13ZXN0LTMgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+\nxmlEC/3a4cJH+UPwXCE02lC7Zq5NHd0dn6peMeLN8agb6jW4VfSY0NydjRj2DJZ8\nK7wV6sub5NUGT1NuFmvSmdbNR2T59KX0p2dVvxmXHHtIpQ9Y8Aq3ZfhmC5q5Bqgw\ntMA1xayDi7HmoPX3R8kk9ktAZQf6lDeksCvok8idjTu9tiSpDiMwds5BjMsWfyjZ\nd13PTGGNHYVdP692BSyXzSP1Vj84nJKnciW8tAqwIiadreJt5oXyrCXi8ekUMs80\ncUTuGm3aA3Q7PB5ljJMPqz0eVddaiIvmTJ9O3Ez3Du/HpImyMzXjkFaf+oNXf/Hx\n/EW5jCRR6vEiXJcDRDS7AgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBRZ9mRtS5fHk3ZKhG20Oack4cAqMTAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOCAQEA\nF/u/9L6ExQwD73F/bhCw7PWcwwqsK1mypIdrjdIsu0JSgwWwGCXmrIspA3n3Dqxq\nsMhAJD88s9Em7337t+naar2VyLO63MGwjj+vA4mtvQRKq8ScIpiEc7xN6g8HUMsd\ngPG9lBGfNjuAZsrGJflrko4HyuSM7zHExMjXLH+CXcv/m3lWOZwnIvlVMa4x0Tz0\nA4fklaawryngzeEjuW6zOiYCzjZtPlP8Fw0SpzppJ8VpQfrZ751RDo4yudmPqoPK\n5EUe36L8U+oYBXnC5TlYs9bpVv9o5wJQI5qA9oQE2eFWxF1E0AyZ4V5sgGUBStaX\nBjDDWul0wSo7rt1Tq7XpnA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBTjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNzEyMDEwMDU1NDJaFw0y\nMDAzMDUwMDU1NDJaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1ub3J0aGVhc3QtMyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAMZtQNnm/XT19mTa10ftHLzg5UhajoI65JHv4TQNdGXdsv+CQdGYU49BJ9Eu\n3bYgiEtTzR2lQe9zGMvtuJobLhOWuavzp7IixoIQcHkFHN6wJ1CvqrxgvJfBq6Hy\nEuCDCiU+PPDLUNA6XM6Qx3IpHd1wrJkjRB80dhmMSpxmRmx849uFafhN+P1QybsM\nTI0o48VON2+vj+mNuQTyLMMP8D4odSQHjaoG+zyJfJGZeAyqQyoOUOFEyQaHC3TT\n3IDSNCQlpxb9LerbCoKu79WFBBq3CS5cYpg8/fsnV2CniRBFFUumBt5z4dhw9RJU\nqlUXXO1ZyzpGd+c5v6FtrfXtnIUCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFETv7ELNplYy/xTeIOInl6nzeiHg\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQCpKxOQcd0tEKb3OtsOY8q/MPwTyustGk2Rt7t9G68idADp8IytB7M0SDRo\nwWZqynEq7orQVKdVOanhEWksNDzGp0+FPAf/KpVvdYCd7ru3+iI+V4ZEp2JFdjuZ\nZz0PIjS6AgsZqE5Ri1J+NmfmjGZCPhsHnGZiBaenX6K5VRwwwmLN6xtoqrrfR5zL\nQfBeeZNJG6KiM3R/DxJ5rAa6Fz+acrhJ60L7HprhB7SFtj1RCijau3+ZwiGmUOMr\nyKlMv+VgmzSw7o4Hbxy1WVrA6zQsTHHSGf+vkQn2PHvnFMUEu/ZLbTDYFNmTLK91\nK6o4nMsEvhBKgo4z7H1EqqxXhvN2\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBDCCAuygAwIBAgIBTTANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNzEyMDYyMjQyMjdaFw0y\nMDAzMDQyMjQyMjdaMIGXMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEoMCYGA1UEAwwfQW1hem9uIFJE\nUyBwcmV2aWV3LXVzLWVhc3QtMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC\nAQoCggEBAMw0E8k8URanS0c/i1S7wzFf5+XC9H2bm+4pENdElGP5s9rVCybrzJaw\n6zZgVLpOFnS9mJ+sDHIMUexPjj0X4+r7wZ4+hPfy7Rmrgbt23IQwr+PIBxsKAVjj\niaQ3bSm5WQ79an5elfQqEDdZ13ckUcLBJDA8bUDthI8m7gnteGtx0M1D0VS5PDs9\ncf96QlBia9Lx3VcNo3cc0PzP30E4j3h/Ywlb0jXUgB6oVlTxK70BjD3kZa+2xlea\nvKmm4NqGVhPY7BWd4XNdbSYsPDeZ9HxHNWXZxoHcQ7vSU8RKYVPtoBK/zIp3eWOi\ngzZlm5vYPvlkYh2pshttPPVyhZqlEZ8CAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEG\nMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFI93K+FRhste6w3MiD+IK3Tc\ng/BsMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEB\nBQUAA4IBAQAs4RsC8MJVOvrlRi5sgKC9LJ4BvSrrbR5V8CdIEwlPqrVOSsU5t7Py\nj8CHoPUY/ya1azlBSO62BqdZxipFuAR06NdxNG2Gy0fGl71N2udxokwEPW+IEZ81\nG6JeX8HNFjnna8ehimz1VJDDW7qborhg3dCAgEWkgv5PDR9/zoUu6bbmHPV77zbx\nGq7Sybz5OiagC7Nj9N1WgjNXUEmlfY2DHXnJmIVgUGEVrBgu5tGcIU/bQCRznH1N\nJsBH0SalneCbSzMBhQdnzL+L5KOERibWAZvS6ebmomTBwa03kgo/T0DfEccgobTs\nrV6T9/8Vg9T18vEeqURL+LOGs7+lIKmN\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/TCCAuWgAwIBAgIBUjANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xODA5MjgxNzM0NTJaFw0y\nMDAzMDUxNzM0NTJaMIGQMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEhMB8GA1UEAwwYQW1hem9uIFJE\nUyBldS1ub3J0aC0xIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\nwvHfpoixHNy1jvcq/WNhXDHlsFVbEOX7mp01YQeK0wWqlpFvjs2HFJ1sRnnmyhdT\nsv4VQuXnQw2V2iFAO2HveDi8pcJ+eIXY+wloSVBytgYLTMcNpn5LmqIeyGO+Lr6p\nKUr78I4uE0mnabxyILA96CYrYtgwpLCtpEXSdSJPwOSK9nX9++molxLcJ5v4fiPS\nj46PETsbFoFdXXwYCdiJKpzO4zUAkKzzvzbF7cXg9R4noJuytjEKbluxugDHdnwl\nSctGZ3moju2I0OpPbJKUI3wHsUMtY5v15X74MOED5lbtaW5+/6JIERggve0b23Ni\n4nlYSt0Bb3z3Zwc83twCUwIDAQABo2YwZDAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0T\nAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU4stOy1OAFRyvZCSKNfCiPRD+rPowHwYD\nVR0jBBgwFoAUTgLurD72FchM7Sz1BcGPnIQISYMwDQYJKoZIhvcNAQELBQADggEB\nAHpRIlKh1fqbMHl0+VnJ/52XQy1F5gM2hnw3lYkOLsDyzj9W4V6D1v2EDgYW+ZVH\n0wWqo8m0jS6CDn14W2HqNlyXyHpJK3eh3088zxvJgKqzKS4ghNzafN7axwYIwRN6\n9rrhRWy9MaFHaSPKtgiuTxw9fOekqyJdO+OYpBVEp7KEEyEG9/W5xZcU64zGb6UT\n8/g4+5t+HlT0nYBMvt8HW7w2XbFBetfKKK4WaoPKloOMN+RLO/JgJ6pVWvxM8nhC\nPbVtr43OI1sQAXYk0an7aUDgXT98vGwovWNHI6lFCMGRG+WXhauLtKRsIr4hR1LV\nfES7Q9MWPzPYHQoKELF9Jhk=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZQxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSUwIwYDVQQDDBxBbWF6b24gUkRTIGFwLWVhc3QtMSBSb290IENBMB4XDTE5MDIx\nNzAyNDcwMFoXDTIyMDYwMTEyMDAwMFowgY8xCzAJBgNVBAYTAlVTMRMwEQYDVQQI\nDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMSIwIAYDVQQKDBlBbWF6b24g\nV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMSAwHgYDVQQD\nDBdBbWF6b24gUkRTIGFwLWVhc3QtMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAOcJAUofyJuBuPr5ISHi/Ha5ed8h3eGdzn4MBp6rytPOg9NVGRQs\nO93fNGCIKsUT6gPuk+1f1ncMTV8Y0Fdf4aqGWme+Khm3ZOP3V1IiGnVq0U2xiOmn\nSQ4Q7LoeQC4lC6zpoCHVJyDjZ4pAknQQfsXb77Togdt/tK5ahev0D+Q3gCwAoBoO\nDHKJ6t820qPi63AeGbJrsfNjLKiXlFPDUj4BGir4dUzjEeH7/hx37na1XG/3EcxP\n399cT5k7sY/CR9kctMlUyEEUNQOmhi/ly1Lgtihm3QfjL6K9aGLFNwX35Bkh9aL2\nF058u+n8DP/dPeKUAcJKiQZUmzuen5n57x8CAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFFlqgF4FQlb9yP6c+Q3E\nO3tXv+zOMB8GA1UdIwQYMBaAFK9T6sY/PBZVbnHcNcQXf58P4OuPMA0GCSqGSIb3\nDQEBCwUAA4IBAQDeXiS3v1z4jWAo1UvVyKDeHjtrtEH1Rida1eOXauFuEQa5tuOk\nE53Os4haZCW4mOlKjigWs4LN+uLIAe1aFXGo92nGIqyJISHJ1L+bopx/JmIbHMCZ\n0lTNJfR12yBma5VQy7vzeFku/SisKwX0Lov1oHD4MVhJoHbUJYkmAjxorcIHORvh\nI3Vj5XrgDWtLDPL8/Id/roul/L+WX5ir+PGScKBfQIIN2lWdZoqdsx8YWqhm/ikL\nC6qNieSwcvWL7C03ri0DefTQMY54r5wP33QU5hJ71JoaZI3YTeT0Nf+NRL4hM++w\nQ0veeNzBQXg1f/JxfeA39IDIX1kiCf71tGlT\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEDCCAvigAwIBAgIJAJF3HxEqKM4lMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJEUyBhcC1lYXN0LTEgUm9vdCBDQTAe\nFw0xOTAyMTcwMjQ2MTFaFw0yNDAyMTYwMjQ2MTFaMIGUMQswCQYDVQQGEwJVUzEQ\nMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UECgwZ\nQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEl\nMCMGA1UEAwwcQW1hem9uIFJEUyBhcC1lYXN0LTEgUm9vdCBDQTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBAOCVr1Yj5IW4XWa9QOLGJDSz4pqIM6BAbqQp\ngYvzIO4Lv8c8dEnuuuCY8M/zOrJ1iQJ3cDiKGa32HVBVcH+nUdXzw4Jq5jw0hsb6\n/WW2RD2aUe4jCkRD5wNzmeHM4gTgtMZnXNVHpELgKR4wVhSHEfWFTiMsZi35y8mj\nPL98Mz/m/nMnB/59EjMvcJMrsUljHO6B9BMEcvNkwvre9xza0BQWKyiVRcbOpoj1\nw4BPtYYZ+dW2QKw9AmYXwAmCLeATsxrHIJ/IbzS7obxv2QN2Eh4pJ3ghRCFv1XM9\nXVkm13oiCjj7jsxAwF7o+VggPl/GG+/Gwk+TLuaTFNAtROpPxL8CAwEAAaNjMGEw\nDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFK9T6sY/\nPBZVbnHcNcQXf58P4OuPMB8GA1UdIwQYMBaAFK9T6sY/PBZVbnHcNcQXf58P4OuP\nMA0GCSqGSIb3DQEBCwUAA4IBAQBBY+KATaT7ndYT3Ky0VWaiwNfyl1u3aDxr+MKP\nVeDhtOhlob5u0E+edOXUvEXd4A+ntS+U0HmwvtMXtQbQ2EJbsNRqZnS8KG9YB2Yc\nQ99auphW3wMjwHRtflLO5h14aa9SspqJJgcM1R7Z3pAYeq6bpBDxZSGrYtWI64q4\nh4i67qWAGDFcXSTW1kJ00GMlBCIGTeYiu8LYutdsDWzYKkeezJRjx9VR4w7A7e1G\nWmY4aUg/8aPxCioY2zEQKNl55Ghg6Dwy+6BxaV6RlV9r9EaSCai11p1bgS568WQn\n4WNQK36EGe37l2SOpDB6STrq57/rjREvmq803Ylg/Gf6qqzK\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECTCCAvGgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZUxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSYwJAYDVQQDDB1BbWF6b24gUkRTIG1lLXNvdXRoLTEgUm9vdCBDQTAeFw0xOTA1\nMTAyMTU4NDNaFw0yNTA2MDExMjAwMDBaMIGQMQswCQYDVQQGEwJVUzETMBEGA1UE\nCAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9u\nIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEhMB8GA1UE\nAwwYQW1hem9uIFJEUyBtZS1zb3V0aC0xIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC\nAQ8AMIIBCgKCAQEAudOYPZH+ihJAo6hNYMB5izPVBe3TYhnZm8+X3IoaaYiKtsp1\nJJhkTT0CEejYIQ58Fh4QrMUyWvU8qsdK3diNyQRoYLbctsBPgxBR1u07eUJDv38/\nC1JlqgHmMnMi4y68Iy7ymv50QgAMuaBqgEBRI1R6Lfbyrb2YvH5txjJyTVMwuCfd\nYPAtZVouRz0JxmnfsHyxjE+So56uOKTDuw++Ho4HhZ7Qveej7XB8b+PIPuroknd3\nFQB5RVbXRvt5ZcVD4F2fbEdBniF7FAF4dEiofVCQGQ2nynT7dZdEIPfPdH3n7ZmE\nlAOmwHQ6G83OsiHRBLnbp+QZRgOsjkHJxT20bQIDAQABo2YwZDAOBgNVHQ8BAf8E\nBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUOEVDM7VomRH4HVdA\nQvIMNq2tXOcwHwYDVR0jBBgwFoAU54cfDjgwBx4ycBH8+/r8WXdaiqYwDQYJKoZI\nhvcNAQELBQADggEBAHhvMssj+Th8IpNePU6RH0BiL6o9c437R3Q4IEJeFdYL+nZz\nPW/rELDPvLRUNMfKM+KzduLZ+l29HahxefejYPXtvXBlq/E/9czFDD4fWXg+zVou\nuDXhyrV4kNmP4S0eqsAP/jQHPOZAMFA4yVwO9hlqmePhyDnszCh9c1PfJSBh49+b\n4w7i/L3VBOMt8j3EKYvqz0gVfpeqhJwL4Hey8UbVfJRFJMJzfNHpePqtDRAY7yjV\nPYquRaV2ab/E+/7VFkWMM4tazYz/qsYA2jSH+4xDHvYk8LnsbcrF9iuidQmEc5sb\nFgcWaSKG4DJjcI5k7AJLWcXyTDt21Ci43LE+I9Q=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEjCCAvqgAwIBAgIJANew34ehz5l8MA0GCSqGSIb3DQEBCwUAMIGVMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEmMCQGA1UEAwwdQW1hem9uIFJEUyBtZS1zb3V0aC0xIFJvb3QgQ0Ew\nHhcNMTkwNTEwMjE0ODI3WhcNMjQwNTA4MjE0ODI3WjCBlTELMAkGA1UEBhMCVVMx\nEDAOBgNVBAcMB1NlYXR0bGUxEzARBgNVBAgMCldhc2hpbmd0b24xIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nJjAkBgNVBAMMHUFtYXpvbiBSRFMgbWUtc291dGgtMSBSb290IENBMIIBIjANBgkq\nhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp7BYV88MukcY+rq0r79+C8UzkT30fEfT\naPXbx1d6M7uheGN4FMaoYmL+JE1NZPaMRIPTHhFtLSdPccInvenRDIatcXX+jgOk\nUA6lnHQ98pwN0pfDUyz/Vph4jBR9LcVkBbe0zdoKKp+HGbMPRU0N2yNrog9gM5O8\ngkU/3O2csJ/OFQNnj4c2NQloGMUpEmedwJMOyQQfcUyt9CvZDfIPNnheUS29jGSw\nERpJe/AENu8Pxyc72jaXQuD+FEi2Ck6lBkSlWYQFhTottAeGvVFNCzKszCntrtqd\nrdYUwurYsLTXDHv9nW2hfDUQa0mhXf9gNDOBIVAZugR9NqNRNyYLHQIDAQABo2Mw\nYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU54cf\nDjgwBx4ycBH8+/r8WXdaiqYwHwYDVR0jBBgwFoAU54cfDjgwBx4ycBH8+/r8WXda\niqYwDQYJKoZIhvcNAQELBQADggEBAIIMTSPx/dR7jlcxggr+O6OyY49Rlap2laKA\neC/XI4ySP3vQkIFlP822U9Kh8a9s46eR0uiwV4AGLabcu0iKYfXjPkIprVCqeXV7\nny9oDtrbflyj7NcGdZLvuzSwgl9SYTJp7PVCZtZutsPYlbJrBPHwFABvAkMvRtDB\nhitIg4AESDGPoCl94sYHpfDfjpUDMSrAMDUyO6DyBdZH5ryRMAs3lGtsmkkNUrso\naTW6R05681Z0mvkRdb+cdXtKOSuDZPoe2wJJIaz3IlNQNSrB5TImMYgmt6iAsFhv\n3vfTSTKrZDNTJn4ybG6pq1zWExoXsktZPylJly6R3RBwV6nwqBM=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZQxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSUwIwYDVQQDDBxBbWF6b24gUkRTIEJldGEgUm9vdCAyMDE5IENBMB4XDTE5MDgy\nMDE3MTAwN1oXDTI0MDgxOTE3MzgyNlowgZkxCzAJBgNVBAYTAlVTMRMwEQYDVQQI\nDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMSIwIAYDVQQKDBlBbWF6b24g\nV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMSowKAYDVQQD\nDCFBbWF6b24gUkRTIEJldGEgdXMtZWFzdC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3\nDQEBAQUAA4IBDwAwggEKAoIBAQDTNCOlotQcLP8TP82U2+nk0bExVuuMVOgFeVMx\nvbUHZQeIj9ikjk+jm6eTDnnkhoZcmJiJgRy+5Jt69QcRbb3y3SAU7VoHgtraVbxF\nQDh7JEHI9tqEEVOA5OvRrDRcyeEYBoTDgh76ROco2lR+/9uCvGtHVrMCtG7BP7ZB\nsSVNAr1IIRZZqKLv2skKT/7mzZR2ivcw9UeBBTUf8xsfiYVBvMGoEsXEycjYdf6w\nWV+7XS7teNOc9UgsFNN+9AhIBc1jvee5E//72/4F8pAttAg/+mmPUyIKtekNJ4gj\nOAR2VAzGx1ybzWPwIgOudZFHXFduxvq4f1hIRPH0KbQ/gkRrAgMBAAGjZjBkMA4G\nA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTkvpCD\n6C43rar9TtJoXr7q8dkrrjAfBgNVHSMEGDAWgBStoQwVpbGx87fxB3dEGDqKKnBT\n4TANBgkqhkiG9w0BAQsFAAOCAQEAJd9fOSkwB3uVdsS+puj6gCER8jqmhd3g/J5V\nZjk9cKS8H0e8pq/tMxeJ8kpurPAzUk5RkCspGt2l0BSwmf3ahr8aJRviMX6AuW3/\ng8aKplTvq/WMNGKLXONa3Sq8591J+ce8gtOX/1rDKmFI4wQ/gUzOSYiT991m7QKS\nFr6HMgFuz7RNJbb3Fy5cnurh8eYWA7mMv7laiLwTNsaro5qsqErD5uXuot6o9beT\na+GiKinEur35tNxAr47ax4IRubuIzyfCrezjfKc5raVV2NURJDyKP0m0CCaffAxE\nqn2dNfYc3v1D8ypg3XjHlOzRo32RB04o8ALHMD9LSwsYDLpMag==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEDCCAvigAwIBAgIJAKFMXyltvuRdMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJEUyBCZXRhIFJvb3QgMjAxOSBDQTAe\nFw0xOTA4MTkxNzM4MjZaFw0yNDA4MTkxNzM4MjZaMIGUMQswCQYDVQQGEwJVUzEQ\nMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UECgwZ\nQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEl\nMCMGA1UEAwwcQW1hem9uIFJEUyBCZXRhIFJvb3QgMjAxOSBDQTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBAMkZdnIH9ndatGAcFo+DppGJ1HUt4x+zeO+0\nZZ29m0sfGetVulmTlv2d5b66e+QXZFWpcPQMouSxxYTW08TbrQiZngKr40JNXftA\natvzBqIImD4II0ZX5UEVj2h98qe/ypW5xaDN7fEa5e8FkYB1TEemPaWIbNXqchcL\ntV7IJPr3Cd7Z5gZJlmujIVDPpMuSiNaal9/6nT9oqN+JSM1fx5SzrU5ssg1Vp1vv\n5Xab64uOg7wCJRB9R2GC9XD04odX6VcxUAGrZo6LR64ZSifupo3l+R5sVOc5i8NH\nskdboTzU9H7+oSdqoAyhIU717PcqeDum23DYlPE2nGBWckE+eT8CAwEAAaNjMGEw\nDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFK2hDBWl\nsbHzt/EHd0QYOooqcFPhMB8GA1UdIwQYMBaAFK2hDBWlsbHzt/EHd0QYOooqcFPh\nMA0GCSqGSIb3DQEBCwUAA4IBAQAO/718k8EnOqJDx6wweUscGTGL/QdKXUzTVRAx\nJUsjNUv49mH2HQVEW7oxszfH6cPCaupNAddMhQc4C/af6GHX8HnqfPDk27/yBQI+\nyBBvIanGgxv9c9wBbmcIaCEWJcsLp3HzXSYHmjiqkViXwCpYfkoV3Ns2m8bp+KCO\ny9XmcCKRaXkt237qmoxoh2sGmBHk2UlQtOsMC0aUQ4d7teAJG0q6pbyZEiPyKZY1\nXR/UVxMJL0Q4iVpcRS1kaNCMfqS2smbLJeNdsan8pkw1dvPhcaVTb7CvjhJtjztF\nYfDzAI5794qMlWxwilKMmUvDlPPOTen8NNHkLwWvyFCH7Doh\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEFzCCAv+gAwIBAgICFSUwDQYJKoZIhvcNAQELBQAwgZcxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSgwJgYDVQQDDB9BbWF6b24gUkRTIFByZXZpZXcgUm9vdCAyMDE5IENBMB4XDTE5\nMDgyMTIyMzk0N1oXDTI0MDgyMTIyMjk0OVowgZwxCzAJBgNVBAYTAlVTMRMwEQYD\nVQQIDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMSIwIAYDVQQKDBlBbWF6\nb24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMS0wKwYD\nVQQDDCRBbWF6b24gUkRTIFByZXZpZXcgdXMtZWFzdC0yIDIwMTkgQ0EwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD0dB/U7qRnSf05wOi7m10Pa2uPMTJv\nr6U/3Y17a5prq5Zr4++CnSUYarG51YuIf355dKs+7Lpzs782PIwCmLpzAHKWzix6\npOaTQ+WZ0+vUMTxyqgqWbsBgSCyP7pVBiyqnmLC/L4az9XnscrbAX4pNaoJxsuQe\nmzBo6yofjQaAzCX69DuqxFkVTRQnVy7LCFkVaZtjNAftnAHJjVgQw7lIhdGZp9q9\nIafRt2gteihYfpn+EAQ/t/E4MnhrYs4CPLfS7BaYXBycEKC5Muj1l4GijNNQ0Efo\nxG8LSZz7SNgUvfVwiNTaqfLP3AtEAWiqxyMyh3VO+1HpCjT7uNBFtmF3AgMBAAGj\nZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQW\nBBQtinkdrj+0B2+qdXngV2tgHnPIujAfBgNVHSMEGDAWgBRp0xqULkNh/w2ZVzEI\no2RIY7O03TANBgkqhkiG9w0BAQsFAAOCAQEAtJdqbCxDeMc8VN1/RzCabw9BIL/z\n73Auh8eFTww/sup26yn8NWUkfbckeDYr1BrXa+rPyLfHpg06kwR8rBKyrs5mHwJx\nbvOzXD/5WTdgreB+2Fb7mXNvWhenYuji1MF+q1R2DXV3I05zWHteKX6Dajmx+Uuq\nYq78oaCBSV48hMxWlp8fm40ANCL1+gzQ122xweMFN09FmNYFhwuW+Ao+Vv90ZfQG\nPYwTvN4n/gegw2TYcifGZC2PNX74q3DH03DXe5fvNgRW5plgz/7f+9mS+YHd5qa9\ntYTPUvoRbi169ou6jicsMKUKPORHWhiTpSCWR1FMMIbsAcsyrvtIsuaGCQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEFjCCAv6gAwIBAgIJAMzYZJ+R9NBVMA0GCSqGSIb3DQEBCwUAMIGXMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEoMCYGA1UEAwwfQW1hem9uIFJEUyBQcmV2aWV3IFJvb3QgMjAxOSBD\nQTAeFw0xOTA4MjEyMjI5NDlaFw0yNDA4MjEyMjI5NDlaMIGXMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEoMCYGA1UEAwwfQW1hem9uIFJEUyBQcmV2aWV3IFJvb3QgMjAxOSBDQTCCASIw\nDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM7kkS6vjgKKQTPynC2NjdN5aPPV\nO71G0JJS/2ARVBVJd93JLiGovVJilfWYfwZCs4gTRSSjrUD4D4HyqCd6A+eEEtJq\nM0DEC7i0dC+9WNTsPszuB206Jy2IUmxZMIKJAA1NHSbIMjB+b6/JhbSUi7nKdbR/\nbrj83bF+RoSA+ogrgX7mQbxhmFcoZN9OGaJgYKsKWUt5Wqv627KkGodUK8mDepgD\nS3ZfoRQRx3iceETpcmHJvaIge6+vyDX3d9Z22jmvQ4AKv3py2CmU2UwuhOltFDwB\n0ddtb39vgwrJxaGfiMRHpEP1DfNLWHAnA69/pgZPwIggidS+iBPUhgucMp8CAwEA\nAaNjMGEwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE\nFGnTGpQuQ2H/DZlXMQijZEhjs7TdMB8GA1UdIwQYMBaAFGnTGpQuQ2H/DZlXMQij\nZEhjs7TdMA0GCSqGSIb3DQEBCwUAA4IBAQC3xz1vQvcXAfpcZlngiRWeqU8zQAMQ\nLZPCFNv7PVk4pmqX+ZiIRo4f9Zy7TrOVcboCnqmP/b/mNq0gVF4O+88jwXJZD+f8\n/RnABMZcnGU+vK0YmxsAtYU6TIb1uhRFmbF8K80HHbj9vSjBGIQdPCbvmR2zY6VJ\nBYM+w9U9hp6H4DVMLKXPc1bFlKA5OBTgUtgkDibWJKFOEPW3UOYwp9uq6pFoN0AO\nxMTldqWFsOF3bJIlvOY0c/1EFZXu3Ns6/oCP//Ap9vumldYMUZWmbK+gK33FPOXV\n8BQ6jNC29icv7lLDpRPwjibJBXX+peDR5UK4FdYcswWEB1Tix5X8dYu6\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgICVIYwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MDQxNzEz\nMDRaFw0yNDA4MjIxNzA4NTBaMIGVMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEmMCQGA1UEAwwdQW1h\nem9uIFJEUyBhcC1zb3V0aC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQDUYOz1hGL42yUCrcsMSOoU8AeD/3KgZ4q7gP+vAz1WnY9K/kim\neWN/2Qqzlo3+mxSFQFyD4MyV3+CnCPnBl9Sh1G/F6kThNiJ7dEWSWBQGAB6HMDbC\nBaAsmUc1UIz8sLTL3fO+S9wYhA63Wun0Fbm/Rn2yk/4WnJAaMZcEtYf6e0KNa0LM\np/kN/70/8cD3iz3dDR8zOZFpHoCtf0ek80QqTich0A9n3JLxR6g6tpwoYviVg89e\nqCjQ4axxOkWWeusLeTJCcY6CkVyFvDAKvcUl1ytM5AiaUkXblE7zDFXRM4qMMRdt\nlPm8d3pFxh0fRYk8bIKnpmtOpz3RIctDrZZxAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBT99wKJftD3jb4sHoHG\ni3uGlH6W6TAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAZ17hhr3dII3hUfuHQ1hPWGrpJOX/G9dLzkprEIcCidkmRYl+\nhu1Pe3caRMh/17+qsoEErmnVq5jNY9X1GZL04IZH8YbHc7iRHw3HcWAdhN8633+K\njYEB2LbJ3vluCGnCejq9djDb6alOugdLMJzxOkHDhMZ6/gYbECOot+ph1tQuZXzD\ntZ7prRsrcuPBChHlPjmGy8M9z8u+kF196iNSUGC4lM8vLkHM7ycc1/ZOwRq9aaTe\niOghbQQyAEe03MWCyDGtSmDfr0qEk+CHN+6hPiaL8qKt4s+V9P7DeK4iW08ny8Ox\nAVS7u0OK/5+jKMAMrKwpYrBydOjTUTHScocyNw==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBjCCAu6gAwIBAgIJAMc0ZzaSUK51MA0GCSqGSIb3DQEBCwUAMIGPMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJEUyBSb290IDIwMTkgQ0EwHhcNMTkw\nODIyMTcwODUwWhcNMjQwODIyMTcwODUwWjCBjzELMAkGA1UEBhMCVVMxEDAOBgNV\nBAcMB1NlYXR0bGUxEzARBgNVBAgMCldhc2hpbmd0b24xIjAgBgNVBAoMGUFtYXpv\nbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxIDAeBgNV\nBAMMF0FtYXpvbiBSRFMgUm9vdCAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEFAAOC\nAQ8AMIIBCgKCAQEArXnF/E6/Qh+ku3hQTSKPMhQQlCpoWvnIthzX6MK3p5a0eXKZ\noWIjYcNNG6UwJjp4fUXl6glp53Jobn+tWNX88dNH2n8DVbppSwScVE2LpuL+94vY\n0EYE/XxN7svKea8YvlrqkUBKyxLxTjh+U/KrGOaHxz9v0l6ZNlDbuaZw3qIWdD/I\n6aNbGeRUVtpM6P+bWIoxVl/caQylQS6CEYUk+CpVyJSkopwJlzXT07tMoDL5WgX9\nO08KVgDNz9qP/IGtAcRduRcNioH3E9v981QO1zt/Gpb2f8NqAjUUCUZzOnij6mx9\nMcZ+9cWX88CRzR0vQODWuZscgI08NvM69Fn2SQIDAQABo2MwYTAOBgNVHQ8BAf8E\nBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUc19g2LzLA5j0Kxc0LjZa\npmD/vB8wHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJKoZIhvcN\nAQELBQADggEBAHAG7WTmyjzPRIM85rVj+fWHsLIvqpw6DObIjMWokpliCeMINZFV\nynfgBKsf1ExwbvJNzYFXW6dihnguDG9VMPpi2up/ctQTN8tm9nDKOy08uNZoofMc\nNUZxKCEkVKZv+IL4oHoeayt8egtv3ujJM6V14AstMQ6SwvwvA93EP/Ug2e4WAXHu\ncbI1NAbUgVDqp+DRdfvZkgYKryjTWd/0+1fS8X1bBZVWzl7eirNVnHbSH2ZDpNuY\n0SBd8dj5F6ld3t58ydZbrTHze7JJOd8ijySAp4/kiu9UfZWuTPABzDa/DSdz9Dk/\nzPW4CXXvhLmE02TA9/HeCw3KEHIwicNuEfw=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICQ2QwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MDUxODQ2\nMjlaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBzYS1lYXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAMMvR+ReRnOzqJzoaPipNTt1Z2VA968jlN1+SYKUrYM3No+Vpz0H\nM6Tn0oYB66ByVsXiGc28ulsqX1HbHsxqDPwvQTKvO7SrmDokoAkjJgLocOLUAeld\n5AwvUjxGRP6yY90NV7X786MpnYb2Il9DIIaV9HjCmPt+rjy2CZjS0UjPjCKNfB8J\nbFjgW6GGscjeyGb/zFwcom5p4j0rLydbNaOr9wOyQrtt3ZQWLYGY9Zees/b8pmcc\nJt+7jstZ2UMV32OO/kIsJ4rMUn2r/uxccPwAc1IDeRSSxOrnFKhW3Cu69iB3bHp7\nJbawY12g7zshE4I14sHjv3QoXASoXjx4xgMCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFI1Fc/Ql2jx+oJPgBVYq\nccgP0pQ8MB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQB4VVVabVp70myuYuZ3vltQIWqSUMhkaTzehMgGcHjMf9iLoZ/I\n93KiFUSGnek5cRePyS9wcpp0fcBT3FvkjpUdCjVtdttJgZFhBxgTd8y26ImdDDMR\n4+BUuhI5msvjL08f+Vkkpu1GQcGmyFVPFOy/UY8iefu+QyUuiBUnUuEDd49Hw0Fn\n/kIPII6Vj82a2mWV/Q8e+rgN8dIRksRjKI03DEoP8lhPlsOkhdwU6Uz9Vu6NOB2Q\nLs1kbcxAc7cFSyRVJEhh12Sz9d0q/CQSTFsVJKOjSNQBQfVnLz1GwO/IieUEAr4C\njkTntH0r1LX5b/GwN4R887LvjAEdTbg1his7\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgIDAIkHMA0GCSqGSIb3DQEBCwUAMIGPMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEgMB4GA1UEAwwXQW1hem9uIFJEUyBSb290IDIwMTkgQ0EwHhcNMTkwOTA2MTc0\nMDIxWhcNMjQwODIyMTcwODUwWjCBlDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldh\nc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoMGUFtYXpvbiBXZWIg\nU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxJTAjBgNVBAMMHEFt\nYXpvbiBSRFMgdXMtd2VzdC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQDD2yzbbAl77OofTghDMEf624OvU0eS9O+lsdO0QlbfUfWa1Kd6\n0WkgjkLZGfSRxEHMCnrv4UPBSK/Qwn6FTjkDLgemhqBtAnplN4VsoDL+BkRX4Wwq\n/dSQJE2b+0hm9w9UMVGFDEq1TMotGGTD2B71eh9HEKzKhGzqiNeGsiX4VV+LJzdH\nuM23eGisNqmd4iJV0zcAZ+Gbh2zK6fqTOCvXtm7Idccv8vZZnyk1FiWl3NR4WAgK\nAkvWTIoFU3Mt7dIXKKClVmvssG8WHCkd3Xcb4FHy/G756UZcq67gMMTX/9fOFM/v\nl5C0+CHl33Yig1vIDZd+fXV1KZD84dEJfEvHAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBR+ap20kO/6A7pPxo3+\nT3CfqZpQWjAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAHCJky2tPjPttlDM/RIqExupBkNrnSYnOK4kr9xJ3sl8UF2DA\nPAnYsjXp3rfcjN/k/FVOhxwzi3cXJF/2Tjj39Bm/OEfYTOJDNYtBwB0VVH4ffa/6\ntZl87jaIkrxJcreeeHqYMnIxeN0b/kliyA+a5L2Yb0VPjt9INq34QDc1v74FNZ17\n4z8nr1nzg4xsOWu0Dbjo966lm4nOYIGBRGOKEkHZRZ4mEiMgr3YLkv8gSmeitx57\nZ6dVemNtUic/LVo5Iqw4n3TBS0iF2C1Q1xT/s3h+0SXZlfOWttzSluDvoMv5PvCd\npFjNn+aXLAALoihL1MJSsxydtsLjOBro5eK0Vw==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICOFAwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTAxNzQ2\nMjFaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1ub3J0aGVhc3QtMiAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAzU72e6XbaJbi4HjJoRNjKxzUEuChKQIt7k3CWzNnmjc5\n8I1MjCpa2W1iw1BYVysXSNSsLOtUsfvBZxi/1uyMn5ZCaf9aeoA9UsSkFSZBjOCN\nDpKPCmfV1zcEOvJz26+1m8WDg+8Oa60QV0ou2AU1tYcw98fOQjcAES0JXXB80P2s\n3UfkNcnDz+l4k7j4SllhFPhH6BQ4lD2NiFAP4HwoG6FeJUn45EPjzrydxjq6v5Fc\ncQ8rGuHADVXotDbEhaYhNjIrsPL+puhjWfhJjheEw8c4whRZNp6gJ/b6WEes/ZhZ\nh32DwsDsZw0BfRDUMgUn8TdecNexHUw8vQWeC181hwIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUwW9bWgkWkr0U\nlrOsq2kvIdrECDgwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAEugF0Gj7HVhX0ehPZoGRYRt3PBuI2YjfrrJRTZ9X5wc\n9T8oHmw07mHmNy1qqWvooNJg09bDGfB0k5goC2emDiIiGfc/kvMLI7u+eQOoMKj6\nmkfCncyRN3ty08Po45vTLBFZGUvtQmjM6yKewc4sXiASSBmQUpsMbiHRCL72M5qV\nobcJOjGcIdDTmV1BHdWT+XcjynsGjUqOvQWWhhLPrn4jWe6Xuxll75qlrpn3IrIx\nCRBv/5r7qbcQJPOgwQsyK4kv9Ly8g7YT1/vYBlR3cRsYQjccw5ceWUj2DrMVWhJ4\nprf+E3Aa4vYmLLOUUvKnDQ1k3RGNu56V0tonsQbfsaM=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECjCCAvKgAwIBAgICEzUwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTAyMDUy\nMjVaFw0yNDA4MjIxNzA4NTBaMIGXMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEoMCYGA1UEAwwfQW1h\nem9uIFJEUyBjYS1jZW50cmFsLTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBAOxHqdcPSA2uBjsCP4DLSlqSoPuQ/X1kkJLusVRKiQE2zayB\nviuCBt4VB9Qsh2rW3iYGM+usDjltGnI1iUWA5KHcvHszSMkWAOYWLiMNKTlg6LCp\nXnE89tvj5dIH6U8WlDvXLdjB/h30gW9JEX7S8supsBSci2GxEzb5mRdKaDuuF/0O\nqvz4YE04pua3iZ9QwmMFuTAOYzD1M72aOpj+7Ac+YLMM61qOtU+AU6MndnQkKoQi\nqmUN2A9IFaqHFzRlSdXwKCKUA4otzmz+/N3vFwjb5F4DSsbsrMfjeHMo6o/nb6Nh\nYDb0VJxxPee6TxSuN7CQJ2FxMlFUezcoXqwqXD0CAwEAAaNmMGQwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFDGGpon9WfIpsggE\nCxHq8hZ7E2ESMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqG\nSIb3DQEBCwUAA4IBAQAvpeQYEGZvoTVLgV9rd2+StPYykMsmFjWQcyn3dBTZRXC2\nlKq7QhQczMAOhEaaN29ZprjQzsA2X/UauKzLR2Uyqc2qOeO9/YOl0H3qauo8C/W9\nr8xqPbOCDLEXlOQ19fidXyyEPHEq5WFp8j+fTh+s8WOx2M7IuC0ANEetIZURYhSp\nxl9XOPRCJxOhj7JdelhpweX0BJDNHeUFi0ClnFOws8oKQ7sQEv66d5ddxqqZ3NVv\nRbCvCtEutQMOUMIuaygDlMn1anSM8N7Wndx8G6+Uy67AnhjGx7jw/0YPPxopEj6x\nJXP8j0sJbcT9K/9/fPVLNT25RvQ/93T2+IQL4Ca2\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICYpgwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTExNzMx\nNDhaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBldS13ZXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAMk3YdSZ64iAYp6MyyKtYJtNzv7zFSnnNf6vv0FB4VnfITTMmOyZ\nLXqKAT2ahZ00hXi34ewqJElgU6eUZT/QlzdIu359TEZyLVPwURflL6SWgdG01Q5X\nO++7fSGcBRyIeuQWs9FJNIIqK8daF6qw0Rl5TXfu7P9dBc3zkgDXZm2DHmxGDD69\n7liQUiXzoE1q2Z9cA8+jirDioJxN9av8hQt12pskLQumhlArsMIhjhHRgF03HOh5\ntvi+RCfihVOxELyIRTRpTNiIwAqfZxxTWFTgfn+gijTmd0/1DseAe82aYic8JbuS\nEMbrDduAWsqrnJ4GPzxHKLXX0JasCUcWyMECAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFPLtsq1NrwJXO13C9eHt\nsLY11AGwMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQAnWBKj5xV1A1mYd0kIgDdkjCwQkiKF5bjIbGkT3YEFFbXoJlSP\n0lZZ/hDaOHI8wbLT44SzOvPEEmWF9EE7SJzkvSdQrUAWR9FwDLaU427ALI3ngNHy\nlGJ2hse1fvSRNbmg8Sc9GBv8oqNIBPVuw+AJzHTacZ1OkyLZrz1c1QvwvwN2a+Jd\nvH0V0YIhv66llKcYDMUQJAQi4+8nbRxXWv6Gq3pvrFoorzsnkr42V3JpbhnYiK+9\nnRKd4uWl62KRZjGkfMbmsqZpj2fdSWMY1UGyN1k+kDmCSWYdrTRDP0xjtIocwg+A\nJ116n4hV/5mbA0BaPiS2krtv17YAeHABZcvz\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECjCCAvKgAwIBAgICV2YwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTExOTM2\nMjBaFw0yNDA4MjIxNzA4NTBaMIGXMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEoMCYGA1UEAwwfQW1h\nem9uIFJEUyBldS1jZW50cmFsLTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBAMEx54X2pHVv86APA0RWqxxRNmdkhAyp2R1cFWumKQRofoFv\nn+SPXdkpIINpMuEIGJANozdiEz7SPsrAf8WHyD93j/ZxrdQftRcIGH41xasetKGl\nI67uans8d+pgJgBKGb/Z+B5m+UsIuEVekpvgpwKtmmaLFC/NCGuSsJoFsRqoa6Gh\nm34W6yJoY87UatddCqLY4IIXaBFsgK9Q/wYzYLbnWM6ZZvhJ52VMtdhcdzeTHNW0\n5LGuXJOF7Ahb4JkEhoo6TS2c0NxB4l4MBfBPgti+O7WjR3FfZHpt18A6Zkq6A2u6\nD/oTSL6c9/3sAaFTFgMyL3wHb2YlW0BPiljZIqECAwEAAaNmMGQwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFOcAToAc6skWffJa\nTnreaswAfrbcMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqG\nSIb3DQEBCwUAA4IBAQA1d0Whc1QtspK496mFWfFEQNegLh0a9GWYlJm+Htcj5Nxt\nDAIGXb+8xrtOZFHmYP7VLCT5Zd2C+XytqseK/+s07iAr0/EPF+O2qcyQWMN5KhgE\ncXw2SwuP9FPV3i+YAm11PBVeenrmzuk9NrdHQ7TxU4v7VGhcsd2C++0EisrmquWH\nmgIfmVDGxphwoES52cY6t3fbnXmTkvENvR+h3rj+fUiSz0aSo+XZUGHPgvuEKM/W\nCBD9Smc9CBoBgvy7BgHRgRUmwtABZHFUIEjHI5rIr7ZvYn+6A0O6sogRfvVYtWFc\nqpyrW1YX8mD0VlJ8fGKM3G+aCOsiiPKDV/Uafrm+\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgICGAcwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTIxODE5\nNDRaFw0yNDA4MjIxNzA4NTBaMIGVMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEmMCQGA1UEAwwdQW1h\nem9uIFJEUyBldS1ub3J0aC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCiIYnhe4UNBbdBb/nQxl5giM0XoVHWNrYV5nB0YukA98+TPn9v\nAoj1RGYmtryjhrf01Kuv8SWO+Eom95L3zquoTFcE2gmxCfk7bp6qJJ3eHOJB+QUO\nXsNRh76fwDzEF1yTeZWH49oeL2xO13EAx4PbZuZpZBttBM5zAxgZkqu4uWQczFEs\nJXfla7z2fvWmGcTagX10O5C18XaFroV0ubvSyIi75ue9ykg/nlFAeB7O0Wxae88e\nuhiBEFAuLYdqWnsg3459NfV8Yi1GnaitTym6VI3tHKIFiUvkSiy0DAlAGV2iiyJE\nq+DsVEO4/hSINJEtII4TMtysOsYPpINqeEzRAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBRR0UpnbQyjnHChgmOc\nhnlc0PogzTAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAKJD4xVzSf4zSGTBJrmamo86jl1NHQxXUApAZuBZEc8tqC6TI\nT5CeoSr9CMuVC8grYyBjXblC4OsM5NMvmsrXl/u5C9dEwtBFjo8mm53rOOIm1fxl\nI1oYB/9mtO9ANWjkykuLzWeBlqDT/i7ckaKwalhLODsRDO73vRhYNjsIUGloNsKe\npxw3dzHwAZx4upSdEVG4RGCZ1D0LJ4Gw40OfD69hfkDfRVVxKGrbEzqxXRvovmDc\ntKLdYZO/6REoca36v4BlgIs1CbUXJGLSXUwtg7YXGLSVBJ/U0+22iGJmBSNcoyUN\ncjPFD9JQEhDDIYYKSGzIYpvslvGc4T5ISXFiuQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICZIEwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTIyMTMy\nMzJaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBldS13ZXN0LTIgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBALGiwqjiF7xIjT0Sx7zB3764K2T2a1DHnAxEOr+/EIftWKxWzT3u\nPFwS2eEZcnKqSdRQ+vRzonLBeNLO4z8aLjQnNbkizZMBuXGm4BqRm1Kgq3nlLDQn\n7YqdijOq54SpShvR/8zsO4sgMDMmHIYAJJOJqBdaus2smRt0NobIKc0liy7759KB\n6kmQ47Gg+kfIwxrQA5zlvPLeQImxSoPi9LdbRoKvu7Iot7SOa+jGhVBh3VdqndJX\n7tm/saj4NE375csmMETFLAOXjat7zViMRwVorX4V6AzEg1vkzxXpA9N7qywWIT5Y\nfYaq5M8i6vvLg0CzrH9fHORtnkdjdu1y+0MCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFFOhOx1yt3Z7mvGB9jBv\n2ymdZwiOMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQBehqY36UGDvPVU9+vtaYGr38dBbp+LzkjZzHwKT1XJSSUc2wqM\nhnCIQKilonrTIvP1vmkQi8qHPvDRtBZKqvz/AErW/ZwQdZzqYNFd+BmOXaeZWV0Q\noHtDzXmcwtP8aUQpxN0e1xkWb1E80qoy+0uuRqb/50b/R4Q5qqSfJhkn6z8nwB10\n7RjLtJPrK8igxdpr3tGUzfAOyiPrIDncY7UJaL84GFp7WWAkH0WG3H8Y8DRcRXOU\nmqDxDLUP3rNuow3jnGxiUY+gGX5OqaZg4f4P6QzOSmeQYs6nLpH0PiN00+oS1BbD\nbpWdZEttILPI+vAYkU4QuBKKDjJL6HbSd+cn\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgIDAIVCMA0GCSqGSIb3DQEBCwUAMIGPMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEgMB4GA1UEAwwXQW1hem9uIFJEUyBSb290IDIwMTkgQ0EwHhcNMTkwOTEzMTcw\nNjQxWhcNMjQwODIyMTcwODUwWjCBlDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldh\nc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoMGUFtYXpvbiBXZWIg\nU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxJTAjBgNVBAMMHEFt\nYXpvbiBSRFMgdXMtZWFzdC0yIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQDE+T2xYjUbxOp+pv+gRA3FO24+1zCWgXTDF1DHrh1lsPg5k7ht\n2KPYzNc+Vg4E+jgPiW0BQnA6jStX5EqVh8BU60zELlxMNvpg4KumniMCZ3krtMUC\nau1NF9rM7HBh+O+DYMBLK5eSIVt6lZosOb7bCi3V6wMLA8YqWSWqabkxwN4w0vXI\n8lu5uXXFRemHnlNf+yA/4YtN4uaAyd0ami9+klwdkZfkrDOaiy59haOeBGL8EB/c\ndbJJlguHH5CpCscs3RKtOOjEonXnKXldxarFdkMzi+aIIjQ8GyUOSAXHtQHb3gZ4\nnS6Ey0CMlwkB8vUObZU9fnjKJcL5QCQqOfwvAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQUPuRHohPxx4VjykmH\n6usGrLL1ETAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAUdR9Vb3y33Yj6X6KGtuthZ08SwjImVQPtknzpajNE5jOJAh8\nquvQnU9nlnMO85fVDU1Dz3lLHGJ/YG1pt1Cqq2QQ200JcWCvBRgdvH6MjHoDQpqZ\nHvQ3vLgOGqCLNQKFuet9BdpsHzsctKvCVaeBqbGpeCtt3Hh/26tgx0rorPLw90A2\nV8QSkZJjlcKkLa58N5CMM8Xz8KLWg3MZeT4DmlUXVCukqK2RGuP2L+aME8dOxqNv\nOnOz1zrL5mR2iJoDpk8+VE/eBDmJX40IJk6jBjWoxAO/RXq+vBozuF5YHN1ujE92\ntO8HItgTp37XT8bJBAiAnt5mxw+NLSqtxk2QdQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICY4kwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTMyMDEx\nNDJaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1zb3V0aGVhc3QtMSAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAr5u9OuLL/OF/fBNUX2kINJLzFl4DnmrhnLuSeSnBPgbb\nqddjf5EFFJBfv7IYiIWEFPDbDG5hoBwgMup5bZDbas+ZTJTotnnxVJTQ6wlhTmns\neHECcg2pqGIKGrxZfbQhlj08/4nNAPvyYCTS0bEcmQ1emuDPyvJBYDDLDU6AbCB5\n6Z7YKFQPTiCBblvvNzchjLWF9IpkqiTsPHiEt21sAdABxj9ityStV3ja/W9BfgxH\nwzABSTAQT6FbDwmQMo7dcFOPRX+hewQSic2Rn1XYjmNYzgEHisdUsH7eeXREAcTw\n61TRvaLH8AiOWBnTEJXPAe6wYfrcSd1pD0MXpoB62wIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUytwMiomQOgX5\nIchd+2lDWRUhkikwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBACf6lRDpfCD7BFRqiWM45hqIzffIaysmVfr+Jr+fBTjP\nuYe/ba1omSrNGG23bOcT9LJ8hkQJ9d+FxUwYyICQNWOy6ejicm4z0C3VhphbTPqj\nyjpt9nG56IAcV8BcRJh4o/2IfLNzC/dVuYJV8wj7XzwlvjysenwdrJCoLadkTr1h\neIdG6Le07sB9IxrGJL9e04afk37h7c8ESGSE4E+oS4JQEi3ATq8ne1B9DQ9SasXi\nIRmhNAaISDzOPdyLXi9N9V9Lwe/DHcja7hgLGYx3UqfjhLhOKwp8HtoZORixAmOI\nHfILgNmwyugAbuZoCazSKKBhQ0wgO0WZ66ZKTMG8Oho=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICUYkwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTYxODIx\nMTVaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyB1cy13ZXN0LTIgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBANCEZBZyu6yJQFZBJmSUZfSZd3Ui2gitczMKC4FLr0QzkbxY+cLa\nuVONIOrPt4Rwi+3h/UdnUg917xao3S53XDf1TDMFEYp4U8EFPXqCn/GXBIWlU86P\nPvBN+gzw3nS+aco7WXb+woTouvFVkk8FGU7J532llW8o/9ydQyDIMtdIkKTuMfho\nOiNHSaNc+QXQ32TgvM9A/6q7ksUoNXGCP8hDOkSZ/YOLiI5TcdLh/aWj00ziL5bj\npvytiMZkilnc9dLY9QhRNr0vGqL0xjmWdoEXz9/OwjmCihHqJq+20MJPsvFm7D6a\n2NKybR9U+ddrjb8/iyLOjURUZnj5O+2+OPcCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFEBxMBdv81xuzqcK5TVu\npHj+Aor8MB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQBZkfiVqGoJjBI37aTlLOSjLcjI75L5wBrwO39q+B4cwcmpj58P\n3sivv+jhYfAGEbQnGRzjuFoyPzWnZ1DesRExX+wrmHsLLQbF2kVjLZhEJMHF9eB7\nGZlTPdTzHErcnuXkwA/OqyXMpj9aghcQFuhCNguEfnROY9sAoK2PTfnTz9NJHL+Q\nUpDLEJEUfc0GZMVWYhahc0x38ZnSY2SKacIPECQrTI0KpqZv/P+ijCEcMD9xmYEb\njL4en+XKS1uJpw5fIU5Sj0MxhdGstH6S84iAE5J3GM3XHklGSFwwqPYvuTXvANH6\nuboynxRgSae59jIlAK6Jrr6GWMwQRbgcaAlW\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICEkYwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTYxOTUz\nNDdaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1zb3V0aGVhc3QtMiAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAufodI2Flker8q7PXZG0P0vmFSlhQDw907A6eJuF/WeMo\nGHnll3b4S6nC3oRS3nGeRMHbyU2KKXDwXNb3Mheu+ox+n5eb/BJ17eoj9HbQR1cd\ngEkIciiAltf8gpMMQH4anP7TD+HNFlZnP7ii3geEJB2GGXSxgSWvUzH4etL67Zmn\nTpGDWQMB0T8lK2ziLCMF4XAC/8xDELN/buHCNuhDpxpPebhct0T+f6Arzsiswt2j\n7OeNeLLZwIZvVwAKF7zUFjC6m7/VmTQC8nidVY559D6l0UhhU0Co/txgq3HVsMOH\nPbxmQUwJEKAzQXoIi+4uZzHFZrvov/nDTNJUhC6DqwIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUwaZpaCme+EiV\nM5gcjeHZSTgOn4owHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAAR6a2meCZuXO2TF9bGqKGtZmaah4pH2ETcEVUjkvXVz\nsl+ZKbYjrun+VkcMGGKLUjS812e7eDF726ptoku9/PZZIxlJB0isC/0OyixI8N4M\nNsEyvp52XN9QundTjkl362bomPnHAApeU0mRbMDRR2JdT70u6yAzGLGsUwMkoNnw\n1VR4XKhXHYGWo7KMvFrZ1KcjWhubxLHxZWXRulPVtGmyWg/MvE6KF+2XMLhojhUL\n+9jB3Fpn53s6KMx5tVq1x8PukHmowcZuAF8k+W4gk8Y68wIwynrdZrKRyRv6CVtR\nFZ8DeJgoNZT3y/GT254VqMxxfuy2Ccb/RInd16tEvVk=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICOYIwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTcyMDA1\nMjlaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1ub3J0aGVhc3QtMyAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEA4dMak8W+XW8y/2F6nRiytFiA4XLwePadqWebGtlIgyCS\nkbug8Jv5w7nlMkuxOxoUeD4WhI6A9EkAn3r0REM/2f0aYnd2KPxeqS2MrtdxxHw1\nxoOxk2x0piNSlOz6yog1idsKR5Wurf94fvM9FdTrMYPPrDabbGqiBMsZZmoHLvA3\nZ+57HEV2tU0Ei3vWeGIqnNjIekS+E06KhASxrkNU5vi611UsnYZlSi0VtJsH4UGV\nLhnHl53aZL0YFO5mn/fzuNG/51qgk/6EFMMhaWInXX49Dia9FnnuWXwVwi6uX1Wn\n7kjoHi5VtmC8ZlGEHroxX2DxEr6bhJTEpcLMnoQMqwIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUsUI5Cb3SWB8+\ngv1YLN/ABPMdxSAwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAJAF3E9PM1uzVL8YNdzb6fwJrxxqI2shvaMVmC1mXS+w\nG0zh4v2hBZOf91l1EO0rwFD7+fxoI6hzQfMxIczh875T6vUXePKVOCOKI5wCrDad\nzQbVqbFbdhsBjF4aUilOdtw2qjjs9JwPuB0VXN4/jY7m21oKEOcnpe36+7OiSPjN\nxngYewCXKrSRqoj3mw+0w/+exYj3Wsush7uFssX18av78G+ehKPIVDXptOCP/N7W\n8iKVNeQ2QGTnu2fzWsGUSvMGyM7yqT+h1ILaT//yQS8er511aHMLc142bD4D9VSy\nDgactwPDTShK/PXqhvNey9v/sKXm4XatZvwcc8KYlW4=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICcEUwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTgxNjU2\nMjBaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1ub3J0aGVhc3QtMSAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAndtkldmHtk4TVQAyqhAvtEHSMb6pLhyKrIFved1WO3S7\n+I+bWwv9b2W/ljJxLq9kdT43bhvzonNtI4a1LAohS6bqyirmk8sFfsWT3akb+4Sx\n1sjc8Ovc9eqIWJCrUiSvv7+cS7ZTA9AgM1PxvHcsqrcUXiK3Jd/Dax9jdZE1e15s\nBEhb2OEPE+tClFZ+soj8h8Pl2Clo5OAppEzYI4LmFKtp1X/BOf62k4jviXuCSst3\nUnRJzE/CXtjmN6oZySVWSe0rQYuyqRl6//9nK40cfGKyxVnimB8XrrcxUN743Vud\nQQVU0Esm8OVTX013mXWQXJHP2c0aKkog8LOga0vobQIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQULmoOS1mFSjj+\nsnUPx4DgS3SkLFYwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAAkVL2P1M2/G9GM3DANVAqYOwmX0Xk58YBHQu6iiQg4j\nb4Ky/qsZIsgT7YBsZA4AOcPKQFgGTWhe9pvhmXqoN3RYltN8Vn7TbUm/ZVDoMsrM\ngwv0+TKxW1/u7s8cXYfHPiTzVSJuOogHx99kBW6b2f99GbP7O1Sv3sLq4j6lVvBX\nFiacf5LAWC925nvlTzLlBgIc3O9xDtFeAGtZcEtxZJ4fnGXiqEnN4539+nqzIyYq\nnvlgCzyvcfRAxwltrJHuuRu6Maw5AGcd2Y0saMhqOVq9KYKFKuD/927BTrbd2JVf\n2sGWyuPZPCk3gq+5pCjbD0c6DkhcMGI6WwxvM5V/zSM=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICJDQwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTgxNzAz\nMTVaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBldS13ZXN0LTMgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAL9bL7KE0n02DLVtlZ2PL+g/BuHpMYFq2JnE2RgompGurDIZdjmh\n1pxfL3nT+QIVMubuAOy8InRfkRxfpxyjKYdfLJTPJG+jDVL+wDcPpACFVqoV7Prg\npVYEV0lc5aoYw4bSeYFhdzgim6F8iyjoPnObjll9mo4XsHzSoqJLCd0QC+VG9Fw2\nq+GDRZrLRmVM2oNGDRbGpGIFg77aRxRapFZa8SnUgs2AqzuzKiprVH5i0S0M6dWr\ni+kk5epmTtkiDHceX+dP/0R1NcnkCPoQ9TglyXyPdUdTPPRfKCq12dftqll+u4mV\nARdN6WFjovxax8EAP2OAUTi1afY+1JFMj+sCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFLfhrbrO5exkCVgxW0x3\nY2mAi8lNMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQAigQ5VBNGyw+OZFXwxeJEAUYaXVoP/qrhTOJ6mCE2DXUVEoJeV\nSxScy/TlFA9tJXqmit8JH8VQ/xDL4ubBfeMFAIAo4WzNWDVoeVMqphVEcDWBHsI1\nAETWzfsapRS9yQekOMmxg63d/nV8xewIl8aNVTHdHYXMqhhik47VrmaVEok1UQb3\nO971RadLXIEbVd9tjY5bMEHm89JsZDnDEw1hQXBb67Elu64OOxoKaHBgUH8AZn/2\nzFsL1ynNUjOhCSAA15pgd1vjwc0YsBbAEBPcHBWYBEyME6NLNarjOzBl4FMtATSF\nwWCKRGkvqN8oxYhwR2jf2rR5Mu4DWkK5Q8Ep\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICJVUwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTkxODE2\nNTNaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyB1cy1lYXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAM3i/k2u6cqbMdcISGRvh+m+L0yaSIoOXjtpNEoIftAipTUYoMhL\nInXGlQBVA4shkekxp1N7HXe1Y/iMaPEyb3n+16pf3vdjKl7kaSkIhjdUz3oVUEYt\ni8Z/XeJJ9H2aEGuiZh3kHixQcZczn8cg3dA9aeeyLSEnTkl/npzLf//669Ammyhs\nXcAo58yvT0D4E0D/EEHf2N7HRX7j/TlyWvw/39SW0usiCrHPKDLxByLojxLdHzso\nQIp/S04m+eWn6rmD+uUiRteN1hI5ncQiA3wo4G37mHnUEKo6TtTUh+sd/ku6a8HK\nglMBcgqudDI90s1OpuIAWmuWpY//8xEG2YECAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFPqhoWZcrVY9mU7tuemR\nRBnQIj1jMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQB6zOLZ+YINEs72heHIWlPZ8c6WY8MDU+Be5w1M+BK2kpcVhCUK\nPJO4nMXpgamEX8DIiaO7emsunwJzMSvavSPRnxXXTKIc0i/g1EbiDjnYX9d85DkC\nE1LaAUCmCZBVi9fIe0H2r9whIh4uLWZA41oMnJx/MOmo3XyMfQoWcqaSFlMqfZM4\n0rNoB/tdHLNuV4eIdaw2mlHxdWDtF4oH+HFm+2cVBUVC1jXKrFv/euRVtsTT+A6i\nh2XBHKxQ1Y4HgAn0jACP2QSPEmuoQEIa57bEKEcZsBR8SDY6ZdTd2HLRIApcCOSF\nMRM8CKLeF658I0XgF8D5EsYoKPsA+74Z+jDH\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF\nADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6\nb24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL\nMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv\nb3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj\nca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM\n9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw\nIFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6\nVOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L\n93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm\njgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC\nAYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA\nA4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI\nU5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs\nN+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv\no/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU\n5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy\nrqXRfboQnoZsG4q5WTP468SQvvG5\n-----END CERTIFICATE-----\n" ] }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/connection_config.js var require_connection_config = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/connection_config.js"(exports, module2) { "use strict"; var { URL: URL2 } = require("url"); var ClientConstants = require_client(); var Charsets = require_charsets(); var SSLProfiles = null; var validOptions = { authPlugins: 1, authSwitchHandler: 1, bigNumberStrings: 1, charset: 1, charsetNumber: 1, compress: 1, connectAttributes: 1, connectTimeout: 1, database: 1, dateStrings: 1, debug: 1, decimalNumbers: 1, enableKeepAlive: 1, flags: 1, host: 1, insecureAuth: 1, isServer: 1, keepAliveInitialDelay: 1, localAddress: 1, maxPreparedStatements: 1, multipleStatements: 1, namedPlaceholders: 1, nestTables: 1, password: 1, passwordSha1: 1, pool: 1, port: 1, queryFormat: 1, rowsAsArray: 1, socketPath: 1, ssl: 1, stream: 1, stringifyObjects: 1, supportBigNumbers: 1, timezone: 1, trace: 1, typeCast: 1, uri: 1, user: 1, connectionLimit: 1, Promise: 1, queueLimit: 1, waitForConnections: 1 }; var ConnectionConfig = class { constructor(options) { if (typeof options === "string") { options = ConnectionConfig.parseUrl(options); } else if (options && options.uri) { const uriOptions = ConnectionConfig.parseUrl(options.uri); for (const key in uriOptions) { if (!Object.prototype.hasOwnProperty.call(uriOptions, key)) continue; if (options[key]) continue; options[key] = uriOptions[key]; } } for (const key in options) { if (!Object.prototype.hasOwnProperty.call(options, key)) continue; if (validOptions[key] !== 1) { console.error( `Ignoring invalid configuration option passed to Connection: ${key}. This is currently a warning, but in future versions of MySQL2, an error will be thrown if you pass an invalid configuration option to a Connection` ); } } this.isServer = options.isServer; this.stream = options.stream; this.host = options.host || "localhost"; this.port = options.port || 3306; this.localAddress = options.localAddress; this.socketPath = options.socketPath; this.user = options.user || void 0; this.password = options.password || void 0; this.passwordSha1 = options.passwordSha1 || void 0; this.database = options.database; this.connectTimeout = isNaN(options.connectTimeout) ? 10 * 1e3 : options.connectTimeout; this.insecureAuth = options.insecureAuth || false; this.supportBigNumbers = options.supportBigNumbers || false; this.bigNumberStrings = options.bigNumberStrings || false; this.decimalNumbers = options.decimalNumbers || false; this.dateStrings = options.dateStrings || false; this.debug = options.debug; this.trace = options.trace !== false; this.stringifyObjects = options.stringifyObjects || false; this.enableKeepAlive = !!options.enableKeepAlive; this.keepAliveInitialDelay = options.keepAliveInitialDelay || 0; if (options.timezone && !/^(?:local|Z|[ +-]\d\d:\d\d)$/.test(options.timezone)) { console.error( `Ignoring invalid timezone passed to Connection: ${options.timezone}. This is currently a warning, but in future versions of MySQL2, an error will be thrown if you pass an invalid configuration option to a Connection` ); this.timezone = "Z"; } else { this.timezone = options.timezone || "local"; } this.queryFormat = options.queryFormat; this.pool = options.pool || void 0; this.ssl = typeof options.ssl === "string" ? ConnectionConfig.getSSLProfile(options.ssl) : options.ssl || false; this.multipleStatements = options.multipleStatements || false; this.rowsAsArray = options.rowsAsArray || false; this.namedPlaceholders = options.namedPlaceholders || false; this.nestTables = options.nestTables === void 0 ? void 0 : options.nestTables; this.typeCast = options.typeCast === void 0 ? true : options.typeCast; if (this.timezone[0] === " ") { this.timezone = `+${this.timezone.substr(1)}`; } if (this.ssl) { if (typeof this.ssl !== "object") { throw new TypeError( `SSL profile must be an object, instead it's a ${typeof this.ssl}` ); } this.ssl.rejectUnauthorized = this.ssl.rejectUnauthorized !== false; } this.maxPacketSize = 0; this.charsetNumber = options.charset ? ConnectionConfig.getCharsetNumber(options.charset) : options.charsetNumber || Charsets.UTF8MB4_UNICODE_CI; this.compress = options.compress || false; this.authPlugins = options.authPlugins; this.authSwitchHandler = options.authSwitchHandler; this.clientFlags = ConnectionConfig.mergeFlags( ConnectionConfig.getDefaultFlags(options), options.flags || "" ); this.connectAttributes = options.connectAttributes; this.maxPreparedStatements = options.maxPreparedStatements || 16e3; } static mergeFlags(default_flags, user_flags) { let flags = 0, i2; if (!Array.isArray(user_flags)) { user_flags = String(user_flags || "").toUpperCase().split(/\s*,+\s*/); } for (i2 in default_flags) { if (user_flags.indexOf(`-${default_flags[i2]}`) >= 0) { continue; } flags |= ClientConstants[default_flags[i2]] || 0; } for (i2 in user_flags) { if (user_flags[i2][0] === "-") { continue; } if (default_flags.indexOf(user_flags[i2]) >= 0) { continue; } flags |= ClientConstants[user_flags[i2]] || 0; } return flags; } static getDefaultFlags(options) { const defaultFlags = [ "LONG_PASSWORD", "FOUND_ROWS", "LONG_FLAG", "CONNECT_WITH_DB", "ODBC", "LOCAL_FILES", "IGNORE_SPACE", "PROTOCOL_41", "IGNORE_SIGPIPE", "TRANSACTIONS", "RESERVED", "SECURE_CONNECTION", "MULTI_RESULTS", "TRANSACTIONS", "SESSION_TRACK" ]; if (options && options.multipleStatements) { defaultFlags.push("MULTI_STATEMENTS"); } defaultFlags.push("PLUGIN_AUTH"); defaultFlags.push("PLUGIN_AUTH_LENENC_CLIENT_DATA"); if (options && options.connectAttributes) { defaultFlags.push("CONNECT_ATTRS"); } return defaultFlags; } static getCharsetNumber(charset) { const num = Charsets[charset.toUpperCase()]; if (num === void 0) { throw new TypeError(`Unknown charset '${charset}'`); } return num; } static getSSLProfile(name) { if (!SSLProfiles) { SSLProfiles = require_ssl_profiles(); } const ssl = SSLProfiles[name]; if (ssl === void 0) { throw new TypeError(`Unknown SSL profile '${name}'`); } return ssl; } static parseUrl(url) { const parsedUrl = new URL2(url); const options = { host: parsedUrl.hostname, port: parsedUrl.port, database: parsedUrl.pathname.substr(1), user: parsedUrl.username, password: parsedUrl.password }; parsedUrl.searchParams.forEach((value, key) => { try { options[key] = JSON.parse(value); } catch (err) { options[key] = value; } }); return options; } }; module2.exports = ConnectionConfig; } }); // ../../node_modules/.pnpm/lru-cache@7.18.3/node_modules/lru-cache/index.js var require_lru_cache2 = __commonJS({ "../../node_modules/.pnpm/lru-cache@7.18.3/node_modules/lru-cache/index.js"(exports, module2) { var perf = typeof performance === "object" && performance && typeof performance.now === "function" ? performance : Date; var hasAbortController = typeof AbortController === "function"; var AC = hasAbortController ? AbortController : class AbortController { constructor() { this.signal = new AS(); } abort(reason = new Error("This operation was aborted")) { this.signal.reason = this.signal.reason || reason; this.signal.aborted = true; this.signal.dispatchEvent({ type: "abort", target: this.signal }); } }; var hasAbortSignal = typeof AbortSignal === "function"; var hasACAbortSignal = typeof AC.AbortSignal === "function"; var AS = hasAbortSignal ? AbortSignal : hasACAbortSignal ? AC.AbortController : class AbortSignal { constructor() { this.reason = void 0; this.aborted = false; this._listeners = []; } dispatchEvent(e2) { if (e2.type === "abort") { this.aborted = true; this.onabort(e2); this._listeners.forEach((f4) => f4(e2), this); } } onabort() { } addEventListener(ev, fn) { if (ev === "abort") { this._listeners.push(fn); } } removeEventListener(ev, fn) { if (ev === "abort") { this._listeners = this._listeners.filter((f4) => f4 !== fn); } } }; var warned = /* @__PURE__ */ new Set(); var deprecatedOption = (opt, instead) => { const code = `LRU_CACHE_OPTION_${opt}`; if (shouldWarn(code)) { warn(code, `${opt} option`, `options.${instead}`, LRUCache); } }; var deprecatedMethod = (method, instead) => { const code = `LRU_CACHE_METHOD_${method}`; if (shouldWarn(code)) { const { prototype } = LRUCache; const { get } = Object.getOwnPropertyDescriptor(prototype, method); warn(code, `${method} method`, `cache.${instead}()`, get); } }; var deprecatedProperty = (field, instead) => { const code = `LRU_CACHE_PROPERTY_${field}`; if (shouldWarn(code)) { const { prototype } = LRUCache; const { get } = Object.getOwnPropertyDescriptor(prototype, field); warn(code, `${field} property`, `cache.${instead}`, get); } }; var emitWarning = (...a) => { typeof process === "object" && process && typeof process.emitWarning === "function" ? process.emitWarning(...a) : console.error(...a); }; var shouldWarn = (code) => !warned.has(code); var warn = (code, what, instead, fn) => { warned.add(code); const msg = `The ${what} is deprecated. Please use ${instead} instead.`; // emitWarning(msg, "DeprecationWarning", code, fn); }; var isPosInt = (n) => n && n === Math.floor(n) && n > 0 && isFinite(n); var getUintArray = (max) => !isPosInt(max) ? null : max <= Math.pow(2, 8) ? Uint8Array : max <= Math.pow(2, 16) ? Uint16Array : max <= Math.pow(2, 32) ? Uint32Array : max <= Number.MAX_SAFE_INTEGER ? ZeroArray : null; var ZeroArray = class extends Array { constructor(size) { super(size); this.fill(0); } }; var Stack = class { constructor(max) { if (max === 0) { return []; } const UintArray = getUintArray(max); this.heap = new UintArray(max); this.length = 0; } push(n) { this.heap[this.length++] = n; } pop() { return this.heap[--this.length]; } }; var LRUCache = class { constructor(options = {}) { const { max = 0, ttl, ttlResolution = 1, ttlAutopurge, updateAgeOnGet, updateAgeOnHas, allowStale, dispose, disposeAfter, noDisposeOnSet, noUpdateTTL, maxSize = 0, maxEntrySize = 0, sizeCalculation, fetchMethod, fetchContext, noDeleteOnFetchRejection, noDeleteOnStaleGet, allowStaleOnFetchRejection, allowStaleOnFetchAbort, ignoreFetchAbort } = options; const { length, maxAge, stale } = options instanceof LRUCache ? {} : options; if (max !== 0 && !isPosInt(max)) { throw new TypeError("max option must be a nonnegative integer"); } const UintArray = max ? getUintArray(max) : Array; if (!UintArray) { throw new Error("invalid max value: " + max); } this.max = max; this.maxSize = maxSize; this.maxEntrySize = maxEntrySize || this.maxSize; this.sizeCalculation = sizeCalculation || length; if (this.sizeCalculation) { if (!this.maxSize && !this.maxEntrySize) { throw new TypeError( "cannot set sizeCalculation without setting maxSize or maxEntrySize" ); } if (typeof this.sizeCalculation !== "function") { throw new TypeError("sizeCalculation set to non-function"); } } this.fetchMethod = fetchMethod || null; if (this.fetchMethod && typeof this.fetchMethod !== "function") { throw new TypeError( "fetchMethod must be a function if specified" ); } this.fetchContext = fetchContext; if (!this.fetchMethod && fetchContext !== void 0) { throw new TypeError( "cannot set fetchContext without fetchMethod" ); } this.keyMap = /* @__PURE__ */ new Map(); this.keyList = new Array(max).fill(null); this.valList = new Array(max).fill(null); this.next = new UintArray(max); this.prev = new UintArray(max); this.head = 0; this.tail = 0; this.free = new Stack(max); this.initialFill = 1; this.size = 0; if (typeof dispose === "function") { this.dispose = dispose; } if (typeof disposeAfter === "function") { this.disposeAfter = disposeAfter; this.disposed = []; } else { this.disposeAfter = null; this.disposed = null; } this.noDisposeOnSet = !!noDisposeOnSet; this.noUpdateTTL = !!noUpdateTTL; this.noDeleteOnFetchRejection = !!noDeleteOnFetchRejection; this.allowStaleOnFetchRejection = !!allowStaleOnFetchRejection; this.allowStaleOnFetchAbort = !!allowStaleOnFetchAbort; this.ignoreFetchAbort = !!ignoreFetchAbort; if (this.maxEntrySize !== 0) { if (this.maxSize !== 0) { if (!isPosInt(this.maxSize)) { throw new TypeError( "maxSize must be a positive integer if specified" ); } } if (!isPosInt(this.maxEntrySize)) { throw new TypeError( "maxEntrySize must be a positive integer if specified" ); } this.initializeSizeTracking(); } this.allowStale = !!allowStale || !!stale; this.noDeleteOnStaleGet = !!noDeleteOnStaleGet; this.updateAgeOnGet = !!updateAgeOnGet; this.updateAgeOnHas = !!updateAgeOnHas; this.ttlResolution = isPosInt(ttlResolution) || ttlResolution === 0 ? ttlResolution : 1; this.ttlAutopurge = !!ttlAutopurge; this.ttl = ttl || maxAge || 0; if (this.ttl) { if (!isPosInt(this.ttl)) { throw new TypeError( "ttl must be a positive integer if specified" ); } this.initializeTTLTracking(); } if (this.max === 0 && this.ttl === 0 && this.maxSize === 0) { throw new TypeError( "At least one of max, maxSize, or ttl is required" ); } if (!this.ttlAutopurge && !this.max && !this.maxSize) { const code = "LRU_CACHE_UNBOUNDED"; if (shouldWarn(code)) { warned.add(code); const msg = "TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption."; emitWarning(msg, "UnboundedCacheWarning", code, LRUCache); } } if (stale) { deprecatedOption("stale", "allowStale"); } if (maxAge) { deprecatedOption("maxAge", "ttl"); } if (length) { deprecatedOption("length", "sizeCalculation"); } } getRemainingTTL(key) { return this.has(key, { updateAgeOnHas: false }) ? Infinity : 0; } initializeTTLTracking() { this.ttls = new ZeroArray(this.max); this.starts = new ZeroArray(this.max); this.setItemTTL = (index, ttl, start = perf.now()) => { this.starts[index] = ttl !== 0 ? start : 0; this.ttls[index] = ttl; if (ttl !== 0 && this.ttlAutopurge) { const t2 = setTimeout(() => { if (this.isStale(index)) { this.delete(this.keyList[index]); } }, ttl + 1); if (t2.unref) { t2.unref(); } } }; this.updateItemAge = (index) => { this.starts[index] = this.ttls[index] !== 0 ? perf.now() : 0; }; this.statusTTL = (status, index) => { if (status) { status.ttl = this.ttls[index]; status.start = this.starts[index]; status.now = cachedNow || getNow(); status.remainingTTL = status.now + status.ttl - status.start; } }; let cachedNow = 0; const getNow = () => { const n = perf.now(); if (this.ttlResolution > 0) { cachedNow = n; const t2 = setTimeout( () => cachedNow = 0, this.ttlResolution ); if (t2.unref) { t2.unref(); } } return n; }; this.getRemainingTTL = (key) => { const index = this.keyMap.get(key); if (index === void 0) { return 0; } return this.ttls[index] === 0 || this.starts[index] === 0 ? Infinity : this.starts[index] + this.ttls[index] - (cachedNow || getNow()); }; this.isStale = (index) => { return this.ttls[index] !== 0 && this.starts[index] !== 0 && (cachedNow || getNow()) - this.starts[index] > this.ttls[index]; }; } updateItemAge(_index) { } statusTTL(_status, _index) { } setItemTTL(_index, _ttl, _start2) { } isStale(_index) { return false; } initializeSizeTracking() { this.calculatedSize = 0; this.sizes = new ZeroArray(this.max); this.removeItemSize = (index) => { this.calculatedSize -= this.sizes[index]; this.sizes[index] = 0; }; this.requireSize = (k, v, size, sizeCalculation) => { if (this.isBackgroundFetch(v)) { return 0; } if (!isPosInt(size)) { if (sizeCalculation) { if (typeof sizeCalculation !== "function") { throw new TypeError("sizeCalculation must be a function"); } size = sizeCalculation(v, k); if (!isPosInt(size)) { throw new TypeError( "sizeCalculation return invalid (expect positive integer)" ); } } else { throw new TypeError( "invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set." ); } } return size; }; this.addItemSize = (index, size, status) => { this.sizes[index] = size; if (this.maxSize) { const maxSize = this.maxSize - this.sizes[index]; while (this.calculatedSize > maxSize) { this.evict(true); } } this.calculatedSize += this.sizes[index]; if (status) { status.entrySize = size; status.totalCalculatedSize = this.calculatedSize; } }; } removeItemSize(_index) { } addItemSize(_index, _size2) { } requireSize(_k, _v, size, sizeCalculation) { if (size || sizeCalculation) { throw new TypeError( "cannot set size without setting maxSize or maxEntrySize on cache" ); } } *indexes({ allowStale = this.allowStale } = {}) { if (this.size) { for (let i2 = this.tail; true; ) { if (!this.isValidIndex(i2)) { break; } if (allowStale || !this.isStale(i2)) { yield i2; } if (i2 === this.head) { break; } else { i2 = this.prev[i2]; } } } } *rindexes({ allowStale = this.allowStale } = {}) { if (this.size) { for (let i2 = this.head; true; ) { if (!this.isValidIndex(i2)) { break; } if (allowStale || !this.isStale(i2)) { yield i2; } if (i2 === this.tail) { break; } else { i2 = this.next[i2]; } } } } isValidIndex(index) { return index !== void 0 && this.keyMap.get(this.keyList[index]) === index; } *entries() { for (const i2 of this.indexes()) { if (this.valList[i2] !== void 0 && this.keyList[i2] !== void 0 && !this.isBackgroundFetch(this.valList[i2])) { yield [this.keyList[i2], this.valList[i2]]; } } } *rentries() { for (const i2 of this.rindexes()) { if (this.valList[i2] !== void 0 && this.keyList[i2] !== void 0 && !this.isBackgroundFetch(this.valList[i2])) { yield [this.keyList[i2], this.valList[i2]]; } } } *keys() { for (const i2 of this.indexes()) { if (this.keyList[i2] !== void 0 && !this.isBackgroundFetch(this.valList[i2])) { yield this.keyList[i2]; } } } *rkeys() { for (const i2 of this.rindexes()) { if (this.keyList[i2] !== void 0 && !this.isBackgroundFetch(this.valList[i2])) { yield this.keyList[i2]; } } } *values() { for (const i2 of this.indexes()) { if (this.valList[i2] !== void 0 && !this.isBackgroundFetch(this.valList[i2])) { yield this.valList[i2]; } } } *rvalues() { for (const i2 of this.rindexes()) { if (this.valList[i2] !== void 0 && !this.isBackgroundFetch(this.valList[i2])) { yield this.valList[i2]; } } } [Symbol.iterator]() { return this.entries(); } find(fn, getOptions) { for (const i2 of this.indexes()) { const v = this.valList[i2]; const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; if (value === void 0) continue; if (fn(value, this.keyList[i2], this)) { return this.get(this.keyList[i2], getOptions); } } } forEach(fn, thisp = this) { for (const i2 of this.indexes()) { const v = this.valList[i2]; const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; if (value === void 0) continue; fn.call(thisp, value, this.keyList[i2], this); } } rforEach(fn, thisp = this) { for (const i2 of this.rindexes()) { const v = this.valList[i2]; const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; if (value === void 0) continue; fn.call(thisp, value, this.keyList[i2], this); } } get prune() { deprecatedMethod("prune", "purgeStale"); return this.purgeStale; } purgeStale() { let deleted = false; for (const i2 of this.rindexes({ allowStale: true })) { if (this.isStale(i2)) { this.delete(this.keyList[i2]); deleted = true; } } return deleted; } dump() { const arr = []; for (const i2 of this.indexes({ allowStale: true })) { const key = this.keyList[i2]; const v = this.valList[i2]; const value = this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; if (value === void 0) continue; const entry = { value }; if (this.ttls) { entry.ttl = this.ttls[i2]; const age = perf.now() - this.starts[i2]; entry.start = Math.floor(Date.now() - age); } if (this.sizes) { entry.size = this.sizes[i2]; } arr.unshift([key, entry]); } return arr; } load(arr) { this.clear(); for (const [key, entry] of arr) { if (entry.start) { const age = Date.now() - entry.start; entry.start = perf.now() - age; } this.set(key, entry.value, entry); } } dispose(_v, _k, _reason) { } set(k, v, { ttl = this.ttl, start, noDisposeOnSet = this.noDisposeOnSet, size = 0, sizeCalculation = this.sizeCalculation, noUpdateTTL = this.noUpdateTTL, status } = {}) { size = this.requireSize(k, v, size, sizeCalculation); if (this.maxEntrySize && size > this.maxEntrySize) { if (status) { status.set = "miss"; status.maxEntrySizeExceeded = true; } this.delete(k); return this; } let index = this.size === 0 ? void 0 : this.keyMap.get(k); if (index === void 0) { index = this.newIndex(); this.keyList[index] = k; this.valList[index] = v; this.keyMap.set(k, index); this.next[this.tail] = index; this.prev[index] = this.tail; this.tail = index; this.size++; this.addItemSize(index, size, status); if (status) { status.set = "add"; } noUpdateTTL = false; } else { this.moveToTail(index); const oldVal = this.valList[index]; if (v !== oldVal) { if (this.isBackgroundFetch(oldVal)) { oldVal.__abortController.abort(new Error("replaced")); } else { if (!noDisposeOnSet) { this.dispose(oldVal, k, "set"); if (this.disposeAfter) { this.disposed.push([oldVal, k, "set"]); } } } this.removeItemSize(index); this.valList[index] = v; this.addItemSize(index, size, status); if (status) { status.set = "replace"; const oldValue = oldVal && this.isBackgroundFetch(oldVal) ? oldVal.__staleWhileFetching : oldVal; if (oldValue !== void 0) status.oldValue = oldValue; } } else if (status) { status.set = "update"; } } if (ttl !== 0 && this.ttl === 0 && !this.ttls) { this.initializeTTLTracking(); } if (!noUpdateTTL) { this.setItemTTL(index, ttl, start); } this.statusTTL(status, index); if (this.disposeAfter) { while (this.disposed.length) { this.disposeAfter(...this.disposed.shift()); } } return this; } newIndex() { if (this.size === 0) { return this.tail; } if (this.size === this.max && this.max !== 0) { return this.evict(false); } if (this.free.length !== 0) { return this.free.pop(); } return this.initialFill++; } pop() { if (this.size) { const val = this.valList[this.head]; this.evict(true); return val; } } evict(free) { const head = this.head; const k = this.keyList[head]; const v = this.valList[head]; if (this.isBackgroundFetch(v)) { v.__abortController.abort(new Error("evicted")); } else { this.dispose(v, k, "evict"); if (this.disposeAfter) { this.disposed.push([v, k, "evict"]); } } this.removeItemSize(head); if (free) { this.keyList[head] = null; this.valList[head] = null; this.free.push(head); } this.head = this.next[head]; this.keyMap.delete(k); this.size--; return head; } has(k, { updateAgeOnHas = this.updateAgeOnHas, status } = {}) { const index = this.keyMap.get(k); if (index !== void 0) { if (!this.isStale(index)) { if (updateAgeOnHas) { this.updateItemAge(index); } if (status) status.has = "hit"; this.statusTTL(status, index); return true; } else if (status) { status.has = "stale"; this.statusTTL(status, index); } } else if (status) { status.has = "miss"; } return false; } peek(k, { allowStale = this.allowStale } = {}) { const index = this.keyMap.get(k); if (index !== void 0 && (allowStale || !this.isStale(index))) { const v = this.valList[index]; return this.isBackgroundFetch(v) ? v.__staleWhileFetching : v; } } backgroundFetch(k, index, options, context) { const v = index === void 0 ? void 0 : this.valList[index]; if (this.isBackgroundFetch(v)) { return v; } const ac = new AC(); if (options.signal) { options.signal.addEventListener( "abort", () => ac.abort(options.signal.reason) ); } const fetchOpts = { signal: ac.signal, options, context }; const cb = (v2, updateCache = false) => { const { aborted } = ac.signal; const ignoreAbort = options.ignoreFetchAbort && v2 !== void 0; if (options.status) { if (aborted && !updateCache) { options.status.fetchAborted = true; options.status.fetchError = ac.signal.reason; if (ignoreAbort) options.status.fetchAbortIgnored = true; } else { options.status.fetchResolved = true; } } if (aborted && !ignoreAbort && !updateCache) { return fetchFail(ac.signal.reason); } if (this.valList[index] === p) { if (v2 === void 0) { if (p.__staleWhileFetching) { this.valList[index] = p.__staleWhileFetching; } else { this.delete(k); } } else { if (options.status) options.status.fetchUpdated = true; this.set(k, v2, fetchOpts.options); } } return v2; }; const eb = (er) => { if (options.status) { options.status.fetchRejected = true; options.status.fetchError = er; } return fetchFail(er); }; const fetchFail = (er) => { const { aborted } = ac.signal; const allowStaleAborted = aborted && options.allowStaleOnFetchAbort; const allowStale = allowStaleAborted || options.allowStaleOnFetchRejection; const noDelete = allowStale || options.noDeleteOnFetchRejection; if (this.valList[index] === p) { const del = !noDelete || p.__staleWhileFetching === void 0; if (del) { this.delete(k); } else if (!allowStaleAborted) { this.valList[index] = p.__staleWhileFetching; } } if (allowStale) { if (options.status && p.__staleWhileFetching !== void 0) { options.status.returnedStale = true; } return p.__staleWhileFetching; } else if (p.__returned === p) { throw er; } }; const pcall = (res, rej) => { this.fetchMethod(k, v, fetchOpts).then((v2) => res(v2), rej); ac.signal.addEventListener("abort", () => { if (!options.ignoreFetchAbort || options.allowStaleOnFetchAbort) { res(); if (options.allowStaleOnFetchAbort) { res = (v2) => cb(v2, true); } } }); }; if (options.status) options.status.fetchDispatched = true; const p = new Promise(pcall).then(cb, eb); p.__abortController = ac; p.__staleWhileFetching = v; p.__returned = null; if (index === void 0) { this.set(k, p, { ...fetchOpts.options, status: void 0 }); index = this.keyMap.get(k); } else { this.valList[index] = p; } return p; } isBackgroundFetch(p) { return p && typeof p === "object" && typeof p.then === "function" && Object.prototype.hasOwnProperty.call( p, "__staleWhileFetching" ) && Object.prototype.hasOwnProperty.call(p, "__returned") && (p.__returned === p || p.__returned === null); } async fetch(k, { allowStale = this.allowStale, updateAgeOnGet = this.updateAgeOnGet, noDeleteOnStaleGet = this.noDeleteOnStaleGet, ttl = this.ttl, noDisposeOnSet = this.noDisposeOnSet, size = 0, sizeCalculation = this.sizeCalculation, noUpdateTTL = this.noUpdateTTL, noDeleteOnFetchRejection = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection = this.allowStaleOnFetchRejection, ignoreFetchAbort = this.ignoreFetchAbort, allowStaleOnFetchAbort = this.allowStaleOnFetchAbort, fetchContext = this.fetchContext, forceRefresh = false, status, signal } = {}) { if (!this.fetchMethod) { if (status) status.fetch = "get"; return this.get(k, { allowStale, updateAgeOnGet, noDeleteOnStaleGet, status }); } const options = { allowStale, updateAgeOnGet, noDeleteOnStaleGet, ttl, noDisposeOnSet, size, sizeCalculation, noUpdateTTL, noDeleteOnFetchRejection, allowStaleOnFetchRejection, allowStaleOnFetchAbort, ignoreFetchAbort, status, signal }; let index = this.keyMap.get(k); if (index === void 0) { if (status) status.fetch = "miss"; const p = this.backgroundFetch(k, index, options, fetchContext); return p.__returned = p; } else { const v = this.valList[index]; if (this.isBackgroundFetch(v)) { const stale = allowStale && v.__staleWhileFetching !== void 0; if (status) { status.fetch = "inflight"; if (stale) status.returnedStale = true; } return stale ? v.__staleWhileFetching : v.__returned = v; } const isStale = this.isStale(index); if (!forceRefresh && !isStale) { if (status) status.fetch = "hit"; this.moveToTail(index); if (updateAgeOnGet) { this.updateItemAge(index); } this.statusTTL(status, index); return v; } const p = this.backgroundFetch(k, index, options, fetchContext); const hasStale = p.__staleWhileFetching !== void 0; const staleVal = hasStale && allowStale; if (status) { status.fetch = hasStale && isStale ? "stale" : "refresh"; if (staleVal && isStale) status.returnedStale = true; } return staleVal ? p.__staleWhileFetching : p.__returned = p; } } get(k, { allowStale = this.allowStale, updateAgeOnGet = this.updateAgeOnGet, noDeleteOnStaleGet = this.noDeleteOnStaleGet, status } = {}) { const index = this.keyMap.get(k); if (index !== void 0) { const value = this.valList[index]; const fetching = this.isBackgroundFetch(value); this.statusTTL(status, index); if (this.isStale(index)) { if (status) status.get = "stale"; if (!fetching) { if (!noDeleteOnStaleGet) { this.delete(k); } if (status) status.returnedStale = allowStale; return allowStale ? value : void 0; } else { if (status) { status.returnedStale = allowStale && value.__staleWhileFetching !== void 0; } return allowStale ? value.__staleWhileFetching : void 0; } } else { if (status) status.get = "hit"; if (fetching) { return value.__staleWhileFetching; } this.moveToTail(index); if (updateAgeOnGet) { this.updateItemAge(index); } return value; } } else if (status) { status.get = "miss"; } } connect(p, n) { this.prev[n] = p; this.next[p] = n; } moveToTail(index) { if (index !== this.tail) { if (index === this.head) { this.head = this.next[index]; } else { this.connect(this.prev[index], this.next[index]); } this.connect(this.tail, index); this.tail = index; } } get del() { deprecatedMethod("del", "delete"); return this.delete; } delete(k) { let deleted = false; if (this.size !== 0) { const index = this.keyMap.get(k); if (index !== void 0) { deleted = true; if (this.size === 1) { this.clear(); } else { this.removeItemSize(index); const v = this.valList[index]; if (this.isBackgroundFetch(v)) { v.__abortController.abort(new Error("deleted")); } else { this.dispose(v, k, "delete"); if (this.disposeAfter) { this.disposed.push([v, k, "delete"]); } } this.keyMap.delete(k); this.keyList[index] = null; this.valList[index] = null; if (index === this.tail) { this.tail = this.prev[index]; } else if (index === this.head) { this.head = this.next[index]; } else { this.next[this.prev[index]] = this.next[index]; this.prev[this.next[index]] = this.prev[index]; } this.size--; this.free.push(index); } } } if (this.disposed) { while (this.disposed.length) { this.disposeAfter(...this.disposed.shift()); } } return deleted; } clear() { for (const index of this.rindexes({ allowStale: true })) { const v = this.valList[index]; if (this.isBackgroundFetch(v)) { v.__abortController.abort(new Error("deleted")); } else { const k = this.keyList[index]; this.dispose(v, k, "delete"); if (this.disposeAfter) { this.disposed.push([v, k, "delete"]); } } } this.keyMap.clear(); this.valList.fill(null); this.keyList.fill(null); if (this.ttls) { this.ttls.fill(0); this.starts.fill(0); } if (this.sizes) { this.sizes.fill(0); } this.head = 0; this.tail = 0; this.initialFill = 1; this.free.length = 0; this.calculatedSize = 0; this.size = 0; if (this.disposed) { while (this.disposed.length) { this.disposeAfter(...this.disposed.shift()); } } } get reset() { deprecatedMethod("reset", "clear"); return this.clear; } get length() { deprecatedProperty("length", "size"); return this.size; } static get AbortController() { return AC; } static get AbortSignal() { return AS; } }; module2.exports = LRUCache; } }); // ../../node_modules/.pnpm/named-placeholders@1.1.3/node_modules/named-placeholders/index.js var require_named_placeholders = __commonJS({ "../../node_modules/.pnpm/named-placeholders@1.1.3/node_modules/named-placeholders/index.js"(exports, module2) { "use strict"; var RE_PARAM = /(?:\?)|(?::(\d+|(?:[a-zA-Z][a-zA-Z0-9_]*)))/g; var DQUOTE = 34; var SQUOTE = 39; var BSLASH = 92; function parse2(query) { let ppos = RE_PARAM.exec(query); let curpos = 0; let start = 0; let end; const parts = []; let inQuote = false; let escape = false; let qchr; const tokens = []; let qcnt = 0; let lastTokenEndPos = 0; let i2; if (ppos) { do { for (i2 = curpos, end = ppos.index; i2 < end; ++i2) { let chr = query.charCodeAt(i2); if (chr === BSLASH) escape = !escape; else { if (escape) { escape = false; continue; } if (inQuote && chr === qchr) { if (query.charCodeAt(i2 + 1) === qchr) { ++i2; continue; } inQuote = false; } else if (chr === DQUOTE || chr === SQUOTE) { inQuote = true; qchr = chr; } } } if (!inQuote) { parts.push(query.substring(start, end)); tokens.push(ppos[0].length === 1 ? qcnt++ : ppos[1]); start = end + ppos[0].length; lastTokenEndPos = start; } curpos = end + ppos[0].length; } while (ppos = RE_PARAM.exec(query)); if (tokens.length) { if (curpos < query.length) { parts.push(query.substring(lastTokenEndPos)); } return [parts, tokens]; } } return [query]; } function createCompiler(config4) { if (!config4) config4 = {}; if (!config4.placeholder) { config4.placeholder = "?"; } let ncache = 100; let cache; if (typeof config4.cache === "number") { ncache = config4.cache; } if (typeof config4.cache === "object") { cache = config4.cache; } if (config4.cache !== false && !cache) { cache = new (require_lru_cache2())({ max: ncache }); } function toArrayParams(tree, params) { const arr = []; if (tree.length == 1) { return [tree[0], []]; } if (typeof params == "undefined") throw new Error("Named query contains placeholders, but parameters object is undefined"); const tokens = tree[1]; for (let i2 = 0; i2 < tokens.length; ++i2) { arr.push(params[tokens[i2]]); } return [tree[0], arr]; } function noTailingSemicolon(s2) { if (s2.slice(-1) == ":") { return s2.slice(0, -1); } return s2; } function join(tree) { if (tree.length == 1) { return tree; } let unnamed = noTailingSemicolon(tree[0][0]); for (let i2 = 1; i2 < tree[0].length; ++i2) { if (tree[0][i2 - 1].slice(-1) == ":") { unnamed += config4.placeholder; } unnamed += config4.placeholder; unnamed += noTailingSemicolon(tree[0][i2]); } const last = tree[0][tree[0].length - 1]; if (tree[0].length == tree[1].length) { if (last.slice(-1) == ":") { unnamed += config4.placeholder; } unnamed += config4.placeholder; } return [unnamed, tree[1]]; } function compile(query, paramsObj) { let tree; if (cache && (tree = cache.get(query))) { return toArrayParams(tree, paramsObj); } tree = join(parse2(query)); if (cache) { cache.set(query, tree); } return toArrayParams(tree, paramsObj); } compile.parse = parse2; return compile; } function toNumbered(q, params) { const tree = parse2(q); const paramsArr = []; if (tree.length == 1) { return [tree[0], paramsArr]; } const pIndexes = {}; let pLastIndex = 0; let qs = ""; let varIndex; const varNames = []; for (let i2 = 0; i2 < tree[0].length; ++i2) { varIndex = pIndexes[tree[1][i2]]; if (!varIndex) { varIndex = ++pLastIndex; pIndexes[tree[1][i2]] = varIndex; } if (tree[1][i2]) { varNames[varIndex - 1] = tree[1][i2]; qs += tree[0][i2] + "$" + varIndex; } else { qs += tree[0][i2]; } } return [qs, varNames.map((n) => params[n])]; } module2.exports = createCompiler; module2.exports.toNumbered = toNumbered; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/connection.js var require_connection = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/connection.js"(exports, module2) { "use strict"; var Net = require("net"); var Tls = require("tls"); var Timers = require("timers"); var EventEmitter = require("events").EventEmitter; var Readable = require("stream").Readable; var Queue = require_denque(); var SqlString = require_sqlstring(); var LRU = require_lru_cache(); var PacketParser = require_packet_parser(); var Packets = require_packets(); var Commands = require_commands2(); var ConnectionConfig = require_connection_config(); var CharsetToEncoding = require_charset_encodings(); var _connectionId = 0; var convertNamedPlaceholders = null; var Connection = class extends EventEmitter { constructor(opts) { super(); this.config = opts.config; if (!opts.config.stream) { if (opts.config.socketPath) { this.stream = Net.connect(opts.config.socketPath); } else { this.stream = Net.connect( opts.config.port, opts.config.host ); this.stream.setKeepAlive(true, this.config.keepAliveInitialDelay); } } else if (typeof opts.config.stream === "function") { this.stream = opts.config.stream(opts); } else { this.stream = opts.config.stream; } this._internalId = _connectionId++; this._commands = new Queue(); this._command = null; this._paused = false; this._paused_packets = new Queue(); this._statements = new LRU({ max: this.config.maxPreparedStatements, dispose: function(key, statement) { statement.close(); } }); this.serverCapabilityFlags = 0; this.authorized = false; this.sequenceId = 0; this.compressedSequenceId = 0; this.threadId = null; this._handshakePacket = null; this._fatalError = null; this._protocolError = null; this._outOfOrderPackets = []; this.clientEncoding = CharsetToEncoding[this.config.charsetNumber]; this.stream.on("error", this._handleNetworkError.bind(this)); this.packetParser = new PacketParser((p) => { this.handlePacket(p); }); this.stream.on("data", (data) => { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } this.packetParser.execute(data); }); this.stream.on("close", () => { if (this._closing) { return; } if (!this._protocolError) { this._protocolError = new Error( "Connection lost: The server closed the connection." ); this._protocolError.fatal = true; this._protocolError.code = "PROTOCOL_CONNECTION_LOST"; } this._notifyError(this._protocolError); }); let handshakeCommand; if (!this.config.isServer) { handshakeCommand = new Commands.ClientHandshake(this.config.clientFlags); handshakeCommand.on("end", () => { if (!handshakeCommand.handshake || this._fatalError || this._protocolError) { return; } this._handshakePacket = handshakeCommand.handshake; this.threadId = handshakeCommand.handshake.connectionId; this.emit("connect", handshakeCommand.handshake); }); handshakeCommand.on("error", (err) => { this._closing = true; this._notifyError(err); }); this.addCommand(handshakeCommand); } this.serverEncoding = "utf8"; if (this.config.connectTimeout) { const timeoutHandler = this._handleTimeoutError.bind(this); this.connectTimeout = Timers.setTimeout( timeoutHandler, this.config.connectTimeout ); } } promise(promiseImpl) { const PromiseConnection = require_promise().PromiseConnection; return new PromiseConnection(this, promiseImpl); } _addCommandClosedState(cmd) { const err = new Error( "Can't add new command when connection is in closed state" ); err.fatal = true; if (cmd.onResult) { cmd.onResult(err); } else { this.emit("error", err); } } _handleFatalError(err) { err.fatal = true; this.stream.removeAllListeners("data"); this.addCommand = this._addCommandClosedState; this.write = () => { this.emit("error", new Error("Can't write in closed state")); }; this._notifyError(err); this._fatalError = err; } _handleNetworkError(err) { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } if (err.errno === "ECONNRESET" && this._closing) { return; } this._handleFatalError(err); } _handleTimeoutError() { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } this.stream.destroy && this.stream.destroy(); const err = new Error("connect ETIMEDOUT"); err.errorno = "ETIMEDOUT"; err.code = "ETIMEDOUT"; err.syscall = "connect"; this._handleNetworkError(err); } _notifyError(err) { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } if (this._fatalError) { return; } let command; let bubbleErrorToConnection = !this._command; if (this._command && this._command.onResult) { this._command.onResult(err); this._command = null; } else if (!(this._command && this._command.constructor === Commands.ClientHandshake && this._commands.length > 0)) { bubbleErrorToConnection = true; } while (command = this._commands.shift()) { if (command.onResult) { command.onResult(err); } else { bubbleErrorToConnection = true; } } if (bubbleErrorToConnection || this._pool) { this.emit("error", err); } if (err.fatal) { this.close(); } } write(buffer) { const result = this.stream.write(buffer, (err) => { if (err) { this._handleNetworkError(err); } }); if (!result) { this.stream.emit("pause"); } } _resetSequenceId() { this.sequenceId = 0; this.compressedSequenceId = 0; } _bumpCompressedSequenceId(numPackets) { this.compressedSequenceId += numPackets; this.compressedSequenceId %= 256; } _bumpSequenceId(numPackets) { this.sequenceId += numPackets; this.sequenceId %= 256; } writePacket(packet) { const MAX_PACKET_LENGTH = 16777215; const length = packet.length(); let chunk, offset, header; if (length < MAX_PACKET_LENGTH) { packet.writeHeader(this.sequenceId); if (this.config.debug) { console.log( `${this._internalId} ${this.connectionId} <== ${this._command._commandName}#${this._command.stateName()}(${[this.sequenceId, packet._name, packet.length()].join(",")})` ); console.log( `${this._internalId} ${this.connectionId} <== ${packet.buffer.toString("hex")}` ); } this._bumpSequenceId(1); this.write(packet.buffer); } else { if (this.config.debug) { console.log( `${this._internalId} ${this.connectionId} <== Writing large packet, raw content not written:` ); console.log( `${this._internalId} ${this.connectionId} <== ${this._command._commandName}#${this._command.stateName()}(${[this.sequenceId, packet._name, packet.length()].join(",")})` ); } for (offset = 4; offset < 4 + length; offset += MAX_PACKET_LENGTH) { chunk = packet.buffer.slice(offset, offset + MAX_PACKET_LENGTH); if (chunk.length === MAX_PACKET_LENGTH) { header = Buffer.from([255, 255, 255, this.sequenceId]); } else { header = Buffer.from([ chunk.length & 255, chunk.length >> 8 & 255, chunk.length >> 16 & 255, this.sequenceId ]); } this._bumpSequenceId(1); this.write(header); this.write(chunk); } } } startTLS(onSecure) { if (this.config.debug) { console.log("Upgrading connection to TLS"); } const secureContext = Tls.createSecureContext({ ca: this.config.ssl.ca, cert: this.config.ssl.cert, ciphers: this.config.ssl.ciphers, key: this.config.ssl.key, passphrase: this.config.ssl.passphrase, minVersion: this.config.ssl.minVersion }); const rejectUnauthorized = this.config.ssl.rejectUnauthorized; let secureEstablished = false; const secureSocket = new Tls.TLSSocket(this.stream, { rejectUnauthorized, requestCert: true, secureContext, isServer: false }); secureSocket.on("_tlsError", (err) => { if (secureEstablished) { this._handleNetworkError(err); } else { onSecure(err); } }); secureSocket.on("secure", () => { secureEstablished = true; onSecure(rejectUnauthorized ? secureSocket.ssl.verifyError() : null); }); secureSocket.on("data", (data) => { this.packetParser.execute(data); }); this.write = (buffer) => { secureSocket.write(buffer); }; secureSocket._start(); } pipe() { if (this.stream instanceof Net.Stream) { this.stream.ondata = (data, start, end) => { this.packetParser.execute(data, start, end); }; } else { this.stream.on("data", (data) => { this.packetParser.execute( data.parent, data.offset, data.offset + data.length ); }); } } protocolError(message, code) { if (this._closing) { return; } const err = new Error(message); err.fatal = true; err.code = code || "PROTOCOL_ERROR"; this.emit("error", err); } handlePacket(packet) { if (this._paused) { this._paused_packets.push(packet); return; } if (packet) { if (this.sequenceId !== packet.sequenceId) { const err = new Error( `Warning: got packets out of order. Expected ${this.sequenceId} but received ${packet.sequenceId}` ); err.expected = this.sequenceId; err.received = packet.sequenceId; this.emit("warn", err); console.error(err.message); } this._bumpSequenceId(packet.numPackets); } if (this.config.debug) { if (packet) { console.log( ` raw: ${packet.buffer.slice(packet.offset, packet.offset + packet.length()).toString("hex")}` ); console.trace(); const commandName = this._command ? this._command._commandName : "(no command)"; const stateName = this._command ? this._command.stateName() : "(no command)"; console.log( `${this._internalId} ${this.connectionId} ==> ${commandName}#${stateName}(${[packet.sequenceId, packet.type(), packet.length()].join(",")})` ); } } if (!this._command) { const marker = packet.peekByte(); if (marker === 255) { const error = Packets.Error.fromPacket(packet); this.protocolError(error.message, error.code); } else { this.protocolError( "Unexpected packet while no commands in the queue", "PROTOCOL_UNEXPECTED_PACKET" ); } this.close(); return; } const done = this._command.execute(packet, this); if (done) { this._command = this._commands.shift(); if (this._command) { this.sequenceId = 0; this.compressedSequenceId = 0; this.handlePacket(); } } } addCommand(cmd) { if (this.config.debug) { const commandName = cmd.constructor.name; console.log(`Add command: ${commandName}`); cmd._commandName = commandName; } if (!this._command) { this._command = cmd; this.handlePacket(); } else { this._commands.push(cmd); } return cmd; } format(sql, values) { if (typeof this.config.queryFormat === "function") { return this.config.queryFormat.call( this, sql, values, this.config.timezone ); } const opts = { sql, values }; this._resolveNamedPlaceholders(opts); return SqlString.format( opts.sql, opts.values, this.config.stringifyObjects, this.config.timezone ); } escape(value) { return SqlString.escape(value, false, this.config.timezone); } escapeId(value) { return SqlString.escapeId(value, false); } raw(sql) { return SqlString.raw(sql); } _resolveNamedPlaceholders(options) { let unnamed; if (this.config.namedPlaceholders || options.namedPlaceholders) { if (Array.isArray(options.values)) { return; } if (convertNamedPlaceholders === null) { convertNamedPlaceholders = require_named_placeholders()(); } unnamed = convertNamedPlaceholders(options.sql, options.values); options.sql = unnamed[0]; options.values = unnamed[1]; } } query(sql, values, cb) { let cmdQuery; if (sql.constructor === Commands.Query) { cmdQuery = sql; } else { cmdQuery = Connection.createQuery(sql, values, cb, this.config); } this._resolveNamedPlaceholders(cmdQuery); const rawSql = this.format(cmdQuery.sql, cmdQuery.values !== void 0 ? cmdQuery.values : []); cmdQuery.sql = rawSql; return this.addCommand(cmdQuery); } pause() { this._paused = true; this.stream.pause(); } resume() { let packet; this._paused = false; while (packet = this._paused_packets.shift()) { this.handlePacket(packet); if (this._paused) { return; } } this.stream.resume(); } prepare(options, cb) { if (typeof options === "string") { options = { sql: options }; } return this.addCommand(new Commands.Prepare(options, cb)); } unprepare(sql) { let options = {}; if (typeof sql === "object") { options = sql; } else { options.sql = sql; } const key = Connection.statementKey(options); const stmt = this._statements.get(key); if (stmt) { this._statements.del(key); stmt.close(); } return stmt; } execute(sql, values, cb) { let options = {}; if (typeof sql === "object") { options = sql; if (typeof values === "function") { cb = values; } else { options.values = options.values || values; } } else if (typeof values === "function") { cb = values; options.sql = sql; options.values = void 0; } else { options.sql = sql; options.values = values; } this._resolveNamedPlaceholders(options); if (options.values) { if (!Array.isArray(options.values)) { throw new TypeError( "Bind parameters must be array if namedPlaceholders parameter is not enabled" ); } options.values.forEach((val) => { if (!Array.isArray(options.values)) { throw new TypeError( "Bind parameters must be array if namedPlaceholders parameter is not enabled" ); } if (val === void 0) { throw new TypeError( "Bind parameters must not contain undefined. To pass SQL NULL specify JS null" ); } if (typeof val === "function") { throw new TypeError( "Bind parameters must not contain function(s). To pass the body of a function as a string call .toString() first" ); } }); } const executeCommand = new Commands.Execute(options, cb); const prepareCommand = new Commands.Prepare(options, (err, stmt) => { if (err) { executeCommand.start = function() { return null; }; if (cb) { cb(err); } else { executeCommand.emit("error", err); } executeCommand.emit("end"); return; } executeCommand.statement = stmt; }); this.addCommand(prepareCommand); this.addCommand(executeCommand); return executeCommand; } changeUser(options, callback) { if (!callback && typeof options === "function") { callback = options; options = {}; } const charsetNumber = options.charset ? ConnectionConfig.getCharsetNumber(options.charset) : this.config.charsetNumber; return this.addCommand( new Commands.ChangeUser( { user: options.user || this.config.user, password: options.password || this.config.password, passwordSha1: options.passwordSha1 || this.config.passwordSha1, database: options.database || this.config.database, timeout: options.timeout, charsetNumber, currentConfig: this.config }, (err) => { if (err) { err.fatal = true; } if (callback) { callback(err); } } ) ); } beginTransaction(cb) { return this.query("START TRANSACTION", cb); } commit(cb) { return this.query("COMMIT", cb); } rollback(cb) { return this.query("ROLLBACK", cb); } ping(cb) { return this.addCommand(new Commands.Ping(cb)); } _registerSlave(opts, cb) { return this.addCommand(new Commands.RegisterSlave(opts, cb)); } _binlogDump(opts, cb) { return this.addCommand(new Commands.BinlogDump(opts, cb)); } destroy() { this.close(); } close() { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } this._closing = true; this.stream.end(); this.addCommand = this._addCommandClosedState; } createBinlogStream(opts) { let test = 1; const stream = new Readable({ objectMode: true }); stream._read = function() { return { data: test++ }; }; this._registerSlave(opts, () => { const dumpCmd = this._binlogDump(opts); dumpCmd.on("event", (ev) => { stream.push(ev); }); dumpCmd.on("eof", () => { stream.push(null); if (opts.flags && opts.flags & 1) { this.close(); } }); }); return stream; } connect(cb) { if (!cb) { return; } if (this._fatalError || this._protocolError) { return cb(this._fatalError || this._protocolError); } if (this._handshakePacket) { return cb(null, this); } let connectCalled = 0; function callbackOnce(isErrorHandler) { return function(param) { if (!connectCalled) { if (isErrorHandler) { cb(param); } else { cb(null, param); } } connectCalled = 1; }; } this.once("error", callbackOnce(true)); this.once("connect", callbackOnce(false)); } writeColumns(columns) { this.writePacket(Packets.ResultSetHeader.toPacket(columns.length)); columns.forEach((column) => { this.writePacket( Packets.ColumnDefinition.toPacket(column, this.serverConfig.encoding) ); }); this.writeEof(); } writeTextRow(column) { this.writePacket( Packets.TextRow.toPacket(column, this.serverConfig.encoding) ); } writeTextResult(rows, columns) { this.writeColumns(columns); rows.forEach((row) => { const arrayRow = new Array(columns.length); columns.forEach((column) => { arrayRow.push(row[column.name]); }); this.writeTextRow(arrayRow); }); this.writeEof(); } writeEof(warnings, statusFlags) { this.writePacket(Packets.EOF.toPacket(warnings, statusFlags)); } writeOk(args) { if (!args) { args = { affectedRows: 0 }; } this.writePacket(Packets.OK.toPacket(args, this.serverConfig.encoding)); } writeError(args) { const encoding = this.serverConfig ? this.serverConfig.encoding : "cesu8"; this.writePacket(Packets.Error.toPacket(args, encoding)); } serverHandshake(args) { this.serverConfig = args; this.serverConfig.encoding = CharsetToEncoding[this.serverConfig.characterSet]; return this.addCommand(new Commands.ServerHandshake(args)); } end(callback) { if (this.config.isServer) { this._closing = true; const quitCmd2 = new EventEmitter(); setImmediate(() => { this.stream.end(); quitCmd2.emit("end"); }); return quitCmd2; } const quitCmd = this.addCommand(new Commands.Quit(callback)); this.addCommand = this._addCommandClosedState; return quitCmd; } static createQuery(sql, values, cb, config4) { let options = { rowsAsArray: config4.rowsAsArray }; if (typeof sql === "object") { options = sql; if (typeof values === "function") { cb = values; } else if (values !== void 0) { options.values = values; } } else if (typeof values === "function") { cb = values; options.sql = sql; options.values = void 0; } else { options.sql = sql; options.values = values; } return new Commands.Query(options, cb); } static statementKey(options) { return `${typeof options.nestTables}/${options.nestTables}/${options.rowsAsArray}${options.sql}`; } }; if (Tls.TLSSocket) { } else { Connection.prototype.startTLS = function _startTLS(onSecure) { if (this.config.debug) { console.log("Upgrading connection to TLS"); } const crypto = require("crypto"); const config4 = this.config; const stream = this.stream; const rejectUnauthorized = this.config.ssl.rejectUnauthorized; const credentials = crypto.createCredentials({ key: config4.ssl.key, cert: config4.ssl.cert, passphrase: config4.ssl.passphrase, ca: config4.ssl.ca, ciphers: config4.ssl.ciphers }); const securePair = Tls.createSecurePair( credentials, false, true, rejectUnauthorized ); if (stream.ondata) { stream.ondata = null; } stream.removeAllListeners("data"); stream.pipe(securePair.encrypted); securePair.encrypted.pipe(stream); securePair.cleartext.on("data", (data) => { this.packetParser.execute(data); }); this.write = function(buffer) { securePair.cleartext.write(buffer); }; securePair.on("secure", () => { onSecure(rejectUnauthorized ? securePair.ssl.verifyError() : null); }); }; } module2.exports = Connection; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool_connection.js var require_pool_connection = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool_connection.js"(exports, module2) { "use strict"; var Connection = require_mysql2().Connection; var PoolConnection = class extends Connection { constructor(pool3, options) { super(options); this._pool = pool3; this.once("end", () => { this._removeFromPool(); }); this.once("error", () => { this._removeFromPool(); }); } release() { if (!this._pool || this._pool._closed) { return; } this._pool.releaseConnection(this); } promise(promiseImpl) { const PromisePoolConnection = require_promise().PromisePoolConnection; return new PromisePoolConnection(this, promiseImpl); } end() { const err = new Error( "Calling conn.end() to release a pooled connection is deprecated. In next version calling conn.end() will be restored to default conn.end() behavior. Use conn.release() instead." ); this.emit("warn", err); console.warn(err.message); this.release(); } destroy() { this._removeFromPool(); super.destroy(); } _removeFromPool() { if (!this._pool || this._pool._closed) { return; } const pool3 = this._pool; this._pool = null; pool3._removeConnection(this); } }; PoolConnection.statementKey = Connection.statementKey; module2.exports = PoolConnection; PoolConnection.prototype._realEnd = Connection.prototype.end; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool.js var require_pool = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool.js"(exports, module2) { "use strict"; var process2 = require("process"); var mysql3 = require_mysql2(); var EventEmitter = require("events").EventEmitter; var PoolConnection = require_pool_connection(); var Queue = require_denque(); var Connection = require_connection(); function spliceConnection(queue, connection) { const len = queue.length; for (let i2 = 0; i2 < len; i2++) { if (queue.get(i2) === connection) { queue.removeOne(i2); break; } } } var Pool = class extends EventEmitter { constructor(options) { super(); this.config = options.config; this.config.connectionConfig.pool = this; this._allConnections = new Queue(); this._freeConnections = new Queue(); this._connectionQueue = new Queue(); this._closed = false; } promise(promiseImpl) { const PromisePool = require_promise().PromisePool; return new PromisePool(this, promiseImpl); } getConnection(cb) { if (this._closed) { return process2.nextTick(() => cb(new Error("Pool is closed."))); } let connection; if (this._freeConnections.length > 0) { connection = this._freeConnections.shift(); this.emit("acquire", connection); return process2.nextTick(() => cb(null, connection)); } if (this.config.connectionLimit === 0 || this._allConnections.length < this.config.connectionLimit) { connection = new PoolConnection(this, { config: this.config.connectionConfig }); this._allConnections.push(connection); return connection.connect((err) => { if (this._closed) { return cb(new Error("Pool is closed.")); } if (err) { return cb(err); } this.emit("connection", connection); this.emit("acquire", connection); return cb(null, connection); }); } if (!this.config.waitForConnections) { return process2.nextTick(() => cb(new Error("No connections available."))); } if (this.config.queueLimit && this._connectionQueue.length >= this.config.queueLimit) { return cb(new Error("Queue limit reached.")); } this.emit("enqueue"); return this._connectionQueue.push(cb); } releaseConnection(connection) { let cb; if (!connection._pool) { if (this._connectionQueue.length) { cb = this._connectionQueue.shift(); process2.nextTick(this.getConnection.bind(this, cb)); } } else if (this._connectionQueue.length) { cb = this._connectionQueue.shift(); process2.nextTick(cb.bind(null, null, connection)); } else { this._freeConnections.push(connection); this.emit("release", connection); } } end(cb) { this._closed = true; if (typeof cb !== "function") { cb = function(err) { if (err) { throw err; } }; } let calledBack = false; let closedConnections = 0; let connection; const endCB = function(err) { if (calledBack) { return; } if (err || ++closedConnections >= this._allConnections.length) { calledBack = true; cb(err); return; } }.bind(this); if (this._allConnections.length === 0) { endCB(); return; } for (let i2 = 0; i2 < this._allConnections.length; i2++) { connection = this._allConnections.get(i2); connection._realEnd(endCB); } } query(sql, values, cb) { const cmdQuery = Connection.createQuery( sql, values, cb, this.config.connectionConfig ); if (typeof cmdQuery.namedPlaceholders === "undefined") { cmdQuery.namedPlaceholders = this.config.connectionConfig.namedPlaceholders; } this.getConnection((err, conn) => { if (err) { if (typeof cmdQuery.onResult === "function") { cmdQuery.onResult(err); } else { cmdQuery.emit("error", err); } return; } try { conn.query(cmdQuery).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); return cmdQuery; } execute(sql, values, cb) { if (typeof values === "function") { cb = values; values = []; } this.getConnection((err, conn) => { if (err) { return cb(err); } try { conn.execute(sql, values, cb).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); } _removeConnection(connection) { spliceConnection(this._allConnections, connection); spliceConnection(this._freeConnections, connection); this.releaseConnection(connection); } format(sql, values) { return mysql3.format( sql, values, this.config.connectionConfig.stringifyObjects, this.config.connectionConfig.timezone ); } escape(value) { return mysql3.escape( value, this.config.connectionConfig.stringifyObjects, this.config.connectionConfig.timezone ); } escapeId(value) { return mysql3.escapeId(value, false); } }; module2.exports = Pool; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool_config.js var require_pool_config = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool_config.js"(exports, module2) { "use strict"; var ConnectionConfig = require_connection_config(); var PoolConfig = class { constructor(options) { if (typeof options === "string") { options = ConnectionConfig.parseUrl(options); } this.connectionConfig = new ConnectionConfig(options); this.waitForConnections = options.waitForConnections === void 0 ? true : Boolean(options.waitForConnections); this.connectionLimit = isNaN(options.connectionLimit) ? 10 : Number(options.connectionLimit); this.queueLimit = isNaN(options.queueLimit) ? 0 : Number(options.queueLimit); } }; module2.exports = PoolConfig; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool_cluster.js var require_pool_cluster = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/pool_cluster.js"(exports, module2) { "use strict"; var process2 = require("process"); var Pool = require_pool(); var PoolConfig = require_pool_config(); var Connection = require_connection(); var EventEmitter = require("events").EventEmitter; var makeSelector = { RR() { let index = 0; return (clusterIds) => clusterIds[index++ % clusterIds.length]; }, RANDOM() { return (clusterIds) => clusterIds[Math.floor(Math.random() * clusterIds.length)]; }, ORDER() { return (clusterIds) => clusterIds[0]; } }; var PoolNamespace = class { constructor(cluster, pattern, selector) { this._cluster = cluster; this._pattern = pattern; this._selector = makeSelector[selector](); } getConnection(cb) { const clusterNode = this._getClusterNode(); if (clusterNode === null) { return cb(new Error("Pool does Not exists.")); } return this._cluster._getConnection(clusterNode, (err, connection) => { if (err) { return cb(err); } if (connection === "retry") { return this.getConnection(cb); } return cb(null, connection); }); } query(sql, values, cb) { const query = Connection.createQuery(sql, values, cb, {}); this.getConnection((err, conn) => { if (err) { if (typeof query.onResult === "function") { query.onResult(err); } else { query.emit("error", err); } return; } try { conn.query(query).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); return query; } execute(sql, values, cb) { if (typeof values === "function") { cb = values; values = []; } this.getConnection((err, conn) => { if (err) { return cb(err); } try { conn.execute(sql, values, cb).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); } _getClusterNode() { const foundNodeIds = this._cluster._findNodeIds(this._pattern); if (foundNodeIds.length === 0) { return null; } const nodeId = foundNodeIds.length === 1 ? foundNodeIds[0] : this._selector(foundNodeIds); return this._cluster._getNode(nodeId); } }; var PoolCluster = class extends EventEmitter { constructor(config4) { super(); config4 = config4 || {}; this._canRetry = typeof config4.canRetry === "undefined" ? true : config4.canRetry; this._removeNodeErrorCount = config4.removeNodeErrorCount || 5; this._defaultSelector = config4.defaultSelector || "RR"; this._closed = false; this._lastId = 0; this._nodes = {}; this._serviceableNodeIds = []; this._namespaces = {}; this._findCaches = {}; } of(pattern, selector) { pattern = pattern || "*"; selector = selector || this._defaultSelector; selector = selector.toUpperCase(); if (!makeSelector[selector] === "undefined") { selector = this._defaultSelector; } const key = pattern + selector; if (typeof this._namespaces[key] === "undefined") { this._namespaces[key] = new PoolNamespace(this, pattern, selector); } return this._namespaces[key]; } add(id, config4) { if (typeof id === "object") { config4 = id; id = `CLUSTER::${++this._lastId}`; } if (typeof this._nodes[id] === "undefined") { this._nodes[id] = { id, errorCount: 0, pool: new Pool({ config: new PoolConfig(config4) }) }; this._serviceableNodeIds.push(id); this._clearFindCaches(); } } getConnection(pattern, selector, cb) { let namespace; if (typeof pattern === "function") { cb = pattern; namespace = this.of(); } else { if (typeof selector === "function") { cb = selector; selector = this._defaultSelector; } namespace = this.of(pattern, selector); } namespace.getConnection(cb); } end(callback) { const cb = callback !== void 0 ? callback : (err) => { if (err) { throw err; } }; if (this._closed) { process2.nextTick(cb); return; } this._closed = true; let calledBack = false; let waitingClose = 0; const onEnd = (err) => { if (!calledBack && (err || --waitingClose <= 0)) { calledBack = true; return cb(err); } }; for (const id in this._nodes) { waitingClose++; this._nodes[id].pool.end(onEnd); } if (waitingClose === 0) { process2.nextTick(onEnd); } } _findNodeIds(pattern) { if (typeof this._findCaches[pattern] !== "undefined") { return this._findCaches[pattern]; } let foundNodeIds; if (pattern === "*") { foundNodeIds = this._serviceableNodeIds; } else if (this._serviceableNodeIds.indexOf(pattern) !== -1) { foundNodeIds = [pattern]; } else { const keyword = pattern.substring(pattern.length - 1, 0); foundNodeIds = this._serviceableNodeIds.filter( (id) => id.startsWith(keyword) ); } this._findCaches[pattern] = foundNodeIds; return foundNodeIds; } _getNode(id) { return this._nodes[id] || null; } _increaseErrorCount(node) { if (++node.errorCount >= this._removeNodeErrorCount) { const index = this._serviceableNodeIds.indexOf(node.id); if (index !== -1) { this._serviceableNodeIds.splice(index, 1); delete this._nodes[node.id]; this._clearFindCaches(); node.pool.end(); this.emit("remove", node.id); } } } _decreaseErrorCount(node) { if (node.errorCount > 0) { --node.errorCount; } } _getConnection(node, cb) { node.pool.getConnection((err, connection) => { if (err) { this._increaseErrorCount(node); if (this._canRetry) { this.emit("warn", err); console.warn(`[Error] PoolCluster : ${err}`); return cb(null, "retry"); } return cb(err); } this._decreaseErrorCount(node); connection._clusterId = node.id; return cb(null, connection); }); } _clearFindCaches() { this._findCaches = {}; } }; module2.exports = PoolCluster; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/server.js var require_server = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/lib/server.js"(exports, module2) { "use strict"; var net = require("net"); var EventEmitter = require("events").EventEmitter; var Connection = require_connection(); var ConnectionConfig = require_connection_config(); var Server = class extends EventEmitter { constructor() { super(); this.connections = []; this._server = net.createServer(this._handleConnection.bind(this)); } _handleConnection(socket) { const connectionConfig = new ConnectionConfig({ stream: socket, isServer: true }); const connection = new Connection({ config: connectionConfig }); this.emit("connection", connection); } listen(port) { this._port = port; this._server.listen.apply(this._server, arguments); return this; } close(cb) { this._server.close(cb); } }; module2.exports = Server; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/index.js var require_mysql2 = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/index.js"(exports) { "use strict"; var SqlString = require_sqlstring(); var Connection = require_connection(); var ConnectionConfig = require_connection_config(); var parserCache = require_parser_cache(); exports.createConnection = function(opts) { return new Connection({ config: new ConnectionConfig(opts) }); }; exports.connect = exports.createConnection; exports.Connection = Connection; var Pool = require_pool(); var PoolCluster = require_pool_cluster(); exports.createPool = function(config4) { const PoolConfig = require_pool_config(); return new Pool({ config: new PoolConfig(config4) }); }; exports.createPoolCluster = function(config4) { const PoolCluster2 = require_pool_cluster(); return new PoolCluster2(config4); }; exports.createQuery = Connection.createQuery; exports.Pool = Pool; exports.PoolCluster = PoolCluster; exports.createServer = function(handler) { const Server = require_server(); const s2 = new Server(); if (handler) { s2.on("connection", handler); } return s2; }; exports.PoolConnection = require_pool_connection(); exports.escape = SqlString.escape; exports.escapeId = SqlString.escapeId; exports.format = SqlString.format; exports.raw = SqlString.raw; exports.__defineGetter__( "createConnectionPromise", () => require_promise().createConnection ); exports.__defineGetter__( "createPoolPromise", () => require_promise().createPool ); exports.__defineGetter__( "createPoolClusterPromise", () => require_promise().createPoolCluster ); exports.__defineGetter__("Types", () => require_types()); exports.__defineGetter__( "Charsets", () => require_charsets() ); exports.__defineGetter__( "CharsetToEncoding", () => require_charset_encodings() ); exports.setMaxParserCache = function(max) { parserCache.setMaxCache(max); }; exports.clearParserCache = function() { parserCache.clearCache(); }; } }); // ../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/promise.js var require_promise = __commonJS({ "../../node_modules/.pnpm/mysql2@2.3.3/node_modules/mysql2/promise.js"(exports) { "use strict"; var core = require_mysql2(); var EventEmitter = require("events").EventEmitter; function makeDoneCb(resolve, reject, localErr) { return function(err, rows, fields) { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sql = err.sql; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve([rows, fields]); } }; } function inheritEvents(source2, target, events) { const listeners = {}; target.on("newListener", (eventName) => { if (events.indexOf(eventName) >= 0 && !target.listenerCount(eventName)) { source2.on( eventName, listeners[eventName] = function() { const args = [].slice.call(arguments); args.unshift(eventName); target.emit.apply(target, args); } ); } }).on("removeListener", (eventName) => { if (events.indexOf(eventName) >= 0 && !target.listenerCount(eventName)) { source2.removeListener(eventName, listeners[eventName]); delete listeners[eventName]; } }); } var PromisePreparedStatementInfo = class { constructor(statement, promiseImpl) { this.statement = statement; this.Promise = promiseImpl; } execute(parameters) { const s2 = this.statement; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (parameters) { s2.execute(parameters, done); } else { s2.execute(done); } }); } close() { return new this.Promise((resolve) => { this.statement.close(); resolve(); }); } }; var PromiseConnection = class extends EventEmitter { constructor(connection, promiseImpl) { super(); this.connection = connection; this.Promise = promiseImpl || Promise; inheritEvents(connection, this, [ "error", "drain", "connect", "end", "enqueue" ]); } release() { this.connection.release(); } query(query, params) { const c2 = this.connection; const localErr = new Error(); if (typeof params === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (params !== void 0) { c2.query(query, params, done); } else { c2.query(query, done); } }); } execute(query, params) { const c2 = this.connection; const localErr = new Error(); if (typeof params === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (params !== void 0) { c2.execute(query, params, done); } else { c2.execute(query, done); } }); } end() { return new this.Promise((resolve) => { this.connection.end(resolve); }); } beginTransaction() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.beginTransaction(done); }); } commit() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.commit(done); }); } rollback() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.rollback(done); }); } ping() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.ping(done); }); } connect() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.connect((err, param) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(param); } }); }); } prepare(options) { const c2 = this.connection; const promiseImpl = this.Promise; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.prepare(options, (err, statement) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { const wrappedStatement = new PromisePreparedStatementInfo( statement, promiseImpl ); resolve(wrappedStatement); } }); }); } changeUser(options) { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.changeUser(options, (err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(); } }); }); } get config() { return this.connection.config; } get threadId() { return this.connection.threadId; } }; function createConnection(opts) { const coreConnection = core.createConnection(opts); const createConnectionErr = new Error(); const thePromise = opts.Promise || Promise; if (!thePromise) { throw new Error( "no Promise implementation available.Use promise-enabled node version or pass userland Promise implementation as parameter, for example: { Promise: require('bluebird') }" ); } return new thePromise((resolve, reject) => { coreConnection.once("connect", () => { resolve(new PromiseConnection(coreConnection, thePromise)); }); coreConnection.once("error", (err) => { createConnectionErr.message = err.message; createConnectionErr.code = err.code; createConnectionErr.errno = err.errno; createConnectionErr.sqlState = err.sqlState; reject(createConnectionErr); }); }); } (function(functionsToWrap) { for (let i2 = 0; functionsToWrap && i2 < functionsToWrap.length; i2++) { const func = functionsToWrap[i2]; if (typeof core.Connection.prototype[func] === "function" && PromiseConnection.prototype[func] === void 0) { PromiseConnection.prototype[func] = function factory(funcName) { return function() { return core.Connection.prototype[funcName].apply( this.connection, arguments ); }; }(func); } } })([ "close", "createBinlogStream", "destroy", "escape", "escapeId", "format", "pause", "pipe", "resume", "unprepare" ]); var PromisePoolConnection = class extends PromiseConnection { constructor(connection, promiseImpl) { super(connection, promiseImpl); } destroy() { return core.PoolConnection.prototype.destroy.apply( this.connection, arguments ); } }; var PromisePool = class extends EventEmitter { constructor(pool3, thePromise) { super(); this.pool = pool3; this.Promise = thePromise || Promise; inheritEvents(pool3, this, ["acquire", "connection", "enqueue", "release"]); } getConnection() { const corePool = this.pool; return new this.Promise((resolve, reject) => { corePool.getConnection((err, coreConnection) => { if (err) { reject(err); } else { resolve(new PromisePoolConnection(coreConnection, this.Promise)); } }); }); } query(sql, args) { const corePool = this.pool; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (args !== void 0) { corePool.query(sql, args, done); } else { corePool.query(sql, done); } }); } execute(sql, args) { const corePool = this.pool; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (args) { corePool.execute(sql, args, done); } else { corePool.execute(sql, done); } }); } end() { const corePool = this.pool; const localErr = new Error(); return new this.Promise((resolve, reject) => { corePool.end((err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(); } }); }); } }; function createPool(opts) { const corePool = core.createPool(opts); const thePromise = opts.Promise || Promise; if (!thePromise) { throw new Error( "no Promise implementation available.Use promise-enabled node version or pass userland Promise implementation as parameter, for example: { Promise: require('bluebird') }" ); } return new PromisePool(corePool, thePromise); } (function(functionsToWrap) { for (let i2 = 0; functionsToWrap && i2 < functionsToWrap.length; i2++) { const func = functionsToWrap[i2]; if (typeof core.Pool.prototype[func] === "function" && PromisePool.prototype[func] === void 0) { PromisePool.prototype[func] = function factory(funcName) { return function() { return core.Pool.prototype[funcName].apply(this.pool, arguments); }; }(func); } } })([ "escape", "escapeId", "format" ]); var PromisePoolCluster = class extends EventEmitter { constructor(poolCluster, thePromise) { super(); this.poolCluster = poolCluster; this.Promise = thePromise || Promise; inheritEvents(poolCluster, this, ["acquire", "connection", "enqueue", "release"]); } getConnection() { const corePoolCluster = this.poolCluster; return new this.Promise((resolve, reject) => { corePoolCluster.getConnection((err, coreConnection) => { if (err) { reject(err); } else { resolve(new PromisePoolConnection(coreConnection, this.Promise)); } }); }); } query(sql, args) { const corePoolCluster = this.poolCluster; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); corePoolCluster.query(sql, args, done); }); } execute(sql, args) { const corePoolCluster = this.poolCluster; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); corePoolCluster.execute(sql, args, done); }); } of(pattern, selector) { return new PromisePoolCluster( this.poolCluster.of(pattern, selector), this.Promise ); } end() { const corePoolCluster = this.poolCluster; const localErr = new Error(); return new this.Promise((resolve, reject) => { corePoolCluster.end((err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(); } }); }); } }; (function(functionsToWrap) { for (let i2 = 0; functionsToWrap && i2 < functionsToWrap.length; i2++) { const func = functionsToWrap[i2]; if (typeof core.PoolCluster.prototype[func] === "function" && PromisePoolCluster.prototype[func] === void 0) { PromisePoolCluster.prototype[func] = function factory(funcName) { return function() { return core.PoolCluster.prototype[funcName].apply(this.poolCluster, arguments); }; }(func); } } })([ "add" ]); function createPoolCluster(opts) { const corePoolCluster = core.createPoolCluster(opts); const thePromise = opts && opts.Promise || Promise; if (!thePromise) { throw new Error( "no Promise implementation available.Use promise-enabled node version or pass userland Promise implementation as parameter, for example: { Promise: require('bluebird') }" ); } return new PromisePoolCluster(corePoolCluster, thePromise); } exports.createConnection = createConnection; exports.createPool = createPool; exports.createPoolCluster = createPoolCluster; exports.escape = core.escape; exports.escapeId = core.escapeId; exports.format = core.format; exports.raw = core.raw; exports.PromisePool = PromisePool; exports.PromiseConnection = PromiseConnection; exports.PromisePoolConnection = PromisePoolConnection; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/errors.js var require_errors4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/errors.js"(exports) { "use strict"; exports.EE_CANTCREATEFILE = 1; exports.EE_READ = 2; exports.EE_WRITE = 3; exports.EE_BADCLOSE = 4; exports.EE_OUTOFMEMORY = 5; exports.EE_DELETE = 6; exports.EE_LINK = 7; exports.EE_EOFERR = 9; exports.EE_CANTLOCK = 10; exports.EE_CANTUNLOCK = 11; exports.EE_DIR = 12; exports.EE_STAT = 13; exports.EE_CANT_CHSIZE = 14; exports.EE_CANT_OPEN_STREAM = 15; exports.EE_GETWD = 16; exports.EE_SETWD = 17; exports.EE_LINK_WARNING = 18; exports.EE_OPEN_WARNING = 19; exports.EE_DISK_FULL = 20; exports.EE_CANT_MKDIR = 21; exports.EE_UNKNOWN_CHARSET = 22; exports.EE_OUT_OF_FILERESOURCES = 23; exports.EE_CANT_READLINK = 24; exports.EE_CANT_SYMLINK = 25; exports.EE_REALPATH = 26; exports.EE_SYNC = 27; exports.EE_UNKNOWN_COLLATION = 28; exports.EE_FILENOTFOUND = 29; exports.EE_FILE_NOT_CLOSED = 30; exports.EE_CHANGE_OWNERSHIP = 31; exports.EE_CHANGE_PERMISSIONS = 32; exports.EE_CANT_SEEK = 33; exports.HA_ERR_KEY_NOT_FOUND = 120; exports.HA_ERR_FOUND_DUPP_KEY = 121; exports.HA_ERR_INTERNAL_ERROR = 122; exports.HA_ERR_RECORD_CHANGED = 123; exports.HA_ERR_WRONG_INDEX = 124; exports.HA_ERR_CRASHED = 126; exports.HA_ERR_WRONG_IN_RECORD = 127; exports.HA_ERR_OUT_OF_MEM = 128; exports.HA_ERR_NOT_A_TABLE = 130; exports.HA_ERR_WRONG_COMMAND = 131; exports.HA_ERR_OLD_FILE = 132; exports.HA_ERR_NO_ACTIVE_RECORD = 133; exports.HA_ERR_RECORD_DELETED = 134; exports.HA_ERR_RECORD_FILE_FULL = 135; exports.HA_ERR_INDEX_FILE_FULL = 136; exports.HA_ERR_END_OF_FILE = 137; exports.HA_ERR_UNSUPPORTED = 138; exports.HA_ERR_TO_BIG_ROW = 139; exports.HA_WRONG_CREATE_OPTION = 140; exports.HA_ERR_FOUND_DUPP_UNIQUE = 141; exports.HA_ERR_UNKNOWN_CHARSET = 142; exports.HA_ERR_WRONG_MRG_TABLE_DEF = 143; exports.HA_ERR_CRASHED_ON_REPAIR = 144; exports.HA_ERR_CRASHED_ON_USAGE = 145; exports.HA_ERR_LOCK_WAIT_TIMEOUT = 146; exports.HA_ERR_LOCK_TABLE_FULL = 147; exports.HA_ERR_READ_ONLY_TRANSACTION = 148; exports.HA_ERR_LOCK_DEADLOCK = 149; exports.HA_ERR_CANNOT_ADD_FOREIGN = 150; exports.HA_ERR_NO_REFERENCED_ROW = 151; exports.HA_ERR_ROW_IS_REFERENCED = 152; exports.HA_ERR_NO_SAVEPOINT = 153; exports.HA_ERR_NON_UNIQUE_BLOCK_SIZE = 154; exports.HA_ERR_NO_SUCH_TABLE = 155; exports.HA_ERR_TABLE_EXIST = 156; exports.HA_ERR_NO_CONNECTION = 157; exports.HA_ERR_NULL_IN_SPATIAL = 158; exports.HA_ERR_TABLE_DEF_CHANGED = 159; exports.HA_ERR_NO_PARTITION_FOUND = 160; exports.HA_ERR_RBR_LOGGING_FAILED = 161; exports.HA_ERR_DROP_INDEX_FK = 162; exports.HA_ERR_FOREIGN_DUPLICATE_KEY = 163; exports.HA_ERR_TABLE_NEEDS_UPGRADE = 164; exports.HA_ERR_TABLE_READONLY = 165; exports.HA_ERR_AUTOINC_READ_FAILED = 166; exports.HA_ERR_AUTOINC_ERANGE = 167; exports.HA_ERR_GENERIC = 168; exports.HA_ERR_RECORD_IS_THE_SAME = 169; exports.HA_ERR_LOGGING_IMPOSSIBLE = 170; exports.HA_ERR_CORRUPT_EVENT = 171; exports.HA_ERR_NEW_FILE = 172; exports.HA_ERR_ROWS_EVENT_APPLY = 173; exports.HA_ERR_INITIALIZATION = 174; exports.HA_ERR_FILE_TOO_SHORT = 175; exports.HA_ERR_WRONG_CRC = 176; exports.HA_ERR_TOO_MANY_CONCURRENT_TRXS = 177; exports.HA_ERR_NOT_IN_LOCK_PARTITIONS = 178; exports.HA_ERR_INDEX_COL_TOO_LONG = 179; exports.HA_ERR_INDEX_CORRUPT = 180; exports.HA_ERR_UNDO_REC_TOO_BIG = 181; exports.HA_FTS_INVALID_DOCID = 182; exports.HA_ERR_TABLE_IN_FK_CHECK = 183; exports.HA_ERR_TABLESPACE_EXISTS = 184; exports.HA_ERR_TOO_MANY_FIELDS = 185; exports.HA_ERR_ROW_IN_WRONG_PARTITION = 186; exports.HA_ERR_INNODB_READ_ONLY = 187; exports.HA_ERR_FTS_EXCEED_RESULT_CACHE_LIMIT = 188; exports.HA_ERR_TEMP_FILE_WRITE_FAILURE = 189; exports.HA_ERR_INNODB_FORCED_RECOVERY = 190; exports.HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE = 191; exports.ER_HASHCHK = 1e3; exports.ER_NISAMCHK = 1001; exports.ER_NO = 1002; exports.ER_YES = 1003; exports.ER_CANT_CREATE_FILE = 1004; exports.ER_CANT_CREATE_TABLE = 1005; exports.ER_CANT_CREATE_DB = 1006; exports.ER_DB_CREATE_EXISTS = 1007; exports.ER_DB_DROP_EXISTS = 1008; exports.ER_DB_DROP_DELETE = 1009; exports.ER_DB_DROP_RMDIR = 1010; exports.ER_CANT_DELETE_FILE = 1011; exports.ER_CANT_FIND_SYSTEM_REC = 1012; exports.ER_CANT_GET_STAT = 1013; exports.ER_CANT_GET_WD = 1014; exports.ER_CANT_LOCK = 1015; exports.ER_CANT_OPEN_FILE = 1016; exports.ER_FILE_NOT_FOUND = 1017; exports.ER_CANT_READ_DIR = 1018; exports.ER_CANT_SET_WD = 1019; exports.ER_CHECKREAD = 1020; exports.ER_DISK_FULL = 1021; exports.ER_DUP_KEY = 1022; exports.ER_ERROR_ON_CLOSE = 1023; exports.ER_ERROR_ON_READ = 1024; exports.ER_ERROR_ON_RENAME = 1025; exports.ER_ERROR_ON_WRITE = 1026; exports.ER_FILE_USED = 1027; exports.ER_FILSORT_ABORT = 1028; exports.ER_FORM_NOT_FOUND = 1029; exports.ER_GET_ERRNO = 1030; exports.ER_ILLEGAL_HA = 1031; exports.ER_KEY_NOT_FOUND = 1032; exports.ER_NOT_FORM_FILE = 1033; exports.ER_NOT_KEYFILE = 1034; exports.ER_OLD_KEYFILE = 1035; exports.ER_OPEN_AS_READONLY = 1036; exports.ER_OUTOFMEMORY = 1037; exports.ER_OUT_OF_SORTMEMORY = 1038; exports.ER_UNEXPECTED_EOF = 1039; exports.ER_CON_COUNT_ERROR = 1040; exports.ER_OUT_OF_RESOURCES = 1041; exports.ER_BAD_HOST_ERROR = 1042; exports.ER_HANDSHAKE_ERROR = 1043; exports.ER_DBACCESS_DENIED_ERROR = 1044; exports.ER_ACCESS_DENIED_ERROR = 1045; exports.ER_NO_DB_ERROR = 1046; exports.ER_UNKNOWN_COM_ERROR = 1047; exports.ER_BAD_NULL_ERROR = 1048; exports.ER_BAD_DB_ERROR = 1049; exports.ER_TABLE_EXISTS_ERROR = 1050; exports.ER_BAD_TABLE_ERROR = 1051; exports.ER_NON_UNIQ_ERROR = 1052; exports.ER_SERVER_SHUTDOWN = 1053; exports.ER_BAD_FIELD_ERROR = 1054; exports.ER_WRONG_FIELD_WITH_GROUP = 1055; exports.ER_WRONG_GROUP_FIELD = 1056; exports.ER_WRONG_SUM_SELECT = 1057; exports.ER_WRONG_VALUE_COUNT = 1058; exports.ER_TOO_LONG_IDENT = 1059; exports.ER_DUP_FIELDNAME = 1060; exports.ER_DUP_KEYNAME = 1061; exports.ER_DUP_ENTRY = 1062; exports.ER_WRONG_FIELD_SPEC = 1063; exports.ER_PARSE_ERROR = 1064; exports.ER_EMPTY_QUERY = 1065; exports.ER_NONUNIQ_TABLE = 1066; exports.ER_INVALID_DEFAULT = 1067; exports.ER_MULTIPLE_PRI_KEY = 1068; exports.ER_TOO_MANY_KEYS = 1069; exports.ER_TOO_MANY_KEY_PARTS = 1070; exports.ER_TOO_LONG_KEY = 1071; exports.ER_KEY_COLUMN_DOES_NOT_EXITS = 1072; exports.ER_BLOB_USED_AS_KEY = 1073; exports.ER_TOO_BIG_FIELDLENGTH = 1074; exports.ER_WRONG_AUTO_KEY = 1075; exports.ER_READY = 1076; exports.ER_NORMAL_SHUTDOWN = 1077; exports.ER_GOT_SIGNAL = 1078; exports.ER_SHUTDOWN_COMPLETE = 1079; exports.ER_FORCING_CLOSE = 1080; exports.ER_IPSOCK_ERROR = 1081; exports.ER_NO_SUCH_INDEX = 1082; exports.ER_WRONG_FIELD_TERMINATORS = 1083; exports.ER_BLOBS_AND_NO_TERMINATED = 1084; exports.ER_TEXTFILE_NOT_READABLE = 1085; exports.ER_FILE_EXISTS_ERROR = 1086; exports.ER_LOAD_INFO = 1087; exports.ER_ALTER_INFO = 1088; exports.ER_WRONG_SUB_KEY = 1089; exports.ER_CANT_REMOVE_ALL_FIELDS = 1090; exports.ER_CANT_DROP_FIELD_OR_KEY = 1091; exports.ER_INSERT_INFO = 1092; exports.ER_UPDATE_TABLE_USED = 1093; exports.ER_NO_SUCH_THREAD = 1094; exports.ER_KILL_DENIED_ERROR = 1095; exports.ER_NO_TABLES_USED = 1096; exports.ER_TOO_BIG_SET = 1097; exports.ER_NO_UNIQUE_LOGFILE = 1098; exports.ER_TABLE_NOT_LOCKED_FOR_WRITE = 1099; exports.ER_TABLE_NOT_LOCKED = 1100; exports.ER_BLOB_CANT_HAVE_DEFAULT = 1101; exports.ER_WRONG_DB_NAME = 1102; exports.ER_WRONG_TABLE_NAME = 1103; exports.ER_TOO_BIG_SELECT = 1104; exports.ER_UNKNOWN_ERROR = 1105; exports.ER_UNKNOWN_PROCEDURE = 1106; exports.ER_WRONG_PARAMCOUNT_TO_PROCEDURE = 1107; exports.ER_WRONG_PARAMETERS_TO_PROCEDURE = 1108; exports.ER_UNKNOWN_TABLE = 1109; exports.ER_FIELD_SPECIFIED_TWICE = 1110; exports.ER_INVALID_GROUP_FUNC_USE = 1111; exports.ER_UNSUPPORTED_EXTENSION = 1112; exports.ER_TABLE_MUST_HAVE_COLUMNS = 1113; exports.ER_RECORD_FILE_FULL = 1114; exports.ER_UNKNOWN_CHARACTER_SET = 1115; exports.ER_TOO_MANY_TABLES = 1116; exports.ER_TOO_MANY_FIELDS = 1117; exports.ER_TOO_BIG_ROWSIZE = 1118; exports.ER_STACK_OVERRUN = 1119; exports.ER_WRONG_OUTER_JOIN = 1120; exports.ER_NULL_COLUMN_IN_INDEX = 1121; exports.ER_CANT_FIND_UDF = 1122; exports.ER_CANT_INITIALIZE_UDF = 1123; exports.ER_UDF_NO_PATHS = 1124; exports.ER_UDF_EXISTS = 1125; exports.ER_CANT_OPEN_LIBRARY = 1126; exports.ER_CANT_FIND_DL_ENTRY = 1127; exports.ER_FUNCTION_NOT_DEFINED = 1128; exports.ER_HOST_IS_BLOCKED = 1129; exports.ER_HOST_NOT_PRIVILEGED = 1130; exports.ER_PASSWORD_ANONYMOUS_USER = 1131; exports.ER_PASSWORD_NOT_ALLOWED = 1132; exports.ER_PASSWORD_NO_MATCH = 1133; exports.ER_UPDATE_INFO = 1134; exports.ER_CANT_CREATE_THREAD = 1135; exports.ER_WRONG_VALUE_COUNT_ON_ROW = 1136; exports.ER_CANT_REOPEN_TABLE = 1137; exports.ER_INVALID_USE_OF_NULL = 1138; exports.ER_REGEXP_ERROR = 1139; exports.ER_MIX_OF_GROUP_FUNC_AND_FIELDS = 1140; exports.ER_NONEXISTING_GRANT = 1141; exports.ER_TABLEACCESS_DENIED_ERROR = 1142; exports.ER_COLUMNACCESS_DENIED_ERROR = 1143; exports.ER_ILLEGAL_GRANT_FOR_TABLE = 1144; exports.ER_GRANT_WRONG_HOST_OR_USER = 1145; exports.ER_NO_SUCH_TABLE = 1146; exports.ER_NONEXISTING_TABLE_GRANT = 1147; exports.ER_NOT_ALLOWED_COMMAND = 1148; exports.ER_SYNTAX_ERROR = 1149; exports.ER_DELAYED_CANT_CHANGE_LOCK = 1150; exports.ER_TOO_MANY_DELAYED_THREADS = 1151; exports.ER_ABORTING_CONNECTION = 1152; exports.ER_NET_PACKET_TOO_LARGE = 1153; exports.ER_NET_READ_ERROR_FROM_PIPE = 1154; exports.ER_NET_FCNTL_ERROR = 1155; exports.ER_NET_PACKETS_OUT_OF_ORDER = 1156; exports.ER_NET_UNCOMPRESS_ERROR = 1157; exports.ER_NET_READ_ERROR = 1158; exports.ER_NET_READ_INTERRUPTED = 1159; exports.ER_NET_ERROR_ON_WRITE = 1160; exports.ER_NET_WRITE_INTERRUPTED = 1161; exports.ER_TOO_LONG_STRING = 1162; exports.ER_TABLE_CANT_HANDLE_BLOB = 1163; exports.ER_TABLE_CANT_HANDLE_AUTO_INCREMENT = 1164; exports.ER_DELAYED_INSERT_TABLE_LOCKED = 1165; exports.ER_WRONG_COLUMN_NAME = 1166; exports.ER_WRONG_KEY_COLUMN = 1167; exports.ER_WRONG_MRG_TABLE = 1168; exports.ER_DUP_UNIQUE = 1169; exports.ER_BLOB_KEY_WITHOUT_LENGTH = 1170; exports.ER_PRIMARY_CANT_HAVE_NULL = 1171; exports.ER_TOO_MANY_ROWS = 1172; exports.ER_REQUIRES_PRIMARY_KEY = 1173; exports.ER_NO_RAID_COMPILED = 1174; exports.ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE = 1175; exports.ER_KEY_DOES_NOT_EXITS = 1176; exports.ER_CHECK_NO_SUCH_TABLE = 1177; exports.ER_CHECK_NOT_IMPLEMENTED = 1178; exports.ER_CANT_DO_THIS_DURING_AN_TRANSACTION = 1179; exports.ER_ERROR_DURING_COMMIT = 1180; exports.ER_ERROR_DURING_ROLLBACK = 1181; exports.ER_ERROR_DURING_FLUSH_LOGS = 1182; exports.ER_ERROR_DURING_CHECKPOINT = 1183; exports.ER_NEW_ABORTING_CONNECTION = 1184; exports.ER_DUMP_NOT_IMPLEMENTED = 1185; exports.ER_FLUSH_MASTER_BINLOG_CLOSED = 1186; exports.ER_FLUSH_SOURCE_BINLOG_CLOSED = 1186; exports.ER_INDEX_REBUILD = 1187; exports.ER_MASTER = 1188; exports.ER_SOURCE = 1188; exports.ER_MASTER_NET_READ = 1189; exports.ER_SOURCE_NET_READ = 1189; exports.ER_MASTER_NET_WRITE = 1190; exports.ER_SOURCE_NET_WRITE = 1190; exports.ER_FT_MATCHING_KEY_NOT_FOUND = 1191; exports.ER_LOCK_OR_ACTIVE_TRANSACTION = 1192; exports.ER_UNKNOWN_SYSTEM_VARIABLE = 1193; exports.ER_CRASHED_ON_USAGE = 1194; exports.ER_CRASHED_ON_REPAIR = 1195; exports.ER_WARNING_NOT_COMPLETE_ROLLBACK = 1196; exports.ER_TRANS_CACHE_FULL = 1197; exports.ER_SLAVE_MUST_STOP = 1198; exports.ER_REPLICA_MUST_STOP = 1198; exports.ER_SLAVE_NOT_RUNNING = 1199; exports.ER_REPLICA_NOT_RUNNING = 1199; exports.ER_BAD_SLAVE = 1200; exports.ER_BAD_REPLICA = 1200; exports.ER_MASTER_INFO = 1201; exports.ER_SOURCE_INFO = 1201; exports.ER_SLAVE_THREAD = 1202; exports.ER_REPLICA_THREAD = 1202; exports.ER_TOO_MANY_USER_CONNECTIONS = 1203; exports.ER_SET_CONSTANTS_ONLY = 1204; exports.ER_LOCK_WAIT_TIMEOUT = 1205; exports.ER_LOCK_TABLE_FULL = 1206; exports.ER_READ_ONLY_TRANSACTION = 1207; exports.ER_DROP_DB_WITH_READ_LOCK = 1208; exports.ER_CREATE_DB_WITH_READ_LOCK = 1209; exports.ER_WRONG_ARGUMENTS = 1210; exports.ER_NO_PERMISSION_TO_CREATE_USER = 1211; exports.ER_UNION_TABLES_IN_DIFFERENT_DIR = 1212; exports.ER_LOCK_DEADLOCK = 1213; exports.ER_TABLE_CANT_HANDLE_FT = 1214; exports.ER_CANNOT_ADD_FOREIGN = 1215; exports.ER_NO_REFERENCED_ROW = 1216; exports.ER_ROW_IS_REFERENCED = 1217; exports.ER_CONNECT_TO_MASTER = 1218; exports.ER_CONNECT_TO_SOURCE = 1218; exports.ER_QUERY_ON_MASTER = 1219; exports.ER_QUERY_ON_SOURCE = 1219; exports.ER_ERROR_WHEN_EXECUTING_COMMAND = 1220; exports.ER_WRONG_USAGE = 1221; exports.ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT = 1222; exports.ER_CANT_UPDATE_WITH_READLOCK = 1223; exports.ER_MIXING_NOT_ALLOWED = 1224; exports.ER_DUP_ARGUMENT = 1225; exports.ER_USER_LIMIT_REACHED = 1226; exports.ER_SPECIFIC_ACCESS_DENIED_ERROR = 1227; exports.ER_LOCAL_VARIABLE = 1228; exports.ER_GLOBAL_VARIABLE = 1229; exports.ER_NO_DEFAULT = 1230; exports.ER_WRONG_VALUE_FOR_VAR = 1231; exports.ER_WRONG_TYPE_FOR_VAR = 1232; exports.ER_VAR_CANT_BE_READ = 1233; exports.ER_CANT_USE_OPTION_HERE = 1234; exports.ER_NOT_SUPPORTED_YET = 1235; exports.ER_MASTER_FATAL_ERROR_READING_BINLOG = 1236; exports.ER_SOURCE_FATAL_ERROR_READING_BINLOG = 1236; exports.ER_SLAVE_IGNORED_TABLE = 1237; exports.ER_REPLICA_IGNORED_TABLE = 1237; exports.ER_INCORRECT_GLOBAL_LOCAL_VAR = 1238; exports.ER_WRONG_FK_DEF = 1239; exports.ER_KEY_REF_DO_NOT_MATCH_TABLE_REF = 1240; exports.ER_OPERAND_COLUMNS = 1241; exports.ER_SUBQUERY_NO_1_ROW = 1242; exports.ER_UNKNOWN_STMT_HANDLER = 1243; exports.ER_CORRUPT_HELP_DB = 1244; exports.ER_CYCLIC_REFERENCE = 1245; exports.ER_AUTO_CONVERT = 1246; exports.ER_ILLEGAL_REFERENCE = 1247; exports.ER_DERIVED_MUST_HAVE_ALIAS = 1248; exports.ER_SELECT_REDUCED = 1249; exports.ER_TABLENAME_NOT_ALLOWED_HERE = 1250; exports.ER_NOT_SUPPORTED_AUTH_MODE = 1251; exports.ER_SPATIAL_CANT_HAVE_NULL = 1252; exports.ER_COLLATION_CHARSET_MISMATCH = 1253; exports.ER_SLAVE_WAS_RUNNING = 1254; exports.ER_REPLICA_WAS_RUNNING = 1254; exports.ER_SLAVE_WAS_NOT_RUNNING = 1255; exports.ER_REPLICA_WAS_NOT_RUNNING = 1255; exports.ER_TOO_BIG_FOR_UNCOMPRESS = 1256; exports.ER_ZLIB_Z_MEM_ERROR = 1257; exports.ER_ZLIB_Z_BUF_ERROR = 1258; exports.ER_ZLIB_Z_DATA_ERROR = 1259; exports.ER_CUT_VALUE_GROUP_CONCAT = 1260; exports.ER_WARN_TOO_FEW_RECORDS = 1261; exports.ER_WARN_TOO_MANY_RECORDS = 1262; exports.ER_WARN_NULL_TO_NOTNULL = 1263; exports.ER_WARN_DATA_OUT_OF_RANGE = 1264; exports.ER_WARN_DATA_TRUNCATED = 1265; exports.ER_WARN_USING_OTHER_HANDLER = 1266; exports.ER_CANT_AGGREGATE_2COLLATIONS = 1267; exports.ER_DROP_USER = 1268; exports.ER_REVOKE_GRANTS = 1269; exports.ER_CANT_AGGREGATE_3COLLATIONS = 1270; exports.ER_CANT_AGGREGATE_NCOLLATIONS = 1271; exports.ER_VARIABLE_IS_NOT_STRUCT = 1272; exports.ER_UNKNOWN_COLLATION = 1273; exports.ER_SLAVE_IGNORED_SSL_PARAMS = 1274; exports.ER_REPLICA_IGNORED_SSL_PARAMS = 1274; exports.ER_SERVER_IS_IN_SECURE_AUTH_MODE = 1275; exports.ER_WARN_FIELD_RESOLVED = 1276; exports.ER_BAD_SLAVE_UNTIL_COND = 1277; exports.ER_BAD_REPLICA_UNTIL_COND = 1277; exports.ER_MISSING_SKIP_SLAVE = 1278; exports.ER_MISSING_SKIP_REPLICA = 1278; exports.ER_UNTIL_COND_IGNORED = 1279; exports.ER_WRONG_NAME_FOR_INDEX = 1280; exports.ER_WRONG_NAME_FOR_CATALOG = 1281; exports.ER_WARN_QC_RESIZE = 1282; exports.ER_BAD_FT_COLUMN = 1283; exports.ER_UNKNOWN_KEY_CACHE = 1284; exports.ER_WARN_HOSTNAME_WONT_WORK = 1285; exports.ER_UNKNOWN_STORAGE_ENGINE = 1286; exports.ER_WARN_DEPRECATED_SYNTAX = 1287; exports.ER_NON_UPDATABLE_TABLE = 1288; exports.ER_FEATURE_DISABLED = 1289; exports.ER_OPTION_PREVENTS_STATEMENT = 1290; exports.ER_DUPLICATED_VALUE_IN_TYPE = 1291; exports.ER_TRUNCATED_WRONG_VALUE = 1292; exports.ER_TOO_MUCH_AUTO_TIMESTAMP_COLS = 1293; exports.ER_INVALID_ON_UPDATE = 1294; exports.ER_UNSUPPORTED_PS = 1295; exports.ER_GET_ERRMSG = 1296; exports.ER_GET_TEMPORARY_ERRMSG = 1297; exports.ER_UNKNOWN_TIME_ZONE = 1298; exports.ER_WARN_INVALID_TIMESTAMP = 1299; exports.ER_INVALID_CHARACTER_STRING = 1300; exports.ER_WARN_ALLOWED_PACKET_OVERFLOWED = 1301; exports.ER_CONFLICTING_DECLARATIONS = 1302; exports.ER_SP_NO_RECURSIVE_CREATE = 1303; exports.ER_SP_ALREADY_EXISTS = 1304; exports.ER_SP_DOES_NOT_EXIST = 1305; exports.ER_SP_DROP_FAILED = 1306; exports.ER_SP_STORE_FAILED = 1307; exports.ER_SP_LILABEL_MISMATCH = 1308; exports.ER_SP_LABEL_REDEFINE = 1309; exports.ER_SP_LABEL_MISMATCH = 1310; exports.ER_SP_UNINIT_VAR = 1311; exports.ER_SP_BADSELECT = 1312; exports.ER_SP_BADRETURN = 1313; exports.ER_SP_BADSTATEMENT = 1314; exports.ER_UPDATE_LOG_DEPRECATED_IGNORED = 1315; exports.ER_UPDATE_LOG_DEPRECATED_TRANSLATED = 1316; exports.ER_QUERY_INTERRUPTED = 1317; exports.ER_SP_WRONG_NO_OF_ARGS = 1318; exports.ER_SP_COND_MISMATCH = 1319; exports.ER_SP_NORETURN = 1320; exports.ER_SP_NORETURNEND = 1321; exports.ER_SP_BAD_CURSOR_QUERY = 1322; exports.ER_SP_BAD_CURSOR_SELECT = 1323; exports.ER_SP_CURSOR_MISMATCH = 1324; exports.ER_SP_CURSOR_ALREADY_OPEN = 1325; exports.ER_SP_CURSOR_NOT_OPEN = 1326; exports.ER_SP_UNDECLARED_VAR = 1327; exports.ER_SP_WRONG_NO_OF_FETCH_ARGS = 1328; exports.ER_SP_FETCH_NO_DATA = 1329; exports.ER_SP_DUP_PARAM = 1330; exports.ER_SP_DUP_VAR = 1331; exports.ER_SP_DUP_COND = 1332; exports.ER_SP_DUP_CURS = 1333; exports.ER_SP_CANT_ALTER = 1334; exports.ER_SP_SUBSELECT_NYI = 1335; exports.ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG = 1336; exports.ER_SP_VARCOND_AFTER_CURSHNDLR = 1337; exports.ER_SP_CURSOR_AFTER_HANDLER = 1338; exports.ER_SP_CASE_NOT_FOUND = 1339; exports.ER_FPARSER_TOO_BIG_FILE = 1340; exports.ER_FPARSER_BAD_HEADER = 1341; exports.ER_FPARSER_EOF_IN_COMMENT = 1342; exports.ER_FPARSER_ERROR_IN_PARAMETER = 1343; exports.ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER = 1344; exports.ER_VIEW_NO_EXPLAIN = 1345; exports.ER_FRM_UNKNOWN_TYPE = 1346; exports.ER_WRONG_OBJECT = 1347; exports.ER_NONUPDATEABLE_COLUMN = 1348; exports.ER_VIEW_SELECT_DERIVED = 1349; exports.ER_VIEW_SELECT_CLAUSE = 1350; exports.ER_VIEW_SELECT_VARIABLE = 1351; exports.ER_VIEW_SELECT_TMPTABLE = 1352; exports.ER_VIEW_WRONG_LIST = 1353; exports.ER_WARN_VIEW_MERGE = 1354; exports.ER_WARN_VIEW_WITHOUT_KEY = 1355; exports.ER_VIEW_INVALID = 1356; exports.ER_SP_NO_DROP_SP = 1357; exports.ER_SP_GOTO_IN_HNDLR = 1358; exports.ER_TRG_ALREADY_EXISTS = 1359; exports.ER_TRG_DOES_NOT_EXIST = 1360; exports.ER_TRG_ON_VIEW_OR_TEMP_TABLE = 1361; exports.ER_TRG_CANT_CHANGE_ROW = 1362; exports.ER_TRG_NO_SUCH_ROW_IN_TRG = 1363; exports.ER_NO_DEFAULT_FOR_FIELD = 1364; exports.ER_DIVISION_BY_ZERO = 1365; exports.ER_TRUNCATED_WRONG_VALUE_FOR_FIELD = 1366; exports.ER_ILLEGAL_VALUE_FOR_TYPE = 1367; exports.ER_VIEW_NONUPD_CHECK = 1368; exports.ER_VIEW_CHECK_FAILED = 1369; exports.ER_PROCACCESS_DENIED_ERROR = 1370; exports.ER_RELAY_LOG_FAIL = 1371; exports.ER_PASSWD_LENGTH = 1372; exports.ER_UNKNOWN_TARGET_BINLOG = 1373; exports.ER_IO_ERR_LOG_INDEX_READ = 1374; exports.ER_BINLOG_PURGE_PROHIBITED = 1375; exports.ER_FSEEK_FAIL = 1376; exports.ER_BINLOG_PURGE_FATAL_ERR = 1377; exports.ER_LOG_IN_USE = 1378; exports.ER_LOG_PURGE_UNKNOWN_ERR = 1379; exports.ER_RELAY_LOG_INIT = 1380; exports.ER_NO_BINARY_LOGGING = 1381; exports.ER_RESERVED_SYNTAX = 1382; exports.ER_WSAS_FAILED = 1383; exports.ER_DIFF_GROUPS_PROC = 1384; exports.ER_NO_GROUP_FOR_PROC = 1385; exports.ER_ORDER_WITH_PROC = 1386; exports.ER_LOGGING_PROHIBIT_CHANGING_OF = 1387; exports.ER_NO_FILE_MAPPING = 1388; exports.ER_WRONG_MAGIC = 1389; exports.ER_PS_MANY_PARAM = 1390; exports.ER_KEY_PART_0 = 1391; exports.ER_VIEW_CHECKSUM = 1392; exports.ER_VIEW_MULTIUPDATE = 1393; exports.ER_VIEW_NO_INSERT_FIELD_LIST = 1394; exports.ER_VIEW_DELETE_MERGE_VIEW = 1395; exports.ER_CANNOT_USER = 1396; exports.ER_XAER_NOTA = 1397; exports.ER_XAER_INVAL = 1398; exports.ER_XAER_RMFAIL = 1399; exports.ER_XAER_OUTSIDE = 1400; exports.ER_XAER_RMERR = 1401; exports.ER_XA_RBROLLBACK = 1402; exports.ER_NONEXISTING_PROC_GRANT = 1403; exports.ER_PROC_AUTO_GRANT_FAIL = 1404; exports.ER_PROC_AUTO_REVOKE_FAIL = 1405; exports.ER_DATA_TOO_LONG = 1406; exports.ER_SP_BAD_SQLSTATE = 1407; exports.ER_STARTUP = 1408; exports.ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR = 1409; exports.ER_CANT_CREATE_USER_WITH_GRANT = 1410; exports.ER_WRONG_VALUE_FOR_TYPE = 1411; exports.ER_TABLE_DEF_CHANGED = 1412; exports.ER_SP_DUP_HANDLER = 1413; exports.ER_SP_NOT_VAR_ARG = 1414; exports.ER_SP_NO_RETSET = 1415; exports.ER_CANT_CREATE_GEOMETRY_OBJECT = 1416; exports.ER_FAILED_ROUTINE_BREAK_BINLOG = 1417; exports.ER_BINLOG_UNSAFE_ROUTINE = 1418; exports.ER_BINLOG_CREATE_ROUTINE_NEED_SUPER = 1419; exports.ER_EXEC_STMT_WITH_OPEN_CURSOR = 1420; exports.ER_STMT_HAS_NO_OPEN_CURSOR = 1421; exports.ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG = 1422; exports.ER_NO_DEFAULT_FOR_VIEW_FIELD = 1423; exports.ER_SP_NO_RECURSION = 1424; exports.ER_TOO_BIG_SCALE = 1425; exports.ER_TOO_BIG_PRECISION = 1426; exports.ER_M_BIGGER_THAN_D = 1427; exports.ER_WRONG_LOCK_OF_SYSTEM_TABLE = 1428; exports.ER_CONNECT_TO_FOREIGN_DATA_SOURCE = 1429; exports.ER_QUERY_ON_FOREIGN_DATA_SOURCE = 1430; exports.ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST = 1431; exports.ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE = 1432; exports.ER_FOREIGN_DATA_STRING_INVALID = 1433; exports.ER_CANT_CREATE_FEDERATED_TABLE = 1434; exports.ER_TRG_IN_WRONG_SCHEMA = 1435; exports.ER_STACK_OVERRUN_NEED_MORE = 1436; exports.ER_TOO_LONG_BODY = 1437; exports.ER_WARN_CANT_DROP_DEFAULT_KEYCACHE = 1438; exports.ER_TOO_BIG_DISPLAYWIDTH = 1439; exports.ER_XAER_DUPID = 1440; exports.ER_DATETIME_FUNCTION_OVERFLOW = 1441; exports.ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG = 1442; exports.ER_VIEW_PREVENT_UPDATE = 1443; exports.ER_PS_NO_RECURSION = 1444; exports.ER_SP_CANT_SET_AUTOCOMMIT = 1445; exports.ER_MALFORMED_DEFINER = 1446; exports.ER_VIEW_FRM_NO_USER = 1447; exports.ER_VIEW_OTHER_USER = 1448; exports.ER_NO_SUCH_USER = 1449; exports.ER_FORBID_SCHEMA_CHANGE = 1450; exports.ER_ROW_IS_REFERENCED_2 = 1451; exports.ER_NO_REFERENCED_ROW_2 = 1452; exports.ER_SP_BAD_VAR_SHADOW = 1453; exports.ER_TRG_NO_DEFINER = 1454; exports.ER_OLD_FILE_FORMAT = 1455; exports.ER_SP_RECURSION_LIMIT = 1456; exports.ER_SP_PROC_TABLE_CORRUPT = 1457; exports.ER_SP_WRONG_NAME = 1458; exports.ER_TABLE_NEEDS_UPGRADE = 1459; exports.ER_SP_NO_AGGREGATE = 1460; exports.ER_MAX_PREPARED_STMT_COUNT_REACHED = 1461; exports.ER_VIEW_RECURSIVE = 1462; exports.ER_NON_GROUPING_FIELD_USED = 1463; exports.ER_TABLE_CANT_HANDLE_SPKEYS = 1464; exports.ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA = 1465; exports.ER_REMOVED_SPACES = 1466; exports.ER_AUTOINC_READ_FAILED = 1467; exports.ER_USERNAME = 1468; exports.ER_HOSTNAME = 1469; exports.ER_WRONG_STRING_LENGTH = 1470; exports.ER_NON_INSERTABLE_TABLE = 1471; exports.ER_ADMIN_WRONG_MRG_TABLE = 1472; exports.ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT = 1473; exports.ER_NAME_BECOMES_EMPTY = 1474; exports.ER_AMBIGUOUS_FIELD_TERM = 1475; exports.ER_FOREIGN_SERVER_EXISTS = 1476; exports.ER_FOREIGN_SERVER_DOESNT_EXIST = 1477; exports.ER_ILLEGAL_HA_CREATE_OPTION = 1478; exports.ER_PARTITION_REQUIRES_VALUES_ERROR = 1479; exports.ER_PARTITION_WRONG_VALUES_ERROR = 1480; exports.ER_PARTITION_MAXVALUE_ERROR = 1481; exports.ER_PARTITION_SUBPARTITION_ERROR = 1482; exports.ER_PARTITION_SUBPART_MIX_ERROR = 1483; exports.ER_PARTITION_WRONG_NO_PART_ERROR = 1484; exports.ER_PARTITION_WRONG_NO_SUBPART_ERROR = 1485; exports.ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR = 1486; exports.ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR = 1487; exports.ER_FIELD_NOT_FOUND_PART_ERROR = 1488; exports.ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR = 1489; exports.ER_INCONSISTENT_PARTITION_INFO_ERROR = 1490; exports.ER_PARTITION_FUNC_NOT_ALLOWED_ERROR = 1491; exports.ER_PARTITIONS_MUST_BE_DEFINED_ERROR = 1492; exports.ER_RANGE_NOT_INCREASING_ERROR = 1493; exports.ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR = 1494; exports.ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR = 1495; exports.ER_PARTITION_ENTRY_ERROR = 1496; exports.ER_MIX_HANDLER_ERROR = 1497; exports.ER_PARTITION_NOT_DEFINED_ERROR = 1498; exports.ER_TOO_MANY_PARTITIONS_ERROR = 1499; exports.ER_SUBPARTITION_ERROR = 1500; exports.ER_CANT_CREATE_HANDLER_FILE = 1501; exports.ER_BLOB_FIELD_IN_PART_FUNC_ERROR = 1502; exports.ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF = 1503; exports.ER_NO_PARTS_ERROR = 1504; exports.ER_PARTITION_MGMT_ON_NONPARTITIONED = 1505; exports.ER_FOREIGN_KEY_ON_PARTITIONED = 1506; exports.ER_DROP_PARTITION_NON_EXISTENT = 1507; exports.ER_DROP_LAST_PARTITION = 1508; exports.ER_COALESCE_ONLY_ON_HASH_PARTITION = 1509; exports.ER_REORG_HASH_ONLY_ON_SAME_NO = 1510; exports.ER_REORG_NO_PARAM_ERROR = 1511; exports.ER_ONLY_ON_RANGE_LIST_PARTITION = 1512; exports.ER_ADD_PARTITION_SUBPART_ERROR = 1513; exports.ER_ADD_PARTITION_NO_NEW_PARTITION = 1514; exports.ER_COALESCE_PARTITION_NO_PARTITION = 1515; exports.ER_REORG_PARTITION_NOT_EXIST = 1516; exports.ER_SAME_NAME_PARTITION = 1517; exports.ER_NO_BINLOG_ERROR = 1518; exports.ER_CONSECUTIVE_REORG_PARTITIONS = 1519; exports.ER_REORG_OUTSIDE_RANGE = 1520; exports.ER_PARTITION_FUNCTION_FAILURE = 1521; exports.ER_PART_STATE_ERROR = 1522; exports.ER_LIMITED_PART_RANGE = 1523; exports.ER_PLUGIN_IS_NOT_LOADED = 1524; exports.ER_WRONG_VALUE = 1525; exports.ER_NO_PARTITION_FOR_GIVEN_VALUE = 1526; exports.ER_FILEGROUP_OPTION_ONLY_ONCE = 1527; exports.ER_CREATE_FILEGROUP_FAILED = 1528; exports.ER_DROP_FILEGROUP_FAILED = 1529; exports.ER_TABLESPACE_AUTO_EXTEND_ERROR = 1530; exports.ER_WRONG_SIZE_NUMBER = 1531; exports.ER_SIZE_OVERFLOW_ERROR = 1532; exports.ER_ALTER_FILEGROUP_FAILED = 1533; exports.ER_BINLOG_ROW_LOGGING_FAILED = 1534; exports.ER_BINLOG_ROW_WRONG_TABLE_DEF = 1535; exports.ER_BINLOG_ROW_RBR_TO_SBR = 1536; exports.ER_EVENT_ALREADY_EXISTS = 1537; exports.ER_EVENT_STORE_FAILED = 1538; exports.ER_EVENT_DOES_NOT_EXIST = 1539; exports.ER_EVENT_CANT_ALTER = 1540; exports.ER_EVENT_DROP_FAILED = 1541; exports.ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG = 1542; exports.ER_EVENT_ENDS_BEFORE_STARTS = 1543; exports.ER_EVENT_EXEC_TIME_IN_THE_PAST = 1544; exports.ER_EVENT_OPEN_TABLE_FAILED = 1545; exports.ER_EVENT_NEITHER_M_EXPR_NOR_M_AT = 1546; exports.ER_COL_COUNT_DOESNT_MATCH_CORRUPTED = 1547; exports.ER_CANNOT_LOAD_FROM_TABLE = 1548; exports.ER_EVENT_CANNOT_DELETE = 1549; exports.ER_EVENT_COMPILE_ERROR = 1550; exports.ER_EVENT_SAME_NAME = 1551; exports.ER_EVENT_DATA_TOO_LONG = 1552; exports.ER_DROP_INDEX_FK = 1553; exports.ER_WARN_DEPRECATED_SYNTAX_WITH_VER = 1554; exports.ER_CANT_WRITE_LOCK_LOG_TABLE = 1555; exports.ER_CANT_LOCK_LOG_TABLE = 1556; exports.ER_FOREIGN_DUPLICATE_KEY = 1557; exports.ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE = 1558; exports.ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR = 1559; exports.ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT = 1560; exports.ER_NDB_CANT_SWITCH_BINLOG_FORMAT = 1561; exports.ER_PARTITION_NO_TEMPORARY = 1562; exports.ER_PARTITION_CONST_DOMAIN_ERROR = 1563; exports.ER_PARTITION_FUNCTION_IS_NOT_ALLOWED = 1564; exports.ER_DDL_LOG_ERROR = 1565; exports.ER_NULL_IN_VALUES_LESS_THAN = 1566; exports.ER_WRONG_PARTITION_NAME = 1567; exports.ER_CANT_CHANGE_TX_ISOLATION = 1568; exports.ER_DUP_ENTRY_AUTOINCREMENT_CASE = 1569; exports.ER_EVENT_MODIFY_QUEUE_ERROR = 1570; exports.ER_EVENT_SET_VAR_ERROR = 1571; exports.ER_PARTITION_MERGE_ERROR = 1572; exports.ER_CANT_ACTIVATE_LOG = 1573; exports.ER_RBR_NOT_AVAILABLE = 1574; exports.ER_BASE64_DECODE_ERROR = 1575; exports.ER_EVENT_RECURSION_FORBIDDEN = 1576; exports.ER_EVENTS_DB_ERROR = 1577; exports.ER_ONLY_INTEGERS_ALLOWED = 1578; exports.ER_UNSUPORTED_LOG_ENGINE = 1579; exports.ER_BAD_LOG_STATEMENT = 1580; exports.ER_CANT_RENAME_LOG_TABLE = 1581; exports.ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT = 1582; exports.ER_WRONG_PARAMETERS_TO_NATIVE_FCT = 1583; exports.ER_WRONG_PARAMETERS_TO_STORED_FCT = 1584; exports.ER_NATIVE_FCT_NAME_COLLISION = 1585; exports.ER_DUP_ENTRY_WITH_KEY_NAME = 1586; exports.ER_BINLOG_PURGE_EMFILE = 1587; exports.ER_EVENT_CANNOT_CREATE_IN_THE_PAST = 1588; exports.ER_EVENT_CANNOT_ALTER_IN_THE_PAST = 1589; exports.ER_SLAVE_INCIDENT = 1590; exports.ER_REPLICA_INCIDENT = 1590; exports.ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT = 1591; exports.ER_BINLOG_UNSAFE_STATEMENT = 1592; exports.ER_SLAVE_FATAL_ERROR = 1593; exports.ER_REPLICA_FATAL_ERROR = 1593; exports.ER_SLAVE_RELAY_LOG_READ_FAILURE = 1594; exports.ER_REPLICA_RELAY_LOG_READ_FAILURE = 1594; exports.ER_SLAVE_RELAY_LOG_WRITE_FAILURE = 1595; exports.ER_REPLICA_RELAY_LOG_WRITE_FAILURE = 1595; exports.ER_SLAVE_CREATE_EVENT_FAILURE = 1596; exports.ER_REPLICA_CREATE_EVENT_FAILURE = 1596; exports.ER_SLAVE_MASTER_COM_FAILURE = 1597; exports.ER_REPLICA_SOURCE_COM_FAILURE = 1597; exports.ER_BINLOG_LOGGING_IMPOSSIBLE = 1598; exports.ER_VIEW_NO_CREATION_CTX = 1599; exports.ER_VIEW_INVALID_CREATION_CTX = 1600; exports.ER_SR_INVALID_CREATION_CTX = 1601; exports.ER_TRG_CORRUPTED_FILE = 1602; exports.ER_TRG_NO_CREATION_CTX = 1603; exports.ER_TRG_INVALID_CREATION_CTX = 1604; exports.ER_EVENT_INVALID_CREATION_CTX = 1605; exports.ER_TRG_CANT_OPEN_TABLE = 1606; exports.ER_CANT_CREATE_SROUTINE = 1607; exports.ER_NEVER_USED = 1608; exports.ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT = 1609; exports.ER_SLAVE_CORRUPT_EVENT = 1610; exports.ER_REPLICA_CORRUPT_EVENT = 1610; exports.ER_LOAD_DATA_INVALID_COLUMN = 1611; exports.ER_LOG_PURGE_NO_FILE = 1612; exports.ER_XA_RBTIMEOUT = 1613; exports.ER_XA_RBDEADLOCK = 1614; exports.ER_NEED_REPREPARE = 1615; exports.ER_DELAYED_NOT_SUPPORTED = 1616; exports.WARN_NO_MASTER_INFO = 1617; exports.WARN_NO_SOURCE_INFO = 1617; exports.WARN_OPTION_IGNORED = 1618; exports.WARN_PLUGIN_DELETE_BUILTIN = 1619; exports.WARN_PLUGIN_BUSY = 1620; exports.ER_VARIABLE_IS_READONLY = 1621; exports.ER_WARN_ENGINE_TRANSACTION_ROLLBACK = 1622; exports.ER_SLAVE_HEARTBEAT_FAILURE = 1623; exports.ER_REPLICA_HEARTBEAT_FAILURE = 1623; exports.ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE = 1624; exports.ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE = 1624; exports.ER_NDB_REPLICATION_SCHEMA_ERROR = 1625; exports.ER_CONFLICT_FN_PARSE_ERROR = 1626; exports.ER_EXCEPTIONS_WRITE_ERROR = 1627; exports.ER_TOO_LONG_TABLE_COMMENT = 1628; exports.ER_TOO_LONG_FIELD_COMMENT = 1629; exports.ER_FUNC_INEXISTENT_NAME_COLLISION = 1630; exports.ER_DATABASE_NAME = 1631; exports.ER_TABLE_NAME = 1632; exports.ER_PARTITION_NAME = 1633; exports.ER_SUBPARTITION_NAME = 1634; exports.ER_TEMPORARY_NAME = 1635; exports.ER_RENAMED_NAME = 1636; exports.ER_TOO_MANY_CONCURRENT_TRXS = 1637; exports.WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED = 1638; exports.ER_DEBUG_SYNC_TIMEOUT = 1639; exports.ER_DEBUG_SYNC_HIT_LIMIT = 1640; exports.ER_DUP_SIGNAL_SET = 1641; exports.ER_SIGNAL_WARN = 1642; exports.ER_SIGNAL_NOT_FOUND = 1643; exports.ER_SIGNAL_EXCEPTION = 1644; exports.ER_RESIGNAL_WITHOUT_ACTIVE_HANDLER = 1645; exports.ER_SIGNAL_BAD_CONDITION_TYPE = 1646; exports.WARN_COND_ITEM_TRUNCATED = 1647; exports.ER_COND_ITEM_TOO_LONG = 1648; exports.ER_UNKNOWN_LOCALE = 1649; exports.ER_SLAVE_IGNORE_SERVER_IDS = 1650; exports.ER_REPLICA_IGNORE_SERVER_IDS = 1650; exports.ER_QUERY_CACHE_DISABLED = 1651; exports.ER_SAME_NAME_PARTITION_FIELD = 1652; exports.ER_PARTITION_COLUMN_LIST_ERROR = 1653; exports.ER_WRONG_TYPE_COLUMN_VALUE_ERROR = 1654; exports.ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR = 1655; exports.ER_MAXVALUE_IN_VALUES_IN = 1656; exports.ER_TOO_MANY_VALUES_ERROR = 1657; exports.ER_ROW_SINGLE_PARTITION_FIELD_ERROR = 1658; exports.ER_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD = 1659; exports.ER_PARTITION_FIELDS_TOO_LONG = 1660; exports.ER_BINLOG_ROW_ENGINE_AND_STMT_ENGINE = 1661; exports.ER_BINLOG_ROW_MODE_AND_STMT_ENGINE = 1662; exports.ER_BINLOG_UNSAFE_AND_STMT_ENGINE = 1663; exports.ER_BINLOG_ROW_INJECTION_AND_STMT_ENGINE = 1664; exports.ER_BINLOG_STMT_MODE_AND_ROW_ENGINE = 1665; exports.ER_BINLOG_ROW_INJECTION_AND_STMT_MODE = 1666; exports.ER_BINLOG_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE = 1667; exports.ER_BINLOG_UNSAFE_LIMIT = 1668; exports.ER_BINLOG_UNSAFE_INSERT_DELAYED = 1669; exports.ER_BINLOG_UNSAFE_SYSTEM_TABLE = 1670; exports.ER_BINLOG_UNSAFE_AUTOINC_COLUMNS = 1671; exports.ER_BINLOG_UNSAFE_UDF = 1672; exports.ER_BINLOG_UNSAFE_SYSTEM_VARIABLE = 1673; exports.ER_BINLOG_UNSAFE_SYSTEM_FUNCTION = 1674; exports.ER_BINLOG_UNSAFE_NONTRANS_AFTER_TRANS = 1675; exports.ER_MESSAGE_AND_STATEMENT = 1676; exports.ER_SLAVE_CONVERSION_FAILED = 1677; exports.ER_REPLICA_CONVERSION_FAILED = 1677; exports.ER_SLAVE_CANT_CREATE_CONVERSION = 1678; exports.ER_REPLICA_CANT_CREATE_CONVERSION = 1678; exports.ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_FORMAT = 1679; exports.ER_PATH_LENGTH = 1680; exports.ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT = 1681; exports.ER_WRONG_NATIVE_TABLE_STRUCTURE = 1682; exports.ER_WRONG_PERFSCHEMA_USAGE = 1683; exports.ER_WARN_I_S_SKIPPED_TABLE = 1684; exports.ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_DIRECT = 1685; exports.ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_DIRECT = 1686; exports.ER_SPATIAL_MUST_HAVE_GEOM_COL = 1687; exports.ER_TOO_LONG_INDEX_COMMENT = 1688; exports.ER_LOCK_ABORTED = 1689; exports.ER_DATA_OUT_OF_RANGE = 1690; exports.ER_WRONG_SPVAR_TYPE_IN_LIMIT = 1691; exports.ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE = 1692; exports.ER_BINLOG_UNSAFE_MIXED_STATEMENT = 1693; exports.ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_SQL_LOG_BIN = 1694; exports.ER_STORED_FUNCTION_PREVENTS_SWITCH_SQL_LOG_BIN = 1695; exports.ER_FAILED_READ_FROM_PAR_FILE = 1696; exports.ER_VALUES_IS_NOT_INT_TYPE_ERROR = 1697; exports.ER_ACCESS_DENIED_NO_PASSWORD_ERROR = 1698; exports.ER_SET_PASSWORD_AUTH_PLUGIN = 1699; exports.ER_GRANT_PLUGIN_USER_EXISTS = 1700; exports.ER_TRUNCATE_ILLEGAL_FK = 1701; exports.ER_PLUGIN_IS_PERMANENT = 1702; exports.ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN = 1703; exports.ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN = 1703; exports.ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX = 1704; exports.ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX = 1704; exports.ER_STMT_CACHE_FULL = 1705; exports.ER_MULTI_UPDATE_KEY_CONFLICT = 1706; exports.ER_TABLE_NEEDS_REBUILD = 1707; exports.WARN_OPTION_BELOW_LIMIT = 1708; exports.ER_INDEX_COLUMN_TOO_LONG = 1709; exports.ER_ERROR_IN_TRIGGER_BODY = 1710; exports.ER_ERROR_IN_UNKNOWN_TRIGGER_BODY = 1711; exports.ER_INDEX_CORRUPT = 1712; exports.ER_UNDO_RECORD_TOO_BIG = 1713; exports.ER_BINLOG_UNSAFE_INSERT_IGNORE_SELECT = 1714; exports.ER_BINLOG_UNSAFE_INSERT_SELECT_UPDATE = 1715; exports.ER_BINLOG_UNSAFE_REPLACE_SELECT = 1716; exports.ER_BINLOG_UNSAFE_CREATE_IGNORE_SELECT = 1717; exports.ER_BINLOG_UNSAFE_CREATE_REPLACE_SELECT = 1718; exports.ER_BINLOG_UNSAFE_UPDATE_IGNORE = 1719; exports.ER_PLUGIN_NO_UNINSTALL = 1720; exports.ER_PLUGIN_NO_INSTALL = 1721; exports.ER_BINLOG_UNSAFE_WRITE_AUTOINC_SELECT = 1722; exports.ER_BINLOG_UNSAFE_CREATE_SELECT_AUTOINC = 1723; exports.ER_BINLOG_UNSAFE_INSERT_TWO_KEYS = 1724; exports.ER_TABLE_IN_FK_CHECK = 1725; exports.ER_UNSUPPORTED_ENGINE = 1726; exports.ER_BINLOG_UNSAFE_AUTOINC_NOT_FIRST = 1727; exports.ER_CANNOT_LOAD_FROM_TABLE_V2 = 1728; exports.ER_MASTER_DELAY_VALUE_OUT_OF_RANGE = 1729; exports.ER_SOURCE_DELAY_VALUE_OUT_OF_RANGE = 1729; exports.ER_ONLY_FD_AND_RBR_EVENTS_ALLOWED_IN_BINLOG_STATEMENT = 1730; exports.ER_PARTITION_EXCHANGE_DIFFERENT_OPTION = 1731; exports.ER_PARTITION_EXCHANGE_PART_TABLE = 1732; exports.ER_PARTITION_EXCHANGE_TEMP_TABLE = 1733; exports.ER_PARTITION_INSTEAD_OF_SUBPARTITION = 1734; exports.ER_UNKNOWN_PARTITION = 1735; exports.ER_TABLES_DIFFERENT_METADATA = 1736; exports.ER_ROW_DOES_NOT_MATCH_PARTITION = 1737; exports.ER_BINLOG_CACHE_SIZE_GREATER_THAN_MAX = 1738; exports.ER_WARN_INDEX_NOT_APPLICABLE = 1739; exports.ER_PARTITION_EXCHANGE_FOREIGN_KEY = 1740; exports.ER_NO_SUCH_KEY_VALUE = 1741; exports.ER_RPL_INFO_DATA_TOO_LONG = 1742; exports.ER_NETWORK_READ_EVENT_CHECKSUM_FAILURE = 1743; exports.ER_BINLOG_READ_EVENT_CHECKSUM_FAILURE = 1744; exports.ER_BINLOG_STMT_CACHE_SIZE_GREATER_THAN_MAX = 1745; exports.ER_CANT_UPDATE_TABLE_IN_CREATE_TABLE_SELECT = 1746; exports.ER_PARTITION_CLAUSE_ON_NONPARTITIONED = 1747; exports.ER_ROW_DOES_NOT_MATCH_GIVEN_PARTITION_SET = 1748; exports.ER_NO_SUCH_PARTITION = 1749; exports.ER_CHANGE_RPL_INFO_REPOSITORY_FAILURE = 1750; exports.ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_CREATED_TEMP_TABLE = 1751; exports.ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_DROPPED_TEMP_TABLE = 1752; exports.ER_MTS_FEATURE_IS_NOT_SUPPORTED = 1753; exports.ER_MTS_UPDATED_DBS_GREATER_MAX = 1754; exports.ER_MTS_CANT_PARALLEL = 1755; exports.ER_MTS_INCONSISTENT_DATA = 1756; exports.ER_FULLTEXT_NOT_SUPPORTED_WITH_PARTITIONING = 1757; exports.ER_DA_INVALID_CONDITION_NUMBER = 1758; exports.ER_INSECURE_PLAIN_TEXT = 1759; exports.ER_INSECURE_CHANGE_MASTER = 1760; exports.ER_INSECURE_CHANGE_SOURCE = 1760; exports.ER_FOREIGN_DUPLICATE_KEY_WITH_CHILD_INFO = 1761; exports.ER_FOREIGN_DUPLICATE_KEY_WITHOUT_CHILD_INFO = 1762; exports.ER_SQLTHREAD_WITH_SECURE_SLAVE = 1763; exports.ER_SQLTHREAD_WITH_SECURE_REPLICA = 1763; exports.ER_TABLE_HAS_NO_FT = 1764; exports.ER_VARIABLE_NOT_SETTABLE_IN_SF_OR_TRIGGER = 1765; exports.ER_VARIABLE_NOT_SETTABLE_IN_TRANSACTION = 1766; exports.ER_GTID_NEXT_IS_NOT_IN_GTID_NEXT_LIST = 1767; exports.ER_CANT_CHANGE_GTID_NEXT_IN_TRANSACTION_WHEN_GTID_NEXT_LIST_IS_NULL = 1768; exports.ER_SET_STATEMENT_CANNOT_INVOKE_FUNCTION = 1769; exports.ER_GTID_NEXT_CANT_BE_AUTOMATIC_IF_GTID_NEXT_LIST_IS_NON_NULL = 1770; exports.ER_SKIPPING_LOGGED_TRANSACTION = 1771; exports.ER_MALFORMED_GTID_SET_SPECIFICATION = 1772; exports.ER_MALFORMED_GTID_SET_ENCODING = 1773; exports.ER_MALFORMED_GTID_SPECIFICATION = 1774; exports.ER_GNO_EXHAUSTED = 1775; exports.ER_BAD_SLAVE_AUTO_POSITION = 1776; exports.ER_BAD_REPLICA_AUTO_POSITION = 1776; exports.ER_AUTO_POSITION_REQUIRES_GTID_MODE_ON = 1777; exports.ER_CANT_DO_IMPLICIT_COMMIT_IN_TRX_WHEN_GTID_NEXT_IS_SET = 1778; exports.ER_GTID_MODE_2_OR_3_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON = 1779; exports.ER_GTID_MODE_REQUIRES_BINLOG = 1780; exports.ER_CANT_SET_GTID_NEXT_TO_GTID_WHEN_GTID_MODE_IS_OFF = 1781; exports.ER_CANT_SET_GTID_NEXT_TO_ANONYMOUS_WHEN_GTID_MODE_IS_ON = 1782; exports.ER_CANT_SET_GTID_NEXT_LIST_TO_NON_NULL_WHEN_GTID_MODE_IS_OFF = 1783; exports.ER_FOUND_GTID_EVENT_WHEN_GTID_MODE_IS_OFF = 1784; exports.ER_GTID_UNSAFE_NON_TRANSACTIONAL_TABLE = 1785; exports.ER_GTID_UNSAFE_CREATE_SELECT = 1786; exports.ER_GTID_UNSAFE_CREATE_DROP_TEMPORARY_TABLE_IN_TRANSACTION = 1787; exports.ER_GTID_MODE_CAN_ONLY_CHANGE_ONE_STEP_AT_A_TIME = 1788; exports.ER_MASTER_HAS_PURGED_REQUIRED_GTIDS = 1789; exports.ER_SOURCE_HAS_PURGED_REQUIRED_GTIDS = 1789; exports.ER_CANT_SET_GTID_NEXT_WHEN_OWNING_GTID = 1790; exports.ER_UNKNOWN_EXPLAIN_FORMAT = 1791; exports.ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION = 1792; exports.ER_TOO_LONG_TABLE_PARTITION_COMMENT = 1793; exports.ER_SLAVE_CONFIGURATION = 1794; exports.ER_REPLICA_CONFIGURATION = 1794; exports.ER_INNODB_FT_LIMIT = 1795; exports.ER_INNODB_NO_FT_TEMP_TABLE = 1796; exports.ER_INNODB_FT_WRONG_DOCID_COLUMN = 1797; exports.ER_INNODB_FT_WRONG_DOCID_INDEX = 1798; exports.ER_INNODB_ONLINE_LOG_TOO_BIG = 1799; exports.ER_UNKNOWN_ALTER_ALGORITHM = 1800; exports.ER_UNKNOWN_ALTER_LOCK = 1801; exports.ER_MTS_CHANGE_MASTER_CANT_RUN_WITH_GAPS = 1802; exports.ER_MTS_CHANGE_SOURCE_CANT_RUN_WITH_GAPS = 1802; exports.ER_MTS_RECOVERY_FAILURE = 1803; exports.ER_MTS_RESET_WORKERS = 1804; exports.ER_COL_COUNT_DOESNT_MATCH_CORRUPTED_V2 = 1805; exports.ER_SLAVE_SILENT_RETRY_TRANSACTION = 1806; exports.ER_REPLICA_SILENT_RETRY_TRANSACTION = 1806; exports.ER_DISCARD_FK_CHECKS_RUNNING = 1807; exports.ER_TABLE_SCHEMA_MISMATCH = 1808; exports.ER_TABLE_IN_SYSTEM_TABLESPACE = 1809; exports.ER_IO_READ_ERROR = 1810; exports.ER_IO_WRITE_ERROR = 1811; exports.ER_TABLESPACE_MISSING = 1812; exports.ER_TABLESPACE_EXISTS = 1813; exports.ER_TABLESPACE_DISCARDED = 1814; exports.ER_INTERNAL_ERROR = 1815; exports.ER_INNODB_IMPORT_ERROR = 1816; exports.ER_INNODB_INDEX_CORRUPT = 1817; exports.ER_INVALID_YEAR_COLUMN_LENGTH = 1818; exports.ER_NOT_VALID_PASSWORD = 1819; exports.ER_MUST_CHANGE_PASSWORD = 1820; exports.ER_FK_NO_INDEX_CHILD = 1821; exports.ER_FK_NO_INDEX_PARENT = 1822; exports.ER_FK_FAIL_ADD_SYSTEM = 1823; exports.ER_FK_CANNOT_OPEN_PARENT = 1824; exports.ER_FK_INCORRECT_OPTION = 1825; exports.ER_FK_DUP_NAME = 1826; exports.ER_PASSWORD_FORMAT = 1827; exports.ER_FK_COLUMN_CANNOT_DROP = 1828; exports.ER_FK_COLUMN_CANNOT_DROP_CHILD = 1829; exports.ER_FK_COLUMN_NOT_NULL = 1830; exports.ER_DUP_INDEX = 1831; exports.ER_FK_COLUMN_CANNOT_CHANGE = 1832; exports.ER_FK_COLUMN_CANNOT_CHANGE_CHILD = 1833; exports.ER_FK_CANNOT_DELETE_PARENT = 1834; exports.ER_MALFORMED_PACKET = 1835; exports.ER_READ_ONLY_MODE = 1836; exports.ER_GTID_NEXT_TYPE_UNDEFINED_GROUP = 1837; exports.ER_VARIABLE_NOT_SETTABLE_IN_SP = 1838; exports.ER_CANT_SET_GTID_PURGED_WHEN_GTID_MODE_IS_OFF = 1839; exports.ER_CANT_SET_GTID_PURGED_WHEN_GTID_EXECUTED_IS_NOT_EMPTY = 1840; exports.ER_CANT_SET_GTID_PURGED_WHEN_OWNED_GTIDS_IS_NOT_EMPTY = 1841; exports.ER_GTID_PURGED_WAS_CHANGED = 1842; exports.ER_GTID_EXECUTED_WAS_CHANGED = 1843; exports.ER_BINLOG_STMT_MODE_AND_NO_REPL_TABLES = 1844; exports.ER_ALTER_OPERATION_NOT_SUPPORTED = 1845; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON = 1846; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COPY = 1847; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_PARTITION = 1848; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_RENAME = 1849; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COLUMN_TYPE = 1850; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_CHECK = 1851; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_IGNORE = 1852; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOPK = 1853; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_AUTOINC = 1854; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_HIDDEN_FTS = 1855; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_CHANGE_FTS = 1856; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FTS = 1857; exports.ER_SQL_SLAVE_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE = 1858; exports.ER_SQL_REPLICA_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE = 1858; exports.ER_DUP_UNKNOWN_IN_INDEX = 1859; exports.ER_IDENT_CAUSES_TOO_LONG_PATH = 1860; exports.ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOT_NULL = 1861; exports.ER_MUST_CHANGE_PASSWORD_LOGIN = 1862; exports.ER_ROW_IN_WRONG_PARTITION = 1863; exports.ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX = 1864; exports.ER_INNODB_NO_FT_USES_PARSER = 1865; exports.ER_BINLOG_LOGICAL_CORRUPTION = 1866; exports.ER_WARN_PURGE_LOG_IN_USE = 1867; exports.ER_WARN_PURGE_LOG_IS_ACTIVE = 1868; exports.ER_AUTO_INCREMENT_CONFLICT = 1869; exports.WARN_ON_BLOCKHOLE_IN_RBR = 1870; exports.ER_SLAVE_MI_INIT_REPOSITORY = 1871; exports.ER_REPLICA_MI_INIT_REPOSITORY = 1871; exports.ER_SLAVE_RLI_INIT_REPOSITORY = 1872; exports.ER_REPLICA_RLI_INIT_REPOSITORY = 1872; exports.ER_ACCESS_DENIED_CHANGE_USER_ERROR = 1873; exports.ER_INNODB_READ_ONLY = 1874; exports.ER_STOP_SLAVE_SQL_THREAD_TIMEOUT = 1875; exports.ER_STOP_REPLICA_SQL_THREAD_TIMEOUT = 1875; exports.ER_STOP_SLAVE_IO_THREAD_TIMEOUT = 1876; exports.ER_STOP_REPLICA_IO_THREAD_TIMEOUT = 1876; exports.ER_TABLE_CORRUPT = 1877; exports.ER_TEMP_FILE_WRITE_FAILURE = 1878; exports.ER_INNODB_FT_AUX_NOT_HEX_ID = 1879; exports.ER_OLD_TEMPORALS_UPGRADED = 1880; exports.ER_INNODB_FORCED_RECOVERY = 1881; exports.ER_AES_INVALID_IV = 1882; exports.ER_FILE_CORRUPT = 1883; exports.ER_ERROR_ON_SOURCE = 1884; exports.ER_INCONSISTENT_ERROR = 1885; exports.ER_STORAGE_ENGINE_NOT_LOADED = 1886; exports.ER_GET_STACKED_DA_WITHOUT_ACTIVE_HANDLER = 1887; exports.ER_WARN_LEGACY_SYNTAX_CONVERTED = 1888; exports.ER_BINLOG_UNSAFE_FULLTEXT_PLUGIN = 1889; exports.ER_CANNOT_DISCARD_TEMPORARY_TABLE = 1890; exports.ER_FK_DEPTH_EXCEEDED = 1891; exports.ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE_V2 = 1892; exports.ER_WARN_TRIGGER_DOESNT_HAVE_CREATED = 1893; exports.ER_REFERENCED_TRG_DOES_NOT_EXIST = 1894; exports.ER_EXPLAIN_NOT_SUPPORTED = 1895; exports.ER_INVALID_FIELD_SIZE = 1896; exports.ER_MISSING_HA_CREATE_OPTION = 1897; exports.ER_ENGINE_OUT_OF_MEMORY = 1898; exports.ER_PASSWORD_EXPIRE_ANONYMOUS_USER = 1899; exports.ER_REPLICA_SQL_THREAD_MUST_STOP = 1900; exports.ER_NO_FT_MATERIALIZED_SUBQUERY = 1901; exports.ER_INNODB_UNDO_LOG_FULL = 1902; exports.ER_INVALID_ARGUMENT_FOR_LOGARITHM = 1903; exports.ER_REPLICA_IO_THREAD_MUST_STOP = 1904; exports.ER_WARN_OPEN_TEMP_TABLES_MUST_BE_ZERO = 1905; exports.ER_WARN_ONLY_SOURCE_LOG_FILE_NO_POS = 1906; exports.ER_QUERY_TIMEOUT = 1907; exports.ER_NON_RO_SELECT_DISABLE_TIMER = 1908; exports.ER_DUP_LIST_ENTRY = 1909; exports.ER_SQL_MODE_NO_EFFECT = 1910; exports.ER_SESSION_WAS_KILLED = 3169; exports.ER_CLIENT_INTERACTION_TIMEOUT = 4031; exports[1] = "EE_CANTCREATEFILE"; exports[2] = "EE_READ"; exports[3] = "EE_WRITE"; exports[4] = "EE_BADCLOSE"; exports[5] = "EE_OUTOFMEMORY"; exports[6] = "EE_DELETE"; exports[7] = "EE_LINK"; exports[9] = "EE_EOFERR"; exports[10] = "EE_CANTLOCK"; exports[11] = "EE_CANTUNLOCK"; exports[12] = "EE_DIR"; exports[13] = "EE_STAT"; exports[14] = "EE_CANT_CHSIZE"; exports[15] = "EE_CANT_OPEN_STREAM"; exports[16] = "EE_GETWD"; exports[17] = "EE_SETWD"; exports[18] = "EE_LINK_WARNING"; exports[19] = "EE_OPEN_WARNING"; exports[20] = "EE_DISK_FULL"; exports[21] = "EE_CANT_MKDIR"; exports[22] = "EE_UNKNOWN_CHARSET"; exports[23] = "EE_OUT_OF_FILERESOURCES"; exports[24] = "EE_CANT_READLINK"; exports[25] = "EE_CANT_SYMLINK"; exports[26] = "EE_REALPATH"; exports[27] = "EE_SYNC"; exports[28] = "EE_UNKNOWN_COLLATION"; exports[29] = "EE_FILENOTFOUND"; exports[30] = "EE_FILE_NOT_CLOSED"; exports[31] = "EE_CHANGE_OWNERSHIP"; exports[32] = "EE_CHANGE_PERMISSIONS"; exports[33] = "EE_CANT_SEEK"; exports[120] = "HA_ERR_KEY_NOT_FOUND"; exports[121] = "HA_ERR_FOUND_DUPP_KEY"; exports[122] = "HA_ERR_INTERNAL_ERROR"; exports[123] = "HA_ERR_RECORD_CHANGED"; exports[124] = "HA_ERR_WRONG_INDEX"; exports[126] = "HA_ERR_CRASHED"; exports[127] = "HA_ERR_WRONG_IN_RECORD"; exports[128] = "HA_ERR_OUT_OF_MEM"; exports[130] = "HA_ERR_NOT_A_TABLE"; exports[131] = "HA_ERR_WRONG_COMMAND"; exports[132] = "HA_ERR_OLD_FILE"; exports[133] = "HA_ERR_NO_ACTIVE_RECORD"; exports[134] = "HA_ERR_RECORD_DELETED"; exports[135] = "HA_ERR_RECORD_FILE_FULL"; exports[136] = "HA_ERR_INDEX_FILE_FULL"; exports[137] = "HA_ERR_END_OF_FILE"; exports[138] = "HA_ERR_UNSUPPORTED"; exports[139] = "HA_ERR_TO_BIG_ROW"; exports[140] = "HA_WRONG_CREATE_OPTION"; exports[141] = "HA_ERR_FOUND_DUPP_UNIQUE"; exports[142] = "HA_ERR_UNKNOWN_CHARSET"; exports[143] = "HA_ERR_WRONG_MRG_TABLE_DEF"; exports[144] = "HA_ERR_CRASHED_ON_REPAIR"; exports[145] = "HA_ERR_CRASHED_ON_USAGE"; exports[146] = "HA_ERR_LOCK_WAIT_TIMEOUT"; exports[147] = "HA_ERR_LOCK_TABLE_FULL"; exports[148] = "HA_ERR_READ_ONLY_TRANSACTION"; exports[149] = "HA_ERR_LOCK_DEADLOCK"; exports[150] = "HA_ERR_CANNOT_ADD_FOREIGN"; exports[151] = "HA_ERR_NO_REFERENCED_ROW"; exports[152] = "HA_ERR_ROW_IS_REFERENCED"; exports[153] = "HA_ERR_NO_SAVEPOINT"; exports[154] = "HA_ERR_NON_UNIQUE_BLOCK_SIZE"; exports[155] = "HA_ERR_NO_SUCH_TABLE"; exports[156] = "HA_ERR_TABLE_EXIST"; exports[157] = "HA_ERR_NO_CONNECTION"; exports[158] = "HA_ERR_NULL_IN_SPATIAL"; exports[159] = "HA_ERR_TABLE_DEF_CHANGED"; exports[160] = "HA_ERR_NO_PARTITION_FOUND"; exports[161] = "HA_ERR_RBR_LOGGING_FAILED"; exports[162] = "HA_ERR_DROP_INDEX_FK"; exports[163] = "HA_ERR_FOREIGN_DUPLICATE_KEY"; exports[164] = "HA_ERR_TABLE_NEEDS_UPGRADE"; exports[165] = "HA_ERR_TABLE_READONLY"; exports[166] = "HA_ERR_AUTOINC_READ_FAILED"; exports[167] = "HA_ERR_AUTOINC_ERANGE"; exports[168] = "HA_ERR_GENERIC"; exports[169] = "HA_ERR_RECORD_IS_THE_SAME"; exports[170] = "HA_ERR_LOGGING_IMPOSSIBLE"; exports[171] = "HA_ERR_CORRUPT_EVENT"; exports[172] = "HA_ERR_NEW_FILE"; exports[173] = "HA_ERR_ROWS_EVENT_APPLY"; exports[174] = "HA_ERR_INITIALIZATION"; exports[175] = "HA_ERR_FILE_TOO_SHORT"; exports[176] = "HA_ERR_WRONG_CRC"; exports[177] = "HA_ERR_TOO_MANY_CONCURRENT_TRXS"; exports[178] = "HA_ERR_NOT_IN_LOCK_PARTITIONS"; exports[179] = "HA_ERR_INDEX_COL_TOO_LONG"; exports[180] = "HA_ERR_INDEX_CORRUPT"; exports[181] = "HA_ERR_UNDO_REC_TOO_BIG"; exports[182] = "HA_FTS_INVALID_DOCID"; exports[183] = "HA_ERR_TABLE_IN_FK_CHECK"; exports[184] = "HA_ERR_TABLESPACE_EXISTS"; exports[185] = "HA_ERR_TOO_MANY_FIELDS"; exports[186] = "HA_ERR_ROW_IN_WRONG_PARTITION"; exports[187] = "HA_ERR_INNODB_READ_ONLY"; exports[188] = "HA_ERR_FTS_EXCEED_RESULT_CACHE_LIMIT"; exports[189] = "HA_ERR_TEMP_FILE_WRITE_FAILURE"; exports[190] = "HA_ERR_INNODB_FORCED_RECOVERY"; exports[191] = "HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE"; exports[1e3] = "ER_HASHCHK"; exports[1001] = "ER_NISAMCHK"; exports[1002] = "ER_NO"; exports[1003] = "ER_YES"; exports[1004] = "ER_CANT_CREATE_FILE"; exports[1005] = "ER_CANT_CREATE_TABLE"; exports[1006] = "ER_CANT_CREATE_DB"; exports[1007] = "ER_DB_CREATE_EXISTS"; exports[1008] = "ER_DB_DROP_EXISTS"; exports[1009] = "ER_DB_DROP_DELETE"; exports[1010] = "ER_DB_DROP_RMDIR"; exports[1011] = "ER_CANT_DELETE_FILE"; exports[1012] = "ER_CANT_FIND_SYSTEM_REC"; exports[1013] = "ER_CANT_GET_STAT"; exports[1014] = "ER_CANT_GET_WD"; exports[1015] = "ER_CANT_LOCK"; exports[1016] = "ER_CANT_OPEN_FILE"; exports[1017] = "ER_FILE_NOT_FOUND"; exports[1018] = "ER_CANT_READ_DIR"; exports[1019] = "ER_CANT_SET_WD"; exports[1020] = "ER_CHECKREAD"; exports[1021] = "ER_DISK_FULL"; exports[1022] = "ER_DUP_KEY"; exports[1023] = "ER_ERROR_ON_CLOSE"; exports[1024] = "ER_ERROR_ON_READ"; exports[1025] = "ER_ERROR_ON_RENAME"; exports[1026] = "ER_ERROR_ON_WRITE"; exports[1027] = "ER_FILE_USED"; exports[1028] = "ER_FILSORT_ABORT"; exports[1029] = "ER_FORM_NOT_FOUND"; exports[1030] = "ER_GET_ERRNO"; exports[1031] = "ER_ILLEGAL_HA"; exports[1032] = "ER_KEY_NOT_FOUND"; exports[1033] = "ER_NOT_FORM_FILE"; exports[1034] = "ER_NOT_KEYFILE"; exports[1035] = "ER_OLD_KEYFILE"; exports[1036] = "ER_OPEN_AS_READONLY"; exports[1037] = "ER_OUTOFMEMORY"; exports[1038] = "ER_OUT_OF_SORTMEMORY"; exports[1039] = "ER_UNEXPECTED_EOF"; exports[1040] = "ER_CON_COUNT_ERROR"; exports[1041] = "ER_OUT_OF_RESOURCES"; exports[1042] = "ER_BAD_HOST_ERROR"; exports[1043] = "ER_HANDSHAKE_ERROR"; exports[1044] = "ER_DBACCESS_DENIED_ERROR"; exports[1045] = "ER_ACCESS_DENIED_ERROR"; exports[1046] = "ER_NO_DB_ERROR"; exports[1047] = "ER_UNKNOWN_COM_ERROR"; exports[1048] = "ER_BAD_NULL_ERROR"; exports[1049] = "ER_BAD_DB_ERROR"; exports[1050] = "ER_TABLE_EXISTS_ERROR"; exports[1051] = "ER_BAD_TABLE_ERROR"; exports[1052] = "ER_NON_UNIQ_ERROR"; exports[1053] = "ER_SERVER_SHUTDOWN"; exports[1054] = "ER_BAD_FIELD_ERROR"; exports[1055] = "ER_WRONG_FIELD_WITH_GROUP"; exports[1056] = "ER_WRONG_GROUP_FIELD"; exports[1057] = "ER_WRONG_SUM_SELECT"; exports[1058] = "ER_WRONG_VALUE_COUNT"; exports[1059] = "ER_TOO_LONG_IDENT"; exports[1060] = "ER_DUP_FIELDNAME"; exports[1061] = "ER_DUP_KEYNAME"; exports[1062] = "ER_DUP_ENTRY"; exports[1063] = "ER_WRONG_FIELD_SPEC"; exports[1064] = "ER_PARSE_ERROR"; exports[1065] = "ER_EMPTY_QUERY"; exports[1066] = "ER_NONUNIQ_TABLE"; exports[1067] = "ER_INVALID_DEFAULT"; exports[1068] = "ER_MULTIPLE_PRI_KEY"; exports[1069] = "ER_TOO_MANY_KEYS"; exports[1070] = "ER_TOO_MANY_KEY_PARTS"; exports[1071] = "ER_TOO_LONG_KEY"; exports[1072] = "ER_KEY_COLUMN_DOES_NOT_EXITS"; exports[1073] = "ER_BLOB_USED_AS_KEY"; exports[1074] = "ER_TOO_BIG_FIELDLENGTH"; exports[1075] = "ER_WRONG_AUTO_KEY"; exports[1076] = "ER_READY"; exports[1077] = "ER_NORMAL_SHUTDOWN"; exports[1078] = "ER_GOT_SIGNAL"; exports[1079] = "ER_SHUTDOWN_COMPLETE"; exports[1080] = "ER_FORCING_CLOSE"; exports[1081] = "ER_IPSOCK_ERROR"; exports[1082] = "ER_NO_SUCH_INDEX"; exports[1083] = "ER_WRONG_FIELD_TERMINATORS"; exports[1084] = "ER_BLOBS_AND_NO_TERMINATED"; exports[1085] = "ER_TEXTFILE_NOT_READABLE"; exports[1086] = "ER_FILE_EXISTS_ERROR"; exports[1087] = "ER_LOAD_INFO"; exports[1088] = "ER_ALTER_INFO"; exports[1089] = "ER_WRONG_SUB_KEY"; exports[1090] = "ER_CANT_REMOVE_ALL_FIELDS"; exports[1091] = "ER_CANT_DROP_FIELD_OR_KEY"; exports[1092] = "ER_INSERT_INFO"; exports[1093] = "ER_UPDATE_TABLE_USED"; exports[1094] = "ER_NO_SUCH_THREAD"; exports[1095] = "ER_KILL_DENIED_ERROR"; exports[1096] = "ER_NO_TABLES_USED"; exports[1097] = "ER_TOO_BIG_SET"; exports[1098] = "ER_NO_UNIQUE_LOGFILE"; exports[1099] = "ER_TABLE_NOT_LOCKED_FOR_WRITE"; exports[1100] = "ER_TABLE_NOT_LOCKED"; exports[1101] = "ER_BLOB_CANT_HAVE_DEFAULT"; exports[1102] = "ER_WRONG_DB_NAME"; exports[1103] = "ER_WRONG_TABLE_NAME"; exports[1104] = "ER_TOO_BIG_SELECT"; exports[1105] = "ER_UNKNOWN_ERROR"; exports[1106] = "ER_UNKNOWN_PROCEDURE"; exports[1107] = "ER_WRONG_PARAMCOUNT_TO_PROCEDURE"; exports[1108] = "ER_WRONG_PARAMETERS_TO_PROCEDURE"; exports[1109] = "ER_UNKNOWN_TABLE"; exports[1110] = "ER_FIELD_SPECIFIED_TWICE"; exports[1111] = "ER_INVALID_GROUP_FUNC_USE"; exports[1112] = "ER_UNSUPPORTED_EXTENSION"; exports[1113] = "ER_TABLE_MUST_HAVE_COLUMNS"; exports[1114] = "ER_RECORD_FILE_FULL"; exports[1115] = "ER_UNKNOWN_CHARACTER_SET"; exports[1116] = "ER_TOO_MANY_TABLES"; exports[1117] = "ER_TOO_MANY_FIELDS"; exports[1118] = "ER_TOO_BIG_ROWSIZE"; exports[1119] = "ER_STACK_OVERRUN"; exports[1120] = "ER_WRONG_OUTER_JOIN"; exports[1121] = "ER_NULL_COLUMN_IN_INDEX"; exports[1122] = "ER_CANT_FIND_UDF"; exports[1123] = "ER_CANT_INITIALIZE_UDF"; exports[1124] = "ER_UDF_NO_PATHS"; exports[1125] = "ER_UDF_EXISTS"; exports[1126] = "ER_CANT_OPEN_LIBRARY"; exports[1127] = "ER_CANT_FIND_DL_ENTRY"; exports[1128] = "ER_FUNCTION_NOT_DEFINED"; exports[1129] = "ER_HOST_IS_BLOCKED"; exports[1130] = "ER_HOST_NOT_PRIVILEGED"; exports[1131] = "ER_PASSWORD_ANONYMOUS_USER"; exports[1132] = "ER_PASSWORD_NOT_ALLOWED"; exports[1133] = "ER_PASSWORD_NO_MATCH"; exports[1134] = "ER_UPDATE_INFO"; exports[1135] = "ER_CANT_CREATE_THREAD"; exports[1136] = "ER_WRONG_VALUE_COUNT_ON_ROW"; exports[1137] = "ER_CANT_REOPEN_TABLE"; exports[1138] = "ER_INVALID_USE_OF_NULL"; exports[1139] = "ER_REGEXP_ERROR"; exports[1140] = "ER_MIX_OF_GROUP_FUNC_AND_FIELDS"; exports[1141] = "ER_NONEXISTING_GRANT"; exports[1142] = "ER_TABLEACCESS_DENIED_ERROR"; exports[1143] = "ER_COLUMNACCESS_DENIED_ERROR"; exports[1144] = "ER_ILLEGAL_GRANT_FOR_TABLE"; exports[1145] = "ER_GRANT_WRONG_HOST_OR_USER"; exports[1146] = "ER_NO_SUCH_TABLE"; exports[1147] = "ER_NONEXISTING_TABLE_GRANT"; exports[1148] = "ER_NOT_ALLOWED_COMMAND"; exports[1149] = "ER_SYNTAX_ERROR"; exports[1150] = "ER_DELAYED_CANT_CHANGE_LOCK"; exports[1151] = "ER_TOO_MANY_DELAYED_THREADS"; exports[1152] = "ER_ABORTING_CONNECTION"; exports[1153] = "ER_NET_PACKET_TOO_LARGE"; exports[1154] = "ER_NET_READ_ERROR_FROM_PIPE"; exports[1155] = "ER_NET_FCNTL_ERROR"; exports[1156] = "ER_NET_PACKETS_OUT_OF_ORDER"; exports[1157] = "ER_NET_UNCOMPRESS_ERROR"; exports[1158] = "ER_NET_READ_ERROR"; exports[1159] = "ER_NET_READ_INTERRUPTED"; exports[1160] = "ER_NET_ERROR_ON_WRITE"; exports[1161] = "ER_NET_WRITE_INTERRUPTED"; exports[1162] = "ER_TOO_LONG_STRING"; exports[1163] = "ER_TABLE_CANT_HANDLE_BLOB"; exports[1164] = "ER_TABLE_CANT_HANDLE_AUTO_INCREMENT"; exports[1165] = "ER_DELAYED_INSERT_TABLE_LOCKED"; exports[1166] = "ER_WRONG_COLUMN_NAME"; exports[1167] = "ER_WRONG_KEY_COLUMN"; exports[1168] = "ER_WRONG_MRG_TABLE"; exports[1169] = "ER_DUP_UNIQUE"; exports[1170] = "ER_BLOB_KEY_WITHOUT_LENGTH"; exports[1171] = "ER_PRIMARY_CANT_HAVE_NULL"; exports[1172] = "ER_TOO_MANY_ROWS"; exports[1173] = "ER_REQUIRES_PRIMARY_KEY"; exports[1174] = "ER_NO_RAID_COMPILED"; exports[1175] = "ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE"; exports[1176] = "ER_KEY_DOES_NOT_EXITS"; exports[1177] = "ER_CHECK_NO_SUCH_TABLE"; exports[1178] = "ER_CHECK_NOT_IMPLEMENTED"; exports[1179] = "ER_CANT_DO_THIS_DURING_AN_TRANSACTION"; exports[1180] = "ER_ERROR_DURING_COMMIT"; exports[1181] = "ER_ERROR_DURING_ROLLBACK"; exports[1182] = "ER_ERROR_DURING_FLUSH_LOGS"; exports[1183] = "ER_ERROR_DURING_CHECKPOINT"; exports[1184] = "ER_NEW_ABORTING_CONNECTION"; exports[1185] = "ER_DUMP_NOT_IMPLEMENTED"; exports[1186] = "ER_FLUSH_SOURCE_BINLOG_CLOSED"; exports[1187] = "ER_INDEX_REBUILD"; exports[1188] = "ER_SOURCE"; exports[1189] = "ER_SOURCE_NET_READ"; exports[1190] = "ER_SOURCE_NET_WRITE"; exports[1191] = "ER_FT_MATCHING_KEY_NOT_FOUND"; exports[1192] = "ER_LOCK_OR_ACTIVE_TRANSACTION"; exports[1193] = "ER_UNKNOWN_SYSTEM_VARIABLE"; exports[1194] = "ER_CRASHED_ON_USAGE"; exports[1195] = "ER_CRASHED_ON_REPAIR"; exports[1196] = "ER_WARNING_NOT_COMPLETE_ROLLBACK"; exports[1197] = "ER_TRANS_CACHE_FULL"; exports[1198] = "ER_REPLICA_MUST_STOP"; exports[1199] = "ER_REPLICA_NOT_RUNNING"; exports[1200] = "ER_BAD_REPLICA"; exports[1201] = "ER_SOURCE_INFO"; exports[1202] = "ER_REPLICA_THREAD"; exports[1203] = "ER_TOO_MANY_USER_CONNECTIONS"; exports[1204] = "ER_SET_CONSTANTS_ONLY"; exports[1205] = "ER_LOCK_WAIT_TIMEOUT"; exports[1206] = "ER_LOCK_TABLE_FULL"; exports[1207] = "ER_READ_ONLY_TRANSACTION"; exports[1208] = "ER_DROP_DB_WITH_READ_LOCK"; exports[1209] = "ER_CREATE_DB_WITH_READ_LOCK"; exports[1210] = "ER_WRONG_ARGUMENTS"; exports[1211] = "ER_NO_PERMISSION_TO_CREATE_USER"; exports[1212] = "ER_UNION_TABLES_IN_DIFFERENT_DIR"; exports[1213] = "ER_LOCK_DEADLOCK"; exports[1214] = "ER_TABLE_CANT_HANDLE_FT"; exports[1215] = "ER_CANNOT_ADD_FOREIGN"; exports[1216] = "ER_NO_REFERENCED_ROW"; exports[1217] = "ER_ROW_IS_REFERENCED"; exports[1218] = "ER_CONNECT_TO_SOURCE"; exports[1219] = "ER_QUERY_ON_SOURCE"; exports[1220] = "ER_ERROR_WHEN_EXECUTING_COMMAND"; exports[1221] = "ER_WRONG_USAGE"; exports[1222] = "ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT"; exports[1223] = "ER_CANT_UPDATE_WITH_READLOCK"; exports[1224] = "ER_MIXING_NOT_ALLOWED"; exports[1225] = "ER_DUP_ARGUMENT"; exports[1226] = "ER_USER_LIMIT_REACHED"; exports[1227] = "ER_SPECIFIC_ACCESS_DENIED_ERROR"; exports[1228] = "ER_LOCAL_VARIABLE"; exports[1229] = "ER_GLOBAL_VARIABLE"; exports[1230] = "ER_NO_DEFAULT"; exports[1231] = "ER_WRONG_VALUE_FOR_VAR"; exports[1232] = "ER_WRONG_TYPE_FOR_VAR"; exports[1233] = "ER_VAR_CANT_BE_READ"; exports[1234] = "ER_CANT_USE_OPTION_HERE"; exports[1235] = "ER_NOT_SUPPORTED_YET"; exports[1236] = "ER_SOURCE_FATAL_ERROR_READING_BINLOG"; exports[1237] = "ER_REPLICA_IGNORED_TABLE"; exports[1238] = "ER_INCORRECT_GLOBAL_LOCAL_VAR"; exports[1239] = "ER_WRONG_FK_DEF"; exports[1240] = "ER_KEY_REF_DO_NOT_MATCH_TABLE_REF"; exports[1241] = "ER_OPERAND_COLUMNS"; exports[1242] = "ER_SUBQUERY_NO_1_ROW"; exports[1243] = "ER_UNKNOWN_STMT_HANDLER"; exports[1244] = "ER_CORRUPT_HELP_DB"; exports[1245] = "ER_CYCLIC_REFERENCE"; exports[1246] = "ER_AUTO_CONVERT"; exports[1247] = "ER_ILLEGAL_REFERENCE"; exports[1248] = "ER_DERIVED_MUST_HAVE_ALIAS"; exports[1249] = "ER_SELECT_REDUCED"; exports[1250] = "ER_TABLENAME_NOT_ALLOWED_HERE"; exports[1251] = "ER_NOT_SUPPORTED_AUTH_MODE"; exports[1252] = "ER_SPATIAL_CANT_HAVE_NULL"; exports[1253] = "ER_COLLATION_CHARSET_MISMATCH"; exports[1254] = "ER_REPLICA_WAS_RUNNING"; exports[1255] = "ER_REPLICA_WAS_NOT_RUNNING"; exports[1256] = "ER_TOO_BIG_FOR_UNCOMPRESS"; exports[1257] = "ER_ZLIB_Z_MEM_ERROR"; exports[1258] = "ER_ZLIB_Z_BUF_ERROR"; exports[1259] = "ER_ZLIB_Z_DATA_ERROR"; exports[1260] = "ER_CUT_VALUE_GROUP_CONCAT"; exports[1261] = "ER_WARN_TOO_FEW_RECORDS"; exports[1262] = "ER_WARN_TOO_MANY_RECORDS"; exports[1263] = "ER_WARN_NULL_TO_NOTNULL"; exports[1264] = "ER_WARN_DATA_OUT_OF_RANGE"; exports[1265] = "ER_WARN_DATA_TRUNCATED"; exports[1266] = "ER_WARN_USING_OTHER_HANDLER"; exports[1267] = "ER_CANT_AGGREGATE_2COLLATIONS"; exports[1268] = "ER_DROP_USER"; exports[1269] = "ER_REVOKE_GRANTS"; exports[1270] = "ER_CANT_AGGREGATE_3COLLATIONS"; exports[1271] = "ER_CANT_AGGREGATE_NCOLLATIONS"; exports[1272] = "ER_VARIABLE_IS_NOT_STRUCT"; exports[1273] = "ER_UNKNOWN_COLLATION"; exports[1274] = "ER_REPLICA_IGNORED_SSL_PARAMS"; exports[1275] = "ER_SERVER_IS_IN_SECURE_AUTH_MODE"; exports[1276] = "ER_WARN_FIELD_RESOLVED"; exports[1277] = "ER_BAD_REPLICA_UNTIL_COND"; exports[1278] = "ER_MISSING_SKIP_REPLICA"; exports[1279] = "ER_UNTIL_COND_IGNORED"; exports[1280] = "ER_WRONG_NAME_FOR_INDEX"; exports[1281] = "ER_WRONG_NAME_FOR_CATALOG"; exports[1282] = "ER_WARN_QC_RESIZE"; exports[1283] = "ER_BAD_FT_COLUMN"; exports[1284] = "ER_UNKNOWN_KEY_CACHE"; exports[1285] = "ER_WARN_HOSTNAME_WONT_WORK"; exports[1286] = "ER_UNKNOWN_STORAGE_ENGINE"; exports[1287] = "ER_WARN_DEPRECATED_SYNTAX"; exports[1288] = "ER_NON_UPDATABLE_TABLE"; exports[1289] = "ER_FEATURE_DISABLED"; exports[1290] = "ER_OPTION_PREVENTS_STATEMENT"; exports[1291] = "ER_DUPLICATED_VALUE_IN_TYPE"; exports[1292] = "ER_TRUNCATED_WRONG_VALUE"; exports[1293] = "ER_TOO_MUCH_AUTO_TIMESTAMP_COLS"; exports[1294] = "ER_INVALID_ON_UPDATE"; exports[1295] = "ER_UNSUPPORTED_PS"; exports[1296] = "ER_GET_ERRMSG"; exports[1297] = "ER_GET_TEMPORARY_ERRMSG"; exports[1298] = "ER_UNKNOWN_TIME_ZONE"; exports[1299] = "ER_WARN_INVALID_TIMESTAMP"; exports[1300] = "ER_INVALID_CHARACTER_STRING"; exports[1301] = "ER_WARN_ALLOWED_PACKET_OVERFLOWED"; exports[1302] = "ER_CONFLICTING_DECLARATIONS"; exports[1303] = "ER_SP_NO_RECURSIVE_CREATE"; exports[1304] = "ER_SP_ALREADY_EXISTS"; exports[1305] = "ER_SP_DOES_NOT_EXIST"; exports[1306] = "ER_SP_DROP_FAILED"; exports[1307] = "ER_SP_STORE_FAILED"; exports[1308] = "ER_SP_LILABEL_MISMATCH"; exports[1309] = "ER_SP_LABEL_REDEFINE"; exports[1310] = "ER_SP_LABEL_MISMATCH"; exports[1311] = "ER_SP_UNINIT_VAR"; exports[1312] = "ER_SP_BADSELECT"; exports[1313] = "ER_SP_BADRETURN"; exports[1314] = "ER_SP_BADSTATEMENT"; exports[1315] = "ER_UPDATE_LOG_DEPRECATED_IGNORED"; exports[1316] = "ER_UPDATE_LOG_DEPRECATED_TRANSLATED"; exports[1317] = "ER_QUERY_INTERRUPTED"; exports[1318] = "ER_SP_WRONG_NO_OF_ARGS"; exports[1319] = "ER_SP_COND_MISMATCH"; exports[1320] = "ER_SP_NORETURN"; exports[1321] = "ER_SP_NORETURNEND"; exports[1322] = "ER_SP_BAD_CURSOR_QUERY"; exports[1323] = "ER_SP_BAD_CURSOR_SELECT"; exports[1324] = "ER_SP_CURSOR_MISMATCH"; exports[1325] = "ER_SP_CURSOR_ALREADY_OPEN"; exports[1326] = "ER_SP_CURSOR_NOT_OPEN"; exports[1327] = "ER_SP_UNDECLARED_VAR"; exports[1328] = "ER_SP_WRONG_NO_OF_FETCH_ARGS"; exports[1329] = "ER_SP_FETCH_NO_DATA"; exports[1330] = "ER_SP_DUP_PARAM"; exports[1331] = "ER_SP_DUP_VAR"; exports[1332] = "ER_SP_DUP_COND"; exports[1333] = "ER_SP_DUP_CURS"; exports[1334] = "ER_SP_CANT_ALTER"; exports[1335] = "ER_SP_SUBSELECT_NYI"; exports[1336] = "ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG"; exports[1337] = "ER_SP_VARCOND_AFTER_CURSHNDLR"; exports[1338] = "ER_SP_CURSOR_AFTER_HANDLER"; exports[1339] = "ER_SP_CASE_NOT_FOUND"; exports[1340] = "ER_FPARSER_TOO_BIG_FILE"; exports[1341] = "ER_FPARSER_BAD_HEADER"; exports[1342] = "ER_FPARSER_EOF_IN_COMMENT"; exports[1343] = "ER_FPARSER_ERROR_IN_PARAMETER"; exports[1344] = "ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER"; exports[1345] = "ER_VIEW_NO_EXPLAIN"; exports[1346] = "ER_FRM_UNKNOWN_TYPE"; exports[1347] = "ER_WRONG_OBJECT"; exports[1348] = "ER_NONUPDATEABLE_COLUMN"; exports[1349] = "ER_VIEW_SELECT_DERIVED"; exports[1350] = "ER_VIEW_SELECT_CLAUSE"; exports[1351] = "ER_VIEW_SELECT_VARIABLE"; exports[1352] = "ER_VIEW_SELECT_TMPTABLE"; exports[1353] = "ER_VIEW_WRONG_LIST"; exports[1354] = "ER_WARN_VIEW_MERGE"; exports[1355] = "ER_WARN_VIEW_WITHOUT_KEY"; exports[1356] = "ER_VIEW_INVALID"; exports[1357] = "ER_SP_NO_DROP_SP"; exports[1358] = "ER_SP_GOTO_IN_HNDLR"; exports[1359] = "ER_TRG_ALREADY_EXISTS"; exports[1360] = "ER_TRG_DOES_NOT_EXIST"; exports[1361] = "ER_TRG_ON_VIEW_OR_TEMP_TABLE"; exports[1362] = "ER_TRG_CANT_CHANGE_ROW"; exports[1363] = "ER_TRG_NO_SUCH_ROW_IN_TRG"; exports[1364] = "ER_NO_DEFAULT_FOR_FIELD"; exports[1365] = "ER_DIVISION_BY_ZERO"; exports[1366] = "ER_TRUNCATED_WRONG_VALUE_FOR_FIELD"; exports[1367] = "ER_ILLEGAL_VALUE_FOR_TYPE"; exports[1368] = "ER_VIEW_NONUPD_CHECK"; exports[1369] = "ER_VIEW_CHECK_FAILED"; exports[1370] = "ER_PROCACCESS_DENIED_ERROR"; exports[1371] = "ER_RELAY_LOG_FAIL"; exports[1372] = "ER_PASSWD_LENGTH"; exports[1373] = "ER_UNKNOWN_TARGET_BINLOG"; exports[1374] = "ER_IO_ERR_LOG_INDEX_READ"; exports[1375] = "ER_BINLOG_PURGE_PROHIBITED"; exports[1376] = "ER_FSEEK_FAIL"; exports[1377] = "ER_BINLOG_PURGE_FATAL_ERR"; exports[1378] = "ER_LOG_IN_USE"; exports[1379] = "ER_LOG_PURGE_UNKNOWN_ERR"; exports[1380] = "ER_RELAY_LOG_INIT"; exports[1381] = "ER_NO_BINARY_LOGGING"; exports[1382] = "ER_RESERVED_SYNTAX"; exports[1383] = "ER_WSAS_FAILED"; exports[1384] = "ER_DIFF_GROUPS_PROC"; exports[1385] = "ER_NO_GROUP_FOR_PROC"; exports[1386] = "ER_ORDER_WITH_PROC"; exports[1387] = "ER_LOGGING_PROHIBIT_CHANGING_OF"; exports[1388] = "ER_NO_FILE_MAPPING"; exports[1389] = "ER_WRONG_MAGIC"; exports[1390] = "ER_PS_MANY_PARAM"; exports[1391] = "ER_KEY_PART_0"; exports[1392] = "ER_VIEW_CHECKSUM"; exports[1393] = "ER_VIEW_MULTIUPDATE"; exports[1394] = "ER_VIEW_NO_INSERT_FIELD_LIST"; exports[1395] = "ER_VIEW_DELETE_MERGE_VIEW"; exports[1396] = "ER_CANNOT_USER"; exports[1397] = "ER_XAER_NOTA"; exports[1398] = "ER_XAER_INVAL"; exports[1399] = "ER_XAER_RMFAIL"; exports[1400] = "ER_XAER_OUTSIDE"; exports[1401] = "ER_XA_RMERR"; exports[1402] = "ER_XA_RBROLLBACK"; exports[1403] = "ER_NONEXISTING_PROC_GRANT"; exports[1404] = "ER_PROC_AUTO_GRANT_FAIL"; exports[1405] = "ER_PROC_AUTO_REVOKE_FAIL"; exports[1406] = "ER_DATA_TOO_LONG"; exports[1407] = "ER_SP_BAD_SQLSTATE"; exports[1408] = "ER_STARTUP"; exports[1409] = "ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR"; exports[1410] = "ER_CANT_CREATE_USER_WITH_GRANT"; exports[1411] = "ER_WRONG_VALUE_FOR_TYPE"; exports[1412] = "ER_TABLE_DEF_CHANGED"; exports[1413] = "ER_SP_DUP_HANDLER"; exports[1414] = "ER_SP_NOT_VAR_ARG"; exports[1415] = "ER_SP_NO_RETSET"; exports[1416] = "ER_CANT_CREATE_GEOMETRY_OBJECT"; exports[1417] = "ER_FAILED_ROUTINE_BREAK_BINLOG"; exports[1418] = "ER_BINLOG_UNSAFE_ROUTINE"; exports[1419] = "ER_BINLOG_CREATE_ROUTINE_NEED_SUPER"; exports[1420] = "ER_EXEC_STMT_WITH_OPEN_CURSOR"; exports[1421] = "ER_STMT_HAS_NO_OPEN_CURSOR"; exports[1422] = "ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG"; exports[1423] = "ER_NO_DEFAULT_FOR_VIEW_FIELD"; exports[1424] = "ER_SP_NO_RECURSION"; exports[1425] = "ER_TOO_BIG_SCALE"; exports[1426] = "ER_TOO_BIG_PRECISION"; exports[1427] = "ER_M_BIGGER_THAN_D"; exports[1428] = "ER_WRONG_LOCK_OF_SYSTEM_TABLE"; exports[1429] = "ER_CONNECT_TO_FOREIGN_DATA_SOURCE"; exports[1430] = "ER_QUERY_ON_FOREIGN_DATA_SOURCE"; exports[1431] = "ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST"; exports[1432] = "ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE"; exports[1433] = "ER_FOREIGN_DATA_STRING_INVALID"; exports[1434] = "ER_CANT_CREATE_FEDERATED_TABLE"; exports[1435] = "ER_TRG_IN_WRONG_SCHEMA"; exports[1436] = "ER_STACK_OVERRUN_NEED_MORE"; exports[1437] = "ER_TOO_LONG_BODY"; exports[1438] = "ER_WARN_CANT_DROP_DEFAULT_KEYCACHE"; exports[1439] = "ER_TOO_BIG_DISPLAYWIDTH"; exports[1440] = "ER_XAER_DUPID"; exports[1441] = "ER_DATETIME_FUNCTION_OVERFLOW"; exports[1442] = "ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG"; exports[1443] = "ER_VIEW_PREVENT_UPDATE"; exports[1444] = "ER_PS_NO_RECURSION"; exports[1445] = "ER_SP_CANT_SET_AUTOCOMMIT"; exports[1446] = "ER_MALFORMED_DEFINER"; exports[1447] = "ER_VIEW_FRM_NO_USER"; exports[1448] = "ER_VIEW_OTHER_USER"; exports[1449] = "ER_NO_SUCH_USER"; exports[1450] = "ER_FORBID_SCHEMA_CHANGE"; exports[1451] = "ER_ROW_IS_REFERENCED_2"; exports[1452] = "ER_NO_REFERENCED_ROW_2"; exports[1453] = "ER_SP_BAD_VAR_SHADOW"; exports[1454] = "ER_TRG_NO_DEFINER"; exports[1455] = "ER_OLD_FILE_FORMAT"; exports[1456] = "ER_SP_RECURSION_LIMIT"; exports[1457] = "ER_SP_PROC_TABLE_CORRUPT"; exports[1458] = "ER_SP_WRONG_NAME"; exports[1459] = "ER_TABLE_NEEDS_UPGRADE"; exports[1460] = "ER_SP_NO_AGGREGATE"; exports[1461] = "ER_MAX_PREPARED_STMT_COUNT_REACHED"; exports[1462] = "ER_VIEW_RECURSIVE"; exports[1463] = "ER_NON_GROUPING_FIELD_USED"; exports[1464] = "ER_TABLE_CANT_HANDLE_SPKEYS"; exports[1465] = "ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA"; exports[1466] = "ER_REMOVED_SPACES"; exports[1467] = "ER_AUTOINC_READ_FAILED"; exports[1468] = "ER_USERNAME"; exports[1469] = "ER_HOSTNAME"; exports[1470] = "ER_WRONG_STRING_LENGTH"; exports[1471] = "ER_NON_INSERTABLE_TABLE"; exports[1472] = "ER_ADMIN_WRONG_MRG_TABLE"; exports[1473] = "ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT"; exports[1474] = "ER_NAME_BECOMES_EMPTY"; exports[1475] = "ER_AMBIGUOUS_FIELD_TERM"; exports[1476] = "ER_FOREIGN_SERVER_EXISTS"; exports[1477] = "ER_FOREIGN_SERVER_DOESNT_EXIST"; exports[1478] = "ER_ILLEGAL_HA_CREATE_OPTION"; exports[1479] = "ER_PARTITION_REQUIRES_VALUES_ERROR"; exports[1480] = "ER_PARTITION_WRONG_VALUES_ERROR"; exports[1481] = "ER_PARTITION_MAXVALUE_ERROR"; exports[1482] = "ER_PARTITION_SUBPARTITION_ERROR"; exports[1483] = "ER_PARTITION_SUBPART_MIX_ERROR"; exports[1484] = "ER_PARTITION_WRONG_NO_PART_ERROR"; exports[1485] = "ER_PARTITION_WRONG_NO_SUBPART_ERROR"; exports[1486] = "ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR"; exports[1487] = "ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR"; exports[1488] = "ER_FIELD_NOT_FOUND_PART_ERROR"; exports[1489] = "ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR"; exports[1490] = "ER_INCONSISTENT_PARTITION_INFO_ERROR"; exports[1491] = "ER_PARTITION_FUNC_NOT_ALLOWED_ERROR"; exports[1492] = "ER_PARTITIONS_MUST_BE_DEFINED_ERROR"; exports[1493] = "ER_RANGE_NOT_INCREASING_ERROR"; exports[1494] = "ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR"; exports[1495] = "ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR"; exports[1496] = "ER_PARTITION_ENTRY_ERROR"; exports[1497] = "ER_MIX_HANDLER_ERROR"; exports[1498] = "ER_PARTITION_NOT_DEFINED_ERROR"; exports[1499] = "ER_TOO_MANY_PARTITIONS_ERROR"; exports[1500] = "ER_SUBPARTITION_ERROR"; exports[1501] = "ER_CANT_CREATE_HANDLER_FILE"; exports[1502] = "ER_BLOB_FIELD_IN_PART_FUNC_ERROR"; exports[1503] = "ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF"; exports[1504] = "ER_NO_PARTS_ERROR"; exports[1505] = "ER_PARTITION_MGMT_ON_NONPARTITIONED"; exports[1506] = "ER_FOREIGN_KEY_ON_PARTITIONED"; exports[1507] = "ER_DROP_PARTITION_NON_EXISTENT"; exports[1508] = "ER_DROP_LAST_PARTITION"; exports[1509] = "ER_COALESCE_ONLY_ON_HASH_PARTITION"; exports[1510] = "ER_REORG_HASH_ONLY_ON_SAME_NO"; exports[1511] = "ER_REORG_NO_PARAM_ERROR"; exports[1512] = "ER_ONLY_ON_RANGE_LIST_PARTITION"; exports[1513] = "ER_ADD_PARTITION_SUBPART_ERROR"; exports[1514] = "ER_ADD_PARTITION_NO_NEW_PARTITION"; exports[1515] = "ER_COALESCE_PARTITION_NO_PARTITION"; exports[1516] = "ER_REORG_PARTITION_NOT_EXIST"; exports[1517] = "ER_SAME_NAME_PARTITION"; exports[1518] = "ER_NO_BINLOG_ERROR"; exports[1519] = "ER_CONSECUTIVE_REORG_PARTITIONS"; exports[1520] = "ER_REORG_OUTSIDE_RANGE"; exports[1521] = "ER_PARTITION_FUNCTION_FAILURE"; exports[1522] = "ER_PART_STATE_ERROR"; exports[1523] = "ER_LIMITED_PART_RANGE"; exports[1524] = "ER_PLUGIN_IS_NOT_LOADED"; exports[1525] = "ER_WRONG_VALUE"; exports[1526] = "ER_NO_PARTITION_FOR_GIVEN_VALUE"; exports[1527] = "ER_FILEGROUP_OPTION_ONLY_ONCE"; exports[1528] = "ER_CREATE_FILEGROUP_FAILED"; exports[1529] = "ER_DROP_FILEGROUP_FAILED"; exports[1530] = "ER_TABLESPACE_AUTO_EXTEND_ERROR"; exports[1531] = "ER_WRONG_SIZE_NUMBER"; exports[1532] = "ER_SIZE_OVERFLOW_ERROR"; exports[1533] = "ER_ALTER_FILEGROUP_FAILED"; exports[1534] = "ER_BINLOG_ROW_LOGGING_FAILED"; exports[1535] = "ER_BINLOG_ROW_WRONG_TABLE_DEF"; exports[1536] = "ER_BINLOG_ROW_RBR_TO_SBR"; exports[1537] = "ER_EVENT_ALREADY_EXISTS"; exports[1538] = "ER_EVENT_STORE_FAILED"; exports[1539] = "ER_EVENT_DOES_NOT_EXIST"; exports[1540] = "ER_EVENT_CANT_ALTER"; exports[1541] = "ER_EVENT_DROP_FAILED"; exports[1542] = "ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG"; exports[1543] = "ER_EVENT_ENDS_BEFORE_STARTS"; exports[1544] = "ER_EVENT_EXEC_TIME_IN_THE_PAST"; exports[1545] = "ER_EVENT_OPEN_TABLE_FAILED"; exports[1546] = "ER_EVENT_NEITHER_M_EXPR_NOR_M_AT"; exports[1547] = "ER_COL_COUNT_DOESNT_MATCH_CORRUPTED"; exports[1548] = "ER_CANNOT_LOAD_FROM_TABLE"; exports[1549] = "ER_EVENT_CANNOT_DELETE"; exports[1550] = "ER_EVENT_COMPILE_ERROR"; exports[1551] = "ER_EVENT_SAME_NAME"; exports[1552] = "ER_EVENT_DATA_TOO_LONG"; exports[1553] = "ER_DROP_INDEX_FK"; exports[1554] = "ER_WARN_DEPRECATED_SYNTAX_WITH_VER"; exports[1555] = "ER_CANT_WRITE_LOCK_LOG_TABLE"; exports[1556] = "ER_CANT_LOCK_LOG_TABLE"; exports[1557] = "ER_FOREIGN_DUPLICATE_KEY"; exports[1558] = "ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE"; exports[1559] = "ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR"; exports[1560] = "ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT"; exports[1561] = "ER_NDB_CANT_SWITCH_BINLOG_FORMAT"; exports[1562] = "ER_PARTITION_NO_TEMPORARY"; exports[1563] = "ER_PARTITION_CONST_DOMAIN_ERROR"; exports[1564] = "ER_PARTITION_FUNCTION_IS_NOT_ALLOWED"; exports[1565] = "ER_DDL_LOG_ERROR"; exports[1566] = "ER_NULL_IN_VALUES_LESS_THAN"; exports[1567] = "ER_WRONG_PARTITION_NAME"; exports[1568] = "ER_CANT_CHANGE_TX_ISOLATION"; exports[1569] = "ER_DUP_ENTRY_AUTOINCREMENT_CASE"; exports[1570] = "ER_EVENT_MODIFY_QUEUE_ERROR"; exports[1571] = "ER_EVENT_SET_VAR_ERROR"; exports[1572] = "ER_PARTITION_MERGE_ERROR"; exports[1573] = "ER_CANT_ACTIVATE_LOG"; exports[1574] = "ER_RBR_NOT_AVAILABLE"; exports[1575] = "ER_BASE64_DECODE_ERROR"; exports[1576] = "ER_EVENT_RECURSION_FORBIDDEN"; exports[1577] = "ER_EVENTS_DB_ERROR"; exports[1578] = "ER_ONLY_INTEGERS_ALLOWED"; exports[1579] = "ER_UNSUPORTED_LOG_ENGINE"; exports[1580] = "ER_BAD_LOG_STATEMENT"; exports[1581] = "ER_CANT_RENAME_LOG_TABLE"; exports[1582] = "ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT"; exports[1583] = "ER_WRONG_PARAMETERS_TO_NATIVE_FCT"; exports[1584] = "ER_WRONG_PARAMETERS_TO_STORED_FCT"; exports[1585] = "ER_NATIVE_FCT_NAME_COLLISION"; exports[1586] = "ER_DUP_ENTRY_WITH_KEY_NAME"; exports[1587] = "ER_BINLOG_PURGE_EMFILE"; exports[1588] = "ER_EVENT_CANNOT_CREATE_IN_THE_PAST"; exports[1589] = "ER_EVENT_CANNOT_ALTER_IN_THE_PAST"; exports[1590] = "ER_REPLICA_INCIDENT"; exports[1591] = "ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT"; exports[1592] = "ER_BINLOG_UNSAFE_STATEMENT"; exports[1593] = "ER_REPLICA_FATAL_ERROR"; exports[1594] = "ER_REPLICA_RELAY_LOG_READ_FAILURE"; exports[1595] = "ER_REPLICA_RELAY_LOG_WRITE_FAILURE"; exports[1596] = "ER_REPLICA_CREATE_EVENT_FAILURE"; exports[1597] = "ER_REPLICA_SOURCE_COM_FAILURE"; exports[1598] = "ER_BINLOG_LOGGING_IMPOSSIBLE"; exports[1599] = "ER_VIEW_NO_CREATION_CTX"; exports[1600] = "ER_VIEW_INVALID_CREATION_CTX"; exports[1601] = "ER_SR_INVALID_CREATION_CTX"; exports[1602] = "ER_TRG_CORRUPTED_FILE"; exports[1603] = "ER_TRG_NO_CREATION_CTX"; exports[1604] = "ER_TRG_INVALID_CREATION_CTX"; exports[1605] = "ER_EVENT_INVALID_CREATION_CTX"; exports[1606] = "ER_TRG_CANT_OPEN_TABLE"; exports[1607] = "ER_CANT_CREATE_SROUTINE"; exports[1608] = "ER_NEVER_USED"; exports[1609] = "ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT"; exports[1610] = "ER_REPLICA_CORRUPT_EVENT"; exports[1611] = "ER_LOAD_DATA_INVALID_COLUMN"; exports[1612] = "ER_LOG_PURGE_NO_FILE"; exports[1613] = "ER_XA_RBTIMEOUT"; exports[1614] = "ER_XA_RBDEADLOCK"; exports[1615] = "ER_NEED_REPREPARE"; exports[1616] = "ER_DELAYED_NOT_SUPPORTED"; exports[1617] = "WARN_NO_SOURCE_INFO"; exports[1618] = "WARN_OPTION_IGNORED"; exports[1619] = "WARN_PLUGIN_DELETE_BUILTIN"; exports[1620] = "WARN_PLUGIN_BUSY"; exports[1621] = "ER_VARIABLE_IS_READONLY"; exports[1622] = "ER_WARN_ENGINE_TRANSACTION_ROLLBACK"; exports[1623] = "ER_REPLICA_HEARTBEAT_FAILURE"; exports[1624] = "ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE"; exports[1625] = "ER_NDB_REPLICATION_SCHEMA_ERROR"; exports[1626] = "ER_CONFLICT_FN_PARSE_ERROR"; exports[1627] = "ER_EXCEPTIONS_WRITE_ERROR"; exports[1628] = "ER_TOO_LONG_TABLE_COMMENT"; exports[1629] = "ER_TOO_LONG_FIELD_COMMENT"; exports[1630] = "ER_FUNC_INEXISTENT_NAME_COLLISION"; exports[1631] = "ER_DATABASE_NAME"; exports[1632] = "ER_TABLE_NAME"; exports[1633] = "ER_PARTITION_NAME"; exports[1634] = "ER_SUBPARTITION_NAME"; exports[1635] = "ER_TEMPORARY_NAME"; exports[1636] = "ER_RENAMED_NAME"; exports[1637] = "ER_TOO_MANY_CONCURRENT_TRXS"; exports[1638] = "WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED"; exports[1639] = "ER_DEBUG_SYNC_TIMEOUT"; exports[1640] = "ER_DEBUG_SYNC_HIT_LIMIT"; exports[1641] = "ER_DUP_SIGNAL_SET"; exports[1642] = "ER_SIGNAL_WARN"; exports[1643] = "ER_SIGNAL_NOT_FOUND"; exports[1644] = "ER_SIGNAL_EXCEPTION"; exports[1645] = "ER_RESIGNAL_WITHOUT_ACTIVE_HANDLER"; exports[1646] = "ER_SIGNAL_BAD_CONDITION_TYPE"; exports[1647] = "WARN_COND_ITEM_TRUNCATED"; exports[1648] = "ER_COND_ITEM_TOO_LONG"; exports[1649] = "ER_UNKNOWN_LOCALE"; exports[1650] = "ER_REPLICA_IGNORE_SERVER_IDS"; exports[1651] = "ER_QUERY_CACHE_DISABLED"; exports[1652] = "ER_SAME_NAME_PARTITION_FIELD"; exports[1653] = "ER_PARTITION_COLUMN_LIST_ERROR"; exports[1654] = "ER_WRONG_TYPE_COLUMN_VALUE_ERROR"; exports[1655] = "ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR"; exports[1656] = "ER_MAXVALUE_IN_VALUES_IN"; exports[1657] = "ER_TOO_MANY_VALUES_ERROR"; exports[1658] = "ER_ROW_SINGLE_PARTITION_FIELD_ERROR"; exports[1659] = "ER_FIELD_TYPE_NOT_ALLOWED_AS_PARTITION_FIELD"; exports[1660] = "ER_PARTITION_FIELDS_TOO_LONG"; exports[1661] = "ER_BINLOG_ROW_ENGINE_AND_STMT_ENGINE"; exports[1662] = "ER_BINLOG_ROW_MODE_AND_STMT_ENGINE"; exports[1663] = "ER_BINLOG_UNSAFE_AND_STMT_ENGINE"; exports[1664] = "ER_BINLOG_ROW_INJECTION_AND_STMT_ENGINE"; exports[1665] = "ER_BINLOG_STMT_MODE_AND_ROW_ENGINE"; exports[1666] = "ER_BINLOG_ROW_INJECTION_AND_STMT_MODE"; exports[1667] = "ER_BINLOG_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE"; exports[1668] = "ER_BINLOG_UNSAFE_LIMIT"; exports[1669] = "ER_BINLOG_UNSAFE_INSERT_DELAYED"; exports[1670] = "ER_BINLOG_UNSAFE_SYSTEM_TABLE"; exports[1671] = "ER_BINLOG_UNSAFE_AUTOINC_COLUMNS"; exports[1672] = "ER_BINLOG_UNSAFE_UDF"; exports[1673] = "ER_BINLOG_UNSAFE_SYSTEM_VARIABLE"; exports[1674] = "ER_BINLOG_UNSAFE_SYSTEM_FUNCTION"; exports[1675] = "ER_BINLOG_UNSAFE_NONTRANS_AFTER_TRANS"; exports[1676] = "ER_MESSAGE_AND_STATEMENT"; exports[1677] = "ER_REPLICA_CONVERSION_FAILED"; exports[1678] = "ER_REPLICA_CANT_CREATE_CONVERSION"; exports[1679] = "ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_FORMAT"; exports[1680] = "ER_PATH_LENGTH"; exports[1681] = "ER_WARN_DEPRECATED_SYNTAX_NO_REPLACEMENT"; exports[1682] = "ER_WRONG_NATIVE_TABLE_STRUCTURE"; exports[1683] = "ER_WRONG_PERFSCHEMA_USAGE"; exports[1684] = "ER_WARN_I_S_SKIPPED_TABLE"; exports[1685] = "ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_BINLOG_DIRECT"; exports[1686] = "ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_DIRECT"; exports[1687] = "ER_SPATIAL_MUST_HAVE_GEOM_COL"; exports[1688] = "ER_TOO_LONG_INDEX_COMMENT"; exports[1689] = "ER_LOCK_ABORTED"; exports[1690] = "ER_DATA_OUT_OF_RANGE"; exports[1691] = "ER_WRONG_SPVAR_TYPE_IN_LIMIT"; exports[1692] = "ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE"; exports[1693] = "ER_BINLOG_UNSAFE_MIXED_STATEMENT"; exports[1694] = "ER_INSIDE_TRANSACTION_PREVENTS_SWITCH_SQL_LOG_BIN"; exports[1695] = "ER_STORED_FUNCTION_PREVENTS_SWITCH_SQL_LOG_BIN"; exports[1696] = "ER_FAILED_READ_FROM_PAR_FILE"; exports[1697] = "ER_VALUES_IS_NOT_INT_TYPE_ERROR"; exports[1698] = "ER_ACCESS_DENIED_NO_PASSWORD_ERROR"; exports[1699] = "ER_SET_PASSWORD_AUTH_PLUGIN"; exports[1700] = "ER_GRANT_PLUGIN_USER_EXISTS"; exports[1701] = "ER_TRUNCATE_ILLEGAL_FK"; exports[1702] = "ER_PLUGIN_IS_PERMANENT"; exports[1703] = "ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN"; exports[1704] = "ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX"; exports[1705] = "ER_STMT_CACHE_FULL"; exports[1706] = "ER_MULTI_UPDATE_KEY_CONFLICT"; exports[1707] = "ER_TABLE_NEEDS_REBUILD"; exports[1708] = "WARN_OPTION_BELOW_LIMIT"; exports[1709] = "ER_INDEX_COLUMN_TOO_LONG"; exports[1710] = "ER_ERROR_IN_TRIGGER_BODY"; exports[1711] = "ER_ERROR_IN_UNKNOWN_TRIGGER_BODY"; exports[1712] = "ER_INDEX_CORRUPT"; exports[1713] = "ER_UNDO_RECORD_TOO_BIG"; exports[1714] = "ER_BINLOG_UNSAFE_INSERT_IGNORE_SELECT"; exports[1715] = "ER_BINLOG_UNSAFE_INSERT_SELECT_UPDATE"; exports[1716] = "ER_BINLOG_UNSAFE_REPLACE_SELECT"; exports[1717] = "ER_BINLOG_UNSAFE_CREATE_IGNORE_SELECT"; exports[1718] = "ER_BINLOG_UNSAFE_CREATE_REPLACE_SELECT"; exports[1719] = "ER_BINLOG_UNSAFE_UPDATE_IGNORE"; exports[1720] = "ER_PLUGIN_NO_UNINSTALL"; exports[1721] = "ER_PLUGIN_NO_INSTALL"; exports[1722] = "ER_BINLOG_UNSAFE_WRITE_AUTOINC_SELECT"; exports[1723] = "ER_BINLOG_UNSAFE_CREATE_SELECT_AUTOINC"; exports[1724] = "ER_BINLOG_UNSAFE_INSERT_TWO_KEYS"; exports[1725] = "ER_TABLE_IN_FK_CHECK"; exports[1726] = "ER_UNSUPPORTED_ENGINE"; exports[1727] = "ER_BINLOG_UNSAFE_AUTOINC_NOT_FIRST"; exports[1728] = "ER_CANNOT_LOAD_FROM_TABLE_V2"; exports[1729] = "ER_SOURCE_DELAY_VALUE_OUT_OF_RANGE"; exports[1730] = "ER_ONLY_FD_AND_RBR_EVENTS_ALLOWED_IN_BINLOG_STATEMENT"; exports[1731] = "ER_PARTITION_EXCHANGE_DIFFERENT_OPTION"; exports[1732] = "ER_PARTITION_EXCHANGE_PART_TABLE"; exports[1733] = "ER_PARTITION_EXCHANGE_TEMP_TABLE"; exports[1734] = "ER_PARTITION_INSTEAD_OF_SUBPARTITION"; exports[1735] = "ER_UNKNOWN_PARTITION"; exports[1736] = "ER_TABLES_DIFFERENT_METADATA"; exports[1737] = "ER_ROW_DOES_NOT_MATCH_PARTITION"; exports[1738] = "ER_BINLOG_CACHE_SIZE_GREATER_THAN_MAX"; exports[1739] = "ER_WARN_INDEX_NOT_APPLICABLE"; exports[1740] = "ER_PARTITION_EXCHANGE_FOREIGN_KEY"; exports[1741] = "ER_NO_SUCH_KEY_VALUE"; exports[1742] = "ER_RPL_INFO_DATA_TOO_LONG"; exports[1743] = "ER_NETWORK_READ_EVENT_CHECKSUM_FAILURE"; exports[1744] = "ER_BINLOG_READ_EVENT_CHECKSUM_FAILURE"; exports[1745] = "ER_BINLOG_STMT_CACHE_SIZE_GREATER_THAN_MAX"; exports[1746] = "ER_CANT_UPDATE_TABLE_IN_CREATE_TABLE_SELECT"; exports[1747] = "ER_PARTITION_CLAUSE_ON_NONPARTITIONED"; exports[1748] = "ER_ROW_DOES_NOT_MATCH_GIVEN_PARTITION_SET"; exports[1749] = "ER_NO_SUCH_PARTITION"; exports[1750] = "ER_CHANGE_RPL_INFO_REPOSITORY_FAILURE"; exports[1751] = "ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_CREATED_TEMP_TABLE"; exports[1752] = "ER_WARNING_NOT_COMPLETE_ROLLBACK_WITH_DROPPED_TEMP_TABLE"; exports[1753] = "ER_MTS_FEATURE_IS_NOT_SUPPORTED"; exports[1754] = "ER_MTS_UPDATED_DBS_GREATER_MAX"; exports[1755] = "ER_MTS_CANT_PARALLEL"; exports[1756] = "ER_MTS_INCONSISTENT_DATA"; exports[1757] = "ER_FULLTEXT_NOT_SUPPORTED_WITH_PARTITIONING"; exports[1758] = "ER_DA_INVALID_CONDITION_NUMBER"; exports[1759] = "ER_INSECURE_PLAIN_TEXT"; exports[1760] = "ER_INSECURE_CHANGE_SOURCE"; exports[1761] = "ER_FOREIGN_DUPLICATE_KEY_WITH_CHILD_INFO"; exports[1762] = "ER_FOREIGN_DUPLICATE_KEY_WITHOUT_CHILD_INFO"; exports[1763] = "ER_SQLTHREAD_WITH_SECURE_REPLICA"; exports[1764] = "ER_TABLE_HAS_NO_FT"; exports[1765] = "ER_VARIABLE_NOT_SETTABLE_IN_SF_OR_TRIGGER"; exports[1766] = "ER_VARIABLE_NOT_SETTABLE_IN_TRANSACTION"; exports[1767] = "ER_GTID_NEXT_IS_NOT_IN_GTID_NEXT_LIST"; exports[1768] = "ER_CANT_CHANGE_GTID_NEXT_IN_TRANSACTION_WHEN_GTID_NEXT_LIST_IS_NULL"; exports[1769] = "ER_SET_STATEMENT_CANNOT_INVOKE_FUNCTION"; exports[1770] = "ER_GTID_NEXT_CANT_BE_AUTOMATIC_IF_GTID_NEXT_LIST_IS_NON_NULL"; exports[1771] = "ER_SKIPPING_LOGGED_TRANSACTION"; exports[1772] = "ER_MALFORMED_GTID_SET_SPECIFICATION"; exports[1773] = "ER_MALFORMED_GTID_SET_ENCODING"; exports[1774] = "ER_MALFORMED_GTID_SPECIFICATION"; exports[1775] = "ER_GNO_EXHAUSTED"; exports[1776] = "ER_BAD_REPLICA_AUTO_POSITION"; exports[1777] = "ER_AUTO_POSITION_REQUIRES_GTID_MODE_ON"; exports[1778] = "ER_CANT_DO_IMPLICIT_COMMIT_IN_TRX_WHEN_GTID_NEXT_IS_SET"; exports[1779] = "ER_GTID_MODE_2_OR_3_REQUIRES_ENFORCE_GTID_CONSISTENCY_ON"; exports[1780] = "ER_GTID_MODE_REQUIRES_BINLOG"; exports[1781] = "ER_CANT_SET_GTID_NEXT_TO_GTID_WHEN_GTID_MODE_IS_OFF"; exports[1782] = "ER_CANT_SET_GTID_NEXT_TO_ANONYMOUS_WHEN_GTID_MODE_IS_ON"; exports[1783] = "ER_CANT_SET_GTID_NEXT_LIST_TO_NON_NULL_WHEN_GTID_MODE_IS_OFF"; exports[1784] = "ER_FOUND_GTID_EVENT_WHEN_GTID_MODE_IS_OFF"; exports[1785] = "ER_GTID_UNSAFE_NON_TRANSACTIONAL_TABLE"; exports[1786] = "ER_GTID_UNSAFE_CREATE_SELECT"; exports[1787] = "ER_GTID_UNSAFE_CREATE_DROP_TEMPORARY_TABLE_IN_TRANSACTION"; exports[1788] = "ER_GTID_MODE_CAN_ONLY_CHANGE_ONE_STEP_AT_A_TIME"; exports[1789] = "ER_SOURCE_HAS_PURGED_REQUIRED_GTIDS"; exports[1790] = "ER_CANT_SET_GTID_NEXT_WHEN_OWNING_GTID"; exports[1791] = "ER_UNKNOWN_EXPLAIN_FORMAT"; exports[1792] = "ER_CANT_EXECUTE_IN_READ_ONLY_TRANSACTION"; exports[1793] = "ER_TOO_LONG_TABLE_PARTITION_COMMENT"; exports[1794] = "ER_REPLICA_CONFIGURATION"; exports[1795] = "ER_INNODB_FT_LIMIT"; exports[1796] = "ER_INNODB_NO_FT_TEMP_TABLE"; exports[1797] = "ER_INNODB_FT_WRONG_DOCID_COLUMN"; exports[1798] = "ER_INNODB_FT_WRONG_DOCID_INDEX"; exports[1799] = "ER_INNODB_ONLINE_LOG_TOO_BIG"; exports[1800] = "ER_UNKNOWN_ALTER_ALGORITHM"; exports[1801] = "ER_UNKNOWN_ALTER_LOCK"; exports[1802] = "ER_MTS_CHANGE_SOURCE_CANT_RUN_WITH_GAPS"; exports[1803] = "ER_MTS_RECOVERY_FAILURE"; exports[1804] = "ER_MTS_RESET_WORKERS"; exports[1805] = "ER_COL_COUNT_DOESNT_MATCH_CORRUPTED_V2"; exports[1806] = "ER_REPLICA_SILENT_RETRY_TRANSACTION"; exports[1807] = "ER_DISCARD_FK_CHECKS_RUNNING"; exports[1808] = "ER_TABLE_SCHEMA_MISMATCH"; exports[1809] = "ER_TABLE_IN_SYSTEM_TABLESPACE"; exports[1810] = "ER_IO_READ_ERROR"; exports[1811] = "ER_IO_WRITE_ERROR"; exports[1812] = "ER_TABLESPACE_MISSING"; exports[1813] = "ER_TABLESPACE_EXISTS"; exports[1814] = "ER_TABLESPACE_DISCARDED"; exports[1815] = "ER_INTERNAL_ERROR"; exports[1816] = "ER_INNODB_IMPORT_ERROR"; exports[1817] = "ER_INNODB_INDEX_CORRUPT"; exports[1818] = "ER_INVALID_YEAR_COLUMN_LENGTH"; exports[1819] = "ER_NOT_VALID_PASSWORD"; exports[1820] = "ER_MUST_CHANGE_PASSWORD"; exports[1821] = "ER_FK_NO_INDEX_CHILD"; exports[1822] = "ER_FK_NO_INDEX_PARENT"; exports[1823] = "ER_FK_FAIL_ADD_SYSTEM"; exports[1824] = "ER_FK_CANNOT_OPEN_PARENT"; exports[1825] = "ER_FK_INCORRECT_OPTION"; exports[1826] = "ER_FK_DUP_NAME"; exports[1827] = "ER_PASSWORD_FORMAT"; exports[1828] = "ER_FK_COLUMN_CANNOT_DROP"; exports[1829] = "ER_FK_COLUMN_CANNOT_DROP_CHILD"; exports[1830] = "ER_FK_COLUMN_NOT_NULL"; exports[1831] = "ER_DUP_INDEX"; exports[1832] = "ER_FK_COLUMN_CANNOT_CHANGE"; exports[1833] = "ER_FK_COLUMN_CANNOT_CHANGE_CHILD"; exports[1834] = "ER_FK_CANNOT_DELETE_PARENT"; exports[1835] = "ER_MALFORMED_PACKET"; exports[1836] = "ER_READ_ONLY_MODE"; exports[1837] = "ER_GTID_NEXT_TYPE_UNDEFINED_GROUP"; exports[1838] = "ER_VARIABLE_NOT_SETTABLE_IN_SP"; exports[1839] = "ER_CANT_SET_GTID_PURGED_WHEN_GTID_MODE_IS_OFF"; exports[1840] = "ER_CANT_SET_GTID_PURGED_WHEN_GTID_EXECUTED_IS_NOT_EMPTY"; exports[1841] = "ER_CANT_SET_GTID_PURGED_WHEN_OWNED_GTIDS_IS_NOT_EMPTY"; exports[1842] = "ER_GTID_PURGED_WAS_CHANGED"; exports[1843] = "ER_GTID_EXECUTED_WAS_CHANGED"; exports[1844] = "ER_BINLOG_STMT_MODE_AND_NO_REPL_TABLES"; exports[1845] = "ER_ALTER_OPERATION_NOT_SUPPORTED"; exports[1846] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON"; exports[1847] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COPY"; exports[1848] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_PARTITION"; exports[1849] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_RENAME"; exports[1850] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_COLUMN_TYPE"; exports[1851] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FK_CHECK"; exports[1852] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_IGNORE"; exports[1853] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOPK"; exports[1854] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_AUTOINC"; exports[1855] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_HIDDEN_FTS"; exports[1856] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_CHANGE_FTS"; exports[1857] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_FTS"; exports[1858] = "ER_SQL_REPLICA_SKIP_COUNTER_NOT_SETTABLE_IN_GTID_MODE"; exports[1859] = "ER_DUP_UNKNOWN_IN_INDEX"; exports[1860] = "ER_IDENT_CAUSES_TOO_LONG_PATH"; exports[1861] = "ER_ALTER_OPERATION_NOT_SUPPORTED_REASON_NOT_NULL"; exports[1862] = "ER_MUST_CHANGE_PASSWORD_LOGIN"; exports[1863] = "ER_ROW_IN_WRONG_PARTITION"; exports[1864] = "ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX"; exports[1865] = "ER_INNODB_NO_FT_USES_PARSER"; exports[1866] = "ER_BINLOG_LOGICAL_CORRUPTION"; exports[1867] = "ER_WARN_PURGE_LOG_IN_USE"; exports[1868] = "ER_WARN_PURGE_LOG_IS_ACTIVE"; exports[1869] = "ER_AUTO_INCREMENT_CONFLICT"; exports[1870] = "WARN_ON_BLOCKHOLE_IN_RBR"; exports[1871] = "ER_REPLICA_MI_INIT_REPOSITORY"; exports[1872] = "ER_REPLICA_RLI_INIT_REPOSITORY"; exports[1873] = "ER_ACCESS_DENIED_CHANGE_USER_ERROR"; exports[1874] = "ER_INNODB_READ_ONLY"; exports[1875] = "ER_STOP_REPLICA_SQL_THREAD_TIMEOUT"; exports[1876] = "ER_STOP_REPLICA_IO_THREAD_TIMEOUT"; exports[1877] = "ER_TABLE_CORRUPT"; exports[1878] = "ER_TEMP_FILE_WRITE_FAILURE"; exports[1879] = "ER_INNODB_FT_AUX_NOT_HEX_ID"; exports[1880] = "ER_OLD_TEMPORALS_UPGRADED"; exports[1881] = "ER_INNODB_FORCED_RECOVERY"; exports[1882] = "ER_AES_INVALID_IV"; exports[1883] = "ER_FILE_CORRUPT"; exports[1884] = "ER_ERROR_ON_SOURCE"; exports[1885] = "ER_INCONSISTENT_ERROR"; exports[1886] = "ER_STORAGE_ENGINE_NOT_LOADED"; exports[1887] = "ER_GET_STACKED_DA_WITHOUT_ACTIVE_HANDLER"; exports[1888] = "ER_WARN_LEGACY_SYNTAX_CONVERTED"; exports[1889] = "ER_BINLOG_UNSAFE_FULLTEXT_PLUGIN"; exports[1890] = "ER_CANNOT_DISCARD_TEMPORARY_TABLE"; exports[1891] = "ER_FK_DEPTH_EXCEEDED"; exports[1892] = "ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE_V2"; exports[1893] = "ER_WARN_TRIGGER_DOESNT_HAVE_CREATED"; exports[1894] = "ER_REFERENCED_TRG_DOES_NOT_EXIST"; exports[1895] = "ER_EXPLAIN_NOT_SUPPORTED"; exports[1896] = "ER_INVALID_FIELD_SIZE"; exports[1897] = "ER_MISSING_HA_CREATE_OPTION"; exports[1898] = "ER_ENGINE_OUT_OF_MEMORY"; exports[1899] = "ER_PASSWORD_EXPIRE_ANONYMOUS_USER"; exports[1900] = "ER_REPLICA_SQL_THREAD_MUST_STOP"; exports[1901] = "ER_NO_FT_MATERIALIZED_SUBQUERY"; exports[1902] = "ER_INNODB_UNDO_LOG_FULL"; exports[1903] = "ER_INVALID_ARGUMENT_FOR_LOGARITHM"; exports[1904] = "ER_REPLICA_IO_THREAD_MUST_STOP"; exports[1905] = "ER_WARN_OPEN_TEMP_TABLES_MUST_BE_ZERO"; exports[1906] = "ER_WARN_ONLY_SOURCE_LOG_FILE_NO_POS"; exports[1907] = "ER_QUERY_TIMEOUT"; exports[1908] = "ER_NON_RO_SELECT_DISABLE_TIMER"; exports[1909] = "ER_DUP_LIST_ENTRY"; exports[1910] = "ER_SQL_MODE_NO_EFFECT"; exports[3169] = "ER_SESSION_WAS_KILLED"; exports[4031] = "ER_CLIENT_INTERACTION_TIMEOUT"; } }); // ../../node_modules/.pnpm/long@5.2.3/node_modules/long/umd/index.js var require_umd = __commonJS({ "../../node_modules/.pnpm/long@5.2.3/node_modules/long/umd/index.js"(exports, module2) { var Long = function(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); exports2.default = void 0; var wasm = null; try { wasm = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11])), {}).exports; } catch (e2) { } function Long2(low, high, unsigned) { this.low = low | 0; this.high = high | 0; this.unsigned = !!unsigned; } Long2.prototype.__isLong__; Object.defineProperty(Long2.prototype, "__isLong__", { value: true }); function isLong(obj) { return (obj && obj["__isLong__"]) === true; } function ctz32(value) { var c2 = Math.clz32(value & -value); return value ? 31 - c2 : c2; } Long2.isLong = isLong; var INT_CACHE = {}; var UINT_CACHE = {}; function fromInt(value, unsigned) { var obj, cachedObj, cache; if (unsigned) { value >>>= 0; if (cache = 0 <= value && value < 256) { cachedObj = UINT_CACHE[value]; if (cachedObj) return cachedObj; } obj = fromBits(value, 0, true); if (cache) UINT_CACHE[value] = obj; return obj; } else { value |= 0; if (cache = -128 <= value && value < 128) { cachedObj = INT_CACHE[value]; if (cachedObj) return cachedObj; } obj = fromBits(value, value < 0 ? -1 : 0, false); if (cache) INT_CACHE[value] = obj; return obj; } } Long2.fromInt = fromInt; function fromNumber(value, unsigned) { if (isNaN(value)) return unsigned ? UZERO : ZERO; if (unsigned) { if (value < 0) return UZERO; if (value >= TWO_PWR_64_DBL) return MAX_UNSIGNED_VALUE; } else { if (value <= -TWO_PWR_63_DBL) return MIN_VALUE; if (value + 1 >= TWO_PWR_63_DBL) return MAX_VALUE; } if (value < 0) return fromNumber(-value, unsigned).neg(); return fromBits(value % TWO_PWR_32_DBL | 0, value / TWO_PWR_32_DBL | 0, unsigned); } Long2.fromNumber = fromNumber; function fromBits(lowBits, highBits, unsigned) { return new Long2(lowBits, highBits, unsigned); } Long2.fromBits = fromBits; var pow_dbl = Math.pow; function fromString(str, unsigned, radix) { if (str.length === 0) throw Error("empty string"); if (typeof unsigned === "number") { radix = unsigned; unsigned = false; } else { unsigned = !!unsigned; } if (str === "NaN" || str === "Infinity" || str === "+Infinity" || str === "-Infinity") return unsigned ? UZERO : ZERO; radix = radix || 10; if (radix < 2 || 36 < radix) throw RangeError("radix"); var p; if ((p = str.indexOf("-")) > 0) throw Error("interior hyphen"); else if (p === 0) { return fromString(str.substring(1), unsigned, radix).neg(); } var radixToPower = fromNumber(pow_dbl(radix, 8)); var result = ZERO; for (var i2 = 0; i2 < str.length; i2 += 8) { var size = Math.min(8, str.length - i2), value = parseInt(str.substring(i2, i2 + size), radix); if (size < 8) { var power = fromNumber(pow_dbl(radix, size)); result = result.mul(power).add(fromNumber(value)); } else { result = result.mul(radixToPower); result = result.add(fromNumber(value)); } } result.unsigned = unsigned; return result; } Long2.fromString = fromString; function fromValue(val, unsigned) { if (typeof val === "number") return fromNumber(val, unsigned); if (typeof val === "string") return fromString(val, unsigned); return fromBits(val.low, val.high, typeof unsigned === "boolean" ? unsigned : val.unsigned); } Long2.fromValue = fromValue; var TWO_PWR_16_DBL = 1 << 16; var TWO_PWR_24_DBL = 1 << 24; var TWO_PWR_32_DBL = TWO_PWR_16_DBL * TWO_PWR_16_DBL; var TWO_PWR_64_DBL = TWO_PWR_32_DBL * TWO_PWR_32_DBL; var TWO_PWR_63_DBL = TWO_PWR_64_DBL / 2; var TWO_PWR_24 = fromInt(TWO_PWR_24_DBL); var ZERO = fromInt(0); Long2.ZERO = ZERO; var UZERO = fromInt(0, true); Long2.UZERO = UZERO; var ONE = fromInt(1); Long2.ONE = ONE; var UONE = fromInt(1, true); Long2.UONE = UONE; var NEG_ONE = fromInt(-1); Long2.NEG_ONE = NEG_ONE; var MAX_VALUE = fromBits(4294967295 | 0, 2147483647 | 0, false); Long2.MAX_VALUE = MAX_VALUE; var MAX_UNSIGNED_VALUE = fromBits(4294967295 | 0, 4294967295 | 0, true); Long2.MAX_UNSIGNED_VALUE = MAX_UNSIGNED_VALUE; var MIN_VALUE = fromBits(0, 2147483648 | 0, false); Long2.MIN_VALUE = MIN_VALUE; var LongPrototype = Long2.prototype; LongPrototype.toInt = function toInt() { return this.unsigned ? this.low >>> 0 : this.low; }; LongPrototype.toNumber = function toNumber() { if (this.unsigned) return (this.high >>> 0) * TWO_PWR_32_DBL + (this.low >>> 0); return this.high * TWO_PWR_32_DBL + (this.low >>> 0); }; LongPrototype.toString = function toString(radix) { radix = radix || 10; if (radix < 2 || 36 < radix) throw RangeError("radix"); if (this.isZero()) return "0"; if (this.isNegative()) { if (this.eq(MIN_VALUE)) { var radixLong = fromNumber(radix), div = this.div(radixLong), rem1 = div.mul(radixLong).sub(this); return div.toString(radix) + rem1.toInt().toString(radix); } else return "-" + this.neg().toString(radix); } var radixToPower = fromNumber(pow_dbl(radix, 6), this.unsigned), rem = this; var result = ""; while (true) { var remDiv = rem.div(radixToPower), intval = rem.sub(remDiv.mul(radixToPower)).toInt() >>> 0, digits = intval.toString(radix); rem = remDiv; if (rem.isZero()) return digits + result; else { while (digits.length < 6) digits = "0" + digits; result = "" + digits + result; } } }; LongPrototype.getHighBits = function getHighBits() { return this.high; }; LongPrototype.getHighBitsUnsigned = function getHighBitsUnsigned() { return this.high >>> 0; }; LongPrototype.getLowBits = function getLowBits() { return this.low; }; LongPrototype.getLowBitsUnsigned = function getLowBitsUnsigned() { return this.low >>> 0; }; LongPrototype.getNumBitsAbs = function getNumBitsAbs() { if (this.isNegative()) return this.eq(MIN_VALUE) ? 64 : this.neg().getNumBitsAbs(); var val = this.high != 0 ? this.high : this.low; for (var bit = 31; bit > 0; bit--) if ((val & 1 << bit) != 0) break; return this.high != 0 ? bit + 33 : bit + 1; }; LongPrototype.isZero = function isZero() { return this.high === 0 && this.low === 0; }; LongPrototype.eqz = LongPrototype.isZero; LongPrototype.isNegative = function isNegative() { return !this.unsigned && this.high < 0; }; LongPrototype.isPositive = function isPositive() { return this.unsigned || this.high >= 0; }; LongPrototype.isOdd = function isOdd() { return (this.low & 1) === 1; }; LongPrototype.isEven = function isEven() { return (this.low & 1) === 0; }; LongPrototype.equals = function equals(other) { if (!isLong(other)) other = fromValue(other); if (this.unsigned !== other.unsigned && this.high >>> 31 === 1 && other.high >>> 31 === 1) return false; return this.high === other.high && this.low === other.low; }; LongPrototype.eq = LongPrototype.equals; LongPrototype.notEquals = function notEquals(other) { return !this.eq( other ); }; LongPrototype.neq = LongPrototype.notEquals; LongPrototype.ne = LongPrototype.notEquals; LongPrototype.lessThan = function lessThan(other) { return this.comp( other ) < 0; }; LongPrototype.lt = LongPrototype.lessThan; LongPrototype.lessThanOrEqual = function lessThanOrEqual(other) { return this.comp( other ) <= 0; }; LongPrototype.lte = LongPrototype.lessThanOrEqual; LongPrototype.le = LongPrototype.lessThanOrEqual; LongPrototype.greaterThan = function greaterThan(other) { return this.comp( other ) > 0; }; LongPrototype.gt = LongPrototype.greaterThan; LongPrototype.greaterThanOrEqual = function greaterThanOrEqual(other) { return this.comp( other ) >= 0; }; LongPrototype.gte = LongPrototype.greaterThanOrEqual; LongPrototype.ge = LongPrototype.greaterThanOrEqual; LongPrototype.compare = function compare(other) { if (!isLong(other)) other = fromValue(other); if (this.eq(other)) return 0; var thisNeg = this.isNegative(), otherNeg = other.isNegative(); if (thisNeg && !otherNeg) return -1; if (!thisNeg && otherNeg) return 1; if (!this.unsigned) return this.sub(other).isNegative() ? -1 : 1; return other.high >>> 0 > this.high >>> 0 || other.high === this.high && other.low >>> 0 > this.low >>> 0 ? -1 : 1; }; LongPrototype.comp = LongPrototype.compare; LongPrototype.negate = function negate() { if (!this.unsigned && this.eq(MIN_VALUE)) return MIN_VALUE; return this.not().add(ONE); }; LongPrototype.neg = LongPrototype.negate; LongPrototype.add = function add(addend) { if (!isLong(addend)) addend = fromValue(addend); var a48 = this.high >>> 16; var a32 = this.high & 65535; var a16 = this.low >>> 16; var a00 = this.low & 65535; var b48 = addend.high >>> 16; var b32 = addend.high & 65535; var b16 = addend.low >>> 16; var b00 = addend.low & 65535; var c48 = 0, c32 = 0, c16 = 0, c00 = 0; c00 += a00 + b00; c16 += c00 >>> 16; c00 &= 65535; c16 += a16 + b16; c32 += c16 >>> 16; c16 &= 65535; c32 += a32 + b32; c48 += c32 >>> 16; c32 &= 65535; c48 += a48 + b48; c48 &= 65535; return fromBits(c16 << 16 | c00, c48 << 16 | c32, this.unsigned); }; LongPrototype.subtract = function subtract(subtrahend) { if (!isLong(subtrahend)) subtrahend = fromValue(subtrahend); return this.add(subtrahend.neg()); }; LongPrototype.sub = LongPrototype.subtract; LongPrototype.multiply = function multiply(multiplier) { if (this.isZero()) return this; if (!isLong(multiplier)) multiplier = fromValue(multiplier); if (wasm) { var low = wasm["mul"](this.low, this.high, multiplier.low, multiplier.high); return fromBits(low, wasm["get_high"](), this.unsigned); } if (multiplier.isZero()) return this.unsigned ? UZERO : ZERO; if (this.eq(MIN_VALUE)) return multiplier.isOdd() ? MIN_VALUE : ZERO; if (multiplier.eq(MIN_VALUE)) return this.isOdd() ? MIN_VALUE : ZERO; if (this.isNegative()) { if (multiplier.isNegative()) return this.neg().mul(multiplier.neg()); else return this.neg().mul(multiplier).neg(); } else if (multiplier.isNegative()) return this.mul(multiplier.neg()).neg(); if (this.lt(TWO_PWR_24) && multiplier.lt(TWO_PWR_24)) return fromNumber(this.toNumber() * multiplier.toNumber(), this.unsigned); var a48 = this.high >>> 16; var a32 = this.high & 65535; var a16 = this.low >>> 16; var a00 = this.low & 65535; var b48 = multiplier.high >>> 16; var b32 = multiplier.high & 65535; var b16 = multiplier.low >>> 16; var b00 = multiplier.low & 65535; var c48 = 0, c32 = 0, c16 = 0, c00 = 0; c00 += a00 * b00; c16 += c00 >>> 16; c00 &= 65535; c16 += a16 * b00; c32 += c16 >>> 16; c16 &= 65535; c16 += a00 * b16; c32 += c16 >>> 16; c16 &= 65535; c32 += a32 * b00; c48 += c32 >>> 16; c32 &= 65535; c32 += a16 * b16; c48 += c32 >>> 16; c32 &= 65535; c32 += a00 * b32; c48 += c32 >>> 16; c32 &= 65535; c48 += a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48; c48 &= 65535; return fromBits(c16 << 16 | c00, c48 << 16 | c32, this.unsigned); }; LongPrototype.mul = LongPrototype.multiply; LongPrototype.divide = function divide(divisor) { if (!isLong(divisor)) divisor = fromValue(divisor); if (divisor.isZero()) throw Error("division by zero"); if (wasm) { if (!this.unsigned && this.high === -2147483648 && divisor.low === -1 && divisor.high === -1) { return this; } var low = (this.unsigned ? wasm["div_u"] : wasm["div_s"])(this.low, this.high, divisor.low, divisor.high); return fromBits(low, wasm["get_high"](), this.unsigned); } if (this.isZero()) return this.unsigned ? UZERO : ZERO; var approx, rem, res; if (!this.unsigned) { if (this.eq(MIN_VALUE)) { if (divisor.eq(ONE) || divisor.eq(NEG_ONE)) return MIN_VALUE; else if (divisor.eq(MIN_VALUE)) return ONE; else { var halfThis = this.shr(1); approx = halfThis.div(divisor).shl(1); if (approx.eq(ZERO)) { return divisor.isNegative() ? ONE : NEG_ONE; } else { rem = this.sub(divisor.mul(approx)); res = approx.add(rem.div(divisor)); return res; } } } else if (divisor.eq(MIN_VALUE)) return this.unsigned ? UZERO : ZERO; if (this.isNegative()) { if (divisor.isNegative()) return this.neg().div(divisor.neg()); return this.neg().div(divisor).neg(); } else if (divisor.isNegative()) return this.div(divisor.neg()).neg(); res = ZERO; } else { if (!divisor.unsigned) divisor = divisor.toUnsigned(); if (divisor.gt(this)) return UZERO; if (divisor.gt(this.shru(1))) return UONE; res = UZERO; } rem = this; while (rem.gte(divisor)) { approx = Math.max(1, Math.floor(rem.toNumber() / divisor.toNumber())); var log2 = Math.ceil(Math.log(approx) / Math.LN2), delta = log2 <= 48 ? 1 : pow_dbl(2, log2 - 48), approxRes = fromNumber(approx), approxRem = approxRes.mul(divisor); while (approxRem.isNegative() || approxRem.gt(rem)) { approx -= delta; approxRes = fromNumber(approx, this.unsigned); approxRem = approxRes.mul(divisor); } if (approxRes.isZero()) approxRes = ONE; res = res.add(approxRes); rem = rem.sub(approxRem); } return res; }; LongPrototype.div = LongPrototype.divide; LongPrototype.modulo = function modulo(divisor) { if (!isLong(divisor)) divisor = fromValue(divisor); if (wasm) { var low = (this.unsigned ? wasm["rem_u"] : wasm["rem_s"])(this.low, this.high, divisor.low, divisor.high); return fromBits(low, wasm["get_high"](), this.unsigned); } return this.sub(this.div(divisor).mul(divisor)); }; LongPrototype.mod = LongPrototype.modulo; LongPrototype.rem = LongPrototype.modulo; LongPrototype.not = function not() { return fromBits(~this.low, ~this.high, this.unsigned); }; LongPrototype.countLeadingZeros = function countLeadingZeros() { return this.high ? Math.clz32(this.high) : Math.clz32(this.low) + 32; }; LongPrototype.clz = LongPrototype.countLeadingZeros; LongPrototype.countTrailingZeros = function countTrailingZeros() { return this.low ? ctz32(this.low) : ctz32(this.high) + 32; }; LongPrototype.ctz = LongPrototype.countTrailingZeros; LongPrototype.and = function and(other) { if (!isLong(other)) other = fromValue(other); return fromBits(this.low & other.low, this.high & other.high, this.unsigned); }; LongPrototype.or = function or(other) { if (!isLong(other)) other = fromValue(other); return fromBits(this.low | other.low, this.high | other.high, this.unsigned); }; LongPrototype.xor = function xor(other) { if (!isLong(other)) other = fromValue(other); return fromBits(this.low ^ other.low, this.high ^ other.high, this.unsigned); }; LongPrototype.shiftLeft = function shiftLeft(numBits) { if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; else if (numBits < 32) return fromBits(this.low << numBits, this.high << numBits | this.low >>> 32 - numBits, this.unsigned); else return fromBits(0, this.low << numBits - 32, this.unsigned); }; LongPrototype.shl = LongPrototype.shiftLeft; LongPrototype.shiftRight = function shiftRight(numBits) { if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; else if (numBits < 32) return fromBits(this.low >>> numBits | this.high << 32 - numBits, this.high >> numBits, this.unsigned); else return fromBits(this.high >> numBits - 32, this.high >= 0 ? 0 : -1, this.unsigned); }; LongPrototype.shr = LongPrototype.shiftRight; LongPrototype.shiftRightUnsigned = function shiftRightUnsigned(numBits) { if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; if (numBits < 32) return fromBits(this.low >>> numBits | this.high << 32 - numBits, this.high >>> numBits, this.unsigned); if (numBits === 32) return fromBits(this.high, 0, this.unsigned); return fromBits(this.high >>> numBits - 32, 0, this.unsigned); }; LongPrototype.shru = LongPrototype.shiftRightUnsigned; LongPrototype.shr_u = LongPrototype.shiftRightUnsigned; LongPrototype.rotateLeft = function rotateLeft(numBits) { var b; if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; if (numBits === 32) return fromBits(this.high, this.low, this.unsigned); if (numBits < 32) { b = 32 - numBits; return fromBits(this.low << numBits | this.high >>> b, this.high << numBits | this.low >>> b, this.unsigned); } numBits -= 32; b = 32 - numBits; return fromBits(this.high << numBits | this.low >>> b, this.low << numBits | this.high >>> b, this.unsigned); }; LongPrototype.rotl = LongPrototype.rotateLeft; LongPrototype.rotateRight = function rotateRight(numBits) { var b; if (isLong(numBits)) numBits = numBits.toInt(); if ((numBits &= 63) === 0) return this; if (numBits === 32) return fromBits(this.high, this.low, this.unsigned); if (numBits < 32) { b = 32 - numBits; return fromBits(this.high << b | this.low >>> numBits, this.low << b | this.high >>> numBits, this.unsigned); } numBits -= 32; b = 32 - numBits; return fromBits(this.low << b | this.high >>> numBits, this.high << b | this.low >>> numBits, this.unsigned); }; LongPrototype.rotr = LongPrototype.rotateRight; LongPrototype.toSigned = function toSigned() { if (!this.unsigned) return this; return fromBits(this.low, this.high, false); }; LongPrototype.toUnsigned = function toUnsigned() { if (this.unsigned) return this; return fromBits(this.low, this.high, true); }; LongPrototype.toBytes = function toBytes(le) { return le ? this.toBytesLE() : this.toBytesBE(); }; LongPrototype.toBytesLE = function toBytesLE() { var hi = this.high, lo = this.low; return [lo & 255, lo >>> 8 & 255, lo >>> 16 & 255, lo >>> 24, hi & 255, hi >>> 8 & 255, hi >>> 16 & 255, hi >>> 24]; }; LongPrototype.toBytesBE = function toBytesBE() { var hi = this.high, lo = this.low; return [hi >>> 24, hi >>> 16 & 255, hi >>> 8 & 255, hi & 255, lo >>> 24, lo >>> 16 & 255, lo >>> 8 & 255, lo & 255]; }; Long2.fromBytes = function fromBytes(bytes, unsigned, le) { return le ? Long2.fromBytesLE(bytes, unsigned) : Long2.fromBytesBE(bytes, unsigned); }; Long2.fromBytesLE = function fromBytesLE(bytes, unsigned) { return new Long2(bytes[0] | bytes[1] << 8 | bytes[2] << 16 | bytes[3] << 24, bytes[4] | bytes[5] << 8 | bytes[6] << 16 | bytes[7] << 24, unsigned); }; Long2.fromBytesBE = function fromBytesBE(bytes, unsigned) { return new Long2(bytes[4] << 24 | bytes[5] << 16 | bytes[6] << 8 | bytes[7], bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], unsigned); }; var _default = Long2; exports2.default = _default; return "default" in exports2 ? exports2.default : exports2; }({}); if (typeof define === "function" && define.amd) define([], function() { return Long; }); else if (typeof module2 === "object" && typeof exports === "object") module2.exports = Long; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/string.js var require_string3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/string.js"(exports) { "use strict"; var Iconv = require_lib(); exports.decode = function(buffer, encoding, start, end, options) { if (Buffer.isEncoding(encoding)) { return buffer.toString(encoding, start, end); } const decoder = Iconv.getDecoder(encoding, options || {}); const res = decoder.write(buffer.slice(start, end)); const trail = decoder.end(); return trail ? res + trail : res; }; exports.encode = function(string, encoding, options) { if (Buffer.isEncoding(encoding)) { return Buffer.from(string, encoding); } const encoder = Iconv.getEncoder(encoding, options || {}); const res = encoder.write(string); const trail = encoder.end(); return trail && trail.length > 0 ? Buffer.concat([res, trail]) : res; }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/packet.js var require_packet2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/packet.js"(exports, module2) { "use strict"; var ErrorCodeToName = require_errors4(); var NativeBuffer = require("buffer").Buffer; var Long = require_umd(); var StringParser = require_string3(); var INVALID_DATE = new Date(NaN); var pad = "000000000000"; function leftPad(num, value) { const s2 = value.toString(); if (s2.length >= num) { return s2; } return (pad + s2).slice(-num); } var minus = "-".charCodeAt(0); var plus = "+".charCodeAt(0); var dot = ".".charCodeAt(0); var exponent = "e".charCodeAt(0); var exponentCapital = "E".charCodeAt(0); var Packet = class { constructor(id, buffer, start, end) { this.sequenceId = id; this.numPackets = 1; this.buffer = buffer; this.start = start; this.offset = start + 4; this.end = end; } reset() { this.offset = this.start + 4; } length() { return this.end - this.start; } slice() { return this.buffer.slice(this.start, this.end); } dump() { console.log( [this.buffer.asciiSlice(this.start, this.end)], this.buffer.slice(this.start, this.end), this.length(), this.sequenceId ); } haveMoreData() { return this.end > this.offset; } skip(num) { this.offset += num; } readInt8() { return this.buffer[this.offset++]; } readInt16() { this.offset += 2; return this.buffer.readUInt16LE(this.offset - 2); } readInt24() { return this.readInt16() + (this.readInt8() << 16); } readInt32() { this.offset += 4; return this.buffer.readUInt32LE(this.offset - 4); } readSInt8() { return this.buffer.readInt8(this.offset++); } readSInt16() { this.offset += 2; return this.buffer.readInt16LE(this.offset - 2); } readSInt32() { this.offset += 4; return this.buffer.readInt32LE(this.offset - 4); } readInt64JSNumber() { const word0 = this.readInt32(); const word1 = this.readInt32(); const l = new Long(word0, word1, true); return l.toNumber(); } readSInt64JSNumber() { const word0 = this.readInt32(); const word1 = this.readInt32(); if (!(word1 & 2147483648)) { return word0 + 4294967296 * word1; } const l = new Long(word0, word1, false); return l.toNumber(); } readInt64String() { const word0 = this.readInt32(); const word1 = this.readInt32(); const res = new Long(word0, word1, true); return res.toString(); } readSInt64String() { const word0 = this.readInt32(); const word1 = this.readInt32(); const res = new Long(word0, word1, false); return res.toString(); } readInt64() { const word0 = this.readInt32(); const word1 = this.readInt32(); let res = new Long(word0, word1, true); const resNumber = res.toNumber(); const resString = res.toString(); res = resNumber.toString() === resString ? resNumber : resString; return res; } readSInt64() { const word0 = this.readInt32(); const word1 = this.readInt32(); let res = new Long(word0, word1, false); const resNumber = res.toNumber(); const resString = res.toString(); res = resNumber.toString() === resString ? resNumber : resString; return res; } isEOF() { return this.buffer[this.offset] === 254 && this.length() < 13; } eofStatusFlags() { return this.buffer.readInt16LE(this.offset + 3); } eofWarningCount() { return this.buffer.readInt16LE(this.offset + 1); } readLengthCodedNumber(bigNumberStrings, signed) { const byte1 = this.buffer[this.offset++]; if (byte1 < 251) { return byte1; } return this.readLengthCodedNumberExt(byte1, bigNumberStrings, signed); } readLengthCodedNumberSigned(bigNumberStrings) { return this.readLengthCodedNumber(bigNumberStrings, true); } readLengthCodedNumberExt(tag, bigNumberStrings, signed) { let word0, word1; let res; if (tag === 251) { return null; } if (tag === 252) { return this.readInt8() + (this.readInt8() << 8); } if (tag === 253) { return this.readInt8() + (this.readInt8() << 8) + (this.readInt8() << 16); } if (tag === 254) { word0 = this.readInt32(); word1 = this.readInt32(); if (word1 === 0) { return word0; } if (word1 < 2097152) { return word1 * 4294967296 + word0; } res = new Long(word0, word1, !signed); const resNumber = res.toNumber(); const resString = res.toString(); res = resNumber.toString() === resString ? resNumber : resString; return bigNumberStrings ? resString : res; } console.trace(); throw new Error(`Should not reach here: ${tag}`); } readFloat() { const res = this.buffer.readFloatLE(this.offset); this.offset += 4; return res; } readDouble() { const res = this.buffer.readDoubleLE(this.offset); this.offset += 8; return res; } readBuffer(len) { if (typeof len === "undefined") { len = this.end - this.offset; } this.offset += len; return this.buffer.slice(this.offset - len, this.offset); } readDateTime(timezone) { if (!timezone || timezone === "Z" || timezone === "local") { const length = this.readInt8(); if (length === 251) { return null; } let y = 0; let m2 = 0; let d = 0; let H = 0; let M = 0; let S2 = 0; let ms = 0; if (length > 3) { y = this.readInt16(); m2 = this.readInt8(); d = this.readInt8(); } if (length > 6) { H = this.readInt8(); M = this.readInt8(); S2 = this.readInt8(); } if (length > 10) { ms = this.readInt32() / 1e3; } if (y + m2 + d + H + M + S2 + ms === 0) { return INVALID_DATE; } if (timezone === "Z") { return new Date(Date.UTC(y, m2 - 1, d, H, M, S2, ms)); } return new Date(y, m2 - 1, d, H, M, S2, ms); } let str = this.readDateTimeString(6, "T"); if (str.length === 10) { str += "T00:00:00"; } return new Date(str + timezone); } readDateTimeString(decimals, timeSep) { const length = this.readInt8(); let y = 0; let m2 = 0; let d = 0; let H = 0; let M = 0; let S2 = 0; let ms = 0; let str; if (length > 3) { y = this.readInt16(); m2 = this.readInt8(); d = this.readInt8(); str = [leftPad(4, y), leftPad(2, m2), leftPad(2, d)].join("-"); } if (length > 6) { H = this.readInt8(); M = this.readInt8(); S2 = this.readInt8(); str += `${timeSep || " "}${[ leftPad(2, H), leftPad(2, M), leftPad(2, S2) ].join(":")}`; } if (length > 10) { ms = this.readInt32(); str += "."; if (decimals) { ms = leftPad(6, ms); if (ms.length > decimals) { ms = ms.substring(0, decimals); } } str += ms; } return str; } readTimeString(convertTtoMs) { const length = this.readInt8(); if (length === 0) { return "00:00:00"; } const sign = this.readInt8() ? -1 : 1; let d = 0; let H = 0; let M = 0; let S2 = 0; let ms = 0; if (length > 6) { d = this.readInt32(); H = this.readInt8(); M = this.readInt8(); S2 = this.readInt8(); } if (length > 10) { ms = this.readInt32(); } if (convertTtoMs) { H += d * 24; M += H * 60; S2 += M * 60; ms += S2 * 1e3; ms *= sign; return ms; } return (sign === -1 ? "-" : "") + [leftPad(2, d * 24 + H), leftPad(2, M), leftPad(2, S2)].join(":") + (ms ? `.${ms}`.replace(/0+$/, "") : ""); } readLengthCodedString(encoding) { const len = this.readLengthCodedNumber(); if (len === null) { return null; } this.offset += len; return StringParser.decode( this.buffer, encoding, this.offset - len, this.offset ); } readLengthCodedBuffer() { const len = this.readLengthCodedNumber(); if (len === null) { return null; } return this.readBuffer(len); } readNullTerminatedString(encoding) { const start = this.offset; let end = this.offset; while (this.buffer[end]) { end = end + 1; } this.offset = end + 1; return StringParser.decode(this.buffer, encoding, start, end); } readString(len, encoding) { if (typeof len === "string" && typeof encoding === "undefined") { encoding = len; len = void 0; } if (typeof len === "undefined") { len = this.end - this.offset; } this.offset += len; return StringParser.decode( this.buffer, encoding, this.offset - len, this.offset ); } parseInt(len, supportBigNumbers) { if (len === null) { return null; } if (len >= 14 && !supportBigNumbers) { const s2 = this.buffer.toString("ascii", this.offset, this.offset + len); this.offset += len; return Number(s2); } let result = 0; const start = this.offset; const end = this.offset + len; let sign = 1; if (len === 0) { return 0; } if (this.buffer[this.offset] === minus) { this.offset++; sign = -1; } let str; const numDigits = end - this.offset; if (supportBigNumbers) { if (numDigits >= 15) { str = this.readString(end - this.offset, "binary"); result = parseInt(str, 10); if (result.toString() === str) { return sign * result; } return sign === -1 ? `-${str}` : str; } if (numDigits > 16) { str = this.readString(end - this.offset); return sign === -1 ? `-${str}` : str; } } if (this.buffer[this.offset] === plus) { this.offset++; } while (this.offset < end) { result *= 10; result += this.buffer[this.offset] - 48; this.offset++; } const num = result * sign; if (!supportBigNumbers) { return num; } str = this.buffer.toString("ascii", start, end); if (num.toString() === str) { return num; } return str; } parseIntNoBigCheck(len) { if (len === null) { return null; } let result = 0; const end = this.offset + len; let sign = 1; if (len === 0) { return 0; } if (this.buffer[this.offset] === minus) { this.offset++; sign = -1; } if (this.buffer[this.offset] === plus) { this.offset++; } while (this.offset < end) { result *= 10; result += this.buffer[this.offset] - 48; this.offset++; } return result * sign; } parseGeometryValue() { const buffer = this.readLengthCodedBuffer(); let offset = 4; if (buffer === null || !buffer.length) { return null; } function parseGeometry() { let x2, y, i2, j, numPoints, line; let result = null; const byteOrder = buffer.readUInt8(offset); offset += 1; const wkbType = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; switch (wkbType) { case 1: x2 = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; y = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; result = { x: x2, y }; break; case 2: numPoints = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; result = []; for (i2 = numPoints; i2 > 0; i2--) { x2 = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; y = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; result.push({ x: x2, y }); } break; case 3: const numRings = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; result = []; for (i2 = numRings; i2 > 0; i2--) { numPoints = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; line = []; for (j = numPoints; j > 0; j--) { x2 = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; y = byteOrder ? buffer.readDoubleLE(offset) : buffer.readDoubleBE(offset); offset += 8; line.push({ x: x2, y }); } result.push(line); } break; case 4: case 5: case 6: case 7: const num = byteOrder ? buffer.readUInt32LE(offset) : buffer.readUInt32BE(offset); offset += 4; result = []; for (i2 = num; i2 > 0; i2--) { result.push(parseGeometry()); } break; } return result; } return parseGeometry(); } parseDate(timezone) { const strLen = this.readLengthCodedNumber(); if (strLen === null) { return null; } if (strLen !== 10) { return new Date(NaN); } const y = this.parseInt(4); this.offset++; const m2 = this.parseInt(2); this.offset++; const d = this.parseInt(2); if (!timezone || timezone === "local") { return new Date(y, m2 - 1, d); } if (timezone === "Z") { return new Date(Date.UTC(y, m2 - 1, d)); } return new Date( `${leftPad(4, y)}-${leftPad(2, m2)}-${leftPad(2, d)}T00:00:00${timezone}` ); } parseDateTime(timezone) { const str = this.readLengthCodedString("binary"); if (str === null) { return null; } if (!timezone || timezone === "local") { return new Date(str); } return new Date(`${str}${timezone}`); } parseFloat(len) { if (len === null) { return null; } let result = 0; const end = this.offset + len; let factor = 1; let pastDot = false; let charCode = 0; if (len === 0) { return 0; } if (this.buffer[this.offset] === minus) { this.offset++; factor = -1; } if (this.buffer[this.offset] === plus) { this.offset++; } while (this.offset < end) { charCode = this.buffer[this.offset]; if (charCode === dot) { pastDot = true; this.offset++; } else if (charCode === exponent || charCode === exponentCapital) { this.offset++; const exponentValue = this.parseInt(end - this.offset); return result / factor * Math.pow(10, exponentValue); } else { result *= 10; result += this.buffer[this.offset] - 48; this.offset++; if (pastDot) { factor = factor * 10; } } } return result / factor; } parseLengthCodedIntNoBigCheck() { return this.parseIntNoBigCheck(this.readLengthCodedNumber()); } parseLengthCodedInt(supportBigNumbers) { return this.parseInt(this.readLengthCodedNumber(), supportBigNumbers); } parseLengthCodedIntString() { return this.readLengthCodedString("binary"); } parseLengthCodedFloat() { return this.parseFloat(this.readLengthCodedNumber()); } peekByte() { return this.buffer[this.offset]; } isAlt() { return this.peekByte() === 254; } isError() { return this.peekByte() === 255; } asError(encoding) { this.reset(); this.readInt8(); const errorCode = this.readInt16(); let sqlState = ""; if (this.buffer[this.offset] === 35) { this.skip(1); sqlState = this.readBuffer(5).toString(); } const message = this.readString(void 0, encoding); const err = new Error(message); err.code = ErrorCodeToName[errorCode]; err.errno = errorCode; err.sqlState = sqlState; err.sqlMessage = message; return err; } writeInt32(n) { this.buffer.writeUInt32LE(n, this.offset); this.offset += 4; } writeInt24(n) { this.writeInt8(n & 255); this.writeInt16(n >> 8); } writeInt16(n) { this.buffer.writeUInt16LE(n, this.offset); this.offset += 2; } writeInt8(n) { this.buffer.writeUInt8(n, this.offset); this.offset++; } writeDouble(n) { this.buffer.writeDoubleLE(n, this.offset); this.offset += 8; } writeBuffer(b) { b.copy(this.buffer, this.offset); this.offset += b.length; } writeNull() { this.buffer[this.offset] = 251; this.offset++; } writeNullTerminatedString(s2, encoding) { const buf = StringParser.encode(s2, encoding); this.buffer.length && buf.copy(this.buffer, this.offset); this.offset += buf.length; this.writeInt8(0); } writeString(s2, encoding) { if (s2 === null) { this.writeInt8(251); return; } if (s2.length === 0) { return; } const buf = StringParser.encode(s2, encoding); this.buffer.length && buf.copy(this.buffer, this.offset); this.offset += buf.length; } writeLengthCodedString(s2, encoding) { const buf = StringParser.encode(s2, encoding); this.writeLengthCodedNumber(buf.length); this.buffer.length && buf.copy(this.buffer, this.offset); this.offset += buf.length; } writeLengthCodedBuffer(b) { this.writeLengthCodedNumber(b.length); b.copy(this.buffer, this.offset); this.offset += b.length; } writeLengthCodedNumber(n) { if (n < 251) { return this.writeInt8(n); } if (n < 65535) { this.writeInt8(252); return this.writeInt16(n); } if (n < 16777215) { this.writeInt8(253); return this.writeInt24(n); } if (n === null) { return this.writeInt8(251); } this.writeInt8(254); this.buffer.writeUInt32LE(n, this.offset); this.offset += 4; this.buffer.writeUInt32LE(n >> 32, this.offset); this.offset += 4; return this.offset; } writeDate(d, timezone) { this.buffer.writeUInt8(11, this.offset); if (!timezone || timezone === "local") { this.buffer.writeUInt16LE(d.getFullYear(), this.offset + 1); this.buffer.writeUInt8(d.getMonth() + 1, this.offset + 3); this.buffer.writeUInt8(d.getDate(), this.offset + 4); this.buffer.writeUInt8(d.getHours(), this.offset + 5); this.buffer.writeUInt8(d.getMinutes(), this.offset + 6); this.buffer.writeUInt8(d.getSeconds(), this.offset + 7); this.buffer.writeUInt32LE(d.getMilliseconds() * 1e3, this.offset + 8); } else { if (timezone !== "Z") { const offset = (timezone[0] === "-" ? -1 : 1) * (parseInt(timezone.substring(1, 3), 10) * 60 + parseInt(timezone.substring(4), 10)); if (offset !== 0) { d = new Date(d.getTime() + 6e4 * offset); } } this.buffer.writeUInt16LE(d.getUTCFullYear(), this.offset + 1); this.buffer.writeUInt8(d.getUTCMonth() + 1, this.offset + 3); this.buffer.writeUInt8(d.getUTCDate(), this.offset + 4); this.buffer.writeUInt8(d.getUTCHours(), this.offset + 5); this.buffer.writeUInt8(d.getUTCMinutes(), this.offset + 6); this.buffer.writeUInt8(d.getUTCSeconds(), this.offset + 7); this.buffer.writeUInt32LE(d.getUTCMilliseconds() * 1e3, this.offset + 8); } this.offset += 12; } writeHeader(sequenceId) { const offset = this.offset; this.offset = 0; this.writeInt24(this.buffer.length - 4); this.writeInt8(sequenceId); this.offset = offset; } clone() { return new Packet(this.sequenceId, this.buffer, this.start, this.end); } type() { if (this.isEOF()) { return "EOF"; } if (this.isError()) { return "Error"; } if (this.buffer[this.offset] === 0) { return "maybeOK"; } return ""; } static lengthCodedNumberLength(n) { if (n < 251) { return 1; } if (n < 65535) { return 3; } if (n < 16777215) { return 5; } return 9; } static lengthCodedStringLength(str, encoding) { const buf = StringParser.encode(str, encoding); const slen = buf.length; return Packet.lengthCodedNumberLength(slen) + slen; } static MockBuffer() { const noop2 = function() { }; const res = Buffer.alloc(0); for (const op in NativeBuffer.prototype) { if (typeof res[op] === "function") { res[op] = noop2; } } return res; } }; module2.exports = Packet; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packet_parser.js var require_packet_parser2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packet_parser.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var MAX_PACKET_LENGTH = 16777215; function readPacketLength(b, off) { const b0 = b[off]; const b1 = b[off + 1]; const b2 = b[off + 2]; if (b1 + b2 === 0) { return b0; } return b0 + (b1 << 8) + (b2 << 16); } var PacketParser = class { constructor(onPacket, packetHeaderLength) { if (typeof packetHeaderLength === "undefined") { packetHeaderLength = 4; } this.buffer = []; this.bufferLength = 0; this.packetHeaderLength = packetHeaderLength; this.headerLen = 0; this.length = 0; this.largePacketParts = []; this.firstPacketSequenceId = 0; this.onPacket = onPacket; this.execute = PacketParser.prototype.executeStart; this._flushLargePacket = packetHeaderLength === 7 ? this._flushLargePacket7 : this._flushLargePacket4; } _flushLargePacket4() { const numPackets = this.largePacketParts.length; this.largePacketParts.unshift(Buffer.from([0, 0, 0, 0])); const body = Buffer.concat(this.largePacketParts); const packet = new Packet(this.firstPacketSequenceId, body, 0, body.length); this.largePacketParts.length = 0; packet.numPackets = numPackets; this.onPacket(packet); } _flushLargePacket7() { const numPackets = this.largePacketParts.length; this.largePacketParts.unshift(Buffer.from([0, 0, 0, 0, 0, 0, 0])); const body = Buffer.concat(this.largePacketParts); this.largePacketParts.length = 0; const packet = new Packet(this.firstPacketSequenceId, body, 0, body.length); packet.numPackets = numPackets; this.onPacket(packet); } executeStart(chunk) { let start = 0; const end = chunk.length; while (end - start >= 3) { this.length = readPacketLength(chunk, start); if (end - start >= this.length + this.packetHeaderLength) { const sequenceId = chunk[start + 3]; if (this.length < MAX_PACKET_LENGTH && this.largePacketParts.length === 0) { this.onPacket( new Packet( sequenceId, chunk, start, start + this.packetHeaderLength + this.length ) ); } else { if (this.largePacketParts.length === 0) { this.firstPacketSequenceId = sequenceId; } this.largePacketParts.push( chunk.slice( start + this.packetHeaderLength, start + this.packetHeaderLength + this.length ) ); if (this.length < MAX_PACKET_LENGTH) { this._flushLargePacket(); } } start += this.packetHeaderLength + this.length; } else { this.buffer = [chunk.slice(start + 3, end)]; this.bufferLength = end - start - 3; this.execute = PacketParser.prototype.executePayload; return; } } if (end - start > 0) { this.headerLen = end - start; this.length = chunk[start]; if (this.headerLen === 2) { this.length = chunk[start] + (chunk[start + 1] << 8); this.execute = PacketParser.prototype.executeHeader3; } else { this.execute = PacketParser.prototype.executeHeader2; } } } executePayload(chunk) { let start = 0; const end = chunk.length; const remainingPayload = this.length - this.bufferLength + this.packetHeaderLength - 3; if (end - start >= remainingPayload) { const payload = Buffer.allocUnsafe(this.length + this.packetHeaderLength); let offset = 3; for (let i2 = 0; i2 < this.buffer.length; ++i2) { this.buffer[i2].copy(payload, offset); offset += this.buffer[i2].length; } chunk.copy(payload, offset, start, start + remainingPayload); const sequenceId = payload[3]; if (this.length < MAX_PACKET_LENGTH && this.largePacketParts.length === 0) { this.onPacket( new Packet( sequenceId, payload, 0, this.length + this.packetHeaderLength ) ); } else { if (this.largePacketParts.length === 0) { this.firstPacketSequenceId = sequenceId; } this.largePacketParts.push( payload.slice( this.packetHeaderLength, this.packetHeaderLength + this.length ) ); if (this.length < MAX_PACKET_LENGTH) { this._flushLargePacket(); } } this.buffer = []; this.bufferLength = 0; this.execute = PacketParser.prototype.executeStart; start += remainingPayload; if (end - start > 0) { return this.execute(chunk.slice(start, end)); } } else { this.buffer.push(chunk); this.bufferLength += chunk.length; } return null; } executeHeader2(chunk) { this.length += chunk[0] << 8; if (chunk.length > 1) { this.length += chunk[1] << 16; this.execute = PacketParser.prototype.executePayload; return this.executePayload(chunk.slice(2)); } this.execute = PacketParser.prototype.executeHeader3; return null; } executeHeader3(chunk) { this.length += chunk[0] << 16; this.execute = PacketParser.prototype.executePayload; return this.executePayload(chunk.slice(1)); } }; module2.exports = PacketParser; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_next_factor.js var require_auth_next_factor = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_next_factor.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var AuthNextFactor = class { constructor(opts) { this.pluginName = opts.pluginName; this.pluginData = opts.pluginData; } toPacket(encoding) { const length = 6 + this.pluginName.length + this.pluginData.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(2); packet.writeNullTerminatedString(this.pluginName, encoding); packet.writeBuffer(this.pluginData); return packet; } static fromPacket(packet, encoding) { packet.readInt8(); const name = packet.readNullTerminatedString(encoding); const data = packet.readBuffer(); return new AuthNextFactor({ pluginName: name, pluginData: data }); } }; module2.exports = AuthNextFactor; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_switch_request.js var require_auth_switch_request2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_switch_request.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var AuthSwitchRequest = class { constructor(opts) { this.pluginName = opts.pluginName; this.pluginData = opts.pluginData; } toPacket() { const length = 6 + this.pluginName.length + this.pluginData.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(254); packet.writeNullTerminatedString(this.pluginName, "cesu8"); packet.writeBuffer(this.pluginData); return packet; } static fromPacket(packet) { packet.readInt8(); const name = packet.readNullTerminatedString("cesu8"); const data = packet.readBuffer(); return new AuthSwitchRequest({ pluginName: name, pluginData: data }); } }; module2.exports = AuthSwitchRequest; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_switch_request_more_data.js var require_auth_switch_request_more_data2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_switch_request_more_data.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var AuthSwitchRequestMoreData = class { constructor(data) { this.data = data; } toPacket() { const length = 5 + this.data.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(1); packet.writeBuffer(this.data); return packet; } static fromPacket(packet) { packet.readInt8(); const data = packet.readBuffer(); return new AuthSwitchRequestMoreData(data); } static verifyMarker(packet) { return packet.peekByte() === 1; } }; module2.exports = AuthSwitchRequestMoreData; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_switch_response.js var require_auth_switch_response2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/auth_switch_response.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var AuthSwitchResponse = class { constructor(data) { if (!Buffer.isBuffer(data)) { data = Buffer.from(data); } this.data = data; } toPacket() { const length = 4 + this.data.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeBuffer(this.data); return packet; } static fromPacket(packet) { const data = packet.readBuffer(); return new AuthSwitchResponse(data); } }; module2.exports = AuthSwitchResponse; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/types.js var require_types2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/types.js"(exports, module2) { "use strict"; module2.exports = { 0: "DECIMAL", 1: "TINY", 2: "SHORT", 3: "LONG", 4: "FLOAT", 5: "DOUBLE", 6: "NULL", 7: "TIMESTAMP", 8: "LONGLONG", 9: "INT24", 10: "DATE", 11: "TIME", 12: "DATETIME", 13: "YEAR", 14: "NEWDATE", 15: "VARCHAR", 16: "BIT", 245: "JSON", 246: "NEWDECIMAL", 247: "ENUM", 248: "SET", 249: "TINY_BLOB", 250: "MEDIUM_BLOB", 251: "LONG_BLOB", 252: "BLOB", 253: "VAR_STRING", 254: "STRING", 255: "GEOMETRY" }; module2.exports.DECIMAL = 0; module2.exports.TINY = 1; module2.exports.SHORT = 2; module2.exports.LONG = 3; module2.exports.FLOAT = 4; module2.exports.DOUBLE = 5; module2.exports.NULL = 6; module2.exports.TIMESTAMP = 7; module2.exports.LONGLONG = 8; module2.exports.INT24 = 9; module2.exports.DATE = 10; module2.exports.TIME = 11; module2.exports.DATETIME = 12; module2.exports.YEAR = 13; module2.exports.NEWDATE = 14; module2.exports.VARCHAR = 15; module2.exports.BIT = 16; module2.exports.JSON = 245; module2.exports.NEWDECIMAL = 246; module2.exports.ENUM = 247; module2.exports.SET = 248; module2.exports.TINY_BLOB = 249; module2.exports.MEDIUM_BLOB = 250; module2.exports.LONG_BLOB = 251; module2.exports.BLOB = 252; module2.exports.VAR_STRING = 253; module2.exports.STRING = 254; module2.exports.GEOMETRY = 255; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/binary_row.js var require_binary_row2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/binary_row.js"(exports, module2) { "use strict"; var Types = require_types2(); var Packet = require_packet2(); var binaryReader = new Array(256); var BinaryRow = class { constructor(columns) { this.columns = columns || []; } static toPacket(columns, encoding) { const sequenceId = 0; let length = 0; columns.forEach((val) => { if (val === null || typeof val === "undefined") { ++length; return; } length += Packet.lengthCodedStringLength(val.toString(10), encoding); }); length = length + 2; const buffer = Buffer.allocUnsafe(length + 4); const packet = new Packet(sequenceId, buffer, 0, length + 4); packet.offset = 4; packet.writeInt8(0); let bitmap = 0; let bitValue = 1; columns.forEach((parameter) => { if (parameter.type === Types.NULL) { bitmap += bitValue; } bitValue *= 2; if (bitValue === 256) { packet.writeInt8(bitmap); bitmap = 0; bitValue = 1; } }); if (bitValue !== 1) { packet.writeInt8(bitmap); } columns.forEach((val) => { if (val === null) { packet.writeNull(); return; } if (typeof val === "undefined") { packet.writeInt8(0); return; } packet.writeLengthCodedString(val.toString(10), encoding); }); return packet; } static fromPacket(fields, packet) { const columns = new Array(fields.length); packet.readInt8(); const nullBitmapLength = Math.floor((fields.length + 7 + 2) / 8); packet.skip(nullBitmapLength); for (let i2 = 0; i2 < columns.length; ++i2) { columns[i2] = binaryReader[fields[i2].columnType].apply(packet); } return new BinaryRow(columns); } }; binaryReader[Types.DECIMAL] = Packet.prototype.readLengthCodedString; binaryReader[1] = Packet.prototype.readInt8; binaryReader[2] = Packet.prototype.readInt16; binaryReader[3] = Packet.prototype.readInt32; binaryReader[4] = Packet.prototype.readFloat; binaryReader[5] = Packet.prototype.readDouble; binaryReader[6] = Packet.prototype.assertInvalid; binaryReader[7] = Packet.prototype.readTimestamp; binaryReader[8] = Packet.prototype.readInt64; binaryReader[9] = Packet.prototype.readInt32; binaryReader[10] = Packet.prototype.readTimestamp; binaryReader[11] = Packet.prototype.readTime; binaryReader[12] = Packet.prototype.readDateTime; binaryReader[13] = Packet.prototype.readInt16; binaryReader[Types.VAR_STRING] = Packet.prototype.readLengthCodedString; module2.exports = BinaryRow; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/commands.js var require_commands3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/commands.js"(exports, module2) { "use strict"; module2.exports = { SLEEP: 0, QUIT: 1, INIT_DB: 2, QUERY: 3, FIELD_LIST: 4, CREATE_DB: 5, DROP_DB: 6, REFRESH: 7, SHUTDOWN: 8, STATISTICS: 9, PROCESS_INFO: 10, CONNECT: 11, PROCESS_KILL: 12, DEBUG: 13, PING: 14, TIME: 15, DELAYED_INSERT: 16, CHANGE_USER: 17, BINLOG_DUMP: 18, TABLE_DUMP: 19, CONNECT_OUT: 20, REGISTER_SLAVE: 21, STMT_PREPARE: 22, STMT_EXECUTE: 23, STMT_SEND_LONG_DATA: 24, STMT_CLOSE: 25, STMT_RESET: 26, SET_OPTION: 27, STMT_FETCH: 28, DAEMON: 29, BINLOG_DUMP_GTID: 30, UNKNOWN: 255 }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/binlog_dump.js var require_binlog_dump3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/binlog_dump.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var CommandCodes = require_commands3(); var BinlogDump = class { constructor(opts) { this.binlogPos = opts.binlogPos || 0; this.serverId = opts.serverId || 0; this.flags = opts.flags || 0; this.filename = opts.filename || ""; } toPacket() { const length = 15 + Buffer.byteLength(this.filename, "utf8"); const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.BINLOG_DUMP); packet.writeInt32(this.binlogPos); packet.writeInt16(this.flags); packet.writeInt32(this.serverId); packet.writeString(this.filename); return packet; } }; module2.exports = BinlogDump; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/client.js var require_client2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/client.js"(exports) { "use strict"; exports.LONG_PASSWORD = 1; exports.FOUND_ROWS = 2; exports.LONG_FLAG = 4; exports.CONNECT_WITH_DB = 8; exports.NO_SCHEMA = 16; exports.COMPRESS = 32; exports.ODBC = 64; exports.LOCAL_FILES = 128; exports.IGNORE_SPACE = 256; exports.PROTOCOL_41 = 512; exports.INTERACTIVE = 1024; exports.SSL = 2048; exports.IGNORE_SIGPIPE = 4096; exports.TRANSACTIONS = 8192; exports.RESERVED = 16384; exports.SECURE_CONNECTION = 32768; exports.MULTI_STATEMENTS = 65536; exports.MULTI_RESULTS = 131072; exports.PS_MULTI_RESULTS = 262144; exports.PLUGIN_AUTH = 524288; exports.CONNECT_ATTRS = 1048576; exports.PLUGIN_AUTH_LENENC_CLIENT_DATA = 2097152; exports.CAN_HANDLE_EXPIRED_PASSWORDS = 4194304; exports.SESSION_TRACK = 8388608; exports.DEPRECATE_EOF = 16777216; exports.SSL_VERIFY_SERVER_CERT = 1073741824; exports.REMEMBER_OPTIONS = 2147483648; exports.MULTI_FACTOR_AUTHENTICATION = 268435456; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_41.js var require_auth_412 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_41.js"(exports) { "use strict"; var crypto = require("crypto"); function sha1(msg, msg1, msg2) { const hash = crypto.createHash("sha1"); hash.update(msg); if (msg1) { hash.update(msg1); } if (msg2) { hash.update(msg2); } return hash.digest(); } function xor(a, b) { const result = Buffer.allocUnsafe(a.length); for (let i2 = 0; i2 < a.length; i2++) { result[i2] = a[i2] ^ b[i2]; } return result; } exports.xor = xor; function token(password, scramble1, scramble2) { if (!password) { return Buffer.alloc(0); } const stage1 = sha1(password); return exports.calculateTokenFromPasswordSha(stage1, scramble1, scramble2); } exports.calculateTokenFromPasswordSha = function(passwordSha, scramble1, scramble2) { const authPluginData1 = scramble1.slice(0, 8); const authPluginData2 = scramble2.slice(0, 12); const stage2 = sha1(passwordSha); const stage3 = sha1(authPluginData1, authPluginData2, stage2); return xor(stage3, passwordSha); }; exports.calculateToken = token; exports.verifyToken = function(publicSeed1, publicSeed2, token2, doubleSha) { const hashStage1 = xor(token2, sha1(publicSeed1, publicSeed2, doubleSha)); const candidateHash2 = sha1(hashStage1); return candidateHash2.compare(doubleSha) === 0; }; exports.doubleSha1 = function(password) { return sha1(sha1(password)); }; function xorRotating(a, seed) { const result = Buffer.allocUnsafe(a.length); const seedLen = seed.length; for (let i2 = 0; i2 < a.length; i2++) { result[i2] = a[i2] ^ seed[i2 % seedLen]; } return result; } exports.xorRotating = xorRotating; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/charset_encodings.js var require_charset_encodings2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/charset_encodings.js"(exports, module2) { "use strict"; module2.exports = [ "utf8", "big5", "latin2", "dec8", "cp850", "latin1", "hp8", "koi8r", "latin1", "latin2", "swe7", "ascii", "eucjp", "sjis", "cp1251", "latin1", "hebrew", "utf8", "tis620", "euckr", "latin7", "latin2", "koi8u", "cp1251", "gb2312", "greek", "cp1250", "latin2", "gbk", "cp1257", "latin5", "latin1", "armscii8", "cesu8", "cp1250", "ucs2", "cp866", "keybcs2", "macintosh", "macroman", "cp852", "latin7", "latin7", "macintosh", "cp1250", "utf8", "utf8", "latin1", "latin1", "latin1", "cp1251", "cp1251", "cp1251", "macroman", "utf16", "utf16", "utf16-le", "cp1256", "cp1257", "cp1257", "utf32", "utf32", "utf16-le", "binary", "armscii8", "ascii", "cp1250", "cp1256", "cp866", "dec8", "greek", "hebrew", "hp8", "keybcs2", "koi8r", "koi8u", "cesu8", "latin2", "latin5", "latin7", "cp850", "cp852", "swe7", "cesu8", "big5", "euckr", "gb2312", "gbk", "sjis", "tis620", "ucs2", "eucjp", "geostd8", "geostd8", "latin1", "cp932", "cp932", "eucjpms", "eucjpms", "cp1250", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf16", "utf8", "utf8", "utf8", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "ucs2", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "ucs2", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf32", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "cesu8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "cesu8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "gb18030", "gb18030", "gb18030", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8", "utf8" ]; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/change_user.js var require_change_user3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/change_user.js"(exports, module2) { "use strict"; var CommandCode = require_commands3(); var ClientConstants = require_client2(); var Packet = require_packet2(); var auth41 = require_auth_412(); var CharsetToEncoding = require_charset_encodings2(); var ChangeUser = class { constructor(opts) { this.flags = opts.flags; this.user = opts.user || ""; this.database = opts.database || ""; this.password = opts.password || ""; this.passwordSha1 = opts.passwordSha1; this.authPluginData1 = opts.authPluginData1; this.authPluginData2 = opts.authPluginData2; this.connectAttributes = opts.connectAttrinutes || {}; let authToken; if (this.passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( this.passwordSha1, this.authPluginData1, this.authPluginData2 ); } else { authToken = auth41.calculateToken( this.password, this.authPluginData1, this.authPluginData2 ); } this.authToken = authToken; this.charsetNumber = opts.charsetNumber; } serializeToBuffer(buffer) { const isSet = (flag) => this.flags & ClientConstants[flag]; const packet = new Packet(0, buffer, 0, buffer.length); packet.offset = 4; const encoding = CharsetToEncoding[this.charsetNumber]; packet.writeInt8(CommandCode.CHANGE_USER); packet.writeNullTerminatedString(this.user, encoding); if (isSet("SECURE_CONNECTION")) { packet.writeInt8(this.authToken.length); packet.writeBuffer(this.authToken); } else { packet.writeBuffer(this.authToken); packet.writeInt8(0); } packet.writeNullTerminatedString(this.database, encoding); packet.writeInt16(this.charsetNumber); if (isSet("PLUGIN_AUTH")) { packet.writeNullTerminatedString("mysql_native_password", "latin1"); } if (isSet("CONNECT_ATTRS")) { const connectAttributes = this.connectAttributes; const attrNames = Object.keys(connectAttributes); let keysLength = 0; for (let k = 0; k < attrNames.length; ++k) { keysLength += Packet.lengthCodedStringLength(attrNames[k], encoding); keysLength += Packet.lengthCodedStringLength( connectAttributes[attrNames[k]], encoding ); } packet.writeLengthCodedNumber(keysLength); for (let k = 0; k < attrNames.length; ++k) { packet.writeLengthCodedString(attrNames[k], encoding); packet.writeLengthCodedString( connectAttributes[attrNames[k]], encoding ); } } return packet; } toPacket() { if (typeof this.user !== "string") { throw new Error('"user" connection config property must be a string'); } if (typeof this.database !== "string") { throw new Error('"database" connection config property must be a string'); } const p = this.serializeToBuffer(Packet.MockBuffer()); return this.serializeToBuffer(Buffer.allocUnsafe(p.offset)); } }; module2.exports = ChangeUser; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/close_statement.js var require_close_statement3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/close_statement.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var CommandCodes = require_commands3(); var CloseStatement = class { constructor(id) { this.id = id; } toPacket() { const packet = new Packet(0, Buffer.allocUnsafe(9), 0, 9); packet.offset = 4; packet.writeInt8(CommandCodes.STMT_CLOSE); packet.writeInt32(this.id); return packet; } }; module2.exports = CloseStatement; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/column_definition.js var require_column_definition2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/column_definition.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var StringParser = require_string3(); var CharsetToEncoding = require_charset_encodings2(); var fields = ["catalog", "schema", "table", "orgTable", "name", "orgName"]; var ColumnDefinition = class { constructor(packet, clientEncoding) { this._buf = packet.buffer; this._clientEncoding = clientEncoding; this._catalogLength = packet.readLengthCodedNumber(); this._catalogStart = packet.offset; packet.offset += this._catalogLength; this._schemaLength = packet.readLengthCodedNumber(); this._schemaStart = packet.offset; packet.offset += this._schemaLength; this._tableLength = packet.readLengthCodedNumber(); this._tableStart = packet.offset; packet.offset += this._tableLength; this._orgTableLength = packet.readLengthCodedNumber(); this._orgTableStart = packet.offset; packet.offset += this._orgTableLength; const _nameLength = packet.readLengthCodedNumber(); const _nameStart = packet.offset; packet.offset += _nameLength; this._orgNameLength = packet.readLengthCodedNumber(); this._orgNameStart = packet.offset; packet.offset += this._orgNameLength; packet.skip(1); this.characterSet = packet.readInt16(); this.encoding = CharsetToEncoding[this.characterSet]; this.name = StringParser.decode( this._buf, this.encoding === "binary" ? this._clientEncoding : this.encoding, _nameStart, _nameStart + _nameLength ); this.columnLength = packet.readInt32(); this.columnType = packet.readInt8(); this.type = this.columnType; this.flags = packet.readInt16(); this.decimals = packet.readInt8(); } inspect() { return { catalog: this.catalog, schema: this.schema, name: this.name, orgName: this.orgName, table: this.table, orgTable: this.orgTable, characterSet: this.characterSet, columnLength: this.columnLength, columnType: this.columnType, type: this.columnType, flags: this.flags, decimals: this.decimals }; } static toPacket(column, sequenceId) { let length = 17; fields.forEach((field) => { length += Packet.lengthCodedStringLength( column[field], CharsetToEncoding[column.characterSet] ); }); const buffer = Buffer.allocUnsafe(length); const packet = new Packet(sequenceId, buffer, 0, length); function writeField(name) { packet.writeLengthCodedString( column[name], CharsetToEncoding[column.characterSet] ); } packet.offset = 4; fields.forEach(writeField); packet.writeInt8(12); packet.writeInt16(column.characterSet); packet.writeInt32(column.columnLength); packet.writeInt8(column.columnType); packet.writeInt16(column.flags); packet.writeInt8(column.decimals); packet.writeInt16(0); return packet; } get db() { return this.schema; } }; var addString = function(name) { Object.defineProperty(ColumnDefinition.prototype, name, { get: function() { const start = this[`_${name}Start`]; const end = start + this[`_${name}Length`]; const val = StringParser.decode( this._buf, this.encoding === "binary" ? this._clientEncoding : this.encoding, start, end ); Object.defineProperty(this, name, { value: val, writable: false, configurable: false, enumerable: false }); return val; } }); }; addString("catalog"); addString("schema"); addString("table"); addString("orgTable"); addString("orgName"); module2.exports = ColumnDefinition; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/cursor.js var require_cursor2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/cursor.js"(exports, module2) { "use strict"; module2.exports = { NO_CURSOR: 0, READ_ONLY: 1, FOR_UPDATE: 2, SCROLLABLE: 3 }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/execute.js var require_execute3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/execute.js"(exports, module2) { "use strict"; var CursorType = require_cursor2(); var CommandCodes = require_commands3(); var Types = require_types2(); var Packet = require_packet2(); var CharsetToEncoding = require_charset_encodings2(); function isJSON(value) { return Array.isArray(value) || value.constructor === Object || typeof value.toJSON === "function" && !Buffer.isBuffer(value); } function toParameter(value, encoding, timezone) { let type = Types.VAR_STRING; let length; let writer = function(value2) { return Packet.prototype.writeLengthCodedString.call(this, value2, encoding); }; if (value !== null) { switch (typeof value) { case "undefined": throw new TypeError("Bind parameters must not contain undefined"); case "number": type = Types.DOUBLE; length = 8; writer = Packet.prototype.writeDouble; break; case "boolean": value = value | 0; type = Types.TINY; length = 1; writer = Packet.prototype.writeInt8; break; case "object": if (Object.prototype.toString.call(value) === "[object Date]") { type = Types.DATETIME; length = 12; writer = function(value2) { return Packet.prototype.writeDate.call(this, value2, timezone); }; } else if (isJSON(value)) { value = JSON.stringify(value); type = Types.JSON; } else if (Buffer.isBuffer(value)) { length = Packet.lengthCodedNumberLength(value.length) + value.length; writer = Packet.prototype.writeLengthCodedBuffer; } break; default: value = value.toString(); } } else { value = ""; type = Types.NULL; } if (!length) { length = Packet.lengthCodedStringLength(value, encoding); } return { value, type, length, writer }; } var Execute = class { constructor(id, parameters, charsetNumber, timezone) { this.id = id; this.parameters = parameters; this.encoding = CharsetToEncoding[charsetNumber]; this.timezone = timezone; } static fromPacket(packet, encoding) { const stmtId = packet.readInt32(); const flags = packet.readInt8(); const iterationCount = packet.readInt32(); let i2 = packet.offset; while (i2 < packet.end - 1) { if ((packet.buffer[i2 + 1] === Types.VAR_STRING || packet.buffer[i2 + 1] === Types.NULL || packet.buffer[i2 + 1] === Types.DOUBLE || packet.buffer[i2 + 1] === Types.TINY || packet.buffer[i2 + 1] === Types.DATETIME || packet.buffer[i2 + 1] === Types.JSON) && packet.buffer[i2] === 1 && packet.buffer[i2 + 2] === 0) { break; } else { packet.readInt8(); } i2++; } const types3 = []; for (let i3 = packet.offset + 1; i3 < packet.end - 1; i3++) { if ((packet.buffer[i3] === Types.VAR_STRING || packet.buffer[i3] === Types.NULL || packet.buffer[i3] === Types.DOUBLE || packet.buffer[i3] === Types.TINY || packet.buffer[i3] === Types.DATETIME || packet.buffer[i3] === Types.JSON) && packet.buffer[i3 + 1] === 0) { types3.push(packet.buffer[i3]); packet.skip(2); } } packet.skip(1); const values = []; for (let i3 = 0; i3 < types3.length; i3++) { if (types3[i3] === Types.VAR_STRING) { values.push(packet.readLengthCodedString(encoding)); } else if (types3[i3] === Types.DOUBLE) { values.push(packet.readDouble()); } else if (types3[i3] === Types.TINY) { values.push(packet.readInt8()); } else if (types3[i3] === Types.DATETIME) { values.push(packet.readDateTime()); } else if (types3[i3] === Types.JSON) { values.push(JSON.parse(packet.readLengthCodedString(encoding))); } if (types3[i3] === Types.NULL) { values.push(null); } } return { stmtId, flags, iterationCount, values }; } toPacket() { let length = 14; let parameters; if (this.parameters && this.parameters.length > 0) { length += Math.floor((this.parameters.length + 7) / 8); length += 1; length += 2 * this.parameters.length; parameters = this.parameters.map( (value) => toParameter(value, this.encoding, this.timezone) ); length += parameters.reduce( (accumulator, parameter) => accumulator + parameter.length, 0 ); } const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.STMT_EXECUTE); packet.writeInt32(this.id); packet.writeInt8(CursorType.NO_CURSOR); packet.writeInt32(1); if (parameters) { let bitmap = 0; let bitValue = 1; parameters.forEach((parameter) => { if (parameter.type === Types.NULL) { bitmap += bitValue; } bitValue *= 2; if (bitValue === 256) { packet.writeInt8(bitmap); bitmap = 0; bitValue = 1; } }); if (bitValue !== 1) { packet.writeInt8(bitmap); } packet.writeInt8(1); parameters.forEach((parameter) => { packet.writeInt8(parameter.type); packet.writeInt8(0); }); parameters.forEach((parameter) => { if (parameter.type !== Types.NULL) { parameter.writer.call(packet, parameter.value); } }); } return packet; } }; module2.exports = Execute; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/handshake.js var require_handshake2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/handshake.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var ClientConstants = require_client2(); var Handshake = class { constructor(args) { this.protocolVersion = args.protocolVersion; this.serverVersion = args.serverVersion; this.capabilityFlags = args.capabilityFlags; this.connectionId = args.connectionId; this.authPluginData1 = args.authPluginData1; this.authPluginData2 = args.authPluginData2; this.characterSet = args.characterSet; this.statusFlags = args.statusFlags; this.autPluginName = args.autPluginName; } setScrambleData(cb) { require("crypto").randomBytes(20, (err, data) => { if (err) { cb(err); return; } this.authPluginData1 = data.slice(0, 8); this.authPluginData2 = data.slice(8, 20); cb(); }); } toPacket(sequenceId) { const length = 68 + Buffer.byteLength(this.serverVersion, "utf8"); const buffer = Buffer.alloc(length + 4, 0); const packet = new Packet(sequenceId, buffer, 0, length + 4); packet.offset = 4; packet.writeInt8(this.protocolVersion); packet.writeString(this.serverVersion, "cesu8"); packet.writeInt8(0); packet.writeInt32(this.connectionId); packet.writeBuffer(this.authPluginData1); packet.writeInt8(0); const capabilityFlagsBuffer = Buffer.allocUnsafe(4); capabilityFlagsBuffer.writeUInt32LE(this.capabilityFlags, 0); packet.writeBuffer(capabilityFlagsBuffer.slice(0, 2)); packet.writeInt8(this.characterSet); packet.writeInt16(this.statusFlags); packet.writeBuffer(capabilityFlagsBuffer.slice(2, 4)); packet.writeInt8(21); packet.skip(10); packet.writeBuffer(this.authPluginData2); packet.writeInt8(0); packet.writeString("mysql_native_password", "latin1"); packet.writeInt8(0); return packet; } static fromPacket(packet) { const args = {}; args.protocolVersion = packet.readInt8(); args.serverVersion = packet.readNullTerminatedString("cesu8"); args.connectionId = packet.readInt32(); args.authPluginData1 = packet.readBuffer(8); packet.skip(1); const capabilityFlagsBuffer = Buffer.allocUnsafe(4); capabilityFlagsBuffer[0] = packet.readInt8(); capabilityFlagsBuffer[1] = packet.readInt8(); if (packet.haveMoreData()) { args.characterSet = packet.readInt8(); args.statusFlags = packet.readInt16(); capabilityFlagsBuffer[2] = packet.readInt8(); capabilityFlagsBuffer[3] = packet.readInt8(); args.capabilityFlags = capabilityFlagsBuffer.readUInt32LE(0); if (args.capabilityFlags & ClientConstants.PLUGIN_AUTH) { args.authPluginDataLength = packet.readInt8(); } else { args.authPluginDataLength = 0; packet.skip(1); } packet.skip(10); } else { args.capabilityFlags = capabilityFlagsBuffer.readUInt16LE(0); } const isSecureConnection = args.capabilityFlags & ClientConstants.SECURE_CONNECTION; if (isSecureConnection) { const authPluginDataLength = args.authPluginDataLength; if (authPluginDataLength === 0) { args.authPluginDataLength = 20; args.authPluginData2 = packet.readBuffer(12); packet.skip(1); } else { const len = Math.max(13, authPluginDataLength - 8); args.authPluginData2 = packet.readBuffer(len); } } if (args.capabilityFlags & ClientConstants.PLUGIN_AUTH) { args.autPluginName = packet.readNullTerminatedString("ascii"); } return new Handshake(args); } }; module2.exports = Handshake; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/handshake_response.js var require_handshake_response2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/handshake_response.js"(exports, module2) { "use strict"; var ClientConstants = require_client2(); var CharsetToEncoding = require_charset_encodings2(); var Packet = require_packet2(); var auth41 = require_auth_412(); var HandshakeResponse = class { constructor(handshake) { this.user = handshake.user || ""; this.database = handshake.database || ""; this.password = handshake.password || ""; this.passwordSha1 = handshake.passwordSha1; this.authPluginData1 = handshake.authPluginData1; this.authPluginData2 = handshake.authPluginData2; this.compress = handshake.compress; this.clientFlags = handshake.flags; let authToken; if (this.passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( this.passwordSha1, this.authPluginData1, this.authPluginData2 ); } else { authToken = auth41.calculateToken( this.password, this.authPluginData1, this.authPluginData2 ); } this.authToken = authToken; this.charsetNumber = handshake.charsetNumber; this.encoding = CharsetToEncoding[handshake.charsetNumber]; this.connectAttributes = handshake.connectAttributes; } serializeResponse(buffer) { const isSet = (flag) => this.clientFlags & ClientConstants[flag]; const packet = new Packet(0, buffer, 0, buffer.length); packet.offset = 4; packet.writeInt32(this.clientFlags); packet.writeInt32(0); packet.writeInt8(this.charsetNumber); packet.skip(23); const encoding = this.encoding; packet.writeNullTerminatedString(this.user, encoding); let k; if (isSet("PLUGIN_AUTH_LENENC_CLIENT_DATA")) { packet.writeLengthCodedNumber(this.authToken.length); packet.writeBuffer(this.authToken); } else if (isSet("SECURE_CONNECTION")) { packet.writeInt8(this.authToken.length); packet.writeBuffer(this.authToken); } else { packet.writeBuffer(this.authToken); packet.writeInt8(0); } if (isSet("CONNECT_WITH_DB")) { packet.writeNullTerminatedString(this.database, encoding); } if (isSet("PLUGIN_AUTH")) { packet.writeNullTerminatedString("mysql_native_password", "latin1"); } if (isSet("CONNECT_ATTRS")) { const connectAttributes = this.connectAttributes || {}; const attrNames = Object.keys(connectAttributes); let keysLength = 0; for (k = 0; k < attrNames.length; ++k) { keysLength += Packet.lengthCodedStringLength(attrNames[k], encoding); keysLength += Packet.lengthCodedStringLength( connectAttributes[attrNames[k]], encoding ); } packet.writeLengthCodedNumber(keysLength); for (k = 0; k < attrNames.length; ++k) { packet.writeLengthCodedString(attrNames[k], encoding); packet.writeLengthCodedString( connectAttributes[attrNames[k]], encoding ); } } return packet; } toPacket() { if (typeof this.user !== "string") { throw new Error('"user" connection config property must be a string'); } if (typeof this.database !== "string") { throw new Error('"database" connection config property must be a string'); } const p = this.serializeResponse(Packet.MockBuffer()); return this.serializeResponse(Buffer.alloc(p.offset)); } static fromPacket(packet) { const args = {}; args.clientFlags = packet.readInt32(); function isSet(flag) { return args.clientFlags & ClientConstants[flag]; } args.maxPacketSize = packet.readInt32(); args.charsetNumber = packet.readInt8(); const encoding = CharsetToEncoding[args.charsetNumber]; args.encoding = encoding; packet.skip(23); args.user = packet.readNullTerminatedString(encoding); let authTokenLength; if (isSet("PLUGIN_AUTH_LENENC_CLIENT_DATA")) { authTokenLength = packet.readLengthCodedNumber(encoding); args.authToken = packet.readBuffer(authTokenLength); } else if (isSet("SECURE_CONNECTION")) { authTokenLength = packet.readInt8(); args.authToken = packet.readBuffer(authTokenLength); } else { args.authToken = packet.readNullTerminatedString(encoding); } if (isSet("CONNECT_WITH_DB")) { args.database = packet.readNullTerminatedString(encoding); } if (isSet("PLUGIN_AUTH")) { args.authPluginName = packet.readNullTerminatedString(encoding); } if (isSet("CONNECT_ATTRS")) { const keysLength = packet.readLengthCodedNumber(encoding); const keysEnd = packet.offset + keysLength; const attrs = {}; while (packet.offset < keysEnd) { attrs[packet.readLengthCodedString(encoding)] = packet.readLengthCodedString(encoding); } args.connectAttributes = attrs; } return args; } }; module2.exports = HandshakeResponse; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/prepare_statement.js var require_prepare_statement2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/prepare_statement.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var CommandCodes = require_commands3(); var StringParser = require_string3(); var CharsetToEncoding = require_charset_encodings2(); var PrepareStatement = class { constructor(sql, charsetNumber) { this.query = sql; this.charsetNumber = charsetNumber; this.encoding = CharsetToEncoding[charsetNumber]; } toPacket() { const buf = StringParser.encode(this.query, this.encoding); const length = 5 + buf.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.STMT_PREPARE); packet.writeBuffer(buf); return packet; } }; module2.exports = PrepareStatement; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/prepared_statement_header.js var require_prepared_statement_header2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/prepared_statement_header.js"(exports, module2) { "use strict"; var PreparedStatementHeader = class { constructor(packet) { packet.skip(1); this.id = packet.readInt32(); this.fieldCount = packet.readInt16(); this.parameterCount = packet.readInt16(); packet.skip(1); this.warningCount = packet.readInt16(); } }; module2.exports = PreparedStatementHeader; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/query.js var require_query3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/query.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var CommandCode = require_commands3(); var StringParser = require_string3(); var CharsetToEncoding = require_charset_encodings2(); var Query = class { constructor(sql, charsetNumber) { this.query = sql; this.charsetNumber = charsetNumber; this.encoding = CharsetToEncoding[charsetNumber]; } toPacket() { const buf = StringParser.encode(this.query, this.encoding); const length = 5 + buf.length; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCode.QUERY); packet.writeBuffer(buf); return packet; } }; module2.exports = Query; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/register_slave.js var require_register_slave3 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/register_slave.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var CommandCodes = require_commands3(); var RegisterSlave = class { constructor(opts) { this.serverId = opts.serverId || 0; this.slaveHostname = opts.slaveHostname || ""; this.slaveUser = opts.slaveUser || ""; this.slavePassword = opts.slavePassword || ""; this.slavePort = opts.slavePort || 0; this.replicationRank = opts.replicationRank || 0; this.masterId = opts.masterId || 0; } toPacket() { const length = 15 + Buffer.byteLength(this.slaveHostname, "utf8") + Buffer.byteLength(this.slaveUser, "utf8") + Buffer.byteLength(this.slavePassword, "utf8") + 3 + 4; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(CommandCodes.REGISTER_SLAVE); packet.writeInt32(this.serverId); packet.writeInt8(Buffer.byteLength(this.slaveHostname, "utf8")); packet.writeString(this.slaveHostname); packet.writeInt8(Buffer.byteLength(this.slaveUser, "utf8")); packet.writeString(this.slaveUser); packet.writeInt8(Buffer.byteLength(this.slavePassword, "utf8")); packet.writeString(this.slavePassword); packet.writeInt16(this.slavePort); packet.writeInt32(this.replicationRank); packet.writeInt32(this.masterId); return packet; } }; module2.exports = RegisterSlave; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/server_status.js var require_server_status2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/server_status.js"(exports) { "use strict"; exports.SERVER_STATUS_IN_TRANS = 1; exports.SERVER_STATUS_AUTOCOMMIT = 2; exports.SERVER_MORE_RESULTS_EXISTS = 8; exports.SERVER_QUERY_NO_GOOD_INDEX_USED = 16; exports.SERVER_QUERY_NO_INDEX_USED = 32; exports.SERVER_STATUS_CURSOR_EXISTS = 64; exports.SERVER_STATUS_LAST_ROW_SENT = 128; exports.SERVER_STATUS_DB_DROPPED = 256; exports.SERVER_STATUS_NO_BACKSLASH_ESCAPES = 512; exports.SERVER_STATUS_METADATA_CHANGED = 1024; exports.SERVER_QUERY_WAS_SLOW = 2048; exports.SERVER_PS_OUT_PARAMS = 4096; exports.SERVER_STATUS_IN_TRANS_READONLY = 8192; exports.SERVER_SESSION_STATE_CHANGED = 16384; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/encoding_charset.js var require_encoding_charset2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/encoding_charset.js"(exports, module2) { "use strict"; module2.exports = { big5: 1, latin2: 2, dec8: 3, cp850: 4, latin1: 5, hp8: 6, koi8r: 7, swe7: 10, ascii: 11, eucjp: 12, sjis: 13, cp1251: 14, hebrew: 16, tis620: 18, euckr: 19, latin7: 20, koi8u: 22, gb2312: 24, greek: 25, cp1250: 26, gbk: 28, cp1257: 29, latin5: 30, armscii8: 32, cesu8: 33, ucs2: 35, cp866: 36, keybcs2: 37, macintosh: 38, macroman: 39, cp852: 40, utf8: 45, utf8mb4: 45, utf16: 54, utf16le: 56, cp1256: 57, utf32: 60, binary: 63, geostd8: 92, cp932: 95, eucjpms: 97, gb18030: 248 }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/session_track.js var require_session_track2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/session_track.js"(exports) { "use strict"; exports.SYSTEM_VARIABLES = 0; exports.SCHEMA = 1; exports.STATE_CHANGE = 2; exports.STATE_GTIDS = 3; exports.TRANSACTION_CHARACTERISTICS = 4; exports.TRANSACTION_STATE = 5; exports.FIRST_KEY = exports.SYSTEM_VARIABLES; exports.LAST_KEY = exports.TRANSACTION_STATE; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/resultset_header.js var require_resultset_header2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/resultset_header.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var ClientConstants = require_client2(); var ServerSatusFlags = require_server_status2(); var EncodingToCharset = require_encoding_charset2(); var sessionInfoTypes = require_session_track2(); var ResultSetHeader = class { constructor(packet, connection) { const bigNumberStrings = connection.config.bigNumberStrings; const encoding = connection.serverEncoding; const flags = connection._handshakePacket.capabilityFlags; const isSet = function(flag) { return flags & ClientConstants[flag]; }; if (packet.buffer[packet.offset] !== 0) { this.fieldCount = packet.readLengthCodedNumber(); if (this.fieldCount === null) { this.infileName = packet.readString(void 0, encoding); } return; } this.fieldCount = packet.readInt8(); this.affectedRows = packet.readLengthCodedNumber(bigNumberStrings); this.insertId = packet.readLengthCodedNumberSigned(bigNumberStrings); this.info = ""; if (isSet("PROTOCOL_41")) { this.serverStatus = packet.readInt16(); this.warningStatus = packet.readInt16(); } else if (isSet("TRANSACTIONS")) { this.serverStatus = packet.readInt16(); } let stateChanges = null; if (isSet("SESSION_TRACK") && packet.offset < packet.end) { this.info = packet.readLengthCodedString(encoding); if (this.serverStatus && ServerSatusFlags.SERVER_SESSION_STATE_CHANGED) { let len = packet.offset < packet.end ? packet.readLengthCodedNumber() : 0; const end = packet.offset + len; let type, key, stateEnd; if (len > 0) { stateChanges = { systemVariables: {}, schema: null, trackStateChange: null }; } while (packet.offset < end) { type = packet.readInt8(); len = packet.readLengthCodedNumber(); stateEnd = packet.offset + len; if (type === sessionInfoTypes.SYSTEM_VARIABLES) { key = packet.readLengthCodedString(encoding); const val = packet.readLengthCodedString(encoding); stateChanges.systemVariables[key] = val; if (key === "character_set_client") { const charsetNumber = EncodingToCharset[val]; connection.config.charsetNumber = charsetNumber; } } else if (type === sessionInfoTypes.SCHEMA) { key = packet.readLengthCodedString(encoding); stateChanges.schema = key; } else if (type === sessionInfoTypes.STATE_CHANGE) { stateChanges.trackStateChange = packet.readLengthCodedString( encoding ); } else { } packet.offset = stateEnd; } } } else { this.info = packet.readString(void 0, encoding); } if (stateChanges) { this.stateChanges = stateChanges; } const m2 = this.info.match(/\schanged:\s*(\d+)/i); if (m2 !== null) { this.changedRows = parseInt(m2[1], 10); } } static toPacket(fieldCount, insertId) { let length = 4 + Packet.lengthCodedNumberLength(fieldCount); if (typeof insertId !== "undefined") { length += Packet.lengthCodedNumberLength(insertId); } const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeLengthCodedNumber(fieldCount); if (typeof insertId !== "undefined") { packet.writeLengthCodedNumber(insertId); } return packet; } }; module2.exports = ResultSetHeader; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/ssl_request.js var require_ssl_request2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/ssl_request.js"(exports, module2) { "use strict"; var ClientConstants = require_client2(); var Packet = require_packet2(); var SSLRequest = class { constructor(flags, charset) { this.clientFlags = flags | ClientConstants.SSL; this.charset = charset; } toPacket() { const length = 36; const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); buffer.fill(0); packet.offset = 4; packet.writeInt32(this.clientFlags); packet.writeInt32(0); packet.writeInt8(this.charset); return packet; } }; module2.exports = SSLRequest; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/text_row.js var require_text_row2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/text_row.js"(exports, module2) { "use strict"; var Packet = require_packet2(); var TextRow = class { constructor(columns) { this.columns = columns || []; } static fromPacket(packet) { const columns = []; while (packet.haveMoreData()) { columns.push(packet.readLengthCodedString()); } return new TextRow(columns); } static toPacket(columns, encoding) { const sequenceId = 0; let length = 0; columns.forEach((val) => { if (val === null || typeof val === "undefined") { ++length; return; } length += Packet.lengthCodedStringLength(val.toString(10), encoding); }); const buffer = Buffer.allocUnsafe(length + 4); const packet = new Packet(sequenceId, buffer, 0, length + 4); packet.offset = 4; columns.forEach((val) => { if (val === null) { packet.writeNull(); return; } if (typeof val === "undefined") { packet.writeInt8(0); return; } packet.writeLengthCodedString(val.toString(10), encoding); }); return packet; } }; module2.exports = TextRow; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/index.js var require_packets2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/index.js"(exports, module2) { "use strict"; var process2 = require("process"); var AuthNextFactor = require_auth_next_factor(); var AuthSwitchRequest = require_auth_switch_request2(); var AuthSwitchRequestMoreData = require_auth_switch_request_more_data2(); var AuthSwitchResponse = require_auth_switch_response2(); var BinaryRow = require_binary_row2(); var BinlogDump = require_binlog_dump3(); var ChangeUser = require_change_user3(); var CloseStatement = require_close_statement3(); var ColumnDefinition = require_column_definition2(); var Execute = require_execute3(); var Handshake = require_handshake2(); var HandshakeResponse = require_handshake_response2(); var PrepareStatement = require_prepare_statement2(); var PreparedStatementHeader = require_prepared_statement_header2(); var Query = require_query3(); var RegisterSlave = require_register_slave3(); var ResultSetHeader = require_resultset_header2(); var SSLRequest = require_ssl_request2(); var TextRow = require_text_row2(); var ctorMap = { AuthNextFactor, AuthSwitchRequest, AuthSwitchRequestMoreData, AuthSwitchResponse, BinaryRow, BinlogDump, ChangeUser, CloseStatement, ColumnDefinition, Execute, Handshake, HandshakeResponse, PrepareStatement, PreparedStatementHeader, Query, RegisterSlave, ResultSetHeader, SSLRequest, TextRow }; Object.entries(ctorMap).forEach(([name, ctor]) => { module2.exports[name] = ctor; if (process2.env.NODE_DEBUG) { if (ctor.prototype.toPacket) { const old = ctor.prototype.toPacket; ctor.prototype.toPacket = function() { const p = old.call(this); p._name = name; return p; }; } } }); var Packet = require_packet2(); exports.Packet = Packet; var OK = class { static toPacket(args, encoding) { args = args || {}; const affectedRows = args.affectedRows || 0; const insertId = args.insertId || 0; const serverStatus = args.serverStatus || 0; const warningCount = args.warningCount || 0; const message = args.message || ""; let length = 9 + Packet.lengthCodedNumberLength(affectedRows); length += Packet.lengthCodedNumberLength(insertId); const buffer = Buffer.allocUnsafe(length); const packet = new Packet(0, buffer, 0, length); packet.offset = 4; packet.writeInt8(0); packet.writeLengthCodedNumber(affectedRows); packet.writeLengthCodedNumber(insertId); packet.writeInt16(serverStatus); packet.writeInt16(warningCount); packet.writeString(message, encoding); packet._name = "OK"; return packet; } }; exports.OK = OK; var EOF = class { static toPacket(warnings, statusFlags) { if (typeof warnings === "undefined") { warnings = 0; } if (typeof statusFlags === "undefined") { statusFlags = 0; } const packet = new Packet(0, Buffer.allocUnsafe(9), 0, 9); packet.offset = 4; packet.writeInt8(254); packet.writeInt16(warnings); packet.writeInt16(statusFlags); packet._name = "EOF"; return packet; } }; exports.EOF = EOF; var Error2 = class { static toPacket(args, encoding) { const length = 13 + Buffer.byteLength(args.message, "utf8"); const packet = new Packet(0, Buffer.allocUnsafe(length), 0, length); packet.offset = 4; packet.writeInt8(255); packet.writeInt16(args.code); packet.writeString("#_____", encoding); packet.writeString(args.message, encoding); packet._name = "Error"; return packet; } static fromPacket(packet) { packet.readInt8(); const code = packet.readInt16(); packet.readString(1, "ascii"); packet.readString(5, "ascii"); const message = packet.readNullTerminatedString("utf8"); const error = new Error2(); error.message = message; error.code = code; return error; } }; exports.Error = Error2; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/command.js var require_command2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/command.js"(exports, module2) { "use strict"; var EventEmitter = require("events").EventEmitter; var Timers = require("timers"); var Command = class extends EventEmitter { constructor() { super(); this.next = null; } stateName() { const state = this.next; for (const i2 in this) { if (this[i2] === state && i2 !== "next") { return i2; } } return "unknown name"; } execute(packet, connection) { if (!this.next) { this.next = this.start; connection._resetSequenceId(); } if (packet && packet.isError()) { const err = packet.asError(connection.clientEncoding); err.sql = this.sql || this.query; if (this.queryTimeout) { Timers.clearTimeout(this.queryTimeout); this.queryTimeout = null; } if (this.onResult) { this.onResult(err); this.emit("end"); } else { this.emit("error", err); this.emit("end"); } return true; } this.next = this.next(packet, connection); if (this.next) { return false; } this.emit("end"); return true; } }; module2.exports = Command; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/sha256_password.js var require_sha256_password2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/sha256_password.js"(exports, module2) { "use strict"; var PLUGIN_NAME = "sha256_password"; var crypto = require("crypto"); var { xorRotating } = require_auth_412(); var REQUEST_SERVER_KEY_PACKET = Buffer.from([1]); var STATE_INITIAL = 0; var STATE_WAIT_SERVER_KEY = 1; var STATE_FINAL = -1; function encrypt(password, scramble, key) { const stage1 = xorRotating( Buffer.from(`${password}\0`, "utf8"), scramble ); return crypto.publicEncrypt(key, stage1); } module2.exports = (pluginOptions = {}) => ({ connection }) => { let state = 0; let scramble = null; const password = connection.config.password; const authWithKey = (serverKey) => { const _password = encrypt(password, scramble, serverKey); state = STATE_FINAL; return _password; }; return (data) => { switch (state) { case STATE_INITIAL: scramble = data.slice(0, 20); if (pluginOptions.serverPublicKey) { return authWithKey(pluginOptions.serverPublicKey); } state = STATE_WAIT_SERVER_KEY; return REQUEST_SERVER_KEY_PACKET; case STATE_WAIT_SERVER_KEY: if (pluginOptions.onServerPublicKey) { pluginOptions.onServerPublicKey(data); } return authWithKey(data); case STATE_FINAL: throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in STATE_FINAL state.` ); } throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in state ${state}` ); }; }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.js var require_caching_sha2_password2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/caching_sha2_password.js"(exports, module2) { "use strict"; var PLUGIN_NAME = "caching_sha2_password"; var crypto = require("crypto"); var { xor, xorRotating } = require_auth_412(); var REQUEST_SERVER_KEY_PACKET = Buffer.from([2]); var FAST_AUTH_SUCCESS_PACKET = Buffer.from([3]); var PERFORM_FULL_AUTHENTICATION_PACKET = Buffer.from([4]); var STATE_INITIAL = 0; var STATE_TOKEN_SENT = 1; var STATE_WAIT_SERVER_KEY = 2; var STATE_FINAL = -1; function sha256(msg) { const hash = crypto.createHash("sha256"); hash.update(msg); return hash.digest(); } function calculateToken(password, scramble) { if (!password) { return Buffer.alloc(0); } const stage1 = sha256(Buffer.from(password)); const stage2 = sha256(stage1); const stage3 = sha256(Buffer.concat([stage2, scramble])); return xor(stage1, stage3); } function encrypt(password, scramble, key) { const stage1 = xorRotating( Buffer.from(`${password}\0`, "utf8"), scramble ); return crypto.publicEncrypt(key, stage1); } module2.exports = (pluginOptions = {}) => ({ connection }) => { let state = 0; let scramble = null; const password = connection.config.password; const authWithKey = (serverKey) => { const _password = encrypt(password, scramble, serverKey); state = STATE_FINAL; return _password; }; return (data) => { switch (state) { case STATE_INITIAL: scramble = data.slice(0, 20); state = STATE_TOKEN_SENT; return calculateToken(password, scramble); case STATE_TOKEN_SENT: if (FAST_AUTH_SUCCESS_PACKET.equals(data)) { state = STATE_FINAL; return null; } if (PERFORM_FULL_AUTHENTICATION_PACKET.equals(data)) { const isSecureConnection = typeof pluginOptions.overrideIsSecure === "undefined" ? connection.config.ssl || connection.config.socketPath : pluginOptions.overrideIsSecure; if (isSecureConnection) { state = STATE_FINAL; return Buffer.from(`${password}\0`, "utf8"); } if (pluginOptions.serverPublicKey) { return authWithKey(pluginOptions.serverPublicKey); } state = STATE_WAIT_SERVER_KEY; return REQUEST_SERVER_KEY_PACKET; } throw new Error( `Invalid AuthMoreData packet received by ${PLUGIN_NAME} plugin in STATE_TOKEN_SENT state.` ); case STATE_WAIT_SERVER_KEY: if (pluginOptions.onServerPublicKey) { pluginOptions.onServerPublicKey(data); } return authWithKey(data); case STATE_FINAL: throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in STATE_FINAL state.` ); } throw new Error( `Unexpected data in AuthMoreData packet received by ${PLUGIN_NAME} plugin in state ${state}` ); }; }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/mysql_native_password.js var require_mysql_native_password2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/mysql_native_password.js"(exports, module2) { "use strict"; var auth41 = require_auth_412(); module2.exports = (pluginOptions) => ({ connection, command }) => { const password = command.password || pluginOptions.password || connection.config.password; const passwordSha1 = command.passwordSha1 || pluginOptions.passwordSha1 || connection.config.passwordSha1; return (data) => { const authPluginData1 = data.slice(0, 8); const authPluginData2 = data.slice(8, 20); let authToken; if (passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( passwordSha1, authPluginData1, authPluginData2 ); } else { authToken = auth41.calculateToken( password, authPluginData1, authPluginData2 ); } return authToken; }; }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/mysql_clear_password.js var require_mysql_clear_password = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/mysql_clear_password.js"(exports, module2) { "use strict"; function bufferFromStr(str) { return Buffer.from(`${str}\0`); } var create_mysql_clear_password_plugin = (pluginOptions) => function mysql_clear_password_plugin({ connection, command }) { const password = command.password || pluginOptions.password || connection.config.password; return function() { return bufferFromStr(password); }; }; module2.exports = create_mysql_clear_password_plugin; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/auth_switch.js var require_auth_switch2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/auth_switch.js"(exports, module2) { "use strict"; var Packets = require_packets2(); var sha256_password = require_sha256_password2(); var caching_sha2_password = require_caching_sha2_password2(); var mysql_native_password = require_mysql_native_password2(); var mysql_clear_password = require_mysql_clear_password(); var standardAuthPlugins = { sha256_password: sha256_password({}), caching_sha2_password: caching_sha2_password({}), mysql_native_password: mysql_native_password({}), mysql_clear_password: mysql_clear_password({}) }; function warnLegacyAuthSwitch() { console.warn( "WARNING! authSwitchHandler api is deprecated, please use new authPlugins api" ); } function authSwitchPluginError(error, command) { error.code = "AUTH_SWITCH_PLUGIN_ERROR"; error.fatal = true; command.emit("error", error); } function authSwitchRequest(packet, connection, command) { const { pluginName, pluginData } = Packets.AuthSwitchRequest.fromPacket( packet ); let authPlugin = connection.config.authPlugins && connection.config.authPlugins[pluginName]; if (connection.config.authSwitchHandler && pluginName !== "mysql_native_password") { const legacySwitchHandler = connection.config.authSwitchHandler; warnLegacyAuthSwitch(); legacySwitchHandler({ pluginName, pluginData }, (err, data) => { if (err) { return authSwitchPluginError(err, command); } connection.writePacket(new Packets.AuthSwitchResponse(data).toPacket()); }); return; } if (!authPlugin) { authPlugin = standardAuthPlugins[pluginName]; } if (!authPlugin) { throw new Error( `Server requests authentication using unknown plugin ${pluginName}. See ${"TODO: add plugins doco here"} on how to configure or author authentication plugins.` ); } connection._authPlugin = authPlugin({ connection, command }); Promise.resolve(connection._authPlugin(pluginData)).then((data) => { if (data) { connection.writePacket(new Packets.AuthSwitchResponse(data).toPacket()); } }).catch((err) => { authSwitchPluginError(err, command); }); } function authSwitchRequestMoreData(packet, connection, command) { const { data } = Packets.AuthSwitchRequestMoreData.fromPacket(packet); if (connection.config.authSwitchHandler) { const legacySwitchHandler = connection.config.authSwitchHandler; warnLegacyAuthSwitch(); legacySwitchHandler({ pluginData: data }, (err, data2) => { if (err) { return authSwitchPluginError(err, command); } connection.writePacket(new Packets.AuthSwitchResponse(data2).toPacket()); }); return; } if (!connection._authPlugin) { throw new Error( "AuthPluginMoreData received but no auth plugin instance found" ); } Promise.resolve(connection._authPlugin(data)).then((data2) => { if (data2) { connection.writePacket(new Packets.AuthSwitchResponse(data2).toPacket()); } }).catch((err) => { authSwitchPluginError(err, command); }); } module2.exports = { authSwitchRequest, authSwitchRequestMoreData }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/compressed_protocol.js var require_compressed_protocol2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/compressed_protocol.js"(exports, module2) { "use strict"; var zlib2 = require("zlib"); var PacketParser = require_packet_parser2(); function handleCompressedPacket(packet) { const connection = this; const deflatedLength = packet.readInt24(); const body = packet.readBuffer(); if (deflatedLength !== 0) { connection.inflateQueue.push((task) => { zlib2.inflate(body, (err, data) => { if (err) { connection._handleNetworkError(err); return; } connection._bumpCompressedSequenceId(packet.numPackets); connection._inflatedPacketsParser.execute(data); task.done(); }); }); } else { connection.inflateQueue.push((task) => { connection._bumpCompressedSequenceId(packet.numPackets); connection._inflatedPacketsParser.execute(body); task.done(); }); } } function writeCompressed(buffer) { const MAX_COMPRESSED_LENGTH = 16777210; let start; if (buffer.length > MAX_COMPRESSED_LENGTH) { for (start = 0; start < buffer.length; start += MAX_COMPRESSED_LENGTH) { writeCompressed.call( this, buffer.slice(start, start + MAX_COMPRESSED_LENGTH) ); } return; } const connection = this; let packetLen = buffer.length; const compressHeader = Buffer.allocUnsafe(7); (function(seqId) { connection.deflateQueue.push((task) => { zlib2.deflate(buffer, (err, compressed) => { if (err) { connection._handleFatalError(err); return; } let compressedLength = compressed.length; if (compressedLength < packetLen) { compressHeader.writeUInt8(compressedLength & 255, 0); compressHeader.writeUInt16LE(compressedLength >> 8, 1); compressHeader.writeUInt8(seqId, 3); compressHeader.writeUInt8(packetLen & 255, 4); compressHeader.writeUInt16LE(packetLen >> 8, 5); connection.writeUncompressed(compressHeader); connection.writeUncompressed(compressed); } else { compressedLength = packetLen; packetLen = 0; compressHeader.writeUInt8(compressedLength & 255, 0); compressHeader.writeUInt16LE(compressedLength >> 8, 1); compressHeader.writeUInt8(seqId, 3); compressHeader.writeUInt8(packetLen & 255, 4); compressHeader.writeUInt16LE(packetLen >> 8, 5); connection.writeUncompressed(compressHeader); connection.writeUncompressed(buffer); } task.done(); }); }); })(connection.compressedSequenceId); connection._bumpCompressedSequenceId(1); } function enableCompression(connection) { connection._lastWrittenPacketId = 0; connection._lastReceivedPacketId = 0; connection._handleCompressedPacket = handleCompressedPacket; connection._inflatedPacketsParser = new PacketParser((p) => { connection.handlePacket(p); }, 4); connection._inflatedPacketsParser._lastPacket = 0; connection.packetParser = new PacketParser((packet) => { connection._handleCompressedPacket(packet); }, 7); connection.writeUncompressed = connection.write; connection.write = writeCompressed; const seqqueue = require_seq_queue2(); connection.inflateQueue = seqqueue.createQueue(); connection.deflateQueue = seqqueue.createQueue(); } module2.exports = { enableCompression }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/client_handshake.js var require_client_handshake2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/client_handshake.js"(exports, module2) { "use strict"; var Command = require_command2(); var Packets = require_packets2(); var ClientConstants = require_client2(); var CharsetToEncoding = require_charset_encodings2(); var auth41 = require_auth_412(); function flagNames(flags) { const res = []; for (const c2 in ClientConstants) { if (flags & ClientConstants[c2]) { res.push(c2.replace(/_/g, " ").toLowerCase()); } } return res; } var ClientHandshake = class extends Command { constructor(clientFlags) { super(); this.handshake = null; this.clientFlags = clientFlags; this.authenticationFactor = 0; } start() { return ClientHandshake.prototype.handshakeInit; } sendSSLRequest(connection) { const sslRequest = new Packets.SSLRequest( this.clientFlags, connection.config.charsetNumber ); connection.writePacket(sslRequest.toPacket()); } sendCredentials(connection) { if (connection.config.debug) { console.log( "Sending handshake packet: flags:%d=(%s)", this.clientFlags, flagNames(this.clientFlags).join(", ") ); } this.user = connection.config.user; this.password = connection.config.password; this.password1 = connection.config.password; this.password2 = connection.config.password2; this.password3 = connection.config.password3; this.passwordSha1 = connection.config.passwordSha1; this.database = connection.config.database; this.autPluginName = this.handshake.autPluginName; const handshakeResponse = new Packets.HandshakeResponse({ flags: this.clientFlags, user: this.user, database: this.database, password: this.password, passwordSha1: this.passwordSha1, charsetNumber: connection.config.charsetNumber, authPluginData1: this.handshake.authPluginData1, authPluginData2: this.handshake.authPluginData2, compress: connection.config.compress, connectAttributes: connection.config.connectAttributes }); connection.writePacket(handshakeResponse.toPacket()); } calculateNativePasswordAuthToken(authPluginData) { const authPluginData1 = authPluginData.slice(0, 8); const authPluginData2 = authPluginData.slice(8, 20); let authToken; if (this.passwordSha1) { authToken = auth41.calculateTokenFromPasswordSha( this.passwordSha1, authPluginData1, authPluginData2 ); } else { authToken = auth41.calculateToken( this.password, authPluginData1, authPluginData2 ); } return authToken; } handshakeInit(helloPacket, connection) { this.on("error", (e2) => { connection._fatalError = e2; connection._protocolError = e2; }); this.handshake = Packets.Handshake.fromPacket(helloPacket); if (connection.config.debug) { console.log( "Server hello packet: capability flags:%d=(%s)", this.handshake.capabilityFlags, flagNames(this.handshake.capabilityFlags).join(", ") ); } connection.serverCapabilityFlags = this.handshake.capabilityFlags; connection.serverEncoding = CharsetToEncoding[this.handshake.characterSet]; connection.connectionId = this.handshake.connectionId; const serverSSLSupport = this.handshake.capabilityFlags & ClientConstants.SSL; const multiFactorAuthentication = this.handshake.capabilityFlags & ClientConstants.MULTI_FACTOR_AUTHENTICATION; this.clientFlags = this.clientFlags | multiFactorAuthentication; connection.config.compress = connection.config.compress && this.handshake.capabilityFlags & ClientConstants.COMPRESS; this.clientFlags = this.clientFlags | connection.config.compress; if (connection.config.ssl) { if (!serverSSLSupport) { const err = new Error("Server does not support secure connnection"); err.code = "HANDSHAKE_NO_SSL_SUPPORT"; err.fatal = true; this.emit("error", err); return false; } this.clientFlags |= ClientConstants.SSL; this.sendSSLRequest(connection); connection.startTLS((err) => { if (err) { err.code = "HANDSHAKE_SSL_ERROR"; err.fatal = true; this.emit("error", err); return; } this.sendCredentials(connection); }); } else { this.sendCredentials(connection); } if (multiFactorAuthentication) { this.authenticationFactor = 1; } return ClientHandshake.prototype.handshakeResult; } handshakeResult(packet, connection) { const marker = packet.peekByte(); if (marker === 254 || marker === 1 || marker === 2) { const authSwitch = require_auth_switch2(); try { if (marker === 1) { authSwitch.authSwitchRequestMoreData(packet, connection, this); } else { if (this.authenticationFactor !== 0) { connection.config.password = this[`password${this.authenticationFactor}`]; this.authenticationFactor += 1; } authSwitch.authSwitchRequest(packet, connection, this); } return ClientHandshake.prototype.handshakeResult; } catch (err) { err.code = "AUTH_SWITCH_PLUGIN_ERROR"; err.fatal = true; if (this.onResult) { this.onResult(err); } else { this.emit("error", err); } return null; } } if (marker !== 0) { const err = new Error("Unexpected packet during handshake phase"); err.code = "HANDSHAKE_UNKNOWN_ERROR"; err.fatal = true; if (this.onResult) { this.onResult(err); } else { this.emit("error", err); } return null; } if (!connection.authorized) { connection.authorized = true; if (connection.config.compress) { const enableCompression = require_compressed_protocol2().enableCompression; enableCompression(connection); } } if (this.onResult) { this.onResult(null); } return null; } }; module2.exports = ClientHandshake; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/server_handshake.js var require_server_handshake2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/server_handshake.js"(exports, module2) { "use strict"; var CommandCode = require_commands3(); var Errors = require_errors4(); var Command = require_command2(); var Packets = require_packets2(); var ServerHandshake = class extends Command { constructor(args) { super(); this.args = args; } start(packet, connection) { const serverHelloPacket = new Packets.Handshake(this.args); this.serverHello = serverHelloPacket; serverHelloPacket.setScrambleData((err) => { if (err) { connection.emit("error", new Error("Error generating random bytes")); return; } connection.writePacket(serverHelloPacket.toPacket(0)); }); return ServerHandshake.prototype.readClientReply; } readClientReply(packet, connection) { const clientHelloReply = Packets.HandshakeResponse.fromPacket(packet); connection.clientHelloReply = clientHelloReply; if (this.args.authCallback) { this.args.authCallback( { user: clientHelloReply.user, database: clientHelloReply.database, address: connection.stream.remoteAddress, authPluginData1: this.serverHello.authPluginData1, authPluginData2: this.serverHello.authPluginData2, authToken: clientHelloReply.authToken }, (err, mysqlError) => { if (!mysqlError) { connection.writeOk(); } else { connection.writeError({ message: mysqlError.message || "", code: mysqlError.code || 1045 }); connection.close(); } } ); } else { connection.writeOk(); } return ServerHandshake.prototype.dispatchCommands; } _isStatement(query, name) { const firstWord = query.split(" ")[0].toUpperCase(); return firstWord === name; } dispatchCommands(packet, connection) { let knownCommand = true; const encoding = connection.clientHelloReply.encoding; const commandCode = packet.readInt8(); switch (commandCode) { case CommandCode.STMT_PREPARE: if (connection.listeners("stmt_prepare").length) { const query = packet.readString(void 0, encoding); connection.emit("stmt_prepare", query); } else { connection.writeError({ code: Errors.HA_ERR_INTERNAL_ERROR, message: "No query handler for prepared statements." }); } break; case CommandCode.STMT_EXECUTE: if (connection.listeners("stmt_execute").length) { const { stmtId, flags, iterationCount, values } = Packets.Execute.fromPacket(packet, encoding); connection.emit("stmt_execute", stmtId, flags, iterationCount, values); } else { connection.writeError({ code: Errors.HA_ERR_INTERNAL_ERROR, message: "No query handler for execute statements." }); } break; case CommandCode.QUIT: if (connection.listeners("quit").length) { connection.emit("quit"); } else { connection.stream.end(); } break; case CommandCode.INIT_DB: if (connection.listeners("init_db").length) { const schemaName = packet.readString(void 0, encoding); connection.emit("init_db", schemaName); } else { connection.writeOk(); } break; case CommandCode.QUERY: if (connection.listeners("query").length) { const query = packet.readString(void 0, encoding); if (this._isStatement(query, "PREPARE") || this._isStatement(query, "SET")) { connection.emit("stmt_prepare", query); } else if (this._isStatement(query, "EXECUTE")) { connection.emit("stmt_execute", null, null, null, null, query); } else connection.emit("query", query); } else { connection.writeError({ code: Errors.HA_ERR_INTERNAL_ERROR, message: "No query handler" }); } break; case CommandCode.FIELD_LIST: if (connection.listeners("field_list").length) { const table = packet.readNullTerminatedString(); const fields = packet.readString(void 0, encoding); connection.emit("field_list", table, fields); } else { connection.writeError({ code: Errors.ER_WARN_DEPRECATED_SYNTAX, message: "As of MySQL 5.7.11, COM_FIELD_LIST is deprecated and will be removed in a future version of MySQL." }); } break; case CommandCode.PING: if (connection.listeners("ping").length) { connection.emit("ping"); } else { connection.writeOk(); } break; default: knownCommand = false; } if (connection.listeners("packet").length) { connection.emit("packet", packet.clone(), knownCommand, commandCode); } else if (!knownCommand) { console.log("Unknown command:", commandCode); } return ServerHandshake.prototype.dispatchCommands; } }; module2.exports = ServerHandshake; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/charsets.js var require_charsets2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/charsets.js"(exports) { "use strict"; exports.BIG5_CHINESE_CI = 1; exports.LATIN2_CZECH_CS = 2; exports.DEC8_SWEDISH_CI = 3; exports.CP850_GENERAL_CI = 4; exports.LATIN1_GERMAN1_CI = 5; exports.HP8_ENGLISH_CI = 6; exports.KOI8R_GENERAL_CI = 7; exports.LATIN1_SWEDISH_CI = 8; exports.LATIN2_GENERAL_CI = 9; exports.SWE7_SWEDISH_CI = 10; exports.ASCII_GENERAL_CI = 11; exports.UJIS_JAPANESE_CI = 12; exports.SJIS_JAPANESE_CI = 13; exports.CP1251_BULGARIAN_CI = 14; exports.LATIN1_DANISH_CI = 15; exports.HEBREW_GENERAL_CI = 16; exports.TIS620_THAI_CI = 18; exports.EUCKR_KOREAN_CI = 19; exports.LATIN7_ESTONIAN_CS = 20; exports.LATIN2_HUNGARIAN_CI = 21; exports.KOI8U_GENERAL_CI = 22; exports.CP1251_UKRAINIAN_CI = 23; exports.GB2312_CHINESE_CI = 24; exports.GREEK_GENERAL_CI = 25; exports.CP1250_GENERAL_CI = 26; exports.LATIN2_CROATIAN_CI = 27; exports.GBK_CHINESE_CI = 28; exports.CP1257_LITHUANIAN_CI = 29; exports.LATIN5_TURKISH_CI = 30; exports.LATIN1_GERMAN2_CI = 31; exports.ARMSCII8_GENERAL_CI = 32; exports.UTF8_GENERAL_CI = 33; exports.CP1250_CZECH_CS = 34; exports.UCS2_GENERAL_CI = 35; exports.CP866_GENERAL_CI = 36; exports.KEYBCS2_GENERAL_CI = 37; exports.MACCE_GENERAL_CI = 38; exports.MACROMAN_GENERAL_CI = 39; exports.CP852_GENERAL_CI = 40; exports.LATIN7_GENERAL_CI = 41; exports.LATIN7_GENERAL_CS = 42; exports.MACCE_BIN = 43; exports.CP1250_CROATIAN_CI = 44; exports.UTF8MB4_GENERAL_CI = 45; exports.UTF8MB4_BIN = 46; exports.LATIN1_BIN = 47; exports.LATIN1_GENERAL_CI = 48; exports.LATIN1_GENERAL_CS = 49; exports.CP1251_BIN = 50; exports.CP1251_GENERAL_CI = 51; exports.CP1251_GENERAL_CS = 52; exports.MACROMAN_BIN = 53; exports.UTF16_GENERAL_CI = 54; exports.UTF16_BIN = 55; exports.UTF16LE_GENERAL_CI = 56; exports.CP1256_GENERAL_CI = 57; exports.CP1257_BIN = 58; exports.CP1257_GENERAL_CI = 59; exports.UTF32_GENERAL_CI = 60; exports.UTF32_BIN = 61; exports.UTF16LE_BIN = 62; exports.BINARY = 63; exports.ARMSCII8_BIN = 64; exports.ASCII_BIN = 65; exports.CP1250_BIN = 66; exports.CP1256_BIN = 67; exports.CP866_BIN = 68; exports.DEC8_BIN = 69; exports.GREEK_BIN = 70; exports.HEBREW_BIN = 71; exports.HP8_BIN = 72; exports.KEYBCS2_BIN = 73; exports.KOI8R_BIN = 74; exports.KOI8U_BIN = 75; exports.UTF8_TOLOWER_CI = 76; exports.LATIN2_BIN = 77; exports.LATIN5_BIN = 78; exports.LATIN7_BIN = 79; exports.CP850_BIN = 80; exports.CP852_BIN = 81; exports.SWE7_BIN = 82; exports.UTF8_BIN = 83; exports.BIG5_BIN = 84; exports.EUCKR_BIN = 85; exports.GB2312_BIN = 86; exports.GBK_BIN = 87; exports.SJIS_BIN = 88; exports.TIS620_BIN = 89; exports.UCS2_BIN = 90; exports.UJIS_BIN = 91; exports.GEOSTD8_GENERAL_CI = 92; exports.GEOSTD8_BIN = 93; exports.LATIN1_SPANISH_CI = 94; exports.CP932_JAPANESE_CI = 95; exports.CP932_BIN = 96; exports.EUCJPMS_JAPANESE_CI = 97; exports.EUCJPMS_BIN = 98; exports.CP1250_POLISH_CI = 99; exports.UTF16_UNICODE_CI = 101; exports.UTF16_ICELANDIC_CI = 102; exports.UTF16_LATVIAN_CI = 103; exports.UTF16_ROMANIAN_CI = 104; exports.UTF16_SLOVENIAN_CI = 105; exports.UTF16_POLISH_CI = 106; exports.UTF16_ESTONIAN_CI = 107; exports.UTF16_SPANISH_CI = 108; exports.UTF16_SWEDISH_CI = 109; exports.UTF16_TURKISH_CI = 110; exports.UTF16_CZECH_CI = 111; exports.UTF16_DANISH_CI = 112; exports.UTF16_LITHUANIAN_CI = 113; exports.UTF16_SLOVAK_CI = 114; exports.UTF16_SPANISH2_CI = 115; exports.UTF16_ROMAN_CI = 116; exports.UTF16_PERSIAN_CI = 117; exports.UTF16_ESPERANTO_CI = 118; exports.UTF16_HUNGARIAN_CI = 119; exports.UTF16_SINHALA_CI = 120; exports.UTF16_GERMAN2_CI = 121; exports.UTF16_CROATIAN_CI = 122; exports.UTF16_UNICODE_520_CI = 123; exports.UTF16_VIETNAMESE_CI = 124; exports.UCS2_UNICODE_CI = 128; exports.UCS2_ICELANDIC_CI = 129; exports.UCS2_LATVIAN_CI = 130; exports.UCS2_ROMANIAN_CI = 131; exports.UCS2_SLOVENIAN_CI = 132; exports.UCS2_POLISH_CI = 133; exports.UCS2_ESTONIAN_CI = 134; exports.UCS2_SPANISH_CI = 135; exports.UCS2_SWEDISH_CI = 136; exports.UCS2_TURKISH_CI = 137; exports.UCS2_CZECH_CI = 138; exports.UCS2_DANISH_CI = 139; exports.UCS2_LITHUANIAN_CI = 140; exports.UCS2_SLOVAK_CI = 141; exports.UCS2_SPANISH2_CI = 142; exports.UCS2_ROMAN_CI = 143; exports.UCS2_PERSIAN_CI = 144; exports.UCS2_ESPERANTO_CI = 145; exports.UCS2_HUNGARIAN_CI = 146; exports.UCS2_SINHALA_CI = 147; exports.UCS2_GERMAN2_CI = 148; exports.UCS2_CROATIAN_CI = 149; exports.UCS2_UNICODE_520_CI = 150; exports.UCS2_VIETNAMESE_CI = 151; exports.UCS2_GENERAL_MYSQL500_CI = 159; exports.UTF32_UNICODE_CI = 160; exports.UTF32_ICELANDIC_CI = 161; exports.UTF32_LATVIAN_CI = 162; exports.UTF32_ROMANIAN_CI = 163; exports.UTF32_SLOVENIAN_CI = 164; exports.UTF32_POLISH_CI = 165; exports.UTF32_ESTONIAN_CI = 166; exports.UTF32_SPANISH_CI = 167; exports.UTF32_SWEDISH_CI = 168; exports.UTF32_TURKISH_CI = 169; exports.UTF32_CZECH_CI = 170; exports.UTF32_DANISH_CI = 171; exports.UTF32_LITHUANIAN_CI = 172; exports.UTF32_SLOVAK_CI = 173; exports.UTF32_SPANISH2_CI = 174; exports.UTF32_ROMAN_CI = 175; exports.UTF32_PERSIAN_CI = 176; exports.UTF32_ESPERANTO_CI = 177; exports.UTF32_HUNGARIAN_CI = 178; exports.UTF32_SINHALA_CI = 179; exports.UTF32_GERMAN2_CI = 180; exports.UTF32_CROATIAN_CI = 181; exports.UTF32_UNICODE_520_CI = 182; exports.UTF32_VIETNAMESE_CI = 183; exports.UTF8_UNICODE_CI = 192; exports.UTF8_ICELANDIC_CI = 193; exports.UTF8_LATVIAN_CI = 194; exports.UTF8_ROMANIAN_CI = 195; exports.UTF8_SLOVENIAN_CI = 196; exports.UTF8_POLISH_CI = 197; exports.UTF8_ESTONIAN_CI = 198; exports.UTF8_SPANISH_CI = 199; exports.UTF8_SWEDISH_CI = 200; exports.UTF8_TURKISH_CI = 201; exports.UTF8_CZECH_CI = 202; exports.UTF8_DANISH_CI = 203; exports.UTF8_LITHUANIAN_CI = 204; exports.UTF8_SLOVAK_CI = 205; exports.UTF8_SPANISH2_CI = 206; exports.UTF8_ROMAN_CI = 207; exports.UTF8_PERSIAN_CI = 208; exports.UTF8_ESPERANTO_CI = 209; exports.UTF8_HUNGARIAN_CI = 210; exports.UTF8_SINHALA_CI = 211; exports.UTF8_GERMAN2_CI = 212; exports.UTF8_CROATIAN_CI = 213; exports.UTF8_UNICODE_520_CI = 214; exports.UTF8_VIETNAMESE_CI = 215; exports.UTF8_GENERAL_MYSQL500_CI = 223; exports.UTF8MB4_UNICODE_CI = 224; exports.UTF8MB4_ICELANDIC_CI = 225; exports.UTF8MB4_LATVIAN_CI = 226; exports.UTF8MB4_ROMANIAN_CI = 227; exports.UTF8MB4_SLOVENIAN_CI = 228; exports.UTF8MB4_POLISH_CI = 229; exports.UTF8MB4_ESTONIAN_CI = 230; exports.UTF8MB4_SPANISH_CI = 231; exports.UTF8MB4_SWEDISH_CI = 232; exports.UTF8MB4_TURKISH_CI = 233; exports.UTF8MB4_CZECH_CI = 234; exports.UTF8MB4_DANISH_CI = 235; exports.UTF8MB4_LITHUANIAN_CI = 236; exports.UTF8MB4_SLOVAK_CI = 237; exports.UTF8MB4_SPANISH2_CI = 238; exports.UTF8MB4_ROMAN_CI = 239; exports.UTF8MB4_PERSIAN_CI = 240; exports.UTF8MB4_ESPERANTO_CI = 241; exports.UTF8MB4_HUNGARIAN_CI = 242; exports.UTF8MB4_SINHALA_CI = 243; exports.UTF8MB4_GERMAN2_CI = 244; exports.UTF8MB4_CROATIAN_CI = 245; exports.UTF8MB4_UNICODE_520_CI = 246; exports.UTF8MB4_VIETNAMESE_CI = 247; exports.GB18030_CHINESE_CI = 248; exports.GB18030_BIN = 249; exports.GB18030_UNICODE_520_CI = 250; exports.UTF8_GENERAL50_CI = 253; exports.UTF8MB4_0900_AI_CI = 255; exports.UTF8MB4_DE_PB_0900_AI_CI = 256; exports.UTF8MB4_IS_0900_AI_CI = 257; exports.UTF8MB4_LV_0900_AI_CI = 258; exports.UTF8MB4_RO_0900_AI_CI = 259; exports.UTF8MB4_SL_0900_AI_CI = 260; exports.UTF8MB4_PL_0900_AI_CI = 261; exports.UTF8MB4_ET_0900_AI_CI = 262; exports.UTF8MB4_ES_0900_AI_CI = 263; exports.UTF8MB4_SV_0900_AI_CI = 264; exports.UTF8MB4_TR_0900_AI_CI = 265; exports.UTF8MB4_CS_0900_AI_CI = 266; exports.UTF8MB4_DA_0900_AI_CI = 267; exports.UTF8MB4_LT_0900_AI_CI = 268; exports.UTF8MB4_SK_0900_AI_CI = 269; exports.UTF8MB4_ES_TRAD_0900_AI_CI = 270; exports.UTF8MB4_LA_0900_AI_CI = 271; exports.UTF8MB4_EO_0900_AI_CI = 273; exports.UTF8MB4_HU_0900_AI_CI = 274; exports.UTF8MB4_HR_0900_AI_CI = 275; exports.UTF8MB4_VI_0900_AI_CI = 277; exports.UTF8MB4_0900_AS_CS = 278; exports.UTF8MB4_DE_PB_0900_AS_CS = 279; exports.UTF8MB4_IS_0900_AS_CS = 280; exports.UTF8MB4_LV_0900_AS_CS = 281; exports.UTF8MB4_RO_0900_AS_CS = 282; exports.UTF8MB4_SL_0900_AS_CS = 283; exports.UTF8MB4_PL_0900_AS_CS = 284; exports.UTF8MB4_ET_0900_AS_CS = 285; exports.UTF8MB4_ES_0900_AS_CS = 286; exports.UTF8MB4_SV_0900_AS_CS = 287; exports.UTF8MB4_TR_0900_AS_CS = 288; exports.UTF8MB4_CS_0900_AS_CS = 289; exports.UTF8MB4_DA_0900_AS_CS = 290; exports.UTF8MB4_LT_0900_AS_CS = 291; exports.UTF8MB4_SK_0900_AS_CS = 292; exports.UTF8MB4_ES_TRAD_0900_AS_CS = 293; exports.UTF8MB4_LA_0900_AS_CS = 294; exports.UTF8MB4_EO_0900_AS_CS = 296; exports.UTF8MB4_HU_0900_AS_CS = 297; exports.UTF8MB4_HR_0900_AS_CS = 298; exports.UTF8MB4_VI_0900_AS_CS = 300; exports.UTF8MB4_JA_0900_AS_CS = 303; exports.UTF8MB4_JA_0900_AS_CS_KS = 304; exports.UTF8MB4_0900_AS_CI = 305; exports.UTF8MB4_RU_0900_AI_CI = 306; exports.UTF8MB4_RU_0900_AS_CS = 307; exports.UTF8MB4_ZH_0900_AS_CS = 308; exports.UTF8MB4_0900_BIN = 309; exports.BIG5 = exports.BIG5_CHINESE_CI; exports.DEC8 = exports.DEC8_SWEDISH_CI; exports.CP850 = exports.CP850_GENERAL_CI; exports.HP8 = exports.HP8_ENGLISH_CI; exports.KOI8R = exports.KOI8R_GENERAL_CI; exports.LATIN1 = exports.LATIN1_SWEDISH_CI; exports.LATIN2 = exports.LATIN2_GENERAL_CI; exports.SWE7 = exports.SWE7_SWEDISH_CI; exports.ASCII = exports.ASCII_GENERAL_CI; exports.UJIS = exports.UJIS_JAPANESE_CI; exports.SJIS = exports.SJIS_JAPANESE_CI; exports.HEBREW = exports.HEBREW_GENERAL_CI; exports.TIS620 = exports.TIS620_THAI_CI; exports.EUCKR = exports.EUCKR_KOREAN_CI; exports.KOI8U = exports.KOI8U_GENERAL_CI; exports.GB2312 = exports.GB2312_CHINESE_CI; exports.GREEK = exports.GREEK_GENERAL_CI; exports.CP1250 = exports.CP1250_GENERAL_CI; exports.GBK = exports.GBK_CHINESE_CI; exports.LATIN5 = exports.LATIN5_TURKISH_CI; exports.ARMSCII8 = exports.ARMSCII8_GENERAL_CI; exports.UTF8 = exports.UTF8_GENERAL_CI; exports.UCS2 = exports.UCS2_GENERAL_CI; exports.CP866 = exports.CP866_GENERAL_CI; exports.KEYBCS2 = exports.KEYBCS2_GENERAL_CI; exports.MACCE = exports.MACCE_GENERAL_CI; exports.MACROMAN = exports.MACROMAN_GENERAL_CI; exports.CP852 = exports.CP852_GENERAL_CI; exports.LATIN7 = exports.LATIN7_GENERAL_CI; exports.UTF8MB4 = exports.UTF8MB4_GENERAL_CI; exports.CP1251 = exports.CP1251_GENERAL_CI; exports.UTF16 = exports.UTF16_GENERAL_CI; exports.UTF16LE = exports.UTF16LE_GENERAL_CI; exports.CP1256 = exports.CP1256_GENERAL_CI; exports.CP1257 = exports.CP1257_GENERAL_CI; exports.UTF32 = exports.UTF32_GENERAL_CI; exports.CP932 = exports.CP932_JAPANESE_CI; exports.EUCJPMS = exports.EUCJPMS_JAPANESE_CI; exports.GB18030 = exports.GB18030_CHINESE_CI; exports.GEOSTD8 = exports.GEOSTD8_GENERAL_CI; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/helpers.js var require_helpers2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/helpers.js"(exports) { "use strict"; function srcEscape(str) { return JSON.stringify({ [str]: 1 }).slice(1, -3); } exports.srcEscape = srcEscape; var highlightFn; var cardinalRecommended = false; try { const REQUIRE_TERMINATOR = ""; highlightFn = require(`cardinal${REQUIRE_TERMINATOR}`).highlight; } catch (err) { highlightFn = (text) => { if (!cardinalRecommended) { console.log("For nicer debug output consider install cardinal@^2.0.0"); cardinalRecommended = true; } return text; }; } function printDebugWithCode(msg, code) { console.log(` ${msg}: `); console.log(`${highlightFn(code)} `); } exports.printDebugWithCode = printDebugWithCode; function typeMatch(type, list, Types) { if (Array.isArray(list)) { return list.some((t2) => type === Types[t2]); } return !!list; } exports.typeMatch = typeMatch; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/parser_cache.js var require_parser_cache2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/parser_cache.js"(exports, module2) { "use strict"; var LRU = require_lru_cache2(); var parserCache = new LRU({ max: 15e3 }); function keyFromFields(type, fields, options, config4) { let res = `${type}/${typeof options.nestTables}/${options.nestTables}/${options.rowsAsArray}/${options.supportBigNumbers || config4.supportBigNumbers}/${options.bigNumberStrings || config4.bigNumberStrings}/${typeof options.typeCast}/${options.timezone || config4.timezone}/${options.decimalNumbers}/${options.dateStrings}`; for (let i2 = 0; i2 < fields.length; ++i2) { const field = fields[i2]; res += `/${field.name}:${field.columnType}:${field.length}:${field.schema}:${field.table}:${field.flags}:${field.characterSet}`; } return res; } function getParser(type, fields, options, config4, compiler) { const key = keyFromFields(type, fields, options, config4); let parser = parserCache.get(key); if (parser) { return parser; } parser = compiler(fields, options, config4); parserCache.set(key, parser); return parser; } function setMaxCache(max) { parserCache.max = max; } function clearCache() { parserCache.clear(); } module2.exports = { getParser, setMaxCache, clearCache }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/text_parser.js var require_text_parser2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/text_parser.js"(exports, module2) { "use strict"; var Types = require_types2(); var Charsets = require_charsets2(); var helpers = require_helpers2(); var genFunc = require_generate_function(); var parserCache = require_parser_cache2(); var typeNames = []; for (const t2 in Types) { typeNames[Types[t2]] = t2; } function readCodeFor(type, charset, encodingExpr, config4, options) { const supportBigNumbers = options.supportBigNumbers || config4.supportBigNumbers; const bigNumberStrings = options.bigNumberStrings || config4.bigNumberStrings; const timezone = options.timezone || config4.timezone; const dateStrings = options.dateStrings || config4.dateStrings; switch (type) { case Types.TINY: case Types.SHORT: case Types.LONG: case Types.INT24: case Types.YEAR: return "packet.parseLengthCodedIntNoBigCheck()"; case Types.LONGLONG: if (supportBigNumbers && bigNumberStrings) { return "packet.parseLengthCodedIntString()"; } return `packet.parseLengthCodedInt(${supportBigNumbers})`; case Types.FLOAT: case Types.DOUBLE: return "packet.parseLengthCodedFloat()"; case Types.NULL: return "packet.readLengthCodedNumber()"; case Types.DECIMAL: case Types.NEWDECIMAL: if (config4.decimalNumbers) { return "packet.parseLengthCodedFloat()"; } return 'packet.readLengthCodedString("ascii")'; case Types.DATE: if (helpers.typeMatch(type, dateStrings, Types)) { return 'packet.readLengthCodedString("ascii")'; } return `packet.parseDate('${timezone}')`; case Types.DATETIME: case Types.TIMESTAMP: if (helpers.typeMatch(type, dateStrings, Types)) { return 'packet.readLengthCodedString("ascii")'; } return `packet.parseDateTime('${timezone}')`; case Types.TIME: return 'packet.readLengthCodedString("ascii")'; case Types.GEOMETRY: return "packet.parseGeometryValue()"; case Types.JSON: return 'JSON.parse(packet.readLengthCodedString("utf8"))'; default: if (charset === Charsets.BINARY) { return "packet.readLengthCodedBuffer()"; } return `packet.readLengthCodedString(${encodingExpr})`; } } function compile(fields, options, config4) { if (typeof config4.typeCast === "function" && typeof options.typeCast !== "function") { options.typeCast = config4.typeCast; } function wrap(field, _this) { return { type: typeNames[field.columnType], length: field.columnLength, db: field.schema, table: field.table, name: field.name, string: function(encoding = field.encoding) { if (field.columnType === Types.JSON && encoding === field.encoding) { console.warn(`typeCast: JSON column "${field.name}" is interpreted as BINARY by default, recommended to manually set utf8 encoding: \`field.string("utf8")\``); } return _this.packet.readLengthCodedString(encoding); }, buffer: function() { return _this.packet.readLengthCodedBuffer(); }, geometry: function() { return _this.packet.parseGeometryValue(); } }; } const parserFn = genFunc(); parserFn("(function () {")( "return class TextRow {" ); parserFn("constructor(fields) {"); if (typeof options.typeCast === "function") { parserFn("const _this = this;"); parserFn("for(let i=0; i { this.onResult(null, rows, fields); }); } else { process2.nextTick(() => { this.onResult(null, rows); }); } } return null; } doneInsert(rs) { if (this._localStreamError) { if (this.onResult) { this.onResult(this._localStreamError, rs); } else { this.emit("error", this._localStreamError); } return null; } this._rows.push(rs); this._fields.push(void 0); this.emit("fields", void 0); this.emit("result", rs); if (rs.serverStatus & ServerStatus.SERVER_MORE_RESULTS_EXISTS) { this._resultIndex++; return this.resultsetHeader; } return this.done(); } resultsetHeader(packet, connection) { const rs = new Packets.ResultSetHeader(packet, connection); this._fieldCount = rs.fieldCount; if (connection.config.debug) { console.log( ` Resultset header received, expecting ${rs.fieldCount} column definition packets` ); } if (this._fieldCount === 0) { return this.doneInsert(rs); } if (this._fieldCount === null) { return this._streamLocalInfile(connection, rs.infileName); } this._receivedFieldsCount = 0; this._rows.push([]); this._fields.push([]); return this.readField; } _streamLocalInfile(connection, path5) { if (this._streamFactory) { this._localStream = this._streamFactory(path5); } else { this._localStreamError = new Error( `As a result of LOCAL INFILE command server wants to read ${path5} file, but as of v2.0 you must provide streamFactory option returning ReadStream.` ); connection.writePacket(EmptyPacket); return this.infileOk; } const onConnectionError = () => { this._unpipeStream(); }; const onDrain = () => { this._localStream.resume(); }; const onPause = () => { this._localStream.pause(); }; const onData = function(data) { const dataWithHeader = Buffer.allocUnsafe(data.length + 4); data.copy(dataWithHeader, 4); connection.writePacket( new Packets.Packet(0, dataWithHeader, 0, dataWithHeader.length) ); }; const onEnd = () => { connection.removeListener("error", onConnectionError); connection.writePacket(EmptyPacket); }; const onError = (err) => { this._localStreamError = err; connection.removeListener("error", onConnectionError); connection.writePacket(EmptyPacket); }; this._unpipeStream = () => { connection.stream.removeListener("pause", onPause); connection.stream.removeListener("drain", onDrain); this._localStream.removeListener("data", onData); this._localStream.removeListener("end", onEnd); this._localStream.removeListener("error", onError); }; connection.stream.on("pause", onPause); connection.stream.on("drain", onDrain); this._localStream.on("data", onData); this._localStream.on("end", onEnd); this._localStream.on("error", onError); connection.once("error", onConnectionError); return this.infileOk; } readField(packet, connection) { this._receivedFieldsCount++; if (this._fields[this._resultIndex].length !== this._fieldCount) { const field = new Packets.ColumnDefinition( packet, connection.clientEncoding ); this._fields[this._resultIndex].push(field); if (connection.config.debug) { console.log(" Column definition:"); console.log(` name: ${field.name}`); console.log(` type: ${field.columnType}`); console.log(` flags: ${field.flags}`); } } if (this._receivedFieldsCount === this._fieldCount) { const fields = this._fields[this._resultIndex]; this.emit("fields", fields); this._rowParser = new (getTextParser(fields, this.options, connection.config))(fields); return Query.prototype.fieldsEOF; } return Query.prototype.readField; } fieldsEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet"); } return this.row; } row(packet, _connection) { if (packet.isEOF()) { const status = packet.eofStatusFlags(); const moreResults = status & ServerStatus.SERVER_MORE_RESULTS_EXISTS; if (moreResults) { this._resultIndex++; return Query.prototype.resultsetHeader; } return this.done(); } let row; try { row = this._rowParser.next( packet, this._fields[this._resultIndex], this.options ); } catch (err) { this._localStreamError = err; return this.doneInsert(null); } if (this.onResult) { this._rows[this._resultIndex].push(row); } else { this.emit("result", row); } return Query.prototype.row; } infileOk(packet, connection) { const rs = new Packets.ResultSetHeader(packet, connection); return this.doneInsert(rs); } stream(options) { options = options || {}; options.objectMode = true; const stream = new Readable(options); stream._read = () => { this._connection && this._connection.resume(); }; this.on("result", (row) => { if (!stream.push(row)) { this._connection.pause(); } stream.emit("result", row); }); this.on("error", (err) => { stream.emit("error", err); }); this.on("end", () => { stream.push(null); stream.emit("close"); }); this.on("fields", (fields) => { stream.emit("fields", fields); }); return stream; } _setTimeout() { if (this.timeout) { const timeoutHandler = this._handleTimeoutError.bind(this); this.queryTimeout = Timers.setTimeout( timeoutHandler, this.timeout ); } } _handleTimeoutError() { if (this.queryTimeout) { Timers.clearTimeout(this.queryTimeout); this.queryTimeout = null; } const err = new Error("Query inactivity timeout"); err.errorno = "PROTOCOL_SEQUENCE_TIMEOUT"; err.code = "PROTOCOL_SEQUENCE_TIMEOUT"; err.syscall = "query"; if (this.onResult) { this.onResult(err); } else { this.emit("error", err); } } }; Query.prototype.catch = Query.prototype.then; module2.exports = Query; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/close_statement.js var require_close_statement4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/close_statement.js"(exports, module2) { "use strict"; var Command = require_command2(); var Packets = require_packets2(); var CloseStatement = class extends Command { constructor(id) { super(); this.id = id; } start(packet, connection) { connection.writePacket(new Packets.CloseStatement(this.id).toPacket(1)); return null; } }; module2.exports = CloseStatement; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/field_flags.js var require_field_flags2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/field_flags.js"(exports) { "use strict"; exports.NOT_NULL = 1; exports.PRI_KEY = 2; exports.UNIQUE_KEY = 4; exports.MULTIPLE_KEY = 8; exports.BLOB = 16; exports.UNSIGNED = 32; exports.ZEROFILL = 64; exports.BINARY = 128; exports.ENUM = 256; exports.AUTO_INCREMENT = 512; exports.TIMESTAMP = 1024; exports.SET = 2048; exports.NO_DEFAULT_VALUE = 4096; exports.ON_UPDATE_NOW = 8192; exports.NUM = 32768; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/binary_parser.js var require_binary_parser2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/parsers/binary_parser.js"(exports, module2) { "use strict"; var FieldFlags = require_field_flags2(); var Charsets = require_charsets2(); var Types = require_types2(); var helpers = require_helpers2(); var genFunc = require_generate_function(); var parserCache = require_parser_cache2(); var typeNames = []; for (const t2 in Types) { typeNames[Types[t2]] = t2; } function readCodeFor(field, config4, options, fieldNum) { const supportBigNumbers = options.supportBigNumbers || config4.supportBigNumbers; const bigNumberStrings = options.bigNumberStrings || config4.bigNumberStrings; const timezone = options.timezone || config4.timezone; const dateStrings = options.dateStrings || config4.dateStrings; const unsigned = field.flags & FieldFlags.UNSIGNED; switch (field.columnType) { case Types.TINY: return unsigned ? "packet.readInt8();" : "packet.readSInt8();"; case Types.SHORT: return unsigned ? "packet.readInt16();" : "packet.readSInt16();"; case Types.LONG: case Types.INT24: return unsigned ? "packet.readInt32();" : "packet.readSInt32();"; case Types.YEAR: return "packet.readInt16()"; case Types.FLOAT: return "packet.readFloat();"; case Types.DOUBLE: return "packet.readDouble();"; case Types.NULL: return "null;"; case Types.DATE: case Types.DATETIME: case Types.TIMESTAMP: case Types.NEWDATE: if (helpers.typeMatch(field.columnType, dateStrings, Types)) { return `packet.readDateTimeString(${field.decimals});`; } return `packet.readDateTime('${timezone}');`; case Types.TIME: return "packet.readTimeString()"; case Types.DECIMAL: case Types.NEWDECIMAL: if (config4.decimalNumbers) { return "packet.parseLengthCodedFloat();"; } return 'packet.readLengthCodedString("ascii");'; case Types.GEOMETRY: return "packet.parseGeometryValue();"; case Types.JSON: return 'JSON.parse(packet.readLengthCodedString("utf8"));'; case Types.LONGLONG: if (!supportBigNumbers) { return unsigned ? "packet.readInt64JSNumber();" : "packet.readSInt64JSNumber();"; } if (bigNumberStrings) { return unsigned ? "packet.readInt64String();" : "packet.readSInt64String();"; } return unsigned ? "packet.readInt64();" : "packet.readSInt64();"; default: if (field.characterSet === Charsets.BINARY) { return "packet.readLengthCodedBuffer();"; } return `packet.readLengthCodedString(fields[${fieldNum}].encoding)`; } } function compile(fields, options, config4) { const parserFn = genFunc(); let i2 = 0; const nullBitmapLength = Math.floor((fields.length + 7 + 2) / 8); parserFn("(function(){"); parserFn("return class BinaryRow {"); parserFn("constructor() {"); parserFn("}"); parserFn("next(packet, fields, options) {"); if (options.rowsAsArray) { parserFn(`const result = new Array(${fields.length});`); } else { parserFn("const result = {};"); } const resultTables = {}; let resultTablesArray = []; if (options.nestTables === true) { for (i2 = 0; i2 < fields.length; i2++) { resultTables[fields[i2].table] = 1; } resultTablesArray = Object.keys(resultTables); for (i2 = 0; i2 < resultTablesArray.length; i2++) { parserFn(`result[${helpers.srcEscape(resultTablesArray[i2])}] = {};`); } } parserFn("packet.readInt8();"); for (i2 = 0; i2 < nullBitmapLength; ++i2) { parserFn(`const nullBitmaskByte${i2} = packet.readInt8();`); } let lvalue = ""; let currentFieldNullBit = 4; let nullByteIndex = 0; let fieldName = ""; let tableName = ""; for (i2 = 0; i2 < fields.length; i2++) { fieldName = helpers.srcEscape(fields[i2].name); parserFn(`// ${fieldName}: ${typeNames[fields[i2].columnType]}`); if (typeof options.nestTables === "string") { tableName = helpers.srcEscape(fields[i2].table); lvalue = `result[${helpers.srcEscape( fields[i2].table + options.nestTables + fields[i2].name )}]`; } else if (options.nestTables === true) { tableName = helpers.srcEscape(fields[i2].table); lvalue = `result[${tableName}][${fieldName}]`; } else if (options.rowsAsArray) { lvalue = `result[${i2.toString(10)}]`; } else { lvalue = `result[${helpers.srcEscape(fields[i2].name)}]`; } parserFn(`if (nullBitmaskByte${nullByteIndex} & ${currentFieldNullBit})`); parserFn(`${lvalue} = null;`); parserFn("else"); parserFn(`${lvalue} = ${readCodeFor(fields[i2], config4, options, i2)}`); currentFieldNullBit *= 2; if (currentFieldNullBit === 256) { currentFieldNullBit = 1; nullByteIndex++; } } parserFn("return result;"); parserFn("}"); parserFn("};")("})()"); if (config4.debug) { helpers.printDebugWithCode( "Compiled binary protocol row parser", parserFn.toString() ); } return parserFn.toFunction(); } function getBinaryParser(fields, options, config4) { return parserCache.getParser("binary", fields, options, config4, compile); } module2.exports = getBinaryParser; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/execute.js var require_execute4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/execute.js"(exports, module2) { "use strict"; var Command = require_command2(); var Query = require_query4(); var Packets = require_packets2(); var getBinaryParser = require_binary_parser2(); var Execute = class extends Command { constructor(options, callback) { super(); this.statement = options.statement; this.sql = options.sql; this.values = options.values; this.onResult = callback; this.parameters = options.values; this.insertId = 0; this.timeout = options.timeout; this.queryTimeout = null; this._rows = []; this._fields = []; this._result = []; this._fieldCount = 0; this._rowParser = null; this._executeOptions = options; this._resultIndex = 0; this._localStream = null; this._unpipeStream = function() { }; this._streamFactory = options.infileStreamFactory; this._connection = null; } buildParserFromFields(fields, connection) { return getBinaryParser(fields, this.options, connection.config); } start(packet, connection) { this._connection = connection; this.options = Object.assign({}, connection.config, this._executeOptions); this._setTimeout(); const executePacket = new Packets.Execute( this.statement.id, this.parameters, connection.config.charsetNumber, connection.config.timezone ); try { connection.writePacket(executePacket.toPacket(1)); } catch (error) { this.onResult(error); } return Execute.prototype.resultsetHeader; } readField(packet, connection) { let fields; const field = new Packets.ColumnDefinition( packet, connection.clientEncoding ); this._receivedFieldsCount++; this._fields[this._resultIndex].push(field); if (this._receivedFieldsCount === this._fieldCount) { fields = this._fields[this._resultIndex]; this.emit("fields", fields, this._resultIndex); return Execute.prototype.fieldsEOF; } return Execute.prototype.readField; } fieldsEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet"); } this._rowParser = new (this.buildParserFromFields( this._fields[this._resultIndex], connection ))(); return Execute.prototype.row; } }; Execute.prototype.done = Query.prototype.done; Execute.prototype.doneInsert = Query.prototype.doneInsert; Execute.prototype.resultsetHeader = Query.prototype.resultsetHeader; Execute.prototype._findOrCreateReadStream = Query.prototype._findOrCreateReadStream; Execute.prototype._streamLocalInfile = Query.prototype._streamLocalInfile; Execute.prototype._setTimeout = Query.prototype._setTimeout; Execute.prototype._handleTimeoutError = Query.prototype._handleTimeoutError; Execute.prototype.row = Query.prototype.row; Execute.prototype.stream = Query.prototype.stream; module2.exports = Execute; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/prepare.js var require_prepare2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/prepare.js"(exports, module2) { "use strict"; var Packets = require_packets2(); var Command = require_command2(); var CloseStatement = require_close_statement4(); var Execute = require_execute4(); var PreparedStatementInfo = class { constructor(query, id, columns, parameters, connection) { this.query = query; this.id = id; this.columns = columns; this.parameters = parameters; this.rowParser = null; this._connection = connection; } close() { return this._connection.addCommand(new CloseStatement(this.id)); } execute(parameters, callback) { if (typeof parameters === "function") { callback = parameters; parameters = []; } return this._connection.addCommand( new Execute({ statement: this, values: parameters }, callback) ); } }; var Prepare = class extends Command { constructor(options, callback) { super(); this.query = options.sql; this.onResult = callback; this.id = 0; this.fieldCount = 0; this.parameterCount = 0; this.fields = []; this.parameterDefinitions = []; this.options = options; } start(packet, connection) { const Connection = connection.constructor; this.key = Connection.statementKey(this.options); const statement = connection._statements.get(this.key); if (statement) { if (this.onResult) { this.onResult(null, statement); } return null; } const cmdPacket = new Packets.PrepareStatement( this.query, connection.config.charsetNumber, this.options.values ); connection.writePacket(cmdPacket.toPacket(1)); return Prepare.prototype.prepareHeader; } prepareHeader(packet, connection) { const header = new Packets.PreparedStatementHeader(packet); this.id = header.id; this.fieldCount = header.fieldCount; this.parameterCount = header.parameterCount; if (this.parameterCount > 0) { return Prepare.prototype.readParameter; } if (this.fieldCount > 0) { return Prepare.prototype.readField; } return this.prepareDone(connection); } readParameter(packet, connection) { const def = new Packets.ColumnDefinition(packet, connection.clientEncoding); this.parameterDefinitions.push(def); if (this.parameterDefinitions.length === this.parameterCount) { return Prepare.prototype.parametersEOF; } return this.readParameter; } readField(packet, connection) { const def = new Packets.ColumnDefinition(packet, connection.clientEncoding); this.fields.push(def); if (this.fields.length === this.fieldCount) { return Prepare.prototype.fieldsEOF; } return Prepare.prototype.readField; } parametersEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet after parameters"); } if (this.fieldCount > 0) { return Prepare.prototype.readField; } return this.prepareDone(connection); } fieldsEOF(packet, connection) { if (!packet.isEOF()) { return connection.protocolError("Expected EOF packet after fields"); } return this.prepareDone(connection); } prepareDone(connection) { const statement = new PreparedStatementInfo( this.query, this.id, this.fields, this.parameterDefinitions, connection ); connection._statements.set(this.key, statement); if (this.onResult) { this.onResult(null, statement); } return null; } }; module2.exports = Prepare; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/ping.js var require_ping2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/ping.js"(exports, module2) { "use strict"; var Command = require_command2(); var CommandCode = require_commands3(); var Packet = require_packet2(); var Ping = class extends Command { constructor(callback) { super(); this.onResult = callback; } start(packet, connection) { const ping = new Packet( 0, Buffer.from([1, 0, 0, 0, CommandCode.PING]), 0, 5 ); connection.writePacket(ping); return Ping.prototype.pingResponse; } pingResponse() { if (this.onResult) { process.nextTick(this.onResult.bind(this)); } return null; } }; module2.exports = Ping; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/register_slave.js var require_register_slave4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/register_slave.js"(exports, module2) { "use strict"; var Command = require_command2(); var Packets = require_packets2(); var RegisterSlave = class extends Command { constructor(opts, callback) { super(); this.onResult = callback; this.opts = opts; } start(packet, connection) { const newPacket = new Packets.RegisterSlave(this.opts); connection.writePacket(newPacket.toPacket(1)); return RegisterSlave.prototype.registerResponse; } registerResponse() { if (this.onResult) { process.nextTick(this.onResult.bind(this)); } return null; } }; module2.exports = RegisterSlave; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/binlog_query_statusvars.js var require_binlog_query_statusvars2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/packets/binlog_query_statusvars.js"(exports, module2) { "use strict"; var keys = { FLAGS2: 0, SQL_MODE: 1, CATALOG: 2, AUTO_INCREMENT: 3, CHARSET: 4, TIME_ZONE: 5, CATALOG_NZ: 6, LC_TIME_NAMES: 7, CHARSET_DATABASE: 8, TABLE_MAP_FOR_UPDATE: 9, MASTER_DATA_WRITTEN: 10, INVOKERS: 11, UPDATED_DB_NAMES: 12, MICROSECONDS: 3 }; module2.exports = function parseStatusVars(buffer) { const result = {}; let offset = 0; let key, length, prevOffset; while (offset < buffer.length) { key = buffer[offset++]; switch (key) { case keys.FLAGS2: result.flags = buffer.readUInt32LE(offset); offset += 4; break; case keys.SQL_MODE: result.sqlMode = buffer.readUInt32LE(offset); offset += 8; break; case keys.CATALOG: length = buffer[offset++]; result.catalog = buffer.toString("utf8", offset, offset + length); offset += length + 1; break; case keys.CHARSET: result.clientCharset = buffer.readUInt16LE(offset); result.connectionCollation = buffer.readUInt16LE(offset + 2); result.serverCharset = buffer.readUInt16LE(offset + 4); offset += 6; break; case keys.TIME_ZONE: length = buffer[offset++]; result.timeZone = buffer.toString("utf8", offset, offset + length); offset += length; break; case keys.CATALOG_NZ: length = buffer[offset++]; result.catalogNz = buffer.toString("utf8", offset, offset + length); offset += length; break; case keys.LC_TIME_NAMES: result.lcTimeNames = buffer.readUInt16LE(offset); offset += 2; break; case keys.CHARSET_DATABASE: result.schemaCharset = buffer.readUInt16LE(offset); offset += 2; break; case keys.TABLE_MAP_FOR_UPDATE: result.mapForUpdate1 = buffer.readUInt32LE(offset); result.mapForUpdate2 = buffer.readUInt32LE(offset + 4); offset += 8; break; case keys.MASTER_DATA_WRITTEN: result.masterDataWritten = buffer.readUInt32LE(offset); offset += 4; break; case keys.INVOKERS: length = buffer[offset++]; result.invokerUsername = buffer.toString( "utf8", offset, offset + length ); offset += length; length = buffer[offset++]; result.invokerHostname = buffer.toString( "utf8", offset, offset + length ); offset += length; break; case keys.UPDATED_DB_NAMES: length = buffer[offset++]; result.updatedDBs = []; for (; length; --length) { prevOffset = offset; while (buffer[offset++] && offset < buffer.length) { } result.updatedDBs.push( buffer.toString("utf8", prevOffset, offset - 1) ); } break; case keys.MICROSECONDS: result.microseconds = buffer.readInt16LE(offset) + (buffer[offset + 2] << 16); offset += 3; } } return result; }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/binlog_dump.js var require_binlog_dump4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/binlog_dump.js"(exports, module2) { "use strict"; var Command = require_command2(); var Packets = require_packets2(); var eventParsers = []; var BinlogEventHeader = class { constructor(packet) { this.timestamp = packet.readInt32(); this.eventType = packet.readInt8(); this.serverId = packet.readInt32(); this.eventSize = packet.readInt32(); this.logPos = packet.readInt32(); this.flags = packet.readInt16(); } }; var BinlogDump = class extends Command { constructor(opts) { super(); this.opts = opts; } start(packet, connection) { const newPacket = new Packets.BinlogDump(this.opts); connection.writePacket(newPacket.toPacket(1)); return BinlogDump.prototype.binlogData; } binlogData(packet) { if (packet.isEOF()) { this.emit("eof"); return null; } packet.readInt8(); const header = new BinlogEventHeader(packet); const EventParser = eventParsers[header.eventType]; let event; if (EventParser) { event = new EventParser(packet); } else { event = { name: "UNKNOWN" }; } event.header = header; this.emit("event", event); return BinlogDump.prototype.binlogData; } }; var RotateEvent = class { constructor(packet) { this.pposition = packet.readInt32(); packet.readInt32(); this.nextBinlog = packet.readString(); this.name = "RotateEvent"; } }; var FormatDescriptionEvent = class { constructor(packet) { this.binlogVersion = packet.readInt16(); this.serverVersion = packet.readString(50).replace(/\u0000.*/, ""); this.createTimestamp = packet.readInt32(); this.eventHeaderLength = packet.readInt8(); this.eventsLength = packet.readBuffer(); this.name = "FormatDescriptionEvent"; } }; var QueryEvent = class { constructor(packet) { const parseStatusVars = require_binlog_query_statusvars2(); this.slaveProxyId = packet.readInt32(); this.executionTime = packet.readInt32(); const schemaLength = packet.readInt8(); this.errorCode = packet.readInt16(); const statusVarsLength = packet.readInt16(); const statusVars = packet.readBuffer(statusVarsLength); this.schema = packet.readString(schemaLength); packet.readInt8(); this.statusVars = parseStatusVars(statusVars); this.query = packet.readString(); this.name = "QueryEvent"; } }; var XidEvent = class { constructor(packet) { this.binlogVersion = packet.readInt16(); this.xid = packet.readInt64(); this.name = "XidEvent"; } }; eventParsers[2] = QueryEvent; eventParsers[4] = RotateEvent; eventParsers[15] = FormatDescriptionEvent; eventParsers[16] = XidEvent; module2.exports = BinlogDump; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/change_user.js var require_change_user4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/change_user.js"(exports, module2) { "use strict"; var Command = require_command2(); var Packets = require_packets2(); var ClientConstants = require_client2(); var ClientHandshake = require_client_handshake2(); var CharsetToEncoding = require_charset_encodings2(); var ChangeUser = class extends Command { constructor(options, callback) { super(); this.onResult = callback; this.user = options.user; this.password = options.password; this.password1 = options.password; this.password2 = options.password2; this.password3 = options.password3; this.database = options.database; this.passwordSha1 = options.passwordSha1; this.charsetNumber = options.charsetNumber; this.currentConfig = options.currentConfig; this.authenticationFactor = 0; } start(packet, connection) { const newPacket = new Packets.ChangeUser({ flags: connection.config.clientFlags, user: this.user, database: this.database, charsetNumber: this.charsetNumber, password: this.password, passwordSha1: this.passwordSha1, authPluginData1: connection._handshakePacket.authPluginData1, authPluginData2: connection._handshakePacket.authPluginData2 }); this.currentConfig.user = this.user; this.currentConfig.password = this.password; this.currentConfig.database = this.database; this.currentConfig.charsetNumber = this.charsetNumber; connection.clientEncoding = CharsetToEncoding[this.charsetNumber]; connection._statements.clear(); connection.writePacket(newPacket.toPacket()); const multiFactorAuthentication = connection.serverCapabilityFlags & ClientConstants.MULTI_FACTOR_AUTHENTICATION; if (multiFactorAuthentication) { this.authenticationFactor = 1; } return ChangeUser.prototype.handshakeResult; } }; ChangeUser.prototype.handshakeResult = ClientHandshake.prototype.handshakeResult; ChangeUser.prototype.calculateNativePasswordAuthToken = ClientHandshake.prototype.calculateNativePasswordAuthToken; module2.exports = ChangeUser; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/quit.js var require_quit2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/quit.js"(exports, module2) { "use strict"; var Command = require_command2(); var CommandCode = require_commands3(); var Packet = require_packet2(); var Quit = class extends Command { constructor(callback) { super(); this.onResult = callback; } start(packet, connection) { connection._closing = true; const quit = new Packet( 0, Buffer.from([1, 0, 0, 0, CommandCode.QUIT]), 0, 5 ); if (this.onResult) { this.onResult(); } connection.writePacket(quit); return null; } }; module2.exports = Quit; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/index.js var require_commands4 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/commands/index.js"(exports, module2) { "use strict"; var ClientHandshake = require_client_handshake2(); var ServerHandshake = require_server_handshake2(); var Query = require_query4(); var Prepare = require_prepare2(); var CloseStatement = require_close_statement4(); var Execute = require_execute4(); var Ping = require_ping2(); var RegisterSlave = require_register_slave4(); var BinlogDump = require_binlog_dump4(); var ChangeUser = require_change_user4(); var Quit = require_quit2(); module2.exports = { ClientHandshake, ServerHandshake, Query, Prepare, CloseStatement, Execute, Ping, RegisterSlave, BinlogDump, ChangeUser, Quit }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/package.json var require_package2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/package.json"(exports, module2) { module2.exports = { name: "mysql2", version: "3.2.0", description: "fast mysql driver. Implements core protocol, prepared statements, ssl and compression in native JS", main: "index.js", directories: { example: "examples" }, typings: "typings/mysql/index", scripts: { lint: "npm run lint:docs && npm run lint:code", "lint:code": 'eslint index.js promise.js "lib/**/*.js" "test/**/*.js" "benchmarks/**/*.js"', "lint:docs": 'eslint Contributing.md "documentation/**/*.md" "examples/*.js"', test: "node ./test/run.js", "coverage-test": "c8 -r cobertura -r lcov -r text node ./test/run.js", benchmark: "node ./benchmarks/benchmark.js", prettier: 'prettier --single-quote --trailing-comma none --write "{lib,examples,test}/**/*.js"', "prettier:docs": "prettier --single-quote --trailing-comma none --write README.md documentation/*", precommit: "lint-staged", "eslint-check": "eslint --print-config .eslintrc | eslint-config-prettier-check", "wait-port": "wait-on", "type-test": "node ./node_modules/typescript/bin/tsc -p tests.json && mocha typings/test --timeout 10000" }, "lint-staged": { "*.js": [ "prettier --single-quote --trailing-comma none --write", "git add" ] }, repository: { type: "git", url: "https://github.com/sidorares/node-mysql2" }, keywords: [ "mysql", "client", "server" ], files: [ "lib", "typings/mysql", "index.js", "index.d.ts", "promise.js", "promise.d.ts" ], exports: { ".": "./index.js", "./promise": "./promise.js", "./promise.js": "./promise.js" }, engines: { node: ">= 8.0" }, author: "Andrey Sidorov ", license: "MIT", dependencies: { denque: "^2.1.0", "generate-function": "^2.3.1", "iconv-lite": "^0.6.3", long: "^5.2.1", "lru-cache": "^7.14.1", "named-placeholders": "^1.1.3", "seq-queue": "^0.0.5", sqlstring: "^2.3.2" }, devDependencies: { "@types/chai": "^4.3.4", "@types/mocha": "^10.0.0", "@types/node": "^18.7.1", "@typescript-eslint/eslint-plugin": "^5.42.1", "@typescript-eslint/parser": "^5.42.1", "assert-diff": "^3.0.2", benchmark: "^2.1.4", c8: "^7.10.0", chai: "^4.3.7", "error-stack-parser": "^2.0.3", eslint: "^8.27.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-async-await": "0.0.0", "eslint-plugin-markdown": "^3.0.0", husky: "^8.0.2", "lint-staged": "^13.0.3", mocha: "^10.0.0", portfinder: "^1.0.28", prettier: "^2.4.1", progress: "^2.0.3", typescript: "^4.4.3", urun: "0.0.8", utest: "0.0.8" } }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/ssl_profiles.js var require_ssl_profiles2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/constants/ssl_profiles.js"(exports) { "use strict"; exports["Amazon RDS"] = { ca: [ "-----BEGIN CERTIFICATE-----\nMIID9DCCAtygAwIBAgIBQjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUwOTExMzFaFw0y\nMDAzMDUwOTExMzFaMIGKMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEbMBkGA1UEAwwSQW1hem9uIFJE\nUyBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuD8nrZ8V\nu+VA8yVlUipCZIKPTDcOILYpUe8Tct0YeQQr0uyl018StdBsa3CjBgvwpDRq1HgF\nJi2N3+39+shCNspQeE6aYU+BHXhKhIIStt3r7gl/4NqYiDDMWKHxHq0nsGDFfArf\nAOcjZdJagOMqb3fF46flc8k2E7THTm9Sz4L7RY1WdABMuurpICLFE3oHcGdapOb9\nT53pQR+xpHW9atkcf3pf7gbO0rlKVSIoUenBlZipUlp1VZl/OD/E+TtRhDDNdI2J\nP/DSMM3aEsq6ZQkfbz/Ilml+Lx3tJYXUDmp+ZjzMPLk/+3beT8EhrwtcG3VPpvwp\nBIOqsqVVTvw/CwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw\nAwEB/zAdBgNVHQ4EFgQUTgLurD72FchM7Sz1BcGPnIQISYMwHwYDVR0jBBgwFoAU\nTgLurD72FchM7Sz1BcGPnIQISYMwDQYJKoZIhvcNAQEFBQADggEBAHZcgIio8pAm\nMjHD5cl6wKjXxScXKtXygWH2BoDMYBJF9yfyKO2jEFxYKbHePpnXB1R04zJSWAw5\n2EUuDI1pSBh9BA82/5PkuNlNeSTB3dXDD2PEPdzVWbSKvUB8ZdooV+2vngL0Zm4r\n47QPyd18yPHrRIbtBtHR/6CwKevLZ394zgExqhnekYKIqqEX41xsUV0Gm6x4vpjf\n2u6O/+YE2U+qyyxHE5Wd5oqde0oo9UUpFETJPVb6Q2cEeQib8PBAyi0i6KnF+kIV\nA9dY7IHSubtCK/i8wxMVqfd5GtbA8mmpeJFwnDvm9rBEsHybl08qlax9syEwsUYr\n/40NawZfTUU=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBRDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMDZaFw0y\nMDAzMDUyMjAzMDZaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1ub3J0aGVhc3QtMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAMmM2B4PfTXCZjbZMWiDPyxvk/eeNwIRJAhfzesiGUiLozX6CRy3rwC1ZOPV\nAcQf0LB+O8wY88C/cV+d4Q2nBDmnk+Vx7o2MyMh343r5rR3Na+4izd89tkQVt0WW\nvO21KRH5i8EuBjinboOwAwu6IJ+HyiQiM0VjgjrmEr/YzFPL8MgHD/YUHehqjACn\nC0+B7/gu7W4qJzBL2DOf7ub2qszGtwPE+qQzkCRDwE1A4AJmVE++/FLH2Zx78Egg\nfV1sUxPtYgjGH76VyyO6GNKM6rAUMD/q5mnPASQVIXgKbupr618bnH+SWHFjBqZq\nHvDGPMtiiWII41EmGUypyt5AbysCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFIiKM0Q6n1K4EmLxs3ZXxINbwEwR\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQBezGbE9Rw/k2e25iGjj5n8r+M3dlye8ORfCE/dijHtxqAKasXHgKX8I9Tw\nJkBiGWiuzqn7gO5MJ0nMMro1+gq29qjZnYX1pDHPgsRjUX8R+juRhgJ3JSHijRbf\n4qNJrnwga7pj94MhcLq9u0f6dxH6dXbyMv21T4TZMTmcFduf1KgaiVx1PEyJjC6r\nM+Ru+A0eM+jJ7uCjUoZKcpX8xkj4nmSnz9NMPog3wdOSB9cAW7XIc5mHa656wr7I\nWJxVcYNHTXIjCcng2zMKd1aCcl2KSFfy56sRfT7J5Wp69QSr+jq8KM55gw8uqAwi\nVPrXn2899T1rcTtFYFP16WXjGuc0\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBRTANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMTlaFw0y\nMDAzMDUyMjAzMTlaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1zb3V0aGVhc3QtMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBANaXElmSEYt/UtxHFsARFhSUahTf1KNJzR0Dmay6hqOXQuRVbKRwPd19u5vx\nDdF1sLT7D69IK3VDnUiQScaCv2Dpu9foZt+rLx+cpx1qiQd1UHrvqq8xPzQOqCdC\nRFStq6yVYZ69yfpfoI67AjclMOjl2Vph3ftVnqP0IgVKZdzeC7fd+umGgR9xY0Qr\nUbhd/lWdsbNvzK3f1TPWcfIKQnpvSt85PIEDJir6/nuJUKMtmJRwTymJf0i+JZ4x\n7dJa341p2kHKcHMgOPW7nJQklGBA70ytjUV6/qebS3yIugr/28mwReflg3TJzVDl\nEOvi6pqbqNbkMuEwGDCmEQIVqgkCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFAu93/4k5xbWOsgdCdn+/KdiRuit\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQBlcjSyscpPjf5+MgzMuAsCxByqUt+WFspwcMCpwdaBeHOPSQrXNqX2Sk6P\nkth6oCivA64trWo8tFMvPYlUA1FYVD5WpN0kCK+P5pD4KHlaDsXhuhClJzp/OP8t\npOyUr5109RHLxqoKB5J5m1XA7rgcFjnMxwBSWFe3/4uMk/+4T53YfCVXuc6QV3i7\nI/2LAJwFf//pTtt6fZenYfCsahnr2nvrNRNyAxcfvGZ/4Opn/mJtR6R/AjvQZHiR\nbkRNKF2GW0ueK5W4FkZVZVhhX9xh1Aj2Ollb+lbOqADaVj+AT3PoJPZ3MPQHKCXm\nxwG0LOLlRr/TfD6li1AfOVTAJXv9\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBRjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMjRaFw0y\nMDAzMDUyMjAzMjRaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1zb3V0aGVhc3QtMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAJqBAJutz69hFOh3BtLHZTbwE8eejGGKayn9hu98YMDPzWzGXWCmW+ZYWELA\ncY3cNWNF8K4FqKXFr2ssorBYim1UtYFX8yhydT2hMD5zgQ2sCGUpuidijuPA6zaq\nZ3tdhVR94f0q8mpwpv2zqR9PcqaGDx2VR1x773FupRPRo7mEW1vC3IptHCQlP/zE\n7jQiLl28bDIH2567xg7e7E9WnZToRnhlYdTaDaJsHTzi5mwILi4cihSok7Shv/ME\nhnukvxeSPUpaVtFaBhfBqq055ePq9I+Ns4KGreTKMhU0O9fkkaBaBmPaFgmeX/XO\nn2AX7gMouo3mtv34iDTZ0h6YCGkCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFIlQnY0KHYWn1jYumSdJYfwj/Nfw\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQA0wVU6/l41cTzHc4azc4CDYY2Wd90DFWiH9C/mw0SgToYfCJ/5Cfi0NT/Y\nPRnk3GchychCJgoPA/k9d0//IhYEAIiIDjyFVgjbTkKV3sh4RbdldKVOUB9kumz/\nZpShplsGt3z4QQiVnKfrAgqxWDjR0I0pQKkxXa6Sjkicos9LQxVtJ0XA4ieG1E7z\nzJr+6t80wmzxvkInSaWP3xNJK9azVRTrgQZQlvkbpDbExl4mNTG66VD3bAp6t3Wa\nB49//uDdfZmPkqqbX+hsxp160OH0rxJppwO3Bh869PkDnaPEd/Pxw7PawC+li0gi\nNRV8iCEx85aFxcyOhqn0WZOasxee\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/zCCAuegAwIBAgIBRzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMzFaFw0y\nMDAzMDUyMjAzMzFaMIGSMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEjMCEGA1UEAwwaQW1hem9uIFJE\nUyBldS1jZW50cmFsLTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQDFtP2dhSLuaPOI4ZrrPWsK4OY9ocQBp3yApH1KJYmI9wpQKZG/KCH2E6Oo7JAw\nQORU519r033T+FO2Z7pFPlmz1yrxGXyHpJs8ySx3Yo5S8ncDCdZJCLmtPiq/hahg\n5/0ffexMFUCQaYicFZsrJ/cStdxUV+tSw2JQLD7UxS9J97LQWUPyyG+ZrjYVTVq+\nzudnFmNSe4QoecXMhAFTGJFQXxP7nhSL9Ao5FGgdXy7/JWeWdQIAj8ku6cBDKPa6\nY6kP+ak+In+Lye8z9qsCD/afUozfWjPR2aA4JoIZVF8dNRShIMo8l0XfgfM2q0+n\nApZWZ+BjhIO5XuoUgHS3D2YFAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNV\nHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBRm4GsWIA/M6q+tK8WGHWDGh2gcyTAf\nBgNVHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOC\nAQEAHpMmeVQNqcxgfQdbDIi5UIy+E7zZykmtAygN1XQrvga9nXTis4kOTN6g5/+g\nHCx7jIXeNJzAbvg8XFqBN84Quqgpl/tQkbpco9Jh1HDs558D5NnZQxNqH5qXQ3Mm\nuPgCw0pYcPOa7bhs07i+MdVwPBsX27CFDtsgAIru8HvKxY1oTZrWnyIRo93tt/pk\nWuItVMVHjaQZVfTCow0aDUbte6Vlw82KjUFq+n2NMSCJDiDKsDDHT6BJc4AJHIq3\n/4Z52MSC9KMr0yAaaoWfW/yMEj9LliQauAgwVjArF4q78rxpfKTG9Rfd8U1BZANP\n7FrFMN0ThjfA1IvmOYcgskY5bQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzMzVaFw0y\nMDAzMDUyMjAzMzVaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBldS13ZXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCx\nPdbqQ0HKRj79Pmocxvjc+P6i4Ux24kgFIl+ckiir1vzkmesc3a58gjrMlCksEObt\nYihs5IhzEq1ePT0gbfS9GYFp34Uj/MtPwlrfCBWG4d2TcrsKRHr1/EXUYhWqmdrb\nRhX8XqoRhVkbF/auzFSBhTzcGGvZpQ2KIaxRcQfcXlMVhj/pxxAjh8U4F350Fb0h\nnX1jw4/KvEreBL0Xb2lnlGTkwVxaKGSgXEnOgIyOFdOQc61vdome0+eeZsP4jqeR\nTGYJA9izJsRbe2YJxHuazD+548hsPlM3vFzKKEVURCha466rAaYAHy3rKur3HYQx\nYt+SoKcEz9PXuSGj96ejAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTebg//h2oeXbZjQ4uuoiuLYzuiPDAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nTikPaGeZasTPw+4RBemlsyPAjtFFQLo7ddaFdORLgdEysVf8aBqndvbA6MT/v4lj\nGtEtUdF59ZcbWOrVm+fBZ2h/jYJ59dYF/xzb09nyRbdMSzB9+mkSsnOMqluq5y8o\nDY/PfP2vGhEg/2ZncRC7nlQU1Dm8F4lFWEiQ2fi7O1cW852Vmbq61RIfcYsH/9Ma\nkpgk10VZ75b8m3UhmpZ/2uRY+JEHImH5WpcTJ7wNiPNJsciZMznGtrgOnPzYco8L\ncDleOASIZifNMQi9PKOJKvi0ITz0B/imr8KBsW0YjZVJ54HMa7W1lwugSM7aMAs+\nE3Sd5lS+SHwWaOCHwhOEVA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSTANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzNDBaFw0y\nMDAzMDUyMjAzNDBaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBzYS1lYXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCU\nX4OBnQ5xA6TLJAiFEI6l7bUWjoVJBa/VbMdCCSs2i2dOKmqUaXu2ix2zcPILj3lZ\nGMk3d/2zvTK/cKhcFrewHUBamTeVHdEmynhMQamqNmkM4ptYzFcvEUw1TGxHT4pV\nQ6gSN7+/AJewQvyHexHo8D0+LDN0/Wa9mRm4ixCYH2CyYYJNKaZt9+EZfNu+PPS4\n8iB0TWH0DgQkbWMBfCRgolLLitAZklZ4dvdlEBS7evN1/7ttBxUK6SvkeeSx3zBl\nww3BlXqc3bvTQL0A+RRysaVyFbvtp9domFaDKZCpMmDFAN/ntx215xmQdrSt+K3F\ncXdGQYHx5q410CAclGnbAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBT6iVWnm/uakS+tEX2mzIfw+8JL0zAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nFmDD+QuDklXn2EgShwQxV13+txPRuVdOSrutHhoCgMwFWCMtPPtBAKs6KPY7Guvw\nDpJoZSehDiOfsgMirjOWjvfkeWSNvKfjWTVneX7pZD9W5WPnsDBvTbCGezm+v87z\nb+ZM2ZMo98m/wkMcIEAgdSKilR2fuw8rLkAjhYFfs0A7tDgZ9noKwgHvoE4dsrI0\nKZYco6DlP/brASfHTPa2puBLN9McK3v+h0JaSqqm5Ro2Bh56tZkQh8AWy/miuDuK\n3+hNEVdxosxlkM1TPa1DGj0EzzK0yoeerXuH2HX7LlCrrxf6/wdKnjR12PMrLQ4A\npCqkcWw894z6bV9MAvKe6A==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBQzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMTU0MDRaFw0y\nMDAzMDUyMTU0MDRaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy1lYXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI\nUIuwh8NusKHk1SqPXcP7OqxY3S/M2ZyQWD3w7Bfihpyyy/fc1w0/suIpX3kbMhAV\n2ESwged2/2zSx4pVnjp/493r4luhSqQYzru78TuPt9bhJIJ51WXunZW2SWkisSaf\nUSYUzVN9ezR/bjXTumSUQaLIouJt3OHLX49s+3NAbUyOI8EdvgBQWD68H1epsC0n\nCI5s+pIktyOZ59c4DCDLQcXErQ+tNbDC++oct1ANd/q8p9URonYwGCGOBy7sbCYq\n9eVHh1Iy2M+SNXddVOGw5EuruvHoCIQyOz5Lz4zSuZA9dRbrfztNOpezCNYu6NKM\nn+hzcvdiyxv77uNm8EaxAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQSQG3TmMe6Sa3KufaPBa72v4QFDzAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nL/mOZfB3187xTmjOHMqN2G2oSKHBKiQLM9uv8+97qT+XR+TVsBT6b3yoPpMAGhHA\nPc7nxAF5gPpuzatx0OTLPcmYucFmfqT/1qA5WlgCnMNtczyNMH97lKFTNV7Njtek\njWEzAEQSyEWrkNpNlC4j6kMYyPzVXQeXUeZTgJ9FNnVZqmvfjip2N22tawMjrCn5\n7KN/zN65EwY2oO9XsaTwwWmBu3NrDdMbzJnbxoWcFWj4RBwanR1XjQOVNhDwmCOl\n/1Et13b8CPyj69PC8BOVU6cfTSx8WUVy0qvYOKHNY9Bqa5BDnIL3IVmUkeTlM1mt\nenRpyBj+Bk9rh/ICdiRKmA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzNDVaFw0y\nMDAzMDUyMjAzNDVaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy13ZXN0LTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDE\nDhw+uw/ycaiIhhyu2pXFRimq0DlB8cNtIe8hdqndH8TV/TFrljNgR8QdzOgZtZ9C\nzzQ2GRpInN/qJF6slEd6wO+6TaDBQkPY+07TXNt52POFUhdVkhJXHpE2BS7Xn6J7\n7RFAOeG1IZmc2DDt+sR1BgXzUqHslQGfFYNS0/MBO4P+ya6W7IhruB1qfa4HiYQS\ndbe4MvGWnv0UzwAqdR7OF8+8/5c58YXZIXCO9riYF2ql6KNSL5cyDPcYK5VK0+Q9\nVI6vuJHSMYcF7wLePw8jtBktqAFE/wbdZiIHhZvNyiNWPPNTGUmQbaJ+TzQEHDs5\n8en+/W7JKnPyBOkxxENbAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBS0nw/tFR9bCjgqWTPJkyy4oOD8bzAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nCXGAY3feAak6lHdqj6+YWjy6yyUnLK37bRxZDsyDVXrPRQaXRzPTzx79jvDwEb/H\nQ/bdQ7zQRWqJcbivQlwhuPJ4kWPUZgSt3JUUuqkMsDzsvj/bwIjlrEFDOdHGh0mi\neVIngFEjUXjMh+5aHPEF9BlQnB8LfVtKj18e15UDTXFa+xJPFxUR7wDzCfo4WI1m\nsUMG4q1FkGAZgsoyFPZfF8IVvgCuGdR8z30VWKklFxttlK0eGLlPAyIO0CQxPQlo\nsaNJrHf4tLOgZIWk+LpDhNd9Et5EzvJ3aURUsKY4pISPPF5WdvM9OE59bERwUErd\nnuOuQWQeeadMceZnauRzJQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBSzANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTAyMDUyMjAzNTBaFw0y\nMDAzMDUyMjAzNTBaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy13ZXN0LTIgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDM\nH58SR48U6jyERC1vYTnub34smf5EQVXyzaTmspWGWGzT31NLNZGSDFaa7yef9kdO\nmzJsgebR5tXq6LdwlIoWkKYQ7ycUaadtVKVYdI40QcI3cHn0qLFlg2iBXmWp/B+i\nZ34VuVlCh31Uj5WmhaBoz8t/GRqh1V/aCsf3Wc6jCezH3QfuCjBpzxdOOHN6Ie2v\nxX09O5qmZTvMoRBAvPkxdaPg/Mi7fxueWTbEVk78kuFbF1jHYw8U1BLILIAhcqlq\nx4u8nl73t3O3l/soNUcIwUDK0/S+Kfqhwn9yQyPlhb4Wy3pfnZLJdkyHldktnQav\n9TB9u7KH5Lk0aAYslMLxAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBT8roM4lRnlFHWMPWRz0zkwFZog1jAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQUFAAOCAQEA\nJwrxwgwmPtcdaU7O7WDdYa4hprpOMamI49NDzmE0s10oGrqmLwZygcWU0jT+fJ+Y\npJe1w0CVfKaeLYNsOBVW3X4ZPmffYfWBheZiaiEflq/P6t7/Eg81gaKYnZ/x1Dfa\nsUYkzPvCkXe9wEz5zdUTOCptDt89rBR9CstL9vE7WYUgiVVmBJffWbHQLtfjv6OF\nNMb0QME981kGRzc2WhgP71YS2hHd1kXtsoYP1yTu4vThSKsoN4bkiHsaC1cRkLoy\n0fFA4wpB3WloMEvCDaUvvH1LZlBXTNlwi9KtcwD4tDxkkBt4tQczKLGpQ/nF/W9n\n8YDWk3IIc1sd0bkZqoau2Q==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBTDANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNTExMDYwMDA1NDZaFw0y\nMDAzMDUwMDA1NDZaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1ub3J0aGVhc3QtMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAKSwd+RVUzTRH0FgnbwoTK8TMm/zMT4+2BvALpAUe6YXbkisg2goycWuuWLg\njOpFBB3GtyvXZnkqi7MkDWUmj1a2kf8l2oLyoaZ+Hm9x/sV+IJzOqPvj1XVUGjP6\nyYYnPJmUYqvZeI7fEkIGdFkP2m4/sgsSGsFvpD9FK1bL1Kx2UDpYX0kHTtr18Zm/\n1oN6irqWALSmXMDydb8hE0FB2A1VFyeKE6PnoDj/Y5cPHwPPdEi6/3gkDkSaOG30\nrWeQfL3pOcKqzbHaWTxMphd0DSL/quZ64Nr+Ly65Q5PRcTrtr55ekOUziuqXwk+o\n9QpACMwcJ7ROqOznZTqTzSFVXFECAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFM6Nox/QWbhzWVvzoJ/y0kGpNPK+\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQCTkWBqNvyRf3Y/W21DwFx3oT/AIWrHt0BdGZO34tavummXemTH9LZ/mqv9\naljt6ZuDtf5DEQjdsAwXMsyo03ffnP7doWm8iaF1+Mui77ot0TmTsP/deyGwukvJ\ntkxX8bZjDh+EaNauWKr+CYnniNxCQLfFtXYJsfOdVBzK3xNL+Z3ucOQRhr2helWc\nCDQgwfhP1+3pRVKqHvWCPC4R3fT7RZHuRmZ38kndv476GxRntejh+ePffif78bFI\n3rIZCPBGobrrUMycafSbyXteoGca/kA+/IqrAPlk0pWQ4aEL0yTWN2h2dnjoD7oX\nbyIuL/g9AGRh97+ssn7D6bDRPTbW\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/TCCAuWgAwIBAgIBTTANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjA1MDMyMTI5MjJaFw0y\nMDAzMDUyMTI5MjJaMIGQMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEhMB8GA1UEAwwYQW1hem9uIFJE\nUyBhcC1zb3V0aC0xIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n06eWGLE0TeqL9kyWOLkS8q0fXO97z+xyBV3DKSB2lg2GkgBz3B98MkmkeB0SZy3G\nCe4uCpCPbFKiFEdiUclOlhZsrBuCeaimxLM3Ig2wuenElO/7TqgaYHYUbT3d+VQW\nGUbLn5GRZJZe1OAClYdOWm7A1CKpuo+cVV1vxbY2nGUQSJPpVn2sT9gnwvjdE60U\nJGYU/RLCTm8zmZBvlWaNIeKDnreIc4rKn6gUnJ2cQn1ryCVleEeyc3xjYDSrjgdn\nFLYGcp9mphqVT0byeQMOk0c7RHpxrCSA0V5V6/CreFV2LteK50qcDQzDSM18vWP/\np09FoN8O7QrtOeZJzH/lmwIDAQABo2YwZDAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0T\nAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU2i83QHuEl/d0keXF+69HNJph7cMwHwYD\nVR0jBBgwFoAUTgLurD72FchM7Sz1BcGPnIQISYMwDQYJKoZIhvcNAQELBQADggEB\nACqnH2VjApoDqoSQOky52QBwsGaj+xWYHW5Gm7EvCqvQuhWMkeBuD6YJmMvNyA9G\nI2lh6/o+sUk/RIsbYbxPRdhNPTOgDR9zsNRw6qxaHztq/CEC+mxDCLa3O1hHBaDV\nBmB3nCZb93BvO0EQSEk7aytKq/f+sjyxqOcs385gintdHGU9uM7gTZHnU9vByJsm\n/TL07Miq67X0NlhIoo3jAk+xHaeKJdxdKATQp0448P5cY20q4b8aMk1twcNaMvCP\ndG4M5doaoUA8OQ/0ukLLae/LBxLeTw04q1/a2SyFaVUX2Twbb1S3xVWwLA8vsyGr\nigXx7B5GgP+IHb6DTjPJAi0=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBTjANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjA4MTExOTU4NDVaFw0y\nMDAzMDUxOTU4NDVaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyB1cy1lYXN0LTIgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCp\nWnnUX7wM0zzstccX+4iXKJa9GR0a2PpvB1paEX4QRCgfhEdQWDaSqyrWNgdVCKkt\n1aQkWu5j6VAC2XIG7kKoonm1ZdBVyBLqW5lXNywlaiU9yhJkwo8BR+/OqgE+PLt/\nEO1mlN0PQudja/XkExCXTO29TG2j7F/O7hox6vTyHNHc0H88zS21uPuBE+jivViS\nyzj/BkyoQ85hnkues3f9R6gCGdc+J51JbZnmgzUkvXjAEuKhAm9JksVOxcOKUYe5\nERhn0U9zjzpfbAITIkul97VVa5IxskFFTHIPJbvRKHJkiF6wTJww/tc9wm+fSCJ1\n+DbQTGZgkQ3bJrqRN29/AgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSAHQzUYYZbepwKEMvGdHp8wzHnfDAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOCAQEA\nMbaEzSYZ+aZeTBxf8yi0ta8K4RdwEJsEmP6IhFFQHYUtva2Cynl4Q9tZg3RMsybT\n9mlnSQQlbN/wqIIXbkrcgFcHoXG9Odm/bDtUwwwDaiEhXVfeQom3G77QHOWMTCGK\nqadwuh5msrb17JdXZoXr4PYHDKP7j0ONfAyFNER2+uecblHfRSpVq5UeF3L6ZJb8\nfSw/GtAV6an+/0r+Qm+PiI2H5XuZ4GmRJYnGMhqWhBYrY7p3jtVnKcsh39wgfUnW\nAvZEZG/yhFyAZW0Essa39LiL5VSq14Y1DOj0wgnhSY/9WHxaAo1HB1T9OeZknYbD\nfl/EGSZ0TEvZkENrXcPlVA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/zCCAuegAwIBAgIBTzANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjA5MTUwMDEwMTFaFw0y\nMDAzMDUwMDEwMTFaMIGSMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEjMCEGA1UEAwwaQW1hem9uIFJE\nUyBjYS1jZW50cmFsLTEgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQCZYI/iQ6DrS3ny3t1EwX1wAD+3LMgh7Fd01EW5LIuaK2kYIIQpsVKhxLCit/V5\nAGc/1qiJS1Qz9ODLTh0Na6bZW6EakRzuHJLe32KJtoFYPC7Z09UqzXrpA/XL+1hM\nP0ZmCWsU7Nn/EmvfBp9zX3dZp6P6ATrvDuYaVFr+SA7aT3FXpBroqBS1fyzUPs+W\nc6zTR6+yc4zkHX0XQxC5RH6xjgpeRkoOajA/sNo7AQF7KlWmKHbdVF44cvvAhRKZ\nXaoVs/C4GjkaAEPTCbopYdhzg+KLx9eB2BQnYLRrIOQZtRfbQI2Nbj7p3VsRuOW1\ntlcks2w1Gb0YC6w6SuIMFkl1AgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNV\nHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBToYWxE1lawl6Ks6NsvpbHQ3GKEtzAf\nBgNVHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOC\nAQEAG/8tQ0ooi3hoQpa5EJz0/E5VYBsAz3YxA2HoIonn0jJyG16bzB4yZt4vNQMA\nKsNlQ1uwDWYL1nz63axieUUFIxqxl1KmwfhsmLgZ0Hd2mnTPIl2Hw3uj5+wdgGBg\nagnAZ0bajsBYgD2VGQbqjdk2Qn7Fjy3LEWIvGZx4KyZ99OJ2QxB7JOPdauURAtWA\nDKYkP4LLJxtj07DSzG8kuRWb9B47uqUD+eKDIyjfjbnzGtd9HqqzYFau7EX3HVD9\n9Qhnjl7bTZ6YfAEZ3nH2t3Vc0z76XfGh47rd0pNRhMV+xpok75asKf/lNh5mcUrr\nVKwflyMkQpSbDCmcdJ90N2xEXQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBUDANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNjEwMTAxNzQ0NDJaFw0y\nMDAzMDUxNzQ0NDJaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBldS13ZXN0LTIgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDO\ncttLJfubB4XMMIGWNfJISkIdCMGJyOzLiMJaiWB5GYoXKhEl7YGotpy0qklwW3BQ\na0fmVdcCLX+dIuVQ9iFK+ZcK7zwm7HtdDTCHOCKeOh2IcnU4c/VIokFi6Gn8udM6\nN/Zi5M5OGpVwLVALQU7Yctsn3c95el6MdVx6mJiIPVu7tCVZn88Z2koBQ2gq9P4O\nSb249SHFqOb03lYDsaqy1NDsznEOhaRBw7DPJFpvmw1lA3/Y6qrExRI06H2VYR2i\n7qxwDV50N58fs10n7Ye1IOxTVJsgEA7X6EkRRXqYaM39Z76R894548WHfwXWjUsi\nMEX0RS0/t1GmnUQjvevDAgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQBxmcuRSxERYCtNnSr5xNfySokHjAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOCAQEA\nUyCUQjsF3nUAABjfEZmpksTuUo07aT3KGYt+EMMFdejnBQ0+2lJJFGtT+CDAk1SD\nRSgfEBon5vvKEtlnTf9a3pv8WXOAkhfxnryr9FH6NiB8obISHNQNPHn0ljT2/T+I\nY6ytfRvKHa0cu3V0NXbJm2B4KEOt4QCDiFxUIX9z6eB4Kditwu05OgQh6KcogOiP\nJesWxBMXXGoDC1rIYTFO7szwDyOHlCcVXJDNsTJhc32oDWYdeIbW7o/5I+aQsrXZ\nC96HykZcgWzz6sElrQxUaT3IoMw/5nmw4uWKKnZnxgI9bY4fpQwMeBZ96iHfFxvH\nmqfEEuC7uUoPofXdBp2ObQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/DCCAuSgAwIBAgIBUTANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNzA4MjUyMTM5MjZaFw0y\nMDAzMDUyMTM5MjZaMIGPMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJE\nUyBldS13ZXN0LTMgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+\nxmlEC/3a4cJH+UPwXCE02lC7Zq5NHd0dn6peMeLN8agb6jW4VfSY0NydjRj2DJZ8\nK7wV6sub5NUGT1NuFmvSmdbNR2T59KX0p2dVvxmXHHtIpQ9Y8Aq3ZfhmC5q5Bqgw\ntMA1xayDi7HmoPX3R8kk9ktAZQf6lDeksCvok8idjTu9tiSpDiMwds5BjMsWfyjZ\nd13PTGGNHYVdP692BSyXzSP1Vj84nJKnciW8tAqwIiadreJt5oXyrCXi8ekUMs80\ncUTuGm3aA3Q7PB5ljJMPqz0eVddaiIvmTJ9O3Ez3Du/HpImyMzXjkFaf+oNXf/Hx\n/EW5jCRR6vEiXJcDRDS7AgMBAAGjZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMB\nAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBRZ9mRtS5fHk3ZKhG20Oack4cAqMTAfBgNV\nHSMEGDAWgBROAu6sPvYVyEztLPUFwY+chAhJgzANBgkqhkiG9w0BAQsFAAOCAQEA\nF/u/9L6ExQwD73F/bhCw7PWcwwqsK1mypIdrjdIsu0JSgwWwGCXmrIspA3n3Dqxq\nsMhAJD88s9Em7337t+naar2VyLO63MGwjj+vA4mtvQRKq8ScIpiEc7xN6g8HUMsd\ngPG9lBGfNjuAZsrGJflrko4HyuSM7zHExMjXLH+CXcv/m3lWOZwnIvlVMa4x0Tz0\nA4fklaawryngzeEjuW6zOiYCzjZtPlP8Fw0SpzppJ8VpQfrZ751RDo4yudmPqoPK\n5EUe36L8U+oYBXnC5TlYs9bpVv9o5wJQI5qA9oQE2eFWxF1E0AyZ4V5sgGUBStaX\nBjDDWul0wSo7rt1Tq7XpnA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIBTjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNzEyMDEwMDU1NDJaFw0y\nMDAzMDUwMDU1NDJaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJE\nUyBhcC1ub3J0aGVhc3QtMyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBAMZtQNnm/XT19mTa10ftHLzg5UhajoI65JHv4TQNdGXdsv+CQdGYU49BJ9Eu\n3bYgiEtTzR2lQe9zGMvtuJobLhOWuavzp7IixoIQcHkFHN6wJ1CvqrxgvJfBq6Hy\nEuCDCiU+PPDLUNA6XM6Qx3IpHd1wrJkjRB80dhmMSpxmRmx849uFafhN+P1QybsM\nTI0o48VON2+vj+mNuQTyLMMP8D4odSQHjaoG+zyJfJGZeAyqQyoOUOFEyQaHC3TT\n3IDSNCQlpxb9LerbCoKu79WFBBq3CS5cYpg8/fsnV2CniRBFFUumBt5z4dhw9RJU\nqlUXXO1ZyzpGd+c5v6FtrfXtnIUCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEGMBIG\nA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFETv7ELNplYy/xTeIOInl6nzeiHg\nMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEBBQUA\nA4IBAQCpKxOQcd0tEKb3OtsOY8q/MPwTyustGk2Rt7t9G68idADp8IytB7M0SDRo\nwWZqynEq7orQVKdVOanhEWksNDzGp0+FPAf/KpVvdYCd7ru3+iI+V4ZEp2JFdjuZ\nZz0PIjS6AgsZqE5Ri1J+NmfmjGZCPhsHnGZiBaenX6K5VRwwwmLN6xtoqrrfR5zL\nQfBeeZNJG6KiM3R/DxJ5rAa6Fz+acrhJ60L7HprhB7SFtj1RCijau3+ZwiGmUOMr\nyKlMv+VgmzSw7o4Hbxy1WVrA6zQsTHHSGf+vkQn2PHvnFMUEu/ZLbTDYFNmTLK91\nK6o4nMsEvhBKgo4z7H1EqqxXhvN2\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBDCCAuygAwIBAgIBTTANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xNzEyMDYyMjQyMjdaFw0y\nMDAzMDQyMjQyMjdaMIGXMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEoMCYGA1UEAwwfQW1hem9uIFJE\nUyBwcmV2aWV3LXVzLWVhc3QtMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC\nAQoCggEBAMw0E8k8URanS0c/i1S7wzFf5+XC9H2bm+4pENdElGP5s9rVCybrzJaw\n6zZgVLpOFnS9mJ+sDHIMUexPjj0X4+r7wZ4+hPfy7Rmrgbt23IQwr+PIBxsKAVjj\niaQ3bSm5WQ79an5elfQqEDdZ13ckUcLBJDA8bUDthI8m7gnteGtx0M1D0VS5PDs9\ncf96QlBia9Lx3VcNo3cc0PzP30E4j3h/Ywlb0jXUgB6oVlTxK70BjD3kZa+2xlea\nvKmm4NqGVhPY7BWd4XNdbSYsPDeZ9HxHNWXZxoHcQ7vSU8RKYVPtoBK/zIp3eWOi\ngzZlm5vYPvlkYh2pshttPPVyhZqlEZ8CAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgEG\nMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFI93K+FRhste6w3MiD+IK3Tc\ng/BsMB8GA1UdIwQYMBaAFE4C7qw+9hXITO0s9QXBj5yECEmDMA0GCSqGSIb3DQEB\nBQUAA4IBAQAs4RsC8MJVOvrlRi5sgKC9LJ4BvSrrbR5V8CdIEwlPqrVOSsU5t7Py\nj8CHoPUY/ya1azlBSO62BqdZxipFuAR06NdxNG2Gy0fGl71N2udxokwEPW+IEZ81\nG6JeX8HNFjnna8ehimz1VJDDW7qborhg3dCAgEWkgv5PDR9/zoUu6bbmHPV77zbx\nGq7Sybz5OiagC7Nj9N1WgjNXUEmlfY2DHXnJmIVgUGEVrBgu5tGcIU/bQCRznH1N\nJsBH0SalneCbSzMBhQdnzL+L5KOERibWAZvS6ebmomTBwa03kgo/T0DfEccgobTs\nrV6T9/8Vg9T18vEeqURL+LOGs7+lIKmN\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIID/TCCAuWgAwIBAgIBUjANBgkqhkiG9w0BAQsFADCBijELMAkGA1UEBhMCVVMx\nEzARBgNVBAgMCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nGzAZBgNVBAMMEkFtYXpvbiBSRFMgUm9vdCBDQTAeFw0xODA5MjgxNzM0NTJaFw0y\nMDAzMDUxNzM0NTJaMIGQMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3Rv\nbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNl\ncywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEhMB8GA1UEAwwYQW1hem9uIFJE\nUyBldS1ub3J0aC0xIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\nwvHfpoixHNy1jvcq/WNhXDHlsFVbEOX7mp01YQeK0wWqlpFvjs2HFJ1sRnnmyhdT\nsv4VQuXnQw2V2iFAO2HveDi8pcJ+eIXY+wloSVBytgYLTMcNpn5LmqIeyGO+Lr6p\nKUr78I4uE0mnabxyILA96CYrYtgwpLCtpEXSdSJPwOSK9nX9++molxLcJ5v4fiPS\nj46PETsbFoFdXXwYCdiJKpzO4zUAkKzzvzbF7cXg9R4noJuytjEKbluxugDHdnwl\nSctGZ3moju2I0OpPbJKUI3wHsUMtY5v15X74MOED5lbtaW5+/6JIERggve0b23Ni\n4nlYSt0Bb3z3Zwc83twCUwIDAQABo2YwZDAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0T\nAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU4stOy1OAFRyvZCSKNfCiPRD+rPowHwYD\nVR0jBBgwFoAUTgLurD72FchM7Sz1BcGPnIQISYMwDQYJKoZIhvcNAQELBQADggEB\nAHpRIlKh1fqbMHl0+VnJ/52XQy1F5gM2hnw3lYkOLsDyzj9W4V6D1v2EDgYW+ZVH\n0wWqo8m0jS6CDn14W2HqNlyXyHpJK3eh3088zxvJgKqzKS4ghNzafN7axwYIwRN6\n9rrhRWy9MaFHaSPKtgiuTxw9fOekqyJdO+OYpBVEp7KEEyEG9/W5xZcU64zGb6UT\n8/g4+5t+HlT0nYBMvt8HW7w2XbFBetfKKK4WaoPKloOMN+RLO/JgJ6pVWvxM8nhC\nPbVtr43OI1sQAXYk0an7aUDgXT98vGwovWNHI6lFCMGRG+WXhauLtKRsIr4hR1LV\nfES7Q9MWPzPYHQoKELF9Jhk=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZQxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSUwIwYDVQQDDBxBbWF6b24gUkRTIGFwLWVhc3QtMSBSb290IENBMB4XDTE5MDIx\nNzAyNDcwMFoXDTIyMDYwMTEyMDAwMFowgY8xCzAJBgNVBAYTAlVTMRMwEQYDVQQI\nDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMSIwIAYDVQQKDBlBbWF6b24g\nV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMSAwHgYDVQQD\nDBdBbWF6b24gUkRTIGFwLWVhc3QtMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAOcJAUofyJuBuPr5ISHi/Ha5ed8h3eGdzn4MBp6rytPOg9NVGRQs\nO93fNGCIKsUT6gPuk+1f1ncMTV8Y0Fdf4aqGWme+Khm3ZOP3V1IiGnVq0U2xiOmn\nSQ4Q7LoeQC4lC6zpoCHVJyDjZ4pAknQQfsXb77Togdt/tK5ahev0D+Q3gCwAoBoO\nDHKJ6t820qPi63AeGbJrsfNjLKiXlFPDUj4BGir4dUzjEeH7/hx37na1XG/3EcxP\n399cT5k7sY/CR9kctMlUyEEUNQOmhi/ly1Lgtihm3QfjL6K9aGLFNwX35Bkh9aL2\nF058u+n8DP/dPeKUAcJKiQZUmzuen5n57x8CAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFFlqgF4FQlb9yP6c+Q3E\nO3tXv+zOMB8GA1UdIwQYMBaAFK9T6sY/PBZVbnHcNcQXf58P4OuPMA0GCSqGSIb3\nDQEBCwUAA4IBAQDeXiS3v1z4jWAo1UvVyKDeHjtrtEH1Rida1eOXauFuEQa5tuOk\nE53Os4haZCW4mOlKjigWs4LN+uLIAe1aFXGo92nGIqyJISHJ1L+bopx/JmIbHMCZ\n0lTNJfR12yBma5VQy7vzeFku/SisKwX0Lov1oHD4MVhJoHbUJYkmAjxorcIHORvh\nI3Vj5XrgDWtLDPL8/Id/roul/L+WX5ir+PGScKBfQIIN2lWdZoqdsx8YWqhm/ikL\nC6qNieSwcvWL7C03ri0DefTQMY54r5wP33QU5hJ71JoaZI3YTeT0Nf+NRL4hM++w\nQ0veeNzBQXg1f/JxfeA39IDIX1kiCf71tGlT\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEDCCAvigAwIBAgIJAJF3HxEqKM4lMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJEUyBhcC1lYXN0LTEgUm9vdCBDQTAe\nFw0xOTAyMTcwMjQ2MTFaFw0yNDAyMTYwMjQ2MTFaMIGUMQswCQYDVQQGEwJVUzEQ\nMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UECgwZ\nQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEl\nMCMGA1UEAwwcQW1hem9uIFJEUyBhcC1lYXN0LTEgUm9vdCBDQTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBAOCVr1Yj5IW4XWa9QOLGJDSz4pqIM6BAbqQp\ngYvzIO4Lv8c8dEnuuuCY8M/zOrJ1iQJ3cDiKGa32HVBVcH+nUdXzw4Jq5jw0hsb6\n/WW2RD2aUe4jCkRD5wNzmeHM4gTgtMZnXNVHpELgKR4wVhSHEfWFTiMsZi35y8mj\nPL98Mz/m/nMnB/59EjMvcJMrsUljHO6B9BMEcvNkwvre9xza0BQWKyiVRcbOpoj1\nw4BPtYYZ+dW2QKw9AmYXwAmCLeATsxrHIJ/IbzS7obxv2QN2Eh4pJ3ghRCFv1XM9\nXVkm13oiCjj7jsxAwF7o+VggPl/GG+/Gwk+TLuaTFNAtROpPxL8CAwEAAaNjMGEw\nDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFK9T6sY/\nPBZVbnHcNcQXf58P4OuPMB8GA1UdIwQYMBaAFK9T6sY/PBZVbnHcNcQXf58P4OuP\nMA0GCSqGSIb3DQEBCwUAA4IBAQBBY+KATaT7ndYT3Ky0VWaiwNfyl1u3aDxr+MKP\nVeDhtOhlob5u0E+edOXUvEXd4A+ntS+U0HmwvtMXtQbQ2EJbsNRqZnS8KG9YB2Yc\nQ99auphW3wMjwHRtflLO5h14aa9SspqJJgcM1R7Z3pAYeq6bpBDxZSGrYtWI64q4\nh4i67qWAGDFcXSTW1kJ00GMlBCIGTeYiu8LYutdsDWzYKkeezJRjx9VR4w7A7e1G\nWmY4aUg/8aPxCioY2zEQKNl55Ghg6Dwy+6BxaV6RlV9r9EaSCai11p1bgS568WQn\n4WNQK36EGe37l2SOpDB6STrq57/rjREvmq803Ylg/Gf6qqzK\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECTCCAvGgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZUxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSYwJAYDVQQDDB1BbWF6b24gUkRTIG1lLXNvdXRoLTEgUm9vdCBDQTAeFw0xOTA1\nMTAyMTU4NDNaFw0yNTA2MDExMjAwMDBaMIGQMQswCQYDVQQGEwJVUzETMBEGA1UE\nCAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9u\nIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEhMB8GA1UE\nAwwYQW1hem9uIFJEUyBtZS1zb3V0aC0xIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC\nAQ8AMIIBCgKCAQEAudOYPZH+ihJAo6hNYMB5izPVBe3TYhnZm8+X3IoaaYiKtsp1\nJJhkTT0CEejYIQ58Fh4QrMUyWvU8qsdK3diNyQRoYLbctsBPgxBR1u07eUJDv38/\nC1JlqgHmMnMi4y68Iy7ymv50QgAMuaBqgEBRI1R6Lfbyrb2YvH5txjJyTVMwuCfd\nYPAtZVouRz0JxmnfsHyxjE+So56uOKTDuw++Ho4HhZ7Qveej7XB8b+PIPuroknd3\nFQB5RVbXRvt5ZcVD4F2fbEdBniF7FAF4dEiofVCQGQ2nynT7dZdEIPfPdH3n7ZmE\nlAOmwHQ6G83OsiHRBLnbp+QZRgOsjkHJxT20bQIDAQABo2YwZDAOBgNVHQ8BAf8E\nBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUOEVDM7VomRH4HVdA\nQvIMNq2tXOcwHwYDVR0jBBgwFoAU54cfDjgwBx4ycBH8+/r8WXdaiqYwDQYJKoZI\nhvcNAQELBQADggEBAHhvMssj+Th8IpNePU6RH0BiL6o9c437R3Q4IEJeFdYL+nZz\nPW/rELDPvLRUNMfKM+KzduLZ+l29HahxefejYPXtvXBlq/E/9czFDD4fWXg+zVou\nuDXhyrV4kNmP4S0eqsAP/jQHPOZAMFA4yVwO9hlqmePhyDnszCh9c1PfJSBh49+b\n4w7i/L3VBOMt8j3EKYvqz0gVfpeqhJwL4Hey8UbVfJRFJMJzfNHpePqtDRAY7yjV\nPYquRaV2ab/E+/7VFkWMM4tazYz/qsYA2jSH+4xDHvYk8LnsbcrF9iuidQmEc5sb\nFgcWaSKG4DJjcI5k7AJLWcXyTDt21Ci43LE+I9Q=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEjCCAvqgAwIBAgIJANew34ehz5l8MA0GCSqGSIb3DQEBCwUAMIGVMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEmMCQGA1UEAwwdQW1hem9uIFJEUyBtZS1zb3V0aC0xIFJvb3QgQ0Ew\nHhcNMTkwNTEwMjE0ODI3WhcNMjQwNTA4MjE0ODI3WjCBlTELMAkGA1UEBhMCVVMx\nEDAOBgNVBAcMB1NlYXR0bGUxEzARBgNVBAgMCldhc2hpbmd0b24xIjAgBgNVBAoM\nGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMx\nJjAkBgNVBAMMHUFtYXpvbiBSRFMgbWUtc291dGgtMSBSb290IENBMIIBIjANBgkq\nhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp7BYV88MukcY+rq0r79+C8UzkT30fEfT\naPXbx1d6M7uheGN4FMaoYmL+JE1NZPaMRIPTHhFtLSdPccInvenRDIatcXX+jgOk\nUA6lnHQ98pwN0pfDUyz/Vph4jBR9LcVkBbe0zdoKKp+HGbMPRU0N2yNrog9gM5O8\ngkU/3O2csJ/OFQNnj4c2NQloGMUpEmedwJMOyQQfcUyt9CvZDfIPNnheUS29jGSw\nERpJe/AENu8Pxyc72jaXQuD+FEi2Ck6lBkSlWYQFhTottAeGvVFNCzKszCntrtqd\nrdYUwurYsLTXDHv9nW2hfDUQa0mhXf9gNDOBIVAZugR9NqNRNyYLHQIDAQABo2Mw\nYTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU54cf\nDjgwBx4ycBH8+/r8WXdaiqYwHwYDVR0jBBgwFoAU54cfDjgwBx4ycBH8+/r8WXda\niqYwDQYJKoZIhvcNAQELBQADggEBAIIMTSPx/dR7jlcxggr+O6OyY49Rlap2laKA\neC/XI4ySP3vQkIFlP822U9Kh8a9s46eR0uiwV4AGLabcu0iKYfXjPkIprVCqeXV7\nny9oDtrbflyj7NcGdZLvuzSwgl9SYTJp7PVCZtZutsPYlbJrBPHwFABvAkMvRtDB\nhitIg4AESDGPoCl94sYHpfDfjpUDMSrAMDUyO6DyBdZH5ryRMAs3lGtsmkkNUrso\naTW6R05681Z0mvkRdb+cdXtKOSuDZPoe2wJJIaz3IlNQNSrB5TImMYgmt6iAsFhv\n3vfTSTKrZDNTJn4ybG6pq1zWExoXsktZPylJly6R3RBwV6nwqBM=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEETCCAvmgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwgZQxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSUwIwYDVQQDDBxBbWF6b24gUkRTIEJldGEgUm9vdCAyMDE5IENBMB4XDTE5MDgy\nMDE3MTAwN1oXDTI0MDgxOTE3MzgyNlowgZkxCzAJBgNVBAYTAlVTMRMwEQYDVQQI\nDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMSIwIAYDVQQKDBlBbWF6b24g\nV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMSowKAYDVQQD\nDCFBbWF6b24gUkRTIEJldGEgdXMtZWFzdC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3\nDQEBAQUAA4IBDwAwggEKAoIBAQDTNCOlotQcLP8TP82U2+nk0bExVuuMVOgFeVMx\nvbUHZQeIj9ikjk+jm6eTDnnkhoZcmJiJgRy+5Jt69QcRbb3y3SAU7VoHgtraVbxF\nQDh7JEHI9tqEEVOA5OvRrDRcyeEYBoTDgh76ROco2lR+/9uCvGtHVrMCtG7BP7ZB\nsSVNAr1IIRZZqKLv2skKT/7mzZR2ivcw9UeBBTUf8xsfiYVBvMGoEsXEycjYdf6w\nWV+7XS7teNOc9UgsFNN+9AhIBc1jvee5E//72/4F8pAttAg/+mmPUyIKtekNJ4gj\nOAR2VAzGx1ybzWPwIgOudZFHXFduxvq4f1hIRPH0KbQ/gkRrAgMBAAGjZjBkMA4G\nA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTkvpCD\n6C43rar9TtJoXr7q8dkrrjAfBgNVHSMEGDAWgBStoQwVpbGx87fxB3dEGDqKKnBT\n4TANBgkqhkiG9w0BAQsFAAOCAQEAJd9fOSkwB3uVdsS+puj6gCER8jqmhd3g/J5V\nZjk9cKS8H0e8pq/tMxeJ8kpurPAzUk5RkCspGt2l0BSwmf3ahr8aJRviMX6AuW3/\ng8aKplTvq/WMNGKLXONa3Sq8591J+ce8gtOX/1rDKmFI4wQ/gUzOSYiT991m7QKS\nFr6HMgFuz7RNJbb3Fy5cnurh8eYWA7mMv7laiLwTNsaro5qsqErD5uXuot6o9beT\na+GiKinEur35tNxAr47ax4IRubuIzyfCrezjfKc5raVV2NURJDyKP0m0CCaffAxE\nqn2dNfYc3v1D8ypg3XjHlOzRo32RB04o8ALHMD9LSwsYDLpMag==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEDCCAvigAwIBAgIJAKFMXyltvuRdMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJEUyBCZXRhIFJvb3QgMjAxOSBDQTAe\nFw0xOTA4MTkxNzM4MjZaFw0yNDA4MTkxNzM4MjZaMIGUMQswCQYDVQQGEwJVUzEQ\nMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UECgwZ\nQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEl\nMCMGA1UEAwwcQW1hem9uIFJEUyBCZXRhIFJvb3QgMjAxOSBDQTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBAMkZdnIH9ndatGAcFo+DppGJ1HUt4x+zeO+0\nZZ29m0sfGetVulmTlv2d5b66e+QXZFWpcPQMouSxxYTW08TbrQiZngKr40JNXftA\natvzBqIImD4II0ZX5UEVj2h98qe/ypW5xaDN7fEa5e8FkYB1TEemPaWIbNXqchcL\ntV7IJPr3Cd7Z5gZJlmujIVDPpMuSiNaal9/6nT9oqN+JSM1fx5SzrU5ssg1Vp1vv\n5Xab64uOg7wCJRB9R2GC9XD04odX6VcxUAGrZo6LR64ZSifupo3l+R5sVOc5i8NH\nskdboTzU9H7+oSdqoAyhIU717PcqeDum23DYlPE2nGBWckE+eT8CAwEAAaNjMGEw\nDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFK2hDBWl\nsbHzt/EHd0QYOooqcFPhMB8GA1UdIwQYMBaAFK2hDBWlsbHzt/EHd0QYOooqcFPh\nMA0GCSqGSIb3DQEBCwUAA4IBAQAO/718k8EnOqJDx6wweUscGTGL/QdKXUzTVRAx\nJUsjNUv49mH2HQVEW7oxszfH6cPCaupNAddMhQc4C/af6GHX8HnqfPDk27/yBQI+\nyBBvIanGgxv9c9wBbmcIaCEWJcsLp3HzXSYHmjiqkViXwCpYfkoV3Ns2m8bp+KCO\ny9XmcCKRaXkt237qmoxoh2sGmBHk2UlQtOsMC0aUQ4d7teAJG0q6pbyZEiPyKZY1\nXR/UVxMJL0Q4iVpcRS1kaNCMfqS2smbLJeNdsan8pkw1dvPhcaVTb7CvjhJtjztF\nYfDzAI5794qMlWxwilKMmUvDlPPOTen8NNHkLwWvyFCH7Doh\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEFzCCAv+gAwIBAgICFSUwDQYJKoZIhvcNAQELBQAwgZcxCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSgwJgYDVQQDDB9BbWF6b24gUkRTIFByZXZpZXcgUm9vdCAyMDE5IENBMB4XDTE5\nMDgyMTIyMzk0N1oXDTI0MDgyMTIyMjk0OVowgZwxCzAJBgNVBAYTAlVTMRMwEQYD\nVQQIDApXYXNoaW5ndG9uMRAwDgYDVQQHDAdTZWF0dGxlMSIwIAYDVQQKDBlBbWF6\nb24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMS0wKwYD\nVQQDDCRBbWF6b24gUkRTIFByZXZpZXcgdXMtZWFzdC0yIDIwMTkgQ0EwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD0dB/U7qRnSf05wOi7m10Pa2uPMTJv\nr6U/3Y17a5prq5Zr4++CnSUYarG51YuIf355dKs+7Lpzs782PIwCmLpzAHKWzix6\npOaTQ+WZ0+vUMTxyqgqWbsBgSCyP7pVBiyqnmLC/L4az9XnscrbAX4pNaoJxsuQe\nmzBo6yofjQaAzCX69DuqxFkVTRQnVy7LCFkVaZtjNAftnAHJjVgQw7lIhdGZp9q9\nIafRt2gteihYfpn+EAQ/t/E4MnhrYs4CPLfS7BaYXBycEKC5Muj1l4GijNNQ0Efo\nxG8LSZz7SNgUvfVwiNTaqfLP3AtEAWiqxyMyh3VO+1HpCjT7uNBFtmF3AgMBAAGj\nZjBkMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQW\nBBQtinkdrj+0B2+qdXngV2tgHnPIujAfBgNVHSMEGDAWgBRp0xqULkNh/w2ZVzEI\no2RIY7O03TANBgkqhkiG9w0BAQsFAAOCAQEAtJdqbCxDeMc8VN1/RzCabw9BIL/z\n73Auh8eFTww/sup26yn8NWUkfbckeDYr1BrXa+rPyLfHpg06kwR8rBKyrs5mHwJx\nbvOzXD/5WTdgreB+2Fb7mXNvWhenYuji1MF+q1R2DXV3I05zWHteKX6Dajmx+Uuq\nYq78oaCBSV48hMxWlp8fm40ANCL1+gzQ122xweMFN09FmNYFhwuW+Ao+Vv90ZfQG\nPYwTvN4n/gegw2TYcifGZC2PNX74q3DH03DXe5fvNgRW5plgz/7f+9mS+YHd5qa9\ntYTPUvoRbi169ou6jicsMKUKPORHWhiTpSCWR1FMMIbsAcsyrvtIsuaGCQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEFjCCAv6gAwIBAgIJAMzYZJ+R9NBVMA0GCSqGSIb3DQEBCwUAMIGXMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEoMCYGA1UEAwwfQW1hem9uIFJEUyBQcmV2aWV3IFJvb3QgMjAxOSBD\nQTAeFw0xOTA4MjEyMjI5NDlaFw0yNDA4MjEyMjI5NDlaMIGXMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEoMCYGA1UEAwwfQW1hem9uIFJEUyBQcmV2aWV3IFJvb3QgMjAxOSBDQTCCASIw\nDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM7kkS6vjgKKQTPynC2NjdN5aPPV\nO71G0JJS/2ARVBVJd93JLiGovVJilfWYfwZCs4gTRSSjrUD4D4HyqCd6A+eEEtJq\nM0DEC7i0dC+9WNTsPszuB206Jy2IUmxZMIKJAA1NHSbIMjB+b6/JhbSUi7nKdbR/\nbrj83bF+RoSA+ogrgX7mQbxhmFcoZN9OGaJgYKsKWUt5Wqv627KkGodUK8mDepgD\nS3ZfoRQRx3iceETpcmHJvaIge6+vyDX3d9Z22jmvQ4AKv3py2CmU2UwuhOltFDwB\n0ddtb39vgwrJxaGfiMRHpEP1DfNLWHAnA69/pgZPwIggidS+iBPUhgucMp8CAwEA\nAaNjMGEwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE\nFGnTGpQuQ2H/DZlXMQijZEhjs7TdMB8GA1UdIwQYMBaAFGnTGpQuQ2H/DZlXMQij\nZEhjs7TdMA0GCSqGSIb3DQEBCwUAA4IBAQC3xz1vQvcXAfpcZlngiRWeqU8zQAMQ\nLZPCFNv7PVk4pmqX+ZiIRo4f9Zy7TrOVcboCnqmP/b/mNq0gVF4O+88jwXJZD+f8\n/RnABMZcnGU+vK0YmxsAtYU6TIb1uhRFmbF8K80HHbj9vSjBGIQdPCbvmR2zY6VJ\nBYM+w9U9hp6H4DVMLKXPc1bFlKA5OBTgUtgkDibWJKFOEPW3UOYwp9uq6pFoN0AO\nxMTldqWFsOF3bJIlvOY0c/1EFZXu3Ns6/oCP//Ap9vumldYMUZWmbK+gK33FPOXV\n8BQ6jNC29icv7lLDpRPwjibJBXX+peDR5UK4FdYcswWEB1Tix5X8dYu6\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgICVIYwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MDQxNzEz\nMDRaFw0yNDA4MjIxNzA4NTBaMIGVMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEmMCQGA1UEAwwdQW1h\nem9uIFJEUyBhcC1zb3V0aC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQDUYOz1hGL42yUCrcsMSOoU8AeD/3KgZ4q7gP+vAz1WnY9K/kim\neWN/2Qqzlo3+mxSFQFyD4MyV3+CnCPnBl9Sh1G/F6kThNiJ7dEWSWBQGAB6HMDbC\nBaAsmUc1UIz8sLTL3fO+S9wYhA63Wun0Fbm/Rn2yk/4WnJAaMZcEtYf6e0KNa0LM\np/kN/70/8cD3iz3dDR8zOZFpHoCtf0ek80QqTich0A9n3JLxR6g6tpwoYviVg89e\nqCjQ4axxOkWWeusLeTJCcY6CkVyFvDAKvcUl1ytM5AiaUkXblE7zDFXRM4qMMRdt\nlPm8d3pFxh0fRYk8bIKnpmtOpz3RIctDrZZxAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBT99wKJftD3jb4sHoHG\ni3uGlH6W6TAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAZ17hhr3dII3hUfuHQ1hPWGrpJOX/G9dLzkprEIcCidkmRYl+\nhu1Pe3caRMh/17+qsoEErmnVq5jNY9X1GZL04IZH8YbHc7iRHw3HcWAdhN8633+K\njYEB2LbJ3vluCGnCejq9djDb6alOugdLMJzxOkHDhMZ6/gYbECOot+ph1tQuZXzD\ntZ7prRsrcuPBChHlPjmGy8M9z8u+kF196iNSUGC4lM8vLkHM7ycc1/ZOwRq9aaTe\niOghbQQyAEe03MWCyDGtSmDfr0qEk+CHN+6hPiaL8qKt4s+V9P7DeK4iW08ny8Ox\nAVS7u0OK/5+jKMAMrKwpYrBydOjTUTHScocyNw==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBjCCAu6gAwIBAgIJAMc0ZzaSUK51MA0GCSqGSIb3DQEBCwUAMIGPMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEgMB4GA1UEAwwXQW1hem9uIFJEUyBSb290IDIwMTkgQ0EwHhcNMTkw\nODIyMTcwODUwWhcNMjQwODIyMTcwODUwWjCBjzELMAkGA1UEBhMCVVMxEDAOBgNV\nBAcMB1NlYXR0bGUxEzARBgNVBAgMCldhc2hpbmd0b24xIjAgBgNVBAoMGUFtYXpv\nbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxIDAeBgNV\nBAMMF0FtYXpvbiBSRFMgUm9vdCAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEFAAOC\nAQ8AMIIBCgKCAQEArXnF/E6/Qh+ku3hQTSKPMhQQlCpoWvnIthzX6MK3p5a0eXKZ\noWIjYcNNG6UwJjp4fUXl6glp53Jobn+tWNX88dNH2n8DVbppSwScVE2LpuL+94vY\n0EYE/XxN7svKea8YvlrqkUBKyxLxTjh+U/KrGOaHxz9v0l6ZNlDbuaZw3qIWdD/I\n6aNbGeRUVtpM6P+bWIoxVl/caQylQS6CEYUk+CpVyJSkopwJlzXT07tMoDL5WgX9\nO08KVgDNz9qP/IGtAcRduRcNioH3E9v981QO1zt/Gpb2f8NqAjUUCUZzOnij6mx9\nMcZ+9cWX88CRzR0vQODWuZscgI08NvM69Fn2SQIDAQABo2MwYTAOBgNVHQ8BAf8E\nBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUc19g2LzLA5j0Kxc0LjZa\npmD/vB8wHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJKoZIhvcN\nAQELBQADggEBAHAG7WTmyjzPRIM85rVj+fWHsLIvqpw6DObIjMWokpliCeMINZFV\nynfgBKsf1ExwbvJNzYFXW6dihnguDG9VMPpi2up/ctQTN8tm9nDKOy08uNZoofMc\nNUZxKCEkVKZv+IL4oHoeayt8egtv3ujJM6V14AstMQ6SwvwvA93EP/Ug2e4WAXHu\ncbI1NAbUgVDqp+DRdfvZkgYKryjTWd/0+1fS8X1bBZVWzl7eirNVnHbSH2ZDpNuY\n0SBd8dj5F6ld3t58ydZbrTHze7JJOd8ijySAp4/kiu9UfZWuTPABzDa/DSdz9Dk/\nzPW4CXXvhLmE02TA9/HeCw3KEHIwicNuEfw=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICQ2QwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MDUxODQ2\nMjlaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBzYS1lYXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAMMvR+ReRnOzqJzoaPipNTt1Z2VA968jlN1+SYKUrYM3No+Vpz0H\nM6Tn0oYB66ByVsXiGc28ulsqX1HbHsxqDPwvQTKvO7SrmDokoAkjJgLocOLUAeld\n5AwvUjxGRP6yY90NV7X786MpnYb2Il9DIIaV9HjCmPt+rjy2CZjS0UjPjCKNfB8J\nbFjgW6GGscjeyGb/zFwcom5p4j0rLydbNaOr9wOyQrtt3ZQWLYGY9Zees/b8pmcc\nJt+7jstZ2UMV32OO/kIsJ4rMUn2r/uxccPwAc1IDeRSSxOrnFKhW3Cu69iB3bHp7\nJbawY12g7zshE4I14sHjv3QoXASoXjx4xgMCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFI1Fc/Ql2jx+oJPgBVYq\nccgP0pQ8MB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQB4VVVabVp70myuYuZ3vltQIWqSUMhkaTzehMgGcHjMf9iLoZ/I\n93KiFUSGnek5cRePyS9wcpp0fcBT3FvkjpUdCjVtdttJgZFhBxgTd8y26ImdDDMR\n4+BUuhI5msvjL08f+Vkkpu1GQcGmyFVPFOy/UY8iefu+QyUuiBUnUuEDd49Hw0Fn\n/kIPII6Vj82a2mWV/Q8e+rgN8dIRksRjKI03DEoP8lhPlsOkhdwU6Uz9Vu6NOB2Q\nLs1kbcxAc7cFSyRVJEhh12Sz9d0q/CQSTFsVJKOjSNQBQfVnLz1GwO/IieUEAr4C\njkTntH0r1LX5b/GwN4R887LvjAEdTbg1his7\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgIDAIkHMA0GCSqGSIb3DQEBCwUAMIGPMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEgMB4GA1UEAwwXQW1hem9uIFJEUyBSb290IDIwMTkgQ0EwHhcNMTkwOTA2MTc0\nMDIxWhcNMjQwODIyMTcwODUwWjCBlDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldh\nc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoMGUFtYXpvbiBXZWIg\nU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxJTAjBgNVBAMMHEFt\nYXpvbiBSRFMgdXMtd2VzdC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQDD2yzbbAl77OofTghDMEf624OvU0eS9O+lsdO0QlbfUfWa1Kd6\n0WkgjkLZGfSRxEHMCnrv4UPBSK/Qwn6FTjkDLgemhqBtAnplN4VsoDL+BkRX4Wwq\n/dSQJE2b+0hm9w9UMVGFDEq1TMotGGTD2B71eh9HEKzKhGzqiNeGsiX4VV+LJzdH\nuM23eGisNqmd4iJV0zcAZ+Gbh2zK6fqTOCvXtm7Idccv8vZZnyk1FiWl3NR4WAgK\nAkvWTIoFU3Mt7dIXKKClVmvssG8WHCkd3Xcb4FHy/G756UZcq67gMMTX/9fOFM/v\nl5C0+CHl33Yig1vIDZd+fXV1KZD84dEJfEvHAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBR+ap20kO/6A7pPxo3+\nT3CfqZpQWjAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAHCJky2tPjPttlDM/RIqExupBkNrnSYnOK4kr9xJ3sl8UF2DA\nPAnYsjXp3rfcjN/k/FVOhxwzi3cXJF/2Tjj39Bm/OEfYTOJDNYtBwB0VVH4ffa/6\ntZl87jaIkrxJcreeeHqYMnIxeN0b/kliyA+a5L2Yb0VPjt9INq34QDc1v74FNZ17\n4z8nr1nzg4xsOWu0Dbjo966lm4nOYIGBRGOKEkHZRZ4mEiMgr3YLkv8gSmeitx57\nZ6dVemNtUic/LVo5Iqw4n3TBS0iF2C1Q1xT/s3h+0SXZlfOWttzSluDvoMv5PvCd\npFjNn+aXLAALoihL1MJSsxydtsLjOBro5eK0Vw==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICOFAwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTAxNzQ2\nMjFaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1ub3J0aGVhc3QtMiAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAzU72e6XbaJbi4HjJoRNjKxzUEuChKQIt7k3CWzNnmjc5\n8I1MjCpa2W1iw1BYVysXSNSsLOtUsfvBZxi/1uyMn5ZCaf9aeoA9UsSkFSZBjOCN\nDpKPCmfV1zcEOvJz26+1m8WDg+8Oa60QV0ou2AU1tYcw98fOQjcAES0JXXB80P2s\n3UfkNcnDz+l4k7j4SllhFPhH6BQ4lD2NiFAP4HwoG6FeJUn45EPjzrydxjq6v5Fc\ncQ8rGuHADVXotDbEhaYhNjIrsPL+puhjWfhJjheEw8c4whRZNp6gJ/b6WEes/ZhZ\nh32DwsDsZw0BfRDUMgUn8TdecNexHUw8vQWeC181hwIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUwW9bWgkWkr0U\nlrOsq2kvIdrECDgwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAEugF0Gj7HVhX0ehPZoGRYRt3PBuI2YjfrrJRTZ9X5wc\n9T8oHmw07mHmNy1qqWvooNJg09bDGfB0k5goC2emDiIiGfc/kvMLI7u+eQOoMKj6\nmkfCncyRN3ty08Po45vTLBFZGUvtQmjM6yKewc4sXiASSBmQUpsMbiHRCL72M5qV\nobcJOjGcIdDTmV1BHdWT+XcjynsGjUqOvQWWhhLPrn4jWe6Xuxll75qlrpn3IrIx\nCRBv/5r7qbcQJPOgwQsyK4kv9Ly8g7YT1/vYBlR3cRsYQjccw5ceWUj2DrMVWhJ4\nprf+E3Aa4vYmLLOUUvKnDQ1k3RGNu56V0tonsQbfsaM=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECjCCAvKgAwIBAgICEzUwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTAyMDUy\nMjVaFw0yNDA4MjIxNzA4NTBaMIGXMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEoMCYGA1UEAwwfQW1h\nem9uIFJEUyBjYS1jZW50cmFsLTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBAOxHqdcPSA2uBjsCP4DLSlqSoPuQ/X1kkJLusVRKiQE2zayB\nviuCBt4VB9Qsh2rW3iYGM+usDjltGnI1iUWA5KHcvHszSMkWAOYWLiMNKTlg6LCp\nXnE89tvj5dIH6U8WlDvXLdjB/h30gW9JEX7S8supsBSci2GxEzb5mRdKaDuuF/0O\nqvz4YE04pua3iZ9QwmMFuTAOYzD1M72aOpj+7Ac+YLMM61qOtU+AU6MndnQkKoQi\nqmUN2A9IFaqHFzRlSdXwKCKUA4otzmz+/N3vFwjb5F4DSsbsrMfjeHMo6o/nb6Nh\nYDb0VJxxPee6TxSuN7CQJ2FxMlFUezcoXqwqXD0CAwEAAaNmMGQwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFDGGpon9WfIpsggE\nCxHq8hZ7E2ESMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqG\nSIb3DQEBCwUAA4IBAQAvpeQYEGZvoTVLgV9rd2+StPYykMsmFjWQcyn3dBTZRXC2\nlKq7QhQczMAOhEaaN29ZprjQzsA2X/UauKzLR2Uyqc2qOeO9/YOl0H3qauo8C/W9\nr8xqPbOCDLEXlOQ19fidXyyEPHEq5WFp8j+fTh+s8WOx2M7IuC0ANEetIZURYhSp\nxl9XOPRCJxOhj7JdelhpweX0BJDNHeUFi0ClnFOws8oKQ7sQEv66d5ddxqqZ3NVv\nRbCvCtEutQMOUMIuaygDlMn1anSM8N7Wndx8G6+Uy67AnhjGx7jw/0YPPxopEj6x\nJXP8j0sJbcT9K/9/fPVLNT25RvQ/93T2+IQL4Ca2\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICYpgwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTExNzMx\nNDhaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBldS13ZXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAMk3YdSZ64iAYp6MyyKtYJtNzv7zFSnnNf6vv0FB4VnfITTMmOyZ\nLXqKAT2ahZ00hXi34ewqJElgU6eUZT/QlzdIu359TEZyLVPwURflL6SWgdG01Q5X\nO++7fSGcBRyIeuQWs9FJNIIqK8daF6qw0Rl5TXfu7P9dBc3zkgDXZm2DHmxGDD69\n7liQUiXzoE1q2Z9cA8+jirDioJxN9av8hQt12pskLQumhlArsMIhjhHRgF03HOh5\ntvi+RCfihVOxELyIRTRpTNiIwAqfZxxTWFTgfn+gijTmd0/1DseAe82aYic8JbuS\nEMbrDduAWsqrnJ4GPzxHKLXX0JasCUcWyMECAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFPLtsq1NrwJXO13C9eHt\nsLY11AGwMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQAnWBKj5xV1A1mYd0kIgDdkjCwQkiKF5bjIbGkT3YEFFbXoJlSP\n0lZZ/hDaOHI8wbLT44SzOvPEEmWF9EE7SJzkvSdQrUAWR9FwDLaU427ALI3ngNHy\nlGJ2hse1fvSRNbmg8Sc9GBv8oqNIBPVuw+AJzHTacZ1OkyLZrz1c1QvwvwN2a+Jd\nvH0V0YIhv66llKcYDMUQJAQi4+8nbRxXWv6Gq3pvrFoorzsnkr42V3JpbhnYiK+9\nnRKd4uWl62KRZjGkfMbmsqZpj2fdSWMY1UGyN1k+kDmCSWYdrTRDP0xjtIocwg+A\nJ116n4hV/5mbA0BaPiS2krtv17YAeHABZcvz\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECjCCAvKgAwIBAgICV2YwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTExOTM2\nMjBaFw0yNDA4MjIxNzA4NTBaMIGXMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEoMCYGA1UEAwwfQW1h\nem9uIFJEUyBldS1jZW50cmFsLTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBAMEx54X2pHVv86APA0RWqxxRNmdkhAyp2R1cFWumKQRofoFv\nn+SPXdkpIINpMuEIGJANozdiEz7SPsrAf8WHyD93j/ZxrdQftRcIGH41xasetKGl\nI67uans8d+pgJgBKGb/Z+B5m+UsIuEVekpvgpwKtmmaLFC/NCGuSsJoFsRqoa6Gh\nm34W6yJoY87UatddCqLY4IIXaBFsgK9Q/wYzYLbnWM6ZZvhJ52VMtdhcdzeTHNW0\n5LGuXJOF7Ahb4JkEhoo6TS2c0NxB4l4MBfBPgti+O7WjR3FfZHpt18A6Zkq6A2u6\nD/oTSL6c9/3sAaFTFgMyL3wHb2YlW0BPiljZIqECAwEAAaNmMGQwDgYDVR0PAQH/\nBAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFOcAToAc6skWffJa\nTnreaswAfrbcMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqG\nSIb3DQEBCwUAA4IBAQA1d0Whc1QtspK496mFWfFEQNegLh0a9GWYlJm+Htcj5Nxt\nDAIGXb+8xrtOZFHmYP7VLCT5Zd2C+XytqseK/+s07iAr0/EPF+O2qcyQWMN5KhgE\ncXw2SwuP9FPV3i+YAm11PBVeenrmzuk9NrdHQ7TxU4v7VGhcsd2C++0EisrmquWH\nmgIfmVDGxphwoES52cY6t3fbnXmTkvENvR+h3rj+fUiSz0aSo+XZUGHPgvuEKM/W\nCBD9Smc9CBoBgvy7BgHRgRUmwtABZHFUIEjHI5rIr7ZvYn+6A0O6sogRfvVYtWFc\nqpyrW1YX8mD0VlJ8fGKM3G+aCOsiiPKDV/Uafrm+\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgICGAcwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTIxODE5\nNDRaFw0yNDA4MjIxNzA4NTBaMIGVMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEmMCQGA1UEAwwdQW1h\nem9uIFJEUyBldS1ub3J0aC0xIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCiIYnhe4UNBbdBb/nQxl5giM0XoVHWNrYV5nB0YukA98+TPn9v\nAoj1RGYmtryjhrf01Kuv8SWO+Eom95L3zquoTFcE2gmxCfk7bp6qJJ3eHOJB+QUO\nXsNRh76fwDzEF1yTeZWH49oeL2xO13EAx4PbZuZpZBttBM5zAxgZkqu4uWQczFEs\nJXfla7z2fvWmGcTagX10O5C18XaFroV0ubvSyIi75ue9ykg/nlFAeB7O0Wxae88e\nuhiBEFAuLYdqWnsg3459NfV8Yi1GnaitTym6VI3tHKIFiUvkSiy0DAlAGV2iiyJE\nq+DsVEO4/hSINJEtII4TMtysOsYPpINqeEzRAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBRR0UpnbQyjnHChgmOc\nhnlc0PogzTAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAKJD4xVzSf4zSGTBJrmamo86jl1NHQxXUApAZuBZEc8tqC6TI\nT5CeoSr9CMuVC8grYyBjXblC4OsM5NMvmsrXl/u5C9dEwtBFjo8mm53rOOIm1fxl\nI1oYB/9mtO9ANWjkykuLzWeBlqDT/i7ckaKwalhLODsRDO73vRhYNjsIUGloNsKe\npxw3dzHwAZx4upSdEVG4RGCZ1D0LJ4Gw40OfD69hfkDfRVVxKGrbEzqxXRvovmDc\ntKLdYZO/6REoca36v4BlgIs1CbUXJGLSXUwtg7YXGLSVBJ/U0+22iGJmBSNcoyUN\ncjPFD9JQEhDDIYYKSGzIYpvslvGc4T5ISXFiuQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICZIEwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTIyMTMy\nMzJaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBldS13ZXN0LTIgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBALGiwqjiF7xIjT0Sx7zB3764K2T2a1DHnAxEOr+/EIftWKxWzT3u\nPFwS2eEZcnKqSdRQ+vRzonLBeNLO4z8aLjQnNbkizZMBuXGm4BqRm1Kgq3nlLDQn\n7YqdijOq54SpShvR/8zsO4sgMDMmHIYAJJOJqBdaus2smRt0NobIKc0liy7759KB\n6kmQ47Gg+kfIwxrQA5zlvPLeQImxSoPi9LdbRoKvu7Iot7SOa+jGhVBh3VdqndJX\n7tm/saj4NE375csmMETFLAOXjat7zViMRwVorX4V6AzEg1vkzxXpA9N7qywWIT5Y\nfYaq5M8i6vvLg0CzrH9fHORtnkdjdu1y+0MCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFFOhOx1yt3Z7mvGB9jBv\n2ymdZwiOMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQBehqY36UGDvPVU9+vtaYGr38dBbp+LzkjZzHwKT1XJSSUc2wqM\nhnCIQKilonrTIvP1vmkQi8qHPvDRtBZKqvz/AErW/ZwQdZzqYNFd+BmOXaeZWV0Q\noHtDzXmcwtP8aUQpxN0e1xkWb1E80qoy+0uuRqb/50b/R4Q5qqSfJhkn6z8nwB10\n7RjLtJPrK8igxdpr3tGUzfAOyiPrIDncY7UJaL84GFp7WWAkH0WG3H8Y8DRcRXOU\nmqDxDLUP3rNuow3jnGxiUY+gGX5OqaZg4f4P6QzOSmeQYs6nLpH0PiN00+oS1BbD\nbpWdZEttILPI+vAYkU4QuBKKDjJL6HbSd+cn\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECDCCAvCgAwIBAgIDAIVCMA0GCSqGSIb3DQEBCwUAMIGPMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEgMB4GA1UEAwwXQW1hem9uIFJEUyBSb290IDIwMTkgQ0EwHhcNMTkwOTEzMTcw\nNjQxWhcNMjQwODIyMTcwODUwWjCBlDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldh\nc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoMGUFtYXpvbiBXZWIg\nU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxJTAjBgNVBAMMHEFt\nYXpvbiBSRFMgdXMtZWFzdC0yIDIwMTkgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQDE+T2xYjUbxOp+pv+gRA3FO24+1zCWgXTDF1DHrh1lsPg5k7ht\n2KPYzNc+Vg4E+jgPiW0BQnA6jStX5EqVh8BU60zELlxMNvpg4KumniMCZ3krtMUC\nau1NF9rM7HBh+O+DYMBLK5eSIVt6lZosOb7bCi3V6wMLA8YqWSWqabkxwN4w0vXI\n8lu5uXXFRemHnlNf+yA/4YtN4uaAyd0ami9+klwdkZfkrDOaiy59haOeBGL8EB/c\ndbJJlguHH5CpCscs3RKtOOjEonXnKXldxarFdkMzi+aIIjQ8GyUOSAXHtQHb3gZ4\nnS6Ey0CMlwkB8vUObZU9fnjKJcL5QCQqOfwvAgMBAAGjZjBkMA4GA1UdDwEB/wQE\nAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBQUPuRHohPxx4VjykmH\n6usGrLL1ETAfBgNVHSMEGDAWgBRzX2DYvMsDmPQrFzQuNlqmYP+8HzANBgkqhkiG\n9w0BAQsFAAOCAQEAUdR9Vb3y33Yj6X6KGtuthZ08SwjImVQPtknzpajNE5jOJAh8\nquvQnU9nlnMO85fVDU1Dz3lLHGJ/YG1pt1Cqq2QQ200JcWCvBRgdvH6MjHoDQpqZ\nHvQ3vLgOGqCLNQKFuet9BdpsHzsctKvCVaeBqbGpeCtt3Hh/26tgx0rorPLw90A2\nV8QSkZJjlcKkLa58N5CMM8Xz8KLWg3MZeT4DmlUXVCukqK2RGuP2L+aME8dOxqNv\nOnOz1zrL5mR2iJoDpk8+VE/eBDmJX40IJk6jBjWoxAO/RXq+vBozuF5YHN1ujE92\ntO8HItgTp37XT8bJBAiAnt5mxw+NLSqtxk2QdQ==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICY4kwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTMyMDEx\nNDJaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1zb3V0aGVhc3QtMSAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAr5u9OuLL/OF/fBNUX2kINJLzFl4DnmrhnLuSeSnBPgbb\nqddjf5EFFJBfv7IYiIWEFPDbDG5hoBwgMup5bZDbas+ZTJTotnnxVJTQ6wlhTmns\neHECcg2pqGIKGrxZfbQhlj08/4nNAPvyYCTS0bEcmQ1emuDPyvJBYDDLDU6AbCB5\n6Z7YKFQPTiCBblvvNzchjLWF9IpkqiTsPHiEt21sAdABxj9ityStV3ja/W9BfgxH\nwzABSTAQT6FbDwmQMo7dcFOPRX+hewQSic2Rn1XYjmNYzgEHisdUsH7eeXREAcTw\n61TRvaLH8AiOWBnTEJXPAe6wYfrcSd1pD0MXpoB62wIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUytwMiomQOgX5\nIchd+2lDWRUhkikwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBACf6lRDpfCD7BFRqiWM45hqIzffIaysmVfr+Jr+fBTjP\nuYe/ba1omSrNGG23bOcT9LJ8hkQJ9d+FxUwYyICQNWOy6ejicm4z0C3VhphbTPqj\nyjpt9nG56IAcV8BcRJh4o/2IfLNzC/dVuYJV8wj7XzwlvjysenwdrJCoLadkTr1h\neIdG6Le07sB9IxrGJL9e04afk37h7c8ESGSE4E+oS4JQEi3ATq8ne1B9DQ9SasXi\nIRmhNAaISDzOPdyLXi9N9V9Lwe/DHcja7hgLGYx3UqfjhLhOKwp8HtoZORixAmOI\nHfILgNmwyugAbuZoCazSKKBhQ0wgO0WZ66ZKTMG8Oho=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICUYkwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTYxODIx\nMTVaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyB1cy13ZXN0LTIgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBANCEZBZyu6yJQFZBJmSUZfSZd3Ui2gitczMKC4FLr0QzkbxY+cLa\nuVONIOrPt4Rwi+3h/UdnUg917xao3S53XDf1TDMFEYp4U8EFPXqCn/GXBIWlU86P\nPvBN+gzw3nS+aco7WXb+woTouvFVkk8FGU7J532llW8o/9ydQyDIMtdIkKTuMfho\nOiNHSaNc+QXQ32TgvM9A/6q7ksUoNXGCP8hDOkSZ/YOLiI5TcdLh/aWj00ziL5bj\npvytiMZkilnc9dLY9QhRNr0vGqL0xjmWdoEXz9/OwjmCihHqJq+20MJPsvFm7D6a\n2NKybR9U+ddrjb8/iyLOjURUZnj5O+2+OPcCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFEBxMBdv81xuzqcK5TVu\npHj+Aor8MB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQBZkfiVqGoJjBI37aTlLOSjLcjI75L5wBrwO39q+B4cwcmpj58P\n3sivv+jhYfAGEbQnGRzjuFoyPzWnZ1DesRExX+wrmHsLLQbF2kVjLZhEJMHF9eB7\nGZlTPdTzHErcnuXkwA/OqyXMpj9aghcQFuhCNguEfnROY9sAoK2PTfnTz9NJHL+Q\nUpDLEJEUfc0GZMVWYhahc0x38ZnSY2SKacIPECQrTI0KpqZv/P+ijCEcMD9xmYEb\njL4en+XKS1uJpw5fIU5Sj0MxhdGstH6S84iAE5J3GM3XHklGSFwwqPYvuTXvANH6\nuboynxRgSae59jIlAK6Jrr6GWMwQRbgcaAlW\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICEkYwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTYxOTUz\nNDdaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1zb3V0aGVhc3QtMiAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAufodI2Flker8q7PXZG0P0vmFSlhQDw907A6eJuF/WeMo\nGHnll3b4S6nC3oRS3nGeRMHbyU2KKXDwXNb3Mheu+ox+n5eb/BJ17eoj9HbQR1cd\ngEkIciiAltf8gpMMQH4anP7TD+HNFlZnP7ii3geEJB2GGXSxgSWvUzH4etL67Zmn\nTpGDWQMB0T8lK2ziLCMF4XAC/8xDELN/buHCNuhDpxpPebhct0T+f6Arzsiswt2j\n7OeNeLLZwIZvVwAKF7zUFjC6m7/VmTQC8nidVY559D6l0UhhU0Co/txgq3HVsMOH\nPbxmQUwJEKAzQXoIi+4uZzHFZrvov/nDTNJUhC6DqwIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUwaZpaCme+EiV\nM5gcjeHZSTgOn4owHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAAR6a2meCZuXO2TF9bGqKGtZmaah4pH2ETcEVUjkvXVz\nsl+ZKbYjrun+VkcMGGKLUjS812e7eDF726ptoku9/PZZIxlJB0isC/0OyixI8N4M\nNsEyvp52XN9QundTjkl362bomPnHAApeU0mRbMDRR2JdT70u6yAzGLGsUwMkoNnw\n1VR4XKhXHYGWo7KMvFrZ1KcjWhubxLHxZWXRulPVtGmyWg/MvE6KF+2XMLhojhUL\n+9jB3Fpn53s6KMx5tVq1x8PukHmowcZuAF8k+W4gk8Y68wIwynrdZrKRyRv6CVtR\nFZ8DeJgoNZT3y/GT254VqMxxfuy2Ccb/RInd16tEvVk=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICOYIwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTcyMDA1\nMjlaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1ub3J0aGVhc3QtMyAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEA4dMak8W+XW8y/2F6nRiytFiA4XLwePadqWebGtlIgyCS\nkbug8Jv5w7nlMkuxOxoUeD4WhI6A9EkAn3r0REM/2f0aYnd2KPxeqS2MrtdxxHw1\nxoOxk2x0piNSlOz6yog1idsKR5Wurf94fvM9FdTrMYPPrDabbGqiBMsZZmoHLvA3\nZ+57HEV2tU0Ei3vWeGIqnNjIekS+E06KhASxrkNU5vi611UsnYZlSi0VtJsH4UGV\nLhnHl53aZL0YFO5mn/fzuNG/51qgk/6EFMMhaWInXX49Dia9FnnuWXwVwi6uX1Wn\n7kjoHi5VtmC8ZlGEHroxX2DxEr6bhJTEpcLMnoQMqwIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUsUI5Cb3SWB8+\ngv1YLN/ABPMdxSAwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAJAF3E9PM1uzVL8YNdzb6fwJrxxqI2shvaMVmC1mXS+w\nG0zh4v2hBZOf91l1EO0rwFD7+fxoI6hzQfMxIczh875T6vUXePKVOCOKI5wCrDad\nzQbVqbFbdhsBjF4aUilOdtw2qjjs9JwPuB0VXN4/jY7m21oKEOcnpe36+7OiSPjN\nxngYewCXKrSRqoj3mw+0w/+exYj3Wsush7uFssX18av78G+ehKPIVDXptOCP/N7W\n8iKVNeQ2QGTnu2fzWsGUSvMGyM7yqT+h1ILaT//yQS8er511aHMLc142bD4D9VSy\nDgactwPDTShK/PXqhvNey9v/sKXm4XatZvwcc8KYlW4=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgICcEUwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTgxNjU2\nMjBaFw0yNDA4MjIxNzA4NTBaMIGZMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzEqMCgGA1UEAwwhQW1h\nem9uIFJEUyBhcC1ub3J0aGVhc3QtMSAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEAndtkldmHtk4TVQAyqhAvtEHSMb6pLhyKrIFved1WO3S7\n+I+bWwv9b2W/ljJxLq9kdT43bhvzonNtI4a1LAohS6bqyirmk8sFfsWT3akb+4Sx\n1sjc8Ovc9eqIWJCrUiSvv7+cS7ZTA9AgM1PxvHcsqrcUXiK3Jd/Dax9jdZE1e15s\nBEhb2OEPE+tClFZ+soj8h8Pl2Clo5OAppEzYI4LmFKtp1X/BOf62k4jviXuCSst3\nUnRJzE/CXtjmN6oZySVWSe0rQYuyqRl6//9nK40cfGKyxVnimB8XrrcxUN743Vud\nQQVU0Esm8OVTX013mXWQXJHP2c0aKkog8LOga0vobQIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQULmoOS1mFSjj+\nsnUPx4DgS3SkLFYwHwYDVR0jBBgwFoAUc19g2LzLA5j0Kxc0LjZapmD/vB8wDQYJ\nKoZIhvcNAQELBQADggEBAAkVL2P1M2/G9GM3DANVAqYOwmX0Xk58YBHQu6iiQg4j\nb4Ky/qsZIsgT7YBsZA4AOcPKQFgGTWhe9pvhmXqoN3RYltN8Vn7TbUm/ZVDoMsrM\ngwv0+TKxW1/u7s8cXYfHPiTzVSJuOogHx99kBW6b2f99GbP7O1Sv3sLq4j6lVvBX\nFiacf5LAWC925nvlTzLlBgIc3O9xDtFeAGtZcEtxZJ4fnGXiqEnN4539+nqzIyYq\nnvlgCzyvcfRAxwltrJHuuRu6Maw5AGcd2Y0saMhqOVq9KYKFKuD/927BTrbd2JVf\n2sGWyuPZPCk3gq+5pCjbD0c6DkhcMGI6WwxvM5V/zSM=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICJDQwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTgxNzAz\nMTVaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyBldS13ZXN0LTMgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAL9bL7KE0n02DLVtlZ2PL+g/BuHpMYFq2JnE2RgompGurDIZdjmh\n1pxfL3nT+QIVMubuAOy8InRfkRxfpxyjKYdfLJTPJG+jDVL+wDcPpACFVqoV7Prg\npVYEV0lc5aoYw4bSeYFhdzgim6F8iyjoPnObjll9mo4XsHzSoqJLCd0QC+VG9Fw2\nq+GDRZrLRmVM2oNGDRbGpGIFg77aRxRapFZa8SnUgs2AqzuzKiprVH5i0S0M6dWr\ni+kk5epmTtkiDHceX+dP/0R1NcnkCPoQ9TglyXyPdUdTPPRfKCq12dftqll+u4mV\nARdN6WFjovxax8EAP2OAUTi1afY+1JFMj+sCAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFLfhrbrO5exkCVgxW0x3\nY2mAi8lNMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQAigQ5VBNGyw+OZFXwxeJEAUYaXVoP/qrhTOJ6mCE2DXUVEoJeV\nSxScy/TlFA9tJXqmit8JH8VQ/xDL4ubBfeMFAIAo4WzNWDVoeVMqphVEcDWBHsI1\nAETWzfsapRS9yQekOMmxg63d/nV8xewIl8aNVTHdHYXMqhhik47VrmaVEok1UQb3\nO971RadLXIEbVd9tjY5bMEHm89JsZDnDEw1hQXBb67Elu64OOxoKaHBgUH8AZn/2\nzFsL1ynNUjOhCSAA15pgd1vjwc0YsBbAEBPcHBWYBEyME6NLNarjOzBl4FMtATSF\nwWCKRGkvqN8oxYhwR2jf2rR5Mu4DWkK5Q8Ep\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEBzCCAu+gAwIBAgICJVUwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVT\nMRAwDgYDVQQHDAdTZWF0dGxlMRMwEQYDVQQIDApXYXNoaW5ndG9uMSIwIAYDVQQK\nDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMuMRMwEQYDVQQLDApBbWF6b24gUkRT\nMSAwHgYDVQQDDBdBbWF6b24gUkRTIFJvb3QgMjAxOSBDQTAeFw0xOTA5MTkxODE2\nNTNaFw0yNDA4MjIxNzA4NTBaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECAwKV2Fz\naGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEiMCAGA1UECgwZQW1hem9uIFdlYiBT\nZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1h\nem9uIFJEUyB1cy1lYXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP\nADCCAQoCggEBAM3i/k2u6cqbMdcISGRvh+m+L0yaSIoOXjtpNEoIftAipTUYoMhL\nInXGlQBVA4shkekxp1N7HXe1Y/iMaPEyb3n+16pf3vdjKl7kaSkIhjdUz3oVUEYt\ni8Z/XeJJ9H2aEGuiZh3kHixQcZczn8cg3dA9aeeyLSEnTkl/npzLf//669Ammyhs\nXcAo58yvT0D4E0D/EEHf2N7HRX7j/TlyWvw/39SW0usiCrHPKDLxByLojxLdHzso\nQIp/S04m+eWn6rmD+uUiRteN1hI5ncQiA3wo4G37mHnUEKo6TtTUh+sd/ku6a8HK\nglMBcgqudDI90s1OpuIAWmuWpY//8xEG2YECAwEAAaNmMGQwDgYDVR0PAQH/BAQD\nAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFPqhoWZcrVY9mU7tuemR\nRBnQIj1jMB8GA1UdIwQYMBaAFHNfYNi8ywOY9CsXNC42WqZg/7wfMA0GCSqGSIb3\nDQEBCwUAA4IBAQB6zOLZ+YINEs72heHIWlPZ8c6WY8MDU+Be5w1M+BK2kpcVhCUK\nPJO4nMXpgamEX8DIiaO7emsunwJzMSvavSPRnxXXTKIc0i/g1EbiDjnYX9d85DkC\nE1LaAUCmCZBVi9fIe0H2r9whIh4uLWZA41oMnJx/MOmo3XyMfQoWcqaSFlMqfZM4\n0rNoB/tdHLNuV4eIdaw2mlHxdWDtF4oH+HFm+2cVBUVC1jXKrFv/euRVtsTT+A6i\nh2XBHKxQ1Y4HgAn0jACP2QSPEmuoQEIa57bEKEcZsBR8SDY6ZdTd2HLRIApcCOSF\nMRM8CKLeF658I0XgF8D5EsYoKPsA+74Z+jDH\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF\nADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6\nb24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL\nMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv\nb3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj\nca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM\n9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw\nIFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6\nVOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L\n93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm\njgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC\nAYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA\nA4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI\nU5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs\nN+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv\no/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU\n5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy\nrqXRfboQnoZsG4q5WTP468SQvvG5\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgIJAMy5uCBvP5roMA0GCSqGSIb3DQEBCwUAMIGSMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEjMCEGA1UEAwwaQW1hem9uIFJEUyBDTiBSb290IDIwMTkgQ0EwHhcN\nMTkwOTA5MTY1NzIyWhcNMjQwOTA5MTY1NzIyWjCBkjELMAkGA1UEBhMCVVMxEDAO\nBgNVBAcMB1NlYXR0bGUxEzARBgNVBAgMCldhc2hpbmd0b24xIjAgBgNVBAoMGUFt\nYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxIzAh\nBgNVBAMMGkFtYXpvbiBSRFMgQ04gUm9vdCAyMDE5IENBMIIBIjANBgkqhkiG9w0B\nAQEFAAOCAQ8AMIIBCgKCAQEAzxl9K4p06ZTZ9eZmEXyTHe9Ut8OIZR86t6A8b8g0\nnhqMe+y4ee+UfqxumVAVyXwNXOiGQVbuJhScLaJ39/Ol4YzIGjdoD8MUvsf4BuET\nudQh2sJL8OnlXuqSICKpecN5ud4UQvoMVZ9FGJ+e8TvXczW14rGO62sPfYM/WrMD\nR7P4fhQfmWFzkc24/hZGRL1nkvwMdtiwuI2TYobhlwZQOdsNcZ9Ek+PcSI4oqgXN\nSqpYy85JzrRZiR5iFGw1CnJtGlC0oatXFzw/B8XOd9wvLTlJhyLo7zw9j3zedKbv\n33fTdjfvpGvcfw9CYggwrbsVmUeUhVDfMntTc9z9MRccmwIDAQABo2MwYTAOBgNV\nHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU/Z0g+hUMGQou\nhsbyFgSxc5jsbaowHwYDVR0jBBgwFoAU/Z0g+hUMGQouhsbyFgSxc5jsbaowDQYJ\nKoZIhvcNAQELBQADggEBAAlGPCq1D/PGkWoZZpAK3V94EOByklp2HkUPEZ0PPv3Z\n/euD2wUPkXnf27FC1XJE0pJX96B97ZXIEHl4S4obBRSlybzuvmfH4gyu+b+7Tebv\nVmfsAodyfYCm90heAYADWkc/XKDj+oe3NkbR+LokrM+5aOB71f5mMLnFgYHQW/dI\nIRDziUSpP0LMr+YNKvM7qytrobPS2TOWtweWpXesNBBeiLTHZpTEu8DYcE+4e2tj\nO0spF3HuoF0Oc7ioVy2exE+HV1oJOquHGSanZSdMHCAEDMfKUmlT7/zcwC877UT/\nsysqYU/fl6vX48QDfalZuBYj+d1dUxIb1sx6q4Iw4+s=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgIDAIMzMA0GCSqGSIb3DQEBCwUAMIGSMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEjMCEGA1UEAwwaQW1hem9uIFJEUyBDTiBSb290IDIwMTkgQ0EwHhcNMTkwOTA5\nMjAzMjM3WhcNMjQwOTA5MTY1NzIyWjCBlTELMAkGA1UEBhMCVVMxEzARBgNVBAgM\nCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoMGUFtYXpvbiBX\nZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxJjAkBgNVBAMM\nHUFtYXpvbiBSRFMgY24tbm9ydGgtMSAyMDE5IENBMIIBIjANBgkqhkiG9w0BAQEF\nAAOCAQ8AMIIBCgKCAQEA1QX8vbiba8pa4b2CLVBNhqFFYwsuekptFPv/RTixRZ6K\na1fZ/vp/d7xhfhwU9DKXyQ3ONhwOVKnFuvQuWXQiPc2cRkxM+TF7yF6hoPrIOOzr\ns6ANmR2k/n9X0aOO7sqx4q7A73ueIDJst3IjfaFgt1jaqfC7tcSSROB/+vZZTNGP\nKgFvd02ut2mCtLgohzavVDicUc0V8H1sV5Ah4n0VafW7Fqru9ehiPO79JXJKIS7W\ngcgOOiK6YDqxaQRN+LTNYdZ+DZ1+Gx8NBN80fVOO2hpRFpb662k/hQH8onYkvXaY\nkr9ouDTjfr5t8E8CEvkO/Y/B3/lt7mVjEGqImCwJawIDAQABo2YwZDAOBgNVHQ8B\nAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUXJaoUok7ROtv\n5/2xeuaRqelnejIwHwYDVR0jBBgwFoAU/Z0g+hUMGQouhsbyFgSxc5jsbaowDQYJ\nKoZIhvcNAQELBQADggEBAIiPRsCpaiMsWUq7liRV6NDgljzjVOMzUsDnfusGUQtO\nfa3tCI+sx5j92jFzlS0GwseB/3FjVQDRll/kFTqbVwpHw2kaLeAbVvquxZAoD/91\n6gBGSF3qmLestFpf02kNHlv9skqnMrBLYkQ4kckgt4Y8E8pNLSeNtJykbp7XCf7H\nA+izbITBxNHxLUqMStEtk8RhIWUmiAbp5ENHwYCL5h9g4VV7X4TsW/1Q4KgEstWa\n1t65VWr3p7NnKpMX5CL/v5FGCYq0TDdr3qmHKbXbofmUKltZ7VxSAh5LFrfLuGzt\nMtXQkd0NDvVqMNHAjEkj7/MtlYyridWrKsiUc3ALBR4=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIGADCCA+igAwIBAgIQfFbtOHNGJtTnXjvwddAHjTANBgkqhkiG9w0BAQwFADCB\nmDELMAkGA1UEBhMCVVMxIjAgBgNVBAoMGUFtYXpvbiBXZWIgU2VydmljZXMsIElu\nYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxCzAJBgNVBAgMAldBMTEwLwYDVQQDDChB\nbWF6b24gUkRTIGNuLW5vcnRoLTEgUm9vdCBDQSBSU0E0MDk2IEcxMRAwDgYDVQQH\nDAdTZWF0dGxlMCAXDTIxMDUyNTIzMTg1MloYDzIxMjEwNTI2MDAxODUyWjCBmDEL\nMAkGA1UEBhMCVVMxIjAgBgNVBAoMGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4x\nEzARBgNVBAsMCkFtYXpvbiBSRFMxCzAJBgNVBAgMAldBMTEwLwYDVQQDDChBbWF6\nb24gUkRTIGNuLW5vcnRoLTEgUm9vdCBDQSBSU0E0MDk2IEcxMRAwDgYDVQQHDAdT\nZWF0dGxlMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0OO5+lCMwInN\ntMJ19bv+uyEE74uE5vHQHtla5sI1Hp+A8DhTURgJvIHRxv3Tgtk6ja4v/VcbLcVr\nR4OkZBY9b5RKHMGDK1ljwo/MxMFuK/TGkHcrjhiZcgYyNm2oxK33/YafLqq18a8p\nHREEZwz7wSi6DY8Mf9heH8a2T3ZDlUovj5JUVIDu7kSGYHw16eUi9twX7MtO0b43\nociygADBSoZeyMKZHisYdyf4D/LLDYgh7ja+Ncu4k3ErMmxGN5cZN+USyquxmnr8\nuXkl2t9VH0BhB0kej/vO9DhLdpKJRVaML1A9Wg3pd0U37xOJhTU6wCm23zdga3kR\nbf9azdS68zDK9tYiDrGc7kRkj7SOUWLY7fagyKv3rESWXrGkV8lzsK7xseomAKvL\nfHEfL0QUD63kEk4W8VH8XY7NwXZD6Je5hiQtLu8/uxed96FWwZ1DJrzojW4mKFQF\neECHU5b5jza4gjZ/pOeeqRmx3iojjYf2ZVm0+0SRFd+BWWPpqyeVUvC9gVZ+VMPr\nSUqgIrHZ2GMNJXIHt9TR3oq4XnXVcvsPuKQCWg8HIgczfDc//zaYhLdcVQbsTVEo\nI8nLqs6FygTnhyPSbJG9n9fF+RpTowXVb1UNovCTR/UBvR9l8JobnaqKUFMI1W2d\nDy98l55+LFT1VYm+rbvxJlVJm9kw6usCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB\n/zAdBgNVHQ4EFgQUfVNPfvq3BkZRL2qrVKEvMbPBSHAwDgYDVR0PAQH/BAQDAgGG\nMA0GCSqGSIb3DQEBDAUAA4ICAQBZ9hDaGcZFSxEyV4Yk7ynJrpKznaLWaq8T72lb\nsXcgnGGnTYQtUhdR2atA6KVtc2D8UCxDiP4kE8xC+voGKgRRt3WvIX/KRiYH4Rr/\n8DS/wux6MYYEaXjoCil1xNTOyhMCmtEPIFo8LDStbaur/PmE5VGVr45XcqNdNt5A\nS8esMGK5aI7D2zQEfGN940+U2sUCVYnvuaR1nbcMkgMzzdL2yCCZ1mlyk2KvSsF7\nb0P772MnZ3x4mP3IcUh0/6XSSIxWMAB6r6s1nCZd2JGGIyVSc2YLsB2jib2gYyfT\nzq2SL040aatsOAecrfYDG6UbeL0OUXivhOzycvS92FhEDU0BNB44wEO0Qg/zAc2C\nJlkPCMKIZc9g70RhHQ9VV9kc/SCjVRu1PauryzTmXEfr+ItrbZVW33JQg7ZOmgfj\njgpKF9q7sG2VJBDCRdp2nfeA1Bblc36yC0LodZ7voSzcJI7nnv1aO3U1CvQl0Mha\nfMjZqd0kPIX6d0G4C5SImvMCF59annWwt4V1sbWrgEvqdICe0kVsofUtEW35kX3C\nW344OxVkmhhFuniTFWYCyuQNlhIIdA0I5trZPtRaWsV2cTkNIzfe2vHGXuMnwd6V\nCwxPaPdyvKB7n6x6tF5RUOXq0EZQf9XOmdOiCTua1WT+vobRX18RtJLaOa/n5AKo\nLlYzqw==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEATCCAumgAwIBAgIRAN9d6r2p5Wg5Gwl1bK3+WfkwDQYJKoZIhvcNAQELBQAw\ngZgxCzAJBgNVBAYTAlVTMSIwIAYDVQQKDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJ\nbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMQswCQYDVQQIDAJXQTExMC8GA1UEAwwo\nQW1hem9uIFJEUyBjbi1ub3J0aC0xIFJvb3QgQ0EgUlNBMjA0OCBHMTEQMA4GA1UE\nBwwHU2VhdHRsZTAgFw0yMTA1MjUyMzE1MDdaGA8yMDYxMDUyNjAwMTUwN1owgZgx\nCzAJBgNVBAYTAlVTMSIwIAYDVQQKDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJbmMu\nMRMwEQYDVQQLDApBbWF6b24gUkRTMQswCQYDVQQIDAJXQTExMC8GA1UEAwwoQW1h\nem9uIFJEUyBjbi1ub3J0aC0xIFJvb3QgQ0EgUlNBMjA0OCBHMTEQMA4GA1UEBwwH\nU2VhdHRsZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKvw4zHfM3cU\nyFI9KFITDF4feeon2P49qXx8YX8KUEYzNbkNQhPSt1J91kvy0ddHLrxxNd+LoQFi\nA5vu7a51VmX1MtKYs7SzEIUdrON3FKK/2cci2yCnwzoc3kam3jXvPUu56op+aH35\n0JHEco0i+NUjh7n5UV/yWc1+8kPLBQr+VMV3ndp85ik209esvCRWgQ+iWuADqHbf\nvjrFm/zjFIiwuX5qapkDtSRVwM6FwIfjSEF6udhZjsermfD2AoTesptZEiNIPRzV\net6s/U5gMjvAhc+MQgjjdCLBlhbXWR1CPtXOMp6o8Pjn2Et3eiM6G1T0jUO28BGP\n3/iq3JOXFj8CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUEoBo\nnXIxui+T8RXYqgzikVat82EwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUA\nA4IBAQAk4XdDesWKYgE35KMqg2+tCY/gbBrKVMdvZzy2kAv9QH8bwCcojeMw4wGh\nu0mjfX0vawoot2bNY6Yu0+mVxBtkelhay7enN+mA5g5DfkyKkLb6Jg/9N7m95w4N\nICQwM3Yb9OsuquxBPPE7JkrZv10AzVz2Xqu/OHDyDpfnkcCfNusHyIAycjxq/ZEF\n7LOSBv3S20sJU72EKfrNGSfMDv9qvnusum/vTYKuSNCTR0vARxbB7LLVZZ/Pg2w8\n22RQK9zr+u5WkfTGMqF4NnbuJGphU21QHUIZYY8QAnte0hbK+AbTUyeKGHxqRDun\nBQn6/GvgP2tPDKj/Huauo/CVSd+M\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIICrzCCAjWgAwIBAgIQTEq2iHmd2QzeVBzmBUbAUTAKBggqhkjOPQQDAzCBlzEL\nMAkGA1UEBhMCVVMxIjAgBgNVBAoMGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4x\nEzARBgNVBAsMCkFtYXpvbiBSRFMxCzAJBgNVBAgMAldBMTAwLgYDVQQDDCdBbWF6\nb24gUkRTIGNuLW5vcnRoLTEgUm9vdCBDQSBFQ0MzODQgRzExEDAOBgNVBAcMB1Nl\nYXR0bGUwIBcNMjEwNTI1MjMyMjQ4WhgPMjEyMTA1MjYwMDIyNDhaMIGXMQswCQYD\nVQQGEwJVUzEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEG\nA1UECwwKQW1hem9uIFJEUzELMAkGA1UECAwCV0ExMDAuBgNVBAMMJ0FtYXpvbiBS\nRFMgY24tbm9ydGgtMSBSb290IENBIEVDQzM4NCBHMTEQMA4GA1UEBwwHU2VhdHRs\nZTB2MBAGByqGSM49AgEGBSuBBAAiA2IABBV1FSsxoXGFDBIMj6b+EfJvLINkTtVv\nUucbGUqZMidNfuHoUWTlhwZuX5kMv9hlbQbDxrnHCePo1heHkdqovIi2D77lhvhn\n7UgMupcFx9Tjki+5QhKLW3n7W8dmreJLw6NCMEAwDwYDVR0TAQH/BAUwAwEB/zAd\nBgNVHQ4EFgQUFwPUFTDrjPqdIMjuYGif1wkAtr8wDgYDVR0PAQH/BAQDAgGGMAoG\nCCqGSM49BAMDA2gAMGUCMQCrAtoyWILR++OEhFmuJhSR8cgEW/rGyf+lMDwq9dcA\neJPK7l9S8iT30JOo++hWwYcCMFl9MWvoQU3iUDH+j33I26+whkvZ6LLw2dajww1X\n0MPXbT3P9P0Jk/Vv+gand92fAw==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEDDCCAvSgAwIBAgIJAMy5uCBvP5roMA0GCSqGSIb3DQEBCwUAMIGSMQswCQYD\nVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEi\nMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1h\nem9uIFJEUzEjMCEGA1UEAwwaQW1hem9uIFJEUyBDTiBSb290IDIwMTkgQ0EwHhcN\nMTkwOTA5MTY1NzIyWhcNMjQwOTA5MTY1NzIyWjCBkjELMAkGA1UEBhMCVVMxEDAO\nBgNVBAcMB1NlYXR0bGUxEzARBgNVBAgMCldhc2hpbmd0b24xIjAgBgNVBAoMGUFt\nYXpvbiBXZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxIzAh\nBgNVBAMMGkFtYXpvbiBSRFMgQ04gUm9vdCAyMDE5IENBMIIBIjANBgkqhkiG9w0B\nAQEFAAOCAQ8AMIIBCgKCAQEAzxl9K4p06ZTZ9eZmEXyTHe9Ut8OIZR86t6A8b8g0\nnhqMe+y4ee+UfqxumVAVyXwNXOiGQVbuJhScLaJ39/Ol4YzIGjdoD8MUvsf4BuET\nudQh2sJL8OnlXuqSICKpecN5ud4UQvoMVZ9FGJ+e8TvXczW14rGO62sPfYM/WrMD\nR7P4fhQfmWFzkc24/hZGRL1nkvwMdtiwuI2TYobhlwZQOdsNcZ9Ek+PcSI4oqgXN\nSqpYy85JzrRZiR5iFGw1CnJtGlC0oatXFzw/B8XOd9wvLTlJhyLo7zw9j3zedKbv\n33fTdjfvpGvcfw9CYggwrbsVmUeUhVDfMntTc9z9MRccmwIDAQABo2MwYTAOBgNV\nHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU/Z0g+hUMGQou\nhsbyFgSxc5jsbaowHwYDVR0jBBgwFoAU/Z0g+hUMGQouhsbyFgSxc5jsbaowDQYJ\nKoZIhvcNAQELBQADggEBAAlGPCq1D/PGkWoZZpAK3V94EOByklp2HkUPEZ0PPv3Z\n/euD2wUPkXnf27FC1XJE0pJX96B97ZXIEHl4S4obBRSlybzuvmfH4gyu+b+7Tebv\nVmfsAodyfYCm90heAYADWkc/XKDj+oe3NkbR+LokrM+5aOB71f5mMLnFgYHQW/dI\nIRDziUSpP0LMr+YNKvM7qytrobPS2TOWtweWpXesNBBeiLTHZpTEu8DYcE+4e2tj\nO0spF3HuoF0Oc7ioVy2exE+HV1oJOquHGSanZSdMHCAEDMfKUmlT7/zcwC877UT/\nsysqYU/fl6vX48QDfalZuBYj+d1dUxIb1sx6q4Iw4+s=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEEDCCAvigAwIBAgIDAJJhMA0GCSqGSIb3DQEBCwUAMIGSMQswCQYDVQQGEwJV\nUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGluZ3RvbjEiMCAGA1UE\nCgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UECwwKQW1hem9uIFJE\nUzEjMCEGA1UEAwwaQW1hem9uIFJEUyBDTiBSb290IDIwMTkgQ0EwHhcNMTkwOTE3\nMTY0OTE3WhcNMjQwOTA5MTY1NzIyWjCBmTELMAkGA1UEBhMCVVMxEzARBgNVBAgM\nCldhc2hpbmd0b24xEDAOBgNVBAcMB1NlYXR0bGUxIjAgBgNVBAoMGUFtYXpvbiBX\nZWIgU2VydmljZXMsIEluYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxKjAoBgNVBAMM\nIUFtYXpvbiBSRFMgY24tbm9ydGh3ZXN0LTEgMjAxOSBDQTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAMr4bvXQVykL0RHtBALyP7FycubzLJM178wMw5vK\nQS/1IVlQlbdZ8bNYmSMqa2IlGoWdjvLonES0jD0T8LCOYJy0uPN0DfiH6I9v9th8\nTvG/hAD9pe01xLOUAOTzuikbzcxEf9XX6mG/xAh5rREHsLbQE9R7D4RkqdeJbQBc\nKVcWWrejW9XaleCr+iEuwSqzXYDXNyfJoYic8aNYA8bADG5YPWTPblxA8MCik+zD\nq9r5wMNafUKmdOAFP6qeYo0zA5o9ESM2xJdYqa2gF7lAYsMagtWZWfEW27ZUrYmf\ntlMXu5xF2zZ1z2n7GKBXa8kA+e/dzalUA5ONHZUDIpU51k8CAwEAAaNmMGQwDgYD\nVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFCV3kNIC\n8e01zUu6tXl0/ig8Va5OMB8GA1UdIwQYMBaAFP2dIPoVDBkKLobG8hYEsXOY7G2q\nMA0GCSqGSIb3DQEBCwUAA4IBAQDHKrXWXsv6KKb06XhuC6RrMsLW+fmQXbrU9x4V\nb46VEaHN8lvKx6QWmRKSdnCa7nYZkPUbGdcQtgThfEjkc+UEfJxx/Q2Hb1OslPcj\nEgx5M7NFCGoBbaSKOGnVexEKRfxA2zkPCMi7bDe2m8cgThyBHfsTJSVGJkXsf6VJ\nJKWJULYiHMjF31Npg++eB4iN42bqhPfP5nKloGjOs/TNYdT2rAcI8xZRsd+G+0Aw\nqlQ0VdPmxIK7M0Sv2StGD0244OXbq6A3Ojx4t7/Kl41+FuyaGlnALDvdiYF96Zu1\nVpA/pPn4AC3+/wrXOefZDFJ3dC1uKlIoh63Vv378oI2VQvw3\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIECTCCAvGgAwIBAgIRAOf+QbXXDGRJ7MW8j6FZ5ncwDQYJKoZIhvcNAQELBQAw\ngZwxCzAJBgNVBAYTAlVTMSIwIAYDVQQKDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJ\nbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMQswCQYDVQQIDAJXQTE1MDMGA1UEAwws\nQW1hem9uIFJEUyBjbi1ub3J0aHdlc3QtMSBSb290IENBIFJTQTIwNDggRzExEDAO\nBgNVBAcMB1NlYXR0bGUwIBcNMjEwNTI1MjI1NjEyWhgPMjA2MTA1MjUyMzU2MTJa\nMIGcMQswCQYDVQQGEwJVUzEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywg\nSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzELMAkGA1UECAwCV0ExNTAzBgNVBAMM\nLEFtYXpvbiBSRFMgY24tbm9ydGh3ZXN0LTEgUm9vdCBDQSBSU0EyMDQ4IEcxMRAw\nDgYDVQQHDAdTZWF0dGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0XBh/AY4j5RP9XUbYGMaCaBuG4FAbHU/Qfz/hHBNfy/QMi2hF4LQECGqp+j/8fML\n45c6b0NyCLvZuIfB4F1s+dctJpqauDqzYacw3/fMmxNyzgkrYa8VhoRdPWH6ZX2e\n0VNfTOJo64ShJaePdizBAoBnfX+xvDyZ6BLGtdUsvsfdDSCTt2fgTAk8DBTmHode\nhCC3EfVcAjk99+Fe0RWPnDBXQkA8VrbgSxXPN8Gfag1wIzS44BcxhxHDiwQoL4Ao\nFfOwvgRJANeUGcqnL5IpF8xxU3lk7nMcXuQu17597+UGwTiFLAT0bnVK/TgakefX\nM3ZH9gUi0Di3dJNIKtq/3wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud\nDgQWBBTX4eJfUNknv33QnNNfkDsrYrO1uzAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZI\nhvcNAQELBQADggEBAKIlgCuSJYIgvHK2zoT9PugiyBE5vvo5HyrTOJIhPknB2aY7\nx2Gwbv7YlXzncpQM+aPA88PlIvwPmGj0Nb8ph6vZ55DOxWrBE8LuXMR/+71vMYaF\nM9iTud2OyRLa2EIpS7nq3jWKjiDFkfrkUg8JmLCWHv0qEANX8XJ5NVhrRSAJzvDA\nMArXq2k5oJZoRJxyGlz6dSoU/rxsQF/oTihpcH/cEbL6ZD8sZ5xLJpCHTJcnBAEZ\nL18sYc8F/91akqXn1re/7/K3NwT9usyh89e5pegx/U2ySI3KJuc464HmCV7YZ0iJ\nEQYsQRGFZr/Miu5V4hrpuggsrnmi/RagWYJGPfQ=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIGCTCCA/GgAwIBAgIRAJ3YjujPNbJWN/domX9EvW8wDQYJKoZIhvcNAQEMBQAw\ngZwxCzAJBgNVBAYTAlVTMSIwIAYDVQQKDBlBbWF6b24gV2ViIFNlcnZpY2VzLCBJ\nbmMuMRMwEQYDVQQLDApBbWF6b24gUkRTMQswCQYDVQQIDAJXQTE1MDMGA1UEAwws\nQW1hem9uIFJEUyBjbi1ub3J0aHdlc3QtMSBSb290IENBIFJTQTQwOTYgRzExEDAO\nBgNVBAcMB1NlYXR0bGUwIBcNMjEwNTI1MjMwMDE1WhgPMjEyMTA1MjYwMDAwMTVa\nMIGcMQswCQYDVQQGEwJVUzEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywg\nSW5jLjETMBEGA1UECwwKQW1hem9uIFJEUzELMAkGA1UECAwCV0ExNTAzBgNVBAMM\nLEFtYXpvbiBSRFMgY24tbm9ydGh3ZXN0LTEgUm9vdCBDQSBSU0E0MDk2IEcxMRAw\nDgYDVQQHDAdTZWF0dGxlMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA\ny8Wy3CndOV9n8V3yZ3aOTm6sKlxmtS7GYlAiguNjyqS2ERP6x3l6JlkuKyAtYut/\nUOJL6TBWQNLUsNpFJnLkomaqWRYNjSSogSLt2F6BIr/fM8pOmXvBHg9OB/I24DUE\n6bKuVbe+qrGN6ypTAsrfZJ94ED0wmMb8RMOlXOBgB3GxbuQjUFN0XLXurJygj9k7\nSM3RQggoaO94T1qoi4LD/NS/4/Z3eUksLZgkC19fSSVnuUfu845x+MXlVhLeHcLo\n9IIONonUJvkKPS90TQtB2spSqFd+MkiX3izPDii1kHfFHsl2CzwcdbxvcAZ742np\nMjDFpE4Zl6Nf28jGm6ODg6F/yZIiqWpvDemfnHfgkv1SFJnMpIAnLEIRnD5iZPRY\nvP9tJVxGo/kB7ogYLKboOtQyzQC5G6KIbkblJ+MjVcf5iQIUn5Ir7s91/7s6uVRT\nOY76S3SppFQltNwh1yW5s7Ppc9XR5cp0F37NfEm90g+r2JMH6da+Zd0zd+oG4JUJ\nGQWAIhvoOo2jjfX33GqxJI5QrhyVFQpIGs6WU3Z7uZou6/orDaEzAkedMC4w53aZ\nKmJevk2btsWRcGTYyJxf5GZ9HnUcDApcZ9QZ/9f7iIrGPTO4W6BJ9wzzc5PoenlD\noubhx9fofSIepk822gD/93fakRUJlYXKNvxJC8qXRn8CAwEAAaNCMEAwDwYDVR0T\nAQH/BAUwAwEB/zAdBgNVHQ4EFgQUbApE7vMSJDpJph7Lrq6rAMCwQF4wDgYDVR0P\nAQH/BAQDAgGGMA0GCSqGSIb3DQEBDAUAA4ICAQBSTbw8jIpZyAwQiJv5D6B9g4fX\n9PsTFTmb2eszZZZO/i0T8hbqAA3DmjjM5QqUdbjXiq4aLec04aH/ltc/12b6lypX\nsfhtUJd5rgVyEyi9VpZwL+3LrV8CC9rel1v1euOvQ+6ojsoU9PKVLSw5G1Owzy8x\npQwJU9ZTIMgz0TdlFUugaccLH54uy/c7FclO8HpOwHbwMtuMrsEt3p9vea7UoSn3\n54usb0p8ex2brMrOxKmLXXQOGoDFF8U5JCivdQaYuG7LO9NocaeyLNkc22MrxvhV\n1x3I1CE5Y1vMEqf0B8mMl2tAZ6l68r8qv1SoIrvm3ioZpdDBNkyyYVfRLpvmQBw4\nF0NQIW5wAumqbyHLRKMf/wmeuBwYjWrAeJdwDTsNVDPnhXpTOobKH432+i7v5U8n\n1dcrLdYwzRMXxY2+Wrmgte2JdsvfNkcDou9ZnjqTt8u5L7eFd5kWOLnZAWtsIef5\n2QzfKFjpbg9q/zt9RcNULAUaMB0twG1G6eO9stPElE2B0k3wM0FCTXfrh8v0FWEx\nZbnef3OwiiHHQ6EBHYvbZm0qwuYdBz8KtwurYwEUpgldls5hcj9eI3pDCjTzJncP\nGpVjJTtIE0CGOcAgIt5G6idQ1oQudW8DMb/M0QXibI5fjqEXYoYQEnjko9AqLdzI\npn++DGngGu3NLeSVfA==\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIICtjCCAj2gAwIBAgIQHBx4LmhvEVmG1P6tMGhI8DAKBggqhkjOPQQDAzCBmzEL\nMAkGA1UEBhMCVVMxIjAgBgNVBAoMGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4x\nEzARBgNVBAsMCkFtYXpvbiBSRFMxCzAJBgNVBAgMAldBMTQwMgYDVQQDDCtBbWF6\nb24gUkRTIGNuLW5vcnRod2VzdC0xIFJvb3QgQ0EgRUNDMzg0IEcxMRAwDgYDVQQH\nDAdTZWF0dGxlMCAXDTIxMDUyNTIzMDM1NVoYDzIxMjEwNTI2MDAwMzU1WjCBmzEL\nMAkGA1UEBhMCVVMxIjAgBgNVBAoMGUFtYXpvbiBXZWIgU2VydmljZXMsIEluYy4x\nEzARBgNVBAsMCkFtYXpvbiBSRFMxCzAJBgNVBAgMAldBMTQwMgYDVQQDDCtBbWF6\nb24gUkRTIGNuLW5vcnRod2VzdC0xIFJvb3QgQ0EgRUNDMzg0IEcxMRAwDgYDVQQH\nDAdTZWF0dGxlMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEJxUculiPchcuEWMgFK+T\njmYSVKrpF0NbDteKKJ45BbTzhwwCSKyEY3vVCqwMQ+wYiJZ87OyxLU1cqq/WCg3s\n7aD8Ro9DezvR+Fu+/AV61BLCgeSLr9S1ZCC6cpn5l0a4o0IwQDAPBgNVHRMBAf8E\nBTADAQH/MB0GA1UdDgQWBBSK4CT2IBuyX0nXmkC15OHfxtqh8zAOBgNVHQ8BAf8E\nBAMCAYYwCgYIKoZIzj0EAwMDZwAwZAIwQB38Wg42v48d5O1i53hg2qF/H0QW/8eO\n/xVtA8PK2ztDgQm+O0vKb34nj6X4Kcn8AjBSJmft8t7LMN/UwnhptyYINerpDMzZ\ng0OtBwn1QMWWlkFNf8ajLURXKGg9e2mfkpw=\n-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\nMIIEIjCCAwqgAwIBAgIQI2AINKjtLFqXO+5mqmHJOzANBgkqhkiG9w0BAQsFADCB\nnDELMAkGA1UEBhMCVVMxIjAgBgNVBAoMGUFtYXpvbiBXZWIgU2VydmljZXMsIElu\nYy4xEzARBgNVBAsMCkFtYXpvbiBSRFMxCzAJBgNVBAgMAldBMTUwMwYDVQQDDCxB\nbWF6b24gUkRTIGNuLW5vcnRod2VzdC0xIFJvb3QgQ0EgUlNBMjA0OCBHMTEQMA4G\nA1UEBwwHU2VhdHRsZTAeFw0yMTEwMjAyMjE5NTBaFw0yNjEwMjAyMzE5NTBaMIGU\nMQswCQYDVQQGEwJVUzEQMA4GA1UEBwwHU2VhdHRsZTETMBEGA1UECAwKV2FzaGlu\nZ3RvbjEiMCAGA1UECgwZQW1hem9uIFdlYiBTZXJ2aWNlcywgSW5jLjETMBEGA1UE\nCwwKQW1hem9uIFJEUzElMCMGA1UEAwwcQW1hem9uIFJEUyBjbi1ub3J0aHdlc3Qt\nMSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMk+1qHD+w3Wns8f\nWNs6ZKtd6r8eJSilT8SKdhuvZ77C2a5CRaWhihwTznGW1vCaR9+O4OIJZCJj3iV+\n75arKXK5XJTPNJo8aW5pW9ljh/KsudkT7gzURQ3n3xFiv9vQwPRSE9gPn20Cad8U\n64KPl20DvA1XD3CoaACafRz5BlZwGJAi6xI9DqdiQRGEcNlwBzMSv9E0MqkW9pDN\n+goGEkVyfLA83hUM58zXr7AwUEw7RH64rNZcoWYT89AVKvUQnyyEs6hZvIIVwTQm\nv/YpYEH3BsN/SshaQpmh1scN/aHurVfBn0ZaY2EaTBv/u1YsalhbnZglFX6581X7\n9UkEocECAwEAAaNmMGQwEgYDVR0TAQH/BAgwBgEB/wIBADAfBgNVHSMEGDAWgBTX\n4eJfUNknv33QnNNfkDsrYrO1uzAdBgNVHQ4EFgQUfGOsnDYUtkLIlP6gKPd/lkbh\nsn4wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4IBAQCxYKgzCB6gcrYi\n1op0n615lk/hLD5LEmpNYYgqtOOAPf7mGF1VLu+GtDmyAqRnQjr80hFO2Tvdv614\nu0D5joapjD+aAQIb+OeVVmXYPm3UfUotnUkHGalkofEWkS/7h/dUzKARBdpsKBP9\nezSf8GBVRd0EDP8PLK5iplX4B+aQxmIBgYNIXSlgjaNX8SfjzKsRiLPmumWrb7gi\nlbqkdRuafQ3hj6K+I2JbgEEz2ggNBgUiwJRr+2B511RWHu3wEW86aEbl0+f5crJA\nXNn0nVq3tl8XMkorbAD+/8dbxMxV5wtMHY7nWsG8TlJ+8Vb9FwC5vIWSYun8u3Rh\ntOoQ3GAy\n-----END CERTIFICATE-----\n" ] }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/connection_config.js var require_connection_config2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/connection_config.js"(exports, module2) { "use strict"; var { URL: URL2 } = require("url"); var ClientConstants = require_client2(); var Charsets = require_charsets2(); var { version: version2 } = require_package2(); var SSLProfiles = null; var validOptions = { authPlugins: 1, authSwitchHandler: 1, bigNumberStrings: 1, charset: 1, charsetNumber: 1, compress: 1, connectAttributes: 1, connectTimeout: 1, database: 1, dateStrings: 1, debug: 1, decimalNumbers: 1, enableKeepAlive: 1, flags: 1, host: 1, insecureAuth: 1, isServer: 1, keepAliveInitialDelay: 1, localAddress: 1, maxPreparedStatements: 1, multipleStatements: 1, namedPlaceholders: 1, nestTables: 1, password: 1, password1: 1, password2: 1, password3: 1, passwordSha1: 1, pool: 1, port: 1, queryFormat: 1, rowsAsArray: 1, socketPath: 1, ssl: 1, stream: 1, stringifyObjects: 1, supportBigNumbers: 1, timezone: 1, trace: 1, typeCast: 1, uri: 1, user: 1, connectionLimit: 1, maxIdle: 1, idleTimeout: 1, Promise: 1, queueLimit: 1, waitForConnections: 1 }; var ConnectionConfig = class { constructor(options) { if (typeof options === "string") { options = ConnectionConfig.parseUrl(options); } else if (options && options.uri) { const uriOptions = ConnectionConfig.parseUrl(options.uri); for (const key in uriOptions) { if (!Object.prototype.hasOwnProperty.call(uriOptions, key)) continue; if (options[key]) continue; options[key] = uriOptions[key]; } } for (const key in options) { if (!Object.prototype.hasOwnProperty.call(options, key)) continue; if (validOptions[key] !== 1) { console.error( `Ignoring invalid configuration option passed to Connection: ${key}. This is currently a warning, but in future versions of MySQL2, an error will be thrown if you pass an invalid configuration option to a Connection` ); } } this.isServer = options.isServer; this.stream = options.stream; this.host = options.host || "localhost"; this.port = (typeof options.port === "string" ? parseInt(options.port, 10) : options.port) || 3306; this.localAddress = options.localAddress; this.socketPath = options.socketPath; this.user = options.user || void 0; this.password = options.password || options.password1 || void 0; this.password2 = options.password2 || void 0; this.password3 = options.password3 || void 0; this.passwordSha1 = options.passwordSha1 || void 0; this.database = options.database; this.connectTimeout = isNaN(options.connectTimeout) ? 10 * 1e3 : options.connectTimeout; this.insecureAuth = options.insecureAuth || false; this.supportBigNumbers = options.supportBigNumbers || false; this.bigNumberStrings = options.bigNumberStrings || false; this.decimalNumbers = options.decimalNumbers || false; this.dateStrings = options.dateStrings || false; this.debug = options.debug; this.trace = options.trace !== false; this.stringifyObjects = options.stringifyObjects || false; this.enableKeepAlive = !!options.enableKeepAlive; this.keepAliveInitialDelay = options.keepAliveInitialDelay || 0; if (options.timezone && !/^(?:local|Z|[ +-]\d\d:\d\d)$/.test(options.timezone)) { console.error( `Ignoring invalid timezone passed to Connection: ${options.timezone}. This is currently a warning, but in future versions of MySQL2, an error will be thrown if you pass an invalid configuration option to a Connection` ); this.timezone = "Z"; } else { this.timezone = options.timezone || "local"; } this.queryFormat = options.queryFormat; this.pool = options.pool || void 0; this.ssl = typeof options.ssl === "string" ? ConnectionConfig.getSSLProfile(options.ssl) : options.ssl || false; this.multipleStatements = options.multipleStatements || false; this.rowsAsArray = options.rowsAsArray || false; this.namedPlaceholders = options.namedPlaceholders || false; this.nestTables = options.nestTables === void 0 ? void 0 : options.nestTables; this.typeCast = options.typeCast === void 0 ? true : options.typeCast; if (this.timezone[0] === " ") { this.timezone = `+${this.timezone.slice(1)}`; } if (this.ssl) { if (typeof this.ssl !== "object") { throw new TypeError( `SSL profile must be an object, instead it's a ${typeof this.ssl}` ); } this.ssl.rejectUnauthorized = this.ssl.rejectUnauthorized !== false; } this.maxPacketSize = 0; this.charsetNumber = options.charset ? ConnectionConfig.getCharsetNumber(options.charset) : options.charsetNumber || Charsets.UTF8MB4_UNICODE_CI; this.compress = options.compress || false; this.authPlugins = options.authPlugins; this.authSwitchHandler = options.authSwitchHandler; this.clientFlags = ConnectionConfig.mergeFlags( ConnectionConfig.getDefaultFlags(options), options.flags || "" ); const defaultConnectAttributes = { _client_name: "Node-MySQL-2", _client_version: version2 }; this.connectAttributes = { ...defaultConnectAttributes, ...options.connectAttributes || {} }; this.maxPreparedStatements = options.maxPreparedStatements || 16e3; } static mergeFlags(default_flags, user_flags) { let flags = 0, i2; if (!Array.isArray(user_flags)) { user_flags = String(user_flags || "").toUpperCase().split(/\s*,+\s*/); } for (i2 in default_flags) { if (user_flags.indexOf(`-${default_flags[i2]}`) >= 0) { continue; } flags |= ClientConstants[default_flags[i2]] || 0; } for (i2 in user_flags) { if (user_flags[i2][0] === "-") { continue; } if (default_flags.indexOf(user_flags[i2]) >= 0) { continue; } flags |= ClientConstants[user_flags[i2]] || 0; } return flags; } static getDefaultFlags(options) { const defaultFlags = [ "LONG_PASSWORD", "FOUND_ROWS", "LONG_FLAG", "CONNECT_WITH_DB", "ODBC", "LOCAL_FILES", "IGNORE_SPACE", "PROTOCOL_41", "IGNORE_SIGPIPE", "TRANSACTIONS", "RESERVED", "SECURE_CONNECTION", "MULTI_RESULTS", "TRANSACTIONS", "SESSION_TRACK", "CONNECT_ATTRS" ]; if (options && options.multipleStatements) { defaultFlags.push("MULTI_STATEMENTS"); } defaultFlags.push("PLUGIN_AUTH"); defaultFlags.push("PLUGIN_AUTH_LENENC_CLIENT_DATA"); return defaultFlags; } static getCharsetNumber(charset) { const num = Charsets[charset.toUpperCase()]; if (num === void 0) { throw new TypeError(`Unknown charset '${charset}'`); } return num; } static getSSLProfile(name) { if (!SSLProfiles) { SSLProfiles = require_ssl_profiles2(); } const ssl = SSLProfiles[name]; if (ssl === void 0) { throw new TypeError(`Unknown SSL profile '${name}'`); } return ssl; } static parseUrl(url) { const parsedUrl = new URL2(url); const options = { host: parsedUrl.hostname, port: parseInt(parsedUrl.port, 10), database: parsedUrl.pathname.slice(1), user: parsedUrl.username, password: parsedUrl.password }; parsedUrl.searchParams.forEach((value, key) => { try { options[key] = JSON.parse(value); } catch (err) { options[key] = value; } }); return options; } }; module2.exports = ConnectionConfig; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/connection.js var require_connection2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/connection.js"(exports, module2) { "use strict"; var Net = require("net"); var Tls = require("tls"); var Timers = require("timers"); var EventEmitter = require("events").EventEmitter; var Readable = require("stream").Readable; var Queue = require_denque(); var SqlString = require_sqlstring(); var LRU = require_lru_cache2(); var PacketParser = require_packet_parser2(); var Packets = require_packets2(); var Commands = require_commands4(); var ConnectionConfig = require_connection_config2(); var CharsetToEncoding = require_charset_encodings2(); var _connectionId = 0; var convertNamedPlaceholders = null; var Connection = class extends EventEmitter { constructor(opts) { super(); this.config = opts.config; if (!opts.config.stream) { if (opts.config.socketPath) { this.stream = Net.connect(opts.config.socketPath); } else { this.stream = Net.connect( opts.config.port, opts.config.host ); this.stream.setKeepAlive(true, this.config.keepAliveInitialDelay); this.stream.setNoDelay(true); } } else if (typeof opts.config.stream === "function") { this.stream = opts.config.stream(opts); } else { this.stream = opts.config.stream; } this._internalId = _connectionId++; this._commands = new Queue(); this._command = null; this._paused = false; this._paused_packets = new Queue(); this._statements = new LRU({ max: this.config.maxPreparedStatements, dispose: function(statement) { statement.close(); } }); this.serverCapabilityFlags = 0; this.authorized = false; this.sequenceId = 0; this.compressedSequenceId = 0; this.threadId = null; this._handshakePacket = null; this._fatalError = null; this._protocolError = null; this._outOfOrderPackets = []; this.clientEncoding = CharsetToEncoding[this.config.charsetNumber]; this.stream.on("error", this._handleNetworkError.bind(this)); this.packetParser = new PacketParser((p) => { this.handlePacket(p); }); this.stream.on("data", (data) => { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } this.packetParser.execute(data); }); this.stream.on("end", () => { this.emit("end"); }); this.stream.on("close", () => { if (this._closing) { return; } if (!this._protocolError) { this._protocolError = new Error( "Connection lost: The server closed the connection." ); this._protocolError.fatal = true; this._protocolError.code = "PROTOCOL_CONNECTION_LOST"; } this._notifyError(this._protocolError); }); let handshakeCommand; if (!this.config.isServer) { handshakeCommand = new Commands.ClientHandshake(this.config.clientFlags); handshakeCommand.on("end", () => { if (!handshakeCommand.handshake || this._fatalError || this._protocolError) { return; } this._handshakePacket = handshakeCommand.handshake; this.threadId = handshakeCommand.handshake.connectionId; this.emit("connect", handshakeCommand.handshake); }); handshakeCommand.on("error", (err) => { this._closing = true; this._notifyError(err); }); this.addCommand(handshakeCommand); } this.serverEncoding = "utf8"; if (this.config.connectTimeout) { const timeoutHandler = this._handleTimeoutError.bind(this); this.connectTimeout = Timers.setTimeout( timeoutHandler, this.config.connectTimeout ); } } promise(promiseImpl) { const PromiseConnection = require_promise2().PromiseConnection; return new PromiseConnection(this, promiseImpl); } _addCommandClosedState(cmd) { const err = new Error( "Can't add new command when connection is in closed state" ); err.fatal = true; if (cmd.onResult) { cmd.onResult(err); } else { this.emit("error", err); } } _handleFatalError(err) { err.fatal = true; this.stream.removeAllListeners("data"); this.addCommand = this._addCommandClosedState; this.write = () => { this.emit("error", new Error("Can't write in closed state")); }; this._notifyError(err); this._fatalError = err; } _handleNetworkError(err) { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } if (err.code === "ECONNRESET" && this._closing) { return; } this._handleFatalError(err); } _handleTimeoutError() { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } this.stream.destroy && this.stream.destroy(); const err = new Error("connect ETIMEDOUT"); err.errorno = "ETIMEDOUT"; err.code = "ETIMEDOUT"; err.syscall = "connect"; this._handleNetworkError(err); } _notifyError(err) { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } if (this._fatalError) { return; } let command; let bubbleErrorToConnection = !this._command; if (this._command && this._command.onResult) { this._command.onResult(err); this._command = null; } else if (!(this._command && this._command.constructor === Commands.ClientHandshake && this._commands.length > 0)) { bubbleErrorToConnection = true; } while (command = this._commands.shift()) { if (command.onResult) { command.onResult(err); } else { bubbleErrorToConnection = true; } } if (bubbleErrorToConnection || this._pool) { this.emit("error", err); } if (err.fatal) { this.close(); } } write(buffer) { const result = this.stream.write(buffer, (err) => { if (err) { this._handleNetworkError(err); } }); if (!result) { this.stream.emit("pause"); } } _resetSequenceId() { this.sequenceId = 0; this.compressedSequenceId = 0; } _bumpCompressedSequenceId(numPackets) { this.compressedSequenceId += numPackets; this.compressedSequenceId %= 256; } _bumpSequenceId(numPackets) { this.sequenceId += numPackets; this.sequenceId %= 256; } writePacket(packet) { const MAX_PACKET_LENGTH = 16777215; const length = packet.length(); let chunk, offset, header; if (length < MAX_PACKET_LENGTH) { packet.writeHeader(this.sequenceId); if (this.config.debug) { console.log( `${this._internalId} ${this.connectionId} <== ${this._command._commandName}#${this._command.stateName()}(${[this.sequenceId, packet._name, packet.length()].join(",")})` ); console.log( `${this._internalId} ${this.connectionId} <== ${packet.buffer.toString("hex")}` ); } this._bumpSequenceId(1); this.write(packet.buffer); } else { if (this.config.debug) { console.log( `${this._internalId} ${this.connectionId} <== Writing large packet, raw content not written:` ); console.log( `${this._internalId} ${this.connectionId} <== ${this._command._commandName}#${this._command.stateName()}(${[this.sequenceId, packet._name, packet.length()].join(",")})` ); } for (offset = 4; offset < 4 + length; offset += MAX_PACKET_LENGTH) { chunk = packet.buffer.slice(offset, offset + MAX_PACKET_LENGTH); if (chunk.length === MAX_PACKET_LENGTH) { header = Buffer.from([255, 255, 255, this.sequenceId]); } else { header = Buffer.from([ chunk.length & 255, chunk.length >> 8 & 255, chunk.length >> 16 & 255, this.sequenceId ]); } this._bumpSequenceId(1); this.write(header); this.write(chunk); } } } startTLS(onSecure) { if (this.config.debug) { console.log("Upgrading connection to TLS"); } const secureContext = Tls.createSecureContext({ ca: this.config.ssl.ca, cert: this.config.ssl.cert, ciphers: this.config.ssl.ciphers, key: this.config.ssl.key, passphrase: this.config.ssl.passphrase, minVersion: this.config.ssl.minVersion, maxVersion: this.config.ssl.maxVersion }); const rejectUnauthorized = this.config.ssl.rejectUnauthorized; const verifyIdentity = this.config.ssl.verifyIdentity; const host = this.config.host; let secureEstablished = false; const secureSocket = new Tls.TLSSocket(this.stream, { rejectUnauthorized, requestCert: true, secureContext, isServer: false }); if (typeof host === "string") { secureSocket.setServername(host); } secureSocket.on("_tlsError", (err) => { if (secureEstablished) { this._handleNetworkError(err); } else { onSecure(err); } }); secureSocket.on("secure", () => { secureEstablished = true; let callbackValue = null; if (rejectUnauthorized) { callbackValue = secureSocket.ssl.verifyError(); if (!callbackValue && typeof host === "string" && verifyIdentity) { const cert = secureSocket.ssl.getPeerCertificate(true); callbackValue = Tls.checkServerIdentity(host, cert); } } onSecure(callbackValue); }); secureSocket.on("data", (data) => { this.packetParser.execute(data); }); this.write = (buffer) => { secureSocket.write(buffer); }; secureSocket._start(); } pipe() { if (this.stream instanceof Net.Stream) { this.stream.ondata = (data, start, end) => { this.packetParser.execute(data, start, end); }; } else { this.stream.on("data", (data) => { this.packetParser.execute( data.parent, data.offset, data.offset + data.length ); }); } } protocolError(message, code) { if (this._closing) { return; } const err = new Error(message); err.fatal = true; err.code = code || "PROTOCOL_ERROR"; this.emit("error", err); } get fatalError() { return this._fatalError; } handlePacket(packet) { if (this._paused) { this._paused_packets.push(packet); return; } if (this.config.debug) { if (packet) { console.log( ` raw: ${packet.buffer.slice(packet.offset, packet.offset + packet.length()).toString("hex")}` ); console.trace(); const commandName = this._command ? this._command._commandName : "(no command)"; const stateName = this._command ? this._command.stateName() : "(no command)"; console.log( `${this._internalId} ${this.connectionId} ==> ${commandName}#${stateName}(${[packet.sequenceId, packet.type(), packet.length()].join(",")})` ); } } if (!this._command) { const marker = packet.peekByte(); if (marker === 255) { const error = Packets.Error.fromPacket(packet); this.protocolError(error.message, error.code); } else { this.protocolError( "Unexpected packet while no commands in the queue", "PROTOCOL_UNEXPECTED_PACKET" ); } this.close(); return; } if (packet) { if (this.sequenceId !== packet.sequenceId) { const err = new Error( `Warning: got packets out of order. Expected ${this.sequenceId} but received ${packet.sequenceId}` ); err.expected = this.sequenceId; err.received = packet.sequenceId; this.emit("warn", err); console.error(err.message); } this._bumpSequenceId(packet.numPackets); } const done = this._command.execute(packet, this); if (done) { this._command = this._commands.shift(); if (this._command) { this.sequenceId = 0; this.compressedSequenceId = 0; this.handlePacket(); } } } addCommand(cmd) { if (this.config.debug) { const commandName = cmd.constructor.name; console.log(`Add command: ${commandName}`); cmd._commandName = commandName; } if (!this._command) { this._command = cmd; this.handlePacket(); } else { this._commands.push(cmd); } return cmd; } format(sql, values) { if (typeof this.config.queryFormat === "function") { return this.config.queryFormat.call( this, sql, values, this.config.timezone ); } const opts = { sql, values }; this._resolveNamedPlaceholders(opts); return SqlString.format( opts.sql, opts.values, this.config.stringifyObjects, this.config.timezone ); } escape(value) { return SqlString.escape(value, false, this.config.timezone); } escapeId(value) { return SqlString.escapeId(value, false); } raw(sql) { return SqlString.raw(sql); } _resolveNamedPlaceholders(options) { let unnamed; if (this.config.namedPlaceholders || options.namedPlaceholders) { if (Array.isArray(options.values)) { return; } if (convertNamedPlaceholders === null) { convertNamedPlaceholders = require_named_placeholders()(); } unnamed = convertNamedPlaceholders(options.sql, options.values); options.sql = unnamed[0]; options.values = unnamed[1]; } } query(sql, values, cb) { let cmdQuery; if (sql.constructor === Commands.Query) { cmdQuery = sql; } else { cmdQuery = Connection.createQuery(sql, values, cb, this.config); } this._resolveNamedPlaceholders(cmdQuery); const rawSql = this.format(cmdQuery.sql, cmdQuery.values !== void 0 ? cmdQuery.values : []); cmdQuery.sql = rawSql; return this.addCommand(cmdQuery); } pause() { this._paused = true; this.stream.pause(); } resume() { let packet; this._paused = false; while (packet = this._paused_packets.shift()) { this.handlePacket(packet); if (this._paused) { return; } } this.stream.resume(); } prepare(options, cb) { if (typeof options === "string") { options = { sql: options }; } return this.addCommand(new Commands.Prepare(options, cb)); } unprepare(sql) { let options = {}; if (typeof sql === "object") { options = sql; } else { options.sql = sql; } const key = Connection.statementKey(options); const stmt = this._statements.get(key); if (stmt) { this._statements.delete(key); stmt.close(); } return stmt; } execute(sql, values, cb) { let options = {}; if (typeof sql === "object") { options = sql; if (typeof values === "function") { cb = values; } else { options.values = options.values || values; } } else if (typeof values === "function") { cb = values; options.sql = sql; options.values = void 0; } else { options.sql = sql; options.values = values; } this._resolveNamedPlaceholders(options); if (options.values) { if (!Array.isArray(options.values)) { throw new TypeError( "Bind parameters must be array if namedPlaceholders parameter is not enabled" ); } options.values.forEach((val) => { if (!Array.isArray(options.values)) { throw new TypeError( "Bind parameters must be array if namedPlaceholders parameter is not enabled" ); } if (val === void 0) { throw new TypeError( "Bind parameters must not contain undefined. To pass SQL NULL specify JS null" ); } if (typeof val === "function") { throw new TypeError( "Bind parameters must not contain function(s). To pass the body of a function as a string call .toString() first" ); } }); } const executeCommand = new Commands.Execute(options, cb); const prepareCommand = new Commands.Prepare(options, (err, stmt) => { if (err) { executeCommand.start = function() { return null; }; if (cb) { cb(err); } else { executeCommand.emit("error", err); } executeCommand.emit("end"); return; } executeCommand.statement = stmt; }); this.addCommand(prepareCommand); this.addCommand(executeCommand); return executeCommand; } changeUser(options, callback) { if (!callback && typeof options === "function") { callback = options; options = {}; } const charsetNumber = options.charset ? ConnectionConfig.getCharsetNumber(options.charset) : this.config.charsetNumber; return this.addCommand( new Commands.ChangeUser( { user: options.user || this.config.user, password: options.password || options.password1 || this.config.password || this.config.password1, password2: options.password2 || this.config.password2, password3: options.password3 || this.config.password3, passwordSha1: options.passwordSha1 || this.config.passwordSha1, database: options.database || this.config.database, timeout: options.timeout, charsetNumber, currentConfig: this.config }, (err) => { if (err) { err.fatal = true; } if (callback) { callback(err); } } ) ); } beginTransaction(cb) { return this.query("START TRANSACTION", cb); } commit(cb) { return this.query("COMMIT", cb); } rollback(cb) { return this.query("ROLLBACK", cb); } ping(cb) { return this.addCommand(new Commands.Ping(cb)); } _registerSlave(opts, cb) { return this.addCommand(new Commands.RegisterSlave(opts, cb)); } _binlogDump(opts, cb) { return this.addCommand(new Commands.BinlogDump(opts, cb)); } destroy() { this.close(); } close() { if (this.connectTimeout) { Timers.clearTimeout(this.connectTimeout); this.connectTimeout = null; } this._closing = true; this.stream.end(); this.addCommand = this._addCommandClosedState; } createBinlogStream(opts) { let test = 1; const stream = new Readable({ objectMode: true }); stream._read = function() { return { data: test++ }; }; this._registerSlave(opts, () => { const dumpCmd = this._binlogDump(opts); dumpCmd.on("event", (ev) => { stream.push(ev); }); dumpCmd.on("eof", () => { stream.push(null); if (opts.flags && opts.flags & 1) { this.close(); } }); }); return stream; } connect(cb) { if (!cb) { return; } if (this._fatalError || this._protocolError) { return cb(this._fatalError || this._protocolError); } if (this._handshakePacket) { return cb(null, this); } let connectCalled = 0; function callbackOnce(isErrorHandler) { return function(param) { if (!connectCalled) { if (isErrorHandler) { cb(param); } else { cb(null, param); } } connectCalled = 1; }; } this.once("error", callbackOnce(true)); this.once("connect", callbackOnce(false)); } writeColumns(columns) { this.writePacket(Packets.ResultSetHeader.toPacket(columns.length)); columns.forEach((column) => { this.writePacket( Packets.ColumnDefinition.toPacket(column, this.serverConfig.encoding) ); }); this.writeEof(); } writeTextRow(column) { this.writePacket( Packets.TextRow.toPacket(column, this.serverConfig.encoding) ); } writeBinaryRow(column) { this.writePacket( Packets.BinaryRow.toPacket(column, this.serverConfig.encoding) ); } writeTextResult(rows, columns, binary = false) { this.writeColumns(columns); rows.forEach((row) => { const arrayRow = new Array(columns.length); columns.forEach((column) => { arrayRow.push(row[column.name]); }); if (binary) { this.writeBinaryRow(arrayRow); } else this.writeTextRow(arrayRow); }); this.writeEof(); } writeEof(warnings, statusFlags) { this.writePacket(Packets.EOF.toPacket(warnings, statusFlags)); } writeOk(args) { if (!args) { args = { affectedRows: 0 }; } this.writePacket(Packets.OK.toPacket(args, this.serverConfig.encoding)); } writeError(args) { const encoding = this.serverConfig ? this.serverConfig.encoding : "cesu8"; this.writePacket(Packets.Error.toPacket(args, encoding)); } serverHandshake(args) { this.serverConfig = args; this.serverConfig.encoding = CharsetToEncoding[this.serverConfig.characterSet]; return this.addCommand(new Commands.ServerHandshake(args)); } end(callback) { if (this.config.isServer) { this._closing = true; const quitCmd2 = new EventEmitter(); setImmediate(() => { this.stream.end(); quitCmd2.emit("end"); }); return quitCmd2; } const quitCmd = this.addCommand(new Commands.Quit(callback)); this.addCommand = this._addCommandClosedState; return quitCmd; } static createQuery(sql, values, cb, config4) { let options = { rowsAsArray: config4.rowsAsArray }; if (typeof sql === "object") { options = sql; if (typeof values === "function") { cb = values; } else if (values !== void 0) { options.values = values; } } else if (typeof values === "function") { cb = values; options.sql = sql; options.values = void 0; } else { options.sql = sql; options.values = values; } return new Commands.Query(options, cb); } static statementKey(options) { return `${typeof options.nestTables}/${options.nestTables}/${options.rowsAsArray}${options.sql}`; } }; if (Tls.TLSSocket) { } else { Connection.prototype.startTLS = function _startTLS(onSecure) { if (this.config.debug) { console.log("Upgrading connection to TLS"); } const crypto = require("crypto"); const config4 = this.config; const stream = this.stream; const rejectUnauthorized = this.config.ssl.rejectUnauthorized; const credentials = crypto.createCredentials({ key: config4.ssl.key, cert: config4.ssl.cert, passphrase: config4.ssl.passphrase, ca: config4.ssl.ca, ciphers: config4.ssl.ciphers }); const securePair = Tls.createSecurePair( credentials, false, true, rejectUnauthorized ); if (stream.ondata) { stream.ondata = null; } stream.removeAllListeners("data"); stream.pipe(securePair.encrypted); securePair.encrypted.pipe(stream); securePair.cleartext.on("data", (data) => { this.packetParser.execute(data); }); this.write = function(buffer) { securePair.cleartext.write(buffer); }; securePair.on("secure", () => { onSecure(rejectUnauthorized ? securePair.ssl.verifyError() : null); }); }; } module2.exports = Connection; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool_connection.js var require_pool_connection2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool_connection.js"(exports, module2) { "use strict"; var Connection = require_mysql22().Connection; var PoolConnection = class extends Connection { constructor(pool3, options) { super(options); this._pool = pool3; this.lastActiveTime = Date.now(); this.once("end", () => { this._removeFromPool(); }); this.once("error", () => { this._removeFromPool(); }); } release() { if (!this._pool || this._pool._closed) { return; } this.lastActiveTime = Date.now(); this._pool.releaseConnection(this); } promise(promiseImpl) { const PromisePoolConnection = require_promise2().PromisePoolConnection; return new PromisePoolConnection(this, promiseImpl); } end() { const err = new Error( "Calling conn.end() to release a pooled connection is deprecated. In next version calling conn.end() will be restored to default conn.end() behavior. Use conn.release() instead." ); this.emit("warn", err); console.warn(err.message); this.release(); } destroy() { this._removeFromPool(); super.destroy(); } _removeFromPool() { if (!this._pool || this._pool._closed) { return; } const pool3 = this._pool; this._pool = null; pool3._removeConnection(this); } }; PoolConnection.statementKey = Connection.statementKey; module2.exports = PoolConnection; PoolConnection.prototype._realEnd = Connection.prototype.end; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool.js var require_pool2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool.js"(exports, module2) { "use strict"; var process2 = require("process"); var mysql3 = require_mysql22(); var EventEmitter = require("events").EventEmitter; var PoolConnection = require_pool_connection2(); var Queue = require_denque(); var Connection = require_connection2(); function spliceConnection(queue, connection) { const len = queue.length; for (let i2 = 0; i2 < len; i2++) { if (queue.get(i2) === connection) { queue.removeOne(i2); break; } } } var Pool = class extends EventEmitter { constructor(options) { super(); this.config = options.config; this.config.connectionConfig.pool = this; this._allConnections = new Queue(); this._freeConnections = new Queue(); this._connectionQueue = new Queue(); this._closed = false; if (this.config.maxIdle < this.config.connectionLimit) { this._removeIdleTimeoutConnections(); } } promise(promiseImpl) { const PromisePool = require_promise2().PromisePool; return new PromisePool(this, promiseImpl); } getConnection(cb) { if (this._closed) { return process2.nextTick(() => cb(new Error("Pool is closed."))); } let connection; if (this._freeConnections.length > 0) { connection = this._freeConnections.pop(); this.emit("acquire", connection); return process2.nextTick(() => cb(null, connection)); } if (this.config.connectionLimit === 0 || this._allConnections.length < this.config.connectionLimit) { connection = new PoolConnection(this, { config: this.config.connectionConfig }); this._allConnections.push(connection); return connection.connect((err) => { if (this._closed) { return cb(new Error("Pool is closed.")); } if (err) { return cb(err); } this.emit("connection", connection); this.emit("acquire", connection); return cb(null, connection); }); } if (!this.config.waitForConnections) { return process2.nextTick(() => cb(new Error("No connections available."))); } if (this.config.queueLimit && this._connectionQueue.length >= this.config.queueLimit) { return cb(new Error("Queue limit reached.")); } this.emit("enqueue"); return this._connectionQueue.push(cb); } releaseConnection(connection) { let cb; if (!connection._pool) { if (this._connectionQueue.length) { cb = this._connectionQueue.shift(); process2.nextTick(this.getConnection.bind(this, cb)); } } else if (this._connectionQueue.length) { cb = this._connectionQueue.shift(); process2.nextTick(cb.bind(null, null, connection)); } else { this._freeConnections.push(connection); this.emit("release", connection); } } end(cb) { this._closed = true; if (typeof cb !== "function") { cb = function(err) { if (err) { throw err; } }; } let calledBack = false; let closedConnections = 0; let connection; const endCB = function(err) { if (calledBack) { return; } if (err || ++closedConnections >= this._allConnections.length) { calledBack = true; cb(err); return; } }.bind(this); if (this._allConnections.length === 0) { endCB(); return; } for (let i2 = 0; i2 < this._allConnections.length; i2++) { connection = this._allConnections.get(i2); connection._realEnd(endCB); } } query(sql, values, cb) { const cmdQuery = Connection.createQuery( sql, values, cb, this.config.connectionConfig ); if (typeof cmdQuery.namedPlaceholders === "undefined") { cmdQuery.namedPlaceholders = this.config.connectionConfig.namedPlaceholders; } this.getConnection((err, conn) => { if (err) { if (typeof cmdQuery.onResult === "function") { cmdQuery.onResult(err); } else { cmdQuery.emit("error", err); } return; } try { conn.query(cmdQuery).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); return cmdQuery; } execute(sql, values, cb) { if (typeof values === "function") { cb = values; values = []; } this.getConnection((err, conn) => { if (err) { return cb(err); } try { conn.execute(sql, values, cb).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); return cb(e2); } }); } _removeConnection(connection) { spliceConnection(this._allConnections, connection); spliceConnection(this._freeConnections, connection); this.releaseConnection(connection); } _removeIdleTimeoutConnections() { if (this._removeIdleTimeoutConnectionsTimer) { clearTimeout(this._removeIdleTimeoutConnectionsTimer); } this._removeIdleTimeoutConnectionsTimer = setTimeout(() => { try { while (this._freeConnections.length > this.config.maxIdle && Date.now() - this._freeConnections.get(0).lastActiveTime > this.config.idleTimeout) { this._freeConnections.get(0).destroy(); } } finally { this._removeIdleTimeoutConnections(); } }, 1e3); } format(sql, values) { return mysql3.format( sql, values, this.config.connectionConfig.stringifyObjects, this.config.connectionConfig.timezone ); } escape(value) { return mysql3.escape( value, this.config.connectionConfig.stringifyObjects, this.config.connectionConfig.timezone ); } escapeId(value) { return mysql3.escapeId(value, false); } }; module2.exports = Pool; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool_config.js var require_pool_config2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool_config.js"(exports, module2) { "use strict"; var ConnectionConfig = require_connection_config2(); var PoolConfig = class { constructor(options) { if (typeof options === "string") { options = ConnectionConfig.parseUrl(options); } this.connectionConfig = new ConnectionConfig(options); this.waitForConnections = options.waitForConnections === void 0 ? true : Boolean(options.waitForConnections); this.connectionLimit = isNaN(options.connectionLimit) ? 10 : Number(options.connectionLimit); this.maxIdle = isNaN(options.maxIdle) ? this.connectionLimit : Number(options.maxIdle); this.idleTimeout = isNaN(options.idleTimeout) ? 6e4 : Number(options.idleTimeout); this.queueLimit = isNaN(options.queueLimit) ? 0 : Number(options.queueLimit); } }; module2.exports = PoolConfig; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool_cluster.js var require_pool_cluster2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/pool_cluster.js"(exports, module2) { "use strict"; var process2 = require("process"); var Pool = require_pool2(); var PoolConfig = require_pool_config2(); var Connection = require_connection2(); var EventEmitter = require("events").EventEmitter; var makeSelector = { RR() { let index = 0; return (clusterIds) => clusterIds[index++ % clusterIds.length]; }, RANDOM() { return (clusterIds) => clusterIds[Math.floor(Math.random() * clusterIds.length)]; }, ORDER() { return (clusterIds) => clusterIds[0]; } }; var PoolNamespace = class { constructor(cluster, pattern, selector) { this._cluster = cluster; this._pattern = pattern; this._selector = makeSelector[selector](); } getConnection(cb) { const clusterNode = this._getClusterNode(); if (clusterNode === null) { return cb(new Error("Pool does Not exists.")); } return this._cluster._getConnection(clusterNode, (err, connection) => { if (err) { return cb(err); } if (connection === "retry") { return this.getConnection(cb); } return cb(null, connection); }); } query(sql, values, cb) { const query = Connection.createQuery(sql, values, cb, {}); this.getConnection((err, conn) => { if (err) { if (typeof query.onResult === "function") { query.onResult(err); } else { query.emit("error", err); } return; } try { conn.query(query).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); return query; } execute(sql, values, cb) { if (typeof values === "function") { cb = values; values = []; } this.getConnection((err, conn) => { if (err) { return cb(err); } try { conn.execute(sql, values, cb).once("end", () => { conn.release(); }); } catch (e2) { conn.release(); throw e2; } }); } _getClusterNode() { const foundNodeIds = this._cluster._findNodeIds(this._pattern); if (foundNodeIds.length === 0) { return null; } const nodeId = foundNodeIds.length === 1 ? foundNodeIds[0] : this._selector(foundNodeIds); return this._cluster._getNode(nodeId); } }; var PoolCluster = class extends EventEmitter { constructor(config4) { super(); config4 = config4 || {}; this._canRetry = typeof config4.canRetry === "undefined" ? true : config4.canRetry; this._removeNodeErrorCount = config4.removeNodeErrorCount || 5; this._defaultSelector = config4.defaultSelector || "RR"; this._closed = false; this._lastId = 0; this._nodes = {}; this._serviceableNodeIds = []; this._namespaces = {}; this._findCaches = {}; } of(pattern, selector) { pattern = pattern || "*"; selector = selector || this._defaultSelector; selector = selector.toUpperCase(); if (!makeSelector[selector] === "undefined") { selector = this._defaultSelector; } const key = pattern + selector; if (typeof this._namespaces[key] === "undefined") { this._namespaces[key] = new PoolNamespace(this, pattern, selector); } return this._namespaces[key]; } add(id, config4) { if (typeof id === "object") { config4 = id; id = `CLUSTER::${++this._lastId}`; } if (typeof this._nodes[id] === "undefined") { this._nodes[id] = { id, errorCount: 0, pool: new Pool({ config: new PoolConfig(config4) }) }; this._serviceableNodeIds.push(id); this._clearFindCaches(); } } getConnection(pattern, selector, cb) { let namespace; if (typeof pattern === "function") { cb = pattern; namespace = this.of(); } else { if (typeof selector === "function") { cb = selector; selector = this._defaultSelector; } namespace = this.of(pattern, selector); } namespace.getConnection(cb); } end(callback) { const cb = callback !== void 0 ? callback : (err) => { if (err) { throw err; } }; if (this._closed) { process2.nextTick(cb); return; } this._closed = true; let calledBack = false; let waitingClose = 0; const onEnd = (err) => { if (!calledBack && (err || --waitingClose <= 0)) { calledBack = true; return cb(err); } }; for (const id in this._nodes) { waitingClose++; this._nodes[id].pool.end(onEnd); } if (waitingClose === 0) { process2.nextTick(onEnd); } } _findNodeIds(pattern) { if (typeof this._findCaches[pattern] !== "undefined") { return this._findCaches[pattern]; } let foundNodeIds; if (pattern === "*") { foundNodeIds = this._serviceableNodeIds; } else if (this._serviceableNodeIds.indexOf(pattern) !== -1) { foundNodeIds = [pattern]; } else { const keyword = pattern.substring(pattern.length - 1, 0); foundNodeIds = this._serviceableNodeIds.filter( (id) => id.startsWith(keyword) ); } this._findCaches[pattern] = foundNodeIds; return foundNodeIds; } _getNode(id) { return this._nodes[id] || null; } _increaseErrorCount(node) { if (++node.errorCount >= this._removeNodeErrorCount) { const index = this._serviceableNodeIds.indexOf(node.id); if (index !== -1) { this._serviceableNodeIds.splice(index, 1); delete this._nodes[node.id]; this._clearFindCaches(); node.pool.end(); this.emit("remove", node.id); } } } _decreaseErrorCount(node) { if (node.errorCount > 0) { --node.errorCount; } } _getConnection(node, cb) { node.pool.getConnection((err, connection) => { if (err) { this._increaseErrorCount(node); if (this._canRetry) { this.emit("warn", err); console.warn(`[Error] PoolCluster : ${err}`); return cb(null, "retry"); } return cb(err); } this._decreaseErrorCount(node); connection._clusterId = node.id; return cb(null, connection); }); } _clearFindCaches() { this._findCaches = {}; } }; module2.exports = PoolCluster; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/server.js var require_server2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/server.js"(exports, module2) { "use strict"; var net = require("net"); var EventEmitter = require("events").EventEmitter; var Connection = require_connection2(); var ConnectionConfig = require_connection_config2(); var Server = class extends EventEmitter { constructor() { super(); this.connections = []; this._server = net.createServer(this._handleConnection.bind(this)); } _handleConnection(socket) { const connectionConfig = new ConnectionConfig({ stream: socket, isServer: true }); const connection = new Connection({ config: connectionConfig }); this.emit("connection", connection); } listen(port) { this._port = port; this._server.listen.apply(this._server, arguments); return this; } close(cb) { this._server.close(cb); } }; module2.exports = Server; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/index.js var require_auth_plugins = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/lib/auth_plugins/index.js"(exports, module2) { "use strict"; module2.exports = { caching_sha2_password: require_caching_sha2_password2(), mysql_clear_password: require_mysql_clear_password(), mysql_native_password: require_mysql_native_password2(), sha256_password: require_sha256_password2() }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/index.js var require_mysql22 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/index.js"(exports) { "use strict"; var SqlString = require_sqlstring(); var Connection = require_connection2(); var ConnectionConfig = require_connection_config2(); var parserCache = require_parser_cache2(); exports.createConnection = function(opts) { return new Connection({ config: new ConnectionConfig(opts) }); }; exports.connect = exports.createConnection; exports.Connection = Connection; exports.ConnectionConfig = ConnectionConfig; var Pool = require_pool2(); var PoolCluster = require_pool_cluster2(); exports.createPool = function(config4) { const PoolConfig = require_pool_config2(); return new Pool({ config: new PoolConfig(config4) }); }; exports.createPoolCluster = function(config4) { const PoolCluster2 = require_pool_cluster2(); return new PoolCluster2(config4); }; exports.createQuery = Connection.createQuery; exports.Pool = Pool; exports.PoolCluster = PoolCluster; exports.createServer = function(handler) { const Server = require_server2(); const s2 = new Server(); if (handler) { s2.on("connection", handler); } return s2; }; exports.PoolConnection = require_pool_connection2(); exports.authPlugins = require_auth_plugins(); exports.escape = SqlString.escape; exports.escapeId = SqlString.escapeId; exports.format = SqlString.format; exports.raw = SqlString.raw; exports.__defineGetter__( "createConnectionPromise", () => require_promise2().createConnection ); exports.__defineGetter__( "createPoolPromise", () => require_promise2().createPool ); exports.__defineGetter__( "createPoolClusterPromise", () => require_promise2().createPoolCluster ); exports.__defineGetter__("Types", () => require_types2()); exports.__defineGetter__( "Charsets", () => require_charsets2() ); exports.__defineGetter__( "CharsetToEncoding", () => require_charset_encodings2() ); exports.setMaxParserCache = function(max) { parserCache.setMaxCache(max); }; exports.clearParserCache = function() { parserCache.clearCache(); }; } }); // ../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/promise.js var require_promise2 = __commonJS({ "../../node_modules/.pnpm/mysql2@3.2.0/node_modules/mysql2/promise.js"(exports) { "use strict"; var core = require_mysql22(); var EventEmitter = require("events").EventEmitter; function makeDoneCb(resolve, reject, localErr) { return function(err, rows, fields) { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sql = err.sql; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve([rows, fields]); } }; } function inheritEvents(source2, target, events) { const listeners = {}; target.on("newListener", (eventName) => { if (events.indexOf(eventName) >= 0 && !target.listenerCount(eventName)) { source2.on( eventName, listeners[eventName] = function() { const args = [].slice.call(arguments); args.unshift(eventName); target.emit.apply(target, args); } ); } }).on("removeListener", (eventName) => { if (events.indexOf(eventName) >= 0 && !target.listenerCount(eventName)) { source2.removeListener(eventName, listeners[eventName]); delete listeners[eventName]; } }); } var PromisePreparedStatementInfo = class { constructor(statement, promiseImpl) { this.statement = statement; this.Promise = promiseImpl; } execute(parameters) { const s2 = this.statement; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (parameters) { s2.execute(parameters, done); } else { s2.execute(done); } }); } close() { return new this.Promise((resolve) => { this.statement.close(); resolve(); }); } }; var PromiseConnection = class extends EventEmitter { constructor(connection, promiseImpl) { super(); this.connection = connection; this.Promise = promiseImpl || Promise; inheritEvents(connection, this, [ "error", "drain", "connect", "end", "enqueue" ]); } release() { this.connection.release(); } query(query, params) { const c2 = this.connection; const localErr = new Error(); if (typeof params === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (params !== void 0) { c2.query(query, params, done); } else { c2.query(query, done); } }); } execute(query, params) { const c2 = this.connection; const localErr = new Error(); if (typeof params === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (params !== void 0) { c2.execute(query, params, done); } else { c2.execute(query, done); } }); } end() { return new this.Promise((resolve) => { this.connection.end(resolve); }); } beginTransaction() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.beginTransaction(done); }); } commit() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.commit(done); }); } rollback() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); c2.rollback(done); }); } ping() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.ping((err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(true); } }); }); } connect() { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.connect((err, param) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(param); } }); }); } prepare(options) { const c2 = this.connection; const promiseImpl = this.Promise; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.prepare(options, (err, statement) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { const wrappedStatement = new PromisePreparedStatementInfo( statement, promiseImpl ); resolve(wrappedStatement); } }); }); } changeUser(options) { const c2 = this.connection; const localErr = new Error(); return new this.Promise((resolve, reject) => { c2.changeUser(options, (err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(); } }); }); } get config() { return this.connection.config; } get threadId() { return this.connection.threadId; } }; function createConnection(opts) { const coreConnection = core.createConnection(opts); const createConnectionErr = new Error(); const thePromise = opts.Promise || Promise; if (!thePromise) { throw new Error( "no Promise implementation available.Use promise-enabled node version or pass userland Promise implementation as parameter, for example: { Promise: require('bluebird') }" ); } return new thePromise((resolve, reject) => { coreConnection.once("connect", () => { resolve(new PromiseConnection(coreConnection, thePromise)); }); coreConnection.once("error", (err) => { createConnectionErr.message = err.message; createConnectionErr.code = err.code; createConnectionErr.errno = err.errno; createConnectionErr.sqlState = err.sqlState; reject(createConnectionErr); }); }); } (function(functionsToWrap) { for (let i2 = 0; functionsToWrap && i2 < functionsToWrap.length; i2++) { const func = functionsToWrap[i2]; if (typeof core.Connection.prototype[func] === "function" && PromiseConnection.prototype[func] === void 0) { PromiseConnection.prototype[func] = function factory(funcName) { return function() { return core.Connection.prototype[funcName].apply( this.connection, arguments ); }; }(func); } } })([ "close", "createBinlogStream", "destroy", "escape", "escapeId", "format", "pause", "pipe", "resume", "unprepare" ]); var PromisePoolConnection = class extends PromiseConnection { constructor(connection, promiseImpl) { super(connection, promiseImpl); } destroy() { return core.PoolConnection.prototype.destroy.apply( this.connection, arguments ); } }; var PromisePool = class extends EventEmitter { constructor(pool3, thePromise) { super(); this.pool = pool3; this.Promise = thePromise || Promise; inheritEvents(pool3, this, ["acquire", "connection", "enqueue", "release"]); } getConnection() { const corePool = this.pool; return new this.Promise((resolve, reject) => { corePool.getConnection((err, coreConnection) => { if (err) { reject(err); } else { resolve(new PromisePoolConnection(coreConnection, this.Promise)); } }); }); } query(sql, args) { const corePool = this.pool; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (args !== void 0) { corePool.query(sql, args, done); } else { corePool.query(sql, done); } }); } execute(sql, args) { const corePool = this.pool; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); if (args) { corePool.execute(sql, args, done); } else { corePool.execute(sql, done); } }); } end() { const corePool = this.pool; const localErr = new Error(); return new this.Promise((resolve, reject) => { corePool.end((err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(); } }); }); } }; function createPool(opts) { const corePool = core.createPool(opts); const thePromise = opts.Promise || Promise; if (!thePromise) { throw new Error( "no Promise implementation available.Use promise-enabled node version or pass userland Promise implementation as parameter, for example: { Promise: require('bluebird') }" ); } return new PromisePool(corePool, thePromise); } (function(functionsToWrap) { for (let i2 = 0; functionsToWrap && i2 < functionsToWrap.length; i2++) { const func = functionsToWrap[i2]; if (typeof core.Pool.prototype[func] === "function" && PromisePool.prototype[func] === void 0) { PromisePool.prototype[func] = function factory(funcName) { return function() { return core.Pool.prototype[funcName].apply(this.pool, arguments); }; }(func); } } })([ "escape", "escapeId", "format" ]); var PromisePoolCluster = class extends EventEmitter { constructor(poolCluster, thePromise) { super(); this.poolCluster = poolCluster; this.Promise = thePromise || Promise; inheritEvents(poolCluster, this, ["acquire", "connection", "enqueue", "release"]); } getConnection() { const corePoolCluster = this.poolCluster; return new this.Promise((resolve, reject) => { corePoolCluster.getConnection((err, coreConnection) => { if (err) { reject(err); } else { resolve(new PromisePoolConnection(coreConnection, this.Promise)); } }); }); } query(sql, args) { const corePoolCluster = this.poolCluster; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); corePoolCluster.query(sql, args, done); }); } execute(sql, args) { const corePoolCluster = this.poolCluster; const localErr = new Error(); if (typeof args === "function") { throw new Error( "Callback function is not available with promise clients." ); } return new this.Promise((resolve, reject) => { const done = makeDoneCb(resolve, reject, localErr); corePoolCluster.execute(sql, args, done); }); } of(pattern, selector) { return new PromisePoolCluster( this.poolCluster.of(pattern, selector), this.Promise ); } end() { const corePoolCluster = this.poolCluster; const localErr = new Error(); return new this.Promise((resolve, reject) => { corePoolCluster.end((err) => { if (err) { localErr.message = err.message; localErr.code = err.code; localErr.errno = err.errno; localErr.sqlState = err.sqlState; localErr.sqlMessage = err.sqlMessage; reject(localErr); } else { resolve(); } }); }); } }; (function(functionsToWrap) { for (let i2 = 0; functionsToWrap && i2 < functionsToWrap.length; i2++) { const func = functionsToWrap[i2]; if (typeof core.PoolCluster.prototype[func] === "function" && PromisePoolCluster.prototype[func] === void 0) { PromisePoolCluster.prototype[func] = function factory(funcName) { return function() { return core.PoolCluster.prototype[funcName].apply(this.poolCluster, arguments); }; }(func); } } })([ "add" ]); function createPoolCluster(opts) { const corePoolCluster = core.createPoolCluster(opts); const thePromise = opts && opts.Promise || Promise; if (!thePromise) { throw new Error( "no Promise implementation available.Use promise-enabled node version or pass userland Promise implementation as parameter, for example: { Promise: require('bluebird') }" ); } return new PromisePoolCluster(corePoolCluster, thePromise); } exports.createConnection = createConnection; exports.createPool = createPool; exports.createPoolCluster = createPoolCluster; exports.escape = core.escape; exports.escapeId = core.escapeId; exports.format = core.format; exports.raw = core.raw; exports.PromisePool = PromisePool; exports.PromiseConnection = PromiseConnection; exports.PromisePoolConnection = PromisePoolConnection; } }); // ../../node_modules/.pnpm/dayjs@1.11.7/node_modules/dayjs/dayjs.min.js var require_dayjs_min = __commonJS({ "../../node_modules/.pnpm/dayjs@1.11.7/node_modules/dayjs/dayjs.min.js"(exports, module2) { !function(t2, e2) { "object" == typeof exports && "undefined" != typeof module2 ? module2.exports = e2() : "function" == typeof define && define.amd ? define(e2) : (t2 = "undefined" != typeof globalThis ? globalThis : t2 || self).dayjs = e2(); }(exports, function() { "use strict"; var t2 = 1e3, e2 = 6e4, n = 36e5, r3 = "millisecond", i2 = "second", s2 = "minute", u = "hour", a = "day", o2 = "week", f4 = "month", h3 = "quarter", c2 = "year", d = "date", l = "Invalid Date", $ = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, y = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, M = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: function(t3) { var e3 = ["th", "st", "nd", "rd"], n2 = t3 % 100; return "[" + t3 + (e3[(n2 - 20) % 10] || e3[n2] || e3[0]) + "]"; } }, m2 = function(t3, e3, n2) { var r4 = String(t3); return !r4 || r4.length >= e3 ? t3 : "" + Array(e3 + 1 - r4.length).join(n2) + t3; }, v = { s: m2, z: function(t3) { var e3 = -t3.utcOffset(), n2 = Math.abs(e3), r4 = Math.floor(n2 / 60), i3 = n2 % 60; return (e3 <= 0 ? "+" : "-") + m2(r4, 2, "0") + ":" + m2(i3, 2, "0"); }, m: function t3(e3, n2) { if (e3.date() < n2.date()) return -t3(n2, e3); var r4 = 12 * (n2.year() - e3.year()) + (n2.month() - e3.month()), i3 = e3.clone().add(r4, f4), s3 = n2 - i3 < 0, u2 = e3.clone().add(r4 + (s3 ? -1 : 1), f4); return +(-(r4 + (n2 - i3) / (s3 ? i3 - u2 : u2 - i3)) || 0); }, a: function(t3) { return t3 < 0 ? Math.ceil(t3) || 0 : Math.floor(t3); }, p: function(t3) { return { M: f4, y: c2, w: o2, d: a, D: d, h: u, m: s2, s: i2, ms: r3, Q: h3 }[t3] || String(t3 || "").toLowerCase().replace(/s$/, ""); }, u: function(t3) { return void 0 === t3; } }, g = "en", D = {}; D[g] = M; var p = function(t3) { return t3 instanceof _; }, S2 = function t3(e3, n2, r4) { var i3; if (!e3) return g; if ("string" == typeof e3) { var s3 = e3.toLowerCase(); D[s3] && (i3 = s3), n2 && (D[s3] = n2, i3 = s3); var u2 = e3.split("-"); if (!i3 && u2.length > 1) return t3(u2[0]); } else { var a2 = e3.name; D[a2] = e3, i3 = a2; } return !r4 && i3 && (g = i3), i3 || !r4 && g; }, w = function(t3, e3) { if (p(t3)) return t3.clone(); var n2 = "object" == typeof e3 ? e3 : {}; return n2.date = t3, n2.args = arguments, new _(n2); }, O = v; O.l = S2, O.i = p, O.w = function(t3, e3) { return w(t3, { locale: e3.$L, utc: e3.$u, x: e3.$x, $offset: e3.$offset }); }; var _ = function() { function M2(t3) { this.$L = S2(t3.locale, null, true), this.parse(t3); } var m3 = M2.prototype; return m3.parse = function(t3) { this.$d = function(t4) { var e3 = t4.date, n2 = t4.utc; if (null === e3) return new Date(NaN); if (O.u(e3)) return new Date(); if (e3 instanceof Date) return new Date(e3); if ("string" == typeof e3 && !/Z$/i.test(e3)) { var r4 = e3.match($); if (r4) { var i3 = r4[2] - 1 || 0, s3 = (r4[7] || "0").substring(0, 3); return n2 ? new Date(Date.UTC(r4[1], i3, r4[3] || 1, r4[4] || 0, r4[5] || 0, r4[6] || 0, s3)) : new Date(r4[1], i3, r4[3] || 1, r4[4] || 0, r4[5] || 0, r4[6] || 0, s3); } } return new Date(e3); }(t3), this.$x = t3.x || {}, this.init(); }, m3.init = function() { var t3 = this.$d; this.$y = t3.getFullYear(), this.$M = t3.getMonth(), this.$D = t3.getDate(), this.$W = t3.getDay(), this.$H = t3.getHours(), this.$m = t3.getMinutes(), this.$s = t3.getSeconds(), this.$ms = t3.getMilliseconds(); }, m3.$utils = function() { return O; }, m3.isValid = function() { return !(this.$d.toString() === l); }, m3.isSame = function(t3, e3) { var n2 = w(t3); return this.startOf(e3) <= n2 && n2 <= this.endOf(e3); }, m3.isAfter = function(t3, e3) { return w(t3) < this.startOf(e3); }, m3.isBefore = function(t3, e3) { return this.endOf(e3) < w(t3); }, m3.$g = function(t3, e3, n2) { return O.u(t3) ? this[e3] : this.set(n2, t3); }, m3.unix = function() { return Math.floor(this.valueOf() / 1e3); }, m3.valueOf = function() { return this.$d.getTime(); }, m3.startOf = function(t3, e3) { var n2 = this, r4 = !!O.u(e3) || e3, h4 = O.p(t3), l2 = function(t4, e4) { var i3 = O.w(n2.$u ? Date.UTC(n2.$y, e4, t4) : new Date(n2.$y, e4, t4), n2); return r4 ? i3 : i3.endOf(a); }, $2 = function(t4, e4) { return O.w(n2.toDate()[t4].apply(n2.toDate("s"), (r4 ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e4)), n2); }, y2 = this.$W, M3 = this.$M, m4 = this.$D, v2 = "set" + (this.$u ? "UTC" : ""); switch (h4) { case c2: return r4 ? l2(1, 0) : l2(31, 11); case f4: return r4 ? l2(1, M3) : l2(0, M3 + 1); case o2: var g2 = this.$locale().weekStart || 0, D2 = (y2 < g2 ? y2 + 7 : y2) - g2; return l2(r4 ? m4 - D2 : m4 + (6 - D2), M3); case a: case d: return $2(v2 + "Hours", 0); case u: return $2(v2 + "Minutes", 1); case s2: return $2(v2 + "Seconds", 2); case i2: return $2(v2 + "Milliseconds", 3); default: return this.clone(); } }, m3.endOf = function(t3) { return this.startOf(t3, false); }, m3.$set = function(t3, e3) { var n2, o3 = O.p(t3), h4 = "set" + (this.$u ? "UTC" : ""), l2 = (n2 = {}, n2[a] = h4 + "Date", n2[d] = h4 + "Date", n2[f4] = h4 + "Month", n2[c2] = h4 + "FullYear", n2[u] = h4 + "Hours", n2[s2] = h4 + "Minutes", n2[i2] = h4 + "Seconds", n2[r3] = h4 + "Milliseconds", n2)[o3], $2 = o3 === a ? this.$D + (e3 - this.$W) : e3; if (o3 === f4 || o3 === c2) { var y2 = this.clone().set(d, 1); y2.$d[l2]($2), y2.init(), this.$d = y2.set(d, Math.min(this.$D, y2.daysInMonth())).$d; } else l2 && this.$d[l2]($2); return this.init(), this; }, m3.set = function(t3, e3) { return this.clone().$set(t3, e3); }, m3.get = function(t3) { return this[O.p(t3)](); }, m3.add = function(r4, h4) { var d2, l2 = this; r4 = Number(r4); var $2 = O.p(h4), y2 = function(t3) { var e3 = w(l2); return O.w(e3.date(e3.date() + Math.round(t3 * r4)), l2); }; if ($2 === f4) return this.set(f4, this.$M + r4); if ($2 === c2) return this.set(c2, this.$y + r4); if ($2 === a) return y2(1); if ($2 === o2) return y2(7); var M3 = (d2 = {}, d2[s2] = e2, d2[u] = n, d2[i2] = t2, d2)[$2] || 1, m4 = this.$d.getTime() + r4 * M3; return O.w(m4, this); }, m3.subtract = function(t3, e3) { return this.add(-1 * t3, e3); }, m3.format = function(t3) { var e3 = this, n2 = this.$locale(); if (!this.isValid()) return n2.invalidDate || l; var r4 = t3 || "YYYY-MM-DDTHH:mm:ssZ", i3 = O.z(this), s3 = this.$H, u2 = this.$m, a2 = this.$M, o3 = n2.weekdays, f5 = n2.months, h4 = function(t4, n3, i4, s4) { return t4 && (t4[n3] || t4(e3, r4)) || i4[n3].slice(0, s4); }, c3 = function(t4) { return O.s(s3 % 12 || 12, t4, "0"); }, d2 = n2.meridiem || function(t4, e4, n3) { var r5 = t4 < 12 ? "AM" : "PM"; return n3 ? r5.toLowerCase() : r5; }, $2 = { YY: String(this.$y).slice(-2), YYYY: this.$y, M: a2 + 1, MM: O.s(a2 + 1, 2, "0"), MMM: h4(n2.monthsShort, a2, f5, 3), MMMM: h4(f5, a2), D: this.$D, DD: O.s(this.$D, 2, "0"), d: String(this.$W), dd: h4(n2.weekdaysMin, this.$W, o3, 2), ddd: h4(n2.weekdaysShort, this.$W, o3, 3), dddd: o3[this.$W], H: String(s3), HH: O.s(s3, 2, "0"), h: c3(1), hh: c3(2), a: d2(s3, u2, true), A: d2(s3, u2, false), m: String(u2), mm: O.s(u2, 2, "0"), s: String(this.$s), ss: O.s(this.$s, 2, "0"), SSS: O.s(this.$ms, 3, "0"), Z: i3 }; return r4.replace(y, function(t4, e4) { return e4 || $2[t4] || i3.replace(":", ""); }); }, m3.utcOffset = function() { return 15 * -Math.round(this.$d.getTimezoneOffset() / 15); }, m3.diff = function(r4, d2, l2) { var $2, y2 = O.p(d2), M3 = w(r4), m4 = (M3.utcOffset() - this.utcOffset()) * e2, v2 = this - M3, g2 = O.m(this, M3); return g2 = ($2 = {}, $2[c2] = g2 / 12, $2[f4] = g2, $2[h3] = g2 / 3, $2[o2] = (v2 - m4) / 6048e5, $2[a] = (v2 - m4) / 864e5, $2[u] = v2 / n, $2[s2] = v2 / e2, $2[i2] = v2 / t2, $2)[y2] || v2, l2 ? g2 : O.a(g2); }, m3.daysInMonth = function() { return this.endOf(f4).$D; }, m3.$locale = function() { return D[this.$L]; }, m3.locale = function(t3, e3) { if (!t3) return this.$L; var n2 = this.clone(), r4 = S2(t3, e3, true); return r4 && (n2.$L = r4), n2; }, m3.clone = function() { return O.w(this.$d, this); }, m3.toDate = function() { return new Date(this.valueOf()); }, m3.toJSON = function() { return this.isValid() ? this.toISOString() : null; }, m3.toISOString = function() { return this.$d.toISOString(); }, m3.toString = function() { return this.$d.toUTCString(); }, M2; }(), T = _.prototype; return w.prototype = T, [["$ms", r3], ["$s", i2], ["$m", s2], ["$H", u], ["$W", a], ["$M", f4], ["$y", c2], ["$D", d]].forEach(function(t3) { T[t3[1]] = function(e3) { return this.$g(e3, t3[0], t3[1]); }; }), w.extend = function(t3, e3) { return t3.$i || (t3(e3, _, w), t3.$i = true), w; }, w.locale = S2, w.isDayjs = p, w.unix = function(t3) { return w(1e3 * t3); }, w.en = D[g], w.Ls = D, w.p = {}, w; }); } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/bind.js var require_bind = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/bind.js"(exports, module2) { "use strict"; module2.exports = function bind(fn, thisArg) { return function wrap() { var args = new Array(arguments.length); for (var i2 = 0; i2 < args.length; i2++) { args[i2] = arguments[i2]; } return fn.apply(thisArg, args); }; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/utils.js var require_utils = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/utils.js"(exports, module2) { "use strict"; var bind = require_bind(); var toString = Object.prototype.toString; function isArray(val) { return toString.call(val) === "[object Array]"; } function isUndefined(val) { return typeof val === "undefined"; } function isBuffer(val) { return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === "function" && val.constructor.isBuffer(val); } function isArrayBuffer(val) { return toString.call(val) === "[object ArrayBuffer]"; } function isFormData(val) { return typeof FormData !== "undefined" && val instanceof FormData; } function isArrayBufferView(val) { var result; if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { result = ArrayBuffer.isView(val); } else { result = val && val.buffer && val.buffer instanceof ArrayBuffer; } return result; } function isString(val) { return typeof val === "string"; } function isNumber(val) { return typeof val === "number"; } function isObject2(val) { return val !== null && typeof val === "object"; } function isPlainObject(val) { if (toString.call(val) !== "[object Object]") { return false; } var prototype = Object.getPrototypeOf(val); return prototype === null || prototype === Object.prototype; } function isDate(val) { return toString.call(val) === "[object Date]"; } function isFile(val) { return toString.call(val) === "[object File]"; } function isBlob2(val) { return toString.call(val) === "[object Blob]"; } function isFunction(val) { return toString.call(val) === "[object Function]"; } function isStream(val) { return isObject2(val) && isFunction(val.pipe); } function isURLSearchParams(val) { return typeof URLSearchParams !== "undefined" && val instanceof URLSearchParams; } function trim(str) { return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, ""); } function isStandardBrowserEnv() { if (typeof navigator !== "undefined" && (navigator.product === "ReactNative" || navigator.product === "NativeScript" || navigator.product === "NS")) { return false; } return typeof window !== "undefined" && typeof document !== "undefined"; } function forEach(obj, fn) { if (obj === null || typeof obj === "undefined") { return; } if (typeof obj !== "object") { obj = [obj]; } if (isArray(obj)) { for (var i2 = 0, l = obj.length; i2 < l; i2++) { fn.call(null, obj[i2], i2, obj); } } else { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { fn.call(null, obj[key], key, obj); } } } } function merge() { var result = {}; function assignValue(val, key) { if (isPlainObject(result[key]) && isPlainObject(val)) { result[key] = merge(result[key], val); } else if (isPlainObject(val)) { result[key] = merge({}, val); } else if (isArray(val)) { result[key] = val.slice(); } else { result[key] = val; } } for (var i2 = 0, l = arguments.length; i2 < l; i2++) { forEach(arguments[i2], assignValue); } return result; } function extend(a, b, thisArg) { forEach(b, function assignValue(val, key) { if (thisArg && typeof val === "function") { a[key] = bind(val, thisArg); } else { a[key] = val; } }); return a; } function stripBOM(content) { if (content.charCodeAt(0) === 65279) { content = content.slice(1); } return content; } module2.exports = { isArray, isArrayBuffer, isBuffer, isFormData, isArrayBufferView, isString, isNumber, isObject: isObject2, isPlainObject, isUndefined, isDate, isFile, isBlob: isBlob2, isFunction, isStream, isURLSearchParams, isStandardBrowserEnv, forEach, merge, extend, trim, stripBOM }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/buildURL.js var require_buildURL = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/buildURL.js"(exports, module2) { "use strict"; var utils = require_utils(); function encode(val) { return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); } module2.exports = function buildURL(url, params, paramsSerializer) { if (!params) { return url; } var serializedParams; if (paramsSerializer) { serializedParams = paramsSerializer(params); } else if (utils.isURLSearchParams(params)) { serializedParams = params.toString(); } else { var parts = []; utils.forEach(params, function serialize(val, key) { if (val === null || typeof val === "undefined") { return; } if (utils.isArray(val)) { key = key + "[]"; } else { val = [val]; } utils.forEach(val, function parseValue(v) { if (utils.isDate(v)) { v = v.toISOString(); } else if (utils.isObject(v)) { v = JSON.stringify(v); } parts.push(encode(key) + "=" + encode(v)); }); }); serializedParams = parts.join("&"); } if (serializedParams) { var hashmarkIndex = url.indexOf("#"); if (hashmarkIndex !== -1) { url = url.slice(0, hashmarkIndex); } url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; } return url; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/InterceptorManager.js var require_InterceptorManager = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/InterceptorManager.js"(exports, module2) { "use strict"; var utils = require_utils(); function InterceptorManager() { this.handlers = []; } InterceptorManager.prototype.use = function use(fulfilled, rejected, options) { this.handlers.push({ fulfilled, rejected, synchronous: options ? options.synchronous : false, runWhen: options ? options.runWhen : null }); return this.handlers.length - 1; }; InterceptorManager.prototype.eject = function eject(id) { if (this.handlers[id]) { this.handlers[id] = null; } }; InterceptorManager.prototype.forEach = function forEach(fn) { utils.forEach(this.handlers, function forEachHandler(h3) { if (h3 !== null) { fn(h3); } }); }; module2.exports = InterceptorManager; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/normalizeHeaderName.js var require_normalizeHeaderName = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/normalizeHeaderName.js"(exports, module2) { "use strict"; var utils = require_utils(); module2.exports = function normalizeHeaderName(headers, normalizedName) { utils.forEach(headers, function processHeader(value, name) { if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) { headers[normalizedName] = value; delete headers[name]; } }); }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/enhanceError.js var require_enhanceError = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/enhanceError.js"(exports, module2) { "use strict"; module2.exports = function enhanceError(error, config4, code, request, response) { error.config = config4; if (code) { error.code = code; } error.request = request; error.response = response; error.isAxiosError = true; error.toJSON = function toJSON() { return { message: this.message, name: this.name, description: this.description, number: this.number, fileName: this.fileName, lineNumber: this.lineNumber, columnNumber: this.columnNumber, stack: this.stack, config: this.config, code: this.code }; }; return error; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/createError.js var require_createError = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/createError.js"(exports, module2) { "use strict"; var enhanceError = require_enhanceError(); module2.exports = function createError(message, config4, code, request, response) { var error = new Error(message); return enhanceError(error, config4, code, request, response); }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/settle.js var require_settle = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/settle.js"(exports, module2) { "use strict"; var createError = require_createError(); module2.exports = function settle(resolve, reject, response) { var validateStatus = response.config.validateStatus; if (!response.status || !validateStatus || validateStatus(response.status)) { resolve(response); } else { reject(createError( "Request failed with status code " + response.status, response.config, null, response.request, response )); } }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/cookies.js var require_cookies = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/cookies.js"(exports, module2) { "use strict"; var utils = require_utils(); module2.exports = utils.isStandardBrowserEnv() ? function standardBrowserEnv() { return { write: function write(name, value, expires, path5, domain, secure) { var cookie = []; cookie.push(name + "=" + encodeURIComponent(value)); if (utils.isNumber(expires)) { cookie.push("expires=" + new Date(expires).toGMTString()); } if (utils.isString(path5)) { cookie.push("path=" + path5); } if (utils.isString(domain)) { cookie.push("domain=" + domain); } if (secure === true) { cookie.push("secure"); } document.cookie = cookie.join("; "); }, read: function read(name) { var match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); return match ? decodeURIComponent(match[3]) : null; }, remove: function remove(name) { this.write(name, "", Date.now() - 864e5); } }; }() : function nonStandardBrowserEnv() { return { write: function write() { }, read: function read() { return null; }, remove: function remove() { } }; }(); } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/isAbsoluteURL.js var require_isAbsoluteURL = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/isAbsoluteURL.js"(exports, module2) { "use strict"; module2.exports = function isAbsoluteURL(url) { return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url); }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/combineURLs.js var require_combineURLs = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/combineURLs.js"(exports, module2) { "use strict"; module2.exports = function combineURLs(baseURL, relativeURL) { return relativeURL ? baseURL.replace(/\/+$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/buildFullPath.js var require_buildFullPath = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/buildFullPath.js"(exports, module2) { "use strict"; var isAbsoluteURL = require_isAbsoluteURL(); var combineURLs = require_combineURLs(); module2.exports = function buildFullPath(baseURL, requestedURL) { if (baseURL && !isAbsoluteURL(requestedURL)) { return combineURLs(baseURL, requestedURL); } return requestedURL; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/parseHeaders.js var require_parseHeaders = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/parseHeaders.js"(exports, module2) { "use strict"; var utils = require_utils(); var ignoreDuplicateOf = [ "age", "authorization", "content-length", "content-type", "etag", "expires", "from", "host", "if-modified-since", "if-unmodified-since", "last-modified", "location", "max-forwards", "proxy-authorization", "referer", "retry-after", "user-agent" ]; module2.exports = function parseHeaders(headers) { var parsed = {}; var key; var val; var i2; if (!headers) { return parsed; } utils.forEach(headers.split("\n"), function parser(line) { i2 = line.indexOf(":"); key = utils.trim(line.substr(0, i2)).toLowerCase(); val = utils.trim(line.substr(i2 + 1)); if (key) { if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) { return; } if (key === "set-cookie") { parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]); } else { parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; } } }); return parsed; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/isURLSameOrigin.js var require_isURLSameOrigin = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/isURLSameOrigin.js"(exports, module2) { "use strict"; var utils = require_utils(); module2.exports = utils.isStandardBrowserEnv() ? function standardBrowserEnv() { var msie = /(msie|trident)/i.test(navigator.userAgent); var urlParsingNode = document.createElement("a"); var originURL; function resolveURL(url) { var href = url; if (msie) { urlParsingNode.setAttribute("href", href); href = urlParsingNode.href; } urlParsingNode.setAttribute("href", href); return { href: urlParsingNode.href, protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, "") : "", host: urlParsingNode.host, search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, "") : "", hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, "") : "", hostname: urlParsingNode.hostname, port: urlParsingNode.port, pathname: urlParsingNode.pathname.charAt(0) === "/" ? urlParsingNode.pathname : "/" + urlParsingNode.pathname }; } originURL = resolveURL(window.location.href); return function isURLSameOrigin(requestURL) { var parsed = utils.isString(requestURL) ? resolveURL(requestURL) : requestURL; return parsed.protocol === originURL.protocol && parsed.host === originURL.host; }; }() : function nonStandardBrowserEnv() { return function isURLSameOrigin() { return true; }; }(); } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/adapters/xhr.js var require_xhr = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/adapters/xhr.js"(exports, module2) { "use strict"; var utils = require_utils(); var settle = require_settle(); var cookies = require_cookies(); var buildURL = require_buildURL(); var buildFullPath = require_buildFullPath(); var parseHeaders = require_parseHeaders(); var isURLSameOrigin = require_isURLSameOrigin(); var createError = require_createError(); module2.exports = function xhrAdapter(config4) { return new Promise(function dispatchXhrRequest(resolve, reject) { var requestData = config4.data; var requestHeaders = config4.headers; var responseType = config4.responseType; if (utils.isFormData(requestData)) { delete requestHeaders["Content-Type"]; } var request = new XMLHttpRequest(); if (config4.auth) { var username = config4.auth.username || ""; var password = config4.auth.password ? unescape(encodeURIComponent(config4.auth.password)) : ""; requestHeaders.Authorization = "Basic " + btoa(username + ":" + password); } var fullPath = buildFullPath(config4.baseURL, config4.url); request.open(config4.method.toUpperCase(), buildURL(fullPath, config4.params, config4.paramsSerializer), true); request.timeout = config4.timeout; function onloadend() { if (!request) { return; } var responseHeaders = "getAllResponseHeaders" in request ? parseHeaders(request.getAllResponseHeaders()) : null; var responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; var response = { data: responseData, status: request.status, statusText: request.statusText, headers: responseHeaders, config: config4, request }; settle(resolve, reject, response); request = null; } if ("onloadend" in request) { request.onloadend = onloadend; } else { request.onreadystatechange = function handleLoad() { if (!request || request.readyState !== 4) { return; } if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { return; } setTimeout(onloadend); }; } request.onabort = function handleAbort() { if (!request) { return; } reject(createError("Request aborted", config4, "ECONNABORTED", request)); request = null; }; request.onerror = function handleError() { reject(createError("Network Error", config4, null, request)); request = null; }; request.ontimeout = function handleTimeout() { var timeoutErrorMessage = "timeout of " + config4.timeout + "ms exceeded"; if (config4.timeoutErrorMessage) { timeoutErrorMessage = config4.timeoutErrorMessage; } reject(createError( timeoutErrorMessage, config4, config4.transitional && config4.transitional.clarifyTimeoutError ? "ETIMEDOUT" : "ECONNABORTED", request )); request = null; }; if (utils.isStandardBrowserEnv()) { var xsrfValue = (config4.withCredentials || isURLSameOrigin(fullPath)) && config4.xsrfCookieName ? cookies.read(config4.xsrfCookieName) : void 0; if (xsrfValue) { requestHeaders[config4.xsrfHeaderName] = xsrfValue; } } if ("setRequestHeader" in request) { utils.forEach(requestHeaders, function setRequestHeader(val, key) { if (typeof requestData === "undefined" && key.toLowerCase() === "content-type") { delete requestHeaders[key]; } else { request.setRequestHeader(key, val); } }); } if (!utils.isUndefined(config4.withCredentials)) { request.withCredentials = !!config4.withCredentials; } if (responseType && responseType !== "json") { request.responseType = config4.responseType; } if (typeof config4.onDownloadProgress === "function") { request.addEventListener("progress", config4.onDownloadProgress); } if (typeof config4.onUploadProgress === "function" && request.upload) { request.upload.addEventListener("progress", config4.onUploadProgress); } if (config4.cancelToken) { config4.cancelToken.promise.then(function onCanceled(cancel) { if (!request) { return; } request.abort(); reject(cancel); request = null; }); } if (!requestData) { requestData = null; } request.send(requestData); }); }; } }); // ../../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js var require_ms3 = __commonJS({ "../../node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js"(exports, module2) { var s2 = 1e3; var m2 = s2 * 60; var h3 = m2 * 60; var d = h3 * 24; var w = d * 7; var y = d * 365.25; module2.exports = function(val, options) { options = options || {}; var type = typeof val; if (type === "string" && val.length > 0) { return parse2(val); } else if (type === "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 parse2(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 n = parseFloat(match[1]); var type = (match[2] || "ms").toLowerCase(); switch (type) { case "years": case "year": case "yrs": case "yr": case "y": return n * y; case "weeks": case "week": case "w": return n * w; case "days": case "day": case "d": return n * d; case "hours": case "hour": case "hrs": case "hr": case "h": return n * h3; case "minutes": case "minute": case "mins": case "min": case "m": return n * m2; case "seconds": case "second": case "secs": case "sec": case "s": return n * s2; case "milliseconds": case "millisecond": case "msecs": case "msec": case "ms": return n; default: return void 0; } } function fmtShort(ms) { var msAbs = Math.abs(ms); if (msAbs >= d) { return Math.round(ms / d) + "d"; } if (msAbs >= h3) { return Math.round(ms / h3) + "h"; } if (msAbs >= m2) { return Math.round(ms / m2) + "m"; } if (msAbs >= s2) { return Math.round(ms / s2) + "s"; } return ms + "ms"; } function fmtLong(ms) { var msAbs = Math.abs(ms); if (msAbs >= d) { return plural(ms, msAbs, d, "day"); } if (msAbs >= h3) { return plural(ms, msAbs, h3, "hour"); } if (msAbs >= m2) { return plural(ms, msAbs, m2, "minute"); } if (msAbs >= s2) { return plural(ms, msAbs, s2, "second"); } return ms + " ms"; } function plural(ms, msAbs, n, name) { var isPlural = msAbs >= n * 1.5; return Math.round(ms / n) + " " + name + (isPlural ? "s" : ""); } } }); // ../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/common.js var require_common2 = __commonJS({ "../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/common.js"(exports, module2) { function setup(env) { createDebug.debug = createDebug; createDebug.default = createDebug; createDebug.coerce = coerce; createDebug.disable = disable; createDebug.enable = enable; createDebug.enabled = enabled; createDebug.humanize = require_ms3(); 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 i2 = 0; i2 < namespace.length; i2++) { hash = (hash << 5) - hash + namespace.charCodeAt(i2); 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 index = 0; args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format3) => { if (match === "%%") { return "%"; } index++; const formatter = createDebug.formatters[format3]; if (typeof formatter === "function") { const val = args[index]; match = formatter.call(self2, val); args.splice(index, 1); index--; } 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 = extend; 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: (v) => { enableOverride = v; } }); if (typeof createDebug.init === "function") { createDebug.init(debug); } return debug; } function extend(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 i2; const split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/); const len = split.length; for (i2 = 0; i2 < len; i2++) { if (!split[i2]) { continue; } namespaces = split[i2].replace(/\*/g, ".*?"); if (namespaces[0] === "-") { createDebug.skips.push(new RegExp("^" + namespaces.slice(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(name) { if (name[name.length - 1] === "*") { return true; } let i2; let len; for (i2 = 0, len = createDebug.skips.length; i2 < len; i2++) { if (createDebug.skips[i2].test(name)) { return false; } } for (i2 = 0, len = createDebug.names.length; i2 < len; i2++) { if (createDebug.names[i2].test(name)) { 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/.pnpm/debug@4.3.4/node_modules/debug/src/browser.js var require_browser2 = __commonJS({ "../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/browser.js"(exports, module2) { exports.formatArgs = formatArgs; exports.save = save; exports.load = load; exports.useColors = useColors; exports.storage = localstorage(); exports.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`."); } }; })(); exports.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 c2 = "color: " + this.color; args.splice(1, 0, c2, "color: inherit"); let index = 0; let lastC = 0; args[0].replace(/%[a-zA-Z%]/g, (match) => { if (match === "%%") { return; } index++; if (match === "%c") { lastC = index; } }); args.splice(lastC, 0, c2); } exports.log = console.debug || console.log || (() => { }); function save(namespaces) { try { if (namespaces) { exports.storage.setItem("debug", namespaces); } else { exports.storage.removeItem("debug"); } } catch (error) { } } function load() { let r3; try { r3 = exports.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()(exports); var { formatters } = module2.exports; formatters.j = function(v) { try { return JSON.stringify(v); } catch (error) { return "[UnexpectedJSONParseError]: " + error.message; } }; } }); // ../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js var require_has_flag2 = __commonJS({ "../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js"(exports, module2) { "use strict"; module2.exports = (flag, argv = process.argv) => { const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; const position = argv.indexOf(prefix + flag); const terminatorPosition = argv.indexOf("--"); return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition); }; } }); // ../../node_modules/.pnpm/supports-color@8.1.1/node_modules/supports-color/index.js var require_supports_color = __commonJS({ "../../node_modules/.pnpm/supports-color@8.1.1/node_modules/supports-color/index.js"(exports, module2) { "use strict"; var os = require("os"); var tty = require("tty"); var hasFlag = require_has_flag2(); var { env } = process; var flagForceColor; if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) { flagForceColor = 0; } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) { flagForceColor = 1; } function envForceColor() { if ("FORCE_COLOR" in env) { if (env.FORCE_COLOR === "true") { return 1; } if (env.FORCE_COLOR === "false") { return 0; } return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3); } } function translateLevel(level) { if (level === 0) { return false; } return { level, hasBasic: true, has256: level >= 2, has16m: level >= 3 }; } function supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) { const noFlagForceColor = envForceColor(); if (noFlagForceColor !== void 0) { flagForceColor = noFlagForceColor; } const forceColor = sniffFlags ? flagForceColor : noFlagForceColor; if (forceColor === 0) { return 0; } if (sniffFlags) { if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) { return 3; } if (hasFlag("color=256")) { return 2; } } if (haveStream && !streamIsTTY && forceColor === void 0) { return 0; } const min = forceColor || 0; if (env.TERM === "dumb") { return min; } if (process.platform === "win32") { const osRelease = os.release().split("."); if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) { return Number(osRelease[2]) >= 14931 ? 3 : 2; } return 1; } if ("CI" in env) { if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") { return 1; } return min; } if ("TEAMCITY_VERSION" in env) { return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0; } if (env.COLORTERM === "truecolor") { return 3; } if ("TERM_PROGRAM" in env) { const version2 = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10); switch (env.TERM_PROGRAM) { case "iTerm.app": return version2 >= 3 ? 3 : 2; case "Apple_Terminal": return 2; } } if (/-256(color)?$/i.test(env.TERM)) { return 2; } if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) { return 1; } if ("COLORTERM" in env) { return 1; } return min; } function getSupportLevel(stream, options = {}) { const level = supportsColor(stream, { streamIsTTY: stream && stream.isTTY, ...options }); return translateLevel(level); } module2.exports = { supportsColor: getSupportLevel, stdout: getSupportLevel({ isTTY: tty.isatty(1) }), stderr: getSupportLevel({ isTTY: tty.isatty(2) }) }; } }); // ../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/node.js var require_node4 = __commonJS({ "../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/node.js"(exports, module2) { var tty = require("tty"); var util = require("util"); exports.init = init2; exports.log = log; exports.formatArgs = formatArgs; exports.save = save; exports.load = load; exports.useColors = useColors; exports.destroy = util.deprecate( () => { }, "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`." ); exports.colors = [6, 2, 3, 4, 5, 1]; try { const supportsColor = require_supports_color(); if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) { exports.colors = [ 20, 21, 26, 27, 32, 33, 38, 39, 40, 41, 42, 43, 44, 45, 56, 57, 62, 63, 68, 69, 74, 75, 76, 77, 78, 79, 80, 81, 92, 93, 98, 99, 112, 113, 128, 129, 134, 135, 148, 149, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 178, 179, 184, 185, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 214, 215, 220, 221 ]; } } catch (error) { } exports.inspectOpts = Object.keys(process.env).filter((key) => { return /^debug_/i.test(key); }).reduce((obj, key) => { const prop = key.substring(6).toLowerCase().replace(/_([a-z])/g, (_, k) => { return k.toUpperCase(); }); let val = process.env[key]; if (/^(yes|on|true|enabled)$/i.test(val)) { val = true; } else if (/^(no|off|false|disabled)$/i.test(val)) { val = false; } else if (val === "null") { val = null; } else { val = Number(val); } obj[prop] = val; return obj; }, {}); function useColors() { return "colors" in exports.inspectOpts ? Boolean(exports.inspectOpts.colors) : tty.isatty(process.stderr.fd); } function formatArgs(args) { const { namespace: name, useColors: useColors2 } = this; if (useColors2) { const c2 = this.color; const colorCode = "\x1B[3" + (c2 < 8 ? c2 : "8;5;" + c2); const prefix = ` ${colorCode};1m${name} \x1B[0m`; args[0] = prefix + args[0].split("\n").join("\n" + prefix); args.push(colorCode + "m+" + module2.exports.humanize(this.diff) + "\x1B[0m"); } else { args[0] = getDate() + name + " " + args[0]; } } function getDate() { if (exports.inspectOpts.hideDate) { return ""; } return new Date().toISOString() + " "; } function log(...args) { return process.stderr.write(util.format(...args) + "\n"); } function save(namespaces) { if (namespaces) { process.env.DEBUG = namespaces; } else { delete process.env.DEBUG; } } function load() { return process.env.DEBUG; } function init2(debug) { debug.inspectOpts = {}; const keys = Object.keys(exports.inspectOpts); for (let i2 = 0; i2 < keys.length; i2++) { debug.inspectOpts[keys[i2]] = exports.inspectOpts[keys[i2]]; } } module2.exports = require_common2()(exports); var { formatters } = module2.exports; formatters.o = function(v) { this.inspectOpts.colors = this.useColors; return util.inspect(v, this.inspectOpts).split("\n").map((str) => str.trim()).join(" "); }; formatters.O = function(v) { this.inspectOpts.colors = this.useColors; return util.inspect(v, this.inspectOpts); }; } }); // ../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/index.js var require_src = __commonJS({ "../../node_modules/.pnpm/debug@4.3.4/node_modules/debug/src/index.js"(exports, module2) { if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { module2.exports = require_browser2(); } else { module2.exports = require_node4(); } } }); // ../../node_modules/.pnpm/follow-redirects@1.15.2/node_modules/follow-redirects/debug.js var require_debug2 = __commonJS({ "../../node_modules/.pnpm/follow-redirects@1.15.2/node_modules/follow-redirects/debug.js"(exports, module2) { var debug; module2.exports = function() { if (!debug) { try { debug = require_src()("follow-redirects"); } catch (error) { } if (typeof debug !== "function") { debug = function() { }; } } debug.apply(null, arguments); }; } }); // ../../node_modules/.pnpm/follow-redirects@1.15.2/node_modules/follow-redirects/index.js var require_follow_redirects = __commonJS({ "../../node_modules/.pnpm/follow-redirects@1.15.2/node_modules/follow-redirects/index.js"(exports, module2) { var url = require("url"); var URL2 = url.URL; var http3 = require("http"); var https2 = require("https"); var Writable = require("stream").Writable; var assert = require("assert"); var debug = require_debug2(); var events = ["abort", "aborted", "connect", "error", "socket", "timeout"]; var eventHandlers = /* @__PURE__ */ Object.create(null); events.forEach(function(event) { eventHandlers[event] = function(arg1, arg2, arg3) { this._redirectable.emit(event, arg1, arg2, arg3); }; }); var InvalidUrlError = createErrorType( "ERR_INVALID_URL", "Invalid URL", TypeError ); var RedirectionError = createErrorType( "ERR_FR_REDIRECTION_FAILURE", "Redirected request failed" ); var TooManyRedirectsError = createErrorType( "ERR_FR_TOO_MANY_REDIRECTS", "Maximum number of redirects exceeded" ); var MaxBodyLengthExceededError = createErrorType( "ERR_FR_MAX_BODY_LENGTH_EXCEEDED", "Request body larger than maxBodyLength limit" ); var WriteAfterEndError = createErrorType( "ERR_STREAM_WRITE_AFTER_END", "write after end" ); function RedirectableRequest(options, responseCallback) { Writable.call(this); this._sanitizeOptions(options); this._options = options; this._ended = false; this._ending = false; this._redirectCount = 0; this._redirects = []; this._requestBodyLength = 0; this._requestBodyBuffers = []; if (responseCallback) { this.on("response", responseCallback); } var self2 = this; this._onNativeResponse = function(response) { self2._processResponse(response); }; this._performRequest(); } RedirectableRequest.prototype = Object.create(Writable.prototype); RedirectableRequest.prototype.abort = function() { abortRequest(this._currentRequest); this.emit("abort"); }; RedirectableRequest.prototype.write = function(data, encoding, callback) { if (this._ending) { throw new WriteAfterEndError(); } if (!isString(data) && !isBuffer(data)) { throw new TypeError("data should be a string, Buffer or Uint8Array"); } if (isFunction(encoding)) { callback = encoding; encoding = null; } if (data.length === 0) { if (callback) { callback(); } return; } if (this._requestBodyLength + data.length <= this._options.maxBodyLength) { this._requestBodyLength += data.length; this._requestBodyBuffers.push({ data, encoding }); this._currentRequest.write(data, encoding, callback); } else { this.emit("error", new MaxBodyLengthExceededError()); this.abort(); } }; RedirectableRequest.prototype.end = function(data, encoding, callback) { if (isFunction(data)) { callback = data; data = encoding = null; } else if (isFunction(encoding)) { callback = encoding; encoding = null; } if (!data) { this._ended = this._ending = true; this._currentRequest.end(null, null, callback); } else { var self2 = this; var currentRequest = this._currentRequest; this.write(data, encoding, function() { self2._ended = true; currentRequest.end(null, null, callback); }); this._ending = true; } }; RedirectableRequest.prototype.setHeader = function(name, value) { this._options.headers[name] = value; this._currentRequest.setHeader(name, value); }; RedirectableRequest.prototype.removeHeader = function(name) { delete this._options.headers[name]; this._currentRequest.removeHeader(name); }; RedirectableRequest.prototype.setTimeout = function(msecs, callback) { var self2 = this; function destroyOnTimeout(socket) { socket.setTimeout(msecs); socket.removeListener("timeout", socket.destroy); socket.addListener("timeout", socket.destroy); } function startTimer(socket) { if (self2._timeout) { clearTimeout(self2._timeout); } self2._timeout = setTimeout(function() { self2.emit("timeout"); clearTimer(); }, msecs); destroyOnTimeout(socket); } function clearTimer() { if (self2._timeout) { clearTimeout(self2._timeout); self2._timeout = null; } self2.removeListener("abort", clearTimer); self2.removeListener("error", clearTimer); self2.removeListener("response", clearTimer); if (callback) { self2.removeListener("timeout", callback); } if (!self2.socket) { self2._currentRequest.removeListener("socket", startTimer); } } if (callback) { this.on("timeout", callback); } if (this.socket) { startTimer(this.socket); } else { this._currentRequest.once("socket", startTimer); } this.on("socket", destroyOnTimeout); this.on("abort", clearTimer); this.on("error", clearTimer); this.on("response", clearTimer); return this; }; [ "flushHeaders", "getHeader", "setNoDelay", "setSocketKeepAlive" ].forEach(function(method) { RedirectableRequest.prototype[method] = function(a, b) { return this._currentRequest[method](a, b); }; }); ["aborted", "connection", "socket"].forEach(function(property) { Object.defineProperty(RedirectableRequest.prototype, property, { get: function() { return this._currentRequest[property]; } }); }); RedirectableRequest.prototype._sanitizeOptions = function(options) { if (!options.headers) { options.headers = {}; } if (options.host) { if (!options.hostname) { options.hostname = options.host; } delete options.host; } if (!options.pathname && options.path) { var searchPos = options.path.indexOf("?"); if (searchPos < 0) { options.pathname = options.path; } else { options.pathname = options.path.substring(0, searchPos); options.search = options.path.substring(searchPos); } } }; RedirectableRequest.prototype._performRequest = function() { var protocol = this._options.protocol; var nativeProtocol = this._options.nativeProtocols[protocol]; if (!nativeProtocol) { this.emit("error", new TypeError("Unsupported protocol " + protocol)); return; } if (this._options.agents) { var scheme = protocol.slice(0, -1); this._options.agent = this._options.agents[scheme]; } var request = this._currentRequest = nativeProtocol.request(this._options, this._onNativeResponse); request._redirectable = this; for (var event of events) { request.on(event, eventHandlers[event]); } this._currentUrl = /^\//.test(this._options.path) ? url.format(this._options) : this._options.path; if (this._isRedirect) { var i2 = 0; var self2 = this; var buffers = this._requestBodyBuffers; (function writeNext(error) { if (request === self2._currentRequest) { if (error) { self2.emit("error", error); } else if (i2 < buffers.length) { var buffer = buffers[i2++]; if (!request.finished) { request.write(buffer.data, buffer.encoding, writeNext); } } else if (self2._ended) { request.end(); } } })(); } }; RedirectableRequest.prototype._processResponse = function(response) { var statusCode = response.statusCode; if (this._options.trackRedirects) { this._redirects.push({ url: this._currentUrl, headers: response.headers, statusCode }); } var location = response.headers.location; if (!location || this._options.followRedirects === false || statusCode < 300 || statusCode >= 400) { response.responseUrl = this._currentUrl; response.redirects = this._redirects; this.emit("response", response); this._requestBodyBuffers = []; return; } abortRequest(this._currentRequest); response.destroy(); if (++this._redirectCount > this._options.maxRedirects) { this.emit("error", new TooManyRedirectsError()); return; } var requestHeaders; var beforeRedirect = this._options.beforeRedirect; if (beforeRedirect) { requestHeaders = Object.assign({ Host: response.req.getHeader("host") }, this._options.headers); } var method = this._options.method; if ((statusCode === 301 || statusCode === 302) && this._options.method === "POST" || statusCode === 303 && !/^(?:GET|HEAD)$/.test(this._options.method)) { this._options.method = "GET"; this._requestBodyBuffers = []; removeMatchingHeaders(/^content-/i, this._options.headers); } var currentHostHeader = removeMatchingHeaders(/^host$/i, this._options.headers); var currentUrlParts = url.parse(this._currentUrl); var currentHost = currentHostHeader || currentUrlParts.host; var currentUrl = /^\w+:/.test(location) ? this._currentUrl : url.format(Object.assign(currentUrlParts, { host: currentHost })); var redirectUrl; try { redirectUrl = url.resolve(currentUrl, location); } catch (cause) { this.emit("error", new RedirectionError({ cause })); return; } debug("redirecting to", redirectUrl); this._isRedirect = true; var redirectUrlParts = url.parse(redirectUrl); Object.assign(this._options, redirectUrlParts); if (redirectUrlParts.protocol !== currentUrlParts.protocol && redirectUrlParts.protocol !== "https:" || redirectUrlParts.host !== currentHost && !isSubdomain(redirectUrlParts.host, currentHost)) { removeMatchingHeaders(/^(?:authorization|cookie)$/i, this._options.headers); } if (isFunction(beforeRedirect)) { var responseDetails = { headers: response.headers, statusCode }; var requestDetails = { url: currentUrl, method, headers: requestHeaders }; try { beforeRedirect(this._options, responseDetails, requestDetails); } catch (err) { this.emit("error", err); return; } this._sanitizeOptions(this._options); } try { this._performRequest(); } catch (cause) { this.emit("error", new RedirectionError({ cause })); } }; function wrap(protocols) { var exports2 = { maxRedirects: 21, maxBodyLength: 10 * 1024 * 1024 }; var nativeProtocols = {}; Object.keys(protocols).forEach(function(scheme) { var protocol = scheme + ":"; var nativeProtocol = nativeProtocols[protocol] = protocols[scheme]; var wrappedProtocol = exports2[scheme] = Object.create(nativeProtocol); function request(input, options, callback) { if (isString(input)) { var parsed; try { parsed = urlToOptions(new URL2(input)); } catch (err) { parsed = url.parse(input); } if (!isString(parsed.protocol)) { throw new InvalidUrlError({ input }); } input = parsed; } else if (URL2 && input instanceof URL2) { input = urlToOptions(input); } else { callback = options; options = input; input = { protocol }; } if (isFunction(options)) { callback = options; options = null; } options = Object.assign({ maxRedirects: exports2.maxRedirects, maxBodyLength: exports2.maxBodyLength }, input, options); options.nativeProtocols = nativeProtocols; if (!isString(options.host) && !isString(options.hostname)) { options.hostname = "::1"; } assert.equal(options.protocol, protocol, "protocol mismatch"); debug("options", options); return new RedirectableRequest(options, callback); } function get(input, options, callback) { var wrappedRequest = wrappedProtocol.request(input, options, callback); wrappedRequest.end(); return wrappedRequest; } Object.defineProperties(wrappedProtocol, { request: { value: request, configurable: true, enumerable: true, writable: true }, get: { value: get, configurable: true, enumerable: true, writable: true } }); }); return exports2; } function noop2() { } function urlToOptions(urlObject) { var options = { protocol: urlObject.protocol, hostname: urlObject.hostname.startsWith("[") ? urlObject.hostname.slice(1, -1) : urlObject.hostname, hash: urlObject.hash, search: urlObject.search, pathname: urlObject.pathname, path: urlObject.pathname + urlObject.search, href: urlObject.href }; if (urlObject.port !== "") { options.port = Number(urlObject.port); } return options; } function removeMatchingHeaders(regex2, headers) { var lastValue; for (var header in headers) { if (regex2.test(header)) { lastValue = headers[header]; delete headers[header]; } } return lastValue === null || typeof lastValue === "undefined" ? void 0 : String(lastValue).trim(); } function createErrorType(code, message, baseClass) { function CustomError(properties) { Error.captureStackTrace(this, this.constructor); Object.assign(this, properties || {}); this.code = code; this.message = this.cause ? message + ": " + this.cause.message : message; } CustomError.prototype = new (baseClass || Error)(); CustomError.prototype.constructor = CustomError; CustomError.prototype.name = "Error [" + code + "]"; return CustomError; } function abortRequest(request) { for (var event of events) { request.removeListener(event, eventHandlers[event]); } request.on("error", noop2); request.abort(); } function isSubdomain(subdomain, domain) { assert(isString(subdomain) && isString(domain)); var dot = subdomain.length - domain.length - 1; return dot > 0 && subdomain[dot] === "." && subdomain.endsWith(domain); } function isString(value) { return typeof value === "string" || value instanceof String; } function isFunction(value) { return typeof value === "function"; } function isBuffer(value) { return typeof value === "object" && "length" in value; } module2.exports = wrap({ http: http3, https: https2 }); module2.exports.wrap = wrap; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/package.json var require_package3 = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/package.json"(exports, module2) { module2.exports = { name: "axios", version: "0.21.4", description: "Promise based HTTP client for the browser and node.js", main: "index.js", scripts: { test: "grunt test", start: "node ./sandbox/server.js", build: "NODE_ENV=production grunt build", preversion: "npm test", version: "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json", postversion: "git push && git push --tags", examples: "node ./examples/server.js", coveralls: "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js", fix: "eslint --fix lib/**/*.js" }, repository: { type: "git", url: "https://github.com/axios/axios.git" }, keywords: [ "xhr", "http", "ajax", "promise", "node" ], author: "Matt Zabriskie", license: "MIT", bugs: { url: "https://github.com/axios/axios/issues" }, homepage: "https://axios-http.com", devDependencies: { coveralls: "^3.0.0", "es6-promise": "^4.2.4", grunt: "^1.3.0", "grunt-banner": "^0.6.0", "grunt-cli": "^1.2.0", "grunt-contrib-clean": "^1.1.0", "grunt-contrib-watch": "^1.0.0", "grunt-eslint": "^23.0.0", "grunt-karma": "^4.0.0", "grunt-mocha-test": "^0.13.3", "grunt-ts": "^6.0.0-beta.19", "grunt-webpack": "^4.0.2", "istanbul-instrumenter-loader": "^1.0.0", "jasmine-core": "^2.4.1", karma: "^6.3.2", "karma-chrome-launcher": "^3.1.0", "karma-firefox-launcher": "^2.1.0", "karma-jasmine": "^1.1.1", "karma-jasmine-ajax": "^0.1.13", "karma-safari-launcher": "^1.0.0", "karma-sauce-launcher": "^4.3.6", "karma-sinon": "^1.0.5", "karma-sourcemap-loader": "^0.3.8", "karma-webpack": "^4.0.2", "load-grunt-tasks": "^3.5.2", minimist: "^1.2.0", mocha: "^8.2.1", sinon: "^4.5.0", "terser-webpack-plugin": "^4.2.3", typescript: "^4.0.5", "url-search-params": "^0.10.0", webpack: "^4.44.2", "webpack-dev-server": "^3.11.0" }, browser: { "./lib/adapters/http.js": "./lib/adapters/xhr.js" }, jsdelivr: "dist/axios.min.js", unpkg: "dist/axios.min.js", typings: "./index.d.ts", dependencies: { "follow-redirects": "^1.14.0" }, bundlesize: [ { path: "./dist/axios.min.js", threshold: "5kB" } ] }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/adapters/http.js var require_http2 = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/adapters/http.js"(exports, module2) { "use strict"; var utils = require_utils(); var settle = require_settle(); var buildFullPath = require_buildFullPath(); var buildURL = require_buildURL(); var http3 = require("http"); var https2 = require("https"); var httpFollow = require_follow_redirects().http; var httpsFollow = require_follow_redirects().https; var url = require("url"); var zlib2 = require("zlib"); var pkg = require_package3(); var createError = require_createError(); var enhanceError = require_enhanceError(); var isHttps = /https:?/; function setProxy(options, proxy, location) { options.hostname = proxy.host; options.host = proxy.host; options.port = proxy.port; options.path = location; if (proxy.auth) { var base64 = Buffer.from(proxy.auth.username + ":" + proxy.auth.password, "utf8").toString("base64"); options.headers["Proxy-Authorization"] = "Basic " + base64; } options.beforeRedirect = function beforeRedirect(redirection) { redirection.headers.host = redirection.host; setProxy(redirection, proxy, redirection.href); }; } module2.exports = function httpAdapter(config4) { return new Promise(function dispatchHttpRequest(resolvePromise, rejectPromise) { var resolve = function resolve2(value) { resolvePromise(value); }; var reject = function reject2(value) { rejectPromise(value); }; var data = config4.data; var headers = config4.headers; if ("User-Agent" in headers || "user-agent" in headers) { if (!headers["User-Agent"] && !headers["user-agent"]) { delete headers["User-Agent"]; delete headers["user-agent"]; } } else { headers["User-Agent"] = "axios/" + pkg.version; } if (data && !utils.isStream(data)) { if (Buffer.isBuffer(data)) { } else if (utils.isArrayBuffer(data)) { data = Buffer.from(new Uint8Array(data)); } else if (utils.isString(data)) { data = Buffer.from(data, "utf-8"); } else { return reject(createError( "Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream", config4 )); } headers["Content-Length"] = data.length; } var auth = void 0; if (config4.auth) { var username = config4.auth.username || ""; var password = config4.auth.password || ""; auth = username + ":" + password; } var fullPath = buildFullPath(config4.baseURL, config4.url); var parsed = url.parse(fullPath); var protocol = parsed.protocol || "http:"; if (!auth && parsed.auth) { var urlAuth = parsed.auth.split(":"); var urlUsername = urlAuth[0] || ""; var urlPassword = urlAuth[1] || ""; auth = urlUsername + ":" + urlPassword; } if (auth) { delete headers.Authorization; } var isHttpsRequest = isHttps.test(protocol); var agent = isHttpsRequest ? config4.httpsAgent : config4.httpAgent; var options = { path: buildURL(parsed.path, config4.params, config4.paramsSerializer).replace(/^\?/, ""), method: config4.method.toUpperCase(), headers, agent, agents: { http: config4.httpAgent, https: config4.httpsAgent }, auth }; if (config4.socketPath) { options.socketPath = config4.socketPath; } else { options.hostname = parsed.hostname; options.port = parsed.port; } var proxy = config4.proxy; if (!proxy && proxy !== false) { var proxyEnv = protocol.slice(0, -1) + "_proxy"; var proxyUrl = process.env[proxyEnv] || process.env[proxyEnv.toUpperCase()]; if (proxyUrl) { var parsedProxyUrl = url.parse(proxyUrl); var noProxyEnv = process.env.no_proxy || process.env.NO_PROXY; var shouldProxy = true; if (noProxyEnv) { var noProxy = noProxyEnv.split(",").map(function trim(s2) { return s2.trim(); }); shouldProxy = !noProxy.some(function proxyMatch(proxyElement) { if (!proxyElement) { return false; } if (proxyElement === "*") { return true; } if (proxyElement[0] === "." && parsed.hostname.substr(parsed.hostname.length - proxyElement.length) === proxyElement) { return true; } return parsed.hostname === proxyElement; }); } if (shouldProxy) { proxy = { host: parsedProxyUrl.hostname, port: parsedProxyUrl.port, protocol: parsedProxyUrl.protocol }; if (parsedProxyUrl.auth) { var proxyUrlAuth = parsedProxyUrl.auth.split(":"); proxy.auth = { username: proxyUrlAuth[0], password: proxyUrlAuth[1] }; } } } } if (proxy) { options.headers.host = parsed.hostname + (parsed.port ? ":" + parsed.port : ""); setProxy(options, proxy, protocol + "//" + parsed.hostname + (parsed.port ? ":" + parsed.port : "") + options.path); } var transport; var isHttpsProxy = isHttpsRequest && (proxy ? isHttps.test(proxy.protocol) : true); if (config4.transport) { transport = config4.transport; } else if (config4.maxRedirects === 0) { transport = isHttpsProxy ? https2 : http3; } else { if (config4.maxRedirects) { options.maxRedirects = config4.maxRedirects; } transport = isHttpsProxy ? httpsFollow : httpFollow; } if (config4.maxBodyLength > -1) { options.maxBodyLength = config4.maxBodyLength; } var req = transport.request(options, function handleResponse(res) { if (req.aborted) return; var stream = res; var lastRequest = res.req || req; if (res.statusCode !== 204 && lastRequest.method !== "HEAD" && config4.decompress !== false) { switch (res.headers["content-encoding"]) { case "gzip": case "compress": case "deflate": stream = stream.pipe(zlib2.createUnzip()); delete res.headers["content-encoding"]; break; } } var response = { status: res.statusCode, statusText: res.statusMessage, headers: res.headers, config: config4, request: lastRequest }; if (config4.responseType === "stream") { response.data = stream; settle(resolve, reject, response); } else { var responseBuffer = []; var totalResponseBytes = 0; stream.on("data", function handleStreamData(chunk) { responseBuffer.push(chunk); totalResponseBytes += chunk.length; if (config4.maxContentLength > -1 && totalResponseBytes > config4.maxContentLength) { stream.destroy(); reject(createError( "maxContentLength size of " + config4.maxContentLength + " exceeded", config4, null, lastRequest )); } }); stream.on("error", function handleStreamError(err) { if (req.aborted) return; reject(enhanceError(err, config4, null, lastRequest)); }); stream.on("end", function handleStreamEnd() { var responseData = Buffer.concat(responseBuffer); if (config4.responseType !== "arraybuffer") { responseData = responseData.toString(config4.responseEncoding); if (!config4.responseEncoding || config4.responseEncoding === "utf8") { responseData = utils.stripBOM(responseData); } } response.data = responseData; settle(resolve, reject, response); }); } }); req.on("error", function handleRequestError(err) { if (req.aborted && err.code !== "ERR_FR_TOO_MANY_REDIRECTS") return; reject(enhanceError(err, config4, null, req)); }); if (config4.timeout) { var timeout = parseInt(config4.timeout, 10); if (isNaN(timeout)) { reject(createError( "error trying to parse `config.timeout` to int", config4, "ERR_PARSE_TIMEOUT", req )); return; } req.setTimeout(timeout, function handleRequestTimeout() { req.abort(); reject(createError( "timeout of " + timeout + "ms exceeded", config4, config4.transitional && config4.transitional.clarifyTimeoutError ? "ETIMEDOUT" : "ECONNABORTED", req )); }); } if (config4.cancelToken) { config4.cancelToken.promise.then(function onCanceled(cancel) { if (req.aborted) return; req.abort(); reject(cancel); }); } if (utils.isStream(data)) { data.on("error", function handleStreamError(err) { reject(enhanceError(err, config4, null, req)); }).pipe(req); } else { req.end(data); } }); }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/defaults.js var require_defaults = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/defaults.js"(exports, module2) { "use strict"; var utils = require_utils(); var normalizeHeaderName = require_normalizeHeaderName(); var enhanceError = require_enhanceError(); var DEFAULT_CONTENT_TYPE = { "Content-Type": "application/x-www-form-urlencoded" }; function setContentTypeIfUnset(headers, value) { if (!utils.isUndefined(headers) && utils.isUndefined(headers["Content-Type"])) { headers["Content-Type"] = value; } } function getDefaultAdapter() { var adapter; if (typeof XMLHttpRequest !== "undefined") { adapter = require_xhr(); } else if (typeof process !== "undefined" && Object.prototype.toString.call(process) === "[object process]") { adapter = require_http2(); } return adapter; } function stringifySafely(rawValue, parser, encoder) { if (utils.isString(rawValue)) { try { (parser || JSON.parse)(rawValue); return utils.trim(rawValue); } catch (e2) { if (e2.name !== "SyntaxError") { throw e2; } } } return (encoder || JSON.stringify)(rawValue); } var defaults = { transitional: { silentJSONParsing: true, forcedJSONParsing: true, clarifyTimeoutError: false }, adapter: getDefaultAdapter(), transformRequest: [function transformRequest(data, headers) { normalizeHeaderName(headers, "Accept"); normalizeHeaderName(headers, "Content-Type"); if (utils.isFormData(data) || utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data)) { return data; } if (utils.isArrayBufferView(data)) { return data.buffer; } if (utils.isURLSearchParams(data)) { setContentTypeIfUnset(headers, "application/x-www-form-urlencoded;charset=utf-8"); return data.toString(); } if (utils.isObject(data) || headers && headers["Content-Type"] === "application/json") { setContentTypeIfUnset(headers, "application/json"); return stringifySafely(data); } return data; }], transformResponse: [function transformResponse(data) { var transitional = this.transitional; var silentJSONParsing = transitional && transitional.silentJSONParsing; var forcedJSONParsing = transitional && transitional.forcedJSONParsing; var strictJSONParsing = !silentJSONParsing && this.responseType === "json"; if (strictJSONParsing || forcedJSONParsing && utils.isString(data) && data.length) { try { return JSON.parse(data); } catch (e2) { if (strictJSONParsing) { if (e2.name === "SyntaxError") { throw enhanceError(e2, this, "E_JSON_PARSE"); } throw e2; } } } return data; }], timeout: 0, xsrfCookieName: "XSRF-TOKEN", xsrfHeaderName: "X-XSRF-TOKEN", maxContentLength: -1, maxBodyLength: -1, validateStatus: function validateStatus(status) { return status >= 200 && status < 300; } }; defaults.headers = { common: { "Accept": "application/json, text/plain, */*" } }; utils.forEach(["delete", "get", "head"], function forEachMethodNoData(method) { defaults.headers[method] = {}; }); utils.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE); }); module2.exports = defaults; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/transformData.js var require_transformData = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/transformData.js"(exports, module2) { "use strict"; var utils = require_utils(); var defaults = require_defaults(); module2.exports = function transformData(data, headers, fns) { var context = this || defaults; utils.forEach(fns, function transform(fn) { data = fn.call(context, data, headers); }); return data; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/cancel/isCancel.js var require_isCancel = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/cancel/isCancel.js"(exports, module2) { "use strict"; module2.exports = function isCancel(value) { return !!(value && value.__CANCEL__); }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/dispatchRequest.js var require_dispatchRequest = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/dispatchRequest.js"(exports, module2) { "use strict"; var utils = require_utils(); var transformData = require_transformData(); var isCancel = require_isCancel(); var defaults = require_defaults(); function throwIfCancellationRequested(config4) { if (config4.cancelToken) { config4.cancelToken.throwIfRequested(); } } module2.exports = function dispatchRequest(config4) { throwIfCancellationRequested(config4); config4.headers = config4.headers || {}; config4.data = transformData.call( config4, config4.data, config4.headers, config4.transformRequest ); config4.headers = utils.merge( config4.headers.common || {}, config4.headers[config4.method] || {}, config4.headers ); utils.forEach( ["delete", "get", "head", "post", "put", "patch", "common"], function cleanHeaderConfig(method) { delete config4.headers[method]; } ); var adapter = config4.adapter || defaults.adapter; return adapter(config4).then(function onAdapterResolution(response) { throwIfCancellationRequested(config4); response.data = transformData.call( config4, response.data, response.headers, config4.transformResponse ); return response; }, function onAdapterRejection(reason) { if (!isCancel(reason)) { throwIfCancellationRequested(config4); if (reason && reason.response) { reason.response.data = transformData.call( config4, reason.response.data, reason.response.headers, config4.transformResponse ); } } return Promise.reject(reason); }); }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/mergeConfig.js var require_mergeConfig = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/mergeConfig.js"(exports, module2) { "use strict"; var utils = require_utils(); module2.exports = function mergeConfig(config1, config22) { config22 = config22 || {}; var config4 = {}; var valueFromConfig2Keys = ["url", "method", "data"]; var mergeDeepPropertiesKeys = ["headers", "auth", "proxy", "params"]; var defaultToConfig2Keys = [ "baseURL", "transformRequest", "transformResponse", "paramsSerializer", "timeout", "timeoutMessage", "withCredentials", "adapter", "responseType", "xsrfCookieName", "xsrfHeaderName", "onUploadProgress", "onDownloadProgress", "decompress", "maxContentLength", "maxBodyLength", "maxRedirects", "transport", "httpAgent", "httpsAgent", "cancelToken", "socketPath", "responseEncoding" ]; var directMergeKeys = ["validateStatus"]; function getMergedValue(target, source2) { if (utils.isPlainObject(target) && utils.isPlainObject(source2)) { return utils.merge(target, source2); } else if (utils.isPlainObject(source2)) { return utils.merge({}, source2); } else if (utils.isArray(source2)) { return source2.slice(); } return source2; } function mergeDeepProperties(prop) { if (!utils.isUndefined(config22[prop])) { config4[prop] = getMergedValue(config1[prop], config22[prop]); } else if (!utils.isUndefined(config1[prop])) { config4[prop] = getMergedValue(void 0, config1[prop]); } } utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) { if (!utils.isUndefined(config22[prop])) { config4[prop] = getMergedValue(void 0, config22[prop]); } }); utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties); utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) { if (!utils.isUndefined(config22[prop])) { config4[prop] = getMergedValue(void 0, config22[prop]); } else if (!utils.isUndefined(config1[prop])) { config4[prop] = getMergedValue(void 0, config1[prop]); } }); utils.forEach(directMergeKeys, function merge(prop) { if (prop in config22) { config4[prop] = getMergedValue(config1[prop], config22[prop]); } else if (prop in config1) { config4[prop] = getMergedValue(void 0, config1[prop]); } }); var axiosKeys = valueFromConfig2Keys.concat(mergeDeepPropertiesKeys).concat(defaultToConfig2Keys).concat(directMergeKeys); var otherKeys = Object.keys(config1).concat(Object.keys(config22)).filter(function filterAxiosKeys(key) { return axiosKeys.indexOf(key) === -1; }); utils.forEach(otherKeys, mergeDeepProperties); return config4; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/validator.js var require_validator = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/validator.js"(exports, module2) { "use strict"; var pkg = require_package3(); var validators = {}; ["object", "boolean", "number", "function", "string", "symbol"].forEach(function(type, i2) { validators[type] = function validator(thing) { return typeof thing === type || "a" + (i2 < 1 ? "n " : " ") + type; }; }); var deprecatedWarnings = {}; var currentVerArr = pkg.version.split("."); function isOlderVersion(version2, thanVersion) { var pkgVersionArr = thanVersion ? thanVersion.split(".") : currentVerArr; var destVer = version2.split("."); for (var i2 = 0; i2 < 3; i2++) { if (pkgVersionArr[i2] > destVer[i2]) { return true; } else if (pkgVersionArr[i2] < destVer[i2]) { return false; } } return false; } validators.transitional = function transitional(validator, version2, message) { var isDeprecated = version2 && isOlderVersion(version2); function formatMessage(opt, desc) { return "[Axios v" + pkg.version + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : ""); } return function(value, opt, opts) { if (validator === false) { throw new Error(formatMessage(opt, " has been removed in " + version2)); } if (isDeprecated && !deprecatedWarnings[opt]) { deprecatedWarnings[opt] = true; console.warn( formatMessage( opt, " has been deprecated since v" + version2 + " and will be removed in the near future" ) ); } return validator ? validator(value, opt, opts) : true; }; }; function assertOptions(options, schema, allowUnknown) { if (typeof options !== "object") { throw new TypeError("options must be an object"); } var keys = Object.keys(options); var i2 = keys.length; while (i2-- > 0) { var opt = keys[i2]; var validator = schema[opt]; if (validator) { var value = options[opt]; var result = value === void 0 || validator(value, opt, options); if (result !== true) { throw new TypeError("option " + opt + " must be " + result); } continue; } if (allowUnknown !== true) { throw Error("Unknown option " + opt); } } } module2.exports = { isOlderVersion, assertOptions, validators }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/Axios.js var require_Axios = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/core/Axios.js"(exports, module2) { "use strict"; var utils = require_utils(); var buildURL = require_buildURL(); var InterceptorManager = require_InterceptorManager(); var dispatchRequest = require_dispatchRequest(); var mergeConfig = require_mergeConfig(); var validator = require_validator(); var validators = validator.validators; function Axios(instanceConfig) { this.defaults = instanceConfig; this.interceptors = { request: new InterceptorManager(), response: new InterceptorManager() }; } Axios.prototype.request = function request(config4) { if (typeof config4 === "string") { config4 = arguments[1] || {}; config4.url = arguments[0]; } else { config4 = config4 || {}; } config4 = mergeConfig(this.defaults, config4); if (config4.method) { config4.method = config4.method.toLowerCase(); } else if (this.defaults.method) { config4.method = this.defaults.method.toLowerCase(); } else { config4.method = "get"; } var transitional = config4.transitional; if (transitional !== void 0) { validator.assertOptions(transitional, { silentJSONParsing: validators.transitional(validators.boolean, "1.0.0"), forcedJSONParsing: validators.transitional(validators.boolean, "1.0.0"), clarifyTimeoutError: validators.transitional(validators.boolean, "1.0.0") }, false); } var requestInterceptorChain = []; var synchronousRequestInterceptors = true; this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config4) === false) { return; } synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); }); var responseInterceptorChain = []; this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); }); var promise; if (!synchronousRequestInterceptors) { var chain = [dispatchRequest, void 0]; Array.prototype.unshift.apply(chain, requestInterceptorChain); chain = chain.concat(responseInterceptorChain); promise = Promise.resolve(config4); while (chain.length) { promise = promise.then(chain.shift(), chain.shift()); } return promise; } var newConfig = config4; while (requestInterceptorChain.length) { var onFulfilled = requestInterceptorChain.shift(); var onRejected = requestInterceptorChain.shift(); try { newConfig = onFulfilled(newConfig); } catch (error) { onRejected(error); break; } } try { promise = dispatchRequest(newConfig); } catch (error) { return Promise.reject(error); } while (responseInterceptorChain.length) { promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift()); } return promise; }; Axios.prototype.getUri = function getUri(config4) { config4 = mergeConfig(this.defaults, config4); return buildURL(config4.url, config4.params, config4.paramsSerializer).replace(/^\?/, ""); }; utils.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { Axios.prototype[method] = function(url, config4) { return this.request(mergeConfig(config4 || {}, { method, url, data: (config4 || {}).data })); }; }); utils.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { Axios.prototype[method] = function(url, data, config4) { return this.request(mergeConfig(config4 || {}, { method, url, data })); }; }); module2.exports = Axios; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/cancel/Cancel.js var require_Cancel = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/cancel/Cancel.js"(exports, module2) { "use strict"; function Cancel(message) { this.message = message; } Cancel.prototype.toString = function toString() { return "Cancel" + (this.message ? ": " + this.message : ""); }; Cancel.prototype.__CANCEL__ = true; module2.exports = Cancel; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/cancel/CancelToken.js var require_CancelToken = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/cancel/CancelToken.js"(exports, module2) { "use strict"; var Cancel = require_Cancel(); function CancelToken(executor) { if (typeof executor !== "function") { throw new TypeError("executor must be a function."); } var resolvePromise; this.promise = new Promise(function promiseExecutor(resolve) { resolvePromise = resolve; }); var token = this; executor(function cancel(message) { if (token.reason) { return; } token.reason = new Cancel(message); resolvePromise(token.reason); }); } CancelToken.prototype.throwIfRequested = function throwIfRequested() { if (this.reason) { throw this.reason; } }; CancelToken.source = function source2() { var cancel; var token = new CancelToken(function executor(c2) { cancel = c2; }); return { token, cancel }; }; module2.exports = CancelToken; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/spread.js var require_spread = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/spread.js"(exports, module2) { "use strict"; module2.exports = function spread(callback) { return function wrap(arr) { return callback.apply(null, arr); }; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/isAxiosError.js var require_isAxiosError = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/helpers/isAxiosError.js"(exports, module2) { "use strict"; module2.exports = function isAxiosError(payload) { return typeof payload === "object" && payload.isAxiosError === true; }; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/axios.js var require_axios = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/lib/axios.js"(exports, module2) { "use strict"; var utils = require_utils(); var bind = require_bind(); var Axios = require_Axios(); var mergeConfig = require_mergeConfig(); var defaults = require_defaults(); function createInstance(defaultConfig) { var context = new Axios(defaultConfig); var instance = bind(Axios.prototype.request, context); utils.extend(instance, Axios.prototype, context); utils.extend(instance, context); return instance; } var axios2 = createInstance(defaults); axios2.Axios = Axios; axios2.create = function create(instanceConfig) { return createInstance(mergeConfig(axios2.defaults, instanceConfig)); }; axios2.Cancel = require_Cancel(); axios2.CancelToken = require_CancelToken(); axios2.isCancel = require_isCancel(); axios2.all = function all(promises) { return Promise.all(promises); }; axios2.spread = require_spread(); axios2.isAxiosError = require_isAxiosError(); module2.exports = axios2; module2.exports.default = axios2; } }); // ../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/index.js var require_axios2 = __commonJS({ "../../node_modules/.pnpm/axios@0.21.4/node_modules/axios/index.js"(exports, module2) { module2.exports = require_axios(); } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/rng.js var require_rng = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/rng.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = rng; var _crypto = _interopRequireDefault(require("crypto")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var rnds8Pool = new Uint8Array(256); var poolPtr = rnds8Pool.length; function rng() { if (poolPtr > rnds8Pool.length - 16) { _crypto.default.randomFillSync(rnds8Pool); poolPtr = 0; } return rnds8Pool.slice(poolPtr, poolPtr += 16); } } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/regex.js var require_regex = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/regex.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _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; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/validate.js var require_validate = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/validate.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _regex = _interopRequireDefault(require_regex()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function validate2(uuid2) { return typeof uuid2 === "string" && _regex.default.test(uuid2); } var _default = validate2; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/stringify.js var require_stringify = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/stringify.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _validate = _interopRequireDefault(require_validate()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var byteToHex = []; for (let i2 = 0; i2 < 256; ++i2) { byteToHex.push((i2 + 256).toString(16).substr(1)); } function stringify2(arr, offset = 0) { const uuid2 = (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 (!(0, _validate.default)(uuid2)) { throw TypeError("Stringified UUID is invalid"); } return uuid2; } var _default = stringify2; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v1.js var require_v1 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v1.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _rng = _interopRequireDefault(require_rng()); var _stringify = _interopRequireDefault(require_stringify()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _nodeId; var _clockseq; var _lastMSecs = 0; var _lastNSecs = 0; function v12(options, buf, offset) { let i2 = buf && offset || 0; const b = buf || new Array(16); options = options || {}; let node = options.node || _nodeId; let clockseq = options.clockseq !== void 0 ? options.clockseq : _clockseq; if (node == null || clockseq == null) { const seedBytes = options.random || (options.rng || _rng.default)(); if (node == null) { node = _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; } } let msecs = options.msecs !== void 0 ? options.msecs : Date.now(); let nsecs = options.nsecs !== void 0 ? options.nsecs : _lastNSecs + 1; const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 1e4; if (dt < 0 && options.clockseq === void 0) { clockseq = clockseq + 1 & 16383; } if ((dt < 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; const tl = ((msecs & 268435455) * 1e4 + nsecs) % 4294967296; b[i2++] = tl >>> 24 & 255; b[i2++] = tl >>> 16 & 255; b[i2++] = tl >>> 8 & 255; b[i2++] = tl & 255; const tmh = msecs / 4294967296 * 1e4 & 268435455; b[i2++] = tmh >>> 8 & 255; b[i2++] = tmh & 255; b[i2++] = tmh >>> 24 & 15 | 16; b[i2++] = tmh >>> 16 & 255; b[i2++] = clockseq >>> 8 | 128; b[i2++] = clockseq & 255; for (let n = 0; n < 6; ++n) { b[i2 + n] = node[n]; } return buf || (0, _stringify.default)(b); } var _default = v12; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/parse.js var require_parse = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/parse.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _validate = _interopRequireDefault(require_validate()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function parse2(uuid2) { if (!(0, _validate.default)(uuid2)) { throw TypeError("Invalid UUID"); } let v; const arr = new Uint8Array(16); arr[0] = (v = parseInt(uuid2.slice(0, 8), 16)) >>> 24; arr[1] = v >>> 16 & 255; arr[2] = v >>> 8 & 255; arr[3] = v & 255; arr[4] = (v = parseInt(uuid2.slice(9, 13), 16)) >>> 8; arr[5] = v & 255; arr[6] = (v = parseInt(uuid2.slice(14, 18), 16)) >>> 8; arr[7] = v & 255; arr[8] = (v = parseInt(uuid2.slice(19, 23), 16)) >>> 8; arr[9] = v & 255; arr[10] = (v = parseInt(uuid2.slice(24, 36), 16)) / 1099511627776 & 255; arr[11] = v / 4294967296 & 255; arr[12] = v >>> 24 & 255; arr[13] = v >>> 16 & 255; arr[14] = v >>> 8 & 255; arr[15] = v & 255; return arr; } var _default = parse2; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v35.js var require_v35 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v35.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _default; exports.URL = exports.DNS = void 0; var _stringify = _interopRequireDefault(require_stringify()); var _parse = _interopRequireDefault(require_parse()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function stringToBytes(str) { str = unescape(encodeURIComponent(str)); const bytes = []; for (let i2 = 0; i2 < str.length; ++i2) { bytes.push(str.charCodeAt(i2)); } return bytes; } var DNS = "6ba7b810-9dad-11d1-80b4-00c04fd430c8"; exports.DNS = DNS; var URL2 = "6ba7b811-9dad-11d1-80b4-00c04fd430c8"; exports.URL = URL2; function _default(name, version2, hashfunc) { function generateUUID(value, namespace, buf, offset) { if (typeof value === "string") { value = stringToBytes(value); } if (typeof namespace === "string") { namespace = (0, _parse.default)(namespace); } if (namespace.length !== 16) { throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)"); } let bytes = new Uint8Array(16 + value.length); bytes.set(namespace); bytes.set(value, namespace.length); bytes = hashfunc(bytes); bytes[6] = bytes[6] & 15 | version2; bytes[8] = bytes[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i2 = 0; i2 < 16; ++i2) { buf[offset + i2] = bytes[i2]; } return buf; } return (0, _stringify.default)(bytes); } try { generateUUID.name = name; } catch (err) { } generateUUID.DNS = DNS; generateUUID.URL = URL2; return generateUUID; } } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/md5.js var require_md5 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/md5.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _crypto = _interopRequireDefault(require("crypto")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function md5(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } return _crypto.default.createHash("md5").update(bytes).digest(); } var _default = md5; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v3.js var require_v3 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v3.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _v = _interopRequireDefault(require_v35()); var _md = _interopRequireDefault(require_md5()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var v32 = (0, _v.default)("v3", 48, _md.default); var _default = v32; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v4.js var require_v4 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v4.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _rng = _interopRequireDefault(require_rng()); var _stringify = _interopRequireDefault(require_stringify()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function v42(options, buf, offset) { options = options || {}; const rnds = options.random || (options.rng || _rng.default)(); rnds[6] = rnds[6] & 15 | 64; rnds[8] = rnds[8] & 63 | 128; if (buf) { offset = offset || 0; for (let i2 = 0; i2 < 16; ++i2) { buf[offset + i2] = rnds[i2]; } return buf; } return (0, _stringify.default)(rnds); } var _default = v42; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/sha1.js var require_sha1 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/sha1.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _crypto = _interopRequireDefault(require("crypto")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function sha1(bytes) { if (Array.isArray(bytes)) { bytes = Buffer.from(bytes); } else if (typeof bytes === "string") { bytes = Buffer.from(bytes, "utf8"); } return _crypto.default.createHash("sha1").update(bytes).digest(); } var _default = sha1; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v5.js var require_v5 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/v5.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _v = _interopRequireDefault(require_v35()); var _sha = _interopRequireDefault(require_sha1()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var v52 = (0, _v.default)("v5", 80, _sha.default); var _default = v52; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/nil.js var require_nil = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/nil.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _default = "00000000-0000-0000-0000-000000000000"; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/version.js var require_version = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/version.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _validate = _interopRequireDefault(require_validate()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function version2(uuid2) { if (!(0, _validate.default)(uuid2)) { throw TypeError("Invalid UUID"); } return parseInt(uuid2.substr(14, 1), 16); } var _default = version2; exports.default = _default; } }); // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/index.js var require_dist4 = __commonJS({ "../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/index.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "v1", { enumerable: true, get: function() { return _v.default; } }); Object.defineProperty(exports, "v3", { enumerable: true, get: function() { return _v2.default; } }); Object.defineProperty(exports, "v4", { enumerable: true, get: function() { return _v3.default; } }); Object.defineProperty(exports, "v5", { enumerable: true, get: function() { return _v4.default; } }); Object.defineProperty(exports, "NIL", { enumerable: true, get: function() { return _nil.default; } }); Object.defineProperty(exports, "version", { enumerable: true, get: function() { return _version.default; } }); Object.defineProperty(exports, "validate", { enumerable: true, get: function() { return _validate.default; } }); Object.defineProperty(exports, "stringify", { enumerable: true, get: function() { return _stringify.default; } }); Object.defineProperty(exports, "parse", { enumerable: true, get: function() { return _parse.default; } }); var _v = _interopRequireDefault(require_v1()); var _v2 = _interopRequireDefault(require_v3()); var _v3 = _interopRequireDefault(require_v4()); var _v4 = _interopRequireDefault(require_v5()); var _nil = _interopRequireDefault(require_nil()); var _version = _interopRequireDefault(require_version()); var _validate = _interopRequireDefault(require_validate()); var _stringify = _interopRequireDefault(require_stringify()); var _parse = _interopRequireDefault(require_parse()); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } } }); // ../../node_modules/.pnpm/web-streams-polyfill@3.2.1/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js var require_ponyfill_es2018 = __commonJS({ "../../node_modules/.pnpm/web-streams-polyfill@3.2.1/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js"(exports, module2) { (function(global2, factory) { typeof exports === "object" && typeof module2 !== "undefined" ? factory(exports) : typeof define === "function" && define.amd ? define(["exports"], factory) : (global2 = typeof globalThis !== "undefined" ? globalThis : global2 || self, factory(global2.WebStreamsPolyfill = {})); })(exports, function(exports2) { "use strict"; const SymbolPolyfill = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? Symbol : (description) => `Symbol(${description})`; function noop2() { return void 0; } function getGlobals() { if (typeof self !== "undefined") { return self; } else if (typeof window !== "undefined") { return window; } else if (typeof global !== "undefined") { return global; } return void 0; } const globals = getGlobals(); function typeIsObject(x2) { return typeof x2 === "object" && x2 !== null || typeof x2 === "function"; } const rethrowAssertionErrorRejection = noop2; const originalPromise = Promise; const originalPromiseThen = Promise.prototype.then; const originalPromiseResolve = Promise.resolve.bind(originalPromise); const originalPromiseReject = Promise.reject.bind(originalPromise); function newPromise(executor) { return new originalPromise(executor); } function promiseResolvedWith(value) { return originalPromiseResolve(value); } function promiseRejectedWith(reason) { return originalPromiseReject(reason); } function PerformPromiseThen(promise, onFulfilled, onRejected) { return originalPromiseThen.call(promise, onFulfilled, onRejected); } function uponPromise(promise, onFulfilled, onRejected) { PerformPromiseThen(PerformPromiseThen(promise, onFulfilled, onRejected), void 0, rethrowAssertionErrorRejection); } function uponFulfillment(promise, onFulfilled) { uponPromise(promise, onFulfilled); } function uponRejection(promise, onRejected) { uponPromise(promise, void 0, onRejected); } function transformPromiseWith(promise, fulfillmentHandler, rejectionHandler) { return PerformPromiseThen(promise, fulfillmentHandler, rejectionHandler); } function setPromiseIsHandledToTrue(promise) { PerformPromiseThen(promise, void 0, rethrowAssertionErrorRejection); } const queueMicrotask2 = (() => { const globalQueueMicrotask = globals && globals.queueMicrotask; if (typeof globalQueueMicrotask === "function") { return globalQueueMicrotask; } const resolvedPromise = promiseResolvedWith(void 0); return (fn) => PerformPromiseThen(resolvedPromise, fn); })(); function reflectCall(F2, V, args) { if (typeof F2 !== "function") { throw new TypeError("Argument is not a function"); } return Function.prototype.apply.call(F2, V, args); } function promiseCall(F2, V, args) { try { return promiseResolvedWith(reflectCall(F2, V, args)); } catch (value) { return promiseRejectedWith(value); } } const QUEUE_MAX_ARRAY_SIZE = 16384; class SimpleQueue { constructor() { this._cursor = 0; this._size = 0; this._front = { _elements: [], _next: void 0 }; this._back = this._front; this._cursor = 0; this._size = 0; } get length() { return this._size; } push(element) { const oldBack = this._back; let newBack = oldBack; if (oldBack._elements.length === QUEUE_MAX_ARRAY_SIZE - 1) { newBack = { _elements: [], _next: void 0 }; } oldBack._elements.push(element); if (newBack !== oldBack) { this._back = newBack; oldBack._next = newBack; } ++this._size; } shift() { const oldFront = this._front; let newFront = oldFront; const oldCursor = this._cursor; let newCursor = oldCursor + 1; const elements = oldFront._elements; const element = elements[oldCursor]; if (newCursor === QUEUE_MAX_ARRAY_SIZE) { newFront = oldFront._next; newCursor = 0; } --this._size; this._cursor = newCursor; if (oldFront !== newFront) { this._front = newFront; } elements[oldCursor] = void 0; return element; } forEach(callback) { let i2 = this._cursor; let node = this._front; let elements = node._elements; while (i2 !== elements.length || node._next !== void 0) { if (i2 === elements.length) { node = node._next; elements = node._elements; i2 = 0; if (elements.length === 0) { break; } } callback(elements[i2]); ++i2; } } peek() { const front = this._front; const cursor = this._cursor; return front._elements[cursor]; } } function ReadableStreamReaderGenericInitialize(reader, stream) { reader._ownerReadableStream = stream; stream._reader = reader; if (stream._state === "readable") { defaultReaderClosedPromiseInitialize(reader); } else if (stream._state === "closed") { defaultReaderClosedPromiseInitializeAsResolved(reader); } else { defaultReaderClosedPromiseInitializeAsRejected(reader, stream._storedError); } } function ReadableStreamReaderGenericCancel(reader, reason) { const stream = reader._ownerReadableStream; return ReadableStreamCancel(stream, reason); } function ReadableStreamReaderGenericRelease(reader) { if (reader._ownerReadableStream._state === "readable") { defaultReaderClosedPromiseReject(reader, new TypeError(`Reader was released and can no longer be used to monitor the stream's closedness`)); } else { defaultReaderClosedPromiseResetToRejected(reader, new TypeError(`Reader was released and can no longer be used to monitor the stream's closedness`)); } reader._ownerReadableStream._reader = void 0; reader._ownerReadableStream = void 0; } function readerLockException(name) { return new TypeError("Cannot " + name + " a stream using a released reader"); } function defaultReaderClosedPromiseInitialize(reader) { reader._closedPromise = newPromise((resolve, reject) => { reader._closedPromise_resolve = resolve; reader._closedPromise_reject = reject; }); } function defaultReaderClosedPromiseInitializeAsRejected(reader, reason) { defaultReaderClosedPromiseInitialize(reader); defaultReaderClosedPromiseReject(reader, reason); } function defaultReaderClosedPromiseInitializeAsResolved(reader) { defaultReaderClosedPromiseInitialize(reader); defaultReaderClosedPromiseResolve(reader); } function defaultReaderClosedPromiseReject(reader, reason) { if (reader._closedPromise_reject === void 0) { return; } setPromiseIsHandledToTrue(reader._closedPromise); reader._closedPromise_reject(reason); reader._closedPromise_resolve = void 0; reader._closedPromise_reject = void 0; } function defaultReaderClosedPromiseResetToRejected(reader, reason) { defaultReaderClosedPromiseInitializeAsRejected(reader, reason); } function defaultReaderClosedPromiseResolve(reader) { if (reader._closedPromise_resolve === void 0) { return; } reader._closedPromise_resolve(void 0); reader._closedPromise_resolve = void 0; reader._closedPromise_reject = void 0; } const AbortSteps = SymbolPolyfill("[[AbortSteps]]"); const ErrorSteps = SymbolPolyfill("[[ErrorSteps]]"); const CancelSteps = SymbolPolyfill("[[CancelSteps]]"); const PullSteps = SymbolPolyfill("[[PullSteps]]"); const NumberIsFinite = Number.isFinite || function(x2) { return typeof x2 === "number" && isFinite(x2); }; const MathTrunc = Math.trunc || function(v) { return v < 0 ? Math.ceil(v) : Math.floor(v); }; function isDictionary(x2) { return typeof x2 === "object" || typeof x2 === "function"; } function assertDictionary(obj, context) { if (obj !== void 0 && !isDictionary(obj)) { throw new TypeError(`${context} is not an object.`); } } function assertFunction(x2, context) { if (typeof x2 !== "function") { throw new TypeError(`${context} is not a function.`); } } function isObject2(x2) { return typeof x2 === "object" && x2 !== null || typeof x2 === "function"; } function assertObject(x2, context) { if (!isObject2(x2)) { throw new TypeError(`${context} is not an object.`); } } function assertRequiredArgument(x2, position, context) { if (x2 === void 0) { throw new TypeError(`Parameter ${position} is required in '${context}'.`); } } function assertRequiredField(x2, field, context) { if (x2 === void 0) { throw new TypeError(`${field} is required in '${context}'.`); } } function convertUnrestrictedDouble(value) { return Number(value); } function censorNegativeZero(x2) { return x2 === 0 ? 0 : x2; } function integerPart(x2) { return censorNegativeZero(MathTrunc(x2)); } function convertUnsignedLongLongWithEnforceRange(value, context) { const lowerBound = 0; const upperBound = Number.MAX_SAFE_INTEGER; let x2 = Number(value); x2 = censorNegativeZero(x2); if (!NumberIsFinite(x2)) { throw new TypeError(`${context} is not a finite number`); } x2 = integerPart(x2); if (x2 < lowerBound || x2 > upperBound) { throw new TypeError(`${context} is outside the accepted range of ${lowerBound} to ${upperBound}, inclusive`); } if (!NumberIsFinite(x2) || x2 === 0) { return 0; } return x2; } function assertReadableStream(x2, context) { if (!IsReadableStream(x2)) { throw new TypeError(`${context} is not a ReadableStream.`); } } function AcquireReadableStreamDefaultReader(stream) { return new ReadableStreamDefaultReader(stream); } function ReadableStreamAddReadRequest(stream, readRequest) { stream._reader._readRequests.push(readRequest); } function ReadableStreamFulfillReadRequest(stream, chunk, done) { const reader = stream._reader; const readRequest = reader._readRequests.shift(); if (done) { readRequest._closeSteps(); } else { readRequest._chunkSteps(chunk); } } function ReadableStreamGetNumReadRequests(stream) { return stream._reader._readRequests.length; } function ReadableStreamHasDefaultReader(stream) { const reader = stream._reader; if (reader === void 0) { return false; } if (!IsReadableStreamDefaultReader(reader)) { return false; } return true; } class ReadableStreamDefaultReader { constructor(stream) { assertRequiredArgument(stream, 1, "ReadableStreamDefaultReader"); assertReadableStream(stream, "First parameter"); if (IsReadableStreamLocked(stream)) { throw new TypeError("This stream has already been locked for exclusive reading by another reader"); } ReadableStreamReaderGenericInitialize(this, stream); this._readRequests = new SimpleQueue(); } get closed() { if (!IsReadableStreamDefaultReader(this)) { return promiseRejectedWith(defaultReaderBrandCheckException("closed")); } return this._closedPromise; } cancel(reason = void 0) { if (!IsReadableStreamDefaultReader(this)) { return promiseRejectedWith(defaultReaderBrandCheckException("cancel")); } if (this._ownerReadableStream === void 0) { return promiseRejectedWith(readerLockException("cancel")); } return ReadableStreamReaderGenericCancel(this, reason); } read() { if (!IsReadableStreamDefaultReader(this)) { return promiseRejectedWith(defaultReaderBrandCheckException("read")); } if (this._ownerReadableStream === void 0) { return promiseRejectedWith(readerLockException("read from")); } let resolvePromise; let rejectPromise; const promise = newPromise((resolve, reject) => { resolvePromise = resolve; rejectPromise = reject; }); const readRequest = { _chunkSteps: (chunk) => resolvePromise({ value: chunk, done: false }), _closeSteps: () => resolvePromise({ value: void 0, done: true }), _errorSteps: (e2) => rejectPromise(e2) }; ReadableStreamDefaultReaderRead(this, readRequest); return promise; } releaseLock() { if (!IsReadableStreamDefaultReader(this)) { throw defaultReaderBrandCheckException("releaseLock"); } if (this._ownerReadableStream === void 0) { return; } if (this._readRequests.length > 0) { throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled"); } ReadableStreamReaderGenericRelease(this); } } Object.defineProperties(ReadableStreamDefaultReader.prototype, { cancel: { enumerable: true }, read: { enumerable: true }, releaseLock: { enumerable: true }, closed: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ReadableStreamDefaultReader.prototype, SymbolPolyfill.toStringTag, { value: "ReadableStreamDefaultReader", configurable: true }); } function IsReadableStreamDefaultReader(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_readRequests")) { return false; } return x2 instanceof ReadableStreamDefaultReader; } function ReadableStreamDefaultReaderRead(reader, readRequest) { const stream = reader._ownerReadableStream; stream._disturbed = true; if (stream._state === "closed") { readRequest._closeSteps(); } else if (stream._state === "errored") { readRequest._errorSteps(stream._storedError); } else { stream._readableStreamController[PullSteps](readRequest); } } function defaultReaderBrandCheckException(name) { return new TypeError(`ReadableStreamDefaultReader.prototype.${name} can only be used on a ReadableStreamDefaultReader`); } const AsyncIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf(async function* () { }).prototype); class ReadableStreamAsyncIteratorImpl { constructor(reader, preventCancel) { this._ongoingPromise = void 0; this._isFinished = false; this._reader = reader; this._preventCancel = preventCancel; } next() { const nextSteps = () => this._nextSteps(); this._ongoingPromise = this._ongoingPromise ? transformPromiseWith(this._ongoingPromise, nextSteps, nextSteps) : nextSteps(); return this._ongoingPromise; } return(value) { const returnSteps = () => this._returnSteps(value); return this._ongoingPromise ? transformPromiseWith(this._ongoingPromise, returnSteps, returnSteps) : returnSteps(); } _nextSteps() { if (this._isFinished) { return Promise.resolve({ value: void 0, done: true }); } const reader = this._reader; if (reader._ownerReadableStream === void 0) { return promiseRejectedWith(readerLockException("iterate")); } let resolvePromise; let rejectPromise; const promise = newPromise((resolve, reject) => { resolvePromise = resolve; rejectPromise = reject; }); const readRequest = { _chunkSteps: (chunk) => { this._ongoingPromise = void 0; queueMicrotask2(() => resolvePromise({ value: chunk, done: false })); }, _closeSteps: () => { this._ongoingPromise = void 0; this._isFinished = true; ReadableStreamReaderGenericRelease(reader); resolvePromise({ value: void 0, done: true }); }, _errorSteps: (reason) => { this._ongoingPromise = void 0; this._isFinished = true; ReadableStreamReaderGenericRelease(reader); rejectPromise(reason); } }; ReadableStreamDefaultReaderRead(reader, readRequest); return promise; } _returnSteps(value) { if (this._isFinished) { return Promise.resolve({ value, done: true }); } this._isFinished = true; const reader = this._reader; if (reader._ownerReadableStream === void 0) { return promiseRejectedWith(readerLockException("finish iterating")); } if (!this._preventCancel) { const result = ReadableStreamReaderGenericCancel(reader, value); ReadableStreamReaderGenericRelease(reader); return transformPromiseWith(result, () => ({ value, done: true })); } ReadableStreamReaderGenericRelease(reader); return promiseResolvedWith({ value, done: true }); } } const ReadableStreamAsyncIteratorPrototype = { next() { if (!IsReadableStreamAsyncIterator(this)) { return promiseRejectedWith(streamAsyncIteratorBrandCheckException("next")); } return this._asyncIteratorImpl.next(); }, return(value) { if (!IsReadableStreamAsyncIterator(this)) { return promiseRejectedWith(streamAsyncIteratorBrandCheckException("return")); } return this._asyncIteratorImpl.return(value); } }; if (AsyncIteratorPrototype !== void 0) { Object.setPrototypeOf(ReadableStreamAsyncIteratorPrototype, AsyncIteratorPrototype); } function AcquireReadableStreamAsyncIterator(stream, preventCancel) { const reader = AcquireReadableStreamDefaultReader(stream); const impl = new ReadableStreamAsyncIteratorImpl(reader, preventCancel); const iterator = Object.create(ReadableStreamAsyncIteratorPrototype); iterator._asyncIteratorImpl = impl; return iterator; } function IsReadableStreamAsyncIterator(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_asyncIteratorImpl")) { return false; } try { return x2._asyncIteratorImpl instanceof ReadableStreamAsyncIteratorImpl; } catch (_a4) { return false; } } function streamAsyncIteratorBrandCheckException(name) { return new TypeError(`ReadableStreamAsyncIterator.${name} can only be used on a ReadableSteamAsyncIterator`); } const NumberIsNaN = Number.isNaN || function(x2) { return x2 !== x2; }; function CreateArrayFromList(elements) { return elements.slice(); } function CopyDataBlockBytes(dest, destOffset, src, srcOffset, n) { new Uint8Array(dest).set(new Uint8Array(src, srcOffset, n), destOffset); } function TransferArrayBuffer(O) { return O; } function IsDetachedBuffer(O) { return false; } function ArrayBufferSlice(buffer, begin, end) { if (buffer.slice) { return buffer.slice(begin, end); } const length = end - begin; const slice = new ArrayBuffer(length); CopyDataBlockBytes(slice, 0, buffer, begin, length); return slice; } function IsNonNegativeNumber(v) { if (typeof v !== "number") { return false; } if (NumberIsNaN(v)) { return false; } if (v < 0) { return false; } return true; } function CloneAsUint8Array(O) { const buffer = ArrayBufferSlice(O.buffer, O.byteOffset, O.byteOffset + O.byteLength); return new Uint8Array(buffer); } function DequeueValue(container) { const pair = container._queue.shift(); container._queueTotalSize -= pair.size; if (container._queueTotalSize < 0) { container._queueTotalSize = 0; } return pair.value; } function EnqueueValueWithSize(container, value, size) { if (!IsNonNegativeNumber(size) || size === Infinity) { throw new RangeError("Size must be a finite, non-NaN, non-negative number."); } container._queue.push({ value, size }); container._queueTotalSize += size; } function PeekQueueValue(container) { const pair = container._queue.peek(); return pair.value; } function ResetQueue(container) { container._queue = new SimpleQueue(); container._queueTotalSize = 0; } class ReadableStreamBYOBRequest { constructor() { throw new TypeError("Illegal constructor"); } get view() { if (!IsReadableStreamBYOBRequest(this)) { throw byobRequestBrandCheckException("view"); } return this._view; } respond(bytesWritten) { if (!IsReadableStreamBYOBRequest(this)) { throw byobRequestBrandCheckException("respond"); } assertRequiredArgument(bytesWritten, 1, "respond"); bytesWritten = convertUnsignedLongLongWithEnforceRange(bytesWritten, "First parameter"); if (this._associatedReadableByteStreamController === void 0) { throw new TypeError("This BYOB request has been invalidated"); } if (IsDetachedBuffer(this._view.buffer)) ; ReadableByteStreamControllerRespond(this._associatedReadableByteStreamController, bytesWritten); } respondWithNewView(view) { if (!IsReadableStreamBYOBRequest(this)) { throw byobRequestBrandCheckException("respondWithNewView"); } assertRequiredArgument(view, 1, "respondWithNewView"); if (!ArrayBuffer.isView(view)) { throw new TypeError("You can only respond with array buffer views"); } if (this._associatedReadableByteStreamController === void 0) { throw new TypeError("This BYOB request has been invalidated"); } if (IsDetachedBuffer(view.buffer)) ; ReadableByteStreamControllerRespondWithNewView(this._associatedReadableByteStreamController, view); } } Object.defineProperties(ReadableStreamBYOBRequest.prototype, { respond: { enumerable: true }, respondWithNewView: { enumerable: true }, view: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ReadableStreamBYOBRequest.prototype, SymbolPolyfill.toStringTag, { value: "ReadableStreamBYOBRequest", configurable: true }); } class ReadableByteStreamController { constructor() { throw new TypeError("Illegal constructor"); } get byobRequest() { if (!IsReadableByteStreamController(this)) { throw byteStreamControllerBrandCheckException("byobRequest"); } return ReadableByteStreamControllerGetBYOBRequest(this); } get desiredSize() { if (!IsReadableByteStreamController(this)) { throw byteStreamControllerBrandCheckException("desiredSize"); } return ReadableByteStreamControllerGetDesiredSize(this); } close() { if (!IsReadableByteStreamController(this)) { throw byteStreamControllerBrandCheckException("close"); } if (this._closeRequested) { throw new TypeError("The stream has already been closed; do not close it again!"); } const state = this._controlledReadableByteStream._state; if (state !== "readable") { throw new TypeError(`The stream (in ${state} state) is not in the readable state and cannot be closed`); } ReadableByteStreamControllerClose(this); } enqueue(chunk) { if (!IsReadableByteStreamController(this)) { throw byteStreamControllerBrandCheckException("enqueue"); } assertRequiredArgument(chunk, 1, "enqueue"); if (!ArrayBuffer.isView(chunk)) { throw new TypeError("chunk must be an array buffer view"); } if (chunk.byteLength === 0) { throw new TypeError("chunk must have non-zero byteLength"); } if (chunk.buffer.byteLength === 0) { throw new TypeError(`chunk's buffer must have non-zero byteLength`); } if (this._closeRequested) { throw new TypeError("stream is closed or draining"); } const state = this._controlledReadableByteStream._state; if (state !== "readable") { throw new TypeError(`The stream (in ${state} state) is not in the readable state and cannot be enqueued to`); } ReadableByteStreamControllerEnqueue(this, chunk); } error(e2 = void 0) { if (!IsReadableByteStreamController(this)) { throw byteStreamControllerBrandCheckException("error"); } ReadableByteStreamControllerError(this, e2); } [CancelSteps](reason) { ReadableByteStreamControllerClearPendingPullIntos(this); ResetQueue(this); const result = this._cancelAlgorithm(reason); ReadableByteStreamControllerClearAlgorithms(this); return result; } [PullSteps](readRequest) { const stream = this._controlledReadableByteStream; if (this._queueTotalSize > 0) { const entry = this._queue.shift(); this._queueTotalSize -= entry.byteLength; ReadableByteStreamControllerHandleQueueDrain(this); const view = new Uint8Array(entry.buffer, entry.byteOffset, entry.byteLength); readRequest._chunkSteps(view); return; } const autoAllocateChunkSize = this._autoAllocateChunkSize; if (autoAllocateChunkSize !== void 0) { let buffer; try { buffer = new ArrayBuffer(autoAllocateChunkSize); } catch (bufferE) { readRequest._errorSteps(bufferE); return; } const pullIntoDescriptor = { buffer, bufferByteLength: autoAllocateChunkSize, byteOffset: 0, byteLength: autoAllocateChunkSize, bytesFilled: 0, elementSize: 1, viewConstructor: Uint8Array, readerType: "default" }; this._pendingPullIntos.push(pullIntoDescriptor); } ReadableStreamAddReadRequest(stream, readRequest); ReadableByteStreamControllerCallPullIfNeeded(this); } } Object.defineProperties(ReadableByteStreamController.prototype, { close: { enumerable: true }, enqueue: { enumerable: true }, error: { enumerable: true }, byobRequest: { enumerable: true }, desiredSize: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ReadableByteStreamController.prototype, SymbolPolyfill.toStringTag, { value: "ReadableByteStreamController", configurable: true }); } function IsReadableByteStreamController(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_controlledReadableByteStream")) { return false; } return x2 instanceof ReadableByteStreamController; } function IsReadableStreamBYOBRequest(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_associatedReadableByteStreamController")) { return false; } return x2 instanceof ReadableStreamBYOBRequest; } function ReadableByteStreamControllerCallPullIfNeeded(controller) { const shouldPull = ReadableByteStreamControllerShouldCallPull(controller); if (!shouldPull) { return; } if (controller._pulling) { controller._pullAgain = true; return; } controller._pulling = true; const pullPromise = controller._pullAlgorithm(); uponPromise(pullPromise, () => { controller._pulling = false; if (controller._pullAgain) { controller._pullAgain = false; ReadableByteStreamControllerCallPullIfNeeded(controller); } }, (e2) => { ReadableByteStreamControllerError(controller, e2); }); } function ReadableByteStreamControllerClearPendingPullIntos(controller) { ReadableByteStreamControllerInvalidateBYOBRequest(controller); controller._pendingPullIntos = new SimpleQueue(); } function ReadableByteStreamControllerCommitPullIntoDescriptor(stream, pullIntoDescriptor) { let done = false; if (stream._state === "closed") { done = true; } const filledView = ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor); if (pullIntoDescriptor.readerType === "default") { ReadableStreamFulfillReadRequest(stream, filledView, done); } else { ReadableStreamFulfillReadIntoRequest(stream, filledView, done); } } function ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor) { const bytesFilled = pullIntoDescriptor.bytesFilled; const elementSize = pullIntoDescriptor.elementSize; return new pullIntoDescriptor.viewConstructor(pullIntoDescriptor.buffer, pullIntoDescriptor.byteOffset, bytesFilled / elementSize); } function ReadableByteStreamControllerEnqueueChunkToQueue(controller, buffer, byteOffset, byteLength) { controller._queue.push({ buffer, byteOffset, byteLength }); controller._queueTotalSize += byteLength; } function ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor) { const elementSize = pullIntoDescriptor.elementSize; const currentAlignedBytes = pullIntoDescriptor.bytesFilled - pullIntoDescriptor.bytesFilled % elementSize; const maxBytesToCopy = Math.min(controller._queueTotalSize, pullIntoDescriptor.byteLength - pullIntoDescriptor.bytesFilled); const maxBytesFilled = pullIntoDescriptor.bytesFilled + maxBytesToCopy; const maxAlignedBytes = maxBytesFilled - maxBytesFilled % elementSize; let totalBytesToCopyRemaining = maxBytesToCopy; let ready = false; if (maxAlignedBytes > currentAlignedBytes) { totalBytesToCopyRemaining = maxAlignedBytes - pullIntoDescriptor.bytesFilled; ready = true; } const queue = controller._queue; while (totalBytesToCopyRemaining > 0) { const headOfQueue = queue.peek(); const bytesToCopy = Math.min(totalBytesToCopyRemaining, headOfQueue.byteLength); const destStart = pullIntoDescriptor.byteOffset + pullIntoDescriptor.bytesFilled; CopyDataBlockBytes(pullIntoDescriptor.buffer, destStart, headOfQueue.buffer, headOfQueue.byteOffset, bytesToCopy); if (headOfQueue.byteLength === bytesToCopy) { queue.shift(); } else { headOfQueue.byteOffset += bytesToCopy; headOfQueue.byteLength -= bytesToCopy; } controller._queueTotalSize -= bytesToCopy; ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, bytesToCopy, pullIntoDescriptor); totalBytesToCopyRemaining -= bytesToCopy; } return ready; } function ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, size, pullIntoDescriptor) { pullIntoDescriptor.bytesFilled += size; } function ReadableByteStreamControllerHandleQueueDrain(controller) { if (controller._queueTotalSize === 0 && controller._closeRequested) { ReadableByteStreamControllerClearAlgorithms(controller); ReadableStreamClose(controller._controlledReadableByteStream); } else { ReadableByteStreamControllerCallPullIfNeeded(controller); } } function ReadableByteStreamControllerInvalidateBYOBRequest(controller) { if (controller._byobRequest === null) { return; } controller._byobRequest._associatedReadableByteStreamController = void 0; controller._byobRequest._view = null; controller._byobRequest = null; } function ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller) { while (controller._pendingPullIntos.length > 0) { if (controller._queueTotalSize === 0) { return; } const pullIntoDescriptor = controller._pendingPullIntos.peek(); if (ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor)) { ReadableByteStreamControllerShiftPendingPullInto(controller); ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream, pullIntoDescriptor); } } } function ReadableByteStreamControllerPullInto(controller, view, readIntoRequest) { const stream = controller._controlledReadableByteStream; let elementSize = 1; if (view.constructor !== DataView) { elementSize = view.constructor.BYTES_PER_ELEMENT; } const ctor = view.constructor; const buffer = TransferArrayBuffer(view.buffer); const pullIntoDescriptor = { buffer, bufferByteLength: buffer.byteLength, byteOffset: view.byteOffset, byteLength: view.byteLength, bytesFilled: 0, elementSize, viewConstructor: ctor, readerType: "byob" }; if (controller._pendingPullIntos.length > 0) { controller._pendingPullIntos.push(pullIntoDescriptor); ReadableStreamAddReadIntoRequest(stream, readIntoRequest); return; } if (stream._state === "closed") { const emptyView = new ctor(pullIntoDescriptor.buffer, pullIntoDescriptor.byteOffset, 0); readIntoRequest._closeSteps(emptyView); return; } if (controller._queueTotalSize > 0) { if (ReadableByteStreamControllerFillPullIntoDescriptorFromQueue(controller, pullIntoDescriptor)) { const filledView = ReadableByteStreamControllerConvertPullIntoDescriptor(pullIntoDescriptor); ReadableByteStreamControllerHandleQueueDrain(controller); readIntoRequest._chunkSteps(filledView); return; } if (controller._closeRequested) { const e2 = new TypeError("Insufficient bytes to fill elements in the given buffer"); ReadableByteStreamControllerError(controller, e2); readIntoRequest._errorSteps(e2); return; } } controller._pendingPullIntos.push(pullIntoDescriptor); ReadableStreamAddReadIntoRequest(stream, readIntoRequest); ReadableByteStreamControllerCallPullIfNeeded(controller); } function ReadableByteStreamControllerRespondInClosedState(controller, firstDescriptor) { const stream = controller._controlledReadableByteStream; if (ReadableStreamHasBYOBReader(stream)) { while (ReadableStreamGetNumReadIntoRequests(stream) > 0) { const pullIntoDescriptor = ReadableByteStreamControllerShiftPendingPullInto(controller); ReadableByteStreamControllerCommitPullIntoDescriptor(stream, pullIntoDescriptor); } } } function ReadableByteStreamControllerRespondInReadableState(controller, bytesWritten, pullIntoDescriptor) { ReadableByteStreamControllerFillHeadPullIntoDescriptor(controller, bytesWritten, pullIntoDescriptor); if (pullIntoDescriptor.bytesFilled < pullIntoDescriptor.elementSize) { return; } ReadableByteStreamControllerShiftPendingPullInto(controller); const remainderSize = pullIntoDescriptor.bytesFilled % pullIntoDescriptor.elementSize; if (remainderSize > 0) { const end = pullIntoDescriptor.byteOffset + pullIntoDescriptor.bytesFilled; const remainder = ArrayBufferSlice(pullIntoDescriptor.buffer, end - remainderSize, end); ReadableByteStreamControllerEnqueueChunkToQueue(controller, remainder, 0, remainder.byteLength); } pullIntoDescriptor.bytesFilled -= remainderSize; ReadableByteStreamControllerCommitPullIntoDescriptor(controller._controlledReadableByteStream, pullIntoDescriptor); ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller); } function ReadableByteStreamControllerRespondInternal(controller, bytesWritten) { const firstDescriptor = controller._pendingPullIntos.peek(); ReadableByteStreamControllerInvalidateBYOBRequest(controller); const state = controller._controlledReadableByteStream._state; if (state === "closed") { ReadableByteStreamControllerRespondInClosedState(controller); } else { ReadableByteStreamControllerRespondInReadableState(controller, bytesWritten, firstDescriptor); } ReadableByteStreamControllerCallPullIfNeeded(controller); } function ReadableByteStreamControllerShiftPendingPullInto(controller) { const descriptor = controller._pendingPullIntos.shift(); return descriptor; } function ReadableByteStreamControllerShouldCallPull(controller) { const stream = controller._controlledReadableByteStream; if (stream._state !== "readable") { return false; } if (controller._closeRequested) { return false; } if (!controller._started) { return false; } if (ReadableStreamHasDefaultReader(stream) && ReadableStreamGetNumReadRequests(stream) > 0) { return true; } if (ReadableStreamHasBYOBReader(stream) && ReadableStreamGetNumReadIntoRequests(stream) > 0) { return true; } const desiredSize = ReadableByteStreamControllerGetDesiredSize(controller); if (desiredSize > 0) { return true; } return false; } function ReadableByteStreamControllerClearAlgorithms(controller) { controller._pullAlgorithm = void 0; controller._cancelAlgorithm = void 0; } function ReadableByteStreamControllerClose(controller) { const stream = controller._controlledReadableByteStream; if (controller._closeRequested || stream._state !== "readable") { return; } if (controller._queueTotalSize > 0) { controller._closeRequested = true; return; } if (controller._pendingPullIntos.length > 0) { const firstPendingPullInto = controller._pendingPullIntos.peek(); if (firstPendingPullInto.bytesFilled > 0) { const e2 = new TypeError("Insufficient bytes to fill elements in the given buffer"); ReadableByteStreamControllerError(controller, e2); throw e2; } } ReadableByteStreamControllerClearAlgorithms(controller); ReadableStreamClose(stream); } function ReadableByteStreamControllerEnqueue(controller, chunk) { const stream = controller._controlledReadableByteStream; if (controller._closeRequested || stream._state !== "readable") { return; } const buffer = chunk.buffer; const byteOffset = chunk.byteOffset; const byteLength = chunk.byteLength; const transferredBuffer = TransferArrayBuffer(buffer); if (controller._pendingPullIntos.length > 0) { const firstPendingPullInto = controller._pendingPullIntos.peek(); if (IsDetachedBuffer(firstPendingPullInto.buffer)) ; firstPendingPullInto.buffer = TransferArrayBuffer(firstPendingPullInto.buffer); } ReadableByteStreamControllerInvalidateBYOBRequest(controller); if (ReadableStreamHasDefaultReader(stream)) { if (ReadableStreamGetNumReadRequests(stream) === 0) { ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength); } else { if (controller._pendingPullIntos.length > 0) { ReadableByteStreamControllerShiftPendingPullInto(controller); } const transferredView = new Uint8Array(transferredBuffer, byteOffset, byteLength); ReadableStreamFulfillReadRequest(stream, transferredView, false); } } else if (ReadableStreamHasBYOBReader(stream)) { ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength); ReadableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(controller); } else { ReadableByteStreamControllerEnqueueChunkToQueue(controller, transferredBuffer, byteOffset, byteLength); } ReadableByteStreamControllerCallPullIfNeeded(controller); } function ReadableByteStreamControllerError(controller, e2) { const stream = controller._controlledReadableByteStream; if (stream._state !== "readable") { return; } ReadableByteStreamControllerClearPendingPullIntos(controller); ResetQueue(controller); ReadableByteStreamControllerClearAlgorithms(controller); ReadableStreamError(stream, e2); } function ReadableByteStreamControllerGetBYOBRequest(controller) { if (controller._byobRequest === null && controller._pendingPullIntos.length > 0) { const firstDescriptor = controller._pendingPullIntos.peek(); const view = new Uint8Array(firstDescriptor.buffer, firstDescriptor.byteOffset + firstDescriptor.bytesFilled, firstDescriptor.byteLength - firstDescriptor.bytesFilled); const byobRequest = Object.create(ReadableStreamBYOBRequest.prototype); SetUpReadableStreamBYOBRequest(byobRequest, controller, view); controller._byobRequest = byobRequest; } return controller._byobRequest; } function ReadableByteStreamControllerGetDesiredSize(controller) { const state = controller._controlledReadableByteStream._state; if (state === "errored") { return null; } if (state === "closed") { return 0; } return controller._strategyHWM - controller._queueTotalSize; } function ReadableByteStreamControllerRespond(controller, bytesWritten) { const firstDescriptor = controller._pendingPullIntos.peek(); const state = controller._controlledReadableByteStream._state; if (state === "closed") { if (bytesWritten !== 0) { throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream"); } } else { if (bytesWritten === 0) { throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream"); } if (firstDescriptor.bytesFilled + bytesWritten > firstDescriptor.byteLength) { throw new RangeError("bytesWritten out of range"); } } firstDescriptor.buffer = TransferArrayBuffer(firstDescriptor.buffer); ReadableByteStreamControllerRespondInternal(controller, bytesWritten); } function ReadableByteStreamControllerRespondWithNewView(controller, view) { const firstDescriptor = controller._pendingPullIntos.peek(); const state = controller._controlledReadableByteStream._state; if (state === "closed") { if (view.byteLength !== 0) { throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream"); } } else { if (view.byteLength === 0) { throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream"); } } if (firstDescriptor.byteOffset + firstDescriptor.bytesFilled !== view.byteOffset) { throw new RangeError("The region specified by view does not match byobRequest"); } if (firstDescriptor.bufferByteLength !== view.buffer.byteLength) { throw new RangeError("The buffer of view has different capacity than byobRequest"); } if (firstDescriptor.bytesFilled + view.byteLength > firstDescriptor.byteLength) { throw new RangeError("The region specified by view is larger than byobRequest"); } const viewByteLength = view.byteLength; firstDescriptor.buffer = TransferArrayBuffer(view.buffer); ReadableByteStreamControllerRespondInternal(controller, viewByteLength); } function SetUpReadableByteStreamController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, autoAllocateChunkSize) { controller._controlledReadableByteStream = stream; controller._pullAgain = false; controller._pulling = false; controller._byobRequest = null; controller._queue = controller._queueTotalSize = void 0; ResetQueue(controller); controller._closeRequested = false; controller._started = false; controller._strategyHWM = highWaterMark; controller._pullAlgorithm = pullAlgorithm; controller._cancelAlgorithm = cancelAlgorithm; controller._autoAllocateChunkSize = autoAllocateChunkSize; controller._pendingPullIntos = new SimpleQueue(); stream._readableStreamController = controller; const startResult = startAlgorithm(); uponPromise(promiseResolvedWith(startResult), () => { controller._started = true; ReadableByteStreamControllerCallPullIfNeeded(controller); }, (r3) => { ReadableByteStreamControllerError(controller, r3); }); } function SetUpReadableByteStreamControllerFromUnderlyingSource(stream, underlyingByteSource, highWaterMark) { const controller = Object.create(ReadableByteStreamController.prototype); let startAlgorithm = () => void 0; let pullAlgorithm = () => promiseResolvedWith(void 0); let cancelAlgorithm = () => promiseResolvedWith(void 0); if (underlyingByteSource.start !== void 0) { startAlgorithm = () => underlyingByteSource.start(controller); } if (underlyingByteSource.pull !== void 0) { pullAlgorithm = () => underlyingByteSource.pull(controller); } if (underlyingByteSource.cancel !== void 0) { cancelAlgorithm = (reason) => underlyingByteSource.cancel(reason); } const autoAllocateChunkSize = underlyingByteSource.autoAllocateChunkSize; if (autoAllocateChunkSize === 0) { throw new TypeError("autoAllocateChunkSize must be greater than 0"); } SetUpReadableByteStreamController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, autoAllocateChunkSize); } function SetUpReadableStreamBYOBRequest(request, controller, view) { request._associatedReadableByteStreamController = controller; request._view = view; } function byobRequestBrandCheckException(name) { return new TypeError(`ReadableStreamBYOBRequest.prototype.${name} can only be used on a ReadableStreamBYOBRequest`); } function byteStreamControllerBrandCheckException(name) { return new TypeError(`ReadableByteStreamController.prototype.${name} can only be used on a ReadableByteStreamController`); } function AcquireReadableStreamBYOBReader(stream) { return new ReadableStreamBYOBReader(stream); } function ReadableStreamAddReadIntoRequest(stream, readIntoRequest) { stream._reader._readIntoRequests.push(readIntoRequest); } function ReadableStreamFulfillReadIntoRequest(stream, chunk, done) { const reader = stream._reader; const readIntoRequest = reader._readIntoRequests.shift(); if (done) { readIntoRequest._closeSteps(chunk); } else { readIntoRequest._chunkSteps(chunk); } } function ReadableStreamGetNumReadIntoRequests(stream) { return stream._reader._readIntoRequests.length; } function ReadableStreamHasBYOBReader(stream) { const reader = stream._reader; if (reader === void 0) { return false; } if (!IsReadableStreamBYOBReader(reader)) { return false; } return true; } class ReadableStreamBYOBReader { constructor(stream) { assertRequiredArgument(stream, 1, "ReadableStreamBYOBReader"); assertReadableStream(stream, "First parameter"); if (IsReadableStreamLocked(stream)) { throw new TypeError("This stream has already been locked for exclusive reading by another reader"); } if (!IsReadableByteStreamController(stream._readableStreamController)) { throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source"); } ReadableStreamReaderGenericInitialize(this, stream); this._readIntoRequests = new SimpleQueue(); } get closed() { if (!IsReadableStreamBYOBReader(this)) { return promiseRejectedWith(byobReaderBrandCheckException("closed")); } return this._closedPromise; } cancel(reason = void 0) { if (!IsReadableStreamBYOBReader(this)) { return promiseRejectedWith(byobReaderBrandCheckException("cancel")); } if (this._ownerReadableStream === void 0) { return promiseRejectedWith(readerLockException("cancel")); } return ReadableStreamReaderGenericCancel(this, reason); } read(view) { if (!IsReadableStreamBYOBReader(this)) { return promiseRejectedWith(byobReaderBrandCheckException("read")); } if (!ArrayBuffer.isView(view)) { return promiseRejectedWith(new TypeError("view must be an array buffer view")); } if (view.byteLength === 0) { return promiseRejectedWith(new TypeError("view must have non-zero byteLength")); } if (view.buffer.byteLength === 0) { return promiseRejectedWith(new TypeError(`view's buffer must have non-zero byteLength`)); } if (IsDetachedBuffer(view.buffer)) ; if (this._ownerReadableStream === void 0) { return promiseRejectedWith(readerLockException("read from")); } let resolvePromise; let rejectPromise; const promise = newPromise((resolve, reject) => { resolvePromise = resolve; rejectPromise = reject; }); const readIntoRequest = { _chunkSteps: (chunk) => resolvePromise({ value: chunk, done: false }), _closeSteps: (chunk) => resolvePromise({ value: chunk, done: true }), _errorSteps: (e2) => rejectPromise(e2) }; ReadableStreamBYOBReaderRead(this, view, readIntoRequest); return promise; } releaseLock() { if (!IsReadableStreamBYOBReader(this)) { throw byobReaderBrandCheckException("releaseLock"); } if (this._ownerReadableStream === void 0) { return; } if (this._readIntoRequests.length > 0) { throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled"); } ReadableStreamReaderGenericRelease(this); } } Object.defineProperties(ReadableStreamBYOBReader.prototype, { cancel: { enumerable: true }, read: { enumerable: true }, releaseLock: { enumerable: true }, closed: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ReadableStreamBYOBReader.prototype, SymbolPolyfill.toStringTag, { value: "ReadableStreamBYOBReader", configurable: true }); } function IsReadableStreamBYOBReader(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_readIntoRequests")) { return false; } return x2 instanceof ReadableStreamBYOBReader; } function ReadableStreamBYOBReaderRead(reader, view, readIntoRequest) { const stream = reader._ownerReadableStream; stream._disturbed = true; if (stream._state === "errored") { readIntoRequest._errorSteps(stream._storedError); } else { ReadableByteStreamControllerPullInto(stream._readableStreamController, view, readIntoRequest); } } function byobReaderBrandCheckException(name) { return new TypeError(`ReadableStreamBYOBReader.prototype.${name} can only be used on a ReadableStreamBYOBReader`); } function ExtractHighWaterMark(strategy, defaultHWM) { const { highWaterMark } = strategy; if (highWaterMark === void 0) { return defaultHWM; } if (NumberIsNaN(highWaterMark) || highWaterMark < 0) { throw new RangeError("Invalid highWaterMark"); } return highWaterMark; } function ExtractSizeAlgorithm(strategy) { const { size } = strategy; if (!size) { return () => 1; } return size; } function convertQueuingStrategy(init2, context) { assertDictionary(init2, context); const highWaterMark = init2 === null || init2 === void 0 ? void 0 : init2.highWaterMark; const size = init2 === null || init2 === void 0 ? void 0 : init2.size; return { highWaterMark: highWaterMark === void 0 ? void 0 : convertUnrestrictedDouble(highWaterMark), size: size === void 0 ? void 0 : convertQueuingStrategySize(size, `${context} has member 'size' that`) }; } function convertQueuingStrategySize(fn, context) { assertFunction(fn, context); return (chunk) => convertUnrestrictedDouble(fn(chunk)); } function convertUnderlyingSink(original, context) { assertDictionary(original, context); const abort = original === null || original === void 0 ? void 0 : original.abort; const close = original === null || original === void 0 ? void 0 : original.close; const start = original === null || original === void 0 ? void 0 : original.start; const type = original === null || original === void 0 ? void 0 : original.type; const write = original === null || original === void 0 ? void 0 : original.write; return { abort: abort === void 0 ? void 0 : convertUnderlyingSinkAbortCallback(abort, original, `${context} has member 'abort' that`), close: close === void 0 ? void 0 : convertUnderlyingSinkCloseCallback(close, original, `${context} has member 'close' that`), start: start === void 0 ? void 0 : convertUnderlyingSinkStartCallback(start, original, `${context} has member 'start' that`), write: write === void 0 ? void 0 : convertUnderlyingSinkWriteCallback(write, original, `${context} has member 'write' that`), type }; } function convertUnderlyingSinkAbortCallback(fn, original, context) { assertFunction(fn, context); return (reason) => promiseCall(fn, original, [reason]); } function convertUnderlyingSinkCloseCallback(fn, original, context) { assertFunction(fn, context); return () => promiseCall(fn, original, []); } function convertUnderlyingSinkStartCallback(fn, original, context) { assertFunction(fn, context); return (controller) => reflectCall(fn, original, [controller]); } function convertUnderlyingSinkWriteCallback(fn, original, context) { assertFunction(fn, context); return (chunk, controller) => promiseCall(fn, original, [chunk, controller]); } function assertWritableStream(x2, context) { if (!IsWritableStream(x2)) { throw new TypeError(`${context} is not a WritableStream.`); } } function isAbortSignal2(value) { if (typeof value !== "object" || value === null) { return false; } try { return typeof value.aborted === "boolean"; } catch (_a4) { return false; } } const supportsAbortController = typeof AbortController === "function"; function createAbortController() { if (supportsAbortController) { return new AbortController(); } return void 0; } class WritableStream { constructor(rawUnderlyingSink = {}, rawStrategy = {}) { if (rawUnderlyingSink === void 0) { rawUnderlyingSink = null; } else { assertObject(rawUnderlyingSink, "First parameter"); } const strategy = convertQueuingStrategy(rawStrategy, "Second parameter"); const underlyingSink = convertUnderlyingSink(rawUnderlyingSink, "First parameter"); InitializeWritableStream(this); const type = underlyingSink.type; if (type !== void 0) { throw new RangeError("Invalid type is specified"); } const sizeAlgorithm = ExtractSizeAlgorithm(strategy); const highWaterMark = ExtractHighWaterMark(strategy, 1); SetUpWritableStreamDefaultControllerFromUnderlyingSink(this, underlyingSink, highWaterMark, sizeAlgorithm); } get locked() { if (!IsWritableStream(this)) { throw streamBrandCheckException$2("locked"); } return IsWritableStreamLocked(this); } abort(reason = void 0) { if (!IsWritableStream(this)) { return promiseRejectedWith(streamBrandCheckException$2("abort")); } if (IsWritableStreamLocked(this)) { return promiseRejectedWith(new TypeError("Cannot abort a stream that already has a writer")); } return WritableStreamAbort(this, reason); } close() { if (!IsWritableStream(this)) { return promiseRejectedWith(streamBrandCheckException$2("close")); } if (IsWritableStreamLocked(this)) { return promiseRejectedWith(new TypeError("Cannot close a stream that already has a writer")); } if (WritableStreamCloseQueuedOrInFlight(this)) { return promiseRejectedWith(new TypeError("Cannot close an already-closing stream")); } return WritableStreamClose(this); } getWriter() { if (!IsWritableStream(this)) { throw streamBrandCheckException$2("getWriter"); } return AcquireWritableStreamDefaultWriter(this); } } Object.defineProperties(WritableStream.prototype, { abort: { enumerable: true }, close: { enumerable: true }, getWriter: { enumerable: true }, locked: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(WritableStream.prototype, SymbolPolyfill.toStringTag, { value: "WritableStream", configurable: true }); } function AcquireWritableStreamDefaultWriter(stream) { return new WritableStreamDefaultWriter(stream); } function CreateWritableStream(startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark = 1, sizeAlgorithm = () => 1) { const stream = Object.create(WritableStream.prototype); InitializeWritableStream(stream); const controller = Object.create(WritableStreamDefaultController.prototype); SetUpWritableStreamDefaultController(stream, controller, startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm); return stream; } function InitializeWritableStream(stream) { stream._state = "writable"; stream._storedError = void 0; stream._writer = void 0; stream._writableStreamController = void 0; stream._writeRequests = new SimpleQueue(); stream._inFlightWriteRequest = void 0; stream._closeRequest = void 0; stream._inFlightCloseRequest = void 0; stream._pendingAbortRequest = void 0; stream._backpressure = false; } function IsWritableStream(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_writableStreamController")) { return false; } return x2 instanceof WritableStream; } function IsWritableStreamLocked(stream) { if (stream._writer === void 0) { return false; } return true; } function WritableStreamAbort(stream, reason) { var _a4; if (stream._state === "closed" || stream._state === "errored") { return promiseResolvedWith(void 0); } stream._writableStreamController._abortReason = reason; (_a4 = stream._writableStreamController._abortController) === null || _a4 === void 0 ? void 0 : _a4.abort(); const state = stream._state; if (state === "closed" || state === "errored") { return promiseResolvedWith(void 0); } if (stream._pendingAbortRequest !== void 0) { return stream._pendingAbortRequest._promise; } let wasAlreadyErroring = false; if (state === "erroring") { wasAlreadyErroring = true; reason = void 0; } const promise = newPromise((resolve, reject) => { stream._pendingAbortRequest = { _promise: void 0, _resolve: resolve, _reject: reject, _reason: reason, _wasAlreadyErroring: wasAlreadyErroring }; }); stream._pendingAbortRequest._promise = promise; if (!wasAlreadyErroring) { WritableStreamStartErroring(stream, reason); } return promise; } function WritableStreamClose(stream) { const state = stream._state; if (state === "closed" || state === "errored") { return promiseRejectedWith(new TypeError(`The stream (in ${state} state) is not in the writable state and cannot be closed`)); } const promise = newPromise((resolve, reject) => { const closeRequest = { _resolve: resolve, _reject: reject }; stream._closeRequest = closeRequest; }); const writer = stream._writer; if (writer !== void 0 && stream._backpressure && state === "writable") { defaultWriterReadyPromiseResolve(writer); } WritableStreamDefaultControllerClose(stream._writableStreamController); return promise; } function WritableStreamAddWriteRequest(stream) { const promise = newPromise((resolve, reject) => { const writeRequest = { _resolve: resolve, _reject: reject }; stream._writeRequests.push(writeRequest); }); return promise; } function WritableStreamDealWithRejection(stream, error) { const state = stream._state; if (state === "writable") { WritableStreamStartErroring(stream, error); return; } WritableStreamFinishErroring(stream); } function WritableStreamStartErroring(stream, reason) { const controller = stream._writableStreamController; stream._state = "erroring"; stream._storedError = reason; const writer = stream._writer; if (writer !== void 0) { WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, reason); } if (!WritableStreamHasOperationMarkedInFlight(stream) && controller._started) { WritableStreamFinishErroring(stream); } } function WritableStreamFinishErroring(stream) { stream._state = "errored"; stream._writableStreamController[ErrorSteps](); const storedError = stream._storedError; stream._writeRequests.forEach((writeRequest) => { writeRequest._reject(storedError); }); stream._writeRequests = new SimpleQueue(); if (stream._pendingAbortRequest === void 0) { WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream); return; } const abortRequest = stream._pendingAbortRequest; stream._pendingAbortRequest = void 0; if (abortRequest._wasAlreadyErroring) { abortRequest._reject(storedError); WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream); return; } const promise = stream._writableStreamController[AbortSteps](abortRequest._reason); uponPromise(promise, () => { abortRequest._resolve(); WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream); }, (reason) => { abortRequest._reject(reason); WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream); }); } function WritableStreamFinishInFlightWrite(stream) { stream._inFlightWriteRequest._resolve(void 0); stream._inFlightWriteRequest = void 0; } function WritableStreamFinishInFlightWriteWithError(stream, error) { stream._inFlightWriteRequest._reject(error); stream._inFlightWriteRequest = void 0; WritableStreamDealWithRejection(stream, error); } function WritableStreamFinishInFlightClose(stream) { stream._inFlightCloseRequest._resolve(void 0); stream._inFlightCloseRequest = void 0; const state = stream._state; if (state === "erroring") { stream._storedError = void 0; if (stream._pendingAbortRequest !== void 0) { stream._pendingAbortRequest._resolve(); stream._pendingAbortRequest = void 0; } } stream._state = "closed"; const writer = stream._writer; if (writer !== void 0) { defaultWriterClosedPromiseResolve(writer); } } function WritableStreamFinishInFlightCloseWithError(stream, error) { stream._inFlightCloseRequest._reject(error); stream._inFlightCloseRequest = void 0; if (stream._pendingAbortRequest !== void 0) { stream._pendingAbortRequest._reject(error); stream._pendingAbortRequest = void 0; } WritableStreamDealWithRejection(stream, error); } function WritableStreamCloseQueuedOrInFlight(stream) { if (stream._closeRequest === void 0 && stream._inFlightCloseRequest === void 0) { return false; } return true; } function WritableStreamHasOperationMarkedInFlight(stream) { if (stream._inFlightWriteRequest === void 0 && stream._inFlightCloseRequest === void 0) { return false; } return true; } function WritableStreamMarkCloseRequestInFlight(stream) { stream._inFlightCloseRequest = stream._closeRequest; stream._closeRequest = void 0; } function WritableStreamMarkFirstWriteRequestInFlight(stream) { stream._inFlightWriteRequest = stream._writeRequests.shift(); } function WritableStreamRejectCloseAndClosedPromiseIfNeeded(stream) { if (stream._closeRequest !== void 0) { stream._closeRequest._reject(stream._storedError); stream._closeRequest = void 0; } const writer = stream._writer; if (writer !== void 0) { defaultWriterClosedPromiseReject(writer, stream._storedError); } } function WritableStreamUpdateBackpressure(stream, backpressure) { const writer = stream._writer; if (writer !== void 0 && backpressure !== stream._backpressure) { if (backpressure) { defaultWriterReadyPromiseReset(writer); } else { defaultWriterReadyPromiseResolve(writer); } } stream._backpressure = backpressure; } class WritableStreamDefaultWriter { constructor(stream) { assertRequiredArgument(stream, 1, "WritableStreamDefaultWriter"); assertWritableStream(stream, "First parameter"); if (IsWritableStreamLocked(stream)) { throw new TypeError("This stream has already been locked for exclusive writing by another writer"); } this._ownerWritableStream = stream; stream._writer = this; const state = stream._state; if (state === "writable") { if (!WritableStreamCloseQueuedOrInFlight(stream) && stream._backpressure) { defaultWriterReadyPromiseInitialize(this); } else { defaultWriterReadyPromiseInitializeAsResolved(this); } defaultWriterClosedPromiseInitialize(this); } else if (state === "erroring") { defaultWriterReadyPromiseInitializeAsRejected(this, stream._storedError); defaultWriterClosedPromiseInitialize(this); } else if (state === "closed") { defaultWriterReadyPromiseInitializeAsResolved(this); defaultWriterClosedPromiseInitializeAsResolved(this); } else { const storedError = stream._storedError; defaultWriterReadyPromiseInitializeAsRejected(this, storedError); defaultWriterClosedPromiseInitializeAsRejected(this, storedError); } } get closed() { if (!IsWritableStreamDefaultWriter(this)) { return promiseRejectedWith(defaultWriterBrandCheckException("closed")); } return this._closedPromise; } get desiredSize() { if (!IsWritableStreamDefaultWriter(this)) { throw defaultWriterBrandCheckException("desiredSize"); } if (this._ownerWritableStream === void 0) { throw defaultWriterLockException("desiredSize"); } return WritableStreamDefaultWriterGetDesiredSize(this); } get ready() { if (!IsWritableStreamDefaultWriter(this)) { return promiseRejectedWith(defaultWriterBrandCheckException("ready")); } return this._readyPromise; } abort(reason = void 0) { if (!IsWritableStreamDefaultWriter(this)) { return promiseRejectedWith(defaultWriterBrandCheckException("abort")); } if (this._ownerWritableStream === void 0) { return promiseRejectedWith(defaultWriterLockException("abort")); } return WritableStreamDefaultWriterAbort(this, reason); } close() { if (!IsWritableStreamDefaultWriter(this)) { return promiseRejectedWith(defaultWriterBrandCheckException("close")); } const stream = this._ownerWritableStream; if (stream === void 0) { return promiseRejectedWith(defaultWriterLockException("close")); } if (WritableStreamCloseQueuedOrInFlight(stream)) { return promiseRejectedWith(new TypeError("Cannot close an already-closing stream")); } return WritableStreamDefaultWriterClose(this); } releaseLock() { if (!IsWritableStreamDefaultWriter(this)) { throw defaultWriterBrandCheckException("releaseLock"); } const stream = this._ownerWritableStream; if (stream === void 0) { return; } WritableStreamDefaultWriterRelease(this); } write(chunk = void 0) { if (!IsWritableStreamDefaultWriter(this)) { return promiseRejectedWith(defaultWriterBrandCheckException("write")); } if (this._ownerWritableStream === void 0) { return promiseRejectedWith(defaultWriterLockException("write to")); } return WritableStreamDefaultWriterWrite(this, chunk); } } Object.defineProperties(WritableStreamDefaultWriter.prototype, { abort: { enumerable: true }, close: { enumerable: true }, releaseLock: { enumerable: true }, write: { enumerable: true }, closed: { enumerable: true }, desiredSize: { enumerable: true }, ready: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(WritableStreamDefaultWriter.prototype, SymbolPolyfill.toStringTag, { value: "WritableStreamDefaultWriter", configurable: true }); } function IsWritableStreamDefaultWriter(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_ownerWritableStream")) { return false; } return x2 instanceof WritableStreamDefaultWriter; } function WritableStreamDefaultWriterAbort(writer, reason) { const stream = writer._ownerWritableStream; return WritableStreamAbort(stream, reason); } function WritableStreamDefaultWriterClose(writer) { const stream = writer._ownerWritableStream; return WritableStreamClose(stream); } function WritableStreamDefaultWriterCloseWithErrorPropagation(writer) { const stream = writer._ownerWritableStream; const state = stream._state; if (WritableStreamCloseQueuedOrInFlight(stream) || state === "closed") { return promiseResolvedWith(void 0); } if (state === "errored") { return promiseRejectedWith(stream._storedError); } return WritableStreamDefaultWriterClose(writer); } function WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer, error) { if (writer._closedPromiseState === "pending") { defaultWriterClosedPromiseReject(writer, error); } else { defaultWriterClosedPromiseResetToRejected(writer, error); } } function WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, error) { if (writer._readyPromiseState === "pending") { defaultWriterReadyPromiseReject(writer, error); } else { defaultWriterReadyPromiseResetToRejected(writer, error); } } function WritableStreamDefaultWriterGetDesiredSize(writer) { const stream = writer._ownerWritableStream; const state = stream._state; if (state === "errored" || state === "erroring") { return null; } if (state === "closed") { return 0; } return WritableStreamDefaultControllerGetDesiredSize(stream._writableStreamController); } function WritableStreamDefaultWriterRelease(writer) { const stream = writer._ownerWritableStream; const releasedError = new TypeError(`Writer was released and can no longer be used to monitor the stream's closedness`); WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, releasedError); WritableStreamDefaultWriterEnsureClosedPromiseRejected(writer, releasedError); stream._writer = void 0; writer._ownerWritableStream = void 0; } function WritableStreamDefaultWriterWrite(writer, chunk) { const stream = writer._ownerWritableStream; const controller = stream._writableStreamController; const chunkSize = WritableStreamDefaultControllerGetChunkSize(controller, chunk); if (stream !== writer._ownerWritableStream) { return promiseRejectedWith(defaultWriterLockException("write to")); } const state = stream._state; if (state === "errored") { return promiseRejectedWith(stream._storedError); } if (WritableStreamCloseQueuedOrInFlight(stream) || state === "closed") { return promiseRejectedWith(new TypeError("The stream is closing or closed and cannot be written to")); } if (state === "erroring") { return promiseRejectedWith(stream._storedError); } const promise = WritableStreamAddWriteRequest(stream); WritableStreamDefaultControllerWrite(controller, chunk, chunkSize); return promise; } const closeSentinel = {}; class WritableStreamDefaultController { constructor() { throw new TypeError("Illegal constructor"); } get abortReason() { if (!IsWritableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$2("abortReason"); } return this._abortReason; } get signal() { if (!IsWritableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$2("signal"); } if (this._abortController === void 0) { throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported"); } return this._abortController.signal; } error(e2 = void 0) { if (!IsWritableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$2("error"); } const state = this._controlledWritableStream._state; if (state !== "writable") { return; } WritableStreamDefaultControllerError(this, e2); } [AbortSteps](reason) { const result = this._abortAlgorithm(reason); WritableStreamDefaultControllerClearAlgorithms(this); return result; } [ErrorSteps]() { ResetQueue(this); } } Object.defineProperties(WritableStreamDefaultController.prototype, { abortReason: { enumerable: true }, signal: { enumerable: true }, error: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(WritableStreamDefaultController.prototype, SymbolPolyfill.toStringTag, { value: "WritableStreamDefaultController", configurable: true }); } function IsWritableStreamDefaultController(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_controlledWritableStream")) { return false; } return x2 instanceof WritableStreamDefaultController; } function SetUpWritableStreamDefaultController(stream, controller, startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm) { controller._controlledWritableStream = stream; stream._writableStreamController = controller; controller._queue = void 0; controller._queueTotalSize = void 0; ResetQueue(controller); controller._abortReason = void 0; controller._abortController = createAbortController(); controller._started = false; controller._strategySizeAlgorithm = sizeAlgorithm; controller._strategyHWM = highWaterMark; controller._writeAlgorithm = writeAlgorithm; controller._closeAlgorithm = closeAlgorithm; controller._abortAlgorithm = abortAlgorithm; const backpressure = WritableStreamDefaultControllerGetBackpressure(controller); WritableStreamUpdateBackpressure(stream, backpressure); const startResult = startAlgorithm(); const startPromise = promiseResolvedWith(startResult); uponPromise(startPromise, () => { controller._started = true; WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller); }, (r3) => { controller._started = true; WritableStreamDealWithRejection(stream, r3); }); } function SetUpWritableStreamDefaultControllerFromUnderlyingSink(stream, underlyingSink, highWaterMark, sizeAlgorithm) { const controller = Object.create(WritableStreamDefaultController.prototype); let startAlgorithm = () => void 0; let writeAlgorithm = () => promiseResolvedWith(void 0); let closeAlgorithm = () => promiseResolvedWith(void 0); let abortAlgorithm = () => promiseResolvedWith(void 0); if (underlyingSink.start !== void 0) { startAlgorithm = () => underlyingSink.start(controller); } if (underlyingSink.write !== void 0) { writeAlgorithm = (chunk) => underlyingSink.write(chunk, controller); } if (underlyingSink.close !== void 0) { closeAlgorithm = () => underlyingSink.close(); } if (underlyingSink.abort !== void 0) { abortAlgorithm = (reason) => underlyingSink.abort(reason); } SetUpWritableStreamDefaultController(stream, controller, startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, highWaterMark, sizeAlgorithm); } function WritableStreamDefaultControllerClearAlgorithms(controller) { controller._writeAlgorithm = void 0; controller._closeAlgorithm = void 0; controller._abortAlgorithm = void 0; controller._strategySizeAlgorithm = void 0; } function WritableStreamDefaultControllerClose(controller) { EnqueueValueWithSize(controller, closeSentinel, 0); WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller); } function WritableStreamDefaultControllerGetChunkSize(controller, chunk) { try { return controller._strategySizeAlgorithm(chunk); } catch (chunkSizeE) { WritableStreamDefaultControllerErrorIfNeeded(controller, chunkSizeE); return 1; } } function WritableStreamDefaultControllerGetDesiredSize(controller) { return controller._strategyHWM - controller._queueTotalSize; } function WritableStreamDefaultControllerWrite(controller, chunk, chunkSize) { try { EnqueueValueWithSize(controller, chunk, chunkSize); } catch (enqueueE) { WritableStreamDefaultControllerErrorIfNeeded(controller, enqueueE); return; } const stream = controller._controlledWritableStream; if (!WritableStreamCloseQueuedOrInFlight(stream) && stream._state === "writable") { const backpressure = WritableStreamDefaultControllerGetBackpressure(controller); WritableStreamUpdateBackpressure(stream, backpressure); } WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller); } function WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller) { const stream = controller._controlledWritableStream; if (!controller._started) { return; } if (stream._inFlightWriteRequest !== void 0) { return; } const state = stream._state; if (state === "erroring") { WritableStreamFinishErroring(stream); return; } if (controller._queue.length === 0) { return; } const value = PeekQueueValue(controller); if (value === closeSentinel) { WritableStreamDefaultControllerProcessClose(controller); } else { WritableStreamDefaultControllerProcessWrite(controller, value); } } function WritableStreamDefaultControllerErrorIfNeeded(controller, error) { if (controller._controlledWritableStream._state === "writable") { WritableStreamDefaultControllerError(controller, error); } } function WritableStreamDefaultControllerProcessClose(controller) { const stream = controller._controlledWritableStream; WritableStreamMarkCloseRequestInFlight(stream); DequeueValue(controller); const sinkClosePromise = controller._closeAlgorithm(); WritableStreamDefaultControllerClearAlgorithms(controller); uponPromise(sinkClosePromise, () => { WritableStreamFinishInFlightClose(stream); }, (reason) => { WritableStreamFinishInFlightCloseWithError(stream, reason); }); } function WritableStreamDefaultControllerProcessWrite(controller, chunk) { const stream = controller._controlledWritableStream; WritableStreamMarkFirstWriteRequestInFlight(stream); const sinkWritePromise = controller._writeAlgorithm(chunk); uponPromise(sinkWritePromise, () => { WritableStreamFinishInFlightWrite(stream); const state = stream._state; DequeueValue(controller); if (!WritableStreamCloseQueuedOrInFlight(stream) && state === "writable") { const backpressure = WritableStreamDefaultControllerGetBackpressure(controller); WritableStreamUpdateBackpressure(stream, backpressure); } WritableStreamDefaultControllerAdvanceQueueIfNeeded(controller); }, (reason) => { if (stream._state === "writable") { WritableStreamDefaultControllerClearAlgorithms(controller); } WritableStreamFinishInFlightWriteWithError(stream, reason); }); } function WritableStreamDefaultControllerGetBackpressure(controller) { const desiredSize = WritableStreamDefaultControllerGetDesiredSize(controller); return desiredSize <= 0; } function WritableStreamDefaultControllerError(controller, error) { const stream = controller._controlledWritableStream; WritableStreamDefaultControllerClearAlgorithms(controller); WritableStreamStartErroring(stream, error); } function streamBrandCheckException$2(name) { return new TypeError(`WritableStream.prototype.${name} can only be used on a WritableStream`); } function defaultControllerBrandCheckException$2(name) { return new TypeError(`WritableStreamDefaultController.prototype.${name} can only be used on a WritableStreamDefaultController`); } function defaultWriterBrandCheckException(name) { return new TypeError(`WritableStreamDefaultWriter.prototype.${name} can only be used on a WritableStreamDefaultWriter`); } function defaultWriterLockException(name) { return new TypeError("Cannot " + name + " a stream using a released writer"); } function defaultWriterClosedPromiseInitialize(writer) { writer._closedPromise = newPromise((resolve, reject) => { writer._closedPromise_resolve = resolve; writer._closedPromise_reject = reject; writer._closedPromiseState = "pending"; }); } function defaultWriterClosedPromiseInitializeAsRejected(writer, reason) { defaultWriterClosedPromiseInitialize(writer); defaultWriterClosedPromiseReject(writer, reason); } function defaultWriterClosedPromiseInitializeAsResolved(writer) { defaultWriterClosedPromiseInitialize(writer); defaultWriterClosedPromiseResolve(writer); } function defaultWriterClosedPromiseReject(writer, reason) { if (writer._closedPromise_reject === void 0) { return; } setPromiseIsHandledToTrue(writer._closedPromise); writer._closedPromise_reject(reason); writer._closedPromise_resolve = void 0; writer._closedPromise_reject = void 0; writer._closedPromiseState = "rejected"; } function defaultWriterClosedPromiseResetToRejected(writer, reason) { defaultWriterClosedPromiseInitializeAsRejected(writer, reason); } function defaultWriterClosedPromiseResolve(writer) { if (writer._closedPromise_resolve === void 0) { return; } writer._closedPromise_resolve(void 0); writer._closedPromise_resolve = void 0; writer._closedPromise_reject = void 0; writer._closedPromiseState = "resolved"; } function defaultWriterReadyPromiseInitialize(writer) { writer._readyPromise = newPromise((resolve, reject) => { writer._readyPromise_resolve = resolve; writer._readyPromise_reject = reject; }); writer._readyPromiseState = "pending"; } function defaultWriterReadyPromiseInitializeAsRejected(writer, reason) { defaultWriterReadyPromiseInitialize(writer); defaultWriterReadyPromiseReject(writer, reason); } function defaultWriterReadyPromiseInitializeAsResolved(writer) { defaultWriterReadyPromiseInitialize(writer); defaultWriterReadyPromiseResolve(writer); } function defaultWriterReadyPromiseReject(writer, reason) { if (writer._readyPromise_reject === void 0) { return; } setPromiseIsHandledToTrue(writer._readyPromise); writer._readyPromise_reject(reason); writer._readyPromise_resolve = void 0; writer._readyPromise_reject = void 0; writer._readyPromiseState = "rejected"; } function defaultWriterReadyPromiseReset(writer) { defaultWriterReadyPromiseInitialize(writer); } function defaultWriterReadyPromiseResetToRejected(writer, reason) { defaultWriterReadyPromiseInitializeAsRejected(writer, reason); } function defaultWriterReadyPromiseResolve(writer) { if (writer._readyPromise_resolve === void 0) { return; } writer._readyPromise_resolve(void 0); writer._readyPromise_resolve = void 0; writer._readyPromise_reject = void 0; writer._readyPromiseState = "fulfilled"; } const NativeDOMException = typeof DOMException !== "undefined" ? DOMException : void 0; function isDOMExceptionConstructor(ctor) { if (!(typeof ctor === "function" || typeof ctor === "object")) { return false; } try { new ctor(); return true; } catch (_a4) { return false; } } function createDOMExceptionPolyfill() { const ctor = function DOMException3(message, name) { this.message = message || ""; this.name = name || "Error"; if (Error.captureStackTrace) { Error.captureStackTrace(this, this.constructor); } }; ctor.prototype = Object.create(Error.prototype); Object.defineProperty(ctor.prototype, "constructor", { value: ctor, writable: true, configurable: true }); return ctor; } const DOMException$1 = isDOMExceptionConstructor(NativeDOMException) ? NativeDOMException : createDOMExceptionPolyfill(); function ReadableStreamPipeTo(source2, dest, preventClose, preventAbort, preventCancel, signal) { const reader = AcquireReadableStreamDefaultReader(source2); const writer = AcquireWritableStreamDefaultWriter(dest); source2._disturbed = true; let shuttingDown = false; let currentWrite = promiseResolvedWith(void 0); return newPromise((resolve, reject) => { let abortAlgorithm; if (signal !== void 0) { abortAlgorithm = () => { const error = new DOMException$1("Aborted", "AbortError"); const actions = []; if (!preventAbort) { actions.push(() => { if (dest._state === "writable") { return WritableStreamAbort(dest, error); } return promiseResolvedWith(void 0); }); } if (!preventCancel) { actions.push(() => { if (source2._state === "readable") { return ReadableStreamCancel(source2, error); } return promiseResolvedWith(void 0); }); } shutdownWithAction(() => Promise.all(actions.map((action) => action())), true, error); }; if (signal.aborted) { abortAlgorithm(); return; } signal.addEventListener("abort", abortAlgorithm); } function pipeLoop() { return newPromise((resolveLoop, rejectLoop) => { function next(done) { if (done) { resolveLoop(); } else { PerformPromiseThen(pipeStep(), next, rejectLoop); } } next(false); }); } function pipeStep() { if (shuttingDown) { return promiseResolvedWith(true); } return PerformPromiseThen(writer._readyPromise, () => { return newPromise((resolveRead, rejectRead) => { ReadableStreamDefaultReaderRead(reader, { _chunkSteps: (chunk) => { currentWrite = PerformPromiseThen(WritableStreamDefaultWriterWrite(writer, chunk), void 0, noop2); resolveRead(false); }, _closeSteps: () => resolveRead(true), _errorSteps: rejectRead }); }); }); } isOrBecomesErrored(source2, reader._closedPromise, (storedError) => { if (!preventAbort) { shutdownWithAction(() => WritableStreamAbort(dest, storedError), true, storedError); } else { shutdown(true, storedError); } }); isOrBecomesErrored(dest, writer._closedPromise, (storedError) => { if (!preventCancel) { shutdownWithAction(() => ReadableStreamCancel(source2, storedError), true, storedError); } else { shutdown(true, storedError); } }); isOrBecomesClosed(source2, reader._closedPromise, () => { if (!preventClose) { shutdownWithAction(() => WritableStreamDefaultWriterCloseWithErrorPropagation(writer)); } else { shutdown(); } }); if (WritableStreamCloseQueuedOrInFlight(dest) || dest._state === "closed") { const destClosed = new TypeError("the destination writable stream closed before all data could be piped to it"); if (!preventCancel) { shutdownWithAction(() => ReadableStreamCancel(source2, destClosed), true, destClosed); } else { shutdown(true, destClosed); } } setPromiseIsHandledToTrue(pipeLoop()); function waitForWritesToFinish() { const oldCurrentWrite = currentWrite; return PerformPromiseThen(currentWrite, () => oldCurrentWrite !== currentWrite ? waitForWritesToFinish() : void 0); } function isOrBecomesErrored(stream, promise, action) { if (stream._state === "errored") { action(stream._storedError); } else { uponRejection(promise, action); } } function isOrBecomesClosed(stream, promise, action) { if (stream._state === "closed") { action(); } else { uponFulfillment(promise, action); } } function shutdownWithAction(action, originalIsError, originalError) { if (shuttingDown) { return; } shuttingDown = true; if (dest._state === "writable" && !WritableStreamCloseQueuedOrInFlight(dest)) { uponFulfillment(waitForWritesToFinish(), doTheRest); } else { doTheRest(); } function doTheRest() { uponPromise(action(), () => finalize(originalIsError, originalError), (newError) => finalize(true, newError)); } } function shutdown(isError, error) { if (shuttingDown) { return; } shuttingDown = true; if (dest._state === "writable" && !WritableStreamCloseQueuedOrInFlight(dest)) { uponFulfillment(waitForWritesToFinish(), () => finalize(isError, error)); } else { finalize(isError, error); } } function finalize(isError, error) { WritableStreamDefaultWriterRelease(writer); ReadableStreamReaderGenericRelease(reader); if (signal !== void 0) { signal.removeEventListener("abort", abortAlgorithm); } if (isError) { reject(error); } else { resolve(void 0); } } }); } class ReadableStreamDefaultController { constructor() { throw new TypeError("Illegal constructor"); } get desiredSize() { if (!IsReadableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$1("desiredSize"); } return ReadableStreamDefaultControllerGetDesiredSize(this); } close() { if (!IsReadableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$1("close"); } if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(this)) { throw new TypeError("The stream is not in a state that permits close"); } ReadableStreamDefaultControllerClose(this); } enqueue(chunk = void 0) { if (!IsReadableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$1("enqueue"); } if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(this)) { throw new TypeError("The stream is not in a state that permits enqueue"); } return ReadableStreamDefaultControllerEnqueue(this, chunk); } error(e2 = void 0) { if (!IsReadableStreamDefaultController(this)) { throw defaultControllerBrandCheckException$1("error"); } ReadableStreamDefaultControllerError(this, e2); } [CancelSteps](reason) { ResetQueue(this); const result = this._cancelAlgorithm(reason); ReadableStreamDefaultControllerClearAlgorithms(this); return result; } [PullSteps](readRequest) { const stream = this._controlledReadableStream; if (this._queue.length > 0) { const chunk = DequeueValue(this); if (this._closeRequested && this._queue.length === 0) { ReadableStreamDefaultControllerClearAlgorithms(this); ReadableStreamClose(stream); } else { ReadableStreamDefaultControllerCallPullIfNeeded(this); } readRequest._chunkSteps(chunk); } else { ReadableStreamAddReadRequest(stream, readRequest); ReadableStreamDefaultControllerCallPullIfNeeded(this); } } } Object.defineProperties(ReadableStreamDefaultController.prototype, { close: { enumerable: true }, enqueue: { enumerable: true }, error: { enumerable: true }, desiredSize: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ReadableStreamDefaultController.prototype, SymbolPolyfill.toStringTag, { value: "ReadableStreamDefaultController", configurable: true }); } function IsReadableStreamDefaultController(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_controlledReadableStream")) { return false; } return x2 instanceof ReadableStreamDefaultController; } function ReadableStreamDefaultControllerCallPullIfNeeded(controller) { const shouldPull = ReadableStreamDefaultControllerShouldCallPull(controller); if (!shouldPull) { return; } if (controller._pulling) { controller._pullAgain = true; return; } controller._pulling = true; const pullPromise = controller._pullAlgorithm(); uponPromise(pullPromise, () => { controller._pulling = false; if (controller._pullAgain) { controller._pullAgain = false; ReadableStreamDefaultControllerCallPullIfNeeded(controller); } }, (e2) => { ReadableStreamDefaultControllerError(controller, e2); }); } function ReadableStreamDefaultControllerShouldCallPull(controller) { const stream = controller._controlledReadableStream; if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)) { return false; } if (!controller._started) { return false; } if (IsReadableStreamLocked(stream) && ReadableStreamGetNumReadRequests(stream) > 0) { return true; } const desiredSize = ReadableStreamDefaultControllerGetDesiredSize(controller); if (desiredSize > 0) { return true; } return false; } function ReadableStreamDefaultControllerClearAlgorithms(controller) { controller._pullAlgorithm = void 0; controller._cancelAlgorithm = void 0; controller._strategySizeAlgorithm = void 0; } function ReadableStreamDefaultControllerClose(controller) { if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)) { return; } const stream = controller._controlledReadableStream; controller._closeRequested = true; if (controller._queue.length === 0) { ReadableStreamDefaultControllerClearAlgorithms(controller); ReadableStreamClose(stream); } } function ReadableStreamDefaultControllerEnqueue(controller, chunk) { if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(controller)) { return; } const stream = controller._controlledReadableStream; if (IsReadableStreamLocked(stream) && ReadableStreamGetNumReadRequests(stream) > 0) { ReadableStreamFulfillReadRequest(stream, chunk, false); } else { let chunkSize; try { chunkSize = controller._strategySizeAlgorithm(chunk); } catch (chunkSizeE) { ReadableStreamDefaultControllerError(controller, chunkSizeE); throw chunkSizeE; } try { EnqueueValueWithSize(controller, chunk, chunkSize); } catch (enqueueE) { ReadableStreamDefaultControllerError(controller, enqueueE); throw enqueueE; } } ReadableStreamDefaultControllerCallPullIfNeeded(controller); } function ReadableStreamDefaultControllerError(controller, e2) { const stream = controller._controlledReadableStream; if (stream._state !== "readable") { return; } ResetQueue(controller); ReadableStreamDefaultControllerClearAlgorithms(controller); ReadableStreamError(stream, e2); } function ReadableStreamDefaultControllerGetDesiredSize(controller) { const state = controller._controlledReadableStream._state; if (state === "errored") { return null; } if (state === "closed") { return 0; } return controller._strategyHWM - controller._queueTotalSize; } function ReadableStreamDefaultControllerHasBackpressure(controller) { if (ReadableStreamDefaultControllerShouldCallPull(controller)) { return false; } return true; } function ReadableStreamDefaultControllerCanCloseOrEnqueue(controller) { const state = controller._controlledReadableStream._state; if (!controller._closeRequested && state === "readable") { return true; } return false; } function SetUpReadableStreamDefaultController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm) { controller._controlledReadableStream = stream; controller._queue = void 0; controller._queueTotalSize = void 0; ResetQueue(controller); controller._started = false; controller._closeRequested = false; controller._pullAgain = false; controller._pulling = false; controller._strategySizeAlgorithm = sizeAlgorithm; controller._strategyHWM = highWaterMark; controller._pullAlgorithm = pullAlgorithm; controller._cancelAlgorithm = cancelAlgorithm; stream._readableStreamController = controller; const startResult = startAlgorithm(); uponPromise(promiseResolvedWith(startResult), () => { controller._started = true; ReadableStreamDefaultControllerCallPullIfNeeded(controller); }, (r3) => { ReadableStreamDefaultControllerError(controller, r3); }); } function SetUpReadableStreamDefaultControllerFromUnderlyingSource(stream, underlyingSource, highWaterMark, sizeAlgorithm) { const controller = Object.create(ReadableStreamDefaultController.prototype); let startAlgorithm = () => void 0; let pullAlgorithm = () => promiseResolvedWith(void 0); let cancelAlgorithm = () => promiseResolvedWith(void 0); if (underlyingSource.start !== void 0) { startAlgorithm = () => underlyingSource.start(controller); } if (underlyingSource.pull !== void 0) { pullAlgorithm = () => underlyingSource.pull(controller); } if (underlyingSource.cancel !== void 0) { cancelAlgorithm = (reason) => underlyingSource.cancel(reason); } SetUpReadableStreamDefaultController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm); } function defaultControllerBrandCheckException$1(name) { return new TypeError(`ReadableStreamDefaultController.prototype.${name} can only be used on a ReadableStreamDefaultController`); } function ReadableStreamTee(stream, cloneForBranch2) { if (IsReadableByteStreamController(stream._readableStreamController)) { return ReadableByteStreamTee(stream); } return ReadableStreamDefaultTee(stream); } function ReadableStreamDefaultTee(stream, cloneForBranch2) { const reader = AcquireReadableStreamDefaultReader(stream); let reading = false; let readAgain = false; let canceled1 = false; let canceled2 = false; let reason1; let reason2; let branch1; let branch2; let resolveCancelPromise; const cancelPromise = newPromise((resolve) => { resolveCancelPromise = resolve; }); function pullAlgorithm() { if (reading) { readAgain = true; return promiseResolvedWith(void 0); } reading = true; const readRequest = { _chunkSteps: (chunk) => { queueMicrotask2(() => { readAgain = false; const chunk1 = chunk; const chunk2 = chunk; if (!canceled1) { ReadableStreamDefaultControllerEnqueue(branch1._readableStreamController, chunk1); } if (!canceled2) { ReadableStreamDefaultControllerEnqueue(branch2._readableStreamController, chunk2); } reading = false; if (readAgain) { pullAlgorithm(); } }); }, _closeSteps: () => { reading = false; if (!canceled1) { ReadableStreamDefaultControllerClose(branch1._readableStreamController); } if (!canceled2) { ReadableStreamDefaultControllerClose(branch2._readableStreamController); } if (!canceled1 || !canceled2) { resolveCancelPromise(void 0); } }, _errorSteps: () => { reading = false; } }; ReadableStreamDefaultReaderRead(reader, readRequest); return promiseResolvedWith(void 0); } function cancel1Algorithm(reason) { canceled1 = true; reason1 = reason; if (canceled2) { const compositeReason = CreateArrayFromList([reason1, reason2]); const cancelResult = ReadableStreamCancel(stream, compositeReason); resolveCancelPromise(cancelResult); } return cancelPromise; } function cancel2Algorithm(reason) { canceled2 = true; reason2 = reason; if (canceled1) { const compositeReason = CreateArrayFromList([reason1, reason2]); const cancelResult = ReadableStreamCancel(stream, compositeReason); resolveCancelPromise(cancelResult); } return cancelPromise; } function startAlgorithm() { } branch1 = CreateReadableStream(startAlgorithm, pullAlgorithm, cancel1Algorithm); branch2 = CreateReadableStream(startAlgorithm, pullAlgorithm, cancel2Algorithm); uponRejection(reader._closedPromise, (r3) => { ReadableStreamDefaultControllerError(branch1._readableStreamController, r3); ReadableStreamDefaultControllerError(branch2._readableStreamController, r3); if (!canceled1 || !canceled2) { resolveCancelPromise(void 0); } }); return [branch1, branch2]; } function ReadableByteStreamTee(stream) { let reader = AcquireReadableStreamDefaultReader(stream); let reading = false; let readAgainForBranch1 = false; let readAgainForBranch2 = false; let canceled1 = false; let canceled2 = false; let reason1; let reason2; let branch1; let branch2; let resolveCancelPromise; const cancelPromise = newPromise((resolve) => { resolveCancelPromise = resolve; }); function forwardReaderError(thisReader) { uponRejection(thisReader._closedPromise, (r3) => { if (thisReader !== reader) { return; } ReadableByteStreamControllerError(branch1._readableStreamController, r3); ReadableByteStreamControllerError(branch2._readableStreamController, r3); if (!canceled1 || !canceled2) { resolveCancelPromise(void 0); } }); } function pullWithDefaultReader() { if (IsReadableStreamBYOBReader(reader)) { ReadableStreamReaderGenericRelease(reader); reader = AcquireReadableStreamDefaultReader(stream); forwardReaderError(reader); } const readRequest = { _chunkSteps: (chunk) => { queueMicrotask2(() => { readAgainForBranch1 = false; readAgainForBranch2 = false; const chunk1 = chunk; let chunk2 = chunk; if (!canceled1 && !canceled2) { try { chunk2 = CloneAsUint8Array(chunk); } catch (cloneE) { ReadableByteStreamControllerError(branch1._readableStreamController, cloneE); ReadableByteStreamControllerError(branch2._readableStreamController, cloneE); resolveCancelPromise(ReadableStreamCancel(stream, cloneE)); return; } } if (!canceled1) { ReadableByteStreamControllerEnqueue(branch1._readableStreamController, chunk1); } if (!canceled2) { ReadableByteStreamControllerEnqueue(branch2._readableStreamController, chunk2); } reading = false; if (readAgainForBranch1) { pull1Algorithm(); } else if (readAgainForBranch2) { pull2Algorithm(); } }); }, _closeSteps: () => { reading = false; if (!canceled1) { ReadableByteStreamControllerClose(branch1._readableStreamController); } if (!canceled2) { ReadableByteStreamControllerClose(branch2._readableStreamController); } if (branch1._readableStreamController._pendingPullIntos.length > 0) { ReadableByteStreamControllerRespond(branch1._readableStreamController, 0); } if (branch2._readableStreamController._pendingPullIntos.length > 0) { ReadableByteStreamControllerRespond(branch2._readableStreamController, 0); } if (!canceled1 || !canceled2) { resolveCancelPromise(void 0); } }, _errorSteps: () => { reading = false; } }; ReadableStreamDefaultReaderRead(reader, readRequest); } function pullWithBYOBReader(view, forBranch2) { if (IsReadableStreamDefaultReader(reader)) { ReadableStreamReaderGenericRelease(reader); reader = AcquireReadableStreamBYOBReader(stream); forwardReaderError(reader); } const byobBranch = forBranch2 ? branch2 : branch1; const otherBranch = forBranch2 ? branch1 : branch2; const readIntoRequest = { _chunkSteps: (chunk) => { queueMicrotask2(() => { readAgainForBranch1 = false; readAgainForBranch2 = false; const byobCanceled = forBranch2 ? canceled2 : canceled1; const otherCanceled = forBranch2 ? canceled1 : canceled2; if (!otherCanceled) { let clonedChunk; try { clonedChunk = CloneAsUint8Array(chunk); } catch (cloneE) { ReadableByteStreamControllerError(byobBranch._readableStreamController, cloneE); ReadableByteStreamControllerError(otherBranch._readableStreamController, cloneE); resolveCancelPromise(ReadableStreamCancel(stream, cloneE)); return; } if (!byobCanceled) { ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController, chunk); } ReadableByteStreamControllerEnqueue(otherBranch._readableStreamController, clonedChunk); } else if (!byobCanceled) { ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController, chunk); } reading = false; if (readAgainForBranch1) { pull1Algorithm(); } else if (readAgainForBranch2) { pull2Algorithm(); } }); }, _closeSteps: (chunk) => { reading = false; const byobCanceled = forBranch2 ? canceled2 : canceled1; const otherCanceled = forBranch2 ? canceled1 : canceled2; if (!byobCanceled) { ReadableByteStreamControllerClose(byobBranch._readableStreamController); } if (!otherCanceled) { ReadableByteStreamControllerClose(otherBranch._readableStreamController); } if (chunk !== void 0) { if (!byobCanceled) { ReadableByteStreamControllerRespondWithNewView(byobBranch._readableStreamController, chunk); } if (!otherCanceled && otherBranch._readableStreamController._pendingPullIntos.length > 0) { ReadableByteStreamControllerRespond(otherBranch._readableStreamController, 0); } } if (!byobCanceled || !otherCanceled) { resolveCancelPromise(void 0); } }, _errorSteps: () => { reading = false; } }; ReadableStreamBYOBReaderRead(reader, view, readIntoRequest); } function pull1Algorithm() { if (reading) { readAgainForBranch1 = true; return promiseResolvedWith(void 0); } reading = true; const byobRequest = ReadableByteStreamControllerGetBYOBRequest(branch1._readableStreamController); if (byobRequest === null) { pullWithDefaultReader(); } else { pullWithBYOBReader(byobRequest._view, false); } return promiseResolvedWith(void 0); } function pull2Algorithm() { if (reading) { readAgainForBranch2 = true; return promiseResolvedWith(void 0); } reading = true; const byobRequest = ReadableByteStreamControllerGetBYOBRequest(branch2._readableStreamController); if (byobRequest === null) { pullWithDefaultReader(); } else { pullWithBYOBReader(byobRequest._view, true); } return promiseResolvedWith(void 0); } function cancel1Algorithm(reason) { canceled1 = true; reason1 = reason; if (canceled2) { const compositeReason = CreateArrayFromList([reason1, reason2]); const cancelResult = ReadableStreamCancel(stream, compositeReason); resolveCancelPromise(cancelResult); } return cancelPromise; } function cancel2Algorithm(reason) { canceled2 = true; reason2 = reason; if (canceled1) { const compositeReason = CreateArrayFromList([reason1, reason2]); const cancelResult = ReadableStreamCancel(stream, compositeReason); resolveCancelPromise(cancelResult); } return cancelPromise; } function startAlgorithm() { return; } branch1 = CreateReadableByteStream(startAlgorithm, pull1Algorithm, cancel1Algorithm); branch2 = CreateReadableByteStream(startAlgorithm, pull2Algorithm, cancel2Algorithm); forwardReaderError(reader); return [branch1, branch2]; } function convertUnderlyingDefaultOrByteSource(source2, context) { assertDictionary(source2, context); const original = source2; const autoAllocateChunkSize = original === null || original === void 0 ? void 0 : original.autoAllocateChunkSize; const cancel = original === null || original === void 0 ? void 0 : original.cancel; const pull = original === null || original === void 0 ? void 0 : original.pull; const start = original === null || original === void 0 ? void 0 : original.start; const type = original === null || original === void 0 ? void 0 : original.type; return { autoAllocateChunkSize: autoAllocateChunkSize === void 0 ? void 0 : convertUnsignedLongLongWithEnforceRange(autoAllocateChunkSize, `${context} has member 'autoAllocateChunkSize' that`), cancel: cancel === void 0 ? void 0 : convertUnderlyingSourceCancelCallback(cancel, original, `${context} has member 'cancel' that`), pull: pull === void 0 ? void 0 : convertUnderlyingSourcePullCallback(pull, original, `${context} has member 'pull' that`), start: start === void 0 ? void 0 : convertUnderlyingSourceStartCallback(start, original, `${context} has member 'start' that`), type: type === void 0 ? void 0 : convertReadableStreamType(type, `${context} has member 'type' that`) }; } function convertUnderlyingSourceCancelCallback(fn, original, context) { assertFunction(fn, context); return (reason) => promiseCall(fn, original, [reason]); } function convertUnderlyingSourcePullCallback(fn, original, context) { assertFunction(fn, context); return (controller) => promiseCall(fn, original, [controller]); } function convertUnderlyingSourceStartCallback(fn, original, context) { assertFunction(fn, context); return (controller) => reflectCall(fn, original, [controller]); } function convertReadableStreamType(type, context) { type = `${type}`; if (type !== "bytes") { throw new TypeError(`${context} '${type}' is not a valid enumeration value for ReadableStreamType`); } return type; } function convertReaderOptions(options, context) { assertDictionary(options, context); const mode = options === null || options === void 0 ? void 0 : options.mode; return { mode: mode === void 0 ? void 0 : convertReadableStreamReaderMode(mode, `${context} has member 'mode' that`) }; } function convertReadableStreamReaderMode(mode, context) { mode = `${mode}`; if (mode !== "byob") { throw new TypeError(`${context} '${mode}' is not a valid enumeration value for ReadableStreamReaderMode`); } return mode; } function convertIteratorOptions(options, context) { assertDictionary(options, context); const preventCancel = options === null || options === void 0 ? void 0 : options.preventCancel; return { preventCancel: Boolean(preventCancel) }; } function convertPipeOptions(options, context) { assertDictionary(options, context); const preventAbort = options === null || options === void 0 ? void 0 : options.preventAbort; const preventCancel = options === null || options === void 0 ? void 0 : options.preventCancel; const preventClose = options === null || options === void 0 ? void 0 : options.preventClose; const signal = options === null || options === void 0 ? void 0 : options.signal; if (signal !== void 0) { assertAbortSignal(signal, `${context} has member 'signal' that`); } return { preventAbort: Boolean(preventAbort), preventCancel: Boolean(preventCancel), preventClose: Boolean(preventClose), signal }; } function assertAbortSignal(signal, context) { if (!isAbortSignal2(signal)) { throw new TypeError(`${context} is not an AbortSignal.`); } } function convertReadableWritablePair(pair, context) { assertDictionary(pair, context); const readable = pair === null || pair === void 0 ? void 0 : pair.readable; assertRequiredField(readable, "readable", "ReadableWritablePair"); assertReadableStream(readable, `${context} has member 'readable' that`); const writable = pair === null || pair === void 0 ? void 0 : pair.writable; assertRequiredField(writable, "writable", "ReadableWritablePair"); assertWritableStream(writable, `${context} has member 'writable' that`); return { readable, writable }; } class ReadableStream2 { constructor(rawUnderlyingSource = {}, rawStrategy = {}) { if (rawUnderlyingSource === void 0) { rawUnderlyingSource = null; } else { assertObject(rawUnderlyingSource, "First parameter"); } const strategy = convertQueuingStrategy(rawStrategy, "Second parameter"); const underlyingSource = convertUnderlyingDefaultOrByteSource(rawUnderlyingSource, "First parameter"); InitializeReadableStream(this); if (underlyingSource.type === "bytes") { if (strategy.size !== void 0) { throw new RangeError("The strategy for a byte stream cannot have a size function"); } const highWaterMark = ExtractHighWaterMark(strategy, 0); SetUpReadableByteStreamControllerFromUnderlyingSource(this, underlyingSource, highWaterMark); } else { const sizeAlgorithm = ExtractSizeAlgorithm(strategy); const highWaterMark = ExtractHighWaterMark(strategy, 1); SetUpReadableStreamDefaultControllerFromUnderlyingSource(this, underlyingSource, highWaterMark, sizeAlgorithm); } } get locked() { if (!IsReadableStream(this)) { throw streamBrandCheckException$1("locked"); } return IsReadableStreamLocked(this); } cancel(reason = void 0) { if (!IsReadableStream(this)) { return promiseRejectedWith(streamBrandCheckException$1("cancel")); } if (IsReadableStreamLocked(this)) { return promiseRejectedWith(new TypeError("Cannot cancel a stream that already has a reader")); } return ReadableStreamCancel(this, reason); } getReader(rawOptions = void 0) { if (!IsReadableStream(this)) { throw streamBrandCheckException$1("getReader"); } const options = convertReaderOptions(rawOptions, "First parameter"); if (options.mode === void 0) { return AcquireReadableStreamDefaultReader(this); } return AcquireReadableStreamBYOBReader(this); } pipeThrough(rawTransform, rawOptions = {}) { if (!IsReadableStream(this)) { throw streamBrandCheckException$1("pipeThrough"); } assertRequiredArgument(rawTransform, 1, "pipeThrough"); const transform = convertReadableWritablePair(rawTransform, "First parameter"); const options = convertPipeOptions(rawOptions, "Second parameter"); if (IsReadableStreamLocked(this)) { throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream"); } if (IsWritableStreamLocked(transform.writable)) { throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream"); } const promise = ReadableStreamPipeTo(this, transform.writable, options.preventClose, options.preventAbort, options.preventCancel, options.signal); setPromiseIsHandledToTrue(promise); return transform.readable; } pipeTo(destination, rawOptions = {}) { if (!IsReadableStream(this)) { return promiseRejectedWith(streamBrandCheckException$1("pipeTo")); } if (destination === void 0) { return promiseRejectedWith(`Parameter 1 is required in 'pipeTo'.`); } if (!IsWritableStream(destination)) { return promiseRejectedWith(new TypeError(`ReadableStream.prototype.pipeTo's first argument must be a WritableStream`)); } let options; try { options = convertPipeOptions(rawOptions, "Second parameter"); } catch (e2) { return promiseRejectedWith(e2); } if (IsReadableStreamLocked(this)) { return promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")); } if (IsWritableStreamLocked(destination)) { return promiseRejectedWith(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")); } return ReadableStreamPipeTo(this, destination, options.preventClose, options.preventAbort, options.preventCancel, options.signal); } tee() { if (!IsReadableStream(this)) { throw streamBrandCheckException$1("tee"); } const branches = ReadableStreamTee(this); return CreateArrayFromList(branches); } values(rawOptions = void 0) { if (!IsReadableStream(this)) { throw streamBrandCheckException$1("values"); } const options = convertIteratorOptions(rawOptions, "First parameter"); return AcquireReadableStreamAsyncIterator(this, options.preventCancel); } } Object.defineProperties(ReadableStream2.prototype, { cancel: { enumerable: true }, getReader: { enumerable: true }, pipeThrough: { enumerable: true }, pipeTo: { enumerable: true }, tee: { enumerable: true }, values: { enumerable: true }, locked: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ReadableStream2.prototype, SymbolPolyfill.toStringTag, { value: "ReadableStream", configurable: true }); } if (typeof SymbolPolyfill.asyncIterator === "symbol") { Object.defineProperty(ReadableStream2.prototype, SymbolPolyfill.asyncIterator, { value: ReadableStream2.prototype.values, writable: true, configurable: true }); } function CreateReadableStream(startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark = 1, sizeAlgorithm = () => 1) { const stream = Object.create(ReadableStream2.prototype); InitializeReadableStream(stream); const controller = Object.create(ReadableStreamDefaultController.prototype); SetUpReadableStreamDefaultController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, highWaterMark, sizeAlgorithm); return stream; } function CreateReadableByteStream(startAlgorithm, pullAlgorithm, cancelAlgorithm) { const stream = Object.create(ReadableStream2.prototype); InitializeReadableStream(stream); const controller = Object.create(ReadableByteStreamController.prototype); SetUpReadableByteStreamController(stream, controller, startAlgorithm, pullAlgorithm, cancelAlgorithm, 0, void 0); return stream; } function InitializeReadableStream(stream) { stream._state = "readable"; stream._reader = void 0; stream._storedError = void 0; stream._disturbed = false; } function IsReadableStream(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_readableStreamController")) { return false; } return x2 instanceof ReadableStream2; } function IsReadableStreamLocked(stream) { if (stream._reader === void 0) { return false; } return true; } function ReadableStreamCancel(stream, reason) { stream._disturbed = true; if (stream._state === "closed") { return promiseResolvedWith(void 0); } if (stream._state === "errored") { return promiseRejectedWith(stream._storedError); } ReadableStreamClose(stream); const reader = stream._reader; if (reader !== void 0 && IsReadableStreamBYOBReader(reader)) { reader._readIntoRequests.forEach((readIntoRequest) => { readIntoRequest._closeSteps(void 0); }); reader._readIntoRequests = new SimpleQueue(); } const sourceCancelPromise = stream._readableStreamController[CancelSteps](reason); return transformPromiseWith(sourceCancelPromise, noop2); } function ReadableStreamClose(stream) { stream._state = "closed"; const reader = stream._reader; if (reader === void 0) { return; } defaultReaderClosedPromiseResolve(reader); if (IsReadableStreamDefaultReader(reader)) { reader._readRequests.forEach((readRequest) => { readRequest._closeSteps(); }); reader._readRequests = new SimpleQueue(); } } function ReadableStreamError(stream, e2) { stream._state = "errored"; stream._storedError = e2; const reader = stream._reader; if (reader === void 0) { return; } defaultReaderClosedPromiseReject(reader, e2); if (IsReadableStreamDefaultReader(reader)) { reader._readRequests.forEach((readRequest) => { readRequest._errorSteps(e2); }); reader._readRequests = new SimpleQueue(); } else { reader._readIntoRequests.forEach((readIntoRequest) => { readIntoRequest._errorSteps(e2); }); reader._readIntoRequests = new SimpleQueue(); } } function streamBrandCheckException$1(name) { return new TypeError(`ReadableStream.prototype.${name} can only be used on a ReadableStream`); } function convertQueuingStrategyInit(init2, context) { assertDictionary(init2, context); const highWaterMark = init2 === null || init2 === void 0 ? void 0 : init2.highWaterMark; assertRequiredField(highWaterMark, "highWaterMark", "QueuingStrategyInit"); return { highWaterMark: convertUnrestrictedDouble(highWaterMark) }; } const byteLengthSizeFunction = (chunk) => { return chunk.byteLength; }; try { Object.defineProperty(byteLengthSizeFunction, "name", { value: "size", configurable: true }); } catch (_a4) { } class ByteLengthQueuingStrategy { constructor(options) { assertRequiredArgument(options, 1, "ByteLengthQueuingStrategy"); options = convertQueuingStrategyInit(options, "First parameter"); this._byteLengthQueuingStrategyHighWaterMark = options.highWaterMark; } get highWaterMark() { if (!IsByteLengthQueuingStrategy(this)) { throw byteLengthBrandCheckException("highWaterMark"); } return this._byteLengthQueuingStrategyHighWaterMark; } get size() { if (!IsByteLengthQueuingStrategy(this)) { throw byteLengthBrandCheckException("size"); } return byteLengthSizeFunction; } } Object.defineProperties(ByteLengthQueuingStrategy.prototype, { highWaterMark: { enumerable: true }, size: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(ByteLengthQueuingStrategy.prototype, SymbolPolyfill.toStringTag, { value: "ByteLengthQueuingStrategy", configurable: true }); } function byteLengthBrandCheckException(name) { return new TypeError(`ByteLengthQueuingStrategy.prototype.${name} can only be used on a ByteLengthQueuingStrategy`); } function IsByteLengthQueuingStrategy(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_byteLengthQueuingStrategyHighWaterMark")) { return false; } return x2 instanceof ByteLengthQueuingStrategy; } const countSizeFunction = () => { return 1; }; try { Object.defineProperty(countSizeFunction, "name", { value: "size", configurable: true }); } catch (_a4) { } class CountQueuingStrategy { constructor(options) { assertRequiredArgument(options, 1, "CountQueuingStrategy"); options = convertQueuingStrategyInit(options, "First parameter"); this._countQueuingStrategyHighWaterMark = options.highWaterMark; } get highWaterMark() { if (!IsCountQueuingStrategy(this)) { throw countBrandCheckException("highWaterMark"); } return this._countQueuingStrategyHighWaterMark; } get size() { if (!IsCountQueuingStrategy(this)) { throw countBrandCheckException("size"); } return countSizeFunction; } } Object.defineProperties(CountQueuingStrategy.prototype, { highWaterMark: { enumerable: true }, size: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(CountQueuingStrategy.prototype, SymbolPolyfill.toStringTag, { value: "CountQueuingStrategy", configurable: true }); } function countBrandCheckException(name) { return new TypeError(`CountQueuingStrategy.prototype.${name} can only be used on a CountQueuingStrategy`); } function IsCountQueuingStrategy(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_countQueuingStrategyHighWaterMark")) { return false; } return x2 instanceof CountQueuingStrategy; } function convertTransformer(original, context) { assertDictionary(original, context); const flush = original === null || original === void 0 ? void 0 : original.flush; const readableType = original === null || original === void 0 ? void 0 : original.readableType; const start = original === null || original === void 0 ? void 0 : original.start; const transform = original === null || original === void 0 ? void 0 : original.transform; const writableType = original === null || original === void 0 ? void 0 : original.writableType; return { flush: flush === void 0 ? void 0 : convertTransformerFlushCallback(flush, original, `${context} has member 'flush' that`), readableType, start: start === void 0 ? void 0 : convertTransformerStartCallback(start, original, `${context} has member 'start' that`), transform: transform === void 0 ? void 0 : convertTransformerTransformCallback(transform, original, `${context} has member 'transform' that`), writableType }; } function convertTransformerFlushCallback(fn, original, context) { assertFunction(fn, context); return (controller) => promiseCall(fn, original, [controller]); } function convertTransformerStartCallback(fn, original, context) { assertFunction(fn, context); return (controller) => reflectCall(fn, original, [controller]); } function convertTransformerTransformCallback(fn, original, context) { assertFunction(fn, context); return (chunk, controller) => promiseCall(fn, original, [chunk, controller]); } class TransformStream { constructor(rawTransformer = {}, rawWritableStrategy = {}, rawReadableStrategy = {}) { if (rawTransformer === void 0) { rawTransformer = null; } const writableStrategy = convertQueuingStrategy(rawWritableStrategy, "Second parameter"); const readableStrategy = convertQueuingStrategy(rawReadableStrategy, "Third parameter"); const transformer = convertTransformer(rawTransformer, "First parameter"); if (transformer.readableType !== void 0) { throw new RangeError("Invalid readableType specified"); } if (transformer.writableType !== void 0) { throw new RangeError("Invalid writableType specified"); } const readableHighWaterMark = ExtractHighWaterMark(readableStrategy, 0); const readableSizeAlgorithm = ExtractSizeAlgorithm(readableStrategy); const writableHighWaterMark = ExtractHighWaterMark(writableStrategy, 1); const writableSizeAlgorithm = ExtractSizeAlgorithm(writableStrategy); let startPromise_resolve; const startPromise = newPromise((resolve) => { startPromise_resolve = resolve; }); InitializeTransformStream(this, startPromise, writableHighWaterMark, writableSizeAlgorithm, readableHighWaterMark, readableSizeAlgorithm); SetUpTransformStreamDefaultControllerFromTransformer(this, transformer); if (transformer.start !== void 0) { startPromise_resolve(transformer.start(this._transformStreamController)); } else { startPromise_resolve(void 0); } } get readable() { if (!IsTransformStream(this)) { throw streamBrandCheckException("readable"); } return this._readable; } get writable() { if (!IsTransformStream(this)) { throw streamBrandCheckException("writable"); } return this._writable; } } Object.defineProperties(TransformStream.prototype, { readable: { enumerable: true }, writable: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(TransformStream.prototype, SymbolPolyfill.toStringTag, { value: "TransformStream", configurable: true }); } function InitializeTransformStream(stream, startPromise, writableHighWaterMark, writableSizeAlgorithm, readableHighWaterMark, readableSizeAlgorithm) { function startAlgorithm() { return startPromise; } function writeAlgorithm(chunk) { return TransformStreamDefaultSinkWriteAlgorithm(stream, chunk); } function abortAlgorithm(reason) { return TransformStreamDefaultSinkAbortAlgorithm(stream, reason); } function closeAlgorithm() { return TransformStreamDefaultSinkCloseAlgorithm(stream); } stream._writable = CreateWritableStream(startAlgorithm, writeAlgorithm, closeAlgorithm, abortAlgorithm, writableHighWaterMark, writableSizeAlgorithm); function pullAlgorithm() { return TransformStreamDefaultSourcePullAlgorithm(stream); } function cancelAlgorithm(reason) { TransformStreamErrorWritableAndUnblockWrite(stream, reason); return promiseResolvedWith(void 0); } stream._readable = CreateReadableStream(startAlgorithm, pullAlgorithm, cancelAlgorithm, readableHighWaterMark, readableSizeAlgorithm); stream._backpressure = void 0; stream._backpressureChangePromise = void 0; stream._backpressureChangePromise_resolve = void 0; TransformStreamSetBackpressure(stream, true); stream._transformStreamController = void 0; } function IsTransformStream(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_transformStreamController")) { return false; } return x2 instanceof TransformStream; } function TransformStreamError(stream, e2) { ReadableStreamDefaultControllerError(stream._readable._readableStreamController, e2); TransformStreamErrorWritableAndUnblockWrite(stream, e2); } function TransformStreamErrorWritableAndUnblockWrite(stream, e2) { TransformStreamDefaultControllerClearAlgorithms(stream._transformStreamController); WritableStreamDefaultControllerErrorIfNeeded(stream._writable._writableStreamController, e2); if (stream._backpressure) { TransformStreamSetBackpressure(stream, false); } } function TransformStreamSetBackpressure(stream, backpressure) { if (stream._backpressureChangePromise !== void 0) { stream._backpressureChangePromise_resolve(); } stream._backpressureChangePromise = newPromise((resolve) => { stream._backpressureChangePromise_resolve = resolve; }); stream._backpressure = backpressure; } class TransformStreamDefaultController { constructor() { throw new TypeError("Illegal constructor"); } get desiredSize() { if (!IsTransformStreamDefaultController(this)) { throw defaultControllerBrandCheckException("desiredSize"); } const readableController = this._controlledTransformStream._readable._readableStreamController; return ReadableStreamDefaultControllerGetDesiredSize(readableController); } enqueue(chunk = void 0) { if (!IsTransformStreamDefaultController(this)) { throw defaultControllerBrandCheckException("enqueue"); } TransformStreamDefaultControllerEnqueue(this, chunk); } error(reason = void 0) { if (!IsTransformStreamDefaultController(this)) { throw defaultControllerBrandCheckException("error"); } TransformStreamDefaultControllerError(this, reason); } terminate() { if (!IsTransformStreamDefaultController(this)) { throw defaultControllerBrandCheckException("terminate"); } TransformStreamDefaultControllerTerminate(this); } } Object.defineProperties(TransformStreamDefaultController.prototype, { enqueue: { enumerable: true }, error: { enumerable: true }, terminate: { enumerable: true }, desiredSize: { enumerable: true } }); if (typeof SymbolPolyfill.toStringTag === "symbol") { Object.defineProperty(TransformStreamDefaultController.prototype, SymbolPolyfill.toStringTag, { value: "TransformStreamDefaultController", configurable: true }); } function IsTransformStreamDefaultController(x2) { if (!typeIsObject(x2)) { return false; } if (!Object.prototype.hasOwnProperty.call(x2, "_controlledTransformStream")) { return false; } return x2 instanceof TransformStreamDefaultController; } function SetUpTransformStreamDefaultController(stream, controller, transformAlgorithm, flushAlgorithm) { controller._controlledTransformStream = stream; stream._transformStreamController = controller; controller._transformAlgorithm = transformAlgorithm; controller._flushAlgorithm = flushAlgorithm; } function SetUpTransformStreamDefaultControllerFromTransformer(stream, transformer) { const controller = Object.create(TransformStreamDefaultController.prototype); let transformAlgorithm = (chunk) => { try { TransformStreamDefaultControllerEnqueue(controller, chunk); return promiseResolvedWith(void 0); } catch (transformResultE) { return promiseRejectedWith(transformResultE); } }; let flushAlgorithm = () => promiseResolvedWith(void 0); if (transformer.transform !== void 0) { transformAlgorithm = (chunk) => transformer.transform(chunk, controller); } if (transformer.flush !== void 0) { flushAlgorithm = () => transformer.flush(controller); } SetUpTransformStreamDefaultController(stream, controller, transformAlgorithm, flushAlgorithm); } function TransformStreamDefaultControllerClearAlgorithms(controller) { controller._transformAlgorithm = void 0; controller._flushAlgorithm = void 0; } function TransformStreamDefaultControllerEnqueue(controller, chunk) { const stream = controller._controlledTransformStream; const readableController = stream._readable._readableStreamController; if (!ReadableStreamDefaultControllerCanCloseOrEnqueue(readableController)) { throw new TypeError("Readable side is not in a state that permits enqueue"); } try { ReadableStreamDefaultControllerEnqueue(readableController, chunk); } catch (e2) { TransformStreamErrorWritableAndUnblockWrite(stream, e2); throw stream._readable._storedError; } const backpressure = ReadableStreamDefaultControllerHasBackpressure(readableController); if (backpressure !== stream._backpressure) { TransformStreamSetBackpressure(stream, true); } } function TransformStreamDefaultControllerError(controller, e2) { TransformStreamError(controller._controlledTransformStream, e2); } function TransformStreamDefaultControllerPerformTransform(controller, chunk) { const transformPromise = controller._transformAlgorithm(chunk); return transformPromiseWith(transformPromise, void 0, (r3) => { TransformStreamError(controller._controlledTransformStream, r3); throw r3; }); } function TransformStreamDefaultControllerTerminate(controller) { const stream = controller._controlledTransformStream; const readableController = stream._readable._readableStreamController; ReadableStreamDefaultControllerClose(readableController); const error = new TypeError("TransformStream terminated"); TransformStreamErrorWritableAndUnblockWrite(stream, error); } function TransformStreamDefaultSinkWriteAlgorithm(stream, chunk) { const controller = stream._transformStreamController; if (stream._backpressure) { const backpressureChangePromise = stream._backpressureChangePromise; return transformPromiseWith(backpressureChangePromise, () => { const writable = stream._writable; const state = writable._state; if (state === "erroring") { throw writable._storedError; } return TransformStreamDefaultControllerPerformTransform(controller, chunk); }); } return TransformStreamDefaultControllerPerformTransform(controller, chunk); } function TransformStreamDefaultSinkAbortAlgorithm(stream, reason) { TransformStreamError(stream, reason); return promiseResolvedWith(void 0); } function TransformStreamDefaultSinkCloseAlgorithm(stream) { const readable = stream._readable; const controller = stream._transformStreamController; const flushPromise = controller._flushAlgorithm(); TransformStreamDefaultControllerClearAlgorithms(controller); return transformPromiseWith(flushPromise, () => { if (readable._state === "errored") { throw readable._storedError; } ReadableStreamDefaultControllerClose(readable._readableStreamController); }, (r3) => { TransformStreamError(stream, r3); throw readable._storedError; }); } function TransformStreamDefaultSourcePullAlgorithm(stream) { TransformStreamSetBackpressure(stream, false); return stream._backpressureChangePromise; } function defaultControllerBrandCheckException(name) { return new TypeError(`TransformStreamDefaultController.prototype.${name} can only be used on a TransformStreamDefaultController`); } function streamBrandCheckException(name) { return new TypeError(`TransformStream.prototype.${name} can only be used on a TransformStream`); } exports2.ByteLengthQueuingStrategy = ByteLengthQueuingStrategy; exports2.CountQueuingStrategy = CountQueuingStrategy; exports2.ReadableByteStreamController = ReadableByteStreamController; exports2.ReadableStream = ReadableStream2; exports2.ReadableStreamBYOBReader = ReadableStreamBYOBReader; exports2.ReadableStreamBYOBRequest = ReadableStreamBYOBRequest; exports2.ReadableStreamDefaultController = ReadableStreamDefaultController; exports2.ReadableStreamDefaultReader = ReadableStreamDefaultReader; exports2.TransformStream = TransformStream; exports2.TransformStreamDefaultController = TransformStreamDefaultController; exports2.WritableStream = WritableStream; exports2.WritableStreamDefaultController = WritableStreamDefaultController; exports2.WritableStreamDefaultWriter = WritableStreamDefaultWriter; Object.defineProperty(exports2, "__esModule", { value: true }); }); } }); // ../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/streams.cjs var require_streams2 = __commonJS({ "../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/streams.cjs"() { var POOL_SIZE2 = 65536; if (!globalThis.ReadableStream) { try { const process2 = require("process"); const { emitWarning } = process2; try { process2.emitWarning = () => { }; Object.assign(globalThis, require("stream/web")); process2.emitWarning = emitWarning; } catch (error) { process2.emitWarning = emitWarning; throw error; } } catch (error) { Object.assign(globalThis, require_ponyfill_es2018()); } } try { const { Blob: Blob3 } = require("buffer"); if (Blob3 && !Blob3.prototype.stream) { Blob3.prototype.stream = function name(params) { let position = 0; const blob = this; return new ReadableStream({ type: "bytes", async pull(ctrl) { const chunk = blob.slice(position, Math.min(blob.size, position + POOL_SIZE2)); const buffer = await chunk.arrayBuffer(); position += buffer.byteLength; ctrl.enqueue(new Uint8Array(buffer)); if (position === blob.size) { ctrl.close(); } } }); }; } } catch (error) { } } }); // ../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/index.js async function* toIterator(parts, clone2 = true) { for (const part of parts) { if ("stream" in part) { yield* part.stream(); } else if (ArrayBuffer.isView(part)) { if (clone2) { let position = part.byteOffset; const end = part.byteOffset + part.byteLength; while (position !== end) { const size = Math.min(end - position, POOL_SIZE); const chunk = part.buffer.slice(position, position + size); position += chunk.byteLength; yield new Uint8Array(chunk); } } else { yield part; } } else { let position = 0, b = part; while (position !== b.size) { const chunk = b.slice(position, Math.min(b.size, position + POOL_SIZE)); const buffer = await chunk.arrayBuffer(); position += buffer.byteLength; yield new Uint8Array(buffer); } } } } var import_streams, POOL_SIZE, _parts, _type, _size, _endings, _a, _Blob, Blob2, fetch_blob_default; var init_fetch_blob = __esm({ "../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/index.js"() { import_streams = __toESM(require_streams2(), 1); POOL_SIZE = 65536; _Blob = (_a = class { constructor(blobParts = [], options = {}) { __privateAdd(this, _parts, []); __privateAdd(this, _type, ""); __privateAdd(this, _size, 0); __privateAdd(this, _endings, "transparent"); if (typeof blobParts !== "object" || blobParts === null) { throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence."); } if (typeof blobParts[Symbol.iterator] !== "function") { throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property."); } if (typeof options !== "object" && typeof options !== "function") { throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary."); } if (options === null) options = {}; const encoder = new TextEncoder(); for (const element of blobParts) { let part; if (ArrayBuffer.isView(element)) { part = new Uint8Array(element.buffer.slice(element.byteOffset, element.byteOffset + element.byteLength)); } else if (element instanceof ArrayBuffer) { part = new Uint8Array(element.slice(0)); } else if (element instanceof _a) { part = element; } else { part = encoder.encode(`${element}`); } __privateSet(this, _size, __privateGet(this, _size) + (ArrayBuffer.isView(part) ? part.byteLength : part.size)); __privateGet(this, _parts).push(part); } __privateSet(this, _endings, `${options.endings === void 0 ? "transparent" : options.endings}`); const type = options.type === void 0 ? "" : String(options.type); __privateSet(this, _type, /^[\x20-\x7E]*$/.test(type) ? type : ""); } get size() { return __privateGet(this, _size); } get type() { return __privateGet(this, _type); } async text() { const decoder = new TextDecoder(); let str = ""; for await (const part of toIterator(__privateGet(this, _parts), false)) { str += decoder.decode(part, { stream: true }); } str += decoder.decode(); return str; } async arrayBuffer() { const data = new Uint8Array(this.size); let offset = 0; for await (const chunk of toIterator(__privateGet(this, _parts), false)) { data.set(chunk, offset); offset += chunk.length; } return data.buffer; } stream() { const it = toIterator(__privateGet(this, _parts), true); return new globalThis.ReadableStream({ type: "bytes", async pull(ctrl) { const chunk = await it.next(); chunk.done ? ctrl.close() : ctrl.enqueue(chunk.value); }, async cancel() { await it.return(); } }); } slice(start = 0, end = this.size, type = "") { const { size } = this; let relativeStart = start < 0 ? Math.max(size + start, 0) : Math.min(start, size); let relativeEnd = end < 0 ? Math.max(size + end, 0) : Math.min(end, size); const span = Math.max(relativeEnd - relativeStart, 0); const parts = __privateGet(this, _parts); const blobParts = []; let added = 0; for (const part of parts) { if (added >= span) { break; } const size2 = ArrayBuffer.isView(part) ? part.byteLength : part.size; if (relativeStart && size2 <= relativeStart) { relativeStart -= size2; relativeEnd -= size2; } else { let chunk; if (ArrayBuffer.isView(part)) { chunk = part.subarray(relativeStart, Math.min(size2, relativeEnd)); added += chunk.byteLength; } else { chunk = part.slice(relativeStart, Math.min(size2, relativeEnd)); added += chunk.size; } relativeEnd -= size2; blobParts.push(chunk); relativeStart = 0; } } const blob = new _a([], { type: String(type).toLowerCase() }); __privateSet(blob, _size, span); __privateSet(blob, _parts, blobParts); return blob; } get [Symbol.toStringTag]() { return "Blob"; } static [Symbol.hasInstance](object) { return object && typeof object === "object" && typeof object.constructor === "function" && (typeof object.stream === "function" || typeof object.arrayBuffer === "function") && /^(Blob|File)$/.test(object[Symbol.toStringTag]); } }, _parts = new WeakMap(), _type = new WeakMap(), _size = new WeakMap(), _endings = new WeakMap(), _a); Object.defineProperties(_Blob.prototype, { size: { enumerable: true }, type: { enumerable: true }, slice: { enumerable: true } }); Blob2 = _Blob; fetch_blob_default = Blob2; } }); // ../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/file.js var _lastModified, _name, _a2, _File, File, file_default; var init_file = __esm({ "../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/file.js"() { init_fetch_blob(); _File = (_a2 = class extends fetch_blob_default { constructor(fileBits, fileName, options = {}) { if (arguments.length < 2) { throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`); } super(fileBits, options); __privateAdd(this, _lastModified, 0); __privateAdd(this, _name, ""); if (options === null) options = {}; const lastModified = options.lastModified === void 0 ? Date.now() : Number(options.lastModified); if (!Number.isNaN(lastModified)) { __privateSet(this, _lastModified, lastModified); } __privateSet(this, _name, String(fileName)); } get name() { return __privateGet(this, _name); } get lastModified() { return __privateGet(this, _lastModified); } get [Symbol.toStringTag]() { return "File"; } static [Symbol.hasInstance](object) { return !!object && object instanceof fetch_blob_default && /^(File)$/.test(object[Symbol.toStringTag]); } }, _lastModified = new WeakMap(), _name = new WeakMap(), _a2); File = _File; file_default = File; } }); // ../../node_modules/.pnpm/formdata-polyfill@4.0.10/node_modules/formdata-polyfill/esm.min.js function formDataToBlob(F2, B = fetch_blob_default) { var b = `${r2()}${r2()}`.replace(/\./g, "").slice(-28).padStart(32, "-"), c2 = [], p = `--${b}\r Content-Disposition: form-data; name="`; F2.forEach((v, n) => typeof v == "string" ? c2.push(p + e(n) + `"\r \r ${v.replace(/\r(?!\n)|(? (a += "", /^(Blob|File)$/.test(b && b[t]) ? [(c2 = c2 !== void 0 ? c2 + "" : b[t] == "File" ? b.name : "blob", a), b.name !== c2 || b[t] == "blob" ? new file_default([b], c2, b) : b] : [a, b + ""]); e = (c2, f4) => (f4 ? c2 : c2.replace(/\r?\n|\r/g, "\r\n")).replace(/\n/g, "%0A").replace(/\r/g, "%0D").replace(/"/g, "%22"); x = (n, a, e2) => { if (a.length < e2) { throw new TypeError(`Failed to execute '${n}' on 'FormData': ${e2} arguments required, but only ${a.length} present.`); } }; FormData2 = (_a3 = class { constructor(...a) { __privateAdd(this, _d, []); if (a.length) throw new TypeError(`Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.`); } get [t]() { return "FormData"; } [i]() { return this.entries(); } static [h2](o2) { return o2 && typeof o2 === "object" && o2[t] === "FormData" && !m.some((m2) => typeof o2[m2] != "function"); } append(...a) { x("append", arguments, 2); __privateGet(this, _d).push(f2(...a)); } delete(a) { x("delete", arguments, 1); a += ""; __privateSet(this, _d, __privateGet(this, _d).filter(([b]) => b !== a)); } get(a) { x("get", arguments, 1); a += ""; for (var b = __privateGet(this, _d), l = b.length, c2 = 0; c2 < l; c2++) if (b[c2][0] === a) return b[c2][1]; return null; } getAll(a, b) { x("getAll", arguments, 1); b = []; a += ""; __privateGet(this, _d).forEach((c2) => c2[0] === a && b.push(c2[1])); return b; } has(a) { x("has", arguments, 1); a += ""; return __privateGet(this, _d).some((b) => b[0] === a); } forEach(a, b) { x("forEach", arguments, 1); for (var [c2, d] of this) a.call(b, d, c2, this); } set(...a) { x("set", arguments, 2); var b = [], c2 = true; a = f2(...a); __privateGet(this, _d).forEach((d) => { d[0] === a[0] ? c2 && (c2 = !b.push(a)) : b.push(d); }); c2 && b.push(a); __privateSet(this, _d, b); } *entries() { yield* __privateGet(this, _d); } *keys() { for (var [a] of this) yield a; } *values() { for (var [, a] of this) yield a; } }, _d = new WeakMap(), _a3); } }); // ../../node_modules/.pnpm/node-domexception@1.0.0/node_modules/node-domexception/index.js var require_node_domexception = __commonJS({ "../../node_modules/.pnpm/node-domexception@1.0.0/node_modules/node-domexception/index.js"(exports, module2) { if (!globalThis.DOMException) { try { const { MessageChannel } = require("worker_threads"), port = new MessageChannel().port1, ab = new ArrayBuffer(); port.postMessage(ab, [ab, ab]); } catch (err) { err.constructor.name === "DOMException" && (globalThis.DOMException = err.constructor); } } module2.exports = globalThis.DOMException; } }); // ../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/from.js var import_node_fs, import_node_path, import_node_domexception, stat, fileFromSync, fromFile, _path, _start, _BlobDataItem, BlobDataItem; var init_from = __esm({ "../../node_modules/.pnpm/fetch-blob@3.2.0/node_modules/fetch-blob/from.js"() { import_node_fs = require("fs"); import_node_path = require("path"); import_node_domexception = __toESM(require_node_domexception(), 1); init_file(); init_fetch_blob(); ({ stat } = import_node_fs.promises); fileFromSync = (path5, type) => fromFile((0, import_node_fs.statSync)(path5), path5, type); fromFile = (stat2, path5, type = "") => new file_default([new BlobDataItem({ path: path5, size: stat2.size, lastModified: stat2.mtimeMs, start: 0 })], (0, import_node_path.basename)(path5), { type, lastModified: stat2.mtimeMs }); _BlobDataItem = class { constructor(options) { __privateAdd(this, _path, void 0); __privateAdd(this, _start, void 0); __privateSet(this, _path, options.path); __privateSet(this, _start, options.start); this.size = options.size; this.lastModified = options.lastModified; } slice(start, end) { return new _BlobDataItem({ path: __privateGet(this, _path), lastModified: this.lastModified, size: end - start, start: __privateGet(this, _start) + start }); } async *stream() { const { mtimeMs } = await stat(__privateGet(this, _path)); if (mtimeMs > this.lastModified) { throw new import_node_domexception.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.", "NotReadableError"); } yield* (0, import_node_fs.createReadStream)(__privateGet(this, _path), { start: __privateGet(this, _start), end: __privateGet(this, _start) + this.size - 1 }); } get [Symbol.toStringTag]() { return "Blob"; } }; BlobDataItem = _BlobDataItem; _path = new WeakMap(); _start = new WeakMap(); } }); // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/utils/multipart-parser.js var multipart_parser_exports = {}; __export(multipart_parser_exports, { toFormData: () => toFormData }); function _fileName(headerValue) { const m2 = headerValue.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i); if (!m2) { return; } const match = m2[2] || m2[3] || ""; let filename = match.slice(match.lastIndexOf("\\") + 1); filename = filename.replace(/%22/g, '"'); filename = filename.replace(/&#(\d{4});/g, (m3, code) => { return String.fromCharCode(code); }); return filename; } async function toFormData(Body2, ct) { if (!/multipart/i.test(ct)) { throw new TypeError("Failed to fetch"); } const m2 = ct.match(/boundary=(?:"([^"]+)"|([^;]+))/i); if (!m2) { throw new TypeError("no or bad content-type header, no multipart boundary"); } const parser = new MultipartParser(m2[1] || m2[2]); let headerField; let headerValue; let entryValue; let entryName; let contentType; let filename; const entryChunks = []; const formData = new FormData2(); const onPartData = (ui8a) => { entryValue += decoder.decode(ui8a, { stream: true }); }; const appendToFile = (ui8a) => { entryChunks.push(ui8a); }; const appendFileToFormData = () => { const file = new file_default(entryChunks, filename, { type: contentType }); formData.append(entryName, file); }; const appendEntryToFormData = () => { formData.append(entryName, entryValue); }; const decoder = new TextDecoder("utf-8"); decoder.decode(); parser.onPartBegin = function() { parser.onPartData = onPartData; parser.onPartEnd = appendEntryToFormData; headerField = ""; headerValue = ""; entryValue = ""; entryName = ""; contentType = ""; filename = null; entryChunks.length = 0; }; parser.onHeaderField = function(ui8a) { headerField += decoder.decode(ui8a, { stream: true }); }; parser.onHeaderValue = function(ui8a) { headerValue += decoder.decode(ui8a, { stream: true }); }; parser.onHeaderEnd = function() { headerValue += decoder.decode(); headerField = headerField.toLowerCase(); if (headerField === "content-disposition") { const m3 = headerValue.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i); if (m3) { entryName = m3[2] || m3[3] || ""; } filename = _fileName(headerValue); if (filename) { parser.onPartData = appendToFile; parser.onPartEnd = appendFileToFormData; } } else if (headerField === "content-type") { contentType = headerValue; } headerValue = ""; headerField = ""; }; for await (const chunk of Body2) { parser.write(chunk); } parser.end(); return formData; } var s, S, f3, F, LF, CR, SPACE, HYPHEN, COLON, A, Z, lower, noop, MultipartParser; var init_multipart_parser = __esm({ "../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/utils/multipart-parser.js"() { init_from(); init_esm_min(); s = 0; S = { START_BOUNDARY: s++, HEADER_FIELD_START: s++, HEADER_FIELD: s++, HEADER_VALUE_START: s++, HEADER_VALUE: s++, HEADER_VALUE_ALMOST_DONE: s++, HEADERS_ALMOST_DONE: s++, PART_DATA_START: s++, PART_DATA: s++, END: s++ }; f3 = 1; F = { PART_BOUNDARY: f3, LAST_BOUNDARY: f3 *= 2 }; LF = 10; CR = 13; SPACE = 32; HYPHEN = 45; COLON = 58; A = 97; Z = 122; lower = (c2) => c2 | 32; noop = () => { }; MultipartParser = class { constructor(boundary) { this.index = 0; this.flags = 0; this.onHeaderEnd = noop; this.onHeaderField = noop; this.onHeadersEnd = noop; this.onHeaderValue = noop; this.onPartBegin = noop; this.onPartData = noop; this.onPartEnd = noop; this.boundaryChars = {}; boundary = "\r\n--" + boundary; const ui8a = new Uint8Array(boundary.length); for (let i2 = 0; i2 < boundary.length; i2++) { ui8a[i2] = boundary.charCodeAt(i2); this.boundaryChars[ui8a[i2]] = true; } this.boundary = ui8a; this.lookbehind = new Uint8Array(this.boundary.length + 8); this.state = S.START_BOUNDARY; } write(data) { let i2 = 0; const length_ = data.length; let previousIndex = this.index; let { lookbehind, boundary, boundaryChars, index, state, flags } = this; const boundaryLength = this.boundary.length; const boundaryEnd = boundaryLength - 1; const bufferLength = data.length; let c2; let cl; const mark = (name) => { this[name + "Mark"] = i2; }; const clear = (name) => { delete this[name + "Mark"]; }; const callback = (callbackSymbol, start, end, ui8a) => { if (start === void 0 || start !== end) { this[callbackSymbol](ui8a && ui8a.subarray(start, end)); } }; const dataCallback = (name, clear2) => { const markSymbol = name + "Mark"; if (!(markSymbol in this)) { return; } if (clear2) { callback(name, this[markSymbol], i2, data); delete this[markSymbol]; } else { callback(name, this[markSymbol], data.length, data); this[markSymbol] = 0; } }; for (i2 = 0; i2 < length_; i2++) { c2 = data[i2]; switch (state) { case S.START_BOUNDARY: if (index === boundary.length - 2) { if (c2 === HYPHEN) { flags |= F.LAST_BOUNDARY; } else if (c2 !== CR) { return; } index++; break; } else if (index - 1 === boundary.length - 2) { if (flags & F.LAST_BOUNDARY && c2 === HYPHEN) { state = S.END; flags = 0; } else if (!(flags & F.LAST_BOUNDARY) && c2 === LF) { index = 0; callback("onPartBegin"); state = S.HEADER_FIELD_START; } else { return; } break; } if (c2 !== boundary[index + 2]) { index = -2; } if (c2 === boundary[index + 2]) { index++; } break; case S.HEADER_FIELD_START: state = S.HEADER_FIELD; mark("onHeaderField"); index = 0; case S.HEADER_FIELD: if (c2 === CR) { clear("onHeaderField"); state = S.HEADERS_ALMOST_DONE; break; } index++; if (c2 === HYPHEN) { break; } if (c2 === COLON) { if (index === 1) { return; } dataCallback("onHeaderField", true); state = S.HEADER_VALUE_START; break; } cl = lower(c2); if (cl < A || cl > Z) { return; } break; case S.HEADER_VALUE_START: if (c2 === SPACE) { break; } mark("onHeaderValue"); state = S.HEADER_VALUE; case S.HEADER_VALUE: if (c2 === CR) { dataCallback("onHeaderValue", true); callback("onHeaderEnd"); state = S.HEADER_VALUE_ALMOST_DONE; } break; case S.HEADER_VALUE_ALMOST_DONE: if (c2 !== LF) { return; } state = S.HEADER_FIELD_START; break; case S.HEADERS_ALMOST_DONE: if (c2 !== LF) { return; } callback("onHeadersEnd"); state = S.PART_DATA_START; break; case S.PART_DATA_START: state = S.PART_DATA; mark("onPartData"); case S.PART_DATA: previousIndex = index; if (index === 0) { i2 += boundaryEnd; while (i2 < bufferLength && !(data[i2] in boundaryChars)) { i2 += boundaryLength; } i2 -= boundaryEnd; c2 = data[i2]; } if (index < boundary.length) { if (boundary[index] === c2) { if (index === 0) { dataCallback("onPartData", true); } index++; } else { index = 0; } } else if (index === boundary.length) { index++; if (c2 === CR) { flags |= F.PART_BOUNDARY; } else if (c2 === HYPHEN) { flags |= F.LAST_BOUNDARY; } else { index = 0; } } else if (index - 1 === boundary.length) { if (flags & F.PART_BOUNDARY) { index = 0; if (c2 === LF) { flags &= ~F.PART_BOUNDARY; callback("onPartEnd"); callback("onPartBegin"); state = S.HEADER_FIELD_START; break; } } else if (flags & F.LAST_BOUNDARY) { if (c2 === HYPHEN) { callback("onPartEnd"); state = S.END; flags = 0; } else { index = 0; } } else { index = 0; } } if (index > 0) { lookbehind[index - 1] = c2; } else if (previousIndex > 0) { const _lookbehind = new Uint8Array(lookbehind.buffer, lookbehind.byteOffset, lookbehind.byteLength); callback("onPartData", 0, previousIndex, _lookbehind); previousIndex = 0; mark("onPartData"); i2--; } break; case S.END: break; default: throw new Error(`Unexpected state entered: ${state}`); } } dataCallback("onHeaderField"); dataCallback("onHeaderValue"); dataCallback("onPartData"); this.index = index; this.state = state; this.flags = flags; } end() { if (this.state === S.HEADER_FIELD_START && this.index === 0 || this.state === S.PART_DATA && this.index === this.boundary.length) { this.onPartEnd(); } else if (this.state !== S.END) { throw new Error("MultipartParser.end(): stream ended unexpectedly"); } } }; } }); // ../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/scope.js var require_scope = __commonJS({ "../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/scope.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var MAX_BREADCRUMBS = 100; var Scope = function() { function Scope2() { this._notifyingListeners = false; this._scopeListeners = []; this._eventProcessors = []; this._breadcrumbs = []; this._user = {}; this._tags = {}; this._extra = {}; this._contexts = {}; } Scope2.clone = function(scope) { var newScope = new Scope2(); if (scope) { newScope._breadcrumbs = tslib_1.__spread(scope._breadcrumbs); newScope._tags = tslib_1.__assign({}, scope._tags); newScope._extra = tslib_1.__assign({}, scope._extra); newScope._contexts = tslib_1.__assign({}, scope._contexts); newScope._user = scope._user; newScope._level = scope._level; newScope._span = scope._span; newScope._session = scope._session; newScope._transactionName = scope._transactionName; newScope._fingerprint = scope._fingerprint; newScope._eventProcessors = tslib_1.__spread(scope._eventProcessors); newScope._requestSession = scope._requestSession; } return newScope; }; Scope2.prototype.addScopeListener = function(callback) { this._scopeListeners.push(callback); }; Scope2.prototype.addEventProcessor = function(callback) { this._eventProcessors.push(callback); return this; }; Scope2.prototype.setUser = function(user) { this._user = user || {}; if (this._session) { this._session.update({ user }); } this._notifyScopeListeners(); return this; }; Scope2.prototype.getUser = function() { return this._user; }; Scope2.prototype.getRequestSession = function() { return this._requestSession; }; Scope2.prototype.setRequestSession = function(requestSession) { this._requestSession = requestSession; return this; }; Scope2.prototype.setTags = function(tags) { this._tags = tslib_1.__assign(tslib_1.__assign({}, this._tags), tags); this._notifyScopeListeners(); return this; }; Scope2.prototype.setTag = function(key, value) { var _a4; this._tags = tslib_1.__assign(tslib_1.__assign({}, this._tags), (_a4 = {}, _a4[key] = value, _a4)); this._notifyScopeListeners(); return this; }; Scope2.prototype.setExtras = function(extras) { this._extra = tslib_1.__assign(tslib_1.__assign({}, this._extra), extras); this._notifyScopeListeners(); return this; }; Scope2.prototype.setExtra = function(key, extra) { var _a4; this._extra = tslib_1.__assign(tslib_1.__assign({}, this._extra), (_a4 = {}, _a4[key] = extra, _a4)); this._notifyScopeListeners(); return this; }; Scope2.prototype.setFingerprint = function(fingerprint) { this._fingerprint = fingerprint; this._notifyScopeListeners(); return this; }; Scope2.prototype.setLevel = function(level) { this._level = level; this._notifyScopeListeners(); return this; }; Scope2.prototype.setTransactionName = function(name) { this._transactionName = name; this._notifyScopeListeners(); return this; }; Scope2.prototype.setTransaction = function(name) { return this.setTransactionName(name); }; Scope2.prototype.setContext = function(key, context) { var _a4; if (context === null) { delete this._contexts[key]; } else { this._contexts = tslib_1.__assign(tslib_1.__assign({}, this._contexts), (_a4 = {}, _a4[key] = context, _a4)); } this._notifyScopeListeners(); return this; }; Scope2.prototype.setSpan = function(span) { this._span = span; this._notifyScopeListeners(); return this; }; Scope2.prototype.getSpan = function() { return this._span; }; Scope2.prototype.getTransaction = function() { var _a4, _b, _c, _d2; var span = this.getSpan(); if ((_a4 = span) === null || _a4 === void 0 ? void 0 : _a4.transaction) { return (_b = span) === null || _b === void 0 ? void 0 : _b.transaction; } if ((_d2 = (_c = span) === null || _c === void 0 ? void 0 : _c.spanRecorder) === null || _d2 === void 0 ? void 0 : _d2.spans[0]) { return span.spanRecorder.spans[0]; } return void 0; }; Scope2.prototype.setSession = function(session) { if (!session) { delete this._session; } else { this._session = session; } this._notifyScopeListeners(); return this; }; Scope2.prototype.getSession = function() { return this._session; }; Scope2.prototype.update = function(captureContext) { if (!captureContext) { return this; } if (typeof captureContext === "function") { var updatedScope = captureContext(this); return updatedScope instanceof Scope2 ? updatedScope : this; } if (captureContext instanceof Scope2) { this._tags = tslib_1.__assign(tslib_1.__assign({}, this._tags), captureContext._tags); this._extra = tslib_1.__assign(tslib_1.__assign({}, this._extra), captureContext._extra); this._contexts = tslib_1.__assign(tslib_1.__assign({}, this._contexts), captureContext._contexts); if (captureContext._user && Object.keys(captureContext._user).length) { this._user = captureContext._user; } if (captureContext._level) { this._level = captureContext._level; } if (captureContext._fingerprint) { this._fingerprint = captureContext._fingerprint; } if (captureContext._requestSession) { this._requestSession = captureContext._requestSession; } } else if (utils_1.isPlainObject(captureContext)) { captureContext = captureContext; this._tags = tslib_1.__assign(tslib_1.__assign({}, this._tags), captureContext.tags); this._extra = tslib_1.__assign(tslib_1.__assign({}, this._extra), captureContext.extra); this._contexts = tslib_1.__assign(tslib_1.__assign({}, this._contexts), captureContext.contexts); if (captureContext.user) { this._user = captureContext.user; } if (captureContext.level) { this._level = captureContext.level; } if (captureContext.fingerprint) { this._fingerprint = captureContext.fingerprint; } if (captureContext.requestSession) { this._requestSession = captureContext.requestSession; } } return this; }; Scope2.prototype.clear = function() { this._breadcrumbs = []; this._tags = {}; this._extra = {}; this._user = {}; this._contexts = {}; this._level = void 0; this._transactionName = void 0; this._fingerprint = void 0; this._requestSession = void 0; this._span = void 0; this._session = void 0; this._notifyScopeListeners(); return this; }; Scope2.prototype.addBreadcrumb = function(breadcrumb, maxBreadcrumbs) { var maxCrumbs = typeof maxBreadcrumbs === "number" ? Math.min(maxBreadcrumbs, MAX_BREADCRUMBS) : MAX_BREADCRUMBS; if (maxCrumbs <= 0) { return this; } var mergedBreadcrumb = tslib_1.__assign({ timestamp: utils_1.dateTimestampInSeconds() }, breadcrumb); this._breadcrumbs = tslib_1.__spread(this._breadcrumbs, [mergedBreadcrumb]).slice(-maxCrumbs); this._notifyScopeListeners(); return this; }; Scope2.prototype.clearBreadcrumbs = function() { this._breadcrumbs = []; this._notifyScopeListeners(); return this; }; Scope2.prototype.applyToEvent = function(event, hint) { var _a4; if (this._extra && Object.keys(this._extra).length) { event.extra = tslib_1.__assign(tslib_1.__assign({}, this._extra), event.extra); } if (this._tags && Object.keys(this._tags).length) { event.tags = tslib_1.__assign(tslib_1.__assign({}, this._tags), event.tags); } if (this._user && Object.keys(this._user).length) { event.user = tslib_1.__assign(tslib_1.__assign({}, this._user), event.user); } if (this._contexts && Object.keys(this._contexts).length) { event.contexts = tslib_1.__assign(tslib_1.__assign({}, this._contexts), event.contexts); } if (this._level) { event.level = this._level; } if (this._transactionName) { event.transaction = this._transactionName; } if (this._span) { event.contexts = tslib_1.__assign({ trace: this._span.getTraceContext() }, event.contexts); var transactionName = (_a4 = this._span.transaction) === null || _a4 === void 0 ? void 0 : _a4.name; if (transactionName) { event.tags = tslib_1.__assign({ transaction: transactionName }, event.tags); } } this._applyFingerprint(event); event.breadcrumbs = tslib_1.__spread(event.breadcrumbs || [], this._breadcrumbs); event.breadcrumbs = event.breadcrumbs.length > 0 ? event.breadcrumbs : void 0; return this._notifyEventProcessors(tslib_1.__spread(getGlobalEventProcessors(), this._eventProcessors), event, hint); }; Scope2.prototype._notifyEventProcessors = function(processors, event, hint, index) { var _this = this; if (index === void 0) { index = 0; } return new utils_1.SyncPromise(function(resolve, reject) { var processor = processors[index]; if (event === null || typeof processor !== "function") { resolve(event); } else { var result = processor(tslib_1.__assign({}, event), hint); if (utils_1.isThenable(result)) { void result.then(function(final) { return _this._notifyEventProcessors(processors, final, hint, index + 1).then(resolve); }).then(null, reject); } else { void _this._notifyEventProcessors(processors, result, hint, index + 1).then(resolve).then(null, reject); } } }); }; Scope2.prototype._notifyScopeListeners = function() { var _this = this; if (!this._notifyingListeners) { this._notifyingListeners = true; this._scopeListeners.forEach(function(callback) { callback(_this); }); this._notifyingListeners = false; } }; Scope2.prototype._applyFingerprint = function(event) { event.fingerprint = event.fingerprint ? Array.isArray(event.fingerprint) ? event.fingerprint : [event.fingerprint] : []; if (this._fingerprint) { event.fingerprint = event.fingerprint.concat(this._fingerprint); } if (event.fingerprint && !event.fingerprint.length) { delete event.fingerprint; } }; return Scope2; }(); exports.Scope = Scope; function getGlobalEventProcessors() { var global2 = utils_1.getGlobalObject(); global2.__SENTRY__ = global2.__SENTRY__ || {}; global2.__SENTRY__.globalEventProcessors = global2.__SENTRY__.globalEventProcessors || []; return global2.__SENTRY__.globalEventProcessors; } function addGlobalEventProcessor(callback) { getGlobalEventProcessors().push(callback); } exports.addGlobalEventProcessor = addGlobalEventProcessor; } }); // ../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/session.js var require_session2 = __commonJS({ "../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/session.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var types_1 = require_dist2(); var utils_1 = require_dist(); var Session = function() { function Session2(context) { this.errors = 0; this.sid = utils_1.uuid4(); this.duration = 0; this.status = types_1.SessionStatus.Ok; this.init = true; this.ignoreDuration = false; var startingTime = utils_1.timestampInSeconds(); this.timestamp = startingTime; this.started = startingTime; if (context) { this.update(context); } } Session2.prototype.update = function(context) { if (context === void 0) { context = {}; } if (context.user) { if (!this.ipAddress && context.user.ip_address) { this.ipAddress = context.user.ip_address; } if (!this.did && !context.did) { this.did = context.user.id || context.user.email || context.user.username; } } this.timestamp = context.timestamp || utils_1.timestampInSeconds(); if (context.ignoreDuration) { this.ignoreDuration = context.ignoreDuration; } if (context.sid) { this.sid = context.sid.length === 32 ? context.sid : utils_1.uuid4(); } if (context.init !== void 0) { this.init = context.init; } if (!this.did && context.did) { this.did = "" + context.did; } if (typeof context.started === "number") { this.started = context.started; } if (this.ignoreDuration) { this.duration = void 0; } else if (typeof context.duration === "number") { this.duration = context.duration; } else { var duration = this.timestamp - this.started; this.duration = duration >= 0 ? duration : 0; } if (context.release) { this.release = context.release; } if (context.environment) { this.environment = context.environment; } if (!this.ipAddress && context.ipAddress) { this.ipAddress = context.ipAddress; } if (!this.userAgent && context.userAgent) { this.userAgent = context.userAgent; } if (typeof context.errors === "number") { this.errors = context.errors; } if (context.status) { this.status = context.status; } }; Session2.prototype.close = function(status) { if (status) { this.update({ status }); } else if (this.status === types_1.SessionStatus.Ok) { this.update({ status: types_1.SessionStatus.Exited }); } else { this.update(); } }; Session2.prototype.toJSON = function() { return utils_1.dropUndefinedKeys({ sid: "" + this.sid, init: this.init, started: new Date(this.started * 1e3).toISOString(), timestamp: new Date(this.timestamp * 1e3).toISOString(), status: this.status, errors: this.errors, did: typeof this.did === "number" || typeof this.did === "string" ? "" + this.did : void 0, duration: this.duration, attrs: utils_1.dropUndefinedKeys({ release: this.release, environment: this.environment, ip_address: this.ipAddress, user_agent: this.userAgent }) }); }; return Session2; }(); exports.Session = Session; } }); // ../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/hub.js var require_hub = __commonJS({ "../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/hub.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var types_1 = require_dist2(); var utils_1 = require_dist(); var scope_1 = require_scope(); var session_1 = require_session2(); exports.API_VERSION = 4; var DEFAULT_BREADCRUMBS = 100; var Hub = function() { function Hub2(client, scope, _version) { if (scope === void 0) { scope = new scope_1.Scope(); } if (_version === void 0) { _version = exports.API_VERSION; } this._version = _version; this._stack = [{}]; this.getStackTop().scope = scope; if (client) { this.bindClient(client); } } Hub2.prototype.isOlderThan = function(version2) { return this._version < version2; }; Hub2.prototype.bindClient = function(client) { var top = this.getStackTop(); top.client = client; if (client && client.setupIntegrations) { client.setupIntegrations(); } }; Hub2.prototype.pushScope = function() { var scope = scope_1.Scope.clone(this.getScope()); this.getStack().push({ client: this.getClient(), scope }); return scope; }; Hub2.prototype.popScope = function() { if (this.getStack().length <= 1) return false; return !!this.getStack().pop(); }; Hub2.prototype.withScope = function(callback) { var scope = this.pushScope(); try { callback(scope); } finally { this.popScope(); } }; Hub2.prototype.getClient = function() { return this.getStackTop().client; }; Hub2.prototype.getScope = function() { return this.getStackTop().scope; }; Hub2.prototype.getStack = function() { return this._stack; }; Hub2.prototype.getStackTop = function() { return this._stack[this._stack.length - 1]; }; Hub2.prototype.captureException = function(exception, hint) { var eventId = this._lastEventId = utils_1.uuid4(); var finalHint = hint; if (!hint) { var syntheticException = void 0; try { throw new Error("Sentry syntheticException"); } catch (exception2) { syntheticException = exception2; } finalHint = { originalException: exception, syntheticException }; } this._invokeClient("captureException", exception, tslib_1.__assign(tslib_1.__assign({}, finalHint), { event_id: eventId })); return eventId; }; Hub2.prototype.captureMessage = function(message, level, hint) { var eventId = this._lastEventId = utils_1.uuid4(); var finalHint = hint; if (!hint) { var syntheticException = void 0; try { throw new Error(message); } catch (exception) { syntheticException = exception; } finalHint = { originalException: message, syntheticException }; } this._invokeClient("captureMessage", message, level, tslib_1.__assign(tslib_1.__assign({}, finalHint), { event_id: eventId })); return eventId; }; Hub2.prototype.captureEvent = function(event, hint) { var eventId = utils_1.uuid4(); if (event.type !== "transaction") { this._lastEventId = eventId; } this._invokeClient("captureEvent", event, tslib_1.__assign(tslib_1.__assign({}, hint), { event_id: eventId })); return eventId; }; Hub2.prototype.lastEventId = function() { return this._lastEventId; }; Hub2.prototype.addBreadcrumb = function(breadcrumb, hint) { var _a4 = this.getStackTop(), scope = _a4.scope, client = _a4.client; if (!scope || !client) return; var _b = client.getOptions && client.getOptions() || {}, _c = _b.beforeBreadcrumb, beforeBreadcrumb = _c === void 0 ? null : _c, _d2 = _b.maxBreadcrumbs, maxBreadcrumbs = _d2 === void 0 ? DEFAULT_BREADCRUMBS : _d2; if (maxBreadcrumbs <= 0) return; var timestamp = utils_1.dateTimestampInSeconds(); var mergedBreadcrumb = tslib_1.__assign({ timestamp }, breadcrumb); var finalBreadcrumb = beforeBreadcrumb ? utils_1.consoleSandbox(function() { return beforeBreadcrumb(mergedBreadcrumb, hint); }) : mergedBreadcrumb; if (finalBreadcrumb === null) return; scope.addBreadcrumb(finalBreadcrumb, maxBreadcrumbs); }; Hub2.prototype.setUser = function(user) { var scope = this.getScope(); if (scope) scope.setUser(user); }; Hub2.prototype.setTags = function(tags) { var scope = this.getScope(); if (scope) scope.setTags(tags); }; Hub2.prototype.setExtras = function(extras) { var scope = this.getScope(); if (scope) scope.setExtras(extras); }; Hub2.prototype.setTag = function(key, value) { var scope = this.getScope(); if (scope) scope.setTag(key, value); }; Hub2.prototype.setExtra = function(key, extra) { var scope = this.getScope(); if (scope) scope.setExtra(key, extra); }; Hub2.prototype.setContext = function(name, context) { var scope = this.getScope(); if (scope) scope.setContext(name, context); }; Hub2.prototype.configureScope = function(callback) { var _a4 = this.getStackTop(), scope = _a4.scope, client = _a4.client; if (scope && client) { callback(scope); } }; Hub2.prototype.run = function(callback) { var oldHub = makeMain(this); try { callback(this); } finally { makeMain(oldHub); } }; Hub2.prototype.getIntegration = function(integration) { var client = this.getClient(); if (!client) return null; try { return client.getIntegration(integration); } catch (_oO) { utils_1.logger.warn("Cannot retrieve integration " + integration.id + " from the current Hub"); return null; } }; Hub2.prototype.startSpan = function(context) { return this._callExtensionMethod("startSpan", context); }; Hub2.prototype.startTransaction = function(context, customSamplingContext) { return this._callExtensionMethod("startTransaction", context, customSamplingContext); }; Hub2.prototype.traceHeaders = function() { return this._callExtensionMethod("traceHeaders"); }; Hub2.prototype.captureSession = function(endSession) { if (endSession === void 0) { endSession = false; } if (endSession) { return this.endSession(); } this._sendSessionUpdate(); }; Hub2.prototype.endSession = function() { var _a4, _b, _c, _d2, _e; (_c = (_b = (_a4 = this.getStackTop()) === null || _a4 === void 0 ? void 0 : _a4.scope) === null || _b === void 0 ? void 0 : _b.getSession()) === null || _c === void 0 ? void 0 : _c.close(); this._sendSessionUpdate(); (_e = (_d2 = this.getStackTop()) === null || _d2 === void 0 ? void 0 : _d2.scope) === null || _e === void 0 ? void 0 : _e.setSession(); }; Hub2.prototype.startSession = function(context) { var _a4 = this.getStackTop(), scope = _a4.scope, client = _a4.client; var _b = client && client.getOptions() || {}, release = _b.release, environment = _b.environment; var global2 = utils_1.getGlobalObject(); var userAgent = (global2.navigator || {}).userAgent; var session = new session_1.Session(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({ release, environment }, scope && { user: scope.getUser() }), userAgent && { userAgent }), context)); if (scope) { var currentSession = scope.getSession && scope.getSession(); if (currentSession && currentSession.status === types_1.SessionStatus.Ok) { currentSession.update({ status: types_1.SessionStatus.Exited }); } this.endSession(); scope.setSession(session); } return session; }; Hub2.prototype._sendSessionUpdate = function() { var _a4 = this.getStackTop(), scope = _a4.scope, client = _a4.client; if (!scope) return; var session = scope.getSession && scope.getSession(); if (session) { if (client && client.captureSession) { client.captureSession(session); } } }; Hub2.prototype._invokeClient = function(method) { var _a4; var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } var _b = this.getStackTop(), scope = _b.scope, client = _b.client; if (client && client[method]) { (_a4 = client)[method].apply(_a4, tslib_1.__spread(args, [scope])); } }; Hub2.prototype._callExtensionMethod = function(method) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } var carrier = getMainCarrier(); var sentry = carrier.__SENTRY__; if (sentry && sentry.extensions && typeof sentry.extensions[method] === "function") { return sentry.extensions[method].apply(this, args); } utils_1.logger.warn("Extension method " + method + " couldn't be found, doing nothing."); }; return Hub2; }(); exports.Hub = Hub; function getMainCarrier() { var carrier = utils_1.getGlobalObject(); carrier.__SENTRY__ = carrier.__SENTRY__ || { extensions: {}, hub: void 0 }; return carrier; } exports.getMainCarrier = getMainCarrier; function makeMain(hub) { var registry = getMainCarrier(); var oldHub = getHubFromCarrier(registry); setHubOnCarrier(registry, hub); return oldHub; } exports.makeMain = makeMain; function getCurrentHub() { var registry = getMainCarrier(); if (!hasHubOnCarrier(registry) || getHubFromCarrier(registry).isOlderThan(exports.API_VERSION)) { setHubOnCarrier(registry, new Hub()); } if (utils_1.isNodeEnv()) { return getHubFromActiveDomain(registry); } return getHubFromCarrier(registry); } exports.getCurrentHub = getCurrentHub; function getActiveDomain() { utils_1.logger.warn("Function `getActiveDomain` is deprecated and will be removed in a future version."); var sentry = getMainCarrier().__SENTRY__; return sentry && sentry.extensions && sentry.extensions.domain && sentry.extensions.domain.active; } exports.getActiveDomain = getActiveDomain; function getHubFromActiveDomain(registry) { var _a4, _b, _c; try { var activeDomain = (_c = (_b = (_a4 = getMainCarrier().__SENTRY__) === null || _a4 === void 0 ? void 0 : _a4.extensions) === null || _b === void 0 ? void 0 : _b.domain) === null || _c === void 0 ? void 0 : _c.active; if (!activeDomain) { return getHubFromCarrier(registry); } if (!hasHubOnCarrier(activeDomain) || getHubFromCarrier(activeDomain).isOlderThan(exports.API_VERSION)) { var registryHubTopStack = getHubFromCarrier(registry).getStackTop(); setHubOnCarrier(activeDomain, new Hub(registryHubTopStack.client, scope_1.Scope.clone(registryHubTopStack.scope))); } return getHubFromCarrier(activeDomain); } catch (_Oo) { return getHubFromCarrier(registry); } } function hasHubOnCarrier(carrier) { return !!(carrier && carrier.__SENTRY__ && carrier.__SENTRY__.hub); } function getHubFromCarrier(carrier) { if (carrier && carrier.__SENTRY__ && carrier.__SENTRY__.hub) return carrier.__SENTRY__.hub; carrier.__SENTRY__ = carrier.__SENTRY__ || {}; carrier.__SENTRY__.hub = new Hub(); return carrier.__SENTRY__.hub; } exports.getHubFromCarrier = getHubFromCarrier; function setHubOnCarrier(carrier, hub) { if (!carrier) return false; carrier.__SENTRY__ = carrier.__SENTRY__ || {}; carrier.__SENTRY__.hub = hub; return true; } exports.setHubOnCarrier = setHubOnCarrier; } }); // ../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/sessionflusher.js var require_sessionflusher = __commonJS({ "../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/sessionflusher.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var types_1 = require_dist2(); var utils_1 = require_dist(); var hub_1 = require_hub(); var SessionFlusher = function() { function SessionFlusher2(transport, attrs) { var _this = this; this.flushTimeout = 60; this._pendingAggregates = {}; this._isEnabled = true; this._transport = transport; this._intervalId = setInterval(function() { return _this.flush(); }, this.flushTimeout * 1e3); this._sessionAttrs = attrs; } SessionFlusher2.prototype.sendSessionAggregates = function(sessionAggregates) { if (!this._transport.sendSession) { utils_1.logger.warn("Dropping session because custom transport doesn't implement sendSession"); return; } void this._transport.sendSession(sessionAggregates).then(null, function(reason) { utils_1.logger.error("Error while sending session: " + reason); }); }; SessionFlusher2.prototype.flush = function() { var sessionAggregates = this.getSessionAggregates(); if (sessionAggregates.aggregates.length === 0) { return; } this._pendingAggregates = {}; this.sendSessionAggregates(sessionAggregates); }; SessionFlusher2.prototype.getSessionAggregates = function() { var _this = this; var aggregates = Object.keys(this._pendingAggregates).map(function(key) { return _this._pendingAggregates[parseInt(key)]; }); var sessionAggregates = { attrs: this._sessionAttrs, aggregates }; return utils_1.dropUndefinedKeys(sessionAggregates); }; SessionFlusher2.prototype.close = function() { clearInterval(this._intervalId); this._isEnabled = false; this.flush(); }; SessionFlusher2.prototype.incrementSessionStatusCount = function() { var _a4, _b; if (!this._isEnabled) { return; } var scope = hub_1.getCurrentHub().getScope(); var requestSession = (_a4 = scope) === null || _a4 === void 0 ? void 0 : _a4.getRequestSession(); if (requestSession && requestSession.status) { this._incrementSessionStatusCount(requestSession.status, new Date()); (_b = scope) === null || _b === void 0 ? void 0 : _b.setRequestSession(void 0); } }; SessionFlusher2.prototype._incrementSessionStatusCount = function(status, date) { var sessionStartedTrunc = new Date(date).setSeconds(0, 0); this._pendingAggregates[sessionStartedTrunc] = this._pendingAggregates[sessionStartedTrunc] || {}; var aggregationCounts = this._pendingAggregates[sessionStartedTrunc]; if (!aggregationCounts.started) { aggregationCounts.started = new Date(sessionStartedTrunc).toISOString(); } switch (status) { case types_1.RequestSessionStatus.Errored: aggregationCounts.errored = (aggregationCounts.errored || 0) + 1; return aggregationCounts.errored; case types_1.RequestSessionStatus.Ok: aggregationCounts.exited = (aggregationCounts.exited || 0) + 1; return aggregationCounts.exited; case types_1.RequestSessionStatus.Crashed: aggregationCounts.crashed = (aggregationCounts.crashed || 0) + 1; return aggregationCounts.crashed; } }; return SessionFlusher2; }(); exports.SessionFlusher = SessionFlusher; } }); // ../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/index.js var require_dist5 = __commonJS({ "../../node_modules/.pnpm/@sentry+hub@6.15.0/node_modules/@sentry/hub/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var scope_1 = require_scope(); exports.addGlobalEventProcessor = scope_1.addGlobalEventProcessor; exports.Scope = scope_1.Scope; var session_1 = require_session2(); exports.Session = session_1.Session; var sessionflusher_1 = require_sessionflusher(); exports.SessionFlusher = sessionflusher_1.SessionFlusher; var hub_1 = require_hub(); exports.getActiveDomain = hub_1.getActiveDomain; exports.getCurrentHub = hub_1.getCurrentHub; exports.getHubFromCarrier = hub_1.getHubFromCarrier; exports.getMainCarrier = hub_1.getMainCarrier; exports.Hub = hub_1.Hub; exports.makeMain = hub_1.makeMain; exports.setHubOnCarrier = hub_1.setHubOnCarrier; } }); // ../../node_modules/.pnpm/@sentry+minimal@6.15.0/node_modules/@sentry/minimal/dist/index.js var require_dist6 = __commonJS({ "../../node_modules/.pnpm/@sentry+minimal@6.15.0/node_modules/@sentry/minimal/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var hub_1 = require_dist5(); function callOnHub(method) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } var hub = hub_1.getCurrentHub(); if (hub && hub[method]) { return hub[method].apply(hub, tslib_1.__spread(args)); } throw new Error("No hub defined or " + method + " was not found on the hub, please open a bug report."); } function captureException(exception, captureContext) { var syntheticException; try { throw new Error("Sentry syntheticException"); } catch (exception2) { syntheticException = exception2; } return callOnHub("captureException", exception, { captureContext, originalException: exception, syntheticException }); } exports.captureException = captureException; function captureMessage(message, captureContext) { var syntheticException; try { throw new Error(message); } catch (exception) { syntheticException = exception; } var level = typeof captureContext === "string" ? captureContext : void 0; var context = typeof captureContext !== "string" ? { captureContext } : void 0; return callOnHub("captureMessage", message, level, tslib_1.__assign({ originalException: message, syntheticException }, context)); } exports.captureMessage = captureMessage; function captureEvent(event) { return callOnHub("captureEvent", event); } exports.captureEvent = captureEvent; function configureScope(callback) { callOnHub("configureScope", callback); } exports.configureScope = configureScope; function addBreadcrumb(breadcrumb) { callOnHub("addBreadcrumb", breadcrumb); } exports.addBreadcrumb = addBreadcrumb; function setContext(name, context) { callOnHub("setContext", name, context); } exports.setContext = setContext; function setExtras(extras) { callOnHub("setExtras", extras); } exports.setExtras = setExtras; function setTags(tags) { callOnHub("setTags", tags); } exports.setTags = setTags; function setExtra(key, extra) { callOnHub("setExtra", key, extra); } exports.setExtra = setExtra; function setTag(key, value) { callOnHub("setTag", key, value); } exports.setTag = setTag; function setUser(user) { callOnHub("setUser", user); } exports.setUser = setUser; function withScope(callback) { callOnHub("withScope", callback); } exports.withScope = withScope; function _callOnClient(method) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } callOnHub.apply(void 0, tslib_1.__spread(["_invokeClient", method], args)); } exports._callOnClient = _callOnClient; function startTransaction(context, customSamplingContext) { return callOnHub("startTransaction", tslib_1.__assign({}, context), customSamplingContext); } exports.startTransaction = startTransaction; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/api.js var require_api = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/api.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var SENTRY_API_VERSION = "7"; var API = function() { function API2(dsn, metadata, tunnel) { if (metadata === void 0) { metadata = {}; } this.dsn = dsn; this._dsnObject = new utils_1.Dsn(dsn); this.metadata = metadata; this._tunnel = tunnel; } API2.prototype.getDsn = function() { return this._dsnObject; }; API2.prototype.forceEnvelope = function() { return !!this._tunnel; }; API2.prototype.getBaseApiEndpoint = function() { var dsn = this.getDsn(); var protocol = dsn.protocol ? dsn.protocol + ":" : ""; var port = dsn.port ? ":" + dsn.port : ""; return protocol + "//" + dsn.host + port + (dsn.path ? "/" + dsn.path : "") + "/api/"; }; API2.prototype.getStoreEndpoint = function() { return this._getIngestEndpoint("store"); }; API2.prototype.getStoreEndpointWithUrlEncodedAuth = function() { return this.getStoreEndpoint() + "?" + this._encodedAuth(); }; API2.prototype.getEnvelopeEndpointWithUrlEncodedAuth = function() { if (this.forceEnvelope()) { return this._tunnel; } return this._getEnvelopeEndpoint() + "?" + this._encodedAuth(); }; API2.prototype.getStoreEndpointPath = function() { var dsn = this.getDsn(); return (dsn.path ? "/" + dsn.path : "") + "/api/" + dsn.projectId + "/store/"; }; API2.prototype.getRequestHeaders = function(clientName, clientVersion) { var dsn = this.getDsn(); var header = ["Sentry sentry_version=" + SENTRY_API_VERSION]; header.push("sentry_client=" + clientName + "/" + clientVersion); header.push("sentry_key=" + dsn.publicKey); if (dsn.pass) { header.push("sentry_secret=" + dsn.pass); } return { "Content-Type": "application/json", "X-Sentry-Auth": header.join(", ") }; }; API2.prototype.getReportDialogEndpoint = function(dialogOptions) { if (dialogOptions === void 0) { dialogOptions = {}; } var dsn = this.getDsn(); var endpoint = this.getBaseApiEndpoint() + "embed/error-page/"; var encodedOptions = []; encodedOptions.push("dsn=" + dsn.toString()); for (var key in dialogOptions) { if (key === "dsn") { continue; } if (key === "user") { if (!dialogOptions.user) { continue; } if (dialogOptions.user.name) { encodedOptions.push("name=" + encodeURIComponent(dialogOptions.user.name)); } if (dialogOptions.user.email) { encodedOptions.push("email=" + encodeURIComponent(dialogOptions.user.email)); } } else { encodedOptions.push(encodeURIComponent(key) + "=" + encodeURIComponent(dialogOptions[key])); } } if (encodedOptions.length) { return endpoint + "?" + encodedOptions.join("&"); } return endpoint; }; API2.prototype._getEnvelopeEndpoint = function() { return this._getIngestEndpoint("envelope"); }; API2.prototype._getIngestEndpoint = function(target) { if (this._tunnel) { return this._tunnel; } var base = this.getBaseApiEndpoint(); var dsn = this.getDsn(); return "" + base + dsn.projectId + "/" + target + "/"; }; API2.prototype._encodedAuth = function() { var dsn = this.getDsn(); var auth = { sentry_key: dsn.publicKey, sentry_version: SENTRY_API_VERSION }; return utils_1.urlEncode(auth); }; return API2; }(); exports.API = API; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integration.js var require_integration = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integration.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var hub_1 = require_dist5(); var utils_1 = require_dist(); exports.installedIntegrations = []; function filterDuplicates(integrations) { return integrations.reduce(function(acc, integrations2) { if (acc.every(function(accIntegration) { return integrations2.name !== accIntegration.name; })) { acc.push(integrations2); } return acc; }, []); } function getIntegrationsToSetup(options) { var defaultIntegrations = options.defaultIntegrations && tslib_1.__spread(options.defaultIntegrations) || []; var userIntegrations = options.integrations; var integrations = tslib_1.__spread(filterDuplicates(defaultIntegrations)); if (Array.isArray(userIntegrations)) { integrations = tslib_1.__spread(integrations.filter(function(integrations2) { return userIntegrations.every(function(userIntegration) { return userIntegration.name !== integrations2.name; }); }), filterDuplicates(userIntegrations)); } else if (typeof userIntegrations === "function") { integrations = userIntegrations(integrations); integrations = Array.isArray(integrations) ? integrations : [integrations]; } var integrationsNames = integrations.map(function(i2) { return i2.name; }); var alwaysLastToRun = "Debug"; if (integrationsNames.indexOf(alwaysLastToRun) !== -1) { integrations.push.apply(integrations, tslib_1.__spread(integrations.splice(integrationsNames.indexOf(alwaysLastToRun), 1))); } return integrations; } exports.getIntegrationsToSetup = getIntegrationsToSetup; function setupIntegration(integration) { if (exports.installedIntegrations.indexOf(integration.name) !== -1) { return; } integration.setupOnce(hub_1.addGlobalEventProcessor, hub_1.getCurrentHub); exports.installedIntegrations.push(integration.name); utils_1.logger.log("Integration installed: " + integration.name); } exports.setupIntegration = setupIntegration; function setupIntegrations(options) { var integrations = {}; getIntegrationsToSetup(options).forEach(function(integration) { integrations[integration.name] = integration; setupIntegration(integration); }); Object.defineProperty(integrations, "initialized", { value: true }); return integrations; } exports.setupIntegrations = setupIntegrations; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/baseclient.js var require_baseclient = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/baseclient.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var hub_1 = require_dist5(); var types_1 = require_dist2(); var utils_1 = require_dist(); var integration_1 = require_integration(); var ALREADY_SEEN_ERROR = "Not capturing exception because it's already been captured."; var BaseClient = function() { function BaseClient2(backendClass, options) { this._integrations = {}; this._numProcessing = 0; this._backend = new backendClass(options); this._options = options; if (options.dsn) { this._dsn = new utils_1.Dsn(options.dsn); } } BaseClient2.prototype.captureException = function(exception, hint, scope) { var _this = this; if (utils_1.checkOrSetAlreadyCaught(exception)) { utils_1.logger.log(ALREADY_SEEN_ERROR); return; } var eventId = hint && hint.event_id; this._process(this._getBackend().eventFromException(exception, hint).then(function(event) { return _this._captureEvent(event, hint, scope); }).then(function(result) { eventId = result; })); return eventId; }; BaseClient2.prototype.captureMessage = function(message, level, hint, scope) { var _this = this; var eventId = hint && hint.event_id; var promisedEvent = utils_1.isPrimitive(message) ? this._getBackend().eventFromMessage(String(message), level, hint) : this._getBackend().eventFromException(message, hint); this._process(promisedEvent.then(function(event) { return _this._captureEvent(event, hint, scope); }).then(function(result) { eventId = result; })); return eventId; }; BaseClient2.prototype.captureEvent = function(event, hint, scope) { var _a4; if (((_a4 = hint) === null || _a4 === void 0 ? void 0 : _a4.originalException) && utils_1.checkOrSetAlreadyCaught(hint.originalException)) { utils_1.logger.log(ALREADY_SEEN_ERROR); return; } var eventId = hint && hint.event_id; this._process(this._captureEvent(event, hint, scope).then(function(result) { eventId = result; })); return eventId; }; BaseClient2.prototype.captureSession = function(session) { if (!this._isEnabled()) { utils_1.logger.warn("SDK not enabled, will not capture session."); return; } if (!(typeof session.release === "string")) { utils_1.logger.warn("Discarded session because of missing or non-string release"); } else { this._sendSession(session); session.update({ init: false }); } }; BaseClient2.prototype.getDsn = function() { return this._dsn; }; BaseClient2.prototype.getOptions = function() { return this._options; }; BaseClient2.prototype.getTransport = function() { return this._getBackend().getTransport(); }; BaseClient2.prototype.flush = function(timeout) { var _this = this; return this._isClientDoneProcessing(timeout).then(function(clientFinished) { return _this.getTransport().close(timeout).then(function(transportFlushed) { return clientFinished && transportFlushed; }); }); }; BaseClient2.prototype.close = function(timeout) { var _this = this; return this.flush(timeout).then(function(result) { _this.getOptions().enabled = false; return result; }); }; BaseClient2.prototype.setupIntegrations = function() { if (this._isEnabled() && !this._integrations.initialized) { this._integrations = integration_1.setupIntegrations(this._options); } }; BaseClient2.prototype.getIntegration = function(integration) { try { return this._integrations[integration.id] || null; } catch (_oO) { utils_1.logger.warn("Cannot retrieve integration " + integration.id + " from the current Client"); return null; } }; BaseClient2.prototype._updateSessionFromEvent = function(session, event) { var e_1, _a4; var crashed = false; var errored = false; var exceptions = event.exception && event.exception.values; if (exceptions) { errored = true; try { for (var exceptions_1 = tslib_1.__values(exceptions), exceptions_1_1 = exceptions_1.next(); !exceptions_1_1.done; exceptions_1_1 = exceptions_1.next()) { var ex = exceptions_1_1.value; var mechanism = ex.mechanism; if (mechanism && mechanism.handled === false) { crashed = true; break; } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (exceptions_1_1 && !exceptions_1_1.done && (_a4 = exceptions_1.return)) _a4.call(exceptions_1); } finally { if (e_1) throw e_1.error; } } } var sessionNonTerminal = session.status === types_1.SessionStatus.Ok; var shouldUpdateAndSend = sessionNonTerminal && session.errors === 0 || sessionNonTerminal && crashed; if (shouldUpdateAndSend) { session.update(tslib_1.__assign(tslib_1.__assign({}, crashed && { status: types_1.SessionStatus.Crashed }), { errors: session.errors || Number(errored || crashed) })); this.captureSession(session); } }; BaseClient2.prototype._sendSession = function(session) { this._getBackend().sendSession(session); }; BaseClient2.prototype._isClientDoneProcessing = function(timeout) { var _this = this; return new utils_1.SyncPromise(function(resolve) { var ticked = 0; var tick = 1; var interval = setInterval(function() { if (_this._numProcessing == 0) { clearInterval(interval); resolve(true); } else { ticked += tick; if (timeout && ticked >= timeout) { clearInterval(interval); resolve(false); } } }, tick); }); }; BaseClient2.prototype._getBackend = function() { return this._backend; }; BaseClient2.prototype._isEnabled = function() { return this.getOptions().enabled !== false && this._dsn !== void 0; }; BaseClient2.prototype._prepareEvent = function(event, scope, hint) { var _this = this; var _a4 = this.getOptions().normalizeDepth, normalizeDepth = _a4 === void 0 ? 3 : _a4; var prepared = tslib_1.__assign(tslib_1.__assign({}, event), { event_id: event.event_id || (hint && hint.event_id ? hint.event_id : utils_1.uuid4()), timestamp: event.timestamp || utils_1.dateTimestampInSeconds() }); this._applyClientOptions(prepared); this._applyIntegrationsMetadata(prepared); var finalScope = scope; if (hint && hint.captureContext) { finalScope = hub_1.Scope.clone(finalScope).update(hint.captureContext); } var result = utils_1.SyncPromise.resolve(prepared); if (finalScope) { result = finalScope.applyToEvent(prepared, hint); } return result.then(function(evt) { if (typeof normalizeDepth === "number" && normalizeDepth > 0) { return _this._normalizeEvent(evt, normalizeDepth); } return evt; }); }; BaseClient2.prototype._normalizeEvent = function(event, depth) { if (!event) { return null; } var normalized = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, event), event.breadcrumbs && { breadcrumbs: event.breadcrumbs.map(function(b) { return tslib_1.__assign(tslib_1.__assign({}, b), b.data && { data: utils_1.normalize(b.data, depth) }); }) }), event.user && { user: utils_1.normalize(event.user, depth) }), event.contexts && { contexts: utils_1.normalize(event.contexts, depth) }), event.extra && { extra: utils_1.normalize(event.extra, depth) }); if (event.contexts && event.contexts.trace) { normalized.contexts.trace = event.contexts.trace; } var _a4 = this.getOptions()._experiments, _experiments = _a4 === void 0 ? {} : _a4; if (_experiments.ensureNoCircularStructures) { return utils_1.normalize(normalized); } return normalized; }; BaseClient2.prototype._applyClientOptions = function(event) { var options = this.getOptions(); var environment = options.environment, release = options.release, dist = options.dist, _a4 = options.maxValueLength, maxValueLength = _a4 === void 0 ? 250 : _a4; if (!("environment" in event)) { event.environment = "environment" in options ? environment : "production"; } if (event.release === void 0 && release !== void 0) { event.release = release; } if (event.dist === void 0 && dist !== void 0) { event.dist = dist; } if (event.message) { event.message = utils_1.truncate(event.message, maxValueLength); } var exception = event.exception && event.exception.values && event.exception.values[0]; if (exception && exception.value) { exception.value = utils_1.truncate(exception.value, maxValueLength); } var request = event.request; if (request && request.url) { request.url = utils_1.truncate(request.url, maxValueLength); } }; BaseClient2.prototype._applyIntegrationsMetadata = function(event) { var integrationsArray = Object.keys(this._integrations); if (integrationsArray.length > 0) { event.sdk = event.sdk || {}; event.sdk.integrations = tslib_1.__spread(event.sdk.integrations || [], integrationsArray); } }; BaseClient2.prototype._sendEvent = function(event) { this._getBackend().sendEvent(event); }; BaseClient2.prototype._captureEvent = function(event, hint, scope) { return this._processEvent(event, hint, scope).then(function(finalEvent) { return finalEvent.event_id; }, function(reason) { utils_1.logger.error(reason); return void 0; }); }; BaseClient2.prototype._processEvent = function(event, hint, scope) { var _this = this; var _a4, _b; var _c = this.getOptions(), beforeSend = _c.beforeSend, sampleRate = _c.sampleRate; var transport = this.getTransport(); if (!this._isEnabled()) { return utils_1.SyncPromise.reject(new utils_1.SentryError("SDK not enabled, will not capture event.")); } var isTransaction = event.type === "transaction"; if (!isTransaction && typeof sampleRate === "number" && Math.random() > sampleRate) { (_b = (_a4 = transport).recordLostEvent) === null || _b === void 0 ? void 0 : _b.call(_a4, types_1.Outcome.SampleRate, "event"); return utils_1.SyncPromise.reject(new utils_1.SentryError("Discarding event because it's not included in the random sample (sampling rate = " + sampleRate + ")")); } return this._prepareEvent(event, scope, hint).then(function(prepared) { var _a5, _b2; if (prepared === null) { (_b2 = (_a5 = transport).recordLostEvent) === null || _b2 === void 0 ? void 0 : _b2.call(_a5, types_1.Outcome.EventProcessor, event.type || "event"); throw new utils_1.SentryError("An event processor returned null, will not send event."); } var isInternalException = hint && hint.data && hint.data.__sentry__ === true; if (isInternalException || isTransaction || !beforeSend) { return prepared; } var beforeSendResult = beforeSend(prepared, hint); return _this._ensureBeforeSendRv(beforeSendResult); }).then(function(processedEvent) { var _a5, _b2; if (processedEvent === null) { (_b2 = (_a5 = transport).recordLostEvent) === null || _b2 === void 0 ? void 0 : _b2.call(_a5, types_1.Outcome.BeforeSend, event.type || "event"); throw new utils_1.SentryError("`beforeSend` returned `null`, will not send event."); } var session = scope && scope.getSession && scope.getSession(); if (!isTransaction && session) { _this._updateSessionFromEvent(session, processedEvent); } _this._sendEvent(processedEvent); return processedEvent; }).then(null, function(reason) { if (reason instanceof utils_1.SentryError) { throw reason; } _this.captureException(reason, { data: { __sentry__: true }, originalException: reason }); throw new utils_1.SentryError("Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.\nReason: " + reason); }); }; BaseClient2.prototype._process = function(promise) { var _this = this; this._numProcessing += 1; void promise.then(function(value) { _this._numProcessing -= 1; return value; }, function(reason) { _this._numProcessing -= 1; return reason; }); }; BaseClient2.prototype._ensureBeforeSendRv = function(rv) { var nullErr = "`beforeSend` method has to return `null` or a valid event."; if (utils_1.isThenable(rv)) { return rv.then(function(event) { if (!(utils_1.isPlainObject(event) || event === null)) { throw new utils_1.SentryError(nullErr); } return event; }, function(e2) { throw new utils_1.SentryError("beforeSend rejected with " + e2); }); } else if (!(utils_1.isPlainObject(rv) || rv === null)) { throw new utils_1.SentryError(nullErr); } return rv; }; return BaseClient2; }(); exports.BaseClient = BaseClient; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/transports/noop.js var require_noop = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/transports/noop.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var types_1 = require_dist2(); var utils_1 = require_dist(); var NoopTransport = function() { function NoopTransport2() { } NoopTransport2.prototype.sendEvent = function(_) { return utils_1.SyncPromise.resolve({ reason: "NoopTransport: Event has been skipped because no Dsn is configured.", status: types_1.Status.Skipped }); }; NoopTransport2.prototype.close = function(_) { return utils_1.SyncPromise.resolve(true); }; return NoopTransport2; }(); exports.NoopTransport = NoopTransport; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/basebackend.js var require_basebackend = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/basebackend.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var noop_1 = require_noop(); var BaseBackend = function() { function BaseBackend2(options) { this._options = options; if (!this._options.dsn) { utils_1.logger.warn("No DSN provided, backend will not do anything."); } this._transport = this._setupTransport(); } BaseBackend2.prototype.eventFromException = function(_exception, _hint) { throw new utils_1.SentryError("Backend has to implement `eventFromException` method"); }; BaseBackend2.prototype.eventFromMessage = function(_message, _level, _hint) { throw new utils_1.SentryError("Backend has to implement `eventFromMessage` method"); }; BaseBackend2.prototype.sendEvent = function(event) { void this._transport.sendEvent(event).then(null, function(reason) { utils_1.logger.error("Error while sending event: " + reason); }); }; BaseBackend2.prototype.sendSession = function(session) { if (!this._transport.sendSession) { utils_1.logger.warn("Dropping session because custom transport doesn't implement sendSession"); return; } void this._transport.sendSession(session).then(null, function(reason) { utils_1.logger.error("Error while sending session: " + reason); }); }; BaseBackend2.prototype.getTransport = function() { return this._transport; }; BaseBackend2.prototype._setupTransport = function() { return new noop_1.NoopTransport(); }; return BaseBackend2; }(); exports.BaseBackend = BaseBackend; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/request.js var require_request = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/request.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); function getSdkMetadataForEnvelopeHeader(api) { if (!api.metadata || !api.metadata.sdk) { return; } var _a4 = api.metadata.sdk, name = _a4.name, version2 = _a4.version; return { name, version: version2 }; } function enhanceEventWithSdkInfo(event, sdkInfo) { if (!sdkInfo) { return event; } event.sdk = event.sdk || {}; event.sdk.name = event.sdk.name || sdkInfo.name; event.sdk.version = event.sdk.version || sdkInfo.version; event.sdk.integrations = tslib_1.__spread(event.sdk.integrations || [], sdkInfo.integrations || []); event.sdk.packages = tslib_1.__spread(event.sdk.packages || [], sdkInfo.packages || []); return event; } function sessionToSentryRequest(session, api) { var sdkInfo = getSdkMetadataForEnvelopeHeader(api); var envelopeHeaders = JSON.stringify(tslib_1.__assign(tslib_1.__assign({ sent_at: new Date().toISOString() }, sdkInfo && { sdk: sdkInfo }), api.forceEnvelope() && { dsn: api.getDsn().toString() })); var type = "aggregates" in session ? "sessions" : "session"; var itemHeaders = JSON.stringify({ type }); return { body: envelopeHeaders + "\n" + itemHeaders + "\n" + JSON.stringify(session), type, url: api.getEnvelopeEndpointWithUrlEncodedAuth() }; } exports.sessionToSentryRequest = sessionToSentryRequest; function eventToSentryRequest(event, api) { var sdkInfo = getSdkMetadataForEnvelopeHeader(api); var eventType = event.type || "event"; var useEnvelope = eventType === "transaction" || api.forceEnvelope(); var _a4 = event.debug_meta || {}, transactionSampling = _a4.transactionSampling, metadata = tslib_1.__rest(_a4, ["transactionSampling"]); var _b = transactionSampling || {}, samplingMethod = _b.method, sampleRate = _b.rate; if (Object.keys(metadata).length === 0) { delete event.debug_meta; } else { event.debug_meta = metadata; } var req = { body: JSON.stringify(sdkInfo ? enhanceEventWithSdkInfo(event, api.metadata.sdk) : event), type: eventType, url: useEnvelope ? api.getEnvelopeEndpointWithUrlEncodedAuth() : api.getStoreEndpointWithUrlEncodedAuth() }; if (useEnvelope) { var envelopeHeaders = JSON.stringify(tslib_1.__assign(tslib_1.__assign({ event_id: event.event_id, sent_at: new Date().toISOString() }, sdkInfo && { sdk: sdkInfo }), api.forceEnvelope() && { dsn: api.getDsn().toString() })); var itemHeaders = JSON.stringify({ type: eventType, sample_rates: [{ id: samplingMethod, rate: sampleRate }] }); var envelope = envelopeHeaders + "\n" + itemHeaders + "\n" + req.body; req.body = envelope; } return req; } exports.eventToSentryRequest = eventToSentryRequest; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/sdk.js var require_sdk = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/sdk.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var hub_1 = require_dist5(); var utils_1 = require_dist(); function initAndBind(clientClass, options) { var _a4; if (options.debug === true) { utils_1.logger.enable(); } var hub = hub_1.getCurrentHub(); (_a4 = hub.getScope()) === null || _a4 === void 0 ? void 0 : _a4.update(options.initialScope); var client = new clientClass(options); hub.bindClient(client); } exports.initAndBind = initAndBind; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/version.js var require_version2 = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/version.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.SDK_VERSION = "6.15.0"; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integrations/functiontostring.js var require_functiontostring = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integrations/functiontostring.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var originalFunctionToString; var FunctionToString = function() { function FunctionToString2() { this.name = FunctionToString2.id; } FunctionToString2.prototype.setupOnce = function() { originalFunctionToString = Function.prototype.toString; Function.prototype.toString = function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var context = this.__sentry_original__ || this; return originalFunctionToString.apply(context, args); }; }; FunctionToString2.id = "FunctionToString"; return FunctionToString2; }(); exports.FunctionToString = FunctionToString; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integrations/inboundfilters.js var require_inboundfilters = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integrations/inboundfilters.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var hub_1 = require_dist5(); var utils_1 = require_dist(); var DEFAULT_IGNORE_ERRORS = [/^Script error\.?$/, /^Javascript error: Script error\.? on line 0$/]; var InboundFilters = function() { function InboundFilters2(_options) { if (_options === void 0) { _options = {}; } this._options = _options; this.name = InboundFilters2.id; } InboundFilters2.prototype.setupOnce = function() { hub_1.addGlobalEventProcessor(function(event) { var hub = hub_1.getCurrentHub(); if (!hub) { return event; } var self2 = hub.getIntegration(InboundFilters2); if (self2) { var client = hub.getClient(); var clientOptions = client ? client.getOptions() : {}; var options = typeof self2._mergeOptions === "function" ? self2._mergeOptions(clientOptions) : {}; if (typeof self2._shouldDropEvent !== "function") { return event; } return self2._shouldDropEvent(event, options) ? null : event; } return event; }); }; InboundFilters2.prototype._shouldDropEvent = function(event, options) { if (this._isSentryError(event, options)) { utils_1.logger.warn("Event dropped due to being internal Sentry Error.\nEvent: " + utils_1.getEventDescription(event)); return true; } if (this._isIgnoredError(event, options)) { utils_1.logger.warn("Event dropped due to being matched by `ignoreErrors` option.\nEvent: " + utils_1.getEventDescription(event)); return true; } if (this._isDeniedUrl(event, options)) { utils_1.logger.warn("Event dropped due to being matched by `denyUrls` option.\nEvent: " + utils_1.getEventDescription(event) + ".\nUrl: " + this._getEventFilterUrl(event)); return true; } if (!this._isAllowedUrl(event, options)) { utils_1.logger.warn("Event dropped due to not being matched by `allowUrls` option.\nEvent: " + utils_1.getEventDescription(event) + ".\nUrl: " + this._getEventFilterUrl(event)); return true; } return false; }; InboundFilters2.prototype._isSentryError = function(event, options) { if (!options.ignoreInternal) { return false; } try { return event && event.exception && event.exception.values && event.exception.values[0] && event.exception.values[0].type === "SentryError" || false; } catch (_oO) { return false; } }; InboundFilters2.prototype._isIgnoredError = function(event, options) { if (!options.ignoreErrors || !options.ignoreErrors.length) { return false; } return this._getPossibleEventMessages(event).some(function(message) { return options.ignoreErrors.some(function(pattern) { return utils_1.isMatchingPattern(message, pattern); }); }); }; InboundFilters2.prototype._isDeniedUrl = function(event, options) { if (!options.denyUrls || !options.denyUrls.length) { return false; } var url = this._getEventFilterUrl(event); return !url ? false : options.denyUrls.some(function(pattern) { return utils_1.isMatchingPattern(url, pattern); }); }; InboundFilters2.prototype._isAllowedUrl = function(event, options) { if (!options.allowUrls || !options.allowUrls.length) { return true; } var url = this._getEventFilterUrl(event); return !url ? true : options.allowUrls.some(function(pattern) { return utils_1.isMatchingPattern(url, pattern); }); }; InboundFilters2.prototype._mergeOptions = function(clientOptions) { if (clientOptions === void 0) { clientOptions = {}; } return { allowUrls: tslib_1.__spread(this._options.whitelistUrls || [], this._options.allowUrls || [], clientOptions.whitelistUrls || [], clientOptions.allowUrls || []), denyUrls: tslib_1.__spread(this._options.blacklistUrls || [], this._options.denyUrls || [], clientOptions.blacklistUrls || [], clientOptions.denyUrls || []), ignoreErrors: tslib_1.__spread(this._options.ignoreErrors || [], clientOptions.ignoreErrors || [], DEFAULT_IGNORE_ERRORS), ignoreInternal: typeof this._options.ignoreInternal !== "undefined" ? this._options.ignoreInternal : true }; }; InboundFilters2.prototype._getPossibleEventMessages = function(event) { if (event.message) { return [event.message]; } if (event.exception) { try { var _a4 = event.exception.values && event.exception.values[0] || {}, _b = _a4.type, type = _b === void 0 ? "" : _b, _c = _a4.value, value = _c === void 0 ? "" : _c; return ["" + value, type + ": " + value]; } catch (oO) { utils_1.logger.error("Cannot extract message for event " + utils_1.getEventDescription(event)); return []; } } return []; }; InboundFilters2.prototype._getLastValidUrl = function(frames) { if (frames === void 0) { frames = []; } var _a4, _b; for (var i2 = frames.length - 1; i2 >= 0; i2--) { var frame = frames[i2]; if (((_a4 = frame) === null || _a4 === void 0 ? void 0 : _a4.filename) !== "" && ((_b = frame) === null || _b === void 0 ? void 0 : _b.filename) !== "[native code]") { return frame.filename || null; } } return null; }; InboundFilters2.prototype._getEventFilterUrl = function(event) { try { if (event.stacktrace) { var frames_1 = event.stacktrace.frames; return this._getLastValidUrl(frames_1); } if (event.exception) { var frames_2 = event.exception.values && event.exception.values[0].stacktrace && event.exception.values[0].stacktrace.frames; return this._getLastValidUrl(frames_2); } return null; } catch (oO) { utils_1.logger.error("Cannot extract url for event " + utils_1.getEventDescription(event)); return null; } }; InboundFilters2.id = "InboundFilters"; return InboundFilters2; }(); exports.InboundFilters = InboundFilters; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integrations/index.js var require_integrations = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/integrations/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var functiontostring_1 = require_functiontostring(); exports.FunctionToString = functiontostring_1.FunctionToString; var inboundfilters_1 = require_inboundfilters(); exports.InboundFilters = inboundfilters_1.InboundFilters; } }); // ../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/index.js var require_dist7 = __commonJS({ "../../node_modules/.pnpm/@sentry+core@6.15.0/node_modules/@sentry/core/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var minimal_1 = require_dist6(); exports.addBreadcrumb = minimal_1.addBreadcrumb; exports.captureException = minimal_1.captureException; exports.captureEvent = minimal_1.captureEvent; exports.captureMessage = minimal_1.captureMessage; exports.configureScope = minimal_1.configureScope; exports.startTransaction = minimal_1.startTransaction; exports.setContext = minimal_1.setContext; exports.setExtra = minimal_1.setExtra; exports.setExtras = minimal_1.setExtras; exports.setTag = minimal_1.setTag; exports.setTags = minimal_1.setTags; exports.setUser = minimal_1.setUser; exports.withScope = minimal_1.withScope; var hub_1 = require_dist5(); exports.addGlobalEventProcessor = hub_1.addGlobalEventProcessor; exports.getCurrentHub = hub_1.getCurrentHub; exports.getHubFromCarrier = hub_1.getHubFromCarrier; exports.Hub = hub_1.Hub; exports.makeMain = hub_1.makeMain; exports.Scope = hub_1.Scope; var api_1 = require_api(); exports.API = api_1.API; var baseclient_1 = require_baseclient(); exports.BaseClient = baseclient_1.BaseClient; var basebackend_1 = require_basebackend(); exports.BaseBackend = basebackend_1.BaseBackend; var request_1 = require_request(); exports.eventToSentryRequest = request_1.eventToSentryRequest; exports.sessionToSentryRequest = request_1.sessionToSentryRequest; var sdk_1 = require_sdk(); exports.initAndBind = sdk_1.initAndBind; var noop_1 = require_noop(); exports.NoopTransport = noop_1.NoopTransport; var version_1 = require_version2(); exports.SDK_VERSION = version_1.SDK_VERSION; var Integrations = require_integrations(); exports.Integrations = Integrations; } }); // ../../node_modules/.pnpm/lru_map@0.3.3/node_modules/lru_map/lru.js var require_lru = __commonJS({ "../../node_modules/.pnpm/lru_map@0.3.3/node_modules/lru_map/lru.js"(exports) { (function(g, f4) { const e2 = typeof exports == "object" ? exports : typeof g == "object" ? g : {}; f4(e2); if (typeof define == "function" && define.amd) { define("lru", e2); } })(exports, function(exports2) { const NEWER = Symbol("newer"); const OLDER = Symbol("older"); function LRUMap(limit, entries) { if (typeof limit !== "number") { entries = limit; limit = 0; } this.size = 0; this.limit = limit; this.oldest = this.newest = void 0; this._keymap = /* @__PURE__ */ new Map(); if (entries) { this.assign(entries); if (limit < 1) { this.limit = this.size; } } } exports2.LRUMap = LRUMap; function Entry(key, value) { this.key = key; this.value = value; this[NEWER] = void 0; this[OLDER] = void 0; } LRUMap.prototype._markEntryAsUsed = function(entry) { if (entry === this.newest) { return; } if (entry[NEWER]) { if (entry === this.oldest) { this.oldest = entry[NEWER]; } entry[NEWER][OLDER] = entry[OLDER]; } if (entry[OLDER]) { entry[OLDER][NEWER] = entry[NEWER]; } entry[NEWER] = void 0; entry[OLDER] = this.newest; if (this.newest) { this.newest[NEWER] = entry; } this.newest = entry; }; LRUMap.prototype.assign = function(entries) { let entry, limit = this.limit || Number.MAX_VALUE; this._keymap.clear(); let it = entries[Symbol.iterator](); for (let itv = it.next(); !itv.done; itv = it.next()) { let e2 = new Entry(itv.value[0], itv.value[1]); this._keymap.set(e2.key, e2); if (!entry) { this.oldest = e2; } else { entry[NEWER] = e2; e2[OLDER] = entry; } entry = e2; if (limit-- == 0) { throw new Error("overflow"); } } this.newest = entry; this.size = this._keymap.size; }; LRUMap.prototype.get = function(key) { var entry = this._keymap.get(key); if (!entry) return; this._markEntryAsUsed(entry); return entry.value; }; LRUMap.prototype.set = function(key, value) { var entry = this._keymap.get(key); if (entry) { entry.value = value; this._markEntryAsUsed(entry); return this; } this._keymap.set(key, entry = new Entry(key, value)); if (this.newest) { this.newest[NEWER] = entry; entry[OLDER] = this.newest; } else { this.oldest = entry; } this.newest = entry; ++this.size; if (this.size > this.limit) { this.shift(); } return this; }; LRUMap.prototype.shift = function() { var entry = this.oldest; if (entry) { if (this.oldest[NEWER]) { this.oldest = this.oldest[NEWER]; this.oldest[OLDER] = void 0; } else { this.oldest = void 0; this.newest = void 0; } entry[NEWER] = entry[OLDER] = void 0; this._keymap.delete(entry.key); --this.size; return [entry.key, entry.value]; } }; LRUMap.prototype.find = function(key) { let e2 = this._keymap.get(key); return e2 ? e2.value : void 0; }; LRUMap.prototype.has = function(key) { return this._keymap.has(key); }; LRUMap.prototype["delete"] = function(key) { var entry = this._keymap.get(key); if (!entry) return; this._keymap.delete(entry.key); if (entry[NEWER] && entry[OLDER]) { entry[OLDER][NEWER] = entry[NEWER]; entry[NEWER][OLDER] = entry[OLDER]; } else if (entry[NEWER]) { entry[NEWER][OLDER] = void 0; this.oldest = entry[NEWER]; } else if (entry[OLDER]) { entry[OLDER][NEWER] = void 0; this.newest = entry[OLDER]; } else { this.oldest = this.newest = void 0; } this.size--; return entry.value; }; LRUMap.prototype.clear = function() { this.oldest = this.newest = void 0; this.size = 0; this._keymap.clear(); }; function EntryIterator(oldestEntry) { this.entry = oldestEntry; } EntryIterator.prototype[Symbol.iterator] = function() { return this; }; EntryIterator.prototype.next = function() { let ent = this.entry; if (ent) { this.entry = ent[NEWER]; return { done: false, value: [ent.key, ent.value] }; } else { return { done: true, value: void 0 }; } }; function KeyIterator(oldestEntry) { this.entry = oldestEntry; } KeyIterator.prototype[Symbol.iterator] = function() { return this; }; KeyIterator.prototype.next = function() { let ent = this.entry; if (ent) { this.entry = ent[NEWER]; return { done: false, value: ent.key }; } else { return { done: true, value: void 0 }; } }; function ValueIterator(oldestEntry) { this.entry = oldestEntry; } ValueIterator.prototype[Symbol.iterator] = function() { return this; }; ValueIterator.prototype.next = function() { let ent = this.entry; if (ent) { this.entry = ent[NEWER]; return { done: false, value: ent.value }; } else { return { done: true, value: void 0 }; } }; LRUMap.prototype.keys = function() { return new KeyIterator(this.oldest); }; LRUMap.prototype.values = function() { return new ValueIterator(this.oldest); }; LRUMap.prototype.entries = function() { return this; }; LRUMap.prototype[Symbol.iterator] = function() { return new EntryIterator(this.oldest); }; LRUMap.prototype.forEach = function(fun, thisObj) { if (typeof thisObj !== "object") { thisObj = this; } let entry = this.oldest; while (entry) { fun.call(thisObj, entry.value, entry.key, this); entry = entry[NEWER]; } }; LRUMap.prototype.toJSON = function() { var s2 = new Array(this.size), i2 = 0, entry = this.oldest; while (entry) { s2[i2++] = { key: entry.key, value: entry.value }; entry = entry[NEWER]; } return s2; }; LRUMap.prototype.toString = function() { var s2 = "", entry = this.oldest; while (entry) { s2 += String(entry.key) + ":" + entry.value; entry = entry[NEWER]; if (entry) { s2 += " < "; } } return s2; }; }); } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/stacktrace.js var require_stacktrace2 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/stacktrace.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); function parse2(err) { if (!err.stack) { return []; } var lines = err.stack.split("\n").slice(1); return lines.map(function(line) { if (line.match(/^\s*[-]{4,}$/)) { return { columnNumber: null, fileName: line, functionName: null, lineNumber: null, methodName: null, native: null, typeName: null }; } var lineMatch = line.match(/at (?:(.+?)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/); if (!lineMatch) { return void 0; } var object = null; var method = null; var functionName = null; var typeName = null; var methodName = null; var isNative = lineMatch[5] === "native"; if (lineMatch[1]) { functionName = lineMatch[1]; var methodStart = functionName.lastIndexOf("."); if (functionName[methodStart - 1] === ".") { methodStart--; } if (methodStart > 0) { object = functionName.substr(0, methodStart); method = functionName.substr(methodStart + 1); var objectEnd = object.indexOf(".Module"); if (objectEnd > 0) { functionName = functionName.substr(objectEnd + 1); object = object.substr(0, objectEnd); } } typeName = null; } if (method) { typeName = object; methodName = method; } if (method === "") { methodName = null; functionName = null; } var properties = { columnNumber: parseInt(lineMatch[4], 10) || null, fileName: lineMatch[2] || null, functionName, lineNumber: parseInt(lineMatch[3], 10) || null, methodName, native: isNative, typeName }; return properties; }).filter(function(callSite) { return !!callSite; }); } exports.parse = parse2; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/parsers.js var require_parsers = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/parsers.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var fs_1 = require("fs"); var lru_map_1 = require_lru(); var stacktrace = require_stacktrace2(); var DEFAULT_LINES_OF_CONTEXT = 7; var FILE_CONTENT_CACHE = new lru_map_1.LRUMap(100); function resetFileContentCache() { FILE_CONTENT_CACHE.clear(); } exports.resetFileContentCache = resetFileContentCache; function getFunction(frame) { try { return frame.functionName || frame.typeName + "." + (frame.methodName || ""); } catch (e2) { return ""; } } var mainModule = (require.main && require.main.filename && utils_1.dirname(require.main.filename) || global.process.cwd()) + "/"; function getModule(filename, base) { if (!base) { base = mainModule; } var file = utils_1.basename(filename, ".js"); filename = utils_1.dirname(filename); var n = filename.lastIndexOf("/node_modules/"); if (n > -1) { return filename.substr(n + 14).replace(/\//g, ".") + ":" + file; } n = (filename + "/").lastIndexOf(base, 0); if (n === 0) { var moduleName = filename.substr(base.length).replace(/\//g, "."); if (moduleName) { moduleName += ":"; } moduleName += file; return moduleName; } return file; } function readSourceFiles(filenames) { if (filenames.length === 0) { return utils_1.SyncPromise.resolve({}); } return new utils_1.SyncPromise(function(resolve) { var sourceFiles = {}; var count = 0; var _loop_1 = function(i3) { var filename = filenames[i3]; var cache = FILE_CONTENT_CACHE.get(filename); if (cache !== void 0) { if (cache !== null) { sourceFiles[filename] = cache; } count++; if (count === filenames.length) { resolve(sourceFiles); } return "continue"; } fs_1.readFile(filename, function(err, data) { var content = err ? null : data.toString(); sourceFiles[filename] = content; FILE_CONTENT_CACHE.set(filename, content); count++; if (count === filenames.length) { resolve(sourceFiles); } }); }; for (var i2 = 0; i2 < filenames.length; i2++) { _loop_1(i2); } }); } function extractStackFromError(error) { var stack = stacktrace.parse(error); if (!stack) { return []; } return stack; } exports.extractStackFromError = extractStackFromError; function parseStack(stack, options) { var filesToRead = []; var linesOfContext = options && options.frameContextLines !== void 0 ? options.frameContextLines : DEFAULT_LINES_OF_CONTEXT; var frames = stack.map(function(frame) { var _a4; var parsedFrame = { colno: frame.columnNumber, filename: ((_a4 = frame.fileName) === null || _a4 === void 0 ? void 0 : _a4.startsWith("file://")) ? frame.fileName.substr(7) : frame.fileName || "", function: getFunction(frame), lineno: frame.lineNumber }; var isInternal = frame.native || parsedFrame.filename && !parsedFrame.filename.startsWith("/") && !parsedFrame.filename.startsWith(".") && parsedFrame.filename.indexOf(":\\") !== 1; parsedFrame.in_app = !isInternal && parsedFrame.filename !== void 0 && parsedFrame.filename.indexOf("node_modules/") === -1; if (parsedFrame.filename) { parsedFrame.module = getModule(parsedFrame.filename); if (!isInternal && linesOfContext > 0 && filesToRead.indexOf(parsedFrame.filename) === -1) { filesToRead.push(parsedFrame.filename); } } return parsedFrame; }); if (linesOfContext <= 0) { return utils_1.SyncPromise.resolve(frames); } try { return addPrePostContext(filesToRead, frames, linesOfContext); } catch (_) { return utils_1.SyncPromise.resolve(frames); } } exports.parseStack = parseStack; function addPrePostContext(filesToRead, frames, linesOfContext) { return new utils_1.SyncPromise(function(resolve) { return readSourceFiles(filesToRead).then(function(sourceFiles) { var result = frames.map(function(frame) { if (frame.filename && sourceFiles[frame.filename]) { try { var lines = sourceFiles[frame.filename].split("\n"); utils_1.addContextToFrame(lines, frame, linesOfContext); } catch (e2) { } } return frame; }); resolve(result); }); }); } function getExceptionFromError(error, options) { var name = error.name || error.constructor.name; var stack = extractStackFromError(error); return new utils_1.SyncPromise(function(resolve) { return parseStack(stack, options).then(function(frames) { var result = { stacktrace: { frames: prepareFramesForEvent(frames) }, type: name, value: error.message }; resolve(result); }); }); } exports.getExceptionFromError = getExceptionFromError; function parseError(error, options) { return new utils_1.SyncPromise(function(resolve) { return getExceptionFromError(error, options).then(function(exception) { resolve({ exception: { values: [exception] } }); }); }); } exports.parseError = parseError; function prepareFramesForEvent(stack) { if (!stack || !stack.length) { return []; } var localStack = stack; var firstFrameFunction = localStack[0].function || ""; if (firstFrameFunction.indexOf("captureMessage") !== -1 || firstFrameFunction.indexOf("captureException") !== -1) { localStack = localStack.slice(1); } return localStack.reverse(); } exports.prepareFramesForEvent = prepareFramesForEvent; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/version.js var require_version3 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/version.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.SDK_NAME = "sentry.javascript.node"; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/base/index.js var require_base = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/base/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var types_1 = require_dist2(); var utils_1 = require_dist(); var fs4 = require("fs"); var url_1 = require("url"); var version_1 = require_version3(); var CATEGORY_MAPPING = { event: "error", transaction: "transaction", session: "session", attachment: "attachment" }; var BaseTransport = function() { function BaseTransport2(options) { this.options = options; this._buffer = new utils_1.PromiseBuffer(30); this._rateLimits = {}; this.urlParser = function(url) { return new url_1.URL(url); }; this._api = new core_1.API(options.dsn, options._metadata, options.tunnel); } BaseTransport2.prototype.sendEvent = function(_) { throw new utils_1.SentryError("Transport Class has to implement `sendEvent` method."); }; BaseTransport2.prototype.close = function(timeout) { return this._buffer.drain(timeout); }; BaseTransport2.prototype._getProxy = function(protocol) { var e_1, _a4; var _b = process.env, no_proxy = _b.no_proxy, http_proxy = _b.http_proxy, https_proxy = _b.https_proxy; var _c = this.options, httpProxy = _c.httpProxy, httpsProxy = _c.httpsProxy; var proxy = protocol === "http" ? httpProxy || http_proxy : httpsProxy || httpProxy || https_proxy || http_proxy; if (!no_proxy) { return proxy; } var _d2 = this._api.getDsn(), host = _d2.host, port = _d2.port; try { for (var _e = tslib_1.__values(no_proxy.split(",")), _f = _e.next(); !_f.done; _f = _e.next()) { var np = _f.value; if (host.endsWith(np) || (host + ":" + port).endsWith(np)) { return; } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_f && !_f.done && (_a4 = _e.return)) _a4.call(_e); } finally { if (e_1) throw e_1.error; } } return proxy; }; BaseTransport2.prototype._getRequestOptions = function(urlParts) { var headers = tslib_1.__assign(tslib_1.__assign({}, this._api.getRequestHeaders(version_1.SDK_NAME, core_1.SDK_VERSION)), this.options.headers); var hostname = urlParts.hostname, pathname = urlParts.pathname, port = urlParts.port, protocol = urlParts.protocol; var path5 = "" + pathname; return tslib_1.__assign({ agent: this.client, headers, hostname, method: "POST", path: path5, port, protocol }, this.options.caCerts && { ca: fs4.readFileSync(this.options.caCerts) }); }; BaseTransport2.prototype._disabledUntil = function(requestType) { var category = CATEGORY_MAPPING[requestType]; return this._rateLimits[category] || this._rateLimits.all; }; BaseTransport2.prototype._isRateLimited = function(requestType) { return this._disabledUntil(requestType) > new Date(Date.now()); }; BaseTransport2.prototype._handleRateLimit = function(headers) { var e_2, _a4, e_3, _b; var now = Date.now(); var rlHeader = headers["x-sentry-rate-limits"]; var raHeader = headers["retry-after"]; if (rlHeader) { try { for (var _c = tslib_1.__values(rlHeader.trim().split(",")), _d2 = _c.next(); !_d2.done; _d2 = _c.next()) { var limit = _d2.value; var parameters = limit.split(":", 2); var headerDelay = parseInt(parameters[0], 10); var delay = (!isNaN(headerDelay) ? headerDelay : 60) * 1e3; try { for (var _e = (e_3 = void 0, tslib_1.__values(parameters[1] && parameters[1].split(";") || ["all"])), _f = _e.next(); !_f.done; _f = _e.next()) { var category = _f.value; var categoriesAllowed = tslib_1.__spread(Object.keys(CATEGORY_MAPPING).map(function(k) { return CATEGORY_MAPPING[k]; }), [ "all" ]); if (categoriesAllowed.includes(category)) this._rateLimits[category] = new Date(now + delay); } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (_f && !_f.done && (_b = _e.return)) _b.call(_e); } finally { if (e_3) throw e_3.error; } } } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (_d2 && !_d2.done && (_a4 = _c.return)) _a4.call(_c); } finally { if (e_2) throw e_2.error; } } return true; } else if (raHeader) { this._rateLimits.all = new Date(now + utils_1.parseRetryAfterHeader(now, raHeader)); return true; } return false; }; BaseTransport2.prototype._send = function(sentryRequest, originalPayload) { return tslib_1.__awaiter(this, void 0, void 0, function() { var _this = this; return tslib_1.__generator(this, function(_a4) { if (!this.module) { throw new utils_1.SentryError("No module available"); } if (originalPayload && this._isRateLimited(sentryRequest.type)) { return [2, Promise.reject({ payload: originalPayload, type: sentryRequest.type, reason: "Transport for " + sentryRequest.type + " requests locked till " + this._disabledUntil(sentryRequest.type) + " due to too many requests.", status: 429 })]; } return [2, this._buffer.add(function() { return new Promise(function(resolve, reject) { if (!_this.module) { throw new utils_1.SentryError("No module available"); } var options = _this._getRequestOptions(_this.urlParser(sentryRequest.url)); var req = _this.module.request(options, function(res) { var statusCode = res.statusCode || 500; var status = types_1.Status.fromHttpCode(statusCode); res.setEncoding("utf8"); var retryAfterHeader = res.headers ? res.headers["retry-after"] : ""; retryAfterHeader = Array.isArray(retryAfterHeader) ? retryAfterHeader[0] : retryAfterHeader; var rlHeader = res.headers ? res.headers["x-sentry-rate-limits"] : ""; rlHeader = Array.isArray(rlHeader) ? rlHeader[0] : rlHeader; var headers = { "x-sentry-rate-limits": rlHeader, "retry-after": retryAfterHeader }; var limited = _this._handleRateLimit(headers); if (limited) utils_1.logger.warn("Too many " + sentryRequest.type + " requests, backing off until: " + _this._disabledUntil(sentryRequest.type)); if (status === types_1.Status.Success) { resolve({ status }); } else { var rejectionMessage = "HTTP Error (" + statusCode + ")"; if (res.headers && res.headers["x-sentry-error"]) { rejectionMessage += ": " + res.headers["x-sentry-error"]; } reject(new utils_1.SentryError(rejectionMessage)); } res.on("data", function() { }); res.on("end", function() { }); }); req.on("error", reject); req.end(sentryRequest.body); }); })]; }); }); }; return BaseTransport2; }(); exports.BaseTransport = BaseTransport; } }); // ../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js var require_promisify = __commonJS({ "../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js"(exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function promisify2(fn) { return function(req, opts) { return new Promise((resolve, reject) => { fn.call(this, req, opts, (err, rtn) => { if (err) { reject(err); } else { resolve(rtn); } }); }); }; } exports.default = promisify2; } }); // ../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js var require_src2 = __commonJS({ "../../node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js"(exports, module2) { "use strict"; var __importDefault = exports && exports.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; var events_1 = require("events"); var debug_1 = __importDefault(require_src()); var promisify_1 = __importDefault(require_promisify()); var debug = debug_1.default("agent-base"); function isAgent(v) { return Boolean(v) && typeof v.addRequest === "function"; } function isSecureEndpoint() { const { stack } = new Error(); if (typeof stack !== "string") return false; return stack.split("\n").some((l) => l.indexOf("(https.js:") !== -1 || l.indexOf("node:https:") !== -1); } function createAgent(callback, opts) { return new createAgent.Agent(callback, opts); } (function(createAgent2) { class Agent extends events_1.EventEmitter { constructor(callback, _opts) { super(); let opts = _opts; if (typeof callback === "function") { this.callback = callback; } else if (callback) { opts = callback; } this.timeout = null; if (opts && typeof opts.timeout === "number") { this.timeout = opts.timeout; } this.maxFreeSockets = 1; this.maxSockets = 1; this.maxTotalSockets = Infinity; this.sockets = {}; this.freeSockets = {}; this.requests = {}; this.options = {}; } get defaultPort() { if (typeof this.explicitDefaultPort === "number") { return this.explicitDefaultPort; } return isSecureEndpoint() ? 443 : 80; } set defaultPort(v) { this.explicitDefaultPort = v; } get protocol() { if (typeof this.explicitProtocol === "string") { return this.explicitProtocol; } return isSecureEndpoint() ? "https:" : "http:"; } set protocol(v) { this.explicitProtocol = v; } callback(req, opts, fn) { throw new Error('"agent-base" has no default implementation, you must subclass and override `callback()`'); } addRequest(req, _opts) { const opts = Object.assign({}, _opts); if (typeof opts.secureEndpoint !== "boolean") { opts.secureEndpoint = isSecureEndpoint(); } if (opts.host == null) { opts.host = "localhost"; } if (opts.port == null) { opts.port = opts.secureEndpoint ? 443 : 80; } if (opts.protocol == null) { opts.protocol = opts.secureEndpoint ? "https:" : "http:"; } if (opts.host && opts.path) { delete opts.path; } delete opts.agent; delete opts.hostname; delete opts._defaultAgent; delete opts.defaultPort; delete opts.createConnection; req._last = true; req.shouldKeepAlive = false; let timedOut = false; let timeoutId = null; const timeoutMs = opts.timeout || this.timeout; const onerror = (err) => { if (req._hadError) return; req.emit("error", err); req._hadError = true; }; const ontimeout = () => { timeoutId = null; timedOut = true; const err = new Error(`A "socket" was not created for HTTP request before ${timeoutMs}ms`); err.code = "ETIMEOUT"; onerror(err); }; const callbackError = (err) => { if (timedOut) return; if (timeoutId !== null) { clearTimeout(timeoutId); timeoutId = null; } onerror(err); }; const onsocket = (socket) => { if (timedOut) return; if (timeoutId != null) { clearTimeout(timeoutId); timeoutId = null; } if (isAgent(socket)) { debug("Callback returned another Agent instance %o", socket.constructor.name); socket.addRequest(req, opts); return; } if (socket) { socket.once("free", () => { this.freeSocket(socket, opts); }); req.onSocket(socket); return; } const err = new Error(`no Duplex stream was returned to agent-base for \`${req.method} ${req.path}\``); onerror(err); }; if (typeof this.callback !== "function") { onerror(new Error("`callback` is not defined")); return; } if (!this.promisifiedCallback) { if (this.callback.length >= 3) { debug("Converting legacy callback function to promise"); this.promisifiedCallback = promisify_1.default(this.callback); } else { this.promisifiedCallback = this.callback; } } if (typeof timeoutMs === "number" && timeoutMs > 0) { timeoutId = setTimeout(ontimeout, timeoutMs); } if ("port" in opts && typeof opts.port !== "number") { opts.port = Number(opts.port); } try { debug("Resolving socket for %o request: %o", opts.protocol, `${req.method} ${req.path}`); Promise.resolve(this.promisifiedCallback(req, opts)).then(onsocket, callbackError); } catch (err) { Promise.reject(err).catch(callbackError); } } freeSocket(socket, opts) { debug("Freeing socket %o %o", socket.constructor.name, opts); socket.destroy(); } destroy() { debug("Destroying agent %o", this.constructor.name); } } createAgent2.Agent = Agent; createAgent2.prototype = createAgent2.Agent.prototype; })(createAgent || (createAgent = {})); module2.exports = createAgent; } }); // ../../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js var require_parse_proxy_response = __commonJS({ "../../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports) { "use strict"; var __importDefault = exports && exports.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); var debug_1 = __importDefault(require_src()); var debug = debug_1.default("https-proxy-agent:parse-proxy-response"); function parseProxyResponse(socket) { return new Promise((resolve, reject) => { let buffersLength = 0; const buffers = []; function read() { const b = socket.read(); if (b) ondata(b); else socket.once("readable", read); } function cleanup() { socket.removeListener("end", onend); socket.removeListener("error", onerror); socket.removeListener("close", onclose); socket.removeListener("readable", read); } function onclose(err) { debug("onclose had error %o", err); } function onend() { debug("onend"); } function onerror(err) { cleanup(); debug("onerror %o", err); reject(err); } function ondata(b) { buffers.push(b); buffersLength += b.length; const buffered = Buffer.concat(buffers, buffersLength); const endOfHeaders = buffered.indexOf("\r\n\r\n"); if (endOfHeaders === -1) { debug("have not received end of HTTP headers yet..."); read(); return; } const firstLine = buffered.toString("ascii", 0, buffered.indexOf("\r\n")); const statusCode = +firstLine.split(" ")[1]; debug("got proxy server response: %o", firstLine); resolve({ statusCode, buffered }); } socket.on("error", onerror); socket.on("close", onclose); socket.on("end", onend); read(); }); } exports.default = parseProxyResponse; } }); // ../../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js var require_agent = __commonJS({ "../../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js"(exports) { "use strict"; var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e2) { reject(e2); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e2) { reject(e2); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = exports && exports.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); var net_1 = __importDefault(require("net")); var tls_1 = __importDefault(require("tls")); var url_1 = __importDefault(require("url")); var assert_1 = __importDefault(require("assert")); var debug_1 = __importDefault(require_src()); var agent_base_1 = require_src2(); var parse_proxy_response_1 = __importDefault(require_parse_proxy_response()); var debug = debug_1.default("https-proxy-agent:agent"); var HttpsProxyAgent = class extends agent_base_1.Agent { constructor(_opts) { let opts; if (typeof _opts === "string") { opts = url_1.default.parse(_opts); } else { opts = _opts; } if (!opts) { throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!"); } debug("creating new HttpsProxyAgent instance: %o", opts); super(opts); const proxy = Object.assign({}, opts); this.secureProxy = opts.secureProxy || isHTTPS(proxy.protocol); proxy.host = proxy.hostname || proxy.host; if (typeof proxy.port === "string") { proxy.port = parseInt(proxy.port, 10); } if (!proxy.port && proxy.host) { proxy.port = this.secureProxy ? 443 : 80; } if (this.secureProxy && !("ALPNProtocols" in proxy)) { proxy.ALPNProtocols = ["http 1.1"]; } if (proxy.host && proxy.path) { delete proxy.path; delete proxy.pathname; } this.proxy = proxy; } callback(req, opts) { return __awaiter(this, void 0, void 0, function* () { const { proxy, secureProxy } = this; let socket; if (secureProxy) { debug("Creating `tls.Socket`: %o", proxy); socket = tls_1.default.connect(proxy); } else { debug("Creating `net.Socket`: %o", proxy); socket = net_1.default.connect(proxy); } const headers = Object.assign({}, proxy.headers); const hostname = `${opts.host}:${opts.port}`; let payload = `CONNECT ${hostname} HTTP/1.1\r `; if (proxy.auth) { headers["Proxy-Authorization"] = `Basic ${Buffer.from(proxy.auth).toString("base64")}`; } let { host, port, secureEndpoint } = opts; if (!isDefaultPort(port, secureEndpoint)) { host += `:${port}`; } headers.Host = host; headers.Connection = "close"; for (const name of Object.keys(headers)) { payload += `${name}: ${headers[name]}\r `; } const proxyResponsePromise = parse_proxy_response_1.default(socket); socket.write(`${payload}\r `); const { statusCode, buffered } = yield proxyResponsePromise; if (statusCode === 200) { req.once("socket", resume); if (opts.secureEndpoint) { debug("Upgrading socket connection to TLS"); const servername = opts.servername || opts.host; return tls_1.default.connect(Object.assign(Object.assign({}, omit(opts, "host", "hostname", "path", "port")), { socket, servername })); } return socket; } socket.destroy(); const fakeSocket = new net_1.default.Socket({ writable: false }); fakeSocket.readable = true; req.once("socket", (s2) => { debug("replaying proxy buffer for failed request"); assert_1.default(s2.listenerCount("data") > 0); s2.push(buffered); s2.push(null); }); return fakeSocket; }); } }; exports.default = HttpsProxyAgent; function resume(socket) { socket.resume(); } function isDefaultPort(port, secure) { return Boolean(!secure && port === 80 || secure && port === 443); } function isHTTPS(protocol) { return typeof protocol === "string" ? /^https:?$/i.test(protocol) : false; } function omit(obj, ...keys) { const ret = {}; let key; for (key in obj) { if (!keys.includes(key)) { ret[key] = obj[key]; } } return ret; } } }); // ../../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/index.js var require_dist8 = __commonJS({ "../../node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/index.js"(exports, module2) { "use strict"; var __importDefault = exports && exports.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; }; var agent_1 = __importDefault(require_agent()); function createHttpsProxyAgent(opts) { return new agent_1.default(opts); } (function(createHttpsProxyAgent2) { createHttpsProxyAgent2.HttpsProxyAgent = agent_1.default; createHttpsProxyAgent2.prototype = agent_1.default.prototype; })(createHttpsProxyAgent || (createHttpsProxyAgent = {})); module2.exports = createHttpsProxyAgent; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/http.js var require_http3 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/http.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var http3 = require("http"); var base_1 = require_base(); var HTTPTransport = function(_super) { tslib_1.__extends(HTTPTransport2, _super); function HTTPTransport2(options) { var _this = _super.call(this, options) || this; _this.options = options; var proxy = _this._getProxy("http"); _this.module = http3; _this.client = proxy ? new (require_dist8())(proxy) : new http3.Agent({ keepAlive: false, maxSockets: 30, timeout: 2e3 }); return _this; } HTTPTransport2.prototype.sendEvent = function(event) { return this._send(core_1.eventToSentryRequest(event, this._api), event); }; HTTPTransport2.prototype.sendSession = function(session) { return this._send(core_1.sessionToSentryRequest(session, this._api), session); }; return HTTPTransport2; }(base_1.BaseTransport); exports.HTTPTransport = HTTPTransport; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/https.js var require_https = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/https.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var https2 = require("https"); var base_1 = require_base(); var HTTPSTransport = function(_super) { tslib_1.__extends(HTTPSTransport2, _super); function HTTPSTransport2(options) { var _this = _super.call(this, options) || this; _this.options = options; var proxy = _this._getProxy("https"); _this.module = https2; _this.client = proxy ? new (require_dist8())(proxy) : new https2.Agent({ keepAlive: false, maxSockets: 30, timeout: 2e3 }); return _this; } HTTPSTransport2.prototype.sendEvent = function(event) { return this._send(core_1.eventToSentryRequest(event, this._api), event); }; HTTPSTransport2.prototype.sendSession = function(session) { return this._send(core_1.sessionToSentryRequest(session, this._api), session); }; return HTTPSTransport2; }(base_1.BaseTransport); exports.HTTPSTransport = HTTPSTransport; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/index.js var require_transports2 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/transports/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var base_1 = require_base(); exports.BaseTransport = base_1.BaseTransport; var http_1 = require_http3(); exports.HTTPTransport = http_1.HTTPTransport; var https_1 = require_https(); exports.HTTPSTransport = https_1.HTTPSTransport; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/backend.js var require_backend = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/backend.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var types_1 = require_dist2(); var utils_1 = require_dist(); var parsers_1 = require_parsers(); var transports_1 = require_transports2(); var NodeBackend = function(_super) { tslib_1.__extends(NodeBackend2, _super); function NodeBackend2() { return _super !== null && _super.apply(this, arguments) || this; } NodeBackend2.prototype.eventFromException = function(exception, hint) { var _this = this; var ex = exception; var providedMechanism = hint && hint.data && hint.data.mechanism; var mechanism = providedMechanism || { handled: true, type: "generic" }; if (!utils_1.isError(exception)) { if (utils_1.isPlainObject(exception)) { var message = "Non-Error exception captured with keys: " + utils_1.extractExceptionKeysForMessage(exception); core_1.getCurrentHub().configureScope(function(scope) { scope.setExtra("__serialized__", utils_1.normalizeToSize(exception)); }); ex = hint && hint.syntheticException || new Error(message); ex.message = message; } else { ex = hint && hint.syntheticException || new Error(exception); ex.message = exception; } mechanism.synthetic = true; } return new utils_1.SyncPromise(function(resolve, reject) { return parsers_1.parseError(ex, _this._options).then(function(event) { utils_1.addExceptionTypeValue(event, void 0, void 0); utils_1.addExceptionMechanism(event, mechanism); resolve(tslib_1.__assign(tslib_1.__assign({}, event), { event_id: hint && hint.event_id })); }).then(null, reject); }); }; NodeBackend2.prototype.eventFromMessage = function(message, level, hint) { var _this = this; if (level === void 0) { level = types_1.Severity.Info; } var event = { event_id: hint && hint.event_id, level, message }; return new utils_1.SyncPromise(function(resolve) { if (_this._options.attachStacktrace && hint && hint.syntheticException) { var stack = hint.syntheticException ? parsers_1.extractStackFromError(hint.syntheticException) : []; void parsers_1.parseStack(stack, _this._options).then(function(frames) { event.stacktrace = { frames: parsers_1.prepareFramesForEvent(frames) }; resolve(event); }).then(null, function() { resolve(event); }); } else { resolve(event); } }); }; NodeBackend2.prototype._setupTransport = function() { if (!this._options.dsn) { return _super.prototype._setupTransport.call(this); } var dsn = new utils_1.Dsn(this._options.dsn); var transportOptions = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, this._options.transportOptions), this._options.httpProxy && { httpProxy: this._options.httpProxy }), this._options.httpsProxy && { httpsProxy: this._options.httpsProxy }), this._options.caCerts && { caCerts: this._options.caCerts }), { dsn: this._options.dsn, tunnel: this._options.tunnel, _metadata: this._options._metadata }); if (this._options.transport) { return new this._options.transport(transportOptions); } if (dsn.protocol === "http") { return new transports_1.HTTPTransport(transportOptions); } return new transports_1.HTTPSTransport(transportOptions); }; return NodeBackend2; }(core_1.BaseBackend); exports.NodeBackend = NodeBackend; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/client.js var require_client3 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/client.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var hub_1 = require_dist5(); var types_1 = require_dist2(); var utils_1 = require_dist(); var backend_1 = require_backend(); var NodeClient = function(_super) { tslib_1.__extends(NodeClient2, _super); function NodeClient2(options) { var _this = this; options._metadata = options._metadata || {}; options._metadata.sdk = options._metadata.sdk || { name: "sentry.javascript.node", packages: [ { name: "npm:@sentry/node", version: core_1.SDK_VERSION } ], version: core_1.SDK_VERSION }; _this = _super.call(this, backend_1.NodeBackend, options) || this; return _this; } NodeClient2.prototype.captureException = function(exception, hint, scope) { if (this._options.autoSessionTracking && this._sessionFlusher && scope) { var requestSession = scope.getRequestSession(); if (requestSession && requestSession.status === types_1.RequestSessionStatus.Ok) { requestSession.status = types_1.RequestSessionStatus.Errored; } } return _super.prototype.captureException.call(this, exception, hint, scope); }; NodeClient2.prototype.captureEvent = function(event, hint, scope) { if (this._options.autoSessionTracking && this._sessionFlusher && scope) { var eventType = event.type || "exception"; var isException = eventType === "exception" && event.exception && event.exception.values && event.exception.values.length > 0; if (isException) { var requestSession = scope.getRequestSession(); if (requestSession && requestSession.status === types_1.RequestSessionStatus.Ok) { requestSession.status = types_1.RequestSessionStatus.Errored; } } } return _super.prototype.captureEvent.call(this, event, hint, scope); }; NodeClient2.prototype.close = function(timeout) { var _a4; (_a4 = this._sessionFlusher) === null || _a4 === void 0 ? void 0 : _a4.close(); return _super.prototype.close.call(this, timeout); }; NodeClient2.prototype.initSessionFlusher = function() { var _a4 = this._options, release = _a4.release, environment = _a4.environment; if (!release) { utils_1.logger.warn("Cannot initialise an instance of SessionFlusher if no release is provided!"); } else { this._sessionFlusher = new hub_1.SessionFlusher(this.getTransport(), { release, environment }); } }; NodeClient2.prototype._prepareEvent = function(event, scope, hint) { event.platform = event.platform || "node"; if (this.getOptions().serverName) { event.server_name = this.getOptions().serverName; } return _super.prototype._prepareEvent.call(this, event, scope, hint); }; NodeClient2.prototype._captureRequestSession = function() { if (!this._sessionFlusher) { utils_1.logger.warn("Discarded request mode session because autoSessionTracking option was disabled"); } else { this._sessionFlusher.incrementSessionStatusCount(); } }; return NodeClient2; }(core_1.BaseClient); exports.NodeClient = NodeClient; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/console.js var require_console3 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/console.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var types_1 = require_dist2(); var utils_1 = require_dist(); var util = require("util"); var Console = function() { function Console2() { this.name = Console2.id; } Console2.prototype.setupOnce = function() { var e_1, _a4; try { for (var _b = tslib_1.__values(["debug", "info", "warn", "error", "log"]), _c = _b.next(); !_c.done; _c = _b.next()) { var level = _c.value; utils_1.fill(console, level, createConsoleWrapper(level)); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a4 = _b.return)) _a4.call(_b); } finally { if (e_1) throw e_1.error; } } }; Console2.id = "Console"; return Console2; }(); exports.Console = Console; function createConsoleWrapper(level) { return function consoleWrapper(originalConsoleMethod) { var sentryLevel; switch (level) { case "debug": sentryLevel = types_1.Severity.Debug; break; case "error": sentryLevel = types_1.Severity.Error; break; case "info": sentryLevel = types_1.Severity.Info; break; case "warn": sentryLevel = types_1.Severity.Warning; break; default: sentryLevel = types_1.Severity.Log; } return function() { if (core_1.getCurrentHub().getIntegration(Console)) { core_1.getCurrentHub().addBreadcrumb({ category: "console", level: sentryLevel, message: util.format.apply(void 0, arguments) }, { input: tslib_1.__spread(arguments), level }); } originalConsoleMethod.apply(this, arguments); }; }; } } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/utils/http.js var require_http4 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/utils/http.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var utils_1 = require_dist(); var url_1 = require("url"); var NODE_VERSION = utils_1.parseSemver(process.versions.node); function isSentryRequest(url) { var _a4; var dsn = (_a4 = core_1.getCurrentHub().getClient()) === null || _a4 === void 0 ? void 0 : _a4.getDsn(); return dsn ? url.includes(dsn.host) : false; } exports.isSentryRequest = isSentryRequest; function extractUrl(requestOptions) { var protocol = requestOptions.protocol || ""; var hostname = requestOptions.hostname || requestOptions.host || ""; var port = !requestOptions.port || requestOptions.port === 80 || requestOptions.port === 443 ? "" : ":" + requestOptions.port; var path5 = requestOptions.path ? requestOptions.path : "/"; return protocol + "//" + hostname + port + path5; } exports.extractUrl = extractUrl; function cleanSpanDescription(description, requestOptions, request) { var _a4, _b, _c; if (!description) { return description; } var _d2 = tslib_1.__read(description.split(" "), 2), method = _d2[0], requestUrl = _d2[1]; if (requestOptions.host && !requestOptions.protocol) { requestOptions.protocol = (_b = (_a4 = request) === null || _a4 === void 0 ? void 0 : _a4.agent) === null || _b === void 0 ? void 0 : _b.protocol; requestUrl = extractUrl(requestOptions); } if ((_c = requestUrl) === null || _c === void 0 ? void 0 : _c.startsWith("///")) { requestUrl = requestUrl.slice(2); } return method + " " + requestUrl; } exports.cleanSpanDescription = cleanSpanDescription; function urlToOptions(url) { var options = { protocol: url.protocol, hostname: typeof url.hostname === "string" && url.hostname.startsWith("[") ? url.hostname.slice(1, -1) : url.hostname, hash: url.hash, search: url.search, pathname: url.pathname, path: "" + (url.pathname || "") + (url.search || ""), href: url.href }; if (url.port !== "") { options.port = Number(url.port); } if (url.username || url.password) { options.auth = url.username + ":" + url.password; } return options; } exports.urlToOptions = urlToOptions; function normalizeRequestArgs(httpModule, requestArgs) { var _a4, _b, _c, _d2, _e, _f, _g, _h; var callback, requestOptions; if (typeof requestArgs[requestArgs.length - 1] === "function") { callback = requestArgs.pop(); } if (typeof requestArgs[0] === "string") { requestOptions = urlToOptions(new url_1.URL(requestArgs[0])); } else if (requestArgs[0] instanceof url_1.URL) { requestOptions = urlToOptions(requestArgs[0]); } else { requestOptions = requestArgs[0]; } if (requestArgs.length === 2) { requestOptions = tslib_1.__assign(tslib_1.__assign({}, requestOptions), requestArgs[1]); } if (requestOptions.protocol === void 0) { if (NODE_VERSION.major && NODE_VERSION.major > 8) { requestOptions.protocol = ((_b = (_a4 = httpModule) === null || _a4 === void 0 ? void 0 : _a4.globalAgent) === null || _b === void 0 ? void 0 : _b.protocol) || ((_c = requestOptions.agent) === null || _c === void 0 ? void 0 : _c.protocol) || ((_d2 = requestOptions._defaultAgent) === null || _d2 === void 0 ? void 0 : _d2.protocol); } else { requestOptions.protocol = ((_e = requestOptions.agent) === null || _e === void 0 ? void 0 : _e.protocol) || ((_f = requestOptions._defaultAgent) === null || _f === void 0 ? void 0 : _f.protocol) || ((_h = (_g = httpModule) === null || _g === void 0 ? void 0 : _g.globalAgent) === null || _h === void 0 ? void 0 : _h.protocol); } } if (callback) { return [requestOptions, callback]; } else { return [requestOptions]; } } exports.normalizeRequestArgs = normalizeRequestArgs; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/http.js var require_http5 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/http.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var utils_1 = require_dist(); var http_1 = require_http4(); var NODE_VERSION = utils_1.parseSemver(process.versions.node); var Http = function() { function Http2(options) { if (options === void 0) { options = {}; } this.name = Http2.id; this._breadcrumbs = typeof options.breadcrumbs === "undefined" ? true : options.breadcrumbs; this._tracing = typeof options.tracing === "undefined" ? false : options.tracing; } Http2.prototype.setupOnce = function() { if (!this._breadcrumbs && !this._tracing) { return; } var wrappedHandlerMaker = _createWrappedRequestMethodFactory(this._breadcrumbs, this._tracing); var httpModule = require("http"); utils_1.fill(httpModule, "get", wrappedHandlerMaker); utils_1.fill(httpModule, "request", wrappedHandlerMaker); if (NODE_VERSION.major && NODE_VERSION.major > 8) { var httpsModule = require("https"); utils_1.fill(httpsModule, "get", wrappedHandlerMaker); utils_1.fill(httpsModule, "request", wrappedHandlerMaker); } }; Http2.id = "Http"; return Http2; }(); exports.Http = Http; function _createWrappedRequestMethodFactory(breadcrumbsEnabled, tracingEnabled) { return function wrappedRequestMethodFactory(originalRequestMethod) { return function wrappedMethod() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var httpModule = this; var requestArgs = http_1.normalizeRequestArgs(this, args); var requestOptions = requestArgs[0]; var requestUrl = http_1.extractUrl(requestOptions); if (http_1.isSentryRequest(requestUrl)) { return originalRequestMethod.apply(httpModule, requestArgs); } var span; var parentSpan; var scope = core_1.getCurrentHub().getScope(); if (scope && tracingEnabled) { parentSpan = scope.getSpan(); if (parentSpan) { span = parentSpan.startChild({ description: (requestOptions.method || "GET") + " " + requestUrl, op: "request" }); var sentryTraceHeader = span.toTraceparent(); utils_1.logger.log("[Tracing] Adding sentry-trace header " + sentryTraceHeader + " to outgoing request to " + requestUrl + ": "); requestOptions.headers = tslib_1.__assign(tslib_1.__assign({}, requestOptions.headers), { "sentry-trace": sentryTraceHeader }); } } return originalRequestMethod.apply(httpModule, requestArgs).once("response", function(res) { var req = this; if (breadcrumbsEnabled) { addRequestBreadcrumb("response", requestUrl, req, res); } if (tracingEnabled && span) { if (res.statusCode) { span.setHttpStatus(res.statusCode); } span.description = http_1.cleanSpanDescription(span.description, requestOptions, req); span.finish(); } }).once("error", function() { var req = this; if (breadcrumbsEnabled) { addRequestBreadcrumb("error", requestUrl, req); } if (tracingEnabled && span) { span.setHttpStatus(500); span.description = http_1.cleanSpanDescription(span.description, requestOptions, req); span.finish(); } }); }; }; } function addRequestBreadcrumb(event, url, req, res) { if (!core_1.getCurrentHub().getIntegration(Http)) { return; } core_1.getCurrentHub().addBreadcrumb({ category: "http", data: { method: req.method, status_code: res && res.statusCode, url }, type: "http" }, { event, request: req, response: res }); } } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/utils/errorhandling.js var require_errorhandling = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/utils/errorhandling.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var core_1 = require_dist7(); var utils_1 = require_dist(); var DEFAULT_SHUTDOWN_TIMEOUT = 2e3; function logAndExitProcess(error) { console.error(error && error.stack ? error.stack : error); var client = core_1.getCurrentHub().getClient(); if (client === void 0) { utils_1.logger.warn("No NodeClient was defined, we are exiting the process now."); global.process.exit(1); return; } var options = client.getOptions(); var timeout = options && options.shutdownTimeout && options.shutdownTimeout > 0 && options.shutdownTimeout || DEFAULT_SHUTDOWN_TIMEOUT; utils_1.forget(client.close(timeout).then(function(result) { if (!result) { utils_1.logger.warn("We reached the timeout for emptying the request buffer, still exiting now!"); } global.process.exit(1); })); } exports.logAndExitProcess = logAndExitProcess; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/onuncaughtexception.js var require_onuncaughtexception = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/onuncaughtexception.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var core_1 = require_dist7(); var types_1 = require_dist2(); var utils_1 = require_dist(); var errorhandling_1 = require_errorhandling(); var OnUncaughtException = function() { function OnUncaughtException2(_options) { if (_options === void 0) { _options = {}; } this._options = _options; this.name = OnUncaughtException2.id; this.handler = this._makeErrorHandler(); } OnUncaughtException2.prototype.setupOnce = function() { global.process.on("uncaughtException", this.handler.bind(this)); }; OnUncaughtException2.prototype._makeErrorHandler = function() { var _this = this; var timeout = 2e3; var caughtFirstError = false; var caughtSecondError = false; var calledFatalError = false; var firstError; return function(error) { var onFatalError = errorhandling_1.logAndExitProcess; var client = core_1.getCurrentHub().getClient(); if (_this._options.onFatalError) { onFatalError = _this._options.onFatalError; } else if (client && client.getOptions().onFatalError) { onFatalError = client.getOptions().onFatalError; } if (!caughtFirstError) { var hub_1 = core_1.getCurrentHub(); firstError = error; caughtFirstError = true; if (hub_1.getIntegration(OnUncaughtException2)) { hub_1.withScope(function(scope) { scope.setLevel(types_1.Severity.Fatal); hub_1.captureException(error, { originalException: error, data: { mechanism: { handled: false, type: "onuncaughtexception" } } }); if (!calledFatalError) { calledFatalError = true; onFatalError(error); } }); } else { if (!calledFatalError) { calledFatalError = true; onFatalError(error); } } } else if (calledFatalError) { utils_1.logger.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"); errorhandling_1.logAndExitProcess(error); } else if (!caughtSecondError) { caughtSecondError = true; setTimeout(function() { if (!calledFatalError) { calledFatalError = true; onFatalError(firstError, error); } else { } }, timeout); } }; }; OnUncaughtException2.id = "OnUncaughtException"; return OnUncaughtException2; }(); exports.OnUncaughtException = OnUncaughtException; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/onunhandledrejection.js var require_onunhandledrejection = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/onunhandledrejection.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var core_1 = require_dist7(); var utils_1 = require_dist(); var errorhandling_1 = require_errorhandling(); var OnUnhandledRejection = function() { function OnUnhandledRejection2(_options) { if (_options === void 0) { _options = { mode: "warn" }; } this._options = _options; this.name = OnUnhandledRejection2.id; } OnUnhandledRejection2.prototype.setupOnce = function() { global.process.on("unhandledRejection", this.sendUnhandledPromise.bind(this)); }; OnUnhandledRejection2.prototype.sendUnhandledPromise = function(reason, promise) { var hub = core_1.getCurrentHub(); if (!hub.getIntegration(OnUnhandledRejection2)) { this._handleRejection(reason); return; } var context = promise.domain && promise.domain.sentryContext || {}; hub.withScope(function(scope) { scope.setExtra("unhandledPromiseRejection", true); if (context.user) { scope.setUser(context.user); } if (context.tags) { scope.setTags(context.tags); } if (context.extra) { scope.setExtras(context.extra); } hub.captureException(reason, { originalException: promise, data: { mechanism: { handled: false, type: "onunhandledrejection" } } }); }); this._handleRejection(reason); }; OnUnhandledRejection2.prototype._handleRejection = function(reason) { var rejectionWarning = "This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:"; if (this._options.mode === "warn") { utils_1.consoleSandbox(function() { console.warn(rejectionWarning); console.error(reason && reason.stack ? reason.stack : reason); }); } else if (this._options.mode === "strict") { utils_1.consoleSandbox(function() { console.warn(rejectionWarning); }); errorhandling_1.logAndExitProcess(reason); } }; OnUnhandledRejection2.id = "OnUnhandledRejection"; return OnUnhandledRejection2; }(); exports.OnUnhandledRejection = OnUnhandledRejection; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/linkederrors.js var require_linkederrors = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/linkederrors.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var utils_1 = require_dist(); var parsers_1 = require_parsers(); var DEFAULT_KEY = "cause"; var DEFAULT_LIMIT = 5; var LinkedErrors = function() { function LinkedErrors2(options) { if (options === void 0) { options = {}; } this.name = LinkedErrors2.id; this._key = options.key || DEFAULT_KEY; this._limit = options.limit || DEFAULT_LIMIT; } LinkedErrors2.prototype.setupOnce = function() { core_1.addGlobalEventProcessor(function(event, hint) { var self2 = core_1.getCurrentHub().getIntegration(LinkedErrors2); if (self2) { var handler = self2._handler && self2._handler.bind(self2); return typeof handler === "function" ? handler(event, hint) : event; } return event; }); }; LinkedErrors2.prototype._handler = function(event, hint) { var _this = this; if (!event.exception || !event.exception.values || !hint || !utils_1.isInstanceOf(hint.originalException, Error)) { return utils_1.SyncPromise.resolve(event); } return new utils_1.SyncPromise(function(resolve) { void _this._walkErrorTree(hint.originalException, _this._key).then(function(linkedErrors) { if (event && event.exception && event.exception.values) { event.exception.values = tslib_1.__spread(linkedErrors, event.exception.values); } resolve(event); }).then(null, function() { resolve(event); }); }); }; LinkedErrors2.prototype._walkErrorTree = function(error, key, stack) { var _this = this; if (stack === void 0) { stack = []; } if (!utils_1.isInstanceOf(error[key], Error) || stack.length + 1 >= this._limit) { return utils_1.SyncPromise.resolve(stack); } return new utils_1.SyncPromise(function(resolve, reject) { void parsers_1.getExceptionFromError(error[key]).then(function(exception) { void _this._walkErrorTree(error[key], key, tslib_1.__spread([exception], stack)).then(resolve).then(null, function() { reject(); }); }).then(null, function() { reject(); }); }); }; LinkedErrors2.id = "LinkedErrors"; return LinkedErrors2; }(); exports.LinkedErrors = LinkedErrors; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/modules.js var require_modules = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/modules.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var fs_1 = require("fs"); var path_1 = require("path"); var moduleCache; function getPaths() { try { return require.cache ? Object.keys(require.cache) : []; } catch (e2) { return []; } } function collectModules() { var mainPaths = require.main && require.main.paths || []; var paths = getPaths(); var infos = {}; var seen = {}; paths.forEach(function(path5) { var dir = path5; var updir = function() { var orig = dir; dir = path_1.dirname(orig); if (!dir || orig === dir || seen[orig]) { return void 0; } if (mainPaths.indexOf(dir) < 0) { return updir(); } var pkgfile = path_1.join(orig, "package.json"); seen[orig] = true; if (!fs_1.existsSync(pkgfile)) { return updir(); } try { var info = JSON.parse(fs_1.readFileSync(pkgfile, "utf8")); infos[info.name] = info.version; } catch (_oO) { } }; updir(); }); return infos; } var Modules = function() { function Modules2() { this.name = Modules2.id; } Modules2.prototype.setupOnce = function(addGlobalEventProcessor, getCurrentHub) { var _this = this; addGlobalEventProcessor(function(event) { if (!getCurrentHub().getIntegration(Modules2)) { return event; } return tslib_1.__assign(tslib_1.__assign({}, event), { modules: _this._getModules() }); }); }; Modules2.prototype._getModules = function() { if (!moduleCache) { moduleCache = collectModules(); } return moduleCache; }; Modules2.id = "Modules"; return Modules2; }(); exports.Modules = Modules; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/index.js var require_integrations2 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/integrations/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var console_1 = require_console3(); exports.Console = console_1.Console; var http_1 = require_http5(); exports.Http = http_1.Http; var onuncaughtexception_1 = require_onuncaughtexception(); exports.OnUncaughtException = onuncaughtexception_1.OnUncaughtException; var onunhandledrejection_1 = require_onunhandledrejection(); exports.OnUnhandledRejection = onunhandledrejection_1.OnUnhandledRejection; var linkederrors_1 = require_linkederrors(); exports.LinkedErrors = linkederrors_1.LinkedErrors; var modules_1 = require_modules(); exports.Modules = modules_1.Modules; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/sdk.js var require_sdk2 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/sdk.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var hub_1 = require_dist5(); var types_1 = require_dist2(); var utils_1 = require_dist(); var domain = require("domain"); var client_1 = require_client3(); var integrations_1 = require_integrations2(); exports.defaultIntegrations = [ new core_1.Integrations.InboundFilters(), new core_1.Integrations.FunctionToString(), new integrations_1.Console(), new integrations_1.Http(), new integrations_1.OnUncaughtException(), new integrations_1.OnUnhandledRejection(), new integrations_1.LinkedErrors() ]; function init2(options) { if (options === void 0) { options = {}; } var _a4; var carrier = hub_1.getMainCarrier(); var autoloadedIntegrations = ((_a4 = carrier.__SENTRY__) === null || _a4 === void 0 ? void 0 : _a4.integrations) || []; options.defaultIntegrations = options.defaultIntegrations === false ? [] : tslib_1.__spread(Array.isArray(options.defaultIntegrations) ? options.defaultIntegrations : exports.defaultIntegrations, autoloadedIntegrations); if (options.dsn === void 0 && process.env.SENTRY_DSN) { options.dsn = process.env.SENTRY_DSN; } if (options.tracesSampleRate === void 0 && process.env.SENTRY_TRACES_SAMPLE_RATE) { var tracesSampleRate = parseFloat(process.env.SENTRY_TRACES_SAMPLE_RATE); if (isFinite(tracesSampleRate)) { options.tracesSampleRate = tracesSampleRate; } } if (options.release === void 0) { var detectedRelease = getSentryRelease(); if (detectedRelease !== void 0) { options.release = detectedRelease; } else { options.autoSessionTracking = false; } } if (options.environment === void 0 && process.env.SENTRY_ENVIRONMENT) { options.environment = process.env.SENTRY_ENVIRONMENT; } if (options.autoSessionTracking === void 0 && options.dsn !== void 0) { options.autoSessionTracking = true; } if (domain.active) { hub_1.setHubOnCarrier(carrier, core_1.getCurrentHub()); } core_1.initAndBind(client_1.NodeClient, options); if (options.autoSessionTracking) { startSessionTracking(); } } exports.init = init2; function lastEventId() { return core_1.getCurrentHub().lastEventId(); } exports.lastEventId = lastEventId; function flush(timeout) { return tslib_1.__awaiter(this, void 0, void 0, function() { var client; return tslib_1.__generator(this, function(_a4) { client = core_1.getCurrentHub().getClient(); if (client) { return [2, client.flush(timeout)]; } utils_1.logger.warn("Cannot flush events. No client defined."); return [2, Promise.resolve(false)]; }); }); } exports.flush = flush; function close(timeout) { return tslib_1.__awaiter(this, void 0, void 0, function() { var client; return tslib_1.__generator(this, function(_a4) { client = core_1.getCurrentHub().getClient(); if (client) { return [2, client.close(timeout)]; } utils_1.logger.warn("Cannot flush events and disable SDK. No client defined."); return [2, Promise.resolve(false)]; }); }); } exports.close = close; function isAutoSessionTrackingEnabled(client) { if (client === void 0) { return false; } var clientOptions = client && client.getOptions(); if (clientOptions && clientOptions.autoSessionTracking !== void 0) { return clientOptions.autoSessionTracking; } return false; } exports.isAutoSessionTrackingEnabled = isAutoSessionTrackingEnabled; function getSentryRelease(fallback) { if (process.env.SENTRY_RELEASE) { return process.env.SENTRY_RELEASE; } var global2 = utils_1.getGlobalObject(); if (global2.SENTRY_RELEASE && global2.SENTRY_RELEASE.id) { return global2.SENTRY_RELEASE.id; } return process.env.GITHUB_SHA || process.env.COMMIT_REF || process.env.VERCEL_GIT_COMMIT_SHA || process.env.VERCEL_GITHUB_COMMIT_SHA || process.env.VERCEL_GITLAB_COMMIT_SHA || process.env.VERCEL_BITBUCKET_COMMIT_SHA || process.env.ZEIT_GITHUB_COMMIT_SHA || process.env.ZEIT_GITLAB_COMMIT_SHA || process.env.ZEIT_BITBUCKET_COMMIT_SHA || fallback; } exports.getSentryRelease = getSentryRelease; function startSessionTracking() { var hub = core_1.getCurrentHub(); hub.startSession(); process.on("beforeExit", function() { var _a4; var session = (_a4 = hub.getScope()) === null || _a4 === void 0 ? void 0 : _a4.getSession(); var terminalStates = [types_1.SessionStatus.Exited, types_1.SessionStatus.Crashed]; if (session && !terminalStates.includes(session.status)) hub.endSession(); }); } } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/utils.js var require_utils2 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/utils.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var fs4 = require("fs"); var path5 = require("path"); function deepReadDirSync(targetDir) { var targetDirAbsPath = path5.resolve(targetDir); if (!fs4.existsSync(targetDirAbsPath)) { throw new Error("Cannot read contents of " + targetDirAbsPath + ". Directory does not exist."); } if (!fs4.statSync(targetDirAbsPath).isDirectory()) { throw new Error("Cannot read contents of " + targetDirAbsPath + ", because it is not a directory."); } var deepReadCurrentDir = function(currentDirAbsPath) { return fs4.readdirSync(currentDirAbsPath).reduce(function(absPaths, itemName) { var itemAbsPath = path5.join(currentDirAbsPath, itemName); if (fs4.statSync(itemAbsPath).isDirectory()) { return tslib_1.__spread(absPaths, deepReadCurrentDir(itemAbsPath)); } return tslib_1.__spread(absPaths, [itemAbsPath]); }, []); }; return deepReadCurrentDir(targetDirAbsPath).map(function(absPath) { return path5.relative(targetDirAbsPath, absPath); }); } exports.deepReadDirSync = deepReadDirSync; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/spanstatus.js var require_spanstatus = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/spanstatus.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var SpanStatus; (function(SpanStatus2) { SpanStatus2["Ok"] = "ok"; SpanStatus2["DeadlineExceeded"] = "deadline_exceeded"; SpanStatus2["Unauthenticated"] = "unauthenticated"; SpanStatus2["PermissionDenied"] = "permission_denied"; SpanStatus2["NotFound"] = "not_found"; SpanStatus2["ResourceExhausted"] = "resource_exhausted"; SpanStatus2["InvalidArgument"] = "invalid_argument"; SpanStatus2["Unimplemented"] = "unimplemented"; SpanStatus2["Unavailable"] = "unavailable"; SpanStatus2["InternalError"] = "internal_error"; SpanStatus2["UnknownError"] = "unknown_error"; SpanStatus2["Cancelled"] = "cancelled"; SpanStatus2["AlreadyExists"] = "already_exists"; SpanStatus2["FailedPrecondition"] = "failed_precondition"; SpanStatus2["Aborted"] = "aborted"; SpanStatus2["OutOfRange"] = "out_of_range"; SpanStatus2["DataLoss"] = "data_loss"; })(SpanStatus = exports.SpanStatus || (exports.SpanStatus = {})); (function(SpanStatus2) { function fromHttpCode(httpStatus) { if (httpStatus < 400) { return SpanStatus2.Ok; } if (httpStatus >= 400 && httpStatus < 500) { switch (httpStatus) { case 401: return SpanStatus2.Unauthenticated; case 403: return SpanStatus2.PermissionDenied; case 404: return SpanStatus2.NotFound; case 409: return SpanStatus2.AlreadyExists; case 413: return SpanStatus2.FailedPrecondition; case 429: return SpanStatus2.ResourceExhausted; default: return SpanStatus2.InvalidArgument; } } if (httpStatus >= 500 && httpStatus < 600) { switch (httpStatus) { case 501: return SpanStatus2.Unimplemented; case 503: return SpanStatus2.Unavailable; case 504: return SpanStatus2.DeadlineExceeded; default: return SpanStatus2.InternalError; } } return SpanStatus2.UnknownError; } SpanStatus2.fromHttpCode = fromHttpCode; })(SpanStatus = exports.SpanStatus || (exports.SpanStatus = {})); } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/utils.js var require_utils3 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/utils.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var hub_1 = require_dist5(); exports.TRACEPARENT_REGEXP = new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$"); function hasTracingEnabled(options) { if (options === void 0) { options = (_a4 = hub_1.getCurrentHub().getClient()) === null || _a4 === void 0 ? void 0 : _a4.getOptions(); } var _a4; if (!options) { return false; } return "tracesSampleRate" in options || "tracesSampler" in options; } exports.hasTracingEnabled = hasTracingEnabled; function extractTraceparentData(traceparent) { var matches = traceparent.match(exports.TRACEPARENT_REGEXP); if (matches) { var parentSampled = void 0; if (matches[3] === "1") { parentSampled = true; } else if (matches[3] === "0") { parentSampled = false; } return { traceId: matches[1], parentSampled, parentSpanId: matches[2] }; } return void 0; } exports.extractTraceparentData = extractTraceparentData; function getActiveTransaction(hub) { if (hub === void 0) { hub = hub_1.getCurrentHub(); } var _a4, _b; return (_b = (_a4 = hub) === null || _a4 === void 0 ? void 0 : _a4.getScope()) === null || _b === void 0 ? void 0 : _b.getTransaction(); } exports.getActiveTransaction = getActiveTransaction; function msToSec(time) { return time / 1e3; } exports.msToSec = msToSec; function secToMs(time) { return time * 1e3; } exports.secToMs = secToMs; var utils_1 = require_dist(); exports.stripUrlQueryAndFragment = utils_1.stripUrlQueryAndFragment; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/errors.js var require_errors5 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/errors.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var spanstatus_1 = require_spanstatus(); var utils_2 = require_utils3(); function registerErrorInstrumentation() { utils_1.addInstrumentationHandler({ callback: errorCallback, type: "error" }); utils_1.addInstrumentationHandler({ callback: errorCallback, type: "unhandledrejection" }); } exports.registerErrorInstrumentation = registerErrorInstrumentation; function errorCallback() { var activeTransaction = utils_2.getActiveTransaction(); if (activeTransaction) { utils_1.logger.log("[Tracing] Transaction: " + spanstatus_1.SpanStatus.InternalError + " -> Global error occured"); activeTransaction.setStatus(spanstatus_1.SpanStatus.InternalError); } } } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/span.js var require_span = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/span.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var spanstatus_1 = require_spanstatus(); var SpanRecorder = function() { function SpanRecorder2(maxlen) { if (maxlen === void 0) { maxlen = 1e3; } this.spans = []; this._maxlen = maxlen; } SpanRecorder2.prototype.add = function(span) { if (this.spans.length > this._maxlen) { span.spanRecorder = void 0; } else { this.spans.push(span); } }; return SpanRecorder2; }(); exports.SpanRecorder = SpanRecorder; var Span = function() { function Span2(spanContext) { this.traceId = utils_1.uuid4(); this.spanId = utils_1.uuid4().substring(16); this.startTimestamp = utils_1.timestampWithMs(); this.tags = {}; this.data = {}; if (!spanContext) { return this; } if (spanContext.traceId) { this.traceId = spanContext.traceId; } if (spanContext.spanId) { this.spanId = spanContext.spanId; } if (spanContext.parentSpanId) { this.parentSpanId = spanContext.parentSpanId; } if ("sampled" in spanContext) { this.sampled = spanContext.sampled; } if (spanContext.op) { this.op = spanContext.op; } if (spanContext.description) { this.description = spanContext.description; } if (spanContext.data) { this.data = spanContext.data; } if (spanContext.tags) { this.tags = spanContext.tags; } if (spanContext.status) { this.status = spanContext.status; } if (spanContext.startTimestamp) { this.startTimestamp = spanContext.startTimestamp; } if (spanContext.endTimestamp) { this.endTimestamp = spanContext.endTimestamp; } } Span2.prototype.child = function(spanContext) { return this.startChild(spanContext); }; Span2.prototype.startChild = function(spanContext) { var childSpan = new Span2(tslib_1.__assign(tslib_1.__assign({}, spanContext), { parentSpanId: this.spanId, sampled: this.sampled, traceId: this.traceId })); childSpan.spanRecorder = this.spanRecorder; if (childSpan.spanRecorder) { childSpan.spanRecorder.add(childSpan); } childSpan.transaction = this.transaction; return childSpan; }; Span2.prototype.setTag = function(key, value) { var _a4; this.tags = tslib_1.__assign(tslib_1.__assign({}, this.tags), (_a4 = {}, _a4[key] = value, _a4)); return this; }; Span2.prototype.setData = function(key, value) { var _a4; this.data = tslib_1.__assign(tslib_1.__assign({}, this.data), (_a4 = {}, _a4[key] = value, _a4)); return this; }; Span2.prototype.setStatus = function(value) { this.status = value; return this; }; Span2.prototype.setHttpStatus = function(httpStatus) { this.setTag("http.status_code", String(httpStatus)); var spanStatus = spanstatus_1.SpanStatus.fromHttpCode(httpStatus); if (spanStatus !== spanstatus_1.SpanStatus.UnknownError) { this.setStatus(spanStatus); } return this; }; Span2.prototype.isSuccess = function() { return this.status === spanstatus_1.SpanStatus.Ok; }; Span2.prototype.finish = function(endTimestamp) { this.endTimestamp = typeof endTimestamp === "number" ? endTimestamp : utils_1.timestampWithMs(); }; Span2.prototype.toTraceparent = function() { var sampledString = ""; if (this.sampled !== void 0) { sampledString = this.sampled ? "-1" : "-0"; } return this.traceId + "-" + this.spanId + sampledString; }; Span2.prototype.toContext = function() { return utils_1.dropUndefinedKeys({ data: this.data, description: this.description, endTimestamp: this.endTimestamp, op: this.op, parentSpanId: this.parentSpanId, sampled: this.sampled, spanId: this.spanId, startTimestamp: this.startTimestamp, status: this.status, tags: this.tags, traceId: this.traceId }); }; Span2.prototype.updateWithContext = function(spanContext) { var _a4, _b, _c, _d2, _e; this.data = (_a4 = spanContext.data, _a4 !== null && _a4 !== void 0 ? _a4 : {}); this.description = spanContext.description; this.endTimestamp = spanContext.endTimestamp; this.op = spanContext.op; this.parentSpanId = spanContext.parentSpanId; this.sampled = spanContext.sampled; this.spanId = (_b = spanContext.spanId, _b !== null && _b !== void 0 ? _b : this.spanId); this.startTimestamp = (_c = spanContext.startTimestamp, _c !== null && _c !== void 0 ? _c : this.startTimestamp); this.status = spanContext.status; this.tags = (_d2 = spanContext.tags, _d2 !== null && _d2 !== void 0 ? _d2 : {}); this.traceId = (_e = spanContext.traceId, _e !== null && _e !== void 0 ? _e : this.traceId); return this; }; Span2.prototype.getTraceContext = function() { return utils_1.dropUndefinedKeys({ data: Object.keys(this.data).length > 0 ? this.data : void 0, description: this.description, op: this.op, parent_span_id: this.parentSpanId, span_id: this.spanId, status: this.status, tags: Object.keys(this.tags).length > 0 ? this.tags : void 0, trace_id: this.traceId }); }; Span2.prototype.toJSON = function() { return utils_1.dropUndefinedKeys({ data: Object.keys(this.data).length > 0 ? this.data : void 0, description: this.description, op: this.op, parent_span_id: this.parentSpanId, span_id: this.spanId, start_timestamp: this.startTimestamp, status: this.status, tags: Object.keys(this.tags).length > 0 ? this.tags : void 0, timestamp: this.endTimestamp, trace_id: this.traceId }); }; return Span2; }(); exports.Span = Span; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/transaction.js var require_transaction3 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/transaction.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var hub_1 = require_dist5(); var types_1 = require_dist2(); var utils_1 = require_dist(); var span_1 = require_span(); var Transaction = function(_super) { tslib_1.__extends(Transaction2, _super); function Transaction2(transactionContext, hub) { var _this = _super.call(this, transactionContext) || this; _this._measurements = {}; _this._hub = hub_1.getCurrentHub(); if (utils_1.isInstanceOf(hub, hub_1.Hub)) { _this._hub = hub; } _this.name = transactionContext.name || ""; _this.metadata = transactionContext.metadata || {}; _this._trimEnd = transactionContext.trimEnd; _this.transaction = _this; return _this; } Transaction2.prototype.setName = function(name) { this.name = name; }; Transaction2.prototype.initSpanRecorder = function(maxlen) { if (maxlen === void 0) { maxlen = 1e3; } if (!this.spanRecorder) { this.spanRecorder = new span_1.SpanRecorder(maxlen); } this.spanRecorder.add(this); }; Transaction2.prototype.setMeasurements = function(measurements) { this._measurements = tslib_1.__assign({}, measurements); }; Transaction2.prototype.setMetadata = function(newMetadata) { this.metadata = tslib_1.__assign(tslib_1.__assign({}, this.metadata), newMetadata); }; Transaction2.prototype.finish = function(endTimestamp) { var _this = this; var _a4, _b, _c, _d2, _e; if (this.endTimestamp !== void 0) { return void 0; } if (!this.name) { utils_1.logger.warn("Transaction has no name, falling back to ``."); this.name = ""; } _super.prototype.finish.call(this, endTimestamp); if (this.sampled !== true) { utils_1.logger.log("[Tracing] Discarding transaction because its trace was not chosen to be sampled."); (_e = (_c = (_a4 = this._hub.getClient()) === null || _a4 === void 0 ? void 0 : (_b = _a4).getTransport) === null || _c === void 0 ? void 0 : (_d2 = _c.call(_b)).recordLostEvent) === null || _e === void 0 ? void 0 : _e.call(_d2, types_1.Outcome.SampleRate, "transaction"); return void 0; } var finishedSpans = this.spanRecorder ? this.spanRecorder.spans.filter(function(s2) { return s2 !== _this && s2.endTimestamp; }) : []; if (this._trimEnd && finishedSpans.length > 0) { this.endTimestamp = finishedSpans.reduce(function(prev, current) { if (prev.endTimestamp && current.endTimestamp) { return prev.endTimestamp > current.endTimestamp ? prev : current; } return prev; }).endTimestamp; } var transaction = { contexts: { trace: this.getTraceContext() }, spans: finishedSpans, start_timestamp: this.startTimestamp, tags: this.tags, timestamp: this.endTimestamp, transaction: this.name, type: "transaction", debug_meta: this.metadata }; var hasMeasurements = Object.keys(this._measurements).length > 0; if (hasMeasurements) { utils_1.logger.log("[Measurements] Adding measurements to transaction", JSON.stringify(this._measurements, void 0, 2)); transaction.measurements = this._measurements; } utils_1.logger.log("[Tracing] Finishing " + this.op + " transaction: " + this.name + "."); return this._hub.captureEvent(transaction); }; Transaction2.prototype.toContext = function() { var spanContext = _super.prototype.toContext.call(this); return utils_1.dropUndefinedKeys(tslib_1.__assign(tslib_1.__assign({}, spanContext), { name: this.name, trimEnd: this._trimEnd })); }; Transaction2.prototype.updateWithContext = function(transactionContext) { var _a4; _super.prototype.updateWithContext.call(this, transactionContext); this.name = (_a4 = transactionContext.name, _a4 !== null && _a4 !== void 0 ? _a4 : ""); this._trimEnd = transactionContext.trimEnd; return this; }; return Transaction2; }(span_1.Span); exports.Transaction = Transaction; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/idletransaction.js var require_idletransaction = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/idletransaction.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var span_1 = require_span(); var spanstatus_1 = require_spanstatus(); var transaction_1 = require_transaction3(); exports.DEFAULT_IDLE_TIMEOUT = 1e3; exports.HEARTBEAT_INTERVAL = 5e3; var IdleTransactionSpanRecorder = function(_super) { tslib_1.__extends(IdleTransactionSpanRecorder2, _super); function IdleTransactionSpanRecorder2(_pushActivity, _popActivity, transactionSpanId, maxlen) { if (transactionSpanId === void 0) { transactionSpanId = ""; } var _this = _super.call(this, maxlen) || this; _this._pushActivity = _pushActivity; _this._popActivity = _popActivity; _this.transactionSpanId = transactionSpanId; return _this; } IdleTransactionSpanRecorder2.prototype.add = function(span) { var _this = this; if (span.spanId !== this.transactionSpanId) { span.finish = function(endTimestamp) { span.endTimestamp = typeof endTimestamp === "number" ? endTimestamp : utils_1.timestampWithMs(); _this._popActivity(span.spanId); }; if (span.endTimestamp === void 0) { this._pushActivity(span.spanId); } } _super.prototype.add.call(this, span); }; return IdleTransactionSpanRecorder2; }(span_1.SpanRecorder); exports.IdleTransactionSpanRecorder = IdleTransactionSpanRecorder; var IdleTransaction = function(_super) { tslib_1.__extends(IdleTransaction2, _super); function IdleTransaction2(transactionContext, _idleHub, _idleTimeout, _onScope) { if (_idleTimeout === void 0) { _idleTimeout = exports.DEFAULT_IDLE_TIMEOUT; } if (_onScope === void 0) { _onScope = false; } var _this = _super.call(this, transactionContext, _idleHub) || this; _this._idleHub = _idleHub; _this._idleTimeout = _idleTimeout; _this._onScope = _onScope; _this.activities = {}; _this._heartbeatCounter = 0; _this._finished = false; _this._beforeFinishCallbacks = []; if (_idleHub && _onScope) { clearActiveTransaction(_idleHub); utils_1.logger.log("Setting idle transaction on scope. Span ID: " + _this.spanId); _idleHub.configureScope(function(scope) { return scope.setSpan(_this); }); } _this._initTimeout = setTimeout(function() { if (!_this._finished) { _this.finish(); } }, _this._idleTimeout); return _this; } IdleTransaction2.prototype.finish = function(endTimestamp) { var e_1, _a4; var _this = this; if (endTimestamp === void 0) { endTimestamp = utils_1.timestampWithMs(); } this._finished = true; this.activities = {}; if (this.spanRecorder) { utils_1.logger.log("[Tracing] finishing IdleTransaction", new Date(endTimestamp * 1e3).toISOString(), this.op); try { for (var _b = tslib_1.__values(this._beforeFinishCallbacks), _c = _b.next(); !_c.done; _c = _b.next()) { var callback = _c.value; callback(this, endTimestamp); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a4 = _b.return)) _a4.call(_b); } finally { if (e_1) throw e_1.error; } } this.spanRecorder.spans = this.spanRecorder.spans.filter(function(span) { if (span.spanId === _this.spanId) { return true; } if (!span.endTimestamp) { span.endTimestamp = endTimestamp; span.setStatus(spanstatus_1.SpanStatus.Cancelled); utils_1.logger.log("[Tracing] cancelling span since transaction ended early", JSON.stringify(span, void 0, 2)); } var keepSpan = span.startTimestamp < endTimestamp; if (!keepSpan) { utils_1.logger.log("[Tracing] discarding Span since it happened after Transaction was finished", JSON.stringify(span, void 0, 2)); } return keepSpan; }); utils_1.logger.log("[Tracing] flushing IdleTransaction"); } else { utils_1.logger.log("[Tracing] No active IdleTransaction"); } if (this._onScope) { clearActiveTransaction(this._idleHub); } return _super.prototype.finish.call(this, endTimestamp); }; IdleTransaction2.prototype.registerBeforeFinishCallback = function(callback) { this._beforeFinishCallbacks.push(callback); }; IdleTransaction2.prototype.initSpanRecorder = function(maxlen) { var _this = this; if (!this.spanRecorder) { var pushActivity = function(id) { if (_this._finished) { return; } _this._pushActivity(id); }; var popActivity = function(id) { if (_this._finished) { return; } _this._popActivity(id); }; this.spanRecorder = new IdleTransactionSpanRecorder(pushActivity, popActivity, this.spanId, maxlen); utils_1.logger.log("Starting heartbeat"); this._pingHeartbeat(); } this.spanRecorder.add(this); }; IdleTransaction2.prototype._pushActivity = function(spanId) { if (this._initTimeout) { clearTimeout(this._initTimeout); this._initTimeout = void 0; } utils_1.logger.log("[Tracing] pushActivity: " + spanId); this.activities[spanId] = true; utils_1.logger.log("[Tracing] new activities count", Object.keys(this.activities).length); }; IdleTransaction2.prototype._popActivity = function(spanId) { var _this = this; if (this.activities[spanId]) { utils_1.logger.log("[Tracing] popActivity " + spanId); delete this.activities[spanId]; utils_1.logger.log("[Tracing] new activities count", Object.keys(this.activities).length); } if (Object.keys(this.activities).length === 0) { var timeout = this._idleTimeout; var end_1 = utils_1.timestampWithMs() + timeout / 1e3; setTimeout(function() { if (!_this._finished) { _this.finish(end_1); } }, timeout); } }; IdleTransaction2.prototype._beat = function() { if (this._finished) { return; } var heartbeatString = Object.keys(this.activities).join(""); if (heartbeatString === this._prevHeartbeatString) { this._heartbeatCounter += 1; } else { this._heartbeatCounter = 1; } this._prevHeartbeatString = heartbeatString; if (this._heartbeatCounter >= 3) { utils_1.logger.log("[Tracing] Transaction finished because of no change for 3 heart beats"); this.setStatus(spanstatus_1.SpanStatus.DeadlineExceeded); this.setTag("heartbeat", "failed"); this.finish(); } else { this._pingHeartbeat(); } }; IdleTransaction2.prototype._pingHeartbeat = function() { var _this = this; utils_1.logger.log("pinging Heartbeat -> current counter: " + this._heartbeatCounter); setTimeout(function() { _this._beat(); }, exports.HEARTBEAT_INTERVAL); }; return IdleTransaction2; }(transaction_1.Transaction); exports.IdleTransaction = IdleTransaction; function clearActiveTransaction(hub) { if (hub) { var scope = hub.getScope(); if (scope) { var transaction = scope.getTransaction(); if (transaction) { scope.setSpan(void 0); } } } } } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/hubextensions.js var require_hubextensions = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/hubextensions.js"(exports, module2) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var hub_1 = require_dist5(); var types_1 = require_dist2(); var utils_1 = require_dist(); var errors_1 = require_errors5(); var idletransaction_1 = require_idletransaction(); var transaction_1 = require_transaction3(); var utils_2 = require_utils3(); function traceHeaders() { var scope = this.getScope(); if (scope) { var span = scope.getSpan(); if (span) { return { "sentry-trace": span.toTraceparent() }; } } return {}; } function sample(transaction, options, samplingContext) { if (!utils_2.hasTracingEnabled(options)) { transaction.sampled = false; return transaction; } if (transaction.sampled !== void 0) { transaction.setMetadata({ transactionSampling: { method: types_1.TransactionSamplingMethod.Explicit } }); return transaction; } var sampleRate; if (typeof options.tracesSampler === "function") { sampleRate = options.tracesSampler(samplingContext); transaction.setMetadata({ transactionSampling: { method: types_1.TransactionSamplingMethod.Sampler, rate: Number(sampleRate) } }); } else if (samplingContext.parentSampled !== void 0) { sampleRate = samplingContext.parentSampled; transaction.setMetadata({ transactionSampling: { method: types_1.TransactionSamplingMethod.Inheritance } }); } else { sampleRate = options.tracesSampleRate; transaction.setMetadata({ transactionSampling: { method: types_1.TransactionSamplingMethod.Rate, rate: Number(sampleRate) } }); } if (!isValidSampleRate(sampleRate)) { utils_1.logger.warn("[Tracing] Discarding transaction because of invalid sample rate."); transaction.sampled = false; return transaction; } if (!sampleRate) { utils_1.logger.log("[Tracing] Discarding transaction because " + (typeof options.tracesSampler === "function" ? "tracesSampler returned 0 or false" : "a negative sampling decision was inherited or tracesSampleRate is set to 0")); transaction.sampled = false; return transaction; } transaction.sampled = Math.random() < sampleRate; if (!transaction.sampled) { utils_1.logger.log("[Tracing] Discarding transaction because it's not included in the random sample (sampling rate = " + Number(sampleRate) + ")"); return transaction; } utils_1.logger.log("[Tracing] starting " + transaction.op + " transaction - " + transaction.name); return transaction; } function isValidSampleRate(rate) { if (isNaN(rate) || !(typeof rate === "number" || typeof rate === "boolean")) { utils_1.logger.warn("[Tracing] Given sample rate is invalid. Sample rate must be a boolean or a number between 0 and 1. Got " + JSON.stringify(rate) + " of type " + JSON.stringify(typeof rate) + "."); return false; } if (rate < 0 || rate > 1) { utils_1.logger.warn("[Tracing] Given sample rate is invalid. Sample rate must be between 0 and 1. Got " + rate + "."); return false; } return true; } function _startTransaction(transactionContext, customSamplingContext) { var _a4, _b; var options = ((_a4 = this.getClient()) === null || _a4 === void 0 ? void 0 : _a4.getOptions()) || {}; var transaction = new transaction_1.Transaction(transactionContext, this); transaction = sample(transaction, options, tslib_1.__assign({ parentSampled: transactionContext.parentSampled, transactionContext }, customSamplingContext)); if (transaction.sampled) { transaction.initSpanRecorder((_b = options._experiments) === null || _b === void 0 ? void 0 : _b.maxSpans); } return transaction; } function startIdleTransaction(hub, transactionContext, idleTimeout, onScope, customSamplingContext) { var _a4, _b; var options = ((_a4 = hub.getClient()) === null || _a4 === void 0 ? void 0 : _a4.getOptions()) || {}; var transaction = new idletransaction_1.IdleTransaction(transactionContext, hub, idleTimeout, onScope); transaction = sample(transaction, options, tslib_1.__assign({ parentSampled: transactionContext.parentSampled, transactionContext }, customSamplingContext)); if (transaction.sampled) { transaction.initSpanRecorder((_b = options._experiments) === null || _b === void 0 ? void 0 : _b.maxSpans); } return transaction; } exports.startIdleTransaction = startIdleTransaction; function _addTracingExtensions() { var carrier = hub_1.getMainCarrier(); if (!carrier.__SENTRY__) { return; } carrier.__SENTRY__.extensions = carrier.__SENTRY__.extensions || {}; if (!carrier.__SENTRY__.extensions.startTransaction) { carrier.__SENTRY__.extensions.startTransaction = _startTransaction; } if (!carrier.__SENTRY__.extensions.traceHeaders) { carrier.__SENTRY__.extensions.traceHeaders = traceHeaders; } } exports._addTracingExtensions = _addTracingExtensions; function _autoloadDatabaseIntegrations() { var carrier = hub_1.getMainCarrier(); if (!carrier.__SENTRY__) { return; } var packageToIntegrationMapping = { mongodb: function() { var integration = utils_1.dynamicRequire(module2, "./integrations/node/mongo"); return new integration.Mongo(); }, mongoose: function() { var integration = utils_1.dynamicRequire(module2, "./integrations/node/mongo"); return new integration.Mongo({ mongoose: true }); }, mysql: function() { var integration = utils_1.dynamicRequire(module2, "./integrations/node/mysql"); return new integration.Mysql(); }, pg: function() { var integration = utils_1.dynamicRequire(module2, "./integrations/node/postgres"); return new integration.Postgres(); } }; var mappedPackages = Object.keys(packageToIntegrationMapping).filter(function(moduleName) { return !!utils_1.loadModule(moduleName); }).map(function(pkg) { try { return packageToIntegrationMapping[pkg](); } catch (e2) { return void 0; } }).filter(function(p) { return p; }); if (mappedPackages.length > 0) { carrier.__SENTRY__.integrations = tslib_1.__spread(carrier.__SENTRY__.integrations || [], mappedPackages); } } function addExtensionMethods() { _addTracingExtensions(); if (utils_1.isNodeEnv()) { _autoloadDatabaseIntegrations(); } errors_1.registerErrorInstrumentation(); } exports.addExtensionMethods = addExtensionMethods; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/backgroundtab.js var require_backgroundtab = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/backgroundtab.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var spanstatus_1 = require_spanstatus(); var utils_2 = require_utils3(); var global2 = utils_1.getGlobalObject(); function registerBackgroundTabDetection() { if (global2 && global2.document) { global2.document.addEventListener("visibilitychange", function() { var activeTransaction = utils_2.getActiveTransaction(); if (global2.document.hidden && activeTransaction) { utils_1.logger.log("[Tracing] Transaction: " + spanstatus_1.SpanStatus.Cancelled + " -> since tab moved to the background, op: " + activeTransaction.op); if (!activeTransaction.status) { activeTransaction.setStatus(spanstatus_1.SpanStatus.Cancelled); } activeTransaction.setTag("visibilitychange", "document.hidden"); activeTransaction.finish(); } }); } else { utils_1.logger.warn("[Tracing] Could not set up background tab detection due to lack of global document"); } } exports.registerBackgroundTabDetection = registerBackgroundTabDetection; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/bindReporter.js var require_bindReporter = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/bindReporter.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.bindReporter = function(callback, metric, reportAllChanges) { var prevValue; return function(forceReport) { if (metric.value >= 0) { if (forceReport || reportAllChanges) { metric.delta = metric.value - (prevValue || 0); if (metric.delta || prevValue === void 0) { prevValue = metric.value; callback(metric); } } } }; }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/generateUniqueID.js var require_generateUniqueID = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/generateUniqueID.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.generateUniqueID = function() { return "v2-" + Date.now() + "-" + (Math.floor(Math.random() * (9e12 - 1)) + 1e12); }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/initMetric.js var require_initMetric = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/initMetric.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var generateUniqueID_1 = require_generateUniqueID(); exports.initMetric = function(name, value) { return { name, value: value !== null && value !== void 0 ? value : -1, delta: 0, entries: [], id: generateUniqueID_1.generateUniqueID() }; }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/observe.js var require_observe = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/observe.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.observe = function(type, callback) { try { if (PerformanceObserver.supportedEntryTypes.includes(type)) { if (type === "first-input" && !("PerformanceEventTiming" in self)) { return; } var po = new PerformanceObserver(function(l) { return l.getEntries().map(callback); }); po.observe({ type, buffered: true }); return po; } } catch (e2) { } return; }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/onHidden.js var require_onHidden = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/onHidden.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); exports.onHidden = function(cb, once) { var onHiddenOrPageHide = function(event) { if (event.type === "pagehide" || utils_1.getGlobalObject().document.visibilityState === "hidden") { cb(event); if (once) { removeEventListener("visibilitychange", onHiddenOrPageHide, true); removeEventListener("pagehide", onHiddenOrPageHide, true); } } }; addEventListener("visibilitychange", onHiddenOrPageHide, true); addEventListener("pagehide", onHiddenOrPageHide, true); }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/getCLS.js var require_getCLS = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/getCLS.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var bindReporter_1 = require_bindReporter(); var initMetric_1 = require_initMetric(); var observe_1 = require_observe(); var onHidden_1 = require_onHidden(); exports.getCLS = function(onReport, reportAllChanges) { var metric = initMetric_1.initMetric("CLS", 0); var report; var sessionValue = 0; var sessionEntries = []; var entryHandler = function(entry) { if (entry && !entry.hadRecentInput) { var firstSessionEntry = sessionEntries[0]; var lastSessionEntry = sessionEntries[sessionEntries.length - 1]; if (sessionValue && sessionEntries.length !== 0 && entry.startTime - lastSessionEntry.startTime < 1e3 && entry.startTime - firstSessionEntry.startTime < 5e3) { sessionValue += entry.value; sessionEntries.push(entry); } else { sessionValue = entry.value; sessionEntries = [entry]; } if (sessionValue > metric.value) { metric.value = sessionValue; metric.entries = sessionEntries; if (report) { report(); } } } }; var po = observe_1.observe("layout-shift", entryHandler); if (po) { report = bindReporter_1.bindReporter(onReport, metric, reportAllChanges); onHidden_1.onHidden(function() { po.takeRecords().map(entryHandler); report(true); }); } }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/getVisibilityWatcher.js var require_getVisibilityWatcher = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/lib/getVisibilityWatcher.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var onHidden_1 = require_onHidden(); var firstHiddenTime = -1; var initHiddenTime = function() { return utils_1.getGlobalObject().document.visibilityState === "hidden" ? 0 : Infinity; }; var trackChanges = function() { onHidden_1.onHidden(function(_a4) { var timeStamp = _a4.timeStamp; firstHiddenTime = timeStamp; }, true); }; exports.getVisibilityWatcher = function() { if (firstHiddenTime < 0) { firstHiddenTime = initHiddenTime(); trackChanges(); } return { get firstHiddenTime() { return firstHiddenTime; } }; }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/getFID.js var require_getFID = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/getFID.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var bindReporter_1 = require_bindReporter(); var getVisibilityWatcher_1 = require_getVisibilityWatcher(); var initMetric_1 = require_initMetric(); var observe_1 = require_observe(); var onHidden_1 = require_onHidden(); exports.getFID = function(onReport, reportAllChanges) { var visibilityWatcher = getVisibilityWatcher_1.getVisibilityWatcher(); var metric = initMetric_1.initMetric("FID"); var report; var entryHandler = function(entry) { if (report && entry.startTime < visibilityWatcher.firstHiddenTime) { metric.value = entry.processingStart - entry.startTime; metric.entries.push(entry); report(true); } }; var po = observe_1.observe("first-input", entryHandler); if (po) { report = bindReporter_1.bindReporter(onReport, metric, reportAllChanges); onHidden_1.onHidden(function() { po.takeRecords().map(entryHandler); po.disconnect(); }, true); } }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/getLCP.js var require_getLCP = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/web-vitals/getLCP.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var bindReporter_1 = require_bindReporter(); var getVisibilityWatcher_1 = require_getVisibilityWatcher(); var initMetric_1 = require_initMetric(); var observe_1 = require_observe(); var onHidden_1 = require_onHidden(); var reportedMetricIDs = {}; exports.getLCP = function(onReport, reportAllChanges) { var visibilityWatcher = getVisibilityWatcher_1.getVisibilityWatcher(); var metric = initMetric_1.initMetric("LCP"); var report; var entryHandler = function(entry) { var value = entry.startTime; if (value < visibilityWatcher.firstHiddenTime) { metric.value = value; metric.entries.push(entry); } if (report) { report(); } }; var po = observe_1.observe("largest-contentful-paint", entryHandler); if (po) { report = bindReporter_1.bindReporter(onReport, metric, reportAllChanges); var stopListening_1 = function() { if (!reportedMetricIDs[metric.id]) { po.takeRecords().map(entryHandler); po.disconnect(); reportedMetricIDs[metric.id] = true; report(true); } }; ["keydown", "click"].forEach(function(type) { addEventListener(type, stopListening_1, { once: true, capture: true }); }); onHidden_1.onHidden(stopListening_1, true); } }; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/metrics.js var require_metrics = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/metrics.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var utils_2 = require_utils3(); var getCLS_1 = require_getCLS(); var getFID_1 = require_getFID(); var getLCP_1 = require_getLCP(); var getVisibilityWatcher_1 = require_getVisibilityWatcher(); var global2 = utils_1.getGlobalObject(); exports.DEFAULT_METRICS_INSTR_OPTIONS = { _reportAllChanges: false }; var MetricsInstrumentation = function() { function MetricsInstrumentation2(_options) { var _a4, _b; this._measurements = {}; this._performanceCursor = 0; if (!utils_1.isNodeEnv() && ((_a4 = global2) === null || _a4 === void 0 ? void 0 : _a4.performance) && ((_b = global2) === null || _b === void 0 ? void 0 : _b.document)) { if (global2.performance.mark) { global2.performance.mark("sentry-tracing-init"); } this._trackCLS(); this._trackLCP(_options._reportAllChanges); this._trackFID(); } } MetricsInstrumentation2.prototype.addPerformanceEntries = function(transaction) { var _this = this; if (!global2 || !global2.performance || !global2.performance.getEntries || !utils_1.browserPerformanceTimeOrigin) { return; } utils_1.logger.log("[Tracing] Adding & adjusting spans using Performance API"); var timeOrigin = utils_2.msToSec(utils_1.browserPerformanceTimeOrigin); var entryScriptSrc; if (global2.document && global2.document.scripts) { for (var i2 = 0; i2 < global2.document.scripts.length; i2++) { if (global2.document.scripts[i2].dataset.entry === "true") { entryScriptSrc = global2.document.scripts[i2].src; break; } } } var entryScriptStartTimestamp; var tracingInitMarkStartTime; var responseStartTimestamp; var requestStartTimestamp; global2.performance.getEntries().slice(this._performanceCursor).forEach(function(entry) { var startTime = utils_2.msToSec(entry.startTime); var duration = utils_2.msToSec(entry.duration); if (transaction.op === "navigation" && timeOrigin + startTime < transaction.startTimestamp) { return; } switch (entry.entryType) { case "navigation": { addNavigationSpans(transaction, entry, timeOrigin); responseStartTimestamp = timeOrigin + utils_2.msToSec(entry.responseStart); requestStartTimestamp = timeOrigin + utils_2.msToSec(entry.requestStart); break; } case "mark": case "paint": case "measure": { var startTimestamp = addMeasureSpans(transaction, entry, startTime, duration, timeOrigin); if (tracingInitMarkStartTime === void 0 && entry.name === "sentry-tracing-init") { tracingInitMarkStartTime = startTimestamp; } var firstHidden = getVisibilityWatcher_1.getVisibilityWatcher(); var shouldRecord = entry.startTime < firstHidden.firstHiddenTime; if (entry.name === "first-paint" && shouldRecord) { utils_1.logger.log("[Measurements] Adding FP"); _this._measurements["fp"] = { value: entry.startTime }; _this._measurements["mark.fp"] = { value: startTimestamp }; } if (entry.name === "first-contentful-paint" && shouldRecord) { utils_1.logger.log("[Measurements] Adding FCP"); _this._measurements["fcp"] = { value: entry.startTime }; _this._measurements["mark.fcp"] = { value: startTimestamp }; } break; } case "resource": { var resourceName = entry.name.replace(global2.location.origin, ""); var endTimestamp = addResourceSpans(transaction, entry, resourceName, startTime, duration, timeOrigin); if (entryScriptStartTimestamp === void 0 && (entryScriptSrc || "").indexOf(resourceName) > -1) { entryScriptStartTimestamp = endTimestamp; } break; } default: } }); if (entryScriptStartTimestamp !== void 0 && tracingInitMarkStartTime !== void 0) { _startChild(transaction, { description: "evaluation", endTimestamp: tracingInitMarkStartTime, op: "script", startTimestamp: entryScriptStartTimestamp }); } this._performanceCursor = Math.max(performance.getEntries().length - 1, 0); this._trackNavigator(transaction); if (transaction.op === "pageload") { var timeOrigin_1 = utils_2.msToSec(utils_1.browserPerformanceTimeOrigin); if (typeof responseStartTimestamp === "number") { utils_1.logger.log("[Measurements] Adding TTFB"); this._measurements["ttfb"] = { value: (responseStartTimestamp - transaction.startTimestamp) * 1e3 }; if (typeof requestStartTimestamp === "number" && requestStartTimestamp <= responseStartTimestamp) { this._measurements["ttfb.requestTime"] = { value: (responseStartTimestamp - requestStartTimestamp) * 1e3 }; } } ["fcp", "fp", "lcp"].forEach(function(name) { if (!_this._measurements[name] || timeOrigin_1 >= transaction.startTimestamp) { return; } var oldValue = _this._measurements[name].value; var measurementTimestamp = timeOrigin_1 + utils_2.msToSec(oldValue); var normalizedValue = Math.abs((measurementTimestamp - transaction.startTimestamp) * 1e3); var delta = normalizedValue - oldValue; utils_1.logger.log("[Measurements] Normalized " + name + " from " + oldValue + " to " + normalizedValue + " (" + delta + ")"); _this._measurements[name].value = normalizedValue; }); if (this._measurements["mark.fid"] && this._measurements["fid"]) { _startChild(transaction, { description: "first input delay", endTimestamp: this._measurements["mark.fid"].value + utils_2.msToSec(this._measurements["fid"].value), op: "web.vitals", startTimestamp: this._measurements["mark.fid"].value }); } if (!("fcp" in this._measurements)) { delete this._measurements.cls; } transaction.setMeasurements(this._measurements); this._tagMetricInfo(transaction); } }; MetricsInstrumentation2.prototype._tagMetricInfo = function(transaction) { if (this._lcpEntry) { utils_1.logger.log("[Measurements] Adding LCP Data"); if (this._lcpEntry.element) { transaction.setTag("lcp.element", utils_1.htmlTreeAsString(this._lcpEntry.element)); } if (this._lcpEntry.id) { transaction.setTag("lcp.id", this._lcpEntry.id); } if (this._lcpEntry.url) { transaction.setTag("lcp.url", this._lcpEntry.url.trim().slice(0, 200)); } transaction.setTag("lcp.size", this._lcpEntry.size); } if (this._clsEntry && this._clsEntry.sources) { utils_1.logger.log("[Measurements] Adding CLS Data"); this._clsEntry.sources.forEach(function(source2, index) { return transaction.setTag("cls.source." + (index + 1), utils_1.htmlTreeAsString(source2.node)); }); } }; MetricsInstrumentation2.prototype._trackCLS = function() { var _this = this; getCLS_1.getCLS(function(metric) { var entry = metric.entries.pop(); if (!entry) { return; } utils_1.logger.log("[Measurements] Adding CLS"); _this._measurements["cls"] = { value: metric.value }; _this._clsEntry = entry; }); }; MetricsInstrumentation2.prototype._trackNavigator = function(transaction) { var navigator2 = global2.navigator; if (!navigator2) { return; } var connection = navigator2.connection; if (connection) { if (connection.effectiveType) { transaction.setTag("effectiveConnectionType", connection.effectiveType); } if (connection.type) { transaction.setTag("connectionType", connection.type); } if (isMeasurementValue(connection.rtt)) { this._measurements["connection.rtt"] = { value: connection.rtt }; } if (isMeasurementValue(connection.downlink)) { this._measurements["connection.downlink"] = { value: connection.downlink }; } } if (isMeasurementValue(navigator2.deviceMemory)) { transaction.setTag("deviceMemory", String(navigator2.deviceMemory)); } if (isMeasurementValue(navigator2.hardwareConcurrency)) { transaction.setTag("hardwareConcurrency", String(navigator2.hardwareConcurrency)); } }; MetricsInstrumentation2.prototype._trackLCP = function(reportAllChanges) { var _this = this; getLCP_1.getLCP(function(metric) { var entry = metric.entries.pop(); if (!entry) { return; } var timeOrigin = utils_2.msToSec(utils_1.browserPerformanceTimeOrigin); var startTime = utils_2.msToSec(entry.startTime); utils_1.logger.log("[Measurements] Adding LCP"); _this._measurements["lcp"] = { value: metric.value }; _this._measurements["mark.lcp"] = { value: timeOrigin + startTime }; _this._lcpEntry = entry; }, reportAllChanges); }; MetricsInstrumentation2.prototype._trackFID = function() { var _this = this; getFID_1.getFID(function(metric) { var entry = metric.entries.pop(); if (!entry) { return; } var timeOrigin = utils_2.msToSec(utils_1.browserPerformanceTimeOrigin); var startTime = utils_2.msToSec(entry.startTime); utils_1.logger.log("[Measurements] Adding FID"); _this._measurements["fid"] = { value: metric.value }; _this._measurements["mark.fid"] = { value: timeOrigin + startTime }; }); }; return MetricsInstrumentation2; }(); exports.MetricsInstrumentation = MetricsInstrumentation; function addNavigationSpans(transaction, entry, timeOrigin) { addPerformanceNavigationTiming({ transaction, entry, event: "unloadEvent", timeOrigin }); addPerformanceNavigationTiming({ transaction, entry, event: "redirect", timeOrigin }); addPerformanceNavigationTiming({ transaction, entry, event: "domContentLoadedEvent", timeOrigin }); addPerformanceNavigationTiming({ transaction, entry, event: "loadEvent", timeOrigin }); addPerformanceNavigationTiming({ transaction, entry, event: "connect", timeOrigin }); addPerformanceNavigationTiming({ transaction, entry, event: "secureConnection", timeOrigin, eventEnd: "connectEnd", description: "TLS/SSL" }); addPerformanceNavigationTiming({ transaction, entry, event: "fetch", timeOrigin, eventEnd: "domainLookupStart", description: "cache" }); addPerformanceNavigationTiming({ transaction, entry, event: "domainLookup", timeOrigin, description: "DNS" }); addRequest(transaction, entry, timeOrigin); } function addMeasureSpans(transaction, entry, startTime, duration, timeOrigin) { var measureStartTimestamp = timeOrigin + startTime; var measureEndTimestamp = measureStartTimestamp + duration; _startChild(transaction, { description: entry.name, endTimestamp: measureEndTimestamp, op: entry.entryType, startTimestamp: measureStartTimestamp }); return measureStartTimestamp; } function addResourceSpans(transaction, entry, resourceName, startTime, duration, timeOrigin) { if (entry.initiatorType === "xmlhttprequest" || entry.initiatorType === "fetch") { return void 0; } var data = {}; if ("transferSize" in entry) { data["Transfer Size"] = entry.transferSize; } if ("encodedBodySize" in entry) { data["Encoded Body Size"] = entry.encodedBodySize; } if ("decodedBodySize" in entry) { data["Decoded Body Size"] = entry.decodedBodySize; } var startTimestamp = timeOrigin + startTime; var endTimestamp = startTimestamp + duration; _startChild(transaction, { description: resourceName, endTimestamp, op: entry.initiatorType ? "resource." + entry.initiatorType : "resource", startTimestamp, data }); return endTimestamp; } exports.addResourceSpans = addResourceSpans; function addPerformanceNavigationTiming(props) { var transaction = props.transaction, entry = props.entry, event = props.event, timeOrigin = props.timeOrigin, eventEnd = props.eventEnd, description = props.description; var end = eventEnd ? entry[eventEnd] : entry[event + "End"]; var start = entry[event + "Start"]; if (!start || !end) { return; } _startChild(transaction, { op: "browser", description: description !== null && description !== void 0 ? description : event, startTimestamp: timeOrigin + utils_2.msToSec(start), endTimestamp: timeOrigin + utils_2.msToSec(end) }); } function addRequest(transaction, entry, timeOrigin) { _startChild(transaction, { op: "browser", description: "request", startTimestamp: timeOrigin + utils_2.msToSec(entry.requestStart), endTimestamp: timeOrigin + utils_2.msToSec(entry.responseEnd) }); _startChild(transaction, { op: "browser", description: "response", startTimestamp: timeOrigin + utils_2.msToSec(entry.responseStart), endTimestamp: timeOrigin + utils_2.msToSec(entry.responseEnd) }); } function _startChild(transaction, _a4) { var startTimestamp = _a4.startTimestamp, ctx = tslib_1.__rest(_a4, ["startTimestamp"]); if (startTimestamp && transaction.startTimestamp > startTimestamp) { transaction.startTimestamp = startTimestamp; } return transaction.startChild(tslib_1.__assign({ startTimestamp }, ctx)); } exports._startChild = _startChild; function isMeasurementValue(value) { return typeof value === "number" && isFinite(value); } } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/request.js var require_request2 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/request.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var spanstatus_1 = require_spanstatus(); var utils_2 = require_utils3(); exports.DEFAULT_TRACING_ORIGINS = ["localhost", /^\//]; exports.defaultRequestInstrumentationOptions = { traceFetch: true, traceXHR: true, tracingOrigins: exports.DEFAULT_TRACING_ORIGINS }; function instrumentOutgoingRequests(_options) { var _a4 = tslib_1.__assign(tslib_1.__assign({}, exports.defaultRequestInstrumentationOptions), _options), traceFetch = _a4.traceFetch, traceXHR = _a4.traceXHR, tracingOrigins = _a4.tracingOrigins, shouldCreateSpanForRequest = _a4.shouldCreateSpanForRequest; var urlMap = {}; var defaultShouldCreateSpan = function(url) { if (urlMap[url]) { return urlMap[url]; } var origins = tracingOrigins; urlMap[url] = origins.some(function(origin) { return utils_1.isMatchingPattern(url, origin); }) && !utils_1.isMatchingPattern(url, "sentry_key"); return urlMap[url]; }; var shouldCreateSpan = defaultShouldCreateSpan; if (typeof shouldCreateSpanForRequest === "function") { shouldCreateSpan = function(url) { return defaultShouldCreateSpan(url) && shouldCreateSpanForRequest(url); }; } var spans = {}; if (traceFetch) { utils_1.addInstrumentationHandler({ callback: function(handlerData) { fetchCallback(handlerData, shouldCreateSpan, spans); }, type: "fetch" }); } if (traceXHR) { utils_1.addInstrumentationHandler({ callback: function(handlerData) { xhrCallback(handlerData, shouldCreateSpan, spans); }, type: "xhr" }); } } exports.instrumentOutgoingRequests = instrumentOutgoingRequests; function fetchCallback(handlerData, shouldCreateSpan, spans) { if (!utils_2.hasTracingEnabled() || !(handlerData.fetchData && shouldCreateSpan(handlerData.fetchData.url))) { return; } if (handlerData.endTimestamp && handlerData.fetchData.__span) { var span = spans[handlerData.fetchData.__span]; if (span) { if (handlerData.response) { span.setHttpStatus(handlerData.response.status); } else if (handlerData.error) { span.setStatus(spanstatus_1.SpanStatus.InternalError); } span.finish(); delete spans[handlerData.fetchData.__span]; } return; } var activeTransaction = utils_2.getActiveTransaction(); if (activeTransaction) { var span = activeTransaction.startChild({ data: tslib_1.__assign(tslib_1.__assign({}, handlerData.fetchData), { type: "fetch" }), description: handlerData.fetchData.method + " " + handlerData.fetchData.url, op: "http.client" }); handlerData.fetchData.__span = span.spanId; spans[span.spanId] = span; var request = handlerData.args[0] = handlerData.args[0]; var options = handlerData.args[1] = handlerData.args[1] || {}; var headers = options.headers; if (utils_1.isInstanceOf(request, Request)) { headers = request.headers; } if (headers) { if (typeof headers.append === "function") { headers.append("sentry-trace", span.toTraceparent()); } else if (Array.isArray(headers)) { headers = tslib_1.__spread(headers, [["sentry-trace", span.toTraceparent()]]); } else { headers = tslib_1.__assign(tslib_1.__assign({}, headers), { "sentry-trace": span.toTraceparent() }); } } else { headers = { "sentry-trace": span.toTraceparent() }; } options.headers = headers; } } exports.fetchCallback = fetchCallback; function xhrCallback(handlerData, shouldCreateSpan, spans) { var _a4, _b; if (!utils_2.hasTracingEnabled() || ((_a4 = handlerData.xhr) === null || _a4 === void 0 ? void 0 : _a4.__sentry_own_request__) || !(((_b = handlerData.xhr) === null || _b === void 0 ? void 0 : _b.__sentry_xhr__) && shouldCreateSpan(handlerData.xhr.__sentry_xhr__.url))) { return; } var xhr = handlerData.xhr.__sentry_xhr__; if (handlerData.endTimestamp && handlerData.xhr.__sentry_xhr_span_id__) { var span = spans[handlerData.xhr.__sentry_xhr_span_id__]; if (span) { span.setHttpStatus(xhr.status_code); span.finish(); delete spans[handlerData.xhr.__sentry_xhr_span_id__]; } return; } var activeTransaction = utils_2.getActiveTransaction(); if (activeTransaction) { var span = activeTransaction.startChild({ data: tslib_1.__assign(tslib_1.__assign({}, xhr.data), { type: "xhr", method: xhr.method, url: xhr.url }), description: xhr.method + " " + xhr.url, op: "http.client" }); handlerData.xhr.__sentry_xhr_span_id__ = span.spanId; spans[handlerData.xhr.__sentry_xhr_span_id__] = span; if (handlerData.xhr.setRequestHeader) { try { handlerData.xhr.setRequestHeader("sentry-trace", span.toTraceparent()); } catch (_) { } } } } exports.xhrCallback = xhrCallback; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/router.js var require_router = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/router.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var global2 = utils_1.getGlobalObject(); function instrumentRoutingWithDefaults(customStartTransaction, startTransactionOnPageLoad, startTransactionOnLocationChange) { if (startTransactionOnPageLoad === void 0) { startTransactionOnPageLoad = true; } if (startTransactionOnLocationChange === void 0) { startTransactionOnLocationChange = true; } if (!global2 || !global2.location) { utils_1.logger.warn("Could not initialize routing instrumentation due to invalid location"); return; } var startingUrl = global2.location.href; var activeTransaction; if (startTransactionOnPageLoad) { activeTransaction = customStartTransaction({ name: global2.location.pathname, op: "pageload" }); } if (startTransactionOnLocationChange) { utils_1.addInstrumentationHandler({ callback: function(_a4) { var to = _a4.to, from = _a4.from; if (from === void 0 && startingUrl && startingUrl.indexOf(to) !== -1) { startingUrl = void 0; return; } if (from !== to) { startingUrl = void 0; if (activeTransaction) { utils_1.logger.log("[Tracing] Finishing current transaction with op: " + activeTransaction.op); activeTransaction.finish(); } activeTransaction = customStartTransaction({ name: global2.location.pathname, op: "navigation" }); } }, type: "history" }); } } exports.instrumentRoutingWithDefaults = instrumentRoutingWithDefaults; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/browsertracing.js var require_browsertracing = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/browsertracing.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var hubextensions_1 = require_hubextensions(); var idletransaction_1 = require_idletransaction(); var spanstatus_1 = require_spanstatus(); var utils_2 = require_utils3(); var backgroundtab_1 = require_backgroundtab(); var metrics_1 = require_metrics(); var request_1 = require_request2(); var router_1 = require_router(); exports.DEFAULT_MAX_TRANSACTION_DURATION_SECONDS = 600; var DEFAULT_BROWSER_TRACING_OPTIONS = tslib_1.__assign({ idleTimeout: idletransaction_1.DEFAULT_IDLE_TIMEOUT, markBackgroundTransactions: true, maxTransactionDuration: exports.DEFAULT_MAX_TRANSACTION_DURATION_SECONDS, routingInstrumentation: router_1.instrumentRoutingWithDefaults, startTransactionOnLocationChange: true, startTransactionOnPageLoad: true }, request_1.defaultRequestInstrumentationOptions); var BrowserTracing = function() { function BrowserTracing2(_options) { this.name = BrowserTracing2.id; this._emitOptionsWarning = false; var tracingOrigins = request_1.defaultRequestInstrumentationOptions.tracingOrigins; if (_options && _options.tracingOrigins && Array.isArray(_options.tracingOrigins) && _options.tracingOrigins.length !== 0) { tracingOrigins = _options.tracingOrigins; } else { this._emitOptionsWarning = true; } this.options = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, DEFAULT_BROWSER_TRACING_OPTIONS), _options), { tracingOrigins }); this._metrics = new metrics_1.MetricsInstrumentation(tslib_1.__assign(tslib_1.__assign({}, metrics_1.DEFAULT_METRICS_INSTR_OPTIONS), this.options._metricOptions)); } BrowserTracing2.prototype.setupOnce = function(_, getCurrentHub) { var _this = this; this._getCurrentHub = getCurrentHub; if (this._emitOptionsWarning) { utils_1.logger.warn("[Tracing] You need to define `tracingOrigins` in the options. Set an array of urls or patterns to trace."); utils_1.logger.warn("[Tracing] We added a reasonable default for you: " + request_1.defaultRequestInstrumentationOptions.tracingOrigins); } var _a4 = this.options, instrumentRouting = _a4.routingInstrumentation, startTransactionOnLocationChange = _a4.startTransactionOnLocationChange, startTransactionOnPageLoad = _a4.startTransactionOnPageLoad, markBackgroundTransactions = _a4.markBackgroundTransactions, traceFetch = _a4.traceFetch, traceXHR = _a4.traceXHR, tracingOrigins = _a4.tracingOrigins, shouldCreateSpanForRequest = _a4.shouldCreateSpanForRequest; instrumentRouting(function(context) { return _this._createRouteTransaction(context); }, startTransactionOnPageLoad, startTransactionOnLocationChange); if (markBackgroundTransactions) { backgroundtab_1.registerBackgroundTabDetection(); } request_1.instrumentOutgoingRequests({ traceFetch, traceXHR, tracingOrigins, shouldCreateSpanForRequest }); }; BrowserTracing2.prototype._createRouteTransaction = function(context) { var _this = this; if (!this._getCurrentHub) { utils_1.logger.warn("[Tracing] Did not create " + context.op + " transaction because _getCurrentHub is invalid."); return void 0; } var _a4 = this.options, beforeNavigate = _a4.beforeNavigate, idleTimeout = _a4.idleTimeout, maxTransactionDuration = _a4.maxTransactionDuration; var parentContextFromHeader = context.op === "pageload" ? getHeaderContext() : void 0; var expandedContext = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, context), parentContextFromHeader), { trimEnd: true }); var modifiedContext = typeof beforeNavigate === "function" ? beforeNavigate(expandedContext) : expandedContext; var finalContext = modifiedContext === void 0 ? tslib_1.__assign(tslib_1.__assign({}, expandedContext), { sampled: false }) : modifiedContext; if (finalContext.sampled === false) { utils_1.logger.log("[Tracing] Will not send " + finalContext.op + " transaction because of beforeNavigate."); } utils_1.logger.log("[Tracing] Starting " + finalContext.op + " transaction on scope"); var hub = this._getCurrentHub(); var location = utils_1.getGlobalObject().location; var idleTransaction = hubextensions_1.startIdleTransaction(hub, finalContext, idleTimeout, true, { location }); idleTransaction.registerBeforeFinishCallback(function(transaction, endTimestamp) { _this._metrics.addPerformanceEntries(transaction); adjustTransactionDuration(utils_2.secToMs(maxTransactionDuration), transaction, endTimestamp); }); return idleTransaction; }; BrowserTracing2.id = "BrowserTracing"; return BrowserTracing2; }(); exports.BrowserTracing = BrowserTracing; function getHeaderContext() { var header = getMetaContent("sentry-trace"); if (header) { return utils_2.extractTraceparentData(header); } return void 0; } exports.getHeaderContext = getHeaderContext; function getMetaContent(metaName) { var el = utils_1.getGlobalObject().document.querySelector("meta[name=" + metaName + "]"); return el ? el.getAttribute("content") : null; } exports.getMetaContent = getMetaContent; function adjustTransactionDuration(maxDuration, transaction, endTimestamp) { var diff = endTimestamp - transaction.startTimestamp; var isOutdatedTransaction = endTimestamp && (diff > maxDuration || diff < 0); if (isOutdatedTransaction) { transaction.setStatus(spanstatus_1.SpanStatus.DeadlineExceeded); transaction.setTag("maxTransactionDurationExceeded", "true"); } } } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/index.js var require_browser3 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/browser/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var browsertracing_1 = require_browsertracing(); exports.BrowserTracing = browsertracing_1.BrowserTracing; var request_1 = require_request2(); exports.instrumentOutgoingRequests = request_1.instrumentOutgoingRequests; exports.defaultRequestInstrumentationOptions = request_1.defaultRequestInstrumentationOptions; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/express.js var require_express = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/express.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var Express = function() { function Express2(options) { if (options === void 0) { options = {}; } this.name = Express2.id; this._router = options.router || options.app; this._methods = (Array.isArray(options.methods) ? options.methods : []).concat("use"); } Express2.prototype.setupOnce = function() { if (!this._router) { utils_1.logger.error("ExpressIntegration is missing an Express instance"); return; } instrumentMiddlewares(this._router, this._methods); }; Express2.id = "Express"; return Express2; }(); exports.Express = Express; function wrap(fn, method) { var arity = fn.length; switch (arity) { case 2: { return function(req, res) { var transaction = res.__sentry_transaction; if (transaction) { var span_1 = transaction.startChild({ description: fn.name, op: "middleware." + method }); res.once("finish", function() { span_1.finish(); }); } return fn.call(this, req, res); }; } case 3: { return function(req, res, next) { var _a4; var transaction = res.__sentry_transaction; var span = (_a4 = transaction) === null || _a4 === void 0 ? void 0 : _a4.startChild({ description: fn.name, op: "middleware." + method }); fn.call(this, req, res, function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var _a5; (_a5 = span) === null || _a5 === void 0 ? void 0 : _a5.finish(); next.call.apply(next, tslib_1.__spread([this], args)); }); }; } case 4: { return function(err, req, res, next) { var _a4; var transaction = res.__sentry_transaction; var span = (_a4 = transaction) === null || _a4 === void 0 ? void 0 : _a4.startChild({ description: fn.name, op: "middleware." + method }); fn.call(this, err, req, res, function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var _a5; (_a5 = span) === null || _a5 === void 0 ? void 0 : _a5.finish(); next.call.apply(next, tslib_1.__spread([this], args)); }); }; } default: { throw new Error("Express middleware takes 2-4 arguments. Got: " + arity); } } } function wrapMiddlewareArgs(args, method) { return args.map(function(arg) { if (typeof arg === "function") { return wrap(arg, method); } if (Array.isArray(arg)) { return arg.map(function(a) { if (typeof a === "function") { return wrap(a, method); } return a; }); } return arg; }); } function patchMiddleware(router, method) { var originalCallback = router[method]; router[method] = function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return originalCallback.call.apply(originalCallback, tslib_1.__spread([this], wrapMiddlewareArgs(args, method))); }; return router; } function instrumentMiddlewares(router, methods) { if (methods === void 0) { methods = []; } methods.forEach(function(method) { return patchMiddleware(router, method); }); } } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/postgres.js var require_postgres = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/postgres.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var Postgres = function() { function Postgres2(options) { if (options === void 0) { options = {}; } this.name = Postgres2.id; this._usePgNative = !!options.usePgNative; } Postgres2.prototype.setupOnce = function(_, getCurrentHub) { var _a4; var pkg = utils_1.loadModule("pg"); if (!pkg) { utils_1.logger.error("Postgres Integration was unable to require `pg` package."); return; } if (this._usePgNative && !((_a4 = pkg.native) === null || _a4 === void 0 ? void 0 : _a4.Client)) { utils_1.logger.error("Postgres Integration was unable to access 'pg-native' bindings."); return; } var Client = (this._usePgNative ? pkg.native : pkg).Client; utils_1.fill(Client.prototype, "query", function(orig) { return function(config4, values, callback) { var _a5, _b, _c; var scope = getCurrentHub().getScope(); var parentSpan = (_a5 = scope) === null || _a5 === void 0 ? void 0 : _a5.getSpan(); var span = (_b = parentSpan) === null || _b === void 0 ? void 0 : _b.startChild({ description: typeof config4 === "string" ? config4 : config4.text, op: "db" }); if (typeof callback === "function") { return orig.call(this, config4, values, function(err, result) { var _a6; (_a6 = span) === null || _a6 === void 0 ? void 0 : _a6.finish(); callback(err, result); }); } if (typeof values === "function") { return orig.call(this, config4, function(err, result) { var _a6; (_a6 = span) === null || _a6 === void 0 ? void 0 : _a6.finish(); values(err, result); }); } var rv = typeof values !== "undefined" ? orig.call(this, config4, values) : orig.call(this, config4); if (utils_1.isThenable(rv)) { return rv.then(function(res) { var _a6; (_a6 = span) === null || _a6 === void 0 ? void 0 : _a6.finish(); return res; }); } (_c = span) === null || _c === void 0 ? void 0 : _c.finish(); return rv; }; }); }; Postgres2.id = "Postgres"; return Postgres2; }(); exports.Postgres = Postgres; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/mysql.js var require_mysql = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/mysql.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require_dist(); var Mysql = function() { function Mysql2() { this.name = Mysql2.id; } Mysql2.prototype.setupOnce = function(_, getCurrentHub) { var pkg = utils_1.loadModule("mysql/lib/Connection.js"); if (!pkg) { utils_1.logger.error("Mysql Integration was unable to require `mysql` package."); return; } utils_1.fill(pkg, "createQuery", function(orig) { return function(options, values, callback) { var _a4, _b; var scope = getCurrentHub().getScope(); var parentSpan = (_a4 = scope) === null || _a4 === void 0 ? void 0 : _a4.getSpan(); var span = (_b = parentSpan) === null || _b === void 0 ? void 0 : _b.startChild({ description: typeof options === "string" ? options : options.sql, op: "db" }); if (typeof callback === "function") { return orig.call(this, options, values, function(err, result, fields) { var _a5; (_a5 = span) === null || _a5 === void 0 ? void 0 : _a5.finish(); callback(err, result, fields); }); } if (typeof values === "function") { return orig.call(this, options, function(err, result, fields) { var _a5; (_a5 = span) === null || _a5 === void 0 ? void 0 : _a5.finish(); values(err, result, fields); }); } return orig.call(this, options, values, callback); }; }); }; Mysql2.id = "Mysql"; return Mysql2; }(); exports.Mysql = Mysql; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/mongo.js var require_mongo = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/node/mongo.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var utils_1 = require_dist(); var OPERATIONS = [ "aggregate", "bulkWrite", "countDocuments", "createIndex", "createIndexes", "deleteMany", "deleteOne", "distinct", "drop", "dropIndex", "dropIndexes", "estimatedDocumentCount", "find", "findOne", "findOneAndDelete", "findOneAndReplace", "findOneAndUpdate", "indexes", "indexExists", "indexInformation", "initializeOrderedBulkOp", "insertMany", "insertOne", "isCapped", "mapReduce", "options", "parallelCollectionScan", "rename", "replaceOne", "stats", "updateMany", "updateOne" ]; var OPERATION_SIGNATURES = { bulkWrite: ["operations"], countDocuments: ["query"], createIndex: ["fieldOrSpec"], createIndexes: ["indexSpecs"], deleteMany: ["filter"], deleteOne: ["filter"], distinct: ["key", "query"], dropIndex: ["indexName"], find: ["query"], findOne: ["query"], findOneAndDelete: ["filter"], findOneAndReplace: ["filter", "replacement"], findOneAndUpdate: ["filter", "update"], indexExists: ["indexes"], insertMany: ["docs"], insertOne: ["doc"], mapReduce: ["map", "reduce"], rename: ["newName"], replaceOne: ["filter", "doc"], updateMany: ["filter", "update"], updateOne: ["filter", "update"] }; var Mongo = function() { function Mongo2(options) { if (options === void 0) { options = {}; } this.name = Mongo2.id; this._operations = Array.isArray(options.operations) ? options.operations : OPERATIONS; this._describeOperations = "describeOperations" in options ? options.describeOperations : true; this._useMongoose = !!options.useMongoose; } Mongo2.prototype.setupOnce = function(_, getCurrentHub) { var moduleName = this._useMongoose ? "mongoose" : "mongodb"; var pkg = utils_1.loadModule(moduleName); if (!pkg) { utils_1.logger.error("Mongo Integration was unable to require `" + moduleName + "` package."); return; } this._instrumentOperations(pkg.Collection, this._operations, getCurrentHub); }; Mongo2.prototype._instrumentOperations = function(collection, operations, getCurrentHub) { var _this = this; operations.forEach(function(operation) { return _this._patchOperation(collection, operation, getCurrentHub); }); }; Mongo2.prototype._patchOperation = function(collection, operation, getCurrentHub) { if (!(operation in collection.prototype)) return; var getSpanContext = this._getSpanContextFromOperationArguments.bind(this); utils_1.fill(collection.prototype, operation, function(orig) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var _a4, _b, _c, _d2; var lastArg = args[args.length - 1]; var scope = getCurrentHub().getScope(); var parentSpan = (_a4 = scope) === null || _a4 === void 0 ? void 0 : _a4.getSpan(); if (typeof lastArg !== "function" || operation === "mapReduce" && args.length === 2) { var span_1 = (_b = parentSpan) === null || _b === void 0 ? void 0 : _b.startChild(getSpanContext(this, operation, args)); var maybePromise = orig.call.apply(orig, tslib_1.__spread([this], args)); if (utils_1.isThenable(maybePromise)) { return maybePromise.then(function(res) { var _a5; (_a5 = span_1) === null || _a5 === void 0 ? void 0 : _a5.finish(); return res; }); } else { (_c = span_1) === null || _c === void 0 ? void 0 : _c.finish(); return maybePromise; } } var span = (_d2 = parentSpan) === null || _d2 === void 0 ? void 0 : _d2.startChild(getSpanContext(this, operation, args.slice(0, -1))); return orig.call.apply(orig, tslib_1.__spread([this], args.slice(0, -1), [function(err, result) { var _a5; (_a5 = span) === null || _a5 === void 0 ? void 0 : _a5.finish(); lastArg(err, result); }])); }; }); }; Mongo2.prototype._getSpanContextFromOperationArguments = function(collection, operation, args) { var data = { collectionName: collection.collectionName, dbName: collection.dbName, namespace: collection.namespace }; var spanContext = { op: "db", description: operation, data }; var signature = OPERATION_SIGNATURES[operation]; var shouldDescribe = Array.isArray(this._describeOperations) ? this._describeOperations.includes(operation) : this._describeOperations; if (!signature || !shouldDescribe) { return spanContext; } try { if (operation === "mapReduce") { var _a4 = tslib_1.__read(args, 2), map = _a4[0], reduce = _a4[1]; data[signature[0]] = typeof map === "string" ? map : map.name || ""; data[signature[1]] = typeof reduce === "string" ? reduce : reduce.name || ""; } else { for (var i2 = 0; i2 < signature.length; i2++) { data[signature[i2]] = JSON.stringify(args[i2]); } } } catch (_oO) { } return spanContext; }; Mongo2.id = "Mongo"; return Mongo2; }(); exports.Mongo = Mongo; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/index.js var require_integrations3 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/integrations/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var express_1 = require_express(); exports.Express = express_1.Express; var postgres_1 = require_postgres(); exports.Postgres = postgres_1.Postgres; var mysql_1 = require_mysql(); exports.Mysql = mysql_1.Mysql; var mongo_1 = require_mongo(); exports.Mongo = mongo_1.Mongo; } }); // ../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/index.js var require_dist9 = __commonJS({ "../../node_modules/.pnpm/@sentry+tracing@6.15.0/node_modules/@sentry/tracing/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var browser_1 = require_browser3(); var hubextensions_1 = require_hubextensions(); exports.addExtensionMethods = hubextensions_1.addExtensionMethods; var TracingIntegrations = require_integrations3(); var Integrations = tslib_1.__assign(tslib_1.__assign({}, TracingIntegrations), { BrowserTracing: browser_1.BrowserTracing }); exports.Integrations = Integrations; var span_1 = require_span(); exports.Span = span_1.Span; var transaction_1 = require_transaction3(); exports.Transaction = transaction_1.Transaction; var browser_2 = require_browser3(); exports.registerRequestInstrumentation = browser_2.instrumentOutgoingRequests; exports.defaultRequestInstrumentationOptions = browser_2.defaultRequestInstrumentationOptions; var spanstatus_1 = require_spanstatus(); exports.SpanStatus = spanstatus_1.SpanStatus; var idletransaction_1 = require_idletransaction(); exports.IdleTransaction = idletransaction_1.IdleTransaction; var hubextensions_2 = require_hubextensions(); exports.startIdleTransaction = hubextensions_2.startIdleTransaction; hubextensions_1.addExtensionMethods(); var utils_1 = require_utils3(); exports.extractTraceparentData = utils_1.extractTraceparentData; exports.getActiveTransaction = utils_1.getActiveTransaction; exports.hasTracingEnabled = utils_1.hasTracingEnabled; exports.stripUrlQueryAndFragment = utils_1.stripUrlQueryAndFragment; exports.TRACEPARENT_REGEXP = utils_1.TRACEPARENT_REGEXP; } }); // ../../node_modules/.pnpm/cookie@0.4.2/node_modules/cookie/index.js var require_cookie = __commonJS({ "../../node_modules/.pnpm/cookie@0.4.2/node_modules/cookie/index.js"(exports) { "use strict"; exports.parse = parse2; exports.serialize = serialize; var decode = decodeURIComponent; var encode = encodeURIComponent; var fieldContentRegExp = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/; function parse2(str, options) { if (typeof str !== "string") { throw new TypeError("argument str must be a string"); } var obj = {}; var opt = options || {}; var pairs = str.split(";"); var dec = opt.decode || decode; for (var i2 = 0; i2 < pairs.length; i2++) { var pair = pairs[i2]; var index = pair.indexOf("="); if (index < 0) { continue; } var key = pair.substring(0, index).trim(); if (void 0 == obj[key]) { var val = pair.substring(index + 1, pair.length).trim(); if (val[0] === '"') { val = val.slice(1, -1); } obj[key] = tryDecode(val, dec); } } return obj; } function serialize(name, val, options) { var opt = options || {}; var enc = opt.encode || encode; if (typeof enc !== "function") { throw new TypeError("option encode is invalid"); } if (!fieldContentRegExp.test(name)) { throw new TypeError("argument name is invalid"); } var value = enc(val); if (value && !fieldContentRegExp.test(value)) { throw new TypeError("argument val is invalid"); } var str = name + "=" + value; if (null != opt.maxAge) { var maxAge = opt.maxAge - 0; if (isNaN(maxAge) || !isFinite(maxAge)) { throw new TypeError("option maxAge is invalid"); } str += "; Max-Age=" + Math.floor(maxAge); } if (opt.domain) { if (!fieldContentRegExp.test(opt.domain)) { throw new TypeError("option domain is invalid"); } str += "; Domain=" + opt.domain; } if (opt.path) { if (!fieldContentRegExp.test(opt.path)) { throw new TypeError("option path is invalid"); } str += "; Path=" + opt.path; } if (opt.expires) { if (typeof opt.expires.toUTCString !== "function") { throw new TypeError("option expires is invalid"); } str += "; Expires=" + opt.expires.toUTCString(); } if (opt.httpOnly) { str += "; HttpOnly"; } if (opt.secure) { str += "; Secure"; } if (opt.sameSite) { var sameSite = typeof opt.sameSite === "string" ? opt.sameSite.toLowerCase() : opt.sameSite; switch (sameSite) { case true: str += "; SameSite=Strict"; break; case "lax": str += "; SameSite=Lax"; break; case "strict": str += "; SameSite=Strict"; break; case "none": str += "; SameSite=None"; break; default: throw new TypeError("option sameSite is invalid"); } } return str; } function tryDecode(str, decode2) { try { return decode2(str); } catch (e2) { return str; } } } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/handlers.js var require_handlers = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/handlers.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var core_1 = require_dist7(); var tracing_1 = require_dist9(); var types_1 = require_dist2(); var utils_1 = require_dist(); var cookie = require_cookie(); var domain = require("domain"); var os = require("os"); var url = require("url"); var sdk_1 = require_sdk2(); function tracingHandler() { return function sentryTracingMiddleware(req, res, next) { var traceparentData; if (req.headers && utils_1.isString(req.headers["sentry-trace"])) { traceparentData = tracing_1.extractTraceparentData(req.headers["sentry-trace"]); } var transaction = core_1.startTransaction( tslib_1.__assign({ name: extractExpressTransactionName(req, { path: true, method: true }), op: "http.server" }, traceparentData), { request: extractRequestData(req) } ); core_1.getCurrentHub().configureScope(function(scope) { scope.setSpan(transaction); }); res.__sentry_transaction = transaction; res.once("finish", function() { setImmediate(function() { addExpressReqToTransaction(transaction, req); transaction.setHttpStatus(res.statusCode); transaction.finish(); }); }); next(); }; } exports.tracingHandler = tracingHandler; function addExpressReqToTransaction(transaction, req) { if (!transaction) return; transaction.name = extractExpressTransactionName(req, { path: true, method: true }); transaction.setData("url", req.originalUrl); transaction.setData("baseUrl", req.baseUrl); transaction.setData("query", req.query); } function extractExpressTransactionName(req, options) { if (options === void 0) { options = {}; } var _a4; var method = (_a4 = req.method) === null || _a4 === void 0 ? void 0 : _a4.toUpperCase(); var path5 = ""; if (req.route) { path5 = "" + (req.baseUrl || "") + req.route.path; } else if (req.originalUrl || req.url) { path5 = utils_1.stripUrlQueryAndFragment(req.originalUrl || req.url || ""); } var info = ""; if (options.method && method) { info += method; } if (options.method && options.path) { info += " "; } if (options.path && path5) { info += path5; } return info; } function extractTransaction(req, type) { var _a4; switch (type) { case "path": { return extractExpressTransactionName(req, { path: true }); } case "handler": { return ((_a4 = req.route) === null || _a4 === void 0 ? void 0 : _a4.stack[0].name) || ""; } case "methodPath": default: { return extractExpressTransactionName(req, { path: true, method: true }); } } } var DEFAULT_USER_KEYS = ["id", "username", "email"]; function extractUserData(user, keys) { var extractedUser = {}; var attributes = Array.isArray(keys) ? keys : DEFAULT_USER_KEYS; attributes.forEach(function(key) { if (user && key in user) { extractedUser[key] = user[key]; } }); return extractedUser; } var DEFAULT_REQUEST_KEYS = ["cookies", "data", "headers", "method", "query_string", "url"]; function extractRequestData(req, keys) { if (keys === void 0) { keys = DEFAULT_REQUEST_KEYS; } var requestData = {}; var headers = req.headers || req.header || {}; var method = req.method; var host = req.hostname || req.host || headers.host || ""; var protocol = req.protocol === "https" || req.secure || (req.socket || {}).encrypted ? "https" : "http"; var originalUrl = req.originalUrl || req.url || ""; var absoluteUrl = protocol + "://" + host + originalUrl; keys.forEach(function(key) { switch (key) { case "headers": requestData.headers = headers; break; case "method": requestData.method = method; break; case "url": requestData.url = absoluteUrl; break; case "cookies": requestData.cookies = req.cookies || cookie.parse(headers.cookie || ""); break; case "query_string": requestData.query_string = req.query || url.parse(originalUrl || "", false).query; break; case "data": if (method === "GET" || method === "HEAD") { break; } if (req.body !== void 0) { requestData.data = utils_1.isString(req.body) ? req.body : JSON.stringify(utils_1.normalize(req.body)); } break; default: if ({}.hasOwnProperty.call(req, key)) { requestData[key] = req[key]; } } }); return requestData; } exports.extractRequestData = extractRequestData; function parseRequest(event, req, options) { options = tslib_1.__assign({ ip: false, request: true, serverName: true, transaction: true, user: true, version: true }, options); if (options.version) { event.contexts = tslib_1.__assign(tslib_1.__assign({}, event.contexts), { runtime: { name: "node", version: global.process.version } }); } if (options.request) { var extractedRequestData = Array.isArray(options.request) ? extractRequestData(req, options.request) : extractRequestData(req); event.request = tslib_1.__assign(tslib_1.__assign({}, event.request), extractedRequestData); } if (options.serverName && !event.server_name) { event.server_name = global.process.env.SENTRY_NAME || os.hostname(); } if (options.user) { var extractedUser = req.user && utils_1.isPlainObject(req.user) ? extractUserData(req.user, options.user) : {}; if (Object.keys(extractedUser)) { event.user = tslib_1.__assign(tslib_1.__assign({}, event.user), extractedUser); } } if (options.ip) { var ip = req.ip || req.connection && req.connection.remoteAddress; if (ip) { event.user = tslib_1.__assign(tslib_1.__assign({}, event.user), { ip_address: ip }); } } if (options.transaction && !event.transaction) { event.transaction = extractTransaction(req, options.transaction); } return event; } exports.parseRequest = parseRequest; function requestHandler(options) { var currentHub = core_1.getCurrentHub(); var client = currentHub.getClient(); if (client && sdk_1.isAutoSessionTrackingEnabled(client)) { client.initSessionFlusher(); var scope = currentHub.getScope(); if (scope && scope.getSession()) { scope.setSession(); } } return function sentryRequestMiddleware(req, res, next) { if (options && options.flushTimeout && options.flushTimeout > 0) { var _end_1 = res.end; res.end = function(chunk, encoding, cb) { var _this = this; void sdk_1.flush(options.flushTimeout).then(function() { _end_1.call(_this, chunk, encoding, cb); }).then(null, function(e2) { utils_1.logger.error(e2); }); }; } var local = domain.create(); local.add(req); local.add(res); local.on("error", next); local.run(function() { var currentHub2 = core_1.getCurrentHub(); currentHub2.configureScope(function(scope2) { scope2.addEventProcessor(function(event) { return parseRequest(event, req, options); }); var client2 = currentHub2.getClient(); if (sdk_1.isAutoSessionTrackingEnabled(client2)) { var scope_1 = currentHub2.getScope(); if (scope_1) { scope_1.setRequestSession({ status: types_1.RequestSessionStatus.Ok }); } } }); res.once("finish", function() { var client2 = currentHub2.getClient(); if (sdk_1.isAutoSessionTrackingEnabled(client2)) { setImmediate(function() { if (client2 && client2._captureRequestSession) { client2._captureRequestSession(); } }); } }); next(); }); }; } exports.requestHandler = requestHandler; function getStatusCodeFromResponse(error) { var statusCode = error.status || error.statusCode || error.status_code || error.output && error.output.statusCode; return statusCode ? parseInt(statusCode, 10) : 500; } function defaultShouldHandleError(error) { var status = getStatusCodeFromResponse(error); return status >= 500; } function errorHandler(options) { return function sentryErrorMiddleware(error, _req, res, next) { var shouldHandleError = options && options.shouldHandleError || defaultShouldHandleError; if (shouldHandleError(error)) { core_1.withScope(function(_scope) { var transaction = res.__sentry_transaction; if (transaction && _scope.getSpan() === void 0) { _scope.setSpan(transaction); } var client = core_1.getCurrentHub().getClient(); if (client && sdk_1.isAutoSessionTrackingEnabled(client)) { var isSessionAggregatesMode = client._sessionFlusher !== void 0; if (isSessionAggregatesMode) { var requestSession = _scope.getRequestSession(); if (requestSession && requestSession.status !== void 0) requestSession.status = types_1.RequestSessionStatus.Crashed; } } var eventId = core_1.captureException(error); res.sentry = eventId; next(error); }); return; } next(error); }; } exports.errorHandler = errorHandler; } }); // ../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/index.js var require_dist10 = __commonJS({ "../../node_modules/.pnpm/@sentry+node@6.15.0/node_modules/@sentry/node/dist/index.js"(exports) { Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require_tslib(); var types_1 = require_dist2(); exports.Severity = types_1.Severity; exports.Status = types_1.Status; var core_1 = require_dist7(); exports.addGlobalEventProcessor = core_1.addGlobalEventProcessor; exports.addBreadcrumb = core_1.addBreadcrumb; exports.captureException = core_1.captureException; exports.captureEvent = core_1.captureEvent; exports.captureMessage = core_1.captureMessage; exports.configureScope = core_1.configureScope; exports.getHubFromCarrier = core_1.getHubFromCarrier; exports.getCurrentHub = core_1.getCurrentHub; exports.Hub = core_1.Hub; exports.makeMain = core_1.makeMain; exports.Scope = core_1.Scope; exports.startTransaction = core_1.startTransaction; exports.SDK_VERSION = core_1.SDK_VERSION; exports.setContext = core_1.setContext; exports.setExtra = core_1.setExtra; exports.setExtras = core_1.setExtras; exports.setTag = core_1.setTag; exports.setTags = core_1.setTags; exports.setUser = core_1.setUser; exports.withScope = core_1.withScope; var backend_1 = require_backend(); exports.NodeBackend = backend_1.NodeBackend; var client_1 = require_client3(); exports.NodeClient = client_1.NodeClient; var sdk_1 = require_sdk2(); exports.defaultIntegrations = sdk_1.defaultIntegrations; exports.init = sdk_1.init; exports.lastEventId = sdk_1.lastEventId; exports.flush = sdk_1.flush; exports.close = sdk_1.close; exports.getSentryRelease = sdk_1.getSentryRelease; var utils_1 = require_utils2(); exports.deepReadDirSync = utils_1.deepReadDirSync; var version_1 = require_version3(); exports.SDK_NAME = version_1.SDK_NAME; var core_2 = require_dist7(); var hub_1 = require_dist5(); var domain = require("domain"); var Handlers = require_handlers(); exports.Handlers = Handlers; var NodeIntegrations = require_integrations2(); var Transports = require_transports2(); exports.Transports = Transports; var INTEGRATIONS = tslib_1.__assign(tslib_1.__assign({}, core_2.Integrations), NodeIntegrations); exports.Integrations = INTEGRATIONS; var carrier = hub_1.getMainCarrier(); if (carrier.__SENTRY__) { carrier.__SENTRY__.extensions = carrier.__SENTRY__.extensions || {}; carrier.__SENTRY__.extensions.domain = carrier.__SENTRY__.extensions.domain || domain; } } }); // server/server.ts var server_exports = {}; __export(server_exports, { config: () => config3 }); module.exports = __toCommonJS(server_exports); // ../../config.default.json var config_default_default = { PhoneAsItem: { enabled: false, exportResource: "my-core-resource", exportFunction: "myCheckerFunction" }, customPhoneNumber: { enabled: false, exportResource: "number-generator-resource", exportFunction: "generateNumber" }, general: { useResourceIntegration: false, toggleKey: "f1", toggleCommand: "phone", defaultLanguage: "en", showId: false }, contacts: { frameworkPay: false, payResource: "my-core-resource", payFunction: "myCheckerFunction" }, database: { useIdentifierPrefix: false, playerTable: "users", identifierColumn: "identifier", identifierType: "license", profileQueries: true, phoneNumberColumn: "phone_number" }, images: { url: "https://api.projecterror.dev/image", type: "pe_image", imageEncoding: "webp", contentType: "multipart/form-data", useContentType: false, useWebhook: false, authorizationHeader: "PE-Secret", authorizationPrefix: "", useAuthorization: true, returnedDataIndexes: ["url"] }, imageSafety: { filterUnsafeImageUrls: true, embedUnsafeImages: false, embedUrl: "https://i.example.com/embed", safeImageUrls: [ "i.imgur.com", "i.file.glass", "dropbox.com", "c.tenor.com", "discord.com", "cdn.discordapp.com", "media.discordapp.com", "media.discordapp.net", "upload.wikipedia.org", "i.projecterror.dev", "upcdn.io", "i.fivemanage.com" ] }, profanityFilter: { enabled: false, badWords: ["esx"] }, twitter: { showNotifications: true, generateProfileNameFromUsers: true, allowEditableProfileName: true, allowDeleteTweets: true, allowReportTweets: true, allowRetweet: true, characterLimit: 160, newLineLimit: 10, enableAvatars: true, enableEmojis: true, enableImages: true, maxImages: 1, allowNoMessage: false, resultsLimit: 25 }, match: { generateProfileNameFromUsers: true, allowEditableProfileName: true }, marketplace: { persistListings: false }, debug: { level: "error", enabled: true, sentryEnabled: true }, defaultContacts: [], disabledApps: [], apps: [], voiceMessage: { enabled: false, authorizationHeader: "PE-Secret", url: "", returnedDataIndexes: ["url"] } }; // ../../shared/deepMergeObjects.ts function isObject(item) { return item && typeof item === "object" && !Array.isArray(item); } function deepMergeObjects(target, ...sources) { if (!sources.length) return target; const source2 = sources.shift(); if (isObject(target) && isObject(source2)) { for (const key in source2) { if (isObject(source2[key])) { if (!target[key]) Object.assign(target, { [key]: {} }); deepMergeObjects(target[key], source2[key]); } else { Object.assign(target, { [key]: source2[key] }); } } } return deepMergeObjects(target, ...sources); } // server/utils/config.ts var getConfig = () => { const resourceName = GetCurrentResourceName(); const config4 = JSON.parse(LoadResourceFile(resourceName, "config.json")); return deepMergeObjects({}, config_default_default, config4); }; // server/config.ts var config = (() => { const config4 = getConfig(); let database = GetConvar("npwd:database", ""); if (database !== "") { database = JSON.parse(database); Object.entries(config4.database).forEach(([key, value]) => { const record = database; const configDb = config4.database; if (record[key] && typeof value === typeof record[key]) { configDb[key] = record[key]; } }); } if (GetConvar("npwd:useResourceIntegration", "") == "true") { config4.general.useResourceIntegration = true; } return config4; })(); // server/server.ts var import_integrations = __toESM(require_dist3()); // ../../packages/config/server/index.ts var getConfig2 = () => { const resourceName = GetCurrentResourceName(); const config4 = JSON.parse(LoadResourceFile(resourceName, "config.json")); return deepMergeObjects({}, config_default_default, config4); }; var config2 = (() => { const config4 = getConfig2(); let database = GetConvar("npwd:database", ""); if (database !== "") { database = JSON.parse(database); Object.entries(config4.database).forEach(([key, value]) => { const record = database; const configDb = config4.database; if (record[key] && typeof value === typeof record[key]) { configDb[key] = record[key]; } }); } if (GetConvar("npwd:useResourceIntegration", "") == "true") { config4.general.useResourceIntegration = true; } return config4; })(); // server/sv_logger.ts var import_path = __toESM(require("path")); var import_winston = __toESM(require_winston()); var manualColorize = (strToColor) => `[\x1B[35m${strToColor}\x1B[0m]`; var formatLogs = (log) => { if (log.module) return `${log.label} ${manualColorize(log.module)} [${log.level}]: ${log.message}`; return `${log.label} [${log.level}]: ${log.message}`; }; var findLogPath = () => `${import_path.default.join(GetResourcePath(GetCurrentResourceName()), "sv_npwd.log")}`; var mainLogger = (0, import_winston.createLogger)({ silent: !config.debug.enabled, transports: [ new import_winston.transports.File({ filename: findLogPath(), level: "silly", format: import_winston.format.combine(import_winston.format.errors({ stack: true }), import_winston.format.timestamp(), import_winston.format.json()) }), new import_winston.transports.Console({ level: config.debug.level ?? "info", format: import_winston.format.combine( import_winston.format.label({ label: "[NPWD]" }), import_winston.format.colorize({ all: true }), import_winston.format.printf(formatLogs) ) }) ] }); // server/db/pool.ts var import_promise = __toESM(require_promise()); // server/db/db_utils.ts var CONNECTION_STRING = "mysql_connection_string"; function parseSemiColonFormat(connectionString) { const parts = connectionString.replace(/(?:host(?:name)|ip|server|data\s?source|addr(?:ess)?)=/gi, "host=").replace(/(?:user\s?(?:id|name)?|uid)=/gi, "user=").replace(/(?:pwd|pass)=/gi, "password=").replace(/(?:db)=/gi, "database=").split(";"); if (parts.length === 1) { throw new Error( `Connection string ${connectionString} is in the incorrect format. Please follow the README.` ); } return parts.reduce((connectionInfo, parameter) => { const [key, value] = parameter.split("="); if (value) connectionInfo[key] = value; return connectionInfo; }, {}); } // server/db/pool.ts var mysqlConnectionString = GetConvar(CONNECTION_STRING, "none"); if (mysqlConnectionString === "none") { const error = new Error( `No connection string provided. make sure "${CONNECTION_STRING}" is set in your config.` ); mainLogger.error(error.message); throw error; } function generateConnectionPool() { try { const config4 = mysqlConnectionString.includes("mysql://") ? { uri: mysqlConnectionString } : parseSemiColonFormat(mysqlConnectionString); return import_promise.default.createPool({ connectTimeout: 6e4, ...config4 }); } catch (e2) { mainLogger.error(`SQL Connection Pool Error: ${e2.message}`, { connection: mysqlConnectionString }); } } var pool = generateConnectionPool(); // server/db/db_wrapper.ts var RESOURCE_NAME = GetCurrentResourceName(); var _DbInterface = class { constructor() { this.logger = mainLogger.child({ module: "DBInterface" }); } async _internalQuery(query, values) { try { if (!values) values = []; if (config.database.profileQueries) { const startTime = process.hrtime(); ScheduleResourceTick(RESOURCE_NAME); const res = await pool.execute(query, values); const timeMs = process.hrtime(startTime)[1] / 1e6; this.logger.info(`Executed query (${query} ${JSON.stringify(values)}) in ${timeMs}ms'`); return res; } ScheduleResourceTick(RESOURCE_NAME); return await pool.execute(query, values); } catch (e2) { this.logger.error( `Error executing (${query} ${JSON.stringify(values)}) with error message ${e2.message}` ); } } async _rawExec(query, values) { return await this._internalQuery(query, values); } async exec(query, values) { const [res] = await this._internalQuery(query, values); return res.affectedRows; } async insert(query, values) { const [res] = await this._internalQuery(query, values); return res.insertId; } async fetch(query, values) { const [res] = await this._internalQuery(query, values); const castRes = res; return castRes; } }; var DbInterface = new _DbInterface(); var db_wrapper_default = DbInterface; // server/db/parseUri.ts var regex = new RegExp( "^(?:([^:/?#.]+):)?(?://(?:([^/?#]*)@)?([\\w\\d\\-\\u0100-\\uffff.%]*)(?::([0-9]+))?)?([^?#]+)?(?:\\?([^#]*))?$" ); var parseUri = (connectionUri) => { const splitMatchGroups = connectionUri.match(regex); const authTgt = splitMatchGroups[2] ? splitMatchGroups[2].split(":") : []; const removeForwardSlash = (str) => str.replace(/^\/+/, ""); if (connectionUri.includes("mysql://")) return { driver: splitMatchGroups[1], user: authTgt[0] || void 0, password: authTgt[1] || void 0, host: splitMatchGroups[3], port: parseInt(splitMatchGroups[4], 10), database: removeForwardSlash(splitMatchGroups[5]), params: splitMatchGroups[6] }; return connectionUri.replace(/(?:host(?:name)|ip|server|data\s?source|addr(?:ess)?)=/gi, "host=").replace(/(?:user\s?(?:id|name)?|uid)=/gi, "user=").replace(/(?:pwd|pass)=/gi, "password=").replace(/(?:db)=/gi, "database=").split(";").reduce((connectionInfo, parameter) => { const [key, value] = parameter.split("="); connectionInfo[key] = value; return connectionInfo; }, {}); }; // server/commands/registerCommands.ts var mysqlConnectionString2 = GetConvar(CONNECTION_STRING, "none"); var npwdDebugDumpCommand = async (src) => { if (src !== 0) return; const tableSchema = parseUri(mysqlConnectionString2).database; if (config.debug.level === "error") { console.log("SET DEBUG LEVEL TO INFO/SILLY TO SEE LOGS"); } mainLogger.info("NPWD DEBUG DUMP STARTED, THIS WILL WRITE TO THE SV_NPWD.LOG FILE"); mainLogger.info("Resource Config >"); mainLogger.info(config); const versionInfo = GetResourceMetadata(GetCurrentResourceName(), "version", 0); mainLogger.info(`Manifest VERSION > ${versionInfo}`); const fxServerVersion = GetConvar("version", "unknown"); mainLogger.info(`FXServer VERSION > ${fxServerVersion}`); const activePlayerCount = GetNumPlayerIndices(); mainLogger.info(`Connected Player Count > ${activePlayerCount}`); try { const playerTableResults = await db_wrapper_default._rawExec( `SELECT COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, IS_NULLABLE FROM information_schema.COLUMNS WHERE TABLE_NAME = ? AND TABLE_SCHEMA = ?`, [config.database.playerTable, tableSchema] ); const tableExists = playerTableResults.length > 0; if (tableExists) { mainLogger.info("Player Table Info >"); mainLogger.info(playerTableResults[0]); } else { mainLogger.error( `Unable to locate schema metadata for specified player table of ${config.database.playerTable}. Maybe it doesn't exist?` ); } } catch (e2) { mainLogger.error(`Failed to collect debug info for player table, ${e2.message}`); } }; var registerCommands = () => { RegisterCommand("npwd-debug-dump", npwdDebugDumpCommand, false); }; // ../../packages/database/src/db/pool.ts var import_promise2 = __toESM(require_promise2()); // ../../packages/database/src/db/db_utils.ts var CONNECTION_STRING2 = "mysql_connection_string"; function parseSemiColonFormat2(connectionString) { const parts = connectionString.replace(/(?:host(?:name)|ip|server|data\s?source|addr(?:ess)?)=/gi, "host=").replace(/(?:user\s?(?:id|name)?|uid)=/gi, "user=").replace(/(?:pwd|pass)=/gi, "password=").replace(/(?:db)=/gi, "database=").split(";"); if (parts.length === 1) { throw new Error( `Connection string ${connectionString} is in the incorrect format. Please follow the README.` ); } return parts.reduce((connectionInfo, parameter) => { const [key, value] = parameter.split("="); if (value) connectionInfo[key] = value; return connectionInfo; }, {}); } // ../../packages/logger/server/index.ts var import_path2 = __toESM(require("path")); var import_winston2 = __toESM(require_winston()); var manualColorize2 = (strToColor) => `[\x1B[35m${strToColor}\x1B[0m]`; var formatLogs2 = (log) => { if (log.module) return `${log.label} ${manualColorize2(log.module)} [${log.level}]: ${log.message}`; return `${log.label} [${log.level}]: ${log.message}`; }; var findLogPath2 = () => `${import_path2.default.join(GetResourcePath(GetCurrentResourceName()), "sv_npwd.log")}`; var mainLogger2 = (0, import_winston2.createLogger)({ silent: !config2.debug.enabled, transports: [ new import_winston2.transports.File({ filename: findLogPath2(), level: "silly", format: import_winston2.format.combine(import_winston2.format.errors({ stack: true }), import_winston2.format.timestamp(), import_winston2.format.json()) }), new import_winston2.transports.Console({ level: config2.debug.level ?? "info", format: import_winston2.format.combine( import_winston2.format.label({ label: "[NPWD]" }), import_winston2.format.colorize({ all: true }), import_winston2.format.printf(formatLogs2) ) }) ] }); // ../../packages/database/src/db/pool.ts var mysqlConnectionString3 = GetConvar(CONNECTION_STRING2, "none"); if (mysqlConnectionString3 === "none") { const error = new Error( `No connection string provided. make sure "${CONNECTION_STRING2}" is set in your config.` ); mainLogger2.error(error.message); throw error; } function generateConnectionPool2() { try { const config4 = mysqlConnectionString3.includes("mysql://") ? { uri: mysqlConnectionString3 } : parseSemiColonFormat2(mysqlConnectionString3); return import_promise2.default.createPool({ connectTimeout: 6e4, ...config4 }); } catch (e2) { mainLogger2.error(`SQL Connection Pool Error: ${e2.message}`, { connection: mysqlConnectionString3 }); } } var pool2 = generateConnectionPool2(); // server/boot/boot.db.ts var mysqlConnectionString4 = GetConvar(CONNECTION_STRING, "none"); var _BootDb = class { async doesPlayerTableExist() { const tableSchema = parseUri(mysqlConnectionString4).database; const tblsh = `Tables_in_${tableSchema}`; const query = `SHOW TABLES WHERE \`${tblsh}\`LIKE ?`; const [results] = await db_wrapper_default._rawExec(query, [config.database.playerTable]); const tableDetails = results; return !!tableDetails.length; } async getPlayerTableColumns() { const query = `SHOW COLUMNS IN ${config.database.playerTable}`; const [results] = await db_wrapper_default._rawExec(query, []); const columnResults = results; return columnResults.map((columnData) => columnData.Field); } }; var BootDb = new _BootDb(); var boot_db_default = BootDb; // server/boot/boot.utils.ts var bootLogger = mainLogger.child({ module: "boot" }); var fatalDbError = (reason) => { throw new Error( ` ^1============================================== !!! NPWD WAS UNABLE TO VALIDATE YOUR DATABASE AND FINISH STARTING !!! ${reason} This error is most likely caused by incorrect values in the config.json file. ==============================================^0` ); }; var { identifierColumn, phoneNumberColumn } = config.database; var requiredDbColumns = [identifierColumn, phoneNumberColumn]; var frameworkDependencies = { ["es_extended"]: ["esx-npwd"], ["qb-core"]: ["qb-npwd"] }; // server/boot/boot.service.ts var _BootService = class { constructor() { this.bootDb = boot_db_default; bootLogger.debug("Boot service started"); } async handleResourceStarting() { await this.validateDatabaseSchema(); this.performConfigChecks(); } async validateDatabaseSchema() { bootLogger.debug("Beginning database schema validation"); const doesPlayerTableExist = await this.bootDb.doesPlayerTableExist(); if (!doesPlayerTableExist) { fatalDbError( `Player table "${config.database.playerTable}" does not exist in the configured database.` ); } const columnData = await this.bootDb.getPlayerTableColumns(); if (!requiredDbColumns.every((elem) => columnData.includes(elem))) { const missingColumns = requiredDbColumns.filter((elem) => !columnData.includes(elem)); fatalDbError(`Player table is missing required columns: [${missingColumns.join(", ")}]`); } bootLogger.debug("Database schema successfully validated"); } performConfigChecks() { if (config.general.useResourceIntegration) { this.checkFrameworkDependencies(); } } checkFrameworkDependencies() { bootLogger.debug("Checking for missing framework dependencies"); const startedResources = /* @__PURE__ */ new Set(); const errorsDetected = /* @__PURE__ */ new Set(); const numOfResources = GetNumResources(); for (let i2 = 0; i2 < numOfResources; i2++) { const resourceName = GetResourceByFindIndex(i2); if (GetResourceState(resourceName) === "started") { startedResources.add(resourceName); } } for (const [resourceName, depList] of Object.entries(frameworkDependencies)) { if (startedResources.has(resourceName)) { if (!depList.every((elem) => startedResources.has(elem))) { const missingDependencies = depList.filter((depName) => !startedResources.has(depName)); errorsDetected.add( `Missing ${resourceName} dependencies detected: ${missingDependencies.join(", ")}` ); } } } if (errorsDetected.size) { errorsDetected.forEach((errorString) => bootLogger.error(errorString)); } else { bootLogger.debug("No missing dependencies were detected"); } } }; var BootService = new _BootService(); var boot_service_default = BootService; // server/boot/boot.controller.ts on("onServerResourceStart", async (resource) => { if (resource === GetCurrentResourceName()) { await boot_service_default.handleResourceStarting(); } }); // server/utils/miscUtils.ts var getSource = () => global.source; var clean = (input) => input ? input.replace(/[^0-9a-z]/gi, "") : input; var onNetTyped = (eventName, cb) => onNet(eventName, cb); var emitNetTyped = (eventName, data, src) => { if (src) { return emitNet(eventName, src, data); } emitNet(eventName, data); }; // server/players/player.utils.ts var playerLogger = mainLogger.child({ module: "player" }); async function getDefaultProfileNames(source2) { const defaultProfileNames = []; const player = player_service_default.getPlayer(source2); if (player.getFirstName() && player.getLastName()) { defaultProfileNames.push(`${player.getFirstName()}_${player.getLastName()}`); } else if (player.getFirstName()) { defaultProfileNames.push(player.getFirstName()); } else if (player.getLastName()) { defaultProfileNames.push(player.getLastName()); } if (player.getPhoneNumber()) { defaultProfileNames.push(player.getPhoneNumber()); } return defaultProfileNames; } // server/misc/generateUniquePhoneNumber.ts var exp = global.exports; async function generateUniquePhoneNumber() { if (config3.customPhoneNumber.enabled) { try { const { exportResource, exportFunction } = config3.customPhoneNumber; return await exp[exportResource][exportFunction](); } catch (e2) { playerLogger.error(e2.message); playerLogger.error("Please check your config for custom number generation"); } } const query = `SELECT EXISTS(SELECT * FROM ${config3.database.playerTable} WHERE ${config3.database.phoneNumberColumn} = ?)`; const dashNumber = "45"+math.random(10000000,99999999) const [results] = await db_wrapper_default._rawExec(query, [dashNumber]); if (!results) return generateUniquePhoneNumber(); return dashNumber; } // server/misc/functions.ts async function findOrGeneratePhoneNumber(identifier) { const query = `SELECT ${config3.database.phoneNumberColumn} FROM ${config3.database.playerTable} WHERE ${config3.database.identifierColumn} = ? LIMIT 1`; const [res] = await db_wrapper_default._rawExec(query, [identifier]); playerLogger.debug("Find user for number generation data >"); playerLogger.debug(res); const castRes = res; if (castRes && castRes[0] && castRes[0][config3.database.phoneNumberColumn] !== null) { return castRes[0][config3.database.phoneNumberColumn]; } playerLogger.debug("Phone number was returned as null, generating new number"); const gennedNumber = await generateUniquePhoneNumber(); playerLogger.debug(`Phone number generated > ${gennedNumber}`); const updateQuery = `UPDATE ${config3.database.playerTable} SET ${config3.database.phoneNumberColumn} = ? WHERE ${config3.database.identifierColumn} = ?`; const result = await db_wrapper_default._rawExec(updateQuery, [gennedNumber, identifier]); if (!result || !result[0] || !result[0].affectedRows) { playerLogger.error(`Failed to store phone number in database`); playerLogger.error( `UPDATE ${config3.database.playerTable} SET ${config3.database.phoneNumberColumn} = ${gennedNumber} WHERE ${config3.database.identifierColumn} = ${identifier}` ); } return gennedNumber; } // server/players/player.class.ts var Player = class { constructor({ source: source2, identifier, phoneNumber, username }) { this.source = source2; this._identifier = identifier; this._phoneNumber = phoneNumber; this.username = username; } getIdentifier() { return this._identifier; } setIdentifier(identifier) { this._identifier = identifier; return this; } getFirstName() { return this._firstname; } setFirstName(firstname) { this._firstname = firstname; return this; } getLastName() { return this._lastname; } setLastName(lastname) { this._lastname = lastname; return this; } getName() { if (!this._firstname || !this._lastname) return null; return `${this._firstname} ${this._lastname}`; } getPhoneNumber() { return this._phoneNumber; } setPhoneNumber(number) { this._phoneNumber = number; return this; } }; // ../../node_modules/.pnpm/@discordjs+collection@0.2.4/node_modules/@discordjs/collection/dist/index.mjs var h = Object.defineProperty; var r = (u, e2) => h(u, "name", { value: e2, configurable: true }); var o = class extends Map { get(e2) { return super.get(e2); } set(e2, i2) { return super.set(e2, i2); } has(e2) { return super.has(e2); } delete(e2) { return super.delete(e2); } clear() { return super.clear(); } hasAll(...e2) { return e2.every((i2) => super.has(i2)); } hasAny(...e2) { return e2.some((i2) => super.has(i2)); } first(e2) { if (typeof e2 == "undefined") return this.values().next().value; if (e2 < 0) return this.last(e2 * -1); e2 = Math.min(this.size, e2); let i2 = this.values(); return Array.from({ length: e2 }, () => i2.next().value); } firstKey(e2) { if (typeof e2 == "undefined") return this.keys().next().value; if (e2 < 0) return this.lastKey(e2 * -1); e2 = Math.min(this.size, e2); let i2 = this.keys(); return Array.from({ length: e2 }, () => i2.next().value); } last(e2) { let i2 = [...this.values()]; return typeof e2 == "undefined" ? i2[i2.length - 1] : e2 < 0 ? this.first(e2 * -1) : e2 ? i2.slice(-e2) : []; } lastKey(e2) { let i2 = [...this.keys()]; return typeof e2 == "undefined" ? i2[i2.length - 1] : e2 < 0 ? this.firstKey(e2 * -1) : e2 ? i2.slice(-e2) : []; } random(e2) { let i2 = [...this.values()]; return typeof e2 == "undefined" ? i2[Math.floor(Math.random() * i2.length)] : !i2.length || !e2 ? [] : Array.from({ length: Math.min(e2, i2.length) }, () => i2.splice(Math.floor(Math.random() * i2.length), 1)[0]); } randomKey(e2) { let i2 = [...this.keys()]; return typeof e2 == "undefined" ? i2[Math.floor(Math.random() * i2.length)] : !i2.length || !e2 ? [] : Array.from({ length: Math.min(e2, i2.length) }, () => i2.splice(Math.floor(Math.random() * i2.length), 1)[0]); } find(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); for (let [t2, l] of this) if (e2(l, t2, this)) return l; } findKey(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); for (let [t2, l] of this) if (e2(l, t2, this)) return t2; } sweep(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); let t2 = this.size; for (let [l, n] of this) e2(n, l, this) && this.delete(l); return t2 - this.size; } filter(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); let t2 = new this.constructor[Symbol.species](); for (let [l, n] of this) e2(n, l, this) && t2.set(l, n); return t2; } partition(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); let t2 = [new this.constructor[Symbol.species](), new this.constructor[Symbol.species]()]; for (let [l, n] of this) e2(n, l, this) ? t2[0].set(l, n) : t2[1].set(l, n); return t2; } flatMap(e2, i2) { let t2 = this.map(e2, i2); return new this.constructor[Symbol.species]().concat(...t2); } map(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); let t2 = this.entries(); return Array.from({ length: this.size }, () => { let [l, n] = t2.next().value; return e2(n, l, this); }); } mapValues(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); let t2 = new this.constructor[Symbol.species](); for (let [l, n] of this) t2.set(l, e2(n, l, this)); return t2; } some(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); for (let [t2, l] of this) if (e2(l, t2, this)) return true; return false; } every(e2, i2) { typeof i2 != "undefined" && (e2 = e2.bind(i2)); for (let [t2, l] of this) if (!e2(l, t2, this)) return false; return true; } reduce(e2, i2) { let t2; if (typeof i2 != "undefined") { t2 = i2; for (let [n, s2] of this) t2 = e2(t2, s2, n, this); return t2; } let l = true; for (let [n, s2] of this) { if (l) { t2 = s2, l = false; continue; } t2 = e2(t2, s2, n, this); } if (l) throw new TypeError("Reduce of empty collection with no initial value"); return t2; } each(e2, i2) { return this.forEach(e2, i2), this; } tap(e2, i2) { return typeof i2 != "undefined" && (e2 = e2.bind(i2)), e2(this), this; } clone() { return new this.constructor[Symbol.species](this); } concat(...e2) { let i2 = this.clone(); for (let t2 of e2) for (let [l, n] of t2) i2.set(l, n); return i2; } equals(e2) { if (!e2) return false; if (this === e2) return true; if (this.size !== e2.size) return false; for (let [i2, t2] of this) if (!e2.has(i2) || t2 !== e2.get(i2)) return false; return true; } sort(e2 = o.defaultSort) { let i2 = [...this.entries()]; i2.sort((t2, l) => e2(t2[1], l[1], t2[0], l[0])), super.clear(); for (let [t2, l] of i2) super.set(t2, l); return this; } intersect(e2) { let i2 = new this.constructor[Symbol.species](); for (let [t2, l] of e2) this.has(t2) && i2.set(t2, l); return i2; } difference(e2) { let i2 = new this.constructor[Symbol.species](); for (let [t2, l] of e2) this.has(t2) || i2.set(t2, l); for (let [t2, l] of this) e2.has(t2) || i2.set(t2, l); return i2; } sorted(e2 = o.defaultSort) { return new this.constructor[Symbol.species](this).sort((i2, t2, l, n) => e2(i2, t2, l, n)); } toJSON() { return [...this.values()]; } static defaultSort(e2, i2) { return Number(e2 > i2) || Number(e2 === i2) - 1; } }; var c = o; r(c, "Collection"), "constructor", c.default = o; var f = c; // server/utils/getPlayerGameLicense.ts var getPlayerGameLicense = (src) => { const playerIdentifiers = getPlayerIdentifiers(src.toString()); let playerIdentifier; for (const identifier of playerIdentifiers) { if (identifier.includes(config3.database.identifierType + ":")) { if (config3.database.useIdentifierPrefix) playerIdentifier = identifier; else playerIdentifier = identifier.split(":")[1]; } } if (!playerIdentifier) return null; return playerIdentifier; }; // server/marketplace/marketplace.utils.ts var marketplaceLogger = mainLogger.child({ module: "marketplace" }); // ../../packages/database/src/db/db_wrapper.ts var RESOURCE_NAME2 = GetCurrentResourceName(); var _DbInterface2 = class { constructor() { this.logger = mainLogger2.child({ module: "DBInterface" }); } async _internalQuery(query, values) { try { if (!values) values = []; if (config2.database.profileQueries) { const startTime = process.hrtime(); ScheduleResourceTick(RESOURCE_NAME2); const res = await pool2.execute(query, values); const timeMs = process.hrtime(startTime)[1] / 1e6; this.logger.info(`Executed query (${query} ${JSON.stringify(values)}) in ${timeMs}ms'`); return res; } ScheduleResourceTick(RESOURCE_NAME2); return await pool2.execute(query, values); } catch (e2) { this.logger.error( `Error executing (${query} ${JSON.stringify(values)}) with error message ${e2.message}` ); } } async _rawExec(query, values) { return await this._internalQuery(query, values); } async exec(query, values) { const [res] = await this._internalQuery(query, values); return res.affectedRows; } async insert(query, values) { const [res] = await this._internalQuery(query, values); return res.insertId; } async fetch(query, values) { const [res] = await this._internalQuery(query, values); const castRes = res; return castRes; } }; var DbInterface2 = new _DbInterface2(); var db_wrapper_default2 = DbInterface2; // ../../packages/database/src/contacts/index.ts var _ContactsDB = class { async fetchAllContacts(identifier) { const query = "SELECT * FROM npwd_phone_contacts WHERE identifier = ? ORDER BY display ASC"; const [results] = await db_wrapper_default2._rawExec(query, [identifier]); return results; } async addContact(identifier, { display, avatar, number }) { const query = "INSERT INTO npwd_phone_contacts (identifier, number, display, avatar) VALUES (?, ?, ?, ?)"; const [setResult] = await db_wrapper_default2._rawExec(query, [identifier, number, display, avatar]); return { id: setResult.insertId, number, avatar, display }; } async updateContact(contact, identifier) { const query = "UPDATE npwd_phone_contacts SET number = ?, display = ?, avatar = ? WHERE id = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [ contact.number, contact.display, contact.avatar, contact.id, identifier ]); } async deleteContact(contactId, identifier) { const query = "DELETE FROM npwd_phone_contacts WHERE id = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [contactId, identifier]); } }; var ContactsDB = new _ContactsDB(); // ../../packages/database/src/notes/index.ts var _NotesDB = class { async addNote(identifier, note) { const query = "INSERT INTO npwd_notes (identifier, title, content) VALUES (?, ?, ?)"; const [result] = await db_wrapper_default2._rawExec(query, [identifier, note.title, note.content]); return result.insertId; } async fetchNotes(identifier) { const query = "SELECT * FROM npwd_notes WHERE identifier = ? ORDER BY id DESC"; const [result] = await db_wrapper_default2._rawExec(query, [identifier]); return result; } async deleteNote(noteId, identifier) { const query = "DELETE FROM npwd_notes WHERE id = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [noteId, identifier]); } async updateNote(note, identifier) { const query = "UPDATE npwd_notes SET title = ?, content = ? WHERE id = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [note.title, note.content, note.id, identifier]); } }; var NotesDB = new _NotesDB(); // server/utils/generateProfileName.ts async function generateProfileName(identifier, delimiter = "_") { const player = player_service_default.getPlayerFromIdentifier(identifier); const firstname = clean(player.getFirstName()); const lastname = clean(player.getLastName()); const phone_number = clean(player.getPhoneNumber()); if (firstname && lastname) { return `${firstname}${delimiter}${lastname}`; } else if (firstname) { return firstname; } else if (lastname) { return lastname; } else if (phone_number) { return phone_number; } return null; } // server/twitter/twitter.utils.ts var twitterLogger = mainLogger.child({ module: "twitter" }); // ../../packages/database/src/twitter/index.ts var SELECT_FIELDS = ` npwd_twitter_tweets.id, npwd_twitter_tweets.identifier, npwd_twitter_profiles.id AS profile_id, npwd_twitter_profiles.profile_name, npwd_twitter_profiles.avatar_url, npwd_twitter_tweets.likes, npwd_twitter_tweets.visible, IFNULL(COALESCE(retweets.message, npwd_twitter_tweets.message), '') AS message, IFNULL(COALESCE(retweets.images, npwd_twitter_tweets.images), '') AS images, npwd_twitter_tweets.retweet IS NOT NULL AS isRetweet, retweets.id AS retweetId, retweets_profiles.profile_name AS retweetProfileName, retweets_profiles.avatar_url AS retweetAvatarUrl, npwd_twitter_likes.id IS NOT NULL AS isLiked, npwd_twitter_reports.id IS NOT NULL AS isReported, npwd_twitter_tweets.createdAt, npwd_twitter_tweets.updatedAt, TIME_TO_SEC(TIMEDIFF( NOW(), npwd_twitter_tweets.createdAt)) AS seconds_since_tweet `; var TWEETS_PER_PAGE = config2?.twitter?.resultsLimit || 25; var formatTweets = (profileId) => (tweet) => ({ ...tweet, isMine: tweet.profile_id === profileId, isRetweet: tweet.isRetweet === 1 }); var _TwitterDB = class { async fetchAllTweets(profileId, currPage) { currPage = typeof currPage === "number" ? currPage : 1; const offset = currPage * TWEETS_PER_PAGE; const query = ` SELECT ${SELECT_FIELDS} FROM npwd_twitter_tweets LEFT OUTER JOIN npwd_twitter_profiles ON npwd_twitter_tweets.identifier = npwd_twitter_profiles.identifier LEFT OUTER JOIN npwd_twitter_likes ON npwd_twitter_tweets.id = npwd_twitter_likes.tweet_id AND npwd_twitter_likes.profile_id = ? LEFT OUTER JOIN npwd_twitter_reports ON npwd_twitter_tweets.id = npwd_twitter_reports.tweet_id AND npwd_twitter_reports.profile_id = ? LEFT OUTER JOIN npwd_twitter_tweets AS retweets ON retweets.id = npwd_twitter_tweets.retweet LEFT OUTER JOIN npwd_twitter_profiles AS retweets_profiles ON retweets.identifier = retweets_profiles.identifier WHERE npwd_twitter_tweets.visible = 1 ORDER BY id DESC LIMIT ? OFFSET ? `; const [results] = await db_wrapper_default2._rawExec(query, [ profileId, profileId, TWEETS_PER_PAGE.toString(), offset.toString() ]); const tweets = results; return tweets.map(formatTweets(profileId)); } async fetchTweetsFiltered(profileId, searchValue) { const parameterizedSearchValue = `%${searchValue}%`; const query = ` SELECT ${SELECT_FIELDS} FROM npwd_twitter_tweets LEFT OUTER JOIN npwd_twitter_profiles ON npwd_twitter_tweets.identifier = npwd_twitter_profiles.identifier LEFT OUTER JOIN npwd_twitter_likes ON npwd_twitter_tweets.id = npwd_twitter_likes.tweet_id AND npwd_twitter_likes.profile_id = ? LEFT OUTER JOIN npwd_twitter_reports ON npwd_twitter_tweets.id = npwd_twitter_reports.tweet_id AND npwd_twitter_reports.profile_id = ? LEFT OUTER JOIN npwd_twitter_tweets AS retweets ON retweets.id = npwd_twitter_tweets.retweet LEFT OUTER JOIN npwd_twitter_profiles AS retweets_profiles ON retweets.identifier = retweets_profiles.identifier WHERE npwd_twitter_tweets.visible = 1 AND (npwd_twitter_profiles.profile_name LIKE ? OR npwd_twitter_tweets.message LIKE ?) ORDER BY npwd_twitter_tweets.id DESC LIMIT 25 `; const [results] = await db_wrapper_default2._rawExec(query, [ profileId, profileId, parameterizedSearchValue, parameterizedSearchValue ]); const tweets = results; return tweets.map(formatTweets(profileId)); } async getTweet(profileId, tweetId) { const query = ` SELECT ${SELECT_FIELDS} FROM npwd_twitter_tweets LEFT OUTER JOIN npwd_twitter_likes ON npwd_twitter_tweets.id = npwd_twitter_likes.tweet_id AND npwd_twitter_likes.profile_id = ? LEFT OUTER JOIN npwd_twitter_reports ON npwd_twitter_tweets.id = npwd_twitter_reports.tweet_id AND npwd_twitter_reports.profile_id = ? LEFT OUTER JOIN npwd_twitter_tweets AS retweets ON retweets.id = npwd_twitter_tweets.retweet LEFT OUTER JOIN npwd_twitter_profiles AS retweets_profiles ON retweets.identifier = retweets_profiles.identifier LEFT OUTER JOIN npwd_twitter_profiles ON npwd_twitter_tweets.identifier = npwd_twitter_profiles.identifier WHERE npwd_twitter_tweets.id = ? `; const [results] = await db_wrapper_default2._rawExec(query, [profileId, profileId, tweetId]); const tweets = results; return tweets.map(formatTweets(profileId))[0]; } async createTweet(identifier, tweet) { const profile = await this.getProfile(identifier); const query = ` INSERT INTO npwd_twitter_tweets (identifier, message, images, retweet, profile_id) VALUES (?, ?, ?, ?, ?) `; const [results] = await db_wrapper_default2._rawExec(query, [ identifier, tweet.message, tweet.images, tweet.retweet, profile.id ]); const insertData = results; return await this.getTweet(profile.id, insertData.insertId); } async createTweetReport(tweetId, profileId) { const query = ` INSERT INTO npwd_twitter_reports (tweet_id, profile_id) VALUES (?, ?) `; await pool2.execute(query, [tweetId, profileId]); } async getProfile(identifier) { const query = ` SELECT * FROM npwd_twitter_profiles WHERE identifier = ? LIMIT 1 `; const [results] = await db_wrapper_default2._rawExec(query, [identifier]); const profiles = results; return profiles.length > 0 ? profiles[0] : null; } async createProfile(identifier, profileName) { const query = ` INSERT INTO npwd_twitter_profiles (identifier, profile_name) VALUES (?, ?) `; await pool2.execute(query, [identifier, profileName]); return await this.getProfile(identifier); } async createDefaultProfile(identifier) { if (!config2.twitter.generateProfileNameFromUsers) return null; const defaultProfileName = await generateProfileName(identifier); if (!defaultProfileName) return null; twitterLogger.info(`Creating default Twitter profile ${defaultProfileName} for ${identifier}`); return await this.createProfile(identifier, defaultProfileName); } async getOrCreateProfile(identifier) { const profile = await this.getProfile(identifier); return profile || await this.createDefaultProfile(identifier); } async updateProfile(identifier, profile) { const { avatar_url, profile_name } = profile; const query = ` UPDATE npwd_twitter_profiles SET avatar_url = ?, profile_name = ? WHERE identifier = ? `; await pool2.execute(query, [avatar_url, profile_name, identifier]); return profile; } async createLike(profileId, tweetId) { const query = ` INSERT INTO npwd_twitter_likes (profile_id, tweet_id) VALUES (?, ?) `; await pool2.execute(query, [profileId, tweetId]); await db_wrapper_default2._rawExec(`UPDATE npwd_twitter_tweets SET likes = likes + 1 WHERE id = ?`, [ tweetId ]); } async deleteLike(profileId, tweetId) { const query = ` DELETE FROM npwd_twitter_likes WHERE profile_id = ? AND tweet_id = ? `; await pool2.execute(query, [profileId, tweetId]); await db_wrapper_default2._rawExec(`UPDATE npwd_twitter_tweets SET likes = likes - 1 WHERE id = ?`, [ tweetId ]); } async getTotalLikesFromTweet(tweetId) { const query = `SELECT COUNT(*) as count FROM npwd_twitter_likes WHERE tweet_id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [tweetId]); const result = results; return result[0].count; } async deleteTweet(identifier, tweetId) { if (!config2.twitter.allowDeleteTweets) return; const query = ` DELETE FROM npwd_twitter_tweets WHERE identifier = ? AND id = ? `; await pool2.execute(query, [identifier, tweetId]); } async doesLikeExist(profileId, tweetId) { const query = ` SELECT * FROM npwd_twitter_likes WHERE profile_id = ? AND tweet_id = ? LIMIT 1 `; const [results] = await db_wrapper_default2._rawExec(query, [profileId, tweetId]); const likes = results; return likes.length > 0; } async doesReportExist(tweetId, profileId) { const query = ` SELECT * FROM npwd_twitter_reports WHERE tweet_id = ? AND profile_id = ? LIMIT 1 `; const [results] = await db_wrapper_default2._rawExec(query, [tweetId, profileId]); const reports = results; return reports.length > 0; } async doesRetweetExist(tweetId, identifier) { const query = ` SELECT COUNT(id) as count FROM npwd_twitter_tweets WHERE (id = ? OR retweet = ?) AND identifier = ? `; const [results] = await db_wrapper_default2._rawExec(query, [tweetId, tweetId, identifier]); const counts = results; return counts[0].count > 0; } }; var TwitterDB = new _TwitterDB(); // ../../packages/database/src/players/index.ts var _PlayerRepo = class { async fetchIdentifierFromPhoneNumber(phoneNumber) { const query = `SELECT ${config2.database.identifierColumn} FROM ${config2.database.playerTable} WHERE ${config2.database.phoneNumberColumn} = ?`; const [results] = await db_wrapper_default2._rawExec(query, [phoneNumber]); return results[0]?.[config2.database.identifierColumn] || null; } async fetchPhoneNumberFromIdentifier(identifier) { const query = `SELECT ${config2.database.phoneNumberColumn} FROM ${config2.database.playerTable} WHERE ${config2.database.identifierColumn} = ?`; const [results] = await db_wrapper_default2._rawExec(query, [identifier]); return results[0][config2.database.phoneNumberColumn] || null; } }; var PlayerRepo = new _PlayerRepo(); // ../../packages/database/src/photo/index.ts var _PhotoDB = class { async uploadPhoto(identifier, image) { const query = "INSERT INTO npwd_phone_gallery (identifier, image) VALUES (?, ?)"; const [results] = await db_wrapper_default2._rawExec(query, [identifier, image]); return { id: results.insertId, image }; } async getPhotosByIdentifier(identifier) { const query = "SELECT id, image FROM npwd_phone_gallery WHERE identifier = ? ORDER BY id DESC"; const [results] = await db_wrapper_default2._rawExec(query, [identifier]); return results; } async deletePhoto(photo, identifier) { const query = "DELETE FROM npwd_phone_gallery WHERE image = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [photo.image, identifier]); } async deletePhotoById(photo, identifier) { const query = "DELETE FROM npwd_phone_gallery WHERE id = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [photo, identifier]); } }; var PhotoDB = new _PhotoDB(); // server/messages/messages.utils.ts var messagesLogger = mainLogger.child({ module: "messages" }); function createGroupHashID(participants) { participants.sort(); return participants.join("+"); } function getIdentifiersFromParticipants(conversationId) { return conversationId.split("+"); } // ../../packages/database/src/messages/index.ts var MESSAGES_PER_PAGE = 20; var _MessagesDB = class { async getConversations(phoneNumber) { const query = `SELECT npwd_messages_conversations.id, npwd_messages_conversations.conversation_list as conversationList, npwd_messages_participants.unread_count as unreadCount, npwd_messages_conversations.is_group_chat as isGroupChat, npwd_messages_conversations.label, UNIX_TIMESTAMP(npwd_messages_conversations.updatedAt) as updatedAt, npwd_messages_participants.participant FROM npwd_messages_conversations INNER JOIN npwd_messages_participants on npwd_messages_conversations.id = npwd_messages_participants.conversation_id WHERE npwd_messages_participants.participant = ?`; const [results] = await db_wrapper_default2._rawExec(query, [phoneNumber]); return results; } async getConversation(conversationId) { const query = `SELECT npwd_messages_conversations.id, npwd_messages_conversations.conversation_list as conversationList, npwd_messages_conversations.is_group_chat as isGroupChat, npwd_messages_conversations.label, UNIX_TIMESTAMP(npwd_messages_conversations.createdAt) as createdAt, UNIX_TIMESTAMP(npwd_messages_conversations.updatedAt) as updatedAt FROM npwd_messages_conversations WHERE id = ? LIMIT 1`; const [results] = await db_wrapper_default2._rawExec(query, [conversationId]); const result = results; return result[0]; } async getMessages(dto) { const offset = MESSAGES_PER_PAGE * dto.page; const query = `SELECT npwd_messages.id, npwd_messages.conversation_id, npwd_messages.author, npwd_messages.message, npwd_messages.is_embed, UNIX_TIMESTAMP(npwd_messages.createdAt) as createdAt, npwd_messages.embed FROM npwd_messages WHERE conversation_id = ? ORDER BY createdAt DESC LIMIT ? OFFSET ?`; const [results] = await db_wrapper_default2._rawExec(query, [ dto.conversationId, MESSAGES_PER_PAGE.toString(), offset.toString() ]); return results; } async createConversation(participants, conversationList, conversationLabel, isGroupChat) { const conversationQuery = `INSERT INTO npwd_messages_conversations (conversation_list, label, is_group_chat) VALUES (?, ?, ?)`; const participantQuery = `INSERT INTO npwd_messages_participants (conversation_id, participant) VALUES (?, ?)`; const [results] = await db_wrapper_default2._rawExec(conversationQuery, [ conversationList, isGroupChat ? conversationLabel : "", isGroupChat ]); const result = results; const conversationId = result.insertId; for (const participant of participants) { await db_wrapper_default2._rawExec(participantQuery, [conversationId, participant]); } return conversationId; } async addParticipantToConversation(conversationList, phoneNumber) { const conversationId = await this.getConversationId(conversationList); const participantQuery = `INSERT INTO npwd_messages_participants (conversation_id, participant) VALUES (?, ?)`; await db_wrapper_default2._rawExec(participantQuery, [conversationId, phoneNumber]); return conversationId; } async createMessage(dto) { const query = `INSERT INTO npwd_messages (message, user_identifier, conversation_id, author, is_embed, embed) VALUES (?, ?, ?, ?, ?, ?)`; const [results] = await db_wrapper_default2._rawExec(query, [ dto.message || "", dto.userIdentifier, dto.conversationId, dto.authorPhoneNumber, dto.is_embed || false, dto.embed || "" ]); const result = results; const updateConversation = `UPDATE npwd_messages_conversations SET updatedAt = current_timestamp() WHERE id = ?`; setImmediate(async () => { await db_wrapper_default2._rawExec(updateConversation, [dto.conversationId]).catch( (err) => messagesLogger.error(`Error occurred in message update Error: ${err.message}`) ); }); return await this.getMessageFromId(result.insertId); } async setMessageUnread(conversationId, tgtPhoneNumber) { const query = `UPDATE npwd_messages_participants SET unread_count = unread_count + 1 WHERE conversation_id = ? AND participant = ?`; await db_wrapper_default2._rawExec(query, [conversationId, tgtPhoneNumber]); } async setMessageRead(conversationId, participantNumber) { const query = `UPDATE npwd_messages_participants SET unread_count = 0 WHERE conversation_id = ? AND participant = ?`; await db_wrapper_default2._rawExec(query, [conversationId, participantNumber]); } async deleteMessage(message) { const query = `DELETE FROM npwd_messages WHERE id = ?`; await db_wrapper_default2._rawExec(query, [message.id]); } async deleteConversation(conversationId, phoneNumber) { const query = `DELETE FROM npwd_messages_participants WHERE conversation_id = ? AND participant = ?`; await db_wrapper_default2._rawExec(query, [conversationId, phoneNumber]); } async doesConversationExist(conversationList) { const query = `SELECT COUNT(*) as count FROM npwd_messages_conversations INNER JOIN npwd_messages_participants on npwd_messages_conversations.id = npwd_messages_participants.conversation_id WHERE conversation_list = ?`; const [results] = await db_wrapper_default2._rawExec(query, [conversationList]); const result = results; const count = result[0].count; return count > 0; } async doesConversationExistForPlayer(conversationList, phoneNumber) { const query = `SELECT COUNT(*) as count FROM npwd_messages_conversations INNER JOIN npwd_messages_participants on npwd_messages_conversations.id = npwd_messages_participants.conversation_id WHERE conversation_list = ? AND npwd_messages_participants.participant = ?`; const [results] = await db_wrapper_default2._rawExec(query, [conversationList, phoneNumber]); const result = results; const count = result[0].count; return count > 0; } async getConversationId(conversationList) { const query = `SELECT id FROM npwd_messages_conversations WHERE conversation_list = ?`; ``; const [results] = await db_wrapper_default2._rawExec(query, [conversationList]); const result = results; return result[0].id; } async getMessageFromId(messageId) { const query = `SELECT npwd_messages.id, npwd_messages.conversation_id, npwd_messages.author, npwd_messages.message, UNIX_TIMESTAMP(npwd_messages.createdAt) as createdAt, npwd_messages.is_embed, npwd_messages.embed FROM npwd_messages WHERE id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [messageId]); const result = results; return result[0]; } }; var MessagesDB = new _MessagesDB(); // server/match/match.utils.ts var import_dayjs = __toESM(require_dayjs_min()); var matchLogger = mainLogger.child({ module: "match" }); function formatProfile(profile) { return { ...profile, tagList: profile.tags.split(",").filter((t2) => t2), lastActiveFormatted: import_dayjs.default.unix(profile.lastActive).toString(), viewed: false }; } function formatMatches(match) { return { ...match, tagList: match.tags.split(",").filter((t2) => t2), lastActiveFormatted: import_dayjs.default.unix(match.lastActive).toString(), matchedAtFormatted: import_dayjs.default.unix(match.matchedAt).toString() }; } // ../../packages/database/src/match/index.ts var DEFAULT_IMAGE = "https://upload.wikimedia.org/wikipedia/commons/a/ac/No_image_available.svg"; var MATCHES_PER_PAGE = 20; var _MatchDB = class { async getPotentialProfiles(identifier) { const query = ` SELECT npwd_match_profiles.*, UNIX_TIMESTAMP(npwd_match_profiles.updatedAt) AS lastActive, MaxDates.lastSeen, MaxDates.liked FROM npwd_match_profiles LEFT OUTER JOIN ( SELECT id, profile, liked, MAX(createdAt) AS lastSeen FROM npwd_match_views WHERE identifier = ? GROUP BY id, profile, liked ) AS MaxDates ON npwd_match_profiles.id = MaxDates.profile WHERE npwd_match_profiles.identifier != ? AND (MaxDates.lastSeen IS NULL OR MaxDates.lastSeen < NOW() - INTERVAL 7 DAY) AND MaxDates.liked IS NULL ORDER BY npwd_match_profiles.updatedAt DESC LIMIT 25 `; const [results] = await db_wrapper_default2._rawExec(query, [identifier, identifier]); return results; } async saveLikes(identifier, like) { const query = `INSERT INTO npwd_match_views (identifier, profile, liked) VALUES (?, ?, ?)`; const results = await db_wrapper_default2._rawExec(query, [identifier, like.id, like.liked]); return results; } async checkForMatchById(identifier, id) { const query = ` SELECT targetProfile.*, UNIX_TIMESTAMP(targetProfile.updatedAt) AS lastActive FROM npwd_match_views LEFT OUTER JOIN npwd_match_profiles AS playerProfile ON npwd_match_views.profile = playerProfile.id LEFT OUTER JOIN npwd_match_profiles AS targetProfile ON npwd_match_views.identifier = targetProfile.identifier WHERE playerProfile.identifier = ? AND targetProfile.id = ? AND liked = 1 `; const [results] = await db_wrapper_default2._rawExec(query, [identifier, id]); return results; } async findAllMatches(identifier, page) { const offset = MATCHES_PER_PAGE * page; const query = ` SELECT targetProfile.*, UNIX_TIMESTAMP(targetProfile.updatedAt) AS lastActive, UNIX_TIMESTAMP(GREATEST(npwd_match_views.createdAt, targetViews.createdAt)) AS matchedAt, targetUser.${config2.database.phoneNumberColumn} AS phoneNumber FROM npwd_match_views LEFT OUTER JOIN npwd_match_profiles AS targetProfile ON npwd_match_views.profile = targetProfile.id LEFT OUTER JOIN npwd_match_profiles AS myProfile ON npwd_match_views.identifier = myProfile.identifier LEFT OUTER JOIN npwd_match_views AS targetViews ON targetProfile.identifier = targetViews.identifier AND targetViews.profile = myProfile.id LEFT OUTER JOIN ${config2.database.playerTable} AS targetUser ON targetProfile.identifier = targetUser.${config2.database.identifierColumn} WHERE npwd_match_views.identifier = ? AND npwd_match_views.liked = 1 AND targetViews.liked = 1 ORDER BY matchedAt DESC LIMIT ? OFFSET ? `; const [results] = await db_wrapper_default2._rawExec(query, [ identifier, MATCHES_PER_PAGE.toString(), offset.toString() ]); return results; } async getPlayerProfile(identifier) { const query = ` SELECT *, UNIX_TIMESTAMP(updatedAt) AS lastActive FROM npwd_match_profiles WHERE identifier = ? LIMIT 1 `; const [results] = await db_wrapper_default2._rawExec(query, [identifier]); const profiles = results; return profiles[0]; } async createProfile(identifier, profile) { const { name, image, bio, location, job, tags, voiceMessage } = profile; const query = ` INSERT INTO npwd_match_profiles (identifier, name, image, bio, location, job, tags, voiceMessage) VALUES (?, ?, ?, ?, ?, ?, ?, ?) `; await pool2.execute(query, [identifier, name, image, bio, location, job, tags, voiceMessage]); return await this.getPlayerProfile(identifier); } async updateProfile(identifier, profile) { const { image, name, bio, location, job, tags, voiceMessage } = profile; const query = ` UPDATE npwd_match_profiles SET image = ?, name = ?, bio = ?, location = ?, job = ?, tags = ?, voiceMessage = ? WHERE identifier = ? `; await pool2.execute(query, [image, name, bio, location, job, tags, voiceMessage, identifier]); return await this.getPlayerProfile(identifier); } async createDefaultProfile(identifier) { if (!config2.match.generateProfileNameFromUsers) return null; const defaultProfileName = await generateProfileName(identifier, " "); if (!defaultProfileName) return null; const defaultProfile = { name: defaultProfileName, image: DEFAULT_IMAGE, bio: "", location: "", job: "", tags: "", voiceMessage: null }; matchLogger.info(`Creating default match profile ${defaultProfileName} for ${identifier}`); return await this.createProfile(identifier, defaultProfile); } async checkIfMatched(identifier, like) { const matchedProfiles = await this.checkForMatchById(identifier, like.id); return matchedProfiles[0]; } async getOrCreateProfile(identifier) { const profile = await this.getPlayerProfile(identifier); return profile || await this.createDefaultProfile(identifier); } async updateLastActive(identifier) { const query = ` UPDATE npwd_match_profiles SET updatedAt = CURRENT_TIMESTAMP() WHERE identifier = ? `; await pool2.execute(query, [identifier]); } }; var MatchDB = new _MatchDB(); // ../../packages/database/src/marketplace/index.ts var _MarketplaceDB = class { async addListing(identifier, username, name, number, listing) { const query = "INSERT INTO npwd_marketplace_listings (identifier, username, name, number, title, url, description) VALUES (?, ?, ?, ?, ?, ?, ?)"; const [result] = await db_wrapper_default2._rawExec(query, [ identifier, username, name, number, listing.title, listing.url, listing.description ]); const resultCast = result; return resultCast.insertId; } async fetchListings() { const query = "SELECT * FROM npwd_marketplace_listings WHERE reported = 0 ORDER BY id DESC"; const [results] = await db_wrapper_default2._rawExec(query); return results; } async deleteListing(listingId, identifier) { const query = "DELETE FROM npwd_marketplace_listings WHERE id = ? AND identifier = ?"; await db_wrapper_default2._rawExec(query, [listingId, identifier]); } async deleteListingsOnDrop(identifier) { const query = `DELETE FROM npwd_marketplace_listings WHERE identifier = ? AND reported = 0`; await db_wrapper_default2._rawExec(query, [identifier]); } async getListing(listingId) { const query = `SELECT * FROM npwd_marketplace_listings WHERE id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [listingId]); const listings = results; return listings[0]; } async getListingIdsByIdentifier(identifier) { const query = `SELECT id FROM npwd_marketplace_listings WHERE identifier = ?`; const [results] = await db_wrapper_default2._rawExec(query, [identifier]); return results; } async reportListing(listing) { const query = `UPDATE npwd_marketplace_listings SET reported = 1 WHERE id = ?`; await db_wrapper_default2._rawExec(query, [listing.id]); } async doesListingExist(listing, identifier) { const query = `SELECT * FROM npwd_marketplace_listings WHERE title = ? AND identifier = ?`; const [results] = await db_wrapper_default2._rawExec(query, [listing.title, identifier]); const listings = results; return listings.length > 0; } async doesReportExist(listingId, profile) { const query = `SELECT * FROM npwd_marketplace_listings WHERE id = ? AND username = ? AND reported = 1`; const [results] = await db_wrapper_default2._rawExec(query, [listingId, profile]); const result = results; return result.length > 0; } }; var MarketplaceDB = new _MarketplaceDB(); // ../../packages/database/src/darkchat/index.ts var _DarkchatDB = class { async getAllChannels(userIdentifier) { const query = `SELECT npwd_darkchat_channels.id, npwd_darkchat_channels.channel_identifier AS identifier, npwd_darkchat_channels.label FROM npwd_darkchat_channels LEFT JOIN npwd_darkchat_channel_members on npwd_darkchat_channels.id = npwd_darkchat_channel_members.channel_id WHERE npwd_darkchat_channel_members.user_identifier = ?`; const [results] = await db_wrapper_default2._rawExec(query, [userIdentifier]); const channels = results; return Promise.all( channels.map(async (channel) => { const owner = await this.getChannelOwner(channel.id); const ownerPhoneNumber = await player_service_default.getPhoneNumberFromIdentifier(owner); return { ...channel, owner: ownerPhoneNumber }; }) ); } async getMembers(channelId) { const query = `SELECT npwd_darkchat_channel_members.channel_id AS channelId, npwd_darkchat_channel_members.is_owner AS isOwner, npwd_darkchat_channel_members.user_identifier AS identifier FROM npwd_darkchat_channel_members WHERE channel_id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [channelId]); const members = results; return Promise.all( members.map(async (member) => { const player = await player_service_default.getPlayerFromIdentifier(member.identifier); return { ...member, phoneNumber: player ? player.getPhoneNumber() : "" }; }) ); } async transferChannelOwnership(oldOwnerIdentifier, newOwnerIdentifier, channelId) { const query = `UPDATE npwd_darkchat_channel_members SET is_owner = ? WHERE user_identifier = ? AND channel_id = ?`; await db_wrapper_default2._rawExec(query, [0, oldOwnerIdentifier, channelId]); await db_wrapper_default2._rawExec(query, [1, newOwnerIdentifier, channelId]); } async getChannelOwner(channelId) { const query = `SELECT user_identifier FROM npwd_darkchat_channel_members WHERE channel_id = ? AND is_owner = 1`; const [results] = await db_wrapper_default2._rawExec(query, [channelId]); const result = results; return result[0].user_identifier; } async getChannelMessages(channelId) { const query = `SELECT id, message, user_identifier AS identifier, UNIX_TIMESTAMP(createdAt) AS createdAt, is_image AS isImage FROM npwd_darkchat_messages WHERE npwd_darkchat_messages.channel_id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [channelId]); return results; } async getChannelIdAndLabel(channelIdentifier) { const query = `SELECT id, label FROM npwd_darkchat_channels WHERE channel_identifier = ?`; const [results] = await db_wrapper_default2._rawExec(query, [channelIdentifier]); const result = results; return { id: result[0].id, label: result[0].label }; } async joinChannel(channelIdentifier, userIdentifier, isOwner) { const { id: channelId } = await this.getChannelIdAndLabel(channelIdentifier); const query = `INSERT INTO npwd_darkchat_channel_members (channel_id, user_identifier, is_owner) VALUES (?, ?, ?)`; await db_wrapper_default2._rawExec(query, [channelId, userIdentifier, isOwner]); return channelId; } async createChannel(channelIdentifier) { const query = `INSERT INTO npwd_darkchat_channels (channel_identifier, label) VALUES (?, ?)`; const [results] = await db_wrapper_default2._rawExec(query, [channelIdentifier, channelIdentifier]); const result = results; return result.insertId; } async doesChannelExist(channelIdentifier) { const query = `SELECT * FROM npwd_darkchat_channels WHERE channel_identifier = ?`; const [results] = await db_wrapper_default2._rawExec(query, [channelIdentifier]); const result = results; return result.length > 0; } async getMessage(channelId, messageId) { const query = `SELECT id, message, user_identifier AS identifier, UNIX_TIMESTAMP(createdAt) AS createdAt, is_image AS isImage FROM npwd_darkchat_messages WHERE channel_id = ? AND id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [channelId, messageId]); const result = results; return result[0]; } async createMessage(channelId, userIdentifier, message, is_image) { const query = `INSERT INTO npwd_darkchat_messages (channel_id, message, user_identifier, is_image) VALUES (?, ?, ?, ?)`; const [results] = await db_wrapper_default2._rawExec(query, [ channelId, message, userIdentifier, is_image ]); const result = results; return await this.getMessage(channelId, result.insertId); } async getChannelMembers(channelId) { const query = `SELECT channel_id AS channelId, user_identifier AS identifier, is_owner AS isOwner FROM npwd_darkchat_channel_members WHERE channel_id = ?`; const [results] = await db_wrapper_default2._rawExec(query, [channelId]); return results; } async leaveChannel(channelId, userIdentifier) { const query = `DELETE FROM npwd_darkchat_channel_members WHERE channel_id = ? AND user_identifier = ?`; await db_wrapper_default2._rawExec(query, [channelId, userIdentifier]); } async updateChannelLabel(dto) { const query = `UPDATE npwd_darkchat_channels SET label = ? WHERE id = ?`; await db_wrapper_default2._rawExec(query, [dto.label, dto.channelId]); } async deleteChannel(channelId) { const messageQuery = `DELETE FROM npwd_darkchat_messages WHERE channel_id = ?`; const memberQuery = `DELETE FROM npwd_darkchat_channel_members WHERE channel_id = ?`; const query = `DELETE FROM npwd_darkchat_channels WHERE id = ?`; await db_wrapper_default2._rawExec(messageQuery, [channelId]); await db_wrapper_default2._rawExec(memberQuery, [channelId]); await db_wrapper_default2._rawExec(query, [channelId]); } }; var DarkchatDB = new _DarkchatDB(); // ../../packages/database/src/calls/index.ts var _CallsRepo = class { async saveCall(call) { const query = "INSERT INTO npwd_calls (identifier, transmitter, receiver, `start`) VALUES (?, ?, ?, ?)"; await db_wrapper_default2._rawExec(query, [ call.identifier, call.transmitter, call.receiver, call.start ]); } async updateCall(call, isAccepted, end) { const query = "UPDATE npwd_calls SET is_accepted=?, end=? WHERE identifier = ?"; await db_wrapper_default2._rawExec(query, [isAccepted, end, call.identifier]); } async fetchCalls(phoneNumber, limit = 50 /* CALLS_FETCH_LIMIT */) { const query = "SELECT * FROM npwd_calls WHERE receiver = ? OR transmitter = ? ORDER BY id DESC LIMIT ?"; const [result] = await db_wrapper_default2._rawExec(query, [ phoneNumber, phoneNumber, limit.toString() ]); return result; } }; var CallsRepo = new _CallsRepo(); // server/misc/discord.ts var import_axios = __toESM(require_axios2()); var IMAGE_DELIMITER = "||!||"; var discordLogger = mainLogger.child({ module: "discord" }); var DISCORD_WEBHOOK = GetConvar("NPWD_DISCORD_TOKEN", ""); var postToWebhook = async (content) => { if (!DISCORD_WEBHOOK) { discordLogger.warn( "Got a request to report a listing but discord is not configures. See README on how to configure discord endpoints." ); return; } const resp = await import_axios.default.post(DISCORD_WEBHOOK, { ...content }); if (resp.status < 200 && resp.status >= 300) throw new Error(`Discord Error: ${resp.status} Error - ${resp.statusText}`); }; var createDiscordMsgObj = (type, message, fields) => { const curTime = new Date().toISOString(); return { username: "NPWD Anmeldelse", embeds: [ { title: `${type} ANMELDELSE`, color: 15158332, description: message, timestamp: curTime, fields } ] }; }; async function reportTweetToDiscord(tweet, reportingProfile) { const guaranteedFields = [ { name: "Anmeldt af:", value: `\`\`\`Profilnavn: ${reportingProfile.profile_name} Profil-ID: ${reportingProfile.id} Identifier: ${reportingProfile.identifier}\`\`\`` }, { name: "Anmeldt brugers data:", value: `\`\`\`Profilnavn: ${tweet.profile_name} Profil-ID: ${tweet.profile_id} Identifier: ${tweet.identifier}\`\`\`` }, { name: "Tweet:", value: `\`\`\`Besked: ${tweet.message}\`\`\`` } ]; const finalFields = tweet.images ? guaranteedFields.concat({ name: "Anmeldt billede:", value: tweet.images.split(IMAGE_DELIMITER).join("\n") }) : guaranteedFields; const msgObj = createDiscordMsgObj("TWITTER", `Tweet anmeldt`, finalFields); try { await postToWebhook(msgObj); } catch (e2) { discordLogger.error(e2.message); } } async function reportListingToDiscord(listing, reportingProfile) { const guaranteedFields = [ { name: "Anmeldt af:", value: `\`\`\`Profilnavn: ${reportingProfile.profile_name} Profil-ID: ${reportingProfile.id} Identifier: ${reportingProfile.identifier}\`\`\`` }, { name: "Anmeldt brugers data", value: `\`\`\`Profilnavn: ${listing.username} Profil-ID: ${listing.id} Identifier: ${listing.identifier}\`\`\`` }, { name: "Anmeldt opslags titel", value: `\`\`\`Titel: ${listing.name}\`\`\`` }, { name: "Anmeldt opslags beskrivelse", value: `\`\`\`Beskrivelse: ${listing.description}\`\`\`` } ]; const finalFields = listing.url ? guaranteedFields.concat({ name: "Anmeldt billede:", value: listing.url.split(IMAGE_DELIMITER).join("\n") }) : guaranteedFields; const msgObj = createDiscordMsgObj("MARKETPLACE", `Opslag anmeldt`, finalFields); try { await postToWebhook(msgObj); } catch (e2) { discordLogger.error(e2.message); } } // server/utils/imageFiltering.ts var checkAndFilterImage = (imageUrl) => { const image = imageUrl.trim(); if (image == "") { return image; } if (!config.imageSafety.filterUnsafeImageUrls) return image; const hostname = new URL(imageUrl).hostname; if (config.imageSafety.safeImageUrls.includes(hostname)) return image; if (config.imageSafety.embedUnsafeImages) return `${config.imageSafety.embedUrl}?url=${imageUrl}`; return null; }; // server/marketplace/marketplace.service.ts var _MarketplaceService = class { constructor() { this.marketplaceDB = MarketplaceDB; marketplaceLogger.debug("Marketplace service started"); } async handleAddListing(reqObj, resp) { marketplaceLogger.debug("Handling add listing, listing:"); marketplaceLogger.debug(reqObj.data); const player = player_service_default.getPlayer(reqObj.source); const identifier = player.getIdentifier(); try { const doesListingExist = await this.marketplaceDB.doesListingExist(reqObj.data, identifier); if (doesListingExist) return resp({ status: "error", errorMsg: "MARKETPLACE.FEEDBACK.DUPLICATE_LISTING" /* DUPLICATE */ }); const imageUrl = checkAndFilterImage(reqObj.data.url); if (imageUrl == null) { return resp({ status: "error", errorMsg: "GENERIC_INVALID_IMAGE_HOST" /* INVALID_IMAGE_HOST */ }); } reqObj.data.url = imageUrl; const listingId = await this.marketplaceDB.addListing( player.getIdentifier(), player.username, player.getName(), player.getPhoneNumber(), reqObj.data ); resp({ status: "ok" }); const returnObj = { id: listingId, identifier: player.getIdentifier(), name: player.getName(), number: player.getPhoneNumber(), url: reqObj.data.url, username: player.username, description: reqObj.data.description, title: reqObj.data.title }; emitNet("npwd:sendMarketplaceBroadcastAdd" /* BROADCAST_ADD */, -1, { type: "ADD", listing: returnObj }); } catch (e2) { marketplaceLogger.error(`Failed to add listing ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "MARKETPLACE.FEEDBACK.CREATE_LISTING_FAILED" /* CREATE_FAILED */ }); } } async handleFetchListings(req, resp) { try { const listings = await this.marketplaceDB.fetchListings(); resp({ data: listings, status: "ok" }); } catch (e2) { marketplaceLogger.error(`Failed to fetch listings, ${e2.message}`, { source: req.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleDeleteListing(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { await this.marketplaceDB.deleteListing(reqObj.data.id, identifier); resp({ status: "ok" }); const returnObj = reqObj.data.id; emitNet("npwd:sendMarketplaceBroadcastDelete" /* BROADCAST_DELETE */, -1, [returnObj]); } catch (e2) { marketplaceLogger.error(`Error in handleDeleteListing, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleDeleteListingsOnDrop(identifier) { try { const listingIds = await this.marketplaceDB.getListingIdsByIdentifier(identifier); emitNet("npwd:sendMarketplaceBroadcastDelete" /* BROADCAST_DELETE */, -1, listingIds); await this.marketplaceDB.deleteListingsOnDrop(identifier); } catch (e2) { marketplaceLogger.error(`Error when deleting listings on player drop, ${e2.message}`); } } async handleReportListing(reqObj, resp) { try { const rListing = await this.marketplaceDB.getListing(reqObj.data.id); const reportExists = await this.marketplaceDB.doesReportExist( reqObj.data.id, rListing.username ); const reportingPlayer = GetPlayerName(reqObj.source.toString()); if (reportExists) { marketplaceLogger.error(`This listing has already been reported`); resp({ status: "error", errorMsg: "REPORT_EXISTS" }); return; } await this.marketplaceDB.reportListing(rListing); await reportListingToDiscord(rListing, reportingPlayer); } catch (e2) { marketplaceLogger.error(`Failed to report listing ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } }; var MarketplaceService = new _MarketplaceService(); var marketplace_service_default = MarketplaceService; // utils/fivem.ts var Delay = (ms) => new Promise((res) => setTimeout(res, ms)); // server/players/player.service.ts var _PlayerService = class { constructor() { this.playersBySource = new f(); this.playersByIdentifier = new f(); this.playerDB = PlayerRepo; playerLogger.debug("Player Service started"); } addPlayerToMaps(source2, player) { this.playersBySource.set(source2, player); this.playersByIdentifier.set(player.getIdentifier(), player); } deletePlayerFromMaps(source2) { const identifier = this.playersBySource.get(source2).getIdentifier(); this.playersByIdentifier.delete(identifier); this.playersBySource.delete(source2); } getPlayer(source2) { const player = this.playersBySource.get(source2); if (!player) return null; return player; } getIdentifier(source2) { return this.getPlayer(source2).getIdentifier(); } getPlayerFromIdentifier(identifier) { const player = this.playersByIdentifier.get(identifier); if (!player) { return null; } return player; } async getIdentifierFromPhoneNumber(phoneNumber, fetch3) { const onlinePlayer = this.playersBySource.find( (player) => player.getPhoneNumber() === phoneNumber ); if (onlinePlayer) return onlinePlayer.getIdentifier(); if (fetch3) { const fetchResult = await this.playerDB.fetchIdentifierFromPhoneNumber(phoneNumber).catch((e2) => { playerLogger.error( `Failed to fetch identifier from phone number for ${phoneNumber}, error: ${e2.message}` ); return null; }); return fetchResult; } return null; } async handleNewPlayerJoined(pSource) { const playerIdentifier = getPlayerGameLicense(pSource); if (!playerIdentifier) { throw new Error(`License identifier could not be found for source (${pSource})`); } const username = GetPlayerName(pSource.toString()); playerLogger.info(`Started loading for ${username} (${pSource})`); const phone_number = await findOrGeneratePhoneNumber(playerIdentifier); const newPlayer = new Player({ identifier: playerIdentifier, source: pSource, username, phoneNumber: phone_number }); this.addPlayerToMaps(pSource, newPlayer); playerLogger.info("NPWD Player Loaded!"); playerLogger.debug(newPlayer); if (process.env.NODE_ENV === "development") { await Delay(100); } emitNet("npwd:setPlayerLoaded" /* SET_PLAYER_LOADED */, pSource, true); } async createNewPlayer({ src, identifier, phoneNumber }) { const username = GetPlayerName(src.toString()); if (!phoneNumber) { phoneNumber = await findOrGeneratePhoneNumber(identifier); if (!phoneNumber) return null; } return new Player({ source: src, identifier, phoneNumber, username }); } async handleNewPlayerEvent({ source: src, identifier, phoneNumber, firstname, lastname }) { const player = await this.createNewPlayer({ src, identifier: identifier.toString(), phoneNumber }); if (firstname) player.setFirstName(firstname); if (lastname) player.setLastName(lastname); this.addPlayerToMaps(src, player); playerLogger.info(`New NPWD Player added through event (${src}) (${identifier})`); playerLogger.debug(player); emitNet("npwd:setPlayerLoaded" /* SET_PLAYER_LOADED */, src, true); } async getIdentifierByPhoneNumber(phoneNumber, fetch3) { for (const [_, player] of this.playersBySource) { if (player.getPhoneNumber() === phoneNumber) return player.getIdentifier(); } if (fetch3) { return await this.playerDB.fetchIdentifierFromPhoneNumber(phoneNumber); } } async getPhoneNumberFromIdentifier(identifier) { return await this.playerDB.fetchPhoneNumberFromIdentifier(identifier); } async clearPlayerData(src) { const identifier = this.getIdentifier(src); if (!config.marketplace.persistListings) { try { await marketplace_service_default.handleDeleteListingsOnDrop(identifier); } catch (e2) { playerLogger.error(`Failed to clear player data when dropped, Error: ${e2.message}`); } } } async handleUnloadPlayerEvent(src) { await this.clearPlayerData(src); this.deletePlayerFromMaps(src); emitNet("npwd:setPlayerLoaded" /* SET_PLAYER_LOADED */, src, false); playerLogger.info(`Unloaded NPWD Player, source: (${src})`); } }; var PlayerService = new _PlayerService(); var player_service_default = PlayerService; // server/lib/GlobalRateLimiter.ts var GlobalRateLimiter = class { constructor(timeBetweenReq = 250) { this.rateLimits = /* @__PURE__ */ new Map(); this.timeBetweenRequests = timeBetweenReq; } registerNewEvent(event, options) { this.rateLimits.set(event, { limiters: /* @__PURE__ */ new Map(), options }); } isPlayerRateLimited(event, source2) { return !!this.rateLimits?.get(event).limiters.get(source2); } rateLimitPlayer(event, source2) { let rateLimiter = this.rateLimits.get(event); rateLimiter.limiters.set(source2, true); setTimeout(() => { rateLimiter.limiters.delete(source2); }, rateLimiter.options?.rateLimit || this.timeBetweenRequests); } }; // server/lib/PromiseNetEvents/onNetPromise.ts var netEventLogger = mainLogger.child({ module: "events" }); var globalRateLimiter = new GlobalRateLimiter(250); function onNetPromise(eventName, cb, options = null) { globalRateLimiter.registerNewEvent(eventName, options); onNet(eventName, async (respEventName, data) => { const startTime = process.hrtime.bigint(); const src = getSource(); if (!respEventName) { return netEventLogger.warn( `Promise event (${eventName}) was called with wrong struct by ${src} (maybe originator wasn't a promiseEvent` ); } const promiseRequest = { source: src, data }; netEventLogger.silly(`netPromise > ${eventName} > RequestObj`); netEventLogger.silly(promiseRequest); const promiseResp = (data2) => { const endTime = process.hrtime.bigint(); const totalTime = Number(endTime - startTime) / 1e6; emitNet(respEventName, src, data2); netEventLogger.silly(`Response Promise Event ${respEventName} (${totalTime}ms), Data >>`); netEventLogger.silly(data2); }; if (globalRateLimiter.isPlayerRateLimited(eventName, src)) { return promiseResp({ status: "error", errorMsg: "ERROR_RATE_LIMITED" }); } else { globalRateLimiter.rateLimitPlayer(eventName, source); } Promise.resolve(cb(promiseRequest, promiseResp)).catch((e2) => { netEventLogger.error( `An error occured for a onNetPromise (${eventName}), Error: ${e2.message}` ); promiseResp({ status: "error", errorMsg: "UNKNOWN_ERROR" }); }); }); } // server/players/player.controller.ts onNet("npwd:getCredentials" /* FETCH_CREDENTIALS */, () => { const src = getSource(); const player = player_service_default.getPlayer(src); const phoneNumber = player.getPhoneNumber(); const playerIdentifier = player.getIdentifier(); emitNet("npwd:sendCredentials" /* SEND_CREDENTIALS */, src, phoneNumber, src, playerIdentifier); }); onNetPromise("npwd:getPhoneNumber" /* GET_PHONE_NUMBER */, async (reqObj, resp) => { const src = reqObj.source; const phoneNumber = player_service_default.getPlayer(src).getPhoneNumber(); resp({ status: "ok", data: phoneNumber }); }); if (!config.general.useResourceIntegration) { on("playerJoining", async () => { const src = getSource(); await player_service_default.handleNewPlayerJoined(src); }); } on("playerDropped", async () => { const src = getSource(); try { await player_service_default.handleUnloadPlayerEvent(src); } catch (e2) { playerLogger.debug(`${src} failed to unload, likely was never loaded in the first place.`); } }); if (!config.general.useResourceIntegration) { on("onServerResourceStart", async (resource) => { if (resource === GetCurrentResourceName()) { const onlinePlayers = getPlayers(); for (const player of onlinePlayers) { await player_service_default.handleNewPlayerJoined(parseInt(player)); } } }); } // ../../node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/wrapper.mjs var import_dist = __toESM(require_dist4(), 1); var v1 = import_dist.default.v1; var v3 = import_dist.default.v3; var v4 = import_dist.default.v4; var v5 = import_dist.default.v5; var NIL = import_dist.default.NIL; var version = import_dist.default.version; var validate = import_dist.default.validate; var stringify = import_dist.default.stringify; var parse = import_dist.default.parse; // server/calls/calls.utils.ts var callLogger = mainLogger.child({ module: "calls" }); // server/calls/calls.service.ts var CallsService = class { constructor() { this.callMap = new f(); this.callsDB = CallsRepo; callLogger.debug("Call service started"); } setCallInMap(transmitterNumber, callObj) { this.callMap.set(transmitterNumber, callObj); callLogger.debug(`Call obj set with key ${transmitterNumber}, value:`); callLogger.debug(callObj); } async handleInitializeCall(reqObj, resp) { const transmittingPlayer = player_service_default.getPlayer(reqObj.source); const transmitterNumber = transmittingPlayer.getPhoneNumber(); const receiverIdentifier = await player_service_default.getIdentifierFromPhoneNumber( reqObj.data.receiverNumber, true ); const startCallTimeUnix = Math.floor(new Date().getTime() / 1e3); const callIdentifier = v4(); const tempSaveCallObj = { identifier: callIdentifier, transmitter: transmitterNumber, receiver: reqObj.data.receiverNumber, is_accepted: false, start: startCallTimeUnix.toString() }; if (!receiverIdentifier) { await this.callsDB.saveCall(tempSaveCallObj); return resp({ status: "ok", data: { transmitter: transmitterNumber, isTransmitter: true, receiver: reqObj.data.receiverNumber, isUnavailable: true, is_accepted: false, start: startCallTimeUnix.toString(), identifier: callIdentifier } }); } const receivingPlayer = player_service_default.getPlayerFromIdentifier(receiverIdentifier); if (!receivingPlayer) { await this.callsDB.saveCall(tempSaveCallObj); return resp({ status: "ok", data: { is_accepted: false, transmitter: transmitterNumber, isTransmitter: true, receiver: reqObj.data.receiverNumber, isUnavailable: true, start: startCallTimeUnix.toString(), identifier: callIdentifier } }); } callLogger.debug(`Receiving Identifier: ${receiverIdentifier}`); callLogger.debug(`Receiving source: ${receivingPlayer.source} `); const callObj = { identifier: callIdentifier, transmitter: transmitterNumber, transmitterSource: transmittingPlayer.source, receiver: reqObj.data.receiverNumber, receiverSource: receivingPlayer.source, start: startCallTimeUnix.toString(), is_accepted: false }; this.setCallInMap(callObj.transmitter, callObj); try { await this.callsDB.saveCall(callObj); } catch (e2) { callLogger.error( `Unable to save call object for transmitter number ${transmitterNumber}. Error: ${e2.message}` ); resp({ status: "error", errorMsg: "DATABASE_ERROR" }); } resp({ status: "ok", data: { is_accepted: false, transmitter: transmitterNumber, receiver: reqObj.data.receiverNumber, isTransmitter: true, start: startCallTimeUnix.toString(), identifier: callIdentifier } }); emitNetTyped( "npwd:startCall" /* START_CALL */, { is_accepted: false, transmitter: transmitterNumber, receiver: reqObj.data.receiverNumber, isTransmitter: false }, receivingPlayer.source ); } async handleAcceptCall(src, transmitterNumber) { const targetCallItem = this.callMap.get(transmitterNumber); targetCallItem.is_accepted = true; const channelId = targetCallItem.transmitterSource; await this.callsDB.updateCall(targetCallItem, true, null); callLogger.debug(`Call with key ${transmitterNumber} was updated to be accepted`); emitNetTyped( "npwd:callAccepted" /* WAS_ACCEPTED */, { is_accepted: true, transmitter: transmitterNumber, receiver: targetCallItem.receiver, isTransmitter: false, channelId }, targetCallItem.receiverSource ); mainLogger.debug(targetCallItem); emitNetTyped( "npwd:callAccepted" /* WAS_ACCEPTED */, { is_accepted: true, transmitter: transmitterNumber, receiver: targetCallItem.receiver, isTransmitter: true, channelId }, targetCallItem.transmitterSource ); } async handleFetchCalls(reqObj, resp) { try { const player = player_service_default.getPlayer(reqObj.source); const srcPlayerNumber = player.getPhoneNumber(); const calls = await this.callsDB.fetchCalls(srcPlayerNumber); resp({ status: "ok", data: calls }); } catch (e2) { resp({ status: "error", errorMsg: "DATABASE_ERROR" }); console.error(`Error while fetching calls, ${e2.message}`); } } async handleRejectCall(src, transmitterNumber) { const currentCall = this.callMap.get(transmitterNumber); const endCallTimeUnix = Math.floor(new Date().getTime() / 1e3); if (!currentCall) { callLogger.error( `Call with transmitter number ${transmitterNumber} does not exist in current calls map!` ); return; } emitNet("npwd:callRejected" /* WAS_REJECTED */, currentCall.receiverSource, currentCall); emitNet("npwd:callRejected" /* WAS_REJECTED */, currentCall.transmitterSource, currentCall); await this.callsDB.updateCall(currentCall, false, endCallTimeUnix); this.callMap.delete(transmitterNumber); } async handleEndCall(reqObj, resp) { const transmitterNumber = reqObj.data.transmitterNumber; const endCallTimeUnix = Math.floor(new Date().getTime() / 1e3); if (reqObj.data.isUnavailable) { emitNet("npwd:callEnded" /* WAS_ENDED */, reqObj.source); resp({ status: "ok" }); return; } const currentCall = this.callMap.get(transmitterNumber); if (!currentCall) { callLogger.error( `Call with transmitter number ${transmitterNumber} does not exist in current calls map!` ); return resp({ status: "error", errorMsg: "DOES_NOT_EXIST" }); } if (currentCall) { if (currentCall.is_accepted) { emitNet( "npwd:callEnded" /* WAS_ENDED */, currentCall.receiverSource, currentCall.transmitterSource, currentCall ); emitNet( "npwd:callEnded" /* WAS_ENDED */, currentCall.transmitterSource, currentCall.transmitterSource, currentCall ); } else { emitNet("npwd:callRejected" /* WAS_REJECTED */, currentCall.receiverSource, currentCall); emitNet("npwd:callRejected" /* WAS_REJECTED */, currentCall.transmitterSource, currentCall); } } resp({ status: "ok" }); await this.callsDB.updateCall(currentCall, currentCall?.is_accepted, endCallTimeUnix); this.callMap.delete(transmitterNumber); } }; var calls_service_default = new CallsService(); // server/calls/middleware/onCall.ts var exp2 = global.exports; var OnCallMap = /* @__PURE__ */ new Map(); exp2("onCall", (tgtNumber, cb) => { OnCallMap.set(tgtNumber, cb); }); // server/messages/messages.service.ts var _MessagesService = class { constructor() { this.messagesDB = MessagesDB; messagesLogger.debug("Messages service started"); } async handleFetchMessageConversations(reqObj, resp) { const phoneNumber = player_service_default.getPlayer(reqObj.source).getPhoneNumber(); try { const conversations = await MessagesDB.getConversations(phoneNumber); resp({ status: "ok", data: conversations }); } catch (err) { resp({ status: "error", errorMsg: err.message }); } } async handleCreateMessageConversation(reqObj, resp) { const playerPhoneNumber = player_service_default.getPlayer(reqObj.source).getPhoneNumber(); const conversation = reqObj.data; const participants = conversation.participants; const conversationList = createGroupHashID(participants); const doesExist = await this.messagesDB.doesConversationExist(conversationList); if (doesExist) { const playerHasConversation = await this.messagesDB.doesConversationExistForPlayer( conversationList, playerPhoneNumber ); if (playerHasConversation) { return resp({ status: "error", errorMsg: "MESSAGES.FEEDBACK.MESSAGE_CONVERSATION_DUPLICATE" }); } else { const conversationId = await this.messagesDB.addParticipantToConversation( conversationList, playerPhoneNumber ); const respData = { id: conversationId, label: conversation.conversationLabel, conversationList, isGroupChat: conversation.isGroupChat }; return resp({ status: "ok", data: { ...respData, participant: playerPhoneNumber } }); } } try { const conversationId = await MessagesDB.createConversation( participants, conversationList, conversation.conversationLabel, conversation.isGroupChat ); const respData = { id: conversationId, label: conversation.conversationLabel, conversationList, isGroupChat: conversation.isGroupChat }; resp({ status: "ok", data: { ...respData, participant: playerPhoneNumber } }); for (const participant of participants) { if (participant !== playerPhoneNumber) { const participantIdentifier = await player_service_default.getIdentifierByPhoneNumber(participant); const participantPlayer = player_service_default.getPlayerFromIdentifier(participantIdentifier); if (participantPlayer) { emitNetTyped( "npwd:createMessageConversationSuccess" /* CREATE_MESSAGE_CONVERSATION_SUCCESS */, { ...respData, participant: participantPlayer.getPhoneNumber() }, participantPlayer.source ); } } } } catch (err) { messagesLogger.error( `Error occurred on creating message conversation (${reqObj.source}), Error: ${err.message}` ); resp({ status: "error", errorMsg: err.message }); } } async handleFetchMessages(reqObj, resp) { try { const messages = await MessagesDB.getMessages(reqObj.data); const sortedMessages = messages.sort((a, b) => a.id - b.id); resp({ status: "ok", data: sortedMessages }); } catch (err) { resp({ status: "error", errorMsg: err.message }); } } async handleSendMessage(reqObj, resp) { try { const player = player_service_default.getPlayer(reqObj.source); const authorPhoneNumber = player.getPhoneNumber(); const messageData = reqObj.data; const participants = getIdentifiersFromParticipants(messageData.conversationList); const userIdentifier = player.getIdentifier(); const conversationDetails = await this.messagesDB.getConversation(messageData.conversationId); const message = await this.messagesDB.createMessage({ userIdentifier, authorPhoneNumber, conversationId: messageData.conversationId, message: messageData.message, is_embed: messageData.is_embed, embed: messageData.embed }); resp({ status: "ok", data: { ...message, message: message.message, conversation_id: messageData.conversationId, author: authorPhoneNumber, is_embed: messageData.is_embed } }); const conversationData = { id: messageData.conversationId, label: conversationDetails.label, conversationList: conversationDetails.conversationList, isGroupChat: conversationDetails.isGroupChat }; for (const participantId of participants) { if (participantId !== authorPhoneNumber) { try { const playerHasConversation = await this.messagesDB.doesConversationExistForPlayer( messageData.conversationList, participantId ); if (!playerHasConversation) { const conversationId = await this.messagesDB.addParticipantToConversation( conversationDetails.conversationList, participantId ); } const participantIdentifier = await player_service_default.getIdentifierByPhoneNumber( participantId, true ); const participantNumber = await player_service_default.getPhoneNumberFromIdentifier( participantIdentifier ); const participantPlayer = player_service_default.getPlayerFromIdentifier(participantIdentifier); await this.messagesDB.setMessageUnread(messageData.conversationId, participantNumber); if (participantPlayer) { if (!playerHasConversation) { emitNetTyped( "npwd:createMessageConversationSuccess" /* CREATE_MESSAGE_CONVERSATION_SUCCESS */, { ...conversationData, participant: authorPhoneNumber }, participantPlayer.source ); } emitNet("npwd:sendMessageSuccess" /* SEND_MESSAGE_SUCCESS */, participantPlayer.source, { ...message, conversation_id: messageData.conversationId, author: authorPhoneNumber }); emitNet("npwd:createMessagesBroadcast" /* CREATE_MESSAGE_BROADCAST */, participantPlayer.source, { conversationName: authorPhoneNumber, conversation_id: messageData.conversationId, message: messageData.message, is_embed: messageData.is_embed, embed: messageData.embed }); } } catch (err) { messagesLogger.warn(`Failed to broadcast message. Player is not online.`); } } } } catch (err) { resp({ status: "error", errorMsg: err.message }); } } async handleSetMessageRead(reqObj, resp) { const phoneNumber = player_service_default.getPlayer(reqObj.source).getPhoneNumber(); try { await this.messagesDB.setMessageRead(reqObj.data, phoneNumber); resp({ status: "ok" }); } catch (err) { messagesLogger.error(`Failed to read message. Error: ${err.message}`); resp({ status: "error" }); } } async handleDeleteMessage(reqObj, resp) { try { await this.messagesDB.deleteMessage(reqObj.data); resp({ status: "ok" }); } catch (err) { resp({ status: "error", errorMsg: err.message }); } } async handleDeleteConversation(reqObj, resp) { const phoneNumber = player_service_default.getPlayer(reqObj.source).getPhoneNumber(); const conversationsId = reqObj.data.conversationsId; try { for (const id of conversationsId) { await this.messagesDB.deleteConversation(id, phoneNumber); } resp({ status: "ok" }); } catch (err) { resp({ status: "error", errorMsg: err.message }); } } async handleEmitMessage(dto) { const { senderNumber, targetNumber, message, embed } = dto; try { const senderPlayer = await player_service_default.getIdentifierFromPhoneNumber(senderNumber, true); const participantIdentifier = await player_service_default.getIdentifierFromPhoneNumber(targetNumber); const participantPlayer = player_service_default.getPlayerFromIdentifier(participantIdentifier); const conversationList = createGroupHashID([senderNumber, targetNumber]); const doesConversationExist = await this.messagesDB.doesConversationExist(conversationList); let conversationId; if (!doesConversationExist) { conversationId = await this.messagesDB.createConversation( [senderNumber, targetNumber], conversationList, "", false ); if (participantPlayer) { emitNetTyped( "npwd:createMessageConversationSuccess" /* CREATE_MESSAGE_CONVERSATION_SUCCESS */, { id: conversationId, conversationList, label: "", isGroupChat: false, participant: targetNumber }, participantPlayer.source ); } } else { conversationId = await this.messagesDB.getConversationId(conversationList); } const msg = await this.messagesDB.createMessage({ message, embed, is_embed: !!embed, conversationId, userIdentifier: senderPlayer || senderNumber, authorPhoneNumber: senderNumber }); const messageData = { ...msg, conversationList, conversation_id: conversationId, author: senderNumber }; if (participantPlayer) { emitNet("npwd:sendMessageSuccess" /* SEND_MESSAGE_SUCCESS */, participantPlayer.source, { ...messageData, conversation_id: conversationId, author: senderNumber }); emitNet("npwd:createMessagesBroadcast" /* CREATE_MESSAGE_BROADCAST */, participantPlayer.source, { ...messageData, conversationName: senderNumber, conversation_id: conversationId, message: messageData.message, is_embed: messageData.is_embed, embed: messageData.embed }); } await this.messagesDB.setMessageUnread(conversationId, targetNumber); } catch (err) { console.log(`Failed to emit message. Error: ${err.message}`); } } async handleGetLocation(reqObj, resp) { const phoneNumber = player_service_default.getPlayer(reqObj.source).getPhoneNumber(); const playerPed = GetPlayerPed(reqObj.source.toString()); resp({ status: "ok", data: { phoneNumber, coords: GetEntityCoords(playerPed) } }); } }; var MessagesService = new _MessagesService(); var messages_service_default = MessagesService; // server/calls/calls.controller.ts onNetPromise("npwd:beginCall" /* INITIALIZE_CALL */, async (reqObj, resp) => { const funcRef = OnCallMap.get(reqObj.data.receiverNumber); if (funcRef) { const caller = player_service_default.getPlayer(reqObj.source); const incomingCaller = { source: reqObj.source, name: caller.getName(), number: caller.getPhoneNumber() }; try { await new Promise((resolve, reject) => { funcRef({ incomingCaller, next: () => { resolve(); }, exit: () => { reject(); }, reply: (message) => { messages_service_default.handleEmitMessage({ senderNumber: reqObj.data.receiverNumber, targetNumber: incomingCaller.number, message }); }, forward: (receiverNumber) => { calls_service_default.handleInitializeCall({ ...reqObj, data: { receiverNumber } }, resp).catch((e2) => { resp({ status: "error", errorMsg: "SERVER_ERROR" }); callLogger.error(`Error occured handling init call: ${e2.message}`); }).then(() => { return; }).catch(reject); } }); }); } catch (e2) { const tempSaveCallObj = { identifier: v4(), isTransmitter: true, transmitter: incomingCaller.number, receiver: reqObj.data.receiverNumber, is_accepted: false, isUnavailable: true, start: Math.floor(new Date().getTime() / 1e3).toString() }; resp({ status: "ok", data: tempSaveCallObj }); return setTimeout(() => { emitNet("npwd:callRejected" /* WAS_REJECTED */, reqObj.source, tempSaveCallObj); }, 2e3); } } calls_service_default.handleInitializeCall(reqObj, resp).catch((e2) => { resp({ status: "error", errorMsg: "SERVER_ERROR" }); callLogger.error(`Error occured handling init call: ${e2.message}`); }); }); onNetTyped("npwd:acceptCall" /* ACCEPT_CALL */, ({ transmitterNumber }) => { const src = getSource(); calls_service_default.handleAcceptCall(src, transmitterNumber).catch( (e2) => callLogger.error( `Error occured in accept call event (${transmitterNumber}), Error: ${e2.message}` ) ); }); onNetTyped("npwd:rejectCall" /* REJECTED */, (data) => { const src = getSource(); calls_service_default.handleRejectCall(src, data.transmitterNumber).catch( (e2) => callLogger.error( `Error occured in rejectcall event (${data.transmitterNumber}), Error: ${e2.message}` ) ); }); onNetPromise("npwd:endCall" /* END_CALL */, (reqObj, resp) => { calls_service_default.handleEndCall(reqObj, resp).catch((e2) => { callLogger.error( `Error occured in end call event (${reqObj.data.transmitterNumber}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "SERVER_ERROR" }); }); }); onNetPromise("npwd:fetchCalls" /* FETCH_CALLS */, (reqObj, resp) => { calls_service_default.handleFetchCalls(reqObj, resp).catch((e2) => { resp({ status: "error", errorMsg: "SERVER_ERROR" }); callLogger.error(`Error occured in fetch call event, Error: ${e2.message}`); }); }); // server/notes/notes.utils.ts var notesLogger = mainLogger.child({ module: "notes" }); // server/notes/notes.service.ts var _NotesService = class { constructor() { this.notesDB = NotesDB; notesLogger.debug("Notes service started"); } async handleAddNote(reqObj, resp) { notesLogger.debug("Handling add note, note:"); notesLogger.debug(reqObj.data); const identifer = player_service_default.getIdentifier(reqObj.source); try { const noteId = await this.notesDB.addNote(identifer, reqObj.data); resp({ status: "ok", data: { id: noteId, content: reqObj.data.content, title: reqObj.data.title } }); } catch (e2) { notesLogger.error(`Error in handleAddNote, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleFetchNotes(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const notes = await this.notesDB.fetchNotes(identifier); resp({ status: "ok", data: notes }); } catch (e2) { notesLogger.error(`Error in handleFetchNote, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleUpdateNote(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { await this.notesDB.updateNote(reqObj.data, identifier); resp({ status: "ok" }); } catch (e2) { notesLogger.error(`Error in handleUpdateNote, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleDeleteNote(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { await this.notesDB.deleteNote(reqObj.data.id, identifier); resp({ status: "ok", data: reqObj.data }); } catch (e2) { notesLogger.error(`Error in handleDeleteNote, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } }; var NotesService = new _NotesService(); var notes_service_default = NotesService; // server/notes/notes.controller.ts onNetPromise("npwd:addNote" /* ADD_NOTE */, (reqObj, resp) => { notes_service_default.handleAddNote(reqObj, resp).catch((e2) => { notesLogger.error(`Error occured in add note event (${reqObj.source}), Error: ${e2.message}`); resp({ status: "error", errorMsg: "UNKNOWN_ERROR" }); }); }); onNetPromise("npwd:fetchAllNotes" /* FETCH_ALL_NOTES */, (reqObj, resp) => { notes_service_default.handleFetchNotes(reqObj, resp).catch((e2) => { notesLogger.error( `Error occurred in fetch note event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "UNKNOWN_ERROR" }); }); }); onNetPromise("npwd:deleteNote" /* DELETE_NOTE */, async (reqObj, resp) => { notes_service_default.handleDeleteNote(reqObj, resp).catch((e2) => { notesLogger.error( `Error occured in delete note event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "UNKNOWN_ERROR" }); }); }); onNetPromise("npwd:updateNote" /* UPDATE_NOTE */, async (reqObj, resp) => { notes_service_default.handleUpdateNote(reqObj, resp).catch((e2) => { notesLogger.error(`Error occured in fetch note event (${reqObj.source}), Error: ${e2.message}`); resp({ status: "error", errorMsg: "UNKNOWN_ERROR" }); }); }); // server/contacts/contacts.utils.ts var contactsLogger = mainLogger.child({ module: "contact" }); // server/contacts/contacts.service.ts var _ContactService = class { constructor() { this.contactsDB = ContactsDB; contactsLogger.debug("Contacts service started"); } async handleUpdateContact(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const imageUrl = checkAndFilterImage(reqObj.data.avatar); if (imageUrl == null) { return resp({ status: "error", errorMsg: "GENERIC_INVALID_IMAGE_HOST" }); } reqObj.data.avatar = imageUrl; await this.contactsDB.updateContact(reqObj.data, identifier); resp({ status: "ok" }); } catch (e2) { contactsLogger.error(`Error in handleUpdateContact (${identifier}), ${e2.message}`); resp({ status: "error", errorMsg: "CONTACT.FEEDBACK.UPDATE_FAILED" /* UPDATE_FAILED */ }); } } async handleDeleteContact(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { await this.contactsDB.deleteContact(reqObj.data.id, identifier); resp({ status: "ok" }); } catch (e2) { resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); contactsLogger.error(`Error in handleDeleteContact (${identifier}), ${e2.message}`); } } async handleAddContact(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const imageUrl = checkAndFilterImage(reqObj.data.avatar); if (imageUrl == null) { return resp({ status: "error", errorMsg: "GENERIC_INVALID_IMAGE_HOST" }); } reqObj.data.avatar = imageUrl; const contact = await this.contactsDB.addContact(identifier, reqObj.data); resp({ status: "ok", data: contact }); } catch (e2) { contactsLogger.error(`Error in handleAddContact, ${e2.message}`); resp({ status: "error", errorMsg: "CONTACT.FEEDBACK.ADD_FAILED" /* ADD_FAILED */ }); } } async handleFetchContacts(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const contacts = await this.contactsDB.fetchAllContacts(identifier); resp({ status: "ok", data: contacts }); } catch (e2) { resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); contactsLogger.error(`Error in handleFetchContact (${identifier}), ${e2.message}`); } } }; var ContactService = new _ContactService(); var contacts_service_default = ContactService; // server/contacts/contacts.controller.ts var exps = global.exports; onNetPromise("npwd-contact-pay" /* PAY_CONTACT */, (reqObj, resp) => { player_service_default.getIdentifierByPhoneNumber(reqObj.data.number, true).then((response) => { const resourceExport = exps[config.contacts.payResource ?? ""]; if (resourceExport) { exps[config.contacts.payResource][config.contacts.payFunction](reqObj.source, response, reqObj.data.amount); } else { contactsLogger.error(`No such resource exists for ${config.contacts.payResource} (${reqObj.source})`); return resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); } resp({ status: "ok", errorMsg: "" }); }).catch((e2) => { contactsLogger.error( `Error occured in fetch identifier by phone event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd-contact-getAll" /* GET_CONTACTS */, (reqObj, resp) => { contacts_service_default.handleFetchContacts(reqObj, resp).catch((e2) => { contactsLogger.error( `Error occured in fetch contacts event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd-contact-add" /* ADD_CONTACT */, (reqObj, resp) => { contacts_service_default.handleAddContact(reqObj, resp).catch((e2) => { contactsLogger.error( `Error occured in fetch contacts event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:updateContact" /* UPDATE_CONTACT */, (reqObj, resp) => { contacts_service_default.handleUpdateContact(reqObj, resp).catch((e2) => { contactsLogger.error( `Error occured in update contact event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:deleteContact" /* DELETE_CONTACT */, (reqObj, resp) => { contacts_service_default.handleDeleteContact(reqObj, resp).catch((e2) => { contactsLogger.error( `Error occured in delete contact event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); // server/photo/photo.utils.ts var photoLogger = mainLogger.child({ module: "photo" }); // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/index.js var import_node_http2 = __toESM(require("http"), 1); var import_node_https = __toESM(require("https"), 1); var import_node_zlib = __toESM(require("zlib"), 1); var import_node_stream2 = __toESM(require("stream"), 1); var import_node_buffer2 = require("buffer"); // ../../node_modules/.pnpm/data-uri-to-buffer@4.0.1/node_modules/data-uri-to-buffer/dist/index.js function dataUriToBuffer(uri) { if (!/^data:/i.test(uri)) { throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")'); } uri = uri.replace(/\r?\n/g, ""); const firstComma = uri.indexOf(","); if (firstComma === -1 || firstComma <= 4) { throw new TypeError("malformed data: URI"); } const meta = uri.substring(5, firstComma).split(";"); let charset = ""; let base64 = false; const type = meta[0] || "text/plain"; let typeFull = type; for (let i2 = 1; i2 < meta.length; i2++) { if (meta[i2] === "base64") { base64 = true; } else if (meta[i2]) { typeFull += `;${meta[i2]}`; if (meta[i2].indexOf("charset=") === 0) { charset = meta[i2].substring(8); } } } if (!meta[0] && !charset.length) { typeFull += ";charset=US-ASCII"; charset = "US-ASCII"; } const encoding = base64 ? "base64" : "ascii"; const data = unescape(uri.substring(firstComma + 1)); const buffer = Buffer.from(data, encoding); buffer.type = type; buffer.typeFull = typeFull; buffer.charset = charset; return buffer; } var dist_default = dataUriToBuffer; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/body.js var import_node_stream = __toESM(require("stream"), 1); var import_node_util = require("util"); var import_node_buffer = require("buffer"); init_fetch_blob(); init_esm_min(); // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/errors/base.js var FetchBaseError = class extends Error { constructor(message, type) { super(message); Error.captureStackTrace(this, this.constructor); this.type = type; } get name() { return this.constructor.name; } get [Symbol.toStringTag]() { return this.constructor.name; } }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/errors/fetch-error.js var FetchError = class extends FetchBaseError { constructor(message, type, systemError) { super(message, type); if (systemError) { this.code = this.errno = systemError.code; this.erroredSysCall = systemError.syscall; } } }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/utils/is.js var NAME = Symbol.toStringTag; var isURLSearchParameters = (object) => { return typeof object === "object" && typeof object.append === "function" && typeof object.delete === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.has === "function" && typeof object.set === "function" && typeof object.sort === "function" && object[NAME] === "URLSearchParams"; }; var isBlob = (object) => { return object && typeof object === "object" && typeof object.arrayBuffer === "function" && typeof object.type === "string" && typeof object.stream === "function" && typeof object.constructor === "function" && /^(Blob|File)$/.test(object[NAME]); }; var isAbortSignal = (object) => { return typeof object === "object" && (object[NAME] === "AbortSignal" || object[NAME] === "EventTarget"); }; var isDomainOrSubdomain = (destination, original) => { const orig = new URL(original).hostname; const dest = new URL(destination).hostname; return orig === dest || orig.endsWith(`.${dest}`); }; var isSameProtocol = (destination, original) => { const orig = new URL(original).protocol; const dest = new URL(destination).protocol; return orig === dest; }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/body.js var pipeline = (0, import_node_util.promisify)(import_node_stream.default.pipeline); var INTERNALS = Symbol("Body internals"); var Body = class { constructor(body, { size = 0 } = {}) { let boundary = null; if (body === null) { body = null; } else if (isURLSearchParameters(body)) { body = import_node_buffer.Buffer.from(body.toString()); } else if (isBlob(body)) { } else if (import_node_buffer.Buffer.isBuffer(body)) { } else if (import_node_util.types.isAnyArrayBuffer(body)) { body = import_node_buffer.Buffer.from(body); } else if (ArrayBuffer.isView(body)) { body = import_node_buffer.Buffer.from(body.buffer, body.byteOffset, body.byteLength); } else if (body instanceof import_node_stream.default) { } else if (body instanceof FormData2) { body = formDataToBlob(body); boundary = body.type.split("=")[1]; } else { body = import_node_buffer.Buffer.from(String(body)); } let stream = body; if (import_node_buffer.Buffer.isBuffer(body)) { stream = import_node_stream.default.Readable.from(body); } else if (isBlob(body)) { stream = import_node_stream.default.Readable.from(body.stream()); } this[INTERNALS] = { body, stream, boundary, disturbed: false, error: null }; this.size = size; if (body instanceof import_node_stream.default) { body.on("error", (error_) => { const error = error_ instanceof FetchBaseError ? error_ : new FetchError(`Invalid response body while trying to fetch ${this.url}: ${error_.message}`, "system", error_); this[INTERNALS].error = error; }); } } get body() { return this[INTERNALS].stream; } get bodyUsed() { return this[INTERNALS].disturbed; } async arrayBuffer() { const { buffer, byteOffset, byteLength } = await consumeBody(this); return buffer.slice(byteOffset, byteOffset + byteLength); } async formData() { const ct = this.headers.get("content-type"); if (ct.startsWith("application/x-www-form-urlencoded")) { const formData = new FormData2(); const parameters = new URLSearchParams(await this.text()); for (const [name, value] of parameters) { formData.append(name, value); } return formData; } const { toFormData: toFormData2 } = await Promise.resolve().then(() => (init_multipart_parser(), multipart_parser_exports)); return toFormData2(this.body, ct); } async blob() { const ct = this.headers && this.headers.get("content-type") || this[INTERNALS].body && this[INTERNALS].body.type || ""; const buf = await this.arrayBuffer(); return new fetch_blob_default([buf], { type: ct }); } async json() { const text = await this.text(); return JSON.parse(text); } async text() { const buffer = await consumeBody(this); return new TextDecoder().decode(buffer); } buffer() { return consumeBody(this); } }; Object.defineProperties(Body.prototype, { body: { enumerable: true }, bodyUsed: { enumerable: true }, arrayBuffer: { enumerable: true }, blob: { enumerable: true }, json: { enumerable: true }, text: { enumerable: true }, data: { get: (0, import_node_util.deprecate)( () => { }, "data doesn't exist, use json(), text(), arrayBuffer(), or body instead", "https://github.com/node-fetch/node-fetch/issues/1000 (response)" ) } }); async function consumeBody(data) { if (data[INTERNALS].disturbed) { // throw new TypeError(`body used already for: ${data.url}`); } data[INTERNALS].disturbed = true; if (data.bodyUsed) { // throw new TypeError('Body has already been consumed.'); } if (data[INTERNALS].error) { throw data[INTERNALS].error; } const { body } = data; if (body === null) { return import_node_buffer.Buffer.alloc(0); } if (!(body instanceof import_node_stream.default)) { return import_node_buffer.Buffer.alloc(0); } const accum = []; let accumBytes = 0; try { for await (const chunk of body) { if (data.size > 0 && accumBytes + chunk.length > data.size) { const error = new FetchError(`content size at ${data.url} over limit: ${data.size}`, "max-size"); body.destroy(error); throw error; } accumBytes += chunk.length; accum.push(chunk); } } catch (error) { const error_ = error instanceof FetchBaseError ? error : new FetchError(`Invalid response body while trying to fetch ${data.url}: ${error.message}`, "system", error); throw error_; } if (body.readableEnded === true || body._readableState.ended === true) { try { if (accum.every((c2) => typeof c2 === "string")) { return import_node_buffer.Buffer.from(accum.join("")); } return import_node_buffer.Buffer.concat(accum, accumBytes); } catch (error) { throw new FetchError(`Could not create Buffer from response body for ${data.url}: ${error.message}`, "system", error); } } else { throw new FetchError(`Premature close of server response while trying to fetch ${data.url}`); } } var clone = (instance, highWaterMark) => { let p1; let p2; let { body } = instance[INTERNALS]; if (instance.bodyUsed) { throw new Error("cannot clone body after it is used"); } if (body instanceof import_node_stream.default && typeof body.getBoundary !== "function") { p1 = new import_node_stream.PassThrough({ highWaterMark }); p2 = new import_node_stream.PassThrough({ highWaterMark }); body.pipe(p1); body.pipe(p2); instance[INTERNALS].stream = p1; body = p2; } return body; }; var getNonSpecFormDataBoundary = (0, import_node_util.deprecate)( (body) => body.getBoundary(), "form-data doesn't follow the spec and requires special treatment. Use alternative package", "https://github.com/node-fetch/node-fetch/issues/1167" ); var extractContentType = (body, request) => { if (body === null) { return null; } if (typeof body === "string") { return "text/plain;charset=UTF-8"; } if (isURLSearchParameters(body)) { return "application/x-www-form-urlencoded;charset=UTF-8"; } if (isBlob(body)) { return body.type || null; } if (import_node_buffer.Buffer.isBuffer(body) || import_node_util.types.isAnyArrayBuffer(body) || ArrayBuffer.isView(body)) { return null; } if (body instanceof FormData2) { return `multipart/form-data; boundary=${request[INTERNALS].boundary}`; } if (body && typeof body.getBoundary === "function") { return `multipart/form-data;boundary=${getNonSpecFormDataBoundary(body)}`; } if (body instanceof import_node_stream.default) { return null; } return "text/plain;charset=UTF-8"; }; var getTotalBytes = (request) => { const { body } = request[INTERNALS]; if (body === null) { return 0; } if (isBlob(body)) { return body.size; } if (import_node_buffer.Buffer.isBuffer(body)) { return body.length; } if (body && typeof body.getLengthSync === "function") { return body.hasKnownLength && body.hasKnownLength() ? body.getLengthSync() : null; } return null; }; var writeToStream = async (dest, { body }) => { if (body === null) { dest.end(); } else { await pipeline(body, dest); } }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/headers.js var import_node_util2 = require("util"); var import_node_http = __toESM(require("http"), 1); var validateHeaderName = typeof import_node_http.default.validateHeaderName === "function" ? import_node_http.default.validateHeaderName : (name) => { if (!/^[\^`\-\w!#$%&'*+.|~]+$/.test(name)) { const error = new TypeError(`Header name must be a valid HTTP token [${name}]`); Object.defineProperty(error, "code", { value: "ERR_INVALID_HTTP_TOKEN" }); throw error; } }; var validateHeaderValue = typeof import_node_http.default.validateHeaderValue === "function" ? import_node_http.default.validateHeaderValue : (name, value) => { if (/[^\t\u0020-\u007E\u0080-\u00FF]/.test(value)) { const error = new TypeError(`Invalid character in header content ["${name}"]`); Object.defineProperty(error, "code", { value: "ERR_INVALID_CHAR" }); throw error; } }; var Headers2 = class extends URLSearchParams { constructor(init2) { let result = []; if (init2 instanceof Headers2) { const raw = init2.raw(); for (const [name, values] of Object.entries(raw)) { result.push(...values.map((value) => [name, value])); } } else if (init2 == null) { } else if (typeof init2 === "object" && !import_node_util2.types.isBoxedPrimitive(init2)) { const method = init2[Symbol.iterator]; if (method == null) { result.push(...Object.entries(init2)); } else { if (typeof method !== "function") { throw new TypeError("Header pairs must be iterable"); } result = [...init2].map((pair) => { if (typeof pair !== "object" || import_node_util2.types.isBoxedPrimitive(pair)) { throw new TypeError("Each header pair must be an iterable object"); } return [...pair]; }).map((pair) => { if (pair.length !== 2) { throw new TypeError("Each header pair must be a name/value tuple"); } return [...pair]; }); } } else { throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)"); } result = result.length > 0 ? result.map(([name, value]) => { validateHeaderName(name); validateHeaderValue(name, String(value)); return [String(name).toLowerCase(), String(value)]; }) : void 0; super(result); return new Proxy(this, { get(target, p, receiver) { switch (p) { case "append": case "set": return (name, value) => { validateHeaderName(name); validateHeaderValue(name, String(value)); return URLSearchParams.prototype[p].call( target, String(name).toLowerCase(), String(value) ); }; case "delete": case "has": case "getAll": return (name) => { validateHeaderName(name); return URLSearchParams.prototype[p].call( target, String(name).toLowerCase() ); }; case "keys": return () => { target.sort(); return new Set(URLSearchParams.prototype.keys.call(target)).keys(); }; default: return Reflect.get(target, p, receiver); } } }); } get [Symbol.toStringTag]() { return this.constructor.name; } toString() { return Object.prototype.toString.call(this); } get(name) { const values = this.getAll(name); if (values.length === 0) { return null; } let value = values.join(", "); if (/^content-encoding$/i.test(name)) { value = value.toLowerCase(); } return value; } forEach(callback, thisArg = void 0) { for (const name of this.keys()) { Reflect.apply(callback, thisArg, [this.get(name), name, this]); } } *values() { for (const name of this.keys()) { yield this.get(name); } } *entries() { for (const name of this.keys()) { yield [name, this.get(name)]; } } [Symbol.iterator]() { return this.entries(); } raw() { return [...this.keys()].reduce((result, key) => { result[key] = this.getAll(key); return result; }, {}); } [Symbol.for("nodejs.util.inspect.custom")]() { return [...this.keys()].reduce((result, key) => { const values = this.getAll(key); if (key === "host") { result[key] = values[0]; } else { result[key] = values.length > 1 ? values : values[0]; } return result; }, {}); } }; Object.defineProperties( Headers2.prototype, ["get", "entries", "forEach", "values"].reduce((result, property) => { result[property] = { enumerable: true }; return result; }, {}) ); function fromRawHeaders(headers = []) { return new Headers2( headers.reduce((result, value, index, array) => { if (index % 2 === 0) { result.push(array.slice(index, index + 2)); } return result; }, []).filter(([name, value]) => { try { validateHeaderName(name); validateHeaderValue(name, String(value)); return true; } catch { return false; } }) ); } // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/utils/is-redirect.js var redirectStatus = /* @__PURE__ */ new Set([301, 302, 303, 307, 308]); var isRedirect = (code) => { return redirectStatus.has(code); }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/response.js var INTERNALS2 = Symbol("Response internals"); var Response2 = class extends Body { constructor(body = null, options = {}) { super(body, options); const status = options.status != null ? options.status : 200; const headers = new Headers2(options.headers); if (body !== null && !headers.has("Content-Type")) { const contentType = extractContentType(body, this); if (contentType) { headers.append("Content-Type", contentType); } } this[INTERNALS2] = { type: "default", url: options.url, status, statusText: options.statusText || "", headers, counter: options.counter, highWaterMark: options.highWaterMark }; } get type() { return this[INTERNALS2].type; } get url() { return this[INTERNALS2].url || ""; } get status() { return this[INTERNALS2].status; } get ok() { return this[INTERNALS2].status >= 200 && this[INTERNALS2].status < 300; } get redirected() { return this[INTERNALS2].counter > 0; } get statusText() { return this[INTERNALS2].statusText; } get headers() { return this[INTERNALS2].headers; } get highWaterMark() { return this[INTERNALS2].highWaterMark; } clone() { return new Response2(clone(this, this.highWaterMark), { type: this.type, url: this.url, status: this.status, statusText: this.statusText, headers: this.headers, ok: this.ok, redirected: this.redirected, size: this.size, highWaterMark: this.highWaterMark }); } static redirect(url, status = 302) { if (!isRedirect(status)) { throw new RangeError('Failed to execute "redirect" on "response": Invalid status code'); } return new Response2(null, { headers: { location: new URL(url).toString() }, status }); } static error() { const response = new Response2(null, { status: 0, statusText: "" }); response[INTERNALS2].type = "error"; return response; } get [Symbol.toStringTag]() { return "Response"; } }; Object.defineProperties(Response2.prototype, { type: { enumerable: true }, url: { enumerable: true }, status: { enumerable: true }, ok: { enumerable: true }, redirected: { enumerable: true }, statusText: { enumerable: true }, headers: { enumerable: true }, clone: { enumerable: true } }); // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/request.js var import_node_url = require("url"); var import_node_util3 = require("util"); // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/utils/get-search.js var getSearch = (parsedURL) => { if (parsedURL.search) { return parsedURL.search; } const lastOffset = parsedURL.href.length - 1; const hash = parsedURL.hash || (parsedURL.href[lastOffset] === "#" ? "#" : ""); return parsedURL.href[lastOffset - hash.length] === "?" ? "?" : ""; }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/utils/referrer.js var import_node_net = require("net"); function stripURLForUseAsAReferrer(url, originOnly = false) { if (url == null) { return "no-referrer"; } url = new URL(url); if (/^(about|blob|data):$/.test(url.protocol)) { return "no-referrer"; } url.username = ""; url.password = ""; url.hash = ""; if (originOnly) { url.pathname = ""; url.search = ""; } return url; } var ReferrerPolicy = /* @__PURE__ */ new Set([ "", "no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "strict-origin", "origin-when-cross-origin", "strict-origin-when-cross-origin", "unsafe-url" ]); var DEFAULT_REFERRER_POLICY = "strict-origin-when-cross-origin"; function validateReferrerPolicy(referrerPolicy) { if (!ReferrerPolicy.has(referrerPolicy)) { throw new TypeError(`Invalid referrerPolicy: ${referrerPolicy}`); } return referrerPolicy; } function isOriginPotentiallyTrustworthy(url) { if (/^(http|ws)s:$/.test(url.protocol)) { return true; } const hostIp = url.host.replace(/(^\[)|(]$)/g, ""); const hostIPVersion = (0, import_node_net.isIP)(hostIp); if (hostIPVersion === 4 && /^127\./.test(hostIp)) { return true; } if (hostIPVersion === 6 && /^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(hostIp)) { return true; } if (url.host === "localhost" || url.host.endsWith(".localhost")) { return false; } if (url.protocol === "file:") { return true; } return false; } function isUrlPotentiallyTrustworthy(url) { if (/^about:(blank|srcdoc)$/.test(url)) { return true; } if (url.protocol === "data:") { return true; } if (/^(blob|filesystem):$/.test(url.protocol)) { return true; } return isOriginPotentiallyTrustworthy(url); } function determineRequestsReferrer(request, { referrerURLCallback, referrerOriginCallback } = {}) { if (request.referrer === "no-referrer" || request.referrerPolicy === "") { return null; } const policy = request.referrerPolicy; if (request.referrer === "about:client") { return "no-referrer"; } const referrerSource = request.referrer; let referrerURL = stripURLForUseAsAReferrer(referrerSource); let referrerOrigin = stripURLForUseAsAReferrer(referrerSource, true); if (referrerURL.toString().length > 4096) { referrerURL = referrerOrigin; } if (referrerURLCallback) { referrerURL = referrerURLCallback(referrerURL); } if (referrerOriginCallback) { referrerOrigin = referrerOriginCallback(referrerOrigin); } const currentURL = new URL(request.url); switch (policy) { case "no-referrer": return "no-referrer"; case "origin": return referrerOrigin; case "unsafe-url": return referrerURL; case "strict-origin": if (isUrlPotentiallyTrustworthy(referrerURL) && !isUrlPotentiallyTrustworthy(currentURL)) { return "no-referrer"; } return referrerOrigin.toString(); case "strict-origin-when-cross-origin": if (referrerURL.origin === currentURL.origin) { return referrerURL; } if (isUrlPotentiallyTrustworthy(referrerURL) && !isUrlPotentiallyTrustworthy(currentURL)) { return "no-referrer"; } return referrerOrigin; case "same-origin": if (referrerURL.origin === currentURL.origin) { return referrerURL; } return "no-referrer"; case "origin-when-cross-origin": if (referrerURL.origin === currentURL.origin) { return referrerURL; } return referrerOrigin; case "no-referrer-when-downgrade": if (isUrlPotentiallyTrustworthy(referrerURL) && !isUrlPotentiallyTrustworthy(currentURL)) { return "no-referrer"; } return referrerURL; default: throw new TypeError(`Invalid referrerPolicy: ${policy}`); } } function parseReferrerPolicyFromHeader(headers) { const policyTokens = (headers.get("referrer-policy") || "").split(/[,\s]+/); let policy = ""; for (const token of policyTokens) { if (token && ReferrerPolicy.has(token)) { policy = token; } } return policy; } // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/request.js var INTERNALS3 = Symbol("Request internals"); var isRequest = (object) => { return typeof object === "object" && typeof object[INTERNALS3] === "object"; }; var doBadDataWarn = (0, import_node_util3.deprecate)( () => { }, ".data is not a valid RequestInit property, use .body instead", "https://github.com/node-fetch/node-fetch/issues/1000 (request)" ); var Request2 = class extends Body { constructor(input, init2 = {}) { let parsedURL; if (isRequest(input)) { parsedURL = new URL(input.url); } else { parsedURL = new URL(input); input = {}; } if (parsedURL.username !== "" || parsedURL.password !== "") { throw new TypeError(`${parsedURL} is an url with embedded credentials.`); } let method = init2.method || input.method || "GET"; if (/^(delete|get|head|options|post|put)$/i.test(method)) { method = method.toUpperCase(); } if (!isRequest(init2) && "data" in init2) { doBadDataWarn(); } if ((init2.body != null || isRequest(input) && input.body !== null) && (method === "GET" || method === "HEAD")) { throw new TypeError("Request with GET/HEAD method cannot have body"); } const inputBody = init2.body ? init2.body : isRequest(input) && input.body !== null ? clone(input) : null; super(inputBody, { size: init2.size || input.size || 0 }); const headers = new Headers2(init2.headers || input.headers || {}); if (inputBody !== null && !headers.has("Content-Type")) { const contentType = extractContentType(inputBody, this); if (contentType) { headers.set("Content-Type", contentType); } } let signal = isRequest(input) ? input.signal : null; if ("signal" in init2) { signal = init2.signal; } if (signal != null && !isAbortSignal(signal)) { throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget"); } let referrer = init2.referrer == null ? input.referrer : init2.referrer; if (referrer === "") { referrer = "no-referrer"; } else if (referrer) { const parsedReferrer = new URL(referrer); referrer = /^about:(\/\/)?client$/.test(parsedReferrer) ? "client" : parsedReferrer; } else { referrer = void 0; } this[INTERNALS3] = { method, redirect: init2.redirect || input.redirect || "follow", headers, parsedURL, signal, referrer }; this.follow = init2.follow === void 0 ? input.follow === void 0 ? 20 : input.follow : init2.follow; this.compress = init2.compress === void 0 ? input.compress === void 0 ? true : input.compress : init2.compress; this.counter = init2.counter || input.counter || 0; this.agent = init2.agent || input.agent; this.highWaterMark = init2.highWaterMark || input.highWaterMark || 16384; this.insecureHTTPParser = init2.insecureHTTPParser || input.insecureHTTPParser || false; this.referrerPolicy = init2.referrerPolicy || input.referrerPolicy || ""; } get method() { return this[INTERNALS3].method; } get url() { return (0, import_node_url.format)(this[INTERNALS3].parsedURL); } get headers() { return this[INTERNALS3].headers; } get redirect() { return this[INTERNALS3].redirect; } get signal() { return this[INTERNALS3].signal; } get referrer() { if (this[INTERNALS3].referrer === "no-referrer") { return ""; } if (this[INTERNALS3].referrer === "client") { return "about:client"; } if (this[INTERNALS3].referrer) { return this[INTERNALS3].referrer.toString(); } return void 0; } get referrerPolicy() { return this[INTERNALS3].referrerPolicy; } set referrerPolicy(referrerPolicy) { this[INTERNALS3].referrerPolicy = validateReferrerPolicy(referrerPolicy); } clone() { return new Request2(this); } get [Symbol.toStringTag]() { return "Request"; } }; Object.defineProperties(Request2.prototype, { method: { enumerable: true }, url: { enumerable: true }, headers: { enumerable: true }, redirect: { enumerable: true }, clone: { enumerable: true }, signal: { enumerable: true }, referrer: { enumerable: true }, referrerPolicy: { enumerable: true } }); var getNodeRequestOptions = (request) => { const { parsedURL } = request[INTERNALS3]; const headers = new Headers2(request[INTERNALS3].headers); if (!headers.has("Accept")) { headers.set("Accept", "*/*"); } let contentLengthValue = null; if (request.body === null && /^(post|put)$/i.test(request.method)) { contentLengthValue = "0"; } if (request.body !== null) { const totalBytes = getTotalBytes(request); if (typeof totalBytes === "number" && !Number.isNaN(totalBytes)) { contentLengthValue = String(totalBytes); } } if (contentLengthValue) { headers.set("Content-Length", contentLengthValue); } if (request.referrerPolicy === "") { request.referrerPolicy = DEFAULT_REFERRER_POLICY; } if (request.referrer && request.referrer !== "no-referrer") { request[INTERNALS3].referrer = determineRequestsReferrer(request); } else { request[INTERNALS3].referrer = "no-referrer"; } if (request[INTERNALS3].referrer instanceof URL) { headers.set("Referer", request.referrer); } if (!headers.has("User-Agent")) { headers.set("User-Agent", "node-fetch"); } if (request.compress && !headers.has("Accept-Encoding")) { headers.set("Accept-Encoding", "gzip, deflate, br"); } let { agent } = request; if (typeof agent === "function") { agent = agent(parsedURL); } if (!headers.has("Connection") && !agent) { headers.set("Connection", "close"); } const search = getSearch(parsedURL); const options = { path: parsedURL.pathname + search, method: request.method, headers: headers[Symbol.for("nodejs.util.inspect.custom")](), insecureHTTPParser: request.insecureHTTPParser, agent }; return { parsedURL, options }; }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/errors/abort-error.js var AbortError = class extends FetchBaseError { constructor(message, type = "aborted") { super(message, type); } }; // ../../node_modules/.pnpm/node-fetch@3.2.10/node_modules/node-fetch/src/index.js init_esm_min(); init_from(); var supportedSchemas = /* @__PURE__ */ new Set(["data:", "http:", "https:"]); async function fetch2(url, options_) { return new Promise((resolve, reject) => { const request = new Request2(url, options_); const { parsedURL, options } = getNodeRequestOptions(request); if (!supportedSchemas.has(parsedURL.protocol)) { throw new TypeError(`node-fetch cannot load ${url}. URL scheme "${parsedURL.protocol.replace(/:$/, "")}" is not supported.`); } if (parsedURL.protocol === "data:") { const data = dist_default(request.url); const response2 = new Response2(data, { headers: { "Content-Type": data.typeFull } }); resolve(response2); return; } const send = (parsedURL.protocol === "https:" ? import_node_https.default : import_node_http2.default).request; const { signal } = request; let response = null; const abort = () => { const error = new AbortError("The operation was aborted."); reject(error); if (request.body && request.body instanceof import_node_stream2.default.Readable) { request.body.destroy(error); } if (!response || !response.body) { return; } response.body.emit("error", error); }; if (signal && signal.aborted) { abort(); return; } const abortAndFinalize = () => { abort(); finalize(); }; const request_ = send(parsedURL.toString(), options); if (signal) { signal.addEventListener("abort", abortAndFinalize); } const finalize = () => { request_.abort(); if (signal) { signal.removeEventListener("abort", abortAndFinalize); } }; request_.on("error", (error) => { reject(new FetchError(`request to ${request.url} failed, reason: ${error.message}`, "system", error)); finalize(); }); fixResponseChunkedTransferBadEnding(request_, (error) => { if (response && response.body) { response.body.destroy(error); } }); if (process.version < "v14") { request_.on("socket", (s2) => { let endedWithEventsCount; s2.prependListener("end", () => { endedWithEventsCount = s2._eventsCount; }); s2.prependListener("close", (hadError) => { if (response && endedWithEventsCount < s2._eventsCount && !hadError) { const error = new Error("Premature close"); error.code = "ERR_STREAM_PREMATURE_CLOSE"; response.body.emit("error", error); } }); }); } request_.on("response", (response_) => { request_.setTimeout(0); const headers = fromRawHeaders(response_.rawHeaders); if (isRedirect(response_.statusCode)) { const location = headers.get("Location"); let locationURL = null; try { locationURL = location === null ? null : new URL(location, request.url); } catch { if (request.redirect !== "manual") { reject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect")); finalize(); return; } } switch (request.redirect) { case "error": reject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, "no-redirect")); finalize(); return; case "manual": break; case "follow": { if (locationURL === null) { break; } if (request.counter >= request.follow) { reject(new FetchError(`maximum redirect reached at: ${request.url}`, "max-redirect")); finalize(); return; } const requestOptions = { headers: new Headers2(request.headers), follow: request.follow, counter: request.counter + 1, agent: request.agent, compress: request.compress, method: request.method, body: clone(request), signal: request.signal, size: request.size, referrer: request.referrer, referrerPolicy: request.referrerPolicy }; if (!isDomainOrSubdomain(request.url, locationURL) || !isSameProtocol(request.url, locationURL)) { for (const name of ["authorization", "www-authenticate", "cookie", "cookie2"]) { requestOptions.headers.delete(name); } } if (response_.statusCode !== 303 && request.body && options_.body instanceof import_node_stream2.default.Readable) { reject(new FetchError("Cannot follow redirect with body being a readable stream", "unsupported-redirect")); finalize(); return; } if (response_.statusCode === 303 || (response_.statusCode === 301 || response_.statusCode === 302) && request.method === "POST") { requestOptions.method = "GET"; requestOptions.body = void 0; requestOptions.headers.delete("content-length"); } const responseReferrerPolicy = parseReferrerPolicyFromHeader(headers); if (responseReferrerPolicy) { requestOptions.referrerPolicy = responseReferrerPolicy; } resolve(fetch2(new Request2(locationURL, requestOptions))); finalize(); return; } default: return reject(new TypeError(`Redirect option '${request.redirect}' is not a valid value of RequestRedirect`)); } } if (signal) { response_.once("end", () => { signal.removeEventListener("abort", abortAndFinalize); }); } let body = (0, import_node_stream2.pipeline)(response_, new import_node_stream2.PassThrough(), (error) => { if (error) { reject(error); } }); if (process.version < "v12.10") { response_.on("aborted", abortAndFinalize); } const responseOptions = { url: request.url, status: response_.statusCode, statusText: response_.statusMessage, headers, size: request.size, counter: request.counter, highWaterMark: request.highWaterMark }; const codings = headers.get("Content-Encoding"); if (!request.compress || request.method === "HEAD" || codings === null || response_.statusCode === 204 || response_.statusCode === 304) { response = new Response2(body, responseOptions); resolve(response); return; } const zlibOptions = { flush: import_node_zlib.default.Z_SYNC_FLUSH, finishFlush: import_node_zlib.default.Z_SYNC_FLUSH }; if (codings === "gzip" || codings === "x-gzip") { body = (0, import_node_stream2.pipeline)(body, import_node_zlib.default.createGunzip(zlibOptions), (error) => { if (error) { reject(error); } }); response = new Response2(body, responseOptions); resolve(response); return; } if (codings === "deflate" || codings === "x-deflate") { const raw = (0, import_node_stream2.pipeline)(response_, new import_node_stream2.PassThrough(), (error) => { if (error) { reject(error); } }); raw.once("data", (chunk) => { if ((chunk[0] & 15) === 8) { body = (0, import_node_stream2.pipeline)(body, import_node_zlib.default.createInflate(), (error) => { if (error) { reject(error); } }); } else { body = (0, import_node_stream2.pipeline)(body, import_node_zlib.default.createInflateRaw(), (error) => { if (error) { reject(error); } }); } response = new Response2(body, responseOptions); resolve(response); }); raw.once("end", () => { if (!response) { response = new Response2(body, responseOptions); resolve(response); } }); return; } if (codings === "br") { body = (0, import_node_stream2.pipeline)(body, import_node_zlib.default.createBrotliDecompress(), (error) => { if (error) { reject(error); } }); response = new Response2(body, responseOptions); resolve(response); return; } response = new Response2(body, responseOptions); resolve(response); }); writeToStream(request_, request).catch(reject); }); } function fixResponseChunkedTransferBadEnding(request, errorCallback) { const LAST_CHUNK = import_node_buffer2.Buffer.from("0\r\n\r\n"); let isChunkedTransfer = false; let properLastChunkReceived = false; let previousChunk; request.on("response", (response) => { const { headers } = response; isChunkedTransfer = headers["transfer-encoding"] === "chunked" && !headers["content-length"]; }); request.on("socket", (socket) => { const onSocketClose = () => { if (isChunkedTransfer && !properLastChunkReceived) { const error = new Error("Premature close"); error.code = "ERR_STREAM_PREMATURE_CLOSE"; errorCallback(error); } }; const onData = (buf) => { properLastChunkReceived = import_node_buffer2.Buffer.compare(buf.slice(-5), LAST_CHUNK) === 0; if (!properLastChunkReceived && previousChunk) { properLastChunkReceived = import_node_buffer2.Buffer.compare(previousChunk.slice(-3), LAST_CHUNK.slice(0, 3)) === 0 && import_node_buffer2.Buffer.compare(buf.slice(-2), LAST_CHUNK.slice(3)) === 0; } previousChunk = buf; }; socket.prependListener("close", onSocketClose); socket.on("data", onData); request.on("close", () => { socket.removeListener("close", onSocketClose); socket.removeListener("data", onData); }); }); } // server/photo/photo.service.ts var fs2 = __toESM(require("fs")); // server/lib/http-service.ts async function tweetDiscordPost(url, body) { return new Promise( (resolve, reject) => fetch2(url, { method: "POST", body, headers: { ["Content-Type"]: "application/json" } }).then(async (res) => { const response = await res.json(); resolve(response); }).catch((err) => { reject(err); }) ); } async function apiPhotoUpload(body, token) { const requestOptions = { method: "POST", headers: { "Authorization": token, }, body: body }; return new Promise( (resolve, reject) => fetch2(config.images.url, requestOptions) .then(async (result) => { // Log the response if (result.status !== 200) { const err = await result.text(); reject({ errorText: err, statusCode: result.status }); } const res = await result.json(); resolve(res); }) ); } async function webhookPhotoUpload(webhook, imagePath, blob, player) { const form = new FormData2(); form.append("file0", blob, `fivemscreenshot.${config.images.imageEncoding}`); form.append( "payload_json", JSON.stringify({ content: `**NPWD:** Image uploaded af ${player.getName()}` }) ); return new Promise( (resolve, reject) => fetch2(webhook, { method: "POST", body: form }).then(async (res) => { const response = await res.json(); resolve(response.attachments[0].proxy_url); }).catch((err) => { reject(err); }) ); } // server/photo/photo.service.ts var exp3 = global.exports; var path3 = GetResourcePath("npwd") + "/uploads"; var _PhotoService = class { constructor() { this.photoDB = PhotoDB; this.TOKEN = GetConvar("SCREENSHOT_BASIC_TOKEN", ""); this.TOKEN2 = GetConvar("NPWD_IMAGE_TOKEN", ""); photoLogger.debug("Photo service started"); } async handleUploadPhoto(reqObj, resp) { try { exp3["screenshot-basic"].requestClientScreenshot( reqObj.source, { encoding: config.images.imageEncoding, quality: 0.80 }, async (err, data) => { if (!fs2.existsSync(path3)) fs2.mkdirSync(path3); let type; switch (config.images.imageEncoding) { case "jpg": type = "image/jpeg"; break; case "png": type = "image/png"; break; case "webp": type = "image/webp"; break; } const filePath = `${path3}/screenshot-${v4()}.${config.images.imageEncoding}`; const _data = Buffer.from(data.replace(`data:${type};base64`, ""), "base64"); fs2.writeFileSync(filePath, _data); let body = new FormData2(); const blob = fileFromSync(filePath, type); const player = player_service_default.getPlayer(reqObj.source); body.append(config.images.type, blob); body.append("metadata", "Taget af "+player.getName()); if (config.images.useWebhook) { try { const res = await webhookPhotoUpload(this.TOKEN, filePath, blob, player); const identifier2 = player_service_default.getIdentifier(reqObj.source); const photo2 = await this.photoDB.uploadPhoto(identifier2, res); fs2.rmSync(filePath); return resp({ status: "ok", data: photo2 }); } catch (err2) { photoLogger.error(`Failed to upload photo`, { source: reqObj.source }); return resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } let returnData; await apiPhotoUpload(body, this.TOKEN2).then((result) => { returnData = result; }).catch((err2) => { photoLogger.error( `Failed to upload photo, status code: ${err2.statusCode}: ${err2.errorText}`, { source: reqObj.source } ); resp({ status: "error", errorMsg: "Screenshot-basic fejl" }); }); fs2.rmSync(filePath); if (!returnData) return; for (const index of config.images.returnedDataIndexes) returnData = returnData[index]; const identifier = player_service_default.getIdentifier(reqObj.source); const photo = await this.photoDB.uploadPhoto(identifier, returnData); resp({ status: "ok", data: photo }); } ); } catch (e2) { photoLogger.error(`Failed to upload photo, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleFetchPhotos(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const photos = await this.photoDB.getPhotosByIdentifier(identifier); resp({ status: "ok", data: photos }); } catch (e2) { photoLogger.error(`Failed to fetch photos, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleDeletePhoto(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); await this.photoDB.deletePhoto(reqObj.data, identifier); resp({ status: "ok" }); } catch (e2) { photoLogger.error(`Failed to delete photo, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleDeleteMultiplePhotos(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); const photoIds = reqObj.data; try { for (const photo of photoIds) { await this.photoDB.deletePhotoById(photo, identifier); } resp({ status: "ok" }); } catch (e2) { photoLogger.error(`Failed to delete photos, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleSaveImage(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const photo = await this.photoDB.uploadPhoto(identifier, reqObj.data.url); resp({ status: "ok", data: photo }); } catch (e2) { photoLogger.error(`Failed to upload photo, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } }; var PhotoService = new _PhotoService(); var photo_service_default = PhotoService; // server/photo/photo.controller.ts onNetPromise("npwd:UploadPhoto" /* UPLOAD_PHOTO */, (reqObj, resp) => { photo_service_default.handleUploadPhoto(reqObj, resp).catch((e2) => { photoLogger.error( `Error occurred in upload photo event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:FetchPhotos" /* FETCH_PHOTOS */, (reqObj, resp) => { photo_service_default.handleFetchPhotos(reqObj, resp).catch((e2) => { photoLogger.error( `Error occurred in upload photo event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:deletePhoto" /* DELETE_PHOTO */, (reqObj, resp) => { photo_service_default.handleDeletePhoto(reqObj, resp).catch((e2) => { photoLogger.error( `Error occurred in delete photo event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:deleteMultiplePhotos" /* DELETE_MULTIPLE_PHOTOS */, (reqObj, resp) => { photo_service_default.handleDeleteMultiplePhotos(reqObj, resp).catch((e2) => { photoLogger.error( `Error occurred in delete multiple photos event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:saveImage" /* SAVE_IMAGE */, (reqObj, resp) => { photo_service_default.handleSaveImage(reqObj, resp).catch((e2) => { photoLogger.error(`Error occurred in save image event (${reqObj.source}), Error: ${e2.message}`); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:getAuthToken" /* GET_AUTHORISATION_TOKEN */, (reqObj, resp) => { resp({ status: "ok", data: GetConvar("SCREENSHOT_BASIC_TOKEN", "none") }); }); // server/messages/middleware/onMessage.ts var exp4 = global.exports; var OnMessageExportMap = /* @__PURE__ */ new Map(); exp4("onMessage", (phoneNumber, cb) => { OnMessageExportMap.set(phoneNumber, cb); }); // server/messages/messages.controller.ts onNetPromise( "npwd:fetchMessageGroups" /* FETCH_MESSAGE_CONVERSATIONS */, async (reqObj, resp) => { messages_service_default.handleFetchMessageConversations(reqObj, resp).catch((e2) => { messagesLogger.error( `Error occurred in fetch message conversations (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); } ); onNetPromise( "npwd:createMessageGroup" /* CREATE_MESSAGE_CONVERSATION */, async (reqObj, resp) => { messages_service_default.handleCreateMessageConversation(reqObj, resp).catch((e2) => { messagesLogger.error( `Error occurred on creating message conversation (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); } ); onNetPromise( "npwd:fetchMessages" /* FETCH_MESSAGES */, async (reqObj, resp) => { messages_service_default.handleFetchMessages(reqObj, resp).catch((e2) => { messagesLogger.error( `Error occurred in fetch messages (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); } ); onNetPromise("npwd:sendMessage" /* SEND_MESSAGE */, async (reqObj, resp) => { messages_service_default.handleSendMessage(reqObj, resp).then(async () => { const numbers = reqObj.data.conversationList.split("+").filter((x2) => x2 !== reqObj.data.sourcePhoneNumber); if (numbers.length > 1) return; const tgtPhoneNumber = numbers[0]; const funcRef = OnMessageExportMap.get(tgtPhoneNumber); if (funcRef) { try { await funcRef({ data: { ...reqObj.data, tgtPhoneNumber }, source: reqObj.source }); } catch (e2) { messagesLogger.error( `Failed to find a callback reference for onMessage. Probably because the resource(s) using the export was stopped or restarted. Please restart said resource(s). Error: ${e2.message}` ); } } }).catch((e2) => { messagesLogger.error( `Error occurred while sending message (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise( "nwpd:deleteConversation" /* DELETE_CONVERSATION */, async (reqObj, resp) => { messages_service_default.handleDeleteConversation(reqObj, resp).catch((e2) => { messagesLogger.error( `Error occurred while deleting conversation (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); } ); onNetPromise("npwd:deleteMessage" /* DELETE_MESSAGE */, async (reqObj, resp) => { messages_service_default.handleDeleteMessage(reqObj, resp).catch((e2) => { messagesLogger.error( `Error occurred while deleting message (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:setReadMessages" /* SET_MESSAGE_READ */, async (reqObj, resp) => { const src = getSource(); messages_service_default.handleSetMessageRead(reqObj, resp).catch( (e2) => messagesLogger.error(`Error occurred in set message read event (${src}), Error: ${e2.message}`) ); }); onNetPromise("npwd:getMessageLocation" /* GET_MESSAGE_LOCATION */, async (reqObj, resp) => { const src = getSource(); messages_service_default.handleGetLocation(reqObj, resp).catch((e2) => { messagesLogger.error(`Error occurred in get location event (${src}), Error: ${e2.message}`); }); }); // server/marketplace/marketplace.controller.ts onNetPromise("npwd:fetchAllListings" /* FETCH_LISTING */, async (reqObj, resp) => { marketplace_service_default.handleFetchListings(reqObj, resp).catch((e2) => { marketplaceLogger.error( `Error occurred in fetch listing event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise( "npwd:addListing" /* ADD_LISTING */, async (reqObj, resp) => { marketplace_service_default.handleAddListing(reqObj, resp).catch((e2) => { marketplaceLogger.error( `Error occurred in add listing event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); } ); onNetPromise("npwd:marketplaceDeleteListing" /* DELETE_LISTING */, async (reqObj, resp) => { marketplace_service_default.handleDeleteListing(reqObj, resp).catch((e2) => { marketplaceLogger.error( `Error occurred in delete listing event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("npwd:reportListing" /* REPORT_LISTING */, async (reqObj, resp) => { marketplace_service_default.handleReportListing(reqObj, resp).catch((e2) => { marketplaceLogger.error( `Error occurred in report listing event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); on("npwd:marketplaceDeleteListingsOnDrop" /* DELETE_LISTINGS_ON_DROP */, (identifier) => { marketplace_service_default.handleDeleteListingsOnDrop(identifier).catch((e2) => { marketplaceLogger.error( `Error occurred when deleting listing on player drop event, Error: ${e2.message}` ); }); }); // server/twitter/twitter.service.ts var _TwitterService = class { constructor() { this.twitterDB = TwitterDB; this.DISCORD_WEBHOOK = GetConvar("TWITTER_WEBHOOK", ""); twitterLogger.debug("Twitter service started"); } async handleGetOrCreateProfile(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { if (!identifier) return; const profile = await this.twitterDB.getOrCreateProfile(identifier); if (!profile) { const defaultProfileNames = await getDefaultProfileNames(reqObj.source); if (!defaultProfileNames) return; } else { resp({ status: "ok", data: profile }); } } catch (e2) { resp({ status: "error", errorMsg: e2.message }); twitterLogger.error(`Failed to get or create profile, ${e2.message}`, { source: reqObj.source }); } } async handleCreateProfile(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const profile = await this.twitterDB.createProfile(identifier, reqObj.data.profile_name); resp({ status: "ok", data: profile }); } catch (e2) { twitterLogger.error(`Failed to create twitter profile: ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: e2.message }); } } async handleUpdateProfile(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const imageUrl = checkAndFilterImage(reqObj.data.avatar_url); if (imageUrl == null) { return resp({ status: "error", errorMsg: "GENERIC_INVALID_IMAGE_HOST" }); } reqObj.data.avatar_url = imageUrl; const profile = await this.twitterDB.updateProfile(identifier, reqObj.data); resp({ status: "ok", data: profile }); } catch (e2) { twitterLogger.error(`Failed to update twitter profile: ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "TWITTER.FEEDBACK.EDIT_PROFILE_FAILURE" }); } } async handleFetchTweets(src, pageIdx, resp) { try { const identifier = player_service_default.getIdentifier(src); const profile = await this.twitterDB.getProfile(identifier); if (!profile) { twitterLogger.warn( `Bailede indhentning af Tweet fra ${identifier} fordi de ikke har en profil.` ); return resp({ status: "ok", data: [] }); } const tweets = await this.twitterDB.fetchAllTweets(profile.id, pageIdx); resp({ data: tweets, status: "ok" }); } catch (e2) { twitterLogger.error(`Fetching tweets failed, ${e2.message}`, { source: src }); resp({ status: "error", errorMsg: e2.message }); } } async handleFetchTweetsFiltered(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const profile = await this.twitterDB.getProfile(identifier); const tweets = await this.twitterDB.fetchTweetsFiltered(profile.id, reqObj.data.searchValue); resp({ status: "ok", data: tweets }); } catch (e2) { twitterLogger.error(`Fetch filtered tweets failed, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: "TWITTER.FEEDBACK.FILTERED_FETCH_FAILED" }); } } async postDiscord(identifier, tweet, images) { try { if (this.DISCORD_WEBHOOK && this.DISCORD_WEBHOOK != "") { const profile = await this.twitterDB.getProfile(identifier); const data = [ { "color": "1942002", "title": "Ny Tweet!", "description": tweet.message, "image": { "url": images[0] }, "footer": { "text": profile.profile_name + " " + profile.id + ":" + identifier, "icon_url": profile.avatar_url } } ]; await tweetDiscordPost(this.DISCORD_WEBHOOK, JSON.stringify({ username: "Twitter", embeds: data })); } } catch (e2) { } return; } async handleCreateTweet(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); let newImageString = ""; const images = reqObj.data.images.split("||!||"); for (let i2 = 0; i2 < images.length; i2++) { const img = images[i2]; const imageUrl = checkAndFilterImage(img); if (imageUrl == null) { return resp({ status: "error", errorMsg: "GENERIC_INVALID_IMAGE_HOST" }); } newImageString += `${imageUrl}${i2 != images.length - 1 ? "||!||" : ""}`; } reqObj.data.images = newImageString; const createdTweet = await this.twitterDB.createTweet(identifier, reqObj.data); emitNet("createTweetBroadcast" /* CREATE_TWEET_BROADCAST */, -1, createdTweet); resp({ status: "ok" }); this.postDiscord(identifier, reqObj.data, images); } catch (e2) { twitterLogger.error(`Create tweet failed, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: e2.message }); } } async handleDeleteTweet(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); await this.twitterDB.deleteTweet(identifier, reqObj.data.tweetId); resp({ status: "ok" }); emitNet("npwd:deleteTweetBroadcast" /* DELETE_TWEET_BROADCAST */, -1, reqObj.data.tweetId); } catch (e2) { twitterLogger.error(`Delete tweet failed, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: e2.message }); } } async handleToggleLike(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const profile = await this.twitterDB.getOrCreateProfile(identifier); const likeExists = await this.twitterDB.doesLikeExist(profile.id, reqObj.data.tweetId); const likedByProfileName = profile.profile_name; if (likeExists) { await this.twitterDB.deleteLike(profile.id, reqObj.data.tweetId); } else { await this.twitterDB.createLike(profile.id, reqObj.data.tweetId); } resp({ status: "ok" }); emitNet("npwd:tweetLikedBroadcast" /* TWEET_LIKED_BROADCAST */, -1, reqObj.data.tweetId, !likeExists, likedByProfileName); } catch (e2) { twitterLogger.error(`Like failed, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: e2.message }); } } async handleRetweet(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); if (await this.twitterDB.doesRetweetExist(reqObj.data.tweetId, identifier)) { return resp({ status: "error", errorMsg: "TWITTER.FEEDBACK.RETWEET_EXISTS" }); } const retweet = { message: "", images: "", retweet: reqObj.data.tweetId }; const createdTweet = await this.twitterDB.createTweet(identifier, retweet); const profile = await this.twitterDB.getProfile(identifier); const tweet = await this.twitterDB.getTweet(profile.id, createdTweet.id); resp({ status: "ok" }); emitNet("createTweetBroadcast" /* CREATE_TWEET_BROADCAST */, -1, tweet); } catch (e2) { twitterLogger.error(`Retweet fejlede, ${e2.message}`, { source: reqObj.source }); resp({ status: "error", errorMsg: e2.message }); } } async handleReport(reqObj, resp) { try { const identifier = player_service_default.getIdentifier(reqObj.source); const profile = await this.twitterDB.getProfile(identifier); const tweet = await this.twitterDB.getTweet(profile.id, reqObj.data.tweetId); const reportExists = await this.twitterDB.doesReportExist(tweet.id, profile.id); if (reportExists) { return twitterLogger.warn("Denne konto har allerede anmeldt tweetet."); } await this.twitterDB.createTweetReport(tweet.id, profile.id); await reportTweetToDiscord(tweet, profile); resp({ status: "ok" }); } catch (e2) { resp({ status: "error", errorMsg: e2.message }); twitterLogger.error(`Twitter report failed, ${e2.message}`, { source: reqObj.source }); } } }; var TwitterService = new _TwitterService(); var twitter_service_default = TwitterService; // server/twitter/twitter.controller.ts onNetPromise( "npwd:getOrCreateTwitterProfile" /* GET_OR_CREATE_PROFILE */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleGetOrCreateProfile(reqObj, resp).catch((e2) => { twitterLogger.error( `Error occurred in getOrCreateProfile event (${_source}), Error: ${e2.message}` ); }); } ); onNetPromise("npwd:createTwitterProfile" /* CREATE_PROFILE */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleCreateProfile(reqObj, resp).catch( (e2) => twitterLogger.error(`Error occurred in createProfile event (${_source}), Error: ${e2.message}`) ); }); onNetPromise("npwd:updateTwitterProfile" /* UPDATE_PROFILE */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleUpdateProfile(reqObj, resp).catch( (e2) => twitterLogger.error(`Error occurred in updateProfile event (${_source}), Error: ${e2.message}`) ); }); onNetPromise( "npwd:fetchTweetsFiltered" /* FETCH_TWEETS_FILTERED */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleFetchTweetsFiltered(reqObj, resp).catch( (e2) => twitterLogger.error( `Error occurred in fetchTweetsFiltered event (${_source}), Error: ${e2.message}` ) ); }, { rateLimit: 5e3 } ); onNetPromise("npwd:createTweet" /* CREATE_TWEET */, async (reqObj, resp) => { twitter_service_default.handleCreateTweet(reqObj, resp).catch((e2) => { twitterLogger.error( `Error occurred in createTweet event (${reqObj.source}), Error: ${e2.message}` ); }); }); onNetPromise("npwd:deleteTweet" /* DELETE_TWEET */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleDeleteTweet(reqObj, resp).catch((e2) => { twitterLogger.error(`Error occurred in deleteTweet event (${_source}), Error: ${e2.message}`); }); }); onNetPromise("npwd:toggleLike" /* TOGGLE_LIKE */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleToggleLike(reqObj, resp).catch((e2) => { twitterLogger.error(`Error occurred in toggleEvent event (${_source}), Error: ${e2.message}`); }); }); onNetPromise("npwd:retweet" /* RETWEET */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleRetweet(reqObj, resp).catch( (e2) => twitterLogger.error(`Error occurred in retweet event (${_source}), Error: ${e2.message}`) ); }); onNetPromise("npwd:reportTweet" /* REPORT */, async (reqObj, resp) => { const _source = getSource(); twitter_service_default.handleReport(reqObj, resp).catch( (e2) => twitterLogger.error(`Error occurred in report event (${_source}), Error: ${e2.message}`) ); }); onNetPromise("npwd:fetchTweets" /* FETCH_TWEETS */, (req, res) => { twitter_service_default.handleFetchTweets(req.source, req.data.pageId, res).catch( (e2) => twitterLogger.error(`Error occurred in fetchTweets event (${req.source}), Error: ${e2.message}`) ); }); if (!config.twitter.allowEditableProfileName && !config.twitter.generateProfileNameFromUsers) { const warning = `Both allowEdtiableProfileName and generateProfileNameFromUsers are set false - this means users will likely not have profile names for the Twitter App and won't be able to use it!`; twitterLogger.warn(warning); } // server/match/match.service.ts var _MatchService = class { constructor() { this.matchDB = MatchDB; matchLogger.debug("Match service started"); } async handleGetProfiles(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const profiles = await this.dispatchProfiles(identifier); resp({ status: "ok", data: profiles }); } catch (e2) { matchLogger.error(`Error in handleGetProfiles, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleGetMyProfile(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const profile = await this.dispatchPlayerProfile(identifier); emitNet("phone:matchAccountBroadcast" /* CREATE_MATCH_ACCOUNT_BROADCAST */, -1, profile); resp({ status: "ok", data: profile }); } catch (e2) { matchLogger.error(`Error in handleGetMyProfile, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleSaveLikes(reqObj, resp) { const player = player_service_default.getPlayer(reqObj.source); const identifier = player.getIdentifier(); matchLogger.debug(`Saving likes for identifier ${identifier}`); try { await this.matchDB.saveLikes(identifier, reqObj.data); } catch (e2) { matchLogger.error(`Failed to save likes, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } try { const newMatches = await this.matchDB.checkIfMatched(identifier, reqObj.data); if (newMatches) { resp({ status: "ok", data: true }); const matchedPlayer = player_service_default.getPlayerFromIdentifier(newMatches.identifier); if (matchedPlayer) { emitNet("phone:saveLikesBroadcast" /* SAVE_LIKES_BROADCAST */, matchedPlayer.source, { name: player.getName() }); } } else { resp({ status: "ok", data: false }); } } catch (e2) { matchLogger.error(`Failed to find new matches, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleGetMatches(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const matchedProfiles = await this.matchDB.findAllMatches(identifier, reqObj.data.page); const formattedMatches = matchedProfiles.map(formatMatches); resp({ status: "ok", data: formattedMatches }); } catch (e2) { matchLogger.error(`Failed to retrieve matches, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleCreateMyProfile(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); const profile = reqObj.data; matchLogger.debug(`Creating profile for identifier: ${identifier}`); matchLogger.debug(profile); try { if (!profile.name || !profile.name.trim()) { throw new Error("Profil-navn kan ikke være blankt"); } const newProfile = await this.matchDB.createProfile(identifier, profile); const formattedProfile = formatProfile(newProfile); resp({ status: "ok", data: formattedProfile }); } catch (e2) { matchLogger.error(`Failed to update profile for identifier ${identifier}, ${e2.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleUpdateMyProfile(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); const profile = reqObj.data; matchLogger.debug(`Updating profile for identifier: ${identifier}`); matchLogger.debug(profile); try { if (!profile.name || !profile.name.trim()) { throw new Error("Profil-navn kan ikke være blankt"); } const imageUrl = checkAndFilterImage(reqObj.data.image); if (imageUrl == null) { return resp({ status: "error", errorMsg: "GENERIC_INVALID_IMAGE_HOST" }); } reqObj.data.image = imageUrl; const updatedProfile = await this.matchDB.updateProfile(identifier, profile); const formattedProfile = formatProfile(updatedProfile); resp({ status: "ok", data: formattedProfile }); } catch (e2) { matchLogger.error(`Failed to update profile for identifier ${identifier}, ${e2.message}`); resp({ status: "error", errorMsg: "MATCH.FEEDBACK.UPDATE_PROFILE_FAILED" /* UPDATE_FAILED */ }); } } async dispatchPlayerProfile(identifier) { try { const profile = await this.matchDB.getOrCreateProfile(identifier); return formatProfile(profile); } catch (e2) { matchLogger.error(`Failed to get player profile, ${e2.message}`); } } async dispatchProfiles(identifier) { try { const profiles = await this.matchDB.getPotentialProfiles(identifier); return profiles.map(formatProfile); } catch (e2) { matchLogger.error(`Failed to retrieve profiles, ${e2.message}`); } } async handleInitialize(src) { const identifier = player_service_default.getIdentifier(src); matchLogger.debug(`Initializing match for identifier: ${identifier}`); await this.matchDB.updateLastActive(identifier); } }; var MatchService = new _MatchService(); var match_service_default = MatchService; // server/match/match.controller.ts onNetPromise("phone:getMatchProfiles" /* GET_PROFILES */, (reqObj, resp) => { match_service_default.handleGetProfiles(reqObj, resp).catch((e2) => { matchLogger.error( `Error occurred in fetch profiles event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("phone:getMyProfile" /* GET_MY_PROFILE */, (reqObj, resp) => { match_service_default.handleGetMyProfile(reqObj, resp).catch((e2) => { matchLogger.error( `Error occurred in fetch my profile event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("phone:getMatches" /* GET_MATCHES */, (reqObj, resp) => { match_service_default.handleGetMatches(reqObj, resp).catch((e2) => { matchLogger.error( `Error occurred in fetch matches event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("phone:saveLikes" /* SAVE_LIKES */, (reqObj, resp) => { match_service_default.handleSaveLikes(reqObj, resp).catch((e2) => { matchLogger.error(`Error occurred in save likes event (${reqObj.source}), Error: ${e2.message}`); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("phone:createMyProfile" /* CREATE_MY_PROFILE */, (reqObj, resp) => { match_service_default.handleCreateMyProfile(reqObj, resp).catch((e2) => { matchLogger.error( `Error occurred in create my profile event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise("phone:updateMyProfile" /* UPDATE_MY_PROFILE */, (reqObj, resp) => { match_service_default.handleUpdateMyProfile(reqObj, resp).catch((e2) => { matchLogger.error( `Error occurred in update my profile event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNet("phone:initializeMatch" /* INITIALIZE */, () => { const _source = getSource(); match_service_default.handleInitialize(_source).catch( (e2) => matchLogger.error(`Error occurred in initialize event (${_source}), Error: ${e2.message}`) ); }); if (!config.match.allowEditableProfileName && !config.match.generateProfileNameFromUsers) { const warning = `Both allowEdtiableProfileName and generateProfileNameFromUsers are set false - this means users will likely not have profile names for the Match App and won't be able to use it!`; matchLogger.warn(warning); } // server/darkchat/darkchat.utils.ts var darkchatLogger = mainLogger.child({ module: "darkchat" }); // server/darkchat/darkchat.service.ts var _DarkchatService = class { constructor() { this.darkchatDB = DarkchatDB; } async handleGetAllChannels(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const channels = await this.darkchatDB.getAllChannels(identifier); resp({ status: "ok", data: channels }); } catch (err) { darkchatLogger.error(`Failed to fetch channels. Error: ${err.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleGetMembers(reqObj, resp) { try { const members = await this.darkchatDB.getMembers(reqObj.data.channelId); resp({ status: "ok", data: members }); } catch (err) { darkchatLogger.error(`Failed to fetch members. Error: ${err.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleTransferOwnership(reqObj, resp) { const ownerIdentifier = player_service_default.getIdentifier(reqObj.source); try { await this.darkchatDB.transferChannelOwnership( ownerIdentifier, reqObj.data.userIdentifier, reqObj.data.channelId ); resp({ status: "ok", data: { ownerPhoneNumber: reqObj.data.newOwnerPhoneNumber, channelId: reqObj.data.channelId } }); const newOwnerPlayer = player_service_default.getPlayerFromIdentifier(reqObj.data.userIdentifier); if (newOwnerPlayer) { emitNetTyped( "npwd:darkchatTransferOwnershipSuccess" /* TRANSFER_OWNERSHIP_SUCCESS */, { ownerPhoneNumber: reqObj.data.newOwnerPhoneNumber, channelId: reqObj.data.channelId }, newOwnerPlayer.source ); } } catch (err) { darkchatLogger.error(`Failed to transfer ownership. Error: ${err.message}`); resp({ status: "error", errorMsg: "GENERIC_DB_ERROR" }); } } async handleGetChannelMessage(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const rawMessages = await this.darkchatDB.getChannelMessages(reqObj.data.channelId); const mappedMessages = rawMessages.map((msg) => { if (msg.identifier === identifier) { return { ...msg, isMine: true, type: msg.type && "image" || "text" }; } return msg; }); resp({ status: "ok", data: mappedMessages }); } catch (err) { darkchatLogger.error(`Failed to fetch channel messages. Error: ${err.message}`); resp({ status: "error", errorMsg: err.message }); } } async handleJoinChannel(reqObj, resp) { const identifier = player_service_default.getIdentifier(reqObj.source); try { const channelExists = await this.darkchatDB.doesChannelExist(reqObj.data.channelIdentifier); let isPlayerOwner = false; if (!channelExists) { await this.darkchatDB.createChannel(reqObj.data.channelIdentifier); isPlayerOwner = true; } const { id, label } = await this.darkchatDB.getChannelIdAndLabel( reqObj.data.channelIdentifier ); const members = await this.darkchatDB.getChannelMembers(id); const hasOwner = members.find((member) => member.isOwner); if (!hasOwner) isPlayerOwner = true; const channelId = await this.darkchatDB.joinChannel( reqObj.data.channelIdentifier, identifier, isPlayerOwner ); const channelOwner = await this.darkchatDB.getChannelOwner(id); const ownerPhoneNumber = await player_service_default.getPhoneNumberFromIdentifier(channelOwner); const resData = { id: channelId, identifier: reqObj.data.channelIdentifier, label: label ?? reqObj.data.channelIdentifier, owner: ownerPhoneNumber }; resp({ status: "ok", data: resData }); } catch (err) { darkchatLogger.error(`Failed to join channel. Error: ${err.message}`); resp({ status: "error", errorMsg: err.message }); } } async handleCreateMessage(reqObj, resp) { const userIdentifier = player_service_default.getIdentifier(reqObj.source); const phoneNumber = player_service_default.getPlayer(reqObj.source).getPhoneNumber(); const messageData = reqObj.data; try { const message = await this.darkchatDB.createMessage( messageData.channelId, userIdentifier, messageData.message, messageData.type === "image" ); const resObj = { ...message, channelId: messageData.channelId, isMine: messageData.phoneNumber === phoneNumber }; resp({ status: "ok", data: resObj }); const members = await this.darkchatDB.getChannelMembers(messageData.channelId); for (const member of members) { if (member.identifier !== userIdentifier) { const participant = player_service_default.getPlayerFromIdentifier(member.identifier); if (participant) { const resObj2 = { ...message, channelId: messageData.channelId, isMine: messageData.phoneNumber === participant.getPhoneNumber() }; emitNetTyped( "npwd:darkchatBroadcastMessage" /* BROADCAST_MESSAGE */, resObj2, participant.source ); } } } } catch (err) { darkchatLogger.error(`Failed to create message. Error: ${err.message}`); resp({ status: "error", errorMsg: err.message }); } } async handleLeaveChannel(reqObj, resp) { const userIdentifier = player_service_default.getIdentifier(reqObj.source); try { await this.darkchatDB.leaveChannel(reqObj.data.channelId, userIdentifier); resp({ status: "ok" }); } catch (err) { darkchatLogger.error(`Failed to leave channel. Error: ${err.message}`); resp({ status: "error", errorMsg: err.message }); } } async handleUpdateChannelLabel(reqObj, resp) { const userIdentifier = player_service_default.getIdentifier(reqObj.source); try { const channelData = reqObj.data; await this.darkchatDB.updateChannelLabel(reqObj.data); resp({ status: "ok" }); const members = await this.darkchatDB.getChannelMembers(reqObj.data.channelId); for (const member of members) { if (member.identifier !== userIdentifier) { const participant = player_service_default.getPlayerFromIdentifier(member.identifier); if (participant) { emitNetTyped( "npwd:darkchatBroadcastMessage" /* BROADCAST_MESSAGE */, channelData, participant.source ); } } } } catch (err) { darkchatLogger.error(`Failed to update channel label. Error: ${err.message}`); resp({ status: "error", errorMsg: err.message }); } } async deleteChannel(reqObj, resp) { const userIdentifier = player_service_default.getIdentifier(reqObj.source); try { const owner = await this.darkchatDB.getChannelOwner(reqObj.data.channelId); const members = await this.darkchatDB.getMembers(reqObj.data.channelId); if (owner === userIdentifier) { await this.darkchatDB.deleteChannel(reqObj.data.channelId); resp({ status: "ok" }); for (const member of members) { if (member.identifier !== userIdentifier) { const participant = player_service_default.getPlayerFromIdentifier(member.identifier); if (participant) { emitNet("npwd:darkchatDeleteChannelSuccess" /* DELETE_CHANNEL_SUCCESS */, participant.source, { channelId: reqObj.data.channelId }); } } } } return resp({ status: "error", errorMsg: "NOT_OWNER" }); } catch (err) { darkchatLogger.error(`Failed to delete channel. Error: ${err.message}`); resp({ status: "error", errorMsg: err.message }); } } }; var DarkchatService = new _DarkchatService(); var darkchat_service_default = DarkchatService; // server/darkchat/darkchat.controller.ts onNetPromise("npwd:darkchatFetchChannels" /* FETCH_CHANNELS */, async (reqObj, resp) => { await darkchat_service_default.handleGetAllChannels(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in fetch channels event (${reqObj.source}). Error: ${err.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); onNetPromise( "npwd:darkchatFetchMessages" /* FETCH_MESSAGES */, async (reqObj, resp) => { darkchat_service_default.handleGetChannelMessage(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in fetch channel messages (${reqObj.source}). Error: ${err.message}` ); }); } ); onNetPromise("npwd:darkchatAddChannel" /* ADD_CHANNEL */, async (reqObj, resp) => { darkchat_service_default.handleJoinChannel(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in join channel event (${reqObj.source}). Error: ${err.message}` ); }); }); onNetPromise("npwd:darkchatSendMessage" /* SEND_MESSAGE */, async (reqObj, resp) => { darkchat_service_default.handleCreateMessage(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in send message event (${reqObj.source}). Error: ${err.message}` ); }); }); onNetPromise("npwd:darkchatLeaveChannel" /* LEAVE_CHANNEL */, async (reqObj, resp) => { darkchat_service_default.handleLeaveChannel(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in leave channel event (${reqObj.source}). Error: ${err.message}` ); }); }); onNetPromise("npwd:darkchatUpdateChannelLabel" /* UPDATE_CHANNEL_LABEL */, async (reqObj, resp) => { darkchat_service_default.handleUpdateChannelLabel(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in update channel label event (${reqObj.source}). Error: ${err.message}` ); }); }); onNetPromise("npwd:darkchatDeleteChannel" /* DELETE_CHANNEL */, async (reqObj, resp) => { darkchat_service_default.deleteChannel(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in delete channel event (${reqObj.source}). Error: ${err.message}` ); }); }); onNetPromise( "npwd:darkchatTransferOwnership" /* TRANSFER_OWNERSHIP */, async (reqObj, resp) => { darkchat_service_default.handleTransferOwnership(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in transfer ownership event (${reqObj.source}). Error: ${err.message}` ); }); } ); onNetPromise( "npwd:darkchatFetchMembers" /* FETCH_MEMBERS */, async (reqObj, resp) => { darkchat_service_default.handleGetMembers(reqObj, resp).catch((err) => { darkchatLogger.error( `Error occurred in delete channel event (${reqObj.source}). Error: ${err.message}` ); }); } ); // server/audio/audio.utils.ts var audioLogger = mainLogger.child({ module: "audio" }); // server/audio/audio.service.ts var fs3 = __toESM(require("fs")); var path4 = GetResourcePath("npwd") + "/uploads"; var _AudioService = class { constructor() { this.TOKEN = GetConvar("NPWD_AUDIO_TOKEN", ""); } async uploadAudio(reqObj, resp) { if (!this.TOKEN) { audioLogger.error("Could not find upload token for audio! Please add the token the convar."); return resp({ status: "error", errorMsg: "No upload token found!" }); } if (!fs3.existsSync(path4)) fs3.mkdirSync(path4); const filePath = `${path4}/recording-${v4()}.ogg`; fs3.writeFileSync( filePath, Buffer.from(reqObj.data.file.replace("data:audio/ogg;base64,", ""), "base64") ); try { const form_data = new FormData2(); const blob = fileFromSync(filePath, "audio/ogg"); form_data.append("recording", blob); const res = await fetch2(config.voiceMessage.url, { method: "POST", headers: { [config.voiceMessage.authorizationHeader]: this.TOKEN }, body: form_data }); fs3.rmSync(filePath); if (res.status !== 200) { const errorText = await res.text(); audioLogger.error(`Failed to upload audio. Error: ${errorText}`); return resp({ status: "error", errorMsg: "Failed to upload audio" }); } const response = await res.json(); let recordingUrl = ""; for (const index of config.voiceMessage.returnedDataIndexes) { recordingUrl = response[index]; } resp({ status: "ok", data: { url: recordingUrl } }); } catch (err) { console.error("Error when trying to upload image", err.message); resp({ status: "error", errorMsg: "Failed to upload audio" }); } } }; var AudioService = new _AudioService(); var audio_service_default = AudioService; // server/audio/audio.controller.ts onNetPromise("npwd:audio:uploadAudio" /* UPLOAD_AUDIO */, (reqObj, resp) => { audio_service_default.uploadAudio(reqObj, resp).catch((e2) => { audioLogger.error( `Error occurred in audio upload event (${reqObj.source}), Error: ${e2.message}` ); resp({ status: "error", errorMsg: "INTERNAL_ERROR" }); }); }); // server/bridge/bridge.utils.ts var bridgeLogger = mainLogger.child({ module: "bridge" }); // server/bridge/sv_exports.ts var exp5 = global.exports; var logExport = (exportName, msg) => { bridgeLogger.debug(`[${exportName}] ${msg}`); }; exp5("generatePhoneNumber", async () => { const num = await generateUniquePhoneNumber(); logExport("generatePhoneNumber", num); return num; }); if (config.general.useResourceIntegration) { exp5("newPlayer", async (playerDTO) => { if (typeof playerDTO.source !== "number") { return playerLogger.error("Source must be passed as a number when loading a player"); } await player_service_default.handleNewPlayerEvent(playerDTO); emitNet("npwd:setPlayerLoaded" /* SET_PLAYER_LOADED */, playerDTO.source, true); }); exp5("unloadPlayer", async (src) => { if (typeof src !== "number") { return playerLogger.error("Source must be passed as a number when unloading a player"); } playerLogger.debug(`Received unloadPlayer event for ${src}`); await player_service_default.handleUnloadPlayerEvent(src); }); } exp5("getPhoneNumber", (src) => { playerLogger.error( "[DEPRECATION WARNING]: deprecated export getPhoneNumber called, please use getPlayerData" ); return player_service_default.getPlayer(src).getPhoneNumber(); }); exp5("getPlayerData", async (locator) => { let player; if (locator.source) { player = player_service_default.getPlayer( typeof locator.source === "string" ? parseInt(locator.source) : locator.source ); } if (locator.identifier) { player = player_service_default.getPlayerFromIdentifier(locator.identifier); } if (locator.phoneNumber) { const identifier = await player_service_default.getIdentifierFromPhoneNumber(locator.phoneNumber, false); player = player_service_default.getPlayerFromIdentifier(identifier); } if (!player) return null; return { phoneNumber: player.getPhoneNumber(), firstName: player.getFirstName(), lastName: player.getLastName(), name: player.getName(), identifier: player.getIdentifier(), source: player.source }; }); // server/messages/middleware/emitMessage.ts var exp6 = global.exports; exp6("emitMessage", async ({ senderNumber, targetNumber, message, embed }) => { await messages_service_default.handleEmitMessage({ senderNumber, targetNumber, message, embed: embed && JSON.stringify(embed) }).then(async () => { const funcRef = OnMessageExportMap.get(targetNumber); const senderIdentifier = await player_service_default.getIdentifierByPhoneNumber(senderNumber, false); const senderPlayer = player_service_default.getPlayerFromIdentifier(senderIdentifier); if (funcRef) { try { await funcRef({ data: { embed, message, sourcePhoneNumber: senderNumber, tgtPhoneNumber: targetNumber }, source: senderPlayer.source }); } catch (e2) { messagesLogger.error( `Failed to find a callback reference for onMessage. Probably because the resource(s) using the export was stopped or restarted. Please restart said resource(s). Error: ${e2.message}` ); } } }); }); // server/rcon/exports.ts global.exports("emitRconMessage", (src, data) => { emitNet("npwd:sendMessageSuccess" /* SEND_MESSAGE_SUCCESS */, src, data); }); // server/server.ts var Sentry = __toESM(require_dist10()); var config3 = config2; registerCommands(); if (config3.debug.sentryEnabled && process.env.NODE_ENV === "production") { Sentry.init({ dsn: "https://5c5da180a57e4db1acb617ef2c6cb59f@sentry.projecterror.dev/3", integrations: [new import_integrations.RewriteFrames()], release: process.env.SENTRY_RELEASE || "0.0.0", tracesSampleRate: 1 }); } on("onServerResourceStart", (resource) => { if (resource === GetCurrentResourceName()) { mainLogger.info("Successfully started"); } }); // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { config }); /*! localForage -- Offline Storage, Improved Version 1.10.0 https://localforage.github.io/localForage (c) 2013-2017 Mozilla, Apache License 2.0 */ /*! * cookie * Copyright(c) 2012-2014 Roman Shtylman * Copyright(c) 2015 Douglas Christopher Wilson * MIT Licensed */ /*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */ /*! fetch-blob. MIT License. Jimmy Wärting */ /*! formdata-polyfill. MIT License. Jimmy Wärting */ /*! node-domexception. MIT License. Jimmy Wärting */ /*! safe-buffer. MIT License. Feross Aboukhadijeh */ /** * @license * Copyright 2009 The Closure Library Authors * Copyright 2020 Daniel Wirtz / The long.js Authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * SPDX-License-Identifier: Apache-2.0 */ /** * stack-trace - Parses node.js stack traces * * This was originally forked to fix this issue: * https://github.com/felixge/node-stack-trace/issues/31 * * Mar 19,2019 - #4fd379e * * https://github.com/felixge/node-stack-trace/ * @license MIT */