@morghulis/core 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -0
- package/dist/favicon.ico +0 -0
- package/dist/index.css +1 -0
- package/dist/morghulis-core.es.js +6044 -0
- package/dist/morghulis-core.es.js.map +1 -0
- package/dist/morghulis-core.umd.js +35 -0
- package/dist/morghulis-core.umd.js.map +1 -0
- package/dist/types/core.d.ts +2 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/types.d.ts +17 -0
- package/dist/types/use-channel/Channel.d.ts +17 -0
- package/dist/types/use-channel/ChannelHub.d.ts +9 -0
- package/dist/types/use-channel/index.d.ts +5 -0
- package/dist/types/use-channel/types.d.ts +28 -0
- package/dist/types/use-request/index.d.ts +15 -0
- package/dist/types/use-socket/index.d.ts +5 -0
- package/package.json +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"morghulis-core.es.js","sources":["../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/platform/common/utils.js","../node_modules/axios/lib/platform/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/helpers/throttle.js","../node_modules/axios/lib/helpers/progressEventReducer.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/helpers/resolveConfig.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/helpers/composeSignals.js","../node_modules/axios/lib/helpers/trackStream.js","../node_modules/axios/lib/adapters/fetch.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/axios/index.js","../node_modules/@morghulis/utils/dist/morghulis-utils.es.js","../node_modules/nprogress/nprogress.js","../packages/use-request/index.ts","../packages/use-channel/Channel.ts","../packages/use-channel/ChannelHub.ts","../node_modules/@vueuse/shared/index.mjs","../node_modules/@vueuse/core/index.mjs","../packages/use-socket/index.ts","../packages/core.ts","../packages/use-channel/index.ts","../packages/index.ts"],"sourcesContent":["'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\nconst {iterator, toStringTag} = Symbol;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(toStringTag in val) && !(iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object<any, any>} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[iterator];\n\n const _iterator = generator.call(obj);\n\n let result;\n\n while ((result = _iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array<boolean>}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[toStringTag] === 'FormData' && thing[iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\n\nconst isIterable = (thing) => thing != null && isFunction(thing[iterator]);\n\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap,\n isIterable\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array<any>} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object<any, any>} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object<string, any>} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isBoolean(value)) {\n return value.toString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array<String|Number>} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object<string, any>} params - The parameters to be converted to a FormData object.\n * @param {Object<string, any>} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n if (utils.isFunction(options)) {\n options = {\n serialize: options\n };\n } \n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array<any>} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object<string, any> | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isObject(header) && utils.isIterable(header)) {\n let obj = {}, dest, key;\n for (const entry of header) {\n if (!utils.isArray(entry)) {\n throw TypeError('Object iterator must return a key-value pair');\n }\n\n obj[key = entry[0]] = (dest = obj[key]) ?\n (utils.isArray(dest) ? [...dest, entry[1]] : [dest, entry[1]]) : entry[1];\n }\n\n setHeaders(obj, valueOrRewrite)\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n getSetCookie() {\n return this.get(\"set-cookie\") || [];\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) {\n let isRelativeUrl = !isAbsoluteURL(requestedURL);\n if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, prop , caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop , caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop , caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url, newConfig.allowAbsoluteUrls), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request, fetchOptions);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /Load failed|fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.10.0\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n }\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig || {};\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n // Set config.allowAbsoluteUrls\n if (config.allowAbsoluteUrls !== undefined) {\n // do nothing\n } else if (this.defaults.allowAbsoluteUrls !== undefined) {\n config.allowAbsoluteUrls = this.defaults.allowAbsoluteUrls;\n } else {\n config.allowAbsoluteUrls = true;\n }\n\n validator.assertOptions(config, {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken')\n }, true);\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url, config.allowAbsoluteUrls);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n}\n","import { ref as L_ } from \"vue\";\nlet P_ = (e = 21) => crypto.getRandomValues(new Uint8Array(e)).reduce((t, r) => (r &= 63, r < 36 ? t += r.toString(36) : r < 62 ? t += (r - 26).toString(36).toUpperCase() : r > 62 ? t += \"-\" : t += \"_\", t), \"\");\n/*! js-cookie v3.0.5 | MIT */\nfunction Wi(e) {\n for (var t = 1; t < arguments.length; t++) {\n var r = arguments[t];\n for (var n in r)\n e[n] = r[n];\n }\n return e;\n}\nvar b_ = {\n read: function(e) {\n return e[0] === '\"' && (e = e.slice(1, -1)), e.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent);\n },\n write: function(e) {\n return encodeURIComponent(e).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n );\n }\n};\nfunction qf(e, t) {\n function r(i, f, c) {\n if (!(typeof document > \"u\")) {\n c = Wi({}, t, c), typeof c.expires == \"number\" && (c.expires = new Date(Date.now() + c.expires * 864e5)), c.expires && (c.expires = c.expires.toUTCString()), i = encodeURIComponent(i).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);\n var u = \"\";\n for (var l in c)\n c[l] && (u += \"; \" + l, c[l] !== !0 && (u += \"=\" + c[l].split(\";\")[0]));\n return document.cookie = i + \"=\" + e.write(f, i) + u;\n }\n }\n function n(i) {\n if (!(typeof document > \"u\" || arguments.length && !i)) {\n for (var f = document.cookie ? document.cookie.split(\"; \") : [], c = {}, u = 0; u < f.length; u++) {\n var l = f[u].split(\"=\"), h = l.slice(1).join(\"=\");\n try {\n var x = decodeURIComponent(l[0]);\n if (c[x] = e.read(h, x), i === x)\n break;\n } catch {\n }\n }\n return i ? c[i] : c;\n }\n }\n return Object.create(\n {\n set: r,\n get: n,\n remove: function(i, f) {\n r(\n i,\n \"\",\n Wi({}, f, {\n expires: -1\n })\n );\n },\n withAttributes: function(i) {\n return qf(this.converter, Wi({}, this.attributes, i));\n },\n withConverter: function(i) {\n return qf(Wi({}, this.converter, i), this.attributes);\n }\n },\n {\n attributes: { value: Object.freeze(t) },\n converter: { value: Object.freeze(e) }\n }\n );\n}\nvar Qi = qf(b_, { path: \"/\" }), Hi = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {};\nfunction B_(e) {\n return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, \"default\") ? e.default : e;\n}\nvar _0 = { exports: {} };\n/**\n * @license\n * Lodash <https://lodash.com/>\n * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\nvar M_ = _0.exports, qo;\nfunction U_() {\n return qo || (qo = 1, function(e, t) {\n (function() {\n var r, n = \"4.17.21\", i = 200, f = \"Unsupported core-js use. Try https://npms.io/search?q=ponyfill.\", c = \"Expected a function\", u = \"Invalid `variable` option passed into `_.template`\", l = \"__lodash_hash_undefined__\", h = 500, x = \"__lodash_placeholder__\", m = 1, _ = 2, v = 4, T = 1, A = 2, g = 1, p = 2, y = 4, w = 8, P = 16, V = 32, Z = 64, M = 128, G = 256, U = 512, J = 30, z = \"...\", re = 800, ne = 16, Ae = 1, he = 2, De = 3, le = 1 / 0, Ee = 9007199254740991, be = 17976931348623157e292, ae = NaN, Pe = 4294967295, Ge = Pe - 1, Le = Pe >>> 1, Se = [\n [\"ary\", M],\n [\"bind\", g],\n [\"bindKey\", p],\n [\"curry\", w],\n [\"curryRight\", P],\n [\"flip\", U],\n [\"partial\", V],\n [\"partialRight\", Z],\n [\"rearg\", G]\n ], Me = \"[object Arguments]\", Be = \"[object Array]\", Ke = \"[object AsyncFunction]\", N = \"[object Boolean]\", K = \"[object Date]\", H = \"[object DOMException]\", B = \"[object Error]\", fe = \"[object Function]\", O = \"[object GeneratorFunction]\", pe = \"[object Map]\", Te = \"[object Number]\", ve = \"[object Null]\", Oe = \"[object Object]\", Re = \"[object Promise]\", Ve = \"[object Proxy]\", ar = \"[object RegExp]\", qe = \"[object Set]\", Er = \"[object String]\", Ce = \"[object Symbol]\", er = \"[object Undefined]\", ge = \"[object WeakMap]\", xt = \"[object WeakSet]\", Nr = \"[object ArrayBuffer]\", dr = \"[object DataView]\", dt = \"[object Float32Array]\", Yr = \"[object Float64Array]\", we = \"[object Int8Array]\", fr = \"[object Int16Array]\", Cr = \"[object Int32Array]\", yr = \"[object Uint8Array]\", yt = \"[object Uint8ClampedArray]\", ta = \"[object Uint16Array]\", Pa = \"[object Uint32Array]\", Y0 = /\\b__p \\+= '';/g, Z0 = /\\b(__p \\+=) '' \\+/g, J0 = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g, q0 = /&(?:amp|lt|gt|quot|#39);/g, Q0 = /[&<>\"']/g, Cn = RegExp(q0.source), Es = RegExp(Q0.source), Ts = /<%-([\\s\\S]+?)%>/g, ws = /<%([\\s\\S]+?)%>/g, j0 = /<%=([\\s\\S]+?)%>/g, ks = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/, As = /^\\w*$/, Fs = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g, jn = /[\\\\^$.*+?()[\\]{}|]/g, e0 = RegExp(jn.source), r0 = /^\\s+/, Ss = /\\s/, Cs = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/, k = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/, R = /,? & /, C = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g, I = /[()=,{}\\[\\]\\/\\s]/, D = /\\\\(\\\\)?/g, L = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g, Q = /\\w*$/, ie = /^[-+]0x[0-9a-f]+$/i, q = /^0b[01]+$/i, j = /^\\[object .+?Constructor\\]$/, ee = /^0o[0-7]+$/i, xe = /^(?:0|[1-9]\\d*)$/, me = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g, Fe = /($^)/, de = /['\\n\\r\\u2028\\u2029\\\\]/g, _e = \"\\\\ud800-\\\\udfff\", $e = \"\\\\u0300-\\\\u036f\", kr = \"\\\\ufe20-\\\\ufe2f\", Fr = \"\\\\u20d0-\\\\u20ff\", Vr = $e + kr + Fr, ba = \"\\\\u2700-\\\\u27bf\", Ba = \"a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff\", tn = \"\\\\xac\\\\xb1\\\\xd7\\\\xf7\", _a = \"\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf\", t0 = \"\\\\u2000-\\\\u206f\", aa = \" \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000\", yc = \"A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde\", Ic = \"\\\\ufe0e\\\\ufe0f\", Oc = tn + _a + t0 + aa, ys = \"['’]\", Lh = \"[\" + _e + \"]\", Dc = \"[\" + Oc + \"]\", ei = \"[\" + Vr + \"]\", Rc = \"\\\\d+\", Ph = \"[\" + ba + \"]\", Nc = \"[\" + Ba + \"]\", Lc = \"[^\" + _e + Oc + Rc + ba + Ba + yc + \"]\", Is = \"\\\\ud83c[\\\\udffb-\\\\udfff]\", bh = \"(?:\" + ei + \"|\" + Is + \")\", Pc = \"[^\" + _e + \"]\", Os = \"(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}\", Ds = \"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\", yn = \"[\" + yc + \"]\", bc = \"\\\\u200d\", Bc = \"(?:\" + Nc + \"|\" + Lc + \")\", Bh = \"(?:\" + yn + \"|\" + Lc + \")\", Mc = \"(?:\" + ys + \"(?:d|ll|m|re|s|t|ve))?\", Uc = \"(?:\" + ys + \"(?:D|LL|M|RE|S|T|VE))?\", Wc = bh + \"?\", Hc = \"[\" + Ic + \"]?\", Mh = \"(?:\" + bc + \"(?:\" + [Pc, Os, Ds].join(\"|\") + \")\" + Hc + Wc + \")*\", Uh = \"\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])\", Wh = \"\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])\", Gc = Hc + Wc + Mh, Hh = \"(?:\" + [Ph, Os, Ds].join(\"|\") + \")\" + Gc, Gh = \"(?:\" + [Pc + ei + \"?\", ei, Os, Ds, Lh].join(\"|\") + \")\", Vh = RegExp(ys, \"g\"), Xh = RegExp(ei, \"g\"), Rs = RegExp(Is + \"(?=\" + Is + \")|\" + Gh + Gc, \"g\"), $h = RegExp([\n yn + \"?\" + Nc + \"+\" + Mc + \"(?=\" + [Dc, yn, \"$\"].join(\"|\") + \")\",\n Bh + \"+\" + Uc + \"(?=\" + [Dc, yn + Bc, \"$\"].join(\"|\") + \")\",\n yn + \"?\" + Bc + \"+\" + Mc,\n yn + \"+\" + Uc,\n Wh,\n Uh,\n Rc,\n Hh\n ].join(\"|\"), \"g\"), zh = RegExp(\"[\" + bc + _e + Vr + Ic + \"]\"), Kh = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/, Yh = [\n \"Array\",\n \"Buffer\",\n \"DataView\",\n \"Date\",\n \"Error\",\n \"Float32Array\",\n \"Float64Array\",\n \"Function\",\n \"Int8Array\",\n \"Int16Array\",\n \"Int32Array\",\n \"Map\",\n \"Math\",\n \"Object\",\n \"Promise\",\n \"RegExp\",\n \"Set\",\n \"String\",\n \"Symbol\",\n \"TypeError\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"WeakMap\",\n \"_\",\n \"clearTimeout\",\n \"isFinite\",\n \"parseInt\",\n \"setTimeout\"\n ], Zh = -1, Sr = {};\n Sr[dt] = Sr[Yr] = Sr[we] = Sr[fr] = Sr[Cr] = Sr[yr] = Sr[yt] = Sr[ta] = Sr[Pa] = !0, Sr[Me] = Sr[Be] = Sr[Nr] = Sr[N] = Sr[dr] = Sr[K] = Sr[B] = Sr[fe] = Sr[pe] = Sr[Te] = Sr[Oe] = Sr[ar] = Sr[qe] = Sr[Er] = Sr[ge] = !1;\n var Ar = {};\n Ar[Me] = Ar[Be] = Ar[Nr] = Ar[dr] = Ar[N] = Ar[K] = Ar[dt] = Ar[Yr] = Ar[we] = Ar[fr] = Ar[Cr] = Ar[pe] = Ar[Te] = Ar[Oe] = Ar[ar] = Ar[qe] = Ar[Er] = Ar[Ce] = Ar[yr] = Ar[yt] = Ar[ta] = Ar[Pa] = !0, Ar[B] = Ar[fe] = Ar[ge] = !1;\n var Jh = {\n // Latin-1 Supplement block.\n À: \"A\",\n Á: \"A\",\n Â: \"A\",\n Ã: \"A\",\n Ä: \"A\",\n Å: \"A\",\n à: \"a\",\n á: \"a\",\n â: \"a\",\n ã: \"a\",\n ä: \"a\",\n å: \"a\",\n Ç: \"C\",\n ç: \"c\",\n Ð: \"D\",\n ð: \"d\",\n È: \"E\",\n É: \"E\",\n Ê: \"E\",\n Ë: \"E\",\n è: \"e\",\n é: \"e\",\n ê: \"e\",\n ë: \"e\",\n Ì: \"I\",\n Í: \"I\",\n Î: \"I\",\n Ï: \"I\",\n ì: \"i\",\n í: \"i\",\n î: \"i\",\n ï: \"i\",\n Ñ: \"N\",\n ñ: \"n\",\n Ò: \"O\",\n Ó: \"O\",\n Ô: \"O\",\n Õ: \"O\",\n Ö: \"O\",\n Ø: \"O\",\n ò: \"o\",\n ó: \"o\",\n ô: \"o\",\n õ: \"o\",\n ö: \"o\",\n ø: \"o\",\n Ù: \"U\",\n Ú: \"U\",\n Û: \"U\",\n Ü: \"U\",\n ù: \"u\",\n ú: \"u\",\n û: \"u\",\n ü: \"u\",\n Ý: \"Y\",\n ý: \"y\",\n ÿ: \"y\",\n Æ: \"Ae\",\n æ: \"ae\",\n Þ: \"Th\",\n þ: \"th\",\n ß: \"ss\",\n // Latin Extended-A block.\n Ā: \"A\",\n Ă: \"A\",\n Ą: \"A\",\n ā: \"a\",\n ă: \"a\",\n ą: \"a\",\n Ć: \"C\",\n Ĉ: \"C\",\n Ċ: \"C\",\n Č: \"C\",\n ć: \"c\",\n ĉ: \"c\",\n ċ: \"c\",\n č: \"c\",\n Ď: \"D\",\n Đ: \"D\",\n ď: \"d\",\n đ: \"d\",\n Ē: \"E\",\n Ĕ: \"E\",\n Ė: \"E\",\n Ę: \"E\",\n Ě: \"E\",\n ē: \"e\",\n ĕ: \"e\",\n ė: \"e\",\n ę: \"e\",\n ě: \"e\",\n Ĝ: \"G\",\n Ğ: \"G\",\n Ġ: \"G\",\n Ģ: \"G\",\n ĝ: \"g\",\n ğ: \"g\",\n ġ: \"g\",\n ģ: \"g\",\n Ĥ: \"H\",\n Ħ: \"H\",\n ĥ: \"h\",\n ħ: \"h\",\n Ĩ: \"I\",\n Ī: \"I\",\n Ĭ: \"I\",\n Į: \"I\",\n İ: \"I\",\n ĩ: \"i\",\n ī: \"i\",\n ĭ: \"i\",\n į: \"i\",\n ı: \"i\",\n Ĵ: \"J\",\n ĵ: \"j\",\n Ķ: \"K\",\n ķ: \"k\",\n ĸ: \"k\",\n Ĺ: \"L\",\n Ļ: \"L\",\n Ľ: \"L\",\n Ŀ: \"L\",\n Ł: \"L\",\n ĺ: \"l\",\n ļ: \"l\",\n ľ: \"l\",\n ŀ: \"l\",\n ł: \"l\",\n Ń: \"N\",\n Ņ: \"N\",\n Ň: \"N\",\n Ŋ: \"N\",\n ń: \"n\",\n ņ: \"n\",\n ň: \"n\",\n ŋ: \"n\",\n Ō: \"O\",\n Ŏ: \"O\",\n Ő: \"O\",\n ō: \"o\",\n ŏ: \"o\",\n ő: \"o\",\n Ŕ: \"R\",\n Ŗ: \"R\",\n Ř: \"R\",\n ŕ: \"r\",\n ŗ: \"r\",\n ř: \"r\",\n Ś: \"S\",\n Ŝ: \"S\",\n Ş: \"S\",\n Š: \"S\",\n ś: \"s\",\n ŝ: \"s\",\n ş: \"s\",\n š: \"s\",\n Ţ: \"T\",\n Ť: \"T\",\n Ŧ: \"T\",\n ţ: \"t\",\n ť: \"t\",\n ŧ: \"t\",\n Ũ: \"U\",\n Ū: \"U\",\n Ŭ: \"U\",\n Ů: \"U\",\n Ű: \"U\",\n Ų: \"U\",\n ũ: \"u\",\n ū: \"u\",\n ŭ: \"u\",\n ů: \"u\",\n ű: \"u\",\n ų: \"u\",\n Ŵ: \"W\",\n ŵ: \"w\",\n Ŷ: \"Y\",\n ŷ: \"y\",\n Ÿ: \"Y\",\n Ź: \"Z\",\n Ż: \"Z\",\n Ž: \"Z\",\n ź: \"z\",\n ż: \"z\",\n ž: \"z\",\n IJ: \"IJ\",\n ij: \"ij\",\n Œ: \"Oe\",\n œ: \"oe\",\n ʼn: \"'n\",\n ſ: \"s\"\n }, qh = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, Qh = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n \""\": '\"',\n \"'\": \"'\"\n }, jh = {\n \"\\\\\": \"\\\\\",\n \"'\": \"'\",\n \"\\n\": \"n\",\n \"\\r\": \"r\",\n \"\\u2028\": \"u2028\",\n \"\\u2029\": \"u2029\"\n }, ex = parseFloat, rx = parseInt, Vc = typeof Hi == \"object\" && Hi && Hi.Object === Object && Hi, tx = typeof self == \"object\" && self && self.Object === Object && self, jr = Vc || tx || Function(\"return this\")(), Ns = t && !t.nodeType && t, an = Ns && !0 && e && !e.nodeType && e, Xc = an && an.exports === Ns, Ls = Xc && Vc.process, Ht = function() {\n try {\n var X = an && an.require && an.require(\"util\").types;\n return X || Ls && Ls.binding && Ls.binding(\"util\");\n } catch {\n }\n }(), $c = Ht && Ht.isArrayBuffer, zc = Ht && Ht.isDate, Kc = Ht && Ht.isMap, Yc = Ht && Ht.isRegExp, Zc = Ht && Ht.isSet, Jc = Ht && Ht.isTypedArray;\n function It(X, se, te) {\n switch (te.length) {\n case 0:\n return X.call(se);\n case 1:\n return X.call(se, te[0]);\n case 2:\n return X.call(se, te[0], te[1]);\n case 3:\n return X.call(se, te[0], te[1], te[2]);\n }\n return X.apply(se, te);\n }\n function ax(X, se, te, ye) {\n for (var ze = -1, vr = X == null ? 0 : X.length; ++ze < vr; ) {\n var Xr = X[ze];\n se(ye, Xr, te(Xr), X);\n }\n return ye;\n }\n function Gt(X, se) {\n for (var te = -1, ye = X == null ? 0 : X.length; ++te < ye && se(X[te], te, X) !== !1; )\n ;\n return X;\n }\n function nx(X, se) {\n for (var te = X == null ? 0 : X.length; te-- && se(X[te], te, X) !== !1; )\n ;\n return X;\n }\n function qc(X, se) {\n for (var te = -1, ye = X == null ? 0 : X.length; ++te < ye; )\n if (!se(X[te], te, X))\n return !1;\n return !0;\n }\n function Ma(X, se) {\n for (var te = -1, ye = X == null ? 0 : X.length, ze = 0, vr = []; ++te < ye; ) {\n var Xr = X[te];\n se(Xr, te, X) && (vr[ze++] = Xr);\n }\n return vr;\n }\n function ri(X, se) {\n var te = X == null ? 0 : X.length;\n return !!te && In(X, se, 0) > -1;\n }\n function Ps(X, se, te) {\n for (var ye = -1, ze = X == null ? 0 : X.length; ++ye < ze; )\n if (te(se, X[ye]))\n return !0;\n return !1;\n }\n function Ir(X, se) {\n for (var te = -1, ye = X == null ? 0 : X.length, ze = Array(ye); ++te < ye; )\n ze[te] = se(X[te], te, X);\n return ze;\n }\n function Ua(X, se) {\n for (var te = -1, ye = se.length, ze = X.length; ++te < ye; )\n X[ze + te] = se[te];\n return X;\n }\n function bs(X, se, te, ye) {\n var ze = -1, vr = X == null ? 0 : X.length;\n for (ye && vr && (te = X[++ze]); ++ze < vr; )\n te = se(te, X[ze], ze, X);\n return te;\n }\n function ix(X, se, te, ye) {\n var ze = X == null ? 0 : X.length;\n for (ye && ze && (te = X[--ze]); ze--; )\n te = se(te, X[ze], ze, X);\n return te;\n }\n function Bs(X, se) {\n for (var te = -1, ye = X == null ? 0 : X.length; ++te < ye; )\n if (se(X[te], te, X))\n return !0;\n return !1;\n }\n var sx = Ms(\"length\");\n function fx(X) {\n return X.split(\"\");\n }\n function cx(X) {\n return X.match(C) || [];\n }\n function Qc(X, se, te) {\n var ye;\n return te(X, function(ze, vr, Xr) {\n if (se(ze, vr, Xr))\n return ye = vr, !1;\n }), ye;\n }\n function ti(X, se, te, ye) {\n for (var ze = X.length, vr = te + (ye ? 1 : -1); ye ? vr-- : ++vr < ze; )\n if (se(X[vr], vr, X))\n return vr;\n return -1;\n }\n function In(X, se, te) {\n return se === se ? Ex(X, se, te) : ti(X, jc, te);\n }\n function ux(X, se, te, ye) {\n for (var ze = te - 1, vr = X.length; ++ze < vr; )\n if (ye(X[ze], se))\n return ze;\n return -1;\n }\n function jc(X) {\n return X !== X;\n }\n function eu(X, se) {\n var te = X == null ? 0 : X.length;\n return te ? Ws(X, se) / te : ae;\n }\n function Ms(X) {\n return function(se) {\n return se == null ? r : se[X];\n };\n }\n function Us(X) {\n return function(se) {\n return X == null ? r : X[se];\n };\n }\n function ru(X, se, te, ye, ze) {\n return ze(X, function(vr, Xr, wr) {\n te = ye ? (ye = !1, vr) : se(te, vr, Xr, wr);\n }), te;\n }\n function ox(X, se) {\n var te = X.length;\n for (X.sort(se); te--; )\n X[te] = X[te].value;\n return X;\n }\n function Ws(X, se) {\n for (var te, ye = -1, ze = X.length; ++ye < ze; ) {\n var vr = se(X[ye]);\n vr !== r && (te = te === r ? vr : te + vr);\n }\n return te;\n }\n function Hs(X, se) {\n for (var te = -1, ye = Array(X); ++te < X; )\n ye[te] = se(te);\n return ye;\n }\n function lx(X, se) {\n return Ir(se, function(te) {\n return [te, X[te]];\n });\n }\n function tu(X) {\n return X && X.slice(0, su(X) + 1).replace(r0, \"\");\n }\n function Ot(X) {\n return function(se) {\n return X(se);\n };\n }\n function Gs(X, se) {\n return Ir(se, function(te) {\n return X[te];\n });\n }\n function a0(X, se) {\n return X.has(se);\n }\n function au(X, se) {\n for (var te = -1, ye = X.length; ++te < ye && In(se, X[te], 0) > -1; )\n ;\n return te;\n }\n function nu(X, se) {\n for (var te = X.length; te-- && In(se, X[te], 0) > -1; )\n ;\n return te;\n }\n function hx(X, se) {\n for (var te = X.length, ye = 0; te--; )\n X[te] === se && ++ye;\n return ye;\n }\n var xx = Us(Jh), dx = Us(qh);\n function vx(X) {\n return \"\\\\\" + jh[X];\n }\n function px(X, se) {\n return X == null ? r : X[se];\n }\n function On(X) {\n return zh.test(X);\n }\n function gx(X) {\n return Kh.test(X);\n }\n function _x(X) {\n for (var se, te = []; !(se = X.next()).done; )\n te.push(se.value);\n return te;\n }\n function Vs(X) {\n var se = -1, te = Array(X.size);\n return X.forEach(function(ye, ze) {\n te[++se] = [ze, ye];\n }), te;\n }\n function iu(X, se) {\n return function(te) {\n return X(se(te));\n };\n }\n function Wa(X, se) {\n for (var te = -1, ye = X.length, ze = 0, vr = []; ++te < ye; ) {\n var Xr = X[te];\n (Xr === se || Xr === x) && (X[te] = x, vr[ze++] = te);\n }\n return vr;\n }\n function ai(X) {\n var se = -1, te = Array(X.size);\n return X.forEach(function(ye) {\n te[++se] = ye;\n }), te;\n }\n function mx(X) {\n var se = -1, te = Array(X.size);\n return X.forEach(function(ye) {\n te[++se] = [ye, ye];\n }), te;\n }\n function Ex(X, se, te) {\n for (var ye = te - 1, ze = X.length; ++ye < ze; )\n if (X[ye] === se)\n return ye;\n return -1;\n }\n function Tx(X, se, te) {\n for (var ye = te + 1; ye--; )\n if (X[ye] === se)\n return ye;\n return ye;\n }\n function Dn(X) {\n return On(X) ? kx(X) : sx(X);\n }\n function na(X) {\n return On(X) ? Ax(X) : fx(X);\n }\n function su(X) {\n for (var se = X.length; se-- && Ss.test(X.charAt(se)); )\n ;\n return se;\n }\n var wx = Us(Qh);\n function kx(X) {\n for (var se = Rs.lastIndex = 0; Rs.test(X); )\n ++se;\n return se;\n }\n function Ax(X) {\n return X.match(Rs) || [];\n }\n function Fx(X) {\n return X.match($h) || [];\n }\n var Sx = function X(se) {\n se = se == null ? jr : Rn.defaults(jr.Object(), se, Rn.pick(jr, Yh));\n var te = se.Array, ye = se.Date, ze = se.Error, vr = se.Function, Xr = se.Math, wr = se.Object, Xs = se.RegExp, Cx = se.String, Vt = se.TypeError, ni = te.prototype, yx = vr.prototype, Nn = wr.prototype, ii = se[\"__core-js_shared__\"], si = yx.toString, mr = Nn.hasOwnProperty, Ix = 0, fu = function() {\n var a = /[^.]+$/.exec(ii && ii.keys && ii.keys.IE_PROTO || \"\");\n return a ? \"Symbol(src)_1.\" + a : \"\";\n }(), fi = Nn.toString, Ox = si.call(wr), Dx = jr._, Rx = Xs(\n \"^\" + si.call(mr).replace(jn, \"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, \"$1.*?\") + \"$\"\n ), ci = Xc ? se.Buffer : r, Ha = se.Symbol, ui = se.Uint8Array, cu = ci ? ci.allocUnsafe : r, oi = iu(wr.getPrototypeOf, wr), uu = wr.create, ou = Nn.propertyIsEnumerable, li = ni.splice, lu = Ha ? Ha.isConcatSpreadable : r, n0 = Ha ? Ha.iterator : r, nn = Ha ? Ha.toStringTag : r, hi = function() {\n try {\n var a = on(wr, \"defineProperty\");\n return a({}, \"\", {}), a;\n } catch {\n }\n }(), Nx = se.clearTimeout !== jr.clearTimeout && se.clearTimeout, Lx = ye && ye.now !== jr.Date.now && ye.now, Px = se.setTimeout !== jr.setTimeout && se.setTimeout, xi = Xr.ceil, di = Xr.floor, $s = wr.getOwnPropertySymbols, bx = ci ? ci.isBuffer : r, hu = se.isFinite, Bx = ni.join, Mx = iu(wr.keys, wr), $r = Xr.max, it = Xr.min, Ux = ye.now, Wx = se.parseInt, xu = Xr.random, Hx = ni.reverse, zs = on(se, \"DataView\"), i0 = on(se, \"Map\"), Ks = on(se, \"Promise\"), Ln = on(se, \"Set\"), s0 = on(se, \"WeakMap\"), f0 = on(wr, \"create\"), vi = s0 && new s0(), Pn = {}, Gx = ln(zs), Vx = ln(i0), Xx = ln(Ks), $x = ln(Ln), zx = ln(s0), pi = Ha ? Ha.prototype : r, c0 = pi ? pi.valueOf : r, du = pi ? pi.toString : r;\n function F(a) {\n if (Dr(a) && !Ye(a) && !(a instanceof nr)) {\n if (a instanceof Xt)\n return a;\n if (mr.call(a, \"__wrapped__\"))\n return po(a);\n }\n return new Xt(a);\n }\n var bn = /* @__PURE__ */ function() {\n function a() {\n }\n return function(s) {\n if (!Or(s))\n return {};\n if (uu)\n return uu(s);\n a.prototype = s;\n var o = new a();\n return a.prototype = r, o;\n };\n }();\n function gi() {\n }\n function Xt(a, s) {\n this.__wrapped__ = a, this.__actions__ = [], this.__chain__ = !!s, this.__index__ = 0, this.__values__ = r;\n }\n F.templateSettings = {\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n escape: Ts,\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n evaluate: ws,\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n interpolate: j0,\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n variable: \"\",\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n imports: {\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n _: F\n }\n }, F.prototype = gi.prototype, F.prototype.constructor = F, Xt.prototype = bn(gi.prototype), Xt.prototype.constructor = Xt;\n function nr(a) {\n this.__wrapped__ = a, this.__actions__ = [], this.__dir__ = 1, this.__filtered__ = !1, this.__iteratees__ = [], this.__takeCount__ = Pe, this.__views__ = [];\n }\n function Kx() {\n var a = new nr(this.__wrapped__);\n return a.__actions__ = Tt(this.__actions__), a.__dir__ = this.__dir__, a.__filtered__ = this.__filtered__, a.__iteratees__ = Tt(this.__iteratees__), a.__takeCount__ = this.__takeCount__, a.__views__ = Tt(this.__views__), a;\n }\n function Yx() {\n if (this.__filtered__) {\n var a = new nr(this);\n a.__dir__ = -1, a.__filtered__ = !0;\n } else\n a = this.clone(), a.__dir__ *= -1;\n return a;\n }\n function Zx() {\n var a = this.__wrapped__.value(), s = this.__dir__, o = Ye(a), d = s < 0, E = o ? a.length : 0, S = fv(0, E, this.__views__), b = S.start, W = S.end, Y = W - b, ce = d ? W : b - 1, ue = this.__iteratees__, oe = ue.length, ke = 0, Ne = it(Y, this.__takeCount__);\n if (!o || !d && E == Y && Ne == Y)\n return Mu(a, this.__actions__);\n var We = [];\n e:\n for (; Y-- && ke < Ne; ) {\n ce += s;\n for (var Je = -1, He = a[ce]; ++Je < oe; ) {\n var rr = ue[Je], cr = rr.iteratee, Nt = rr.type, gt = cr(He);\n if (Nt == he)\n He = gt;\n else if (!gt) {\n if (Nt == Ae)\n continue e;\n break e;\n }\n }\n We[ke++] = He;\n }\n return We;\n }\n nr.prototype = bn(gi.prototype), nr.prototype.constructor = nr;\n function sn(a) {\n var s = -1, o = a == null ? 0 : a.length;\n for (this.clear(); ++s < o; ) {\n var d = a[s];\n this.set(d[0], d[1]);\n }\n }\n function Jx() {\n this.__data__ = f0 ? f0(null) : {}, this.size = 0;\n }\n function qx(a) {\n var s = this.has(a) && delete this.__data__[a];\n return this.size -= s ? 1 : 0, s;\n }\n function Qx(a) {\n var s = this.__data__;\n if (f0) {\n var o = s[a];\n return o === l ? r : o;\n }\n return mr.call(s, a) ? s[a] : r;\n }\n function jx(a) {\n var s = this.__data__;\n return f0 ? s[a] !== r : mr.call(s, a);\n }\n function ed(a, s) {\n var o = this.__data__;\n return this.size += this.has(a) ? 0 : 1, o[a] = f0 && s === r ? l : s, this;\n }\n sn.prototype.clear = Jx, sn.prototype.delete = qx, sn.prototype.get = Qx, sn.prototype.has = jx, sn.prototype.set = ed;\n function ma(a) {\n var s = -1, o = a == null ? 0 : a.length;\n for (this.clear(); ++s < o; ) {\n var d = a[s];\n this.set(d[0], d[1]);\n }\n }\n function rd() {\n this.__data__ = [], this.size = 0;\n }\n function td(a) {\n var s = this.__data__, o = _i(s, a);\n if (o < 0)\n return !1;\n var d = s.length - 1;\n return o == d ? s.pop() : li.call(s, o, 1), --this.size, !0;\n }\n function ad(a) {\n var s = this.__data__, o = _i(s, a);\n return o < 0 ? r : s[o][1];\n }\n function nd(a) {\n return _i(this.__data__, a) > -1;\n }\n function id(a, s) {\n var o = this.__data__, d = _i(o, a);\n return d < 0 ? (++this.size, o.push([a, s])) : o[d][1] = s, this;\n }\n ma.prototype.clear = rd, ma.prototype.delete = td, ma.prototype.get = ad, ma.prototype.has = nd, ma.prototype.set = id;\n function Ea(a) {\n var s = -1, o = a == null ? 0 : a.length;\n for (this.clear(); ++s < o; ) {\n var d = a[s];\n this.set(d[0], d[1]);\n }\n }\n function sd() {\n this.size = 0, this.__data__ = {\n hash: new sn(),\n map: new (i0 || ma)(),\n string: new sn()\n };\n }\n function fd(a) {\n var s = Oi(this, a).delete(a);\n return this.size -= s ? 1 : 0, s;\n }\n function cd(a) {\n return Oi(this, a).get(a);\n }\n function ud(a) {\n return Oi(this, a).has(a);\n }\n function od(a, s) {\n var o = Oi(this, a), d = o.size;\n return o.set(a, s), this.size += o.size == d ? 0 : 1, this;\n }\n Ea.prototype.clear = sd, Ea.prototype.delete = fd, Ea.prototype.get = cd, Ea.prototype.has = ud, Ea.prototype.set = od;\n function fn(a) {\n var s = -1, o = a == null ? 0 : a.length;\n for (this.__data__ = new Ea(); ++s < o; )\n this.add(a[s]);\n }\n function ld(a) {\n return this.__data__.set(a, l), this;\n }\n function hd(a) {\n return this.__data__.has(a);\n }\n fn.prototype.add = fn.prototype.push = ld, fn.prototype.has = hd;\n function ia(a) {\n var s = this.__data__ = new ma(a);\n this.size = s.size;\n }\n function xd() {\n this.__data__ = new ma(), this.size = 0;\n }\n function dd(a) {\n var s = this.__data__, o = s.delete(a);\n return this.size = s.size, o;\n }\n function vd(a) {\n return this.__data__.get(a);\n }\n function pd(a) {\n return this.__data__.has(a);\n }\n function gd(a, s) {\n var o = this.__data__;\n if (o instanceof ma) {\n var d = o.__data__;\n if (!i0 || d.length < i - 1)\n return d.push([a, s]), this.size = ++o.size, this;\n o = this.__data__ = new Ea(d);\n }\n return o.set(a, s), this.size = o.size, this;\n }\n ia.prototype.clear = xd, ia.prototype.delete = dd, ia.prototype.get = vd, ia.prototype.has = pd, ia.prototype.set = gd;\n function vu(a, s) {\n var o = Ye(a), d = !o && hn(a), E = !o && !d && za(a), S = !o && !d && !E && Wn(a), b = o || d || E || S, W = b ? Hs(a.length, Cx) : [], Y = W.length;\n for (var ce in a)\n (s || mr.call(a, ce)) && !(b && // Safari 9 has enumerable `arguments.length` in strict mode.\n (ce == \"length\" || // Node.js 0.10 has enumerable non-index properties on buffers.\n E && (ce == \"offset\" || ce == \"parent\") || // PhantomJS 2 has enumerable non-index properties on typed arrays.\n S && (ce == \"buffer\" || ce == \"byteLength\" || ce == \"byteOffset\") || // Skip index properties.\n Aa(ce, Y))) && W.push(ce);\n return W;\n }\n function pu(a) {\n var s = a.length;\n return s ? a[nf(0, s - 1)] : r;\n }\n function _d(a, s) {\n return Di(Tt(a), cn(s, 0, a.length));\n }\n function md(a) {\n return Di(Tt(a));\n }\n function Ys(a, s, o) {\n (o !== r && !sa(a[s], o) || o === r && !(s in a)) && Ta(a, s, o);\n }\n function u0(a, s, o) {\n var d = a[s];\n (!(mr.call(a, s) && sa(d, o)) || o === r && !(s in a)) && Ta(a, s, o);\n }\n function _i(a, s) {\n for (var o = a.length; o--; )\n if (sa(a[o][0], s))\n return o;\n return -1;\n }\n function Ed(a, s, o, d) {\n return Ga(a, function(E, S, b) {\n s(d, E, o(E), b);\n }), d;\n }\n function gu(a, s) {\n return a && da(s, Zr(s), a);\n }\n function Td(a, s) {\n return a && da(s, kt(s), a);\n }\n function Ta(a, s, o) {\n s == \"__proto__\" && hi ? hi(a, s, {\n configurable: !0,\n enumerable: !0,\n value: o,\n writable: !0\n }) : a[s] = o;\n }\n function Zs(a, s) {\n for (var o = -1, d = s.length, E = te(d), S = a == null; ++o < d; )\n E[o] = S ? r : Of(a, s[o]);\n return E;\n }\n function cn(a, s, o) {\n return a === a && (o !== r && (a = a <= o ? a : o), s !== r && (a = a >= s ? a : s)), a;\n }\n function $t(a, s, o, d, E, S) {\n var b, W = s & m, Y = s & _, ce = s & v;\n if (o && (b = E ? o(a, d, E, S) : o(a)), b !== r)\n return b;\n if (!Or(a))\n return a;\n var ue = Ye(a);\n if (ue) {\n if (b = uv(a), !W)\n return Tt(a, b);\n } else {\n var oe = st(a), ke = oe == fe || oe == O;\n if (za(a))\n return Hu(a, W);\n if (oe == Oe || oe == Me || ke && !E) {\n if (b = Y || ke ? {} : so(a), !W)\n return Y ? Qd(a, Td(b, a)) : qd(a, gu(b, a));\n } else {\n if (!Ar[oe])\n return E ? a : {};\n b = ov(a, oe, W);\n }\n }\n S || (S = new ia());\n var Ne = S.get(a);\n if (Ne)\n return Ne;\n S.set(a, b), bo(a) ? a.forEach(function(He) {\n b.add($t(He, s, o, He, a, S));\n }) : Lo(a) && a.forEach(function(He, rr) {\n b.set(rr, $t(He, s, o, rr, a, S));\n });\n var We = ce ? Y ? pf : vf : Y ? kt : Zr, Je = ue ? r : We(a);\n return Gt(Je || a, function(He, rr) {\n Je && (rr = He, He = a[rr]), u0(b, rr, $t(He, s, o, rr, a, S));\n }), b;\n }\n function wd(a) {\n var s = Zr(a);\n return function(o) {\n return _u(o, a, s);\n };\n }\n function _u(a, s, o) {\n var d = o.length;\n if (a == null)\n return !d;\n for (a = wr(a); d--; ) {\n var E = o[d], S = s[E], b = a[E];\n if (b === r && !(E in a) || !S(b))\n return !1;\n }\n return !0;\n }\n function mu(a, s, o) {\n if (typeof a != \"function\")\n throw new Vt(c);\n return p0(function() {\n a.apply(r, o);\n }, s);\n }\n function o0(a, s, o, d) {\n var E = -1, S = ri, b = !0, W = a.length, Y = [], ce = s.length;\n if (!W)\n return Y;\n o && (s = Ir(s, Ot(o))), d ? (S = Ps, b = !1) : s.length >= i && (S = a0, b = !1, s = new fn(s));\n e:\n for (; ++E < W; ) {\n var ue = a[E], oe = o == null ? ue : o(ue);\n if (ue = d || ue !== 0 ? ue : 0, b && oe === oe) {\n for (var ke = ce; ke--; )\n if (s[ke] === oe)\n continue e;\n Y.push(ue);\n } else S(s, oe, d) || Y.push(ue);\n }\n return Y;\n }\n var Ga = zu(xa), Eu = zu(qs, !0);\n function kd(a, s) {\n var o = !0;\n return Ga(a, function(d, E, S) {\n return o = !!s(d, E, S), o;\n }), o;\n }\n function mi(a, s, o) {\n for (var d = -1, E = a.length; ++d < E; ) {\n var S = a[d], b = s(S);\n if (b != null && (W === r ? b === b && !Rt(b) : o(b, W)))\n var W = b, Y = S;\n }\n return Y;\n }\n function Ad(a, s, o, d) {\n var E = a.length;\n for (o = Ze(o), o < 0 && (o = -o > E ? 0 : E + o), d = d === r || d > E ? E : Ze(d), d < 0 && (d += E), d = o > d ? 0 : Mo(d); o < d; )\n a[o++] = s;\n return a;\n }\n function Tu(a, s) {\n var o = [];\n return Ga(a, function(d, E, S) {\n s(d, E, S) && o.push(d);\n }), o;\n }\n function et(a, s, o, d, E) {\n var S = -1, b = a.length;\n for (o || (o = hv), E || (E = []); ++S < b; ) {\n var W = a[S];\n s > 0 && o(W) ? s > 1 ? et(W, s - 1, o, d, E) : Ua(E, W) : d || (E[E.length] = W);\n }\n return E;\n }\n var Js = Ku(), wu = Ku(!0);\n function xa(a, s) {\n return a && Js(a, s, Zr);\n }\n function qs(a, s) {\n return a && wu(a, s, Zr);\n }\n function Ei(a, s) {\n return Ma(s, function(o) {\n return Fa(a[o]);\n });\n }\n function un(a, s) {\n s = Xa(s, a);\n for (var o = 0, d = s.length; a != null && o < d; )\n a = a[va(s[o++])];\n return o && o == d ? a : r;\n }\n function ku(a, s, o) {\n var d = s(a);\n return Ye(a) ? d : Ua(d, o(a));\n }\n function vt(a) {\n return a == null ? a === r ? er : ve : nn && nn in wr(a) ? sv(a) : mv(a);\n }\n function Qs(a, s) {\n return a > s;\n }\n function Fd(a, s) {\n return a != null && mr.call(a, s);\n }\n function Sd(a, s) {\n return a != null && s in wr(a);\n }\n function Cd(a, s, o) {\n return a >= it(s, o) && a < $r(s, o);\n }\n function js(a, s, o) {\n for (var d = o ? Ps : ri, E = a[0].length, S = a.length, b = S, W = te(S), Y = 1 / 0, ce = []; b--; ) {\n var ue = a[b];\n b && s && (ue = Ir(ue, Ot(s))), Y = it(ue.length, Y), W[b] = !o && (s || E >= 120 && ue.length >= 120) ? new fn(b && ue) : r;\n }\n ue = a[0];\n var oe = -1, ke = W[0];\n e:\n for (; ++oe < E && ce.length < Y; ) {\n var Ne = ue[oe], We = s ? s(Ne) : Ne;\n if (Ne = o || Ne !== 0 ? Ne : 0, !(ke ? a0(ke, We) : d(ce, We, o))) {\n for (b = S; --b; ) {\n var Je = W[b];\n if (!(Je ? a0(Je, We) : d(a[b], We, o)))\n continue e;\n }\n ke && ke.push(We), ce.push(Ne);\n }\n }\n return ce;\n }\n function yd(a, s, o, d) {\n return xa(a, function(E, S, b) {\n s(d, o(E), S, b);\n }), d;\n }\n function l0(a, s, o) {\n s = Xa(s, a), a = oo(a, s);\n var d = a == null ? a : a[va(Kt(s))];\n return d == null ? r : It(d, a, o);\n }\n function Au(a) {\n return Dr(a) && vt(a) == Me;\n }\n function Id(a) {\n return Dr(a) && vt(a) == Nr;\n }\n function Od(a) {\n return Dr(a) && vt(a) == K;\n }\n function h0(a, s, o, d, E) {\n return a === s ? !0 : a == null || s == null || !Dr(a) && !Dr(s) ? a !== a && s !== s : Dd(a, s, o, d, h0, E);\n }\n function Dd(a, s, o, d, E, S) {\n var b = Ye(a), W = Ye(s), Y = b ? Be : st(a), ce = W ? Be : st(s);\n Y = Y == Me ? Oe : Y, ce = ce == Me ? Oe : ce;\n var ue = Y == Oe, oe = ce == Oe, ke = Y == ce;\n if (ke && za(a)) {\n if (!za(s))\n return !1;\n b = !0, ue = !1;\n }\n if (ke && !ue)\n return S || (S = new ia()), b || Wn(a) ? ao(a, s, o, d, E, S) : nv(a, s, Y, o, d, E, S);\n if (!(o & T)) {\n var Ne = ue && mr.call(a, \"__wrapped__\"), We = oe && mr.call(s, \"__wrapped__\");\n if (Ne || We) {\n var Je = Ne ? a.value() : a, He = We ? s.value() : s;\n return S || (S = new ia()), E(Je, He, o, d, S);\n }\n }\n return ke ? (S || (S = new ia()), iv(a, s, o, d, E, S)) : !1;\n }\n function Rd(a) {\n return Dr(a) && st(a) == pe;\n }\n function ef(a, s, o, d) {\n var E = o.length, S = E, b = !d;\n if (a == null)\n return !S;\n for (a = wr(a); E--; ) {\n var W = o[E];\n if (b && W[2] ? W[1] !== a[W[0]] : !(W[0] in a))\n return !1;\n }\n for (; ++E < S; ) {\n W = o[E];\n var Y = W[0], ce = a[Y], ue = W[1];\n if (b && W[2]) {\n if (ce === r && !(Y in a))\n return !1;\n } else {\n var oe = new ia();\n if (d)\n var ke = d(ce, ue, Y, a, s, oe);\n if (!(ke === r ? h0(ue, ce, T | A, d, oe) : ke))\n return !1;\n }\n }\n return !0;\n }\n function Fu(a) {\n if (!Or(a) || dv(a))\n return !1;\n var s = Fa(a) ? Rx : j;\n return s.test(ln(a));\n }\n function Nd(a) {\n return Dr(a) && vt(a) == ar;\n }\n function Ld(a) {\n return Dr(a) && st(a) == qe;\n }\n function Pd(a) {\n return Dr(a) && Bi(a.length) && !!Sr[vt(a)];\n }\n function Su(a) {\n return typeof a == \"function\" ? a : a == null ? At : typeof a == \"object\" ? Ye(a) ? Iu(a[0], a[1]) : yu(a) : Zo(a);\n }\n function rf(a) {\n if (!v0(a))\n return Mx(a);\n var s = [];\n for (var o in wr(a))\n mr.call(a, o) && o != \"constructor\" && s.push(o);\n return s;\n }\n function bd(a) {\n if (!Or(a))\n return _v(a);\n var s = v0(a), o = [];\n for (var d in a)\n d == \"constructor\" && (s || !mr.call(a, d)) || o.push(d);\n return o;\n }\n function tf(a, s) {\n return a < s;\n }\n function Cu(a, s) {\n var o = -1, d = wt(a) ? te(a.length) : [];\n return Ga(a, function(E, S, b) {\n d[++o] = s(E, S, b);\n }), d;\n }\n function yu(a) {\n var s = _f(a);\n return s.length == 1 && s[0][2] ? co(s[0][0], s[0][1]) : function(o) {\n return o === a || ef(o, a, s);\n };\n }\n function Iu(a, s) {\n return Ef(a) && fo(s) ? co(va(a), s) : function(o) {\n var d = Of(o, a);\n return d === r && d === s ? Df(o, a) : h0(s, d, T | A);\n };\n }\n function Ti(a, s, o, d, E) {\n a !== s && Js(s, function(S, b) {\n if (E || (E = new ia()), Or(S))\n Bd(a, s, b, o, Ti, d, E);\n else {\n var W = d ? d(wf(a, b), S, b + \"\", a, s, E) : r;\n W === r && (W = S), Ys(a, b, W);\n }\n }, kt);\n }\n function Bd(a, s, o, d, E, S, b) {\n var W = wf(a, o), Y = wf(s, o), ce = b.get(Y);\n if (ce) {\n Ys(a, o, ce);\n return;\n }\n var ue = S ? S(W, Y, o + \"\", a, s, b) : r, oe = ue === r;\n if (oe) {\n var ke = Ye(Y), Ne = !ke && za(Y), We = !ke && !Ne && Wn(Y);\n ue = Y, ke || Ne || We ? Ye(W) ? ue = W : Lr(W) ? ue = Tt(W) : Ne ? (oe = !1, ue = Hu(Y, !0)) : We ? (oe = !1, ue = Gu(Y, !0)) : ue = [] : g0(Y) || hn(Y) ? (ue = W, hn(W) ? ue = Uo(W) : (!Or(W) || Fa(W)) && (ue = so(Y))) : oe = !1;\n }\n oe && (b.set(Y, ue), E(ue, Y, d, S, b), b.delete(Y)), Ys(a, o, ue);\n }\n function Ou(a, s) {\n var o = a.length;\n if (o)\n return s += s < 0 ? o : 0, Aa(s, o) ? a[s] : r;\n }\n function Du(a, s, o) {\n s.length ? s = Ir(s, function(S) {\n return Ye(S) ? function(b) {\n return un(b, S.length === 1 ? S[0] : S);\n } : S;\n }) : s = [At];\n var d = -1;\n s = Ir(s, Ot(Ue()));\n var E = Cu(a, function(S, b, W) {\n var Y = Ir(s, function(ce) {\n return ce(S);\n });\n return { criteria: Y, index: ++d, value: S };\n });\n return ox(E, function(S, b) {\n return Jd(S, b, o);\n });\n }\n function Md(a, s) {\n return Ru(a, s, function(o, d) {\n return Df(a, d);\n });\n }\n function Ru(a, s, o) {\n for (var d = -1, E = s.length, S = {}; ++d < E; ) {\n var b = s[d], W = un(a, b);\n o(W, b) && x0(S, Xa(b, a), W);\n }\n return S;\n }\n function Ud(a) {\n return function(s) {\n return un(s, a);\n };\n }\n function af(a, s, o, d) {\n var E = d ? ux : In, S = -1, b = s.length, W = a;\n for (a === s && (s = Tt(s)), o && (W = Ir(a, Ot(o))); ++S < b; )\n for (var Y = 0, ce = s[S], ue = o ? o(ce) : ce; (Y = E(W, ue, Y, d)) > -1; )\n W !== a && li.call(W, Y, 1), li.call(a, Y, 1);\n return a;\n }\n function Nu(a, s) {\n for (var o = a ? s.length : 0, d = o - 1; o--; ) {\n var E = s[o];\n if (o == d || E !== S) {\n var S = E;\n Aa(E) ? li.call(a, E, 1) : cf(a, E);\n }\n }\n return a;\n }\n function nf(a, s) {\n return a + di(xu() * (s - a + 1));\n }\n function Wd(a, s, o, d) {\n for (var E = -1, S = $r(xi((s - a) / (o || 1)), 0), b = te(S); S--; )\n b[d ? S : ++E] = a, a += o;\n return b;\n }\n function sf(a, s) {\n var o = \"\";\n if (!a || s < 1 || s > Ee)\n return o;\n do\n s % 2 && (o += a), s = di(s / 2), s && (a += a);\n while (s);\n return o;\n }\n function Qe(a, s) {\n return kf(uo(a, s, At), a + \"\");\n }\n function Hd(a) {\n return pu(Hn(a));\n }\n function Gd(a, s) {\n var o = Hn(a);\n return Di(o, cn(s, 0, o.length));\n }\n function x0(a, s, o, d) {\n if (!Or(a))\n return a;\n s = Xa(s, a);\n for (var E = -1, S = s.length, b = S - 1, W = a; W != null && ++E < S; ) {\n var Y = va(s[E]), ce = o;\n if (Y === \"__proto__\" || Y === \"constructor\" || Y === \"prototype\")\n return a;\n if (E != b) {\n var ue = W[Y];\n ce = d ? d(ue, Y, W) : r, ce === r && (ce = Or(ue) ? ue : Aa(s[E + 1]) ? [] : {});\n }\n u0(W, Y, ce), W = W[Y];\n }\n return a;\n }\n var Lu = vi ? function(a, s) {\n return vi.set(a, s), a;\n } : At, Vd = hi ? function(a, s) {\n return hi(a, \"toString\", {\n configurable: !0,\n enumerable: !1,\n value: Nf(s),\n writable: !0\n });\n } : At;\n function Xd(a) {\n return Di(Hn(a));\n }\n function zt(a, s, o) {\n var d = -1, E = a.length;\n s < 0 && (s = -s > E ? 0 : E + s), o = o > E ? E : o, o < 0 && (o += E), E = s > o ? 0 : o - s >>> 0, s >>>= 0;\n for (var S = te(E); ++d < E; )\n S[d] = a[d + s];\n return S;\n }\n function $d(a, s) {\n var o;\n return Ga(a, function(d, E, S) {\n return o = s(d, E, S), !o;\n }), !!o;\n }\n function wi(a, s, o) {\n var d = 0, E = a == null ? d : a.length;\n if (typeof s == \"number\" && s === s && E <= Le) {\n for (; d < E; ) {\n var S = d + E >>> 1, b = a[S];\n b !== null && !Rt(b) && (o ? b <= s : b < s) ? d = S + 1 : E = S;\n }\n return E;\n }\n return ff(a, s, At, o);\n }\n function ff(a, s, o, d) {\n var E = 0, S = a == null ? 0 : a.length;\n if (S === 0)\n return 0;\n s = o(s);\n for (var b = s !== s, W = s === null, Y = Rt(s), ce = s === r; E < S; ) {\n var ue = di((E + S) / 2), oe = o(a[ue]), ke = oe !== r, Ne = oe === null, We = oe === oe, Je = Rt(oe);\n if (b)\n var He = d || We;\n else ce ? He = We && (d || ke) : W ? He = We && ke && (d || !Ne) : Y ? He = We && ke && !Ne && (d || !Je) : Ne || Je ? He = !1 : He = d ? oe <= s : oe < s;\n He ? E = ue + 1 : S = ue;\n }\n return it(S, Ge);\n }\n function Pu(a, s) {\n for (var o = -1, d = a.length, E = 0, S = []; ++o < d; ) {\n var b = a[o], W = s ? s(b) : b;\n if (!o || !sa(W, Y)) {\n var Y = W;\n S[E++] = b === 0 ? 0 : b;\n }\n }\n return S;\n }\n function bu(a) {\n return typeof a == \"number\" ? a : Rt(a) ? ae : +a;\n }\n function Dt(a) {\n if (typeof a == \"string\")\n return a;\n if (Ye(a))\n return Ir(a, Dt) + \"\";\n if (Rt(a))\n return du ? du.call(a) : \"\";\n var s = a + \"\";\n return s == \"0\" && 1 / a == -le ? \"-0\" : s;\n }\n function Va(a, s, o) {\n var d = -1, E = ri, S = a.length, b = !0, W = [], Y = W;\n if (o)\n b = !1, E = Ps;\n else if (S >= i) {\n var ce = s ? null : tv(a);\n if (ce)\n return ai(ce);\n b = !1, E = a0, Y = new fn();\n } else\n Y = s ? [] : W;\n e:\n for (; ++d < S; ) {\n var ue = a[d], oe = s ? s(ue) : ue;\n if (ue = o || ue !== 0 ? ue : 0, b && oe === oe) {\n for (var ke = Y.length; ke--; )\n if (Y[ke] === oe)\n continue e;\n s && Y.push(oe), W.push(ue);\n } else E(Y, oe, o) || (Y !== W && Y.push(oe), W.push(ue));\n }\n return W;\n }\n function cf(a, s) {\n return s = Xa(s, a), a = oo(a, s), a == null || delete a[va(Kt(s))];\n }\n function Bu(a, s, o, d) {\n return x0(a, s, o(un(a, s)), d);\n }\n function ki(a, s, o, d) {\n for (var E = a.length, S = d ? E : -1; (d ? S-- : ++S < E) && s(a[S], S, a); )\n ;\n return o ? zt(a, d ? 0 : S, d ? S + 1 : E) : zt(a, d ? S + 1 : 0, d ? E : S);\n }\n function Mu(a, s) {\n var o = a;\n return o instanceof nr && (o = o.value()), bs(s, function(d, E) {\n return E.func.apply(E.thisArg, Ua([d], E.args));\n }, o);\n }\n function uf(a, s, o) {\n var d = a.length;\n if (d < 2)\n return d ? Va(a[0]) : [];\n for (var E = -1, S = te(d); ++E < d; )\n for (var b = a[E], W = -1; ++W < d; )\n W != E && (S[E] = o0(S[E] || b, a[W], s, o));\n return Va(et(S, 1), s, o);\n }\n function Uu(a, s, o) {\n for (var d = -1, E = a.length, S = s.length, b = {}; ++d < E; ) {\n var W = d < S ? s[d] : r;\n o(b, a[d], W);\n }\n return b;\n }\n function of(a) {\n return Lr(a) ? a : [];\n }\n function lf(a) {\n return typeof a == \"function\" ? a : At;\n }\n function Xa(a, s) {\n return Ye(a) ? a : Ef(a, s) ? [a] : vo(pr(a));\n }\n var zd = Qe;\n function $a(a, s, o) {\n var d = a.length;\n return o = o === r ? d : o, !s && o >= d ? a : zt(a, s, o);\n }\n var Wu = Nx || function(a) {\n return jr.clearTimeout(a);\n };\n function Hu(a, s) {\n if (s)\n return a.slice();\n var o = a.length, d = cu ? cu(o) : new a.constructor(o);\n return a.copy(d), d;\n }\n function hf(a) {\n var s = new a.constructor(a.byteLength);\n return new ui(s).set(new ui(a)), s;\n }\n function Kd(a, s) {\n var o = s ? hf(a.buffer) : a.buffer;\n return new a.constructor(o, a.byteOffset, a.byteLength);\n }\n function Yd(a) {\n var s = new a.constructor(a.source, Q.exec(a));\n return s.lastIndex = a.lastIndex, s;\n }\n function Zd(a) {\n return c0 ? wr(c0.call(a)) : {};\n }\n function Gu(a, s) {\n var o = s ? hf(a.buffer) : a.buffer;\n return new a.constructor(o, a.byteOffset, a.length);\n }\n function Vu(a, s) {\n if (a !== s) {\n var o = a !== r, d = a === null, E = a === a, S = Rt(a), b = s !== r, W = s === null, Y = s === s, ce = Rt(s);\n if (!W && !ce && !S && a > s || S && b && Y && !W && !ce || d && b && Y || !o && Y || !E)\n return 1;\n if (!d && !S && !ce && a < s || ce && o && E && !d && !S || W && o && E || !b && E || !Y)\n return -1;\n }\n return 0;\n }\n function Jd(a, s, o) {\n for (var d = -1, E = a.criteria, S = s.criteria, b = E.length, W = o.length; ++d < b; ) {\n var Y = Vu(E[d], S[d]);\n if (Y) {\n if (d >= W)\n return Y;\n var ce = o[d];\n return Y * (ce == \"desc\" ? -1 : 1);\n }\n }\n return a.index - s.index;\n }\n function Xu(a, s, o, d) {\n for (var E = -1, S = a.length, b = o.length, W = -1, Y = s.length, ce = $r(S - b, 0), ue = te(Y + ce), oe = !d; ++W < Y; )\n ue[W] = s[W];\n for (; ++E < b; )\n (oe || E < S) && (ue[o[E]] = a[E]);\n for (; ce--; )\n ue[W++] = a[E++];\n return ue;\n }\n function $u(a, s, o, d) {\n for (var E = -1, S = a.length, b = -1, W = o.length, Y = -1, ce = s.length, ue = $r(S - W, 0), oe = te(ue + ce), ke = !d; ++E < ue; )\n oe[E] = a[E];\n for (var Ne = E; ++Y < ce; )\n oe[Ne + Y] = s[Y];\n for (; ++b < W; )\n (ke || E < S) && (oe[Ne + o[b]] = a[E++]);\n return oe;\n }\n function Tt(a, s) {\n var o = -1, d = a.length;\n for (s || (s = te(d)); ++o < d; )\n s[o] = a[o];\n return s;\n }\n function da(a, s, o, d) {\n var E = !o;\n o || (o = {});\n for (var S = -1, b = s.length; ++S < b; ) {\n var W = s[S], Y = d ? d(o[W], a[W], W, o, a) : r;\n Y === r && (Y = a[W]), E ? Ta(o, W, Y) : u0(o, W, Y);\n }\n return o;\n }\n function qd(a, s) {\n return da(a, mf(a), s);\n }\n function Qd(a, s) {\n return da(a, no(a), s);\n }\n function Ai(a, s) {\n return function(o, d) {\n var E = Ye(o) ? ax : Ed, S = s ? s() : {};\n return E(o, a, Ue(d, 2), S);\n };\n }\n function Bn(a) {\n return Qe(function(s, o) {\n var d = -1, E = o.length, S = E > 1 ? o[E - 1] : r, b = E > 2 ? o[2] : r;\n for (S = a.length > 3 && typeof S == \"function\" ? (E--, S) : r, b && pt(o[0], o[1], b) && (S = E < 3 ? r : S, E = 1), s = wr(s); ++d < E; ) {\n var W = o[d];\n W && a(s, W, d, S);\n }\n return s;\n });\n }\n function zu(a, s) {\n return function(o, d) {\n if (o == null)\n return o;\n if (!wt(o))\n return a(o, d);\n for (var E = o.length, S = s ? E : -1, b = wr(o); (s ? S-- : ++S < E) && d(b[S], S, b) !== !1; )\n ;\n return o;\n };\n }\n function Ku(a) {\n return function(s, o, d) {\n for (var E = -1, S = wr(s), b = d(s), W = b.length; W--; ) {\n var Y = b[a ? W : ++E];\n if (o(S[Y], Y, S) === !1)\n break;\n }\n return s;\n };\n }\n function jd(a, s, o) {\n var d = s & g, E = d0(a);\n function S() {\n var b = this && this !== jr && this instanceof S ? E : a;\n return b.apply(d ? o : this, arguments);\n }\n return S;\n }\n function Yu(a) {\n return function(s) {\n s = pr(s);\n var o = On(s) ? na(s) : r, d = o ? o[0] : s.charAt(0), E = o ? $a(o, 1).join(\"\") : s.slice(1);\n return d[a]() + E;\n };\n }\n function Mn(a) {\n return function(s) {\n return bs(Ko(zo(s).replace(Vh, \"\")), a, \"\");\n };\n }\n function d0(a) {\n return function() {\n var s = arguments;\n switch (s.length) {\n case 0:\n return new a();\n case 1:\n return new a(s[0]);\n case 2:\n return new a(s[0], s[1]);\n case 3:\n return new a(s[0], s[1], s[2]);\n case 4:\n return new a(s[0], s[1], s[2], s[3]);\n case 5:\n return new a(s[0], s[1], s[2], s[3], s[4]);\n case 6:\n return new a(s[0], s[1], s[2], s[3], s[4], s[5]);\n case 7:\n return new a(s[0], s[1], s[2], s[3], s[4], s[5], s[6]);\n }\n var o = bn(a.prototype), d = a.apply(o, s);\n return Or(d) ? d : o;\n };\n }\n function ev(a, s, o) {\n var d = d0(a);\n function E() {\n for (var S = arguments.length, b = te(S), W = S, Y = Un(E); W--; )\n b[W] = arguments[W];\n var ce = S < 3 && b[0] !== Y && b[S - 1] !== Y ? [] : Wa(b, Y);\n if (S -= ce.length, S < o)\n return ju(\n a,\n s,\n Fi,\n E.placeholder,\n r,\n b,\n ce,\n r,\n r,\n o - S\n );\n var ue = this && this !== jr && this instanceof E ? d : a;\n return It(ue, this, b);\n }\n return E;\n }\n function Zu(a) {\n return function(s, o, d) {\n var E = wr(s);\n if (!wt(s)) {\n var S = Ue(o, 3);\n s = Zr(s), o = function(W) {\n return S(E[W], W, E);\n };\n }\n var b = a(s, o, d);\n return b > -1 ? E[S ? s[b] : b] : r;\n };\n }\n function Ju(a) {\n return ka(function(s) {\n var o = s.length, d = o, E = Xt.prototype.thru;\n for (a && s.reverse(); d--; ) {\n var S = s[d];\n if (typeof S != \"function\")\n throw new Vt(c);\n if (E && !b && Ii(S) == \"wrapper\")\n var b = new Xt([], !0);\n }\n for (d = b ? d : o; ++d < o; ) {\n S = s[d];\n var W = Ii(S), Y = W == \"wrapper\" ? gf(S) : r;\n Y && Tf(Y[0]) && Y[1] == (M | w | V | G) && !Y[4].length && Y[9] == 1 ? b = b[Ii(Y[0])].apply(b, Y[3]) : b = S.length == 1 && Tf(S) ? b[W]() : b.thru(S);\n }\n return function() {\n var ce = arguments, ue = ce[0];\n if (b && ce.length == 1 && Ye(ue))\n return b.plant(ue).value();\n for (var oe = 0, ke = o ? s[oe].apply(this, ce) : ue; ++oe < o; )\n ke = s[oe].call(this, ke);\n return ke;\n };\n });\n }\n function Fi(a, s, o, d, E, S, b, W, Y, ce) {\n var ue = s & M, oe = s & g, ke = s & p, Ne = s & (w | P), We = s & U, Je = ke ? r : d0(a);\n function He() {\n for (var rr = arguments.length, cr = te(rr), Nt = rr; Nt--; )\n cr[Nt] = arguments[Nt];\n if (Ne)\n var gt = Un(He), Lt = hx(cr, gt);\n if (d && (cr = Xu(cr, d, E, Ne)), S && (cr = $u(cr, S, b, Ne)), rr -= Lt, Ne && rr < ce) {\n var Pr = Wa(cr, gt);\n return ju(\n a,\n s,\n Fi,\n He.placeholder,\n o,\n cr,\n Pr,\n W,\n Y,\n ce - rr\n );\n }\n var fa = oe ? o : this, Ca = ke ? fa[a] : a;\n return rr = cr.length, W ? cr = Ev(cr, W) : We && rr > 1 && cr.reverse(), ue && Y < rr && (cr.length = Y), this && this !== jr && this instanceof He && (Ca = Je || d0(Ca)), Ca.apply(fa, cr);\n }\n return He;\n }\n function qu(a, s) {\n return function(o, d) {\n return yd(o, a, s(d), {});\n };\n }\n function Si(a, s) {\n return function(o, d) {\n var E;\n if (o === r && d === r)\n return s;\n if (o !== r && (E = o), d !== r) {\n if (E === r)\n return d;\n typeof o == \"string\" || typeof d == \"string\" ? (o = Dt(o), d = Dt(d)) : (o = bu(o), d = bu(d)), E = a(o, d);\n }\n return E;\n };\n }\n function xf(a) {\n return ka(function(s) {\n return s = Ir(s, Ot(Ue())), Qe(function(o) {\n var d = this;\n return a(s, function(E) {\n return It(E, d, o);\n });\n });\n });\n }\n function Ci(a, s) {\n s = s === r ? \" \" : Dt(s);\n var o = s.length;\n if (o < 2)\n return o ? sf(s, a) : s;\n var d = sf(s, xi(a / Dn(s)));\n return On(s) ? $a(na(d), 0, a).join(\"\") : d.slice(0, a);\n }\n function rv(a, s, o, d) {\n var E = s & g, S = d0(a);\n function b() {\n for (var W = -1, Y = arguments.length, ce = -1, ue = d.length, oe = te(ue + Y), ke = this && this !== jr && this instanceof b ? S : a; ++ce < ue; )\n oe[ce] = d[ce];\n for (; Y--; )\n oe[ce++] = arguments[++W];\n return It(ke, E ? o : this, oe);\n }\n return b;\n }\n function Qu(a) {\n return function(s, o, d) {\n return d && typeof d != \"number\" && pt(s, o, d) && (o = d = r), s = Sa(s), o === r ? (o = s, s = 0) : o = Sa(o), d = d === r ? s < o ? 1 : -1 : Sa(d), Wd(s, o, d, a);\n };\n }\n function yi(a) {\n return function(s, o) {\n return typeof s == \"string\" && typeof o == \"string\" || (s = Yt(s), o = Yt(o)), a(s, o);\n };\n }\n function ju(a, s, o, d, E, S, b, W, Y, ce) {\n var ue = s & w, oe = ue ? b : r, ke = ue ? r : b, Ne = ue ? S : r, We = ue ? r : S;\n s |= ue ? V : Z, s &= ~(ue ? Z : V), s & y || (s &= -4);\n var Je = [\n a,\n s,\n E,\n Ne,\n oe,\n We,\n ke,\n W,\n Y,\n ce\n ], He = o.apply(r, Je);\n return Tf(a) && lo(He, Je), He.placeholder = d, ho(He, a, s);\n }\n function df(a) {\n var s = Xr[a];\n return function(o, d) {\n if (o = Yt(o), d = d == null ? 0 : it(Ze(d), 292), d && hu(o)) {\n var E = (pr(o) + \"e\").split(\"e\"), S = s(E[0] + \"e\" + (+E[1] + d));\n return E = (pr(S) + \"e\").split(\"e\"), +(E[0] + \"e\" + (+E[1] - d));\n }\n return s(o);\n };\n }\n var tv = Ln && 1 / ai(new Ln([, -0]))[1] == le ? function(a) {\n return new Ln(a);\n } : bf;\n function eo(a) {\n return function(s) {\n var o = st(s);\n return o == pe ? Vs(s) : o == qe ? mx(s) : lx(s, a(s));\n };\n }\n function wa(a, s, o, d, E, S, b, W) {\n var Y = s & p;\n if (!Y && typeof a != \"function\")\n throw new Vt(c);\n var ce = d ? d.length : 0;\n if (ce || (s &= -97, d = E = r), b = b === r ? b : $r(Ze(b), 0), W = W === r ? W : Ze(W), ce -= E ? E.length : 0, s & Z) {\n var ue = d, oe = E;\n d = E = r;\n }\n var ke = Y ? r : gf(a), Ne = [\n a,\n s,\n o,\n d,\n E,\n ue,\n oe,\n S,\n b,\n W\n ];\n if (ke && gv(Ne, ke), a = Ne[0], s = Ne[1], o = Ne[2], d = Ne[3], E = Ne[4], W = Ne[9] = Ne[9] === r ? Y ? 0 : a.length : $r(Ne[9] - ce, 0), !W && s & (w | P) && (s &= -25), !s || s == g)\n var We = jd(a, s, o);\n else s == w || s == P ? We = ev(a, s, W) : (s == V || s == (g | V)) && !E.length ? We = rv(a, s, o, d) : We = Fi.apply(r, Ne);\n var Je = ke ? Lu : lo;\n return ho(Je(We, Ne), a, s);\n }\n function ro(a, s, o, d) {\n return a === r || sa(a, Nn[o]) && !mr.call(d, o) ? s : a;\n }\n function to(a, s, o, d, E, S) {\n return Or(a) && Or(s) && (S.set(s, a), Ti(a, s, r, to, S), S.delete(s)), a;\n }\n function av(a) {\n return g0(a) ? r : a;\n }\n function ao(a, s, o, d, E, S) {\n var b = o & T, W = a.length, Y = s.length;\n if (W != Y && !(b && Y > W))\n return !1;\n var ce = S.get(a), ue = S.get(s);\n if (ce && ue)\n return ce == s && ue == a;\n var oe = -1, ke = !0, Ne = o & A ? new fn() : r;\n for (S.set(a, s), S.set(s, a); ++oe < W; ) {\n var We = a[oe], Je = s[oe];\n if (d)\n var He = b ? d(Je, We, oe, s, a, S) : d(We, Je, oe, a, s, S);\n if (He !== r) {\n if (He)\n continue;\n ke = !1;\n break;\n }\n if (Ne) {\n if (!Bs(s, function(rr, cr) {\n if (!a0(Ne, cr) && (We === rr || E(We, rr, o, d, S)))\n return Ne.push(cr);\n })) {\n ke = !1;\n break;\n }\n } else if (!(We === Je || E(We, Je, o, d, S))) {\n ke = !1;\n break;\n }\n }\n return S.delete(a), S.delete(s), ke;\n }\n function nv(a, s, o, d, E, S, b) {\n switch (o) {\n case dr:\n if (a.byteLength != s.byteLength || a.byteOffset != s.byteOffset)\n return !1;\n a = a.buffer, s = s.buffer;\n case Nr:\n return !(a.byteLength != s.byteLength || !S(new ui(a), new ui(s)));\n case N:\n case K:\n case Te:\n return sa(+a, +s);\n case B:\n return a.name == s.name && a.message == s.message;\n case ar:\n case Er:\n return a == s + \"\";\n case pe:\n var W = Vs;\n case qe:\n var Y = d & T;\n if (W || (W = ai), a.size != s.size && !Y)\n return !1;\n var ce = b.get(a);\n if (ce)\n return ce == s;\n d |= A, b.set(a, s);\n var ue = ao(W(a), W(s), d, E, S, b);\n return b.delete(a), ue;\n case Ce:\n if (c0)\n return c0.call(a) == c0.call(s);\n }\n return !1;\n }\n function iv(a, s, o, d, E, S) {\n var b = o & T, W = vf(a), Y = W.length, ce = vf(s), ue = ce.length;\n if (Y != ue && !b)\n return !1;\n for (var oe = Y; oe--; ) {\n var ke = W[oe];\n if (!(b ? ke in s : mr.call(s, ke)))\n return !1;\n }\n var Ne = S.get(a), We = S.get(s);\n if (Ne && We)\n return Ne == s && We == a;\n var Je = !0;\n S.set(a, s), S.set(s, a);\n for (var He = b; ++oe < Y; ) {\n ke = W[oe];\n var rr = a[ke], cr = s[ke];\n if (d)\n var Nt = b ? d(cr, rr, ke, s, a, S) : d(rr, cr, ke, a, s, S);\n if (!(Nt === r ? rr === cr || E(rr, cr, o, d, S) : Nt)) {\n Je = !1;\n break;\n }\n He || (He = ke == \"constructor\");\n }\n if (Je && !He) {\n var gt = a.constructor, Lt = s.constructor;\n gt != Lt && \"constructor\" in a && \"constructor\" in s && !(typeof gt == \"function\" && gt instanceof gt && typeof Lt == \"function\" && Lt instanceof Lt) && (Je = !1);\n }\n return S.delete(a), S.delete(s), Je;\n }\n function ka(a) {\n return kf(uo(a, r, mo), a + \"\");\n }\n function vf(a) {\n return ku(a, Zr, mf);\n }\n function pf(a) {\n return ku(a, kt, no);\n }\n var gf = vi ? function(a) {\n return vi.get(a);\n } : bf;\n function Ii(a) {\n for (var s = a.name + \"\", o = Pn[s], d = mr.call(Pn, s) ? o.length : 0; d--; ) {\n var E = o[d], S = E.func;\n if (S == null || S == a)\n return E.name;\n }\n return s;\n }\n function Un(a) {\n var s = mr.call(F, \"placeholder\") ? F : a;\n return s.placeholder;\n }\n function Ue() {\n var a = F.iteratee || Lf;\n return a = a === Lf ? Su : a, arguments.length ? a(arguments[0], arguments[1]) : a;\n }\n function Oi(a, s) {\n var o = a.__data__;\n return xv(s) ? o[typeof s == \"string\" ? \"string\" : \"hash\"] : o.map;\n }\n function _f(a) {\n for (var s = Zr(a), o = s.length; o--; ) {\n var d = s[o], E = a[d];\n s[o] = [d, E, fo(E)];\n }\n return s;\n }\n function on(a, s) {\n var o = px(a, s);\n return Fu(o) ? o : r;\n }\n function sv(a) {\n var s = mr.call(a, nn), o = a[nn];\n try {\n a[nn] = r;\n var d = !0;\n } catch {\n }\n var E = fi.call(a);\n return d && (s ? a[nn] = o : delete a[nn]), E;\n }\n var mf = $s ? function(a) {\n return a == null ? [] : (a = wr(a), Ma($s(a), function(s) {\n return ou.call(a, s);\n }));\n } : Bf, no = $s ? function(a) {\n for (var s = []; a; )\n Ua(s, mf(a)), a = oi(a);\n return s;\n } : Bf, st = vt;\n (zs && st(new zs(new ArrayBuffer(1))) != dr || i0 && st(new i0()) != pe || Ks && st(Ks.resolve()) != Re || Ln && st(new Ln()) != qe || s0 && st(new s0()) != ge) && (st = function(a) {\n var s = vt(a), o = s == Oe ? a.constructor : r, d = o ? ln(o) : \"\";\n if (d)\n switch (d) {\n case Gx:\n return dr;\n case Vx:\n return pe;\n case Xx:\n return Re;\n case $x:\n return qe;\n case zx:\n return ge;\n }\n return s;\n });\n function fv(a, s, o) {\n for (var d = -1, E = o.length; ++d < E; ) {\n var S = o[d], b = S.size;\n switch (S.type) {\n case \"drop\":\n a += b;\n break;\n case \"dropRight\":\n s -= b;\n break;\n case \"take\":\n s = it(s, a + b);\n break;\n case \"takeRight\":\n a = $r(a, s - b);\n break;\n }\n }\n return { start: a, end: s };\n }\n function cv(a) {\n var s = a.match(k);\n return s ? s[1].split(R) : [];\n }\n function io(a, s, o) {\n s = Xa(s, a);\n for (var d = -1, E = s.length, S = !1; ++d < E; ) {\n var b = va(s[d]);\n if (!(S = a != null && o(a, b)))\n break;\n a = a[b];\n }\n return S || ++d != E ? S : (E = a == null ? 0 : a.length, !!E && Bi(E) && Aa(b, E) && (Ye(a) || hn(a)));\n }\n function uv(a) {\n var s = a.length, o = new a.constructor(s);\n return s && typeof a[0] == \"string\" && mr.call(a, \"index\") && (o.index = a.index, o.input = a.input), o;\n }\n function so(a) {\n return typeof a.constructor == \"function\" && !v0(a) ? bn(oi(a)) : {};\n }\n function ov(a, s, o) {\n var d = a.constructor;\n switch (s) {\n case Nr:\n return hf(a);\n case N:\n case K:\n return new d(+a);\n case dr:\n return Kd(a, o);\n case dt:\n case Yr:\n case we:\n case fr:\n case Cr:\n case yr:\n case yt:\n case ta:\n case Pa:\n return Gu(a, o);\n case pe:\n return new d();\n case Te:\n case Er:\n return new d(a);\n case ar:\n return Yd(a);\n case qe:\n return new d();\n case Ce:\n return Zd(a);\n }\n }\n function lv(a, s) {\n var o = s.length;\n if (!o)\n return a;\n var d = o - 1;\n return s[d] = (o > 1 ? \"& \" : \"\") + s[d], s = s.join(o > 2 ? \", \" : \" \"), a.replace(Cs, `{\n/* [wrapped with ` + s + `] */\n`);\n }\n function hv(a) {\n return Ye(a) || hn(a) || !!(lu && a && a[lu]);\n }\n function Aa(a, s) {\n var o = typeof a;\n return s = s ?? Ee, !!s && (o == \"number\" || o != \"symbol\" && xe.test(a)) && a > -1 && a % 1 == 0 && a < s;\n }\n function pt(a, s, o) {\n if (!Or(o))\n return !1;\n var d = typeof s;\n return (d == \"number\" ? wt(o) && Aa(s, o.length) : d == \"string\" && s in o) ? sa(o[s], a) : !1;\n }\n function Ef(a, s) {\n if (Ye(a))\n return !1;\n var o = typeof a;\n return o == \"number\" || o == \"symbol\" || o == \"boolean\" || a == null || Rt(a) ? !0 : As.test(a) || !ks.test(a) || s != null && a in wr(s);\n }\n function xv(a) {\n var s = typeof a;\n return s == \"string\" || s == \"number\" || s == \"symbol\" || s == \"boolean\" ? a !== \"__proto__\" : a === null;\n }\n function Tf(a) {\n var s = Ii(a), o = F[s];\n if (typeof o != \"function\" || !(s in nr.prototype))\n return !1;\n if (a === o)\n return !0;\n var d = gf(o);\n return !!d && a === d[0];\n }\n function dv(a) {\n return !!fu && fu in a;\n }\n var vv = ii ? Fa : Mf;\n function v0(a) {\n var s = a && a.constructor, o = typeof s == \"function\" && s.prototype || Nn;\n return a === o;\n }\n function fo(a) {\n return a === a && !Or(a);\n }\n function co(a, s) {\n return function(o) {\n return o == null ? !1 : o[a] === s && (s !== r || a in wr(o));\n };\n }\n function pv(a) {\n var s = Pi(a, function(d) {\n return o.size === h && o.clear(), d;\n }), o = s.cache;\n return s;\n }\n function gv(a, s) {\n var o = a[1], d = s[1], E = o | d, S = E < (g | p | M), b = d == M && o == w || d == M && o == G && a[7].length <= s[8] || d == (M | G) && s[7].length <= s[8] && o == w;\n if (!(S || b))\n return a;\n d & g && (a[2] = s[2], E |= o & g ? 0 : y);\n var W = s[3];\n if (W) {\n var Y = a[3];\n a[3] = Y ? Xu(Y, W, s[4]) : W, a[4] = Y ? Wa(a[3], x) : s[4];\n }\n return W = s[5], W && (Y = a[5], a[5] = Y ? $u(Y, W, s[6]) : W, a[6] = Y ? Wa(a[5], x) : s[6]), W = s[7], W && (a[7] = W), d & M && (a[8] = a[8] == null ? s[8] : it(a[8], s[8])), a[9] == null && (a[9] = s[9]), a[0] = s[0], a[1] = E, a;\n }\n function _v(a) {\n var s = [];\n if (a != null)\n for (var o in wr(a))\n s.push(o);\n return s;\n }\n function mv(a) {\n return fi.call(a);\n }\n function uo(a, s, o) {\n return s = $r(s === r ? a.length - 1 : s, 0), function() {\n for (var d = arguments, E = -1, S = $r(d.length - s, 0), b = te(S); ++E < S; )\n b[E] = d[s + E];\n E = -1;\n for (var W = te(s + 1); ++E < s; )\n W[E] = d[E];\n return W[s] = o(b), It(a, this, W);\n };\n }\n function oo(a, s) {\n return s.length < 2 ? a : un(a, zt(s, 0, -1));\n }\n function Ev(a, s) {\n for (var o = a.length, d = it(s.length, o), E = Tt(a); d--; ) {\n var S = s[d];\n a[d] = Aa(S, o) ? E[S] : r;\n }\n return a;\n }\n function wf(a, s) {\n if (!(s === \"constructor\" && typeof a[s] == \"function\") && s != \"__proto__\")\n return a[s];\n }\n var lo = xo(Lu), p0 = Px || function(a, s) {\n return jr.setTimeout(a, s);\n }, kf = xo(Vd);\n function ho(a, s, o) {\n var d = s + \"\";\n return kf(a, lv(d, Tv(cv(d), o)));\n }\n function xo(a) {\n var s = 0, o = 0;\n return function() {\n var d = Ux(), E = ne - (d - o);\n if (o = d, E > 0) {\n if (++s >= re)\n return arguments[0];\n } else\n s = 0;\n return a.apply(r, arguments);\n };\n }\n function Di(a, s) {\n var o = -1, d = a.length, E = d - 1;\n for (s = s === r ? d : s; ++o < s; ) {\n var S = nf(o, E), b = a[S];\n a[S] = a[o], a[o] = b;\n }\n return a.length = s, a;\n }\n var vo = pv(function(a) {\n var s = [];\n return a.charCodeAt(0) === 46 && s.push(\"\"), a.replace(Fs, function(o, d, E, S) {\n s.push(E ? S.replace(D, \"$1\") : d || o);\n }), s;\n });\n function va(a) {\n if (typeof a == \"string\" || Rt(a))\n return a;\n var s = a + \"\";\n return s == \"0\" && 1 / a == -le ? \"-0\" : s;\n }\n function ln(a) {\n if (a != null) {\n try {\n return si.call(a);\n } catch {\n }\n try {\n return a + \"\";\n } catch {\n }\n }\n return \"\";\n }\n function Tv(a, s) {\n return Gt(Se, function(o) {\n var d = \"_.\" + o[0];\n s & o[1] && !ri(a, d) && a.push(d);\n }), a.sort();\n }\n function po(a) {\n if (a instanceof nr)\n return a.clone();\n var s = new Xt(a.__wrapped__, a.__chain__);\n return s.__actions__ = Tt(a.__actions__), s.__index__ = a.__index__, s.__values__ = a.__values__, s;\n }\n function wv(a, s, o) {\n (o ? pt(a, s, o) : s === r) ? s = 1 : s = $r(Ze(s), 0);\n var d = a == null ? 0 : a.length;\n if (!d || s < 1)\n return [];\n for (var E = 0, S = 0, b = te(xi(d / s)); E < d; )\n b[S++] = zt(a, E, E += s);\n return b;\n }\n function kv(a) {\n for (var s = -1, o = a == null ? 0 : a.length, d = 0, E = []; ++s < o; ) {\n var S = a[s];\n S && (E[d++] = S);\n }\n return E;\n }\n function Av() {\n var a = arguments.length;\n if (!a)\n return [];\n for (var s = te(a - 1), o = arguments[0], d = a; d--; )\n s[d - 1] = arguments[d];\n return Ua(Ye(o) ? Tt(o) : [o], et(s, 1));\n }\n var Fv = Qe(function(a, s) {\n return Lr(a) ? o0(a, et(s, 1, Lr, !0)) : [];\n }), Sv = Qe(function(a, s) {\n var o = Kt(s);\n return Lr(o) && (o = r), Lr(a) ? o0(a, et(s, 1, Lr, !0), Ue(o, 2)) : [];\n }), Cv = Qe(function(a, s) {\n var o = Kt(s);\n return Lr(o) && (o = r), Lr(a) ? o0(a, et(s, 1, Lr, !0), r, o) : [];\n });\n function yv(a, s, o) {\n var d = a == null ? 0 : a.length;\n return d ? (s = o || s === r ? 1 : Ze(s), zt(a, s < 0 ? 0 : s, d)) : [];\n }\n function Iv(a, s, o) {\n var d = a == null ? 0 : a.length;\n return d ? (s = o || s === r ? 1 : Ze(s), s = d - s, zt(a, 0, s < 0 ? 0 : s)) : [];\n }\n function Ov(a, s) {\n return a && a.length ? ki(a, Ue(s, 3), !0, !0) : [];\n }\n function Dv(a, s) {\n return a && a.length ? ki(a, Ue(s, 3), !0) : [];\n }\n function Rv(a, s, o, d) {\n var E = a == null ? 0 : a.length;\n return E ? (o && typeof o != \"number\" && pt(a, s, o) && (o = 0, d = E), Ad(a, s, o, d)) : [];\n }\n function go(a, s, o) {\n var d = a == null ? 0 : a.length;\n if (!d)\n return -1;\n var E = o == null ? 0 : Ze(o);\n return E < 0 && (E = $r(d + E, 0)), ti(a, Ue(s, 3), E);\n }\n function _o(a, s, o) {\n var d = a == null ? 0 : a.length;\n if (!d)\n return -1;\n var E = d - 1;\n return o !== r && (E = Ze(o), E = o < 0 ? $r(d + E, 0) : it(E, d - 1)), ti(a, Ue(s, 3), E, !0);\n }\n function mo(a) {\n var s = a == null ? 0 : a.length;\n return s ? et(a, 1) : [];\n }\n function Nv(a) {\n var s = a == null ? 0 : a.length;\n return s ? et(a, le) : [];\n }\n function Lv(a, s) {\n var o = a == null ? 0 : a.length;\n return o ? (s = s === r ? 1 : Ze(s), et(a, s)) : [];\n }\n function Pv(a) {\n for (var s = -1, o = a == null ? 0 : a.length, d = {}; ++s < o; ) {\n var E = a[s];\n d[E[0]] = E[1];\n }\n return d;\n }\n function Eo(a) {\n return a && a.length ? a[0] : r;\n }\n function bv(a, s, o) {\n var d = a == null ? 0 : a.length;\n if (!d)\n return -1;\n var E = o == null ? 0 : Ze(o);\n return E < 0 && (E = $r(d + E, 0)), In(a, s, E);\n }\n function Bv(a) {\n var s = a == null ? 0 : a.length;\n return s ? zt(a, 0, -1) : [];\n }\n var Mv = Qe(function(a) {\n var s = Ir(a, of);\n return s.length && s[0] === a[0] ? js(s) : [];\n }), Uv = Qe(function(a) {\n var s = Kt(a), o = Ir(a, of);\n return s === Kt(o) ? s = r : o.pop(), o.length && o[0] === a[0] ? js(o, Ue(s, 2)) : [];\n }), Wv = Qe(function(a) {\n var s = Kt(a), o = Ir(a, of);\n return s = typeof s == \"function\" ? s : r, s && o.pop(), o.length && o[0] === a[0] ? js(o, r, s) : [];\n });\n function Hv(a, s) {\n return a == null ? \"\" : Bx.call(a, s);\n }\n function Kt(a) {\n var s = a == null ? 0 : a.length;\n return s ? a[s - 1] : r;\n }\n function Gv(a, s, o) {\n var d = a == null ? 0 : a.length;\n if (!d)\n return -1;\n var E = d;\n return o !== r && (E = Ze(o), E = E < 0 ? $r(d + E, 0) : it(E, d - 1)), s === s ? Tx(a, s, E) : ti(a, jc, E, !0);\n }\n function Vv(a, s) {\n return a && a.length ? Ou(a, Ze(s)) : r;\n }\n var Xv = Qe(To);\n function To(a, s) {\n return a && a.length && s && s.length ? af(a, s) : a;\n }\n function $v(a, s, o) {\n return a && a.length && s && s.length ? af(a, s, Ue(o, 2)) : a;\n }\n function zv(a, s, o) {\n return a && a.length && s && s.length ? af(a, s, r, o) : a;\n }\n var Kv = ka(function(a, s) {\n var o = a == null ? 0 : a.length, d = Zs(a, s);\n return Nu(a, Ir(s, function(E) {\n return Aa(E, o) ? +E : E;\n }).sort(Vu)), d;\n });\n function Yv(a, s) {\n var o = [];\n if (!(a && a.length))\n return o;\n var d = -1, E = [], S = a.length;\n for (s = Ue(s, 3); ++d < S; ) {\n var b = a[d];\n s(b, d, a) && (o.push(b), E.push(d));\n }\n return Nu(a, E), o;\n }\n function Af(a) {\n return a == null ? a : Hx.call(a);\n }\n function Zv(a, s, o) {\n var d = a == null ? 0 : a.length;\n return d ? (o && typeof o != \"number\" && pt(a, s, o) ? (s = 0, o = d) : (s = s == null ? 0 : Ze(s), o = o === r ? d : Ze(o)), zt(a, s, o)) : [];\n }\n function Jv(a, s) {\n return wi(a, s);\n }\n function qv(a, s, o) {\n return ff(a, s, Ue(o, 2));\n }\n function Qv(a, s) {\n var o = a == null ? 0 : a.length;\n if (o) {\n var d = wi(a, s);\n if (d < o && sa(a[d], s))\n return d;\n }\n return -1;\n }\n function jv(a, s) {\n return wi(a, s, !0);\n }\n function e2(a, s, o) {\n return ff(a, s, Ue(o, 2), !0);\n }\n function r2(a, s) {\n var o = a == null ? 0 : a.length;\n if (o) {\n var d = wi(a, s, !0) - 1;\n if (sa(a[d], s))\n return d;\n }\n return -1;\n }\n function t2(a) {\n return a && a.length ? Pu(a) : [];\n }\n function a2(a, s) {\n return a && a.length ? Pu(a, Ue(s, 2)) : [];\n }\n function n2(a) {\n var s = a == null ? 0 : a.length;\n return s ? zt(a, 1, s) : [];\n }\n function i2(a, s, o) {\n return a && a.length ? (s = o || s === r ? 1 : Ze(s), zt(a, 0, s < 0 ? 0 : s)) : [];\n }\n function s2(a, s, o) {\n var d = a == null ? 0 : a.length;\n return d ? (s = o || s === r ? 1 : Ze(s), s = d - s, zt(a, s < 0 ? 0 : s, d)) : [];\n }\n function f2(a, s) {\n return a && a.length ? ki(a, Ue(s, 3), !1, !0) : [];\n }\n function c2(a, s) {\n return a && a.length ? ki(a, Ue(s, 3)) : [];\n }\n var u2 = Qe(function(a) {\n return Va(et(a, 1, Lr, !0));\n }), o2 = Qe(function(a) {\n var s = Kt(a);\n return Lr(s) && (s = r), Va(et(a, 1, Lr, !0), Ue(s, 2));\n }), l2 = Qe(function(a) {\n var s = Kt(a);\n return s = typeof s == \"function\" ? s : r, Va(et(a, 1, Lr, !0), r, s);\n });\n function h2(a) {\n return a && a.length ? Va(a) : [];\n }\n function x2(a, s) {\n return a && a.length ? Va(a, Ue(s, 2)) : [];\n }\n function d2(a, s) {\n return s = typeof s == \"function\" ? s : r, a && a.length ? Va(a, r, s) : [];\n }\n function Ff(a) {\n if (!(a && a.length))\n return [];\n var s = 0;\n return a = Ma(a, function(o) {\n if (Lr(o))\n return s = $r(o.length, s), !0;\n }), Hs(s, function(o) {\n return Ir(a, Ms(o));\n });\n }\n function wo(a, s) {\n if (!(a && a.length))\n return [];\n var o = Ff(a);\n return s == null ? o : Ir(o, function(d) {\n return It(s, r, d);\n });\n }\n var v2 = Qe(function(a, s) {\n return Lr(a) ? o0(a, s) : [];\n }), p2 = Qe(function(a) {\n return uf(Ma(a, Lr));\n }), g2 = Qe(function(a) {\n var s = Kt(a);\n return Lr(s) && (s = r), uf(Ma(a, Lr), Ue(s, 2));\n }), _2 = Qe(function(a) {\n var s = Kt(a);\n return s = typeof s == \"function\" ? s : r, uf(Ma(a, Lr), r, s);\n }), m2 = Qe(Ff);\n function E2(a, s) {\n return Uu(a || [], s || [], u0);\n }\n function T2(a, s) {\n return Uu(a || [], s || [], x0);\n }\n var w2 = Qe(function(a) {\n var s = a.length, o = s > 1 ? a[s - 1] : r;\n return o = typeof o == \"function\" ? (a.pop(), o) : r, wo(a, o);\n });\n function ko(a) {\n var s = F(a);\n return s.__chain__ = !0, s;\n }\n function k2(a, s) {\n return s(a), a;\n }\n function Ri(a, s) {\n return s(a);\n }\n var A2 = ka(function(a) {\n var s = a.length, o = s ? a[0] : 0, d = this.__wrapped__, E = function(S) {\n return Zs(S, a);\n };\n return s > 1 || this.__actions__.length || !(d instanceof nr) || !Aa(o) ? this.thru(E) : (d = d.slice(o, +o + (s ? 1 : 0)), d.__actions__.push({\n func: Ri,\n args: [E],\n thisArg: r\n }), new Xt(d, this.__chain__).thru(function(S) {\n return s && !S.length && S.push(r), S;\n }));\n });\n function F2() {\n return ko(this);\n }\n function S2() {\n return new Xt(this.value(), this.__chain__);\n }\n function C2() {\n this.__values__ === r && (this.__values__ = Bo(this.value()));\n var a = this.__index__ >= this.__values__.length, s = a ? r : this.__values__[this.__index__++];\n return { done: a, value: s };\n }\n function y2() {\n return this;\n }\n function I2(a) {\n for (var s, o = this; o instanceof gi; ) {\n var d = po(o);\n d.__index__ = 0, d.__values__ = r, s ? E.__wrapped__ = d : s = d;\n var E = d;\n o = o.__wrapped__;\n }\n return E.__wrapped__ = a, s;\n }\n function O2() {\n var a = this.__wrapped__;\n if (a instanceof nr) {\n var s = a;\n return this.__actions__.length && (s = new nr(this)), s = s.reverse(), s.__actions__.push({\n func: Ri,\n args: [Af],\n thisArg: r\n }), new Xt(s, this.__chain__);\n }\n return this.thru(Af);\n }\n function D2() {\n return Mu(this.__wrapped__, this.__actions__);\n }\n var R2 = Ai(function(a, s, o) {\n mr.call(a, o) ? ++a[o] : Ta(a, o, 1);\n });\n function N2(a, s, o) {\n var d = Ye(a) ? qc : kd;\n return o && pt(a, s, o) && (s = r), d(a, Ue(s, 3));\n }\n function L2(a, s) {\n var o = Ye(a) ? Ma : Tu;\n return o(a, Ue(s, 3));\n }\n var P2 = Zu(go), b2 = Zu(_o);\n function B2(a, s) {\n return et(Ni(a, s), 1);\n }\n function M2(a, s) {\n return et(Ni(a, s), le);\n }\n function U2(a, s, o) {\n return o = o === r ? 1 : Ze(o), et(Ni(a, s), o);\n }\n function Ao(a, s) {\n var o = Ye(a) ? Gt : Ga;\n return o(a, Ue(s, 3));\n }\n function Fo(a, s) {\n var o = Ye(a) ? nx : Eu;\n return o(a, Ue(s, 3));\n }\n var W2 = Ai(function(a, s, o) {\n mr.call(a, o) ? a[o].push(s) : Ta(a, o, [s]);\n });\n function H2(a, s, o, d) {\n a = wt(a) ? a : Hn(a), o = o && !d ? Ze(o) : 0;\n var E = a.length;\n return o < 0 && (o = $r(E + o, 0)), Mi(a) ? o <= E && a.indexOf(s, o) > -1 : !!E && In(a, s, o) > -1;\n }\n var G2 = Qe(function(a, s, o) {\n var d = -1, E = typeof s == \"function\", S = wt(a) ? te(a.length) : [];\n return Ga(a, function(b) {\n S[++d] = E ? It(s, b, o) : l0(b, s, o);\n }), S;\n }), V2 = Ai(function(a, s, o) {\n Ta(a, o, s);\n });\n function Ni(a, s) {\n var o = Ye(a) ? Ir : Cu;\n return o(a, Ue(s, 3));\n }\n function X2(a, s, o, d) {\n return a == null ? [] : (Ye(s) || (s = s == null ? [] : [s]), o = d ? r : o, Ye(o) || (o = o == null ? [] : [o]), Du(a, s, o));\n }\n var $2 = Ai(function(a, s, o) {\n a[o ? 0 : 1].push(s);\n }, function() {\n return [[], []];\n });\n function z2(a, s, o) {\n var d = Ye(a) ? bs : ru, E = arguments.length < 3;\n return d(a, Ue(s, 4), o, E, Ga);\n }\n function K2(a, s, o) {\n var d = Ye(a) ? ix : ru, E = arguments.length < 3;\n return d(a, Ue(s, 4), o, E, Eu);\n }\n function Y2(a, s) {\n var o = Ye(a) ? Ma : Tu;\n return o(a, bi(Ue(s, 3)));\n }\n function Z2(a) {\n var s = Ye(a) ? pu : Hd;\n return s(a);\n }\n function J2(a, s, o) {\n (o ? pt(a, s, o) : s === r) ? s = 1 : s = Ze(s);\n var d = Ye(a) ? _d : Gd;\n return d(a, s);\n }\n function q2(a) {\n var s = Ye(a) ? md : Xd;\n return s(a);\n }\n function Q2(a) {\n if (a == null)\n return 0;\n if (wt(a))\n return Mi(a) ? Dn(a) : a.length;\n var s = st(a);\n return s == pe || s == qe ? a.size : rf(a).length;\n }\n function j2(a, s, o) {\n var d = Ye(a) ? Bs : $d;\n return o && pt(a, s, o) && (s = r), d(a, Ue(s, 3));\n }\n var ep = Qe(function(a, s) {\n if (a == null)\n return [];\n var o = s.length;\n return o > 1 && pt(a, s[0], s[1]) ? s = [] : o > 2 && pt(s[0], s[1], s[2]) && (s = [s[0]]), Du(a, et(s, 1), []);\n }), Li = Lx || function() {\n return jr.Date.now();\n };\n function rp(a, s) {\n if (typeof s != \"function\")\n throw new Vt(c);\n return a = Ze(a), function() {\n if (--a < 1)\n return s.apply(this, arguments);\n };\n }\n function So(a, s, o) {\n return s = o ? r : s, s = a && s == null ? a.length : s, wa(a, M, r, r, r, r, s);\n }\n function Co(a, s) {\n var o;\n if (typeof s != \"function\")\n throw new Vt(c);\n return a = Ze(a), function() {\n return --a > 0 && (o = s.apply(this, arguments)), a <= 1 && (s = r), o;\n };\n }\n var Sf = Qe(function(a, s, o) {\n var d = g;\n if (o.length) {\n var E = Wa(o, Un(Sf));\n d |= V;\n }\n return wa(a, d, s, o, E);\n }), yo = Qe(function(a, s, o) {\n var d = g | p;\n if (o.length) {\n var E = Wa(o, Un(yo));\n d |= V;\n }\n return wa(s, d, a, o, E);\n });\n function Io(a, s, o) {\n s = o ? r : s;\n var d = wa(a, w, r, r, r, r, r, s);\n return d.placeholder = Io.placeholder, d;\n }\n function Oo(a, s, o) {\n s = o ? r : s;\n var d = wa(a, P, r, r, r, r, r, s);\n return d.placeholder = Oo.placeholder, d;\n }\n function Do(a, s, o) {\n var d, E, S, b, W, Y, ce = 0, ue = !1, oe = !1, ke = !0;\n if (typeof a != \"function\")\n throw new Vt(c);\n s = Yt(s) || 0, Or(o) && (ue = !!o.leading, oe = \"maxWait\" in o, S = oe ? $r(Yt(o.maxWait) || 0, s) : S, ke = \"trailing\" in o ? !!o.trailing : ke);\n function Ne(Pr) {\n var fa = d, Ca = E;\n return d = E = r, ce = Pr, b = a.apply(Ca, fa), b;\n }\n function We(Pr) {\n return ce = Pr, W = p0(rr, s), ue ? Ne(Pr) : b;\n }\n function Je(Pr) {\n var fa = Pr - Y, Ca = Pr - ce, Jo = s - fa;\n return oe ? it(Jo, S - Ca) : Jo;\n }\n function He(Pr) {\n var fa = Pr - Y, Ca = Pr - ce;\n return Y === r || fa >= s || fa < 0 || oe && Ca >= S;\n }\n function rr() {\n var Pr = Li();\n if (He(Pr))\n return cr(Pr);\n W = p0(rr, Je(Pr));\n }\n function cr(Pr) {\n return W = r, ke && d ? Ne(Pr) : (d = E = r, b);\n }\n function Nt() {\n W !== r && Wu(W), ce = 0, d = Y = E = W = r;\n }\n function gt() {\n return W === r ? b : cr(Li());\n }\n function Lt() {\n var Pr = Li(), fa = He(Pr);\n if (d = arguments, E = this, Y = Pr, fa) {\n if (W === r)\n return We(Y);\n if (oe)\n return Wu(W), W = p0(rr, s), Ne(Y);\n }\n return W === r && (W = p0(rr, s)), b;\n }\n return Lt.cancel = Nt, Lt.flush = gt, Lt;\n }\n var tp = Qe(function(a, s) {\n return mu(a, 1, s);\n }), ap = Qe(function(a, s, o) {\n return mu(a, Yt(s) || 0, o);\n });\n function np(a) {\n return wa(a, U);\n }\n function Pi(a, s) {\n if (typeof a != \"function\" || s != null && typeof s != \"function\")\n throw new Vt(c);\n var o = function() {\n var d = arguments, E = s ? s.apply(this, d) : d[0], S = o.cache;\n if (S.has(E))\n return S.get(E);\n var b = a.apply(this, d);\n return o.cache = S.set(E, b) || S, b;\n };\n return o.cache = new (Pi.Cache || Ea)(), o;\n }\n Pi.Cache = Ea;\n function bi(a) {\n if (typeof a != \"function\")\n throw new Vt(c);\n return function() {\n var s = arguments;\n switch (s.length) {\n case 0:\n return !a.call(this);\n case 1:\n return !a.call(this, s[0]);\n case 2:\n return !a.call(this, s[0], s[1]);\n case 3:\n return !a.call(this, s[0], s[1], s[2]);\n }\n return !a.apply(this, s);\n };\n }\n function ip(a) {\n return Co(2, a);\n }\n var sp = zd(function(a, s) {\n s = s.length == 1 && Ye(s[0]) ? Ir(s[0], Ot(Ue())) : Ir(et(s, 1), Ot(Ue()));\n var o = s.length;\n return Qe(function(d) {\n for (var E = -1, S = it(d.length, o); ++E < S; )\n d[E] = s[E].call(this, d[E]);\n return It(a, this, d);\n });\n }), Cf = Qe(function(a, s) {\n var o = Wa(s, Un(Cf));\n return wa(a, V, r, s, o);\n }), Ro = Qe(function(a, s) {\n var o = Wa(s, Un(Ro));\n return wa(a, Z, r, s, o);\n }), fp = ka(function(a, s) {\n return wa(a, G, r, r, r, s);\n });\n function cp(a, s) {\n if (typeof a != \"function\")\n throw new Vt(c);\n return s = s === r ? s : Ze(s), Qe(a, s);\n }\n function up(a, s) {\n if (typeof a != \"function\")\n throw new Vt(c);\n return s = s == null ? 0 : $r(Ze(s), 0), Qe(function(o) {\n var d = o[s], E = $a(o, 0, s);\n return d && Ua(E, d), It(a, this, E);\n });\n }\n function op(a, s, o) {\n var d = !0, E = !0;\n if (typeof a != \"function\")\n throw new Vt(c);\n return Or(o) && (d = \"leading\" in o ? !!o.leading : d, E = \"trailing\" in o ? !!o.trailing : E), Do(a, s, {\n leading: d,\n maxWait: s,\n trailing: E\n });\n }\n function lp(a) {\n return So(a, 1);\n }\n function hp(a, s) {\n return Cf(lf(s), a);\n }\n function xp() {\n if (!arguments.length)\n return [];\n var a = arguments[0];\n return Ye(a) ? a : [a];\n }\n function dp(a) {\n return $t(a, v);\n }\n function vp(a, s) {\n return s = typeof s == \"function\" ? s : r, $t(a, v, s);\n }\n function pp(a) {\n return $t(a, m | v);\n }\n function gp(a, s) {\n return s = typeof s == \"function\" ? s : r, $t(a, m | v, s);\n }\n function _p(a, s) {\n return s == null || _u(a, s, Zr(s));\n }\n function sa(a, s) {\n return a === s || a !== a && s !== s;\n }\n var mp = yi(Qs), Ep = yi(function(a, s) {\n return a >= s;\n }), hn = Au(/* @__PURE__ */ function() {\n return arguments;\n }()) ? Au : function(a) {\n return Dr(a) && mr.call(a, \"callee\") && !ou.call(a, \"callee\");\n }, Ye = te.isArray, Tp = $c ? Ot($c) : Id;\n function wt(a) {\n return a != null && Bi(a.length) && !Fa(a);\n }\n function Lr(a) {\n return Dr(a) && wt(a);\n }\n function wp(a) {\n return a === !0 || a === !1 || Dr(a) && vt(a) == N;\n }\n var za = bx || Mf, kp = zc ? Ot(zc) : Od;\n function Ap(a) {\n return Dr(a) && a.nodeType === 1 && !g0(a);\n }\n function Fp(a) {\n if (a == null)\n return !0;\n if (wt(a) && (Ye(a) || typeof a == \"string\" || typeof a.splice == \"function\" || za(a) || Wn(a) || hn(a)))\n return !a.length;\n var s = st(a);\n if (s == pe || s == qe)\n return !a.size;\n if (v0(a))\n return !rf(a).length;\n for (var o in a)\n if (mr.call(a, o))\n return !1;\n return !0;\n }\n function Sp(a, s) {\n return h0(a, s);\n }\n function Cp(a, s, o) {\n o = typeof o == \"function\" ? o : r;\n var d = o ? o(a, s) : r;\n return d === r ? h0(a, s, r, o) : !!d;\n }\n function yf(a) {\n if (!Dr(a))\n return !1;\n var s = vt(a);\n return s == B || s == H || typeof a.message == \"string\" && typeof a.name == \"string\" && !g0(a);\n }\n function yp(a) {\n return typeof a == \"number\" && hu(a);\n }\n function Fa(a) {\n if (!Or(a))\n return !1;\n var s = vt(a);\n return s == fe || s == O || s == Ke || s == Ve;\n }\n function No(a) {\n return typeof a == \"number\" && a == Ze(a);\n }\n function Bi(a) {\n return typeof a == \"number\" && a > -1 && a % 1 == 0 && a <= Ee;\n }\n function Or(a) {\n var s = typeof a;\n return a != null && (s == \"object\" || s == \"function\");\n }\n function Dr(a) {\n return a != null && typeof a == \"object\";\n }\n var Lo = Kc ? Ot(Kc) : Rd;\n function Ip(a, s) {\n return a === s || ef(a, s, _f(s));\n }\n function Op(a, s, o) {\n return o = typeof o == \"function\" ? o : r, ef(a, s, _f(s), o);\n }\n function Dp(a) {\n return Po(a) && a != +a;\n }\n function Rp(a) {\n if (vv(a))\n throw new ze(f);\n return Fu(a);\n }\n function Np(a) {\n return a === null;\n }\n function Lp(a) {\n return a == null;\n }\n function Po(a) {\n return typeof a == \"number\" || Dr(a) && vt(a) == Te;\n }\n function g0(a) {\n if (!Dr(a) || vt(a) != Oe)\n return !1;\n var s = oi(a);\n if (s === null)\n return !0;\n var o = mr.call(s, \"constructor\") && s.constructor;\n return typeof o == \"function\" && o instanceof o && si.call(o) == Ox;\n }\n var If = Yc ? Ot(Yc) : Nd;\n function Pp(a) {\n return No(a) && a >= -Ee && a <= Ee;\n }\n var bo = Zc ? Ot(Zc) : Ld;\n function Mi(a) {\n return typeof a == \"string\" || !Ye(a) && Dr(a) && vt(a) == Er;\n }\n function Rt(a) {\n return typeof a == \"symbol\" || Dr(a) && vt(a) == Ce;\n }\n var Wn = Jc ? Ot(Jc) : Pd;\n function bp(a) {\n return a === r;\n }\n function Bp(a) {\n return Dr(a) && st(a) == ge;\n }\n function Mp(a) {\n return Dr(a) && vt(a) == xt;\n }\n var Up = yi(tf), Wp = yi(function(a, s) {\n return a <= s;\n });\n function Bo(a) {\n if (!a)\n return [];\n if (wt(a))\n return Mi(a) ? na(a) : Tt(a);\n if (n0 && a[n0])\n return _x(a[n0]());\n var s = st(a), o = s == pe ? Vs : s == qe ? ai : Hn;\n return o(a);\n }\n function Sa(a) {\n if (!a)\n return a === 0 ? a : 0;\n if (a = Yt(a), a === le || a === -le) {\n var s = a < 0 ? -1 : 1;\n return s * be;\n }\n return a === a ? a : 0;\n }\n function Ze(a) {\n var s = Sa(a), o = s % 1;\n return s === s ? o ? s - o : s : 0;\n }\n function Mo(a) {\n return a ? cn(Ze(a), 0, Pe) : 0;\n }\n function Yt(a) {\n if (typeof a == \"number\")\n return a;\n if (Rt(a))\n return ae;\n if (Or(a)) {\n var s = typeof a.valueOf == \"function\" ? a.valueOf() : a;\n a = Or(s) ? s + \"\" : s;\n }\n if (typeof a != \"string\")\n return a === 0 ? a : +a;\n a = tu(a);\n var o = q.test(a);\n return o || ee.test(a) ? rx(a.slice(2), o ? 2 : 8) : ie.test(a) ? ae : +a;\n }\n function Uo(a) {\n return da(a, kt(a));\n }\n function Hp(a) {\n return a ? cn(Ze(a), -Ee, Ee) : a === 0 ? a : 0;\n }\n function pr(a) {\n return a == null ? \"\" : Dt(a);\n }\n var Gp = Bn(function(a, s) {\n if (v0(s) || wt(s)) {\n da(s, Zr(s), a);\n return;\n }\n for (var o in s)\n mr.call(s, o) && u0(a, o, s[o]);\n }), Wo = Bn(function(a, s) {\n da(s, kt(s), a);\n }), Ui = Bn(function(a, s, o, d) {\n da(s, kt(s), a, d);\n }), Vp = Bn(function(a, s, o, d) {\n da(s, Zr(s), a, d);\n }), Xp = ka(Zs);\n function $p(a, s) {\n var o = bn(a);\n return s == null ? o : gu(o, s);\n }\n var zp = Qe(function(a, s) {\n a = wr(a);\n var o = -1, d = s.length, E = d > 2 ? s[2] : r;\n for (E && pt(s[0], s[1], E) && (d = 1); ++o < d; )\n for (var S = s[o], b = kt(S), W = -1, Y = b.length; ++W < Y; ) {\n var ce = b[W], ue = a[ce];\n (ue === r || sa(ue, Nn[ce]) && !mr.call(a, ce)) && (a[ce] = S[ce]);\n }\n return a;\n }), Kp = Qe(function(a) {\n return a.push(r, to), It(Ho, r, a);\n });\n function Yp(a, s) {\n return Qc(a, Ue(s, 3), xa);\n }\n function Zp(a, s) {\n return Qc(a, Ue(s, 3), qs);\n }\n function Jp(a, s) {\n return a == null ? a : Js(a, Ue(s, 3), kt);\n }\n function qp(a, s) {\n return a == null ? a : wu(a, Ue(s, 3), kt);\n }\n function Qp(a, s) {\n return a && xa(a, Ue(s, 3));\n }\n function jp(a, s) {\n return a && qs(a, Ue(s, 3));\n }\n function eg(a) {\n return a == null ? [] : Ei(a, Zr(a));\n }\n function rg(a) {\n return a == null ? [] : Ei(a, kt(a));\n }\n function Of(a, s, o) {\n var d = a == null ? r : un(a, s);\n return d === r ? o : d;\n }\n function tg(a, s) {\n return a != null && io(a, s, Fd);\n }\n function Df(a, s) {\n return a != null && io(a, s, Sd);\n }\n var ag = qu(function(a, s, o) {\n s != null && typeof s.toString != \"function\" && (s = fi.call(s)), a[s] = o;\n }, Nf(At)), ng = qu(function(a, s, o) {\n s != null && typeof s.toString != \"function\" && (s = fi.call(s)), mr.call(a, s) ? a[s].push(o) : a[s] = [o];\n }, Ue), ig = Qe(l0);\n function Zr(a) {\n return wt(a) ? vu(a) : rf(a);\n }\n function kt(a) {\n return wt(a) ? vu(a, !0) : bd(a);\n }\n function sg(a, s) {\n var o = {};\n return s = Ue(s, 3), xa(a, function(d, E, S) {\n Ta(o, s(d, E, S), d);\n }), o;\n }\n function fg(a, s) {\n var o = {};\n return s = Ue(s, 3), xa(a, function(d, E, S) {\n Ta(o, E, s(d, E, S));\n }), o;\n }\n var cg = Bn(function(a, s, o) {\n Ti(a, s, o);\n }), Ho = Bn(function(a, s, o, d) {\n Ti(a, s, o, d);\n }), ug = ka(function(a, s) {\n var o = {};\n if (a == null)\n return o;\n var d = !1;\n s = Ir(s, function(S) {\n return S = Xa(S, a), d || (d = S.length > 1), S;\n }), da(a, pf(a), o), d && (o = $t(o, m | _ | v, av));\n for (var E = s.length; E--; )\n cf(o, s[E]);\n return o;\n });\n function og(a, s) {\n return Go(a, bi(Ue(s)));\n }\n var lg = ka(function(a, s) {\n return a == null ? {} : Md(a, s);\n });\n function Go(a, s) {\n if (a == null)\n return {};\n var o = Ir(pf(a), function(d) {\n return [d];\n });\n return s = Ue(s), Ru(a, o, function(d, E) {\n return s(d, E[0]);\n });\n }\n function hg(a, s, o) {\n s = Xa(s, a);\n var d = -1, E = s.length;\n for (E || (E = 1, a = r); ++d < E; ) {\n var S = a == null ? r : a[va(s[d])];\n S === r && (d = E, S = o), a = Fa(S) ? S.call(a) : S;\n }\n return a;\n }\n function xg(a, s, o) {\n return a == null ? a : x0(a, s, o);\n }\n function dg(a, s, o, d) {\n return d = typeof d == \"function\" ? d : r, a == null ? a : x0(a, s, o, d);\n }\n var Vo = eo(Zr), Xo = eo(kt);\n function vg(a, s, o) {\n var d = Ye(a), E = d || za(a) || Wn(a);\n if (s = Ue(s, 4), o == null) {\n var S = a && a.constructor;\n E ? o = d ? new S() : [] : Or(a) ? o = Fa(S) ? bn(oi(a)) : {} : o = {};\n }\n return (E ? Gt : xa)(a, function(b, W, Y) {\n return s(o, b, W, Y);\n }), o;\n }\n function pg(a, s) {\n return a == null ? !0 : cf(a, s);\n }\n function gg(a, s, o) {\n return a == null ? a : Bu(a, s, lf(o));\n }\n function _g(a, s, o, d) {\n return d = typeof d == \"function\" ? d : r, a == null ? a : Bu(a, s, lf(o), d);\n }\n function Hn(a) {\n return a == null ? [] : Gs(a, Zr(a));\n }\n function mg(a) {\n return a == null ? [] : Gs(a, kt(a));\n }\n function Eg(a, s, o) {\n return o === r && (o = s, s = r), o !== r && (o = Yt(o), o = o === o ? o : 0), s !== r && (s = Yt(s), s = s === s ? s : 0), cn(Yt(a), s, o);\n }\n function Tg(a, s, o) {\n return s = Sa(s), o === r ? (o = s, s = 0) : o = Sa(o), a = Yt(a), Cd(a, s, o);\n }\n function wg(a, s, o) {\n if (o && typeof o != \"boolean\" && pt(a, s, o) && (s = o = r), o === r && (typeof s == \"boolean\" ? (o = s, s = r) : typeof a == \"boolean\" && (o = a, a = r)), a === r && s === r ? (a = 0, s = 1) : (a = Sa(a), s === r ? (s = a, a = 0) : s = Sa(s)), a > s) {\n var d = a;\n a = s, s = d;\n }\n if (o || a % 1 || s % 1) {\n var E = xu();\n return it(a + E * (s - a + ex(\"1e-\" + ((E + \"\").length - 1))), s);\n }\n return nf(a, s);\n }\n var kg = Mn(function(a, s, o) {\n return s = s.toLowerCase(), a + (o ? $o(s) : s);\n });\n function $o(a) {\n return Rf(pr(a).toLowerCase());\n }\n function zo(a) {\n return a = pr(a), a && a.replace(me, xx).replace(Xh, \"\");\n }\n function Ag(a, s, o) {\n a = pr(a), s = Dt(s);\n var d = a.length;\n o = o === r ? d : cn(Ze(o), 0, d);\n var E = o;\n return o -= s.length, o >= 0 && a.slice(o, E) == s;\n }\n function Fg(a) {\n return a = pr(a), a && Es.test(a) ? a.replace(Q0, dx) : a;\n }\n function Sg(a) {\n return a = pr(a), a && e0.test(a) ? a.replace(jn, \"\\\\$&\") : a;\n }\n var Cg = Mn(function(a, s, o) {\n return a + (o ? \"-\" : \"\") + s.toLowerCase();\n }), yg = Mn(function(a, s, o) {\n return a + (o ? \" \" : \"\") + s.toLowerCase();\n }), Ig = Yu(\"toLowerCase\");\n function Og(a, s, o) {\n a = pr(a), s = Ze(s);\n var d = s ? Dn(a) : 0;\n if (!s || d >= s)\n return a;\n var E = (s - d) / 2;\n return Ci(di(E), o) + a + Ci(xi(E), o);\n }\n function Dg(a, s, o) {\n a = pr(a), s = Ze(s);\n var d = s ? Dn(a) : 0;\n return s && d < s ? a + Ci(s - d, o) : a;\n }\n function Rg(a, s, o) {\n a = pr(a), s = Ze(s);\n var d = s ? Dn(a) : 0;\n return s && d < s ? Ci(s - d, o) + a : a;\n }\n function Ng(a, s, o) {\n return o || s == null ? s = 0 : s && (s = +s), Wx(pr(a).replace(r0, \"\"), s || 0);\n }\n function Lg(a, s, o) {\n return (o ? pt(a, s, o) : s === r) ? s = 1 : s = Ze(s), sf(pr(a), s);\n }\n function Pg() {\n var a = arguments, s = pr(a[0]);\n return a.length < 3 ? s : s.replace(a[1], a[2]);\n }\n var bg = Mn(function(a, s, o) {\n return a + (o ? \"_\" : \"\") + s.toLowerCase();\n });\n function Bg(a, s, o) {\n return o && typeof o != \"number\" && pt(a, s, o) && (s = o = r), o = o === r ? Pe : o >>> 0, o ? (a = pr(a), a && (typeof s == \"string\" || s != null && !If(s)) && (s = Dt(s), !s && On(a)) ? $a(na(a), 0, o) : a.split(s, o)) : [];\n }\n var Mg = Mn(function(a, s, o) {\n return a + (o ? \" \" : \"\") + Rf(s);\n });\n function Ug(a, s, o) {\n return a = pr(a), o = o == null ? 0 : cn(Ze(o), 0, a.length), s = Dt(s), a.slice(o, o + s.length) == s;\n }\n function Wg(a, s, o) {\n var d = F.templateSettings;\n o && pt(a, s, o) && (s = r), a = pr(a), s = Ui({}, s, d, ro);\n var E = Ui({}, s.imports, d.imports, ro), S = Zr(E), b = Gs(E, S), W, Y, ce = 0, ue = s.interpolate || Fe, oe = \"__p += '\", ke = Xs(\n (s.escape || Fe).source + \"|\" + ue.source + \"|\" + (ue === j0 ? L : Fe).source + \"|\" + (s.evaluate || Fe).source + \"|$\",\n \"g\"\n ), Ne = \"//# sourceURL=\" + (mr.call(s, \"sourceURL\") ? (s.sourceURL + \"\").replace(/\\s/g, \" \") : \"lodash.templateSources[\" + ++Zh + \"]\") + `\n`;\n a.replace(ke, function(He, rr, cr, Nt, gt, Lt) {\n return cr || (cr = Nt), oe += a.slice(ce, Lt).replace(de, vx), rr && (W = !0, oe += `' +\n__e(` + rr + `) +\n'`), gt && (Y = !0, oe += `';\n` + gt + `;\n__p += '`), cr && (oe += `' +\n((__t = (` + cr + `)) == null ? '' : __t) +\n'`), ce = Lt + He.length, He;\n }), oe += `';\n`;\n var We = mr.call(s, \"variable\") && s.variable;\n if (!We)\n oe = `with (obj) {\n` + oe + `\n}\n`;\n else if (I.test(We))\n throw new ze(u);\n oe = (Y ? oe.replace(Y0, \"\") : oe).replace(Z0, \"$1\").replace(J0, \"$1;\"), oe = \"function(\" + (We || \"obj\") + `) {\n` + (We ? \"\" : `obj || (obj = {});\n`) + \"var __t, __p = ''\" + (W ? \", __e = _.escape\" : \"\") + (Y ? `, __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n` : `;\n`) + oe + `return __p\n}`;\n var Je = Yo(function() {\n return vr(S, Ne + \"return \" + oe).apply(r, b);\n });\n if (Je.source = oe, yf(Je))\n throw Je;\n return Je;\n }\n function Hg(a) {\n return pr(a).toLowerCase();\n }\n function Gg(a) {\n return pr(a).toUpperCase();\n }\n function Vg(a, s, o) {\n if (a = pr(a), a && (o || s === r))\n return tu(a);\n if (!a || !(s = Dt(s)))\n return a;\n var d = na(a), E = na(s), S = au(d, E), b = nu(d, E) + 1;\n return $a(d, S, b).join(\"\");\n }\n function Xg(a, s, o) {\n if (a = pr(a), a && (o || s === r))\n return a.slice(0, su(a) + 1);\n if (!a || !(s = Dt(s)))\n return a;\n var d = na(a), E = nu(d, na(s)) + 1;\n return $a(d, 0, E).join(\"\");\n }\n function $g(a, s, o) {\n if (a = pr(a), a && (o || s === r))\n return a.replace(r0, \"\");\n if (!a || !(s = Dt(s)))\n return a;\n var d = na(a), E = au(d, na(s));\n return $a(d, E).join(\"\");\n }\n function zg(a, s) {\n var o = J, d = z;\n if (Or(s)) {\n var E = \"separator\" in s ? s.separator : E;\n o = \"length\" in s ? Ze(s.length) : o, d = \"omission\" in s ? Dt(s.omission) : d;\n }\n a = pr(a);\n var S = a.length;\n if (On(a)) {\n var b = na(a);\n S = b.length;\n }\n if (o >= S)\n return a;\n var W = o - Dn(d);\n if (W < 1)\n return d;\n var Y = b ? $a(b, 0, W).join(\"\") : a.slice(0, W);\n if (E === r)\n return Y + d;\n if (b && (W += Y.length - W), If(E)) {\n if (a.slice(W).search(E)) {\n var ce, ue = Y;\n for (E.global || (E = Xs(E.source, pr(Q.exec(E)) + \"g\")), E.lastIndex = 0; ce = E.exec(ue); )\n var oe = ce.index;\n Y = Y.slice(0, oe === r ? W : oe);\n }\n } else if (a.indexOf(Dt(E), W) != W) {\n var ke = Y.lastIndexOf(E);\n ke > -1 && (Y = Y.slice(0, ke));\n }\n return Y + d;\n }\n function Kg(a) {\n return a = pr(a), a && Cn.test(a) ? a.replace(q0, wx) : a;\n }\n var Yg = Mn(function(a, s, o) {\n return a + (o ? \" \" : \"\") + s.toUpperCase();\n }), Rf = Yu(\"toUpperCase\");\n function Ko(a, s, o) {\n return a = pr(a), s = o ? r : s, s === r ? gx(a) ? Fx(a) : cx(a) : a.match(s) || [];\n }\n var Yo = Qe(function(a, s) {\n try {\n return It(a, r, s);\n } catch (o) {\n return yf(o) ? o : new ze(o);\n }\n }), Zg = ka(function(a, s) {\n return Gt(s, function(o) {\n o = va(o), Ta(a, o, Sf(a[o], a));\n }), a;\n });\n function Jg(a) {\n var s = a == null ? 0 : a.length, o = Ue();\n return a = s ? Ir(a, function(d) {\n if (typeof d[1] != \"function\")\n throw new Vt(c);\n return [o(d[0]), d[1]];\n }) : [], Qe(function(d) {\n for (var E = -1; ++E < s; ) {\n var S = a[E];\n if (It(S[0], this, d))\n return It(S[1], this, d);\n }\n });\n }\n function qg(a) {\n return wd($t(a, m));\n }\n function Nf(a) {\n return function() {\n return a;\n };\n }\n function Qg(a, s) {\n return a == null || a !== a ? s : a;\n }\n var jg = Ju(), e_ = Ju(!0);\n function At(a) {\n return a;\n }\n function Lf(a) {\n return Su(typeof a == \"function\" ? a : $t(a, m));\n }\n function r_(a) {\n return yu($t(a, m));\n }\n function t_(a, s) {\n return Iu(a, $t(s, m));\n }\n var a_ = Qe(function(a, s) {\n return function(o) {\n return l0(o, a, s);\n };\n }), n_ = Qe(function(a, s) {\n return function(o) {\n return l0(a, o, s);\n };\n });\n function Pf(a, s, o) {\n var d = Zr(s), E = Ei(s, d);\n o == null && !(Or(s) && (E.length || !d.length)) && (o = s, s = a, a = this, E = Ei(s, Zr(s)));\n var S = !(Or(o) && \"chain\" in o) || !!o.chain, b = Fa(a);\n return Gt(E, function(W) {\n var Y = s[W];\n a[W] = Y, b && (a.prototype[W] = function() {\n var ce = this.__chain__;\n if (S || ce) {\n var ue = a(this.__wrapped__), oe = ue.__actions__ = Tt(this.__actions__);\n return oe.push({ func: Y, args: arguments, thisArg: a }), ue.__chain__ = ce, ue;\n }\n return Y.apply(a, Ua([this.value()], arguments));\n });\n }), a;\n }\n function i_() {\n return jr._ === this && (jr._ = Dx), this;\n }\n function bf() {\n }\n function s_(a) {\n return a = Ze(a), Qe(function(s) {\n return Ou(s, a);\n });\n }\n var f_ = xf(Ir), c_ = xf(qc), u_ = xf(Bs);\n function Zo(a) {\n return Ef(a) ? Ms(va(a)) : Ud(a);\n }\n function o_(a) {\n return function(s) {\n return a == null ? r : un(a, s);\n };\n }\n var l_ = Qu(), h_ = Qu(!0);\n function Bf() {\n return [];\n }\n function Mf() {\n return !1;\n }\n function x_() {\n return {};\n }\n function d_() {\n return \"\";\n }\n function v_() {\n return !0;\n }\n function p_(a, s) {\n if (a = Ze(a), a < 1 || a > Ee)\n return [];\n var o = Pe, d = it(a, Pe);\n s = Ue(s), a -= Pe;\n for (var E = Hs(d, s); ++o < a; )\n s(o);\n return E;\n }\n function g_(a) {\n return Ye(a) ? Ir(a, va) : Rt(a) ? [a] : Tt(vo(pr(a)));\n }\n function __(a) {\n var s = ++Ix;\n return pr(a) + s;\n }\n var m_ = Si(function(a, s) {\n return a + s;\n }, 0), E_ = df(\"ceil\"), T_ = Si(function(a, s) {\n return a / s;\n }, 1), w_ = df(\"floor\");\n function k_(a) {\n return a && a.length ? mi(a, At, Qs) : r;\n }\n function A_(a, s) {\n return a && a.length ? mi(a, Ue(s, 2), Qs) : r;\n }\n function F_(a) {\n return eu(a, At);\n }\n function S_(a, s) {\n return eu(a, Ue(s, 2));\n }\n function C_(a) {\n return a && a.length ? mi(a, At, tf) : r;\n }\n function y_(a, s) {\n return a && a.length ? mi(a, Ue(s, 2), tf) : r;\n }\n var I_ = Si(function(a, s) {\n return a * s;\n }, 1), O_ = df(\"round\"), D_ = Si(function(a, s) {\n return a - s;\n }, 0);\n function R_(a) {\n return a && a.length ? Ws(a, At) : 0;\n }\n function N_(a, s) {\n return a && a.length ? Ws(a, Ue(s, 2)) : 0;\n }\n return F.after = rp, F.ary = So, F.assign = Gp, F.assignIn = Wo, F.assignInWith = Ui, F.assignWith = Vp, F.at = Xp, F.before = Co, F.bind = Sf, F.bindAll = Zg, F.bindKey = yo, F.castArray = xp, F.chain = ko, F.chunk = wv, F.compact = kv, F.concat = Av, F.cond = Jg, F.conforms = qg, F.constant = Nf, F.countBy = R2, F.create = $p, F.curry = Io, F.curryRight = Oo, F.debounce = Do, F.defaults = zp, F.defaultsDeep = Kp, F.defer = tp, F.delay = ap, F.difference = Fv, F.differenceBy = Sv, F.differenceWith = Cv, F.drop = yv, F.dropRight = Iv, F.dropRightWhile = Ov, F.dropWhile = Dv, F.fill = Rv, F.filter = L2, F.flatMap = B2, F.flatMapDeep = M2, F.flatMapDepth = U2, F.flatten = mo, F.flattenDeep = Nv, F.flattenDepth = Lv, F.flip = np, F.flow = jg, F.flowRight = e_, F.fromPairs = Pv, F.functions = eg, F.functionsIn = rg, F.groupBy = W2, F.initial = Bv, F.intersection = Mv, F.intersectionBy = Uv, F.intersectionWith = Wv, F.invert = ag, F.invertBy = ng, F.invokeMap = G2, F.iteratee = Lf, F.keyBy = V2, F.keys = Zr, F.keysIn = kt, F.map = Ni, F.mapKeys = sg, F.mapValues = fg, F.matches = r_, F.matchesProperty = t_, F.memoize = Pi, F.merge = cg, F.mergeWith = Ho, F.method = a_, F.methodOf = n_, F.mixin = Pf, F.negate = bi, F.nthArg = s_, F.omit = ug, F.omitBy = og, F.once = ip, F.orderBy = X2, F.over = f_, F.overArgs = sp, F.overEvery = c_, F.overSome = u_, F.partial = Cf, F.partialRight = Ro, F.partition = $2, F.pick = lg, F.pickBy = Go, F.property = Zo, F.propertyOf = o_, F.pull = Xv, F.pullAll = To, F.pullAllBy = $v, F.pullAllWith = zv, F.pullAt = Kv, F.range = l_, F.rangeRight = h_, F.rearg = fp, F.reject = Y2, F.remove = Yv, F.rest = cp, F.reverse = Af, F.sampleSize = J2, F.set = xg, F.setWith = dg, F.shuffle = q2, F.slice = Zv, F.sortBy = ep, F.sortedUniq = t2, F.sortedUniqBy = a2, F.split = Bg, F.spread = up, F.tail = n2, F.take = i2, F.takeRight = s2, F.takeRightWhile = f2, F.takeWhile = c2, F.tap = k2, F.throttle = op, F.thru = Ri, F.toArray = Bo, F.toPairs = Vo, F.toPairsIn = Xo, F.toPath = g_, F.toPlainObject = Uo, F.transform = vg, F.unary = lp, F.union = u2, F.unionBy = o2, F.unionWith = l2, F.uniq = h2, F.uniqBy = x2, F.uniqWith = d2, F.unset = pg, F.unzip = Ff, F.unzipWith = wo, F.update = gg, F.updateWith = _g, F.values = Hn, F.valuesIn = mg, F.without = v2, F.words = Ko, F.wrap = hp, F.xor = p2, F.xorBy = g2, F.xorWith = _2, F.zip = m2, F.zipObject = E2, F.zipObjectDeep = T2, F.zipWith = w2, F.entries = Vo, F.entriesIn = Xo, F.extend = Wo, F.extendWith = Ui, Pf(F, F), F.add = m_, F.attempt = Yo, F.camelCase = kg, F.capitalize = $o, F.ceil = E_, F.clamp = Eg, F.clone = dp, F.cloneDeep = pp, F.cloneDeepWith = gp, F.cloneWith = vp, F.conformsTo = _p, F.deburr = zo, F.defaultTo = Qg, F.divide = T_, F.endsWith = Ag, F.eq = sa, F.escape = Fg, F.escapeRegExp = Sg, F.every = N2, F.find = P2, F.findIndex = go, F.findKey = Yp, F.findLast = b2, F.findLastIndex = _o, F.findLastKey = Zp, F.floor = w_, F.forEach = Ao, F.forEachRight = Fo, F.forIn = Jp, F.forInRight = qp, F.forOwn = Qp, F.forOwnRight = jp, F.get = Of, F.gt = mp, F.gte = Ep, F.has = tg, F.hasIn = Df, F.head = Eo, F.identity = At, F.includes = H2, F.indexOf = bv, F.inRange = Tg, F.invoke = ig, F.isArguments = hn, F.isArray = Ye, F.isArrayBuffer = Tp, F.isArrayLike = wt, F.isArrayLikeObject = Lr, F.isBoolean = wp, F.isBuffer = za, F.isDate = kp, F.isElement = Ap, F.isEmpty = Fp, F.isEqual = Sp, F.isEqualWith = Cp, F.isError = yf, F.isFinite = yp, F.isFunction = Fa, F.isInteger = No, F.isLength = Bi, F.isMap = Lo, F.isMatch = Ip, F.isMatchWith = Op, F.isNaN = Dp, F.isNative = Rp, F.isNil = Lp, F.isNull = Np, F.isNumber = Po, F.isObject = Or, F.isObjectLike = Dr, F.isPlainObject = g0, F.isRegExp = If, F.isSafeInteger = Pp, F.isSet = bo, F.isString = Mi, F.isSymbol = Rt, F.isTypedArray = Wn, F.isUndefined = bp, F.isWeakMap = Bp, F.isWeakSet = Mp, F.join = Hv, F.kebabCase = Cg, F.last = Kt, F.lastIndexOf = Gv, F.lowerCase = yg, F.lowerFirst = Ig, F.lt = Up, F.lte = Wp, F.max = k_, F.maxBy = A_, F.mean = F_, F.meanBy = S_, F.min = C_, F.minBy = y_, F.stubArray = Bf, F.stubFalse = Mf, F.stubObject = x_, F.stubString = d_, F.stubTrue = v_, F.multiply = I_, F.nth = Vv, F.noConflict = i_, F.noop = bf, F.now = Li, F.pad = Og, F.padEnd = Dg, F.padStart = Rg, F.parseInt = Ng, F.random = wg, F.reduce = z2, F.reduceRight = K2, F.repeat = Lg, F.replace = Pg, F.result = hg, F.round = O_, F.runInContext = X, F.sample = Z2, F.size = Q2, F.snakeCase = bg, F.some = j2, F.sortedIndex = Jv, F.sortedIndexBy = qv, F.sortedIndexOf = Qv, F.sortedLastIndex = jv, F.sortedLastIndexBy = e2, F.sortedLastIndexOf = r2, F.startCase = Mg, F.startsWith = Ug, F.subtract = D_, F.sum = R_, F.sumBy = N_, F.template = Wg, F.times = p_, F.toFinite = Sa, F.toInteger = Ze, F.toLength = Mo, F.toLower = Hg, F.toNumber = Yt, F.toSafeInteger = Hp, F.toString = pr, F.toUpper = Gg, F.trim = Vg, F.trimEnd = Xg, F.trimStart = $g, F.truncate = zg, F.unescape = Kg, F.uniqueId = __, F.upperCase = Yg, F.upperFirst = Rf, F.each = Ao, F.eachRight = Fo, F.first = Eo, Pf(F, function() {\n var a = {};\n return xa(F, function(s, o) {\n mr.call(F.prototype, o) || (a[o] = s);\n }), a;\n }(), { chain: !1 }), F.VERSION = n, Gt([\"bind\", \"bindKey\", \"curry\", \"curryRight\", \"partial\", \"partialRight\"], function(a) {\n F[a].placeholder = F;\n }), Gt([\"drop\", \"take\"], function(a, s) {\n nr.prototype[a] = function(o) {\n o = o === r ? 1 : $r(Ze(o), 0);\n var d = this.__filtered__ && !s ? new nr(this) : this.clone();\n return d.__filtered__ ? d.__takeCount__ = it(o, d.__takeCount__) : d.__views__.push({\n size: it(o, Pe),\n type: a + (d.__dir__ < 0 ? \"Right\" : \"\")\n }), d;\n }, nr.prototype[a + \"Right\"] = function(o) {\n return this.reverse()[a](o).reverse();\n };\n }), Gt([\"filter\", \"map\", \"takeWhile\"], function(a, s) {\n var o = s + 1, d = o == Ae || o == De;\n nr.prototype[a] = function(E) {\n var S = this.clone();\n return S.__iteratees__.push({\n iteratee: Ue(E, 3),\n type: o\n }), S.__filtered__ = S.__filtered__ || d, S;\n };\n }), Gt([\"head\", \"last\"], function(a, s) {\n var o = \"take\" + (s ? \"Right\" : \"\");\n nr.prototype[a] = function() {\n return this[o](1).value()[0];\n };\n }), Gt([\"initial\", \"tail\"], function(a, s) {\n var o = \"drop\" + (s ? \"\" : \"Right\");\n nr.prototype[a] = function() {\n return this.__filtered__ ? new nr(this) : this[o](1);\n };\n }), nr.prototype.compact = function() {\n return this.filter(At);\n }, nr.prototype.find = function(a) {\n return this.filter(a).head();\n }, nr.prototype.findLast = function(a) {\n return this.reverse().find(a);\n }, nr.prototype.invokeMap = Qe(function(a, s) {\n return typeof a == \"function\" ? new nr(this) : this.map(function(o) {\n return l0(o, a, s);\n });\n }), nr.prototype.reject = function(a) {\n return this.filter(bi(Ue(a)));\n }, nr.prototype.slice = function(a, s) {\n a = Ze(a);\n var o = this;\n return o.__filtered__ && (a > 0 || s < 0) ? new nr(o) : (a < 0 ? o = o.takeRight(-a) : a && (o = o.drop(a)), s !== r && (s = Ze(s), o = s < 0 ? o.dropRight(-s) : o.take(s - a)), o);\n }, nr.prototype.takeRightWhile = function(a) {\n return this.reverse().takeWhile(a).reverse();\n }, nr.prototype.toArray = function() {\n return this.take(Pe);\n }, xa(nr.prototype, function(a, s) {\n var o = /^(?:filter|find|map|reject)|While$/.test(s), d = /^(?:head|last)$/.test(s), E = F[d ? \"take\" + (s == \"last\" ? \"Right\" : \"\") : s], S = d || /^find/.test(s);\n E && (F.prototype[s] = function() {\n var b = this.__wrapped__, W = d ? [1] : arguments, Y = b instanceof nr, ce = W[0], ue = Y || Ye(b), oe = function(rr) {\n var cr = E.apply(F, Ua([rr], W));\n return d && ke ? cr[0] : cr;\n };\n ue && o && typeof ce == \"function\" && ce.length != 1 && (Y = ue = !1);\n var ke = this.__chain__, Ne = !!this.__actions__.length, We = S && !ke, Je = Y && !Ne;\n if (!S && ue) {\n b = Je ? b : new nr(this);\n var He = a.apply(b, W);\n return He.__actions__.push({ func: Ri, args: [oe], thisArg: r }), new Xt(He, ke);\n }\n return We && Je ? a.apply(this, W) : (He = this.thru(oe), We ? d ? He.value()[0] : He.value() : He);\n });\n }), Gt([\"pop\", \"push\", \"shift\", \"sort\", \"splice\", \"unshift\"], function(a) {\n var s = ni[a], o = /^(?:push|sort|unshift)$/.test(a) ? \"tap\" : \"thru\", d = /^(?:pop|shift)$/.test(a);\n F.prototype[a] = function() {\n var E = arguments;\n if (d && !this.__chain__) {\n var S = this.value();\n return s.apply(Ye(S) ? S : [], E);\n }\n return this[o](function(b) {\n return s.apply(Ye(b) ? b : [], E);\n });\n };\n }), xa(nr.prototype, function(a, s) {\n var o = F[s];\n if (o) {\n var d = o.name + \"\";\n mr.call(Pn, d) || (Pn[d] = []), Pn[d].push({ name: s, func: o });\n }\n }), Pn[Fi(r, p).name] = [{\n name: \"wrapper\",\n func: r\n }], nr.prototype.clone = Kx, nr.prototype.reverse = Yx, nr.prototype.value = Zx, F.prototype.at = A2, F.prototype.chain = F2, F.prototype.commit = S2, F.prototype.next = C2, F.prototype.plant = I2, F.prototype.reverse = O2, F.prototype.toJSON = F.prototype.valueOf = F.prototype.value = D2, F.prototype.first = F.prototype.head, n0 && (F.prototype[n0] = y2), F;\n }, Rn = Sx();\n an ? ((an.exports = Rn)._ = Rn, Ns._ = Rn) : jr._ = Rn;\n }).call(M_);\n }(_0, _0.exports)), _0.exports;\n}\nvar W_ = U_();\nconst ji = /* @__PURE__ */ B_(W_);\nfunction H_() {\n function e(i) {\n const f = Uf(i), c = Wf(f), u = i.substring(i.indexOf(\".\") + 1);\n return f === i ? c : ji.get(c, u);\n }\n function t(i, f) {\n const c = Uf(i);\n if (f == null) n(c);\n else if (c === i) Qi.set(c, JSON.stringify(f));\n else {\n const u = Wf(c) || {}, l = i.substring(i.indexOf(\".\") + 1), h = ji.set(u, l, f);\n Qi.set(c, JSON.stringify(h));\n }\n }\n function r(i, f) {\n return e(i) == null && t(i, f), e(i);\n }\n function n(i) {\n const f = Uf(i);\n if (f === i) Qi.remove(f);\n else {\n const c = Wf(f), u = i.substring(i.indexOf(\".\") + 1);\n ji.unset(c, u), t(f, c);\n }\n }\n return { get: e, set: t, remove: n, load: r };\n}\nfunction Uf(e) {\n let r = e.split(\".\")[0], n = r.indexOf(\"[\");\n return n === -1 ? r : r.substring(0, n);\n}\nfunction Wf(e) {\n const t = Qi.get(e);\n try {\n return JSON.parse(t);\n } catch {\n return t;\n }\n}\nfunction tS() {\n const e = { client: \"client\", user: \"uid\", bearer: \"bearer\" }, { load: t, get: r, remove: n, set: i } = H_();\n let f = P_().replace(/-/g, \"_\");\n f = t(e.client, f);\n const c = () => r(e.user);\n return { $client: f, getUserInfo: c, setUserInfo: (m) => i(e.user, m), checkUserInfo: (m) => c() === m, logout: () => n(e.user), bearer: () => c() ? \"Bearer 123\" : null, keys: e };\n}\nfunction aS() {\n const e = L_(!1);\n function t() {\n return e.value = !0, new Promise((n) => {\n document.addEventListener(\"paste\", (i) => {\n var c;\n const f = ((c = i.clipboardData) == null ? void 0 : c.getData(\"text/plain\")) || \"\";\n n(f), e.value = !1;\n }, { once: !0 });\n });\n }\n function r() {\n const n = navigator.clipboard;\n return new Promise((i) => {\n n ? navigator.clipboard.readText().then((f) => i(f)) : i(\"浏览器不支持剪切板\");\n });\n }\n return { openPaster: t, pending: e, getClipboardData: r };\n}\n/*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */\nvar Qt = 1200, G_ = [874, 932, 936, 949, 950, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1e4], ic = {\n 0: 1252,\n /* ANSI */\n 1: 65001,\n /* DEFAULT */\n 2: 65001,\n /* SYMBOL */\n 77: 1e4,\n /* MAC */\n 128: 932,\n /* SHIFTJIS */\n 129: 949,\n /* HANGUL */\n 130: 1361,\n /* JOHAB */\n 134: 936,\n /* GB2312 */\n 136: 950,\n /* CHINESEBIG5 */\n 161: 1253,\n /* GREEK */\n 162: 1254,\n /* TURKISH */\n 163: 1258,\n /* VIETNAMESE */\n 177: 1255,\n /* HEBREW */\n 178: 1256,\n /* ARABIC */\n 186: 1257,\n /* BALTIC */\n 204: 1251,\n /* RUSSIAN */\n 222: 874,\n /* THAI */\n 238: 1250,\n /* EASTEUROPE */\n 255: 1252,\n /* OEM */\n 69: 6969\n /* MISC */\n}, sc = function(e) {\n G_.indexOf(e) != -1 && (ic[0] = e);\n};\nfunction V_() {\n sc(1252);\n}\nvar ua = function(e) {\n Qt = e, sc(e);\n};\nfunction jl() {\n ua(1200), V_();\n}\nfunction Qo(e) {\n for (var t = [], r = 0, n = e.length; r < n; ++r) t[r] = e.charCodeAt(r);\n return t;\n}\nfunction e1(e) {\n for (var t = [], r = 0; r < e.length >> 1; ++r) t[r] = String.fromCharCode(e.charCodeAt(2 * r) + (e.charCodeAt(2 * r + 1) << 8));\n return t.join(\"\");\n}\nfunction X_(e) {\n for (var t = [], r = 0; r < e.length >> 1; ++r) t[r] = String.fromCharCode(e[2 * r] + (e[2 * r + 1] << 8));\n return t.join(\"\");\n}\nfunction r1(e) {\n for (var t = [], r = 0; r < e.length >> 1; ++r) t[r] = String.fromCharCode(e.charCodeAt(2 * r + 1) + (e.charCodeAt(2 * r) << 8));\n return t.join(\"\");\n}\nvar m0 = function(e) {\n var t = e.charCodeAt(0), r = e.charCodeAt(1);\n return t == 255 && r == 254 ? e1(e.slice(2)) : t == 254 && r == 255 ? r1(e.slice(2)) : t == 65279 ? e.slice(1) : e;\n}, Gi = function(t) {\n return String.fromCharCode(t);\n}, jo = function(t) {\n return String.fromCharCode(t);\n}, $_ = null, Za = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\nfunction el(e) {\n for (var t = \"\", r = 0, n = 0, i = 0, f = 0, c = 0, u = 0, l = 0, h = 0; h < e.length; )\n r = e.charCodeAt(h++), f = r >> 2, n = e.charCodeAt(h++), c = (r & 3) << 4 | n >> 4, i = e.charCodeAt(h++), u = (n & 15) << 2 | i >> 6, l = i & 63, isNaN(n) ? u = l = 64 : isNaN(i) && (l = 64), t += Za.charAt(f) + Za.charAt(c) + Za.charAt(u) + Za.charAt(l);\n return t;\n}\nfunction Ut(e) {\n var t = \"\", r = 0, n = 0, i = 0, f = 0, c = 0, u = 0, l = 0;\n if (e.slice(0, 5) == \"data:\") {\n var h = e.slice(0, 1024).indexOf(\";base64,\");\n h > -1 && (e = e.slice(h + 8));\n }\n e = e.replace(/[^\\w\\+\\/\\=]/g, \"\");\n for (var h = 0; h < e.length; )\n f = Za.indexOf(e.charAt(h++)), c = Za.indexOf(e.charAt(h++)), r = f << 2 | c >> 4, t += String.fromCharCode(r), u = Za.indexOf(e.charAt(h++)), n = (c & 15) << 4 | u >> 2, u !== 64 && (t += String.fromCharCode(n)), l = Za.indexOf(e.charAt(h++)), i = (u & 3) << 6 | l, l !== 64 && (t += String.fromCharCode(i));\n return t;\n}\nvar tr = /* @__PURE__ */ function() {\n return typeof Buffer < \"u\" && typeof process < \"u\" && typeof process.versions < \"u\" && !!process.versions.node;\n}(), en = /* @__PURE__ */ function() {\n if (typeof Buffer < \"u\") {\n var e = !Buffer.from;\n if (!e) try {\n Buffer.from(\"foo\", \"utf8\");\n } catch {\n e = !0;\n }\n return e ? function(t, r) {\n return r ? new Buffer(t, r) : new Buffer(t);\n } : Buffer.from.bind(Buffer);\n }\n return function() {\n };\n}(), N0 = /* @__PURE__ */ function() {\n if (typeof Buffer > \"u\") return !1;\n var e = en([65, 0]);\n if (!e) return !1;\n var t = e.toString(\"utf16le\");\n return t.length == 1;\n}();\nfunction qa(e) {\n return tr ? Buffer.alloc ? Buffer.alloc(e) : new Buffer(e) : typeof Uint8Array < \"u\" ? new Uint8Array(e) : new Array(e);\n}\nfunction rl(e) {\n return tr ? Buffer.allocUnsafe ? Buffer.allocUnsafe(e) : new Buffer(e) : typeof Uint8Array < \"u\" ? new Uint8Array(e) : new Array(e);\n}\nvar bt = function(t) {\n return tr ? en(t, \"binary\") : t.split(\"\").map(function(r) {\n return r.charCodeAt(0) & 255;\n });\n};\nfunction Na(e) {\n if (Array.isArray(e)) return e.map(function(n) {\n return String.fromCharCode(n);\n }).join(\"\");\n for (var t = [], r = 0; r < e.length; ++r) t[r] = String.fromCharCode(e[r]);\n return t.join(\"\");\n}\nfunction fc(e) {\n if (typeof ArrayBuffer > \"u\") throw new Error(\"Unsupported\");\n if (e instanceof ArrayBuffer) return fc(new Uint8Array(e));\n for (var t = new Array(e.length), r = 0; r < e.length; ++r) t[r] = e[r];\n return t;\n}\nvar Ya = tr ? function(e) {\n return Buffer.concat(e.map(function(t) {\n return Buffer.isBuffer(t) ? t : en(t);\n }));\n} : function(e) {\n if (typeof Uint8Array < \"u\") {\n var t = 0, r = 0;\n for (t = 0; t < e.length; ++t) r += e[t].length;\n var n = new Uint8Array(r), i = 0;\n for (t = 0, r = 0; t < e.length; r += i, ++t)\n i = e[t].length, e[t] instanceof Uint8Array ? n.set(e[t], r) : typeof e[t] == \"string\" ? n.set(new Uint8Array(bt(e[t])), r) : n.set(new Uint8Array(e[t]), r);\n return n;\n }\n return [].concat.apply([], e.map(function(f) {\n return Array.isArray(f) ? f : [].slice.call(f);\n }));\n};\nfunction z_(e) {\n for (var t = [], r = 0, n = e.length + 250, i = qa(e.length + 255), f = 0; f < e.length; ++f) {\n var c = e.charCodeAt(f);\n if (c < 128) i[r++] = c;\n else if (c < 2048)\n i[r++] = 192 | c >> 6 & 31, i[r++] = 128 | c & 63;\n else if (c >= 55296 && c < 57344) {\n c = (c & 1023) + 64;\n var u = e.charCodeAt(++f) & 1023;\n i[r++] = 240 | c >> 8 & 7, i[r++] = 128 | c >> 2 & 63, i[r++] = 128 | u >> 6 & 15 | (c & 3) << 4, i[r++] = 128 | u & 63;\n } else\n i[r++] = 224 | c >> 12 & 15, i[r++] = 128 | c >> 6 & 63, i[r++] = 128 | c & 63;\n r > n && (t.push(i.slice(0, r)), r = 0, i = qa(65535), n = 65530);\n }\n return t.push(i.slice(0, r)), Ya(t);\n}\nvar St = /\\u0000/g, E0 = /[\\u0001-\\u0006]/g;\nfunction zn(e) {\n for (var t = \"\", r = e.length - 1; r >= 0; ) t += e.charAt(r--);\n return t;\n}\nfunction oa(e, t) {\n var r = \"\" + e;\n return r.length >= t ? r : ur(\"0\", t - r.length) + r;\n}\nfunction cc(e, t) {\n var r = \"\" + e;\n return r.length >= t ? r : ur(\" \", t - r.length) + r;\n}\nfunction es(e, t) {\n var r = \"\" + e;\n return r.length >= t ? r : r + ur(\" \", t - r.length);\n}\nfunction K_(e, t) {\n var r = \"\" + Math.round(e);\n return r.length >= t ? r : ur(\"0\", t - r.length) + r;\n}\nfunction Y_(e, t) {\n var r = \"\" + e;\n return r.length >= t ? r : ur(\"0\", t - r.length) + r;\n}\nvar tl = /* @__PURE__ */ Math.pow(2, 32);\nfunction Gn(e, t) {\n if (e > tl || e < -tl) return K_(e, t);\n var r = Math.round(e);\n return Y_(r, t);\n}\nfunction rs(e, t) {\n return t = t || 0, e.length >= 7 + t && (e.charCodeAt(t) | 32) === 103 && (e.charCodeAt(t + 1) | 32) === 101 && (e.charCodeAt(t + 2) | 32) === 110 && (e.charCodeAt(t + 3) | 32) === 101 && (e.charCodeAt(t + 4) | 32) === 114 && (e.charCodeAt(t + 5) | 32) === 97 && (e.charCodeAt(t + 6) | 32) === 108;\n}\nvar al = [\n [\"Sun\", \"Sunday\"],\n [\"Mon\", \"Monday\"],\n [\"Tue\", \"Tuesday\"],\n [\"Wed\", \"Wednesday\"],\n [\"Thu\", \"Thursday\"],\n [\"Fri\", \"Friday\"],\n [\"Sat\", \"Saturday\"]\n], Hf = [\n [\"J\", \"Jan\", \"January\"],\n [\"F\", \"Feb\", \"February\"],\n [\"M\", \"Mar\", \"March\"],\n [\"A\", \"Apr\", \"April\"],\n [\"M\", \"May\", \"May\"],\n [\"J\", \"Jun\", \"June\"],\n [\"J\", \"Jul\", \"July\"],\n [\"A\", \"Aug\", \"August\"],\n [\"S\", \"Sep\", \"September\"],\n [\"O\", \"Oct\", \"October\"],\n [\"N\", \"Nov\", \"November\"],\n [\"D\", \"Dec\", \"December\"]\n];\nfunction Z_(e) {\n return e || (e = {}), e[0] = \"General\", e[1] = \"0\", e[2] = \"0.00\", e[3] = \"#,##0\", e[4] = \"#,##0.00\", e[9] = \"0%\", e[10] = \"0.00%\", e[11] = \"0.00E+00\", e[12] = \"# ?/?\", e[13] = \"# ??/??\", e[14] = \"m/d/yy\", e[15] = \"d-mmm-yy\", e[16] = \"d-mmm\", e[17] = \"mmm-yy\", e[18] = \"h:mm AM/PM\", e[19] = \"h:mm:ss AM/PM\", e[20] = \"h:mm\", e[21] = \"h:mm:ss\", e[22] = \"m/d/yy h:mm\", e[37] = \"#,##0 ;(#,##0)\", e[38] = \"#,##0 ;[Red](#,##0)\", e[39] = \"#,##0.00;(#,##0.00)\", e[40] = \"#,##0.00;[Red](#,##0.00)\", e[45] = \"mm:ss\", e[46] = \"[h]:mm:ss\", e[47] = \"mmss.0\", e[48] = \"##0.0E+0\", e[49] = \"@\", e[56] = '\"上午/下午 \"hh\"時\"mm\"分\"ss\"秒 \"', e;\n}\nvar Xe = {\n 0: \"General\",\n 1: \"0\",\n 2: \"0.00\",\n 3: \"#,##0\",\n 4: \"#,##0.00\",\n 9: \"0%\",\n 10: \"0.00%\",\n 11: \"0.00E+00\",\n 12: \"# ?/?\",\n 13: \"# ??/??\",\n 14: \"m/d/yy\",\n 15: \"d-mmm-yy\",\n 16: \"d-mmm\",\n 17: \"mmm-yy\",\n 18: \"h:mm AM/PM\",\n 19: \"h:mm:ss AM/PM\",\n 20: \"h:mm\",\n 21: \"h:mm:ss\",\n 22: \"m/d/yy h:mm\",\n 37: \"#,##0 ;(#,##0)\",\n 38: \"#,##0 ;[Red](#,##0)\",\n 39: \"#,##0.00;(#,##0.00)\",\n 40: \"#,##0.00;[Red](#,##0.00)\",\n 45: \"mm:ss\",\n 46: \"[h]:mm:ss\",\n 47: \"mmss.0\",\n 48: \"##0.0E+0\",\n 49: \"@\",\n 56: '\"上午/下午 \"hh\"時\"mm\"分\"ss\"秒 \"'\n}, nl = {\n 5: 37,\n 6: 38,\n 7: 39,\n 8: 40,\n // 5 -> 37 ... 8 -> 40\n 23: 0,\n 24: 0,\n 25: 0,\n 26: 0,\n // 23 -> 0 ... 26 -> 0\n 27: 14,\n 28: 14,\n 29: 14,\n 30: 14,\n 31: 14,\n // 27 -> 14 ... 31 -> 14\n 50: 14,\n 51: 14,\n 52: 14,\n 53: 14,\n 54: 14,\n // 50 -> 14 ... 58 -> 14\n 55: 14,\n 56: 14,\n 57: 14,\n 58: 14,\n 59: 1,\n 60: 2,\n 61: 3,\n 62: 4,\n // 59 -> 1 ... 62 -> 4\n 67: 9,\n 68: 10,\n // 67 -> 9 ... 68 -> 10\n 69: 12,\n 70: 13,\n 71: 14,\n // 69 -> 12 ... 71 -> 14\n 72: 14,\n 73: 15,\n 74: 16,\n 75: 17,\n // 72 -> 14 ... 75 -> 17\n 76: 20,\n 77: 21,\n 78: 22,\n // 76 -> 20 ... 78 -> 22\n 79: 45,\n 80: 46,\n 81: 47,\n // 79 -> 45 ... 81 -> 47\n 82: 0\n // 82 -> 0 ... 65536 -> 0 (omitted)\n}, J_ = {\n // 5 -- Currency, 0 decimal, black negative\n 5: '\"$\"#,##0_);\\\\(\"$\"#,##0\\\\)',\n 63: '\"$\"#,##0_);\\\\(\"$\"#,##0\\\\)',\n // 6 -- Currency, 0 decimal, red negative\n 6: '\"$\"#,##0_);[Red]\\\\(\"$\"#,##0\\\\)',\n 64: '\"$\"#,##0_);[Red]\\\\(\"$\"#,##0\\\\)',\n // 7 -- Currency, 2 decimal, black negative\n 7: '\"$\"#,##0.00_);\\\\(\"$\"#,##0.00\\\\)',\n 65: '\"$\"#,##0.00_);\\\\(\"$\"#,##0.00\\\\)',\n // 8 -- Currency, 2 decimal, red negative\n 8: '\"$\"#,##0.00_);[Red]\\\\(\"$\"#,##0.00\\\\)',\n 66: '\"$\"#,##0.00_);[Red]\\\\(\"$\"#,##0.00\\\\)',\n // 41 -- Accounting, 0 decimal, No Symbol\n 41: '_(* #,##0_);_(* \\\\(#,##0\\\\);_(* \"-\"_);_(@_)',\n // 42 -- Accounting, 0 decimal, $ Symbol\n 42: '_(\"$\"* #,##0_);_(\"$\"* \\\\(#,##0\\\\);_(\"$\"* \"-\"_);_(@_)',\n // 43 -- Accounting, 2 decimal, No Symbol\n 43: '_(* #,##0.00_);_(* \\\\(#,##0.00\\\\);_(* \"-\"??_);_(@_)',\n // 44 -- Accounting, 2 decimal, $ Symbol\n 44: '_(\"$\"* #,##0.00_);_(\"$\"* \\\\(#,##0.00\\\\);_(\"$\"* \"-\"??_);_(@_)'\n};\nfunction ts(e, t, r) {\n for (var n = e < 0 ? -1 : 1, i = e * n, f = 0, c = 1, u = 0, l = 1, h = 0, x = 0, m = Math.floor(i); h < t && (m = Math.floor(i), u = m * c + f, x = m * h + l, !(i - m < 5e-8)); )\n i = 1 / (i - m), f = c, c = u, l = h, h = x;\n if (x > t && (h > t ? (x = l, u = f) : (x = h, u = c)), !r) return [0, n * u, x];\n var _ = Math.floor(n * u / x);\n return [_, n * u - _ * x, x];\n}\nfunction q_(e) {\n var t = e.toPrecision(16);\n if (t.indexOf(\"e\") > -1) {\n var r = t.slice(0, t.indexOf(\"e\"));\n return r = r.indexOf(\".\") > -1 ? r.slice(0, r.slice(0, 2) == \"0.\" ? 17 : 16) : r.slice(0, 15) + ur(\"0\", r.length - 15), r + t.slice(t.indexOf(\"e\"));\n }\n var n = t.indexOf(\".\") > -1 ? t.slice(0, t.slice(0, 2) == \"0.\" ? 17 : 16) : t.slice(0, 15) + ur(\"0\", t.length - 15);\n return Number(n);\n}\nfunction ya(e, t, r) {\n if (e > 2958465 || e < 0) return null;\n e = q_(e);\n var n = e | 0, i = Math.floor(86400 * (e - n)), f = 0, c = [], u = { D: n, T: i, u: 86400 * (e - n) - i, y: 0, m: 0, d: 0, H: 0, M: 0, S: 0, q: 0 };\n if (Math.abs(u.u) < 1e-6 && (u.u = 0), t && t.date1904 && (n += 1462), u.u > 0.9999 && (u.u = 0, ++i == 86400 && (u.T = i = 0, ++n, ++u.D)), n === 60)\n c = r ? [1317, 10, 29] : [1900, 2, 29], f = 3;\n else if (n === 0)\n c = r ? [1317, 8, 29] : [1900, 1, 0], f = 6;\n else {\n n > 60 && --n;\n var l = new Date(1900, 0, 1);\n l.setDate(l.getDate() + n - 1), c = [l.getFullYear(), l.getMonth() + 1, l.getDate()], f = l.getDay(), n < 60 && (f = (f + 6) % 7), r && (f = rm(l, c));\n }\n return u.y = c[0], u.m = c[1], u.d = c[2], u.S = i % 60, i = Math.floor(i / 60), u.M = i % 60, i = Math.floor(i / 60), u.H = i, u.q = f, u;\n}\nfunction uc(e) {\n return e.indexOf(\".\") == -1 ? e : e.replace(/(?:\\.0*|(\\.\\d*[1-9])0+)$/, \"$1\");\n}\nfunction Q_(e) {\n return e.indexOf(\"E\") == -1 ? e : e.replace(/(?:\\.0*|(\\.\\d*[1-9])0+)[Ee]/, \"$1E\").replace(/(E[+-])(\\d)$/, \"$10$2\");\n}\nfunction j_(e) {\n var t = e < 0 ? 12 : 11, r = uc(e.toFixed(12));\n return r.length <= t || (r = e.toPrecision(10), r.length <= t) ? r : e.toExponential(5);\n}\nfunction em(e) {\n var t = uc(e.toFixed(11));\n return t.length > (e < 0 ? 12 : 11) || t === \"0\" || t === \"-0\" ? e.toPrecision(6) : t;\n}\nfunction L0(e) {\n if (!isFinite(e)) return isNaN(e) ? \"#NUM!\" : \"#DIV/0!\";\n var t = Math.floor(Math.log(Math.abs(e)) * Math.LOG10E), r;\n return t >= -4 && t <= -1 ? r = e.toPrecision(10 + t) : Math.abs(t) <= 9 ? r = j_(e) : t === 10 ? r = e.toFixed(10).substr(0, 12) : r = em(e), uc(Q_(r.toUpperCase()));\n}\nfunction mn(e, t) {\n switch (typeof e) {\n case \"string\":\n return e;\n case \"boolean\":\n return e ? \"TRUE\" : \"FALSE\";\n case \"number\":\n return (e | 0) === e ? e.toString(10) : L0(e);\n case \"undefined\":\n return \"\";\n case \"object\":\n if (e == null) return \"\";\n if (e instanceof Date) return Wt(14, Kr(e, t && t.date1904), t);\n }\n throw new Error(\"unsupported value in General format: \" + e);\n}\nfunction rm(e, t) {\n t[0] -= 581;\n var r = e.getDay();\n return e < 60 && (r = (r + 6) % 7), r;\n}\nfunction tm(e, t, r, n) {\n var i = \"\", f = 0, c = 0, u = r.y, l, h = 0;\n switch (e) {\n case 98:\n u = r.y + 543;\n /* falls through */\n case 121:\n switch (t.length) {\n case 1:\n case 2:\n l = u % 100, h = 2;\n break;\n default:\n l = u % 1e4, h = 4;\n break;\n }\n break;\n case 109:\n switch (t.length) {\n case 1:\n case 2:\n l = r.m, h = t.length;\n break;\n case 3:\n return Hf[r.m - 1][1];\n case 5:\n return Hf[r.m - 1][0];\n default:\n return Hf[r.m - 1][2];\n }\n break;\n case 100:\n switch (t.length) {\n case 1:\n case 2:\n l = r.d, h = t.length;\n break;\n case 3:\n return al[r.q][0];\n default:\n return al[r.q][1];\n }\n break;\n case 104:\n switch (t.length) {\n case 1:\n case 2:\n l = 1 + (r.H + 11) % 12, h = t.length;\n break;\n default:\n throw \"bad hour format: \" + t;\n }\n break;\n case 72:\n switch (t.length) {\n case 1:\n case 2:\n l = r.H, h = t.length;\n break;\n default:\n throw \"bad hour format: \" + t;\n }\n break;\n case 77:\n switch (t.length) {\n case 1:\n case 2:\n l = r.M, h = t.length;\n break;\n default:\n throw \"bad minute format: \" + t;\n }\n break;\n case 115:\n if (t != \"s\" && t != \"ss\" && t != \".0\" && t != \".00\" && t != \".000\") throw \"bad second format: \" + t;\n return r.u === 0 && (t == \"s\" || t == \"ss\") ? oa(r.S, t.length) : (n >= 2 ? c = n === 3 ? 1e3 : 100 : c = n === 1 ? 10 : 1, f = Math.round(c * (r.S + r.u)), f >= 60 * c && (f = 0), t === \"s\" ? f === 0 ? \"0\" : \"\" + f / c : (i = oa(f, 2 + n), t === \"ss\" ? i.substr(0, 2) : \".\" + i.substr(2, t.length - 1)));\n case 90:\n switch (t) {\n case \"[h]\":\n case \"[hh]\":\n l = r.D * 24 + r.H;\n break;\n case \"[m]\":\n case \"[mm]\":\n l = (r.D * 24 + r.H) * 60 + r.M;\n break;\n case \"[s]\":\n case \"[ss]\":\n l = ((r.D * 24 + r.H) * 60 + r.M) * 60 + (n == 0 ? Math.round(r.S + r.u) : r.S);\n break;\n default:\n throw \"bad abstime format: \" + t;\n }\n h = t.length === 3 ? 1 : 2;\n break;\n case 101:\n l = u, h = 1;\n break;\n }\n var x = h > 0 ? oa(l, h) : \"\";\n return x;\n}\nfunction Ia(e) {\n var t = 3;\n if (e.length <= t) return e;\n for (var r = e.length % t, n = e.substr(0, r); r != e.length; r += t) n += (n.length > 0 ? \",\" : \"\") + e.substr(r, t);\n return n;\n}\nvar t1 = /%/g;\nfunction am(e, t, r) {\n var n = t.replace(t1, \"\"), i = t.length - n.length;\n return Da(e, n, r * Math.pow(10, 2 * i)) + ur(\"%\", i);\n}\nfunction nm(e, t, r) {\n for (var n = t.length - 1; t.charCodeAt(n - 1) === 44; ) --n;\n return Da(e, t.substr(0, n), r / Math.pow(10, 3 * (t.length - n)));\n}\nfunction a1(e, t) {\n var r, n = e.indexOf(\"E\") - e.indexOf(\".\") - 1;\n if (e.match(/^#+0.0E\\+0$/)) {\n if (t == 0) return \"0.0E+0\";\n if (t < 0) return \"-\" + a1(e, -t);\n var i = e.indexOf(\".\");\n i === -1 && (i = e.indexOf(\"E\"));\n var f = Math.floor(Math.log(t) * Math.LOG10E) % i;\n if (f < 0 && (f += i), r = (t / Math.pow(10, f)).toPrecision(n + 1 + (i + f) % i), r.indexOf(\"e\") === -1) {\n var c = Math.floor(Math.log(t) * Math.LOG10E);\n for (r.indexOf(\".\") === -1 ? r = r.charAt(0) + \".\" + r.substr(1) + \"E+\" + (c - r.length + f) : r += \"E+\" + (c - f); r.substr(0, 2) === \"0.\"; )\n r = r.charAt(0) + r.substr(2, i) + \".\" + r.substr(2 + i), r = r.replace(/^0+([1-9])/, \"$1\").replace(/^0+\\./, \"0.\");\n r = r.replace(/\\+-/, \"-\");\n }\n r = r.replace(/^([+-]?)(\\d*)\\.(\\d*)[Ee]/, function(u, l, h, x) {\n return l + h + x.substr(0, (i + f) % i) + \".\" + x.substr(f) + \"E\";\n });\n } else r = t.toExponential(n);\n return e.match(/E\\+00$/) && r.match(/e[+-]\\d$/) && (r = r.substr(0, r.length - 1) + \"0\" + r.charAt(r.length - 1)), e.match(/E\\-/) && r.match(/e\\+/) && (r = r.replace(/e\\+/, \"e\")), r.replace(\"e\", \"E\");\n}\nvar n1 = /# (\\?+)( ?)\\/( ?)(\\d+)/;\nfunction im(e, t, r) {\n var n = parseInt(e[4], 10), i = Math.round(t * n), f = Math.floor(i / n), c = i - f * n, u = n;\n return r + (f === 0 ? \"\" : \"\" + f) + \" \" + (c === 0 ? ur(\" \", e[1].length + 1 + e[4].length) : cc(c, e[1].length) + e[2] + \"/\" + e[3] + oa(u, e[4].length));\n}\nfunction sm(e, t, r) {\n return r + (t === 0 ? \"\" : \"\" + t) + ur(\" \", e[1].length + 2 + e[4].length);\n}\nvar i1 = /^#*0*\\.([0#]+)/, s1 = /\\)[^)]*[0#]/, f1 = /\\(###\\) ###\\\\?-####/;\nfunction _t(e) {\n for (var t = \"\", r, n = 0; n != e.length; ++n) switch (r = e.charCodeAt(n)) {\n case 35:\n break;\n case 63:\n t += \" \";\n break;\n case 48:\n t += \"0\";\n break;\n default:\n t += String.fromCharCode(r);\n }\n return t;\n}\nfunction il(e, t) {\n var r = Math.pow(10, t);\n return \"\" + Math.round(e * r) / r;\n}\nfunction sl(e, t) {\n var r = e - Math.floor(e), n = Math.pow(10, t);\n return t < (\"\" + Math.round(r * n)).length ? 0 : Math.round(r * n);\n}\nfunction fm(e, t) {\n return t < (\"\" + Math.round((e - Math.floor(e)) * Math.pow(10, t))).length ? 1 : 0;\n}\nfunction cm(e) {\n return e < 2147483647 && e > -2147483648 ? \"\" + (e >= 0 ? e | 0 : e - 1 | 0) : \"\" + Math.floor(e);\n}\nfunction Jt(e, t, r) {\n if (e.charCodeAt(0) === 40 && !t.match(s1)) {\n var n = t.replace(/\\( */, \"\").replace(/ \\)/, \"\").replace(/\\)/, \"\");\n return r >= 0 ? Jt(\"n\", n, r) : \"(\" + Jt(\"n\", n, -r) + \")\";\n }\n if (t.charCodeAt(t.length - 1) === 44) return nm(e, t, r);\n if (t.indexOf(\"%\") !== -1) return am(e, t, r);\n if (t.indexOf(\"E\") !== -1) return a1(t, r);\n if (t.charCodeAt(0) === 36) return \"$\" + Jt(e, t.substr(t.charAt(1) == \" \" ? 2 : 1), r);\n var i, f, c, u, l = Math.abs(r), h = r < 0 ? \"-\" : \"\";\n if (t.match(/^00+$/)) return h + Gn(l, t.length);\n if (t.match(/^[#?]+$/))\n return i = Gn(r, 0), i === \"0\" && (i = \"\"), i.length > t.length ? i : _t(t.substr(0, t.length - i.length)) + i;\n if (f = t.match(n1)) return im(f, l, h);\n if (t.match(/^#+0+$/)) return h + Gn(l, t.length - t.indexOf(\"0\"));\n if (f = t.match(i1))\n return i = il(r, f[1].length).replace(/^([^\\.]+)$/, \"$1.\" + _t(f[1])).replace(/\\.$/, \".\" + _t(f[1])).replace(/\\.(\\d*)$/, function(T, A) {\n return \".\" + A + ur(\"0\", _t(\n /*::(*/\n f[1]\n ).length - A.length);\n }), t.indexOf(\"0.\") !== -1 ? i : i.replace(/^0\\./, \".\");\n if (t = t.replace(/^#+([0.])/, \"$1\"), f = t.match(/^(0*)\\.(#*)$/))\n return h + il(l, f[2].length).replace(/\\.(\\d*[1-9])0*$/, \".$1\").replace(/^(-?\\d*)$/, \"$1.\").replace(/^0\\./, f[1].length ? \"0.\" : \".\");\n if (f = t.match(/^#{1,3},##0(\\.?)$/)) return h + Ia(Gn(l, 0));\n if (f = t.match(/^#,##0\\.([#0]*0)$/))\n return r < 0 ? \"-\" + Jt(e, t, -r) : Ia(\"\" + (Math.floor(r) + fm(r, f[1].length))) + \".\" + oa(sl(r, f[1].length), f[1].length);\n if (f = t.match(/^#,#*,#0/)) return Jt(e, t.replace(/^#,#*,/, \"\"), r);\n if (f = t.match(/^([0#]+)(\\\\?-([0#]+))+$/))\n return i = zn(Jt(e, t.replace(/[\\\\-]/g, \"\"), r)), c = 0, zn(zn(t.replace(/\\\\/g, \"\")).replace(/[0#]/g, function(T) {\n return c < i.length ? i.charAt(c++) : T === \"0\" ? \"0\" : \"\";\n }));\n if (t.match(f1))\n return i = Jt(e, \"##########\", r), \"(\" + i.substr(0, 3) + \") \" + i.substr(3, 3) + \"-\" + i.substr(6);\n var x = \"\";\n if (f = t.match(/^([#0?]+)( ?)\\/( ?)([#0?]+)/))\n return c = Math.min(\n /*::String(*/\n f[4].length,\n 7\n ), u = ts(l, Math.pow(10, c) - 1, !1), i = \"\" + h, x = Da(\n \"n\",\n /*::String(*/\n f[1],\n u[1]\n ), x.charAt(x.length - 1) == \" \" && (x = x.substr(0, x.length - 1) + \"0\"), i += x + /*::String(*/\n f[2] + \"/\" + /*::String(*/\n f[3], x = es(u[2], c), x.length < f[4].length && (x = _t(f[4].substr(f[4].length - x.length)) + x), i += x, i;\n if (f = t.match(/^# ([#0?]+)( ?)\\/( ?)([#0?]+)/))\n return c = Math.min(Math.max(f[1].length, f[4].length), 7), u = ts(l, Math.pow(10, c) - 1, !0), h + (u[0] || (u[1] ? \"\" : \"0\")) + \" \" + (u[1] ? cc(u[1], c) + f[2] + \"/\" + f[3] + es(u[2], c) : ur(\" \", 2 * c + 1 + f[2].length + f[3].length));\n if (f = t.match(/^[#0?]+$/))\n return i = Gn(r, 0), t.length <= i.length ? i : _t(t.substr(0, t.length - i.length)) + i;\n if (f = t.match(/^([#0?]+)\\.([#0]+)$/)) {\n i = \"\" + r.toFixed(Math.min(f[2].length, 10)).replace(/([^0])0+$/, \"$1\"), c = i.indexOf(\".\");\n var m = t.indexOf(\".\") - c, _ = t.length - i.length - m;\n return _t(t.substr(0, m) + i + t.substr(t.length - _));\n }\n if (f = t.match(/^00,000\\.([#0]*0)$/))\n return c = sl(r, f[1].length), r < 0 ? \"-\" + Jt(e, t, -r) : Ia(cm(r)).replace(/^\\d,\\d{3}$/, \"0$&\").replace(/^\\d*$/, function(T) {\n return \"00,\" + (T.length < 3 ? oa(0, 3 - T.length) : \"\") + T;\n }) + \".\" + oa(c, f[1].length);\n switch (t) {\n case \"###,##0.00\":\n return Jt(e, \"#,##0.00\", r);\n case \"###,###\":\n case \"##,###\":\n case \"#,###\":\n var v = Ia(Gn(l, 0));\n return v !== \"0\" ? h + v : \"\";\n case \"###,###.00\":\n return Jt(e, \"###,##0.00\", r).replace(/^0\\./, \".\");\n case \"#,###.00\":\n return Jt(e, \"#,##0.00\", r).replace(/^0\\./, \".\");\n }\n throw new Error(\"unsupported format |\" + t + \"|\");\n}\nfunction um(e, t, r) {\n for (var n = t.length - 1; t.charCodeAt(n - 1) === 44; ) --n;\n return Da(e, t.substr(0, n), r / Math.pow(10, 3 * (t.length - n)));\n}\nfunction om(e, t, r) {\n var n = t.replace(t1, \"\"), i = t.length - n.length;\n return Da(e, n, r * Math.pow(10, 2 * i)) + ur(\"%\", i);\n}\nfunction c1(e, t) {\n var r, n = e.indexOf(\"E\") - e.indexOf(\".\") - 1;\n if (e.match(/^#+0.0E\\+0$/)) {\n if (t == 0) return \"0.0E+0\";\n if (t < 0) return \"-\" + c1(e, -t);\n var i = e.indexOf(\".\");\n i === -1 && (i = e.indexOf(\"E\"));\n var f = Math.floor(Math.log(t) * Math.LOG10E) % i;\n if (f < 0 && (f += i), r = (t / Math.pow(10, f)).toPrecision(n + 1 + (i + f) % i), !r.match(/[Ee]/)) {\n var c = Math.floor(Math.log(t) * Math.LOG10E);\n r.indexOf(\".\") === -1 ? r = r.charAt(0) + \".\" + r.substr(1) + \"E+\" + (c - r.length + f) : r += \"E+\" + (c - f), r = r.replace(/\\+-/, \"-\");\n }\n r = r.replace(/^([+-]?)(\\d*)\\.(\\d*)[Ee]/, function(u, l, h, x) {\n return l + h + x.substr(0, (i + f) % i) + \".\" + x.substr(f) + \"E\";\n });\n } else r = t.toExponential(n);\n return e.match(/E\\+00$/) && r.match(/e[+-]\\d$/) && (r = r.substr(0, r.length - 1) + \"0\" + r.charAt(r.length - 1)), e.match(/E\\-/) && r.match(/e\\+/) && (r = r.replace(/e\\+/, \"e\")), r.replace(\"e\", \"E\");\n}\nfunction ga(e, t, r) {\n if (e.charCodeAt(0) === 40 && !t.match(s1)) {\n var n = t.replace(/\\( */, \"\").replace(/ \\)/, \"\").replace(/\\)/, \"\");\n return r >= 0 ? ga(\"n\", n, r) : \"(\" + ga(\"n\", n, -r) + \")\";\n }\n if (t.charCodeAt(t.length - 1) === 44) return um(e, t, r);\n if (t.indexOf(\"%\") !== -1) return om(e, t, r);\n if (t.indexOf(\"E\") !== -1) return c1(t, r);\n if (t.charCodeAt(0) === 36) return \"$\" + ga(e, t.substr(t.charAt(1) == \" \" ? 2 : 1), r);\n var i, f, c, u, l = Math.abs(r), h = r < 0 ? \"-\" : \"\";\n if (t.match(/^00+$/)) return h + oa(l, t.length);\n if (t.match(/^[#?]+$/))\n return i = \"\" + r, r === 0 && (i = \"\"), i.length > t.length ? i : _t(t.substr(0, t.length - i.length)) + i;\n if (f = t.match(n1)) return sm(f, l, h);\n if (t.match(/^#+0+$/)) return h + oa(l, t.length - t.indexOf(\"0\"));\n if (f = t.match(i1))\n return i = (\"\" + r).replace(/^([^\\.]+)$/, \"$1.\" + _t(f[1])).replace(/\\.$/, \".\" + _t(f[1])), i = i.replace(/\\.(\\d*)$/, function(T, A) {\n return \".\" + A + ur(\"0\", _t(f[1]).length - A.length);\n }), t.indexOf(\"0.\") !== -1 ? i : i.replace(/^0\\./, \".\");\n if (t = t.replace(/^#+([0.])/, \"$1\"), f = t.match(/^(0*)\\.(#*)$/))\n return h + (\"\" + l).replace(/\\.(\\d*[1-9])0*$/, \".$1\").replace(/^(-?\\d*)$/, \"$1.\").replace(/^0\\./, f[1].length ? \"0.\" : \".\");\n if (f = t.match(/^#{1,3},##0(\\.?)$/)) return h + Ia(\"\" + l);\n if (f = t.match(/^#,##0\\.([#0]*0)$/))\n return r < 0 ? \"-\" + ga(e, t, -r) : Ia(\"\" + r) + \".\" + ur(\"0\", f[1].length);\n if (f = t.match(/^#,#*,#0/)) return ga(e, t.replace(/^#,#*,/, \"\"), r);\n if (f = t.match(/^([0#]+)(\\\\?-([0#]+))+$/))\n return i = zn(ga(e, t.replace(/[\\\\-]/g, \"\"), r)), c = 0, zn(zn(t.replace(/\\\\/g, \"\")).replace(/[0#]/g, function(T) {\n return c < i.length ? i.charAt(c++) : T === \"0\" ? \"0\" : \"\";\n }));\n if (t.match(f1))\n return i = ga(e, \"##########\", r), \"(\" + i.substr(0, 3) + \") \" + i.substr(3, 3) + \"-\" + i.substr(6);\n var x = \"\";\n if (f = t.match(/^([#0?]+)( ?)\\/( ?)([#0?]+)/))\n return c = Math.min(\n /*::String(*/\n f[4].length,\n 7\n ), u = ts(l, Math.pow(10, c) - 1, !1), i = \"\" + h, x = Da(\n \"n\",\n /*::String(*/\n f[1],\n u[1]\n ), x.charAt(x.length - 1) == \" \" && (x = x.substr(0, x.length - 1) + \"0\"), i += x + /*::String(*/\n f[2] + \"/\" + /*::String(*/\n f[3], x = es(u[2], c), x.length < f[4].length && (x = _t(f[4].substr(f[4].length - x.length)) + x), i += x, i;\n if (f = t.match(/^# ([#0?]+)( ?)\\/( ?)([#0?]+)/))\n return c = Math.min(Math.max(f[1].length, f[4].length), 7), u = ts(l, Math.pow(10, c) - 1, !0), h + (u[0] || (u[1] ? \"\" : \"0\")) + \" \" + (u[1] ? cc(u[1], c) + f[2] + \"/\" + f[3] + es(u[2], c) : ur(\" \", 2 * c + 1 + f[2].length + f[3].length));\n if (f = t.match(/^[#0?]+$/))\n return i = \"\" + r, t.length <= i.length ? i : _t(t.substr(0, t.length - i.length)) + i;\n if (f = t.match(/^([#0]+)\\.([#0]+)$/)) {\n i = \"\" + r.toFixed(Math.min(f[2].length, 10)).replace(/([^0])0+$/, \"$1\"), c = i.indexOf(\".\");\n var m = t.indexOf(\".\") - c, _ = t.length - i.length - m;\n return _t(t.substr(0, m) + i + t.substr(t.length - _));\n }\n if (f = t.match(/^00,000\\.([#0]*0)$/))\n return r < 0 ? \"-\" + ga(e, t, -r) : Ia(\"\" + r).replace(/^\\d,\\d{3}$/, \"0$&\").replace(/^\\d*$/, function(T) {\n return \"00,\" + (T.length < 3 ? oa(0, 3 - T.length) : \"\") + T;\n }) + \".\" + oa(0, f[1].length);\n switch (t) {\n case \"###,###\":\n case \"##,###\":\n case \"#,###\":\n var v = Ia(\"\" + l);\n return v !== \"0\" ? h + v : \"\";\n default:\n if (t.match(/\\.[0#?]*$/)) return ga(e, t.slice(0, t.lastIndexOf(\".\")), r) + _t(t.slice(t.lastIndexOf(\".\")));\n }\n throw new Error(\"unsupported format |\" + t + \"|\");\n}\nfunction Da(e, t, r) {\n return (r | 0) === r ? ga(e, t, r) : Jt(e, t, r);\n}\nfunction lm(e) {\n for (var t = [], r = !1, n = 0, i = 0; n < e.length; ++n) switch (\n /*cc=*/\n e.charCodeAt(n)\n ) {\n case 34:\n r = !r;\n break;\n case 95:\n case 42:\n case 92:\n ++n;\n break;\n case 59:\n t[t.length] = e.substr(i, n - i), i = n + 1;\n }\n if (t[t.length] = e.substr(i), r === !0) throw new Error(\"Format |\" + e + \"| unterminated string \");\n return t;\n}\nvar u1 = /\\[[HhMmSs\\u0E0A\\u0E19\\u0E17]*\\]/;\nfunction la(e) {\n for (var t = 0, r = \"\", n = \"\"; t < e.length; )\n switch (r = e.charAt(t)) {\n case \"G\":\n rs(e, t) && (t += 6), t++;\n break;\n case '\"':\n for (\n ;\n /*cc=*/\n e.charCodeAt(++t) !== 34 && t < e.length;\n )\n ;\n ++t;\n break;\n case \"\\\\\":\n t += 2;\n break;\n case \"_\":\n t += 2;\n break;\n case \"@\":\n ++t;\n break;\n case \"B\":\n case \"b\":\n if (e.charAt(t + 1) === \"1\" || e.charAt(t + 1) === \"2\") return !0;\n /* falls through */\n case \"M\":\n case \"D\":\n case \"Y\":\n case \"H\":\n case \"S\":\n case \"E\":\n /* falls through */\n case \"m\":\n case \"d\":\n case \"y\":\n case \"h\":\n case \"s\":\n case \"e\":\n case \"g\":\n return !0;\n case \"A\":\n case \"a\":\n case \"上\":\n if (e.substr(t, 3).toUpperCase() === \"A/P\" || e.substr(t, 5).toUpperCase() === \"AM/PM\" || e.substr(t, 5).toUpperCase() === \"上午/下午\") return !0;\n ++t;\n break;\n case \"[\":\n for (n = r; e.charAt(t++) !== \"]\" && t < e.length; ) n += e.charAt(t);\n if (n.match(u1)) return !0;\n break;\n case \".\":\n /* falls through */\n case \"0\":\n case \"#\":\n for (; t < e.length && (\"0#?.,E+-%\".indexOf(r = e.charAt(++t)) > -1 || r == \"\\\\\" && e.charAt(t + 1) == \"-\" && \"0#\".indexOf(e.charAt(t + 2)) > -1); )\n ;\n break;\n case \"?\":\n for (; e.charAt(++t) === r; )\n ;\n break;\n case \"*\":\n ++t, (e.charAt(t) == \" \" || e.charAt(t) == \"*\") && ++t;\n break;\n case \"(\":\n case \")\":\n ++t;\n break;\n case \"1\":\n case \"2\":\n case \"3\":\n case \"4\":\n case \"5\":\n case \"6\":\n case \"7\":\n case \"8\":\n case \"9\":\n for (; t < e.length && \"0123456789\".indexOf(e.charAt(++t)) > -1; )\n ;\n break;\n case \" \":\n ++t;\n break;\n default:\n ++t;\n break;\n }\n return !1;\n}\nfunction hm(e, t, r, n) {\n for (var i = [], f = \"\", c = 0, u = \"\", l = \"t\", h, x, m, _ = \"H\"; c < e.length; )\n switch (u = e.charAt(c)) {\n case \"G\":\n if (!rs(e, c)) throw new Error(\"unrecognized character \" + u + \" in \" + e);\n i[i.length] = { t: \"G\", v: \"General\" }, c += 7;\n break;\n case '\"':\n for (f = \"\"; (m = e.charCodeAt(++c)) !== 34 && c < e.length; ) f += String.fromCharCode(m);\n i[i.length] = { t: \"t\", v: f }, ++c;\n break;\n case \"\\\\\":\n var v = e.charAt(++c), T = v === \"(\" || v === \")\" ? v : \"t\";\n i[i.length] = { t: T, v }, ++c;\n break;\n case \"_\":\n i[i.length] = { t: \"t\", v: \" \" }, c += 2;\n break;\n case \"@\":\n i[i.length] = { t: \"T\", v: t }, ++c;\n break;\n case \"B\":\n case \"b\":\n if (e.charAt(c + 1) === \"1\" || e.charAt(c + 1) === \"2\") {\n if (h == null && (h = ya(t, r, e.charAt(c + 1) === \"2\"), h == null))\n return \"\";\n i[i.length] = { t: \"X\", v: e.substr(c, 2) }, l = u, c += 2;\n break;\n }\n /* falls through */\n case \"M\":\n case \"D\":\n case \"Y\":\n case \"H\":\n case \"S\":\n case \"E\":\n u = u.toLowerCase();\n /* falls through */\n case \"m\":\n case \"d\":\n case \"y\":\n case \"h\":\n case \"s\":\n case \"e\":\n case \"g\":\n if (t < 0 || h == null && (h = ya(t, r), h == null))\n return \"\";\n for (f = u; ++c < e.length && e.charAt(c).toLowerCase() === u; ) f += u;\n u === \"m\" && l.toLowerCase() === \"h\" && (u = \"M\"), u === \"h\" && (u = _), i[i.length] = { t: u, v: f }, l = u;\n break;\n case \"A\":\n case \"a\":\n case \"上\":\n var A = { t: u, v: u };\n if (h == null && (h = ya(t, r)), e.substr(c, 3).toUpperCase() === \"A/P\" ? (h != null && (A.v = h.H >= 12 ? e.charAt(c + 2) : u), A.t = \"T\", _ = \"h\", c += 3) : e.substr(c, 5).toUpperCase() === \"AM/PM\" ? (h != null && (A.v = h.H >= 12 ? \"PM\" : \"AM\"), A.t = \"T\", c += 5, _ = \"h\") : e.substr(c, 5).toUpperCase() === \"上午/下午\" ? (h != null && (A.v = h.H >= 12 ? \"下午\" : \"上午\"), A.t = \"T\", c += 5, _ = \"h\") : (A.t = \"t\", ++c), h == null && A.t === \"T\") return \"\";\n i[i.length] = A, l = u;\n break;\n case \"[\":\n for (f = u; e.charAt(c++) !== \"]\" && c < e.length; ) f += e.charAt(c);\n if (f.slice(-1) !== \"]\") throw 'unterminated \"[\" block: |' + f + \"|\";\n if (f.match(u1)) {\n if (h == null && (h = ya(t, r), h == null))\n return \"\";\n i[i.length] = { t: \"Z\", v: f.toLowerCase() }, l = f.charAt(1);\n } else f.indexOf(\"$\") > -1 && (f = (f.match(/\\$([^-\\[\\]]*)/) || [])[1] || \"$\", la(e) || (i[i.length] = { t: \"t\", v: f }));\n break;\n /* Numbers */\n case \".\":\n if (h != null) {\n for (f = u; ++c < e.length && (u = e.charAt(c)) === \"0\"; ) f += u;\n i[i.length] = { t: \"s\", v: f };\n break;\n }\n /* falls through */\n case \"0\":\n case \"#\":\n for (f = u; ++c < e.length && \"0#?.,E+-%\".indexOf(u = e.charAt(c)) > -1; ) f += u;\n i[i.length] = { t: \"n\", v: f };\n break;\n case \"?\":\n for (f = u; e.charAt(++c) === u; ) f += u;\n i[i.length] = { t: u, v: f }, l = u;\n break;\n case \"*\":\n ++c, (e.charAt(c) == \" \" || e.charAt(c) == \"*\") && ++c;\n break;\n // **\n case \"(\":\n case \")\":\n i[i.length] = { t: n === 1 ? \"t\" : u, v: u }, ++c;\n break;\n case \"1\":\n case \"2\":\n case \"3\":\n case \"4\":\n case \"5\":\n case \"6\":\n case \"7\":\n case \"8\":\n case \"9\":\n for (f = u; c < e.length && \"0123456789\".indexOf(e.charAt(++c)) > -1; ) f += e.charAt(c);\n i[i.length] = { t: \"D\", v: f };\n break;\n case \" \":\n i[i.length] = { t: u, v: u }, ++c;\n break;\n case \"$\":\n i[i.length] = { t: \"t\", v: \"$\" }, ++c;\n break;\n default:\n if (\",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP\".indexOf(u) === -1) throw new Error(\"unrecognized character \" + u + \" in \" + e);\n i[i.length] = { t: \"t\", v: u }, ++c;\n break;\n }\n var g = 0, p = 0, y;\n for (c = i.length - 1, l = \"t\"; c >= 0; --c)\n switch (i[c].t) {\n case \"h\":\n case \"H\":\n i[c].t = _, l = \"h\", g < 1 && (g = 1);\n break;\n case \"s\":\n (y = i[c].v.match(/\\.0+$/)) && (p = Math.max(p, y[0].length - 1), g = 4), g < 3 && (g = 3);\n /* falls through */\n case \"d\":\n case \"y\":\n case \"e\":\n l = i[c].t;\n break;\n case \"M\":\n l = i[c].t, g < 2 && (g = 2);\n break;\n case \"m\":\n l === \"s\" && (i[c].t = \"M\", g < 2 && (g = 2));\n break;\n case \"X\":\n break;\n case \"Z\":\n g < 1 && i[c].v.match(/[Hh]/) && (g = 1), g < 2 && i[c].v.match(/[Mm]/) && (g = 2), g < 3 && i[c].v.match(/[Ss]/) && (g = 3);\n }\n var w;\n switch (g) {\n case 0:\n break;\n case 1:\n case 2:\n case 3:\n h.u >= 0.5 && (h.u = 0, ++h.S), h.S >= 60 && (h.S = 0, ++h.M), h.M >= 60 && (h.M = 0, ++h.H), h.H >= 24 && (h.H = 0, ++h.D, w = ya(h.D), w.u = h.u, w.S = h.S, w.M = h.M, w.H = h.H, h = w);\n break;\n case 4:\n switch (p) {\n case 1:\n h.u = Math.round(h.u * 10) / 10;\n break;\n case 2:\n h.u = Math.round(h.u * 100) / 100;\n break;\n case 3:\n h.u = Math.round(h.u * 1e3) / 1e3;\n break;\n }\n h.u >= 1 && (h.u = 0, ++h.S), h.S >= 60 && (h.S = 0, ++h.M), h.M >= 60 && (h.M = 0, ++h.H), h.H >= 24 && (h.H = 0, ++h.D, w = ya(h.D), w.u = h.u, w.S = h.S, w.M = h.M, w.H = h.H, h = w);\n break;\n }\n var P = \"\", V;\n for (c = 0; c < i.length; ++c)\n switch (i[c].t) {\n case \"t\":\n case \"T\":\n case \" \":\n case \"D\":\n break;\n case \"X\":\n i[c].v = \"\", i[c].t = \";\";\n break;\n case \"d\":\n case \"m\":\n case \"y\":\n case \"h\":\n case \"H\":\n case \"M\":\n case \"s\":\n case \"e\":\n case \"b\":\n case \"Z\":\n i[c].v = tm(i[c].t.charCodeAt(0), i[c].v, h, p), i[c].t = \"t\";\n break;\n case \"n\":\n case \"?\":\n for (V = c + 1; i[V] != null && ((u = i[V].t) === \"?\" || u === \"D\" || (u === \" \" || u === \"t\") && i[V + 1] != null && (i[V + 1].t === \"?\" || i[V + 1].t === \"t\" && i[V + 1].v === \"/\") || i[c].t === \"(\" && (u === \" \" || u === \"n\" || u === \")\") || u === \"t\" && (i[V].v === \"/\" || i[V].v === \" \" && i[V + 1] != null && i[V + 1].t == \"?\")); )\n i[c].v += i[V].v, i[V] = { v: \"\", t: \";\" }, ++V;\n P += i[c].v, c = V - 1;\n break;\n case \"G\":\n i[c].t = \"t\", i[c].v = mn(t, r);\n break;\n }\n var Z = \"\", M, G;\n if (P.length > 0) {\n P.charCodeAt(0) == 40 ? (M = t < 0 && P.charCodeAt(0) === 45 ? -t : t, G = Da(\"n\", P, M)) : (M = t < 0 && n > 1 ? -t : t, G = Da(\"n\", P, M), M < 0 && i[0] && i[0].t == \"t\" && (G = G.substr(1), i[0].v = \"-\" + i[0].v)), V = G.length - 1;\n var U = i.length;\n for (c = 0; c < i.length; ++c) if (i[c] != null && i[c].t != \"t\" && i[c].v.indexOf(\".\") > -1) {\n U = c;\n break;\n }\n var J = i.length;\n if (U === i.length && G.indexOf(\"E\") === -1) {\n for (c = i.length - 1; c >= 0; --c)\n i[c] == null || \"n?\".indexOf(i[c].t) === -1 || (V >= i[c].v.length - 1 ? (V -= i[c].v.length, i[c].v = G.substr(V + 1, i[c].v.length)) : V < 0 ? i[c].v = \"\" : (i[c].v = G.substr(0, V + 1), V = -1), i[c].t = \"t\", J = c);\n V >= 0 && J < i.length && (i[J].v = G.substr(0, V + 1) + i[J].v);\n } else if (U !== i.length && G.indexOf(\"E\") === -1) {\n for (V = G.indexOf(\".\") - 1, c = U; c >= 0; --c)\n if (!(i[c] == null || \"n?\".indexOf(i[c].t) === -1)) {\n for (x = i[c].v.indexOf(\".\") > -1 && c === U ? i[c].v.indexOf(\".\") - 1 : i[c].v.length - 1, Z = i[c].v.substr(x + 1); x >= 0; --x)\n V >= 0 && (i[c].v.charAt(x) === \"0\" || i[c].v.charAt(x) === \"#\") && (Z = G.charAt(V--) + Z);\n i[c].v = Z, i[c].t = \"t\", J = c;\n }\n for (V >= 0 && J < i.length && (i[J].v = G.substr(0, V + 1) + i[J].v), V = G.indexOf(\".\") + 1, c = U; c < i.length; ++c)\n if (!(i[c] == null || \"n?(\".indexOf(i[c].t) === -1 && c !== U)) {\n for (x = i[c].v.indexOf(\".\") > -1 && c === U ? i[c].v.indexOf(\".\") + 1 : 0, Z = i[c].v.substr(0, x); x < i[c].v.length; ++x)\n V < G.length && (Z += G.charAt(V++));\n i[c].v = Z, i[c].t = \"t\", J = c;\n }\n }\n }\n for (c = 0; c < i.length; ++c) i[c] != null && \"n?\".indexOf(i[c].t) > -1 && (M = n > 1 && t < 0 && c > 0 && i[c - 1].v === \"-\" ? -t : t, i[c].v = Da(i[c].t, i[c].v, M), i[c].t = \"t\");\n var z = \"\";\n for (c = 0; c !== i.length; ++c) i[c] != null && (z += i[c].v);\n return z;\n}\nvar fl = /\\[(=|>[=]?|<[>=]?)(-?\\d+(?:\\.\\d*)?)\\]/;\nfunction cl(e, t) {\n if (t == null) return !1;\n var r = parseFloat(t[2]);\n switch (t[1]) {\n case \"=\":\n if (e == r) return !0;\n break;\n case \">\":\n if (e > r) return !0;\n break;\n case \"<\":\n if (e < r) return !0;\n break;\n case \"<>\":\n if (e != r) return !0;\n break;\n case \">=\":\n if (e >= r) return !0;\n break;\n case \"<=\":\n if (e <= r) return !0;\n break;\n }\n return !1;\n}\nfunction xm(e, t) {\n var r = lm(e), n = r.length, i = r[n - 1].indexOf(\"@\");\n if (n < 4 && i > -1 && --n, r.length > 4) throw new Error(\"cannot find right format for |\" + r.join(\"|\") + \"|\");\n if (typeof t != \"number\") return [4, r.length === 4 || i > -1 ? r[r.length - 1] : \"@\"];\n switch (typeof t == \"number\" && !isFinite(t) && (t = 0), r.length) {\n case 1:\n r = i > -1 ? [\"General\", \"General\", \"General\", r[0]] : [r[0], r[0], r[0], \"@\"];\n break;\n case 2:\n r = i > -1 ? [r[0], r[0], r[0], r[1]] : [r[0], r[1], r[0], \"@\"];\n break;\n case 3:\n r = i > -1 ? [r[0], r[1], r[0], r[2]] : [r[0], r[1], r[2], \"@\"];\n break;\n }\n var f = t > 0 ? r[0] : t < 0 ? r[1] : r[2];\n if (r[0].indexOf(\"[\") === -1 && r[1].indexOf(\"[\") === -1) return [n, f];\n if (r[0].match(/\\[[=<>]/) != null || r[1].match(/\\[[=<>]/) != null) {\n var c = r[0].match(fl), u = r[1].match(fl);\n return cl(t, c) ? [n, r[0]] : cl(t, u) ? [n, r[1]] : [n, r[c != null && u != null ? 2 : 1]];\n }\n return [n, f];\n}\nfunction Wt(e, t, r) {\n r == null && (r = {});\n var n = \"\";\n switch (typeof e) {\n case \"string\":\n e == \"m/d/yy\" && r.dateNF ? n = r.dateNF : n = e;\n break;\n case \"number\":\n e == 14 && r.dateNF ? n = r.dateNF : n = (r.table != null ? r.table : Xe)[e], n == null && (n = r.table && r.table[nl[e]] || Xe[nl[e]]), n == null && (n = J_[e] || \"General\");\n break;\n }\n if (rs(n, 0)) return mn(t, r);\n t instanceof Date && (t = Kr(t, r.date1904));\n var i = xm(n, t);\n if (rs(i[1])) return mn(t, r);\n if (t === !0) t = \"TRUE\";\n else if (t === !1) t = \"FALSE\";\n else {\n if (t === \"\" || t == null) return \"\";\n if (isNaN(t) && i[1].indexOf(\"0\") > -1) return \"#NUM!\";\n if (!isFinite(t) && i[1].indexOf(\"0\") > -1) return \"#DIV/0!\";\n }\n return hm(i[1], t, r, i[0]);\n}\nfunction dm(e, t) {\n if (typeof t != \"number\") {\n t = +t || -1;\n for (var r = 0; r < 392; ++r) {\n if (Xe[r] == null) {\n t < 0 && (t = r);\n continue;\n }\n if (Xe[r] == e) {\n t = r;\n break;\n }\n }\n t < 0 && (t = 391);\n }\n return Xe[t] = e, t;\n}\nfunction o1() {\n Xe = Z_();\n}\nvar vm = {\n 5: '\"$\"#,##0_);\\\\(\"$\"#,##0\\\\)',\n 6: '\"$\"#,##0_);[Red]\\\\(\"$\"#,##0\\\\)',\n 7: '\"$\"#,##0.00_);\\\\(\"$\"#,##0.00\\\\)',\n 8: '\"$\"#,##0.00_);[Red]\\\\(\"$\"#,##0.00\\\\)',\n 23: \"General\",\n 24: \"General\",\n 25: \"General\",\n 26: \"General\",\n 27: \"m/d/yy\",\n 28: \"m/d/yy\",\n 29: \"m/d/yy\",\n 30: \"m/d/yy\",\n 31: \"m/d/yy\",\n 32: \"h:mm:ss\",\n 33: \"h:mm:ss\",\n 34: \"h:mm:ss\",\n 35: \"h:mm:ss\",\n 36: \"m/d/yy\",\n 41: '_(* #,##0_);_(* (#,##0);_(* \"-\"_);_(@_)',\n 42: '_(\"$\"* #,##0_);_(\"$\"* (#,##0);_(\"$\"* \"-\"_);_(@_)',\n 43: '_(* #,##0.00_);_(* (#,##0.00);_(* \"-\"??_);_(@_)',\n 44: '_(\"$\"* #,##0.00_);_(\"$\"* (#,##0.00);_(\"$\"* \"-\"??_);_(@_)',\n 50: \"m/d/yy\",\n 51: \"m/d/yy\",\n 52: \"m/d/yy\",\n 53: \"m/d/yy\",\n 54: \"m/d/yy\",\n 55: \"m/d/yy\",\n 56: \"m/d/yy\",\n 57: \"m/d/yy\",\n 58: \"m/d/yy\",\n 59: \"0\",\n 60: \"0.00\",\n 61: \"#,##0\",\n 62: \"#,##0.00\",\n 63: '\"$\"#,##0_);\\\\(\"$\"#,##0\\\\)',\n 64: '\"$\"#,##0_);[Red]\\\\(\"$\"#,##0\\\\)',\n 65: '\"$\"#,##0.00_);\\\\(\"$\"#,##0.00\\\\)',\n 66: '\"$\"#,##0.00_);[Red]\\\\(\"$\"#,##0.00\\\\)',\n 67: \"0%\",\n 68: \"0.00%\",\n 69: \"# ?/?\",\n 70: \"# ??/??\",\n 71: \"m/d/yy\",\n 72: \"m/d/yy\",\n 73: \"d-mmm-yy\",\n 74: \"d-mmm\",\n 75: \"mmm-yy\",\n 76: \"h:mm\",\n 77: \"h:mm:ss\",\n 78: \"m/d/yy h:mm\",\n 79: \"mm:ss\",\n 80: \"[h]:mm:ss\",\n 81: \"mmss.0\"\n}, as = /[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;\nfunction pm(e) {\n var t = typeof e == \"number\" ? Xe[e] : e;\n return t = t.replace(as, \"(\\\\d+)\"), as.lastIndex = 0, new RegExp(\"^\" + t + \"$\");\n}\nfunction gm(e, t, r) {\n var n = -1, i = -1, f = -1, c = -1, u = -1, l = -1;\n (t.match(as) || []).forEach(function(m, _) {\n var v = parseInt(r[_ + 1], 10);\n switch (m.toLowerCase().charAt(0)) {\n case \"y\":\n n = v;\n break;\n case \"d\":\n f = v;\n break;\n case \"h\":\n c = v;\n break;\n case \"s\":\n l = v;\n break;\n case \"m\":\n c >= 0 ? u = v : i = v;\n break;\n }\n }), as.lastIndex = 0, l >= 0 && u == -1 && i >= 0 && (u = i, i = -1);\n var h = (\"\" + (n >= 0 ? n : (/* @__PURE__ */ new Date()).getFullYear())).slice(-4) + \"-\" + (\"00\" + (i >= 1 ? i : 1)).slice(-2) + \"-\" + (\"00\" + (f >= 1 ? f : 1)).slice(-2);\n h.length == 7 && (h = \"0\" + h), h.length == 8 && (h = \"20\" + h);\n var x = (\"00\" + (c >= 0 ? c : 0)).slice(-2) + \":\" + (\"00\" + (u >= 0 ? u : 0)).slice(-2) + \":\" + (\"00\" + (l >= 0 ? l : 0)).slice(-2);\n return c == -1 && u == -1 && l == -1 ? h : n == -1 && i == -1 && f == -1 ? x : h + \"T\" + x;\n}\nvar _m = {\n \"d.m\": \"d\\\\.m\"\n // Issue #2571 Google Sheets writes invalid format 'd.m', correct format is 'd\".\"m' or 'd\\\\.m'\n};\nfunction vn(e, t) {\n return dm(_m[e] || e, t);\n}\nvar ul = /* @__PURE__ */ function() {\n var e = {};\n e.version = \"1.2.0\";\n function t() {\n for (var M = 0, G = new Array(256), U = 0; U != 256; ++U)\n M = U, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, M = M & 1 ? -306674912 ^ M >>> 1 : M >>> 1, G[U] = M;\n return typeof Int32Array < \"u\" ? new Int32Array(G) : G;\n }\n var r = t();\n function n(M) {\n var G = 0, U = 0, J = 0, z = typeof Int32Array < \"u\" ? new Int32Array(4096) : new Array(4096);\n for (J = 0; J != 256; ++J) z[J] = M[J];\n for (J = 0; J != 256; ++J)\n for (U = M[J], G = 256 + J; G < 4096; G += 256) U = z[G] = U >>> 8 ^ M[U & 255];\n var re = [];\n for (J = 1; J != 16; ++J) re[J - 1] = typeof Int32Array < \"u\" && typeof z.subarray == \"function\" ? z.subarray(J * 256, J * 256 + 256) : z.slice(J * 256, J * 256 + 256);\n return re;\n }\n var i = n(r), f = i[0], c = i[1], u = i[2], l = i[3], h = i[4], x = i[5], m = i[6], _ = i[7], v = i[8], T = i[9], A = i[10], g = i[11], p = i[12], y = i[13], w = i[14];\n function P(M, G) {\n for (var U = G ^ -1, J = 0, z = M.length; J < z; ) U = U >>> 8 ^ r[(U ^ M.charCodeAt(J++)) & 255];\n return ~U;\n }\n function V(M, G) {\n for (var U = G ^ -1, J = M.length - 15, z = 0; z < J; ) U = w[M[z++] ^ U & 255] ^ y[M[z++] ^ U >> 8 & 255] ^ p[M[z++] ^ U >> 16 & 255] ^ g[M[z++] ^ U >>> 24] ^ A[M[z++]] ^ T[M[z++]] ^ v[M[z++]] ^ _[M[z++]] ^ m[M[z++]] ^ x[M[z++]] ^ h[M[z++]] ^ l[M[z++]] ^ u[M[z++]] ^ c[M[z++]] ^ f[M[z++]] ^ r[M[z++]];\n for (J += 15; z < J; ) U = U >>> 8 ^ r[(U ^ M[z++]) & 255];\n return ~U;\n }\n function Z(M, G) {\n for (var U = G ^ -1, J = 0, z = M.length, re = 0, ne = 0; J < z; )\n re = M.charCodeAt(J++), re < 128 ? U = U >>> 8 ^ r[(U ^ re) & 255] : re < 2048 ? (U = U >>> 8 ^ r[(U ^ (192 | re >> 6 & 31)) & 255], U = U >>> 8 ^ r[(U ^ (128 | re & 63)) & 255]) : re >= 55296 && re < 57344 ? (re = (re & 1023) + 64, ne = M.charCodeAt(J++) & 1023, U = U >>> 8 ^ r[(U ^ (240 | re >> 8 & 7)) & 255], U = U >>> 8 ^ r[(U ^ (128 | re >> 2 & 63)) & 255], U = U >>> 8 ^ r[(U ^ (128 | ne >> 6 & 15 | (re & 3) << 4)) & 255], U = U >>> 8 ^ r[(U ^ (128 | ne & 63)) & 255]) : (U = U >>> 8 ^ r[(U ^ (224 | re >> 12 & 15)) & 255], U = U >>> 8 ^ r[(U ^ (128 | re >> 6 & 63)) & 255], U = U >>> 8 ^ r[(U ^ (128 | re & 63)) & 255]);\n return ~U;\n }\n return e.table = r, e.bstr = P, e.buf = V, e.str = Z, e;\n}(), or = /* @__PURE__ */ function() {\n var t = (\n /*::(*/\n {}\n );\n t.version = \"1.2.2\";\n function r(k, R) {\n for (var C = k.split(\"/\"), I = R.split(\"/\"), D = 0, L = 0, Q = Math.min(C.length, I.length); D < Q; ++D) {\n if (L = C[D].length - I[D].length) return L;\n if (C[D] != I[D]) return C[D] < I[D] ? -1 : 1;\n }\n return C.length - I.length;\n }\n function n(k) {\n if (k.charAt(k.length - 1) == \"/\") return k.slice(0, -1).indexOf(\"/\") === -1 ? k : n(k.slice(0, -1));\n var R = k.lastIndexOf(\"/\");\n return R === -1 ? k : k.slice(0, R + 1);\n }\n function i(k) {\n if (k.charAt(k.length - 1) == \"/\") return i(k.slice(0, -1));\n var R = k.lastIndexOf(\"/\");\n return R === -1 ? k : k.slice(R + 1);\n }\n function f(k, R) {\n typeof R == \"string\" && (R = new Date(R));\n var C = R.getHours();\n C = C << 6 | R.getMinutes(), C = C << 5 | R.getSeconds() >>> 1, k.write_shift(2, C);\n var I = R.getFullYear() - 1980;\n I = I << 4 | R.getMonth() + 1, I = I << 5 | R.getDate(), k.write_shift(2, I);\n }\n function c(k) {\n var R = k.read_shift(2) & 65535, C = k.read_shift(2) & 65535, I = /* @__PURE__ */ new Date(), D = C & 31;\n C >>>= 5;\n var L = C & 15;\n C >>>= 4, I.setMilliseconds(0), I.setFullYear(C + 1980), I.setMonth(L - 1), I.setDate(D);\n var Q = R & 31;\n R >>>= 5;\n var ie = R & 63;\n return R >>>= 6, I.setHours(R), I.setMinutes(ie), I.setSeconds(Q << 1), I;\n }\n function u(k) {\n zr(k, 0);\n for (var R = (\n /*::(*/\n {}\n ), C = 0; k.l <= k.length - 4; ) {\n var I = k.read_shift(2), D = k.read_shift(2), L = k.l + D, Q = {};\n switch (I) {\n /* UNIX-style Timestamps */\n case 21589:\n C = k.read_shift(1), C & 1 && (Q.mtime = k.read_shift(4)), D > 5 && (C & 2 && (Q.atime = k.read_shift(4)), C & 4 && (Q.ctime = k.read_shift(4))), Q.mtime && (Q.mt = new Date(Q.mtime * 1e3));\n break;\n /* ZIP64 Extended Information Field */\n case 1:\n {\n var ie = k.read_shift(4), q = k.read_shift(4);\n Q.usz = q * Math.pow(2, 32) + ie, ie = k.read_shift(4), q = k.read_shift(4), Q.csz = q * Math.pow(2, 32) + ie;\n }\n break;\n }\n k.l = L, R[I] = Q;\n }\n return R;\n }\n var l;\n function h() {\n return l || (l = mm);\n }\n function x(k, R) {\n if (k[0] == 80 && k[1] == 75) return J0(k, R);\n if ((k[0] | 32) == 109 && (k[1] | 32) == 105) return As(k, R);\n if (k.length < 512) throw new Error(\"CFB file size \" + k.length + \" < 512\");\n var C = 3, I = 512, D = 0, L = 0, Q = 0, ie = 0, q = 0, j = [], ee = (\n /*::(*/\n k.slice(0, 512)\n );\n zr(ee, 0);\n var xe = m(ee);\n switch (C = xe[0], C) {\n case 3:\n I = 512;\n break;\n case 4:\n I = 4096;\n break;\n case 0:\n if (xe[1] == 0) return J0(k, R);\n /* falls through */\n default:\n throw new Error(\"Major Version: Expected 3 or 4 saw \" + C);\n }\n I !== 512 && (ee = /*::(*/\n k.slice(0, I), zr(\n ee,\n 28\n /* blob.l */\n ));\n var me = k.slice(0, I);\n _(ee, C);\n var Fe = ee.read_shift(4, \"i\");\n if (C === 3 && Fe !== 0) throw new Error(\"# Directory Sectors: Expected 0 saw \" + Fe);\n ee.l += 4, Q = ee.read_shift(4, \"i\"), ee.l += 4, ee.chk(\"00100000\", \"Mini Stream Cutoff Size: \"), ie = ee.read_shift(4, \"i\"), D = ee.read_shift(4, \"i\"), q = ee.read_shift(4, \"i\"), L = ee.read_shift(4, \"i\");\n for (var de = -1, _e = 0; _e < 109 && (de = ee.read_shift(4, \"i\"), !(de < 0)); ++_e)\n j[_e] = de;\n var $e = v(k, I);\n g(q, L, $e, I, j);\n var kr = y($e, Q, j, I);\n Q < kr.length && (kr[Q].name = \"!Directory\"), D > 0 && ie !== ne && (kr[ie].name = \"!MiniFAT\"), kr[j[0]].name = \"!FAT\", kr.fat_addrs = j, kr.ssz = I;\n var Fr = {}, Vr = [], ba = [], Ba = [];\n w(Q, kr, $e, Vr, D, Fr, ba, ie), T(ba, Ba, Vr), Vr.shift();\n var tn = {\n FileIndex: ba,\n FullPaths: Ba\n };\n return R && R.raw && (tn.raw = { header: me, sectors: $e }), tn;\n }\n function m(k) {\n if (k[k.l] == 80 && k[k.l + 1] == 75) return [0, 0];\n k.chk(Ae, \"Header Signature: \"), k.l += 16;\n var R = k.read_shift(2, \"u\");\n return [k.read_shift(2, \"u\"), R];\n }\n function _(k, R) {\n var C = 9;\n switch (k.l += 2, C = k.read_shift(2)) {\n case 9:\n if (R != 3) throw new Error(\"Sector Shift: Expected 9 saw \" + C);\n break;\n case 12:\n if (R != 4) throw new Error(\"Sector Shift: Expected 12 saw \" + C);\n break;\n default:\n throw new Error(\"Sector Shift: Expected 9 or 12 saw \" + C);\n }\n k.chk(\"0600\", \"Mini Sector Shift: \"), k.chk(\"000000000000\", \"Reserved: \");\n }\n function v(k, R) {\n for (var C = Math.ceil(k.length / R) - 1, I = [], D = 1; D < C; ++D) I[D - 1] = k.slice(D * R, (D + 1) * R);\n return I[C - 1] = k.slice(C * R), I;\n }\n function T(k, R, C) {\n for (var I = 0, D = 0, L = 0, Q = 0, ie = 0, q = C.length, j = [], ee = []; I < q; ++I)\n j[I] = ee[I] = I, R[I] = C[I];\n for (; ie < ee.length; ++ie)\n I = ee[ie], D = k[I].L, L = k[I].R, Q = k[I].C, j[I] === I && (D !== -1 && j[D] !== D && (j[I] = j[D]), L !== -1 && j[L] !== L && (j[I] = j[L])), Q !== -1 && (j[Q] = I), D !== -1 && I != j[I] && (j[D] = j[I], ee.lastIndexOf(D) < ie && ee.push(D)), L !== -1 && I != j[I] && (j[L] = j[I], ee.lastIndexOf(L) < ie && ee.push(L));\n for (I = 1; I < q; ++I) j[I] === I && (L !== -1 && j[L] !== L ? j[I] = j[L] : D !== -1 && j[D] !== D && (j[I] = j[D]));\n for (I = 1; I < q; ++I)\n if (k[I].type !== 0) {\n if (ie = I, ie != j[ie]) do\n ie = j[ie], R[I] = R[ie] + \"/\" + R[I];\n while (ie !== 0 && j[ie] !== -1 && ie != j[ie]);\n j[I] = -1;\n }\n for (R[0] += \"/\", I = 1; I < q; ++I)\n k[I].type !== 2 && (R[I] += \"/\");\n }\n function A(k, R, C) {\n for (var I = k.start, D = k.size, L = [], Q = I; C && D > 0 && Q >= 0; )\n L.push(R.slice(Q * re, Q * re + re)), D -= re, Q = dn(C, Q * 4);\n return L.length === 0 ? Hr(0) : Ya(L).slice(0, k.size);\n }\n function g(k, R, C, I, D) {\n var L = ne;\n if (k === ne) {\n if (R !== 0) throw new Error(\"DIFAT chain shorter than expected\");\n } else if (k !== -1) {\n var Q = C[k], ie = (I >>> 2) - 1;\n if (!Q) return;\n for (var q = 0; q < ie && (L = dn(Q, q * 4)) !== ne; ++q)\n D.push(L);\n R >= 1 && g(dn(Q, I - 4), R - 1, C, I, D);\n }\n }\n function p(k, R, C, I, D) {\n var L = [], Q = [];\n D || (D = []);\n var ie = I - 1, q = 0, j = 0;\n for (q = R; q >= 0; ) {\n D[q] = !0, L[L.length] = q, Q.push(k[q]);\n var ee = C[Math.floor(q * 4 / I)];\n if (j = q * 4 & ie, I < 4 + j) throw new Error(\"FAT boundary crossed: \" + q + \" 4 \" + I);\n if (!k[ee]) break;\n q = dn(k[ee], j);\n }\n return { nodes: L, data: gl([Q]) };\n }\n function y(k, R, C, I) {\n var D = k.length, L = [], Q = [], ie = [], q = [], j = I - 1, ee = 0, xe = 0, me = 0, Fe = 0;\n for (ee = 0; ee < D; ++ee)\n if (ie = [], me = ee + R, me >= D && (me -= D), !Q[me]) {\n q = [];\n var de = [];\n for (xe = me; xe >= 0; ) {\n de[xe] = !0, Q[xe] = !0, ie[ie.length] = xe, q.push(k[xe]);\n var _e = C[Math.floor(xe * 4 / I)];\n if (Fe = xe * 4 & j, I < 4 + Fe) throw new Error(\"FAT boundary crossed: \" + xe + \" 4 \" + I);\n if (!k[_e] || (xe = dn(k[_e], Fe), de[xe])) break;\n }\n L[me] = { nodes: ie, data: gl([q]) };\n }\n return L;\n }\n function w(k, R, C, I, D, L, Q, ie) {\n for (var q = 0, j = I.length ? 2 : 0, ee = R[k].data, xe = 0, me = 0, Fe; xe < ee.length; xe += 128) {\n var de = (\n /*::(*/\n ee.slice(xe, xe + 128)\n );\n zr(de, 64), me = de.read_shift(2), Fe = dc(de, 0, me - j), I.push(Fe);\n var _e = {\n name: Fe,\n type: de.read_shift(1),\n color: de.read_shift(1),\n L: de.read_shift(4, \"i\"),\n R: de.read_shift(4, \"i\"),\n C: de.read_shift(4, \"i\"),\n clsid: de.read_shift(16),\n state: de.read_shift(4, \"i\"),\n start: 0,\n size: 0\n }, $e = de.read_shift(2) + de.read_shift(2) + de.read_shift(2) + de.read_shift(2);\n $e !== 0 && (_e.ct = P(de, de.l - 8));\n var kr = de.read_shift(2) + de.read_shift(2) + de.read_shift(2) + de.read_shift(2);\n kr !== 0 && (_e.mt = P(de, de.l - 8)), _e.start = de.read_shift(4, \"i\"), _e.size = de.read_shift(4, \"i\"), _e.size < 0 && _e.start < 0 && (_e.size = _e.type = 0, _e.start = ne, _e.name = \"\"), _e.type === 5 ? (q = _e.start, D > 0 && q !== ne && (R[q].name = \"!StreamData\")) : _e.size >= 4096 ? (_e.storage = \"fat\", R[_e.start] === void 0 && (R[_e.start] = p(C, _e.start, R.fat_addrs, R.ssz)), R[_e.start].name = _e.name, _e.content = R[_e.start].data.slice(0, _e.size)) : (_e.storage = \"minifat\", _e.size < 0 ? _e.size = 0 : q !== ne && _e.start !== ne && R[q] && (_e.content = A(_e, R[q].data, (R[ie] || {}).data))), _e.content && zr(_e.content, 0), L[Fe] = _e, Q.push(_e);\n }\n }\n function P(k, R) {\n return new Date((Bt(k, R + 4) / 1e7 * Math.pow(2, 32) + Bt(k, R) / 1e7 - 11644473600) * 1e3);\n }\n function V(k, R) {\n return h(), x(l.readFileSync(k), R);\n }\n function Z(k, R) {\n var C = R && R.type;\n switch (C || tr && Buffer.isBuffer(k) && (C = \"buffer\"), C || \"base64\") {\n case \"file\":\n return V(k, R);\n case \"base64\":\n return x(bt(Ut(k)), R);\n case \"binary\":\n return x(bt(k), R);\n }\n return x(\n /*::typeof blob == 'string' ? new Buffer(blob, 'utf-8') : */\n k,\n R\n );\n }\n function M(k, R) {\n var C = R || {}, I = C.root || \"Root Entry\";\n if (k.FullPaths || (k.FullPaths = []), k.FileIndex || (k.FileIndex = []), k.FullPaths.length !== k.FileIndex.length) throw new Error(\"inconsistent CFB structure\");\n k.FullPaths.length === 0 && (k.FullPaths[0] = I + \"/\", k.FileIndex[0] = { name: I, type: 5 }), C.CLSID && (k.FileIndex[0].clsid = C.CLSID), G(k);\n }\n function G(k) {\n var R = \"\u0001Sh33tJ5\";\n if (!or.find(k, \"/\" + R)) {\n var C = Hr(4);\n C[0] = 55, C[1] = C[3] = 50, C[2] = 54, k.FileIndex.push({ name: R, type: 2, content: C, size: 4, L: 69, R: 69, C: 69 }), k.FullPaths.push(k.FullPaths[0] + R), U(k);\n }\n }\n function U(k, R) {\n M(k);\n for (var C = !1, I = !1, D = k.FullPaths.length - 1; D >= 0; --D) {\n var L = k.FileIndex[D];\n switch (L.type) {\n case 0:\n I ? C = !0 : (k.FileIndex.pop(), k.FullPaths.pop());\n break;\n case 1:\n case 2:\n case 5:\n I = !0, isNaN(L.R * L.L * L.C) && (C = !0), L.R > -1 && L.L > -1 && L.R == L.L && (C = !0);\n break;\n default:\n C = !0;\n break;\n }\n }\n if (!(!C && !R)) {\n var Q = new Date(1987, 1, 19), ie = 0, q = Object.create ? /* @__PURE__ */ Object.create(null) : {}, j = [];\n for (D = 0; D < k.FullPaths.length; ++D)\n q[k.FullPaths[D]] = !0, k.FileIndex[D].type !== 0 && j.push([k.FullPaths[D], k.FileIndex[D]]);\n for (D = 0; D < j.length; ++D) {\n var ee = n(j[D][0]);\n for (I = q[ee]; !I; ) {\n for (; n(ee) && !q[n(ee)]; ) ee = n(ee);\n j.push([ee, {\n name: i(ee).replace(\"/\", \"\"),\n type: 1,\n clsid: De,\n ct: Q,\n mt: Q,\n content: null\n }]), q[ee] = !0, ee = n(j[D][0]), I = q[ee];\n }\n }\n for (j.sort(function(Fe, de) {\n return r(Fe[0], de[0]);\n }), k.FullPaths = [], k.FileIndex = [], D = 0; D < j.length; ++D)\n k.FullPaths[D] = j[D][0], k.FileIndex[D] = j[D][1];\n for (D = 0; D < j.length; ++D) {\n var xe = k.FileIndex[D], me = k.FullPaths[D];\n if (xe.name = i(me).replace(\"/\", \"\"), xe.L = xe.R = xe.C = -(xe.color = 1), xe.size = xe.content ? xe.content.length : 0, xe.start = 0, xe.clsid = xe.clsid || De, D === 0)\n xe.C = j.length > 1 ? 1 : -1, xe.size = 0, xe.type = 5;\n else if (me.slice(-1) == \"/\") {\n for (ie = D + 1; ie < j.length && n(k.FullPaths[ie]) != me; ++ie) ;\n for (xe.C = ie >= j.length ? -1 : ie, ie = D + 1; ie < j.length && n(k.FullPaths[ie]) != n(me); ++ie) ;\n xe.R = ie >= j.length ? -1 : ie, xe.type = 1;\n } else\n n(k.FullPaths[D + 1] || \"\") == n(me) && (xe.R = D + 1), xe.type = 2;\n }\n }\n }\n function J(k, R) {\n var C = R || {};\n if (C.fileType == \"mad\") return Fs(k, C);\n switch (U(k), C.fileType) {\n case \"zip\":\n return Q0(k, C);\n }\n var I = function(Fe) {\n for (var de = 0, _e = 0, $e = 0; $e < Fe.FileIndex.length; ++$e) {\n var kr = Fe.FileIndex[$e];\n if (kr.content) {\n var Fr = kr.content.length;\n Fr > 0 && (Fr < 4096 ? de += Fr + 63 >> 6 : _e += Fr + 511 >> 9);\n }\n }\n for (var Vr = Fe.FullPaths.length + 3 >> 2, ba = de + 7 >> 3, Ba = de + 127 >> 7, tn = ba + _e + Vr + Ba, _a = tn + 127 >> 7, t0 = _a <= 109 ? 0 : Math.ceil((_a - 109) / 127); tn + _a + t0 + 127 >> 7 > _a; ) t0 = ++_a <= 109 ? 0 : Math.ceil((_a - 109) / 127);\n var aa = [1, t0, _a, Ba, Vr, _e, de, 0];\n return Fe.FileIndex[0].size = de << 6, aa[7] = (Fe.FileIndex[0].start = aa[0] + aa[1] + aa[2] + aa[3] + aa[4] + aa[5]) + (aa[6] + 7 >> 3), aa;\n }(k), D = Hr(I[7] << 9), L = 0, Q = 0;\n {\n for (L = 0; L < 8; ++L) D.write_shift(1, he[L]);\n for (L = 0; L < 8; ++L) D.write_shift(2, 0);\n for (D.write_shift(2, 62), D.write_shift(2, 3), D.write_shift(2, 65534), D.write_shift(2, 9), D.write_shift(2, 6), L = 0; L < 3; ++L) D.write_shift(2, 0);\n for (D.write_shift(4, 0), D.write_shift(4, I[2]), D.write_shift(4, I[0] + I[1] + I[2] + I[3] - 1), D.write_shift(4, 0), D.write_shift(4, 4096), D.write_shift(4, I[3] ? I[0] + I[1] + I[2] - 1 : ne), D.write_shift(4, I[3]), D.write_shift(-4, I[1] ? I[0] - 1 : ne), D.write_shift(4, I[1]), L = 0; L < 109; ++L) D.write_shift(-4, L < I[2] ? I[1] + L : -1);\n }\n if (I[1])\n for (Q = 0; Q < I[1]; ++Q) {\n for (; L < 236 + Q * 127; ++L) D.write_shift(-4, L < I[2] ? I[1] + L : -1);\n D.write_shift(-4, Q === I[1] - 1 ? ne : Q + 1);\n }\n var ie = function(Fe) {\n for (Q += Fe; L < Q - 1; ++L) D.write_shift(-4, L + 1);\n Fe && (++L, D.write_shift(-4, ne));\n };\n for (Q = L = 0, Q += I[1]; L < Q; ++L) D.write_shift(-4, le.DIFSECT);\n for (Q += I[2]; L < Q; ++L) D.write_shift(-4, le.FATSECT);\n ie(I[3]), ie(I[4]);\n for (var q = 0, j = 0, ee = k.FileIndex[0]; q < k.FileIndex.length; ++q)\n ee = k.FileIndex[q], ee.content && (j = ee.content.length, !(j < 4096) && (ee.start = Q, ie(j + 511 >> 9)));\n for (ie(I[6] + 7 >> 3); D.l & 511; ) D.write_shift(-4, le.ENDOFCHAIN);\n for (Q = L = 0, q = 0; q < k.FileIndex.length; ++q)\n ee = k.FileIndex[q], ee.content && (j = ee.content.length, !(!j || j >= 4096) && (ee.start = Q, ie(j + 63 >> 6)));\n for (; D.l & 511; ) D.write_shift(-4, le.ENDOFCHAIN);\n for (L = 0; L < I[4] << 2; ++L) {\n var xe = k.FullPaths[L];\n if (!xe || xe.length === 0) {\n for (q = 0; q < 17; ++q) D.write_shift(4, 0);\n for (q = 0; q < 3; ++q) D.write_shift(4, -1);\n for (q = 0; q < 12; ++q) D.write_shift(4, 0);\n continue;\n }\n ee = k.FileIndex[L], L === 0 && (ee.start = ee.size ? ee.start - 1 : ne);\n var me = L === 0 && C.root || ee.name;\n if (me.length > 31 && (console.error(\"Name \" + me + \" will be truncated to \" + me.slice(0, 31)), me = me.slice(0, 31)), j = 2 * (me.length + 1), D.write_shift(64, me, \"utf16le\"), D.write_shift(2, j), D.write_shift(1, ee.type), D.write_shift(1, ee.color), D.write_shift(-4, ee.L), D.write_shift(-4, ee.R), D.write_shift(-4, ee.C), ee.clsid) D.write_shift(16, ee.clsid, \"hex\");\n else for (q = 0; q < 4; ++q) D.write_shift(4, 0);\n D.write_shift(4, ee.state || 0), D.write_shift(4, 0), D.write_shift(4, 0), D.write_shift(4, 0), D.write_shift(4, 0), D.write_shift(4, ee.start), D.write_shift(4, ee.size), D.write_shift(4, 0);\n }\n for (L = 1; L < k.FileIndex.length; ++L)\n if (ee = k.FileIndex[L], ee.size >= 4096)\n if (D.l = ee.start + 1 << 9, tr && Buffer.isBuffer(ee.content))\n ee.content.copy(D, D.l, 0, ee.size), D.l += ee.size + 511 & -512;\n else {\n for (q = 0; q < ee.size; ++q) D.write_shift(1, ee.content[q]);\n for (; q & 511; ++q) D.write_shift(1, 0);\n }\n for (L = 1; L < k.FileIndex.length; ++L)\n if (ee = k.FileIndex[L], ee.size > 0 && ee.size < 4096)\n if (tr && Buffer.isBuffer(ee.content))\n ee.content.copy(D, D.l, 0, ee.size), D.l += ee.size + 63 & -64;\n else {\n for (q = 0; q < ee.size; ++q) D.write_shift(1, ee.content[q]);\n for (; q & 63; ++q) D.write_shift(1, 0);\n }\n if (tr)\n D.l = D.length;\n else\n for (; D.l < D.length; ) D.write_shift(1, 0);\n return D;\n }\n function z(k, R) {\n var C = k.FullPaths.map(function(q) {\n return q.toUpperCase();\n }), I = C.map(function(q) {\n var j = q.split(\"/\");\n return j[j.length - (q.slice(-1) == \"/\" ? 2 : 1)];\n }), D = !1;\n R.charCodeAt(0) === 47 ? (D = !0, R = C[0].slice(0, -1) + R) : D = R.indexOf(\"/\") !== -1;\n var L = R.toUpperCase(), Q = D === !0 ? C.indexOf(L) : I.indexOf(L);\n if (Q !== -1) return k.FileIndex[Q];\n var ie = !L.match(E0);\n for (L = L.replace(St, \"\"), ie && (L = L.replace(E0, \"!\")), Q = 0; Q < C.length; ++Q)\n if ((ie ? C[Q].replace(E0, \"!\") : C[Q]).replace(St, \"\") == L || (ie ? I[Q].replace(E0, \"!\") : I[Q]).replace(St, \"\") == L) return k.FileIndex[Q];\n return null;\n }\n var re = 64, ne = -2, Ae = \"d0cf11e0a1b11ae1\", he = [208, 207, 17, 224, 161, 177, 26, 225], De = \"00000000000000000000000000000000\", le = {\n /* 2.1 Compund File Sector Numbers and Types */\n MAXREGSECT: -6,\n DIFSECT: -4,\n FATSECT: -3,\n ENDOFCHAIN: ne,\n FREESECT: -1,\n /* 2.2 Compound File Header */\n HEADER_SIGNATURE: Ae,\n HEADER_MINOR_VERSION: \"3e00\",\n MAXREGSID: -6,\n NOSTREAM: -1,\n HEADER_CLSID: De,\n /* 2.6.1 Compound File Directory Entry */\n EntryTypes: [\"unknown\", \"storage\", \"stream\", \"lockbytes\", \"property\", \"root\"]\n };\n function Ee(k, R, C) {\n h();\n var I = J(k, C);\n l.writeFileSync(R, I);\n }\n function be(k) {\n for (var R = new Array(k.length), C = 0; C < k.length; ++C) R[C] = String.fromCharCode(k[C]);\n return R.join(\"\");\n }\n function ae(k, R) {\n var C = J(k, R);\n switch (R && R.type || \"buffer\") {\n case \"file\":\n return h(), l.writeFileSync(R.filename, C), C;\n case \"binary\":\n return typeof C == \"string\" ? C : be(C);\n case \"base64\":\n return el(typeof C == \"string\" ? C : be(C));\n case \"buffer\":\n if (tr) return Buffer.isBuffer(C) ? C : en(C);\n /* falls through */\n case \"array\":\n return typeof C == \"string\" ? bt(C) : C;\n }\n return C;\n }\n var Pe;\n function Ge(k) {\n try {\n var R = k.InflateRaw, C = new R();\n if (C._processChunk(new Uint8Array([3, 0]), C._finishFlushFlag), C.bytesRead) Pe = k;\n else throw new Error(\"zlib does not expose bytesRead\");\n } catch (I) {\n console.error(\"cannot use native zlib: \" + (I.message || I));\n }\n }\n function Le(k, R) {\n if (!Pe) return Y0(k, R);\n var C = Pe.InflateRaw, I = new C(), D = I._processChunk(k.slice(k.l), I._finishFlushFlag);\n return k.l += I.bytesRead, D;\n }\n function Se(k) {\n return Pe ? Pe.deflateRawSync(k) : Yr(k);\n }\n var Me = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], Be = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258], Ke = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577];\n function N(k) {\n var R = (k << 1 | k << 11) & 139536 | (k << 5 | k << 15) & 558144;\n return (R >> 16 | R >> 8 | R) & 255;\n }\n for (var K = typeof Uint8Array < \"u\", H = K ? new Uint8Array(256) : [], B = 0; B < 256; ++B) H[B] = N(B);\n function fe(k, R) {\n var C = H[k & 255];\n return R <= 8 ? C >>> 8 - R : (C = C << 8 | H[k >> 8 & 255], R <= 16 ? C >>> 16 - R : (C = C << 8 | H[k >> 16 & 255], C >>> 24 - R));\n }\n function O(k, R) {\n var C = R & 7, I = R >>> 3;\n return (k[I] | (C <= 6 ? 0 : k[I + 1] << 8)) >>> C & 3;\n }\n function pe(k, R) {\n var C = R & 7, I = R >>> 3;\n return (k[I] | (C <= 5 ? 0 : k[I + 1] << 8)) >>> C & 7;\n }\n function Te(k, R) {\n var C = R & 7, I = R >>> 3;\n return (k[I] | (C <= 4 ? 0 : k[I + 1] << 8)) >>> C & 15;\n }\n function ve(k, R) {\n var C = R & 7, I = R >>> 3;\n return (k[I] | (C <= 3 ? 0 : k[I + 1] << 8)) >>> C & 31;\n }\n function Oe(k, R) {\n var C = R & 7, I = R >>> 3;\n return (k[I] | (C <= 1 ? 0 : k[I + 1] << 8)) >>> C & 127;\n }\n function Re(k, R, C) {\n var I = R & 7, D = R >>> 3, L = (1 << C) - 1, Q = k[D] >>> I;\n return C < 8 - I || (Q |= k[D + 1] << 8 - I, C < 16 - I) || (Q |= k[D + 2] << 16 - I, C < 24 - I) || (Q |= k[D + 3] << 24 - I), Q & L;\n }\n function Ve(k, R, C) {\n var I = R & 7, D = R >>> 3;\n return I <= 5 ? k[D] |= (C & 7) << I : (k[D] |= C << I & 255, k[D + 1] = (C & 7) >> 8 - I), R + 3;\n }\n function ar(k, R, C) {\n var I = R & 7, D = R >>> 3;\n return C = (C & 1) << I, k[D] |= C, R + 1;\n }\n function qe(k, R, C) {\n var I = R & 7, D = R >>> 3;\n return C <<= I, k[D] |= C & 255, C >>>= 8, k[D + 1] = C, R + 8;\n }\n function Er(k, R, C) {\n var I = R & 7, D = R >>> 3;\n return C <<= I, k[D] |= C & 255, C >>>= 8, k[D + 1] = C & 255, k[D + 2] = C >>> 8, R + 16;\n }\n function Ce(k, R) {\n var C = k.length, I = 2 * C > R ? 2 * C : R + 5, D = 0;\n if (C >= R) return k;\n if (tr) {\n var L = rl(I);\n if (k.copy) k.copy(L);\n else for (; D < k.length; ++D) L[D] = k[D];\n return L;\n } else if (K) {\n var Q = new Uint8Array(I);\n if (Q.set) Q.set(k);\n else for (; D < C; ++D) Q[D] = k[D];\n return Q;\n }\n return k.length = I, k;\n }\n function er(k) {\n for (var R = new Array(k), C = 0; C < k; ++C) R[C] = 0;\n return R;\n }\n function ge(k, R, C) {\n var I = 1, D = 0, L = 0, Q = 0, ie = 0, q = k.length, j = K ? new Uint16Array(32) : er(32);\n for (L = 0; L < 32; ++L) j[L] = 0;\n for (L = q; L < C; ++L) k[L] = 0;\n q = k.length;\n var ee = K ? new Uint16Array(q) : er(q);\n for (L = 0; L < q; ++L)\n j[D = k[L]]++, I < D && (I = D), ee[L] = 0;\n for (j[0] = 0, L = 1; L <= I; ++L) j[L + 16] = ie = ie + j[L - 1] << 1;\n for (L = 0; L < q; ++L)\n ie = k[L], ie != 0 && (ee[L] = j[ie + 16]++);\n var xe = 0;\n for (L = 0; L < q; ++L)\n if (xe = k[L], xe != 0)\n for (ie = fe(ee[L], I) >> I - xe, Q = (1 << I + 4 - xe) - 1; Q >= 0; --Q)\n R[ie | Q << xe] = xe & 15 | L << 4;\n return I;\n }\n var xt = K ? new Uint16Array(512) : er(512), Nr = K ? new Uint16Array(32) : er(32);\n if (!K) {\n for (var dr = 0; dr < 512; ++dr) xt[dr] = 0;\n for (dr = 0; dr < 32; ++dr) Nr[dr] = 0;\n }\n (function() {\n for (var k = [], R = 0; R < 32; R++) k.push(5);\n ge(k, Nr, 32);\n var C = [];\n for (R = 0; R <= 143; R++) C.push(8);\n for (; R <= 255; R++) C.push(9);\n for (; R <= 279; R++) C.push(7);\n for (; R <= 287; R++) C.push(8);\n ge(C, xt, 288);\n })();\n var dt = /* @__PURE__ */ function() {\n for (var R = K ? new Uint8Array(32768) : [], C = 0, I = 0; C < Ke.length - 1; ++C)\n for (; I < Ke[C + 1]; ++I) R[I] = C;\n for (; I < 32768; ++I) R[I] = 29;\n var D = K ? new Uint8Array(259) : [];\n for (C = 0, I = 0; C < Be.length - 1; ++C)\n for (; I < Be[C + 1]; ++I) D[I] = C;\n function L(ie, q) {\n for (var j = 0; j < ie.length; ) {\n var ee = Math.min(65535, ie.length - j), xe = j + ee == ie.length;\n for (q.write_shift(1, +xe), q.write_shift(2, ee), q.write_shift(2, ~ee & 65535); ee-- > 0; ) q[q.l++] = ie[j++];\n }\n return q.l;\n }\n function Q(ie, q) {\n for (var j = 0, ee = 0, xe = K ? new Uint16Array(32768) : []; ee < ie.length; ) {\n var me = (\n /* data.length - boff; */\n Math.min(65535, ie.length - ee)\n );\n if (me < 10) {\n for (j = Ve(q, j, +(ee + me == ie.length)), j & 7 && (j += 8 - (j & 7)), q.l = j / 8 | 0, q.write_shift(2, me), q.write_shift(2, ~me & 65535); me-- > 0; ) q[q.l++] = ie[ee++];\n j = q.l * 8;\n continue;\n }\n j = Ve(q, j, +(ee + me == ie.length) + 2);\n for (var Fe = 0; me-- > 0; ) {\n var de = ie[ee];\n Fe = (Fe << 5 ^ de) & 32767;\n var _e = -1, $e = 0;\n if ((_e = xe[Fe]) && (_e |= ee & -32768, _e > ee && (_e -= 32768), _e < ee))\n for (; ie[_e + $e] == ie[ee + $e] && $e < 250; ) ++$e;\n if ($e > 2) {\n de = D[$e], de <= 22 ? j = qe(q, j, H[de + 1] >> 1) - 1 : (qe(q, j, 3), j += 5, qe(q, j, H[de - 23] >> 5), j += 3);\n var kr = de < 8 ? 0 : de - 4 >> 2;\n kr > 0 && (Er(q, j, $e - Be[de]), j += kr), de = R[ee - _e], j = qe(q, j, H[de] >> 3), j -= 3;\n var Fr = de < 4 ? 0 : de - 2 >> 1;\n Fr > 0 && (Er(q, j, ee - _e - Ke[de]), j += Fr);\n for (var Vr = 0; Vr < $e; ++Vr)\n xe[Fe] = ee & 32767, Fe = (Fe << 5 ^ ie[ee]) & 32767, ++ee;\n me -= $e - 1;\n } else\n de <= 143 ? de = de + 48 : j = ar(q, j, 1), j = qe(q, j, H[de]), xe[Fe] = ee & 32767, ++ee;\n }\n j = qe(q, j, 0) - 1;\n }\n return q.l = (j + 7) / 8 | 0, q.l;\n }\n return function(q, j) {\n return q.length < 8 ? L(q, j) : Q(q, j);\n };\n }();\n function Yr(k) {\n var R = Hr(50 + Math.floor(k.length * 1.1)), C = dt(k, R);\n return R.slice(0, C);\n }\n var we = K ? new Uint16Array(32768) : er(32768), fr = K ? new Uint16Array(32768) : er(32768), Cr = K ? new Uint16Array(128) : er(128), yr = 1, yt = 1;\n function ta(k, R) {\n var C = ve(k, R) + 257;\n R += 5;\n var I = ve(k, R) + 1;\n R += 5;\n var D = Te(k, R) + 4;\n R += 4;\n for (var L = 0, Q = K ? new Uint8Array(19) : er(19), ie = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], q = 1, j = K ? new Uint8Array(8) : er(8), ee = K ? new Uint8Array(8) : er(8), xe = Q.length, me = 0; me < D; ++me)\n Q[Me[me]] = L = pe(k, R), q < L && (q = L), j[L]++, R += 3;\n var Fe = 0;\n for (j[0] = 0, me = 1; me <= q; ++me) ee[me] = Fe = Fe + j[me - 1] << 1;\n for (me = 0; me < xe; ++me) (Fe = Q[me]) != 0 && (ie[me] = ee[Fe]++);\n var de = 0;\n for (me = 0; me < xe; ++me)\n if (de = Q[me], de != 0) {\n Fe = H[ie[me]] >> 8 - de;\n for (var _e = (1 << 7 - de) - 1; _e >= 0; --_e) Cr[Fe | _e << de] = de & 7 | me << 3;\n }\n var $e = [];\n for (q = 1; $e.length < C + I; )\n switch (Fe = Cr[Oe(k, R)], R += Fe & 7, Fe >>>= 3) {\n case 16:\n for (L = 3 + O(k, R), R += 2, Fe = $e[$e.length - 1]; L-- > 0; ) $e.push(Fe);\n break;\n case 17:\n for (L = 3 + pe(k, R), R += 3; L-- > 0; ) $e.push(0);\n break;\n case 18:\n for (L = 11 + Oe(k, R), R += 7; L-- > 0; ) $e.push(0);\n break;\n default:\n $e.push(Fe), q < Fe && (q = Fe);\n break;\n }\n var kr = $e.slice(0, C), Fr = $e.slice(C);\n for (me = C; me < 286; ++me) kr[me] = 0;\n for (me = I; me < 30; ++me) Fr[me] = 0;\n return yr = ge(kr, we, 286), yt = ge(Fr, fr, 30), R;\n }\n function Pa(k, R) {\n if (k[0] == 3 && !(k[1] & 3))\n return [qa(R), 2];\n for (var C = 0, I = 0, D = rl(R || 1 << 18), L = 0, Q = D.length >>> 0, ie = 0, q = 0; (I & 1) == 0; ) {\n if (I = pe(k, C), C += 3, I >>> 1)\n I >> 1 == 1 ? (ie = 9, q = 5) : (C = ta(k, C), ie = yr, q = yt);\n else {\n C & 7 && (C += 8 - (C & 7));\n var j = k[C >>> 3] | k[(C >>> 3) + 1] << 8;\n if (C += 32, j > 0)\n for (!R && Q < L + j && (D = Ce(D, L + j), Q = D.length); j-- > 0; )\n D[L++] = k[C >>> 3], C += 8;\n continue;\n }\n for (; ; ) {\n !R && Q < L + 32767 && (D = Ce(D, L + 32767), Q = D.length);\n var ee = Re(k, C, ie), xe = I >>> 1 == 1 ? xt[ee] : we[ee];\n if (C += xe & 15, xe >>>= 4, (xe >>> 8 & 255) === 0) D[L++] = xe;\n else {\n if (xe == 256) break;\n xe -= 257;\n var me = xe < 8 ? 0 : xe - 4 >> 2;\n me > 5 && (me = 0);\n var Fe = L + Be[xe];\n me > 0 && (Fe += Re(k, C, me), C += me), ee = Re(k, C, q), xe = I >>> 1 == 1 ? Nr[ee] : fr[ee], C += xe & 15, xe >>>= 4;\n var de = xe < 4 ? 0 : xe - 2 >> 1, _e = Ke[xe];\n for (de > 0 && (_e += Re(k, C, de), C += de), !R && Q < Fe && (D = Ce(D, Fe + 100), Q = D.length); L < Fe; )\n D[L] = D[L - _e], ++L;\n }\n }\n }\n return R ? [D, C + 7 >>> 3] : [D.slice(0, L), C + 7 >>> 3];\n }\n function Y0(k, R) {\n var C = k.slice(k.l || 0), I = Pa(C, R);\n return k.l += I[1], I[0];\n }\n function Z0(k, R) {\n if (k)\n typeof console < \"u\" && console.error(R);\n else throw new Error(R);\n }\n function J0(k, R) {\n var C = (\n /*::(*/\n k\n );\n zr(C, 0);\n var I = [], D = [], L = {\n FileIndex: I,\n FullPaths: D\n };\n M(L, { root: R.root });\n for (var Q = C.length - 4; (C[Q] != 80 || C[Q + 1] != 75 || C[Q + 2] != 5 || C[Q + 3] != 6) && Q >= 0; ) --Q;\n C.l = Q + 4, C.l += 4;\n var ie = C.read_shift(2);\n C.l += 6;\n var q = C.read_shift(4);\n for (C.l = q, Q = 0; Q < ie; ++Q) {\n C.l += 20;\n var j = C.read_shift(4), ee = C.read_shift(4), xe = C.read_shift(2), me = C.read_shift(2), Fe = C.read_shift(2);\n C.l += 8;\n var de = C.read_shift(4), _e = u(\n /*::(*/\n C.slice(C.l + xe, C.l + xe + me)\n /*:: :any)*/\n );\n C.l += xe + me + Fe;\n var $e = C.l;\n C.l = de + 4, _e && _e[1] && ((_e[1] || {}).usz && (ee = _e[1].usz), (_e[1] || {}).csz && (j = _e[1].csz)), q0(C, j, ee, L, _e), C.l = $e;\n }\n return L;\n }\n function q0(k, R, C, I, D) {\n k.l += 2;\n var L = k.read_shift(2), Q = k.read_shift(2), ie = c(k);\n if (L & 8257) throw new Error(\"Unsupported ZIP encryption\");\n for (var q = k.read_shift(4), j = k.read_shift(4), ee = k.read_shift(4), xe = k.read_shift(2), me = k.read_shift(2), Fe = \"\", de = 0; de < xe; ++de) Fe += String.fromCharCode(k[k.l++]);\n if (me) {\n var _e = u(\n /*::(*/\n k.slice(k.l, k.l + me)\n /*:: :any)*/\n );\n (_e[21589] || {}).mt && (ie = _e[21589].mt), (_e[1] || {}).usz && (ee = _e[1].usz), (_e[1] || {}).csz && (j = _e[1].csz), D && ((D[21589] || {}).mt && (ie = D[21589].mt), (D[1] || {}).usz && (ee = D[1].usz), (D[1] || {}).csz && (j = D[1].csz));\n }\n k.l += me;\n var $e = k.slice(k.l, k.l + j);\n switch (Q) {\n case 8:\n $e = Le(k, ee);\n break;\n case 0:\n k.l += j;\n break;\n // TODO: scan for magic number\n default:\n throw new Error(\"Unsupported ZIP Compression method \" + Q);\n }\n var kr = !1;\n L & 8 && (q = k.read_shift(4), q == 134695760 && (q = k.read_shift(4), kr = !0), j = k.read_shift(4), ee = k.read_shift(4)), j != R && Z0(kr, \"Bad compressed size: \" + R + \" != \" + j), ee != C && Z0(kr, \"Bad uncompressed size: \" + C + \" != \" + ee), e0(I, Fe, $e, { unsafe: !0, mt: ie });\n }\n function Q0(k, R) {\n var C = R || {}, I = [], D = [], L = Hr(1), Q = C.compression ? 8 : 0, ie = 0, q = 0, j = 0, ee = 0, xe = 0, me = k.FullPaths[0], Fe = me, de = k.FileIndex[0], _e = [], $e = 0;\n for (q = 1; q < k.FullPaths.length; ++q)\n if (Fe = k.FullPaths[q].slice(me.length), de = k.FileIndex[q], !(!de.size || !de.content || Array.isArray(de.content) && de.content.length == 0 || Fe == \"\u0001Sh33tJ5\")) {\n var kr = ee, Fr = Hr(Fe.length);\n for (j = 0; j < Fe.length; ++j) Fr.write_shift(1, Fe.charCodeAt(j) & 127);\n Fr = Fr.slice(0, Fr.l), _e[xe] = typeof de.content == \"string\" ? ul.bstr(de.content, 0) : ul.buf(\n /*::((*/\n de.content,\n 0\n );\n var Vr = typeof de.content == \"string\" ? bt(de.content) : de.content;\n Q == 8 && (Vr = Se(Vr)), L = Hr(30), L.write_shift(4, 67324752), L.write_shift(2, 20), L.write_shift(2, ie), L.write_shift(2, Q), de.mt ? f(L, de.mt) : L.write_shift(4, 0), L.write_shift(-4, _e[xe]), L.write_shift(4, Vr.length), L.write_shift(\n 4,\n /*::(*/\n de.content.length\n ), L.write_shift(2, Fr.length), L.write_shift(2, 0), ee += L.length, I.push(L), ee += Fr.length, I.push(Fr), ee += Vr.length, I.push(Vr), L = Hr(46), L.write_shift(4, 33639248), L.write_shift(2, 0), L.write_shift(2, 20), L.write_shift(2, ie), L.write_shift(2, Q), L.write_shift(4, 0), L.write_shift(-4, _e[xe]), L.write_shift(4, Vr.length), L.write_shift(\n 4,\n /*::(*/\n de.content.length\n ), L.write_shift(2, Fr.length), L.write_shift(2, 0), L.write_shift(2, 0), L.write_shift(2, 0), L.write_shift(2, 0), L.write_shift(4, 0), L.write_shift(4, kr), $e += L.l, D.push(L), $e += Fr.length, D.push(Fr), ++xe;\n }\n return L = Hr(22), L.write_shift(4, 101010256), L.write_shift(2, 0), L.write_shift(2, 0), L.write_shift(2, xe), L.write_shift(2, xe), L.write_shift(4, $e), L.write_shift(4, ee), L.write_shift(2, 0), Ya([Ya(I), Ya(D), L]);\n }\n var Cn = {\n htm: \"text/html\",\n xml: \"text/xml\",\n gif: \"image/gif\",\n jpg: \"image/jpeg\",\n png: \"image/png\",\n mso: \"application/x-mso\",\n thmx: \"application/vnd.ms-officetheme\",\n sh33tj5: \"application/octet-stream\"\n };\n function Es(k, R) {\n if (k.ctype) return k.ctype;\n var C = k.name || \"\", I = C.match(/\\.([^\\.]+)$/);\n return I && Cn[I[1]] || R && (I = (C = R).match(/[\\.\\\\]([^\\.\\\\])+$/), I && Cn[I[1]]) ? Cn[I[1]] : \"application/octet-stream\";\n }\n function Ts(k) {\n for (var R = el(k), C = [], I = 0; I < R.length; I += 76) C.push(R.slice(I, I + 76));\n return C.join(`\\r\n`) + `\\r\n`;\n }\n function ws(k) {\n var R = k.replace(/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7E-\\xFF=]/g, function(j) {\n var ee = j.charCodeAt(0).toString(16).toUpperCase();\n return \"=\" + (ee.length == 1 ? \"0\" + ee : ee);\n });\n R = R.replace(/ $/mg, \"=20\").replace(/\\t$/mg, \"=09\"), R.charAt(0) == `\n` && (R = \"=0D\" + R.slice(1)), R = R.replace(/\\r(?!\\n)/mg, \"=0D\").replace(/\\n\\n/mg, `\n=0A`).replace(/([^\\r\\n])\\n/mg, \"$1=0A\");\n for (var C = [], I = R.split(`\\r\n`), D = 0; D < I.length; ++D) {\n var L = I[D];\n if (L.length == 0) {\n C.push(\"\");\n continue;\n }\n for (var Q = 0; Q < L.length; ) {\n var ie = 76, q = L.slice(Q, Q + ie);\n q.charAt(ie - 1) == \"=\" ? ie-- : q.charAt(ie - 2) == \"=\" ? ie -= 2 : q.charAt(ie - 3) == \"=\" && (ie -= 3), q = L.slice(Q, Q + ie), Q += ie, Q < L.length && (q += \"=\"), C.push(q);\n }\n }\n return C.join(`\\r\n`);\n }\n function j0(k) {\n for (var R = [], C = 0; C < k.length; ++C) {\n for (var I = k[C]; C <= k.length && I.charAt(I.length - 1) == \"=\"; ) I = I.slice(0, I.length - 1) + k[++C];\n R.push(I);\n }\n for (var D = 0; D < R.length; ++D) R[D] = R[D].replace(/[=][0-9A-Fa-f]{2}/g, function(L) {\n return String.fromCharCode(parseInt(L.slice(1), 16));\n });\n return bt(R.join(`\\r\n`));\n }\n function ks(k, R, C) {\n for (var I = \"\", D = \"\", L = \"\", Q, ie = 0; ie < 10; ++ie) {\n var q = R[ie];\n if (!q || q.match(/^\\s*$/)) break;\n var j = q.match(/^([^:]*?):\\s*([^\\s].*)$/);\n if (j) switch (j[1].toLowerCase()) {\n case \"content-location\":\n I = j[2].trim();\n break;\n case \"content-type\":\n L = j[2].trim();\n break;\n case \"content-transfer-encoding\":\n D = j[2].trim();\n break;\n }\n }\n switch (++ie, D.toLowerCase()) {\n case \"base64\":\n Q = bt(Ut(R.slice(ie).join(\"\")));\n break;\n case \"quoted-printable\":\n Q = j0(R.slice(ie));\n break;\n default:\n throw new Error(\"Unsupported Content-Transfer-Encoding \" + D);\n }\n var ee = e0(k, I.slice(C.length), Q, { unsafe: !0 });\n L && (ee.ctype = L);\n }\n function As(k, R) {\n if (be(k.slice(0, 13)).toLowerCase() != \"mime-version:\") throw new Error(\"Unsupported MAD header\");\n var C = R && R.root || \"\", I = (tr && Buffer.isBuffer(k) ? k.toString(\"binary\") : be(k)).split(`\\r\n`), D = 0, L = \"\";\n for (D = 0; D < I.length; ++D)\n if (L = I[D], !!/^Content-Location:/i.test(L) && (L = L.slice(L.indexOf(\"file\")), C || (C = L.slice(0, L.lastIndexOf(\"/\") + 1)), L.slice(0, C.length) != C))\n for (; C.length > 0 && (C = C.slice(0, C.length - 1), C = C.slice(0, C.lastIndexOf(\"/\") + 1), L.slice(0, C.length) != C); )\n ;\n var Q = (I[1] || \"\").match(/boundary=\"(.*?)\"/);\n if (!Q) throw new Error(\"MAD cannot find boundary\");\n var ie = \"--\" + (Q[1] || \"\"), q = [], j = [], ee = {\n FileIndex: q,\n FullPaths: j\n };\n M(ee);\n var xe, me = 0;\n for (D = 0; D < I.length; ++D) {\n var Fe = I[D];\n Fe !== ie && Fe !== ie + \"--\" || (me++ && ks(ee, I.slice(xe, D), C), xe = D);\n }\n return ee;\n }\n function Fs(k, R) {\n var C = R || {}, I = C.boundary || \"SheetJS\";\n I = \"------=\" + I;\n for (var D = [\n \"MIME-Version: 1.0\",\n 'Content-Type: multipart/related; boundary=\"' + I.slice(2) + '\"',\n \"\",\n \"\",\n \"\"\n ], L = k.FullPaths[0], Q = L, ie = k.FileIndex[0], q = 1; q < k.FullPaths.length; ++q)\n if (Q = k.FullPaths[q].slice(L.length), ie = k.FileIndex[q], !(!ie.size || !ie.content || Q == \"\u0001Sh33tJ5\")) {\n Q = Q.replace(/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F\\x7E-\\xFF]/g, function($e) {\n return \"_x\" + $e.charCodeAt(0).toString(16) + \"_\";\n }).replace(/[\\u0080-\\uFFFF]/g, function($e) {\n return \"_u\" + $e.charCodeAt(0).toString(16) + \"_\";\n });\n for (var j = ie.content, ee = tr && Buffer.isBuffer(j) ? j.toString(\"binary\") : be(j), xe = 0, me = Math.min(1024, ee.length), Fe = 0, de = 0; de <= me; ++de) (Fe = ee.charCodeAt(de)) >= 32 && Fe < 128 && ++xe;\n var _e = xe >= me * 4 / 5;\n D.push(I), D.push(\"Content-Location: \" + (C.root || \"file:///C:/SheetJS/\") + Q), D.push(\"Content-Transfer-Encoding: \" + (_e ? \"quoted-printable\" : \"base64\")), D.push(\"Content-Type: \" + Es(ie, Q)), D.push(\"\"), D.push(_e ? ws(ee) : Ts(ee));\n }\n return D.push(I + `--\\r\n`), D.join(`\\r\n`);\n }\n function jn(k) {\n var R = {};\n return M(R, k), R;\n }\n function e0(k, R, C, I) {\n var D = I && I.unsafe;\n D || M(k);\n var L = !D && or.find(k, R);\n if (!L) {\n var Q = k.FullPaths[0];\n R.slice(0, Q.length) == Q ? Q = R : (Q.slice(-1) != \"/\" && (Q += \"/\"), Q = (Q + R).replace(\"//\", \"/\")), L = { name: i(R), type: 2 }, k.FileIndex.push(L), k.FullPaths.push(Q), D || or.utils.cfb_gc(k);\n }\n return L.content = C, L.size = C ? C.length : 0, I && (I.CLSID && (L.clsid = I.CLSID), I.mt && (L.mt = I.mt), I.ct && (L.ct = I.ct)), L;\n }\n function r0(k, R) {\n M(k);\n var C = or.find(k, R);\n if (C) {\n for (var I = 0; I < k.FileIndex.length; ++I) if (k.FileIndex[I] == C)\n return k.FileIndex.splice(I, 1), k.FullPaths.splice(I, 1), !0;\n }\n return !1;\n }\n function Ss(k, R, C) {\n M(k);\n var I = or.find(k, R);\n if (I) {\n for (var D = 0; D < k.FileIndex.length; ++D) if (k.FileIndex[D] == I)\n return k.FileIndex[D].name = i(C), k.FullPaths[D] = C, !0;\n }\n return !1;\n }\n function Cs(k) {\n U(k, !0);\n }\n return t.find = z, t.read = Z, t.parse = x, t.write = ae, t.writeFile = Ee, t.utils = {\n cfb_new: jn,\n cfb_add: e0,\n cfb_del: r0,\n cfb_mov: Ss,\n cfb_gc: Cs,\n ReadShift: k0,\n CheckField: L1,\n prep_blob: zr,\n bconcat: Ya,\n use_zlib: Ge,\n _deflateRaw: Yr,\n _inflateRaw: Y0,\n consts: le\n }, t;\n}(), mm;\nfunction Em(e) {\n if (typeof Deno < \"u\") return Deno.readFileSync(e);\n if (typeof $ < \"u\" && typeof File < \"u\" && typeof Folder < \"u\") try {\n var t = File(e);\n t.open(\"r\"), t.encoding = \"binary\";\n var r = t.read();\n return t.close(), r;\n } catch (n) {\n if (!n.message || n.message.indexOf(\"onstruct\") == -1) throw n;\n }\n throw new Error(\"Cannot access file \" + e);\n}\nfunction jt(e) {\n for (var t = Object.keys(e), r = [], n = 0; n < t.length; ++n) Object.prototype.hasOwnProperty.call(e, t[n]) && r.push(t[n]);\n return r;\n}\nfunction oc(e) {\n for (var t = [], r = jt(e), n = 0; n !== r.length; ++n) t[e[r[n]]] = r[n];\n return t;\n}\nvar l1 = /* @__PURE__ */ Date.UTC(1899, 11, 30, 0, 0, 0), Tm = /* @__PURE__ */ Date.UTC(1899, 11, 31, 0, 0, 0), wm = /* @__PURE__ */ Date.UTC(1904, 0, 1, 0, 0, 0);\nfunction Kr(e, t) {\n var r = /* @__PURE__ */ e.getTime(), n = (r - l1) / (24 * 60 * 60 * 1e3);\n return t ? (n -= 1462, n < -1402 ? n - 1 : n) : n < 60 ? n - 1 : n;\n}\nfunction Ja(e) {\n if (e >= 60 && e < 61) return e;\n var t = /* @__PURE__ */ new Date();\n return t.setTime((e > 60 ? e : e + 1) * 24 * 60 * 60 * 1e3 + l1), t;\n}\nfunction km(e) {\n var t = 0, r = 0, n = !1, i = e.match(/P([0-9\\.]+Y)?([0-9\\.]+M)?([0-9\\.]+D)?T([0-9\\.]+H)?([0-9\\.]+M)?([0-9\\.]+S)?/);\n if (!i) throw new Error(\"|\" + e + \"| is not an ISO8601 Duration\");\n for (var f = 1; f != i.length; ++f)\n if (i[f]) {\n switch (r = 1, f > 3 && (n = !0), i[f].slice(i[f].length - 1)) {\n case \"Y\":\n throw new Error(\"Unsupported ISO Duration Field: \" + i[f].slice(i[f].length - 1));\n case \"D\":\n r *= 24;\n /* falls through */\n case \"H\":\n r *= 60;\n /* falls through */\n case \"M\":\n if (n) r *= 60;\n else throw new Error(\"Unsupported ISO Duration Field: M\");\n }\n t += r * parseInt(i[f], 10);\n }\n return t;\n}\nvar Am = /^(\\d+):(\\d+)(:\\d+)?(\\.\\d+)?$/, Fm = /^(\\d+)-(\\d+)-(\\d+)$/, h1 = /^(\\d+)-(\\d+)-(\\d+)[T ](\\d+):(\\d+)(:\\d+)?(\\.\\d+)?$/;\nfunction at(e, t) {\n if (e instanceof Date) return e;\n var r = e.match(Am);\n if (r) return new Date((t ? wm : Tm) + ((parseInt(r[1], 10) * 60 + parseInt(r[2], 10)) * 60 + (r[3] ? parseInt(r[3].slice(1), 10) : 0)) * 1e3 + (r[4] ? parseInt((r[4] + \"000\").slice(1, 4), 10) : 0));\n if (r = e.match(Fm), r) return new Date(Date.UTC(+r[1], +r[2] - 1, +r[3], 0, 0, 0, 0));\n if (r = e.match(h1), r) return new Date(Date.UTC(+r[1], +r[2] - 1, +r[3], +r[4], +r[5], r[6] && parseInt(r[6].slice(1), 10) || 0, r[7] && parseInt((r[7] + \"0000\").slice(1, 4), 10) || 0));\n var n = new Date(e);\n return n;\n}\nfunction En(e, t) {\n if (tr && Buffer.isBuffer(e)) {\n if (t && N0) {\n if (e[0] == 255 && e[1] == 254) return T0(e.slice(2).toString(\"utf16le\"));\n if (e[1] == 254 && e[2] == 255) return T0(r1(e.slice(2).toString(\"binary\")));\n }\n return e.toString(\"binary\");\n }\n if (typeof TextDecoder < \"u\") try {\n if (t) {\n if (e[0] == 255 && e[1] == 254) return T0(new TextDecoder(\"utf-16le\").decode(e.slice(2)));\n if (e[0] == 254 && e[1] == 255) return T0(new TextDecoder(\"utf-16be\").decode(e.slice(2)));\n }\n var r = {\n \"€\": \"\",\n \"‚\": \"\",\n ƒ: \"\",\n \"„\": \"\",\n \"…\": \"
\",\n \"†\": \"\",\n \"‡\": \"\",\n \"ˆ\": \"\",\n \"‰\": \"\",\n Š: \"\",\n \"‹\": \"\",\n Œ: \"\",\n Ž: \"\",\n \"‘\": \"\",\n \"’\": \"\",\n \"“\": \"\",\n \"”\": \"\",\n \"•\": \"\",\n \"–\": \"\",\n \"—\": \"\",\n \"˜\": \"\",\n \"™\": \"\",\n š: \"\",\n \"›\": \"\",\n œ: \"\",\n ž: \"\",\n Ÿ: \"\"\n };\n return Array.isArray(e) && (e = new Uint8Array(e)), new TextDecoder(\"latin1\").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g, function(f) {\n return r[f] || f;\n });\n } catch {\n }\n var n = [], i = 0;\n try {\n for (i = 0; i < e.length - 65536; i += 65536) n.push(String.fromCharCode.apply(0, e.slice(i, i + 65536)));\n n.push(String.fromCharCode.apply(0, e.slice(i)));\n } catch {\n try {\n for (; i < e.length - 16384; i += 16384) n.push(String.fromCharCode.apply(0, e.slice(i, i + 16384)));\n n.push(String.fromCharCode.apply(0, e.slice(i)));\n } catch {\n for (; i != e.length; ++i) n.push(String.fromCharCode(e[i]));\n }\n }\n return n.join(\"\");\n}\nfunction Gr(e) {\n if (typeof JSON < \"u\" && !Array.isArray(e)) return JSON.parse(JSON.stringify(e));\n if (typeof e != \"object\" || e == null) return e;\n if (e instanceof Date) return new Date(e.getTime());\n var t = {};\n for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && (t[r] = Gr(e[r]));\n return t;\n}\nfunction ur(e, t) {\n for (var r = \"\"; r.length < t; ) r += e;\n return r;\n}\nfunction Mt(e) {\n var t = Number(e);\n if (!isNaN(t)) return isFinite(t) ? t : NaN;\n if (!/\\d/.test(e)) return t;\n var r = 1, n = e.replace(/([\\d]),([\\d])/g, \"$1$2\").replace(/[$]/g, \"\").replace(/[%]/g, function() {\n return r *= 100, \"\";\n });\n return !isNaN(t = Number(n)) || (n = n.replace(/[(]([^()]*)[)]/, function(i, f) {\n return r = -r, f;\n }), !isNaN(t = Number(n))) ? t / r : t;\n}\nvar Sm = /^(0?\\d|1[0-2])(?:|:([0-5]?\\d)(?:|(\\.\\d+)(?:|:([0-5]?\\d))|:([0-5]?\\d)(|\\.\\d+)))\\s+([ap])m?$/, Cm = /^([01]?\\d|2[0-3])(?:|:([0-5]?\\d)(?:|(\\.\\d+)(?:|:([0-5]?\\d))|:([0-5]?\\d)(|\\.\\d+)))$/, ym = /^(\\d+)-(\\d+)-(\\d+)[T ](\\d+):(\\d+)(:\\d+)(\\.\\d+)?[Z]?$/, Im = (/* @__PURE__ */ new Date(\"6/9/69 00:00 UTC\")).valueOf() == -177984e5;\nfunction Om(e) {\n return e[2] ? e[3] ? e[4] ? new Date(Date.UTC(1899, 11, 31, +e[1] % 12 + (e[7] == \"p\" ? 12 : 0), +e[2], +e[4], parseFloat(e[3]) * 1e3)) : new Date(Date.UTC(1899, 11, 31, e[7] == \"p\" ? 12 : 0, +e[1], +e[2], parseFloat(e[3]) * 1e3)) : e[5] ? new Date(Date.UTC(1899, 11, 31, +e[1] % 12 + (e[7] == \"p\" ? 12 : 0), +e[2], +e[5], e[6] ? parseFloat(e[6]) * 1e3 : 0)) : new Date(Date.UTC(1899, 11, 31, +e[1] % 12 + (e[7] == \"p\" ? 12 : 0), +e[2], 0, 0)) : new Date(Date.UTC(1899, 11, 31, +e[1] % 12 + (e[7] == \"p\" ? 12 : 0), 0, 0, 0));\n}\nfunction Dm(e) {\n return e[2] ? e[3] ? e[4] ? new Date(Date.UTC(1899, 11, 31, +e[1], +e[2], +e[4], parseFloat(e[3]) * 1e3)) : new Date(Date.UTC(1899, 11, 31, 0, +e[1], +e[2], parseFloat(e[3]) * 1e3)) : e[5] ? new Date(Date.UTC(1899, 11, 31, +e[1], +e[2], +e[5], e[6] ? parseFloat(e[6]) * 1e3 : 0)) : new Date(Date.UTC(1899, 11, 31, +e[1], +e[2], 0, 0)) : new Date(Date.UTC(1899, 11, 31, +e[1], 0, 0, 0));\n}\nvar Rm = [\"january\", \"february\", \"march\", \"april\", \"may\", \"june\", \"july\", \"august\", \"september\", \"october\", \"november\", \"december\"];\nfunction P0(e) {\n if (ym.test(e)) return e.indexOf(\"Z\") == -1 ? hs(new Date(e)) : new Date(e);\n var t = e.toLowerCase(), r = t.replace(/\\s+/g, \" \").trim(), n = r.match(Sm);\n if (n) return Om(n);\n if (n = r.match(Cm), n) return Dm(n);\n if (n = r.match(h1), n) return new Date(Date.UTC(+n[1], +n[2] - 1, +n[3], +n[4], +n[5], n[6] && parseInt(n[6].slice(1), 10) || 0, n[7] && parseInt((n[7] + \"0000\").slice(1, 4), 10) || 0));\n var i = new Date(Im && e.indexOf(\"UTC\") == -1 ? e + \" UTC\" : e), f = /* @__PURE__ */ new Date(NaN), c = i.getYear();\n i.getMonth();\n var u = i.getDate();\n if (isNaN(u)) return f;\n if (t.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)) {\n if (t = t.replace(/[^a-z]/g, \"\").replace(/([^a-z]|^)[ap]m?([^a-z]|$)/, \"\"), t.length > 3 && Rm.indexOf(t) == -1) return f;\n } else if (t.replace(/[ap]m?/, \"\").match(/[a-z]/)) return f;\n return c < 0 || c > 8099 || e.match(/[^-0-9:,\\/\\\\\\ ]/) ? f : i;\n}\nvar Nm = /* @__PURE__ */ function() {\n var e = \"abacaba\".split(/(:?b)/i).length == 5;\n return function(r, n, i) {\n if (e || typeof n == \"string\") return r.split(n);\n for (var f = r.split(n), c = [f[0]], u = 1; u < f.length; ++u)\n c.push(i), c.push(f[u]);\n return c;\n };\n}();\nfunction Tn(e) {\n return new Date(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate(), e.getUTCHours(), e.getUTCMinutes(), e.getUTCSeconds(), e.getUTCMilliseconds());\n}\nfunction hs(e) {\n return new Date(Date.UTC(e.getFullYear(), e.getMonth(), e.getDate(), e.getHours(), e.getMinutes(), e.getSeconds(), e.getMilliseconds()));\n}\nfunction lc(e) {\n var t = e.slice(0, 1024), r = t.indexOf(\"<!DOCTYPE\");\n if (r == -1) return e;\n var n = e.match(/<[\\w]/);\n return n ? e.slice(0, r) + e.slice(n.index) : e;\n}\nfunction hc(e, t, r) {\n for (var n = [], i = e.indexOf(t); i > -1; ) {\n var f = e.indexOf(r, i + t.length);\n if (f == -1) break;\n n.push(e.slice(i, f + r.length)), i = e.indexOf(t, f + r.length);\n }\n return n.length > 0 ? n : null;\n}\nfunction H0(e, t, r) {\n var n = [], i = 0, f = e.indexOf(t);\n if (f == -1) return e;\n for (; f > -1; ) {\n n.push(e.slice(i, f));\n var c = e.indexOf(r, f + t.length);\n if (c == -1) break;\n (f = e.indexOf(t, i = c + r.length)) == -1 && n.push(e.slice(i));\n }\n return n.join(\"\");\n}\nvar Lm = { \" \": 1, \"\t\": 1, \"\\r\": 1, \"\\n\": 1, \">\": 1 };\nfunction pn(e, t) {\n for (var r = e.indexOf(\"<\" + t), n = t.length + 1, i = e.length; r >= 0 && r <= i - n && !Lm[e.charAt(r + n)]; ) r = e.indexOf(\"<\" + t, r + 1);\n if (r === -1) return null;\n var f = e.indexOf(\">\", r + t.length);\n if (f === -1) return null;\n var c = \"</\" + t + \">\", u = e.indexOf(c, f);\n return u == -1 ? null : [e.slice(r, u + c.length), e.slice(f + 1, u)];\n}\nvar Qr = /* @__PURE__ */ function() {\n var e = {};\n return function(r, n) {\n var i = e[n];\n i || (e[n] = i = [\n new RegExp(\"<(?:\\\\w+:)?\" + n + \"\\\\b[^<>]*>\", \"g\"),\n new RegExp(\"</(?:\\\\w+:)?\" + n + \">\", \"g\")\n ]), i[0].lastIndex = i[1].lastIndex = 0;\n var f = i[0].exec(r);\n if (!f) return null;\n var c = f.index, u = i[0].lastIndex;\n if (i[1].lastIndex = i[0].lastIndex, f = i[1].exec(r), !f) return null;\n var l = f.index, h = i[1].lastIndex;\n return [r.slice(c, h), r.slice(u, l)];\n };\n}(), x1 = /* @__PURE__ */ function() {\n var e = {};\n return function(r, n) {\n var i = [], f = e[n];\n f || (e[n] = f = [\n new RegExp(\"<(?:\\\\w+:)?\" + n + \"\\\\b[^<>]*>\", \"g\"),\n new RegExp(\"</(?:\\\\w+:)?\" + n + \">\", \"g\")\n ]), f[0].lastIndex = f[1].lastIndex = 0;\n for (var c; c = f[0].exec(r); ) {\n var u = c.index;\n if (f[1].lastIndex = f[0].lastIndex, c = f[1].exec(r), !c) return null;\n var l = f[1].lastIndex;\n i.push(r.slice(u, l)), f[0].lastIndex = f[1].lastIndex;\n }\n return i.length == 0 ? null : i;\n };\n}(), Pm = /* @__PURE__ */ function() {\n var e = {};\n return function(r, n) {\n var i = [], f = e[n];\n f || (e[n] = f = [\n new RegExp(\"<(?:\\\\w+:)?\" + n + \"\\\\b[^<>]*>\", \"g\"),\n new RegExp(\"</(?:\\\\w+:)?\" + n + \">\", \"g\")\n ]), f[0].lastIndex = f[1].lastIndex = 0;\n for (var c, u = 0, l = 0; c = f[0].exec(r); ) {\n if (u = c.index, i.push(r.slice(l, u)), l = u, f[1].lastIndex = f[0].lastIndex, c = f[1].exec(r), !c) return null;\n l = f[1].lastIndex, f[0].lastIndex = f[1].lastIndex;\n }\n return i.push(r.slice(l)), i.length == 0 ? \"\" : i.join(\"\");\n };\n}(), bm = /* @__PURE__ */ function() {\n var e = {};\n return function(r, n) {\n var i = [], f = e[n];\n f || (e[n] = f = [\n new RegExp(\"<\" + n + \"\\\\b[^<>]*>\", \"ig\"),\n new RegExp(\"</\" + n + \">\", \"ig\")\n ]), f[0].lastIndex = f[1].lastIndex = 0;\n for (var c; c = f[0].exec(r); ) {\n var u = c.index;\n if (f[1].lastIndex = f[0].lastIndex, c = f[1].exec(r), !c) return null;\n var l = f[1].lastIndex;\n i.push(r.slice(u, l)), f[0].lastIndex = f[1].lastIndex;\n }\n return i.length == 0 ? null : i;\n };\n}();\nfunction d1(e) {\n return e ? e.content && e.type ? En(e.content, !0) : e.data ? m0(e.data) : e.asNodeBuffer && tr ? m0(e.asNodeBuffer().toString(\"binary\")) : e.asBinary ? m0(e.asBinary()) : e._data && e._data.getContent ? m0(En(Array.prototype.slice.call(e._data.getContent(), 0))) : null : null;\n}\nfunction v1(e) {\n if (!e) return null;\n if (e.data) return Qo(e.data);\n if (e.asNodeBuffer && tr) return e.asNodeBuffer();\n if (e._data && e._data.getContent) {\n var t = e._data.getContent();\n return typeof t == \"string\" ? Qo(t) : Array.prototype.slice.call(t);\n }\n return e.content && e.type ? e.content : null;\n}\nfunction Bm(e) {\n return e && e.name.slice(-4) === \".bin\" ? v1(e) : d1(e);\n}\nfunction qt(e, t) {\n for (var r = e.FullPaths || jt(e.files), n = t.toLowerCase().replace(/[\\/]/g, \"\\\\\"), i = n.replace(/\\\\/g, \"/\"), f = 0; f < r.length; ++f) {\n var c = r[f].replace(/^Root Entry[\\/]/, \"\").toLowerCase();\n if (n == c || i == c) return e.files ? e.files[r[f]] : e.FileIndex[f];\n }\n return null;\n}\nfunction xc(e, t) {\n var r = qt(e, t);\n if (r == null) throw new Error(\"Cannot find file \" + t + \" in zip\");\n return r;\n}\nfunction Ur(e, t, r) {\n if (!r) return Bm(xc(e, t));\n if (!t) return null;\n try {\n return Ur(e, t);\n } catch {\n return null;\n }\n}\nfunction Et(e, t, r) {\n if (!r) return d1(xc(e, t));\n if (!t) return null;\n try {\n return Et(e, t);\n } catch {\n return null;\n }\n}\nfunction Mm(e, t, r) {\n return v1(xc(e, t));\n}\nfunction ol(e) {\n for (var t = e.FullPaths || jt(e.files), r = [], n = 0; n < t.length; ++n) t[n].slice(-1) != \"/\" && r.push(t[n].replace(/^Root Entry[\\/]/, \"\"));\n return r.sort();\n}\nfunction Um(e, t, r) {\n if (e.FullPaths) {\n if (Array.isArray(r) && typeof r[0] == \"string\" && (r = r.join(\"\")), typeof r == \"string\") {\n var n;\n return tr ? n = en(r) : n = z_(r), or.utils.cfb_add(e, t, n);\n }\n or.utils.cfb_add(e, t, r);\n } else e.file(t, r);\n}\nfunction p1(e, t) {\n switch (t.type) {\n case \"base64\":\n return or.read(e, { type: \"base64\" });\n case \"binary\":\n return or.read(e, { type: \"binary\" });\n case \"buffer\":\n case \"array\":\n return or.read(e, { type: \"buffer\" });\n }\n throw new Error(\"Unrecognized type \" + t.type);\n}\nfunction Xn(e, t) {\n if (e.charAt(0) == \"/\") return e.slice(1);\n var r = t.split(\"/\");\n t.slice(-1) != \"/\" && r.pop();\n for (var n = e.split(\"/\"); n.length !== 0; ) {\n var i = n.shift();\n i === \"..\" ? r.pop() : i !== \".\" && r.push(i);\n }\n return r.join(\"/\");\n}\nvar g1 = `<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\\r\n`, _1 = /\\s([^\"\\s?>\\/]+)\\s*=\\s*((?:\")([^\"]*)(?:\")|(?:')([^']*)(?:')|([^'\">\\s]+))/g, ll = /<[\\/\\?]?[a-zA-Z0-9:_-]+(?:\\s+[^\"\\s?<>\\/]+\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^'\"<>\\s=]+))*\\s*[\\/\\?]?>/mg, Wm = /<[^<>]*>/g, nt = /* @__PURE__ */ g1.match(ll) ? ll : Wm, Hm = /<\\w*:/, Gm = /<(\\/?)\\w+:/;\nfunction Ie(e, t, r) {\n for (var n = {}, i = 0, f = 0; i !== e.length && !((f = e.charCodeAt(i)) === 32 || f === 10 || f === 13); ++i) ;\n if (t || (n[0] = e.slice(0, i)), i === e.length) return n;\n var c = e.match(_1), u = 0, l = \"\", h = 0, x = \"\", m = \"\", _ = 1;\n if (c) for (h = 0; h != c.length; ++h) {\n for (m = c[h].slice(1), f = 0; f != m.length && m.charCodeAt(f) !== 61; ++f) ;\n for (x = m.slice(0, f).trim(); m.charCodeAt(f + 1) == 32; ) ++f;\n for (_ = (i = m.charCodeAt(f + 1)) == 34 || i == 39 ? 1 : 0, l = m.slice(f + 1 + _, m.length - _), u = 0; u != x.length && x.charCodeAt(u) !== 58; ++u) ;\n if (u === x.length)\n x.indexOf(\"_\") > 0 && (x = x.slice(0, x.indexOf(\"_\"))), n[x] = l, n[x.toLowerCase()] = l;\n else {\n var v = (u === 5 && x.slice(0, 5) === \"xmlns\" ? \"xmlns\" : \"\") + x.slice(u + 1);\n if (n[v] && x.slice(u - 3, u) == \"ext\") continue;\n n[v] = l, n[v.toLowerCase()] = l;\n }\n }\n return n;\n}\nfunction Vm(e, t, r) {\n for (var n = {}, i = 0, f = 0; i !== e.length && !((f = e.charCodeAt(i)) === 32 || f === 10 || f === 13); ++i) ;\n if (i === e.length) return n;\n var c = e.match(_1), u = \"\", l = 0, h = \"\", x = \"\", m = 1;\n if (c) for (l = 0; l != c.length; ++l) {\n for (x = c[l].slice(1), f = 0; f != x.length && x.charCodeAt(f) !== 61; ++f) ;\n for (h = x.slice(0, f).trim(); x.charCodeAt(f + 1) == 32; ) ++f;\n m = (i = x.charCodeAt(f + 1)) == 34 || i == 39 ? 1 : 0, u = x.slice(f + 1 + m, x.length - m), h.indexOf(\"_\") > 0 && (h = h.slice(0, h.indexOf(\"_\"))), n[h] = u, n[h.toLowerCase()] = u;\n }\n return n;\n}\nfunction ea(e) {\n return e.replace(Gm, \"<$1\");\n}\nvar m1 = {\n \""\": '\"',\n \"'\": \"'\",\n \">\": \">\",\n \"<\": \"<\",\n \"&\": \"&\"\n}, Xm = /* @__PURE__ */ oc(m1), ir = /* @__PURE__ */ function() {\n var e = /&(?:quot|apos|gt|lt|amp|#x?([\\da-fA-F]+));/ig, t = /_x([\\da-fA-F]{4})_/ig;\n function r(n) {\n var i = n + \"\", f = i.indexOf(\"<![CDATA[\");\n if (f == -1) return i.replace(e, function(u, l) {\n return m1[u] || String.fromCharCode(parseInt(l, u.indexOf(\"x\") > -1 ? 16 : 10)) || u;\n }).replace(t, function(u, l) {\n return String.fromCharCode(parseInt(l, 16));\n });\n var c = i.indexOf(\"]]>\");\n return r(i.slice(0, f)) + i.slice(f + 9, c) + r(i.slice(c + 3));\n }\n return function(i, f) {\n var c = r(i);\n return f ? c.replace(/\\r\\n/g, `\n`) : c;\n };\n}(), $m = /[&<>'\"]/g, zm = /[\\u0000-\\u001f]/g;\nfunction w0(e) {\n var t = e + \"\";\n return t.replace($m, function(r) {\n return Xm[r];\n }).replace(/\\n/g, \"<br/>\").replace(zm, function(r) {\n return \"&#x\" + (\"000\" + r.charCodeAt(0).toString(16)).slice(-4) + \";\";\n });\n}\nvar hl = /* @__PURE__ */ function() {\n var e = /&#(\\d+);/g;\n function t(r, n) {\n return String.fromCharCode(parseInt(n, 10));\n }\n return function(n) {\n return n.replace(e, t);\n };\n}();\nfunction gr(e) {\n switch (e) {\n case 1:\n case !0:\n case \"1\":\n case \"true\":\n return !0;\n case 0:\n case !1:\n case \"0\":\n case \"false\":\n return !1;\n }\n return !1;\n}\nfunction Gf(e) {\n for (var t = \"\", r = 0, n = 0, i = 0, f = 0, c = 0, u = 0; r < e.length; ) {\n if (n = e.charCodeAt(r++), n < 128) {\n t += String.fromCharCode(n);\n continue;\n }\n if (i = e.charCodeAt(r++), n > 191 && n < 224) {\n c = (n & 31) << 6, c |= i & 63, t += String.fromCharCode(c);\n continue;\n }\n if (f = e.charCodeAt(r++), n < 240) {\n t += String.fromCharCode((n & 15) << 12 | (i & 63) << 6 | f & 63);\n continue;\n }\n c = e.charCodeAt(r++), u = ((n & 7) << 18 | (i & 63) << 12 | (f & 63) << 6 | c & 63) - 65536, t += String.fromCharCode(55296 + (u >>> 10 & 1023)), t += String.fromCharCode(56320 + (u & 1023));\n }\n return t;\n}\nfunction xl(e) {\n var t = qa(2 * e.length), r, n, i = 1, f = 0, c = 0, u;\n for (n = 0; n < e.length; n += i)\n i = 1, (u = e.charCodeAt(n)) < 128 ? r = u : u < 224 ? (r = (u & 31) * 64 + (e.charCodeAt(n + 1) & 63), i = 2) : u < 240 ? (r = (u & 15) * 4096 + (e.charCodeAt(n + 1) & 63) * 64 + (e.charCodeAt(n + 2) & 63), i = 3) : (i = 4, r = (u & 7) * 262144 + (e.charCodeAt(n + 1) & 63) * 4096 + (e.charCodeAt(n + 2) & 63) * 64 + (e.charCodeAt(n + 3) & 63), r -= 65536, c = 55296 + (r >>> 10 & 1023), r = 56320 + (r & 1023)), c !== 0 && (t[f++] = c & 255, t[f++] = c >>> 8, c = 0), t[f++] = r % 256, t[f++] = r >>> 8;\n return t.slice(0, f).toString(\"ucs2\");\n}\nfunction dl(e) {\n return en(e, \"binary\").toString(\"utf8\");\n}\nvar Vi = \"foo bar bazâð£\", Tr = tr && (/* @__PURE__ */ dl(Vi) == /* @__PURE__ */ Gf(Vi) && dl || /* @__PURE__ */ xl(Vi) == /* @__PURE__ */ Gf(Vi) && xl) || Gf, T0 = tr ? function(e) {\n return en(e, \"utf8\").toString(\"binary\");\n} : function(e) {\n for (var t = [], r = 0, n = 0, i = 0; r < e.length; )\n switch (n = e.charCodeAt(r++), !0) {\n case n < 128:\n t.push(String.fromCharCode(n));\n break;\n case n < 2048:\n t.push(String.fromCharCode(192 + (n >> 6))), t.push(String.fromCharCode(128 + (n & 63)));\n break;\n case (n >= 55296 && n < 57344):\n n -= 55296, i = e.charCodeAt(r++) - 56320 + (n << 10), t.push(String.fromCharCode(240 + (i >> 18 & 7))), t.push(String.fromCharCode(144 + (i >> 12 & 63))), t.push(String.fromCharCode(128 + (i >> 6 & 63))), t.push(String.fromCharCode(128 + (i & 63)));\n break;\n default:\n t.push(String.fromCharCode(224 + (n >> 12))), t.push(String.fromCharCode(128 + (n >> 6 & 63))), t.push(String.fromCharCode(128 + (n & 63)));\n }\n return t.join(\"\");\n}, E1 = /* @__PURE__ */ function() {\n var e = [\n [\"nbsp\", \" \"],\n [\"middot\", \"·\"],\n [\"quot\", '\"'],\n [\"apos\", \"'\"],\n [\"gt\", \">\"],\n [\"lt\", \"<\"],\n [\"amp\", \"&\"]\n ].map(function(t) {\n return [new RegExp(\"&\" + t[0] + \";\", \"ig\"), t[1]];\n });\n return function(r) {\n for (var n = r.replace(/^[\\t\\n\\r ]+/, \"\").replace(/(^|[^\\t\\n\\r ])[\\t\\n\\r ]+$/, \"$1\").replace(/>\\s+/g, \">\").replace(/\\b\\s+</g, \"<\").replace(/[\\t\\n\\r ]+/g, \" \").replace(/<\\s*[bB][rR]\\s*\\/?>/g, `\n`).replace(/<[^<>]*>/g, \"\"), i = 0; i < e.length; ++i) n = n.replace(e[i][0], e[i][1]);\n return n;\n };\n}(), Km = /<\\/?(?:vt:)?variant>/g, Ym = /<(?:vt:)([^<\"'>]*)>([\\s\\S]*)</;\nfunction vl(e, t) {\n var r = Ie(e), n = x1(e, r.baseType) || [], i = [];\n if (n.length != r.size) {\n if (t.WTF) throw new Error(\"unexpected vector length \" + n.length + \" != \" + r.size);\n return i;\n }\n return n.forEach(function(f) {\n var c = f.replace(Km, \"\").match(Ym);\n c && i.push({ v: Tr(c[2]), t: c[1] });\n }), i;\n}\nvar Zm = /(^\\s|\\s$|\\n)/;\nfunction Jm(e) {\n return jt(e).map(function(t) {\n return \" \" + t + '=\"' + e[t] + '\"';\n }).join(\"\");\n}\nfunction qm(e, t, r) {\n return \"<\" + e + (r != null ? Jm(r) : \"\") + (t != null ? (t.match(Zm) ? ' xml:space=\"preserve\"' : \"\") + \">\" + t + \"</\" + e : \"/\") + \">\";\n}\nfunction xs(e) {\n if (tr && /*::typeof Buffer !== \"undefined\" && d != null && d instanceof Buffer &&*/\n Buffer.isBuffer(e)) return e.toString(\"utf8\");\n if (typeof e == \"string\") return e;\n if (typeof Uint8Array < \"u\" && e instanceof Uint8Array) return Tr(Na(fc(e)));\n throw new Error(\"Bad input format: expected Buffer or string\");\n}\nvar Wr = /<([\\/]?)([^\\s?><!\\/:\"]*:|)([^\\s?<>:\\/\"]+)(?:\\s+[^<>=?\"'\\s]+=\"[^\"]*?\")*\\s*[\\/]?>/mg, Qm = {\n CT: \"http://schemas.openxmlformats.org/package/2006/content-types\"\n}, jm = [\n \"http://schemas.openxmlformats.org/spreadsheetml/2006/main\",\n \"http://purl.oclc.org/ooxml/spreadsheetml/main\",\n \"http://schemas.microsoft.com/office/excel/2006/main\",\n \"http://schemas.microsoft.com/office/excel/2006/2\"\n];\nfunction e4(e, t) {\n for (var r = 1 - 2 * (e[t + 7] >>> 7), n = ((e[t + 7] & 127) << 4) + (e[t + 6] >>> 4 & 15), i = e[t + 6] & 15, f = 5; f >= 0; --f) i = i * 256 + e[t + f];\n return n == 2047 ? i == 0 ? r * (1 / 0) : NaN : (n == 0 ? n = -1022 : (n -= 1023, i += Math.pow(2, 52)), r * Math.pow(2, n - 52) * i);\n}\nfunction r4(e, t, r) {\n var n = (t < 0 || 1 / t == -1 / 0 ? 1 : 0) << 7, i = 0, f = 0, c = n ? -t : t;\n isFinite(c) ? c == 0 ? i = f = 0 : (i = Math.floor(Math.log(c) / Math.LN2), f = c * Math.pow(2, 52 - i), i <= -1023 && (!isFinite(f) || f < Math.pow(2, 52)) ? i = -1022 : (f -= Math.pow(2, 52), i += 1023)) : (i = 2047, f = isNaN(t) ? 26985 : 0);\n for (var u = 0; u <= 5; ++u, f /= 256) e[r + u] = f & 255;\n e[r + 6] = (i & 15) << 4 | f & 15, e[r + 7] = i >> 4 | n;\n}\nvar pl = function(e) {\n for (var t = [], r = 10240, n = 0; n < e[0].length; ++n) if (e[0][n]) for (var i = 0, f = e[0][n].length; i < f; i += r) t.push.apply(t, e[0][n].slice(i, i + r));\n return t;\n}, gl = tr ? function(e) {\n return e[0].length > 0 && Buffer.isBuffer(e[0][0]) ? Buffer.concat(e[0].map(function(t) {\n return Buffer.isBuffer(t) ? t : en(t);\n })) : pl(e);\n} : pl, _l = function(e, t, r) {\n for (var n = [], i = t; i < r; i += 2) n.push(String.fromCharCode(Oa(e, i)));\n return n.join(\"\").replace(St, \"\");\n}, dc = tr ? function(e, t, r) {\n return !Buffer.isBuffer(e) || !N0 ? _l(e, t, r) : e.toString(\"utf16le\", t, r).replace(St, \"\");\n} : _l, ml = function(e, t, r) {\n for (var n = [], i = t; i < t + r; ++i) n.push((\"0\" + e[i].toString(16)).slice(-2));\n return n.join(\"\");\n}, T1 = tr ? function(e, t, r) {\n return Buffer.isBuffer(e) ? e.toString(\"hex\", t, t + r) : ml(e, t, r);\n} : ml, El = function(e, t, r) {\n for (var n = [], i = t; i < r; i++) n.push(String.fromCharCode(Vn(e, i)));\n return n.join(\"\");\n}, G0 = tr ? function(t, r, n) {\n return Buffer.isBuffer(t) ? t.toString(\"utf8\", r, n) : El(t, r, n);\n} : El, w1 = function(e, t) {\n var r = Bt(e, t);\n return r > 0 ? G0(e, t + 4, t + 4 + r - 1) : \"\";\n}, k1 = w1, A1 = function(e, t) {\n var r = Bt(e, t);\n return r > 0 ? G0(e, t + 4, t + 4 + r - 1) : \"\";\n}, F1 = A1, S1 = function(e, t) {\n var r = 2 * Bt(e, t);\n return r > 0 ? G0(e, t + 4, t + 4 + r - 1) : \"\";\n}, C1 = S1, y1 = function(t, r) {\n var n = Bt(t, r);\n return n > 0 ? dc(t, r + 4, r + 4 + n) : \"\";\n}, I1 = y1, O1 = function(e, t) {\n var r = Bt(e, t);\n return r > 0 ? G0(e, t + 4, t + 4 + r) : \"\";\n}, D1 = O1, R1 = function(e, t) {\n return e4(e, t);\n}, ns = R1, N1 = function(t) {\n return Array.isArray(t) || typeof Uint8Array < \"u\" && t instanceof Uint8Array;\n};\ntr && (k1 = function(t, r) {\n if (!Buffer.isBuffer(t)) return w1(t, r);\n var n = t.readUInt32LE(r);\n return n > 0 ? t.toString(\"utf8\", r + 4, r + 4 + n - 1) : \"\";\n}, F1 = function(t, r) {\n if (!Buffer.isBuffer(t)) return A1(t, r);\n var n = t.readUInt32LE(r);\n return n > 0 ? t.toString(\"utf8\", r + 4, r + 4 + n - 1) : \"\";\n}, C1 = function(t, r) {\n if (!Buffer.isBuffer(t) || !N0) return S1(t, r);\n var n = 2 * t.readUInt32LE(r);\n return t.toString(\"utf16le\", r + 4, r + 4 + n - 1);\n}, I1 = function(t, r) {\n if (!Buffer.isBuffer(t) || !N0) return y1(t, r);\n var n = t.readUInt32LE(r);\n return t.toString(\"utf16le\", r + 4, r + 4 + n);\n}, D1 = function(t, r) {\n if (!Buffer.isBuffer(t)) return O1(t, r);\n var n = t.readUInt32LE(r);\n return t.toString(\"utf8\", r + 4, r + 4 + n);\n}, ns = function(t, r) {\n return Buffer.isBuffer(t) ? t.readDoubleLE(r) : R1(t, r);\n}, N1 = function(t) {\n return Buffer.isBuffer(t) || Array.isArray(t) || typeof Uint8Array < \"u\" && t instanceof Uint8Array;\n});\nvar Vn = function(e, t) {\n return e[t];\n}, Oa = function(e, t) {\n return e[t + 1] * 256 + e[t];\n}, t4 = function(e, t) {\n var r = e[t + 1] * 256 + e[t];\n return r < 32768 ? r : (65535 - r + 1) * -1;\n}, Bt = function(e, t) {\n return e[t + 3] * (1 << 24) + (e[t + 2] << 16) + (e[t + 1] << 8) + e[t];\n}, dn = function(e, t) {\n return e[t + 3] << 24 | e[t + 2] << 16 | e[t + 1] << 8 | e[t];\n}, a4 = function(e, t) {\n return e[t] << 24 | e[t + 1] << 16 | e[t + 2] << 8 | e[t + 3];\n};\nfunction k0(e, t) {\n var r = \"\", n, i, f = [], c, u, l, h;\n switch (t) {\n case \"dbcs\":\n if (h = this.l, tr && Buffer.isBuffer(this) && N0) r = this.slice(this.l, this.l + 2 * e).toString(\"utf16le\");\n else for (l = 0; l < e; ++l)\n r += String.fromCharCode(Oa(this, h)), h += 2;\n e *= 2;\n break;\n case \"utf8\":\n r = G0(this, this.l, this.l + e);\n break;\n case \"utf16le\":\n e *= 2, r = dc(this, this.l, this.l + e);\n break;\n case \"wstr\":\n return k0.call(this, e, \"dbcs\");\n /* [MS-OLEDS] 2.1.4 LengthPrefixedAnsiString */\n case \"lpstr-ansi\":\n r = k1(this, this.l), e = 4 + Bt(this, this.l);\n break;\n case \"lpstr-cp\":\n r = F1(this, this.l), e = 4 + Bt(this, this.l);\n break;\n /* [MS-OLEDS] 2.1.5 LengthPrefixedUnicodeString */\n case \"lpwstr\":\n r = C1(this, this.l), e = 4 + 2 * Bt(this, this.l);\n break;\n /* [MS-OFFCRYPTO] 2.1.2 Length-Prefixed Padded Unicode String (UNICODE-LP-P4) */\n case \"lpp4\":\n e = 4 + Bt(this, this.l), r = I1(this, this.l), e & 2 && (e += 2);\n break;\n /* [MS-OFFCRYPTO] 2.1.3 Length-Prefixed UTF-8 String (UTF-8-LP-P4) */\n case \"8lpp4\":\n e = 4 + Bt(this, this.l), r = D1(this, this.l), e & 3 && (e += 4 - (e & 3));\n break;\n case \"cstr\":\n for (e = 0, r = \"\"; (c = Vn(this, this.l + e++)) !== 0; ) f.push(Gi(c));\n r = f.join(\"\");\n break;\n case \"_wstr\":\n for (e = 0, r = \"\"; (c = Oa(this, this.l + e)) !== 0; )\n f.push(Gi(c)), e += 2;\n e += 2, r = f.join(\"\");\n break;\n /* sbcs and dbcs support continue records in the SST way TODO codepages */\n case \"dbcs-cont\":\n for (r = \"\", h = this.l, l = 0; l < e; ++l) {\n if (this.lens && this.lens.indexOf(h) !== -1)\n return c = Vn(this, h), this.l = h + 1, u = k0.call(this, e - l, c ? \"dbcs-cont\" : \"sbcs-cont\"), f.join(\"\") + u;\n f.push(Gi(Oa(this, h))), h += 2;\n }\n r = f.join(\"\"), e *= 2;\n break;\n case \"cpstr\":\n /* falls through */\n case \"sbcs-cont\":\n for (r = \"\", h = this.l, l = 0; l != e; ++l) {\n if (this.lens && this.lens.indexOf(h) !== -1)\n return c = Vn(this, h), this.l = h + 1, u = k0.call(this, e - l, c ? \"dbcs-cont\" : \"sbcs-cont\"), f.join(\"\") + u;\n f.push(Gi(Vn(this, h))), h += 1;\n }\n r = f.join(\"\");\n break;\n default:\n switch (e) {\n case 1:\n return n = Vn(this, this.l), this.l++, n;\n case 2:\n return n = (t === \"i\" ? t4 : Oa)(this, this.l), this.l += 2, n;\n case 4:\n case -4:\n return t === \"i\" || (this[this.l + 3] & 128) === 0 ? (n = (e > 0 ? dn : a4)(this, this.l), this.l += 4, n) : (i = Bt(this, this.l), this.l += 4, i);\n case 8:\n case -8:\n if (t === \"f\")\n return e == 8 ? i = ns(this, this.l) : i = ns([this[this.l + 7], this[this.l + 6], this[this.l + 5], this[this.l + 4], this[this.l + 3], this[this.l + 2], this[this.l + 1], this[this.l + 0]], 0), this.l += 8, i;\n e = 8;\n /* falls through */\n case 16:\n r = T1(this, this.l, e);\n break;\n }\n }\n return this.l += e, r;\n}\nvar n4 = function(e, t, r) {\n e[r] = t & 255, e[r + 1] = t >>> 8 & 255, e[r + 2] = t >>> 16 & 255, e[r + 3] = t >>> 24 & 255;\n}, i4 = function(e, t, r) {\n e[r] = t & 255, e[r + 1] = t >> 8 & 255, e[r + 2] = t >> 16 & 255, e[r + 3] = t >> 24 & 255;\n}, s4 = function(e, t, r) {\n e[r] = t & 255, e[r + 1] = t >>> 8 & 255;\n};\nfunction f4(e, t, r) {\n var n = 0, i = 0;\n if (r === \"dbcs\") {\n for (i = 0; i != t.length; ++i) s4(this, t.charCodeAt(i), this.l + 2 * i);\n n = 2 * t.length;\n } else if (r === \"sbcs\" || r == \"cpstr\") {\n for (t = t.replace(/[^\\x00-\\x7F]/g, \"_\"), i = 0; i != t.length; ++i) this[this.l + i] = t.charCodeAt(i) & 255;\n n = t.length;\n } else if (r === \"hex\") {\n for (; i < e; ++i)\n this[this.l++] = parseInt(t.slice(2 * i, 2 * i + 2), 16) || 0;\n return this;\n } else if (r === \"utf16le\") {\n var f = Math.min(this.l + e, this.length);\n for (i = 0; i < Math.min(t.length, e); ++i) {\n var c = t.charCodeAt(i);\n this[this.l++] = c & 255, this[this.l++] = c >> 8;\n }\n for (; this.l < f; ) this[this.l++] = 0;\n return this;\n } else switch (e) {\n case 1:\n n = 1, this[this.l] = t & 255;\n break;\n case 2:\n n = 2, this[this.l] = t & 255, t >>>= 8, this[this.l + 1] = t & 255;\n break;\n case 3:\n n = 3, this[this.l] = t & 255, t >>>= 8, this[this.l + 1] = t & 255, t >>>= 8, this[this.l + 2] = t & 255;\n break;\n case 4:\n n = 4, n4(this, t, this.l);\n break;\n case 8:\n if (n = 8, r === \"f\") {\n r4(this, t, this.l);\n break;\n }\n /* falls through */\n case 16:\n break;\n case -4:\n n = 4, i4(this, t, this.l);\n break;\n }\n return this.l += n, this;\n}\nfunction L1(e, t) {\n var r = T1(this, this.l, e.length >> 1);\n if (r !== e) throw new Error(t + \"Expected \" + e + \" saw \" + r);\n this.l += e.length >> 1;\n}\nfunction zr(e, t) {\n e.l = t, e.read_shift = /*::(*/\n k0, e.chk = L1, e.write_shift = f4;\n}\nfunction ht(e, t) {\n e.l += t;\n}\nfunction Hr(e) {\n var t = qa(e);\n return zr(t, 0), t;\n}\nfunction La(e, t, r) {\n if (e) {\n var n, i, f;\n zr(e, e.l || 0);\n for (var c = e.length, u = 0, l = 0; e.l < c; ) {\n u = e.read_shift(1), u & 128 && (u = (u & 127) + ((e.read_shift(1) & 127) << 7));\n var h = os[u] || os[65535];\n for (n = e.read_shift(1), f = n & 127, i = 1; i < 4 && n & 128; ++i) f += ((n = e.read_shift(1)) & 127) << 7 * i;\n l = e.l + f;\n var x = h.f && h.f(e, f, r);\n if (e.l = l, t(x, h, u)) return;\n }\n }\n}\nfunction Qf() {\n var e = [], t = tr ? 16384 : 2048;\n tr && Hr(t).copy;\n var r = function(x) {\n var m = Hr(x);\n return zr(m, 0), m;\n }, n = r(t), i = function() {\n n && (n.l && (n.length > n.l && (n = n.slice(0, n.l), n.l = n.length), n.length > 0 && e.push(n)), n = null);\n }, f = function(x) {\n return n && x < n.length - n.l ? n : (i(), n = r(Math.max(x + 1, t)));\n }, c = function() {\n return i(), Ya(e);\n }, u = function() {\n return i(), e;\n }, l = function(x) {\n i(), n = x, n.l == null && (n.l = n.length), f(t);\n };\n return { next: f, push: l, end: c, _bufs: e, end2: u };\n}\nfunction A0(e, t, r) {\n var n = Gr(e);\n if (t.s ? (n.cRel && (n.c += t.s.c), n.rRel && (n.r += t.s.r)) : (n.cRel && (n.c += t.c), n.rRel && (n.r += t.r)), !r || r.biff < 12) {\n for (; n.c >= 256; ) n.c -= 256;\n for (; n.r >= 65536; ) n.r -= 65536;\n }\n return n;\n}\nfunction Tl(e, t, r) {\n var n = Gr(e);\n return n.s = A0(n.s, t.s, r), n.e = A0(n.e, t.s, r), n;\n}\nfunction F0(e, t) {\n if (e.cRel && e.c < 0)\n for (e = Gr(e); e.c < 0; ) e.c += t > 8 ? 16384 : 256;\n if (e.rRel && e.r < 0)\n for (e = Gr(e); e.r < 0; ) e.r += t > 8 ? 1048576 : t > 5 ? 65536 : 16384;\n var r = hr(e);\n return !e.cRel && e.cRel != null && (r = o4(r)), !e.rRel && e.rRel != null && (r = c4(r)), r;\n}\nfunction Vf(e, t) {\n return e.s.r == 0 && !e.s.rRel && e.e.r == (t.biff >= 12 ? 1048575 : t.biff >= 8 ? 65536 : 16384) && !e.e.rRel ? (e.s.cRel ? \"\" : \"$\") + xr(e.s.c) + \":\" + (e.e.cRel ? \"\" : \"$\") + xr(e.e.c) : e.s.c == 0 && !e.s.cRel && e.e.c == (t.biff >= 12 ? 16383 : 255) && !e.e.cRel ? (e.s.rRel ? \"\" : \"$\") + _r(e.s.r) + \":\" + (e.e.rRel ? \"\" : \"$\") + _r(e.e.r) : F0(e.s, t.biff) + \":\" + F0(e.e, t.biff);\n}\nfunction vc(e) {\n return parseInt(u4(e), 10) - 1;\n}\nfunction _r(e) {\n return \"\" + (e + 1);\n}\nfunction c4(e) {\n return e.replace(/([A-Z]|^)(\\d+)$/, \"$1$$$2\");\n}\nfunction u4(e) {\n return e.replace(/\\$(\\d+)$/, \"$1\");\n}\nfunction pc(e) {\n for (var t = l4(e), r = 0, n = 0; n !== t.length; ++n) r = 26 * r + t.charCodeAt(n) - 64;\n return r - 1;\n}\nfunction xr(e) {\n if (e < 0) throw new Error(\"invalid column \" + e);\n var t = \"\";\n for (++e; e; e = Math.floor((e - 1) / 26)) t = String.fromCharCode((e - 1) % 26 + 65) + t;\n return t;\n}\nfunction o4(e) {\n return e.replace(/^([A-Z])/, \"$$$1\");\n}\nfunction l4(e) {\n return e.replace(/^\\$([A-Z])/, \"$1\");\n}\nfunction h4(e) {\n return e.replace(/(\\$?[A-Z]*)(\\$?\\d*)/, \"$1,$2\").split(\",\");\n}\nfunction ot(e) {\n for (var t = 0, r = 0, n = 0; n < e.length; ++n) {\n var i = e.charCodeAt(n);\n i >= 48 && i <= 57 ? t = 10 * t + (i - 48) : i >= 65 && i <= 90 && (r = 26 * r + (i - 64));\n }\n return { c: r - 1, r: t - 1 };\n}\nfunction hr(e) {\n for (var t = e.c + 1, r = \"\"; t; t = (t - 1) / 26 | 0) r = String.fromCharCode((t - 1) % 26 + 65) + r;\n return r + (e.r + 1);\n}\nfunction kn(e) {\n var t = e.indexOf(\":\");\n return t == -1 ? { s: ot(e), e: ot(e) } : { s: ot(e.slice(0, t)), e: ot(e.slice(t + 1)) };\n}\nfunction sr(e, t) {\n return typeof t > \"u\" || typeof t == \"number\" ? sr(e.s, e.e) : (typeof e != \"string\" && (e = hr(e)), typeof t != \"string\" && (t = hr(t)), e == t ? e : e + \":\" + t);\n}\nfunction x4(e, t) {\n if (!e && !(t && t.biff <= 5 && t.biff >= 2)) throw new Error(\"empty sheet name\");\n return /[^\\w\\u4E00-\\u9FFF\\u3040-\\u30FF]/.test(e) ? \"'\" + e.replace(/'/g, \"''\") + \"'\" : e;\n}\nfunction Br(e) {\n var t = { s: { c: 0, r: 0 }, e: { c: 0, r: 0 } }, r = 0, n = 0, i = 0, f = e.length;\n for (r = 0; n < f && !((i = e.charCodeAt(n) - 64) < 1 || i > 26); ++n)\n r = 26 * r + i;\n for (t.s.c = --r, r = 0; n < f && !((i = e.charCodeAt(n) - 48) < 0 || i > 9); ++n)\n r = 10 * r + i;\n if (t.s.r = --r, n === f || i != 10)\n return t.e.c = t.s.c, t.e.r = t.s.r, t;\n for (++n, r = 0; n != f && !((i = e.charCodeAt(n) - 64) < 1 || i > 26); ++n)\n r = 26 * r + i;\n for (t.e.c = --r, r = 0; n != f && !((i = e.charCodeAt(n) - 48) < 0 || i > 9); ++n)\n r = 10 * r + i;\n return t.e.r = --r, t;\n}\nfunction wl(e, t) {\n var r = e.t == \"d\" && t instanceof Date;\n if (e.z != null) try {\n return e.w = Wt(e.z, r ? Kr(t) : t);\n } catch {\n }\n try {\n return e.w = Wt((e.XF || {}).numFmtId || (r ? 14 : 0), r ? Kr(t) : t);\n } catch {\n return \"\" + t;\n }\n}\nfunction Qa(e, t, r) {\n return e == null || e.t == null || e.t == \"z\" ? \"\" : e.w !== void 0 ? e.w : (e.t == \"d\" && !e.z && r && r.dateNF && (e.z = r.dateNF), e.t == \"e\" ? Ct[e.v] || e.v : t == null ? wl(e, e.v) : wl(e, t));\n}\nfunction rn(e, t) {\n var r = t && t.sheet ? t.sheet : \"Sheet1\", n = {};\n return n[r] = e, { SheetNames: [r], Sheets: n };\n}\nfunction d4(e) {\n var t = {}, r = e || {};\n return r.dense && (t[\"!data\"] = []), t;\n}\nfunction P1(e, t, r) {\n var n = r || {}, i = e ? e[\"!data\"] != null : n.dense, f = e || (i ? { \"!data\": [] } : {});\n i && !f[\"!data\"] && (f[\"!data\"] = []);\n var c = 0, u = 0;\n if (f && n.origin != null)\n if (typeof n.origin == \"number\") c = n.origin;\n else {\n var l = typeof n.origin == \"string\" ? ot(n.origin) : n.origin;\n c = l.r, u = l.c;\n }\n var h = { s: { c: 1e7, r: 1e7 }, e: { c: 0, r: 0 } };\n if (f[\"!ref\"]) {\n var x = Br(f[\"!ref\"]);\n h.s.c = x.s.c, h.s.r = x.s.r, h.e.c = Math.max(h.e.c, x.e.c), h.e.r = Math.max(h.e.r, x.e.r), c == -1 && (h.e.r = c = f[\"!ref\"] ? x.e.r + 1 : 0);\n } else\n h.s.c = h.e.c = h.s.r = h.e.r = 0;\n for (var m = [], _ = !1, v = 0; v != t.length; ++v)\n if (t[v]) {\n if (!Array.isArray(t[v])) throw new Error(\"aoa_to_sheet expects an array of arrays\");\n var T = c + v;\n i && (f[\"!data\"][T] || (f[\"!data\"][T] = []), m = f[\"!data\"][T]);\n for (var A = t[v], g = 0; g != A.length; ++g)\n if (!(typeof A[g] > \"u\")) {\n var p = { v: A[g], t: \"\" }, y = u + g;\n if (h.s.r > T && (h.s.r = T), h.s.c > y && (h.s.c = y), h.e.r < T && (h.e.r = T), h.e.c < y && (h.e.c = y), _ = !0, A[g] && typeof A[g] == \"object\" && !Array.isArray(A[g]) && !(A[g] instanceof Date)) p = A[g];\n else if (Array.isArray(p.v) && (p.f = A[g][1], p.v = p.v[0]), p.v === null)\n if (p.f) p.t = \"n\";\n else if (n.nullError)\n p.t = \"e\", p.v = 0;\n else if (n.sheetStubs) p.t = \"z\";\n else continue;\n else typeof p.v == \"number\" ? isFinite(p.v) ? p.t = \"n\" : isNaN(p.v) ? (p.t = \"e\", p.v = 15) : (p.t = \"e\", p.v = 7) : typeof p.v == \"boolean\" ? p.t = \"b\" : p.v instanceof Date ? (p.z = n.dateNF || Xe[14], n.UTC || (p.v = hs(p.v)), n.cellDates ? (p.t = \"d\", p.w = Wt(p.z, Kr(p.v, n.date1904))) : (p.t = \"n\", p.v = Kr(p.v, n.date1904), p.w = Wt(p.z, p.v))) : p.t = \"s\";\n if (i)\n m[y] && m[y].z && (p.z = m[y].z), m[y] = p;\n else {\n var w = xr(y) + (T + 1);\n f[w] && f[w].z && (p.z = f[w].z), f[w] = p;\n }\n }\n }\n return _ && h.s.c < 104e5 && (f[\"!ref\"] = sr(h)), f;\n}\nfunction Qn(e, t) {\n return P1(null, e, t);\n}\nfunction v4(e) {\n return e.read_shift(4, \"i\");\n}\nfunction lt(e) {\n var t = e.read_shift(4);\n return t === 0 ? \"\" : e.read_shift(t, \"dbcs\");\n}\nfunction p4(e) {\n return { ich: e.read_shift(2), ifnt: e.read_shift(2) };\n}\nfunction gc(e, t) {\n var r = e.l, n = e.read_shift(1), i = lt(e), f = [], c = { t: i, h: i };\n if ((n & 1) !== 0) {\n for (var u = e.read_shift(4), l = 0; l != u; ++l) f.push(p4(e));\n c.r = f;\n } else c.r = [{ ich: 0, ifnt: 0 }];\n return e.l = r + t, c;\n}\nvar g4 = gc;\nfunction ra(e) {\n var t = e.read_shift(4), r = e.read_shift(2);\n return r += e.read_shift(1) << 16, e.l++, { c: t, iStyleRef: r };\n}\nfunction An(e) {\n var t = e.read_shift(2);\n return t += e.read_shift(1) << 16, e.l++, { c: -1, iStyleRef: t };\n}\nvar _4 = lt;\nfunction ds(e) {\n var t = e.read_shift(4);\n return t === 0 || t === 4294967295 ? \"\" : e.read_shift(t, \"dbcs\");\n}\nvar m4 = lt, jf = ds;\nfunction vs(e) {\n var t = e.slice(e.l, e.l + 4), r = t[0] & 1, n = t[0] & 2;\n e.l += 4;\n var i = n === 0 ? ns([0, 0, 0, 0, t[0] & 252, t[1], t[2], t[3]], 0) : dn(t, 0) >> 2;\n return r ? i / 100 : i;\n}\nfunction b1(e) {\n var t = { s: {}, e: {} };\n return t.s.r = e.read_shift(4), t.e.r = e.read_shift(4), t.s.c = e.read_shift(4), t.e.c = e.read_shift(4), t;\n}\nvar Fn = b1;\nfunction ut(e) {\n if (e.length - e.l < 8) throw \"XLS Xnum Buffer underflow\";\n return e.read_shift(8, \"f\");\n}\nfunction E4(e) {\n var t = {}, r = e.read_shift(1), n = r >>> 1, i = e.read_shift(1), f = e.read_shift(2, \"i\"), c = e.read_shift(1), u = e.read_shift(1), l = e.read_shift(1);\n switch (e.l++, n) {\n case 0:\n t.auto = 1;\n break;\n case 1:\n t.index = i;\n var h = gn[i];\n h && (t.rgb = B0(h));\n break;\n case 2:\n t.rgb = B0([c, u, l]);\n break;\n case 3:\n t.theme = i;\n break;\n }\n return f != 0 && (t.tint = f > 0 ? f / 32767 : f / 32768), t;\n}\nfunction T4(e) {\n var t = e.read_shift(1);\n e.l++;\n var r = {\n fBold: t & 1,\n fItalic: t & 2,\n fUnderline: t & 4,\n fStrikeout: t & 8,\n fOutline: t & 16,\n fShadow: t & 32,\n fCondense: t & 64,\n fExtend: t & 128\n };\n return r;\n}\nfunction B1(e, t) {\n var r = { 2: \"BITMAP\", 3: \"METAFILEPICT\", 8: \"DIB\", 14: \"ENHMETAFILE\" }, n = e.read_shift(4);\n switch (n) {\n case 0:\n return \"\";\n case 4294967295:\n case 4294967294:\n return r[e.read_shift(4)] || \"\";\n }\n if (n > 400) throw new Error(\"Unsupported Clipboard: \" + n.toString(16));\n return e.l -= 4, e.read_shift(0, t == 1 ? \"lpstr\" : \"lpwstr\");\n}\nfunction w4(e) {\n return B1(e, 1);\n}\nfunction k4(e) {\n return B1(e, 2);\n}\nvar _c = 2, Ft = 3, Xi = 11, kl = 12, is = 19, $i = 64, A4 = 65, F4 = 71, S4 = 4108, C4 = 4126, Jr = 80, M1 = 81, y4 = [Jr, M1], I4 = {\n 1: { n: \"CodePage\", t: _c },\n 2: { n: \"Category\", t: Jr },\n 3: { n: \"PresentationFormat\", t: Jr },\n 4: { n: \"ByteCount\", t: Ft },\n 5: { n: \"LineCount\", t: Ft },\n 6: { n: \"ParagraphCount\", t: Ft },\n 7: { n: \"SlideCount\", t: Ft },\n 8: { n: \"NoteCount\", t: Ft },\n 9: { n: \"HiddenCount\", t: Ft },\n 10: { n: \"MultimediaClipCount\", t: Ft },\n 11: { n: \"ScaleCrop\", t: Xi },\n 12: {\n n: \"HeadingPairs\",\n t: S4\n /* VT_VECTOR | VT_VARIANT */\n },\n 13: {\n n: \"TitlesOfParts\",\n t: C4\n /* VT_VECTOR | VT_LPSTR */\n },\n 14: { n: \"Manager\", t: Jr },\n 15: { n: \"Company\", t: Jr },\n 16: { n: \"LinksUpToDate\", t: Xi },\n 17: { n: \"CharacterCount\", t: Ft },\n 19: { n: \"SharedDoc\", t: Xi },\n 22: { n: \"HyperlinksChanged\", t: Xi },\n 23: { n: \"AppVersion\", t: Ft, p: \"version\" },\n 24: { n: \"DigSig\", t: A4 },\n 26: { n: \"ContentType\", t: Jr },\n 27: { n: \"ContentStatus\", t: Jr },\n 28: { n: \"Language\", t: Jr },\n 29: { n: \"Version\", t: Jr },\n 255: {},\n /* [MS-OLEPS] 2.18 */\n 2147483648: { n: \"Locale\", t: is },\n 2147483651: { n: \"Behavior\", t: is },\n 1919054434: {}\n}, O4 = {\n 1: { n: \"CodePage\", t: _c },\n 2: { n: \"Title\", t: Jr },\n 3: { n: \"Subject\", t: Jr },\n 4: { n: \"Author\", t: Jr },\n 5: { n: \"Keywords\", t: Jr },\n 6: { n: \"Comments\", t: Jr },\n 7: { n: \"Template\", t: Jr },\n 8: { n: \"LastAuthor\", t: Jr },\n 9: { n: \"RevNumber\", t: Jr },\n 10: { n: \"EditTime\", t: $i },\n 11: { n: \"LastPrinted\", t: $i },\n 12: { n: \"CreatedDate\", t: $i },\n 13: { n: \"ModifiedDate\", t: $i },\n 14: { n: \"PageCount\", t: Ft },\n 15: { n: \"WordCount\", t: Ft },\n 16: { n: \"CharCount\", t: Ft },\n 17: { n: \"Thumbnail\", t: F4 },\n 18: { n: \"Application\", t: Jr },\n 19: { n: \"DocSecurity\", t: Ft },\n 255: {},\n /* [MS-OLEPS] 2.18 */\n 2147483648: { n: \"Locale\", t: is },\n 2147483651: { n: \"Behavior\", t: is },\n 1919054434: {}\n}, Al = {\n 1: \"US\",\n // United States\n 2: \"CA\",\n // Canada\n 3: \"\",\n // Latin America (except Brazil)\n 7: \"RU\",\n // Russia\n 20: \"EG\",\n // Egypt\n 30: \"GR\",\n // Greece\n 31: \"NL\",\n // Netherlands\n 32: \"BE\",\n // Belgium\n 33: \"FR\",\n // France\n 34: \"ES\",\n // Spain\n 36: \"HU\",\n // Hungary\n 39: \"IT\",\n // Italy\n 41: \"CH\",\n // Switzerland\n 43: \"AT\",\n // Austria\n 44: \"GB\",\n // United Kingdom\n 45: \"DK\",\n // Denmark\n 46: \"SE\",\n // Sweden\n 47: \"NO\",\n // Norway\n 48: \"PL\",\n // Poland\n 49: \"DE\",\n // Germany\n 52: \"MX\",\n // Mexico\n 55: \"BR\",\n // Brazil\n 61: \"AU\",\n // Australia\n 64: \"NZ\",\n // New Zealand\n 66: \"TH\",\n // Thailand\n 81: \"JP\",\n // Japan\n 82: \"KR\",\n // Korea\n 84: \"VN\",\n // Viet Nam\n 86: \"CN\",\n // China\n 90: \"TR\",\n // Turkey\n 105: \"JS\",\n // Ramastan\n 213: \"DZ\",\n // Algeria\n 216: \"MA\",\n // Morocco\n 218: \"LY\",\n // Libya\n 351: \"PT\",\n // Portugal\n 354: \"IS\",\n // Iceland\n 358: \"FI\",\n // Finland\n 420: \"CZ\",\n // Czech Republic\n 886: \"TW\",\n // Taiwan\n 961: \"LB\",\n // Lebanon\n 962: \"JO\",\n // Jordan\n 963: \"SY\",\n // Syria\n 964: \"IQ\",\n // Iraq\n 965: \"KW\",\n // Kuwait\n 966: \"SA\",\n // Saudi Arabia\n 971: \"AE\",\n // United Arab Emirates\n 972: \"IL\",\n // Israel\n 974: \"QA\",\n // Qatar\n 981: \"IR\",\n // Iran\n 65535: \"US\"\n // United States\n}, D4 = [\n null,\n \"solid\",\n \"mediumGray\",\n \"darkGray\",\n \"lightGray\",\n \"darkHorizontal\",\n \"darkVertical\",\n \"darkDown\",\n \"darkUp\",\n \"darkGrid\",\n \"darkTrellis\",\n \"lightHorizontal\",\n \"lightVertical\",\n \"lightDown\",\n \"lightUp\",\n \"lightGrid\",\n \"lightTrellis\",\n \"gray125\",\n \"gray0625\"\n];\nfunction R4(e) {\n return e.map(function(t) {\n return [t >> 16 & 255, t >> 8 & 255, t & 255];\n });\n}\nvar N4 = /* @__PURE__ */ R4([\n /* Color Constants */\n 0,\n 16777215,\n 16711680,\n 65280,\n 255,\n 16776960,\n 16711935,\n 65535,\n /* Overridable Defaults */\n 0,\n 16777215,\n 16711680,\n 65280,\n 255,\n 16776960,\n 16711935,\n 65535,\n 8388608,\n 32768,\n 128,\n 8421376,\n 8388736,\n 32896,\n 12632256,\n 8421504,\n 10066431,\n 10040166,\n 16777164,\n 13434879,\n 6684774,\n 16744576,\n 26316,\n 13421823,\n 128,\n 16711935,\n 16776960,\n 65535,\n 8388736,\n 8388608,\n 32896,\n 255,\n 52479,\n 13434879,\n 13434828,\n 16777113,\n 10079487,\n 16751052,\n 13408767,\n 16764057,\n 3368703,\n 3394764,\n 10079232,\n 16763904,\n 16750848,\n 16737792,\n 6710937,\n 9868950,\n 13158,\n 3381606,\n 13056,\n 3355392,\n 10040064,\n 10040166,\n 3355545,\n 3355443,\n /* Other entries to appease BIFF8/12 */\n 0,\n /* 0x40 icvForeground ?? */\n 16777215,\n /* 0x41 icvBackground ?? */\n 0,\n /* 0x42 icvFrame ?? */\n 0,\n /* 0x43 icv3D ?? */\n 0,\n /* 0x44 icv3DText ?? */\n 0,\n /* 0x45 icv3DHilite ?? */\n 0,\n /* 0x46 icv3DShadow ?? */\n 0,\n /* 0x47 icvHilite ?? */\n 0,\n /* 0x48 icvCtlText ?? */\n 0,\n /* 0x49 icvCtlScrl ?? */\n 0,\n /* 0x4A icvCtlInv ?? */\n 0,\n /* 0x4B icvCtlBody ?? */\n 0,\n /* 0x4C icvCtlFrame ?? */\n 0,\n /* 0x4D icvCtlFore ?? */\n 0,\n /* 0x4E icvCtlBack ?? */\n 0,\n /* 0x4F icvCtlNeutral */\n 0,\n /* 0x50 icvInfoBk ?? */\n 0\n /* 0x51 icvInfoText ?? */\n]), gn = /* @__PURE__ */ Gr(N4), Ct = {\n 0: \"#NULL!\",\n 7: \"#DIV/0!\",\n 15: \"#VALUE!\",\n 23: \"#REF!\",\n 29: \"#NAME?\",\n 36: \"#NUM!\",\n 42: \"#N/A\",\n 43: \"#GETTING_DATA\",\n 255: \"#WTF?\"\n}, rt = {\n \"#NULL!\": 0,\n \"#DIV/0!\": 7,\n \"#VALUE!\": 15,\n \"#REF!\": 23,\n \"#NAME?\": 29,\n \"#NUM!\": 36,\n \"#N/A\": 42,\n \"#GETTING_DATA\": 43,\n \"#WTF?\": 255\n}, U1 = [\n \"_xlnm.Consolidate_Area\",\n \"_xlnm.Auto_Open\",\n \"_xlnm.Auto_Close\",\n \"_xlnm.Extract\",\n \"_xlnm.Database\",\n \"_xlnm.Criteria\",\n \"_xlnm.Print_Area\",\n \"_xlnm.Print_Titles\",\n \"_xlnm.Recorder\",\n \"_xlnm.Data_Form\",\n \"_xlnm.Auto_Activate\",\n \"_xlnm.Auto_Deactivate\",\n \"_xlnm.Sheet_Title\",\n \"_xlnm._FilterDatabase\"\n], Fl = {\n /* Workbook */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml\": \"workbooks\",\n \"application/vnd.ms-excel.sheet.macroEnabled.main+xml\": \"workbooks\",\n \"application/vnd.ms-excel.sheet.binary.macroEnabled.main\": \"workbooks\",\n \"application/vnd.ms-excel.addin.macroEnabled.main+xml\": \"workbooks\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml\": \"workbooks\",\n /* Worksheet */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml\": \"sheets\",\n \"application/vnd.ms-excel.worksheet\": \"sheets\",\n \"application/vnd.ms-excel.binIndexWs\": \"TODO\",\n /* Binary Index */\n /* Chartsheet */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml\": \"charts\",\n \"application/vnd.ms-excel.chartsheet\": \"charts\",\n /* Macrosheet */\n \"application/vnd.ms-excel.macrosheet+xml\": \"macros\",\n \"application/vnd.ms-excel.macrosheet\": \"macros\",\n \"application/vnd.ms-excel.intlmacrosheet\": \"TODO\",\n \"application/vnd.ms-excel.binIndexMs\": \"TODO\",\n /* Binary Index */\n /* Dialogsheet */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml\": \"dialogs\",\n \"application/vnd.ms-excel.dialogsheet\": \"dialogs\",\n /* Shared Strings */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml\": \"strs\",\n \"application/vnd.ms-excel.sharedStrings\": \"strs\",\n /* Styles */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml\": \"styles\",\n \"application/vnd.ms-excel.styles\": \"styles\",\n /* File Properties */\n \"application/vnd.openxmlformats-package.core-properties+xml\": \"coreprops\",\n \"application/vnd.openxmlformats-officedocument.custom-properties+xml\": \"custprops\",\n \"application/vnd.openxmlformats-officedocument.extended-properties+xml\": \"extprops\",\n /* Custom Data Properties */\n \"application/vnd.openxmlformats-officedocument.customXmlProperties+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty\": \"TODO\",\n /* Comments */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml\": \"comments\",\n \"application/vnd.ms-excel.comments\": \"comments\",\n \"application/vnd.ms-excel.threadedcomments+xml\": \"threadedcomments\",\n \"application/vnd.ms-excel.person+xml\": \"people\",\n /* Metadata (Stock/Geography and Dynamic Array) */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml\": \"metadata\",\n \"application/vnd.ms-excel.sheetMetadata\": \"metadata\",\n /* PivotTable */\n \"application/vnd.ms-excel.pivotTable\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml\": \"TODO\",\n /* Chart Objects */\n \"application/vnd.openxmlformats-officedocument.drawingml.chart+xml\": \"TODO\",\n /* Chart Colors */\n \"application/vnd.ms-office.chartcolorstyle+xml\": \"TODO\",\n /* Chart Style */\n \"application/vnd.ms-office.chartstyle+xml\": \"TODO\",\n /* Chart Advanced */\n \"application/vnd.ms-office.chartex+xml\": \"TODO\",\n /* Calculation Chain */\n \"application/vnd.ms-excel.calcChain\": \"calcchains\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml\": \"calcchains\",\n /* Printer Settings */\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings\": \"TODO\",\n /* ActiveX */\n \"application/vnd.ms-office.activeX\": \"TODO\",\n \"application/vnd.ms-office.activeX+xml\": \"TODO\",\n /* Custom Toolbars */\n \"application/vnd.ms-excel.attachedToolbars\": \"TODO\",\n /* External Data Connections */\n \"application/vnd.ms-excel.connections\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml\": \"TODO\",\n /* External Links */\n \"application/vnd.ms-excel.externalLink\": \"links\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml\": \"links\",\n /* PivotCache */\n \"application/vnd.ms-excel.pivotCacheDefinition\": \"TODO\",\n \"application/vnd.ms-excel.pivotCacheRecords\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml\": \"TODO\",\n /* Query Table */\n \"application/vnd.ms-excel.queryTable\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml\": \"TODO\",\n /* Shared Workbook */\n \"application/vnd.ms-excel.userNames\": \"TODO\",\n \"application/vnd.ms-excel.revisionHeaders\": \"TODO\",\n \"application/vnd.ms-excel.revisionLog\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml\": \"TODO\",\n /* Single Cell Table */\n \"application/vnd.ms-excel.tableSingleCells\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml\": \"TODO\",\n /* Slicer */\n \"application/vnd.ms-excel.slicer\": \"TODO\",\n \"application/vnd.ms-excel.slicerCache\": \"TODO\",\n \"application/vnd.ms-excel.slicer+xml\": \"TODO\",\n \"application/vnd.ms-excel.slicerCache+xml\": \"TODO\",\n /* Sort Map */\n \"application/vnd.ms-excel.wsSortMap\": \"TODO\",\n /* Table */\n \"application/vnd.ms-excel.table\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml\": \"TODO\",\n /* Themes */\n \"application/vnd.openxmlformats-officedocument.theme+xml\": \"themes\",\n /* Theme Override */\n \"application/vnd.openxmlformats-officedocument.themeOverride+xml\": \"TODO\",\n /* Timeline */\n \"application/vnd.ms-excel.Timeline+xml\": \"TODO\",\n /* verify */\n \"application/vnd.ms-excel.TimelineCache+xml\": \"TODO\",\n /* verify */\n /* VBA */\n \"application/vnd.ms-office.vbaProject\": \"vba\",\n \"application/vnd.ms-office.vbaProjectSignature\": \"TODO\",\n /* Volatile Dependencies */\n \"application/vnd.ms-office.volatileDependencies\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml\": \"TODO\",\n /* Control Properties */\n \"application/vnd.ms-excel.controlproperties+xml\": \"TODO\",\n /* Data Model */\n \"application/vnd.openxmlformats-officedocument.model+data\": \"TODO\",\n /* Survey */\n \"application/vnd.ms-excel.Survey+xml\": \"TODO\",\n /* Drawing */\n \"application/vnd.openxmlformats-officedocument.drawing+xml\": \"drawings\",\n \"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml\": \"TODO\",\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml\": \"TODO\",\n /* VML */\n \"application/vnd.openxmlformats-officedocument.vmlDrawing\": \"TODO\",\n \"application/vnd.openxmlformats-package.relationships+xml\": \"rels\",\n \"application/vnd.openxmlformats-officedocument.oleObject\": \"TODO\",\n /* Image */\n \"image/png\": \"TODO\",\n sheet: \"js\"\n};\nfunction L4() {\n return {\n workbooks: [],\n sheets: [],\n charts: [],\n dialogs: [],\n macros: [],\n rels: [],\n strs: [],\n comments: [],\n threadedcomments: [],\n links: [],\n coreprops: [],\n extprops: [],\n custprops: [],\n themes: [],\n styles: [],\n calcchains: [],\n vba: [],\n drawings: [],\n metadata: [],\n people: [],\n TODO: [],\n xmlns: \"\"\n };\n}\nfunction P4(e) {\n var t = L4();\n if (!e || !e.match) return t;\n var r = {};\n if ((e.match(nt) || []).forEach(function(n) {\n var i = Ie(n);\n switch (i[0].replace(Hm, \"<\")) {\n case \"<?xml\":\n break;\n case \"<Types\":\n t.xmlns = i[\"xmlns\" + (i[0].match(/<(\\w+):/) || [\"\", \"\"])[1]];\n break;\n case \"<Default\":\n r[i.Extension.toLowerCase()] = i.ContentType;\n break;\n case \"<Override\":\n t[Fl[i.ContentType]] !== void 0 && t[Fl[i.ContentType]].push(i.PartName);\n break;\n }\n }), t.xmlns !== Qm.CT) throw new Error(\"Unknown Namespace: \" + t.xmlns);\n return t.calcchain = t.calcchains.length > 0 ? t.calcchains[0] : \"\", t.sst = t.strs.length > 0 ? t.strs[0] : \"\", t.style = t.styles.length > 0 ? t.styles[0] : \"\", t.defaults = r, delete t.calcchains, t;\n}\nvar $n = {\n WB: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument\",\n SHEET: \"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument\",\n HLINK: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink\",\n VML: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing\",\n XPATH: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath\",\n XMISS: \"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing\",\n XLINK: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink\",\n CXML: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml\",\n CXMLP: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps\",\n CMNT: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments\",\n CORE_PROPS: \"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties\",\n EXT_PROPS: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties\",\n CUST_PROPS: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties\",\n SST: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings\",\n STY: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles\",\n THEME: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme\",\n CHART: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart\",\n CHARTEX: \"http://schemas.microsoft.com/office/2014/relationships/chartEx\",\n CS: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet\",\n WS: [\n \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet\",\n \"http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet\"\n ],\n DS: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet\",\n MS: \"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet\",\n IMG: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image\",\n DRAW: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing\",\n XLMETA: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata\",\n TCMNT: \"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment\",\n PEOPLE: \"http://schemas.microsoft.com/office/2017/10/relationships/person\",\n CONN: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections\",\n VBA: \"http://schemas.microsoft.com/office/2006/relationships/vbaProject\"\n};\nfunction ec(e) {\n var t = e.lastIndexOf(\"/\");\n return e.slice(0, t + 1) + \"_rels/\" + e.slice(t + 1) + \".rels\";\n}\nfunction S0(e, t) {\n var r = { \"!id\": {} };\n if (!e) return r;\n t.charAt(0) !== \"/\" && (t = \"/\" + t);\n var n = {};\n return (e.match(nt) || []).forEach(function(i) {\n var f = Ie(i);\n if (f[0] === \"<Relationship\") {\n var c = {};\n c.Type = f.Type, c.Target = ir(f.Target), c.Id = f.Id, f.TargetMode && (c.TargetMode = f.TargetMode);\n var u = f.TargetMode === \"External\" ? f.Target : Xn(f.Target, t);\n r[u] = c, n[f.Id] = c;\n }\n }), r[\"!id\"] = n, r;\n}\nvar b4 = \"application/vnd.oasis.opendocument.spreadsheet\";\nfunction B4(e, t) {\n for (var r = xs(e), n, i; n = Wr.exec(r); )\n switch (n[3]) {\n case \"manifest\":\n break;\n case \"file-entry\":\n if (i = Ie(n[0], !1), i.path == \"/\" && i.type !== b4)\n throw new Error(\"This OpenDocument is not a spreadsheet\");\n break;\n case \"encryption-data\":\n case \"algorithm\":\n case \"start-key-generation\":\n case \"key-derivation\":\n throw new Error(\"Unsupported ODS Encryption\");\n default:\n if (t && t.WTF)\n throw n;\n }\n}\nvar Sl = [\n [\"cp:category\", \"Category\"],\n [\"cp:contentStatus\", \"ContentStatus\"],\n [\"cp:keywords\", \"Keywords\"],\n [\"cp:lastModifiedBy\", \"LastAuthor\"],\n [\"cp:lastPrinted\", \"LastPrinted\"],\n [\"cp:revision\", \"RevNumber\"],\n [\"cp:version\", \"Version\"],\n [\"dc:creator\", \"Author\"],\n [\"dc:description\", \"Comments\"],\n [\"dc:identifier\", \"Identifier\"],\n [\"dc:language\", \"Language\"],\n [\"dc:subject\", \"Subject\"],\n [\"dc:title\", \"Title\"],\n [\"dcterms:created\", \"CreatedDate\", \"date\"],\n [\"dcterms:modified\", \"ModifiedDate\", \"date\"]\n];\nfunction W1(e) {\n var t = {};\n e = Tr(e);\n for (var r = 0; r < Sl.length; ++r) {\n var n = Sl[r], i = pn(e, n[0]);\n i != null && i.length > 0 && (t[n[1]] = ir(i[1])), n[2] === \"date\" && t[n[1]] && (t[n[1]] = at(t[n[1]]));\n }\n return t;\n}\nvar M4 = [\n [\"Application\", \"Application\", \"string\"],\n [\"AppVersion\", \"AppVersion\", \"string\"],\n [\"Company\", \"Company\", \"string\"],\n [\"DocSecurity\", \"DocSecurity\", \"string\"],\n [\"Manager\", \"Manager\", \"string\"],\n [\"HyperlinksChanged\", \"HyperlinksChanged\", \"bool\"],\n [\"SharedDoc\", \"SharedDoc\", \"bool\"],\n [\"LinksUpToDate\", \"LinksUpToDate\", \"bool\"],\n [\"ScaleCrop\", \"ScaleCrop\", \"bool\"],\n [\"HeadingPairs\", \"HeadingPairs\", \"raw\"],\n [\"TitlesOfParts\", \"TitlesOfParts\", \"raw\"]\n];\nfunction H1(e, t, r, n) {\n var i = [];\n if (typeof e == \"string\") i = vl(e, n);\n else for (var f = 0; f < e.length; ++f) i = i.concat(e[f].map(function(x) {\n return { v: x };\n }));\n var c = typeof t == \"string\" ? vl(t, n).map(function(x) {\n return x.v;\n }) : t, u = 0, l = 0;\n if (c.length > 0) for (var h = 0; h !== i.length; h += 2) {\n switch (l = +i[h + 1].v, i[h].v) {\n case \"Worksheets\":\n case \"工作表\":\n case \"Листы\":\n case \"أوراق العمل\":\n case \"ワークシート\":\n case \"גליונות עבודה\":\n case \"Arbeitsblätter\":\n case \"Çalışma Sayfaları\":\n case \"Feuilles de calcul\":\n case \"Fogli di lavoro\":\n case \"Folhas de cálculo\":\n case \"Planilhas\":\n case \"Regneark\":\n case \"Hojas de cálculo\":\n case \"Werkbladen\":\n r.Worksheets = l, r.SheetNames = c.slice(u, u + l);\n break;\n case \"Named Ranges\":\n case \"Rangos con nombre\":\n case \"名前付き一覧\":\n case \"Benannte Bereiche\":\n case \"Navngivne områder\":\n r.NamedRanges = l, r.DefinedNames = c.slice(u, u + l);\n break;\n case \"Charts\":\n case \"Diagramme\":\n r.Chartsheets = l, r.ChartNames = c.slice(u, u + l);\n break;\n }\n u += l;\n }\n}\nfunction U4(e, t, r) {\n var n = {};\n return t || (t = {}), e = Tr(e), M4.forEach(function(i) {\n var f = (Qr(e, i[0]) || [])[1];\n switch (i[2]) {\n case \"string\":\n f && (t[i[1]] = ir(f));\n break;\n case \"bool\":\n t[i[1]] = f === \"true\";\n break;\n case \"raw\":\n var c = pn(e, i[0]);\n c && c.length > 0 && (n[i[1]] = c[1]);\n break;\n }\n }), n.HeadingPairs && n.TitlesOfParts && H1(n.HeadingPairs, n.TitlesOfParts, t, r), t;\n}\nvar W4 = /<[^<>]+>[^<]*/g;\nfunction H4(e, t) {\n var r = {}, n = \"\", i = e.match(W4);\n if (i) for (var f = 0; f != i.length; ++f) {\n var c = i[f], u = Ie(c);\n switch (ea(u[0])) {\n case \"<?xml\":\n break;\n case \"<Properties\":\n break;\n case \"<property\":\n n = ir(u.name);\n break;\n case \"</property>\":\n n = null;\n break;\n default:\n if (c.indexOf(\"<vt:\") === 0) {\n var l = c.split(\">\"), h = l[0].slice(4), x = l[1];\n switch (h) {\n case \"lpstr\":\n case \"bstr\":\n case \"lpwstr\":\n r[n] = ir(x);\n break;\n case \"bool\":\n r[n] = gr(x);\n break;\n case \"i1\":\n case \"i2\":\n case \"i4\":\n case \"i8\":\n case \"int\":\n case \"uint\":\n r[n] = parseInt(x, 10);\n break;\n case \"r4\":\n case \"r8\":\n case \"decimal\":\n r[n] = parseFloat(x);\n break;\n case \"filetime\":\n case \"date\":\n r[n] = at(x);\n break;\n case \"cy\":\n case \"error\":\n r[n] = ir(x);\n break;\n default:\n if (h.slice(-1) == \"/\") break;\n t.WTF && typeof console < \"u\" && console.warn(\"Unexpected\", c, h, l);\n }\n } else if (c.slice(0, 2) !== \"</\") {\n if (t.WTF) throw new Error(c);\n }\n }\n }\n return r;\n}\nvar G4 = {\n Title: \"Title\",\n Subject: \"Subject\",\n Author: \"Author\",\n Keywords: \"Keywords\",\n Comments: \"Description\",\n LastAuthor: \"LastAuthor\",\n RevNumber: \"Revision\",\n Application: \"AppName\",\n /* TotalTime: 'TotalTime', */\n LastPrinted: \"LastPrinted\",\n CreatedDate: \"Created\",\n ModifiedDate: \"LastSaved\",\n /* Pages */\n /* Words */\n /* Characters */\n Category: \"Category\",\n /* PresentationFormat */\n Manager: \"Manager\",\n Company: \"Company\",\n /* Guid */\n /* HyperlinkBase */\n /* Bytes */\n /* Lines */\n /* Paragraphs */\n /* CharactersWithSpaces */\n AppVersion: \"Version\",\n ContentStatus: \"ContentStatus\",\n /* NOTE: missing from schema */\n Identifier: \"Identifier\",\n /* NOTE: missing from schema */\n Language: \"Language\"\n /* NOTE: missing from schema */\n}, Xf;\nfunction V4(e, t, r) {\n Xf || (Xf = oc(G4)), t = Xf[t] || t, e[t] = r;\n}\nfunction mc(e) {\n var t = e.read_shift(4), r = e.read_shift(4);\n return new Date((r / 1e7 * Math.pow(2, 32) + t / 1e7 - 11644473600) * 1e3).toISOString().replace(/\\.000/, \"\");\n}\nfunction X4(e, t, r) {\n var n = e.l, i = e.read_shift(0, \"lpstr-cp\");\n if (r) for (; e.l - n & 3; ) ++e.l;\n return i;\n}\nfunction $4(e, t, r) {\n var n = e.read_shift(0, \"lpwstr\");\n return n;\n}\nfunction G1(e, t, r) {\n return t === 31 ? $4(e) : X4(e, t, r);\n}\nfunction C0(e, t, r) {\n return G1(e, t, r === !1 ? 0 : 4);\n}\nfunction z4(e, t) {\n if (!t) throw new Error(\"VtUnalignedString must have positive length\");\n return G1(e, t, 0);\n}\nfunction K4(e) {\n for (var t = e.read_shift(4), r = [], n = 0; n != t; ++n) {\n var i = e.l;\n r[n] = e.read_shift(0, \"lpwstr\").replace(St, \"\"), e.l - i & 2 && (e.l += 2);\n }\n return r;\n}\nfunction Y4(e) {\n for (var t = e.read_shift(4), r = [], n = 0; n != t; ++n) r[n] = e.read_shift(0, \"lpstr-cp\").replace(St, \"\");\n return r;\n}\nfunction Z4(e) {\n var t = e.l, r = ss(e, M1);\n e[e.l] == 0 && e[e.l + 1] == 0 && e.l - t & 2 && (e.l += 2);\n var n = ss(e, Ft);\n return [r, n];\n}\nfunction J4(e) {\n for (var t = e.read_shift(4), r = [], n = 0; n < t / 2; ++n) r.push(Z4(e));\n return r;\n}\nfunction Cl(e, t) {\n for (var r = e.read_shift(4), n = {}, i = 0; i != r; ++i) {\n var f = e.read_shift(4), c = e.read_shift(4);\n n[f] = e.read_shift(c, t === 1200 ? \"utf16le\" : \"utf8\").replace(St, \"\").replace(E0, \"!\"), t === 1200 && c % 2 && (e.l += 2);\n }\n return e.l & 3 && (e.l = e.l >> 3 << 2), n;\n}\nfunction V1(e) {\n var t = e.read_shift(4), r = e.slice(e.l, e.l + t);\n return e.l += t, (t & 3) > 0 && (e.l += 4 - (t & 3) & 3), r;\n}\nfunction q4(e) {\n var t = {};\n return t.Size = e.read_shift(4), e.l += t.Size + 3 - (t.Size - 1) % 4, t;\n}\nfunction ss(e, t, r) {\n var n = e.read_shift(2), i, f = r || {};\n if (e.l += 2, t !== kl && n !== t && y4.indexOf(t) === -1 && !((t & 65534) == 4126 && (n & 65534) == 4126))\n throw new Error(\"Expected type \" + t + \" saw \" + n);\n switch (t === kl ? n : t) {\n case 2:\n return i = e.read_shift(2, \"i\"), f.raw || (e.l += 2), i;\n case 3:\n return i = e.read_shift(4, \"i\"), i;\n case 11:\n return e.read_shift(4) !== 0;\n case 19:\n return i = e.read_shift(4), i;\n case 30:\n e.l += 4, val = C0(e, e[e.l - 4]).replace(/(^|[^\\u0000])\\u0000+$/, \"$1\");\n break;\n case 31:\n e.l += 4, val = C0(e, e[e.l - 4]).replace(/(^|[^\\u0000])\\u0000+$/, \"$1\");\n break;\n case 64:\n return mc(e);\n case 65:\n return V1(e);\n case 71:\n return q4(e);\n case 80:\n return C0(e, n, !f.raw).replace(St, \"\");\n case 81:\n return z4(\n e,\n n\n /*, 4*/\n ).replace(St, \"\");\n case 4108:\n return J4(e);\n case 4126:\n case 4127:\n return n == 4127 ? K4(e) : Y4(e);\n default:\n throw new Error(\"TypedPropertyValue unrecognized type \" + t + \" \" + n);\n }\n}\nfunction yl(e, t) {\n var r = e.l, n = e.read_shift(4), i = e.read_shift(4), f = [], c = 0, u = 0, l = -1, h = {};\n for (c = 0; c != i; ++c) {\n var x = e.read_shift(4), m = e.read_shift(4);\n f[c] = [x, m + r];\n }\n f.sort(function(y, w) {\n return y[1] - w[1];\n });\n var _ = {};\n for (c = 0; c != i; ++c) {\n if (e.l !== f[c][1]) {\n var v = !0;\n if (c > 0 && t) switch (t[f[c - 1][0]].t) {\n case 2:\n e.l + 2 === f[c][1] && (e.l += 2, v = !1);\n break;\n case 80:\n e.l <= f[c][1] && (e.l = f[c][1], v = !1);\n break;\n case 4108:\n e.l <= f[c][1] && (e.l = f[c][1], v = !1);\n break;\n }\n if ((!t || c == 0) && e.l <= f[c][1] && (v = !1, e.l = f[c][1]), v) throw new Error(\"Read Error: Expected address \" + f[c][1] + \" at \" + e.l + \" :\" + c);\n }\n if (t) {\n if (f[c][0] == 0 && f.length > c + 1 && f[c][1] == f[c + 1][1]) continue;\n var T = t[f[c][0]];\n if (_[T.n] = ss(e, T.t, { raw: !0 }), T.p === \"version\" && (_[T.n] = String(_[T.n] >> 16) + \".\" + (\"0000\" + String(_[T.n] & 65535)).slice(-4)), T.n == \"CodePage\") switch (_[T.n]) {\n case 0:\n _[T.n] = 1252;\n /* falls through */\n case 874:\n case 932:\n case 936:\n case 949:\n case 950:\n case 1250:\n case 1251:\n case 1253:\n case 1254:\n case 1255:\n case 1256:\n case 1257:\n case 1258:\n case 1e4:\n case 1200:\n case 1201:\n case 1252:\n case 65e3:\n case -536:\n case 65001:\n case -535:\n ua(u = _[T.n] >>> 0 & 65535);\n break;\n default:\n throw new Error(\"Unsupported CodePage: \" + _[T.n]);\n }\n } else if (f[c][0] === 1) {\n if (u = _.CodePage = ss(e, _c), ua(u), l !== -1) {\n var A = e.l;\n e.l = f[l][1], h = Cl(e, u), e.l = A;\n }\n } else if (f[c][0] === 0) {\n if (u === 0) {\n l = c, e.l = f[c + 1][1];\n continue;\n }\n h = Cl(e, u);\n } else {\n var g = h[f[c][0]], p;\n switch (e[e.l]) {\n case 65:\n e.l += 4, p = V1(e);\n break;\n case 30:\n e.l += 4, p = C0(e, e[e.l - 4]).replace(/(^|[^\\u0000])\\u0000+$/, \"$1\");\n break;\n case 31:\n e.l += 4, p = C0(e, e[e.l - 4]).replace(/(^|[^\\u0000])\\u0000+$/, \"$1\");\n break;\n case 3:\n e.l += 4, p = e.read_shift(4, \"i\");\n break;\n case 19:\n e.l += 4, p = e.read_shift(4);\n break;\n case 5:\n e.l += 4, p = e.read_shift(8, \"f\");\n break;\n case 11:\n e.l += 4, p = br(e, 4);\n break;\n case 64:\n e.l += 4, p = at(mc(e));\n break;\n default:\n throw new Error(\"unparsed value: \" + e[e.l]);\n }\n _[g] = p;\n }\n }\n return e.l = r + n, _;\n}\nfunction Il(e, t, r) {\n var n = e.content;\n if (!n) return {};\n zr(n, 0);\n var i, f, c, u, l = 0;\n n.chk(\"feff\", \"Byte Order: \"), n.read_shift(2);\n var h = n.read_shift(4), x = n.read_shift(16);\n if (x !== or.utils.consts.HEADER_CLSID && x !== r) throw new Error(\"Bad PropertySet CLSID \" + x);\n if (i = n.read_shift(4), i !== 1 && i !== 2) throw new Error(\"Unrecognized #Sets: \" + i);\n if (f = n.read_shift(16), u = n.read_shift(4), i === 1 && u !== n.l) throw new Error(\"Length mismatch: \" + u + \" !== \" + n.l);\n i === 2 && (c = n.read_shift(16), l = n.read_shift(4));\n var m = yl(n, t), _ = { SystemIdentifier: h };\n for (var v in m) _[v] = m[v];\n if (_.FMTID = f, i === 1) return _;\n if (l - n.l == 2 && (n.l += 2), n.l !== l) throw new Error(\"Length mismatch 2: \" + n.l + \" !== \" + l);\n var T;\n try {\n T = yl(n, null);\n } catch {\n }\n for (v in T) _[v] = T[v];\n return _.FMTID = [f, c], _;\n}\nfunction Ka(e, t) {\n return e.read_shift(t), null;\n}\nfunction Q4(e, t, r) {\n for (var n = [], i = e.l + t; e.l < i; ) n.push(r(e, i - e.l));\n if (i !== e.l) throw new Error(\"Slurp error\");\n return n;\n}\nfunction br(e, t) {\n return e.read_shift(t) === 1;\n}\nfunction Rr(e) {\n return e.read_shift(2, \"u\");\n}\nfunction X1(e, t) {\n return Q4(e, t, Rr);\n}\nfunction $1(e) {\n var t = e.read_shift(1), r = e.read_shift(1);\n return r === 1 ? t : t === 1;\n}\nfunction Jn(e, t, r) {\n var n = e.read_shift(r && r.biff >= 12 ? 2 : 1), i = \"sbcs-cont\", f = Qt;\n if (r && r.biff >= 8 && (Qt = 1200), !r || r.biff == 8) {\n var c = e.read_shift(1);\n c && (i = \"dbcs-cont\");\n } else r.biff == 12 && (i = \"wstr\");\n r.biff >= 2 && r.biff <= 5 && (i = \"cpstr\");\n var u = n ? e.read_shift(n, i) : \"\";\n return Qt = f, u;\n}\nfunction j4(e) {\n var t = Qt;\n Qt = 1200;\n var r = e.read_shift(2), n = e.read_shift(1), i = n & 4, f = n & 8, c = 1 + (n & 1), u = 0, l, h = {};\n f && (u = e.read_shift(2)), i && (l = e.read_shift(4));\n var x = c == 2 ? \"dbcs-cont\" : \"sbcs-cont\", m = r === 0 ? \"\" : e.read_shift(r, x);\n return f && (e.l += 4 * u), i && (e.l += l), h.t = m, f || (h.raw = \"<t>\" + h.t + \"</t>\", h.r = h.t), Qt = t, h;\n}\nfunction wn(e, t, r) {\n var n;\n if (r) {\n if (r.biff >= 2 && r.biff <= 5) return e.read_shift(t, \"cpstr\");\n if (r.biff >= 12) return e.read_shift(t, \"dbcs-cont\");\n }\n var i = e.read_shift(1);\n return i === 0 ? n = e.read_shift(t, \"sbcs-cont\") : n = e.read_shift(t, \"dbcs-cont\"), n;\n}\nfunction V0(e, t, r) {\n var n = e.read_shift(r && r.biff == 2 ? 1 : 2);\n return n === 0 ? (e.l++, \"\") : wn(e, n, r);\n}\nfunction Sn(e, t, r) {\n if (r.biff > 5) return V0(e, t, r);\n var n = e.read_shift(1);\n return n === 0 ? (e.l++, \"\") : e.read_shift(n, r.biff <= 4 || !e.lens ? \"cpstr\" : \"sbcs-cont\");\n}\nfunction eE(e) {\n var t = e.read_shift(1);\n e.l++;\n var r = e.read_shift(2);\n return e.l += 2, [t, r];\n}\nfunction rE(e) {\n var t = e.read_shift(4), r = e.l, n = !1;\n t > 24 && (e.l += t - 24, e.read_shift(16) === \"795881f43b1d7f48af2c825dc4852763\" && (n = !0), e.l = r);\n var i = e.read_shift((n ? t - 24 : t) >> 1, \"utf16le\").replace(St, \"\");\n return n && (e.l += 24), i;\n}\nfunction tE(e) {\n for (var t = e.read_shift(2), r = \"\"; t-- > 0; ) r += \"../\";\n var n = e.read_shift(0, \"lpstr-ansi\");\n if (e.l += 2, e.read_shift(2) != 57005) throw new Error(\"Bad FileMoniker\");\n var i = e.read_shift(4);\n if (i === 0) return r + n.replace(/\\\\/g, \"/\");\n var f = e.read_shift(4);\n if (e.read_shift(2) != 3) throw new Error(\"Bad FileMoniker\");\n var c = e.read_shift(f >> 1, \"utf16le\").replace(St, \"\");\n return r + c;\n}\nfunction aE(e, t) {\n var r = e.read_shift(16);\n switch (r) {\n case \"e0c9ea79f9bace118c8200aa004ba90b\":\n return rE(e);\n case \"0303000000000000c000000000000046\":\n return tE(e);\n default:\n throw new Error(\"Unsupported Moniker \" + r);\n }\n}\nfunction zi(e) {\n var t = e.read_shift(4), r = t > 0 ? e.read_shift(t, \"utf16le\").replace(St, \"\") : \"\";\n return r;\n}\nfunction nE(e, t) {\n var r = e.l + t, n = e.read_shift(4);\n if (n !== 2) throw new Error(\"Unrecognized streamVersion: \" + n);\n var i = e.read_shift(2);\n e.l += 2;\n var f, c, u, l, h = \"\", x, m;\n i & 16 && (f = zi(e, r - e.l)), i & 128 && (c = zi(e, r - e.l)), (i & 257) === 257 && (u = zi(e, r - e.l)), (i & 257) === 1 && (l = aE(e, r - e.l)), i & 8 && (h = zi(e, r - e.l)), i & 32 && (x = e.read_shift(16)), i & 64 && (m = mc(\n e\n /*, 8*/\n )), e.l = r;\n var _ = c || u || l || \"\";\n _ && h && (_ += \"#\" + h), _ || (_ = \"#\" + h), i & 2 && _.charAt(0) == \"/\" && _.charAt(1) != \"/\" && (_ = \"file://\" + _);\n var v = { Target: _ };\n return x && (v.guid = x), m && (v.time = m), f && (v.Tooltip = f), v;\n}\nfunction z1(e) {\n var t = e.read_shift(1), r = e.read_shift(1), n = e.read_shift(1), i = e.read_shift(1);\n return [t, r, n, i];\n}\nfunction K1(e, t) {\n var r = z1(e);\n return r[3] = 0, r;\n}\nfunction ha(e, t, r) {\n var n = e.read_shift(2), i = e.read_shift(2), f = { r: n, c: i, ixfe: 0 };\n if (r && r.biff == 2 || t == 7) {\n var c = e.read_shift(1);\n f.ixfe = c & 63, e.l += 2;\n } else f.ixfe = e.read_shift(2);\n return f;\n}\nfunction iE(e) {\n var t = e.read_shift(2), r = e.read_shift(2);\n return e.l += 8, { type: t, flags: r };\n}\nfunction sE(e, t, r) {\n return t === 0 ? \"\" : Sn(e, t, r);\n}\nfunction fE(e, t, r) {\n var n = r.biff > 8 ? 4 : 2, i = e.read_shift(n), f = e.read_shift(n, \"i\"), c = e.read_shift(n, \"i\");\n return [i, f, c];\n}\nfunction Y1(e) {\n var t = e.read_shift(2), r = vs(e);\n return [t, r];\n}\nfunction cE(e, t, r) {\n e.l += 4, t -= 4;\n var n = e.l + t, i = Jn(e, t, r), f = e.read_shift(2);\n if (n -= e.l, f !== n) throw new Error(\"Malformed AddinUdf: padding = \" + n + \" != \" + f);\n return e.l += f, i;\n}\nfunction ps(e) {\n var t = e.read_shift(2), r = e.read_shift(2), n = e.read_shift(2), i = e.read_shift(2);\n return { s: { c: n, r: t }, e: { c: i, r } };\n}\nfunction Z1(e) {\n var t = e.read_shift(2), r = e.read_shift(2), n = e.read_shift(1), i = e.read_shift(1);\n return { s: { c: n, r: t }, e: { c: i, r } };\n}\nvar uE = Z1;\nfunction J1(e) {\n e.l += 4;\n var t = e.read_shift(2), r = e.read_shift(2), n = e.read_shift(2);\n return e.l += 12, [r, t, n];\n}\nfunction oE(e) {\n var t = {};\n return e.l += 4, e.l += 16, t.fSharedNote = e.read_shift(2), e.l += 4, t;\n}\nfunction lE(e) {\n var t = {};\n return e.l += 4, e.cf = e.read_shift(2), t;\n}\nfunction ft(e) {\n e.l += 2, e.l += e.read_shift(2);\n}\nvar hE = {\n 0: ft,\n /* FtEnd */\n 4: ft,\n /* FtMacro */\n 5: ft,\n /* FtButton */\n 6: ft,\n /* FtGmo */\n 7: lE,\n /* FtCf */\n 8: ft,\n /* FtPioGrbit */\n 9: ft,\n /* FtPictFmla */\n 10: ft,\n /* FtCbls */\n 11: ft,\n /* FtRbo */\n 12: ft,\n /* FtSbs */\n 13: oE,\n /* FtNts */\n 14: ft,\n /* FtSbsFmla */\n 15: ft,\n /* FtGboData */\n 16: ft,\n /* FtEdoData */\n 17: ft,\n /* FtRboData */\n 18: ft,\n /* FtCblsData */\n 19: ft,\n /* FtLbsData */\n 20: ft,\n /* FtCblsFmla */\n 21: J1\n};\nfunction xE(e, t) {\n for (var r = e.l + t, n = []; e.l < r; ) {\n var i = e.read_shift(2);\n e.l -= 2;\n try {\n n[i] = hE[i](e, r - e.l);\n } catch {\n return e.l = r, n;\n }\n }\n return e.l != r && (e.l = r), n;\n}\nfunction Ki(e, t) {\n var r = { BIFFVer: 0, dt: 0 };\n switch (r.BIFFVer = e.read_shift(2), t -= 2, t >= 2 && (r.dt = e.read_shift(2), e.l -= 2), r.BIFFVer) {\n case 1536:\n /* BIFF8 */\n case 1280:\n /* BIFF5 */\n case 1024:\n /* BIFF4 */\n case 768:\n /* BIFF3 */\n case 512:\n /* BIFF2 */\n case 2:\n case 7:\n break;\n default:\n if (t > 6) throw new Error(\"Unexpected BIFF Ver \" + r.BIFFVer);\n }\n return e.read_shift(t), r;\n}\nfunction dE(e, t) {\n return t === 0 || e.read_shift(2), 1200;\n}\nfunction vE(e, t, r) {\n if (r.enc)\n return e.l += t, \"\";\n var n = e.l, i = Sn(e, 0, r);\n return e.read_shift(t + n - e.l), i;\n}\nfunction pE(e, t, r) {\n var n = r && r.biff == 8 || t == 2 ? e.read_shift(2) : (e.l += t, 0);\n return { fDialog: n & 16, fBelow: n & 64, fRight: n & 128 };\n}\nfunction gE(e, t, r) {\n var n = \"\";\n if (r.biff == 4)\n return n = Jn(e, 0, r), n.length === 0 && (n = \"Sheet1\"), { name: n };\n var i = e.read_shift(4), f = e.read_shift(1) & 3, c = e.read_shift(1);\n switch (c) {\n case 0:\n c = \"Worksheet\";\n break;\n case 1:\n c = \"Macrosheet\";\n break;\n case 2:\n c = \"Chartsheet\";\n break;\n case 6:\n c = \"VBAModule\";\n break;\n }\n return n = Jn(e, 0, r), n.length === 0 && (n = \"Sheet1\"), { pos: i, hs: f, dt: c, name: n };\n}\nfunction _E(e, t) {\n for (var r = e.l + t, n = e.read_shift(4), i = e.read_shift(4), f = [], c = 0; c != i && e.l < r; ++c)\n f.push(j4(e));\n return f.Count = n, f.Unique = i, f;\n}\nfunction mE(e, t) {\n var r = {};\n return r.dsst = e.read_shift(2), e.l += t - 2, r;\n}\nfunction EE(e) {\n var t = {};\n t.r = e.read_shift(2), t.c = e.read_shift(2), t.cnt = e.read_shift(2) - t.c;\n var r = e.read_shift(2);\n e.l += 4;\n var n = e.read_shift(1);\n return e.l += 3, n & 7 && (t.level = n & 7), n & 32 && (t.hidden = !0), n & 64 && (t.hpt = r / 20), t;\n}\nfunction TE(e) {\n var t = iE(e);\n if (t.type != 2211) throw new Error(\"Invalid Future Record \" + t.type);\n var r = e.read_shift(4);\n return r !== 0;\n}\nfunction wE(e) {\n return e.read_shift(2), e.read_shift(4);\n}\nfunction Ol(e, t, r) {\n var n = 0;\n r && r.biff == 2 || (n = e.read_shift(2));\n var i = e.read_shift(2);\n r && r.biff == 2 && (n = 1 - (i >> 15), i &= 32767);\n var f = { Unsynced: n & 1, DyZero: (n & 2) >> 1, ExAsc: (n & 4) >> 2, ExDsc: (n & 8) >> 3 };\n return [f, i];\n}\nfunction kE(e) {\n var t = e.read_shift(2), r = e.read_shift(2), n = e.read_shift(2), i = e.read_shift(2), f = e.read_shift(2), c = e.read_shift(2), u = e.read_shift(2), l = e.read_shift(2), h = e.read_shift(2);\n return {\n Pos: [t, r],\n Dim: [n, i],\n Flags: f,\n CurTab: c,\n FirstTab: u,\n Selected: l,\n TabRatio: h\n };\n}\nfunction AE(e, t, r) {\n if (r && r.biff >= 2 && r.biff < 5) return {};\n var n = e.read_shift(2);\n return { RTL: n & 64 };\n}\nfunction FE() {\n}\nfunction SE(e, t, r) {\n var n = {\n dyHeight: e.read_shift(2),\n fl: e.read_shift(2)\n };\n switch (r && r.biff || 8) {\n case 2:\n break;\n case 3:\n case 4:\n e.l += 2;\n break;\n default:\n e.l += 10;\n break;\n }\n return n.name = Jn(e, 0, r), n;\n}\nfunction CE(e, t, r) {\n var n = ha(e, t, r);\n return n.isst = e.read_shift(4), n;\n}\nfunction yE(e, t, r) {\n r.biffguess && r.biff == 2 && (r.biff = 5);\n var n = e.l + t, i = ha(e, t, r), f = V0(e, n - e.l, r);\n return i.val = f, i;\n}\nfunction IE(e, t, r) {\n var n = e.read_shift(2), i = Sn(e, 0, r);\n return [n, i];\n}\nvar OE = Sn;\nfunction Dl(e, t, r) {\n var n = e.l + t, i = r.biff == 8 || !r.biff ? 4 : 2, f = e.read_shift(i), c = e.read_shift(i), u = e.read_shift(2), l = e.read_shift(2);\n return e.l = n, { s: { r: f, c: u }, e: { r: c, c: l } };\n}\nfunction DE(e) {\n var t = e.read_shift(2), r = e.read_shift(2), n = Y1(e);\n return { r: t, c: r, ixfe: n[0], rknum: n[1] };\n}\nfunction RE(e, t) {\n for (var r = e.l + t - 2, n = e.read_shift(2), i = e.read_shift(2), f = []; e.l < r; ) f.push(Y1(e));\n if (e.l !== r) throw new Error(\"MulRK read error\");\n var c = e.read_shift(2);\n if (f.length != c - i + 1) throw new Error(\"MulRK length mismatch\");\n return { r: n, c: i, C: c, rkrec: f };\n}\nfunction NE(e, t) {\n for (var r = e.l + t - 2, n = e.read_shift(2), i = e.read_shift(2), f = []; e.l < r; ) f.push(e.read_shift(2));\n if (e.l !== r) throw new Error(\"MulBlank read error\");\n var c = e.read_shift(2);\n if (f.length != c - i + 1) throw new Error(\"MulBlank length mismatch\");\n return { r: n, c: i, C: c, ixfe: f };\n}\nfunction LE(e, t, r, n) {\n var i = {}, f = e.read_shift(4), c = e.read_shift(4), u = e.read_shift(4), l = e.read_shift(2);\n return i.patternType = D4[u >> 26], n.cellStyles && (i.alc = f & 7, i.fWrap = f >> 3 & 1, i.alcV = f >> 4 & 7, i.fJustLast = f >> 7 & 1, i.trot = f >> 8 & 255, i.cIndent = f >> 16 & 15, i.fShrinkToFit = f >> 20 & 1, i.iReadOrder = f >> 22 & 2, i.fAtrNum = f >> 26 & 1, i.fAtrFnt = f >> 27 & 1, i.fAtrAlc = f >> 28 & 1, i.fAtrBdr = f >> 29 & 1, i.fAtrPat = f >> 30 & 1, i.fAtrProt = f >> 31 & 1, i.dgLeft = c & 15, i.dgRight = c >> 4 & 15, i.dgTop = c >> 8 & 15, i.dgBottom = c >> 12 & 15, i.icvLeft = c >> 16 & 127, i.icvRight = c >> 23 & 127, i.grbitDiag = c >> 30 & 3, i.icvTop = u & 127, i.icvBottom = u >> 7 & 127, i.icvDiag = u >> 14 & 127, i.dgDiag = u >> 21 & 15, i.icvFore = l & 127, i.icvBack = l >> 7 & 127, i.fsxButton = l >> 14 & 1), i;\n}\nfunction PE(e, t, r) {\n var n = {};\n return n.ifnt = e.read_shift(2), n.numFmtId = e.read_shift(2), n.flags = e.read_shift(2), n.fStyle = n.flags >> 2 & 1, t -= 6, n.data = LE(e, t, n.fStyle, r), n;\n}\nfunction bE(e) {\n var t = {};\n return t.ifnt = e.read_shift(1), e.l++, t.flags = e.read_shift(1), t.numFmtId = t.flags & 63, t.flags >>= 6, t.fStyle = 0, t.data = {}, t;\n}\nfunction BE(e) {\n var t = {};\n return t.ifnt = e.read_shift(1), t.numFmtId = e.read_shift(1), t.flags = e.read_shift(2), t.fStyle = t.flags >> 2 & 1, t.data = {}, t;\n}\nfunction ME(e) {\n var t = {};\n return t.ifnt = e.read_shift(1), t.numFmtId = e.read_shift(1), t.flags = e.read_shift(2), t.fStyle = t.flags >> 2 & 1, t.data = {}, t;\n}\nfunction UE(e) {\n e.l += 4;\n var t = [e.read_shift(2), e.read_shift(2)];\n if (t[0] !== 0 && t[0]--, t[1] !== 0 && t[1]--, t[0] > 7 || t[1] > 7) throw new Error(\"Bad Gutters: \" + t.join(\"|\"));\n return t;\n}\nfunction WE(e, t, r) {\n var n = ha(e, 6, r), i = $1(e);\n return n.val = i, n.t = i === !0 || i === !1 ? \"b\" : \"e\", n;\n}\nfunction HE(e, t, r) {\n r.biffguess && r.biff == 2 && (r.biff = 5);\n var n = ha(e, 6, r), i = ut(e);\n return n.val = i, n;\n}\nvar Rl = sE;\nfunction GE(e, t, r) {\n var n = e.l + t, i = e.read_shift(2), f = e.read_shift(2);\n if (r.sbcch = f, f == 1025 || f == 14849) return [f, i];\n if (f < 1 || f > 255) throw new Error(\"Unexpected SupBook type: \" + f);\n for (var c = wn(e, f), u = []; n > e.l; ) u.push(V0(e));\n return [f, i, c, u];\n}\nfunction Nl(e, t, r) {\n var n = e.read_shift(2), i, f = {\n fBuiltIn: n & 1,\n fWantAdvise: n >>> 1 & 1,\n fWantPict: n >>> 2 & 1,\n fOle: n >>> 3 & 1,\n fOleLink: n >>> 4 & 1,\n cf: n >>> 5 & 1023,\n fIcon: n >>> 15 & 1\n };\n return r.sbcch === 14849 && (i = cE(e, t - 2, r)), f.body = i || e.read_shift(t - 2), typeof i == \"string\" && (f.Name = i), f;\n}\nfunction Ll(e, t, r) {\n var n = e.l + t, i = e.read_shift(2), f = e.read_shift(1), c = e.read_shift(1), u = e.read_shift(r && r.biff == 2 ? 1 : 2), l = 0;\n (!r || r.biff >= 5) && (r.biff != 5 && (e.l += 2), l = e.read_shift(2), r.biff == 5 && (e.l += 2), e.l += 4);\n var h = wn(e, c, r);\n i & 32 && (h = U1[h.charCodeAt(0)]);\n var x = n - e.l;\n r && r.biff == 2 && --x;\n var m = n == e.l || u === 0 || !(x > 0) ? [] : g3(e, x, r, u);\n return {\n chKey: f,\n Name: h,\n itab: l,\n rgce: m\n };\n}\nfunction q1(e, t, r) {\n if (r.biff < 8 || !(r.biff > 8) && t == e[e.l] + (e[e.l + 1] == 3 ? 1 : 0) + 1) return Pl(e, t, r);\n for (var n = [], i = e.l + t, f = e.read_shift(r.biff > 8 ? 4 : 2); f-- !== 0; ) n.push(fE(e, r.biff > 8 ? 12 : 6, r));\n if (e.l != i) throw new Error(\"Bad ExternSheet: \" + e.l + \" != \" + i);\n return n;\n}\nfunction Pl(e, t, r) {\n e[e.l + 1] == 3 && e[e.l]++;\n var n = Jn(e, t, r);\n return n.charCodeAt(0) == 3 ? n.slice(1) : n;\n}\nfunction VE(e, t, r) {\n if (r.biff < 8) {\n e.l += t;\n return;\n }\n var n = e.read_shift(2), i = e.read_shift(2), f = wn(e, n, r), c = wn(e, i, r);\n return [f, c];\n}\nfunction XE(e, t, r) {\n var n = Z1(e);\n e.l++;\n var i = e.read_shift(1);\n return t -= 8, [_3(e, t, r), i, n];\n}\nfunction bl(e, t, r) {\n var n = uE(e);\n switch (r.biff) {\n case 2:\n e.l++, t -= 7;\n break;\n case 3:\n case 4:\n e.l += 2, t -= 8;\n break;\n default:\n e.l += 6, t -= 12;\n }\n return [n, v3(e, t, r)];\n}\nfunction $E(e) {\n var t = e.read_shift(4) !== 0, r = e.read_shift(4) !== 0, n = e.read_shift(4);\n return [t, r, n];\n}\nfunction zE(e, t, r) {\n var n = e.read_shift(2), i = e.read_shift(2), f = e.read_shift(2), c = e.read_shift(2), u = Sn(e, 0, r);\n return [{ r: n, c: i }, u, c, f];\n}\nfunction KE(e, t, r) {\n if (r && r.biff < 8) {\n var n = e.read_shift(2), i = e.read_shift(2);\n if (n == 65535 || n == -1) return;\n var f = e.read_shift(2), c = e.read_shift(Math.min(f, 2048), \"cpstr\");\n return [{ r: n, c: i }, c];\n }\n return zE(e, t, r);\n}\nfunction YE(e, t) {\n for (var r = [], n = e.read_shift(2); n--; ) r.push(ps(e));\n return r;\n}\nfunction ZE(e, t, r) {\n if (r && r.biff < 8) return qE(e, t, r);\n var n = J1(e), i = xE(e, t - 22, n[1]);\n return { cmo: n, ft: i };\n}\nvar JE = {\n 8: function(e, t) {\n var r = e.l + t;\n e.l += 10;\n var n = e.read_shift(2);\n e.l += 4, e.l += 2, e.l += 2, e.l += 2, e.l += 4;\n var i = e.read_shift(1);\n return e.l += i, e.l = r, { fmt: n };\n }\n};\nfunction qE(e, t, r) {\n e.l += 4;\n var n = e.read_shift(2), i = e.read_shift(2), f = e.read_shift(2);\n e.l += 2, e.l += 2, e.l += 2, e.l += 2, e.l += 2, e.l += 2, e.l += 2, e.l += 2, e.l += 2, e.l += 6, t -= 36;\n var c = [];\n return c.push((JE[n] || ht)(e, t, r)), { cmo: [i, n, f], ft: c };\n}\nfunction QE(e, t, r) {\n var n = e.l, i = \"\";\n try {\n e.l += 4;\n var f = (r.lastobj || { cmo: [0, 0] }).cmo[1], c;\n [0, 5, 7, 11, 12, 14].indexOf(f) == -1 ? e.l += 6 : c = eE(e, 6, r);\n var u = e.read_shift(2);\n e.read_shift(2), Rr(e, 2);\n var l = e.read_shift(2);\n e.l += l;\n for (var h = 1; h < e.lens.length - 1; ++h) {\n if (e.l - n != e.lens[h]) throw new Error(\"TxO: bad continue record\");\n var x = e[e.l], m = wn(e, e.lens[h + 1] - e.lens[h] - 1);\n if (i += m, i.length >= (x ? u : 2 * u)) break;\n }\n if (i.length !== u && i.length !== u * 2)\n throw new Error(\"cchText: \" + u + \" != \" + i.length);\n return e.l = n + t, { t: i };\n } catch {\n return e.l = n + t, { t: i };\n }\n}\nfunction jE(e, t) {\n var r = ps(e);\n e.l += 16;\n var n = nE(e, t - 24);\n return [r, n];\n}\nfunction eT(e, t) {\n e.read_shift(2);\n var r = ps(e), n = e.read_shift((t - 10) / 2, \"dbcs-cont\");\n return n = n.replace(St, \"\"), [r, n];\n}\nfunction rT(e) {\n var t = [0, 0], r;\n return r = e.read_shift(2), t[0] = Al[r] || r, r = e.read_shift(2), t[1] = Al[r] || r, t;\n}\nfunction tT(e) {\n for (var t = e.read_shift(2), r = []; t-- > 0; ) r.push(K1(e));\n return r;\n}\nfunction aT(e) {\n for (var t = e.read_shift(2), r = []; t-- > 0; ) r.push(K1(e));\n return r;\n}\nfunction nT(e) {\n e.l += 2;\n var t = { cxfs: 0, crc: 0 };\n return t.cxfs = e.read_shift(2), t.crc = e.read_shift(4), t;\n}\nfunction Q1(e, t, r) {\n if (!r.cellStyles) return ht(e, t);\n var n = r && r.biff >= 12 ? 4 : 2, i = e.read_shift(n), f = e.read_shift(n), c = e.read_shift(n), u = e.read_shift(n), l = e.read_shift(2);\n n == 2 && (e.l += 2);\n var h = { s: i, e: f, w: c, ixfe: u, flags: l };\n return (r.biff >= 5 || !r.biff) && (h.level = l >> 8 & 7), h;\n}\nfunction iT(e, t) {\n var r = {};\n return t < 32 || (e.l += 16, r.header = ut(e), r.footer = ut(e), e.l += 2), r;\n}\nfunction sT(e, t, r) {\n var n = { area: !1 };\n if (r.biff != 5)\n return e.l += t, n;\n var i = e.read_shift(1);\n return e.l += 3, i & 16 && (n.area = !0), n;\n}\nvar fT = ha, cT = X1, uT = V0;\nfunction oT(e) {\n var t = e.read_shift(2), r = e.read_shift(2), n = e.read_shift(4), i = { fmt: t, env: r, len: n, data: e.slice(e.l, e.l + n) };\n return e.l += n, i;\n}\nfunction lT(e, t, r) {\n r.biffguess && r.biff == 5 && (r.biff = 2);\n var n = ha(e, 7, r), i = Sn(e, t - 7, r);\n return n.t = \"str\", n.val = i, n;\n}\nfunction hT(e, t, r) {\n var n = ha(e, 7, r), i = ut(e);\n return n.t = \"n\", n.val = i, n;\n}\nfunction xT(e, t, r) {\n var n = ha(e, 7, r), i = e.read_shift(2);\n return n.t = \"n\", n.val = i, n;\n}\nfunction dT(e) {\n var t = e.read_shift(1);\n return t === 0 ? (e.l++, \"\") : e.read_shift(t, \"sbcs-cont\");\n}\nfunction vT(e, t, r) {\n var n = e.l + 7, i = ha(e, 6, r);\n e.l = n;\n var f = $1(e);\n return i.val = f, i.t = f === !0 || f === !1 ? \"b\" : \"e\", i;\n}\nfunction pT(e, t) {\n e.l += 6, e.l += 2, e.l += 1, e.l += 3, e.l += 1, e.l += t - 13;\n}\nfunction gT(e, t, r) {\n var n = e.l + t, i = ha(e, 6, r), f = e.read_shift(2), c = wn(e, f, r);\n return e.l = n, i.t = \"str\", i.val = c, i;\n}\nfunction _T(e) {\n var t = e.read_shift(4), r = e.read_shift(1), n = e.read_shift(r, \"sbcs\");\n return n.length === 0 && (n = \"Sheet1\"), { flags: t, name: n };\n}\nvar mT = [2, 3, 48, 49, 131, 139, 140, 245], Bl = /* @__PURE__ */ function() {\n var e = {\n /* Code Pages Supported by Visual FoxPro */\n 1: 437,\n 2: 850,\n 3: 1252,\n 4: 1e4,\n 100: 852,\n 101: 866,\n 102: 865,\n 103: 861,\n 104: 895,\n 105: 620,\n 106: 737,\n 107: 857,\n 120: 950,\n 121: 949,\n 122: 936,\n 123: 932,\n 124: 874,\n 125: 1255,\n 126: 1256,\n 150: 10007,\n 151: 10029,\n 152: 10006,\n 200: 1250,\n 201: 1251,\n 202: 1254,\n 203: 1253,\n /* shapefile DBF extension */\n 0: 20127,\n 8: 865,\n 9: 437,\n 10: 850,\n 11: 437,\n 13: 437,\n 14: 850,\n 15: 437,\n 16: 850,\n 17: 437,\n 18: 850,\n 19: 932,\n 20: 850,\n 21: 437,\n 22: 850,\n 23: 865,\n 24: 437,\n 25: 437,\n 26: 850,\n 27: 437,\n 28: 863,\n 29: 850,\n 31: 852,\n 34: 852,\n 35: 852,\n 36: 860,\n 37: 850,\n 38: 866,\n 55: 850,\n 64: 852,\n 77: 936,\n 78: 949,\n 79: 950,\n 80: 874,\n 87: 1252,\n 88: 1252,\n 89: 1252,\n 108: 863,\n 134: 737,\n 135: 852,\n 136: 857,\n 204: 1257,\n 255: 16969\n }, t = oc({\n 1: 437,\n 2: 850,\n 3: 1252,\n 4: 1e4,\n 100: 852,\n 101: 866,\n 102: 865,\n 103: 861,\n 104: 895,\n 105: 620,\n 106: 737,\n 107: 857,\n 120: 950,\n 121: 949,\n 122: 936,\n 123: 932,\n 124: 874,\n 125: 1255,\n 126: 1256,\n 150: 10007,\n 151: 10029,\n 152: 10006,\n 200: 1250,\n 201: 1251,\n 202: 1254,\n 203: 1253,\n 0: 20127\n });\n function r(u, l) {\n var h = [], x = qa(1);\n switch (l.type) {\n case \"base64\":\n x = bt(Ut(u));\n break;\n case \"binary\":\n x = bt(u);\n break;\n case \"buffer\":\n case \"array\":\n x = u;\n break;\n }\n zr(x, 0);\n var m = x.read_shift(1), _ = !!(m & 136), v = !1, T = !1;\n switch (m) {\n case 2:\n break;\n // dBASE II\n case 3:\n break;\n // dBASE III\n case 48:\n v = !0, _ = !0;\n break;\n // VFP\n case 49:\n v = !0, _ = !0;\n break;\n // VFP with autoincrement\n // 0x43 dBASE IV SQL table files\n // 0x63 dBASE IV SQL system files\n case 131:\n break;\n // dBASE III with memo\n case 139:\n break;\n // dBASE IV with memo\n case 140:\n T = !0;\n break;\n // dBASE Level 7 with memo\n // case 0xCB dBASE IV SQL table files with memo\n case 245:\n break;\n // FoxPro 2.x with memo\n // case 0xFB FoxBASE\n default:\n throw new Error(\"DBF Unsupported Version: \" + m.toString(16));\n }\n var A = 0, g = 521;\n m == 2 && (A = x.read_shift(2)), x.l += 3, m != 2 && (A = x.read_shift(4)), A > 1048576 && (A = 1e6), m != 2 && (g = x.read_shift(2));\n var p = x.read_shift(2);\n l.codepage, m != 2 && (x.l += 16, x.read_shift(1), x[x.l] !== 0 && e[x[x.l]], x.l += 1, x.l += 2), T && (x.l += 36);\n for (var y = [], w = {}, P = Math.min(x.length, m == 2 ? 521 : g - 10 - (v ? 264 : 0)), V = T ? 32 : 11; x.l < P && x[x.l] != 13; )\n switch (w = {}, w.name = Na(x.slice(x.l, x.l + V)).replace(/[\\u0000\\r\\n][\\S\\s]*$/g, \"\"), x.l += V, w.type = String.fromCharCode(x.read_shift(1)), m != 2 && !T && (w.offset = x.read_shift(4)), w.len = x.read_shift(1), m == 2 && (w.offset = x.read_shift(2)), w.dec = x.read_shift(1), w.name.length && y.push(w), m != 2 && (x.l += T ? 13 : 14), w.type) {\n case \"B\":\n (!v || w.len != 8) && l.WTF && console.log(\"Skipping \" + w.name + \":\" + w.type);\n break;\n case \"G\":\n // General (FoxPro and dBASE L7)\n case \"P\":\n l.WTF && console.log(\"Skipping \" + w.name + \":\" + w.type);\n break;\n case \"+\":\n // Autoincrement (dBASE L7 only)\n case \"0\":\n // _NullFlags (VFP only)\n case \"@\":\n // Timestamp (dBASE L7 only)\n case \"C\":\n // Character (dBASE II)\n case \"D\":\n // Date (dBASE III)\n case \"F\":\n // Float (dBASE IV)\n case \"I\":\n // Long (VFP and dBASE L7)\n case \"L\":\n // Logical (dBASE II)\n case \"M\":\n // Memo (dBASE III)\n case \"N\":\n // Number (dBASE II)\n case \"O\":\n // Double (dBASE L7 only)\n case \"T\":\n // Datetime (VFP only)\n case \"Y\":\n break;\n default:\n throw new Error(\"Unknown Field Type: \" + w.type);\n }\n if (x[x.l] !== 13 && (x.l = g - 1), x.read_shift(1) !== 13) throw new Error(\"DBF Terminator not found \" + x.l + \" \" + x[x.l]);\n x.l = g;\n var Z = 0, M = 0;\n for (h[0] = [], M = 0; M != y.length; ++M) h[0][M] = y[M].name;\n for (; A-- > 0; ) {\n if (x[x.l] === 42) {\n x.l += p;\n continue;\n }\n for (++x.l, h[++Z] = [], M = 0, M = 0; M != y.length; ++M) {\n var G = x.slice(x.l, x.l + y[M].len);\n x.l += y[M].len, zr(G, 0);\n var U = Na(G);\n switch (y[M].type) {\n case \"C\":\n U.trim().length && (h[Z][M] = U.replace(/([^\\s])\\s+$/, \"$1\"));\n break;\n case \"D\":\n U.length === 8 ? (h[Z][M] = new Date(Date.UTC(+U.slice(0, 4), +U.slice(4, 6) - 1, +U.slice(6, 8), 0, 0, 0, 0)), l && l.UTC || (h[Z][M] = Tn(h[Z][M]))) : h[Z][M] = U;\n break;\n case \"F\":\n h[Z][M] = parseFloat(U.trim());\n break;\n case \"+\":\n case \"I\":\n h[Z][M] = T ? G.read_shift(-4, \"i\") ^ 2147483648 : G.read_shift(4, \"i\");\n break;\n case \"L\":\n switch (U.trim().toUpperCase()) {\n case \"Y\":\n case \"T\":\n h[Z][M] = !0;\n break;\n case \"N\":\n case \"F\":\n h[Z][M] = !1;\n break;\n case \"\":\n case \"\\0\":\n case \"?\":\n break;\n default:\n throw new Error(\"DBF Unrecognized L:|\" + U + \"|\");\n }\n break;\n case \"M\":\n if (!_) throw new Error(\"DBF Unexpected MEMO for type \" + m.toString(16));\n h[Z][M] = \"##MEMO##\" + (T ? parseInt(U.trim(), 10) : G.read_shift(4));\n break;\n case \"N\":\n U = U.replace(/\\u0000/g, \"\").trim(), U && U != \".\" && (h[Z][M] = +U || 0);\n break;\n case \"@\":\n h[Z][M] = new Date(G.read_shift(-8, \"f\") - 621356832e5);\n break;\n case \"T\":\n {\n var J = G.read_shift(4), z = G.read_shift(4);\n if (J == 0 && z == 0) break;\n h[Z][M] = new Date((J - 2440588) * 864e5 + z), l && l.UTC || (h[Z][M] = Tn(h[Z][M]));\n }\n break;\n case \"Y\":\n h[Z][M] = G.read_shift(4, \"i\") / 1e4 + G.read_shift(4, \"i\") / 1e4 * Math.pow(2, 32);\n break;\n case \"O\":\n h[Z][M] = -G.read_shift(-8, \"f\");\n break;\n case \"B\":\n if (v && y[M].len == 8) {\n h[Z][M] = G.read_shift(8, \"f\");\n break;\n }\n /* falls through */\n case \"G\":\n case \"P\":\n G.l += y[M].len;\n break;\n case \"0\":\n if (y[M].name === \"_NullFlags\") break;\n /* falls through */\n default:\n throw new Error(\"DBF Unsupported data type \" + y[M].type);\n }\n }\n }\n if (m != 2 && x.l < x.length && x[x.l++] != 26) throw new Error(\"DBF EOF Marker missing \" + (x.l - 1) + \" of \" + x.length + \" \" + x[x.l - 1].toString(16));\n return l && l.sheetRows && (h = h.slice(0, l.sheetRows)), l.DBF = y, h;\n }\n function n(u, l) {\n var h = l || {};\n h.dateNF || (h.dateNF = \"yyyymmdd\");\n var x = Qn(r(u, h), h);\n return x[\"!cols\"] = h.DBF.map(function(m) {\n return {\n wch: m.len,\n DBF: m\n };\n }), delete h.DBF, x;\n }\n function i(u, l) {\n try {\n var h = rn(n(u, l), l);\n return h.bookType = \"dbf\", h;\n } catch (x) {\n if (l && l.WTF) throw x;\n }\n return { SheetNames: [], Sheets: {} };\n }\n var f = { B: 8, C: 250, L: 1, D: 8, \"?\": 0, \"\": 0 };\n function c(u, l) {\n if (!u[\"!ref\"]) throw new Error(\"Cannot export empty sheet to DBF\");\n var h = l || {}, x = Qt;\n if (+h.codepage >= 0 && ua(+h.codepage), h.type == \"string\") throw new Error(\"Cannot write DBF to JS string\");\n var m = Qf(), _ = nc(u, { header: 1, raw: !0, cellDates: !0 }), v = _[0], T = _.slice(1), A = u[\"!cols\"] || [], g = 0, p = 0, y = 0, w = 1;\n for (g = 0; g < v.length; ++g) {\n if (((A[g] || {}).DBF || {}).name) {\n v[g] = A[g].DBF.name, ++y;\n continue;\n }\n if (v[g] != null) {\n if (++y, typeof v[g] == \"number\" && (v[g] = v[g].toString(10)), typeof v[g] != \"string\") throw new Error(\"DBF Invalid column name \" + v[g] + \" |\" + typeof v[g] + \"|\");\n if (v.indexOf(v[g]) !== g) {\n for (p = 0; p < 1024; ++p)\n if (v.indexOf(v[g] + \"_\" + p) == -1) {\n v[g] += \"_\" + p;\n break;\n }\n }\n }\n }\n var P = Br(u[\"!ref\"]), V = [], Z = [], M = [];\n for (g = 0; g <= P.e.c - P.s.c; ++g) {\n var G = \"\", U = \"\", J = 0, z = [];\n for (p = 0; p < T.length; ++p)\n T[p][g] != null && z.push(T[p][g]);\n if (z.length == 0 || v[g] == null) {\n V[g] = \"?\";\n continue;\n }\n for (p = 0; p < z.length; ++p) {\n switch (typeof z[p]) {\n /* TODO: check if L2 compat is desired */\n case \"number\":\n U = \"B\";\n break;\n case \"string\":\n U = \"C\";\n break;\n case \"boolean\":\n U = \"L\";\n break;\n case \"object\":\n U = z[p] instanceof Date ? \"D\" : \"C\";\n break;\n default:\n U = \"C\";\n }\n J = Math.max(J, String(z[p]).length), G = G && G != U ? \"C\" : U;\n }\n J > 250 && (J = 250), U = ((A[g] || {}).DBF || {}).type, U == \"C\" && A[g].DBF.len > J && (J = A[g].DBF.len), G == \"B\" && U == \"N\" && (G = \"N\", M[g] = A[g].DBF.dec, J = A[g].DBF.len), Z[g] = G == \"C\" || U == \"N\" ? J : f[G] || 0, w += Z[g], V[g] = G;\n }\n var re = m.next(32);\n for (re.write_shift(4, 318902576), re.write_shift(4, T.length), re.write_shift(2, 296 + 32 * y), re.write_shift(2, w), g = 0; g < 4; ++g) re.write_shift(4, 0);\n var ne = +t[\n /*::String(*/\n Qt\n /*::)*/\n ] || 3;\n for (re.write_shift(4, 0 | ne << 8), e[ne] != +h.codepage && (h.codepage && console.error(\"DBF Unsupported codepage \" + Qt + \", using 1252\"), Qt = 1252), g = 0, p = 0; g < v.length; ++g)\n if (v[g] != null) {\n var Ae = m.next(32), he = (v[g].slice(-10) + \"\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\").slice(0, 11);\n Ae.write_shift(1, he, \"sbcs\"), Ae.write_shift(1, V[g] == \"?\" ? \"C\" : V[g], \"sbcs\"), Ae.write_shift(4, p), Ae.write_shift(1, Z[g] || f[V[g]] || 0), Ae.write_shift(1, M[g] || 0), Ae.write_shift(1, 2), Ae.write_shift(4, 0), Ae.write_shift(1, 0), Ae.write_shift(4, 0), Ae.write_shift(4, 0), p += Z[g] || f[V[g]] || 0;\n }\n var De = m.next(264);\n for (De.write_shift(4, 13), g = 0; g < 65; ++g) De.write_shift(4, 0);\n for (g = 0; g < T.length; ++g) {\n var le = m.next(w);\n for (le.write_shift(1, 0), p = 0; p < v.length; ++p)\n if (v[p] != null)\n switch (V[p]) {\n case \"L\":\n le.write_shift(1, T[g][p] == null ? 63 : T[g][p] ? 84 : 70);\n break;\n case \"B\":\n le.write_shift(8, T[g][p] || 0, \"f\");\n break;\n case \"N\":\n var Ee = \"0\";\n for (typeof T[g][p] == \"number\" && (Ee = T[g][p].toFixed(M[p] || 0)), Ee.length > Z[p] && (Ee = Ee.slice(0, Z[p])), y = 0; y < Z[p] - Ee.length; ++y) le.write_shift(1, 32);\n le.write_shift(1, Ee, \"sbcs\");\n break;\n case \"D\":\n T[g][p] ? (le.write_shift(4, (\"0000\" + T[g][p].getFullYear()).slice(-4), \"sbcs\"), le.write_shift(2, (\"00\" + (T[g][p].getMonth() + 1)).slice(-2), \"sbcs\"), le.write_shift(2, (\"00\" + T[g][p].getDate()).slice(-2), \"sbcs\")) : le.write_shift(8, \"00000000\", \"sbcs\");\n break;\n case \"C\":\n var be = le.l, ae = String(T[g][p] != null ? T[g][p] : \"\").slice(0, Z[p]);\n for (le.write_shift(1, ae, \"cpstr\"), be += Z[p] - le.l, y = 0; y < be; ++y) le.write_shift(1, 32);\n break;\n }\n }\n return Qt = x, m.next(1).write_shift(1, 26), m.end();\n }\n return {\n to_workbook: i,\n to_sheet: n,\n from_sheet: c\n };\n}(), ET = /* @__PURE__ */ function() {\n var e = {\n AA: \"À\",\n BA: \"Á\",\n CA: \"Â\",\n DA: 195,\n HA: \"Ä\",\n JA: 197,\n AE: \"È\",\n BE: \"É\",\n CE: \"Ê\",\n HE: \"Ë\",\n AI: \"Ì\",\n BI: \"Í\",\n CI: \"Î\",\n HI: \"Ï\",\n AO: \"Ò\",\n BO: \"Ó\",\n CO: \"Ô\",\n DO: 213,\n HO: \"Ö\",\n AU: \"Ù\",\n BU: \"Ú\",\n CU: \"Û\",\n HU: \"Ü\",\n Aa: \"à\",\n Ba: \"á\",\n Ca: \"â\",\n Da: 227,\n Ha: \"ä\",\n Ja: 229,\n Ae: \"è\",\n Be: \"é\",\n Ce: \"ê\",\n He: \"ë\",\n Ai: \"ì\",\n Bi: \"í\",\n Ci: \"î\",\n Hi: \"ï\",\n Ao: \"ò\",\n Bo: \"ó\",\n Co: \"ô\",\n Do: 245,\n Ho: \"ö\",\n Au: \"ù\",\n Bu: \"ú\",\n Cu: \"û\",\n Hu: \"ü\",\n KC: \"Ç\",\n Kc: \"ç\",\n q: \"æ\",\n z: \"œ\",\n a: \"Æ\",\n j: \"Œ\",\n DN: 209,\n Dn: 241,\n Hy: 255,\n S: 169,\n c: 170,\n R: 174,\n \"B \": 180,\n 0: 176,\n 1: 177,\n 2: 178,\n 3: 179,\n 5: 181,\n 6: 182,\n 7: 183,\n Q: 185,\n k: 186,\n b: 208,\n i: 216,\n l: 222,\n s: 240,\n y: 248,\n \"!\": 161,\n '\"': 162,\n \"#\": 163,\n \"(\": 164,\n \"%\": 165,\n \"'\": 167,\n \"H \": 168,\n \"+\": 171,\n \";\": 187,\n \"<\": 188,\n \"=\": 189,\n \">\": 190,\n \"?\": 191,\n \"{\": 223\n }, t = new RegExp(\"\\x1BN(\" + jt(e).join(\"|\").replace(/\\|\\|\\|/, \"|\\\\||\").replace(/([?()+])/g, \"\\\\$1\").replace(\"{\", \"\\\\{\") + \"|\\\\|)\", \"gm\");\n try {\n t = new RegExp(\"\\x1BN(\" + jt(e).join(\"|\").replace(/\\|\\|\\|/, \"|\\\\||\").replace(/([?()+])/g, \"\\\\$1\") + \"|\\\\|)\", \"gm\");\n } catch {\n }\n var r = function(v, T) {\n var A = e[T];\n return typeof A == \"number\" ? jo(A) : A;\n }, n = function(v, T, A) {\n var g = T.charCodeAt(0) - 32 << 4 | A.charCodeAt(0) - 48;\n return g == 59 ? v : jo(g);\n };\n e[\"|\"] = 254;\n var i = function(v) {\n return v.replace(/\\n/g, \"\\x1B :\").replace(/\\r/g, \"\\x1B =\");\n };\n function f(v, T) {\n switch (T.type) {\n case \"base64\":\n return c(Ut(v), T);\n case \"binary\":\n return c(v, T);\n case \"buffer\":\n return c(tr && Buffer.isBuffer(v) ? v.toString(\"binary\") : Na(v), T);\n case \"array\":\n return c(En(v), T);\n }\n throw new Error(\"Unrecognized type \" + T.type);\n }\n function c(v, T) {\n var A = v.split(/[\\n\\r]+/), g = -1, p = -1, y = 0, w = 0, P = [], V = [], Z = null, M = {}, G = [], U = [], J = [], z = 0, re, ne = { Workbook: { WBProps: {}, Names: [] } };\n for (+T.codepage >= 0 && ua(+T.codepage); y !== A.length; ++y) {\n z = 0;\n var Ae = A[y].trim().replace(/\\x1B([\\x20-\\x2F])([\\x30-\\x3F])/g, n).replace(t, r), he = Ae.replace(/;;/g, \"\\0\").split(\";\").map(function(B) {\n return B.replace(/\\u0000/g, \";\");\n }), De = he[0], le;\n if (Ae.length > 0) switch (De) {\n case \"ID\":\n break;\n /* header */\n case \"E\":\n break;\n /* EOF */\n case \"B\":\n break;\n /* dimensions */\n case \"O\":\n for (w = 1; w < he.length; ++w) switch (he[w].charAt(0)) {\n case \"V\":\n {\n var Ee = parseInt(he[w].slice(1), 10);\n Ee >= 1 && Ee <= 4 && (ne.Workbook.WBProps.date1904 = !0);\n }\n break;\n }\n break;\n case \"W\":\n break;\n /* window */\n case \"P\":\n switch (he[1].charAt(0)) {\n case \"P\":\n V.push(Ae.slice(3).replace(/;;/g, \";\"));\n break;\n }\n break;\n case \"NN\":\n {\n var be = { Sheet: 0 };\n for (w = 1; w < he.length; ++w) switch (he[w].charAt(0)) {\n case \"N\":\n be.Name = he[w].slice(1);\n break;\n case \"E\":\n be.Ref = (T && T.sheet || \"Sheet1\") + \"!\" + _n(he[w].slice(1));\n break;\n }\n ne.Workbook.Names.push(be);\n }\n break;\n // case 'NE': // ??\n // case 'NU': // ??\n case \"C\":\n var ae = !1, Pe = !1, Ge = !1, Le = !1, Se = -1, Me = -1, Be = \"\", Ke = \"z\", N = \"\";\n for (w = 1; w < he.length; ++w) switch (he[w].charAt(0)) {\n case \"A\":\n N = he[w].slice(1);\n break;\n // TODO: comment\n case \"X\":\n p = parseInt(he[w].slice(1), 10) - 1, Pe = !0;\n break;\n case \"Y\":\n for (g = parseInt(he[w].slice(1), 10) - 1, Pe || (p = 0), re = P.length; re <= g; ++re) P[re] = [];\n break;\n case \"K\":\n le = he[w].slice(1), le.charAt(0) === '\"' ? (le = le.slice(1, le.length - 1), Ke = \"s\") : le === \"TRUE\" || le === \"FALSE\" ? (le = le === \"TRUE\", Ke = \"b\") : le.charAt(0) == \"#\" && rt[le] != null ? (Ke = \"e\", le = rt[le]) : isNaN(Mt(le)) || (le = Mt(le), Ke = \"n\", Z !== null && la(Z) && T.cellDates && (le = Ja(ne.Workbook.WBProps.date1904 ? le + 1462 : le), Ke = typeof le == \"number\" ? \"n\" : \"d\")), ae = !0;\n break;\n case \"E\":\n Le = !0, Be = _n(he[w].slice(1), { r: g, c: p });\n break;\n case \"S\":\n Ge = !0;\n break;\n case \"G\":\n break;\n // unknown\n case \"R\":\n Se = parseInt(he[w].slice(1), 10) - 1;\n break;\n case \"C\":\n Me = parseInt(he[w].slice(1), 10) - 1;\n break;\n // case 'P': // ??\n // case 'D': // ??\n default:\n if (T && T.WTF) throw new Error(\"SYLK bad record \" + Ae);\n }\n if (ae && (P[g][p] ? (P[g][p].t = Ke, P[g][p].v = le) : P[g][p] = { t: Ke, v: le }, Z && (P[g][p].z = Z), T.cellText !== !1 && Z && (P[g][p].w = Wt(P[g][p].z, P[g][p].v, { date1904: ne.Workbook.WBProps.date1904 })), Z = null), Ge) {\n if (Le) throw new Error(\"SYLK shared formula cannot have own formula\");\n var K = Se > -1 && P[Se][Me];\n if (!K || !K[1]) throw new Error(\"SYLK shared formula cannot find base\");\n Be = fh(K[1], { r: g - Se, c: p - Me });\n }\n Be && (P[g][p] ? P[g][p].f = Be : P[g][p] = { t: \"n\", f: Be }), N && (P[g][p] || (P[g][p] = { t: \"z\" }), P[g][p].c = [{ a: \"SheetJSYLK\", t: N }]);\n break;\n case \"F\":\n var H = 0;\n for (w = 1; w < he.length; ++w) switch (he[w].charAt(0)) {\n case \"X\":\n p = parseInt(he[w].slice(1), 10) - 1, ++H;\n break;\n case \"Y\":\n for (g = parseInt(he[w].slice(1), 10) - 1, re = P.length; re <= g; ++re) P[re] = [];\n break;\n case \"M\":\n z = parseInt(he[w].slice(1), 10) / 20;\n break;\n case \"F\":\n break;\n /* ??? */\n case \"G\":\n break;\n /* hide grid */\n case \"P\":\n Z = V[parseInt(he[w].slice(1), 10)];\n break;\n case \"S\":\n break;\n /* cell style */\n case \"D\":\n break;\n /* column */\n case \"N\":\n break;\n /* font */\n case \"W\":\n for (J = he[w].slice(1).split(\" \"), re = parseInt(J[0], 10); re <= parseInt(J[1], 10); ++re)\n z = parseInt(J[2], 10), U[re - 1] = z === 0 ? { hidden: !0 } : { wch: z };\n break;\n case \"C\":\n p = parseInt(he[w].slice(1), 10) - 1, U[p] || (U[p] = {});\n break;\n case \"R\":\n g = parseInt(he[w].slice(1), 10) - 1, G[g] || (G[g] = {}), z > 0 ? (G[g].hpt = z, G[g].hpx = M0(z)) : z === 0 && (G[g].hidden = !0);\n break;\n // case 'K': // ??\n // case 'E': // ??\n default:\n if (T && T.WTF) throw new Error(\"SYLK bad record \" + Ae);\n }\n H < 1 && (Z = null);\n break;\n default:\n if (T && T.WTF) throw new Error(\"SYLK bad record \" + Ae);\n }\n }\n return G.length > 0 && (M[\"!rows\"] = G), U.length > 0 && (M[\"!cols\"] = U), U.forEach(function(B) {\n qn(B);\n }), T && T.sheetRows && (P = P.slice(0, T.sheetRows)), [P, M, ne];\n }\n function u(v, T) {\n var A = f(v, T), g = A[0], p = A[1], y = A[2], w = Gr(T);\n w.date1904 = (((y || {}).Workbook || {}).WBProps || {}).date1904;\n var P = Qn(g, w);\n jt(p).forEach(function(Z) {\n P[Z] = p[Z];\n });\n var V = rn(P, T);\n return jt(y).forEach(function(Z) {\n V[Z] = y[Z];\n }), V.bookType = \"sylk\", V;\n }\n function l(v, T, A, g, p, y) {\n var w = \"C;Y\" + (A + 1) + \";X\" + (g + 1) + \";K\";\n switch (v.t) {\n case \"n\":\n w += isFinite(v.v) ? v.v || 0 : Ct[isNaN(v.v) ? 36 : 7], v.f && !v.F && (w += \";E\" + ek(v.f, { r: A, c: g }));\n break;\n case \"b\":\n w += v.v ? \"TRUE\" : \"FALSE\";\n break;\n case \"e\":\n w += v.w || Ct[v.v] || v.v;\n break;\n case \"d\":\n w += Kr(at(v.v, y), y);\n break;\n case \"s\":\n w += '\"' + (v.v == null ? \"\" : String(v.v)).replace(/\"/g, \"\").replace(/;/g, \";;\") + '\"';\n break;\n }\n return w;\n }\n function h(v, T, A) {\n var g = \"C;Y\" + (T + 1) + \";X\" + (A + 1) + \";A\";\n return g += i(v.map(function(p) {\n return p.t;\n }).join(\"\")), g;\n }\n function x(v, T) {\n T.forEach(function(A, g) {\n var p = \"F;W\" + (g + 1) + \" \" + (g + 1) + \" \";\n A.hidden ? p += \"0\" : (typeof A.width == \"number\" && !A.wpx && (A.wpx = cs(A.width)), typeof A.wpx == \"number\" && !A.wch && (A.wch = us(A.wpx)), typeof A.wch == \"number\" && (p += Math.round(A.wch))), p.charAt(p.length - 1) != \" \" && v.push(p);\n });\n }\n function m(v, T) {\n T.forEach(function(A, g) {\n var p = \"F;\";\n A.hidden ? p += \"M0;\" : A.hpt ? p += \"M\" + 20 * A.hpt + \";\" : A.hpx && (p += \"M\" + 20 * ih(A.hpx) + \";\"), p.length > 2 && v.push(p + \"R\" + (g + 1));\n });\n }\n function _(v, T, A) {\n T || (T = {}), T._formats = [\"General\"];\n var g = [\"ID;PSheetJS;N;E\"], p = [], y = Br(v[\"!ref\"] || \"A1\"), w, P = v[\"!data\"] != null, V = `\\r\n`, Z = (((A || {}).Workbook || {}).WBProps || {}).date1904, M = \"General\";\n g.push(\"P;PGeneral\");\n var G = y.s.r, U = y.s.c, J = [];\n if (v[\"!ref\"]) {\n for (G = y.s.r; G <= y.e.r; ++G)\n if (!(P && !v[\"!data\"][G])) {\n for (J = [], U = y.s.c; U <= y.e.c; ++U)\n w = P ? v[\"!data\"][G][U] : v[xr(U) + _r(G)], !(!w || !w.c) && J.push(h(w.c, G, U));\n J.length && p.push(J.join(V));\n }\n }\n if (v[\"!ref\"]) {\n for (G = y.s.r; G <= y.e.r; ++G)\n if (!(P && !v[\"!data\"][G])) {\n for (J = [], U = y.s.c; U <= y.e.c; ++U)\n if (w = P ? v[\"!data\"][G][U] : v[xr(U) + _r(G)], !(!w || w.v == null && (!w.f || w.F))) {\n if ((w.z || (w.t == \"d\" ? Xe[14] : \"General\")) != M) {\n var z = T._formats.indexOf(w.z);\n z == -1 && (T._formats.push(w.z), z = T._formats.length - 1, g.push(\"P;P\" + w.z.replace(/;/g, \";;\"))), J.push(\"F;P\" + z + \";Y\" + (G + 1) + \";X\" + (U + 1));\n }\n J.push(l(w, v, G, U, T, Z));\n }\n p.push(J.join(V));\n }\n }\n return g.push(\"F;P0;DG0G8;M255\"), v[\"!cols\"] && x(g, v[\"!cols\"]), v[\"!rows\"] && m(g, v[\"!rows\"]), v[\"!ref\"] && g.push(\"B;Y\" + (y.e.r - y.s.r + 1) + \";X\" + (y.e.c - y.s.c + 1) + \";D\" + [y.s.c, y.s.r, y.e.c, y.e.r].join(\" \")), g.push(\"O;L;D;B\" + (Z ? \";V4\" : \"\") + \";K47;G100 0.001\"), delete T._formats, g.join(V) + V + p.join(V) + V + \"E\" + V;\n }\n return {\n to_workbook: u,\n from_sheet: _\n };\n}(), TT = /* @__PURE__ */ function() {\n function e(u, l) {\n switch (l.type) {\n case \"base64\":\n return t(Ut(u), l);\n case \"binary\":\n return t(u, l);\n case \"buffer\":\n return t(tr && Buffer.isBuffer(u) ? u.toString(\"binary\") : Na(u), l);\n case \"array\":\n return t(En(u), l);\n }\n throw new Error(\"Unrecognized type \" + l.type);\n }\n function t(u, l) {\n for (var h = u.split(`\n`), x = -1, m = -1, _ = 0, v = []; _ !== h.length; ++_) {\n if (h[_].trim() === \"BOT\") {\n v[++x] = [], m = 0;\n continue;\n }\n if (!(x < 0)) {\n var T = h[_].trim().split(\",\"), A = T[0], g = T[1];\n ++_;\n for (var p = h[_] || \"\"; (p.match(/[\"]/g) || []).length & 1 && _ < h.length - 1; ) p += `\n` + h[++_];\n switch (p = p.trim(), +A) {\n case -1:\n if (p === \"BOT\") {\n v[++x] = [], m = 0;\n continue;\n } else if (p !== \"EOD\") throw new Error(\"Unrecognized DIF special command \" + p);\n break;\n case 0:\n p === \"TRUE\" ? v[x][m] = !0 : p === \"FALSE\" ? v[x][m] = !1 : isNaN(Mt(g)) ? isNaN(P0(g).getDate()) ? v[x][m] = g : (v[x][m] = at(g), l && l.UTC || (v[x][m] = Tn(v[x][m]))) : v[x][m] = Mt(g), ++m;\n break;\n case 1:\n p = p.slice(1, p.length - 1), p = p.replace(/\"\"/g, '\"'), p && p.match(/^=\".*\"$/) && (p = p.slice(2, -1)), v[x][m++] = p !== \"\" ? p : null;\n break;\n }\n if (p === \"EOD\") break;\n }\n }\n return l && l.sheetRows && (v = v.slice(0, l.sheetRows)), v;\n }\n function r(u, l) {\n return Qn(e(u, l), l);\n }\n function n(u, l) {\n var h = rn(r(u, l), l);\n return h.bookType = \"dif\", h;\n }\n function i(u, l) {\n return \"0,\" + String(u) + `\\r\n` + l;\n }\n function f(u) {\n return `1,0\\r\n\"` + u.replace(/\"/g, '\"\"') + '\"';\n }\n function c(u) {\n if (!u[\"!ref\"]) throw new Error(\"Cannot export empty sheet to DIF\");\n for (var l = Br(u[\"!ref\"]), h = u[\"!data\"] != null, x = [\n `TABLE\\r\n0,1\\r\n\"sheetjs\"\\r\n`,\n `VECTORS\\r\n0,` + (l.e.r - l.s.r + 1) + `\\r\n\"\"\\r\n`,\n `TUPLES\\r\n0,` + (l.e.c - l.s.c + 1) + `\\r\n\"\"\\r\n`,\n `DATA\\r\n0,0\\r\n\"\"\\r\n`\n ], m = l.s.r; m <= l.e.r; ++m) {\n for (var _ = h ? u[\"!data\"][m] : [], v = `-1,0\\r\nBOT\\r\n`, T = l.s.c; T <= l.e.c; ++T) {\n var A = h ? _ && _[T] : u[hr({ r: m, c: T })];\n if (A == null) {\n v += `1,0\\r\n\"\"\\r\n`;\n continue;\n }\n switch (A.t) {\n case \"n\":\n A.w != null ? v += \"0,\" + A.w + `\\r\nV` : A.v != null ? v += i(A.v, \"V\") : A.f != null && !A.F ? v += f(\"=\" + A.f) : v += `1,0\\r\n\"\"`;\n break;\n case \"b\":\n v += A.v ? i(1, \"TRUE\") : i(0, \"FALSE\");\n break;\n case \"s\":\n v += f(isNaN(+A.v) ? A.v : '=\"' + A.v + '\"');\n break;\n case \"d\":\n A.w || (A.w = Wt(A.z || Xe[14], Kr(at(A.v)))), v += i(A.w, \"V\");\n break;\n default:\n v += `1,0\\r\n\"\"`;\n }\n v += `\\r\n`;\n }\n x.push(v);\n }\n return x.join(\"\") + `-1,0\\r\nEOD`;\n }\n return {\n to_workbook: n,\n to_sheet: r,\n from_sheet: c\n };\n}(), wT = /* @__PURE__ */ function() {\n function e(m) {\n return m.replace(/\\\\b/g, \"\\\\\").replace(/\\\\c/g, \":\").replace(/\\\\n/g, `\n`);\n }\n function t(m) {\n return m.replace(/\\\\/g, \"\\\\b\").replace(/:/g, \"\\\\c\").replace(/\\n/g, \"\\\\n\");\n }\n function r(m, _) {\n for (var v = m.split(`\n`), T = -1, A = -1, g = 0, p = []; g !== v.length; ++g) {\n var y = v[g].trim().split(\":\");\n if (y[0] === \"cell\") {\n var w = ot(y[1]);\n if (p.length <= w.r) for (T = p.length; T <= w.r; ++T) p[T] || (p[T] = []);\n switch (T = w.r, A = w.c, y[2]) {\n case \"t\":\n p[T][A] = e(y[3]);\n break;\n case \"v\":\n p[T][A] = +y[3];\n break;\n case \"vtf\":\n var P = y[y.length - 1];\n /* falls through */\n case \"vtc\":\n switch (y[3]) {\n case \"nl\":\n p[T][A] = !!+y[4];\n break;\n default:\n p[T][A] = y[y.length - 1].charAt(0) == \"#\" ? { t: \"e\", v: rt[y[y.length - 1]] } : +y[4];\n break;\n }\n y[2] == \"vtf\" && (p[T][A] = [p[T][A], P]);\n }\n }\n }\n return _ && _.sheetRows && (p = p.slice(0, _.sheetRows)), p;\n }\n function n(m, _) {\n return Qn(r(m, _), _);\n }\n function i(m, _) {\n return rn(n(m, _), _);\n }\n var f = [\n \"socialcalc:version:1.5\",\n \"MIME-Version: 1.0\",\n \"Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave\"\n ].join(`\n`), c = [\n \"--SocialCalcSpreadsheetControlSave\",\n \"Content-type: text/plain; charset=UTF-8\"\n ].join(`\n`) + `\n`, u = [\n \"# SocialCalc Spreadsheet Control Save\",\n \"part:sheet\"\n ].join(`\n`), l = \"--SocialCalcSpreadsheetControlSave--\";\n function h(m) {\n if (!m || !m[\"!ref\"]) return \"\";\n for (var _ = [], v = [], T, A = \"\", g = kn(m[\"!ref\"]), p = m[\"!data\"] != null, y = g.s.r; y <= g.e.r; ++y)\n for (var w = g.s.c; w <= g.e.c; ++w)\n if (A = hr({ r: y, c: w }), T = p ? (m[\"!data\"][y] || [])[w] : m[A], !(!T || T.v == null || T.t === \"z\")) {\n switch (v = [\"cell\", A, \"t\"], T.t) {\n case \"s\":\n v.push(t(T.v));\n break;\n case \"b\":\n v[2] = \"vt\" + (T.f ? \"f\" : \"c\"), v[3] = \"nl\", v[4] = T.v ? \"1\" : \"0\", v[5] = t(T.f || (T.v ? \"TRUE\" : \"FALSE\"));\n break;\n case \"d\":\n var P = Kr(at(T.v));\n v[2] = \"vtc\", v[3] = \"nd\", v[4] = \"\" + P, v[5] = T.w || Wt(T.z || Xe[14], P);\n break;\n case \"n\":\n isFinite(T.v) ? T.f ? (v[2] = \"vtf\", v[3] = \"n\", v[4] = T.v, v[5] = t(T.f)) : (v[2] = \"v\", v[3] = T.v) : (v[2] = \"vt\" + (T.f ? \"f\" : \"c\"), v[3] = \"e\" + Ct[isNaN(T.v) ? 36 : 7], v[4] = \"0\", v[5] = T.f || v[3].slice(1), v[6] = \"e\", v[7] = v[3].slice(1));\n break;\n case \"e\":\n continue;\n }\n _.push(v.join(\":\"));\n }\n return _.push(\"sheet:c:\" + (g.e.c - g.s.c + 1) + \":r:\" + (g.e.r - g.s.r + 1) + \":tvf:1\"), _.push(\"valueformat:1:text-wiki\"), _.join(`\n`);\n }\n function x(m) {\n return [f, c, u, c, h(m), l].join(`\n`);\n }\n return {\n to_workbook: i,\n to_sheet: n,\n from_sheet: x\n };\n}(), b0 = /* @__PURE__ */ function() {\n function e(x, m, _, v, T) {\n T.raw ? m[_][v] = x : x === \"\" || (x === \"TRUE\" ? m[_][v] = !0 : x === \"FALSE\" ? m[_][v] = !1 : isNaN(Mt(x)) ? isNaN(P0(x).getDate()) ? x.charCodeAt(0) == 35 && rt[x] != null ? m[_][v] = { t: \"e\", v: rt[x], w: x } : m[_][v] = x : m[_][v] = at(x) : m[_][v] = Mt(x));\n }\n function t(x, m) {\n var _ = m || {}, v = [];\n if (!x || x.length === 0) return v;\n for (var T = x.split(/[\\r\\n]/), A = T.length - 1; A >= 0 && T[A].length === 0; ) --A;\n for (var g = 10, p = 0, y = 0; y <= A; ++y)\n p = T[y].indexOf(\" \"), p == -1 ? p = T[y].length : p++, g = Math.max(g, p);\n for (y = 0; y <= A; ++y) {\n v[y] = [];\n var w = 0;\n for (e(T[y].slice(0, g).trim(), v, y, w, _), w = 1; w <= (T[y].length - g) / 10 + 1; ++w)\n e(T[y].slice(g + (w - 1) * 10, g + w * 10).trim(), v, y, w, _);\n }\n return _.sheetRows && (v = v.slice(0, _.sheetRows)), v;\n }\n var r = {\n 44: \",\",\n 9: \"\t\",\n 59: \";\",\n 124: \"|\"\n }, n = {\n 44: 3,\n 9: 2,\n 59: 1,\n 124: 0\n };\n function i(x) {\n for (var m = {}, _ = !1, v = 0, T = 0; v < x.length; ++v)\n (T = x.charCodeAt(v)) == 34 ? _ = !_ : !_ && T in r && (m[T] = (m[T] || 0) + 1);\n T = [];\n for (v in m) Object.prototype.hasOwnProperty.call(m, v) && T.push([m[v], v]);\n if (!T.length) {\n m = n;\n for (v in m) Object.prototype.hasOwnProperty.call(m, v) && T.push([m[v], v]);\n }\n return T.sort(function(A, g) {\n return A[0] - g[0] || n[A[1]] - n[g[1]];\n }), r[T.pop()[1]] || 44;\n }\n function f(x, m) {\n var _ = m || {}, v = \"\", T = {};\n _.dense && (T[\"!data\"] = []);\n var A = { s: { c: 0, r: 0 }, e: { c: 0, r: 0 } };\n x.slice(0, 4) == \"sep=\" ? x.charCodeAt(5) == 13 && x.charCodeAt(6) == 10 ? (v = x.charAt(4), x = x.slice(7)) : x.charCodeAt(5) == 13 || x.charCodeAt(5) == 10 ? (v = x.charAt(4), x = x.slice(6)) : v = i(x.slice(0, 1024)) : _ && _.FS ? v = _.FS : v = i(x.slice(0, 1024));\n var g = 0, p = 0, y = 0, w = 0, P = 0, V = v.charCodeAt(0), Z = !1, M = 0, G = x.charCodeAt(0), U = _.dateNF != null ? pm(_.dateNF) : null;\n function J() {\n var z = x.slice(w, P);\n z.slice(-1) == \"\\r\" && (z = z.slice(0, -1));\n var re = {};\n if (z.charAt(0) == '\"' && z.charAt(z.length - 1) == '\"' && (z = z.slice(1, -1).replace(/\"\"/g, '\"')), _.cellText !== !1 && (re.w = z), z.length === 0) re.t = \"z\";\n else if (_.raw)\n re.t = \"s\", re.v = z;\n else if (z.trim().length === 0)\n re.t = \"s\", re.v = z;\n else if (z.charCodeAt(0) == 61)\n z.charCodeAt(1) == 34 && z.charCodeAt(z.length - 1) == 34 ? (re.t = \"s\", re.v = z.slice(2, -1).replace(/\"\"/g, '\"')) : rk(z) ? (re.t = \"s\", re.f = z.slice(1), re.v = z) : (re.t = \"s\", re.v = z);\n else if (z == \"TRUE\")\n re.t = \"b\", re.v = !0;\n else if (z == \"FALSE\")\n re.t = \"b\", re.v = !1;\n else if (!isNaN(y = Mt(z)))\n re.t = \"n\", re.v = y;\n else if (!isNaN((y = P0(z)).getDate()) || U && z.match(U)) {\n if (re.z = _.dateNF || Xe[14], U && z.match(U)) {\n var ne = gm(z, _.dateNF, z.match(U) || []);\n y = at(ne), _ && _.UTC === !1 && (y = Tn(y));\n } else _ && _.UTC === !1 ? y = Tn(y) : _.cellText !== !1 && _.dateNF && (re.w = Wt(re.z, y));\n _.cellDates ? (re.t = \"d\", re.v = y) : (re.t = \"n\", re.v = Kr(y)), _.cellNF || delete re.z;\n } else z.charCodeAt(0) == 35 && rt[z] != null ? (re.t = \"e\", re.w = z, re.v = rt[z]) : (re.t = \"s\", re.v = z);\n if (re.t == \"z\" || (_.dense ? (T[\"!data\"][g] || (T[\"!data\"][g] = []), T[\"!data\"][g][p] = re) : T[hr({ c: p, r: g })] = re), w = P + 1, G = x.charCodeAt(w), A.e.c < p && (A.e.c = p), A.e.r < g && (A.e.r = g), M == V) ++p;\n else if (p = 0, ++g, _.sheetRows && _.sheetRows <= g) return !0;\n }\n e: for (; P < x.length; ++P) switch (M = x.charCodeAt(P)) {\n case 34:\n G === 34 && (Z = !Z);\n break;\n case 13:\n if (Z) break;\n x.charCodeAt(P + 1) == 10 && ++P;\n /* falls through */\n case V:\n case 10:\n if (!Z && J()) break e;\n break;\n }\n return P - w > 0 && J(), T[\"!ref\"] = sr(A), T;\n }\n function c(x, m) {\n return !(m && m.PRN) || m.FS || x.slice(0, 4) == \"sep=\" || x.indexOf(\"\t\") >= 0 || x.indexOf(\",\") >= 0 || x.indexOf(\";\") >= 0 ? f(x, m) : Qn(t(x, m), m);\n }\n function u(x, m) {\n var _ = \"\", v = m.type == \"string\" ? [0, 0, 0, 0] : Sc(x, m);\n switch (m.type) {\n case \"base64\":\n _ = Ut(x);\n break;\n case \"binary\":\n _ = x;\n break;\n case \"buffer\":\n m.codepage == 65001 ? _ = x.toString(\"utf8\") : (m.codepage, _ = tr && Buffer.isBuffer(x) ? x.toString(\"binary\") : Na(x));\n break;\n case \"array\":\n _ = En(x);\n break;\n case \"string\":\n _ = x;\n break;\n default:\n throw new Error(\"Unrecognized type \" + m.type);\n }\n return v[0] == 239 && v[1] == 187 && v[2] == 191 ? _ = Tr(_.slice(3)) : m.type != \"string\" && m.type != \"buffer\" && m.codepage == 65001 ? _ = Tr(_) : m.type == \"binary\", _.slice(0, 19) == \"socialcalc:version:\" ? wT.to_sheet(m.type == \"string\" ? _ : Tr(_), m) : c(_, m);\n }\n function l(x, m) {\n return rn(u(x, m), m);\n }\n function h(x) {\n var m = [];\n if (!x[\"!ref\"]) return \"\";\n for (var _ = Br(x[\"!ref\"]), v, T = x[\"!data\"] != null, A = _.s.r; A <= _.e.r; ++A) {\n for (var g = [], p = _.s.c; p <= _.e.c; ++p) {\n var y = hr({ r: A, c: p });\n if (v = T ? (x[\"!data\"][A] || [])[p] : x[y], !v || v.v == null) {\n g.push(\" \");\n continue;\n }\n for (var w = (v.w || (Qa(v), v.w) || \"\").slice(0, 10); w.length < 10; ) w += \" \";\n g.push(w + (p === 0 ? \" \" : \"\"));\n }\n m.push(g.join(\"\"));\n }\n return m.join(`\n`);\n }\n return {\n to_workbook: l,\n to_sheet: u,\n from_sheet: h\n };\n}();\nfunction kT(e, t) {\n var r = t || {}, n = !!r.WTF;\n r.WTF = !0;\n try {\n var i = ET.to_workbook(e, r);\n return r.WTF = n, i;\n } catch (f) {\n if (r.WTF = n, f.message.indexOf(\"SYLK bad record ID\") == -1 && n) throw f;\n return b0.to_workbook(e, t);\n }\n}\nvar y0 = /* @__PURE__ */ function() {\n function e(N, K, H) {\n if (N) {\n zr(N, N.l || 0);\n for (var B = H.Enum || Le; N.l < N.length; ) {\n var fe = N.read_shift(2), O = B[fe] || B[65535], pe = N.read_shift(2), Te = N.l + pe, ve = O.f && O.f(N, pe, H);\n if (N.l = Te, K(ve, O, fe)) return;\n }\n }\n }\n function t(N, K) {\n switch (K.type) {\n case \"base64\":\n return n(bt(Ut(N)), K);\n case \"binary\":\n return n(bt(N), K);\n case \"buffer\":\n case \"array\":\n return n(N, K);\n }\n throw \"Unsupported type \" + K.type;\n }\n var r = [\n \"mmmm\",\n \"dd-mmm-yyyy\",\n \"dd-mmm\",\n \"mmm-yyyy\",\n \"@\",\n // \"text\"?\n \"mm/dd\",\n \"hh:mm:ss AM/PM\",\n // 7\n \"hh:mm AM/PM\",\n \"mm/dd/yyyy\",\n \"mm/dd\",\n \"hh:mm:ss\",\n \"hh:mm\"\n // 12\n ];\n function n(N, K) {\n if (!N) return N;\n var H = K || {}, B = {}, fe = \"Sheet1\", O = \"\", pe = 0, Te = {}, ve = [], Oe = [], Re = [];\n H.dense && (Re = B[\"!data\"] = []);\n var Ve = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, ar = H.sheetRows || 0, qe = {};\n if (N[4] == 81 && N[5] == 80 && N[6] == 87) return Ke(N, K);\n if (N[2] == 0 && (N[3] == 8 || N[3] == 9) && N.length >= 16 && N[14] == 5 && N[15] === 108)\n throw new Error(\"Unsupported Works 3 for Mac file\");\n if (N[2] == 2)\n H.Enum = Le, e(N, function(ge, xt, Nr) {\n switch (Nr) {\n case 0:\n H.vers = ge, ge >= 4096 && (H.qpro = !0);\n break;\n case 255:\n H.vers = ge, H.works = !0;\n break;\n case 6:\n Ve = ge;\n break;\n /* RANGE */\n case 204:\n ge && (O = ge);\n break;\n /* SHEETNAMECS */\n case 222:\n O = ge;\n break;\n /* SHEETNAMELP */\n case 15:\n /* LABEL */\n case 51:\n (!H.qpro && !H.works || Nr == 51) && ge[1].v.charCodeAt(0) < 48 && (ge[1].v = ge[1].v.slice(1)), (H.works || H.works2) && (ge[1].v = ge[1].v.replace(/\\r\\n/g, `\n`));\n /* falls through */\n case 13:\n /* INTEGER */\n case 14:\n /* NUMBER */\n case 16:\n (ge[2] & 112) == 112 && (ge[2] & 15) > 1 && (ge[2] & 15) < 15 && (ge[1].z = H.dateNF || r[(ge[2] & 15) - 1] || Xe[14], H.cellDates && (ge[1].v = Ja(ge[1].v), ge[1].t = typeof ge[1].v == \"number\" ? \"n\" : \"d\")), H.qpro && ge[3] > pe && (B[\"!ref\"] = sr(Ve), Te[fe] = B, ve.push(fe), B = {}, H.dense && (Re = B[\"!data\"] = []), Ve = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, pe = ge[3], fe = O || \"Sheet\" + (pe + 1), O = \"\");\n var dr = H.dense ? (Re[ge[0].r] || [])[ge[0].c] : B[hr(ge[0])];\n if (dr) {\n dr.t = ge[1].t, dr.v = ge[1].v, ge[1].z != null && (dr.z = ge[1].z), ge[1].f != null && (dr.f = ge[1].f), qe = dr;\n break;\n }\n H.dense ? (Re[ge[0].r] || (Re[ge[0].r] = []), Re[ge[0].r][ge[0].c] = ge[1]) : B[hr(ge[0])] = ge[1], qe = ge[1];\n break;\n case 21509:\n H.works2 = !0;\n break;\n case 21506:\n ge == 5281 && (qe.z = \"hh:mm:ss\", H.cellDates && qe.t == \"n\" && (qe.v = Ja(qe.v), qe.t = typeof qe.v == \"number\" ? \"n\" : \"d\"));\n break;\n }\n }, H);\n else if (N[2] == 26 || N[2] == 14)\n H.Enum = Se, N[2] == 14 && (H.qpro = !0, N.l = 0), e(N, function(ge, xt, Nr) {\n switch (Nr) {\n case 204:\n fe = ge;\n break;\n /* SHEETNAMECS */\n case 22:\n ge[1].v.charCodeAt(0) < 48 && (ge[1].v = ge[1].v.slice(1)), ge[1].v = ge[1].v.replace(/\\x0F./g, function(dr) {\n return String.fromCharCode(dr.charCodeAt(1) - 32);\n }).replace(/\\r\\n/g, `\n`);\n /* falls through */\n case 23:\n /* NUMBER17 */\n case 24:\n /* NUMBER18 */\n case 25:\n /* FORMULA19 */\n case 37:\n /* NUMBER25 */\n case 39:\n /* NUMBER27 */\n case 40:\n if (ge[3] > pe && (B[\"!ref\"] = sr(Ve), Te[fe] = B, ve.push(fe), B = {}, H.dense && (Re = B[\"!data\"] = []), Ve = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, pe = ge[3], fe = \"Sheet\" + (pe + 1)), ar > 0 && ge[0].r >= ar) break;\n H.dense ? (Re[ge[0].r] || (Re[ge[0].r] = []), Re[ge[0].r][ge[0].c] = ge[1]) : B[hr(ge[0])] = ge[1], Ve.e.c < ge[0].c && (Ve.e.c = ge[0].c), Ve.e.r < ge[0].r && (Ve.e.r = ge[0].r);\n break;\n case 27:\n ge[14e3] && (Oe[ge[14e3][0]] = ge[14e3][1]);\n break;\n case 1537:\n Oe[ge[0]] = ge[1], ge[0] == pe && (fe = ge[1]);\n break;\n }\n }, H);\n else throw new Error(\"Unrecognized LOTUS BOF \" + N[2]);\n if (B[\"!ref\"] = sr(Ve), Te[O || fe] = B, ve.push(O || fe), !Oe.length) return { SheetNames: ve, Sheets: Te };\n for (var Er = {}, Ce = [], er = 0; er < Oe.length; ++er) Te[ve[er]] ? (Ce.push(Oe[er] || ve[er]), Er[Oe[er]] = Te[Oe[er]] || Te[ve[er]]) : (Ce.push(Oe[er]), Er[Oe[er]] = { \"!ref\": \"A1\" });\n return { SheetNames: Ce, Sheets: Er };\n }\n function i(N, K) {\n var H = K || {};\n if (+H.codepage >= 0 && ua(+H.codepage), H.type == \"string\") throw new Error(\"Cannot write WK1 to JS string\");\n var B = Qf();\n if (!N[\"!ref\"]) throw new Error(\"Cannot export empty sheet to WK1\");\n var fe = Br(N[\"!ref\"]), O = N[\"!data\"] != null, pe = [];\n Pt(B, 0, c(1030)), Pt(B, 6, h(fe));\n for (var Te = Math.min(fe.e.r, 8191), ve = fe.s.c; ve <= fe.e.c; ++ve) pe[ve] = xr(ve);\n for (var Oe = fe.s.r; Oe <= Te; ++Oe) {\n var Re = _r(Oe);\n for (ve = fe.s.c; ve <= fe.e.c; ++ve) {\n var Ve = O ? (N[\"!data\"][Oe] || [])[ve] : N[pe[ve] + Re];\n if (!(!Ve || Ve.t == \"z\"))\n switch (Ve.t) {\n case \"n\":\n (Ve.v | 0) == Ve.v && Ve.v >= -32768 && Ve.v <= 32767 ? Pt(B, 13, g(Oe, ve, Ve)) : Pt(B, 14, y(Oe, ve, Ve));\n break;\n case \"d\":\n var ar = Kr(Ve.v);\n (ar | 0) == ar && ar >= -32768 && ar <= 32767 ? Pt(B, 13, g(Oe, ve, { v: ar, z: Ve.z || Xe[14] })) : Pt(B, 14, y(Oe, ve, { v: ar, z: Ve.z || Xe[14] }));\n break;\n default:\n var qe = Qa(Ve);\n Pt(B, 15, v(Oe, ve, qe.slice(0, 239)));\n }\n }\n }\n return Pt(B, 1), B.end();\n }\n function f(N, K) {\n var H = K || {};\n if (+H.codepage >= 0 && ua(+H.codepage), H.type == \"string\") throw new Error(\"Cannot write WK3 to JS string\");\n var B = Qf();\n Pt(B, 0, u(N));\n for (var fe = 0, O = 0; fe < N.SheetNames.length; ++fe) (N.Sheets[N.SheetNames[fe]] || {})[\"!ref\"] && Pt(B, 27, Ge(N.SheetNames[fe], O++));\n var pe = 0;\n for (fe = 0; fe < N.SheetNames.length; ++fe) {\n var Te = N.Sheets[N.SheetNames[fe]];\n if (!(!Te || !Te[\"!ref\"])) {\n for (var ve = Br(Te[\"!ref\"]), Oe = Te[\"!data\"] != null, Re = [], Ve = Math.min(ve.e.r, 8191), ar = ve.s.r; ar <= Ve; ++ar)\n for (var qe = _r(ar), Er = ve.s.c; Er <= ve.e.c; ++Er) {\n ar === ve.s.r && (Re[Er] = xr(Er));\n var Ce = Re[Er] + qe, er = Oe ? (Te[\"!data\"][ar] || [])[Er] : Te[Ce];\n if (!(!er || er.t == \"z\"))\n if (er.t == \"n\")\n Pt(B, 23, ne(ar, Er, pe, er.v));\n else {\n var ge = Qa(er);\n Pt(B, 22, J(ar, Er, pe, ge.slice(0, 239)));\n }\n }\n ++pe;\n }\n }\n return Pt(B, 1), B.end();\n }\n function c(N) {\n var K = Hr(2);\n return K.write_shift(2, N), K;\n }\n function u(N) {\n var K = Hr(26);\n K.write_shift(2, 4096), K.write_shift(2, 4), K.write_shift(4, 0);\n for (var H = 0, B = 0, fe = 0, O = 0; O < N.SheetNames.length; ++O) {\n var pe = N.SheetNames[O], Te = N.Sheets[pe];\n if (!(!Te || !Te[\"!ref\"])) {\n ++fe;\n var ve = kn(Te[\"!ref\"]);\n H < ve.e.r && (H = ve.e.r), B < ve.e.c && (B = ve.e.c);\n }\n }\n return H > 8191 && (H = 8191), K.write_shift(2, H), K.write_shift(1, fe), K.write_shift(1, B), K.write_shift(2, 0), K.write_shift(2, 0), K.write_shift(1, 1), K.write_shift(1, 2), K.write_shift(4, 0), K.write_shift(4, 0), K;\n }\n function l(N, K, H) {\n var B = { s: { c: 0, r: 0 }, e: { c: 0, r: 0 } };\n return K == 8 && H.qpro ? (B.s.c = N.read_shift(1), N.l++, B.s.r = N.read_shift(2), B.e.c = N.read_shift(1), N.l++, B.e.r = N.read_shift(2), B) : (B.s.c = N.read_shift(2), B.s.r = N.read_shift(2), K == 12 && H.qpro && (N.l += 2), B.e.c = N.read_shift(2), B.e.r = N.read_shift(2), K == 12 && H.qpro && (N.l += 2), B.s.c == 65535 && (B.s.c = B.e.c = B.s.r = B.e.r = 0), B);\n }\n function h(N) {\n var K = Hr(8);\n return K.write_shift(2, N.s.c), K.write_shift(2, N.s.r), K.write_shift(2, N.e.c), K.write_shift(2, N.e.r), K;\n }\n function x(N, K, H) {\n var B = [{ c: 0, r: 0 }, { t: \"n\", v: 0 }, 0, 0];\n return H.qpro && H.vers != 20768 ? (B[0].c = N.read_shift(1), B[3] = N.read_shift(1), B[0].r = N.read_shift(2), N.l += 2) : H.works ? (B[0].c = N.read_shift(2), B[0].r = N.read_shift(2), B[2] = N.read_shift(2)) : (B[2] = N.read_shift(1), B[0].c = N.read_shift(2), B[0].r = N.read_shift(2)), B;\n }\n function m(N) {\n return N.z && la(N.z) ? 240 | (r.indexOf(N.z) + 1 || 2) : 255;\n }\n function _(N, K, H) {\n var B = N.l + K, fe = x(N, K, H);\n if (fe[1].t = \"s\", (H.vers & 65534) == 20768) {\n N.l++;\n var O = N.read_shift(1);\n return fe[1].v = N.read_shift(O, \"utf8\"), fe;\n }\n return H.qpro && N.l++, fe[1].v = N.read_shift(B - N.l, \"cstr\"), fe;\n }\n function v(N, K, H) {\n var B = Hr(7 + H.length);\n B.write_shift(1, 255), B.write_shift(2, K), B.write_shift(2, N), B.write_shift(1, 39);\n for (var fe = 0; fe < B.length; ++fe) {\n var O = H.charCodeAt(fe);\n B.write_shift(1, O >= 128 ? 95 : O);\n }\n return B.write_shift(1, 0), B;\n }\n function T(N, K, H) {\n var B = N.l + K, fe = x(N, K, H);\n if (fe[1].t = \"s\", H.vers == 20768) {\n var O = N.read_shift(1);\n return fe[1].v = N.read_shift(O, \"utf8\"), fe;\n }\n return fe[1].v = N.read_shift(B - N.l, \"cstr\"), fe;\n }\n function A(N, K, H) {\n var B = x(N, K, H);\n return B[1].v = N.read_shift(2, \"i\"), B;\n }\n function g(N, K, H) {\n var B = Hr(7);\n return B.write_shift(1, m(H)), B.write_shift(2, K), B.write_shift(2, N), B.write_shift(2, H.v, \"i\"), B;\n }\n function p(N, K, H) {\n var B = x(N, K, H);\n return B[1].v = N.read_shift(8, \"f\"), B;\n }\n function y(N, K, H) {\n var B = Hr(13);\n return B.write_shift(1, m(H)), B.write_shift(2, K), B.write_shift(2, N), B.write_shift(8, H.v, \"f\"), B;\n }\n function w(N, K, H) {\n var B = N.l + K, fe = x(N, K, H);\n if (fe[1].v = N.read_shift(8, \"f\"), H.qpro) N.l = B;\n else {\n var O = N.read_shift(2);\n M(N.slice(N.l, N.l + O), fe), N.l += O;\n }\n return fe;\n }\n function P(N, K, H) {\n var B = K & 32768;\n return K &= -32769, K = (B ? N : 0) + (K >= 8192 ? K - 16384 : K), (B ? \"\" : \"$\") + (H ? xr(K) : _r(K));\n }\n var V = {\n 31: [\"NA\", 0],\n // 0x20: [\"ERR\", 0],\n 33: [\"ABS\", 1],\n 34: [\"TRUNC\", 1],\n 35: [\"SQRT\", 1],\n 36: [\"LOG\", 1],\n 37: [\"LN\", 1],\n 38: [\"PI\", 0],\n 39: [\"SIN\", 1],\n 40: [\"COS\", 1],\n 41: [\"TAN\", 1],\n 42: [\"ATAN2\", 2],\n 43: [\"ATAN\", 1],\n 44: [\"ASIN\", 1],\n 45: [\"ACOS\", 1],\n 46: [\"EXP\", 1],\n 47: [\"MOD\", 2],\n // 0x30\n 49: [\"ISNA\", 1],\n 50: [\"ISERR\", 1],\n 51: [\"FALSE\", 0],\n 52: [\"TRUE\", 0],\n 53: [\"RAND\", 0],\n 54: [\"DATE\", 3],\n // 0x37 NOW\n // 0x38 PMT\n // 0x39 PV\n // 0x3A FV\n // 0x3B IF\n // 0x3C DAY\n // 0x3D MONTH\n // 0x3E YEAR\n 63: [\"ROUND\", 2],\n 64: [\"TIME\", 3],\n // 0x41 HOUR\n // 0x42 MINUTE\n // 0x43 SECOND\n 68: [\"ISNUMBER\", 1],\n 69: [\"ISTEXT\", 1],\n 70: [\"LEN\", 1],\n 71: [\"VALUE\", 1],\n // 0x48: [\"FIXED\", ?? 1],\n 73: [\"MID\", 3],\n 74: [\"CHAR\", 1],\n // 0x4B\n // 0x4C FIND\n // 0x4D DATEVALUE\n // 0x4E TIMEVALUE\n // 0x4F CELL\n 80: [\"SUM\", 69],\n 81: [\"AVERAGEA\", 69],\n 82: [\"COUNTA\", 69],\n 83: [\"MINA\", 69],\n 84: [\"MAXA\", 69],\n // 0x55 VLOOKUP\n // 0x56 NPV\n // 0x57 VAR\n // 0x58 STD\n // 0x59 IRR\n // 0x5A HLOOKUP\n // 0x5B DSUM\n // 0x5C DAVERAGE\n // 0x5D DCOUNTA\n // 0x5E DMIN\n // 0x5F DMAX\n // 0x60 DVARP\n // 0x61 DSTDEVP\n // 0x62 INDEX\n // 0x63 COLS\n // 0x64 ROWS\n // 0x65 REPEAT\n 102: [\"UPPER\", 1],\n 103: [\"LOWER\", 1],\n // 0x68 LEFT\n // 0x69 RIGHT\n // 0x6A REPLACE\n 107: [\"PROPER\", 1],\n // 0x6C CELL\n 109: [\"TRIM\", 1],\n // 0x6E CLEAN\n 111: [\"T\", 1]\n // 0x70 V\n }, Z = [\n \"\",\n \"\",\n \"\",\n \"\",\n \"\",\n \"\",\n \"\",\n \"\",\n // eslint-disable-line no-mixed-spaces-and-tabs\n \"\",\n \"+\",\n \"-\",\n \"*\",\n \"/\",\n \"^\",\n \"=\",\n \"<>\",\n // eslint-disable-line no-mixed-spaces-and-tabs\n \"<=\",\n \">=\",\n \"<\",\n \">\",\n \"\",\n \"\",\n \"\",\n \"\",\n // eslint-disable-line no-mixed-spaces-and-tabs\n \"&\",\n \"\",\n \"\",\n \"\",\n \"\",\n \"\",\n \"\",\n \"\"\n // eslint-disable-line no-mixed-spaces-and-tabs\n ];\n function M(N, K) {\n zr(N, 0);\n for (var H = [], B = 0, fe = \"\", O = \"\", pe = \"\", Te = \"\"; N.l < N.length; ) {\n var ve = N[N.l++];\n switch (ve) {\n case 0:\n H.push(N.read_shift(8, \"f\"));\n break;\n case 1:\n O = P(K[0].c, N.read_shift(2), !0), fe = P(K[0].r, N.read_shift(2), !1), H.push(O + fe);\n break;\n case 2:\n {\n var Oe = P(K[0].c, N.read_shift(2), !0), Re = P(K[0].r, N.read_shift(2), !1);\n O = P(K[0].c, N.read_shift(2), !0), fe = P(K[0].r, N.read_shift(2), !1), H.push(Oe + Re + \":\" + O + fe);\n }\n break;\n case 3:\n if (N.l < N.length) {\n console.error(\"WK1 premature formula end\");\n return;\n }\n break;\n case 4:\n H.push(\"(\" + H.pop() + \")\");\n break;\n case 5:\n H.push(N.read_shift(2));\n break;\n case 6:\n {\n for (var Ve = \"\"; ve = N[N.l++]; ) Ve += String.fromCharCode(ve);\n H.push('\"' + Ve.replace(/\"/g, '\"\"') + '\"');\n }\n break;\n case 8:\n H.push(\"-\" + H.pop());\n break;\n case 23:\n H.push(\"+\" + H.pop());\n break;\n case 22:\n H.push(\"NOT(\" + H.pop() + \")\");\n break;\n case 20:\n case 21:\n Te = H.pop(), pe = H.pop(), H.push([\"AND\", \"OR\"][ve - 20] + \"(\" + pe + \",\" + Te + \")\");\n break;\n default:\n if (ve < 32 && Z[ve])\n Te = H.pop(), pe = H.pop(), H.push(pe + Z[ve] + Te);\n else if (V[ve]) {\n if (B = V[ve][1], B == 69 && (B = N[N.l++]), B > H.length) {\n console.error(\"WK1 bad formula parse 0x\" + ve.toString(16) + \":|\" + H.join(\"|\") + \"|\");\n return;\n }\n var ar = H.slice(-B);\n H.length -= B, H.push(V[ve][0] + \"(\" + ar.join(\",\") + \")\");\n } else return ve <= 7 ? console.error(\"WK1 invalid opcode \" + ve.toString(16)) : ve <= 24 ? console.error(\"WK1 unsupported op \" + ve.toString(16)) : ve <= 30 ? console.error(\"WK1 invalid opcode \" + ve.toString(16)) : ve <= 115 ? console.error(\"WK1 unsupported function opcode \" + ve.toString(16)) : console.error(\"WK1 unrecognized opcode \" + ve.toString(16));\n }\n }\n H.length == 1 ? K[1].f = \"\" + H[0] : console.error(\"WK1 bad formula parse |\" + H.join(\"|\") + \"|\");\n }\n function G(N) {\n var K = [{ c: 0, r: 0 }, { t: \"n\", v: 0 }, 0];\n return K[0].r = N.read_shift(2), K[3] = N[N.l++], K[0].c = N[N.l++], K;\n }\n function U(N, K) {\n var H = G(N);\n return H[1].t = \"s\", H[1].v = N.read_shift(K - 4, \"cstr\"), H;\n }\n function J(N, K, H, B) {\n var fe = Hr(6 + B.length);\n fe.write_shift(2, N), fe.write_shift(1, H), fe.write_shift(1, K), fe.write_shift(1, 39);\n for (var O = 0; O < B.length; ++O) {\n var pe = B.charCodeAt(O);\n fe.write_shift(1, pe >= 128 ? 95 : pe);\n }\n return fe.write_shift(1, 0), fe;\n }\n function z(N, K) {\n var H = G(N);\n H[1].v = N.read_shift(2);\n var B = H[1].v >> 1;\n if (H[1].v & 1)\n switch (B & 7) {\n case 0:\n B = (B >> 3) * 5e3;\n break;\n case 1:\n B = (B >> 3) * 500;\n break;\n case 2:\n B = (B >> 3) / 20;\n break;\n case 3:\n B = (B >> 3) / 200;\n break;\n case 4:\n B = (B >> 3) / 2e3;\n break;\n case 5:\n B = (B >> 3) / 2e4;\n break;\n case 6:\n B = (B >> 3) / 16;\n break;\n case 7:\n B = (B >> 3) / 64;\n break;\n }\n return H[1].v = B, H;\n }\n function re(N, K) {\n var H = G(N), B = N.read_shift(4), fe = N.read_shift(4), O = N.read_shift(2);\n if (O == 65535)\n return B === 0 && fe === 3221225472 ? (H[1].t = \"e\", H[1].v = 15) : B === 0 && fe === 3489660928 ? (H[1].t = \"e\", H[1].v = 42) : H[1].v = 0, H;\n var pe = O & 32768;\n return O = (O & 32767) - 16446, H[1].v = (1 - pe * 2) * (fe * Math.pow(2, O + 32) + B * Math.pow(2, O)), H;\n }\n function ne(N, K, H, B) {\n var fe = Hr(14);\n if (fe.write_shift(2, N), fe.write_shift(1, H), fe.write_shift(1, K), B == 0)\n return fe.write_shift(4, 0), fe.write_shift(4, 0), fe.write_shift(2, 65535), fe;\n var O = 0, pe = 0, Te = 0, ve = 0;\n return B < 0 && (O = 1, B = -B), pe = Math.log2(B) | 0, B /= Math.pow(2, pe - 31), ve = B >>> 0, (ve & 2147483648) == 0 && (B /= 2, ++pe, ve = B >>> 0), B -= ve, ve |= 2147483648, ve >>>= 0, B *= Math.pow(2, 32), Te = B >>> 0, fe.write_shift(4, Te), fe.write_shift(4, ve), pe += 16383 + (O ? 32768 : 0), fe.write_shift(2, pe), fe;\n }\n function Ae(N, K) {\n var H = re(N);\n return N.l += K - 14, H;\n }\n function he(N, K) {\n var H = G(N), B = N.read_shift(4);\n return H[1].v = B >> 6, H;\n }\n function De(N, K) {\n var H = G(N), B = N.read_shift(8, \"f\");\n return H[1].v = B, H;\n }\n function le(N, K) {\n var H = De(N);\n return N.l += K - 12, H;\n }\n function Ee(N, K) {\n return N[N.l + K - 1] == 0 ? N.read_shift(K, \"cstr\") : \"\";\n }\n function be(N, K) {\n var H = N[N.l++];\n H > K - 1 && (H = K - 1);\n for (var B = \"\"; B.length < H; ) B += String.fromCharCode(N[N.l++]);\n return B;\n }\n function ae(N, K, H) {\n if (!(!H.qpro || K < 21)) {\n var B = N.read_shift(1);\n N.l += 17, N.l += 1, N.l += 2;\n var fe = N.read_shift(K - 21, \"cstr\");\n return [B, fe];\n }\n }\n function Pe(N, K) {\n for (var H = {}, B = N.l + K; N.l < B; ) {\n var fe = N.read_shift(2);\n if (fe == 14e3) {\n for (H[fe] = [0, \"\"], H[fe][0] = N.read_shift(2); N[N.l]; )\n H[fe][1] += String.fromCharCode(N[N.l]), N.l++;\n N.l++;\n }\n }\n return H;\n }\n function Ge(N, K) {\n var H = Hr(5 + N.length);\n H.write_shift(2, 14e3), H.write_shift(2, K);\n for (var B = 0; B < N.length; ++B) {\n var fe = N.charCodeAt(B);\n H[H.l++] = fe > 127 ? 95 : fe;\n }\n return H[H.l++] = 0, H;\n }\n var Le = {\n 0: { n: \"BOF\", f: Rr },\n 1: { n: \"EOF\" },\n 2: { n: \"CALCMODE\" },\n 3: { n: \"CALCORDER\" },\n 4: { n: \"SPLIT\" },\n 5: { n: \"SYNC\" },\n 6: { n: \"RANGE\", f: l },\n 7: { n: \"WINDOW1\" },\n 8: { n: \"COLW1\" },\n 9: { n: \"WINTWO\" },\n 10: { n: \"COLW2\" },\n 11: { n: \"NAME\" },\n 12: { n: \"BLANK\" },\n 13: { n: \"INTEGER\", f: A },\n 14: { n: \"NUMBER\", f: p },\n 15: { n: \"LABEL\", f: _ },\n 16: { n: \"FORMULA\", f: w },\n 24: { n: \"TABLE\" },\n 25: { n: \"ORANGE\" },\n 26: { n: \"PRANGE\" },\n 27: { n: \"SRANGE\" },\n 28: { n: \"FRANGE\" },\n 29: { n: \"KRANGE1\" },\n 32: { n: \"HRANGE\" },\n 35: { n: \"KRANGE2\" },\n 36: { n: \"PROTEC\" },\n 37: { n: \"FOOTER\" },\n 38: { n: \"HEADER\" },\n 39: { n: \"SETUP\" },\n 40: { n: \"MARGINS\" },\n 41: { n: \"LABELFMT\" },\n 42: { n: \"TITLES\" },\n 43: { n: \"SHEETJS\" },\n 45: { n: \"GRAPH\" },\n 46: { n: \"NGRAPH\" },\n 47: { n: \"CALCCOUNT\" },\n 48: { n: \"UNFORMATTED\" },\n 49: { n: \"CURSORW12\" },\n 50: { n: \"WINDOW\" },\n 51: { n: \"STRING\", f: T },\n 55: { n: \"PASSWORD\" },\n 56: { n: \"LOCKED\" },\n 60: { n: \"QUERY\" },\n 61: { n: \"QUERYNAME\" },\n 62: { n: \"PRINT\" },\n 63: { n: \"PRINTNAME\" },\n 64: { n: \"GRAPH2\" },\n 65: { n: \"GRAPHNAME\" },\n 66: { n: \"ZOOM\" },\n 67: { n: \"SYMSPLIT\" },\n 68: { n: \"NSROWS\" },\n 69: { n: \"NSCOLS\" },\n 70: { n: \"RULER\" },\n 71: { n: \"NNAME\" },\n 72: { n: \"ACOMM\" },\n 73: { n: \"AMACRO\" },\n 74: { n: \"PARSE\" },\n // 0x0064\n 102: { n: \"PRANGES??\" },\n 103: { n: \"RRANGES??\" },\n 104: { n: \"FNAME??\" },\n 105: { n: \"MRANGES??\" },\n // 0x0096\n // 0x0099\n // 0x009A\n // 0x009B\n // 0x009C\n // 0x00C0\n // 0x00C7\n // 0x00C9\n 204: { n: \"SHEETNAMECS\", f: Ee },\n // 0x00CD\n 222: { n: \"SHEETNAMELP\", f: be },\n 255: { n: \"BOF\", f: Rr },\n 21506: { n: \"WKSNF\", f: Rr },\n 65535: { n: \"\" }\n }, Se = {\n 0: { n: \"BOF\" },\n 1: { n: \"EOF\" },\n 2: { n: \"PASSWORD\" },\n 3: { n: \"CALCSET\" },\n 4: { n: \"WINDOWSET\" },\n 5: { n: \"SHEETCELLPTR\" },\n 6: { n: \"SHEETLAYOUT\" },\n 7: { n: \"COLUMNWIDTH\" },\n 8: { n: \"HIDDENCOLUMN\" },\n 9: { n: \"USERRANGE\" },\n 10: { n: \"SYSTEMRANGE\" },\n 11: { n: \"ZEROFORCE\" },\n 12: { n: \"SORTKEYDIR\" },\n 13: { n: \"FILESEAL\" },\n 14: { n: \"DATAFILLNUMS\" },\n 15: { n: \"PRINTMAIN\" },\n 16: { n: \"PRINTSTRING\" },\n 17: { n: \"GRAPHMAIN\" },\n 18: { n: \"GRAPHSTRING\" },\n 19: { n: \"??\" },\n 20: { n: \"ERRCELL\" },\n 21: { n: \"NACELL\" },\n 22: { n: \"LABEL16\", f: U },\n 23: { n: \"NUMBER17\", f: re },\n 24: { n: \"NUMBER18\", f: z },\n 25: { n: \"FORMULA19\", f: Ae },\n 26: { n: \"FORMULA1A\" },\n 27: { n: \"XFORMAT\", f: Pe },\n 28: { n: \"DTLABELMISC\" },\n 29: { n: \"DTLABELCELL\" },\n 30: { n: \"GRAPHWINDOW\" },\n 31: { n: \"CPA\" },\n 32: { n: \"LPLAUTO\" },\n 33: { n: \"QUERY\" },\n 34: { n: \"HIDDENSHEET\" },\n 35: { n: \"??\" },\n 37: { n: \"NUMBER25\", f: he },\n 38: { n: \"??\" },\n 39: { n: \"NUMBER27\", f: De },\n 40: { n: \"FORMULA28\", f: le },\n 142: { n: \"??\" },\n 147: { n: \"??\" },\n 150: { n: \"??\" },\n 151: { n: \"??\" },\n 152: { n: \"??\" },\n 153: { n: \"??\" },\n 154: { n: \"??\" },\n 155: { n: \"??\" },\n 156: { n: \"??\" },\n 163: { n: \"??\" },\n 174: { n: \"??\" },\n 175: { n: \"??\" },\n 176: { n: \"??\" },\n 177: { n: \"??\" },\n 184: { n: \"??\" },\n 185: { n: \"??\" },\n 186: { n: \"??\" },\n 187: { n: \"??\" },\n 188: { n: \"??\" },\n 195: { n: \"??\" },\n 201: { n: \"??\" },\n 204: { n: \"SHEETNAMECS\", f: Ee },\n 205: { n: \"??\" },\n 206: { n: \"??\" },\n 207: { n: \"??\" },\n 208: { n: \"??\" },\n 256: { n: \"??\" },\n 259: { n: \"??\" },\n 260: { n: \"??\" },\n 261: { n: \"??\" },\n 262: { n: \"??\" },\n 263: { n: \"??\" },\n 265: { n: \"??\" },\n 266: { n: \"??\" },\n 267: { n: \"??\" },\n 268: { n: \"??\" },\n 270: { n: \"??\" },\n 271: { n: \"??\" },\n 384: { n: \"??\" },\n 389: { n: \"??\" },\n 390: { n: \"??\" },\n 393: { n: \"??\" },\n 396: { n: \"??\" },\n 512: { n: \"??\" },\n 514: { n: \"??\" },\n 513: { n: \"??\" },\n 516: { n: \"??\" },\n 517: { n: \"??\" },\n 640: { n: \"??\" },\n 641: { n: \"??\" },\n 642: { n: \"??\" },\n 643: { n: \"??\" },\n 644: { n: \"??\" },\n 645: { n: \"??\" },\n 646: { n: \"??\" },\n 647: { n: \"??\" },\n 648: { n: \"??\" },\n 658: { n: \"??\" },\n 659: { n: \"??\" },\n 660: { n: \"??\" },\n 661: { n: \"??\" },\n 662: { n: \"??\" },\n 665: { n: \"??\" },\n 666: { n: \"??\" },\n 768: { n: \"??\" },\n 772: { n: \"??\" },\n 1537: { n: \"SHEETINFOQP\", f: ae },\n 1600: { n: \"??\" },\n 1602: { n: \"??\" },\n 1793: { n: \"??\" },\n 1794: { n: \"??\" },\n 1795: { n: \"??\" },\n 1796: { n: \"??\" },\n 1920: { n: \"??\" },\n 2048: { n: \"??\" },\n 2049: { n: \"??\" },\n 2052: { n: \"??\" },\n 2688: { n: \"??\" },\n 10998: { n: \"??\" },\n 12849: { n: \"??\" },\n 28233: { n: \"??\" },\n 28484: { n: \"??\" },\n 65535: { n: \"\" }\n }, Me = {\n 5: \"dd-mmm-yy\",\n 6: \"dd-mmm\",\n 7: \"mmm-yy\",\n 8: \"mm/dd/yy\",\n // Long Date Intl\n 10: \"hh:mm:ss AM/PM\",\n 11: \"hh:mm AM/PM\",\n 14: \"dd-mmm-yyyy\",\n 15: \"mmm-yyyy\",\n /* It is suspected that the the low nybble specifies decimal places */\n 34: \"0.00\",\n 50: \"0.00;[Red]0.00\",\n 66: \"0.00;(0.00)\",\n 82: \"0.00;[Red](0.00)\",\n 162: '\"$\"#,##0.00;\\\\(\"$\"#,##0.00\\\\)',\n 288: \"0%\",\n 304: \"0E+00\",\n 320: \"# ?/?\"\n };\n function Be(N) {\n var K = N.read_shift(2), H = N.read_shift(1);\n if (H != 0) throw \"unsupported QPW string type \" + H.toString(16);\n return N.read_shift(K, \"sbcs-cont\");\n }\n function Ke(N, K) {\n zr(N, 0);\n var H = K || {}, B = {};\n H.dense && (B[\"!data\"] = []);\n var fe = [], O = \"\", pe = { s: { r: -1, c: -1 }, e: { r: -1, c: -1 } }, Te = 0, ve = 0, Oe = 0, Re = 0, Ve = { SheetNames: [], Sheets: {} }, ar = [];\n e: for (; N.l < N.length; ) {\n var qe = N.read_shift(2), Er = N.read_shift(2), Ce = N.slice(N.l, N.l + Er);\n switch (zr(Ce, 0), qe) {\n case 1:\n if (Ce.read_shift(4) != 962023505) throw \"Bad QPW9 BOF!\";\n break;\n case 2:\n break e;\n case 8:\n break;\n // TODO: this is tied to custom number formats\n case 10:\n for (var er = Ce.read_shift(4), ge = (Ce.length - Ce.l) / er | 0, xt = 0; xt < er; ++xt) {\n var Nr = Ce.l + ge, dr = {};\n Ce.l += 2, dr.numFmtId = Ce.read_shift(2), Me[dr.numFmtId] && (dr.z = Me[dr.numFmtId]), Ce.l = Nr, ar.push(dr);\n }\n break;\n /* TODO: The behavior here should be consistent with Numbers: QP Notebook ~ .TN.SheetArchive, QP Sheet ~ .TST.TableModelArchive */\n case 1025:\n break;\n case 1026:\n break;\n case 1031:\n for (Ce.l += 12; Ce.l < Ce.length; )\n Te = Ce.read_shift(2), ve = Ce.read_shift(1), fe.push(Ce.read_shift(Te, \"cstr\"));\n break;\n case 1032:\n break;\n case 1537:\n {\n var dt = Ce.read_shift(2);\n B = {}, H.dense && (B[\"!data\"] = []), pe.s.c = Ce.read_shift(2), pe.e.c = Ce.read_shift(2), pe.s.r = Ce.read_shift(4), pe.e.r = Ce.read_shift(4), Ce.l += 4, Ce.l + 2 < Ce.length && (Te = Ce.read_shift(2), ve = Ce.read_shift(1), O = Te == 0 ? \"\" : Ce.read_shift(Te, \"cstr\")), O || (O = xr(dt));\n }\n break;\n case 1538:\n {\n if (pe.s.c > 255 || pe.s.r > 999999) break;\n pe.e.c < pe.s.c && (pe.e.c = pe.s.c), pe.e.r < pe.s.r && (pe.e.r = pe.s.r), B[\"!ref\"] = sr(pe), K0(Ve, B, O);\n }\n break;\n case 2561:\n Oe = Ce.read_shift(2), pe.e.c < Oe && (pe.e.c = Oe), pe.s.c > Oe && (pe.s.c = Oe), Re = Ce.read_shift(4), pe.s.r > Re && (pe.s.r = Re), Re = Ce.read_shift(4), pe.e.r < Re && (pe.e.r = Re);\n break;\n case 3073:\n {\n Re = Ce.read_shift(4), Te = Ce.read_shift(4), pe.s.r > Re && (pe.s.r = Re), pe.e.r < Re + Te - 1 && (pe.e.r = Re + Te - 1);\n for (var Yr = xr(Oe); Ce.l < Ce.length; ) {\n var we = { t: \"z\" }, fr = Ce.read_shift(1), Cr = -1;\n fr & 128 && (Cr = Ce.read_shift(2));\n var yr = fr & 64 ? Ce.read_shift(2) - 1 : 0;\n switch (fr & 31) {\n case 0:\n break;\n case 1:\n break;\n case 2:\n we = { t: \"n\", v: Ce.read_shift(2) };\n break;\n case 3:\n we = { t: \"n\", v: Ce.read_shift(2, \"i\") };\n break;\n case 4:\n we = { t: \"n\", v: vs(Ce) };\n break;\n case 5:\n we = { t: \"n\", v: Ce.read_shift(8, \"f\") };\n break;\n case 7:\n we = { t: \"s\", v: fe[ve = Ce.read_shift(4) - 1] };\n break;\n case 8:\n we = { t: \"n\", v: Ce.read_shift(8, \"f\") }, Ce.l += 2, Ce.l += 4, isNaN(we.v) && (we = { t: \"e\", v: 15 });\n break;\n default:\n throw \"Unrecognized QPW cell type \" + (fr & 31);\n }\n Cr != -1 && (ar[Cr - 1] || {}).z && (we.z = ar[Cr - 1].z);\n var yt = 0;\n if (fr & 32) switch (fr & 31) {\n case 2:\n yt = Ce.read_shift(2);\n break;\n case 3:\n yt = Ce.read_shift(2, \"i\");\n break;\n case 7:\n yt = Ce.read_shift(2);\n break;\n default:\n throw \"Unsupported delta for QPW cell type \" + (fr & 31);\n }\n if (!(!H.sheetStubs && we.t == \"z\")) {\n var ta = Gr(we);\n we.t == \"n\" && we.z && la(we.z) && H.cellDates && (ta.v = Ja(we.v), ta.t = typeof ta.v == \"number\" ? \"n\" : \"d\"), B[\"!data\"] != null ? (B[\"!data\"][Re] || (B[\"!data\"][Re] = []), B[\"!data\"][Re][Oe] = ta) : B[Yr + _r(Re)] = ta;\n }\n for (++Re, --Te; yr-- > 0 && Te >= 0; ) {\n if (fr & 32) switch (fr & 31) {\n case 2:\n we = { t: \"n\", v: we.v + yt & 65535 };\n break;\n case 3:\n we = { t: \"n\", v: we.v + yt & 65535 }, we.v > 32767 && (we.v -= 65536);\n break;\n case 7:\n we = { t: \"s\", v: fe[ve = ve + yt >>> 0] };\n break;\n default:\n throw \"Cannot apply delta for QPW cell type \" + (fr & 31);\n }\n else switch (fr & 31) {\n case 1:\n we = { t: \"z\" };\n break;\n case 2:\n we = { t: \"n\", v: Ce.read_shift(2) };\n break;\n case 7:\n we = { t: \"s\", v: fe[ve = Ce.read_shift(4) - 1] };\n break;\n default:\n throw \"Cannot apply repeat for QPW cell type \" + (fr & 31);\n }\n !H.sheetStubs && we.t == \"z\" || (B[\"!data\"] != null ? (B[\"!data\"][Re] || (B[\"!data\"][Re] = []), B[\"!data\"][Re][Oe] = we) : B[Yr + _r(Re)] = we), ++Re, --Te;\n }\n }\n }\n break;\n case 3074:\n {\n Oe = Ce.read_shift(2), Re = Ce.read_shift(4);\n var Pa = Be(Ce);\n B[\"!data\"] != null ? (B[\"!data\"][Re] || (B[\"!data\"][Re] = []), B[\"!data\"][Re][Oe] = { t: \"s\", v: Pa }) : B[xr(Oe) + _r(Re)] = { t: \"s\", v: Pa };\n }\n break;\n }\n N.l += Er;\n }\n return Ve;\n }\n return {\n sheet_to_wk1: i,\n book_to_wk3: f,\n to_workbook: t\n };\n}();\nfunction AT(e) {\n var t = {}, r = e.match(nt), n = 0, i = !1;\n if (r) for (; n != r.length; ++n) {\n var f = Ie(r[n]);\n switch (f[0].replace(/<\\w*:/g, \"<\")) {\n /* 18.8.12 condense CT_BooleanProperty */\n /* ** not required . */\n case \"<condense\":\n break;\n /* 18.8.17 extend CT_BooleanProperty */\n /* ** not required . */\n case \"<extend\":\n break;\n /* 18.8.36 shadow CT_BooleanProperty */\n /* ** not required . */\n case \"<shadow\":\n if (!f.val) break;\n /* falls through */\n case \"<shadow>\":\n case \"<shadow/>\":\n t.shadow = 1;\n break;\n case \"</shadow>\":\n break;\n /* 18.4.1 charset CT_IntProperty TODO */\n case \"<charset\":\n if (f.val == \"1\") break;\n t.cp = ic[parseInt(f.val, 10)];\n break;\n /* 18.4.2 outline CT_BooleanProperty TODO */\n case \"<outline\":\n if (!f.val) break;\n /* falls through */\n case \"<outline>\":\n case \"<outline/>\":\n t.outline = 1;\n break;\n case \"</outline>\":\n break;\n /* 18.4.5 rFont CT_FontName */\n case \"<rFont\":\n t.name = f.val;\n break;\n /* 18.4.11 sz CT_FontSize */\n case \"<sz\":\n t.sz = f.val;\n break;\n /* 18.4.10 strike CT_BooleanProperty */\n case \"<strike\":\n if (!f.val) break;\n /* falls through */\n case \"<strike>\":\n case \"<strike/>\":\n t.strike = 1;\n break;\n case \"</strike>\":\n break;\n /* 18.4.13 u CT_UnderlineProperty */\n case \"<u\":\n if (!f.val) break;\n switch (f.val) {\n case \"double\":\n t.uval = \"double\";\n break;\n case \"singleAccounting\":\n t.uval = \"single-accounting\";\n break;\n case \"doubleAccounting\":\n t.uval = \"double-accounting\";\n break;\n }\n /* falls through */\n case \"<u>\":\n case \"<u/>\":\n t.u = 1;\n break;\n case \"</u>\":\n break;\n /* 18.8.2 b */\n case \"<b\":\n if (f.val == \"0\") break;\n /* falls through */\n case \"<b>\":\n case \"<b/>\":\n t.b = 1;\n break;\n case \"</b>\":\n break;\n /* 18.8.26 i */\n case \"<i\":\n if (f.val == \"0\") break;\n /* falls through */\n case \"<i>\":\n case \"<i/>\":\n t.i = 1;\n break;\n case \"</i>\":\n break;\n /* 18.3.1.15 color CT_Color TODO: tint, theme, auto, indexed */\n case \"<color\":\n f.rgb && (t.color = f.rgb.slice(2, 8));\n break;\n case \"<color>\":\n case \"<color/>\":\n case \"</color>\":\n break;\n /* 18.8.18 family ST_FontFamily */\n case \"<family\":\n t.family = f.val;\n break;\n case \"<family>\":\n case \"<family/>\":\n case \"</family>\":\n break;\n /* 18.4.14 vertAlign CT_VerticalAlignFontProperty TODO */\n case \"<vertAlign\":\n t.valign = f.val;\n break;\n case \"<vertAlign>\":\n case \"<vertAlign/>\":\n case \"</vertAlign>\":\n break;\n /* 18.8.35 scheme CT_FontScheme TODO */\n case \"<scheme\":\n break;\n case \"<scheme>\":\n case \"<scheme/>\":\n case \"</scheme>\":\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n break;\n case \"<ext\":\n i = !0;\n break;\n case \"</ext>\":\n i = !1;\n break;\n default:\n if (f[0].charCodeAt(1) !== 47 && !i) throw new Error(\"Unrecognized rich format \" + f[0]);\n }\n }\n return t;\n}\nvar FT = /* @__PURE__ */ function() {\n function e(n) {\n var i = Qr(n, \"t\");\n if (!i) return { t: \"s\", v: \"\" };\n var f = { t: \"s\", v: ir(i[1]) }, c = Qr(n, \"rPr\");\n return c && (f.s = AT(c[1])), f;\n }\n var t = /<(?:\\w+:)?r>/g, r = /<\\/(?:\\w+:)?r>/;\n return function(i) {\n return i.replace(t, \"\").split(r).map(e).filter(function(f) {\n return f.v;\n });\n };\n}(), ST = /* @__PURE__ */ function() {\n var t = /(\\r\\n|\\n)/g;\n function r(i, f, c) {\n var u = [];\n i.u && u.push(\"text-decoration: underline;\"), i.uval && u.push(\"text-underline-style:\" + i.uval + \";\"), i.sz && u.push(\"font-size:\" + i.sz + \"pt;\"), i.outline && u.push(\"text-effect: outline;\"), i.shadow && u.push(\"text-shadow: auto;\"), f.push('<span style=\"' + u.join(\"\") + '\">'), i.b && (f.push(\"<b>\"), c.push(\"</b>\")), i.i && (f.push(\"<i>\"), c.push(\"</i>\")), i.strike && (f.push(\"<s>\"), c.push(\"</s>\"));\n var l = i.valign || \"\";\n return l == \"superscript\" || l == \"super\" ? l = \"sup\" : l == \"subscript\" && (l = \"sub\"), l != \"\" && (f.push(\"<\" + l + \">\"), c.push(\"</\" + l + \">\")), c.push(\"</span>\"), i;\n }\n function n(i) {\n var f = [[], i.v, []];\n return i.v ? (i.s && r(i.s, f[0], f[2]), f[0].join(\"\") + f[1].replace(t, \"<br/>\") + f[2].join(\"\")) : \"\";\n }\n return function(f) {\n return f.map(n).join(\"\");\n };\n}(), CT = /<(?:\\w+:)?t\\b[^<>]*>([^<]*)<\\/(?:\\w+:)?t>/g, yT = /<(?:\\w+:)?r\\b[^<>]*>/;\nfunction Ec(e, t) {\n var r = t ? t.cellHTML : !0, n = {};\n return e ? (e.match(/^\\s*<(?:\\w+:)?t[^>]*>/) ? (n.t = ir(Tr(e.slice(e.indexOf(\">\") + 1).split(/<\\/(?:\\w+:)?t>/)[0] || \"\"), !0), n.r = Tr(e), r && (n.h = w0(n.t))) : (\n /*y = */\n e.match(yT) && (n.r = Tr(e), n.t = ir(Tr((Pm(e, \"rPh\").match(CT) || []).join(\"\").replace(nt, \"\")), !0), r && (n.h = ST(FT(n.r))))\n ), n) : { t: \"\" };\n}\nvar IT = /<(?:\\w+:)?(?:si|sstItem)>/g, OT = /<\\/(?:\\w+:)?(?:si|sstItem)>/;\nfunction DT(e, t) {\n var r = [], n = \"\";\n if (!e) return r;\n var i = Qr(e, \"sst\");\n if (i) {\n n = i[1].replace(IT, \"\").split(OT);\n for (var f = 0; f != n.length; ++f) {\n var c = Ec(n[f].trim(), t);\n c != null && (r[r.length] = c);\n }\n i = Ie(i[0].slice(0, i[0].indexOf(\">\"))), r.Count = i.count, r.Unique = i.uniqueCount;\n }\n return r;\n}\nfunction RT(e) {\n return [e.read_shift(4), e.read_shift(4)];\n}\nfunction NT(e, t) {\n var r = [], n = !1;\n return La(e, function(f, c, u) {\n switch (u) {\n case 159:\n r.Count = f[0], r.Unique = f[1];\n break;\n case 19:\n r.push(f);\n break;\n case 160:\n return !0;\n case 35:\n n = !0;\n break;\n case 36:\n n = !1;\n break;\n default:\n if (c.T, !n || t.WTF) throw new Error(\"Unexpected record 0x\" + u.toString(16));\n }\n }), r;\n}\nfunction j1(e) {\n for (var t = [], r = e.split(\"\"), n = 0; n < r.length; ++n) t[n] = r[n].charCodeAt(0);\n return t;\n}\nfunction Ra(e, t) {\n var r = {};\n return r.Major = e.read_shift(2), r.Minor = e.read_shift(2), t >= 4 && (e.l += t - 4), r;\n}\nfunction LT(e) {\n var t = {};\n return t.id = e.read_shift(0, \"lpp4\"), t.R = Ra(e, 4), t.U = Ra(e, 4), t.W = Ra(e, 4), t;\n}\nfunction PT(e) {\n for (var t = e.read_shift(4), r = e.l + t - 4, n = {}, i = e.read_shift(4), f = []; i-- > 0; ) f.push({ t: e.read_shift(4), v: e.read_shift(0, \"lpp4\") });\n if (n.name = e.read_shift(0, \"lpp4\"), n.comps = f, e.l != r) throw new Error(\"Bad DataSpaceMapEntry: \" + e.l + \" != \" + r);\n return n;\n}\nfunction bT(e) {\n var t = [];\n e.l += 4;\n for (var r = e.read_shift(4); r-- > 0; ) t.push(PT(e));\n return t;\n}\nfunction BT(e) {\n var t = [];\n e.l += 4;\n for (var r = e.read_shift(4); r-- > 0; ) t.push(e.read_shift(0, \"lpp4\"));\n return t;\n}\nfunction MT(e) {\n var t = {};\n return e.read_shift(4), e.l += 4, t.id = e.read_shift(0, \"lpp4\"), t.name = e.read_shift(0, \"lpp4\"), t.R = Ra(e, 4), t.U = Ra(e, 4), t.W = Ra(e, 4), t;\n}\nfunction UT(e) {\n var t = MT(e);\n if (t.ename = e.read_shift(0, \"8lpp4\"), t.blksz = e.read_shift(4), t.cmode = e.read_shift(4), e.read_shift(4) != 4) throw new Error(\"Bad !Primary record\");\n return t;\n}\nfunction eh(e, t) {\n var r = e.l + t, n = {};\n n.Flags = e.read_shift(4) & 63, e.l += 4, n.AlgID = e.read_shift(4);\n var i = !1;\n switch (n.AlgID) {\n case 26126:\n case 26127:\n case 26128:\n i = n.Flags == 36;\n break;\n case 26625:\n i = n.Flags == 4;\n break;\n case 0:\n i = n.Flags == 16 || n.Flags == 4 || n.Flags == 36;\n break;\n default:\n throw \"Unrecognized encryption algorithm: \" + n.AlgID;\n }\n if (!i) throw new Error(\"Encryption Flags/AlgID mismatch\");\n return n.AlgIDHash = e.read_shift(4), n.KeySize = e.read_shift(4), n.ProviderType = e.read_shift(4), e.l += 8, n.CSPName = e.read_shift(r - e.l >> 1, \"utf16le\"), e.l = r, n;\n}\nfunction rh(e, t) {\n var r = {}, n = e.l + t;\n return e.l += 4, r.Salt = e.slice(e.l, e.l + 16), e.l += 16, r.Verifier = e.slice(e.l, e.l + 16), e.l += 16, e.read_shift(4), r.VerifierHash = e.slice(e.l, n), e.l = n, r;\n}\nfunction WT(e) {\n var t = Ra(e);\n switch (t.Minor) {\n case 2:\n return [t.Minor, HT(e)];\n case 3:\n return [t.Minor, GT()];\n case 4:\n return [t.Minor, VT(e)];\n }\n throw new Error(\"ECMA-376 Encrypted file unrecognized Version: \" + t.Minor);\n}\nfunction HT(e) {\n var t = e.read_shift(4);\n if ((t & 63) != 36) throw new Error(\"EncryptionInfo mismatch\");\n var r = e.read_shift(4), n = eh(e, r), i = rh(e, e.length - e.l);\n return { t: \"Std\", h: n, v: i };\n}\nfunction GT() {\n throw new Error(\"File is password-protected: ECMA-376 Extensible\");\n}\nfunction VT(e) {\n var t = [\"saltSize\", \"blockSize\", \"keyBits\", \"hashSize\", \"cipherAlgorithm\", \"cipherChaining\", \"hashAlgorithm\", \"saltValue\"];\n e.l += 4;\n var r = e.read_shift(e.length - e.l, \"utf8\"), n = {};\n return r.replace(nt, function(f) {\n var c = Ie(f);\n switch (ea(c[0])) {\n case \"<?xml\":\n break;\n case \"<encryption\":\n case \"</encryption>\":\n break;\n case \"<keyData\":\n t.forEach(function(u) {\n n[u] = c[u];\n });\n break;\n case \"<dataIntegrity\":\n n.encryptedHmacKey = c.encryptedHmacKey, n.encryptedHmacValue = c.encryptedHmacValue;\n break;\n case \"<keyEncryptors>\":\n case \"<keyEncryptors\":\n n.encs = [];\n break;\n case \"</keyEncryptors>\":\n break;\n case \"<keyEncryptor\":\n n.uri = c.uri;\n break;\n case \"</keyEncryptor>\":\n break;\n case \"<encryptedKey\":\n n.encs.push(c);\n break;\n default:\n throw c[0];\n }\n }), n;\n}\nfunction XT(e, t) {\n var r = {}, n = r.EncryptionVersionInfo = Ra(e, 4);\n if (t -= 4, n.Minor != 2) throw new Error(\"unrecognized minor version code: \" + n.Minor);\n if (n.Major > 4 || n.Major < 2) throw new Error(\"unrecognized major version code: \" + n.Major);\n r.Flags = e.read_shift(4), t -= 4;\n var i = e.read_shift(4);\n return t -= 4, r.EncryptionHeader = eh(e, i), t -= i, r.EncryptionVerifier = rh(e, t), r;\n}\nfunction $T(e) {\n var t = {}, r = t.EncryptionVersionInfo = Ra(e, 4);\n if (r.Major != 1 || r.Minor != 1) throw \"unrecognized version code \" + r.Major + \" : \" + r.Minor;\n return t.Salt = e.read_shift(16), t.EncryptedVerifier = e.read_shift(16), t.EncryptedVerifierHash = e.read_shift(16), t;\n}\nfunction zT(e) {\n var t = 0, r, n = j1(e), i = n.length + 1, f, c, u, l, h;\n for (r = qa(i), r[0] = n.length, f = 1; f != i; ++f) r[f] = n[f - 1];\n for (f = i - 1; f >= 0; --f)\n c = r[f], u = (t & 16384) === 0 ? 0 : 1, l = t << 1 & 32767, h = u | l, t = h ^ c;\n return t ^ 52811;\n}\nvar th = /* @__PURE__ */ function() {\n var e = [187, 255, 255, 186, 255, 255, 185, 128, 0, 190, 15, 0, 191, 15, 0], t = [57840, 7439, 52380, 33984, 4364, 3600, 61902, 12606, 6258, 57657, 54287, 34041, 10252, 43370, 20163], r = [44796, 19929, 39858, 10053, 20106, 40212, 10761, 31585, 63170, 64933, 60267, 50935, 40399, 11199, 17763, 35526, 1453, 2906, 5812, 11624, 23248, 885, 1770, 3540, 7080, 14160, 28320, 56640, 55369, 41139, 20807, 41614, 21821, 43642, 17621, 28485, 56970, 44341, 19019, 38038, 14605, 29210, 60195, 50791, 40175, 10751, 21502, 43004, 24537, 18387, 36774, 3949, 7898, 15796, 31592, 63184, 47201, 24803, 49606, 37805, 14203, 28406, 56812, 17824, 35648, 1697, 3394, 6788, 13576, 27152, 43601, 17539, 35078, 557, 1114, 2228, 4456, 30388, 60776, 51953, 34243, 7079, 14158, 28316, 14128, 28256, 56512, 43425, 17251, 34502, 7597, 13105, 26210, 52420, 35241, 883, 1766, 3532, 4129, 8258, 16516, 33032, 4657, 9314, 18628], n = function(c) {\n return (c / 2 | c * 128) & 255;\n }, i = function(c, u) {\n return n(c ^ u);\n }, f = function(c) {\n for (var u = t[c.length - 1], l = 104, h = c.length - 1; h >= 0; --h)\n for (var x = c[h], m = 0; m != 7; ++m)\n x & 64 && (u ^= r[l]), x *= 2, --l;\n return u;\n };\n return function(c) {\n for (var u = j1(c), l = f(u), h = u.length, x = qa(16), m = 0; m != 16; ++m) x[m] = 0;\n var _, v, T;\n for ((h & 1) === 1 && (_ = l >> 8, x[h] = i(e[0], _), --h, _ = l & 255, v = u[u.length - 1], x[h] = i(v, _)); h > 0; )\n --h, _ = l >> 8, x[h] = i(u[h], _), --h, _ = l & 255, x[h] = i(u[h], _);\n for (h = 15, T = 15 - u.length; T > 0; )\n _ = l >> 8, x[h] = i(e[T], _), --h, --T, _ = l & 255, x[h] = i(u[h], _), --h, --T;\n return x;\n };\n}(), KT = function(e, t, r, n, i) {\n i || (i = t), n || (n = th(e));\n var f, c;\n for (f = 0; f != t.length; ++f)\n c = t[f], c ^= n[r], c = (c >> 5 | c << 3) & 255, i[f] = c, ++r;\n return [i, r, n];\n}, YT = function(e) {\n var t = 0, r = th(e);\n return function(n) {\n var i = KT(\"\", n, t, r);\n return t = i[1], i[0];\n };\n};\nfunction ZT(e, t, r, n) {\n var i = { key: Rr(e), verificationBytes: Rr(e) };\n return r.password && (i.verifier = zT(r.password)), n.valid = i.verificationBytes === i.verifier, n.valid && (n.insitu = YT(r.password)), i;\n}\nfunction JT(e, t, r) {\n var n = r || {};\n return n.Info = e.read_shift(2), e.l -= 2, n.Info === 1 ? n.Data = $T(e) : n.Data = XT(e, t), n;\n}\nfunction qT(e, t, r) {\n var n = { Type: r.biff >= 8 ? e.read_shift(2) : 0 };\n return n.Type ? JT(e, t - 2, n) : ZT(e, r.biff >= 8 ? t : t - 2, r, n), n;\n}\nfunction QT(e, t) {\n switch (t.type) {\n case \"base64\":\n return Yi(Ut(e), t);\n case \"binary\":\n return Yi(e, t);\n case \"buffer\":\n return Yi(tr && Buffer.isBuffer(e) ? e.toString(\"binary\") : Na(e), t);\n case \"array\":\n return Yi(En(e), t);\n }\n throw new Error(\"Unrecognized type \" + t.type);\n}\nfunction Yi(e, t) {\n var r = t || {}, n = {}, i = r.dense;\n i && (n[\"!data\"] = []);\n var f = hc(e, \"\\\\trowd\", \"\\\\row\");\n if (!f)\n throw new Error(\"RTF missing table\");\n var c = { s: { c: 0, r: 0 }, e: { c: 0, r: f.length - 1 } }, u = [];\n return f.forEach(function(l, h) {\n i && (u = n[\"!data\"][h] = []);\n for (var x = /\\\\[\\w\\-]+\\b/g, m = 0, _, v = -1, T = []; (_ = x.exec(l)) != null; ) {\n var A = l.slice(m, x.lastIndex - _[0].length);\n switch (A.charCodeAt(0) == 32 && (A = A.slice(1)), A.length && T.push(A), _[0]) {\n case \"\\\\cell\":\n if (++v, T.length) {\n var g = { v: T.join(\"\"), t: \"s\" };\n g.v == \"TRUE\" || g.v == \"FALSE\" ? (g.v = g.v == \"TRUE\", g.t = \"b\") : isNaN(Mt(g.v)) ? rt[g.v] != null && (g.t = \"e\", g.w = g.v, g.v = rt[g.v]) : (g.t = \"n\", r.cellText !== !1 && (g.w = g.v), g.v = Mt(g.v)), i ? u[v] = g : n[hr({ r: h, c: v })] = g;\n }\n T = [];\n break;\n case \"\\\\par\":\n T.push(`\n`);\n break;\n }\n m = x.lastIndex;\n }\n v > c.e.c && (c.e.c = v);\n }), n[\"!ref\"] = sr(c), n;\n}\nfunction jT(e, t) {\n var r = rn(QT(e, t), t);\n return r.bookType = \"rtf\", r;\n}\nfunction ew(e) {\n var t = e.slice(e[0] === \"#\" ? 1 : 0).slice(0, 6);\n return [parseInt(t.slice(0, 2), 16), parseInt(t.slice(2, 4), 16), parseInt(t.slice(4, 6), 16)];\n}\nfunction B0(e) {\n for (var t = 0, r = 1; t != 3; ++t) r = r * 256 + (e[t] > 255 ? 255 : e[t] < 0 ? 0 : e[t]);\n return r.toString(16).toUpperCase().slice(1);\n}\nfunction rw(e) {\n var t = e[0] / 255, r = e[1] / 255, n = e[2] / 255, i = Math.max(t, r, n), f = Math.min(t, r, n), c = i - f;\n if (c === 0) return [0, 0, t];\n var u = 0, l = 0, h = i + f;\n switch (l = c / (h > 1 ? 2 - h : h), i) {\n case t:\n u = ((r - n) / c + 6) % 6;\n break;\n case r:\n u = (n - t) / c + 2;\n break;\n case n:\n u = (t - r) / c + 4;\n break;\n }\n return [u / 6, l, h / 2];\n}\nfunction tw(e) {\n var t = e[0], r = e[1], n = e[2], i = r * 2 * (n < 0.5 ? n : 1 - n), f = n - i / 2, c = [f, f, f], u = 6 * t, l;\n if (r !== 0) switch (u | 0) {\n case 0:\n case 6:\n l = i * u, c[0] += i, c[1] += l;\n break;\n case 1:\n l = i * (2 - u), c[0] += l, c[1] += i;\n break;\n case 2:\n l = i * (u - 2), c[1] += i, c[2] += l;\n break;\n case 3:\n l = i * (4 - u), c[1] += l, c[2] += i;\n break;\n case 4:\n l = i * (u - 4), c[2] += i, c[0] += l;\n break;\n case 5:\n l = i * (6 - u), c[2] += l, c[0] += i;\n break;\n }\n for (var h = 0; h != 3; ++h) c[h] = Math.round(c[h] * 255);\n return c;\n}\nfunction fs(e, t) {\n if (t === 0) return e;\n var r = rw(ew(e));\n return t < 0 ? r[2] = r[2] * (1 + t) : r[2] = 1 - (1 - r[2]) * (1 - t), B0(tw(r));\n}\nvar ah = 6, aw = 15, nw = 1, mt = ah;\nfunction cs(e) {\n return Math.floor((e + Math.round(128 / mt) / 256) * mt);\n}\nfunction us(e) {\n return Math.floor((e - 5) / mt * 100 + 0.5) / 100;\n}\nfunction rc(e) {\n return Math.round((e * mt + 5) / mt * 256) / 256;\n}\nfunction $f(e) {\n return rc(us(cs(e)));\n}\nfunction Tc(e) {\n var t = Math.abs(e - $f(e)), r = mt;\n if (t > 5e-3) for (mt = nw; mt < aw; ++mt) Math.abs(e - $f(e)) <= t && (t = Math.abs(e - $f(e)), r = mt);\n mt = r;\n}\nfunction qn(e) {\n e.width ? (e.wpx = cs(e.width), e.wch = us(e.wpx), e.MDW = mt) : e.wpx ? (e.wch = us(e.wpx), e.width = rc(e.wch), e.MDW = mt) : typeof e.wch == \"number\" && (e.width = rc(e.wch), e.wpx = cs(e.width), e.MDW = mt), e.customWidth && delete e.customWidth;\n}\nvar iw = 96, nh = iw;\nfunction ih(e) {\n return e * 96 / nh;\n}\nfunction M0(e) {\n return e * nh / 96;\n}\nvar sw = {\n None: \"none\",\n Solid: \"solid\",\n Gray50: \"mediumGray\",\n Gray75: \"darkGray\",\n Gray25: \"lightGray\",\n HorzStripe: \"darkHorizontal\",\n VertStripe: \"darkVertical\",\n ReverseDiagStripe: \"darkDown\",\n DiagStripe: \"darkUp\",\n DiagCross: \"darkGrid\",\n ThickDiagCross: \"darkTrellis\",\n ThinHorzStripe: \"lightHorizontal\",\n ThinVertStripe: \"lightVertical\",\n ThinReverseDiagStripe: \"lightDown\",\n ThinHorzCross: \"lightGrid\"\n};\nfunction fw(e, t, r, n) {\n t.Borders = [];\n var i = {}, f = !1;\n (e.match(nt) || []).forEach(function(c) {\n var u = Ie(c);\n switch (ea(u[0])) {\n case \"<borders\":\n case \"<borders>\":\n case \"</borders>\":\n break;\n /* 18.8.4 border CT_Border */\n case \"<border\":\n case \"<border>\":\n case \"<border/>\":\n i = /*::(*/\n {}, u.diagonalUp && (i.diagonalUp = gr(u.diagonalUp)), u.diagonalDown && (i.diagonalDown = gr(u.diagonalDown)), t.Borders.push(i);\n break;\n case \"</border>\":\n break;\n /* note: not in spec, appears to be CT_BorderPr */\n case \"<left/>\":\n break;\n case \"<left\":\n case \"<left>\":\n break;\n case \"</left>\":\n break;\n /* note: not in spec, appears to be CT_BorderPr */\n case \"<right/>\":\n break;\n case \"<right\":\n case \"<right>\":\n break;\n case \"</right>\":\n break;\n /* 18.8.43 top CT_BorderPr */\n case \"<top/>\":\n break;\n case \"<top\":\n case \"<top>\":\n break;\n case \"</top>\":\n break;\n /* 18.8.6 bottom CT_BorderPr */\n case \"<bottom/>\":\n break;\n case \"<bottom\":\n case \"<bottom>\":\n break;\n case \"</bottom>\":\n break;\n /* 18.8.13 diagonal CT_BorderPr */\n case \"<diagonal\":\n case \"<diagonal>\":\n case \"<diagonal/>\":\n break;\n case \"</diagonal>\":\n break;\n /* 18.8.25 horizontal CT_BorderPr */\n case \"<horizontal\":\n case \"<horizontal>\":\n case \"<horizontal/>\":\n break;\n case \"</horizontal>\":\n break;\n /* 18.8.44 vertical CT_BorderPr */\n case \"<vertical\":\n case \"<vertical>\":\n case \"<vertical/>\":\n break;\n case \"</vertical>\":\n break;\n /* 18.8.37 start CT_BorderPr */\n case \"<start\":\n case \"<start>\":\n case \"<start/>\":\n break;\n case \"</start>\":\n break;\n /* 18.8.16 end CT_BorderPr */\n case \"<end\":\n case \"<end>\":\n case \"<end/>\":\n break;\n case \"</end>\":\n break;\n /* 18.8.? color CT_Color */\n case \"<color\":\n case \"<color>\":\n break;\n case \"<color/>\":\n case \"</color>\":\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n break;\n case \"<ext\":\n f = !0;\n break;\n case \"</ext>\":\n f = !1;\n break;\n default:\n if (n && n.WTF && !f)\n throw new Error(\"unrecognized \" + u[0] + \" in borders\");\n }\n });\n}\nfunction cw(e, t, r, n) {\n t.Fills = [];\n var i = {}, f = !1;\n (e.match(nt) || []).forEach(function(c) {\n var u = Ie(c);\n switch (ea(u[0])) {\n case \"<fills\":\n case \"<fills>\":\n case \"</fills>\":\n break;\n /* 18.8.20 fill CT_Fill */\n case \"<fill>\":\n case \"<fill\":\n case \"<fill/>\":\n i = {}, t.Fills.push(i);\n break;\n case \"</fill>\":\n break;\n /* 18.8.24 gradientFill CT_GradientFill */\n case \"<gradientFill>\":\n break;\n case \"<gradientFill\":\n case \"</gradientFill>\":\n t.Fills.push(i), i = {};\n break;\n /* 18.8.32 patternFill CT_PatternFill */\n case \"<patternFill\":\n case \"<patternFill>\":\n u.patternType && (i.patternType = u.patternType);\n break;\n case \"<patternFill/>\":\n case \"</patternFill>\":\n break;\n /* 18.8.3 bgColor CT_Color */\n case \"<bgColor\":\n i.bgColor || (i.bgColor = {}), u.indexed && (i.bgColor.indexed = parseInt(u.indexed, 10)), u.theme && (i.bgColor.theme = parseInt(u.theme, 10)), u.tint && (i.bgColor.tint = parseFloat(u.tint)), u.rgb && (i.bgColor.rgb = u.rgb.slice(-6));\n break;\n case \"<bgColor/>\":\n case \"</bgColor>\":\n break;\n /* 18.8.19 fgColor CT_Color */\n case \"<fgColor\":\n i.fgColor || (i.fgColor = {}), u.theme && (i.fgColor.theme = parseInt(u.theme, 10)), u.tint && (i.fgColor.tint = parseFloat(u.tint)), u.rgb != null && (i.fgColor.rgb = u.rgb.slice(-6));\n break;\n case \"<fgColor/>\":\n case \"</fgColor>\":\n break;\n /* 18.8.38 stop CT_GradientStop */\n case \"<stop\":\n case \"<stop/>\":\n break;\n case \"</stop>\":\n break;\n /* 18.8.? color CT_Color */\n case \"<color\":\n case \"<color/>\":\n break;\n case \"</color>\":\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n break;\n case \"<ext\":\n f = !0;\n break;\n case \"</ext>\":\n f = !1;\n break;\n default:\n if (n && n.WTF && !f)\n throw new Error(\"unrecognized \" + u[0] + \" in fills\");\n }\n });\n}\nfunction uw(e, t, r, n) {\n t.Fonts = [];\n var i = {}, f = !1;\n (e.match(nt) || []).forEach(function(c) {\n var u = Ie(c);\n switch (ea(u[0])) {\n case \"<fonts\":\n case \"<fonts>\":\n case \"</fonts>\":\n break;\n /* 18.8.22 font CT_Font */\n case \"<font\":\n case \"<font>\":\n break;\n case \"</font>\":\n case \"<font/>\":\n t.Fonts.push(i), i = {};\n break;\n /* 18.8.29 name CT_FontName */\n case \"<name\":\n u.val && (i.name = Tr(u.val));\n break;\n case \"<name/>\":\n case \"</name>\":\n break;\n /* 18.8.2 b CT_BooleanProperty */\n case \"<b\":\n i.bold = u.val ? gr(u.val) : 1;\n break;\n case \"<b/>\":\n i.bold = 1;\n break;\n case \"</b>\":\n case \"</b\":\n break;\n /* 18.8.26 i CT_BooleanProperty */\n case \"<i\":\n i.italic = u.val ? gr(u.val) : 1;\n break;\n case \"<i/>\":\n i.italic = 1;\n break;\n case \"</i>\":\n case \"</i\":\n break;\n /* 18.4.13 u CT_UnderlineProperty */\n case \"<u\":\n switch (u.val) {\n case \"none\":\n i.underline = 0;\n break;\n case \"single\":\n i.underline = 1;\n break;\n case \"double\":\n i.underline = 2;\n break;\n case \"singleAccounting\":\n i.underline = 33;\n break;\n case \"doubleAccounting\":\n i.underline = 34;\n break;\n }\n break;\n case \"<u/>\":\n i.underline = 1;\n break;\n case \"</u>\":\n case \"</u\":\n break;\n /* 18.4.10 strike CT_BooleanProperty */\n case \"<strike\":\n i.strike = u.val ? gr(u.val) : 1;\n break;\n case \"<strike/>\":\n i.strike = 1;\n break;\n case \"</strike>\":\n case \"</strike\":\n break;\n /* 18.4.2 outline CT_BooleanProperty */\n case \"<outline\":\n i.outline = u.val ? gr(u.val) : 1;\n break;\n case \"<outline/>\":\n i.outline = 1;\n break;\n case \"</outline>\":\n case \"</outline\":\n break;\n /* 18.8.36 shadow CT_BooleanProperty */\n case \"<shadow\":\n i.shadow = u.val ? gr(u.val) : 1;\n break;\n case \"<shadow/>\":\n i.shadow = 1;\n break;\n case \"</shadow>\":\n case \"</shadow\":\n break;\n /* 18.8.12 condense CT_BooleanProperty */\n case \"<condense\":\n i.condense = u.val ? gr(u.val) : 1;\n break;\n case \"<condense/>\":\n i.condense = 1;\n break;\n case \"</condense>\":\n case \"</condense\":\n break;\n /* 18.8.17 extend CT_BooleanProperty */\n case \"<extend\":\n i.extend = u.val ? gr(u.val) : 1;\n break;\n case \"<extend/>\":\n i.extend = 1;\n break;\n case \"</extend>\":\n case \"</extend\":\n break;\n /* 18.4.11 sz CT_FontSize */\n case \"<sz\":\n u.val && (i.sz = +u.val);\n break;\n case \"<sz/>\":\n case \"</sz>\":\n case \"</sz\":\n break;\n /* 18.4.14 vertAlign CT_VerticalAlignFontProperty */\n case \"<vertAlign\":\n u.val && (i.vertAlign = u.val);\n break;\n case \"<vertAlign/>\":\n case \"</vertAlign>\":\n case \"</vertAlign\":\n break;\n /* 18.8.18 family CT_FontFamily */\n case \"<family\":\n u.val && (i.family = parseInt(u.val, 10));\n break;\n case \"<family/>\":\n case \"</family>\":\n case \"</family\":\n break;\n /* 18.8.35 scheme CT_FontScheme */\n case \"<scheme\":\n u.val && (i.scheme = u.val);\n break;\n case \"<scheme/>\":\n case \"</scheme>\":\n case \"</scheme\":\n break;\n /* 18.4.1 charset CT_IntProperty */\n case \"<charset\":\n if (u.val == \"1\") break;\n u.codepage = ic[parseInt(u.val, 10)];\n break;\n case \"<charset/>\":\n case \"</charset>\":\n case \"</charset\":\n break;\n /* 18.?.? color CT_Color */\n case \"<color\":\n if (i.color || (i.color = {}), u.auto && (i.color.auto = gr(u.auto)), u.rgb) i.color.rgb = u.rgb.slice(-6);\n else if (u.indexed) {\n i.color.index = parseInt(u.indexed, 10);\n var l = gn[i.color.index];\n i.color.index == 81 && (l = gn[1]), l || (l = gn[1]), i.color.rgb = l[0].toString(16) + l[1].toString(16) + l[2].toString(16);\n } else u.theme && (i.color.theme = parseInt(u.theme, 10), u.tint && (i.color.tint = parseFloat(u.tint)), u.theme && r.themeElements && r.themeElements.clrScheme && (i.color.rgb = fs(r.themeElements.clrScheme[i.color.theme].rgb, i.color.tint || 0)));\n break;\n case \"<color/>\":\n case \"</color>\":\n case \"</color\":\n break;\n /* note: sometimes mc:AlternateContent appears bare */\n case \"<AlternateContent\":\n f = !0;\n break;\n case \"</AlternateContent>\":\n case \"</AlternateContent\":\n f = !1;\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n break;\n case \"<ext\":\n f = !0;\n break;\n case \"</ext>\":\n f = !1;\n break;\n default:\n if (n && n.WTF && !f)\n throw new Error(\"unrecognized \" + u[0] + \" in fonts\");\n }\n });\n}\nfunction ow(e, t, r) {\n t.NumberFmt = [];\n for (var n = jt(Xe), i = 0; i < n.length; ++i) t.NumberFmt[n[i]] = Xe[n[i]];\n var f = e.match(nt);\n if (f)\n for (i = 0; i < f.length; ++i) {\n var c = Ie(f[i]);\n switch (ea(c[0])) {\n case \"<numFmts\":\n case \"</numFmts>\":\n case \"<numFmts/>\":\n case \"<numFmts>\":\n break;\n case \"<numFmt\":\n {\n var u = ir(Tr(c.formatCode)), l = parseInt(c.numFmtId, 10);\n if (t.NumberFmt[l] = u, l > 0) {\n if (l > 392) {\n for (l = 392; l > 60 && t.NumberFmt[l] != null; --l) ;\n t.NumberFmt[l] = u;\n }\n vn(u, l);\n }\n }\n break;\n case \"</numFmt>\":\n break;\n default:\n if (r.WTF) throw new Error(\"unrecognized \" + c[0] + \" in numFmts\");\n }\n }\n}\nvar Zi = [\"numFmtId\", \"fillId\", \"fontId\", \"borderId\", \"xfId\"], Ji = [\"applyAlignment\", \"applyBorder\", \"applyFill\", \"applyFont\", \"applyNumberFormat\", \"applyProtection\", \"pivotButton\", \"quotePrefix\"];\nfunction lw(e, t, r) {\n t.CellXf = [];\n var n, i = !1;\n (e.match(nt) || []).forEach(function(f) {\n var c = Ie(f), u = 0;\n switch (ea(c[0])) {\n case \"<cellXfs\":\n case \"<cellXfs>\":\n case \"<cellXfs/>\":\n case \"</cellXfs>\":\n break;\n /* 18.8.45 xf CT_Xf */\n case \"<xf\":\n case \"<xf/>\":\n case \"<xf>\":\n for (n = c, delete n[0], u = 0; u < Zi.length; ++u) n[Zi[u]] && (n[Zi[u]] = parseInt(n[Zi[u]], 10));\n for (u = 0; u < Ji.length; ++u) n[Ji[u]] && (n[Ji[u]] = gr(n[Ji[u]]));\n if (t.NumberFmt && n.numFmtId > 392) {\n for (u = 392; u > 60; --u) if (t.NumberFmt[n.numFmtId] == t.NumberFmt[u]) {\n n.numFmtId = u;\n break;\n }\n }\n t.CellXf.push(n);\n break;\n case \"</xf>\":\n break;\n /* 18.8.1 alignment CT_CellAlignment */\n case \"<alignment\":\n case \"<alignment/>\":\n case \"<alignment>\":\n var l = {};\n c.vertical && (l.vertical = c.vertical), c.horizontal && (l.horizontal = c.horizontal), c.textRotation != null && (l.textRotation = c.textRotation), c.indent && (l.indent = c.indent), c.wrapText && (l.wrapText = gr(c.wrapText)), n.alignment = l;\n break;\n case \"</alignment>\":\n break;\n /* 18.8.33 protection CT_CellProtection */\n case \"<protection\":\n case \"<protection>\":\n break;\n case \"</protection>\":\n case \"<protection/>\":\n break;\n /* note: sometimes mc:AlternateContent appears bare */\n case \"<AlternateContent\":\n case \"<AlternateContent>\":\n i = !0;\n break;\n case \"</AlternateContent>\":\n i = !1;\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n break;\n case \"<ext\":\n i = !0;\n break;\n case \"</ext>\":\n i = !1;\n break;\n default:\n if (r && r.WTF && !i)\n throw new Error(\"unrecognized \" + c[0] + \" in cellXfs\");\n }\n });\n}\nvar hw = /* @__PURE__ */ function() {\n return function(r, n, i) {\n var f = {};\n if (!r) return f;\n r = lc(H0(r, \"<!--\", \"-->\"));\n var c;\n return (c = Qr(r, \"numFmts\")) && ow(c[0], f, i), (c = Qr(r, \"fonts\")) && uw(c[0], f, n, i), (c = Qr(r, \"fills\")) && cw(c[0], f, n, i), (c = Qr(r, \"borders\")) && fw(c[0], f, n, i), (c = Qr(r, \"cellXfs\")) && lw(c[0], f, i), f;\n };\n}();\nfunction xw(e, t) {\n var r = e.read_shift(2), n = lt(e);\n return [r, n];\n}\nfunction dw(e, t, r) {\n var n = {};\n n.sz = e.read_shift(2) / 20;\n var i = T4(e);\n i.fItalic && (n.italic = 1), i.fCondense && (n.condense = 1), i.fExtend && (n.extend = 1), i.fShadow && (n.shadow = 1), i.fOutline && (n.outline = 1), i.fStrikeout && (n.strike = 1);\n var f = e.read_shift(2);\n switch (f === 700 && (n.bold = 1), e.read_shift(2)) {\n /* case 0: out.vertAlign = \"baseline\"; break; */\n case 1:\n n.vertAlign = \"superscript\";\n break;\n case 2:\n n.vertAlign = \"subscript\";\n break;\n }\n var c = e.read_shift(1);\n c != 0 && (n.underline = c);\n var u = e.read_shift(1);\n u > 0 && (n.family = u);\n var l = e.read_shift(1);\n switch (l > 0 && (n.charset = l), e.l++, n.color = E4(e), e.read_shift(1)) {\n /* case 0: out.scheme = \"none\": break; */\n case 1:\n n.scheme = \"major\";\n break;\n case 2:\n n.scheme = \"minor\";\n break;\n }\n return n.name = lt(e), n;\n}\nvar vw = ht;\nfunction pw(e, t) {\n var r = e.l + t, n = e.read_shift(2), i = e.read_shift(2);\n return e.l = r, { ixfe: n, numFmtId: i };\n}\nvar gw = ht;\nfunction _w(e, t, r) {\n var n = {};\n n.NumberFmt = [];\n for (var i in Xe) n.NumberFmt[i] = Xe[i];\n n.CellXf = [], n.Fonts = [];\n var f = [], c = !1;\n return La(e, function(l, h, x) {\n switch (x) {\n case 44:\n n.NumberFmt[l[0]] = l[1], vn(l[1], l[0]);\n break;\n case 43:\n n.Fonts.push(l), l.color.theme != null && t && t.themeElements && t.themeElements.clrScheme && (l.color.rgb = fs(t.themeElements.clrScheme[l.color.theme].rgb, l.color.tint || 0));\n break;\n case 1025:\n break;\n case 45:\n break;\n case 46:\n break;\n case 47:\n f[f.length - 1] == 617 && n.CellXf.push(l);\n break;\n case 48:\n /* BrtStyle */\n case 507:\n /* BrtDXF */\n case 572:\n /* BrtMRUColor */\n case 475:\n break;\n case 1171:\n /* BrtDXF14 */\n case 2102:\n /* BrtDXF15 */\n case 1130:\n /* BrtSlicerStyleElement */\n case 512:\n /* BrtTableStyleElement */\n case 2095:\n /* BrtTimelineStyleElement */\n case 3072:\n break;\n case 35:\n c = !0;\n break;\n case 36:\n c = !1;\n break;\n case 37:\n f.push(x), c = !0;\n break;\n case 38:\n f.pop(), c = !1;\n break;\n default:\n if (h.T > 0) f.push(x);\n else if (h.T < 0) f.pop();\n else if (!c || r.WTF && f[f.length - 1] != 37) throw new Error(\"Unexpected record 0x\" + x.toString(16));\n }\n }), n;\n}\nvar mw = [\n \"</a:lt1>\",\n \"</a:dk1>\",\n \"</a:lt2>\",\n \"</a:dk2>\",\n \"</a:accent1>\",\n \"</a:accent2>\",\n \"</a:accent3>\",\n \"</a:accent4>\",\n \"</a:accent5>\",\n \"</a:accent6>\",\n \"</a:hlink>\",\n \"</a:folHlink>\"\n];\nfunction Ew(e, t, r) {\n t.themeElements.clrScheme = [];\n var n = {};\n (e[0].match(nt) || []).forEach(function(i) {\n var f = Ie(i);\n switch (f[0]) {\n /* 20.1.6.2 clrScheme (Color Scheme) CT_ColorScheme */\n case \"<a:clrScheme\":\n case \"</a:clrScheme>\":\n break;\n /* 20.1.2.3.32 srgbClr CT_SRgbColor */\n case \"<a:srgbClr\":\n n.rgb = f.val;\n break;\n case \"</a:srgbClr>\":\n break;\n /* 20.1.2.3.33 sysClr CT_SystemColor */\n case \"<a:sysClr\":\n n.rgb = f.lastClr;\n break;\n case \"</a:sysClr>\":\n break;\n /* 20.1.4.1.1 accent1 (Accent 1) */\n /* 20.1.4.1.2 accent2 (Accent 2) */\n /* 20.1.4.1.3 accent3 (Accent 3) */\n /* 20.1.4.1.4 accent4 (Accent 4) */\n /* 20.1.4.1.5 accent5 (Accent 5) */\n /* 20.1.4.1.6 accent6 (Accent 6) */\n /* 20.1.4.1.9 dk1 (Dark 1) */\n /* 20.1.4.1.10 dk2 (Dark 2) */\n /* 20.1.4.1.15 folHlink (Followed Hyperlink) */\n /* 20.1.4.1.19 hlink (Hyperlink) */\n /* 20.1.4.1.22 lt1 (Light 1) */\n /* 20.1.4.1.23 lt2 (Light 2) */\n case \"</a:dk1>\":\n case \"</a:lt1>\":\n case \"<a:dk1>\":\n case \"<a:lt1>\":\n case \"<a:dk2>\":\n case \"</a:dk2>\":\n case \"<a:lt2>\":\n case \"</a:lt2>\":\n case \"<a:accent1>\":\n case \"</a:accent1>\":\n case \"<a:accent2>\":\n case \"</a:accent2>\":\n case \"<a:accent3>\":\n case \"</a:accent3>\":\n case \"<a:accent4>\":\n case \"</a:accent4>\":\n case \"<a:accent5>\":\n case \"</a:accent5>\":\n case \"<a:accent6>\":\n case \"</a:accent6>\":\n case \"<a:hlink>\":\n case \"</a:hlink>\":\n case \"<a:folHlink>\":\n case \"</a:folHlink>\":\n f[0].charAt(1) === \"/\" ? (t.themeElements.clrScheme[mw.indexOf(f[0])] = n, n = {}) : n.name = f[0].slice(3, f[0].length - 1);\n break;\n default:\n if (r && r.WTF) throw new Error(\"Unrecognized \" + f[0] + \" in clrScheme\");\n }\n });\n}\nfunction Tw(e, t, r) {\n t.themeElements = {};\n var n;\n if (!(n = pn(e, \"a:clrScheme\"))) throw new Error(\"clrScheme not found in themeElements\");\n if (Ew(n, t, r), !(n = pn(e, \"a:fontScheme\"))) throw new Error(\"fontScheme not found in themeElements\");\n if (!(n = pn(e, \"a:fmtScheme\"))) throw new Error(\"fmtScheme not found in themeElements\");\n}\nfunction sh(e, t) {\n (!e || e.length === 0) && (e = ww());\n var r, n = {};\n if (!(r = pn(e, \"a:themeElements\"))) throw new Error(\"themeElements not found in theme\");\n return Tw(r[0], n, t), n.raw = e, n;\n}\nfunction ww(e, t) {\n var r = [g1];\n return r[r.length] = '<a:theme xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" name=\"Office Theme\">', r[r.length] = \"<a:themeElements>\", r[r.length] = '<a:clrScheme name=\"Office\">', r[r.length] = '<a:dk1><a:sysClr val=\"windowText\" lastClr=\"000000\"/></a:dk1>', r[r.length] = '<a:lt1><a:sysClr val=\"window\" lastClr=\"FFFFFF\"/></a:lt1>', r[r.length] = '<a:dk2><a:srgbClr val=\"1F497D\"/></a:dk2>', r[r.length] = '<a:lt2><a:srgbClr val=\"EEECE1\"/></a:lt2>', r[r.length] = '<a:accent1><a:srgbClr val=\"4F81BD\"/></a:accent1>', r[r.length] = '<a:accent2><a:srgbClr val=\"C0504D\"/></a:accent2>', r[r.length] = '<a:accent3><a:srgbClr val=\"9BBB59\"/></a:accent3>', r[r.length] = '<a:accent4><a:srgbClr val=\"8064A2\"/></a:accent4>', r[r.length] = '<a:accent5><a:srgbClr val=\"4BACC6\"/></a:accent5>', r[r.length] = '<a:accent6><a:srgbClr val=\"F79646\"/></a:accent6>', r[r.length] = '<a:hlink><a:srgbClr val=\"0000FF\"/></a:hlink>', r[r.length] = '<a:folHlink><a:srgbClr val=\"800080\"/></a:folHlink>', r[r.length] = \"</a:clrScheme>\", r[r.length] = '<a:fontScheme name=\"Office\">', r[r.length] = \"<a:majorFont>\", r[r.length] = '<a:latin typeface=\"Cambria\"/>', r[r.length] = '<a:ea typeface=\"\"/>', r[r.length] = '<a:cs typeface=\"\"/>', r[r.length] = '<a:font script=\"Jpan\" typeface=\"MS Pゴシック\"/>', r[r.length] = '<a:font script=\"Hang\" typeface=\"맑은 고딕\"/>', r[r.length] = '<a:font script=\"Hans\" typeface=\"宋体\"/>', r[r.length] = '<a:font script=\"Hant\" typeface=\"新細明體\"/>', r[r.length] = '<a:font script=\"Arab\" typeface=\"Times New Roman\"/>', r[r.length] = '<a:font script=\"Hebr\" typeface=\"Times New Roman\"/>', r[r.length] = '<a:font script=\"Thai\" typeface=\"Tahoma\"/>', r[r.length] = '<a:font script=\"Ethi\" typeface=\"Nyala\"/>', r[r.length] = '<a:font script=\"Beng\" typeface=\"Vrinda\"/>', r[r.length] = '<a:font script=\"Gujr\" typeface=\"Shruti\"/>', r[r.length] = '<a:font script=\"Khmr\" typeface=\"MoolBoran\"/>', r[r.length] = '<a:font script=\"Knda\" typeface=\"Tunga\"/>', r[r.length] = '<a:font script=\"Guru\" typeface=\"Raavi\"/>', r[r.length] = '<a:font script=\"Cans\" typeface=\"Euphemia\"/>', r[r.length] = '<a:font script=\"Cher\" typeface=\"Plantagenet Cherokee\"/>', r[r.length] = '<a:font script=\"Yiii\" typeface=\"Microsoft Yi Baiti\"/>', r[r.length] = '<a:font script=\"Tibt\" typeface=\"Microsoft Himalaya\"/>', r[r.length] = '<a:font script=\"Thaa\" typeface=\"MV Boli\"/>', r[r.length] = '<a:font script=\"Deva\" typeface=\"Mangal\"/>', r[r.length] = '<a:font script=\"Telu\" typeface=\"Gautami\"/>', r[r.length] = '<a:font script=\"Taml\" typeface=\"Latha\"/>', r[r.length] = '<a:font script=\"Syrc\" typeface=\"Estrangelo Edessa\"/>', r[r.length] = '<a:font script=\"Orya\" typeface=\"Kalinga\"/>', r[r.length] = '<a:font script=\"Mlym\" typeface=\"Kartika\"/>', r[r.length] = '<a:font script=\"Laoo\" typeface=\"DokChampa\"/>', r[r.length] = '<a:font script=\"Sinh\" typeface=\"Iskoola Pota\"/>', r[r.length] = '<a:font script=\"Mong\" typeface=\"Mongolian Baiti\"/>', r[r.length] = '<a:font script=\"Viet\" typeface=\"Times New Roman\"/>', r[r.length] = '<a:font script=\"Uigh\" typeface=\"Microsoft Uighur\"/>', r[r.length] = '<a:font script=\"Geor\" typeface=\"Sylfaen\"/>', r[r.length] = \"</a:majorFont>\", r[r.length] = \"<a:minorFont>\", r[r.length] = '<a:latin typeface=\"Calibri\"/>', r[r.length] = '<a:ea typeface=\"\"/>', r[r.length] = '<a:cs typeface=\"\"/>', r[r.length] = '<a:font script=\"Jpan\" typeface=\"MS Pゴシック\"/>', r[r.length] = '<a:font script=\"Hang\" typeface=\"맑은 고딕\"/>', r[r.length] = '<a:font script=\"Hans\" typeface=\"宋体\"/>', r[r.length] = '<a:font script=\"Hant\" typeface=\"新細明體\"/>', r[r.length] = '<a:font script=\"Arab\" typeface=\"Arial\"/>', r[r.length] = '<a:font script=\"Hebr\" typeface=\"Arial\"/>', r[r.length] = '<a:font script=\"Thai\" typeface=\"Tahoma\"/>', r[r.length] = '<a:font script=\"Ethi\" typeface=\"Nyala\"/>', r[r.length] = '<a:font script=\"Beng\" typeface=\"Vrinda\"/>', r[r.length] = '<a:font script=\"Gujr\" typeface=\"Shruti\"/>', r[r.length] = '<a:font script=\"Khmr\" typeface=\"DaunPenh\"/>', r[r.length] = '<a:font script=\"Knda\" typeface=\"Tunga\"/>', r[r.length] = '<a:font script=\"Guru\" typeface=\"Raavi\"/>', r[r.length] = '<a:font script=\"Cans\" typeface=\"Euphemia\"/>', r[r.length] = '<a:font script=\"Cher\" typeface=\"Plantagenet Cherokee\"/>', r[r.length] = '<a:font script=\"Yiii\" typeface=\"Microsoft Yi Baiti\"/>', r[r.length] = '<a:font script=\"Tibt\" typeface=\"Microsoft Himalaya\"/>', r[r.length] = '<a:font script=\"Thaa\" typeface=\"MV Boli\"/>', r[r.length] = '<a:font script=\"Deva\" typeface=\"Mangal\"/>', r[r.length] = '<a:font script=\"Telu\" typeface=\"Gautami\"/>', r[r.length] = '<a:font script=\"Taml\" typeface=\"Latha\"/>', r[r.length] = '<a:font script=\"Syrc\" typeface=\"Estrangelo Edessa\"/>', r[r.length] = '<a:font script=\"Orya\" typeface=\"Kalinga\"/>', r[r.length] = '<a:font script=\"Mlym\" typeface=\"Kartika\"/>', r[r.length] = '<a:font script=\"Laoo\" typeface=\"DokChampa\"/>', r[r.length] = '<a:font script=\"Sinh\" typeface=\"Iskoola Pota\"/>', r[r.length] = '<a:font script=\"Mong\" typeface=\"Mongolian Baiti\"/>', r[r.length] = '<a:font script=\"Viet\" typeface=\"Arial\"/>', r[r.length] = '<a:font script=\"Uigh\" typeface=\"Microsoft Uighur\"/>', r[r.length] = '<a:font script=\"Geor\" typeface=\"Sylfaen\"/>', r[r.length] = \"</a:minorFont>\", r[r.length] = \"</a:fontScheme>\", r[r.length] = '<a:fmtScheme name=\"Office\">', r[r.length] = \"<a:fillStyleLst>\", r[r.length] = '<a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill>', r[r.length] = '<a:gradFill rotWithShape=\"1\">', r[r.length] = \"<a:gsLst>\", r[r.length] = '<a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"50000\"/><a:satMod val=\"300000\"/></a:schemeClr></a:gs>', r[r.length] = '<a:gs pos=\"35000\"><a:schemeClr val=\"phClr\"><a:tint val=\"37000\"/><a:satMod val=\"300000\"/></a:schemeClr></a:gs>', r[r.length] = '<a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:tint val=\"15000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs>', r[r.length] = \"</a:gsLst>\", r[r.length] = '<a:lin ang=\"16200000\" scaled=\"1\"/>', r[r.length] = \"</a:gradFill>\", r[r.length] = '<a:gradFill rotWithShape=\"1\">', r[r.length] = \"<a:gsLst>\", r[r.length] = '<a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"100000\"/><a:shade val=\"100000\"/><a:satMod val=\"130000\"/></a:schemeClr></a:gs>', r[r.length] = '<a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:tint val=\"50000\"/><a:shade val=\"100000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs>', r[r.length] = \"</a:gsLst>\", r[r.length] = '<a:lin ang=\"16200000\" scaled=\"0\"/>', r[r.length] = \"</a:gradFill>\", r[r.length] = \"</a:fillStyleLst>\", r[r.length] = \"<a:lnStyleLst>\", r[r.length] = '<a:ln w=\"9525\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"><a:shade val=\"95000\"/><a:satMod val=\"105000\"/></a:schemeClr></a:solidFill><a:prstDash val=\"solid\"/></a:ln>', r[r.length] = '<a:ln w=\"25400\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/></a:ln>', r[r.length] = '<a:ln w=\"38100\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/></a:ln>', r[r.length] = \"</a:lnStyleLst>\", r[r.length] = \"<a:effectStyleLst>\", r[r.length] = \"<a:effectStyle>\", r[r.length] = \"<a:effectLst>\", r[r.length] = '<a:outerShdw blurRad=\"40000\" dist=\"20000\" dir=\"5400000\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"38000\"/></a:srgbClr></a:outerShdw>', r[r.length] = \"</a:effectLst>\", r[r.length] = \"</a:effectStyle>\", r[r.length] = \"<a:effectStyle>\", r[r.length] = \"<a:effectLst>\", r[r.length] = '<a:outerShdw blurRad=\"40000\" dist=\"23000\" dir=\"5400000\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"35000\"/></a:srgbClr></a:outerShdw>', r[r.length] = \"</a:effectLst>\", r[r.length] = \"</a:effectStyle>\", r[r.length] = \"<a:effectStyle>\", r[r.length] = \"<a:effectLst>\", r[r.length] = '<a:outerShdw blurRad=\"40000\" dist=\"23000\" dir=\"5400000\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"35000\"/></a:srgbClr></a:outerShdw>', r[r.length] = \"</a:effectLst>\", r[r.length] = '<a:scene3d><a:camera prst=\"orthographicFront\"><a:rot lat=\"0\" lon=\"0\" rev=\"0\"/></a:camera><a:lightRig rig=\"threePt\" dir=\"t\"><a:rot lat=\"0\" lon=\"0\" rev=\"1200000\"/></a:lightRig></a:scene3d>', r[r.length] = '<a:sp3d><a:bevelT w=\"63500\" h=\"25400\"/></a:sp3d>', r[r.length] = \"</a:effectStyle>\", r[r.length] = \"</a:effectStyleLst>\", r[r.length] = \"<a:bgFillStyleLst>\", r[r.length] = '<a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill>', r[r.length] = '<a:gradFill rotWithShape=\"1\">', r[r.length] = \"<a:gsLst>\", r[r.length] = '<a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"40000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs>', r[r.length] = '<a:gs pos=\"40000\"><a:schemeClr val=\"phClr\"><a:tint val=\"45000\"/><a:shade val=\"99000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs>', r[r.length] = '<a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:shade val=\"20000\"/><a:satMod val=\"255000\"/></a:schemeClr></a:gs>', r[r.length] = \"</a:gsLst>\", r[r.length] = '<a:path path=\"circle\"><a:fillToRect l=\"50000\" t=\"-80000\" r=\"50000\" b=\"180000\"/></a:path>', r[r.length] = \"</a:gradFill>\", r[r.length] = '<a:gradFill rotWithShape=\"1\">', r[r.length] = \"<a:gsLst>\", r[r.length] = '<a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"80000\"/><a:satMod val=\"300000\"/></a:schemeClr></a:gs>', r[r.length] = '<a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:shade val=\"30000\"/><a:satMod val=\"200000\"/></a:schemeClr></a:gs>', r[r.length] = \"</a:gsLst>\", r[r.length] = '<a:path path=\"circle\"><a:fillToRect l=\"50000\" t=\"50000\" r=\"50000\" b=\"50000\"/></a:path>', r[r.length] = \"</a:gradFill>\", r[r.length] = \"</a:bgFillStyleLst>\", r[r.length] = \"</a:fmtScheme>\", r[r.length] = \"</a:themeElements>\", r[r.length] = \"<a:objectDefaults>\", r[r.length] = \"<a:spDef>\", r[r.length] = '<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx=\"1\"><a:schemeClr val=\"accent1\"/></a:lnRef><a:fillRef idx=\"3\"><a:schemeClr val=\"accent1\"/></a:fillRef><a:effectRef idx=\"2\"><a:schemeClr val=\"accent1\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></a:style>', r[r.length] = \"</a:spDef>\", r[r.length] = \"<a:lnDef>\", r[r.length] = '<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx=\"2\"><a:schemeClr val=\"accent1\"/></a:lnRef><a:fillRef idx=\"0\"><a:schemeClr val=\"accent1\"/></a:fillRef><a:effectRef idx=\"1\"><a:schemeClr val=\"accent1\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"tx1\"/></a:fontRef></a:style>', r[r.length] = \"</a:lnDef>\", r[r.length] = \"</a:objectDefaults>\", r[r.length] = \"<a:extraClrSchemeLst/>\", r[r.length] = \"</a:theme>\", r.join(\"\");\n}\nfunction kw(e, t, r) {\n var n = e.l + t, i = e.read_shift(4);\n if (i !== 124226) {\n if (!r.cellStyles) {\n e.l = n;\n return;\n }\n var f = e.slice(e.l);\n e.l = n;\n var c;\n try {\n c = p1(f, { type: \"array\" });\n } catch {\n return;\n }\n var u = Et(c, \"theme/theme/theme1.xml\", !0);\n if (u)\n return sh(u, r);\n }\n}\nfunction Aw(e) {\n return e.read_shift(4);\n}\nfunction Fw(e) {\n var t = {};\n switch (t.xclrType = e.read_shift(2), t.nTintShade = e.read_shift(2), t.xclrType) {\n case 0:\n e.l += 4;\n break;\n case 1:\n t.xclrValue = Sw(e, 4);\n break;\n case 2:\n t.xclrValue = z1(e);\n break;\n case 3:\n t.xclrValue = Aw(e);\n break;\n case 4:\n e.l += 4;\n break;\n }\n return e.l += 8, t;\n}\nfunction Sw(e, t) {\n return ht(e, t);\n}\nfunction Cw(e, t) {\n return ht(e, t);\n}\nfunction yw(e) {\n var t = e.read_shift(2), r = e.read_shift(2) - 4, n = [t];\n switch (t) {\n case 4:\n case 5:\n case 7:\n case 8:\n case 9:\n case 10:\n case 11:\n case 13:\n n[1] = Fw(e);\n break;\n case 6:\n n[1] = Cw(e, r);\n break;\n case 14:\n case 15:\n n[1] = e.read_shift(r === 1 ? 1 : 2);\n break;\n default:\n throw new Error(\"Unrecognized ExtProp type: \" + t + \" \" + r);\n }\n return n;\n}\nfunction Iw(e, t) {\n var r = e.l + t;\n e.l += 2;\n var n = e.read_shift(2);\n e.l += 2;\n for (var i = e.read_shift(2), f = []; i-- > 0; ) f.push(yw(e, r - e.l));\n return { ixfe: n, ext: f };\n}\nfunction Ow(e, t) {\n t.forEach(function(r) {\n r[0];\n });\n}\nfunction Dw(e, t) {\n return {\n flags: e.read_shift(4),\n version: e.read_shift(4),\n name: lt(e)\n };\n}\nfunction Rw(e) {\n for (var t = [], r = e.read_shift(4); r-- > 0; )\n t.push([e.read_shift(4), e.read_shift(4)]);\n return t;\n}\nfunction Nw(e) {\n return e.l += 4, e.read_shift(4) != 0;\n}\nfunction Lw(e, t, r) {\n var n = { Types: [], Cell: [], Value: [] }, i = r || {}, f = [], c = !1, u = 2;\n return La(e, function(l, h, x) {\n switch (x) {\n case 335:\n n.Types.push({ name: l.name });\n break;\n case 51:\n l.forEach(function(m) {\n u == 1 ? n.Cell.push({ type: n.Types[m[0] - 1].name, index: m[1] }) : u == 0 && n.Value.push({ type: n.Types[m[0] - 1].name, index: m[1] });\n });\n break;\n case 337:\n u = l ? 1 : 0;\n break;\n case 338:\n u = 2;\n break;\n case 35:\n f.push(x), c = !0;\n break;\n case 36:\n f.pop(), c = !1;\n break;\n default:\n if (!h.T) {\n if (!c || i.WTF && f[f.length - 1] != 35)\n throw new Error(\"Unexpected record 0x\" + x.toString(16));\n }\n }\n }), n;\n}\nfunction Pw(e, t, r) {\n var n = { Types: [], Cell: [], Value: [] };\n if (!e)\n return n;\n var i = !1, f = 2, c;\n return e.replace(nt, function(u) {\n var l = Ie(u);\n switch (ea(l[0])) {\n case \"<?xml\":\n break;\n case \"<metadata\":\n case \"</metadata>\":\n break;\n case \"<metadataTypes\":\n case \"</metadataTypes>\":\n break;\n case \"<metadataType\":\n n.Types.push({ name: l.name });\n break;\n case \"</metadataType>\":\n break;\n case \"<futureMetadata\":\n for (var h = 0; h < n.Types.length; ++h)\n n.Types[h].name == l.name && (c = n.Types[h]);\n break;\n case \"</futureMetadata>\":\n break;\n case \"<bk>\":\n break;\n case \"</bk>\":\n break;\n case \"<rc\":\n f == 1 ? n.Cell.push({ type: n.Types[l.t - 1].name, index: +l.v }) : f == 0 && n.Value.push({ type: n.Types[l.t - 1].name, index: +l.v });\n break;\n case \"</rc>\":\n break;\n case \"<cellMetadata\":\n f = 1;\n break;\n case \"</cellMetadata>\":\n f = 2;\n break;\n case \"<valueMetadata\":\n f = 0;\n break;\n case \"</valueMetadata>\":\n f = 2;\n break;\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n case \"<extLst/>\":\n break;\n case \"<ext\":\n i = !0;\n break;\n case \"</ext>\":\n i = !1;\n break;\n case \"<rvb\":\n if (!c)\n break;\n c.offsets || (c.offsets = []), c.offsets.push(+l.i);\n break;\n default:\n if (!i && (r != null && r.WTF))\n throw new Error(\"unrecognized \" + l[0] + \" in metadata\");\n }\n return u;\n }), n;\n}\nfunction bw(e) {\n var t = [];\n if (!e) return t;\n var r = 1;\n return (e.match(nt) || []).forEach(function(n) {\n var i = Ie(n);\n switch (i[0]) {\n case \"<?xml\":\n break;\n /* 18.6.2 calcChain CT_CalcChain 1 */\n case \"<calcChain\":\n case \"<calcChain>\":\n case \"</calcChain>\":\n break;\n /* 18.6.1 c CT_CalcCell 1 */\n case \"<c\":\n delete i[0], i.i ? r = i.i : i.i = r, t.push(i);\n break;\n }\n }), t;\n}\nfunction Bw(e) {\n var t = {};\n t.i = e.read_shift(4);\n var r = {};\n r.r = e.read_shift(4), r.c = e.read_shift(4), t.r = hr(r);\n var n = e.read_shift(1);\n return n & 2 && (t.l = \"1\"), n & 8 && (t.a = \"1\"), t;\n}\nfunction Mw(e, t, r) {\n var n = [];\n return La(e, function(f, c, u) {\n switch (u) {\n case 63:\n n.push(f);\n break;\n default:\n if (!c.T) throw new Error(\"Unexpected record 0x\" + u.toString(16));\n }\n }), n;\n}\nfunction Uw(e, t, r, n) {\n if (!e) return e;\n var i = n || {}, f = !1;\n La(e, function(u, l, h) {\n switch (h) {\n case 359:\n /* 'BrtSupTabs' */\n case 363:\n /* 'BrtExternTableStart' */\n case 364:\n /* 'BrtExternTableEnd' */\n case 366:\n /* 'BrtExternRowHdr' */\n case 367:\n /* 'BrtExternCellBlank' */\n case 368:\n /* 'BrtExternCellReal' */\n case 369:\n /* 'BrtExternCellBool' */\n case 370:\n /* 'BrtExternCellError' */\n case 371:\n /* 'BrtExternCellString' */\n case 472:\n /* 'BrtExternValueMeta' */\n case 577:\n /* 'BrtSupNameStart' */\n case 578:\n /* 'BrtSupNameValueStart' */\n case 579:\n /* 'BrtSupNameValueEnd' */\n case 580:\n /* 'BrtSupNameNum' */\n case 581:\n /* 'BrtSupNameErr' */\n case 582:\n /* 'BrtSupNameSt' */\n case 583:\n /* 'BrtSupNameNil' */\n case 584:\n /* 'BrtSupNameBool' */\n case 585:\n /* 'BrtSupNameFmla' */\n case 586:\n /* 'BrtSupNameBits' */\n case 587:\n break;\n case 35:\n f = !0;\n break;\n case 36:\n f = !1;\n break;\n default:\n if (!l.T) {\n if (!f || i.WTF) throw new Error(\"Unexpected record 0x\" + h.toString(16));\n }\n }\n }, i);\n}\nfunction Ww(e, t) {\n if (!e) return \"??\";\n var r = (e.match(/<c:chart [^<>]*r:id=\"([^<>\"]*)\"/) || [\"\", \"\"])[1];\n return t[\"!id\"][r].Target;\n}\nfunction Hw(e, t, r) {\n var n = 0;\n (x1(e, \"shape\") || []).forEach(function(i) {\n var f = \"\", c = !0, u = -1, l = -1, h = -1;\n switch (i.replace(nt, function(m, _) {\n var v = Ie(m);\n switch (ea(v[0])) {\n case \"<ClientData\":\n v.ObjectType && (f = v.ObjectType);\n break;\n case \"<Visible\":\n case \"<Visible/>\":\n c = !1;\n break;\n case \"<Row\":\n case \"<Row>\":\n u = _ + m.length;\n break;\n case \"</Row>\":\n l = +i.slice(u, _).trim();\n break;\n case \"<Column\":\n case \"<Column>\":\n u = _ + m.length;\n break;\n case \"</Column>\":\n h = +i.slice(u, _).trim();\n break;\n }\n return \"\";\n }), f) {\n case \"Note\":\n var x = W0(t, l >= 0 && h >= 0 ? hr({ r: l, c: h }) : r[n].ref);\n x.c && (x.c.hidden = c), ++n;\n break;\n }\n });\n}\nfunction Ml(e, t, r, n) {\n var i = e[\"!data\"] != null, f;\n t.forEach(function(c) {\n var u = ot(c.ref);\n if (!(u.r < 0 || u.c < 0)) {\n if (i ? (e[\"!data\"][u.r] || (e[\"!data\"][u.r] = []), f = e[\"!data\"][u.r][u.c]) : f = e[c.ref], !f) {\n f = { t: \"z\" }, i ? e[\"!data\"][u.r][u.c] = f : e[c.ref] = f;\n var l = Br(e[\"!ref\"] || \"BDWGO1000001:A1\");\n l.s.r > u.r && (l.s.r = u.r), l.e.r < u.r && (l.e.r = u.r), l.s.c > u.c && (l.s.c = u.c), l.e.c < u.c && (l.e.c = u.c);\n var h = sr(l);\n e[\"!ref\"] = h;\n }\n f.c || (f.c = []);\n var x = { a: c.author, t: c.t, r: c.r, T: r };\n c.h && (x.h = c.h);\n for (var m = f.c.length - 1; m >= 0; --m) {\n if (!r && f.c[m].T) return;\n r && !f.c[m].T && f.c.splice(m, 1);\n }\n if (r && n) {\n for (m = 0; m < n.length; ++m)\n if (x.a == n[m].id) {\n x.a = n[m].name || x.a;\n break;\n }\n }\n f.c.push(x);\n }\n });\n}\nfunction Gw(e, t) {\n if (e.match(/<(?:\\w+:)?comments *\\/>/)) return [];\n var r = [], n = [], i = Qr(e, \"authors\");\n i && i[1] && i[1].split(/<\\/\\w*:?author>/).forEach(function(c) {\n if (!(c === \"\" || c.trim() === \"\")) {\n var u = c.match(/<(?:\\w+:)?author[^<>]*>(.*)/);\n u && r.push(u[1]);\n }\n });\n var f = Qr(e, \"commentList\");\n return f && f[1] && f[1].split(/<\\/\\w*:?comment>/).forEach(function(c) {\n if (!(c === \"\" || c.trim() === \"\")) {\n var u = c.match(/<(?:\\w+:)?comment[^<>]*>/);\n if (u) {\n var l = Ie(u[0]), h = { author: l.authorId && r[l.authorId] || \"sheetjsghost\", ref: l.ref, guid: l.guid }, x = ot(l.ref);\n if (!(t.sheetRows && t.sheetRows <= x.r)) {\n var m = Qr(c, \"text\"), _ = !!m && !!m[1] && Ec(m[1]) || { r: \"\", t: \"\", h: \"\" };\n h.r = _.r, _.r == \"<t></t>\" && (_.t = _.h = \"\"), h.t = (_.t || \"\").replace(/\\r\\n/g, `\n`).replace(/\\r/g, `\n`), t.cellHTML && (h.h = _.h), n.push(h);\n }\n }\n }\n }), n;\n}\nfunction Vw(e, t) {\n var r = [], n = !1, i = {}, f = 0;\n return e.replace(nt, function(u, l) {\n var h = Ie(u);\n switch (ea(h[0])) {\n case \"<?xml\":\n break;\n /* 2.6.207 ThreadedComments CT_ThreadedComments */\n case \"<ThreadedComments\":\n break;\n case \"</ThreadedComments>\":\n break;\n /* 2.6.205 threadedComment CT_ThreadedComment */\n case \"<threadedComment\":\n i = { author: h.personId, guid: h.id, ref: h.ref, T: 1 };\n break;\n case \"</threadedComment>\":\n i.t != null && r.push(i);\n break;\n case \"<text>\":\n case \"<text\":\n f = l + u.length;\n break;\n case \"</text>\":\n i.t = e.slice(f, l).replace(/\\r\\n/g, `\n`).replace(/\\r/g, `\n`);\n break;\n /* 2.6.206 mentions CT_ThreadedCommentMentions TODO */\n case \"<mentions\":\n case \"<mentions>\":\n n = !0;\n break;\n case \"</mentions>\":\n n = !1;\n break;\n /* 2.6.202 mention CT_Mention TODO */\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n case \"<extLst/>\":\n break;\n /* 18.2.7 ext CT_Extension + */\n case \"<ext\":\n n = !0;\n break;\n case \"</ext>\":\n n = !1;\n break;\n default:\n if (!n && t.WTF) throw new Error(\"unrecognized \" + h[0] + \" in threaded comments\");\n }\n return u;\n }), r;\n}\nfunction Xw(e, t) {\n var r = [], n = !1;\n return e.replace(nt, function(f) {\n var c = Ie(f);\n switch (ea(c[0])) {\n case \"<?xml\":\n break;\n /* 2.4.85 personList CT_PersonList */\n case \"<personList\":\n break;\n case \"</personList>\":\n break;\n /* 2.6.203 person CT_Person TODO: providers */\n case \"<person\":\n r.push({ name: c.displayname, id: c.id });\n break;\n case \"</person>\":\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n case \"<extLst/>\":\n break;\n /* 18.2.7 ext CT_Extension + */\n case \"<ext\":\n n = !0;\n break;\n case \"</ext>\":\n n = !1;\n break;\n default:\n if (!n && t.WTF) throw new Error(\"unrecognized \" + c[0] + \" in threaded comments\");\n }\n return f;\n }), r;\n}\nfunction $w(e) {\n var t = {};\n t.iauthor = e.read_shift(4);\n var r = Fn(e);\n return t.rfx = r.s, t.ref = hr(r.s), e.l += 16, t;\n}\nvar zw = lt;\nfunction Kw(e, t) {\n var r = [], n = [], i = {}, f = !1;\n return La(e, function(u, l, h) {\n switch (h) {\n case 632:\n n.push(u);\n break;\n case 635:\n i = u;\n break;\n case 637:\n i.t = u.t, i.h = u.h, i.r = u.r;\n break;\n case 636:\n if (i.author = n[i.iauthor], delete i.iauthor, t.sheetRows && i.rfx && t.sheetRows <= i.rfx.r) break;\n i.t || (i.t = \"\"), delete i.rfx, r.push(i);\n break;\n case 3072:\n break;\n case 35:\n f = !0;\n break;\n case 36:\n f = !1;\n break;\n case 37:\n break;\n case 38:\n break;\n default:\n if (!l.T) {\n if (!f || t.WTF) throw new Error(\"Unexpected record 0x\" + h.toString(16));\n }\n }\n }), r;\n}\nvar Yw = \"application/vnd.ms-office.vbaProject\";\nfunction Zw(e) {\n var t = or.utils.cfb_new({ root: \"R\" });\n return e.FullPaths.forEach(function(r, n) {\n if (!(r.slice(-1) === \"/\" || !r.match(/_VBA_PROJECT_CUR/))) {\n var i = r.replace(/^[^\\/]*/, \"R\").replace(/\\/_VBA_PROJECT_CUR\\u0000*/, \"\");\n or.utils.cfb_add(t, i, e.FileIndex[n].content);\n }\n }), or.write(t);\n}\nfunction Jw() {\n return { \"!type\": \"dialog\" };\n}\nfunction qw() {\n return { \"!type\": \"dialog\" };\n}\nfunction Qw() {\n return { \"!type\": \"macro\" };\n}\nfunction jw() {\n return { \"!type\": \"macro\" };\n}\nvar _n = /* @__PURE__ */ function() {\n var e = /(^|[^A-Za-z_])R(\\[?-?\\d+\\]|[1-9]\\d*|)C(\\[?-?\\d+\\]|[1-9]\\d*|)(?![A-Za-z0-9_])/g, t = { r: 0, c: 0 };\n function r(n, i, f, c) {\n var u = !1, l = !1;\n f.length == 0 ? l = !0 : f.charAt(0) == \"[\" && (l = !0, f = f.slice(1, -1)), c.length == 0 ? u = !0 : c.charAt(0) == \"[\" && (u = !0, c = c.slice(1, -1));\n var h = f.length > 0 ? parseInt(f, 10) | 0 : 0, x = c.length > 0 ? parseInt(c, 10) | 0 : 0;\n return u ? x += t.c : --x, l ? h += t.r : --h, i + (u ? \"\" : \"$\") + xr(x) + (l ? \"\" : \"$\") + _r(h);\n }\n return function(i, f) {\n return t = f, i.replace(e, r);\n };\n}(), wc = /(^|[^._A-Z0-9])(\\$?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])(\\$?)(\\d{1,7})(?![_.\\(A-Za-z0-9])/g;\ntry {\n wc = /(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\\d{4}|104[0-7]\\d{3}|1048[0-4]\\d{2}|10485[0-6]\\d|104857[0-6]|[1-9]\\d{0,5})(?![_.\\(A-Za-z0-9])/g;\n} catch {\n}\nvar ek = /* @__PURE__ */ function() {\n return function(t, r) {\n return t.replace(wc, function(n, i, f, c, u, l) {\n var h = pc(c) - (f ? 0 : r.c), x = vc(l) - (u ? 0 : r.r), m = u == \"$\" ? x + 1 : x == 0 ? \"\" : \"[\" + x + \"]\", _ = f == \"$\" ? h + 1 : h == 0 ? \"\" : \"[\" + h + \"]\";\n return i + \"R\" + m + \"C\" + _;\n });\n };\n}();\nfunction fh(e, t) {\n return e.replace(wc, function(r, n, i, f, c, u) {\n return n + (i == \"$\" ? i + f : xr(pc(f) + t.c)) + (c == \"$\" ? c + u : _r(vc(u) + t.r));\n });\n}\nfunction Ul(e, t, r) {\n var n = kn(t), i = n.s, f = ot(r), c = { r: f.r - i.r, c: f.c - i.c };\n return fh(e, c);\n}\nfunction rk(e) {\n return e.length != 1;\n}\nfunction Wl(e) {\n return e.replace(/_xlfn\\./g, \"\");\n}\nfunction Mr(e) {\n e.l += 1;\n}\nfunction ja(e, t) {\n var r = e.read_shift(2);\n return [r & 16383, r >> 14 & 1, r >> 15 & 1];\n}\nfunction ch(e, t, r) {\n var n = 2;\n if (r) {\n if (r.biff >= 2 && r.biff <= 5) return uh(e);\n r.biff == 12 && (n = 4);\n }\n var i = e.read_shift(n), f = e.read_shift(n), c = ja(e), u = ja(e);\n return { s: { r: i, c: c[0], cRel: c[1], rRel: c[2] }, e: { r: f, c: u[0], cRel: u[1], rRel: u[2] } };\n}\nfunction uh(e) {\n var t = ja(e), r = ja(e), n = e.read_shift(1), i = e.read_shift(1);\n return { s: { r: t[0], c: n, cRel: t[1], rRel: t[2] }, e: { r: r[0], c: i, cRel: r[1], rRel: r[2] } };\n}\nfunction tk(e, t, r) {\n if (r.biff < 8) return uh(e);\n var n = e.read_shift(r.biff == 12 ? 4 : 2), i = e.read_shift(r.biff == 12 ? 4 : 2), f = ja(e), c = ja(e);\n return { s: { r: n, c: f[0], cRel: f[1], rRel: f[2] }, e: { r: i, c: c[0], cRel: c[1], rRel: c[2] } };\n}\nfunction oh(e, t, r) {\n if (r && r.biff >= 2 && r.biff <= 5) return ak(e);\n var n = e.read_shift(r && r.biff == 12 ? 4 : 2), i = ja(e);\n return { r: n, c: i[0], cRel: i[1], rRel: i[2] };\n}\nfunction ak(e) {\n var t = ja(e), r = e.read_shift(1);\n return { r: t[0], c: r, cRel: t[1], rRel: t[2] };\n}\nfunction nk(e) {\n var t = e.read_shift(2), r = e.read_shift(2);\n return { r: t, c: r & 255, fQuoted: !!(r & 16384), cRel: r >> 15, rRel: r >> 15 };\n}\nfunction ik(e, t, r) {\n var n = r && r.biff ? r.biff : 8;\n if (n >= 2 && n <= 5) return sk(e);\n var i = e.read_shift(n >= 12 ? 4 : 2), f = e.read_shift(2), c = (f & 16384) >> 14, u = (f & 32768) >> 15;\n if (f &= 16383, u == 1) for (; i > 524287; ) i -= 1048576;\n if (c == 1) for (; f > 8191; ) f = f - 16384;\n return { r: i, c: f, cRel: c, rRel: u };\n}\nfunction sk(e) {\n var t = e.read_shift(2), r = e.read_shift(1), n = (t & 32768) >> 15, i = (t & 16384) >> 14;\n return t &= 16383, n == 1 && t >= 8192 && (t = t - 16384), i == 1 && r >= 128 && (r = r - 256), { r: t, c: r, cRel: i, rRel: n };\n}\nfunction fk(e, t, r) {\n var n = (e[e.l++] & 96) >> 5, i = ch(e, r.biff >= 2 && r.biff <= 5 ? 6 : 8, r);\n return [n, i];\n}\nfunction ck(e, t, r) {\n var n = (e[e.l++] & 96) >> 5, i = e.read_shift(2, \"i\"), f = 8;\n if (r) switch (r.biff) {\n case 5:\n e.l += 12, f = 6;\n break;\n case 12:\n f = 12;\n break;\n }\n var c = ch(e, f, r);\n return [n, i, c];\n}\nfunction uk(e, t, r) {\n var n = (e[e.l++] & 96) >> 5;\n return e.l += r && r.biff > 8 ? 12 : r.biff < 8 ? 6 : 8, [n];\n}\nfunction ok(e, t, r) {\n var n = (e[e.l++] & 96) >> 5, i = e.read_shift(2), f = 8;\n if (r) switch (r.biff) {\n case 5:\n e.l += 12, f = 6;\n break;\n case 12:\n f = 12;\n break;\n }\n return e.l += f, [n, i];\n}\nfunction lk(e, t, r) {\n var n = (e[e.l++] & 96) >> 5, i = tk(e, t - 1, r);\n return [n, i];\n}\nfunction hk(e, t, r) {\n var n = (e[e.l++] & 96) >> 5;\n return e.l += r.biff == 2 ? 6 : r.biff == 12 ? 14 : 7, [n];\n}\nfunction Hl(e) {\n var t = e[e.l + 1] & 1, r = 1;\n return e.l += 4, [t, r];\n}\nfunction xk(e, t, r) {\n e.l += 2;\n for (var n = e.read_shift(r && r.biff == 2 ? 1 : 2), i = [], f = 0; f <= n; ++f) i.push(e.read_shift(r && r.biff == 2 ? 1 : 2));\n return i;\n}\nfunction dk(e, t, r) {\n var n = e[e.l + 1] & 255 ? 1 : 0;\n return e.l += 2, [n, e.read_shift(r && r.biff == 2 ? 1 : 2)];\n}\nfunction vk(e, t, r) {\n var n = e[e.l + 1] & 255 ? 1 : 0;\n return e.l += 2, [n, e.read_shift(r && r.biff == 2 ? 1 : 2)];\n}\nfunction pk(e) {\n var t = e[e.l + 1] & 255 ? 1 : 0;\n return e.l += 2, [t, e.read_shift(2)];\n}\nfunction gk(e, t, r) {\n var n = e[e.l + 1] & 255 ? 1 : 0;\n return e.l += r && r.biff == 2 ? 3 : 4, [n];\n}\nfunction lh(e) {\n var t = e.read_shift(1), r = e.read_shift(1);\n return [t, r];\n}\nfunction _k(e) {\n return e.read_shift(2), lh(e);\n}\nfunction mk(e) {\n return e.read_shift(2), lh(e);\n}\nfunction Ek(e, t, r) {\n var n = (e[e.l] & 96) >> 5;\n e.l += 1;\n var i = oh(e, 0, r);\n return [n, i];\n}\nfunction Tk(e, t, r) {\n var n = (e[e.l] & 96) >> 5;\n e.l += 1;\n var i = ik(e, 0, r);\n return [n, i];\n}\nfunction wk(e, t, r) {\n var n = (e[e.l] & 96) >> 5;\n e.l += 1;\n var i = e.read_shift(2);\n r && r.biff == 5 && (e.l += 12);\n var f = oh(e, 0, r);\n return [n, i, f];\n}\nfunction kk(e, t, r) {\n var n = (e[e.l] & 96) >> 5;\n e.l += 1;\n var i = e.read_shift(r && r.biff <= 3 ? 1 : 2);\n return [A3[i], dh[i], n];\n}\nfunction Ak(e, t, r) {\n var n = e[e.l++], i = e.read_shift(1), f = r && r.biff <= 3 ? [n == 88 ? -1 : 0, e.read_shift(1)] : Fk(e);\n return [i, (f[0] === 0 ? dh : k3)[f[1]]];\n}\nfunction Fk(e) {\n return [e[e.l + 1] >> 7, e.read_shift(2) & 32767];\n}\nfunction Sk(e, t, r) {\n e.l += r && r.biff == 2 ? 3 : 4;\n}\nfunction Ck(e, t, r) {\n if (e.l++, r && r.biff == 12) return [e.read_shift(4, \"i\"), 0];\n var n = e.read_shift(2), i = e.read_shift(r && r.biff == 2 ? 1 : 2);\n return [n, i];\n}\nfunction yk(e) {\n return e.l++, Ct[e.read_shift(1)];\n}\nfunction Ik(e) {\n return e.l++, e.read_shift(2);\n}\nfunction Ok(e) {\n return e.l++, e.read_shift(1) !== 0;\n}\nfunction Dk(e) {\n return e.l++, ut(e);\n}\nfunction Rk(e, t, r) {\n return e.l++, Jn(e, t - 1, r);\n}\nfunction Nk(e, t) {\n var r = [e.read_shift(1)];\n if (t == 12) switch (r[0]) {\n case 2:\n r[0] = 4;\n break;\n /* SerBool */\n case 4:\n r[0] = 16;\n break;\n /* SerErr */\n case 0:\n r[0] = 1;\n break;\n /* SerNum */\n case 1:\n r[0] = 2;\n break;\n }\n switch (r[0]) {\n case 4:\n r[1] = br(e, 1) ? \"TRUE\" : \"FALSE\", t != 12 && (e.l += 7);\n break;\n case 37:\n /* appears to be an alias */\n case 16:\n r[1] = Ct[e[e.l]], e.l += t == 12 ? 4 : 8;\n break;\n case 0:\n e.l += 8;\n break;\n case 1:\n r[1] = ut(e);\n break;\n case 2:\n r[1] = Sn(e, 0, { biff: t > 0 && t < 8 ? 2 : t });\n break;\n default:\n throw new Error(\"Bad SerAr: \" + r[0]);\n }\n return r;\n}\nfunction Lk(e, t, r) {\n for (var n = e.read_shift(r.biff == 12 ? 4 : 2), i = [], f = 0; f != n; ++f) i.push((r.biff == 12 ? Fn : ps)(e));\n return i;\n}\nfunction Pk(e, t, r) {\n var n = 0, i = 0;\n r.biff == 12 ? (n = e.read_shift(4), i = e.read_shift(4)) : (i = 1 + e.read_shift(1), n = 1 + e.read_shift(2)), r.biff >= 2 && r.biff < 8 && (--n, --i == 0 && (i = 256));\n for (var f = 0, c = []; f != n && (c[f] = []); ++f)\n for (var u = 0; u != i; ++u) c[f][u] = Nk(e, r.biff);\n return c;\n}\nfunction bk(e, t, r) {\n var n = e.read_shift(1) >>> 5 & 3, i = !r || r.biff >= 8 ? 4 : 2, f = e.read_shift(i);\n switch (r.biff) {\n case 2:\n e.l += 5;\n break;\n case 3:\n case 4:\n e.l += 8;\n break;\n case 5:\n e.l += 12;\n break;\n }\n return [n, 0, f];\n}\nfunction Bk(e, t, r) {\n if (r.biff == 5) return Mk(e);\n var n = e.read_shift(1) >>> 5 & 3, i = e.read_shift(2), f = e.read_shift(4);\n return [n, i, f];\n}\nfunction Mk(e) {\n var t = e.read_shift(1) >>> 5 & 3, r = e.read_shift(2, \"i\");\n e.l += 8;\n var n = e.read_shift(2);\n return e.l += 12, [t, r, n];\n}\nfunction Uk(e, t, r) {\n var n = e.read_shift(1) >>> 5 & 3;\n e.l += r && r.biff == 2 ? 3 : 4;\n var i = e.read_shift(r && r.biff == 2 ? 1 : 2);\n return [n, i];\n}\nfunction Wk(e, t, r) {\n var n = e.read_shift(1) >>> 5 & 3, i = e.read_shift(r && r.biff == 2 ? 1 : 2);\n return [n, i];\n}\nfunction Hk(e, t, r) {\n var n = e.read_shift(1) >>> 5 & 3;\n return e.l += 4, r.biff < 8 && e.l--, r.biff == 12 && (e.l += 2), [n];\n}\nfunction Gk(e, t, r) {\n var n = (e[e.l++] & 96) >> 5, i = e.read_shift(2), f = 4;\n if (r) switch (r.biff) {\n case 5:\n f = 15;\n break;\n case 12:\n f = 6;\n break;\n }\n return e.l += f, [n, i];\n}\nvar Vk = ht, Xk = ht, $k = ht;\nfunction X0(e, t, r) {\n return e.l += 2, [nk(e)];\n}\nfunction kc(e) {\n return e.l += 6, [];\n}\nvar zk = X0, Kk = kc, Yk = kc, Zk = X0;\nfunction hh(e) {\n return e.l += 2, [Rr(e), e.read_shift(2) & 1];\n}\nvar Jk = X0, qk = hh, Qk = kc, jk = X0, e3 = X0, r3 = [\n \"Data\",\n \"All\",\n \"Headers\",\n \"??\",\n \"?Data2\",\n \"??\",\n \"?DataHeaders\",\n \"??\",\n \"Totals\",\n \"??\",\n \"??\",\n \"??\",\n \"?DataTotals\",\n \"??\",\n \"??\",\n \"??\",\n \"?Current\"\n];\nfunction t3(e) {\n e.l += 2;\n var t = e.read_shift(2), r = e.read_shift(2), n = e.read_shift(4), i = e.read_shift(2), f = e.read_shift(2), c = r3[r >> 2 & 31];\n return { ixti: t, coltype: r & 3, rt: c, idx: n, c: i, C: f };\n}\nfunction a3(e) {\n return e.l += 2, [e.read_shift(4)];\n}\nfunction n3(e, t, r) {\n return e.l += 5, e.l += 2, e.l += r.biff == 2 ? 1 : 4, [\"PTGSHEET\"];\n}\nfunction i3(e, t, r) {\n return e.l += r.biff == 2 ? 4 : 5, [\"PTGENDSHEET\"];\n}\nfunction s3(e) {\n var t = e.read_shift(1) >>> 5 & 3, r = e.read_shift(2);\n return [t, r];\n}\nfunction f3(e) {\n var t = e.read_shift(1) >>> 5 & 3, r = e.read_shift(2);\n return [t, r];\n}\nfunction c3(e) {\n return e.l += 4, [0, 0];\n}\nvar Gl = {\n 1: { n: \"PtgExp\", f: Ck },\n 2: { n: \"PtgTbl\", f: $k },\n 3: { n: \"PtgAdd\", f: Mr },\n 4: { n: \"PtgSub\", f: Mr },\n 5: { n: \"PtgMul\", f: Mr },\n 6: { n: \"PtgDiv\", f: Mr },\n 7: { n: \"PtgPower\", f: Mr },\n 8: { n: \"PtgConcat\", f: Mr },\n 9: { n: \"PtgLt\", f: Mr },\n 10: { n: \"PtgLe\", f: Mr },\n 11: { n: \"PtgEq\", f: Mr },\n 12: { n: \"PtgGe\", f: Mr },\n 13: { n: \"PtgGt\", f: Mr },\n 14: { n: \"PtgNe\", f: Mr },\n 15: { n: \"PtgIsect\", f: Mr },\n 16: { n: \"PtgUnion\", f: Mr },\n 17: { n: \"PtgRange\", f: Mr },\n 18: { n: \"PtgUplus\", f: Mr },\n 19: { n: \"PtgUminus\", f: Mr },\n 20: { n: \"PtgPercent\", f: Mr },\n 21: { n: \"PtgParen\", f: Mr },\n 22: { n: \"PtgMissArg\", f: Mr },\n 23: { n: \"PtgStr\", f: Rk },\n 26: { n: \"PtgSheet\", f: n3 },\n 27: { n: \"PtgEndSheet\", f: i3 },\n 28: { n: \"PtgErr\", f: yk },\n 29: { n: \"PtgBool\", f: Ok },\n 30: { n: \"PtgInt\", f: Ik },\n 31: { n: \"PtgNum\", f: Dk },\n 32: { n: \"PtgArray\", f: hk },\n 33: { n: \"PtgFunc\", f: kk },\n 34: { n: \"PtgFuncVar\", f: Ak },\n 35: { n: \"PtgName\", f: bk },\n 36: { n: \"PtgRef\", f: Ek },\n 37: { n: \"PtgArea\", f: fk },\n 38: { n: \"PtgMemArea\", f: Uk },\n 39: { n: \"PtgMemErr\", f: Vk },\n 40: { n: \"PtgMemNoMem\", f: Xk },\n 41: { n: \"PtgMemFunc\", f: Wk },\n 42: { n: \"PtgRefErr\", f: Hk },\n 43: { n: \"PtgAreaErr\", f: uk },\n 44: { n: \"PtgRefN\", f: Tk },\n 45: { n: \"PtgAreaN\", f: lk },\n 46: { n: \"PtgMemAreaN\", f: s3 },\n 47: { n: \"PtgMemNoMemN\", f: f3 },\n 57: { n: \"PtgNameX\", f: Bk },\n 58: { n: \"PtgRef3d\", f: wk },\n 59: { n: \"PtgArea3d\", f: ck },\n 60: { n: \"PtgRefErr3d\", f: Gk },\n 61: { n: \"PtgAreaErr3d\", f: ok },\n 255: {}\n}, u3 = {\n 64: 32,\n 96: 32,\n 65: 33,\n 97: 33,\n 66: 34,\n 98: 34,\n 67: 35,\n 99: 35,\n 68: 36,\n 100: 36,\n 69: 37,\n 101: 37,\n 70: 38,\n 102: 38,\n 71: 39,\n 103: 39,\n 72: 40,\n 104: 40,\n 73: 41,\n 105: 41,\n 74: 42,\n 106: 42,\n 75: 43,\n 107: 43,\n 76: 44,\n 108: 44,\n 77: 45,\n 109: 45,\n 78: 46,\n 110: 46,\n 79: 47,\n 111: 47,\n 88: 34,\n 120: 34,\n 89: 57,\n 121: 57,\n 90: 58,\n 122: 58,\n 91: 59,\n 123: 59,\n 92: 60,\n 124: 60,\n 93: 61,\n 125: 61\n}, o3 = {\n 1: { n: \"PtgElfLel\", f: hh },\n 2: { n: \"PtgElfRw\", f: jk },\n 3: { n: \"PtgElfCol\", f: zk },\n 6: { n: \"PtgElfRwV\", f: e3 },\n 7: { n: \"PtgElfColV\", f: Zk },\n 10: { n: \"PtgElfRadical\", f: Jk },\n 11: { n: \"PtgElfRadicalS\", f: Qk },\n 13: { n: \"PtgElfColS\", f: Kk },\n 15: { n: \"PtgElfColSV\", f: Yk },\n 16: { n: \"PtgElfRadicalLel\", f: qk },\n 25: { n: \"PtgList\", f: t3 },\n 29: { n: \"PtgSxName\", f: a3 },\n 255: {}\n}, l3 = {\n 0: { n: \"PtgAttrNoop\", f: c3 },\n 1: { n: \"PtgAttrSemi\", f: gk },\n 2: { n: \"PtgAttrIf\", f: vk },\n 4: { n: \"PtgAttrChoose\", f: xk },\n 8: { n: \"PtgAttrGoto\", f: dk },\n 16: { n: \"PtgAttrSum\", f: Sk },\n 32: { n: \"PtgAttrBaxcel\", f: Hl },\n 33: { n: \"PtgAttrBaxcel\", f: Hl },\n 64: { n: \"PtgAttrSpace\", f: _k },\n 65: { n: \"PtgAttrSpaceSemi\", f: mk },\n 128: { n: \"PtgAttrIfError\", f: pk },\n 255: {}\n};\nfunction $0(e, t, r, n) {\n if (n.biff < 8) return ht(e, t);\n for (var i = e.l + t, f = [], c = 0; c !== r.length; ++c)\n switch (r[c][0]) {\n case \"PtgArray\":\n r[c][1] = Pk(e, 0, n), f.push(r[c][1]);\n break;\n case \"PtgMemArea\":\n r[c][2] = Lk(e, r[c][1], n), f.push(r[c][2]);\n break;\n case \"PtgExp\":\n n && n.biff == 12 && (r[c][1][1] = e.read_shift(4), f.push(r[c][1]));\n break;\n case \"PtgList\":\n /* TODO: PtgList -> PtgExtraList */\n case \"PtgElfRadicalS\":\n /* TODO: PtgElfRadicalS -> PtgExtraElf */\n case \"PtgElfColS\":\n /* TODO: PtgElfColS -> PtgExtraElf */\n case \"PtgElfColSV\":\n throw \"Unsupported \" + r[c][0];\n }\n return t = i - e.l, t !== 0 && f.push(ht(e, t)), f;\n}\nfunction z0(e, t, r) {\n for (var n = e.l + t, i, f, c = []; n != e.l; )\n t = n - e.l, f = e[e.l], i = Gl[f] || Gl[u3[f]], (f === 24 || f === 25) && (i = (f === 24 ? o3 : l3)[e[e.l + 1]]), !i || !i.f ? ht(e, t) : c.push([i.n, i.f(e, t, r)]);\n return c;\n}\nfunction h3(e) {\n for (var t = [], r = 0; r < e.length; ++r) {\n for (var n = e[r], i = [], f = 0; f < n.length; ++f) {\n var c = n[f];\n if (c) switch (c[0]) {\n // TODO: handle embedded quotes\n case 2:\n i.push('\"' + c[1].replace(/\"/g, '\"\"') + '\"');\n break;\n default:\n i.push(c[1]);\n }\n else i.push(\"\");\n }\n t.push(i.join(\",\"));\n }\n return t.join(\";\");\n}\nvar x3 = {\n PtgAdd: \"+\",\n PtgConcat: \"&\",\n PtgDiv: \"/\",\n PtgEq: \"=\",\n PtgGe: \">=\",\n PtgGt: \">\",\n PtgLe: \"<=\",\n PtgLt: \"<\",\n PtgMul: \"*\",\n PtgNe: \"<>\",\n PtgPower: \"^\",\n PtgSub: \"-\"\n};\nfunction d3(e, t) {\n var r = e.lastIndexOf(\"!\"), n = t.lastIndexOf(\"!\");\n return r == -1 && n == -1 ? e + \":\" + t : r > 0 && n > 0 && e.slice(0, r).toLowerCase() == t.slice(0, n).toLowerCase() ? e + \":\" + t.slice(n + 1) : (console.error(\"Cannot hydrate range\", e, t), e + \":\" + t);\n}\nfunction xh(e, t, r) {\n if (!e) return \"SH33TJSERR0\";\n if (r.biff > 8 && (!e.XTI || !e.XTI[t])) return e.SheetNames[t];\n if (!e.XTI) return \"SH33TJSERR6\";\n var n = e.XTI[t];\n if (r.biff < 8)\n return t > 1e4 && (t -= 65536), t < 0 && (t = -t), t == 0 ? \"\" : e.XTI[t - 1];\n if (!n) return \"SH33TJSERR1\";\n var i = \"\";\n if (r.biff > 8) switch (e[n[0]][0]) {\n case 357:\n return i = n[1] == -1 ? \"#REF\" : e.SheetNames[n[1]], n[1] == n[2] ? i : i + \":\" + e.SheetNames[n[2]];\n case 358:\n return r.SID != null ? e.SheetNames[r.SID] : \"SH33TJSSAME\" + e[n[0]][0];\n case 355:\n /* 'BrtSupBookSrc' */\n /* falls through */\n default:\n return \"SH33TJSSRC\" + e[n[0]][0];\n }\n switch (e[n[0]][0][0]) {\n case 1025:\n return i = n[1] == -1 ? \"#REF\" : e.SheetNames[n[1]] || \"SH33TJSERR3\", n[1] == n[2] ? i : i + \":\" + e.SheetNames[n[2]];\n case 14849:\n return e[n[0]].slice(1).map(function(f) {\n return f.Name;\n }).join(\";;\");\n //return \"SH33TJSERR8\";\n default:\n return e[n[0]][0][3] ? (i = n[1] == -1 ? \"#REF\" : e[n[0]][0][3][n[1]] || \"SH33TJSERR4\", n[1] == n[2] ? i : i + \":\" + e[n[0]][0][3][n[2]]) : \"SH33TJSERR2\";\n }\n}\nfunction Vl(e, t, r) {\n var n = xh(e, t, r);\n return n == \"#REF\" ? n : x4(n, r);\n}\nfunction ct(e, t, r, n, i) {\n var f = i && i.biff || 8, c = (\n /*range != null ? range :*/\n { s: { c: 0, r: 0 } }\n ), u = [], l, h, x, m = 0, _ = 0, v, T = \"\";\n if (!e[0] || !e[0][0]) return \"\";\n for (var A = -1, g = \"\", p = 0, y = e[0].length; p < y; ++p) {\n var w = e[0][p];\n switch (w[0]) {\n case \"PtgUminus\":\n u.push(\"-\" + u.pop());\n break;\n case \"PtgUplus\":\n u.push(\"+\" + u.pop());\n break;\n case \"PtgPercent\":\n u.push(u.pop() + \"%\");\n break;\n case \"PtgAdd\":\n /* [MS-XLS] 2.5.198.26 */\n case \"PtgConcat\":\n /* [MS-XLS] 2.5.198.43 */\n case \"PtgDiv\":\n /* [MS-XLS] 2.5.198.45 */\n case \"PtgEq\":\n /* [MS-XLS] 2.5.198.56 */\n case \"PtgGe\":\n /* [MS-XLS] 2.5.198.64 */\n case \"PtgGt\":\n /* [MS-XLS] 2.5.198.65 */\n case \"PtgLe\":\n /* [MS-XLS] 2.5.198.68 */\n case \"PtgLt\":\n /* [MS-XLS] 2.5.198.69 */\n case \"PtgMul\":\n /* [MS-XLS] 2.5.198.75 */\n case \"PtgNe\":\n /* [MS-XLS] 2.5.198.78 */\n case \"PtgPower\":\n /* [MS-XLS] 2.5.198.82 */\n case \"PtgSub\":\n if (l = u.pop(), h = u.pop(), A >= 0) {\n switch (e[0][A][1][0]) {\n case 0:\n g = ur(\" \", e[0][A][1][1]);\n break;\n case 1:\n g = ur(\"\\r\", e[0][A][1][1]);\n break;\n default:\n if (g = \"\", i.WTF) throw new Error(\"Unexpected PtgAttrSpaceType \" + e[0][A][1][0]);\n }\n h = h + g, A = -1;\n }\n u.push(h + x3[w[0]] + l);\n break;\n case \"PtgIsect\":\n l = u.pop(), h = u.pop(), u.push(h + \" \" + l);\n break;\n case \"PtgUnion\":\n l = u.pop(), h = u.pop(), u.push(h + \",\" + l);\n break;\n case \"PtgRange\":\n l = u.pop(), h = u.pop(), u.push(d3(h, l));\n break;\n case \"PtgAttrChoose\":\n break;\n case \"PtgAttrGoto\":\n break;\n case \"PtgAttrIf\":\n break;\n case \"PtgAttrIfError\":\n break;\n case \"PtgRef\":\n x = A0(w[1][1], c, i), u.push(F0(x, f));\n break;\n case \"PtgRefN\":\n x = r ? A0(w[1][1], r, i) : w[1][1], u.push(F0(x, f));\n break;\n case \"PtgRef3d\":\n m = /*::Number(*/\n w[1][1], x = A0(w[1][2], c, i), T = Vl(n, m, i), u.push(T + \"!\" + F0(x, f));\n break;\n case \"PtgFunc\":\n /* [MS-XLS] 2.5.198.62 */\n case \"PtgFuncVar\":\n var P = w[1][0], V = w[1][1];\n P || (P = 0), P &= 127;\n var Z = P == 0 ? [] : u.slice(-P);\n u.length -= P, V === \"User\" && (V = Z.shift()), u.push(V + \"(\" + Z.join(\",\") + \")\");\n break;\n case \"PtgBool\":\n u.push(w[1] ? \"TRUE\" : \"FALSE\");\n break;\n case \"PtgInt\":\n u.push(\n /*::String(*/\n w[1]\n /*::)*/\n );\n break;\n case \"PtgNum\":\n u.push(String(w[1]));\n break;\n case \"PtgStr\":\n u.push('\"' + w[1].replace(/\"/g, '\"\"') + '\"');\n break;\n case \"PtgErr\":\n u.push(\n /*::String(*/\n w[1]\n /*::)*/\n );\n break;\n case \"PtgAreaN\":\n v = Tl(w[1][1], r ? { s: r } : c, i), u.push(Vf(v, i));\n break;\n case \"PtgArea\":\n v = Tl(w[1][1], c, i), u.push(Vf(v, i));\n break;\n case \"PtgArea3d\":\n m = /*::Number(*/\n w[1][1], v = w[1][2], T = Vl(n, m, i), u.push(T + \"!\" + Vf(v, i));\n break;\n case \"PtgAttrSum\":\n u.push(\"SUM(\" + u.pop() + \")\");\n break;\n case \"PtgAttrBaxcel\":\n /* [MS-XLS] 2.5.198.33 */\n case \"PtgAttrSemi\":\n break;\n case \"PtgName\":\n _ = w[1][2];\n var M = (n.names || [])[_ - 1] || (n[0] || [])[_], G = M ? M.Name : \"SH33TJSNAME\" + String(_);\n G && G.slice(0, 6) == \"_xlfn.\" && !i.xlfn && (G = G.slice(6)), u.push(G);\n break;\n case \"PtgNameX\":\n var U = w[1][1];\n _ = w[1][2];\n var J;\n if (i.biff <= 5)\n U < 0 && (U = -U), n[U] && (J = n[U][_]);\n else {\n var z = \"\";\n if (((n[U] || [])[0] || [])[0] == 14849 || (((n[U] || [])[0] || [])[0] == 1025 ? n[U][_] && n[U][_].itab > 0 && (z = n.SheetNames[n[U][_].itab - 1] + \"!\") : z = n.SheetNames[_ - 1] + \"!\"), n[U] && n[U][_]) z += n[U][_].Name;\n else if (n[0] && n[0][_]) z += n[0][_].Name;\n else {\n var re = (xh(n, U, i) || \"\").split(\";;\");\n re[_ - 1] ? z = re[_ - 1] : z += \"SH33TJSERRX\";\n }\n u.push(z);\n break;\n }\n J || (J = { Name: \"SH33TJSERRY\" }), u.push(J.Name);\n break;\n case \"PtgParen\":\n var ne = \"(\", Ae = \")\";\n if (A >= 0) {\n switch (g = \"\", e[0][A][1][0]) {\n // $FlowIgnore\n case 2:\n ne = ur(\" \", e[0][A][1][1]) + ne;\n break;\n // $FlowIgnore\n case 3:\n ne = ur(\"\\r\", e[0][A][1][1]) + ne;\n break;\n // $FlowIgnore\n case 4:\n Ae = ur(\" \", e[0][A][1][1]) + Ae;\n break;\n // $FlowIgnore\n case 5:\n Ae = ur(\"\\r\", e[0][A][1][1]) + Ae;\n break;\n default:\n if (i.WTF) throw new Error(\"Unexpected PtgAttrSpaceType \" + e[0][A][1][0]);\n }\n A = -1;\n }\n u.push(ne + u.pop() + Ae);\n break;\n case \"PtgRefErr\":\n u.push(\"#REF!\");\n break;\n case \"PtgRefErr3d\":\n u.push(\"#REF!\");\n break;\n case \"PtgExp\":\n x = { c: w[1][1], r: w[1][0] };\n var he = { c: r.c, r: r.r };\n if (n.sharedf[hr(x)]) {\n var De = n.sharedf[hr(x)];\n u.push(ct(De, c, he, n, i));\n } else {\n var le = !1;\n for (l = 0; l != n.arrayf.length; ++l)\n if (h = n.arrayf[l], !(x.c < h[0].s.c || x.c > h[0].e.c) && !(x.r < h[0].s.r || x.r > h[0].e.r)) {\n u.push(ct(h[1], c, he, n, i)), le = !0;\n break;\n }\n le || u.push(\n /*::String(*/\n w[1]\n /*::)*/\n );\n }\n break;\n case \"PtgArray\":\n u.push(\"{\" + h3(\n /*::(*/\n w[1]\n /*:: :any)*/\n ) + \"}\");\n break;\n case \"PtgMemArea\":\n break;\n case \"PtgAttrSpace\":\n /* [MS-XLS] 2.5.198.38 */\n case \"PtgAttrSpaceSemi\":\n A = p;\n break;\n case \"PtgTbl\":\n break;\n case \"PtgMemErr\":\n break;\n case \"PtgMissArg\":\n u.push(\"\");\n break;\n case \"PtgAreaErr\":\n u.push(\"#REF!\");\n break;\n case \"PtgAreaErr3d\":\n u.push(\"#REF!\");\n break;\n case \"PtgList\":\n u.push(\"Table\" + w[1].idx + \"[#\" + w[1].rt + \"]\");\n break;\n case \"PtgMemAreaN\":\n case \"PtgMemNoMemN\":\n case \"PtgAttrNoop\":\n case \"PtgSheet\":\n case \"PtgEndSheet\":\n break;\n case \"PtgMemFunc\":\n break;\n case \"PtgMemNoMem\":\n break;\n case \"PtgElfCol\":\n /* [MS-XLS] 2.5.198.46 */\n case \"PtgElfColS\":\n /* [MS-XLS] 2.5.198.47 */\n case \"PtgElfColSV\":\n /* [MS-XLS] 2.5.198.48 */\n case \"PtgElfColV\":\n /* [MS-XLS] 2.5.198.49 */\n case \"PtgElfLel\":\n /* [MS-XLS] 2.5.198.50 */\n case \"PtgElfRadical\":\n /* [MS-XLS] 2.5.198.51 */\n case \"PtgElfRadicalLel\":\n /* [MS-XLS] 2.5.198.52 */\n case \"PtgElfRadicalS\":\n /* [MS-XLS] 2.5.198.53 */\n case \"PtgElfRw\":\n /* [MS-XLS] 2.5.198.54 */\n case \"PtgElfRwV\":\n throw new Error(\"Unsupported ELFs\");\n case \"PtgSxName\":\n throw new Error(\"Unrecognized Formula Token: \" + String(w));\n default:\n throw new Error(\"Unrecognized Formula Token: \" + String(w));\n }\n var Ee = [\"PtgAttrSpace\", \"PtgAttrSpaceSemi\", \"PtgAttrGoto\"];\n if (i.biff != 3 && A >= 0 && Ee.indexOf(e[0][p][0]) == -1) {\n w = e[0][A];\n var be = !0;\n switch (w[1][0]) {\n /* note: some bad XLSB files omit the PtgParen */\n case 4:\n be = !1;\n /* falls through */\n case 0:\n g = ur(\" \", w[1][1]);\n break;\n case 5:\n be = !1;\n /* falls through */\n case 1:\n g = ur(\"\\r\", w[1][1]);\n break;\n default:\n if (g = \"\", i.WTF) throw new Error(\"Unexpected PtgAttrSpaceType \" + w[1][0]);\n }\n u.push((be ? g : \"\") + u.pop() + (be ? \"\" : g)), A = -1;\n }\n }\n if (u.length > 1 && i.WTF) throw new Error(\"bad formula stack\");\n return u[0] == \"TRUE\" ? !0 : u[0] == \"FALSE\" ? !1 : u[0];\n}\nfunction v3(e, t, r) {\n var n = e.l + t, i = r.biff == 2 ? 1 : 2, f, c = e.read_shift(i);\n if (c == 65535) return [[], ht(e, t - 2)];\n var u = z0(e, c, r);\n return t !== c + i && (f = $0(e, t - c - i, u, r)), e.l = n, [u, f];\n}\nfunction p3(e, t, r) {\n var n = e.l + t, i = r.biff == 2 ? 1 : 2, f, c = e.read_shift(i);\n if (c == 65535) return [[], ht(e, t - 2)];\n var u = z0(e, c, r);\n return t !== c + i && (f = $0(e, t - c - i, u, r)), e.l = n, [u, f];\n}\nfunction g3(e, t, r, n) {\n var i = e.l + t, f = z0(e, n, r), c;\n return i !== e.l && (c = $0(e, i - e.l, f, r)), [f, c];\n}\nfunction _3(e, t, r) {\n var n = e.l + t, i, f = e.read_shift(2), c = z0(e, f, r);\n return f == 65535 ? [[], ht(e, t - 2)] : (t !== f + 2 && (i = $0(e, n - f - 2, c, r)), [c, i]);\n}\nfunction m3(e) {\n var t;\n if (Oa(e, e.l + 6) !== 65535) return [ut(e), \"n\"];\n switch (e[e.l]) {\n case 0:\n return e.l += 8, [\"String\", \"s\"];\n case 1:\n return t = e[e.l + 2] === 1, e.l += 8, [t, \"b\"];\n case 2:\n return t = e[e.l + 2], e.l += 8, [t, \"e\"];\n case 3:\n return e.l += 8, [\"\", \"s\"];\n }\n return [];\n}\nfunction zf(e, t, r) {\n var n = e.l + t, i = ha(e, 6, r), f = m3(e), c = e.read_shift(1);\n r.biff != 2 && (e.read_shift(1), r.biff >= 5 && e.read_shift(4));\n var u = p3(e, n - e.l, r);\n return { cell: i, val: f[0], formula: u, shared: c >> 3 & 1, tt: f[1] };\n}\nfunction gs(e, t, r) {\n var n = e.read_shift(4), i = z0(e, n, r), f = e.read_shift(4), c = f > 0 ? $0(e, f, i, r) : null;\n return [i, c];\n}\nvar E3 = gs, _s = gs, T3 = gs, w3 = gs, k3 = {\n 0: \"BEEP\",\n 1: \"OPEN\",\n 2: \"OPEN.LINKS\",\n 3: \"CLOSE.ALL\",\n 4: \"SAVE\",\n 5: \"SAVE.AS\",\n 6: \"FILE.DELETE\",\n 7: \"PAGE.SETUP\",\n 8: \"PRINT\",\n 9: \"PRINTER.SETUP\",\n 10: \"QUIT\",\n 11: \"NEW.WINDOW\",\n 12: \"ARRANGE.ALL\",\n 13: \"WINDOW.SIZE\",\n 14: \"WINDOW.MOVE\",\n 15: \"FULL\",\n 16: \"CLOSE\",\n 17: \"RUN\",\n 22: \"SET.PRINT.AREA\",\n 23: \"SET.PRINT.TITLES\",\n 24: \"SET.PAGE.BREAK\",\n 25: \"REMOVE.PAGE.BREAK\",\n 26: \"FONT\",\n 27: \"DISPLAY\",\n 28: \"PROTECT.DOCUMENT\",\n 29: \"PRECISION\",\n 30: \"A1.R1C1\",\n 31: \"CALCULATE.NOW\",\n 32: \"CALCULATION\",\n 34: \"DATA.FIND\",\n 35: \"EXTRACT\",\n 36: \"DATA.DELETE\",\n 37: \"SET.DATABASE\",\n 38: \"SET.CRITERIA\",\n 39: \"SORT\",\n 40: \"DATA.SERIES\",\n 41: \"TABLE\",\n 42: \"FORMAT.NUMBER\",\n 43: \"ALIGNMENT\",\n 44: \"STYLE\",\n 45: \"BORDER\",\n 46: \"CELL.PROTECTION\",\n 47: \"COLUMN.WIDTH\",\n 48: \"UNDO\",\n 49: \"CUT\",\n 50: \"COPY\",\n 51: \"PASTE\",\n 52: \"CLEAR\",\n 53: \"PASTE.SPECIAL\",\n 54: \"EDIT.DELETE\",\n 55: \"INSERT\",\n 56: \"FILL.RIGHT\",\n 57: \"FILL.DOWN\",\n 61: \"DEFINE.NAME\",\n 62: \"CREATE.NAMES\",\n 63: \"FORMULA.GOTO\",\n 64: \"FORMULA.FIND\",\n 65: \"SELECT.LAST.CELL\",\n 66: \"SHOW.ACTIVE.CELL\",\n 67: \"GALLERY.AREA\",\n 68: \"GALLERY.BAR\",\n 69: \"GALLERY.COLUMN\",\n 70: \"GALLERY.LINE\",\n 71: \"GALLERY.PIE\",\n 72: \"GALLERY.SCATTER\",\n 73: \"COMBINATION\",\n 74: \"PREFERRED\",\n 75: \"ADD.OVERLAY\",\n 76: \"GRIDLINES\",\n 77: \"SET.PREFERRED\",\n 78: \"AXES\",\n 79: \"LEGEND\",\n 80: \"ATTACH.TEXT\",\n 81: \"ADD.ARROW\",\n 82: \"SELECT.CHART\",\n 83: \"SELECT.PLOT.AREA\",\n 84: \"PATTERNS\",\n 85: \"MAIN.CHART\",\n 86: \"OVERLAY\",\n 87: \"SCALE\",\n 88: \"FORMAT.LEGEND\",\n 89: \"FORMAT.TEXT\",\n 90: \"EDIT.REPEAT\",\n 91: \"PARSE\",\n 92: \"JUSTIFY\",\n 93: \"HIDE\",\n 94: \"UNHIDE\",\n 95: \"WORKSPACE\",\n 96: \"FORMULA\",\n 97: \"FORMULA.FILL\",\n 98: \"FORMULA.ARRAY\",\n 99: \"DATA.FIND.NEXT\",\n 100: \"DATA.FIND.PREV\",\n 101: \"FORMULA.FIND.NEXT\",\n 102: \"FORMULA.FIND.PREV\",\n 103: \"ACTIVATE\",\n 104: \"ACTIVATE.NEXT\",\n 105: \"ACTIVATE.PREV\",\n 106: \"UNLOCKED.NEXT\",\n 107: \"UNLOCKED.PREV\",\n 108: \"COPY.PICTURE\",\n 109: \"SELECT\",\n 110: \"DELETE.NAME\",\n 111: \"DELETE.FORMAT\",\n 112: \"VLINE\",\n 113: \"HLINE\",\n 114: \"VPAGE\",\n 115: \"HPAGE\",\n 116: \"VSCROLL\",\n 117: \"HSCROLL\",\n 118: \"ALERT\",\n 119: \"NEW\",\n 120: \"CANCEL.COPY\",\n 121: \"SHOW.CLIPBOARD\",\n 122: \"MESSAGE\",\n 124: \"PASTE.LINK\",\n 125: \"APP.ACTIVATE\",\n 126: \"DELETE.ARROW\",\n 127: \"ROW.HEIGHT\",\n 128: \"FORMAT.MOVE\",\n 129: \"FORMAT.SIZE\",\n 130: \"FORMULA.REPLACE\",\n 131: \"SEND.KEYS\",\n 132: \"SELECT.SPECIAL\",\n 133: \"APPLY.NAMES\",\n 134: \"REPLACE.FONT\",\n 135: \"FREEZE.PANES\",\n 136: \"SHOW.INFO\",\n 137: \"SPLIT\",\n 138: \"ON.WINDOW\",\n 139: \"ON.DATA\",\n 140: \"DISABLE.INPUT\",\n 142: \"OUTLINE\",\n 143: \"LIST.NAMES\",\n 144: \"FILE.CLOSE\",\n 145: \"SAVE.WORKBOOK\",\n 146: \"DATA.FORM\",\n 147: \"COPY.CHART\",\n 148: \"ON.TIME\",\n 149: \"WAIT\",\n 150: \"FORMAT.FONT\",\n 151: \"FILL.UP\",\n 152: \"FILL.LEFT\",\n 153: \"DELETE.OVERLAY\",\n 155: \"SHORT.MENUS\",\n 159: \"SET.UPDATE.STATUS\",\n 161: \"COLOR.PALETTE\",\n 162: \"DELETE.STYLE\",\n 163: \"WINDOW.RESTORE\",\n 164: \"WINDOW.MAXIMIZE\",\n 166: \"CHANGE.LINK\",\n 167: \"CALCULATE.DOCUMENT\",\n 168: \"ON.KEY\",\n 169: \"APP.RESTORE\",\n 170: \"APP.MOVE\",\n 171: \"APP.SIZE\",\n 172: \"APP.MINIMIZE\",\n 173: \"APP.MAXIMIZE\",\n 174: \"BRING.TO.FRONT\",\n 175: \"SEND.TO.BACK\",\n 185: \"MAIN.CHART.TYPE\",\n 186: \"OVERLAY.CHART.TYPE\",\n 187: \"SELECT.END\",\n 188: \"OPEN.MAIL\",\n 189: \"SEND.MAIL\",\n 190: \"STANDARD.FONT\",\n 191: \"CONSOLIDATE\",\n 192: \"SORT.SPECIAL\",\n 193: \"GALLERY.3D.AREA\",\n 194: \"GALLERY.3D.COLUMN\",\n 195: \"GALLERY.3D.LINE\",\n 196: \"GALLERY.3D.PIE\",\n 197: \"VIEW.3D\",\n 198: \"GOAL.SEEK\",\n 199: \"WORKGROUP\",\n 200: \"FILL.GROUP\",\n 201: \"UPDATE.LINK\",\n 202: \"PROMOTE\",\n 203: \"DEMOTE\",\n 204: \"SHOW.DETAIL\",\n 206: \"UNGROUP\",\n 207: \"OBJECT.PROPERTIES\",\n 208: \"SAVE.NEW.OBJECT\",\n 209: \"SHARE\",\n 210: \"SHARE.NAME\",\n 211: \"DUPLICATE\",\n 212: \"APPLY.STYLE\",\n 213: \"ASSIGN.TO.OBJECT\",\n 214: \"OBJECT.PROTECTION\",\n 215: \"HIDE.OBJECT\",\n 216: \"SET.EXTRACT\",\n 217: \"CREATE.PUBLISHER\",\n 218: \"SUBSCRIBE.TO\",\n 219: \"ATTRIBUTES\",\n 220: \"SHOW.TOOLBAR\",\n 222: \"PRINT.PREVIEW\",\n 223: \"EDIT.COLOR\",\n 224: \"SHOW.LEVELS\",\n 225: \"FORMAT.MAIN\",\n 226: \"FORMAT.OVERLAY\",\n 227: \"ON.RECALC\",\n 228: \"EDIT.SERIES\",\n 229: \"DEFINE.STYLE\",\n 240: \"LINE.PRINT\",\n 243: \"ENTER.DATA\",\n 249: \"GALLERY.RADAR\",\n 250: \"MERGE.STYLES\",\n 251: \"EDITION.OPTIONS\",\n 252: \"PASTE.PICTURE\",\n 253: \"PASTE.PICTURE.LINK\",\n 254: \"SPELLING\",\n 256: \"ZOOM\",\n 259: \"INSERT.OBJECT\",\n 260: \"WINDOW.MINIMIZE\",\n 265: \"SOUND.NOTE\",\n 266: \"SOUND.PLAY\",\n 267: \"FORMAT.SHAPE\",\n 268: \"EXTEND.POLYGON\",\n 269: \"FORMAT.AUTO\",\n 272: \"GALLERY.3D.BAR\",\n 273: \"GALLERY.3D.SURFACE\",\n 274: \"FILL.AUTO\",\n 276: \"CUSTOMIZE.TOOLBAR\",\n 277: \"ADD.TOOL\",\n 278: \"EDIT.OBJECT\",\n 279: \"ON.DOUBLECLICK\",\n 280: \"ON.ENTRY\",\n 281: \"WORKBOOK.ADD\",\n 282: \"WORKBOOK.MOVE\",\n 283: \"WORKBOOK.COPY\",\n 284: \"WORKBOOK.OPTIONS\",\n 285: \"SAVE.WORKSPACE\",\n 288: \"CHART.WIZARD\",\n 289: \"DELETE.TOOL\",\n 290: \"MOVE.TOOL\",\n 291: \"WORKBOOK.SELECT\",\n 292: \"WORKBOOK.ACTIVATE\",\n 293: \"ASSIGN.TO.TOOL\",\n 295: \"COPY.TOOL\",\n 296: \"RESET.TOOL\",\n 297: \"CONSTRAIN.NUMERIC\",\n 298: \"PASTE.TOOL\",\n 302: \"WORKBOOK.NEW\",\n 305: \"SCENARIO.CELLS\",\n 306: \"SCENARIO.DELETE\",\n 307: \"SCENARIO.ADD\",\n 308: \"SCENARIO.EDIT\",\n 309: \"SCENARIO.SHOW\",\n 310: \"SCENARIO.SHOW.NEXT\",\n 311: \"SCENARIO.SUMMARY\",\n 312: \"PIVOT.TABLE.WIZARD\",\n 313: \"PIVOT.FIELD.PROPERTIES\",\n 314: \"PIVOT.FIELD\",\n 315: \"PIVOT.ITEM\",\n 316: \"PIVOT.ADD.FIELDS\",\n 318: \"OPTIONS.CALCULATION\",\n 319: \"OPTIONS.EDIT\",\n 320: \"OPTIONS.VIEW\",\n 321: \"ADDIN.MANAGER\",\n 322: \"MENU.EDITOR\",\n 323: \"ATTACH.TOOLBARS\",\n 324: \"VBAActivate\",\n 325: \"OPTIONS.CHART\",\n 328: \"VBA.INSERT.FILE\",\n 330: \"VBA.PROCEDURE.DEFINITION\",\n 336: \"ROUTING.SLIP\",\n 338: \"ROUTE.DOCUMENT\",\n 339: \"MAIL.LOGON\",\n 342: \"INSERT.PICTURE\",\n 343: \"EDIT.TOOL\",\n 344: \"GALLERY.DOUGHNUT\",\n 350: \"CHART.TREND\",\n 352: \"PIVOT.ITEM.PROPERTIES\",\n 354: \"WORKBOOK.INSERT\",\n 355: \"OPTIONS.TRANSITION\",\n 356: \"OPTIONS.GENERAL\",\n 370: \"FILTER.ADVANCED\",\n 373: \"MAIL.ADD.MAILER\",\n 374: \"MAIL.DELETE.MAILER\",\n 375: \"MAIL.REPLY\",\n 376: \"MAIL.REPLY.ALL\",\n 377: \"MAIL.FORWARD\",\n 378: \"MAIL.NEXT.LETTER\",\n 379: \"DATA.LABEL\",\n 380: \"INSERT.TITLE\",\n 381: \"FONT.PROPERTIES\",\n 382: \"MACRO.OPTIONS\",\n 383: \"WORKBOOK.HIDE\",\n 384: \"WORKBOOK.UNHIDE\",\n 385: \"WORKBOOK.DELETE\",\n 386: \"WORKBOOK.NAME\",\n 388: \"GALLERY.CUSTOM\",\n 390: \"ADD.CHART.AUTOFORMAT\",\n 391: \"DELETE.CHART.AUTOFORMAT\",\n 392: \"CHART.ADD.DATA\",\n 393: \"AUTO.OUTLINE\",\n 394: \"TAB.ORDER\",\n 395: \"SHOW.DIALOG\",\n 396: \"SELECT.ALL\",\n 397: \"UNGROUP.SHEETS\",\n 398: \"SUBTOTAL.CREATE\",\n 399: \"SUBTOTAL.REMOVE\",\n 400: \"RENAME.OBJECT\",\n 412: \"WORKBOOK.SCROLL\",\n 413: \"WORKBOOK.NEXT\",\n 414: \"WORKBOOK.PREV\",\n 415: \"WORKBOOK.TAB.SPLIT\",\n 416: \"FULL.SCREEN\",\n 417: \"WORKBOOK.PROTECT\",\n 420: \"SCROLLBAR.PROPERTIES\",\n 421: \"PIVOT.SHOW.PAGES\",\n 422: \"TEXT.TO.COLUMNS\",\n 423: \"FORMAT.CHARTTYPE\",\n 424: \"LINK.FORMAT\",\n 425: \"TRACER.DISPLAY\",\n 430: \"TRACER.NAVIGATE\",\n 431: \"TRACER.CLEAR\",\n 432: \"TRACER.ERROR\",\n 433: \"PIVOT.FIELD.GROUP\",\n 434: \"PIVOT.FIELD.UNGROUP\",\n 435: \"CHECKBOX.PROPERTIES\",\n 436: \"LABEL.PROPERTIES\",\n 437: \"LISTBOX.PROPERTIES\",\n 438: \"EDITBOX.PROPERTIES\",\n 439: \"PIVOT.REFRESH\",\n 440: \"LINK.COMBO\",\n 441: \"OPEN.TEXT\",\n 442: \"HIDE.DIALOG\",\n 443: \"SET.DIALOG.FOCUS\",\n 444: \"ENABLE.OBJECT\",\n 445: \"PUSHBUTTON.PROPERTIES\",\n 446: \"SET.DIALOG.DEFAULT\",\n 447: \"FILTER\",\n 448: \"FILTER.SHOW.ALL\",\n 449: \"CLEAR.OUTLINE\",\n 450: \"FUNCTION.WIZARD\",\n 451: \"ADD.LIST.ITEM\",\n 452: \"SET.LIST.ITEM\",\n 453: \"REMOVE.LIST.ITEM\",\n 454: \"SELECT.LIST.ITEM\",\n 455: \"SET.CONTROL.VALUE\",\n 456: \"SAVE.COPY.AS\",\n 458: \"OPTIONS.LISTS.ADD\",\n 459: \"OPTIONS.LISTS.DELETE\",\n 460: \"SERIES.AXES\",\n 461: \"SERIES.X\",\n 462: \"SERIES.Y\",\n 463: \"ERRORBAR.X\",\n 464: \"ERRORBAR.Y\",\n 465: \"FORMAT.CHART\",\n 466: \"SERIES.ORDER\",\n 467: \"MAIL.LOGOFF\",\n 468: \"CLEAR.ROUTING.SLIP\",\n 469: \"APP.ACTIVATE.MICROSOFT\",\n 470: \"MAIL.EDIT.MAILER\",\n 471: \"ON.SHEET\",\n 472: \"STANDARD.WIDTH\",\n 473: \"SCENARIO.MERGE\",\n 474: \"SUMMARY.INFO\",\n 475: \"FIND.FILE\",\n 476: \"ACTIVE.CELL.FONT\",\n 477: \"ENABLE.TIPWIZARD\",\n 478: \"VBA.MAKE.ADDIN\",\n 480: \"INSERTDATATABLE\",\n 481: \"WORKGROUP.OPTIONS\",\n 482: \"MAIL.SEND.MAILER\",\n 485: \"AUTOCORRECT\",\n 489: \"POST.DOCUMENT\",\n 491: \"PICKLIST\",\n 493: \"VIEW.SHOW\",\n 494: \"VIEW.DEFINE\",\n 495: \"VIEW.DELETE\",\n 509: \"SHEET.BACKGROUND\",\n 510: \"INSERT.MAP.OBJECT\",\n 511: \"OPTIONS.MENONO\",\n 517: \"MSOCHECKS\",\n 518: \"NORMAL\",\n 519: \"LAYOUT\",\n 520: \"RM.PRINT.AREA\",\n 521: \"CLEAR.PRINT.AREA\",\n 522: \"ADD.PRINT.AREA\",\n 523: \"MOVE.BRK\",\n 545: \"HIDECURR.NOTE\",\n 546: \"HIDEALL.NOTES\",\n 547: \"DELETE.NOTE\",\n 548: \"TRAVERSE.NOTES\",\n 549: \"ACTIVATE.NOTES\",\n 620: \"PROTECT.REVISIONS\",\n 621: \"UNPROTECT.REVISIONS\",\n 647: \"OPTIONS.ME\",\n 653: \"WEB.PUBLISH\",\n 667: \"NEWWEBQUERY\",\n 673: \"PIVOT.TABLE.CHART\",\n 753: \"OPTIONS.SAVE\",\n 755: \"OPTIONS.SPELL\",\n 808: \"HIDEALL.INKANNOTS\"\n}, dh = {\n 0: \"COUNT\",\n 1: \"IF\",\n 2: \"ISNA\",\n 3: \"ISERROR\",\n 4: \"SUM\",\n 5: \"AVERAGE\",\n 6: \"MIN\",\n 7: \"MAX\",\n 8: \"ROW\",\n 9: \"COLUMN\",\n 10: \"NA\",\n 11: \"NPV\",\n 12: \"STDEV\",\n 13: \"DOLLAR\",\n 14: \"FIXED\",\n 15: \"SIN\",\n 16: \"COS\",\n 17: \"TAN\",\n 18: \"ATAN\",\n 19: \"PI\",\n 20: \"SQRT\",\n 21: \"EXP\",\n 22: \"LN\",\n 23: \"LOG10\",\n 24: \"ABS\",\n 25: \"INT\",\n 26: \"SIGN\",\n 27: \"ROUND\",\n 28: \"LOOKUP\",\n 29: \"INDEX\",\n 30: \"REPT\",\n 31: \"MID\",\n 32: \"LEN\",\n 33: \"VALUE\",\n 34: \"TRUE\",\n 35: \"FALSE\",\n 36: \"AND\",\n 37: \"OR\",\n 38: \"NOT\",\n 39: \"MOD\",\n 40: \"DCOUNT\",\n 41: \"DSUM\",\n 42: \"DAVERAGE\",\n 43: \"DMIN\",\n 44: \"DMAX\",\n 45: \"DSTDEV\",\n 46: \"VAR\",\n 47: \"DVAR\",\n 48: \"TEXT\",\n 49: \"LINEST\",\n 50: \"TREND\",\n 51: \"LOGEST\",\n 52: \"GROWTH\",\n 53: \"GOTO\",\n 54: \"HALT\",\n 55: \"RETURN\",\n 56: \"PV\",\n 57: \"FV\",\n 58: \"NPER\",\n 59: \"PMT\",\n 60: \"RATE\",\n 61: \"MIRR\",\n 62: \"IRR\",\n 63: \"RAND\",\n 64: \"MATCH\",\n 65: \"DATE\",\n 66: \"TIME\",\n 67: \"DAY\",\n 68: \"MONTH\",\n 69: \"YEAR\",\n 70: \"WEEKDAY\",\n 71: \"HOUR\",\n 72: \"MINUTE\",\n 73: \"SECOND\",\n 74: \"NOW\",\n 75: \"AREAS\",\n 76: \"ROWS\",\n 77: \"COLUMNS\",\n 78: \"OFFSET\",\n 79: \"ABSREF\",\n 80: \"RELREF\",\n 81: \"ARGUMENT\",\n 82: \"SEARCH\",\n 83: \"TRANSPOSE\",\n 84: \"ERROR\",\n 85: \"STEP\",\n 86: \"TYPE\",\n 87: \"ECHO\",\n 88: \"SET.NAME\",\n 89: \"CALLER\",\n 90: \"DEREF\",\n 91: \"WINDOWS\",\n 92: \"SERIES\",\n 93: \"DOCUMENTS\",\n 94: \"ACTIVE.CELL\",\n 95: \"SELECTION\",\n 96: \"RESULT\",\n 97: \"ATAN2\",\n 98: \"ASIN\",\n 99: \"ACOS\",\n 100: \"CHOOSE\",\n 101: \"HLOOKUP\",\n 102: \"VLOOKUP\",\n 103: \"LINKS\",\n 104: \"INPUT\",\n 105: \"ISREF\",\n 106: \"GET.FORMULA\",\n 107: \"GET.NAME\",\n 108: \"SET.VALUE\",\n 109: \"LOG\",\n 110: \"EXEC\",\n 111: \"CHAR\",\n 112: \"LOWER\",\n 113: \"UPPER\",\n 114: \"PROPER\",\n 115: \"LEFT\",\n 116: \"RIGHT\",\n 117: \"EXACT\",\n 118: \"TRIM\",\n 119: \"REPLACE\",\n 120: \"SUBSTITUTE\",\n 121: \"CODE\",\n 122: \"NAMES\",\n 123: \"DIRECTORY\",\n 124: \"FIND\",\n 125: \"CELL\",\n 126: \"ISERR\",\n 127: \"ISTEXT\",\n 128: \"ISNUMBER\",\n 129: \"ISBLANK\",\n 130: \"T\",\n 131: \"N\",\n 132: \"FOPEN\",\n 133: \"FCLOSE\",\n 134: \"FSIZE\",\n 135: \"FREADLN\",\n 136: \"FREAD\",\n 137: \"FWRITELN\",\n 138: \"FWRITE\",\n 139: \"FPOS\",\n 140: \"DATEVALUE\",\n 141: \"TIMEVALUE\",\n 142: \"SLN\",\n 143: \"SYD\",\n 144: \"DDB\",\n 145: \"GET.DEF\",\n 146: \"REFTEXT\",\n 147: \"TEXTREF\",\n 148: \"INDIRECT\",\n 149: \"REGISTER\",\n 150: \"CALL\",\n 151: \"ADD.BAR\",\n 152: \"ADD.MENU\",\n 153: \"ADD.COMMAND\",\n 154: \"ENABLE.COMMAND\",\n 155: \"CHECK.COMMAND\",\n 156: \"RENAME.COMMAND\",\n 157: \"SHOW.BAR\",\n 158: \"DELETE.MENU\",\n 159: \"DELETE.COMMAND\",\n 160: \"GET.CHART.ITEM\",\n 161: \"DIALOG.BOX\",\n 162: \"CLEAN\",\n 163: \"MDETERM\",\n 164: \"MINVERSE\",\n 165: \"MMULT\",\n 166: \"FILES\",\n 167: \"IPMT\",\n 168: \"PPMT\",\n 169: \"COUNTA\",\n 170: \"CANCEL.KEY\",\n 171: \"FOR\",\n 172: \"WHILE\",\n 173: \"BREAK\",\n 174: \"NEXT\",\n 175: \"INITIATE\",\n 176: \"REQUEST\",\n 177: \"POKE\",\n 178: \"EXECUTE\",\n 179: \"TERMINATE\",\n 180: \"RESTART\",\n 181: \"HELP\",\n 182: \"GET.BAR\",\n 183: \"PRODUCT\",\n 184: \"FACT\",\n 185: \"GET.CELL\",\n 186: \"GET.WORKSPACE\",\n 187: \"GET.WINDOW\",\n 188: \"GET.DOCUMENT\",\n 189: \"DPRODUCT\",\n 190: \"ISNONTEXT\",\n 191: \"GET.NOTE\",\n 192: \"NOTE\",\n 193: \"STDEVP\",\n 194: \"VARP\",\n 195: \"DSTDEVP\",\n 196: \"DVARP\",\n 197: \"TRUNC\",\n 198: \"ISLOGICAL\",\n 199: \"DCOUNTA\",\n 200: \"DELETE.BAR\",\n 201: \"UNREGISTER\",\n 204: \"USDOLLAR\",\n 205: \"FINDB\",\n 206: \"SEARCHB\",\n 207: \"REPLACEB\",\n 208: \"LEFTB\",\n 209: \"RIGHTB\",\n 210: \"MIDB\",\n 211: \"LENB\",\n 212: \"ROUNDUP\",\n 213: \"ROUNDDOWN\",\n 214: \"ASC\",\n 215: \"DBCS\",\n 216: \"RANK\",\n 219: \"ADDRESS\",\n 220: \"DAYS360\",\n 221: \"TODAY\",\n 222: \"VDB\",\n 223: \"ELSE\",\n 224: \"ELSE.IF\",\n 225: \"END.IF\",\n 226: \"FOR.CELL\",\n 227: \"MEDIAN\",\n 228: \"SUMPRODUCT\",\n 229: \"SINH\",\n 230: \"COSH\",\n 231: \"TANH\",\n 232: \"ASINH\",\n 233: \"ACOSH\",\n 234: \"ATANH\",\n 235: \"DGET\",\n 236: \"CREATE.OBJECT\",\n 237: \"VOLATILE\",\n 238: \"LAST.ERROR\",\n 239: \"CUSTOM.UNDO\",\n 240: \"CUSTOM.REPEAT\",\n 241: \"FORMULA.CONVERT\",\n 242: \"GET.LINK.INFO\",\n 243: \"TEXT.BOX\",\n 244: \"INFO\",\n 245: \"GROUP\",\n 246: \"GET.OBJECT\",\n 247: \"DB\",\n 248: \"PAUSE\",\n 251: \"RESUME\",\n 252: \"FREQUENCY\",\n 253: \"ADD.TOOLBAR\",\n 254: \"DELETE.TOOLBAR\",\n 255: \"User\",\n 256: \"RESET.TOOLBAR\",\n 257: \"EVALUATE\",\n 258: \"GET.TOOLBAR\",\n 259: \"GET.TOOL\",\n 260: \"SPELLING.CHECK\",\n 261: \"ERROR.TYPE\",\n 262: \"APP.TITLE\",\n 263: \"WINDOW.TITLE\",\n 264: \"SAVE.TOOLBAR\",\n 265: \"ENABLE.TOOL\",\n 266: \"PRESS.TOOL\",\n 267: \"REGISTER.ID\",\n 268: \"GET.WORKBOOK\",\n 269: \"AVEDEV\",\n 270: \"BETADIST\",\n 271: \"GAMMALN\",\n 272: \"BETAINV\",\n 273: \"BINOMDIST\",\n 274: \"CHIDIST\",\n 275: \"CHIINV\",\n 276: \"COMBIN\",\n 277: \"CONFIDENCE\",\n 278: \"CRITBINOM\",\n 279: \"EVEN\",\n 280: \"EXPONDIST\",\n 281: \"FDIST\",\n 282: \"FINV\",\n 283: \"FISHER\",\n 284: \"FISHERINV\",\n 285: \"FLOOR\",\n 286: \"GAMMADIST\",\n 287: \"GAMMAINV\",\n 288: \"CEILING\",\n 289: \"HYPGEOMDIST\",\n 290: \"LOGNORMDIST\",\n 291: \"LOGINV\",\n 292: \"NEGBINOMDIST\",\n 293: \"NORMDIST\",\n 294: \"NORMSDIST\",\n 295: \"NORMINV\",\n 296: \"NORMSINV\",\n 297: \"STANDARDIZE\",\n 298: \"ODD\",\n 299: \"PERMUT\",\n 300: \"POISSON\",\n 301: \"TDIST\",\n 302: \"WEIBULL\",\n 303: \"SUMXMY2\",\n 304: \"SUMX2MY2\",\n 305: \"SUMX2PY2\",\n 306: \"CHITEST\",\n 307: \"CORREL\",\n 308: \"COVAR\",\n 309: \"FORECAST\",\n 310: \"FTEST\",\n 311: \"INTERCEPT\",\n 312: \"PEARSON\",\n 313: \"RSQ\",\n 314: \"STEYX\",\n 315: \"SLOPE\",\n 316: \"TTEST\",\n 317: \"PROB\",\n 318: \"DEVSQ\",\n 319: \"GEOMEAN\",\n 320: \"HARMEAN\",\n 321: \"SUMSQ\",\n 322: \"KURT\",\n 323: \"SKEW\",\n 324: \"ZTEST\",\n 325: \"LARGE\",\n 326: \"SMALL\",\n 327: \"QUARTILE\",\n 328: \"PERCENTILE\",\n 329: \"PERCENTRANK\",\n 330: \"MODE\",\n 331: \"TRIMMEAN\",\n 332: \"TINV\",\n 334: \"MOVIE.COMMAND\",\n 335: \"GET.MOVIE\",\n 336: \"CONCATENATE\",\n 337: \"POWER\",\n 338: \"PIVOT.ADD.DATA\",\n 339: \"GET.PIVOT.TABLE\",\n 340: \"GET.PIVOT.FIELD\",\n 341: \"GET.PIVOT.ITEM\",\n 342: \"RADIANS\",\n 343: \"DEGREES\",\n 344: \"SUBTOTAL\",\n 345: \"SUMIF\",\n 346: \"COUNTIF\",\n 347: \"COUNTBLANK\",\n 348: \"SCENARIO.GET\",\n 349: \"OPTIONS.LISTS.GET\",\n 350: \"ISPMT\",\n 351: \"DATEDIF\",\n 352: \"DATESTRING\",\n 353: \"NUMBERSTRING\",\n 354: \"ROMAN\",\n 355: \"OPEN.DIALOG\",\n 356: \"SAVE.DIALOG\",\n 357: \"VIEW.GET\",\n 358: \"GETPIVOTDATA\",\n 359: \"HYPERLINK\",\n 360: \"PHONETIC\",\n 361: \"AVERAGEA\",\n 362: \"MAXA\",\n 363: \"MINA\",\n 364: \"STDEVPA\",\n 365: \"VARPA\",\n 366: \"STDEVA\",\n 367: \"VARA\",\n 368: \"BAHTTEXT\",\n 369: \"THAIDAYOFWEEK\",\n 370: \"THAIDIGIT\",\n 371: \"THAIMONTHOFYEAR\",\n 372: \"THAINUMSOUND\",\n 373: \"THAINUMSTRING\",\n 374: \"THAISTRINGLENGTH\",\n 375: \"ISTHAIDIGIT\",\n 376: \"ROUNDBAHTDOWN\",\n 377: \"ROUNDBAHTUP\",\n 378: \"THAIYEAR\",\n 379: \"RTD\",\n 380: \"CUBEVALUE\",\n 381: \"CUBEMEMBER\",\n 382: \"CUBEMEMBERPROPERTY\",\n 383: \"CUBERANKEDMEMBER\",\n 384: \"HEX2BIN\",\n 385: \"HEX2DEC\",\n 386: \"HEX2OCT\",\n 387: \"DEC2BIN\",\n 388: \"DEC2HEX\",\n 389: \"DEC2OCT\",\n 390: \"OCT2BIN\",\n 391: \"OCT2HEX\",\n 392: \"OCT2DEC\",\n 393: \"BIN2DEC\",\n 394: \"BIN2OCT\",\n 395: \"BIN2HEX\",\n 396: \"IMSUB\",\n 397: \"IMDIV\",\n 398: \"IMPOWER\",\n 399: \"IMABS\",\n 400: \"IMSQRT\",\n 401: \"IMLN\",\n 402: \"IMLOG2\",\n 403: \"IMLOG10\",\n 404: \"IMSIN\",\n 405: \"IMCOS\",\n 406: \"IMEXP\",\n 407: \"IMARGUMENT\",\n 408: \"IMCONJUGATE\",\n 409: \"IMAGINARY\",\n 410: \"IMREAL\",\n 411: \"COMPLEX\",\n 412: \"IMSUM\",\n 413: \"IMPRODUCT\",\n 414: \"SERIESSUM\",\n 415: \"FACTDOUBLE\",\n 416: \"SQRTPI\",\n 417: \"QUOTIENT\",\n 418: \"DELTA\",\n 419: \"GESTEP\",\n 420: \"ISEVEN\",\n 421: \"ISODD\",\n 422: \"MROUND\",\n 423: \"ERF\",\n 424: \"ERFC\",\n 425: \"BESSELJ\",\n 426: \"BESSELK\",\n 427: \"BESSELY\",\n 428: \"BESSELI\",\n 429: \"XIRR\",\n 430: \"XNPV\",\n 431: \"PRICEMAT\",\n 432: \"YIELDMAT\",\n 433: \"INTRATE\",\n 434: \"RECEIVED\",\n 435: \"DISC\",\n 436: \"PRICEDISC\",\n 437: \"YIELDDISC\",\n 438: \"TBILLEQ\",\n 439: \"TBILLPRICE\",\n 440: \"TBILLYIELD\",\n 441: \"PRICE\",\n 442: \"YIELD\",\n 443: \"DOLLARDE\",\n 444: \"DOLLARFR\",\n 445: \"NOMINAL\",\n 446: \"EFFECT\",\n 447: \"CUMPRINC\",\n 448: \"CUMIPMT\",\n 449: \"EDATE\",\n 450: \"EOMONTH\",\n 451: \"YEARFRAC\",\n 452: \"COUPDAYBS\",\n 453: \"COUPDAYS\",\n 454: \"COUPDAYSNC\",\n 455: \"COUPNCD\",\n 456: \"COUPNUM\",\n 457: \"COUPPCD\",\n 458: \"DURATION\",\n 459: \"MDURATION\",\n 460: \"ODDLPRICE\",\n 461: \"ODDLYIELD\",\n 462: \"ODDFPRICE\",\n 463: \"ODDFYIELD\",\n 464: \"RANDBETWEEN\",\n 465: \"WEEKNUM\",\n 466: \"AMORDEGRC\",\n 467: \"AMORLINC\",\n 468: \"CONVERT\",\n 724: \"SHEETJS\",\n 469: \"ACCRINT\",\n 470: \"ACCRINTM\",\n 471: \"WORKDAY\",\n 472: \"NETWORKDAYS\",\n 473: \"GCD\",\n 474: \"MULTINOMIAL\",\n 475: \"LCM\",\n 476: \"FVSCHEDULE\",\n 477: \"CUBEKPIMEMBER\",\n 478: \"CUBESET\",\n 479: \"CUBESETCOUNT\",\n 480: \"IFERROR\",\n 481: \"COUNTIFS\",\n 482: \"SUMIFS\",\n 483: \"AVERAGEIF\",\n 484: \"AVERAGEIFS\"\n}, A3 = {\n 2: 1,\n 3: 1,\n 10: 0,\n 15: 1,\n 16: 1,\n 17: 1,\n 18: 1,\n 19: 0,\n 20: 1,\n 21: 1,\n 22: 1,\n 23: 1,\n 24: 1,\n 25: 1,\n 26: 1,\n 27: 2,\n 30: 2,\n 31: 3,\n 32: 1,\n 33: 1,\n 34: 0,\n 35: 0,\n 38: 1,\n 39: 2,\n 40: 3,\n 41: 3,\n 42: 3,\n 43: 3,\n 44: 3,\n 45: 3,\n 47: 3,\n 48: 2,\n 53: 1,\n 61: 3,\n 63: 0,\n 65: 3,\n 66: 3,\n 67: 1,\n 68: 1,\n 69: 1,\n 70: 1,\n 71: 1,\n 72: 1,\n 73: 1,\n 74: 0,\n 75: 1,\n 76: 1,\n 77: 1,\n 79: 2,\n 80: 2,\n 83: 1,\n 85: 0,\n 86: 1,\n 89: 0,\n 90: 1,\n 94: 0,\n 95: 0,\n 97: 2,\n 98: 1,\n 99: 1,\n 101: 3,\n 102: 3,\n 105: 1,\n 106: 1,\n 108: 2,\n 111: 1,\n 112: 1,\n 113: 1,\n 114: 1,\n 117: 2,\n 118: 1,\n 119: 4,\n 121: 1,\n 126: 1,\n 127: 1,\n 128: 1,\n 129: 1,\n 130: 1,\n 131: 1,\n 133: 1,\n 134: 1,\n 135: 1,\n 136: 2,\n 137: 2,\n 138: 2,\n 140: 1,\n 141: 1,\n 142: 3,\n 143: 4,\n 144: 4,\n 161: 1,\n 162: 1,\n 163: 1,\n 164: 1,\n 165: 2,\n 172: 1,\n 175: 2,\n 176: 2,\n 177: 3,\n 178: 2,\n 179: 1,\n 184: 1,\n 186: 1,\n 189: 3,\n 190: 1,\n 195: 3,\n 196: 3,\n 197: 1,\n 198: 1,\n 199: 3,\n 201: 1,\n 207: 4,\n 210: 3,\n 211: 1,\n 212: 2,\n 213: 2,\n 214: 1,\n 215: 1,\n 225: 0,\n 229: 1,\n 230: 1,\n 231: 1,\n 232: 1,\n 233: 1,\n 234: 1,\n 235: 3,\n 244: 1,\n 247: 4,\n 252: 2,\n 257: 1,\n 261: 1,\n 271: 1,\n 273: 4,\n 274: 2,\n 275: 2,\n 276: 2,\n 277: 3,\n 278: 3,\n 279: 1,\n 280: 3,\n 281: 3,\n 282: 3,\n 283: 1,\n 284: 1,\n 285: 2,\n 286: 4,\n 287: 3,\n 288: 2,\n 289: 4,\n 290: 3,\n 291: 3,\n 292: 3,\n 293: 4,\n 294: 1,\n 295: 3,\n 296: 1,\n 297: 3,\n 298: 1,\n 299: 2,\n 300: 3,\n 301: 3,\n 302: 4,\n 303: 2,\n 304: 2,\n 305: 2,\n 306: 2,\n 307: 2,\n 308: 2,\n 309: 3,\n 310: 2,\n 311: 2,\n 312: 2,\n 313: 2,\n 314: 2,\n 315: 2,\n 316: 4,\n 325: 2,\n 326: 2,\n 327: 2,\n 328: 2,\n 331: 2,\n 332: 2,\n 337: 2,\n 342: 1,\n 343: 1,\n 346: 2,\n 347: 1,\n 350: 4,\n 351: 3,\n 352: 1,\n 353: 2,\n 360: 1,\n 368: 1,\n 369: 1,\n 370: 1,\n 371: 1,\n 372: 1,\n 373: 1,\n 374: 1,\n 375: 1,\n 376: 1,\n 377: 1,\n 378: 1,\n 382: 3,\n 385: 1,\n 392: 1,\n 393: 1,\n 396: 2,\n 397: 2,\n 398: 2,\n 399: 1,\n 400: 1,\n 401: 1,\n 402: 1,\n 403: 1,\n 404: 1,\n 405: 1,\n 406: 1,\n 407: 1,\n 408: 1,\n 409: 1,\n 410: 1,\n 414: 4,\n 415: 1,\n 416: 1,\n 417: 2,\n 420: 1,\n 421: 1,\n 422: 2,\n 424: 1,\n 425: 2,\n 426: 2,\n 427: 2,\n 428: 2,\n 430: 3,\n 438: 3,\n 439: 3,\n 440: 3,\n 443: 2,\n 444: 2,\n 445: 2,\n 446: 2,\n 447: 6,\n 448: 6,\n 449: 2,\n 450: 2,\n 464: 2,\n 468: 3,\n 476: 2,\n 479: 1,\n 480: 2,\n 65535: 0\n};\nfunction Xl(e) {\n return e.slice(0, 3) == \"of:\" && (e = e.slice(3)), e.charCodeAt(0) == 61 && (e = e.slice(1), e.charCodeAt(0) == 61 && (e = e.slice(1))), e = e.replace(/COM\\.MICROSOFT\\./g, \"\"), e = e.replace(/\\[((?:\\.[A-Z]+[0-9]+)(?::\\.[A-Z]+[0-9]+)?)\\]/g, function(t, r) {\n return r.replace(/\\./g, \"\");\n }), e = e.replace(/\\$'([^']|'')+'/g, function(t) {\n return t.slice(1);\n }), e = e.replace(/\\$([^\\]\\. #$]+)/g, function(t, r) {\n return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\\d{4}|104[0-7]\\d{3}|1048[0-4]\\d{2}|10485[0-6]\\d|104857[0-6]|[1-9]\\d{0,5})?$/) ? t : r;\n }), e = e.replace(/\\[.(#[A-Z]*[?!])\\]/g, \"$1\"), e.replace(/[;~]/g, \",\").replace(/\\|/g, \";\");\n}\nfunction Kf(e) {\n e = e.replace(/\\$'([^']|'')+'/g, function(n) {\n return n.slice(1);\n }), e = e.replace(/\\$([^\\]\\. #$]+)/g, function(n, i) {\n return i.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\\d{4}|104[0-7]\\d{3}|1048[0-4]\\d{2}|10485[0-6]\\d|104857[0-6]|[1-9]\\d{0,5})?$/) ? n : i;\n });\n var t = e.split(\":\"), r = t[0].split(\".\")[0];\n return [r, t[0].split(\".\")[1] + (t.length > 1 ? \":\" + (t[1].split(\".\")[1] || t[1].split(\".\")[0]) : \"\")];\n}\nvar I0 = {}, Kn = {};\nfunction O0(e, t) {\n if (e) {\n var r = [0.7, 0.7, 0.75, 0.75, 0.3, 0.3];\n t == \"xlml\" && (r = [1, 1, 1, 1, 0.5, 0.5]), e.left == null && (e.left = r[0]), e.right == null && (e.right = r[1]), e.top == null && (e.top = r[2]), e.bottom == null && (e.bottom = r[3]), e.header == null && (e.header = r[4]), e.footer == null && (e.footer = r[5]);\n }\n}\nfunction vh(e, t, r, n, i, f, c) {\n try {\n n.cellNF && (e.z = Xe[t]);\n } catch (l) {\n if (n.WTF) throw l;\n }\n if (!(e.t === \"z\" && !n.cellStyles)) {\n if (e.t === \"d\" && typeof e.v == \"string\" && (e.v = at(e.v)), (!n || n.cellText !== !1) && e.t !== \"z\") try {\n if (Xe[t] == null && vn(vm[t] || \"General\", t), e.t === \"e\") e.w = e.w || Ct[e.v];\n else if (t === 0)\n if (e.t === \"n\")\n (e.v | 0) === e.v ? e.w = e.v.toString(10) : e.w = L0(e.v);\n else if (e.t === \"d\") {\n var u = Kr(e.v, !!c);\n (u | 0) === u ? e.w = u.toString(10) : e.w = L0(u);\n } else {\n if (e.v === void 0) return \"\";\n e.w = mn(e.v, Kn);\n }\n else e.t === \"d\" ? e.w = Wt(t, Kr(e.v, !!c), Kn) : e.w = Wt(t, e.v, Kn);\n } catch (l) {\n if (n.WTF) throw l;\n }\n if (n.cellStyles && r != null)\n try {\n e.s = f.Fills[r], e.s.fgColor && e.s.fgColor.theme && !e.s.fgColor.rgb && (e.s.fgColor.rgb = fs(i.themeElements.clrScheme[e.s.fgColor.theme].rgb, e.s.fgColor.tint || 0), n.WTF && (e.s.fgColor.raw_rgb = i.themeElements.clrScheme[e.s.fgColor.theme].rgb)), e.s.bgColor && e.s.bgColor.theme && (e.s.bgColor.rgb = fs(i.themeElements.clrScheme[e.s.bgColor.theme].rgb, e.s.bgColor.tint || 0), n.WTF && (e.s.bgColor.raw_rgb = i.themeElements.clrScheme[e.s.bgColor.theme].rgb));\n } catch (l) {\n if (n.WTF && f.Fills) throw l;\n }\n }\n}\nfunction F3(e, t) {\n var r = Br(t);\n r.s.r <= r.e.r && r.s.c <= r.e.c && r.s.r >= 0 && r.s.c >= 0 && (e[\"!ref\"] = sr(r));\n}\nvar S3 = /<(?:\\w+:)?mergeCell ref=[\"'][A-Z0-9:]+['\"]\\s*[\\/]?>/g, C3 = /<(?:\\w+:)?hyperlink [^<>]*>/mg, y3 = /\"(\\w*:\\w*)\"/, I3 = /<(?:\\w+:)?col\\b[^<>]*[\\/]?>/g, O3 = /<(?:\\w+:)?autoFilter[^>]*/g, D3 = /<(?:\\w+:)?pageMargins[^<>]*\\/>/g, ph = /<(?:\\w+:)?sheetPr\\b[^<>]*?\\/>/;\nfunction R3(e, t, r, n, i, f, c) {\n if (!e) return e;\n n || (n = { \"!id\": {} });\n var u = {};\n t.dense && (u[\"!data\"] = []);\n var l = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, h = \"\", x = \"\", m = Qr(e, \"sheetData\");\n m ? (h = e.slice(0, m.index), x = e.slice(m.index + m[0].length)) : h = x = e;\n var _ = h.match(ph);\n _ ? Ac(_[0], u, i, r) : (_ = Qr(h, \"sheetPr\")) && N3(_[0], _[1] || \"\", u, i, r);\n var v = (h.match(/<(?:\\w*:)?dimension/) || { index: -1 }).index;\n if (v > 0) {\n var T = h.slice(v, v + 50).match(y3);\n T && !(t && t.nodim) && F3(u, T[1]);\n }\n var A = Qr(h, \"sheetViews\");\n A && A[1] && U3(A[1], i);\n var g = [];\n if (t.cellStyles) {\n var p = h.match(I3);\n p && b3(g, p);\n }\n m && W3(m[1], u, t, l, f, c, i);\n var y = x.match(O3);\n y && (u[\"!autofilter\"] = B3(y[0]));\n var w = [], P = x.match(S3);\n if (P) for (v = 0; v != P.length; ++v)\n w[v] = Br(P[v].slice(P[v].indexOf(\"=\") + 2));\n var V = x.match(C3);\n V && L3(u, V, n);\n var Z = x.match(D3);\n Z && (u[\"!margins\"] = P3(Ie(Z[0])));\n var M;\n if ((M = x.match(/legacyDrawing r:id=\"(.*?)\"/)) && (u[\"!legrel\"] = M[1]), t && t.nodim && (l.s.c = l.s.r = 0), !u[\"!ref\"] && l.e.c >= l.s.c && l.e.r >= l.s.r && (u[\"!ref\"] = sr(l)), t.sheetRows > 0 && u[\"!ref\"]) {\n var G = Br(u[\"!ref\"]);\n t.sheetRows <= +G.e.r && (G.e.r = t.sheetRows - 1, G.e.r > l.e.r && (G.e.r = l.e.r), G.e.r < G.s.r && (G.s.r = G.e.r), G.e.c > l.e.c && (G.e.c = l.e.c), G.e.c < G.s.c && (G.s.c = G.e.c), u[\"!fullref\"] = u[\"!ref\"], u[\"!ref\"] = sr(G));\n }\n return g.length > 0 && (u[\"!cols\"] = g), w.length > 0 && (u[\"!merges\"] = w), n[\"!id\"][u[\"!legrel\"]] && (u[\"!legdrawel\"] = n[\"!id\"][u[\"!legrel\"]]), u;\n}\nfunction Ac(e, t, r, n) {\n var i = Ie(e);\n r.Sheets[n] || (r.Sheets[n] = {}), i.codeName && (r.Sheets[n].CodeName = ir(Tr(i.codeName)));\n}\nfunction N3(e, t, r, n, i) {\n Ac(e.slice(0, e.indexOf(\">\")), r, n, i);\n}\nfunction L3(e, t, r) {\n for (var n = e[\"!data\"] != null, i = 0; i != t.length; ++i) {\n var f = Ie(Tr(t[i]), !0);\n if (!f.ref) return;\n var c = ((r || {})[\"!id\"] || [])[f.id];\n c ? (f.Target = c.Target, f.location && (f.Target += \"#\" + ir(f.location))) : (f.Target = \"#\" + ir(f.location), c = { Target: f.Target, TargetMode: \"Internal\" }), f.Rel = c, f.tooltip && (f.Tooltip = f.tooltip, delete f.tooltip);\n for (var u = Br(f.ref), l = u.s.r; l <= u.e.r; ++l) for (var h = u.s.c; h <= u.e.c; ++h) {\n var x = xr(h) + _r(l);\n n ? (e[\"!data\"][l] || (e[\"!data\"][l] = []), e[\"!data\"][l][h] || (e[\"!data\"][l][h] = { t: \"z\", v: void 0 }), e[\"!data\"][l][h].l = f) : (e[x] || (e[x] = { t: \"z\", v: void 0 }), e[x].l = f);\n }\n }\n}\nfunction P3(e) {\n var t = {};\n return [\"left\", \"right\", \"top\", \"bottom\", \"header\", \"footer\"].forEach(function(r) {\n e[r] && (t[r] = parseFloat(e[r]));\n }), t;\n}\nfunction b3(e, t) {\n for (var r = !1, n = 0; n != t.length; ++n) {\n var i = Ie(t[n], !0);\n i.hidden && (i.hidden = gr(i.hidden));\n var f = parseInt(i.min, 10) - 1, c = parseInt(i.max, 10) - 1;\n for (i.outlineLevel && (i.level = +i.outlineLevel || 0), delete i.min, delete i.max, i.width = +i.width, !r && i.width && (r = !0, Tc(i.width)), qn(i); f <= c; ) e[f++] = Gr(i);\n }\n}\nfunction B3(e) {\n var t = { ref: (e.match(/ref=\"([^\"]*)\"/) || [])[1] };\n return t;\n}\nvar M3 = /<(?:\\w:)?sheetView(?:[^<>a-z][^<>]*)?\\/?>/g;\nfunction U3(e, t) {\n t.Views || (t.Views = [{}]), (e.match(M3) || []).forEach(function(r, n) {\n var i = Ie(r);\n t.Views[n] || (t.Views[n] = {}), +i.zoomScale && (t.Views[n].zoom = +i.zoomScale), i.rightToLeft && gr(i.rightToLeft) && (t.Views[n].RTL = !0);\n });\n}\nvar W3 = /* @__PURE__ */ function() {\n var e = /<(?:\\w+:)?c[ \\/>]/, t = /<\\/(?:\\w+:)?row>/, r = /r=[\"']([^\"']*)[\"']/, n = /ref=[\"']([^\"']*)[\"']/;\n return function(f, c, u, l, h, x, m) {\n for (var _ = 0, v = \"\", T = [], A = [], g = 0, p = 0, y = 0, w = \"\", P, V, Z = 0, M = 0, G, U, J = 0, z = 0, re = Array.isArray(x.CellXf), ne, Ae = [], he = [], De = c[\"!data\"] != null, le = [], Ee = {}, be = !1, ae = !!u.sheetStubs, Pe = !!((m || {}).WBProps || {}).date1904, Ge = f.split(t), Le = 0, Se = Ge.length; Le != Se; ++Le) {\n v = Ge[Le].trim();\n var Me = v.length;\n if (Me !== 0) {\n var Be = 0;\n e: for (_ = 0; _ < Me; ++_) switch (\n /*x.charCodeAt(ri)*/\n v[_]\n ) {\n case \">\":\n if (\n /*x.charCodeAt(ri-1) != 47*/\n v[_ - 1] != \"/\"\n ) {\n ++_;\n break e;\n }\n if (u && u.cellStyles) {\n if (V = Ie(v.slice(Be, _), !0), Z = V.r != null ? parseInt(V.r, 10) : Z + 1, M = -1, u.sheetRows && u.sheetRows < Z) continue;\n Ee = {}, be = !1, V.ht && (be = !0, Ee.hpt = parseFloat(V.ht), Ee.hpx = M0(Ee.hpt)), V.hidden && gr(V.hidden) && (be = !0, Ee.hidden = !0), V.outlineLevel != null && (be = !0, Ee.level = +V.outlineLevel), be && (le[Z - 1] = Ee);\n }\n break;\n case \"<\":\n Be = _;\n break;\n }\n if (Be >= _) break;\n if (V = Ie(v.slice(Be, _), !0), Z = V.r != null ? parseInt(V.r, 10) : Z + 1, M = -1, !(u.sheetRows && u.sheetRows < Z)) {\n u.nodim || (l.s.r > Z - 1 && (l.s.r = Z - 1), l.e.r < Z - 1 && (l.e.r = Z - 1)), u && u.cellStyles && (Ee = {}, be = !1, V.ht && (be = !0, Ee.hpt = parseFloat(V.ht), Ee.hpx = M0(Ee.hpt)), V.hidden && gr(V.hidden) && (be = !0, Ee.hidden = !0), V.outlineLevel != null && (be = !0, Ee.level = +V.outlineLevel), be && (le[Z - 1] = Ee)), T = v.slice(_).split(e);\n for (var Ke = 0; Ke != T.length && T[Ke].trim().charAt(0) == \"<\"; ++Ke) ;\n for (T = T.slice(Ke), _ = 0; _ != T.length; ++_)\n if (v = T[_].trim(), v.length !== 0) {\n if (A = v.match(r), g = _, p = 0, y = 0, v = \"<c \" + (v.slice(0, 1) == \"<\" ? \">\" : \"\") + v, A != null && A.length === 2) {\n for (g = 0, w = A[1], p = 0; p != w.length && !((y = w.charCodeAt(p) - 64) < 1 || y > 26); ++p)\n g = 26 * g + y;\n --g, M = g;\n } else ++M;\n for (p = 0; p != v.length && v.charCodeAt(p) !== 62; ++p) ;\n if (++p, V = Ie(v.slice(0, p), !0), V.r || (V.r = hr({ r: Z - 1, c: M })), w = v.slice(p), P = { t: \"\" }, (A = Qr(w, \"v\")) != null && /*::cref != null && */\n A[1] !== \"\" && (P.v = ir(A[1])), u.cellFormula) {\n if ((A = Qr(w, \"f\")) != null) {\n if (A[1] == \"\")\n /*::cref != null && cref[0] != null && */\n A[0].indexOf('t=\"shared\"') > -1 && (U = Ie(A[0]), he[U.si] && (P.f = Ul(he[U.si][1], he[U.si][2], V.r)));\n else if (P.f = ir(Tr(A[1]), !0), u.xlfn || (P.f = Wl(P.f)), /*::cref != null && cref[0] != null && */\n A[0].indexOf('t=\"array\"') > -1)\n P.F = (w.match(n) || [])[1], P.F.indexOf(\":\") > -1 && Ae.push([Br(P.F), P.F]);\n else if (\n /*::cref != null && cref[0] != null && */\n A[0].indexOf('t=\"shared\"') > -1\n ) {\n U = Ie(A[0]);\n var N = ir(Tr(A[1]));\n u.xlfn || (N = Wl(N)), he[parseInt(U.si, 10)] = [U, N, V.r];\n }\n } else (A = w.match(/<f[^<>]*\\/>/)) && (U = Ie(A[0]), he[U.si] && (P.f = Ul(he[U.si][1], he[U.si][2], V.r)));\n var K = ot(V.r);\n for (p = 0; p < Ae.length; ++p)\n K.r >= Ae[p][0].s.r && K.r <= Ae[p][0].e.r && K.c >= Ae[p][0].s.c && K.c <= Ae[p][0].e.c && (P.F = Ae[p][1]);\n }\n if (V.t == null && P.v === void 0)\n if (P.f || P.F)\n P.v = 0, P.t = \"n\";\n else if (ae) P.t = \"z\";\n else continue;\n else P.t = V.t || \"n\";\n switch (l.s.c > M && (l.s.c = M), l.e.c < M && (l.e.c = M), P.t) {\n case \"n\":\n if (P.v == \"\" || P.v == null) {\n if (!ae) continue;\n P.t = \"z\";\n } else P.v = parseFloat(P.v);\n break;\n case \"s\":\n if (typeof P.v > \"u\") {\n if (!ae) continue;\n P.t = \"z\";\n } else\n G = I0[parseInt(P.v, 10)], P.v = G.t, P.r = G.r, u.cellHTML && (P.h = G.h);\n break;\n case \"str\":\n P.t = \"s\", P.v = P.v != null ? ir(Tr(P.v), !0) : \"\", u.cellHTML && (P.h = w0(P.v));\n break;\n case \"inlineStr\":\n A = Qr(w, \"is\"), P.t = \"s\", A != null && (G = Ec(A[1])) ? (P.v = G.t, u.cellHTML && (P.h = G.h)) : P.v = \"\";\n break;\n case \"b\":\n P.v = gr(P.v);\n break;\n case \"d\":\n u.cellDates ? P.v = at(P.v, Pe) : (P.v = Kr(at(P.v, Pe), Pe), P.t = \"n\");\n break;\n /* error string in .w, number in .v */\n case \"e\":\n (!u || u.cellText !== !1) && (P.w = P.v), P.v = rt[P.v];\n break;\n }\n if (J = z = 0, ne = null, re && V.s !== void 0 && (ne = x.CellXf[V.s], ne != null && (ne.numFmtId != null && (J = ne.numFmtId), u.cellStyles && ne.fillId != null && (z = ne.fillId))), vh(P, J, z, u, h, x, Pe), u.cellDates && re && P.t == \"n\" && la(Xe[J]) && (P.v = Ja(P.v + (Pe ? 1462 : 0)), P.t = typeof P.v == \"number\" ? \"n\" : \"d\"), V.cm && u.xlmeta) {\n var H = (u.xlmeta.Cell || [])[+V.cm - 1];\n H && H.type == \"XLDAPR\" && (P.D = !0);\n }\n var B;\n u.nodim && (B = ot(V.r), l.s.r > B.r && (l.s.r = B.r), l.e.r < B.r && (l.e.r = B.r)), De ? (B = ot(V.r), c[\"!data\"][B.r] || (c[\"!data\"][B.r] = []), c[\"!data\"][B.r][B.c] = P) : c[V.r] = P;\n }\n }\n }\n }\n le.length > 0 && (c[\"!rows\"] = le);\n };\n}();\nfunction H3(e, t) {\n var r = {}, n = e.l + t;\n r.r = e.read_shift(4), e.l += 4;\n var i = e.read_shift(2);\n e.l += 1;\n var f = e.read_shift(1);\n return e.l = n, f & 7 && (r.level = f & 7), f & 16 && (r.hidden = !0), f & 32 && (r.hpt = i / 20), r;\n}\nvar G3 = Fn;\nfunction V3() {\n}\nfunction X3(e, t) {\n var r = {}, n = e[e.l];\n return ++e.l, r.above = !(n & 64), r.left = !(n & 128), e.l += 18, r.name = _4(e), r;\n}\nfunction $3(e) {\n var t = ra(e);\n return [t];\n}\nfunction z3(e) {\n var t = An(e);\n return [t];\n}\nfunction K3(e) {\n var t = ra(e), r = e.read_shift(1);\n return [t, r, \"b\"];\n}\nfunction Y3(e) {\n var t = An(e), r = e.read_shift(1);\n return [t, r, \"b\"];\n}\nfunction Z3(e) {\n var t = ra(e), r = e.read_shift(1);\n return [t, r, \"e\"];\n}\nfunction J3(e) {\n var t = An(e), r = e.read_shift(1);\n return [t, r, \"e\"];\n}\nfunction q3(e) {\n var t = ra(e), r = e.read_shift(4);\n return [t, r, \"s\"];\n}\nfunction Q3(e) {\n var t = An(e), r = e.read_shift(4);\n return [t, r, \"s\"];\n}\nfunction j3(e) {\n var t = ra(e), r = ut(e);\n return [t, r, \"n\"];\n}\nfunction gh(e) {\n var t = An(e), r = ut(e);\n return [t, r, \"n\"];\n}\nfunction eA(e) {\n var t = ra(e), r = vs(e);\n return [t, r, \"n\"];\n}\nfunction rA(e) {\n var t = An(e), r = vs(e);\n return [t, r, \"n\"];\n}\nfunction tA(e) {\n var t = ra(e), r = gc(e);\n return [t, r, \"is\"];\n}\nfunction aA(e) {\n var t = ra(e), r = lt(e);\n return [t, r, \"str\"];\n}\nfunction nA(e) {\n var t = An(e), r = lt(e);\n return [t, r, \"str\"];\n}\nfunction iA(e, t, r) {\n var n = e.l + t, i = ra(e);\n i.r = r[\"!row\"];\n var f = e.read_shift(1), c = [i, f, \"b\"];\n if (r.cellFormula) {\n e.l += 2;\n var u = _s(e, n - e.l, r);\n c[3] = ct(u, null, i, r.supbooks, r);\n } else e.l = n;\n return c;\n}\nfunction sA(e, t, r) {\n var n = e.l + t, i = ra(e);\n i.r = r[\"!row\"];\n var f = e.read_shift(1), c = [i, f, \"e\"];\n if (r.cellFormula) {\n e.l += 2;\n var u = _s(e, n - e.l, r);\n c[3] = ct(u, null, i, r.supbooks, r);\n } else e.l = n;\n return c;\n}\nfunction fA(e, t, r) {\n var n = e.l + t, i = ra(e);\n i.r = r[\"!row\"];\n var f = ut(e), c = [i, f, \"n\"];\n if (r.cellFormula) {\n e.l += 2;\n var u = _s(e, n - e.l, r);\n c[3] = ct(u, null, i, r.supbooks, r);\n } else e.l = n;\n return c;\n}\nfunction cA(e, t, r) {\n var n = e.l + t, i = ra(e);\n i.r = r[\"!row\"];\n var f = lt(e), c = [i, f, \"str\"];\n if (r.cellFormula) {\n e.l += 2;\n var u = _s(e, n - e.l, r);\n c[3] = ct(u, null, i, r.supbooks, r);\n } else e.l = n;\n return c;\n}\nvar uA = Fn;\nfunction oA(e, t) {\n var r = e.l + t, n = Fn(e), i = ds(e), f = lt(e), c = lt(e), u = lt(e);\n e.l = r;\n var l = { rfx: n, relId: i, loc: f, display: u };\n return c && (l.Tooltip = c), l;\n}\nfunction lA() {\n}\nfunction hA(e, t, r) {\n var n = e.l + t, i = b1(e), f = e.read_shift(1), c = [i];\n if (c[2] = f, r.cellFormula) {\n var u = E3(e, n - e.l, r);\n c[1] = u;\n } else e.l = n;\n return c;\n}\nfunction xA(e, t, r) {\n var n = e.l + t, i = Fn(e), f = [i];\n if (r.cellFormula) {\n var c = w3(e, n - e.l, r);\n f[1] = c, e.l = n;\n } else e.l = n;\n return f;\n}\nvar dA = [\"left\", \"right\", \"top\", \"bottom\", \"header\", \"footer\"];\nfunction vA(e) {\n var t = {};\n return dA.forEach(function(r) {\n t[r] = ut(e);\n }), t;\n}\nfunction pA(e) {\n var t = e.read_shift(2);\n return e.l += 28, { RTL: t & 32 };\n}\nfunction gA() {\n}\nfunction _A() {\n}\nfunction mA(e, t, r, n, i, f, c) {\n if (!e) return e;\n var u = t || {};\n n || (n = { \"!id\": {} });\n var l = {};\n u.dense && (l[\"!data\"] = []);\n var h, x = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, m = !1, _ = !1, v, T, A, g, p, y, w, P, V, Z = [];\n u.biff = 12, u[\"!row\"] = 0;\n var M = 0, G = !1, U = [], J = {}, z = u.supbooks || /*::(*/\n i.supbooks || [[]];\n if (z.sharedf = J, z.arrayf = U, z.SheetNames = i.SheetNames || i.Sheets.map(function(be) {\n return be.name;\n }), !u.supbooks && (u.supbooks = z, i.Names))\n for (var re = 0; re < i.Names.length; ++re) z[0][re + 1] = i.Names[re];\n var ne = [], Ae = [], he = !1;\n os[16] = { n: \"BrtShortReal\", f: gh };\n var De, le = 1462 * +!!((i || {}).WBProps || {}).date1904;\n if (La(e, function(ae, Pe, Ge) {\n if (!_)\n switch (Ge) {\n case 148:\n h = ae;\n break;\n case 0:\n v = ae, u.sheetRows && u.sheetRows <= v.r && (_ = !0), P = _r(g = v.r), u[\"!row\"] = v.r, (ae.hidden || ae.hpt || ae.level != null) && (ae.hpt && (ae.hpx = M0(ae.hpt)), Ae[ae.r] = ae);\n break;\n case 2:\n /* 'BrtCellRk' */\n case 3:\n /* 'BrtCellError' */\n case 4:\n /* 'BrtCellBool' */\n case 5:\n /* 'BrtCellReal' */\n case 6:\n /* 'BrtCellSt' */\n case 7:\n /* 'BrtCellIsst' */\n case 8:\n /* 'BrtFmlaString' */\n case 9:\n /* 'BrtFmlaNum' */\n case 10:\n /* 'BrtFmlaBool' */\n case 11:\n /* 'BrtFmlaError' */\n case 13:\n /* 'BrtShortRk' */\n case 14:\n /* 'BrtShortError' */\n case 15:\n /* 'BrtShortBool' */\n case 16:\n /* 'BrtShortReal' */\n case 17:\n /* 'BrtShortSt' */\n case 18:\n /* 'BrtShortIsst' */\n case 62:\n switch (T = { t: ae[2] }, ae[2]) {\n case \"n\":\n T.v = ae[1];\n break;\n case \"s\":\n w = I0[ae[1]], T.v = w.t, T.r = w.r;\n break;\n case \"b\":\n T.v = !!ae[1];\n break;\n case \"e\":\n T.v = ae[1], u.cellText !== !1 && (T.w = Ct[T.v]);\n break;\n case \"str\":\n T.t = \"s\", T.v = ae[1];\n break;\n case \"is\":\n T.t = \"s\", T.v = ae[1].t;\n break;\n }\n if ((A = c.CellXf[ae[0].iStyleRef]) && vh(T, A.numFmtId, null, u, f, c, le > 0), p = ae[0].c == -1 ? p + 1 : ae[0].c, u.dense ? (l[\"!data\"][g] || (l[\"!data\"][g] = []), l[\"!data\"][g][p] = T) : l[xr(p) + P] = T, u.cellFormula) {\n for (G = !1, M = 0; M < U.length; ++M) {\n var Le = U[M];\n v.r >= Le[0].s.r && v.r <= Le[0].e.r && p >= Le[0].s.c && p <= Le[0].e.c && (T.F = sr(Le[0]), G = !0);\n }\n !G && ae.length > 3 && (T.f = ae[3]);\n }\n if (x.s.r > v.r && (x.s.r = v.r), x.s.c > p && (x.s.c = p), x.e.r < v.r && (x.e.r = v.r), x.e.c < p && (x.e.c = p), u.cellDates && A && T.t == \"n\" && la(Xe[A.numFmtId])) {\n var Se = ya(T.v + le);\n Se && (T.t = \"d\", T.v = new Date(Date.UTC(Se.y, Se.m - 1, Se.d, Se.H, Se.M, Se.S, Se.u)));\n }\n De && (De.type == \"XLDAPR\" && (T.D = !0), De = void 0);\n break;\n case 1:\n /* 'BrtCellBlank' */\n case 12:\n if (!u.sheetStubs || m) break;\n T = { t: \"z\", v: void 0 }, p = ae[0].c == -1 ? p + 1 : ae[0].c, u.dense ? (l[\"!data\"][g] || (l[\"!data\"][g] = []), l[\"!data\"][g][p] = T) : l[xr(p) + P] = T, x.s.r > v.r && (x.s.r = v.r), x.s.c > p && (x.s.c = p), x.e.r < v.r && (x.e.r = v.r), x.e.c < p && (x.e.c = p), De && (De.type == \"XLDAPR\" && (T.D = !0), De = void 0);\n break;\n case 176:\n Z.push(ae);\n break;\n case 49:\n De = ((u.xlmeta || {}).Cell || [])[ae - 1];\n break;\n case 494:\n var Me = n[\"!id\"][ae.relId];\n for (Me ? (ae.Target = Me.Target, ae.loc && (ae.Target += \"#\" + ae.loc), ae.Rel = Me) : ae.relId == \"\" && (ae.Target = \"#\" + ae.loc), g = ae.rfx.s.r; g <= ae.rfx.e.r; ++g) for (p = ae.rfx.s.c; p <= ae.rfx.e.c; ++p)\n u.dense ? (l[\"!data\"][g] || (l[\"!data\"][g] = []), l[\"!data\"][g][p] || (l[\"!data\"][g][p] = { t: \"z\", v: void 0 }), l[\"!data\"][g][p].l = ae) : (y = xr(p) + _r(g), l[y] || (l[y] = { t: \"z\", v: void 0 }), l[y].l = ae);\n break;\n case 426:\n if (!u.cellFormula) break;\n U.push(ae), V = u.dense ? l[\"!data\"][g][p] : l[xr(p) + P], V.f = ct(ae[1], x, { r: v.r, c: p }, z, u), V.F = sr(ae[0]);\n break;\n case 427:\n if (!u.cellFormula) break;\n J[hr(ae[0].s)] = ae[1], V = u.dense ? l[\"!data\"][g][p] : l[xr(p) + P], V.f = ct(ae[1], x, { r: v.r, c: p }, z, u);\n break;\n /* identical to 'ColInfo' in XLS */\n case 60:\n if (!u.cellStyles) break;\n for (; ae.e >= ae.s; )\n ne[ae.e--] = { width: ae.w / 256, hidden: !!(ae.flags & 1), level: ae.level }, he || (he = !0, Tc(ae.w / 256)), qn(ne[ae.e + 1]);\n break;\n case 551:\n ae && (l[\"!legrel\"] = ae);\n break;\n case 161:\n l[\"!autofilter\"] = { ref: sr(ae) };\n break;\n case 476:\n l[\"!margins\"] = ae;\n break;\n case 147:\n i.Sheets[r] || (i.Sheets[r] = {}), ae.name && (i.Sheets[r].CodeName = ae.name), (ae.above || ae.left) && (l[\"!outline\"] = { above: ae.above, left: ae.left });\n break;\n case 137:\n i.Views || (i.Views = [{}]), i.Views[0] || (i.Views[0] = {}), ae.RTL && (i.Views[0].RTL = !0);\n break;\n case 485:\n break;\n case 64:\n /* 'BrtDVal' */\n case 1053:\n break;\n case 151:\n break;\n case 152:\n /* 'BrtSel' */\n case 175:\n /* 'BrtAFilterDateGroupItem' */\n case 644:\n /* 'BrtActiveX' */\n case 625:\n /* 'BrtBigName' */\n case 562:\n /* 'BrtBkHim' */\n case 396:\n /* 'BrtBrk' */\n case 1112:\n /* 'BrtCFIcon' */\n case 1146:\n /* 'BrtCFRuleExt' */\n case 471:\n /* 'BrtCFVO' */\n case 1050:\n /* 'BrtCFVO14' */\n case 649:\n /* 'BrtCellIgnoreEC' */\n case 1105:\n /* 'BrtCellIgnoreEC14' */\n case 589:\n /* 'BrtCellSmartTagProperty' */\n case 607:\n /* 'BrtCellWatch' */\n case 564:\n /* 'BrtColor' */\n case 1055:\n /* 'BrtColor14' */\n case 168:\n /* 'BrtColorFilter' */\n case 174:\n /* 'BrtCustomFilter' */\n case 1180:\n /* 'BrtCustomFilter14' */\n case 499:\n /* 'BrtDRef' */\n case 507:\n /* 'BrtDXF' */\n case 550:\n /* 'BrtDrawing' */\n case 171:\n /* 'BrtDynamicFilter' */\n case 167:\n /* 'BrtFilter' */\n case 1177:\n /* 'BrtFilter14' */\n case 169:\n /* 'BrtIconFilter' */\n case 1181:\n /* 'BrtIconFilter14' */\n case 552:\n /* 'BrtLegacyDrawingHF' */\n case 661:\n /* 'BrtListPart' */\n case 639:\n /* 'BrtOleObject' */\n case 478:\n /* 'BrtPageSetup' */\n case 537:\n /* 'BrtPhoneticInfo' */\n case 477:\n /* 'BrtPrintOptions' */\n case 536:\n /* 'BrtRangeProtection' */\n case 1103:\n /* 'BrtRangeProtection14' */\n case 680:\n /* 'BrtRangeProtectionIso' */\n case 1104:\n /* 'BrtRangeProtectionIso14' */\n case 1024:\n /* 'BrtRwDescent' */\n case 663:\n /* 'BrtSheetCalcProp' */\n case 535:\n /* 'BrtSheetProtection' */\n case 678:\n /* 'BrtSheetProtectionIso' */\n case 504:\n /* 'BrtSlc' */\n case 1043:\n /* 'BrtSparkline' */\n case 428:\n /* 'BrtTable' */\n case 170:\n /* 'BrtTop10Filter' */\n case 3072:\n /* 'BrtUid' */\n case 50:\n /* 'BrtValueMeta' */\n case 2070:\n /* 'BrtWebExtension' */\n case 1045:\n break;\n case 35:\n m = !0;\n break;\n case 36:\n m = !1;\n break;\n case 37:\n m = !0;\n break;\n case 38:\n m = !1;\n break;\n default:\n if (!Pe.T) {\n if (!m || u.WTF) throw new Error(\"Unexpected record 0x\" + Ge.toString(16));\n }\n }\n }, u), delete u.supbooks, delete u[\"!row\"], !l[\"!ref\"] && (x.s.r < 2e6 || h && (h.e.r > 0 || h.e.c > 0 || h.s.r > 0 || h.s.c > 0)) && (l[\"!ref\"] = sr(h || x)), u.sheetRows && l[\"!ref\"]) {\n var Ee = Br(l[\"!ref\"]);\n u.sheetRows <= +Ee.e.r && (Ee.e.r = u.sheetRows - 1, Ee.e.r > x.e.r && (Ee.e.r = x.e.r), Ee.e.r < Ee.s.r && (Ee.s.r = Ee.e.r), Ee.e.c > x.e.c && (Ee.e.c = x.e.c), Ee.e.c < Ee.s.c && (Ee.s.c = Ee.e.c), l[\"!fullref\"] = l[\"!ref\"], l[\"!ref\"] = sr(Ee));\n }\n return Z.length > 0 && (l[\"!merges\"] = Z), ne.length > 0 && (l[\"!cols\"] = ne), Ae.length > 0 && (l[\"!rows\"] = Ae), n[\"!id\"][l[\"!legrel\"]] && (l[\"!legdrawel\"] = n[\"!id\"][l[\"!legrel\"]]), l;\n}\nfunction EA(e) {\n var t = [], r = e.match(/^<c:numCache>/), n;\n (e.match(/<c:pt idx=\"(\\d*)\"[^<>\\/]*><c:v>([^<])<\\/c:v><\\/c:pt>/mg) || []).forEach(function(f) {\n var c = f.match(/<c:pt idx=\"(\\d*)\"[^<>\\/]*><c:v>([^<]*)<\\/c:v><\\/c:pt>/);\n c && (t[+c[1]] = r ? +c[2] : c[2]);\n });\n var i = ir((pn(e, \"c:formatCode\") || [\"\", \"General\"])[1]);\n return (hc(e, \"<c:f>\", \"</c:f>\") || []).forEach(function(f) {\n n = f.replace(/<[^<>]*>/g, \"\");\n }), [t, i, n];\n}\nfunction TA(e, t, r, n, i, f) {\n var c = f || { \"!type\": \"chart\" };\n if (!e) return f;\n var u = 0, l = 0, h = \"A\", x = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } };\n return (hc(e, \"<c:numCache>\", \"</c:numCache>\") || []).forEach(function(m) {\n var _ = EA(m);\n x.s.r = x.s.c = 0, x.e.c = u, h = xr(u), _[0].forEach(function(v, T) {\n c[\"!data\"] ? (c[\"!data\"][T] || (c[\"!data\"][T] = []), c[\"!data\"][T][u] = { t: \"n\", v, z: _[1] }) : c[h + _r(T)] = { t: \"n\", v, z: _[1] }, l = T;\n }), x.e.r < l && (x.e.r = l), ++u;\n }), u > 0 && (c[\"!ref\"] = sr(x)), c;\n}\nfunction wA(e, t, r, n, i) {\n if (!e) return e;\n n || (n = { \"!id\": {} });\n var f = { \"!type\": \"chart\", \"!drawel\": null, \"!rel\": \"\" }, c, u = e.match(ph);\n return u && Ac(u[0], f, i, r), (c = e.match(/drawing r:id=\"(.*?)\"/)) && (f[\"!rel\"] = c[1]), n[\"!id\"][f[\"!rel\"]] && (f[\"!drawel\"] = n[\"!id\"][f[\"!rel\"]]), f;\n}\nfunction kA(e, t) {\n e.l += 10;\n var r = lt(e);\n return { name: r };\n}\nfunction AA(e, t, r, n, i) {\n if (!e) return e;\n n || (n = { \"!id\": {} });\n var f = { \"!type\": \"chart\", \"!drawel\": null, \"!rel\": \"\" }, c = !1;\n return La(e, function(l, h, x) {\n switch (x) {\n case 550:\n f[\"!rel\"] = l;\n break;\n case 651:\n i.Sheets[r] || (i.Sheets[r] = {}), l.name && (i.Sheets[r].CodeName = l.name);\n break;\n case 562:\n /* 'BrtBkHim' */\n case 652:\n /* 'BrtCsPageSetup' */\n case 669:\n /* 'BrtCsProtection' */\n case 679:\n /* 'BrtCsProtectionIso' */\n case 551:\n /* 'BrtLegacyDrawing' */\n case 552:\n /* 'BrtLegacyDrawingHF' */\n case 476:\n /* 'BrtMargins' */\n case 3072:\n break;\n case 35:\n c = !0;\n break;\n case 36:\n c = !1;\n break;\n case 37:\n break;\n case 38:\n break;\n default:\n if (!(h.T > 0)) {\n if (!(h.T < 0)) {\n if (!c || t.WTF) throw new Error(\"Unexpected record 0x\" + x.toString(16));\n }\n }\n }\n }, t), n[\"!id\"][f[\"!rel\"]] && (f[\"!drawel\"] = n[\"!id\"][f[\"!rel\"]]), f;\n}\nvar _h = [\n [\"allowRefreshQuery\", !1, \"bool\"],\n [\"autoCompressPictures\", !0, \"bool\"],\n [\"backupFile\", !1, \"bool\"],\n [\"checkCompatibility\", !1, \"bool\"],\n [\"CodeName\", \"\"],\n [\"date1904\", !1, \"bool\"],\n [\"defaultThemeVersion\", 0, \"int\"],\n [\"filterPrivacy\", !1, \"bool\"],\n [\"hidePivotFieldList\", !1, \"bool\"],\n [\"promptedSolutions\", !1, \"bool\"],\n [\"publishItems\", !1, \"bool\"],\n [\"refreshAllConnections\", !1, \"bool\"],\n [\"saveExternalLinkValues\", !0, \"bool\"],\n [\"showBorderUnselectedTables\", !0, \"bool\"],\n [\"showInkAnnotation\", !0, \"bool\"],\n [\"showObjects\", \"all\"],\n [\"showPivotChartFilter\", !1, \"bool\"],\n [\"updateLinks\", \"userSet\"]\n], FA = [\n [\"activeTab\", 0, \"int\"],\n [\"autoFilterDateGrouping\", !0, \"bool\"],\n [\"firstSheet\", 0, \"int\"],\n [\"minimized\", !1, \"bool\"],\n [\"showHorizontalScroll\", !0, \"bool\"],\n [\"showSheetTabs\", !0, \"bool\"],\n [\"showVerticalScroll\", !0, \"bool\"],\n [\"tabRatio\", 600, \"int\"],\n [\"visibility\", \"visible\"]\n //window{Height,Width}, {x,y}Window\n], SA = [\n //['state', 'visible']\n], CA = [\n [\"calcCompleted\", \"true\"],\n [\"calcMode\", \"auto\"],\n [\"calcOnSave\", \"true\"],\n [\"concurrentCalc\", \"true\"],\n [\"fullCalcOnLoad\", \"false\"],\n [\"fullPrecision\", \"true\"],\n [\"iterate\", \"false\"],\n [\"iterateCount\", \"100\"],\n [\"iterateDelta\", \"0.001\"],\n [\"refMode\", \"A1\"]\n];\nfunction $l(e, t) {\n for (var r = 0; r != e.length; ++r)\n for (var n = e[r], i = 0; i != t.length; ++i) {\n var f = t[i];\n if (n[f[0]] == null) n[f[0]] = f[1];\n else switch (f[2]) {\n case \"bool\":\n typeof n[f[0]] == \"string\" && (n[f[0]] = gr(n[f[0]]));\n break;\n case \"int\":\n typeof n[f[0]] == \"string\" && (n[f[0]] = parseInt(n[f[0]], 10));\n break;\n }\n }\n}\nfunction zl(e, t) {\n for (var r = 0; r != t.length; ++r) {\n var n = t[r];\n if (e[n[0]] == null) e[n[0]] = n[1];\n else switch (n[2]) {\n case \"bool\":\n typeof e[n[0]] == \"string\" && (e[n[0]] = gr(e[n[0]]));\n break;\n case \"int\":\n typeof e[n[0]] == \"string\" && (e[n[0]] = parseInt(e[n[0]], 10));\n break;\n }\n }\n}\nfunction mh(e) {\n zl(e.WBProps, _h), zl(e.CalcPr, CA), $l(e.WBView, FA), $l(e.Sheets, SA), Kn.date1904 = gr(e.WBProps.date1904);\n}\nvar yA = /* @__PURE__ */ \":][*?/\\\\\".split(\"\");\nfunction IA(e, t) {\n try {\n if (e == \"\") throw new Error(\"Sheet name cannot be blank\");\n if (e.length > 31) throw new Error(\"Sheet name cannot exceed 31 chars\");\n if (e.charCodeAt(0) == 39 || e.charCodeAt(e.length - 1) == 39) throw new Error(\"Sheet name cannot start or end with apostrophe (')\");\n if (e.toLowerCase() == \"history\") throw new Error(\"Sheet name cannot be 'History'\");\n yA.forEach(function(r) {\n if (e.indexOf(r) != -1)\n throw new Error(\"Sheet name cannot contain : \\\\ / ? * [ ]\");\n });\n } catch (r) {\n throw r;\n }\n return !0;\n}\nvar OA = /<\\w+:workbook/;\nfunction DA(e, t) {\n if (!e) throw new Error(\"Could not find file\");\n var r = (\n /*::(*/\n { AppVersion: {}, WBProps: {}, WBView: [], Sheets: [], CalcPr: {}, Names: [], xmlns: \"\" }\n ), n = !1, i = \"xmlns\", f = {}, c = 0;\n if (e.replace(nt, function(l, h) {\n var x = Ie(l);\n switch (ea(x[0])) {\n case \"<?xml\":\n break;\n /* 18.2.27 workbook CT_Workbook 1 */\n case \"<workbook\":\n l.match(OA) && (i = \"xmlns\" + l.match(/<(\\w+):/)[1]), r.xmlns = x[i];\n break;\n case \"</workbook>\":\n break;\n /* 18.2.13 fileVersion CT_FileVersion ? */\n case \"<fileVersion\":\n delete x[0], r.AppVersion = x;\n break;\n case \"<fileVersion/>\":\n case \"</fileVersion>\":\n break;\n /* 18.2.12 fileSharing CT_FileSharing ? */\n case \"<fileSharing\":\n break;\n case \"<fileSharing/>\":\n break;\n /* 18.2.28 workbookPr CT_WorkbookPr ? */\n case \"<workbookPr\":\n case \"<workbookPr/>\":\n _h.forEach(function(m) {\n if (x[m[0]] != null)\n switch (m[2]) {\n case \"bool\":\n r.WBProps[m[0]] = gr(x[m[0]]);\n break;\n case \"int\":\n r.WBProps[m[0]] = parseInt(x[m[0]], 10);\n break;\n default:\n r.WBProps[m[0]] = x[m[0]];\n }\n }), x.codeName && (r.WBProps.CodeName = Tr(x.codeName));\n break;\n case \"</workbookPr>\":\n break;\n /* 18.2.29 workbookProtection CT_WorkbookProtection ? */\n case \"<workbookProtection\":\n break;\n case \"<workbookProtection/>\":\n break;\n /* 18.2.1 bookViews CT_BookViews ? */\n case \"<bookViews\":\n case \"<bookViews>\":\n case \"</bookViews>\":\n break;\n /* 18.2.30 workbookView CT_BookView + */\n case \"<workbookView\":\n case \"<workbookView/>\":\n delete x[0], r.WBView.push(x);\n break;\n case \"</workbookView>\":\n break;\n /* 18.2.20 sheets CT_Sheets 1 */\n case \"<sheets\":\n case \"<sheets>\":\n case \"</sheets>\":\n break;\n // aggregate sheet\n /* 18.2.19 sheet CT_Sheet + */\n case \"<sheet\":\n switch (x.state) {\n case \"hidden\":\n x.Hidden = 1;\n break;\n case \"veryHidden\":\n x.Hidden = 2;\n break;\n default:\n x.Hidden = 0;\n }\n delete x.state, x.name = ir(Tr(x.name)), delete x[0], r.Sheets.push(x);\n break;\n case \"</sheet>\":\n break;\n /* 18.2.15 functionGroups CT_FunctionGroups ? */\n case \"<functionGroups\":\n case \"<functionGroups/>\":\n break;\n /* 18.2.14 functionGroup CT_FunctionGroup + */\n case \"<functionGroup\":\n break;\n /* 18.2.9 externalReferences CT_ExternalReferences ? */\n case \"<externalReferences\":\n case \"</externalReferences>\":\n case \"<externalReferences>\":\n break;\n /* 18.2.8 externalReference CT_ExternalReference + */\n case \"<externalReference\":\n break;\n /* 18.2.6 definedNames CT_DefinedNames ? */\n case \"<definedNames/>\":\n break;\n case \"<definedNames>\":\n case \"<definedNames\":\n n = !0;\n break;\n case \"</definedNames>\":\n n = !1;\n break;\n /* 18.2.5 definedName CT_DefinedName + */\n case \"<definedName\":\n f = {}, f.Name = Tr(x.name), x.comment && (f.Comment = x.comment), x.localSheetId && (f.Sheet = +x.localSheetId), gr(x.hidden || \"0\") && (f.Hidden = !0), c = h + l.length;\n break;\n case \"</definedName>\":\n f.Ref = ir(Tr(e.slice(c, h))), r.Names.push(f);\n break;\n case \"<definedName/>\":\n break;\n /* 18.2.2 calcPr CT_CalcPr ? */\n case \"<calcPr\":\n delete x[0], r.CalcPr = x;\n break;\n case \"<calcPr/>\":\n delete x[0], r.CalcPr = x;\n break;\n case \"</calcPr>\":\n break;\n /* 18.2.16 oleSize CT_OleSize ? (ref required) */\n case \"<oleSize\":\n break;\n /* 18.2.4 customWorkbookViews CT_CustomWorkbookViews ? */\n case \"<customWorkbookViews>\":\n case \"</customWorkbookViews>\":\n case \"<customWorkbookViews\":\n break;\n /* 18.2.3 customWorkbookView CT_CustomWorkbookView + */\n case \"<customWorkbookView\":\n case \"</customWorkbookView>\":\n break;\n /* 18.2.18 pivotCaches CT_PivotCaches ? */\n case \"<pivotCaches>\":\n case \"</pivotCaches>\":\n case \"<pivotCaches\":\n break;\n /* 18.2.17 pivotCache CT_PivotCache ? */\n case \"<pivotCache\":\n break;\n /* 18.2.21 smartTagPr CT_SmartTagPr ? */\n case \"<smartTagPr\":\n case \"<smartTagPr/>\":\n break;\n /* 18.2.23 smartTagTypes CT_SmartTagTypes ? */\n case \"<smartTagTypes\":\n case \"<smartTagTypes>\":\n case \"</smartTagTypes>\":\n break;\n /* 18.2.22 smartTagType CT_SmartTagType ? */\n case \"<smartTagType\":\n break;\n /* 18.2.24 webPublishing CT_WebPublishing ? */\n case \"<webPublishing\":\n case \"<webPublishing/>\":\n break;\n /* 18.2.11 fileRecoveryPr CT_FileRecoveryPr ? */\n case \"<fileRecoveryPr\":\n case \"<fileRecoveryPr/>\":\n break;\n /* 18.2.26 webPublishObjects CT_WebPublishObjects ? */\n case \"<webPublishObjects>\":\n case \"<webPublishObjects\":\n case \"</webPublishObjects>\":\n break;\n /* 18.2.25 webPublishObject CT_WebPublishObject ? */\n case \"<webPublishObject\":\n break;\n /* 18.2.10 extLst CT_ExtensionList ? */\n case \"<extLst\":\n case \"<extLst>\":\n case \"</extLst>\":\n case \"<extLst/>\":\n break;\n /* 18.2.7 ext CT_Extension + */\n case \"<ext\":\n n = !0;\n break;\n //TODO: check with versions of excel\n case \"</ext>\":\n n = !1;\n break;\n /* Others */\n case \"<ArchID\":\n break;\n case \"<AlternateContent\":\n case \"<AlternateContent>\":\n n = !0;\n break;\n case \"</AlternateContent>\":\n n = !1;\n break;\n /* TODO */\n case \"<revisionPtr\":\n break;\n default:\n if (!n && t.WTF) throw new Error(\"unrecognized \" + x[0] + \" in workbook\");\n }\n return l;\n }), jm.indexOf(r.xmlns) === -1) throw new Error(\"Unknown Namespace: \" + r.xmlns);\n return mh(r), r;\n}\nfunction RA(e, t) {\n var r = {};\n return r.Hidden = e.read_shift(4), r.iTabID = e.read_shift(4), r.strRelID = jf(e), r.name = lt(e), r;\n}\nfunction NA(e, t) {\n var r = {}, n = e.read_shift(4);\n r.defaultThemeVersion = e.read_shift(4);\n var i = t > 8 ? lt(e) : \"\";\n return i.length > 0 && (r.CodeName = i), r.autoCompressPictures = !!(n & 65536), r.backupFile = !!(n & 64), r.checkCompatibility = !!(n & 4096), r.date1904 = !!(n & 1), r.filterPrivacy = !!(n & 8), r.hidePivotFieldList = !!(n & 1024), r.promptedSolutions = !!(n & 16), r.publishItems = !!(n & 2048), r.refreshAllConnections = !!(n & 262144), r.saveExternalLinkValues = !!(n & 128), r.showBorderUnselectedTables = !!(n & 4), r.showInkAnnotation = !!(n & 32), r.showObjects = [\"all\", \"placeholders\", \"none\"][n >> 13 & 3], r.showPivotChartFilter = !!(n & 32768), r.updateLinks = [\"userSet\", \"never\", \"always\"][n >> 8 & 3], r;\n}\nfunction LA(e, t) {\n var r = {};\n return e.read_shift(4), r.ArchID = e.read_shift(4), e.l += t - 8, r;\n}\nfunction PA(e, t, r) {\n var n = e.l + t, i = e.read_shift(4);\n e.l += 1;\n var f = e.read_shift(4), c = m4(e), u, l = \"\";\n try {\n u = T3(e, 0, r);\n try {\n l = ds(e);\n } catch {\n }\n } catch {\n console.error(\"Could not parse defined name \" + c);\n }\n i & 32 && (c = \"_xlnm.\" + c), e.l = n;\n var h = { Name: c, Ptg: u, Flags: i };\n return f < 268435455 && (h.Sheet = f), l && (h.Comment = l), h;\n}\nfunction bA(e, t) {\n var r = { AppVersion: {}, WBProps: {}, WBView: [], Sheets: [], CalcPr: {}, xmlns: \"\" }, n = [], i = !1;\n t || (t = {}), t.biff = 12;\n var f = [], c = [[]];\n return c.SheetNames = [], c.XTI = [], os[16] = { n: \"BrtFRTArchID$\", f: LA }, La(e, function(l, h, x) {\n switch (x) {\n case 156:\n c.SheetNames.push(l.name), r.Sheets.push(l);\n break;\n case 153:\n r.WBProps = l;\n break;\n case 39:\n l.Sheet != null && (t.SID = l.Sheet), l.Ref = l.Ptg ? ct(l.Ptg, null, null, c, t) : \"#REF!\", delete t.SID, delete l.Ptg, f.push(l);\n break;\n case 1036:\n break;\n case 357:\n /* 'BrtSupSelf' */\n case 358:\n /* 'BrtSupSame' */\n case 355:\n /* 'BrtSupBookSrc' */\n case 667:\n c[0].length ? c.push([x, l]) : c[0] = [x, l], c[c.length - 1].XTI = [];\n break;\n case 362:\n c.length === 0 && (c[0] = [], c[0].XTI = []), c[c.length - 1].XTI = c[c.length - 1].XTI.concat(l), c.XTI = c.XTI.concat(l);\n break;\n case 361:\n break;\n case 2071:\n /* 'BrtAbsPath15' */\n case 158:\n /* 'BrtBookView' */\n case 143:\n /* 'BrtBeginBundleShs' */\n case 664:\n /* 'BrtBeginFnGroup' */\n case 353:\n break;\n /* case 'BrtModelTimeGroupingCalcCol' */\n case 3072:\n /* 'BrtUid' */\n case 3073:\n /* 'BrtRevisionPtr' */\n case 534:\n /* 'BrtBookProtection' */\n case 677:\n /* 'BrtBookProtectionIso' */\n case 157:\n /* 'BrtCalcProp' */\n case 610:\n /* 'BrtCrashRecErr' */\n case 2050:\n /* 'BrtDecoupledPivotCacheID' */\n case 155:\n /* 'BrtFileRecover' */\n case 548:\n /* 'BrtFileSharing' */\n case 676:\n /* 'BrtFileSharingIso' */\n case 128:\n /* 'BrtFileVersion' */\n case 665:\n /* 'BrtFnGroup' */\n case 2128:\n /* 'BrtModelRelationship' */\n case 2125:\n /* 'BrtModelTable' */\n case 549:\n /* 'BrtOleSize' */\n case 2053:\n /* 'BrtPivotTableRef' */\n case 596:\n /* 'BrtSmartTagType' */\n case 2076:\n /* 'BrtTableSlicerCacheID' */\n case 2075:\n /* 'BrtTableSlicerCacheIDs' */\n case 2082:\n /* 'BrtTimelineCachePivotCacheID' */\n case 397:\n /* 'BrtUserBookView' */\n case 154:\n /* 'BrtWbFactoid' */\n case 1117:\n /* 'BrtWbProp14' */\n case 553:\n /* 'BrtWebOpt' */\n case 2091:\n break;\n case 35:\n n.push(x), i = !0;\n break;\n case 36:\n n.pop(), i = !1;\n break;\n case 37:\n n.push(x), i = !0;\n break;\n case 38:\n n.pop(), i = !1;\n break;\n case 16:\n break;\n default:\n if (!h.T) {\n if (!i || t.WTF && n[n.length - 1] != 37 && n[n.length - 1] != 35) throw new Error(\"Unexpected record 0x\" + x.toString(16));\n }\n }\n }, t), mh(r), r.Names = f, r.supbooks = c, r;\n}\nfunction BA(e, t, r) {\n return t.slice(-4) === \".bin\" ? bA(e, r) : DA(e, r);\n}\nfunction MA(e, t, r, n, i, f, c, u) {\n return t.slice(-4) === \".bin\" ? mA(e, n, r, i, f, c, u) : R3(e, n, r, i, f, c, u);\n}\nfunction UA(e, t, r, n, i, f, c, u) {\n return t.slice(-4) === \".bin\" ? AA(e, n, r, i, f) : wA(e, n, r, i, f);\n}\nfunction WA(e, t, r, n, i, f, c, u) {\n return t.slice(-4) === \".bin\" ? Qw() : jw();\n}\nfunction HA(e, t, r, n, i, f, c, u) {\n return t.slice(-4) === \".bin\" ? Jw() : qw();\n}\nfunction GA(e, t, r, n) {\n return t.slice(-4) === \".bin\" ? _w(e, r, n) : hw(e, r, n);\n}\nfunction VA(e, t, r) {\n return t.slice(-4) === \".bin\" ? NT(e, r) : DT(e, r);\n}\nfunction XA(e, t, r) {\n return t.slice(-4) === \".bin\" ? Kw(e, r) : Gw(e, r);\n}\nfunction $A(e, t, r) {\n return t.slice(-4) === \".bin\" ? Mw(e) : bw(e);\n}\nfunction zA(e, t, r, n) {\n return r.slice(-4) === \".bin\" ? Uw(e, t, r, n) : void 0;\n}\nfunction KA(e, t, r) {\n return t.slice(-4) === \".bin\" ? Lw(e, t, r) : Pw(e, t, r);\n}\nvar Eh = /\\b((?:\\w+:)?[\\w]+)=((?:\")([^\"]*)(?:\")|(?:')([^']*)(?:'))/g, Th = /\\b((?:\\w+:)?[\\w]+)=((?:\")(?:[^\"]*)(?:\")|(?:')(?:[^']*)(?:'))/;\nfunction ca(e, t) {\n var r = e.split(/\\s+/), n = [];\n if (n[0] = r[0], r.length === 1) return n;\n var i = e.match(Eh), f, c, u, l;\n if (i) for (l = 0; l != i.length; ++l)\n f = i[l].match(Th), (c = f[1].indexOf(\":\")) === -1 ? n[f[1]] = f[2].slice(1, f[2].length - 1) : (f[1].slice(0, 6) === \"xmlns:\" ? u = \"xmlns\" + f[1].slice(6) : u = f[1].slice(c + 1), n[u] = f[2].slice(1, f[2].length - 1));\n return n;\n}\nfunction YA(e) {\n var t = e.split(/\\s+/), r = {};\n if (t.length === 1) return r;\n var n = e.match(Eh), i, f, c, u;\n if (n) for (u = 0; u != n.length; ++u)\n i = n[u].match(Th), (f = i[1].indexOf(\":\")) === -1 ? r[i[1]] = i[2].slice(1, i[2].length - 1) : (i[1].slice(0, 6) === \"xmlns:\" ? c = \"xmlns\" + i[1].slice(6) : c = i[1].slice(f + 1), r[c] = i[2].slice(1, i[2].length - 1));\n return r;\n}\nvar D0;\nfunction ZA(e, t, r) {\n var n = D0[e] || ir(e);\n return n === \"General\" ? mn(t) : Wt(n, t, { date1904: !!r });\n}\nfunction JA(e, t, r, n) {\n var i = n;\n switch ((r[0].match(/dt:dt=\"([\\w.]+)\"/) || [\"\", \"\"])[1]) {\n case \"boolean\":\n i = gr(n);\n break;\n case \"i2\":\n case \"int\":\n i = parseInt(n, 10);\n break;\n case \"r4\":\n case \"float\":\n i = parseFloat(n);\n break;\n case \"date\":\n case \"dateTime.tz\":\n i = at(n);\n break;\n case \"i8\":\n case \"string\":\n case \"fixed\":\n case \"uuid\":\n case \"bin.base64\":\n break;\n default:\n throw new Error(\"bad custprop:\" + r[0]);\n }\n e[ir(t)] = i;\n}\nfunction qA(e, t, r, n) {\n if (e.t !== \"z\") {\n if (!r || r.cellText !== !1) try {\n e.t === \"e\" ? e.w = e.w || Ct[e.v] : t === \"General\" ? e.t === \"n\" ? (e.v | 0) === e.v ? e.w = e.v.toString(10) : e.w = L0(e.v) : e.w = mn(e.v) : e.w = ZA(t || \"General\", e.v, n);\n } catch (c) {\n if (r.WTF) throw c;\n }\n try {\n var i = D0[t] || t || \"General\";\n if (r.cellNF && (e.z = i), r.cellDates && e.t == \"n\" && la(i)) {\n var f = ya(e.v + (n ? 1462 : 0));\n f && (e.t = \"d\", e.v = new Date(Date.UTC(f.y, f.m - 1, f.d, f.H, f.M, f.S, f.u)));\n }\n } catch (c) {\n if (r.WTF) throw c;\n }\n }\n}\nfunction QA(e, t, r) {\n if (r.cellStyles && t.Interior) {\n var n = t.Interior;\n n.Pattern && (n.patternType = sw[n.Pattern] || n.Pattern);\n }\n e[t.ID] = t;\n}\nfunction jA(e, t, r, n, i, f, c, u, l, h, x) {\n var m = \"General\", _ = n.StyleID, v = {};\n h = h || {};\n var T = [], A = 0;\n for (_ === void 0 && u && (_ = u.StyleID), _ === void 0 && c && (_ = c.StyleID); f[_] !== void 0; ) {\n var g = f[_];\n if (g.nf && (m = g.nf), g.Interior && T.push(g.Interior), !g.Parent) break;\n _ = g.Parent;\n }\n switch (r.Type) {\n case \"Boolean\":\n n.t = \"b\", n.v = gr(e);\n break;\n case \"String\":\n n.t = \"s\", n.r = hl(ir(e)), n.v = e.indexOf(\"<\") > -1 ? ir(t || e).replace(/<[^<>]*>/g, \"\") : n.r;\n break;\n case \"DateTime\":\n e.slice(-1) != \"Z\" && (e += \"Z\"), n.v = Kr(at(e, x), x), n.v !== n.v && (n.v = ir(e)), (!m || m == \"General\") && (m = \"yyyy-mm-dd\");\n /* falls through */\n case \"Number\":\n n.v === void 0 && (n.v = +e), n.t || (n.t = \"n\");\n break;\n case \"Error\":\n n.t = \"e\", n.v = rt[e], h.cellText !== !1 && (n.w = e);\n break;\n default:\n e == \"\" && t == \"\" ? n.t = \"z\" : (n.t = \"s\", n.v = hl(t || e));\n break;\n }\n if (qA(n, m, h, x), h.cellFormula !== !1)\n if (n.Formula) {\n var p = ir(n.Formula);\n p.charCodeAt(0) == 61 && (p = p.slice(1)), n.f = _n(p, i), delete n.Formula, n.ArrayRange == \"RC\" ? n.F = _n(\"RC:RC\", i) : n.ArrayRange && (n.F = _n(n.ArrayRange, i), l.push([Br(n.F), n.F]));\n } else\n for (A = 0; A < l.length; ++A)\n i.r >= l[A][0].s.r && i.r <= l[A][0].e.r && i.c >= l[A][0].s.c && i.c <= l[A][0].e.c && (n.F = l[A][1]);\n h.cellStyles && (T.forEach(function(y) {\n !v.patternType && y.patternType && (v.patternType = y.patternType);\n }), n.s = v), n.StyleID !== void 0 && (n.ixfe = n.StyleID);\n}\nfunction eF(e) {\n return U1.indexOf(\"_xlnm.\" + e) > -1 ? \"_xlnm.\" + e : e;\n}\nfunction rF(e) {\n e.t = e.v || \"\", e.t = e.t.replace(/\\r\\n/g, `\n`).replace(/\\r/g, `\n`), e.v = e.w = e.ixfe = void 0;\n}\nfunction Yf(e, t) {\n var r = t || {};\n o1();\n var n = m0(xs(e));\n (r.type == \"binary\" || r.type == \"array\" || r.type == \"base64\") && (n = Tr(n));\n var i = n.slice(0, 1024).toLowerCase(), f = !1;\n if (i = i.replace(/\".*?\"/g, \"\"), (i.indexOf(\">\") & 1023) > Math.min(i.indexOf(\",\") & 1023, i.indexOf(\";\") & 1023)) {\n var c = Gr(r);\n return c.type = \"string\", b0.to_workbook(n, c);\n }\n if (i.indexOf(\"<?xml\") == -1 && [\"html\", \"table\", \"head\", \"meta\", \"script\", \"style\", \"div\"].forEach(function(Re) {\n i.indexOf(\"<\" + Re) >= 0 && (f = !0);\n }), f) return oF(n, r);\n D0 = {\n \"General Number\": \"General\",\n \"General Date\": Xe[22],\n \"Long Date\": \"dddd, mmmm dd, yyyy\",\n \"Medium Date\": Xe[15],\n \"Short Date\": Xe[14],\n \"Long Time\": Xe[19],\n \"Medium Time\": Xe[18],\n \"Short Time\": Xe[20],\n Currency: '\"$\"#,##0.00_);[Red]\\\\(\"$\"#,##0.00\\\\)',\n Fixed: Xe[2],\n Standard: Xe[4],\n Percent: Xe[10],\n Scientific: Xe[11],\n \"Yes/No\": '\"Yes\";\"Yes\";\"No\";@',\n \"True/False\": '\"True\";\"True\";\"False\";@',\n \"On/Off\": '\"Yes\";\"Yes\";\"No\";@'\n };\n var u, l = [], h, x = {}, m = [], _ = {}, v = \"\";\n r.dense && (_[\"!data\"] = []);\n var T = {}, A = {}, g = ca('<Data ss:Type=\"String\">'), p = 0, y = 0, w = 0, P = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, V = {}, Z = {}, M = \"\", G = 0, U = [], J = {}, z = {}, re = 0, ne = [], Ae = [], he = {}, De = [], le, Ee = !1, be = [], ae = [], Pe = {}, Ge = 0, Le = 0, Se = { Sheets: [], WBProps: { date1904: !1 } }, Me = {};\n Wr.lastIndex = 0, n = H0(n, \"<!--\", \"-->\");\n for (var Be = \"\"; u = Wr.exec(n); ) switch (u[3] = (Be = u[3]).toLowerCase()) {\n case \"data\":\n if (Be == \"data\") {\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n } else u[0].charAt(u[0].length - 2) !== \"/\" && l.push([u[3], !0]);\n break;\n }\n if (l[l.length - 1][1]) break;\n u[1] === \"/\" ? jA(n.slice(p, u.index), M, g, l[l.length - 1][0] == /*\"Comment\"*/\n \"comment\" ? he : T, { c: y, r: w }, V, De[y], A, be, r, Se.WBProps.date1904) : (M = \"\", g = ca(u[0]), p = u.index + u[0].length);\n break;\n case \"cell\":\n if (u[1] === \"/\")\n if (Ae.length > 0 && (T.c = Ae), (!r.sheetRows || r.sheetRows > w) && T.v !== void 0 && (r.dense ? (_[\"!data\"][w] || (_[\"!data\"][w] = []), _[\"!data\"][w][y] = T) : _[xr(y) + _r(w)] = T), T.HRef && (T.l = { Target: ir(T.HRef) }, T.HRefScreenTip && (T.l.Tooltip = T.HRefScreenTip), delete T.HRef, delete T.HRefScreenTip), (T.MergeAcross || T.MergeDown) && (Ge = y + (parseInt(T.MergeAcross, 10) | 0), Le = w + (parseInt(T.MergeDown, 10) | 0), (Ge > y || Le > w) && U.push({ s: { c: y, r: w }, e: { c: Ge, r: Le } })), !r.sheetStubs)\n T.MergeAcross ? y = Ge + 1 : ++y;\n else if (T.MergeAcross || T.MergeDown) {\n for (var Ke = y; Ke <= Ge; ++Ke)\n for (var N = w; N <= Le; ++N)\n (Ke > y || N > w) && (r.dense ? (_[\"!data\"][N] || (_[\"!data\"][N] = []), _[\"!data\"][N][Ke] = { t: \"z\" }) : _[xr(Ke) + _r(N)] = { t: \"z\" });\n y = Ge + 1;\n } else ++y;\n else\n T = YA(u[0]), T.Index && (y = +T.Index - 1), y < P.s.c && (P.s.c = y), y > P.e.c && (P.e.c = y), u[0].slice(-2) === \"/>\" && ++y, Ae = [];\n break;\n case \"row\":\n u[1] === \"/\" || u[0].slice(-2) === \"/>\" ? (w < P.s.r && (P.s.r = w), w > P.e.r && (P.e.r = w), u[0].slice(-2) === \"/>\" && (A = ca(u[0]), A.Index && (w = +A.Index - 1)), y = 0, ++w) : (A = ca(u[0]), A.Index && (w = +A.Index - 1), Pe = {}, (A.AutoFitHeight == \"0\" || A.Height) && (Pe.hpx = parseInt(A.Height, 10), Pe.hpt = ih(Pe.hpx), ae[w] = Pe), A.Hidden == \"1\" && (Pe.hidden = !0, ae[w] = Pe));\n break;\n case \"worksheet\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n m.push(v), P.s.r <= P.e.r && P.s.c <= P.e.c && (_[\"!ref\"] = sr(P), r.sheetRows && r.sheetRows <= P.e.r && (_[\"!fullref\"] = _[\"!ref\"], P.e.r = r.sheetRows - 1, _[\"!ref\"] = sr(P))), U.length && (_[\"!merges\"] = U), De.length > 0 && (_[\"!cols\"] = De), ae.length > 0 && (_[\"!rows\"] = ae), x[v] = _;\n } else\n P = { s: { r: 2e6, c: 2e6 }, e: { r: 0, c: 0 } }, w = y = 0, l.push([u[3], !1]), h = ca(u[0]), v = ir(h.Name), _ = {}, r.dense && (_[\"!data\"] = []), U = [], be = [], ae = [], Me = { name: v, Hidden: 0 }, Se.Sheets.push(Me);\n break;\n case \"table\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n } else {\n if (u[0].slice(-2) == \"/>\") break;\n l.push([u[3], !1]), De = [], Ee = !1;\n }\n break;\n case \"style\":\n u[1] === \"/\" ? QA(V, Z, r) : Z = ca(u[0]);\n break;\n case \"numberformat\":\n Z.nf = ir(ca(u[0]).Format || \"General\"), D0[Z.nf] && (Z.nf = D0[Z.nf]);\n for (var K = 0; K != 392 && Xe[K] != Z.nf; ++K) ;\n if (K == 392) {\n for (K = 57; K != 392; ++K) if (Xe[K] == null) {\n vn(Z.nf, K);\n break;\n }\n }\n break;\n case \"column\":\n if (l[l.length - 1][0] !== /*'Table'*/\n \"table\" || u[1] === \"/\") break;\n if (le = ca(u[0]), le.Hidden && (le.hidden = !0, delete le.Hidden), le.Width && (le.wpx = parseInt(le.Width, 10)), !Ee && le.wpx > 10) {\n Ee = !0, mt = ah;\n for (var H = 0; H < De.length; ++H) De[H] && qn(De[H]);\n }\n Ee && qn(le), De[le.Index - 1 || De.length] = le;\n for (var B = 0; B < +le.Span; ++B) De[De.length] = Gr(le);\n break;\n case \"namedrange\":\n if (u[1] === \"/\") break;\n Se.Names || (Se.Names = []);\n var fe = Ie(u[0]), O = {\n Name: eF(fe.Name),\n Ref: _n(fe.RefersTo.slice(1), { r: 0, c: 0 })\n };\n Se.Sheets.length > 0 && (O.Sheet = Se.Sheets.length - 1), Se.Names.push(O);\n break;\n case \"namedcell\":\n break;\n case \"b\":\n break;\n case \"i\":\n break;\n case \"u\":\n break;\n case \"s\":\n break;\n case \"em\":\n break;\n case \"h2\":\n break;\n case \"h3\":\n break;\n case \"sub\":\n break;\n case \"sup\":\n break;\n case \"span\":\n break;\n case \"alignment\":\n break;\n case \"borders\":\n break;\n case \"border\":\n break;\n case \"font\":\n if (u[0].slice(-2) === \"/>\") break;\n u[1] === \"/\" ? M += n.slice(G, u.index) : G = u.index + u[0].length;\n break;\n case \"interior\":\n if (!r.cellStyles) break;\n Z.Interior = ca(u[0]);\n break;\n case \"protection\":\n break;\n case \"author\":\n case \"title\":\n case \"description\":\n case \"created\":\n case \"keywords\":\n case \"subject\":\n case \"category\":\n case \"company\":\n case \"lastauthor\":\n case \"lastsaved\":\n case \"lastprinted\":\n case \"version\":\n case \"revision\":\n case \"totaltime\":\n case \"hyperlinkbase\":\n case \"manager\":\n case \"contentstatus\":\n case \"identifier\":\n case \"language\":\n case \"appname\":\n if (u[0].slice(-2) === \"/>\") break;\n u[1] === \"/\" ? V4(J, Be, n.slice(re, u.index)) : re = u.index + u[0].length;\n break;\n case \"paragraphs\":\n break;\n case \"styles\":\n case \"workbook\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n } else l.push([u[3], !1]);\n break;\n case \"comment\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n rF(he), Ae.push(he);\n } else\n l.push([u[3], !1]), h = ca(u[0]), gr(h.ShowAlways || \"0\") || (Ae.hidden = !0), he = { a: h.Author };\n break;\n case \"autofilter\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n } else if (u[0].charAt(u[0].length - 2) !== \"/\") {\n var pe = ca(u[0]);\n _[\"!autofilter\"] = { ref: _n(pe.Range).replace(/\\$/g, \"\") }, l.push([u[3], !0]);\n }\n break;\n case \"name\":\n break;\n case \"datavalidation\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n } else\n u[0].charAt(u[0].length - 2) !== \"/\" && l.push([u[3], !0]);\n break;\n case \"pixelsperinch\":\n break;\n case \"componentoptions\":\n case \"documentproperties\":\n case \"customdocumentproperties\":\n case \"officedocumentsettings\":\n case \"pivottable\":\n case \"pivotcache\":\n case \"names\":\n case \"mapinfo\":\n case \"pagebreaks\":\n case \"querytable\":\n case \"sorting\":\n case \"schema\":\n //case 'data' /*case 'data'*/:\n case \"conditionalformatting\":\n case \"smarttagtype\":\n case \"smarttags\":\n case \"excelworkbook\":\n case \"workbookoptions\":\n case \"worksheetoptions\":\n if (u[1] === \"/\") {\n if ((h = l.pop())[0] !== u[3]) throw new Error(\"Bad state: \" + h.join(\"|\"));\n } else u[0].charAt(u[0].length - 2) !== \"/\" && l.push([u[3], !0]);\n break;\n case \"null\":\n break;\n default:\n if (l.length == 0 && u[3] == \"document\" || l.length == 0 && u[3] == \"uof\") return ql(n, r);\n var Te = !0;\n switch (l[l.length - 1][0]) {\n /* OfficeDocumentSettings */\n case \"officedocumentsettings\":\n switch (u[3]) {\n case \"allowpng\":\n break;\n case \"removepersonalinformation\":\n break;\n case \"downloadcomponents\":\n break;\n case \"locationofcomponents\":\n break;\n case \"colors\":\n break;\n case \"color\":\n break;\n case \"index\":\n break;\n case \"rgb\":\n break;\n case \"targetscreensize\":\n break;\n case \"readonlyrecommended\":\n break;\n default:\n Te = !1;\n }\n break;\n /* ComponentOptions */\n case \"componentoptions\":\n switch (u[3]) {\n case \"toolbar\":\n break;\n case \"hideofficelogo\":\n break;\n case \"spreadsheetautofit\":\n break;\n case \"label\":\n break;\n case \"caption\":\n break;\n case \"maxheight\":\n break;\n case \"maxwidth\":\n break;\n case \"nextsheetnumber\":\n break;\n default:\n Te = !1;\n }\n break;\n /* ExcelWorkbook */\n case \"excelworkbook\":\n switch (u[3]) {\n case \"date1904\":\n Se.WBProps.date1904 = !0;\n break;\n case \"hidehorizontalscrollbar\":\n break;\n case \"hideverticalscrollbar\":\n break;\n case \"hideworkbooktabs\":\n break;\n case \"windowheight\":\n break;\n case \"windowwidth\":\n break;\n case \"windowtopx\":\n break;\n case \"windowtopy\":\n break;\n case \"tabratio\":\n break;\n case \"protectstructure\":\n break;\n case \"protectwindow\":\n break;\n case \"protectwindows\":\n break;\n case \"activesheet\":\n break;\n case \"displayinknotes\":\n break;\n case \"firstvisiblesheet\":\n break;\n case \"supbook\":\n break;\n case \"sheetname\":\n break;\n case \"sheetindex\":\n break;\n case \"sheetindexfirst\":\n break;\n case \"sheetindexlast\":\n break;\n case \"dll\":\n break;\n case \"acceptlabelsinformulas\":\n break;\n case \"donotsavelinkvalues\":\n break;\n case \"iteration\":\n break;\n case \"maxiterations\":\n break;\n case \"maxchange\":\n break;\n case \"path\":\n break;\n case \"xct\":\n break;\n case \"count\":\n break;\n case \"selectedsheets\":\n break;\n case \"calculation\":\n break;\n case \"uncalced\":\n break;\n case \"startupprompt\":\n break;\n case \"crn\":\n break;\n case \"externname\":\n break;\n case \"formula\":\n break;\n case \"colfirst\":\n break;\n case \"collast\":\n break;\n case \"wantadvise\":\n break;\n case \"boolean\":\n break;\n case \"error\":\n break;\n case \"text\":\n break;\n case \"ole\":\n break;\n case \"noautorecover\":\n break;\n case \"publishobjects\":\n break;\n case \"donotcalculatebeforesave\":\n break;\n case \"number\":\n break;\n case \"refmoder1c1\":\n break;\n case \"embedsavesmarttags\":\n break;\n default:\n Te = !1;\n }\n break;\n /* WorkbookOptions */\n case \"workbookoptions\":\n switch (u[3]) {\n case \"owcversion\":\n break;\n case \"height\":\n break;\n case \"width\":\n break;\n default:\n Te = !1;\n }\n break;\n /* WorksheetOptions */\n case \"worksheetoptions\":\n switch (u[3]) {\n case \"visible\":\n if (u[0].slice(-2) !== \"/>\") if (u[1] === \"/\") switch (n.slice(re, u.index)) {\n case \"SheetHidden\":\n Me.Hidden = 1;\n break;\n case \"SheetVeryHidden\":\n Me.Hidden = 2;\n break;\n }\n else re = u.index + u[0].length;\n break;\n case \"header\":\n _[\"!margins\"] || O0(_[\"!margins\"] = {}, \"xlml\"), isNaN(+Ie(u[0]).Margin) || (_[\"!margins\"].header = +Ie(u[0]).Margin);\n break;\n case \"footer\":\n _[\"!margins\"] || O0(_[\"!margins\"] = {}, \"xlml\"), isNaN(+Ie(u[0]).Margin) || (_[\"!margins\"].footer = +Ie(u[0]).Margin);\n break;\n case \"pagemargins\":\n var ve = Ie(u[0]);\n _[\"!margins\"] || O0(_[\"!margins\"] = {}, \"xlml\"), isNaN(+ve.Top) || (_[\"!margins\"].top = +ve.Top), isNaN(+ve.Left) || (_[\"!margins\"].left = +ve.Left), isNaN(+ve.Right) || (_[\"!margins\"].right = +ve.Right), isNaN(+ve.Bottom) || (_[\"!margins\"].bottom = +ve.Bottom);\n break;\n case \"displayrighttoleft\":\n Se.Views || (Se.Views = []), Se.Views[0] || (Se.Views[0] = {}), Se.Views[0].RTL = !0;\n break;\n case \"freezepanes\":\n break;\n case \"frozennosplit\":\n break;\n case \"splithorizontal\":\n case \"splitvertical\":\n break;\n case \"donotdisplaygridlines\":\n break;\n case \"activerow\":\n break;\n case \"activecol\":\n break;\n case \"toprowbottompane\":\n break;\n case \"leftcolumnrightpane\":\n break;\n case \"unsynced\":\n break;\n case \"print\":\n break;\n case \"printerrors\":\n break;\n case \"panes\":\n break;\n case \"scale\":\n break;\n case \"pane\":\n break;\n case \"number\":\n break;\n case \"layout\":\n break;\n case \"pagesetup\":\n break;\n case \"selected\":\n break;\n case \"protectobjects\":\n break;\n case \"enableselection\":\n break;\n case \"protectscenarios\":\n break;\n case \"validprinterinfo\":\n break;\n case \"horizontalresolution\":\n break;\n case \"verticalresolution\":\n break;\n case \"numberofcopies\":\n break;\n case \"activepane\":\n break;\n case \"toprowvisible\":\n break;\n case \"leftcolumnvisible\":\n break;\n case \"fittopage\":\n break;\n case \"rangeselection\":\n break;\n case \"papersizeindex\":\n break;\n case \"pagelayoutzoom\":\n break;\n case \"pagebreakzoom\":\n break;\n case \"filteron\":\n break;\n case \"fitwidth\":\n break;\n case \"fitheight\":\n break;\n case \"commentslayout\":\n break;\n case \"zoom\":\n break;\n case \"lefttoright\":\n break;\n case \"gridlines\":\n break;\n case \"allowsort\":\n break;\n case \"allowfilter\":\n break;\n case \"allowinsertrows\":\n break;\n case \"allowdeleterows\":\n break;\n case \"allowinsertcols\":\n break;\n case \"allowdeletecols\":\n break;\n case \"allowinserthyperlinks\":\n break;\n case \"allowformatcells\":\n break;\n case \"allowsizecols\":\n break;\n case \"allowsizerows\":\n break;\n case \"nosummaryrowsbelowdetail\":\n _[\"!outline\"] || (_[\"!outline\"] = {}), _[\"!outline\"].above = !0;\n break;\n case \"tabcolorindex\":\n break;\n case \"donotdisplayheadings\":\n break;\n case \"showpagelayoutzoom\":\n break;\n case \"nosummarycolumnsrightdetail\":\n _[\"!outline\"] || (_[\"!outline\"] = {}), _[\"!outline\"].left = !0;\n break;\n case \"blackandwhite\":\n break;\n case \"donotdisplayzeros\":\n break;\n case \"displaypagebreak\":\n break;\n case \"rowcolheadings\":\n break;\n case \"donotdisplayoutline\":\n break;\n case \"noorientation\":\n break;\n case \"allowusepivottables\":\n break;\n case \"zeroheight\":\n break;\n case \"viewablerange\":\n break;\n case \"selection\":\n break;\n case \"protectcontents\":\n break;\n default:\n Te = !1;\n }\n break;\n /* PivotTable */\n case \"pivottable\":\n case \"pivotcache\":\n switch (u[3]) {\n case \"immediateitemsondrop\":\n break;\n case \"showpagemultipleitemlabel\":\n break;\n case \"compactrowindent\":\n break;\n case \"location\":\n break;\n case \"pivotfield\":\n break;\n case \"orientation\":\n break;\n case \"layoutform\":\n break;\n case \"layoutsubtotallocation\":\n break;\n case \"layoutcompactrow\":\n break;\n case \"position\":\n break;\n case \"pivotitem\":\n break;\n case \"datatype\":\n break;\n case \"datafield\":\n break;\n case \"sourcename\":\n break;\n case \"parentfield\":\n break;\n case \"ptlineitems\":\n break;\n case \"ptlineitem\":\n break;\n case \"countofsameitems\":\n break;\n case \"item\":\n break;\n case \"itemtype\":\n break;\n case \"ptsource\":\n break;\n case \"cacheindex\":\n break;\n case \"consolidationreference\":\n break;\n case \"filename\":\n break;\n case \"reference\":\n break;\n case \"nocolumngrand\":\n break;\n case \"norowgrand\":\n break;\n case \"blanklineafteritems\":\n break;\n case \"hidden\":\n break;\n case \"subtotal\":\n break;\n case \"basefield\":\n break;\n case \"mapchilditems\":\n break;\n case \"function\":\n break;\n case \"refreshonfileopen\":\n break;\n case \"printsettitles\":\n break;\n case \"mergelabels\":\n break;\n case \"defaultversion\":\n break;\n case \"refreshname\":\n break;\n case \"refreshdate\":\n break;\n case \"refreshdatecopy\":\n break;\n case \"versionlastrefresh\":\n break;\n case \"versionlastupdate\":\n break;\n case \"versionupdateablemin\":\n break;\n case \"versionrefreshablemin\":\n break;\n case \"calculation\":\n break;\n default:\n Te = !1;\n }\n break;\n /* PageBreaks */\n case \"pagebreaks\":\n switch (u[3]) {\n case \"colbreaks\":\n break;\n case \"colbreak\":\n break;\n case \"rowbreaks\":\n break;\n case \"rowbreak\":\n break;\n case \"colstart\":\n break;\n case \"colend\":\n break;\n case \"rowend\":\n break;\n default:\n Te = !1;\n }\n break;\n /* AutoFilter */\n case \"autofilter\":\n switch (u[3]) {\n case \"autofiltercolumn\":\n break;\n case \"autofiltercondition\":\n break;\n case \"autofilterand\":\n break;\n case \"autofilteror\":\n break;\n default:\n Te = !1;\n }\n break;\n /* QueryTable */\n case \"querytable\":\n switch (u[3]) {\n case \"id\":\n break;\n case \"autoformatfont\":\n break;\n case \"autoformatpattern\":\n break;\n case \"querysource\":\n break;\n case \"querytype\":\n break;\n case \"enableredirections\":\n break;\n case \"refreshedinxl9\":\n break;\n case \"urlstring\":\n break;\n case \"htmltables\":\n break;\n case \"connection\":\n break;\n case \"commandtext\":\n break;\n case \"refreshinfo\":\n break;\n case \"notitles\":\n break;\n case \"nextid\":\n break;\n case \"columninfo\":\n break;\n case \"overwritecells\":\n break;\n case \"donotpromptforfile\":\n break;\n case \"textwizardsettings\":\n break;\n case \"source\":\n break;\n case \"number\":\n break;\n case \"decimal\":\n break;\n case \"thousandseparator\":\n break;\n case \"trailingminusnumbers\":\n break;\n case \"formatsettings\":\n break;\n case \"fieldtype\":\n break;\n case \"delimiters\":\n break;\n case \"tab\":\n break;\n case \"comma\":\n break;\n case \"autoformatname\":\n break;\n case \"versionlastedit\":\n break;\n case \"versionlastrefresh\":\n break;\n default:\n Te = !1;\n }\n break;\n case \"datavalidation\":\n switch (u[3]) {\n case \"range\":\n break;\n case \"type\":\n break;\n case \"min\":\n break;\n case \"max\":\n break;\n case \"sort\":\n break;\n case \"descending\":\n break;\n case \"order\":\n break;\n case \"casesensitive\":\n break;\n case \"value\":\n break;\n case \"errorstyle\":\n break;\n case \"errormessage\":\n break;\n case \"errortitle\":\n break;\n case \"inputmessage\":\n break;\n case \"inputtitle\":\n break;\n case \"combohide\":\n break;\n case \"inputhide\":\n break;\n case \"condition\":\n break;\n case \"qualifier\":\n break;\n case \"useblank\":\n break;\n case \"value1\":\n break;\n case \"value2\":\n break;\n case \"format\":\n break;\n case \"cellrangelist\":\n break;\n default:\n Te = !1;\n }\n break;\n case \"sorting\":\n case \"conditionalformatting\":\n switch (u[3]) {\n case \"range\":\n break;\n case \"type\":\n break;\n case \"min\":\n break;\n case \"max\":\n break;\n case \"sort\":\n break;\n case \"descending\":\n break;\n case \"order\":\n break;\n case \"casesensitive\":\n break;\n case \"value\":\n break;\n case \"errorstyle\":\n break;\n case \"errormessage\":\n break;\n case \"errortitle\":\n break;\n case \"cellrangelist\":\n break;\n case \"inputmessage\":\n break;\n case \"inputtitle\":\n break;\n case \"combohide\":\n break;\n case \"inputhide\":\n break;\n case \"condition\":\n break;\n case \"qualifier\":\n break;\n case \"useblank\":\n break;\n case \"value1\":\n break;\n case \"value2\":\n break;\n case \"format\":\n break;\n default:\n Te = !1;\n }\n break;\n /* MapInfo (schema) */\n case \"mapinfo\":\n case \"schema\":\n case \"data\":\n switch (u[3]) {\n case \"map\":\n break;\n case \"entry\":\n break;\n case \"range\":\n break;\n case \"xpath\":\n break;\n case \"field\":\n break;\n case \"xsdtype\":\n break;\n case \"filteron\":\n break;\n case \"aggregate\":\n break;\n case \"elementtype\":\n break;\n case \"attributetype\":\n break;\n /* These are from xsd (XML Schema Definition) */\n case \"schema\":\n case \"element\":\n case \"complextype\":\n case \"datatype\":\n case \"all\":\n case \"attribute\":\n case \"extends\":\n break;\n case \"row\":\n break;\n default:\n Te = !1;\n }\n break;\n /* SmartTags (can be anything) */\n case \"smarttags\":\n break;\n default:\n Te = !1;\n break;\n }\n if (Te || u[3].match(/!\\[CDATA/)) break;\n if (!l[l.length - 1][1]) throw \"Unrecognized tag: \" + u[3] + \"|\" + l.join(\"|\");\n if (l[l.length - 1][0] === /*'CustomDocumentProperties'*/\n \"customdocumentproperties\") {\n if (u[0].slice(-2) === \"/>\") break;\n u[1] === \"/\" ? JA(z, Be, ne, n.slice(re, u.index)) : (ne = u, re = u.index + u[0].length);\n break;\n }\n if (r.WTF) throw \"Unrecognized tag: \" + u[3] + \"|\" + l.join(\"|\");\n }\n var Oe = {};\n return !r.bookSheets && !r.bookProps && (Oe.Sheets = x), Oe.SheetNames = m, Oe.Workbook = Se, Oe.SSF = Gr(Xe), Oe.Props = J, Oe.Custprops = z, Oe.bookType = \"xlml\", Oe;\n}\nfunction tc(e, t) {\n switch (Fc(t = t || {}), t.type || \"base64\") {\n case \"base64\":\n return Yf(Ut(e), t);\n case \"binary\":\n case \"buffer\":\n case \"file\":\n return Yf(e, t);\n case \"array\":\n return Yf(Na(e), t);\n }\n}\nfunction tF(e) {\n var t = {}, r = e.content;\n if (r.l = 28, t.AnsiUserType = r.read_shift(0, \"lpstr-ansi\"), t.AnsiClipboardFormat = w4(r), r.length - r.l <= 4) return t;\n var n = r.read_shift(4);\n if (n == 0 || n > 40 || (r.l -= 4, t.Reserved1 = r.read_shift(0, \"lpstr-ansi\"), r.length - r.l <= 4) || (n = r.read_shift(4), n !== 1907505652) || (t.UnicodeClipboardFormat = k4(r), n = r.read_shift(4), n == 0 || n > 40)) return t;\n r.l -= 4, t.Reserved2 = r.read_shift(0, \"lpwstr\");\n}\nvar aF = [60, 1084, 2066, 2165, 2175];\nfunction nF(e, t, r, n, i) {\n var f = n, c = [], u = r.slice(r.l, r.l + f);\n if (i && i.enc && i.enc.insitu && u.length > 0) switch (e) {\n case 9:\n case 521:\n case 1033:\n case 2057:\n case 47:\n case 405:\n case 225:\n case 406:\n case 312:\n case 404:\n case 10:\n break;\n case 133:\n break;\n default:\n i.enc.insitu(u);\n }\n c.push(u), r.l += f;\n for (var l = Oa(r, r.l), h = ac[l], x = 0; h != null && aF.indexOf(l) > -1; )\n f = Oa(r, r.l + 2), x = r.l + 4, l == 2066 ? x += 4 : (l == 2165 || l == 2175) && (x += 12), u = r.slice(x, r.l + 4 + f), c.push(u), r.l += 4 + f, h = ac[l = Oa(r, r.l)];\n var m = Ya(c);\n zr(m, 0);\n var _ = 0;\n m.lens = [];\n for (var v = 0; v < c.length; ++v)\n m.lens.push(_), _ += c[v].length;\n if (m.length < n) throw \"XLS Record 0x\" + e.toString(16) + \" Truncated: \" + m.length + \" < \" + n;\n return t.f(m, m.length, i);\n}\nfunction pa(e, t, r) {\n if (e.t !== \"z\" && e.XF) {\n var n = 0;\n try {\n n = e.z || e.XF.numFmtId || 0, t.cellNF && e.z == null && (e.z = Xe[n]);\n } catch (f) {\n if (t.WTF) throw f;\n }\n if (!t || t.cellText !== !1) try {\n e.t === \"e\" ? e.w = e.w || Ct[e.v] : n === 0 || n == \"General\" ? e.t === \"n\" ? (e.v | 0) === e.v ? e.w = e.v.toString(10) : e.w = L0(e.v) : e.w = mn(e.v) : e.w = Wt(n, e.v, { date1904: !!r, dateNF: t && t.dateNF });\n } catch (f) {\n if (t.WTF) throw f;\n }\n if (t.cellDates && n && e.t == \"n\" && la(Xe[n] || String(n))) {\n var i = ya(e.v + (r ? 1462 : 0));\n i && (e.t = \"d\", e.v = new Date(Date.UTC(i.y, i.m - 1, i.d, i.H, i.M, i.S, i.u)));\n }\n }\n}\nfunction qi(e, t, r) {\n return { v: e, ixfe: t, t: r };\n}\nfunction iF(e, t) {\n var r = { opts: {} }, n = {}, i = {};\n t.dense && (i[\"!data\"] = []);\n var f = {}, c = {}, u = null, l = [], h = \"\", x = {}, m, _ = \"\", v, T, A, g, p = {}, y = [], w, P, V = [], Z = [], M = { Sheets: [], WBProps: { date1904: !1 }, Views: [{}] }, G = {}, U = !1, J = function(we) {\n return we < 8 ? gn[we] : we < 64 && Z[we - 8] || gn[we];\n }, z = function(we, fr) {\n var Cr = we.XF.data;\n if (!(!Cr || !Cr.patternType || !fr || !fr.cellStyles)) {\n we.s = {}, we.s.patternType = Cr.patternType;\n var yr;\n (yr = B0(J(Cr.icvFore))) && (we.s.fgColor = { rgb: yr }), (yr = B0(J(Cr.icvBack))) && (we.s.bgColor = { rgb: yr });\n }\n }, re = function(we, fr, Cr) {\n if (!(!U && Ge > 1) && !(Cr.sheetRows && we.r >= Cr.sheetRows)) {\n if (Cr.cellStyles && fr.XF && fr.XF.data && z(fr, Cr), delete fr.ixfe, delete fr.XF, m = we, _ = hr(we), (!c || !c.s || !c.e) && (c = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }), we.r < c.s.r && (c.s.r = we.r), we.c < c.s.c && (c.s.c = we.c), we.r + 1 > c.e.r && (c.e.r = we.r + 1), we.c + 1 > c.e.c && (c.e.c = we.c + 1), Cr.cellFormula && fr.f) {\n for (var yr = 0; yr < y.length; ++yr)\n if (!(y[yr][0].s.c > we.c || y[yr][0].s.r > we.r) && !(y[yr][0].e.c < we.c || y[yr][0].e.r < we.r)) {\n fr.F = sr(y[yr][0]), (y[yr][0].s.c != we.c || y[yr][0].s.r != we.r) && delete fr.f, fr.f && (fr.f = \"\" + ct(y[yr][1], c, we, ae, ne));\n break;\n }\n }\n Cr.dense ? (i[\"!data\"][we.r] || (i[\"!data\"][we.r] = []), i[\"!data\"][we.r][we.c] = fr) : i[_] = fr;\n }\n }, ne = {\n enc: !1,\n // encrypted\n sbcch: 0,\n // cch in the preceding SupBook\n snames: [],\n // sheetnames\n sharedf: p,\n // shared formulae by address\n arrayf: y,\n // array formulae array\n rrtabid: [],\n // RRTabId\n lastuser: \"\",\n // Last User from WriteAccess\n biff: 8,\n // BIFF version\n codepage: 0,\n // CP from CodePage record\n winlocked: 0,\n // fLockWn from WinProtect\n cellStyles: !!t && !!t.cellStyles,\n WTF: !!t && !!t.wtf\n };\n t.password && (ne.password = t.password);\n var Ae, he = [], De = [], le = [], Ee = [], be = !1, ae = [];\n ae.SheetNames = ne.snames, ae.sharedf = ne.sharedf, ae.arrayf = ne.arrayf, ae.names = [], ae.XTI = [];\n var Pe = 0, Ge = 0, Le = 0, Se = [], Me = [], Be;\n ne.codepage = 1200, ua(1200);\n for (var Ke = !1; e.l < e.length - 1; ) {\n var N = e.l, K = e.read_shift(2);\n if (K === 0 && Pe === 10) break;\n var H = e.l === e.length ? 0 : e.read_shift(2), B = ac[K];\n if (Ge == 0 && [9, 521, 1033, 2057].indexOf(K) == -1) break;\n if (B && B.f) {\n if (t.bookSheets && Pe === 133 && K !== 133)\n break;\n if (Pe = K, B.r === 2 || B.r == 12) {\n var fe = e.read_shift(2);\n if (H -= 2, !ne.enc && fe !== K && ((fe & 255) << 8 | fe >> 8) !== K) throw new Error(\"rt mismatch: \" + fe + \"!=\" + K);\n B.r == 12 && (e.l += 10, H -= 10);\n }\n var O = {};\n if (K === 10 ? O = /*::(*/\n B.f(e, H, ne) : O = /*::(*/\n nF(K, B, e, H, ne), Ge == 0 && [9, 521, 1033, 2057].indexOf(Pe) === -1) continue;\n switch (K) {\n case 34:\n r.opts.Date1904 = M.WBProps.date1904 = O;\n break;\n case 134:\n r.opts.WriteProtect = !0;\n break;\n case 47:\n if (ne.enc || (e.l = 0), ne.enc = O, !t.password) throw new Error(\"File is password-protected\");\n if (O.valid == null) throw new Error(\"Encryption scheme unsupported\");\n if (!O.valid) throw new Error(\"Password is incorrect\");\n break;\n case 92:\n ne.lastuser = O;\n break;\n case 66:\n var pe = Number(O);\n switch (pe) {\n case 21010:\n pe = 1200;\n break;\n case 32768:\n pe = 1e4;\n break;\n case 32769:\n pe = 1252;\n break;\n }\n ua(ne.codepage = pe), Ke = !0;\n break;\n case 317:\n ne.rrtabid = O;\n break;\n case 25:\n ne.winlocked = O;\n break;\n case 439:\n r.opts.RefreshAll = O;\n break;\n case 12:\n r.opts.CalcCount = O;\n break;\n case 16:\n r.opts.CalcDelta = O;\n break;\n case 17:\n r.opts.CalcIter = O;\n break;\n case 13:\n r.opts.CalcMode = O;\n break;\n case 14:\n r.opts.CalcPrecision = O;\n break;\n case 95:\n r.opts.CalcSaveRecalc = O;\n break;\n case 15:\n ne.CalcRefMode = O;\n break;\n // TODO: implement R1C1\n case 2211:\n r.opts.FullCalc = O;\n break;\n case 129:\n O.fDialog && (i[\"!type\"] = \"dialog\"), O.fBelow || ((i[\"!outline\"] || (i[\"!outline\"] = {})).above = !0), O.fRight || ((i[\"!outline\"] || (i[\"!outline\"] = {})).left = !0);\n break;\n // TODO\n case 67:\n /* BIFF2XF */\n case 579:\n /* BIFF3XF */\n case 1091:\n /* BIFF4XF */\n case 224:\n V.push(O);\n break;\n case 430:\n ae.push([O]), ae[ae.length - 1].XTI = [];\n break;\n case 35:\n case 547:\n ae[ae.length - 1].push(O);\n break;\n case 24:\n case 536:\n Be = {\n Name: O.Name,\n Ref: ct(O.rgce, c, null, ae, ne)\n }, O.itab > 0 && (Be.Sheet = O.itab - 1), ae.names.push(Be), ae[0] || (ae[0] = [], ae[0].XTI = []), ae[ae.length - 1].push(O), O.Name == \"_xlnm._FilterDatabase\" && O.itab > 0 && O.rgce && O.rgce[0] && O.rgce[0][0] && O.rgce[0][0][0] == \"PtgArea3d\" && (Me[O.itab - 1] = { ref: sr(O.rgce[0][0][1][2]) });\n break;\n case 22:\n ne.ExternCount = O;\n break;\n case 23:\n ae.length == 0 && (ae[0] = [], ae[0].XTI = []), ae[ae.length - 1].XTI = ae[ae.length - 1].XTI.concat(O), ae.XTI = ae.XTI.concat(O);\n break;\n case 2196:\n if (ne.biff < 8) break;\n Be != null && (Be.Comment = O[1]);\n break;\n case 18:\n i[\"!protect\"] = O;\n break;\n /* for sheet or book */\n case 19:\n O !== 0 && ne.WTF && console.error(\"Password verifier: \" + O);\n break;\n case 133:\n f[ne.biff == 4 ? ne.snames.length : O.pos] = O, ne.snames.push(O.name);\n break;\n case 10:\n {\n if (--Ge ? !U : U) break;\n if (c.e) {\n if (c.e.r > 0 && c.e.c > 0) {\n if (c.e.r--, c.e.c--, i[\"!ref\"] = sr(c), t.sheetRows && t.sheetRows <= c.e.r) {\n var Te = c.e.r;\n c.e.r = t.sheetRows - 1, i[\"!fullref\"] = i[\"!ref\"], i[\"!ref\"] = sr(c), c.e.r = Te;\n }\n c.e.r++, c.e.c++;\n }\n he.length > 0 && (i[\"!merges\"] = he), De.length > 0 && (i[\"!objects\"] = De), le.length > 0 && (i[\"!cols\"] = le), Ee.length > 0 && (i[\"!rows\"] = Ee), M.Sheets.push(G);\n }\n h === \"\" ? x = i : n[h] = i, i = {}, t.dense && (i[\"!data\"] = []);\n }\n break;\n case 9:\n case 521:\n case 1033:\n case 2057:\n {\n if (ne.biff === 8 && (ne.biff = {\n 9: 2,\n 521: 3,\n 1033: 4\n }[K] || {\n 512: 2,\n 768: 3,\n 1024: 4,\n 1280: 5,\n 1536: 8,\n 2: 2,\n 7: 2\n }[O.BIFFVer] || 8), ne.biffguess = O.BIFFVer == 0, O.BIFFVer == 0 && O.dt == 4096 && (ne.biff = 5, Ke = !0, ua(ne.codepage = 28591)), ne.biff == 4 && O.dt & 256 && (U = !0), ne.biff == 8 && O.BIFFVer == 0 && O.dt == 16 && (ne.biff = 2), Ge++ && !U) break;\n if (i = {}, t.dense && (i[\"!data\"] = []), ne.biff < 8 && !Ke && (Ke = !0, ua(ne.codepage = t.codepage || 1252)), ne.biff == 4 && U)\n h = (f[ne.snames.indexOf(h) + 1] || { name: \"\" }).name;\n else if (ne.biff < 5 || O.BIFFVer == 0 && O.dt == 4096) {\n h === \"\" && (h = \"Sheet1\"), c = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } };\n var ve = { pos: e.l - H, name: h };\n f[ve.pos] = ve, ne.snames.push(h);\n } else h = (f[N] || { name: \"\" }).name;\n O.dt == 32 && (i[\"!type\"] = \"chart\"), O.dt == 64 && (i[\"!type\"] = \"macro\"), he = [], De = [], ne.arrayf = y = [], le = [], Ee = [], be = !1, G = { Hidden: (f[N] || { hs: 0 }).hs, name: h };\n }\n break;\n case 515:\n case 3:\n case 2:\n i[\"!type\"] == \"chart\" && (t.dense ? (i[\"!data\"][O.r] || [])[O.c] : i[xr(O.c) + _r(O.r)]) && ++O.c, w = { ixfe: O.ixfe, XF: V[O.ixfe] || {}, v: O.val, t: \"n\" }, Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: O.c, r: O.r }, w, t);\n break;\n case 5:\n case 517:\n w = { ixfe: O.ixfe, XF: V[O.ixfe], v: O.val, t: O.t }, Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: O.c, r: O.r }, w, t);\n break;\n case 638:\n w = { ixfe: O.ixfe, XF: V[O.ixfe], v: O.rknum, t: \"n\" }, Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: O.c, r: O.r }, w, t);\n break;\n case 189:\n for (var Oe = O.c; Oe <= O.C; ++Oe) {\n var Re = O.rkrec[Oe - O.c][0];\n w = { ixfe: Re, XF: V[Re], v: O.rkrec[Oe - O.c][1], t: \"n\" }, Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: Oe, r: O.r }, w, t);\n }\n break;\n case 6:\n case 518:\n case 1030:\n {\n if (O.val == \"String\") {\n u = O;\n break;\n }\n if (w = qi(O.val, O.cell.ixfe, O.tt), w.XF = V[w.ixfe], t.cellFormula) {\n var Ve = O.formula;\n if (Ve && Ve[0] && Ve[0][0] && Ve[0][0][0] == \"PtgExp\") {\n var ar = Ve[0][0][1][0], qe = Ve[0][0][1][1], Er = hr({ r: ar, c: qe });\n p[Er] ? w.f = \"\" + ct(O.formula, c, O.cell, ae, ne) : w.F = ((t.dense ? (i[\"!data\"][ar] || [])[qe] : i[Er]) || {}).F;\n } else w.f = \"\" + ct(O.formula, c, O.cell, ae, ne);\n }\n Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re(O.cell, w, t), u = O;\n }\n break;\n case 7:\n case 519:\n if (u)\n u.val = O, w = qi(O, u.cell.ixfe, \"s\"), w.XF = V[w.ixfe], t.cellFormula && (w.f = \"\" + ct(u.formula, c, u.cell, ae, ne)), Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re(u.cell, w, t), u = null;\n else throw new Error(\"String record expects Formula\");\n break;\n case 33:\n case 545:\n {\n y.push(O);\n var Ce = hr(O[0].s);\n if (v = t.dense ? (i[\"!data\"][O[0].s.r] || [])[O[0].s.c] : i[Ce], t.cellFormula && v) {\n if (!u || !Ce || !v) break;\n v.f = \"\" + ct(O[1], c, O[0], ae, ne), v.F = sr(O[0]);\n }\n }\n break;\n case 1212:\n {\n if (!t.cellFormula) break;\n if (_) {\n if (!u) break;\n p[hr(u.cell)] = O[0], v = t.dense ? (i[\"!data\"][u.cell.r] || [])[u.cell.c] : i[hr(u.cell)], (v || {}).f = \"\" + ct(O[0], c, m, ae, ne);\n }\n }\n break;\n case 253:\n w = qi(l[O.isst].t, O.ixfe, \"s\"), l[O.isst].h && (w.h = l[O.isst].h), w.XF = V[w.ixfe], Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: O.c, r: O.r }, w, t);\n break;\n case 513:\n t.sheetStubs && (w = { ixfe: O.ixfe, XF: V[O.ixfe], t: \"z\" }, Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: O.c, r: O.r }, w, t));\n break;\n case 190:\n if (t.sheetStubs)\n for (var er = O.c; er <= O.C; ++er) {\n var ge = O.ixfe[er - O.c];\n w = { ixfe: ge, XF: V[ge], t: \"z\" }, Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: er, r: O.r }, w, t);\n }\n break;\n case 214:\n case 516:\n case 4:\n w = qi(O.val, O.ixfe, \"s\"), w.XF = V[w.ixfe], Le > 0 && (w.z = w.XF && w.XF.numFmtId && Se[w.XF.numFmtId] || Se[w.ixfe >> 8 & 63]), pa(w, t, r.opts.Date1904), re({ c: O.c, r: O.r }, w, t);\n break;\n case 0:\n case 512:\n Ge === 1 && (c = O);\n break;\n case 252:\n l = O;\n break;\n case 1054:\n if (ne.biff >= 3 && ne.biff <= 4) {\n Se[Le++] = O[1];\n for (var xt = 0; xt < Le + 163 && Xe[xt] != O[1]; ++xt) ;\n xt >= 163 && vn(O[1], Le + 163);\n } else vn(O[1], O[0]);\n break;\n case 30:\n {\n Se[Le++] = O;\n for (var Nr = 0; Nr < Le + 163 && Xe[Nr] != O; ++Nr) ;\n Nr >= 163 && vn(O, Le + 163);\n }\n break;\n case 229:\n he = he.concat(O);\n break;\n case 93:\n De[O.cmo[0]] = ne.lastobj = O;\n break;\n case 438:\n ne.lastobj.TxO = O;\n break;\n case 127:\n ne.lastobj.ImData = O;\n break;\n case 440:\n for (g = O[0].s.r; g <= O[0].e.r; ++g)\n for (A = O[0].s.c; A <= O[0].e.c; ++A)\n v = t.dense ? (i[\"!data\"][g] || [])[A] : i[hr({ c: A, r: g })], v && (v.l = O[1]);\n break;\n case 2048:\n for (g = O[0].s.r; g <= O[0].e.r; ++g)\n for (A = O[0].s.c; A <= O[0].e.c; ++A)\n v = t.dense ? (i[\"!data\"][g] || [])[A] : i[hr({ c: A, r: g })], v && v.l && (v.l.Tooltip = O[1]);\n break;\n case 28:\n {\n if (v = t.dense ? (i[\"!data\"][O[0].r] || [])[O[0].c] : i[hr(O[0])], v || (t.dense ? (i[\"!data\"][O[0].r] || (i[\"!data\"][O[0].r] = []), v = i[\"!data\"][O[0].r][O[0].c] = { t: \"z\" }) : v = i[hr(O[0])] = { t: \"z\" }, c.e.r = Math.max(c.e.r, O[0].r), c.s.r = Math.min(c.s.r, O[0].r), c.e.c = Math.max(c.e.c, O[0].c), c.s.c = Math.min(c.s.c, O[0].c)), v.c || (v.c = []), ne.biff <= 5 && ne.biff >= 2) T = { a: \"SheetJ5\", t: O[1] };\n else {\n var dr = De[O[2]];\n T = { a: O[1], t: dr.TxO.t }, O[3] != null && !(O[3] & 2) && (v.c.hidden = !0);\n }\n v.c.push(T);\n }\n break;\n case 2173:\n Ow(V[O.ixfe], O.ext);\n break;\n case 125:\n {\n if (!ne.cellStyles) break;\n for (; O.e >= O.s; )\n le[O.e--] = { width: O.w / 256, level: O.level || 0, hidden: !!(O.flags & 1) }, be || (be = !0, Tc(O.w / 256)), qn(le[O.e + 1]);\n }\n break;\n case 520:\n {\n var dt = {};\n O.level != null && (Ee[O.r] = dt, dt.level = O.level), O.hidden && (Ee[O.r] = dt, dt.hidden = !0), O.hpt && (Ee[O.r] = dt, dt.hpt = O.hpt, dt.hpx = M0(O.hpt));\n }\n break;\n case 38:\n case 39:\n case 40:\n case 41:\n i[\"!margins\"] || O0(i[\"!margins\"] = {}), i[\"!margins\"][{ 38: \"left\", 39: \"right\", 40: \"top\", 41: \"bottom\" }[K]] = O;\n break;\n case 161:\n i[\"!margins\"] || O0(i[\"!margins\"] = {}), i[\"!margins\"].header = O.header, i[\"!margins\"].footer = O.footer;\n break;\n case 574:\n O.RTL && (M.Views[0].RTL = !0);\n break;\n case 146:\n Z = O;\n break;\n case 2198:\n Ae = O;\n break;\n case 140:\n P = O;\n break;\n case 442:\n h ? G.CodeName = O || G.name : M.WBProps.CodeName = O || \"ThisWorkbook\";\n break;\n }\n } else\n B || console.error(\"Missing Info for XLS Record 0x\" + K.toString(16)), e.l += H;\n }\n return r.SheetNames = jt(f).sort(function(Yr, we) {\n return Number(Yr) - Number(we);\n }).map(function(Yr) {\n return f[Yr].name;\n }), t.bookSheets || (r.Sheets = n), !r.SheetNames.length && x[\"!ref\"] ? (r.SheetNames.push(\"Sheet1\"), r.Sheets && (r.Sheets.Sheet1 = x)) : r.Preamble = x, r.Sheets && Me.forEach(function(Yr, we) {\n r.Sheets[r.SheetNames[we]][\"!autofilter\"] = Yr;\n }), r.Strings = l, r.SSF = Gr(Xe), ne.enc && (r.Encryption = ne.enc), Ae && (r.Themes = Ae), r.Metadata = {}, P !== void 0 && (r.Metadata.Country = P), ae.names.length > 0 && (M.Names = ae.names), r.Workbook = M, r;\n}\nvar Kl = {\n SI: \"e0859ff2f94f6810ab9108002b27b3d9\",\n DSI: \"02d5cdd59c2e1b10939708002b2cf9ae\",\n UDI: \"05d5cdd59c2e1b10939708002b2cf9ae\"\n};\nfunction sF(e, t, r) {\n var n = or.find(e, \"/!DocumentSummaryInformation\");\n if (n && n.size > 0) try {\n var i = Il(n, I4, Kl.DSI);\n for (var f in i) t[f] = i[f];\n } catch (h) {\n if (r.WTF) throw h;\n }\n var c = or.find(e, \"/!SummaryInformation\");\n if (c && c.size > 0) try {\n var u = Il(c, O4, Kl.SI);\n for (var l in u) t[l] == null && (t[l] = u[l]);\n } catch (h) {\n if (r.WTF) throw h;\n }\n t.HeadingPairs && t.TitlesOfParts && (H1(t.HeadingPairs, t.TitlesOfParts, t, r), delete t.HeadingPairs, delete t.TitlesOfParts);\n}\nfunction wh(e, t) {\n t || (t = {}), Fc(t), jl(), t.codepage && sc(t.codepage);\n var r, n;\n if (e.FullPaths) {\n if (or.find(e, \"/encryption\")) throw new Error(\"File is password-protected\");\n r = or.find(e, \"!CompObj\"), n = or.find(e, \"/Workbook\") || or.find(e, \"/Book\");\n } else {\n switch (t.type) {\n case \"base64\":\n e = bt(Ut(e));\n break;\n case \"binary\":\n e = bt(e);\n break;\n case \"buffer\":\n break;\n case \"array\":\n Array.isArray(e) || (e = Array.prototype.slice.call(e));\n break;\n }\n zr(e, 0), n = { content: e };\n }\n var i, f;\n if (r && tF(r), t.bookProps && !t.bookSheets) i = {};\n else {\n var c = tr ? \"buffer\" : \"array\";\n if (n && n.content) i = iF(n.content, t);\n else if ((f = or.find(e, \"PerfectOffice_MAIN\")) && f.content) i = y0.to_workbook(f.content, (t.type = c, t));\n else if ((f = or.find(e, \"NativeContent_MAIN\")) && f.content) i = y0.to_workbook(f.content, (t.type = c, t));\n else throw (f = or.find(e, \"MN0\")) && f.content ? new Error(\"Unsupported Works 4 for Mac file\") : new Error(\"Cannot find Workbook stream\");\n t.bookVBA && e.FullPaths && or.find(e, \"/_VBA_PROJECT_CUR/VBA/dir\") && (i.vbaraw = Zw(e));\n }\n var u = {};\n return e.FullPaths && sF(\n /*::((*/\n e,\n u,\n t\n ), i.Props = i.Custprops = u, t.bookFiles && (i.cfb = e), i;\n}\nvar os = {\n 0: {\n /* n:\"BrtRowHdr\", */\n f: H3\n },\n 1: {\n /* n:\"BrtCellBlank\", */\n f: $3\n },\n 2: {\n /* n:\"BrtCellRk\", */\n f: eA\n },\n 3: {\n /* n:\"BrtCellError\", */\n f: Z3\n },\n 4: {\n /* n:\"BrtCellBool\", */\n f: K3\n },\n 5: {\n /* n:\"BrtCellReal\", */\n f: j3\n },\n 6: {\n /* n:\"BrtCellSt\", */\n f: aA\n },\n 7: {\n /* n:\"BrtCellIsst\", */\n f: q3\n },\n 8: {\n /* n:\"BrtFmlaString\", */\n f: cA\n },\n 9: {\n /* n:\"BrtFmlaNum\", */\n f: fA\n },\n 10: {\n /* n:\"BrtFmlaBool\", */\n f: iA\n },\n 11: {\n /* n:\"BrtFmlaError\", */\n f: sA\n },\n 12: {\n /* n:\"BrtShortBlank\", */\n f: z3\n },\n 13: {\n /* n:\"BrtShortRk\", */\n f: rA\n },\n 14: {\n /* n:\"BrtShortError\", */\n f: J3\n },\n 15: {\n /* n:\"BrtShortBool\", */\n f: Y3\n },\n 16: {\n /* n:\"BrtShortReal\", */\n f: gh\n },\n 17: {\n /* n:\"BrtShortSt\", */\n f: nA\n },\n 18: {\n /* n:\"BrtShortIsst\", */\n f: Q3\n },\n 19: {\n /* n:\"BrtSSTItem\", */\n f: gc\n },\n 20: {\n /* n:\"BrtPCDIMissing\" */\n },\n 21: {\n /* n:\"BrtPCDINumber\" */\n },\n 22: {\n /* n:\"BrtPCDIBoolean\" */\n },\n 23: {\n /* n:\"BrtPCDIError\" */\n },\n 24: {\n /* n:\"BrtPCDIString\" */\n },\n 25: {\n /* n:\"BrtPCDIDatetime\" */\n },\n 26: {\n /* n:\"BrtPCDIIndex\" */\n },\n 27: {\n /* n:\"BrtPCDIAMissing\" */\n },\n 28: {\n /* n:\"BrtPCDIANumber\" */\n },\n 29: {\n /* n:\"BrtPCDIABoolean\" */\n },\n 30: {\n /* n:\"BrtPCDIAError\" */\n },\n 31: {\n /* n:\"BrtPCDIAString\" */\n },\n 32: {\n /* n:\"BrtPCDIADatetime\" */\n },\n 33: {\n /* n:\"BrtPCRRecord\" */\n },\n 34: {\n /* n:\"BrtPCRRecordDt\" */\n },\n 35: {\n /* n:\"BrtFRTBegin\", */\n T: 1\n },\n 36: {\n /* n:\"BrtFRTEnd\", */\n T: -1\n },\n 37: {\n /* n:\"BrtACBegin\", */\n T: 1\n },\n 38: {\n /* n:\"BrtACEnd\", */\n T: -1\n },\n 39: {\n /* n:\"BrtName\", */\n f: PA\n },\n 40: {\n /* n:\"BrtIndexRowBlock\" */\n },\n 42: {\n /* n:\"BrtIndexBlock\" */\n },\n 43: {\n /* n:\"BrtFont\", */\n f: dw\n },\n 44: {\n /* n:\"BrtFmt\", */\n f: xw\n },\n 45: {\n /* n:\"BrtFill\", */\n f: vw\n },\n 46: {\n /* n:\"BrtBorder\", */\n f: gw\n },\n 47: {\n /* n:\"BrtXF\", */\n f: pw\n },\n 48: {\n /* n:\"BrtStyle\" */\n },\n 49: {\n /* n:\"BrtCellMeta\", */\n f: v4\n },\n 50: {\n /* n:\"BrtValueMeta\" */\n },\n 51: {\n /* n:\"BrtMdb\" */\n f: Rw\n },\n 52: {\n /* n:\"BrtBeginFmd\", */\n T: 1\n },\n 53: {\n /* n:\"BrtEndFmd\", */\n T: -1\n },\n 54: {\n /* n:\"BrtBeginMdx\", */\n T: 1\n },\n 55: {\n /* n:\"BrtEndMdx\", */\n T: -1\n },\n 56: {\n /* n:\"BrtBeginMdxTuple\", */\n T: 1\n },\n 57: {\n /* n:\"BrtEndMdxTuple\", */\n T: -1\n },\n 58: {\n /* n:\"BrtMdxMbrIstr\" */\n },\n 59: {\n /* n:\"BrtStr\" */\n },\n 60: {\n /* n:\"BrtColInfo\", */\n f: Q1\n },\n 62: {\n /* n:\"BrtCellRString\", */\n f: tA\n },\n 63: {\n /* n:\"BrtCalcChainItem$\", */\n f: Bw\n },\n 64: {\n /* n:\"BrtDVal\", */\n f: gA\n },\n 65: {\n /* n:\"BrtSxvcellNum\" */\n },\n 66: {\n /* n:\"BrtSxvcellStr\" */\n },\n 67: {\n /* n:\"BrtSxvcellBool\" */\n },\n 68: {\n /* n:\"BrtSxvcellErr\" */\n },\n 69: {\n /* n:\"BrtSxvcellDate\" */\n },\n 70: {\n /* n:\"BrtSxvcellNil\" */\n },\n 128: {\n /* n:\"BrtFileVersion\" */\n },\n 129: {\n /* n:\"BrtBeginSheet\", */\n T: 1\n },\n 130: {\n /* n:\"BrtEndSheet\", */\n T: -1\n },\n 131: {\n /* n:\"BrtBeginBook\", */\n T: 1,\n f: ht,\n p: 0\n },\n 132: {\n /* n:\"BrtEndBook\", */\n T: -1\n },\n 133: {\n /* n:\"BrtBeginWsViews\", */\n T: 1\n },\n 134: {\n /* n:\"BrtEndWsViews\", */\n T: -1\n },\n 135: {\n /* n:\"BrtBeginBookViews\", */\n T: 1\n },\n 136: {\n /* n:\"BrtEndBookViews\", */\n T: -1\n },\n 137: {\n /* n:\"BrtBeginWsView\", */\n T: 1,\n f: pA\n },\n 138: {\n /* n:\"BrtEndWsView\", */\n T: -1\n },\n 139: {\n /* n:\"BrtBeginCsViews\", */\n T: 1\n },\n 140: {\n /* n:\"BrtEndCsViews\", */\n T: -1\n },\n 141: {\n /* n:\"BrtBeginCsView\", */\n T: 1\n },\n 142: {\n /* n:\"BrtEndCsView\", */\n T: -1\n },\n 143: {\n /* n:\"BrtBeginBundleShs\", */\n T: 1\n },\n 144: {\n /* n:\"BrtEndBundleShs\", */\n T: -1\n },\n 145: {\n /* n:\"BrtBeginSheetData\", */\n T: 1\n },\n 146: {\n /* n:\"BrtEndSheetData\", */\n T: -1\n },\n 147: {\n /* n:\"BrtWsProp\", */\n f: X3\n },\n 148: {\n /* n:\"BrtWsDim\", */\n f: G3,\n p: 16\n },\n 151: {\n /* n:\"BrtPane\", */\n f: lA\n },\n 152: {\n /* n:\"BrtSel\" */\n },\n 153: {\n /* n:\"BrtWbProp\", */\n f: NA\n },\n 154: {\n /* n:\"BrtWbFactoid\" */\n },\n 155: {\n /* n:\"BrtFileRecover\" */\n },\n 156: {\n /* n:\"BrtBundleSh\", */\n f: RA\n },\n 157: {\n /* n:\"BrtCalcProp\" */\n },\n 158: {\n /* n:\"BrtBookView\" */\n },\n 159: {\n /* n:\"BrtBeginSst\", */\n T: 1,\n f: RT\n },\n 160: {\n /* n:\"BrtEndSst\", */\n T: -1\n },\n 161: {\n /* n:\"BrtBeginAFilter\", */\n T: 1,\n f: Fn\n },\n 162: {\n /* n:\"BrtEndAFilter\", */\n T: -1\n },\n 163: {\n /* n:\"BrtBeginFilterColumn\", */\n T: 1\n },\n 164: {\n /* n:\"BrtEndFilterColumn\", */\n T: -1\n },\n 165: {\n /* n:\"BrtBeginFilters\", */\n T: 1\n },\n 166: {\n /* n:\"BrtEndFilters\", */\n T: -1\n },\n 167: {\n /* n:\"BrtFilter\" */\n },\n 168: {\n /* n:\"BrtColorFilter\" */\n },\n 169: {\n /* n:\"BrtIconFilter\" */\n },\n 170: {\n /* n:\"BrtTop10Filter\" */\n },\n 171: {\n /* n:\"BrtDynamicFilter\" */\n },\n 172: {\n /* n:\"BrtBeginCustomFilters\", */\n T: 1\n },\n 173: {\n /* n:\"BrtEndCustomFilters\", */\n T: -1\n },\n 174: {\n /* n:\"BrtCustomFilter\" */\n },\n 175: {\n /* n:\"BrtAFilterDateGroupItem\" */\n },\n 176: {\n /* n:\"BrtMergeCell\", */\n f: uA\n },\n 177: {\n /* n:\"BrtBeginMergeCells\", */\n T: 1\n },\n 178: {\n /* n:\"BrtEndMergeCells\", */\n T: -1\n },\n 179: {\n /* n:\"BrtBeginPivotCacheDef\", */\n T: 1\n },\n 180: {\n /* n:\"BrtEndPivotCacheDef\", */\n T: -1\n },\n 181: {\n /* n:\"BrtBeginPCDFields\", */\n T: 1\n },\n 182: {\n /* n:\"BrtEndPCDFields\", */\n T: -1\n },\n 183: {\n /* n:\"BrtBeginPCDField\", */\n T: 1\n },\n 184: {\n /* n:\"BrtEndPCDField\", */\n T: -1\n },\n 185: {\n /* n:\"BrtBeginPCDSource\", */\n T: 1\n },\n 186: {\n /* n:\"BrtEndPCDSource\", */\n T: -1\n },\n 187: {\n /* n:\"BrtBeginPCDSRange\", */\n T: 1\n },\n 188: {\n /* n:\"BrtEndPCDSRange\", */\n T: -1\n },\n 189: {\n /* n:\"BrtBeginPCDFAtbl\", */\n T: 1\n },\n 190: {\n /* n:\"BrtEndPCDFAtbl\", */\n T: -1\n },\n 191: {\n /* n:\"BrtBeginPCDIRun\", */\n T: 1\n },\n 192: {\n /* n:\"BrtEndPCDIRun\", */\n T: -1\n },\n 193: {\n /* n:\"BrtBeginPivotCacheRecords\", */\n T: 1\n },\n 194: {\n /* n:\"BrtEndPivotCacheRecords\", */\n T: -1\n },\n 195: {\n /* n:\"BrtBeginPCDHierarchies\", */\n T: 1\n },\n 196: {\n /* n:\"BrtEndPCDHierarchies\", */\n T: -1\n },\n 197: {\n /* n:\"BrtBeginPCDHierarchy\", */\n T: 1\n },\n 198: {\n /* n:\"BrtEndPCDHierarchy\", */\n T: -1\n },\n 199: {\n /* n:\"BrtBeginPCDHFieldsUsage\", */\n T: 1\n },\n 200: {\n /* n:\"BrtEndPCDHFieldsUsage\", */\n T: -1\n },\n 201: {\n /* n:\"BrtBeginExtConnection\", */\n T: 1\n },\n 202: {\n /* n:\"BrtEndExtConnection\", */\n T: -1\n },\n 203: {\n /* n:\"BrtBeginECDbProps\", */\n T: 1\n },\n 204: {\n /* n:\"BrtEndECDbProps\", */\n T: -1\n },\n 205: {\n /* n:\"BrtBeginECOlapProps\", */\n T: 1\n },\n 206: {\n /* n:\"BrtEndECOlapProps\", */\n T: -1\n },\n 207: {\n /* n:\"BrtBeginPCDSConsol\", */\n T: 1\n },\n 208: {\n /* n:\"BrtEndPCDSConsol\", */\n T: -1\n },\n 209: {\n /* n:\"BrtBeginPCDSCPages\", */\n T: 1\n },\n 210: {\n /* n:\"BrtEndPCDSCPages\", */\n T: -1\n },\n 211: {\n /* n:\"BrtBeginPCDSCPage\", */\n T: 1\n },\n 212: {\n /* n:\"BrtEndPCDSCPage\", */\n T: -1\n },\n 213: {\n /* n:\"BrtBeginPCDSCPItem\", */\n T: 1\n },\n 214: {\n /* n:\"BrtEndPCDSCPItem\", */\n T: -1\n },\n 215: {\n /* n:\"BrtBeginPCDSCSets\", */\n T: 1\n },\n 216: {\n /* n:\"BrtEndPCDSCSets\", */\n T: -1\n },\n 217: {\n /* n:\"BrtBeginPCDSCSet\", */\n T: 1\n },\n 218: {\n /* n:\"BrtEndPCDSCSet\", */\n T: -1\n },\n 219: {\n /* n:\"BrtBeginPCDFGroup\", */\n T: 1\n },\n 220: {\n /* n:\"BrtEndPCDFGroup\", */\n T: -1\n },\n 221: {\n /* n:\"BrtBeginPCDFGItems\", */\n T: 1\n },\n 222: {\n /* n:\"BrtEndPCDFGItems\", */\n T: -1\n },\n 223: {\n /* n:\"BrtBeginPCDFGRange\", */\n T: 1\n },\n 224: {\n /* n:\"BrtEndPCDFGRange\", */\n T: -1\n },\n 225: {\n /* n:\"BrtBeginPCDFGDiscrete\", */\n T: 1\n },\n 226: {\n /* n:\"BrtEndPCDFGDiscrete\", */\n T: -1\n },\n 227: {\n /* n:\"BrtBeginPCDSDTupleCache\", */\n T: 1\n },\n 228: {\n /* n:\"BrtEndPCDSDTupleCache\", */\n T: -1\n },\n 229: {\n /* n:\"BrtBeginPCDSDTCEntries\", */\n T: 1\n },\n 230: {\n /* n:\"BrtEndPCDSDTCEntries\", */\n T: -1\n },\n 231: {\n /* n:\"BrtBeginPCDSDTCEMembers\", */\n T: 1\n },\n 232: {\n /* n:\"BrtEndPCDSDTCEMembers\", */\n T: -1\n },\n 233: {\n /* n:\"BrtBeginPCDSDTCEMember\", */\n T: 1\n },\n 234: {\n /* n:\"BrtEndPCDSDTCEMember\", */\n T: -1\n },\n 235: {\n /* n:\"BrtBeginPCDSDTCQueries\", */\n T: 1\n },\n 236: {\n /* n:\"BrtEndPCDSDTCQueries\", */\n T: -1\n },\n 237: {\n /* n:\"BrtBeginPCDSDTCQuery\", */\n T: 1\n },\n 238: {\n /* n:\"BrtEndPCDSDTCQuery\", */\n T: -1\n },\n 239: {\n /* n:\"BrtBeginPCDSDTCSets\", */\n T: 1\n },\n 240: {\n /* n:\"BrtEndPCDSDTCSets\", */\n T: -1\n },\n 241: {\n /* n:\"BrtBeginPCDSDTCSet\", */\n T: 1\n },\n 242: {\n /* n:\"BrtEndPCDSDTCSet\", */\n T: -1\n },\n 243: {\n /* n:\"BrtBeginPCDCalcItems\", */\n T: 1\n },\n 244: {\n /* n:\"BrtEndPCDCalcItems\", */\n T: -1\n },\n 245: {\n /* n:\"BrtBeginPCDCalcItem\", */\n T: 1\n },\n 246: {\n /* n:\"BrtEndPCDCalcItem\", */\n T: -1\n },\n 247: {\n /* n:\"BrtBeginPRule\", */\n T: 1\n },\n 248: {\n /* n:\"BrtEndPRule\", */\n T: -1\n },\n 249: {\n /* n:\"BrtBeginPRFilters\", */\n T: 1\n },\n 250: {\n /* n:\"BrtEndPRFilters\", */\n T: -1\n },\n 251: {\n /* n:\"BrtBeginPRFilter\", */\n T: 1\n },\n 252: {\n /* n:\"BrtEndPRFilter\", */\n T: -1\n },\n 253: {\n /* n:\"BrtBeginPNames\", */\n T: 1\n },\n 254: {\n /* n:\"BrtEndPNames\", */\n T: -1\n },\n 255: {\n /* n:\"BrtBeginPName\", */\n T: 1\n },\n 256: {\n /* n:\"BrtEndPName\", */\n T: -1\n },\n 257: {\n /* n:\"BrtBeginPNPairs\", */\n T: 1\n },\n 258: {\n /* n:\"BrtEndPNPairs\", */\n T: -1\n },\n 259: {\n /* n:\"BrtBeginPNPair\", */\n T: 1\n },\n 260: {\n /* n:\"BrtEndPNPair\", */\n T: -1\n },\n 261: {\n /* n:\"BrtBeginECWebProps\", */\n T: 1\n },\n 262: {\n /* n:\"BrtEndECWebProps\", */\n T: -1\n },\n 263: {\n /* n:\"BrtBeginEcWpTables\", */\n T: 1\n },\n 264: {\n /* n:\"BrtEndECWPTables\", */\n T: -1\n },\n 265: {\n /* n:\"BrtBeginECParams\", */\n T: 1\n },\n 266: {\n /* n:\"BrtEndECParams\", */\n T: -1\n },\n 267: {\n /* n:\"BrtBeginECParam\", */\n T: 1\n },\n 268: {\n /* n:\"BrtEndECParam\", */\n T: -1\n },\n 269: {\n /* n:\"BrtBeginPCDKPIs\", */\n T: 1\n },\n 270: {\n /* n:\"BrtEndPCDKPIs\", */\n T: -1\n },\n 271: {\n /* n:\"BrtBeginPCDKPI\", */\n T: 1\n },\n 272: {\n /* n:\"BrtEndPCDKPI\", */\n T: -1\n },\n 273: {\n /* n:\"BrtBeginDims\", */\n T: 1\n },\n 274: {\n /* n:\"BrtEndDims\", */\n T: -1\n },\n 275: {\n /* n:\"BrtBeginDim\", */\n T: 1\n },\n 276: {\n /* n:\"BrtEndDim\", */\n T: -1\n },\n 277: {\n /* n:\"BrtIndexPartEnd\" */\n },\n 278: {\n /* n:\"BrtBeginStyleSheet\", */\n T: 1\n },\n 279: {\n /* n:\"BrtEndStyleSheet\", */\n T: -1\n },\n 280: {\n /* n:\"BrtBeginSXView\", */\n T: 1\n },\n 281: {\n /* n:\"BrtEndSXVI\", */\n T: -1\n },\n 282: {\n /* n:\"BrtBeginSXVI\", */\n T: 1\n },\n 283: {\n /* n:\"BrtBeginSXVIs\", */\n T: 1\n },\n 284: {\n /* n:\"BrtEndSXVIs\", */\n T: -1\n },\n 285: {\n /* n:\"BrtBeginSXVD\", */\n T: 1\n },\n 286: {\n /* n:\"BrtEndSXVD\", */\n T: -1\n },\n 287: {\n /* n:\"BrtBeginSXVDs\", */\n T: 1\n },\n 288: {\n /* n:\"BrtEndSXVDs\", */\n T: -1\n },\n 289: {\n /* n:\"BrtBeginSXPI\", */\n T: 1\n },\n 290: {\n /* n:\"BrtEndSXPI\", */\n T: -1\n },\n 291: {\n /* n:\"BrtBeginSXPIs\", */\n T: 1\n },\n 292: {\n /* n:\"BrtEndSXPIs\", */\n T: -1\n },\n 293: {\n /* n:\"BrtBeginSXDI\", */\n T: 1\n },\n 294: {\n /* n:\"BrtEndSXDI\", */\n T: -1\n },\n 295: {\n /* n:\"BrtBeginSXDIs\", */\n T: 1\n },\n 296: {\n /* n:\"BrtEndSXDIs\", */\n T: -1\n },\n 297: {\n /* n:\"BrtBeginSXLI\", */\n T: 1\n },\n 298: {\n /* n:\"BrtEndSXLI\", */\n T: -1\n },\n 299: {\n /* n:\"BrtBeginSXLIRws\", */\n T: 1\n },\n 300: {\n /* n:\"BrtEndSXLIRws\", */\n T: -1\n },\n 301: {\n /* n:\"BrtBeginSXLICols\", */\n T: 1\n },\n 302: {\n /* n:\"BrtEndSXLICols\", */\n T: -1\n },\n 303: {\n /* n:\"BrtBeginSXFormat\", */\n T: 1\n },\n 304: {\n /* n:\"BrtEndSXFormat\", */\n T: -1\n },\n 305: {\n /* n:\"BrtBeginSXFormats\", */\n T: 1\n },\n 306: {\n /* n:\"BrtEndSxFormats\", */\n T: -1\n },\n 307: {\n /* n:\"BrtBeginSxSelect\", */\n T: 1\n },\n 308: {\n /* n:\"BrtEndSxSelect\", */\n T: -1\n },\n 309: {\n /* n:\"BrtBeginISXVDRws\", */\n T: 1\n },\n 310: {\n /* n:\"BrtEndISXVDRws\", */\n T: -1\n },\n 311: {\n /* n:\"BrtBeginISXVDCols\", */\n T: 1\n },\n 312: {\n /* n:\"BrtEndISXVDCols\", */\n T: -1\n },\n 313: {\n /* n:\"BrtEndSXLocation\", */\n T: -1\n },\n 314: {\n /* n:\"BrtBeginSXLocation\", */\n T: 1\n },\n 315: {\n /* n:\"BrtEndSXView\", */\n T: -1\n },\n 316: {\n /* n:\"BrtBeginSXTHs\", */\n T: 1\n },\n 317: {\n /* n:\"BrtEndSXTHs\", */\n T: -1\n },\n 318: {\n /* n:\"BrtBeginSXTH\", */\n T: 1\n },\n 319: {\n /* n:\"BrtEndSXTH\", */\n T: -1\n },\n 320: {\n /* n:\"BrtBeginISXTHRws\", */\n T: 1\n },\n 321: {\n /* n:\"BrtEndISXTHRws\", */\n T: -1\n },\n 322: {\n /* n:\"BrtBeginISXTHCols\", */\n T: 1\n },\n 323: {\n /* n:\"BrtEndISXTHCols\", */\n T: -1\n },\n 324: {\n /* n:\"BrtBeginSXTDMPS\", */\n T: 1\n },\n 325: {\n /* n:\"BrtEndSXTDMPs\", */\n T: -1\n },\n 326: {\n /* n:\"BrtBeginSXTDMP\", */\n T: 1\n },\n 327: {\n /* n:\"BrtEndSXTDMP\", */\n T: -1\n },\n 328: {\n /* n:\"BrtBeginSXTHItems\", */\n T: 1\n },\n 329: {\n /* n:\"BrtEndSXTHItems\", */\n T: -1\n },\n 330: {\n /* n:\"BrtBeginSXTHItem\", */\n T: 1\n },\n 331: {\n /* n:\"BrtEndSXTHItem\", */\n T: -1\n },\n 332: {\n /* n:\"BrtBeginMetadata\", */\n T: 1\n },\n 333: {\n /* n:\"BrtEndMetadata\", */\n T: -1\n },\n 334: {\n /* n:\"BrtBeginEsmdtinfo\", */\n T: 1\n },\n 335: {\n /* n:\"BrtMdtinfo\", */\n f: Dw\n },\n 336: {\n /* n:\"BrtEndEsmdtinfo\", */\n T: -1\n },\n 337: {\n /* n:\"BrtBeginEsmdb\", */\n f: Nw,\n T: 1\n },\n 338: {\n /* n:\"BrtEndEsmdb\", */\n T: -1\n },\n 339: {\n /* n:\"BrtBeginEsfmd\", */\n T: 1\n },\n 340: {\n /* n:\"BrtEndEsfmd\", */\n T: -1\n },\n 341: {\n /* n:\"BrtBeginSingleCells\", */\n T: 1\n },\n 342: {\n /* n:\"BrtEndSingleCells\", */\n T: -1\n },\n 343: {\n /* n:\"BrtBeginList\", */\n T: 1\n },\n 344: {\n /* n:\"BrtEndList\", */\n T: -1\n },\n 345: {\n /* n:\"BrtBeginListCols\", */\n T: 1\n },\n 346: {\n /* n:\"BrtEndListCols\", */\n T: -1\n },\n 347: {\n /* n:\"BrtBeginListCol\", */\n T: 1\n },\n 348: {\n /* n:\"BrtEndListCol\", */\n T: -1\n },\n 349: {\n /* n:\"BrtBeginListXmlCPr\", */\n T: 1\n },\n 350: {\n /* n:\"BrtEndListXmlCPr\", */\n T: -1\n },\n 351: {\n /* n:\"BrtListCCFmla\" */\n },\n 352: {\n /* n:\"BrtListTrFmla\" */\n },\n 353: {\n /* n:\"BrtBeginExternals\", */\n T: 1\n },\n 354: {\n /* n:\"BrtEndExternals\", */\n T: -1\n },\n 355: {\n /* n:\"BrtSupBookSrc\", */\n f: jf\n },\n 357: {\n /* n:\"BrtSupSelf\" */\n },\n 358: {\n /* n:\"BrtSupSame\" */\n },\n 359: {\n /* n:\"BrtSupTabs\" */\n },\n 360: {\n /* n:\"BrtBeginSupBook\", */\n T: 1\n },\n 361: {\n /* n:\"BrtPlaceholderName\" */\n },\n 362: {\n /* n:\"BrtExternSheet\", */\n f: q1\n },\n 363: {\n /* n:\"BrtExternTableStart\" */\n },\n 364: {\n /* n:\"BrtExternTableEnd\" */\n },\n 366: {\n /* n:\"BrtExternRowHdr\" */\n },\n 367: {\n /* n:\"BrtExternCellBlank\" */\n },\n 368: {\n /* n:\"BrtExternCellReal\" */\n },\n 369: {\n /* n:\"BrtExternCellBool\" */\n },\n 370: {\n /* n:\"BrtExternCellError\" */\n },\n 371: {\n /* n:\"BrtExternCellString\" */\n },\n 372: {\n /* n:\"BrtBeginEsmdx\", */\n T: 1\n },\n 373: {\n /* n:\"BrtEndEsmdx\", */\n T: -1\n },\n 374: {\n /* n:\"BrtBeginMdxSet\", */\n T: 1\n },\n 375: {\n /* n:\"BrtEndMdxSet\", */\n T: -1\n },\n 376: {\n /* n:\"BrtBeginMdxMbrProp\", */\n T: 1\n },\n 377: {\n /* n:\"BrtEndMdxMbrProp\", */\n T: -1\n },\n 378: {\n /* n:\"BrtBeginMdxKPI\", */\n T: 1\n },\n 379: {\n /* n:\"BrtEndMdxKPI\", */\n T: -1\n },\n 380: {\n /* n:\"BrtBeginEsstr\", */\n T: 1\n },\n 381: {\n /* n:\"BrtEndEsstr\", */\n T: -1\n },\n 382: {\n /* n:\"BrtBeginPRFItem\", */\n T: 1\n },\n 383: {\n /* n:\"BrtEndPRFItem\", */\n T: -1\n },\n 384: {\n /* n:\"BrtBeginPivotCacheIDs\", */\n T: 1\n },\n 385: {\n /* n:\"BrtEndPivotCacheIDs\", */\n T: -1\n },\n 386: {\n /* n:\"BrtBeginPivotCacheID\", */\n T: 1\n },\n 387: {\n /* n:\"BrtEndPivotCacheID\", */\n T: -1\n },\n 388: {\n /* n:\"BrtBeginISXVIs\", */\n T: 1\n },\n 389: {\n /* n:\"BrtEndISXVIs\", */\n T: -1\n },\n 390: {\n /* n:\"BrtBeginColInfos\", */\n T: 1\n },\n 391: {\n /* n:\"BrtEndColInfos\", */\n T: -1\n },\n 392: {\n /* n:\"BrtBeginRwBrk\", */\n T: 1\n },\n 393: {\n /* n:\"BrtEndRwBrk\", */\n T: -1\n },\n 394: {\n /* n:\"BrtBeginColBrk\", */\n T: 1\n },\n 395: {\n /* n:\"BrtEndColBrk\", */\n T: -1\n },\n 396: {\n /* n:\"BrtBrk\" */\n },\n 397: {\n /* n:\"BrtUserBookView\" */\n },\n 398: {\n /* n:\"BrtInfo\" */\n },\n 399: {\n /* n:\"BrtCUsr\" */\n },\n 400: {\n /* n:\"BrtUsr\" */\n },\n 401: {\n /* n:\"BrtBeginUsers\", */\n T: 1\n },\n 403: {\n /* n:\"BrtEOF\" */\n },\n 404: {\n /* n:\"BrtUCR\" */\n },\n 405: {\n /* n:\"BrtRRInsDel\" */\n },\n 406: {\n /* n:\"BrtRREndInsDel\" */\n },\n 407: {\n /* n:\"BrtRRMove\" */\n },\n 408: {\n /* n:\"BrtRREndMove\" */\n },\n 409: {\n /* n:\"BrtRRChgCell\" */\n },\n 410: {\n /* n:\"BrtRREndChgCell\" */\n },\n 411: {\n /* n:\"BrtRRHeader\" */\n },\n 412: {\n /* n:\"BrtRRUserView\" */\n },\n 413: {\n /* n:\"BrtRRRenSheet\" */\n },\n 414: {\n /* n:\"BrtRRInsertSh\" */\n },\n 415: {\n /* n:\"BrtRRDefName\" */\n },\n 416: {\n /* n:\"BrtRRNote\" */\n },\n 417: {\n /* n:\"BrtRRConflict\" */\n },\n 418: {\n /* n:\"BrtRRTQSIF\" */\n },\n 419: {\n /* n:\"BrtRRFormat\" */\n },\n 420: {\n /* n:\"BrtRREndFormat\" */\n },\n 421: {\n /* n:\"BrtRRAutoFmt\" */\n },\n 422: {\n /* n:\"BrtBeginUserShViews\", */\n T: 1\n },\n 423: {\n /* n:\"BrtBeginUserShView\", */\n T: 1\n },\n 424: {\n /* n:\"BrtEndUserShView\", */\n T: -1\n },\n 425: {\n /* n:\"BrtEndUserShViews\", */\n T: -1\n },\n 426: {\n /* n:\"BrtArrFmla\", */\n f: hA\n },\n 427: {\n /* n:\"BrtShrFmla\", */\n f: xA\n },\n 428: {\n /* n:\"BrtTable\" */\n },\n 429: {\n /* n:\"BrtBeginExtConnections\", */\n T: 1\n },\n 430: {\n /* n:\"BrtEndExtConnections\", */\n T: -1\n },\n 431: {\n /* n:\"BrtBeginPCDCalcMems\", */\n T: 1\n },\n 432: {\n /* n:\"BrtEndPCDCalcMems\", */\n T: -1\n },\n 433: {\n /* n:\"BrtBeginPCDCalcMem\", */\n T: 1\n },\n 434: {\n /* n:\"BrtEndPCDCalcMem\", */\n T: -1\n },\n 435: {\n /* n:\"BrtBeginPCDHGLevels\", */\n T: 1\n },\n 436: {\n /* n:\"BrtEndPCDHGLevels\", */\n T: -1\n },\n 437: {\n /* n:\"BrtBeginPCDHGLevel\", */\n T: 1\n },\n 438: {\n /* n:\"BrtEndPCDHGLevel\", */\n T: -1\n },\n 439: {\n /* n:\"BrtBeginPCDHGLGroups\", */\n T: 1\n },\n 440: {\n /* n:\"BrtEndPCDHGLGroups\", */\n T: -1\n },\n 441: {\n /* n:\"BrtBeginPCDHGLGroup\", */\n T: 1\n },\n 442: {\n /* n:\"BrtEndPCDHGLGroup\", */\n T: -1\n },\n 443: {\n /* n:\"BrtBeginPCDHGLGMembers\", */\n T: 1\n },\n 444: {\n /* n:\"BrtEndPCDHGLGMembers\", */\n T: -1\n },\n 445: {\n /* n:\"BrtBeginPCDHGLGMember\", */\n T: 1\n },\n 446: {\n /* n:\"BrtEndPCDHGLGMember\", */\n T: -1\n },\n 447: {\n /* n:\"BrtBeginQSI\", */\n T: 1\n },\n 448: {\n /* n:\"BrtEndQSI\", */\n T: -1\n },\n 449: {\n /* n:\"BrtBeginQSIR\", */\n T: 1\n },\n 450: {\n /* n:\"BrtEndQSIR\", */\n T: -1\n },\n 451: {\n /* n:\"BrtBeginDeletedNames\", */\n T: 1\n },\n 452: {\n /* n:\"BrtEndDeletedNames\", */\n T: -1\n },\n 453: {\n /* n:\"BrtBeginDeletedName\", */\n T: 1\n },\n 454: {\n /* n:\"BrtEndDeletedName\", */\n T: -1\n },\n 455: {\n /* n:\"BrtBeginQSIFs\", */\n T: 1\n },\n 456: {\n /* n:\"BrtEndQSIFs\", */\n T: -1\n },\n 457: {\n /* n:\"BrtBeginQSIF\", */\n T: 1\n },\n 458: {\n /* n:\"BrtEndQSIF\", */\n T: -1\n },\n 459: {\n /* n:\"BrtBeginAutoSortScope\", */\n T: 1\n },\n 460: {\n /* n:\"BrtEndAutoSortScope\", */\n T: -1\n },\n 461: {\n /* n:\"BrtBeginConditionalFormatting\", */\n T: 1\n },\n 462: {\n /* n:\"BrtEndConditionalFormatting\", */\n T: -1\n },\n 463: {\n /* n:\"BrtBeginCFRule\", */\n T: 1\n },\n 464: {\n /* n:\"BrtEndCFRule\", */\n T: -1\n },\n 465: {\n /* n:\"BrtBeginIconSet\", */\n T: 1\n },\n 466: {\n /* n:\"BrtEndIconSet\", */\n T: -1\n },\n 467: {\n /* n:\"BrtBeginDatabar\", */\n T: 1\n },\n 468: {\n /* n:\"BrtEndDatabar\", */\n T: -1\n },\n 469: {\n /* n:\"BrtBeginColorScale\", */\n T: 1\n },\n 470: {\n /* n:\"BrtEndColorScale\", */\n T: -1\n },\n 471: {\n /* n:\"BrtCFVO\" */\n },\n 472: {\n /* n:\"BrtExternValueMeta\" */\n },\n 473: {\n /* n:\"BrtBeginColorPalette\", */\n T: 1\n },\n 474: {\n /* n:\"BrtEndColorPalette\", */\n T: -1\n },\n 475: {\n /* n:\"BrtIndexedColor\" */\n },\n 476: {\n /* n:\"BrtMargins\", */\n f: vA\n },\n 477: {\n /* n:\"BrtPrintOptions\" */\n },\n 478: {\n /* n:\"BrtPageSetup\" */\n },\n 479: {\n /* n:\"BrtBeginHeaderFooter\", */\n T: 1\n },\n 480: {\n /* n:\"BrtEndHeaderFooter\", */\n T: -1\n },\n 481: {\n /* n:\"BrtBeginSXCrtFormat\", */\n T: 1\n },\n 482: {\n /* n:\"BrtEndSXCrtFormat\", */\n T: -1\n },\n 483: {\n /* n:\"BrtBeginSXCrtFormats\", */\n T: 1\n },\n 484: {\n /* n:\"BrtEndSXCrtFormats\", */\n T: -1\n },\n 485: {\n /* n:\"BrtWsFmtInfo\", */\n f: V3\n },\n 486: {\n /* n:\"BrtBeginMgs\", */\n T: 1\n },\n 487: {\n /* n:\"BrtEndMGs\", */\n T: -1\n },\n 488: {\n /* n:\"BrtBeginMGMaps\", */\n T: 1\n },\n 489: {\n /* n:\"BrtEndMGMaps\", */\n T: -1\n },\n 490: {\n /* n:\"BrtBeginMG\", */\n T: 1\n },\n 491: {\n /* n:\"BrtEndMG\", */\n T: -1\n },\n 492: {\n /* n:\"BrtBeginMap\", */\n T: 1\n },\n 493: {\n /* n:\"BrtEndMap\", */\n T: -1\n },\n 494: {\n /* n:\"BrtHLink\", */\n f: oA\n },\n 495: {\n /* n:\"BrtBeginDCon\", */\n T: 1\n },\n 496: {\n /* n:\"BrtEndDCon\", */\n T: -1\n },\n 497: {\n /* n:\"BrtBeginDRefs\", */\n T: 1\n },\n 498: {\n /* n:\"BrtEndDRefs\", */\n T: -1\n },\n 499: {\n /* n:\"BrtDRef\" */\n },\n 500: {\n /* n:\"BrtBeginScenMan\", */\n T: 1\n },\n 501: {\n /* n:\"BrtEndScenMan\", */\n T: -1\n },\n 502: {\n /* n:\"BrtBeginSct\", */\n T: 1\n },\n 503: {\n /* n:\"BrtEndSct\", */\n T: -1\n },\n 504: {\n /* n:\"BrtSlc\" */\n },\n 505: {\n /* n:\"BrtBeginDXFs\", */\n T: 1\n },\n 506: {\n /* n:\"BrtEndDXFs\", */\n T: -1\n },\n 507: {\n /* n:\"BrtDXF\" */\n },\n 508: {\n /* n:\"BrtBeginTableStyles\", */\n T: 1\n },\n 509: {\n /* n:\"BrtEndTableStyles\", */\n T: -1\n },\n 510: {\n /* n:\"BrtBeginTableStyle\", */\n T: 1\n },\n 511: {\n /* n:\"BrtEndTableStyle\", */\n T: -1\n },\n 512: {\n /* n:\"BrtTableStyleElement\" */\n },\n 513: {\n /* n:\"BrtTableStyleClient\" */\n },\n 514: {\n /* n:\"BrtBeginVolDeps\", */\n T: 1\n },\n 515: {\n /* n:\"BrtEndVolDeps\", */\n T: -1\n },\n 516: {\n /* n:\"BrtBeginVolType\", */\n T: 1\n },\n 517: {\n /* n:\"BrtEndVolType\", */\n T: -1\n },\n 518: {\n /* n:\"BrtBeginVolMain\", */\n T: 1\n },\n 519: {\n /* n:\"BrtEndVolMain\", */\n T: -1\n },\n 520: {\n /* n:\"BrtBeginVolTopic\", */\n T: 1\n },\n 521: {\n /* n:\"BrtEndVolTopic\", */\n T: -1\n },\n 522: {\n /* n:\"BrtVolSubtopic\" */\n },\n 523: {\n /* n:\"BrtVolRef\" */\n },\n 524: {\n /* n:\"BrtVolNum\" */\n },\n 525: {\n /* n:\"BrtVolErr\" */\n },\n 526: {\n /* n:\"BrtVolStr\" */\n },\n 527: {\n /* n:\"BrtVolBool\" */\n },\n 528: {\n /* n:\"BrtBeginCalcChain$\", */\n T: 1\n },\n 529: {\n /* n:\"BrtEndCalcChain$\", */\n T: -1\n },\n 530: {\n /* n:\"BrtBeginSortState\", */\n T: 1\n },\n 531: {\n /* n:\"BrtEndSortState\", */\n T: -1\n },\n 532: {\n /* n:\"BrtBeginSortCond\", */\n T: 1\n },\n 533: {\n /* n:\"BrtEndSortCond\", */\n T: -1\n },\n 534: {\n /* n:\"BrtBookProtection\" */\n },\n 535: {\n /* n:\"BrtSheetProtection\" */\n },\n 536: {\n /* n:\"BrtRangeProtection\" */\n },\n 537: {\n /* n:\"BrtPhoneticInfo\" */\n },\n 538: {\n /* n:\"BrtBeginECTxtWiz\", */\n T: 1\n },\n 539: {\n /* n:\"BrtEndECTxtWiz\", */\n T: -1\n },\n 540: {\n /* n:\"BrtBeginECTWFldInfoLst\", */\n T: 1\n },\n 541: {\n /* n:\"BrtEndECTWFldInfoLst\", */\n T: -1\n },\n 542: {\n /* n:\"BrtBeginECTwFldInfo\", */\n T: 1\n },\n 548: {\n /* n:\"BrtFileSharing\" */\n },\n 549: {\n /* n:\"BrtOleSize\" */\n },\n 550: {\n /* n:\"BrtDrawing\", */\n f: jf\n },\n 551: {\n /* n:\"BrtLegacyDrawing\", */\n f: ds\n },\n 552: {\n /* n:\"BrtLegacyDrawingHF\" */\n },\n 553: {\n /* n:\"BrtWebOpt\" */\n },\n 554: {\n /* n:\"BrtBeginWebPubItems\", */\n T: 1\n },\n 555: {\n /* n:\"BrtEndWebPubItems\", */\n T: -1\n },\n 556: {\n /* n:\"BrtBeginWebPubItem\", */\n T: 1\n },\n 557: {\n /* n:\"BrtEndWebPubItem\", */\n T: -1\n },\n 558: {\n /* n:\"BrtBeginSXCondFmt\", */\n T: 1\n },\n 559: {\n /* n:\"BrtEndSXCondFmt\", */\n T: -1\n },\n 560: {\n /* n:\"BrtBeginSXCondFmts\", */\n T: 1\n },\n 561: {\n /* n:\"BrtEndSXCondFmts\", */\n T: -1\n },\n 562: {\n /* n:\"BrtBkHim\" */\n },\n 564: {\n /* n:\"BrtColor\" */\n },\n 565: {\n /* n:\"BrtBeginIndexedColors\", */\n T: 1\n },\n 566: {\n /* n:\"BrtEndIndexedColors\", */\n T: -1\n },\n 569: {\n /* n:\"BrtBeginMRUColors\", */\n T: 1\n },\n 570: {\n /* n:\"BrtEndMRUColors\", */\n T: -1\n },\n 572: {\n /* n:\"BrtMRUColor\" */\n },\n 573: {\n /* n:\"BrtBeginDVals\", */\n T: 1\n },\n 574: {\n /* n:\"BrtEndDVals\", */\n T: -1\n },\n 577: {\n /* n:\"BrtSupNameStart\" */\n },\n 578: {\n /* n:\"BrtSupNameValueStart\" */\n },\n 579: {\n /* n:\"BrtSupNameValueEnd\" */\n },\n 580: {\n /* n:\"BrtSupNameNum\" */\n },\n 581: {\n /* n:\"BrtSupNameErr\" */\n },\n 582: {\n /* n:\"BrtSupNameSt\" */\n },\n 583: {\n /* n:\"BrtSupNameNil\" */\n },\n 584: {\n /* n:\"BrtSupNameBool\" */\n },\n 585: {\n /* n:\"BrtSupNameFmla\" */\n },\n 586: {\n /* n:\"BrtSupNameBits\" */\n },\n 587: {\n /* n:\"BrtSupNameEnd\" */\n },\n 588: {\n /* n:\"BrtEndSupBook\", */\n T: -1\n },\n 589: {\n /* n:\"BrtCellSmartTagProperty\" */\n },\n 590: {\n /* n:\"BrtBeginCellSmartTag\", */\n T: 1\n },\n 591: {\n /* n:\"BrtEndCellSmartTag\", */\n T: -1\n },\n 592: {\n /* n:\"BrtBeginCellSmartTags\", */\n T: 1\n },\n 593: {\n /* n:\"BrtEndCellSmartTags\", */\n T: -1\n },\n 594: {\n /* n:\"BrtBeginSmartTags\", */\n T: 1\n },\n 595: {\n /* n:\"BrtEndSmartTags\", */\n T: -1\n },\n 596: {\n /* n:\"BrtSmartTagType\" */\n },\n 597: {\n /* n:\"BrtBeginSmartTagTypes\", */\n T: 1\n },\n 598: {\n /* n:\"BrtEndSmartTagTypes\", */\n T: -1\n },\n 599: {\n /* n:\"BrtBeginSXFilters\", */\n T: 1\n },\n 600: {\n /* n:\"BrtEndSXFilters\", */\n T: -1\n },\n 601: {\n /* n:\"BrtBeginSXFILTER\", */\n T: 1\n },\n 602: {\n /* n:\"BrtEndSXFilter\", */\n T: -1\n },\n 603: {\n /* n:\"BrtBeginFills\", */\n T: 1\n },\n 604: {\n /* n:\"BrtEndFills\", */\n T: -1\n },\n 605: {\n /* n:\"BrtBeginCellWatches\", */\n T: 1\n },\n 606: {\n /* n:\"BrtEndCellWatches\", */\n T: -1\n },\n 607: {\n /* n:\"BrtCellWatch\" */\n },\n 608: {\n /* n:\"BrtBeginCRErrs\", */\n T: 1\n },\n 609: {\n /* n:\"BrtEndCRErrs\", */\n T: -1\n },\n 610: {\n /* n:\"BrtCrashRecErr\" */\n },\n 611: {\n /* n:\"BrtBeginFonts\", */\n T: 1\n },\n 612: {\n /* n:\"BrtEndFonts\", */\n T: -1\n },\n 613: {\n /* n:\"BrtBeginBorders\", */\n T: 1\n },\n 614: {\n /* n:\"BrtEndBorders\", */\n T: -1\n },\n 615: {\n /* n:\"BrtBeginFmts\", */\n T: 1\n },\n 616: {\n /* n:\"BrtEndFmts\", */\n T: -1\n },\n 617: {\n /* n:\"BrtBeginCellXFs\", */\n T: 1\n },\n 618: {\n /* n:\"BrtEndCellXFs\", */\n T: -1\n },\n 619: {\n /* n:\"BrtBeginStyles\", */\n T: 1\n },\n 620: {\n /* n:\"BrtEndStyles\", */\n T: -1\n },\n 625: {\n /* n:\"BrtBigName\" */\n },\n 626: {\n /* n:\"BrtBeginCellStyleXFs\", */\n T: 1\n },\n 627: {\n /* n:\"BrtEndCellStyleXFs\", */\n T: -1\n },\n 628: {\n /* n:\"BrtBeginComments\", */\n T: 1\n },\n 629: {\n /* n:\"BrtEndComments\", */\n T: -1\n },\n 630: {\n /* n:\"BrtBeginCommentAuthors\", */\n T: 1\n },\n 631: {\n /* n:\"BrtEndCommentAuthors\", */\n T: -1\n },\n 632: {\n /* n:\"BrtCommentAuthor\", */\n f: zw\n },\n 633: {\n /* n:\"BrtBeginCommentList\", */\n T: 1\n },\n 634: {\n /* n:\"BrtEndCommentList\", */\n T: -1\n },\n 635: {\n /* n:\"BrtBeginComment\", */\n T: 1,\n f: $w\n },\n 636: {\n /* n:\"BrtEndComment\", */\n T: -1\n },\n 637: {\n /* n:\"BrtCommentText\", */\n f: g4\n },\n 638: {\n /* n:\"BrtBeginOleObjects\", */\n T: 1\n },\n 639: {\n /* n:\"BrtOleObject\" */\n },\n 640: {\n /* n:\"BrtEndOleObjects\", */\n T: -1\n },\n 641: {\n /* n:\"BrtBeginSxrules\", */\n T: 1\n },\n 642: {\n /* n:\"BrtEndSxRules\", */\n T: -1\n },\n 643: {\n /* n:\"BrtBeginActiveXControls\", */\n T: 1\n },\n 644: {\n /* n:\"BrtActiveX\" */\n },\n 645: {\n /* n:\"BrtEndActiveXControls\", */\n T: -1\n },\n 646: {\n /* n:\"BrtBeginPCDSDTCEMembersSortBy\", */\n T: 1\n },\n 648: {\n /* n:\"BrtBeginCellIgnoreECs\", */\n T: 1\n },\n 649: {\n /* n:\"BrtCellIgnoreEC\" */\n },\n 650: {\n /* n:\"BrtEndCellIgnoreECs\", */\n T: -1\n },\n 651: {\n /* n:\"BrtCsProp\", */\n f: kA\n },\n 652: {\n /* n:\"BrtCsPageSetup\" */\n },\n 653: {\n /* n:\"BrtBeginUserCsViews\", */\n T: 1\n },\n 654: {\n /* n:\"BrtEndUserCsViews\", */\n T: -1\n },\n 655: {\n /* n:\"BrtBeginUserCsView\", */\n T: 1\n },\n 656: {\n /* n:\"BrtEndUserCsView\", */\n T: -1\n },\n 657: {\n /* n:\"BrtBeginPcdSFCIEntries\", */\n T: 1\n },\n 658: {\n /* n:\"BrtEndPCDSFCIEntries\", */\n T: -1\n },\n 659: {\n /* n:\"BrtPCDSFCIEntry\" */\n },\n 660: {\n /* n:\"BrtBeginListParts\", */\n T: 1\n },\n 661: {\n /* n:\"BrtListPart\" */\n },\n 662: {\n /* n:\"BrtEndListParts\", */\n T: -1\n },\n 663: {\n /* n:\"BrtSheetCalcProp\" */\n },\n 664: {\n /* n:\"BrtBeginFnGroup\", */\n T: 1\n },\n 665: {\n /* n:\"BrtFnGroup\" */\n },\n 666: {\n /* n:\"BrtEndFnGroup\", */\n T: -1\n },\n 667: {\n /* n:\"BrtSupAddin\" */\n },\n 668: {\n /* n:\"BrtSXTDMPOrder\" */\n },\n 669: {\n /* n:\"BrtCsProtection\" */\n },\n 671: {\n /* n:\"BrtBeginWsSortMap\", */\n T: 1\n },\n 672: {\n /* n:\"BrtEndWsSortMap\", */\n T: -1\n },\n 673: {\n /* n:\"BrtBeginRRSort\", */\n T: 1\n },\n 674: {\n /* n:\"BrtEndRRSort\", */\n T: -1\n },\n 675: {\n /* n:\"BrtRRSortItem\" */\n },\n 676: {\n /* n:\"BrtFileSharingIso\" */\n },\n 677: {\n /* n:\"BrtBookProtectionIso\" */\n },\n 678: {\n /* n:\"BrtSheetProtectionIso\" */\n },\n 679: {\n /* n:\"BrtCsProtectionIso\" */\n },\n 680: {\n /* n:\"BrtRangeProtectionIso\" */\n },\n 681: {\n /* n:\"BrtDValList\" */\n },\n 1024: {\n /* n:\"BrtRwDescent\" */\n },\n 1025: {\n /* n:\"BrtKnownFonts\" */\n },\n 1026: {\n /* n:\"BrtBeginSXTupleSet\", */\n T: 1\n },\n 1027: {\n /* n:\"BrtEndSXTupleSet\", */\n T: -1\n },\n 1028: {\n /* n:\"BrtBeginSXTupleSetHeader\", */\n T: 1\n },\n 1029: {\n /* n:\"BrtEndSXTupleSetHeader\", */\n T: -1\n },\n 1030: {\n /* n:\"BrtSXTupleSetHeaderItem\" */\n },\n 1031: {\n /* n:\"BrtBeginSXTupleSetData\", */\n T: 1\n },\n 1032: {\n /* n:\"BrtEndSXTupleSetData\", */\n T: -1\n },\n 1033: {\n /* n:\"BrtBeginSXTupleSetRow\", */\n T: 1\n },\n 1034: {\n /* n:\"BrtEndSXTupleSetRow\", */\n T: -1\n },\n 1035: {\n /* n:\"BrtSXTupleSetRowItem\" */\n },\n 1036: {\n /* n:\"BrtNameExt\" */\n },\n 1037: {\n /* n:\"BrtPCDH14\" */\n },\n 1038: {\n /* n:\"BrtBeginPCDCalcMem14\", */\n T: 1\n },\n 1039: {\n /* n:\"BrtEndPCDCalcMem14\", */\n T: -1\n },\n 1040: {\n /* n:\"BrtSXTH14\" */\n },\n 1041: {\n /* n:\"BrtBeginSparklineGroup\", */\n T: 1\n },\n 1042: {\n /* n:\"BrtEndSparklineGroup\", */\n T: -1\n },\n 1043: {\n /* n:\"BrtSparkline\" */\n },\n 1044: {\n /* n:\"BrtSXDI14\" */\n },\n 1045: {\n /* n:\"BrtWsFmtInfoEx14\" */\n },\n 1046: {\n /* n:\"BrtBeginConditionalFormatting14\", */\n T: 1\n },\n 1047: {\n /* n:\"BrtEndConditionalFormatting14\", */\n T: -1\n },\n 1048: {\n /* n:\"BrtBeginCFRule14\", */\n T: 1\n },\n 1049: {\n /* n:\"BrtEndCFRule14\", */\n T: -1\n },\n 1050: {\n /* n:\"BrtCFVO14\" */\n },\n 1051: {\n /* n:\"BrtBeginDatabar14\", */\n T: 1\n },\n 1052: {\n /* n:\"BrtBeginIconSet14\", */\n T: 1\n },\n 1053: {\n /* n:\"BrtDVal14\", */\n f: _A\n },\n 1054: {\n /* n:\"BrtBeginDVals14\", */\n T: 1\n },\n 1055: {\n /* n:\"BrtColor14\" */\n },\n 1056: {\n /* n:\"BrtBeginSparklines\", */\n T: 1\n },\n 1057: {\n /* n:\"BrtEndSparklines\", */\n T: -1\n },\n 1058: {\n /* n:\"BrtBeginSparklineGroups\", */\n T: 1\n },\n 1059: {\n /* n:\"BrtEndSparklineGroups\", */\n T: -1\n },\n 1061: {\n /* n:\"BrtSXVD14\" */\n },\n 1062: {\n /* n:\"BrtBeginSXView14\", */\n T: 1\n },\n 1063: {\n /* n:\"BrtEndSXView14\", */\n T: -1\n },\n 1064: {\n /* n:\"BrtBeginSXView16\", */\n T: 1\n },\n 1065: {\n /* n:\"BrtEndSXView16\", */\n T: -1\n },\n 1066: {\n /* n:\"BrtBeginPCD14\", */\n T: 1\n },\n 1067: {\n /* n:\"BrtEndPCD14\", */\n T: -1\n },\n 1068: {\n /* n:\"BrtBeginExtConn14\", */\n T: 1\n },\n 1069: {\n /* n:\"BrtEndExtConn14\", */\n T: -1\n },\n 1070: {\n /* n:\"BrtBeginSlicerCacheIDs\", */\n T: 1\n },\n 1071: {\n /* n:\"BrtEndSlicerCacheIDs\", */\n T: -1\n },\n 1072: {\n /* n:\"BrtBeginSlicerCacheID\", */\n T: 1\n },\n 1073: {\n /* n:\"BrtEndSlicerCacheID\", */\n T: -1\n },\n 1075: {\n /* n:\"BrtBeginSlicerCache\", */\n T: 1\n },\n 1076: {\n /* n:\"BrtEndSlicerCache\", */\n T: -1\n },\n 1077: {\n /* n:\"BrtBeginSlicerCacheDef\", */\n T: 1\n },\n 1078: {\n /* n:\"BrtEndSlicerCacheDef\", */\n T: -1\n },\n 1079: {\n /* n:\"BrtBeginSlicersEx\", */\n T: 1\n },\n 1080: {\n /* n:\"BrtEndSlicersEx\", */\n T: -1\n },\n 1081: {\n /* n:\"BrtBeginSlicerEx\", */\n T: 1\n },\n 1082: {\n /* n:\"BrtEndSlicerEx\", */\n T: -1\n },\n 1083: {\n /* n:\"BrtBeginSlicer\", */\n T: 1\n },\n 1084: {\n /* n:\"BrtEndSlicer\", */\n T: -1\n },\n 1085: {\n /* n:\"BrtSlicerCachePivotTables\" */\n },\n 1086: {\n /* n:\"BrtBeginSlicerCacheOlapImpl\", */\n T: 1\n },\n 1087: {\n /* n:\"BrtEndSlicerCacheOlapImpl\", */\n T: -1\n },\n 1088: {\n /* n:\"BrtBeginSlicerCacheLevelsData\", */\n T: 1\n },\n 1089: {\n /* n:\"BrtEndSlicerCacheLevelsData\", */\n T: -1\n },\n 1090: {\n /* n:\"BrtBeginSlicerCacheLevelData\", */\n T: 1\n },\n 1091: {\n /* n:\"BrtEndSlicerCacheLevelData\", */\n T: -1\n },\n 1092: {\n /* n:\"BrtBeginSlicerCacheSiRanges\", */\n T: 1\n },\n 1093: {\n /* n:\"BrtEndSlicerCacheSiRanges\", */\n T: -1\n },\n 1094: {\n /* n:\"BrtBeginSlicerCacheSiRange\", */\n T: 1\n },\n 1095: {\n /* n:\"BrtEndSlicerCacheSiRange\", */\n T: -1\n },\n 1096: {\n /* n:\"BrtSlicerCacheOlapItem\" */\n },\n 1097: {\n /* n:\"BrtBeginSlicerCacheSelections\", */\n T: 1\n },\n 1098: {\n /* n:\"BrtSlicerCacheSelection\" */\n },\n 1099: {\n /* n:\"BrtEndSlicerCacheSelections\", */\n T: -1\n },\n 1100: {\n /* n:\"BrtBeginSlicerCacheNative\", */\n T: 1\n },\n 1101: {\n /* n:\"BrtEndSlicerCacheNative\", */\n T: -1\n },\n 1102: {\n /* n:\"BrtSlicerCacheNativeItem\" */\n },\n 1103: {\n /* n:\"BrtRangeProtection14\" */\n },\n 1104: {\n /* n:\"BrtRangeProtectionIso14\" */\n },\n 1105: {\n /* n:\"BrtCellIgnoreEC14\" */\n },\n 1111: {\n /* n:\"BrtList14\" */\n },\n 1112: {\n /* n:\"BrtCFIcon\" */\n },\n 1113: {\n /* n:\"BrtBeginSlicerCachesPivotCacheIDs\", */\n T: 1\n },\n 1114: {\n /* n:\"BrtEndSlicerCachesPivotCacheIDs\", */\n T: -1\n },\n 1115: {\n /* n:\"BrtBeginSlicers\", */\n T: 1\n },\n 1116: {\n /* n:\"BrtEndSlicers\", */\n T: -1\n },\n 1117: {\n /* n:\"BrtWbProp14\" */\n },\n 1118: {\n /* n:\"BrtBeginSXEdit\", */\n T: 1\n },\n 1119: {\n /* n:\"BrtEndSXEdit\", */\n T: -1\n },\n 1120: {\n /* n:\"BrtBeginSXEdits\", */\n T: 1\n },\n 1121: {\n /* n:\"BrtEndSXEdits\", */\n T: -1\n },\n 1122: {\n /* n:\"BrtBeginSXChange\", */\n T: 1\n },\n 1123: {\n /* n:\"BrtEndSXChange\", */\n T: -1\n },\n 1124: {\n /* n:\"BrtBeginSXChanges\", */\n T: 1\n },\n 1125: {\n /* n:\"BrtEndSXChanges\", */\n T: -1\n },\n 1126: {\n /* n:\"BrtSXTupleItems\" */\n },\n 1128: {\n /* n:\"BrtBeginSlicerStyle\", */\n T: 1\n },\n 1129: {\n /* n:\"BrtEndSlicerStyle\", */\n T: -1\n },\n 1130: {\n /* n:\"BrtSlicerStyleElement\" */\n },\n 1131: {\n /* n:\"BrtBeginStyleSheetExt14\", */\n T: 1\n },\n 1132: {\n /* n:\"BrtEndStyleSheetExt14\", */\n T: -1\n },\n 1133: {\n /* n:\"BrtBeginSlicerCachesPivotCacheID\", */\n T: 1\n },\n 1134: {\n /* n:\"BrtEndSlicerCachesPivotCacheID\", */\n T: -1\n },\n 1135: {\n /* n:\"BrtBeginConditionalFormattings\", */\n T: 1\n },\n 1136: {\n /* n:\"BrtEndConditionalFormattings\", */\n T: -1\n },\n 1137: {\n /* n:\"BrtBeginPCDCalcMemExt\", */\n T: 1\n },\n 1138: {\n /* n:\"BrtEndPCDCalcMemExt\", */\n T: -1\n },\n 1139: {\n /* n:\"BrtBeginPCDCalcMemsExt\", */\n T: 1\n },\n 1140: {\n /* n:\"BrtEndPCDCalcMemsExt\", */\n T: -1\n },\n 1141: {\n /* n:\"BrtPCDField14\" */\n },\n 1142: {\n /* n:\"BrtBeginSlicerStyles\", */\n T: 1\n },\n 1143: {\n /* n:\"BrtEndSlicerStyles\", */\n T: -1\n },\n 1144: {\n /* n:\"BrtBeginSlicerStyleElements\", */\n T: 1\n },\n 1145: {\n /* n:\"BrtEndSlicerStyleElements\", */\n T: -1\n },\n 1146: {\n /* n:\"BrtCFRuleExt\" */\n },\n 1147: {\n /* n:\"BrtBeginSXCondFmt14\", */\n T: 1\n },\n 1148: {\n /* n:\"BrtEndSXCondFmt14\", */\n T: -1\n },\n 1149: {\n /* n:\"BrtBeginSXCondFmts14\", */\n T: 1\n },\n 1150: {\n /* n:\"BrtEndSXCondFmts14\", */\n T: -1\n },\n 1152: {\n /* n:\"BrtBeginSortCond14\", */\n T: 1\n },\n 1153: {\n /* n:\"BrtEndSortCond14\", */\n T: -1\n },\n 1154: {\n /* n:\"BrtEndDVals14\", */\n T: -1\n },\n 1155: {\n /* n:\"BrtEndIconSet14\", */\n T: -1\n },\n 1156: {\n /* n:\"BrtEndDatabar14\", */\n T: -1\n },\n 1157: {\n /* n:\"BrtBeginColorScale14\", */\n T: 1\n },\n 1158: {\n /* n:\"BrtEndColorScale14\", */\n T: -1\n },\n 1159: {\n /* n:\"BrtBeginSxrules14\", */\n T: 1\n },\n 1160: {\n /* n:\"BrtEndSxrules14\", */\n T: -1\n },\n 1161: {\n /* n:\"BrtBeginPRule14\", */\n T: 1\n },\n 1162: {\n /* n:\"BrtEndPRule14\", */\n T: -1\n },\n 1163: {\n /* n:\"BrtBeginPRFilters14\", */\n T: 1\n },\n 1164: {\n /* n:\"BrtEndPRFilters14\", */\n T: -1\n },\n 1165: {\n /* n:\"BrtBeginPRFilter14\", */\n T: 1\n },\n 1166: {\n /* n:\"BrtEndPRFilter14\", */\n T: -1\n },\n 1167: {\n /* n:\"BrtBeginPRFItem14\", */\n T: 1\n },\n 1168: {\n /* n:\"BrtEndPRFItem14\", */\n T: -1\n },\n 1169: {\n /* n:\"BrtBeginCellIgnoreECs14\", */\n T: 1\n },\n 1170: {\n /* n:\"BrtEndCellIgnoreECs14\", */\n T: -1\n },\n 1171: {\n /* n:\"BrtDxf14\" */\n },\n 1172: {\n /* n:\"BrtBeginDxF14s\", */\n T: 1\n },\n 1173: {\n /* n:\"BrtEndDxf14s\", */\n T: -1\n },\n 1177: {\n /* n:\"BrtFilter14\" */\n },\n 1178: {\n /* n:\"BrtBeginCustomFilters14\", */\n T: 1\n },\n 1180: {\n /* n:\"BrtCustomFilter14\" */\n },\n 1181: {\n /* n:\"BrtIconFilter14\" */\n },\n 1182: {\n /* n:\"BrtPivotCacheConnectionName\" */\n },\n 2048: {\n /* n:\"BrtBeginDecoupledPivotCacheIDs\", */\n T: 1\n },\n 2049: {\n /* n:\"BrtEndDecoupledPivotCacheIDs\", */\n T: -1\n },\n 2050: {\n /* n:\"BrtDecoupledPivotCacheID\" */\n },\n 2051: {\n /* n:\"BrtBeginPivotTableRefs\", */\n T: 1\n },\n 2052: {\n /* n:\"BrtEndPivotTableRefs\", */\n T: -1\n },\n 2053: {\n /* n:\"BrtPivotTableRef\" */\n },\n 2054: {\n /* n:\"BrtSlicerCacheBookPivotTables\" */\n },\n 2055: {\n /* n:\"BrtBeginSxvcells\", */\n T: 1\n },\n 2056: {\n /* n:\"BrtEndSxvcells\", */\n T: -1\n },\n 2057: {\n /* n:\"BrtBeginSxRow\", */\n T: 1\n },\n 2058: {\n /* n:\"BrtEndSxRow\", */\n T: -1\n },\n 2060: {\n /* n:\"BrtPcdCalcMem15\" */\n },\n 2067: {\n /* n:\"BrtQsi15\" */\n },\n 2068: {\n /* n:\"BrtBeginWebExtensions\", */\n T: 1\n },\n 2069: {\n /* n:\"BrtEndWebExtensions\", */\n T: -1\n },\n 2070: {\n /* n:\"BrtWebExtension\" */\n },\n 2071: {\n /* n:\"BrtAbsPath15\" */\n },\n 2072: {\n /* n:\"BrtBeginPivotTableUISettings\", */\n T: 1\n },\n 2073: {\n /* n:\"BrtEndPivotTableUISettings\", */\n T: -1\n },\n 2075: {\n /* n:\"BrtTableSlicerCacheIDs\" */\n },\n 2076: {\n /* n:\"BrtTableSlicerCacheID\" */\n },\n 2077: {\n /* n:\"BrtBeginTableSlicerCache\", */\n T: 1\n },\n 2078: {\n /* n:\"BrtEndTableSlicerCache\", */\n T: -1\n },\n 2079: {\n /* n:\"BrtSxFilter15\" */\n },\n 2080: {\n /* n:\"BrtBeginTimelineCachePivotCacheIDs\", */\n T: 1\n },\n 2081: {\n /* n:\"BrtEndTimelineCachePivotCacheIDs\", */\n T: -1\n },\n 2082: {\n /* n:\"BrtTimelineCachePivotCacheID\" */\n },\n 2083: {\n /* n:\"BrtBeginTimelineCacheIDs\", */\n T: 1\n },\n 2084: {\n /* n:\"BrtEndTimelineCacheIDs\", */\n T: -1\n },\n 2085: {\n /* n:\"BrtBeginTimelineCacheID\", */\n T: 1\n },\n 2086: {\n /* n:\"BrtEndTimelineCacheID\", */\n T: -1\n },\n 2087: {\n /* n:\"BrtBeginTimelinesEx\", */\n T: 1\n },\n 2088: {\n /* n:\"BrtEndTimelinesEx\", */\n T: -1\n },\n 2089: {\n /* n:\"BrtBeginTimelineEx\", */\n T: 1\n },\n 2090: {\n /* n:\"BrtEndTimelineEx\", */\n T: -1\n },\n 2091: {\n /* n:\"BrtWorkBookPr15\" */\n },\n 2092: {\n /* n:\"BrtPCDH15\" */\n },\n 2093: {\n /* n:\"BrtBeginTimelineStyle\", */\n T: 1\n },\n 2094: {\n /* n:\"BrtEndTimelineStyle\", */\n T: -1\n },\n 2095: {\n /* n:\"BrtTimelineStyleElement\" */\n },\n 2096: {\n /* n:\"BrtBeginTimelineStylesheetExt15\", */\n T: 1\n },\n 2097: {\n /* n:\"BrtEndTimelineStylesheetExt15\", */\n T: -1\n },\n 2098: {\n /* n:\"BrtBeginTimelineStyles\", */\n T: 1\n },\n 2099: {\n /* n:\"BrtEndTimelineStyles\", */\n T: -1\n },\n 2100: {\n /* n:\"BrtBeginTimelineStyleElements\", */\n T: 1\n },\n 2101: {\n /* n:\"BrtEndTimelineStyleElements\", */\n T: -1\n },\n 2102: {\n /* n:\"BrtDxf15\" */\n },\n 2103: {\n /* n:\"BrtBeginDxfs15\", */\n T: 1\n },\n 2104: {\n /* n:\"BrtEndDxfs15\", */\n T: -1\n },\n 2105: {\n /* n:\"BrtSlicerCacheHideItemsWithNoData\" */\n },\n 2106: {\n /* n:\"BrtBeginItemUniqueNames\", */\n T: 1\n },\n 2107: {\n /* n:\"BrtEndItemUniqueNames\", */\n T: -1\n },\n 2108: {\n /* n:\"BrtItemUniqueName\" */\n },\n 2109: {\n /* n:\"BrtBeginExtConn15\", */\n T: 1\n },\n 2110: {\n /* n:\"BrtEndExtConn15\", */\n T: -1\n },\n 2111: {\n /* n:\"BrtBeginOledbPr15\", */\n T: 1\n },\n 2112: {\n /* n:\"BrtEndOledbPr15\", */\n T: -1\n },\n 2113: {\n /* n:\"BrtBeginDataFeedPr15\", */\n T: 1\n },\n 2114: {\n /* n:\"BrtEndDataFeedPr15\", */\n T: -1\n },\n 2115: {\n /* n:\"BrtTextPr15\" */\n },\n 2116: {\n /* n:\"BrtRangePr15\" */\n },\n 2117: {\n /* n:\"BrtDbCommand15\" */\n },\n 2118: {\n /* n:\"BrtBeginDbTables15\", */\n T: 1\n },\n 2119: {\n /* n:\"BrtEndDbTables15\", */\n T: -1\n },\n 2120: {\n /* n:\"BrtDbTable15\" */\n },\n 2121: {\n /* n:\"BrtBeginDataModel\", */\n T: 1\n },\n 2122: {\n /* n:\"BrtEndDataModel\", */\n T: -1\n },\n 2123: {\n /* n:\"BrtBeginModelTables\", */\n T: 1\n },\n 2124: {\n /* n:\"BrtEndModelTables\", */\n T: -1\n },\n 2125: {\n /* n:\"BrtModelTable\" */\n },\n 2126: {\n /* n:\"BrtBeginModelRelationships\", */\n T: 1\n },\n 2127: {\n /* n:\"BrtEndModelRelationships\", */\n T: -1\n },\n 2128: {\n /* n:\"BrtModelRelationship\" */\n },\n 2129: {\n /* n:\"BrtBeginECTxtWiz15\", */\n T: 1\n },\n 2130: {\n /* n:\"BrtEndECTxtWiz15\", */\n T: -1\n },\n 2131: {\n /* n:\"BrtBeginECTWFldInfoLst15\", */\n T: 1\n },\n 2132: {\n /* n:\"BrtEndECTWFldInfoLst15\", */\n T: -1\n },\n 2133: {\n /* n:\"BrtBeginECTWFldInfo15\", */\n T: 1\n },\n 2134: {\n /* n:\"BrtFieldListActiveItem\" */\n },\n 2135: {\n /* n:\"BrtPivotCacheIdVersion\" */\n },\n 2136: {\n /* n:\"BrtSXDI15\" */\n },\n 2137: {\n /* n:\"BrtBeginModelTimeGroupings\", */\n T: 1\n },\n 2138: {\n /* n:\"BrtEndModelTimeGroupings\", */\n T: -1\n },\n 2139: {\n /* n:\"BrtBeginModelTimeGrouping\", */\n T: 1\n },\n 2140: {\n /* n:\"BrtEndModelTimeGrouping\", */\n T: -1\n },\n 2141: {\n /* n:\"BrtModelTimeGroupingCalcCol\" */\n },\n 3072: {\n /* n:\"BrtUid\" */\n },\n 3073: {\n /* n:\"BrtRevisionPtr\" */\n },\n 4096: {\n /* n:\"BrtBeginDynamicArrayPr\", */\n T: 1\n },\n 4097: {\n /* n:\"BrtEndDynamicArrayPr\", */\n T: -1\n },\n 5002: {\n /* n:\"BrtBeginRichValueBlock\", */\n T: 1\n },\n 5003: {\n /* n:\"BrtEndRichValueBlock\", */\n T: -1\n },\n 5081: {\n /* n:\"BrtBeginRichFilters\", */\n T: 1\n },\n 5082: {\n /* n:\"BrtEndRichFilters\", */\n T: -1\n },\n 5083: {\n /* n:\"BrtRichFilter\" */\n },\n 5084: {\n /* n:\"BrtBeginRichFilterColumn\", */\n T: 1\n },\n 5085: {\n /* n:\"BrtEndRichFilterColumn\", */\n T: -1\n },\n 5086: {\n /* n:\"BrtBeginCustomRichFilters\", */\n T: 1\n },\n 5087: {\n /* n:\"BrtEndCustomRichFilters\", */\n T: -1\n },\n 5088: {\n /* n:\"BrtCustomRichFilter\" */\n },\n 5089: {\n /* n:\"BrtTop10RichFilter\" */\n },\n 5090: {\n /* n:\"BrtDynamicRichFilter\" */\n },\n 5092: {\n /* n:\"BrtBeginRichSortCondition\", */\n T: 1\n },\n 5093: {\n /* n:\"BrtEndRichSortCondition\", */\n T: -1\n },\n 5094: {\n /* n:\"BrtRichFilterDateGroupItem\" */\n },\n 5095: {\n /* n:\"BrtBeginCalcFeatures\", */\n T: 1\n },\n 5096: {\n /* n:\"BrtEndCalcFeatures\", */\n T: -1\n },\n 5097: {\n /* n:\"BrtCalcFeature\" */\n },\n 5099: {\n /* n:\"BrtExternalLinksPr\" */\n },\n 65535: { n: \"\" }\n}, ac = {\n /* [MS-XLS] 2.3 Record Enumeration 2021-08-17 */\n 6: {\n /* n:\"Formula\", */\n f: zf\n },\n 10: {\n /* n:\"EOF\", */\n f: Ka\n },\n 12: {\n /* n:\"CalcCount\", */\n f: Rr\n },\n //\n 13: {\n /* n:\"CalcMode\", */\n f: Rr\n },\n //\n 14: {\n /* n:\"CalcPrecision\", */\n f: br\n },\n //\n 15: {\n /* n:\"CalcRefMode\", */\n f: br\n },\n //\n 16: {\n /* n:\"CalcDelta\", */\n f: ut\n },\n //\n 17: {\n /* n:\"CalcIter\", */\n f: br\n },\n //\n 18: {\n /* n:\"Protect\", */\n f: br\n },\n 19: {\n /* n:\"Password\", */\n f: Rr\n },\n 20: {\n /* n:\"Header\", */\n f: Rl\n },\n 21: {\n /* n:\"Footer\", */\n f: Rl\n },\n 23: {\n /* n:\"ExternSheet\", */\n f: q1\n },\n 24: {\n /* n:\"Lbl\", */\n f: Ll\n },\n 25: {\n /* n:\"WinProtect\", */\n f: br\n },\n 26: {\n /* n:\"VerticalPageBreaks\", */\n },\n 27: {\n /* n:\"HorizontalPageBreaks\", */\n },\n 28: {\n /* n:\"Note\", */\n f: KE\n },\n 29: {\n /* n:\"Selection\", */\n },\n 34: {\n /* n:\"Date1904\", */\n f: br\n },\n 35: {\n /* n:\"ExternName\", */\n f: Nl\n },\n 38: {\n /* n:\"LeftMargin\", */\n f: ut\n },\n // *\n 39: {\n /* n:\"RightMargin\", */\n f: ut\n },\n // *\n 40: {\n /* n:\"TopMargin\", */\n f: ut\n },\n // *\n 41: {\n /* n:\"BottomMargin\", */\n f: ut\n },\n // *\n 42: {\n /* n:\"PrintRowCol\", */\n f: br\n },\n 43: {\n /* n:\"PrintGrid\", */\n f: br\n },\n 47: {\n /* n:\"FilePass\", */\n f: qT\n },\n 49: {\n /* n:\"Font\", */\n f: SE\n },\n 51: {\n /* n:\"PrintSize\", */\n f: Rr\n },\n 60: {\n /* n:\"Continue\", */\n },\n 61: {\n /* n:\"Window1\", */\n f: kE\n },\n 64: {\n /* n:\"Backup\", */\n f: br\n },\n 65: {\n /* n:\"Pane\", */\n f: FE\n },\n 66: {\n /* n:\"CodePage\", */\n f: Rr\n },\n 77: {\n /* n:\"Pls\", */\n },\n 80: {\n /* n:\"DCon\", */\n },\n 81: {\n /* n:\"DConRef\", */\n },\n 82: {\n /* n:\"DConName\", */\n },\n 85: {\n /* n:\"DefColWidth\", */\n f: Rr\n },\n 89: {\n /* n:\"XCT\", */\n },\n 90: {\n /* n:\"CRN\", */\n },\n 91: {\n /* n:\"FileSharing\", */\n },\n 92: {\n /* n:\"WriteAccess\", */\n f: vE\n },\n 93: {\n /* n:\"Obj\", */\n f: ZE\n },\n 94: {\n /* n:\"Uncalced\", */\n },\n 95: {\n /* n:\"CalcSaveRecalc\", */\n f: br\n },\n //\n 96: {\n /* n:\"Template\", */\n },\n 97: {\n /* n:\"Intl\", */\n },\n 99: {\n /* n:\"ObjProtect\", */\n f: br\n },\n 125: {\n /* n:\"ColInfo\", */\n f: Q1\n },\n 128: {\n /* n:\"Guts\", */\n f: UE\n },\n 129: {\n /* n:\"WsBool\", */\n f: pE\n },\n 130: {\n /* n:\"GridSet\", */\n f: Rr\n },\n 131: {\n /* n:\"HCenter\", */\n f: br\n },\n 132: {\n /* n:\"VCenter\", */\n f: br\n },\n 133: {\n /* n:\"BoundSheet8\", */\n f: gE\n },\n 134: {\n /* n:\"WriteProtect\", */\n },\n 140: {\n /* n:\"Country\", */\n f: rT\n },\n 141: {\n /* n:\"HideObj\", */\n f: Rr\n },\n 144: {\n /* n:\"Sort\", */\n },\n 146: {\n /* n:\"Palette\", */\n f: aT\n },\n 151: {\n /* n:\"Sync\", */\n },\n 152: {\n /* n:\"LPr\", */\n },\n 153: {\n /* n:\"DxGCol\", */\n },\n 154: {\n /* n:\"FnGroupName\", */\n },\n 155: {\n /* n:\"FilterMode\", */\n },\n 156: {\n /* n:\"BuiltInFnGroupCount\", */\n f: Rr\n },\n 157: {\n /* n:\"AutoFilterInfo\", */\n },\n 158: {\n /* n:\"AutoFilter\", */\n },\n 160: {\n /* n:\"Scl\", */\n f: cT\n },\n 161: {\n /* n:\"Setup\", */\n f: iT\n },\n 174: {\n /* n:\"ScenMan\", */\n },\n 175: {\n /* n:\"SCENARIO\", */\n },\n 176: {\n /* n:\"SxView\", */\n },\n 177: {\n /* n:\"Sxvd\", */\n },\n 178: {\n /* n:\"SXVI\", */\n },\n 180: {\n /* n:\"SxIvd\", */\n },\n 181: {\n /* n:\"SXLI\", */\n },\n 182: {\n /* n:\"SXPI\", */\n },\n 184: {\n /* n:\"DocRoute\", */\n },\n 185: {\n /* n:\"RecipName\", */\n },\n 189: {\n /* n:\"MulRk\", */\n f: RE\n },\n 190: {\n /* n:\"MulBlank\", */\n f: NE\n },\n 193: {\n /* n:\"Mms\", */\n f: Ka\n },\n 197: {\n /* n:\"SXDI\", */\n },\n 198: {\n /* n:\"SXDB\", */\n },\n 199: {\n /* n:\"SXFDB\", */\n },\n 200: {\n /* n:\"SXDBB\", */\n },\n 201: {\n /* n:\"SXNum\", */\n },\n 202: {\n /* n:\"SxBool\", */\n f: br\n },\n 203: {\n /* n:\"SxErr\", */\n },\n 204: {\n /* n:\"SXInt\", */\n },\n 205: {\n /* n:\"SXString\", */\n },\n 206: {\n /* n:\"SXDtr\", */\n },\n 207: {\n /* n:\"SxNil\", */\n },\n 208: {\n /* n:\"SXTbl\", */\n },\n 209: {\n /* n:\"SXTBRGIITM\", */\n },\n 210: {\n /* n:\"SxTbpg\", */\n },\n 211: {\n /* n:\"ObProj\", */\n },\n 213: {\n /* n:\"SXStreamID\", */\n },\n 215: {\n /* n:\"DBCell\", */\n },\n 216: {\n /* n:\"SXRng\", */\n },\n 217: {\n /* n:\"SxIsxoper\", */\n },\n 218: {\n /* n:\"BookBool\", */\n f: Rr\n },\n 220: {\n /* n:\"DbOrParamQry\", */\n },\n 221: {\n /* n:\"ScenarioProtect\", */\n f: br\n },\n 222: {\n /* n:\"OleObjectSize\", */\n },\n 224: {\n /* n:\"XF\", */\n f: PE\n },\n 225: {\n /* n:\"InterfaceHdr\", */\n f: dE\n },\n 226: {\n /* n:\"InterfaceEnd\", */\n f: Ka\n },\n 227: {\n /* n:\"SXVS\", */\n },\n 229: {\n /* n:\"MergeCells\", */\n f: YE\n },\n 233: {\n /* n:\"BkHim\", */\n },\n 235: {\n /* n:\"MsoDrawingGroup\", */\n },\n 236: {\n /* n:\"MsoDrawing\", */\n },\n 237: {\n /* n:\"MsoDrawingSelection\", */\n },\n 239: {\n /* n:\"PhoneticInfo\", */\n },\n 240: {\n /* n:\"SxRule\", */\n },\n 241: {\n /* n:\"SXEx\", */\n },\n 242: {\n /* n:\"SxFilt\", */\n },\n 244: {\n /* n:\"SxDXF\", */\n },\n 245: {\n /* n:\"SxItm\", */\n },\n 246: {\n /* n:\"SxName\", */\n },\n 247: {\n /* n:\"SxSelect\", */\n },\n 248: {\n /* n:\"SXPair\", */\n },\n 249: {\n /* n:\"SxFmla\", */\n },\n 251: {\n /* n:\"SxFormat\", */\n },\n 252: {\n /* n:\"SST\", */\n f: _E\n },\n 253: {\n /* n:\"LabelSst\", */\n f: CE\n },\n 255: {\n /* n:\"ExtSST\", */\n f: mE\n },\n 256: {\n /* n:\"SXVDEx\", */\n },\n 259: {\n /* n:\"SXFormula\", */\n },\n 290: {\n /* n:\"SXDBEx\", */\n },\n 311: {\n /* n:\"RRDInsDel\", */\n },\n 312: {\n /* n:\"RRDHead\", */\n },\n 315: {\n /* n:\"RRDChgCell\", */\n },\n 317: {\n /* n:\"RRTabId\", */\n f: X1\n },\n 318: {\n /* n:\"RRDRenSheet\", */\n },\n 319: {\n /* n:\"RRSort\", */\n },\n 320: {\n /* n:\"RRDMove\", */\n },\n 330: {\n /* n:\"RRFormat\", */\n },\n 331: {\n /* n:\"RRAutoFmt\", */\n },\n 333: {\n /* n:\"RRInsertSh\", */\n },\n 334: {\n /* n:\"RRDMoveBegin\", */\n },\n 335: {\n /* n:\"RRDMoveEnd\", */\n },\n 336: {\n /* n:\"RRDInsDelBegin\", */\n },\n 337: {\n /* n:\"RRDInsDelEnd\", */\n },\n 338: {\n /* n:\"RRDConflict\", */\n },\n 339: {\n /* n:\"RRDDefName\", */\n },\n 340: {\n /* n:\"RRDRstEtxp\", */\n },\n 351: {\n /* n:\"LRng\", */\n },\n 352: {\n /* n:\"UsesELFs\", */\n f: br\n },\n 353: {\n /* n:\"DSF\", */\n f: Ka\n },\n 401: {\n /* n:\"CUsr\", */\n },\n 402: {\n /* n:\"CbUsr\", */\n },\n 403: {\n /* n:\"UsrInfo\", */\n },\n 404: {\n /* n:\"UsrExcl\", */\n },\n 405: {\n /* n:\"FileLock\", */\n },\n 406: {\n /* n:\"RRDInfo\", */\n },\n 407: {\n /* n:\"BCUsrs\", */\n },\n 408: {\n /* n:\"UsrChk\", */\n },\n 425: {\n /* n:\"UserBView\", */\n },\n 426: {\n /* n:\"UserSViewBegin\", */\n },\n 427: {\n /* n:\"UserSViewEnd\", */\n },\n 428: {\n /* n:\"RRDUserView\", */\n },\n 429: {\n /* n:\"Qsi\", */\n },\n 430: {\n /* n:\"SupBook\", */\n f: GE\n },\n 431: {\n /* n:\"Prot4Rev\", */\n f: br\n },\n 432: {\n /* n:\"CondFmt\", */\n },\n 433: {\n /* n:\"CF\", */\n },\n 434: {\n /* n:\"DVal\", */\n },\n 437: {\n /* n:\"DConBin\", */\n },\n 438: {\n /* n:\"TxO\", */\n f: QE\n },\n 439: {\n /* n:\"RefreshAll\", */\n f: br\n },\n //\n 440: {\n /* n:\"HLink\", */\n f: jE\n },\n 441: {\n /* n:\"Lel\", */\n },\n 442: {\n /* n:\"CodeName\", */\n f: V0\n },\n 443: {\n /* n:\"SXFDBType\", */\n },\n 444: {\n /* n:\"Prot4RevPass\", */\n f: Rr\n },\n 445: {\n /* n:\"ObNoMacros\", */\n },\n 446: {\n /* n:\"Dv\", */\n },\n 448: {\n /* n:\"Excel9File\", */\n f: Ka\n },\n 449: {\n /* n:\"RecalcId\", */\n f: wE,\n r: 2\n },\n 450: {\n /* n:\"EntExU2\", */\n f: Ka\n },\n 512: {\n /* n:\"Dimensions\", */\n f: Dl\n },\n 513: {\n /* n:\"Blank\", */\n f: fT\n },\n 515: {\n /* n:\"Number\", */\n f: HE\n },\n 516: {\n /* n:\"Label\", */\n f: yE\n },\n 517: {\n /* n:\"BoolErr\", */\n f: WE\n },\n 519: {\n /* n:\"String\", */\n f: uT\n },\n 520: {\n /* n:\"Row\", */\n f: EE\n },\n 523: {\n /* n:\"Index\", */\n },\n 545: {\n /* n:\"Array\", */\n f: bl\n },\n 549: {\n /* n:\"DefaultRowHeight\", */\n f: Ol\n },\n 566: {\n /* n:\"Table\", */\n },\n 574: {\n /* n:\"Window2\", */\n f: AE\n },\n 638: {\n /* n:\"RK\", */\n f: DE\n },\n 659: {\n /* n:\"Style\", */\n },\n 1048: {\n /* n:\"BigName\", */\n },\n 1054: {\n /* n:\"Format\", */\n f: IE\n },\n 1084: {\n /* n:\"ContinueBigName\", */\n },\n 1212: {\n /* n:\"ShrFmla\", */\n f: XE\n },\n 2048: {\n /* n:\"HLinkTooltip\", */\n f: eT\n },\n 2049: {\n /* n:\"WebPub\", */\n },\n 2050: {\n /* n:\"QsiSXTag\", */\n },\n 2051: {\n /* n:\"DBQueryExt\", */\n },\n 2052: {\n /* n:\"ExtString\", */\n },\n 2053: {\n /* n:\"TxtQry\", */\n },\n 2054: {\n /* n:\"Qsir\", */\n },\n 2055: {\n /* n:\"Qsif\", */\n },\n 2056: {\n /* n:\"RRDTQSIF\", */\n },\n 2057: {\n /* n:\"BOF\", */\n f: Ki\n },\n 2058: {\n /* n:\"OleDbConn\", */\n },\n 2059: {\n /* n:\"WOpt\", */\n },\n 2060: {\n /* n:\"SXViewEx\", */\n },\n 2061: {\n /* n:\"SXTH\", */\n },\n 2062: {\n /* n:\"SXPIEx\", */\n },\n 2063: {\n /* n:\"SXVDTEx\", */\n },\n 2064: {\n /* n:\"SXViewEx9\", */\n },\n 2066: {\n /* n:\"ContinueFrt\", */\n },\n 2067: {\n /* n:\"RealTimeData\", */\n },\n 2128: {\n /* n:\"ChartFrtInfo\", */\n },\n 2129: {\n /* n:\"FrtWrapper\", */\n },\n 2130: {\n /* n:\"StartBlock\", */\n },\n 2131: {\n /* n:\"EndBlock\", */\n },\n 2132: {\n /* n:\"StartObject\", */\n },\n 2133: {\n /* n:\"EndObject\", */\n },\n 2134: {\n /* n:\"CatLab\", */\n },\n 2135: {\n /* n:\"YMult\", */\n },\n 2136: {\n /* n:\"SXViewLink\", */\n },\n 2137: {\n /* n:\"PivotChartBits\", */\n },\n 2138: {\n /* n:\"FrtFontList\", */\n },\n 2146: {\n /* n:\"SheetExt\", */\n },\n 2147: {\n /* n:\"BookExt\", */\n r: 12\n },\n 2148: {\n /* n:\"SXAddl\", */\n },\n 2149: {\n /* n:\"CrErr\", */\n },\n 2150: {\n /* n:\"HFPicture\", */\n },\n 2151: {\n /* n:\"FeatHdr\", */\n f: Ka\n },\n 2152: {\n /* n:\"Feat\", */\n },\n 2154: {\n /* n:\"DataLabExt\", */\n },\n 2155: {\n /* n:\"DataLabExtContents\", */\n },\n 2156: {\n /* n:\"CellWatch\", */\n },\n 2161: {\n /* n:\"FeatHdr11\", */\n },\n 2162: {\n /* n:\"Feature11\", */\n },\n 2164: {\n /* n:\"DropDownObjIds\", */\n },\n 2165: {\n /* n:\"ContinueFrt11\", */\n },\n 2166: {\n /* n:\"DConn\", */\n },\n 2167: {\n /* n:\"List12\", */\n },\n 2168: {\n /* n:\"Feature12\", */\n },\n 2169: {\n /* n:\"CondFmt12\", */\n },\n 2170: {\n /* n:\"CF12\", */\n },\n 2171: {\n /* n:\"CFEx\", */\n },\n 2172: {\n /* n:\"XFCRC\", */\n f: nT,\n r: 12\n },\n 2173: {\n /* n:\"XFExt\", */\n f: Iw,\n r: 12\n },\n 2174: {\n /* n:\"AutoFilter12\", */\n },\n 2175: {\n /* n:\"ContinueFrt12\", */\n },\n 2180: {\n /* n:\"MDTInfo\", */\n },\n 2181: {\n /* n:\"MDXStr\", */\n },\n 2182: {\n /* n:\"MDXTuple\", */\n },\n 2183: {\n /* n:\"MDXSet\", */\n },\n 2184: {\n /* n:\"MDXProp\", */\n },\n 2185: {\n /* n:\"MDXKPI\", */\n },\n 2186: {\n /* n:\"MDB\", */\n },\n 2187: {\n /* n:\"PLV\", */\n },\n 2188: {\n /* n:\"Compat12\", */\n f: br,\n r: 12\n },\n 2189: {\n /* n:\"DXF\", */\n },\n 2190: {\n /* n:\"TableStyles\", */\n r: 12\n },\n 2191: {\n /* n:\"TableStyle\", */\n },\n 2192: {\n /* n:\"TableStyleElement\", */\n },\n 2194: {\n /* n:\"StyleExt\", */\n },\n 2195: {\n /* n:\"NamePublish\", */\n },\n 2196: {\n /* n:\"NameCmt\", */\n f: VE,\n r: 12\n },\n 2197: {\n /* n:\"SortData\", */\n },\n 2198: {\n /* n:\"Theme\", */\n f: kw,\n r: 12\n },\n 2199: {\n /* n:\"GUIDTypeLib\", */\n },\n 2200: {\n /* n:\"FnGrp12\", */\n },\n 2201: {\n /* n:\"NameFnGrp12\", */\n },\n 2202: {\n /* n:\"MTRSettings\", */\n f: $E,\n r: 12\n },\n 2203: {\n /* n:\"CompressPictures\", */\n f: Ka\n },\n 2204: {\n /* n:\"HeaderFooter\", */\n },\n 2205: {\n /* n:\"CrtLayout12\", */\n },\n 2206: {\n /* n:\"CrtMlFrt\", */\n },\n 2207: {\n /* n:\"CrtMlFrtContinue\", */\n },\n 2211: {\n /* n:\"ForceFullCalculation\", */\n f: TE\n },\n 2212: {\n /* n:\"ShapePropsStream\", */\n },\n 2213: {\n /* n:\"TextPropsStream\", */\n },\n 2214: {\n /* n:\"RichTextStream\", */\n },\n 2215: {\n /* n:\"CrtLayout12A\", */\n },\n 4097: {\n /* n:\"Units\", */\n },\n 4098: {\n /* n:\"Chart\", */\n },\n 4099: {\n /* n:\"Series\", */\n },\n 4102: {\n /* n:\"DataFormat\", */\n },\n 4103: {\n /* n:\"LineFormat\", */\n },\n 4105: {\n /* n:\"MarkerFormat\", */\n },\n 4106: {\n /* n:\"AreaFormat\", */\n },\n 4107: {\n /* n:\"PieFormat\", */\n },\n 4108: {\n /* n:\"AttachedLabel\", */\n },\n 4109: {\n /* n:\"SeriesText\", */\n },\n 4116: {\n /* n:\"ChartFormat\", */\n },\n 4117: {\n /* n:\"Legend\", */\n },\n 4118: {\n /* n:\"SeriesList\", */\n },\n 4119: {\n /* n:\"Bar\", */\n },\n 4120: {\n /* n:\"Line\", */\n },\n 4121: {\n /* n:\"Pie\", */\n },\n 4122: {\n /* n:\"Area\", */\n },\n 4123: {\n /* n:\"Scatter\", */\n },\n 4124: {\n /* n:\"CrtLine\", */\n },\n 4125: {\n /* n:\"Axis\", */\n },\n 4126: {\n /* n:\"Tick\", */\n },\n 4127: {\n /* n:\"ValueRange\", */\n },\n 4128: {\n /* n:\"CatSerRange\", */\n },\n 4129: {\n /* n:\"AxisLine\", */\n },\n 4130: {\n /* n:\"CrtLink\", */\n },\n 4132: {\n /* n:\"DefaultText\", */\n },\n 4133: {\n /* n:\"Text\", */\n },\n 4134: {\n /* n:\"FontX\", */\n f: Rr\n },\n 4135: {\n /* n:\"ObjectLink\", */\n },\n 4146: {\n /* n:\"Frame\", */\n },\n 4147: {\n /* n:\"Begin\", */\n },\n 4148: {\n /* n:\"End\", */\n },\n 4149: {\n /* n:\"PlotArea\", */\n },\n 4154: {\n /* n:\"Chart3d\", */\n },\n 4156: {\n /* n:\"PicF\", */\n },\n 4157: {\n /* n:\"DropBar\", */\n },\n 4158: {\n /* n:\"Radar\", */\n },\n 4159: {\n /* n:\"Surf\", */\n },\n 4160: {\n /* n:\"RadarArea\", */\n },\n 4161: {\n /* n:\"AxisParent\", */\n },\n 4163: {\n /* n:\"LegendException\", */\n },\n 4164: {\n /* n:\"ShtProps\", */\n f: sT\n },\n 4165: {\n /* n:\"SerToCrt\", */\n },\n 4166: {\n /* n:\"AxesUsed\", */\n },\n 4168: {\n /* n:\"SBaseRef\", */\n },\n 4170: {\n /* n:\"SerParent\", */\n },\n 4171: {\n /* n:\"SerAuxTrend\", */\n },\n 4174: {\n /* n:\"IFmtRecord\", */\n },\n 4175: {\n /* n:\"Pos\", */\n },\n 4176: {\n /* n:\"AlRuns\", */\n },\n 4177: {\n /* n:\"BRAI\", */\n },\n 4187: {\n /* n:\"SerAuxErrBar\", */\n },\n 4188: {\n /* n:\"ClrtClient\", */\n f: tT\n },\n 4189: {\n /* n:\"SerFmt\", */\n },\n 4191: {\n /* n:\"Chart3DBarShape\", */\n },\n 4192: {\n /* n:\"Fbi\", */\n },\n 4193: {\n /* n:\"BopPop\", */\n },\n 4194: {\n /* n:\"AxcExt\", */\n },\n 4195: {\n /* n:\"Dat\", */\n },\n 4196: {\n /* n:\"PlotGrowth\", */\n },\n 4197: {\n /* n:\"SIIndex\", */\n },\n 4198: {\n /* n:\"GelFrame\", */\n },\n 4199: {\n /* n:\"BopPopCustom\", */\n },\n 4200: {\n /* n:\"Fbi2\", */\n },\n 0: {\n /* n:\"Dimensions\", */\n f: Dl\n },\n 1: {\n /* n:\"BIFF2BLANK\", */\n },\n 2: {\n /* n:\"BIFF2INT\", */\n f: xT\n },\n 3: {\n /* n:\"BIFF2NUM\", */\n f: hT\n },\n 4: {\n /* n:\"BIFF2STR\", */\n f: lT\n },\n 5: {\n /* n:\"BIFF2BOOLERR\", */\n f: vT\n },\n 7: {\n /* n:\"String\", */\n f: dT\n },\n 8: {\n /* n:\"BIFF2ROW\", */\n },\n 9: {\n /* n:\"BOF\", */\n f: Ki\n },\n 11: {\n /* n:\"Index\", */\n },\n 22: {\n /* n:\"ExternCount\", */\n f: Rr\n },\n 30: {\n /* n:\"BIFF2FORMAT\", */\n f: OE\n },\n 31: {\n /* n:\"BIFF2FMTCNT\", */\n },\n /* 16-bit cnt of BIFF2FORMAT records */\n 32: {\n /* n:\"BIFF2COLINFO\", */\n },\n 33: {\n /* n:\"Array\", */\n f: bl\n },\n 36: {\n /* n:\"COLWIDTH\", */\n },\n 37: {\n /* n:\"DefaultRowHeight\", */\n f: Ol\n },\n // 0x002c ??\n // 0x002d ??\n // 0x002e ??\n // 0x0030 FONTCOUNT: number of fonts\n 50: {\n /* n:\"BIFF2FONTXTRA\", */\n f: pT\n },\n // 0x0035: INFOOPTS\n // 0x0036: TABLE (BIFF2 only)\n // 0x0037: TABLE2 (BIFF2 only)\n // 0x0038: WNDESK\n // 0x0039 ??\n // 0x003a: BEGINPREF\n // 0x003b: ENDPREF\n 62: {\n /* n:\"BIFF2WINDOW2\", */\n },\n // 0x003f ??\n // 0x0046: SHOWSCROLL\n // 0x0047: SHOWFORMULA\n // 0x0048: STATUSBAR\n // 0x0049: SHORTMENUS\n // 0x004A:\n // 0x004B:\n // 0x004C:\n // 0x004E:\n // 0x004F:\n // 0x0058: TOOLBAR (BIFF3)\n /* - - - */\n 52: {\n /* n:\"DDEObjName\", */\n },\n 67: {\n /* n:\"BIFF2XF\", */\n f: bE\n },\n 68: {\n /* n:\"BIFF2XFINDEX\", */\n f: Rr\n },\n 69: {\n /* n:\"BIFF2FONTCLR\", */\n },\n 86: {\n /* n:\"BIFF4FMTCNT\", */\n },\n /* 16-bit cnt, similar to BIFF2 */\n 126: {\n /* n:\"RK\", */\n },\n /* Not necessarily same as 0x027e */\n 127: {\n /* n:\"ImData\", */\n f: oT\n },\n 135: {\n /* n:\"Addin\", */\n },\n 136: {\n /* n:\"Edg\", */\n },\n 137: {\n /* n:\"Pub\", */\n },\n // 0x8A\n // 0x8B LH: alternate menu key flag (BIFF3/4)\n // 0x8E\n 143: {\n /* n:\"BIFF4SheetInfo\", */\n f: _T\n },\n 145: {\n /* n:\"Sub\", */\n },\n // 0x93 STYLE\n 148: {\n /* n:\"LHRecord\", */\n },\n 149: {\n /* n:\"LHNGraph\", */\n },\n 150: {\n /* n:\"Sound\", */\n },\n // 0xA2 FNPROTO: function prototypes (BIFF4)\n // 0xA3\n // 0xA8\n 169: {\n /* n:\"CoordList\", */\n },\n 171: {\n /* n:\"GCW\", */\n },\n 188: {\n /* n:\"ShrFmla\", */\n },\n /* Not necessarily same as 0x04bc */\n 191: {\n /* n:\"ToolbarHdr\", */\n },\n 192: {\n /* n:\"ToolbarEnd\", */\n },\n 194: {\n /* n:\"AddMenu\", */\n },\n 195: {\n /* n:\"DelMenu\", */\n },\n 214: {\n /* n:\"RString\", */\n f: gT\n },\n 223: {\n /* n:\"UDDesc\", */\n },\n 234: {\n /* n:\"TabIdConf\", */\n },\n 354: {\n /* n:\"XL5Modify\", */\n },\n 421: {\n /* n:\"FileSharing2\", */\n },\n 518: {\n /* n:\"Formula\", */\n f: zf\n },\n 521: {\n /* n:\"BOF\", */\n f: Ki\n },\n 536: {\n /* n:\"Lbl\", */\n f: Ll\n },\n 547: {\n /* n:\"ExternName\", */\n f: Nl\n },\n 561: {\n /* n:\"Font\", */\n },\n 579: {\n /* n:\"BIFF3XF\", */\n f: BE\n },\n 1030: {\n /* n:\"Formula\", */\n f: zf\n },\n 1033: {\n /* n:\"BOF\", */\n f: Ki\n },\n 1091: {\n /* n:\"BIFF4XF\", */\n f: ME\n },\n 2157: {\n /* n:\"FeatInfo\", */\n },\n 2163: {\n /* n:\"FeatInfo11\", */\n },\n 2177: {\n /* n:\"SXAddl12\", */\n },\n 2240: {\n /* n:\"AutoWebPub\", */\n },\n 2241: {\n /* n:\"ListObj\", */\n },\n 2242: {\n /* n:\"ListField\", */\n },\n 2243: {\n /* n:\"ListDV\", */\n },\n 2244: {\n /* n:\"ListCondFmt\", */\n },\n 2245: {\n /* n:\"ListCF\", */\n },\n 2246: {\n /* n:\"FMQry\", */\n },\n 2247: {\n /* n:\"FMSQry\", */\n },\n 2248: {\n /* n:\"PLV\", */\n },\n 2249: {\n /* n:\"LnExt\", */\n },\n 2250: {\n /* n:\"MkrExt\", */\n },\n 2251: {\n /* n:\"CrtCoopt\", */\n },\n 2262: {\n /* n:\"FRTArchId$\", */\n r: 12\n },\n /* --- multiplan 4 records --- */\n 101: {\n /* n:\"\", */\n },\n // one per window\n 102: {\n /* n:\"\", */\n },\n // calc settings\n 105: {\n /* n:\"\", */\n },\n // print header\n 106: {\n /* n:\"\", */\n },\n // print footer\n 107: {\n /* n:\"\", */\n },\n // print settings\n 109: {\n /* n:\"\", */\n },\n // one per window\n 112: {\n /* n:\"\", */\n },\n // includes default col width\n 114: {\n /* n:\"\", */\n },\n // includes selected cell\n 29282: {}\n};\nfunction Pt(e, t, r, n) {\n var i = t;\n if (!isNaN(i)) {\n var f = (r || []).length || 0, c = e.next(4);\n c.write_shift(2, i), c.write_shift(2, f), /*:: len != null &&*/\n f > 0 && N1(r) && e.push(r);\n }\n}\nfunction Yl(e, t) {\n var r = t || {}, n = r.dense != null ? r.dense : $_, i = {};\n n && (i[\"!data\"] = []), e = H0(e, \"<!--\", \"-->\");\n var f = e.match(/<table/i);\n if (!f) throw new Error(\"Invalid HTML: could not find <table>\");\n var c = e.match(/<\\/table/i), u = f.index, l = c && c.index || e.length, h = Nm(e.slice(u, l), /(:?<tr[^<>]*>)/i, \"<tr>\"), x = -1, m = 0, _ = 0, v = 0, T = { s: { r: 1e7, c: 1e7 }, e: { r: 0, c: 0 } }, A = [];\n for (u = 0; u < h.length; ++u) {\n var g = h[u].trim(), p = g.slice(0, 3).toLowerCase();\n if (p == \"<tr\") {\n if (++x, r.sheetRows && r.sheetRows <= x) {\n --x;\n break;\n }\n m = 0;\n continue;\n }\n if (!(p != \"<td\" && p != \"<th\")) {\n var y = g.split(/<\\/t[dh]>/i);\n for (l = 0; l < y.length; ++l) {\n var w = y[l].trim();\n if (w.match(/<t[dh]/i)) {\n for (var P = w, V = 0; P.charAt(0) == \"<\" && (V = P.indexOf(\">\")) > -1; ) P = P.slice(V + 1);\n for (var Z = 0; Z < A.length; ++Z) {\n var M = A[Z];\n M.s.c == m && M.s.r < x && x <= M.e.r && (m = M.e.c + 1, Z = -1);\n }\n var G = Ie(w.slice(0, w.indexOf(\">\")));\n v = G.colspan ? +G.colspan : 1, ((_ = +G.rowspan) > 1 || v > 1) && A.push({ s: { r: x, c: m }, e: { r: x + (_ || 1) - 1, c: m + v - 1 } });\n var U = G.t || G[\"data-t\"] || \"\";\n if (!P.length) {\n m += v;\n continue;\n }\n if (P = E1(P), T.s.r > x && (T.s.r = x), T.e.r < x && (T.e.r = x), T.s.c > m && (T.s.c = m), T.e.c < m && (T.e.c = m), !P.length) {\n m += v;\n continue;\n }\n var J = { t: \"s\", v: P };\n r.raw || !P.trim().length || U == \"s\" || (P === \"TRUE\" ? J = { t: \"b\", v: !0 } : P === \"FALSE\" ? J = { t: \"b\", v: !1 } : isNaN(Mt(P)) ? isNaN(P0(P).getDate()) ? P.charCodeAt(0) == 35 && rt[P] != null && (J.t = \"e\", J.w = P, J.v = rt[P]) : (J = { t: \"d\", v: at(P) }, r.UTC === !1 && (J.v = Tn(J.v)), r.cellDates || (J = { t: \"n\", v: Kr(J.v) }), J.z = r.dateNF || Xe[14]) : J = { t: \"n\", v: Mt(P) }), J.cellText !== !1 && (J.w = P), n ? (i[\"!data\"][x] || (i[\"!data\"][x] = []), i[\"!data\"][x][m] = J) : i[hr({ r: x, c: m })] = J, m += v;\n }\n }\n }\n }\n return i[\"!ref\"] = sr(T), A.length && (i[\"!merges\"] = A), i;\n}\nfunction fF(e, t, r, n) {\n for (var i = e[\"!merges\"] || [], f = [], c = {}, u = e[\"!data\"] != null, l = t.s.c; l <= t.e.c; ++l) {\n for (var h = 0, x = 0, m = 0; m < i.length; ++m)\n if (!(i[m].s.r > r || i[m].s.c > l) && !(i[m].e.r < r || i[m].e.c < l)) {\n if (i[m].s.r < r || i[m].s.c < l) {\n h = -1;\n break;\n }\n h = i[m].e.r - i[m].s.r + 1, x = i[m].e.c - i[m].s.c + 1;\n break;\n }\n if (!(h < 0)) {\n var _ = xr(l) + _r(r), v = u ? (e[\"!data\"][r] || [])[l] : e[_];\n v && v.t == \"n\" && v.v != null && !isFinite(v.v) && (isNaN(v.v) ? v = { t: \"e\", v: 36, w: Ct[36] } : v = { t: \"e\", v: 7, w: Ct[7] });\n var T = v && v.v != null && (v.h || w0(v.w || (Qa(v), v.w) || \"\")) || \"\";\n c = {}, h > 1 && (c.rowspan = h), x > 1 && (c.colspan = x), n.editable ? T = '<span contenteditable=\"true\">' + T + \"</span>\" : v && (c[\"data-t\"] = v && v.t || \"z\", v.v != null && (c[\"data-v\"] = w0(v.v instanceof Date ? v.v.toISOString() : v.v)), v.z != null && (c[\"data-z\"] = v.z), v.l && (v.l.Target || \"#\").charAt(0) != \"#\" && (T = '<a href=\"' + w0(v.l.Target) + '\">' + T + \"</a>\")), c.id = (n.id || \"sjs\") + \"-\" + _, f.push(qm(\"td\", T, c));\n }\n }\n var A = \"<tr>\";\n return A + f.join(\"\") + \"</tr>\";\n}\nvar cF = '<html><head><meta charset=\"utf-8\"/><title>SheetJS Table Export</title></head><body>', uF = \"</body></html>\";\nfunction oF(e, t) {\n var r = bm(e, \"table\");\n if (!r || r.length == 0) throw new Error(\"Invalid HTML: could not find <table>\");\n if (r.length == 1) {\n var n = rn(Yl(r[0], t), t);\n return n.bookType = \"html\", n;\n }\n var i = Cc();\n return r.forEach(function(f, c) {\n K0(i, Yl(f, t), \"Sheet\" + (c + 1));\n }), i.bookType = \"html\", i;\n}\nfunction lF(e, t, r) {\n var n = [];\n return n.join(\"\") + \"<table\" + (r && r.id ? ' id=\"' + r.id + '\"' : \"\") + \">\";\n}\nfunction hF(e, t) {\n var r = t || {}, n = r.header != null ? r.header : cF, i = r.footer != null ? r.footer : uF, f = [n], c = kn(e[\"!ref\"] || \"A1\");\n if (f.push(lF(e, c, r)), e[\"!ref\"]) for (var u = c.s.r; u <= c.e.r; ++u) f.push(fF(e, c, u, r));\n return f.push(\"</table>\" + i), f.join(\"\");\n}\nfunction kh(e, t, r) {\n var n = t.rows;\n if (!n)\n throw \"Unsupported origin when \" + t.tagName + \" is not a TABLE\";\n var i = r || {}, f = e[\"!data\"] != null, c = 0, u = 0;\n if (i.origin != null)\n if (typeof i.origin == \"number\") c = i.origin;\n else {\n var l = typeof i.origin == \"string\" ? ot(i.origin) : i.origin;\n c = l.r, u = l.c;\n }\n var h = Math.min(i.sheetRows || 1e7, n.length), x = { s: { r: 0, c: 0 }, e: { r: c, c: u } };\n if (e[\"!ref\"]) {\n var m = kn(e[\"!ref\"]);\n x.s.r = Math.min(x.s.r, m.s.r), x.s.c = Math.min(x.s.c, m.s.c), x.e.r = Math.max(x.e.r, m.e.r), x.e.c = Math.max(x.e.c, m.e.c), c == -1 && (x.e.r = c = m.e.r + 1);\n }\n var _ = [], v = 0, T = e[\"!rows\"] || (e[\"!rows\"] = []), A = 0, g = 0, p = 0, y = 0, w = 0, P = 0;\n for (e[\"!cols\"] || (e[\"!cols\"] = []); A < n.length && g < h; ++A) {\n var V = n[A];\n if (Zl(V)) {\n if (i.display) continue;\n T[g] = { hidden: !0 };\n }\n var Z = V.cells;\n for (p = y = 0; p < Z.length; ++p) {\n var M = Z[p];\n if (!(i.display && Zl(M))) {\n var G = M.hasAttribute(\"data-v\") ? M.getAttribute(\"data-v\") : M.hasAttribute(\"v\") ? M.getAttribute(\"v\") : E1(M.innerHTML), U = M.getAttribute(\"data-z\") || M.getAttribute(\"z\");\n for (v = 0; v < _.length; ++v) {\n var J = _[v];\n J.s.c == y + u && J.s.r < g + c && g + c <= J.e.r && (y = J.e.c + 1 - u, v = -1);\n }\n P = +M.getAttribute(\"colspan\") || 1, ((w = +M.getAttribute(\"rowspan\") || 1) > 1 || P > 1) && _.push({ s: { r: g + c, c: y + u }, e: { r: g + c + (w || 1) - 1, c: y + u + (P || 1) - 1 } });\n var z = { t: \"s\", v: G }, re = M.getAttribute(\"data-t\") || M.getAttribute(\"t\") || \"\";\n G != null && (G.length == 0 ? z.t = re || \"z\" : i.raw || G.trim().length == 0 || re == \"s\" || (re == \"e\" && Ct[+G] ? z = { t: \"e\", v: +G, w: Ct[+G] } : G === \"TRUE\" ? z = { t: \"b\", v: !0 } : G === \"FALSE\" ? z = { t: \"b\", v: !1 } : isNaN(Mt(G)) ? isNaN(P0(G).getDate()) ? G.charCodeAt(0) == 35 && rt[G] != null && (z = { t: \"e\", v: rt[G], w: G }) : (z = { t: \"d\", v: at(G) }, i.UTC && (z.v = hs(z.v)), i.cellDates || (z = { t: \"n\", v: Kr(z.v) }), z.z = i.dateNF || Xe[14]) : z = { t: \"n\", v: Mt(G) })), z.z === void 0 && U != null && (z.z = U);\n var ne = \"\", Ae = M.getElementsByTagName(\"A\");\n if (Ae && Ae.length) for (var he = 0; he < Ae.length && !(Ae[he].hasAttribute(\"href\") && (ne = Ae[he].getAttribute(\"href\"), ne.charAt(0) != \"#\")); ++he) ;\n ne && ne.charAt(0) != \"#\" && ne.slice(0, 11).toLowerCase() != \"javascript:\" && (z.l = { Target: ne }), f ? (e[\"!data\"][g + c] || (e[\"!data\"][g + c] = []), e[\"!data\"][g + c][y + u] = z) : e[hr({ c: y + u, r: g + c })] = z, x.e.c < y + u && (x.e.c = y + u), y += P;\n }\n }\n ++g;\n }\n return _.length && (e[\"!merges\"] = (e[\"!merges\"] || []).concat(_)), x.e.r = Math.max(x.e.r, g - 1 + c), e[\"!ref\"] = sr(x), g >= h && (e[\"!fullref\"] = sr((x.e.r = n.length - A + g - 1 + c, x))), e;\n}\nfunction Ah(e, t) {\n var r = t || {}, n = {};\n return r.dense && (n[\"!data\"] = []), kh(n, e, t);\n}\nfunction xF(e, t) {\n var r = rn(Ah(e, t), t);\n return r;\n}\nfunction Zl(e) {\n var t = \"\", r = dF(e);\n return r && (t = r(e).getPropertyValue(\"display\")), t || (t = e.style && e.style.display), t === \"none\";\n}\nfunction dF(e) {\n return e.ownerDocument.defaultView && typeof e.ownerDocument.defaultView.getComputedStyle == \"function\" ? e.ownerDocument.defaultView.getComputedStyle : typeof getComputedStyle == \"function\" ? getComputedStyle : null;\n}\nfunction vF(e) {\n var t = e.replace(/[\\t\\r\\n]/g, \" \").trim().replace(/ +/g, \" \").replace(/<text:s\\/>/g, \" \").replace(/<text:s text:c=\"(\\d+)\"\\/>/g, function(n, i) {\n return Array(parseInt(i, 10) + 1).join(\" \");\n }).replace(/<text:tab[^<>]*\\/>/g, \"\t\").replace(/<text:line-break\\/>/g, `\n`), r = ir(t.replace(/<[^<>]*>/g, \"\"));\n return [r];\n}\nfunction Fh(e, t, r) {\n var n = r || {}, i = xs(e);\n Wr.lastIndex = 0, i = lc(H0(i, \"<!--\", \"-->\"));\n for (var f, c, u = \"\", l = \"\", h, x = 0, m = -1, _ = \"\"; f = Wr.exec(i); )\n switch (f[3] = f[3].replace(/_[\\s\\S]*$/, \"\")) {\n /* Number Format Definitions */\n case \"number-style\":\n // <number:number-style> 16.29.2\n case \"currency-style\":\n // <number:currency-style> 16.29.8\n case \"percentage-style\":\n // <number:percentage-style> 16.29.10\n case \"date-style\":\n // <number:date-style> 16.29.11\n case \"time-style\":\n // <number:time-style> 16.29.19\n case \"text-style\":\n f[1] === \"/\" ? (c[\"truncate-on-overflow\"] == \"false\" && (u.match(/h/) ? u = u.replace(/h+/, \"[$&]\") : u.match(/m/) ? u = u.replace(/m+/, \"[$&]\") : u.match(/s/) && (u = u.replace(/s+/, \"[$&]\"))), n[c.name] = u, u = \"\") : f[0].charAt(f[0].length - 2) !== \"/\" && (u = \"\", c = Ie(f[0], !1));\n break;\n // LibreOffice bug https://bugs.documentfoundation.org/show_bug.cgi?id=149484\n case \"boolean-style\":\n f[1] === \"/\" ? (n[c.name] = \"General\", u = \"\") : f[0].charAt(f[0].length - 2) !== \"/\" && (u = \"\", c = Ie(f[0], !1));\n break;\n /* Number Format Elements */\n case \"boolean\":\n u += \"General\";\n break;\n case \"text\":\n f[1] === \"/\" ? (_ = i.slice(m, Wr.lastIndex - f[0].length), _ == \"%\" && c[0] == \"<number:percentage-style\" ? u += \"%\" : u += '\"' + _.replace(/\"/g, '\"\"') + '\"') : f[0].charAt(f[0].length - 2) !== \"/\" && (m = Wr.lastIndex);\n break;\n case \"day\":\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"d\";\n break;\n case \"long\":\n u += \"dd\";\n break;\n default:\n u += \"dd\";\n break;\n }\n break;\n case \"day-of-week\":\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"ddd\";\n break;\n case \"long\":\n u += \"dddd\";\n break;\n default:\n u += \"ddd\";\n break;\n }\n break;\n case \"era\":\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"ee\";\n break;\n case \"long\":\n u += \"eeee\";\n break;\n default:\n u += \"eeee\";\n break;\n }\n break;\n case \"hours\":\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"h\";\n break;\n case \"long\":\n u += \"hh\";\n break;\n default:\n u += \"hh\";\n break;\n }\n break;\n case \"minutes\":\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"m\";\n break;\n case \"long\":\n u += \"mm\";\n break;\n default:\n u += \"mm\";\n break;\n }\n break;\n case \"month\":\n switch (h = Ie(f[0], !1), h.textual && (u += \"mm\"), h.style) {\n case \"short\":\n u += \"m\";\n break;\n case \"long\":\n u += \"mm\";\n break;\n default:\n u += \"m\";\n break;\n }\n break;\n case \"seconds\":\n {\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"s\";\n break;\n case \"long\":\n u += \"ss\";\n break;\n default:\n u += \"ss\";\n break;\n }\n h[\"decimal-places\"] && (u += \".\" + ur(\"0\", +h[\"decimal-places\"]));\n }\n break;\n case \"year\":\n switch (h = Ie(f[0], !1), h.style) {\n case \"short\":\n u += \"yy\";\n break;\n case \"long\":\n u += \"yyyy\";\n break;\n default:\n u += \"yy\";\n break;\n }\n break;\n case \"am-pm\":\n u += \"AM/PM\";\n break;\n case \"week-of-year\":\n // <number:week-of-year> 16.29.17\n case \"quarter\":\n console.error(\"Excel does not support ODS format token \" + f[3]);\n break;\n case \"fill-character\":\n f[1] === \"/\" ? (_ = i.slice(m, Wr.lastIndex - f[0].length), u += '\"' + _.replace(/\"/g, '\"\"') + '\"*') : f[0].charAt(f[0].length - 2) !== \"/\" && (m = Wr.lastIndex);\n break;\n case \"scientific-number\":\n h = Ie(f[0], !1), u += \"0.\" + ur(\"0\", +h[\"min-decimal-places\"] || +h[\"decimal-places\"] || 2) + ur(\"?\", +h[\"decimal-places\"] - +h[\"min-decimal-places\"] || 0) + \"E\" + (gr(h[\"forced-exponent-sign\"]) ? \"+\" : \"\") + ur(\"0\", +h[\"min-exponent-digits\"] || 2);\n break;\n case \"fraction\":\n h = Ie(f[0], !1), +h[\"min-integer-digits\"] ? u += ur(\"0\", +h[\"min-integer-digits\"]) : u += \"#\", u += \" \", u += ur(\"?\", +h[\"min-numerator-digits\"] || 1), u += \"/\", +h[\"denominator-value\"] ? u += h[\"denominator-value\"] : u += ur(\"?\", +h[\"min-denominator-digits\"] || 1);\n break;\n case \"currency-symbol\":\n f[1] === \"/\" ? u += '\"' + i.slice(m, Wr.lastIndex - f[0].length).replace(/\"/g, '\"\"') + '\"' : f[0].charAt(f[0].length - 2) !== \"/\" ? m = Wr.lastIndex : u += \"$\";\n break;\n case \"text-properties\":\n switch (h = Ie(f[0], !1), (h.color || \"\").toLowerCase().replace(\"#\", \"\")) {\n case \"ff0000\":\n case \"red\":\n u = \"[Red]\" + u;\n break;\n }\n break;\n case \"text-content\":\n u += \"@\";\n break;\n case \"map\":\n h = Ie(f[0], !1), ir(h.condition) == \"value()>=0\" ? u = n[h[\"apply-style-name\"]] + \";\" + u : console.error(\"ODS number format may be incorrect: \" + h.condition);\n break;\n case \"number\":\n if (f[1] === \"/\") break;\n h = Ie(f[0], !1), l = \"\", l += ur(\"0\", +h[\"min-integer-digits\"] || 1), gr(h.grouping) && (l = Ia(ur(\"#\", Math.max(0, 4 - l.length)) + l)), (+h[\"min-decimal-places\"] || +h[\"decimal-places\"]) && (l += \".\"), +h[\"min-decimal-places\"] && (l += ur(\"0\", +h[\"min-decimal-places\"] || 1)), +h[\"decimal-places\"] - (+h[\"min-decimal-places\"] || 0) && (l += ur(\"0\", +h[\"decimal-places\"] - (+h[\"min-decimal-places\"] || 0))), u += l;\n break;\n case \"embedded-text\":\n f[1] === \"/\" ? x == 0 ? u += '\"' + i.slice(m, Wr.lastIndex - f[0].length).replace(/\"/g, '\"\"') + '\"' : u = u.slice(0, x) + '\"' + i.slice(m, Wr.lastIndex - f[0].length).replace(/\"/g, '\"\"') + '\"' + u.slice(x) : f[0].charAt(f[0].length - 2) !== \"/\" && (m = Wr.lastIndex, x = -+Ie(f[0], !1).position || 0);\n break;\n }\n return n;\n}\nfunction Sh(e, t, r) {\n var n = t || {}, i = xs(e), f = [], c, u, l, h = \"\", x = 0, m, _, v = {}, T = [], A = {};\n n.dense && (A[\"!data\"] = []);\n var g, p, y = { value: \"\" }, w = {}, P = \"\", V = 0, Z = \"\", M = 0, G = [], U = [], J = -1, z = -1, re = { s: { r: 1e6, c: 1e7 }, e: { r: 0, c: 0 } }, ne = 0, Ae = r || {}, he = {}, De = [], le = {}, Ee = 0, be = 0, ae = [], Pe = 1, Ge = 1, Le = [], Se = { Names: [], WBProps: {} }, Me = {}, Be = [\"\", \"\"], Ke = [], N = {}, K = \"\", H = 0, B = !1, fe = !1, O = 0;\n for (Wr.lastIndex = 0, i = lc(H0(i, \"<!--\", \"-->\")); g = Wr.exec(i); ) switch (g[3] = g[3].replace(/_[\\s\\S]*$/, \"\")) {\n case \"table\":\n case \"工作表\":\n g[1] === \"/\" ? (re.e.c >= re.s.c && re.e.r >= re.s.r ? A[\"!ref\"] = sr(re) : A[\"!ref\"] = \"A1:A1\", n.sheetRows > 0 && n.sheetRows <= re.e.r && (A[\"!fullref\"] = A[\"!ref\"], re.e.r = n.sheetRows - 1, A[\"!ref\"] = sr(re)), De.length && (A[\"!merges\"] = De), ae.length && (A[\"!rows\"] = ae), m.name = m.名称 || m.name, typeof JSON < \"u\" && JSON.stringify(m), T.push(m.name), v[m.name] = A, fe = !1) : g[0].charAt(g[0].length - 2) !== \"/\" && (m = Ie(g[0], !1), J = z = -1, re.s.r = re.s.c = 1e7, re.e.r = re.e.c = 0, A = {}, n.dense && (A[\"!data\"] = []), De = [], ae = [], fe = !0);\n break;\n case \"table-row-group\":\n g[1] === \"/\" ? --ne : ++ne;\n break;\n case \"table-row\":\n case \"行\":\n if (g[1] === \"/\") {\n J += Pe, Pe = 1;\n break;\n }\n if (_ = Ie(g[0], !1), _.行号 ? J = _.行号 - 1 : J == -1 && (J = 0), Pe = +_[\"number-rows-repeated\"] || 1, Pe < 10) for (O = 0; O < Pe; ++O) ne > 0 && (ae[J + O] = { level: ne });\n z = -1;\n break;\n case \"covered-table-cell\":\n if (g[1] !== \"/\")\n if (++z, y = Ie(g[0], !1), Ge = parseInt(y[\"number-columns-repeated\"] || \"1\", 10) || 1, n.sheetStubs) {\n for (; Ge-- > 0; )\n n.dense ? (A[\"!data\"][J] || (A[\"!data\"][J] = []), A[\"!data\"][J][z] = { t: \"z\" }) : A[hr({ r: J, c: z })] = { t: \"z\" }, ++z;\n --z;\n } else z += Ge - 1;\n P = \"\", G = [];\n break;\n /* stub */\n case \"table-cell\":\n case \"数据\":\n if (g[0].charAt(g[0].length - 2) === \"/\")\n ++z, y = Ie(g[0], !1), Ge = parseInt(y[\"number-columns-repeated\"] || \"1\", 10) || 1, p = {\n t: \"z\",\n v: null\n /*:: , z:null, w:\"\",c:[]*/\n }, y.formula && n.cellFormula != !1 && (p.f = Xl(ir(y.formula))), y[\"style-name\"] && he[y[\"style-name\"]] && (p.z = he[y[\"style-name\"]]), (y.数据类型 || y[\"value-type\"]) == \"string\" && (p.t = \"s\", p.v = ir(y[\"string-value\"] || \"\"), n.dense ? (A[\"!data\"][J] || (A[\"!data\"][J] = []), A[\"!data\"][J][z] = p) : A[xr(z) + _r(J)] = p), z += Ge - 1;\n else if (g[1] !== \"/\") {\n ++z, P = Z = \"\", V = M = 0, G = [], U = [], Ge = 1;\n var pe = Pe ? J + Pe - 1 : J;\n if (z > re.e.c && (re.e.c = z), z < re.s.c && (re.s.c = z), J < re.s.r && (re.s.r = J), pe > re.e.r && (re.e.r = pe), y = Ie(g[0], !1), w = Vm(g[0]), Ke = [], N = {}, p = {\n t: y.数据类型 || y[\"value-type\"],\n v: null\n /*:: , z:null, w:\"\",c:[]*/\n }, y[\"style-name\"] && he[y[\"style-name\"]] && (p.z = he[y[\"style-name\"]]), n.cellFormula)\n if (y.formula && (y.formula = ir(y.formula)), y[\"number-matrix-columns-spanned\"] && y[\"number-matrix-rows-spanned\"] && (Ee = parseInt(y[\"number-matrix-rows-spanned\"], 10) || 0, be = parseInt(y[\"number-matrix-columns-spanned\"], 10) || 0, le = { s: { r: J, c: z }, e: { r: J + Ee - 1, c: z + be - 1 } }, p.F = sr(le), Le.push([le, p.F])), y.formula) p.f = Xl(y.formula);\n else for (O = 0; O < Le.length; ++O)\n J >= Le[O][0].s.r && J <= Le[O][0].e.r && z >= Le[O][0].s.c && z <= Le[O][0].e.c && (p.F = Le[O][1]);\n switch ((y[\"number-columns-spanned\"] || y[\"number-rows-spanned\"]) && (Ee = parseInt(y[\"number-rows-spanned\"] || \"1\", 10) || 1, be = parseInt(y[\"number-columns-spanned\"] || \"1\", 10) || 1, Ee * be > 1 && (le = { s: { r: J, c: z }, e: { r: J + Ee - 1, c: z + be - 1 } }, De.push(le))), y[\"number-columns-repeated\"] && (Ge = parseInt(y[\"number-columns-repeated\"], 10)), p.t) {\n case \"boolean\":\n p.t = \"b\", p.v = gr(y[\"boolean-value\"]) || +y[\"boolean-value\"] >= 1;\n break;\n case \"float\":\n p.t = \"n\", p.v = parseFloat(y.value), n.cellDates && p.z && la(p.z) && (p.v = Ja(p.v + (Se.WBProps.date1904 ? 1462 : 0)), p.t = typeof p.v == \"number\" ? \"n\" : \"d\");\n break;\n case \"percentage\":\n p.t = \"n\", p.v = parseFloat(y.value);\n break;\n case \"currency\":\n p.t = \"n\", p.v = parseFloat(y.value);\n break;\n case \"date\":\n p.t = \"d\", p.v = at(y[\"date-value\"], Se.WBProps.date1904), n.cellDates || (p.t = \"n\", p.v = Kr(p.v, Se.WBProps.date1904)), p.z || (p.z = \"m/d/yy\");\n break;\n /* NOTE: for `time`, Excel ODS export incorrectly uses durations relative to 1900 epoch even if 1904 is specified */\n case \"time\":\n p.t = \"n\", p.v = km(y[\"time-value\"]) / 86400, n.cellDates && (p.v = Ja(p.v), p.t = typeof p.v == \"number\" ? \"n\" : \"d\"), p.z || (p.z = \"HH:MM:SS\");\n break;\n case \"number\":\n p.t = \"n\", p.v = parseFloat(y.数据数值);\n break;\n default:\n if (p.t === \"string\" || p.t === \"text\" || !p.t)\n p.t = \"s\", y[\"string-value\"] != null && (P = ir(y[\"string-value\"]), G = []);\n else throw new Error(\"Unsupported value type \" + p.t);\n }\n } else {\n if (B = !1, w[\"calcext:value-type\"] == \"error\" && rt[P] != null && (p.t = \"e\", p.w = P, p.v = rt[P]), p.t === \"s\" && (p.v = P || \"\", G.length && (p.R = G), B = V == 0), Me.Target && (p.l = Me), Ke.length > 0 && (p.c = Ke, Ke = []), P && n.cellText !== !1 && (p.w = P), B && (p.t = \"z\", delete p.v), (!B || n.sheetStubs) && !(n.sheetRows && n.sheetRows <= J))\n for (var Te = 0; Te < Pe; ++Te) {\n if (Ge = parseInt(y[\"number-columns-repeated\"] || \"1\", 10), n.dense)\n for (A[\"!data\"][J + Te] || (A[\"!data\"][J + Te] = []), A[\"!data\"][J + Te][z] = Te == 0 ? p : Gr(p); --Ge > 0; ) A[\"!data\"][J + Te][z + Ge] = Gr(p);\n else\n for (A[hr({ r: J + Te, c: z })] = p; --Ge > 0; ) A[hr({ r: J + Te, c: z + Ge })] = Gr(p);\n re.e.c <= z && (re.e.c = z);\n }\n Ge = parseInt(y[\"number-columns-repeated\"] || \"1\", 10), z += Ge - 1, Ge = 0, p = {\n /*:: t:\"\", v:null, z:null, w:\"\",c:[]*/\n }, P = \"\", G = [];\n }\n Me = {};\n break;\n // 9.1.4 <table:table-cell>\n /* pure state */\n case \"document\":\n // TODO: <office:document> is the root for FODS\n case \"document-content\":\n case \"电子表格文档\":\n // 3.1.3.2 <office:document-content>\n case \"spreadsheet\":\n case \"主体\":\n // 3.7 <office:spreadsheet>\n case \"scripts\":\n // 3.12 <office:scripts>\n case \"styles\":\n // TODO <office:styles>\n case \"font-face-decls\":\n // 3.14 <office:font-face-decls>\n case \"master-styles\":\n if (g[1] === \"/\") {\n if ((c = f.pop())[0] !== g[3]) throw \"Bad state: \" + c;\n } else g[0].charAt(g[0].length - 2) !== \"/\" && f.push([g[3], !0]);\n break;\n case \"annotation\":\n if (g[1] === \"/\") {\n if ((c = f.pop())[0] !== g[3]) throw \"Bad state: \" + c;\n N.t = P, G.length && (N.R = G), N.a = K, Ke.push(N), P = Z, V = M, G = U;\n } else if (g[0].charAt(g[0].length - 2) !== \"/\") {\n f.push([g[3], !1]);\n var ve = Ie(g[0], !0);\n ve.display && gr(ve.display) || (Ke.hidden = !0), Z = P, M = V, U = G, P = \"\", V = 0, G = [];\n }\n K = \"\", H = 0;\n break;\n case \"creator\":\n g[1] === \"/\" ? K = i.slice(H, g.index) : H = g.index + g[0].length;\n break;\n /* ignore state */\n case \"meta\":\n case \"元数据\":\n // TODO: <office:meta> <uof:元数据> FODS/UOF\n case \"settings\":\n // TODO: <office:settings>\n case \"config-item-set\":\n // TODO: <office:config-item-set>\n case \"config-item-map-indexed\":\n // TODO: <office:config-item-map-indexed>\n case \"config-item-map-entry\":\n // TODO: <office:config-item-map-entry>\n case \"config-item-map-named\":\n // TODO: <office:config-item-map-entry>\n case \"shapes\":\n // 9.2.8 <table:shapes>\n case \"frame\":\n // 10.4.2 <draw:frame>\n case \"text-box\":\n // 10.4.3 <draw:text-box>\n case \"image\":\n // 10.4.4 <draw:image>\n case \"data-pilot-tables\":\n // 9.6.2 <table:data-pilot-tables>\n case \"list-style\":\n // 16.30 <text:list-style>\n case \"form\":\n // 13.13 <form:form>\n case \"dde-links\":\n // 9.8 <table:dde-links>\n case \"event-listeners\":\n // TODO\n case \"chart\":\n if (g[1] === \"/\") {\n if ((c = f.pop())[0] !== g[3]) throw \"Bad state: \" + c;\n } else g[0].charAt(g[0].length - 2) !== \"/\" && f.push([g[3], !1]);\n P = \"\", V = 0, G = [];\n break;\n case \"scientific-number\":\n // <number:scientific-number>\n case \"currency-symbol\":\n // <number:currency-symbol>\n case \"fill-character\":\n break;\n case \"text-style\":\n // 16.27.25 <number:text-style>\n case \"boolean-style\":\n // 16.27.23 <number:boolean-style>\n case \"number-style\":\n // 16.27.2 <number:number-style>\n case \"currency-style\":\n // 16.29.8 <number:currency-style>\n case \"percentage-style\":\n // 16.27.9 <number:percentage-style>\n case \"date-style\":\n // 16.27.10 <number:date-style>\n case \"time-style\":\n if (g[1] === \"/\") {\n var Oe = Wr.lastIndex;\n Fh(i.slice(l, Wr.lastIndex), t, Ae), Wr.lastIndex = Oe;\n } else g[0].charAt(g[0].length - 2) !== \"/\" && (l = Wr.lastIndex - g[0].length);\n break;\n case \"script\":\n break;\n // 3.13 <office:script>\n case \"libraries\":\n break;\n // TODO: <ooo:libraries>\n case \"automatic-styles\":\n break;\n // 3.15.3 <office:automatic-styles>\n case \"default-style\":\n // TODO: <style:default-style>\n case \"page-layout\":\n break;\n // TODO: <style:page-layout>\n case \"style\":\n {\n var Re = Ie(g[0], !1);\n Re.family == \"table-cell\" && Ae[Re[\"data-style-name\"]] && (he[Re.name] = Ae[Re[\"data-style-name\"]]);\n }\n break;\n case \"map\":\n break;\n // 16.3 <style:map>\n case \"font-face\":\n break;\n // 16.21 <style:font-face>\n case \"paragraph-properties\":\n break;\n // 17.6 <style:paragraph-properties>\n case \"table-properties\":\n break;\n // 17.15 <style:table-properties>\n case \"table-column-properties\":\n break;\n // 17.16 <style:table-column-properties>\n case \"table-row-properties\":\n break;\n // 17.17 <style:table-row-properties>\n case \"table-cell-properties\":\n break;\n // 17.18 <style:table-cell-properties>\n case \"number\":\n break;\n case \"fraction\":\n break;\n // TODO 16.27.6 <number:fraction>\n case \"day\":\n // 16.27.11 <number:day>\n case \"month\":\n // 16.27.12 <number:month>\n case \"year\":\n // 16.27.13 <number:year>\n case \"era\":\n // 16.27.14 <number:era>\n case \"day-of-week\":\n // 16.27.15 <number:day-of-week>\n case \"week-of-year\":\n // 16.27.16 <number:week-of-year>\n case \"quarter\":\n // 16.27.17 <number:quarter>\n case \"hours\":\n // 16.27.19 <number:hours>\n case \"minutes\":\n // 16.27.20 <number:minutes>\n case \"seconds\":\n // 16.27.21 <number:seconds>\n case \"am-pm\":\n break;\n case \"boolean\":\n break;\n // 16.27.24 <number:boolean>\n case \"text\":\n if (g[0].slice(-2) === \"/>\") break;\n if (g[1] === \"/\") switch (f[f.length - 1][0]) {\n case \"number-style\":\n case \"date-style\":\n case \"time-style\":\n h += i.slice(x, g.index);\n break;\n }\n else x = g.index + g[0].length;\n break;\n case \"named-range\":\n u = Ie(g[0], !1), Be = Kf(u[\"cell-range-address\"]);\n var Ve = { Name: u.name, Ref: Be[0] + \"!\" + Be[1] };\n fe && (Ve.Sheet = T.length), Se.Names.push(Ve);\n break;\n case \"text-content\":\n break;\n // 16.27.27 <number:text-content>\n case \"text-properties\":\n break;\n // 16.27.27 <style:text-properties>\n case \"embedded-text\":\n break;\n // 16.27.4 <number:embedded-text>\n case \"body\":\n case \"电子表格\":\n break;\n // 3.3 16.9.6 19.726.3\n case \"forms\":\n break;\n // 12.25.2 13.2\n case \"table-column\":\n break;\n // 9.1.6 <table:table-column>\n case \"table-header-rows\":\n break;\n // 9.1.7 <table:table-header-rows>\n case \"table-rows\":\n break;\n // 9.1.12 <table:table-rows>\n /* TODO: outline levels */\n case \"table-column-group\":\n break;\n // 9.1.10 <table:table-column-group>\n case \"table-header-columns\":\n break;\n // 9.1.11 <table:table-header-columns>\n case \"table-columns\":\n break;\n // 9.1.12 <table:table-columns>\n case \"null-date\":\n switch (u = Ie(g[0], !1), u[\"date-value\"]) {\n case \"1904-01-01\":\n Se.WBProps.date1904 = !0;\n break;\n }\n break;\n case \"graphic-properties\":\n break;\n // 17.21 <style:graphic-properties>\n case \"calculation-settings\":\n break;\n // 9.4.1 <table:calculation-settings>\n case \"named-expressions\":\n break;\n // 9.4.11 <table:named-expressions>\n case \"label-range\":\n break;\n // 9.4.9 <table:label-range>\n case \"label-ranges\":\n break;\n // 9.4.10 <table:label-ranges>\n case \"named-expression\":\n break;\n // 9.4.13 <table:named-expression>\n case \"sort\":\n break;\n // 9.4.19 <table:sort>\n case \"sort-by\":\n break;\n // 9.4.20 <table:sort-by>\n case \"sort-groups\":\n break;\n // 9.4.22 <table:sort-groups>\n case \"tab\":\n break;\n // 6.1.4 <text:tab>\n case \"line-break\":\n break;\n // 6.1.5 <text:line-break>\n case \"span\":\n break;\n // 6.1.7 <text:span>\n case \"p\":\n case \"文本串\":\n if ([\"master-styles\"].indexOf(f[f.length - 1][0]) > -1) break;\n if (g[1] === \"/\" && (!y || !y[\"string-value\"])) {\n var ar = vF(i.slice(V, g.index));\n P = (P.length > 0 ? P + `\n` : \"\") + ar[0];\n } else g[0].slice(-2) == \"/>\" ? P += `\n` : (Ie(g[0], !1), V = g.index + g[0].length);\n break;\n // <text:p>\n case \"s\":\n break;\n // <text:s>\n case \"database-range\":\n if (g[1] === \"/\") break;\n try {\n Be = Kf(Ie(g[0])[\"target-range-address\"]), v[Be[0]][\"!autofilter\"] = { ref: Be[1] };\n } catch {\n }\n break;\n case \"date\":\n break;\n // <*:date>\n case \"object\":\n break;\n // 10.4.6.2 <draw:object>\n case \"title\":\n case \"标题\":\n break;\n // <*:title> OR <uof:标题>\n case \"desc\":\n break;\n // <*:desc>\n case \"binary-data\":\n break;\n // 10.4.5 TODO: b64 blob\n /* 9.2 Advanced Tables */\n case \"table-source\":\n break;\n // 9.2.6\n case \"scenario\":\n break;\n // 9.2.6\n case \"iteration\":\n break;\n // 9.4.3 <table:iteration>\n case \"content-validations\":\n break;\n // 9.4.4 <table:\n case \"content-validation\":\n break;\n // 9.4.5 <table:\n case \"help-message\":\n break;\n // 9.4.6 <table:\n case \"error-message\":\n break;\n // 9.4.7 <table:\n case \"database-ranges\":\n break;\n // 9.4.14 <table:database-ranges>\n /* 9.5 Filters */\n case \"filter\":\n break;\n // 9.5.2 <table:filter>\n case \"filter-and\":\n break;\n // 9.5.3 <table:filter-and>\n case \"filter-or\":\n break;\n // 9.5.4 <table:filter-or>\n case \"filter-condition\":\n break;\n // 9.5.5 <table:filter-condition>\n case \"filter-set-item\":\n break;\n // 9.5.6 <table:filter-condition>\n case \"list-level-style-bullet\":\n break;\n // 16.31 <text:\n case \"list-level-style-number\":\n break;\n // 16.32 <text:\n case \"list-level-properties\":\n break;\n // 17.19 <style:\n /* 7.3 Document Fields */\n case \"sender-firstname\":\n // 7.3.6.2\n case \"sender-lastname\":\n // 7.3.6.3\n case \"sender-initials\":\n // 7.3.6.4\n case \"sender-title\":\n // 7.3.6.5\n case \"sender-position\":\n // 7.3.6.6\n case \"sender-email\":\n // 7.3.6.7\n case \"sender-phone-private\":\n // 7.3.6.8\n case \"sender-fax\":\n // 7.3.6.9\n case \"sender-company\":\n // 7.3.6.10\n case \"sender-phone-work\":\n // 7.3.6.11\n case \"sender-street\":\n // 7.3.6.12\n case \"sender-city\":\n // 7.3.6.13\n case \"sender-postal-code\":\n // 7.3.6.14\n case \"sender-country\":\n // 7.3.6.15\n case \"sender-state-or-province\":\n // 7.3.6.16\n case \"author-name\":\n // 7.3.7.1\n case \"author-initials\":\n // 7.3.7.2\n case \"chapter\":\n // 7.3.8\n case \"file-name\":\n // 7.3.9\n case \"template-name\":\n // 7.3.9\n case \"sheet-name\":\n break;\n case \"event-listener\":\n break;\n /* TODO: FODS Properties */\n case \"initial-creator\":\n case \"creation-date\":\n case \"print-date\":\n case \"generator\":\n case \"document-statistic\":\n case \"user-defined\":\n case \"editing-duration\":\n case \"editing-cycles\":\n break;\n /* TODO: FODS Config */\n case \"config-item\":\n break;\n /* TODO: style tokens */\n case \"page-number\":\n break;\n // TODO <text:page-number>\n case \"page-count\":\n break;\n // TODO <text:page-count>\n case \"time\":\n break;\n // TODO <text:time>\n /* 9.3 Advanced Table Cells */\n case \"cell-range-source\":\n break;\n // 9.3.1 <table:\n case \"detective\":\n break;\n // 9.3.2 <table:\n case \"operation\":\n break;\n // 9.3.3 <table:\n case \"highlighted-range\":\n break;\n // 9.3.4 <table:\n /* 9.6 Data Pilot Tables <table: */\n case \"data-pilot-table\":\n // 9.6.3\n case \"source-cell-range\":\n // 9.6.5\n case \"source-service\":\n // 9.6.6\n case \"data-pilot-field\":\n // 9.6.7\n case \"data-pilot-level\":\n // 9.6.8\n case \"data-pilot-subtotals\":\n // 9.6.9\n case \"data-pilot-subtotal\":\n // 9.6.10\n case \"data-pilot-members\":\n // 9.6.11\n case \"data-pilot-member\":\n // 9.6.12\n case \"data-pilot-display-info\":\n // 9.6.13\n case \"data-pilot-sort-info\":\n // 9.6.14\n case \"data-pilot-layout-info\":\n // 9.6.15\n case \"data-pilot-field-reference\":\n // 9.6.16\n case \"data-pilot-groups\":\n // 9.6.17\n case \"data-pilot-group\":\n // 9.6.18\n case \"data-pilot-group-member\":\n break;\n /* 10.3 Drawing Shapes */\n case \"rect\":\n break;\n /* 14.6 DDE Connections */\n case \"dde-connection-decls\":\n // 14.6.2 <text:\n case \"dde-connection-decl\":\n // 14.6.3 <text:\n case \"dde-link\":\n // 14.6.4 <table:\n case \"dde-source\":\n break;\n case \"properties\":\n break;\n // 13.7 <form:properties>\n case \"property\":\n break;\n // 13.8 <form:property>\n case \"a\":\n if (g[1] !== \"/\") {\n if (Me = Ie(g[0], !1), !Me.href) break;\n Me.Target = ir(Me.href), delete Me.href, Me.Target.charAt(0) == \"#\" && Me.Target.indexOf(\".\") > -1 ? (Be = Kf(Me.Target.slice(1)), Me.Target = \"#\" + Be[0] + \"!\" + Be[1]) : Me.Target.match(/^\\.\\.[\\\\\\/]/) && (Me.Target = Me.Target.slice(3));\n }\n break;\n /* non-standard */\n case \"table-protection\":\n break;\n case \"data-pilot-grand-total\":\n break;\n // <table:\n case \"office-document-common-attrs\":\n break;\n // bare\n default:\n switch (g[2]) {\n case \"dc:\":\n // TODO: properties\n case \"calcext:\":\n // ignore undocumented extensions\n case \"loext:\":\n // ignore undocumented extensions\n case \"ooo:\":\n // ignore undocumented extensions\n case \"chartooo:\":\n // ignore undocumented extensions\n case \"draw:\":\n // TODO: drawing\n case \"style:\":\n // TODO: styles\n case \"chart:\":\n // TODO: charts\n case \"form:\":\n // TODO: forms\n case \"uof:\":\n // TODO: uof\n case \"表:\":\n // TODO: uof\n case \"字:\":\n break;\n default:\n if (n.WTF) throw new Error(g);\n }\n }\n var qe = {\n Sheets: v,\n SheetNames: T,\n Workbook: Se\n };\n return n.bookSheets && delete /*::(*/\n qe.Sheets, qe;\n}\nfunction Jl(e, t) {\n t = t || {}, qt(e, \"META-INF/manifest.xml\") && B4(Ur(e, \"META-INF/manifest.xml\"), t);\n var r = Et(e, \"styles.xml\"), n = r && Fh(Tr(r)), i = Et(e, \"content.xml\");\n if (!i) throw new Error(\"Missing content.xml in ODS / UOF file\");\n var f = Sh(Tr(i), t, n);\n return qt(e, \"meta.xml\") && (f.Props = W1(Ur(e, \"meta.xml\"))), f.bookType = \"ods\", f;\n}\nfunction ql(e, t) {\n var r = Sh(e, t);\n return r.bookType = \"fods\", r;\n}\n/*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com */\nvar tt = function() {\n try {\n return typeof Uint8Array > \"u\" || typeof Uint8Array.prototype.subarray > \"u\" ? \"slice\" : typeof Buffer < \"u\" ? typeof Buffer.prototype.subarray > \"u\" ? \"slice\" : (typeof Buffer.from == \"function\" ? Buffer.from([72, 62]) : new Buffer([72, 62])) instanceof Uint8Array ? \"subarray\" : \"slice\" : \"subarray\";\n } catch {\n return \"slice\";\n }\n}();\nfunction U0(e) {\n return new DataView(e.buffer, e.byteOffset, e.byteLength);\n}\nfunction Yn(e) {\n return typeof TextDecoder < \"u\" ? new TextDecoder().decode(e) : Tr(Na(e));\n}\nfunction Ch(e) {\n for (var t = 0, r = 0; r < e.length; ++r)\n t += e[r].length;\n var n = new Uint8Array(t), i = 0;\n for (r = 0; r < e.length; ++r) {\n var f = e[r], c = f.length;\n if (c < 250)\n for (var u = 0; u < c; ++u)\n n[i++] = f[u];\n else\n n.set(f, i), i += c;\n }\n return n;\n}\nfunction R0(e) {\n return e -= e >> 1 & 1431655765, e = (e & 858993459) + (e >> 2 & 858993459), (e + (e >> 4) & 252645135) * 16843009 >>> 24;\n}\nfunction pF(e, t) {\n for (var r = (e[t + 15] & 127) << 7 | e[t + 14] >> 1, n = e[t + 14] & 1, i = t + 13; i >= t; --i)\n n = n * 256 + e[i];\n return (e[t + 15] & 128 ? -n : n) * Math.pow(10, r - 6176);\n}\nfunction ls(e, t) {\n var r = t.l, n = e[r] & 127;\n e:\n if (e[r++] >= 128 && (n |= (e[r] & 127) << 7, e[r++] < 128 || (n |= (e[r] & 127) << 14, e[r++] < 128) || (n |= (e[r] & 127) << 21, e[r++] < 128) || (n += (e[r] & 127) * Math.pow(2, 28), ++r, e[r++] < 128) || (n += (e[r] & 127) * Math.pow(2, 35), ++r, e[r++] < 128) || (n += (e[r] & 127) * Math.pow(2, 42), ++r, e[r++] < 128)))\n break e;\n return t.l = r, n;\n}\nfunction lr(e) {\n var t = 0, r = e[t] & 127;\n return e[t++] < 128 || (r |= (e[t] & 127) << 7, e[t++] < 128) || (r |= (e[t] & 127) << 14, e[t++] < 128) || (r |= (e[t] & 127) << 21, e[t++] < 128) || (r |= (e[t] & 15) << 28), r;\n}\nfunction je(e) {\n for (var t = [], r = { l: 0 }; r.l < e.length; ) {\n var n = r.l, i = ls(e, r), f = i & 7;\n i = i / 8 | 0;\n var c, u = r.l;\n switch (f) {\n case 0:\n {\n for (; e[u++] >= 128; )\n ;\n c = e[tt](r.l, u), r.l = u;\n }\n break;\n case 1:\n c = e[tt](u, u + 8), r.l = u + 8;\n break;\n case 2:\n {\n var l = ls(e, r);\n c = e[tt](r.l, r.l + l), r.l += l;\n }\n break;\n case 5:\n c = e[tt](u, u + 4), r.l = u + 4;\n break;\n default:\n throw new Error(\"PB Type \".concat(f, \" for Field \").concat(i, \" at offset \").concat(n));\n }\n var h = { data: c, type: f };\n t[i] == null && (t[i] = []), t[i].push(h);\n }\n return t;\n}\nfunction ms(e, t) {\n return (e == null ? void 0 : e.map(function(r) {\n return t(r.data);\n })) || [];\n}\nfunction gF(e) {\n for (var t, r = [], n = { l: 0 }; n.l < e.length; ) {\n var i = ls(e, n), f = je(e[tt](n.l, n.l + i));\n n.l += i;\n var c = {\n id: lr(f[1][0].data),\n messages: []\n };\n f[2].forEach(function(u) {\n var l = je(u.data), h = lr(l[3][0].data);\n c.messages.push({\n meta: l,\n data: e[tt](n.l, n.l + h)\n }), n.l += h;\n }), (t = f[3]) != null && t[0] && (c.merge = lr(f[3][0].data) >>> 0 > 0), r.push(c);\n }\n return r;\n}\nfunction _F(e, t) {\n if (e != 0)\n throw new Error(\"Unexpected Snappy chunk type \".concat(e));\n for (var r = { l: 0 }, n = ls(t, r), i = [], f = r.l; f < t.length; ) {\n var c = t[f] & 3;\n if (c == 0) {\n var u = t[f++] >> 2;\n if (u < 60)\n ++u;\n else {\n var l = u - 59;\n u = t[f], l > 1 && (u |= t[f + 1] << 8), l > 2 && (u |= t[f + 2] << 16), l > 3 && (u |= t[f + 3] << 24), u >>>= 0, u++, f += l;\n }\n i.push(t[tt](f, f + u)), f += u;\n continue;\n } else {\n var h = 0, x = 0;\n if (c == 1 ? (x = (t[f] >> 2 & 7) + 4, h = (t[f++] & 224) << 3, h |= t[f++]) : (x = (t[f++] >> 2) + 1, c == 2 ? (h = t[f] | t[f + 1] << 8, f += 2) : (h = (t[f] | t[f + 1] << 8 | t[f + 2] << 16 | t[f + 3] << 24) >>> 0, f += 4)), h == 0)\n throw new Error(\"Invalid offset 0\");\n for (var m = i.length - 1, _ = h; m >= 0 && _ >= i[m].length; )\n _ -= i[m].length, --m;\n if (m < 0)\n if (_ == 0)\n _ = i[m = 0].length;\n else\n throw new Error(\"Invalid offset beyond length\");\n if (x < _)\n i.push(i[m][tt](i[m].length - _, i[m].length - _ + x));\n else {\n for (_ > 0 && (i.push(i[m][tt](i[m].length - _)), x -= _), ++m; x >= i[m].length; )\n i.push(i[m]), x -= i[m].length, ++m;\n x && i.push(i[m][tt](0, x));\n }\n i.length > 25 && (i = [Ch(i)]);\n }\n }\n for (var v = 0, T = 0; T < i.length; ++T)\n v += i[T].length;\n if (v != n)\n throw new Error(\"Unexpected length: \".concat(v, \" != \").concat(n));\n return i;\n}\nfunction mF(e) {\n Array.isArray(e) && (e = new Uint8Array(e));\n for (var t = [], r = 0; r < e.length; ) {\n var n = e[r++], i = e[r] | e[r + 1] << 8 | e[r + 2] << 16;\n r += 3, t.push.apply(t, _F(n, e[tt](r, r + i))), r += i;\n }\n if (r !== e.length)\n throw new Error(\"data is not a valid framed stream!\");\n return t.length == 1 ? t[0] : Ch(t);\n}\nvar EF = function() {\n return { sst: [], rsst: [], ofmt: [], nfmt: [], fmla: [], ferr: [], cmnt: [] };\n};\nfunction yh(e, t, r, n, i) {\n var f, c, u, l, h = t & 255, x = t >> 8, m = x >= 5 ? i : n;\n e:\n if (r & (x > 4 ? 8 : 4) && e.t == \"n\" && h == 7) {\n var _ = (f = m[7]) != null && f[0] ? lr(m[7][0].data) : -1;\n if (_ == -1)\n break e;\n var v = (c = m[15]) != null && c[0] ? lr(m[15][0].data) : -1, T = (u = m[16]) != null && u[0] ? lr(m[16][0].data) : -1, A = (l = m[40]) != null && l[0] ? lr(m[40][0].data) : -1, g = e.v, p = g;\n r:\n if (A) {\n if (g == 0) {\n v = T = 2;\n break r;\n }\n g >= 604800 ? v = 1 : g >= 86400 ? v = 2 : g >= 3600 ? v = 4 : g >= 60 ? v = 8 : g >= 1 ? v = 16 : v = 32, Math.floor(g) != g ? T = 32 : g % 60 ? T = 16 : g % 3600 ? T = 8 : g % 86400 ? T = 4 : g % 604800 && (T = 2), T < v && (T = v);\n }\n if (v == -1 || T == -1)\n break e;\n var y = [], w = [];\n v == 1 && (p = g / 604800, T == 1 ? w.push('d\"d\"') : (p |= 0, g -= 604800 * p), y.push(p + (_ == 2 ? \" week\" + (p == 1 ? \"\" : \"s\") : _ == 1 ? \"w\" : \"\"))), v <= 2 && T >= 2 && (p = g / 86400, T > 2 && (p |= 0, g -= 86400 * p), w.push('d\"d\"'), y.push(p + (_ == 2 ? \" day\" + (p == 1 ? \"\" : \"s\") : _ == 1 ? \"d\" : \"\"))), v <= 4 && T >= 4 && (p = g / 3600, T > 4 && (p |= 0, g -= 3600 * p), w.push((v >= 4 ? \"[h]\" : \"h\") + '\"h\"'), y.push(p + (_ == 2 ? \" hour\" + (p == 1 ? \"\" : \"s\") : _ == 1 ? \"h\" : \"\"))), v <= 8 && T >= 8 && (p = g / 60, T > 8 && (p |= 0, g -= 60 * p), w.push((v >= 8 ? \"[m]\" : \"m\") + '\"m\"'), _ == 0 ? y.push((v == 8 && T == 8 || p >= 10 ? \"\" : \"0\") + p) : y.push(p + (_ == 2 ? \" minute\" + (p == 1 ? \"\" : \"s\") : _ == 1 ? \"m\" : \"\"))), v <= 16 && T >= 16 && (p = g, T > 16 && (p |= 0, g -= p), w.push((v >= 16 ? \"[s]\" : \"s\") + '\"s\"'), _ == 0 ? y.push((T == 16 && v == 16 || p >= 10 ? \"\" : \"0\") + p) : y.push(p + (_ == 2 ? \" second\" + (p == 1 ? \"\" : \"s\") : _ == 1 ? \"s\" : \"\"))), T >= 32 && (p = Math.round(1e3 * g), v < 32 && w.push('.000\"ms\"'), _ == 0 ? y.push((p >= 100 ? \"\" : p >= 10 ? \"0\" : \"00\") + p) : y.push(p + (_ == 2 ? \" millisecond\" + (p == 1 ? \"\" : \"s\") : _ == 1 ? \"ms\" : \"\"))), e.w = y.join(_ == 0 ? \":\" : \" \"), e.z = w.join(_ == 0 ? '\":\"' : \" \"), _ == 0 && (e.w = e.w.replace(/:(\\d\\d\\d)$/, \".$1\"));\n }\n}\nfunction TF(e, t, r, n) {\n var i = U0(e), f = i.getUint32(4, !0), c = -1, u = -1, l = -1, h = NaN, x = 0, m = new Date(Date.UTC(2001, 0, 1)), _ = r > 1 ? 12 : 8;\n f & 2 && (l = i.getUint32(_, !0), _ += 4), _ += R0(f & (r > 1 ? 3468 : 396)) * 4, f & 512 && (c = i.getUint32(_, !0), _ += 4), _ += R0(f & (r > 1 ? 12288 : 4096)) * 4, f & 16 && (u = i.getUint32(_, !0), _ += 4), f & 32 && (h = i.getFloat64(_, !0), _ += 8), f & 64 && (m.setTime(m.getTime() + (x = i.getFloat64(_, !0)) * 1e3), _ += 8), r > 1 && (f = i.getUint32(8, !0) >>> 16, f & 255 && (l == -1 && (l = i.getUint32(_, !0)), _ += 4));\n var v, T = e[r >= 4 ? 1 : 2];\n switch (T) {\n case 0:\n return;\n case 2:\n v = { t: \"n\", v: h };\n break;\n case 3:\n v = { t: \"s\", v: t.sst[u] };\n break;\n case 5:\n n != null && n.cellDates ? v = { t: \"d\", v: m } : v = { t: \"n\", v: x / 86400 + 35430, z: Xe[14] };\n break;\n case 6:\n v = { t: \"b\", v: h > 0 };\n break;\n case 7:\n v = { t: \"n\", v: h };\n break;\n case 8:\n v = { t: \"e\", v: 0 };\n break;\n case 9:\n if (c > -1) {\n var A = t.rsst[c];\n v = { t: \"s\", v: A.v }, A.l && (v.l = { Target: A.l });\n } else\n throw new Error(\"Unsupported cell type \".concat(e[tt](0, 4)));\n break;\n default:\n throw new Error(\"Unsupported cell type \".concat(e[tt](0, 4)));\n }\n return l > -1 && yh(v, T | r << 8, f, t.ofmt[l], t.nfmt[l]), T == 7 && (v.v /= 86400), v;\n}\nfunction wF(e, t, r) {\n var n = U0(e);\n n.getUint32(4, !0);\n var i = n.getUint32(8, !0), f = 12, c = -1, u = -1, l = -1, h = NaN, x = NaN, m = 0, _ = new Date(Date.UTC(2001, 0, 1));\n i & 1 && (h = pF(e, f), f += 16), i & 2 && (x = n.getFloat64(f, !0), f += 8), i & 4 && (_.setTime(_.getTime() + (m = n.getFloat64(f, !0)) * 1e3), f += 8), i & 8 && (u = n.getUint32(f, !0), f += 4), i & 16 && (c = n.getUint32(f, !0), f += 4), f += R0(i & 480) * 4, i & 512 && (n.getUint32(f, !0), f += 4), f += R0(i & 1024) * 4, i & 2048 && (n.getUint32(f, !0), f += 4);\n var v, T = e[1];\n switch (T) {\n case 0:\n v = { t: \"z\" };\n break;\n case 2:\n v = { t: \"n\", v: h };\n break;\n case 3:\n v = { t: \"s\", v: t.sst[u] };\n break;\n case 5:\n r != null && r.cellDates ? v = { t: \"d\", v: _ } : v = { t: \"n\", v: m / 86400 + 35430, z: Xe[14] };\n break;\n case 6:\n v = { t: \"b\", v: x > 0 };\n break;\n case 7:\n v = { t: \"n\", v: x };\n break;\n case 8:\n v = { t: \"e\", v: 0 };\n break;\n case 9:\n if (c > -1) {\n var A = t.rsst[c];\n v = { t: \"s\", v: A.v }, A.l && (v.l = { Target: A.l });\n } else\n throw new Error(\"Unsupported cell type \".concat(e[1], \" : \").concat(i & 31, \" : \").concat(e[tt](0, 4)));\n break;\n case 10:\n v = { t: \"n\", v: h };\n break;\n default:\n throw new Error(\"Unsupported cell type \".concat(e[1], \" : \").concat(i & 31, \" : \").concat(e[tt](0, 4)));\n }\n if (f += R0(i & 4096) * 4, i & 516096 && (l == -1 && (l = n.getUint32(f, !0)), f += 4), i & 524288) {\n var g = n.getUint32(f, !0);\n f += 4, t.cmnt[g] && (v.c = SF(t.cmnt[g]));\n }\n return l > -1 && yh(v, T | 1280, i >> 13, t.ofmt[l], t.nfmt[l]), T == 7 && (v.v /= 86400), v;\n}\nfunction kF(e, t, r) {\n switch (e[0]) {\n case 0:\n case 1:\n case 2:\n case 3:\n case 4:\n return TF(e, t, e[0], r);\n case 5:\n return wF(e, t, r);\n default:\n throw new Error(\"Unsupported payload version \".concat(e[0]));\n }\n}\nfunction qr(e) {\n var t = je(e);\n return lr(t[1][0].data);\n}\nfunction xn(e, t) {\n var r = je(t.data), n = lr(r[1][0].data), i = r[3], f = [];\n return (i || []).forEach(function(c) {\n var u, l, h = je(c.data);\n if (h[1]) {\n var x = lr(h[1][0].data) >>> 0;\n switch (n) {\n case 1:\n f[x] = Yn(h[3][0].data);\n break;\n case 8:\n {\n var m = e[qr(h[9][0].data)][0], _ = je(m.data), v = e[qr(_[1][0].data)][0], T = lr(v.meta[1][0].data);\n if (T != 2001)\n throw new Error(\"2000 unexpected reference to \".concat(T));\n var A = je(v.data), g = { v: A[3].map(function(w) {\n return Yn(w.data);\n }).join(\"\") };\n f[x] = g;\n e:\n if ((u = A == null ? void 0 : A[11]) != null && u[0]) {\n var p = (l = je(A[11][0].data)) == null ? void 0 : l[1];\n if (!p)\n break e;\n p.forEach(function(w) {\n var P, V, Z, M = je(w.data);\n if ((P = M[2]) != null && P[0]) {\n var G = e[qr((V = M[2]) == null ? void 0 : V[0].data)][0], U = lr(G.meta[1][0].data);\n switch (U) {\n case 2032:\n var J = je(G.data);\n (Z = J == null ? void 0 : J[2]) != null && Z[0] && !g.l && (g.l = Yn(J[2][0].data));\n break;\n case 2039:\n break;\n default:\n console.log(\"unrecognized ObjectAttribute type \".concat(U));\n }\n }\n });\n }\n }\n break;\n case 2:\n f[x] = je(h[6][0].data);\n break;\n case 3:\n f[x] = je(h[5][0].data);\n break;\n case 10:\n {\n var y = e[qr(h[10][0].data)][0];\n f[x] = Ih(e, y.data);\n }\n break;\n default:\n throw n;\n }\n }\n }), f;\n}\nfunction AF(e, t) {\n var r, n, i, f, c, u, l, h, x, m, _, v, T, A, g = je(e), p = lr(g[1][0].data) >>> 0, y = lr(g[2][0].data) >>> 0, w = ((n = (r = g[8]) == null ? void 0 : r[0]) == null ? void 0 : n.data) && lr(g[8][0].data) > 0 || !1, P, V;\n if ((f = (i = g[7]) == null ? void 0 : i[0]) != null && f.data && t != 0)\n P = (u = (c = g[7]) == null ? void 0 : c[0]) == null ? void 0 : u.data, V = (h = (l = g[6]) == null ? void 0 : l[0]) == null ? void 0 : h.data;\n else if ((m = (x = g[4]) == null ? void 0 : x[0]) != null && m.data && t != 1)\n P = (v = (_ = g[4]) == null ? void 0 : _[0]) == null ? void 0 : v.data, V = (A = (T = g[3]) == null ? void 0 : T[0]) == null ? void 0 : A.data;\n else\n throw \"NUMBERS Tile missing \".concat(t, \" cell storage\");\n for (var Z = w ? 4 : 1, M = U0(P), G = [], U = 0; U < P.length / 2; ++U) {\n var J = M.getUint16(U * 2, !0);\n J < 65535 && G.push([U, J]);\n }\n if (G.length != y)\n throw \"Expected \".concat(y, \" cells, found \").concat(G.length);\n var z = [];\n for (U = 0; U < G.length - 1; ++U)\n z[G[U][0]] = V[tt](G[U][1] * Z, G[U + 1][1] * Z);\n return G.length >= 1 && (z[G[G.length - 1][0]] = V[tt](G[G.length - 1][1] * Z)), { R: p, cells: z };\n}\nfunction FF(e, t) {\n var r, n = je(t.data), i = -1;\n (r = n == null ? void 0 : n[7]) != null && r[0] && (lr(n[7][0].data) >>> 0 ? i = 1 : i = 0);\n var f = ms(n[5], function(c) {\n return AF(c, i);\n });\n return {\n nrows: lr(n[4][0].data) >>> 0,\n data: f.reduce(function(c, u) {\n return c[u.R] || (c[u.R] = []), u.cells.forEach(function(l, h) {\n if (c[u.R][h])\n throw new Error(\"Duplicate cell r=\".concat(u.R, \" c=\").concat(h));\n c[u.R][h] = l;\n }), c;\n }, [])\n };\n}\nfunction Ih(e, t) {\n var r, n, i, f, c, u, l, h, x, m, _ = { t: \"\", a: \"\" }, v = je(t);\n if ((n = (r = v == null ? void 0 : v[1]) == null ? void 0 : r[0]) != null && n.data && (_.t = Yn((f = (i = v == null ? void 0 : v[1]) == null ? void 0 : i[0]) == null ? void 0 : f.data) || \"\"), (u = (c = v == null ? void 0 : v[3]) == null ? void 0 : c[0]) != null && u.data) {\n var T = e[qr((h = (l = v == null ? void 0 : v[3]) == null ? void 0 : l[0]) == null ? void 0 : h.data)][0], A = je(T.data);\n (m = (x = A[1]) == null ? void 0 : x[0]) != null && m.data && (_.a = Yn(A[1][0].data));\n }\n return v != null && v[4] && (_.replies = [], v[4].forEach(function(g) {\n var p = e[qr(g.data)][0];\n _.replies.push(Ih(e, p.data));\n })), _;\n}\nfunction SF(e) {\n var t = [];\n return t.push({ t: e.t || \"\", a: e.a, T: e.replies && e.replies.length > 0 }), e.replies && e.replies.forEach(function(r) {\n t.push({ t: r.t || \"\", a: r.a, T: !0 });\n }), t;\n}\nfunction CF(e, t, r, n) {\n var i, f, c, u, l, h, x, m, _, v, T, A, g, p, y = je(t.data), w = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } };\n if (w.e.r = (lr(y[6][0].data) >>> 0) - 1, w.e.r < 0)\n throw new Error(\"Invalid row varint \".concat(y[6][0].data));\n if (w.e.c = (lr(y[7][0].data) >>> 0) - 1, w.e.c < 0)\n throw new Error(\"Invalid col varint \".concat(y[7][0].data));\n r[\"!ref\"] = sr(w);\n var P = r[\"!data\"] != null, V = r, Z = je(y[4][0].data), M = EF();\n (i = Z[4]) != null && i[0] && (M.sst = xn(e, e[qr(Z[4][0].data)][0])), (f = Z[6]) != null && f[0] && (M.fmla = xn(e, e[qr(Z[6][0].data)][0])), (c = Z[11]) != null && c[0] && (M.ofmt = xn(e, e[qr(Z[11][0].data)][0])), (u = Z[12]) != null && u[0] && (M.ferr = xn(e, e[qr(Z[12][0].data)][0])), (l = Z[17]) != null && l[0] && (M.rsst = xn(e, e[qr(Z[17][0].data)][0])), (h = Z[19]) != null && h[0] && (M.cmnt = xn(e, e[qr(Z[19][0].data)][0])), (x = Z[22]) != null && x[0] && (M.nfmt = xn(e, e[qr(Z[22][0].data)][0]));\n var G = je(Z[3][0].data), U = 0;\n if (!((m = Z[9]) != null && m[0]))\n throw \"NUMBERS file missing row tree\";\n var J = je(Z[9][0].data)[1].map(function(he) {\n return je(he.data);\n });\n if (J.forEach(function(he) {\n U = lr(he[1][0].data);\n var De = lr(he[2][0].data), le = G[1][De];\n if (!le)\n throw \"NUMBERS missing tile \" + De;\n var Ee = je(le.data), be = e[qr(Ee[2][0].data)][0], ae = lr(be.meta[1][0].data);\n if (ae != 6002)\n throw new Error(\"6001 unexpected reference to \".concat(ae));\n var Pe = FF(e, be);\n Pe.data.forEach(function(Ge, Le) {\n Ge.forEach(function(Se, Me) {\n var Be = kF(Se, M, n);\n Be && (P ? (V[\"!data\"][U + Le] || (V[\"!data\"][U + Le] = []), V[\"!data\"][U + Le][Me] = Be) : r[xr(Me) + _r(U + Le)] = Be);\n });\n }), U += Pe.nrows;\n }), (_ = Z[13]) != null && _[0]) {\n var z = e[qr(Z[13][0].data)][0], re = lr(z.meta[1][0].data);\n if (re != 6144)\n throw new Error(\"Expected merge type 6144, found \".concat(re));\n r[\"!merges\"] = (v = je(z.data)) == null ? void 0 : v[1].map(function(he) {\n var De = je(he.data), le = U0(je(De[1][0].data)[1][0].data), Ee = U0(je(De[2][0].data)[1][0].data);\n return {\n s: { r: le.getUint16(0, !0), c: le.getUint16(2, !0) },\n e: {\n r: le.getUint16(0, !0) + Ee.getUint16(0, !0) - 1,\n c: le.getUint16(2, !0) + Ee.getUint16(2, !0) - 1\n }\n };\n });\n }\n if (!((T = r[\"!merges\"]) != null && T.length) && ((A = y[47]) != null && A[0])) {\n var ne = je(y[47][0].data);\n if ((g = ne[2]) != null && g[0]) {\n var Ae = je(ne[2][0].data);\n (p = Ae[3]) != null && p[0] && (r[\"!merges\"] = ms(Ae[3], function(he) {\n var De, le, Ee, be, ae, Pe = je(he), Ge = je(Pe[2][0].data), Le = je(Ge[1][0].data);\n if ((De = Le[1]) != null && De[0]) {\n var Se = je(Le[1][0].data), Me = lr(Se[1][0].data);\n if (Me == 67) {\n var Be = je(Se[40][0].data);\n if (!(!((le = Be[3]) != null && le[0]) || !((Ee = Be[4]) != null && Ee[0]))) {\n var Ke = je(Be[3][0].data), N = je(Be[4][0].data), K = lr(Ke[1][0].data), H = (be = Ke[2]) != null && be[0] ? lr(Ke[2][0].data) : K, B = lr(N[1][0].data), fe = (ae = N[2]) != null && ae[0] ? lr(N[2][0].data) : B;\n return { s: { r: B, c: K }, e: { r: fe, c: H } };\n }\n }\n }\n }).filter(function(he) {\n return he != null;\n }));\n }\n }\n}\nfunction yF(e, t, r) {\n var n = je(t.data), i = { \"!ref\": \"A1\" };\n r != null && r.dense && (i[\"!data\"] = []);\n var f = e[qr(n[2][0].data)], c = lr(f[0].meta[1][0].data);\n if (c != 6001)\n throw new Error(\"6000 unexpected reference to \".concat(c));\n return CF(e, f[0], i, r), i;\n}\nfunction IF(e, t, r) {\n var n, i = je(t.data), f = {\n name: (n = i[1]) != null && n[0] ? Yn(i[1][0].data) : \"\",\n sheets: []\n }, c = ms(i[2], qr);\n return c.forEach(function(u) {\n e[u].forEach(function(l) {\n var h = lr(l.meta[1][0].data);\n h == 6e3 && f.sheets.push(yF(e, l, r));\n });\n }), f;\n}\nfunction OF(e, t, r) {\n var n, i = Cc();\n i.Workbook = { WBProps: { date1904: !0 } };\n var f = je(t.data);\n if ((n = f[2]) != null && n[0])\n throw new Error(\"Keynote presentations are not supported\");\n var c = ms(f[1], qr);\n if (c.forEach(function(u) {\n e[u].forEach(function(l) {\n var h = lr(l.meta[1][0].data);\n if (h == 2) {\n var x = IF(e, l, r);\n x.sheets.forEach(function(m, _) {\n K0(i, m, _ == 0 ? x.name : x.name + \"_\" + _, !0);\n });\n }\n });\n }), i.SheetNames.length == 0)\n throw new Error(\"Empty NUMBERS file\");\n return i.bookType = \"numbers\", i;\n}\nfunction Zf(e, t) {\n var r, n, i, f, c, u, l, h = {}, x = [];\n if (e.FullPaths.forEach(function(_) {\n if (_.match(/\\.iwpv2/))\n throw new Error(\"Unsupported password protection\");\n }), e.FileIndex.forEach(function(_) {\n if (_.name.match(/\\.iwa$/) && _.content[0] == 0) {\n var v;\n try {\n v = mF(_.content);\n } catch (A) {\n return console.log(\"?? \" + _.content.length + \" \" + (A.message || A));\n }\n var T;\n try {\n T = gF(v);\n } catch (A) {\n return console.log(\"## \" + (A.message || A));\n }\n T.forEach(function(A) {\n h[A.id] = A.messages, x.push(A.id);\n });\n }\n }), !x.length)\n throw new Error(\"File has no messages\");\n if ((i = (n = (r = h == null ? void 0 : h[1]) == null ? void 0 : r[0].meta) == null ? void 0 : n[1]) != null && i[0].data && lr(h[1][0].meta[1][0].data) == 1e4)\n throw new Error(\"Pages documents are not supported\");\n var m = ((l = (u = (c = (f = h == null ? void 0 : h[1]) == null ? void 0 : f[0]) == null ? void 0 : c.meta) == null ? void 0 : u[1]) == null ? void 0 : l[0].data) && lr(h[1][0].meta[1][0].data) == 1 && h[1][0];\n if (m || x.forEach(function(_) {\n h[_].forEach(function(v) {\n var T = lr(v.meta[1][0].data) >>> 0;\n if (T == 1)\n if (!m)\n m = v;\n else\n throw new Error(\"Document has multiple roots\");\n });\n }), !m)\n throw new Error(\"Cannot find Document root\");\n return OF(h, m, t);\n}\nfunction DF(e) {\n return function(r) {\n for (var n = 0; n != e.length; ++n) {\n var i = e[n];\n r[i[0]] === void 0 && (r[i[0]] = i[1]), i[2] === \"n\" && (r[i[0]] = Number(r[i[0]]));\n }\n };\n}\nfunction Fc(e) {\n DF([\n [\"cellNF\", !1],\n /* emit cell number format string as .z */\n [\"cellHTML\", !0],\n /* emit html string as .h */\n [\"cellFormula\", !0],\n /* emit formulae as .f */\n [\"cellStyles\", !1],\n /* emits style/theme as .s */\n [\"cellText\", !0],\n /* emit formatted text as .w */\n [\"cellDates\", !1],\n /* emit date cells with type `d` */\n [\"sheetStubs\", !1],\n /* emit empty cells */\n [\"sheetRows\", 0, \"n\"],\n /* read n rows (0 = read all rows) */\n [\"bookDeps\", !1],\n /* parse calculation chains */\n [\"bookSheets\", !1],\n /* only try to get sheet names (no Sheets) */\n [\"bookProps\", !1],\n /* only try to get properties (no Sheets) */\n [\"bookFiles\", !1],\n /* include raw file structure (keys, files, cfb) */\n [\"bookVBA\", !1],\n /* include vba raw data (vbaraw) */\n [\"password\", \"\"],\n /* password */\n [\"WTF\", !1]\n /* WTF mode (throws errors) */\n ])(e);\n}\nfunction RF(e) {\n return $n.WS.indexOf(e) > -1 ? \"sheet\" : e == $n.CS ? \"chart\" : e == $n.DS ? \"dialog\" : e == $n.MS ? \"macro\" : e && e.length ? e : \"sheet\";\n}\nfunction NF(e, t) {\n if (!e) return 0;\n try {\n e = t.map(function(n) {\n return n.id || (n.id = n.strRelID), [n.name, e[\"!id\"][n.id].Target, RF(e[\"!id\"][n.id].Type)];\n });\n } catch {\n return null;\n }\n return !e || e.length === 0 ? null : e;\n}\nfunction LF(e, t, r, n, i, f, c, u) {\n if (!(!e || !e[\"!legdrawel\"])) {\n var l = Xn(e[\"!legdrawel\"].Target, n), h = Et(r, l, !0);\n h && Hw(Tr(h), e, u || []);\n }\n}\nfunction PF(e, t, r, n, i, f, c, u, l, h, x, m) {\n try {\n f[n] = S0(Et(e, r, !0), t);\n var _ = Ur(e, t), v;\n switch (u) {\n case \"sheet\":\n v = MA(_, t, i, l, f[n], h, x, m);\n break;\n case \"chart\":\n if (v = UA(_, t, i, l, f[n], h, x, m), !v || !v[\"!drawel\"]) break;\n var T = Xn(v[\"!drawel\"].Target, t), A = ec(T), g = Ww(Et(e, T, !0), S0(Et(e, A, !0), T)), p = Xn(g, T), y = ec(p);\n v = TA(Et(e, p, !0), p, l, S0(Et(e, y, !0), p), h, v);\n break;\n case \"macro\":\n v = WA(_, t, i, l, f[n], h, x, m);\n break;\n case \"dialog\":\n v = HA(_, t, i, l, f[n], h, x, m);\n break;\n default:\n throw new Error(\"Unrecognized sheet type \" + u);\n }\n c[n] = v;\n var w = [], P = [];\n f && f[n] && jt(f[n]).forEach(function(V) {\n var Z = \"\";\n if (f[n][V].Type == $n.CMNT) {\n if (Z = Xn(f[n][V].Target, t), w = XA(Ur(e, Z, !0), Z, l), !w || !w.length) return;\n Ml(v, w, !1);\n }\n f[n][V].Type == $n.TCMNT && (Z = Xn(f[n][V].Target, t), P = P.concat(Vw(Ur(e, Z, !0), l)));\n }), P && P.length && Ml(v, P, !0, l.people || []), LF(v, u, e, t, i, l, h, w);\n } catch (V) {\n if (l.WTF) throw V;\n }\n}\nfunction Zt(e) {\n return e.charAt(0) == \"/\" ? e.slice(1) : e;\n}\nfunction bF(e, t) {\n if (o1(), t = t || {}, Fc(t), qt(e, \"META-INF/manifest.xml\") || qt(e, \"objectdata.xml\")) return Jl(e, t);\n if (qt(e, \"Index/Document.iwa\")) {\n if (typeof Uint8Array > \"u\") throw new Error(\"NUMBERS file parsing requires Uint8Array support\");\n if (typeof Zf < \"u\") {\n if (e.FileIndex) return Zf(e, t);\n var r = or.utils.cfb_new();\n return ol(e).forEach(function(he) {\n Um(r, he, Mm(e, he));\n }), Zf(r, t);\n }\n throw new Error(\"Unsupported NUMBERS file\");\n }\n if (!qt(e, \"[Content_Types].xml\")) {\n if (qt(e, \"index.xml.gz\")) throw new Error(\"Unsupported NUMBERS 08 file\");\n if (qt(e, \"index.xml\")) throw new Error(\"Unsupported NUMBERS 09 file\");\n var n = or.find(e, \"Index.zip\");\n if (n)\n return t = Gr(t), delete t.type, typeof n.content == \"string\" && (t.type = \"binary\"), typeof Bun < \"u\" && Buffer.isBuffer(n.content) ? Zn(new Uint8Array(n.content), t) : Zn(n.content, t);\n throw new Error(\"Unsupported ZIP file\");\n }\n var i = ol(e), f = P4(Et(e, \"[Content_Types].xml\")), c = !1, u, l;\n if (f.workbooks.length === 0 && (l = \"xl/workbook.xml\", Ur(e, l, !0) && f.workbooks.push(l)), f.workbooks.length === 0) {\n if (l = \"xl/workbook.bin\", !Ur(e, l, !0)) throw new Error(\"Could not find workbook\");\n f.workbooks.push(l), c = !0;\n }\n f.workbooks[0].slice(-3) == \"bin\" && (c = !0);\n var h = {}, x = {};\n if (!t.bookSheets && !t.bookProps) {\n if (I0 = [], f.sst) try {\n I0 = VA(Ur(e, Zt(f.sst)), f.sst, t);\n } catch (he) {\n if (t.WTF) throw he;\n }\n t.cellStyles && f.themes.length && (h = sh(Et(e, f.themes[0].replace(/^\\//, \"\"), !0) || \"\", t)), f.style && (x = GA(Ur(e, Zt(f.style)), f.style, h, t));\n }\n f.links.map(function(he) {\n try {\n var De = S0(Et(e, ec(Zt(he))), he);\n return zA(Ur(e, Zt(he)), De, he, t);\n } catch {\n }\n });\n var m = BA(Ur(e, Zt(f.workbooks[0])), f.workbooks[0], t), _ = {}, v = \"\";\n f.coreprops.length && (v = Ur(e, Zt(f.coreprops[0]), !0), v && (_ = W1(v)), f.extprops.length !== 0 && (v = Ur(e, Zt(f.extprops[0]), !0), v && U4(v, _, t)));\n var T = {};\n (!t.bookSheets || t.bookProps) && f.custprops.length !== 0 && (v = Et(e, Zt(f.custprops[0]), !0), v && (T = H4(v, t)));\n var A = {};\n if ((t.bookSheets || t.bookProps) && (m.Sheets ? u = m.Sheets.map(function(De) {\n return De.name;\n }) : _.Worksheets && _.SheetNames.length > 0 && (u = _.SheetNames), t.bookProps && (A.Props = _, A.Custprops = T), t.bookSheets && typeof u < \"u\" && (A.SheetNames = u), t.bookSheets ? A.SheetNames : t.bookProps))\n return A;\n u = {};\n var g = {};\n t.bookDeps && f.calcchain && (g = $A(Ur(e, Zt(f.calcchain)), f.calcchain));\n var p = 0, y = {}, w, P;\n {\n var V = m.Sheets;\n _.Worksheets = V.length, _.SheetNames = [];\n for (var Z = 0; Z != V.length; ++Z)\n _.SheetNames[Z] = V[Z].name;\n }\n var M = c ? \"bin\" : \"xml\", G = f.workbooks[0].lastIndexOf(\"/\"), U = (f.workbooks[0].slice(0, G + 1) + \"_rels/\" + f.workbooks[0].slice(G + 1) + \".rels\").replace(/^\\//, \"\");\n qt(e, U) || (U = \"xl/_rels/workbook.\" + M + \".rels\");\n var J = S0(Et(e, U, !0), U.replace(/_rels.*/, \"s5s\"));\n (f.metadata || []).length >= 1 && (t.xlmeta = KA(Ur(e, Zt(f.metadata[0])), f.metadata[0], t)), (f.people || []).length >= 1 && (t.people = Xw(Ur(e, Zt(f.people[0])), t)), J && (J = NF(J, m.Sheets));\n var z = Ur(e, \"xl/worksheets/sheet.xml\", !0) ? 1 : 0;\n e: for (p = 0; p != _.Worksheets; ++p) {\n var re = \"sheet\";\n if (J && J[p] ? (w = \"xl/\" + J[p][1].replace(/[\\/]?xl\\//, \"\"), qt(e, w) || (w = J[p][1]), qt(e, w) || (w = U.replace(/_rels\\/[\\S\\s]*$/, \"\") + J[p][1]), re = J[p][2]) : (w = \"xl/worksheets/sheet\" + (p + 1 - z) + \".\" + M, w = w.replace(/sheet0\\./, \"sheet.\")), P = w.replace(/^(.*)(\\/)([^\\/]*)$/, \"$1/_rels/$3.rels\"), t && t.sheets != null) switch (typeof t.sheets) {\n case \"number\":\n if (p != t.sheets) continue e;\n break;\n case \"string\":\n if (_.SheetNames[p].toLowerCase() != t.sheets.toLowerCase()) continue e;\n break;\n default:\n if (Array.isArray && Array.isArray(t.sheets)) {\n for (var ne = !1, Ae = 0; Ae != t.sheets.length; ++Ae)\n typeof t.sheets[Ae] == \"number\" && t.sheets[Ae] == p && (ne = 1), typeof t.sheets[Ae] == \"string\" && t.sheets[Ae].toLowerCase() == _.SheetNames[p].toLowerCase() && (ne = 1);\n if (!ne) continue e;\n }\n }\n PF(e, w, P, _.SheetNames[p], p, y, u, re, t, m, h, x);\n }\n return A = {\n Directory: f,\n Workbook: m,\n Props: _,\n Custprops: T,\n Deps: g,\n Sheets: u,\n SheetNames: _.SheetNames,\n Strings: I0,\n Styles: x,\n Themes: h,\n SSF: Gr(Xe)\n }, t && t.bookFiles && (e.files ? (A.keys = i, A.files = e.files) : (A.keys = [], A.files = {}, e.FullPaths.forEach(function(he, De) {\n he = he.replace(/^Root Entry[\\/]/, \"\"), A.keys.push(he), A.files[he] = e.FileIndex[De];\n }))), t && t.bookVBA && (f.vba.length > 0 ? A.vbaraw = Ur(e, Zt(f.vba[0]), !0) : f.defaults && f.defaults.bin === Yw && (A.vbaraw = Ur(e, \"xl/vbaProject.bin\", !0))), A.bookType = c ? \"xlsb\" : \"xlsx\", A;\n}\nfunction BF(e, t) {\n var r = t || {}, n = \"Workbook\", i = or.find(e, n);\n try {\n if (n = \"/!DataSpaces/Version\", i = or.find(e, n), !i || !i.content) throw new Error(\"ECMA-376 Encrypted file missing \" + n);\n if (LT(i.content), n = \"/!DataSpaces/DataSpaceMap\", i = or.find(e, n), !i || !i.content) throw new Error(\"ECMA-376 Encrypted file missing \" + n);\n var f = bT(i.content);\n if (f.length !== 1 || f[0].comps.length !== 1 || f[0].comps[0].t !== 0 || f[0].name !== \"StrongEncryptionDataSpace\" || f[0].comps[0].v !== \"EncryptedPackage\")\n throw new Error(\"ECMA-376 Encrypted file bad \" + n);\n if (n = \"/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace\", i = or.find(e, n), !i || !i.content) throw new Error(\"ECMA-376 Encrypted file missing \" + n);\n var c = BT(i.content);\n if (c.length != 1 || c[0] != \"StrongEncryptionTransform\")\n throw new Error(\"ECMA-376 Encrypted file bad \" + n);\n if (n = \"/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary\", i = or.find(e, n), !i || !i.content) throw new Error(\"ECMA-376 Encrypted file missing \" + n);\n UT(i.content);\n } catch {\n }\n if (n = \"/EncryptionInfo\", i = or.find(e, n), !i || !i.content) throw new Error(\"ECMA-376 Encrypted file missing \" + n);\n var u = WT(i.content);\n if (n = \"/EncryptedPackage\", i = or.find(e, n), !i || !i.content) throw new Error(\"ECMA-376 Encrypted file missing \" + n);\n if (u[0] == 4 && typeof decrypt_agile < \"u\") return decrypt_agile(u[1], i.content, r.password || \"\", r);\n if (u[0] == 2 && typeof decrypt_std76 < \"u\") return decrypt_std76(u[1], i.content, r.password || \"\", r);\n throw new Error(\"File is password-protected\");\n}\nfunction Sc(e, t) {\n var r = \"\";\n switch ((t || {}).type || \"base64\") {\n case \"buffer\":\n return [e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7]];\n case \"base64\":\n r = Ut(e.slice(0, 12));\n break;\n case \"binary\":\n r = e;\n break;\n case \"array\":\n return [e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7]];\n default:\n throw new Error(\"Unrecognized type \" + (t && t.type || \"undefined\"));\n }\n return [r.charCodeAt(0), r.charCodeAt(1), r.charCodeAt(2), r.charCodeAt(3), r.charCodeAt(4), r.charCodeAt(5), r.charCodeAt(6), r.charCodeAt(7)];\n}\nfunction MF(e, t) {\n return or.find(e, \"EncryptedPackage\") ? BF(e, t) : wh(e, t);\n}\nfunction UF(e, t) {\n var r, n = e, i = t || {};\n return i.type || (i.type = tr && Buffer.isBuffer(e) ? \"buffer\" : \"base64\"), r = p1(n, i), bF(r, i);\n}\nfunction Oh(e, t) {\n var r = 0;\n e: for (; r < e.length; ) switch (e.charCodeAt(r)) {\n case 10:\n case 13:\n case 32:\n ++r;\n break;\n case 60:\n return tc(e.slice(r), t);\n default:\n break e;\n }\n return b0.to_workbook(e, t);\n}\nfunction WF(e, t) {\n var r = \"\", n = Sc(e, t);\n switch (t.type) {\n case \"base64\":\n r = Ut(e);\n break;\n case \"binary\":\n r = e;\n break;\n case \"buffer\":\n r = e.toString(\"binary\");\n break;\n case \"array\":\n r = En(e);\n break;\n default:\n throw new Error(\"Unrecognized type \" + t.type);\n }\n return n[0] == 239 && n[1] == 187 && n[2] == 191 && (r = Tr(r)), t.type = \"binary\", Oh(r, t);\n}\nfunction HF(e, t) {\n var r = e;\n return t.type == \"base64\" && (r = Ut(r)), typeof ArrayBuffer < \"u\" && e instanceof ArrayBuffer && (r = new Uint8Array(e)), r = tr && Buffer.isBuffer(e) ? e.slice(2).toString(\"utf16le\") : typeof Uint8Array < \"u\" && r instanceof Uint8Array ? typeof TextDecoder < \"u\" ? new TextDecoder(\"utf-16le\").decode(r.slice(2)) : X_(r.slice(2)) : e1(r.slice(2)), t.type = \"binary\", Oh(r, t);\n}\nfunction GF(e) {\n return e.match(/[^\\x00-\\x7F]/) ? T0(e) : e;\n}\nfunction Jf(e, t, r, n) {\n return n ? (r.type = \"string\", b0.to_workbook(e, r)) : b0.to_workbook(t, r);\n}\nfunction Zn(e, t) {\n jl();\n var r = t || {};\n if (r.codepage && console.error(\"Codepage tables are not loaded. Non-ASCII characters may not give expected results\"), typeof ArrayBuffer < \"u\" && e instanceof ArrayBuffer) return Zn(new Uint8Array(e), (r = Gr(r), r.type = \"array\", r));\n if (typeof Int8Array < \"u\" && e instanceof Int8Array) return Zn(new Uint8Array(e.buffer, e.byteOffset, e.length), r);\n typeof Uint8Array < \"u\" && e instanceof Uint8Array && !r.type && (r.type = typeof Deno < \"u\" ? \"buffer\" : \"array\");\n var n = e, i = [0, 0, 0, 0], f = !1;\n if (r.cellStyles && (r.cellNF = !0, r.sheetStubs = !0), Kn = {}, r.dateNF && (Kn.dateNF = r.dateNF), r.type || (r.type = tr && Buffer.isBuffer(e) ? \"buffer\" : \"base64\"), r.type == \"file\" && (r.type = tr ? \"buffer\" : \"binary\", n = Em(e), typeof Uint8Array < \"u\" && !tr && (r.type = \"array\")), r.type == \"string\" && (f = !0, r.type = \"binary\", r.codepage = 65001, n = GF(e)), r.type == \"array\" && typeof Uint8Array < \"u\" && e instanceof Uint8Array && typeof ArrayBuffer < \"u\") {\n var c = new ArrayBuffer(3), u = new Uint8Array(c);\n if (u.foo = \"bar\", !u.foo)\n return r = Gr(r), r.type = \"array\", Zn(fc(n), r);\n }\n switch ((i = Sc(n, r))[0]) {\n case 208:\n if (i[1] === 207 && i[2] === 17 && i[3] === 224 && i[4] === 161 && i[5] === 177 && i[6] === 26 && i[7] === 225) return MF(or.read(n, r), r);\n break;\n case 9:\n if (i[1] <= 8) return wh(n, r);\n break;\n case 60:\n return tc(n, r);\n case 73:\n if (i[1] === 73 && i[2] === 42 && i[3] === 0) throw new Error(\"TIFF Image File is not a spreadsheet\");\n if (i[1] === 68) return kT(n, r);\n break;\n case 84:\n if (i[1] === 65 && i[2] === 66 && i[3] === 76) return TT.to_workbook(n, r);\n break;\n case 80:\n return i[1] === 75 && i[2] < 9 && i[3] < 9 ? UF(n, r) : Jf(e, n, r, f);\n case 239:\n return i[3] === 60 ? tc(n, r) : Jf(e, n, r, f);\n case 255:\n if (i[1] === 254)\n return HF(n, r);\n if (i[1] === 0 && i[2] === 2 && i[3] === 0) return y0.to_workbook(n, r);\n break;\n case 0:\n if (i[1] === 0 && (i[2] >= 2 && i[3] === 0 || i[2] === 0 && (i[3] === 8 || i[3] === 9)))\n return y0.to_workbook(n, r);\n break;\n case 3:\n case 131:\n case 139:\n case 140:\n return Bl.to_workbook(n, r);\n case 123:\n if (i[1] === 92 && i[2] === 114 && i[3] === 116) return jT(n, r);\n break;\n case 10:\n case 13:\n case 32:\n return WF(n, r);\n case 137:\n if (i[1] === 80 && i[2] === 78 && i[3] === 71) throw new Error(\"PNG Image File is not a spreadsheet\");\n break;\n case 8:\n if (i[1] === 231) throw new Error(\"Unsupported Multiplan 1.x file!\");\n break;\n case 12:\n if (i[1] === 236) throw new Error(\"Unsupported Multiplan 2.x file!\");\n if (i[1] === 237) throw new Error(\"Unsupported Multiplan 3.x file!\");\n break;\n }\n return mT.indexOf(i[0]) > -1 && i[2] <= 12 && i[3] <= 31 ? Bl.to_workbook(n, r) : Jf(e, n, r, f);\n}\nfunction VF(e, t, r, n, i, f, c) {\n var u = _r(r), l = c.defval, h = c.raw || !Object.prototype.hasOwnProperty.call(c, \"raw\"), x = !0, m = e[\"!data\"] != null, _ = i === 1 ? [] : {};\n if (i !== 1)\n if (Object.defineProperty) try {\n Object.defineProperty(_, \"__rowNum__\", { value: r, enumerable: !1 });\n } catch {\n _.__rowNum__ = r;\n }\n else _.__rowNum__ = r;\n if (!m || e[\"!data\"][r]) for (var v = t.s.c; v <= t.e.c; ++v) {\n var T = m ? (e[\"!data\"][r] || [])[v] : e[n[v] + u];\n if (T == null || T.t === void 0) {\n if (l === void 0) continue;\n f[v] != null && (_[f[v]] = l);\n continue;\n }\n var A = T.v;\n switch (T.t) {\n case \"z\":\n if (A == null) break;\n continue;\n case \"e\":\n A = A == 0 ? null : void 0;\n break;\n case \"s\":\n case \"b\":\n case \"n\":\n if (!T.z || !la(T.z) || (A = Ja(A), typeof A == \"number\")) break;\n /* falls through */\n case \"d\":\n c && (c.UTC || c.raw === !1) || (A = Tn(new Date(A)));\n break;\n default:\n throw new Error(\"unrecognized type \" + T.t);\n }\n if (f[v] != null) {\n if (A == null)\n if (T.t == \"e\" && A === null) _[f[v]] = null;\n else if (l !== void 0) _[f[v]] = l;\n else if (h && A === null) _[f[v]] = null;\n else continue;\n else\n _[f[v]] = (T.t === \"n\" && typeof c.rawNumbers == \"boolean\" ? c.rawNumbers : h) ? A : Qa(T, A, c);\n A != null && (x = !1);\n }\n }\n return { row: _, isempty: x };\n}\nfunction nc(e, t) {\n if (e == null || e[\"!ref\"] == null) return [];\n var r = { t: \"n\", v: 0 }, n = 0, i = 1, f = [], c = 0, u = \"\", l = { s: { r: 0, c: 0 }, e: { r: 0, c: 0 } }, h = t || {}, x = h.range != null ? h.range : e[\"!ref\"];\n switch (h.header === 1 ? n = 1 : h.header === \"A\" ? n = 2 : Array.isArray(h.header) ? n = 3 : h.header == null && (n = 0), typeof x) {\n case \"string\":\n l = Br(x);\n break;\n case \"number\":\n l = Br(e[\"!ref\"]), l.s.r = x;\n break;\n default:\n l = x;\n }\n n > 0 && (i = 0);\n var m = _r(l.s.r), _ = [], v = [], T = 0, A = 0, g = e[\"!data\"] != null, p = l.s.r, y = 0, w = {};\n g && !e[\"!data\"][p] && (e[\"!data\"][p] = []);\n var P = h.skipHidden && e[\"!cols\"] || [], V = h.skipHidden && e[\"!rows\"] || [];\n for (y = l.s.c; y <= l.e.c; ++y)\n if (!(P[y] || {}).hidden)\n switch (_[y] = xr(y), r = g ? e[\"!data\"][p][y] : e[_[y] + m], n) {\n case 1:\n f[y] = y - l.s.c;\n break;\n case 2:\n f[y] = _[y];\n break;\n case 3:\n f[y] = h.header[y - l.s.c];\n break;\n default:\n if (r == null && (r = { w: \"__EMPTY\", t: \"s\" }), u = c = Qa(r, null, h), A = w[c] || 0, !A) w[c] = 1;\n else {\n do\n u = c + \"_\" + A++;\n while (w[u]);\n w[c] = A, w[u] = 1;\n }\n f[y] = u;\n }\n for (p = l.s.r + i; p <= l.e.r; ++p)\n if (!(V[p] || {}).hidden) {\n var Z = VF(e, l, p, _, n, f, h);\n (Z.isempty === !1 || (n === 1 ? h.blankrows !== !1 : h.blankrows)) && (v[T++] = Z.row);\n }\n return v.length = T, v;\n}\nvar Ql = /\"/g;\nfunction XF(e, t, r, n, i, f, c, u, l) {\n for (var h = !0, x = [], m = \"\", _ = _r(r), v = e[\"!data\"] != null, T = v && e[\"!data\"][r] || [], A = t.s.c; A <= t.e.c; ++A)\n if (n[A]) {\n var g = v ? T[A] : e[n[A] + _];\n if (g == null) m = \"\";\n else if (g.v != null) {\n h = !1, m = \"\" + (l.rawNumbers && g.t == \"n\" ? g.v : Qa(g, null, l));\n for (var p = 0, y = 0; p !== m.length; ++p) if ((y = m.charCodeAt(p)) === i || y === f || y === 34 || l.forceQuotes) {\n m = '\"' + m.replace(Ql, '\"\"') + '\"';\n break;\n }\n m == \"ID\" && u == 0 && x.length == 0 && (m = '\"ID\"');\n } else g.f != null && !g.F ? (h = !1, m = \"=\" + g.f, m.indexOf(\",\") >= 0 && (m = '\"' + m.replace(Ql, '\"\"') + '\"')) : m = \"\";\n x.push(m);\n }\n if (l.strip) for (; x[x.length - 1] === \"\"; ) --x.length;\n return l.blankrows === !1 && h ? null : x.join(c);\n}\nfunction Dh(e, t) {\n var r = [], n = t ?? {};\n if (e == null || e[\"!ref\"] == null) return \"\";\n for (var i = Br(e[\"!ref\"]), f = n.FS !== void 0 ? n.FS : \",\", c = f.charCodeAt(0), u = n.RS !== void 0 ? n.RS : `\n`, l = u.charCodeAt(0), h = \"\", x = [], m = n.skipHidden && e[\"!cols\"] || [], _ = n.skipHidden && e[\"!rows\"] || [], v = i.s.c; v <= i.e.c; ++v) (m[v] || {}).hidden || (x[v] = xr(v));\n for (var T = 0, A = i.s.r; A <= i.e.r; ++A)\n (_[A] || {}).hidden || (h = XF(e, i, A, x, c, l, f, T, n), h != null && (h || n.blankrows !== !1) && r.push((T++ ? u : \"\") + h));\n return r.join(\"\");\n}\nfunction $F(e, t) {\n t || (t = {}), t.FS = \"\t\", t.RS = `\n`;\n var r = Dh(e, t);\n return r;\n}\nfunction zF(e, t) {\n var r = \"\", n, i = \"\";\n if (e == null || e[\"!ref\"] == null) return [];\n var f = Br(e[\"!ref\"]), c = \"\", u = [], l, h = [], x = e[\"!data\"] != null;\n for (l = f.s.c; l <= f.e.c; ++l) u[l] = xr(l);\n for (var m = f.s.r; m <= f.e.r; ++m)\n for (c = _r(m), l = f.s.c; l <= f.e.c; ++l)\n if (r = u[l] + c, n = x ? (e[\"!data\"][m] || [])[l] : e[r], i = \"\", n !== void 0) {\n if (n.F != null) {\n if (r = n.F, !n.f) continue;\n i = n.f, r.indexOf(\":\") == -1 && (r = r + \":\" + r);\n }\n if (n.f != null) i = n.f;\n else {\n if (t && t.values === !1) continue;\n if (n.t == \"z\") continue;\n if (n.t == \"n\" && n.v != null) i = \"\" + n.v;\n else if (n.t == \"b\") i = n.v ? \"TRUE\" : \"FALSE\";\n else if (n.w !== void 0) i = \"'\" + n.w;\n else {\n if (n.v === void 0) continue;\n n.t == \"s\" ? i = \"'\" + n.v : i = \"\" + n.v;\n }\n }\n h[h.length] = r + \"=\" + i;\n }\n return h;\n}\nfunction Rh(e, t, r) {\n var n = r || {}, i = e ? e[\"!data\"] != null : n.dense, f = +!n.skipHeader, c = e || {};\n !e && i && (c[\"!data\"] = []);\n var u = 0, l = 0;\n if (c && n.origin != null)\n if (typeof n.origin == \"number\") u = n.origin;\n else {\n var h = typeof n.origin == \"string\" ? ot(n.origin) : n.origin;\n u = h.r, l = h.c;\n }\n var x = { s: { c: 0, r: 0 }, e: { c: l, r: u + t.length - 1 + f } };\n if (c[\"!ref\"]) {\n var m = Br(c[\"!ref\"]);\n x.e.c = Math.max(x.e.c, m.e.c), x.e.r = Math.max(x.e.r, m.e.r), u == -1 && (u = m.e.r + 1, x.e.r = u + t.length - 1 + f);\n } else\n u == -1 && (u = 0, x.e.r = t.length - 1 + f);\n var _ = n.header || [], v = 0, T = [];\n t.forEach(function(g, p) {\n i && !c[\"!data\"][u + p + f] && (c[\"!data\"][u + p + f] = []), i && (T = c[\"!data\"][u + p + f]), jt(g).forEach(function(y) {\n (v = _.indexOf(y)) == -1 && (_[v = _.length] = y);\n var w = g[y], P = \"z\", V = \"\", Z = i ? \"\" : xr(l + v) + _r(u + p + f), M = i ? T[l + v] : c[Z];\n w && typeof w == \"object\" && !(w instanceof Date) ? i ? T[l + v] = w : c[Z] = w : (typeof w == \"number\" ? P = \"n\" : typeof w == \"boolean\" ? P = \"b\" : typeof w == \"string\" ? P = \"s\" : w instanceof Date ? (P = \"d\", n.UTC || (w = hs(w)), n.cellDates || (P = \"n\", w = Kr(w)), V = M != null && M.z && la(M.z) ? M.z : n.dateNF || Xe[14]) : w === null && n.nullError && (P = \"e\", w = 0), M ? (M.t = P, M.v = w, delete M.w, delete M.R, V && (M.z = V)) : i ? T[l + v] = M = { t: P, v: w } : c[Z] = M = { t: P, v: w }, V && (M.z = V));\n });\n }), x.e.c = Math.max(x.e.c, l + _.length - 1);\n var A = _r(u);\n if (i && !c[\"!data\"][u] && (c[\"!data\"][u] = []), f) for (v = 0; v < _.length; ++v)\n i ? c[\"!data\"][u][v + l] = { t: \"s\", v: _[v] } : c[xr(v + l) + A] = { t: \"s\", v: _[v] };\n return c[\"!ref\"] = sr(x), c;\n}\nfunction KF(e, t) {\n return Rh(null, e, t);\n}\nfunction W0(e, t, r) {\n if (typeof t == \"string\") {\n if (e[\"!data\"] != null) {\n var n = ot(t);\n return e[\"!data\"][n.r] || (e[\"!data\"][n.r] = []), e[\"!data\"][n.r][n.c] || (e[\"!data\"][n.r][n.c] = { t: \"z\" });\n }\n return e[t] || (e[t] = { t: \"z\" });\n }\n return typeof t != \"number\" ? W0(e, hr(t)) : W0(e, xr(r || 0) + _r(t));\n}\nfunction YF(e, t) {\n if (typeof t == \"number\") {\n if (t >= 0 && e.SheetNames.length > t) return t;\n throw new Error(\"Cannot find sheet # \" + t);\n } else if (typeof t == \"string\") {\n var r = e.SheetNames.indexOf(t);\n if (r > -1) return r;\n throw new Error(\"Cannot find sheet name |\" + t + \"|\");\n } else throw new Error(\"Cannot find sheet |\" + t + \"|\");\n}\nfunction Cc(e, t) {\n var r = { SheetNames: [], Sheets: {} };\n return e && K0(r, e, t || \"Sheet1\"), r;\n}\nfunction K0(e, t, r, n) {\n var i = 1;\n if (!r) for (; i <= 65535 && e.SheetNames.indexOf(r = \"Sheet\" + i) != -1; ++i, r = void 0) ;\n if (!r || e.SheetNames.length >= 65535) throw new Error(\"Too many worksheets\");\n if (n && e.SheetNames.indexOf(r) >= 0 && r.length < 32) {\n var f = r.match(/\\d+$/);\n i = f && +f[0] || 0;\n var c = f && r.slice(0, f.index) || r;\n for (++i; i <= 65535 && e.SheetNames.indexOf(r = c + i) != -1; ++i) ;\n }\n if (IA(r), e.SheetNames.indexOf(r) >= 0) throw new Error(\"Worksheet with name |\" + r + \"| already exists!\");\n return e.SheetNames.push(r), e.Sheets[r] = t, r;\n}\nfunction ZF(e, t, r) {\n e.Workbook || (e.Workbook = {}), e.Workbook.Sheets || (e.Workbook.Sheets = []);\n var n = YF(e, t);\n switch (e.Workbook.Sheets[n] || (e.Workbook.Sheets[n] = {}), r) {\n case 0:\n case 1:\n case 2:\n break;\n default:\n throw new Error(\"Bad sheet visibility setting \" + r);\n }\n e.Workbook.Sheets[n].Hidden = r;\n}\nfunction JF(e, t) {\n return e.z = t, e;\n}\nfunction Nh(e, t, r) {\n return t ? (e.l = { Target: t }, r && (e.l.Tooltip = r)) : delete e.l, e;\n}\nfunction qF(e, t, r) {\n return Nh(e, \"#\" + t, r);\n}\nfunction QF(e, t, r) {\n e.c || (e.c = []), e.c.push({ t, a: r || \"SheetJS\" });\n}\nfunction jF(e, t, r, n) {\n for (var i = typeof t != \"string\" ? t : Br(t), f = typeof t == \"string\" ? t : sr(t), c = i.s.r; c <= i.e.r; ++c) for (var u = i.s.c; u <= i.e.c; ++u) {\n var l = W0(e, c, u);\n l.t = \"n\", l.F = f, delete l.v, c == i.s.r && u == i.s.c && (l.f = r, n && (l.D = !0));\n }\n var h = kn(e[\"!ref\"]);\n return h.s.r > i.s.r && (h.s.r = i.s.r), h.s.c > i.s.c && (h.s.c = i.s.c), h.e.r < i.e.r && (h.e.r = i.e.r), h.e.c < i.e.c && (h.e.c = i.e.c), e[\"!ref\"] = sr(h), e;\n}\nvar eS = {\n encode_col: xr,\n encode_row: _r,\n encode_cell: hr,\n encode_range: sr,\n decode_col: pc,\n decode_row: vc,\n split_cell: h4,\n decode_cell: ot,\n decode_range: kn,\n format_cell: Qa,\n sheet_new: d4,\n sheet_add_aoa: P1,\n sheet_add_json: Rh,\n sheet_add_dom: kh,\n aoa_to_sheet: Qn,\n json_to_sheet: KF,\n table_to_sheet: Ah,\n table_to_book: xF,\n sheet_to_csv: Dh,\n sheet_to_txt: $F,\n sheet_to_json: nc,\n sheet_to_html: hF,\n sheet_to_formulae: zF,\n sheet_to_row_object_array: nc,\n sheet_get_cell: W0,\n book_new: Cc,\n book_append_sheet: K0,\n book_set_sheet_visibility: ZF,\n cell_set_number_format: JF,\n cell_set_hyperlink: Nh,\n cell_set_internal_link: qF,\n cell_add_comment: QF,\n sheet_set_array_formula: jF,\n consts: {\n SHEET_VISIBLE: 0,\n SHEET_HIDDEN: 1,\n SHEET_VERY_HIDDEN: 2\n }\n};\nfunction nS(e) {\n const t = (e == null ? void 0 : e.cell) || \"\t\", r = (e == null ? void 0 : e.line) || `\\r\n`;\n function n(c) {\n return c.split(r).map((u) => u.split(t));\n }\n function i(c) {\n return new Promise((u) => {\n const l = new FileReader();\n l.onload = (h) => {\n var _;\n const x = (_ = h.target) == null ? void 0 : _.result, m = f(x);\n u(m);\n }, l.readAsArrayBuffer(c);\n });\n }\n function f(c) {\n const u = Zn(c, { type: \"binary\", cellDates: !0 }), l = {};\n return u.SheetNames.forEach((h) => {\n const x = u.Sheets[h], m = Object.keys(x).filter((T) => !T.startsWith(\"!\")).map((T) => T.replace(/\\d/g, \"\")), v = new Set(m).size;\n if (v) {\n const T = ji.range(0, v).map((g) => `${g}`), A = eS.sheet_to_json(x, { header: T });\n l[h] = A.map((g) => T.map((p) => g[p] || \"\"));\n }\n }), l;\n }\n return {\n fromText: n,\n fromFile: i\n };\n}\nexport {\n tS as useAuth,\n H_ as useCookies,\n aS as usePaster,\n nS as useXlsx\n};\n//# sourceMappingURL=morghulis-utils.es.js.map\n","/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress\n * @license MIT */\n\n;(function(root, factory) {\n\n if (typeof define === 'function' && define.amd) {\n define(factory);\n } else if (typeof exports === 'object') {\n module.exports = factory();\n } else {\n root.NProgress = factory();\n }\n\n})(this, function() {\n var NProgress = {};\n\n NProgress.version = '0.2.0';\n\n var Settings = NProgress.settings = {\n minimum: 0.08,\n easing: 'ease',\n positionUsing: '',\n speed: 200,\n trickle: true,\n trickleRate: 0.02,\n trickleSpeed: 800,\n showSpinner: true,\n barSelector: '[role=\"bar\"]',\n spinnerSelector: '[role=\"spinner\"]',\n parent: 'body',\n template: '<div class=\"bar\" role=\"bar\"><div class=\"peg\"></div></div><div class=\"spinner\" role=\"spinner\"><div class=\"spinner-icon\"></div></div>'\n };\n\n /**\n * Updates configuration.\n *\n * NProgress.configure({\n * minimum: 0.1\n * });\n */\n NProgress.configure = function(options) {\n var key, value;\n for (key in options) {\n value = options[key];\n if (value !== undefined && options.hasOwnProperty(key)) Settings[key] = value;\n }\n\n return this;\n };\n\n /**\n * Last number.\n */\n\n NProgress.status = null;\n\n /**\n * Sets the progress bar status, where `n` is a number from `0.0` to `1.0`.\n *\n * NProgress.set(0.4);\n * NProgress.set(1.0);\n */\n\n NProgress.set = function(n) {\n var started = NProgress.isStarted();\n\n n = clamp(n, Settings.minimum, 1);\n NProgress.status = (n === 1 ? null : n);\n\n var progress = NProgress.render(!started),\n bar = progress.querySelector(Settings.barSelector),\n speed = Settings.speed,\n ease = Settings.easing;\n\n progress.offsetWidth; /* Repaint */\n\n queue(function(next) {\n // Set positionUsing if it hasn't already been set\n if (Settings.positionUsing === '') Settings.positionUsing = NProgress.getPositioningCSS();\n\n // Add transition\n css(bar, barPositionCSS(n, speed, ease));\n\n if (n === 1) {\n // Fade out\n css(progress, { \n transition: 'none', \n opacity: 1 \n });\n progress.offsetWidth; /* Repaint */\n\n setTimeout(function() {\n css(progress, { \n transition: 'all ' + speed + 'ms linear', \n opacity: 0 \n });\n setTimeout(function() {\n NProgress.remove();\n next();\n }, speed);\n }, speed);\n } else {\n setTimeout(next, speed);\n }\n });\n\n return this;\n };\n\n NProgress.isStarted = function() {\n return typeof NProgress.status === 'number';\n };\n\n /**\n * Shows the progress bar.\n * This is the same as setting the status to 0%, except that it doesn't go backwards.\n *\n * NProgress.start();\n *\n */\n NProgress.start = function() {\n if (!NProgress.status) NProgress.set(0);\n\n var work = function() {\n setTimeout(function() {\n if (!NProgress.status) return;\n NProgress.trickle();\n work();\n }, Settings.trickleSpeed);\n };\n\n if (Settings.trickle) work();\n\n return this;\n };\n\n /**\n * Hides the progress bar.\n * This is the *sort of* the same as setting the status to 100%, with the\n * difference being `done()` makes some placebo effect of some realistic motion.\n *\n * NProgress.done();\n *\n * If `true` is passed, it will show the progress bar even if its hidden.\n *\n * NProgress.done(true);\n */\n\n NProgress.done = function(force) {\n if (!force && !NProgress.status) return this;\n\n return NProgress.inc(0.3 + 0.5 * Math.random()).set(1);\n };\n\n /**\n * Increments by a random amount.\n */\n\n NProgress.inc = function(amount) {\n var n = NProgress.status;\n\n if (!n) {\n return NProgress.start();\n } else {\n if (typeof amount !== 'number') {\n amount = (1 - n) * clamp(Math.random() * n, 0.1, 0.95);\n }\n\n n = clamp(n + amount, 0, 0.994);\n return NProgress.set(n);\n }\n };\n\n NProgress.trickle = function() {\n return NProgress.inc(Math.random() * Settings.trickleRate);\n };\n\n /**\n * Waits for all supplied jQuery promises and\n * increases the progress as the promises resolve.\n *\n * @param $promise jQUery Promise\n */\n (function() {\n var initial = 0, current = 0;\n\n NProgress.promise = function($promise) {\n if (!$promise || $promise.state() === \"resolved\") {\n return this;\n }\n\n if (current === 0) {\n NProgress.start();\n }\n\n initial++;\n current++;\n\n $promise.always(function() {\n current--;\n if (current === 0) {\n initial = 0;\n NProgress.done();\n } else {\n NProgress.set((initial - current) / initial);\n }\n });\n\n return this;\n };\n\n })();\n\n /**\n * (Internal) renders the progress bar markup based on the `template`\n * setting.\n */\n\n NProgress.render = function(fromStart) {\n if (NProgress.isRendered()) return document.getElementById('nprogress');\n\n addClass(document.documentElement, 'nprogress-busy');\n \n var progress = document.createElement('div');\n progress.id = 'nprogress';\n progress.innerHTML = Settings.template;\n\n var bar = progress.querySelector(Settings.barSelector),\n perc = fromStart ? '-100' : toBarPerc(NProgress.status || 0),\n parent = document.querySelector(Settings.parent),\n spinner;\n \n css(bar, {\n transition: 'all 0 linear',\n transform: 'translate3d(' + perc + '%,0,0)'\n });\n\n if (!Settings.showSpinner) {\n spinner = progress.querySelector(Settings.spinnerSelector);\n spinner && removeElement(spinner);\n }\n\n if (parent != document.body) {\n addClass(parent, 'nprogress-custom-parent');\n }\n\n parent.appendChild(progress);\n return progress;\n };\n\n /**\n * Removes the element. Opposite of render().\n */\n\n NProgress.remove = function() {\n removeClass(document.documentElement, 'nprogress-busy');\n removeClass(document.querySelector(Settings.parent), 'nprogress-custom-parent');\n var progress = document.getElementById('nprogress');\n progress && removeElement(progress);\n };\n\n /**\n * Checks if the progress bar is rendered.\n */\n\n NProgress.isRendered = function() {\n return !!document.getElementById('nprogress');\n };\n\n /**\n * Determine which positioning CSS rule to use.\n */\n\n NProgress.getPositioningCSS = function() {\n // Sniff on document.body.style\n var bodyStyle = document.body.style;\n\n // Sniff prefixes\n var vendorPrefix = ('WebkitTransform' in bodyStyle) ? 'Webkit' :\n ('MozTransform' in bodyStyle) ? 'Moz' :\n ('msTransform' in bodyStyle) ? 'ms' :\n ('OTransform' in bodyStyle) ? 'O' : '';\n\n if (vendorPrefix + 'Perspective' in bodyStyle) {\n // Modern browsers with 3D support, e.g. Webkit, IE10\n return 'translate3d';\n } else if (vendorPrefix + 'Transform' in bodyStyle) {\n // Browsers without 3D support, e.g. IE9\n return 'translate';\n } else {\n // Browsers without translate() support, e.g. IE7-8\n return 'margin';\n }\n };\n\n /**\n * Helpers\n */\n\n function clamp(n, min, max) {\n if (n < min) return min;\n if (n > max) return max;\n return n;\n }\n\n /**\n * (Internal) converts a percentage (`0..1`) to a bar translateX\n * percentage (`-100%..0%`).\n */\n\n function toBarPerc(n) {\n return (-1 + n) * 100;\n }\n\n\n /**\n * (Internal) returns the correct CSS for changing the bar's\n * position given an n percentage, and speed and ease from Settings\n */\n\n function barPositionCSS(n, speed, ease) {\n var barCSS;\n\n if (Settings.positionUsing === 'translate3d') {\n barCSS = { transform: 'translate3d('+toBarPerc(n)+'%,0,0)' };\n } else if (Settings.positionUsing === 'translate') {\n barCSS = { transform: 'translate('+toBarPerc(n)+'%,0)' };\n } else {\n barCSS = { 'margin-left': toBarPerc(n)+'%' };\n }\n\n barCSS.transition = 'all '+speed+'ms '+ease;\n\n return barCSS;\n }\n\n /**\n * (Internal) Queues a function to be executed.\n */\n\n var queue = (function() {\n var pending = [];\n \n function next() {\n var fn = pending.shift();\n if (fn) {\n fn(next);\n }\n }\n\n return function(fn) {\n pending.push(fn);\n if (pending.length == 1) next();\n };\n })();\n\n /**\n * (Internal) Applies css properties to an element, similar to the jQuery \n * css method.\n *\n * While this helper does assist with vendor prefixed property names, it \n * does not perform any manipulation of values prior to setting styles.\n */\n\n var css = (function() {\n var cssPrefixes = [ 'Webkit', 'O', 'Moz', 'ms' ],\n cssProps = {};\n\n function camelCase(string) {\n return string.replace(/^-ms-/, 'ms-').replace(/-([\\da-z])/gi, function(match, letter) {\n return letter.toUpperCase();\n });\n }\n\n function getVendorProp(name) {\n var style = document.body.style;\n if (name in style) return name;\n\n var i = cssPrefixes.length,\n capName = name.charAt(0).toUpperCase() + name.slice(1),\n vendorName;\n while (i--) {\n vendorName = cssPrefixes[i] + capName;\n if (vendorName in style) return vendorName;\n }\n\n return name;\n }\n\n function getStyleProp(name) {\n name = camelCase(name);\n return cssProps[name] || (cssProps[name] = getVendorProp(name));\n }\n\n function applyCss(element, prop, value) {\n prop = getStyleProp(prop);\n element.style[prop] = value;\n }\n\n return function(element, properties) {\n var args = arguments,\n prop, \n value;\n\n if (args.length == 2) {\n for (prop in properties) {\n value = properties[prop];\n if (value !== undefined && properties.hasOwnProperty(prop)) applyCss(element, prop, value);\n }\n } else {\n applyCss(element, args[1], args[2]);\n }\n }\n })();\n\n /**\n * (Internal) Determines if an element or space separated list of class names contains a class name.\n */\n\n function hasClass(element, name) {\n var list = typeof element == 'string' ? element : classList(element);\n return list.indexOf(' ' + name + ' ') >= 0;\n }\n\n /**\n * (Internal) Adds a class to an element.\n */\n\n function addClass(element, name) {\n var oldList = classList(element),\n newList = oldList + name;\n\n if (hasClass(oldList, name)) return; \n\n // Trim the opening space.\n element.className = newList.substring(1);\n }\n\n /**\n * (Internal) Removes a class from an element.\n */\n\n function removeClass(element, name) {\n var oldList = classList(element),\n newList;\n\n if (!hasClass(element, name)) return;\n\n // Replace the class name.\n newList = oldList.replace(' ' + name + ' ', ' ');\n\n // Trim the opening and closing spaces.\n element.className = newList.substring(1, newList.length - 1);\n }\n\n /**\n * (Internal) Gets a space separated list of the class names on the element. \n * The list is wrapped with a single space on each end to facilitate finding \n * matches within the list.\n */\n\n function classList(element) {\n return (' ' + (element.className || '') + ' ').replace(/\\s+/gi, ' ');\n }\n\n /**\n * (Internal) Removes an element from the DOM.\n */\n\n function removeElement(element) {\n element && element.parentNode && element.parentNode.removeChild(element);\n }\n\n return NProgress;\n});\n\n","import axios, {AxiosInstance} from 'axios'\nimport 'nprogress/nprogress.css'\nimport {inject} from \"vue\";\nimport {Options} from \"../types\";\nimport {useAuth} from \"@morghulis/utils\";\nimport NProgress from \"nprogress\";\n\nexport function useRequest() {\n\n const {$client, getUserInfo, setUserInfo, checkUserInfo, logout, bearer, keys} = useAuth()\n const {baseURL, $$message} = inject('options') as Options\n\n function getHttpRequest(auth?: boolean): AxiosInstance {\n const instance = axios.create({baseURL})\n const {request, response} = instance.interceptors\n request.use((config) => {\n NProgress.start()\n config.headers[keys.client] = $client\n config.headers[keys.user] = getUserInfo()\n config.headers[keys.bearer] = bearer()\n return config\n }, onReject)\n response.use(({headers, data}) => {\n NProgress.done()\n const userKey = headers[keys.user]\n const bearer = headers[keys.bearer]\n const valid = (auth && userKey && bearer && checkUserInfo(userKey)) || !auth\n if (valid) {\n const {valar_message, valar_code} = headers\n if (valar_message) $$message(valar_message, valar_code)\n return data\n } else {\n logout()\n return Promise.reject(new Error('Unauthorized Request'))\n }\n }, onReject)\n return instance\n }\n\n\n function onReject(error: Error) {\n NProgress.done()\n return error\n }\n\n\n function download(path: string) {\n read(path)\n .then(({blob, fileName}) => {\n const a = document.createElement('a')\n a.download = fileName\n a.style.display = 'none'\n a.href = URL.createObjectURL(blob)\n document.body.appendChild(a)\n a.click()\n URL.revokeObjectURL(a.href)\n document.body.removeChild(a)\n })\n }\n\n function read(path: string): Promise<{ blob: Blob, fileName: string }> {\n return new Promise(resolve => {\n const request = axios.create({baseURL, responseType: 'blob'})\n const url = `/data/find_file/${path}`\n request.get(url)\n .then(res => {\n let {headers, data} = res\n const fileName = headers['content-disposition'].split('filename=')[1].replace(/\"/g, '')\n resolve({\n blob: data as Blob,\n fileName: decodeURIComponent(fileName)\n })\n })\n })\n }\n\n function all(mapping: { [key: string]: Promise<any> }): Promise<{ [key: string]: any }> {\n const $mapping: any = {}\n const keys: any[] = []\n const values: Promise<any>[] = []\n Object.entries(mapping)\n .forEach(([k, v]) => {\n if (v instanceof Promise) {\n keys.push(k)\n values.push(v)\n } else {\n $mapping[k] = v\n }\n })\n return new Promise(resolve => {\n axios.all(values)\n .then((array: any[]) => {\n keys.forEach((key, i) => {\n $mapping[key] = array[i]\n })\n resolve($mapping)\n })\n })\n }\n\n return {getHttpRequest, download, all, read}\n}\n\n","import {reactive, Reactive} from \"vue\";\nimport {ChannelConfig, ChannelStatus} from \"./types\";\nimport {AxiosInstance} from \"axios\";\nimport {useRequest} from \"../use-request\";\n\nconst $status = {\n loading: false,\n payload: null\n}\n\n\nexport default class Channel {\n private config: ChannelConfig\n public status: Reactive<ChannelStatus> = reactive<ChannelStatus>($status)\n\n public handlerKey: string\n public channelKey: string\n public url: string\n public request: AxiosInstance\n\n constructor(config: ChannelConfig) {\n this.config = config\n this.handlerKey = config.handlerKey\n this.channelKey = config.channelKey\n this.url = config.url\n const {getHttpRequest} = useRequest()\n this.request = getHttpRequest(config.auth)\n }\n\n execute(data: any = {}) {\n const body = {data, handlerKey: this.handlerKey, channelKey: this.channelKey}\n this.request.post(this.url, body).then(() => this.ready())\n }\n\n ready() {\n this.status.loading = true\n this.status.payload = null\n }\n\n start() {\n this.config?.onStart && this.config.onStart()\n }\n\n proceed(data: any) {\n this.status.payload = data\n this.config?.onProceed && this.config.onProceed(data)\n }\n\n stop() {\n this.status.loading = false\n this.status.payload = null\n this.config?.onStop && this.config.onStop()\n }\n\n}\n","import {ChannelConfig, ChannelContainer} from \"./types\";\nimport Channel from \"./Channel\";\n\nexport default class ChannelHub {\n container: ChannelContainer\n\n constructor() {\n this.container = {}\n }\n\n loadChannel(handlerKey: string, channelKey: string): Promise<Channel> {\n return new Promise<Channel>((resolve, reject) => {\n const handler = this.container[handlerKey] || {}\n const channel = handler[channelKey] as Channel\n if (channel) {\n resolve(channel)\n } else {\n const message = `channel \"${handlerKey}/${channelKey}\" not exists`\n reject(new Error(message))\n }\n })\n }\n\n destroy(handlerKey: string, channelKey: string) {\n if (this.container[handlerKey]) {\n Reflect.deleteProperty(this.container[handlerKey], channelKey)\n }\n }\n\n register(config: ChannelConfig): Channel {\n const {handlerKey, channelKey} = config\n const handler = this.container[handlerKey] || {}\n const channel = new Channel(config)\n handler[channelKey] = channel\n this.container[handlerKey] = handler\n return channel\n }\n\n\n}\n","import { shallowRef, watchEffect, readonly, watch, customRef, getCurrentScope, onScopeDispose, effectScope, getCurrentInstance, hasInjectionContext, inject, provide, ref, isRef, unref, toValue as toValue$1, computed, reactive, toRefs as toRefs$1, toRef as toRef$1, shallowReadonly, onBeforeMount, nextTick, onBeforeUnmount, onMounted, onUnmounted, isReactive } from 'vue';\n\nfunction computedEager(fn, options) {\n var _a;\n const result = shallowRef();\n watchEffect(() => {\n result.value = fn();\n }, {\n ...options,\n flush: (_a = options == null ? void 0 : options.flush) != null ? _a : \"sync\"\n });\n return readonly(result);\n}\n\nfunction computedWithControl(source, fn, options = {}) {\n let v = void 0;\n let track;\n let trigger;\n let dirty = true;\n const update = () => {\n dirty = true;\n trigger();\n };\n watch(source, update, { flush: \"sync\", ...options });\n const get = typeof fn === \"function\" ? fn : fn.get;\n const set = typeof fn === \"function\" ? void 0 : fn.set;\n const result = customRef((_track, _trigger) => {\n track = _track;\n trigger = _trigger;\n return {\n get() {\n if (dirty) {\n v = get(v);\n dirty = false;\n }\n track();\n return v;\n },\n set(v2) {\n set == null ? void 0 : set(v2);\n }\n };\n });\n result.trigger = update;\n return result;\n}\n\nfunction tryOnScopeDispose(fn) {\n if (getCurrentScope()) {\n onScopeDispose(fn);\n return true;\n }\n return false;\n}\n\nfunction createEventHook() {\n const fns = /* @__PURE__ */ new Set();\n const off = (fn) => {\n fns.delete(fn);\n };\n const clear = () => {\n fns.clear();\n };\n const on = (fn) => {\n fns.add(fn);\n const offFn = () => off(fn);\n tryOnScopeDispose(offFn);\n return {\n off: offFn\n };\n };\n const trigger = (...args) => {\n return Promise.all(Array.from(fns).map((fn) => fn(...args)));\n };\n return {\n on,\n off,\n trigger,\n clear\n };\n}\n\nfunction createGlobalState(stateFactory) {\n let initialized = false;\n let state;\n const scope = effectScope(true);\n return (...args) => {\n if (!initialized) {\n state = scope.run(() => stateFactory(...args));\n initialized = true;\n }\n return state;\n };\n}\n\nconst localProvidedStateMap = /* @__PURE__ */ new WeakMap();\n\nconst injectLocal = (...args) => {\n var _a;\n const key = args[0];\n const instance = (_a = getCurrentInstance()) == null ? void 0 : _a.proxy;\n if (instance == null && !hasInjectionContext())\n throw new Error(\"injectLocal must be called in setup\");\n if (instance && localProvidedStateMap.has(instance) && key in localProvidedStateMap.get(instance))\n return localProvidedStateMap.get(instance)[key];\n return inject(...args);\n};\n\nfunction provideLocal(key, value) {\n var _a;\n const instance = (_a = getCurrentInstance()) == null ? void 0 : _a.proxy;\n if (instance == null)\n throw new Error(\"provideLocal must be called in setup\");\n if (!localProvidedStateMap.has(instance))\n localProvidedStateMap.set(instance, /* @__PURE__ */ Object.create(null));\n const localProvidedState = localProvidedStateMap.get(instance);\n localProvidedState[key] = value;\n return provide(key, value);\n}\n\nfunction createInjectionState(composable, options) {\n const key = (options == null ? void 0 : options.injectionKey) || Symbol(composable.name || \"InjectionState\");\n const defaultValue = options == null ? void 0 : options.defaultValue;\n const useProvidingState = (...args) => {\n const state = composable(...args);\n provideLocal(key, state);\n return state;\n };\n const useInjectedState = () => injectLocal(key, defaultValue);\n return [useProvidingState, useInjectedState];\n}\n\nfunction createRef(value, deep) {\n if (deep === true) {\n return ref(value);\n } else {\n return shallowRef(value);\n }\n}\n\nfunction createSharedComposable(composable) {\n let subscribers = 0;\n let state;\n let scope;\n const dispose = () => {\n subscribers -= 1;\n if (scope && subscribers <= 0) {\n scope.stop();\n state = void 0;\n scope = void 0;\n }\n };\n return (...args) => {\n subscribers += 1;\n if (!scope) {\n scope = effectScope(true);\n state = scope.run(() => composable(...args));\n }\n tryOnScopeDispose(dispose);\n return state;\n };\n}\n\nfunction extendRef(ref, extend, { enumerable = false, unwrap = true } = {}) {\n for (const [key, value] of Object.entries(extend)) {\n if (key === \"value\")\n continue;\n if (isRef(value) && unwrap) {\n Object.defineProperty(ref, key, {\n get() {\n return value.value;\n },\n set(v) {\n value.value = v;\n },\n enumerable\n });\n } else {\n Object.defineProperty(ref, key, { value, enumerable });\n }\n }\n return ref;\n}\n\nfunction get(obj, key) {\n if (key == null)\n return unref(obj);\n return unref(obj)[key];\n}\n\nfunction isDefined(v) {\n return unref(v) != null;\n}\n\nfunction makeDestructurable(obj, arr) {\n if (typeof Symbol !== \"undefined\") {\n const clone = { ...obj };\n Object.defineProperty(clone, Symbol.iterator, {\n enumerable: false,\n value() {\n let index = 0;\n return {\n next: () => ({\n value: arr[index++],\n done: index > arr.length\n })\n };\n }\n });\n return clone;\n } else {\n return Object.assign([...arr], obj);\n }\n}\n\nfunction reactify(fn, options) {\n const unrefFn = (options == null ? void 0 : options.computedGetter) === false ? unref : toValue$1;\n return function(...args) {\n return computed(() => fn.apply(this, args.map((i) => unrefFn(i))));\n };\n}\n\nfunction reactifyObject(obj, optionsOrKeys = {}) {\n let keys = [];\n let options;\n if (Array.isArray(optionsOrKeys)) {\n keys = optionsOrKeys;\n } else {\n options = optionsOrKeys;\n const { includeOwnProperties = true } = optionsOrKeys;\n keys.push(...Object.keys(obj));\n if (includeOwnProperties)\n keys.push(...Object.getOwnPropertyNames(obj));\n }\n return Object.fromEntries(\n keys.map((key) => {\n const value = obj[key];\n return [\n key,\n typeof value === \"function\" ? reactify(value.bind(obj), options) : value\n ];\n })\n );\n}\n\nfunction toReactive(objectRef) {\n if (!isRef(objectRef))\n return reactive(objectRef);\n const proxy = new Proxy({}, {\n get(_, p, receiver) {\n return unref(Reflect.get(objectRef.value, p, receiver));\n },\n set(_, p, value) {\n if (isRef(objectRef.value[p]) && !isRef(value))\n objectRef.value[p].value = value;\n else\n objectRef.value[p] = value;\n return true;\n },\n deleteProperty(_, p) {\n return Reflect.deleteProperty(objectRef.value, p);\n },\n has(_, p) {\n return Reflect.has(objectRef.value, p);\n },\n ownKeys() {\n return Object.keys(objectRef.value);\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true\n };\n }\n });\n return reactive(proxy);\n}\n\nfunction reactiveComputed(fn) {\n return toReactive(computed(fn));\n}\n\nfunction reactiveOmit(obj, ...keys) {\n const flatKeys = keys.flat();\n const predicate = flatKeys[0];\n return reactiveComputed(() => typeof predicate === \"function\" ? Object.fromEntries(Object.entries(toRefs$1(obj)).filter(([k, v]) => !predicate(toValue$1(v), k))) : Object.fromEntries(Object.entries(toRefs$1(obj)).filter((e) => !flatKeys.includes(e[0]))));\n}\n\nconst isClient = typeof window !== \"undefined\" && typeof document !== \"undefined\";\nconst isWorker = typeof WorkerGlobalScope !== \"undefined\" && globalThis instanceof WorkerGlobalScope;\nconst isDef = (val) => typeof val !== \"undefined\";\nconst notNullish = (val) => val != null;\nconst assert = (condition, ...infos) => {\n if (!condition)\n console.warn(...infos);\n};\nconst toString = Object.prototype.toString;\nconst isObject = (val) => toString.call(val) === \"[object Object]\";\nconst now = () => Date.now();\nconst timestamp = () => +Date.now();\nconst clamp = (n, min, max) => Math.min(max, Math.max(min, n));\nconst noop = () => {\n};\nconst rand = (min, max) => {\n min = Math.ceil(min);\n max = Math.floor(max);\n return Math.floor(Math.random() * (max - min + 1)) + min;\n};\nconst hasOwn = (val, key) => Object.prototype.hasOwnProperty.call(val, key);\nconst isIOS = /* @__PURE__ */ getIsIOS();\nfunction getIsIOS() {\n var _a, _b;\n return isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && (/iP(?:ad|hone|od)/.test(window.navigator.userAgent) || ((_b = window == null ? void 0 : window.navigator) == null ? void 0 : _b.maxTouchPoints) > 2 && /iPad|Macintosh/.test(window == null ? void 0 : window.navigator.userAgent));\n}\n\nfunction toRef(...args) {\n if (args.length !== 1)\n return toRef$1(...args);\n const r = args[0];\n return typeof r === \"function\" ? readonly(customRef(() => ({ get: r, set: noop }))) : ref(r);\n}\nconst resolveRef = toRef;\n\nfunction reactivePick(obj, ...keys) {\n const flatKeys = keys.flat();\n const predicate = flatKeys[0];\n return reactiveComputed(() => typeof predicate === \"function\" ? Object.fromEntries(Object.entries(toRefs$1(obj)).filter(([k, v]) => predicate(toValue$1(v), k))) : Object.fromEntries(flatKeys.map((k) => [k, toRef(obj, k)])));\n}\n\nfunction refAutoReset(defaultValue, afterMs = 1e4) {\n return customRef((track, trigger) => {\n let value = toValue$1(defaultValue);\n let timer;\n const resetAfter = () => setTimeout(() => {\n value = toValue$1(defaultValue);\n trigger();\n }, toValue$1(afterMs));\n tryOnScopeDispose(() => {\n clearTimeout(timer);\n });\n return {\n get() {\n track();\n return value;\n },\n set(newValue) {\n value = newValue;\n trigger();\n clearTimeout(timer);\n timer = resetAfter();\n }\n };\n });\n}\n\nfunction createFilterWrapper(filter, fn) {\n function wrapper(...args) {\n return new Promise((resolve, reject) => {\n Promise.resolve(filter(() => fn.apply(this, args), { fn, thisArg: this, args })).then(resolve).catch(reject);\n });\n }\n return wrapper;\n}\nconst bypassFilter = (invoke) => {\n return invoke();\n};\nfunction debounceFilter(ms, options = {}) {\n let timer;\n let maxTimer;\n let lastRejector = noop;\n const _clearTimeout = (timer2) => {\n clearTimeout(timer2);\n lastRejector();\n lastRejector = noop;\n };\n let lastInvoker;\n const filter = (invoke) => {\n const duration = toValue$1(ms);\n const maxDuration = toValue$1(options.maxWait);\n if (timer)\n _clearTimeout(timer);\n if (duration <= 0 || maxDuration !== void 0 && maxDuration <= 0) {\n if (maxTimer) {\n _clearTimeout(maxTimer);\n maxTimer = void 0;\n }\n return Promise.resolve(invoke());\n }\n return new Promise((resolve, reject) => {\n lastRejector = options.rejectOnCancel ? reject : resolve;\n lastInvoker = invoke;\n if (maxDuration && !maxTimer) {\n maxTimer = setTimeout(() => {\n if (timer)\n _clearTimeout(timer);\n maxTimer = void 0;\n resolve(lastInvoker());\n }, maxDuration);\n }\n timer = setTimeout(() => {\n if (maxTimer)\n _clearTimeout(maxTimer);\n maxTimer = void 0;\n resolve(invoke());\n }, duration);\n });\n };\n return filter;\n}\nfunction throttleFilter(...args) {\n let lastExec = 0;\n let timer;\n let isLeading = true;\n let lastRejector = noop;\n let lastValue;\n let ms;\n let trailing;\n let leading;\n let rejectOnCancel;\n if (!isRef(args[0]) && typeof args[0] === \"object\")\n ({ delay: ms, trailing = true, leading = true, rejectOnCancel = false } = args[0]);\n else\n [ms, trailing = true, leading = true, rejectOnCancel = false] = args;\n const clear = () => {\n if (timer) {\n clearTimeout(timer);\n timer = void 0;\n lastRejector();\n lastRejector = noop;\n }\n };\n const filter = (_invoke) => {\n const duration = toValue$1(ms);\n const elapsed = Date.now() - lastExec;\n const invoke = () => {\n return lastValue = _invoke();\n };\n clear();\n if (duration <= 0) {\n lastExec = Date.now();\n return invoke();\n }\n if (elapsed > duration && (leading || !isLeading)) {\n lastExec = Date.now();\n invoke();\n } else if (trailing) {\n lastValue = new Promise((resolve, reject) => {\n lastRejector = rejectOnCancel ? reject : resolve;\n timer = setTimeout(() => {\n lastExec = Date.now();\n isLeading = true;\n resolve(invoke());\n clear();\n }, Math.max(0, duration - elapsed));\n });\n }\n if (!leading && !timer)\n timer = setTimeout(() => isLeading = true, duration);\n isLeading = false;\n return lastValue;\n };\n return filter;\n}\nfunction pausableFilter(extendFilter = bypassFilter, options = {}) {\n const {\n initialState = \"active\"\n } = options;\n const isActive = toRef(initialState === \"active\");\n function pause() {\n isActive.value = false;\n }\n function resume() {\n isActive.value = true;\n }\n const eventFilter = (...args) => {\n if (isActive.value)\n extendFilter(...args);\n };\n return { isActive: readonly(isActive), pause, resume, eventFilter };\n}\n\nfunction promiseTimeout(ms, throwOnTimeout = false, reason = \"Timeout\") {\n return new Promise((resolve, reject) => {\n if (throwOnTimeout)\n setTimeout(() => reject(reason), ms);\n else\n setTimeout(resolve, ms);\n });\n}\nfunction identity(arg) {\n return arg;\n}\nfunction createSingletonPromise(fn) {\n let _promise;\n function wrapper() {\n if (!_promise)\n _promise = fn();\n return _promise;\n }\n wrapper.reset = async () => {\n const _prev = _promise;\n _promise = void 0;\n if (_prev)\n await _prev;\n };\n return wrapper;\n}\nfunction invoke(fn) {\n return fn();\n}\nfunction containsProp(obj, ...props) {\n return props.some((k) => k in obj);\n}\nfunction increaseWithUnit(target, delta) {\n var _a;\n if (typeof target === \"number\")\n return target + delta;\n const value = ((_a = target.match(/^-?\\d+\\.?\\d*/)) == null ? void 0 : _a[0]) || \"\";\n const unit = target.slice(value.length);\n const result = Number.parseFloat(value) + delta;\n if (Number.isNaN(result))\n return target;\n return result + unit;\n}\nfunction pxValue(px) {\n return px.endsWith(\"rem\") ? Number.parseFloat(px) * 16 : Number.parseFloat(px);\n}\nfunction objectPick(obj, keys, omitUndefined = false) {\n return keys.reduce((n, k) => {\n if (k in obj) {\n if (!omitUndefined || obj[k] !== void 0)\n n[k] = obj[k];\n }\n return n;\n }, {});\n}\nfunction objectOmit(obj, keys, omitUndefined = false) {\n return Object.fromEntries(Object.entries(obj).filter(([key, value]) => {\n return (!omitUndefined || value !== void 0) && !keys.includes(key);\n }));\n}\nfunction objectEntries(obj) {\n return Object.entries(obj);\n}\nfunction toArray(value) {\n return Array.isArray(value) ? value : [value];\n}\n\nfunction cacheStringFunction(fn) {\n const cache = /* @__PURE__ */ Object.create(null);\n return (str) => {\n const hit = cache[str];\n return hit || (cache[str] = fn(str));\n };\n}\nconst hyphenateRE = /\\B([A-Z])/g;\nconst hyphenate = cacheStringFunction((str) => str.replace(hyphenateRE, \"-$1\").toLowerCase());\nconst camelizeRE = /-(\\w)/g;\nconst camelize = cacheStringFunction((str) => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : \"\");\n});\n\nfunction getLifeCycleTarget(target) {\n return target || getCurrentInstance();\n}\n\nfunction useDebounceFn(fn, ms = 200, options = {}) {\n return createFilterWrapper(\n debounceFilter(ms, options),\n fn\n );\n}\n\nfunction refDebounced(value, ms = 200, options = {}) {\n const debounced = ref(toValue$1(value));\n const updater = useDebounceFn(() => {\n debounced.value = value.value;\n }, ms, options);\n watch(value, () => updater());\n return shallowReadonly(debounced);\n}\n\nfunction refDefault(source, defaultValue) {\n return computed({\n get() {\n var _a;\n return (_a = source.value) != null ? _a : defaultValue;\n },\n set(value) {\n source.value = value;\n }\n });\n}\n\nfunction useThrottleFn(fn, ms = 200, trailing = false, leading = true, rejectOnCancel = false) {\n return createFilterWrapper(\n throttleFilter(ms, trailing, leading, rejectOnCancel),\n fn\n );\n}\n\nfunction refThrottled(value, delay = 200, trailing = true, leading = true) {\n if (delay <= 0)\n return value;\n const throttled = ref(toValue$1(value));\n const updater = useThrottleFn(() => {\n throttled.value = value.value;\n }, delay, trailing, leading);\n watch(value, () => updater());\n return throttled;\n}\n\nfunction refWithControl(initial, options = {}) {\n let source = initial;\n let track;\n let trigger;\n const ref = customRef((_track, _trigger) => {\n track = _track;\n trigger = _trigger;\n return {\n get() {\n return get();\n },\n set(v) {\n set(v);\n }\n };\n });\n function get(tracking = true) {\n if (tracking)\n track();\n return source;\n }\n function set(value, triggering = true) {\n var _a, _b;\n if (value === source)\n return;\n const old = source;\n if (((_a = options.onBeforeChange) == null ? void 0 : _a.call(options, value, old)) === false)\n return;\n source = value;\n (_b = options.onChanged) == null ? void 0 : _b.call(options, value, old);\n if (triggering)\n trigger();\n }\n const untrackedGet = () => get(false);\n const silentSet = (v) => set(v, false);\n const peek = () => get(false);\n const lay = (v) => set(v, false);\n return extendRef(\n ref,\n {\n get,\n set,\n untrackedGet,\n silentSet,\n peek,\n lay\n },\n { enumerable: true }\n );\n}\nconst controlledRef = refWithControl;\n\nfunction set(...args) {\n if (args.length === 2) {\n const [ref, value] = args;\n ref.value = value;\n }\n if (args.length === 3) {\n const [target, key, value] = args;\n target[key] = value;\n }\n}\n\nfunction watchWithFilter(source, cb, options = {}) {\n const {\n eventFilter = bypassFilter,\n ...watchOptions\n } = options;\n return watch(\n source,\n createFilterWrapper(\n eventFilter,\n cb\n ),\n watchOptions\n );\n}\n\nfunction watchPausable(source, cb, options = {}) {\n const {\n eventFilter: filter,\n initialState = \"active\",\n ...watchOptions\n } = options;\n const { eventFilter, pause, resume, isActive } = pausableFilter(filter, { initialState });\n const stop = watchWithFilter(\n source,\n cb,\n {\n ...watchOptions,\n eventFilter\n }\n );\n return { stop, pause, resume, isActive };\n}\n\nfunction syncRef(left, right, ...[options]) {\n const {\n flush = \"sync\",\n deep = false,\n immediate = true,\n direction = \"both\",\n transform = {}\n } = options || {};\n const watchers = [];\n const transformLTR = \"ltr\" in transform && transform.ltr || ((v) => v);\n const transformRTL = \"rtl\" in transform && transform.rtl || ((v) => v);\n if (direction === \"both\" || direction === \"ltr\") {\n watchers.push(watchPausable(\n left,\n (newValue) => {\n watchers.forEach((w) => w.pause());\n right.value = transformLTR(newValue);\n watchers.forEach((w) => w.resume());\n },\n { flush, deep, immediate }\n ));\n }\n if (direction === \"both\" || direction === \"rtl\") {\n watchers.push(watchPausable(\n right,\n (newValue) => {\n watchers.forEach((w) => w.pause());\n left.value = transformRTL(newValue);\n watchers.forEach((w) => w.resume());\n },\n { flush, deep, immediate }\n ));\n }\n const stop = () => {\n watchers.forEach((w) => w.stop());\n };\n return stop;\n}\n\nfunction syncRefs(source, targets, options = {}) {\n const {\n flush = \"sync\",\n deep = false,\n immediate = true\n } = options;\n const targetsArray = toArray(targets);\n return watch(\n source,\n (newValue) => targetsArray.forEach((target) => target.value = newValue),\n { flush, deep, immediate }\n );\n}\n\nfunction toRefs(objectRef, options = {}) {\n if (!isRef(objectRef))\n return toRefs$1(objectRef);\n const result = Array.isArray(objectRef.value) ? Array.from({ length: objectRef.value.length }) : {};\n for (const key in objectRef.value) {\n result[key] = customRef(() => ({\n get() {\n return objectRef.value[key];\n },\n set(v) {\n var _a;\n const replaceRef = (_a = toValue$1(options.replaceRef)) != null ? _a : true;\n if (replaceRef) {\n if (Array.isArray(objectRef.value)) {\n const copy = [...objectRef.value];\n copy[key] = v;\n objectRef.value = copy;\n } else {\n const newObject = { ...objectRef.value, [key]: v };\n Object.setPrototypeOf(newObject, Object.getPrototypeOf(objectRef.value));\n objectRef.value = newObject;\n }\n } else {\n objectRef.value[key] = v;\n }\n }\n }));\n }\n return result;\n}\n\nconst toValue = toValue$1;\nconst resolveUnref = toValue$1;\n\nfunction tryOnBeforeMount(fn, sync = true, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onBeforeMount(fn, target);\n else if (sync)\n fn();\n else\n nextTick(fn);\n}\n\nfunction tryOnBeforeUnmount(fn, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onBeforeUnmount(fn, target);\n}\n\nfunction tryOnMounted(fn, sync = true, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onMounted(fn, target);\n else if (sync)\n fn();\n else\n nextTick(fn);\n}\n\nfunction tryOnUnmounted(fn, target) {\n const instance = getLifeCycleTarget(target);\n if (instance)\n onUnmounted(fn, target);\n}\n\nfunction createUntil(r, isNot = false) {\n function toMatch(condition, { flush = \"sync\", deep = false, timeout, throwOnTimeout } = {}) {\n let stop = null;\n const watcher = new Promise((resolve) => {\n stop = watch(\n r,\n (v) => {\n if (condition(v) !== isNot) {\n if (stop)\n stop();\n else\n nextTick(() => stop == null ? void 0 : stop());\n resolve(v);\n }\n },\n {\n flush,\n deep,\n immediate: true\n }\n );\n });\n const promises = [watcher];\n if (timeout != null) {\n promises.push(\n promiseTimeout(timeout, throwOnTimeout).then(() => toValue$1(r)).finally(() => stop == null ? void 0 : stop())\n );\n }\n return Promise.race(promises);\n }\n function toBe(value, options) {\n if (!isRef(value))\n return toMatch((v) => v === value, options);\n const { flush = \"sync\", deep = false, timeout, throwOnTimeout } = options != null ? options : {};\n let stop = null;\n const watcher = new Promise((resolve) => {\n stop = watch(\n [r, value],\n ([v1, v2]) => {\n if (isNot !== (v1 === v2)) {\n if (stop)\n stop();\n else\n nextTick(() => stop == null ? void 0 : stop());\n resolve(v1);\n }\n },\n {\n flush,\n deep,\n immediate: true\n }\n );\n });\n const promises = [watcher];\n if (timeout != null) {\n promises.push(\n promiseTimeout(timeout, throwOnTimeout).then(() => toValue$1(r)).finally(() => {\n stop == null ? void 0 : stop();\n return toValue$1(r);\n })\n );\n }\n return Promise.race(promises);\n }\n function toBeTruthy(options) {\n return toMatch((v) => Boolean(v), options);\n }\n function toBeNull(options) {\n return toBe(null, options);\n }\n function toBeUndefined(options) {\n return toBe(void 0, options);\n }\n function toBeNaN(options) {\n return toMatch(Number.isNaN, options);\n }\n function toContains(value, options) {\n return toMatch((v) => {\n const array = Array.from(v);\n return array.includes(value) || array.includes(toValue$1(value));\n }, options);\n }\n function changed(options) {\n return changedTimes(1, options);\n }\n function changedTimes(n = 1, options) {\n let count = -1;\n return toMatch(() => {\n count += 1;\n return count >= n;\n }, options);\n }\n if (Array.isArray(toValue$1(r))) {\n const instance = {\n toMatch,\n toContains,\n changed,\n changedTimes,\n get not() {\n return createUntil(r, !isNot);\n }\n };\n return instance;\n } else {\n const instance = {\n toMatch,\n toBe,\n toBeTruthy,\n toBeNull,\n toBeNaN,\n toBeUndefined,\n changed,\n changedTimes,\n get not() {\n return createUntil(r, !isNot);\n }\n };\n return instance;\n }\n}\nfunction until(r) {\n return createUntil(r);\n}\n\nfunction defaultComparator(value, othVal) {\n return value === othVal;\n}\nfunction useArrayDifference(...args) {\n var _a, _b;\n const list = args[0];\n const values = args[1];\n let compareFn = (_a = args[2]) != null ? _a : defaultComparator;\n const {\n symmetric = false\n } = (_b = args[3]) != null ? _b : {};\n if (typeof compareFn === \"string\") {\n const key = compareFn;\n compareFn = (value, othVal) => value[key] === othVal[key];\n }\n const diff1 = computed(() => toValue$1(list).filter((x) => toValue$1(values).findIndex((y) => compareFn(x, y)) === -1));\n if (symmetric) {\n const diff2 = computed(() => toValue$1(values).filter((x) => toValue$1(list).findIndex((y) => compareFn(x, y)) === -1));\n return computed(() => symmetric ? [...toValue$1(diff1), ...toValue$1(diff2)] : toValue$1(diff1));\n } else {\n return diff1;\n }\n}\n\nfunction useArrayEvery(list, fn) {\n return computed(() => toValue$1(list).every((element, index, array) => fn(toValue$1(element), index, array)));\n}\n\nfunction useArrayFilter(list, fn) {\n return computed(() => toValue$1(list).map((i) => toValue$1(i)).filter(fn));\n}\n\nfunction useArrayFind(list, fn) {\n return computed(() => toValue$1(\n toValue$1(list).find((element, index, array) => fn(toValue$1(element), index, array))\n ));\n}\n\nfunction useArrayFindIndex(list, fn) {\n return computed(() => toValue$1(list).findIndex((element, index, array) => fn(toValue$1(element), index, array)));\n}\n\nfunction findLast(arr, cb) {\n let index = arr.length;\n while (index-- > 0) {\n if (cb(arr[index], index, arr))\n return arr[index];\n }\n return void 0;\n}\nfunction useArrayFindLast(list, fn) {\n return computed(() => toValue$1(\n !Array.prototype.findLast ? findLast(toValue$1(list), (element, index, array) => fn(toValue$1(element), index, array)) : toValue$1(list).findLast((element, index, array) => fn(toValue$1(element), index, array))\n ));\n}\n\nfunction isArrayIncludesOptions(obj) {\n return isObject(obj) && containsProp(obj, \"formIndex\", \"comparator\");\n}\nfunction useArrayIncludes(...args) {\n var _a;\n const list = args[0];\n const value = args[1];\n let comparator = args[2];\n let formIndex = 0;\n if (isArrayIncludesOptions(comparator)) {\n formIndex = (_a = comparator.fromIndex) != null ? _a : 0;\n comparator = comparator.comparator;\n }\n if (typeof comparator === \"string\") {\n const key = comparator;\n comparator = (element, value2) => element[key] === toValue$1(value2);\n }\n comparator = comparator != null ? comparator : (element, value2) => element === toValue$1(value2);\n return computed(() => toValue$1(list).slice(formIndex).some((element, index, array) => comparator(\n toValue$1(element),\n toValue$1(value),\n index,\n toValue$1(array)\n )));\n}\n\nfunction useArrayJoin(list, separator) {\n return computed(() => toValue$1(list).map((i) => toValue$1(i)).join(toValue$1(separator)));\n}\n\nfunction useArrayMap(list, fn) {\n return computed(() => toValue$1(list).map((i) => toValue$1(i)).map(fn));\n}\n\nfunction useArrayReduce(list, reducer, ...args) {\n const reduceCallback = (sum, value, index) => reducer(toValue$1(sum), toValue$1(value), index);\n return computed(() => {\n const resolved = toValue$1(list);\n return args.length ? resolved.reduce(reduceCallback, typeof args[0] === \"function\" ? toValue$1(args[0]()) : toValue$1(args[0])) : resolved.reduce(reduceCallback);\n });\n}\n\nfunction useArraySome(list, fn) {\n return computed(() => toValue$1(list).some((element, index, array) => fn(toValue$1(element), index, array)));\n}\n\nfunction uniq(array) {\n return Array.from(new Set(array));\n}\nfunction uniqueElementsBy(array, fn) {\n return array.reduce((acc, v) => {\n if (!acc.some((x) => fn(v, x, array)))\n acc.push(v);\n return acc;\n }, []);\n}\nfunction useArrayUnique(list, compareFn) {\n return computed(() => {\n const resolvedList = toValue$1(list).map((element) => toValue$1(element));\n return compareFn ? uniqueElementsBy(resolvedList, compareFn) : uniq(resolvedList);\n });\n}\n\nfunction useCounter(initialValue = 0, options = {}) {\n let _initialValue = unref(initialValue);\n const count = shallowRef(initialValue);\n const {\n max = Number.POSITIVE_INFINITY,\n min = Number.NEGATIVE_INFINITY\n } = options;\n const inc = (delta = 1) => count.value = Math.max(Math.min(max, count.value + delta), min);\n const dec = (delta = 1) => count.value = Math.min(Math.max(min, count.value - delta), max);\n const get = () => count.value;\n const set = (val) => count.value = Math.max(min, Math.min(max, val));\n const reset = (val = _initialValue) => {\n _initialValue = val;\n return set(val);\n };\n return { count: shallowReadonly(count), inc, dec, get, set, reset };\n}\n\nconst REGEX_PARSE = /^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[T\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/i;\nconst REGEX_FORMAT = /[YMDHhms]o|\\[([^\\]]+)\\]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a{1,2}|A{1,2}|m{1,2}|s{1,2}|Z{1,2}|z{1,4}|SSS/g;\nfunction defaultMeridiem(hours, minutes, isLowercase, hasPeriod) {\n let m = hours < 12 ? \"AM\" : \"PM\";\n if (hasPeriod)\n m = m.split(\"\").reduce((acc, curr) => acc += `${curr}.`, \"\");\n return isLowercase ? m.toLowerCase() : m;\n}\nfunction formatOrdinal(num) {\n const suffixes = [\"th\", \"st\", \"nd\", \"rd\"];\n const v = num % 100;\n return num + (suffixes[(v - 20) % 10] || suffixes[v] || suffixes[0]);\n}\nfunction formatDate(date, formatStr, options = {}) {\n var _a;\n const years = date.getFullYear();\n const month = date.getMonth();\n const days = date.getDate();\n const hours = date.getHours();\n const minutes = date.getMinutes();\n const seconds = date.getSeconds();\n const milliseconds = date.getMilliseconds();\n const day = date.getDay();\n const meridiem = (_a = options.customMeridiem) != null ? _a : defaultMeridiem;\n const stripTimeZone = (dateString) => {\n var _a2;\n return (_a2 = dateString.split(\" \")[1]) != null ? _a2 : \"\";\n };\n const matches = {\n Yo: () => formatOrdinal(years),\n YY: () => String(years).slice(-2),\n YYYY: () => years,\n M: () => month + 1,\n Mo: () => formatOrdinal(month + 1),\n MM: () => `${month + 1}`.padStart(2, \"0\"),\n MMM: () => date.toLocaleDateString(toValue$1(options.locales), { month: \"short\" }),\n MMMM: () => date.toLocaleDateString(toValue$1(options.locales), { month: \"long\" }),\n D: () => String(days),\n Do: () => formatOrdinal(days),\n DD: () => `${days}`.padStart(2, \"0\"),\n H: () => String(hours),\n Ho: () => formatOrdinal(hours),\n HH: () => `${hours}`.padStart(2, \"0\"),\n h: () => `${hours % 12 || 12}`.padStart(1, \"0\"),\n ho: () => formatOrdinal(hours % 12 || 12),\n hh: () => `${hours % 12 || 12}`.padStart(2, \"0\"),\n m: () => String(minutes),\n mo: () => formatOrdinal(minutes),\n mm: () => `${minutes}`.padStart(2, \"0\"),\n s: () => String(seconds),\n so: () => formatOrdinal(seconds),\n ss: () => `${seconds}`.padStart(2, \"0\"),\n SSS: () => `${milliseconds}`.padStart(3, \"0\"),\n d: () => day,\n dd: () => date.toLocaleDateString(toValue$1(options.locales), { weekday: \"narrow\" }),\n ddd: () => date.toLocaleDateString(toValue$1(options.locales), { weekday: \"short\" }),\n dddd: () => date.toLocaleDateString(toValue$1(options.locales), { weekday: \"long\" }),\n A: () => meridiem(hours, minutes),\n AA: () => meridiem(hours, minutes, false, true),\n a: () => meridiem(hours, minutes, true),\n aa: () => meridiem(hours, minutes, true, true),\n z: () => stripTimeZone(date.toLocaleDateString(toValue$1(options.locales), { timeZoneName: \"shortOffset\" })),\n zz: () => stripTimeZone(date.toLocaleDateString(toValue$1(options.locales), { timeZoneName: \"shortOffset\" })),\n zzz: () => stripTimeZone(date.toLocaleDateString(toValue$1(options.locales), { timeZoneName: \"shortOffset\" })),\n zzzz: () => stripTimeZone(date.toLocaleDateString(toValue$1(options.locales), { timeZoneName: \"longOffset\" }))\n };\n return formatStr.replace(REGEX_FORMAT, (match, $1) => {\n var _a2, _b;\n return (_b = $1 != null ? $1 : (_a2 = matches[match]) == null ? void 0 : _a2.call(matches)) != null ? _b : match;\n });\n}\nfunction normalizeDate(date) {\n if (date === null)\n return new Date(Number.NaN);\n if (date === void 0)\n return /* @__PURE__ */ new Date();\n if (date instanceof Date)\n return new Date(date);\n if (typeof date === \"string\" && !/Z$/i.test(date)) {\n const d = date.match(REGEX_PARSE);\n if (d) {\n const m = d[2] - 1 || 0;\n const ms = (d[7] || \"0\").substring(0, 3);\n return new Date(d[1], m, d[3] || 1, d[4] || 0, d[5] || 0, d[6] || 0, ms);\n }\n }\n return new Date(date);\n}\nfunction useDateFormat(date, formatStr = \"HH:mm:ss\", options = {}) {\n return computed(() => formatDate(normalizeDate(toValue$1(date)), toValue$1(formatStr), options));\n}\n\nfunction useIntervalFn(cb, interval = 1e3, options = {}) {\n const {\n immediate = true,\n immediateCallback = false\n } = options;\n let timer = null;\n const isActive = shallowRef(false);\n function clean() {\n if (timer) {\n clearInterval(timer);\n timer = null;\n }\n }\n function pause() {\n isActive.value = false;\n clean();\n }\n function resume() {\n const intervalValue = toValue$1(interval);\n if (intervalValue <= 0)\n return;\n isActive.value = true;\n if (immediateCallback)\n cb();\n clean();\n if (isActive.value)\n timer = setInterval(cb, intervalValue);\n }\n if (immediate && isClient)\n resume();\n if (isRef(interval) || typeof interval === \"function\") {\n const stopWatch = watch(interval, () => {\n if (isActive.value && isClient)\n resume();\n });\n tryOnScopeDispose(stopWatch);\n }\n tryOnScopeDispose(pause);\n return {\n isActive: shallowReadonly(isActive),\n pause,\n resume\n };\n}\n\nfunction useInterval(interval = 1e3, options = {}) {\n const {\n controls: exposeControls = false,\n immediate = true,\n callback\n } = options;\n const counter = shallowRef(0);\n const update = () => counter.value += 1;\n const reset = () => {\n counter.value = 0;\n };\n const controls = useIntervalFn(\n callback ? () => {\n update();\n callback(counter.value);\n } : update,\n interval,\n { immediate }\n );\n if (exposeControls) {\n return {\n counter: shallowReadonly(counter),\n reset,\n ...controls\n };\n } else {\n return shallowReadonly(counter);\n }\n}\n\nfunction useLastChanged(source, options = {}) {\n var _a;\n const ms = shallowRef((_a = options.initialValue) != null ? _a : null);\n watch(\n source,\n () => ms.value = timestamp(),\n options\n );\n return shallowReadonly(ms);\n}\n\nfunction useTimeoutFn(cb, interval, options = {}) {\n const {\n immediate = true,\n immediateCallback = false\n } = options;\n const isPending = shallowRef(false);\n let timer;\n function clear() {\n if (timer) {\n clearTimeout(timer);\n timer = void 0;\n }\n }\n function stop() {\n isPending.value = false;\n clear();\n }\n function start(...args) {\n if (immediateCallback)\n cb();\n clear();\n isPending.value = true;\n timer = setTimeout(() => {\n isPending.value = false;\n timer = void 0;\n cb(...args);\n }, toValue$1(interval));\n }\n if (immediate) {\n isPending.value = true;\n if (isClient)\n start();\n }\n tryOnScopeDispose(stop);\n return {\n isPending: shallowReadonly(isPending),\n start,\n stop\n };\n}\n\nfunction useTimeout(interval = 1e3, options = {}) {\n const {\n controls: exposeControls = false,\n callback\n } = options;\n const controls = useTimeoutFn(\n callback != null ? callback : noop,\n interval,\n options\n );\n const ready = computed(() => !controls.isPending.value);\n if (exposeControls) {\n return {\n ready,\n ...controls\n };\n } else {\n return ready;\n }\n}\n\nfunction useToNumber(value, options = {}) {\n const {\n method = \"parseFloat\",\n radix,\n nanToZero\n } = options;\n return computed(() => {\n let resolved = toValue$1(value);\n if (typeof method === \"function\")\n resolved = method(resolved);\n else if (typeof resolved === \"string\")\n resolved = Number[method](resolved, radix);\n if (nanToZero && Number.isNaN(resolved))\n resolved = 0;\n return resolved;\n });\n}\n\nfunction useToString(value) {\n return computed(() => `${toValue$1(value)}`);\n}\n\nfunction useToggle(initialValue = false, options = {}) {\n const {\n truthyValue = true,\n falsyValue = false\n } = options;\n const valueIsRef = isRef(initialValue);\n const _value = shallowRef(initialValue);\n function toggle(value) {\n if (arguments.length) {\n _value.value = value;\n return _value.value;\n } else {\n const truthy = toValue$1(truthyValue);\n _value.value = _value.value === truthy ? toValue$1(falsyValue) : truthy;\n return _value.value;\n }\n }\n if (valueIsRef)\n return toggle;\n else\n return [_value, toggle];\n}\n\nfunction watchArray(source, cb, options) {\n let oldList = (options == null ? void 0 : options.immediate) ? [] : [...typeof source === \"function\" ? source() : Array.isArray(source) ? source : toValue$1(source)];\n return watch(source, (newList, _, onCleanup) => {\n const oldListRemains = Array.from({ length: oldList.length });\n const added = [];\n for (const obj of newList) {\n let found = false;\n for (let i = 0; i < oldList.length; i++) {\n if (!oldListRemains[i] && obj === oldList[i]) {\n oldListRemains[i] = true;\n found = true;\n break;\n }\n }\n if (!found)\n added.push(obj);\n }\n const removed = oldList.filter((_2, i) => !oldListRemains[i]);\n cb(newList, oldList, added, removed, onCleanup);\n oldList = [...newList];\n }, options);\n}\n\nfunction watchAtMost(source, cb, options) {\n const {\n count,\n ...watchOptions\n } = options;\n const current = shallowRef(0);\n const stop = watchWithFilter(\n source,\n (...args) => {\n current.value += 1;\n if (current.value >= toValue$1(count))\n nextTick(() => stop());\n cb(...args);\n },\n watchOptions\n );\n return { count: current, stop };\n}\n\nfunction watchDebounced(source, cb, options = {}) {\n const {\n debounce = 0,\n maxWait = void 0,\n ...watchOptions\n } = options;\n return watchWithFilter(\n source,\n cb,\n {\n ...watchOptions,\n eventFilter: debounceFilter(debounce, { maxWait })\n }\n );\n}\n\nfunction watchDeep(source, cb, options) {\n return watch(\n source,\n cb,\n {\n ...options,\n deep: true\n }\n );\n}\n\nfunction watchIgnorable(source, cb, options = {}) {\n const {\n eventFilter = bypassFilter,\n ...watchOptions\n } = options;\n const filteredCb = createFilterWrapper(\n eventFilter,\n cb\n );\n let ignoreUpdates;\n let ignorePrevAsyncUpdates;\n let stop;\n if (watchOptions.flush === \"sync\") {\n let ignore = false;\n ignorePrevAsyncUpdates = () => {\n };\n ignoreUpdates = (updater) => {\n ignore = true;\n updater();\n ignore = false;\n };\n stop = watch(\n source,\n (...args) => {\n if (!ignore)\n filteredCb(...args);\n },\n watchOptions\n );\n } else {\n const disposables = [];\n let ignoreCounter = 0;\n let syncCounter = 0;\n ignorePrevAsyncUpdates = () => {\n ignoreCounter = syncCounter;\n };\n disposables.push(\n watch(\n source,\n () => {\n syncCounter++;\n },\n { ...watchOptions, flush: \"sync\" }\n )\n );\n ignoreUpdates = (updater) => {\n const syncCounterPrev = syncCounter;\n updater();\n ignoreCounter += syncCounter - syncCounterPrev;\n };\n disposables.push(\n watch(\n source,\n (...args) => {\n const ignore = ignoreCounter > 0 && ignoreCounter === syncCounter;\n ignoreCounter = 0;\n syncCounter = 0;\n if (ignore)\n return;\n filteredCb(...args);\n },\n watchOptions\n )\n );\n stop = () => {\n disposables.forEach((fn) => fn());\n };\n }\n return { stop, ignoreUpdates, ignorePrevAsyncUpdates };\n}\n\nfunction watchImmediate(source, cb, options) {\n return watch(\n source,\n cb,\n {\n ...options,\n immediate: true\n }\n );\n}\n\nfunction watchOnce(source, cb, options) {\n return watch(\n source,\n cb,\n {\n ...options,\n once: true\n }\n );\n}\n\nfunction watchThrottled(source, cb, options = {}) {\n const {\n throttle = 0,\n trailing = true,\n leading = true,\n ...watchOptions\n } = options;\n return watchWithFilter(\n source,\n cb,\n {\n ...watchOptions,\n eventFilter: throttleFilter(throttle, trailing, leading)\n }\n );\n}\n\nfunction watchTriggerable(source, cb, options = {}) {\n let cleanupFn;\n function onEffect() {\n if (!cleanupFn)\n return;\n const fn = cleanupFn;\n cleanupFn = void 0;\n fn();\n }\n function onCleanup(callback) {\n cleanupFn = callback;\n }\n const _cb = (value, oldValue) => {\n onEffect();\n return cb(value, oldValue, onCleanup);\n };\n const res = watchIgnorable(source, _cb, options);\n const { ignoreUpdates } = res;\n const trigger = () => {\n let res2;\n ignoreUpdates(() => {\n res2 = _cb(getWatchSources(source), getOldValue(source));\n });\n return res2;\n };\n return {\n ...res,\n trigger\n };\n}\nfunction getWatchSources(sources) {\n if (isReactive(sources))\n return sources;\n if (Array.isArray(sources))\n return sources.map((item) => toValue$1(item));\n return toValue$1(sources);\n}\nfunction getOldValue(source) {\n return Array.isArray(source) ? source.map(() => void 0) : void 0;\n}\n\nfunction whenever(source, cb, options) {\n const stop = watch(\n source,\n (v, ov, onInvalidate) => {\n if (v) {\n if (options == null ? void 0 : options.once)\n nextTick(() => stop());\n cb(v, ov, onInvalidate);\n }\n },\n {\n ...options,\n once: false\n }\n );\n return stop;\n}\n\nexport { assert, refAutoReset as autoResetRef, bypassFilter, camelize, clamp, computedEager, computedWithControl, containsProp, computedWithControl as controlledComputed, controlledRef, createEventHook, createFilterWrapper, createGlobalState, createInjectionState, reactify as createReactiveFn, createRef, createSharedComposable, createSingletonPromise, debounceFilter, refDebounced as debouncedRef, watchDebounced as debouncedWatch, computedEager as eagerComputed, extendRef, formatDate, get, getLifeCycleTarget, hasOwn, hyphenate, identity, watchIgnorable as ignorableWatch, increaseWithUnit, injectLocal, invoke, isClient, isDef, isDefined, isIOS, isObject, isWorker, makeDestructurable, noop, normalizeDate, notNullish, now, objectEntries, objectOmit, objectPick, pausableFilter, watchPausable as pausableWatch, promiseTimeout, provideLocal, pxValue, rand, reactify, reactifyObject, reactiveComputed, reactiveOmit, reactivePick, refAutoReset, refDebounced, refDefault, refThrottled, refWithControl, resolveRef, resolveUnref, set, syncRef, syncRefs, throttleFilter, refThrottled as throttledRef, watchThrottled as throttledWatch, timestamp, toArray, toReactive, toRef, toRefs, toValue, tryOnBeforeMount, tryOnBeforeUnmount, tryOnMounted, tryOnScopeDispose, tryOnUnmounted, until, useArrayDifference, useArrayEvery, useArrayFilter, useArrayFind, useArrayFindIndex, useArrayFindLast, useArrayIncludes, useArrayJoin, useArrayMap, useArrayReduce, useArraySome, useArrayUnique, useCounter, useDateFormat, refDebounced as useDebounce, useDebounceFn, useInterval, useIntervalFn, useLastChanged, refThrottled as useThrottle, useThrottleFn, useTimeout, useTimeoutFn, useToNumber, useToString, useToggle, watchArray, watchAtMost, watchDebounced, watchDeep, watchIgnorable, watchImmediate, watchOnce, watchPausable, watchThrottled, watchTriggerable, watchWithFilter, whenever };\n","import { noop, makeDestructurable, camelize, isClient, toArray, watchImmediate, isObject, tryOnScopeDispose, isIOS, notNullish, tryOnMounted, objectOmit, promiseTimeout, until, injectLocal, provideLocal, pxValue, increaseWithUnit, objectEntries, createRef, createSingletonPromise, useTimeoutFn, pausableWatch, toRef, createEventHook, useIntervalFn, computedWithControl, timestamp, pausableFilter, watchIgnorable, debounceFilter, bypassFilter, createFilterWrapper, toRefs, watchOnce, containsProp, hasOwn, throttleFilter, useDebounceFn, useThrottleFn, tryOnUnmounted, clamp, syncRef, objectPick, watchWithFilter, identity, isDef, whenever, isWorker } from '@vueuse/shared';\nexport * from '@vueuse/shared';\nimport { isRef, shallowRef, ref, watchEffect, computed, inject, defineComponent, h, TransitionGroup, Fragment, shallowReactive, toValue, unref, getCurrentInstance, onMounted, watch, customRef, onUpdated, readonly, reactive, hasInjectionContext, toRaw, nextTick, markRaw, getCurrentScope, isReadonly, onBeforeUpdate } from 'vue';\n\nfunction computedAsync(evaluationCallback, initialState, optionsOrRef) {\n let options;\n if (isRef(optionsOrRef)) {\n options = {\n evaluating: optionsOrRef\n };\n } else {\n options = optionsOrRef || {};\n }\n const {\n lazy = false,\n flush = \"pre\",\n evaluating = void 0,\n shallow = true,\n onError = noop\n } = options;\n const started = shallowRef(!lazy);\n const current = shallow ? shallowRef(initialState) : ref(initialState);\n let counter = 0;\n watchEffect(async (onInvalidate) => {\n if (!started.value)\n return;\n counter++;\n const counterAtBeginning = counter;\n let hasFinished = false;\n if (evaluating) {\n Promise.resolve().then(() => {\n evaluating.value = true;\n });\n }\n try {\n const result = await evaluationCallback((cancelCallback) => {\n onInvalidate(() => {\n if (evaluating)\n evaluating.value = false;\n if (!hasFinished)\n cancelCallback();\n });\n });\n if (counterAtBeginning === counter)\n current.value = result;\n } catch (e) {\n onError(e);\n } finally {\n if (evaluating && counterAtBeginning === counter)\n evaluating.value = false;\n hasFinished = true;\n }\n }, { flush });\n if (lazy) {\n return computed(() => {\n started.value = true;\n return current.value;\n });\n } else {\n return current;\n }\n}\n\nfunction computedInject(key, options, defaultSource, treatDefaultAsFactory) {\n let source = inject(key);\n if (defaultSource)\n source = inject(key, defaultSource);\n if (treatDefaultAsFactory)\n source = inject(key, defaultSource, treatDefaultAsFactory);\n if (typeof options === \"function\") {\n return computed((ctx) => options(source, ctx));\n } else {\n return computed({\n get: (ctx) => options.get(source, ctx),\n set: options.set\n });\n }\n}\n\nfunction createReusableTemplate(options = {}) {\n const {\n inheritAttrs = true\n } = options;\n const render = shallowRef();\n const define = /*@__PURE__*/ defineComponent({\n setup(_, { slots }) {\n return () => {\n render.value = slots.default;\n };\n }\n });\n const reuse = /*@__PURE__*/ defineComponent({\n inheritAttrs,\n props: options.props,\n setup(props, { attrs, slots }) {\n return () => {\n var _a;\n if (!render.value && process.env.NODE_ENV !== \"production\")\n throw new Error(\"[VueUse] Failed to find the definition of reusable template\");\n const vnode = (_a = render.value) == null ? void 0 : _a.call(render, {\n ...options.props == null ? keysToCamelKebabCase(attrs) : props,\n $slots: slots\n });\n return inheritAttrs && (vnode == null ? void 0 : vnode.length) === 1 ? vnode[0] : vnode;\n };\n }\n });\n return makeDestructurable(\n { define, reuse },\n [define, reuse]\n );\n}\nfunction keysToCamelKebabCase(obj) {\n const newObj = {};\n for (const key in obj)\n newObj[camelize(key)] = obj[key];\n return newObj;\n}\n\nfunction createTemplatePromise(options = {}) {\n let index = 0;\n const instances = ref([]);\n function create(...args) {\n const props = shallowReactive({\n key: index++,\n args,\n promise: void 0,\n resolve: () => {\n },\n reject: () => {\n },\n isResolving: false,\n options\n });\n instances.value.push(props);\n props.promise = new Promise((_resolve, _reject) => {\n props.resolve = (v) => {\n props.isResolving = true;\n return _resolve(v);\n };\n props.reject = _reject;\n }).finally(() => {\n props.promise = void 0;\n const index2 = instances.value.indexOf(props);\n if (index2 !== -1)\n instances.value.splice(index2, 1);\n });\n return props.promise;\n }\n function start(...args) {\n if (options.singleton && instances.value.length > 0)\n return instances.value[0].promise;\n return create(...args);\n }\n const component = /*@__PURE__*/ defineComponent((_, { slots }) => {\n const renderList = () => instances.value.map((props) => {\n var _a;\n return h(Fragment, { key: props.key }, (_a = slots.default) == null ? void 0 : _a.call(slots, props));\n });\n if (options.transition)\n return () => h(TransitionGroup, options.transition, renderList);\n return renderList;\n });\n component.start = start;\n return component;\n}\n\nfunction createUnrefFn(fn) {\n return function(...args) {\n return fn.apply(this, args.map((i) => toValue(i)));\n };\n}\n\nconst defaultWindow = isClient ? window : void 0;\nconst defaultDocument = isClient ? window.document : void 0;\nconst defaultNavigator = isClient ? window.navigator : void 0;\nconst defaultLocation = isClient ? window.location : void 0;\n\nfunction unrefElement(elRef) {\n var _a;\n const plain = toValue(elRef);\n return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;\n}\n\nfunction useEventListener(...args) {\n const cleanups = [];\n const cleanup = () => {\n cleanups.forEach((fn) => fn());\n cleanups.length = 0;\n };\n const register = (el, event, listener, options) => {\n el.addEventListener(event, listener, options);\n return () => el.removeEventListener(event, listener, options);\n };\n const firstParamTargets = computed(() => {\n const test = toArray(toValue(args[0])).filter((e) => e != null);\n return test.every((e) => typeof e !== \"string\") ? test : void 0;\n });\n const stopWatch = watchImmediate(\n () => {\n var _a, _b;\n return [\n (_b = (_a = firstParamTargets.value) == null ? void 0 : _a.map((e) => unrefElement(e))) != null ? _b : [defaultWindow].filter((e) => e != null),\n toArray(toValue(firstParamTargets.value ? args[1] : args[0])),\n toArray(unref(firstParamTargets.value ? args[2] : args[1])),\n // @ts-expect-error - TypeScript gets the correct types, but somehow still complains\n toValue(firstParamTargets.value ? args[3] : args[2])\n ];\n },\n ([raw_targets, raw_events, raw_listeners, raw_options]) => {\n cleanup();\n if (!(raw_targets == null ? void 0 : raw_targets.length) || !(raw_events == null ? void 0 : raw_events.length) || !(raw_listeners == null ? void 0 : raw_listeners.length))\n return;\n const optionsClone = isObject(raw_options) ? { ...raw_options } : raw_options;\n cleanups.push(\n ...raw_targets.flatMap(\n (el) => raw_events.flatMap(\n (event) => raw_listeners.map((listener) => register(el, event, listener, optionsClone))\n )\n )\n );\n },\n { flush: \"post\" }\n );\n const stop = () => {\n stopWatch();\n cleanup();\n };\n tryOnScopeDispose(cleanup);\n return stop;\n}\n\nlet _iOSWorkaround = false;\nfunction onClickOutside(target, handler, options = {}) {\n const { window = defaultWindow, ignore = [], capture = true, detectIframe = false, controls = false } = options;\n if (!window) {\n return controls ? { stop: noop, cancel: noop, trigger: noop } : noop;\n }\n if (isIOS && !_iOSWorkaround) {\n _iOSWorkaround = true;\n const listenerOptions = { passive: true };\n Array.from(window.document.body.children).forEach((el) => el.addEventListener(\"click\", noop, listenerOptions));\n window.document.documentElement.addEventListener(\"click\", noop, listenerOptions);\n }\n let shouldListen = true;\n const shouldIgnore = (event) => {\n return toValue(ignore).some((target2) => {\n if (typeof target2 === \"string\") {\n return Array.from(window.document.querySelectorAll(target2)).some((el) => el === event.target || event.composedPath().includes(el));\n } else {\n const el = unrefElement(target2);\n return el && (event.target === el || event.composedPath().includes(el));\n }\n });\n };\n function hasMultipleRoots(target2) {\n const vm = toValue(target2);\n return vm && vm.$.subTree.shapeFlag === 16;\n }\n function checkMultipleRoots(target2, event) {\n const vm = toValue(target2);\n const children = vm.$.subTree && vm.$.subTree.children;\n if (children == null || !Array.isArray(children))\n return false;\n return children.some((child) => child.el === event.target || event.composedPath().includes(child.el));\n }\n const listener = (event) => {\n const el = unrefElement(target);\n if (event.target == null)\n return;\n if (!(el instanceof Element) && hasMultipleRoots(target) && checkMultipleRoots(target, event))\n return;\n if (!el || el === event.target || event.composedPath().includes(el))\n return;\n if (\"detail\" in event && event.detail === 0)\n shouldListen = !shouldIgnore(event);\n if (!shouldListen) {\n shouldListen = true;\n return;\n }\n handler(event);\n };\n let isProcessingClick = false;\n const cleanup = [\n useEventListener(window, \"click\", (event) => {\n if (!isProcessingClick) {\n isProcessingClick = true;\n setTimeout(() => {\n isProcessingClick = false;\n }, 0);\n listener(event);\n }\n }, { passive: true, capture }),\n useEventListener(window, \"pointerdown\", (e) => {\n const el = unrefElement(target);\n shouldListen = !shouldIgnore(e) && !!(el && !e.composedPath().includes(el));\n }, { passive: true }),\n detectIframe && useEventListener(window, \"blur\", (event) => {\n setTimeout(() => {\n var _a;\n const el = unrefElement(target);\n if (((_a = window.document.activeElement) == null ? void 0 : _a.tagName) === \"IFRAME\" && !(el == null ? void 0 : el.contains(window.document.activeElement))) {\n handler(event);\n }\n }, 0);\n }, { passive: true })\n ].filter(Boolean);\n const stop = () => cleanup.forEach((fn) => fn());\n if (controls) {\n return {\n stop,\n cancel: () => {\n shouldListen = false;\n },\n trigger: (event) => {\n shouldListen = true;\n listener(event);\n shouldListen = false;\n }\n };\n }\n return stop;\n}\n\nfunction useMounted() {\n const isMounted = shallowRef(false);\n const instance = getCurrentInstance();\n if (instance) {\n onMounted(() => {\n isMounted.value = true;\n }, instance);\n }\n return isMounted;\n}\n\nfunction useSupported(callback) {\n const isMounted = useMounted();\n return computed(() => {\n isMounted.value;\n return Boolean(callback());\n });\n}\n\nfunction useMutationObserver(target, callback, options = {}) {\n const { window = defaultWindow, ...mutationOptions } = options;\n let observer;\n const isSupported = useSupported(() => window && \"MutationObserver\" in window);\n const cleanup = () => {\n if (observer) {\n observer.disconnect();\n observer = void 0;\n }\n };\n const targets = computed(() => {\n const value = toValue(target);\n const items = toArray(value).map(unrefElement).filter(notNullish);\n return new Set(items);\n });\n const stopWatch = watch(\n () => targets.value,\n (targets2) => {\n cleanup();\n if (isSupported.value && targets2.size) {\n observer = new MutationObserver(callback);\n targets2.forEach((el) => observer.observe(el, mutationOptions));\n }\n },\n { immediate: true, flush: \"post\" }\n );\n const takeRecords = () => {\n return observer == null ? void 0 : observer.takeRecords();\n };\n const stop = () => {\n stopWatch();\n cleanup();\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n stop,\n takeRecords\n };\n}\n\nfunction onElementRemoval(target, callback, options = {}) {\n const {\n window = defaultWindow,\n document = window == null ? void 0 : window.document,\n flush = \"sync\"\n } = options;\n if (!window || !document)\n return noop;\n let stopFn;\n const cleanupAndUpdate = (fn) => {\n stopFn == null ? void 0 : stopFn();\n stopFn = fn;\n };\n const stopWatch = watchEffect(() => {\n const el = unrefElement(target);\n if (el) {\n const { stop } = useMutationObserver(\n document,\n (mutationsList) => {\n const targetRemoved = mutationsList.map((mutation) => [...mutation.removedNodes]).flat().some((node) => node === el || node.contains(el));\n if (targetRemoved) {\n callback(mutationsList);\n }\n },\n {\n window,\n childList: true,\n subtree: true\n }\n );\n cleanupAndUpdate(stop);\n }\n }, { flush });\n const stopHandle = () => {\n stopWatch();\n cleanupAndUpdate();\n };\n tryOnScopeDispose(stopHandle);\n return stopHandle;\n}\n\nfunction createKeyPredicate(keyFilter) {\n if (typeof keyFilter === \"function\")\n return keyFilter;\n else if (typeof keyFilter === \"string\")\n return (event) => event.key === keyFilter;\n else if (Array.isArray(keyFilter))\n return (event) => keyFilter.includes(event.key);\n return () => true;\n}\nfunction onKeyStroke(...args) {\n let key;\n let handler;\n let options = {};\n if (args.length === 3) {\n key = args[0];\n handler = args[1];\n options = args[2];\n } else if (args.length === 2) {\n if (typeof args[1] === \"object\") {\n key = true;\n handler = args[0];\n options = args[1];\n } else {\n key = args[0];\n handler = args[1];\n }\n } else {\n key = true;\n handler = args[0];\n }\n const {\n target = defaultWindow,\n eventName = \"keydown\",\n passive = false,\n dedupe = false\n } = options;\n const predicate = createKeyPredicate(key);\n const listener = (e) => {\n if (e.repeat && toValue(dedupe))\n return;\n if (predicate(e))\n handler(e);\n };\n return useEventListener(target, eventName, listener, passive);\n}\nfunction onKeyDown(key, handler, options = {}) {\n return onKeyStroke(key, handler, { ...options, eventName: \"keydown\" });\n}\nfunction onKeyPressed(key, handler, options = {}) {\n return onKeyStroke(key, handler, { ...options, eventName: \"keypress\" });\n}\nfunction onKeyUp(key, handler, options = {}) {\n return onKeyStroke(key, handler, { ...options, eventName: \"keyup\" });\n}\n\nconst DEFAULT_DELAY = 500;\nconst DEFAULT_THRESHOLD = 10;\nfunction onLongPress(target, handler, options) {\n var _a, _b;\n const elementRef = computed(() => unrefElement(target));\n let timeout;\n let posStart;\n let startTimestamp;\n let hasLongPressed = false;\n function clear() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = void 0;\n }\n posStart = void 0;\n startTimestamp = void 0;\n hasLongPressed = false;\n }\n function onRelease(ev) {\n var _a2, _b2, _c;\n const [_startTimestamp, _posStart, _hasLongPressed] = [startTimestamp, posStart, hasLongPressed];\n clear();\n if (!(options == null ? void 0 : options.onMouseUp) || !_posStart || !_startTimestamp)\n return;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n const dx = ev.x - _posStart.x;\n const dy = ev.y - _posStart.y;\n const distance = Math.sqrt(dx * dx + dy * dy);\n options.onMouseUp(ev.timeStamp - _startTimestamp, distance, _hasLongPressed);\n }\n function onDown(ev) {\n var _a2, _b2, _c, _d;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n clear();\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n posStart = {\n x: ev.x,\n y: ev.y\n };\n startTimestamp = ev.timeStamp;\n timeout = setTimeout(\n () => {\n hasLongPressed = true;\n handler(ev);\n },\n (_d = options == null ? void 0 : options.delay) != null ? _d : DEFAULT_DELAY\n );\n }\n function onMove(ev) {\n var _a2, _b2, _c, _d;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n if (!posStart || (options == null ? void 0 : options.distanceThreshold) === false)\n return;\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n const dx = ev.x - posStart.x;\n const dy = ev.y - posStart.y;\n const distance = Math.sqrt(dx * dx + dy * dy);\n if (distance >= ((_d = options == null ? void 0 : options.distanceThreshold) != null ? _d : DEFAULT_THRESHOLD))\n clear();\n }\n const listenerOptions = {\n capture: (_a = options == null ? void 0 : options.modifiers) == null ? void 0 : _a.capture,\n once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once\n };\n const cleanup = [\n useEventListener(elementRef, \"pointerdown\", onDown, listenerOptions),\n useEventListener(elementRef, \"pointermove\", onMove, listenerOptions),\n useEventListener(elementRef, [\"pointerup\", \"pointerleave\"], onRelease, listenerOptions)\n ];\n const stop = () => cleanup.forEach((fn) => fn());\n return stop;\n}\n\nfunction isFocusedElementEditable() {\n const { activeElement, body } = document;\n if (!activeElement)\n return false;\n if (activeElement === body)\n return false;\n switch (activeElement.tagName) {\n case \"INPUT\":\n case \"TEXTAREA\":\n return true;\n }\n return activeElement.hasAttribute(\"contenteditable\");\n}\nfunction isTypedCharValid({\n keyCode,\n metaKey,\n ctrlKey,\n altKey\n}) {\n if (metaKey || ctrlKey || altKey)\n return false;\n if (keyCode >= 48 && keyCode <= 57 || keyCode >= 96 && keyCode <= 105)\n return true;\n if (keyCode >= 65 && keyCode <= 90)\n return true;\n return false;\n}\nfunction onStartTyping(callback, options = {}) {\n const { document: document2 = defaultDocument } = options;\n const keydown = (event) => {\n if (!isFocusedElementEditable() && isTypedCharValid(event)) {\n callback(event);\n }\n };\n if (document2)\n useEventListener(document2, \"keydown\", keydown, { passive: true });\n}\n\nfunction templateRef(key, initialValue = null) {\n const instance = getCurrentInstance();\n let _trigger = () => {\n };\n const element = customRef((track, trigger) => {\n _trigger = trigger;\n return {\n get() {\n var _a, _b;\n track();\n return (_b = (_a = instance == null ? void 0 : instance.proxy) == null ? void 0 : _a.$refs[key]) != null ? _b : initialValue;\n },\n set() {\n }\n };\n });\n tryOnMounted(_trigger);\n onUpdated(_trigger);\n return element;\n}\n\nfunction useActiveElement(options = {}) {\n var _a;\n const {\n window = defaultWindow,\n deep = true,\n triggerOnRemoval = false\n } = options;\n const document = (_a = options.document) != null ? _a : window == null ? void 0 : window.document;\n const getDeepActiveElement = () => {\n var _a2;\n let element = document == null ? void 0 : document.activeElement;\n if (deep) {\n while (element == null ? void 0 : element.shadowRoot)\n element = (_a2 = element == null ? void 0 : element.shadowRoot) == null ? void 0 : _a2.activeElement;\n }\n return element;\n };\n const activeElement = shallowRef();\n const trigger = () => {\n activeElement.value = getDeepActiveElement();\n };\n if (window) {\n const listenerOptions = {\n capture: true,\n passive: true\n };\n useEventListener(\n window,\n \"blur\",\n (event) => {\n if (event.relatedTarget !== null)\n return;\n trigger();\n },\n listenerOptions\n );\n useEventListener(\n window,\n \"focus\",\n trigger,\n listenerOptions\n );\n }\n if (triggerOnRemoval) {\n onElementRemoval(activeElement, trigger, { document });\n }\n trigger();\n return activeElement;\n}\n\nfunction useRafFn(fn, options = {}) {\n const {\n immediate = true,\n fpsLimit = void 0,\n window = defaultWindow,\n once = false\n } = options;\n const isActive = shallowRef(false);\n const intervalLimit = computed(() => {\n return fpsLimit ? 1e3 / toValue(fpsLimit) : null;\n });\n let previousFrameTimestamp = 0;\n let rafId = null;\n function loop(timestamp) {\n if (!isActive.value || !window)\n return;\n if (!previousFrameTimestamp)\n previousFrameTimestamp = timestamp;\n const delta = timestamp - previousFrameTimestamp;\n if (intervalLimit.value && delta < intervalLimit.value) {\n rafId = window.requestAnimationFrame(loop);\n return;\n }\n previousFrameTimestamp = timestamp;\n fn({ delta, timestamp });\n if (once) {\n isActive.value = false;\n rafId = null;\n return;\n }\n rafId = window.requestAnimationFrame(loop);\n }\n function resume() {\n if (!isActive.value && window) {\n isActive.value = true;\n previousFrameTimestamp = 0;\n rafId = window.requestAnimationFrame(loop);\n }\n }\n function pause() {\n isActive.value = false;\n if (rafId != null && window) {\n window.cancelAnimationFrame(rafId);\n rafId = null;\n }\n }\n if (immediate)\n resume();\n tryOnScopeDispose(pause);\n return {\n isActive: readonly(isActive),\n pause,\n resume\n };\n}\n\nfunction useAnimate(target, keyframes, options) {\n let config;\n let animateOptions;\n if (isObject(options)) {\n config = options;\n animateOptions = objectOmit(options, [\"window\", \"immediate\", \"commitStyles\", \"persist\", \"onReady\", \"onError\"]);\n } else {\n config = { duration: options };\n animateOptions = options;\n }\n const {\n window = defaultWindow,\n immediate = true,\n commitStyles,\n persist,\n playbackRate: _playbackRate = 1,\n onReady,\n onError = (e) => {\n console.error(e);\n }\n } = config;\n const isSupported = useSupported(() => window && HTMLElement && \"animate\" in HTMLElement.prototype);\n const animate = shallowRef(void 0);\n const store = shallowReactive({\n startTime: null,\n currentTime: null,\n timeline: null,\n playbackRate: _playbackRate,\n pending: false,\n playState: immediate ? \"idle\" : \"paused\",\n replaceState: \"active\"\n });\n const pending = computed(() => store.pending);\n const playState = computed(() => store.playState);\n const replaceState = computed(() => store.replaceState);\n const startTime = computed({\n get() {\n return store.startTime;\n },\n set(value) {\n store.startTime = value;\n if (animate.value)\n animate.value.startTime = value;\n }\n });\n const currentTime = computed({\n get() {\n return store.currentTime;\n },\n set(value) {\n store.currentTime = value;\n if (animate.value) {\n animate.value.currentTime = value;\n syncResume();\n }\n }\n });\n const timeline = computed({\n get() {\n return store.timeline;\n },\n set(value) {\n store.timeline = value;\n if (animate.value)\n animate.value.timeline = value;\n }\n });\n const playbackRate = computed({\n get() {\n return store.playbackRate;\n },\n set(value) {\n store.playbackRate = value;\n if (animate.value)\n animate.value.playbackRate = value;\n }\n });\n const play = () => {\n if (animate.value) {\n try {\n animate.value.play();\n syncResume();\n } catch (e) {\n syncPause();\n onError(e);\n }\n } else {\n update();\n }\n };\n const pause = () => {\n var _a;\n try {\n (_a = animate.value) == null ? void 0 : _a.pause();\n syncPause();\n } catch (e) {\n onError(e);\n }\n };\n const reverse = () => {\n var _a;\n if (!animate.value)\n update();\n try {\n (_a = animate.value) == null ? void 0 : _a.reverse();\n syncResume();\n } catch (e) {\n syncPause();\n onError(e);\n }\n };\n const finish = () => {\n var _a;\n try {\n (_a = animate.value) == null ? void 0 : _a.finish();\n syncPause();\n } catch (e) {\n onError(e);\n }\n };\n const cancel = () => {\n var _a;\n try {\n (_a = animate.value) == null ? void 0 : _a.cancel();\n syncPause();\n } catch (e) {\n onError(e);\n }\n };\n watch(() => unrefElement(target), (el) => {\n if (el) {\n update();\n } else {\n animate.value = void 0;\n }\n });\n watch(() => keyframes, (value) => {\n if (animate.value) {\n update();\n const targetEl = unrefElement(target);\n if (targetEl) {\n animate.value.effect = new KeyframeEffect(\n targetEl,\n toValue(value),\n animateOptions\n );\n }\n }\n }, { deep: true });\n tryOnMounted(() => update(true), false);\n tryOnScopeDispose(cancel);\n function update(init) {\n const el = unrefElement(target);\n if (!isSupported.value || !el)\n return;\n if (!animate.value)\n animate.value = el.animate(toValue(keyframes), animateOptions);\n if (persist)\n animate.value.persist();\n if (_playbackRate !== 1)\n animate.value.playbackRate = _playbackRate;\n if (init && !immediate)\n animate.value.pause();\n else\n syncResume();\n onReady == null ? void 0 : onReady(animate.value);\n }\n const listenerOptions = { passive: true };\n useEventListener(animate, [\"cancel\", \"finish\", \"remove\"], syncPause, listenerOptions);\n useEventListener(animate, \"finish\", () => {\n var _a;\n if (commitStyles)\n (_a = animate.value) == null ? void 0 : _a.commitStyles();\n }, listenerOptions);\n const { resume: resumeRef, pause: pauseRef } = useRafFn(() => {\n if (!animate.value)\n return;\n store.pending = animate.value.pending;\n store.playState = animate.value.playState;\n store.replaceState = animate.value.replaceState;\n store.startTime = animate.value.startTime;\n store.currentTime = animate.value.currentTime;\n store.timeline = animate.value.timeline;\n store.playbackRate = animate.value.playbackRate;\n }, { immediate: false });\n function syncResume() {\n if (isSupported.value)\n resumeRef();\n }\n function syncPause() {\n if (isSupported.value && window)\n window.requestAnimationFrame(pauseRef);\n }\n return {\n isSupported,\n animate,\n // actions\n play,\n pause,\n reverse,\n finish,\n cancel,\n // state\n pending,\n playState,\n replaceState,\n startTime,\n currentTime,\n timeline,\n playbackRate\n };\n}\n\nfunction useAsyncQueue(tasks, options) {\n const {\n interrupt = true,\n onError = noop,\n onFinished = noop,\n signal\n } = options || {};\n const promiseState = {\n aborted: \"aborted\",\n fulfilled: \"fulfilled\",\n pending: \"pending\",\n rejected: \"rejected\"\n };\n const initialResult = Array.from(Array.from({ length: tasks.length }), () => ({ state: promiseState.pending, data: null }));\n const result = reactive(initialResult);\n const activeIndex = shallowRef(-1);\n if (!tasks || tasks.length === 0) {\n onFinished();\n return {\n activeIndex,\n result\n };\n }\n function updateResult(state, res) {\n activeIndex.value++;\n result[activeIndex.value].data = res;\n result[activeIndex.value].state = state;\n }\n tasks.reduce((prev, curr) => {\n return prev.then((prevRes) => {\n var _a;\n if (signal == null ? void 0 : signal.aborted) {\n updateResult(promiseState.aborted, new Error(\"aborted\"));\n return;\n }\n if (((_a = result[activeIndex.value]) == null ? void 0 : _a.state) === promiseState.rejected && interrupt) {\n onFinished();\n return;\n }\n const done = curr(prevRes).then((currentRes) => {\n updateResult(promiseState.fulfilled, currentRes);\n if (activeIndex.value === tasks.length - 1)\n onFinished();\n return currentRes;\n });\n if (!signal)\n return done;\n return Promise.race([done, whenAborted(signal)]);\n }).catch((e) => {\n if (signal == null ? void 0 : signal.aborted) {\n updateResult(promiseState.aborted, e);\n return e;\n }\n updateResult(promiseState.rejected, e);\n onError();\n return e;\n });\n }, Promise.resolve());\n return {\n activeIndex,\n result\n };\n}\nfunction whenAborted(signal) {\n return new Promise((resolve, reject) => {\n const error = new Error(\"aborted\");\n if (signal.aborted)\n reject(error);\n else\n signal.addEventListener(\"abort\", () => reject(error), { once: true });\n });\n}\n\nfunction useAsyncState(promise, initialState, options) {\n const {\n immediate = true,\n delay = 0,\n onError = noop,\n onSuccess = noop,\n resetOnExecute = true,\n shallow = true,\n throwError\n } = options != null ? options : {};\n const state = shallow ? shallowRef(initialState) : ref(initialState);\n const isReady = shallowRef(false);\n const isLoading = shallowRef(false);\n const error = shallowRef(void 0);\n async function execute(delay2 = 0, ...args) {\n if (resetOnExecute)\n state.value = initialState;\n error.value = void 0;\n isReady.value = false;\n isLoading.value = true;\n if (delay2 > 0)\n await promiseTimeout(delay2);\n const _promise = typeof promise === \"function\" ? promise(...args) : promise;\n try {\n const data = await _promise;\n state.value = data;\n isReady.value = true;\n onSuccess(data);\n } catch (e) {\n error.value = e;\n onError(e);\n if (throwError)\n throw e;\n } finally {\n isLoading.value = false;\n }\n return state.value;\n }\n if (immediate) {\n execute(delay);\n }\n const shell = {\n state,\n isReady,\n isLoading,\n error,\n execute,\n executeImmediate: (...args) => execute(0, ...args)\n };\n function waitUntilIsLoaded() {\n return new Promise((resolve, reject) => {\n until(isLoading).toBe(false).then(() => resolve(shell)).catch(reject);\n });\n }\n return {\n ...shell,\n then(onFulfilled, onRejected) {\n return waitUntilIsLoaded().then(onFulfilled, onRejected);\n }\n };\n}\n\nconst defaults = {\n array: (v) => JSON.stringify(v),\n object: (v) => JSON.stringify(v),\n set: (v) => JSON.stringify(Array.from(v)),\n map: (v) => JSON.stringify(Object.fromEntries(v)),\n null: () => \"\"\n};\nfunction getDefaultSerialization(target) {\n if (!target)\n return defaults.null;\n if (target instanceof Map)\n return defaults.map;\n else if (target instanceof Set)\n return defaults.set;\n else if (Array.isArray(target))\n return defaults.array;\n else\n return defaults.object;\n}\n\nfunction useBase64(target, options) {\n const base64 = shallowRef(\"\");\n const promise = shallowRef();\n function execute() {\n if (!isClient)\n return;\n promise.value = new Promise((resolve, reject) => {\n try {\n const _target = toValue(target);\n if (_target == null) {\n resolve(\"\");\n } else if (typeof _target === \"string\") {\n resolve(blobToBase64(new Blob([_target], { type: \"text/plain\" })));\n } else if (_target instanceof Blob) {\n resolve(blobToBase64(_target));\n } else if (_target instanceof ArrayBuffer) {\n resolve(window.btoa(String.fromCharCode(...new Uint8Array(_target))));\n } else if (_target instanceof HTMLCanvasElement) {\n resolve(_target.toDataURL(options == null ? void 0 : options.type, options == null ? void 0 : options.quality));\n } else if (_target instanceof HTMLImageElement) {\n const img = _target.cloneNode(false);\n img.crossOrigin = \"Anonymous\";\n imgLoaded(img).then(() => {\n const canvas = document.createElement(\"canvas\");\n const ctx = canvas.getContext(\"2d\");\n canvas.width = img.width;\n canvas.height = img.height;\n ctx.drawImage(img, 0, 0, canvas.width, canvas.height);\n resolve(canvas.toDataURL(options == null ? void 0 : options.type, options == null ? void 0 : options.quality));\n }).catch(reject);\n } else if (typeof _target === \"object\") {\n const _serializeFn = (options == null ? void 0 : options.serializer) || getDefaultSerialization(_target);\n const serialized = _serializeFn(_target);\n return resolve(blobToBase64(new Blob([serialized], { type: \"application/json\" })));\n } else {\n reject(new Error(\"target is unsupported types\"));\n }\n } catch (error) {\n reject(error);\n }\n });\n promise.value.then((res) => {\n base64.value = (options == null ? void 0 : options.dataUrl) === false ? res.replace(/^data:.*?;base64,/, \"\") : res;\n });\n return promise.value;\n }\n if (isRef(target) || typeof target === \"function\")\n watch(target, execute, { immediate: true });\n else\n execute();\n return {\n base64,\n promise,\n execute\n };\n}\nfunction imgLoaded(img) {\n return new Promise((resolve, reject) => {\n if (!img.complete) {\n img.onload = () => {\n resolve();\n };\n img.onerror = reject;\n } else {\n resolve();\n }\n });\n}\nfunction blobToBase64(blob) {\n return new Promise((resolve, reject) => {\n const fr = new FileReader();\n fr.onload = (e) => {\n resolve(e.target.result);\n };\n fr.onerror = reject;\n fr.readAsDataURL(blob);\n });\n}\n\nfunction useBattery(options = {}) {\n const { navigator = defaultNavigator } = options;\n const events = [\"chargingchange\", \"chargingtimechange\", \"dischargingtimechange\", \"levelchange\"];\n const isSupported = useSupported(() => navigator && \"getBattery\" in navigator && typeof navigator.getBattery === \"function\");\n const charging = shallowRef(false);\n const chargingTime = shallowRef(0);\n const dischargingTime = shallowRef(0);\n const level = shallowRef(1);\n let battery;\n function updateBatteryInfo() {\n charging.value = this.charging;\n chargingTime.value = this.chargingTime || 0;\n dischargingTime.value = this.dischargingTime || 0;\n level.value = this.level;\n }\n if (isSupported.value) {\n navigator.getBattery().then((_battery) => {\n battery = _battery;\n updateBatteryInfo.call(battery);\n useEventListener(battery, events, updateBatteryInfo, { passive: true });\n });\n }\n return {\n isSupported,\n charging,\n chargingTime,\n dischargingTime,\n level\n };\n}\n\nfunction useBluetooth(options) {\n let {\n acceptAllDevices = false\n } = options || {};\n const {\n filters = void 0,\n optionalServices = void 0,\n navigator = defaultNavigator\n } = options || {};\n const isSupported = useSupported(() => navigator && \"bluetooth\" in navigator);\n const device = shallowRef();\n const error = shallowRef(null);\n watch(device, () => {\n connectToBluetoothGATTServer();\n });\n async function requestDevice() {\n if (!isSupported.value)\n return;\n error.value = null;\n if (filters && filters.length > 0)\n acceptAllDevices = false;\n try {\n device.value = await (navigator == null ? void 0 : navigator.bluetooth.requestDevice({\n acceptAllDevices,\n filters,\n optionalServices\n }));\n } catch (err) {\n error.value = err;\n }\n }\n const server = shallowRef();\n const isConnected = shallowRef(false);\n function reset() {\n isConnected.value = false;\n device.value = void 0;\n server.value = void 0;\n }\n async function connectToBluetoothGATTServer() {\n error.value = null;\n if (device.value && device.value.gatt) {\n useEventListener(device, \"gattserverdisconnected\", reset, { passive: true });\n try {\n server.value = await device.value.gatt.connect();\n isConnected.value = server.value.connected;\n } catch (err) {\n error.value = err;\n }\n }\n }\n tryOnMounted(() => {\n var _a;\n if (device.value)\n (_a = device.value.gatt) == null ? void 0 : _a.connect();\n });\n tryOnScopeDispose(() => {\n var _a;\n if (device.value)\n (_a = device.value.gatt) == null ? void 0 : _a.disconnect();\n });\n return {\n isSupported,\n isConnected: readonly(isConnected),\n // Device:\n device,\n requestDevice,\n // Server:\n server,\n // Errors:\n error\n };\n}\n\nconst ssrWidthSymbol = Symbol(\"vueuse-ssr-width\");\nfunction useSSRWidth() {\n const ssrWidth = hasInjectionContext() ? injectLocal(ssrWidthSymbol, null) : null;\n return typeof ssrWidth === \"number\" ? ssrWidth : void 0;\n}\nfunction provideSSRWidth(width, app) {\n if (app !== void 0) {\n app.provide(ssrWidthSymbol, width);\n } else {\n provideLocal(ssrWidthSymbol, width);\n }\n}\n\nfunction useMediaQuery(query, options = {}) {\n const { window = defaultWindow, ssrWidth = useSSRWidth() } = options;\n const isSupported = useSupported(() => window && \"matchMedia\" in window && typeof window.matchMedia === \"function\");\n const ssrSupport = shallowRef(typeof ssrWidth === \"number\");\n const mediaQuery = shallowRef();\n const matches = shallowRef(false);\n const handler = (event) => {\n matches.value = event.matches;\n };\n watchEffect(() => {\n if (ssrSupport.value) {\n ssrSupport.value = !isSupported.value;\n const queryStrings = toValue(query).split(\",\");\n matches.value = queryStrings.some((queryString) => {\n const not = queryString.includes(\"not all\");\n const minWidth = queryString.match(/\\(\\s*min-width:\\s*(-?\\d+(?:\\.\\d*)?[a-z]+\\s*)\\)/);\n const maxWidth = queryString.match(/\\(\\s*max-width:\\s*(-?\\d+(?:\\.\\d*)?[a-z]+\\s*)\\)/);\n let res = Boolean(minWidth || maxWidth);\n if (minWidth && res) {\n res = ssrWidth >= pxValue(minWidth[1]);\n }\n if (maxWidth && res) {\n res = ssrWidth <= pxValue(maxWidth[1]);\n }\n return not ? !res : res;\n });\n return;\n }\n if (!isSupported.value)\n return;\n mediaQuery.value = window.matchMedia(toValue(query));\n matches.value = mediaQuery.value.matches;\n });\n useEventListener(mediaQuery, \"change\", handler, { passive: true });\n return computed(() => matches.value);\n}\n\nconst breakpointsTailwind = {\n \"sm\": 640,\n \"md\": 768,\n \"lg\": 1024,\n \"xl\": 1280,\n \"2xl\": 1536\n};\nconst breakpointsBootstrapV5 = {\n xs: 0,\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200,\n xxl: 1400\n};\nconst breakpointsVuetifyV2 = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1264,\n xl: 1904\n};\nconst breakpointsVuetifyV3 = {\n xs: 0,\n sm: 600,\n md: 960,\n lg: 1280,\n xl: 1920,\n xxl: 2560\n};\nconst breakpointsVuetify = breakpointsVuetifyV2;\nconst breakpointsAntDesign = {\n xs: 480,\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200,\n xxl: 1600\n};\nconst breakpointsQuasar = {\n xs: 0,\n sm: 600,\n md: 1024,\n lg: 1440,\n xl: 1920\n};\nconst breakpointsSematic = {\n mobileS: 320,\n mobileM: 375,\n mobileL: 425,\n tablet: 768,\n laptop: 1024,\n laptopL: 1440,\n desktop4K: 2560\n};\nconst breakpointsMasterCss = {\n \"3xs\": 360,\n \"2xs\": 480,\n \"xs\": 600,\n \"sm\": 768,\n \"md\": 1024,\n \"lg\": 1280,\n \"xl\": 1440,\n \"2xl\": 1600,\n \"3xl\": 1920,\n \"4xl\": 2560\n};\nconst breakpointsPrimeFlex = {\n sm: 576,\n md: 768,\n lg: 992,\n xl: 1200\n};\nconst breakpointsElement = {\n xs: 0,\n sm: 768,\n md: 992,\n lg: 1200,\n xl: 1920\n};\n\nfunction useBreakpoints(breakpoints, options = {}) {\n function getValue(k, delta) {\n let v = toValue(breakpoints[toValue(k)]);\n if (delta != null)\n v = increaseWithUnit(v, delta);\n if (typeof v === \"number\")\n v = `${v}px`;\n return v;\n }\n const { window = defaultWindow, strategy = \"min-width\", ssrWidth = useSSRWidth() } = options;\n const ssrSupport = typeof ssrWidth === \"number\";\n const mounted = ssrSupport ? shallowRef(false) : { value: true };\n if (ssrSupport) {\n tryOnMounted(() => mounted.value = !!window);\n }\n function match(query, size) {\n if (!mounted.value && ssrSupport) {\n return query === \"min\" ? ssrWidth >= pxValue(size) : ssrWidth <= pxValue(size);\n }\n if (!window)\n return false;\n return window.matchMedia(`(${query}-width: ${size})`).matches;\n }\n const greaterOrEqual = (k) => {\n return useMediaQuery(() => `(min-width: ${getValue(k)})`, options);\n };\n const smallerOrEqual = (k) => {\n return useMediaQuery(() => `(max-width: ${getValue(k)})`, options);\n };\n const shortcutMethods = Object.keys(breakpoints).reduce((shortcuts, k) => {\n Object.defineProperty(shortcuts, k, {\n get: () => strategy === \"min-width\" ? greaterOrEqual(k) : smallerOrEqual(k),\n enumerable: true,\n configurable: true\n });\n return shortcuts;\n }, {});\n function current() {\n const points = Object.keys(breakpoints).map((k) => [k, shortcutMethods[k], pxValue(getValue(k))]).sort((a, b) => a[2] - b[2]);\n return computed(() => points.filter(([, v]) => v.value).map(([k]) => k));\n }\n return Object.assign(shortcutMethods, {\n greaterOrEqual,\n smallerOrEqual,\n greater(k) {\n return useMediaQuery(() => `(min-width: ${getValue(k, 0.1)})`, options);\n },\n smaller(k) {\n return useMediaQuery(() => `(max-width: ${getValue(k, -0.1)})`, options);\n },\n between(a, b) {\n return useMediaQuery(() => `(min-width: ${getValue(a)}) and (max-width: ${getValue(b, -0.1)})`, options);\n },\n isGreater(k) {\n return match(\"min\", getValue(k, 0.1));\n },\n isGreaterOrEqual(k) {\n return match(\"min\", getValue(k));\n },\n isSmaller(k) {\n return match(\"max\", getValue(k, -0.1));\n },\n isSmallerOrEqual(k) {\n return match(\"max\", getValue(k));\n },\n isInBetween(a, b) {\n return match(\"min\", getValue(a)) && match(\"max\", getValue(b, -0.1));\n },\n current,\n active() {\n const bps = current();\n return computed(() => bps.value.length === 0 ? \"\" : bps.value.at(strategy === \"min-width\" ? -1 : 0));\n }\n });\n}\n\nfunction useBroadcastChannel(options) {\n const {\n name,\n window = defaultWindow\n } = options;\n const isSupported = useSupported(() => window && \"BroadcastChannel\" in window);\n const isClosed = shallowRef(false);\n const channel = ref();\n const data = ref();\n const error = shallowRef(null);\n const post = (data2) => {\n if (channel.value)\n channel.value.postMessage(data2);\n };\n const close = () => {\n if (channel.value)\n channel.value.close();\n isClosed.value = true;\n };\n if (isSupported.value) {\n tryOnMounted(() => {\n error.value = null;\n channel.value = new BroadcastChannel(name);\n const listenerOptions = {\n passive: true\n };\n useEventListener(channel, \"message\", (e) => {\n data.value = e.data;\n }, listenerOptions);\n useEventListener(channel, \"messageerror\", (e) => {\n error.value = e;\n }, listenerOptions);\n useEventListener(channel, \"close\", () => {\n isClosed.value = true;\n }, listenerOptions);\n });\n }\n tryOnScopeDispose(() => {\n close();\n });\n return {\n isSupported,\n channel,\n data,\n post,\n close,\n error,\n isClosed\n };\n}\n\nconst WRITABLE_PROPERTIES = [\n \"hash\",\n \"host\",\n \"hostname\",\n \"href\",\n \"pathname\",\n \"port\",\n \"protocol\",\n \"search\"\n];\nfunction useBrowserLocation(options = {}) {\n const { window = defaultWindow } = options;\n const refs = Object.fromEntries(\n WRITABLE_PROPERTIES.map((key) => [key, ref()])\n );\n for (const [key, ref] of objectEntries(refs)) {\n watch(ref, (value) => {\n if (!(window == null ? void 0 : window.location) || window.location[key] === value)\n return;\n window.location[key] = value;\n });\n }\n const buildState = (trigger) => {\n var _a;\n const { state: state2, length } = (window == null ? void 0 : window.history) || {};\n const { origin } = (window == null ? void 0 : window.location) || {};\n for (const key of WRITABLE_PROPERTIES)\n refs[key].value = (_a = window == null ? void 0 : window.location) == null ? void 0 : _a[key];\n return reactive({\n trigger,\n state: state2,\n length,\n origin,\n ...refs\n });\n };\n const state = ref(buildState(\"load\"));\n if (window) {\n const listenerOptions = { passive: true };\n useEventListener(window, \"popstate\", () => state.value = buildState(\"popstate\"), listenerOptions);\n useEventListener(window, \"hashchange\", () => state.value = buildState(\"hashchange\"), listenerOptions);\n }\n return state;\n}\n\nfunction useCached(refValue, comparator = (a, b) => a === b, options) {\n const { deepRefs = true, ...watchOptions } = options || {};\n const cachedValue = createRef(refValue.value, deepRefs);\n watch(() => refValue.value, (value) => {\n if (!comparator(value, cachedValue.value))\n cachedValue.value = value;\n }, watchOptions);\n return cachedValue;\n}\n\nfunction usePermission(permissionDesc, options = {}) {\n const {\n controls = false,\n navigator = defaultNavigator\n } = options;\n const isSupported = useSupported(() => navigator && \"permissions\" in navigator);\n const permissionStatus = shallowRef();\n const desc = typeof permissionDesc === \"string\" ? { name: permissionDesc } : permissionDesc;\n const state = shallowRef();\n const update = () => {\n var _a, _b;\n state.value = (_b = (_a = permissionStatus.value) == null ? void 0 : _a.state) != null ? _b : \"prompt\";\n };\n useEventListener(permissionStatus, \"change\", update, { passive: true });\n const query = createSingletonPromise(async () => {\n if (!isSupported.value)\n return;\n if (!permissionStatus.value) {\n try {\n permissionStatus.value = await navigator.permissions.query(desc);\n } catch (e) {\n permissionStatus.value = void 0;\n } finally {\n update();\n }\n }\n if (controls)\n return toRaw(permissionStatus.value);\n });\n query();\n if (controls) {\n return {\n state,\n isSupported,\n query\n };\n } else {\n return state;\n }\n}\n\nfunction useClipboard(options = {}) {\n const {\n navigator = defaultNavigator,\n read = false,\n source,\n copiedDuring = 1500,\n legacy = false\n } = options;\n const isClipboardApiSupported = useSupported(() => navigator && \"clipboard\" in navigator);\n const permissionRead = usePermission(\"clipboard-read\");\n const permissionWrite = usePermission(\"clipboard-write\");\n const isSupported = computed(() => isClipboardApiSupported.value || legacy);\n const text = shallowRef(\"\");\n const copied = shallowRef(false);\n const timeout = useTimeoutFn(() => copied.value = false, copiedDuring, { immediate: false });\n async function updateText() {\n let useLegacy = !(isClipboardApiSupported.value && isAllowed(permissionRead.value));\n if (!useLegacy) {\n try {\n text.value = await navigator.clipboard.readText();\n } catch (e) {\n useLegacy = true;\n }\n }\n if (useLegacy) {\n text.value = legacyRead();\n }\n }\n if (isSupported.value && read)\n useEventListener([\"copy\", \"cut\"], updateText, { passive: true });\n async function copy(value = toValue(source)) {\n if (isSupported.value && value != null) {\n let useLegacy = !(isClipboardApiSupported.value && isAllowed(permissionWrite.value));\n if (!useLegacy) {\n try {\n await navigator.clipboard.writeText(value);\n } catch (e) {\n useLegacy = true;\n }\n }\n if (useLegacy)\n legacyCopy(value);\n text.value = value;\n copied.value = true;\n timeout.start();\n }\n }\n function legacyCopy(value) {\n const ta = document.createElement(\"textarea\");\n ta.value = value != null ? value : \"\";\n ta.style.position = \"absolute\";\n ta.style.opacity = \"0\";\n document.body.appendChild(ta);\n ta.select();\n document.execCommand(\"copy\");\n ta.remove();\n }\n function legacyRead() {\n var _a, _b, _c;\n return (_c = (_b = (_a = document == null ? void 0 : document.getSelection) == null ? void 0 : _a.call(document)) == null ? void 0 : _b.toString()) != null ? _c : \"\";\n }\n function isAllowed(status) {\n return status === \"granted\" || status === \"prompt\";\n }\n return {\n isSupported,\n text,\n copied,\n copy\n };\n}\n\nfunction useClipboardItems(options = {}) {\n const {\n navigator = defaultNavigator,\n read = false,\n source,\n copiedDuring = 1500\n } = options;\n const isSupported = useSupported(() => navigator && \"clipboard\" in navigator);\n const content = ref([]);\n const copied = shallowRef(false);\n const timeout = useTimeoutFn(() => copied.value = false, copiedDuring, { immediate: false });\n function updateContent() {\n if (isSupported.value) {\n navigator.clipboard.read().then((items) => {\n content.value = items;\n });\n }\n }\n if (isSupported.value && read)\n useEventListener([\"copy\", \"cut\"], updateContent, { passive: true });\n async function copy(value = toValue(source)) {\n if (isSupported.value && value != null) {\n await navigator.clipboard.write(value);\n content.value = value;\n copied.value = true;\n timeout.start();\n }\n }\n return {\n isSupported,\n content,\n copied,\n copy\n };\n}\n\nfunction cloneFnJSON(source) {\n return JSON.parse(JSON.stringify(source));\n}\nfunction useCloned(source, options = {}) {\n const cloned = ref({});\n const isModified = shallowRef(false);\n let _lastSync = false;\n const {\n manual,\n clone = cloneFnJSON,\n // watch options\n deep = true,\n immediate = true\n } = options;\n watch(cloned, () => {\n if (_lastSync) {\n _lastSync = false;\n return;\n }\n isModified.value = true;\n }, {\n deep: true,\n flush: \"sync\"\n });\n function sync() {\n _lastSync = true;\n isModified.value = false;\n cloned.value = clone(toValue(source));\n }\n if (!manual && (isRef(source) || typeof source === \"function\")) {\n watch(source, sync, {\n ...options,\n deep,\n immediate\n });\n } else {\n sync();\n }\n return { cloned, isModified, sync };\n}\n\nconst _global = typeof globalThis !== \"undefined\" ? globalThis : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : {};\nconst globalKey = \"__vueuse_ssr_handlers__\";\nconst handlers = /* @__PURE__ */ getHandlers();\nfunction getHandlers() {\n if (!(globalKey in _global))\n _global[globalKey] = _global[globalKey] || {};\n return _global[globalKey];\n}\nfunction getSSRHandler(key, fallback) {\n return handlers[key] || fallback;\n}\nfunction setSSRHandler(key, fn) {\n handlers[key] = fn;\n}\n\nfunction usePreferredDark(options) {\n return useMediaQuery(\"(prefers-color-scheme: dark)\", options);\n}\n\nfunction guessSerializerType(rawInit) {\n return rawInit == null ? \"any\" : rawInit instanceof Set ? \"set\" : rawInit instanceof Map ? \"map\" : rawInit instanceof Date ? \"date\" : typeof rawInit === \"boolean\" ? \"boolean\" : typeof rawInit === \"string\" ? \"string\" : typeof rawInit === \"object\" ? \"object\" : !Number.isNaN(rawInit) ? \"number\" : \"any\";\n}\n\nconst StorageSerializers = {\n boolean: {\n read: (v) => v === \"true\",\n write: (v) => String(v)\n },\n object: {\n read: (v) => JSON.parse(v),\n write: (v) => JSON.stringify(v)\n },\n number: {\n read: (v) => Number.parseFloat(v),\n write: (v) => String(v)\n },\n any: {\n read: (v) => v,\n write: (v) => String(v)\n },\n string: {\n read: (v) => v,\n write: (v) => String(v)\n },\n map: {\n read: (v) => new Map(JSON.parse(v)),\n write: (v) => JSON.stringify(Array.from(v.entries()))\n },\n set: {\n read: (v) => new Set(JSON.parse(v)),\n write: (v) => JSON.stringify(Array.from(v))\n },\n date: {\n read: (v) => new Date(v),\n write: (v) => v.toISOString()\n }\n};\nconst customStorageEventName = \"vueuse-storage\";\nfunction useStorage(key, defaults, storage, options = {}) {\n var _a;\n const {\n flush = \"pre\",\n deep = true,\n listenToStorageChanges = true,\n writeDefaults = true,\n mergeDefaults = false,\n shallow,\n window = defaultWindow,\n eventFilter,\n onError = (e) => {\n console.error(e);\n },\n initOnMounted\n } = options;\n const data = (shallow ? shallowRef : ref)(typeof defaults === \"function\" ? defaults() : defaults);\n const keyComputed = computed(() => toValue(key));\n if (!storage) {\n try {\n storage = getSSRHandler(\"getDefaultStorage\", () => {\n var _a2;\n return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;\n })();\n } catch (e) {\n onError(e);\n }\n }\n if (!storage)\n return data;\n const rawInit = toValue(defaults);\n const type = guessSerializerType(rawInit);\n const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];\n const { pause: pauseWatch, resume: resumeWatch } = pausableWatch(\n data,\n () => write(data.value),\n { flush, deep, eventFilter }\n );\n watch(keyComputed, () => update(), { flush });\n let firstMounted = false;\n const onStorageEvent = (ev) => {\n if (initOnMounted && !firstMounted) {\n return;\n }\n update(ev);\n };\n const onStorageCustomEvent = (ev) => {\n if (initOnMounted && !firstMounted) {\n return;\n }\n updateFromCustomEvent(ev);\n };\n if (window && listenToStorageChanges) {\n if (storage instanceof Storage)\n useEventListener(window, \"storage\", onStorageEvent, { passive: true });\n else\n useEventListener(window, customStorageEventName, onStorageCustomEvent);\n }\n if (initOnMounted) {\n tryOnMounted(() => {\n firstMounted = true;\n update();\n });\n } else {\n update();\n }\n function dispatchWriteEvent(oldValue, newValue) {\n if (window) {\n const payload = {\n key: keyComputed.value,\n oldValue,\n newValue,\n storageArea: storage\n };\n window.dispatchEvent(storage instanceof Storage ? new StorageEvent(\"storage\", payload) : new CustomEvent(customStorageEventName, {\n detail: payload\n }));\n }\n }\n function write(v) {\n try {\n const oldValue = storage.getItem(keyComputed.value);\n if (v == null) {\n dispatchWriteEvent(oldValue, null);\n storage.removeItem(keyComputed.value);\n } else {\n const serialized = serializer.write(v);\n if (oldValue !== serialized) {\n storage.setItem(keyComputed.value, serialized);\n dispatchWriteEvent(oldValue, serialized);\n }\n }\n } catch (e) {\n onError(e);\n }\n }\n function read(event) {\n const rawValue = event ? event.newValue : storage.getItem(keyComputed.value);\n if (rawValue == null) {\n if (writeDefaults && rawInit != null)\n storage.setItem(keyComputed.value, serializer.write(rawInit));\n return rawInit;\n } else if (!event && mergeDefaults) {\n const value = serializer.read(rawValue);\n if (typeof mergeDefaults === \"function\")\n return mergeDefaults(value, rawInit);\n else if (type === \"object\" && !Array.isArray(value))\n return { ...rawInit, ...value };\n return value;\n } else if (typeof rawValue !== \"string\") {\n return rawValue;\n } else {\n return serializer.read(rawValue);\n }\n }\n function update(event) {\n if (event && event.storageArea !== storage)\n return;\n if (event && event.key == null) {\n data.value = rawInit;\n return;\n }\n if (event && event.key !== keyComputed.value)\n return;\n pauseWatch();\n try {\n if ((event == null ? void 0 : event.newValue) !== serializer.write(data.value))\n data.value = read(event);\n } catch (e) {\n onError(e);\n } finally {\n if (event)\n nextTick(resumeWatch);\n else\n resumeWatch();\n }\n }\n function updateFromCustomEvent(event) {\n update(event.detail);\n }\n return data;\n}\n\nconst CSS_DISABLE_TRANS = \"*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}\";\nfunction useColorMode(options = {}) {\n const {\n selector = \"html\",\n attribute = \"class\",\n initialValue = \"auto\",\n window = defaultWindow,\n storage,\n storageKey = \"vueuse-color-scheme\",\n listenToStorageChanges = true,\n storageRef,\n emitAuto,\n disableTransition = true\n } = options;\n const modes = {\n auto: \"\",\n light: \"light\",\n dark: \"dark\",\n ...options.modes || {}\n };\n const preferredDark = usePreferredDark({ window });\n const system = computed(() => preferredDark.value ? \"dark\" : \"light\");\n const store = storageRef || (storageKey == null ? toRef(initialValue) : useStorage(storageKey, initialValue, storage, { window, listenToStorageChanges }));\n const state = computed(() => store.value === \"auto\" ? system.value : store.value);\n const updateHTMLAttrs = getSSRHandler(\n \"updateHTMLAttrs\",\n (selector2, attribute2, value) => {\n const el = typeof selector2 === \"string\" ? window == null ? void 0 : window.document.querySelector(selector2) : unrefElement(selector2);\n if (!el)\n return;\n const classesToAdd = /* @__PURE__ */ new Set();\n const classesToRemove = /* @__PURE__ */ new Set();\n let attributeToChange = null;\n if (attribute2 === \"class\") {\n const current = value.split(/\\s/g);\n Object.values(modes).flatMap((i) => (i || \"\").split(/\\s/g)).filter(Boolean).forEach((v) => {\n if (current.includes(v))\n classesToAdd.add(v);\n else\n classesToRemove.add(v);\n });\n } else {\n attributeToChange = { key: attribute2, value };\n }\n if (classesToAdd.size === 0 && classesToRemove.size === 0 && attributeToChange === null)\n return;\n let style;\n if (disableTransition) {\n style = window.document.createElement(\"style\");\n style.appendChild(document.createTextNode(CSS_DISABLE_TRANS));\n window.document.head.appendChild(style);\n }\n for (const c of classesToAdd) {\n el.classList.add(c);\n }\n for (const c of classesToRemove) {\n el.classList.remove(c);\n }\n if (attributeToChange) {\n el.setAttribute(attributeToChange.key, attributeToChange.value);\n }\n if (disableTransition) {\n window.getComputedStyle(style).opacity;\n document.head.removeChild(style);\n }\n }\n );\n function defaultOnChanged(mode) {\n var _a;\n updateHTMLAttrs(selector, attribute, (_a = modes[mode]) != null ? _a : mode);\n }\n function onChanged(mode) {\n if (options.onChanged)\n options.onChanged(mode, defaultOnChanged);\n else\n defaultOnChanged(mode);\n }\n watch(state, onChanged, { flush: \"post\", immediate: true });\n tryOnMounted(() => onChanged(state.value));\n const auto = computed({\n get() {\n return emitAuto ? store.value : state.value;\n },\n set(v) {\n store.value = v;\n }\n });\n return Object.assign(auto, { store, system, state });\n}\n\nfunction useConfirmDialog(revealed = shallowRef(false)) {\n const confirmHook = createEventHook();\n const cancelHook = createEventHook();\n const revealHook = createEventHook();\n let _resolve = noop;\n const reveal = (data) => {\n revealHook.trigger(data);\n revealed.value = true;\n return new Promise((resolve) => {\n _resolve = resolve;\n });\n };\n const confirm = (data) => {\n revealed.value = false;\n confirmHook.trigger(data);\n _resolve({ data, isCanceled: false });\n };\n const cancel = (data) => {\n revealed.value = false;\n cancelHook.trigger(data);\n _resolve({ data, isCanceled: true });\n };\n return {\n isRevealed: computed(() => revealed.value),\n reveal,\n confirm,\n cancel,\n onReveal: revealHook.on,\n onConfirm: confirmHook.on,\n onCancel: cancelHook.on\n };\n}\n\nfunction useCountdown(initialCountdown, options) {\n var _a, _b;\n const remaining = shallowRef(toValue(initialCountdown));\n const intervalController = useIntervalFn(() => {\n var _a2, _b2;\n const value = remaining.value - 1;\n remaining.value = value < 0 ? 0 : value;\n (_a2 = options == null ? void 0 : options.onTick) == null ? void 0 : _a2.call(options);\n if (remaining.value <= 0) {\n intervalController.pause();\n (_b2 = options == null ? void 0 : options.onComplete) == null ? void 0 : _b2.call(options);\n }\n }, (_a = options == null ? void 0 : options.interval) != null ? _a : 1e3, { immediate: (_b = options == null ? void 0 : options.immediate) != null ? _b : false });\n const reset = (countdown) => {\n var _a2;\n remaining.value = (_a2 = toValue(countdown)) != null ? _a2 : toValue(initialCountdown);\n };\n const stop = () => {\n intervalController.pause();\n reset();\n };\n const resume = () => {\n if (!intervalController.isActive.value) {\n if (remaining.value > 0) {\n intervalController.resume();\n }\n }\n };\n const start = (countdown) => {\n reset(countdown);\n intervalController.resume();\n };\n return {\n remaining,\n reset,\n stop,\n start,\n pause: intervalController.pause,\n resume,\n isActive: intervalController.isActive\n };\n}\n\nfunction useCssVar(prop, target, options = {}) {\n const { window = defaultWindow, initialValue, observe = false } = options;\n const variable = shallowRef(initialValue);\n const elRef = computed(() => {\n var _a;\n return unrefElement(target) || ((_a = window == null ? void 0 : window.document) == null ? void 0 : _a.documentElement);\n });\n function updateCssVar() {\n var _a;\n const key = toValue(prop);\n const el = toValue(elRef);\n if (el && window && key) {\n const value = (_a = window.getComputedStyle(el).getPropertyValue(key)) == null ? void 0 : _a.trim();\n variable.value = value || variable.value || initialValue;\n }\n }\n if (observe) {\n useMutationObserver(elRef, updateCssVar, {\n attributeFilter: [\"style\", \"class\"],\n window\n });\n }\n watch(\n [elRef, () => toValue(prop)],\n (_, old) => {\n if (old[0] && old[1])\n old[0].style.removeProperty(old[1]);\n updateCssVar();\n },\n { immediate: true }\n );\n watch(\n [variable, elRef],\n ([val, el]) => {\n const raw_prop = toValue(prop);\n if ((el == null ? void 0 : el.style) && raw_prop) {\n if (val == null)\n el.style.removeProperty(raw_prop);\n else\n el.style.setProperty(raw_prop, val);\n }\n },\n { immediate: true }\n );\n return variable;\n}\n\nfunction useCurrentElement(rootComponent) {\n const vm = getCurrentInstance();\n const currentElement = computedWithControl(\n () => null,\n () => rootComponent ? unrefElement(rootComponent) : vm.proxy.$el\n );\n onUpdated(currentElement.trigger);\n onMounted(currentElement.trigger);\n return currentElement;\n}\n\nfunction useCycleList(list, options) {\n const state = shallowRef(getInitialValue());\n const listRef = toRef(list);\n const index = computed({\n get() {\n var _a;\n const targetList = listRef.value;\n let index2 = (options == null ? void 0 : options.getIndexOf) ? options.getIndexOf(state.value, targetList) : targetList.indexOf(state.value);\n if (index2 < 0)\n index2 = (_a = options == null ? void 0 : options.fallbackIndex) != null ? _a : 0;\n return index2;\n },\n set(v) {\n set(v);\n }\n });\n function set(i) {\n const targetList = listRef.value;\n const length = targetList.length;\n const index2 = (i % length + length) % length;\n const value = targetList[index2];\n state.value = value;\n return value;\n }\n function shift(delta = 1) {\n return set(index.value + delta);\n }\n function next(n = 1) {\n return shift(n);\n }\n function prev(n = 1) {\n return shift(-n);\n }\n function getInitialValue() {\n var _a, _b;\n return (_b = toValue((_a = options == null ? void 0 : options.initialValue) != null ? _a : toValue(list)[0])) != null ? _b : void 0;\n }\n watch(listRef, () => set(index.value));\n return {\n state,\n index,\n next,\n prev,\n go: set\n };\n}\n\nfunction useDark(options = {}) {\n const {\n valueDark = \"dark\",\n valueLight = \"\"\n } = options;\n const mode = useColorMode({\n ...options,\n onChanged: (mode2, defaultHandler) => {\n var _a;\n if (options.onChanged)\n (_a = options.onChanged) == null ? void 0 : _a.call(options, mode2 === \"dark\", defaultHandler, mode2);\n else\n defaultHandler(mode2);\n },\n modes: {\n dark: valueDark,\n light: valueLight\n }\n });\n const system = computed(() => mode.system.value);\n const isDark = computed({\n get() {\n return mode.value === \"dark\";\n },\n set(v) {\n const modeVal = v ? \"dark\" : \"light\";\n if (system.value === modeVal)\n mode.value = \"auto\";\n else\n mode.value = modeVal;\n }\n });\n return isDark;\n}\n\nfunction fnBypass(v) {\n return v;\n}\nfunction fnSetSource(source, value) {\n return source.value = value;\n}\nfunction defaultDump(clone) {\n return clone ? typeof clone === \"function\" ? clone : cloneFnJSON : fnBypass;\n}\nfunction defaultParse(clone) {\n return clone ? typeof clone === \"function\" ? clone : cloneFnJSON : fnBypass;\n}\nfunction useManualRefHistory(source, options = {}) {\n const {\n clone = false,\n dump = defaultDump(clone),\n parse = defaultParse(clone),\n setSource = fnSetSource\n } = options;\n function _createHistoryRecord() {\n return markRaw({\n snapshot: dump(source.value),\n timestamp: timestamp()\n });\n }\n const last = ref(_createHistoryRecord());\n const undoStack = ref([]);\n const redoStack = ref([]);\n const _setSource = (record) => {\n setSource(source, parse(record.snapshot));\n last.value = record;\n };\n const commit = () => {\n undoStack.value.unshift(last.value);\n last.value = _createHistoryRecord();\n if (options.capacity && undoStack.value.length > options.capacity)\n undoStack.value.splice(options.capacity, Number.POSITIVE_INFINITY);\n if (redoStack.value.length)\n redoStack.value.splice(0, redoStack.value.length);\n };\n const clear = () => {\n undoStack.value.splice(0, undoStack.value.length);\n redoStack.value.splice(0, redoStack.value.length);\n };\n const undo = () => {\n const state = undoStack.value.shift();\n if (state) {\n redoStack.value.unshift(last.value);\n _setSource(state);\n }\n };\n const redo = () => {\n const state = redoStack.value.shift();\n if (state) {\n undoStack.value.unshift(last.value);\n _setSource(state);\n }\n };\n const reset = () => {\n _setSource(last.value);\n };\n const history = computed(() => [last.value, ...undoStack.value]);\n const canUndo = computed(() => undoStack.value.length > 0);\n const canRedo = computed(() => redoStack.value.length > 0);\n return {\n source,\n undoStack,\n redoStack,\n last,\n history,\n canUndo,\n canRedo,\n clear,\n commit,\n reset,\n undo,\n redo\n };\n}\n\nfunction useRefHistory(source, options = {}) {\n const {\n deep = false,\n flush = \"pre\",\n eventFilter,\n shouldCommit = () => true\n } = options;\n const {\n eventFilter: composedFilter,\n pause,\n resume: resumeTracking,\n isActive: isTracking\n } = pausableFilter(eventFilter);\n let lastRawValue = source.value;\n const {\n ignoreUpdates,\n ignorePrevAsyncUpdates,\n stop\n } = watchIgnorable(\n source,\n commit,\n { deep, flush, eventFilter: composedFilter }\n );\n function setSource(source2, value) {\n ignorePrevAsyncUpdates();\n ignoreUpdates(() => {\n source2.value = value;\n lastRawValue = value;\n });\n }\n const manualHistory = useManualRefHistory(source, { ...options, clone: options.clone || deep, setSource });\n const { clear, commit: manualCommit } = manualHistory;\n function commit() {\n ignorePrevAsyncUpdates();\n if (!shouldCommit(lastRawValue, source.value))\n return;\n lastRawValue = source.value;\n manualCommit();\n }\n function resume(commitNow) {\n resumeTracking();\n if (commitNow)\n commit();\n }\n function batch(fn) {\n let canceled = false;\n const cancel = () => canceled = true;\n ignoreUpdates(() => {\n fn(cancel);\n });\n if (!canceled)\n commit();\n }\n function dispose() {\n stop();\n clear();\n }\n return {\n ...manualHistory,\n isTracking,\n pause,\n resume,\n commit,\n batch,\n dispose\n };\n}\n\nfunction useDebouncedRefHistory(source, options = {}) {\n const filter = options.debounce ? debounceFilter(options.debounce) : void 0;\n const history = useRefHistory(source, { ...options, eventFilter: filter });\n return {\n ...history\n };\n}\n\nfunction useDeviceMotion(options = {}) {\n const {\n window = defaultWindow,\n requestPermissions = false,\n eventFilter = bypassFilter\n } = options;\n const isSupported = useSupported(() => typeof DeviceMotionEvent !== \"undefined\");\n const requirePermissions = useSupported(() => isSupported.value && \"requestPermission\" in DeviceMotionEvent && typeof DeviceMotionEvent.requestPermission === \"function\");\n const permissionGranted = shallowRef(false);\n const acceleration = ref({ x: null, y: null, z: null });\n const rotationRate = ref({ alpha: null, beta: null, gamma: null });\n const interval = shallowRef(0);\n const accelerationIncludingGravity = ref({\n x: null,\n y: null,\n z: null\n });\n function init() {\n if (window) {\n const onDeviceMotion = createFilterWrapper(\n eventFilter,\n (event) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i;\n acceleration.value = {\n x: ((_a = event.acceleration) == null ? void 0 : _a.x) || null,\n y: ((_b = event.acceleration) == null ? void 0 : _b.y) || null,\n z: ((_c = event.acceleration) == null ? void 0 : _c.z) || null\n };\n accelerationIncludingGravity.value = {\n x: ((_d = event.accelerationIncludingGravity) == null ? void 0 : _d.x) || null,\n y: ((_e = event.accelerationIncludingGravity) == null ? void 0 : _e.y) || null,\n z: ((_f = event.accelerationIncludingGravity) == null ? void 0 : _f.z) || null\n };\n rotationRate.value = {\n alpha: ((_g = event.rotationRate) == null ? void 0 : _g.alpha) || null,\n beta: ((_h = event.rotationRate) == null ? void 0 : _h.beta) || null,\n gamma: ((_i = event.rotationRate) == null ? void 0 : _i.gamma) || null\n };\n interval.value = event.interval;\n }\n );\n useEventListener(window, \"devicemotion\", onDeviceMotion, { passive: true });\n }\n }\n const ensurePermissions = async () => {\n if (!requirePermissions.value)\n permissionGranted.value = true;\n if (permissionGranted.value)\n return;\n if (requirePermissions.value) {\n const requestPermission = DeviceMotionEvent.requestPermission;\n try {\n const response = await requestPermission();\n if (response === \"granted\") {\n permissionGranted.value = true;\n init();\n }\n } catch (error) {\n console.error(error);\n }\n }\n };\n if (isSupported.value) {\n if (requestPermissions && requirePermissions.value) {\n ensurePermissions().then(() => init());\n } else {\n init();\n }\n }\n return {\n acceleration,\n accelerationIncludingGravity,\n rotationRate,\n interval,\n isSupported,\n requirePermissions,\n ensurePermissions,\n permissionGranted\n };\n}\n\nfunction useDeviceOrientation(options = {}) {\n const { window = defaultWindow } = options;\n const isSupported = useSupported(() => window && \"DeviceOrientationEvent\" in window);\n const isAbsolute = shallowRef(false);\n const alpha = shallowRef(null);\n const beta = shallowRef(null);\n const gamma = shallowRef(null);\n if (window && isSupported.value) {\n useEventListener(window, \"deviceorientation\", (event) => {\n isAbsolute.value = event.absolute;\n alpha.value = event.alpha;\n beta.value = event.beta;\n gamma.value = event.gamma;\n }, { passive: true });\n }\n return {\n isSupported,\n isAbsolute,\n alpha,\n beta,\n gamma\n };\n}\n\nfunction useDevicePixelRatio(options = {}) {\n const {\n window = defaultWindow\n } = options;\n const pixelRatio = shallowRef(1);\n const query = useMediaQuery(() => `(resolution: ${pixelRatio.value}dppx)`, options);\n let stop = noop;\n if (window) {\n stop = watchImmediate(query, () => pixelRatio.value = window.devicePixelRatio);\n }\n return {\n pixelRatio: readonly(pixelRatio),\n stop\n };\n}\n\nfunction useDevicesList(options = {}) {\n const {\n navigator = defaultNavigator,\n requestPermissions = false,\n constraints = { audio: true, video: true },\n onUpdated\n } = options;\n const devices = ref([]);\n const videoInputs = computed(() => devices.value.filter((i) => i.kind === \"videoinput\"));\n const audioInputs = computed(() => devices.value.filter((i) => i.kind === \"audioinput\"));\n const audioOutputs = computed(() => devices.value.filter((i) => i.kind === \"audiooutput\"));\n const isSupported = useSupported(() => navigator && navigator.mediaDevices && navigator.mediaDevices.enumerateDevices);\n const permissionGranted = shallowRef(false);\n let stream;\n async function update() {\n if (!isSupported.value)\n return;\n devices.value = await navigator.mediaDevices.enumerateDevices();\n onUpdated == null ? void 0 : onUpdated(devices.value);\n if (stream) {\n stream.getTracks().forEach((t) => t.stop());\n stream = null;\n }\n }\n async function ensurePermissions() {\n const deviceName = constraints.video ? \"camera\" : \"microphone\";\n if (!isSupported.value)\n return false;\n if (permissionGranted.value)\n return true;\n const { state, query } = usePermission(deviceName, { controls: true });\n await query();\n if (state.value !== \"granted\") {\n let granted = true;\n try {\n const allDevices = await navigator.mediaDevices.enumerateDevices();\n const hasCamera = allDevices.some((device) => device.kind === \"videoinput\");\n const hasMicrophone = allDevices.some((device) => device.kind === \"audioinput\" || device.kind === \"audiooutput\");\n constraints.video = hasCamera ? constraints.video : false;\n constraints.audio = hasMicrophone ? constraints.audio : false;\n stream = await navigator.mediaDevices.getUserMedia(constraints);\n } catch (e) {\n stream = null;\n granted = false;\n }\n update();\n permissionGranted.value = granted;\n } else {\n permissionGranted.value = true;\n }\n return permissionGranted.value;\n }\n if (isSupported.value) {\n if (requestPermissions)\n ensurePermissions();\n useEventListener(navigator.mediaDevices, \"devicechange\", update, { passive: true });\n update();\n }\n return {\n devices,\n ensurePermissions,\n permissionGranted,\n videoInputs,\n audioInputs,\n audioOutputs,\n isSupported\n };\n}\n\nfunction useDisplayMedia(options = {}) {\n var _a;\n const enabled = shallowRef((_a = options.enabled) != null ? _a : false);\n const video = options.video;\n const audio = options.audio;\n const { navigator = defaultNavigator } = options;\n const isSupported = useSupported(() => {\n var _a2;\n return (_a2 = navigator == null ? void 0 : navigator.mediaDevices) == null ? void 0 : _a2.getDisplayMedia;\n });\n const constraint = { audio, video };\n const stream = shallowRef();\n async function _start() {\n var _a2;\n if (!isSupported.value || stream.value)\n return;\n stream.value = await navigator.mediaDevices.getDisplayMedia(constraint);\n (_a2 = stream.value) == null ? void 0 : _a2.getTracks().forEach((t) => useEventListener(t, \"ended\", stop, { passive: true }));\n return stream.value;\n }\n async function _stop() {\n var _a2;\n (_a2 = stream.value) == null ? void 0 : _a2.getTracks().forEach((t) => t.stop());\n stream.value = void 0;\n }\n function stop() {\n _stop();\n enabled.value = false;\n }\n async function start() {\n await _start();\n if (stream.value)\n enabled.value = true;\n return stream.value;\n }\n watch(\n enabled,\n (v) => {\n if (v)\n _start();\n else\n _stop();\n },\n { immediate: true }\n );\n return {\n isSupported,\n stream,\n start,\n stop,\n enabled\n };\n}\n\nfunction useDocumentVisibility(options = {}) {\n const { document = defaultDocument } = options;\n if (!document)\n return shallowRef(\"visible\");\n const visibility = shallowRef(document.visibilityState);\n useEventListener(document, \"visibilitychange\", () => {\n visibility.value = document.visibilityState;\n }, { passive: true });\n return visibility;\n}\n\nfunction useDraggable(target, options = {}) {\n var _a;\n const {\n pointerTypes,\n preventDefault,\n stopPropagation,\n exact,\n onMove,\n onEnd,\n onStart,\n initialValue,\n axis = \"both\",\n draggingElement = defaultWindow,\n containerElement,\n handle: draggingHandle = target,\n buttons = [0]\n } = options;\n const position = ref(\n (_a = toValue(initialValue)) != null ? _a : { x: 0, y: 0 }\n );\n const pressedDelta = ref();\n const filterEvent = (e) => {\n if (pointerTypes)\n return pointerTypes.includes(e.pointerType);\n return true;\n };\n const handleEvent = (e) => {\n if (toValue(preventDefault))\n e.preventDefault();\n if (toValue(stopPropagation))\n e.stopPropagation();\n };\n const start = (e) => {\n var _a2;\n if (!toValue(buttons).includes(e.button))\n return;\n if (toValue(options.disabled) || !filterEvent(e))\n return;\n if (toValue(exact) && e.target !== toValue(target))\n return;\n const container = toValue(containerElement);\n const containerRect = (_a2 = container == null ? void 0 : container.getBoundingClientRect) == null ? void 0 : _a2.call(container);\n const targetRect = toValue(target).getBoundingClientRect();\n const pos = {\n x: e.clientX - (container ? targetRect.left - containerRect.left + container.scrollLeft : targetRect.left),\n y: e.clientY - (container ? targetRect.top - containerRect.top + container.scrollTop : targetRect.top)\n };\n if ((onStart == null ? void 0 : onStart(pos, e)) === false)\n return;\n pressedDelta.value = pos;\n handleEvent(e);\n };\n const move = (e) => {\n if (toValue(options.disabled) || !filterEvent(e))\n return;\n if (!pressedDelta.value)\n return;\n const container = toValue(containerElement);\n const targetRect = toValue(target).getBoundingClientRect();\n let { x, y } = position.value;\n if (axis === \"x\" || axis === \"both\") {\n x = e.clientX - pressedDelta.value.x;\n if (container)\n x = Math.min(Math.max(0, x), container.scrollWidth - targetRect.width);\n }\n if (axis === \"y\" || axis === \"both\") {\n y = e.clientY - pressedDelta.value.y;\n if (container)\n y = Math.min(Math.max(0, y), container.scrollHeight - targetRect.height);\n }\n position.value = {\n x,\n y\n };\n onMove == null ? void 0 : onMove(position.value, e);\n handleEvent(e);\n };\n const end = (e) => {\n if (toValue(options.disabled) || !filterEvent(e))\n return;\n if (!pressedDelta.value)\n return;\n pressedDelta.value = void 0;\n onEnd == null ? void 0 : onEnd(position.value, e);\n handleEvent(e);\n };\n if (isClient) {\n const config = () => {\n var _a2;\n return {\n capture: (_a2 = options.capture) != null ? _a2 : true,\n passive: !toValue(preventDefault)\n };\n };\n useEventListener(draggingHandle, \"pointerdown\", start, config);\n useEventListener(draggingElement, \"pointermove\", move, config);\n useEventListener(draggingElement, \"pointerup\", end, config);\n }\n return {\n ...toRefs(position),\n position,\n isDragging: computed(() => !!pressedDelta.value),\n style: computed(\n () => `left:${position.value.x}px;top:${position.value.y}px;`\n )\n };\n}\n\nfunction useDropZone(target, options = {}) {\n var _a, _b;\n const isOverDropZone = shallowRef(false);\n const files = shallowRef(null);\n let counter = 0;\n let isValid = true;\n if (isClient) {\n const _options = typeof options === \"function\" ? { onDrop: options } : options;\n const multiple = (_a = _options.multiple) != null ? _a : true;\n const preventDefaultForUnhandled = (_b = _options.preventDefaultForUnhandled) != null ? _b : false;\n const getFiles = (event) => {\n var _a2, _b2;\n const list = Array.from((_b2 = (_a2 = event.dataTransfer) == null ? void 0 : _a2.files) != null ? _b2 : []);\n return list.length === 0 ? null : multiple ? list : [list[0]];\n };\n const checkDataTypes = (types) => {\n const dataTypes = unref(_options.dataTypes);\n if (typeof dataTypes === \"function\")\n return dataTypes(types);\n if (!(dataTypes == null ? void 0 : dataTypes.length))\n return true;\n if (types.length === 0)\n return false;\n return types.every(\n (type) => dataTypes.some((allowedType) => type.includes(allowedType))\n );\n };\n const checkValidity = (items) => {\n const types = Array.from(items != null ? items : []).map((item) => item.type);\n const dataTypesValid = checkDataTypes(types);\n const multipleFilesValid = multiple || items.length <= 1;\n return dataTypesValid && multipleFilesValid;\n };\n const isSafari = () => /^(?:(?!chrome|android).)*safari/i.test(navigator.userAgent) && !(\"chrome\" in window);\n const handleDragEvent = (event, eventType) => {\n var _a2, _b2, _c, _d, _e, _f;\n const dataTransferItemList = (_a2 = event.dataTransfer) == null ? void 0 : _a2.items;\n isValid = (_b2 = dataTransferItemList && checkValidity(dataTransferItemList)) != null ? _b2 : false;\n if (preventDefaultForUnhandled) {\n event.preventDefault();\n }\n if (!isSafari() && !isValid) {\n if (event.dataTransfer) {\n event.dataTransfer.dropEffect = \"none\";\n }\n return;\n }\n event.preventDefault();\n if (event.dataTransfer) {\n event.dataTransfer.dropEffect = \"copy\";\n }\n const currentFiles = getFiles(event);\n switch (eventType) {\n case \"enter\":\n counter += 1;\n isOverDropZone.value = true;\n (_c = _options.onEnter) == null ? void 0 : _c.call(_options, null, event);\n break;\n case \"over\":\n (_d = _options.onOver) == null ? void 0 : _d.call(_options, null, event);\n break;\n case \"leave\":\n counter -= 1;\n if (counter === 0)\n isOverDropZone.value = false;\n (_e = _options.onLeave) == null ? void 0 : _e.call(_options, null, event);\n break;\n case \"drop\":\n counter = 0;\n isOverDropZone.value = false;\n if (isValid) {\n files.value = currentFiles;\n (_f = _options.onDrop) == null ? void 0 : _f.call(_options, currentFiles, event);\n }\n break;\n }\n };\n useEventListener(target, \"dragenter\", (event) => handleDragEvent(event, \"enter\"));\n useEventListener(target, \"dragover\", (event) => handleDragEvent(event, \"over\"));\n useEventListener(target, \"dragleave\", (event) => handleDragEvent(event, \"leave\"));\n useEventListener(target, \"drop\", (event) => handleDragEvent(event, \"drop\"));\n }\n return {\n files,\n isOverDropZone\n };\n}\n\nfunction useResizeObserver(target, callback, options = {}) {\n const { window = defaultWindow, ...observerOptions } = options;\n let observer;\n const isSupported = useSupported(() => window && \"ResizeObserver\" in window);\n const cleanup = () => {\n if (observer) {\n observer.disconnect();\n observer = void 0;\n }\n };\n const targets = computed(() => {\n const _targets = toValue(target);\n return Array.isArray(_targets) ? _targets.map((el) => unrefElement(el)) : [unrefElement(_targets)];\n });\n const stopWatch = watch(\n targets,\n (els) => {\n cleanup();\n if (isSupported.value && window) {\n observer = new ResizeObserver(callback);\n for (const _el of els) {\n if (_el)\n observer.observe(_el, observerOptions);\n }\n }\n },\n { immediate: true, flush: \"post\" }\n );\n const stop = () => {\n cleanup();\n stopWatch();\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n stop\n };\n}\n\nfunction useElementBounding(target, options = {}) {\n const {\n reset = true,\n windowResize = true,\n windowScroll = true,\n immediate = true,\n updateTiming = \"sync\"\n } = options;\n const height = shallowRef(0);\n const bottom = shallowRef(0);\n const left = shallowRef(0);\n const right = shallowRef(0);\n const top = shallowRef(0);\n const width = shallowRef(0);\n const x = shallowRef(0);\n const y = shallowRef(0);\n function recalculate() {\n const el = unrefElement(target);\n if (!el) {\n if (reset) {\n height.value = 0;\n bottom.value = 0;\n left.value = 0;\n right.value = 0;\n top.value = 0;\n width.value = 0;\n x.value = 0;\n y.value = 0;\n }\n return;\n }\n const rect = el.getBoundingClientRect();\n height.value = rect.height;\n bottom.value = rect.bottom;\n left.value = rect.left;\n right.value = rect.right;\n top.value = rect.top;\n width.value = rect.width;\n x.value = rect.x;\n y.value = rect.y;\n }\n function update() {\n if (updateTiming === \"sync\")\n recalculate();\n else if (updateTiming === \"next-frame\")\n requestAnimationFrame(() => recalculate());\n }\n useResizeObserver(target, update);\n watch(() => unrefElement(target), (ele) => !ele && update());\n useMutationObserver(target, update, {\n attributeFilter: [\"style\", \"class\"]\n });\n if (windowScroll)\n useEventListener(\"scroll\", update, { capture: true, passive: true });\n if (windowResize)\n useEventListener(\"resize\", update, { passive: true });\n tryOnMounted(() => {\n if (immediate)\n update();\n });\n return {\n height,\n bottom,\n left,\n right,\n top,\n width,\n x,\n y,\n update\n };\n}\n\nfunction useElementByPoint(options) {\n const {\n x,\n y,\n document = defaultDocument,\n multiple,\n interval = \"requestAnimationFrame\",\n immediate = true\n } = options;\n const isSupported = useSupported(() => {\n if (toValue(multiple))\n return document && \"elementsFromPoint\" in document;\n return document && \"elementFromPoint\" in document;\n });\n const element = shallowRef(null);\n const cb = () => {\n var _a, _b;\n element.value = toValue(multiple) ? (_a = document == null ? void 0 : document.elementsFromPoint(toValue(x), toValue(y))) != null ? _a : [] : (_b = document == null ? void 0 : document.elementFromPoint(toValue(x), toValue(y))) != null ? _b : null;\n };\n const controls = interval === \"requestAnimationFrame\" ? useRafFn(cb, { immediate }) : useIntervalFn(cb, interval, { immediate });\n return {\n isSupported,\n element,\n ...controls\n };\n}\n\nfunction useElementHover(el, options = {}) {\n const {\n delayEnter = 0,\n delayLeave = 0,\n triggerOnRemoval = false,\n window = defaultWindow\n } = options;\n const isHovered = shallowRef(false);\n let timer;\n const toggle = (entering) => {\n const delay = entering ? delayEnter : delayLeave;\n if (timer) {\n clearTimeout(timer);\n timer = void 0;\n }\n if (delay)\n timer = setTimeout(() => isHovered.value = entering, delay);\n else\n isHovered.value = entering;\n };\n if (!window)\n return isHovered;\n useEventListener(el, \"mouseenter\", () => toggle(true), { passive: true });\n useEventListener(el, \"mouseleave\", () => toggle(false), { passive: true });\n if (triggerOnRemoval) {\n onElementRemoval(\n computed(() => unrefElement(el)),\n () => toggle(false)\n );\n }\n return isHovered;\n}\n\nfunction useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {\n const { window = defaultWindow, box = \"content-box\" } = options;\n const isSVG = computed(() => {\n var _a, _b;\n return (_b = (_a = unrefElement(target)) == null ? void 0 : _a.namespaceURI) == null ? void 0 : _b.includes(\"svg\");\n });\n const width = shallowRef(initialSize.width);\n const height = shallowRef(initialSize.height);\n const { stop: stop1 } = useResizeObserver(\n target,\n ([entry]) => {\n const boxSize = box === \"border-box\" ? entry.borderBoxSize : box === \"content-box\" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;\n if (window && isSVG.value) {\n const $elem = unrefElement(target);\n if ($elem) {\n const rect = $elem.getBoundingClientRect();\n width.value = rect.width;\n height.value = rect.height;\n }\n } else {\n if (boxSize) {\n const formatBoxSize = toArray(boxSize);\n width.value = formatBoxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);\n height.value = formatBoxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);\n } else {\n width.value = entry.contentRect.width;\n height.value = entry.contentRect.height;\n }\n }\n },\n options\n );\n tryOnMounted(() => {\n const ele = unrefElement(target);\n if (ele) {\n width.value = \"offsetWidth\" in ele ? ele.offsetWidth : initialSize.width;\n height.value = \"offsetHeight\" in ele ? ele.offsetHeight : initialSize.height;\n }\n });\n const stop2 = watch(\n () => unrefElement(target),\n (ele) => {\n width.value = ele ? initialSize.width : 0;\n height.value = ele ? initialSize.height : 0;\n }\n );\n function stop() {\n stop1();\n stop2();\n }\n return {\n width,\n height,\n stop\n };\n}\n\nfunction useIntersectionObserver(target, callback, options = {}) {\n const {\n root,\n rootMargin = \"0px\",\n threshold = 0,\n window = defaultWindow,\n immediate = true\n } = options;\n const isSupported = useSupported(() => window && \"IntersectionObserver\" in window);\n const targets = computed(() => {\n const _target = toValue(target);\n return toArray(_target).map(unrefElement).filter(notNullish);\n });\n let cleanup = noop;\n const isActive = shallowRef(immediate);\n const stopWatch = isSupported.value ? watch(\n () => [targets.value, unrefElement(root), isActive.value],\n ([targets2, root2]) => {\n cleanup();\n if (!isActive.value)\n return;\n if (!targets2.length)\n return;\n const observer = new IntersectionObserver(\n callback,\n {\n root: unrefElement(root2),\n rootMargin,\n threshold\n }\n );\n targets2.forEach((el) => el && observer.observe(el));\n cleanup = () => {\n observer.disconnect();\n cleanup = noop;\n };\n },\n { immediate, flush: \"post\" }\n ) : noop;\n const stop = () => {\n cleanup();\n stopWatch();\n isActive.value = false;\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n isActive,\n pause() {\n cleanup();\n isActive.value = false;\n },\n resume() {\n isActive.value = true;\n },\n stop\n };\n}\n\nfunction useElementVisibility(element, options = {}) {\n const {\n window = defaultWindow,\n scrollTarget,\n threshold = 0,\n rootMargin,\n once = false\n } = options;\n const elementIsVisible = shallowRef(false);\n const { stop } = useIntersectionObserver(\n element,\n (intersectionObserverEntries) => {\n let isIntersecting = elementIsVisible.value;\n let latestTime = 0;\n for (const entry of intersectionObserverEntries) {\n if (entry.time >= latestTime) {\n latestTime = entry.time;\n isIntersecting = entry.isIntersecting;\n }\n }\n elementIsVisible.value = isIntersecting;\n if (once) {\n watchOnce(elementIsVisible, () => {\n stop();\n });\n }\n },\n {\n root: scrollTarget,\n window,\n threshold,\n rootMargin: toValue(rootMargin)\n }\n );\n return elementIsVisible;\n}\n\nconst events = /* @__PURE__ */ new Map();\n\nfunction useEventBus(key) {\n const scope = getCurrentScope();\n function on(listener) {\n var _a;\n const listeners = events.get(key) || /* @__PURE__ */ new Set();\n listeners.add(listener);\n events.set(key, listeners);\n const _off = () => off(listener);\n (_a = scope == null ? void 0 : scope.cleanups) == null ? void 0 : _a.push(_off);\n return _off;\n }\n function once(listener) {\n function _listener(...args) {\n off(_listener);\n listener(...args);\n }\n return on(_listener);\n }\n function off(listener) {\n const listeners = events.get(key);\n if (!listeners)\n return;\n listeners.delete(listener);\n if (!listeners.size)\n reset();\n }\n function reset() {\n events.delete(key);\n }\n function emit(event, payload) {\n var _a;\n (_a = events.get(key)) == null ? void 0 : _a.forEach((v) => v(event, payload));\n }\n return { on, once, off, emit, reset };\n}\n\nfunction resolveNestedOptions$1(options) {\n if (options === true)\n return {};\n return options;\n}\nfunction useEventSource(url, events = [], options = {}) {\n const event = shallowRef(null);\n const data = shallowRef(null);\n const status = shallowRef(\"CONNECTING\");\n const eventSource = ref(null);\n const error = shallowRef(null);\n const urlRef = toRef(url);\n const lastEventId = shallowRef(null);\n let explicitlyClosed = false;\n let retried = 0;\n const {\n withCredentials = false,\n immediate = true,\n autoConnect = true,\n autoReconnect\n } = options;\n const close = () => {\n if (isClient && eventSource.value) {\n eventSource.value.close();\n eventSource.value = null;\n status.value = \"CLOSED\";\n explicitlyClosed = true;\n }\n };\n const _init = () => {\n if (explicitlyClosed || typeof urlRef.value === \"undefined\")\n return;\n const es = new EventSource(urlRef.value, { withCredentials });\n status.value = \"CONNECTING\";\n eventSource.value = es;\n es.onopen = () => {\n status.value = \"OPEN\";\n error.value = null;\n };\n es.onerror = (e) => {\n status.value = \"CLOSED\";\n error.value = e;\n if (es.readyState === 2 && !explicitlyClosed && autoReconnect) {\n es.close();\n const {\n retries = -1,\n delay = 1e3,\n onFailed\n } = resolveNestedOptions$1(autoReconnect);\n retried += 1;\n if (typeof retries === \"number\" && (retries < 0 || retried < retries))\n setTimeout(_init, delay);\n else if (typeof retries === \"function\" && retries())\n setTimeout(_init, delay);\n else\n onFailed == null ? void 0 : onFailed();\n }\n };\n es.onmessage = (e) => {\n event.value = null;\n data.value = e.data;\n lastEventId.value = e.lastEventId;\n };\n for (const event_name of events) {\n useEventListener(es, event_name, (e) => {\n event.value = event_name;\n data.value = e.data || null;\n lastEventId.value = e.lastEventId || null;\n }, { passive: true });\n }\n };\n const open = () => {\n if (!isClient)\n return;\n close();\n explicitlyClosed = false;\n retried = 0;\n _init();\n };\n if (immediate)\n open();\n if (autoConnect)\n watch(urlRef, open);\n tryOnScopeDispose(close);\n return {\n eventSource,\n event,\n data,\n status,\n error,\n open,\n close,\n lastEventId\n };\n}\n\nfunction useEyeDropper(options = {}) {\n const { initialValue = \"\" } = options;\n const isSupported = useSupported(() => typeof window !== \"undefined\" && \"EyeDropper\" in window);\n const sRGBHex = shallowRef(initialValue);\n async function open(openOptions) {\n if (!isSupported.value)\n return;\n const eyeDropper = new window.EyeDropper();\n const result = await eyeDropper.open(openOptions);\n sRGBHex.value = result.sRGBHex;\n return result;\n }\n return { isSupported, sRGBHex, open };\n}\n\nfunction useFavicon(newIcon = null, options = {}) {\n const {\n baseUrl = \"\",\n rel = \"icon\",\n document = defaultDocument\n } = options;\n const favicon = toRef(newIcon);\n const applyIcon = (icon) => {\n const elements = document == null ? void 0 : document.head.querySelectorAll(`link[rel*=\"${rel}\"]`);\n if (!elements || elements.length === 0) {\n const link = document == null ? void 0 : document.createElement(\"link\");\n if (link) {\n link.rel = rel;\n link.href = `${baseUrl}${icon}`;\n link.type = `image/${icon.split(\".\").pop()}`;\n document == null ? void 0 : document.head.append(link);\n }\n return;\n }\n elements == null ? void 0 : elements.forEach((el) => el.href = `${baseUrl}${icon}`);\n };\n watch(\n favicon,\n (i, o) => {\n if (typeof i === \"string\" && i !== o)\n applyIcon(i);\n },\n { immediate: true }\n );\n return favicon;\n}\n\nconst payloadMapping = {\n json: \"application/json\",\n text: \"text/plain\"\n};\nfunction isFetchOptions(obj) {\n return obj && containsProp(obj, \"immediate\", \"refetch\", \"initialData\", \"timeout\", \"beforeFetch\", \"afterFetch\", \"onFetchError\", \"fetch\", \"updateDataOnError\");\n}\nconst reAbsolute = /^(?:[a-z][a-z\\d+\\-.]*:)?\\/\\//i;\nfunction isAbsoluteURL(url) {\n return reAbsolute.test(url);\n}\nfunction headersToObject(headers) {\n if (typeof Headers !== \"undefined\" && headers instanceof Headers)\n return Object.fromEntries(headers.entries());\n return headers;\n}\nfunction combineCallbacks(combination, ...callbacks) {\n if (combination === \"overwrite\") {\n return async (ctx) => {\n let callback;\n for (let i = callbacks.length - 1; i >= 0; i--) {\n if (callbacks[i] != null) {\n callback = callbacks[i];\n break;\n }\n }\n if (callback)\n return { ...ctx, ...await callback(ctx) };\n return ctx;\n };\n } else {\n return async (ctx) => {\n for (const callback of callbacks) {\n if (callback)\n ctx = { ...ctx, ...await callback(ctx) };\n }\n return ctx;\n };\n }\n}\nfunction createFetch(config = {}) {\n const _combination = config.combination || \"chain\";\n const _options = config.options || {};\n const _fetchOptions = config.fetchOptions || {};\n function useFactoryFetch(url, ...args) {\n const computedUrl = computed(() => {\n const baseUrl = toValue(config.baseUrl);\n const targetUrl = toValue(url);\n return baseUrl && !isAbsoluteURL(targetUrl) ? joinPaths(baseUrl, targetUrl) : targetUrl;\n });\n let options = _options;\n let fetchOptions = _fetchOptions;\n if (args.length > 0) {\n if (isFetchOptions(args[0])) {\n options = {\n ...options,\n ...args[0],\n beforeFetch: combineCallbacks(_combination, _options.beforeFetch, args[0].beforeFetch),\n afterFetch: combineCallbacks(_combination, _options.afterFetch, args[0].afterFetch),\n onFetchError: combineCallbacks(_combination, _options.onFetchError, args[0].onFetchError)\n };\n } else {\n fetchOptions = {\n ...fetchOptions,\n ...args[0],\n headers: {\n ...headersToObject(fetchOptions.headers) || {},\n ...headersToObject(args[0].headers) || {}\n }\n };\n }\n }\n if (args.length > 1 && isFetchOptions(args[1])) {\n options = {\n ...options,\n ...args[1],\n beforeFetch: combineCallbacks(_combination, _options.beforeFetch, args[1].beforeFetch),\n afterFetch: combineCallbacks(_combination, _options.afterFetch, args[1].afterFetch),\n onFetchError: combineCallbacks(_combination, _options.onFetchError, args[1].onFetchError)\n };\n }\n return useFetch(computedUrl, fetchOptions, options);\n }\n return useFactoryFetch;\n}\nfunction useFetch(url, ...args) {\n var _a, _b;\n const supportsAbort = typeof AbortController === \"function\";\n let fetchOptions = {};\n let options = {\n immediate: true,\n refetch: false,\n timeout: 0,\n updateDataOnError: false\n };\n const config = {\n method: \"GET\",\n type: \"text\",\n payload: void 0\n };\n if (args.length > 0) {\n if (isFetchOptions(args[0]))\n options = { ...options, ...args[0] };\n else\n fetchOptions = args[0];\n }\n if (args.length > 1) {\n if (isFetchOptions(args[1]))\n options = { ...options, ...args[1] };\n }\n const {\n fetch = (_b = (_a = defaultWindow) == null ? void 0 : _a.fetch) != null ? _b : globalThis == null ? void 0 : globalThis.fetch,\n initialData,\n timeout\n } = options;\n const responseEvent = createEventHook();\n const errorEvent = createEventHook();\n const finallyEvent = createEventHook();\n const isFinished = shallowRef(false);\n const isFetching = shallowRef(false);\n const aborted = shallowRef(false);\n const statusCode = shallowRef(null);\n const response = shallowRef(null);\n const error = shallowRef(null);\n const data = shallowRef(initialData || null);\n const canAbort = computed(() => supportsAbort && isFetching.value);\n let controller;\n let timer;\n const abort = (reason) => {\n if (supportsAbort) {\n controller == null ? void 0 : controller.abort(reason);\n controller = new AbortController();\n controller.signal.onabort = () => aborted.value = true;\n fetchOptions = {\n ...fetchOptions,\n signal: controller.signal\n };\n }\n };\n const loading = (isLoading) => {\n isFetching.value = isLoading;\n isFinished.value = !isLoading;\n };\n if (timeout)\n timer = useTimeoutFn(abort, timeout, { immediate: false });\n let executeCounter = 0;\n const execute = async (throwOnFailed = false) => {\n var _a2, _b2;\n abort();\n loading(true);\n error.value = null;\n statusCode.value = null;\n aborted.value = false;\n executeCounter += 1;\n const currentExecuteCounter = executeCounter;\n const defaultFetchOptions = {\n method: config.method,\n headers: {}\n };\n const payload = toValue(config.payload);\n if (payload) {\n const headers = headersToObject(defaultFetchOptions.headers);\n const proto = Object.getPrototypeOf(payload);\n if (!config.payloadType && payload && (proto === Object.prototype || Array.isArray(proto)) && !(payload instanceof FormData))\n config.payloadType = \"json\";\n if (config.payloadType)\n headers[\"Content-Type\"] = (_a2 = payloadMapping[config.payloadType]) != null ? _a2 : config.payloadType;\n defaultFetchOptions.body = config.payloadType === \"json\" ? JSON.stringify(payload) : payload;\n }\n let isCanceled = false;\n const context = {\n url: toValue(url),\n options: {\n ...defaultFetchOptions,\n ...fetchOptions\n },\n cancel: () => {\n isCanceled = true;\n }\n };\n if (options.beforeFetch)\n Object.assign(context, await options.beforeFetch(context));\n if (isCanceled || !fetch) {\n loading(false);\n return Promise.resolve(null);\n }\n let responseData = null;\n if (timer)\n timer.start();\n return fetch(\n context.url,\n {\n ...defaultFetchOptions,\n ...context.options,\n headers: {\n ...headersToObject(defaultFetchOptions.headers),\n ...headersToObject((_b2 = context.options) == null ? void 0 : _b2.headers)\n }\n }\n ).then(async (fetchResponse) => {\n response.value = fetchResponse;\n statusCode.value = fetchResponse.status;\n responseData = await fetchResponse.clone()[config.type]();\n if (!fetchResponse.ok) {\n data.value = initialData || null;\n throw new Error(fetchResponse.statusText);\n }\n if (options.afterFetch) {\n ({ data: responseData } = await options.afterFetch({\n data: responseData,\n response: fetchResponse,\n context,\n execute\n }));\n }\n data.value = responseData;\n responseEvent.trigger(fetchResponse);\n return fetchResponse;\n }).catch(async (fetchError) => {\n let errorData = fetchError.message || fetchError.name;\n if (options.onFetchError) {\n ({ error: errorData, data: responseData } = await options.onFetchError({\n data: responseData,\n error: fetchError,\n response: response.value,\n context,\n execute\n }));\n }\n error.value = errorData;\n if (options.updateDataOnError)\n data.value = responseData;\n errorEvent.trigger(fetchError);\n if (throwOnFailed)\n throw fetchError;\n return null;\n }).finally(() => {\n if (currentExecuteCounter === executeCounter)\n loading(false);\n if (timer)\n timer.stop();\n finallyEvent.trigger(null);\n });\n };\n const refetch = toRef(options.refetch);\n watch(\n [\n refetch,\n toRef(url)\n ],\n ([refetch2]) => refetch2 && execute(),\n { deep: true }\n );\n const shell = {\n isFinished: readonly(isFinished),\n isFetching: readonly(isFetching),\n statusCode,\n response,\n error,\n data,\n canAbort,\n aborted,\n abort,\n execute,\n onFetchResponse: responseEvent.on,\n onFetchError: errorEvent.on,\n onFetchFinally: finallyEvent.on,\n // method\n get: setMethod(\"GET\"),\n put: setMethod(\"PUT\"),\n post: setMethod(\"POST\"),\n delete: setMethod(\"DELETE\"),\n patch: setMethod(\"PATCH\"),\n head: setMethod(\"HEAD\"),\n options: setMethod(\"OPTIONS\"),\n // type\n json: setType(\"json\"),\n text: setType(\"text\"),\n blob: setType(\"blob\"),\n arrayBuffer: setType(\"arrayBuffer\"),\n formData: setType(\"formData\")\n };\n function setMethod(method) {\n return (payload, payloadType) => {\n if (!isFetching.value) {\n config.method = method;\n config.payload = payload;\n config.payloadType = payloadType;\n if (isRef(config.payload)) {\n watch(\n [\n refetch,\n toRef(config.payload)\n ],\n ([refetch2]) => refetch2 && execute(),\n { deep: true }\n );\n }\n return {\n ...shell,\n then(onFulfilled, onRejected) {\n return waitUntilFinished().then(onFulfilled, onRejected);\n }\n };\n }\n return void 0;\n };\n }\n function waitUntilFinished() {\n return new Promise((resolve, reject) => {\n until(isFinished).toBe(true).then(() => resolve(shell)).catch(reject);\n });\n }\n function setType(type) {\n return () => {\n if (!isFetching.value) {\n config.type = type;\n return {\n ...shell,\n then(onFulfilled, onRejected) {\n return waitUntilFinished().then(onFulfilled, onRejected);\n }\n };\n }\n return void 0;\n };\n }\n if (options.immediate)\n Promise.resolve().then(() => execute());\n return {\n ...shell,\n then(onFulfilled, onRejected) {\n return waitUntilFinished().then(onFulfilled, onRejected);\n }\n };\n}\nfunction joinPaths(start, end) {\n if (!start.endsWith(\"/\") && !end.startsWith(\"/\")) {\n return `${start}/${end}`;\n }\n if (start.endsWith(\"/\") && end.startsWith(\"/\")) {\n return `${start.slice(0, -1)}${end}`;\n }\n return `${start}${end}`;\n}\n\nconst DEFAULT_OPTIONS = {\n multiple: true,\n accept: \"*\",\n reset: false,\n directory: false\n};\nfunction prepareInitialFiles(files) {\n if (!files)\n return null;\n if (files instanceof FileList)\n return files;\n const dt = new DataTransfer();\n for (const file of files) {\n dt.items.add(file);\n }\n return dt.files;\n}\nfunction useFileDialog(options = {}) {\n const {\n document = defaultDocument\n } = options;\n const files = ref(prepareInitialFiles(options.initialFiles));\n const { on: onChange, trigger: changeTrigger } = createEventHook();\n const { on: onCancel, trigger: cancelTrigger } = createEventHook();\n let input;\n if (document) {\n input = unrefElement(options.input) || document.createElement(\"input\");\n input.type = \"file\";\n input.onchange = (event) => {\n const result = event.target;\n files.value = result.files;\n changeTrigger(files.value);\n };\n input.oncancel = () => {\n cancelTrigger();\n };\n }\n const reset = () => {\n files.value = null;\n if (input && input.value) {\n input.value = \"\";\n changeTrigger(null);\n }\n };\n const open = (localOptions) => {\n if (!input)\n return;\n const _options = {\n ...DEFAULT_OPTIONS,\n ...options,\n ...localOptions\n };\n input.multiple = _options.multiple;\n input.accept = _options.accept;\n input.webkitdirectory = _options.directory;\n if (hasOwn(_options, \"capture\"))\n input.capture = _options.capture;\n if (_options.reset)\n reset();\n input.click();\n };\n return {\n files: readonly(files),\n open,\n reset,\n onCancel,\n onChange\n };\n}\n\nfunction useFileSystemAccess(options = {}) {\n const {\n window: _window = defaultWindow,\n dataType = \"Text\"\n } = options;\n const window = _window;\n const isSupported = useSupported(() => window && \"showSaveFilePicker\" in window && \"showOpenFilePicker\" in window);\n const fileHandle = shallowRef();\n const data = shallowRef();\n const file = shallowRef();\n const fileName = computed(() => {\n var _a, _b;\n return (_b = (_a = file.value) == null ? void 0 : _a.name) != null ? _b : \"\";\n });\n const fileMIME = computed(() => {\n var _a, _b;\n return (_b = (_a = file.value) == null ? void 0 : _a.type) != null ? _b : \"\";\n });\n const fileSize = computed(() => {\n var _a, _b;\n return (_b = (_a = file.value) == null ? void 0 : _a.size) != null ? _b : 0;\n });\n const fileLastModified = computed(() => {\n var _a, _b;\n return (_b = (_a = file.value) == null ? void 0 : _a.lastModified) != null ? _b : 0;\n });\n async function open(_options = {}) {\n if (!isSupported.value)\n return;\n const [handle] = await window.showOpenFilePicker({ ...toValue(options), ..._options });\n fileHandle.value = handle;\n await updateData();\n }\n async function create(_options = {}) {\n if (!isSupported.value)\n return;\n fileHandle.value = await window.showSaveFilePicker({ ...options, ..._options });\n data.value = void 0;\n await updateData();\n }\n async function save(_options = {}) {\n if (!isSupported.value)\n return;\n if (!fileHandle.value)\n return saveAs(_options);\n if (data.value) {\n const writableStream = await fileHandle.value.createWritable();\n await writableStream.write(data.value);\n await writableStream.close();\n }\n await updateFile();\n }\n async function saveAs(_options = {}) {\n if (!isSupported.value)\n return;\n fileHandle.value = await window.showSaveFilePicker({ ...options, ..._options });\n if (data.value) {\n const writableStream = await fileHandle.value.createWritable();\n await writableStream.write(data.value);\n await writableStream.close();\n }\n await updateFile();\n }\n async function updateFile() {\n var _a;\n file.value = await ((_a = fileHandle.value) == null ? void 0 : _a.getFile());\n }\n async function updateData() {\n var _a, _b;\n await updateFile();\n const type = toValue(dataType);\n if (type === \"Text\")\n data.value = await ((_a = file.value) == null ? void 0 : _a.text());\n else if (type === \"ArrayBuffer\")\n data.value = await ((_b = file.value) == null ? void 0 : _b.arrayBuffer());\n else if (type === \"Blob\")\n data.value = file.value;\n }\n watch(() => toValue(dataType), updateData);\n return {\n isSupported,\n data,\n file,\n fileName,\n fileMIME,\n fileSize,\n fileLastModified,\n open,\n create,\n save,\n saveAs,\n updateData\n };\n}\n\nfunction useFocus(target, options = {}) {\n const { initialValue = false, focusVisible = false, preventScroll = false } = options;\n const innerFocused = shallowRef(false);\n const targetElement = computed(() => unrefElement(target));\n const listenerOptions = { passive: true };\n useEventListener(targetElement, \"focus\", (event) => {\n var _a, _b;\n if (!focusVisible || ((_b = (_a = event.target).matches) == null ? void 0 : _b.call(_a, \":focus-visible\")))\n innerFocused.value = true;\n }, listenerOptions);\n useEventListener(targetElement, \"blur\", () => innerFocused.value = false, listenerOptions);\n const focused = computed({\n get: () => innerFocused.value,\n set(value) {\n var _a, _b;\n if (!value && innerFocused.value)\n (_a = targetElement.value) == null ? void 0 : _a.blur();\n else if (value && !innerFocused.value)\n (_b = targetElement.value) == null ? void 0 : _b.focus({ preventScroll });\n }\n });\n watch(\n targetElement,\n () => {\n focused.value = initialValue;\n },\n { immediate: true, flush: \"post\" }\n );\n return { focused };\n}\n\nconst EVENT_FOCUS_IN = \"focusin\";\nconst EVENT_FOCUS_OUT = \"focusout\";\nconst PSEUDO_CLASS_FOCUS_WITHIN = \":focus-within\";\nfunction useFocusWithin(target, options = {}) {\n const { window = defaultWindow } = options;\n const targetElement = computed(() => unrefElement(target));\n const _focused = shallowRef(false);\n const focused = computed(() => _focused.value);\n const activeElement = useActiveElement(options);\n if (!window || !activeElement.value) {\n return { focused };\n }\n const listenerOptions = { passive: true };\n useEventListener(targetElement, EVENT_FOCUS_IN, () => _focused.value = true, listenerOptions);\n useEventListener(targetElement, EVENT_FOCUS_OUT, () => {\n var _a, _b, _c;\n return _focused.value = (_c = (_b = (_a = targetElement.value) == null ? void 0 : _a.matches) == null ? void 0 : _b.call(_a, PSEUDO_CLASS_FOCUS_WITHIN)) != null ? _c : false;\n }, listenerOptions);\n return { focused };\n}\n\nfunction useFps(options) {\n var _a;\n const fps = shallowRef(0);\n if (typeof performance === \"undefined\")\n return fps;\n const every = (_a = options == null ? void 0 : options.every) != null ? _a : 10;\n let last = performance.now();\n let ticks = 0;\n useRafFn(() => {\n ticks += 1;\n if (ticks >= every) {\n const now = performance.now();\n const diff = now - last;\n fps.value = Math.round(1e3 / (diff / ticks));\n last = now;\n ticks = 0;\n }\n });\n return fps;\n}\n\nconst eventHandlers = [\n \"fullscreenchange\",\n \"webkitfullscreenchange\",\n \"webkitendfullscreen\",\n \"mozfullscreenchange\",\n \"MSFullscreenChange\"\n];\nfunction useFullscreen(target, options = {}) {\n const {\n document = defaultDocument,\n autoExit = false\n } = options;\n const targetRef = computed(() => {\n var _a;\n return (_a = unrefElement(target)) != null ? _a : document == null ? void 0 : document.documentElement;\n });\n const isFullscreen = shallowRef(false);\n const requestMethod = computed(() => {\n return [\n \"requestFullscreen\",\n \"webkitRequestFullscreen\",\n \"webkitEnterFullscreen\",\n \"webkitEnterFullScreen\",\n \"webkitRequestFullScreen\",\n \"mozRequestFullScreen\",\n \"msRequestFullscreen\"\n ].find((m) => document && m in document || targetRef.value && m in targetRef.value);\n });\n const exitMethod = computed(() => {\n return [\n \"exitFullscreen\",\n \"webkitExitFullscreen\",\n \"webkitExitFullScreen\",\n \"webkitCancelFullScreen\",\n \"mozCancelFullScreen\",\n \"msExitFullscreen\"\n ].find((m) => document && m in document || targetRef.value && m in targetRef.value);\n });\n const fullscreenEnabled = computed(() => {\n return [\n \"fullScreen\",\n \"webkitIsFullScreen\",\n \"webkitDisplayingFullscreen\",\n \"mozFullScreen\",\n \"msFullscreenElement\"\n ].find((m) => document && m in document || targetRef.value && m in targetRef.value);\n });\n const fullscreenElementMethod = [\n \"fullscreenElement\",\n \"webkitFullscreenElement\",\n \"mozFullScreenElement\",\n \"msFullscreenElement\"\n ].find((m) => document && m in document);\n const isSupported = useSupported(() => targetRef.value && document && requestMethod.value !== void 0 && exitMethod.value !== void 0 && fullscreenEnabled.value !== void 0);\n const isCurrentElementFullScreen = () => {\n if (fullscreenElementMethod)\n return (document == null ? void 0 : document[fullscreenElementMethod]) === targetRef.value;\n return false;\n };\n const isElementFullScreen = () => {\n if (fullscreenEnabled.value) {\n if (document && document[fullscreenEnabled.value] != null) {\n return document[fullscreenEnabled.value];\n } else {\n const target2 = targetRef.value;\n if ((target2 == null ? void 0 : target2[fullscreenEnabled.value]) != null) {\n return Boolean(target2[fullscreenEnabled.value]);\n }\n }\n }\n return false;\n };\n async function exit() {\n if (!isSupported.value || !isFullscreen.value)\n return;\n if (exitMethod.value) {\n if ((document == null ? void 0 : document[exitMethod.value]) != null) {\n await document[exitMethod.value]();\n } else {\n const target2 = targetRef.value;\n if ((target2 == null ? void 0 : target2[exitMethod.value]) != null)\n await target2[exitMethod.value]();\n }\n }\n isFullscreen.value = false;\n }\n async function enter() {\n if (!isSupported.value || isFullscreen.value)\n return;\n if (isElementFullScreen())\n await exit();\n const target2 = targetRef.value;\n if (requestMethod.value && (target2 == null ? void 0 : target2[requestMethod.value]) != null) {\n await target2[requestMethod.value]();\n isFullscreen.value = true;\n }\n }\n async function toggle() {\n await (isFullscreen.value ? exit() : enter());\n }\n const handlerCallback = () => {\n const isElementFullScreenValue = isElementFullScreen();\n if (!isElementFullScreenValue || isElementFullScreenValue && isCurrentElementFullScreen())\n isFullscreen.value = isElementFullScreenValue;\n };\n const listenerOptions = { capture: false, passive: true };\n useEventListener(document, eventHandlers, handlerCallback, listenerOptions);\n useEventListener(() => unrefElement(targetRef), eventHandlers, handlerCallback, listenerOptions);\n tryOnMounted(handlerCallback, false);\n if (autoExit)\n tryOnScopeDispose(exit);\n return {\n isSupported,\n isFullscreen,\n enter,\n exit,\n toggle\n };\n}\n\nfunction mapGamepadToXbox360Controller(gamepad) {\n return computed(() => {\n if (gamepad.value) {\n return {\n buttons: {\n a: gamepad.value.buttons[0],\n b: gamepad.value.buttons[1],\n x: gamepad.value.buttons[2],\n y: gamepad.value.buttons[3]\n },\n bumper: {\n left: gamepad.value.buttons[4],\n right: gamepad.value.buttons[5]\n },\n triggers: {\n left: gamepad.value.buttons[6],\n right: gamepad.value.buttons[7]\n },\n stick: {\n left: {\n horizontal: gamepad.value.axes[0],\n vertical: gamepad.value.axes[1],\n button: gamepad.value.buttons[10]\n },\n right: {\n horizontal: gamepad.value.axes[2],\n vertical: gamepad.value.axes[3],\n button: gamepad.value.buttons[11]\n }\n },\n dpad: {\n up: gamepad.value.buttons[12],\n down: gamepad.value.buttons[13],\n left: gamepad.value.buttons[14],\n right: gamepad.value.buttons[15]\n },\n back: gamepad.value.buttons[8],\n start: gamepad.value.buttons[9]\n };\n }\n return null;\n });\n}\nfunction useGamepad(options = {}) {\n const {\n navigator = defaultNavigator\n } = options;\n const isSupported = useSupported(() => navigator && \"getGamepads\" in navigator);\n const gamepads = ref([]);\n const onConnectedHook = createEventHook();\n const onDisconnectedHook = createEventHook();\n const stateFromGamepad = (gamepad) => {\n const hapticActuators = [];\n const vibrationActuator = \"vibrationActuator\" in gamepad ? gamepad.vibrationActuator : null;\n if (vibrationActuator)\n hapticActuators.push(vibrationActuator);\n if (gamepad.hapticActuators)\n hapticActuators.push(...gamepad.hapticActuators);\n return {\n id: gamepad.id,\n index: gamepad.index,\n connected: gamepad.connected,\n mapping: gamepad.mapping,\n timestamp: gamepad.timestamp,\n vibrationActuator: gamepad.vibrationActuator,\n hapticActuators,\n axes: gamepad.axes.map((axes) => axes),\n buttons: gamepad.buttons.map((button) => ({ pressed: button.pressed, touched: button.touched, value: button.value }))\n };\n };\n const updateGamepadState = () => {\n const _gamepads = (navigator == null ? void 0 : navigator.getGamepads()) || [];\n for (const gamepad of _gamepads) {\n if (gamepad && gamepads.value[gamepad.index])\n gamepads.value[gamepad.index] = stateFromGamepad(gamepad);\n }\n };\n const { isActive, pause, resume } = useRafFn(updateGamepadState);\n const onGamepadConnected = (gamepad) => {\n if (!gamepads.value.some(({ index }) => index === gamepad.index)) {\n gamepads.value.push(stateFromGamepad(gamepad));\n onConnectedHook.trigger(gamepad.index);\n }\n resume();\n };\n const onGamepadDisconnected = (gamepad) => {\n gamepads.value = gamepads.value.filter((x) => x.index !== gamepad.index);\n onDisconnectedHook.trigger(gamepad.index);\n };\n const listenerOptions = { passive: true };\n useEventListener(\"gamepadconnected\", (e) => onGamepadConnected(e.gamepad), listenerOptions);\n useEventListener(\"gamepaddisconnected\", (e) => onGamepadDisconnected(e.gamepad), listenerOptions);\n tryOnMounted(() => {\n const _gamepads = (navigator == null ? void 0 : navigator.getGamepads()) || [];\n for (const gamepad of _gamepads) {\n if (gamepad && gamepads.value[gamepad.index])\n onGamepadConnected(gamepad);\n }\n });\n pause();\n return {\n isSupported,\n onConnected: onConnectedHook.on,\n onDisconnected: onDisconnectedHook.on,\n gamepads,\n pause,\n resume,\n isActive\n };\n}\n\nfunction useGeolocation(options = {}) {\n const {\n enableHighAccuracy = true,\n maximumAge = 3e4,\n timeout = 27e3,\n navigator = defaultNavigator,\n immediate = true\n } = options;\n const isSupported = useSupported(() => navigator && \"geolocation\" in navigator);\n const locatedAt = shallowRef(null);\n const error = shallowRef(null);\n const coords = ref({\n accuracy: 0,\n latitude: Number.POSITIVE_INFINITY,\n longitude: Number.POSITIVE_INFINITY,\n altitude: null,\n altitudeAccuracy: null,\n heading: null,\n speed: null\n });\n function updatePosition(position) {\n locatedAt.value = position.timestamp;\n coords.value = position.coords;\n error.value = null;\n }\n let watcher;\n function resume() {\n if (isSupported.value) {\n watcher = navigator.geolocation.watchPosition(\n updatePosition,\n (err) => error.value = err,\n {\n enableHighAccuracy,\n maximumAge,\n timeout\n }\n );\n }\n }\n if (immediate)\n resume();\n function pause() {\n if (watcher && navigator)\n navigator.geolocation.clearWatch(watcher);\n }\n tryOnScopeDispose(() => {\n pause();\n });\n return {\n isSupported,\n coords,\n locatedAt,\n error,\n resume,\n pause\n };\n}\n\nconst defaultEvents$1 = [\"mousemove\", \"mousedown\", \"resize\", \"keydown\", \"touchstart\", \"wheel\"];\nconst oneMinute = 6e4;\nfunction useIdle(timeout = oneMinute, options = {}) {\n const {\n initialState = false,\n listenForVisibilityChange = true,\n events = defaultEvents$1,\n window = defaultWindow,\n eventFilter = throttleFilter(50)\n } = options;\n const idle = shallowRef(initialState);\n const lastActive = shallowRef(timestamp());\n let timer;\n const reset = () => {\n idle.value = false;\n clearTimeout(timer);\n timer = setTimeout(() => idle.value = true, timeout);\n };\n const onEvent = createFilterWrapper(\n eventFilter,\n () => {\n lastActive.value = timestamp();\n reset();\n }\n );\n if (window) {\n const document = window.document;\n const listenerOptions = { passive: true };\n for (const event of events)\n useEventListener(window, event, onEvent, listenerOptions);\n if (listenForVisibilityChange) {\n useEventListener(document, \"visibilitychange\", () => {\n if (!document.hidden)\n onEvent();\n }, listenerOptions);\n }\n if (!initialState)\n reset();\n }\n return {\n idle,\n lastActive,\n reset\n };\n}\n\nasync function loadImage(options) {\n return new Promise((resolve, reject) => {\n const img = new Image();\n const { src, srcset, sizes, class: clazz, loading, crossorigin, referrerPolicy, width, height, decoding, fetchPriority, ismap, usemap } = options;\n img.src = src;\n if (srcset != null)\n img.srcset = srcset;\n if (sizes != null)\n img.sizes = sizes;\n if (clazz != null)\n img.className = clazz;\n if (loading != null)\n img.loading = loading;\n if (crossorigin != null)\n img.crossOrigin = crossorigin;\n if (referrerPolicy != null)\n img.referrerPolicy = referrerPolicy;\n if (width != null)\n img.width = width;\n if (height != null)\n img.height = height;\n if (decoding != null)\n img.decoding = decoding;\n if (fetchPriority != null)\n img.fetchPriority = fetchPriority;\n if (ismap != null)\n img.isMap = ismap;\n if (usemap != null)\n img.useMap = usemap;\n img.onload = () => resolve(img);\n img.onerror = reject;\n });\n}\nfunction useImage(options, asyncStateOptions = {}) {\n const state = useAsyncState(\n () => loadImage(toValue(options)),\n void 0,\n {\n resetOnExecute: true,\n ...asyncStateOptions\n }\n );\n watch(\n () => toValue(options),\n () => state.execute(asyncStateOptions.delay),\n { deep: true }\n );\n return state;\n}\n\nfunction resolveElement(el) {\n if (typeof Window !== \"undefined\" && el instanceof Window)\n return el.document.documentElement;\n if (typeof Document !== \"undefined\" && el instanceof Document)\n return el.documentElement;\n return el;\n}\n\nconst ARRIVED_STATE_THRESHOLD_PIXELS = 1;\nfunction useScroll(element, options = {}) {\n const {\n throttle = 0,\n idle = 200,\n onStop = noop,\n onScroll = noop,\n offset = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n observe: _observe = {\n mutation: false\n },\n eventListenerOptions = {\n capture: false,\n passive: true\n },\n behavior = \"auto\",\n window = defaultWindow,\n onError = (e) => {\n console.error(e);\n }\n } = options;\n const observe = typeof _observe === \"boolean\" ? {\n mutation: _observe\n } : _observe;\n const internalX = shallowRef(0);\n const internalY = shallowRef(0);\n const x = computed({\n get() {\n return internalX.value;\n },\n set(x2) {\n scrollTo(x2, void 0);\n }\n });\n const y = computed({\n get() {\n return internalY.value;\n },\n set(y2) {\n scrollTo(void 0, y2);\n }\n });\n function scrollTo(_x, _y) {\n var _a, _b, _c, _d;\n if (!window)\n return;\n const _element = toValue(element);\n if (!_element)\n return;\n (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({\n top: (_a = toValue(_y)) != null ? _a : y.value,\n left: (_b = toValue(_x)) != null ? _b : x.value,\n behavior: toValue(behavior)\n });\n const scrollContainer = ((_d = _element == null ? void 0 : _element.document) == null ? void 0 : _d.documentElement) || (_element == null ? void 0 : _element.documentElement) || _element;\n if (x != null)\n internalX.value = scrollContainer.scrollLeft;\n if (y != null)\n internalY.value = scrollContainer.scrollTop;\n }\n const isScrolling = shallowRef(false);\n const arrivedState = reactive({\n left: true,\n right: false,\n top: true,\n bottom: false\n });\n const directions = reactive({\n left: false,\n right: false,\n top: false,\n bottom: false\n });\n const onScrollEnd = (e) => {\n if (!isScrolling.value)\n return;\n isScrolling.value = false;\n directions.left = false;\n directions.right = false;\n directions.top = false;\n directions.bottom = false;\n onStop(e);\n };\n const onScrollEndDebounced = useDebounceFn(onScrollEnd, throttle + idle);\n const setArrivedState = (target) => {\n var _a;\n if (!window)\n return;\n const el = ((_a = target == null ? void 0 : target.document) == null ? void 0 : _a.documentElement) || (target == null ? void 0 : target.documentElement) || unrefElement(target);\n const { display, flexDirection, direction } = getComputedStyle(el);\n const directionMultipler = direction === \"rtl\" ? -1 : 1;\n const scrollLeft = el.scrollLeft;\n directions.left = scrollLeft < internalX.value;\n directions.right = scrollLeft > internalX.value;\n const left = Math.abs(scrollLeft * directionMultipler) <= (offset.left || 0);\n const right = Math.abs(scrollLeft * directionMultipler) + el.clientWidth >= el.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;\n if (display === \"flex\" && flexDirection === \"row-reverse\") {\n arrivedState.left = right;\n arrivedState.right = left;\n } else {\n arrivedState.left = left;\n arrivedState.right = right;\n }\n internalX.value = scrollLeft;\n let scrollTop = el.scrollTop;\n if (target === window.document && !scrollTop)\n scrollTop = window.document.body.scrollTop;\n directions.top = scrollTop < internalY.value;\n directions.bottom = scrollTop > internalY.value;\n const top = Math.abs(scrollTop) <= (offset.top || 0);\n const bottom = Math.abs(scrollTop) + el.clientHeight >= el.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;\n if (display === \"flex\" && flexDirection === \"column-reverse\") {\n arrivedState.top = bottom;\n arrivedState.bottom = top;\n } else {\n arrivedState.top = top;\n arrivedState.bottom = bottom;\n }\n internalY.value = scrollTop;\n };\n const onScrollHandler = (e) => {\n var _a;\n if (!window)\n return;\n const eventTarget = (_a = e.target.documentElement) != null ? _a : e.target;\n setArrivedState(eventTarget);\n isScrolling.value = true;\n onScrollEndDebounced(e);\n onScroll(e);\n };\n useEventListener(\n element,\n \"scroll\",\n throttle ? useThrottleFn(onScrollHandler, throttle, true, false) : onScrollHandler,\n eventListenerOptions\n );\n tryOnMounted(() => {\n try {\n const _element = toValue(element);\n if (!_element)\n return;\n setArrivedState(_element);\n } catch (e) {\n onError(e);\n }\n });\n if ((observe == null ? void 0 : observe.mutation) && element != null && element !== window && element !== document) {\n useMutationObserver(\n element,\n () => {\n const _element = toValue(element);\n if (!_element)\n return;\n setArrivedState(_element);\n },\n {\n attributes: true,\n childList: true,\n subtree: true\n }\n );\n }\n useEventListener(\n element,\n \"scrollend\",\n onScrollEnd,\n eventListenerOptions\n );\n return {\n x,\n y,\n isScrolling,\n arrivedState,\n directions,\n measure() {\n const _element = toValue(element);\n if (window && _element)\n setArrivedState(_element);\n }\n };\n}\n\nfunction useInfiniteScroll(element, onLoadMore, options = {}) {\n var _a;\n const {\n direction = \"bottom\",\n interval = 100,\n canLoadMore = () => true\n } = options;\n const state = reactive(useScroll(\n element,\n {\n ...options,\n offset: {\n [direction]: (_a = options.distance) != null ? _a : 0,\n ...options.offset\n }\n }\n ));\n const promise = ref();\n const isLoading = computed(() => !!promise.value);\n const observedElement = computed(() => {\n return resolveElement(toValue(element));\n });\n const isElementVisible = useElementVisibility(observedElement);\n function checkAndLoad() {\n state.measure();\n if (!observedElement.value || !isElementVisible.value || !canLoadMore(observedElement.value))\n return;\n const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;\n const isNarrower = direction === \"bottom\" || direction === \"top\" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;\n if (state.arrivedState[direction] || isNarrower) {\n if (!promise.value) {\n promise.value = Promise.all([\n onLoadMore(state),\n new Promise((resolve) => setTimeout(resolve, interval))\n ]).finally(() => {\n promise.value = null;\n nextTick(() => checkAndLoad());\n });\n }\n }\n }\n const stop = watch(\n () => [state.arrivedState[direction], isElementVisible.value],\n checkAndLoad,\n { immediate: true }\n );\n tryOnUnmounted(stop);\n return {\n isLoading,\n reset() {\n nextTick(() => checkAndLoad());\n }\n };\n}\n\nconst defaultEvents = [\"mousedown\", \"mouseup\", \"keydown\", \"keyup\"];\nfunction useKeyModifier(modifier, options = {}) {\n const {\n events = defaultEvents,\n document = defaultDocument,\n initial = null\n } = options;\n const state = shallowRef(initial);\n if (document) {\n events.forEach((listenerEvent) => {\n useEventListener(document, listenerEvent, (evt) => {\n if (typeof evt.getModifierState === \"function\")\n state.value = evt.getModifierState(modifier);\n }, { passive: true });\n });\n }\n return state;\n}\n\nfunction useLocalStorage(key, initialValue, options = {}) {\n const { window = defaultWindow } = options;\n return useStorage(key, initialValue, window == null ? void 0 : window.localStorage, options);\n}\n\nconst DefaultMagicKeysAliasMap = {\n ctrl: \"control\",\n command: \"meta\",\n cmd: \"meta\",\n option: \"alt\",\n up: \"arrowup\",\n down: \"arrowdown\",\n left: \"arrowleft\",\n right: \"arrowright\"\n};\n\nfunction useMagicKeys(options = {}) {\n const {\n reactive: useReactive = false,\n target = defaultWindow,\n aliasMap = DefaultMagicKeysAliasMap,\n passive = true,\n onEventFired = noop\n } = options;\n const current = reactive(/* @__PURE__ */ new Set());\n const obj = {\n toJSON() {\n return {};\n },\n current\n };\n const refs = useReactive ? reactive(obj) : obj;\n const metaDeps = /* @__PURE__ */ new Set();\n const shiftDeps = /* @__PURE__ */ new Set();\n const usedKeys = /* @__PURE__ */ new Set();\n function setRefs(key, value) {\n if (key in refs) {\n if (useReactive)\n refs[key] = value;\n else\n refs[key].value = value;\n }\n }\n function reset() {\n current.clear();\n for (const key of usedKeys)\n setRefs(key, false);\n }\n function updateRefs(e, value) {\n var _a, _b;\n const key = (_a = e.key) == null ? void 0 : _a.toLowerCase();\n const code = (_b = e.code) == null ? void 0 : _b.toLowerCase();\n const values = [code, key].filter(Boolean);\n if (key) {\n if (value)\n current.add(key);\n else\n current.delete(key);\n }\n for (const key2 of values) {\n usedKeys.add(key2);\n setRefs(key2, value);\n }\n if (key === \"shift\" && !value) {\n shiftDeps.forEach((key2) => {\n current.delete(key2);\n setRefs(key2, false);\n });\n shiftDeps.clear();\n } else if (typeof e.getModifierState === \"function\" && e.getModifierState(\"Shift\") && value) {\n [...current, ...values].forEach((key2) => shiftDeps.add(key2));\n }\n if (key === \"meta\" && !value) {\n metaDeps.forEach((key2) => {\n current.delete(key2);\n setRefs(key2, false);\n });\n metaDeps.clear();\n } else if (typeof e.getModifierState === \"function\" && e.getModifierState(\"Meta\") && value) {\n [...current, ...values].forEach((key2) => metaDeps.add(key2));\n }\n }\n useEventListener(target, \"keydown\", (e) => {\n updateRefs(e, true);\n return onEventFired(e);\n }, { passive });\n useEventListener(target, \"keyup\", (e) => {\n updateRefs(e, false);\n return onEventFired(e);\n }, { passive });\n useEventListener(\"blur\", reset, { passive });\n useEventListener(\"focus\", reset, { passive });\n const proxy = new Proxy(\n refs,\n {\n get(target2, prop, rec) {\n if (typeof prop !== \"string\")\n return Reflect.get(target2, prop, rec);\n prop = prop.toLowerCase();\n if (prop in aliasMap)\n prop = aliasMap[prop];\n if (!(prop in refs)) {\n if (/[+_-]/.test(prop)) {\n const keys = prop.split(/[+_-]/g).map((i) => i.trim());\n refs[prop] = computed(() => keys.map((key) => toValue(proxy[key])).every(Boolean));\n } else {\n refs[prop] = shallowRef(false);\n }\n }\n const r = Reflect.get(target2, prop, rec);\n return useReactive ? toValue(r) : r;\n }\n }\n );\n return proxy;\n}\n\nfunction usingElRef(source, cb) {\n if (toValue(source))\n cb(toValue(source));\n}\nfunction timeRangeToArray(timeRanges) {\n let ranges = [];\n for (let i = 0; i < timeRanges.length; ++i)\n ranges = [...ranges, [timeRanges.start(i), timeRanges.end(i)]];\n return ranges;\n}\nfunction tracksToArray(tracks) {\n return Array.from(tracks).map(({ label, kind, language, mode, activeCues, cues, inBandMetadataTrackDispatchType }, id) => ({ id, label, kind, language, mode, activeCues, cues, inBandMetadataTrackDispatchType }));\n}\nconst defaultOptions = {\n src: \"\",\n tracks: []\n};\nfunction useMediaControls(target, options = {}) {\n target = toRef(target);\n options = {\n ...defaultOptions,\n ...options\n };\n const {\n document = defaultDocument\n } = options;\n const listenerOptions = { passive: true };\n const currentTime = shallowRef(0);\n const duration = shallowRef(0);\n const seeking = shallowRef(false);\n const volume = shallowRef(1);\n const waiting = shallowRef(false);\n const ended = shallowRef(false);\n const playing = shallowRef(false);\n const rate = shallowRef(1);\n const stalled = shallowRef(false);\n const buffered = ref([]);\n const tracks = ref([]);\n const selectedTrack = shallowRef(-1);\n const isPictureInPicture = shallowRef(false);\n const muted = shallowRef(false);\n const supportsPictureInPicture = document && \"pictureInPictureEnabled\" in document;\n const sourceErrorEvent = createEventHook();\n const playbackErrorEvent = createEventHook();\n const disableTrack = (track) => {\n usingElRef(target, (el) => {\n if (track) {\n const id = typeof track === \"number\" ? track : track.id;\n el.textTracks[id].mode = \"disabled\";\n } else {\n for (let i = 0; i < el.textTracks.length; ++i)\n el.textTracks[i].mode = \"disabled\";\n }\n selectedTrack.value = -1;\n });\n };\n const enableTrack = (track, disableTracks = true) => {\n usingElRef(target, (el) => {\n const id = typeof track === \"number\" ? track : track.id;\n if (disableTracks)\n disableTrack();\n el.textTracks[id].mode = \"showing\";\n selectedTrack.value = id;\n });\n };\n const togglePictureInPicture = () => {\n return new Promise((resolve, reject) => {\n usingElRef(target, async (el) => {\n if (supportsPictureInPicture) {\n if (!isPictureInPicture.value) {\n el.requestPictureInPicture().then(resolve).catch(reject);\n } else {\n document.exitPictureInPicture().then(resolve).catch(reject);\n }\n }\n });\n });\n };\n watchEffect(() => {\n if (!document)\n return;\n const el = toValue(target);\n if (!el)\n return;\n const src = toValue(options.src);\n let sources = [];\n if (!src)\n return;\n if (typeof src === \"string\")\n sources = [{ src }];\n else if (Array.isArray(src))\n sources = src;\n else if (isObject(src))\n sources = [src];\n el.querySelectorAll(\"source\").forEach((e) => {\n e.remove();\n });\n sources.forEach(({ src: src2, type, media }) => {\n const source = document.createElement(\"source\");\n source.setAttribute(\"src\", src2);\n source.setAttribute(\"type\", type || \"\");\n source.setAttribute(\"media\", media || \"\");\n useEventListener(source, \"error\", sourceErrorEvent.trigger, listenerOptions);\n el.appendChild(source);\n });\n el.load();\n });\n watch([target, volume], () => {\n const el = toValue(target);\n if (!el)\n return;\n el.volume = volume.value;\n });\n watch([target, muted], () => {\n const el = toValue(target);\n if (!el)\n return;\n el.muted = muted.value;\n });\n watch([target, rate], () => {\n const el = toValue(target);\n if (!el)\n return;\n el.playbackRate = rate.value;\n });\n watchEffect(() => {\n if (!document)\n return;\n const textTracks = toValue(options.tracks);\n const el = toValue(target);\n if (!textTracks || !textTracks.length || !el)\n return;\n el.querySelectorAll(\"track\").forEach((e) => e.remove());\n textTracks.forEach(({ default: isDefault, kind, label, src, srcLang }, i) => {\n const track = document.createElement(\"track\");\n track.default = isDefault || false;\n track.kind = kind;\n track.label = label;\n track.src = src;\n track.srclang = srcLang;\n if (track.default)\n selectedTrack.value = i;\n el.appendChild(track);\n });\n });\n const { ignoreUpdates: ignoreCurrentTimeUpdates } = watchIgnorable(currentTime, (time) => {\n const el = toValue(target);\n if (!el)\n return;\n el.currentTime = time;\n });\n const { ignoreUpdates: ignorePlayingUpdates } = watchIgnorable(playing, (isPlaying) => {\n const el = toValue(target);\n if (!el)\n return;\n if (isPlaying) {\n el.play().catch((e) => {\n playbackErrorEvent.trigger(e);\n throw e;\n });\n } else {\n el.pause();\n }\n });\n useEventListener(\n target,\n \"timeupdate\",\n () => ignoreCurrentTimeUpdates(() => currentTime.value = toValue(target).currentTime),\n listenerOptions\n );\n useEventListener(\n target,\n \"durationchange\",\n () => duration.value = toValue(target).duration,\n listenerOptions\n );\n useEventListener(\n target,\n \"progress\",\n () => buffered.value = timeRangeToArray(toValue(target).buffered),\n listenerOptions\n );\n useEventListener(\n target,\n \"seeking\",\n () => seeking.value = true,\n listenerOptions\n );\n useEventListener(\n target,\n \"seeked\",\n () => seeking.value = false,\n listenerOptions\n );\n useEventListener(\n target,\n [\"waiting\", \"loadstart\"],\n () => {\n waiting.value = true;\n ignorePlayingUpdates(() => playing.value = false);\n },\n listenerOptions\n );\n useEventListener(\n target,\n \"loadeddata\",\n () => waiting.value = false,\n listenerOptions\n );\n useEventListener(\n target,\n \"playing\",\n () => {\n waiting.value = false;\n ended.value = false;\n ignorePlayingUpdates(() => playing.value = true);\n },\n listenerOptions\n );\n useEventListener(\n target,\n \"ratechange\",\n () => rate.value = toValue(target).playbackRate,\n listenerOptions\n );\n useEventListener(\n target,\n \"stalled\",\n () => stalled.value = true,\n listenerOptions\n );\n useEventListener(\n target,\n \"ended\",\n () => ended.value = true,\n listenerOptions\n );\n useEventListener(\n target,\n \"pause\",\n () => ignorePlayingUpdates(() => playing.value = false),\n listenerOptions\n );\n useEventListener(\n target,\n \"play\",\n () => ignorePlayingUpdates(() => playing.value = true),\n listenerOptions\n );\n useEventListener(\n target,\n \"enterpictureinpicture\",\n () => isPictureInPicture.value = true,\n listenerOptions\n );\n useEventListener(\n target,\n \"leavepictureinpicture\",\n () => isPictureInPicture.value = false,\n listenerOptions\n );\n useEventListener(\n target,\n \"volumechange\",\n () => {\n const el = toValue(target);\n if (!el)\n return;\n volume.value = el.volume;\n muted.value = el.muted;\n },\n listenerOptions\n );\n const listeners = [];\n const stop = watch([target], () => {\n const el = toValue(target);\n if (!el)\n return;\n stop();\n listeners[0] = useEventListener(el.textTracks, \"addtrack\", () => tracks.value = tracksToArray(el.textTracks), listenerOptions);\n listeners[1] = useEventListener(el.textTracks, \"removetrack\", () => tracks.value = tracksToArray(el.textTracks), listenerOptions);\n listeners[2] = useEventListener(el.textTracks, \"change\", () => tracks.value = tracksToArray(el.textTracks), listenerOptions);\n });\n tryOnScopeDispose(() => listeners.forEach((listener) => listener()));\n return {\n currentTime,\n duration,\n waiting,\n seeking,\n ended,\n stalled,\n buffered,\n playing,\n rate,\n // Volume\n volume,\n muted,\n // Tracks\n tracks,\n selectedTrack,\n enableTrack,\n disableTrack,\n // Picture in Picture\n supportsPictureInPicture,\n togglePictureInPicture,\n isPictureInPicture,\n // Events\n onSourceError: sourceErrorEvent.on,\n onPlaybackError: playbackErrorEvent.on\n };\n}\n\nfunction useMemoize(resolver, options) {\n const initCache = () => {\n if (options == null ? void 0 : options.cache)\n return shallowReactive(options.cache);\n return shallowReactive(/* @__PURE__ */ new Map());\n };\n const cache = initCache();\n const generateKey = (...args) => (options == null ? void 0 : options.getKey) ? options.getKey(...args) : JSON.stringify(args);\n const _loadData = (key, ...args) => {\n cache.set(key, resolver(...args));\n return cache.get(key);\n };\n const loadData = (...args) => _loadData(generateKey(...args), ...args);\n const deleteData = (...args) => {\n cache.delete(generateKey(...args));\n };\n const clearData = () => {\n cache.clear();\n };\n const memoized = (...args) => {\n const key = generateKey(...args);\n if (cache.has(key))\n return cache.get(key);\n return _loadData(key, ...args);\n };\n memoized.load = loadData;\n memoized.delete = deleteData;\n memoized.clear = clearData;\n memoized.generateKey = generateKey;\n memoized.cache = cache;\n return memoized;\n}\n\nfunction useMemory(options = {}) {\n const memory = ref();\n const isSupported = useSupported(() => typeof performance !== \"undefined\" && \"memory\" in performance);\n if (isSupported.value) {\n const { interval = 1e3 } = options;\n useIntervalFn(() => {\n memory.value = performance.memory;\n }, interval, { immediate: options.immediate, immediateCallback: options.immediateCallback });\n }\n return { isSupported, memory };\n}\n\nconst UseMouseBuiltinExtractors = {\n page: (event) => [event.pageX, event.pageY],\n client: (event) => [event.clientX, event.clientY],\n screen: (event) => [event.screenX, event.screenY],\n movement: (event) => event instanceof MouseEvent ? [event.movementX, event.movementY] : null\n};\nfunction useMouse(options = {}) {\n const {\n type = \"page\",\n touch = true,\n resetOnTouchEnds = false,\n initialValue = { x: 0, y: 0 },\n window = defaultWindow,\n target = window,\n scroll = true,\n eventFilter\n } = options;\n let _prevMouseEvent = null;\n let _prevScrollX = 0;\n let _prevScrollY = 0;\n const x = shallowRef(initialValue.x);\n const y = shallowRef(initialValue.y);\n const sourceType = shallowRef(null);\n const extractor = typeof type === \"function\" ? type : UseMouseBuiltinExtractors[type];\n const mouseHandler = (event) => {\n const result = extractor(event);\n _prevMouseEvent = event;\n if (result) {\n [x.value, y.value] = result;\n sourceType.value = \"mouse\";\n }\n if (window) {\n _prevScrollX = window.scrollX;\n _prevScrollY = window.scrollY;\n }\n };\n const touchHandler = (event) => {\n if (event.touches.length > 0) {\n const result = extractor(event.touches[0]);\n if (result) {\n [x.value, y.value] = result;\n sourceType.value = \"touch\";\n }\n }\n };\n const scrollHandler = () => {\n if (!_prevMouseEvent || !window)\n return;\n const pos = extractor(_prevMouseEvent);\n if (_prevMouseEvent instanceof MouseEvent && pos) {\n x.value = pos[0] + window.scrollX - _prevScrollX;\n y.value = pos[1] + window.scrollY - _prevScrollY;\n }\n };\n const reset = () => {\n x.value = initialValue.x;\n y.value = initialValue.y;\n };\n const mouseHandlerWrapper = eventFilter ? (event) => eventFilter(() => mouseHandler(event), {}) : (event) => mouseHandler(event);\n const touchHandlerWrapper = eventFilter ? (event) => eventFilter(() => touchHandler(event), {}) : (event) => touchHandler(event);\n const scrollHandlerWrapper = eventFilter ? () => eventFilter(() => scrollHandler(), {}) : () => scrollHandler();\n if (target) {\n const listenerOptions = { passive: true };\n useEventListener(target, [\"mousemove\", \"dragover\"], mouseHandlerWrapper, listenerOptions);\n if (touch && type !== \"movement\") {\n useEventListener(target, [\"touchstart\", \"touchmove\"], touchHandlerWrapper, listenerOptions);\n if (resetOnTouchEnds)\n useEventListener(target, \"touchend\", reset, listenerOptions);\n }\n if (scroll && type === \"page\")\n useEventListener(window, \"scroll\", scrollHandlerWrapper, listenerOptions);\n }\n return {\n x,\n y,\n sourceType\n };\n}\n\nfunction useMouseInElement(target, options = {}) {\n const {\n windowResize = true,\n windowScroll = true,\n handleOutside = true,\n window = defaultWindow\n } = options;\n const type = options.type || \"page\";\n const { x, y, sourceType } = useMouse(options);\n const targetRef = shallowRef(target != null ? target : window == null ? void 0 : window.document.body);\n const elementX = shallowRef(0);\n const elementY = shallowRef(0);\n const elementPositionX = shallowRef(0);\n const elementPositionY = shallowRef(0);\n const elementHeight = shallowRef(0);\n const elementWidth = shallowRef(0);\n const isOutside = shallowRef(true);\n function update() {\n if (!window)\n return;\n const el = unrefElement(targetRef);\n if (!el || !(el instanceof Element))\n return;\n const {\n left,\n top,\n width,\n height\n } = el.getBoundingClientRect();\n elementPositionX.value = left + (type === \"page\" ? window.pageXOffset : 0);\n elementPositionY.value = top + (type === \"page\" ? window.pageYOffset : 0);\n elementHeight.value = height;\n elementWidth.value = width;\n const elX = x.value - elementPositionX.value;\n const elY = y.value - elementPositionY.value;\n isOutside.value = width === 0 || height === 0 || elX < 0 || elY < 0 || elX > width || elY > height;\n if (handleOutside) {\n elementX.value = elX;\n elementY.value = elY;\n }\n }\n const stopFnList = [];\n function stop() {\n stopFnList.forEach((fn) => fn());\n stopFnList.length = 0;\n }\n tryOnMounted(() => {\n update();\n });\n if (window) {\n const {\n stop: stopResizeObserver\n } = useResizeObserver(targetRef, update);\n const {\n stop: stopMutationObserver\n } = useMutationObserver(targetRef, update, {\n attributeFilter: [\"style\", \"class\"]\n });\n const stopWatch = watch(\n [targetRef, x, y],\n update\n );\n stopFnList.push(\n stopResizeObserver,\n stopMutationObserver,\n stopWatch\n );\n useEventListener(\n document,\n \"mouseleave\",\n () => isOutside.value = true,\n { passive: true }\n );\n if (windowScroll) {\n stopFnList.push(\n useEventListener(\"scroll\", update, { capture: true, passive: true })\n );\n }\n if (windowResize) {\n stopFnList.push(\n useEventListener(\"resize\", update, { passive: true })\n );\n }\n }\n return {\n x,\n y,\n sourceType,\n elementX,\n elementY,\n elementPositionX,\n elementPositionY,\n elementHeight,\n elementWidth,\n isOutside,\n stop\n };\n}\n\nfunction useMousePressed(options = {}) {\n const {\n touch = true,\n drag = true,\n capture = false,\n initialValue = false,\n window = defaultWindow\n } = options;\n const pressed = shallowRef(initialValue);\n const sourceType = shallowRef(null);\n if (!window) {\n return {\n pressed,\n sourceType\n };\n }\n const onPressed = (srcType) => (event) => {\n var _a;\n pressed.value = true;\n sourceType.value = srcType;\n (_a = options.onPressed) == null ? void 0 : _a.call(options, event);\n };\n const onReleased = (event) => {\n var _a;\n pressed.value = false;\n sourceType.value = null;\n (_a = options.onReleased) == null ? void 0 : _a.call(options, event);\n };\n const target = computed(() => unrefElement(options.target) || window);\n const listenerOptions = { passive: true, capture };\n useEventListener(target, \"mousedown\", onPressed(\"mouse\"), listenerOptions);\n useEventListener(window, \"mouseleave\", onReleased, listenerOptions);\n useEventListener(window, \"mouseup\", onReleased, listenerOptions);\n if (drag) {\n useEventListener(target, \"dragstart\", onPressed(\"mouse\"), listenerOptions);\n useEventListener(window, \"drop\", onReleased, listenerOptions);\n useEventListener(window, \"dragend\", onReleased, listenerOptions);\n }\n if (touch) {\n useEventListener(target, \"touchstart\", onPressed(\"touch\"), listenerOptions);\n useEventListener(window, \"touchend\", onReleased, listenerOptions);\n useEventListener(window, \"touchcancel\", onReleased, listenerOptions);\n }\n return {\n pressed,\n sourceType\n };\n}\n\nfunction useNavigatorLanguage(options = {}) {\n const { window = defaultWindow } = options;\n const navigator = window == null ? void 0 : window.navigator;\n const isSupported = useSupported(() => navigator && \"language\" in navigator);\n const language = shallowRef(navigator == null ? void 0 : navigator.language);\n useEventListener(window, \"languagechange\", () => {\n if (navigator)\n language.value = navigator.language;\n }, { passive: true });\n return {\n isSupported,\n language\n };\n}\n\nfunction useNetwork(options = {}) {\n const { window = defaultWindow } = options;\n const navigator = window == null ? void 0 : window.navigator;\n const isSupported = useSupported(() => navigator && \"connection\" in navigator);\n const isOnline = shallowRef(true);\n const saveData = shallowRef(false);\n const offlineAt = shallowRef(void 0);\n const onlineAt = shallowRef(void 0);\n const downlink = shallowRef(void 0);\n const downlinkMax = shallowRef(void 0);\n const rtt = shallowRef(void 0);\n const effectiveType = shallowRef(void 0);\n const type = shallowRef(\"unknown\");\n const connection = isSupported.value && navigator.connection;\n function updateNetworkInformation() {\n if (!navigator)\n return;\n isOnline.value = navigator.onLine;\n offlineAt.value = isOnline.value ? void 0 : Date.now();\n onlineAt.value = isOnline.value ? Date.now() : void 0;\n if (connection) {\n downlink.value = connection.downlink;\n downlinkMax.value = connection.downlinkMax;\n effectiveType.value = connection.effectiveType;\n rtt.value = connection.rtt;\n saveData.value = connection.saveData;\n type.value = connection.type;\n }\n }\n const listenerOptions = { passive: true };\n if (window) {\n useEventListener(window, \"offline\", () => {\n isOnline.value = false;\n offlineAt.value = Date.now();\n }, listenerOptions);\n useEventListener(window, \"online\", () => {\n isOnline.value = true;\n onlineAt.value = Date.now();\n }, listenerOptions);\n }\n if (connection)\n useEventListener(connection, \"change\", updateNetworkInformation, listenerOptions);\n updateNetworkInformation();\n return {\n isSupported,\n isOnline: readonly(isOnline),\n saveData: readonly(saveData),\n offlineAt: readonly(offlineAt),\n onlineAt: readonly(onlineAt),\n downlink: readonly(downlink),\n downlinkMax: readonly(downlinkMax),\n effectiveType: readonly(effectiveType),\n rtt: readonly(rtt),\n type: readonly(type)\n };\n}\n\nfunction useNow(options = {}) {\n const {\n controls: exposeControls = false,\n interval = \"requestAnimationFrame\",\n immediate = true\n } = options;\n const now = ref(/* @__PURE__ */ new Date());\n const update = () => now.value = /* @__PURE__ */ new Date();\n const controls = interval === \"requestAnimationFrame\" ? useRafFn(update, { immediate }) : useIntervalFn(update, interval, { immediate });\n if (exposeControls) {\n return {\n now,\n ...controls\n };\n } else {\n return now;\n }\n}\n\nfunction useObjectUrl(object) {\n const url = shallowRef();\n const release = () => {\n if (url.value)\n URL.revokeObjectURL(url.value);\n url.value = void 0;\n };\n watch(\n () => toValue(object),\n (newObject) => {\n release();\n if (newObject)\n url.value = URL.createObjectURL(newObject);\n },\n { immediate: true }\n );\n tryOnScopeDispose(release);\n return readonly(url);\n}\n\nfunction useClamp(value, min, max) {\n if (typeof value === \"function\" || isReadonly(value))\n return computed(() => clamp(toValue(value), toValue(min), toValue(max)));\n const _value = ref(value);\n return computed({\n get() {\n return _value.value = clamp(_value.value, toValue(min), toValue(max));\n },\n set(value2) {\n _value.value = clamp(value2, toValue(min), toValue(max));\n }\n });\n}\n\nfunction useOffsetPagination(options) {\n const {\n total = Number.POSITIVE_INFINITY,\n pageSize = 10,\n page = 1,\n onPageChange = noop,\n onPageSizeChange = noop,\n onPageCountChange = noop\n } = options;\n const currentPageSize = useClamp(pageSize, 1, Number.POSITIVE_INFINITY);\n const pageCount = computed(() => Math.max(\n 1,\n Math.ceil(toValue(total) / toValue(currentPageSize))\n ));\n const currentPage = useClamp(page, 1, pageCount);\n const isFirstPage = computed(() => currentPage.value === 1);\n const isLastPage = computed(() => currentPage.value === pageCount.value);\n if (isRef(page)) {\n syncRef(page, currentPage, {\n direction: isReadonly(page) ? \"ltr\" : \"both\"\n });\n }\n if (isRef(pageSize)) {\n syncRef(pageSize, currentPageSize, {\n direction: isReadonly(pageSize) ? \"ltr\" : \"both\"\n });\n }\n function prev() {\n currentPage.value--;\n }\n function next() {\n currentPage.value++;\n }\n const returnValue = {\n currentPage,\n currentPageSize,\n pageCount,\n isFirstPage,\n isLastPage,\n prev,\n next\n };\n watch(currentPage, () => {\n onPageChange(reactive(returnValue));\n });\n watch(currentPageSize, () => {\n onPageSizeChange(reactive(returnValue));\n });\n watch(pageCount, () => {\n onPageCountChange(reactive(returnValue));\n });\n return returnValue;\n}\n\nfunction useOnline(options = {}) {\n const { isOnline } = useNetwork(options);\n return isOnline;\n}\n\nfunction usePageLeave(options = {}) {\n const { window = defaultWindow } = options;\n const isLeft = shallowRef(false);\n const handler = (event) => {\n if (!window)\n return;\n event = event || window.event;\n const from = event.relatedTarget || event.toElement;\n isLeft.value = !from;\n };\n if (window) {\n const listenerOptions = { passive: true };\n useEventListener(window, \"mouseout\", handler, listenerOptions);\n useEventListener(window.document, \"mouseleave\", handler, listenerOptions);\n useEventListener(window.document, \"mouseenter\", handler, listenerOptions);\n }\n return isLeft;\n}\n\nfunction useScreenOrientation(options = {}) {\n const {\n window = defaultWindow\n } = options;\n const isSupported = useSupported(() => window && \"screen\" in window && \"orientation\" in window.screen);\n const screenOrientation = isSupported.value ? window.screen.orientation : {};\n const orientation = ref(screenOrientation.type);\n const angle = shallowRef(screenOrientation.angle || 0);\n if (isSupported.value) {\n useEventListener(window, \"orientationchange\", () => {\n orientation.value = screenOrientation.type;\n angle.value = screenOrientation.angle;\n }, { passive: true });\n }\n const lockOrientation = (type) => {\n if (isSupported.value && typeof screenOrientation.lock === \"function\")\n return screenOrientation.lock(type);\n return Promise.reject(new Error(\"Not supported\"));\n };\n const unlockOrientation = () => {\n if (isSupported.value && typeof screenOrientation.unlock === \"function\")\n screenOrientation.unlock();\n };\n return {\n isSupported,\n orientation,\n angle,\n lockOrientation,\n unlockOrientation\n };\n}\n\nfunction useParallax(target, options = {}) {\n const {\n deviceOrientationTiltAdjust = (i) => i,\n deviceOrientationRollAdjust = (i) => i,\n mouseTiltAdjust = (i) => i,\n mouseRollAdjust = (i) => i,\n window = defaultWindow\n } = options;\n const orientation = reactive(useDeviceOrientation({ window }));\n const screenOrientation = reactive(useScreenOrientation({ window }));\n const {\n elementX: x,\n elementY: y,\n elementWidth: width,\n elementHeight: height\n } = useMouseInElement(target, { handleOutside: false, window });\n const source = computed(() => {\n if (orientation.isSupported && (orientation.alpha != null && orientation.alpha !== 0 || orientation.gamma != null && orientation.gamma !== 0)) {\n return \"deviceOrientation\";\n }\n return \"mouse\";\n });\n const roll = computed(() => {\n if (source.value === \"deviceOrientation\") {\n let value;\n switch (screenOrientation.orientation) {\n case \"landscape-primary\":\n value = orientation.gamma / 90;\n break;\n case \"landscape-secondary\":\n value = -orientation.gamma / 90;\n break;\n case \"portrait-primary\":\n value = -orientation.beta / 90;\n break;\n case \"portrait-secondary\":\n value = orientation.beta / 90;\n break;\n default:\n value = -orientation.beta / 90;\n }\n return deviceOrientationRollAdjust(value);\n } else {\n const value = -(y.value - height.value / 2) / height.value;\n return mouseRollAdjust(value);\n }\n });\n const tilt = computed(() => {\n if (source.value === \"deviceOrientation\") {\n let value;\n switch (screenOrientation.orientation) {\n case \"landscape-primary\":\n value = orientation.beta / 90;\n break;\n case \"landscape-secondary\":\n value = -orientation.beta / 90;\n break;\n case \"portrait-primary\":\n value = orientation.gamma / 90;\n break;\n case \"portrait-secondary\":\n value = -orientation.gamma / 90;\n break;\n default:\n value = orientation.gamma / 90;\n }\n return deviceOrientationTiltAdjust(value);\n } else {\n const value = (x.value - width.value / 2) / width.value;\n return mouseTiltAdjust(value);\n }\n });\n return { roll, tilt, source };\n}\n\nfunction useParentElement(element = useCurrentElement()) {\n const parentElement = shallowRef();\n const update = () => {\n const el = unrefElement(element);\n if (el)\n parentElement.value = el.parentElement;\n };\n tryOnMounted(update);\n watch(() => toValue(element), update);\n return parentElement;\n}\n\nfunction usePerformanceObserver(options, callback) {\n const {\n window = defaultWindow,\n immediate = true,\n ...performanceOptions\n } = options;\n const isSupported = useSupported(() => window && \"PerformanceObserver\" in window);\n let observer;\n const stop = () => {\n observer == null ? void 0 : observer.disconnect();\n };\n const start = () => {\n if (isSupported.value) {\n stop();\n observer = new PerformanceObserver(callback);\n observer.observe(performanceOptions);\n }\n };\n tryOnScopeDispose(stop);\n if (immediate)\n start();\n return {\n isSupported,\n start,\n stop\n };\n}\n\nconst defaultState = {\n x: 0,\n y: 0,\n pointerId: 0,\n pressure: 0,\n tiltX: 0,\n tiltY: 0,\n width: 0,\n height: 0,\n twist: 0,\n pointerType: null\n};\nconst keys = /* @__PURE__ */ Object.keys(defaultState);\nfunction usePointer(options = {}) {\n const {\n target = defaultWindow\n } = options;\n const isInside = shallowRef(false);\n const state = ref(options.initialValue || {});\n Object.assign(state.value, defaultState, state.value);\n const handler = (event) => {\n isInside.value = true;\n if (options.pointerTypes && !options.pointerTypes.includes(event.pointerType))\n return;\n state.value = objectPick(event, keys, false);\n };\n if (target) {\n const listenerOptions = { passive: true };\n useEventListener(target, [\"pointerdown\", \"pointermove\", \"pointerup\"], handler, listenerOptions);\n useEventListener(target, \"pointerleave\", () => isInside.value = false, listenerOptions);\n }\n return {\n ...toRefs(state),\n isInside\n };\n}\n\nfunction usePointerLock(target, options = {}) {\n const { document = defaultDocument } = options;\n const isSupported = useSupported(() => document && \"pointerLockElement\" in document);\n const element = shallowRef();\n const triggerElement = shallowRef();\n let targetElement;\n if (isSupported.value) {\n const listenerOptions = { passive: true };\n useEventListener(document, \"pointerlockchange\", () => {\n var _a;\n const currentElement = (_a = document.pointerLockElement) != null ? _a : element.value;\n if (targetElement && currentElement === targetElement) {\n element.value = document.pointerLockElement;\n if (!element.value)\n targetElement = triggerElement.value = null;\n }\n }, listenerOptions);\n useEventListener(document, \"pointerlockerror\", () => {\n var _a;\n const currentElement = (_a = document.pointerLockElement) != null ? _a : element.value;\n if (targetElement && currentElement === targetElement) {\n const action = document.pointerLockElement ? \"release\" : \"acquire\";\n throw new Error(`Failed to ${action} pointer lock.`);\n }\n }, listenerOptions);\n }\n async function lock(e) {\n var _a;\n if (!isSupported.value)\n throw new Error(\"Pointer Lock API is not supported by your browser.\");\n triggerElement.value = e instanceof Event ? e.currentTarget : null;\n targetElement = e instanceof Event ? (_a = unrefElement(target)) != null ? _a : triggerElement.value : unrefElement(e);\n if (!targetElement)\n throw new Error(\"Target element undefined.\");\n targetElement.requestPointerLock();\n return await until(element).toBe(targetElement);\n }\n async function unlock() {\n if (!element.value)\n return false;\n document.exitPointerLock();\n await until(element).toBeNull();\n return true;\n }\n return {\n isSupported,\n element,\n triggerElement,\n lock,\n unlock\n };\n}\n\nfunction usePointerSwipe(target, options = {}) {\n const targetRef = toRef(target);\n const {\n threshold = 50,\n onSwipe,\n onSwipeEnd,\n onSwipeStart,\n disableTextSelect = false\n } = options;\n const posStart = reactive({ x: 0, y: 0 });\n const updatePosStart = (x, y) => {\n posStart.x = x;\n posStart.y = y;\n };\n const posEnd = reactive({ x: 0, y: 0 });\n const updatePosEnd = (x, y) => {\n posEnd.x = x;\n posEnd.y = y;\n };\n const distanceX = computed(() => posStart.x - posEnd.x);\n const distanceY = computed(() => posStart.y - posEnd.y);\n const { max, abs } = Math;\n const isThresholdExceeded = computed(() => max(abs(distanceX.value), abs(distanceY.value)) >= threshold);\n const isSwiping = shallowRef(false);\n const isPointerDown = shallowRef(false);\n const direction = computed(() => {\n if (!isThresholdExceeded.value)\n return \"none\";\n if (abs(distanceX.value) > abs(distanceY.value)) {\n return distanceX.value > 0 ? \"left\" : \"right\";\n } else {\n return distanceY.value > 0 ? \"up\" : \"down\";\n }\n });\n const eventIsAllowed = (e) => {\n var _a, _b, _c;\n const isReleasingButton = e.buttons === 0;\n const isPrimaryButton = e.buttons === 1;\n return (_c = (_b = (_a = options.pointerTypes) == null ? void 0 : _a.includes(e.pointerType)) != null ? _b : isReleasingButton || isPrimaryButton) != null ? _c : true;\n };\n const listenerOptions = { passive: true };\n const stops = [\n useEventListener(target, \"pointerdown\", (e) => {\n if (!eventIsAllowed(e))\n return;\n isPointerDown.value = true;\n const eventTarget = e.target;\n eventTarget == null ? void 0 : eventTarget.setPointerCapture(e.pointerId);\n const { clientX: x, clientY: y } = e;\n updatePosStart(x, y);\n updatePosEnd(x, y);\n onSwipeStart == null ? void 0 : onSwipeStart(e);\n }, listenerOptions),\n useEventListener(target, \"pointermove\", (e) => {\n if (!eventIsAllowed(e))\n return;\n if (!isPointerDown.value)\n return;\n const { clientX: x, clientY: y } = e;\n updatePosEnd(x, y);\n if (!isSwiping.value && isThresholdExceeded.value)\n isSwiping.value = true;\n if (isSwiping.value)\n onSwipe == null ? void 0 : onSwipe(e);\n }, listenerOptions),\n useEventListener(target, \"pointerup\", (e) => {\n if (!eventIsAllowed(e))\n return;\n if (isSwiping.value)\n onSwipeEnd == null ? void 0 : onSwipeEnd(e, direction.value);\n isPointerDown.value = false;\n isSwiping.value = false;\n }, listenerOptions)\n ];\n tryOnMounted(() => {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n (_b = (_a = targetRef.value) == null ? void 0 : _a.style) == null ? void 0 : _b.setProperty(\"touch-action\", \"pan-y\");\n if (disableTextSelect) {\n (_d = (_c = targetRef.value) == null ? void 0 : _c.style) == null ? void 0 : _d.setProperty(\"-webkit-user-select\", \"none\");\n (_f = (_e = targetRef.value) == null ? void 0 : _e.style) == null ? void 0 : _f.setProperty(\"-ms-user-select\", \"none\");\n (_h = (_g = targetRef.value) == null ? void 0 : _g.style) == null ? void 0 : _h.setProperty(\"user-select\", \"none\");\n }\n });\n const stop = () => stops.forEach((s) => s());\n return {\n isSwiping: readonly(isSwiping),\n direction: readonly(direction),\n posStart: readonly(posStart),\n posEnd: readonly(posEnd),\n distanceX,\n distanceY,\n stop\n };\n}\n\nfunction usePreferredColorScheme(options) {\n const isLight = useMediaQuery(\"(prefers-color-scheme: light)\", options);\n const isDark = useMediaQuery(\"(prefers-color-scheme: dark)\", options);\n return computed(() => {\n if (isDark.value)\n return \"dark\";\n if (isLight.value)\n return \"light\";\n return \"no-preference\";\n });\n}\n\nfunction usePreferredContrast(options) {\n const isMore = useMediaQuery(\"(prefers-contrast: more)\", options);\n const isLess = useMediaQuery(\"(prefers-contrast: less)\", options);\n const isCustom = useMediaQuery(\"(prefers-contrast: custom)\", options);\n return computed(() => {\n if (isMore.value)\n return \"more\";\n if (isLess.value)\n return \"less\";\n if (isCustom.value)\n return \"custom\";\n return \"no-preference\";\n });\n}\n\nfunction usePreferredLanguages(options = {}) {\n const { window = defaultWindow } = options;\n if (!window)\n return ref([\"en\"]);\n const navigator = window.navigator;\n const value = ref(navigator.languages);\n useEventListener(window, \"languagechange\", () => {\n value.value = navigator.languages;\n }, { passive: true });\n return value;\n}\n\nfunction usePreferredReducedMotion(options) {\n const isReduced = useMediaQuery(\"(prefers-reduced-motion: reduce)\", options);\n return computed(() => {\n if (isReduced.value)\n return \"reduce\";\n return \"no-preference\";\n });\n}\n\nfunction usePreferredReducedTransparency(options) {\n const isReduced = useMediaQuery(\"(prefers-reduced-transparency: reduce)\", options);\n return computed(() => {\n if (isReduced.value)\n return \"reduce\";\n return \"no-preference\";\n });\n}\n\nfunction usePrevious(value, initialValue) {\n const previous = shallowRef(initialValue);\n watch(\n toRef(value),\n (_, oldValue) => {\n previous.value = oldValue;\n },\n { flush: \"sync\" }\n );\n return readonly(previous);\n}\n\nconst topVarName = \"--vueuse-safe-area-top\";\nconst rightVarName = \"--vueuse-safe-area-right\";\nconst bottomVarName = \"--vueuse-safe-area-bottom\";\nconst leftVarName = \"--vueuse-safe-area-left\";\nfunction useScreenSafeArea() {\n const top = shallowRef(\"\");\n const right = shallowRef(\"\");\n const bottom = shallowRef(\"\");\n const left = shallowRef(\"\");\n if (isClient) {\n const topCssVar = useCssVar(topVarName);\n const rightCssVar = useCssVar(rightVarName);\n const bottomCssVar = useCssVar(bottomVarName);\n const leftCssVar = useCssVar(leftVarName);\n topCssVar.value = \"env(safe-area-inset-top, 0px)\";\n rightCssVar.value = \"env(safe-area-inset-right, 0px)\";\n bottomCssVar.value = \"env(safe-area-inset-bottom, 0px)\";\n leftCssVar.value = \"env(safe-area-inset-left, 0px)\";\n tryOnMounted(update);\n useEventListener(\"resize\", useDebounceFn(update), { passive: true });\n }\n function update() {\n top.value = getValue(topVarName);\n right.value = getValue(rightVarName);\n bottom.value = getValue(bottomVarName);\n left.value = getValue(leftVarName);\n }\n return {\n top,\n right,\n bottom,\n left,\n update\n };\n}\nfunction getValue(position) {\n return getComputedStyle(document.documentElement).getPropertyValue(position);\n}\n\nfunction useScriptTag(src, onLoaded = noop, options = {}) {\n const {\n immediate = true,\n manual = false,\n type = \"text/javascript\",\n async = true,\n crossOrigin,\n referrerPolicy,\n noModule,\n defer,\n document = defaultDocument,\n attrs = {},\n nonce = void 0\n } = options;\n const scriptTag = shallowRef(null);\n let _promise = null;\n const loadScript = (waitForScriptLoad) => new Promise((resolve, reject) => {\n const resolveWithElement = (el2) => {\n scriptTag.value = el2;\n resolve(el2);\n return el2;\n };\n if (!document) {\n resolve(false);\n return;\n }\n let shouldAppend = false;\n let el = document.querySelector(`script[src=\"${toValue(src)}\"]`);\n if (!el) {\n el = document.createElement(\"script\");\n el.type = type;\n el.async = async;\n el.src = toValue(src);\n if (defer)\n el.defer = defer;\n if (crossOrigin)\n el.crossOrigin = crossOrigin;\n if (noModule)\n el.noModule = noModule;\n if (referrerPolicy)\n el.referrerPolicy = referrerPolicy;\n if (nonce) {\n el.nonce = nonce;\n }\n Object.entries(attrs).forEach(([name, value]) => el == null ? void 0 : el.setAttribute(name, value));\n shouldAppend = true;\n } else if (el.hasAttribute(\"data-loaded\")) {\n resolveWithElement(el);\n }\n const listenerOptions = {\n passive: true\n };\n useEventListener(el, \"error\", (event) => reject(event), listenerOptions);\n useEventListener(el, \"abort\", (event) => reject(event), listenerOptions);\n useEventListener(el, \"load\", () => {\n el.setAttribute(\"data-loaded\", \"true\");\n onLoaded(el);\n resolveWithElement(el);\n }, listenerOptions);\n if (shouldAppend)\n el = document.head.appendChild(el);\n if (!waitForScriptLoad)\n resolveWithElement(el);\n });\n const load = (waitForScriptLoad = true) => {\n if (!_promise)\n _promise = loadScript(waitForScriptLoad);\n return _promise;\n };\n const unload = () => {\n if (!document)\n return;\n _promise = null;\n if (scriptTag.value)\n scriptTag.value = null;\n const el = document.querySelector(`script[src=\"${toValue(src)}\"]`);\n if (el)\n document.head.removeChild(el);\n };\n if (immediate && !manual)\n tryOnMounted(load);\n if (!manual)\n tryOnUnmounted(unload);\n return { scriptTag, load, unload };\n}\n\nfunction checkOverflowScroll(ele) {\n const style = window.getComputedStyle(ele);\n if (style.overflowX === \"scroll\" || style.overflowY === \"scroll\" || style.overflowX === \"auto\" && ele.clientWidth < ele.scrollWidth || style.overflowY === \"auto\" && ele.clientHeight < ele.scrollHeight) {\n return true;\n } else {\n const parent = ele.parentNode;\n if (!parent || parent.tagName === \"BODY\")\n return false;\n return checkOverflowScroll(parent);\n }\n}\nfunction preventDefault(rawEvent) {\n const e = rawEvent || window.event;\n const _target = e.target;\n if (checkOverflowScroll(_target))\n return false;\n if (e.touches.length > 1)\n return true;\n if (e.preventDefault)\n e.preventDefault();\n return false;\n}\nconst elInitialOverflow = /* @__PURE__ */ new WeakMap();\nfunction useScrollLock(element, initialState = false) {\n const isLocked = shallowRef(initialState);\n let stopTouchMoveListener = null;\n let initialOverflow = \"\";\n watch(toRef(element), (el) => {\n const target = resolveElement(toValue(el));\n if (target) {\n const ele = target;\n if (!elInitialOverflow.get(ele))\n elInitialOverflow.set(ele, ele.style.overflow);\n if (ele.style.overflow !== \"hidden\")\n initialOverflow = ele.style.overflow;\n if (ele.style.overflow === \"hidden\")\n return isLocked.value = true;\n if (isLocked.value)\n return ele.style.overflow = \"hidden\";\n }\n }, {\n immediate: true\n });\n const lock = () => {\n const el = resolveElement(toValue(element));\n if (!el || isLocked.value)\n return;\n if (isIOS) {\n stopTouchMoveListener = useEventListener(\n el,\n \"touchmove\",\n (e) => {\n preventDefault(e);\n },\n { passive: false }\n );\n }\n el.style.overflow = \"hidden\";\n isLocked.value = true;\n };\n const unlock = () => {\n const el = resolveElement(toValue(element));\n if (!el || !isLocked.value)\n return;\n if (isIOS)\n stopTouchMoveListener == null ? void 0 : stopTouchMoveListener();\n el.style.overflow = initialOverflow;\n elInitialOverflow.delete(el);\n isLocked.value = false;\n };\n tryOnScopeDispose(unlock);\n return computed({\n get() {\n return isLocked.value;\n },\n set(v) {\n if (v)\n lock();\n else unlock();\n }\n });\n}\n\nfunction useSessionStorage(key, initialValue, options = {}) {\n const { window = defaultWindow } = options;\n return useStorage(key, initialValue, window == null ? void 0 : window.sessionStorage, options);\n}\n\nfunction useShare(shareOptions = {}, options = {}) {\n const { navigator = defaultNavigator } = options;\n const _navigator = navigator;\n const isSupported = useSupported(() => _navigator && \"canShare\" in _navigator);\n const share = async (overrideOptions = {}) => {\n if (isSupported.value) {\n const data = {\n ...toValue(shareOptions),\n ...toValue(overrideOptions)\n };\n let granted = true;\n if (data.files && _navigator.canShare)\n granted = _navigator.canShare({ files: data.files });\n if (granted)\n return _navigator.share(data);\n }\n };\n return {\n isSupported,\n share\n };\n}\n\nconst defaultSortFn = (source, compareFn) => source.sort(compareFn);\nconst defaultCompare = (a, b) => a - b;\nfunction useSorted(...args) {\n var _a, _b, _c, _d;\n const [source] = args;\n let compareFn = defaultCompare;\n let options = {};\n if (args.length === 2) {\n if (typeof args[1] === \"object\") {\n options = args[1];\n compareFn = (_a = options.compareFn) != null ? _a : defaultCompare;\n } else {\n compareFn = (_b = args[1]) != null ? _b : defaultCompare;\n }\n } else if (args.length > 2) {\n compareFn = (_c = args[1]) != null ? _c : defaultCompare;\n options = (_d = args[2]) != null ? _d : {};\n }\n const {\n dirty = false,\n sortFn = defaultSortFn\n } = options;\n if (!dirty)\n return computed(() => sortFn([...toValue(source)], compareFn));\n watchEffect(() => {\n const result = sortFn(toValue(source), compareFn);\n if (isRef(source))\n source.value = result;\n else\n source.splice(0, source.length, ...result);\n });\n return source;\n}\n\nfunction useSpeechRecognition(options = {}) {\n const {\n interimResults = true,\n continuous = true,\n maxAlternatives = 1,\n window = defaultWindow\n } = options;\n const lang = toRef(options.lang || \"en-US\");\n const isListening = shallowRef(false);\n const isFinal = shallowRef(false);\n const result = shallowRef(\"\");\n const error = shallowRef(void 0);\n let recognition;\n const start = () => {\n isListening.value = true;\n };\n const stop = () => {\n isListening.value = false;\n };\n const toggle = (value = !isListening.value) => {\n if (value) {\n start();\n } else {\n stop();\n }\n };\n const SpeechRecognition = window && (window.SpeechRecognition || window.webkitSpeechRecognition);\n const isSupported = useSupported(() => SpeechRecognition);\n if (isSupported.value) {\n recognition = new SpeechRecognition();\n recognition.continuous = continuous;\n recognition.interimResults = interimResults;\n recognition.lang = toValue(lang);\n recognition.maxAlternatives = maxAlternatives;\n recognition.onstart = () => {\n isListening.value = true;\n isFinal.value = false;\n };\n watch(lang, (lang2) => {\n if (recognition && !isListening.value)\n recognition.lang = lang2;\n });\n recognition.onresult = (event) => {\n const currentResult = event.results[event.resultIndex];\n const { transcript } = currentResult[0];\n isFinal.value = currentResult.isFinal;\n result.value = transcript;\n error.value = void 0;\n };\n recognition.onerror = (event) => {\n error.value = event;\n };\n recognition.onend = () => {\n isListening.value = false;\n recognition.lang = toValue(lang);\n };\n watch(isListening, (newValue, oldValue) => {\n if (newValue === oldValue)\n return;\n if (newValue)\n recognition.start();\n else\n recognition.stop();\n });\n }\n tryOnScopeDispose(() => {\n stop();\n });\n return {\n isSupported,\n isListening,\n isFinal,\n recognition,\n result,\n error,\n toggle,\n start,\n stop\n };\n}\n\nfunction useSpeechSynthesis(text, options = {}) {\n const {\n pitch = 1,\n rate = 1,\n volume = 1,\n window = defaultWindow\n } = options;\n const synth = window && window.speechSynthesis;\n const isSupported = useSupported(() => synth);\n const isPlaying = shallowRef(false);\n const status = shallowRef(\"init\");\n const spokenText = toRef(text || \"\");\n const lang = toRef(options.lang || \"en-US\");\n const error = shallowRef(void 0);\n const toggle = (value = !isPlaying.value) => {\n isPlaying.value = value;\n };\n const bindEventsForUtterance = (utterance2) => {\n utterance2.lang = toValue(lang);\n utterance2.voice = toValue(options.voice) || null;\n utterance2.pitch = toValue(pitch);\n utterance2.rate = toValue(rate);\n utterance2.volume = volume;\n utterance2.onstart = () => {\n isPlaying.value = true;\n status.value = \"play\";\n };\n utterance2.onpause = () => {\n isPlaying.value = false;\n status.value = \"pause\";\n };\n utterance2.onresume = () => {\n isPlaying.value = true;\n status.value = \"play\";\n };\n utterance2.onend = () => {\n isPlaying.value = false;\n status.value = \"end\";\n };\n utterance2.onerror = (event) => {\n error.value = event;\n };\n };\n const utterance = computed(() => {\n isPlaying.value = false;\n status.value = \"init\";\n const newUtterance = new SpeechSynthesisUtterance(spokenText.value);\n bindEventsForUtterance(newUtterance);\n return newUtterance;\n });\n const speak = () => {\n synth.cancel();\n if (utterance)\n synth.speak(utterance.value);\n };\n const stop = () => {\n synth.cancel();\n isPlaying.value = false;\n };\n if (isSupported.value) {\n bindEventsForUtterance(utterance.value);\n watch(lang, (lang2) => {\n if (utterance.value && !isPlaying.value)\n utterance.value.lang = lang2;\n });\n if (options.voice) {\n watch(options.voice, () => {\n synth.cancel();\n });\n }\n watch(isPlaying, () => {\n if (isPlaying.value)\n synth.resume();\n else\n synth.pause();\n });\n }\n tryOnScopeDispose(() => {\n isPlaying.value = false;\n });\n return {\n isSupported,\n isPlaying,\n status,\n utterance,\n error,\n stop,\n toggle,\n speak\n };\n}\n\nfunction useStepper(steps, initialStep) {\n const stepsRef = ref(steps);\n const stepNames = computed(() => Array.isArray(stepsRef.value) ? stepsRef.value : Object.keys(stepsRef.value));\n const index = ref(stepNames.value.indexOf(initialStep != null ? initialStep : stepNames.value[0]));\n const current = computed(() => at(index.value));\n const isFirst = computed(() => index.value === 0);\n const isLast = computed(() => index.value === stepNames.value.length - 1);\n const next = computed(() => stepNames.value[index.value + 1]);\n const previous = computed(() => stepNames.value[index.value - 1]);\n function at(index2) {\n if (Array.isArray(stepsRef.value))\n return stepsRef.value[index2];\n return stepsRef.value[stepNames.value[index2]];\n }\n function get(step) {\n if (!stepNames.value.includes(step))\n return;\n return at(stepNames.value.indexOf(step));\n }\n function goTo(step) {\n if (stepNames.value.includes(step))\n index.value = stepNames.value.indexOf(step);\n }\n function goToNext() {\n if (isLast.value)\n return;\n index.value++;\n }\n function goToPrevious() {\n if (isFirst.value)\n return;\n index.value--;\n }\n function goBackTo(step) {\n if (isAfter(step))\n goTo(step);\n }\n function isNext(step) {\n return stepNames.value.indexOf(step) === index.value + 1;\n }\n function isPrevious(step) {\n return stepNames.value.indexOf(step) === index.value - 1;\n }\n function isCurrent(step) {\n return stepNames.value.indexOf(step) === index.value;\n }\n function isBefore(step) {\n return index.value < stepNames.value.indexOf(step);\n }\n function isAfter(step) {\n return index.value > stepNames.value.indexOf(step);\n }\n return {\n steps: stepsRef,\n stepNames,\n index,\n current,\n next,\n previous,\n isFirst,\n isLast,\n at,\n get,\n goTo,\n goToNext,\n goToPrevious,\n goBackTo,\n isNext,\n isPrevious,\n isCurrent,\n isBefore,\n isAfter\n };\n}\n\nfunction useStorageAsync(key, initialValue, storage, options = {}) {\n var _a;\n const {\n flush = \"pre\",\n deep = true,\n listenToStorageChanges = true,\n writeDefaults = true,\n mergeDefaults = false,\n shallow,\n window = defaultWindow,\n eventFilter,\n onError = (e) => {\n console.error(e);\n }\n } = options;\n const rawInit = toValue(initialValue);\n const type = guessSerializerType(rawInit);\n const data = (shallow ? shallowRef : ref)(toValue(initialValue));\n const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];\n if (!storage) {\n try {\n storage = getSSRHandler(\"getDefaultStorageAsync\", () => {\n var _a2;\n return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;\n })();\n } catch (e) {\n onError(e);\n }\n }\n async function read(event) {\n if (!storage || event && event.key !== key)\n return;\n try {\n const rawValue = event ? event.newValue : await storage.getItem(key);\n if (rawValue == null) {\n data.value = rawInit;\n if (writeDefaults && rawInit !== null)\n await storage.setItem(key, await serializer.write(rawInit));\n } else if (mergeDefaults) {\n const value = await serializer.read(rawValue);\n if (typeof mergeDefaults === \"function\")\n data.value = mergeDefaults(value, rawInit);\n else if (type === \"object\" && !Array.isArray(value))\n data.value = { ...rawInit, ...value };\n else data.value = value;\n } else {\n data.value = await serializer.read(rawValue);\n }\n } catch (e) {\n onError(e);\n }\n }\n read();\n if (window && listenToStorageChanges)\n useEventListener(window, \"storage\", (e) => Promise.resolve().then(() => read(e)), { passive: true });\n if (storage) {\n watchWithFilter(\n data,\n async () => {\n try {\n if (data.value == null)\n await storage.removeItem(key);\n else\n await storage.setItem(key, await serializer.write(data.value));\n } catch (e) {\n onError(e);\n }\n },\n {\n flush,\n deep,\n eventFilter\n }\n );\n }\n return data;\n}\n\nlet _id = 0;\nfunction useStyleTag(css, options = {}) {\n const isLoaded = shallowRef(false);\n const {\n document = defaultDocument,\n immediate = true,\n manual = false,\n id = `vueuse_styletag_${++_id}`\n } = options;\n const cssRef = shallowRef(css);\n let stop = () => {\n };\n const load = () => {\n if (!document)\n return;\n const el = document.getElementById(id) || document.createElement(\"style\");\n if (!el.isConnected) {\n el.id = id;\n if (options.nonce)\n el.nonce = options.nonce;\n if (options.media)\n el.media = options.media;\n document.head.appendChild(el);\n }\n if (isLoaded.value)\n return;\n stop = watch(\n cssRef,\n (value) => {\n el.textContent = value;\n },\n { immediate: true }\n );\n isLoaded.value = true;\n };\n const unload = () => {\n if (!document || !isLoaded.value)\n return;\n stop();\n document.head.removeChild(document.getElementById(id));\n isLoaded.value = false;\n };\n if (immediate && !manual)\n tryOnMounted(load);\n if (!manual)\n tryOnScopeDispose(unload);\n return {\n id,\n css: cssRef,\n unload,\n load,\n isLoaded: readonly(isLoaded)\n };\n}\n\nfunction useSwipe(target, options = {}) {\n const {\n threshold = 50,\n onSwipe,\n onSwipeEnd,\n onSwipeStart,\n passive = true\n } = options;\n const coordsStart = reactive({ x: 0, y: 0 });\n const coordsEnd = reactive({ x: 0, y: 0 });\n const diffX = computed(() => coordsStart.x - coordsEnd.x);\n const diffY = computed(() => coordsStart.y - coordsEnd.y);\n const { max, abs } = Math;\n const isThresholdExceeded = computed(() => max(abs(diffX.value), abs(diffY.value)) >= threshold);\n const isSwiping = shallowRef(false);\n const direction = computed(() => {\n if (!isThresholdExceeded.value)\n return \"none\";\n if (abs(diffX.value) > abs(diffY.value)) {\n return diffX.value > 0 ? \"left\" : \"right\";\n } else {\n return diffY.value > 0 ? \"up\" : \"down\";\n }\n });\n const getTouchEventCoords = (e) => [e.touches[0].clientX, e.touches[0].clientY];\n const updateCoordsStart = (x, y) => {\n coordsStart.x = x;\n coordsStart.y = y;\n };\n const updateCoordsEnd = (x, y) => {\n coordsEnd.x = x;\n coordsEnd.y = y;\n };\n const listenerOptions = { passive, capture: !passive };\n const onTouchEnd = (e) => {\n if (isSwiping.value)\n onSwipeEnd == null ? void 0 : onSwipeEnd(e, direction.value);\n isSwiping.value = false;\n };\n const stops = [\n useEventListener(target, \"touchstart\", (e) => {\n if (e.touches.length !== 1)\n return;\n const [x, y] = getTouchEventCoords(e);\n updateCoordsStart(x, y);\n updateCoordsEnd(x, y);\n onSwipeStart == null ? void 0 : onSwipeStart(e);\n }, listenerOptions),\n useEventListener(target, \"touchmove\", (e) => {\n if (e.touches.length !== 1)\n return;\n const [x, y] = getTouchEventCoords(e);\n updateCoordsEnd(x, y);\n if (listenerOptions.capture && !listenerOptions.passive && Math.abs(diffX.value) > Math.abs(diffY.value))\n e.preventDefault();\n if (!isSwiping.value && isThresholdExceeded.value)\n isSwiping.value = true;\n if (isSwiping.value)\n onSwipe == null ? void 0 : onSwipe(e);\n }, listenerOptions),\n useEventListener(target, [\"touchend\", \"touchcancel\"], onTouchEnd, listenerOptions)\n ];\n const stop = () => stops.forEach((s) => s());\n return {\n isSwiping,\n direction,\n coordsStart,\n coordsEnd,\n lengthX: diffX,\n lengthY: diffY,\n stop,\n // TODO: Remove in the next major version\n isPassiveEventSupported: true\n };\n}\n\nfunction useTemplateRefsList() {\n const refs = ref([]);\n refs.value.set = (el) => {\n if (el)\n refs.value.push(el);\n };\n onBeforeUpdate(() => {\n refs.value.length = 0;\n });\n return refs;\n}\n\nfunction useTextDirection(options = {}) {\n const {\n document = defaultDocument,\n selector = \"html\",\n observe = false,\n initialValue = \"ltr\"\n } = options;\n function getValue() {\n var _a, _b;\n return (_b = (_a = document == null ? void 0 : document.querySelector(selector)) == null ? void 0 : _a.getAttribute(\"dir\")) != null ? _b : initialValue;\n }\n const dir = ref(getValue());\n tryOnMounted(() => dir.value = getValue());\n if (observe && document) {\n useMutationObserver(\n document.querySelector(selector),\n () => dir.value = getValue(),\n { attributes: true }\n );\n }\n return computed({\n get() {\n return dir.value;\n },\n set(v) {\n var _a, _b;\n dir.value = v;\n if (!document)\n return;\n if (dir.value)\n (_a = document.querySelector(selector)) == null ? void 0 : _a.setAttribute(\"dir\", dir.value);\n else\n (_b = document.querySelector(selector)) == null ? void 0 : _b.removeAttribute(\"dir\");\n }\n });\n}\n\nfunction getRangesFromSelection(selection) {\n var _a;\n const rangeCount = (_a = selection.rangeCount) != null ? _a : 0;\n return Array.from({ length: rangeCount }, (_, i) => selection.getRangeAt(i));\n}\nfunction useTextSelection(options = {}) {\n const {\n window = defaultWindow\n } = options;\n const selection = ref(null);\n const text = computed(() => {\n var _a, _b;\n return (_b = (_a = selection.value) == null ? void 0 : _a.toString()) != null ? _b : \"\";\n });\n const ranges = computed(() => selection.value ? getRangesFromSelection(selection.value) : []);\n const rects = computed(() => ranges.value.map((range) => range.getBoundingClientRect()));\n function onSelectionChange() {\n selection.value = null;\n if (window)\n selection.value = window.getSelection();\n }\n if (window)\n useEventListener(window.document, \"selectionchange\", onSelectionChange, { passive: true });\n return {\n text,\n rects,\n ranges,\n selection\n };\n}\n\nfunction tryRequestAnimationFrame(window = defaultWindow, fn) {\n if (window && typeof window.requestAnimationFrame === \"function\") {\n window.requestAnimationFrame(fn);\n } else {\n fn();\n }\n}\nfunction useTextareaAutosize(options = {}) {\n var _a, _b;\n const { window = defaultWindow } = options;\n const textarea = toRef(options == null ? void 0 : options.element);\n const input = toRef((_a = options == null ? void 0 : options.input) != null ? _a : \"\");\n const styleProp = (_b = options == null ? void 0 : options.styleProp) != null ? _b : \"height\";\n const textareaScrollHeight = shallowRef(1);\n const textareaOldWidth = shallowRef(0);\n function triggerResize() {\n var _a2;\n if (!textarea.value)\n return;\n let height = \"\";\n textarea.value.style[styleProp] = \"1px\";\n textareaScrollHeight.value = (_a2 = textarea.value) == null ? void 0 : _a2.scrollHeight;\n const _styleTarget = toValue(options == null ? void 0 : options.styleTarget);\n if (_styleTarget)\n _styleTarget.style[styleProp] = `${textareaScrollHeight.value}px`;\n else\n height = `${textareaScrollHeight.value}px`;\n textarea.value.style[styleProp] = height;\n }\n watch([input, textarea], () => nextTick(triggerResize), { immediate: true });\n watch(textareaScrollHeight, () => {\n var _a2;\n return (_a2 = options == null ? void 0 : options.onResize) == null ? void 0 : _a2.call(options);\n });\n useResizeObserver(textarea, ([{ contentRect }]) => {\n if (textareaOldWidth.value === contentRect.width)\n return;\n tryRequestAnimationFrame(window, () => {\n textareaOldWidth.value = contentRect.width;\n triggerResize();\n });\n });\n if (options == null ? void 0 : options.watch)\n watch(options.watch, triggerResize, { immediate: true, deep: true });\n return {\n textarea,\n input,\n triggerResize\n };\n}\n\nfunction useThrottledRefHistory(source, options = {}) {\n const { throttle = 200, trailing = true } = options;\n const filter = throttleFilter(throttle, trailing);\n const history = useRefHistory(source, { ...options, eventFilter: filter });\n return {\n ...history\n };\n}\n\nconst DEFAULT_UNITS = [\n { max: 6e4, value: 1e3, name: \"second\" },\n { max: 276e4, value: 6e4, name: \"minute\" },\n { max: 72e6, value: 36e5, name: \"hour\" },\n { max: 5184e5, value: 864e5, name: \"day\" },\n { max: 24192e5, value: 6048e5, name: \"week\" },\n { max: 28512e6, value: 2592e6, name: \"month\" },\n { max: Number.POSITIVE_INFINITY, value: 31536e6, name: \"year\" }\n];\nconst DEFAULT_MESSAGES = {\n justNow: \"just now\",\n past: (n) => n.match(/\\d/) ? `${n} ago` : n,\n future: (n) => n.match(/\\d/) ? `in ${n}` : n,\n month: (n, past) => n === 1 ? past ? \"last month\" : \"next month\" : `${n} month${n > 1 ? \"s\" : \"\"}`,\n year: (n, past) => n === 1 ? past ? \"last year\" : \"next year\" : `${n} year${n > 1 ? \"s\" : \"\"}`,\n day: (n, past) => n === 1 ? past ? \"yesterday\" : \"tomorrow\" : `${n} day${n > 1 ? \"s\" : \"\"}`,\n week: (n, past) => n === 1 ? past ? \"last week\" : \"next week\" : `${n} week${n > 1 ? \"s\" : \"\"}`,\n hour: (n) => `${n} hour${n > 1 ? \"s\" : \"\"}`,\n minute: (n) => `${n} minute${n > 1 ? \"s\" : \"\"}`,\n second: (n) => `${n} second${n > 1 ? \"s\" : \"\"}`,\n invalid: \"\"\n};\nfunction DEFAULT_FORMATTER(date) {\n return date.toISOString().slice(0, 10);\n}\nfunction useTimeAgo(time, options = {}) {\n const {\n controls: exposeControls = false,\n updateInterval = 3e4\n } = options;\n const { now, ...controls } = useNow({ interval: updateInterval, controls: true });\n const timeAgo = computed(() => formatTimeAgo(new Date(toValue(time)), options, toValue(now)));\n if (exposeControls) {\n return {\n timeAgo,\n ...controls\n };\n } else {\n return timeAgo;\n }\n}\nfunction formatTimeAgo(from, options = {}, now = Date.now()) {\n var _a;\n const {\n max,\n messages = DEFAULT_MESSAGES,\n fullDateFormatter = DEFAULT_FORMATTER,\n units = DEFAULT_UNITS,\n showSecond = false,\n rounding = \"round\"\n } = options;\n const roundFn = typeof rounding === \"number\" ? (n) => +n.toFixed(rounding) : Math[rounding];\n const diff = +now - +from;\n const absDiff = Math.abs(diff);\n function getValue(diff2, unit) {\n return roundFn(Math.abs(diff2) / unit.value);\n }\n function format(diff2, unit) {\n const val = getValue(diff2, unit);\n const past = diff2 > 0;\n const str = applyFormat(unit.name, val, past);\n return applyFormat(past ? \"past\" : \"future\", str, past);\n }\n function applyFormat(name, val, isPast) {\n const formatter = messages[name];\n if (typeof formatter === \"function\")\n return formatter(val, isPast);\n return formatter.replace(\"{0}\", val.toString());\n }\n if (absDiff < 6e4 && !showSecond)\n return messages.justNow;\n if (typeof max === \"number\" && absDiff > max)\n return fullDateFormatter(new Date(from));\n if (typeof max === \"string\") {\n const unitMax = (_a = units.find((i) => i.name === max)) == null ? void 0 : _a.max;\n if (unitMax && absDiff > unitMax)\n return fullDateFormatter(new Date(from));\n }\n for (const [idx, unit] of units.entries()) {\n const val = getValue(diff, unit);\n if (val <= 0 && units[idx - 1])\n return format(diff, units[idx - 1]);\n if (absDiff < unit.max)\n return format(diff, unit);\n }\n return messages.invalid;\n}\n\nfunction useTimeoutPoll(fn, interval, options = {}) {\n const {\n immediate = true,\n immediateCallback = false\n } = options;\n const { start } = useTimeoutFn(loop, interval, { immediate });\n const isActive = shallowRef(false);\n async function loop() {\n if (!isActive.value)\n return;\n await fn();\n start();\n }\n function resume() {\n if (!isActive.value) {\n isActive.value = true;\n if (immediateCallback)\n fn();\n start();\n }\n }\n function pause() {\n isActive.value = false;\n }\n if (immediate && isClient)\n resume();\n tryOnScopeDispose(pause);\n return {\n isActive,\n pause,\n resume\n };\n}\n\nfunction useTimestamp(options = {}) {\n const {\n controls: exposeControls = false,\n offset = 0,\n immediate = true,\n interval = \"requestAnimationFrame\",\n callback\n } = options;\n const ts = shallowRef(timestamp() + offset);\n const update = () => ts.value = timestamp() + offset;\n const cb = callback ? () => {\n update();\n callback(ts.value);\n } : update;\n const controls = interval === \"requestAnimationFrame\" ? useRafFn(cb, { immediate }) : useIntervalFn(cb, interval, { immediate });\n if (exposeControls) {\n return {\n timestamp: ts,\n ...controls\n };\n } else {\n return ts;\n }\n}\n\nfunction useTitle(newTitle = null, options = {}) {\n var _a, _b, _c;\n const {\n document = defaultDocument,\n restoreOnUnmount = (t) => t\n } = options;\n const originalTitle = (_a = document == null ? void 0 : document.title) != null ? _a : \"\";\n const title = toRef((_b = newTitle != null ? newTitle : document == null ? void 0 : document.title) != null ? _b : null);\n const isReadonly = !!(newTitle && typeof newTitle === \"function\");\n function format(t) {\n if (!(\"titleTemplate\" in options))\n return t;\n const template = options.titleTemplate || \"%s\";\n return typeof template === \"function\" ? template(t) : toValue(template).replace(/%s/g, t);\n }\n watch(\n title,\n (newValue, oldValue) => {\n if (newValue !== oldValue && document)\n document.title = format(newValue != null ? newValue : \"\");\n },\n { immediate: true }\n );\n if (options.observe && !options.titleTemplate && document && !isReadonly) {\n useMutationObserver(\n (_c = document.head) == null ? void 0 : _c.querySelector(\"title\"),\n () => {\n if (document && document.title !== title.value)\n title.value = format(document.title);\n },\n { childList: true }\n );\n }\n tryOnScopeDispose(() => {\n if (restoreOnUnmount) {\n const restoredTitle = restoreOnUnmount(originalTitle, title.value || \"\");\n if (restoredTitle != null && document)\n document.title = restoredTitle;\n }\n });\n return title;\n}\n\nconst _TransitionPresets = {\n easeInSine: [0.12, 0, 0.39, 0],\n easeOutSine: [0.61, 1, 0.88, 1],\n easeInOutSine: [0.37, 0, 0.63, 1],\n easeInQuad: [0.11, 0, 0.5, 0],\n easeOutQuad: [0.5, 1, 0.89, 1],\n easeInOutQuad: [0.45, 0, 0.55, 1],\n easeInCubic: [0.32, 0, 0.67, 0],\n easeOutCubic: [0.33, 1, 0.68, 1],\n easeInOutCubic: [0.65, 0, 0.35, 1],\n easeInQuart: [0.5, 0, 0.75, 0],\n easeOutQuart: [0.25, 1, 0.5, 1],\n easeInOutQuart: [0.76, 0, 0.24, 1],\n easeInQuint: [0.64, 0, 0.78, 0],\n easeOutQuint: [0.22, 1, 0.36, 1],\n easeInOutQuint: [0.83, 0, 0.17, 1],\n easeInExpo: [0.7, 0, 0.84, 0],\n easeOutExpo: [0.16, 1, 0.3, 1],\n easeInOutExpo: [0.87, 0, 0.13, 1],\n easeInCirc: [0.55, 0, 1, 0.45],\n easeOutCirc: [0, 0.55, 0.45, 1],\n easeInOutCirc: [0.85, 0, 0.15, 1],\n easeInBack: [0.36, 0, 0.66, -0.56],\n easeOutBack: [0.34, 1.56, 0.64, 1],\n easeInOutBack: [0.68, -0.6, 0.32, 1.6]\n};\nconst TransitionPresets = /* @__PURE__ */ Object.assign({}, { linear: identity }, _TransitionPresets);\nfunction createEasingFunction([p0, p1, p2, p3]) {\n const a = (a1, a2) => 1 - 3 * a2 + 3 * a1;\n const b = (a1, a2) => 3 * a2 - 6 * a1;\n const c = (a1) => 3 * a1;\n const calcBezier = (t, a1, a2) => ((a(a1, a2) * t + b(a1, a2)) * t + c(a1)) * t;\n const getSlope = (t, a1, a2) => 3 * a(a1, a2) * t * t + 2 * b(a1, a2) * t + c(a1);\n const getTforX = (x) => {\n let aGuessT = x;\n for (let i = 0; i < 4; ++i) {\n const currentSlope = getSlope(aGuessT, p0, p2);\n if (currentSlope === 0)\n return aGuessT;\n const currentX = calcBezier(aGuessT, p0, p2) - x;\n aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n };\n return (x) => p0 === p1 && p2 === p3 ? x : calcBezier(getTforX(x), p1, p3);\n}\nfunction lerp(a, b, alpha) {\n return a + alpha * (b - a);\n}\nfunction toVec(t) {\n return (typeof t === \"number\" ? [t] : t) || [];\n}\nfunction executeTransition(source, from, to, options = {}) {\n var _a, _b;\n const fromVal = toValue(from);\n const toVal = toValue(to);\n const v1 = toVec(fromVal);\n const v2 = toVec(toVal);\n const duration = (_a = toValue(options.duration)) != null ? _a : 1e3;\n const startedAt = Date.now();\n const endAt = Date.now() + duration;\n const trans = typeof options.transition === \"function\" ? options.transition : (_b = toValue(options.transition)) != null ? _b : identity;\n const ease = typeof trans === \"function\" ? trans : createEasingFunction(trans);\n return new Promise((resolve) => {\n source.value = fromVal;\n const tick = () => {\n var _a2;\n if ((_a2 = options.abort) == null ? void 0 : _a2.call(options)) {\n resolve();\n return;\n }\n const now = Date.now();\n const alpha = ease((now - startedAt) / duration);\n const arr = toVec(source.value).map((n, i) => lerp(v1[i], v2[i], alpha));\n if (Array.isArray(source.value))\n source.value = arr.map((n, i) => {\n var _a3, _b2;\n return lerp((_a3 = v1[i]) != null ? _a3 : 0, (_b2 = v2[i]) != null ? _b2 : 0, alpha);\n });\n else if (typeof source.value === \"number\")\n source.value = arr[0];\n if (now < endAt) {\n requestAnimationFrame(tick);\n } else {\n source.value = toVal;\n resolve();\n }\n };\n tick();\n });\n}\nfunction useTransition(source, options = {}) {\n let currentId = 0;\n const sourceVal = () => {\n const v = toValue(source);\n return typeof v === \"number\" ? v : v.map(toValue);\n };\n const outputRef = ref(sourceVal());\n watch(sourceVal, async (to) => {\n var _a, _b;\n if (toValue(options.disabled))\n return;\n const id = ++currentId;\n if (options.delay)\n await promiseTimeout(toValue(options.delay));\n if (id !== currentId)\n return;\n const toVal = Array.isArray(to) ? to.map(toValue) : toValue(to);\n (_a = options.onStarted) == null ? void 0 : _a.call(options);\n await executeTransition(outputRef, outputRef.value, toVal, {\n ...options,\n abort: () => {\n var _a2;\n return id !== currentId || ((_a2 = options.abort) == null ? void 0 : _a2.call(options));\n }\n });\n (_b = options.onFinished) == null ? void 0 : _b.call(options);\n }, { deep: true });\n watch(() => toValue(options.disabled), (disabled) => {\n if (disabled) {\n currentId++;\n outputRef.value = sourceVal();\n }\n });\n tryOnScopeDispose(() => {\n currentId++;\n });\n return computed(() => toValue(options.disabled) ? sourceVal() : outputRef.value);\n}\n\nfunction useUrlSearchParams(mode = \"history\", options = {}) {\n const {\n initialValue = {},\n removeNullishValues = true,\n removeFalsyValues = false,\n write: enableWrite = true,\n writeMode = \"replace\",\n window = defaultWindow,\n stringify = (params) => params.toString()\n } = options;\n if (!window)\n return reactive(initialValue);\n const state = reactive({});\n function getRawParams() {\n if (mode === \"history\") {\n return window.location.search || \"\";\n } else if (mode === \"hash\") {\n const hash = window.location.hash || \"\";\n const index = hash.indexOf(\"?\");\n return index > 0 ? hash.slice(index) : \"\";\n } else {\n return (window.location.hash || \"\").replace(/^#/, \"\");\n }\n }\n function constructQuery(params) {\n const stringified = stringify(params);\n if (mode === \"history\")\n return `${stringified ? `?${stringified}` : \"\"}${window.location.hash || \"\"}`;\n if (mode === \"hash-params\")\n return `${window.location.search || \"\"}${stringified ? `#${stringified}` : \"\"}`;\n const hash = window.location.hash || \"#\";\n const index = hash.indexOf(\"?\");\n if (index > 0)\n return `${window.location.search || \"\"}${hash.slice(0, index)}${stringified ? `?${stringified}` : \"\"}`;\n return `${window.location.search || \"\"}${hash}${stringified ? `?${stringified}` : \"\"}`;\n }\n function read() {\n return new URLSearchParams(getRawParams());\n }\n function updateState(params) {\n const unusedKeys = new Set(Object.keys(state));\n for (const key of params.keys()) {\n const paramsForKey = params.getAll(key);\n state[key] = paramsForKey.length > 1 ? paramsForKey : params.get(key) || \"\";\n unusedKeys.delete(key);\n }\n Array.from(unusedKeys).forEach((key) => delete state[key]);\n }\n const { pause, resume } = pausableWatch(\n state,\n () => {\n const params = new URLSearchParams(\"\");\n Object.keys(state).forEach((key) => {\n const mapEntry = state[key];\n if (Array.isArray(mapEntry))\n mapEntry.forEach((value) => params.append(key, value));\n else if (removeNullishValues && mapEntry == null)\n params.delete(key);\n else if (removeFalsyValues && !mapEntry)\n params.delete(key);\n else\n params.set(key, mapEntry);\n });\n write(params, false);\n },\n { deep: true }\n );\n function write(params, shouldUpdate) {\n pause();\n if (shouldUpdate)\n updateState(params);\n if (writeMode === \"replace\") {\n window.history.replaceState(\n window.history.state,\n window.document.title,\n window.location.pathname + constructQuery(params)\n );\n } else {\n window.history.pushState(\n window.history.state,\n window.document.title,\n window.location.pathname + constructQuery(params)\n );\n }\n resume();\n }\n function onChanged() {\n if (!enableWrite)\n return;\n write(read(), true);\n }\n const listenerOptions = { passive: true };\n useEventListener(window, \"popstate\", onChanged, listenerOptions);\n if (mode !== \"history\")\n useEventListener(window, \"hashchange\", onChanged, listenerOptions);\n const initial = read();\n if (initial.keys().next().value)\n updateState(initial);\n else\n Object.assign(state, initialValue);\n return state;\n}\n\nfunction useUserMedia(options = {}) {\n var _a, _b;\n const enabled = shallowRef((_a = options.enabled) != null ? _a : false);\n const autoSwitch = shallowRef((_b = options.autoSwitch) != null ? _b : true);\n const constraints = ref(options.constraints);\n const { navigator = defaultNavigator } = options;\n const isSupported = useSupported(() => {\n var _a2;\n return (_a2 = navigator == null ? void 0 : navigator.mediaDevices) == null ? void 0 : _a2.getUserMedia;\n });\n const stream = shallowRef();\n function getDeviceOptions(type) {\n switch (type) {\n case \"video\": {\n if (constraints.value)\n return constraints.value.video || false;\n break;\n }\n case \"audio\": {\n if (constraints.value)\n return constraints.value.audio || false;\n break;\n }\n }\n }\n async function _start() {\n if (!isSupported.value || stream.value)\n return;\n stream.value = await navigator.mediaDevices.getUserMedia({\n video: getDeviceOptions(\"video\"),\n audio: getDeviceOptions(\"audio\")\n });\n return stream.value;\n }\n function _stop() {\n var _a2;\n (_a2 = stream.value) == null ? void 0 : _a2.getTracks().forEach((t) => t.stop());\n stream.value = void 0;\n }\n function stop() {\n _stop();\n enabled.value = false;\n }\n async function start() {\n await _start();\n if (stream.value)\n enabled.value = true;\n return stream.value;\n }\n async function restart() {\n _stop();\n return await start();\n }\n watch(\n enabled,\n (v) => {\n if (v)\n _start();\n else _stop();\n },\n { immediate: true }\n );\n watch(\n constraints,\n () => {\n if (autoSwitch.value && stream.value)\n restart();\n },\n { immediate: true }\n );\n tryOnScopeDispose(() => {\n stop();\n });\n return {\n isSupported,\n stream,\n start,\n stop,\n restart,\n constraints,\n enabled,\n autoSwitch\n };\n}\n\nfunction useVModel(props, key, emit, options = {}) {\n var _a, _b, _c;\n const {\n clone = false,\n passive = false,\n eventName,\n deep = false,\n defaultValue,\n shouldEmit\n } = options;\n const vm = getCurrentInstance();\n const _emit = emit || (vm == null ? void 0 : vm.emit) || ((_a = vm == null ? void 0 : vm.$emit) == null ? void 0 : _a.bind(vm)) || ((_c = (_b = vm == null ? void 0 : vm.proxy) == null ? void 0 : _b.$emit) == null ? void 0 : _c.bind(vm == null ? void 0 : vm.proxy));\n let event = eventName;\n if (!key) {\n key = \"modelValue\";\n }\n event = event || `update:${key.toString()}`;\n const cloneFn = (val) => !clone ? val : typeof clone === \"function\" ? clone(val) : cloneFnJSON(val);\n const getValue = () => isDef(props[key]) ? cloneFn(props[key]) : defaultValue;\n const triggerEmit = (value) => {\n if (shouldEmit) {\n if (shouldEmit(value))\n _emit(event, value);\n } else {\n _emit(event, value);\n }\n };\n if (passive) {\n const initialValue = getValue();\n const proxy = ref(initialValue);\n let isUpdating = false;\n watch(\n () => props[key],\n (v) => {\n if (!isUpdating) {\n isUpdating = true;\n proxy.value = cloneFn(v);\n nextTick(() => isUpdating = false);\n }\n }\n );\n watch(\n proxy,\n (v) => {\n if (!isUpdating && (v !== props[key] || deep))\n triggerEmit(v);\n },\n { deep }\n );\n return proxy;\n } else {\n return computed({\n get() {\n return getValue();\n },\n set(value) {\n triggerEmit(value);\n }\n });\n }\n}\n\nfunction useVModels(props, emit, options = {}) {\n const ret = {};\n for (const key in props) {\n ret[key] = useVModel(\n props,\n key,\n emit,\n options\n );\n }\n return ret;\n}\n\nfunction useVibrate(options) {\n const {\n pattern = [],\n interval = 0,\n navigator = defaultNavigator\n } = options || {};\n const isSupported = useSupported(() => typeof navigator !== \"undefined\" && \"vibrate\" in navigator);\n const patternRef = toRef(pattern);\n let intervalControls;\n const vibrate = (pattern2 = patternRef.value) => {\n if (isSupported.value)\n navigator.vibrate(pattern2);\n };\n const stop = () => {\n if (isSupported.value)\n navigator.vibrate(0);\n intervalControls == null ? void 0 : intervalControls.pause();\n };\n if (interval > 0) {\n intervalControls = useIntervalFn(\n vibrate,\n interval,\n {\n immediate: false,\n immediateCallback: false\n }\n );\n }\n return {\n isSupported,\n pattern,\n intervalControls,\n vibrate,\n stop\n };\n}\n\nfunction useVirtualList(list, options) {\n const { containerStyle, wrapperProps, scrollTo, calculateRange, currentList, containerRef } = \"itemHeight\" in options ? useVerticalVirtualList(options, list) : useHorizontalVirtualList(options, list);\n return {\n list: currentList,\n scrollTo,\n containerProps: {\n ref: containerRef,\n onScroll: () => {\n calculateRange();\n },\n style: containerStyle\n },\n wrapperProps\n };\n}\nfunction useVirtualListResources(list) {\n const containerRef = shallowRef(null);\n const size = useElementSize(containerRef);\n const currentList = ref([]);\n const source = shallowRef(list);\n const state = ref({ start: 0, end: 10 });\n return { state, source, currentList, size, containerRef };\n}\nfunction createGetViewCapacity(state, source, itemSize) {\n return (containerSize) => {\n if (typeof itemSize === \"number\")\n return Math.ceil(containerSize / itemSize);\n const { start = 0 } = state.value;\n let sum = 0;\n let capacity = 0;\n for (let i = start; i < source.value.length; i++) {\n const size = itemSize(i);\n sum += size;\n capacity = i;\n if (sum > containerSize)\n break;\n }\n return capacity - start;\n };\n}\nfunction createGetOffset(source, itemSize) {\n return (scrollDirection) => {\n if (typeof itemSize === \"number\")\n return Math.floor(scrollDirection / itemSize) + 1;\n let sum = 0;\n let offset = 0;\n for (let i = 0; i < source.value.length; i++) {\n const size = itemSize(i);\n sum += size;\n if (sum >= scrollDirection) {\n offset = i;\n break;\n }\n }\n return offset + 1;\n };\n}\nfunction createCalculateRange(type, overscan, getOffset, getViewCapacity, { containerRef, state, currentList, source }) {\n return () => {\n const element = containerRef.value;\n if (element) {\n const offset = getOffset(type === \"vertical\" ? element.scrollTop : element.scrollLeft);\n const viewCapacity = getViewCapacity(type === \"vertical\" ? element.clientHeight : element.clientWidth);\n const from = offset - overscan;\n const to = offset + viewCapacity + overscan;\n state.value = {\n start: from < 0 ? 0 : from,\n end: to > source.value.length ? source.value.length : to\n };\n currentList.value = source.value.slice(state.value.start, state.value.end).map((ele, index) => ({\n data: ele,\n index: index + state.value.start\n }));\n }\n };\n}\nfunction createGetDistance(itemSize, source) {\n return (index) => {\n if (typeof itemSize === \"number\") {\n const size2 = index * itemSize;\n return size2;\n }\n const size = source.value.slice(0, index).reduce((sum, _, i) => sum + itemSize(i), 0);\n return size;\n };\n}\nfunction useWatchForSizes(size, list, containerRef, calculateRange) {\n watch([size.width, size.height, list, containerRef], () => {\n calculateRange();\n });\n}\nfunction createComputedTotalSize(itemSize, source) {\n return computed(() => {\n if (typeof itemSize === \"number\")\n return source.value.length * itemSize;\n return source.value.reduce((sum, _, index) => sum + itemSize(index), 0);\n });\n}\nconst scrollToDictionaryForElementScrollKey = {\n horizontal: \"scrollLeft\",\n vertical: \"scrollTop\"\n};\nfunction createScrollTo(type, calculateRange, getDistance, containerRef) {\n return (index) => {\n if (containerRef.value) {\n containerRef.value[scrollToDictionaryForElementScrollKey[type]] = getDistance(index);\n calculateRange();\n }\n };\n}\nfunction useHorizontalVirtualList(options, list) {\n const resources = useVirtualListResources(list);\n const { state, source, currentList, size, containerRef } = resources;\n const containerStyle = { overflowX: \"auto\" };\n const { itemWidth, overscan = 5 } = options;\n const getViewCapacity = createGetViewCapacity(state, source, itemWidth);\n const getOffset = createGetOffset(source, itemWidth);\n const calculateRange = createCalculateRange(\"horizontal\", overscan, getOffset, getViewCapacity, resources);\n const getDistanceLeft = createGetDistance(itemWidth, source);\n const offsetLeft = computed(() => getDistanceLeft(state.value.start));\n const totalWidth = createComputedTotalSize(itemWidth, source);\n useWatchForSizes(size, list, containerRef, calculateRange);\n const scrollTo = createScrollTo(\"horizontal\", calculateRange, getDistanceLeft, containerRef);\n const wrapperProps = computed(() => {\n return {\n style: {\n height: \"100%\",\n width: `${totalWidth.value - offsetLeft.value}px`,\n marginLeft: `${offsetLeft.value}px`,\n display: \"flex\"\n }\n };\n });\n return {\n scrollTo,\n calculateRange,\n wrapperProps,\n containerStyle,\n currentList,\n containerRef\n };\n}\nfunction useVerticalVirtualList(options, list) {\n const resources = useVirtualListResources(list);\n const { state, source, currentList, size, containerRef } = resources;\n const containerStyle = { overflowY: \"auto\" };\n const { itemHeight, overscan = 5 } = options;\n const getViewCapacity = createGetViewCapacity(state, source, itemHeight);\n const getOffset = createGetOffset(source, itemHeight);\n const calculateRange = createCalculateRange(\"vertical\", overscan, getOffset, getViewCapacity, resources);\n const getDistanceTop = createGetDistance(itemHeight, source);\n const offsetTop = computed(() => getDistanceTop(state.value.start));\n const totalHeight = createComputedTotalSize(itemHeight, source);\n useWatchForSizes(size, list, containerRef, calculateRange);\n const scrollTo = createScrollTo(\"vertical\", calculateRange, getDistanceTop, containerRef);\n const wrapperProps = computed(() => {\n return {\n style: {\n width: \"100%\",\n height: `${totalHeight.value - offsetTop.value}px`,\n marginTop: `${offsetTop.value}px`\n }\n };\n });\n return {\n calculateRange,\n scrollTo,\n containerStyle,\n wrapperProps,\n currentList,\n containerRef\n };\n}\n\nfunction useWakeLock(options = {}) {\n const {\n navigator = defaultNavigator,\n document = defaultDocument\n } = options;\n const requestedType = shallowRef(false);\n const sentinel = shallowRef(null);\n const documentVisibility = useDocumentVisibility({ document });\n const isSupported = useSupported(() => navigator && \"wakeLock\" in navigator);\n const isActive = computed(() => !!sentinel.value && documentVisibility.value === \"visible\");\n if (isSupported.value) {\n useEventListener(sentinel, \"release\", () => {\n var _a, _b;\n requestedType.value = (_b = (_a = sentinel.value) == null ? void 0 : _a.type) != null ? _b : false;\n }, { passive: true });\n whenever(\n () => documentVisibility.value === \"visible\" && (document == null ? void 0 : document.visibilityState) === \"visible\" && requestedType.value,\n (type) => {\n requestedType.value = false;\n forceRequest(type);\n }\n );\n }\n async function forceRequest(type) {\n var _a;\n await ((_a = sentinel.value) == null ? void 0 : _a.release());\n sentinel.value = isSupported.value ? await navigator.wakeLock.request(type) : null;\n }\n async function request(type) {\n if (documentVisibility.value === \"visible\")\n await forceRequest(type);\n else\n requestedType.value = type;\n }\n async function release() {\n requestedType.value = false;\n const s = sentinel.value;\n sentinel.value = null;\n await (s == null ? void 0 : s.release());\n }\n return {\n sentinel,\n isSupported,\n isActive,\n request,\n forceRequest,\n release\n };\n}\n\nfunction useWebNotification(options = {}) {\n const {\n window = defaultWindow,\n requestPermissions: _requestForPermissions = true\n } = options;\n const defaultWebNotificationOptions = options;\n const isSupported = useSupported(() => {\n if (!window || !(\"Notification\" in window))\n return false;\n if (Notification.permission === \"granted\")\n return true;\n try {\n const notification2 = new Notification(\"\");\n notification2.onshow = () => {\n notification2.close();\n };\n } catch (e) {\n if (e.name === \"TypeError\")\n return false;\n }\n return true;\n });\n const permissionGranted = shallowRef(isSupported.value && \"permission\" in Notification && Notification.permission === \"granted\");\n const notification = ref(null);\n const ensurePermissions = async () => {\n if (!isSupported.value)\n return;\n if (!permissionGranted.value && Notification.permission !== \"denied\") {\n const result = await Notification.requestPermission();\n if (result === \"granted\")\n permissionGranted.value = true;\n }\n return permissionGranted.value;\n };\n const { on: onClick, trigger: clickTrigger } = createEventHook();\n const { on: onShow, trigger: showTrigger } = createEventHook();\n const { on: onError, trigger: errorTrigger } = createEventHook();\n const { on: onClose, trigger: closeTrigger } = createEventHook();\n const show = async (overrides) => {\n if (!isSupported.value || !permissionGranted.value)\n return;\n const options2 = Object.assign({}, defaultWebNotificationOptions, overrides);\n notification.value = new Notification(options2.title || \"\", options2);\n notification.value.onclick = clickTrigger;\n notification.value.onshow = showTrigger;\n notification.value.onerror = errorTrigger;\n notification.value.onclose = closeTrigger;\n return notification.value;\n };\n const close = () => {\n if (notification.value)\n notification.value.close();\n notification.value = null;\n };\n if (_requestForPermissions)\n tryOnMounted(ensurePermissions);\n tryOnScopeDispose(close);\n if (isSupported.value && window) {\n const document = window.document;\n useEventListener(document, \"visibilitychange\", (e) => {\n e.preventDefault();\n if (document.visibilityState === \"visible\") {\n close();\n }\n });\n }\n return {\n isSupported,\n notification,\n ensurePermissions,\n permissionGranted,\n show,\n close,\n onClick,\n onShow,\n onError,\n onClose\n };\n}\n\nconst DEFAULT_PING_MESSAGE = \"ping\";\nfunction resolveNestedOptions(options) {\n if (options === true)\n return {};\n return options;\n}\nfunction useWebSocket(url, options = {}) {\n const {\n onConnected,\n onDisconnected,\n onError,\n onMessage,\n immediate = true,\n autoConnect = true,\n autoClose = true,\n protocols = []\n } = options;\n const data = ref(null);\n const status = shallowRef(\"CLOSED\");\n const wsRef = ref();\n const urlRef = toRef(url);\n let heartbeatPause;\n let heartbeatResume;\n let explicitlyClosed = false;\n let retried = 0;\n let bufferedData = [];\n let retryTimeout;\n let pongTimeoutWait;\n const _sendBuffer = () => {\n if (bufferedData.length && wsRef.value && status.value === \"OPEN\") {\n for (const buffer of bufferedData)\n wsRef.value.send(buffer);\n bufferedData = [];\n }\n };\n const resetRetry = () => {\n if (retryTimeout != null) {\n clearTimeout(retryTimeout);\n retryTimeout = void 0;\n }\n };\n const resetHeartbeat = () => {\n clearTimeout(pongTimeoutWait);\n pongTimeoutWait = void 0;\n };\n const close = (code = 1e3, reason) => {\n resetRetry();\n if (!isClient && !isWorker || !wsRef.value)\n return;\n explicitlyClosed = true;\n resetHeartbeat();\n heartbeatPause == null ? void 0 : heartbeatPause();\n wsRef.value.close(code, reason);\n wsRef.value = void 0;\n };\n const send = (data2, useBuffer = true) => {\n if (!wsRef.value || status.value !== \"OPEN\") {\n if (useBuffer)\n bufferedData.push(data2);\n return false;\n }\n _sendBuffer();\n wsRef.value.send(data2);\n return true;\n };\n const _init = () => {\n if (explicitlyClosed || typeof urlRef.value === \"undefined\")\n return;\n const ws = new WebSocket(urlRef.value, protocols);\n wsRef.value = ws;\n status.value = \"CONNECTING\";\n ws.onopen = () => {\n status.value = \"OPEN\";\n retried = 0;\n onConnected == null ? void 0 : onConnected(ws);\n heartbeatResume == null ? void 0 : heartbeatResume();\n _sendBuffer();\n };\n ws.onclose = (ev) => {\n status.value = \"CLOSED\";\n resetHeartbeat();\n heartbeatPause == null ? void 0 : heartbeatPause();\n onDisconnected == null ? void 0 : onDisconnected(ws, ev);\n if (!explicitlyClosed && options.autoReconnect && (wsRef.value == null || ws === wsRef.value)) {\n const {\n retries = -1,\n delay = 1e3,\n onFailed\n } = resolveNestedOptions(options.autoReconnect);\n const checkRetires = typeof retries === \"function\" ? retries : () => typeof retries === \"number\" && (retries < 0 || retried < retries);\n if (checkRetires(retried)) {\n retried += 1;\n retryTimeout = setTimeout(_init, delay);\n } else {\n onFailed == null ? void 0 : onFailed();\n }\n }\n };\n ws.onerror = (e) => {\n onError == null ? void 0 : onError(ws, e);\n };\n ws.onmessage = (e) => {\n if (options.heartbeat) {\n resetHeartbeat();\n const {\n message = DEFAULT_PING_MESSAGE,\n responseMessage = message\n } = resolveNestedOptions(options.heartbeat);\n if (e.data === toValue(responseMessage))\n return;\n }\n data.value = e.data;\n onMessage == null ? void 0 : onMessage(ws, e);\n };\n };\n if (options.heartbeat) {\n const {\n message = DEFAULT_PING_MESSAGE,\n interval = 1e3,\n pongTimeout = 1e3\n } = resolveNestedOptions(options.heartbeat);\n const { pause, resume } = useIntervalFn(\n () => {\n send(toValue(message), false);\n if (pongTimeoutWait != null)\n return;\n pongTimeoutWait = setTimeout(() => {\n close();\n explicitlyClosed = false;\n }, pongTimeout);\n },\n interval,\n { immediate: false }\n );\n heartbeatPause = pause;\n heartbeatResume = resume;\n }\n if (autoClose) {\n if (isClient)\n useEventListener(\"beforeunload\", () => close(), { passive: true });\n tryOnScopeDispose(close);\n }\n const open = () => {\n if (!isClient && !isWorker)\n return;\n close();\n explicitlyClosed = false;\n retried = 0;\n _init();\n };\n if (immediate)\n open();\n if (autoConnect)\n watch(urlRef, open);\n return {\n data,\n status,\n close,\n send,\n open,\n ws: wsRef\n };\n}\n\nfunction useWebWorker(arg0, workerOptions, options) {\n const {\n window = defaultWindow\n } = options != null ? options : {};\n const data = ref(null);\n const worker = shallowRef();\n const post = (...args) => {\n if (!worker.value)\n return;\n worker.value.postMessage(...args);\n };\n const terminate = function terminate2() {\n if (!worker.value)\n return;\n worker.value.terminate();\n };\n if (window) {\n if (typeof arg0 === \"string\")\n worker.value = new Worker(arg0, workerOptions);\n else if (typeof arg0 === \"function\")\n worker.value = arg0();\n else\n worker.value = arg0;\n worker.value.onmessage = (e) => {\n data.value = e.data;\n };\n tryOnScopeDispose(() => {\n if (worker.value)\n worker.value.terminate();\n });\n }\n return {\n data,\n post,\n terminate,\n worker\n };\n}\n\nfunction depsParser(deps, localDeps) {\n if (deps.length === 0 && localDeps.length === 0)\n return \"\";\n const depsString = deps.map((dep) => `'${dep}'`).toString();\n const depsFunctionString = localDeps.filter((dep) => typeof dep === \"function\").map((fn) => {\n const str = fn.toString();\n if (str.trim().startsWith(\"function\")) {\n return str;\n } else {\n const name = fn.name;\n return `const ${name} = ${str}`;\n }\n }).join(\";\");\n const importString = `importScripts(${depsString});`;\n return `${depsString.trim() === \"\" ? \"\" : importString} ${depsFunctionString}`;\n}\n\nfunction jobRunner(userFunc) {\n return (e) => {\n const userFuncArgs = e.data[0];\n return Promise.resolve(userFunc.apply(void 0, userFuncArgs)).then((result) => {\n postMessage([\"SUCCESS\", result]);\n }).catch((error) => {\n postMessage([\"ERROR\", error]);\n });\n };\n}\n\nfunction createWorkerBlobUrl(fn, deps, localDeps) {\n const blobCode = `${depsParser(deps, localDeps)}; onmessage=(${jobRunner})(${fn})`;\n const blob = new Blob([blobCode], { type: \"text/javascript\" });\n const url = URL.createObjectURL(blob);\n return url;\n}\n\nfunction useWebWorkerFn(fn, options = {}) {\n const {\n dependencies = [],\n localDependencies = [],\n timeout,\n window = defaultWindow\n } = options;\n const worker = ref();\n const workerStatus = shallowRef(\"PENDING\");\n const promise = ref({});\n const timeoutId = shallowRef();\n const workerTerminate = (status = \"PENDING\") => {\n if (worker.value && worker.value._url && window) {\n worker.value.terminate();\n URL.revokeObjectURL(worker.value._url);\n promise.value = {};\n worker.value = void 0;\n window.clearTimeout(timeoutId.value);\n workerStatus.value = status;\n }\n };\n workerTerminate();\n tryOnScopeDispose(workerTerminate);\n const generateWorker = () => {\n const blobUrl = createWorkerBlobUrl(fn, dependencies, localDependencies);\n const newWorker = new Worker(blobUrl);\n newWorker._url = blobUrl;\n newWorker.onmessage = (e) => {\n const { resolve = () => {\n }, reject = () => {\n } } = promise.value;\n const [status, result] = e.data;\n switch (status) {\n case \"SUCCESS\":\n resolve(result);\n workerTerminate(status);\n break;\n default:\n reject(result);\n workerTerminate(\"ERROR\");\n break;\n }\n };\n newWorker.onerror = (e) => {\n const { reject = () => {\n } } = promise.value;\n e.preventDefault();\n reject(e);\n workerTerminate(\"ERROR\");\n };\n if (timeout) {\n timeoutId.value = setTimeout(\n () => workerTerminate(\"TIMEOUT_EXPIRED\"),\n timeout\n );\n }\n return newWorker;\n };\n const callWorker = (...fnArgs) => new Promise((resolve, reject) => {\n var _a;\n promise.value = {\n resolve,\n reject\n };\n (_a = worker.value) == null ? void 0 : _a.postMessage([[...fnArgs]]);\n workerStatus.value = \"RUNNING\";\n });\n const workerFn = (...fnArgs) => {\n if (workerStatus.value === \"RUNNING\") {\n console.error(\n \"[useWebWorkerFn] You can only run one instance of the worker at a time.\"\n );\n return Promise.reject();\n }\n worker.value = generateWorker();\n return callWorker(...fnArgs);\n };\n return {\n workerFn,\n workerStatus,\n workerTerminate\n };\n}\n\nfunction useWindowFocus(options = {}) {\n const { window = defaultWindow } = options;\n if (!window)\n return shallowRef(false);\n const focused = shallowRef(window.document.hasFocus());\n const listenerOptions = { passive: true };\n useEventListener(window, \"blur\", () => {\n focused.value = false;\n }, listenerOptions);\n useEventListener(window, \"focus\", () => {\n focused.value = true;\n }, listenerOptions);\n return focused;\n}\n\nfunction useWindowScroll(options = {}) {\n const { window = defaultWindow, ...rest } = options;\n return useScroll(window, rest);\n}\n\nfunction useWindowSize(options = {}) {\n const {\n window = defaultWindow,\n initialWidth = Number.POSITIVE_INFINITY,\n initialHeight = Number.POSITIVE_INFINITY,\n listenOrientation = true,\n includeScrollbar = true,\n type = \"inner\"\n } = options;\n const width = shallowRef(initialWidth);\n const height = shallowRef(initialHeight);\n const update = () => {\n if (window) {\n if (type === \"outer\") {\n width.value = window.outerWidth;\n height.value = window.outerHeight;\n } else if (type === \"visual\" && window.visualViewport) {\n const { width: visualViewportWidth, height: visualViewportHeight, scale } = window.visualViewport;\n width.value = Math.round(visualViewportWidth * scale);\n height.value = Math.round(visualViewportHeight * scale);\n } else if (includeScrollbar) {\n width.value = window.innerWidth;\n height.value = window.innerHeight;\n } else {\n width.value = window.document.documentElement.clientWidth;\n height.value = window.document.documentElement.clientHeight;\n }\n }\n };\n update();\n tryOnMounted(update);\n const listenerOptions = { passive: true };\n useEventListener(\"resize\", update, listenerOptions);\n if (window && type === \"visual\" && window.visualViewport) {\n useEventListener(window.visualViewport, \"resize\", update, listenerOptions);\n }\n if (listenOrientation) {\n const matches = useMediaQuery(\"(orientation: portrait)\");\n watch(matches, () => update());\n }\n return { width, height };\n}\n\nexport { DefaultMagicKeysAliasMap, StorageSerializers, TransitionPresets, computedAsync as asyncComputed, breakpointsAntDesign, breakpointsBootstrapV5, breakpointsElement, breakpointsMasterCss, breakpointsPrimeFlex, breakpointsQuasar, breakpointsSematic, breakpointsTailwind, breakpointsVuetify, breakpointsVuetifyV2, breakpointsVuetifyV3, cloneFnJSON, computedAsync, computedInject, createFetch, createReusableTemplate, createTemplatePromise, createUnrefFn, customStorageEventName, defaultDocument, defaultLocation, defaultNavigator, defaultWindow, executeTransition, formatTimeAgo, getSSRHandler, mapGamepadToXbox360Controller, onClickOutside, onElementRemoval, onKeyDown, onKeyPressed, onKeyStroke, onKeyUp, onLongPress, onStartTyping, provideSSRWidth, setSSRHandler, templateRef, unrefElement, useActiveElement, useAnimate, useAsyncQueue, useAsyncState, useBase64, useBattery, useBluetooth, useBreakpoints, useBroadcastChannel, useBrowserLocation, useCached, useClipboard, useClipboardItems, useCloned, useColorMode, useConfirmDialog, useCountdown, useCssVar, useCurrentElement, useCycleList, useDark, useDebouncedRefHistory, useDeviceMotion, useDeviceOrientation, useDevicePixelRatio, useDevicesList, useDisplayMedia, useDocumentVisibility, useDraggable, useDropZone, useElementBounding, useElementByPoint, useElementHover, useElementSize, useElementVisibility, useEventBus, useEventListener, useEventSource, useEyeDropper, useFavicon, useFetch, useFileDialog, useFileSystemAccess, useFocus, useFocusWithin, useFps, useFullscreen, useGamepad, useGeolocation, useIdle, useImage, useInfiniteScroll, useIntersectionObserver, useKeyModifier, useLocalStorage, useMagicKeys, useManualRefHistory, useMediaControls, useMediaQuery, useMemoize, useMemory, useMounted, useMouse, useMouseInElement, useMousePressed, useMutationObserver, useNavigatorLanguage, useNetwork, useNow, useObjectUrl, useOffsetPagination, useOnline, usePageLeave, useParallax, useParentElement, usePerformanceObserver, usePermission, usePointer, usePointerLock, usePointerSwipe, usePreferredColorScheme, usePreferredContrast, usePreferredDark, usePreferredLanguages, usePreferredReducedMotion, usePreferredReducedTransparency, usePrevious, useRafFn, useRefHistory, useResizeObserver, useSSRWidth, useScreenOrientation, useScreenSafeArea, useScriptTag, useScroll, useScrollLock, useSessionStorage, useShare, useSorted, useSpeechRecognition, useSpeechSynthesis, useStepper, useStorage, useStorageAsync, useStyleTag, useSupported, useSwipe, useTemplateRefsList, useTextDirection, useTextSelection, useTextareaAutosize, useThrottledRefHistory, useTimeAgo, useTimeoutPoll, useTimestamp, useTitle, useTransition, useUrlSearchParams, useUserMedia, useVModel, useVModels, useVibrate, useVirtualList, useWakeLock, useWebNotification, useWebSocket, useWebWorker, useWebWorkerFn, useWindowFocus, useWindowScroll, useWindowSize };\n","import {ref} from \"vue\";\nimport {useWebSocket} from \"@vueuse/core\";\nimport {useAuth} from \"@morghulis/utils\";\n\n\nexport function useSocket(baseURL: string) {\n const {$client} = useAuth()\n const URL = `${baseURL}${$client}/`\n let status = ref('DISCONNECTED')\n const {data, open} = useWebSocket(URL, {\n onDisconnected: () => status.value = 'CONNECTING',\n onConnected: () => status.value = 'CONNECTED',\n autoReconnect: {\n retries: 10, delay: 1000,\n onFailed: () => status.value = 'DISCONNECTED',\n }\n })\n return {data, open, status}\n}","import {reactive, watch} from \"vue\";\nimport {Core, Options} from \"./types\";\nimport ChannelHub from \"./use-channel/ChannelHub\";\nimport {useSocket} from \"./use-socket\";\n\nexport function useMorghulisCore(options: Options): Core {\n const hub = reactive<ChannelHub>(new ChannelHub())\n const {data, open, status} = useSocket(options.baseURL as string)\n\n watch(data, () => {\n const response = JSON.parse(data.value)\n const {payload, handlerKey, channelKey} = response\n hub.loadChannel(handlerKey, channelKey)\n .then(channel => {\n const fun: 'start' | 'stop' | 'proceed' = response.status\n channel[fun](payload)\n })\n .catch(error => {\n options.$$message('error', error)\n })\n }, {deep: true})\n\n // 返回资源\n return {open, status, hub}\n}","import {ChannelConfig, IChannelConfig} from \"./types\";\nimport {inject, Ref, watch} from \"vue\";\nimport Channel from \"./Channel\";\nimport {Core, Options} from \"../types\";\n\n\nexport function createChannel(config: IChannelConfig): Channel {\n const {$$message} = inject('options') as Options\n const {hub} = inject('core') as Core\n const handlerKey = config.handlerKey\n const $config: ChannelConfig = {\n handlerKey: handlerKey,\n channelKey: config.channelKey || 'default',\n url: config.url || `socket/${handlerKey}`,\n onStart: () => config.onStart ? config.onStart : () => $$message('success', `start ${handlerKey}`),\n onStop: () => config.onStop ? config.onStop : () => $$message('success', `stop ${handlerKey}`),\n onProceed: config.onProceed,\n }\n return hub.register($config)\n}\n\n\nexport function useChannel(config: Ref<IChannelConfig>): Channel {\n const {hub} = inject('core') as Core\n let channel: Channel = createChannel(config.value)\n watch(\n () => [\n config.value.handlerKey,\n config.value.channelKey,\n config.value.url,\n config.value.auth,\n ], (nv, ov) => {\n if (ov) hub.destroy(ov[0] as string, ov[1] as string)\n channel = createChannel(config.value)\n }, {deep: true})\n return channel\n}\n","import {App} from \"vue\";\nimport 'nprogress/nprogress.css'\nimport {useRequest} from \"./use-request\";\nimport {IOptions, Options} from \"./types\";\nimport {useMorghulisCore} from \"./core\";\nimport {createChannel, useChannel} from \"./use-channel\";\n\n\nconst createMorghulisCore = (options?: IOptions) => {\n const $options: Options = {\n baseURL: options?.baseURL || '/api/',\n minioURL: options?.minioURL || '/dfs/',\n $$message: (type: string, msg: string) => console.log(`${type}: ${msg}`)\n }\n const core = useMorghulisCore($options)\n return {\n install(app: App) {\n app.provide('core', core)\n app.provide('options', $options)\n }\n }\n}\n\n\nexport {\n createMorghulisCore,\n useRequest,\n createChannel,\n useChannel,\n}"],"names":["bind","fn","thisArg","toString","getPrototypeOf","iterator","toStringTag","kindOf","cache","thing","str","kindOfTest","type","typeOfTest","isArray","isUndefined","isBuffer","val","isFunction","isArrayBuffer","isArrayBufferView","result","isString","isNumber","isObject","isBoolean","isPlainObject","prototype","isDate","isFile","isBlob","isFileList","isStream","isFormData","kind","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","trim","forEach","obj","allOwnKeys","i","l","keys","len","key","findKey","_key","_global","isContextDefined","context","merge","caseless","assignValue","targetKey","extend","a","b","stripBOM","content","inherits","constructor","superConstructor","props","descriptors","toFlatObject","sourceObj","destObj","filter","propFilter","prop","merged","endsWith","searchString","position","lastIndex","toArray","arr","isTypedArray","TypedArray","forEachEntry","_iterator","pair","matchAll","regExp","matches","isHTMLForm","toCamelCase","m","p1","p2","hasOwnProperty","isRegExp","reduceDescriptors","reducer","reducedDescriptors","descriptor","name","ret","freezeMethods","value","toObjectSet","arrayOrString","delimiter","define","noop","toFiniteNumber","defaultValue","isSpecCompliantForm","toJSONObject","stack","visit","source","target","reducedValue","isAsyncFn","isThenable","_setImmediate","setImmediateSupported","postMessageSupported","token","callbacks","data","cb","asap","isIterable","utils$1","AxiosError","message","code","config","request","response","utils","error","customProps","axiosError","httpAdapter","isVisitable","removeBrackets","renderKey","path","dots","isFlatArray","predicates","toFormData","formData","options","option","metaTokens","visitor","defaultVisitor","indexes","useBlob","convertValue","el","index","exposedHelpers","build","encode","charMap","match","AxiosURLSearchParams","params","encoder","_encode","buildURL","url","serializeFn","serializedParams","hashmarkIndex","InterceptorManager","fulfilled","rejected","id","h","transitionalDefaults","URLSearchParams$1","FormData$1","Blob$1","platform$1","URLSearchParams","FormData","Blob","hasBrowserEnv","_navigator","hasStandardBrowserEnv","hasStandardBrowserWebWorkerEnv","origin","platform","toURLEncodedForm","helpers","parsePropPath","arrayToObject","formDataToJSON","buildPath","isNumericKey","isLast","stringifySafely","rawValue","parser","e","defaults","headers","contentType","hasJSONContentType","isObjectPayload","_FormData","transitional","forcedJSONParsing","JSONRequested","strictJSONParsing","status","method","ignoreDuplicateOf","parseHeaders","rawHeaders","parsed","line","$internals","normalizeHeader","header","normalizeValue","parseTokens","tokens","tokensRE","isValidHeaderName","matchHeaderValue","isHeaderNameFilter","formatHeader","w","char","buildAccessors","accessorName","methodName","arg1","arg2","arg3","AxiosHeaders$1","valueOrRewrite","rewrite","self","setHeader","_value","_header","_rewrite","lHeader","setHeaders","dest","entry","matcher","deleted","deleteHeader","format","normalized","targets","asStrings","first","computed","accessors","defineAccessor","AxiosHeaders","mapped","headerValue","transformData","fns","isCancel","CanceledError","settle","resolve","reject","validateStatus","parseProtocol","speedometer","samplesCount","min","bytes","timestamps","head","tail","firstSampleTS","chunkLength","now","startedAt","bytesCount","passed","throttle","freq","timestamp","threshold","lastArgs","timer","invoke","args","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","loaded","total","progressBytes","rate","inRange","progressEventDecorator","throttled","lengthComputable","asyncDecorator","isURLSameOrigin","isMSIE","cookies","expires","domain","secure","cookie","isAbsoluteURL","combineURLs","baseURL","relativeURL","buildFullPath","requestedURL","allowAbsoluteUrls","isRelativeUrl","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","resolveConfig","newConfig","withXSRFToken","xsrfHeaderName","xsrfCookieName","auth","xsrfValue","isXHRAdapterSupported","xhrAdapter","_config","requestData","requestHeaders","responseType","onUploadProgress","onDownloadProgress","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","done","onloadend","responseHeaders","err","timeoutErrorMessage","cancel","protocol","composeSignals","signals","timeout","length","controller","aborted","onabort","reason","unsubscribe","signal","streamChunk","chunk","chunkSize","pos","end","readBytes","iterable","readStream","stream","reader","trackStream","onProgress","onFinish","_onFinish","loadedBytes","isFetchSupported","isReadableStreamSupported","encodeText","test","supportsRequestStream","duplexAccessed","hasContentType","DEFAULT_CHUNK_SIZE","supportsResponseStream","resolvers","res","_","getBodyLength","body","resolveBodyLength","fetchAdapter","cancelToken","withCredentials","fetchOptions","composedSignal","requestContentLength","_request","contentTypeHeader","flush","isCredentialsSupported","isStreamResponse","responseContentLength","responseData","knownAdapters","renderReason","isResolvedHandle","adapter","adapters","nameOrAdapter","rejectedReasons","reasons","state","s","throwIfCancellationRequested","dispatchRequest","VERSION","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","correctSpelling","assertOptions","schema","allowUnknown","Axios$1","instanceConfig","configOrUrl","dummy","paramsSerializer","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","promise","chain","onFulfilled","onRejected","fullPath","Axios","generateHTTPMethod","isForm","CancelToken$1","CancelToken","executor","resolvePromise","onfulfilled","_resolve","abort","c","spread","callback","isAxiosError","payload","HttpStatusCode","createInstance","defaultConfig","instance","axios","promises","all","Cancel","formToJSON","getAdapter","P_","t","Wi","n","b_","qf","f","u","x","Qi","Hi","B_","_0","qo","U_","v","T","A","g","p","y","P","V","Z","M","G","U","J","z","re","ne","Ae","he","De","le","Ee","be","ae","Pe","Ge","Le","Se","Me","Be","Ke","N","K","H","B","fe","O","pe","Te","ve","Oe","Re","Ve","ar","qe","Er","Ce","er","ge","xt","Nr","dr","dt","Yr","we","fr","Cr","yr","yt","ta","Pa","Y0","Z0","J0","q0","Q0","Cn","Es","Ts","ws","j0","ks","As","Fs","jn","e0","r0","Ss","Cs","k","R","C","I","D","L","Q","ie","q","j","ee","xe","me","Fe","de","_e","$e","kr","Fr","Vr","ba","Ba","tn","_a","t0","aa","yc","Ic","Oc","ys","Lh","Dc","ei","Rc","Ph","Nc","Lc","Is","bh","Pc","Os","Ds","yn","bc","Bc","Bh","Mc","Uc","Wc","Hc","Mh","Uh","Wh","Gc","Hh","Gh","Vh","Xh","Rs","$h","zh","Kh","Yh","Zh","Sr","Ar","Jh","qh","Qh","jh","ex","rx","Vc","tx","jr","Ns","an","Xc","Ls","Ht","X","$c","zc","Kc","Yc","Zc","Jc","It","se","te","ax","ye","ze","vr","Xr","Gt","nx","qc","Ma","ri","In","Ps","Ir","Ua","bs","ix","Bs","sx","Ms","fx","cx","Qc","ti","Ex","jc","ux","eu","Ws","Us","ru","wr","ox","Hs","lx","tu","su","Ot","Gs","a0","au","nu","hx","xx","dx","vx","px","On","gx","_x","Vs","iu","Wa","ai","mx","Tx","Dn","kx","na","Ax","wx","Fx","Sx","Rn","Xs","Cx","Vt","ni","yx","Nn","ii","si","mr","Ix","fu","fi","Ox","Dx","Rx","ci","Ha","ui","cu","oi","uu","ou","li","lu","n0","nn","hi","on","Nx","Lx","Px","xi","di","$s","bx","hu","Bx","Mx","$r","it","Ux","Wx","xu","Hx","zs","i0","Ks","Ln","s0","f0","vi","Pn","Gx","ln","Vx","Xx","$x","zx","pi","c0","du","F","Dr","Ye","nr","Xt","po","bn","Or","o","gi","Kx","Yx","Zx","d","E","S","fv","W","Y","ce","ue","oe","ke","Ne","Mu","We","Je","He","rr","cr","Nt","gt","sn","Jx","qx","Qx","jx","ed","ma","rd","td","_i","ad","nd","Ea","sd","fd","Oi","cd","ud","od","ld","hd","ia","xd","dd","vd","pd","gd","vu","hn","za","Wn","Aa","pu","nf","_d","Di","cn","md","Ys","sa","Ta","u0","Ed","Ga","gu","da","Zr","Td","kt","Zs","Of","$t","uv","st","Hu","so","Qd","qd","ov","bo","Lo","pf","vf","wd","_u","mu","p0","o0","zu","xa","Eu","qs","kd","mi","Rt","Ad","Ze","Mo","Tu","et","hv","Js","Ku","wu","Ei","Fa","un","Xa","va","ku","vt","sv","mv","Qs","Fd","Sd","Cd","js","yd","l0","oo","Kt","Au","Id","Od","h0","Dd","ao","nv","iv","Rd","ef","Fu","dv","Nd","Ld","Pd","Bi","Su","At","Iu","yu","Zo","rf","v0","bd","_v","tf","Cu","wt","_f","co","Ef","fo","Df","Ti","Bd","wf","Lr","Gu","g0","Uo","Ou","Du","Ue","Jd","Md","Ru","x0","Ud","af","Nu","cf","Wd","sf","Qe","kf","uo","Hd","Hn","Gd","Lu","Vd","Nf","Xd","zt","$d","wi","ff","Pu","bu","Dt","Va","tv","Bu","ki","uf","Uu","of","lf","vo","pr","zd","$a","Wu","hf","Kd","Yd","Zd","Vu","Xu","$u","mf","no","Ai","Bn","pt","jd","d0","Yu","Mn","Ko","zo","ev","Un","ju","Fi","Zu","Ju","ka","Ii","gf","Tf","Lt","Pr","fa","Ca","Ev","qu","Si","xf","Ci","rv","Qu","Sa","yi","Yt","lo","ho","df","bf","eo","wa","gv","ro","to","av","mo","Lf","xv","Bf","cv","io","lv","vv","Mf","pv","Pi","xo","Tv","wv","kv","Av","Fv","Sv","Cv","yv","Iv","Ov","Dv","Rv","go","_o","Nv","Lv","Pv","Eo","bv","Bv","Mv","Uv","Wv","Hv","Gv","Vv","Xv","To","$v","zv","Kv","Yv","Af","Zv","Jv","qv","Qv","jv","e2","r2","t2","a2","n2","i2","s2","f2","c2","u2","o2","l2","h2","x2","d2","Ff","wo","v2","g2","_2","m2","E2","T2","w2","ko","k2","Ri","A2","F2","S2","C2","Bo","y2","I2","O2","D2","R2","N2","L2","P2","b2","B2","Ni","M2","U2","Ao","Fo","W2","H2","Mi","G2","V2","X2","$2","z2","K2","Y2","bi","Z2","J2","q2","Q2","j2","ep","Li","rp","So","Co","Sf","yo","Io","Oo","Do","Jo","tp","ap","np","ip","sp","Cf","Ro","fp","cp","up","op","lp","hp","xp","dp","vp","pp","gp","_p","mp","Ep","Tp","wp","kp","Ap","Fp","Sp","Cp","yf","yp","No","Ip","Op","Dp","Po","Rp","Np","Lp","If","Pp","bp","Bp","Mp","Up","Wp","Hp","Gp","Wo","Ui","Vp","Xp","$p","zp","Kp","Ho","Yp","Zp","Jp","qp","Qp","jp","eg","rg","tg","ag","ng","ig","sg","fg","cg","ug","og","Go","lg","hg","xg","dg","Vo","Xo","vg","pg","gg","_g","mg","Eg","Tg","wg","kg","$o","Rf","Ag","Fg","Sg","Cg","yg","Ig","Og","Dg","Rg","Ng","Lg","Pg","bg","Bg","Mg","Ug","Wg","Yo","Hg","Gg","Vg","Xg","$g","zg","Kg","Yg","Zg","Jg","qg","Qg","jg","e_","r_","t_","a_","n_","Pf","i_","s_","f_","c_","u_","o_","l_","h_","x_","d_","v_","p_","g_","__","m_","E_","T_","w_","k_","A_","F_","S_","C_","y_","I_","O_","D_","R_","N_","W_","ji","H_","Uf","Wf","r","tS","wc","root","factory","module","this","NProgress","Settings","started","clamp","progress","bar","speed","ease","queue","next","css","barPositionCSS","work","force","amount","initial","current","$promise","fromStart","addClass","perc","toBarPerc","parent","spinner","removeElement","removeClass","bodyStyle","vendorPrefix","max","barCSS","pending","cssPrefixes","cssProps","camelCase","string","letter","getVendorProp","style","capName","vendorName","getStyleProp","applyCss","element","properties","hasClass","list","classList","oldList","newList","useRequest","$client","getUserInfo","checkUserInfo","logout","bearer","useAuth","$$message","inject","getHttpRequest","onReject","userKey","valar_message","valar_code","download","read","blob","fileName","mapping","$mapping","values","array","$status","Channel","__publicField","reactive","ChannelHub","handlerKey","channelKey","channel","handler","tryOnScopeDispose","getCurrentScope","onScopeDispose","isClient","isWorker","toRef","toRef$1","readonly","customRef","ref","useIntervalFn","interval","immediate","immediateCallback","isActive","shallowRef","clean","pause","resume","intervalValue","toValue$1","isRef","stopWatch","watch","shallowReadonly","watchImmediate","defaultWindow","unrefElement","elRef","plain","toValue","useEventListener","cleanups","cleanup","register","event","firstParamTargets","_b","unref","raw_targets","raw_events","raw_listeners","raw_options","optionsClone","stop","DEFAULT_PING_MESSAGE","resolveNestedOptions","useWebSocket","onConnected","onDisconnected","onError","onMessage","autoConnect","autoClose","protocols","wsRef","urlRef","heartbeatPause","heartbeatResume","explicitlyClosed","retried","bufferedData","retryTimeout","pongTimeoutWait","_sendBuffer","buffer","resetRetry","resetHeartbeat","close","send","data2","useBuffer","_init","retries","delay","onFailed","responseMessage","pongTimeout","open","useSocket","URL","useMorghulisCore","hub","fun","createChannel","$config","useChannel","createMorghulisCore","$options","msg","core","app"],"mappings":"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CH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAG;AAAA,QA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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,55,56]}
|