commit 39cf2599adb2c4ab49e01ac823825e2734483f18 Author: yw00 <2783693683@qq.com> Date: Thu Apr 20 21:14:25 2023 +0800 框架主题 diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..d81184a --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,27 @@ +{ + // 使用 IntelliSense 了解相关属性。 + // 悬停以查看现有属性的描述。 + // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "pwa-node", + "request": "launch", + "name": "Launch Program", + "skipFiles": [ + "/**" + ], + "program": "${workspaceFolder}\\z_working\\rs5Vm.js" + }, + { + "type": "node", + "request": "launch", + "name": "浏览器无环境", + "skipFiles": [ + "/**" + ], + "runtimeExecutable": "node-inspect", + "program": "${workspaceFolder}\\z_working\\rs5Vm.js" + } + ] +} \ No newline at end of file diff --git a/node_modules/.bin/acorn b/node_modules/.bin/acorn new file mode 100644 index 0000000..e69de29 diff --git a/node_modules/.bin/jsesc b/node_modules/.bin/jsesc new file mode 100644 index 0000000..e69de29 diff --git a/node_modules/.bin/parser b/node_modules/.bin/parser new file mode 100644 index 0000000..e69de29 diff --git a/node_modules/.bin/vm2 b/node_modules/.bin/vm2 new file mode 100644 index 0000000..e69de29 diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json new file mode 100644 index 0000000..16eebed --- /dev/null +++ b/node_modules/.package-lock.json @@ -0,0 +1,156 @@ +{ + "name": "QXVM", + "lockfileVersion": 2, + "requires": true, + "packages": { + "node_modules/@babel/generator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", + "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", + "dependencies": { + "@babel/types": "^7.20.5", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", + "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", + "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/vm2": { + "version": "3.9.13", + "resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.13.tgz", + "integrity": "sha512-0rvxpB8P8Shm4wX2EKOiMp7H2zq+HUE/UwodY0pCZXs9IffIKZq6vUti5OgkVCTakKo9e/fgO4X1fkwfjWxE3Q==", + "dependencies": { + "acorn": "^8.7.0", + "acorn-walk": "^8.2.0" + }, + "bin": { + "vm2": "bin/vm2" + }, + "engines": { + "node": ">=6.0" + } + } + } +} diff --git a/node_modules/@babel/generator/LICENSE b/node_modules/@babel/generator/LICENSE new file mode 100644 index 0000000..f31575e --- /dev/null +++ b/node_modules/@babel/generator/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@babel/generator/README.md b/node_modules/@babel/generator/README.md new file mode 100644 index 0000000..b760238 --- /dev/null +++ b/node_modules/@babel/generator/README.md @@ -0,0 +1,19 @@ +# @babel/generator + +> Turns an AST into code. + +See our website [@babel/generator](https://babeljs.io/docs/en/babel-generator) for more information or the [issues](https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20generator%22+is%3Aopen) associated with this package. + +## Install + +Using npm: + +```sh +npm install --save-dev @babel/generator +``` + +or using yarn: + +```sh +yarn add @babel/generator --dev +``` diff --git a/node_modules/@babel/generator/lib/buffer.js b/node_modules/@babel/generator/lib/buffer.js new file mode 100644 index 0000000..21393e2 --- /dev/null +++ b/node_modules/@babel/generator/lib/buffer.js @@ -0,0 +1,294 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +class Buffer { + constructor(map) { + this._map = null; + this._buf = ""; + this._str = ""; + this._appendCount = 0; + this._last = 0; + this._queue = []; + this._queueCursor = 0; + this._position = { + line: 1, + column: 0 + }; + this._sourcePosition = { + identifierName: undefined, + line: undefined, + column: undefined, + filename: undefined + }; + this._map = map; + this._allocQueue(); + } + _allocQueue() { + const queue = this._queue; + for (let i = 0; i < 16; i++) { + queue.push({ + char: 0, + repeat: 1, + line: undefined, + column: undefined, + identifierName: undefined, + filename: "" + }); + } + } + _pushQueue(char, repeat, line, column, identifierName, filename) { + const cursor = this._queueCursor; + if (cursor === this._queue.length) { + this._allocQueue(); + } + const item = this._queue[cursor]; + item.char = char; + item.repeat = repeat; + item.line = line; + item.column = column; + item.identifierName = identifierName; + item.filename = filename; + this._queueCursor++; + } + _popQueue() { + if (this._queueCursor === 0) { + throw new Error("Cannot pop from empty queue"); + } + return this._queue[--this._queueCursor]; + } + + get() { + this._flush(); + const map = this._map; + const result = { + code: (this._buf + this._str).trimRight(), + decodedMap: map == null ? void 0 : map.getDecoded(), + get map() { + const resultMap = map ? map.get() : null; + result.map = resultMap; + return resultMap; + }, + set map(value) { + Object.defineProperty(result, "map", { + value, + writable: true + }); + }, + get rawMappings() { + const mappings = map == null ? void 0 : map.getRawMappings(); + result.rawMappings = mappings; + return mappings; + }, + set rawMappings(value) { + Object.defineProperty(result, "rawMappings", { + value, + writable: true + }); + } + }; + return result; + } + + append(str, maybeNewline) { + this._flush(); + this._append(str, this._sourcePosition, maybeNewline); + } + appendChar(char) { + this._flush(); + this._appendChar(char, 1, this._sourcePosition); + } + + queue(char) { + if (char === 10) { + while (this._queueCursor !== 0) { + const char = this._queue[this._queueCursor - 1].char; + if (char !== 32 && char !== 9) { + break; + } + this._queueCursor--; + } + } + const sourcePosition = this._sourcePosition; + this._pushQueue(char, 1, sourcePosition.line, sourcePosition.column, sourcePosition.identifierName, sourcePosition.filename); + } + + queueIndentation(char, repeat) { + this._pushQueue(char, repeat, undefined, undefined, undefined, undefined); + } + _flush() { + const queueCursor = this._queueCursor; + const queue = this._queue; + for (let i = 0; i < queueCursor; i++) { + const item = queue[i]; + this._appendChar(item.char, item.repeat, item); + } + this._queueCursor = 0; + } + _appendChar(char, repeat, sourcePos) { + this._last = char; + this._str += repeat > 1 ? String.fromCharCode(char).repeat(repeat) : String.fromCharCode(char); + if (char !== 10) { + this._mark(sourcePos.line, sourcePos.column, sourcePos.identifierName, sourcePos.filename); + this._position.column += repeat; + } else { + this._position.line++; + this._position.column = 0; + } + } + _append(str, sourcePos, maybeNewline) { + const len = str.length; + const position = this._position; + this._last = str.charCodeAt(len - 1); + if (++this._appendCount > 4096) { + +this._str; + this._buf += this._str; + this._str = str; + this._appendCount = 0; + } else { + this._str += str; + } + if (!maybeNewline && !this._map) { + position.column += len; + return; + } + const { + column, + identifierName, + filename + } = sourcePos; + let line = sourcePos.line; + + let i = str.indexOf("\n"); + let last = 0; + + if (i !== 0) { + this._mark(line, column, identifierName, filename); + } + + while (i !== -1) { + position.line++; + position.column = 0; + last = i + 1; + + if (last < len) { + this._mark(++line, 0, identifierName, filename); + } + i = str.indexOf("\n", last); + } + position.column += len - last; + } + _mark(line, column, identifierName, filename) { + var _this$_map; + (_this$_map = this._map) == null ? void 0 : _this$_map.mark(this._position, line, column, identifierName, filename); + } + removeTrailingNewline() { + const queueCursor = this._queueCursor; + if (queueCursor !== 0 && this._queue[queueCursor - 1].char === 10) { + this._queueCursor--; + } + } + removeLastSemicolon() { + const queueCursor = this._queueCursor; + if (queueCursor !== 0 && this._queue[queueCursor - 1].char === 59) { + this._queueCursor--; + } + } + getLastChar() { + const queueCursor = this._queueCursor; + return queueCursor !== 0 ? this._queue[queueCursor - 1].char : this._last; + } + + getNewlineCount() { + const queueCursor = this._queueCursor; + let count = 0; + if (queueCursor === 0) return this._last === 10 ? 1 : 0; + for (let i = queueCursor - 1; i >= 0; i--) { + if (this._queue[i].char !== 10) { + break; + } + count++; + } + return count === queueCursor && this._last === 10 ? count + 1 : count; + } + + endsWithCharAndNewline() { + const queue = this._queue; + const queueCursor = this._queueCursor; + if (queueCursor !== 0) { + const lastCp = queue[queueCursor - 1].char; + if (lastCp !== 10) return; + if (queueCursor > 1) { + return queue[queueCursor - 2].char; + } else { + return this._last; + } + } + } + + hasContent() { + return this._queueCursor !== 0 || !!this._last; + } + + exactSource(loc, cb) { + if (!this._map) return cb(); + this.source("start", loc); + cb(); + this.source("end", loc); + } + + source(prop, loc) { + if (!this._map) return; + + this._normalizePosition(prop, loc, 0, 0); + } + sourceWithOffset(prop, loc, lineOffset, columnOffset) { + if (!this._map) return; + this._normalizePosition(prop, loc, lineOffset, columnOffset); + } + + withSource(prop, loc, cb) { + if (!this._map) return cb(); + this.source(prop, loc); + cb(); + } + _normalizePosition(prop, loc, lineOffset, columnOffset) { + const pos = loc[prop]; + const target = this._sourcePosition; + target.identifierName = prop === "start" && loc.identifierName || undefined; + if (pos) { + target.line = pos.line + lineOffset; + target.column = pos.column + columnOffset; + target.filename = loc.filename; + } + } + getCurrentColumn() { + const queue = this._queue; + const queueCursor = this._queueCursor; + let lastIndex = -1; + let len = 0; + for (let i = 0; i < queueCursor; i++) { + const item = queue[i]; + if (item.char === 10) { + lastIndex = len; + } + len += item.repeat; + } + return lastIndex === -1 ? this._position.column + len : len - 1 - lastIndex; + } + getCurrentLine() { + let count = 0; + const queue = this._queue; + for (let i = 0; i < this._queueCursor; i++) { + if (queue[i].char === 10) { + count++; + } + } + return this._position.line + count; + } +} +exports.default = Buffer; + +//# sourceMappingURL=buffer.js.map diff --git a/node_modules/@babel/generator/lib/buffer.js.map b/node_modules/@babel/generator/lib/buffer.js.map new file mode 100644 index 0000000..5f01393 --- /dev/null +++ b/node_modules/@babel/generator/lib/buffer.js.map @@ -0,0 +1 @@ +{"version":3,"names":["Buffer","constructor","map","_map","_buf","_str","_appendCount","_last","_queue","_queueCursor","_position","line","column","_sourcePosition","identifierName","undefined","filename","_allocQueue","queue","i","push","char","repeat","_pushQueue","cursor","length","item","_popQueue","Error","get","_flush","result","code","trimRight","decodedMap","getDecoded","resultMap","value","Object","defineProperty","writable","rawMappings","mappings","getRawMappings","append","str","maybeNewline","_append","appendChar","_appendChar","sourcePosition","queueIndentation","queueCursor","sourcePos","String","fromCharCode","_mark","len","position","charCodeAt","indexOf","last","mark","removeTrailingNewline","removeLastSemicolon","getLastChar","getNewlineCount","count","endsWithCharAndNewline","lastCp","hasContent","exactSource","loc","cb","source","prop","_normalizePosition","sourceWithOffset","lineOffset","columnOffset","withSource","pos","target","getCurrentColumn","lastIndex","getCurrentLine"],"sources":["../src/buffer.ts"],"sourcesContent":["import type SourceMap from \"./source-map\";\nimport * as charcodes from \"charcodes\";\n\nexport type Pos = {\n line: number;\n column: number;\n};\nexport type Loc = {\n start?: Pos;\n end?: Pos;\n identifierName?: string;\n filename?: string;\n};\ntype SourcePos = {\n identifierName: string | undefined;\n line: number | undefined;\n column: number | undefined;\n filename: string | undefined;\n};\n\ntype QueueItem = {\n char: number;\n repeat: number;\n line: number | undefined;\n column: number | undefined;\n identifierName: string | undefined;\n filename: string | undefined;\n};\n\nexport default class Buffer {\n constructor(map?: SourceMap | null) {\n this._map = map;\n\n this._allocQueue();\n }\n\n _map: SourceMap = null;\n _buf = \"\";\n _str = \"\";\n _appendCount = 0;\n _last = 0;\n _queue: QueueItem[] = [];\n _queueCursor = 0;\n\n _position = {\n line: 1,\n column: 0,\n };\n _sourcePosition: SourcePos = {\n identifierName: undefined,\n line: undefined,\n column: undefined,\n filename: undefined,\n };\n\n _allocQueue() {\n const queue = this._queue;\n\n for (let i = 0; i < 16; i++) {\n queue.push({\n char: 0,\n repeat: 1,\n line: undefined,\n column: undefined,\n identifierName: undefined,\n filename: \"\",\n });\n }\n }\n\n _pushQueue(\n char: number,\n repeat: number,\n line: number | undefined,\n column: number | undefined,\n identifierName: string | undefined,\n filename: string | undefined,\n ) {\n const cursor = this._queueCursor;\n if (cursor === this._queue.length) {\n this._allocQueue();\n }\n const item = this._queue[cursor];\n item.char = char;\n item.repeat = repeat;\n item.line = line;\n item.column = column;\n item.identifierName = identifierName;\n item.filename = filename;\n\n this._queueCursor++;\n }\n\n _popQueue(): QueueItem {\n if (this._queueCursor === 0) {\n throw new Error(\"Cannot pop from empty queue\");\n }\n return this._queue[--this._queueCursor];\n }\n\n /**\n * Get the final string output from the buffer, along with the sourcemap if one exists.\n */\n\n get() {\n this._flush();\n\n const map = this._map;\n const result = {\n // Whatever trim is used here should not execute a regex against the\n // source string since it may be arbitrarily large after all transformations\n code: (this._buf + this._str).trimRight(),\n // Decoded sourcemap is free to generate.\n decodedMap: map?.getDecoded(),\n\n // Encoding the sourcemap is moderately CPU expensive.\n get map() {\n const resultMap = map ? map.get() : null;\n result.map = resultMap;\n return resultMap;\n },\n set map(value) {\n Object.defineProperty(result, \"map\", { value, writable: true });\n },\n // Retrieving the raw mappings is very memory intensive.\n get rawMappings() {\n const mappings = map?.getRawMappings();\n result.rawMappings = mappings;\n return mappings;\n },\n set rawMappings(value) {\n Object.defineProperty(result, \"rawMappings\", { value, writable: true });\n },\n };\n\n return result;\n }\n\n /**\n * Add a string to the buffer that cannot be reverted.\n */\n\n append(str: string, maybeNewline: boolean): void {\n this._flush();\n\n this._append(str, this._sourcePosition, maybeNewline);\n }\n\n appendChar(char: number): void {\n this._flush();\n this._appendChar(char, 1, this._sourcePosition);\n }\n\n /**\n * Add a string to the buffer than can be reverted.\n */\n queue(char: number): void {\n // Drop trailing spaces when a newline is inserted.\n if (char === charcodes.lineFeed) {\n while (this._queueCursor !== 0) {\n const char = this._queue[this._queueCursor - 1].char;\n if (char !== charcodes.space && char !== charcodes.tab) {\n break;\n }\n\n this._queueCursor--;\n }\n }\n\n const sourcePosition = this._sourcePosition;\n this._pushQueue(\n char,\n 1,\n sourcePosition.line,\n sourcePosition.column,\n sourcePosition.identifierName,\n sourcePosition.filename,\n );\n }\n\n /**\n * Same as queue, but this indentation will never have a sourcmap marker.\n */\n queueIndentation(char: number, repeat: number): void {\n this._pushQueue(char, repeat, undefined, undefined, undefined, undefined);\n }\n\n _flush(): void {\n const queueCursor = this._queueCursor;\n const queue = this._queue;\n for (let i = 0; i < queueCursor; i++) {\n const item: QueueItem = queue[i];\n this._appendChar(item.char, item.repeat, item);\n }\n this._queueCursor = 0;\n }\n\n _appendChar(char: number, repeat: number, sourcePos: SourcePos): void {\n this._last = char;\n\n this._str +=\n repeat > 1\n ? String.fromCharCode(char).repeat(repeat)\n : String.fromCharCode(char);\n\n if (char !== charcodes.lineFeed) {\n this._mark(\n sourcePos.line,\n sourcePos.column,\n sourcePos.identifierName,\n sourcePos.filename,\n );\n this._position.column += repeat;\n } else {\n this._position.line++;\n this._position.column = 0;\n }\n }\n\n _append(str: string, sourcePos: SourcePos, maybeNewline: boolean): void {\n const len = str.length;\n const position = this._position;\n\n this._last = str.charCodeAt(len - 1);\n\n if (++this._appendCount > 4096) {\n +this._str; // Unexplainable huge performance boost. Ref: https://github.com/davidmarkclements/flatstr License: MIT\n this._buf += this._str;\n this._str = str;\n this._appendCount = 0;\n } else {\n this._str += str;\n }\n\n if (!maybeNewline && !this._map) {\n position.column += len;\n return;\n }\n\n const { column, identifierName, filename } = sourcePos;\n let line = sourcePos.line;\n\n // Search for newline chars. We search only for `\\n`, since both `\\r` and\n // `\\r\\n` are normalized to `\\n` during parse. We exclude `\\u2028` and\n // `\\u2029` for performance reasons, they're so uncommon that it's probably\n // ok. It's also unclear how other sourcemap utilities handle them...\n let i = str.indexOf(\"\\n\");\n let last = 0;\n\n // If the string starts with a newline char, then adding a mark is redundant.\n // This catches both \"no newlines\" and \"newline after several chars\".\n if (i !== 0) {\n this._mark(line, column, identifierName, filename);\n }\n\n // Now, find each reamining newline char in the string.\n while (i !== -1) {\n position.line++;\n position.column = 0;\n last = i + 1;\n\n // We mark the start of each line, which happens directly after this newline char\n // unless this is the last char.\n if (last < len) {\n this._mark(++line, 0, identifierName, filename);\n }\n i = str.indexOf(\"\\n\", last);\n }\n position.column += len - last;\n }\n\n _mark(\n line: number | undefined,\n column: number | undefined,\n identifierName: string | undefined,\n filename: string | undefined,\n ): void {\n this._map?.mark(this._position, line, column, identifierName, filename);\n }\n\n removeTrailingNewline(): void {\n const queueCursor = this._queueCursor;\n if (\n queueCursor !== 0 &&\n this._queue[queueCursor - 1].char === charcodes.lineFeed\n ) {\n this._queueCursor--;\n }\n }\n\n removeLastSemicolon(): void {\n const queueCursor = this._queueCursor;\n if (\n queueCursor !== 0 &&\n this._queue[queueCursor - 1].char === charcodes.semicolon\n ) {\n this._queueCursor--;\n }\n }\n\n getLastChar(): number {\n const queueCursor = this._queueCursor;\n return queueCursor !== 0 ? this._queue[queueCursor - 1].char : this._last;\n }\n\n /**\n * This will only detect at most 1 newline after a call to `flush()`,\n * but this has not been found so far, and an accurate count can be achieved if needed later.\n */\n getNewlineCount(): number {\n const queueCursor = this._queueCursor;\n let count = 0;\n if (queueCursor === 0) return this._last === charcodes.lineFeed ? 1 : 0;\n for (let i = queueCursor - 1; i >= 0; i--) {\n if (this._queue[i].char !== charcodes.lineFeed) {\n break;\n }\n count++;\n }\n return count === queueCursor && this._last === charcodes.lineFeed\n ? count + 1\n : count;\n }\n\n /**\n * check if current _last + queue ends with newline, return the character before newline\n *\n * @param {*} ch\n * @memberof Buffer\n */\n endsWithCharAndNewline(): number {\n const queue = this._queue;\n const queueCursor = this._queueCursor;\n if (queueCursor !== 0) {\n // every element in queue is one-length whitespace string\n const lastCp = queue[queueCursor - 1].char;\n if (lastCp !== charcodes.lineFeed) return;\n if (queueCursor > 1) {\n return queue[queueCursor - 2].char;\n } else {\n return this._last;\n }\n }\n // We assume that everything being matched is at most a single token plus some whitespace,\n // which everything currently is, but otherwise we'd have to expand _last or check _buf.\n }\n\n hasContent(): boolean {\n return this._queueCursor !== 0 || !!this._last;\n }\n\n /**\n * Certain sourcemap usecases expect mappings to be more accurate than\n * Babel's generic sourcemap handling allows. For now, we special-case\n * identifiers to allow for the primary cases to work.\n * The goal of this line is to ensure that the map output from Babel will\n * have an exact range on identifiers in the output code. Without this\n * line, Babel would potentially include some number of trailing tokens\n * that are printed after the identifier, but before another location has\n * been assigned.\n * This allows tooling like Rollup and Webpack to more accurately perform\n * their own transformations. Most importantly, this allows the import/export\n * transformations performed by those tools to loose less information when\n * applying their own transformations on top of the code and map results\n * generated by Babel itself.\n *\n * The primary example of this is the snippet:\n *\n * import mod from \"mod\";\n * mod();\n *\n * With this line, there will be one mapping range over \"mod\" and another\n * over \"();\", where previously it would have been a single mapping.\n */\n exactSource(loc: Loc | undefined, cb: () => void) {\n if (!this._map) return cb();\n\n this.source(\"start\", loc);\n\n cb();\n\n this.source(\"end\", loc);\n }\n\n /**\n * Sets a given position as the current source location so generated code after this call\n * will be given this position in the sourcemap.\n */\n\n source(prop: \"start\" | \"end\", loc: Loc | undefined): void {\n if (!this._map) return;\n\n // Since this is called extremely often, we re-use the same _sourcePosition\n // object for the whole lifetime of the buffer.\n this._normalizePosition(prop, loc, 0, 0);\n }\n\n sourceWithOffset(\n prop: \"start\" | \"end\",\n loc: Loc | undefined,\n lineOffset: number,\n columnOffset: number,\n ): void {\n if (!this._map) return;\n\n this._normalizePosition(prop, loc, lineOffset, columnOffset);\n }\n\n /**\n * Call a callback with a specific source location\n */\n\n withSource(prop: \"start\" | \"end\", loc: Loc, cb: () => void): void {\n if (!this._map) return cb();\n\n this.source(prop, loc);\n\n cb();\n }\n\n _normalizePosition(\n prop: \"start\" | \"end\",\n loc: Loc,\n lineOffset: number,\n columnOffset: number,\n ) {\n const pos = loc[prop];\n const target = this._sourcePosition;\n\n target.identifierName =\n (prop === \"start\" && loc.identifierName) || undefined;\n if (pos) {\n target.line = pos.line + lineOffset;\n target.column = pos.column + columnOffset;\n target.filename = loc.filename;\n }\n }\n\n getCurrentColumn(): number {\n const queue = this._queue;\n const queueCursor = this._queueCursor;\n\n let lastIndex = -1;\n let len = 0;\n for (let i = 0; i < queueCursor; i++) {\n const item = queue[i];\n if (item.char === charcodes.lineFeed) {\n lastIndex = len;\n }\n len += item.repeat;\n }\n\n return lastIndex === -1 ? this._position.column + len : len - 1 - lastIndex;\n }\n\n getCurrentLine(): number {\n let count = 0;\n\n const queue = this._queue;\n for (let i = 0; i < this._queueCursor; i++) {\n if (queue[i].char === charcodes.lineFeed) {\n count++;\n }\n }\n\n return this._position.line + count;\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/base.js b/node_modules/@babel/generator/lib/generators/base.js new file mode 100644 index 0000000..cf6da0c --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/base.js @@ -0,0 +1,95 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.BlockStatement = BlockStatement; +exports.Directive = Directive; +exports.DirectiveLiteral = DirectiveLiteral; +exports.File = File; +exports.InterpreterDirective = InterpreterDirective; +exports.Placeholder = Placeholder; +exports.Program = Program; +function File(node) { + if (node.program) { + this.print(node.program.interpreter, node); + } + this.print(node.program, node); +} +function Program(node) { + var _node$directives; + this.noIndentInnerCommentsHere(); + this.printInnerComments(); + const directivesLen = (_node$directives = node.directives) == null ? void 0 : _node$directives.length; + if (directivesLen) { + var _node$directives$trai; + const newline = node.body.length ? 2 : 1; + this.printSequence(node.directives, node, { + trailingCommentsLineOffset: newline + }); + if (!((_node$directives$trai = node.directives[directivesLen - 1].trailingComments) != null && _node$directives$trai.length)) { + this.newline(newline); + } + } + this.printSequence(node.body, node); +} +function BlockStatement(node) { + var _node$directives2; + this.tokenChar(123); + const directivesLen = (_node$directives2 = node.directives) == null ? void 0 : _node$directives2.length; + if (directivesLen) { + var _node$directives$trai2; + const newline = node.body.length ? 2 : 1; + this.printSequence(node.directives, node, { + indent: true, + trailingCommentsLineOffset: newline + }); + if (!((_node$directives$trai2 = node.directives[directivesLen - 1].trailingComments) != null && _node$directives$trai2.length)) { + this.newline(newline); + } + } + this.printSequence(node.body, node, { + indent: true + }); + this.sourceWithOffset("end", node.loc, 0, -1); + this.rightBrace(); +} +function Directive(node) { + this.print(node.value, node); + this.semicolon(); +} + +const unescapedSingleQuoteRE = /(?:^|[^\\])(?:\\\\)*'/; +const unescapedDoubleQuoteRE = /(?:^|[^\\])(?:\\\\)*"/; +function DirectiveLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.token(raw); + return; + } + const { + value + } = node; + + if (!unescapedDoubleQuoteRE.test(value)) { + this.token(`"${value}"`); + } else if (!unescapedSingleQuoteRE.test(value)) { + this.token(`'${value}'`); + } else { + throw new Error("Malformed AST: it is not possible to print a directive containing" + " both unescaped single and double quotes."); + } +} +function InterpreterDirective(node) { + this.token(`#!${node.value}`); + this.newline(1, true); +} +function Placeholder(node) { + this.token("%%"); + this.print(node.name); + this.token("%%"); + if (node.expectedNode === "Statement") { + this.semicolon(); + } +} + +//# sourceMappingURL=base.js.map diff --git a/node_modules/@babel/generator/lib/generators/base.js.map b/node_modules/@babel/generator/lib/generators/base.js.map new file mode 100644 index 0000000..62a2aa6 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/base.js.map @@ -0,0 +1 @@ +{"version":3,"names":["File","node","program","print","interpreter","Program","noIndentInnerCommentsHere","printInnerComments","directivesLen","directives","length","newline","body","printSequence","trailingCommentsLineOffset","trailingComments","BlockStatement","token","indent","sourceWithOffset","loc","rightBrace","Directive","value","semicolon","unescapedSingleQuoteRE","unescapedDoubleQuoteRE","DirectiveLiteral","raw","getPossibleRaw","format","minified","undefined","test","Error","InterpreterDirective","Placeholder","name","expectedNode"],"sources":["../../src/generators/base.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport type * as t from \"@babel/types\";\n\nexport function File(this: Printer, node: t.File) {\n if (node.program) {\n // Print this here to ensure that Program node 'leadingComments' still\n // get printed after the hashbang.\n this.print(node.program.interpreter, node);\n }\n\n this.print(node.program, node);\n}\n\nexport function Program(this: Printer, node: t.Program) {\n // An empty Program doesn't have any inner tokens, so\n // we must explicitly print its inner comments.\n this.noIndentInnerCommentsHere();\n this.printInnerComments();\n\n const directivesLen = node.directives?.length;\n if (directivesLen) {\n const newline = node.body.length ? 2 : 1;\n this.printSequence(node.directives, node, {\n trailingCommentsLineOffset: newline,\n });\n if (!node.directives[directivesLen - 1].trailingComments?.length) {\n this.newline(newline);\n }\n }\n\n this.printSequence(node.body, node);\n}\n\nexport function BlockStatement(this: Printer, node: t.BlockStatement) {\n this.token(\"{\");\n\n const directivesLen = node.directives?.length;\n if (directivesLen) {\n const newline = node.body.length ? 2 : 1;\n this.printSequence(node.directives, node, {\n indent: true,\n trailingCommentsLineOffset: newline,\n });\n if (!node.directives[directivesLen - 1].trailingComments?.length) {\n this.newline(newline);\n }\n }\n\n this.printSequence(node.body, node, { indent: true });\n\n this.sourceWithOffset(\"end\", node.loc, 0, -1);\n\n this.rightBrace();\n}\n\nexport function Directive(this: Printer, node: t.Directive) {\n this.print(node.value, node);\n this.semicolon();\n}\n\n// These regexes match an even number of \\ followed by a quote\nconst unescapedSingleQuoteRE = /(?:^|[^\\\\])(?:\\\\\\\\)*'/;\nconst unescapedDoubleQuoteRE = /(?:^|[^\\\\])(?:\\\\\\\\)*\"/;\n\nexport function DirectiveLiteral(this: Printer, node: t.DirectiveLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.token(raw);\n return;\n }\n\n const { value } = node;\n\n // NOTE: In directives we can't change escapings,\n // because they change the behavior.\n // e.g. \"us\\x65 strict\" (\\x65 is e) is not a \"use strict\" directive.\n\n if (!unescapedDoubleQuoteRE.test(value)) {\n this.token(`\"${value}\"`);\n } else if (!unescapedSingleQuoteRE.test(value)) {\n this.token(`'${value}'`);\n } else {\n throw new Error(\n \"Malformed AST: it is not possible to print a directive containing\" +\n \" both unescaped single and double quotes.\",\n );\n }\n}\n\nexport function InterpreterDirective(\n this: Printer,\n node: t.InterpreterDirective,\n) {\n this.token(`#!${node.value}`);\n this.newline(1, true);\n}\n\nexport function Placeholder(this: Printer, node: t.Placeholder) {\n this.token(\"%%\");\n this.print(node.name);\n this.token(\"%%\");\n\n if (node.expectedNode === \"Statement\") {\n this.semicolon();\n }\n}\n"],"mappings":";;;;;;;;;;;;AAGO,SAASA,IAAI,CAAgBC,IAAY,EAAE;EAChD,IAAIA,IAAI,CAACC,OAAO,EAAE;IAGhB,IAAI,CAACC,KAAK,CAACF,IAAI,CAACC,OAAO,CAACE,WAAW,EAAEH,IAAI,CAAC;EAC5C;EAEA,IAAI,CAACE,KAAK,CAACF,IAAI,CAACC,OAAO,EAAED,IAAI,CAAC;AAChC;AAEO,SAASI,OAAO,CAAgBJ,IAAe,EAAE;EAAA;EAGtD,IAAI,CAACK,yBAAyB,EAAE;EAChC,IAAI,CAACC,kBAAkB,EAAE;EAEzB,MAAMC,aAAa,uBAAGP,IAAI,CAACQ,UAAU,qBAAf,iBAAiBC,MAAM;EAC7C,IAAIF,aAAa,EAAE;IAAA;IACjB,MAAMG,OAAO,GAAGV,IAAI,CAACW,IAAI,CAACF,MAAM,GAAG,CAAC,GAAG,CAAC;IACxC,IAAI,CAACG,aAAa,CAACZ,IAAI,CAACQ,UAAU,EAAER,IAAI,EAAE;MACxCa,0BAA0B,EAAEH;IAC9B,CAAC,CAAC;IACF,IAAI,2BAACV,IAAI,CAACQ,UAAU,CAACD,aAAa,GAAG,CAAC,CAAC,CAACO,gBAAgB,aAAnD,sBAAqDL,MAAM,GAAE;MAChE,IAAI,CAACC,OAAO,CAACA,OAAO,CAAC;IACvB;EACF;EAEA,IAAI,CAACE,aAAa,CAACZ,IAAI,CAACW,IAAI,EAAEX,IAAI,CAAC;AACrC;AAEO,SAASe,cAAc,CAAgBf,IAAsB,EAAE;EAAA;EACpE,IAAI,CAACgB,SAAK,KAAK;EAEf,MAAMT,aAAa,wBAAGP,IAAI,CAACQ,UAAU,qBAAf,kBAAiBC,MAAM;EAC7C,IAAIF,aAAa,EAAE;IAAA;IACjB,MAAMG,OAAO,GAAGV,IAAI,CAACW,IAAI,CAACF,MAAM,GAAG,CAAC,GAAG,CAAC;IACxC,IAAI,CAACG,aAAa,CAACZ,IAAI,CAACQ,UAAU,EAAER,IAAI,EAAE;MACxCiB,MAAM,EAAE,IAAI;MACZJ,0BAA0B,EAAEH;IAC9B,CAAC,CAAC;IACF,IAAI,4BAACV,IAAI,CAACQ,UAAU,CAACD,aAAa,GAAG,CAAC,CAAC,CAACO,gBAAgB,aAAnD,uBAAqDL,MAAM,GAAE;MAChE,IAAI,CAACC,OAAO,CAACA,OAAO,CAAC;IACvB;EACF;EAEA,IAAI,CAACE,aAAa,CAACZ,IAAI,CAACW,IAAI,EAAEX,IAAI,EAAE;IAAEiB,MAAM,EAAE;EAAK,CAAC,CAAC;EAErD,IAAI,CAACC,gBAAgB,CAAC,KAAK,EAAElB,IAAI,CAACmB,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;EAE7C,IAAI,CAACC,UAAU,EAAE;AACnB;AAEO,SAASC,SAAS,CAAgBrB,IAAiB,EAAE;EAC1D,IAAI,CAACE,KAAK,CAACF,IAAI,CAACsB,KAAK,EAAEtB,IAAI,CAAC;EAC5B,IAAI,CAACuB,SAAS,EAAE;AAClB;;AAGA,MAAMC,sBAAsB,GAAG,uBAAuB;AACtD,MAAMC,sBAAsB,GAAG,uBAAuB;AAE/C,SAASC,gBAAgB,CAAgB1B,IAAwB,EAAE;EACxE,MAAM2B,GAAG,GAAG,IAAI,CAACC,cAAc,CAAC5B,IAAI,CAAC;EACrC,IAAI,CAAC,IAAI,CAAC6B,MAAM,CAACC,QAAQ,IAAIH,GAAG,KAAKI,SAAS,EAAE;IAC9C,IAAI,CAACf,KAAK,CAACW,GAAG,CAAC;IACf;EACF;EAEA,MAAM;IAAEL;EAAM,CAAC,GAAGtB,IAAI;;EAMtB,IAAI,CAACyB,sBAAsB,CAACO,IAAI,CAACV,KAAK,CAAC,EAAE;IACvC,IAAI,CAACN,KAAK,CAAE,IAAGM,KAAM,GAAE,CAAC;EAC1B,CAAC,MAAM,IAAI,CAACE,sBAAsB,CAACQ,IAAI,CAACV,KAAK,CAAC,EAAE;IAC9C,IAAI,CAACN,KAAK,CAAE,IAAGM,KAAM,GAAE,CAAC;EAC1B,CAAC,MAAM;IACL,MAAM,IAAIW,KAAK,CACb,mEAAmE,GACjE,2CAA2C,CAC9C;EACH;AACF;AAEO,SAASC,oBAAoB,CAElClC,IAA4B,EAC5B;EACA,IAAI,CAACgB,KAAK,CAAE,KAAIhB,IAAI,CAACsB,KAAM,EAAC,CAAC;EAC7B,IAAI,CAACZ,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC;AACvB;AAEO,SAASyB,WAAW,CAAgBnC,IAAmB,EAAE;EAC9D,IAAI,CAACgB,KAAK,CAAC,IAAI,CAAC;EAChB,IAAI,CAACd,KAAK,CAACF,IAAI,CAACoC,IAAI,CAAC;EACrB,IAAI,CAACpB,KAAK,CAAC,IAAI,CAAC;EAEhB,IAAIhB,IAAI,CAACqC,YAAY,KAAK,WAAW,EAAE;IACrC,IAAI,CAACd,SAAS,EAAE;EAClB;AACF"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/classes.js b/node_modules/@babel/generator/lib/generators/classes.js new file mode 100644 index 0000000..bd8f780 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/classes.js @@ -0,0 +1,186 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ClassAccessorProperty = ClassAccessorProperty; +exports.ClassBody = ClassBody; +exports.ClassExpression = exports.ClassDeclaration = ClassDeclaration; +exports.ClassMethod = ClassMethod; +exports.ClassPrivateMethod = ClassPrivateMethod; +exports.ClassPrivateProperty = ClassPrivateProperty; +exports.ClassProperty = ClassProperty; +exports.StaticBlock = StaticBlock; +exports._classMethodHead = _classMethodHead; +var _t = require("@babel/types"); +const { + isExportDefaultDeclaration, + isExportNamedDeclaration +} = _t; +function ClassDeclaration(node, parent) { + { + if (!this.format.decoratorsBeforeExport || !isExportDefaultDeclaration(parent) && !isExportNamedDeclaration(parent)) { + this.printJoin(node.decorators, node); + } + } + if (node.declare) { + this.word("declare"); + this.space(); + } + if (node.abstract) { + this.word("abstract"); + this.space(); + } + this.word("class"); + if (node.id) { + this.space(); + this.print(node.id, node); + } + this.print(node.typeParameters, node); + if (node.superClass) { + this.space(); + this.word("extends"); + this.space(); + this.print(node.superClass, node); + this.print(node.superTypeParameters, node); + } + if (node.implements) { + this.space(); + this.word("implements"); + this.space(); + this.printList(node.implements, node); + } + this.space(); + this.print(node.body, node); +} +function ClassBody(node) { + this.tokenChar(123); + if (node.body.length === 0) { + this.tokenChar(125); + } else { + this.newline(); + this.indent(); + this.printSequence(node.body, node); + this.dedent(); + if (!this.endsWith(10)) this.newline(); + this.sourceWithOffset("end", node.loc, 0, -1); + this.rightBrace(); + } +} +function ClassProperty(node) { + var _node$key$loc, _node$key$loc$end; + this.printJoin(node.decorators, node); + + const endLine = (_node$key$loc = node.key.loc) == null ? void 0 : (_node$key$loc$end = _node$key$loc.end) == null ? void 0 : _node$key$loc$end.line; + if (endLine) this.catchUp(endLine); + this.tsPrintClassMemberModifiers(node); + if (node.computed) { + this.tokenChar(91); + this.print(node.key, node); + this.tokenChar(93); + } else { + this._variance(node); + this.print(node.key, node); + } + + if (node.optional) { + this.tokenChar(63); + } + if (node.definite) { + this.tokenChar(33); + } + this.print(node.typeAnnotation, node); + if (node.value) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.value, node); + } + this.semicolon(); +} +function ClassAccessorProperty(node) { + var _node$key$loc2, _node$key$loc2$end; + this.printJoin(node.decorators, node); + + const endLine = (_node$key$loc2 = node.key.loc) == null ? void 0 : (_node$key$loc2$end = _node$key$loc2.end) == null ? void 0 : _node$key$loc2$end.line; + if (endLine) this.catchUp(endLine); + + this.tsPrintClassMemberModifiers(node); + this.word("accessor", true); + this.space(); + if (node.computed) { + this.tokenChar(91); + this.print(node.key, node); + this.tokenChar(93); + } else { + this._variance(node); + this.print(node.key, node); + } + + if (node.optional) { + this.tokenChar(63); + } + if (node.definite) { + this.tokenChar(33); + } + this.print(node.typeAnnotation, node); + if (node.value) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.value, node); + } + this.semicolon(); +} +function ClassPrivateProperty(node) { + this.printJoin(node.decorators, node); + if (node.static) { + this.word("static"); + this.space(); + } + this.print(node.key, node); + this.print(node.typeAnnotation, node); + if (node.value) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.value, node); + } + this.semicolon(); +} +function ClassMethod(node) { + this._classMethodHead(node); + this.space(); + this.print(node.body, node); +} +function ClassPrivateMethod(node) { + this._classMethodHead(node); + this.space(); + this.print(node.body, node); +} +function _classMethodHead(node) { + var _node$key$loc3, _node$key$loc3$end; + this.printJoin(node.decorators, node); + + const endLine = (_node$key$loc3 = node.key.loc) == null ? void 0 : (_node$key$loc3$end = _node$key$loc3.end) == null ? void 0 : _node$key$loc3$end.line; + if (endLine) this.catchUp(endLine); + this.tsPrintClassMemberModifiers(node); + this._methodHead(node); +} +function StaticBlock(node) { + this.word("static"); + this.space(); + this.tokenChar(123); + if (node.body.length === 0) { + this.tokenChar(125); + } else { + this.newline(); + this.printSequence(node.body, node, { + indent: true + }); + this.sourceWithOffset("end", node.loc, 0, -1); + this.rightBrace(); + } +} + +//# sourceMappingURL=classes.js.map diff --git a/node_modules/@babel/generator/lib/generators/classes.js.map b/node_modules/@babel/generator/lib/generators/classes.js.map new file mode 100644 index 0000000..990bd3a --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/classes.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isExportDefaultDeclaration","isExportNamedDeclaration","ClassDeclaration","node","parent","format","decoratorsBeforeExport","printJoin","decorators","declare","word","space","abstract","id","print","typeParameters","superClass","superTypeParameters","implements","printList","body","ClassBody","token","length","newline","indent","printSequence","dedent","endsWith","sourceWithOffset","loc","rightBrace","ClassProperty","endLine","key","end","line","catchUp","tsPrintClassMemberModifiers","computed","_variance","optional","definite","typeAnnotation","value","semicolon","ClassAccessorProperty","ClassPrivateProperty","static","ClassMethod","_classMethodHead","ClassPrivateMethod","_methodHead","StaticBlock"],"sources":["../../src/generators/classes.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport {\n isExportDefaultDeclaration,\n isExportNamedDeclaration,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport * as charCodes from \"charcodes\";\n\nexport function ClassDeclaration(\n this: Printer,\n node: t.ClassDeclaration,\n parent: t.Node,\n) {\n if (process.env.BABEL_8_BREAKING) {\n this.printJoin(node.decorators, node);\n } else {\n if (\n !this.format.decoratorsBeforeExport ||\n (!isExportDefaultDeclaration(parent) && !isExportNamedDeclaration(parent))\n ) {\n this.printJoin(node.decorators, node);\n }\n }\n\n if (node.declare) {\n // TS\n this.word(\"declare\");\n this.space();\n }\n\n if (node.abstract) {\n // TS\n this.word(\"abstract\");\n this.space();\n }\n\n this.word(\"class\");\n\n if (node.id) {\n this.space();\n this.print(node.id, node);\n }\n\n this.print(node.typeParameters, node);\n\n if (node.superClass) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.superClass, node);\n this.print(node.superTypeParameters, node);\n }\n\n if (node.implements) {\n this.space();\n this.word(\"implements\");\n this.space();\n this.printList(node.implements, node);\n }\n\n this.space();\n this.print(node.body, node);\n}\n\nexport { ClassDeclaration as ClassExpression };\n\nexport function ClassBody(this: Printer, node: t.ClassBody) {\n this.token(\"{\");\n if (node.body.length === 0) {\n this.token(\"}\");\n } else {\n this.newline();\n\n this.indent();\n this.printSequence(node.body, node);\n this.dedent();\n\n if (!this.endsWith(charCodes.lineFeed)) this.newline();\n\n this.sourceWithOffset(\"end\", node.loc, 0, -1);\n\n this.rightBrace();\n }\n}\n\nexport function ClassProperty(this: Printer, node: t.ClassProperty) {\n this.printJoin(node.decorators, node);\n\n // catch up to property key, avoid line break\n // between member modifiers and the property key.\n const endLine = node.key.loc?.end?.line;\n if (endLine) this.catchUp(endLine);\n\n this.tsPrintClassMemberModifiers(node);\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key, node);\n this.token(\"]\");\n } else {\n this._variance(node);\n this.print(node.key, node);\n }\n\n // TS\n if (node.optional) {\n this.token(\"?\");\n }\n if (node.definite) {\n this.token(\"!\");\n }\n\n this.print(node.typeAnnotation, node);\n if (node.value) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.value, node);\n }\n this.semicolon();\n}\n\nexport function ClassAccessorProperty(\n this: Printer,\n node: t.ClassAccessorProperty,\n) {\n this.printJoin(node.decorators, node);\n\n // catch up to property key, avoid line break\n // between member modifiers and the property key.\n const endLine = node.key.loc?.end?.line;\n if (endLine) this.catchUp(endLine);\n\n // TS does not support class accessor property yet\n this.tsPrintClassMemberModifiers(node);\n\n this.word(\"accessor\", true);\n this.space();\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key, node);\n this.token(\"]\");\n } else {\n // Todo: Flow does not support class accessor property yet.\n this._variance(node);\n this.print(node.key, node);\n }\n\n // TS\n if (node.optional) {\n this.token(\"?\");\n }\n if (node.definite) {\n this.token(\"!\");\n }\n\n this.print(node.typeAnnotation, node);\n if (node.value) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.value, node);\n }\n this.semicolon();\n}\n\nexport function ClassPrivateProperty(\n this: Printer,\n node: t.ClassPrivateProperty,\n) {\n this.printJoin(node.decorators, node);\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n this.print(node.key, node);\n this.print(node.typeAnnotation, node);\n if (node.value) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.value, node);\n }\n this.semicolon();\n}\n\nexport function ClassMethod(this: Printer, node: t.ClassMethod) {\n this._classMethodHead(node);\n this.space();\n this.print(node.body, node);\n}\n\nexport function ClassPrivateMethod(this: Printer, node: t.ClassPrivateMethod) {\n this._classMethodHead(node);\n this.space();\n this.print(node.body, node);\n}\n\nexport function _classMethodHead(\n this: Printer,\n node: t.ClassMethod | t.ClassPrivateMethod | t.TSDeclareMethod,\n) {\n this.printJoin(node.decorators, node);\n\n // catch up to method key, avoid line break\n // between member modifiers/method heads and the method key.\n const endLine = node.key.loc?.end?.line;\n if (endLine) this.catchUp(endLine);\n\n this.tsPrintClassMemberModifiers(node);\n this._methodHead(node);\n}\n\nexport function StaticBlock(this: Printer, node: t.StaticBlock) {\n this.word(\"static\");\n this.space();\n this.token(\"{\");\n if (node.body.length === 0) {\n this.token(\"}\");\n } else {\n this.newline();\n this.printSequence(node.body, node, {\n indent: true,\n });\n\n this.sourceWithOffset(\"end\", node.loc, 0, -1);\n\n this.rightBrace();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/expressions.js b/node_modules/@babel/generator/lib/generators/expressions.js new file mode 100644 index 0000000..f35a289 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/expressions.js @@ -0,0 +1,299 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.LogicalExpression = exports.BinaryExpression = exports.AssignmentExpression = AssignmentExpression; +exports.AssignmentPattern = AssignmentPattern; +exports.AwaitExpression = AwaitExpression; +exports.BindExpression = BindExpression; +exports.CallExpression = CallExpression; +exports.ConditionalExpression = ConditionalExpression; +exports.Decorator = Decorator; +exports.DoExpression = DoExpression; +exports.EmptyStatement = EmptyStatement; +exports.ExpressionStatement = ExpressionStatement; +exports.Import = Import; +exports.MemberExpression = MemberExpression; +exports.MetaProperty = MetaProperty; +exports.ModuleExpression = ModuleExpression; +exports.NewExpression = NewExpression; +exports.OptionalCallExpression = OptionalCallExpression; +exports.OptionalMemberExpression = OptionalMemberExpression; +exports.ParenthesizedExpression = ParenthesizedExpression; +exports.PrivateName = PrivateName; +exports.SequenceExpression = SequenceExpression; +exports.Super = Super; +exports.ThisExpression = ThisExpression; +exports.UnaryExpression = UnaryExpression; +exports.UpdateExpression = UpdateExpression; +exports.V8IntrinsicIdentifier = V8IntrinsicIdentifier; +exports.YieldExpression = YieldExpression; +var _t = require("@babel/types"); +var n = require("../node"); +const { + isCallExpression, + isLiteral, + isMemberExpression, + isNewExpression +} = _t; +function UnaryExpression(node) { + if (node.operator === "void" || node.operator === "delete" || node.operator === "typeof" || + node.operator === "throw") { + this.word(node.operator); + this.space(); + } else { + this.token(node.operator); + } + this.print(node.argument, node); +} +function DoExpression(node) { + if (node.async) { + this.word("async", true); + this.space(); + } + this.word("do"); + this.space(); + this.print(node.body, node); +} +function ParenthesizedExpression(node) { + this.tokenChar(40); + this.print(node.expression, node); + this.tokenChar(41); +} +function UpdateExpression(node) { + if (node.prefix) { + this.token(node.operator); + this.print(node.argument, node); + } else { + this.printTerminatorless(node.argument, node, true); + this.token(node.operator); + } +} +function ConditionalExpression(node) { + this.print(node.test, node); + this.space(); + this.tokenChar(63); + this.space(); + this.print(node.consequent, node); + this.space(); + this.tokenChar(58); + this.space(); + this.print(node.alternate, node); +} +function NewExpression(node, parent) { + this.word("new"); + this.space(); + this.print(node.callee, node); + if (this.format.minified && node.arguments.length === 0 && !node.optional && !isCallExpression(parent, { + callee: node + }) && !isMemberExpression(parent) && !isNewExpression(parent)) { + return; + } + this.print(node.typeArguments, node); + this.print(node.typeParameters, node); + + if (node.optional) { + this.token("?."); + } + this.tokenChar(40); + this.printList(node.arguments, node); + this.tokenChar(41); +} +function SequenceExpression(node) { + this.printList(node.expressions, node); +} +function ThisExpression() { + this.word("this"); +} +function Super() { + this.word("super"); +} +function isDecoratorMemberExpression(node) { + switch (node.type) { + case "Identifier": + return true; + case "MemberExpression": + return !node.computed && node.property.type === "Identifier" && isDecoratorMemberExpression(node.object); + default: + return false; + } +} +function shouldParenthesizeDecoratorExpression(node) { + if (node.type === "ParenthesizedExpression") { + return false; + } + return !isDecoratorMemberExpression(node.type === "CallExpression" ? node.callee : node); +} +function Decorator(node) { + this.tokenChar(64); + const { + expression + } = node; + if (shouldParenthesizeDecoratorExpression(expression)) { + this.tokenChar(40); + this.print(expression, node); + this.tokenChar(41); + } else { + this.print(expression, node); + } + this.newline(); +} +function OptionalMemberExpression(node) { + this.print(node.object, node); + if (!node.computed && isMemberExpression(node.property)) { + throw new TypeError("Got a MemberExpression for MemberExpression property"); + } + let computed = node.computed; + if (isLiteral(node.property) && typeof node.property.value === "number") { + computed = true; + } + if (node.optional) { + this.token("?."); + } + if (computed) { + this.tokenChar(91); + this.print(node.property, node); + this.tokenChar(93); + } else { + if (!node.optional) { + this.tokenChar(46); + } + this.print(node.property, node); + } +} +function OptionalCallExpression(node) { + this.print(node.callee, node); + this.print(node.typeParameters, node); + + if (node.optional) { + this.token("?."); + } + this.print(node.typeArguments, node); + + this.tokenChar(40); + this.printList(node.arguments, node); + this.tokenChar(41); +} +function CallExpression(node) { + this.print(node.callee, node); + this.print(node.typeArguments, node); + this.print(node.typeParameters, node); + this.tokenChar(40); + this.printList(node.arguments, node); + this.tokenChar(41); +} +function Import() { + this.word("import"); +} +function AwaitExpression(node) { + this.word("await"); + if (node.argument) { + this.space(); + this.printTerminatorless(node.argument, node, false); + } +} +function YieldExpression(node) { + this.word("yield", true); + if (node.delegate) { + this.tokenChar(42); + if (node.argument) { + this.space(); + this.print(node.argument, node); + } + } else { + if (node.argument) { + this.space(); + this.printTerminatorless(node.argument, node, false); + } + } +} +function EmptyStatement() { + this.semicolon(true); +} + +function ExpressionStatement(node) { + this.print(node.expression, node); + this.semicolon(); +} +function AssignmentPattern(node) { + this.print(node.left, node); + if (node.left.optional) this.tokenChar(63); + this.print(node.left.typeAnnotation, node); + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.right, node); +} +function AssignmentExpression(node, parent) { + const parens = this.inForStatementInitCounter && node.operator === "in" && !n.needsParens(node, parent); + if (parens) { + this.tokenChar(40); + } + this.print(node.left, node); + this.space(); + if (node.operator === "in" || node.operator === "instanceof") { + this.word(node.operator); + } else { + this.token(node.operator); + } + this.space(); + this.print(node.right, node); + if (parens) { + this.tokenChar(41); + } +} +function BindExpression(node) { + this.print(node.object, node); + this.token("::"); + this.print(node.callee, node); +} +function MemberExpression(node) { + this.print(node.object, node); + if (!node.computed && isMemberExpression(node.property)) { + throw new TypeError("Got a MemberExpression for MemberExpression property"); + } + let computed = node.computed; + if (isLiteral(node.property) && typeof node.property.value === "number") { + computed = true; + } + if (computed) { + this.tokenChar(91); + this.print(node.property, node); + this.tokenChar(93); + } else { + this.tokenChar(46); + this.print(node.property, node); + } +} +function MetaProperty(node) { + this.print(node.meta, node); + this.tokenChar(46); + this.print(node.property, node); +} +function PrivateName(node) { + this.tokenChar(35); + this.print(node.id, node); +} +function V8IntrinsicIdentifier(node) { + this.tokenChar(37); + this.word(node.name); +} +function ModuleExpression(node) { + this.word("module", true); + this.space(); + this.tokenChar(123); + this.indent(); + const { + body + } = node; + if (body.body.length || body.directives.length) { + this.newline(); + } + this.print(body, node); + this.dedent(); + this.sourceWithOffset("end", node.loc, 0, -1); + this.rightBrace(); +} + +//# sourceMappingURL=expressions.js.map diff --git a/node_modules/@babel/generator/lib/generators/expressions.js.map b/node_modules/@babel/generator/lib/generators/expressions.js.map new file mode 100644 index 0000000..abdac34 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/expressions.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isCallExpression","isLiteral","isMemberExpression","isNewExpression","UnaryExpression","node","operator","word","space","token","print","argument","DoExpression","async","body","ParenthesizedExpression","expression","UpdateExpression","prefix","printTerminatorless","ConditionalExpression","test","consequent","alternate","NewExpression","parent","callee","format","minified","arguments","length","optional","typeArguments","typeParameters","printList","SequenceExpression","expressions","ThisExpression","Super","isDecoratorMemberExpression","type","computed","property","object","shouldParenthesizeDecoratorExpression","Decorator","newline","OptionalMemberExpression","TypeError","value","OptionalCallExpression","CallExpression","Import","AwaitExpression","YieldExpression","delegate","EmptyStatement","semicolon","ExpressionStatement","AssignmentPattern","left","typeAnnotation","right","AssignmentExpression","parens","inForStatementInitCounter","n","needsParens","BindExpression","MemberExpression","MetaProperty","meta","PrivateName","id","V8IntrinsicIdentifier","name","ModuleExpression","indent","directives","dedent","sourceWithOffset","loc","rightBrace"],"sources":["../../src/generators/expressions.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport {\n isCallExpression,\n isLiteral,\n isMemberExpression,\n isNewExpression,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport * as n from \"../node\";\n\nexport function UnaryExpression(this: Printer, node: t.UnaryExpression) {\n if (\n node.operator === \"void\" ||\n node.operator === \"delete\" ||\n node.operator === \"typeof\" ||\n // throwExpressions\n node.operator === \"throw\"\n ) {\n this.word(node.operator);\n this.space();\n } else {\n this.token(node.operator);\n }\n\n this.print(node.argument, node);\n}\n\nexport function DoExpression(this: Printer, node: t.DoExpression) {\n if (node.async) {\n this.word(\"async\", true);\n this.space();\n }\n this.word(\"do\");\n this.space();\n this.print(node.body, node);\n}\n\nexport function ParenthesizedExpression(\n this: Printer,\n node: t.ParenthesizedExpression,\n) {\n this.token(\"(\");\n this.print(node.expression, node);\n this.token(\")\");\n}\n\nexport function UpdateExpression(this: Printer, node: t.UpdateExpression) {\n if (node.prefix) {\n this.token(node.operator);\n this.print(node.argument, node);\n } else {\n this.printTerminatorless(node.argument, node, true);\n this.token(node.operator);\n }\n}\n\nexport function ConditionalExpression(\n this: Printer,\n node: t.ConditionalExpression,\n) {\n this.print(node.test, node);\n this.space();\n this.token(\"?\");\n this.space();\n this.print(node.consequent, node);\n this.space();\n this.token(\":\");\n this.space();\n this.print(node.alternate, node);\n}\n\nexport function NewExpression(\n this: Printer,\n node: t.NewExpression,\n parent: t.Node,\n) {\n this.word(\"new\");\n this.space();\n this.print(node.callee, node);\n if (\n this.format.minified &&\n node.arguments.length === 0 &&\n !node.optional &&\n !isCallExpression(parent, { callee: node }) &&\n !isMemberExpression(parent) &&\n !isNewExpression(parent)\n ) {\n return;\n }\n\n this.print(node.typeArguments, node); // Flow\n this.print(node.typeParameters, node); // TS\n\n if (node.optional) {\n // TODO: This can never happen\n this.token(\"?.\");\n }\n this.token(\"(\");\n this.printList(node.arguments, node);\n this.token(\")\");\n}\n\nexport function SequenceExpression(this: Printer, node: t.SequenceExpression) {\n this.printList(node.expressions, node);\n}\n\nexport function ThisExpression(this: Printer) {\n this.word(\"this\");\n}\n\nexport function Super(this: Printer) {\n this.word(\"super\");\n}\n\nfunction isDecoratorMemberExpression(\n node: t.Expression | t.Super | t.V8IntrinsicIdentifier,\n): boolean {\n switch (node.type) {\n case \"Identifier\":\n return true;\n case \"MemberExpression\":\n return (\n !node.computed &&\n node.property.type === \"Identifier\" &&\n isDecoratorMemberExpression(node.object)\n );\n default:\n return false;\n }\n}\nfunction shouldParenthesizeDecoratorExpression(\n node: t.Expression | t.Super | t.V8IntrinsicIdentifier,\n) {\n if (node.type === \"ParenthesizedExpression\") {\n // We didn't check extra?.parenthesized here because we don't track decorators in needsParen\n return false;\n }\n return !isDecoratorMemberExpression(\n node.type === \"CallExpression\" ? node.callee : node,\n );\n}\n\nexport function Decorator(this: Printer, node: t.Decorator) {\n this.token(\"@\");\n const { expression } = node;\n if (shouldParenthesizeDecoratorExpression(expression)) {\n this.token(\"(\");\n this.print(expression, node);\n this.token(\")\");\n } else {\n this.print(expression, node);\n }\n this.newline();\n}\n\nexport function OptionalMemberExpression(\n this: Printer,\n node: t.OptionalMemberExpression,\n) {\n this.print(node.object, node);\n\n if (!node.computed && isMemberExpression(node.property)) {\n throw new TypeError(\"Got a MemberExpression for MemberExpression property\");\n }\n\n let computed = node.computed;\n // @ts-expect-error todo(flow->ts) maybe instead of typeof check specific literal types?\n if (isLiteral(node.property) && typeof node.property.value === \"number\") {\n computed = true;\n }\n if (node.optional) {\n this.token(\"?.\");\n }\n\n if (computed) {\n this.token(\"[\");\n this.print(node.property, node);\n this.token(\"]\");\n } else {\n if (!node.optional) {\n this.token(\".\");\n }\n this.print(node.property, node);\n }\n}\n\nexport function OptionalCallExpression(\n this: Printer,\n node: t.OptionalCallExpression,\n) {\n this.print(node.callee, node);\n\n this.print(node.typeParameters, node); // TS\n\n if (node.optional) {\n this.token(\"?.\");\n }\n\n this.print(node.typeArguments, node); // Flow\n\n this.token(\"(\");\n this.printList(node.arguments, node);\n this.token(\")\");\n}\n\nexport function CallExpression(this: Printer, node: t.CallExpression) {\n this.print(node.callee, node);\n\n this.print(node.typeArguments, node); // Flow\n this.print(node.typeParameters, node); // TS\n this.token(\"(\");\n this.printList(node.arguments, node);\n this.token(\")\");\n}\n\nexport function Import(this: Printer) {\n this.word(\"import\");\n}\n\nexport function AwaitExpression(this: Printer, node: t.AwaitExpression) {\n this.word(\"await\");\n\n if (node.argument) {\n this.space();\n this.printTerminatorless(node.argument, node, false);\n }\n}\n\nexport function YieldExpression(this: Printer, node: t.YieldExpression) {\n this.word(\"yield\", true);\n\n if (node.delegate) {\n this.token(\"*\");\n if (node.argument) {\n this.space();\n // line terminators are allowed after yield*\n this.print(node.argument, node);\n }\n } else {\n if (node.argument) {\n this.space();\n this.printTerminatorless(node.argument, node, false);\n }\n }\n}\n\nexport function EmptyStatement(this: Printer) {\n this.semicolon(true /* force */);\n}\n\nexport function ExpressionStatement(\n this: Printer,\n node: t.ExpressionStatement,\n) {\n this.print(node.expression, node);\n this.semicolon();\n}\n\nexport function AssignmentPattern(this: Printer, node: t.AssignmentPattern) {\n this.print(node.left, node);\n // @ts-expect-error todo(flow->ts) property present on some of the types in union but not all\n if (node.left.optional) this.token(\"?\");\n // @ts-expect-error todo(flow->ts) property present on some of the types in union but not all\n this.print(node.left.typeAnnotation, node);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.right, node);\n}\n\nexport function AssignmentExpression(\n this: Printer,\n node: t.AssignmentExpression,\n parent: t.Node,\n) {\n // Somewhere inside a for statement `init` node but doesn't usually\n // needs a paren except for `in` expressions: `for (a in b ? a : b;;)`\n const parens =\n this.inForStatementInitCounter &&\n node.operator === \"in\" &&\n !n.needsParens(node, parent);\n\n if (parens) {\n this.token(\"(\");\n }\n\n this.print(node.left, node);\n\n this.space();\n if (node.operator === \"in\" || node.operator === \"instanceof\") {\n this.word(node.operator);\n } else {\n this.token(node.operator);\n }\n this.space();\n\n this.print(node.right, node);\n\n if (parens) {\n this.token(\")\");\n }\n}\n\nexport function BindExpression(this: Printer, node: t.BindExpression) {\n this.print(node.object, node);\n this.token(\"::\");\n this.print(node.callee, node);\n}\n\nexport {\n AssignmentExpression as BinaryExpression,\n AssignmentExpression as LogicalExpression,\n};\n\nexport function MemberExpression(this: Printer, node: t.MemberExpression) {\n this.print(node.object, node);\n\n if (!node.computed && isMemberExpression(node.property)) {\n throw new TypeError(\"Got a MemberExpression for MemberExpression property\");\n }\n\n let computed = node.computed;\n // @ts-expect-error todo(flow->ts) maybe use specific literal types\n if (isLiteral(node.property) && typeof node.property.value === \"number\") {\n computed = true;\n }\n\n if (computed) {\n this.token(\"[\");\n this.print(node.property, node);\n this.token(\"]\");\n } else {\n this.token(\".\");\n this.print(node.property, node);\n }\n}\n\nexport function MetaProperty(this: Printer, node: t.MetaProperty) {\n this.print(node.meta, node);\n this.token(\".\");\n this.print(node.property, node);\n}\n\nexport function PrivateName(this: Printer, node: t.PrivateName) {\n this.token(\"#\");\n this.print(node.id, node);\n}\n\nexport function V8IntrinsicIdentifier(\n this: Printer,\n node: t.V8IntrinsicIdentifier,\n) {\n this.token(\"%\");\n this.word(node.name);\n}\n\nexport function ModuleExpression(this: Printer, node: t.ModuleExpression) {\n this.word(\"module\", true);\n this.space();\n this.token(\"{\");\n this.indent();\n const { body } = node;\n if (body.body.length || body.directives.length) {\n this.newline();\n }\n this.print(body, node);\n this.dedent();\n this.sourceWithOffset(\"end\", node.loc, 0, -1);\n this.rightBrace();\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/flow.js b/node_modules/@babel/generator/lib/generators/flow.js new file mode 100644 index 0000000..bde042c --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/flow.js @@ -0,0 +1,663 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.AnyTypeAnnotation = AnyTypeAnnotation; +exports.ArrayTypeAnnotation = ArrayTypeAnnotation; +exports.BooleanLiteralTypeAnnotation = BooleanLiteralTypeAnnotation; +exports.BooleanTypeAnnotation = BooleanTypeAnnotation; +exports.DeclareClass = DeclareClass; +exports.DeclareExportAllDeclaration = DeclareExportAllDeclaration; +exports.DeclareExportDeclaration = DeclareExportDeclaration; +exports.DeclareFunction = DeclareFunction; +exports.DeclareInterface = DeclareInterface; +exports.DeclareModule = DeclareModule; +exports.DeclareModuleExports = DeclareModuleExports; +exports.DeclareOpaqueType = DeclareOpaqueType; +exports.DeclareTypeAlias = DeclareTypeAlias; +exports.DeclareVariable = DeclareVariable; +exports.DeclaredPredicate = DeclaredPredicate; +exports.EmptyTypeAnnotation = EmptyTypeAnnotation; +exports.EnumBooleanBody = EnumBooleanBody; +exports.EnumBooleanMember = EnumBooleanMember; +exports.EnumDeclaration = EnumDeclaration; +exports.EnumDefaultedMember = EnumDefaultedMember; +exports.EnumNumberBody = EnumNumberBody; +exports.EnumNumberMember = EnumNumberMember; +exports.EnumStringBody = EnumStringBody; +exports.EnumStringMember = EnumStringMember; +exports.EnumSymbolBody = EnumSymbolBody; +exports.ExistsTypeAnnotation = ExistsTypeAnnotation; +exports.FunctionTypeAnnotation = FunctionTypeAnnotation; +exports.FunctionTypeParam = FunctionTypeParam; +exports.IndexedAccessType = IndexedAccessType; +exports.InferredPredicate = InferredPredicate; +exports.InterfaceDeclaration = InterfaceDeclaration; +exports.GenericTypeAnnotation = exports.ClassImplements = exports.InterfaceExtends = InterfaceExtends; +exports.InterfaceTypeAnnotation = InterfaceTypeAnnotation; +exports.IntersectionTypeAnnotation = IntersectionTypeAnnotation; +exports.MixedTypeAnnotation = MixedTypeAnnotation; +exports.NullLiteralTypeAnnotation = NullLiteralTypeAnnotation; +exports.NullableTypeAnnotation = NullableTypeAnnotation; +Object.defineProperty(exports, "NumberLiteralTypeAnnotation", { + enumerable: true, + get: function () { + return _types2.NumericLiteral; + } +}); +exports.NumberTypeAnnotation = NumberTypeAnnotation; +exports.ObjectTypeAnnotation = ObjectTypeAnnotation; +exports.ObjectTypeCallProperty = ObjectTypeCallProperty; +exports.ObjectTypeIndexer = ObjectTypeIndexer; +exports.ObjectTypeInternalSlot = ObjectTypeInternalSlot; +exports.ObjectTypeProperty = ObjectTypeProperty; +exports.ObjectTypeSpreadProperty = ObjectTypeSpreadProperty; +exports.OpaqueType = OpaqueType; +exports.OptionalIndexedAccessType = OptionalIndexedAccessType; +exports.QualifiedTypeIdentifier = QualifiedTypeIdentifier; +Object.defineProperty(exports, "StringLiteralTypeAnnotation", { + enumerable: true, + get: function () { + return _types2.StringLiteral; + } +}); +exports.StringTypeAnnotation = StringTypeAnnotation; +exports.SymbolTypeAnnotation = SymbolTypeAnnotation; +exports.ThisTypeAnnotation = ThisTypeAnnotation; +exports.TupleTypeAnnotation = TupleTypeAnnotation; +exports.TypeAlias = TypeAlias; +exports.TypeAnnotation = TypeAnnotation; +exports.TypeCastExpression = TypeCastExpression; +exports.TypeParameter = TypeParameter; +exports.TypeParameterDeclaration = exports.TypeParameterInstantiation = TypeParameterInstantiation; +exports.TypeofTypeAnnotation = TypeofTypeAnnotation; +exports.UnionTypeAnnotation = UnionTypeAnnotation; +exports.Variance = Variance; +exports.VoidTypeAnnotation = VoidTypeAnnotation; +exports._interfaceish = _interfaceish; +exports._variance = _variance; +var _t = require("@babel/types"); +var _modules = require("./modules"); +var _types2 = require("./types"); +const { + isDeclareExportDeclaration, + isStatement +} = _t; +function AnyTypeAnnotation() { + this.word("any"); +} +function ArrayTypeAnnotation(node) { + this.print(node.elementType, node, true); + this.tokenChar(91); + this.tokenChar(93); +} +function BooleanTypeAnnotation() { + this.word("boolean"); +} +function BooleanLiteralTypeAnnotation(node) { + this.word(node.value ? "true" : "false"); +} +function NullLiteralTypeAnnotation() { + this.word("null"); +} +function DeclareClass(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.word("class"); + this.space(); + this._interfaceish(node); +} +function DeclareFunction(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.word("function"); + this.space(); + this.print(node.id, node); + this.print(node.id.typeAnnotation.typeAnnotation, node); + if (node.predicate) { + this.space(); + this.print(node.predicate, node); + } + this.semicolon(); +} +function InferredPredicate() { + this.tokenChar(37); + this.word("checks"); +} +function DeclaredPredicate(node) { + this.tokenChar(37); + this.word("checks"); + this.tokenChar(40); + this.print(node.value, node); + this.tokenChar(41); +} +function DeclareInterface(node) { + this.word("declare"); + this.space(); + this.InterfaceDeclaration(node); +} +function DeclareModule(node) { + this.word("declare"); + this.space(); + this.word("module"); + this.space(); + this.print(node.id, node); + this.space(); + this.print(node.body, node); +} +function DeclareModuleExports(node) { + this.word("declare"); + this.space(); + this.word("module"); + this.tokenChar(46); + this.word("exports"); + this.print(node.typeAnnotation, node); +} +function DeclareTypeAlias(node) { + this.word("declare"); + this.space(); + this.TypeAlias(node); +} +function DeclareOpaqueType(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.OpaqueType(node); +} +function DeclareVariable(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.word("var"); + this.space(); + this.print(node.id, node); + this.print(node.id.typeAnnotation, node); + this.semicolon(); +} +function DeclareExportDeclaration(node) { + this.word("declare"); + this.space(); + this.word("export"); + this.space(); + if (node.default) { + this.word("default"); + this.space(); + } + FlowExportDeclaration.call(this, node); +} +function DeclareExportAllDeclaration(node) { + this.word("declare"); + this.space(); + _modules.ExportAllDeclaration.call(this, node); +} +function EnumDeclaration(node) { + const { + id, + body + } = node; + this.word("enum"); + this.space(); + this.print(id, node); + this.print(body, node); +} +function enumExplicitType(context, name, hasExplicitType) { + if (hasExplicitType) { + context.space(); + context.word("of"); + context.space(); + context.word(name); + } + context.space(); +} +function enumBody(context, node) { + const { + members + } = node; + context.token("{"); + context.indent(); + context.newline(); + for (const member of members) { + context.print(member, node); + context.newline(); + } + if (node.hasUnknownMembers) { + context.token("..."); + context.newline(); + } + context.dedent(); + context.token("}"); +} +function EnumBooleanBody(node) { + const { + explicitType + } = node; + enumExplicitType(this, "boolean", explicitType); + enumBody(this, node); +} +function EnumNumberBody(node) { + const { + explicitType + } = node; + enumExplicitType(this, "number", explicitType); + enumBody(this, node); +} +function EnumStringBody(node) { + const { + explicitType + } = node; + enumExplicitType(this, "string", explicitType); + enumBody(this, node); +} +function EnumSymbolBody(node) { + enumExplicitType(this, "symbol", true); + enumBody(this, node); +} +function EnumDefaultedMember(node) { + const { + id + } = node; + this.print(id, node); + this.tokenChar(44); +} +function enumInitializedMember(context, node) { + const { + id, + init + } = node; + context.print(id, node); + context.space(); + context.token("="); + context.space(); + context.print(init, node); + context.token(","); +} +function EnumBooleanMember(node) { + enumInitializedMember(this, node); +} +function EnumNumberMember(node) { + enumInitializedMember(this, node); +} +function EnumStringMember(node) { + enumInitializedMember(this, node); +} +function FlowExportDeclaration(node) { + if (node.declaration) { + const declar = node.declaration; + this.print(declar, node); + if (!isStatement(declar)) this.semicolon(); + } else { + this.tokenChar(123); + if (node.specifiers.length) { + this.space(); + this.printList(node.specifiers, node); + this.space(); + } + this.tokenChar(125); + if (node.source) { + this.space(); + this.word("from"); + this.space(); + this.print(node.source, node); + } + this.semicolon(); + } +} +function ExistsTypeAnnotation() { + this.tokenChar(42); +} +function FunctionTypeAnnotation(node, parent) { + this.print(node.typeParameters, node); + this.tokenChar(40); + if (node.this) { + this.word("this"); + this.tokenChar(58); + this.space(); + this.print(node.this.typeAnnotation, node); + if (node.params.length || node.rest) { + this.tokenChar(44); + this.space(); + } + } + this.printList(node.params, node); + if (node.rest) { + if (node.params.length) { + this.tokenChar(44); + this.space(); + } + this.token("..."); + this.print(node.rest, node); + } + this.tokenChar(41); + + if (parent && (parent.type === "ObjectTypeCallProperty" || parent.type === "ObjectTypeInternalSlot" || parent.type === "DeclareFunction" || parent.type === "ObjectTypeProperty" && parent.method)) { + this.tokenChar(58); + } else { + this.space(); + this.token("=>"); + } + this.space(); + this.print(node.returnType, node); +} +function FunctionTypeParam(node) { + this.print(node.name, node); + if (node.optional) this.tokenChar(63); + if (node.name) { + this.tokenChar(58); + this.space(); + } + this.print(node.typeAnnotation, node); +} +function InterfaceExtends(node) { + this.print(node.id, node); + this.print(node.typeParameters, node, true); +} +function _interfaceish(node) { + var _node$extends; + this.print(node.id, node); + this.print(node.typeParameters, node); + if ((_node$extends = node.extends) != null && _node$extends.length) { + this.space(); + this.word("extends"); + this.space(); + this.printList(node.extends, node); + } + if (node.mixins && node.mixins.length) { + this.space(); + this.word("mixins"); + this.space(); + this.printList(node.mixins, node); + } + if (node.implements && node.implements.length) { + this.space(); + this.word("implements"); + this.space(); + this.printList(node.implements, node); + } + this.space(); + this.print(node.body, node); +} +function _variance(node) { + if (node.variance) { + if (node.variance.kind === "plus") { + this.tokenChar(43); + } else if (node.variance.kind === "minus") { + this.tokenChar(45); + } + } +} +function InterfaceDeclaration(node) { + this.word("interface"); + this.space(); + this._interfaceish(node); +} +function andSeparator() { + this.space(); + this.tokenChar(38); + this.space(); +} +function InterfaceTypeAnnotation(node) { + this.word("interface"); + if (node.extends && node.extends.length) { + this.space(); + this.word("extends"); + this.space(); + this.printList(node.extends, node); + } + this.space(); + this.print(node.body, node); +} +function IntersectionTypeAnnotation(node) { + this.printJoin(node.types, node, { + separator: andSeparator + }); +} +function MixedTypeAnnotation() { + this.word("mixed"); +} +function EmptyTypeAnnotation() { + this.word("empty"); +} +function NullableTypeAnnotation(node) { + this.tokenChar(63); + this.print(node.typeAnnotation, node); +} +function NumberTypeAnnotation() { + this.word("number"); +} +function StringTypeAnnotation() { + this.word("string"); +} +function ThisTypeAnnotation() { + this.word("this"); +} +function TupleTypeAnnotation(node) { + this.tokenChar(91); + this.printList(node.types, node); + this.tokenChar(93); +} +function TypeofTypeAnnotation(node) { + this.word("typeof"); + this.space(); + this.print(node.argument, node); +} +function TypeAlias(node) { + this.word("type"); + this.space(); + this.print(node.id, node); + this.print(node.typeParameters, node); + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.right, node); + this.semicolon(); +} +function TypeAnnotation(node) { + this.tokenChar(58); + this.space(); + if (node.optional) this.tokenChar(63); + this.print(node.typeAnnotation, node); +} +function TypeParameterInstantiation(node) { + this.tokenChar(60); + this.printList(node.params, node, {}); + this.tokenChar(62); +} +function TypeParameter(node) { + this._variance(node); + this.word(node.name); + if (node.bound) { + this.print(node.bound, node); + } + if (node.default) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.default, node); + } +} +function OpaqueType(node) { + this.word("opaque"); + this.space(); + this.word("type"); + this.space(); + this.print(node.id, node); + this.print(node.typeParameters, node); + if (node.supertype) { + this.tokenChar(58); + this.space(); + this.print(node.supertype, node); + } + if (node.impltype) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.impltype, node); + } + this.semicolon(); +} +function ObjectTypeAnnotation(node) { + if (node.exact) { + this.token("{|"); + } else { + this.tokenChar(123); + } + + const props = [...node.properties, ...(node.callProperties || []), ...(node.indexers || []), ...(node.internalSlots || [])]; + if (props.length) { + this.newline(); + this.space(); + this.printJoin(props, node, { + addNewlines(leading) { + if (leading && !props[0]) return 1; + }, + indent: true, + statement: true, + iterator: () => { + if (props.length !== 1 || node.inexact) { + this.tokenChar(44); + this.space(); + } + } + }); + this.space(); + } + if (node.inexact) { + this.indent(); + this.token("..."); + if (props.length) { + this.newline(); + } + this.dedent(); + } + if (node.exact) { + this.token("|}"); + } else { + this.tokenChar(125); + } +} +function ObjectTypeInternalSlot(node) { + if (node.static) { + this.word("static"); + this.space(); + } + this.tokenChar(91); + this.tokenChar(91); + this.print(node.id, node); + this.tokenChar(93); + this.tokenChar(93); + if (node.optional) this.tokenChar(63); + if (!node.method) { + this.tokenChar(58); + this.space(); + } + this.print(node.value, node); +} +function ObjectTypeCallProperty(node) { + if (node.static) { + this.word("static"); + this.space(); + } + this.print(node.value, node); +} +function ObjectTypeIndexer(node) { + if (node.static) { + this.word("static"); + this.space(); + } + this._variance(node); + this.tokenChar(91); + if (node.id) { + this.print(node.id, node); + this.tokenChar(58); + this.space(); + } + this.print(node.key, node); + this.tokenChar(93); + this.tokenChar(58); + this.space(); + this.print(node.value, node); +} +function ObjectTypeProperty(node) { + if (node.proto) { + this.word("proto"); + this.space(); + } + if (node.static) { + this.word("static"); + this.space(); + } + if (node.kind === "get" || node.kind === "set") { + this.word(node.kind); + this.space(); + } + this._variance(node); + this.print(node.key, node); + if (node.optional) this.tokenChar(63); + if (!node.method) { + this.tokenChar(58); + this.space(); + } + this.print(node.value, node); +} +function ObjectTypeSpreadProperty(node) { + this.token("..."); + this.print(node.argument, node); +} +function QualifiedTypeIdentifier(node) { + this.print(node.qualification, node); + this.tokenChar(46); + this.print(node.id, node); +} +function SymbolTypeAnnotation() { + this.word("symbol"); +} +function orSeparator() { + this.space(); + this.tokenChar(124); + this.space(); +} +function UnionTypeAnnotation(node) { + this.printJoin(node.types, node, { + separator: orSeparator + }); +} +function TypeCastExpression(node) { + this.tokenChar(40); + this.print(node.expression, node); + this.print(node.typeAnnotation, node); + this.tokenChar(41); +} +function Variance(node) { + if (node.kind === "plus") { + this.tokenChar(43); + } else { + this.tokenChar(45); + } +} +function VoidTypeAnnotation() { + this.word("void"); +} +function IndexedAccessType(node) { + this.print(node.objectType, node, true); + this.tokenChar(91); + this.print(node.indexType, node); + this.tokenChar(93); +} +function OptionalIndexedAccessType(node) { + this.print(node.objectType, node); + if (node.optional) { + this.token("?."); + } + this.tokenChar(91); + this.print(node.indexType, node); + this.tokenChar(93); +} + +//# sourceMappingURL=flow.js.map diff --git a/node_modules/@babel/generator/lib/generators/flow.js.map b/node_modules/@babel/generator/lib/generators/flow.js.map new file mode 100644 index 0000000..5edf9ee --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/flow.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isDeclareExportDeclaration","isStatement","AnyTypeAnnotation","word","ArrayTypeAnnotation","node","print","elementType","token","BooleanTypeAnnotation","BooleanLiteralTypeAnnotation","value","NullLiteralTypeAnnotation","DeclareClass","parent","space","_interfaceish","DeclareFunction","id","typeAnnotation","predicate","semicolon","InferredPredicate","DeclaredPredicate","DeclareInterface","InterfaceDeclaration","DeclareModule","body","DeclareModuleExports","DeclareTypeAlias","TypeAlias","DeclareOpaqueType","OpaqueType","DeclareVariable","DeclareExportDeclaration","default","FlowExportDeclaration","call","DeclareExportAllDeclaration","ExportAllDeclaration","EnumDeclaration","enumExplicitType","context","name","hasExplicitType","enumBody","members","indent","newline","member","hasUnknownMembers","dedent","EnumBooleanBody","explicitType","EnumNumberBody","EnumStringBody","EnumSymbolBody","EnumDefaultedMember","enumInitializedMember","init","EnumBooleanMember","EnumNumberMember","EnumStringMember","declaration","declar","specifiers","length","printList","source","ExistsTypeAnnotation","FunctionTypeAnnotation","typeParameters","this","params","rest","type","method","returnType","FunctionTypeParam","optional","InterfaceExtends","extends","mixins","implements","_variance","variance","kind","andSeparator","InterfaceTypeAnnotation","IntersectionTypeAnnotation","printJoin","types","separator","MixedTypeAnnotation","EmptyTypeAnnotation","NullableTypeAnnotation","NumberTypeAnnotation","StringTypeAnnotation","ThisTypeAnnotation","TupleTypeAnnotation","TypeofTypeAnnotation","argument","right","TypeAnnotation","TypeParameterInstantiation","TypeParameter","bound","supertype","impltype","ObjectTypeAnnotation","exact","props","properties","callProperties","indexers","internalSlots","addNewlines","leading","statement","iterator","inexact","ObjectTypeInternalSlot","static","ObjectTypeCallProperty","ObjectTypeIndexer","key","ObjectTypeProperty","proto","ObjectTypeSpreadProperty","QualifiedTypeIdentifier","qualification","SymbolTypeAnnotation","orSeparator","UnionTypeAnnotation","TypeCastExpression","expression","Variance","VoidTypeAnnotation","IndexedAccessType","objectType","indexType","OptionalIndexedAccessType"],"sources":["../../src/generators/flow.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport { isDeclareExportDeclaration, isStatement } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport { ExportAllDeclaration } from \"./modules\";\n\nexport function AnyTypeAnnotation(this: Printer) {\n this.word(\"any\");\n}\n\nexport function ArrayTypeAnnotation(\n this: Printer,\n node: t.ArrayTypeAnnotation,\n) {\n this.print(node.elementType, node, true);\n this.token(\"[\");\n this.token(\"]\");\n}\n\nexport function BooleanTypeAnnotation(this: Printer) {\n this.word(\"boolean\");\n}\n\nexport function BooleanLiteralTypeAnnotation(\n this: Printer,\n node: t.BooleanLiteralTypeAnnotation,\n) {\n this.word(node.value ? \"true\" : \"false\");\n}\n\nexport function NullLiteralTypeAnnotation(this: Printer) {\n this.word(\"null\");\n}\n\nexport function DeclareClass(\n this: Printer,\n node: t.DeclareClass,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"class\");\n this.space();\n this._interfaceish(node);\n}\n\nexport function DeclareFunction(\n this: Printer,\n node: t.DeclareFunction,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"function\");\n this.space();\n this.print(node.id, node);\n // @ts-ignore(Babel 7 vs Babel 8) TODO(Babel 8) Remove this comment, since we'll remove the Noop node\n this.print(node.id.typeAnnotation.typeAnnotation, node);\n\n if (node.predicate) {\n this.space();\n this.print(node.predicate, node);\n }\n\n this.semicolon();\n}\n\nexport function InferredPredicate(this: Printer) {\n this.token(\"%\");\n this.word(\"checks\");\n}\n\nexport function DeclaredPredicate(this: Printer, node: t.DeclaredPredicate) {\n this.token(\"%\");\n this.word(\"checks\");\n this.token(\"(\");\n this.print(node.value, node);\n this.token(\")\");\n}\n\nexport function DeclareInterface(this: Printer, node: t.DeclareInterface) {\n this.word(\"declare\");\n this.space();\n this.InterfaceDeclaration(node);\n}\n\nexport function DeclareModule(this: Printer, node: t.DeclareModule) {\n this.word(\"declare\");\n this.space();\n this.word(\"module\");\n this.space();\n this.print(node.id, node);\n this.space();\n this.print(node.body, node);\n}\n\nexport function DeclareModuleExports(\n this: Printer,\n node: t.DeclareModuleExports,\n) {\n this.word(\"declare\");\n this.space();\n this.word(\"module\");\n this.token(\".\");\n this.word(\"exports\");\n this.print(node.typeAnnotation, node);\n}\n\nexport function DeclareTypeAlias(this: Printer, node: t.DeclareTypeAlias) {\n this.word(\"declare\");\n this.space();\n this.TypeAlias(node);\n}\n\nexport function DeclareOpaqueType(\n this: Printer,\n node: t.DeclareOpaqueType,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.OpaqueType(node);\n}\n\nexport function DeclareVariable(\n this: Printer,\n node: t.DeclareVariable,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"var\");\n this.space();\n this.print(node.id, node);\n this.print(node.id.typeAnnotation, node);\n this.semicolon();\n}\n\nexport function DeclareExportDeclaration(\n this: Printer,\n node: t.DeclareExportDeclaration,\n) {\n this.word(\"declare\");\n this.space();\n this.word(\"export\");\n this.space();\n if (node.default) {\n this.word(\"default\");\n this.space();\n }\n\n FlowExportDeclaration.call(this, node);\n}\n\nexport function DeclareExportAllDeclaration(\n this: Printer,\n node: t.DeclareExportAllDeclaration,\n) {\n this.word(\"declare\");\n this.space();\n ExportAllDeclaration.call(this, node);\n}\n\nexport function EnumDeclaration(this: Printer, node: t.EnumDeclaration) {\n const { id, body } = node;\n this.word(\"enum\");\n this.space();\n this.print(id, node);\n this.print(body, node);\n}\n\nfunction enumExplicitType(\n context: Printer,\n name: string,\n hasExplicitType: boolean,\n) {\n if (hasExplicitType) {\n context.space();\n context.word(\"of\");\n context.space();\n context.word(name);\n }\n context.space();\n}\n\nfunction enumBody(context: Printer, node: t.EnumBody) {\n const { members } = node;\n context.token(\"{\");\n context.indent();\n context.newline();\n for (const member of members) {\n context.print(member, node);\n context.newline();\n }\n if (node.hasUnknownMembers) {\n context.token(\"...\");\n context.newline();\n }\n context.dedent();\n context.token(\"}\");\n}\n\nexport function EnumBooleanBody(this: Printer, node: t.EnumBooleanBody) {\n const { explicitType } = node;\n enumExplicitType(this, \"boolean\", explicitType);\n enumBody(this, node);\n}\n\nexport function EnumNumberBody(this: Printer, node: t.EnumNumberBody) {\n const { explicitType } = node;\n enumExplicitType(this, \"number\", explicitType);\n enumBody(this, node);\n}\n\nexport function EnumStringBody(this: Printer, node: t.EnumStringBody) {\n const { explicitType } = node;\n enumExplicitType(this, \"string\", explicitType);\n enumBody(this, node);\n}\n\nexport function EnumSymbolBody(this: Printer, node: t.EnumSymbolBody) {\n enumExplicitType(this, \"symbol\", true);\n enumBody(this, node);\n}\n\nexport function EnumDefaultedMember(\n this: Printer,\n node: t.EnumDefaultedMember,\n) {\n const { id } = node;\n this.print(id, node);\n this.token(\",\");\n}\n\nfunction enumInitializedMember(\n context: Printer,\n node: t.EnumBooleanMember | t.EnumNumberMember | t.EnumStringMember,\n) {\n const { id, init } = node;\n context.print(id, node);\n context.space();\n context.token(\"=\");\n context.space();\n context.print(init, node);\n context.token(\",\");\n}\n\nexport function EnumBooleanMember(this: Printer, node: t.EnumBooleanMember) {\n enumInitializedMember(this, node);\n}\n\nexport function EnumNumberMember(this: Printer, node: t.EnumNumberMember) {\n enumInitializedMember(this, node);\n}\n\nexport function EnumStringMember(this: Printer, node: t.EnumStringMember) {\n enumInitializedMember(this, node);\n}\n\nfunction FlowExportDeclaration(\n this: Printer,\n node: t.DeclareExportDeclaration,\n) {\n if (node.declaration) {\n const declar = node.declaration;\n this.print(declar, node);\n if (!isStatement(declar)) this.semicolon();\n } else {\n this.token(\"{\");\n if (node.specifiers.length) {\n this.space();\n this.printList(node.specifiers, node);\n this.space();\n }\n this.token(\"}\");\n\n if (node.source) {\n this.space();\n this.word(\"from\");\n this.space();\n this.print(node.source, node);\n }\n\n this.semicolon();\n }\n}\n\nexport function ExistsTypeAnnotation(this: Printer) {\n this.token(\"*\");\n}\n\nexport function FunctionTypeAnnotation(\n this: Printer,\n node: t.FunctionTypeAnnotation,\n parent: t.Node | void,\n) {\n this.print(node.typeParameters, node);\n this.token(\"(\");\n\n if (node.this) {\n this.word(\"this\");\n this.token(\":\");\n this.space();\n this.print(node.this.typeAnnotation, node);\n if (node.params.length || node.rest) {\n this.token(\",\");\n this.space();\n }\n }\n\n this.printList(node.params, node);\n\n if (node.rest) {\n if (node.params.length) {\n this.token(\",\");\n this.space();\n }\n this.token(\"...\");\n this.print(node.rest, node);\n }\n\n this.token(\")\");\n\n // this node type is overloaded, not sure why but it makes it EXTREMELY annoying\n if (\n parent &&\n (parent.type === \"ObjectTypeCallProperty\" ||\n parent.type === \"ObjectTypeInternalSlot\" ||\n parent.type === \"DeclareFunction\" ||\n (parent.type === \"ObjectTypeProperty\" && parent.method))\n ) {\n this.token(\":\");\n } else {\n this.space();\n this.token(\"=>\");\n }\n\n this.space();\n this.print(node.returnType, node);\n}\n\nexport function FunctionTypeParam(this: Printer, node: t.FunctionTypeParam) {\n this.print(node.name, node);\n if (node.optional) this.token(\"?\");\n if (node.name) {\n this.token(\":\");\n this.space();\n }\n this.print(node.typeAnnotation, node);\n}\n\nexport function InterfaceExtends(this: Printer, node: t.InterfaceExtends) {\n this.print(node.id, node);\n this.print(node.typeParameters, node, true);\n}\n\nexport {\n InterfaceExtends as ClassImplements,\n InterfaceExtends as GenericTypeAnnotation,\n};\n\nexport function _interfaceish(\n this: Printer,\n node: t.InterfaceDeclaration | t.DeclareInterface | t.DeclareClass,\n) {\n this.print(node.id, node);\n this.print(node.typeParameters, node);\n if (node.extends?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(node.extends, node);\n }\n if (node.mixins && node.mixins.length) {\n this.space();\n this.word(\"mixins\");\n this.space();\n this.printList(node.mixins, node);\n }\n if (node.implements && node.implements.length) {\n this.space();\n this.word(\"implements\");\n this.space();\n this.printList(node.implements, node);\n }\n this.space();\n this.print(node.body, node);\n}\n\nexport function _variance(\n this: Printer,\n node:\n | t.TypeParameter\n | t.ObjectTypeIndexer\n | t.ObjectTypeProperty\n | t.ClassProperty\n | t.ClassPrivateProperty\n | t.ClassAccessorProperty,\n) {\n if (node.variance) {\n if (node.variance.kind === \"plus\") {\n this.token(\"+\");\n } else if (node.variance.kind === \"minus\") {\n this.token(\"-\");\n }\n }\n}\n\nexport function InterfaceDeclaration(\n this: Printer,\n node: t.InterfaceDeclaration | t.DeclareInterface,\n) {\n this.word(\"interface\");\n this.space();\n this._interfaceish(node);\n}\n\nfunction andSeparator(this: Printer) {\n this.space();\n this.token(\"&\");\n this.space();\n}\n\nexport function InterfaceTypeAnnotation(\n this: Printer,\n node: t.InterfaceTypeAnnotation,\n) {\n this.word(\"interface\");\n if (node.extends && node.extends.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(node.extends, node);\n }\n this.space();\n this.print(node.body, node);\n}\n\nexport function IntersectionTypeAnnotation(\n this: Printer,\n node: t.IntersectionTypeAnnotation,\n) {\n this.printJoin(node.types, node, { separator: andSeparator });\n}\n\nexport function MixedTypeAnnotation(this: Printer) {\n this.word(\"mixed\");\n}\n\nexport function EmptyTypeAnnotation(this: Printer) {\n this.word(\"empty\");\n}\n\nexport function NullableTypeAnnotation(\n this: Printer,\n node: t.NullableTypeAnnotation,\n) {\n this.token(\"?\");\n this.print(node.typeAnnotation, node);\n}\n\nexport {\n NumericLiteral as NumberLiteralTypeAnnotation,\n StringLiteral as StringLiteralTypeAnnotation,\n} from \"./types\";\n\nexport function NumberTypeAnnotation(this: Printer) {\n this.word(\"number\");\n}\n\nexport function StringTypeAnnotation(this: Printer) {\n this.word(\"string\");\n}\n\nexport function ThisTypeAnnotation(this: Printer) {\n this.word(\"this\");\n}\n\nexport function TupleTypeAnnotation(\n this: Printer,\n node: t.TupleTypeAnnotation,\n) {\n this.token(\"[\");\n this.printList(node.types, node);\n this.token(\"]\");\n}\n\nexport function TypeofTypeAnnotation(\n this: Printer,\n node: t.TypeofTypeAnnotation,\n) {\n this.word(\"typeof\");\n this.space();\n this.print(node.argument, node);\n}\n\nexport function TypeAlias(\n this: Printer,\n node: t.TypeAlias | t.DeclareTypeAlias,\n) {\n this.word(\"type\");\n this.space();\n this.print(node.id, node);\n this.print(node.typeParameters, node);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.right, node);\n this.semicolon();\n}\n\nexport function TypeAnnotation(this: Printer, node: t.TypeAnnotation) {\n this.token(\":\");\n this.space();\n // @ts-expect-error todo(flow->ts) can this be removed? `.optional` looks to be not existing property\n if (node.optional) this.token(\"?\");\n this.print(node.typeAnnotation, node);\n}\n\nexport function TypeParameterInstantiation(\n this: Printer,\n node: t.TypeParameterInstantiation,\n): void {\n this.token(\"<\");\n this.printList(node.params, node, {});\n this.token(\">\");\n}\n\nexport { TypeParameterInstantiation as TypeParameterDeclaration };\n\nexport function TypeParameter(this: Printer, node: t.TypeParameter) {\n this._variance(node);\n\n this.word(node.name);\n\n if (node.bound) {\n this.print(node.bound, node);\n }\n\n if (node.default) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.default, node);\n }\n}\n\nexport function OpaqueType(\n this: Printer,\n node: t.OpaqueType | t.DeclareOpaqueType,\n) {\n this.word(\"opaque\");\n this.space();\n this.word(\"type\");\n this.space();\n this.print(node.id, node);\n this.print(node.typeParameters, node);\n if (node.supertype) {\n this.token(\":\");\n this.space();\n this.print(node.supertype, node);\n }\n\n if (node.impltype) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.impltype, node);\n }\n this.semicolon();\n}\n\nexport function ObjectTypeAnnotation(\n this: Printer,\n node: t.ObjectTypeAnnotation,\n) {\n if (node.exact) {\n this.token(\"{|\");\n } else {\n this.token(\"{\");\n }\n\n // TODO: remove the array fallbacks and instead enforce the types to require an array\n const props = [\n ...node.properties,\n ...(node.callProperties || []),\n ...(node.indexers || []),\n ...(node.internalSlots || []),\n ];\n\n if (props.length) {\n this.newline();\n\n this.space();\n\n this.printJoin(props, node, {\n addNewlines(leading) {\n if (leading && !props[0]) return 1;\n },\n indent: true,\n statement: true,\n iterator: () => {\n if (props.length !== 1 || node.inexact) {\n this.token(\",\");\n this.space();\n }\n },\n });\n\n this.space();\n }\n\n if (node.inexact) {\n this.indent();\n this.token(\"...\");\n if (props.length) {\n this.newline();\n }\n this.dedent();\n }\n\n if (node.exact) {\n this.token(\"|}\");\n } else {\n this.token(\"}\");\n }\n}\n\nexport function ObjectTypeInternalSlot(\n this: Printer,\n node: t.ObjectTypeInternalSlot,\n) {\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n this.token(\"[\");\n this.token(\"[\");\n this.print(node.id, node);\n this.token(\"]\");\n this.token(\"]\");\n if (node.optional) this.token(\"?\");\n if (!node.method) {\n this.token(\":\");\n this.space();\n }\n this.print(node.value, node);\n}\n\nexport function ObjectTypeCallProperty(\n this: Printer,\n node: t.ObjectTypeCallProperty,\n) {\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n this.print(node.value, node);\n}\n\nexport function ObjectTypeIndexer(this: Printer, node: t.ObjectTypeIndexer) {\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n this._variance(node);\n this.token(\"[\");\n if (node.id) {\n this.print(node.id, node);\n this.token(\":\");\n this.space();\n }\n this.print(node.key, node);\n this.token(\"]\");\n this.token(\":\");\n this.space();\n this.print(node.value, node);\n}\n\nexport function ObjectTypeProperty(this: Printer, node: t.ObjectTypeProperty) {\n if (node.proto) {\n this.word(\"proto\");\n this.space();\n }\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n if (node.kind === \"get\" || node.kind === \"set\") {\n this.word(node.kind);\n this.space();\n }\n this._variance(node);\n this.print(node.key, node);\n if (node.optional) this.token(\"?\");\n if (!node.method) {\n this.token(\":\");\n this.space();\n }\n this.print(node.value, node);\n}\n\nexport function ObjectTypeSpreadProperty(\n this: Printer,\n node: t.ObjectTypeSpreadProperty,\n) {\n this.token(\"...\");\n this.print(node.argument, node);\n}\n\nexport function QualifiedTypeIdentifier(\n this: Printer,\n node: t.QualifiedTypeIdentifier,\n) {\n this.print(node.qualification, node);\n this.token(\".\");\n this.print(node.id, node);\n}\n\nexport function SymbolTypeAnnotation(this: Printer) {\n this.word(\"symbol\");\n}\n\nfunction orSeparator(this: Printer) {\n this.space();\n this.token(\"|\");\n this.space();\n}\n\nexport function UnionTypeAnnotation(\n this: Printer,\n node: t.UnionTypeAnnotation,\n) {\n this.printJoin(node.types, node, { separator: orSeparator });\n}\n\nexport function TypeCastExpression(this: Printer, node: t.TypeCastExpression) {\n this.token(\"(\");\n this.print(node.expression, node);\n this.print(node.typeAnnotation, node);\n this.token(\")\");\n}\n\nexport function Variance(this: Printer, node: t.Variance) {\n if (node.kind === \"plus\") {\n this.token(\"+\");\n } else {\n this.token(\"-\");\n }\n}\n\nexport function VoidTypeAnnotation(this: Printer) {\n this.word(\"void\");\n}\n\nexport function IndexedAccessType(this: Printer, node: t.IndexedAccessType) {\n this.print(node.objectType, node, true);\n this.token(\"[\");\n this.print(node.indexType, node);\n this.token(\"]\");\n}\n\nexport function OptionalIndexedAccessType(\n this: Printer,\n node: t.OptionalIndexedAccessType,\n) {\n this.print(node.objectType, node);\n if (node.optional) {\n this.token(\"?.\");\n }\n this.token(\"[\");\n this.print(node.indexType, node);\n this.token(\"]\");\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/index.js b/node_modules/@babel/generator/lib/generators/index.js new file mode 100644 index 0000000..25ad36b --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/index.js @@ -0,0 +1,128 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _templateLiterals = require("./template-literals"); +Object.keys(_templateLiterals).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _templateLiterals[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _templateLiterals[key]; + } + }); +}); +var _expressions = require("./expressions"); +Object.keys(_expressions).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _expressions[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _expressions[key]; + } + }); +}); +var _statements = require("./statements"); +Object.keys(_statements).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _statements[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _statements[key]; + } + }); +}); +var _classes = require("./classes"); +Object.keys(_classes).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _classes[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _classes[key]; + } + }); +}); +var _methods = require("./methods"); +Object.keys(_methods).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _methods[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _methods[key]; + } + }); +}); +var _modules = require("./modules"); +Object.keys(_modules).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _modules[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _modules[key]; + } + }); +}); +var _types = require("./types"); +Object.keys(_types).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _types[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _types[key]; + } + }); +}); +var _flow = require("./flow"); +Object.keys(_flow).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _flow[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _flow[key]; + } + }); +}); +var _base = require("./base"); +Object.keys(_base).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _base[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _base[key]; + } + }); +}); +var _jsx = require("./jsx"); +Object.keys(_jsx).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _jsx[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _jsx[key]; + } + }); +}); +var _typescript = require("./typescript"); +Object.keys(_typescript).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _typescript[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _typescript[key]; + } + }); +}); + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/generator/lib/generators/index.js.map b/node_modules/@babel/generator/lib/generators/index.js.map new file mode 100644 index 0000000..a03022f --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":[],"sources":["../../src/generators/index.ts"],"sourcesContent":["export * from \"./template-literals\";\nexport * from \"./expressions\";\nexport * from \"./statements\";\nexport * from \"./classes\";\nexport * from \"./methods\";\nexport * from \"./modules\";\nexport * from \"./types\";\nexport * from \"./flow\";\nexport * from \"./base\";\nexport * from \"./jsx\";\nexport * from \"./typescript\";\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/jsx.js b/node_modules/@babel/generator/lib/generators/jsx.js new file mode 100644 index 0000000..4b8dd7a --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/jsx.js @@ -0,0 +1,123 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.JSXAttribute = JSXAttribute; +exports.JSXClosingElement = JSXClosingElement; +exports.JSXClosingFragment = JSXClosingFragment; +exports.JSXElement = JSXElement; +exports.JSXEmptyExpression = JSXEmptyExpression; +exports.JSXExpressionContainer = JSXExpressionContainer; +exports.JSXFragment = JSXFragment; +exports.JSXIdentifier = JSXIdentifier; +exports.JSXMemberExpression = JSXMemberExpression; +exports.JSXNamespacedName = JSXNamespacedName; +exports.JSXOpeningElement = JSXOpeningElement; +exports.JSXOpeningFragment = JSXOpeningFragment; +exports.JSXSpreadAttribute = JSXSpreadAttribute; +exports.JSXSpreadChild = JSXSpreadChild; +exports.JSXText = JSXText; +function JSXAttribute(node) { + this.print(node.name, node); + if (node.value) { + this.tokenChar(61); + this.print(node.value, node); + } +} +function JSXIdentifier(node) { + this.word(node.name); +} +function JSXNamespacedName(node) { + this.print(node.namespace, node); + this.tokenChar(58); + this.print(node.name, node); +} +function JSXMemberExpression(node) { + this.print(node.object, node); + this.tokenChar(46); + this.print(node.property, node); +} +function JSXSpreadAttribute(node) { + this.tokenChar(123); + this.token("..."); + this.print(node.argument, node); + this.tokenChar(125); +} +function JSXExpressionContainer(node) { + this.tokenChar(123); + this.print(node.expression, node); + this.tokenChar(125); +} +function JSXSpreadChild(node) { + this.tokenChar(123); + this.token("..."); + this.print(node.expression, node); + this.tokenChar(125); +} +function JSXText(node) { + const raw = this.getPossibleRaw(node); + if (raw !== undefined) { + this.token(raw, true); + } else { + this.token(node.value, true); + } +} +function JSXElement(node) { + const open = node.openingElement; + this.print(open, node); + if (open.selfClosing) return; + this.indent(); + for (const child of node.children) { + this.print(child, node); + } + this.dedent(); + this.print(node.closingElement, node); +} +function spaceSeparator() { + this.space(); +} +function JSXOpeningElement(node) { + this.tokenChar(60); + this.print(node.name, node); + this.print(node.typeParameters, node); + if (node.attributes.length > 0) { + this.space(); + this.printJoin(node.attributes, node, { + separator: spaceSeparator + }); + } + if (node.selfClosing) { + this.space(); + this.token("/>"); + } else { + this.tokenChar(62); + } +} +function JSXClosingElement(node) { + this.token(" 0) {\n this.space();\n this.printJoin(node.attributes, node, { separator: spaceSeparator });\n }\n if (node.selfClosing) {\n this.space();\n this.token(\"/>\");\n } else {\n this.token(\">\");\n }\n}\n\nexport function JSXClosingElement(this: Printer, node: t.JSXClosingElement) {\n this.token(\"\");\n}\n\nexport function JSXEmptyExpression(this: Printer) {\n // This node is empty, so forcefully print its inner comments.\n this.printInnerComments();\n}\n\nexport function JSXFragment(this: Printer, node: t.JSXFragment) {\n this.print(node.openingFragment, node);\n\n this.indent();\n for (const child of node.children) {\n this.print(child, node);\n }\n this.dedent();\n\n this.print(node.closingFragment, node);\n}\n\nexport function JSXOpeningFragment(this: Printer) {\n this.token(\"<\");\n this.token(\">\");\n}\n\nexport function JSXClosingFragment(this: Printer) {\n this.token(\"\");\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/methods.js b/node_modules/@babel/generator/lib/generators/methods.js new file mode 100644 index 0000000..f078472 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/methods.js @@ -0,0 +1,137 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ArrowFunctionExpression = ArrowFunctionExpression; +exports.FunctionDeclaration = exports.FunctionExpression = FunctionExpression; +exports._functionHead = _functionHead; +exports._methodHead = _methodHead; +exports._param = _param; +exports._parameters = _parameters; +exports._params = _params; +exports._predicate = _predicate; +var _t = require("@babel/types"); +const { + isIdentifier +} = _t; +function _params(node) { + this.print(node.typeParameters, node); + this.tokenChar(40); + this._parameters(node.params, node); + this.tokenChar(41); + const noLineTerminator = node.type === "ArrowFunctionExpression"; + this.print(node.returnType, node, noLineTerminator); + this._noLineTerminator = noLineTerminator; +} +function _parameters(parameters, parent) { + const paramLength = parameters.length; + for (let i = 0; i < paramLength; i++) { + this._param(parameters[i], parent); + if (i < parameters.length - 1) { + this.tokenChar(44); + this.space(); + } + } +} +function _param(parameter, parent) { + this.printJoin(parameter.decorators, parameter); + this.print(parameter, parent); + if ( + parameter.optional) { + this.tokenChar(63); + } + + this.print( + parameter.typeAnnotation, parameter); +} + +function _methodHead(node) { + const kind = node.kind; + const key = node.key; + if (kind === "get" || kind === "set") { + this.word(kind); + this.space(); + } + if (node.async) { + this.word("async", true); + this.space(); + } + if (kind === "method" || + kind === "init") { + if (node.generator) { + this.tokenChar(42); + } + } + if (node.computed) { + this.tokenChar(91); + this.print(key, node); + this.tokenChar(93); + } else { + this.print(key, node); + } + if ( + node.optional) { + this.tokenChar(63); + } + this._params(node); +} +function _predicate(node, noLineTerminatorAfter) { + if (node.predicate) { + if (!node.returnType) { + this.tokenChar(58); + } + this.space(); + this.print(node.predicate, node, noLineTerminatorAfter); + } +} +function _functionHead(node) { + if (node.async) { + this.word("async"); + this._endsWithInnerRaw = false; + this.space(); + } + this.word("function"); + if (node.generator) { + this._endsWithInnerRaw = false; + this.tokenChar(42); + } + this.space(); + if (node.id) { + this.print(node.id, node); + } + this._params(node); + if (node.type !== "TSDeclareFunction") { + this._predicate(node); + } +} +function FunctionExpression(node) { + this._functionHead(node); + this.space(); + this.print(node.body, node); +} +function ArrowFunctionExpression(node) { + if (node.async) { + this.word("async", true); + this.space(); + } + + let firstParam; + if (!this.format.retainLines && node.params.length === 1 && isIdentifier(firstParam = node.params[0]) && !hasTypesOrComments(node, firstParam)) { + this.print(firstParam, node, true); + } else { + this._params(node); + } + this._predicate(node, true); + this.space(); + this.printInnerComments(); + this.token("=>"); + this.space(); + this.print(node.body, node); +} +function hasTypesOrComments(node, param) { + var _param$leadingComment, _param$trailingCommen; + return !!(node.typeParameters || node.returnType || node.predicate || param.typeAnnotation || param.optional || (_param$leadingComment = param.leadingComments) != null && _param$leadingComment.length || (_param$trailingCommen = param.trailingComments) != null && _param$trailingCommen.length); +} + +//# sourceMappingURL=methods.js.map diff --git a/node_modules/@babel/generator/lib/generators/methods.js.map b/node_modules/@babel/generator/lib/generators/methods.js.map new file mode 100644 index 0000000..c8b10bf --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/methods.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isIdentifier","_params","node","print","typeParameters","token","_parameters","params","noLineTerminator","type","returnType","_noLineTerminator","parameters","parent","paramLength","length","i","_param","space","parameter","printJoin","decorators","optional","typeAnnotation","_methodHead","kind","key","word","async","generator","computed","_predicate","noLineTerminatorAfter","predicate","_functionHead","_endsWithInnerRaw","id","FunctionExpression","body","ArrowFunctionExpression","firstParam","format","retainLines","hasTypesOrComments","printInnerComments","param","leadingComments","trailingComments"],"sources":["../../src/generators/methods.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport { isIdentifier } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\nexport function _params(\n this: Printer,\n node: t.Function | t.TSDeclareMethod | t.TSDeclareFunction,\n) {\n this.print(node.typeParameters, node);\n this.token(\"(\");\n this._parameters(node.params, node);\n this.token(\")\");\n\n const noLineTerminator = node.type === \"ArrowFunctionExpression\";\n this.print(node.returnType, node, noLineTerminator);\n\n this._noLineTerminator = noLineTerminator;\n}\n\nexport function _parameters(\n this: Printer,\n parameters: t.Function[\"params\"],\n parent:\n | t.Function\n | t.TSIndexSignature\n | t.TSDeclareMethod\n | t.TSDeclareFunction\n | t.TSFunctionType\n | t.TSConstructorType,\n) {\n const paramLength = parameters.length;\n for (let i = 0; i < paramLength; i++) {\n this._param(parameters[i], parent);\n\n if (i < parameters.length - 1) {\n this.token(\",\");\n this.space();\n }\n }\n}\n\nexport function _param(\n this: Printer,\n parameter: t.Identifier | t.RestElement | t.Pattern | t.TSParameterProperty,\n parent?:\n | t.Function\n | t.TSIndexSignature\n | t.TSDeclareMethod\n | t.TSDeclareFunction\n | t.TSFunctionType\n | t.TSConstructorType,\n) {\n this.printJoin(parameter.decorators, parameter);\n this.print(parameter, parent);\n if (\n // @ts-expect-error optional is not in TSParameterProperty\n parameter.optional\n ) {\n this.token(\"?\"); // TS / flow\n }\n\n this.print(\n // @ts-expect-error typeAnnotation is not in TSParameterProperty\n parameter.typeAnnotation,\n parameter,\n ); // TS / flow\n}\n\nexport function _methodHead(this: Printer, node: t.Method | t.TSDeclareMethod) {\n const kind = node.kind;\n const key = node.key;\n\n if (kind === \"get\" || kind === \"set\") {\n this.word(kind);\n this.space();\n }\n\n if (node.async) {\n this.word(\"async\", true);\n this.space();\n }\n\n if (\n kind === \"method\" ||\n // @ts-expect-error Fixme: kind: \"init\" is not defined\n kind === \"init\"\n ) {\n if (node.generator) {\n this.token(\"*\");\n }\n }\n\n if (node.computed) {\n this.token(\"[\");\n this.print(key, node);\n this.token(\"]\");\n } else {\n this.print(key, node);\n }\n\n if (\n // @ts-expect-error optional is not in ObjectMethod\n node.optional\n ) {\n // TS\n this.token(\"?\");\n }\n\n this._params(node);\n}\n\nexport function _predicate(\n this: Printer,\n node:\n | t.FunctionDeclaration\n | t.FunctionExpression\n | t.ArrowFunctionExpression,\n noLineTerminatorAfter?: boolean,\n) {\n if (node.predicate) {\n if (!node.returnType) {\n this.token(\":\");\n }\n this.space();\n this.print(node.predicate, node, noLineTerminatorAfter);\n }\n}\n\nexport function _functionHead(\n this: Printer,\n node: t.FunctionDeclaration | t.FunctionExpression | t.TSDeclareFunction,\n) {\n if (node.async) {\n this.word(\"async\");\n // We prevent inner comments from being printed here,\n // so that they are always consistently printed in the\n // same place regardless of the function type.\n this._endsWithInnerRaw = false;\n this.space();\n }\n this.word(\"function\");\n if (node.generator) {\n // We prevent inner comments from being printed here,\n // so that they are always consistently printed in the\n // same place regardless of the function type.\n this._endsWithInnerRaw = false;\n this.token(\"*\");\n }\n\n this.space();\n if (node.id) {\n this.print(node.id, node);\n }\n\n this._params(node);\n if (node.type !== \"TSDeclareFunction\") {\n this._predicate(node);\n }\n}\n\nexport function FunctionExpression(this: Printer, node: t.FunctionExpression) {\n this._functionHead(node);\n this.space();\n this.print(node.body, node);\n}\n\nexport { FunctionExpression as FunctionDeclaration };\n\nexport function ArrowFunctionExpression(\n this: Printer,\n node: t.ArrowFunctionExpression,\n) {\n if (node.async) {\n this.word(\"async\", true);\n this.space();\n }\n\n // Try to avoid printing parens in simple cases, but only if we're pretty\n // sure that they aren't needed by type annotations or potential newlines.\n let firstParam;\n if (\n !this.format.retainLines &&\n node.params.length === 1 &&\n isIdentifier((firstParam = node.params[0])) &&\n !hasTypesOrComments(node, firstParam)\n ) {\n this.print(firstParam, node, true);\n } else {\n this._params(node);\n }\n\n this._predicate(node, true);\n this.space();\n // When printing (x)/*1*/=>{}, we remove the parentheses\n // and thus there aren't two contiguous inner tokens.\n // We forcefully print inner comments here.\n this.printInnerComments();\n this.token(\"=>\");\n\n this.space();\n\n this.print(node.body, node);\n}\n\nfunction hasTypesOrComments(\n node: t.ArrowFunctionExpression,\n param: t.Identifier,\n): boolean {\n return !!(\n node.typeParameters ||\n node.returnType ||\n node.predicate ||\n param.typeAnnotation ||\n param.optional ||\n // Flow does not support `foo /*: string*/ => {};`\n param.leadingComments?.length ||\n param.trailingComments?.length\n );\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/modules.js b/node_modules/@babel/generator/lib/generators/modules.js new file mode 100644 index 0000000..d51d013 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/modules.js @@ -0,0 +1,244 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ExportAllDeclaration = ExportAllDeclaration; +exports.ExportDefaultDeclaration = ExportDefaultDeclaration; +exports.ExportDefaultSpecifier = ExportDefaultSpecifier; +exports.ExportNamedDeclaration = ExportNamedDeclaration; +exports.ExportNamespaceSpecifier = ExportNamespaceSpecifier; +exports.ExportSpecifier = ExportSpecifier; +exports.ImportAttribute = ImportAttribute; +exports.ImportDeclaration = ImportDeclaration; +exports.ImportDefaultSpecifier = ImportDefaultSpecifier; +exports.ImportNamespaceSpecifier = ImportNamespaceSpecifier; +exports.ImportSpecifier = ImportSpecifier; +exports._printAssertions = _printAssertions; +var _t = require("@babel/types"); +const { + isClassDeclaration, + isExportDefaultSpecifier, + isExportNamespaceSpecifier, + isImportDefaultSpecifier, + isImportNamespaceSpecifier, + isStatement +} = _t; +function ImportSpecifier(node) { + if (node.importKind === "type" || node.importKind === "typeof") { + this.word(node.importKind); + this.space(); + } + this.print(node.imported, node); + if (node.local && node.local.name !== node.imported.name) { + this.space(); + this.word("as"); + this.space(); + this.print(node.local, node); + } +} +function ImportDefaultSpecifier(node) { + this.print(node.local, node); +} +function ExportDefaultSpecifier(node) { + this.print(node.exported, node); +} +function ExportSpecifier(node) { + if (node.exportKind === "type") { + this.word("type"); + this.space(); + } + this.print(node.local, node); + if (node.exported && node.local.name !== node.exported.name) { + this.space(); + this.word("as"); + this.space(); + this.print(node.exported, node); + } +} +function ExportNamespaceSpecifier(node) { + this.tokenChar(42); + this.space(); + this.word("as"); + this.space(); + this.print(node.exported, node); +} +function _printAssertions(node) { + this.word("assert"); + this.space(); + this.tokenChar(123); + this.space(); + this.printList(node.assertions, node); + this.space(); + this.tokenChar(125); +} +function ExportAllDeclaration(node) { + var _node$assertions; + this.word("export"); + this.space(); + if (node.exportKind === "type") { + this.word("type"); + this.space(); + } + this.tokenChar(42); + this.space(); + this.word("from"); + this.space(); + if ((_node$assertions = node.assertions) != null && _node$assertions.length) { + this.print(node.source, node, true); + this.space(); + this._printAssertions(node); + } else { + this.print(node.source, node); + } + this.semicolon(); +} +function ExportNamedDeclaration(node) { + { + if (this.format.decoratorsBeforeExport && isClassDeclaration(node.declaration)) { + this.printJoin(node.declaration.decorators, node); + } + } + this.word("export"); + this.space(); + if (node.declaration) { + const declar = node.declaration; + this.print(declar, node); + if (!isStatement(declar)) this.semicolon(); + } else { + if (node.exportKind === "type") { + this.word("type"); + this.space(); + } + const specifiers = node.specifiers.slice(0); + + let hasSpecial = false; + for (;;) { + const first = specifiers[0]; + if (isExportDefaultSpecifier(first) || isExportNamespaceSpecifier(first)) { + hasSpecial = true; + this.print(specifiers.shift(), node); + if (specifiers.length) { + this.tokenChar(44); + this.space(); + } + } else { + break; + } + } + if (specifiers.length || !specifiers.length && !hasSpecial) { + this.tokenChar(123); + if (specifiers.length) { + this.space(); + this.printList(specifiers, node); + this.space(); + } + this.tokenChar(125); + } + if (node.source) { + var _node$assertions2; + this.space(); + this.word("from"); + this.space(); + if ((_node$assertions2 = node.assertions) != null && _node$assertions2.length) { + this.print(node.source, node, true); + this.space(); + this._printAssertions(node); + } else { + this.print(node.source, node); + } + } + this.semicolon(); + } +} +function ExportDefaultDeclaration(node) { + { + if (this.format.decoratorsBeforeExport && isClassDeclaration(node.declaration)) { + this.printJoin(node.declaration.decorators, node); + } + } + this.word("export"); + this.noIndentInnerCommentsHere(); + this.space(); + this.word("default"); + this.space(); + const declar = node.declaration; + this.print(declar, node); + if (!isStatement(declar)) this.semicolon(); +} +function ImportDeclaration(node) { + var _node$assertions3; + this.word("import"); + this.space(); + const isTypeKind = node.importKind === "type" || node.importKind === "typeof"; + if (isTypeKind) { + this.noIndentInnerCommentsHere(); + this.word(node.importKind); + this.space(); + } else if (node.module) { + this.noIndentInnerCommentsHere(); + this.word("module"); + this.space(); + } + const specifiers = node.specifiers.slice(0); + const hasSpecifiers = !!specifiers.length; + while (hasSpecifiers) { + const first = specifiers[0]; + if (isImportDefaultSpecifier(first) || isImportNamespaceSpecifier(first)) { + this.print(specifiers.shift(), node); + if (specifiers.length) { + this.tokenChar(44); + this.space(); + } + } else { + break; + } + } + if (specifiers.length) { + this.tokenChar(123); + this.space(); + this.printList(specifiers, node); + this.space(); + this.tokenChar(125); + } else if (isTypeKind && !hasSpecifiers) { + this.tokenChar(123); + this.tokenChar(125); + } + if (hasSpecifiers || isTypeKind) { + this.space(); + this.word("from"); + this.space(); + } + if ((_node$assertions3 = node.assertions) != null && _node$assertions3.length) { + this.print(node.source, node, true); + this.space(); + this._printAssertions(node); + } else { + this.print(node.source, node); + } + { + var _node$attributes; + if ((_node$attributes = node.attributes) != null && _node$attributes.length) { + this.space(); + this.word("with"); + this.space(); + this.printList(node.attributes, node); + } + } + this.semicolon(); +} +function ImportAttribute(node) { + this.print(node.key); + this.tokenChar(58); + this.space(); + this.print(node.value); +} +function ImportNamespaceSpecifier(node) { + this.tokenChar(42); + this.space(); + this.word("as"); + this.space(); + this.print(node.local, node); +} + +//# sourceMappingURL=modules.js.map diff --git a/node_modules/@babel/generator/lib/generators/modules.js.map b/node_modules/@babel/generator/lib/generators/modules.js.map new file mode 100644 index 0000000..db8d9ed --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/modules.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isClassDeclaration","isExportDefaultSpecifier","isExportNamespaceSpecifier","isImportDefaultSpecifier","isImportNamespaceSpecifier","isStatement","ImportSpecifier","node","importKind","word","space","print","imported","local","name","ImportDefaultSpecifier","ExportDefaultSpecifier","exported","ExportSpecifier","exportKind","ExportNamespaceSpecifier","token","_printAssertions","printList","assertions","ExportAllDeclaration","length","source","semicolon","ExportNamedDeclaration","format","decoratorsBeforeExport","declaration","printJoin","decorators","declar","specifiers","slice","hasSpecial","first","shift","ExportDefaultDeclaration","noIndentInnerCommentsHere","ImportDeclaration","isTypeKind","module","hasSpecifiers","attributes","ImportAttribute","key","value","ImportNamespaceSpecifier"],"sources":["../../src/generators/modules.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport {\n isClassDeclaration,\n isExportDefaultSpecifier,\n isExportNamespaceSpecifier,\n isImportDefaultSpecifier,\n isImportNamespaceSpecifier,\n isStatement,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\nexport function ImportSpecifier(this: Printer, node: t.ImportSpecifier) {\n if (node.importKind === \"type\" || node.importKind === \"typeof\") {\n this.word(node.importKind);\n this.space();\n }\n\n this.print(node.imported, node);\n // @ts-expect-error todo(flow-ts) maybe check node type instead of relying on name to be undefined on t.StringLiteral\n if (node.local && node.local.name !== node.imported.name) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.local, node);\n }\n}\n\nexport function ImportDefaultSpecifier(\n this: Printer,\n node: t.ImportDefaultSpecifier,\n) {\n this.print(node.local, node);\n}\n\nexport function ExportDefaultSpecifier(\n this: Printer,\n node: t.ExportDefaultSpecifier,\n) {\n this.print(node.exported, node);\n}\n\nexport function ExportSpecifier(this: Printer, node: t.ExportSpecifier) {\n if (node.exportKind === \"type\") {\n this.word(\"type\");\n this.space();\n }\n\n this.print(node.local, node);\n // @ts-expect-error todo(flow-ts) maybe check node type instead of relying on name to be undefined on t.StringLiteral\n if (node.exported && node.local.name !== node.exported.name) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.exported, node);\n }\n}\n\nexport function ExportNamespaceSpecifier(\n this: Printer,\n node: t.ExportNamespaceSpecifier,\n) {\n this.token(\"*\");\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.exported, node);\n}\n\nexport function _printAssertions(\n this: Printer,\n node: Extract,\n) {\n this.word(\"assert\");\n this.space();\n this.token(\"{\");\n this.space();\n this.printList(node.assertions, node);\n this.space();\n this.token(\"}\");\n}\n\nexport function ExportAllDeclaration(\n this: Printer,\n node: t.ExportAllDeclaration | t.DeclareExportAllDeclaration,\n) {\n this.word(\"export\");\n this.space();\n if (node.exportKind === \"type\") {\n this.word(\"type\");\n this.space();\n }\n this.token(\"*\");\n this.space();\n this.word(\"from\");\n this.space();\n // @ts-expect-error Fixme: assertions is not defined in DeclareExportAllDeclaration\n if (node.assertions?.length) {\n this.print(node.source, node, true);\n this.space();\n // @ts-expect-error Fixme: assertions is not defined in DeclareExportAllDeclaration\n this._printAssertions(node);\n } else {\n this.print(node.source, node);\n }\n\n this.semicolon();\n}\n\nexport function ExportNamedDeclaration(\n this: Printer,\n node: t.ExportNamedDeclaration,\n) {\n if (!process.env.BABEL_8_BREAKING) {\n if (\n this.format.decoratorsBeforeExport &&\n isClassDeclaration(node.declaration)\n ) {\n this.printJoin(node.declaration.decorators, node);\n }\n }\n\n this.word(\"export\");\n this.space();\n if (node.declaration) {\n const declar = node.declaration;\n this.print(declar, node);\n if (!isStatement(declar)) this.semicolon();\n } else {\n if (node.exportKind === \"type\") {\n this.word(\"type\");\n this.space();\n }\n\n const specifiers = node.specifiers.slice(0);\n\n // print \"special\" specifiers first\n let hasSpecial = false;\n for (;;) {\n const first = specifiers[0];\n if (\n isExportDefaultSpecifier(first) ||\n isExportNamespaceSpecifier(first)\n ) {\n hasSpecial = true;\n this.print(specifiers.shift(), node);\n if (specifiers.length) {\n this.token(\",\");\n this.space();\n }\n } else {\n break;\n }\n }\n\n if (specifiers.length || (!specifiers.length && !hasSpecial)) {\n this.token(\"{\");\n if (specifiers.length) {\n this.space();\n this.printList(specifiers, node);\n this.space();\n }\n this.token(\"}\");\n }\n\n if (node.source) {\n this.space();\n this.word(\"from\");\n this.space();\n if (node.assertions?.length) {\n this.print(node.source, node, true);\n this.space();\n this._printAssertions(node);\n } else {\n this.print(node.source, node);\n }\n }\n\n this.semicolon();\n }\n}\n\nexport function ExportDefaultDeclaration(\n this: Printer,\n node: t.ExportDefaultDeclaration,\n) {\n if (!process.env.BABEL_8_BREAKING) {\n if (\n this.format.decoratorsBeforeExport &&\n isClassDeclaration(node.declaration)\n ) {\n this.printJoin(node.declaration.decorators, node);\n }\n }\n\n this.word(\"export\");\n this.noIndentInnerCommentsHere();\n this.space();\n this.word(\"default\");\n this.space();\n const declar = node.declaration;\n this.print(declar, node);\n if (!isStatement(declar)) this.semicolon();\n}\n\nexport function ImportDeclaration(this: Printer, node: t.ImportDeclaration) {\n this.word(\"import\");\n this.space();\n\n const isTypeKind = node.importKind === \"type\" || node.importKind === \"typeof\";\n if (isTypeKind) {\n this.noIndentInnerCommentsHere();\n this.word(node.importKind);\n this.space();\n } else if (node.module) {\n this.noIndentInnerCommentsHere();\n this.word(\"module\");\n this.space();\n }\n\n const specifiers = node.specifiers.slice(0);\n const hasSpecifiers = !!specifiers.length;\n // print \"special\" specifiers first. The loop condition is constant,\n // but there is a \"break\" in the body.\n while (hasSpecifiers) {\n const first = specifiers[0];\n if (isImportDefaultSpecifier(first) || isImportNamespaceSpecifier(first)) {\n this.print(specifiers.shift(), node);\n if (specifiers.length) {\n this.token(\",\");\n this.space();\n }\n } else {\n break;\n }\n }\n\n if (specifiers.length) {\n this.token(\"{\");\n this.space();\n this.printList(specifiers, node);\n this.space();\n this.token(\"}\");\n } else if (isTypeKind && !hasSpecifiers) {\n this.token(\"{\");\n this.token(\"}\");\n }\n\n if (hasSpecifiers || isTypeKind) {\n this.space();\n this.word(\"from\");\n this.space();\n }\n\n if (node.assertions?.length) {\n this.print(node.source, node, true);\n this.space();\n this._printAssertions(node);\n } else {\n this.print(node.source, node);\n }\n if (!process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 supports module attributes\n if (node.attributes?.length) {\n this.space();\n this.word(\"with\");\n this.space();\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 supports module attributes\n this.printList(node.attributes, node);\n }\n }\n\n this.semicolon();\n}\n\nexport function ImportAttribute(this: Printer, node: t.ImportAttribute) {\n this.print(node.key);\n this.token(\":\");\n this.space();\n this.print(node.value);\n}\n\nexport function ImportNamespaceSpecifier(\n this: Printer,\n node: t.ImportNamespaceSpecifier,\n) {\n this.token(\"*\");\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.local, node);\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/statements.js b/node_modules/@babel/generator/lib/generators/statements.js new file mode 100644 index 0000000..72a9e7e --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/statements.js @@ -0,0 +1,280 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.BreakStatement = BreakStatement; +exports.CatchClause = CatchClause; +exports.ContinueStatement = ContinueStatement; +exports.DebuggerStatement = DebuggerStatement; +exports.DoWhileStatement = DoWhileStatement; +exports.ForOfStatement = exports.ForInStatement = void 0; +exports.ForStatement = ForStatement; +exports.IfStatement = IfStatement; +exports.LabeledStatement = LabeledStatement; +exports.ReturnStatement = ReturnStatement; +exports.SwitchCase = SwitchCase; +exports.SwitchStatement = SwitchStatement; +exports.ThrowStatement = ThrowStatement; +exports.TryStatement = TryStatement; +exports.VariableDeclaration = VariableDeclaration; +exports.VariableDeclarator = VariableDeclarator; +exports.WhileStatement = WhileStatement; +exports.WithStatement = WithStatement; +var _t = require("@babel/types"); +const { + isFor, + isForStatement, + isIfStatement, + isStatement +} = _t; +function WithStatement(node) { + this.word("with"); + this.space(); + this.tokenChar(40); + this.print(node.object, node); + this.tokenChar(41); + this.printBlock(node); +} +function IfStatement(node) { + this.word("if"); + this.space(); + this.tokenChar(40); + this.print(node.test, node); + this.tokenChar(41); + this.space(); + const needsBlock = node.alternate && isIfStatement(getLastStatement(node.consequent)); + if (needsBlock) { + this.tokenChar(123); + this.newline(); + this.indent(); + } + this.printAndIndentOnComments(node.consequent, node); + if (needsBlock) { + this.dedent(); + this.newline(); + this.tokenChar(125); + } + if (node.alternate) { + if (this.endsWith(125)) this.space(); + this.word("else"); + this.space(); + this.printAndIndentOnComments(node.alternate, node); + } +} + +function getLastStatement(statement) { + const { + body + } = statement; + if (isStatement(body) === false) { + return statement; + } + return getLastStatement(body); +} +function ForStatement(node) { + this.word("for"); + this.space(); + this.tokenChar(40); + this.inForStatementInitCounter++; + this.print(node.init, node); + this.inForStatementInitCounter--; + this.tokenChar(59); + if (node.test) { + this.space(); + this.print(node.test, node); + } + this.tokenChar(59); + if (node.update) { + this.space(); + this.print(node.update, node); + } + this.tokenChar(41); + this.printBlock(node); +} +function WhileStatement(node) { + this.word("while"); + this.space(); + this.tokenChar(40); + this.print(node.test, node); + this.tokenChar(41); + this.printBlock(node); +} +function ForXStatement(node) { + this.word("for"); + this.space(); + const isForOf = node.type === "ForOfStatement"; + if (isForOf && node.await) { + this.word("await"); + this.space(); + } + this.noIndentInnerCommentsHere(); + this.tokenChar(40); + this.print(node.left, node); + this.space(); + this.word(isForOf ? "of" : "in"); + this.space(); + this.print(node.right, node); + this.tokenChar(41); + this.printBlock(node); +} +const ForInStatement = ForXStatement; +exports.ForInStatement = ForInStatement; +const ForOfStatement = ForXStatement; +exports.ForOfStatement = ForOfStatement; +function DoWhileStatement(node) { + this.word("do"); + this.space(); + this.print(node.body, node); + this.space(); + this.word("while"); + this.space(); + this.tokenChar(40); + this.print(node.test, node); + this.tokenChar(41); + this.semicolon(); +} +function printStatementAfterKeyword(printer, node, parent, isLabel) { + if (node) { + printer.space(); + printer.printTerminatorless(node, parent, isLabel); + } + printer.semicolon(); +} +function BreakStatement(node) { + this.word("break"); + printStatementAfterKeyword(this, node.label, node, true); +} +function ContinueStatement(node) { + this.word("continue"); + printStatementAfterKeyword(this, node.label, node, true); +} +function ReturnStatement(node) { + this.word("return"); + printStatementAfterKeyword(this, node.argument, node, false); +} +function ThrowStatement(node) { + this.word("throw"); + printStatementAfterKeyword(this, node.argument, node, false); +} +function LabeledStatement(node) { + this.print(node.label, node); + this.tokenChar(58); + this.space(); + this.print(node.body, node); +} +function TryStatement(node) { + this.word("try"); + this.space(); + this.print(node.block, node); + this.space(); + + if (node.handlers) { + this.print(node.handlers[0], node); + } else { + this.print(node.handler, node); + } + if (node.finalizer) { + this.space(); + this.word("finally"); + this.space(); + this.print(node.finalizer, node); + } +} +function CatchClause(node) { + this.word("catch"); + this.space(); + if (node.param) { + this.tokenChar(40); + this.print(node.param, node); + this.print(node.param.typeAnnotation, node); + this.tokenChar(41); + this.space(); + } + this.print(node.body, node); +} +function SwitchStatement(node) { + this.word("switch"); + this.space(); + this.tokenChar(40); + this.print(node.discriminant, node); + this.tokenChar(41); + this.space(); + this.tokenChar(123); + this.printSequence(node.cases, node, { + indent: true, + addNewlines(leading, cas) { + if (!leading && node.cases[node.cases.length - 1] === cas) return -1; + } + }); + this.tokenChar(125); +} +function SwitchCase(node) { + if (node.test) { + this.word("case"); + this.space(); + this.print(node.test, node); + this.tokenChar(58); + } else { + this.word("default"); + this.tokenChar(58); + } + if (node.consequent.length) { + this.newline(); + this.printSequence(node.consequent, node, { + indent: true + }); + } +} +function DebuggerStatement() { + this.word("debugger"); + this.semicolon(); +} +function VariableDeclaration(node, parent) { + if (node.declare) { + this.word("declare"); + this.space(); + } + const { + kind + } = node; + this.word(kind, kind === "using"); + this.space(); + let hasInits = false; + if (!isFor(parent)) { + for (const declar of node.declarations) { + if (declar.init) { + hasInits = true; + } + } + } + + this.printList(node.declarations, node, { + separator: hasInits ? function () { + this.tokenChar(44); + this.newline(); + } : undefined, + indent: node.declarations.length > 1 ? true : false + }); + if (isFor(parent)) { + if (isForStatement(parent)) { + if (parent.init === node) return; + } else { + if (parent.left === node) return; + } + } + this.semicolon(); +} +function VariableDeclarator(node) { + this.print(node.id, node); + if (node.definite) this.tokenChar(33); + this.print(node.id.typeAnnotation, node); + if (node.init) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.init, node); + } +} + +//# sourceMappingURL=statements.js.map diff --git a/node_modules/@babel/generator/lib/generators/statements.js.map b/node_modules/@babel/generator/lib/generators/statements.js.map new file mode 100644 index 0000000..a165f35 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/statements.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isFor","isForStatement","isIfStatement","isStatement","WithStatement","node","word","space","token","print","object","printBlock","IfStatement","test","needsBlock","alternate","getLastStatement","consequent","newline","indent","printAndIndentOnComments","dedent","endsWith","statement","body","ForStatement","inForStatementInitCounter","init","update","WhileStatement","ForXStatement","isForOf","type","await","noIndentInnerCommentsHere","left","right","ForInStatement","ForOfStatement","DoWhileStatement","semicolon","printStatementAfterKeyword","printer","parent","isLabel","printTerminatorless","BreakStatement","label","ContinueStatement","ReturnStatement","argument","ThrowStatement","LabeledStatement","TryStatement","block","handlers","handler","finalizer","CatchClause","param","typeAnnotation","SwitchStatement","discriminant","printSequence","cases","addNewlines","leading","cas","length","SwitchCase","DebuggerStatement","VariableDeclaration","declare","kind","hasInits","declar","declarations","printList","separator","undefined","VariableDeclarator","id","definite"],"sources":["../../src/generators/statements.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport {\n isFor,\n isForStatement,\n isIfStatement,\n isStatement,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport * as charCodes from \"charcodes\";\n\nexport function WithStatement(this: Printer, node: t.WithStatement) {\n this.word(\"with\");\n this.space();\n this.token(\"(\");\n this.print(node.object, node);\n this.token(\")\");\n this.printBlock(node);\n}\n\nexport function IfStatement(this: Printer, node: t.IfStatement) {\n this.word(\"if\");\n this.space();\n this.token(\"(\");\n this.print(node.test, node);\n this.token(\")\");\n this.space();\n\n const needsBlock =\n node.alternate && isIfStatement(getLastStatement(node.consequent));\n if (needsBlock) {\n this.token(\"{\");\n this.newline();\n this.indent();\n }\n\n this.printAndIndentOnComments(node.consequent, node);\n\n if (needsBlock) {\n this.dedent();\n this.newline();\n this.token(\"}\");\n }\n\n if (node.alternate) {\n if (this.endsWith(charCodes.rightCurlyBrace)) this.space();\n this.word(\"else\");\n this.space();\n this.printAndIndentOnComments(node.alternate, node);\n }\n}\n\n// Recursively get the last statement.\nfunction getLastStatement(statement: t.Statement): t.Statement {\n // @ts-expect-error: If statement.body is empty or not a Node, isStatement will return false\n const { body } = statement;\n if (isStatement(body) === false) {\n return statement;\n }\n\n return getLastStatement(body);\n}\n\nexport function ForStatement(this: Printer, node: t.ForStatement) {\n this.word(\"for\");\n this.space();\n this.token(\"(\");\n\n this.inForStatementInitCounter++;\n this.print(node.init, node);\n this.inForStatementInitCounter--;\n this.token(\";\");\n\n if (node.test) {\n this.space();\n this.print(node.test, node);\n }\n this.token(\";\");\n\n if (node.update) {\n this.space();\n this.print(node.update, node);\n }\n\n this.token(\")\");\n this.printBlock(node);\n}\n\nexport function WhileStatement(this: Printer, node: t.WhileStatement) {\n this.word(\"while\");\n this.space();\n this.token(\"(\");\n this.print(node.test, node);\n this.token(\")\");\n this.printBlock(node);\n}\n\nfunction ForXStatement(this: Printer, node: t.ForXStatement) {\n this.word(\"for\");\n this.space();\n const isForOf = node.type === \"ForOfStatement\";\n if (isForOf && node.await) {\n this.word(\"await\");\n this.space();\n }\n this.noIndentInnerCommentsHere();\n this.token(\"(\");\n this.print(node.left, node);\n this.space();\n this.word(isForOf ? \"of\" : \"in\");\n this.space();\n this.print(node.right, node);\n this.token(\")\");\n this.printBlock(node);\n}\n\nexport const ForInStatement = ForXStatement;\nexport const ForOfStatement = ForXStatement;\n\nexport function DoWhileStatement(this: Printer, node: t.DoWhileStatement) {\n this.word(\"do\");\n this.space();\n this.print(node.body, node);\n this.space();\n this.word(\"while\");\n this.space();\n this.token(\"(\");\n this.print(node.test, node);\n this.token(\")\");\n this.semicolon();\n}\n\nfunction printStatementAfterKeyword(\n printer: Printer,\n node: t.Node,\n parent: t.Node,\n isLabel: boolean,\n) {\n if (node) {\n printer.space();\n printer.printTerminatorless(node, parent, isLabel);\n }\n\n printer.semicolon();\n}\n\nexport function BreakStatement(this: Printer, node: t.ContinueStatement) {\n this.word(\"break\");\n printStatementAfterKeyword(this, node.label, node, true);\n}\n\nexport function ContinueStatement(this: Printer, node: t.ContinueStatement) {\n this.word(\"continue\");\n printStatementAfterKeyword(this, node.label, node, true);\n}\n\nexport function ReturnStatement(this: Printer, node: t.ReturnStatement) {\n this.word(\"return\");\n printStatementAfterKeyword(this, node.argument, node, false);\n}\n\nexport function ThrowStatement(this: Printer, node: t.ThrowStatement) {\n this.word(\"throw\");\n printStatementAfterKeyword(this, node.argument, node, false);\n}\n\nexport function LabeledStatement(this: Printer, node: t.LabeledStatement) {\n this.print(node.label, node);\n this.token(\":\");\n this.space();\n this.print(node.body, node);\n}\n\nexport function TryStatement(this: Printer, node: t.TryStatement) {\n this.word(\"try\");\n this.space();\n this.print(node.block, node);\n this.space();\n\n // Esprima bug puts the catch clause in a `handlers` array.\n // see https://code.google.com/p/esprima/issues/detail?id=433\n // We run into this from regenerator generated ast.\n // @ts-expect-error todo(flow->ts) should ast node type be updated to support this?\n if (node.handlers) {\n // @ts-expect-error todo(flow->ts) should ast node type be updated to support this?\n this.print(node.handlers[0], node);\n } else {\n this.print(node.handler, node);\n }\n\n if (node.finalizer) {\n this.space();\n this.word(\"finally\");\n this.space();\n this.print(node.finalizer, node);\n }\n}\n\nexport function CatchClause(this: Printer, node: t.CatchClause) {\n this.word(\"catch\");\n this.space();\n if (node.param) {\n this.token(\"(\");\n this.print(node.param, node);\n this.print(node.param.typeAnnotation, node);\n this.token(\")\");\n this.space();\n }\n this.print(node.body, node);\n}\n\nexport function SwitchStatement(this: Printer, node: t.SwitchStatement) {\n this.word(\"switch\");\n this.space();\n this.token(\"(\");\n this.print(node.discriminant, node);\n this.token(\")\");\n this.space();\n this.token(\"{\");\n\n this.printSequence(node.cases, node, {\n indent: true,\n addNewlines(leading, cas) {\n if (!leading && node.cases[node.cases.length - 1] === cas) return -1;\n },\n });\n\n this.token(\"}\");\n}\n\nexport function SwitchCase(this: Printer, node: t.SwitchCase) {\n if (node.test) {\n this.word(\"case\");\n this.space();\n this.print(node.test, node);\n this.token(\":\");\n } else {\n this.word(\"default\");\n this.token(\":\");\n }\n\n if (node.consequent.length) {\n this.newline();\n this.printSequence(node.consequent, node, { indent: true });\n }\n}\n\nexport function DebuggerStatement(this: Printer) {\n this.word(\"debugger\");\n this.semicolon();\n}\n\nexport function VariableDeclaration(\n this: Printer,\n node: t.VariableDeclaration,\n parent: t.Node,\n) {\n if (node.declare) {\n // TS\n this.word(\"declare\");\n this.space();\n }\n\n const { kind } = node;\n this.word(kind, kind === \"using\");\n this.space();\n\n let hasInits = false;\n // don't add whitespace to loop heads\n if (!isFor(parent)) {\n for (const declar of node.declarations) {\n if (declar.init) {\n // has an init so let's split it up over multiple lines\n hasInits = true;\n }\n }\n }\n\n //\n // use a pretty separator when we aren't in compact mode, have initializers and don't have retainLines on\n // this will format declarations like:\n //\n // let foo = \"bar\", bar = \"foo\";\n //\n // into\n //\n // let foo = \"bar\",\n // bar = \"foo\";\n //\n\n this.printList(node.declarations, node, {\n separator: hasInits\n ? function (this: Printer) {\n this.token(\",\");\n this.newline();\n }\n : undefined,\n indent: node.declarations.length > 1 ? true : false,\n });\n\n if (isFor(parent)) {\n // don't give semicolons to these nodes since they'll be inserted in the parent generator\n if (isForStatement(parent)) {\n if (parent.init === node) return;\n } else {\n if (parent.left === node) return;\n }\n }\n\n this.semicolon();\n}\n\nexport function VariableDeclarator(this: Printer, node: t.VariableDeclarator) {\n this.print(node.id, node);\n if (node.definite) this.token(\"!\"); // TS\n // @ts-expect-error todo(flow-ts) Property 'typeAnnotation' does not exist on type 'MemberExpression'.\n this.print(node.id.typeAnnotation, node);\n if (node.init) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.init, node);\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/template-literals.js b/node_modules/@babel/generator/lib/generators/template-literals.js new file mode 100644 index 0000000..737d33c --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/template-literals.js @@ -0,0 +1,30 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TaggedTemplateExpression = TaggedTemplateExpression; +exports.TemplateElement = TemplateElement; +exports.TemplateLiteral = TemplateLiteral; +function TaggedTemplateExpression(node) { + this.print(node.tag, node); + this.print(node.typeParameters, node); + this.print(node.quasi, node); +} +function TemplateElement(node, parent) { + const isFirst = parent.quasis[0] === node; + const isLast = parent.quasis[parent.quasis.length - 1] === node; + const value = (isFirst ? "`" : "}") + node.value.raw + (isLast ? "`" : "${"); + this.token(value, true); +} +function TemplateLiteral(node) { + const quasis = node.quasis; + for (let i = 0; i < quasis.length; i++) { + this.print(quasis[i], node); + if (i + 1 < quasis.length) { + this.print(node.expressions[i], node); + } + } +} + +//# sourceMappingURL=template-literals.js.map diff --git a/node_modules/@babel/generator/lib/generators/template-literals.js.map b/node_modules/@babel/generator/lib/generators/template-literals.js.map new file mode 100644 index 0000000..6d89ddb --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/template-literals.js.map @@ -0,0 +1 @@ +{"version":3,"names":["TaggedTemplateExpression","node","print","tag","typeParameters","quasi","TemplateElement","parent","isFirst","quasis","isLast","length","value","raw","token","TemplateLiteral","i","expressions"],"sources":["../../src/generators/template-literals.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport type * as t from \"@babel/types\";\n\nexport function TaggedTemplateExpression(\n this: Printer,\n node: t.TaggedTemplateExpression,\n) {\n this.print(node.tag, node);\n this.print(node.typeParameters, node); // TS\n this.print(node.quasi, node);\n}\n\nexport function TemplateElement(\n this: Printer,\n node: t.TemplateElement,\n parent: t.TemplateLiteral,\n) {\n const isFirst = parent.quasis[0] === node;\n const isLast = parent.quasis[parent.quasis.length - 1] === node;\n\n const value = (isFirst ? \"`\" : \"}\") + node.value.raw + (isLast ? \"`\" : \"${\");\n\n this.token(value, true);\n}\n\nexport function TemplateLiteral(this: Printer, node: t.TemplateLiteral) {\n const quasis = node.quasis;\n\n for (let i = 0; i < quasis.length; i++) {\n this.print(quasis[i], node);\n\n if (i + 1 < quasis.length) {\n this.print(node.expressions[i], node);\n }\n }\n}\n"],"mappings":";;;;;;;;AAGO,SAASA,wBAAwB,CAEtCC,IAAgC,EAChC;EACA,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,GAAG,EAAEF,IAAI,CAAC;EAC1B,IAAI,CAACC,KAAK,CAACD,IAAI,CAACG,cAAc,EAAEH,IAAI,CAAC;EACrC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACI,KAAK,EAAEJ,IAAI,CAAC;AAC9B;AAEO,SAASK,eAAe,CAE7BL,IAAuB,EACvBM,MAAyB,EACzB;EACA,MAAMC,OAAO,GAAGD,MAAM,CAACE,MAAM,CAAC,CAAC,CAAC,KAAKR,IAAI;EACzC,MAAMS,MAAM,GAAGH,MAAM,CAACE,MAAM,CAACF,MAAM,CAACE,MAAM,CAACE,MAAM,GAAG,CAAC,CAAC,KAAKV,IAAI;EAE/D,MAAMW,KAAK,GAAG,CAACJ,OAAO,GAAG,GAAG,GAAG,GAAG,IAAIP,IAAI,CAACW,KAAK,CAACC,GAAG,IAAIH,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;EAE5E,IAAI,CAACI,KAAK,CAACF,KAAK,EAAE,IAAI,CAAC;AACzB;AAEO,SAASG,eAAe,CAAgBd,IAAuB,EAAE;EACtE,MAAMQ,MAAM,GAAGR,IAAI,CAACQ,MAAM;EAE1B,KAAK,IAAIO,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGP,MAAM,CAACE,MAAM,EAAEK,CAAC,EAAE,EAAE;IACtC,IAAI,CAACd,KAAK,CAACO,MAAM,CAACO,CAAC,CAAC,EAAEf,IAAI,CAAC;IAE3B,IAAIe,CAAC,GAAG,CAAC,GAAGP,MAAM,CAACE,MAAM,EAAE;MACzB,IAAI,CAACT,KAAK,CAACD,IAAI,CAACgB,WAAW,CAACD,CAAC,CAAC,EAAEf,IAAI,CAAC;IACvC;EACF;AACF"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/types.js b/node_modules/@babel/generator/lib/generators/types.js new file mode 100644 index 0000000..a13edbb --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/types.js @@ -0,0 +1,224 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ArgumentPlaceholder = ArgumentPlaceholder; +exports.ArrayPattern = exports.ArrayExpression = ArrayExpression; +exports.BigIntLiteral = BigIntLiteral; +exports.BooleanLiteral = BooleanLiteral; +exports.DecimalLiteral = DecimalLiteral; +exports.Identifier = Identifier; +exports.NullLiteral = NullLiteral; +exports.NumericLiteral = NumericLiteral; +exports.ObjectPattern = exports.ObjectExpression = ObjectExpression; +exports.ObjectMethod = ObjectMethod; +exports.ObjectProperty = ObjectProperty; +exports.PipelineBareFunction = PipelineBareFunction; +exports.PipelinePrimaryTopicReference = PipelinePrimaryTopicReference; +exports.PipelineTopicExpression = PipelineTopicExpression; +exports.RecordExpression = RecordExpression; +exports.RegExpLiteral = RegExpLiteral; +exports.SpreadElement = exports.RestElement = RestElement; +exports.StringLiteral = StringLiteral; +exports.TopicReference = TopicReference; +exports.TupleExpression = TupleExpression; +var _t = require("@babel/types"); +var _jsesc = require("jsesc"); +const { + isAssignmentPattern, + isIdentifier +} = _t; +function Identifier(node) { + this.word(node.name); +} +function ArgumentPlaceholder() { + this.tokenChar(63); +} +function RestElement(node) { + this.token("..."); + this.print(node.argument, node); +} +function ObjectExpression(node) { + const props = node.properties; + this.tokenChar(123); + if (props.length) { + this.space(); + this.printList(props, node, { + indent: true, + statement: true + }); + this.space(); + } + this.sourceWithOffset("end", node.loc, 0, -1); + this.tokenChar(125); +} +function ObjectMethod(node) { + this.printJoin(node.decorators, node); + this._methodHead(node); + this.space(); + this.print(node.body, node); +} +function ObjectProperty(node) { + this.printJoin(node.decorators, node); + if (node.computed) { + this.tokenChar(91); + this.print(node.key, node); + this.tokenChar(93); + } else { + if (isAssignmentPattern(node.value) && isIdentifier(node.key) && + node.key.name === node.value.left.name) { + this.print(node.value, node); + return; + } + this.print(node.key, node); + + if (node.shorthand && isIdentifier(node.key) && isIdentifier(node.value) && node.key.name === node.value.name) { + return; + } + } + this.tokenChar(58); + this.space(); + this.print(node.value, node); +} +function ArrayExpression(node) { + const elems = node.elements; + const len = elems.length; + this.tokenChar(91); + for (let i = 0; i < elems.length; i++) { + const elem = elems[i]; + if (elem) { + if (i > 0) this.space(); + this.print(elem, node); + if (i < len - 1) this.tokenChar(44); + } else { + this.tokenChar(44); + } + } + this.tokenChar(93); +} +function RecordExpression(node) { + const props = node.properties; + let startToken; + let endToken; + if (this.format.recordAndTupleSyntaxType === "bar") { + startToken = "{|"; + endToken = "|}"; + } else if (this.format.recordAndTupleSyntaxType !== "hash" && this.format.recordAndTupleSyntaxType != null) { + throw new Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`); + } else { + startToken = "#{"; + endToken = "}"; + } + this.token(startToken); + if (props.length) { + this.space(); + this.printList(props, node, { + indent: true, + statement: true + }); + this.space(); + } + this.token(endToken); +} +function TupleExpression(node) { + const elems = node.elements; + const len = elems.length; + let startToken; + let endToken; + if (this.format.recordAndTupleSyntaxType === "bar") { + startToken = "[|"; + endToken = "|]"; + } else if (this.format.recordAndTupleSyntaxType === "hash") { + startToken = "#["; + endToken = "]"; + } else { + throw new Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`); + } + this.token(startToken); + for (let i = 0; i < elems.length; i++) { + const elem = elems[i]; + if (elem) { + if (i > 0) this.space(); + this.print(elem, node); + if (i < len - 1) this.tokenChar(44); + } + } + this.token(endToken); +} +function RegExpLiteral(node) { + this.word(`/${node.pattern}/${node.flags}`); +} +function BooleanLiteral(node) { + this.word(node.value ? "true" : "false"); +} +function NullLiteral() { + this.word("null"); +} +function NumericLiteral(node) { + const raw = this.getPossibleRaw(node); + const opts = this.format.jsescOption; + const value = node.value + ""; + if (opts.numbers) { + this.number(_jsesc(node.value, opts)); + } else if (raw == null) { + this.number(value); + } else if (this.format.minified) { + this.number(raw.length < value.length ? raw : value); + } else { + this.number(raw); + } +} +function StringLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.token(raw); + return; + } + const val = _jsesc(node.value, Object.assign(this.format.jsescOption, this.format.jsonCompatibleStrings && { + json: true + })); + return this.token(val); +} +function BigIntLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.word(raw); + return; + } + this.word(node.value + "n"); +} +function DecimalLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.word(raw); + return; + } + this.word(node.value + "m"); +} + +const validTopicTokenSet = new Set(["^^", "@@", "^", "%", "#"]); +function TopicReference() { + const { + topicToken + } = this.format; + if (validTopicTokenSet.has(topicToken)) { + this.token(topicToken); + } else { + const givenTopicTokenJSON = JSON.stringify(topicToken); + const validTopics = Array.from(validTopicTokenSet, v => JSON.stringify(v)); + throw new Error(`The "topicToken" generator option must be one of ` + `${validTopics.join(", ")} (${givenTopicTokenJSON} received instead).`); + } +} + +function PipelineTopicExpression(node) { + this.print(node.expression, node); +} +function PipelineBareFunction(node) { + this.print(node.callee, node); +} +function PipelinePrimaryTopicReference() { + this.tokenChar(35); +} + +//# sourceMappingURL=types.js.map diff --git a/node_modules/@babel/generator/lib/generators/types.js.map b/node_modules/@babel/generator/lib/generators/types.js.map new file mode 100644 index 0000000..5b0afb5 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/types.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isAssignmentPattern","isIdentifier","Identifier","node","word","name","ArgumentPlaceholder","token","RestElement","print","argument","ObjectExpression","props","properties","length","space","printList","indent","statement","sourceWithOffset","loc","ObjectMethod","printJoin","decorators","_methodHead","body","ObjectProperty","computed","key","value","left","shorthand","ArrayExpression","elems","elements","len","i","elem","RecordExpression","startToken","endToken","format","recordAndTupleSyntaxType","Error","JSON","stringify","TupleExpression","RegExpLiteral","pattern","flags","BooleanLiteral","NullLiteral","NumericLiteral","raw","getPossibleRaw","opts","jsescOption","numbers","number","jsesc","minified","StringLiteral","undefined","val","Object","assign","jsonCompatibleStrings","json","BigIntLiteral","DecimalLiteral","validTopicTokenSet","Set","TopicReference","topicToken","has","givenTopicTokenJSON","validTopics","Array","from","v","join","PipelineTopicExpression","expression","PipelineBareFunction","callee","PipelinePrimaryTopicReference"],"sources":["../../src/generators/types.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport { isAssignmentPattern, isIdentifier } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport jsesc from \"jsesc\";\n\nexport function Identifier(this: Printer, node: t.Identifier) {\n this.word(node.name);\n}\n\nexport function ArgumentPlaceholder(this: Printer) {\n this.token(\"?\");\n}\n\nexport function RestElement(this: Printer, node: t.RestElement) {\n this.token(\"...\");\n this.print(node.argument, node);\n}\n\nexport { RestElement as SpreadElement };\n\nexport function ObjectExpression(this: Printer, node: t.ObjectExpression) {\n const props = node.properties;\n\n this.token(\"{\");\n\n if (props.length) {\n this.space();\n this.printList(props, node, { indent: true, statement: true });\n this.space();\n }\n\n this.sourceWithOffset(\"end\", node.loc, 0, -1);\n\n this.token(\"}\");\n}\n\nexport { ObjectExpression as ObjectPattern };\n\nexport function ObjectMethod(this: Printer, node: t.ObjectMethod) {\n this.printJoin(node.decorators, node);\n this._methodHead(node);\n this.space();\n this.print(node.body, node);\n}\n\nexport function ObjectProperty(this: Printer, node: t.ObjectProperty) {\n this.printJoin(node.decorators, node);\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key, node);\n this.token(\"]\");\n } else {\n // print `({ foo: foo = 5 } = {})` as `({ foo = 5 } = {});`\n if (\n isAssignmentPattern(node.value) &&\n isIdentifier(node.key) &&\n // @ts-expect-error todo(flow->ts) `.name` does not exist on some types in union\n node.key.name === node.value.left.name\n ) {\n this.print(node.value, node);\n return;\n }\n\n this.print(node.key, node);\n\n // shorthand!\n if (\n node.shorthand &&\n isIdentifier(node.key) &&\n isIdentifier(node.value) &&\n node.key.name === node.value.name\n ) {\n return;\n }\n }\n\n this.token(\":\");\n this.space();\n this.print(node.value, node);\n}\n\nexport function ArrayExpression(this: Printer, node: t.ArrayExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n this.token(\"[\");\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem, node);\n if (i < len - 1) this.token(\",\");\n } else {\n // If the array expression ends with a hole, that hole\n // will be ignored by the interpreter, but if it ends with\n // two (or more) holes, we need to write out two (or more)\n // commas so that the resulting code is interpreted with\n // both (all) of the holes.\n this.token(\",\");\n }\n }\n\n this.token(\"]\");\n}\n\nexport { ArrayExpression as ArrayPattern };\n\nexport function RecordExpression(this: Printer, node: t.RecordExpression) {\n const props = node.properties;\n\n let startToken;\n let endToken;\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"{|\";\n endToken = \"|}\";\n } else if (\n this.format.recordAndTupleSyntaxType !== \"hash\" &&\n this.format.recordAndTupleSyntaxType != null\n ) {\n throw new Error(\n `The \"recordAndTupleSyntaxType\" generator option must be \"bar\" or \"hash\" (${JSON.stringify(\n this.format.recordAndTupleSyntaxType,\n )} received).`,\n );\n } else {\n startToken = \"#{\";\n endToken = \"}\";\n }\n\n this.token(startToken);\n\n if (props.length) {\n this.space();\n this.printList(props, node, { indent: true, statement: true });\n this.space();\n }\n this.token(endToken);\n}\n\nexport function TupleExpression(this: Printer, node: t.TupleExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n let startToken;\n let endToken;\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"[|\";\n endToken = \"|]\";\n } else if (this.format.recordAndTupleSyntaxType === \"hash\") {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n throw new Error(\n `${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`,\n );\n }\n\n this.token(startToken);\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem, node);\n if (i < len - 1) this.token(\",\");\n }\n }\n\n this.token(endToken);\n}\n\nexport function RegExpLiteral(this: Printer, node: t.RegExpLiteral) {\n this.word(`/${node.pattern}/${node.flags}`);\n}\n\nexport function BooleanLiteral(this: Printer, node: t.BooleanLiteral) {\n this.word(node.value ? \"true\" : \"false\");\n}\n\nexport function NullLiteral(this: Printer) {\n this.word(\"null\");\n}\n\nexport function NumericLiteral(this: Printer, node: t.NumericLiteral) {\n const raw = this.getPossibleRaw(node);\n const opts = this.format.jsescOption;\n const value = node.value + \"\";\n if (opts.numbers) {\n this.number(jsesc(node.value, opts));\n } else if (raw == null) {\n this.number(value); // normalize\n } else if (this.format.minified) {\n this.number(raw.length < value.length ? raw : value);\n } else {\n this.number(raw);\n }\n}\n\nexport function StringLiteral(this: Printer, node: t.StringLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.token(raw);\n return;\n }\n\n const val = jsesc(\n node.value,\n process.env.BABEL_8_BREAKING\n ? this.format.jsescOption\n : Object.assign(\n this.format.jsescOption,\n this.format.jsonCompatibleStrings && { json: true },\n ),\n );\n\n return this.token(val);\n}\n\nexport function BigIntLiteral(this: Printer, node: t.BigIntLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"n\");\n}\n\nexport function DecimalLiteral(this: Printer, node: t.DecimalLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"m\");\n}\n\n// Hack pipe operator\nconst validTopicTokenSet = new Set([\"^^\", \"@@\", \"^\", \"%\", \"#\"]);\nexport function TopicReference(this: Printer) {\n const { topicToken } = this.format;\n\n if (validTopicTokenSet.has(topicToken)) {\n this.token(topicToken);\n } else {\n const givenTopicTokenJSON = JSON.stringify(topicToken);\n const validTopics = Array.from(validTopicTokenSet, v => JSON.stringify(v));\n throw new Error(\n `The \"topicToken\" generator option must be one of ` +\n `${validTopics.join(\", \")} (${givenTopicTokenJSON} received instead).`,\n );\n }\n}\n\n// Smart-mix pipe operator\nexport function PipelineTopicExpression(\n this: Printer,\n node: t.PipelineTopicExpression,\n) {\n this.print(node.expression, node);\n}\n\nexport function PipelineBareFunction(\n this: Printer,\n node: t.PipelineBareFunction,\n) {\n this.print(node.callee, node);\n}\n\nexport function PipelinePrimaryTopicReference(this: Printer) {\n this.token(\"#\");\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/typescript.js b/node_modules/@babel/generator/lib/generators/typescript.js new file mode 100644 index 0000000..5662465 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/typescript.js @@ -0,0 +1,697 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TSAnyKeyword = TSAnyKeyword; +exports.TSArrayType = TSArrayType; +exports.TSSatisfiesExpression = exports.TSAsExpression = TSTypeExpression; +exports.TSBigIntKeyword = TSBigIntKeyword; +exports.TSBooleanKeyword = TSBooleanKeyword; +exports.TSCallSignatureDeclaration = TSCallSignatureDeclaration; +exports.TSConditionalType = TSConditionalType; +exports.TSConstructSignatureDeclaration = TSConstructSignatureDeclaration; +exports.TSConstructorType = TSConstructorType; +exports.TSDeclareFunction = TSDeclareFunction; +exports.TSDeclareMethod = TSDeclareMethod; +exports.TSEnumDeclaration = TSEnumDeclaration; +exports.TSEnumMember = TSEnumMember; +exports.TSExportAssignment = TSExportAssignment; +exports.TSExpressionWithTypeArguments = TSExpressionWithTypeArguments; +exports.TSExternalModuleReference = TSExternalModuleReference; +exports.TSFunctionType = TSFunctionType; +exports.TSImportEqualsDeclaration = TSImportEqualsDeclaration; +exports.TSImportType = TSImportType; +exports.TSIndexSignature = TSIndexSignature; +exports.TSIndexedAccessType = TSIndexedAccessType; +exports.TSInferType = TSInferType; +exports.TSInstantiationExpression = TSInstantiationExpression; +exports.TSInterfaceBody = TSInterfaceBody; +exports.TSInterfaceDeclaration = TSInterfaceDeclaration; +exports.TSIntersectionType = TSIntersectionType; +exports.TSIntrinsicKeyword = TSIntrinsicKeyword; +exports.TSLiteralType = TSLiteralType; +exports.TSMappedType = TSMappedType; +exports.TSMethodSignature = TSMethodSignature; +exports.TSModuleBlock = TSModuleBlock; +exports.TSModuleDeclaration = TSModuleDeclaration; +exports.TSNamedTupleMember = TSNamedTupleMember; +exports.TSNamespaceExportDeclaration = TSNamespaceExportDeclaration; +exports.TSNeverKeyword = TSNeverKeyword; +exports.TSNonNullExpression = TSNonNullExpression; +exports.TSNullKeyword = TSNullKeyword; +exports.TSNumberKeyword = TSNumberKeyword; +exports.TSObjectKeyword = TSObjectKeyword; +exports.TSOptionalType = TSOptionalType; +exports.TSParameterProperty = TSParameterProperty; +exports.TSParenthesizedType = TSParenthesizedType; +exports.TSPropertySignature = TSPropertySignature; +exports.TSQualifiedName = TSQualifiedName; +exports.TSRestType = TSRestType; +exports.TSStringKeyword = TSStringKeyword; +exports.TSSymbolKeyword = TSSymbolKeyword; +exports.TSThisType = TSThisType; +exports.TSTupleType = TSTupleType; +exports.TSTypeAliasDeclaration = TSTypeAliasDeclaration; +exports.TSTypeAnnotation = TSTypeAnnotation; +exports.TSTypeAssertion = TSTypeAssertion; +exports.TSTypeLiteral = TSTypeLiteral; +exports.TSTypeOperator = TSTypeOperator; +exports.TSTypeParameter = TSTypeParameter; +exports.TSTypeParameterDeclaration = exports.TSTypeParameterInstantiation = TSTypeParameterInstantiation; +exports.TSTypePredicate = TSTypePredicate; +exports.TSTypeQuery = TSTypeQuery; +exports.TSTypeReference = TSTypeReference; +exports.TSUndefinedKeyword = TSUndefinedKeyword; +exports.TSUnionType = TSUnionType; +exports.TSUnknownKeyword = TSUnknownKeyword; +exports.TSVoidKeyword = TSVoidKeyword; +exports.tsPrintClassMemberModifiers = tsPrintClassMemberModifiers; +exports.tsPrintFunctionOrConstructorType = tsPrintFunctionOrConstructorType; +exports.tsPrintPropertyOrMethodName = tsPrintPropertyOrMethodName; +exports.tsPrintSignatureDeclarationBase = tsPrintSignatureDeclarationBase; +exports.tsPrintTypeLiteralOrInterfaceBody = tsPrintTypeLiteralOrInterfaceBody; +function TSTypeAnnotation(node) { + this.tokenChar(58); + this.space(); + if (node.optional) this.tokenChar(63); + this.print(node.typeAnnotation, node); +} +function TSTypeParameterInstantiation(node, parent) { + this.tokenChar(60); + this.printList(node.params, node, {}); + if (parent.type === "ArrowFunctionExpression" && node.params.length === 1) { + this.tokenChar(44); + } + this.tokenChar(62); +} +function TSTypeParameter(node) { + if (node.in) { + this.word("in"); + this.space(); + } + if (node.out) { + this.word("out"); + this.space(); + } + this.word(node.name); + if (node.constraint) { + this.space(); + this.word("extends"); + this.space(); + this.print(node.constraint, node); + } + if (node.default) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.default, node); + } +} +function TSParameterProperty(node) { + if (node.accessibility) { + this.word(node.accessibility); + this.space(); + } + if (node.readonly) { + this.word("readonly"); + this.space(); + } + this._param(node.parameter); +} +function TSDeclareFunction(node) { + if (node.declare) { + this.word("declare"); + this.space(); + } + this._functionHead(node); + this.tokenChar(59); +} +function TSDeclareMethod(node) { + this._classMethodHead(node); + this.tokenChar(59); +} +function TSQualifiedName(node) { + this.print(node.left, node); + this.tokenChar(46); + this.print(node.right, node); +} +function TSCallSignatureDeclaration(node) { + this.tsPrintSignatureDeclarationBase(node); + this.tokenChar(59); +} +function TSConstructSignatureDeclaration(node) { + this.word("new"); + this.space(); + this.tsPrintSignatureDeclarationBase(node); + this.tokenChar(59); +} +function TSPropertySignature(node) { + const { + readonly, + initializer + } = node; + if (readonly) { + this.word("readonly"); + this.space(); + } + this.tsPrintPropertyOrMethodName(node); + this.print(node.typeAnnotation, node); + if (initializer) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(initializer, node); + } + this.tokenChar(59); +} +function tsPrintPropertyOrMethodName(node) { + if (node.computed) { + this.tokenChar(91); + } + this.print(node.key, node); + if (node.computed) { + this.tokenChar(93); + } + if (node.optional) { + this.tokenChar(63); + } +} +function TSMethodSignature(node) { + const { + kind + } = node; + if (kind === "set" || kind === "get") { + this.word(kind); + this.space(); + } + this.tsPrintPropertyOrMethodName(node); + this.tsPrintSignatureDeclarationBase(node); + this.tokenChar(59); +} +function TSIndexSignature(node) { + const { + readonly, + static: isStatic + } = node; + if (isStatic) { + this.word("static"); + this.space(); + } + if (readonly) { + this.word("readonly"); + this.space(); + } + this.tokenChar(91); + this._parameters(node.parameters, node); + this.tokenChar(93); + this.print(node.typeAnnotation, node); + this.tokenChar(59); +} +function TSAnyKeyword() { + this.word("any"); +} +function TSBigIntKeyword() { + this.word("bigint"); +} +function TSUnknownKeyword() { + this.word("unknown"); +} +function TSNumberKeyword() { + this.word("number"); +} +function TSObjectKeyword() { + this.word("object"); +} +function TSBooleanKeyword() { + this.word("boolean"); +} +function TSStringKeyword() { + this.word("string"); +} +function TSSymbolKeyword() { + this.word("symbol"); +} +function TSVoidKeyword() { + this.word("void"); +} +function TSUndefinedKeyword() { + this.word("undefined"); +} +function TSNullKeyword() { + this.word("null"); +} +function TSNeverKeyword() { + this.word("never"); +} +function TSIntrinsicKeyword() { + this.word("intrinsic"); +} +function TSThisType() { + this.word("this"); +} +function TSFunctionType(node) { + this.tsPrintFunctionOrConstructorType(node); +} +function TSConstructorType(node) { + if (node.abstract) { + this.word("abstract"); + this.space(); + } + this.word("new"); + this.space(); + this.tsPrintFunctionOrConstructorType(node); +} +function tsPrintFunctionOrConstructorType(node) { + const { + typeParameters + } = node; + const parameters = + node.parameters; + this.print(typeParameters, node); + this.tokenChar(40); + this._parameters(parameters, node); + this.tokenChar(41); + this.space(); + this.token("=>"); + this.space(); + const returnType = + node.typeAnnotation; + this.print(returnType.typeAnnotation, node); +} +function TSTypeReference(node) { + this.print(node.typeName, node, true); + this.print(node.typeParameters, node, true); +} +function TSTypePredicate(node) { + if (node.asserts) { + this.word("asserts"); + this.space(); + } + this.print(node.parameterName); + if (node.typeAnnotation) { + this.space(); + this.word("is"); + this.space(); + this.print(node.typeAnnotation.typeAnnotation); + } +} +function TSTypeQuery(node) { + this.word("typeof"); + this.space(); + this.print(node.exprName); + if (node.typeParameters) { + this.print(node.typeParameters, node); + } +} +function TSTypeLiteral(node) { + this.tsPrintTypeLiteralOrInterfaceBody(node.members, node); +} +function tsPrintTypeLiteralOrInterfaceBody(members, node) { + tsPrintBraced(this, members, node); +} +function tsPrintBraced(printer, members, node) { + printer.token("{"); + if (members.length) { + printer.indent(); + printer.newline(); + for (const member of members) { + printer.print(member, node); + printer.newline(); + } + printer.dedent(); + } + printer.sourceWithOffset("end", node.loc, 0, -1); + printer.rightBrace(); +} +function TSArrayType(node) { + this.print(node.elementType, node, true); + this.token("[]"); +} +function TSTupleType(node) { + this.tokenChar(91); + this.printList(node.elementTypes, node); + this.tokenChar(93); +} +function TSOptionalType(node) { + this.print(node.typeAnnotation, node); + this.tokenChar(63); +} +function TSRestType(node) { + this.token("..."); + this.print(node.typeAnnotation, node); +} +function TSNamedTupleMember(node) { + this.print(node.label, node); + if (node.optional) this.tokenChar(63); + this.tokenChar(58); + this.space(); + this.print(node.elementType, node); +} +function TSUnionType(node) { + tsPrintUnionOrIntersectionType(this, node, "|"); +} +function TSIntersectionType(node) { + tsPrintUnionOrIntersectionType(this, node, "&"); +} +function tsPrintUnionOrIntersectionType(printer, node, sep) { + printer.printJoin(node.types, node, { + separator() { + this.space(); + this.token(sep); + this.space(); + } + }); +} +function TSConditionalType(node) { + this.print(node.checkType); + this.space(); + this.word("extends"); + this.space(); + this.print(node.extendsType); + this.space(); + this.tokenChar(63); + this.space(); + this.print(node.trueType); + this.space(); + this.tokenChar(58); + this.space(); + this.print(node.falseType); +} +function TSInferType(node) { + this.token("infer"); + this.space(); + this.print(node.typeParameter); +} +function TSParenthesizedType(node) { + this.tokenChar(40); + this.print(node.typeAnnotation, node); + this.tokenChar(41); +} +function TSTypeOperator(node) { + this.word(node.operator); + this.space(); + this.print(node.typeAnnotation, node); +} +function TSIndexedAccessType(node) { + this.print(node.objectType, node, true); + this.tokenChar(91); + this.print(node.indexType, node); + this.tokenChar(93); +} +function TSMappedType(node) { + const { + nameType, + optional, + readonly, + typeParameter + } = node; + this.tokenChar(123); + this.space(); + if (readonly) { + tokenIfPlusMinus(this, readonly); + this.word("readonly"); + this.space(); + } + this.tokenChar(91); + this.word(typeParameter.name); + this.space(); + this.word("in"); + this.space(); + this.print(typeParameter.constraint, typeParameter); + if (nameType) { + this.space(); + this.word("as"); + this.space(); + this.print(nameType, node); + } + this.tokenChar(93); + if (optional) { + tokenIfPlusMinus(this, optional); + this.tokenChar(63); + } + this.tokenChar(58); + this.space(); + this.print(node.typeAnnotation, node); + this.space(); + this.tokenChar(125); +} +function tokenIfPlusMinus(self, tok) { + if (tok !== true) { + self.token(tok); + } +} +function TSLiteralType(node) { + this.print(node.literal, node); +} +function TSExpressionWithTypeArguments(node) { + this.print(node.expression, node); + this.print(node.typeParameters, node); +} +function TSInterfaceDeclaration(node) { + const { + declare, + id, + typeParameters, + extends: extendz, + body + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + this.word("interface"); + this.space(); + this.print(id, node); + this.print(typeParameters, node); + if (extendz != null && extendz.length) { + this.space(); + this.word("extends"); + this.space(); + this.printList(extendz, node); + } + this.space(); + this.print(body, node); +} +function TSInterfaceBody(node) { + this.tsPrintTypeLiteralOrInterfaceBody(node.body, node); +} +function TSTypeAliasDeclaration(node) { + const { + declare, + id, + typeParameters, + typeAnnotation + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + this.word("type"); + this.space(); + this.print(id, node); + this.print(typeParameters, node); + this.space(); + this.tokenChar(61); + this.space(); + this.print(typeAnnotation, node); + this.tokenChar(59); +} +function TSTypeExpression(node) { + var _expression$trailingC; + const { + type, + expression, + typeAnnotation + } = node; + const forceParens = !!((_expression$trailingC = expression.trailingComments) != null && _expression$trailingC.length); + this.print(expression, node, true, undefined, forceParens); + this.space(); + this.word(type === "TSAsExpression" ? "as" : "satisfies"); + this.space(); + this.print(typeAnnotation, node); +} +function TSTypeAssertion(node) { + const { + typeAnnotation, + expression + } = node; + this.tokenChar(60); + this.print(typeAnnotation, node); + this.tokenChar(62); + this.space(); + this.print(expression, node); +} +function TSInstantiationExpression(node) { + this.print(node.expression, node); + this.print(node.typeParameters, node); +} +function TSEnumDeclaration(node) { + const { + declare, + const: isConst, + id, + members + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + if (isConst) { + this.word("const"); + this.space(); + } + this.word("enum"); + this.space(); + this.print(id, node); + this.space(); + tsPrintBraced(this, members, node); +} +function TSEnumMember(node) { + const { + id, + initializer + } = node; + this.print(id, node); + if (initializer) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(initializer, node); + } + this.tokenChar(44); +} +function TSModuleDeclaration(node) { + const { + declare, + id + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + if (!node.global) { + this.word(id.type === "Identifier" ? "namespace" : "module"); + this.space(); + } + this.print(id, node); + if (!node.body) { + this.tokenChar(59); + return; + } + let body = node.body; + while (body.type === "TSModuleDeclaration") { + this.tokenChar(46); + this.print(body.id, body); + body = body.body; + } + this.space(); + this.print(body, node); +} +function TSModuleBlock(node) { + tsPrintBraced(this, node.body, node); +} +function TSImportType(node) { + const { + argument, + qualifier, + typeParameters + } = node; + this.word("import"); + this.tokenChar(40); + this.print(argument, node); + this.tokenChar(41); + if (qualifier) { + this.tokenChar(46); + this.print(qualifier, node); + } + if (typeParameters) { + this.print(typeParameters, node); + } +} +function TSImportEqualsDeclaration(node) { + const { + isExport, + id, + moduleReference + } = node; + if (isExport) { + this.word("export"); + this.space(); + } + this.word("import"); + this.space(); + this.print(id, node); + this.space(); + this.tokenChar(61); + this.space(); + this.print(moduleReference, node); + this.tokenChar(59); +} +function TSExternalModuleReference(node) { + this.token("require("); + this.print(node.expression, node); + this.tokenChar(41); +} +function TSNonNullExpression(node) { + this.print(node.expression, node); + this.tokenChar(33); +} +function TSExportAssignment(node) { + this.word("export"); + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.expression, node); + this.tokenChar(59); +} +function TSNamespaceExportDeclaration(node) { + this.word("export"); + this.space(); + this.word("as"); + this.space(); + this.word("namespace"); + this.space(); + this.print(node.id, node); +} +function tsPrintSignatureDeclarationBase(node) { + const { + typeParameters + } = node; + const parameters = node.parameters; + this.print(typeParameters, node); + this.tokenChar(40); + this._parameters(parameters, node); + this.tokenChar(41); + const returnType = node.typeAnnotation; + this.print(returnType, node); +} +function tsPrintClassMemberModifiers(node) { + const isField = node.type === "ClassAccessorProperty" || node.type === "ClassProperty"; + if (isField && node.declare) { + this.word("declare"); + this.space(); + } + if (node.accessibility) { + this.word(node.accessibility); + this.space(); + } + if (node.static) { + this.word("static"); + this.space(); + } + if (node.override) { + this.word("override"); + this.space(); + } + if (node.abstract) { + this.word("abstract"); + this.space(); + } + if (isField && node.readonly) { + this.word("readonly"); + this.space(); + } +} + +//# sourceMappingURL=typescript.js.map diff --git a/node_modules/@babel/generator/lib/generators/typescript.js.map b/node_modules/@babel/generator/lib/generators/typescript.js.map new file mode 100644 index 0000000..fa65acc --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/typescript.js.map @@ -0,0 +1 @@ +{"version":3,"names":["TSTypeAnnotation","node","token","space","optional","print","typeAnnotation","TSTypeParameterInstantiation","parent","printList","params","type","length","TSTypeParameter","in","word","out","name","constraint","default","TSParameterProperty","accessibility","readonly","_param","parameter","TSDeclareFunction","declare","_functionHead","TSDeclareMethod","_classMethodHead","TSQualifiedName","left","right","TSCallSignatureDeclaration","tsPrintSignatureDeclarationBase","TSConstructSignatureDeclaration","TSPropertySignature","initializer","tsPrintPropertyOrMethodName","computed","key","TSMethodSignature","kind","TSIndexSignature","static","isStatic","_parameters","parameters","TSAnyKeyword","TSBigIntKeyword","TSUnknownKeyword","TSNumberKeyword","TSObjectKeyword","TSBooleanKeyword","TSStringKeyword","TSSymbolKeyword","TSVoidKeyword","TSUndefinedKeyword","TSNullKeyword","TSNeverKeyword","TSIntrinsicKeyword","TSThisType","TSFunctionType","tsPrintFunctionOrConstructorType","TSConstructorType","abstract","typeParameters","returnType","TSTypeReference","typeName","TSTypePredicate","asserts","parameterName","TSTypeQuery","exprName","TSTypeLiteral","tsPrintTypeLiteralOrInterfaceBody","members","tsPrintBraced","printer","indent","newline","member","dedent","sourceWithOffset","loc","rightBrace","TSArrayType","elementType","TSTupleType","elementTypes","TSOptionalType","TSRestType","TSNamedTupleMember","label","TSUnionType","tsPrintUnionOrIntersectionType","TSIntersectionType","sep","printJoin","types","separator","TSConditionalType","checkType","extendsType","trueType","falseType","TSInferType","typeParameter","TSParenthesizedType","TSTypeOperator","operator","TSIndexedAccessType","objectType","indexType","TSMappedType","nameType","tokenIfPlusMinus","self","tok","TSLiteralType","literal","TSExpressionWithTypeArguments","expression","TSInterfaceDeclaration","id","extends","extendz","body","TSInterfaceBody","TSTypeAliasDeclaration","TSTypeExpression","forceParens","trailingComments","undefined","TSTypeAssertion","TSInstantiationExpression","TSEnumDeclaration","const","isConst","TSEnumMember","TSModuleDeclaration","global","TSModuleBlock","TSImportType","argument","qualifier","TSImportEqualsDeclaration","isExport","moduleReference","TSExternalModuleReference","TSNonNullExpression","TSExportAssignment","TSNamespaceExportDeclaration","tsPrintClassMemberModifiers","isField","override"],"sources":["../../src/generators/typescript.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport type * as t from \"@babel/types\";\n\nexport function TSTypeAnnotation(this: Printer, node: t.TSTypeAnnotation) {\n this.token(\":\");\n this.space();\n // @ts-expect-error todo(flow->ts) can this be removed? `.optional` looks to be not existing property\n if (node.optional) this.token(\"?\");\n this.print(node.typeAnnotation, node);\n}\n\nexport function TSTypeParameterInstantiation(\n this: Printer,\n node: t.TSTypeParameterInstantiation,\n parent: t.Node,\n): void {\n this.token(\"<\");\n this.printList(node.params, node, {});\n if (parent.type === \"ArrowFunctionExpression\" && node.params.length === 1) {\n this.token(\",\");\n }\n this.token(\">\");\n}\n\nexport { TSTypeParameterInstantiation as TSTypeParameterDeclaration };\n\nexport function TSTypeParameter(this: Printer, node: t.TSTypeParameter) {\n if (node.in) {\n this.word(\"in\");\n this.space();\n }\n\n if (node.out) {\n this.word(\"out\");\n this.space();\n }\n\n this.word(\n !process.env.BABEL_8_BREAKING\n ? (node.name as unknown as string)\n : (node.name as unknown as t.Identifier).name,\n );\n\n if (node.constraint) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.constraint, node);\n }\n\n if (node.default) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.default, node);\n }\n}\n\nexport function TSParameterProperty(\n this: Printer,\n node: t.TSParameterProperty,\n) {\n if (node.accessibility) {\n this.word(node.accessibility);\n this.space();\n }\n\n if (node.readonly) {\n this.word(\"readonly\");\n this.space();\n }\n\n this._param(node.parameter);\n}\n\nexport function TSDeclareFunction(this: Printer, node: t.TSDeclareFunction) {\n if (node.declare) {\n this.word(\"declare\");\n this.space();\n }\n this._functionHead(node);\n this.token(\";\");\n}\n\nexport function TSDeclareMethod(this: Printer, node: t.TSDeclareMethod) {\n this._classMethodHead(node);\n this.token(\";\");\n}\n\nexport function TSQualifiedName(this: Printer, node: t.TSQualifiedName) {\n this.print(node.left, node);\n this.token(\".\");\n this.print(node.right, node);\n}\n\nexport function TSCallSignatureDeclaration(\n this: Printer,\n node: t.TSCallSignatureDeclaration,\n) {\n this.tsPrintSignatureDeclarationBase(node);\n this.token(\";\");\n}\n\nexport function TSConstructSignatureDeclaration(\n this: Printer,\n node: t.TSConstructSignatureDeclaration,\n) {\n this.word(\"new\");\n this.space();\n this.tsPrintSignatureDeclarationBase(node);\n this.token(\";\");\n}\n\nexport function TSPropertySignature(\n this: Printer,\n node: t.TSPropertySignature,\n) {\n const { readonly, initializer } = node;\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.tsPrintPropertyOrMethodName(node);\n this.print(node.typeAnnotation, node);\n if (initializer) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(initializer, node);\n }\n this.token(\";\");\n}\n\nexport function tsPrintPropertyOrMethodName(\n this: Printer,\n node: t.TSPropertySignature | t.TSMethodSignature,\n) {\n if (node.computed) {\n this.token(\"[\");\n }\n this.print(node.key, node);\n if (node.computed) {\n this.token(\"]\");\n }\n if (node.optional) {\n this.token(\"?\");\n }\n}\n\nexport function TSMethodSignature(this: Printer, node: t.TSMethodSignature) {\n const { kind } = node;\n if (kind === \"set\" || kind === \"get\") {\n this.word(kind);\n this.space();\n }\n this.tsPrintPropertyOrMethodName(node);\n this.tsPrintSignatureDeclarationBase(node);\n this.token(\";\");\n}\n\nexport function TSIndexSignature(this: Printer, node: t.TSIndexSignature) {\n const { readonly, static: isStatic } = node;\n if (isStatic) {\n this.word(\"static\");\n this.space();\n }\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.token(\"[\");\n this._parameters(node.parameters, node);\n this.token(\"]\");\n this.print(node.typeAnnotation, node);\n this.token(\";\");\n}\n\nexport function TSAnyKeyword(this: Printer) {\n this.word(\"any\");\n}\nexport function TSBigIntKeyword(this: Printer) {\n this.word(\"bigint\");\n}\nexport function TSUnknownKeyword(this: Printer) {\n this.word(\"unknown\");\n}\nexport function TSNumberKeyword(this: Printer) {\n this.word(\"number\");\n}\nexport function TSObjectKeyword(this: Printer) {\n this.word(\"object\");\n}\nexport function TSBooleanKeyword(this: Printer) {\n this.word(\"boolean\");\n}\nexport function TSStringKeyword(this: Printer) {\n this.word(\"string\");\n}\nexport function TSSymbolKeyword(this: Printer) {\n this.word(\"symbol\");\n}\nexport function TSVoidKeyword(this: Printer) {\n this.word(\"void\");\n}\nexport function TSUndefinedKeyword(this: Printer) {\n this.word(\"undefined\");\n}\nexport function TSNullKeyword(this: Printer) {\n this.word(\"null\");\n}\nexport function TSNeverKeyword(this: Printer) {\n this.word(\"never\");\n}\nexport function TSIntrinsicKeyword(this: Printer) {\n this.word(\"intrinsic\");\n}\n\nexport function TSThisType(this: Printer) {\n this.word(\"this\");\n}\n\nexport function TSFunctionType(this: Printer, node: t.TSFunctionType) {\n this.tsPrintFunctionOrConstructorType(node);\n}\n\nexport function TSConstructorType(this: Printer, node: t.TSConstructorType) {\n if (node.abstract) {\n this.word(\"abstract\");\n this.space();\n }\n this.word(\"new\");\n this.space();\n this.tsPrintFunctionOrConstructorType(node);\n}\n\nexport function tsPrintFunctionOrConstructorType(\n this: Printer,\n node: t.TSFunctionType | t.TSConstructorType,\n) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.params\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.parameters;\n this.print(typeParameters, node);\n this.token(\"(\");\n this._parameters(parameters, node);\n this.token(\")\");\n this.space();\n this.token(\"=>\");\n this.space();\n const returnType = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.typeAnnotation;\n this.print(returnType.typeAnnotation, node);\n}\n\nexport function TSTypeReference(this: Printer, node: t.TSTypeReference) {\n this.print(node.typeName, node, true);\n this.print(node.typeParameters, node, true);\n}\n\nexport function TSTypePredicate(this: Printer, node: t.TSTypePredicate) {\n if (node.asserts) {\n this.word(\"asserts\");\n this.space();\n }\n this.print(node.parameterName);\n if (node.typeAnnotation) {\n this.space();\n this.word(\"is\");\n this.space();\n this.print(node.typeAnnotation.typeAnnotation);\n }\n}\n\nexport function TSTypeQuery(this: Printer, node: t.TSTypeQuery) {\n this.word(\"typeof\");\n this.space();\n this.print(node.exprName);\n\n if (node.typeParameters) {\n this.print(node.typeParameters, node);\n }\n}\n\nexport function TSTypeLiteral(this: Printer, node: t.TSTypeLiteral) {\n this.tsPrintTypeLiteralOrInterfaceBody(node.members, node);\n}\n\nexport function tsPrintTypeLiteralOrInterfaceBody(\n this: Printer,\n members: t.TSTypeElement[],\n node: t.TSType | t.TSInterfaceBody,\n) {\n tsPrintBraced(this, members, node);\n}\n\nfunction tsPrintBraced(printer: Printer, members: t.Node[], node: t.Node) {\n printer.token(\"{\");\n if (members.length) {\n printer.indent();\n printer.newline();\n for (const member of members) {\n printer.print(member, node);\n //this.token(sep);\n printer.newline();\n }\n printer.dedent();\n }\n\n printer.sourceWithOffset(\"end\", node.loc, 0, -1);\n\n printer.rightBrace();\n}\n\nexport function TSArrayType(this: Printer, node: t.TSArrayType) {\n this.print(node.elementType, node, true);\n\n this.token(\"[]\");\n}\n\nexport function TSTupleType(this: Printer, node: t.TSTupleType) {\n this.token(\"[\");\n this.printList(node.elementTypes, node);\n this.token(\"]\");\n}\n\nexport function TSOptionalType(this: Printer, node: t.TSOptionalType) {\n this.print(node.typeAnnotation, node);\n this.token(\"?\");\n}\n\nexport function TSRestType(this: Printer, node: t.TSRestType) {\n this.token(\"...\");\n this.print(node.typeAnnotation, node);\n}\n\nexport function TSNamedTupleMember(this: Printer, node: t.TSNamedTupleMember) {\n this.print(node.label, node);\n if (node.optional) this.token(\"?\");\n this.token(\":\");\n this.space();\n this.print(node.elementType, node);\n}\n\nexport function TSUnionType(this: Printer, node: t.TSUnionType) {\n tsPrintUnionOrIntersectionType(this, node, \"|\");\n}\n\nexport function TSIntersectionType(this: Printer, node: t.TSIntersectionType) {\n tsPrintUnionOrIntersectionType(this, node, \"&\");\n}\n\nfunction tsPrintUnionOrIntersectionType(\n printer: Printer,\n node: t.TSUnionType | t.TSIntersectionType,\n sep: \"|\" | \"&\",\n) {\n printer.printJoin(node.types, node, {\n separator() {\n this.space();\n this.token(sep);\n this.space();\n },\n });\n}\n\nexport function TSConditionalType(this: Printer, node: t.TSConditionalType) {\n this.print(node.checkType);\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.extendsType);\n this.space();\n this.token(\"?\");\n this.space();\n this.print(node.trueType);\n this.space();\n this.token(\":\");\n this.space();\n this.print(node.falseType);\n}\n\nexport function TSInferType(this: Printer, node: t.TSInferType) {\n this.token(\"infer\");\n this.space();\n this.print(node.typeParameter);\n}\n\nexport function TSParenthesizedType(\n this: Printer,\n node: t.TSParenthesizedType,\n) {\n this.token(\"(\");\n this.print(node.typeAnnotation, node);\n this.token(\")\");\n}\n\nexport function TSTypeOperator(this: Printer, node: t.TSTypeOperator) {\n this.word(node.operator);\n this.space();\n this.print(node.typeAnnotation, node);\n}\n\nexport function TSIndexedAccessType(\n this: Printer,\n node: t.TSIndexedAccessType,\n) {\n this.print(node.objectType, node, true);\n this.token(\"[\");\n this.print(node.indexType, node);\n this.token(\"]\");\n}\n\nexport function TSMappedType(this: Printer, node: t.TSMappedType) {\n const { nameType, optional, readonly, typeParameter } = node;\n this.token(\"{\");\n this.space();\n if (readonly) {\n tokenIfPlusMinus(this, readonly);\n this.word(\"readonly\");\n this.space();\n }\n\n this.token(\"[\");\n this.word(\n !process.env.BABEL_8_BREAKING\n ? (typeParameter.name as unknown as string)\n : (typeParameter.name as unknown as t.Identifier).name,\n );\n this.space();\n this.word(\"in\");\n this.space();\n this.print(typeParameter.constraint, typeParameter);\n\n if (nameType) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(nameType, node);\n }\n\n this.token(\"]\");\n\n if (optional) {\n tokenIfPlusMinus(this, optional);\n this.token(\"?\");\n }\n this.token(\":\");\n this.space();\n this.print(node.typeAnnotation, node);\n this.space();\n this.token(\"}\");\n}\n\nfunction tokenIfPlusMinus(self: Printer, tok: true | \"+\" | \"-\") {\n if (tok !== true) {\n self.token(tok);\n }\n}\n\nexport function TSLiteralType(this: Printer, node: t.TSLiteralType) {\n this.print(node.literal, node);\n}\n\nexport function TSExpressionWithTypeArguments(\n this: Printer,\n node: t.TSExpressionWithTypeArguments,\n) {\n this.print(node.expression, node);\n this.print(node.typeParameters, node);\n}\n\nexport function TSInterfaceDeclaration(\n this: Printer,\n node: t.TSInterfaceDeclaration,\n) {\n const { declare, id, typeParameters, extends: extendz, body } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"interface\");\n this.space();\n this.print(id, node);\n this.print(typeParameters, node);\n if (extendz?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(extendz, node);\n }\n this.space();\n this.print(body, node);\n}\n\nexport function TSInterfaceBody(this: Printer, node: t.TSInterfaceBody) {\n this.tsPrintTypeLiteralOrInterfaceBody(node.body, node);\n}\n\nexport function TSTypeAliasDeclaration(\n this: Printer,\n node: t.TSTypeAliasDeclaration,\n) {\n const { declare, id, typeParameters, typeAnnotation } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"type\");\n this.space();\n this.print(id, node);\n this.print(typeParameters, node);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(typeAnnotation, node);\n this.token(\";\");\n}\n\nfunction TSTypeExpression(\n this: Printer,\n node: t.TSAsExpression | t.TSSatisfiesExpression,\n) {\n const { type, expression, typeAnnotation } = node;\n const forceParens = !!expression.trailingComments?.length;\n this.print(expression, node, true, undefined, forceParens);\n this.space();\n this.word(type === \"TSAsExpression\" ? \"as\" : \"satisfies\");\n this.space();\n this.print(typeAnnotation, node);\n}\n\nexport {\n TSTypeExpression as TSAsExpression,\n TSTypeExpression as TSSatisfiesExpression,\n};\n\nexport function TSTypeAssertion(this: Printer, node: t.TSTypeAssertion) {\n const { typeAnnotation, expression } = node;\n this.token(\"<\");\n this.print(typeAnnotation, node);\n this.token(\">\");\n this.space();\n this.print(expression, node);\n}\n\nexport function TSInstantiationExpression(\n this: Printer,\n node: t.TSInstantiationExpression,\n) {\n this.print(node.expression, node);\n this.print(node.typeParameters, node);\n}\n\nexport function TSEnumDeclaration(this: Printer, node: t.TSEnumDeclaration) {\n const { declare, const: isConst, id, members } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n if (isConst) {\n this.word(\"const\");\n this.space();\n }\n this.word(\"enum\");\n this.space();\n this.print(id, node);\n this.space();\n tsPrintBraced(this, members, node);\n}\n\nexport function TSEnumMember(this: Printer, node: t.TSEnumMember) {\n const { id, initializer } = node;\n this.print(id, node);\n if (initializer) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(initializer, node);\n }\n this.token(\",\");\n}\n\nexport function TSModuleDeclaration(\n this: Printer,\n node: t.TSModuleDeclaration,\n) {\n const { declare, id } = node;\n\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n\n if (!node.global) {\n this.word(id.type === \"Identifier\" ? \"namespace\" : \"module\");\n this.space();\n }\n this.print(id, node);\n\n if (!node.body) {\n this.token(\";\");\n return;\n }\n\n let body = node.body;\n while (body.type === \"TSModuleDeclaration\") {\n this.token(\".\");\n this.print(body.id, body);\n body = body.body;\n }\n\n this.space();\n this.print(body, node);\n}\n\nexport function TSModuleBlock(this: Printer, node: t.TSModuleBlock) {\n tsPrintBraced(this, node.body, node);\n}\n\nexport function TSImportType(this: Printer, node: t.TSImportType) {\n const { argument, qualifier, typeParameters } = node;\n this.word(\"import\");\n this.token(\"(\");\n this.print(argument, node);\n this.token(\")\");\n if (qualifier) {\n this.token(\".\");\n this.print(qualifier, node);\n }\n if (typeParameters) {\n this.print(typeParameters, node);\n }\n}\n\nexport function TSImportEqualsDeclaration(\n this: Printer,\n node: t.TSImportEqualsDeclaration,\n) {\n const { isExport, id, moduleReference } = node;\n if (isExport) {\n this.word(\"export\");\n this.space();\n }\n this.word(\"import\");\n this.space();\n this.print(id, node);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(moduleReference, node);\n this.token(\";\");\n}\n\nexport function TSExternalModuleReference(\n this: Printer,\n node: t.TSExternalModuleReference,\n) {\n this.token(\"require(\");\n this.print(node.expression, node);\n this.token(\")\");\n}\n\nexport function TSNonNullExpression(\n this: Printer,\n node: t.TSNonNullExpression,\n) {\n this.print(node.expression, node);\n this.token(\"!\");\n}\n\nexport function TSExportAssignment(this: Printer, node: t.TSExportAssignment) {\n this.word(\"export\");\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.expression, node);\n this.token(\";\");\n}\n\nexport function TSNamespaceExportDeclaration(\n this: Printer,\n node: t.TSNamespaceExportDeclaration,\n) {\n this.word(\"export\");\n this.space();\n this.word(\"as\");\n this.space();\n this.word(\"namespace\");\n this.space();\n this.print(node.id, node);\n}\n\nexport function tsPrintSignatureDeclarationBase(this: Printer, node: any) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? node.params\n : node.parameters;\n this.print(typeParameters, node);\n this.token(\"(\");\n this._parameters(parameters, node);\n this.token(\")\");\n const returnType = process.env.BABEL_8_BREAKING\n ? node.returnType\n : node.typeAnnotation;\n this.print(returnType, node);\n}\n\nexport function tsPrintClassMemberModifiers(\n this: Printer,\n node:\n | t.ClassProperty\n | t.ClassAccessorProperty\n | t.ClassMethod\n | t.ClassPrivateMethod\n | t.TSDeclareMethod,\n) {\n const isField =\n node.type === \"ClassAccessorProperty\" || node.type === \"ClassProperty\";\n if (isField && node.declare) {\n this.word(\"declare\");\n this.space();\n }\n if (node.accessibility) {\n this.word(node.accessibility);\n this.space();\n }\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n if (node.override) {\n this.word(\"override\");\n this.space();\n }\n if (node.abstract) {\n this.word(\"abstract\");\n this.space();\n }\n if (isField && node.readonly) {\n this.word(\"readonly\");\n this.space();\n }\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/index.js b/node_modules/@babel/generator/lib/index.js new file mode 100644 index 0000000..4fee1ef --- /dev/null +++ b/node_modules/@babel/generator/lib/index.js @@ -0,0 +1,98 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.CodeGenerator = void 0; +exports.default = generate; +var _sourceMap = require("./source-map"); +var _printer = require("./printer"); + +class Generator extends _printer.default { + constructor(ast, opts = {}, code) { + const format = normalizeOptions(code, opts); + const map = opts.sourceMaps ? new _sourceMap.default(opts, code) : null; + super(format, map); + this.ast = void 0; + this.ast = ast; + } + + generate() { + return super.generate(this.ast); + } +} + +function normalizeOptions(code, opts) { + const format = { + auxiliaryCommentBefore: opts.auxiliaryCommentBefore, + auxiliaryCommentAfter: opts.auxiliaryCommentAfter, + shouldPrintComment: opts.shouldPrintComment, + retainLines: opts.retainLines, + retainFunctionParens: opts.retainFunctionParens, + comments: opts.comments == null || opts.comments, + compact: opts.compact, + minified: opts.minified, + concise: opts.concise, + indent: { + adjustMultilineComment: true, + style: " " + }, + jsescOption: Object.assign({ + quotes: "double", + wrap: true, + minimal: false + }, opts.jsescOption), + recordAndTupleSyntaxType: opts.recordAndTupleSyntaxType, + topicToken: opts.topicToken + }; + { + format.decoratorsBeforeExport = !!opts.decoratorsBeforeExport; + format.jsonCompatibleStrings = opts.jsonCompatibleStrings; + } + if (format.minified) { + format.compact = true; + format.shouldPrintComment = format.shouldPrintComment || (() => format.comments); + } else { + format.shouldPrintComment = format.shouldPrintComment || (value => format.comments || value.includes("@license") || value.includes("@preserve")); + } + if (format.compact === "auto") { + format.compact = code.length > 500000; + + if (format.compact) { + console.error("[BABEL] Note: The code generator has deoptimised the styling of " + `${opts.filename} as it exceeds the max of ${"500KB"}.`); + } + } + if (format.compact) { + format.indent.adjustMultilineComment = false; + } + const { + auxiliaryCommentBefore, + auxiliaryCommentAfter, + shouldPrintComment + } = format; + if (auxiliaryCommentBefore && !shouldPrintComment(auxiliaryCommentBefore)) { + format.auxiliaryCommentBefore = undefined; + } + if (auxiliaryCommentAfter && !shouldPrintComment(auxiliaryCommentAfter)) { + format.auxiliaryCommentAfter = undefined; + } + return format; +} + +class CodeGenerator { + constructor(ast, opts, code) { + this._generator = void 0; + this._generator = new Generator(ast, opts, code); + } + generate() { + return this._generator.generate(); + } +} + +exports.CodeGenerator = CodeGenerator; +function generate(ast, opts, code) { + const gen = new Generator(ast, opts, code); + return gen.generate(); +} + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/generator/lib/index.js.map b/node_modules/@babel/generator/lib/index.js.map new file mode 100644 index 0000000..61b9032 --- /dev/null +++ b/node_modules/@babel/generator/lib/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["Generator","Printer","constructor","ast","opts","code","format","normalizeOptions","map","sourceMaps","SourceMap","generate","auxiliaryCommentBefore","auxiliaryCommentAfter","shouldPrintComment","retainLines","retainFunctionParens","comments","compact","minified","concise","indent","adjustMultilineComment","style","jsescOption","quotes","wrap","minimal","recordAndTupleSyntaxType","topicToken","decoratorsBeforeExport","jsonCompatibleStrings","value","includes","length","console","error","filename","undefined","CodeGenerator","_generator","gen"],"sources":["../src/index.ts"],"sourcesContent":["import SourceMap from \"./source-map\";\nimport Printer from \"./printer\";\nimport type * as t from \"@babel/types\";\nimport type { Opts as jsescOptions } from \"jsesc\";\nimport type { Format } from \"./printer\";\nimport type {\n RecordAndTuplePluginOptions,\n PipelineOperatorPluginOptions,\n} from \"@babel/parser\";\nimport type { DecodedSourceMap, Mapping } from \"@jridgewell/gen-mapping\";\n\n/**\n * Babel's code generator, turns an ast into code, maintaining sourcemaps,\n * user preferences, and valid output.\n */\n\nclass Generator extends Printer {\n constructor(\n ast: t.Node,\n opts: GeneratorOptions = {},\n code: string | { [filename: string]: string },\n ) {\n const format = normalizeOptions(code, opts);\n const map = opts.sourceMaps ? new SourceMap(opts, code) : null;\n super(format, map);\n\n this.ast = ast;\n }\n\n ast: t.Node;\n\n /**\n * Generate code and sourcemap from ast.\n *\n * Appends comments that weren't attached to any node to the end of the generated output.\n */\n\n generate() {\n return super.generate(this.ast);\n }\n}\n\n/**\n * Normalize generator options, setting defaults.\n *\n * - Detects code indentation.\n * - If `opts.compact = \"auto\"` and the code is over 500KB, `compact` will be set to `true`.\n */\n\nfunction normalizeOptions(\n code: string | { [filename: string]: string },\n opts: GeneratorOptions,\n): Format {\n const format: Format = {\n auxiliaryCommentBefore: opts.auxiliaryCommentBefore,\n auxiliaryCommentAfter: opts.auxiliaryCommentAfter,\n shouldPrintComment: opts.shouldPrintComment,\n retainLines: opts.retainLines,\n retainFunctionParens: opts.retainFunctionParens,\n comments: opts.comments == null || opts.comments,\n compact: opts.compact,\n minified: opts.minified,\n concise: opts.concise,\n indent: {\n adjustMultilineComment: true,\n style: \" \",\n },\n jsescOption: {\n quotes: \"double\",\n wrap: true,\n minimal: process.env.BABEL_8_BREAKING ? true : false,\n ...opts.jsescOption,\n },\n recordAndTupleSyntaxType: opts.recordAndTupleSyntaxType,\n topicToken: opts.topicToken,\n };\n\n if (!process.env.BABEL_8_BREAKING) {\n format.decoratorsBeforeExport = !!opts.decoratorsBeforeExport;\n format.jsonCompatibleStrings = opts.jsonCompatibleStrings;\n }\n\n if (format.minified) {\n format.compact = true;\n\n format.shouldPrintComment =\n format.shouldPrintComment || (() => format.comments);\n } else {\n format.shouldPrintComment =\n format.shouldPrintComment ||\n (value =>\n format.comments ||\n value.includes(\"@license\") ||\n value.includes(\"@preserve\"));\n }\n\n if (format.compact === \"auto\") {\n format.compact = code.length > 500_000; // 500KB\n\n if (format.compact) {\n console.error(\n \"[BABEL] Note: The code generator has deoptimised the styling of \" +\n `${opts.filename} as it exceeds the max of ${\"500KB\"}.`,\n );\n }\n }\n\n if (format.compact) {\n format.indent.adjustMultilineComment = false;\n }\n\n const { auxiliaryCommentBefore, auxiliaryCommentAfter, shouldPrintComment } =\n format;\n\n if (auxiliaryCommentBefore && !shouldPrintComment(auxiliaryCommentBefore)) {\n format.auxiliaryCommentBefore = undefined;\n }\n if (auxiliaryCommentAfter && !shouldPrintComment(auxiliaryCommentAfter)) {\n format.auxiliaryCommentAfter = undefined;\n }\n\n return format;\n}\n\nexport interface GeneratorOptions {\n /**\n * Optional string to add as a block comment at the start of the output file.\n */\n auxiliaryCommentBefore?: string;\n\n /**\n * Optional string to add as a block comment at the end of the output file.\n */\n auxiliaryCommentAfter?: string;\n\n /**\n * Function that takes a comment (as a string) and returns true if the comment should be included in the output.\n * By default, comments are included if `opts.comments` is `true` or if `opts.minifed` is `false` and the comment\n * contains `@preserve` or `@license`.\n */\n shouldPrintComment?(comment: string): boolean;\n\n /**\n * Attempt to use the same line numbers in the output code as in the source code (helps preserve stack traces).\n * Defaults to `false`.\n */\n retainLines?: boolean;\n\n /**\n * Retain parens around function expressions (could be used to change engine parsing behavior)\n * Defaults to `false`.\n */\n retainFunctionParens?: boolean;\n\n /**\n * Should comments be included in output? Defaults to `true`.\n */\n comments?: boolean;\n\n /**\n * Set to true to avoid adding whitespace for formatting. Defaults to the value of `opts.minified`.\n */\n compact?: boolean | \"auto\";\n\n /**\n * Should the output be minified. Defaults to `false`.\n */\n minified?: boolean;\n\n /**\n * Set to true to reduce whitespace (but not as much as opts.compact). Defaults to `false`.\n */\n concise?: boolean;\n\n /**\n * Used in warning messages\n */\n filename?: string;\n\n /**\n * Enable generating source maps. Defaults to `false`.\n */\n sourceMaps?: boolean;\n\n /**\n * A root for all relative URLs in the source map.\n */\n sourceRoot?: string;\n\n /**\n * The filename for the source code (i.e. the code in the `code` argument).\n * This will only be used if `code` is a string.\n */\n sourceFileName?: string;\n\n /**\n * Set to true to run jsesc with \"json\": true to print \"\\u00A9\" vs. \"©\";\n * @deprecated use `jsescOptions: { json: true }` instead\n */\n jsonCompatibleStrings?: boolean;\n\n /**\n * Set to true to enable support for experimental decorators syntax before module exports.\n * Defaults to `false`.\n * @deprecated Removed in Babel 8\n */\n decoratorsBeforeExport?: boolean;\n\n /**\n * Options for outputting jsesc representation.\n */\n jsescOption?: jsescOptions;\n\n /**\n * For use with the recordAndTuple token.\n */\n recordAndTupleSyntaxType?: RecordAndTuplePluginOptions[\"syntaxType\"];\n /**\n * For use with the Hack-style pipe operator.\n * Changes what token is used for pipe bodies’ topic references.\n */\n topicToken?: PipelineOperatorPluginOptions[\"topicToken\"];\n}\n\nexport interface GeneratorResult {\n code: string;\n map: {\n version: number;\n sources: readonly string[];\n names: readonly string[];\n sourceRoot?: string;\n sourcesContent?: readonly string[];\n mappings: string;\n file?: string;\n } | null;\n decodedMap: DecodedSourceMap | undefined;\n rawMappings: Mapping[] | undefined;\n}\n\n/**\n * We originally exported the Generator class above, but to make it extra clear that it is a private API,\n * we have moved that to an internal class instance and simplified the interface to the two public methods\n * that we wish to support.\n */\n\nexport class CodeGenerator {\n private _generator: Generator;\n constructor(ast: t.Node, opts?: GeneratorOptions, code?: string) {\n this._generator = new Generator(ast, opts, code);\n }\n generate(): GeneratorResult {\n return this._generator.generate();\n }\n}\n\n/**\n * Turns an AST into code, maintaining sourcemaps, user preferences, and valid output.\n * @param ast - the abstract syntax tree from which to generate output code.\n * @param opts - used for specifying options for code generation.\n * @param code - the original source code, used for source maps.\n * @returns - an object containing the output code and source map.\n */\nexport default function generate(\n ast: t.Node,\n opts?: GeneratorOptions,\n code?: string | { [filename: string]: string },\n) {\n const gen = new Generator(ast, opts, code);\n return gen.generate();\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/node/index.js b/node_modules/@babel/generator/lib/node/index.js new file mode 100644 index 0000000..d42879d --- /dev/null +++ b/node_modules/@babel/generator/lib/node/index.js @@ -0,0 +1,79 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.needsParens = needsParens; +exports.needsWhitespace = needsWhitespace; +exports.needsWhitespaceAfter = needsWhitespaceAfter; +exports.needsWhitespaceBefore = needsWhitespaceBefore; +var whitespace = require("./whitespace"); +var parens = require("./parentheses"); +var _t = require("@babel/types"); +const { + FLIPPED_ALIAS_KEYS, + isCallExpression, + isExpressionStatement, + isMemberExpression, + isNewExpression +} = _t; +function expandAliases(obj) { + const newObj = {}; + function add(type, func) { + const fn = newObj[type]; + newObj[type] = fn ? function (node, parent, stack) { + const result = fn(node, parent, stack); + return result == null ? func(node, parent, stack) : result; + } : func; + } + for (const type of Object.keys(obj)) { + const aliases = FLIPPED_ALIAS_KEYS[type]; + if (aliases) { + for (const alias of aliases) { + add(alias, obj[type]); + } + } else { + add(type, obj[type]); + } + } + return newObj; +} + +const expandedParens = expandAliases(parens); +const expandedWhitespaceNodes = expandAliases(whitespace.nodes); +function find(obj, node, parent, printStack) { + const fn = obj[node.type]; + return fn ? fn(node, parent, printStack) : null; +} +function isOrHasCallExpression(node) { + if (isCallExpression(node)) { + return true; + } + return isMemberExpression(node) && isOrHasCallExpression(node.object); +} +function needsWhitespace(node, parent, type) { + if (!node) return false; + if (isExpressionStatement(node)) { + node = node.expression; + } + const flag = find(expandedWhitespaceNodes, node, parent); + if (typeof flag === "number") { + return (flag & type) !== 0; + } + return false; +} +function needsWhitespaceBefore(node, parent) { + return needsWhitespace(node, parent, 1); +} +function needsWhitespaceAfter(node, parent) { + return needsWhitespace(node, parent, 2); +} +function needsParens(node, parent, printStack) { + if (!parent) return false; + if (isNewExpression(parent) && parent.callee === node) { + if (isOrHasCallExpression(node)) return true; + } + return find(expandedParens, node, parent, printStack); +} + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/generator/lib/node/index.js.map b/node_modules/@babel/generator/lib/node/index.js.map new file mode 100644 index 0000000..2687e39 --- /dev/null +++ b/node_modules/@babel/generator/lib/node/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["FLIPPED_ALIAS_KEYS","isCallExpression","isExpressionStatement","isMemberExpression","isNewExpression","expandAliases","obj","newObj","add","type","func","fn","node","parent","stack","result","Object","keys","aliases","alias","expandedParens","parens","expandedWhitespaceNodes","whitespace","nodes","find","printStack","isOrHasCallExpression","object","needsWhitespace","expression","flag","needsWhitespaceBefore","needsWhitespaceAfter","needsParens","callee"],"sources":["../../src/node/index.ts"],"sourcesContent":["import * as whitespace from \"./whitespace\";\nimport * as parens from \"./parentheses\";\nimport {\n FLIPPED_ALIAS_KEYS,\n isCallExpression,\n isExpressionStatement,\n isMemberExpression,\n isNewExpression,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\nimport type { WhitespaceFlag } from \"./whitespace\";\n\nexport type NodeHandlers = {\n [K in string]?: (\n node: K extends t.Node[\"type\"] ? Extract : t.Node,\n // todo:\n // node: K extends keyof typeof t\n // ? Extract\n // : t.Node,\n parent: t.Node,\n stack: t.Node[],\n ) => R;\n};\n\nfunction expandAliases(obj: NodeHandlers) {\n const newObj: NodeHandlers = {};\n\n function add(\n type: string,\n func: (node: t.Node, parent: t.Node, stack: t.Node[]) => R,\n ) {\n const fn = newObj[type];\n newObj[type] = fn\n ? function (node, parent, stack) {\n const result = fn(node, parent, stack);\n\n return result == null ? func(node, parent, stack) : result;\n }\n : func;\n }\n\n for (const type of Object.keys(obj)) {\n const aliases = FLIPPED_ALIAS_KEYS[type];\n if (aliases) {\n for (const alias of aliases) {\n add(alias, obj[type]);\n }\n } else {\n add(type, obj[type]);\n }\n }\n\n return newObj;\n}\n\n// Rather than using `t.is` on each object property, we pre-expand any type aliases\n// into concrete types so that the 'find' call below can be as fast as possible.\nconst expandedParens = expandAliases(parens);\nconst expandedWhitespaceNodes = expandAliases(whitespace.nodes);\n\nfunction find(\n obj: NodeHandlers,\n node: t.Node,\n parent: t.Node,\n printStack?: t.Node[],\n): R | null {\n const fn = obj[node.type];\n return fn ? fn(node, parent, printStack) : null;\n}\n\nfunction isOrHasCallExpression(node: t.Node): boolean {\n if (isCallExpression(node)) {\n return true;\n }\n\n return isMemberExpression(node) && isOrHasCallExpression(node.object);\n}\n\nexport function needsWhitespace(\n node: t.Node,\n parent: t.Node,\n type: WhitespaceFlag,\n): boolean {\n if (!node) return false;\n\n if (isExpressionStatement(node)) {\n node = node.expression;\n }\n\n const flag = find(expandedWhitespaceNodes, node, parent);\n\n if (typeof flag === \"number\") {\n return (flag & type) !== 0;\n }\n\n return false;\n}\n\nexport function needsWhitespaceBefore(node: t.Node, parent: t.Node) {\n return needsWhitespace(node, parent, 1);\n}\n\nexport function needsWhitespaceAfter(node: t.Node, parent: t.Node) {\n return needsWhitespace(node, parent, 2);\n}\n\nexport function needsParens(\n node: t.Node,\n parent: t.Node,\n printStack?: t.Node[],\n) {\n if (!parent) return false;\n\n if (isNewExpression(parent) && parent.callee === node) {\n if (isOrHasCallExpression(node)) return true;\n }\n\n return find(expandedParens, node, parent, printStack);\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/node/parentheses.js b/node_modules/@babel/generator/lib/node/parentheses.js new file mode 100644 index 0000000..72e6d38 --- /dev/null +++ b/node_modules/@babel/generator/lib/node/parentheses.js @@ -0,0 +1,312 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ArrowFunctionExpression = ArrowFunctionExpression; +exports.AssignmentExpression = AssignmentExpression; +exports.Binary = Binary; +exports.BinaryExpression = BinaryExpression; +exports.ClassExpression = ClassExpression; +exports.ConditionalExpression = ConditionalExpression; +exports.DoExpression = DoExpression; +exports.FunctionExpression = FunctionExpression; +exports.FunctionTypeAnnotation = FunctionTypeAnnotation; +exports.Identifier = Identifier; +exports.LogicalExpression = LogicalExpression; +exports.NullableTypeAnnotation = NullableTypeAnnotation; +exports.ObjectExpression = ObjectExpression; +exports.OptionalIndexedAccessType = OptionalIndexedAccessType; +exports.OptionalCallExpression = exports.OptionalMemberExpression = OptionalMemberExpression; +exports.SequenceExpression = SequenceExpression; +exports.TSTypeAssertion = exports.TSSatisfiesExpression = exports.TSAsExpression = TSAsExpression; +exports.TSInferType = TSInferType; +exports.TSInstantiationExpression = TSInstantiationExpression; +exports.TSIntersectionType = exports.TSUnionType = TSUnionType; +exports.UnaryLike = UnaryLike; +exports.IntersectionTypeAnnotation = exports.UnionTypeAnnotation = UnionTypeAnnotation; +exports.UpdateExpression = UpdateExpression; +exports.AwaitExpression = exports.YieldExpression = YieldExpression; +var _t = require("@babel/types"); +const { + isArrayTypeAnnotation, + isArrowFunctionExpression, + isAssignmentExpression, + isAwaitExpression, + isBinary, + isBinaryExpression, + isUpdateExpression, + isCallExpression, + isClass, + isClassExpression, + isConditional, + isConditionalExpression, + isExportDeclaration, + isExportDefaultDeclaration, + isExpressionStatement, + isFor, + isForInStatement, + isForOfStatement, + isForStatement, + isFunctionExpression, + isIfStatement, + isIndexedAccessType, + isIntersectionTypeAnnotation, + isLogicalExpression, + isMemberExpression, + isNewExpression, + isNullableTypeAnnotation, + isObjectPattern, + isOptionalCallExpression, + isOptionalMemberExpression, + isReturnStatement, + isSequenceExpression, + isSwitchStatement, + isTSArrayType, + isTSAsExpression, + isTSInstantiationExpression, + isTSIntersectionType, + isTSNonNullExpression, + isTSOptionalType, + isTSRestType, + isTSTypeAssertion, + isTSUnionType, + isTaggedTemplateExpression, + isThrowStatement, + isTypeAnnotation, + isUnaryLike, + isUnionTypeAnnotation, + isVariableDeclarator, + isWhileStatement, + isYieldExpression, + isTSSatisfiesExpression +} = _t; +const PRECEDENCE = { + "||": 0, + "??": 0, + "|>": 0, + "&&": 1, + "|": 2, + "^": 3, + "&": 4, + "==": 5, + "===": 5, + "!=": 5, + "!==": 5, + "<": 6, + ">": 6, + "<=": 6, + ">=": 6, + in: 6, + instanceof: 6, + ">>": 7, + "<<": 7, + ">>>": 7, + "+": 8, + "-": 8, + "*": 9, + "/": 9, + "%": 9, + "**": 10 +}; +const isClassExtendsClause = (node, parent) => isClass(parent, { + superClass: node +}); +const hasPostfixPart = (node, parent) => (isMemberExpression(parent) || isOptionalMemberExpression(parent)) && parent.object === node || (isCallExpression(parent) || isOptionalCallExpression(parent) || isNewExpression(parent)) && parent.callee === node || isTaggedTemplateExpression(parent) && parent.tag === node || isTSNonNullExpression(parent); +function NullableTypeAnnotation(node, parent) { + return isArrayTypeAnnotation(parent); +} +function FunctionTypeAnnotation(node, parent, printStack) { + if (printStack.length < 3) return; + return ( + isUnionTypeAnnotation(parent) || + isIntersectionTypeAnnotation(parent) || + isArrayTypeAnnotation(parent) || + isTypeAnnotation(parent) && + isArrowFunctionExpression(printStack[printStack.length - 3]) + ); +} +function UpdateExpression(node, parent) { + return hasPostfixPart(node, parent) || isClassExtendsClause(node, parent); +} +function ObjectExpression(node, parent, printStack) { + return isFirstInContext(printStack, 1 | 2); +} +function DoExpression(node, parent, printStack) { + return !node.async && isFirstInContext(printStack, 1); +} +function Binary(node, parent) { + if (node.operator === "**" && isBinaryExpression(parent, { + operator: "**" + })) { + return parent.left === node; + } + if (isClassExtendsClause(node, parent)) { + return true; + } + if (hasPostfixPart(node, parent) || isUnaryLike(parent) || isAwaitExpression(parent)) { + return true; + } + if (isBinary(parent)) { + const parentOp = parent.operator; + const parentPos = PRECEDENCE[parentOp]; + const nodeOp = node.operator; + const nodePos = PRECEDENCE[nodeOp]; + if ( + parentPos === nodePos && parent.right === node && !isLogicalExpression(parent) || parentPos > nodePos) { + return true; + } + } +} +function UnionTypeAnnotation(node, parent) { + return isArrayTypeAnnotation(parent) || isNullableTypeAnnotation(parent) || isIntersectionTypeAnnotation(parent) || isUnionTypeAnnotation(parent); +} +function OptionalIndexedAccessType(node, parent) { + return isIndexedAccessType(parent, { + objectType: node + }); +} +function TSAsExpression() { + return true; +} +function TSUnionType(node, parent) { + return isTSArrayType(parent) || isTSOptionalType(parent) || isTSIntersectionType(parent) || isTSUnionType(parent) || isTSRestType(parent); +} +function TSInferType(node, parent) { + return isTSArrayType(parent) || isTSOptionalType(parent); +} +function TSInstantiationExpression(node, parent) { + return (isCallExpression(parent) || isOptionalCallExpression(parent) || isNewExpression(parent) || isTSInstantiationExpression(parent)) && !!parent.typeParameters; +} +function BinaryExpression(node, parent) { + return node.operator === "in" && (isVariableDeclarator(parent) || isFor(parent)); +} +function SequenceExpression(node, parent) { + if ( + isForStatement(parent) || isThrowStatement(parent) || isReturnStatement(parent) || isIfStatement(parent) && parent.test === node || isWhileStatement(parent) && parent.test === node || isForInStatement(parent) && parent.right === node || isSwitchStatement(parent) && parent.discriminant === node || isExpressionStatement(parent) && parent.expression === node) { + return false; + } + + return true; +} +function YieldExpression(node, parent) { + return isBinary(parent) || isUnaryLike(parent) || hasPostfixPart(node, parent) || isAwaitExpression(parent) && isYieldExpression(node) || isConditionalExpression(parent) && node === parent.test || isClassExtendsClause(node, parent); +} +function ClassExpression(node, parent, printStack) { + return isFirstInContext(printStack, 1 | 4); +} +function UnaryLike(node, parent) { + return hasPostfixPart(node, parent) || isBinaryExpression(parent, { + operator: "**", + left: node + }) || isClassExtendsClause(node, parent); +} +function FunctionExpression(node, parent, printStack) { + return isFirstInContext(printStack, 1 | 4); +} +function ArrowFunctionExpression(node, parent) { + return isExportDeclaration(parent) || ConditionalExpression(node, parent); +} +function ConditionalExpression(node, parent) { + if (isUnaryLike(parent) || isBinary(parent) || isConditionalExpression(parent, { + test: node + }) || isAwaitExpression(parent) || isTSTypeAssertion(parent) || isTSAsExpression(parent) || isTSSatisfiesExpression(parent)) { + return true; + } + return UnaryLike(node, parent); +} +function OptionalMemberExpression(node, parent) { + return isCallExpression(parent, { + callee: node + }) || isMemberExpression(parent, { + object: node + }); +} +function AssignmentExpression(node, parent) { + if (isObjectPattern(node.left)) { + return true; + } else { + return ConditionalExpression(node, parent); + } +} +function LogicalExpression(node, parent) { + switch (node.operator) { + case "||": + if (!isLogicalExpression(parent)) return false; + return parent.operator === "??" || parent.operator === "&&"; + case "&&": + return isLogicalExpression(parent, { + operator: "??" + }); + case "??": + return isLogicalExpression(parent) && parent.operator !== "??"; + } +} +function Identifier(node, parent, printStack) { + var _node$extra; + if ((_node$extra = node.extra) != null && _node$extra.parenthesized && isAssignmentExpression(parent, { + left: node + }) && (isFunctionExpression(parent.right) || isClassExpression(parent.right)) && parent.right.id == null) { + return true; + } + if (node.name === "let") { + const isFollowedByBracket = isMemberExpression(parent, { + object: node, + computed: true + }) || isOptionalMemberExpression(parent, { + object: node, + computed: true, + optional: false + }); + return isFirstInContext(printStack, isFollowedByBracket ? 1 | 8 | 16 | 32 : 32); + } + + return node.name === "async" && isForOfStatement(parent) && node === parent.left; +} + +function isFirstInContext(printStack, checkParam) { + const expressionStatement = checkParam & 1; + const arrowBody = checkParam & 2; + const exportDefault = checkParam & 4; + const forHead = checkParam & 8; + const forInHead = checkParam & 16; + const forOfHead = checkParam & 32; + let i = printStack.length - 1; + if (i <= 0) return; + let node = printStack[i]; + i--; + let parent = printStack[i]; + while (i >= 0) { + if (expressionStatement && isExpressionStatement(parent, { + expression: node + }) || exportDefault && isExportDefaultDeclaration(parent, { + declaration: node + }) || arrowBody && isArrowFunctionExpression(parent, { + body: node + }) || forHead && isForStatement(parent, { + init: node + }) || forInHead && isForInStatement(parent, { + left: node + }) || forOfHead && isForOfStatement(parent, { + left: node + })) { + return true; + } + if (i > 0 && (hasPostfixPart(node, parent) && !isNewExpression(parent) || isSequenceExpression(parent) && parent.expressions[0] === node || isUpdateExpression(parent) && !parent.prefix || isConditional(parent, { + test: node + }) || isBinary(parent, { + left: node + }) || isAssignmentExpression(parent, { + left: node + }))) { + node = parent; + i--; + parent = printStack[i]; + } else { + return false; + } + } + return false; +} + +//# sourceMappingURL=parentheses.js.map diff --git a/node_modules/@babel/generator/lib/node/parentheses.js.map b/node_modules/@babel/generator/lib/node/parentheses.js.map new file mode 100644 index 0000000..fc63868 --- /dev/null +++ b/node_modules/@babel/generator/lib/node/parentheses.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isArrayTypeAnnotation","isArrowFunctionExpression","isAssignmentExpression","isAwaitExpression","isBinary","isBinaryExpression","isUpdateExpression","isCallExpression","isClass","isClassExpression","isConditional","isConditionalExpression","isExportDeclaration","isExportDefaultDeclaration","isExpressionStatement","isFor","isForInStatement","isForOfStatement","isForStatement","isFunctionExpression","isIfStatement","isIndexedAccessType","isIntersectionTypeAnnotation","isLogicalExpression","isMemberExpression","isNewExpression","isNullableTypeAnnotation","isObjectPattern","isOptionalCallExpression","isOptionalMemberExpression","isReturnStatement","isSequenceExpression","isSwitchStatement","isTSArrayType","isTSAsExpression","isTSInstantiationExpression","isTSIntersectionType","isTSNonNullExpression","isTSOptionalType","isTSRestType","isTSTypeAssertion","isTSUnionType","isTaggedTemplateExpression","isThrowStatement","isTypeAnnotation","isUnaryLike","isUnionTypeAnnotation","isVariableDeclarator","isWhileStatement","isYieldExpression","isTSSatisfiesExpression","PRECEDENCE","in","instanceof","isClassExtendsClause","node","parent","superClass","hasPostfixPart","object","callee","tag","NullableTypeAnnotation","FunctionTypeAnnotation","printStack","length","UpdateExpression","ObjectExpression","isFirstInContext","DoExpression","async","Binary","operator","left","parentOp","parentPos","nodeOp","nodePos","right","UnionTypeAnnotation","OptionalIndexedAccessType","objectType","TSAsExpression","TSUnionType","TSInferType","TSInstantiationExpression","typeParameters","BinaryExpression","SequenceExpression","test","discriminant","expression","YieldExpression","ClassExpression","UnaryLike","FunctionExpression","ArrowFunctionExpression","ConditionalExpression","OptionalMemberExpression","AssignmentExpression","LogicalExpression","Identifier","extra","parenthesized","id","name","isFollowedByBracket","computed","optional","checkParam","expressionStatement","arrowBody","exportDefault","forHead","forInHead","forOfHead","i","declaration","body","init","expressions","prefix"],"sources":["../../src/node/parentheses.ts"],"sourcesContent":["import {\n isArrayTypeAnnotation,\n isArrowFunctionExpression,\n isAssignmentExpression,\n isAwaitExpression,\n isBinary,\n isBinaryExpression,\n isUpdateExpression,\n isCallExpression,\n isClass,\n isClassExpression,\n isConditional,\n isConditionalExpression,\n isExportDeclaration,\n isExportDefaultDeclaration,\n isExpressionStatement,\n isFor,\n isForInStatement,\n isForOfStatement,\n isForStatement,\n isFunctionExpression,\n isIfStatement,\n isIndexedAccessType,\n isIntersectionTypeAnnotation,\n isLogicalExpression,\n isMemberExpression,\n isNewExpression,\n isNullableTypeAnnotation,\n isObjectPattern,\n isOptionalCallExpression,\n isOptionalMemberExpression,\n isReturnStatement,\n isSequenceExpression,\n isSwitchStatement,\n isTSArrayType,\n isTSAsExpression,\n isTSInstantiationExpression,\n isTSIntersectionType,\n isTSNonNullExpression,\n isTSOptionalType,\n isTSRestType,\n isTSTypeAssertion,\n isTSUnionType,\n isTaggedTemplateExpression,\n isThrowStatement,\n isTypeAnnotation,\n isUnaryLike,\n isUnionTypeAnnotation,\n isVariableDeclarator,\n isWhileStatement,\n isYieldExpression,\n isTSSatisfiesExpression,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nconst PRECEDENCE = {\n \"||\": 0,\n \"??\": 0,\n \"|>\": 0,\n \"&&\": 1,\n \"|\": 2,\n \"^\": 3,\n \"&\": 4,\n \"==\": 5,\n \"===\": 5,\n \"!=\": 5,\n \"!==\": 5,\n \"<\": 6,\n \">\": 6,\n \"<=\": 6,\n \">=\": 6,\n in: 6,\n instanceof: 6,\n \">>\": 7,\n \"<<\": 7,\n \">>>\": 7,\n \"+\": 8,\n \"-\": 8,\n \"*\": 9,\n \"/\": 9,\n \"%\": 9,\n \"**\": 10,\n};\n\nconst enum CheckParam {\n expressionStatement = 1 << 0,\n arrowBody = 1 << 1,\n exportDefault = 1 << 2,\n forHead = 1 << 3,\n forInHead = 1 << 4,\n forOfHead = 1 << 5,\n}\n\nconst isClassExtendsClause = (\n node: t.Node,\n parent: t.Node,\n): parent is t.Class => isClass(parent, { superClass: node });\n\nconst hasPostfixPart = (node: t.Node, parent: t.Node) =>\n ((isMemberExpression(parent) || isOptionalMemberExpression(parent)) &&\n parent.object === node) ||\n ((isCallExpression(parent) ||\n isOptionalCallExpression(parent) ||\n isNewExpression(parent)) &&\n parent.callee === node) ||\n (isTaggedTemplateExpression(parent) && parent.tag === node) ||\n isTSNonNullExpression(parent);\n\nexport function NullableTypeAnnotation(\n node: t.NullableTypeAnnotation,\n parent: t.Node,\n): boolean {\n return isArrayTypeAnnotation(parent);\n}\n\nexport function FunctionTypeAnnotation(\n node: t.FunctionTypeAnnotation,\n parent: t.Node,\n printStack: Array,\n): boolean {\n if (printStack.length < 3) return;\n\n return (\n // (() => A) | (() => B)\n isUnionTypeAnnotation(parent) ||\n // (() => A) & (() => B)\n isIntersectionTypeAnnotation(parent) ||\n // (() => A)[]\n isArrayTypeAnnotation(parent) ||\n // (A: T): (T => T[]) => B => [A, B]\n (isTypeAnnotation(parent) &&\n // Check grandparent\n isArrowFunctionExpression(printStack[printStack.length - 3]))\n );\n}\n\nexport function UpdateExpression(\n node: t.UpdateExpression,\n parent: t.Node,\n): boolean {\n return hasPostfixPart(node, parent) || isClassExtendsClause(node, parent);\n}\n\nexport function ObjectExpression(\n node: t.ObjectExpression,\n parent: t.Node,\n printStack: Array,\n): boolean {\n return isFirstInContext(\n printStack,\n CheckParam.expressionStatement | CheckParam.arrowBody,\n );\n}\n\nexport function DoExpression(\n node: t.DoExpression,\n parent: t.Node,\n printStack: Array,\n): boolean {\n // `async do` can start an expression statement\n return (\n !node.async && isFirstInContext(printStack, CheckParam.expressionStatement)\n );\n}\n\nexport function Binary(node: t.BinaryExpression, parent: t.Node): boolean {\n if (\n node.operator === \"**\" &&\n isBinaryExpression(parent, { operator: \"**\" })\n ) {\n return parent.left === node;\n }\n\n if (isClassExtendsClause(node, parent)) {\n return true;\n }\n\n if (\n hasPostfixPart(node, parent) ||\n isUnaryLike(parent) ||\n isAwaitExpression(parent)\n ) {\n return true;\n }\n\n if (isBinary(parent)) {\n const parentOp = parent.operator;\n const parentPos = PRECEDENCE[parentOp];\n\n const nodeOp = node.operator;\n const nodePos = PRECEDENCE[nodeOp];\n\n if (\n // Logical expressions with the same precedence don't need parens.\n (parentPos === nodePos &&\n parent.right === node &&\n !isLogicalExpression(parent)) ||\n parentPos > nodePos\n ) {\n return true;\n }\n }\n}\n\nexport function UnionTypeAnnotation(\n node: t.UnionTypeAnnotation,\n parent: t.Node,\n): boolean {\n return (\n isArrayTypeAnnotation(parent) ||\n isNullableTypeAnnotation(parent) ||\n isIntersectionTypeAnnotation(parent) ||\n isUnionTypeAnnotation(parent)\n );\n}\n\nexport { UnionTypeAnnotation as IntersectionTypeAnnotation };\n\nexport function OptionalIndexedAccessType(\n node: t.OptionalIndexedAccessType,\n parent: t.Node,\n): boolean {\n return isIndexedAccessType(parent, { objectType: node });\n}\n\nexport function TSAsExpression() {\n return true;\n}\n\nexport {\n TSAsExpression as TSSatisfiesExpression,\n TSAsExpression as TSTypeAssertion,\n};\n\nexport function TSUnionType(node: t.TSUnionType, parent: t.Node): boolean {\n return (\n isTSArrayType(parent) ||\n isTSOptionalType(parent) ||\n isTSIntersectionType(parent) ||\n isTSUnionType(parent) ||\n isTSRestType(parent)\n );\n}\n\nexport { TSUnionType as TSIntersectionType };\n\nexport function TSInferType(node: t.TSInferType, parent: t.Node): boolean {\n return isTSArrayType(parent) || isTSOptionalType(parent);\n}\n\nexport function TSInstantiationExpression(\n node: t.TSInstantiationExpression,\n parent: t.Node,\n) {\n return (\n (isCallExpression(parent) ||\n isOptionalCallExpression(parent) ||\n isNewExpression(parent) ||\n isTSInstantiationExpression(parent)) &&\n !!parent.typeParameters\n );\n}\n\nexport function BinaryExpression(\n node: t.BinaryExpression,\n parent: t.Node,\n): boolean {\n // let i = (1 in []);\n // for ((1 in []);;);\n return (\n node.operator === \"in\" && (isVariableDeclarator(parent) || isFor(parent))\n );\n}\n\nexport function SequenceExpression(\n node: t.SequenceExpression,\n parent: t.Node,\n): boolean {\n if (\n // Although parentheses wouldn\"t hurt around sequence\n // expressions in the head of for loops, traditional style\n // dictates that e.g. i++, j++ should not be wrapped with\n // parentheses.\n isForStatement(parent) ||\n isThrowStatement(parent) ||\n isReturnStatement(parent) ||\n (isIfStatement(parent) && parent.test === node) ||\n (isWhileStatement(parent) && parent.test === node) ||\n (isForInStatement(parent) && parent.right === node) ||\n (isSwitchStatement(parent) && parent.discriminant === node) ||\n (isExpressionStatement(parent) && parent.expression === node)\n ) {\n return false;\n }\n\n // Otherwise err on the side of overparenthesization, adding\n // explicit exceptions above if this proves overzealous.\n return true;\n}\n\nexport function YieldExpression(\n node: t.YieldExpression,\n parent: t.Node,\n): boolean {\n return (\n isBinary(parent) ||\n isUnaryLike(parent) ||\n hasPostfixPart(node, parent) ||\n (isAwaitExpression(parent) && isYieldExpression(node)) ||\n (isConditionalExpression(parent) && node === parent.test) ||\n isClassExtendsClause(node, parent)\n );\n}\n\nexport { YieldExpression as AwaitExpression };\n\nexport function ClassExpression(\n node: t.ClassExpression,\n parent: t.Node,\n printStack: Array,\n): boolean {\n return isFirstInContext(\n printStack,\n CheckParam.expressionStatement | CheckParam.exportDefault,\n );\n}\n\nexport function UnaryLike(\n node:\n | t.UnaryLike\n | t.ArrowFunctionExpression\n | t.ConditionalExpression\n | t.AssignmentExpression,\n parent: t.Node,\n): boolean {\n return (\n hasPostfixPart(node, parent) ||\n isBinaryExpression(parent, { operator: \"**\", left: node }) ||\n isClassExtendsClause(node, parent)\n );\n}\n\nexport function FunctionExpression(\n node: t.FunctionExpression,\n parent: t.Node,\n printStack: Array,\n): boolean {\n return isFirstInContext(\n printStack,\n CheckParam.expressionStatement | CheckParam.exportDefault,\n );\n}\n\nexport function ArrowFunctionExpression(\n node: t.ArrowFunctionExpression,\n parent: t.Node,\n): boolean {\n return isExportDeclaration(parent) || ConditionalExpression(node, parent);\n}\n\nexport function ConditionalExpression(\n node:\n | t.ConditionalExpression\n | t.ArrowFunctionExpression\n | t.AssignmentExpression,\n parent?: t.Node,\n): boolean {\n if (\n isUnaryLike(parent) ||\n isBinary(parent) ||\n isConditionalExpression(parent, { test: node }) ||\n isAwaitExpression(parent) ||\n isTSTypeAssertion(parent) ||\n isTSAsExpression(parent) ||\n isTSSatisfiesExpression(parent)\n ) {\n return true;\n }\n\n return UnaryLike(node, parent);\n}\n\nexport function OptionalMemberExpression(\n node: t.OptionalMemberExpression,\n parent: t.Node,\n): boolean {\n return (\n isCallExpression(parent, { callee: node }) ||\n isMemberExpression(parent, { object: node })\n );\n}\n\nexport { OptionalMemberExpression as OptionalCallExpression };\n\nexport function AssignmentExpression(\n node: t.AssignmentExpression,\n parent: t.Node,\n): boolean {\n if (isObjectPattern(node.left)) {\n return true;\n } else {\n return ConditionalExpression(node, parent);\n }\n}\n\nexport function LogicalExpression(\n node: t.LogicalExpression,\n parent: t.Node,\n): boolean {\n switch (node.operator) {\n case \"||\":\n if (!isLogicalExpression(parent)) return false;\n return parent.operator === \"??\" || parent.operator === \"&&\";\n case \"&&\":\n return isLogicalExpression(parent, { operator: \"??\" });\n case \"??\":\n return isLogicalExpression(parent) && parent.operator !== \"??\";\n }\n}\n\nexport function Identifier(\n node: t.Identifier,\n parent: t.Node,\n printStack: Array,\n): boolean {\n // 13.15.2 AssignmentExpression RS: Evaluation\n // (fn) = function () {};\n if (\n node.extra?.parenthesized &&\n isAssignmentExpression(parent, { left: node }) &&\n (isFunctionExpression(parent.right) || isClassExpression(parent.right)) &&\n parent.right.id == null\n ) {\n return true;\n }\n // Non-strict code allows the identifier `let`, but it cannot occur as-is in\n // certain contexts to avoid ambiguity with contextual keyword `let`.\n if (node.name === \"let\") {\n // Some contexts only forbid `let [`, so check if the next token would\n // be the left bracket of a computed member expression.\n const isFollowedByBracket =\n isMemberExpression(parent, {\n object: node,\n computed: true,\n }) ||\n isOptionalMemberExpression(parent, {\n object: node,\n computed: true,\n optional: false,\n });\n return isFirstInContext(\n printStack,\n isFollowedByBracket\n ? CheckParam.expressionStatement |\n CheckParam.forHead |\n CheckParam.forInHead |\n CheckParam.forOfHead\n : CheckParam.forOfHead,\n );\n }\n\n // ECMAScript specifically forbids a for-of loop from starting with the\n // token sequence `for (async of`, because it would be ambiguous with\n // `for (async of => {};;)`, so we need to add extra parentheses.\n //\n // If the parent is a for-await-of loop (i.e. parent.await === true), the\n // parentheses aren't strictly needed, but we add them anyway because\n // some tools (including earlier Babel versions) can't parse\n // `for await (async of [])` without them.\n return (\n node.name === \"async\" && isForOfStatement(parent) && node === parent.left\n );\n}\n\n// Walk up the print stack to determine if our node can come first\n// in a particular context.\nfunction isFirstInContext(\n printStack: Array,\n checkParam: CheckParam,\n): boolean {\n const expressionStatement = checkParam & CheckParam.expressionStatement;\n const arrowBody = checkParam & CheckParam.arrowBody;\n const exportDefault = checkParam & CheckParam.exportDefault;\n const forHead = checkParam & CheckParam.forHead;\n const forInHead = checkParam & CheckParam.forInHead;\n const forOfHead = checkParam & CheckParam.forOfHead;\n\n let i = printStack.length - 1;\n if (i <= 0) return;\n let node = printStack[i];\n i--;\n let parent = printStack[i];\n while (i >= 0) {\n if (\n (expressionStatement &&\n isExpressionStatement(parent, { expression: node })) ||\n (exportDefault &&\n isExportDefaultDeclaration(parent, { declaration: node })) ||\n (arrowBody && isArrowFunctionExpression(parent, { body: node })) ||\n (forHead && isForStatement(parent, { init: node })) ||\n (forInHead && isForInStatement(parent, { left: node })) ||\n (forOfHead && isForOfStatement(parent, { left: node }))\n ) {\n return true;\n }\n\n if (\n i > 0 &&\n ((hasPostfixPart(node, parent) && !isNewExpression(parent)) ||\n (isSequenceExpression(parent) && parent.expressions[0] === node) ||\n (isUpdateExpression(parent) && !parent.prefix) ||\n isConditional(parent, { test: node }) ||\n isBinary(parent, { left: node }) ||\n isAssignmentExpression(parent, { left: node }))\n ) {\n node = parent;\n i--;\n parent = printStack[i];\n } else {\n return false;\n }\n }\n\n return false;\n}\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/node/whitespace.js b/node_modules/@babel/generator/lib/node/whitespace.js new file mode 100644 index 0000000..e5196fb --- /dev/null +++ b/node_modules/@babel/generator/lib/node/whitespace.js @@ -0,0 +1,160 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.nodes = void 0; +var _t = require("@babel/types"); +const { + FLIPPED_ALIAS_KEYS, + isArrayExpression, + isAssignmentExpression, + isBinary, + isBlockStatement, + isCallExpression, + isFunction, + isIdentifier, + isLiteral, + isMemberExpression, + isObjectExpression, + isOptionalCallExpression, + isOptionalMemberExpression, + isStringLiteral +} = _t; +function crawlInternal(node, state) { + if (!node) return state; + if (isMemberExpression(node) || isOptionalMemberExpression(node)) { + crawlInternal(node.object, state); + if (node.computed) crawlInternal(node.property, state); + } else if (isBinary(node) || isAssignmentExpression(node)) { + crawlInternal(node.left, state); + crawlInternal(node.right, state); + } else if (isCallExpression(node) || isOptionalCallExpression(node)) { + state.hasCall = true; + crawlInternal(node.callee, state); + } else if (isFunction(node)) { + state.hasFunction = true; + } else if (isIdentifier(node)) { + state.hasHelper = + state.hasHelper || node.callee && isHelper(node.callee); + } + return state; +} + +function crawl(node) { + return crawlInternal(node, { + hasCall: false, + hasFunction: false, + hasHelper: false + }); +} + +function isHelper(node) { + if (!node) return false; + if (isMemberExpression(node)) { + return isHelper(node.object) || isHelper(node.property); + } else if (isIdentifier(node)) { + return node.name === "require" || node.name.charCodeAt(0) === 95; + } else if (isCallExpression(node)) { + return isHelper(node.callee); + } else if (isBinary(node) || isAssignmentExpression(node)) { + return isIdentifier(node.left) && isHelper(node.left) || isHelper(node.right); + } else { + return false; + } +} +function isType(node) { + return isLiteral(node) || isObjectExpression(node) || isArrayExpression(node) || isIdentifier(node) || isMemberExpression(node); +} + +const nodes = { + + AssignmentExpression(node) { + const state = crawl(node.right); + if (state.hasCall && state.hasHelper || state.hasFunction) { + return state.hasFunction ? 1 | 2 : 2; + } + }, + + SwitchCase(node, parent) { + return (!!node.consequent.length || parent.cases[0] === node ? 1 : 0) | (!node.consequent.length && parent.cases[parent.cases.length - 1] === node ? 2 : 0); + }, + + LogicalExpression(node) { + if (isFunction(node.left) || isFunction(node.right)) { + return 2; + } + }, + + Literal(node) { + if (isStringLiteral(node) && node.value === "use strict") { + return 2; + } + }, + + CallExpression(node) { + if (isFunction(node.callee) || isHelper(node)) { + return 1 | 2; + } + }, + OptionalCallExpression(node) { + if (isFunction(node.callee)) { + return 1 | 2; + } + }, + + VariableDeclaration(node) { + for (let i = 0; i < node.declarations.length; i++) { + const declar = node.declarations[i]; + let enabled = isHelper(declar.id) && !isType(declar.init); + if (!enabled && declar.init) { + const state = crawl(declar.init); + enabled = isHelper(declar.init) && state.hasCall || state.hasFunction; + } + if (enabled) { + return 1 | 2; + } + } + }, + + IfStatement(node) { + if (isBlockStatement(node.consequent)) { + return 1 | 2; + } + } +}; + +exports.nodes = nodes; + +nodes.ObjectProperty = nodes.ObjectTypeProperty = nodes.ObjectMethod = function (node, parent) { + if (parent.properties[0] === node) { + return 1; + } +}; +nodes.ObjectTypeCallProperty = function (node, parent) { + var _parent$properties; + if (parent.callProperties[0] === node && !((_parent$properties = parent.properties) != null && _parent$properties.length)) { + return 1; + } +}; +nodes.ObjectTypeIndexer = function (node, parent) { + var _parent$properties2, _parent$callPropertie; + if (parent.indexers[0] === node && !((_parent$properties2 = parent.properties) != null && _parent$properties2.length) && !((_parent$callPropertie = parent.callProperties) != null && _parent$callPropertie.length)) { + return 1; + } +}; +nodes.ObjectTypeInternalSlot = function (node, parent) { + var _parent$properties3, _parent$callPropertie2, _parent$indexers; + if (parent.internalSlots[0] === node && !((_parent$properties3 = parent.properties) != null && _parent$properties3.length) && !((_parent$callPropertie2 = parent.callProperties) != null && _parent$callPropertie2.length) && !((_parent$indexers = parent.indexers) != null && _parent$indexers.length)) { + return 1; + } +}; + +[["Function", true], ["Class", true], ["Loop", true], ["LabeledStatement", true], ["SwitchStatement", true], ["TryStatement", true]].forEach(function ([type, amounts]) { + [type].concat(FLIPPED_ALIAS_KEYS[type] || []).forEach(function (type) { + const ret = amounts ? 1 | 2 : 0; + nodes[type] = () => ret; + }); +}); + +//# sourceMappingURL=whitespace.js.map diff --git a/node_modules/@babel/generator/lib/node/whitespace.js.map b/node_modules/@babel/generator/lib/node/whitespace.js.map new file mode 100644 index 0000000..e1232cf --- /dev/null +++ b/node_modules/@babel/generator/lib/node/whitespace.js.map @@ -0,0 +1 @@ +{"version":3,"names":["FLIPPED_ALIAS_KEYS","isArrayExpression","isAssignmentExpression","isBinary","isBlockStatement","isCallExpression","isFunction","isIdentifier","isLiteral","isMemberExpression","isObjectExpression","isOptionalCallExpression","isOptionalMemberExpression","isStringLiteral","crawlInternal","node","state","object","computed","property","left","right","hasCall","callee","hasFunction","hasHelper","isHelper","crawl","name","charCodeAt","isType","nodes","AssignmentExpression","SwitchCase","parent","consequent","length","cases","LogicalExpression","Literal","value","CallExpression","OptionalCallExpression","VariableDeclaration","i","declarations","declar","enabled","id","init","IfStatement","ObjectProperty","ObjectTypeProperty","ObjectMethod","properties","ObjectTypeCallProperty","callProperties","ObjectTypeIndexer","indexers","ObjectTypeInternalSlot","internalSlots","forEach","type","amounts","concat","ret"],"sources":["../../src/node/whitespace.ts"],"sourcesContent":["import {\n FLIPPED_ALIAS_KEYS,\n isArrayExpression,\n isAssignmentExpression,\n isBinary,\n isBlockStatement,\n isCallExpression,\n isFunction,\n isIdentifier,\n isLiteral,\n isMemberExpression,\n isObjectExpression,\n isOptionalCallExpression,\n isOptionalMemberExpression,\n isStringLiteral,\n} from \"@babel/types\";\nimport * as charCodes from \"charcodes\";\n\nimport type { NodeHandlers } from \"./index\";\n\nimport type * as t from \"@babel/types\";\n\nconst enum WhitespaceFlag {\n before = 1 << 0,\n after = 1 << 1,\n}\n\nexport type { WhitespaceFlag };\n\nfunction crawlInternal(\n node: t.Node,\n state: { hasCall: boolean; hasFunction: boolean; hasHelper: boolean },\n) {\n if (!node) return state;\n\n if (isMemberExpression(node) || isOptionalMemberExpression(node)) {\n crawlInternal(node.object, state);\n if (node.computed) crawlInternal(node.property, state);\n } else if (isBinary(node) || isAssignmentExpression(node)) {\n crawlInternal(node.left, state);\n crawlInternal(node.right, state);\n } else if (isCallExpression(node) || isOptionalCallExpression(node)) {\n state.hasCall = true;\n crawlInternal(node.callee, state);\n } else if (isFunction(node)) {\n state.hasFunction = true;\n } else if (isIdentifier(node)) {\n state.hasHelper =\n // @ts-expect-error todo(flow->ts): node.callee is not really expected here…\n state.hasHelper || (node.callee && isHelper(node.callee));\n }\n\n return state;\n}\n\n/**\n * Crawl a node to test if it contains a CallExpression, a Function, or a Helper.\n *\n * @example\n * crawl(node)\n * // { hasCall: false, hasFunction: true, hasHelper: false }\n */\n\nfunction crawl(node: t.Node) {\n return crawlInternal(node, {\n hasCall: false,\n hasFunction: false,\n hasHelper: false,\n });\n}\n\n/**\n * Test if a node is or has a helper.\n */\n\nfunction isHelper(node: t.Node): boolean {\n if (!node) return false;\n\n if (isMemberExpression(node)) {\n return isHelper(node.object) || isHelper(node.property);\n } else if (isIdentifier(node)) {\n return (\n node.name === \"require\" ||\n node.name.charCodeAt(0) === charCodes.underscore\n );\n } else if (isCallExpression(node)) {\n return isHelper(node.callee);\n } else if (isBinary(node) || isAssignmentExpression(node)) {\n return (\n (isIdentifier(node.left) && isHelper(node.left)) || isHelper(node.right)\n );\n } else {\n return false;\n }\n}\n\nfunction isType(node: t.Node) {\n return (\n isLiteral(node) ||\n isObjectExpression(node) ||\n isArrayExpression(node) ||\n isIdentifier(node) ||\n isMemberExpression(node)\n );\n}\n\n/**\n * Tests for node types that need whitespace.\n */\n\nexport const nodes: NodeHandlers = {\n /**\n * Test if AssignmentExpression needs whitespace.\n */\n\n AssignmentExpression(node: t.AssignmentExpression): WhitespaceFlag {\n const state = crawl(node.right);\n if ((state.hasCall && state.hasHelper) || state.hasFunction) {\n return state.hasFunction\n ? WhitespaceFlag.before | WhitespaceFlag.after\n : WhitespaceFlag.after;\n }\n },\n\n /**\n * Test if SwitchCase needs whitespace.\n */\n\n SwitchCase(node: t.SwitchCase, parent: t.SwitchStatement): WhitespaceFlag {\n return (\n (!!node.consequent.length || parent.cases[0] === node\n ? WhitespaceFlag.before\n : 0) |\n (!node.consequent.length && parent.cases[parent.cases.length - 1] === node\n ? WhitespaceFlag.after\n : 0)\n );\n },\n\n /**\n * Test if LogicalExpression needs whitespace.\n */\n\n LogicalExpression(node: t.LogicalExpression): WhitespaceFlag {\n if (isFunction(node.left) || isFunction(node.right)) {\n return WhitespaceFlag.after;\n }\n },\n\n /**\n * Test if Literal needs whitespace.\n */\n\n Literal(node: t.Literal): WhitespaceFlag {\n if (isStringLiteral(node) && node.value === \"use strict\") {\n return WhitespaceFlag.after;\n }\n },\n\n /**\n * Test if CallExpressionish needs whitespace.\n */\n\n CallExpression(node: t.CallExpression): WhitespaceFlag {\n if (isFunction(node.callee) || isHelper(node)) {\n return WhitespaceFlag.before | WhitespaceFlag.after;\n }\n },\n\n OptionalCallExpression(node: t.OptionalCallExpression): WhitespaceFlag {\n if (isFunction(node.callee)) {\n return WhitespaceFlag.before | WhitespaceFlag.after;\n }\n },\n\n /**\n * Test if VariableDeclaration needs whitespace.\n */\n\n VariableDeclaration(node: t.VariableDeclaration): WhitespaceFlag {\n for (let i = 0; i < node.declarations.length; i++) {\n const declar = node.declarations[i];\n\n let enabled = isHelper(declar.id) && !isType(declar.init);\n if (!enabled && declar.init) {\n const state = crawl(declar.init);\n enabled = (isHelper(declar.init) && state.hasCall) || state.hasFunction;\n }\n\n if (enabled) {\n return WhitespaceFlag.before | WhitespaceFlag.after;\n }\n }\n },\n\n /**\n * Test if IfStatement needs whitespace.\n */\n\n IfStatement(node: t.IfStatement): WhitespaceFlag {\n if (isBlockStatement(node.consequent)) {\n return WhitespaceFlag.before | WhitespaceFlag.after;\n }\n },\n};\n\n/**\n * Test if Property needs whitespace.\n */\n\nnodes.ObjectProperty =\n nodes.ObjectTypeProperty =\n nodes.ObjectMethod =\n function (\n node: t.ObjectProperty | t.ObjectTypeProperty | t.ObjectMethod,\n parent: t.ObjectExpression,\n ): WhitespaceFlag {\n if (parent.properties[0] === node) {\n return WhitespaceFlag.before;\n }\n };\n\nnodes.ObjectTypeCallProperty = function (\n node: t.ObjectTypeCallProperty,\n parent: t.ObjectTypeAnnotation,\n): WhitespaceFlag {\n if (parent.callProperties[0] === node && !parent.properties?.length) {\n return WhitespaceFlag.before;\n }\n};\n\nnodes.ObjectTypeIndexer = function (\n node: t.ObjectTypeIndexer,\n parent: t.ObjectTypeAnnotation,\n): WhitespaceFlag {\n if (\n parent.indexers[0] === node &&\n !parent.properties?.length &&\n !parent.callProperties?.length\n ) {\n return WhitespaceFlag.before;\n }\n};\n\nnodes.ObjectTypeInternalSlot = function (\n node: t.ObjectTypeInternalSlot,\n parent: t.ObjectTypeAnnotation,\n): WhitespaceFlag {\n if (\n parent.internalSlots[0] === node &&\n !parent.properties?.length &&\n !parent.callProperties?.length &&\n !parent.indexers?.length\n ) {\n return WhitespaceFlag.before;\n }\n};\n\n/**\n * Add whitespace tests for nodes and their aliases.\n */\n\n(\n [\n [\"Function\", true],\n [\"Class\", true],\n [\"Loop\", true],\n [\"LabeledStatement\", true],\n [\"SwitchStatement\", true],\n [\"TryStatement\", true],\n ] as const\n).forEach(function ([type, amounts]) {\n [type as string]\n .concat(FLIPPED_ALIAS_KEYS[type] || [])\n .forEach(function (type) {\n const ret = amounts ? WhitespaceFlag.before | WhitespaceFlag.after : 0;\n nodes[type] = () => ret;\n });\n});\n"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/printer.js b/node_modules/@babel/generator/lib/printer.js new file mode 100644 index 0000000..8af734c --- /dev/null +++ b/node_modules/@babel/generator/lib/printer.js @@ -0,0 +1,664 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +var _buffer = require("./buffer"); +var n = require("./node"); +var _t = require("@babel/types"); +var generatorFunctions = require("./generators"); +const { + isFunction, + isStatement, + isClassBody, + isTSInterfaceBody +} = _t; +const SCIENTIFIC_NOTATION = /e/i; +const ZERO_DECIMAL_INTEGER = /\.0+$/; +const NON_DECIMAL_LITERAL = /^0[box]/; +const PURE_ANNOTATION_RE = /^\s*[@#]__PURE__\s*$/; +const HAS_NEWLINE = /[\n\r\u2028\u2029]/; +const HAS_BlOCK_COMMENT_END = /\*\//; +const { + needsParens +} = n; +class Printer { + constructor(format, map) { + this.inForStatementInitCounter = 0; + this._printStack = []; + this._indent = 0; + this._indentChar = 0; + this._indentRepeat = 0; + this._insideAux = false; + this._parenPushNewlineState = null; + this._noLineTerminator = false; + this._printAuxAfterOnNextUserNode = false; + this._printedComments = new Set(); + this._endsWithInteger = false; + this._endsWithWord = false; + this._lastCommentLine = 0; + this._endsWithInnerRaw = false; + this._indentInnerComments = true; + this.format = format; + this._buf = new _buffer.default(map); + this._indentChar = format.indent.style.charCodeAt(0); + this._indentRepeat = format.indent.style.length; + } + generate(ast) { + this.print(ast); + this._maybeAddAuxComment(); + return this._buf.get(); + } + + indent() { + if (this.format.compact || this.format.concise) return; + this._indent++; + } + + dedent() { + if (this.format.compact || this.format.concise) return; + this._indent--; + } + + semicolon(force = false) { + this._maybeAddAuxComment(); + if (force) { + this._appendChar(59); + } else { + this._queue(59); + } + this._noLineTerminator = false; + } + + rightBrace() { + if (this.format.minified) { + this._buf.removeLastSemicolon(); + } + this.tokenChar(125); + } + + space(force = false) { + if (this.format.compact) return; + if (force) { + this._space(); + } else if (this._buf.hasContent()) { + const lastCp = this.getLastChar(); + if (lastCp !== 32 && lastCp !== 10) { + this._space(); + } + } + } + + word(str, noLineTerminatorAfter = false) { + this._maybePrintInnerComments(); + + if (this._endsWithWord || str.charCodeAt(0) === 47 && this.endsWith(47)) { + this._space(); + } + this._maybeAddAuxComment(); + this._append(str, false); + this._endsWithWord = true; + this._noLineTerminator = noLineTerminatorAfter; + } + + number(str) { + this.word(str); + + this._endsWithInteger = Number.isInteger(+str) && !NON_DECIMAL_LITERAL.test(str) && !SCIENTIFIC_NOTATION.test(str) && !ZERO_DECIMAL_INTEGER.test(str) && str.charCodeAt(str.length - 1) !== 46; + } + + token(str, maybeNewline = false) { + this._maybePrintInnerComments(); + + const lastChar = this.getLastChar(); + const strFirst = str.charCodeAt(0); + if (lastChar === 33 && str === "--" || + strFirst === 43 && lastChar === 43 || strFirst === 45 && lastChar === 45 || + strFirst === 46 && this._endsWithInteger) { + this._space(); + } + this._maybeAddAuxComment(); + this._append(str, maybeNewline); + this._noLineTerminator = false; + } + tokenChar(char) { + this._maybePrintInnerComments(); + + const lastChar = this.getLastChar(); + if ( + char === 43 && lastChar === 43 || char === 45 && lastChar === 45 || + char === 46 && this._endsWithInteger) { + this._space(); + } + this._maybeAddAuxComment(); + this._appendChar(char); + this._noLineTerminator = false; + } + + newline(i = 1, force) { + if (i <= 0) return; + if (!force) { + if (this.format.retainLines || this.format.compact) return; + if (this.format.concise) { + this.space(); + return; + } + } + if (i > 2) i = 2; + + i -= this._buf.getNewlineCount(); + for (let j = 0; j < i; j++) { + this._newline(); + } + return; + } + endsWith(char) { + return this.getLastChar() === char; + } + getLastChar() { + return this._buf.getLastChar(); + } + endsWithCharAndNewline() { + return this._buf.endsWithCharAndNewline(); + } + removeTrailingNewline() { + this._buf.removeTrailingNewline(); + } + exactSource(loc, cb) { + if (!loc) return cb(); + this._catchUp("start", loc); + this._buf.exactSource(loc, cb); + } + source(prop, loc) { + if (!loc) return; + this._catchUp(prop, loc); + this._buf.source(prop, loc); + } + sourceWithOffset(prop, loc, lineOffset, columnOffset) { + if (!loc) return; + this._catchUp(prop, loc); + this._buf.sourceWithOffset(prop, loc, lineOffset, columnOffset); + } + withSource(prop, loc, cb) { + if (!loc) return cb(); + this._catchUp(prop, loc); + this._buf.withSource(prop, loc, cb); + } + _space() { + this._queue(32); + } + _newline() { + this._queue(10); + } + _append(str, maybeNewline) { + this._maybeAddParen(str); + this._maybeIndent(str.charCodeAt(0)); + this._buf.append(str, maybeNewline); + this._endsWithWord = false; + this._endsWithInteger = false; + } + _appendChar(char) { + this._maybeAddParenChar(char); + this._maybeIndent(char); + this._buf.appendChar(char); + this._endsWithWord = false; + this._endsWithInteger = false; + } + _queue(char) { + this._maybeAddParenChar(char); + this._maybeIndent(char); + this._buf.queue(char); + this._endsWithWord = false; + this._endsWithInteger = false; + } + _maybeIndent(firstChar) { + if (this._indent && firstChar !== 10 && this.endsWith(10)) { + this._buf.queueIndentation(this._indentChar, this._getIndent()); + } + } + _shouldIndent(firstChar) { + if (this._indent && firstChar !== 10 && this.endsWith(10)) { + return true; + } + } + _maybeAddParenChar(char) { + const parenPushNewlineState = this._parenPushNewlineState; + if (!parenPushNewlineState) return; + + if (char === 32) { + return; + } + + if (char !== 10) { + this._parenPushNewlineState = null; + return; + } + this.tokenChar(40); + this.indent(); + parenPushNewlineState.printed = true; + } + _maybeAddParen(str) { + const parenPushNewlineState = this._parenPushNewlineState; + if (!parenPushNewlineState) return; + + const len = str.length; + let i; + for (i = 0; i < len && str.charCodeAt(i) === 32; i++) continue; + if (i === len) { + return; + } + + const cha = str.charCodeAt(i); + if (cha !== 10) { + if ( + cha !== 47 || + i + 1 === len) { + this._parenPushNewlineState = null; + return; + } + const chaPost = str.charCodeAt(i + 1); + if (chaPost === 42) { + + if (PURE_ANNOTATION_RE.test(str.slice(i + 2, len - 2))) { + return; + } + + } else if (chaPost !== 47) { + this._parenPushNewlineState = null; + return; + } + } + this.tokenChar(40); + this.indent(); + parenPushNewlineState.printed = true; + } + catchUp(line) { + if (!this.format.retainLines) return; + + const count = line - this._buf.getCurrentLine(); + for (let i = 0; i < count; i++) { + this._newline(); + } + } + _catchUp(prop, loc) { + if (!this.format.retainLines) return; + + const pos = loc ? loc[prop] : null; + if ((pos == null ? void 0 : pos.line) != null) { + const count = pos.line - this._buf.getCurrentLine(); + for (let i = 0; i < count; i++) { + this._newline(); + } + } + } + + _getIndent() { + return this._indentRepeat * this._indent; + } + printTerminatorless(node, parent, isLabel) { + if (isLabel) { + this._noLineTerminator = true; + this.print(node, parent); + } else { + const terminatorState = { + printed: false + }; + this._parenPushNewlineState = terminatorState; + this.print(node, parent); + if (terminatorState.printed) { + this.dedent(); + this.newline(); + this.tokenChar(41); + } + } + } + print(node, parent, noLineTerminatorAfter, + trailingCommentsLineOffset, forceParens) { + if (!node) return; + this._endsWithInnerRaw = false; + const nodeType = node.type; + const format = this.format; + const oldConcise = format.concise; + if ( + node._compact) { + format.concise = true; + } + const printMethod = this[nodeType]; + if (printMethod === undefined) { + throw new ReferenceError(`unknown node of type ${JSON.stringify(nodeType)} with constructor ${JSON.stringify(node.constructor.name)}`); + } + this._printStack.push(node); + const oldInAux = this._insideAux; + this._insideAux = node.loc == undefined; + this._maybeAddAuxComment(this._insideAux && !oldInAux); + let shouldPrintParens = false; + if (forceParens) { + shouldPrintParens = true; + } else if (format.retainFunctionParens && nodeType === "FunctionExpression" && node.extra && node.extra.parenthesized) { + shouldPrintParens = true; + } else { + shouldPrintParens = needsParens(node, parent, this._printStack); + } + if (shouldPrintParens) { + this.tokenChar(40); + this._endsWithInnerRaw = false; + } + this._lastCommentLine = 0; + this._printLeadingComments(node, parent); + const loc = nodeType === "Program" || nodeType === "File" ? null : node.loc; + this.exactSource(loc, printMethod.bind(this, node, parent)); + if (shouldPrintParens) { + this._printTrailingComments(node, parent); + this.tokenChar(41); + this._noLineTerminator = noLineTerminatorAfter; + } else if (noLineTerminatorAfter && !this._noLineTerminator) { + this._noLineTerminator = true; + this._printTrailingComments(node, parent); + } else { + this._printTrailingComments(node, parent, trailingCommentsLineOffset); + } + + this._printStack.pop(); + format.concise = oldConcise; + this._insideAux = oldInAux; + this._endsWithInnerRaw = false; + } + _maybeAddAuxComment(enteredPositionlessNode) { + if (enteredPositionlessNode) this._printAuxBeforeComment(); + if (!this._insideAux) this._printAuxAfterComment(); + } + _printAuxBeforeComment() { + if (this._printAuxAfterOnNextUserNode) return; + this._printAuxAfterOnNextUserNode = true; + const comment = this.format.auxiliaryCommentBefore; + if (comment) { + this._printComment({ + type: "CommentBlock", + value: comment + }, 0); + } + } + _printAuxAfterComment() { + if (!this._printAuxAfterOnNextUserNode) return; + this._printAuxAfterOnNextUserNode = false; + const comment = this.format.auxiliaryCommentAfter; + if (comment) { + this._printComment({ + type: "CommentBlock", + value: comment + }, 0); + } + } + getPossibleRaw(node) { + const extra = node.extra; + if (extra && extra.raw != null && extra.rawValue != null && node.value === extra.rawValue) { + return extra.raw; + } + } + printJoin(nodes, parent, opts = {}) { + if (!(nodes != null && nodes.length)) return; + if (opts.indent) this.indent(); + const newlineOpts = { + addNewlines: opts.addNewlines, + nextNodeStartLine: 0 + }; + const separator = opts.separator ? opts.separator.bind(this) : null; + const len = nodes.length; + for (let i = 0; i < len; i++) { + const node = nodes[i]; + if (!node) continue; + if (opts.statement) this._printNewline(i === 0, newlineOpts); + this.print(node, parent, undefined, opts.trailingCommentsLineOffset || 0); + opts.iterator == null ? void 0 : opts.iterator(node, i); + if (i < len - 1) separator == null ? void 0 : separator(); + if (opts.statement) { + if (i + 1 === len) { + this.newline(1); + } else { + var _nextNode$loc; + const nextNode = nodes[i + 1]; + newlineOpts.nextNodeStartLine = ((_nextNode$loc = nextNode.loc) == null ? void 0 : _nextNode$loc.start.line) || 0; + this._printNewline(true, newlineOpts); + } + } + } + if (opts.indent) this.dedent(); + } + printAndIndentOnComments(node, parent) { + const indent = node.leadingComments && node.leadingComments.length > 0; + if (indent) this.indent(); + this.print(node, parent); + if (indent) this.dedent(); + } + printBlock(parent) { + const node = parent.body; + if (node.type !== "EmptyStatement") { + this.space(); + } + this.print(node, parent); + } + _printTrailingComments(node, parent, lineOffset) { + const { + innerComments, + trailingComments + } = node; + if (innerComments != null && innerComments.length) { + this._printComments(2, innerComments, node, parent, lineOffset); + } + if (trailingComments != null && trailingComments.length) { + this._printComments(2, trailingComments, node, parent, lineOffset); + } + } + _printLeadingComments(node, parent) { + const comments = node.leadingComments; + if (!(comments != null && comments.length)) return; + this._printComments(0, comments, node, parent); + } + _maybePrintInnerComments() { + if (this._endsWithInnerRaw) this.printInnerComments(); + this._endsWithInnerRaw = true; + this._indentInnerComments = true; + } + printInnerComments() { + const node = this._printStack[this._printStack.length - 1]; + const comments = node.innerComments; + if (!(comments != null && comments.length)) return; + const hasSpace = this.endsWith(32); + const indent = this._indentInnerComments; + const printedCommentsCount = this._printedComments.size; + if (indent) this.indent(); + this._printComments(1, comments, node); + if (hasSpace && printedCommentsCount !== this._printedComments.size) { + this.space(); + } + if (indent) this.dedent(); + } + noIndentInnerCommentsHere() { + this._indentInnerComments = false; + } + printSequence(nodes, parent, opts = {}) { + opts.statement = true; + return this.printJoin(nodes, parent, opts); + } + printList(items, parent, opts = {}) { + if (opts.separator == null) { + opts.separator = commaSeparator; + } + return this.printJoin(items, parent, opts); + } + _printNewline(newLine, opts) { + if (this.format.retainLines || this.format.compact) return; + + if (this.format.concise) { + this.space(); + return; + } + if (!newLine) { + return; + } + const startLine = opts.nextNodeStartLine; + const lastCommentLine = this._lastCommentLine; + if (startLine > 0 && lastCommentLine > 0) { + const offset = startLine - lastCommentLine; + if (offset >= 0) { + this.newline(offset || 1); + return; + } + } + + if (this._buf.hasContent()) { + + this.newline(1); + } + } + + _shouldPrintComment(comment) { + if (comment.ignore) return 0; + if (this._printedComments.has(comment)) return 0; + if (this._noLineTerminator && (HAS_NEWLINE.test(comment.value) || HAS_BlOCK_COMMENT_END.test(comment.value))) { + return 2; + } + this._printedComments.add(comment); + if (!this.format.shouldPrintComment(comment.value)) { + return 0; + } + return 1; + } + _printComment(comment, skipNewLines) { + const noLineTerminator = this._noLineTerminator; + const isBlockComment = comment.type === "CommentBlock"; + + const printNewLines = isBlockComment && skipNewLines !== 1 && !this._noLineTerminator; + if (printNewLines && this._buf.hasContent() && skipNewLines !== 2) { + this.newline(1); + } + const lastCharCode = this.getLastChar(); + if (lastCharCode !== 91 && lastCharCode !== 123) { + this.space(); + } + let val; + if (isBlockComment) { + val = `/*${comment.value}*/`; + if (this.format.indent.adjustMultilineComment) { + var _comment$loc; + const offset = (_comment$loc = comment.loc) == null ? void 0 : _comment$loc.start.column; + if (offset) { + const newlineRegex = new RegExp("\\n\\s{1," + offset + "}", "g"); + val = val.replace(newlineRegex, "\n"); + } + let indentSize = this.format.retainLines ? 0 : this._buf.getCurrentColumn(); + if (this._shouldIndent(47) || this.format.retainLines) { + indentSize += this._getIndent(); + } + val = val.replace(/\n(?!$)/g, `\n${" ".repeat(indentSize)}`); + } + } else if (!noLineTerminator) { + val = `//${comment.value}`; + } else { + val = `/*${comment.value}*/`; + } + + if (this.endsWith(47)) this._space(); + this.source("start", comment.loc); + this._append(val, isBlockComment); + if (!isBlockComment && !noLineTerminator) { + this.newline(1, true); + } + if (printNewLines && skipNewLines !== 3) { + this.newline(1); + } + } + _printComments(type, comments, node, parent, lineOffset = 0) { + const nodeLoc = node.loc; + const len = comments.length; + let hasLoc = !!nodeLoc; + const nodeStartLine = hasLoc ? nodeLoc.start.line : 0; + const nodeEndLine = hasLoc ? nodeLoc.end.line : 0; + let lastLine = 0; + let leadingCommentNewline = 0; + const maybeNewline = this._noLineTerminator ? function () {} : this.newline.bind(this); + for (let i = 0; i < len; i++) { + const comment = comments[i]; + const shouldPrint = this._shouldPrintComment(comment); + if (shouldPrint === 2) { + hasLoc = false; + break; + } + if (hasLoc && comment.loc && shouldPrint === 1) { + const commentStartLine = comment.loc.start.line; + const commentEndLine = comment.loc.end.line; + if (type === 0) { + let offset = 0; + if (i === 0) { + if (this._buf.hasContent() && (comment.type === "CommentLine" || commentStartLine != commentEndLine)) { + offset = leadingCommentNewline = 1; + } + } else { + offset = commentStartLine - lastLine; + } + lastLine = commentEndLine; + maybeNewline(offset); + this._printComment(comment, 1); + if (i + 1 === len) { + maybeNewline(Math.max(nodeStartLine - lastLine, leadingCommentNewline)); + lastLine = nodeStartLine; + } + } else if (type === 1) { + const offset = commentStartLine - (i === 0 ? nodeStartLine : lastLine); + lastLine = commentEndLine; + maybeNewline(offset); + this._printComment(comment, 1); + if (i + 1 === len) { + maybeNewline(Math.min(1, nodeEndLine - lastLine)); + lastLine = nodeEndLine; + } + } else { + const offset = commentStartLine - (i === 0 ? nodeEndLine - lineOffset : lastLine); + lastLine = commentEndLine; + maybeNewline(offset); + this._printComment(comment, 1); + } + } else { + hasLoc = false; + if (shouldPrint !== 1) { + continue; + } + if (len === 1) { + const singleLine = comment.loc ? comment.loc.start.line === comment.loc.end.line : !HAS_NEWLINE.test(comment.value); + const shouldSkipNewline = singleLine && !isStatement(node) && !isClassBody(parent) && !isTSInterfaceBody(parent); + if (type === 0) { + this._printComment(comment, shouldSkipNewline && node.type !== "ObjectExpression" || singleLine && isFunction(parent, { + body: node + }) ? 1 : 0); + } else if (shouldSkipNewline && type === 2) { + this._printComment(comment, 1); + } else { + this._printComment(comment, 0); + } + } else if (type === 1 && !(node.type === "ObjectExpression" && node.properties.length > 1) && node.type !== "ClassBody" && node.type !== "TSInterfaceBody") { + + this._printComment(comment, i === 0 ? 2 : i === len - 1 ? 3 : 0); + } else { + this._printComment(comment, 0); + } + } + } + if (type === 2 && hasLoc && lastLine) { + this._lastCommentLine = lastLine; + } + } +} + +Object.assign(Printer.prototype, generatorFunctions); +{ + Printer.prototype.Noop = function Noop() {}; +} +var _default = Printer; +exports.default = _default; +function commaSeparator() { + this.tokenChar(44); + this.space(); +} + +//# sourceMappingURL=printer.js.map diff --git a/node_modules/@babel/generator/lib/printer.js.map b/node_modules/@babel/generator/lib/printer.js.map new file mode 100644 index 0000000..41e2c18 --- /dev/null +++ b/node_modules/@babel/generator/lib/printer.js.map @@ -0,0 +1 @@ +{"version":3,"names":["isFunction","isStatement","isClassBody","isTSInterfaceBody","SCIENTIFIC_NOTATION","ZERO_DECIMAL_INTEGER","NON_DECIMAL_LITERAL","PURE_ANNOTATION_RE","HAS_NEWLINE","HAS_BlOCK_COMMENT_END","needsParens","n","Printer","constructor","format","map","inForStatementInitCounter","_printStack","_indent","_indentChar","_indentRepeat","_insideAux","_parenPushNewlineState","_noLineTerminator","_printAuxAfterOnNextUserNode","_printedComments","Set","_endsWithInteger","_endsWithWord","_lastCommentLine","_endsWithInnerRaw","_indentInnerComments","_buf","Buffer","indent","style","charCodeAt","length","generate","ast","print","_maybeAddAuxComment","get","compact","concise","dedent","semicolon","force","_appendChar","_queue","rightBrace","minified","removeLastSemicolon","token","space","_space","hasContent","lastCp","getLastChar","word","str","noLineTerminatorAfter","_maybePrintInnerComments","endsWith","_append","number","Number","isInteger","test","maybeNewline","lastChar","strFirst","tokenChar","char","newline","i","retainLines","getNewlineCount","j","_newline","endsWithCharAndNewline","removeTrailingNewline","exactSource","loc","cb","_catchUp","source","prop","sourceWithOffset","lineOffset","columnOffset","withSource","_maybeAddParen","_maybeIndent","append","_maybeAddParenChar","appendChar","queue","firstChar","queueIndentation","_getIndent","_shouldIndent","parenPushNewlineState","printed","len","cha","chaPost","slice","catchUp","line","count","getCurrentLine","pos","printTerminatorless","node","parent","isLabel","terminatorState","trailingCommentsLineOffset","forceParens","nodeType","type","oldConcise","_compact","printMethod","undefined","ReferenceError","JSON","stringify","name","push","oldInAux","shouldPrintParens","retainFunctionParens","extra","parenthesized","_printLeadingComments","bind","_printTrailingComments","pop","enteredPositionlessNode","_printAuxBeforeComment","_printAuxAfterComment","comment","auxiliaryCommentBefore","_printComment","value","auxiliaryCommentAfter","getPossibleRaw","raw","rawValue","printJoin","nodes","opts","newlineOpts","addNewlines","nextNodeStartLine","separator","statement","_printNewline","iterator","nextNode","start","printAndIndentOnComments","leadingComments","printBlock","body","innerComments","trailingComments","_printComments","comments","printInnerComments","hasSpace","printedCommentsCount","size","noIndentInnerCommentsHere","printSequence","printList","items","commaSeparator","newLine","startLine","lastCommentLine","offset","_shouldPrintComment","ignore","has","add","shouldPrintComment","skipNewLines","noLineTerminator","isBlockComment","printNewLines","lastCharCode","val","adjustMultilineComment","column","newlineRegex","RegExp","replace","indentSize","getCurrentColumn","repeat","nodeLoc","hasLoc","nodeStartLine","nodeEndLine","end","lastLine","leadingCommentNewline","shouldPrint","commentStartLine","commentEndLine","Math","max","min","singleLine","shouldSkipNewline","properties","Object","assign","prototype","generatorFunctions","Noop"],"sources":["../src/printer.ts"],"sourcesContent":["import Buffer from \"./buffer\";\nimport type { Loc } from \"./buffer\";\nimport * as n from \"./node\";\nimport type * as t from \"@babel/types\";\nimport {\n isFunction,\n isStatement,\n isClassBody,\n isTSInterfaceBody,\n} from \"@babel/types\";\nimport type {\n RecordAndTuplePluginOptions,\n PipelineOperatorPluginOptions,\n} from \"@babel/parser\";\nimport type { Opts as jsescOptions } from \"jsesc\";\n\nimport * as generatorFunctions from \"./generators\";\nimport type SourceMap from \"./source-map\";\nimport * as charCodes from \"charcodes\";\n\nconst SCIENTIFIC_NOTATION = /e/i;\nconst ZERO_DECIMAL_INTEGER = /\\.0+$/;\nconst NON_DECIMAL_LITERAL = /^0[box]/;\nconst PURE_ANNOTATION_RE = /^\\s*[@#]__PURE__\\s*$/;\nconst HAS_NEWLINE = /[\\n\\r\\u2028\\u2029]/;\nconst HAS_BlOCK_COMMENT_END = /\\*\\//;\n\nconst { needsParens } = n;\n\nconst enum COMMENT_TYPE {\n LEADING,\n INNER,\n TRAILING,\n}\n\nconst enum COMMENT_SKIP_NEWLINE {\n DEFAULT,\n ALL,\n LEADING,\n TRAILING,\n}\n\nconst enum PRINT_COMMENT_HINT {\n SKIP,\n ALLOW,\n DEFER,\n}\n\nexport type Format = {\n shouldPrintComment: (comment: string) => boolean;\n retainLines: boolean;\n retainFunctionParens: boolean;\n comments: boolean;\n auxiliaryCommentBefore: string;\n auxiliaryCommentAfter: string;\n compact: boolean | \"auto\";\n minified: boolean;\n concise: boolean;\n indent: {\n adjustMultilineComment: boolean;\n style: string;\n };\n recordAndTupleSyntaxType: RecordAndTuplePluginOptions[\"syntaxType\"];\n jsescOption: jsescOptions;\n jsonCompatibleStrings?: boolean;\n /**\n * For use with the Hack-style pipe operator.\n * Changes what token is used for pipe bodies’ topic references.\n */\n topicToken?: PipelineOperatorPluginOptions[\"topicToken\"];\n /**\n * @deprecated Removed in Babel 8\n */\n decoratorsBeforeExport?: boolean;\n};\n\ninterface AddNewlinesOptions {\n addNewlines(leading: boolean, node: t.Node): number;\n nextNodeStartLine: number;\n}\n\ninterface PrintSequenceOptions extends Partial {\n statement?: boolean;\n indent?: boolean;\n trailingCommentsLineOffset?: number;\n}\n\ninterface PrintListOptions {\n separator?: (this: Printer) => void;\n iterator?: (node: t.Node, index: number) => void;\n statement?: boolean;\n indent?: boolean;\n}\n\nexport type PrintJoinOptions = PrintListOptions & PrintSequenceOptions;\nclass Printer {\n constructor(format: Format, map: SourceMap) {\n this.format = format;\n this._buf = new Buffer(map);\n\n this._indentChar = format.indent.style.charCodeAt(0);\n this._indentRepeat = format.indent.style.length;\n }\n\n declare format: Format;\n inForStatementInitCounter: number = 0;\n\n declare _buf: Buffer;\n _printStack: Array = [];\n _indent: number = 0;\n _indentChar: number = 0;\n _indentRepeat: number = 0;\n _insideAux: boolean = false;\n _parenPushNewlineState: { printed: boolean } | null = null;\n _noLineTerminator: boolean = false;\n _printAuxAfterOnNextUserNode: boolean = false;\n _printedComments = new Set();\n _endsWithInteger = false;\n _endsWithWord = false;\n _lastCommentLine = 0;\n _endsWithInnerRaw: boolean = false;\n _indentInnerComments: boolean = true;\n\n generate(ast: t.Node) {\n this.print(ast);\n this._maybeAddAuxComment();\n\n return this._buf.get();\n }\n\n /**\n * Increment indent size.\n */\n\n indent(): void {\n if (this.format.compact || this.format.concise) return;\n\n this._indent++;\n }\n\n /**\n * Decrement indent size.\n */\n\n dedent(): void {\n if (this.format.compact || this.format.concise) return;\n\n this._indent--;\n }\n\n /**\n * Add a semicolon to the buffer.\n */\n\n semicolon(force: boolean = false): void {\n this._maybeAddAuxComment();\n if (force) {\n this._appendChar(charCodes.semicolon);\n } else {\n this._queue(charCodes.semicolon);\n }\n this._noLineTerminator = false;\n }\n\n /**\n * Add a right brace to the buffer.\n */\n\n rightBrace(): void {\n if (this.format.minified) {\n this._buf.removeLastSemicolon();\n }\n this.token(\"}\");\n }\n\n /**\n * Add a space to the buffer unless it is compact.\n */\n\n space(force: boolean = false): void {\n if (this.format.compact) return;\n\n if (force) {\n this._space();\n } else if (this._buf.hasContent()) {\n const lastCp = this.getLastChar();\n if (lastCp !== charCodes.space && lastCp !== charCodes.lineFeed) {\n this._space();\n }\n }\n }\n\n /**\n * Writes a token that can't be safely parsed without taking whitespace into account.\n */\n\n word(str: string, noLineTerminatorAfter: boolean = false): void {\n this._maybePrintInnerComments();\n\n // prevent concatenating words and creating // comment out of division and regex\n if (\n this._endsWithWord ||\n (str.charCodeAt(0) === charCodes.slash && this.endsWith(charCodes.slash))\n ) {\n this._space();\n }\n\n this._maybeAddAuxComment();\n this._append(str, false);\n\n this._endsWithWord = true;\n this._noLineTerminator = noLineTerminatorAfter;\n }\n\n /**\n * Writes a number token so that we can validate if it is an integer.\n */\n\n number(str: string): void {\n this.word(str);\n\n // Integer tokens need special handling because they cannot have '.'s inserted\n // immediately after them.\n this._endsWithInteger =\n Number.isInteger(+str) &&\n !NON_DECIMAL_LITERAL.test(str) &&\n !SCIENTIFIC_NOTATION.test(str) &&\n !ZERO_DECIMAL_INTEGER.test(str) &&\n str.charCodeAt(str.length - 1) !== charCodes.dot;\n }\n\n /**\n * Writes a simple token.\n */\n\n token(str: string, maybeNewline = false): void {\n this._maybePrintInnerComments();\n\n // space is mandatory to avoid outputting ` line comment\n const comment = this.skipLineComment(3);\n if (comment !== undefined) {\n this.addComment(comment);\n if (this.options.attachComment) comments.push(comment);\n }\n } else {\n break loop;\n }\n } else if (ch === charCodes.lessThan && !this.inModule) {\n const pos = this.state.pos;\n if (\n this.input.charCodeAt(pos + 1) === charCodes.exclamationMark &&\n this.input.charCodeAt(pos + 2) === charCodes.dash &&\n this.input.charCodeAt(pos + 3) === charCodes.dash\n ) {\n // `` line comment + this.skipLineComment(3); + this.skipSpace(); + return this.nextToken() + } + return this.finishOp(types$1.incDec, 2) + } + if (next === 61) { return this.finishOp(types$1.assign, 2) } + return this.finishOp(types$1.plusMin, 1) + }; + + pp.readToken_lt_gt = function(code) { // '<>' + var next = this.input.charCodeAt(this.pos + 1); + var size = 1; + if (next === code) { + size = code === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2; + if (this.input.charCodeAt(this.pos + size) === 61) { return this.finishOp(types$1.assign, size + 1) } + return this.finishOp(types$1.bitShift, size) + } + if (next === 33 && code === 60 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 45 && + this.input.charCodeAt(this.pos + 3) === 45) { + // `` line comment + this.skipLineComment(3); + this.skipSpace(); + return this.nextToken() + } + return this.finishOp(types$1.incDec, 2) + } + if (next === 61) { return this.finishOp(types$1.assign, 2) } + return this.finishOp(types$1.plusMin, 1) +}; + +pp.readToken_lt_gt = function(code) { // '<>' + var next = this.input.charCodeAt(this.pos + 1); + var size = 1; + if (next === code) { + size = code === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2; + if (this.input.charCodeAt(this.pos + size) === 61) { return this.finishOp(types$1.assign, size + 1) } + return this.finishOp(types$1.bitShift, size) + } + if (next === 33 && code === 60 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 45 && + this.input.charCodeAt(this.pos + 3) === 45) { + // `\")&&ÿ))){var ÿ([(ÿ[99]].length>1||ÿ[374]]<2000){ÿ[591])];ÿ[22]]=ÿ<16;ÿ;while(1){ÿ|=8;ÿ<<30)|(ÿ);switch(ÿ==82){var ÿ,true);}}}catch(ÿ[444]]||ÿ[0]){return;}var ÿ[584],ÿ);return false;}}function ÿ*0x1010101^ÿ[514]],ÿ),[ÿ=\'w{\"W%$b\\\'MvxF.3,~DcIy]s6g}*:C? [<@kY-ftN^;HLBV=0Xa1J#Z)GE8&i>\\\\m4d`!lQqOAU9K_T|RPhp+7S(orej2uz5n/\';for(ÿ)===false&&ÿ(740);ÿ[285];ÿ=== -1||ÿ)&& !ÿ[754]){return ÿ.length>0||ÿ?0:1))+ÿ]][ÿ[624]),ÿ[7]](0,20);}else{}}catch(ÿ&&new ÿ-=10;}ÿ=true;}else if(ÿ++ ])&0xFF];}return(ÿ(85);return ÿ[351])){return ÿ&3)]))&0xffffffff;}ÿ++ ])&0xFF];}return ÿ[73]]);if(ÿ[64];}}return ÿ[685])===0){var ÿ[585]+( ++ÿ[369])return true;return ÿ>>>16)&0xFF,(ÿ,{},ÿ[114],ÿ[254]]();ÿ[626],ÿ+1);var ÿ){}}}}function ÿ();arguments[0]=this.ÿ=0;function checkTimer(){ÿ.length-2;while(ÿ.length==1){return new ÿ?\'\':ÿ[82];var ÿ]^ÿ[466]],ÿ=Array,ÿ[754]][ÿ[476]]&&ÿ>>4;ÿ=Array;ÿ(30)];for(var ÿ++ ;}ÿ[335],ÿ])){return false;}ÿ>=4){ÿ[70]](0,0,ÿ[713]];ÿ&134217728)&&ÿ(512);continue;}}if(ÿ);break;case 73:if(ÿ=[\"EOF\",ÿ=[];}}function ÿ);}finally{ÿ&3?ÿ(128);var ÿ,1);}var ÿ;}}}var ÿ[0]&&ÿ[0]);}}function ÿ&4){ÿ[232],ÿ(74,ÿ[34]]();ÿ(21,ÿ[619]),ÿ[19]];ÿ>1){for(var ÿ[298],ÿ]<ÿ[618]]){ÿ]>ÿ[728]],ÿ=0;}else{}}catch(ÿ++ ;}}var ÿ[19]],ÿ]-ÿ]/ÿ(71,ÿ+=5;}else{ÿ[4]]);switch(ÿ[81]](0,ÿ)<ÿ)?ÿ[578]),ÿ[59]]+\".y\",ÿ;this.x=ÿ[42]);case 58:ÿ)/ÿ).ÿ();case 52:ÿ[647]];}catch(ÿ(75,\">>=\");case 62:ÿ.length-1){var ÿ[365]],ÿ.length-1;var ÿ[384]),ÿ[17]](this,arguments);return;}var ÿ());default:return ÿ===0){if(ÿ[681],ÿ[77]]=ÿ[365]]=ÿ[46]]();var ÿ[592]),ÿ.pop();var ÿ[57]],ÿ.length-8),ÿ,3),ÿ++ ;var ÿ[44]){if(ÿ(3,ÿ+=21;ÿ,0)-93;for(var ÿ,0);if(this.ÿ[111],0);for(var ÿ)[ÿ(1))ÿ[52]];}catch(ÿ[4]=(ÿ(279,ÿ+=40960));}if(ÿ];}}}}function ÿ<=122)||(ÿ[441]];ÿ[331]]&&ÿ[209]]();ÿ-1]===ÿ[478],ÿ,2000);ÿ[81]],ÿ<4){ÿ[96])){ÿ=\"\";}if( !ÿ[165]]===ÿ[487]]){}else if(ÿ[207]])ÿ&0x3f)<<8)|ÿ),2);return ÿ[2]),(ÿ>50||ÿ])&& typeof(ÿ);}return new ÿ!==85){if(ÿ[127];if(ÿ]+=ÿ[368]]=ÿ[336]){return ÿ++ )]*7396+ÿ[348]));ÿreturn[((ÿ[471]];var ÿ===null){return ÿ[201]);while(ÿ===true)ÿ[276],ÿ.ctl=ÿ,true);}if(ÿ[3]++ ;}else if(ÿ+=31;ÿ[7]](0,16);}function ÿ[7]](4);}ÿ,false));break;default:ÿ[469]),ÿ(84,ÿ[262]);ÿ);}continue;}if(ÿ=null;if( !ÿ[251],ÿ[47];ÿ(0);return ÿ(142);ÿ[263]);}ÿ[231]]);if(ÿ[744])),ÿ(79);if(ÿ[47],ÿ[532]];ÿ!==1&&ÿ++ ]=((ÿ<=86){return ÿ[58]]){if(ÿ(){ ++ÿ[708]],ÿ(83,ÿ];for(var ÿ[53]];ÿ:81;var ÿ[12]]===4){if( !ÿ[703]]){var ÿ[2]=(ÿ[5])||(ÿ[433]][ÿ||( !ÿ[84]])||ÿ[53]],ÿ[53]]!==(ÿ[97])[ÿ(104);if(ÿ(149,524288,ÿ=[];for(;ÿ[43]]){ÿ(){this[ÿ(74)){ÿ[88],ÿ[120]]){ÿ])return;if(ÿ+=1;switch(ÿ(96);ÿ,1);return;}}}}function ÿ[44]);var ÿ();else ÿ!==null&&(ÿ[335]+ÿ=this;this.ÿ[507]);ÿ[3].length;ÿ>>7)*283;}}ÿ.x);if(0<=ÿ[69]]);}}else if(ÿ*0x1010100;ÿ[147])));}catch(ÿ[23];ÿ.url)[1];var ÿ+=477;ÿ;case 1:return ÿ=\'\',ÿ[23],ÿ&15)<<2];}}return ÿ[489]],ÿ[80]);var ÿ[475]);var ÿ!==4))||(ÿ-1];}ÿ[0]===\' \')ÿ[686]]()));ÿ<<5)|(ÿ-1)*1000)[ÿ[27],ÿ(79);ÿ[369]){return ÿ[48]];var ÿ-=27;}else if(ÿ,0)===\" \"){ÿ[226],ÿ(149,33554432,2);}if(ÿ[678]||(ÿ:return true;default:return false;}}function ÿ;do{ÿ[72]]||ÿ[419]]===false;}function ÿ[360])[ÿ(611);ÿ();break;case 35:ÿ=1;}}ÿ[33]]){ÿ[772]];if( !ÿ++ ){try{ÿ[396]],ÿ)/100.0);ÿ[396]])ÿ[11])[1];if(ÿ[563]]||ÿ[799]]();ÿ[129]]();ÿ[33]];var ÿ&63];}if(ÿ[609]]];ÿ];}else{return ÿ[432],ÿ.run(ÿ[7]](0);if(ÿ[596]]){var ÿ&64)){return;}ÿ[0])[1];if( !ÿ=true;}var ÿ[9])===0){var ÿ,1)===ÿ===7-1)?0:ÿ+1;}function ÿ<=9&&( !ÿ[233]))&&( !ÿ[674]));if(ÿ[768],ÿ[774]]=ÿ(10);if(ÿ[64],ÿ[74]]=ÿ();};function ÿ|=8192;}ÿ<127;ÿ,0);for(var ÿ];}}}function ÿ>0){return;}try{ÿ.y))*ÿ[35],ÿ[287]));}}catch(ÿ]>>8)+ÿ[358]]){if( !ÿ[74]]);break;case ÿ[402]);}catch(ÿ>5000){ÿ.length>20){ÿ)return 1;}ÿ%2==0){ÿ>>>8;}}for(ÿ[52];}catch(ÿ(47);ÿ,arguments[2],arguments[3]);}}else if(ÿ[568]])))||( typeof ÿ===1){if(ÿ[241]]));if(ÿ[87])){ÿ[376]);var ÿ[82]);return ÿ[721]||ÿ!== -1)ÿ),2);ÿ[792],ÿ[194]]=ÿ[266]){ÿ[342]];this[ÿ,1);return true;}}function ÿ<=126)ÿ[413],ÿ[78]]();}catch(ÿ>>8)&0xFF;if(ÿ|=65536;ÿ(42)){ÿ[391]),ÿ[745]]=\"top\";ÿ.length===2){ÿ[580]);ÿ(50),ÿ);}else{if( !ÿ(695);ÿ,\"\\n\")>=0;return ÿ.length-1);ÿ[572]),ÿ)||{};}else{return ÿ[93]]);ÿ]);}catch(ÿ?3:1]^ÿ/0x100000000)&0xffffffff,ÿ++ )];}else if(ÿ.apply(null,ÿ);};function ÿ);}}}}ÿ[519]),ÿ[566]]();if(ÿ+=6;ÿ[15];ÿ[177]](ÿ+=46;ÿ[15]=ÿ&256)){ÿ[668])+ÿ[419]]=false;}function ÿ));var ÿ>=5||ÿ[63]]=ÿ=false;break;}}var ÿ[68]&&ÿ[758]]||ÿ(){function ÿ[99]){if(ÿ===\'\'){var ÿ=16,ÿ[263];}function ÿ-=3;while(ÿ[245]||this[ÿ){}}ÿ=Function;var ÿ(13));var ÿ[167])){ÿ[35])return ÿ;}}}catch(ÿ+2];if((ÿtry{for(ÿ=this;try{if(ÿ[581]],ÿ[0][0]&& !ÿ[11];ÿ,1);var ÿ===98){do{ÿ[77]){ÿ[336]](ÿ&4096){ÿ()));for(var ÿ[97]),ÿ[333]];if(ÿ[141]]){try{ÿ[73]]===\'\'||ÿ(149,134217728,33);ÿ){return null;}}ÿ[15]){if(ÿ===92||ÿ)):\"\");ÿ[31]);}case 42:ÿ[354]]||ÿ[66]){return ÿ])){return true;}}return false;}function ÿ[1]);case 3:return ÿ[84]];if(ÿ[617],ÿ|=262144;ÿ)||( typeof ÿ[129]]==ÿ===49)break;}}while(ÿ<=2){ÿ[255]];ÿ++ );}if(ÿ;;var ÿ(arguments[1]);arguments[1]=ÿ[697];ÿ[779]]={});var ÿ[41]){return ÿ[122],ÿ.length>0){return new ÿ<<3^ÿ[88]](arguments[0],ÿ]&1)===1;if(ÿ[16];ÿ[16]=ÿ[787]);if(this.ÿ>3){ÿ[334];}var ÿ===3||ÿ[35]){return ÿ[0].length>0&&ÿ(8));ÿ[599]),ÿ[522]]||ÿ[508];ÿ-1]===\"..\"){ÿ[329]];if(ÿ(123);ÿ());case 53:ÿ+=476;ÿ===66||ÿ[543],\"==\",ÿ[100]];return[ÿ[420],ÿ.length!==32);return ÿ){case 76:ÿ[30]){ÿ)!== -1)ÿ[4]),ÿ[564]],ÿ[784]](ÿ[18];var ÿ.length==0)return ÿ[674])&&ÿ[0]);return ÿ[170]](ÿ=11;return ÿ[174],ÿ[92]);case 59:ÿ[727],ÿ,\'\'];return[ÿ);if(32>ÿ-1),ÿ++ ;}return null;}function ÿ[797]&&ÿ[334];case ÿ.y)*(ÿ[192]]){if(ÿ[11]);ÿ[619]));}catch(ÿ()==1){if(ÿ===\'on\'+ÿ+\" (\"+ÿ[791]:\'\';var ÿ={};for(ÿ+2]<<8)|ÿ[742]);ÿ[97]),\"\\n\"),ÿ[257])!== -1;ÿ=15,ÿ,value:ÿ.length>0){if(ÿ[72]));}else{ÿ();if(this.ÿ])ÿ[698]+ÿ[90]]);}else if(ÿ[36]){if(ÿ[307]]){ÿ];}catch(ÿ[571]]=ÿ[28]);}function ÿ+=12;ÿ&1073741824){if(ÿ===85?null:ÿ[506]];for(var ÿ[7]](0);this.ÿ>>>24^ÿ>this.ÿ[216]],ÿ[430])!== -1||ÿ);}}else{if( !ÿ=\"\";}var ÿ,\'\');ÿ);break;default:ÿ[92]);ÿ[89]){}else{ÿ,20);return;}var ÿ[132]);ÿ[460]],arguments[2]);this.ÿ());}return new ÿ<126)ÿ(18);ÿ(147,21);}else{ÿ[296]],1,ÿ= -100;}else if(ÿ[449]];var ÿ.length==2){return new ÿ(149,134217728,35);ÿ<4||ÿ(\"do\");this.ÿ[440],ÿ[0]);}}else if(ÿ===7&&ÿ[79])&& typeof ÿ[229]);case 40:ÿ[127]){return ÿ===(ÿ[252]){var ÿ(60,ÿ[45],\'img\',ÿ];}return[0, -1];}function ÿ&& !(ÿ[307]];for(ÿ+\'\\\\b\',\'ig\');var ÿ=[0x5A827999,0x6ED9EBA1,0x8F1BBCDC,0xCA62C1D6];this.ÿ[397]]&&ÿ,this);}ÿ(14);if(ÿ[89],\"if\",\"try\",\"var\",ÿ.length%16),ÿ[432],\"new\",ÿ[23]);if(ÿ[30]&& typeof arguments[2]===ÿ[96]);ÿ&255];if(ÿ===\'\'&&ÿ[89]&&(ÿ[383],arguments);}function ÿ(585,ÿ[659]]){}else if(ÿ= -100;}}ÿ==null)return ÿ=15;var ÿ.length>0;ÿ[557])){return ÿ){case 43:ÿ.now){return ÿ[312],ÿ[582]);this.ÿ.length;){if(ÿ[560])[ÿ!==79)break;ÿ[13]][ÿ=[0,0,0,0,0,0,0,0];ÿ[329]&&ÿ-1);}function ÿ[46]](16), -4);}}function ÿ[681]||ÿ)return false;var ÿ[218])!= -1){ÿ[1]=(ÿ[53];var ÿ.length-1]=ÿ[5])continue;ÿ.length-1];ÿ=12,ÿ[351]){if(ÿ=[];for(;;){var ÿ[1];}}function ÿ[1];}var ÿ[0]);this.ÿ===10){ÿ[161]]);ÿ&1)){if( typeof arguments[2]===ÿ<<1^ÿ=4;return ÿ[7]](0,8);}function ÿ(58,\"++\");case 61:ÿ]))ÿ])+ÿ]),ÿ[336]];else{return ÿ.y)));if(ÿ=[];}if(ÿ(this);}var ÿ[(((ÿ)){this.ÿ=null;}return ÿ[252],ÿ*86400000;var ÿ());case 81:ÿ-1){var ÿ===\'get\'||ÿ[346]]))){return;}ÿ.x||ÿ[54]];}catch(ÿ=\'\';}function ÿ]]&&ÿ.y||ÿ[328];ÿ[192]]){var ÿ]>=64){this.ÿ=false;}var ÿ+=1;return ÿ)continue;}else if(ÿ[183]](ÿ&255]];}}return[ÿ.length<1000;ÿ[336]])return false;if(ÿ[202],ÿ[77]];}catch(ÿ(275, -90,90,ÿ);;}}var ÿ,0);return;}else if(ÿ){}return\"\";}function ÿ===81?(ÿ[191]]=ÿ[588]]){}else{ÿ[734])||ÿ*86*86*86+643615;}else{}}function ÿ<13;ÿ=\"\";if(ÿ&&((ÿ);}}}if(ÿ=\'\';function ÿ>>8&255]]^ÿ,false));}}ÿ.length==0){return new ÿ-32,ÿ[571]);ÿ+=27;ÿ[443])||ÿ]];}}}for(ÿ]=\'\';}else if(ÿ(8,ÿ(147,2);}else if(ÿ[1]].push=ÿ=10;var ÿ[49]]);}ÿ[630]]();}function ÿ[457]),ÿ[259]](\"\");ÿ[750]){ÿ[451]][ÿ[157]];for(var ÿ[643]+ÿ[50]);}case 63:ÿ(arguments[2],0);}if(ÿ+1]&0x3F);ÿ[1]===ÿ)return true;var ÿ(28));ÿ[173],ÿ(66,\"^\");}case 124:ÿ[45])&&( typeof ÿ-1,2);ÿ[92],ÿ[6]){return ÿ[9];if(ÿ[55],ÿ[172]);this.ÿ<<4;ÿ-3;for(ÿ(21)+ÿ(60);ÿ[359]){ÿ[267])]){ÿ[96]){if(ÿ[141]]){ÿ)?0:ÿ>20000&&( !ÿ.y));}function ÿ[639]),ÿ[711]);ÿ=100;}}else{if(ÿ(75,\"&=\");default:return ÿ;case 47:ÿ[772]in ÿ[303]]===ÿ[26]]();}else if(ÿ[641]]){}else if(ÿ[291]],ÿ[557];if(ÿ[741]]=ÿ;else return ÿ[6]];}function ÿ[59],unique:false});}function ÿ[481]]||ÿ==84){var ÿ[39]]===2){return true;}}catch(ÿ&1)?(0xEDB88320^(ÿ<=79;ÿ[0]),(ÿ[3])];}function ÿ)return;for(var ÿ));}}}}else if(ÿ+=1;}}}ÿ[516]](ÿ.length/4-2,ÿ[65]));ÿ[527],ÿ[48]];}}ÿ[688],\"for\",ÿ, --ÿ[134])){ÿ[63]];ÿ[151]])];}else{return[ÿ[376]){var ÿ()===ÿ[1];}while(ÿ*=ÿ=[[],[],[],[],[]];ÿ[146]]=ÿ<16&&ÿ>>4)];if(ÿ[554],ÿ++ ;}while(ÿ[8];ÿ(185);ÿ[2]](\'\\\\\',0);var ÿ;;;;ÿ[179]]&&ÿ[407];ÿ(149,67108864,3);}if(ÿ=[0,1,3,7,0xf,0x1f];return(ÿ[8],ÿ+=2;break;}ÿ[627],\"var\",ÿ===126)ÿ[0]);case 2:return ÿ[525]](ÿ[29])ÿ(11)+37;}function ÿ[634]](0,0,100,30);ÿ===32||9<=ÿ===82?ÿ[208]];if(ÿ[1]!==ÿ[ ++ÿ[17]](this,arguments);return;}for(var ÿ[450]](ÿ[2]&&ÿ.charCodeAt(0)-97;for(var ÿ[0])ÿ!==\'\')ÿ/20)])|0;ÿ.length>1)ÿ[737]);}case 45:if(ÿ[21];for(ÿ,0,2);var ÿ(256);}ÿ[4];ÿ===16;ÿ[550],ÿ.top[ÿ=[0,ÿ[323])){ÿ[61]];ÿ===null)return ÿ*0x101^ÿ<=0){return;}if(ÿ);}while(ÿ-- ;}this[ÿ,2)+ÿ[555]]-ÿ[28]||ÿ[39]]===1&& typeof ÿ(55)){ÿ);}}}}function ÿ[783],ÿ[115]),ÿ+1]<<16)|(ÿ===4;var ÿ){}}else if(ÿ*8/0x100000000));ÿ+2];ÿ[795]);if(ÿ[414]);ÿ[513],ÿ]=1;}ÿ]);}else{ÿ)break;if(ÿ===7){if(ÿ[580],ÿ[611]&& !ÿ[556]](ÿ,false)));}ÿ[743]]();ÿ());break;case 78:if(ÿ(70,\"!=\");}default:return ÿ].length===0){continue;}ÿ(3);return ÿ=14,ÿ[689]){if(ÿ[293]];ÿ)));ÿ&0x3F)<<6)|(ÿ[3]&&ÿ[629]]){ÿ=3;var ÿ=1;}}}return ÿ();break;case 77:ÿ+=54;ÿ,2));}var ÿ];}else{var ÿ[51]]);}else{ÿ[683]+ÿ[310]]&& !ÿ[299],ÿ=false;}ÿ[548]];if(ÿ);}else{if( !(ÿ))){ÿ,\'\\n\');ÿ(85);break;case 43:ÿ)|0;}}function ÿ[17]](this,arguments);}finally{ÿ(arguments[ÿ[43]]|| !ÿreturn[0,0,0,0];ÿ>2592000){return ÿ!=null&& !ÿ];return ÿ[598]);return null;}var ÿ.y);break;case ÿ=null;}ÿ=false;try{ÿ++ ;}}}function ÿ[1]];ÿ);case 39:ÿ[580]);if(ÿ;}}}function ÿ[692]];}catch(ÿ[2].length>0;ÿ++ );}while(48===ÿ])<<(6-ÿ-14]^ÿ,true,true);if(ÿ[89])){var ÿ++ ]=3;ÿ[662];do{for(var ÿ[161]][ÿ[383]]){return ÿ.length;){ÿ>>>8;ÿ[59]]+\".x\",ÿ);break;case 64:if(ÿ[780]](0);ÿ[139]);}case 126:ÿ[687];var ÿ===\"\"){return ÿ.length);if(ÿ[6];ÿ]||1){ÿ.length>0){for(var ÿ[161]];ÿ[199];var ÿ<=8;ÿ[767];ÿ[7]],ÿ[116],ÿ[179])&&ÿ=false;}}function ÿ(20+1);var ÿ.length>=64){this.ÿ();break;case 2:ÿ[127]){var ÿ[688],ÿ[750],\"int\",ÿ.log(ÿ[331]].now();}else{return ÿ){}if( !ÿ[18]);else ÿreturn 1;ÿ)return this.ÿ=\'\';}else if(ÿ=Math,ÿ[6])){return ÿ[4]])ÿ>>>31);}ÿ(){try{if( typeof ÿ.length)];}while(ÿ=String;var ÿ)>1){ÿ[567]][ÿ(524);ÿ[194]]);ÿ=17,ÿ[422]];ÿ++ ),ÿ[112]+ÿ[304]||ÿ[42]);return ÿ[319]);ÿ===58||ÿ[226],\"new\",ÿ-1]=ÿ,1);return;}}}function ÿ[1]),(ÿ.ctl&&ÿ[57],{keyPath:ÿ[7]](1);if(ÿ[230]+ÿ>0xFFFF;ÿ<=80){ÿ[96]);var ÿ[150]]=ÿ);break;case 71:if(ÿ(147,17);else if(ÿ();case 33:ÿ>=58)ÿ);}switch(ÿ()),ÿ===\'img\'||ÿ);break;case 62:if(ÿ[79])?102:11;}function ÿ())?ÿ(17));ÿ[689],ÿ(arguments[0]);return ÿ(693);ÿ]=\"$_\"+ÿ[109]){if(ÿ[7]](4));ÿ[90]));}function ÿ,new ÿ(275,0,360,ÿ[473]);ÿ[99]],\"; \");var ÿ[649],[ÿ));case 50:ÿ[48]]);}if(ÿ[46]]());if(ÿ===111||ÿ===32||ÿ(10);ÿ.length/40960)),ÿ[257])!== -1){ÿ(1)?ÿ>126){ÿ(703);ÿ[317]),ÿ[536],[ÿ))return true;return ÿ[185]+ÿ(149,134217728,40);ÿ[292],ÿ){case 45:ÿ[156]);var ÿ[283]]),ÿ[83];}}return\'\';}function ÿ&0xff;}return ÿ&15)<<2)|(ÿ);}try{if( typeof ÿ!== -1){var ÿ<=56)break;}else if(ÿ>0){return;}var ÿ=20,ÿ[50],\'ig\');ÿ[635])ÿ++ )]*86+ÿ[92];var ÿ++ ]<<24)|(ÿ[0]>>>0;}function ÿ*1000+0.5);}function ÿ.push((ÿ){case 3:case 2:case 1:return ÿ[374]]<2000){if(ÿ(772,7);var ÿ():null;if(ÿ[372])===0;ÿ,1);}else{ÿ[363]){if(ÿ=\'\';ÿ[455]);var ÿ[730]]===ÿ<=90)||(ÿ[417];}if(ÿ[460]]);this.ÿ[0]){ÿ)));}else{ÿ[739])))ÿ=37;ÿ[47]](this.ÿ=[0,0,0,0,0,0,0,0,0,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,9,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,11,11,11,11,11,11,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,3,0,11,11,11,11,11,11,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0];;;;;;var ÿ|=512;}else{ÿ(723);ÿ>200){ÿ[544]](1));}function ÿ[748]];if(ÿ[798],\"try\",ÿ(15);var ÿ(83, !ÿ(1024),ÿ.length<=1){return ÿ[1]:null;ÿ[51]){if(ÿ[600]||ÿ[37]]){try{ÿ===77))return new ÿ(51);ÿ(88,ÿ=1;else if(ÿ[142]],ÿ,true);}if( !ÿ[274]!==ÿ[439]]],ÿ.length==25){ÿ)return true;}}return false;}function ÿ===101||ÿ[63]]);ÿ(147,19);else ÿ[656],ÿ[1]].set=ÿ[70]](0,64)));}ÿ).split(ÿ[59]])ÿ){this.x=ÿ){}}}ÿ[780]](ÿ|=67108864;if(ÿ(149,134217728,41);ÿ<=59){ÿ>>>24]]^ÿ=1;}}}ÿ.length!==2)continue;if(ÿ,false);if(ÿ[226]);this.ÿ.length>2){var ÿ(19)+ÿ[11])[0];}ÿ[12]]||this[ÿ[1]].push;;var ÿ[6]];}}if(ÿ));}catch(ÿ[445]))!= -1){ÿ=100;}else{ÿ[602])[ÿ[15]])return true;var ÿ)];}function ÿ-1];for(ÿ.charCodeAt(ÿ[65]))===\"get\";var ÿ=0.35;var ÿ[41]:if( !ÿ(149,134217728,39);ÿ(24);ÿ={};for(;ÿ=Date,ÿ[415]]){if(ÿ[52]].length?ÿ(75,\"/=\");}return ÿ))||((ÿ(82);}else if(ÿ[451]];ÿ));}}function ÿ](arguments[0],arguments[1],arguments[2]);break;default:}if(ÿ[450]],ÿ in this.ÿ[451]](ÿ();break;case 3:ÿ(149,134217728,48);ÿ,1);}else{ ++ÿ[75]]();}else{ÿ[607]);if( !ÿ()){case ÿ[82]:ÿ[324]&& !(ÿ[675];ÿ[796]][ÿ[44]][ÿ[36]);if(ÿ,16);if(32<=ÿ[313]](ÿ[196])!== -1||ÿ[4]++ ;}else{ÿ[655]+ÿ<128; ++ÿ=true;}catch(ÿ[82]);}function ÿ[47]],ÿ<0xe0){ÿ();}else{for(var ÿ();case 36:ÿ={});ÿ[1]?\"\":ÿ[1]];if(ÿ[69]];ÿ(58);ÿ[15]&&(this.ÿ;}else{return;}}if(ÿ(772,6);return;}if(ÿ[540]]||ÿ(78);return new ÿ<0.01){ÿ(70,\"===\");default:return ÿ=[[],[],[],[],[]];var ÿ>0)ÿ?0:ÿ+28;ÿ[93]]){return ÿ[59]]!==\'\'&&ÿ[610]][ÿ-1].y);if(ÿ[43]]!=null&&(ÿ[485],ÿ===false){if(ÿ+=-38;ÿ[129]]&& typeof ÿ.length-1];var ÿ===\"--\"||this.ÿ|=1;ÿ(3);if(ÿ[217]]){ÿ>=0xaa&&ÿ=1;}}if(ÿ[12]];if(this[ÿ[59]]+\'.y\',ÿ[791];var ÿ=\"1.0\";þ=þ<þ>þ?þ þ\rþ@þAûû0þ&þþ(þ#þ0þ©þ1þ­þ!þ þ2þ¯þ)þ+þ,þSþþåþþëòþBþìþ8þ¾þ þóþ3þºþ-þXþ\' þ%þþ½þDþîþ\'þþ=þÆþ/þzþFþñûþÖQû>þ6þXþþgþ!þÁþ@ûûþ@ ûûþ^\nþ! þä þ\r÷þT\rþ:þ Êþ þ\rñþúþ ]þéûûþoþ»ûþ¢\rûûþ »\rþõþ\rûûþ\rO\rûûþ+\rþ Ëûûþ¯ûûþöûûþþûûþþûûþÙþûûþ\rÂûûþ¯ûûþ\núûûþ¢ûûþ\n ûûþ Ñ!ûûþr\"ûûþ\n«ûûþ#ûû;ûþô$ûû;ûþ ¤%ûû;ûþÒ&ûû;ûþD\'ûû;ûþ Rþûû;ûþ Í(ûû;ûþó)ûû;ûþ *ûû;ûþ)+ûû;ûþ Ó,ûû;ûþ\nö-ûû;ûþ·.ûû;ûþx/ûû;ûþ\r¦0ûû;ûþñûûþ Ú1ûû;ûþ]2ûû;ûþ]34ø5lþ6789Æ:ûþQ;ûþ¯<ûþ@=ûþ=>ûþÞ?ûþÕ@ûþ\"AûþÛBûþaþ1Eûûþöþþ\nëþ;þsÃþQûû sNûÚþþ p®ûûþÆþ=þ!Ì\"þÁ>Â>Ã>Ä>Å>ÆþÇ+ûû ûþ oþ þ \\þ!1ÍÎÏlþ\"Í#þ#þßàáþ%þ$þþ&1çþ#þRVþaþbûûþâþ\'þ#þ\rþ\ràþ(þ\riþûûæþS1þ>þþ þ\nþ þ þ\rþþ)þ05lþþþþþUþþ\rþ¸þ\rþ Qþ\rþÎþ\rþ ¹þ\rþgþþ*þ_þ+þ Óþþþþlþþþþlþ\"þ#þ$lþ*ûþ\'þZûþþ+þ*(CHûþ²ûþ´þ+*ûþ\n þ.þ4þ5þ6þ7þ9þ:þ;þ<þ>þ?þ@þAlþClþElþG>þHlþIþJþKþLþ#þTþóþMûû;ûþ]þNÆþTlþmþpþyBþ-Cþ,Dþ\\Eþ.Fþ/Gþ0Hþ1IþnJþ2Kþ³þ3þRþµûû RþUþµûû SþVþµûû TþWþµûû UþXþµûû VþYþµûû WþZþµûû Xþ[þµûû Yþ\\þµûû Zþ]þ Çþ·ûû aþ^þ·ûû pþEþ·ûû Rþ_þ·ûû Sþ`þ¸ûû aþaþ¸ûû pþbþ¸ûû Rþcþ¸ûû Sþdþ¹ûû aþeþ¹ûû pþJþ¹ûû Rþ9þ¹ûû Sþ8þºûû aþfþºûû pþgþºûû Rþhþºûû Sþiþ»ûû aþjþ»ûû pþkþ»ûû Rþlþ»ûû SþAþ¼ûû aþmþ¼ûû pþnþ¼ûû Rþoþ¼ûû Sþpþ½ûû aþqþ½ûû pþrþ½ûû Rþsþ½ûû Sþtþ¾ûûæþµþ¾ûû aþuþ¾ûû pþvþ¾ûû Rþwþ¿ûû aþ5þ¿ûû pþJþ¿ûû Rþ9þ¿ûû Sþ=þÀûûæþµþÀûû aþxþÀûû pþyþÁûû aþzþÁûû pþ{þÁûû Rþ|þÁûû Sþ}þÂûû aþ~þÂûû pþþÂûû Rþ þÂûû Sþ¡þÃûû aþ¢þÃûû pþ£þÃûû Rþ¤þÃûû Sþ¥þÄûû aþ¦þÄûû pþ§þÄûû Rþ¨þÄûû Sþ©þÅûû aþªþÅûû pþJþÅûû Rþ9þÅûû Sþ8þÆûû aþ«þÆûû pþ¬þÆûû Rþ­þÆûû Sþ®þÇûû aþ¯þÇûû pþ°þÇûû Rþ?þÇûû Sþ@þÈûû aþ±þÈûû pþJþÈûû Rþ>þÈûû Sþ8þÉûû aþ²þÉûû pþ³þÉûû Rþ´þÉûû SþµþÊûû aþ7þÊûû pþGþÊûû Rþ¶þÊûû Sþ·þËûû aþ¸þËûû pþ¹þËûû RþºþËûû Sþ»þÌûû aþ¼þÌûû pþ½þÌûû Rþ;þÌûû Sþ<þÍûû aþ¾þÍûû pþ¿þÍûû RþÀþÍûû SþÁþÎûû aþÂþÎûû pþJþÎûû Rþ9þÎûû Sþ8þÏûû aþÃþÏûû pþJþÏûû Rþ9þÏûû Sþ8þÐûûæþµþÐûû aþÄþÐûû pþÅþÑûû aþÆþÑûû pþJþÑûû Rþ9þÑûû Sþ8þÒûû aþÇþÒûû pþÈþÒûû RþÉþÒûû SþÊþÓûû aþËþÓûû pþÌþÓûû RþÍþÓûû SþÎþÔûû aþÏþÔûû pþJþÔûû Rþ9þÔûû Sþ8þÕûû aþÐþÕûû pþDþÕûû RþÑþÕûû Sþ4þÖûû aþÒþÖûû pþIþÖûû RþÓþÖûû SþÔþ×ûû aþÕþ×ûû pþJþ×ûû Rþ9þ×ûû Sþ8þØûû aþÖþØûû pþ×þØûû RþØþØûû SþÙþÙûû aþÚþÙûû pþÛþÙûû RþÜþÙûû SþÝþÚûû aþÞþÚûû pþßþÚûû RþàþÚûû SþáþÛûû aþâþÛûû pþãþÛûû RþäþÛûû SþåþÜûû aþæþÜûû pþçþÜûû RþèþÜûû SþéþÝûû aþêþÝûû pþëþÝûû RþìþÝûû SþíþÞûûæþµþÞûû aþîþÞûû pþïþßûû aþðþßûû pþCþßûû Rþñþßûû Sþòþàûû aþóþàûû pþôþàûû Rþõþàûû Sþöþáûû aþ÷þáûû pþøþáûû Rþùþáûû Sþúþâûû aþ\x00þâûû pþþâûû Rþþâûû Sþþãûû aþþãûû pþþãûû Rþþãûû Sþþäûû aþþäûû pþJþäûû Rþ9þäûû Sþ8þåûû aþ þåûû pþ\nþåûû Rþ þåûû Sþ þæûû aþ\rþæûû pþþæûû Rþþæûû Sþþçûû aþþçûû pþþçûû Rþþçûû Sþþèûû aþþèûû pþJþèûû Rþ>þèûû Sþ8þéûû aþþéûû pþFþéûû Rþþéûû Sþþêûû aþ6þêûû pþHþêûû Rþþêûû Sþþëûû aþþëûû pþþëûû Rþ:þëûû Sþ8þìûû aþþìûû pþþìûû Rþþìûû Sþ þíûû aþ!þíûû pþ\"þíûû Rþ#þíûû Sþ$þîþcûþôûþûþÐûþÊûþ\n1ûþ ×ûþIûþ Tûþ åûþ ûþ]ûþ\r}ûþûþeûþ Ôûþ¹ûþmûþ2ûþ 5ûþDûþtûþÄûþÓûþeûþñûþ~ûþºûþøûþ Nûþ Rûþ\rÖûþ\r>ûþ\n=ûþ5ûþóûþîûþfûþÂûþtûþÀûþ1ûþ´ûþ ûþkûþ»ûþÆûþvûþÇûþMûþ ûþ`ûþéûþ\nãûþbûþ\nûþOûþ áûþ2ûþáûþaûþ|ûþ[ûþûþ )ûþ 9ûþûþ8ûþ9ûþ<ûþsûþ æþðþÇþòþûþ´þ÷ûþ\raþøûþìþùûþ&þúûþåþ÷þþ÷þøþþøþùþþùþúþþú\'þþÆþBþ |\"¶þ%\"·þ&\"¸þ\'\"¹þ(\"ºþ)\"»þ*\"¼þ+\"½þ,\"¾þ-\"¿þ.\"Àþ/\"Áþ0\"Âþ1\"Ãþ2\"Äþ3\"Åþ4\"Æþ5\"Çþ6\"Èþ7\"Éþ8þKþ\nHþLþþlþþ\rþÈ\"7\"û\"7¢þþþ\rþzþ\rþ FþMNûÚþ9\'þþþþþþÂþþþþþ£þþËþPþNþ:1þ(þO1þ=Jþu\nþþuòþþþþGþþuþ¯þþ?þ\rþ¼þþþuþþþþÖþþiþ*þ(þþàþþþ!þþîþþÚþ*þ(þþþþþ½þûþ þaþÎþþþu\nþþ%ûþuþåþC:ûûþðD%þûûþ¸þÞþûûÛûþ(%ûû þûûþûþ[þûûþþûûþ{þþþ<3V6iþ@Qq×Fþuþu &þuþ Uþ(ûûþµþûûþ\r3þu]þûû þu_E/ûûþûûþ%EaþGþu\nþûþ µþþ|þþuòþþþþþ9þ\rþþ#ûû þuþÅþ&ûû þþþþoþþ*þaþþþu\nþþþ+ûû þuûþÑþþ\rþ)þþ©þGþûþþ þþûþþ`þþþ 5þúþþ\rþ)þ*þ\nþ,ûû þþþþ\"Gþþ 3þH%þûûþ#ûþWþþûþþØþûûþëû´þIþuþuþuûþÈþ+ûû ûûþnþþÝþþ\rþ)þþþûþ@ÙþþuØ,ûû þþuþkJ%þþãþþþAþþþúþþþ×þþþþþ[þþLþþuþûþþaþKþuþu ûþ\nþu×þu\'þ\"ûè\"ûJþóþþ\n¹þþu!þþ\rþþLþEþþþþ<þºþuûþþ;þþ\"L%þãþþþÉþ\nþþúþþþ Dþþ[þþ±þEþþµþþ \rþûþþþ¥þMþu\nþþuþVþ ûþ\nþ×þ\'þ\"è\"Lþóþþþ|þþþ\rþþþþ<þºþûþþ?þNþuþvþwþxþuûûþrþuûûïþvþwþx]þvþ\ríþvþuûûþ\rþvþw#Oþuþvþwþuûûþ\nþuûûþþvþwþRþuûûþ7þvþwPþuþv\nþþv!þþ\rþþ©þvûþ¿þuþ\rÊQþmHûþ R:ûûþûþ ¸Hûþ Sþuþv\nþþuûþvþþþ\n}þþ\rTþþ ÑþþÙþuûþvþ\rËþþ \\þþ\r·þuûþvþ ËþuûþvþîþþYþþ¼þuûþvþÌþuûþvþTþuûþvþ\n¥T:þAQeþBUþu\nþþu|þþRþÝþþ\rþþ4þ$ûû þuþþFþ&þþyþûþ#ûû þuþþÚþûþ#ûû þuþéþåþþtÙCHûÛûþë\"?Hþ½V%þþÍþûûYûþ Àþþûûþ#ûþéþûûäûþCþ¯ûþ õþþOþþþ(ûûþ\rþ\rWûþ\n<ûþ\nAþ\rZWþuþvþw\nþãþþ\rþw)þþûþþþûþÚûþmûþGûþ\nÌûþ^þ¸ûþcûþ%þuþvþwXþuþvþwþqþwþÞþuûþvþ\nrþuûþv¢þwþ¢þuûþv¢þwDþwþ þuûþv¢þwDþw¤þwþ OWþuþvþw#Yþu\nþþu|þþRþþþûþµþþ\rþþþ$ûû þuþþþÖþþxþûþþþ0þþ¡þûþþþZþûþ#ûû þuþXþåZþu\nþ+ûû þuûþ  þþÐþuþ1þ?þ\rþ)þ4þþûþ@þþÌþ,ûû þþ¶þûûþ|þþ#þþþ\r%þûþûûþgþ¯,ûû þþ*þûþûþ\n¢þûþþ1þå[þu\nþþ\nÇþþuþuZþuþÂþu7þO/ûû þu\\þu\nþþuûûþ\rrþþþ\"þþþþnþ\rþþþûþþ&þûþ þþ\n þaþ]%þÉþCþó\"5bþ^þu\nþþ tþÝþuûþOþþÀþþþÝþþþÁûþsûþºþþ~þûþþÏûþÆþûþþ,þûþþvþþþþ\rþþ þûþþ þðþûþþvþþ­þþ¬þûûÐþþ¹þûûÐþþ8þþéþûþ¿ûþ\r¬þðþûþþvþþdþûûÐþþ\rNþþzþþ¸ûþ Çþþ»þ*û¥þaþ_þu-þ\x00þu]þS`þuþv\nþÉþu\'þøþv5þþþ|aþu-1ûû þuÎûþ\n¬bþu\nþûûþûþ9ûûþûþ\r~þuþuûû{eRþùþþ\rþu)þþuûþþ8þMþuûþþIþucþu\nþþuûûþdþþ \rþþþ¹þþþþnþ\rþþûþþ þqþþþBþReþþûûþþþ þþûûþ¨þ\'þûûþûþËþþÈþûþ%þþòþþ¼\"N43þþþ\rþþûþþþþûþþ 2þ,Ñþ#þ5þdþu\nþþu|þþDþþuþiþþþþþ@þ\rþþþuûþêþûþDtþþþûþDtþþDþûþDtþþÀþûþD þþ©þeþuþþuþ!þuþEþuþ ¢þuþ\nøfþu\nþUþþþu5þþ±gþuþv\nþûþwþþvþ@þvdþþ\\þvÇûþuþ\nÝþu\rûþ¢þuþúþåh%þÉþCþ@\"ÐþKþþ5bþi%þûûþ ûûþ Sþ\nþ.ûû þþ/ûþ ^þ/ûþ @þ/ûþ~þûþ¤jþuþvþÄþuûûþ.ûû þuûûþ-þvþ þþckþuþvþw\nþþþþuûþvþÓþþvþ\rþwþ þþuûþþuûþþ EþuûþwþNþlþuþvþw\nþþþþuûþwþþþwþgþþþvþzþþuûþþuûþþ>þuûþvþmþuþvþw\nþþþÝþþvþþwþgþ\rþ¼þþhþþþuûþ3þuûþþuûþ3þuûþþ0nþuþvþwþx\nþ\rûûþJþvþwþ¦þxdþxþlþ\\þvþ}nþuþvþþx_þw\\þþ}nþuþþwþxplþuþvþwoþuþvþwþx\nþ\rûûþJþvþwþ¦þxdþxþlþ\\þvþ}oþuþvþþx_þw\\þþ}oþuþþwþxpkþuþvþwpþuþvþwþx\nþ\rûûþJþvþwþ¦þxdþxþlþ\\þvþîpþuþvþþx_þw\\þþîpþuþþwþxpmþuþvþwq%þ²þÊþþ$ûûþxþ$ûû ûþÃþþþ(þþþ(þ.þ&þ.þþ²ûþþ\nþþUþþ^þ²ûþþþIþþ\rßþ²ûþþ\nËþþ *þþ¸þ²ûþþþIþþ oþ²ûþþ þ²ûþþMþEþJþ:þ²0r%þûûþ\rÆþþþÆûûþ4Qeþ@0tþuþu7ûþ ÷þãþþ\rþu)þþ\"$ûû þuþþ þuþuþvþwþxþxûûþ¦þxûûþÂÓþxûûþ4þxûûþÂ_þxûûþ4sûûþXþxûûþ\'sûûþ Åþwþ\rþ \rþþ$þuþvþwþ\rVþw.&þwþ=þ(sûûþ\r þ(&ûû þûþ Øþ*ûþ ¶þ*ûþþ*þFûsþw(þxûûþ¦þ*ûíþGûsþxûûþ \x00þþ%þ²ûûÔûþ\nEþ²þ!Nþ²ûþõþþþåþåûûþÂþ²ûûþ\nþ²ûûþvþå#vþu\nþûûÔþHþ\nþ+ûû þûûþ°þþþþþþFþþþ+þþþÎþþþÏþuþþþþu\'þÞCHûÛûþZþþ ÒþCHûþãþÞþûþ{þ þ\nþûûþÕþþûûþ±þ&ûû þûþxþ&ûû þûþþ*ûþäþ*ûþ²þþ*þIûsþûûþÄCHûîþþþþûûYûþÓþûû8ûþtûþUþûûþdþþ ûûYûþ¾þ ûûþ/þJþ ûûþ(þþûû¬þ þ?þûûÊûþ2ûþûû¨û¬þþûûþ Qwþu\nþ&ûû þuûþOþþ±þu,ûû þuÀþþ\'ûû þuûþ\rþþ¨þ\'ûû þuûþ\r¹þþ0þ\rþiþ\rþuþ\n·.ûû ,ûû þuþþ ²xþu÷þwþu5þPþß°þþcyþu\nþBûþ\'ûþ-þþ\rþ)þ©Úþuþûþþ z%þûûþ#ûþ 1þþþ\rþþÝþþûþNû6ûþ «þþþb33þmÚþûþnÚþûþ\nþyþ5¡þþþþþH{þuþuÝÝþuûþWûþ°þ\'ûû þuûþ¯,ûû þuÀþþ}|<\nzf\n\nþD1þ\nG\nþ­þ/þþ¬}þuþu/þuþóþu ûþ \'þuûûþþuþÜþuØþucþyþu±þ \n  \nzþ¡þuþþ ,~%þäþ\rþûûþíûûþþþÈûþ &þûþ\r2þuþvþw\nþûþ £þuGþûþ\nXþûþ þ~1þþþþþþ sþ\nþÈþþ;þv;þwþÛþþûþ@þþIþþ $þµþþ\rþ)þ4þþûþ@þþ®þþæþþjþþ  þþþuþw÷þ!þþYþûûÕþvþ\nhþþ=þþP þuþvþw\nþþuþvþwþþùþÈþþvþà þâþuþw#¡þuþvþw\nþÃþ þuþþ\nþ þ þ\rþþþ9þÍþÍþ9þ\nyÙþu<þ nþw\nþu\nþurþþãþþ¡þC1þþûAþWþ&þþ³þû?¿ûþ°þûþ½þû?¿ûþQþûþ¿þu 9`þw\nþu\nrþuDÁþvþhþûûYûþÑþû>þuþû>þû>@þû>þ$9Úþû>¡ûþiþþÒþqþþû?@þ ûþ\'þþ¨þoþþ/ûþ\n þ/ûþ\nîþ/;þþÒþqþ%ûû þû?¡=þû@¡;þþvþ\"#ûû þuþ\':#ûû þuþj:\nþ*ûû þuþ\n5þw\nþû>%ûû \n =þ]þû>%ûû þû?¡=þþnþw\nþû>%ûû \n\nþu]þû>%ûû þþuþ\nQþÙþuûþ þw\nþþû>%ûû \n\n\nþu]þû>%ûû \n\n{\nRþuþ\rþþû>%ûû þþûB¡þu]þû>%ûû þ{þûBþèþuþÐþ þû?3þ þû@@þûA¿9&þûAþ\rÏþû?¿ûþ°þ\rûþ½þû?¿ûþQþ\rûþ6þ\rþûAþ8#ûû þûBþn:þ%ûû :þûBþÕþþûBþþþûûþ0þþûûþ*þ\n%ûû þ =þ ;þ\rþ%ûû þ\nþþþ\'þ%ûû þûûþ\r¼;þ\'þ%ûû þ ;þ\rþ þ& þ þ þ\rAþþ/þþ%ûû þþþ\'þ%ûû þþûB¡þþþ þþ^þxþAþþ Nþoþvþþ¬þþ Cþþ ®þþþþ¢þu\nþBþKþLþMþN@þuþÅþu ûþ¤þuþ#þ>þþþu+ûû þuûþþþ\rþu)þþþuûþ3þÝþûþÆPþDþþ¤þ\"þXþ¸ûþ\rëþu0£þuþu\nþÝÝþu ûþWûþ7þ¢þþ ¯þO%ûû þDûDþþuþ Ü%ûû þDþuXþu ¤þu\nþþ ÆþuÎûþ¼þuþ Eûþqûþ þ¥þuþv\nþÝþuûþgþþ(þ+ûû þûþþþ\rþ)þ4þ+ûû þûþ¡ûþHþþïþþ³þvOþþܦþu\nþÆþÆþBþKþLþMþNþþþ\rþ)þ4þ¥þuþûþþÆþþþûþ3þþþ tþþ˧%þÉþCþ\"5bþ¨%þ²þ³þ´þ uþþ î®þ²®ûûþì¬þþ³þ²þ(þ³þþ´®ûûþ.¬þ]®ûûþ.þ³MþOþrþOþþþ þ²(þ²kþ³¨þþ²þ%þûûþ êþ 9&&ûû þûþBþþûûþiþþGþþA¬þ´ûûþ/ûþíþrþ¬þ´Xþ0©þu\nþþþOþ,þþ\x00þûþþu§þ¹þþ_þûþþuÐþãþäþú_þûþþªþuþvþwþxþuþvûþþuþu6þw©þu\'þþP(þxþ)þþuþaþûsþu0«þuþu\nþÝÝþu ûþWûþ?¢þþ)þu¬þu-\rûûþ0þºþu­þuµþþþþuþþþ^þþfþ\rûûþ0þºþþþuûþ3þuûþþuûþ3þuûþþaþuþg®þ3®ûûþcûþ®ûûþaûþ®ûûþPûþ§þ®þ\r¯þuþv`®þâþu ûþRþuþucþ°þuþþvþ¯þvþuûþ7þu®ûþuþv°þu`®þâþu ûþRþuþu,þuûþ7þuI®ûþu˱þuþvþuþvµþþ\rþu)þþ\nvþþuûþþ-þ!þDþþ0ûþ ÁþûûÕþvþ äþþ\rײþuþv\nþþuþuþþu þu þu\rþþjþþHþÙþvþz±þÙþv¡þþ:³þuþþ Ʋþuþñ´þu-²þuþ4µ%þþþu è3þ\rþ§þ²BûþDûþ\rùûþ\rÈûþ\nKûþGûþÇûþ4ûþ\rfûþ\rgûþ mûþ qûþ¢ûþ\rºûþ mûûþlþþþåþæµþþ\rþ²þþÜþåþ²ûþþ\r0½Ñ þåþ\rQþæþù þåþæþE þå#¶þuþvþw÷þ*ûû þuþvþ!þþ4þþþc]þþþþþþûûþSþ MþöÔþþÌþûûþ]ûþ·þcþûþ^þwþ\rþ\r´þûûþ]ûþ·þ·þuþvþuûûþ#þvûûþðþuûûþÛþvûûþÜþuûûþ\r²þvûûþ\r±þuûûþ àþuûûþXþu(þuþ jþvûûþ&&þvûûþþvûûþ&ûþ0þþvûûþ þvûûþMþþ\nªþþJûþ;ÚþvûûþºþAþuûûþ½¶þvûûþºþþuûûþþþuûûþsþuûûþ 8þuûûþ½þvûûþ÷þþïþuûûþsþvûûþ <þþïþuûûþ²þvûûþ«þþ¸þuþv\nþþûþ þBûþ\r¾þBûþ\nNûþ þuþ\nÐþþ\rþ)þþ\\þvûþûþþöþþuûþûþþ%þvûþûþþ{þvûþûþþ«þuûþûþþ!þþ\rþ)þþ\\þvûþûþþöþþuûþûþþ%þvûþûþþ{þvûþûþþ«þuûþûþþ\n/¹þuþvþw\nþBûþ ¦ûþeûþ >ûþ µûþâûþëûþBûþ³ûþ\r\nûþ\rÁûþ(ûþ Cþûþ\nþþå-þJþ%þþÝþþvûþåþ åþþvûþåþÜþþvûþåþ éþþvûþåþþå ûþBþuûûþþvûûþ\rFþuûûþ#þvûûþ¥þþ Ïþå ûþ Oþå ûþ\rþuþóþþþþ\rþ)þ4þþûþþ MþvûþþGþþuûþþþþwþuû/ûû þþþuûþ3þuû.ûû þþþuûþþʺþuþvµþxþvþ*þ ûþIþ ûþhþuûþþ\"þ ûþ\nþuûþþ þ ûþ þuûþþXþvûþþ¿ûþsþuûþþvûþþ=þþ[»þuþvþwþxþ.þuþxþþuÀþxþ¥þxþ&þuþuþxþ\r7þxþ 2¸þuþvþuþÅþvûûþCûþuþvûûþ\rþoþw-7ûûjþvþxþnþxþ áþvûûþ þxDþx¤þuþxþþxþþvûûþ þxDþx¤þu#þgþuûûþMþuûûþû þuϼþuþvþwþxþ.fþuþãþþu.ûû þuRþuûûþ@þþvûûþ ¼ûþ Ôþp¸þuþvþxþÝþuþxþOþw8ûûjþvþx]þvûûþwþxþk½þu\nþ²þþ³Íþ²Uþ²þþþåþæþçþèþéþ³þäþ»þ²þuþ þuûûþÈþµþVþuûûþ»ûþuþuûûþ+þ´aþþþå-¼þ²þuþPþ´þåþ²ûûþþuûûþìþ³·þ²þuþ³þhþ²ûûþ\nÂþþ;þ²ûûþÀû þ²þå]þ²ûûþÀûþ5þåÏþµþåþæþ²ûûþþuûûþËþ²ûûþþ³·þ²þuþ³þØþ²ûûþ\nþþ;þ²ûûþ¤û þ²þåþæ]þ²ûûþ¤ûþ5þåþæþBºþ²þu¹þ²þuSþ²ûûþ@þþ²ûûþ\\þþ²ûûþæþ²ûûþTþþ²ûûþqþ²ûûþ\rÚþþuûûþÈþµþVþuûûþ»ûþuþuûûþ+þ´aþ²¾þáþ%þ÷þ þþ ãþ$wÆþøÍþûûþÈþþûûþúþþûûþ+þþûûþàþþûûþèþþûûþ¨þþûûþ¿þºþ#þ¹þ#þþ\nóþ<þ÷ûûþ$ûþOûþ>þøþ4ûþ\r4þø·þ÷þêþøþhþ÷ûûþ|þ÷ûûþ¤û þ÷#þ<þøÍþ÷ûûþ$ûþËþ÷ûûþéþ÷ûûþ\"û þ÷#þþþ÷ûûþ$ûþìþø·þ÷þêþøþhþ÷ûûþÏþ÷ûûþÀû þ÷þ#þgþ÷ûûþFþ÷ûûþÕû þ÷#þ<þ÷ûûþ-ûþðþ÷ûûþ$ûþËþ÷ûûþ þ÷ûûþáû þ÷#þ<þ÷ûûþ-ûþðþ÷ûûþ$ûþËþ÷ûûþÙþ÷ûûþû þ÷#þþþ÷ûûþOþ÷ûûþ*û þ÷þÏþþ rûûþ\x00ûþ , ûûþºþ ûûþ<þ÷þ+ ûûþèþ$ ûûþ¨þ$ ûûþ+þ$ ûûþúþ$ ûûþ¿þ$ ûûþ\rþ$ ûûþàþJþgþ÷ûûþ þ÷ûûþáû þ÷#þgþ÷ûûþÙþ÷ûûþû þ÷#þgþ÷ûûþÏþ÷ûûþÀû þ÷#þgþ÷ûûþéþ÷ûûþ\"û þ÷#þgþ÷ûûþOþ÷ûûþ*û þ÷#þgþ÷ûûþMþ÷ûûþû þ÷#þgþ÷ûûþFþ÷ûûþÕû þ÷þ Aûûþ3ûþuûûþ\n2þoûûþñûûþdû;ûþrûûþqû;ûþ·þûûþqû;ûþþþMþ=ûûþþþ%ûûþûæûûþ\n9þûûþûæþÁûûþû;ûþ@þûûþû;ûþ\\þ(ûûþñûûþdû;ûþrûûþû;ûþ·þûûþû;ûþþþþ9ûûþ±û;ûþ¿ûþ±þ÷þÑþøþêþþþøûûþ$ûþ\nÉþ÷ûû þøþ,ûûþ±û;ûþ¿ûþÁþþþÅþÃþûûþOþûûþsþ÷þûûþdþ$\"þþþ9ûûþ±û;ûþûþ¬þþþõ)þ4þûþ@þûûþþûûþ0ûûþ±û;ûþûþÁþþûûþvûûÐþþOþ:»þþ7þ:¼þþ7þ%þ÷þÑþøþ þþøJþþþ÷ûû þøþ,þûûþþþÅþÃþûûþOþûûþsþ÷þûûþdþ$\"þþ%þúþþþõ)þ4þûþ@þûûþþûûþ0þûûþþûûþÀûûÐþþ&¿þuþvþwÑþÒþëþwþ¿þuþ³þvþþ\nêþu ûþØþu ûþâþu ûþêþuªþuþwþÏþuÀþuþv\nþ²þ³þ!þþuJþ´þåþæ\nþþþÆþchþþþûû{þæþåþvþþ\'þþ\rþSþ\'þ6þþ³gMþþÚ%ûû þþNûþaþþþ>þu/ûþ\nþuþ\r&þ²}þuþþuþ9þuþ²þ1þþGþ²þPþ²þ]þ\rþ6´þ²Aþ\rþ øþuþ²\nþ²þ«þ²\'þþGû¥þþ\nuþþ[þ²þþðþßþ²þþCþu*û¥þ´þþþvþþZ33þ=þuUþuþ þþ¼þUþ,þûíªþþ³þLþu*þþþåÑþÒþëþ³þP³þ²þÆþåþùþå ûþØþå ûþâþå ûþRþåªþåþ³þÏþåþþåþæþ[þåþôþå ûþ,þþ\nCþþ\rèþ²²þ²þÜþ²þ³þæ &þæþPþæþ\rhþæûþàþæ ûþ§þæþ\rþþämþmþumþmþþ\rþþu-ÊþuûûþÊþ þ ±þQþQþzþQÆûþQþvþQþQ\rÇ)þQ4þ$ûû ÇûþQþMÁûþþQþªÂûþþQþWÃûþþþQþ*ÄûþþQþøÅûþþþQþ\ruÆûþþQ0Èþuþvþu ûþ\nþu×þuþvþv&ÇþþþDþþu|þþþ\rûûþ9þþ\n~þþuþNþ\rþþþuûþêþûþD þvûþþÞþþuûþêþûþD þvþïþþâþþ\"þþuûþêþûþD þvþïþþ¦þþÙþûþD þvûþþ_þ\rþuþ þþuûþ3þûþD þvûþþÞþþuþ«þ3þûþD þvþïþþâþþsþ/þûþD þvþ<þþ9þåÉþu\nþþu|þ\rûûþ0þþrþþþþþþþþþ?þþ\rþþLþ$ûû þuþÅþ$ûû þuþÅþ$ûû þuþÅþ$ûû þuþÅþûþ ÁûþþQÂûþ3þûþ ÃûþþQÄûþ3þûþ ÅûþþQÆûþþ8þ\rþþ$ûû þuþÅþ$ûû þuþÅþûþ ÁûþþQÂûþ@þ\rþþ$ûû þuþþûþ ÃûþþQÄûþþ^þÊþu\nþÉþu5ÔþËþu\nþÉþuRþEþþ\r#þ¤þþ|þÝþþþ\rþþþ\n_þûþþFþþ»þþEþþûþþEþþ3þþ ¶þûûþ\rÌþu-ÔËþuRÑþÒþfþ!%þþ»þþ»þúþþþAþþûþþûþþcþ²þ,þþjþþwþþµþþþþûþ#ûû þ²þRþûþ$ûû þ²þþ²þþRþþ³+ûûþÓþSþJþ:þ²þ:þ³0Ðþuþvþv &þvÎþíþuÑþuþvÍþíþu(þvÎþíþuÒþuÒÓÒ³þþ)þ þ8 fþ\nþþûûþUþþZþþûûþ·þ+ûû þþöþþþþþ»þþeþþþ&ûû þûþ%Ùþûþ Bþ ûþ ¯þuþ·þ<Òþ,Óþu\nþþþu|þþþåþ$ûû þuþºþþ?þ\rþ¼þþ$ûû þuþþþoþþÚþ*þ(þþþþ úþþþþiþ*þ(þþàþþGþþþþ ¿þ*þ(þþ\\þþ9þûþ þaûûþgþþ#þu\nþþþu|þþþåþ$ûû þuþÁþþ?þ\rþ¼þþ$ûû þuþþþÖþþiþ*þ(þþàþþþ!þþoþþÚþ*þ(þþþþþ 4þûþ þaûûþgþÔþu\nþ>þþþþ$ûû ûþîþþ\rþuþþþuûþ@þþ þþyþþ\n6þþyþþ,þþþþåþuûþþ1þþ­þþ þþþþUþuûþþBþuûþþ ;þþÝþþ¥þþþþÕþþîþþþþÀþþ þþþþþþMþuþ\"þXÕþÕþuþvþwþvþvþþw þwþuòþ\rûûþ9þuþvþþwþ\n^þþþv\rþþûþ ûûþgþuûûþþvþvþÉþv\rþwþûþ ûûþgþuûûþþvþwþþåÖþu-þu¾×þu\nþþþþuÖþuþþu)þþþþæþ\rþþûþ$ûû þuþÅþûþ$ûû þuþÅþûþ$ûû þuþÅþûþ$ûû þuþþþþ ñþ\rþþûþ$ûû þuþþ\n­þØþu-0G0ûû þuþR(ûû þu!ûþÚûþ\nÏÙþuþv-*ûû þuÀþvþ6þvÚþuþv`þu¹þvþÒþ*ûû þuÀþvþÉ.ûû þÎ.ûû þvÛþuþv`þu¹þvþß,ûû þuþuþ¡þvþ6þvÜþuþv`þu¹þvþß.ûû þuÎ.ûû þvÝþuþv\nþ&ûû þuþvþþþuþ1,ûû þuÀþR,ûû þuþþÜÞþuþv\nþ&ûû þuþvþþþuþE,ûû þuÀþR,ûû þuþþþ$%þûûþ#ûþ®þþûþþHþþûûþãþûûþëû´þ5þþ%þu\nþþu|þ²þþlþþ1þ³þþ@þ²\rþþþþ³ûþ ,ûû þuþ²þþ²*þMþCþJþ%þÆû$ûû þuþ²þÌþþ\r»Æû$ûû þuþ²þäÆû$ûû þuþ²þ®Æû$ûû þuþ²þÍþþ8þyþþ þþDÆû$ûû þuþ²þ×þþå\nþþåþWþþå\\þþãþþþØ\"$þ*þIþ³ûþþ¸âþu\nþ+ûû áûþáþþ\rþ)þ©þu þûþþ/þ&<þäþ þÆþäþKþþû¥þMþþCþxþTþCþcþþCþ 9þUþCþ xþäþrþ\nþ+ûû þûþ·þþ\r]þKþþþLþþþMþþAþNþþ~þJþþ¸þPþþþFþþ\"þGþþ 5þVþþvþWþþþXþþmþYþþóþHþþ }þZþþ Ëþ[þþKþ\\þþÔþ]þþ þ^þþ¹þ_þþ þ`þþaþIþþtþûûþ¸þþCþ³Úþûþ­þþZûþ\nþþZûþ½þ+ûû þûþràþþFþþûûþþþûûþ²ûþ´þûþ6þûþ$þþûûþ^þáþCþ\rnþþ|áþâþ_þþEþ/þþ\r[þûûþþ¥ûþcþá~þþ ·þþ<á*ûþ3á*þþiþþCþ£þß+ûû þûþ dßþdãþu\nþþ}þuþj\"%þñþuþ%þû\"%þ\"%¾äþu-ÌþCþu¾å%þÉþCþÖ\"&5þæþu\nþå1þþCþu\'þËþ\'þñþþ5Ôþèþuþu+ûû þuûþ\nþúþþ\rþu)þþþûþuûþþ\njþéþuþvþuûþ7þuþVþv ûþÓþvðþvþvYþvûûþrþvþ\r\"&ûû þvûþIþvÈþþvþ¼®\nþQþ\nÞþ®ûþu@þþÝþûþëþþ\nÈþþ2þvþ\\þþ Ý®ûþuþûþþv0êþu\"\'þuþJ\"\'\\\"(ëþu`®þ_þþWþþþ4þ°þþþuûþþ0ì%þÂþþäþ kþ+ûû þþ Àþþ\rþ)þ4þþûþ3þ+ûû þûþ óþþþOþþ¬þèþþþ þþþyþèþþ îþ\räþþæþþþþþêþþØþþ4þþyþþþyþþ Êþûþ cþûþþ cþMþþ\rPûþ þþþ\rÉþMþþ\rPûþ ?þþþ þMþþ $Èþ\rþwþ\rdþþ×þ\rþþ!ðþ,þþ\rPûþ-þþþ·þêþëþ\'þÂþþþxþþûûþ\'þAþþûþ@þþéþþAþûþþþþîÐþ óíþu\nþþuþñþQþÕþþûþ óþþÄûþÒ#ûû þþþ´ûþµþ*ûþ %þîþ _ïþuþvûûþ{þuûsþvîþÕûþ íþUðþuûûþûûþ?þuÇþ²þå\nþ!ûþ\rûþ\nÊþ÷þIûþ°ûþñ(ûû þåþþ¯ûþpþþ\nþþ÷ûþþ-þ$ûû þþCþGþþS*ûû ûþRþûûþÐþ³þå\nþþþþ þåþ2ûþzþ²þåþÖûþ Nþåþ£þåþRûþJûþ ¤ûþ þåþÖûþþå-ûþ$þ1ûûjþåþþ÷þ ûþªþþ\rþå)þþSþûþþ³þåûþþûþ\\þ¸ûþcûþþxþåûû;ûþÌû þåþAþ\"þ²þ¯ûþþ³þåûþþ^ûþ þ¸ûþcûþAþ³þuñþuþv\nþþuþ»þþvþþvþuþþu\'þþþþþþþþþuDþþu¤þþþþuþ3þþÍþ Ýþþþ\rþþLþþuûþ3þþuûþþþ þþþþvþþEþþrþþwþþÁþºþ þvþíþ þ +þ Eþ \\þþ]þEþþrþþwþþÁþºþ þvþ<þ þ>þþºþþþºþþûþtþþµþûþtþþ°þûþtþþ(þûþtþþ(þûþtþþµþûþtþþ°þûþtþþ(þûþtþþ(þþuûþêþþuûþþ\x00þþûþþ\rjþûûÐþ\\þþ5þþ(%þ²þ;þ³þpþeþJþþåþ)þ²þ³þ¸óþuþvþw\nþþu(þuþîþcþu\'þþþ\'þþþþþþþvþ þþ|þøþþûûþ Iþþ ëþþþþæþþ>þþþûþþ 1þþXþþYþþJþþXþþ ®þþûþþ¡þûþþþûþþRþûþþºþþXþðþþþþþjþþ Tþþþªþþ.þûþþûþ\\þþRþþjþþþþ &þþfþþûþþfþmþþçþþ YþþÓþûþþrþûþþwþÁþûþþíþwÙþûþþ?þwþ\rÕþûþþþwþ LþûþþþþËôþuþvþw\nþþvþ þþwþ þþþþ>þ>þþþþþþÝþþþAþþþ<þûþþþªþþ \"þþþjþþþ þûþ3þþØþþ þþûþþ#þþºþþâþþ>þþþþ>þþþ\n[þþ`þûþþþûþþþþûþþÑþþþAþþûþûþþ«þþjþþþAþþþûþ3þþûþþûþþûþþþþþ)þþ\nnþþÀþþ1þþûþþ qþþ þþþÐþþvûþNþþþþNþþþwûþNþþþþNþþ¦þþþÝþþvûþþvûþNûþ§þwûþþwûþNûþ²õþuþvþwþx\nþþuûþw¡þþvþéþDþþvûþwþËþ¤þþvþ1þþ+þþvûþwþ\nåþþþþþþþþcþþþþþ [þþxDþþx¤þþxþ+þ þxþþ!þxþæþþ\rþþþþûþþvþûþþ¶þûþþ©þ ûþþGþûþ3þþûþþvþûþþ¶þûþþ©þ ûþþGþûþþþþûþþvþûþþ¶þûþþ©þ ûþþGþûþþÐþþûþþvþûþþ¶þûþþ©þ ûþþGþûþþ þþ+þþþþþþþjþþþÐþþûþwþ\nâþmþþ!ûþþ¡þ!ûþþþ!ûþþRþ!ûþþGþûþêþþþþþþþþþþaþöþuþvþþuþéþvþ]þuþDþvþPþuþ1þvþÛþuþ Kþvþ^÷þ\'¬þ¡¬þ¡¬þ¡¬þ6øþuþv\nþþe[þ²þDþ³þþþ²þòþ²þ ôþvþ²þ³cþ´óþuþ²þ³Çþþåþæ\nþ\rûûþ0þåþ äþþ>þþ Ýþåþµþþ(þæþþ÷þ¶þþåûûþ§þþåþîþÝþþå)þ\rþþ Ïþûþ þþþþþþþ\rþþLþþûûþþþþþ¨þþGöþþþRþþõþ´þÀþ²þþûû{þXdþþþåþæ\nþþþþþ>þþþåþþåþæþþåûûþúþåþåûûþñþþåþsþþ\rþþLþþåûûþþþþþ¨þõþ´þþ­þ³þþûû{þGöþþþRþþþMþdþþþûþþèþûûþ¨þþ¡þcþÃþ)þþþIþùþuþvþwþu ûþ\nþu×þu\'þøþvþw5þ)þuþ|úþuþvþw\nþøþvþw5þþuþ|þ\x00þuþvþw-Èùþuþvþw¾þþuþvþw-úÉþuRþvþwþþuþvþw-Ôþþuþvþw¾þþu\nþþuþpþþþþuòþþþ@þ\rþþûþþþuûþþ°þuûþþ:þuûþþ åþuûþþ ¢þþþf*+ûûþi,w-þhþ%þþþ fþþþ þþ.þúþþþ/Hûþðþþuþ\n³þþ\rÞ.þuþ©/×þOþuþvþw`þwþwCþ þu.ûþÂþvCHûþMþþvqþþvþvþ<þvSþwûûìþvIþþPþuþvþvþ<þvSþuûûîþvþQþuþvþvþ<þvþuûûþ÷þvþRþuþþlþuÝþuûþêþÝþuDûþhþ>þhfþþKþ\"þDûþ\nþ\"þ*[Kþþûþ@þ\x00þ¤þþøþþ\"þþ´þ\"þþLþuþKþ\"ûþ5þ\"þuþ ]þuþþûûþyûþ{þuþS%þ+ûû ûûþ¶ûþêþþþþþþh[þþþþ*1þûþÔþþ\rþ)þþþûþ@þþ?þ,ûû þþÇÙþþZþþÝþûþHþþKþþþ ºÙþþþ\"ÙþþAþ-ûû þþþ&þÝþûþþþþþþþ¤þþôþþ  þþeþþXþ\"þþöþÎKþAþþ¥ûsþrþþ qþÐþaþþþeþþXþ\"þéþåþUþuþv33þ þTþzþTuþuûûäþvþ±þuþeþTþ\rEþVþuþ3þ1þuþþ)þÒþþå`þå&þåûûþ´þåûûþBþ.ûû þåûûþZþªþþåþ ûþ×þdþå,þxþå#þ,þuþvþwþZþuöþOþvþwþu_þv ûþ&þu*þwaþuþwþWþu\nþûûþ\nôþ ûþþuþ¹þuûûþCþuKþ&jþuûþ\nlþuþÅþu ûþþuþ¹þuûûþÍþuûûþ)þuûûþÇþuûûþ¬ûþþuûûþ þuûûþ¬ûþ}þþFþXþuþ*þuþuûûþÍþuûûþZþþFþYþuþu ûûþþþWûþûþhþþ\rþ)þ©ûþûþþùûþûþþ5ûþ3þuþ3þûþûþþ ôþþþ\rþûûþ £þ©þûûþäþþzþûûþäþNûþ3þuþÞþZþuþoþu&þuûûþ\x00þuûûþ 33þ³þu CþWþuûûþ¾CHûþéþYþuþþuûûþãûþ±!ûþ\r$ûÕþMûûjþuûûþªþuûûþãûþ!ûþPûÕ1ûû þuûûþëþþFþ[þu÷þþ\rXþuþ+ûû þþèþþeþÙûþ¨þþþ-þuþvþwþxþu &þu þGþw ûþþZþuûþwþÝþxÎûþÔþOþvþxþuûþwþþw ûþÌþZþuöþOþvþxþuLþWþuijþuûþ +þv ûâþxþ/þu¯þxþ:þuþwþx5þxyþWþuijþuûþþv ûâþx*þuûþw3þuûþwþxþ¬+þx®þw ûþdþWþuijþuûþ Ïþv ûâþxþ{þuþw¯þxþ:þuþwþx5þx®þw ûþâþu þv ûâþxþSþÕþxþRþx5þSþ~þw ûþZþWþuàþv ûþÂþxþuûþwþ¯þxo33þ=þuûþwþxþ±þuþàþûûYûþþUþþxþuûþwþûûþuþVþuXþx®þw ûþÚþWþuàþv ûâþxþuûþwþ¯þx(33þ=þuûþwþxþ±þuûûþ\r þûûYûþþUþþxþuûþwþûûþuþþïþx®þw ûþ`þWþuiþyþuþwiþxþv ûâþxþ9þuûþwþçþxþuûþwþ<þx5þxyjþuûþÔþ°þuþwþxþCþx®þw ûþÒþu CþYþv ûâþxCHûþMþþxþ í#ûû þxþ\'ûþ°þx,ûû þxÉþxCHûþMû¥þxMþuûûìþ<þx5þx®þw ûþ¾þWþuijþuûþ¥þx ûþ\rþu9þxþuûþwþIþx®þXþuþ2þw ûþÇþw ûþÛ33þôþþuûûþ÷þ.ûû þuûûþÞjþûþ$þ ûþ jþûþçþ ûþ8þ ûþ iþv.ûâþxþ{þþ¯þxþzþþþx5þxþBþw ûþQþv ûþ ØþWþuijþuûþ7þx ûþþþ.þuþ âþ:þxþuûûþµþ þþ ¿þxoþv.ûþìþuûþwþáþxIþuûþwþxJþ<þnþuþu9þCþ\\þuþvþu &þu þZþþWþuþþ\nPþ.ûû þuûûçþþ.ûþ\rãþv.ûþþþuûþv@þWþöþuûþvþ8þ ÙþûþÄþ9þ,þþ/þuþOþ,þ_þþ.ûþ!ûþÊûÕþv§þþuûûþ Dþ¨þ5þ9þûþvþþ²þv.ûþ«þv.ûþ=þ©þuþv_þu Cþþv ûþ:Dþ þþyþuþvöþ9þuûþvþþþv ûþ.ûû þuûûþ-ûþ!þ+þuûþvþþu Cþþv ûþ¼þoþXþuþ2þv ûþÇþv ûþÛ33þôþþuûûþ÷þ.ûû þuûûþÞjþûþ$þ ûþ jþûþçþ ûþ8þ ûþ\n)þ{þþþþjþuûþõþv ûþ2þuûþvþ8þZþuþ2þv ûþ;þ9þuûþvþþ ûþ\nþv ûþ¿þþ­þuþþþ­þuþKþþuûþv@þ ûþ?þ ûþÅþGþ+þþãþ ûþ¹þ\nþþuûûþ\nµþþ|þþûû8ûõþ5þûûþ÷þv ûþôþu.-þ9þuûþvþþjþuûþõþv ûþUþþ.þuþ-þ:þ ´þuûþvËþ]þu\nþBûþmûþ}ûþ«ûþðûþðûþ´ûþÀþþ\rþ)þ4þ!ûþ_þûþþ Øþûûþþuþ\nÍþ!ûþÛþûûþþuþ:þ^þu\nþBûþmûþ}ûþðûþ¥þþ\rþ)þ4þ!ûþ_þûþþ 6þ!ûþ_þûþþ¯ûþ Îþûþþ¯ûþwþþlþþþþûûþþuAþþuþþûûþþuAþþÜþþxþþ\r1þþxþþ\rYþ7þþïþ_þuþv\nþûþÏþþvGûþRþþvþPûþQþ!þ õþûþ þþ¯þþ .þþuþuûûîþþþ!þsþûþ þûþ¬þûþËþûþÐþuþuûûîþþ5þuþ`þuþv3þ=þvûþïþvqþþuûûYûþþûûäþvþ±þþvþûûþFþûþ\nÁ3þZþvþ\rîþþv*ûû þvþXþvþaþuþvþN*þvþ®þ^þNþßþ]þNAþuûûþ>þNþNþ Ä33þþþNþ%þNþ`þuþ°þþ3þNþ_þñþNþ`þuþNþNþ_þNþ~þþNþþ\n@þuûûþ>þNþöþ Hûþ\néþNûþ¦þ±þþûûþ­ûþ¥þuûûþ>þûûþ­ûþqþûû¨ûþ¥þuûûþ>þûû¨ûþ\n%þNþøþ.þuþvþu &þu þZþãþþþþ þþµþþßþþÆþu²þuûûþÖûþ_3þJþ[þuÎûþ }þuûûþ\rþv ûþEþcþ~þu þv ûþ\nþ ûûjþLþv ûþ Þþ¡ûûjþLþv ûþ;þ¦ûûjþuþLþv ûþ jþ§ûûjþuþ_þv ûþ¸ûþÔþþ0þv.ûþßþv.ûþëþgþuþvþ_þv.ûþþv.ûþkþhþuþvþþÄþu CþWþu þv ûþ ­þPþuþþPþv ûþãþQþuþþPþv ûþ\rþÞþuûûÛûþþÝþuûûÛûþþþIþ®þu þv ûþþþáûþÔþaþuþ@þv ûþ\r{þWþuiþuûûþ`þzþuþ©þv ûþ tþWþuiþuûûþ`þ{þuþ@þv ûþâþWþuiþuûûþ`þ}þuþ\r:þu ûûþ}þv ûþ°þv ûþ\r|þ~þvþLþv ûþ ÌþuKûûþ\roþþ®ûûþ/þqþþ£þv ûþ¾ûûþþuKûûþþþ®ûûþ/þqþþLþþéþWþuiÜþuûûþ®ûþ Éþþ.+þ)þuþøþv.ûþ\rkþuþWþuijþuûþ MþeþuþOþv.ûþ þuþWþuØþ£þuþOþv.ûþ ðþuþWþuöþ¤þuþOþv.ûþ ¸þuþWþuØþ¢þuþÎþv.ûþhþuþWþuØþ¥þuþÎþv.ûþßþv.ûþëþgþuþvþLþv.ûþþv.ûþkþhþuþvþLþv.ûþ\rIþuþWþu§þ²þuûûþéþþ.þ¨þ²þ1þ²þþ±þ²5þ²®þv.ûþΤþuûûþ ôþkþuXXþuþvþÇþþåþ² þåþ(þ¨þå#þ/þu\nþãþ?þþ þþµþþßþþÆþu ûûþ 3þ ûûjþLþu ûûþ\r®þ¡ûûjþLþu ûûþþ¦ûûjþLþu ûûþ?þ§ûûjþXþuûûjþþ0þuþvþ[þu ûûþ ¥þv ûþ3þþvþ¾þvþ1þuþu -þSþþuûûþþbþu\nþþuûû6ûþ\"þOØþþc%þ®ûûþ\n{þ®ûûþ\nÎþ®ûûþ.þIþþdþu`þu;þu;UNþuûþ þ\'þþ.þuþþ:þ\rÅþþuûû6ûþ 7þzþuûþ þþþå\nþþþuþeþuþåþ-þiþåþfþuþå3þ ²þþuûûþþ þlþåþþûûþÔþûûþgþûûþ³þiþå°þ=þfþþåþþoþþ¨þuûûþ·þ1þlþåAûûþgûûþ³þiþåþfþåþ öþþ{þuûþ-þ}þ\'þ£þèþÞþþëþþ ªþjþåiþþ)þuþiþå,þkþå#þeþuþv\nþþ.þuþþ:þÄþ:þ:ûûþ\x00þ:ûû þuþv°þþ[þfþuþv\nþþu;(þþþ$þþ\rþþþ÷þþûþ3þûûþ\x00þûû þuþv°þþKþgþuþvþw\nþþwDþþw¤þþwþ\'þ ûþåþþûûþ«þþ5þûþ\rþu<þu<þ\nUþu<\"þjþuûþ\rþÍþjþuûû6ûþ\r<þj\nþB\"=þ\n\">ûþ\n`þþ\r§&ûû þjþþVþj&þþxþuþÄþ5þûþ¿jþuûþÛþdþuþVþu;þu;þëþv ûþþu;\"þLþv ûþ\ndþu;ûûþÕþþ¿Xþuþvþwþhþuþvþw\nþþwDþþw¤þþwþ\'þ.ûþåþþûûþ«þþ5þûþaþu<µþþ\rþu<)þ©þu<ûþ¿þþu<ûûÐþþ ^þ5þûþ¿þu;µþþ\rþu;þÉþu;ûþ¿þþu;ûûÐþþþþÊXþuþvþwþiþuþuûûþØþuûûþ\\þuûûþÚþjþuþuûûþ ºþuûûþþuûûþOþkþuþuûûþ\r9þuûûþ èþuûûþ ¬þlþu-þuûûþ íþnþuþmþuþþ.þu±þ¹þ&þþ;þ.1þþ?(þ &þ þ&þuûþ\rÎþuûû8ûõþ,þþZþ<þoþu#þoþu\nþþ/þuþm(þ7þuûûìûþNþqþuþpþuþþuûû6ûþ \"þ ÙþûþÑþþ/þuþ.þ&þuûþ6þuûû8û»þþþZþ<þrþu#þrþuþpþuûûþdûþåþsþuþYþu!ûþ ÛûþûÕþu¾þtþuþu ûþ\r(þþMûû þu\'þ)ûû þûþ\naþþþ¯þ-ûû þþþXþþuþu\nþþ.þu\'þþ.þuþÇþu9þ@þu9þþ(þþ@þþ@rþþuûû6ûþ\nþ@þþêþ ûþ\rþþtþ,þþþþ~þþþoþ²B\"=þ\n\">ûþ xþþñ33þÁþûþ1ûþæûþ\x00þ²þþþ5þ²þuûûþfþ²þàþ³þuûûþfþþgþ³þªþþkû6ûþ\'þþkûþ©û8ûþ þ²þnþ³þ½þþkûþ!ûþùþ³þÃû8ûþ þþ-ûþfþIþ0þvþuaþu<þ²þþ\rþu<)þOþuûþXþu<ûþþöþwþuaþu<þ²þþ\rþu<)þNþuûþXþu<ûþþöþxþuÜþuûûþ®ûþôþuþuþþBûþ ûþ þþ\rþ)þ4þþûþþ-þþuûû6þþsþàþ ûþiþvþuþ§þ ûþ\rþþtþcþûþSÚþþþ°þþþ,ûû þþþ¡þþþÉþuûþþ°þþ Ãþ ûþiþwþuþÉþyþuþv\nþ.ûû þuûûçþv ûþ¹þ ûþÑþ ûþ ¤þþ_þ ûþÓþ ûþ°þ ûþþ ûþ þ ûþÜþuûû6ûþ9ûþøþzþuþvþw\nþ.ûû þuûûçþ ûþÍþv ûþ\"þ:þuþvþwþ~þv ûþ¸þþuûû8þvþwþuþu5þ®þyþuþvàþwþwþ<þwXþuûû8þvþwLþ ûþþv ûþõþ:þuþvþwþ~þv ûþUþþ.þuþôþþþAþwþVþw ûþ\rþ³þwþtþw,þwþþwÉþuûû8ûþ þþþwþ~þwþ:þuûûþ þ=þuûû8ûþ yþ ûþ?þv ûþçþ°þuþvþwþþ ûþ¬þv ûþ¿þþuûû8þvþwþ¬+þaþuûû8þvþwþ{þuþv\nþþ.ûû þuûûçþ ûþþv ûþ¿þþ.þuþþ -þ þ;þ9þuûû6þvþêþ ûþþv ûþþþ.þuþ²þ þ:þ ûþ3þ þ;þ9þuûû6þvþêþv ûþUþþ.þuþÇþþA-þAþBþyþuþvAþþuûû6þv5þ9þLþ ûþ?þv ûþçþþuûû6þv5þGþ+þþãþ ûþ\nþv ûþ¿þþ­þuþþþ­þuþKþþuûû6þvþ ûþ?þ ûþÅþGþ+þþãþ ûþ¹þ-þ|þéþuûû6þvþ|þu\nþþ9þu\'þ&ûû þþWûþHþþ.þþÈþþ Ä-ûû þÀþXþþ}þuþv\nþ.ûû þuûûçþ\nþþ.þuþþ ûþþv ûþ\"þ þ?þyþ ûþþv ûþõþ þ?þyþv ûþöþAþ:®þ ûþ¬þv ûþ\"þ¬þ ñþ&þuþvþ~þuþv\nþþvþþþvþFþþvþ+þþ<þþ\rÇþ&þvþûûþåþu¢þþþ]ûûþåþu¢þþcþ}þþþþþþþ®þþþ ø|þ\\þþpþ<þ1ûûþyþÇþþå\nþ.ûû þåûûçþ ûþ¦þþ{þåûþÖþ:þåûõþLþ ûþþþ{þåûþ\rþ:þåû»þLþyþåûþþþ{þåûþyþ:þåûþnþÏþ þuþvþwþuþ±þuþ<þu5ûûþ þuþvþwþ¡þuþvþwþuþ<þuûûþ ^ûûþ\rUþuþvþwþ¢þuþvþwûûþþvKûûþþ«þvþ±þvXþuûûþ Iþvþwþ£þuþvûûþþvKûûþþ«þvþ±þvXþuûû¬þvþ¤þuþv\nþþuûû´þvþ¬+þþ¥þuþvþwûûþþvKûûþþ«þvþ±þvXþuûûþ /þvþwþ¦þuþu ûþþþuþ¾Xûþ½þ§þuþu ûþþþuþ¾Xûþ¾þ¨þu\nþþ.þuþþ@7þuûû8ûþ þ@þþ þþ×jþuûþôþuûû8ûõþ LjþuûþÛþuûû8û»þ þu;þu;þìþA7þuûû8ûþ þAþ&þuûþïþ©þuþv33þZþuûûþ{.ûû þuûûþ-ûþ!þuûþvþíþ²ûûYûþþ²ûûäþuûþv3þ¨þ²þ1þ²þ5þ²ûûþfþuþuûûþÔþ¨þuþ1þuþ5þuûþvþ,þþåþ² þåþ(þ¨þåþþåþu þåþ(þ¨þå#þªþuþvþvûûþ ¨þ.ûû þvûûþ ¦þEþ ûþAþEþ ûþáþu ûþqþ&þþþu ûþLþANþvûþXþ#þþåþþìþvþûûþQþûûþþå0þ«þu`þu&þuûûþ´þuûûþBþ.ûû þuûûþZþªþþuþuûû6ûþ Dþ ûþ×þdþu,þxþuþIþ ûþ¦þþuûû6ûþÖþ:þuûõþLþ ûþþþuûû6ûþ\rþ:þuû»þþdþuLþyþuûþþþbþuþ:þuûþnþþ\nþ ûþ]þuûûþNûþpÛþuûûþøûþ þuûûþ êþþuûûþuþþþÉþuûûäþþ þþèþ¯þuþ~þ ûþlþþuûû6ûþ<þþuûû6ûþ\nÙþþ ûþVþ\nþÝþûþHþþ#þ(ûû þ¤!ûþÏûþKþþ¥ûsþ<þþuûû8ûþþþøþ ûþ©þþ­þuþþþ­þuþ&þ ûþ?þ ûþ\nwþ¯þuLþ ûþ+þ®þuþÄþ ûþ\rqþ¬þ þxþuþ¬%þ\nG\nþÔ\nz1þ\nG\nþÇþ/þþþþ5þ­þuþvþw\nþþuûû6þvþþØþþwþwþ\x00þ.ûû þ_þwdþ/ûû þþ :þþ®þu\nþûþÞþþuûû6þ±þÓþ°þuþþþñþ¯þu\nþûþQþþuûû6þ±þÓþ°þuþþþ4þ°þuþvþwþx\nþ}þwþþPþþ#þuûû8þvþwþþ%ûû þ\nþþ\'þþkþþþuûû8þvþwþIþxðþwþ+þw]þwþ|þw,þ}þw\'þÝþwûþMþwþþuþþÜþw*ûþ9þþÁûþ\r_þþ {ûþÁþw*ûþwþxðþw*þVûsþCþÍþwþ±þ&þþ Xþwþ<þwþ¦þw*þWûsþCþ Ñþwþ<þw_þþKþw*ûþ}þþ þuûû8þvþwþ±þuþ3þ1þuþ«þ)þþþ2þu\nþ>þÝþ?þþêþþþßþþþu.ûûþzþþ þþûþþ ¬þ ûþ ³þûþþÖþþþ¾ûûþK[þLþu.ûûþLþþAþþ³ûþþþVþþHÜþÙûþ×ûþ.þþ³þÀþDþþþÝþ(þþ\nñþþHþÙûþoþÙûþ}þþÙûþ1þþþuþ ÂþþOþuþþPþþ~þuþDþþþþáþuþDþ¤þþ\n\nþ²þuþ#þ²þuþv\nþãþþ\rþv)þþûþþ;þûþÚûþmûþGûþ úþ¸ûþcûþ%þuþvþ³gþÓþ?Nûþ2þ2\'þ²|þ1ûûþyþÇþþå\nþûþQþ.ûû þåûûçþ ûþÔþûþÞþþ.þå±þ¹þþ:þåþþåûû6þþCþ²&þþ:þåþþ þÄþ ûþ×þûþ<þþ.þå±þ¹þþ:þåþþåûû6þþCþ²&þþ:þåþþ ]þåûû8þûþþdþåLþ²þyþåþ§þþåûû6þþ:þåþþ9þþCþ ûþDþåûû6ûþÍûþæþåûûþû´þåþÆþ ûþ\re33þôþþåûû6ûþ\nØþþ ûþ\rþþtþcþþþÉþåLþåûûþQþþ?þªþþå,þxþåþ(þ´þuþvþwþxþyþzþu$Mþv$Nþw$Oþx$Pþy$Qþzþµôþ4þu[Sþuþr[Kþ¿þ Í[\\ ûþ7þu]þþþuþ9þ^þKþµþ]³þþ^þ¡þ_þþ!þþ\rþþþûþSþu#þ5þuþu`þqþ6þu[aþuþubZcþubþ¯þ7þuvcþIcþºc ûþ\n¡c ûþ\næþubþ\r\x00þubZc9[aþuþ¶þfdþjeþjfwgþ$hþ$iþ$jþJþþdþÊþþeþlþþffþ dþþ(dþke2ed$dfþºþ8ôþ9ôþ:þuþuTZ\\þ;þuþuTZ\\9MRþuþ<þuMSþuþ=þuþuUþqþ>þuvkþuYZk#þ?þuþuXZk9lRþuþ@þulSþuþAþuvl þumþumþþþuþ9þ^þKþµþm³þþ^Mþ²þuþ[[SþuþllSþuþ²þå`þåþ\rþþ\rþån)þ4þþånûþ3þm³þ²þÏþ·þuþv[þu$oþvþ¸þuqþuþ¹þuMþuþºþurþuþ»þuþv[þu$lþvþ¼þusþuþ½þuþvtþu$uþvþ¾þuþvþw\\þu$vþv$lþw$wáxwnwyá^þ|zþ\x00þ¿þu\\þuþÀþulþu$wáxwnwyá^þ|zþ\x00þÁþusþuþÂþu[þuþÃþuþvþwþxlþu$\\þv${þw$|þxþÄþuþvtþu$MþvþÅôþÆþuþvþwlþu$\\þv${þwþÇþuþvkþu$lþvþÈþukþuþÉþuþv[þu$lþvþÊþuþvcþu$[þvþËþuMþuþÌþuþv\\þu$MþvþÍþuþvþw+þu$}þv$lþwþÎþuMþuþÏþuMþuþÐþuþvþw\\þu$vþv$lþw$wáxwnwyá^þ|zþi~þ >þÑôþÒþulþuþÓþuMþuþÔþuMþuþÕþuþv[þu$_þvþÖþuþv[þu$_þvþ×ôþØþuþv[þu$lþvþÙþuþvþu$lþvþÚþu[þuþÛþuþvlþu$|þvþÜþuþvþwþu$ þv$¡þwþÝþuþvþwþx+þu$þv$¢þw$lþxþÞþuþvþw\\þu$vþv$lþw$wáxwnwyá^þ|zþ\x00þßþuþvþw£þu$cþv$¤þwþàþusþuþáþuþvþu$lþvþâþuþvþw£þu$cþv$¤þwþãþulþuþäþuMþuþåþuþvþwþu$lþv$¡þwþæþuþvtþu$uþvþçþu[þuþèþukþuþéþuþv[þu$oþvþêþuþvcþu$[þvþëþu\\þuþìþuþvlþu$þvþíþu¥þuþïþu-þîûþuËþñþu-þðûþuËþóþu-þôþòþuþzþôþuþv\nþþþuþ3þþþ9þþ´þþþþþþÅþþuûþ@þ\rþvþþþÇþþþvþþþòþ þv-þþ ~þõþuþv\nþþþuþ3þþþ9þþ´þþþþþþÅþþuûþ@þ\rþvþþþÇþþþvþþþòþ þv-þþ5þþ ~þþöþuþvþwþõþvþwþ\rþôþuþwþzþ\x00þu-þöþ÷þøþuþþu-þöþùþúþuþþuþYþuþîþuþËþuþþuþ¾þuþMþ\x00þu¾þþu-þuþþuþ\nõþþuþuþgþûþuþ=þþuþþuþuþgþûþuþþþuþ}þþuþþu\nþ²(ûû þu!ûþ §ûþVþ³þ´þµþ:þ¶ß#ûû þ²þ\'ûþ­þ³øþ·BûþóûþIûþîûþfûþÂûþtûþÀûþÐûþÇûþ ûþgûþ ûþ¶ûþ ûþÆûþ»ûþvûþÌûþ ûþ gûþkûþçþ¸þùþ¹:#ûû þ²þ³þº:$ûû þ²þ³þ»%þ$ûû þ²þ³þrþþßþµþ«þþ¼þåþCþåþ\náþ»×þ½þå-,ûû þ²þ³þåþ6þåqþ¾þþ¿þþþþsþþ¾óþ´þþÀþåþæ\nþþ¾ûþ¿3þ¿Eþ¿þkþ¿þ2þþåþMþæþPþ´þQþµþµÍþ¶þåIþþJþÁþåþæþ lþåþJþÂþå\nþþ³þþþ$ûû þ²þ³þrþþ Uþ$ûû þ²þ³þrþþ wþþ =þ$ûû þ²þ³þ,þûþþ\rCþþsþþQþ$ûû þ²þ³þ %þþþ©þþ1þþõþ$ûû þ²þ³þþ&þþþþAþ$ûû þ²þ³þþþzþåþ$ûû þ²þ³þáþþAþ$ûû þ²þ³þ\r6þþßþþ Èþ$ûû þ²þ³þrþþåþþ\nþ$ûû þ²þ³þáþþAþ$ûû þ²þ³þ þþþ°þÁûþoþ³þ$þ-ûû þ²þþ³þåþþåþIþÀþ¿þþÏþÃ%þþ³þ$ûû þ²þ³þGþþMþ$ûû þ²þ³þÓþ&þþúþÁûþ\n¼þþôþ³þ 0þ/þOþÀþ-ûû þ²þþ³¾þÄ%þ&ûû þ²þ\ræþ³Rþ(þþtþ,ûû þ²þ³þ³þ²þ4þ-ûû þ²þ³þþ³þaþÌþuþÅ%þ&ûû þ²þ¶þ³þþ¥þÁûþ¼þ-ûû þ²þ³þþ³þþ\nRþµþµ&&ûû þþÅþÌ×þÆ%þþþ³þ$ûû þ²þ³þáþþAþ$ûû þ²þ³þþ³þ$þ-ûû þ²þþ³5þþÇþå\nþþ³þþþ <þ$ûû þ²þ³þÓþ&þþúþÁûþÑþþ #þþhþþôþ³þ Zþþ,þþGþþ\r¨þþÆ+þÀþÖþå-ûû þ²þþ³¾þÈ%þþ¶(þþþþLþþëþþVþþ\'þþþþ%þþëþÉ<þ³þ$þ¹þûþþ»+þÄþ+ûþ\nOþ»+þÅþ þÈþYþ¹þmûþ_þ»+þÀþþÀþÎûþÄþÇûþ*þÊ<þ³þþþºþbþÂûþèþÀþ¾ûþdþË%þþÆfþ¶þ\rØþÀþÒþ\'þþôþ·þþþàþþ¸ûþþþÀþþXþÀþÒþþÌ%þ$ûû þ²þ³þ@þþ§þþþ\r þþ \x00þóþþ³þþúþµ³þ$ûû þ²þ Eþ³,þ´þ³þ$ûû þ²þ³þ\"þþëþÃþ£þÊþ¦þÉþ[þ»þþºhþ­þ»þþºhþ­þ»+þÀþóþÀþÞþÀþ\nkûþÑþ»þþºhþ­þ»+þÀþ þÀþÎûþ\näþ»þþºhþþ\n¿þ»+þÀþ£þ»+þÀþLþÀþ Zûþþ»þþºhþ­þ»+þÀþ\nþÀþÎûþ bþ»þþºhþþÅþ»+þÀþåþ»+þÀþ£ûþþÀþÜûþ´þ½þþµþ¼þàþÄÁþ»þþºhþþ¡þ»+þÀþ%þ»+þÀþ\nÜþÀþÜûþ\n:þ½ûþ½þ¼þ½þÄÁþ»þþºhþþ Gþ»þþºhþ­þ»+þÀþµþÀþ\n7þ»+þÀþMþÀþ[ûþ ?þ»þþºhþ­þ»þþºhþ­þ»+þÀþ:þÀþ aþÀþnûþ 8þ»þþºhþ­þ»+þÀþ\r.þ»þþºhþ­þ»+þÀþ¬þ»þþºhþ­þ»+þÀþ£ûþ %þÀþvþÀþ¿þÀþ[ûþ/þ»+þÀþ~ûþÖþ»þþºhþ­þ»+þÀþ\n þÀþ6þ»þþºhþ­þ»+þÀþÙþ»+þÀþ þÀþGûþþ»+þÀþªûþ¦þ»+þÀþ)ûþ\róþ»+þÀþ àûþ\rÝþ»+þÀþ:ûþ§þ»+þÀþ òûþCþ»+þÀþ ûþÙþ»+þÀþ\rwûþ Rþ»+þÀþ\rûþ þ»+þÀþ nûþ Pþ»+þÀþôûþ\rLþþþþØþËfþþØþÂþ®þOþÀþ .þÁûþHþþ5þ̦þÁþ̧þIþÌJþ<þ¶þ_þþuþvþwþx\nþ²þþu\'þ³þ!þ´þ!þµþ!þ³þ¸þpþ¶þå-þ³ þåþ·:þµèþµþ²þSþ¸<þ´þ³(þµþ³þµþµþ sþ³þ²þþ³þ¹þåþæþçþèþ²¦þåþæþçþèþºþåþæþ¹þæþåPþ»þå`þåþåþ³þºþåûþ wþåþQþåMûþ£þ¼þåþ¶þåöþ¸Áþºþ³ûþDþ³þþ³MûþUûþTþåþþïþå¯ûþNþ½þÀþx²þ³Q&þ³þ½þ³þ )þ¾gþ³þ\n\\þ¸þ\n¨þ½þ¬þ»×þ¿<þ¼þRþþäþãSþ²§þ¼þ<þþÀ%þþÝþ³þ ¯þþ´Gþ´þþþÂfþ[KþÔ²þþ (þþÕþ¹þ[M5þþ6þ·þ­þ¨þÁþKþÂþ\n!þÒþÉþòþ¸ªþ×þ.þ¸+þÃþèþ þ¸+þÃþÈþ¸þ¸þ¾ªþÑþ\n¯þ¸ªþìþÀþ >þ¼þÂþþ¿[þ¾[þþpþ¸ªþÙþ¿[þÀþ\ngþ¸+þÄþJþ¸+þÇþÐþ Ãþ¸+þÈþªþ¸ªþÓþ zþ³þþ¸þÓþ½þpþþäþãþbþ¾[þþ ¾þ¸ªþØþ¿[þÊþ/þ¸fþ³Qþ¹ûþ¸þþäþãSþ¾ªþËþþ Èþ¸+þËþ dþ¸1þþÁþÌþsþ¾+þþ þ¸+þþÍ[þ¾[þþMþ¸ªþ»þ¿[þÀþ²þÂþ½þÁ%þþÓþ¼þþþÀªþÇþþþÂ%þþäþãSþ¾ªþÚþþÃþå\nþþ÷þ½þYþ¶þÅþþÓþ(þþþ¾1þþåþ5þþÄ<þ¼þRþþìþ³þ\r,þþ¶þþ¸þÒþàþÌþ Gþäþãþþ¶þþKþàþsþ³þ¹ûþuþ¸+þÆþéþÅþþÅþåþ¼þþþ³þ\rþäþãSþ¼þþþ³þgþäþãSþ²§þ¼þ>þÝþåþþþÀþSþÆþå\nþþäþãSþ²§þ¼þ>þÍþåþþÀþSþÇþå\nþþå þÐþþ¶þxþÓþ·þ þþ»þ¼þ8þåþþþ\ncþþ¨þþþþCþ³þßþþþQþ¼þDþ\"þÓþØþ¸+þþ%þþÉ+þ0þÈ%þþ¿[þþÀfþ¶þ þ¸ªþåþþþÀþwþáþþþÉ<þ¼þIþþ`þ³þ*þ¶þçþ»þ\"þÀþØþ¸+þþÊ<þ¼þIþ>þþÙþþ þ³þ*þ¶þçþ»fþ¶þÈþUþ¸þþÉþäþãþbþþ\"þþ¼þþ¶þ\nGþUþ¸þ¼þþþãþþ\"þþÃþþ»þ\"þÀþ|þ¸+þþË%þþÉ[þþþ(þ¶þÚþ¸þ¼þ `þþÓþ¼þ þþÉþ þ¶þ½þ¸þþÉþ þ þþ¹ûþ\rtþþþùþÃþþþþþ×þÆþþþþÞþÛþþþÌþå\nþþÛþþÓfþ¶þ þ¸þóþÌþþäþãþ4þåþÂþóþëþþ¯þ³þËþ¸þþþÍþmþ¼þÌþ\nþÎþåþæþç\nþþ:þþ`þ³/þåþþþQþ¼þþæþ³ þåþÖþ³þ;þçþóþÅþ\rpþ\"þäþãþþ¸+þþÏ<þ¼þIþþ:þþ`þ³þ*þþþQþ¼þ\r¶þxþ³þ\r þþ³þþÐfþþ\r\rþ³þ\n.þþ þóþæþÐ[þÇþÞþ6þþþóþ½þÐ[þÇþÞþ @þ¼þþóþÄþþäþãþÛþ¸ªþºþþÐ%þþ³þ¸hþþ´þMþáþñþMØþMþ»þ½þÑ%þþ³þ¸hþþÊþMþáþñþMØþMþ»þ½þÒ%þþ³Mþ\n¦þ¿þþÓþtþ¶þ )þ¹ûþþþÒþ¸+þqþþ«þÔþàþÕþ®þÖþEþ×þäþØþXþÙþáþÚþ²þÛþÙþÜþ2þÝþ¢þÞþþßþOþàþ0þáþ/þâþÆþãþþäþåþæþç\nþþÝþ³þÏþþ¿þ³Mþ¸þ/þþÔþ³Mþ¸þþþÏþ³Mþ¸þÕþþäþ³Mþ¸þRþþÎþ³Mþ¸þêþþÏþÎþ¸þþíþÎþÎþxþ vþ¸þþçþäþãþ ×þ¼þ÷þ¸þþÇþ¾þþ¸1þþäþÔþðþ³þ yþ¸1þþÎþ þþÖþþ]þþÂþþ bþþ³Mþ¸þþÊþþäþÖþòþ»þ\n*þþ\rzþþqþ³þ6þ¸1þþäþãSþ¼þ\nþþéþþþ¶þ¸þþ·þþÑþÝþåkþÕOþþ¸þþÕþþÎþ/þåkþÕOþþþêþ³Mþþ¸þ\nþåkþ×Oþþþ³Mþ¸1þþäþ×zþþâþþþþ ×þåkþØOþþþ³Mþ¸1þþäþØzþþâþþþþ ´þåkþÙOþþþ³Mþ¸1þþäþÙzþþâþþþþ èþåkþÚOþþþ³Mþ¸1þþäþÚzþþâþþþþ`þåkþÚ&þçOþþþ³Mþ¸1þþäþÚzþþâþþþþ>þåkþÛOþþþ³Mþ¸1þþäþÛzþþâþþþþþåkþÜOþþþ³Mþ¸1þþäþÜzþþâþþþþ.þåkþÝOþþþ³Mþ¸1þþäþÝzþþâþþþþ þåkþÞOþþþ³Mþ¸1þþäþÞzþþâþþþþyþåkþßOþþþ³Mþ¸1þþäþßzþþâþþþþbþåkþàOþþþ³Mþ¸1þþäþàzþþâþþþþYþåkþáOþþ¸1þþäþãzþ¼þþþäþãzþþÜþþþþ@þåþþâOþþþ³Mþ¸1þþäþâþ4þçþþßþþþþqþþÞþþ`þæþ³þ´þ¸þ\"þäþãþ4þçþ¯þþ»þûûþ^þþEþ¸þXþoþw-þäþãþ 6þþpþ%þþ\nJþ¶þçþ\"þÀþ\rþvþvlþvlûû{þ]þvþÀþXþv0þ þu¨w©þiªþ>þu9bþ$«þ$`þJþþå\nþ$ûû þåþ©þþþî¨þÎþåþè¨\"þå,þ$ûû þåþåþ ã©þþþþ¨åþþå\nþ(þå¬/þå¬þðþþתûþå¬þqþþå\\þ ©¨þÎþþè¨\"þ9©þúþ\nþu\nþBûþ?ûõûþ û»ûþnûþÏûþ ûþEûþ^ûþ;ûþûþçûþÉûþûþxûþ ûþ ûþ±ûþ\rôPþuþþ þu\nþBûþ?ûõûþ û»ûþnûþÏûþ ûþEûþ^ûþ;ûþûþçûþÉûþûþxûþ ûþ ûþ±ûþ#ûþ YPþuþþCþu\nþ¤pþuþ2¤þþ£(þKþ¿þ\\ ûþ4c ûþ$c ûþÛþþ¿\"­\'þþÔûþ÷cûþDþÕþþ «þþþb¤þmþþäþ(þKþ·\nþþ[pþu±þþþ[þþo(þ þAþ³þþÔûþñþûþ :þKþé\nþþ[pþu±þþþ[þþo(þKþ¿þþ:þ þþMþõþþ8þ£pþuþ2£þoþþ¡c ûþ$c ûþÛþþ¿\"®\'þþÔûþ÷cûþ;þBþ[þþþb¤þfþÕþþ#þ þuþv-þuKþ¿þu\\ þv&þuKþéþþuoMÎþv&þuKþ·þuo þvþ\rþuþv\nþBûþ Bûþ¸ûþ.ûþAûþÇûþ¯ûþ 7ûþûþ~ûþdûþ ûþ\ntûþ ûþxûþiûþ\n ûþ!ûþCûþ vûþ|ûþ ôûþíûþ-þu ûþÚþv ûþDPþvþþþuþuþuþòþ#ûû þuþþ #ûû þuþuþnþ ûþÌþ ûþ9-ûû þuþ­þuþ\rþuþDþu\nþ_úþþ\rþ)þ4þþûþpþuþþûþþqþ[(þKþ·þþ[pþuþþ[þ(þ\rþ[þo§þþoþþ¿\"¯\'þBþ[þkþÔûþñþûþ\nLûþ²_þEþÕþþþ÷þKþéþþ[pþuþþ[þ(þ\rþ[þþoMþþþoþþ¿\"¯\'þBþ[þNûþ²_þEþÕþþþ÷þKþ¿þ\\ ûþ âþþ¿\"°\'þþ÷þ¿þ\\þûþ²_þEþÕþþLþ\\ ûþ`þþ¿\"±\'þþ÷þ¿þ\\þûþ²_9_þäþÕþþpþ[pþuþ2[þþEþu\nþ[pþuþ2[þþo ûþÚþÕÑþ¿\"²þª[þÔþ\nZo§þþÔûþ÷oûþDþÕÑþ¿\"³þª[þþSþFþu\nþ[pþuþ2[þþþZoMþ ûþÚþÕÑþ¿\"²þª[þÔþ\nþþ BþÕÑþ¿\"³þª[þboþSþGþu\nþ[(þKþ·\nþþ[pþuþþ[þyþKþé\nþþ[pþuþþ[þþjþ[pþuþ2[þ0þHþu\nþ[(þKþ·\nþþ[pþuþþ[þyþKþé\nþþ[pþuþþ[þþjþ[pþuþ2[þ0þIþu\nþ[pþuþ÷[þ_(þ þûþ+þþþÕÑþ¿\"´þ+þNû{þþþJôþþuþv`þuþ\r¡þQ1þþþuþQþpþQþRþSfþþøþZÑþ¶þØþQ1þþ þµþaþ\'þþ«þQþ®þv\nþûûþrþ5þaþþþuþuþ@þþuþ\'þþuþ\n§þþuþuþ@þuþÊþþuþÏþþu\nþþþ?þ\rþu¼þþ*þIþþM%þûûþ#ûþãþQþþþQþÌþQþ§þûþQNû6ûþÍûþæþûþQNûþû´þûþQþ¥\"8\"û\"8¢þþN<þ³NûÚþ#þ\rþ\"þ\rKþ?þ8¨×þ %þûûÔûþ Ðþþ%þûûÖþ\\þûþjþ!<þþAäþþBQþ\rþ uþ\"%þûûÔþYþþ!1þûûYûþÓþûû8ûþtûþ ¥þ+ûû þûûþ°þþ$þDþþ¥þþþAþûûþdþþûûYûþ nþþûûþ/þJþûûþ(þMþûû¬þþ?þûûÊûþ2ûþûû¨û¬þþûûþ }þ#<þ³þ ñþ\"þ4þ$þuþv\nþCHûþrþ^þ\'þbþþVþvbÉþvV4þuþþuþvþnþuþþuþ°þÐþ·4þ ¡þuþ%þuþvþ!1þÞCHûÛûþþþ$þuþv\'þCHûþãþÞþûþ{þ þ\nþûûþÕþþûûþ±þ&ûû þûþxþ&ûû þûþþ*ûþäþ*ûþ²þþ*þIûsþûûþÄCHûîþþþ&þuþvþuûûþíþvþþuûþvþ]þuûûþíþvþ4þ\'þuþv\nþþuûþvþ©þ ûþìþþþuûû6þvþ (þ ûþìþþþuûûþUþv@þ-þûûþ þ)þuþ(.þuÓþ(þuþ&þ)þQ1þþ#þu\'þþþþþþFþ}þ\'þ.ûû þ\'þuûþ éþu&þ\'þuûþûþKþ²þþþþ ßþþ=þ ûþ Oþþ þ\rþaþ%þuþþ\râÑþÒþÂþ\rþ¶þ(33þ=þûûYûþÓþûû8ûþtþ\'þuûþdþûû8ûþ\rsþ\'þuûþ\'þûû8ûþ-þ\'þuûþyþûû8ûþ.þ\'þuûþ[þþuûûþþ&þþ ºþþ$þu\'þþþþ²þþFþ.ûû þ\'þûþþþþþÍþþ7þþùþþ þCHûþ þþ9þþþþþþ¿þþ9þcþþþþþoþþþþþû¥þþ`þÝþûþû¥þþ þþþ­3&5þaþ þþûû8û»ÝûûÛûþ¹þþ þûûþîþþ<þþ¯þþûû8û»þþþþ!þþcþþþOþ\"þþþ,þûûÊûþ2ûþûû¨û¬þþ Ü33þ\n0Qeþþ¢ÑþX¯þ*þ\rþ%þþûûjþþ<þûûþ\n>ûû¨û´þþ\nè5Þ3iþûûþRûþ\n¶þ þåþæþæþ Þþæ ûþ&þ,ûû þæþ<þÝþûþ\nÒþÝþDûþ Üþ³þåþDþþ¥þþþnþþ\r³þ!þå\nþþåûû6ûþFþþÞCHûÛûþôþÞþûþSþ¦þþ³þåþDþþ þ\"þåþæþç`þæþZþÞþåûû6ûþ *ûþSþ¦þþ þgMþþ²þæªþæþþçSþ³þåþæDþ²þæþ þ³þåþæþç\nþûûYûþ¾þûûþ/þæþûûþ(þçþûûþùûþþåûû¬þþ´þåþæ\nþ÷Íþ1þæþþuþ÷Jþþþå þþ÷þúþ#þå\nþþ.þåRþ(þþÞþþ¬þþ rþþåûû6ûþ -þþ {þþþ®þ\nþþ/þåþpþþ(þþåûû8û»þþ<þDþ ZþþËþ$þå\nþ÷Æþþ µþþ\rþå)þ4þþåûûþ þ@þûûþ«þûûþ@þûûþ\rÙûþÙþûûþ þûûþNûþ ±þûûþNûþºþûûþLþþûûÖþûûþËÙþûûþøûþåþþ\rþûûþ\r­þ©þûûþLþNûþ æþþûûÖþûûþLþNûþ þûûþNûþ\nfþþûûÖ(ûû þûûþ !ûþpûþúûþ\rþûûþNûþ `þûþ þûûþl.ûû þûûþ6ûþ¾þ þþQQeþûûþþþûûÖþûûþËþûûþl.ûû þûûþ6ûþ\røþþûûÖþûûþþþþøþþûûþl.ûû þûûþ6ûþIþ´þþåiQeþûûþ®þþµþûûþpþûûþÜþþûûþþþ.þþûûþ¥þþ5Þ3AþþûûÖþûûþÍþûþÄþþ.þûþËþþ\n8þ÷þþ,þþþþ÷þ 6þ÷*ûþ /þ÷*þ¯ûsþ#þ%þåþæ\nþ÷þåûû6ûþFþå\nþþ<þæþåûû8û»þcþþþøþþûûþlQeþûûþµþûûþ«.ûû þûûþ6ûþÖþ³þåþûûÖþûûþ_.ûû þûûþ6ûþ ;þþµþûûþpþûûþÜþ³þåþûûþ Fþþ.þ³þåþûûþPþþ5Þ3Aþ³þåþûûÖþûûþÍþ³þåûþÄþþ.þ³þåûþËþþvþþûûjþåþnþåÌþåÌþXþE3þ¤þåûûþ¤ûþ ªþåûûþ¤ûþ\r£þ¹ûûþ/þåûûþûûþ\rµû;ûþûjþåþBþåͳþþZþgþ÷þ§þ&þåûþ Kþåûû8û»þ÷Ïþµþå þåûûþ% þåûûþþþåûûþ3þåûûþ îþûûþ£þåûûþÅþûûþkþåûûþYþåûûþ #þ&<þ(0þ*:þXûþ\rPþ+þuþuþuþ9þu\'þ&ûû þuþVûþHþþ.þþÈþþ!þu-ûû þuÀþéþuþ,þu\nþûûYûþÑþûûìþuIþûûþVþ-þuþu-ûû þuþ­þuþÆþuÉþu5Sþuþ4þO%þ²Âþ³ÃþlþþmþþnþþkþJþþåþæþ²ûþåþæþþå-þ²ûþåËþþåþæþ³ûþåþæþþå-þ³ûþåþ¸þ.þuþv\nþþuûû6ûþ oþ`þvþ(þûþÈþûþþûþþþþÝþþµþ*Çû\rûþ¢\rûþþ8Çþ?þmþþ°þuûû8ûþ¢þcþþmþ±þþÃþlþþþÎþ(#ûû þþ ,ûþ_þþ-þÎþ?æþ\'þÝþ?ûþ *þþþþGþûþ}þmþÆþÝþDûþ7þ¢þþ¥þGþû¥þmþþ»þ %ûû þDþþyþ Aþþ¬þþéþþ/þuþv\nþþ.þu±þOþvIþ /Gþ mþvþ0þu\nþ.ûû þuûûþ\rRþ/ûþÔþuþuûûþæþuþuûûþþ.ûû þuûûþ¢þuþ1þuþvþwþuþPþu þZþþÏþþûþ þûþUþûþtþþ®þwþvþuþþuûþþöþþ\rþþCþþûþþ Åþþûþ@þvþþúþþþ Ìþûþ þþþûþþ8þdþþþ\\þ3þþûþþyþ2þu`þjþu§þþ0þ4þuþ¼þ\nþþ.þþ»þ¹þ&þþ;þ3þþ?Ïþ3þuþv\nþ²þuûûþ\nþuûûìþvNûþ_þþþ ìþþåþuûûìþ²Oûþ [þ<þuûûìþ²0þ4þu-þuûûþNþuûûþ þ5þuþvþYþu þvèþuþPþv¾þ6%þchþíþþþÄûþäþ7þuþv\nþ[þuþ¼þvþ»þ*û¥[þvþÈþþCþêþþ61þþþ\'þ(þuþþûûþ9þ]þþûûþ¡þcþ©ÈþVþ%ûû gþþ¼þ5%ûû þgMþþ[þ8g\nþûûþ1þ7þûûþ\rÄ8þûûþóþþ;¾þ7þûûþ@þþûûþ\\þþ`ûûþþþµþ Sþ²ûûþ©þ²¤þ²Aûûþøþþ °þþ\n(þûûþ\x00þ\nþþûûþ\nþþûûþþûûþþþ<þ.1þÀþþ$þI7ûûþUþ<þ.þLþe8ûûþUþ:½ÑþSþþåþæþå ûþþþVþæÜþæûûþ×ûþ.þþ³þÀþåþþåþ(þæÜþæûûþÊûþ¯þæûûþoþæûûþ}þþæûûþ0þåKûûþþþåþ¦þþ4þgMþþþæÜþæûûþÊûþ¯þæûûþoþæûûþ}¿þæûûþy}þþ Öþéþ²þåþæþ<þ.þ)þþPþuþuþ-þuþûþuþòÑþÒþûþuþÔÑþÒþ(ûûþ>ÌþCþuþäH×þ9þuþvþ*þuþ þuoþv &þv þ:þv/ûþåþv}þu_þvþèþuoþvþ£þv_þvþJþ%ûû þvþvþvþvþ\rêþþU%ûû þv\nþcþ%ûû þv\nþvþv\'þþkþþOþþvI£þv°þþþ:þuþvþwþx\nþ}þwþþ ©þ¦þ þþ\'þþñþþ.þuÉþuûû8þvþ þw Cþ\\þ Dþ7þ þ9þ þ,þ?þ þþþcþþ¤þsþ þ Cþûþ þwþþ,ûû þ þþ.þþ.þuÉþ þ þ?þwþþþ þþÎþÞþþ«jþuûþbþþ&þ ûþHþþ\n]þGþwþmþwþ þþ.þuÉþ þwþ?þwþþþTþv ûþþwþ\ròþþ;þþv ûþ\rÓþx&þ /þþuûû8þvþþöþþ.þuÉþ þ þ?þþþþuûû8þvþm þuGþmûþ gþv/ûþ ðþþ.þuþÇþþ þ þ?þþþþwþ oþxþw þ þ(þuûû8þvþwþ;þuþ.1þþùþuþKþ*ûû þuþhþþ7þuþ\'þgMþþþþ»þ%ûû ûþ\nªþþþìþ%ûû ûDþLûþaþþ\'þ%ûû þuþþu\'þ%ûû þu\nþuþþuþyþ%ûû þu\nþ_&ûû þþPþ8þnþþu 5þþ<þuþv\nþ}þuþþ)þÞþþBþv²þþ&þ ûþHþþTþGþmþ þ;þ;þéþuþ>þuþ=þu\rþ=þ Öþ=Mþ=þu«þþþ´þuþþ=ûþþgþM­þ=5þ=þ?þuþv\nþ²þþu|þþþ³þ´\"Ïþµþ¶>þ>þ>þþQþ³Æþþ·þµþ>þþQþþþQþþ·þþþþþ\rþþþûþþþ\nVþ\"þþ\n¾­þþQþþþ\nsFþÇþ·%þþ³ûþuûû·þ²þÌþþ¬þyþþ\r¯þ³ûþuûû·þ²þ\n\"þþ#þþ³ûþuûû·þ²þJþþ³ûþuûû·þ²þÑþþþ¦þþtþþ³ûþuûû·þ²þJþþ³ûþuûû·þ²þJþþ³ûþuûû·þ²þÑþþþDþþ þþYþþ³ûþuûû·þ²þJþþ³ûþuûû·þ²þJþþ³ûþuûû·þ²þ\rbþoþ³ûþuûû·þ²þÑþþþDþþþoþþ¸þå\nþþuûûþ\nùþ²þåþ²*þåIþþ%þþþþþþþ·1þþþþþ\rþþ©þþ¥þþ·þ7þþ\r;þþþªþþ·fþðþûþþ¶ûþþéþþæþþ¸þþ¶\"þþûþþyþþ¬þûþþµûþþéþþyþûþþ´ûþþéþþKþûþþvûþþ àþ0þQþûþBûþ<ûþ\nÛþþ¢ûþ 4þþ¢ûþ ½þþ¢ûþTþJþ:tsûûþ Ôþ:tsûûþ \nþþåþ ûþqþåþþåþ ûþÂþå0þRþuûþ Xþ²þuûûþøþ³þuûûþ¬þ´þuûûþ þµþuûûþ}þ¶þuûûþ Ûþ·þuûûþ\\þuûûþ Èþuûûþþuûûþþþ\nTþ¸þeþuþ 3þu÷þþÂûþ\nþ³þ/þuûûþ/þþMþ=Nþuûþ ¸þ,çþJþþåÐþå&þ¸$ÑþUþuûûþÀÒþuûûþ gûþ=ûþ aþþèþûûþ³þþûûþãþJþ¹þåþæþçþèþéþê\nþ÷þJþèþèþþèðþ÷ÑÓþºþåþæþ÷ÑÔþ»þåþæþ÷ÑÕþ¼þåþæþ÷ÑÖþ½þåþæþ÷Ñ×þ¾þåþæþ¿ûû þ÷þåþæþÀûû þ÷þåþæ_þæ/þ\"þêþþuûûþ Vþ÷ÑØ þþ·²þ÷ÑÙ &þ÷ÑÙþ=þèþ þ÷Ðûûþ÷þþtþþ÷Ñþ>þþþþ÷ÑþSþxþþûþþzþûþþ þûþþAþûþûþþ«þûþûþþ Tþòþûþûþþ Îþxþþûþþwþþþûþ3þþþìþ/²þé &þéþÕþ÷þÃþåþþ ²þç ûþ\rþçþþ#þ<þ¹ûû þ÷þåþæþçþèþé#þºþåþæþ*þæ/þ³þÁþ³þåþæþèþÂþåþ³þ1þþþ»þåþæþ¶þ*þæ/þ¶ûûþþåþæþèþ¶ûûþþåþ1þþ[þ¼þåþæþµ÷þþÃfþæ/þµûþNþåþæþ;þµûþNþåþ=þþ[þ½þåþæþ´þ*þæ/þ´ûûþþåþæþèþ´ûûþþåþ1þþ[þ¾þåþæ`3þ\x00þþÄûþ2ûþÃþûûþvþûûÊûþrûþWþæ/þûû8þåþæþûûþ ;þå]þûûþ ãþå5þûû6þåþÌþþþ¿þåþæ\nþ÷þ}þþ÷Ò(þþæþûûþþ]þûûþþþÌþÒþþþûûþêûþ\rSþþþûûþêûþ|þåþæ¡þþÇþþþ Òþþþ Òþþþ Òþþþ þþþþûûþêûþoþå¡þþÇþþþ þ ûûþ Õþ÷ÑØþ ûûþBûþ¯ûþ 0þ÷ÑØþfþþþ þ\nþÀþåþæ\nþ÷þðþ·\nþøþþ·ûûþ ûþ\rþþûûþ¨þþûûþ +þ(þæ/þûûþbþrþûûþbþþíþÒþþÒþþ\nþþûûþGûþþþûûþ÷ûþRûþWþþ\nþþûûþGûþËþûûþÐûþªûþ§þþûûþ=ûþºûþ ÙþþûûþVûþ6þþþ âþåþYþæþïþûûþ(þþ\nþþûûþGûþÍþûûþÐûþªûþlþ÷ÑÙþjþþûûþ=ûþxþþûûþVûþ6þþþoþåþûûþbþMþûûþ\nþþþûûþ\nbþ÷ÑÙrþ÷ÑÙþûûþ§ûþVþÁþåþæþçþçþuûûþ­þç&ûû þåûíþæûþ i&ûû þåþæûþiþ&ûû þåûíþæûþhþþ(þþtþ&ûû þåþæûþ\nþ&ûû þåûþ\nþþJþ,ûû þåÀþþþðþþ,ûû þåþþØþþ4ûíþæûsþçrþþûíþæûsþçaþþ;þåûíþæûsþç0þÂþåþæþæ/ûþþþåûþaþþþ+ûû þæ!ûþØþþ\rþ)þþþûþþö#ûû þþHþ-ûû þþ­þþ\r¥&ûû þþþÐþuûûþ e-ûû þþ|þþ (þÃ:(ûû þuûûþxûþ!ûþoþÄþåþæþç\nþ(þæ/þ²ûûÔþæAþþ²ûûÔþæ]þþ²ûûYþå,þûûÊûþ2ûþþûûÊûþ$ûþ\r!þæþûûþ\nMþæ_þçþ²ûû¨û¬þXþþ<þ³þÁþ³ûþ\nþuûûþEþuûûþ/þ³þþåþæþçþèþ¹ûûþ5þåþæþçþèþþåþæþ¹ûûþ5þåþæ#þSþf.þ$/þ$+þ tþ°ÚþJþþåþå ûþ\nþå×þå\'þ,,ûû{þå9-*þåþnþþ.Úþþûûþ®þ%þþ,þ*þûþ0þþ |þþþ7þþ ßþþþNþûþþÚþþûûþäþþþþ\"\rûûþÅ-þÏþþ -þ ÞÚþþþòþþþ\nDþþDþ\rþþ þþûþêþûþDtþþþûþDtþþDþûþDtþþÀþûþD þþ©þþþå\nþþþþþþþþþåûûþ\niþ*þþþûþùþþþþþþþþþAþþþ~þþþæþþþ\\þ©þþ\neþþûþþõþûþþ\n,þûþþþûþþ\rþûþþþþçþþ=þEþþAþþ\ráþþbþEþþ%þþ\n¸þþ%þLþþþþºþºþyþþìþEþþ%þþþþ%þþþþ%þLþþàþþºþºþMþEþþþþûþþtû\rûþ¢þþ²þþþþþEþþ!þþ jþþþþMþþçþ¥þþzþþÔþþþþzþþþþ\rÑþþzþþ»þþ\rþþzþþÇþþ PþþøþT<þLþþ²þCþ @þ³äþ Nûþ_þNûþ{þNûþBþNûþþNûþ\nþNûþâþNûþ:þNûþÒþÇþ´þå\nþ÷þåþøþùþú>þÂþþÛþþÜþþÝþþÞþþßþþàþþáþþâþþãþþäþþåþþæþIþJþþ Lþùþiþ÷.þøþ:þù.þøþ%þþÃÜþ\\þþúûþø3þøEþøþiþ÷aþþ%þþÃÜþ\\þùEþùþ±þ÷þNþ÷þþúûþùþ1þþþvÛþðÝÁþúûþùþþùEþùþiþ÷þþ=þù\\þøþ÷þNþ÷þ<þøþùþhþ:þøþ:þùþþþYþþiþ÷þþþYþþ±þ÷þNþ÷þþ-þúûþþ¸þµþåþæþçµþþ\rþæ¼þþåûþþç0þ¶þåþæþå.&þæ.þ ¡þåþ»þæþ Áþåþ\n©þæþ\rþ·þåþæ-\rþwþåþkþæþÓþåþkþæþÝþåþTþæþKþåþTþæþHþ¸þåþæ-\rþIþåþkþæþ\rm\rþIþåþTþæþ þ¹þåþæ\nþEþåþòþæþHþåþþæþ\rþwþåþòþåþÝþåþþåþ{\rþwþæþòþæþÝþæþþæþê\rþIþþAþþX\rûûþbþþº%þÂþ÷>þøþùþúþ\x00>þ>þUþçþþèþþéþþêþþëþþìþþíþþîþIþJþþ\nþþøþúþùþUþUþ÷Uþ\x00ãþþâþ7þãþþäþàþ7þâþ\\þ÷ûþøþ¸þæþRþþøuþ\"þæþþ¼þ¶þæþRþþþ\x00ûþúþ·þæþRþþ\x00ûþúþ\n°þù*þ\x00ûþú3þúþ®þþæþþ\"þ#þþ\'þùþúËþþ\nþþôþ>þþµþþþxþþ\rþú¼þ\nþþ\x00ûþ@þþþþ4þþ\nçþþ þþ\nìþþ þþ £þþîþþVþþ&þþÃþþ\rþ¼þþûþþòþþØþþþ\nþþ¢þþþÂþþßþø\rþ-þqþþþ\rþøþóþ>þþþþþUþþþ\nþ\rþøþ þþþ÷ûþþþþ÷ûþ@þþ 9þþÉþþ\rþþ×þþþþ\\þ(PþþþþûþþñþþdþûþþÂþûþþþþÜþþÞþþþ ½þþ\rþþgþ4þþûþþ\nþûþ@PþþþþûþþñþþdþûþþÂþûþþþ1þ xþþûþ þ}þþWþþNþþþþþrþþMþ\rþ]þþXþþþ\nþþ:þþþþþþ£þßþþ\råþ\rþþ­þþþ\rþþþþþûþ3þþûþþ\rBþ¶þþAþþ\rþþbþþ zþEþþTþþþþkþþ/þþþ9þþ pþþþ\x00þþ{þþ 2þþ|þþþþKþþTþþ\r¤þþúþþÀþ\"þ_þþþþlþûûþ\r@þþþþ\rþ)þþ*þûþþ×þþÈþòþþþþþ\rþ)þþ\rþIþûþþ|þþ*þoþþ×þþÈþþ4þEþÈþþîþþ(þþ 0þþòþþ\n\x00þþ)þþþ¬þþ\nþþ&þþ:þþþßþþïþµþ?þ\rþþþ4þþûþþ-þþûþþ`þþ(þ¶þþþþþþ<þþ\nþ7þþþ)þþMþþþ :þþ?þ7þþþþþ ùþþþþ\nþþþþþþþþÊþþ ]þþþþþþþßþþ ùþþþþkþþ¡þþzþþþÓþûþþ þûþþ õþûþþ þûþþBþ7þþ¹þþþ*þþ\rþ]þþ,þþMþþþ\\þþ\nxþþBûþ çþþþþþ\nþþ|þ7þÇþ ³þàþOþûûbþ¿þ¶þæþâþ^þAþþÄþ0þ»%þÂþ÷>þøþùþçþþèþþïþþðþIþJþþþøþùþþþâþ7þãþþäþ§þþæþþûûbþÃ&þûûbþÄþ÷ûþøþþøþÜþûûbþÃþùþ þ:þùþþ\nþþ\n´þþHþþÙþþ>þþþßþøþsþþ\rþø¼þ\nþþ÷ûþ@þûûbþÃþþÞþûþþûûþZþûûþ °þþZþþþþþ\rþ¼þþûþþuþþþ/þþþ\nþþþ þþ\rþø¼þþ\nþþ÷ûþ@þûûbþÄ&þûûbþÃþûûþ yþûûþßþþRþþ÷ûþþ1þ0þ%þÂþ÷þº[þøþ»[þùþúþþ ÁþIþJþþþþ\nþþUþ.þȵþxþ÷þ÷ûûþ\'þ§þþ÷ûþ¢þÌþþþ/þûþþþùþíþÌáþ-þxþøþøûûþ\'þ§þþøûþ¢þÍþ/þûþþþúþíþÍáþþþþpþ¼þþpþþå\nþÂþ÷þøþ´þåRþùþ´þåþñþþòþþóþþôþIþJþþþþþþÁþ.þÈþøßþþ÷þdþùßþùô×þþþþ.-þaþþþ-þþ²þ%þlþþþþþþþþþþ\r-þþþÑþþþþ þ!þÑþ\"þøà[þ#þùàfþ\"þ´þ$þøâþ$7þøãþ$þøäþ$§þ%þøæþ$Rþ&þ%èþ*þ&þþ*þ&þþ\rþ]þ%éþþ\rþ]þ%êþþ%ë7\nþ\'þ%ë(þ\'þ°þ*þ\'þþþ\'þuþþþaþþóþÈþøàþþþóþÈþøàþþ*þ%ìþEþÈþþ\nÑþ\rþ]þ%íþþ%î7þ.þÑþþ%îrþþþ%îþ8þ#þ´þ$þùâþ$7þùãþ$þùäþ$§þ(þùæþ$þ*þ(èþ *þ(ï(þ(ð7þ! þÑþ!þ(ðrþ!þ!þ(ðþ8þ.þÑþþÃþ!.þÑþ!þþ$þpUþpûþ$ þ\rF\rûûþøþVþpûþ$ þ\rFþþpûþ$ þ\rFþ÷þpûþ$ þ\rFþþpûþ$ þþpûþ$ þ\rFþþpûþ$ þ\rFþþpûþ$ þ\rFþþpûþ$ þ\rFþþpûþ$ þ\rFþþpûþ$ þþpûþ$ þ\rFþþpûþ$ þ\rFþ þpûþ$ þ!þpûû;ûþûþ¼þpþ\rþ¼þ1þ½þþ-þ¾þ¿þ<þÀþ0þÁþÍþÂþþÃþÆþÄþ/þÅþ0þÆþÂþÇþøþÈþÉøþÊþËøþþãþþÅþÌþ´þRþÍþ´þ\'þÎ>þÏþÐQþqþrûþ*þslþÑþ JþÒþåþæþçþ ûþùþåþ¦þæûûþ Õþæûûþ bûþNþçþ¢ûþÝþæûûþ !ûþáþæûûþ¶ûþtþæûûþ`þÓþåþæþçþåþ\r¢þæqþÔþÕþ<þÖþ0þ×þèþØþÙþÚþÛQ[þÜJþÝþå-QeþÛþÞþåþqþåûûþmþ¾ÜþÁÜþÂÜþ¿ÜþÀþLþßþåþæ\nþþÒþåþæþÝþæûûþ¬þ²þáþþVþÞþàþÜ.þÈþàþÈ,þÍßþþÜþÉþTþÜ.þÉþàþÉþ]þÚþ2þÔþ:þûûbþ¾þÌßþLþûûbþ¿þàþÈþÇþþûûþMþÊþÚþÖrþÙþÚþ×®þûûbþÂþØþþÚþÕþåþÕþ:þûûbþÁ`þ¶þØþAþàþÈ,þÚþÔþåþÖþ:þûûbþÀþÚþÔyþûûbþ¿þûûþMþËþÚþ×þÙþ èþ×mþûûbþ¾GþÙþ !þÙßþÙþîþÚþÔþ%þÜþÈ0þàþåþæþç\nþþBûþûþ -þþå.þÈGþþÌàþKþþÍàfþdþþ¼þcþåþæþçþ½ñþåþþ#þáþå\nþUþ\"þåûûþ þåûûþmþ¾ÜþÁÜþÂmþ\"þåþ!þ\"þåþþ¿ÜþÀmþ\"þåþ!þ\"þåþùþ\"þåûûþ þÃÜþÄmþ\"þåûûþPþ\"þåûûþ ÆþÎ\"þþ 7þÎþ ïQeþÐþ\rÀþãþmûûþþJþâ%þBþþþþþ-þBþCþYþþ\rþ)þþVþûþþûþþ\r)þþûþþÉþþ¸ûþJÈþþþ3þgûûþeþûûþûþ ·ûûþ\r\'þþ /þ:\rûûþ½þþmHûþ þ:ûûþÍûûþ·ûûþ\nWþã%þþ\nþÏþÏþâÁþsuþ\"þÏþ\"þsþ\"þ³þþûû{þÎþÎUþÐQþäþþ äþäþå\nþþìûûþ °þûûþPûûþTþûûþûþ kþþÞþûûþ ûþ\nÕþrSþûûþwþå#þ:þpþþåþßþ¾þåþþåþßþ¿þåþþåþßþÀþåþþåþßþÁþåþþåþßþÂþåþþåþßþÃþåþþåþßþÄþåþþåþßþÅþåþþåþ²þáÑþÒþÆþFþÝþåûûþ ÐþãþpþUþuþu^þuþ~þuVZ\\þ²þuWþìþv(þ\nþþ!þþ\rþþþ iTþûþþ¥þlþþ!þþ\rþþþûþRþþVþu\nþlþþ!þþ\rþþþûþSþþWþu\nþwûþu\\þWþ¹þþ¤þwwûþu\\þMþ\"þuþXþu\nþwûþu\\þWþ¹þþS^þ8^Uþuþ Tþu,þ\"þuþYþuþvTþuþZþun\"þuþ[þu\nþyûþu\\þWþþwyûþu\\þMþ\"þuþ\\þu\nþyûþu\\þWþþ\nXþu,þ\"þuþ]þuþuiþ\\^þ£mþ£]µþþwþþ³ûþ¥þþªûþ Gwûûþ\'þ§þþug1þwûþþ-þþ!þþ\rþþþûþ¬þþ »þþþõn)þ4þnûþ3þZþuþÎ^µþuhÁþuj×þ^þu[aþuþubûþÛþubZoþ_þu[Rþuþ`þu[Sþuþaþu\nþqþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþuÏþbþu\nþqþþ!þþ\rþþ4þþûþpþuþþûþþ0þcþu\nþqþþ!þþ\rþþþûþRþu#þdþu\nþqþþ!þþ\rþþþûþSþu#þeþuþubZMþubû¶þfþuþubû¦þrþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûÌþgþu\nþrþþ!þþ\rþþ4þþûþpþuþþûþþ0þhþu\nþrþþ!þþ\rþþþûþRþu#þiþu\nþrþþ!þþ\rþþþûþSþu#þjþuþubûþ æþubûÄ[aþuþubûþlaþuþkþu\nþ[pþuþ2[þþlpþuþ2lþþlþu[Rþu9lRþuþmþuþubûþ¢þsþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubû¶þnþu\nþsþþ!þþ\rþþ4þþûþpþuþþûþþ0þoþu\nþsþþ!þþ\rþþþûþRþu#þpþu\nþsþþ!þþ\rþþþûþSþu#þqþuþubþ¾þubZt9uaþuþrþu\nþupþuþ2uþþsþuuRþuþtþuuSþuþuþuþubûþ\\\\aþu,þubûþUþvþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûþ\x00þubû¦þlþþ!þþ\rþþþûþaþu,þubûÌþvþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þwþuv\\TZ\\,þµûû Rûûþ5þuþxþu\nþlþþ!þþ\rþþþûþaþu#þyþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þzþuþubþ*þsþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubû¶þ{þu\nþsþþ!þþ\rþþ4þþûþpþuþþûþþ0þ|þu\nþsþþ!þþ\rþþþûþRþu#þ}þu\nþsþþ!þþ\rþþþûþSþu#þ~þuþubþH[aþuþþu\nþ[pþuþ2[þþ þu[Rþuþ¡þu[Sþuþ¢þuþubþ¢þubû¦þlþþ!þþ\rþþþûþaþu,þubûþ·þubûþµþubûÄ\\aþuþubûþ\x00þubû¦þ{þþ!þþ\rþþþûþaþu,þubûþ·þubûþ¸þubû¦þ|þþ!þþ\rþþþûþaþu,þubûÌþ£þu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþqþ{þþ!þþ\rþþ4þþûþpþuþþûþþqþ|þþ!þþ\rþþ4þþûþpþuþþûþþ0þ¤þu\nþlþþ!þþ\rþþþûþRþuù\\Rþu\'þ{þþ!þþ\rþþþûþRþucþ|þþ!þþ\rþþþûþRþu#þ¥þu\nþlþþ!þþ\rþþþûþSþuù\\Sþu\'þ{þþ!þþ\rþþþûþSþucþ|þþ!þþ\rþþþûþSþu#þ¦þuþubZtþubûþMaþuþ§þu\nþMpþuþ2Mþþ¨þuMRþuþ©þuMSþuþªþuÒþ«þuþubþ¢þubû¦þlþþ!þþ\rþþþûþaþu,þubûþ·þubûþµþubûÄ\\aþuþubûþ\x00þubû¦þ{þþ!þþ\rþþþûþaþu,þubûÌþ¬þu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþqþ{þþ!þþ\rþþ4þþûþpþuþþûþþ0þ­þu\nþlþþ!þþ\rþþþûþRþuù\\Rþu\'þ{þþ!þþ\rþþþûþRþu#þ®þu\nþlþþ!þþ\rþþþûþSþuù\\Sþu\'þ{þþ!þþ\rþþþûþSþu#þ¯þukaþuþubûþlaþuþ°þu\nþlpþuþ2lþþ±þuþubûþ\"kkaþu,þubû¶þ²þuþubûþñ[aþuþubûþ·þlþþ!þþ\rþþþûþaþu#þ³þu\nþ[pþuþ2[þþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þ´þu[Rþu\'þlþþ!þþ\rþþþûþRþu#þµþu[Sþu\'þlþþ!þþ\rþþþûþSþu#þ¶þu[Rþuþ·þu[Sþuþ¸þuþubûþ $MMaþu,þubû¶þ¹þuvM\nþMpþuþ2Mþ0þºþuvMMRþu#þ»þuvMMSþu#þ¼þu\\aþuþubûþ ¡Maþuþ½þu\nþMpþuþ2Mþþ¾þuþubþ«þubûÄ+aþuþubþ }aþuþubûþlaþuþ¿þu\nþ+pþuþ2+þþ}pþuþ2}þþlpþuþ2lþþÀþu+Rþu9}Rþu9lRþuþÁþu+Sþu9}Sþu9lSþuþÂþuþubZMþÃþuþubZMþÄþuþubûþ\\\\aþu,þubûþUþvþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûþ\x00þubû¦þlþþ!þþ\rþþþûþaþu,þubûÌþÅþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þÆþuþubûþÇþubû¶þÇþuþubû¦þlþþ!þþ\rþþþûþaþu,þubûÌþÈþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þÉþu\nþlþþ!þþ\rþþþûþRþu#þÊþu\nþlþþ!þþ\rþþþûþSþu#þËþuþubûþ vMMaþu,þubû¶þÌþuvM\nþMpþuþ2Mþ0þÍþuvMMRþu#þÎþuvMMSþu#þÏþuþubZMþÐþu[aþuþubûþUþ_þþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûþ£þÑþu[Rþu\'þ_þþ!þþ\rþþþûþRþu#þÒþuþubþH[aþuþubûþUþ_þþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûþ£þÓþu[Rþu\'þ_þþ!þþ\rþþþûþRþu#þÔþu[Sþu\'þ_þþ!þþ\rþþþûþSþu#þÕþuþubû¶þÖþuþubûþ \"þubûÄ[aþuþubûþ\x00þubû¦þlþþ!þþ\rþþþûþaþu,þubûÌþ×þu\nþ[pþuþ2[þþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þØþu[Rþu\'þlþþ!þþ\rþþþûþRþu#þÙþu[Sþu\'þlþþ!þþ\rþþþûþSþu#þÚþuþubûþYþubûÄaþuþubûþlaþuþÛþu\nþpþuþ2þþlpþuþ2lþþÜþuRþu9lRþuþÝþuSþu9lSþuþÞþu[aþuþubû¶þßþu\nþ[pþuþ2[þþàþu[Rþuþáþu[Sþuþâþuþubþ¢þubû¦þlþþ!þþ\rþþþûþaþu,þubûþ·þubûþ¸þubû¦þ|þþ!þþ\rþþþûþaþu,þubûÌþãþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþqþ|þþ!þþ\rþþ4þþûþpþuþþûþþ0þäþu\nþlþþ!þþ\rþþþûþRþucþ|þþ!þþ\rþþþûþRþu#þåþu\nþlþþ!þþ\rþþþûþSþucþ|þþ!þþ\rþþþûþSþu#þæþuaþuþubûþÞ aþuþubûþ¡aþuþçþu\nþpþuþ2þþ pþuþ2 þþ¡pþuþ2¡þþèþuRþu9 Rþu9¡RþuþéþuSþu9 Sþu9¡Sþuþêþuþubþ«þubûþI++aþu,þubûþòaþu,þubûþò¢¢aþu,þubûþlaþuþëþuv+\nþ+pþuþ2+þþ¤\nþpþuþ2þþ¤¢\nþ¢pþuþ2¢þqþlpþuþ2lþþìþuv++RþuþRþuþ¢¢RþuùlRþuþíþuv++SþuþSþuþ¢¢SþuùlSþuþîþuþubûþUþvþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûþ\x00þubû¦þlþþ!þþ\rþþþûþaþu,þubûÌþïþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þðþu£aþuþubZc9¤aþuþñþu£Rþu9¤Rþuþòþu£Sþu9¤Sþuþóþuþubþ*þsþþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþuÏþôþu\nþsþþ!þþ\rþþ4þþûþpþuþþûþþ0þõþu\nþsþþ!þþ\rþþþûþRþu#þöþu\nþsþþ!þþ\rþþþûþSþu#þ÷þuþubþvþubûÄaþuþubûþlaþuþøþu\nþpþuþ2þþlpþuþ2lþþùþuRþu9lRþuþúþuSþu9lSþuþ\x00þu£aþuþubZc9¤aþuþþu\nþ£pþuþ2£þþ¤pþuþ2¤þþþu£Rþu9¤Rþuþþu£Sþu9¤Sþuþþuþubûþõþubûþ·þlþþ!þþ\rþþþûþaþu#þþu\nþlþþ!þþ\rþþ4þþûþpþuþþûþþ0þþu\nþlþþ!þþ\rþþþûþRþu#þþu\nþlþþ!þþ\rþþþûþSþu#þþuþubZMþ þuþubþvþubûÄaþuþubûþlaþuþubûþÈ¡aþuþ\nþu\nþpþuþ2þþlpþuþ2lþþ¡pþuþ2¡þþ þuRþu9lRþu9¡Rþuþ þuSþu9lSþu9¡Sþuþ\rþuþubþ ÉþubZt9uaþuþþu\nþupþuþ2uþþþuuRþuþþuuSþuþþuþubûÄ[aþuþubûþ£þþu\nþ[pþuþ2[þþþu[Rþuþþu[Sþuþþuþubûþ Wkkaþu,þubû¶þþu[aþuþubûþ=oaþuþubûþþþu[Rþu9oRþuþþu[Sþu9oSþuþþu[Rþuþþu[Sþuþþu\\aþuþþuÒþþuþubþ¡laþuþubûþYþubûÄaþuþubûþ\x00þubû¶þþu\nþlpþuþ2lþþpþuþ2þþþulRþu9Rþuþ þulSþu9Sþuþ!þuþubûþ þ¥þþ~þdþ½aþu«þ?þ\rþþþubû}þûþaþupþubûþþ\"þu\nþ¥þþ!þþ\rþþ4þþûþpþuþþûþþ0þ#þu\nþ¥þþ!þþ\rþþþûþRþu#þ$þu\nþ¥þþ!þþ\rþþþûþSþu#þ%þu\nþuþþþAþÁþIþuþþ&:þ&þ\':ûûYûþaþ(þt3 ûûþ fþ)þuþvþwþu?þvþþwþ>ûûëûþuûþ9þuþwþeþvþwþeþvþwþÁþþ½þuþvþÊþwþ*þuþv-þþ¥þ+:þþÉþþ Ìþ,:þþ ©þ-:þþ -þ.:þþþþþþ {þ/þu\nþuþþþAþÝþIþuþþ0:ûûþþ1:ûûYûþßþ2þt3 ûûþdþ3þuþvþwþu?þvþþwþ>ûûëûþuûþ9þuþwþeþvþwþeþvþwþÁþþþuIþuþvþÊþwþ4þuþvþuþÄþvþAþþv¯þuþ5:þþÉþþ\nÄþ6:þþ ùþ7:þþ ìþ8þ=þþþþþþãþ9%þûûþ#ûþãþQþþþQþÌþQþ§þûþQNû6ûþÍûþæþûþQNûþû´þûþQþöþ:gûûþñþtûûþ\r\\ûûþÛþþ\n3CHûþ\r°CHûþ6CHûþ^ûþ*CHûþ\n#CHûþ+ûþCHûþ5þþåþæþçþþåþ<þåþÚþæþæþÕþçþçþ Íþtþåþæþçpûþ(þ\'þ)þ*þ\rþþ+þ,þuþvþwþþþþþþþþþþþþþþþþ þ!þ²þ³þ´þµþ¶þ·.þ§Pþ®Ðþ°Þþ{ûþ±äþ|þ}.þ~1þ5þ¯Ùþ¬Íþ­Ïþª`þ«Éþ¦Iþ©\\þ¨Zþ£Aþ¥Fþ¤Cþ 7þ¢;þ¡9þ¡|ÓIþ_þ¯?oþ³þ¯ÙþYËþ!±þ!}-ó¢þ#þÇþ>þ\\Z§ç.Øþ\x00ó>þîþ þ4²þãþ þ_}þ5}Áþ_þMþy}þBOþ!þU[þã}þ }þ!äúþxþþ þ_þ0þkþRþÙþ_þ)ÓþßeÑ~þ­þ_/þ[þùþ_þgþ_þÌþøþgþ_þÌþnþgþ_þÌþ!þ>þ }þ}4\\jþþ$òþ^}ÐWþ_þòL}þ!þ¿þmÎ}þ2+þ_þ=}þxþ_þú}4þuþ_þñþ%þd}þþ@}þVþ_;v}þZ}þ£þj}þ$þ¥}-kþÐjþç}þ¸þaBjþç}Ïþ}þ þJþì}þ*þÏjå÷$jþaþþ\rjþ·þ°þÎjþ½þÔðjþW{kþ-þ_þ$þ±þæþ]j°©jþþj6þlºjÜþ}Âjþèjþ(ù¬jþ¦þtþ/þ_¥w}þGë}4iaF}þTlg¨þ3j¡þ$á^þ_þsL}þTþ/}þÄþ_þ#Û}þ\x00þSþ_þwÌ}þ!þ!¯}4ÚP³þrþ, þµþ©þâþèþKþAþÒþvþÕê=þ!þ¾þBþ:(WjñþSîWj­À`þIþpþÍþ ÝþEÖþð\"þþ¹\rþ\rþôþ\\bþåþ_þ¶¼þÆþhjþÝþ(þÞþÑjþNþ¨éþÀþ_q\'âþ_þá_jþb<þSjUÆþ)þ> )þKþÊþiþ;þÓþ2jþCþtþVþ_þCÑXþ7þþïþ+þªjþàþÅþ?þªjþàþþþfþ_þþ!þ¡}Dþ_ïm}QkþL´Rþ×þ!}4þDþ\nôþ@Eþ>þHþþ!þ$Dþ_þþ.¤@þ_¶}þ&þ_]þJ}Dþ_1õ}þTþºþ\'} þ\'}þþ>þ83}þ^þíÕjþ?þ$}þéþZþ0}}þäþêþPþ:þ*þ6þbþ þöþ§þ÷þ>þ»þOþþNþPþÖþ\'þôVþzþþ¸þFþEþ þ®}þ=þë}þÁ}þ-h }þjþþ}þj¹þ%}þþ_Þ}Ò%,þ1þHþ>þIþþóþXþ}þ`þ}þ`A#jpþæþ*þ>Tþ_f}þ!þj9}7}þþ_þo}þ!þþ_þÛþOþ!}yþ_&}þGþ¼Ñþ.MGþq}øÑþþþ7þ}4þ,àþgþ]jþÈKþCj8¿2jþ»sjöþÉjþ\"þ$£þ^}Åþ8}Ã}ìþÜ}þ}þjþ!}þþ´þ~}\nþ|}®È^þ>þ¢þ þ\nªþõ^þ\x00þMþ jþtþQþ_þ9ë}4þþ>þeþ¤Y}!J}þ;}þ!þr}þAþ¬þ}íþþUþYdþ>þþ9Ê5þ<þD}þFþ`Íþ6H}þ þþ_n¾}ûþ[þRþ3þ\"jþ$0}c}µþ{jþÓþ!þcÇuþþ>ÔþWþ$·þËþþ4þjþþ1þQ¦þ«:ßþX½þ²}þ5þ_×}þÃ}zþ+þØþÚþ_þ&}ûþcþäþèþ\rþ ¬þ\rþþ#þ¨Qeþ\" ûû¨û¬þ² þ\rþ¹ûûþ³Tþ)þ(þÀþþþiþþ- þÉ\"5þ uþ²ç þþþ\reþþ\r+ þûþ dþþþÌþþ § þûþ þ\rFþ9 þþþ\\þVþþ\rþ öþuz þûþ Éþ^þþ\rþ)þþ\"þþ uþûþþnþÎ þ)þi²þiþ þiþÐþ\rþ.þ\rþÒþ)ûûþ2Tþ)þ(þÀþþwþBþuûûþ\ryþuûûþWþuûûþ`Cþþþþ~þ\rþÕþQþ\rþ h\rþ)ûûþVûûþûþ NûþEþFSþþ\nßþþ? þûþ þ\rFþþ)£3&3þ! þ)þ\rWûþ~þfCþdþuCQþÉþ\rPûþ þþþpþûþ þþþÐþþþ þûþ þþþvþÉþ\rPûþoþþþpþûþ þþþ>þþþ þûþ þþþ ±þ=þþ\rþ3 þûþ þ\rþáþ& Nûþïþ%Sþ)£þbþgþ)3þ(þ hþ\"þûûþh NûÚþ¯%^þþ\rþuûûþ¡þþþuûûþAþ3þ\"þûûþSþûûþ þûûþ\rJþûûþ\n÷ þ)þûûbûþþ\"þþAþþ\rþì\'Qþ2ûûjþuþ!ûþÆþu/ûþ\nÚþûûÕþþþv7þu/þvþ°þfþ)þ=þþþþþþ7þþ¼ þûþ dþÐÎÏþ&þäþèþaUþ)þþtþþ Ê þ\rþ¹ûûþhþ)þ² þ)£ þþþþ)þþoþ)þþF¡Qþûûþ-ûûþ\r=þûûþ\rö!ûþöûÕþûûþ Vûûþ\r©ûûþ{þþLûþôûûþ¤ûþ­þûûþ ûþ ûþ &þûûþ¨þþûûþbþyûûþ\n+ûûþûþûûþ\rþþ\nÔûûþ&ûûþ{ûþaûþþþ¹þþþ ?ûûþÌûûþjûûþeþþ7þþ\rïþþÁþ7þþÒCþþ)þaþ\\þÒþþfþ²þ JþûûþXûûþàûûþfþ³!ûþÒþþçþÊþ\rPûþ2þþ5þÓþQf\rþIþ\\þþ¢þþ\rPûþ>þ\rPûþ\n±þ\rnûþ2Èþûûþqþûûþûþ ­þûûþûþ:þ´þþþþ´ûûþþ«þ´ûûþ*þ´ûûþ$þ¬þ­þµþMþðþ |þðgþ´ûûþçþ+ûû þ´ûûþ?þûûþþ_þµþõþ¶þ·AþþËþµþÊþþ&ûû þûþ Óþþ,þþBþþ\nþå\nþþ³ûûþþåRþþGþþ eþþþûûî!ûþÏûþîþ&þ²ûþþ#&ûû þåûþwþ·þ\rþºþþþ\rPûþòþ·þ/Èþ·àþ·þpþ\rnûþcÈþ·þCþ·þmþ&þþþ\rnûþcÈþ·þ`&ûû þåûþ\nBþ¶þ\rþºþþþ\rPûþ Éþ¶þ/Èþ¶àþ¶þpþ\rnûþLÈþ¶þCþ¶þmþ&þþþ\rnûþLÈþ¶þ\nðþ=þ(þ [Cþþ6þþ 8 NûÚþ)SþZQþ³Uþûþ `þûþÅþþ²ûûþ\\þ²ûûþ\nºþ²ûûþÔþþûûþ Õþ²ûûþ Hþ²ûûþÔþþ²ûûþ Ãþûûþ cþûûþ\rMþþ²ûûþ!þþ²ûûþÚþ²ûûþßþ²ûûþ¼þþþ²ûûþþþþ²ûûþÚþ²ûûþ \'þ²ûûþ¼þþþ²ûûþþþ²ûûþ¼þþþ²ûûþ¼þþþ²ûûþ£þþ²ûûþ¼þþûûþ¶þ²ûûþ ÙþûþTþûûþ\rþ²ûûþ þûþZþ²ûûþ éþûûþÈþ²ûûþþûûþ®þûûþ þ²ûûþ©þ²ûûþ öþûûþ0þ²ûûþ@þ²ûûþÉþûûþþ²ûûþ Ùþ³\"þ²ûûþ Âûþ¡þþyþþóþ²þ²ûûþ¯þBþ²ûûþ ¿þ²ûûþÜþBþ²ûûþ:þ²ûûþlþ²ûûþ\n½þ²ûûþRþ²ûûþ eþ²ûûþLþþ\rþ)þþ Òþþ\rþ)þþþ²ûûþ\n|þûþ¡þûþþ&þ³\"þûûþ þûûþ:þûûþ Ûþ=ÑþÖþþ)þþ^ þþÈþþ)þ7 þ)3.&3þ!þûþ þ NûÚþ¢þ)þþþCþ^þ?þ\rþûûþ,ûþ\rxþþ\"þûûþþþ5þ\rnûþ _þþ)ûûþ\x00þ\"þuûûþYþuûûþ¾þuþ,þuþùþ)þþ)þþxþþ×Tþ)þ(þeþþ \rþûþ þ\rF\rûûþøþ@VKþûûþlþPþ&ûû ûûþ¶þ*þ<þþûûþÚþûûþ ûûþ{þ+ûþ\nþûûþ ¹þþ3²ûûþûûëûþõþ\rþûþ\nÅþþ ªþþØûûþCûþÈþ=þ)þ\rþþ)þþûûþGþûûþûþÑþ0ñ þ)£þþv/þ\rþCþþTþ)þ(þ,Tþ)þ(þ¦þþûþu3þ\nuþ7þBûþqûþ)ûþ Çûþ¾ûþ6ûþ¸ûþËûþ\x00ûþ Âûþ°ûþ\nÀûþÑûþ ê þ\rþ¹ûûþÖQþÉþþþ þûþ þþþÇþ\rnûþªþ=þþÊþ þ)þûûbûþd þûþ þ\rFþ$þ\rþ^þxÙþûþ \\þ\rþ5þ~ þþ³þûûþcûþy þ)þ\rþ¾þþuþ<þ²U þ)þ\rWûþ Uþ)3þ!þwþþûûþ]þ)ûûþäþ³þþv þ²ûûäûþJþþþuûûþjþ\rþ þ\rûûþ0þBþðþ\rþaþ¸ûþyTþ)þ(þe þ)ûûþ[ûûþÌþ!ûþ, þ)þ47&þ97þ)ûûþ íûûþ ÚûûþËþþÃþþþþþþûûþc Cþ\rþ ñþw\\þuþ \nþv\\þuVþ(þ\rþ\rPûþxþuGÈþþuþþcþ´þuþuþÌþ\"þþTþ\rþ Åþþ\rþ ¼ûûþ\n£þ£þBûþ{ûþBûþ_ûþâûþïûþæûþºûþXûþÒûþ[þ)!ûþ\rûÕþûûþþûûþ½9þ(þSþþÅþÈþCþûûþúþ(þb þ)þþ3þAþ\rþCþ\rþEþ^þ)33þ\'þ)þ\rþþ\"þAþþ\rPûþ\r½ þûûþ§þþ ®þþ\rþÈþu þþuûûþ!ûþ p þ)þûûbûþòþ(þ,þ(þ0þæþuþÞþuþ\rìþU\rþ\rnþuþ\x00þvchþ\rÍþþ} þþ\rPþuRþTþ)þ(þ+þþTþ)þ(þh þþwûû{þþ)þªþu ûþ þûþ þ\rFþCïþþþ)þ\rþ«þ(þ5þ\rþ d C\rþ3þuþ¨\rþ\\þ\rþ þûþ þ\rFþ  þ\"ûûþDþ/þö\rþdþÐþþþþþ&þþûûþ_þûûþ ¨þûûþþþvþ)þ:7þ;7þ<7þþ\rPûþ> þ>þþþþ\rþ ¯þh ûû¨û´þ²þ)ûûþÍþ\rWûûþ*ûþ\nÖþþ\rPûþ \'þûþþþ þ\"þCþþ\rþ\r5þþ\rPûþÁ þ\"þuûûþ lþuþ,þuþùþ)þ\rþ\x00þûþ þ Qþûþ¡þ= þ²ûûYûþTþ)þ(þÓþ\rþ òþþ\nYþ(þëþ)þ:7þuûûþHþ;7þuûûþ Vþ<7þuûûþTþ(þh þûûþ§Tþ)þ(þS Qþiþ\rþÂþu°þÓþ\"þ9 Nûþâþ SþþLþ)þ\nIþþ\rûûëûþûþqûþmûûëûþûþqûþË ûûþ ¾ûþ «þu\rþ)ûûþ7ûûþ|þ(þÀþþþþ\nòþþþþþþ¶þþþ\níþ)þþ^þþ£þÃþþCþ4 þ)þ\rWûþ±þ\rþ\n&þþ(þÂþ\"þEþ)þ\"þ^þûûþ\x00ûûþDþ,þÑþþþ Nûþ¤þþ)Eþþ`5ûûþ´þ3þ(þ¦þ)þþ\noþ;þuûûþ] þûþeþ þþþ#þVþ)£þþAþþ)þû\rþ²%ûû þ²_þvVCþuþþ\'QþûûþûþNþþûûëûþPþþûûþ ðþþþûûþûûþÜþ\rþ\rlþuþ\rþë#^þþ\rþ)þþþûþ@þûûþ<þ\"þûûþ Òþûûþ øþ\"þûûþ QþtQþûûþ§þþûûþ\rþûûþ ßÎþÎþÅÎþêþ\rWûþ\nÓþ\rþ\rd&ûû þûþÓþ\rþàþ\rWûþ fþ\rþ$þ\rWûþÞþ\rþ ¾þ\rWûþ\rÒþ\rþaþ\rWûþ =\'ûû þûþùþ\rþzþ\rþkþ3(þþ\nZþ\rþþþþ\r8ûûþÌûûþjûûþeþþéþ\rWûþFþ\rWûûþoûþ Jþ\rþûûþ ÷þþ ìþûûþ Ðþ\nïþ\rWûþ þ\rþZ&ûû þûþTþ\rþáþ\rþâûûþðûûþûþûûþûþQûûþûûþyûþ ûûþ Iûûþ ©þ\rþ\rDûûþ[ûûþ×ûûþûþíûûþ¿ûûþûþ±ûûþûþ1þéûþôûûþ¤ûþ­þ\rþJþ\rWûþ þ\rþ þ\rWûþÃþ\rþ¢þ\rWûþ{þ\rþ .&ûû þûþ Wþ\rþ Úþûûþ²þþûûþEþ\rþ|ûûþgÎþâþ\rþ\n\'Îþ\nþ=ûûþ\r«þ° þûûþ§þþ5þþ Î þ)þ\rWûþã#^þþ\rþ)þþþûþ@þûûþæþ\"þûûþ §þûûþYþ\"þûûþ ¥þ(þeþbþ\rþ xûþ A þvgMþþ úþ þþûû{eþVsQþþûþ\x00ûþsûþ5þ²ûûYûþþ²ûûÊûþ2ûþþ²ûûäûþ\nûû¨û¬þ²þþ²ûûþ\rvþþûûþ þþûûþ®þþ\rþþþþûûÊûþþûþ@þ7þûûþ[þ7þûûþaþ\"þûþþ¥þ\rþaþ¸ûþ \x00ûû¨û´þ²°þ= Nûþæþ&Sþ \rþ ÷þþ[þþûûþ\"þþ¾þûûþÜþûûþnþûûþµûþ]þ§þ ­þ= Cþþ\nàþ Lþþ\rcûþÙþþ~ Nûþ_þ!SqQþ²ûþ ³þ²xûûïûþGþ®þ5þ²ûþ\rçûûïûþÇþ®þ5þ²ûþ ûûïûþ 1þ®þ5þ²ûþ\r?ûûïûþ Xþ®þ«þJþþ®%þ£ûþ²@þ.þKÓþKþ(þKþIQþ7þJ*QeþIþìûþ²þ$þþèþ=þBQ þûûþrûþ ·Tþ)þ(þÉþ!sûûþHþþ\\þ þûþ þ\rFþQþûûYûþ\rWþ²þûûþàûþþûûþàûþÈþÓ þ)þûûbûþÂþQþ\rþ HQþþ\rþþþ\rnûþsþþ\rþ\nþ=þþ\rþ8þEûþ\nÃþEûþ aþEûþ3þþþþMþ= þ²Bþhþ1þ2r3þdûûþäþ u þûþ ×áþþ\rPûþ>C þûþ Éþ Nûþ Àþ þ\"ûûþDþ¡þqþ)þþrþþ þgþuþÄþvþþJ\rþ®&\"2è\"2þ/þþþ þ)þ\rWûþ þ]^þþ\rþ)þþûþþ8þZþ_ \"3\"û\"3þ ëþ\rþ;þuþûþ\nFþU þ)þûûbûþ+Cþþþ\rþ¨ þþc]þQþþ\n4þ=þûþ þþþþ\n?þEþ/Vþþiþ&þ)þþïþþ)þþ)þ7 þûûþxûþ þþûû{þ\rþ þ(þ lþv\"MþvVþþ\rPûþ>Cþ¦ þûþ þ\rFþ þ\"þ4Cþûûþ\rÔ\"6\"7\"3\"8þ&þûþuþþ(þÉþ)þ7þûþ þGþuþ ï þ)\"0þG3&3þ aQþûûYûþ\rÛþþûûþ\réþûûþ rþûûþ\n;þþûûþkþûþHþûûþ¿þûûþõûþgþûûþEûþ/þûûþ¦þûûþEûþþûûþÆþþ !þûûþEûþ(þûûþÆþþ òþÈþþûûþ@þ\rnûþØþ5þþMþ=þ\rþÊþ)þþ´þþ²þoûþÈþªþ(þµCþ²[QþIþ±þ&þþ <þþþÉ*ûû þþþ ûþÛþþ\rHþþþþ\rþ)þþûþþ8þZþ_þþþûûþþþVþþþûûþþþVþþûþþÙþþþûþþÙþþ/þþÁþþÔþþ þûþ þ\rFþ  Cûû;ûþûþ¼þ þþþÁûþsûþÛÐþu^þþ\rþi)þþûþ$ûû þiþ,5þvþ\rþ NûÚþþþþûþ þuþ)þ!)þEþþhþþ = þ)þþûûþFþ\rþ.Cþaþ(þÖþ\rþ\rCûþþÈùþþV^þþ\rþ)þþR þûþþ&þa\"þûþþÊþþ1þûûþ ´ûûþ¶ûþ ½ûûþ¶ûþ 4þ¨,þûûþ-þûûþþûûþ©ûþ áþûûþ©ûþ Ýûþ]þ©þ1þ=þûþ 5ÏþÃþ\rþVþ²þ³ûþóþ´ûþIþµBûþ)ûþ{ûþ þûþ þ\rFþ4þ\"Q Nûþ\nþþ)þ57þþöþ67þþúþ77þþÒþ\rþlþûþ Í þvþvûû{eRþþ)þþ+þþ þ\rþuþ)þuþmþþþþ\rþQþ)þûûþþ?þþ  þûûþxûþ\rÃþ\"Êþ\"þ þûþ þ\rFþ\n þ)þ\rWûþì þ)þ\rWûþåþ)ûûþ)ûûþ þ)þþûþ þþþþ2þ(þ Ö þûþ þ\rþþH)þÎþfûûþ+þ4ûûïûþéþ8þíûûþ ¼þ9ûûïûþ\r^þ=þ$þ=þûûþ\rÌþ±þ)þþ)ûûþ Cþuûûþqþvþwþ\rþ þûþ þþþ\rPûþl þûûþûþÃ\rþûþ þ\rFþ!þ\rû{þ!Qþûþ þ\rþlþ:þûþ þ\rþ\r¿þ;þûþ þ\rþ þ<þþÁþ=þþ þ=ûûþûþcQeþþXCþþûûþlþPûûþ{þ+þMþ=þ)þ?þ(þï1? þûþ þ\rFþþ\rþ¸ Nûþ{þSþþ&þCþûþ sþûûþ\rÜþûûþ\nSþRþûþNþRþ þ\rþÊþ\ruþ²ûûþäûþC\rþûþ ×þûûþåþ V þûþ þ\rFþECþ1Qþþþchþ #þþÝþþþòþ7Mþûûþ\r`þMþfþûûþ ReþþþMþþûûþ7þ=þ²\"ûûþD\nz þþuûûþþ NûþÒþBSþ)ûûþ\nÆþþ\rþÖ þ+ûû þû}ÑþX þuûûþûþøþuþ\"þuûûþà þ.4þ¥þþQþþ\rPûþþþþCþ\nqþþ\rnûþsþþÌþ= þv+ûû þvû} þûûÐþþþ¡þþ)þuûûþ kþ²ûûäûþ.þ`ûþ~þþ[ûþjþ`ûþÐCþbCþþ\rõþþÃþå NûþXþDSþþþûþ wþ)þv^þþ\rþ²þþþþ²ûþ3þ³ûþÈþþûûþ Sþ)þ>7þ)ûþ ëþCþ þ²þ\rPûþlCûþ ¦þ CûþÈùþþV þ\"ûûþDþ-þ Hþ(þ ¹ þûþ þ\rþþ -^þxþþ3þþûûþ\'þ°þþþÃþþ\"þþ/ûþÏþ/ûþtþþûþþ©þ/ûþÓþ\"þþBþþûûþ\rú þKþûû{þV þ\rþ¹ûûþÉþ:þuûûþ\rAþþ­ Nûþ­þ(þ)þþ¹þ\r¸þþW þûûÔûþ©þ(þ)^þþ\rþ)þNþûþ¡þ-,þ)þþþ\rþ\n²þþ\rGþ)ááþÃþ)þfþ!sûûþ ¢þûþ þ\rþÄþ)ûûþMþuþûþuþvþ\rþ Aþhþ¤þ)þ ûþ\n¤þ)þªþv ûþÑ þ´ûûþDþ{þ7 þ)þþ/^þþþþþûþþ±þûþ3þûþþ\n-þûþþþ<þuûûþTþ$þ#Èþ þBþþûþ þûûþxûþ¾ þûþ þ\rFþ NûÚþ| þbþþ¸ûþ þþ\nm^þþ\rþv)þ©þuûþvûþþ%þ¤ þþþ<þþþþ»þþuþûþ\"6\"û\"6¢þþ þûþ þ\rFþAþchþ þþuûûþ*þuûûþ_þþ¨þ\\þ þûþ þ\rFþþþþ¨þûûþûþcþJþØþKGQeþIþþþ¨Qeþ[^þ?þþÐþ©þÞþûþþßþûþþûþNûþsûþ Wþþ\rþûþþ FþþûþNþûûþ|þûþNþþXûûþÕþûþNþþ\\þûþNþþþûþNþþ~þþûþNþþ Mþûþþûþþ\n×þþ ^þwþwþöþw\rþuþþwþ\nzþuûþw¿þvOþw NûþBþS þ\rûûþ0þAþðþþûûþPþ)þuþUþ u þÈþþ³¸ûþ ïþ)þ ûþ »þ(þÎþ³Uþäþþ\rþzþ²%ûû þþ[ûþþ_ûþ.þûþ þ>þ)1ÐþTþ)þ(þ)þ²þ³þ\rþ Nûþºþ\'Sþ þþ!þ\"þþþ#þ$þåþæ þþþþþþþþ÷þøþùþúþ\x00þðþñþòþî\nþõ5þëûþïþíþìþô!þóþö9ñX4aHxn)Y¤9nxn Z\"_!?6ûnûªþ²Uþ!þ³þÜþ ³þ!ûûþ³þûûþ _þ·þ\rþºþþëñþ þ\rnûþLÈþ¶V þþ\rWþ³þ þµ þ÷ûûþ\rðûþtþÙ þ þ=Tþ!þ þ¦þ¶þ\rþºþþ!£þ&þþEþ!þ.þK þ!þ·þ/Èþ·þþ³ûûþþåRþþGþþÑTþ!þ þS^þþ\rþþ Kþþþþ¶þþûþþ9þþ\r þ´ûûþ Yþåþñþòþðþ P#þïþþ\rþ³þþþþ²ûþ3þÈþþûûþ\r/þ³ûþþ$þþfþ Ðþ= þ²þ²Gþ²þKþ\rþÉrþþ!þ#Qþþ\rPûþOþþûûÔþ`þþÅþûûþ\npûþ¤þ\rþaþûûþ\n»ûþâþ=ûûþ¢þöòñþGþ þ³þ³þ ~þíñ\nzþ þ¦ûûþ Äþôþú? þ!þûûþTþ\rþfþ?Îþþ/ñþJ*QeþITþ!þ þ,Cþ\rþÉrþþ þ,þþþþÓþå þþ,þåûûþûþàþ!þ¶þ/þ?þåûûþ\r*þ þ!þåûûþOûûþþ!þþ\rÐTþ!þ þ+þH^þþ\rþ²)þþþ²ûþ3þÁþ!£þ&þþ\n\rþ!þþþ²\"þåþ@þ!þ·þ/ ûû¨û´þ² þ!&ûû þåûþW þ÷ûûþ+þ÷ûûþÈþóûûþYþõþGþþ þFþ þhAQþþØþþ\rþå)þþþåûþ3þþûûþâþþ\rªþþ£þÈþþVþþ&þ(þ² þþþQþ¹þ²iþþ²þþ\rnûþþ²þ1þ=þ!ûûþ çûûþ ¨ûþT þ>þåûûþ þ£ûþ²3þIQ þ!ûûÔûþCþ!þ ûû¨û¬þ÷þ^þxþþ³ûþ¥þûûþûþäûþNûþCþ²þSþ²þoûþ þî þ!þ¶þ/Èþ¶ þ@þåûûþïTþ!þ þNþ\rþ hþìþ²þoûþ þï+þ^þxþå/ûû þÎþþåûþþAûþ×þþ²ûûþ;þåûþþÆþ7þ ûþßþþúþ³\"þþBþþ\rPûþ þþ\rWþ´þÙþåûþæþbþþðþ þNþ!þåûûþ%þ³uþåþøþùÃþuþ rþ!þ þ\rnûþcÈþ·VþQþ\x00Uþ!þKþdþ´\rþþûûî!ûþÏûþKþ\rþÙþûþreþuTþ!þ þÉþ!þ·þþg³þ!þ¶þþ þ$ þ!£þ&þ²ûþ3Tþ!þ þbþw\rQþ`þå]þíþþ þ= Cþþpþþûþþ zþ÷þ§þ²þGþÍþ!þå þ÷ûûYûþ¹þþCþ çþ²þÃûþÈþ^þþ\rþµ)þ©ûûþ¤û6þµûþþæþ²þiTþ!þ þ)þuþ}þþþþKþ^þþ\rþ)þþþûþ3þþ²ûûþ\r þþ³\"þþþóþ, þ+ûû þåûþÛþ²þÃûþ þHþþþ²ûûþÎþþ×þåþ!£þ&þþEþ þ#þ þ)þþþÓþþÙþþ¶þåþæþþæxþåþ\"þåûûþ\'þæ°þþ ¶þþ\rPûþm þ!&ûû þåûþDþ²þ&þ&þ&ûûëûþTþ*þ)þ+þ,þþþ-þ.þþþþþþû?- ((\n(!\'*(( \r ((() ($,& \"#% (û( +(û.þ\x00Uþµuþ+þ´ûûþ þþËþûûþ1þþþùûþ3þHþþ\x00\"þCþ þøûûÊûþ\n®ûþ{þ²þ³Tþ+þ*þ,ìþûûþþ þ÷ûûþëû´þ÷ þûûþ?þ\x00þ+þ÷ þHûûþÕþHþFþH þ+ûû þ´ûûþ? Qþ\rnûþsþþ\rþ\n$þ=þûûþdþþ*þF þþyþúþ mûþ¹Hûþoþ*þ,þûûþáþþ*þÎþøþ§ûþ7þ+þþÃþþ þøþ§ûþûûþ?þ þ÷ûûþ+þ÷ûûþ£ þ+þµþõþ¶þ·þHþ ûûþ¤û¬þøþ\rþ§ûþkþbþ+£þøþùûþþ þøûûYûþKþHuþw\rþ+þùûþõûþßûþçûþßûþþ²þÃûþ þHþ \nþùûþ3Tþ+þ*þÉþbþ\rþAþþþþþûþþþûûûûþwTþþþ)þþ,þ þ&ûû þûþ¸'; +;(function () { + var _$Xr = 0, + _$sK = [[4, 3, 6, 0, 7, 5, 1, 2], [32, 38, 10, 25, 85, 94, 51, 84, 17, 20, 37, 20, 71, 66, 90, 53, 90, 20, 11, 2, 96, 8, 95, 27, 3, 7, 29, 92, 69, 77, 20, 60, 50, 97, 86, 40, 19, 39, 21, 79, 55, 67, 39, 102, 61, 5, 48, 36, 39, 12, 89, 91, 25, 80, 39, 82, 44, 101, 65, 75, 83, 1, 98, 39, 43, 49, 39, 22, 72, 56, 59, 20, 9, 35, 58, 56, 6, 62, 20, 18, 56, 20, 46, 33, 25, 45, 63, 64, 16, 81, 20, 100, 76, 87, 76, 54, 0, 70, 57, 99, 14, 31, 41, 15, 26, 73, 74, 13, 30, 23, 24, 28, 93, 52, 88, 34, 78, 68, 4, 42, 47, 20], [28, 20, 15, 17, 7, 5, 29, 2, 26, 32, 16, 25, 16, 24, 31, 26, 1, 13, 22, 3, 12, 21, 19, 10, 4, 27, 4, 0, 4, 6, 23, 6, 4, 30, 14, 4, 11, 4, 18, 8, 33, 9, 26], [30, 29, 1, 12, 11, 5, 0, 8, 47, 44, 45, 14, 34, 6, 36, 25, 33, 48, 31, 44, 2, 40, 28, 21, 17, 43, 19, 7, 40, 22, 23, 38, 4, 43, 13, 3, 49, 10, 13, 46, 35, 20, 35, 27, 32, 44, 35, 15, 32, 6, 42, 24, 9, 41, 37, 18, 20, 32, 15, 42, 27, 26, 39, 16, 11], [12, 0, 14, 6, 32, 33, 26, 36, 22, 16, 5, 27, 7, 10, 3, 27, 18, 23, 3, 1, 35, 8, 9, 4, 29, 34, 24, 1, 30, 17, 19, 28, 20, 4, 11, 24, 15, 30, 27, 2, 13, 25, 27, 21, 16, 31, 27]]; + + function _$NS(_$n4, _$BU) { + return _$Hz.Math.abs(_$n4) % _$BU; + } + + function _$SS(_$KM) { + _$KM[_$NS(_$EC() - _$KM[_$NS(_$S3(), 16)], 16)] = _$KM[_$NS(_$e6() + _$Gh(), 16)]; + _$KM[14] = _$EC() - _$KM[_$NS(_$S3(), 16)]; + if (_$e6() - _$KM[_$NS(_$X5(), 16)]) { + if (_$EC() + _$pU()) { + _$KM[6] = _$2Z(); + } + } + _$kh(_$KM); + _$KM[2] = _$mR() - _$KM[_$NS(_$Cm(), 16)]; + var _$ys = _$e6(); + if (_$YY() - _$KM[_$NS(_$2Z(), 16)]) { + _$KM[_$NS(_$mR() + _$oe(), 16)] = _$ZL(_$KM); + } + _$Y_(_$KM); + return _$hv(_$KM); + } + + function _$EC() { + return 5 + } + + function _$S3() { + return 8 + } + + function _$e6() { + return 13 + } + + function _$Gh() { + return 3 + } + + function _$X5() { + return 0 + } + + function _$pU() { + return 11 + } + + function _$2Z() { + return 4 + } + + function _$oe() { + return 15 + } + + function _$Vg() { + return 10 + } + + function _$da(_$KM) { + var _$ys = _$oe(); + var _$9U = _$EC(); + _$KM[11] = _$YY(); + var _$U3 = _$OF(); + var _$U3 = _$X5(); + return _$J_(); + } + + function _$YY() { + return 1 + } + + function _$OF() { + return 2 + } + + function _$J_() { + return 14 + } + + function _$kh(_$KM) { + _$d$(_$KM); + _$KM[_$NS(_$KM[_$NS(_$Cm(), 16)], 16)] = _$Lc(_$KM); + _$KM[_$NS(_$to(_$KM), 16)] = _$1M(_$KM); + return _$Qu(_$KM); + } + + function _$d$(_$KM) { + _$eP(_$KM); + _$q5(_$KM); + var _$U3 = _$J_(); + if (_$S3()) { + _$KM[_$NS(_$1W(), 16)] = _$e6(); + } + _$gI(_$KM); + return _$e6() + _$Gh(); + } + + function _$eP(_$KM) { + _$KM[2] = _$X5(); + var _$9U = _$EC(); + var _$U3 = _$pU(); + _$KM[1] = _$1W(); + return _$e6(); + } + + function _$1W() { + return 7 + } + + function _$q5(_$KM) { + var _$9U = _$Cm(); + var _$U3 = _$Vg(); + _$KM[8] = _$kt(); + _$KM[4] = _$OF(); + _$KM[_$NS(_$mR(), 16)] = _$oe(); + return _$EC(); + } + + function _$Cm() { + return 12 + } + + function _$kt() { + return 6 + } + + function _$mR() { + return 9 + } + + function _$gI(_$KM) { + var _$ys = _$1W(); + var _$U3 = _$e6(); + var _$9U = _$J_(); + var _$ys = _$Cm(); + _$KM[10] = _$S3(); + return _$kt(); + } + + function _$Lc(_$KM) { + var _$ys = _$1W(); + var _$U3 = _$e6(); + _$KM[_$NS(_$X5(), 16)] = _$J_(); + var _$U3 = _$pU(); + var _$9U = _$YY(); + return _$1W(); + } + + function _$to(_$KM) { + var _$U3 = _$oe(); + var _$U3 = _$EC(); + _$KM[_$NS(_$S3(), 16)] = _$kt(); + _$KM[4] = _$OF(); + return _$X5(); + } + + function _$1M(_$KM) { + _$KM[12] = _$Vg(); + _$KM[8] = _$kt(); + _$KM[4] = _$OF(); + return _$X5(); + } + + function _$Qu(_$KM) { + if (_$EC()) { + _$KM[_$NS(_$S3(), 16)] = _$kt(); + } + _$Ge(_$KM); + _$6y(_$KM); + var _$9U = _$1W(); + if (_$Vg()) { + var _$9U = _$e6(); + } + _$KM[12] = _$Vg(); + return _$YY() + _$1W(); + } + + function _$Ge(_$KM) { + _$KM[15] = _$EC(); + var _$9U = _$kt(); + var _$U3 = _$2Z(); + _$KM[_$NS(_$Gh(), 16)] = _$mR(); + var _$9U = _$Vg(); + var _$ys = _$S3(); + return _$kt(); + } + + function _$6y(_$KM) { + var _$9U = _$mR(); + var _$ys = _$oe(); + var _$ys = _$S3(); + var _$9U = _$kt(); + var _$U3 = _$Gh(); + var _$U3 = _$mR(); + return _$oe(); + } + + function _$ZL(_$KM) { + _$KM[8] = _$kt(); + var _$9U = _$Gh(); + var _$ys = _$mR(); + _$KM[_$NS(_$Cm(), 16)] = _$Vg(); + return _$S3(); + } + + function _$Y_(_$KM) { + _$KM[12] = _$nz(_$KM); + _$KM[_$NS(_$NL(_$KM), 16)] = _$EC(); + if (_$YY() + _$1W()) { + _$KM[2] = _$X5(); + } + var _$ys = _$YY(); + var _$9U = _$KM[_$NS(_$2Z(), 16)]; + var _$U3 = _$J_(); + if (_$KM[_$NS(_$X5(), 16)]) { + if (_$oe()) { + _$KM[_$NS(_$Vg(), 16)] = _$S3(); + } + } + return _$mu(_$KM); + } + + function _$nz(_$KM) { + _$KM[_$NS(_$YY(), 16)] = _$1W(); + var _$9U = _$X5(); + var _$ys = _$J_(); + var _$ys = _$pU(); + var _$9U = _$YY(); + return _$1W(); + } + + function _$NL(_$KM) { + var _$9U = _$oe(); + var _$9U = _$EC(); + var _$U3 = _$kt(); + var _$ys = _$2Z(); + _$KM[_$NS(_$Gh(), 16)] = _$mR(); + return _$oe(); + } + + function _$mu(_$KM) { + _$5A(_$KM); + _$Ha(_$KM); + _$KM[14] = _$Cm(); + return _$1l(_$KM); + } + + function _$5A(_$KM) { + _$KM[_$NS(_$1W(), 16)] = _$e6(); + var _$ys = _$J_(); + var _$U3 = _$Cm(); + var _$U3 = _$S3(); + return _$kt(); + } + + function _$Ha(_$KM) { + var _$ys = _$mR(); + var _$U3 = _$oe(); + _$KM[5] = _$pU(); + var _$9U = _$2Z(); + var _$ys = _$OF(); + return _$X5(); + } + + function _$1l(_$KM) { + _$KM[_$NS(_$YY(), 16)] = _$1W(); + _$KM[13] = _$Gh(); + var _$ys = _$Cm(); + var _$ys = _$Vg(); + return _$S3(); + } + + function _$hv(_$KM) { + _$jR(_$KM); + _$KM[6] = _$e6() + _$Gh(); + _$Vr(_$KM); + _$VL(_$KM); + _$KM[2] = _$mR() + _$oe(); + return _$9H(_$KM); + } + + function _$jR(_$KM) { + _$KM[2] = _$X5(); + if (_$oe()) { + _$KM[_$NS(_$Vg(), 16)] = _$S3(); + } + _$KM[3] = _$mR(); + if (_$Cm()) { + _$KM[_$NS(_$pU(), 16)] = _$YY(); + } + _$KM[0] = _$J_(); + return _$EC() + _$pU(); + } + + function _$Vr(_$KM) { + _$KM[_$NS(_$EC(), 16)] = _$pU(); + _$KM[_$NS(_$kt(), 16)] = _$2Z(); + var _$9U = _$mR(); + var _$U3 = _$oe(); + _$KM[_$NS(_$Vg(), 16)] = _$S3(); + return _$Br(_$KM); + } + + function _$Br(_$KM) { + var _$9U = _$Gh(); + var _$ys = _$mR(); + var _$U3 = _$Vg(); + var _$9U = _$S3(); + _$KM[_$NS(_$1W(), 16)] = _$e6(); + return _$Gh(); + } + + function _$VL(_$KM) { + _$KM[_$NS(_$Cm(), 16)] = _$Vg(); + var _$U3 = _$1W(); + var _$U3 = _$e6(); + var _$ys = _$YY(); + if (_$X5()) { + _$KM[14] = _$Cm(); + } + if (_$OF()) { + var _$ys = _$J_(); + } + return _$YY() + _$1W(); + } + + function _$9H(_$KM) { + _$KM[8] = _$kt(); + var _$U3 = _$J_(); + if (_$e6()) { + var _$ys = _$Cm(); + } + var _$U3 = _$OF(); + var _$U3 = _$X5(); + return _$Gf(_$KM); + } + + function _$Gf(_$KM) { + var _$9U = _$pU(); + var _$ys = _$YY(); + _$KM[_$NS(_$2Z(), 16)] = _$OF(); + _$KM[0] = _$J_(); + return _$Cm(); + } + + var _$HA, _$P_, _$Hz, _$XM, _$gM, _$_H, _$k5, _$FJ, _$SS; + var _$NQ, _$7s, _$lc = _$Xr, _$Nw = _$sK[0]; + while (1) { + _$7s = _$Nw[_$lc++]; + if (_$7s < 4) { + if (_$7s < 1) { + _$NQ = !_$FJ; + } else if (_$7s < 2) { + _$s2(0); + } else if (_$7s < 3) { + return; + } else { + _$Hz = window, _$XM = String, _$gM = Array, _$_H = document, _$k5 = Date; + } + } else { + if (_$7s < 5) { + _$HA = [4, 16, 64, 256, 1024, 4096, 16384, 65536]; + } else if (_$7s < 6) { + _$FJ = _$Hz['$_ts'] = {}; + } else if (_$7s < 7) { + _$FJ = _$Hz['$_ts']; + } else { + if (!_$NQ) _$lc += 1; + } + } + } + + function _$s2(_$EC, _$n4) { + function _$Xg() { + var _$NS = _$CO.charCodeAt(_$ZC++), _$Xr; + if (_$NS < 128) { + return _$NS; + } else if (_$NS < 251) { + return _$NS - 32; + } else if (_$NS === 251) { + return 0; + } else if (_$NS === 254) { + _$NS = _$CO.charCodeAt(_$ZC++); + if (_$NS >= 128) _$NS -= 32; + _$Xr = _$CO.charCodeAt(_$ZC++); + if (_$Xr >= 128) _$Xr -= 32; + return _$NS * 219 + _$Xr; + } else if (_$NS === 255) { + _$NS = _$CO.charCodeAt(_$ZC++); + if (_$NS >= 128) _$NS -= 32; + _$Xr = _$CO.charCodeAt(_$ZC++); + if (_$Xr >= 128) _$Xr -= 32; + _$NS = _$NS * 219 * 219 + _$Xr * 219; + _$Xr = _$CO.charCodeAt(_$ZC++); + if (_$Xr >= 128) _$Xr -= 32; + return _$NS + _$Xr; + } else if (_$NS === 252) { + _$Xr = _$CO.charCodeAt(_$ZC++); + if (_$Xr >= 128) _$Xr -= 32; + return -_$Xr; + } else if (_$NS === 253) { + _$NS = _$CO.charCodeAt(_$ZC++); + if (_$NS >= 128) _$NS -= 32; + _$Xr = _$CO.charCodeAt(_$ZC++); + if (_$Xr >= 128) _$Xr -= 32; + return _$NS * -219 - _$Xr; + } else { + } + } + + var _$th, _$u$, _$ys, _$_n, _$CO, _$Qp, _$LA, _$NS, _$Xr, _$lc, _$NQ, _$$F, _$7s, _$Nw, _$KM, _$EA, _$He, _$U3, + _$9U, _$ZC; + var _$e6, _$X5, _$S3 = _$EC, _$pU = _$sK[1]; + while (1) { + _$X5 = _$pU[_$S3++]; + if (_$X5 < 64) { + if (_$X5 < 16) { + if (_$X5 < 4) { + if (_$X5 < 1) { + _$n4._$de = "_$J_"; + } else if (_$X5 < 2) { + var _$9U = _$EA.join(''); + } else if (_$X5 < 3) { + _$NS += "HAP_HzXMgM_Hk5FJSSn4BUXgCOQpLAZCth_nu$tvnqOXIafTvkl3BPF5FkDvn8vQ$$lq7mK9SHogwD6w0zsKjGs2sHH19bNSXrlcNQ$F7sNwKMEAHeU39UysECS3e6GhX5pU2ZoeVgdaYYOFJ_khd$eP1Wq5CmktmRgILcto1MQuGe6yZLY_nzNLmu5A"; + } else { + _$NS += "jU4A31P5g10NnHQAfrDzxJ3Wmejqcjl5cgteqkkIUnqyI3VROfofB017oufkb$MjPqILcfKuoBHTXSKFAJdvvnXpQ1UqK8ugotNrqjG78Nt8fW2xyZCXSbGYYKIMENeet4_iwFRol72BEpjg5PEmgpANWU3pdjf4QNmp9nvD8HjHjpLDy27UWXG3hXhL"; + } + } else if (_$X5 < 8) { + if (_$X5 < 5) { + _$n4._$$F = "_$Lo"; + } else if (_$X5 < 6) { + var _$th = _$Xg(); + } else if (_$X5 < 7) { + return 1; + } else { + _$NS += "bxdL_E5qnIaXa8coZdnKQLK2eT2W0JoEqo$wWHeGZ2Gr_FDmQIbW0Ur7goEzUfL$QYZOhmWMDn54t7qqfG4kOMrzHUn_r8ASLKJrRSQTvY$5cNVysMpoP6ujgT1fZvnWKcgKuZuI_hkZChQfWncbXKoKweGBJ4xQCya0aT4uBRaMuzBDs7Vt$4ZnaYlp"; + } + } else if (_$X5 < 12) { + if (_$X5 < 9) { + _$NS += "OiZKsE3FtUdWWDnxIIyKbvw8kT6Z9VSiDo$y9s$sMBcei_TDohDuPW3PVOu0drp_vdAO3UIwp12GsBtFZBOq5LBG_DwB7lJNunnG0qz9T_6zIbapTmx4A2pSOQnlYRnAGxsbaoSYYaer1UYW_ZFRiwPcvLPTcEUtjnAt8TTOn2Cik0PgiYNUcyecsVwG"; + } else if (_$X5 < 10) { + var _$NS = _$Hz.eval.toString(); + } else if (_$X5 < 11) { + _$e6 = _$FJ["a670748"]; + } else { + var _$NS = ''; + } + } else { + if (_$X5 < 13) { + _$He = _$Xg(); + } else if (_$X5 < 14) { + _$n4._$wD = "MdE0zZnv7UG"; + } else if (_$X5 < 15) { + _$n4._$vS = "_$da"; + } else { + _$n4._$20 = "_$d$"; + } + } + } else if (_$X5 < 32) { + if (_$X5 < 20) { + if (_$X5 < 17) { + debugger + _$NS = _$Xr.call(_$Hz, _$n4); + } else if (_$X5 < 18) { + _$Hz['$_ts'].l__ = _$FJ.l__; + } else if (_$X5 < 19) { + _$e6 = _$n4 === undefined || _$n4 === ""; + } else { + var _$Xr = _$s2(10); + } + } else if (_$X5 < 24) { + if (_$X5 < 21) { + return; + } else if (_$X5 < 22) { + var _$LA = _$FJ.aebi = []; + } else if (_$X5 < 23) { + var _$ys = _$s2(10); + } else { + _$n4._$OX = "xLxMyp4fk6q"; + } + } else if (_$X5 < 28) { + if (_$X5 < 25) { + _$n4._$XM = _$SS; + } else if (_$X5 < 26) { + if (!_$e6) _$S3 += 2; + } else if (_$X5 < 27) { + _$n4._$e6 = "_$kh"; + } else { + _$NS += "b0xD2L8R4zdkZyHP1TV07vZuYUc76L$2c$UoffDYMbL03XIGW27VR36XkC5x6E23vMBW9LJbxypDA0bg3Zgqw1pN5ojy5riib7ekva8CBdMKR5Qkq2BtwtNlBcVKTCf07EI_bdg9Uuns3KhDSaWpf3HYHqgx8ForU84GrXB5j2BZjIw6JHFClDtrQz2Y"; + } + } else { + if (_$X5 < 29) { + _$n4._$Nw = "WgUVZBOJPMQPZclAzxf.RG"; + } else if (_$X5 < 30) { + _$NS += "Cz_pht$I5_1GchN0mfYZWWYdRHq4__kUzdk9xYkmoxskkqah4$YtiZiMfBrbu6dCj415UhqFgO7ntyyiAvjAmBWNFYoizXKwu3b6vF4CBNxNAsBh4g39R9vKvqq0Fmh1Dq_XvTsFbTOb1cKtQcM0LLwE1sf$tzJ6bq$RjM4eCLgJPr6g$9$c0lqrF6Vi"; + } else if (_$X5 < 31) { + _$n4._$k5 = "5I3iKkGyJFiMc_Z.3kgY6q"; + } else { + _$n4._$jJ = "_$YY"; + } + } + } else if (_$X5 < 48) { + if (_$X5 < 36) { + if (_$X5 < 33) { + _$FJ._$dX = _$s2(18); + } else if (_$X5 < 34) { + _$e6 = _$Hz.execScript; + } else if (_$X5 < 35) { + _$n4._$3P = "_$eT"; + } else { + _$NS = _$NS.replace(RegExp('[\\r\\n\\s]', 'g'), ""); + } + } else if (_$X5 < 40) { + if (_$X5 < 37) { + var _$Nw = _$Xg(); + } else if (_$X5 < 38) { + return new _$k5().getTime(); + } else if (_$X5 < 39) { + _$s2(91, _$FJ); + } else { + } + } else if (_$X5 < 44) { + if (_$X5 < 41) { + var _$NS = _$s2(10); + } else if (_$X5 < 42) { + _$n4._$8_ = "_$OF"; + } else if (_$X5 < 43) { + _$n4._$u0 = "_$vw"; + } else { + _$Xr = _$s2(10); + } + } else { + if (_$X5 < 45) { + var _$EA = []; + } else if (_$X5 < 46) { + _$NS = _$Hz.execScript(_$n4); + } else if (_$X5 < 47) { + var _$NS; + } else { + _$n4._$He = "_$jS"; + } + } + } else { + if (_$X5 < 52) { + if (_$X5 < 49) { + var _$_n = _$Xg(); + } else if (_$X5 < 50) { + _$s2(79, _$9U); + } else if (_$X5 < 51) { + var _$CO = _$FJ["a670748"]; + } else { + _$sH(0); + } + } else if (_$X5 < 56) { + if (_$X5 < 53) { + _$n4._$PW = "_$vw"; + } else if (_$X5 < 54) { + _$n4._$Hz = 235; + } else if (_$X5 < 55) { + _$n4._$og = 4; + } else { + var _$NQ = _$CO.length; + } + } else if (_$X5 < 60) { + if (_$X5 < 57) { + if (!_$e6) _$S3 += 1; + } else if (_$X5 < 58) { + _$n4._$Ox = "_$oe"; + } else if (_$X5 < 59) { + _$e6 = _$NS !== "functioneval(){[nativecode]}"; + } else { + _$FJ._$Du = 1; + } + } else { + if (_$X5 < 61) { + _$FJ._$Xr = new _$k5().getTime(); + } else if (_$X5 < 62) { + var _$7s = _$Xg(); + } else if (_$X5 < 63) { + return 0; + } else { + _$S3 += 2; + } + } + } + } else { + if (_$X5 < 80) { + if (_$X5 < 68) { + if (_$X5 < 65) { + _$Xr = _$Hz.eval; + } else if (_$X5 < 66) { + for (_$U3 = 0; _$U3 < _$He; _$U3++) { + _$sH(16, _$U3, _$EA); + } + } else if (_$X5 < 67) { + for (_$NS = 0, _$Xr = 0; _$Xr < _$lc; _$Xr += 2) { + _$NQ[_$NS++] = _$$F + _$n4.substr(_$Xr, 2); + } + } else { + var _$ZC = 0; + } + } else if (_$X5 < 72) { + if (_$X5 < 69) { + _$n4._$VO = "_$vn"; + } else if (_$X5 < 70) { + _$NS += "cr1aq$5ieloAIjvAuJ97jQ_RnTPkuxa4zSJUZiyPPjGN7e9eGAdYSL94M3GmAHfuERkwpX_v0KA4Sn8OUTiouEPtM$islNksAFAKH8dnZDJE_NIZFNTeK$l6zb4tnS0kQmkz3QhVo$zqGqO6ZxeAD0uqclShkdUJB1QHzhLU7t77UX809lSuHpXZf22b1AzP"; + } else if (_$X5 < 71) { + _$n4._$rg = "_$2Z"; + } else { + var _$NS, _$Xr, _$lc = _$n4.length, _$NQ = new _$gM(_$lc / 2), _$$F = '_$'; + } + } else if (_$X5 < 76) { + if (_$X5 < 73) { + _$e6 = _$ys - _$NS > 12000; + } else if (_$X5 < 74) { + _$n4._$S3 = "_$7s"; + } else if (_$X5 < 75) { + _$n4._$gM = "w8pEZKXbQPG"; + } else { + for (_$U3 = 0; _$U3 < _$He; _$U3++) { + _$EA.push("}"); + } + } + } else { + if (_$X5 < 77) { + _$S3 += -78; + } else if (_$X5 < 78) { + return _$s2(12, _$NS); + } else if (_$X5 < 79) { + _$n4._$EA = "_$j0"; + } else { + var _$lc = _$s2(72); + } + } + } else if (_$X5 < 96) { + if (_$X5 < 84) { + if (_$X5 < 81) { + _$u$ = _$CO.substr(_$ZC, _$KM).split(_$XM.fromCharCode(255)); + } else if (_$X5 < 82) { + return _$NS; + } else if (_$X5 < 83) { + _$ZC += _$KM; + } else { + _$EA.push(")();"); + } + } else if (_$X5 < 88) { + if (_$X5 < 85) { + _$Hz['$_ts'] = {}; + } else if (_$X5 < 86) { + _$s2(31); + } else if (_$X5 < 87) { + var _$Qp = _$FJ._$dX; + } else { + return _$NQ; + } + } else if (_$X5 < 92) { + if (_$X5 < 89) { + _$n4._$KM = "_$qi"; + } else if (_$X5 < 90) { + var _$KM = _$Xg(); + } else if (_$X5 < 91) { + _$S3 += 78; + } else { + _$e6 = _$He > 0; + } + } else { + if (_$X5 < 93) { + _$NS += "KxSXs$itvZbbX8Sei3l27YOsvW5cwKk8VWLvRu0tbMAaMEgbsxfxEqTk5BXoq8kH0Ep6$rYQwgpIdUFrsSxhKTiN6HQdFtTio7jwpdiKqVSR0QQ2ozOl5yyyKU4XzpL4IfWQDfVbBz4B_GwT3HBYD$9OhwyuKJdPZ1ltiBUwSQTrkWnnSg3OySrADBGJ"; + } else if (_$X5 < 94) { + _$n4._$7Q = 148; + } else if (_$X5 < 95) { + _$S3 += 1; + } else { + _$NS += "_a_uJL8$aOYfLgw_WcFxFE7iI9feAwzwoc8dMaTWcxPnbA7FzAz7KzCMKDuDLz126d2mpFxk$0h_6QjlEHaKEt5bGiBHEgDcEPuhEQeXrGibtgRqQ_QicaNyT$U$3jFVqGOPHoDZFwB8pfz$Px$Cxju7y7oyJuonpEPmG95S2dnYbS6xdbXddg8l8GYr"; + } + } + } else { + if (_$X5 < 100) { + if (_$X5 < 97) { + _$NS += "Ha1lhvjRVrBrVL9HGfjeo5v7pJxSxl8qc5MqjZFGyjVIxihUvmwqmzvC6JlupGub22zit1P0M2x1x6BQ003gLV6n0Axrw3OxrgvSjJ8_delm20DTROlCcGdlqiG$niqWTuUcJ3F_E8sjLom$hdj0jSyk7QSZRZZeYPdXF7RDbYLHEZu8kYLCnmd5eZM6"; + } else if (_$X5 < 98) { + _$FJ["a670748"] = _$P_; + } else if (_$X5 < 99) { + _$FJ._$Xr -= _$s2(10); + } else { + _$n4._$lm = "_$Vg"; + } + } else { + if (_$X5 < 101) { + _$n4._$SH = 42; + } else if (_$X5 < 102) { + var _$He = _$Xg(); + } else { + var _$$F = _$Xg(); + } + } + } + } + } + + function _$sH(_$NQ, _$tv, _$nq) { + function _$OX() { + var _$Nw = [0]; + Array.prototype.push.apply(_$Nw, arguments); + return _$H1.apply(this, _$Nw); + } + + var _$$$, _$lq, _$7m, _$NS, _$Xr, _$lc, _$Ia, _$fT, _$vk, _$l3, _$BP, _$F5, _$Fk, _$Dv, _$n8, _$vQ; + var _$7s, _$KM, _$$F = _$NQ, _$EA = _$sK[2]; + while (1) { + _$KM = _$EA[_$$F++]; + if (_$KM < 16) { + if (_$KM < 4) { + if (_$KM < 1) { + var _$vQ = _$sH(9); + } else if (_$KM < 2) { + var _$Ia = _$Xg(); + } else if (_$KM < 3) { + _$Ia.send(); + } else { + var _$l3 = _$Xg(); + } + } else if (_$KM < 8) { + if (_$KM < 5) { + } else if (_$KM < 6) { + _$Ia.open('GET', _$Xr, false); + } else if (_$KM < 7) { + _$$F += -19; + } else { + _$Ia = _$Hz.ActiveXObject ? new _$Hz.ActiveXObject('Microsoft.XMLHTTP') : new _$Hz.XMLHttpRequest(); + } + } else if (_$KM < 12) { + if (_$KM < 9) { + var _$7m = []; + } else if (_$KM < 10) { + _$H1(5, _$nq); + } else if (_$KM < 11) { + var _$Dv = _$Xg(); + } else { + var _$lq = _$sH(9); + } + } else { + if (_$KM < 13) { + var _$BP = _$Xg(); + } else if (_$KM < 14) { + var _$fT = _$Xg(); + } else if (_$KM < 15) { + _$LA[_$tv] = _$NS; + } else { + _$7s = _$Xr; + } + } + } else if (_$KM < 32) { + if (_$KM < 20) { + if (_$KM < 17) { + _$$F += 19; + } else if (_$KM < 18) { + if (!_$7s) _$$F += 4; + } else if (_$KM < 19) { + var _$Xr = _$Xg(); + } else { + var _$Fk = _$Xg(); + } + } else if (_$KM < 24) { + if (_$KM < 21) { + var _$Xr = _$NS > 1 ? _$_H.scripts[_$NS - 2].src : _$P_; + } else if (_$KM < 22) { + var _$F5 = _$Xg(); + } else if (_$KM < 23) { + var _$vk = _$Xg(); + } else { + var _$Xr = new _$gM(_$NS); + } + } else if (_$KM < 28) { + if (_$KM < 25) { + for (_$lc = 0; _$lc < _$NS; _$lc++) { + _$Xr[_$lc] = _$Xg(); + } + } else if (_$KM < 26) { + var _$$$ = _$sH(9); + } else if (_$KM < 27) { + return; + } else { + var _$n8 = _$sH(9); + } + } else { + if (_$KM < 29) { + var _$NS = _$_H.scripts.length; + } else if (_$KM < 30) { + _$Ia.onreadystatechange = _$OX; + } else if (_$KM < 31) { + var _$NS = _$sH(9); + } else { + return _$Xr; + } + } + } else { + if (_$KM < 33) { + var _$NS = _$Xg(); + } else { + for (_$lc = 0; _$lc < _$Xr; _$lc++) { + _$7m[_$lc] = _$sH(9); + } + } + } + } + + function _$H1(_$Xr, _$K9) { + var _$SH, _$NS; + var _$NQ, _$7s, _$lc = _$Xr, _$Nw = _$sK[3]; + while (1) { + _$7s = _$Nw[_$lc++]; + if (_$7s < 16) { + if (_$7s < 4) { + if (_$7s < 1) { + _$NQ = _$tv == 0; + } else if (_$7s < 2) { + for (_$NS = 0; _$NS < _$$$.length; _$NS += 2) { + _$9b(0, _$$$[_$NS], _$$$[_$NS + 1], _$K9); + } + } else if (_$7s < 3) { + _$NQ = _$n8.length; + } else { + _$K9.push(_$Qp[_$vQ[0]]); + } + } else if (_$7s < 8) { + if (_$7s < 5) { + _$NQ = _$vQ.length; + } else if (_$7s < 6) { + var _$NS, _$SH = 4; + } else if (_$7s < 7) { + _$K9.push(_$Qp[_$_n]); + } else { + _$NQ = _$FJ["a670748"]; + } + } else if (_$7s < 12) { + if (_$7s < 9) { + if (!_$NQ) _$lc += 8; + } else if (_$7s < 10) { + _$K9.push("];"); + } else if (_$7s < 11) { + _$K9.push(";"); + } else { + return; + } + } else { + if (_$7s < 13) { + _$lc += 27; + } else if (_$7s < 14) { + _$K9.push("var "); + } else if (_$7s < 15) { + _$K9.push(_$Qp[_$th]); + } else { + _$K9.push(_$Qp[_$Dv]); + } + } + } else if (_$7s < 32) { + if (_$7s < 20) { + if (_$7s < 17) { + _$K9.push("}"); + } else if (_$7s < 18) { + _$lc += -23; + } else if (_$7s < 19) { + _$K9.push("while(1){"); + } else { + _$s2(79, _$Ia.responseText); + } + } else if (_$7s < 24) { + if (_$7s < 21) { + _$K9.push(_$Qp[_$Fk]); + } else if (_$7s < 22) { + _$K9.push("){"); + } else if (_$7s < 23) { + _$s2(31); + } else { + _$lc += -27; + } + } else if (_$7s < 28) { + if (_$7s < 25) { + _$K9.push(_$tv); + } else if (_$7s < 26) { + _$lc += 8; + } else if (_$7s < 27) { + _$K9.push("++];"); + } else { + _$K9.push(_$Qp[_$Ia]); + } + } else { + if (_$7s < 29) { + for (_$NS = 0; _$NS < _$n8.length; _$NS++) { + _$K9.push(","); + _$K9.push(_$Qp[_$n8[_$NS]]); + } + } else if (_$7s < 30) { + _$lc += 23; + } else if (_$7s < 31) { + _$NQ = _$Ia.readyState == 4; + } else { + _$K9.push("("); + } + } + } else if (_$7s < 48) { + if (_$7s < 36) { + if (_$7s < 33) { + _$K9.push("="); + } else if (_$7s < 34) { + _$K9.push("function "); + } else if (_$7s < 35) { + _$K9.push("=$_ts.scj,"); + } else { + _$K9.push(","); + } + } else if (_$7s < 40) { + if (_$7s < 37) { + _$K9.push("=$_ts.aebi;"); + } else if (_$7s < 38) { + if (!_$NQ) _$lc += 9; + } else if (_$7s < 39) { + _$9b(39); + } else { + _$9b(12, 0, _$7m.length); + } + } else if (_$7s < 44) { + if (_$7s < 41) { + if (!_$NQ) _$lc += 1; + } else if (_$7s < 42) { + _$NQ = _$7m.length; + } else if (_$7s < 43) { + _$K9.push("["); + } else { + if (!_$NQ) _$lc += 4; + } + } else { + if (_$7s < 45) { + _$K9.push(_$Qp[_$fT]); + } else if (_$7s < 46) { + _$K9.push("=0,"); + } else if (_$7s < 47) { + _$K9.push(_$Qp[_$vk]); + } else { + _$K9.push("(function(){var "); + } + } + } else { + if (_$7s < 49) { + _$K9.push(_$Qp[_$BP]); + } else { + for (_$NS = 1; _$NS < _$vQ.length; _$NS++) { + _$K9.push(","); + _$K9.push(_$Qp[_$vQ[_$NS]]); + } + } + } + } + + function _$9b(_$$F, _$og, _$wD, _$6w) { + var _$Xr, _$lc, _$NQ, _$NS; + var _$Nw, _$EA, _$7s = _$$F, _$He = _$sK[4]; + while (1) { + _$EA = _$He[_$7s++]; + if (_$EA < 16) { + if (_$EA < 4) { + if (_$EA < 1) { + _$7s += 40; + } else if (_$EA < 2) { + _$9b(4, _$og); + } else if (_$EA < 3) { + var _$NS = _$lq.length; + } else { + if (!_$Nw) _$7s += 2; + } + } else if (_$EA < 8) { + if (_$EA < 5) { + _$Xr = "if("; + } else if (_$EA < 6) { + _$K9.push(_$u$[_$NS[_$Xr]]); + } else if (_$EA < 7) { + _$7s += 39; + } else { + var _$NS, _$Xr, _$lc, _$NQ = _$wD - _$og; + } + } else if (_$EA < 12) { + if (_$EA < 9) { + _$Nw = _$NQ <= _$SH; + } else if (_$EA < 10) { + if (!_$Nw) _$7s += 7; + } else if (_$EA < 11) { + _$Nw = _$NQ == 0; + } else { + for (; _$og + _$lc < _$wD; _$og += _$lc) { + _$K9.push(_$Xr); + _$K9.push(_$Qp[_$Fk]); + _$K9.push('<'); + _$K9.push(_$og + _$lc); + _$K9.push("){"); + _$9b(12, _$og, _$og + _$lc); + _$Xr = "}else if("; + } + } + } else { + if (_$EA < 13) { + _$6w.push(["function ", _$Qp[_$og], "(){var ", _$Qp[_$l3], "=[", _$wD, "];Array.prototype.push.apply(", _$Qp[_$l3], ",arguments);return ", _$Qp[_$F5], ".apply(this,", _$Qp[_$l3], ");}"].join('')); + } else if (_$EA < 14) { + _$NS -= _$NS % 2; + } else if (_$EA < 15) { + for (_$Xr = 0; _$Xr < _$NS; _$Xr += 2) { + _$K9.push(_$u$[_$lq[_$Xr]]); + _$K9.push(_$Qp[_$lq[_$Xr + 1]]); + } + } else { + _$9b(12, _$og, _$wD); + } + } + } else if (_$EA < 32) { + if (_$EA < 20) { + if (_$EA < 17) { + if (!_$Nw) _$7s += 1; + } else if (_$EA < 18) { + _$7s += 8; + } else if (_$EA < 19) { + _$7s += 21; + } else { + _$lc = 0; + } + } else if (_$EA < 24) { + if (_$EA < 21) { + } else if (_$EA < 22) { + _$Nw = _$lq.length != _$NS; + } else if (_$EA < 23) { + _$Nw = _$NS.length != _$Xr; + } else { + _$Nw = _$NQ == 1; + } + } else if (_$EA < 28) { + if (_$EA < 25) { + _$K9.push("}else{"); + } else if (_$EA < 26) { + _$7s += -40; + } else if (_$EA < 27) { + _$Xr -= _$Xr % 2; + } else { + return; + } + } else { + if (_$EA < 29) { + for (_$NS = 1; _$NS < 7; _$NS++) { + if (_$NQ <= _$HA[_$NS]) { + _$lc = _$HA[_$NS - 1]; + break; + } + } + } else if (_$EA < 30) { + _$wD--; + } else if (_$EA < 31) { + _$K9.push("}"); + } else { + _$K9.push(_$u$[_$lq[_$NS]]); + } + } + } else { + if (_$EA < 36) { + if (_$EA < 33) { + var _$NS = _$7m[_$og]; + } else if (_$EA < 34) { + var _$Xr = _$NS.length; + } else if (_$EA < 35) { + for (; _$og < _$wD; _$og++) { + _$K9.push(_$Xr); + _$K9.push(_$Qp[_$Fk]); + _$K9.push('<'); + _$K9.push(_$og + 1); + _$K9.push("){"); + _$9b(4, _$og); + _$Xr = "}else if("; + } + } else { + _$7s += 17; + } + } else { + for (_$lc = 0; _$lc < _$Xr; _$lc += 2) { + _$K9.push(_$u$[_$NS[_$lc]]); + _$K9.push(_$Qp[_$NS[_$lc + 1]]); + } + } + } + } + } + } + } + } +})() + +function get_run(){ + return document.cookie; +} \ No newline at end of file diff --git a/z_working/rs5Vm.js b/z_working/rs5Vm.js new file mode 100644 index 0000000..128cf06 --- /dev/null +++ b/z_working/rs5Vm.js @@ -0,0 +1,39 @@ +const fs = require('fs'); +const QXVM_GENERATE = require('../qxVm_sanbox/qxVm.sanbox'); + + +function ReadCode(name, dir) { + let file_path = dir === undefined ? `${__dirname}/${name}` : `${__dirname}/${dir}/${name}`; + return fs.readFileSync(file_path) + "\r\n" +} + + +const js_code = ReadCode(`./rs5.js`); +const user_config = { + proxy_config: { proxy: true, print_log: true }, + canvas: "", + window_attribute: {}, + env: { + plugin: [ + { description: "Portable Document Format", filename: "internal-pdf-viewer", name: "Chrome PDF Plugin", MimeTypes: [{ description: "Portable Document Format", suffixes: "pdf", type: "application/x-google-chrome-pdf" }] }, + { description: "", filename: "mhjfbmdgcfjbbpaeojofohoefgiehjai", name: "Chrome PDF Viewer", MimeTypes: [{ description: "", suffixes: "pdf", type: "application/pdf" }] }, + { description: "", filename: "internal-nacl-plugin", name: "Native Client", MimeTypes: [{ description: "Native Client Executable", suffixes: "", type: "application/x-nacl" }, { description: "Portable Native Client Executable", suffixes: "", type: "application/x-pnacl" }] } + ], + navigator: { + userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36 Edg/100.0.1185.55" + }, + location: { + href: "https://www.nmpa.gov.cn/" + }, + document: { + referrer: "https://www.nmpa.gov.cn/" + } + } +} + +let result = QXVM_GENERATE.QXVm_sanbox(js_code, "get_run", user_config); + +console.log(result.get_run()) +console.log('\n') + +debugger diff --git a/z_working/tengxun.js b/z_working/tengxun.js new file mode 100644 index 0000000..e108d1b --- /dev/null +++ b/z_working/tengxun.js @@ -0,0 +1,347 @@ +Date.now = function now() { + return 1661986251253 +} +Date.parse = function (){ + return 1661986251253 +} +Date.prototype.valueOf = function (){ + return 1661986251253 +} +Date.prototype.getTime = function (){ + return 1661986251253 +} +Date.prototype.toString = function (){ + return 1661986251253 +} + + +Math.random = function random() { + return 0.08636862211354912 +} + + +window._WHBCWWObCNKYfCJPPbgkgegDCcMfZDMC = function() { + return new Date() +}; +window._bNCaXHUhTEPgEfgjkKdXVaimhAbMGaaW = function(a, b) { + return Date[a].apply(Date, b) +}; +window.YEmTjijiKOZMSNTmSOFYbOKJUXfdEBBm = 'fxGcsopU5Hzg8dB3yMGLbPHrjdW09Me/S50F7gegYBgi+h3K88/Fut1jaRiyvy2E7p/VDpOObiCaa2TH4U0tQT/eksZojnj18lTdQs0LlGIzywxgoF1EtT4rwO4gqQXXLJo1F+R0iOgImhE/NPWVnWarPQRoWfP4bPaDm5gna6sZYr9gtzhckB/+zzcaRcU/pbquFQn0pPiHaD1WKI/lKi9rCS9TmZs3ZUT3xkXPWyA='; +var __TENCENT_CHAOS_STACK = function() { + function __TENCENT_CHAOS_VM(I, E, D, g, n, G, b, z) { + var O = !g; + I = +I, + E = E || [0], + g = g || [[this], [{}]], + n = n || {}; + var j, p = [], + A = null; + function m() { + return function(O, p, A) { + return new(Function.bind.apply(O, p)) + }.apply(null, arguments) + } + Function.prototype.bind || (j = [].slice, Function.prototype.bind = function(O) { + if ("function" != typeof this) throw new TypeError("bind101"); + var p = j.call(arguments, 1), + A = p.length, + m = this, + Q = function() {}, + B = function() { + return p.length = A, + p.push.apply(p, arguments), + m.apply(Q.prototype.isPrototypeOf(this) ? this: O, p) + }; + return this.prototype && (Q.prototype = this.prototype), + B.prototype = new Q, + B + }); + var Q = [, + function() { + g[g.length - 2] = g[g.length - 2] + g.pop() + }, + function() { + g.push(E[I++]) + }, + function() { + g[g.length - 2] = g[g.length - 2] * g.pop() + }, + , + function() { + g[g.length - 2] = g[g.length - 2] >= g.pop() + }, + function() { + var O = E[I++]; + g[O] = g[O] === undefined ? [] : g[O] + }, + function() { + g.length = E[I++] + }, + function() { + g[g.length - 2] = g[g.length - 2] & g.pop() + }, + function() { + g.push([g.pop(), g.pop()].reverse()) + }, + function() { + var O = E[I++], + p = O ? g.slice( - O) : []; + g.length -= O, + p.unshift(null); + O = g.pop(); + g.push(m(O[0][O[1]], p)) + }, + , + function() { + return !! A + }, + function() { + g[g.length - 1] = D[g[g.length - 1]] + }, + function() { + g.push(g[g.pop()[0]][0]) + }, + function() { + A = null + }, + function() { + var O = E[I++], + p = g[g.length - 2 - O]; + g[g.length - 2 - O] = g.pop(), + g.push(p) + }, + function() { + g.push(!1) + }, + function() { + g.push("") + }, + function() { + g.push(!g.pop()) + }, + function() { + g[g.length - 2] = g[g.length - 2] === g.pop() + }, + function() { + g[g.length - 2] = g[g.length - 2] ^ g.pop() + }, + function() { + var O = g.pop(); + g.push(delete O[0][O[1]]) + }, + , + function() { + g[g[g.length - 2][0]][0] = g[g.length - 1] + }, + , + function() { + g[g.length - 2] = g[g.length - 2] >> g.pop() + }, + function() { + g.pop() + }, + function() { + var O = E[I++], + p = O ? g.slice( - O) : []; + g.length -= O, + p.unshift(null), + g.push(m(g.pop(), p)) + }, + function() { + g.push(!0) + }, + function() { + g.push(null) + }, + function() { + g.push(g[E[I++]][0]) + }, + , + function() { + var O = g.pop(); + console.log('=-', O) + console.log(O[0][O[1]]) + g.push(O[0][O[1]]) + }, + , + function() { + I = E[I++] + }, + function() { + var O = g.pop(), + p = g.pop(); + console.log('=', O) + g.push([p[0][p[1]], O]) + }, + function() { + g[g.length - 2] = g[g.length - 2] > g.pop() + }, + function() { + var O = E[I++], + p = O ? g.slice( - O) : []; + g.length -= O; + O = g.pop(); + console.log(O[1], O[0]) + g.push(O[0][O[1]].apply(O[0], p)) + }, + , + function() { + g.push([D, g.pop()]) + }, + , + function() { + g.push(undefined) + }, + function() { + p.pop() + }, + function() { + g[g.length - 2] = g[g.length - 2] << g.pop() + }, + function() { + g[g.length - 2] = g[g.length - 2] == g.pop() + }, + function() { + var O = E[I++]; + g[g.length - 1] && (I = O) + }, + function() { + g[g.length - 2] = g[g.length - 2] - g.pop() + }, + function() { + var O = E[I++], + p = O ? g.slice( - O) : []; + g.length -= O, + g.push(g.pop().apply(D, p)) + }, + function() { + return ! 0 + }, + , + function() { + g[g.length - 2] = g[g.length - 2] in g.pop() + }, + function() { + g[g.length - 1] = E[I++] + }, + function() { + g[g.length - 2] = g[g.length - 2] / g.pop() + }, + , + function() { + g[g.length - 2] = g[g.length - 2] >>> g.pop() + }, + function() { + g.push(g[g.length - 1]) + }, + function() { + var O, p = []; + for (O in g.pop()) p.push(O); + g.push(p) + }, + function() { + g[g.length - 1] += String.fromCharCode(E[I++]) + }, + , + function() { + for (var A = E[I++], m = [], O = E[I++], p = E[I++], Q = [], B = 0; B < O; B++) m[E[I++]] = g[E[I++]]; + for (B = 0; B < p; B++) Q[B] = E[I++]; + g.push(function j() { + var O = m.slice(0); + O[0] = [this], + O[1] = [arguments], + O[2] = [j]; + for (var p = 0; p < Q.length && p < arguments.length; p++) 0 < Q[p] && (O[Q[p]] = [arguments[p]]); + return __TENCENT_CHAOS_VM(A, E, D, O, n, G, b, z) + }) + }, + function() { + g.push([E[I++]]) + }, + function() { + g[g.length - 1].length ? g.push(g[g.length - 1].shift(), !0) : g.push(undefined, !1) + }, + function() { + g[g.length - 2] = g[g.length - 2] | g.pop() + }, + function() { + g[g.length - 2] = g[g.length - 2] % g.pop() + }, + function() { + p.push([E[I++], g.length, E[I++]]) + }, + function() { + var O = g[g.length - 2]; + O[0][O[1]] = g[g.length - 1] + }, + function() { + g.push(typeof g.pop()) + }, + function() { + var O = g.pop(); + g.push([g[g.pop()][0], O]) + }, + function() { + throw g[g.length - 1] + }]; + for (0;;) try { + for (var B = !1; ! B;) B = Q[E[I++]](); + if (0, A) throw A; + return O ? (g.pop(), g.slice(3 + __TENCENT_CHAOS_VM.v)) : g.pop() + } catch(Y) { + 0; + var T = p.pop(); + if (T === undefined) throw Y; + A = Y, + I = T[0], + g.length = T[1], + T[2] && (g[T[2]][0] = A) + } + } + function n(O) { + for (var p, A, m = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".split(""), Q = String(O).replace(/[=]+$/, ""), B = 0, j = 0, I = ""; A = Q.charAt(j++);~A && (p = B % 4 ? 64 * p + A: A, B++%4) && (I += String.fromCharCode(255 & p >> ( - 2 * B & 6)))) A = function(O, p, A) { + if ("function" == typeof Array.prototype.indexOf) return Array.prototype.indexOf.call(O, p, A); + var m; + if (null == O) throw new TypeError('"array" is null or not defined'); + var Q = Object(O), + B = Q.length >>> 0; + if (0 == B) return - 1; + if (B <= (A |= 0)) return - 1; + for (m = Math.max(0 <= A ? A: B - Math.abs(A), 0); m < B; m++) if (m in Q && Q[m] === p) return m; + return - 1 + } (m, A); + return I + } + return __TENCENT_CHAOS_VM.v = 0, + __TENCENT_CHAOS_VM(0, + function(O) { + var p = O[0], + A = O[1], + m = [], + Q = n(p), + B = A.shift(), + j = A.shift(), + I = 0; + function E() { + for (; I === B;) m.push(j), + I++, + B = A.shift(), + j = A.shift() + } + for (var D = 0; D < Q.length; D++) { + var g = Q.charAt(D).charCodeAt(0); + E(), + m.push(g), + I++ + } + return E(), + m + } (["BwMGAiMwBwYGAgYDBgQGBSPvIwcHBgIGAwYEPQUfA0QhLigbI0AHGz0FHwNEEjplOng6cDpvOnI6dDpzJCExPQQ9BR8DRBI6TzpiOmo6ZTpjOnQNHAA4EjppCR8DQhsbOBI6bAkRQhsbOBI6ZTp4OnA6bzpyOnQ6cwkSOk86YjpqOmU6Yzp0DRwAQhsbQhAAGxgbGz0GHwNEEjpjOmE6bDpsJD0EEjplOng6cDpvOnI6dDpzRCEfBD0EEjplOng6cDpvOnI6dDpzRCEfAiYEGz0EEjpsRB1CGxs9BBI6ZTp4OnA6bzpyOnQ6c0QhMT0FPBQCAQUEBgMDGBsbPQQSOk86YjpqOmU6Yzp0DRwAGBsbPQUSOm1EHwNCGxs9BRI6Y0QfBEIbGz0FEjpkRCMQBwcGAgYDBgQGBT0GEjpvRB8DHwQmAhMuGyMfGxI6TzpiOmo6ZTpjOnQoEjpkOmU6ZjppOm46ZTpQOnI6bzpwOmU6cjp0OnkkHwMfBBI6TzpiOmo6ZTpjOnQNHAA4EjplOm46dTptOmU6cjphOmI6bDplCR1CGxs4EjpnOmU6dAkfBUIbGyYDGyoxPAEDBgUDBAVCGxs9BRI6ckQjPQcEBgIGAxI6Uzp5Om06YjpvOmwNQxI6dTpuOmQ6ZTpmOmk6bjplOmQUEy4jMBsSOlM6eTptOmI6bzpsKBI6dDpvOlM6dDpyOmk6bjpnOlQ6YTpnJCEuGyM6GxI6TzpiOmo6ZTpjOnQoEjpkOmU6ZjppOm46ZTpQOnI6bzpwOmU6cjp0OnkkHwMSOlM6eTptOmI6bzpsKBI6dDpvOlM6dDpyOmk6bjpnOlQ6YTpnJCESOk86YjpqOmU6Yzp0DRwAOBI6djphOmw6dTplCRI6TTpvOmQ6dTpsOmVCGxsmAxsSOk86YjpqOmU6Yzp0KBI6ZDplOmY6aTpuOmU6UDpyOm86cDplOnI6dDp5JB8DEjpfOl86ZTpzOk06bzpkOnU6bDplEjpPOmI6ajplOmM6dA0cADgSOnY6YTpsOnU6ZQkdQhsbJgMbKjE8AAEDQhsbPQUSOnREIzQHCAYCBgMGBAYFBgYfBAIBCC4bIxwbPQMfBx8DMAEYGxs9BA4CCAguGyMCGx8DMT0EDgIECC4jAhsfA0MSOm86YjpqOmU6Yzp0FC4jIxsfAy4jQRs9AxI6XzpfOmU6czpNOm86ZDp1Omw6ZUQhLhsjMBsfAzE9BRI6TzpiOmo6ZTpjOnQoEjpjOnI6ZTphOnQ6ZSQeJgEYGxs9BxI6ckQfBSYBGxI6TzpiOmo6ZTpjOnQoEjpkOmU6ZjppOm46ZTpQOnI6bzpwOmU6cjp0OnkkHwUSOmQ6ZTpmOmE6dTpsOnQSOk86YjpqOmU6Yzp0DRwAOBI6ZTpuOnU6bTplOnI6YTpiOmw6ZQkdQhsbOBI6djphOmw6dTplCR8DQhsbJgMbHwQCAgguIyYbHwNDEjpzOnQ6cjppOm46Zy0TLhsjAhsfAzk+LhsbIzAbPQYQABgbGz0HEjpkRB8FHwYjQQcFBgIGAz0EHwNEITE8AQEEAwMSOmI6aTpuOmQJHh8GJgImAxsjAhsjBj0FDjE8AQIHBQMEQhsbPQUSOm5EIwoHBgYCBgMGBD0EHwMuIzYbPQMSOl86XzplOnM6TTpvOmQ6dTpsOmVEIS4bIzAHBAYCHwMxPAEAAwMjHBsjJgcEBgI9AxI6ZDplOmY6YTp1Omw6dEQhMTwBAAMDGBsbPQUSOmREHwQSOmEfBCYDGx8EMTwBAQUFA0IbGz0FEjpvRCMfBwUGAgYDBgQSOk86YjpqOmU6Yzp0KBI6cDpyOm86dDpvOnQ6eTpwOmUkEjpoOmE6czpPOnc6bjpQOnI6bzpwOmU6cjp0OnkkEjpjOmE6bDpsJB8DHwQmAjE8AAIDBEIbGz0FEjpwRBJCGxsfBT0FEjpzRAIAQhAAGzABMTwHAAEDEjpBOnI6cjphOnkNHAA4AgAJIwYHDQYCBgMGBAYFBgYGBwYIBgkGCgYLPQYSOmk6bjpmOm86SzplOnkYGxs9BxI6TzpiOmo6ZTpjOnQNHAA4EjppOm46ZjpvCRI6dzppOm46ZDpvOncoEjpZOkU6bTpUOmo6aTpqOmk6SzpPOlo6TTpTOk46VDptOlM6TzpGOlk6YjpPOks6SjpVOlg6ZjpkOkU6QjpCOm0kIUIbGxgbGz0IEjpPOmI6ajplOmM6dA0cABgbGyM8D0EAPQsfBQI8MAEfDDABGBsbPQgSOmc6ZTp0OkQ6YTp0OmFEIzAHBAYCEjplOm46YzpvOmQ6ZTpVOlI6STpDOm86bTpwOm86bjplOm46dCgSOkU6cjpyOjofAwEmATE8AQADC0IbGysjNAYMQQwSOnc6aTpuOmQ6bzp3KBI6VDpEOkMkHwhCGxs9CBI6ZzplOnQ6STpuOmY6b0QjPAcGBgIGAz0DHwQCATABEjpnOmU6dDpHOnU6aTpkCSYAGBsbPQUSOnQ6bzprOmU6bjppOmREHwNCGxsfBTE8AgAEBQUHQhsbPQkfBQIDMAEYGxs9CBI6czplOnQ6RDphOnQ6YUQ9CRI6bTpTOmU6dEQhQhsbPQgSOmM6bDplOmE6cjpUOmNEPQkSOm06QzpsOmU6YTpyRCFCGxs9CBI6ZzplOnQ6RDphOnQ6YUQ9CRI6bTpHOmU6dDpEOmE6dDphRCFCGxs9CRI6bTpJOm46aTp0RCYAGysMKjE8AAMDBAVCGxs4AgEJIzQHCwYCBgMGBAYFBgYGBwYIBgkGCj0GHwUCAjABGBsbPQcSGBsbPQgSGBsbPQkSOlI6ZTpnOkU6eDpwKBI6XjpcOmQ6Kzo6Olw6ZDorOiQKARgbGz0KEjpPOmI6ajplOmM6dA0cADgSOm86bgkjEAcIBgIGAz0DPQQSOmc6ZTp0OkM6bzpvOms6aTplRBI6VDpEOkM6XzppOnQ6bzprOmU6biYBGBsbHwMuIzwbPQUSOnQ6ZTpzOnREHwMmAS4bPQYSOk06YTp0OmgoEjpmOmw6bzpvOnIkEjpNOmE6dDpoKBI6cjphOm46ZDpvOm0kJgACAyYBEjpNOmE6dDpoKBI6ZjpsOm86bzpyJBI6TTphOnQ6aCgSOnI6YTpuOmQ6bzptJCYAAgMmAQEYGxs9BxI6dzppOm46ZDpvOncoEjpfOlc6SDpCOkM6VzpXOk86YjpDOk46SzpZOmY6QzpKOlA6UDpiOmc6azpnOmU6ZzpEOkM6YzpNOmY6WjpEOk06QyQhLiNBGxI6dzppOm46ZDpvOncoEjpfOlc6SDpCOkM6VzpXOk86YjpDOk46SzpZOmY6QzpKOlA6UDpiOmc6azpnOmU6ZzpEOkM6YzpNOmY6WjpEOk06QyQmABI6ZzplOnQ6VDppOm06ZQkmAAI1AgA/GBsbPQQSOnM6ZTp0OkM6bzpvOms6aTplRBI6VDpEOkM6XzppOnQ6bzprOmU6bh8GEjo6AR8HASYCGyMCGz0DPQMSOnM6cDpsOmk6dEQSOjomARgbGz0GPQMCAEQhGBsbPQc9AwIBRCEYGxs9BxI6bDplOm46Zzp0OmhEIQILJS4bIwIbPQcfBwIALwI1AgA/GBsbKjE8BAAEBgUJBggHB0IbGzgSOmc6ZTp0CSMQBwUGAhI6QTpyOnI6YTp5DRwAOAIACR8DEjosAR8EAUIbGzgCAQkeQhsbOAICCQIBQhsbMTwCAAMIBAdCGxs4EjpnOmU6dDpHOnU6aTpkCSMmBwQGAh8DMTwBAAMIQhsbGBsbPQMSOmU6eDpwOm86cjp0OnNEHwpCGxsqMTwAAwMEBUIbGzgCAgkjBgcIBgIGAwYEBgUGBgYHIzoHCAYCBgMGBAYFBgY9BRI6ZTpuOmM6bzpkOmU6VTpSOkk6QzpvOm06cDpvOm46ZTpuOnQoHwMmARI6PQESOmU6bjpjOm86ZDplOlU6UjpJOkM6bzptOnA6bzpuOmU6bjp0KB8EJgEBGBsbPQU4DhI6OzogOmU6eDpwOmk6cjplOnM6PTpUOnU6ZTosOiA6MzoxOiA6RDplOmM6IDoyOjA6MzowOiA6MDowOjo6MDowOjo6MDowOiA6VTpUOkMBGBsbPQU4DhI6OzogOnA6YTp0Omg6PTovARgbGxI6ZDpvOmM6dTptOmU6bjp0KBI6YzpvOm86azppOmUkHwVCGxsjEA9BACsjOgYHQQcSOnc6aTpuOmQ6bzp3KBI6bDpvOmM6YTpsOlM6dDpvOnI6YTpnOmUkIS4bIxAbEjpsOm86YzphOmw6Uzp0Om86cjphOmc6ZSgSOnM6ZTp0Okk6dDplOm0kHwMfBCYCGxI6dzppOm46ZDpvOncoEjpzOmU6czpzOmk6bzpuOlM6dDpvOnI6YTpnOmUkIS4bIyMbEjpzOmU6czpzOmk6bzpuOlM6dDpvOnI6YTpnOmUoEjpzOmU6dDpJOnQ6ZTptJB8DHwQmAhsrDCoxPQY8AAIDBBgbGyMfBwwGAgYDBgQGBQYGBgcGCAYJBgo9BBI6ZDpvOmM6dTptOmU6bjp0KBI6YzpvOm86azppOmUkIRgbGz0FEjplOm46YzpvOmQ6ZTpVOlI6STpDOm86bTpwOm86bjplOm46dCgfAyYBGBsbPQY9BBI6aTpuOmQ6ZTp4Ok86ZkQfBSYBGBsbPQceGBsbHwYCAAIBLyUuGyNBGz0IPQQSOmk6bjpkOmU6eDpPOmZEEjo7HwYmAhgbGx8IAgACAS8tLhsjABs9CD0EEjpsOmU6bjpnOnQ6aEQhGBsbPQcSOmQ6ZTpjOm86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RTpCOkc6TDpfOmQ6ZTpiOnU6ZzpfOnI6ZTpuOmQ6ZTpyOmU6cjpfOmk6bjpmOm8mARI6VTpOOk06QTpTOks6RTpEOl86VjpFOk46RDpPOlI6XzpXOkU6QjpHOkwJISYBMAEYGxsrDB8DMT0KPAIABQgHBxgbGz0GHwUCCzABGBsbPQcfBQIMMAEYGxs9CB8GMAAYGxs9CRIYGxs9AxI6ZTp4OnA6bzpyOnQ6c0QSOk86YjpqOmU6Yzp0DRwAOBI6ZzplOnQJIwoHBQYCEjpBOnI6cjphOnkNHAA4AgAJHwMuGz0DHwQwABgbGx8DQhsbMTwCAAMJBApCGxtCGxsqMTwAAwMEBUIbGzgCCwkjBgcHBgIGAwYEBgUGBiM8BwcGAgYDBgQGBSMfD0EAKisxIzoGBkEGPQMSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpjOmE6bjp2OmE6cyYBGBsbPQQ9AxI6ZzplOnQ6QzpvOm46dDplOng6dEQSOnc6ZTpiOmc6bCYBLhs9AxI6ZzplOnQ6QzpvOm46dDplOng6dEQSOmU6eDpwOmU6cjppOm06ZTpuOnQ6YTpsOi06dzplOmI6ZzpsJgEYGxs9BBI6ZzplOnQ6Uzp1OnA6cDpvOnI6dDplOmQ6RTp4OnQ6ZTpuOnM6aTpvOm46c0QmABI6aTpuOmQ6ZTp4Ok86ZgkSOlc6RTpCOkc6TDpfOmQ6ZTpiOnU6ZzpfOnI6ZTpuOmQ6ZTpyOmU6cjpfOmk6bjpmOm8mAQIABS4bIzobHwQrMSorMQwqMT0GPAAAGBsbPQMSOmU6eDpwOm86cjp0OnNEHwZCGxsqMTwAAwMEBUIbGzgCDAkjAAcHBgIGAwYEBgUGBiMuBwQGAgYDPQMSOnI6ZTpwOmw6YTpjOmVEEjpSOmU6ZzpFOng6cA0SOiISOmcwAhI6XDoiJgISOnI6ZTpwOmw6YTpjOmUJEjpSOmU6ZzpFOng6cA0SOls6XDp1OjA6MDpmOmY6LTpcOnU6ZjpmOmY6ZjpdOisSOmcwAhImAjE9BjwAAQMYGxs9AxI6ZTp4OnA6bzpyOnQ6c0QfBkIbGyoxPAADAwQFQhsbOAINCSMmBwYGAgYDBgQGBT0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjNgcDBgISOkE6cjpyOmE6eQ0cADgCAAkSOm46YTp2Omk6ZzphOnQ6bzpyKBI6aDphOnI6ZDp3OmE6cjplOkM6bzpuOmM6dTpyOnI6ZTpuOmM6eSQhLjQAQhsbMTwAAEIbG0IbGyoxPAADAwQFQhsbOAIOCSMmBwcGAgYDBgQGBQYGIzAHBgYCBgMGAwYDBgMGAwYEIxwPQQArIyMGBUEFPQMSOnM6YzpyOmU6ZTpuKBI6dzppOmQ6dDpoJCESOi0BEjpzOmM6cjplOmU6bigSOmg6ZTppOmc6aDp0JCEBEjotARI6czpjOnI6ZTplOm4oEjphOnY6YTppOmw6SDplOmk6ZzpoOnQkIQESOi0BEjpzOmM6cjplOmU6bigSOmM6bzpsOm86cjpEOmU6cDp0OmgkIQEYGxs9Ax8DEjotEjpzOmM6cjplOmU6bigSOmQ6ZTp2Omk6YzplOlg6RDpQOkkkIRI6dTpuOmQ6ZTpmOmk6bjplOmQNFBMuGxI6KiNBGxI6czpjOnI6ZTplOm4oEjpkOmU6djppOmM6ZTpYOkQ6UDpJJCEBARgbGz0DHwMSOi0SOnM6YzpyOmU6ZTpuKBI6bDpvOmc6aTpjOmE6bDpYOkQ6UDpJJCESOnU6bjpkOmU6ZjppOm46ZTpkDRQTLhsSOiojQRsSOnM6YzpyOmU6ZTpuKBI6bDpvOmc6aTpjOmE6bDpYOkQ6UDpJJCEBARgbGz0DHwMSOi0SOnM6YzpyOmU6ZTpuKBI6cDppOng6ZTpsOkQ6ZTpwOnQ6aCQhEjp1Om46ZDplOmY6aTpuOmU6ZA0UEy4bEjp8IyYbEjp8AQEYGxs9Ax8DEjotEjpzOmM6cjplOmU6bigSOmY6bzpuOnQ6UzptOm86bzp0Omg6aTpuOmc6RTpuOmE6YjpsOmU6ZCQhEjp1Om46ZDplOmY6aTpuOmU6ZA0UEy4bEjoqIyMbEjpzOmM6cjplOmU6bigSOmY6bzpuOnQ6UzptOm86bzp0Omg6aTpuOmc6RTpuOmE6YjpsOmU6ZCQhLjQAIwcbAgEBARgbGx8DKzEMKjE9BjwAABgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjJgcFBgIGAz0DHwQwABgbGxI6QTpyOnI6YTp5DRwAOAIACR8DQhsbMTwBAAQGQhsbQhsbKjE8AAMDBAVCGxs4Ag8JIxAHBgYCBgMGBAYFPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMwBwMGAhI6QTpyOnI6YTp5DRwAOAIACRI6bjphOnY6aTpnOmE6dDpvOnIoEjpwOmw6YTp0OmY6bzpyOm0kIUIbGzE8AABCGxtCGxsqMTwAAwMEBUIbGzgCEAkjLgcKBgIGAwYEBgUGBgYHBggGCSM6BwcGAgYDBgQfAy4jPRs9BRI6bDplOm46Zzp0OmhEIR8GBRMuGyMCGz0EEjpPOmI6ajplOmM6dA0cABgbGz0EEjp4RD0DEjphOmw6cDpoOmFEIQIAP0IbGz0EEjp5RD0DEjpiOmU6dDphRCECAD9CGxs9BBI6ekQ9AxI6ZzphOm06bTphRCECAD9CGxs9BRI6cDp1OnM6aEQfBCYBGyoxPQk8AgEFCAYHAxgbGz0GHwUCETABGBsbPQcfBQISMAEYGxs9CBI6QTpyOnI6YTp5DRwAGBsbPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOm86bgkjBgcFBgIfAxI6dzppOm46ZDpvOncNEjpkOmU6djppOmM6ZTpvOnI6aTplOm46dDphOnQ6aTpvOm4fBDADGyoxPAIAAwYECUIbGzgSOmc6ZTp0CSMwBwQGAhI6QTpyOnI6YTp5DRwAOAIACRI6SjpTOk86TigSOnM6dDpyOmk6bjpnOmk6Zjp5JD0DEjpzOmw6aTpjOmVEJgAmAUIbGzgCAQkeQhsbOAICCQIBQhsbMTwBAAMIQhsbOBI6cjplOnM6ZTp0CSMfBwQGAj0DEjpsOmU6bjpnOnQ6aEQCAEIbGyoxPAEAAwhCGxtCGxsqMTwAAwMEBUIbGzgCEQkjAgcHBgIGAwYEBgUGBiMHBwYGAgYDBgQGBRI6ZDpvOmM6dTptOmU6bjp0KBI6YTpkOmQ6RTp2OmU6bjp0Okw6aTpzOnQ6ZTpuOmU6ciQhLhs9AxI6bzpuHwQBRB8FQhsbIzQbPQMSOmE6ZDpkOkU6djplOm46dDpMOmk6czp0OmU6bjplOnJEHwQfBR0mAxsqMT0GPAADAwQFGBsbPQMSOmU6eDpwOm86cjp0OnNEHwZCGxsqMTwAAwMEBUIbGzgCEgkjEAcGBgIGAwYEBgU9AxI6ZTp4OnA6bzpyOnQ6c0QCD0IbGyoxPAADAwQFQhsbOAITCSMwBwsGAgYDBgQGBQYGBgcGCAYJBgojAgcIBgIGAwYEHwUTLhsjAhsSMT0DKhgbGyMHD0EAPQMSOk46bzp0OiA6czp1OnA6cDpvOnI6dDplOmQYGxsrIx8GBkEGPQMfBz0FEjpnOmU6dDpQOmE6cjphOm06ZTp0OmU6ckQ9BRI6ZzplOnQ6RTp4OnQ6ZTpuOnM6aTpvOm5EEjpXOkU6QjpHOkw6XzpkOmU6Yjp1Omc6XzpyOmU6bjpkOmU6cjplOnI6XzppOm46ZjpvJgESOlU6TjpNOkE6UzpLOkU6RDpfOlI6RTpOOkQ6RTpSOkU6UjpfOlc6RTpCOkc6TAkhJgEwARgbGysMHwMxPQo8AgAFCAcHGBsbPQYfBQILMAEYGxs9Bx8FAgwwARgbGz0IHwYwABgbGz0JEhgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjHAcFBgISOkE6cjpyOmE6eQ0cADgCAAkfAy4bPQMfBDAAGBsbHwNCGxsxPAIAAwkECkIbG0IbGyoxPAADAwQFQhsbOAIUCSMQBwcGAgYDBgQGBQYGPQYCABgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjHAcEBgI9AzgOOBABEAACAQEYGzQAEAA/GxI6QTpyOnI6YTp5DRwAOAIACR8DQhsbMTwBAAMGQhsbQhsbKjE8AAMDBAVCGxs4AhUJIzQHBwYCBgMGBAYFBgY9Bh8FAhYwARgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjBwcEBgISOkE6cjpyOmE6eQ0cADgCAAkfA0IbGzE8AQADBkIbG0IbGyoxPAADAwQFQhsbOAIWCSM2BwcGAgYDBgQGBQYGPQYSOnc6aTpuOmQ6bzp3KBI6XzpXOkg6QjpDOlc6VzpPOmI6QzpOOks6WTpmOkM6SjpQOlA6YjpnOms6ZzplOmc6RDpDOmM6TTpmOlo6RDpNOkMkIS4jABsSOnc6aTpuOmQ6bzp3KBI6XzpXOkg6QjpDOlc6VzpPOmI6QzpOOks6WTpmOkM6SjpQOlA6YjpnOms6ZzplOmc6RDpDOmM6TTpmOlo6RDpNOkMkJgASOmc6ZTp0OlQ6aTptOmUJJgACNQIAPxgbGz0DEjplOng6cDpvOnI6dDpzRB8GQhsbKjE8AAMDBAVCGxs4AhcJIwcHBwYCBgMGBAYFBgY9Bh8FAhgwARgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjBgcEBgISOkE6cjpyOmE6eQ0cADgCAAkfAzAAQhsbMTwBAAMGQhsbQhsbKjE8AAMDBAVCGxs4AhgJIwYHCAYCBgMGBAYFBgYGByMQBwUGAgYDPQMfBDAAGBsbHwMdFBMuGyM0GwIoMQIAMT0HPAEABAYYGxs9Bh8FAhkwARgbGz0DEjplOng6cDpvOnI6dDpzRB8HQhsbKjE8AAMDBAVCGxs4AhkJIzoHBwYCBgMGBAYFBgYjNgcKBgIGAwYEBgUGBgYHBggjNA9BABErMSM2BglBCT0DEhgbGz0EEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6ZDppOnYmARgbGz0FEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6cCYBGBsbPQQSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZEQfBSYBGz0GPQQSOmM6bDpvOm46ZTpOOm86ZDplRBEmARgbGz0EEjphOnA6cDplOm46ZDpDOmg6aTpsOmREHwYmARs9BBI6aTpuOnM6ZTpyOnQ6QjplOmY6bzpyOmVEHwYfBSYCGz0DPQQSOm86dTp0OmU6cjpIOlQ6TTpMRCEuGz0EEjppOm46bjplOnI6SDpUOk06TEQhLhsSGBsbPQM9AxI6cjplOnA6bDphOmM6ZUQSOlI6ZTpnOkU6eDpwDRI6PDp8Oj46fDpcOi86fDpcOnM6fDoiOnw6JxI6ZzACEiYCGBsbPQM9AxI6dDpvOkw6bzp3OmU6cjpDOmE6czplRCYAGBsbPQcfAxI6ZDppOnY6ZDppOnY6ZDppOnY6cDpwOmE6ZDppOnYUGBsbHwcTLiMfGx8DEjpkOmk6djpkOmk6djpkOmk6djpwOnA6ZDppOnYUKzEMKjE9BjwAABgbGz0DEjplOng6cDpvOnI6dDpzRB8GQhsbKjE8AAMDBAVCGxs4AhoJIyMHCAYCBgMGBAYFBgYGByMjBwYGAgYDBgMjBw9BACMGD0EAKyMfBgVBBRI6ZDpvOmM6dTptOmU6bjp0KBI6VTpSOkwkISsrMQwrIwoGBEEEEjpkOm86Yzp1Om06ZTpuOnQoEjpsOm86YzphOnQ6aTpvOm4kEjpoOnI6ZTpmJCErMQwSMT0HPAAAGBsbPQYSGBsbPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMHBwgGAgYDBgQ9BRIYGxsjPQ9BACsjJgYGQQY9AxI6UjplOmc6RTp4OnANEjpcOmI6czppOmQ6PTooOlw6ZDorOikSMAISOmU6eDplOmMJHwcwACYBGBsbHwMuGyMfGz0FPQMCAUQhGBsbKwwSOkE6cjpyOmE6eQ0cADgCAAkfBUIbGzE8AgAFBgcHQhsbQhsbKjE8AAMDBAVCGxs4AhsJI0EHBwYCBgMGBAYFBgY9BhI6bjphOnY6aTpnOmE6dDpvOnIoEjpsOmE6bjpnOnU6YTpnOmU6cyQhGBsbPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMHBwYGAgYDBgQ9AxIYGxsfBS4jBhs9BRI6bDplOm46Zzp0OmhEIS4bIwIbPQQCABgbGz0EDj0FEjpsOmU6bjpnOnQ6aEQhBRMuGyM8Gz0DHwMSOiIBPQUfBEQhARI6IjosARgbGz0EOA44EAEQAAIBARgbNAAQAD8bIy49Az0DEjpzOnU6YjpzOnQ6ckQCAD0DEjpsOmU6bjpnOnQ6aEQhAgEvJgIYGxsSOkE6cjpyOmE6eQ0cADgCAAkSOlsfAwESOl0BQhsbOAIBCR5CGxs4AgIJAgFCGxsxPAEABQZCGxtCGxsqMTwAAwMEBUIbGzgCHAkjLgcKBgIGAwYEBgUGBgYHBgg9BhI6YzpvOm46czpvOmw6ZQ0uIyMbEjpjOm86bjpzOm86bDplKBI6bDpvOmckIRgbGz0HAgAYGxsjPQ9BACsjCgYJQQkSOk86YjpqOmU6Yzp0KBI6ZDplOmY6aTpuOmU6UDpyOm86cDplOnI6dDp5JCEuIzYbEjpPOmI6ajplOmM6dCgSOmQ6ZTpmOmk6bjplOlA6cjpvOnA6ZTpyOnQ6eSQSOmM6bzpuOnM6bzpsOmUNEjpsOm86ZxI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjIwcFBgI9AzgOAgEBGBsbHwQxPAIAAwcEBkIbGyYDGysMPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSM8BwQGAhI6QTpyOnI6YTp5DRwAOAIACR8DQhsbMTwBAAMHQhsbQhsbKjE8AAMDBAVCGxs4Ah0JIzQHBwYCBgMGBAYFBgY9Bh8FAh4wARgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjEAcEBgISOkE6cjpyOmE6eQ0cADgCAAkfAzAAQhsbMTwBAAMGQhsbQhsbKjE8AAMDBAVCGxs4Ah4JIxwHDQYCBgMGBAYFBgYGBwYIBgkGCgYLBgwjIwcGBgIGAyMcD0EAKyM8BgRBBBI6dzppOm46ZDpvOncoEjphOmQ6ZDpFOnY6ZTpuOnQ6TDppOnM6dDplOm46ZTpyJBI6bTplOnM6czphOmc6ZSMwBwkGAgYDBgQGBQYGIx8PQQArIwIGB0EHPQQSOko6UzpPOk4oEjpwOmE6cjpzOmUkPQMSOmQ6YTp0OmFEISYBGBsbPQU9BBI6bTplOnM6czphOmc6ZUQhGBsbPQUSOnQ6eTpwOmVEIQImFC4bIyMbPQUSOmQ6YTp0OmFEIUMSOm46dTptOmI6ZTpyFC4bIxAbPQg9BRI6ZDphOnQ6YUQhAgEvRBI6MUIbGysMKjE8AQEIBQMmAhsrDCoxPQo8AQAFBhgbGyMKBwUGAgYDBgQ9AxI6bjphOnY6aTpnOmE6dDpvOnIoEjp1OnM6ZTpyOkE6ZzplOm46dCQSOm06YTp0OmM6aCQSOlI6ZTpnOkU6eDpwDRI6YzpoOnI6bzptOmU6XDovOig6WzowOi06OTouOl06KzopEjppMAImARgbGx8DEy4bIyYbETE9BBI6cDphOnI6czplOkk6bjp0KD0DAgFEIQIKJgIYGxsfBAJGJS4jPBsfBAJhBRMxPQs8AAAYGxsjOgcDBgISOmQ6bzpjOnU6bTplOm46dCgSOmQ6bzpjOnU6bTplOm46dDpNOm86ZDplJCECCxQxPQw8AAAYGxs9BhI6QTpyOnI6YTp5DRwAOAIACRI6MEIbGzgCAQkSOjBCGxs4AgIJEjowQhsbOAIDCRI6MEIbGzgCBAkSOjBCGxs4AgUJEjowQhsbOAIGCRI6MEIbGzgCBwkSOjBCGxsYGxs9ByMcBwMGAioxPAAAGBsbPQgjQQcDBgIqMTwAABgbGz0JKhgbGz0HEjp0Om86Uzp0OnI6aTpuOmdEIx8HBQYCPQMCBUQSOjFCGxsfBEMSOm46dTptOmI6ZTpyFC4jABsSOmM6bDplOmE6cjpJOm46dDplOnI6djphOmwoHwQmARsSOnQ6ZDpjMTwCAAMGBAlCGxs9CBI6dDpvOlM6dDpyOmk6bjpnRCM8BwUGAj0DAgFEEjoxQhsbHwRDEjpuOnU6bTpiOmU6chQuIxwbEjpjOmw6ZTphOnI6STpuOnQ6ZTpyOnY6YTpsKB8EJgEbEjp0OmQ6YzE8AgADBgQJQhsbI0EHCgYCBgMjHA9BACsjHwYEQQQ9BRI6czplOnQ6STpuOnQ6ZTpyOnY6YTpsKCMfBwoGAgYDIy4PQQASOmM6bDplOmE6cjpJOm46dDplOnI6djphOmwoHwUmARsrIyYGBEEEHwYwAC4bIyMbEjpjOm86bjpzOm86bDplKBI6cDpyOm86ZjppOmw6ZSQfByYBGyorMT0IDjAAEy4bIzQbEjpjOmw6ZTphOnI6STpuOnQ6ZTpyOnY6YTpsKB8FJgErMRI6YzpvOm46czpvOmw6ZSgSOnA6cjpvOmY6aTpsOmUkHwkmARsSOmM6bzpuOnM6bzpsOmUoEjpwOnI6bzpmOmk6bDplOkU6bjpkJB8JJgEbKwwqMTwFAAUFBgYHBwgICQkCCiYCGBsbKwwqMTwFAAUJBgwHBwgLCQgwABsfCjAAGz0DEjplOng6cDpvOnI6dDpzRCM2BwcGAgYDBgQjNA9BAAIAKzEjPQYFQQU9Az0GEjpzOmw6aTpjOmVEAgAmARgbGz0DEjpyOmU6djplOnI6czplRCYAGxI6cDphOnI6czplOkk6bjp0KD0DEjpqOm86aTpuRBImAQIKJgIrMQwqMTwBAAYGQhsbKjE8AAMDBAVCGxs4Ah8JIwIHBwYCBgMGBAYFBgY9BhI6bjphOnY6aTpnOmE6dDpvOnIoEjp1OnM6ZTpyOkE6ZzplOm46dCQhGBsbPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMCBwQGAhI6QTpyOnI6YTp5DRwAOAIACR8DLhsSIzQbPQMSOnI6ZTpwOmw6YTpjOmVEEjpSOmU6ZzpFOng6cA0SOiISOmcwAhI6XDoiJgISOnI6ZTpwOmw6YTpjOmUJEjpSOmU6ZzpFOng6cA0SOls6XDp1OjA6MDpmOmY6LTpcOnU6ZjpmOmY6ZjpdOisSOmcwAhImAkIbGzE8AQADBkIbG0IbGyoxPAADAwQFQhsbOAIgCSM8BwYGAgYDBgQGBT0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjJgcEBgIGAz0DEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6ZDppOnYmARgbGxI6QTpyOnI6YTp5DRwAOAIACRI6bzpuOnQ6bzp1OmM6aDpzOnQ6YTpyOnQfAzMuNAIjIxsCAUIbGzE8AABCGxtCGxsqMTwAAwMEBUIbGzgCIQkjMAcGBgIGAwYEBgU9AxI6ZTp4OnA6bzpyOnQ6c0QSOk86YjpqOmU6Yzp0DRwAOBI6ZzplOnQJIxAHBAYCBgM9AxI6czpjOnI6ZTplOm4oEjp3Omk6ZDp0OmgkIRgbGxI6QTpyOnI6YTp5DRwAOAIACR8DQhsbMTwAAEIbG0IbGyoxPAADAwQFQhsbOAIiCSMGBwYGAgYDBgQGBT0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjPAcDBgISOkE6cjpyOmE6eQ0cADgCAAkSOnc6aTpuOmQ6bzp3KBI6XzpXOkg6QjpDOlc6VzpPOmI6QzpOOks6WTpmOkM6SjpQOlA6YjpnOms6ZzplOmc6RDpDOmM6TTpmOlo6RDpNOkMkIS4jABsSOnc6aTpuOmQ6bzp3KBI6XzpXOkg6QjpDOlc6VzpPOmI6QzpOOks6WTpmOkM6SjpQOlA6YjpnOms6ZzplOmc6RDpDOmM6TTpmOlo6RDpNOkMkJgASOmc6ZTp0OlQ6aTptOmUJJgACNQIAP0IbGzE8AABCGxtCGxsqMTwAAwMEBUIbGzgCIwkjBgcSBgIGAwYEBgUGBgYHBggGCQYKBgsGDAYNBg4GDwYQBhEjHwcLBgIGAwYEBgU9Ax8DLhsSOnc6aTpuOmQ6bzp3KBI6ZTp2OmU6bjp0JCEYGxsf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dTpjOmg6ZTpzRCEuIzYbPQMSOnQ6bzp1OmM6aDplOnNEEjpsOmU6bjpnOnQ6aCQhLhsjIxs9BD0DEjp0Om86dTpjOmg6ZTpzRAIAJBI6YzpsOmk6ZTpuOnQ6WCQhGBsbPQU9AxI6dDpvOnU6YzpoOmU6c0QCACQSOmM6bDppOmU6bjp0OlkkIRgbGxI6TzpiOmo6ZTpjOnQNHAA4Ejp4CR8EAgA/QhsbOBI6eQkfBQIAP0IbGzE9BjwAAQMYGxsjEAcGBgIGAwYEBgU9AxI6YzpoOmE6bjpnOmU6ZDpUOm86dTpjOmg6ZTpzRCEuIzwbPQMSOmM6aDphOm46ZzplOmQ6VDpvOnU6YzpoOmU6c0QSOmw6ZTpuOmc6dDpoJCEuGyMmGz0EPQMSOmM6aDphOm46ZzplOmQ6VDpvOnU6YzpoOmU6c0QCACQSOmM6bDppOmU6bjp0OlgkIRgbGz0FPQMSOmM6aDphOm46ZzplOmQ6VDpvOnU6YzpoOmU6c0QCACQSOmM6bDppOmU6bjp0OlkkIRgbGxI6TzpiOmo6ZTpjOnQNHAA4Ejp4CR8EAgA/QhsbOBI6eQkfBQIAP0IbGzE9BzwAAQMYGxsjPAcIBgIGAwYEBgUGBj0DEjpwOmE6ZzplOlhEIS4bIwYPQQA9BD0DEjpjOmw6aTplOm46dDpYRCEYGxs9BT0DEjpjOmw6aTplOm46dDpZRCEYGxsrIwoGB0EHPQQ9AxI6YzpsOmk6ZTpuOnQ6WEQhEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JBI6czpjOnI6bzpsOmw6TDplOmY6dCQhARI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOmM6bDppOmU6bjp0Okw6ZTpmOnQkIS8YGxs9BT0DEjpjOmw6aTplOm46dDpZRCESOmQ6bzpjOnU6bTplOm46dCgSOmI6bzpkOnkkEjpzOmM6cjpvOmw6bDpUOm86cCQhARI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOmM6bDppOmU6bjp0OlQ6bzpwJCEvGBsbKwwjBxs9BD0DEjpwOmE6ZzplOlhEIRgbGz0FPQMSOnA6YTpnOmU6WUQhGBsbEjpPOmI6ajplOmM6dA0cADgSOngJHwQCAD9CGxs4Ejp5CR8FAgA/QhsbMT0IPAABAxgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4Ejp0Om86dTpjOmg6Uzp0OmE6cjp0OkU6djplOm46dAkfBkIbGzgSOm06bzp1OnM6ZTpNOm86djplOkU6djplOm46dAkfCEIbGzgSOnQ6bzp1OmM6aDpFOm46ZDpFOnY6ZTpuOnQJHwdCGxtCGxsqMTwAAwMEBUIbGzgCJQkjBgcGBgIGAwYEBgU9BBI6aTpzOkk6RTo5OkI6ZTpsOm86d0QjNgcHBgIGAwYEBgUGBj0DEjpuOmE6djppOmc6YTp0Om86cigSOnU6czplOnI6QTpnOmU6bjp0JBI6dDpvOkw6bzp3OmU6cjpDOmE6czplJCYAGBsbPQQ9AxI6aTpuOmQ6ZTp4Ok86ZkQSOm06czppOmUmAQIAAgEvJRgbGz0FKhgbGz0GKhgbGx8ELhsjMBs9BT0DEjptOmE6dDpjOmhEEjpSOmU6ZzpFOng6cA0SOm06czppOmU6IDooOls6XDpkOi46XTorOikSMAImARgbGx8FLiM2GxI6cDphOnI6czplOkk6bjp0KD0FAgFEIQIKJgICCQUTLhsjAhsdMT0GEjpkOm86Yzp1Om06ZTpuOnQoEjpkOm86Yzp1Om06ZTpuOnQ6TTpvOmQ6ZSQhGBsbHwYuIyYbHwYCCQUTLhsjHxsdMRExPAAAQhsbKjE8AAMDBAVCGxs4AiYJIxwHBgYCBgMGBAYFPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMcBwUGAgYDBgQ9AxI6dzppOm46ZDpvOncoEjppOm46bjplOnI6VzppOmQ6dDpoJCEuGxI6ZDpvOmM6dTptOmU6bjp0KBI6ZDpvOmM6dTptOmU6bjp0OkU6bDplOm06ZTpuOnQkEjpjOmw6aTplOm46dDpXOmk6ZDp0OmgkIS4bEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JBI6YzpsOmk6ZTpuOnQ6VzppOmQ6dDpoJCEYGxs9BBI6dzppOm46ZDpvOncoEjppOm46bjplOnI6SDplOmk6ZzpoOnQkIS4bEjpkOm86Yzp1Om06ZTpuOnQoEjpkOm86Yzp1Om06ZTpuOnQ6RTpsOmU6bTplOm46dCQSOmM6bDppOmU6bjp0Okg6ZTppOmc6aDp0JCEuGxI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOmM6bDppOmU6bjp0Okg6ZTppOmc6aDp0JCEYGxsSOkE6cjpyOmE6eQ0cADgCAAkSOlsfAwESOiwBHwQBEjpdAUIbGzgCAQkeQhsbOAICCQIBQhsbMTwAAEIbG0IbGyoxPAADAwQFQhsbOAInCSMfBwgGAgYDBgQGBQYGBgcjOgcHBgIGAwYEBgUjHA9BABI6dDpvOnArMSMuBgZBBj0DEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6aTpmOnI6YTptOmUmARgbGz0DEjpzOnQ6eTpsOmVEEjpkOmk6czpwOmw6YTp5JBI6bjpvOm46ZUIbGxI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZCQfAyYBGz0EPQMSOmM6bzpuOnQ6ZTpuOnQ6VzppOm46ZDpvOndEEjp0Om86cCQhEjp3Omk6bjpkOm86dw0UGBsbEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JBI6cjplOm06bzp2OmU6QzpoOmk6bDpkJB8DJgEbHwQuGxI6aTpmOnI6YTptOmUjJhsSOnQ6bzpwKzEMKjE9BzwAABgbGz0GHwUCHjABGBsbPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMfBwQGAhI6QTpyOnI6YTp5DRwAOAIACR8DMABCGxsxPAEAAwdCGxtCGxsqMTwAAwMEBUIbGzgCKAkjQQcIBgIGAwYEBgUGBgYHPQYfBQIpMAEYGxs9Bx8GEjpkOm86Yzp1Om06ZTpuOnQoEjpyOmU6ZjplOnI6cjplOnIkIS4bEjABEjo/OnI6YTpuOmQ6PQECARgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjIwcEBgISOkE6cjpyOmE6eQ0cADgCAAkfA0IbGzE8AQADB0IbG0IbGyoxPAADAwQFQhsbOAIpCSMjBwcGAgYDBgQGBQYGIxwHBQYCBgMGBB8DLhsjBxs9BD0DEjppOm46ZDplOng6TzpmRBI6PyYBGBsbHwQCACUuGyM0Gz0DPQMSOnM6dTpiOnM6dDpyOmk6bjpnRAIAHwQmAhgbGz0DDjE9BjwAAQMYGxs9AxI6ZTp4OnA6bzpyOnQ6c0QfBkIbGyoxPAADAwQFQhsbOAIqCSMuBwoGAgYDBgQGBQYGBgcGBz0GAgAYGxsjHA9BACsjPQYIQQgfBgIALS4bIyYbIwoPQQArIwoGCUEJEjpIOk06SzpmOkM6YjpXKAJCGxsrDBI6dzppOm46ZDpvOncoEjpIOk06SzpmOkM6YjpXJCECFBMuGyMjGz0GAgEYGxsSOnc6aTpuOmQ6bzp3KBI6SDpNOks6ZjpDOmI6VyQWGysMPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMHBwgGAgYDBgQGBSMuD0EAPQcCBBgbGysjIwYGQQY9AxI6TTphOnQ6aCgSOmY6bDpvOm86ciQSOk06YTp0OmgoEjpyOmE6bjpkOm86bSQmAAIDJgEYGxs9BBI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOnM6cDphOm4mARgbGz0EEjpzOmU6dDpBOnQ6dDpyOmk6Yjp1OnQ6ZUQhEy4bPQQSOnI6ZTptOm86djplOkE6dDp0OnI6aTpiOnU6dDplRCETLhs9BBI6cjplOm06bzp2OmU6QzpoOmk6bDpkRCETLhs9BBI6czplOnQ6QTp0OnQ6cjppOmI6dTp0OmVEEjppOmQfAyYCGxI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQhLhsSOmQ6bzpjOnU6bTplOm46dCgSOmc6ZTp0OkU6bDplOm06ZTpuOnQ6czpCOnk6VDphOmc6TjphOm06ZSQSOmI6bzpkOnkmAQIACSESOmE6cDpwOmU6bjpkOkM6aDppOmw6ZAkfBCYBGx8EEjpkOm86Yzp1Om06ZTpuOnQoEjpnOmU6dDpFOmw6ZTptOmU6bjp0OkI6eTpJOmQkHwMmAS0TLhsjIxs9BwIDGBsbEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JCEuGxI6ZDpvOmM6dTptOmU6bjp0KBI6ZzplOnQ6RTpsOmU6bTplOm46dDpzOkI6eTpUOmE6ZzpOOmE6bTplJBI6YjpvOmQ6eSYBAgAJIRI6cjplOm06bzp2OmU6QzpoOmk6bDpkCR8EJgEbIzYbPQcCAhgbGysMEjpBOnI6cjphOnkNHAA4AgAJHwdCGxsxPAEABwZCGxtCGxsqMTwAAwMEBUIbGzgCKwkjMAcVBgIGAwYEBgUGBgYHBggGCQYKBgsGDAYNBg4GDwYQBhEGEgYTBhQjOgcEBgIGAz0DEjpyOmU6cDpsOmE6YzplRBI6UjplOmc6RTp4OnANEjpeOlw6UxIwAiM2BwQGAgYDPQMSOnQ6bzpVOnA6cDplOnI6QzphOnM6ZUQmADE8AAEDJgIxPQk8AAEDGBsbIzYHCAYCBgMGBAYFBgY9BR8HHwMwARgbGz0GHwMfBDMuGxI6dzplOmI6azppOnQfBQEfBDMuGxI6bTpvOnofBQEfBDMuGxI6bx8FAR8EMy4bEjptOnMfBQEfBDMTEyMQGx0YGxsfBjE9CjwBAgcJAwQYGxsjMAcEBgIfAxI6Yzp1OnM6dDpvOm06RTpsOmU6bTplOm46dDpzEjp3Omk6bjpkOm86dw0wAjE9CzwBAAMKGBsbIx8HBAYCHwMSOm86djplOnI6czpjOnI6bzpsOmw6LTpiOmU6aDphOnY6aTpvOnISOmE6dTp0Om8wAjE9DDwBAAMHGBsbIz0HBAYCHwMSOjo6OjptOmE6cjprOmU6cjABMT0NPAEAAwgYGxsjAgcJBgIGAwYEBgUGBgYGPQMRGBsbIy4PQQArIwIGB0EHPQQSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpkOmk6diYBGBsbEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JBI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkJB8EJgEbPQQSOmk6bjpuOmU6cjpIOlQ6TTpMRBI6PDpzOmU6Yzp0Omk6bzpuOj46PDpoOjM6IDppOmQ6PTonOmY6aTpyOnM6dDpoOic6PjpnOnI6ZTplOm46PDovOmg6Mzo+Ojw6cDogOmk6ZDo9Oic6ZjppOnI6czp0OnA6Jzo+OnI6ZTpkOjw6LzpwOj46ZzpyOmU6ZTpuOjw6LzpzOmU6Yzp0Omk6bzpuOj46PDpzOmU6Yzp0Omk6bzpuOiA6YzpsOmE6czpzOj06Jzp3Omk6dDpoOi06cjplOnY6ZTpyOnQ6Jzo+Ojw6aDozOiA6aTpkOj06JzpzOmU6YzpvOm46ZDpoOic6PjpiOmw6YTpjOms6PDovOmg6Mzo+Ojw6cDogOmk6ZDo9Oic6czplOmM6bzpuOmQ6cDonOj46cjplOmQ6PDovOnA6PjpiOmw6YTpjOms6PDovOnM6ZTpjOnQ6aTpvOm46PkIbGz0FEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6czp0Onk6bDplJgEYGxs9BRI6aTpuOm46ZTpyOkg6VDpNOkxEEjpzOmU6Yzp0Omk6bzpuOiA6ezogOmM6bzpsOm86cjo6OiA6ZzpyOmU6ZTpuOiA6fTogOnA6IDp7OiA6YzpvOmw6bzpyOjo6IDpyOmU6ZDogOn06IDpzOmU6Yzp0Omk6bzpuOi46dzppOnQ6aDotOnI6ZTp2OmU6cjp0OiA6ezogOmM6bzpsOm86cjo6OiA6cjplOnY6ZTpyOnQ6IDp9QhsbEjpkOm86Yzp1Om06ZTpuOnQoEjpoOmU6YTpkJBI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkJB8FJgEbIwoPQQArIz0GCEEIPQMSOmc6ZTp0OkM6bzptOnA6dTp0OmU6ZDpTOnQ6eTpsOmUoEjpkOm86Yzp1Om06ZTpuOnQoEjpnOmU6dDpFOmw6ZTptOmU6bjp0OkI6eTpJOmQkEjpmOmk6cjpzOnQ6aCYBHiYCEjpnOmU6dDpQOnI6bzpwOmU6cjp0Onk6VjphOmw6dTplCRI6YzpvOmw6bzpyJgESOnI6ZzpiOig6MDosOiA6MToyOjg6LDogOjA6KRQuIwAbEjpnOmU6dDpDOm86bTpwOnU6dDplOmQ6Uzp0Onk6bDplKBI6ZDpvOmM6dTptOmU6bjp0KBI6ZzplOnQ6RTpsOmU6bTplOm46dDpCOnk6STpkJBI6ZjppOnI6czp0OnAmAR4mAhI6ZzplOnQ6UDpyOm86cDplOnI6dDp5OlY6YTpsOnU6ZQkSOmM6bzpsOm86ciYBEjpyOmc6YjooOjI6NTo1Oiw6IDowOiw6IDowOikULiMjGxI6ZzplOnQ6QzpvOm06cDp1OnQ6ZTpkOlM6dDp5Omw6ZSgSOmQ6bzpjOnU6bTplOm46dCgSOmc6ZTp0OkU6bDplOm06ZTpuOnQ6Qjp5Okk6ZCQSOnM6ZTpjOm86bjpkOmgmAR4mAhI6ZzplOnQ6UDpyOm86cDplOnI6dDp5OlY6YTpsOnU6ZQkSOmM6bzpsOm86ciYBEjpyOmc6YjooOjA6LDogOjA6LDogOjA6KRQuIzAbEjpnOmU6dDpDOm86bTpwOnU6dDplOmQ6Uzp0Onk6bDplKBI6ZDpvOmM6dTptOmU6bjp0KBI6ZzplOnQ6RTpsOmU6bTplOm46dDpCOnk6STpkJBI6czplOmM6bzpuOmQ6cCYBHiYCEjpnOmU6dDpQOnI6bzpwOmU6cjp0Onk6VjphOmw6dTplCRI6YzpvOmw6bzpyJgESOnI6ZzpiOig6Mjo1OjU6LDogOjA6LDogOjA6KRQYGxsrDBI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOnI6ZTptOm86djplOkM6aDppOmw6ZCQfBCYBGz0FEjpyOmU6bTpvOnY6ZUQmABsrDB8DMT0OPAAAGBsbIzQHCQYCBgMGBAYFBgYGBj0DERgbGyM0D0EAKyM6BgdBBz0EEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6ZDppOnYmARgbGxI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZCQfBCYBGz0EEjppOm46bjplOnI6SDpUOk06TEQSOjw6cDogOmM6bDphOnM6czo9OiI6ZjppOnI6czp0OnA6Ijo+OmY6aTpyOnM6dDpwOjw6LzpwOj46CjogOiA6IDogOiA6IDogOiA6PDpwOiA6aTpkOj06IjpzOmU6YzpvOm46ZDpwOiI6PjpzOmU6YzpvOm46ZDpwOjw6LzpwOj46CjogOiA6IDogOiA6IDogOiA6PDpwOiA6YzpsOmE6czpzOj06Ijp0Omg6aTpyOmQ6cDoiOj46dDpoOmk6cjpkOnA6PDovOnA6PjoKOiA6IDogOiA6IDogOiA6IDo8Omg6Mjo+Ogo6IDogOiA6IDogOiA6IDogOiA6IDo8OnM6cDphOm46IDpjOmw6YTpzOnM6PToiOmY6bzpvOiI6PjpmOm86bzo8Oi86czpwOmE6bjo+Ogo6IDogOiA6IDogOiA6IDogOiA6IDo8OnM6cDphOm46IDpjOmw6YTpzOnM6PToiOmI6YTpyOiI6IDppOmQ6PToiOmI6YTpyOiI6PjpiOmE6cjo8Oi86czpwOmE6bjo+Ogo6IDogOiA6IDogOiA6IDogOjw6LzpoOjI6PkIbGz0FEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6czp0Onk6bDplJgEYGxs9BRI6aTpuOm46ZTpyOkg6VDpNOkxEEjpiOm86ZDp5OiA6OjpuOm86dDooOi46ZjppOnI6czp0OnA6LDogOi46dDpoOmk6cjpkOnA6KTogOns6CjogOiA6IDogOiA6IDogOiA6YzpvOmw6bzpyOjo6IDpiOmw6dTplOjs6CjogOiA6IDogOiA6IDp9Ogo6IDogOiA6IDogOiA6aDoyOiA6OjpuOm86dDooOnM6cDphOm46LjpmOm86bzopOiA6ezoKOiA6IDogOiA6IDogOiA6IDpjOm86bDpvOnI6OjogOnI6ZTpkOjs6CjogOiA6IDogOiA6IDp9QhsbEjpkOm86Yzp1Om06ZTpuOnQoEjpoOmU6YTpkJBI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkJB8FJgEbI0EPQQArIzAGCEEIPQMSOmc6ZTp0OkM6bzptOnA6dTp0OmU6ZDpTOnQ6eTpsOmUoEjpkOm86Yzp1Om06ZTpuOnQoEjpnOmU6dDpFOmw6ZTptOmU6bjp0OkI6eTpJOmQkEjpzOmU6YzpvOm46ZDpwJgEeJgISOmc6ZTp0OlA6cjpvOnA6ZTpyOnQ6eTpWOmE6bDp1OmUJEjpjOm86bDpvOnImARI6cjpnOmI6KDowOiw6IDowOiw6IDoyOjU6NTopFC4jOhsSOmc6ZTp0OkM6bzptOnA6dTp0OmU6ZDpTOnQ6eTpsOmUoEjpkOm86Yzp1Om06ZTpuOnQoEjpnOmU6dDpFOmw6ZTptOmU6bjp0OkI6eTpJOmQkEjpiOmE6ciYBHiYCEjpnOmU6dDpQOnI6bzpwOmU6cjp0Onk6VjphOmw6dTplCRI6YzpvOmw6bzpyJgESOnI6ZzpiOig6Mjo1OjU6LDogOjA6LDogOjA6KRQYGxsrDBI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOnI6ZTptOm86djplOkM6aDppOmw6ZCQfBCYBGz0FEjpyOmU6bTpvOnY6ZUQmABsrDB8DMT0PPAAAGBsbIzoHBgYCBgMGBD0DERgbGyMGD0EAKyMKBgVBBT0DEjp3Omk6bjpkOm86dygSOm06YTp0OmM6aDpNOmU6ZDppOmEkEjooOnA6cjplOmY6ZTpyOnM6LTpjOm86bDpvOnI6LTpzOmM6aDplOm06ZTo6OiA6ZDphOnI6azopJgESOm06YTp0OmM6aDplOnMJIS4bEjp3Omk6bjpkOm86dygSOm06YTp0OmM6aDpNOmU6ZDppOmEkEjooOnA6cjplOmY6ZTpyOnM6LTpjOm86bDpvOnI6LTpzOmM6aDplOm06ZTo6OiA6bDppOmc6aDp0OikmARI6bTphOnQ6YzpoOmU6cwkhLhsSOnc6aTpuOmQ6bzp3KBI6bTphOnQ6YzpoOk06ZTpkOmk6YSQSOig6cDpyOmU6ZjplOnI6czotOmM6bzpsOm86cjotOnM6YzpoOmU6bTplOjo6IDpuOm86LTpwOnI6ZTpmOmU6cjplOm46YzplOikmARI6bTphOnQ6YzpoOmU6cwkhGBsbKwwfAzE9EDwAABgbGyM9BwYGAgYDBgQ9AxEYGxsjPA9BACsjPAYFQQU9AxI6dzppOm46ZDpvOncoEjptOmE6dDpjOmg6TTplOmQ6aTphJBI6KDpwOnI6ZTpmOmU6cjpzOi06cjplOmQ6dTpjOmU6ZDotOm06bzp0Omk6bzpuOjo6IDpyOmU6ZDp1OmM6ZTopJgESOm06YTp0OmM6aDplOnMJIS4bEjp3Omk6bjpkOm86dygSOm06YTp0OmM6aDpNOmU6ZDppOmEkEjooOnA6cjplOmY6ZTpyOnM6LTpyOmU6ZDp1OmM6ZTpkOi06bTpvOnQ6aTpvOm46OjogOm46bzotOnA6cjplOmY6ZTpyOmU6bjpjOmU6KSYBEjptOmE6dDpjOmg6ZTpzCSEYGxsrDB8DMT0RPAAAGBsbI0EHCAYCBgMGBAYFBgY9AxEYGxsjAg9BACsjBwYHQQc9BBI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOmQ6aTp2JgEYGxsSOmQ6bzpjOnU6bTplOm46dCgSOmI6bzpkOnkkEjphOnA6cDplOm46ZDpDOmg6aTpsOmQkHwQmARs9BBI6aTpuOm46ZTpyOkg6VDpNOkxEEjo8OmQ6aTp2OiA6YzpsOmE6czpzOj06IjpsOmU6Zjp0OiI6PjoKOiA6IDogOiA6IDogOiA6IDo8OmQ6aTp2OiA6aTpkOj06IjpzOnQ6YTpyOnQ6Qjp1OnQ6dDpvOm46IjogOmM6bDphOnM6czo9OiI6Yjp1OnQ6dDpvOm46Ijo+Ogo6IDogOiA6IDogOiA6IDogOiA6IDpTOnQ6YTpyOnQ6CjogOiA6IDogOiA6IDogOiA6PDovOmQ6aTp2Oj46CjogOiA6IDogOiA6IDogOiA6PDpoOjI6PjpQOnI6ZTp2Omk6ZTp3Ojw6LzpoOjI6PjoKOiA6IDogOiA6IDogOiA6IDo8OnY6aTpkOmU6bzogOmk6ZDo9OiI6cDpyOmU6djppOmU6dzoiOiA6dzppOmQ6dDpoOj06IjoxOjY6MDoiOiA6aDplOmk6ZzpoOnQ6PToiOjE6MjowOiI6IDphOnU6dDpvOnA6bDphOnk6IDptOnU6dDplOmQ6Pjo8Oi86djppOmQ6ZTpvOj46CjogOiA6IDogOiA6IDo8Oi86ZDppOnY6PkIbGz0FEjpkOm86Yzp1Om06ZTpuOnQoEjpnOmU6dDpFOmw6ZTptOmU6bjp0OkI6eTpJOmQkEjpwOnI6ZTp2Omk6ZTp3JgEYGxs9BRI6YzphOnA6dDp1OnI6ZTpTOnQ6cjplOmE6bUQ9BRI6YzphOnA6dDp1OnI6ZTpTOnQ6cjplOmE6bUQhLhs9BRI6bTpvOno6QzphOnA6dDp1OnI6ZTpTOnQ6cjplOmE6bUQhLhs9BRI6bTpzOkM6YTpwOnQ6dTpyOmU6Uzp0OnI6ZTphOm1EIS4bPQUSOnc6ZTpiOms6aTp0OkM6YTpwOnQ6dTpyOmU6Uzp0OnI6ZTphOm1EIUIbGz0DPQUSOmM6YTpwOnQ6dTpyOmU6Uzp0OnI6ZTphOm1EIRMTGBsbEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JBI6cjplOm06bzp2OmU6QzpoOmk6bDpkJB8EJgEbKwwfAzE9EjwAABgbGyMHBwMGAhI6cjplOnE6dTplOnM6dDpNOkk6RDpJOkE6YzpjOmU6czpzEjpuOmE6djppOmc6YTp0Om86cg0zMT0TPAAAGBsbIzoHAwYCEjpzOmU6cjp2Omk6YzplOlc6bzpyOms6ZTpyEjpuOmE6djppOmc6YTp0Om86cg0zLiMQGxI6Uzp5Om46YzpNOmE6bjphOmc6ZTpyEjp3Omk6bjpkOm86dw0zMT0UPAAAGBsbPQYjQQcFBgIGAwYEPQMSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpkOmk6diYBGBsbPQQSOlc6ZTpiOms6aTp0OiA6TzogOk06bzp6OiA6TTpzEjpzOnA6bDppOnQJEjogJgEYGxsjHwcHBgIGAwYEHwM9BRI6czp0Onk6bDplRCEzLhsjHxsdMT0DPQMSOnI6ZTpwOmw6YTpjOmVEEjpSOmU6ZzpFOng6cA0SOl46WzphOi06ejpdEjACIwIHBAYCBgM9AxI6dDpvOlU6cDpwOmU6cjpDOmE6czplRCYAMTwAAQMmAhgbGz0EPQYSOmw6ZTpuOmc6dDpoRCEYGxs9BDgOOBABEAACAS8YGzQAEAA/LhsjQRs9Bh8ERCEfAwE9BRI6czp0Onk6bDplRCEzLhsjPBsdMSM2ETE8AgEFAwYEAzE8AAAwABgbGz0HIxAHDQYCBgMGBAYFBgYGBwYIBgkGCj0FEjotOnc6ZTpiOms6aTp0Oi06IDotOm86LTogOi06bTpvOno6LTogOi06bTpzOi0SOnM6cDpsOmk6dAkSOiAmARgbGz0GEjpBOnI6cjphOnkNHAA4AgAJHwNCGxsYGxs9BwIAGBsbPQcOPQUSOmw6ZTpuOmc6dDpoRCEFEy4bI0EbPQYSOnA6dTpzOmhEPQUfB0QhHwMBJgEbPQc4DjgQARAAAgEBGBs0ABAAPxsjCiMwD0EAKyMCBgtBCxI6dzppOm46ZDpvOncoEjpDOlM6UyQhLiMuGxI6dzppOm46ZDpvOncoEjpDOlM6UyQSOnM6dTpwOnA6bzpyOnQ6cyQhLhsjQRs9CCoYGxs9CQIAGBsbPQkOPQYSOmw6ZTpuOmc6dDpoRCEFEy4bIwAbHwRDEjp1Om46ZDplOmY6aTpuOmU6ZBQuGz0IEjp3Omk6bjpkOm86dygSOkM6UzpTJBI6czp1OnA6cDpvOnI6dDpzJD0GHwlEIR8EJgIYGxsjNBs9CBI6dzppOm46ZDpvOncoEjpDOlM6UyQSOnM6dTpwOnA6bzpyOnQ6cyQ9Bh8JRCEmARgbGz0IDh0ULhsjHBsfCCsxPQk4DjgQARAAAgEBGBs0ABAAPxsjACsMHwwfAzABMTwBAgwGAwQYGxs9CCMjBwgGAgYDBgQGBQYGPQQRGBsbIxAPQQArIwoGB0EHPQUSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpzOnQ6eTpsOmUmARgbGz0FEjppOm46bjplOnI6SDpUOk06TEQfAxI6ezp9AUIbGxI6ZDpvOmM6dTptOmU6bjp0KBI6aDplOmE6ZCQSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZCQfBSYBGz0EPQUSOnM6aDplOmU6dEQSOmM6czpzOlI6dTpsOmU6cyQSOmw6ZTpuOmc6dDpoJCECARQYGxs9BRI6cjplOm06bzp2OmVEJgAbKwwfBDE8AAEDGBsbPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMGBxEGAgYDBgQGBSM9D0EAKyMwBgZBBj0DEjpBOnI6cjphOnkNHAAYGxs9AxI6dTpuOnM6aDppOmY6dEQSOk46dTptOmI6ZTpyKB8HMAAmASYBGz0DEjp1Om46czpoOmk6Zjp0RBI6Tjp1Om06YjplOnIoHwgwACYBJgEbPQMSOnU6bjpzOmg6aTpmOnREEjpOOnU6bTpiOmU6cigfCTAAJgEmARs9AxI6dTpuOnM6aDppOmY6dEQSOk46dTptOmI6ZTpyKB8KMAAmASYBGz0DEjp1Om46czpoOmk6Zjp0RBI6Tjp1Om06YjplOnIoHwswACYBJgEbPQMSOnU6bjpzOmg6aTpmOnREEjpOOnU6bTpiOmU6cigfDDAAJgEmARs9AxI6dTpuOnM6aDppOmY6dEQSOk46dTptOmI6ZTpyKB8NMAAmASYBGz0DEjp1Om46czpoOmk6Zjp0RBI6Tjp1Om06YjplOnIoHw4wACYBJgEbPQMSOnU6bjpzOmg6aTpmOnREEjpOOnU6bTpiOmU6cigfDzAAJgEmARs9AxI6dTpuOnM6aDppOmY6dEQSOk46dTptOmI6ZTpyKB8QMAAmASYBGz0EPQMSOmo6bzppOm5EEiYBGBsbEjpBOnI6cjphOnkNHAA4AgAJEjpwOmE6cjpzOmU6STpuOnQoHwQCAiYCQhsbKzEMEjpBOnI6cjphOnkNHAA4AgAJAgBCGxsxPAoABwsIDAkSCg0LDgwTDRAOEQ8UEA9CGxtCGxsqMTwAAwMEBUIbGzgCLAkjPAcHBgIGAwYEBgUGBj0GEjpkOm86Yzp1Om06ZTpuOnQoEjpjOmg6YTpyOnM6ZTp0JCEuGxI6ZDpvOmM6dTptOmU6bjp0KBI6YzpoOmE6cjphOmM6dDplOnI6UzplOnQkIS4bEhgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjBgcEBgISOkE6cjpyOmE6eQ0cADgCAAkfA0IbGzE8AQADBkIbG0IbGyoxPAADAwQFQhsbOAItCSMCBwoGAgYDBgQGBQYGBgcGCCMGBw0GAgYDBgQGBQYGBgcGCAYJBgkGCiMfBwoGAgYDBgQGBQYGIxAPQQArIx8GB0EHPQQSOlI6ZTpnOkU6eDpwDRI6KDpbOjA6LTo5Ol06ezoxOiw6Mzp9Oig6XDouOls6MDotOjk6XTp7OjE6LDozOn06KTp7OjM6fTp8Ols6YTotOmY6MDotOjk6XTp7OjE6LDo0On06KDo6Ols6YTotOmY6MDotOjk6XTp7OjE6LDo0On06KTp7Ojc6fTopEjACGBsbPQU9BBI6ZTp4OmU6Y0QfAyYBAgEJIRgbGz0IHwVEIRI6dTpuOmQ6ZTpmOmk6bjplOmQNFC4bIwobHwkfBTABGz0IHwVEHUIbGysMKjE9CjwCAQgECQMDGBsbPQQSOk86YjpqOmU6Yzp0DRwAGBsbPQUSOnc6aTpuOmQ6bzp3KBI6UjpUOkM6UDplOmU6cjpDOm86bjpuOmU6Yzp0Omk6bzpuJCEuGxI6dzppOm46ZDpvOncoEjptOm86ejpSOlQ6QzpQOmU6ZTpyOkM6bzpuOm46ZTpjOnQ6aTpvOm4kIS4bEjp3Omk6bjpkOm86dygSOm06czpSOlQ6QzpQOmU6ZTpyOkM6bzpuOm46ZTpjOnQ6aTpvOm4kIS4bEjp3Omk6bjpkOm86dygSOnc6ZTpiOms6aTp0OlI6VDpDOlA6ZTplOnI6QzpvOm46bjplOmM6dDppOm86biQhGBsbPQYSOk86YjpqOmU6Yzp0DRwAGBsbPQcSOk86YjpqOmU6Yzp0DRwAOBI6aTpjOmU6UzplOnI6djplOnI6cwkSOkE6cjpyOmE6eQ0cADgCAAkSOk86YjpqOmU6Yzp0DRwAOBI6dTpyOmw6cwkSOkE6cjpyOmE6eQ0cADgCAAkSOnM6dDp1Om46OjpzOnQ6dTpuOjE6LjpsOi46ZzpvOm86ZzpsOmU6LjpjOm86bTo6OjE6OTozOjA6Mjo/OnQ6cjphOm46czpwOm86cjp0Oj06dTpkOnBCGxs4AgEJEjpzOnQ6dTpuOjo6czp0OnU6bjoyOi46bDouOmc6bzpvOmc6bDplOi46YzpvOm06OjoxOjk6MzowOjI6Pzp0OnI6YTpuOnM6cDpvOnI6dDo9OnU6ZDpwQhsbOAICCRI6czp0OnU6bjo6OnM6dDp1Om46MzouOmw6LjpnOm86bzpnOmw6ZTouOmM6bzptOjo6MTo5OjM6MDoyOj86dDpyOmE6bjpzOnA6bzpyOnQ6PTp1OmQ6cEIbGzgCAwkSOnM6dDp1Om46OjpzOnQ6dTpuOjQ6LjpsOi46ZzpvOm86ZzpsOmU6LjpjOm86bTo6OjE6OTozOjA6Mjo/OnQ6cjphOm46czpwOm86cjp0Oj06dTpkOnBCGxtCGxtCGxtCGxsYGxs9CCoYGxsjBw9BACorMSMcBgtBCz0IHwUfBx8GHAIYGxsrDD0IEjpvOm46aTpjOmU6YzphOm46ZDppOmQ6YTp0OmVEIwcHBQYCBgM9AxI6YzphOm46ZDppOmQ6YTp0OmVEIS4bIzobHwQ9AxI6YzphOm46ZDppOmQ6YTp0OmVEEjpjOmE6bjpkOmk6ZDphOnQ6ZSQhMAEbKjE8AQEECgNCGxs9CBI6YzpyOmU6YTp0OmU6RDphOnQ6YTpDOmg6YTpuOm46ZTpsRBI6YjpsJgEbIwAPQQA9CBI6YzpyOmU6YTp0OmU6TzpmOmY6ZTpyRCYAEjp0Omg6ZTpuCSMcBwUGAgYDPQQSOnM6ZTp0Okw6bzpjOmE6bDpEOmU6czpjOnI6aTpwOnQ6aTpvOm5EHwMjLgcDBgIqMTwAACMfBwMGAioxPAAAJgMbKjE8AQEECAMjNgcDBgIqMTwAACYCGysjEAYMQQw9CBI6YzpyOmU6YTp0OmU6TzpmOmY6ZTpyRCYAEjp0Omg6ZTpuCSMHBwUGAgYDPQQSOnM6ZTp0Okw6bzpjOmE6bDpEOmU6czpjOnI6aTpwOnQ6aTpvOm5EHwMmARsqMTwBAQQIAyYBGysMEjpzOmU6dDpUOmk6bTplOm86dTp0KCM9BwgGAgYDBgQjNA9BABI6YzpvOm46czpvOmw6ZSgSOmw6bzpnJB8FJgEbKyMHBgVBBT0DPQYSOmw6bzpjOmE6bDpEOmU6czpjOnI6aTpwOnQ6aTpvOm5EEjpzOmQ6cCQSOnM6cDpsOmk6dCQSOgomARgbGz0DEjpmOm86cjpFOmE6YzpoRCM6BwUGAgYDPQMSOmk6bjpkOmU6eDpPOmZEEjphOj06YzphOm46ZDppOmQ6YTp0OmU6OiYBAgAULhsjPBsfBB8DMAEbKjE8AQEEBwMmARsrDCoxPAIABggHCgImAhsqMT0IPAABAxgbGz0GEhgbGyMuD0EAKyM2BglBCR8IIyMHBQYCBgM9AxI6bTphOnQ6YzpoRBI6UjplOmc6RTp4OnANEjpeOls6YTotOmY6MDotOjk6XTp7OjE6LDo0On06KDo6Ols6YTotOmY6MDotOjk6XTp7OjE6LDo0On06KTp7Ojc6fTokEjACJgEuGz0EHwMYGxsjPRs9BB8DGBsbKjE8AQEEBgMwARsrDD0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjEAcEBgISOkE6cjpyOmE6eQ0cADgCAAkfA0IbGzE8AQADBkIbG0IbGyoxPAADAwQFQhsbOAIuCSMwBwsGAgYDBgQGBQYGBgcGCAYJIwAHBgYCBgMGAyM6D0EAIzAPQQArIwcGBUEFEjpkOm86Yzp1Om06ZTpuOnQoEjpVOlI6TCQhKysxDCsjHwYEQQQSOmQ6bzpjOnU6bTplOm46dCgSOmw6bzpjOmE6dDppOm86biQSOmg6cjplOmYkISsxDBIxPQk8AAAYGxs9Bh8FAikwARgbGz0HEhgbGyNBD0EAKyMQBgpBCj0HHwYfCTAAMAESOj86cjphOm46ZDo9OjE6NToxOjk6NzoxOjM6NjoyOjQ6Mzo0OjcBGBsbKww9AxI6ZTp4OnA6bzpyOnQ6c0QSOk86YjpqOmU6Yzp0DRwAOBI6ZzplOnQJIwAHBAYCEjpBOnI6cjphOnkNHAA4AgAJHwNCGxsxPAEAAwdCGxtCGxsqMTwAAwMEBUIbGzgCLwkjAAcHBgIGAwYEBgUGBj0GEjpzOmM6cjplOmU6bigSOmM6bzpsOm86cjpEOmU6cDp0OmgkIRgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjCgcEBgISOkE6cjpyOmE6eQ0cADgCAAkfA0IbGzE8AQADBkIbG0IbGyoxPAADAwQFQhsbOAIwCSMwBwYGAgYDBgQGBT0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjBgcDBgISOkE6cjpyOmE6eQ0cADgCAAkSOjk6ODprQhsbMTwAAEIbG0IbGyoxPAADAwQFQhsbOAIxCSM8BwYGAgYDBgQGBT0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjHAcDBgISOkE6cjpyOmE6eQ0cADgCAAkCQhsbMTwAAEIbG0IbGyoxPAADAwQFQhsbOAIyCSM9BwoGAgYDBgQGBQYGBgcGCAYJI0EHBQYCPQMSOnc6aTpuOmQ6bzp3KBI6XzpXOkg6QjpDOlc6VzpPOmI6QzpOOks6WTpmOkM6SjpQOlA6YjpnOms6ZzplOmc6RDpDOmM6TTpmOlo6RDpNOkMkIS4jHBsSOnc6aTpuOmQ6bzp3KBI6XzpXOkg6QjpDOlc6VzpPOmI6QzpOOks6WTpmOkM6SjpQOlA6YjpnOms6ZzplOmc6RDpDOmM6TTpmOlo6RDpNOkMkJgASOmc6ZTp0OlQ6aTptOmUJJgACNR8ELxgbGyoxPQk8AgADCAQHGBsbPQYfBQIRMAEYGxs9Bx8FAhYwARgbGz0IAgAYGxsfBhI6dzppOm46ZDpvOncNEjpsOm86YTpkHwkwAxs9AxI6ZTp4OnA6bzpyOnQ6c0QSOk86YjpqOmU6Yzp0DRwAOBI6ZzplOnQJIzwHBAYCEjpBOnI6cjphOnkNHAA4AgAJHwNCGxsxPAEAAwhCGxtCGxsqMTwAAwMEBUIbGzgCMwkjPQcGBgIGAwYEBgU9AxI6ZTp4OnA6bzpyOnQ6c0QSOk86YjpqOmU6Yzp0DRwAOBI6ZzplOnQJIzQHBAYCBgM9AxI6czpjOnI6ZTplOm4oEjpoOmU6aTpnOmg6dCQhGBsbEjpBOnI6cjphOnkNHAA4AgAJHwNCGxsxPAAAQhsbQhsbKjE8AAMDBAVCGxs4AjQJIzAHCQYCBgMGBAYFBgYGBwYIIxAHDAYCBgMGBAYFBgYGByM6D0EAPQkSOm46bzp0OiA6czp1OnA6cDpvOnI6dDplOmQYGxsrIwcGCEEIPQMSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpjOmE6bjp2OmE6cyYBGBsbPQQqGBsbI0EPQQASKysxIx8GCkEKPQQ9AxI6ZzplOnQ6QzpvOm46dDplOng6dEQSOjI6ZCYBGBsbKww9BhI6QzpsOmk6ZTpuOnQ6SjpTOiw6bzpyOmc6IDo8OmM6YTpuOnY6YTpzOj46IDoxOi46MBgbGz0EEjp0OmU6eDp0OkI6YTpzOmU6bDppOm46ZUQSOnQ6bzpwQhsbPQQSOmY6bzpuOnREEjoxOjQ6cDp4OiA6JzpBOnI6aTphOmw6J0IbGz0EEjp0OmU6eDp0OkI6YTpzOmU6bDppOm46ZUQSOmE6bDpwOmg6YTpiOmU6dDppOmNCGxs9BBI6ZjppOmw6bDpTOnQ6eTpsOmVEEjojOmY6NjowQhsbPQQSOmY6aTpsOmw6UjplOmM6dEQCfQIBAj4CFCYEGz0EEjpmOmk6bDpsOlM6dDp5Omw6ZUQSOiM6MDo2OjlCGxs9BBI6ZjppOmw6bDpUOmU6eDp0RB8GAgICDyYDGz0EEjpmOmk6bDpsOlM6dDp5Omw6ZUQSOnI6ZzpiOmE6KDoxOjA6MjosOiA6MjowOjQ6LDogOjA6LDogOjA6Ljo3OilCGxs9BBI6ZjppOmw6bDpUOmU6eDp0RB8GAgQCESYDGx8LPQMSOnQ6bzpEOmE6dDphOlU6UjpMRCYAEjpyOmU6cDpsOmE6YzplCRI6UjplOmc6RTp4OnANEjpbOlw6dTowOjA6MDowOi06XDp1OjA6MDoyOjA6XTorEjpnMAISJgIwASsxDCoxPQc8AgAJBgsIGBsbIyMHBQYCBgMGBD0EPQMSOmw6ZTpuOmc6dDpoRCEYGxsfBAJkJRMuGyMQGx8DMRI9AxI6czp1OmI6czp0OnJEAh44JgIBPQMSOnM6dTpiOnM6dDpyRBI6TTphOnQ6aCgSOmY6bDpvOm86ciQfBAIDNSYBAh4mAgE9AxI6czpsOmk6YzplRAIAAh4vJgEBMT0IPAABAxgbGz0GEhgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjOgcFBgISOkE6cjpyOmE6eQ0cADgCAAkfAy4bPQMfBDAAGBsbHwNCGxsxPAIAAwYEB0IbG0IbGyoxPAADAwQFQhsbOAI1CSMmBxAGAgYDBgQGBQYGBgcGCAYJBgoGCwYMBg0GDiMGBw4GAgYDBgQGBQYGPQM9BxI6ZzplOnREJgACAAkhGBsbHwMCCiUuGyMuGx8DMT0EEjpuOmE6djppOmc6YTp0Om86cigSOmE6cDpwOlY6ZTpyOnM6aTpvOm4kIS4bEhgbGz0FEjpBOnI6cjphOnkNHAA4AgAJEjp3Omk6bjpkOm86dygSOmM6YTpsOmw6UDpoOmE6bjp0Om86bSQhQhsbOAIBCRI6dzppOm46ZDpvOncoEjpfOnA6aDphOm46dDpvOm0kIUIbGzgCAgkSOlI6ZTpnOkU6eDpwKBI6cDpoOmE6bjp0Om86bTpqOnMSOmkKAhI6dDplOnM6dAkSOm46YTp2Omk6ZzphOnQ6bzpyKBI6dTpzOmU6cjpBOmc6ZTpuOnQkISYBQhsbOAIDCRI6UjplOmc6RTp4OnAoEjpwOmg6YTpuOnQ6bzptOmo6cxI6aQoCEjp0OmU6czp0CR8EJgFCGxs4AgQJEjpSOmU6ZzpFOng6cCgSOnA6aDphOm46dDpvOm06ajpzEjppCgISOnQ6ZTpzOnQJHwgmAUIbGzgCBQkSOnc6aTpuOmQ6bzp3KBI6VzplOmI6UDphOmc6ZSQhQhsbOAIGCRI6UjplOmc6RTp4OnAoEjpwOnk6dDpoOm86bhI6aQoCEjp0OmU6czp0CR8EJgFCGxs4AgcJEjpkOm86Yzp1Om06ZTpuOnQoEjokOmM6ZDpjOl86YTpzOmQ6ajpmOmw6YTpzOnU6dDpvOnA6ZjpoOnY6YzpaOkw6bTpjOmY6bDpfJCFCGxs4AggJEjpkOm86Yzp1Om06ZTpuOnQoEjpfOl86dzplOmI6ZDpyOmk6djplOnI6XzpzOmM6cjppOnA6dDpfOmY6biQhQhsbOAIJCRI6dzppOm46ZDpvOncoEjpmOng6ZDpyOmk6djplOnI6XzppOmQkIUIbGzgCCgkSOnc6aTpuOmQ6bzp3KBI6XzpfOmY6eDpkOnI6aTp2OmU6cjpfOnU6bjp3OnI6YTpwOnA6ZTpkJCFCGxs4AgsJEjp3Omk6bjpkOm86dygSOmQ6bzptOkE6dTp0Om86bTphOnQ6aTpvOm4kIUIbGzgCDAkSOnc6aTpuOmQ6bzp3KBI6dTpiOm86dCQhQhsbOAINCRI6UjplOmc6RTp4OnAoEjpaOm86bTpiOmk6ZRI6aQoCEjp0OmU6czp0CRI6bjphOnY6aTpnOmE6dDpvOnIoEjp2OmU6bjpkOm86ciQhJgFCGxs4Ag4JEjpSOmU6ZzpFOng6cCgSOlo6bzptOmI6aTplEjppCgISOnQ6ZTpzOnQJEjpuOmE6djppOmc6YTp0Om86cigSOmE6cDpwOk46YTptOmUkISYBQhsbOAIPCRI6UjplOmc6RTp4OnAoEjpDOmE6czpwOmU6cjpKOlMSOmkKAhI6dDplOnM6dAkfBCYBQhsbOAIQCRI6dzppOm46ZDpvOncoEjpDOmE6czpwOmU6cjpFOnI6cjpvOnIkIUIbGzgCEQkSOnc6aTpuOmQ6bzp3KBI6YzphOnM6cDplOnIkIUIbGzgCEgkSOnc6aTpuOmQ6bzp3KBI6cDphOnQ6YzpoOlI6ZTpxOnU6aTpyOmUkIUIbGzgCEwkSOnc6aTpuOmQ6bzp3KBI6bjphOnY6aTpnOmE6dDpvOnIkEjp3OmU6YjpkOnI6aTp2OmU6ciQhQhsbOAIUCSMwBwYGAgYDBgQjQQ9BABErMSMGBgVBBT0DEjpPOmI6ajplOmM6dCgSOmc6ZTp0Ok86dzpuOlA6cjpvOnA6ZTpyOnQ6eTpEOmU6czpjOnI6aTpwOnQ6bzpyJBI6bjphOnY6aTpnOmE6dDpvOnINEjp3OmU6YjpkOnI6aTp2OmU6ciYCEjpnOmU6dAkhGBsbHwNDEjpmOnU6bjpjOnQ6aTpvOm4ULhsjABsdKzERKzEMKjE8AAAwAEIbGzgCFQkfCTAAE0IbGzgCFgkfCjAAE0IbGzgCFwkfCzAAE0IbGzgCGAkfDDAAE0IbGzgCGQkfDTAAE0IbGzgCGgkSOlI6ZTpnOkU6eDpwKBI6XjpmOmk6bDplEjppCgISOnQ6ZTpzOnQJEjp3Omk6bjpkOm86dygSOmw6bzpjOmE6dDppOm86biQSOmg6cjplOmYkISYBQhsbGBsbPQYCABgbGz0GDj0FEjpsOmU6bjpnOnQ6aEQhBRMuGyMwGz0FHwZEIS4bIzQbHwYCAQExPQY4DjgQARAAAgEBGBs0ABAAPxsjOgIAMT0OPAcABwsIDAkGCgcLCAwJDQoYGxs9Bh8FAhkwARgbGz0HHwUCNjABGBsbPQgfBQI3MAEYGxs9CR8FAjgwARgbGz0KHwUCOTABGBsbPQsfBQIcMAEYGxs9DBIYGxsjPQ9BAD0MPQ8SOnM6dDphOmM6a0QhGBsbKyMABg9BDx4CAAkhGysMPQMSOmU6eDpwOm86cjp0OnNEEjpPOmI6ajplOmM6dA0cADgSOmc6ZTp0CSMmBwcGAgYDBgQjAA9BABI6QTpyOnI6YTp5DRwAOAIACQJjQhsbKzEjNAYFQQU9Ax8GMAAYGxsSOkE6cjpyOmE6eQ0cADgCAAkfA0IbGysxDCoxPAEABg5CGxtCGxsqMTwAAwMEBUIbGzgCNgkjNgcHBgIGAwYEBgUGBiM0Bw0GAgYDBgQGBQYGBgcGCAYJBgoGCyMKD0EAESsxI0EGDEEMPQMSGBsbPQQSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpkOmk6diYBGBsbPQUSOmQ6bzpjOnU6bTplOm46dCgSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnQkEjpwJgEYGxs9BhI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOnM6cDphOm4mARgbGz0EEjphOnA6cDplOm46ZDpDOmg6aTpsOmREHwUmARs9Bz0EEjpjOmw6bzpuOmU6TjpvOmQ6ZUQRJgEYGxs9BBI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkRB8HJgEbPQg9BBI6aTpuOnM6ZTpyOnQ6QjplOmY6bzpyOmVEHwcfBSYCGBsbPQgSOmM6bDphOnM6czpOOmE6bTplRBI6YzpsOmw6MUIbGz0IEjpzOmU6dDpBOnQ6dDpyOmk6Yjp1OnQ6ZUQSOmM6bDphOnM6cxI6czpzOnMmAhs9BhI6aTpuOnM6ZTpyOnQ6QjplOmY6bzpyOmVEHwgeJgIbPQM9BhI6aTpuOm46ZTpyOkg6VDpNOkxEIS4bEhgbGz0DPQMSOnI6ZTpwOmw6YTpjOmVEEjpSOmU6ZzpFOng6cA0SOjw6fDo+Onw6XDovOnw6XDpzOnw6Ijp8OicSOmcwAhImAhgbGz0DPQMSOnQ6bzpMOm86dzplOnI6QzphOnM6ZUQmABgbGz0JHwMSOmQ6aTp2OmQ6aTp2OmQ6aTp2OnA6cDpkOmk6dhQYGxs9ChI6QTpyOnI6YTp5DRwAOAIACRI6ZEIbGzgCAQkSOmlCGxs4AgIJEjp2QhsbOAIDCRI6Y0IbGzgCBAkSOmxCGxs4AgUJEjphQhsbOAIGCRI6c0IbGzgCBwkSOnNCGxs4AggJEjo9QhsbOAIJCRI6c0IbGzgCCgkSOnNCGxs4AgsJEjpzQhsbOAIMCRI6ZEIbGzgCDQkSOmlCGxs4Ag4JEjp2QhsbGBsbHwM9ChI6ajpvOmk6bkQSJgEULiM8Gx8JEysxDCoxPQY8AAAYGxs9AxI6ZTp4OnA6bzpyOnQ6c0QfBkIbGyoxPAADAwQFQhsbOAI3CSMuBwcGAgYDBgQGBQYGIwAHCgYCBgMGBAYFBgYGBwYIIz0PQQARKzEjMAYJQQk9AxI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOmk6ZjpyOmE6bTplJgEYGxsSOmQ6bzpjOnU6bTplOm46dCgSOmI6bzpkOnkkEjphOnA6cDplOm46ZDpDOmg6aTpsOmQkHwMmARs9AxI6czp0Onk6bDplRBI6ZDppOnM6cDpsOmE6eSQSOm46bzpuOmVCGxs9BD0DEjpjOm86bjp0OmU6bjp0Olc6aTpuOmQ6bzp3RCEYGxs9BT0EEjpkOm86Yzp1Om06ZTpuOnREIRgbGz0GPQUSOmM6cjplOmE6dDplOkU6bDplOm06ZTpuOnREEjpkOmk6diYBGBsbPQc9BhI6bzp1OnQ6ZTpyOkg6VDpNOkxEIS4bEhgbGz0HPQcSOnI6ZTpwOmw6YTpjOmVEEjpSOmU6ZzpFOng6cA0SOjw6fDo+Onw6XDovOnw6XDpzOnw6Ijp8OicSOmcwAhImAhgbGz0HPQcSOnQ6bzpMOm86dzplOnI6QzphOnM6ZUQmABgbGx8HEjpkOmk6djpkOmk6dhQrMQwqMT0GPAAAGBsbPQMSOmU6eDpwOm86cjp0OnNEHwZCGxsqMTwAAwMEBUIbGzgCOAkjEAcHBgIGAwYEBgUGBiMHBwkGAgYDBgQGBQYGBgcjPQ9BABErMSM8BghBCD0DEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6ZDppOnYmARgbGz0DEjpzOnQ6eTpsOmVEEjpwOm86czppOnQ6aTpvOm4kEjphOmI6czpvOmw6dTp0OmVCGxs9AxI6czp0Onk6bDplRBI6dzppOmQ6dDpoJBI6MjowOjA6cDp4QhsbPQMSOnM6dDp5Omw6ZUQSOmg6ZTppOmc6aDp0JBI6MjowOjA6cDp4QhsbPQMSOnM6dDp5Omw6ZUQSOmw6ZTpmOnQkEjotOjE6MDowOjA6cDp4QhsbPQMSOnM6dDp5Omw6ZUQSOnQ6bzpwJBI6LToxOjA6MDowOnA6eEIbGz0EEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6ZDppOnYmARgbGz0EEjpzOnQ6eTpsOmVEEjpwOm86czppOnQ6aTpvOm4kEjphOmI6czpvOmw6dTp0OmVCGxs9BBI6czp0Onk6bDplRBI6bDplOmY6dCQSOjI6MDpwOnhCGxs9BBI6czp0Onk6bDplRBI6dDpvOnAkEjozOjA6cDp4QhsbPQQSOnM6dDp5Omw6ZUQSOnc6aTpkOnQ6aCQSOjE6MDpwOnhCGxs9BBI6czp0Onk6bDplRBI6aDplOmk6ZzpoOnQkEjoyOjA6cDp4QhsbPQMSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZEQfBCYBGxI6ZDpvOmM6dTptOmU6bjp0KBI6YjpvOmQ6eSQSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZCQfAyYBGz0FPQQSOm86ZjpmOnM6ZTp0Okw6ZTpmOnREIRgbGz0GPQQSOmc6ZTp0OkI6bzp1Om46ZDppOm46ZzpDOmw6aTplOm46dDpSOmU6Yzp0RCYAGBsbEjpkOm86Yzp1Om06ZTpuOnQoEjpiOm86ZDp5JBI6cjplOm06bzp2OmU6QzpoOmk6bDpkJB8DJgEbHwUCFBQuIxwbEj0GEjpiOm86dDp0Om86bUQhARI6aTpuOmQ6ZTp4Ok86ZgkSOi06OSYBAgACAS8lKzEMKjE9BjwAABgbGz0DEjplOng6cDpvOnI6dDpzRB8GQhsbKjE8AAMDBAVCGxs4AjkJIxwHBwYCBgMGBAYFBgYjCgcLBgIGAwYEBgUGBgYHBggGBwYEBgkjBg9BABErMSM0BgpBCj0DEhgbGz0EEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6ZDppOnYmARgbGz0FEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6bDppJgEYGxs9BhI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOmEmARgbGz0HEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6bDppJgEYGxs9CBI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOmEmARgbGz0HEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6bDppJgEYGxs9BBI6ZDpvOmM6dTptOmU6bjp0KBI6YzpyOmU6YTp0OmU6RTpsOmU6bTplOm46dCQSOmQ6aTp2JgEYGxs9BhI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkRB8EJgEbPQYSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZEQfByYBGz0EEjphOnA6cDplOm46ZDpDOmg6aTpsOmREHwgmARs9BBI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkRB8HJgEbPQgSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZEQfBSYBGz0EEjpyOmU6cDpsOmE6YzplOkM6aDppOmw6ZEQfBR8IJgIbPQQSOnI6ZTptOm86djplOkM6aDppOmw6ZEQfByYBGz0GEjpyOmU6bTpvOnY6ZTpDOmg6aTpsOmREHwQmARs9CBI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkRB8FJgEbPQcSOmE6cDpwOmU6bjpkOkM6aDppOmw6ZEQfCCYBGz0DPQUSOm86dTp0OmU6cjpIOlQ6TTpMRCEuGz0FEjppOm46bjplOnI6SDpUOk06TEQhLhsSGBsbPQM9AxI6cjplOnA6bDphOmM6ZUQSOlI6ZTpnOkU6eDpwDRI6PDp8Oj46fDpcOi86fDpcOnM6fDoiOnw6JxI6ZzACEiYCGBsbPQM9AxI6dDpvOkw6bzp3OmU6cjpDOmE6czplRCYAGBsbHwMSOmw6aTpsOmkUKzEMKjE9BjwAABgbGz0DEjplOng6cDpvOnI6dDpzRB8GQhsbKjE8AAMDBAVCGxs4AjoJIy4HBwYCBgMGBAYFBgY9BhI6dzppOm46ZDpvOncoEjpuOmE6djppOmc6YTp0Om86ciQSOmM6bzpvOms6aTplOkU6bjphOmI6bDplOmQkIRgbGz0DEjplOng6cDpvOnI6dDpzRBI6TzpiOmo6ZTpjOnQNHAA4EjpnOmU6dAkjAgcEBgISOkE6cjpyOmE6eQ0cADgCAAkfAy4bEjoyIy4bEjoxQhsbOAIBCR5CGxs4AgIJAgFCGxsxPAEAAwZCGxtCGxsqMTwAAwMEBUIbGzgCOwkjAAcMBgIGAwYEBgUGBgYHBggGCQYKBgsjHwcFBgIGAz0EHwMYGxsqMT0IPAEBBAcDGBsbIxAHBAYCHwMxPQk8AQADBxgbGyMGBwcGAgYDBgMjMA9BACsjHAYEQQQfBRI6ZTpuOmM6bzpkOmU6VTpSOkk6QzpvOm06cDpvOm46ZTpuOnQoHwYfAzABEjpzOmw6aTpjOmUJAgACZC8mASYBMAEbKwwqMT0KPAIBBQgGBgMYGxsjMAcGBgIGAyM8D0EAHwUfBDABGysjIwYEQQQSOkU6cjpyOm86cigSOmU6cjpyOnIKAUUrDCoxPQs8AQAFChgbGz0GHwUCPDABGBsbPQcSGBsbPQQSOnM6ZTp0OkU6cjpyOm86cjpTOnQ6YTpjOmtEHwtCGxs9BBI6czplOnQ6RTpyOnI6bzpyRB8IQhsbPQQSOmc6ZTp0OkU6cjpyOm86ckQfCUIbGyoxPAADAwQFQhsbOAI8CSMQBwcGAgYDBgQGBQYGIzYHCAYCBgMGBAYFBgY9BBIYGxsfAy4jNhs9AxI6czp0OmE6YzprRCEuGyMHGz0EPQMSOnM6dDphOmM6a0QSOnI6ZTpwOmw6YTpjOmUkEjpSOmU6ZzpFOng6cA0SOlw6bhI6ZzppMAISJgISOnM6cDpsOmk6dAkSOlI6ZTpnOkU6eDpwDRI6XDpiOmE6dDpcOmISMAImARI6ajpvOmk6bgkSOgomARI6cjplOnA6bDphOmM6ZQkSOlI6ZTpnOkU6eDpwDRI6XDo/Ols6Xjo6Ol06KxI6ZzppMAISJgIYGxsjQQ9BACsjPQYHQQc9BT0DEjp0Om86Uzp0OnI6aTpuOmdEJgAYGxs9BBI6aTpuOmQ6ZTp4Ok86ZkQfBSYBAgAFEy4bIxwbPQQfBRI6QAEfBAEYGxsrDB8EMT0GPAABAxgbGz0DEjplOng6cDpvOnI6dDpzRB8GQhsbKjE8AAMDBAVCGxs4Aj0JIxwHBwYCBgMGBAYFBgYjEAcEBgIGAz0DEjpkOm86Yzp1Om06ZTpuOnQoEjpjOnI6ZTphOnQ6ZTpFOmw6ZTptOmU6bjp0JBI6czpjOnI6aTpwOnQmARgbGz0DEjpzOnI6Y0QSOmg6dDp0OnA6czo6Oi86LzpjOmE6cDp0OmM6aDphOi46Zzp0Omk6bTpnOi46YzpvOm06LzoxOi86ajpzOm86bjoyOi46ajpzQhsbEjpkOm86Yzp1Om06ZTpuOnQoEjpnOmU6dDpFOmw6ZTptOmU6bjp0OnM6Qjp5OlQ6YTpnOk46YTptOmUkEjpoOmU6YTpkJgESOmk6dDplOm0JAgAmARI6YTpwOnA6ZTpuOmQ6QzpoOmk6bDpkCR8DJgEbKjE9BjwAABgbGz0DEjplOng6cDpvOnI6dDpzRB8GQhsbKjE8AAMDBAVCGxswARsqMQ==", [5, 1518, 303, 445, 329, 334, 332, 443, 446, 305, 464, 798, 509, 513, 511, 553, 554, 559, 557, 693, 799, 466, 813, 1233, 833, 838, 836, 850, 857, 862, 860, 866, 873, 877, 875, 895, 896, 900, 898, 903, 904, 908, 906, 934, 935, 940, 938, 944, 1122, 1126, 1124, 1145, 1146, 1151, 1149, 1229, 1157, 1163, 1161, 1225, 1182, 1197, 1198, 1184, 1223, 1155, 1227, 1229, 1234, 815, 1251, 1374, 1266, 1270, 1268, 1296, 1297, 1318, 1300, 1309, 1310, 1302, 1316, 1352, 1320, 1346, 1347, 1322, 1375, 1253, 1391, 1482, 1483, 1393, 1542, 2107, 1724, 1836, 1728, 2104, 1764, 1823, 1824, 1766, 1834, 2104, 1839, 1726, 1887, 1950, 1951, 1889, 2108, 1544, 2122, 2936, 2233, 2782, 2294, 2298, 2296, 2315, 2316, 2690, 2369, 1e9, 2422, 1e9, 2516, 2520, 2518, 2605, 2624, 1e3, 2688, 2780, 2758, 2763, 2761, 2780, 2772, 1e3, 2783, 2235, 2807, 2861, 2862, 2809, 2890, 2899, 2900, 2892, 2937, 2124, 2951, 4113, 2968, 3447, 3226, 3236, 3230, 3444, 3234, 3444, 3239, 3228, 3283, 3288, 3286, 3338, 3384, 3389, 3387, 3443, 3450, 2970, 3459, 4012, 3608, 3613, 3611, 3786, 3653, 3658, 3656, 3681, 3776, 3786, 3780, 4003, 3784, 4003, 3789, 3778, 3833, 3838, 3836, 3890, 3936, 3941, 3939, 4002, 3947, 3999, 4007, 4011, 4015, 3461, 4114, 2953, 4128, 6636, 4179, 4318, 4197, 4202, 4200, 4205, 4236, 4240, 4241, 4246, 4244, 4316, 4272, 4277, 4275, 4312, 4310, 4264, 4321, 4181, 4330, 4910, 4438, 4443, 4441, 4862, 4459, 4464, 4462, 4468, 4466, 4839, 4544, 4555, 4553, 4575, 4582, 4587, 4585, 4599, 4611, 4790, 4618, 4643, 4644, 4769, 4663, 4708, 4671, 4694, 4692, 4723, 4706, 4723, 4716, 4719, 4742, 4747, 4745, 4839, 4759, 4762, 4767, 4839, 4788, 4839, 4810, 4816, 4814, 4823, 4837, 4839, 4860, 4415, 4913, 4332, 4930, 5068, 4967, 5049, 4994, 4999, 4997, 5066, 5005, 5011, 5009, 5042, 5040, 5003, 5044, 5066, 5047, 5066, 5071, 4932, 5084, 5173, 5122, 5127, 5125, 5171, 5169, 5099, 5176, 5086, 5185, 5479, 5227, 5232, 5230, 5404, 5254, 5259, 5257, 5307, 5323, 5328, 5326, 5346, 5358, 5363, 5361, 5381, 5402, 5204, 5434, 5439, 5437, 5477, 5475, 5411, 5482, 5187, 5532, 5536, 5534, 5585, 5586, 5763, 5589, 5755, 5600, 5604, 5602, 5638, 5639, 5643, 5641, 5686, 5687, 5691, 5689, 5731, 5732, 5740, 5738, 5754, 5756, 5591, 5761, 5782, 5765, 5777, 5778, 5767, 6206, 6585, 6242, 6313, 6246, 6534, 6311, 6534, 6316, 6244, 6330, 6364, 6365, 6370, 6368, 6376, 6556, 6575, 6576, 6558, 6586, 6208, 6637, 4130, 6651, 7024, 6676, 6793, 6685, 6785, 6786, 6687, 6794, 6678, 7025, 6653, 7039, 7080, 7081, 7041, 7095, 10044, 7120, 7474, 7166, 84941944608, 7172, 7177, 7175, 7452, 7191, 7267, 7201, 7233, 7231, 7298, 7260, 131606, 7265, 7298, 7294, 263182, 7313, 2654435769, 7326, 7411, 7339, 7374, 7372, 7445, 7404, 131606, 7409, 7445, 7441, 263182, 7450, 7165, 7477, 7122, 7488, 7568, 7571, 7490, 7579, 7688, 7613, 7618, 7616, 7684, 7682, 7605, 7691, 7581, 7699, 9537, 7767, 7892, 7803, 7808, 7806, 7880, 7878, 7795, 7893, 7769, 7918, 7968, 7929, 7939, 7933, 7965, 7937, 7965, 7942, 7931, 7969, 7920, 7984, 8111, 8022, 8027, 8025, 8099, 8097, 8014, 8112, 7986, 8137, 8187, 8148, 8158, 8152, 8184, 8156, 8184, 8161, 8150, 8188, 8139, 8203, 8328, 8239, 8244, 8242, 8316, 8314, 8231, 8329, 8205, 8354, 8404, 8365, 8375, 8369, 8401, 8373, 8401, 8378, 8367, 8405, 8356, 8420, 8545, 8456, 8461, 8459, 8533, 8531, 8448, 8546, 8422, 8576, 8698, 8612, 8617, 8615, 8686, 8684, 8604, 8699, 8578, 8724, 8774, 8735, 8745, 8739, 8771, 8743, 8771, 8748, 8737, 8775, 8726, 8785, 8835, 8796, 8806, 8800, 8832, 8804, 8832, 8809, 8798, 8836, 8787, 8846, 8896, 8857, 8867, 8861, 8893, 8865, 8893, 8870, 8859, 8897, 8848, 8912, 9037, 8948, 8953, 8951, 9025, 9023, 8940, 9038, 8914, 9068, 9190, 9104, 9109, 9107, 9178, 9176, 9096, 9191, 9070, 9221, 9346, 9257, 9262, 9260, 9334, 9332, 9249, 9347, 9223, 9401, 9406, 9404, 9529, 9527, 9378, 9540, 7701, 9588, 9957, 9591, 9952, 9807, 9822, 9823, 9828, 9826, 9948, 9860, .75, 9875, 9880, 9878, 9889, 9946, 9783, 9953, 9593, 10017, 10032, 10033, 10019, 10045, 7097, 10058, 11189, 11190, 10060, 11204, 11301, 11260, 11289, 11290, 11262, 11302, 11206, 11316, 11885, 11335, 11748, 11352, 11364, 11356, 11745, 11362, 11745, 11367, 11354, 11455, 11459, 11457, 11544, 11639, 11685, 11683, 11740, 11751, 11337, 11764, 11774, 11768, 11780, 11772, 11780, 11777, 11766, 11825, 11869, 11852, 11865, 11870, 11827, 11886, 11318, 11900, 12323, 11923, 12169, 11937, 11942, 11940, 11945, 11952, 11994, 11956, 12165, 11992, 12165, 11997, 11954, 12172, 11925, 12263, 12307, 12290, 12303, 12308, 12265, 12324, 11902, 12338, 12730, 12353, 12696, 12366, 12378, 12370, 12693, 12376, 12693, 12381, 12368, 12489, 12554, 12680, 12685, 12683, 12690, 12699, 12355, 12731, 12340, 12745, 12922, 12760, 12887, 12890, 12762, 12923, 12747, 12937, 13098, 12993, 13086, 13079, 13082, 13087, 12995, 13099, 12939, 13113, 13921, 13128, 13813, 13147, 13157, 13151, 13810, 13155, 13810, 13160, 13149, 13381, 13389, 13387, 13427, 13501, 13509, 13507, 13549, 13621, 13629, 13627, 13633, 13725, 13733, 13731, 13801, 13792, 13798, 13796, 13801, 13816, 13130, 13866, 13907, 13908, 13868, 13922, 13115, 13936, 14071, 13992, 14059, 14060, 13994, 14072, 13938, 14086, 14613, 14107, 14272, 14120, 14124, 14122, 14146, 14147, 14152, 14150, 14270, 14275, 14109, 14369, 14433, 14434, 14371, 14454, 14547, 14548, 14456, 14570, 14599, 14600, 14572, 14614, 14088, 14628, 14814, 14643, 14777, 14709, 14730, 14728, 14775, 14780, 14645, 14815, 14630, 14829, 14866, 14867, 14831, 14881, 15308, 14904, 15154, 14918, 14923, 14921, 14926, 14933, 14975, 14937, 15150, 14973, 15150, 14978, 14935, 15157, 14906, 15248, 15292, 15275, 15288, 15293, 15250, 15309, 14883, 15323, 15452, 15388, 15438, 15439, 15390, 15453, 15325, 15467, 15580, 15536, 15566, 15567, 15538, 15581, 15469, 15595, 15836, 15695, 15699, 15697, 15784, 15803, 1e3, 15837, 15597, 15851, 15966, 15920, 15952, 15953, 15922, 15967, 15853, 15981, 16080, 15998, 16033, 16021, 16026, 16024, 16030, 16036, 16e3, 16081, 15983, 16095, 16677, 16110, 16643, 16129, 16141, 16133, 16640, 16139, 16640, 16144, 16131, 16421, 16446, 16447, 16450, 16601, 16605, 16603, 16638, 16646, 16112, 16678, 16097, 16692, 17048, 16709, 16834, 16720, 16777, 16724, 16831, 16727, 16737, 16731, 16772, 16735, 16772, 16740, 16729, 16775, 16831, 16780, 16722, 16837, 16711, 16893, 17032, 16910, 16920, 16914, 17007, 16918, 17007, 16923, 16912, 16989, 16994, 16992, 17006, 17033, 16895, 17049, 16694, 17063, 17406, 17167, 17392, 17186, 17190, 17188, 17208, 17209, 17214, 17212, 17343, 17245, 17250, 17248, 17298, 17296, 17222, 17393, 17169, 17407, 17065, 17421, 17781, 17458, 17462, 17460, 17488, 17499, 17509, 17503, 17692, 17507, 17692, 17512, 17501, 17560, 17564, 17562, 17690, 17658, 17677, 17678, 17660, 17737, 17767, 17768, 17739, 17782, 17423, 17796, 17911, 17865, 17897, 17898, 17867, 17912, 17798, 17926, 19360, 17953, 18238, 17962, 17972, 17966, 18235, 17970, 18235, 17975, 17964, 18041, 18224, 18056, 18066, 18060, 18221, 18064, 18221, 18069, 18058, 18154, 18159, 18157, 18220, 18189, 18194, 18192, 18220, 18225, 18043, 18241, 17955, 18250, 18436, 18377, 18382, 18380, 18385, 18424, 18428, 18426, 18435, 18439, 18252, 18446, 18501, 18504, 18448, 18612, 18620, 18621, 18614, 18630, 18638, 18639, 18632, 18672, 18753, 18707, 18711, 18709, 18744, 18754, 18674, 18785, 18866, 18820, 18824, 18822, 18857, 18867, 18787, 18878, 19193, 18887, 18897, 18891, 19190, 18895, 19190, 18900, 18889, 18929, 19168, 18938, 18981, 18942, 19165, 18979, 19165, 18984, 18940, 18991, 18996, 18994, 19037, 19044, 19049, 19047, 19084, 19169, 18931, 19194, 18880, 19234, 19349, 19245, 19258, 19249, 19346, 19256, 19346, 19261, 19247, 19350, 19236, 19361, 17928, 19375, 19649, 19479, 19635, 19506, 19512, 19510, 19631, 19636, 19481, 19650, 19377, 19664, 19860, 19720, 19848, 19835, 19841, 19839, 19844, 19849, 19722, 19861, 19666, 19875, 20007, 19931, 19995, 19996, 19933, 20008, 19877, 20022, 20315, 20078, 20303, 20186, 20190, 20188, 20275, 20294, 1e3, 20304, 20080, 20316, 20024, 20330, 22198, 20367, 20858, 20384, 20413, 20423, 20428, 20426, 20856, 20469, 20515, 20513, 20559, 20670, 20674, 20672, 20759, 20861, 20369, 20879, 21270, 20950, 20955, 20953, 21211, 20973, 21109, 21107, 21181, 21209, 20927, 21273, 20881, 21368, 21374, 21372, 21377, 21492, 21496, 21494, 21581, 21644, 21740, 21741, 21646, 21761, 22119, 21826, 21831, 21829, 21919, 21917, 21803, 22003, 22008, 22006, 22074, 22034, 22039, 22037, 22074, 22072, 22026, 22120, 21763, 22146, 22182, 22183, 22148, 22199, 20332, 22213, 23316, 22232, 22438, 22264, 22268, 22266, 22302, 22303, 22308, 22306, 22395, 22441, 22234, 22449, 22711, 22495, 22499, 22497, 22547, 22548, 22553, 22551, 22668, 22714, 22451, 22722, 23159, 22752, 23075, 22755, 22813, 22759, 23071, 22811, 23071, 22816, 22757, 23073, 23116, 23162, 22724, 23317, 22215, 23331, 23712, 23368, 23703, 23508, 23513, 23511, 23701, 23582, 23586, 23584, 23619, 23620, 23625, 23623, 23628, 23681, 23685, 23683, 23692, 23693, 23698, 23696, 23701, 23704, 23370, 23713, 23333, 23727, 24219, 23783, 24207, 23833, 23910, 23911, 23966, 24011, 24090, 24091, 24148, 24208, 23785, 24220, 23729, 24234, 24712, 24251, 24602, 24264, 24282, 24268, 24599, 24280, 24599, 24285, 24266, 24571, 24589, 24587, 24597, 24605, 24253, 24666, 24698, 24699, 24668, 24713, 24236, 24727, 24909, 24796, 24799, 24816, 1512991986334, 24865, 24895, 24896, 24867, 24910, 24729, 24924, 25070, 24939, 25035, 24952, 24957, 24955, 25031, 24992, 24997, 24995, 25031, 25038, 24941, 25071, 24926, 25085, 25993, 25111, 25121, 25115, 25259, 25119, 25259, 25124, 25113, 25132, 25137, 25135, 25258, 25139, 25149, 25143, 25176, 25147, 25176, 25152, 25141, 25171, 127030122, 25209, 127030122, 25213, 25218, 25216, 25226, 25304, 25979, 25317, 25334, 25321, 25954, 25332, 25954, 25337, 25319, 25390, 1e8, 25490, 25528, 25529, 25559, 25560, 25945, 25630, 25707, 25793, 25798, 25796, 25806, 25836, 25913, 25943, 25953, 25980, 25306, 25994, 25087, 26008, 33249, 26051, 26147, 26102, 26139, 26140, 26104, 26150, 26053, 26158, 26267, 26191, 26259, 26213, 26228, 26229, 26240, 26241, 26254, 26257, 26261, 26270, 26160, 26281, 26335, 26338, 26283, 26347, 26406, 26409, 26349, 26418, 26446, 26449, 26420, 26458, 28106, 26481, 26491, 26485, 28102, 26489, 28102, 26494, 26483, 27277, 27287, 27281, 28024, 27285, 28024, 27290, 27279, 27472, 27476, 27474, 27654, 27655, 27659, 27657, 27835, 27836, 27840, 27838, 28020, 28109, 26460, 28116, 29558, 28139, 28149, 28143, 29554, 28147, 29554, 28152, 28141, 29099, 29109, 29103, 29476, 29107, 29476, 29112, 29101, 29296, 29300, 29298, 29472, 29561, 28118, 29568, 29972, 29585, 29595, 29589, 29968, 29593, 29968, 29598, 29587, 29715, 29831, 29832, 29964, 29975, 29570, 29982, 30281, 29999, 30009, 30003, 30277, 30007, 30277, 30012, 30001, 30137, 30273, 30284, 29984, 30291, 31248, 30312, 30322, 30316, 31244, 30320, 31244, 30325, 30314, 31022, 31061, 31062, 31099, 31100, 31145, 31251, 30293, 31258, 31321, 31324, 31260, 31331, 31430, 31386, 31390, 31388, 31429, 31433, 31333, 31442, 31798, 31566, 31788, 31595, 31600, 31598, 31603, 31654, 31691, 31692, 31656, 31743, 31748, 31746, 31786, 31775, 31780, 31778, 31723, 31784, 31723, 31789, 31568, 31799, 31444, 31810, 32333, 31959, 31964, 31962, 32023, 32010, 31936, 32013, 32023, 32017, 32325, 32021, 32325, 32026, 32015, 32052, 32056, 32054, 32098, 32099, 32104, 32102, 32324, 32141, 32146, 32144, 32324, 32171, 32231, 32229, 32285, 32291, 32296, 32294, 32301, 32322, 32118, 32334, 31812, 32347, 32616, 32368, 32378, 32372, 32612, 32376, 32612, 32381, 32370, 32617, 32349, 32668, 33217, 32681, 32691, 32685, 33192, 32689, 33192, 32694, 32683, 33218, 32670, 33250, 26010, 33264, 33458, 33316, 33363, 33364, 33367, 33414, 33444, 33445, 33416, 33459, 33266, 33473, 35574, 33492, 35306, 33517, 33773, 33532, 33542, 33536, 33770, 33540, 33770, 33545, 33534, 33747, 33752, 33750, 33760, 33776, 33519, 33862, 33921, 33922, 33979, 33980, 34045, 34564, 34576, 34568, 34595, 34574, 34595, 34579, 34566, 34629, 34717, 34661, 34666, 34664, 34715, 34718, 34631, 34774, 34929, 34778, 35041, 34819, 34902, 34872, 34880, 34881, 34874, 34885, 34893, 34894, 34887, 34903, 34821, 34910, 34918, 34919, 34912, 34927, 35041, 34932, 34776, 34973, 35030, 35031, 34975, 35065, 35291, 35076, 35115, 35080, 35288, 35113, 35288, 35118, 35078, 35205, 35277, 35262, 35267, 35265, 35275, 35278, 35207, 35292, 35067, 35300, 1e3, 35309, 33494, 35323, 35333, 35327, 35485, 35331, 35485, 35336, 35325, 35341, 35474, 35452, 35464, 35462, 35472, 35475, 35343, 35530, 35560, 35561, 35532, 35575, 33475, 35589, 35920, 35610, 35735, 35621, 35678, 35625, 35732, 35628, 35638, 35632, 35673, 35636, 35673, 35641, 35630, 35676, 35732, 35681, 35623, 35738, 35612, 35762, 35772, 35766, 35831, 35770, 35831, 35775, 35764, 35876, 35906, 35907, 35878, 35921, 35591, 35935, 36079, 36035, 36065, 36066, 36037, 36080, 35937, 36094, 36197, 36150, 36185, 36186, 36152, 36198, 36096, 36212, 36310, 36268, 36298, 36293, 249602058, 36299, 36270, 36311, 36214, 36325, 36716, 36346, 36556, 36438, 36442, 36440, 36527, 36546, 1e3, 36559, 36348, 36672, 36702, 36703, 36674, 36717, 36327, 36731, 36865, 36787, 36853, 36854, 36789, 36866, 36733, 36880, 37887, 36899, 37609, 36916, 36958, 36920, 37606, 36956, 37606, 36961, 36918, 37036, 37049, 37040, 37091, 37047, 37091, 37052, 37038, 37612, 36901, 37623, 37767, 37662, 37667, 37665, 37671, 37770, 37625, 37827, 37871, 37854, 37867, 37872, 37829, 37888, 36882, 37902, 39931, 37933, 39647, 37974, 37979, 37977, 37983, 38029, 38032, 39218, 39402, 39229, 39241, 39233, 39399, 39239, 39399, 39244, 39231, 39387, 39392, 39390, 39396, 39403, 39220, 39596, 39601, 39599, 39644, 39609, 39614, 39612, 39621, 39642, 39573, 39650, 37935, 39743, 39773, 39747, 39785, 39771, 39785, 39776, 39745, 39830, 39917, 39841, 39875, 39845, 39914, 39873, 39914, 39878, 39843, 39918, 39832, 39932, 37904, 39946, 40844, 39961, 40810, 39986, 39998, 39990, 40807, 39996, 40807, 40001, 39988, 40461, 40464, 40797, 40801, 40799, 40805, 40813, 39963, 40845, 39948, 40859, 41373, 40874, 41339, 40893, 40905, 40897, 41336, 40903, 41336, 40908, 40895, 41207, 41210, 41342, 40876, 41374, 40861, 41388, 42299, 41403, 42265, 41420, 41432, 41424, 42262, 41430, 42262, 41435, 41422, 42207, 42211, 42209, 42260, 42268, 41405, 42300, 41390, 42314, 43311, 42329, 43277, 42354, 42366, 42358, 43274, 42364, 43274, 42369, 42356, 43123, 43148, 43149, 43152, 43280, 42331, 43312, 42316, 43326, 43526, 43452, 43512, 43479, 43487, 43485, 43491, 43513, 43454, 43527, 43328, 43541, 43906, 43566, 43583, 43586, 43568, 43596, 43605, 43608, 43598, 43617, 43717, 43628, 43638, 43632, 43714, 43636, 43714, 43641, 43630, 43720, 43619, 43732, 43791, 43741, 43758, 43745, 43788, 43756, 43788, 43761, 43743, 43794, 43734, 43907, 43543, 43921, 44294, 43936, 44259, 43959, 43963, 43961, 43979, 43980, 43985, 43983, 44175, 44165, 44175, 44169, 44255, 44173, 44255, 44178, 44167, 44234, 44239, 44237, 44254, 44262, 43938, 44295, 43923, 44309, 44634, 44324, 44600, 44603, 44326, 44635, 44311]]), window) +} (); +__TENCENT_CHAOS_STACK.g = function() { + return __TENCENT_CHAOS_STACK.shift()[0] +}; + +function get_form() { + return window.TDC.getData() +} \ No newline at end of file diff --git a/z_working/tengxunVm.js b/z_working/tengxunVm.js new file mode 100644 index 0000000..d7ddc16 --- /dev/null +++ b/z_working/tengxunVm.js @@ -0,0 +1,44 @@ +const fs = require('fs'); +const QXVM_GENERATE = require('../qxVm_sanbox/qxVm.sanbox'); + + + + +function ReadCode(name, dir) { + let file_path = dir === undefined ? `${__dirname}/${name}` : `${__dirname}/${dir}/${name}`; + return fs.readFileSync(file_path) + "\r\n" +} + + +const js_code = ReadCode(`./tengxun.js`); +const user_config = { + compress: false, + proxy_config: { proxy: false, print_log: true }, + window_attribute: {}, + env: { + canvas: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACWCAYAAABkW7XSAAAAAXNSR0IArs4c6QAABGJJREFUeF7t1AEJAAAMAsHZv/RyPNwSyDncOQIECEQEFskpJgECBM5geQICBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAgQdWMQCX4yW9owAAAABJRU5ErkJggg==", + plugin: [ + { description: "Portable Document Format", filename: "internal-pdf-viewer", name: "Chrome PDF Plugin", MimeTypes: [{ description: "Portable Document Format", suffixes: "pdf", type: "application/x-google-chrome-pdf" }] }, + { description: "", filename: "mhjfbmdgcfjbbpaeojofohoefgiehjai", name: "Chrome PDF Viewer", MimeTypes: [{ description: "", suffixes: "pdf", type: "application/pdf" }] }, + { description: "", filename: "internal-nacl-plugin", name: "Native Client", MimeTypes: [{ description: "Native Client Executable", suffixes: "", type: "application/x-nacl" }, { description: "Portable Native Client Executable", suffixes: "", type: "application/x-pnacl" }] } + ], + navigator: { + // userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36 Edg/100.0.1185.54" + }, + location: { + href: "https://www.zhipin.com/web/common/security-check.html?seed=nHjY%2FPvTMyr0OEOa6mIllBBK17lGfb6%2FrZZbDs%2BiVFM%3D&name=f34f16c6&ts=1661952065227&callbackUrl=https%3A%2F%2Fwww.zhipin.com%2Fweb%2Fgeek%2Fjob%3Fquery%3Dpython%26city%3D101210100" + }, + document: { + referrer: "https://www.zhipin.com/web/geek/job?query=python&city=101210100", + cookie: "" + } + } +} + +let result = QXVM_GENERATE.QXVm_sanbox(js_code, "get_form", user_config); + +console.log(result.get_form()) + +// console.log(result.get_form()) + +// console.log(result.get_form()) diff --git a/z_working/unknow1.js b/z_working/unknow1.js new file mode 100644 index 0000000..085a9e2 --- /dev/null +++ b/z_working/unknow1.js @@ -0,0 +1,3 @@ +function get_from (){ + return !function(ۥ,ۦ,ﱞ,ﱟ,ﱠ,ﱡ,ﱢ,ﱣ,ۥۥ,ۦۥ,ﱞۥ,ﱟۥ,ﱠۥ,ﱡۥ,ﱢۥ,ﱣۥ,ۥۦ,ۦۦ,ﱞۦ,ﱟۦ,ﱠۦ,ﱡۦ,ﱢۦ,ﱣۦ,ۥﱞ,ۦﱞ,ﱞﱞ,ﱟﱞ,ﱠﱞ,ﱡﱞ,ﱢﱞ,ﱣﱞ,ۥﱟ,ۦﱟ,ﱞﱟ,ﱟﱟ,ﱠﱟ,ﱡﱟ,ﱢﱟ,ﱣﱟ,ۥﱠ,ۦﱠ,ﱞﱠ,ﱟﱠ,ﱠﱠ,ﱡﱠ,ﱢﱠ,ﱣﱠ,ۥﱡ,ۦﱡ,ﱞﱡ,ﱟﱡ,ﱠﱡ,ﱡﱡ,ﱢﱡ,ﱣﱡ,ۥﱢ,ۦﱢ,ﱞﱢ,ﱟﱢ,ﱠﱢ,ﱡﱢ,ﱢﱢ,ﱣﱢ,ۥﱣ,ۦﱣ,ﱞﱣ,ﱟﱣ,ﱠﱣ,ﱡﱣ,ﱢﱣ,ﱣﱣ,ۥۥۥ,ۦۥۥ,ﱞۥۥ,ﱟۥۥ,ﱠۥۥ,ﱡۥۥ,ﱢۥۥ,ﱣۥۥ,ۥۦۥ,ۦۦۥ,ﱞۦۥ,ﱟۦۥ,ﱠۦۥ,ﱡۦۥ,ﱢۦۥ,ﱣۦۥ,ۥﱞۥ,ۦﱞۥ,ﱞﱞۥ,ﱟﱞۥ,ﱠﱞۥ,ﱡﱞۥ,ﱢﱞۥ,ﱣﱞۥ,ۥﱟۥ,ۦﱟۥ,ﱞﱟۥ,ﱟﱟۥ,ﱠﱟۥ,ﱡﱟۥ,ﱢﱟۥ,ﱣﱟۥ,ۥﱠۥ,ۦﱠۥ,ﱞﱠۥ,ﱟﱠۥ,ﱠﱠۥ,ﱡﱠۥ,ﱢﱠۥ,ﱣﱠۥ,ۥﱡۥ,ۦﱡۥ,ﱞﱡۥ,ﱟﱡۥ,ﱠﱡۥ,ﱡﱡۥ,ﱢﱡۥ,ﱣﱡۥ,ۥﱢۥ,ۦﱢۥ,ﱞﱢۥ,ﱟﱢۥ,ﱠﱢۥ,ﱡﱢۥ,ﱢﱢۥ,ﱣﱢۥ,ۥﱣۥ,ۦﱣۥ,ﱞﱣۥ,ﱟﱣۥ,ﱠﱣۥ,ﱡﱣۥ,ﱢﱣۥ,ﱣﱣۥ,ۥۥۦ,ۦۥۦ,ﱞۥۦ,ﱟۥۦ,ﱠۥۦ,ﱡۥۦ,ﱢۥۦ){function ﱣۥۦ(ۥ,ۦ,ﱞ,ﱟ,ﱡ,ﱢ,ۦۥ,ﱡۥ,ۦۦ,ﱟۦ){return ۦ==ﱞﱡۥ?(ﱟ?ﱞ[ﱠﱞۥ][ﱢﱡ[ﱢﱢ]]()||ﱞ[ﱞﱢۥ][ﱢﱡ[ﱢﱢ]]():ﱞ[ﱠﱞۥ][ﱢﱡ[ﱡﱢ]](ﱣﱡ)||ﱞ[ﱞﱢۥ][ﱢﱡ[ﱡﱢ]](ﱣﱡ))&&undefined:ۦ==ﱢﱡۥ?(ﱞ={})&&(ﱞ[ﱠﱞۥ]=[])&&(ﱞ[ﱞﱢۥ]=[])&&((ﱞ[ﱞۦۥ]=ﱣﱡ)||ۥﱢ)&&ﱞ:ۦ==ﱞﱣ?ﱞ?ﱟ[ﱡﱞ(ﱟ)-ۥﱢ]:ﱟ[ﱡﱞ(ﱟ)-ۥﱢ]=ﱡ:ۦ==ﱠﱠۥ?ﱣﱞ(ﱟ,ۦﱠۥ)?ۥﱟ(ﱟ,ۦﱠۥ):ﱣﱞ(ﱟ,ﱡﱣ)?ۥﱟ(ﱟ,ﱡﱣ):ﱡ?ﱠﱠ(ﱞ,ﱟ):ۥﱟ(ﱟ,ﱞﱟۥ):ۦ==ﱠﱢ?((ﱡ={})[ﱢﱡ[ﱞﱠۥ]]=ﱞ)&&ﱡ:ۦ==ﱠﱢۥ?ﱞ[ﱢﱡ[ﱟﱞۥ]]:ۦ==ۥۦۥ?!(ﱡ=ﱞۦ[ﱞ[ﱟ]])||ﱟ!=ۦﱠۥ&&ﱟ!=ﱞﱟۥ?ﱡ:ﱞ[ﱢﱡ[ﱢﱡۥ]]?ۦﱞ[ﱞ[ﱢﱡ[ﱢﱡۥ]]]:((ﱞ[ﱢﱡ[ﱢﱡۥ]]=ﱞ[ﱢﱡ[ۦﱢ]]+ﱢﱡ[ﱢﱡۥ]+(ﱞ[ﱢﱡ[ﱣۦۥ]]^ﱠۥۥ))||ۥﱢ)&&((ۦﱞ[ﱞ[ﱢﱡ[ﱢﱡۥ]]]=ۦﱟ(ۦﱢ,ۦﱟ(ۥﱢ,ﱡ),ﱞ[ﱢﱡ[ﱣۦۥ]]&ۦۥۦ))||ۥﱢ)&&ۦﱞ[ﱞ[ﱢﱡ[ﱢﱡۥ]]]:ۦ==ﱡﱞۥ?(ﱢ=ﱞﱟ(ﱟ?ﱞ[ﱢﱡ[ۦۦۥ]](ﱟ):ﱞ))&&[ﱡ?null:ﱞ[ﱢﱡ[ۦۦۥ]](ﱟ+ﱢ[ۥﱢ],ﱟ+ﱢ[ﱣﱡ]+ﱢ[ۥﱢ]),ﱟ+ﱢ[ﱣﱡ]+ﱢ[ۥﱢ]]:ۦ==ﱟۦۥ?(ﱟﱞ+=ۥﱢ)&&ﱠ:ۦ==ﱡﱣۥ?ﱡ&&ﱟ!=ﱢﱡ[ﱣۥۥ]?ﱠﱞ[ﱢﱡ[ﱢﱣ]](ﱞ,ﱟ):ﱟ in ﱞ:ۦ==ﱟﱠۥ?((ﱣﱞ(ﱞ,ﱞﱟۥ)?ﱡﱡ[ﱣﱡ][ۥﱟ(ﱞ,ﱞﱟۥ)]=ﱡﱡ[ﱟﱢ][ﱟ]:ﱣﱞ(ﱞ,ﱠۦۥ)?ﱡﱡ[ﱣﱡ][ۥﱟ(ۥﱟ(ﱞ[ﱠۦۥ],ﱞﱟۥ),ﱞﱟۥ)]=ﱞۥ(ﱡﱡ[ﱟﱢ])[ﱢﱡ[ﱣﱞۥ]](ﱣﱠ)[ﱢﱡ[ۦۦۥ]](ﱟ):ۥﱢ)||ۥﱢ)&&undefined:ۦ==ﱢﱟۥ?ﱡﱡ[ﱟﱢ][ﱞ]:ۦ==ﱠﱡۥ?ﱞ==ۥﱢ?ۦﱟ(ۥﱢ,ﱟﱡ(ﱞﱢ,ﱟ))[ﱣﱡ]^ﱡ&ۦۥۦ:ﱞ==ۦﱢ?ۦﱟ(ۦﱢ,ۦﱟ(ۥﱢ,ﱟﱡ(ﱞﱢ,ﱟ)),ﱡ&ۦۥۦ):ﱞ==ﱞﱢ?ۥۥ(ﱟ[ﱢﱡ[ۥﱠۥ]](ﱣۦ,ﱢﱡ[ﱡﱞۥ])):undefined:ۦ==ﱡﱢۥ?ﱡ==ۥﱣ?ﱟﱡ(ۥﱢ,ﱞ,ﱟ):ﱡ==ﱞﱟۥ?ﱟﱡ(ﱞﱢ,ﱞ):ﱡ==ﱢﱢ?null:ﱡ==ۦﱠۥ?ﱟﱡ(ﱞﱢ,ﱞ):ﱡ==ﱡﱣ?ﱟۥ(ﱟﱡ(ۦﱢ,ﱞ,ﱟ)):ﱡ==ﱟﱞۥ?!!ﱠۥ(ﱣ(ﱟﱡ(ۥﱢ,ﱞ,ﱟ))):ﱡ==ﱣﱡ?ﱣۥ(ﱟﱡ(ۦﱢ,ﱞ,ﱟ)):ﱡ==ﱠﱣ?((ﱢ=ﱟﱡ(ۦﱢ,ﱞ,ﱟ))||ۥﱢ)&&ﱢۥ(ﱢ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱢ[ﱢﱡ[ﱠﱢ]](ﱢﱡ[ﱢﱡۥ])),ﱢ[ﱢﱡ[ۦۦۥ]](ﱢ[ﱢﱡ[ﱠﱢ]](ﱢﱡ[ﱢﱡۥ])+ۥﱢ)):ﱣﱡ:ۦ==ﱟﱣۥ?ۥۦ++&&ﱟﱞ++:ۦ==ﱣﱡۥ?(ﱟۦ=[][ﱢﱡ[ۥۥۥ]](ﱞ,[ﱡﱡ=[{},ﱢ,ﱡ,ۦۥ,ﱡۥ]]))&&(ﱟ!==ﱢﱡ[ۦﱠۥ]?ﱡﱡ[ﱣﱡ][ﱟ]=ۦۦ:ۥﱢ)&&ﱡﱡ[ۥﱢ][ﱢﱡ[ﱣﱞۥ]](ﱢﱠ)&&!(ۥ-ۥۦ)&&ﱠﱠ(ﱟۦ,ﱡﱡ[ۦﱢ],ۥﱠ()):function ﱠۦ(){return ۥﱡ(ﱞ,ﱟ,ﱡ,ﱢ,this,arguments,ﱠۦ)}}function ۥۦۦ(ۥ,ۦ,ﱞ,ﱟ,ﱠ,ﱡ,ﱢ,ۥۥ,ﱞۥ,ﱟۥ){for(ۦ==ۦۦۥ?ﱡ=ﱡﱞ(ﱞ)-ۥﱢ:ۦ==ﱣۦۥ?!(ﱢ=ﱣﱡ)&&(ﱡ=ﱡﱞ(ﱞ)-ۥﱢ):ۦ==ﱠﱣۥ?(ﱠ=ﱢﱡ[ۥﱟۥ])||(ﱡ=ﱞ):ۦ==ﱢﱣ?!(ﱟ=ﱣﱡ)&&!(ۥۥ=ﱣﱡ)&&(ﱠ=ﱞ[ﱢﱡ[ﱟۥۥ]](ﱢۦ)[ﱣﱡ])&&((ﱡ=ﱠ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,-ۥﱢ))||ۥﱢ)&&(ﱢ=ﱠ[ﱢﱡ[ﱢﱠۥ]](ﱡﱞ(ﱠ)-ۥﱢ))&&((ﱟ+=ﱠۦ[ﱢﱡ[ﱞﱣ]](ﱢ))||ۥﱢ)&&(ﱞۥ=ﱡﱞ(ﱡ)-ۥﱢ):ۦ==ﱟۥۥ?(ﱡ=[])&&(ﱢ=ﱣﱡ):ۦ==ۦﱢۥ?(ﱞ=ﱞ[ﱢﱡ[ﱟۥۥ]](ﱢۥ(ﱢۦ,ﱢﱡ[ۥﱢ])))&&(ﱟ=ﱞ[ﱢﱡ[ۦۦۥ]](ۥﱢ,-ۥﱢ))&&(ﱠ=[])&&ﱟ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){for(((ﱡ=ﱞﱟ(ۥ)[ﱣﱡ][ﱢﱡ[ﱣﱢ]](ﱣﱣ))||ۥﱢ)&&!(ۥۥ=ﱣﱡ)&&(ﱢ=ﱣﱢ-ﱡﱞ(ﱡ));ۥۥ<ﱢ;ۥۥ++)ﱡ=ﱢﱡ[ﱣﱠۥ]+ﱡ;ﱠ[ﱢﱡ[ﱡﱢ]](ﱡ)})&&!(ۥۥ=ﱣﱡ)&&(ﱞۥ=ﱞﱟ(ﱞ[ﱢﱡ[ۦۦۥ]](-ۥﱢ)[ﱣﱡ])[ﱣﱡ][ﱢﱡ[ﱣﱢ]](ﱣﱣ)):ۦ==ﱟﱟۥ&&(ﱟ=ﱟﱟ(ﱞ,ﱣﱡ))&&((ﱠ=ﱟ[ﱣﱡ])||ۥﱢ)&&((ﱡ=ﱟ[ۥﱢ])||ۥﱢ)&&((ﱠ=ۦﱡ(ﱠ))||ۥﱢ)&&(ۥ[ﱢﱡ[ۦﱣ]]=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ۥ,ﱟﱣۥ))&&(ۥ[ﱢﱡ[ﱣﱢ]]=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ۥ,ﱟۦۥ));ۦ==ۦۦۥ||ۦ==ﱣۦۥ?ﱡ>=ﱣﱡ:ۦ==ﱠﱣۥ?ﱡ<ﱟ:ۦ==ﱢﱣ?ﱞۥ>=ﱣﱡ:ۦ==ﱟۥۥ?ﱢ<ﱡﱞ(ﱟ):ۦ==ۦﱢۥ?ۥۥ<ﱞﱟ(ﱞ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ۥﱢ)[ﱣﱡ])[ﱣﱡ]-ﱡﱞ(ﱟ)*ﱣﱢ-ﱡﱞ(ﱞۥ):ۦ==ﱟﱟۥ?ﱡﱞ(ﱠ):ﱣﱡ;ۦ==ۦۦۥ?ﱡ--:ۦ==ﱣۦۥ?ﱢ++&&ﱡ--:ۦ==ﱠﱣۥ?ﱡ++:ۦ==ﱢﱣ?ﱞۥ--:ۦ==ﱟۥۥ?ﱢ++:ۦ==ۦﱢۥ?ۥۥ++:ﱣﱡ)if(ۦ==ۦۦۥ?ﱣﱞ(ﱞ[ﱡ][ﱣﱡ],ﱟ,ۥﱢ)&&(ﱞۥ=!0)&&((ۥۥ=ﱞ[ﱡ][ﱣﱡ][ﱟ]=ﱠ)||ۥﱢ)&&ﱞۥ:ۦ==ﱣۦۥ?ﱢ==ﱣﱡ&&((ﱟ==ﱢﱡ[ۦﱠۥ]?(ﱞۥ=!0)&&(ۥۥ=null):ﱟ==ﱢﱡ[ﱡﱣ]?(ﱞۥ=!0)&&(ۥۥ=ۦﱠ(ۥﱢ,ﱞ)[ﱟﱢ]):ﱟ==ﱢﱡ[ﱢﱞۥ]?(ﱞۥ=!0)&&(ۥۥ=ﱞ[ﱣﱡ][ﱢﱢ]):ﱣﱡ)||ۥﱢ)&&ﱞۥ||((ﱡ==ﱣﱡ&&ﱟ==ﱢﱡ[ﱟﱣ]?(ﱞۥ=!0)&&(ۥۥ=ﱞ[ﱣﱡ][ﱣﱡ]):ﱣﱞ(ﱞ[ﱡ][ﱣﱡ],ﱟ,ۥﱢ)?(ﱞۥ=!0)&&(ۥۥ=ﱞ[ﱡ][ﱣﱡ][ﱟ]):ﱣﱡ)||ۥﱢ)&&ﱞۥ||ﱡ==ﱣﱡ&&((ﱟ==ﱢﱡ[ۦۥۥ]?(ﱞۥ=!0)&&(ۥۥ=ﱠ&&typeof exports==ﱢﱡ[ﱢﱟۥ]?undefined:exports):ﱟ==ﱢﱡ[ﱠﱣ]?(ﱞۥ=!0)&&(ۥۥ=ﱠ&&typeof module==ﱢﱡ[ﱢﱟۥ]?undefined:module):ﱟ==ﱢﱡ[ﱡﱡۥ]?(ﱞۥ=!0)&&(ۥۥ=ﱠ&&typeof require==ﱢﱡ[ﱢﱟۥ]?undefined:require):((ۥۥ=ﱞ[ﱡ][ﱣﱡ][ﱟ])||ۥﱢ)&&(ۥۥ||ﱟ in ﱞ[ﱡ][ﱣﱡ])&&(ﱞۥ=!0))||ۥﱢ)&&ﱞۥ:ۦ==ﱠﱣۥ?(ﱠ+=ﱣ(ﱡ))&&ﱣﱡ:ۦ==ﱢﱣ?((ﱟ+=ﱡۦ[ﱢﱡ[ﱞﱣ]](ﱡ[ﱢﱡ[ﱢﱠۥ]](ﱞۥ))*ﱡۥ(ﱡﱞ(ﱡۦ),ۥۥ)*ﱡﱞ(ﱠۦ))||ۥﱢ)&&ۥۥ++&&ﱣﱡ:ۦ==ﱟۥۥ?(ﱡ[ﱢ]=ﱞ==ۥﱢ?ﱟ[ﱢﱡ[ﱣﱣ]](ﱢ):ﱣ(ﱟ[ﱢ]^ﱠ))&&ﱣﱡ:ۦ==ۦﱢۥ?(ﱞۥ=ﱢﱡ[ﱣﱠۥ]+ﱞۥ)&&ﱣﱡ:ۦ==ﱟﱟۥ?(ﱞۥ=ﱠۥ(ﱠ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ۥﱢ),ﱣﱣ))&&((ﱟۥ=ﱠۥ(ﱠ[ﱢﱡ[ۦۦۥ]](ۥﱢ,ۥﱢ+ﱞۥ),ﱣﱣ))||ۥﱢ)&&(ﱢ=ۥﱢ+ﱞۥ)&&(ۥۥ=ﱢ+ﱟۥ)&&ۦۦ[ﱢﱡ[ﱡﱢ]](ﱠ[ﱢﱡ[ۦۦۥ]](ﱢ,ۥۥ))&&(ﱠ=ﱠ[ﱢﱡ[ۦۦۥ]](ۥۥ))&&ﱣﱡ:ﱣﱡ)return ۥۥ;if(ۦ==ﱣۦۥ&&!ﱠ)throw ۦۥ(ﱟ+ﱢﱡ[ﱞﱟۥ]);return ۦ==ۦۦۥ?ﱞ[ﱣﱡ][ﱣﱡ][ﱟ]=ﱠ:ۦ==ﱠﱣۥ?ﱠ:ۦ==ﱢﱣ?[ﱟ,ﱡﱞ(ﱠ)]:ۦ==ﱟۥۥ?ﱞ==ۥﱢ?ﱡ:ﱡ[ﱢﱡ[ﱟﱟۥ]](ﱢﱡ[ۥﱟۥ]):ۦ==ۦﱢۥ?ﱠ[ﱢﱡ[ﱡﱢ]](ﱞۥ)&&ﱠ[ﱢﱡ[ﱟﱟۥ]](ﱢﱡ[ۥﱟۥ]):ۦ==ﱟﱟۥ?ﱞ[ﱢﱡ[ۦۦۥ]](ﱡ):void 0}function ﱠﱠ(ۥ,ۦ,ﱞ,ﱠ,ﱣ,ۥۥ,ۦۥ,ﱞۥ,ﱟۥ,ﱠۥ,ﱢۥ,ﱣۥ,ۦۦ,ﱞۦ,ﱟۦ,ﱠۦ,ﱡۦ,ﱢۦ,ﱣۦ,ۥﱞ,ۦﱞ,ﱞﱞ,ﱟﱞ,ﱠﱞ,ﱢﱞ,ۦﱟ,ﱞﱟ,ﱟﱟ,ﱡﱠ,ﱢﱠ){return(ﱟۥ=ﱞ[ﱞۥ=ﱞ[ﱢﱡ[ۦﱢ]]])&&ﱞۥ==ۥۦۥ?function(){throw ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ])}():ﱞۥ==ﱡﱞۥ?function(){debugger}():ﱞۥ==ۥﱣ||ﱞۥ==ۦﱠۥ||ﱞۥ==ﱡﱣ||ﱞۥ==ﱟﱞۥ||ﱞۥ==ﱢﱢ||ﱞۥ==ﱣﱡ||ﱞۥ==ﱠﱣ?ۥﱟ(ﱞ,ﱞۥ):ﱞۥ==ۦﱟۥ?ﱟۥ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){ﱠﱠ(ۦ,ۥ)}):ﱞۥ==ﱢﱟۥ?ﱣﱞ(ﱟۥ[ﱣﱡ],ۥﱟۥ)?((ﱠﱞ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]))||ۥﱢ)&&ﱟۥ[ﱣﱡ][ۥﱟۥ][ﱢﱡ[ﱣﱞۥ]](function(ۥ,ﱞ){ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ۥﱟ(ۥ,ﱞﱟۥ)]=ﱠﱞ[ﱞ]}):(ﱟﱞ=ۥﱟ(ﱟۥ[ﱣﱡ],ﱞﱟۥ))&&((ﱠﱞ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]))||ۥﱢ)&&(ﱣﱞ(ﱟۥ[ۥﱢ],ۥﱣ)&&ۥﱟ(ﱟۥ[ۥﱢ],ۥﱣ)==ﱞﱣۥ?ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ﱟﱞ]=ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ﱟﱞ]:ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ﱟﱞ]=ﱠﱞ):ﱞۥ==ﱟﱠۥ?ﱟۥ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){ﱠﱠ(ۦ,ۥ,ﱠ)}):ﱞۥ==ﱞﱢ?ﱠ?ۦﱠ(ﱣﱡ,ﱠ[ﱠﱞۥ],ۥﱢ):ﱣﱡ:ﱞۥ==ﱠﱢ?ﱠ?ۦﱠ(ﱣﱡ,ﱠ[ﱞﱢۥ],ۥﱢ):ﱣﱡ:ﱞۥ==ﱟۦۥ||ﱞۥ==ﱟﱢ?function(ۥ,ﱞ,ﱟ,ﱡ,ﱢ){for(((ﱟ=ﱞۥ==ﱟۦۥ?ۥﱠ():ﱠ)||ۥﱢ)&&!(ﱡ=ﱣﱡ)&&(ﱞ=ﱟۥ[ﱢﱡ[ﱢۦۥ]](function(ﱞ){return ﱞ[ﱞﱠۥ]?ﱠﱠ(ۦ,ﱞ)&&null:!ﱞ[ۦﱟۥ]||ﱞ[ۦﱟۥ][ﱢﱡ[ﱣﱞۥ]](function(ﱞ){!(ۥ=ۥﱟ(ﱞ[ﱢﱟۥ][ﱣﱡ],ﱞﱟۥ))&&!ۥﱢ||ﱣﱞ(ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ],ۥ)||(ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ۥ]=undefined)})&&!0}));ﱡ<ﱡﱞ(ﱞ);ﱡ++){if(ۦﱠ(ۥﱢ,ﱟ[ﱞﱢۥ])){ۦﱠ(ﱣﱡ,ﱟ[ﱞﱢۥ],ﱣﱡ);break}if(((ﱢ=ﱠﱠ(ۦ,ﱞ[ﱡ],ﱟ))||ۥﱢ)&&ۦﱠ(ۥﱢ,ﱟ[ﱠﱞۥ]))break;if(ﱟ[ﱞۦۥ])return ﱢ}}():ﱞۥ==ﱟﱟۥ||ﱞۥ==ﱣۦۥ?function(ۥ,ﱞ,ﱟ){function ﱡ(ۥ,ۦ,ﱞ,ﱟ,ﱠ){ۦ[ﱞ][ﱢﱡ[ﱣﱞۥ]](function(ۦ,ﱢ){ﱣﱞ(ۦ,ﱞ)?ﱡ(ۥ,ۦ,ﱞ,ﱟ[ﱢ],ﱠ):ﱣﱞ(ۦ,ﱞﱟۥ)&&(ﱠ?ۦﱠ(ۥﱢ,ۥ)[ﱣﱡ][ۥﱟ(ۦ,ﱞﱟۥ)]=ﱟ[ﱢ]:ﱡﱟ(ۥ,ۥﱟ(ۦ,ﱞﱟۥ),ﱟ[ﱢ]))})}function ﱢ(ۥ,ۦ,ﱞ,ﱟ,ﱠ){ۦ[ﱞ][ﱢﱡ[ﱣﱞۥ]](function(ۦ){((ﱠ=ۦ[ﱢﱟۥ][ﱣﱡ])||ۥﱢ)&&ﱣﱞ(ﱠ,ﱞﱟۥ)?ۦﱠ(ۥﱢ,ۥ)[ﱣﱡ][ۥﱟ(ﱠ,ﱞﱟۥ)]=ﱟ:ﱣﱞ(ﱠ,ۥﱟۥ)&&ﱡ(ۥ,ﱠ,ۥﱟۥ,ﱟ,ۥﱢ)})}for(ﱞ in!ﱢﱟ(ﱠ)&&(ۥ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]))){if(ﱞۥ==ﱣۦۥ&&(ﱞ=ۥ[ﱞ])&&ﱣﱡ||ﱣﱞ(ﱟۥ[ﱣﱡ],ﱞﱟۥ)?ﱡﱟ(ۦ,ۥﱟ(ﱟۥ[ﱣﱡ],ﱞﱟۥ),ﱞ):ﱣﱞ(ﱟۥ[ﱣﱡ],ۥﱟۥ)?ﱡ(ۦ,ﱟۥ[ﱣﱡ],ۥﱟۥ,ﱞ):ﱣﱞ(ﱟۥ[ﱣﱡ],ۦﱟۥ)&&ﱢ(ۦ,ﱟۥ[ﱣﱡ],ۦﱟۥ,ﱞ),((ﱟ=ﱠﱠ(ۦ,ﱟۥ[ۦﱢ],ﱠ))||ۥﱢ)&&ۦﱠ(ۥﱢ,ﱠ[ﱠﱞۥ]))break;if(ۦﱠ(ۥﱢ,ﱠ[ﱞﱢۥ]))ۦﱠ(ﱣﱡ,ﱠ[ﱞﱢۥ],ﱣﱡ);else if(ﱠ[ﱞۦۥ])return ﱟ}ﱢﱟ(ﱠ,ۥﱢ)}():ﱞۥ==ﱡﱟۥ?function(){for(ﱢﱟ(ﱠ)||ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]);ﱠﱠ(ۦ,ﱟۥ[ۥﱢ])&&(!(ﱞﱞ=ﱠﱠ(ۦ,ﱟۥ[ﱞﱢ],ﱠ))&&!ۥﱢ||!ۦﱠ(ۥﱢ,ﱠ[ﱠﱞۥ]));ﱠﱠ(ۦ,ﱟۥ[ۦﱢ]))if(ۦﱠ(ۥﱢ,ﱠ[ﱞﱢۥ]))ۦﱠ(ﱣﱡ,ﱠ[ﱞﱢۥ],ﱣﱡ);else if(ﱠ[ﱞۦۥ])return ﱞﱞ;ﱢﱟ(ﱠ,ۥﱢ)}():ﱞۥ==ﱞﱣ||ﱞۥ==ۦﱣ?function(ۥ){for((ﱞۥ==ۦﱣ?ۥ=!0:ۥﱢ)&&ﱢﱟ(ﱠ);(!ۥ||ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ],ﱠ,ﱣﱡ,ﱣﱡ,ۥﱢ))&&(!(ﱞﱞ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ],ﱠ))&&!ۥﱢ||!ۦﱠ(ۥﱢ,ﱠ[ﱠﱞۥ]));)if((ۥ=!0)&&ۦﱠ(ۥﱢ,ﱠ[ﱞﱢۥ]))ۦﱠ(ﱣﱡ,ﱠ[ﱞﱢۥ],ﱣﱡ);else if(ﱠ[ﱞۦۥ])return ﱞﱞ;ﱢﱟ(ﱠ,ۥﱢ)}():ﱞۥ==ﱠﱞۥ?function(ۥ,ﱞ,ﱟ){try{ﱞ=ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ],ﱠ)}catch(ﱡ){ﱞ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ],ﱠ,ﱡ)}finally{return((ۥ=ﱠ[ﱞۦۥ])||ۥﱢ)&&!(ﱠ[ﱞۦۥ]=ﱣﱡ)&&((ﱟ=ﱠﱠ(ۦ,ﱟۥ[ۦﱢ],ﱠ))||ۥﱢ)&&ﱠ[ﱞۦۥ]?ﱟ:(ﱠ[ﱞۦۥ]=ۥ)&&ﱞ}}():ﱞۥ==ﱠۥۥ?function(ۥ,ﱞ,ﱟ,ﱡ,ﱢ,ﱣ,ۥۥ,ۦۥ){for((ﱞ=ﱟۥ[ﱢﱡ[ۦۦۥ]](ۥﱢ))&&!(ﱟ=!1)&&!(ﱡ=!1)&&!(ﱢ=ﱣﱡ)&&((ۥ=ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]))||ۥﱢ)&&ﱢﱟ(ﱠ);ﱢ<ﱡﱞ(ﱞ)&&!ۦﱠ(ۥﱢ,ﱠ[ﱞﱢۥ]);ﱢ++)if((((ۥۥ=ﱠﱠ(ۦ,ﱞ[ﱢ],ۥ))||ۥﱢ)&&ۥ===ۥۥ[ﱣﱡ]?ﱟ=!0:ۥﱢ)&&ﱟ){for(ﱣ=ﱣﱡ;ﱣ<ﱡﱞ(ۥۥ[ۥﱢ]);ﱣ++){if(((ۦۥ=ﱠﱠ(ۦ,ۥۥ[ۥﱢ][ﱣ],ﱠ))||ۥﱢ)&&ۦﱠ(ۥﱢ,ﱠ[ﱠﱞۥ])){ﱡ=!0;break}if(ﱠ[ﱞۦۥ])return ۦۥ}if(ﱡ)break}ﱢﱟ(ﱠ,ۥﱢ)}():ﱞۥ==ﱠﱟۥ?[ﱣﱞ(ﱟۥ[ﱣﱡ],ﱞﱟۥ)&&ۥﱟ(ﱟۥ[ﱣﱡ],ﱞﱟۥ)==ﱢﱡ[ۦﱠۥ]?ﱠ:ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]),ﱟۥ[ﱢﱡ[ۦۦۥ]](ۥﱢ)]:ﱞۥ==ﱞﱟۥ?ﱠﱟ(ۦ,ۥﱟ(ﱞ,ﱞۥ)):ﱞۥ==ﱞۦۥ?(ﱠۥ={})&&((ﱠۥ[ۥﱟ(ﱟۥ[ﱣﱡ],ﱞﱟۥ)]=ﱣ)||ۥﱢ)&&ۦ[ﱢﱡ[ﱡﱢ]]([ﱠۥ,null])&&((ﱞﱞ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ],ﱠ))||ۥﱢ)&&(ۦ[ﱢﱡ[ﱢﱢ]]()||ۥﱢ)&&(ﱠ[ﱞۦۥ]?ﱞﱞ:undefined):ﱞۥ==ﱡۦۥ?ﱟۥ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){return ﱠﱠ(ۦ,ۥ)[ﱢﱡ[ﱣﱢ]]()})[ﱢﱡ[ﱟﱟۥ]](ﱢﱡ[ۥﱟۥ]):ﱞۥ==ۦۦۥ?ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]):ﱞۥ==ﱣﱢ?((ﱞۦ=ۥﱟ(ﱟۥ[ﱣﱡ],ۥﱣ))||ۥﱢ)&&(ﱣۥ=ﱟۥ[ۥﱢ])&&(ۦۦ=function(ۥ,ۦ,ﱞ,ﱟ,ﱠ,ﱡ,ﱢ,ﱣ){return(((ﱣﱞ(ﱞ,ﱣﱣ)?(ﱡ=!0)&&(ﱣ=ﱞ[ﱣﱣ])&&(ﱢ=ﱠﱠ(ۥ,ﱣ[ﱣﱡ]))&&(ﱣ=ﱞﱠ(ۥ,ﱣ[ۥﱢ],ﱠﱠ(ۥ,ﱣ[ۦﱢ])==ۦﱣۥ)):ﱞ=ۥﱟ(ﱞ,ﱞﱟۥ))||ﱠ)&&(ﱟ=ﱠﱠ(ۥ,ﱟ))||ۥﱢ)&&(ۦ==ۦﱡۥ?ﱡ?ﱢ[ﱣ]=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱟ):ۦ==ﱣﱟۥ?ﱡ?ﱢ[ﱣ]+=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)+ﱟ):ۦ==ﱣﱡ?ﱡ?ﱢ[ﱣ]-=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)-ﱟ):ۦ==ﱢﱢ?ﱡ?ﱢ[ﱣ]*=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)*ﱟ):ۦ==ﱠﱣ?ﱡ?ﱢ[ﱣ]/=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)/ﱟ):ۦ==ﱟﱞۥ?ﱡ?ﱢ[ﱣ]%=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)%ﱟ):ۦ==ﱟﱢۥ?ﱡ?ﱢ[ﱣ]<<=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)<<ﱟ):ۦ==ﱣﱞۥ?ﱡ?ﱢ[ﱣ]>>=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)>>ﱟ):ۦ==ﱡۦۥ?ﱡ?ﱢ[ﱣ]>>>=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)>>>ﱟ):ۦ==ۥﱣ?ﱡ?ﱢ[ﱣ]&=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)&ﱟ):ۦ==ۥﱠۥ?ﱡ?ﱢ[ﱣ]|=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)|ﱟ):ۦ==ۥﱢ?ﱡ?ﱢ[ﱣ]^=ﱟ:ﱡﱟ(ۥ,ﱞ,ﱠﱟ(ۥ,ﱞ)^ﱟ):ۦ==ﱡﱣ?ﱡ?ﱢ[ﱣ]=ﱡۥ(ﱢ[ﱣ],ﱟ):ﱡﱟ(ۥ,ﱞ,ﱡۥ(ﱠﱟ(ۥ,ﱞ),ﱟ)):undefined)})&&(ﱣﱞ(ﱣۥ,ۥﱟۥ)?(ﱢۥ=ﱠﱠ(ۦ,ﱟۥ[ۦﱢ]))[ۥﱟۥ][ﱢﱡ[ﱣﱞۥ]](function(ۥ,ﱞ){return ۦۦ(ۦ,ﱞۦ,ۥ,ﱢۥ[ﱞ])}):ۦۦ(ۦ,ﱞۦ,ﱣۥ,ﱟۥ[ۦﱢ],ۥﱢ)):ﱞۥ==ﱢۥۥ?ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]):ﱞۥ==ﱣﱟۥ?function(ۥ,ﱞ,ﱟ,ﱠ,ﱡ){for((ۥ=[])&&!(ﱞ=ﱣﱡ)&&(ﱠ=ﱣﱡ);ﱞ<ﱡﱞ(ﱟۥ);ﱞ++)if(!ﱣﱞ(ﱟۥ[ﱞ],ۥﱢ))if(ﱣﱞ(ﱟۥ[ﱞ],ﱢۥۥ)){for(!(ﱟ=ﱣﱡ)&&(ﱡ=ﱠﱠ(ۦ,ﱟۥ[ﱞ]));ﱟ<ﱡﱞ(ﱡ);ﱟ++)ۥ[ﱞ+ﱠ+ﱟ]=ﱡ[ﱟ];ﱠ+=ﱟ-ۥﱢ}else ۥ[ﱞ+ﱠ]=ﱠﱠ(ۦ,ﱟۥ[ﱞ]);return ۥ}():ﱞۥ==ﱢۦۥ?((ﱞۦ=ۥﱟ(ﱟۥ[ﱣﱡ],ۥﱣ))||ۥﱢ)&&((ﱟۦ=ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]))||ۥﱢ)&&((ﱣۦ=ﱠﱠ(ۦ,ﱟۥ[ۦﱢ]))||ۥﱢ)&&(ﱞۦ==ﱞﱟۥ?ﱟۦ+ﱣۦ:ﱞۦ==ﱟﱡۥ?ﱟۦ-ﱣۦ:ﱞۦ==ﱡﱢ?ﱟۦ/ﱣۦ:ﱞۦ==ﱣﱢ?ﱟۦ*ﱣۦ:ﱞۦ==ﱟﱢ?ﱡۥ(ﱟۦ,ﱣۦ):ﱞۦ==ﱞۥۥ?ﱟۦ%ﱣۦ:ﱞۦ==ﱣﱣ?ﱟۦ<ﱣۦ:ﱞۦ==ﱣﱢۥ?ﱟۦ<=ﱣۦ:ﱞۦ==ۥﱡۥ?ﱟۦ>ﱣۦ:ﱞۦ==ﱠﱟۥ?ﱟۦ>=ﱣۦ:ﱞۦ==ﱡۥۥ?ﱟۦ in ﱣۦ:ﱞۦ==ﱣﱠۥ?ﱟۦ&ﱣۦ:ﱞۦ==ۦﱣ?ﱟۦ!=ﱣۦ:ﱞۦ==ﱠۥۥ?ﱟۦ!==ﱣۦ:ﱞۦ==ﱢۦۥ?ﱟۦ|ﱣۦ:ﱞۦ==ۥۥۥ?ﱟۦ^ﱣۦ:ﱞۦ==ۥﱞۥ?ﱟۦ==ﱣۦ:ﱞۦ==ۥﱟۥ?ﱟۦ===ﱣۦ:ﱞۦ==ۦﱢ?ﱟۦ<<ﱣۦ:ﱞۦ==ۥﱣۥ?ﱟۦ>>ﱣۦ:ﱞۦ==ﱡﱟۥ?ﱟۦ>>>ﱣۦ:ﱞۦ==ﱡﱠۥ?ﱟۦ instanceof ﱣۦ:undefined):ﱞۥ==ﱞۥۥ?(ﱠ&&(ﱠ[ﱞۦۥ]=ۥﱢ),ۦﱠ(ۥﱢ,ﱟۥ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){return ﱠﱠ(ۦ,ۥ)}))):ﱞۥ==ﱟﱣ?((ﱞﱞ={})&&ﱟۥ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){(ﱠۦ=ﱠﱠ(ۦ,ۥ))&&((ﱟﱞ=ﱠۦ[ﱣﱡ])||ۥﱢ)&&((ﱠﱞ=ﱠۦ[ۥﱢ])||ۥﱢ)&&(ﱠۦ[ۦﱢ]?(ﱡۦ={})&&(ﱡۦ[ﱢﱡ[ﱣﱟۥ]]=!0)&&(ﱡۦ[ﱢﱡ[ۥﱞۥ]]=!0)&&ﱠۦ[ۦﱢ]==ۥﱢ?((ﱡۦ[ﱢﱡ[ﱠﱟۥ]]=ﱠﱞ)||ۥﱢ)&&ﱡ[ﱢﱡ[ﱡۦۥ]][ﱢﱡ[ﱞۦۥ]](ﱞﱞ,ﱟﱞ,ﱡۦ):ﱠۦ[ۦﱢ]==ۦﱢ&&((ﱡۦ[ﱢﱡ[ﱟﱠۥ]]=ﱠﱞ)||ۥﱢ)&&ﱡ[ﱢﱡ[ﱡۦۥ]][ﱢﱡ[ﱞۦۥ]](ﱞﱞ,ﱟﱞ,ﱡۦ):ﱞﱞ[ﱟﱞ]=ﱠﱞ)}),ﱞﱞ):ﱞۥ==ﱞﱞۥ?[ﱞﱠ(ۦ,ﱟۥ[ﱣﱡ],ﱠﱠ(ۦ,ۦﱠ(ۥﱢ,ﱟۥ))==ۦﱣۥ),ﱠﱠ(ۦ,ﱟۥ[ۥﱢ])]:ﱞۥ==ﱣۥۥ?(((ﱢۦ=ﱠﱠ(ۦ,ۦﱠ(ۥﱢ,ﱟۥ)))==ﱠۦۥ?ﱣۦ=ۥﱢ:ﱢۦ==ﱢۥۥ&&(ﱣۦ=ۦﱢ))||ۥﱢ)&&(ﱟۥ=ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,-ۥﱢ))&&((ۥﱞ=ﱠﱠ(ۦ,ۦﱠ(ۥﱢ,ﱟۥ))==ۦﱣۥ)||ۥﱢ)&&(ﱟۥ=ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,-ۥﱢ))&&((ﱟﱞ=ﱞﱠ(ۦ,ۦﱠ(ۥﱢ,ﱟۥ),ۥﱞ))||ۥﱢ)&&((ﱠﱞ=ﱟۥ[ﱡﱞ(ﱟۥ)-ۦﱢ])||ۥﱢ)&&((ۦﱞ=ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱡﱞ(ﱟۥ)-ۦﱢ))||ۥﱢ)&&((ۦﱟ=ﱟﱠ(ﱣﱟ(ۦ,ﱟﱞ,ﱠﱞ,ۦﱞ),ﱟﱞ)[ﱢﱡ[ﱞﱠۥ]])||ۥﱢ)&&[ﱟﱞ,ۦﱟ,ﱣۦ]:ﱞۥ==ﱡﱢ?ۦﱠ(ۥﱢ,ﱟۥ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){return ﱠﱠ(ۦ,ۥ)})):ﱞۥ==ۥﱠۥ?((ﱞﱞ=ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ])?ﱠﱠ(ۦ,ﱟۥ[ۥﱢ],ﱠ):ﱠﱠ(ۦ,ﱟۥ[ۦﱢ],ﱠ))||ۥﱢ)&&ﱠ[ﱞۦۥ]?ﱞﱞ:undefined:ﱞۥ==ۥۥۥ?function(ۥ,ۦ,ﱞ,ﱟ,ﱠ,ﱡ){return ۦ==ﱡﱡۥ?ﱣﱞ(ﱟ,ﱣﱣ)?((ﱡ=ﱟ[ﱣﱣ])||ۥﱢ)&&((ﱠ=ﱠﱠ(ۥ,ﱡ[ﱣﱡ]))||ۥﱢ)&&((ﱡ=ﱞﱠ(ۥ,ﱡ[ۥﱢ],ﱠﱠ(ۥ,ﱡ[ۦﱢ])==ۦﱣۥ))||ۥﱢ)&&(ﱞ==ۦﱣۥ?++ﱠ[ﱡ]:ﱠ[ﱡ]++):((ﱡ=ﱠﱠ(ۥ,ﱟ))||ۥﱢ)&&(ﱣﱞ(ﱟ,ﱞﱟۥ)&&ﱡﱟ(ۥ,ۥﱟ(ﱟ,ﱞﱟۥ),ﱡ+ۥﱢ)||ۥﱢ)&&(ﱞ==ۦﱣۥ?ﱡ+ۥﱢ:ﱡ):ۦ==ﱞﱠۥ?ﱣﱞ(ﱟ,ﱣﱣ)?((ﱡ=ﱟ[ﱣﱣ])||ۥﱢ)&&((ﱠ=ﱠﱠ(ۥ,ﱡ[ﱣﱡ]))||ۥﱢ)&&((ﱡ=ﱞﱠ(ۥ,ﱡ[ۥﱢ],ﱠﱠ(ۥ,ﱡ[ۦﱢ])==ۦﱣۥ))||ۥﱢ)&&(ﱞ==ۦﱣۥ?--ﱠ[ﱡ]:ﱠ[ﱡ]--):((ﱡ=ﱠﱠ(ۥ,ﱟ))||ۥﱢ)&&(ﱣﱞ(ﱟ,ﱞﱟۥ)&&ﱡﱟ(ۥ,ۥﱟ(ﱟ,ﱞﱟۥ),ﱡ-ۥﱢ)||ۥﱢ)&&(ﱞ==ۦﱣۥ?ﱡ-ۥﱢ:ﱡ):void 0}(ۦ,ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]),ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]),ﱟۥ[ۦﱢ]):ﱞۥ==ﱞﱠۥ?ﱡﱞ(ﱟۥ)<=ۦﱢ&&ﱣﱞ(ﱟۥ[ﱣﱡ],ﱡﱣ)?ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ۥﱟ(ۦﱠ(ۥﱢ,ﱟۥ),ﱞﱟۥ)]=ﱟ[ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ])]:(ﱟﱞ=ۥﱟ(ۦﱠ(ۥﱢ,ﱟۥ),ﱞﱟۥ))&&(ۦﱠ(ۥﱢ,ۦ)[ﱣﱡ][ﱟﱞ]=ﱟﱠ(ﱣﱟ(ۦ,ﱟﱞ,ﱟۥ[ﱡﱞ(ﱟۥ)-ۦﱢ],ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱡﱞ(ﱟۥ)-ۦﱢ)),ﱟﱞ)[ﱢﱡ[ﱞﱠۥ]]):ﱞۥ==ۥﱞۥ?ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ])?ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]):ﱠﱠ(ۦ,ﱟۥ[ۦﱢ]):ﱞۥ==ۦۥۥ?function(ۥ,ۦ,ﱞ,ﱟ,ﱠ,ﱡ){return ۦ==ﱞﱟۥ?+ﱠﱠ(ۥ,ﱞ):ۦ==ﱟﱡۥ?-ﱠﱠ(ۥ,ﱞ):ۦ==ۦﱟۥ?!ﱠﱠ(ۥ,ﱞ):ۦ==ﱟﱣ?~ﱠﱠ(ۥ,ﱞ):ۦ==ﱞﱞۥ?ﱣﱞ(ﱞ,ﱞﱟۥ)?typeof ﱠﱟ(ۥ,ۥﱟ(ﱞ,ﱞﱟۥ),ۥﱢ):typeof ﱠﱠ(ۥ,ﱞ):ۦ!=ۥﱢۥ?ۦ==ﱢﱢۥ?ﱣﱞ(ﱞ,ﱞﱟۥ)?ﱣﱞ(ۦﱠ(ۥﱢ,ۥ)[ﱣﱡ],ۥﱟ(ﱞ,ﱞﱟۥ))?delete ۦﱠ(ۥﱢ,ۥ)[ﱣﱡ][ۥﱟ(ﱞ,ﱞﱟۥ)]:(ﱡ=ۥﱟ(ﱞ,ﱞﱟۥ))!=ﱢﱡ[ﱠﱣ]&&ﱡ!=ﱢﱡ[ۦۥۥ]&&!ﱢﱡ[ﱡﱡۥ]:ﱣﱞ(ﱞ,ﱣﱣ)?(ﱠ=ﱞ[ﱣﱣ],delete ﱠﱠ(ۥ,ﱠ[ﱣﱡ])[ﱠ=ﱞﱠ(ۥ,ﱠ[ۥﱢ],ﱠﱠ(ۥ,ﱠ[ۦﱢ])==ۦﱣۥ)]):(ﱠﱠ(ۥ,ﱞ),!0):void 0:void ﱠﱠ(ۥ,ﱞ)}(ۦ,ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]),ﱟۥ[ۥﱢ]):ﱞۥ==ﱢﱞۥ?function(ۥ,ۦ,ﱞ,ﱟ){return ۦ==ۦۥۥ?ﱞ||ﱠﱠ(ۥ,ﱟ):ۦ==ۦﱞۥ?ﱞ&&ﱠﱠ(ۥ,ﱟ):void 0}(ۦ,ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ]),ﱠﱠ(ۦ,ﱟۥ[ۥﱢ]),ﱟۥ[ۦﱢ]):ﱞۥ==ۦﱢ?ﱡﱞ(ﱟۥ)<=ۦﱢ&&ﱣﱞ(ﱟۥ[ﱣﱡ],ﱡﱣ)?ﱟ[ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ])]:ﱟﱠ(ﱣﱟ(ۦ,ۥﱟ(ۦﱠ(ۥﱢ,ﱟۥ),ﱞﱟۥ),ﱟۥ[ﱡﱞ(ﱟۥ)-ۦﱢ],ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱡﱞ(ﱟۥ)-ۦﱢ)))[ﱢﱡ[ﱞﱠۥ]]:ﱞۥ==ﱣﱞۥ?ﱟﱠ(ﱣﱟ(ۦ,ﱢﱡ[ۦﱠۥ],ۦﱠ(ۥﱢ,ﱟۥ),ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱡﱞ(ﱟۥ)-ۥﱢ)))[ﱢﱡ[ﱞﱠۥ]]:ﱞۥ==ﱟۥۥ?ۦﱠ(ۥﱢ,ۦ)[ﱞﱢ]:ﱞۥ==ﱣﱣ?((ﱠﱞ=ﱞﱠ(ۦ,ﱟۥ[ۥﱢ],ﱠﱠ(ۦ,ﱟۥ[ۦﱢ])==ۦﱣۥ))||ۥﱢ)&&((ۦﱟ=ﱠﱠ(ۦ,ﱟۥ[ﱣﱡ],typeof ﱠ!=ﱢﱡ[ۥﱣ]?ۥﱢ:ﱠ+ۥﱢ,ﱢﱞ=ﱣ||[],ۥۥ))||ۥﱢ)&&(!ﱠ||ۦۥ?ﱢﱞ[ﱢﱡ[ﱣﱞۥ]](function(ۥ){return ۦﱟ=ۦﱟ[ﱣﱡ],ۥ})[ﱢﱡ[ﱣﱞۥ]](function(ۥ){ۦﱟ=ۦﱟ[ۥ]})&&ۥۥ&&ۥۥ[ﱢﱞۥ]?function(){return ﱢ[ﱢﱡ[ﱡﱟۥ]][ﱢﱡ[ﱠﱞۥ]][ﱢﱡ[ﱢﱣ]](ۦﱟ[ﱠﱞ],ۦﱟ,arguments)}:ۦﱟ[ﱠﱞ]:ﱢﱞ[ﱢﱡ[ﱡﱢ]](ﱠﱞ)&&[ۦﱟ,ۦﱟ[ﱠﱞ]]):ﱞۥ==ﱡۥۥ?(ﱞﱟ=typeof ﱠ==ﱢﱡ[ﱡﱠۥ]?ﱠ:{})&&(ﱞﱟ[ﱢﱞۥ]=ۥﱢ)&&(ﱟﱟ=ﱠﱠ(ۦ,ۦﱠ(ۥﱢ,ﱟۥ),ﱣﱡ,ﱣﱡ,ﱞﱟ))&&(ﱢﱠ=ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,-ۥﱢ)[ﱢﱡ[ﱣﱞۥ]](function(ۥ){return ﱣﱞ(ۥ,ﱢۥۥ)?ﱡﱠ=ﱠﱠ(ۦ,ۥ):ﱠﱠ(ۦ,ۥ)}))&&(ﱢﱠ=ﱡﱠ?ﱢﱠ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱡﱞ(ﱢﱠ)-ۥﱢ)[ﱢﱡ[ۥۥۥ]](ﱡﱠ):ﱢﱠ)&&!(ۥ>ۥۦ)&&ﱢ[ﱢﱡ[ﱡﱟۥ]][ﱢﱡ[ﱠﱞۥ]][ﱢﱡ[ﱢﱣ]](ﱟﱟ,undefined,ﱢﱠ):ﱞۥ==ۦﱞۥ?new(ﱢ[ﱢﱡ[ﱡﱟۥ]][ﱢﱡ[ۥۦۥ]][ﱢﱡ[ﱠﱞۥ]](ﱠﱠ(ۦ,ۦﱠ(ۥﱢ,ﱟۥ)),[ﱣﱡ][ﱢﱡ[ۥۥۥ]](ﱟۥ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ﱡﱞ(ﱟۥ)-ۥﱢ)[ﱢﱡ[ﱣﱞۥ]](function(ۥ){return ﱠﱠ(ۦ,ۥ)})))):void 0}(ﱞۦۥ=27)&&(ﱠﱢ=5)&&(ۦﱣ=10)&&(ﱡۦۥ=30)&&(ۥۥۥ=17)&&(ﱢۦۥ=31)&&(ﱣﱢ=8)&&(ﱣﱣ=16)&&(ﱟﱞۥ=36)&&(ﱟۥۥ=20)&&(ﱣﱠۥ=56)&&(ﱢﱞۥ=39)&&(ۥﱣ=9)&&(ﱞۥۥ=19)&&(ﱞﱞۥ=35)&&(ﱡﱞۥ=38)&&(ﱟﱣ=12)&&(ﱣﱞۥ=40)&&(ۥﱠۥ=49)&&(ۦﱢ=2)&&(ﱡﱡۥ=62)&&(ﱡﱟۥ=46)&&(ﱣۥۥ=24)&&(ﱢﱟۥ=47)&&(ۥﱢ=1)&&!(ﱣﱡ=0)&&(ﱠۦۥ=29)&&(ﱟۦۥ=28)&&(ﱞﱢ=3)&&(ۦۦۥ=26)&&(ﱡۥۥ=22)&&(ﱞﱣ=11)&&(ۥۦۥ=25)&&(ۦﱞۥ=34)&&(ﱣۦۥ=32)&&(ﱡﱣ=14)&&(ﱡﱢ=6)&&(ﱠﱞۥ=37)&&(ۥﱟۥ=41)&&(ﱞﱟۥ=43)&&(ۥﱞۥ=33)&&(ۥۥۦ=123)&&(ﱢﱠۥ=55)&&(ﱟﱢ=4)&&(ۥﱣۥ=73)&&(ۦﱢۥ=66)&&(ﱢﱡۥ=63)&&(ﱟﱠۥ=52)&&(ۦﱡۥ=58)&&(ﱠۥۥ=21)&&(ﱞﱠۥ=51)&&(ﱢﱣ=15)&&(ﱢﱢ=7)&&(ﱠﱣۥ=78)&&(ﱡﱢۥ=70)&&(ﱠﱠۥ=53)&&(ﱟﱢۥ=68)&&(ﱣﱡۥ=64)&&(ﱟﱟۥ=44)&&(ﱟﱣۥ=77)&&(ﱠﱢۥ=69)&&(ﱠﱣ=13)&&(ﱠﱡۥ=61)&&(ۥﱢۥ=65)&&(ۦﱠۥ=50)&&(ۦۥۦ=127)&&(ﱞﱣۥ=76)&&(ﱢﱢۥ=71)&&(ۦۥۥ=18)&&(ﱢﱣۥ=91)&&(ﱠﱟۥ=45)&&(ﱞﱢۥ=67)&&(ﱞﱡۥ=59)&&(ﱡﱣۥ=79)&&(ﱡﱠۥ=54)&&(ۦﱣۥ=74)&&(ﱢۥۥ=23)&&(ۦﱟۥ=42)&&(ۥﱡۥ=57)&&(ﱣﱟۥ=48)&&(ﱣﱣۥ=97)&&(ﱣﱢۥ=72)&&(ﱟﱡۥ=60)&&(ﱢﱡ="ReferenceError(g(c(call([(lastIndexOf(push(pop(toString(number(valueOf(indexOf(window(module(arguments(cilame_call(charCodeAt(concat(exports(pow(match([0-9a-f]{2}(Date(Math(hasOwnProperty(bind(slice(defineProperty(BigInt(parseFloat(Object(filter(v(configurable(String(keys(length(apply(%$&(vmpzl_arguments(map((]( is not defined(join(get(prototype(undefined(enumerable(replace(null(_(set(decodeURIComponent(object(charAt(0(parseInt(RegExp(Function(fromCharCode(*(require($".split("("))&&(ﱡ=typeof global==ﱢﱡ[ﱢﱟۥ]?window:global)&&(ﱡﱠ=new ﱡ[ﱢﱡ[ﱡۥۥ]])&&(ﱡﱞ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱠﱢۥ))&&(ۥﱟ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ۥۦۥ))&&(ﱟﱟ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱡﱞۥ))&&(ﱣﱞ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱡﱣۥ))&&(ﱢﱟ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱞﱡۥ))&&(ﱣﱟ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ۦﱠۥ))&&(ۥﱠ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱢﱡۥ))&&(ۦﱠ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱞﱣ))&&(ﱞﱠ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱠﱠۥ))&&(ﱟﱠ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱠﱢ))&&(ﱢﱠ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱟﱠۥ))&&(ﱣﱠ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱢﱟۥ))&&(ۥﱡ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱣﱡۥ))&&(ﱟﱡ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱠﱡۥ))&&(ﱠﱡ=ﱣۥۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱡﱢۥ))&&(ﱢ=ﱡ[ﱢﱡ[ﱞﱡۥ]])&&(ﱣ=ﱡ[ﱢﱡ[ۦﱞۥ]][ﱢﱡ[ﱟﱡۥ]])&&(ۥۥ=ﱡ[ﱢﱡ[ﱠﱠۥ]])&&(ۦۥ=ﱡ[ﱢﱡ[ﱣﱡ]])&&(ﱞۥ=ﱡ[ﱢﱡ[ﱡۦۥ]][ﱢﱡ[ﱞﱞۥ]])&&(ﱟۥ=ﱡ[ﱢﱡ[ﱠۦۥ]])&&(ﱠۥ=ﱡ[ﱢﱡ[ۥﱡۥ]])&&(ﱡۥ=ﱡ[ﱢﱡ[ﱢۥۥ]][ﱢﱡ[ﱞۥۥ]])&&(ﱢۥ=ﱡ[ﱢﱡ[ۦﱡۥ]])&&(ﱢ[ﱢﱡ[ﱡﱟۥ]][ﱢﱡ[ﱢﱣ]]=ﱢ[ﱢﱡ[ﱡﱟۥ]][ﱢﱡ[ﱞﱢ]])&&(ﱠﱞ=ﱡ[ﱢﱡ[ﱡۦۥ]][ﱢﱡ[ﱡﱟۥ]][ﱢﱡ[ﱣۥۥ]])&&(ۥۦ=ۥﱢ)&&(ﱟﱞ=ۥﱢ)&&(ۦۦ=[])&&(ﱞۦ=[])&&((ﱣۥ=ﱡ[ﱢﱡ[ﱟۦۥ]])||ۥﱢ)&&(ﱢﱞ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱠﱣۥ))&&(ۦﱟ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱟۥۥ))&&(ﱞﱟ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱢﱣ))&&(ﱠﱟ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱣۦۥ))&&(ﱡﱟ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ۦۦۥ))&&(ۦﱡ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ۦﱢۥ))&&(ﱞﱡ=ۥۦۦ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ,ﱟﱟۥ))&&(ﱠﱠ=ﱠﱠ[ﱢﱡ[ۥۦۥ]](ۥﱢ,ﱡﱠ))&&(ﱟۦ=ﱢﱞ(ۥۥۦ,ۦۥۦ)+ﱢﱞ(ﱞﱞۥ,ﱢﱞۥ)+ﱢﱞ(ﱣﱞۥ,ﱢﱣۥ)+ﱢﱞ(ﱣﱣۥ,ۥۥۦ))&&(ﱠۦ=ﱢﱞ(ﱣﱞۥ,ﱢﱣۥ))&&(ﱡۦ=ﱢﱞ(ۥۥۦ,ۦۥۦ)+ﱢﱞ(ﱞﱞۥ,ﱢﱞۥ)+ﱢﱞ(ﱣﱣۥ,ۥۥۦ))&&(ﱢۦ=ﱢﱡ[ﱟﱢ]+ﱡۦ+ﱢﱡ[ۦﱟۥ]+ﱢﱡ[ﱠﱡۥ]+ﱢﱡ[ﱟﱢ]+ﱠۦ+ﱢﱡ[ۦﱟۥ])&&(ﱣۦ=ﱢۥ(ﱢﱡ[ﱠۥۥ],ﱢﱡ[ۥﱢ]))&&(ۥﱞ=[[ﱡ,null,null,ۦ,ﱞ,ﱣﱡ,ﱣﱡ,arguments,{},ﱡﱠ]])&&(ۦﱞ=ۥﱞ[ﱣﱡ][ﱣﱢ])&&ﱠﱠ(ۥﱞ,function ۦۦۦ(ۥ,ۦ,ﱞ){return function(ۥ,ۦ,ﱞ,ﱟ,ﱠ,ﱡ,ﱢ,ﱣ,ۥۥ,ۦۥ){if(ﱞ==ۥﱣ||ﱞ==ﱞﱟۥ||ﱞ==ﱢﱢ||ﱞ==ۦﱠۥ||ﱞ==ﱡﱣ||ﱞ==ﱟﱞۥ||ﱞ==ﱣﱡ||ﱞ==ﱠﱣ)return(ﱟ={})&&((ﱟ[ﱢﱡ[ۦﱢ]]=ﱞ)||ۥﱢ)&&(ﱠ=function(ۥ,ۦ,ﱞ){return(ﱞ=ﱞﱟ(ۦ))&&[ﱠﱡ(ۦۦ[ﱞ[ﱣﱡ]],ﱞ[ﱣﱡ],ۥ),ﱞ[ﱣﱡ],ﱞ[ۥﱢ]]}(ﱞ,ۦ[ﱢﱡ[ۦۦۥ]](ۥۦ,ۦﱣ)))&&((ﱟ[ﱞ]=ﱠ[ﱣﱡ])||ۥﱢ)&&[function(ۥ,ۦ,ﱞ,ﱟ){return((ﱟ=ﱞۦ[ﱢﱡ[ﱞﱣ]](ۥ[ۦ]))||ۥﱢ)&&((ﱟ==-ۥﱢ?ﱞۦ[ﱢﱡ[ﱡﱢ]](ۥ[ۦ])&&(ۥ[ۦ]=ﱡﱞ(ﱞۦ)-ۥﱢ):ۥ[ۦ]=ﱟ)||ۥﱢ)&&((ۥ[ﱢﱡ[ﱣۦۥ]]=ﱞ)||ۥﱢ)&&ۥ}(ﱟ,ﱞ,ﱠ[ۥﱢ]),ﱠ[ۦﱢ]];for((ﱢ=[])&&(ﱟ={})&&(ﱡ=ﱟﱟ(ۦ,ۥۦ)[ﱣﱡ]);ﱡﱞ(ﱡ);)(ﱣ=ﱟۦ[ﱢﱡ[ﱞﱣ]](ﱡ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ۥۦ)))!=ۥﱣ&&ﱣ!=ﱞﱟۥ&&ﱣ!=ﱢﱢ&&ﱣ!=ۦﱠۥ&&ﱣ!=ﱡﱣ&&ﱣ!=ﱟﱞۥ&&ﱣ!=ﱣﱡ&&ﱣ!=ﱠﱣ?(ۦۥ=ﱟﱟ(ﱡ,ۥۦ,ۥﱢ))&&ﱢ[ﱢﱡ[ﱡﱢ]](ۦۦۦ(ۥ,ﱡ))&&(ﱡ=ﱡ[ﱢﱡ[ۦۦۥ]](ۦۥ[ۥﱢ])):(ۥۥ=ۦۦۦ(ۥ,ﱡ))&&ﱢ[ﱢﱡ[ﱡﱢ]](ۥۥ[ﱣﱡ])&&(ﱡ=ﱡ[ﱢﱡ[ۦۦۥ]](ۥۦ+ۥۥ[ۥﱢ]));return(ﱟ[ﱞ]=ﱢ)&&((ﱟ[ﱢﱡ[ۦﱢ]]=ﱞ)||ۥﱢ)&&ﱟ}(ۥ,ۦ,ﱟۦ[ﱢﱡ[ﱞﱣ]](ۦ[ﱢﱡ[ۦۦۥ]](ﱣﱡ,ۥۦ)))}(ﱡﱠ,ﱞﱡ(ﱠ)))}("jsvmpzl:ver.1.5.1", this, typeof arguments!="undefined"?arguments:void 0, [], "&;b8#hh}n@uohyyT$jg%cM#h~zy<$llkuRyzs}zK#|fgv>rhu~kArnewvZsxjpv6an$roS|gefgjZzfea%T|l}zh}P|gyb{c5|%w$}o4vhbme>z|vbg(|sxrw&Rxza{m*nkl{d)|nik}eF|bmq{j;rdttzXz~huh=||yjsuQqol}~1ux#&dpzvmc(vtoun5xeosqDa%ju|Weos{xJ|ovovt+#|m$pXspthg-wtcrj6|gy#gh>rb$ssQzcayqD|p{}qr:|%{xq%R|easoyB|orjc%;|{~ewqBvs}%d5c&trmU|azfgb3o&qid:pQ<%XE%U#%0.K/K0)(K+)(K1)(R?#09.B,R*K2K)QZ?L),0F0@6:0.K-K.)(R@0.K/K0)(K+)(K1)(RA#09.B,R*K2K)T462RB0.K3K4)(;:K5#6T462RC0.K3K4)(K)") +} \ No newline at end of file diff --git a/z_working/unknow1Vm.js b/z_working/unknow1Vm.js new file mode 100644 index 0000000..3eac295 --- /dev/null +++ b/z_working/unknow1Vm.js @@ -0,0 +1,39 @@ +const fs = require('fs'); +const QXVM_GENERATE = require('../qxVm_sanbox/qxVm.sanbox'); + + +function ReadCode(name, dir) { + let file_path = dir === undefined ? `${__dirname}/${name}` : `${__dirname}/${dir}/${name}`; + return fs.readFileSync(file_path) + "\r\n" +} + + +const js_code = ReadCode(`./unknow1.js`); +const user_config = { + compress: false, + proxy_config: { proxy: true, print_log: true }, + window_attribute: { + }, + + env: { + canvas: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACWCAYAAABkW7XSAAAAAXNSR0IArs4c6QAABGJJREFUeF7t1AEJAAAMAsHZv/RyPNwSyDncOQIECEQEFskpJgECBM5geQICBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAgQdWMQCX4yW9owAAAABJRU5ErkJggg==", + plugin: [ + { description: "Portable Document Format", filename: "internal-pdf-viewer", name: "Chrome PDF Plugin", MimeTypes: [{ description: "Portable Document Format", suffixes: "pdf", type: "application/x-google-chrome-pdf" }] }, + { description: "", filename: "mhjfbmdgcfjbbpaeojofohoefgiehjai", name: "Chrome PDF Viewer", MimeTypes: [{ description: "", suffixes: "pdf", type: "application/pdf" }] }, + { description: "", filename: "internal-nacl-plugin", name: "Native Client", MimeTypes: [{ description: "Native Client Executable", suffixes: "", type: "application/x-nacl" }, { description: "Portable Native Client Executable", suffixes: "", type: "application/x-pnacl" }] } + ], + navigator: { + userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36 Edg/100.0.1185.55" + }, + location: { + href: "https://www.douyin.com/search/%E7%BE%8E%E5%A5%B3?aid=cacd12e5-e9d5-4ceb-b818-2ad7b245514b&enter_from=discover&focus_method=&modal_id=7117595309009669416&source=normal_search" + }, + document: { + referrer: "", + cookie: "ttcid=1e9a0ac9626d4931b235cb3ad4367c5e28; douyin.com; strategyABtestKey=1661868893.02; s_v_web_id=verify_l7g9twqu_jigMTuKc_1DVq_4fHd_AbyI_zUCBmBZER4Mm; passport_csrf_token=e1bfef4342870bdb4846e52616ad36fb; passport_csrf_token_default=e1bfef4342870bdb4846e52616ad36fb; __ac_nonce=0630e1b7400d1b4ae682b; __ac_signature=_02B4Z6wo00f01g6TOTAAAIDCjpHDc45OwdIOsz2AAOC4zB8cP0Bb2eKU8e.tGSIFnNLRSrcF.xiRHJPVGsK9VZ-XJyQeEJBE2a4uDMheb9k6rhG-.udo4B0A77J309kOXNpDhDVL5AgkADWX54; SEARCH_RESULT_LIST_TYPE=%22multi%22; download_guide=%221%2F20220830%22; msToken=KnlASY6DNJStnnzOkAk8YfYp5t7FMEv_AIVeHv-aomd_8EXf7MiNY2vL5Bx-ksVgcKtlTRqhp8LRhdq5T87WKoVi8TafCQlMKUKgLGngiZmeaIBoxhComACyNQ-7c7Q=; IS_HIDE_THEME_CHANGE=%221%22; THEME_STAY_TIME=%22294435%22; home_can_add_dy_2_desktop=%221%22; tt_scid=RK8aK6gvBEww9eRct-8VE8dfWeGwB2vNHFhkxcSBUxGwyJ.e7wUdBZL-TYB0QEFf47f0; msToken=csXRNdUNbKUreC1uivbHAkBK3uZ-1Ls6ELaRkk5qDLrDwy2eqVUTkv7NHX288tTf4HLhOEHyIWBvcv2JuVxFYwPyIzuJ6vDkh0eQHi0FYiYVo_waoS681I_ZSsHSLog=" + } + } +} + +let result = QXVM_GENERATE.QXVm_sanbox(js_code, "get_from", user_config); +console.log(result.get_from()) diff --git a/z_working/yidun.js b/z_working/yidun.js new file mode 100644 index 0000000..4f694b9 --- /dev/null +++ b/z_working/yidun.js @@ -0,0 +1,4016 @@ +(function () { + function ba() { + var g = "MPjtU7rDmCRQIec9".split(""); + this.G = function (c) { + if (null == c || void 0 == c) + return c; + if (0 != c.length % 2) + throw Error("1100"); + for (var b = [], a = 0; a < c.length; a++) { + 0 == a % 2 && b.push("%"); + for (var p = g, h = 0; h < p.length; h++) + if (c.charAt(a) == p[h]) { + b.push(h.toString(16)); + break + } + } + return decodeURIComponent(b.join("")) + } + } + + var p = (new ba).G + , n = (new ba).G + , k = (new ba).G + , h = (new ba).G + , g = (new ba).G; + (function () { + var x = [p("DUr7DmDUUjrPDtr7rIrCrcr7"), n("jttMtrtC"), k("7979"), g("rer9Drr7"), n("r9DjrCr7rcDUrPDUrCr9rc"), g("rer9DUrCr9rc"), p("DMrmrPrcDUr9rerRDt"), k("7979Dtr7rIr7rcrCD7re79D7rcDDDjrPDMDMr7rU"), g("rerPDUrtrm"), n("rtrmrPDjrDrCrcrD"), g("D7rcr7DtrtrPDMr7"), p("Djr7DtDMr9rcDtr77tDUrPDjDU"), h("UIU77P77UPUI"), n("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrIr9DDjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), k("UUrPDUr7"), h("rUr7rtr9rUr7777jUCUtr9reDMr9rcr7rcDU"), n("rPDtDCrcrt"), k("DMr7Djrrr9DjrerPrcrtr7"), k("rjr9r9rIr7rPrc"), n("rCrcrIrCrcr7"), g("Dtr7DjrCrr"), h("7rU7UcUUU97j"), g("UtUP7U79UtUPUc7rUP7t"), p("Djr7rUD7rtDUrCr9rc"), n("r7rerCDU"), n("rDr7DUUtr9rcDUr7DmDU"), g("D7rcrCrrr9Djretjrr"), p("DDr7rjrDrIjMrPrIDMrmrPjMrjrCDUDttR")] + , + c = [n(""), k("DMrPDjr7rcDU"), k("DtDUrPrtrQ"), k("DMrID7rDrCrcDt"), k("rDr7DUUCDUr7re"), p("rDr7DUUcrUUCrcrrr9"), g("rCU97t"), g("UerCrtDjr9Dtr9rrDUjMUCrcDUr7Djrcr7DUjMU7DmDMrIr9Djr7Dj"), k("rer9D7Dtr7D7DM"), h("rDr7DU7tD7DMDMr9DjDUr7rUU7DmDUr7rcDtrCr9rcDt"), g("tUtMrjt7tCrjtPtM"), h("79rjrPDUDUr7DjDC"), g("rPDMDMr7rcrUUtrmrCrIrU"), h("r7Drr7rcr9rUrU"), k("DDr7rjrDrIjMrerPDmjMDrr7DjDUr7DmjMD7rcrCrrr9DjrejMDrr7rtDUr9DjDttR"), p("jj"), g("rCrcrcr7Dj7Ur7DmDU"), p("jU"), g("j7"), p("jr"), p("rPrUDtrjr9Dm"), h("jD"), k("jm"), k("jC"), g("DjrDrjjmtjt7t7jItjt7t7jItMjC"), k("rDr7DU7trmrPrUr7Dj7MDjr7rtrCDtrCr9rcUrr9DjrerPDU"), g("DUr7DmDUUtr9rcDUr7rcDU"), n("jQ"), k("jI"), p("rCU9Dt"), n("DDrCrcrUDrrPrcr7"), p("Drr7DjDtrCr9rc"), h("rtrIrCrtrQ"), k("jc"), g("79rjrID7Dj"), g("j9"), p("tPtmDMDUjMUPDjrCrPrI"), g("tM"), g("tP"), p("tj"), k("rDr7DUUtrmrPrcrcr7rIUUrPDUrP"), k("tt"), h("rDr7DUUtr9rcDUr7DmDUUPDUDUDjrCrjD7DUr7Dt"), k("tU"), h("79rrr9rtD7Dt"), h("DtDUr9DM"), n("t7"), h("rIr7rrDU"), h("tr"), n("tD"), g("rUr9rerPrCrc"), k("tm"), h("tC"), n("tR"), k("tQ"), h("te"), h("rer9D7Dtr7rUr9DDrc"), h("r9rjrRr7rtDU"), p("t9"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrer7rUrCD7rejMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), n("7979rrDmrUDjrCDrr7Dj79D7rcDDDjrPDMDMr7rU"), n("UP"), k("Uj"), k("rcDtDUr9r9rIjcrcr7DUr7rPDtr7jcrtr9rej9rCrcrrr9jcrRDt"), h("UeUP7m797rU77j7UU77m79UP7U7U7jUCUj7t"), g("Ut"), h("UU"), n("U7"), n("Ur"), p("UD"), g("Um"), p("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrer7rUrCD7rejMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), n("UC"), k("rjrID7Dj"), h("UR"), n("UQ"), p("rPDMDMUerCrcr9Dj7rr7DjDtrCr9rc"), h("UI"), n("Ue"), p("Uc"), g("U9"), g("7M"), p("7P"), g("7j"), h("UtDDrejMrrrRr9DjrUrjrPrcrQjMrDrIDCDMrmDtjMDrr7DmDUjMDPD7rCDRjIjM9MC9Cmm79MC9CmR79MC9CPQr9MC9Cmmt"), k("7t"), h("Dtr7rIr7rcrCD7re"), g("7U"), h("77"), n("rUrcDt79rCDtDM"), n("7r"), k("7D"), p("7m"), n("7C"), n("UIU97D79UCUc7U"), g("7R"), n("7Q"), n("rrr7DUrtrm7tDUrPDjDU"), p("rDr7DUU7rIr7rer7rcDUDtUjDC7UrPrDUcrPrer7"), n("7e"), g("rtr9rcrcr7rtDU"), p("7c"), k("rtrj"), p("rP"), g("UtU9UIU97j79Uj77UrUrU77j79UjUC7U"), h("rj"), p("7979DDr7rjrUDjrCDrr7Dj79DtrtDjrCDMDU79rrrc"), n("rt"), g("Djrer9rtDmjc7jr7rPrI7MrIrPDCr7DjjMUDtjjMUtr9rcDUDjr9rIjctP"), h("rU"), n("7trtDjrCDMDUrCrcrDjcUUrCrtDUrCr9rcrPDjDC"), g("r7"), h("rjr7rDrCrc7MrPDUrm"), p("rtr9D7rtrmrRDt"), k("rr"), p("rD"), h("rm"), k("tPtMtPtM"), h("rC"), n("rR"), h("rQ"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrIr9DDjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), p("rI"), h("re"), g("DDr7rjrDrIjMDrr7DjDtrCr9rctR"), n("rc"), h("r9"), p("DM"), g("rUr9Ucr9DU7UDjrPrtrQ"), n("DP"), h("rtrmrPDjrDrCrcrDDUrCrer7rtrmrPrcrDr7"), k("Dtr7DU7UrCrer7r9D7DU"), h("Dj"), k("tPtMtMt7"), g("rDr7DU7UrCrer7DRr9rcr7U9rrrrDtr7DU"), h("rtrmrPrcrDr7rU7Ur9D7rtrmr7Dt"), n("Dt"), h("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrIr9DDjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), p("DU"), k("tPtMtMtt"), g("D7"), g("Dr"), k("tPtMtMtP"), h("DD"), h("Dm"), h("7UrmrCDtjMrjDjr9DDDtr7DjjDDtjMrCreDMrIr7rer7rcDUrPDUrCr9rcjMr9rrjMU9rjrRr7rtDUjcrtDjr7rPDUr7jMrCDtjMrPjMDtrmrCrejMrPrcrUjMrUr9r7DtrcjDDUjMDtD7DMDMr9DjDUjMjDrcD7rIrIjDjMrPDtjMDUrmr7jMrrrCDjDtDUjMrPDjrDD7rer7rcDUjc"), p("rUDjrPDDUPDjDjrPDCDt"), h("DC"), n("DUr97tDUDjrCrcrD"), n("DR"), k("Dc"), k("tPtMtMtC"), k("rrr9rcDU"), k("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrIr9DDjMrCrcDUjMDMDjr7rtrCDtrCr9rctR"), h("DtD7rrrrrCDmr7Dt"), n("7MU97t7U"), p("7trmr7rIrIjc77UCUmr7rIDMr7Dj"), h("Dtr7DU7jr7DPD7r7DtDUUmr7rPrUr7Dj"), h("DUr9UUrPDUrP777jUI"), h("7trPrrrPDjrC"), p("7Ur9D7rtrmU7Drr7rcDU"), g("rIrPrcrDD7rPrDr7"), g("rUr9DDrc"), g("rCrcDtr7DjDUUjr7rrr9Djr7"), k("rUrCDr"), h("rPrtrtr7rIr7DjrPDUrCr9rc"), n("rPrtrtr7rIr7DjrPDUrCr9rcUCrcrtrID7rUrCrcrDUDDjrPDrrCDUDC"), g("UCrcDUr7Djrcr7DUjMU7DmDMrIr9Djr7Dj"), k("UeUP7m79Ut77UjU779UeUP7M797UU77m7U777jU7797tUC7RU7"), g("DUr7DmDUj9rRrPDrrPDtrtDjrCDMDU"), k("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrmrCrDrmjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rctR"), n("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrmrCrDrmjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), k("DDr7rjrUDjrCDrr7Dj"), h("UeU97R79U77m7U79DUr7DmDUD7Djr779rrrCrIDUr7Dj79rPrcrCDtr9DUDjr9DMrCrt"), k("7DU7UjUDUI79rUr7rjD7rD79Djr7rcrUr7Djr7Dj79rCrcrrr9"), n("rtrmrPDjrDrCrcrDrtrmrPrcrDr7"), g("DDr7rjrDrIjMDtrmrPrUrCrcrDjMrIrPrcrDD7rPrDr7jMDrr7DjDtrCr9rctR"), p("Djr7Dt"), n("7jr7rPrI7MrIrPDCr7Dj"), p("rtrmDjr9rer7"), k("7jr7rDU7DmDM"), g("rtrmrPDjrDrCrcrD7UrCrer7"), h("rtDjr7rPDUr7U7rIr7rer7rcDU"), n("DMDjr9rUD7rtDUUcD7rerjr7Dj"), g("DMrPDjr7rcDUUcr9rUr7"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrer7rUrCD7rejMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rctR"), p("DDr7rjrDrIjMrerPDmjMDrrPDjDCrCrcrDjMDrr7rtDUr9DjDttR"), g("rtrPrcDrrPDtjMDDrCrcrUrCrcrDtR"), g("DjrDrjjmtjt7t7jItMjItjt7t7jC"), k("Utr9rcDUr7rcDUjeDUDCDMr7"), g("UUU77M7UUm797UU77t7U"), h("r7DmDUr7DjrcrPrI"), g("r7DrrPrI"), g("D7rcrQrcr9DDrcjMr7DjDjr9Dj"), p("UIrCrcD7Dm"), p("rUrCDtrtrmrPDjrDrCrcrDDUrCrer7rtrmrPrcrDr7"), p("79DtrtDjr9rIrI"), n("7PD7rCrtrQ7UrCrer7Utrmr7rtrQU9rjrRr7rtDUjc7PD7rCrtrQ7UrCrer7Utrmr7rtrQjctP"), g("7jr7DPD7r7DtDUjMDUrCrer7rUjMr9D7DU"), k("Djr7rer9Drr7UCDUr7re"), n("rPDUDUrPrtrm7trmrPrUr7Dj"), h("DDr7rjrDrIjMDjr7rcrUr7Djr7DjtR"), g("DtDUrPDjDU7jr7rcrUr7DjrCrcrD"), n("rDr7DU7UrCrer7"), n("rtrPrIrI7tr7rIr7rcrCD7re"), p("Djr7DtDMr9rcDtr77Ur7DmDU"), k("DjrPrcrDr7UerCrc"), k("rCrcrCDU7DrPDUrtrmrerPrc"), n("Djr7DPD7r7DtDUjMrPDMrCjMr7DjDjr9Dj"), h("tPjctMtP"), g("DDr7rjrDrIjMrUr7DMDUrmjMrjrCDUDttR"), p("rcr9rUr7rRDt"), g("DDr7rjrDrIjMrerPDmjMrtD7rjr7jMrerPDMjMDUr7DmDUD7Djr7jMDtrCDRr7tR"), k("DUrCDUrIr7"), k("j9Drttj9rU"), g("7979DDrerRDtr9rcDM79"), g("rUr7DrrCrtr77MrCDmr7rI7jrPDUrCr9"), g("DMr9rCrcDUr7DjD7DM"), k("DjrPrcrUr9re"), k("Dtr7DUUPDUDUDjrCrjD7DUr7"), p("79Dtr7rIr7rcrCD7re"), g("rer7rer9DjDC7tDUr9DjrPrDr7"), k("rrDM79"), g("rPrIDMrmrP"), p("DDr7rjrDrIjMDrr7rcrUr9DjtR"), k("7979DDr7rjrUDjrCDrr7Dj79r7DrrPrID7rPDUr7"), k("reD7rIDUrCDMrIDC"), p("rPDUDUDjrCrjD7DUr7jMDrr7rttjjMrPDUDUDj7rr7DjDUr7DmDrrPDjDCrCrcrDjMDrr7rttjjMDrrPDjDCrCrc7Ur7DmUtr9r9DjrUrCrcrPDUr7D7rcrCrrr9DjrejMDrr7rttjjMD7rcrCrrr9DjreU9rrrrDtr7DUDrr9rCrUjMrerPrCrcjmjCDQDrrPDjDCrCrc7Ur7DmUtr9r9DjrUrCrcrPDUr7terPDUDUDj7rr7DjDUr7DmjQD7rcrCrrr9DjreU9rrrrDtr7DUrDrI797Mr9DtrCDUrCr9rcteDrr7rttUjmrPDUDUDj7rr7DjDUr7DmjItMjItPjCDe"), h("j7rt"), h("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrmrCrDrmjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rctR"), g("DMDjr7rtrCDtrCr9rcjMrer7rUrCD7reDMjMrrrIr9rPDUDrrPDjDCrCrcrDjMDrr7rttjjMDrrPDjDCrCrc7Ur7DmUtr9r9DjrUrCrcrPDUr7Drr9rCrUjMrerPrCrcjmjCjMDQrDrI79UrDjrPrDUtr9rIr9DjteDrr7rttUjmDrrPDjDCrCrc7Ur7DmUtr9r9DjrUrCrcrPDUr7jItMjItPjCDe"), g("jDjI"), k("DDrCrcrUr9DDDtjMDMrmr9rcr7"), h("rPDMDMUcrPrer7"), p("rtDMD7UtrIrPDtDt"), k("Dtr7DUUtD7DtDUr9re7UDjrPrtrQUCrU"), g("DMrPDjDtr7"), k("rCDM79rCDtDM"), g("tDjIrUjItUjItrjIt7jItDjIttjItr"), p("rQr7DCrUr9DDrc"), p("r9rcrIr9rPrU"), p("Djr7rer9Drr7U7Drr7rcDUUIrCDtDUr7rcr7Dj"), n("rrr9Djre"), h("UeDtDmrerItjjcUUU9UeUUr9rtD7rer7rcDU"), p("j9DUr9r9rIjcrerCrcjcrRDt"), p("tjjctDjct779r7tjtmtCtPtMtmtU"), k("DDr7rjrQrCDUU9rrrrrIrCrcr7UPD7rUrCr9Utr9rcDUr7DmDU"), g("tQr7DmDMrCDjr7Dtte7UD7r7jIjMtPtCjMURrPrcjMtjtMtttmjMtMtttRtPtUtRtMtDjMUDUe7UtQDMrPDUrmtej9tQ"), g("DDr7rjrDrIjMrPrcDUrCrPrIrCrPDtrCrcrDtR"), p("rIr7Drr7rIrtrmrPrcrDr7"), p("DDr7rjrDrIjMD7rcrerPDtrQr7rUjMDrr7rcrUr9DjtR"), k("rPrUrUU7Drr7rcDUUIrCDtDUr7rcr7Dj"), k("UmUC"), p("U9rjrRr7rtDUjcrQr7DCDtjMrtrPrIrIr7rUjMr9rcjMrcr9rcjer9rjrRr7rtDU"), h("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrIr9DDjMrCrcDUjMDMDjr7rtrCDtrCr9rctR"), n("tPtPDMDUjMUPDjrCrPrI")] + , + b = [g("rtrIr9Dtr77MrPDUrm"), h("Djr7rIr7rPDtr7"), p("7Dr7rjUDUI7jr7rcrUr7DjrCrcrDUtr9rcDUr7DmDU"), h("rrr9rtD7Dt"), k("rCDMr9rU"), h("79r9DjrCr7rcDUrPDUrCr9rc"), h("777MUUUP7UU779Ur77UcUt797UUCUeUCUcUD"), n("rcD7rerjr7Dj"), h("rcrPDrrCrDrPDUrCr9rc"), k("rPrIDMrmrPrjr7DUrCrt"), n("reDtDMr9rCrcDUr7DjD7DM"), h("79rer9DUrCr9rc"), h("rDr7DUU9DDrc7MDjr9DMr7DjDUDCUUr7DtrtDjrCDMDUr9Dj"), p("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrmrCrDrmjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), g("7979DDr7rjrUDjrCDrr7Dj79D7rcDDDjrPDMDMr7rU"), g("r7tjtmtCtPtMtmtU"), n("rPDUDUDj7rr7DjDUr7Dm"), p("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrIr9DDjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), n("rtr9r9rQrCr7"), n("j7tjtj"), p("jCjc"), k("DDr7rjrDrIjMrerPDmjMDjr7rcrUr7DjjMrjD7rrrrr7DjjMDtrCDRr7tR"), k("DMrCrQr7"), g("rCDM"), p("rUrcDt"), h("j7tjtr"), n("DtrtDjrCDMDU"), n("UerPrt"), n("DjrDrjjmtMjItjt7t7jItjt7t7jC"), h("rUDjrCDrr7Dj"), p("UUU77M7UUm79UjUC7U7t"), n("rrr9rcDU7trCDRr7"), h("rrrCrIrI7tDUDCrIr7"), h("7MUUUrjc7MrUrrUtDUDjrI"), g("rCrcDUr7DjDrrPrI"), p("UPUI7MUmUP79UjUC7U7t"), n("DtDUrPDUD7Dt"), n("UCrcDUr7DjDrrPrI"), p("rtrmrPDjDtr7DU"), p("DDr7rjrDrIjMrerPDmjMDrr7DjDUr7DmjMrPDUDUDjrCrjDttR"), h("DDr7rjrDrIjMDjr7rUjMrjrCDUDttR"), h("UerPDm"), n("7DU7UjUQUC7U79U77m7U79DUr7DmDUD7Djr779rrrCrIDUr7Dj79rPrcrCDtr9DUDjr9DMrCrt"), g("UeUP7m79Ur7jUPUDUeU7Uc7U7977UcUCUrU97jUe797rU7Ut7UU97j7t"), g("rUr7DrrCrtr7rer9DUrCr9rc"), k("Dtr7rcrUjMrUr7DrrCrtr7jMrUrPDUrPjMrrrPrCrIr7rU"), g("777MUUUP7UU779U97M7UUCU9Uc7t"), k("rerPrt"), k("7jr7rPrI7MrIrPDCr7Djjc7jr7rPrI7MrIrPDCr7DjjmDUrejCjMUPrtDUrCDrr77mjMUtr9rcDUDjr9rIjMjmtttjjerjrCDUjC"), h("DmDmDmDmDmDmDmDmDmDmDmDmtUDmDmDmDCDmDmDmDmDmDmDmDmDmDmDmDmDmDmDm"), g("DUr9DM"), k("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrer7rUrCD7rejMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), h("UeUP7m797UU77m7U777jU7797tUC7RU7"), p("UPrtDjr97MUUUrjc7MUUUr"), n("UeUP7m797rUCU77D7MU97j7U79UUUCUe7t"), p("jMDUrmrCDtjMrCDtjMrcD7rIrIjMr9DjjMrcr9DUjMrUr7rrrCrcr7rU"), k("UeUP7m797rU77j7UU77m7977UcUCUrU97jUe797rU7Ut7UU97j7t"), k("797tr7rIr7rcrCD7re79UCUUU7797jr7rtr9DjrUr7Dj"), p("rRrPDrrPjcrIrPrcrDjc7tDCDtDUr7rejcr7DmrCDU"), g("rerPDm"), p("DUr9D7rtrmDtDUrPDjDU"), g("rmrPDjrUDDrPDjr7Utr9rcrtD7DjDjr7rcrtDC"), g("rQrcr7r7"), p("rPDrrPrCrI7DrCrUDUrm"), g("rUr9rtD7rer7rcDUUer9rUr7"), k("jIjM"), k("UeUP7m797UU77m7U777jU779UeUP7m79UPUcUC7tU97U7jU97M7C79U77m7U"), p("Djrer9rtDmjc7jr7rPrI7MrIrPDCr7DjjMUDtjjMUtr9rcDUDjr9rI"), k("rDr7DU7Ur9rQr7rc"), h("rtr9reDMrIr7DUr7"), g("rPDrrPrCrIUmr7rCrDrmDU"), g("79DMrmrPrcDUr9re"), k("rPD7DUr9"), h("r9DMr7DjrP"), h("UP7j7jUP7C"), g("DDr7rjrDrI"), h("7jU7UU79UjUC7U7t"), k("DMr9rCrcDUr7DjrUr9DDrc"), k("DMDjr7rtrCDtrCr9rc"), g("DtrtDjr7r7rc"), k("cmQrm7crCDQrcUQRmr"), h("rjr9rUDC"), g("7U7jUCUPUcUDUIU7797t7U7jUC7M"), p("UeUP7m797jU7UcUUU77jUj77UrUrU77j797tUC7RU7"), p("rtrIrCr7rcDU7DrCrUDUrm"), h("r9rcDUr9D7rtrmDtDUrPDjDU"), h("rrD7rcrtDUrCr9rc"), g("rtr9rcDUr7DmDUjcrmrPDtrmUtr9rUr7"), g("Djr7rPrUDC7tDUrPDUr7"), p("rererererererererererIrIrC"), k("r9rcrtr9reDMrIr7DUr7"), p("7rU77j7UU77m797tUmUPUUU77j"), p("jjDUrmrCDtjjjMrCDtjMrcD7rIrIjMr9DjjMrcr9DUjMrUr7rrrCrcr7rU"), p("rjDjr9DDDtr7DjUIrPrcrDD7rPrDr7"), n("rIr7Drr7rI"), k("777UUrjetm"), k("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrmrCrDrmjMrCrcDUjMDMDjr7rtrCDtrCr9rctR"), p("7979DtD7DMDMr9DjDUUtrPDMDUrtrmrP7979"), p("UPrcrUDjr9rCrU"), k("rCrcrcr7Dj7DrCrUDUrm"), p("tjtMtM"), h("jMjejM"), k("UrrPrCrIr7rUjMDUr9jMrIr9rPrUjM"), n("777MUUUP7UU7797UUCUeU779U9UrUr7tU77U"), p("DMr9DtrCDUrCr9rc"), n("Dtr7rcrUjMrUr7DrrCrtr7rUrPDUrPjMrrrPrCrIr7rUtRjM"), p("rtrPrcrcr9DUjMrDr9DUjMDrrPrID7r7"), g("rcr9"), n("7Qr9rjrRr7rtDUjMUPDjDjrPDC7e"), p("DDr7rjrDrIjMrerPDmjMDrrCr7DDDMr9DjDUjMrUrCreDttR"), h("7DrCrcrUr9DDDt"), h("UjUI77U779UjUC7U7t"), p("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrer7rUrCD7rejMrCrcDUjMDMDjr7rtrCDtrCr9rctR"), k("rmr7rPrU"), k("Djr7rtDU"), n("rmrPDtU9DDrc7MDjr9DMr7DjDUDC"), k("Djr7rUD7rtr7jMrtrPrIrIr7rUjMr9rcjMrcD7rIrIjMr9DjjMD7rcrUr7rrrCrcr7rU"), n("UPUIUCUP7tU7UU797MU9UCUc7U797tUC7RU7797jUPUcUDU7"), k("UPrUr9rUrjjc7tDUDjr7rPre"), h("DDr7rjrDrIjMrDDjr7r7rcjMrjrCDUDttR"), h("UjrPDUDUr7DjDCUerPrcrPrDr7Dj"), g("rtrPrIrI7MrmrPrcDUr9re"), k("rrrIr9r9Dj"), g("7979rUDjrCDrr7Dj79D7rcDDDjrPDMDMr7rU"), h("rjr7DUrP"), g("r9rc"), g("7jU7UcUUU77jU77j"), n("DtDjrt"), g("UUr7DrrPrI7r7j7mUtDUDjrIjcUUr7DrrPrI7r7j7mUtDUDjrIjctP"), k("rDrIr9rjrPrIUtr9reDMr9DtrCDUr7U9DMr7DjrPDUrCr9rc"), n("rPrUrUUjr7rmrPDrrCr9Dj"), g("jrrcrjDtDMtQ"), h("DtDMrPDDrc"), k("UmUCUDUm79UCUc7U"), p("DjrPrcrDr7UerPDm"), n("rjrPDUDUr7DjDCUCrcDUr7DjDrrPrI"), n("UtUP7U797DU7UjUDUI"), n("jmrrD7rcrtDUrCr9rcjmjCDQDjr7DUD7DjrcjMtPtjtttQDejCjmjCtQ"), h("tjtMtMtttMtPtMtD"), n("DtDUDjrCrcrDrCrrDC"), h("rtr9reDMrPDUUer9rUr7"), n("7DrCrcrUr9DDDtjM7Mrmr9rcr7"), p("rCDt7MDjr9DUr9DUDCDMr7U9rr"), n("r7DmDUr7rcDtrCr9rcDttR"), p("9MC9RDR79MC9CMQr9MC9mem9cjCRQec9Qmm9cjCImj9MC9mmQj9MC9CRCDcjmICRc9Qmm9cjCeRUc9Qmm99MC9m9mPcjCrQr"), n("jMrCDtjMrcr9DUjMrPjMrrD7rcrtDUrCr9rc"), h("UcU77DrPDUrtrmrerPrcU7DjDjr9Dj"), n("tMtMtMtMtMtMtMtM"), p("Djr7rer9Drr7UtrmrCrIrU"), p("DDr7rjrDrIjMrPrIrCrPDtr7rUjMrIrCrcr7jMDDrCrUDUrmjMDjrPrcrDr7tR"), k("DDr7rjrDrIjMrerPDmjMDUr7DmDUD7Djr7jMDtrCDRr7tR"), k("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrIr9DDjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), g("Dtr7rcrUjMrjr7rmrPDrrCr9DjrUrPDUrPjMrrrPrCrIr7rUtRjM"), g("D7Dtr77MDjr9rDDjrPre"), k("rUr9reUPD7DUr9rerPDUrCr9rc"), h("rmr9DtDUrcrPrer7"), h("7mUUr9rerPrCrc7jr7DPD7r7DtDU"), n("7DrPDUrtrmrerPrc"), n("Djr7DPD7r7DtDU7tDUrPDjDU"), k("DMrmrPrcDUr9rejcrCrcrRr7rtDUURDt"), g("rtrIr7rPDj7UrCrer7r9D7DU"), k("U77j7jU97j"), g("DUr9D7rtrmr7rcrU"), n("DtDUrPDUr7"), h("DDr7rjrDrIjMrerPDmjMrPrcrCDtr9DUDjr9DMDCtR"), n("7trmr9rtrQDDrPDrr7UrrIrPDtrmjc7trmr9rtrQDDrPDrr7UrrIrPDtrm"), h("rmr7rCrDrmDU"), n("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrer7rUrCD7rejMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), n("U77m7U79DUr7DmDUD7Djr779rrrCrIDUr7Dj79rPrcrCDtr9DUDjr9DMrCrt"), p("j9Drtjj9rtr9rIrIr7rtDU"), k("UPrDUtr9rcDUDjr9rIjcUPrDUtr9rcDUDjr9rI"), g("DUr9D7rtrmrer9Drr7"), g("rUr7rtr9rUr7777jUC"), g("rtrIrCr7rcDUUmr7rCrDrmDU"), n("UrrCDjr7rrr9Dm"), p("rCrcDMD7DU"), g("tPtjtt"), h("7979DDr7rjrUDjrCDrr7Dj79DtrtDjrCDMDU79rrD7rcrt"), p("7DUe7MrIrPDCr7DjjcU9Ut7m"), p("tDtjDMDm"), n("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrIr9DDjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rctR"), p("DMDjr9DMr7DjDUDCUCDtU7rcD7rer7DjrPrjrIr7"), k("r9rcDjr7rPrUDCDtDUrPDUr7rtrmrPrcrDr7"), n("DtrPrrrPDjrC"), p("rjr7rmrPDrrCr9DjjMrPDMrCjMDjr7DtDMr9rcDtr7jMDDDjr9rcrD"), k("rUr9rtD7rer7rcDU"), k("rUrcDt79rtrCDUDC"), h("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrmrCrDrmjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), n("rUr7DrrCrtr7r9DjrCr7rcDUrPDUrCr9rc"), h("rjrPDUDUr7DjDC"), p("jetCtCtCtCDMDm"), n("D7Dtr7DjUIrPrcrDD7rPrDr7"), n("rjD7DtrCrcr7DtDtUQr7DCjMrCDtjMrCrIrIr7rDrPrI"), h("DMr9rCrcDUr7Djrer9Drr7"), k("rPDjrt"), k("7tUmUPUUUCUcUD79UIUPUcUD77UPUDU7797rU77j7tUCU9Uc"), n("rerCrc"), h("rPDUDUrPrtrQ"), p("UIU97D79UrUIU9UP7U"), k("Dtr7DtDtrCr9rc7tDUr9DjrPrDr7"), g("U9rjrRr7rtDUjMDMDjr9DUr9DUDCDMr7jMrerPDCjMr9rcrIDCjMrjr7jMrPrcjMU9rjrRr7rtDUtRjM"), p("rtr9reDMrCrIr77trmrPrUr7Dj"), h("rCrrDjrPrer7"), g("r7DtrtrPDMr7"), k("reDtDMr9rCrcDUr7Djrer9Drr7"), h("DtDCDtDUr7reUIrPrcrDD7rPrDr7"), k("rIrPrcrDD7rPrDr7Dt"), p("7trQDCDMr7jcUUr7DUr7rtDUrCr9rc"), h("tjrU"), n("UPrtDUrCDrr77mU9rjrRr7rtDU"), h("rPrjDtr9rID7DUr7"), n("r9rrrrDtr7DUUmr7rCrDrmDU"), n("7t7U7jUCUcUD"), p("7mUeUIUmDUDUDM7jr7DPD7r7DtDU"), n("7Urmr7jMDtr7DjDrr7DjjMrmrPDtjMr7rcrtr9D7rcDUr7Djr7rUjMrPrcjMr7DjDjr9Dj"), k("rtr9rIr9DjUUr7DMDUrm"), n("r9DMr7rc"), n("rDrPrererP"), p("rUr9rerPrCrcte"), n("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrer7rUrCD7rejMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), p("DjrPDUrCr9"), p("U9DUrmr7Dj"), g("7jr7rPrI7rrCrUr7r9jc7jr7rPrI7rrCrUr7r9jmDUrejCjMUPrtDUrCDrr77mjMUtr9rcDUDjr9rIjMjmtttjjerjrCDUjC"), h("U9rrrrrIrCrcr7UPD7rUrCr9Utr9rcDUr7DmDU"), h("DDr7rjrDrIjMrjrID7r7jMrjrCDUDttR"), g("rcrPDrrCrDrPDUr9Dj"), k("reDtDMr9rCrcDUr7DjrUr9DDrc"), p("jtrrtrtM"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrer7rUrCD7rejMrCrcDUjMDMDjr7rtrCDtrCr9rctR"), n("rCDtUcrPUc"), n("rrrCrIrI7jr7rtDU"), n("rrDjr7DPD7r7rcrtDC"), p("rIr9rPrUr7rU"), p("r7rcrtr9rUr7777jUC"), h("rPDUDUrPrtrmU7Drr7rcDU"), g("DDr7rjrDrIjMrerPDmjMDrr7DjDUr7DmjMDUr7DmDUD7Djr7jMrCrerPrDr7jMD7rcrCDUDttR"), p("UeUP7m797rU77j7UU77m797UU77m7U777jU779UCUeUPUDU77977UcUC7U7t"), p("D7DM"), h("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrmrCrDrmjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), n("rUr7DrrCrtr7jMrPDMrCjMDjr7DtDMr9rcDtr7jMDDDjr9rcrD"), k("rtDjr7rPDUr77MDjr9rDDjrPre"), p("UD7jU7U7Uc79UjUC7U7t"), g("rCDt7UDjD7DtDUr7rU"), k("DMrPrDr77mU9rrrrDtr7DU"), p("Uc77UeUjU77j"), n("rCrcrcr7DjUmr7rCrDrmDU"), p("rer9rcr9DtDMrPrtr7"), n("rtrIrCr7rcDU7C"), g("rtrIrCr7rcDU7m"), p("rtr9rcDtDUDjD7rtDUr9Dj"), h("7t7UUP7UUCUt79UU7jUP7D"), n("DMDjr9rUD7rtDU7tD7rj"), g("UjU9U9UIU7UPUc"), n("r9DMDj"), h("UeUP7m797UU77m7U777jU779UCUeUPUDU77977UcUC7U7t"), h("rPrjr9DjDU"), h("rUUP7DDtUjrmUtDPDUU9rPUcUIUIURtjt7rmUjDR7DrjDP7D7mDDrCUQtCtC7DrU"), g("rUrcDt79DMDjr9DrrCrcrtr7"), g("DDr7rjrDrIjMrPrIrCrPDtr7rUjMDMr9rCrcDUjMDtrCDRr7jMDjrPrcrDr7tR"), k("D7rcrCrrr9DjreU9rrrrDtr7DU"), g("r7rcrtr9rUr7777jUCUtr9reDMr9rcr7rcDU"), p("DUr9UIr9rtrPrIr77tDUDjrCrcrD"), k("rUr9rtD7rer7rcDUU7rIr7rer7rcDU"), h("rjrCrcrUUjD7rrrrr7Dj"), k("r9rcr7DjDjr9Dj"), g("DtDUDjrCrcrD"), n("UeU7UUUC77Ue79UrUIU9UP7U"), h("Djr7DtDMr9rcDtr7U7rcrU"), k("UeUP7m79UtU9UeUjUCUcU7UU797UU77m7U777jU779UCUeUPUDU77977UcUC7U7t"), k("rIr9rtrPrI7tDUr9DjrPrDr7"), g("rPrcrUDjr9rCrU"), g("rtrPrcDrrPDtjMrrDMtR"), k("rUr7DtDUrCrcrPDUrCr9rc"), k("rUr7DtrtDjrCDMDUrCr9rc"), k("rCrcrUr7Dmr7rUUUUj"), g("rtDjr7rPDUr7UjD7rrrrr7Dj"), g("7979rUDjrCDrr7Dj79r7DrrPrID7rPDUr7"), h("rIrCrcrQ7MDjr9rDDjrPre"), g("rjD7DUDUr9rc"), g("rIrCrcD7Dm"), h("rtDjr7rPDUr77trmrPrUr7Dj"), p("UtrmDjr9rer7"), p("rcr9DjrerPrI"), p("DDr7rjrDrIjMDtDUr7rcrtrCrIjMrjrCDUDttR"), g("DUDjrCrUr7rcDU"), n("7jr7rUD7rtr7jMr9rrjMr7reDMDUDCjMrPDjDjrPDCjMDDrCDUrmjMrcr9jMrCrcrCDUrCrPrIjMDrrPrID7r7"), k("DCr7Dt"), p("7t7DUtDUrIjc7t7DUtDUrI"), p("DrrPrID7r7U9rr"), h("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrer7rUrCD7rejMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rctR"), n("DtDUrPDjDU"), g("7Dr9r77UDM7mrcUUUU7MrmrCUPDrDtUR7777UC7Ctt7jrUUPr9tj7MUQrP7rDDrC"), k("rtDjr7rPDUr7U9DtrtrCrIrIrPDUr9Dj"), g("UUr9r7DtjMrcr9DUjMDtD7DMDMr9DjDUjMUtU97j7t"), k("rUr7DUrPrtrmU7Drr7rcDU"), k("DUrPDjrDr7DU"), h("DMrPDjDtr7UCrcDU"), p("rDrjrQ"), p("rDr7DU77rcrCrrr9DjreUIr9rtrPDUrCr9rc"), h("7DUe79UtU9UcUrUCUD"), g("7IjmjmjcjQjC7IjCjU"), g("DtrmrPrUr7Dj7tr9D7Djrtr7"), n("rIr9rtrPDUrCr9rc"), h("UmU77m"), h("DDrCrcrUr9DD"), h("rCrcrCDUUcU77DrPDUrtrmrerPrc"), h("rUrCDtrtr9rcrcr7rtDU"), g("rPDMDM7rr7DjDtrCr9rc"), p("rer9D7Dtr7rer9Drr7"), n("DUDCDMr7"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrer7rUrCD7rejMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), g("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrmrCrDrmjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), p("r7rcrPrjrIr77rr7DjDUr7DmUPDUDUDjrCrjUPDjDjrPDC"), h("rRrPDrrPU7rcrPrjrIr7rU"), n("r9DtrtDMD7"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrer7rUrCD7rejMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), n("r9DMDUrCr9rcDt"), h("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrIr9DDjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), h("UeUP7m797rUP7j7CUCUcUD797rU7Ut7UU97j7t"), n("7DUe79UcUCUQU7"), k("r9DMr7rcUUrPDUrPrjrPDtr7"), p("rDr7DU7MrPDjrPrer7DUr7Dj"), g("UjD7rrrrr7Dj"), n("7t7UU7UcUtUCUI79UjUC7U7t"), p("rtrPrcDrrPDt"), g("UmUCUDUm79UrUIU9UP7U"), g("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrIr9DDjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), p("tRjM"), k("DtrtDjr9rIrI"), n("rjrPDUDUr7DjDCUerPDm"), p("7DUe79UcUC"), k("UUU77M7UUm79Uj77UrUrU77j79UjUC7U"), h("rtDjr7rPDUr7UUDCrcrPrerCrtDtUtr9reDMDjr7DtDtr9Dj"), n("rCDMrmr9rcr7"), h("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrIr9DDjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rctR"), g("rCDM79DMDjr9DrrCrcrtr7"), g("7979Dtr7rIr7rcrCD7re79r7DrrPrID7rPDUr7"), g("UeDtDmrerItjjc7mUeUIUm7U7U7M"), g("j9Drttj9rj"), p("DMrPrDr77CU9rrrrDtr7DU"), k("UDU77U"), h("DtDUDCrIr7"), n("rUr7DMDUrmUrD7rcrt"), g("U9DMr7DjrP"), g("UtrPrcjMrcr9DUjMrrrCrcrUjMrtr9rcrrrCrDD7DjrPDUrCr9rc"), p("tRtR"), n("DMrPDjDtr7UrrIr9rPDU"), p("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrIr9DDjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), p("rDr7DUUPDUDUDjrCrjUIr9rtrPDUrCr9rc"), h("D7DUrrtm"), g("DDr7rjrDrIjMD7rcrerPDtrQr7rUjMDjr7rcrUr7Djr7DjtR"), n("DUDjrCrPrcrDrIr7"), g("D7rcrQrcr9DDrc"), n("D7rcrUr7rrrCrcr7rU"), g("7Ijc"), k("7DUe79UUUC7r"), p("7DUe797UUCUU"), p("r7Drr7rcDU"), k("rDr7DUU7DmDUr7rcDtrCr9rc"), n("rtrPrtrmr779"), n("r9rrrrDtr7DU7DrCrUDUrm"), n("D7Dtr7DjUPrDr7rcDU"), h("7PD7rCrtrQ7UrCrer7jc7PD7rCrtrQ7UrCrer7"), h("UR7tUtr9r9rQrCr7"), p("r7DmDMr7DjrCrer7rcDUrPrIjeDDr7rjrDrI"), h("rUrCDtrtrmrPDjrDrCrcrD7UrCrer7"), h("7979rcrCrDrmDUrerPDjr7"), n("UP7j7jUP7C79Uj77UrUrU77j"), k("UeU7UUUC77Ue79UCUc7U"), k("Djr7DPD7r7DtDUjMDjr7Dtr9D7Djrtr7jMr7DjDjr9Dj"), g("DDrCDUrmUtDjr7rUr7rcDUrCrPrIDt"), g("rCDM79rtrCDUDC"), n("tetQjMr7DmDMrCDjr7Dtte7UrmD7jIjMtMtPjMURrPrcjMtPtCtDtMjMtMtMtRtMtMtRtMtMjMUDUe7UtQjMDMrPDUrmtej9"), p("UerCDtDtrCrcrDjMrjD7DtrCrcr7DtDtjMrQr7DC"), h("DDrCrUDUrm"), g("DDr7rjrDrIjMrerPDmjMrrDjrPrDrer7rcDUjMD7rcrCrrr9DjrejMDrr7rtDUr9DjDttR"), k("7rU77j7tUCU9Uc"), g("7UUUUtUtDUrIjc7UUUUtUtDUrI"), p("Dtr7rIrr"), p("rIrCrcr7Umr7rCrDrmDU"), k("r7rrtmrttCrrtMtCtUtrtUtjtUtMr7t7tCtDtUrUtttrtUtrtUttr7tPtCr7tjtD"), g("7tr7DPD7r7rcDUD7re"), p("DtDMrPrc"), h("reDtrD"), h("rCrcrcr7DjUm7UUeUI"), p("rtr9r9rQrCr7U7rcrPrjrIr7rU"), n("DjrmrCrcr9"), k("rrrCDjr7rrr9Dm"), p("DUrmDjr7Dtrmr9rIrU"), n("rPDMDMUtr9rUr7UcrPrer7"), h("Ucr7DUDtrtrPDMr7"), p("rjrjtCtCrUrjtP79tD"), p("rjrjtCtCrUrjtP79tr"), p("rjrjtCtCrUrjtP79t7"), p("DMDjr9DUr9rtr9rI"), n("rrr9rcDUUrrPrerCrIDC"), k("rjrjtCtCrUrjtP79tU"), n("DDr7rjrDrIjMrerPDmjMDUr7DmDUD7Djr7jMrCrerPrDr7jMD7rcrCDUDttR"), h("rjrjtCtCrUrjtP79tC"), n("tRj9j9"), h("DtrtDjr9rIrIUIr7rrDU"), g("rjrjtCtCrUrjtP79tt"), k("rjrjtCtCrUrjtP79tj"), k("rjrjtCtCrUrjtP79tP"), n("7979rrDmrUDjrCDrr7Dj79r7DrrPrID7rPDUr7"), g("7Qr9rjrRr7rtDUjMUrD7rcrtDUrCr9rc7e"), h("DUrCrerCrcrD"), n("DUr97tr9D7Djrtr7"), n("UtUP7U79UrU9Uc7U7t"), p("UtDDrejMrrrRr9DjrUrjrPrcrQjMrDrIDCDMrmDtjMDrr7DmDUjMDPD7rCDRjIjM9MC9Cmm79MC9CmR79MC9CPQr9MC9Cmmt9MC9RDR79MC9CMQr9MC9mem9cjCRQec9Qmm9cjCImj9MC9mmQj9MC9CRCDcjmICRc9Qmm9cjCeRUc9Qmm99MC9m9mPcjCrQr"), k("7DUe79UUUCUU"), p("rPDMDMrIrCrtrPDUrCr9rcj9DmjeDDDDDDjerrr9DjrejeD7DjrIr7rcrtr9rUr7rU"), p("7jr7DtDMr9rcDtr7jMrCDtjMr7reDMDUDC"), h("tMtPtjtttUt7trtDtmtCrPrjrtrUr7rr"), g("DtrPrcDtjeDtr7DjrCrr"), p("DDr7rjrDrIjMrerPDmjMrtr9rerjrCrcr7rUjMDUr7DmDUD7Djr7jMrCrerPrDr7jMD7rcrCDUDttR"), k("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrmrCrDrmjMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), k("rmrCDtDUr9DjDC"), k("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrer7rUrCD7rejMrrrIr9rPDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), n("DDr7rjrDrIjMrrDjrPrDrer7rcDUjMDtrmrPrUr7DjjMrmrCrDrmjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerCrctR"), k("DtrtDjr9rIrI7Ur9DM"), k("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrmrCrDrmjMrCrcDUjMDMDjr7rtrCDtrCr9rctR"), h("Ur7jUPUDUeU7Uc7U797tUmUPUUU77j"), p("rCDMrPrU"), n("DjrDrjrPjmtPtMtjjIjMtjtMtUjIjMtMjIjMtMjctjjC"), g("UerPrtDjr9rer7rUrCrPUrrIrPDtrm7MrPDMr7DjjcUerPrtDjr9rer7rUrCrPUrrIrPDtrm7MrPDMr7Dj"), g("Dtr7rcrU"), p("rUr9reUPD7DUr9rerPDUrCr9rcUtr9rcDUDjr9rIrIr7Dj"), n("DtrtDjr7r7rc7m"), n("t9jr"), h("UPUIUCUP7tU7UU79UIUCUcU7797DUCUU7UUm797jUPUcUDU7"), k("Djr7rcrUr7Djr7rUUjD7rrrrr7Dj"), g("UrrPrCrIr7rUjMDUr9jMrIr9rPrUjMDtrtDjrCDMDUjm"), h("DMrIrPDUrrr9Djre"), k("Ut7t7ttPUtr9reDMrPDU"), h("rtrIr7rPDjUtr9rIr9Dj"), g("rDr7DUUPDUDUDjrCrjD7DUr7"), h("rPDjDjrPDC"), g("Dtr7DUUCrcDUr7DjDrrPrI"), h("7UrmrCDtjMrjDjr9DDDtr7DjjDDtjMrCreDMrIr7rer7rcDUrPDUrCr9rcjMr9rrjMU9rjrRr7rtDUjcrtDjr7rPDUr7jMrCDtjMrPjMDtrmrCrejMrPrcrUjMrUr9r7DtrcjDDUjMDtD7DMDMr9DjDUjMrPjMDtr7rtr9rcrUjMrPDjrDD7rer7rcDUjc"), k("rtDjr7rPDUr7U7Drr7rcDU"), p("rDr7DUUjrPDUDUr7DjDC"), h("DDr7rjrDrIjMDrr7DjDUr7DmjMDtrmrPrUr7DjjMrmrCrDrmjMrCrcDUjMDMDjr7rtrCDtrCr9rcjMDjrPrcrDr7UerPDmtR"), k("DrrPrID7r7"), k("DDrCrc"), p("Drr7DjDUr7DmUPDUDUDjrCrj7Mr9rCrcDUr7Dj"), g("7979DDr7rjrUDjrCDrr7Dj79DtrtDjrCDMDU79rrD7rcrtDUrCr9rc"), h("DtDjrtU7rIr7rer7rcDU")]; + (function () { + var a = [0, 2, 1423857449, -2, 1873313359, 3, -3, 1555261956, 4, 2847714899, -1444681467, -4, -1732584194, 5, 1163531501, -5, 2714866558, 1281953886, 6, -6, 198958881, 1141124467, 2970347812, 7, -198630844, -7, 3110523913, 8, -8, 2428444049, 1272893353, 9, -722521979, -9, 10, -10, 11, -11, 2563907772, -12, 12, 2282248934, 13, -13, 2154129355, 14, -14, 15, -15, 16, -16, 17, -17, 18, -18, -701558691, -19, 19, 20, -20, 21, -21, 22, -22, 23, -23, 24, -24, -25, 25, -26, 26, -27, 27, 28, -28, 29, -29, 30, -30, 31, -31, 32, -33, 33, -32, -35, 34, -34, 35, 37, -37, 36, -36, 39, 38, -39, -38, 40, -40, 41, -41, -176418897, -43, 43, 42, -42, 45, 44, -45, -44, -46, 47, -47, 46, 48, 49, -49, -48, 50, -50, -51, 51, 570562233, -52, -53, 52, 53, 54, 55, -55, -54, 503444072, -56, -57, 57, 56, -58, -59, 59, 58, 60, -60, -61, 61, 63, 62, -62, -63, -65, 64, 711928724, 67, -64, -67, -66, 66, 65, -68, 71, 68, 70, 69, -70, -69, -71, 75, 3686517206, -72, 72, -74, -73, 73, -75, 74, -79, -78, -76, 76, 78, 77, -77, 79, -80, 3554079995, -82, -83, 81, 83, -81, 80, 82, 84, 85, -87, -84, 87, -85, -86, 86, -89, -91, 88, -88, -90, 91, 90, 89, -92, 95, -95, -94, 92, 94, 93, -93, 99, 97, -97, 98, -96, 96, -99, -98, 1735328473, 3272380065, 100, 101, -103, -100, -101, 102, -102, 103, 105, 107, 104, -106, 106, -105, -107, -104, -110, 109, -108, -109, 111, 110, 108, -111, 251722036, 112, -115, 115, 114, -114, -112, 113, -113, -116, 118, -117, 119, 117, 116, -119, -118, 123, -120, -122, 120, 121, -121, 122, -123, 125, 127, 3412177804, -127, 124, -126, 126, -125, -124, -128, 128, -129, 130, 1843258603, 150, 3803740692, 984961486, 3939845945, 44100, 4195302755, 200, 201, 202, 203, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 221, 222, 223, 225, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 4066508878, 240, 241, 242, 243, 255, 1706088902, 256, 300, 327, 1969922972, 2097651377, 1291169091, 376229701, 400, 401, 402, 403, 404, 405, 606105819, 420, 450, 451, 470, 853044451, 500, 512, 701, 702, 703, 707, 704, 705, 706, 708, 709, 710, 711, 712, 713, 752459403, 800, 801, 802, 803, 804, 658871167, 1E3, 426522225, 1236535329, 3772115230, 615818150, 3904427059, 4167216745, 4027552580, 2E3, 3654703836, 1886057615, -145523070, 879679996, 3518719985, 3E3, 3244367275, 2013776290, 3373015174, 1390208809, 4500, -1019803690, 5E3, 1759359992, 6E3, 285281116, 1622183637, 1006888145, 1231636301, 1E4, 83908371, -155497632, 1090812512, 1732584193, 2463272603, 1373503546, 2596254646, 2321926636, 1504918807, 2181625025, 2882616665, 2747007092, -271733879, 3009837614, 6E4, 3138078467, -30611744, -2054922799, -1502002290, -42063, 397917763, 81470997, 829329135, 2657392035, 956543938, 2517215374, 2262029012, 40735498, 2394877945, 702138776, 2808555105, 38016083, 2936675148, 1258607687, 1131014506, 3218104598, 3082640443, 1404277552, -1926607734, 565507253, 4283543511, 534414190, 1541320221, 1913087877, 2053790376, -660478335, 1789927666, 3965973030, 3826175755, 4107580753, 4240017532, 1804603682, 1658658271, 3579855332, -1416354905, 3708648649, 3453421203, -358537222, 3317316542, -1560198380, -1473231341, 1873836001, 1742555852, 3608007406, 1996959894, 3747672003, -1990404162, -995338651, 3485111705, 2137656763, -2022574463, 3352799412, 213261112, 3993919788, 1.01, 3865271297, 4139329115, 4275313526, -405537848, -1094730640, 1549556828, 282753626, 1068828381, 909522486, 2768942443, 2909243462, 936918E3, -1044525330, 3183342108, 141376813, 3050360625, 654459306, 2617837225, 1454621731, 271733878, 2489596804, 76029189, 2227061214, 1591671054, 2362670323, 4294967296, 4294967295, -40341101, 1308918612, 795835527, 1181335161, 414664567, 4279200368, 1661365465, 1839030562, 1037604311, 4150417245, 3887607047, 1802195444, 4023717930, 2075208622, -165796510, 1943803523, 901097722, 568446438, 628085408, 755167117, 3322730930, 3462522015, 3736837829, 3604390888, 2366115317, -187363961, .4, 2238001368, 2512341634, 2647816111, -1120210379, -.2, 314042704, 1510334235, -1069501632, 1382605366, 31158534, 450548861, 643717713, 3020668471, 1119000684, 3160834842, 2898065728, 1256170817, 2765210733, 3060149565, 3188396048, 2932959818, 124634137, 2797360999, -373897302, -1894986606, -1530992060, 366619977, 62317068, -.26, 1200080426, 1202900863, 498536548, 1340076626, 1126891415, 2405801727, -1051523, 2265490386, 1594198024, 1466479909, 2547177864, 249268274, 2680153253, 2125561021, 3294710456, 855842277, 3423369109, .732134444, 3705015759, 3569037538, 1994146192, -45705983, 1711684554, 1852507879, 997073096, -421815835, 289559509, 733239954, 4251122042, 601450431, 4111451223, 167816743, 3855990285, 3981806797, 3988292384, 3369554304, 3233442989, 3495958263, 3624741850, 65535, 453092731, -.9, 2094854071, 1957810842, 325883990, 4057260610, 1684777152, 4189708143, 3915621685, 162941995, 1812370925, 3775830040, 783551873, 3134207493, 1172266101, 2998733608, 2724688242, 1303535960, 2852801631, 112637215, 1567103746, 444984403, 651767980, 1426400815, -1958414417, -51403784, -680876936, 906185462, 2211677639, 1047427035, -57434055, 2344532202, 2607071920, 681279174, 2466906013, 225274430, 544179635, 2176718541, 2312317920, 1483230225, 1342533948, 2567524794, 2439277719, 1088359270, 1309151649, 671266974, -343485551, 1219638859, 718787259, 953729732, 2277735313, 3099436303, 2966460450, 817233897, 2685067896, 2825379669, -35309556, 4089016648, 530742520, 4224994405, 3943577151, 3814918930, 1700485571, .25, -640364487, 476864866, 944331445, 1634467795, 335633487, 1762050814, -378558, -1, 1, 2044508324, 3401237130, 3268935591, 3524101629, 3663771856, 1770035416, 1907459465, -389564586, 3301882366]; + (function () { + function g(d) { + void 0 === d && (d = {}); + this.aa = ja(this.aa, a[0], this); + this.na = []; + this.sa = []; + this.aa(d) + } + + function p(d) { + function f(d) { + N(d) === b[437] || (d = [d]); + d.length < a[1] && (d = d.concat(d)); + return d + } + + function e(d, b) { + return d || d === a[0] ? d : b + } + + function q(a, d) { + return typeof a === x[18] ? a : d + } + + var l = d.buildVersion + , u = d.lastUsedVersion + , m = d.staticServer + , r = d.apiServer + , ra = d.apiServers + , g = d.staticServers + , k = d[b[72]]; + void 0 === k && (k = !0); + var n = d.valid + , t = d.sConfig + , w = d.configHash + , v = d[b[394]] + , y = d.pn + , z = d[c[183]] + , B = d[c[240]] + , C = d[b[264]] + , E = d.merged; + d = d.__serverConfig__; + void 0 === d && (d = {}); + var A = {}; + if (w || t) + try { + var D = ja(Ac, a[1], void 0)(w || t) + , A = JSON[c[236]](D) + } catch (F) { + c[0] + } + var D = N(A.bl) === b[265] ? A.bl.split(c[28]) : [] + , G = N(A.dl) === b[265] ? A.dl.split(c[28]) : [] + , H = h(G) + , I = a[376] * a[141] * a[141] + , J = I * a[66]; + return { + auto: k, + onload: B, + onerror: C, + staticServer: m, + apiServer: r, + staticServers: f(g || d.staticServer || m), + apiServers: f(ra || d.apiServer || r), + productNumber: z || y, + protocol: v, + domain: H, + Kc: G, + ic: D, + buildVersion: l, + lastUsedVersion: u, + sConfig: t, + configHash: w, + valid: n, + merged: E, + nc: q(A.ejcd, !1), + oc: q(A.ews, !1), + ra: q(A.edc, !0), + uc: e(A.ivp, J), + mc: e(A.dtvp, I), + Gc: e(A.tto, a[384]), + za: e(A.ret, a[675]), + moveMax: A.mem, + moveInterval: A.mei, + keydownMax: A.kem, + keydownInterval: A.kei, + clickMax: A.cem, + clickInterval: A.cei, + upMax: A.cem, + upInterval: A.cei, + downMax: A.cem, + downInterval: A.cei, + focusMax: A.fem, + focusInterval: A.fei, + blurMax: A.fem, + blurInterval: A.fei, + scrollMax: A.sem, + scrollInterval: A.sei, + orientationMax: A.otem, + orientationInterval: A.otei, + motionMax: A.mtem, + motionInterval: A.mtei + } + } + + function h(d) { + void 0 === d && (d = []); + var f = Bb[b[155]]; + if (!f || !d.length) + return c[0]; + try { + for (var e = a[0]; e < d.length; e++) { + var q = d[e]; + if (null === q || void 0 === q ? 0 : null !== /^[a-zA-Z0-9_.-]+$/.exec(q)) { + var l = new Cb(d[e].replace(/\./g, b[354]) + c[17]); + if (null !== f.match(l)) + return d[e] + } + } + } catch (u) { + c[0] + } + return c[0] + } + + function n() { + if (Ta) + return Ta; + Ta = this; + var d = Ua(C[b[163]][b[316]]) + , f = { + moveMax: R ? a[226] : a[5], + moveInterval: a[336], + downMax: R ? a[58] : a[5], + downInterval: a[336], + upMax: R ? a[58] : a[5], + upInterval: a[336], + clickMax: R ? a[58] : a[675], + clickInterval: a[336], + focusMax: R ? a[58] : a[675], + focusInterval: a[336], + blurMax: R ? a[58] : a[675], + blurInterval: a[336], + keydownMax: R ? a[34] : a[1], + keydownInterval: a[336], + scrollMax: R ? a[58] : a[1], + scrollInterval: a[336], + orientationMax: R ? a[119] : a[1], + orientationInterval: a[390], + motionMax: R ? a[119] : a[1], + motionInterval: a[390], + batteryMax: R ? a[226] : a[5], + batteryInterval: a[34] + }; + Object.keys(f).forEach(function (e) { + d[e] = d[e] > a[0] ? ~e.indexOf(b[41]) ? Math[b[196]](d[e], f[e]) : Math[b[59]](d[e], f[e]) : f[e] + }); + C.h(ka, d); + this.Q = new U(d); + la && (this.M = new k(d)) + } + + function k(a) { + void 0 === a && (a = {}); + var f = this; + this.F = [c[175], c[130], c[195], c[249]]; + this.Y = [a[b[329]], a[b[135]]]; + this.ka = a; + this.j = []; + this.l = !1; + this.D = null; + this._battery = {}; + this.ea = function (a) { + return f.O(a) + } + } + + function U(a) { + var b = this; + void 0 === a && (a = {}); + this.F = Object.keys(Ga); + this.Z = {}; + this.ka = a; + this.j = {}; + this.l = !1; + this.ta = function () { + for (var a = [], d = arguments.length; d--;) + a[d] = arguments[d]; + b.rc.apply(b, a) + } + } + + function ba(a) { + var b = a ? Db : Ha(Db, Bc) + , e = []; + try { + wa(Object.keys(b)).forEach(function (a) { + var d = b[a].f(); + c[0]; + e.push.apply(e, xa(d, ca[a])) + }) + } catch (q) { + } + return e + } + + window.ba = ba; + + function Cc(d) { + function f() { + Eb >= Va.length && (Fb = !0, + Wa = Xa(wa(e), function (a, d) { + a.push.apply(a, d); + return a + }, []), + d(Wa)) + } + + var e = []; + if (Fb) + return d(Wa); + var q = C[b[163]][b[316]] + , l = q.nc; + void 0 === l && (l = !1); + var u = q.Lc; + void 0 === u && (u = !0); + var m = q.oc; + void 0 === m && (m = !1); + Object.keys(Ya).forEach(function (a) { + var d = Ya[a] + , b = d.T + , f = Ya[a].Ja; + d.pc = a; + ca[a].a !== d.a || N(d) !== c[57] || b && (b === Gb && !u || b === Za && !l || b === Hb && !m) || (d.Ka = f ? d.f : function (a) { + return a(d.f()) + } + , + Va.push(d)) + }); + Va.forEach(function (d) { + function q() { + function a(b, q) { + c[0]; + e.push(xa(b, ca[d.pc], !!q)); + console.log(b, xa(b, ca[d.pc], !!q)); + Eb++; + f() + } + + try { + d.Ka(a) + } catch (l) { + a([], Error(b[106])) + } + } + + d.u ? ya(q, a[0]) : q() + }) + } + + window.Cc = Cc; + + function za(d, f) { + d = d || c[150]; + f = f || a[0]; + for (var e = d.length % a[49], q = d.length - e, l = [a[0], f], u = [a[0], f], m = [a[0], a[0]], r = [a[0], a[0]], ra = [a[653], a[589]], g = [a[340], a[375]], k = a[0]; k < q; k += a[49]) + m = [d.charCodeAt(k + a[8]) & a[333] | (d.charCodeAt(k + a[13]) & a[333]) << a[27] | (d.charCodeAt(k + a[18]) & a[333]) << a[49] | (d.charCodeAt(k + a[23]) & a[333]) << a[66], d.charCodeAt(k) & a[333] | (d.charCodeAt(k + a[675]) & a[333]) << a[27] | (d.charCodeAt(k + a[1]) & a[333]) << a[49] | (d.charCodeAt(k + a[5]) & a[333]) << a[66]], + r = [d.charCodeAt(k + a[40]) & a[333] | (d.charCodeAt(k + a[42]) & a[333]) << a[27] | (d.charCodeAt(k + a[45]) & a[333]) << a[49] | (d.charCodeAt(k + a[47]) & a[333]) << a[66], d.charCodeAt(k + a[27]) & a[333] | (d.charCodeAt(k + a[31]) & a[333]) << a[27] | (d.charCodeAt(k + a[34]) & a[333]) << a[49] | (d.charCodeAt(k + a[36]) & a[333]) << a[66]], + m = Q(m, ra), + m = sa(m, a[80]), + m = Q(m, g), + l = F(l, m), + l = sa(l, a[73]), + l = da(l, u), + l = da(Q(l, [a[0], a[13]]), [a[0], a[394]]), + r = Q(r, g), + r = sa(r, a[84]), + r = Q(r, ra), + u = F(u, r), + u = sa(u, a[80]), + u = da(u, l), + u = da(Q(u, [a[0], a[13]]), [a[0], a[669]]); + m = [a[0], a[0]]; + r = [a[0], a[0]]; + switch (e) { + case a[47]: + r = F(r, O([a[0], d.charCodeAt(k + a[45])], a[115])); + case a[45]: + r = F(r, O([a[0], d.charCodeAt(k + a[42])], a[98])); + case a[42]: + r = F(r, O([a[0], d.charCodeAt(k + a[40])], a[82])); + case a[40]: + r = F(r, O([a[0], d.charCodeAt(k + a[36])], a[66])); + case a[36]: + r = F(r, O([a[0], d.charCodeAt(k + a[34])], a[49])); + case a[34]: + r = F(r, O([a[0], d.charCodeAt(k + a[31])], a[27])); + case a[31]: + r = F(r, [a[0], d.charCodeAt(k + a[27])]), + r = Q(r, g), + r = sa(r, a[84]), + r = Q(r, ra), + u = F(u, r); + case a[27]: + m = F(m, O([a[0], d.charCodeAt(k + a[23])], a[136])); + case a[23]: + m = F(m, O([a[0], d.charCodeAt(k + a[18])], a[115])); + case a[18]: + m = F(m, O([a[0], d.charCodeAt(k + a[13])], a[98])); + case a[13]: + m = F(m, O([a[0], d.charCodeAt(k + a[8])], a[82])); + case a[8]: + m = F(m, O([a[0], d.charCodeAt(k + a[5])], a[66])); + case a[5]: + m = F(m, O([a[0], d.charCodeAt(k + a[1])], a[49])); + case a[1]: + m = F(m, O([a[0], d.charCodeAt(k + a[675])], a[27])); + case a[675]: + m = F(m, [a[0], d.charCodeAt(k)]), + m = Q(m, ra), + m = sa(m, a[80]), + m = Q(m, g), + l = F(l, m) + } + l = F(l, [a[0], d.length]); + u = F(u, [a[0], d.length]); + l = da(l, u); + u = da(u, l); + l = Ib(l); + u = Ib(u); + l = da(l, u); + u = da(u, l); + return (b[147] + (l[0] >>> a[0]).toString(a[49])).slice(a[28]) + (b[147] + (l[1] >>> a[0]).toString(a[49])).slice(a[28]) + (b[147] + (u[0] >>> a[0]).toString(a[49])).slice(a[28]) + (b[147] + (u[1] >>> a[0]).toString(a[49])).slice(a[28]) + } + + function $a() { + C[b[163]][b[316]] = window.options; + var d = C[b[163]][b[316]] + , f = W().k(Ia) + , e = ea().k(ta) + , q = d.ma + , l = d.C + , u = d[c[183]] + , d = d.lc + , m = { + bc: b[100], + Lb: Dc(), + Db: ab(), + Ub: Ec(J() + (C[b[163]].Aa || a[0])), + Oa: Fc, + Pa: q, + Ma: l, + Zb: f, + ab: d, + cb: e, + Kb: u, + Wa: void 0, + Xa: Gc, + Ya: Hc, + Za: Ic, + $a: void 0 + } + , r = []; + wa(Object.keys(m)).forEach(function (d) { + N(m[d]) !== b[353] && (ca[d].c >= a[370] && ca[d].c <= a[374] && (m[d] = Jc(m[d])), + c[0], + r.push.apply(r, xa(m[d], ca[d]))) + }); + return r + } + + window.$a = $a; + + function Ic() { + return c[10] + } + + function xa(d, f, e) { + var c = f.a + , l = f.e + , u = []; + if (!e && (c === B && (u = fa(X(d ? a[675] : a[1]), l)), + c === z && (u = fa(X(d), l)), + c === Y && (u = fa(Jb(d), l)), + c === t && (u = Aa(fa(d, l))), + c === H)) + for (e = a[0], + c = d.length; e < c; e++) { + var m = l[e] + , r = d[e]; + N(d[e]) === b[7] && u.push.apply(u, fa(X(r), m)); + N(d[e]) === b[265] && u.push.apply(u, Aa(fa(r, m))) + } + d = fa(X(f.c), a[1]); + f = fa(X(u.length), a[1]); + return d.concat(f, u) + } + + function Kb(d, f) { + function e(a) { + var d = {} + , f = null + , e = null; + p.concat(h).forEach(function (a) { + window[a] && (d[a] = window[a]) + }); + var q = Ja(l, g); + Kc(q, { + charset: b[297] + }, function (q, l) { + if (q) + return c[0], + null; + l && l.parentElement[b[148]](l); + f = p.map(function (a) { + return window[a] + }).join(c[35]); + e = h.map(function (a) { + return window[a] + }).join(c[35]); + c[0]; + c[0]; + a(f, e); + for (var m in d) + window[m] = d[m] + }) + } + + void 0 === f && (f = a[675]); + var q = C[b[163]][b[316]] + , l = q[b[394]] + , u = q.apiServers + , m = q[c[183]]; + void 0 === m && (m = c[0]); + var r = q.ma; + void 0 === r && (r = c[0]); + q = q.C; + void 0 === q && (q = c[0]); + var k = W().k(Ia) + , g = c[63] + , p = [b[23], c[237], b[335], b[371]] + , h = [b[24], c[89], b[257], b[186], c[177], b[383]]; + (function (d) { + e(function (f, e) { + d.ip = f; + d.dns = e; + var c = Ja(l, u[u.length - a[675]], b[169]); + Lb(c, { + K: d + }) + }) + } + )({ + tid: k, + referrer: Bb.href || c[0], + pn: m, + bid: r, + tid2: q, + type: d.code, + message: d.toString(), + target: d.data.url || c[0], + requestCount: f, + osv: v[b[433]] || c[0], + sdkv: c[245] + }) + } + + function Kc(a, f, e) { + var q = document.head || document[c[98]](b[113])[0] + , l = document[c[182]](b[26]); + typeof f === b[86] && (e = f, + f = {}); + f = f || {}; + e = e || function () { + } + ; + l.type = f.type || c[169]; + l.charset = f.charset || b[349]; + l.async = x[16] in f ? !!f.async : !0; + l[b[127]] = a; + f.hc && Lc(l, f.hc); + f.text && (l.text = c[0] + f.text); + (c[240] in l ? Mb : Mc)(l, e); + l[c[240]] || Mb(l, e); + q[c[12]](l) + } + + function Nc(d, f) { + function e(a, d) { + l && ua(l); + q && typeof q[b[255]] === b[86] && q[b[255]](); + a ? g(a) : k(d) + } + + void 0 === f && (f = {}); + var q, l, u = f.ba, m = f.K; + void 0 === m && (m = {}); + var r = f.Ba; + void 0 === r && (r = a[419]); + var k = f.V; + void 0 === k && (k = V); + var g = f.U; + void 0 === g && (g = V); + m[c[102]] = c[215] + ab().slice(a[1], a[31]); + r && (l = ya(function () { + e(Error(c[198])) + }, r)); + u === b[340] && (d += (~d.indexOf(c[58]) ? c[19] : c[58]) + bb(m)); + cb ? (q = new cb, + b[370] in q ? (q[b[216]](u, d, !0), + q[c[157]](c[189], b[411]), + q[b[264]] = f[b[264]], + q[b[182]] = function () { + if (q[b[88]] === a[8]) + if (l && ua(l), + q[b[36]] >= a[295] && q[b[36]] < a[342]) { + var d, f = new Cb(c[101] + m[c[102]] + b[300]); + try { + d = JSON[c[236]]((q[c[205]] || c[0]).match(f)[1] || c[0]) + } catch (r) { + } + d ? e(null, d) : e(Error(b[412])) + } else + e(Error(b[214])) + } + , + q[b[426]](bb(m))) : (e(Error(b[293])), + c[0])) : (e(Error(b[293])), + c[0]); + return q && typeof q[b[255]] === b[86] && q[b[255]] + } + + function ma(a) { + void 0 === a && (a = {}); + this.R = x[2]; + this.w = { "YD20160637306799:WM_DIV": null }; //修改 + this.p = a.p || c[0] + } + + function Ba(a) { + void 0 === a && (a = {}); + this.p = a.p || c[0]; + this.X = [Oc, Pc, Qc] + } + + function va(a) { + this[b[163]] = a[b[163]]; + this.Rb = []; + var f = this + , e = this.h + , c = this.B; + this.h = function (a, d, b) { + return e.call(f, a, d, b) + } + ; + this.B = function (a, d) { + return c.call(f, a, d) + } + ; + this.Ec(a.fc); + this.Fc(a.zc) + } + + function E(a) { + try { + return Nb[a] + } catch (b) { + } + } + + function ab() { + return b[49].replace(/[xy]/g, function (d) { + var b = Math[c[218]]() * a[49] | a[0]; + return (d === c[144] ? b : b & a[5] | a[27]).toString(a[49]) + }) + } + + function Ec(d) { + void 0 === d && (d = a[0]); + d = (new Ca(d))[c[203]](); + return na(d / a[376], a[34]) + } + + function N(d) { + return null == d ? String(d) : Rc.call(d).slice(a[27], a[674]).toLowerCase() + } + + function V() { + } + + function Sc(a, b) { + return a.filter(b)[0] + } + + function Ua(a, f) { + void 0 === f && (f = []); + if (null === a || typeof a !== c[57]) + return a; + var e = Sc(f, function (b) { + return b.Dc === a + }); + if (e) + return e.kc; + var q = N(a) === b[437] ? [] : {}; + f.push({ + Dc: a, + kc: q + }); + Object.keys(a).forEach(function (b) { + q[b] = Ua(a[b], f) + }); + return q + } + + function db() { + var a; + try { + a = new cb + } catch (f) { + } + return !!a && b[370] in a + } + + function bb(a) { + return Object.keys(a).map(function (b) { + return Z(b) + c[55] + Z(a[b]) + }).join(c[19]) + } + + function Ob(a) { + return a.replace(/(^\/)|(\/$)/g, c[0]) + } + + function Ja(a, f, e) { + f = Ob(f.replace(/^https?:\/\//i, c[0])); + return (e = e ? Ob(e) : c[0]) ? a + b[399] + f + c[35] + e : a + b[399] + f + } + + function Ha(a, b) { + for (var e in b) + !b.hasOwnProperty(e) || (a[e] = b[e]); + return a + } + + function J() { + return (new Ca)[c[203]]() + } + + function wa(a) { + for (var f = a.length, e, q; f;) + q = Math[b[122]](Math[c[218]]() * f--), + e = a[f], + a[f] = a[q], + a[q] = e; + return a + } + + function Xa(d, f) { + if (null == d) + throw new TypeError(b[116]); + if (typeof f !== b[86]) + throw new TypeError(f + b[145]); + var e = d.length >>> a[0], c = a[0], l; + if (arguments.length === a[5]) + l = arguments[2]; + else { + for (; c < e && !(c in d);) + c++; + if (c >= e) + throw new TypeError(b[285]); + l = d[c++] + } + for (; c < e; c++) + c in d && (l = f(l, d[c], c, d)); + return l + } + + function W() { + var a = C[b[163]][b[316]].merged ? C[b[163]][b[316]][c[183]] : c[0]; + if (Ka[a]) + return Ka[a]; + Ka[a] = new Ba({ + p: a + }); + return Ka[a] + } + + function ea() { + var a = C[b[163]][b[316]].merged ? C[b[163]][b[316]][c[183]] : c[0]; + if (La[a]) + return La[a]; + La[a] = new ma({ + p: a + }); + return La[a] + } + + function Lb(d, f) { + function e() { + if (h[c[184]]) + h[c[184]][b[148]](h); + y[q] = V; + n && ua(n) + } + + void 0 === f && (f = {}); + var q = c[215] + ab().slice(a[1], a[31]) + Tc++ + , l = c[102] + , u = Z + , m = f.V; + void 0 === m && (m = V); + var r = f.K + , k = f.U; + void 0 === k && (k = V); + var g = f.Ba; + void 0 === g && (g = a[399]); + var p = w[c[98]](b[26])[0] || w.head, h, n; + g && (n = ya(function () { + e(); + k && k(Error(c[198])) + }, g)); + y[q] = function (a) { + e(); + m && m(a) + } + ; + d += (~d.indexOf(c[58]) ? c[19] : c[58]) + l + c[55] + u(q) + c[19] + bb(r); + d = d.replace(b[429], c[58]); + h = w[c[182]](b[26]); + h[b[127]] = d; + h[b[264]] = function (a) { + e(); + k(a) + } + ; + h[c[219]](b[38], b[95]); + p[c[184]][c[163]](h, p); + return function () { + y[q] && e() + } + } + + function Pb() { + } + + function Qb(d, f) { + f = Ha({ + ba: b[340], + K: {}, + Ba: a[397], + V: Pb, + U: Pb + }, f); + (db() ? Nc : Lb)(d, f) + } + + function Rb(d, b, e, q, l) { + void 0 === e && (e = a[0]); + void 0 === q && (q = Sb); + void 0 === l && (l = eb); + var k, m = []; + switch (e) { + case a[675]: + e = d[b]; + k = a[0]; + m.push(q[e >>> a[1] & a[145]], q[(e << a[8] & a[115]) + (k >>> a[8] & a[47])], l, l); + break; + case a[1]: + e = d[b]; + k = d[b + a[675]]; + d = a[0]; + m.push(q[e >>> a[1] & a[145]], q[(e << a[8] & a[115]) + (k >>> a[8] & a[47])], q[(k << a[1] & a[141]) + (d >>> a[18] & a[5])], l); + break; + case a[5]: + e = d[b]; + k = d[b + a[675]]; + d = d[b + a[1]]; + m.push(q[e >>> a[1] & a[145]], q[(e << a[8] & a[115]) + (k >>> a[8] & a[47])], q[(k << a[1] & a[141]) + (d >>> a[18] & a[5])], q[d & a[145]]); + break; + default: + throw Error(c[117]); + } + return m.join(c[0]) + } + + function Tb(d, b, e) { + void 0 === b && (b = []); + void 0 === e && (e = eb); + if (!d) + return null; + if (d.length === a[0]) + return c[0]; + var q = a[5]; + try { + for (var l = [], k = a[0]; k < d.length;) + if (k + q <= d.length) + l.push(Rb(d, k, q, b, e)), + k += q; + else { + l.push(Rb(d, k, d.length - k, b, e)); + break + } + return l.join(c[0]) + } catch (m) { + throw Error(c[117]); + } + } + + function Ub(a) { + void 0 === a && (a = []); + return Tb(a, Uc, Vc) + } + + function D(d) { + if (d < a[284]) + return D(a[285] - (a[284] - d)); + if (d >= a[284] && d <= a[276]) + return d; + if (d > a[276]) + return D(a[286] + d - a[276]); + throw Error(c[142]); + } + + function Wc(a, b) { + return D(a + b) + } + + function Vb(a, b) { + return D(D(a) ^ D(b)) + } + + function fb(d, b) { + void 0 === d && (d = []); + void 0 === b && (b = []); + if (d.length !== b.length) + return []; + for (var e = [], c = a[0], l = d.length; c < l; c++) + e[c] = Vb(d[c], b[c]); + return e + } + + function Wb(d) { + var b = [c[37], c[38], c[39], c[41], c[43], c[46], c[48], c[49], c[51], c[52], c[103], c[105], c[107], c[109], c[111], c[114]]; + return c[0] + b[d >>> a[8] & a[47]] + b[d & a[47]] + } + + function gb(a) { + void 0 === a && (a = []); + return a.map(function (a) { + return Wb(a) + }).join(c[0]) + } + + function hb(d) { + void 0 === d && (d = c[0]); + d = typeof d === b[265] ? d : String(d); + for (var f = [], e = a[0], q = a[0], l = d.length / a[1]; e < l; e++) { + var k = na(d.charAt(q++), a[49]) << a[8] + , m = na(d.charAt(q++), a[49]); + f[e] = D(k + m) + } + return f + } + + function Aa(d) { + if (null === d || void 0 === d) + return d; + d = Z(d); + for (var b = [], e = a[0], q = d.length; e < q; e++) + if (d.charAt(e) === c[18]) + if (e + a[1] < q) + b.push(Jb(d.charAt(++e) + c[0] + d.charAt(++e))[0]); + else + throw Error(c[151]); + else + b.push(D(d.charCodeAt(e))); + return b + } + + function X(d) { + var b = []; + b[0] = D(d >>> a[66] & a[333]); + b[1] = D(d >>> a[49] & a[333]); + b[2] = D(d >>> a[27] & a[333]); + b[3] = D(d & a[333]); + return b + } + + function ga(d, b, e, q, l) { + void 0 === d && (d = []); + void 0 === e && (e = []); + if (d.length) { + if (d.length < l) + throw Error(c[139]); + for (var k = a[0]; k < l; k++) + e[q + k] = d[b + k] + } + } + + function Xb() { + return Array.apply(null, Array(a[34])).map(function () { + return a[0] + }) + } + + function Jb(d) { + if (null === d || d.length === a[0]) + return []; + d = typeof d === b[265] ? d : String(d); + for (var f = [], e = a[0], c = a[0], l = d.length / a[1]; c < l; c++) { + var k = na(d.charAt(e++), a[49]) << a[8] + , m = na(d.charAt(e++), a[49]); + f[c] = D(k + m) + } + return f + } + + function ib(d) { + void 0 === d && (d = []); + var b = []; + if (!d.length) + return Xb(); + if (d.length >= jb) { + var b = a[0] + , e = jb; + void 0 === d && (d = []); + var q = []; + if (d.length) { + if (d.length < e) + throw Error(c[139]); + for (var l = a[0]; l < e; l++) + q[l] = d[b + l] + } + return q + } + for (e = a[0]; e < jb; e++) + b[e] = d[e % d.length]; + return b + } + + function Yb(d) { + void 0 === d && (d = []); + if (!d.length) + return []; + for (var b = [], e = a[0], c = d.length; e < c; e++) { + var l = d[e]; + b[e] = Xc[(l >>> a[8] & a[47]) * a[49] + (l & a[47])] + } + return b + } + + function Yc(d, b) { + void 0 === d && (d = []); + if (!d.length) + return []; + b = D(b); + for (var e = [], c = a[0], l = d.length; c < l; c++) + e.push(Vb(d[c], b++)); + return e + } + + function Zc(d, b) { + void 0 === d && (d = []); + if (!d.length) + return []; + b = D(b); + for (var e = [], c = a[0], l = d.length; c < l; c++) + e.push(D(d[c] + b)); + return e + } + + function kb(d, b) { + void 0 === d && (d = []); + if (!d.length) + return []; + b = D(b); + for (var e = [], c = a[0], l = d.length; c < l; c++) + e.push(Wc(d[c], b++)); + return e + } + + function $c(d) { + return Xa([[Yc, a[68]], [kb, a[28]], [Zc, a[208]], [kb, a[216]], [kb, a[83]]], function (a, d) { + return d[0](a, d[1]) + }, d) + } + + function lb(d) { + void 0 === d && (d = []); + var f = b[380], e; + e = [a[0], a[469], a[478], a[644], a[555], a[386], a[611], a[428], a[574], a[676], a[379], a[573], a[612], a[576], a[517], a[29], a[565], a[451], a[660], a[502], a[544], a[288], a[454], a[631], a[607], a[609], a[591], a[412], a[671], a[513], a[294], a[531], a[587], a[17], a[458], a[619], a[402], a[438], a[679], a[489], a[523], a[547], a[167], a[549], a[353], a[617], a[581], a[415], a[625], a[410], a[598], a[440], a[444], a[498], a[473], a[654], a[648], a[571], a[527], a[22], a[509], a[642], a[391], a[552], a[583], a[543], a[38], a[519], a[682], a[622], a[575], a[381], a[392], a[250], a[430], a[614], a[474], a[494], a[645], a[480], a[518], a[668], a[534], a[328], a[613], a[603], a[414], a[593], a[334], a[539], a[634], a[455], a[457], a[560], a[504], a[662], a[620], a[291], a[416], a[582], a[550], a[515], a[551], a[184], a[439], a[388], a[490], a[680], a[21], a[578], a[621], a[460], a[643], a[496], a[553], a[393], a[572], a[639], a[26], a[528], a[503], a[434], a[655], a[476], a[413], a[615], a[441], a[599], a[597], a[411], a[561], a[606], a[292], a[536], a[426], a[522], a[664], a[500], a[638], a[449], a[453], a[637], a[594], a[339], a[383], a[570], a[132], a[672], a[516], a[44], a[377], a[586], a[482], a[641], a[486], a[467], a[610], a[433], a[425], a[401], a[530], a[16], a[652], a[566], a[389], a[556], a[487], a[650], a[601], a[437], a[630], a[407], a[470], a[658], a[427], a[510], a[277], a[548], a[525], a[542], a[579], a[420], a[123], a[626], a[463], a[618], a[590], a[7], a[678], a[495], a[369], a[447], a[635], a[452], a[338], a[432], a[497], a[663], a[448], a[405], a[535], a[290], a[520], a[477], a[409], a[595], a[605], a[20], a[431], a[608], a[398], a[446], a[640], a[481], a[466], a[511], a[41], a[512], a[585], a[400], a[568], a[382], a[670], a[341], a[657], a[468], a[508], a[429], a[435], a[600], a[403], a[632], a[554], a[385], a[646], a[491], a[9], a[529], a[564], a[656], a[493], a[677], a[442], a[380], a[616], a[461], a[2], a[592], a[418], a[577], a[623], a[151], a[546], a[225], a[540], a[526]]; + for (var q = a[506], l = a[0], k = d.length; l < k; l++) + q = q >>> a[27] ^ e[(q ^ d[l]) & a[333]]; + e = gb(X(q ^ a[506])); + q = Aa(e); + e = []; + ga(d, a[0], e, a[0], d.length); + ga(q, a[0], e, e.length, q.length); + d = Aa(f); + void 0 === e && (e = []); + q = []; + for (f = a[0]; f < mb; f++) + l = Math[c[218]]() * a[335], + l = Math[b[122]](l), + q[f] = D(l); + d = ib(d); + d = fb(d, ib(q)); + f = d = ib(d); + var m = e; + void 0 === m && (m = []); + if (m.length) { + e = []; + l = m.length; + k = a[0]; + k = l % S <= S - Ma ? S - l % S - Ma : S * a[1] - l % S - Ma; + ga(m, a[0], e, a[0], l); + for (m = a[0]; m < k; m++) + e[l + m] = a[0]; + ga(X(l), a[0], e, l + k, Ma) + } else + e = Xb(); + l = e; + void 0 === l && (l = []); + if (l.length % S !== a[0]) + throw Error(c[133]); + e = []; + for (var k = a[0], m = l.length / S, r = a[0]; r < m; r++) { + e[r] = []; + for (var g = a[0]; g < S; g++) + e[r][g] = l[k++] + } + l = []; + ga(q, a[0], l, a[0], mb); + q = a[0]; + for (k = e.length; q < k; q++) { + m = $c(e[q]); + m = fb(m, d); + r = f; + void 0 === m && (m = []); + void 0 === r && (r = []); + for (var g = [], h = r.length, p = a[0], n = m.length; p < n; p++) + g[p] = D(m[p] + r[p % h]); + m = fb(g, f); + f = Yb(m); + f = Yb(f); + ga(f, a[0], l, q * S + mb, S) + } + return Tb(l, Sb, eb) + } + + window.lb = lb; + + function Ac(d) { + if (!d) + return c[0]; + var b = [a[80], a[275], a[39], a[141], a[82], a[115]] + , e = a[0]; + d = hb(d); + for (var q = [], l = a[0]; l < d.length; l++) + q[l] = D(a[0] - d[l]), + q[l] = D(q[l] ^ b[e++ % b.length]); + b = q; + void 0 === b && (b = []); + e = []; + for (d = a[0]; d < b.length; d++) + e.push(c[18]), + e.push(Wb(b[d])); + return Zb(e.join(c[0])) + } + + function Na(d) { + if (!d) + return c[0]; + var b = a[0] + , e = [a[80], a[275], a[39], a[141], a[82], a[115]]; + d = Aa(d); + for (var q = [], l = a[0]; l < d.length; l++) + q[l] = D(d[l] ^ e[b++ % e.length]), + q[l] = D(a[0] - q[l]); + return gb(q) + } + + function ha(d, b) { + var e = (d & a[602]) + (b & a[602]); + return (d >> a[49]) + (b >> a[49]) + (e >> a[49]) << a[49] | e & a[602] + } + + function I(d, b, e, c, l, k) { + d = ha(ha(b, d), ha(c, k)); + return ha(d << l | d >>> a[82] - l, e) + } + + function K(a, b, e, c, l, k, m) { + return I(b & e | ~b & c, a, b, l, k, m) + } + + function L(a, b, e, c, l, k, m) { + return I(b & c | e & ~c, a, b, l, k, m) + } + + function M(a, b, e, c, l, k, m) { + return I(e ^ (b | ~c), a, b, l, k, m) + } + + function $b(d) { + var b, e = []; + e[(d.length >> a[1]) - a[675]] = void 0; + for (b = a[0]; b < e.length; b += a[675]) + e[b] = a[0]; + var q = d.length * a[27]; + for (b = a[0]; b < q; b += a[27]) + e[b >> a[13]] |= (d.charCodeAt(b / a[27]) & a[333]) << b % a[82]; + d = d.length * a[27]; + e[d >> a[13]] |= a[285] << d % a[82]; + e[(d + a[150] >>> a[31] << a[8]) + a[45]] = d; + var l, k, m = a[408], r = a[417], g = a[12], h = a[499]; + for (d = a[0]; d < e.length; d += a[49]) + b = m, + q = r, + l = g, + k = h, + m = K(m, r, g, h, e[d], a[23], a[629]), + h = K(h, m, r, g, e[d + a[675]], a[40], a[683]), + g = K(g, h, m, r, e[d + a[1]], a[51], a[348]), + r = K(r, g, h, m, e[d + a[5]], a[62], a[492]), + m = K(m, r, g, h, e[d + a[8]], a[23], a[102]), + h = K(h, m, r, g, e[d + a[13]], a[40], a[563]), + g = K(g, h, m, r, e[d + a[18]], a[51], a[465]), + r = K(r, g, h, m, e[d + a[23]], a[62], a[584]), + m = K(m, r, g, h, e[d + a[27]], a[23], a[681]), + h = K(h, m, r, g, e[d + a[31]], a[40], a[627]), + g = K(g, h, m, r, e[d + a[34]], a[51], a[424]), + r = K(r, g, h, m, e[d + a[36]], a[62], a[471]), + m = K(m, r, g, h, e[d + a[40]], a[23], a[456]), + h = K(h, m, r, g, e[d + a[42]], a[40], a[507]), + g = K(g, h, m, r, e[d + a[45]], a[51], a[423]), + r = K(r, g, h, m, e[d + a[47]], a[62], a[378]), + m = L(m, r, g, h, e[d + a[675]], a[13], a[521]), + h = L(h, m, r, g, e[d + a[18]], a[31], a[541]), + g = L(g, h, m, r, e[d + a[36]], a[45], a[545]), + r = L(r, g, h, m, e[d], a[58], a[557]), + m = L(m, r, g, h, e[d + a[13]], a[13], a[55]), + h = L(h, m, r, g, e[d + a[34]], a[31], a[436]), + g = L(g, h, m, r, e[d + a[47]], a[45], a[450]), + r = L(r, g, h, m, e[d + a[8]], a[58], a[483]), + m = L(m, r, g, h, e[d + a[31]], a[13], a[524]), + h = L(h, m, r, g, e[d + a[45]], a[31], a[396]), + g = L(g, h, m, r, e[d + a[5]], a[45], a[532]), + r = L(r, g, h, m, e[d + a[27]], a[58], a[14]), + m = L(m, r, g, h, e[d + a[42]], a[13], a[10]), + h = L(h, m, r, g, e[d + a[1]], a[31], a[628]), + g = L(g, h, m, r, e[d + a[23]], a[45], a[224]), + r = L(r, g, h, m, e[d + a[40]], a[58], a[443]), + m = I(r ^ g ^ h, m, r, e[d + a[13]], a[8], a[673]), + h = I(m ^ r ^ g, h, m, e[d + a[27]], a[36], a[475]), + g = I(h ^ m ^ r, g, h, e[d + a[36]], a[49], a[514]), + r = I(g ^ h ^ m, r, g, e[d + a[45]], a[64], a[659]), + m = I(r ^ g ^ h, m, r, e[d + a[675]], a[8], a[559]), + h = I(m ^ r ^ g, h, m, e[d + a[8]], a[36], a[30]), + g = I(h ^ m ^ r, g, h, e[d + a[23]], a[49], a[406]), + r = I(g ^ h ^ m, r, g, e[d + a[34]], a[64], a[484]), + m = I(r ^ g ^ h, m, r, e[d + a[42]], a[8], a[636]), + h = I(m ^ r ^ g, h, m, e[d], a[36], a[462]), + g = I(h ^ m ^ r, g, h, e[d + a[5]], a[49], a[32]), + r = I(g ^ h ^ m, r, g, e[d + a[18]], a[64], a[501]), + m = I(r ^ g ^ h, m, r, e[d + a[31]], a[8], a[667]), + h = I(m ^ r ^ g, h, m, e[d + a[40]], a[36], a[588]), + g = I(h ^ m ^ r, g, h, e[d + a[47]], a[49], a[661]), + r = I(g ^ h ^ m, r, g, e[d + a[1]], a[64], a[472]), + m = M(m, r, g, h, e[d], a[18], a[24]), + h = M(h, m, r, g, e[d + a[23]], a[34], a[567]), + g = M(g, h, m, r, e[d + a[45]], a[47], a[459]), + r = M(r, g, h, m, e[d + a[13]], a[60], a[633]), + m = M(m, r, g, h, e[d + a[40]], a[18], a[665]), + h = M(h, m, r, g, e[d + a[5]], a[34], a[558]), + g = M(g, h, m, r, e[d + a[34]], a[47], a[569]), + r = M(r, g, h, m, e[d + a[675]], a[60], a[422]), + m = M(m, r, g, h, e[d + a[27]], a[18], a[4]), + h = M(h, m, r, g, e[d + a[47]], a[34], a[421]), + g = M(g, h, m, r, e[d + a[18]], a[47], a[464]), + r = M(r, g, h, m, e[d + a[42]], a[60], a[647]), + m = M(m, r, g, h, e[d + a[8]], a[18], a[387]), + h = M(h, m, r, g, e[d + a[36]], a[34], a[537]), + g = M(g, h, m, r, e[d + a[1]], a[47], a[651]), + r = M(r, g, h, m, e[d + a[31]], a[60], a[649]), + m = ha(m, b), + r = ha(r, q), + g = ha(g, l), + h = ha(h, k); + e = [m, r, g, h]; + b = c[0]; + q = e.length * a[82]; + for (d = a[0]; d < q; d += a[27]) + b += String.fromCharCode(e[d >> a[13]] >>> d % a[82] & a[333]); + return b + } + + function ac(d) { + var f = b[413], e = c[0], q, l; + for (l = a[0]; l < d.length; l += a[675]) + q = d.charCodeAt(l), + e += f.charAt(q >>> a[8] & a[47]) + f.charAt(q & a[47]); + return e + } + + function bc() { + var d = (new Date)[c[203]]() + , f = Math[b[122]](d / a[505]) + , e = d % a[505] + , d = X(f) + , e = X(e) + , f = []; + ga(d, a[0], f, a[0], a[8]); + ga(e, a[0], f, a[8], a[8]); + e = []; + for (d = a[0]; d < a[27]; d++) + e[d] = D(Math[b[122]](Math[c[218]]() * a[335])); + for (var d = [], q = a[0]; q < f.length * a[1]; q++) { + if (q % a[1] == a[0]) { + var l = q / a[1]; + d[q] = d[q] | (e[l] & a[49]) >>> a[8] | (e[l] & a[82]) >>> a[5] | (e[l] & a[150]) >>> a[1] | (e[l] & a[285]) >>> a[675] | (f[l] & a[49]) >>> a[5] | (f[l] & a[82]) >>> a[1] | (f[l] & a[150]) >>> a[675] | (f[l] & a[285]) >>> a[0] + } else + l = Math[b[122]](q / a[1]), + d[q] = d[q] | (e[l] & a[675]) << a[0] | (e[l] & a[1]) << a[675] | (e[l] & a[8]) << a[1] | (e[l] & a[27]) << a[5] | (f[l] & a[675]) << a[675] | (f[l] & a[1]) << a[1] | (f[l] & a[8]) << a[5] | (f[l] & a[27]) << a[8]; + d[q] = D(d[q]) + } + f = gb(d); + f = ac($b(cc(Z(f + b[256])))); + f = hb(f.substring(a[0], a[49])); + return Ub(f.concat(d)) + } + + window.bc = bc; + + function dc(a, get_params_d) { + var f = a.C + , e = a.la + , q = get_params_d + , l = 1; + a = { + r: l, + d: q || c[0], + b: f + }; + e && (f = hb(ac($b(cc(Z(l + q + f + b[291]))))), + a.t = Ub(f)); + try { + return Na(JSON[b[139]](a)) + } catch (g) { + return Na(b[161]) + } + } + + window.dc = dc; + + function nb() { + var a = ea().k(ta) + , f = W().k(ob) + , a = { + r: C[b[163]][b[316]].za, + d: a || c[0], + i: f + }; + try { + return Na(JSON[b[139]](a)) + } catch (e) { + return Na(b[161]) + } + } + + function Lc(a, b) { + for (var e in b) + a[c[219]](e, b[e]) + } + + function Mb(a, f) { + a[c[240]] = function () { + this[b[264]] = this[c[240]] = null; + f(null, a) + } + ; + a[b[264]] = function () { + this[b[264]] = this[c[240]] = null; + f(Error(b[102] + this[b[127]]), a) + } + } + + function Mc(a, f) { + a[b[182]] = function () { + if (this[b[88]] == b[69] || this[b[88]] == b[232]) + this[b[182]] = null, + f(null, a) + } + } + + function fa(d, f) { + return N(d) === b[265] ? d.length > f ? d.slice(a[0], f) : d : N(d) === b[437] ? d.length > f ? d.slice(-f) : d : d + } + + function Dc() { + var b = a[333]; + return ec < b ? ++ec : b + } + + function Jc(a) { + switch (N(a)) { + case b[265]: + return a.replace(/,/g, c[0]); + case b[86]: + return a(); + case b[437]: + return a.join(c[0]); + default: + return a + } + } + + function da(b, f) { + b = [b[0] >>> a[49], b[0] & a[602], b[1] >>> a[49], b[1] & a[602]]; + f = [f[0] >>> a[49], f[0] & a[602], f[1] >>> a[49], f[1] & a[602]]; + var e = [a[0], a[0], a[0], a[0]]; + e[3] += b[3] + f[3]; + e[2] += e[3] >>> a[49]; + e[3] &= a[602]; + e[2] += b[2] + f[2]; + e[1] += e[2] >>> a[49]; + e[2] &= a[602]; + e[1] += b[1] + f[1]; + e[0] += e[1] >>> a[49]; + e[1] &= a[602]; + e[0] += b[0] + f[0]; + e[0] &= a[602]; + return [e[0] << a[49] | e[1], e[2] << a[49] | e[3]] + } + + function Q(b, f) { + b = [b[0] >>> a[49], b[0] & a[602], b[1] >>> a[49], b[1] & a[602]]; + f = [f[0] >>> a[49], f[0] & a[602], f[1] >>> a[49], f[1] & a[602]]; + var e = [a[0], a[0], a[0], a[0]]; + e[3] += b[3] * f[3]; + e[2] += e[3] >>> a[49]; + e[3] &= a[602]; + e[2] += b[2] * f[3]; + e[1] += e[2] >>> a[49]; + e[2] &= a[602]; + e[2] += b[3] * f[2]; + e[1] += e[2] >>> a[49]; + e[2] &= a[602]; + e[1] += b[1] * f[3]; + e[0] += e[1] >>> a[49]; + e[1] &= a[602]; + e[1] += b[2] * f[2]; + e[0] += e[1] >>> a[49]; + e[1] &= a[602]; + e[1] += b[3] * f[1]; + e[0] += e[1] >>> a[49]; + e[1] &= a[602]; + e[0] += b[0] * f[3] + b[1] * f[2] + b[2] * f[1] + b[3] * f[0]; + e[0] &= a[602]; + return [e[0] << a[49] | e[1], e[2] << a[49] | e[3]] + } + + function sa(b, f) { + f %= a[150]; + if (f === a[82]) + return [b[1], b[0]]; + if (f < a[82]) + return [b[0] << f | b[1] >>> a[82] - f, b[1] << f | b[0] >>> a[82] - f]; + f -= a[82]; + return [b[1] << f | b[0] >>> a[82] - f, b[0] << f | b[1] >>> a[82] - f] + } + + function O(b, f) { + f %= a[150]; + return f === a[0] ? b : f < a[82] ? [b[0] << f | b[1] >>> a[82] - f, b[1] << f] : [b[1] << f - a[82], a[0]] + } + + function F(a, b) { + return [a[0] ^ b[0], a[1] ^ b[1]] + } + + function Ib(b) { + b = F(b, [a[0], b[0] >>> a[675]]); + b = Q(b, [a[445], a[596]]); + b = F(b, [a[0], b[0] >>> a[675]]); + b = Q(b, [a[684], a[624]]); + return b = F(b, [a[0], b[0] >>> a[675]]) + } + + function fc() { + function d(d) { + for (var f = !1, c = a[0]; c < e.length && !(f = d[c][b[360]] !== k[e[c]] || d[c][b[211]] !== p[e[c]]); c++) + ; + return f + } + + function f() { + var a = w[c[182]](b[382]); + a[b[341]][b[104]] = b[210]; + a[b[341]][c[47]] = b[190]; + a[b[341]][b[31]] = l; + a[b[341]][b[379]] = b[282]; + a[b[384]] = q; + return a + } + + if (pb) + return pb; + var e = [b[246], b[414], x[20]] + , q = b[89] + , l = b[179] + , g = w[c[98]](b[81])[0] + , m = w[c[182]](c[164]) + , h = w[c[182]](c[164]) + , k = {} + , p = {} + , n = function () { + for (var d = [], l = a[0], q = e.length; l < q; l++) { + var g = f(); + g[b[341]][b[395]] = e[l]; + m[c[12]](g); + d.push(g) + } + return d + }(); + g[c[12]](m); + for (var t = a[0], v = e.length; t < v; t++) + k[e[t]] = n[t][b[360]], + p[e[t]] = n[t][b[211]]; + n = function () { + for (var d = {}, l = a[0], q = fontList.length; l < q; l++) { + for (var g = [], m = a[0], k = e.length; m < k; m++) { + var p; + p = fontList[l]; + var n = e[m] + , u = f(); + u[b[341]][b[395]] = c[21] + p + c[231] + n; + p = u; + h[c[12]](p); + g.push(p) + } + d[fontList[l]] = g + } + return d + }(); + g[c[12]](h); + for (var t = [], v = a[0], y = fontList.length; v < y; v++) + d(n[fontList[v]]) && t.push(fontList[v]); + g[b[148]](h); + g[b[148]](m); + return pb = t + } + + function ad() { + var a = w[c[182]](b[324]) + , f = null; + try { + f = a[x[25]](b[75]) || a[x[25]](b[364]) + } catch (e) { + } + f || (f = null); + return f + } + + function bd() { + function d(d) { + f[b[435]](a[0], a[0], a[0], a[675]); + f.enable(f[c[190]]); + f[b[342]](f[x[12]]); + f.clear(f[c[104]] | f[b[331]]); + return c[96] + d[0] + b[65] + d[1] + c[99] + } + + if (Da) + return Da; + var f; + f = ad(); + if (!f) + return Da = []; + var e = []; + try { + var q = c[227] + , l = c[230] + , g = f[b[275]](); + f[b[263]](f[b[367]], g); + var m = new Float32Array([a[538], a[604], a[0], a[533], a[562], a[0], a[0], a[580], a[0]]); + f.bufferData(f[b[367]], m, f[b[250]]); + g.wc = a[5]; + g.Ac = a[5]; + var h = f[b[240]]() + , k = f[b[280]](f[b[91]]); + f[b[301]](k, q); + f[b[201]](k); + var p = f[b[280]](f[b[422]]); + f[b[301]](p, l); + f[b[201]](p); + f[c[200]](h, k); + f[c[200]](h, p); + f[b[277]](h); + f[b[153]](h); + h.Hc = f[b[348]](h, b[16]); + h.Bc = f[b[298]](h, b[259]); + f[b[312]](h.Qc); + f[b[445]](h.Hc, g.wc, f.FLOAT, !a[675], a[0], a[0]); + f[x[26]](h.Bc, a[675], a[675]); + f[c[146]](f[b[82]], a[0], g.Ac) + } catch (n) { + } + null != f[b[324]] && e.push(f[b[324]][c[158]]()); + e.push(b[143] + f[c[9]]().join(c[0])); + e.push(b[149] + d(f[b[321]](f[b[430]]))); + e.push(b[258] + d(f[b[321]](f[b[117]]))); + e.push(x[27] + f[b[321]](f[b[35]])); + e.push(c[248] + (f[c[42]]().antialias ? b[286] : b[107])); + e.push(b[224] + f[b[321]](f[b[111]])); + e.push(c[210] + f[b[321]](f[b[30]])); + e.push(b[119] + f[b[321]](f[b[241]])); + e.push(b[164] + function (d) { + var e, f = d[b[358]](b[168]) || d[b[358]](b[42]) || d[b[358]](c[173]); + return f ? (e = d[b[321]](f[b[66]]), + a[0] === e && (e = a[1]), + e) : null + }(f)); + e.push(b[415] + f[b[321]](f[b[268]])); + e.push(c[212] + f[b[321]](f[c[168]])); + e.push(b[375] + f[b[321]](f[b[43]])); + e.push(b[21] + f[b[321]](f[b[83]])); + e.push(b[397] + f[b[321]](f[b[254]])); + e.push(b[150] + f[b[321]](f[b[52]])); + e.push(c[186] + f[b[321]](f[b[318]])); + e.push(b[39] + f[b[321]](f[c[64]])); + e.push(b[235] + f[b[321]](f[b[236]])); + e.push(c[14] + f[b[321]](f[b[56]])); + e.push(b[109] + d(f[b[321]](f[b[54]]))); + e.push(b[40] + f[b[321]](f[b[76]])); + e.push(c[201] + f[b[321]](f[b[126]])); + e.push(c[176] + f[b[321]](f[b[195]])); + e.push(b[283] + f[b[321]](f[b[323]])); + e.push(c[224] + f[b[321]](f[x[21]])); + e.push(c[124] + f[b[321]](f[b[376]])); + try { + var t = f[b[358]](c[174]); + t && (e.push(c[250] + f[b[321]](t.UNMASKED_VENDOR_WEBGL)), + e.push(b[350] + f[b[321]](t.UNMASKED_RENDERER_WEBGL))) + } catch (v) { + } + if (!f[c[25]]) + return Da = e; + e.push(c[170] + f[c[25]](f[b[91]], f[b[325]])[b[78]]); + e.push(b[416] + f[c[25]](f[b[91]], f[b[325]])[c[206]]); + e.push(c[171] + f[c[25]](f[b[91]], f[b[325]])[b[134]]); + e.push(b[289] + f[c[25]](f[b[91]], f[b[266]])[b[78]]); + e.push(b[219] + f[c[25]](f[b[91]], f[b[266]])[c[206]]); + e.push(b[418] + f[c[25]](f[b[91]], f[b[266]])[b[134]]); + e.push(b[180] + f[c[25]](f[b[91]], f[b[198]])[b[78]]); + e.push(x[13] + f[c[25]](f[b[91]], f[b[198]])[c[206]]); + e.push(b[317] + f[c[25]](f[b[91]], f[b[198]])[b[134]]); + e.push(c[229] + f[c[25]](f[b[422]], f[b[325]])[b[78]]); + e.push(b[13] + f[c[25]](f[b[422]], f[b[325]])[c[206]]); + e.push(b[187] + f[c[25]](f[b[422]], f[b[325]])[b[134]]); + e.push(c[185] + f[c[25]](f[b[422]], f[b[266]])[b[78]]); + e.push(b[310] + f[c[25]](f[b[422]], f[b[266]])[c[206]]); + e.push(c[59] + f[c[25]](f[b[422]], f[b[266]])[b[134]]); + e.push(b[334] + f[c[25]](f[b[422]], f[b[198]])[b[78]]); + e.push(b[347] + f[c[25]](f[b[422]], f[b[198]])[c[206]]); + e.push(c[121] + f[c[25]](f[b[422]], f[b[198]])[b[134]]); + e.push(b[421] + f[c[25]](f[b[91]], f[b[133]])[b[78]]); + e.push(b[311] + f[c[25]](f[b[91]], f[b[133]])[c[206]]); + e.push(b[442] + f[c[25]](f[b[91]], f[b[133]])[b[134]]); + e.push(b[112] + f[c[25]](f[b[91]], f[b[368]])[b[78]]); + e.push(b[167] + f[c[25]](f[b[91]], f[b[368]])[c[206]]); + e.push(b[51] + f[c[25]](f[b[91]], f[b[368]])[b[134]]); + e.push(c[254] + f[c[25]](f[b[91]], f[c[94]])[b[78]]); + e.push(b[326] + f[c[25]](f[b[91]], f[c[94]])[c[206]]); + e.push(b[151] + f[c[25]](f[b[91]], f[c[94]])[b[134]]); + e.push(b[96] + f[c[25]](f[b[422]], f[b[133]])[b[78]]); + e.push(b[419] + f[c[25]](f[b[422]], f[b[133]])[c[206]]); + e.push(b[238] + f[c[25]](f[b[422]], f[b[133]])[b[134]]); + e.push(b[228] + f[c[25]](f[b[422]], f[b[368]])[b[78]]); + e.push(c[71] + f[c[25]](f[b[422]], f[b[368]])[c[206]]); + e.push(b[315] + f[c[25]](f[b[422]], f[b[368]])[b[134]]); + e.push(c[153] + f[c[25]](f[b[422]], f[c[94]])[b[78]]); + e.push(b[17] + f[c[25]](f[b[422]], f[c[94]])[c[206]]); + e.push(c[137] + f[c[25]](f[b[422]], f[c[94]])[b[134]]); + return Da = e + } + + function cd(d) { + function f(a) { + e(a); + e = function () { + } + } + + function e(a) { + return d(a) + } + + if (gc) + return d(gc); + try { + var q = new hc(a[675], a[293], a[293]) + , l = q[b[292]](); + l[b[309]] = b[351]; + l[b[231]][b[443]] = a[404]; + var g = q[b[332]](); + g[b[388]] && (g[b[388]][b[443]] = a[120]); + g[b[62]] && (g[b[62]][b[443]] = a[98]); + g[b[220]] && (g[b[220]][b[443]] = a[40]); + g[x[23]] && (g[x[23]][b[443]] = a[59]); + g[b[197]] && (g[b[197]][b[443]] = a[0]); + g[b[1]] && (g[b[1]][b[443]] = a[666]); + l[c[100]](g); + g[c[100]](q[b[272]]); + l[b[290]](a[0]); + ya(function () { + f(c[0]); + q[b[90]] = function () { + } + ; + q = null + }, a[376]); + q[b[90]] = function (d) { + try { + var e = Xa(za(d[b[431]][c[40]](a[0]).slice(a[395], a[397]), function (a, b) { + return a + Math.abs(b) + }).toString()); + f(e); + l[b[306]](); + g[b[306]]() + } catch (q) { + f(c[0]) + } + } + ; + q[c[202]]() + } catch (m) { + f(c[0]) + } + } + + function ic() { + var d = v[b[361]].toLowerCase(); + return d.indexOf(c[232]) >= a[0] ? b[141] : d.indexOf(b[444]) >= a[0] && d.indexOf(c[30]) < a[0] ? b[110] : d.indexOf(b[270]) >= a[0] ? b[98] : d.indexOf(b[279]) >= a[0] ? c[194] : d.indexOf(b[333]) >= a[0] || d.indexOf(b[423]) >= a[0] ? c[6] : d.indexOf(b[47]) >= a[0] ? b[27] : b[221] + } + + function jc() { + var d = [] + , d = [].slice.call(v[c[3]], a[0]); + return d.map(function (d) { + var e = [].slice.call(d, a[0]).map(function (a) { + return [a.type, a[c[154]]].join(c[150]) + }).join(c[28]); + return [d.name, d[b[273]], e].join(b[345]) + }) + } + + function dd() { + var a = []; + if (Object[b[12]] && Object[b[12]](y, b[209]) || b[209] in y) + a = [b[53], b[118], b[170], b[128], b[425], c[243], b[337], b[33], b[362], c[197], c[178], b[48], b[222], c[110], b[287], c[156], b[165], b[207], b[377], b[178], b[67], c[108]].map(function (a) { + try { + return new ed(a), + a + } catch (b) { + return null + } + }); + v[c[3]] && (a = a.concat(jc())); + return a + } + + function kc() { + var a = w[c[182]](b[324]); + return !(!a[x[25]] || !a[x[25]](b[208])) + } + + function fd() { + return v[c[233]] === c[7] || v[c[233]] === b[390] && /Trident/.test(v[b[361]]) ? !0 : !1 + } + + function ja(a, b, e) { + return function () { + var c, l, g; + e = e || this; + l = J(); + c = a.apply(e, arguments); + g = J(); + C.h(qb, { + cursor: b, + value: g - l + }); + return c + } + } + + window.ja = ja; + + function gd(a, b) { + var e = void 0; + return function (c) { + var l, g; + e = e || this; + l = J(); + a.apply(e, [function (a) { + g = J(); + C.h(qb, { + cursor: b, + value: g - l + }); + c(a) + } + ]) + } + } + + function rb(b, f) { + for (var e = f.split(c[33]), g = b, l = a[0]; l < e.length; l++) { + if (void 0 == g[e[l]]) + return; + g = g[e[l]] + } + return g + } + + function hd() { + for (var d = [b[57], b[71], b[159], b[121], c[220], c[204], b[154], b[427], b[366], b[427], b[87], b[58], b[132], b[322], x[24], c[172]], f = [b[276], c[225], b[336], b[404], b[123], b[14], x[7], c[60], b[446], b[177], c[106]], e = [c[86], c[172], b[29]], g = a[0], l = d.length; g < l; g++) + if (rb(y, d[g])) + return g + a[675]; + d = a[0]; + for (g = f.length; d < g; d++) + if (rb(w, f[d])) + return d + a[119]; + f = a[0]; + for (d = e.length; f < d; f++) + if (w[b[262]][b[436]](e[f])) + return f + a[226]; + return !0 === rb(v, c[172]) ? a[287] : a[0] + } + + function Oa(b) { + return w[c[98]](b) && w[c[98]](b).length || a[0] + } + + function lc(d) { + return N(d) === b[353] ? a[675] : d ? a[1] : a[5] + } + + function mc(b) { + var c = a[602]; + null == oa[b] && (oa[b] = a[0]); + return oa[b] < c ? ++oa[b] : c + } + + function id(b) { + function c(m) { + m >= b || (c(m * a[1] + a[675]), + e === g && (h = m, + g++, + l = !0), + l || e++, + c(m * a[1] + a[1])) + } + + var e = a[0], g = a[0], l = !1, h; + return function () { + g >= b && (g = a[0]); + l = !1; + e = a[0]; + c(a[0]); + return h + } + } + + function Ea(a, b, e) { + a[b] = e + } + + function jd() { + var a = y[nc] + , f = {}; + if (!a) + throw Error(b[344]); + pa || (pa = new g(a)); + Ea(f, b[290], function () { + pa._start() + }); + Ea(f, c[45], function () { + pa._stop() + }); + Ea(f, b[68], function (e, c, f, g) { + if (e) + pa._getToken(e, c, f, g); + else if (typeof a[b[264]] === b[86]) + a[b[264]](Error(b[373])) + }); + Ea(f, c[5], function (a) { + pa._getNdInfo(a) + }); + Ea(f, c[235], function (a) { + pa._setCustomTrackId(a) + }); + if (typeof a[c[240]] === b[86]) + a[c[240]](f) + } + + Array.prototype.forEach || (Array.prototype.forEach = function (d, c) { + var e, g; + if (null == this) + throw new TypeError(b[55]); + var l = Object(this) + , h = l.length >>> a[0]; + if (typeof d !== b[86]) + throw new TypeError(d + b[145]); + arguments.length > a[675] && (e = c); + for (g = a[0]; g < h;) { + var m; + g in l && (m = l[g], + d.call(e, m, g, l)); + g++ + } + } + ); + Array.prototype.filter || (Array.prototype.filter = function (d) { + if (void 0 === this || null === this) + throw new TypeError; + var c = Object(this) + , e = c.length >>> a[0]; + if (typeof d !== b[86]) + throw new TypeError; + for (var g = [], l = arguments.length >= a[1] ? arguments[1] : void 0, h = a[0]; h < e; h++) + if (h in c) { + var m = c[h]; + d.call(l, m, h, c) && g.push(m) + } + return g + } + ); + Array.prototype.map || (Array.prototype.map = function (d, c) { + var e, g, l; + if (null == this) + throw new TypeError(b[55]); + var h = Object(this) + , m = h.length >>> a[0]; + if (Object.prototype.toString.call(d) !== b[405]) + throw new TypeError(d + b[145]); + c && (e = c); + g = Array(m); + for (l = a[0]; l < m;) { + var k; + l in h && (k = h[l], + k = d.call(e, k, l, h), + g[l] = k); + l++ + } + return g + } + ); + Array.prototype.indexOf || (Array.prototype.indexOf = function (d, c) { + var e; + if (null == this) + throw new TypeError(b[92]); + var g = Object(this) + , l = g.length >>> a[0]; + if (l === a[0]) + return a[674]; + e = +c || a[0]; + Infinity === Math.abs(e) && (e = a[0]); + if (e >= l) + return a[674]; + for (e = Math[b[59]](e >= a[0] ? e : l - Math.abs(e), a[0]); e < l;) { + if (e in g && g[e] === d) + return e; + e++ + } + return a[674] + } + ); + var kd = window[b[185]]; + (function () { + var d = Array.prototype.slice; + try { + d.call(kd[b[262]]) + } catch (c) { + Array.prototype.slice = function (c, f) { + f = typeof f !== b[353] ? f : this.length; + if (Object.prototype.toString.call(this) === b[108]) + return d.call(this, c, f); + var g, h = [], m; + g = this.length; + var k = c || a[0] + , k = k >= a[0] ? k : g + k; + m = f ? f : g; + f < a[0] && (m = g + f); + m -= k; + if (m > a[0]) + if (h = Array(m), + this.charAt) + for (g = a[0]; g < m; g++) + h[g] = this.charAt(k + g); + else + for (g = a[0]; g < m; g++) + h[g] = this[k + g]; + return h + } + } + } + )(); + Object.keys || (Object.keys = function () { + var d = Object.prototype.hasOwnProperty + , f = !{ + toString: null + }.propertyIsEnumerable(c[148]) + , e = [c[148], b[261], b[288], b[115], b[142], b[181], b[249]] + , g = e.length; + return function (l) { + if (typeof l !== b[86] && (typeof l !== c[57] || null === l)) + throw new TypeError(c[253]); + var h = [], m; + for (m in l) + d.call(l, m) && h.push(m); + if (f) + for (m = a[0]; m < g; m++) + d.call(l, e[m]) && h.push(e[m]); + return h + } + }()); + typeof Object.create !== b[86] && (Object.create = function (a, f) { + function e() { + } + + if (typeof a !== c[57] && typeof a !== b[86]) + throw new TypeError(b[200] + a); + if (null === a) + throw Error(c[145]); + if (typeof f !== b[353]) + throw Error(b[439]); + e.prototype = a; + return new e + } + ); + String.prototype.trim || (String.prototype.trim = function () { + return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, c[0]) + } + ); + var nc = b[299] + , Ia = b[356] + , ta = b[410] + , oc = b[355] + , ob = b[330] + , pc = b[319] + , z = b[244] + , t = b[212] + , Y = b[303] + , B = b[252] + , H = b[74] + , Gb = x[22] + , Za = b[408] + , Hb = b[136] + , Nb = typeof window !== b[353] ? window : Nb + , y = E(b[304]) + , w = E(b[185]) + , v = E(b[225]) + , Fa = E(b[79]) + , Bb = E(b[302]) + , cb = E(b[213]) + , ld = E(b[199]) + , qa = E(b[269]) + , md = E(c[216]) + , nd = E(b[274]) + , od = E(b[320]) + , qc = E(c[128]) + , ed = E(b[209]) + , pd = E(b[2]) + , Z = E(b[260]) + , Zb = E(x[15]) + , ya = E(c[131]) + , qd = E(b[438]) + , ua = E(b[160]) + , na = E(b[296]) + , Cb = E(c[180]) + , Ca = Date + , cc = E(x[10]) + , hc = E(b[223]) || E(c[246]) + , Rc = {}.toString; + va.prototype.Fc = function (a) { + this.ja = Ha(this.ja || {}, a) + } + ; + va.prototype.Ec = function (a) { + this.da = Ha(this.da || {}, a) + } + ; + va.prototype.h = function (a, c, e) { + if (a = this.da[a]) + return a({ + state: this[b[163]], + B: this.B, + h: this.h + }, c, e) + } + ; + va.prototype.B = function (a, c) { + var e = this + , g = { + type: a, + Oc: c + } + , l = this.ja[a]; + l && (this.ec(function () { + return l(e[b[163]], c) + }), + this.Rb.map(function (a) { + return a(g, e[b[163]]) + })) + } + ; + va.prototype.ec = function (a) { + var b = this.fa; + this.fa = !0; + a(); + this.fa = b + } + ; + var Pc = { + name: b[363], + m: function (a, f, e) { + e = e ? b[218] + e : c[0]; + w[b[18]] = Z(a) + c[55] + Z(f) + c[247] + e + c[54] + }, + k: function (d) { + for (var f = (w[b[18]] || c[0]).split(c[54]), e = a[0], g = f.length; e < g; e++) { + var l = f[e].split(c[55]) + , h = l[0] + , l = l[1]; + void 0 === l && (l = c[0]); + if (h === d) + return Zb(l) + } + return null + }, + W: function (a) { + w[b[18]] = Z(a) + b[372] + } + } + , Qc = { + name: b[269], + m: function (a, c) { + try { + (y[b[269]] || {}).setItem(a, c) + } catch (e) { + } + }, + k: function (a) { + try { + return (y[b[269]] || {})[c[4]](a) + } catch (f) { + } + }, + W: function (a) { + try { + return (y[b[269]] || {})[c[199]](a) + } catch (f) { + } + } + } + , Pa = {} + , Oc = { + name: c[221], + m: function (a, b) { + Pa[a] = b + }, + k: function (a) { + return Pa[a] + }, + W: function (a) { + a in Pa && delete Pa[a] + } + }; + Ba.prototype.m = function (a, b, c) { + var g = this; + this.X.forEach(function (l) { + return l.m(g.o(a), b, c) + }) + } + ; + Ba.prototype.k = function (b) { + for (var f = a[0]; f < this.X.length; f++) { + var e = this.X[f].k(this.o(b)); + if (e) + return e + } + return c[0] + } + ; + Ba.prototype.W = function (a) { + var b = this; + this.X.forEach(function (c) { + return c.Pc(b.o(a)) + }) + } + ; + Ba.prototype.o = function (a) { + return this.p ? this.p + c[53] + a : a + } + ; + var Ka = {}; + ma.prototype.m = function (d, c, e) { + d = this.o(d); + if (c && typeof c === b[265]) { + e = J() + na(e, a[34]); + c = [c, e, J()].join(this.R); + this.w[d] = c; + try { + qa.setItem(d, c) + } catch (g) { + } + } + } + ; + ma.prototype.sc = function (b) { + b = this.o(b); + var f = this.w[b]; + if (!f) + try { + f = qa[c[4]](b) + } catch (e) { + } + if (!f) + return !1; + b = J(); + var f = f.split(this.R) + , g = +f[2] || a[0]; + return b <= +(+f[1] || a[0]) && b > g ? !0 : !1 + } + ; + ma.prototype.k = function (a) { + a = this.o(a); + var b = this.w[a]; + if (!b) + try { + b = qa[c[4]](a), + this.w[a] = b + } catch (e) { + } + return b ? b.split(this.R)[0] || c[0] : c[0] + } + ; + ma.prototype.qc = function (b) { + b = this.o(b); + var f = this.w[b]; + if (!f) + try { + f = qa[c[4]](b), + this.w[b] = f + } catch (e) { + } + return f ? f.split(this.R)[1] || a[0] : c[0] + } + ; + ma.prototype.W = function (a) { + a = this.o(a); + delete this.w[a]; + try { + qa[c[199]](a) + } catch (b) { + } + } + ; + ma.prototype.o = function (a) { + return this.p ? this.p + c[53] + a : a + } + ; + var La = {} + , Tc = a[0] + , sb = a[675] + , rc = a[1] + , sc = a[5] + , Qa = {}; + Qa[sc] = c[208]; + Qa[rc] = b[369]; + Qa[sb] = c[193]; + var T = function (a) { + function f(e, f, g) { + void 0 === g && (g = {}); + a.call(this); + this.name = b[146]; + this.code = e || sb; + this.message = e + c[22] + Qa[e] + c[23] + (f ? b[101] + f : c[0]); + this.data = g; + a.captureStackTrace ? a.captureStackTrace(this, this.constructor) : this[c[2]] = (new a)[c[2]] + } + + a && (f.__proto__ = a); + f.prototype = Object.create(a && a.prototype); + f.prototype.constructor = f; + f.prototype.toString = function () { + return this[c[2]] ? c[0] + this[c[2]] : this.name + b[327] + this.message + } + ; + return f + }(Error); + T.L = sc; + T.Jc = rc; + T.UNKNOWN_ERROR = sb; + var tc = b[6] + , uc = b[103] + , vc = b[46] + , ka = b[403] + , wc = b[402] + , tb = b[401] + , ub = b[396] + , xc = b[393] + , vb = b[392] + , qb = b[391] + , yc = b[398] + , + Sb = [c[129], c[92], c[79], c[85], c[65], c[41], c[91], c[87], c[48], c[49], c[109], c[69], c[140], c[43], c[72], c[136], c[132], c[103], c[75], c[68], c[125], c[46], c[37], c[82], c[35], c[114], c[126], c[138], c[144], c[147], c[127], c[61], c[39], c[80], c[118], c[33], c[115], c[123], c[88], c[27], c[78], c[105], c[74], c[119], c[77], c[120], c[141], c[95], c[93], c[83], c[143], c[51], c[38], c[111], c[116], c[52], c[62], c[90], c[81], c[70], c[67], c[149], c[107], c[66]] + , + Uc = [c[61], c[62], c[65], c[66], c[67], c[68], c[69], c[70], c[72], c[74], c[75], c[77], c[78], c[79], c[80], c[81], c[82], c[83], c[85], c[87], c[88], c[90], c[91], c[92], c[93], c[95], c[103], c[105], c[107], c[109], c[111], c[114], c[115], c[116], c[118], c[119], c[120], c[122], c[123], c[125], c[126], c[127], c[129], c[132], c[136], c[138], c[140], c[141], c[143], c[144], c[147], c[149], c[37], c[38], c[39], c[41], c[43], c[46], c[48], c[49], c[51], c[52], c[27], c[35]] + , eb = c[122] + , Vc = c[55] + , + Xc = [a[185], a[99], a[35], a[141], a[278], a[133], a[33], a[259], a[209], a[108], a[268], a[56], a[152], a[27], a[59], a[70], a[234], a[103], a[111], a[137], a[128], a[260], a[168], a[217], a[251], a[72], a[145], a[261], a[124], a[276], a[200], a[28], a[150], a[94], a[95], a[252], a[138], a[84], a[153], a[166], a[68], a[253], a[169], a[158], a[175], a[129], a[218], a[65], a[86], a[159], a[25], a[279], a[228], a[192], a[242], a[142], a[210], a[36], a[262], a[39], a[235], a[87], a[57], a[170], a[1], a[160], a[74], a[61], a[154], a[243], a[263], a[193], a[116], a[85], a[117], a[269], a[40], a[147], a[3], a[176], a[139], a[201], a[208], a[91], a[73], a[53], a[280], a[75], a[64], a[264], a[45], a[177], a[183], a[130], a[211], a[281], a[43], a[115], a[194], a[265], a[229], a[178], a[236], a[112], a[50], a[254], a[76], a[134], a[69], a[49], a[51], a[195], a[219], a[109], a[42], a[121], a[212], a[161], a[92], a[220], a[202], a[275], a[23], a[162], a[179], a[118], a[186], a[107], a[148], a[8], a[46], a[221], a[270], a[237], a[47], a[31], a[196], a[244], a[81], a[93], a[98], a[674], a[155], a[187], a[63], a[37], a[238], a[222], a[255], a[271], a[180], a[272], a[675], a[96], a[163], a[110], a[239], a[197], a[140], a[230], a[82], a[113], a[171], a[245], a[203], a[97], a[90], a[0], a[231], a[131], a[273], a[282], a[256], a[122], a[246], a[143], a[62], a[257], a[71], a[125], a[213], a[80], a[232], a[172], a[126], a[78], a[173], a[214], a[13], a[216], a[88], a[204], a[60], a[66], a[114], a[104], a[181], a[205], a[11], a[135], a[188], a[240], a[5], a[120], a[54], a[19], a[100], a[247], a[105], a[101], a[67], a[136], a[198], a[15], a[119], a[283], a[266], a[127], a[149], a[226], a[274], a[18], a[189], a[146], a[156], a[258], a[284], a[77], a[48], a[248], a[6], a[174], a[83], a[79], a[241], a[233], a[215], a[199], a[227], a[182], a[190], a[206], a[52], a[157], a[191], a[89], a[207], a[34], a[58], a[106], a[249], a[267], a[164], a[144], a[165], a[223]] + , S = a[150] + , jb = a[150] + , Ma = a[8] + , mb = a[8] + , zc = b[15] + , aa = {}; + aa[ka] = function (a, b) { + var c = a.B; + void 0 === b && (b = {}); + c(vc, Ua(b)) + } + ; + aa[wc] = function (d, f, e) { + function g(d, n) { + if (d >= p.length) + e(n); + else { + var t = Ja(h, p[d], c[214]); + Qb(t, { + ba: c[155], + K: { + d: f, + v: zc + }, + V: function (d) { + var c = d[0] + , f = d[1] + , g = d[2] + , h = d[3] + , q = d[5]; + c === a[295] || c === a[349] ? (h && l(xc, { + id: h, + xc: k * a[13] / a[18] + }), + q && l(yc, { + id: q + }), + g && l(ub, { + domain: m, + id: g + }), + c === a[349] && f && l(vb, f), + e(null, d)) : (d = new T(T.L, b[239], { + url: t + }), + e(d)) + }, + U: function (e) { + void 0 === e && (e = {}); + e = new T(T.L, b[105] + (e.message ? e.message : c[0]), { + url: t + }); + Kb(e, d + a[675]); + g(d + a[675], e) + } + }) + } + } + + var l = d.h; + d = d[b[163]]; + void 0 === e && (e = V); + d = d[b[316]]; + var h = d[b[394]] + , m = d[c[50]] + , k = d.mc + , p = d.apiServers; + g(a[0]) + } + ; + aa[tb] = function (d, f, e) { + function g(d, p) { + if (d >= k.length) + e(p); + else { + var n = Ja(h, k[d], b[338]); + Qb(n, { + ba: c[155], + K: { + d: f, + v: zc + }, + V: function (d) { + var c = d[0] + , f = d[1] + , g = d[2]; + c === a[295] || c === a[349] ? (g && l(ub, { + domain: m, + id: g + }), + c === a[349] && f && l(vb, f), + e(null, d)) : c === a[352] ? e(null, d) : (d = new T(T.L, b[184], { + url: n + }), + e(d)) + }, + U: function (e) { + void 0 === e && (e = {}); + e = new T(T.L, b[152] + (e.message ? e.message : c[0]), { + url: n + }); + Kb(e, d + a[675]); + g(d + a[675], e) + } + }) + } + } + + var l = d.h; + d = d[b[163]]; + void 0 === e && (e = V); + d = d[b[316]]; + var h = d[b[394]] + , m = d[c[50]] + , k = d.apiServers; + g(a[0]) + } + ; + aa[ub] = function (a, b) { + var e = b.id + , g = b[c[50]]; + W().m(Ia, e, g) + } + ; + aa[yc] = function (a, b) { + var c = b.id; + W().m(ob, c); + W().m(pc, nb()) + } + ; + aa[xc] = function (a, c) { + var e = a[b[163]] + , g = c.id + , l = c.xc; + ea().m(ta, g, l); + ea().m(oc, e[b[316]].buildVersion, l) + } + ; + aa[vb] = function (a, b) { + var e = a.B; + b = (new Ca(b))[c[203]](); + e(uc, b - J()) + } + ; + aa[qb] = function (a, b) { + var c = a.B; + c(tc, b) + } + ; + var Ra = {}; + Ra[vc] = function (a, c) { + a[b[316]] = c + } + ; + Ra[tc] = function (b, c) { + b.$[c.cursor] = c.value || a[0] + } + ; + Ra[uc] = function (a, b) { + a.Aa = b + } + ; + var C = new va({ + state: { + options: {}, + Aa: a[0], + $: [a[0], a[0], a[0], a[0], a[0], a[0]] + }, + fc: aa, + zc: Ra + }), ca = { + bc: { + c: a[0], + a: t, + e: a[5] + }, + Oa: { + c: a[675], + a: t, + e: a[58] + }, + Pa: { + c: a[1], + a: t, + e: a[82] + }, + Ma: { + c: a[5], + a: t, + e: a[82] + }, + Db: { + c: a[8], + a: t, + e: a[82] + }, + Ub: { + c: a[13], + a: z, + e: a[8] + }, + Lb: { + c: a[18], + a: z, + e: a[675] + }, + Zb: { + c: a[23], + a: t, + e: a[82] + }, + cb: { + c: a[27], + a: t, + e: a[82] + }, + Kb: { + c: a[31], + a: t, + e: a[82] + }, + ab: { + c: a[34], + a: t, + e: a[285] + }, + cc: { + c: a[235], + a: z, + e: a[8] + }, + _move: { + c: a[243], + a: H, + e: [a[1], a[8], a[675], a[8], a[8]] + }, + _down: { + c: a[247], + a: H, + e: [a[1], a[8], a[675], a[1], a[8], a[8]] + }, + _up: { + c: a[246], + a: H, + e: [a[1], a[8], a[675], a[8], a[8]] + }, + _click: { + c: a[251], + a: H, + e: [a[1], a[8], a[675], a[8], a[8], a[58]] + }, + _keydown: { + c: a[257], + a: H, + e: [a[1], a[8], a[675], a[58]] + }, + _focus: { + c: a[254], + a: H, + e: [a[1], a[8], a[675], a[58]] + }, + _blur: { + c: a[253], + a: H, + e: [a[1], a[8], a[675], a[58]] + }, + _scroll: { + c: a[264], + a: H, + e: [a[1], a[8], a[675], a[8], a[8]] + }, + _orientation: { + c: a[263], + a: H, + e: [a[1], a[8], a[8], a[8], a[8], a[675]] + }, + _motion: { + c: a[260], + a: H, + e: [a[1], a[8], a[8], a[8], a[8], a[1]] + }, + _battery: { + c: a[262], + a: H, + e: [a[1], a[8], a[675], a[675], a[8]] + }, + $b: { + c: a[295], + a: t, + e: a[342] + }, + zb: { + c: a[296], + a: t, + e: a[58] + }, + Ta: { + c: a[297], + a: z, + e: a[675] + }, + bb: { + c: a[298], + a: z, + e: a[675] + }, + Vb: { + c: a[299], + a: z, + e: a[675] + }, + Pb: { + c: a[300], + a: B, + e: a[675] + }, + Cb: { + c: a[301], + a: B, + e: a[675] + }, + tb: { + c: a[302], + a: B, + e: a[675] + }, + Ea: { + c: a[303], + a: B, + e: a[675] + }, + Fb: { + c: a[304], + a: B, + e: a[675] + }, + Va: { + c: a[305], + a: t, + e: a[34] + }, + Ib: { + c: a[306], + a: t, + e: a[34] + }, + eb: { + c: a[307], + a: t, + e: a[47] + }, + Jb: { + c: a[308], + a: Y, + e: a[49] + }, + Qa: { + c: a[309], + a: Y, + e: a[49] + }, + dc: { + c: a[310], + a: Y, + e: a[49] + }, + Da: { + c: a[311], + a: B, + e: a[675] + }, + pb: { + c: a[312], + a: B, + e: a[675] + }, + ob: { + c: a[313], + a: B, + e: a[675] + }, + Yb: { + c: a[314], + a: B, + e: a[675] + }, + Mb: { + c: a[315], + a: z, + e: a[675] + }, + Ua: { + c: a[316], + a: B, + e: a[675] + }, + xb: { + c: a[317], + a: B, + e: a[675] + }, + Fa: { + c: a[318], + a: t, + e: a[58] + }, + Ga: { + c: a[319], + a: t, + e: a[34] + }, + Ha: { + c: a[320], + a: t, + e: a[58] + }, + Ia: { + c: a[321], + a: t, + e: a[289] + }, + Ab: { + c: a[322], + a: t, + e: a[34] + }, + Sb: { + c: a[323], + a: t, + e: a[34] + }, + ac: { + c: a[324], + a: t, + e: a[34] + }, + Na: { + c: a[325], + a: t, + e: a[34] + }, + Gb: { + c: a[326], + a: t, + e: a[98] + }, + fb: { + c: a[327], + a: t, + e: a[58] + }, + jb: { + c: a[329], + a: Y, + e: a[49] + }, + ib: { + c: a[330], + a: z, + e: a[1] + }, + Nb: { + c: a[331], + a: H, + e: [a[1], a[1], a[1], a[1]] + }, + mb: { + c: a[332], + a: z, + e: a[675] + }, + nb: { + c: a[343], + a: B, + e: a[675] + }, + hb: { + c: a[344], + a: t, + e: a[34] + }, + Eb: { + c: a[345], + a: z, + e: a[675] + }, + gb: { + c: a[346], + a: z, + e: a[675] + }, + Qb: { + c: a[347], + a: B, + e: a[675] + }, + Xb: { + c: a[350], + a: z, + e: a[675] + }, + wb: { + c: a[351], + a: B, + e: a[675] + }, + sb: { + c: a[356], + a: z, + e: a[675] + }, + kb: { + c: a[357], + a: z, + e: a[675] + }, + vb: { + c: a[358], + a: z, + e: a[675] + }, + Ob: { + c: a[360], + a: z, + e: a[13] + }, + qb: { + c: a[361], + a: z, + e: a[675] + }, + Wb: { + c: a[362], + a: t, + e: a[34] + }, + yb: { + c: a[359], + a: t, + e: a[49] + }, + Tb: { + c: a[363], + a: z, + e: a[1] + }, + rb: { + c: a[364], + a: z, + e: a[1] + }, + ub: { + c: a[365], + a: z, + e: a[1] + }, + lb: { + c: a[366], + a: H, + e: [a[5], a[5], a[5], a[5], a[5]] + }, + Hb: { + c: a[367], + a: H, + e: [a[675], a[5], a[5]] + }, + Sa: { + c: a[368], + a: H, + e: [a[8], a[8]] + }, + Wa: { + c: a[370], + a: t, + e: a[27] + }, + Xa: { + c: a[371], + a: t, + e: a[27] + }, + Ya: { + c: a[372], + a: t, + e: a[27] + }, + Za: { + c: a[373], + a: t, + e: a[27] + }, + $a: { + c: a[374], + a: t, + e: a[27] + }, + La: { + c: a[337], + a: t, + e: a[82] + } + }, ec = a[0], Fc = c[245], + Gc = [c[107], c[109], c[114], c[109], c[43], c[114], c[48], c[37]], Hc = c[238], pb, + wb, Da, gc, G = ic(), rd = function () { + var d = ic(); + return d === b[141] || d === b[98] || d === c[6] ? a[5] : d === c[194] || d === b[110] || d === b[27] ? a[1] : a[675] + }(), P = function () { + var d = v[b[361]].toLowerCase(); + return d.indexOf(b[387]) >= a[0] ? b[174] : d.indexOf(b[73]) >= a[0] || d.indexOf(b[253]) >= a[0] ? b[343] : d.indexOf(c[179]) >= a[0] ? b[281] : d.indexOf(b[183]) >= a[0] ? c[159] : d.indexOf(b[284]) >= a[0] ? c[167] : b[221] + }(), Ya = { + $b: { + f: function () { + return v[b[361]] || c[0] + }, + a: t + }, + zb: { + f: function () { + return v[c[161]] || c[0] + }, + a: t + }, + Ta: { + f: function () { + return Fa[b[215]] || a[0] + }, + a: z + }, + bb: { + f: function () { + return md || a[0] + }, + a: z + }, + Vb: { + f: function () { + return Math[b[122]]((new Ca)[c[134]]() / a[141] * a[674] + a[40]) + }, + a: z + }, + Pb: { + f: function () { + return !!ld + }, + a: B + }, + Cb: { + f: function () { + return !!qa + }, + a: B + }, + tb: { + f: function () { + return !!nd + }, + a: B + }, + Ea: { + f: function () { + var a = w[b[81]]; + return a && !!a[b[130]] + }, + a: B + }, + Fb: { + f: function () { + return !!od + }, + a: B + }, + Va: { + f: function () { + return v[c[234]] || c[0] + }, + a: t + }, + Ib: { + f: function () { + return v[b[433]] || c[0] + }, + a: t + }, + eb: { + f: function () { + return v[c[128]] ? v[c[128]] : v.yc ? v.yc : qc ? qc : b[352] + }, + a: t + }, + Jb: { + f: function () { + // var a = fd ? dd() : jc(); + // return za(a.join(c[150])) + return "a91016e8f9756f70570d14a2d8814f9b" + }, + u: !0, + a: Y + }, + Qa: { + f: function () { + // 画布 不模拟 + + // var d; + // if (kc()) { + // if (wb) + // d = wb; + // else { + // d = []; + // try { + // var f = w[c[182]](b[324]); + // f[b[374]] = a[354]; + // f[b[166]] = a[295]; + // f[b[341]].display = x[19]; + // var e = f[x[25]](b[208]); + // e[b[114]](a[0], a[0], a[34], a[34]); + // e[b[114]](a[1], a[1], a[18], a[18]); + // d.push(c[187] + (!1 === e.isPointInPath(a[13], a[13], c[13]) ? b[286] : b[107])); + // e[x[0]] = b[9]; + // e[b[32]] = b[227]; + // e[b[230]](a[275], a[675], a[146], a[58]); + // e[b[32]] = x[1]; + // e[c[152]] = c[255]; + // e.fillText(b[409], a[1], a[47]); + // e[b[32]] = b[424]; + // e[c[152]] = c[36]; + // e.fillText(c[84], a[8], a[107]); + // e.fillText(b[144], a[8], a[166]); + // e[b[129]] = c[226]; + // e[b[32]] = c[188]; + // e[c[112]](); + // e[b[194]](a[119], a[119], a[119], a[0], Math.PI * a[1], !0); + // e[b[0]](); + // e.fill(); + // e[b[32]] = b[28]; + // e[c[112]](); + // e[b[194]](a[226], a[119], a[119], a[0], Math.PI * a[1], !0); + // e[b[0]](); + // e.fill(); + // e[b[32]] = c[24]; + // e[c[112]](); + // e[b[194]](a[166], a[226], a[119], a[0], Math.PI * a[1], !0); + // e[b[0]](); + // e.fill(); + // e[b[32]] = c[188]; + // e[b[194]](a[166], a[166], a[166], a[0], Math.PI * a[1], !0); + // e[b[194]](a[166], a[166], a[69], a[0], Math.PI * a[1], !0); + // e.fill(c[13]); + // d.push(b[271] + f[c[158]]()) + // } catch (g) { + // d.push(g) + // } + // d = wb = d + // } + // d = za(d.join(c[150])) + // } else + // d = c[0]; + // return d + return "65e967974e47cb9f05606e6a32350fe8" + }, + a: Y, + u: !0, + T: Gb + }, + dc: { + f: function () { + var a; + if (kc()) { + a = w[c[182]](b[324]); + var f; + try { + f = a[x[25]] && (a[x[25]](b[75]) || a[x[25]](b[364])) + } catch (e) { + f = !1 + } + a = !!pd && !!f + } else + a = !1; + return a ? za(bd().join(c[150])) : c[0] + }, + a: Y, + u: !0, + T: Hb + }, + Da: { + f: function () { + // var d = w[c[182]](c[164]) + // , f = c[222] + new Ca; + // d[b[384]] = b[131]; + // d.className = c[20]; + // d.id = f; + // var e = !1; + // try { + // w[b[81]][c[12]](d), + // e = w.getElementById(f)[b[211]] === a[0], + // w[b[81]][b[148]](d) + // } catch (g) { + // e = !1 + // } + // return e + return false + }, + a: B, + u: !0 + }, + pb: { + f: function () { + var d = v[b[433]] + , f = v[b[314]]; + return (b[85] in y || v.ua > a[0] || v.va > a[0]) && G !== b[141] && G !== b[98] && G !== c[29] && G !== b[221] || typeof f !== b[353] && (f = f.toLowerCase(), + ~f.indexOf(b[444]) && G !== b[110] && G !== c[6] && G !== b[221] || ~f.indexOf(b[279]) && G !== c[194] && G !== b[98] || ~f.indexOf(b[47]) && G !== b[27] && G !== c[6] || (f.indexOf(b[444]) === a[674] && f.indexOf(b[279]) === a[674] && f.indexOf(b[47] === a[674])) !== (G === b[221])) ? !0 : d.indexOf(b[444]) >= a[0] && G !== b[110] && G !== b[141] || (d.indexOf(b[279]) >= a[0] || d.indexOf(b[270]) >= a[0] || d.indexOf(b[22]) >= a[0]) && G !== c[194] && G !== b[98] || (d.indexOf(b[47]) >= a[0] || d.indexOf(b[423]) >= a[0] || d.indexOf(b[4]) >= a[0] || d.indexOf(b[333]) >= a[0]) && G !== b[27] && G !== c[6] || (d.indexOf(b[444]) === a[674] && d.indexOf(b[279]) === a[674] && d.indexOf(b[47]) === a[674]) !== (G === b[221]) ? !0 : typeof v[c[3]] === b[353] && G !== b[110] && G !== b[141] ? !0 : !1 + }, + a: B + }, + ob: { + f: function () { + var d = v[b[251]]; + if ((P === b[281] || P === c[159] || P === b[343]) && d !== b[138]) + return !0; + d = eval.toString().length; + if (d === a[90] && P !== c[159] && P !== b[174] && P !== b[221] || d === a[94] && P !== c[167] && P !== b[221] || d === a[84] && P !== b[281] && P !== b[343] && P !== b[221]) + return !0; + var f; + try { + throw Error(c[103]); + } catch (e) { + try { + e[b[407]](), + f = !0 + } catch (g) { + f = !1 + } + } + return f && P !== b[174] && P !== b[221] ? !0 : !1 + }, + a: B + }, + Yb: { + f: function () { + var d = a[0] + , f = !1; + typeof v.ua !== b[353] ? d = v.ua : typeof v.va !== b[353] && (d = v.va); + try { + w[b[440]](c[160]), + f = !0 + } catch (e) { + } + var g = b[85] in y; + return d > a[0] || f || g + }, + a: B + }, + Mb: { + f: function () { + return rd + }, + a: z + }, + Ua: { + f: function () { + return !!v[b[385]] + }, + a: B + }, + xb: { + f: function () { + try { + return !!v[b[313]]() + } catch (a) { + return !1 + } + }, + a: B + }, + Fa: { + f: function () { + return v[b[389]] || c[0] + }, + a: t + }, + Ga: { + f: function () { + return v[c[76]] || c[0] + }, + a: t + }, + Ha: { + f: function () { + return v[c[233]] || c[0] + }, + a: t + }, + Ia: { + f: function () { + return v[b[307]] || c[0] + }, + a: t + }, + Ab: { + f: function () { + return v[b[206]] || c[0] + }, + a: t + }, + Sb: { + f: function () { + return v[b[205]] || c[0] + }, + a: t + }, + ac: { + f: function () { + return v[b[191]] || c[0] + }, + a: t + }, + Na: { + f: function () { + return v[b[93]] || c[0] + }, + a: t + }, + Gb: { + f: function () { + return v[b[314]] || c[0] + }, + a: t + }, + fb: { + f: function () { + return w[b[64]] || w[b[140]] || c[0] + }, + a: t + }, + jb: { + f: function () { + return za(fc().join(c[150])) + }, + a: Y, + u: !0, + T: Za + }, + ib: { + f: function () { + return fc().length || a[0] + }, + a: z, + u: !0, + T: Za + }, + mb: { + f: function () { + return v[b[61]] || a[0] + }, + a: z + }, + Nb: { + f: function () { + var d = Fa[b[374]]; + void 0 === d && (d = a[0]); + var c = Fa[b[166]]; + void 0 === c && (c = a[0]); + var e = Fa[b[63]]; + void 0 === e && (e = a[0]); + var g = Fa[b[70]]; + return [d > c ? d : c, d > c ? c : d, e > g ? e : g, e > g ? g : e] + }, + a: H + }, + La: { + f: function (a) { + return hc ? cd(a) : a(c[0]) + }, + a: t, + Ja: !0, + u: !0 + } + }, Wa = [], Eb = a[0], Va = [], Fb = !1, Sa = /./; + try { + Sa.toString = function () { + return Sa.Cc = !0 + } + , + console.log(c[228], Sa) + } catch (sd) { + } + var Db = { + nb: { + f: function () { + return !!Sa.Cc + }, + a: B + }, + hb: { + f: function () { + var a; + try { + null[0]() + } catch (f) { + a = f + } + return a && typeof a[c[2]] === b[265] ? [x[6], b[386], c[211], c[113], c[86]].filter(function (b) { + return ~a[c[2]].indexOf(b) + })[0] || c[0] : c[0] + }, + a: t + }, + Eb: { + f: function () { + for (var d = [b[185], b[225], b[302], b[417], c[0], c[0], b[79], c[1], b[50], b[378], { + q: b[346], + n: function () { + try { + return y[b[346]](c[209]) === a[479] && y[b[229]](y[b[346]](c[252])) + } catch (d) { + return !1 + } + } + }, { + q: b[296], + n: function () { + try { + return y[b[296]](b[176]) === a[267] && y[b[229]](y[b[346]](c[252])) + } catch (d) { + return !1 + } + } + }, { + q: b[172], + n: function () { + try { + return y[b[172]](b[19]) === c[15] + } catch (a) { + return !1 + } + } + }, { + q: x[15], + n: function () { + try { + return y[x[15]](b[25]) === c[19] + } catch (a) { + return !1 + } + } + }, { + q: b[233], + n: function () { + try { + return y[b[233]](c[15]) === b[19] + } catch (a) { + return !1 + } + } + }, { + q: b[260], + n: function () { + try { + return y[b[260]](c[19]) === b[25] + } catch (a) { + return !1 + } + } + }, { + q: b[203], + n: function () { + try { + return y[b[203]](c[19]) === b[25] + } catch (a) { + return !1 + } + } + }, { + q: x[10], + n: function () { + try { + return y[x[10]](b[25]) === c[19] + } catch (a) { + return !1 + } + } + }, { + q: c[192], + n: function () { + try { + return y[c[192]](b[137]) === a[267] + } catch (d) { + return !1 + } + } + }, b[304]], f = a[0], e = d.length; f < e; f++) { + if (d[f].n) + if (d[f].n()) + continue; + else + return f + a[675]; + if (d[f] && !y[d[f]]) + return f + a[675] + } + return a[0] + }, + a: z + }, + gb: { + f: function () { + var d; + if (!(d = ja(hd, a[13], void 0)())) + a: { + for (var f in w) + if (w[f]) { + try { + if (w[f][b[359]] && f[x[8]] && f[x[8]](/\$[a-z]dc_/)) { + d = a[295]; + break a + } + } catch (e) { + } + d = a[0]; + break a + } + d = void 0 + } + if (!d) + try { + d = y[c[191]] && ~y[c[191]].toString().indexOf(b[381]) && a[296] + } catch (g) { + d = a[0] + } + return d + }, + a: z + }, + Xb: { + f: function () { + return y[c[207]][c[31]] || y[b[305]][c[31]] || a[0] + }, + a: z + }, + wb: { + f: function () { + for (var d = !1, f = w[c[98]](b[26]), e = a[0], g = f.length; e < g; e++) { + var l = f[e][b[127]]; + if (l && ~l.indexOf(c[244])) { + d = !0; + break + } + } + return d + }, + a: B + } + }, Bc = { + sb: { + f: function () { + return Oa(b[202]) + }, + a: z + }, + kb: { + f: function () { + return Oa(c[242]) + }, + a: z + }, + vb: { + f: function () { + return Oa(b[175]) + }, + a: z + }, + Ob: { + f: function () { + return Oa(b[26]) + }, + a: z + }, + qb: { + f: function () { + return y.history.length || a[0] + }, + a: z + }, + Wb: { + f: function () { + return w[c[213]] || c[0] + }, + a: t + }, + yb: { + f: function () { + return w.Nc || c[0] + }, + a: t + }, + Tb: { + f: function () { + return (w[b[262]][c[26]] || w[b[262]][c[16]]).length || a[0] + }, + a: z + }, + rb: { + f: function () { + return w[b[262]][b[384]].length || a[0] + }, + a: z + }, + ub: { + f: function () { + return C[b[163]].$[0] + }, + a: z + }, + lb: { + f: function () { + return C[b[163]].$.slice(a[675]) + }, + a: H + }, + Hb: { + f: function () { + var d = y[x[17]]; + if (d) { + var f = d[b[406]]; + return [d[b[8]].type, f[x[11]] - f[b[158]], f[b[267]] - f[c[97]]] + } + return [a[0], a[0], a[0]] + }, + a: H + }, + Sa: { + f: function () { + return [y[b[99]] || w[b[262]][b[84]] || w[b[81]][b[84]], y[b[245]] || w[b[262]][b[173]] || w[b[81]][b[173]]] + }, + a: H + }, + Qb: { + f: function () { + return db() ? a[675] : a[1] + }, + a: z + }, + cc: { + f: function () { + return C[b[163]][b[316]].Ic + }, + a: z + } + }, Ga = { + _move: [b[308], b[171], b[193], b[204]], + _click: [c[32]], + _down: [c[56], b[60], b[77], b[226]], + _up: [c[8], b[162], c[217], b[10]], + _keydown: [c[239]], + _focus: [b[3]], + _blur: [c[73]], + _scroll: [b[328]], + _orientation: [b[188]], + _motion: [b[44]] + }, ia = {}, xb, yb; + w[c[182]](c[164])[c[251]] ? (xb = function (a, b, e) { + a[c[251]](b, e, !0) + } + , + yb = function (a, b, e) { + a[c[241]](b, e, !0) + } + ) : (xb = function (a, c, e) { + a[b[234]](b[125] + c, e) + } + , + yb = function (a, c, e) { + a[b[294]](b[125] + c, e) + } + ); + ia.xa = function (a, b, c) { + xb(a, b, c); + return ia + } + ; + ia.wa = function (a, b, c) { + yb(a, b, c); + return ia + } + ; + var zb = Object.keys(Ga), Ab = {}, la; + try { + la = !!v.Mc() + } catch (td) { + la = !1 + } + var oa = {}; + U.prototype._start = function () { + this.l || (this.l = !0, + this.gc()) + } + ; + U.prototype._stop = function () { + this.l = !1; + this.ya(); + this.A() + } + ; + U.prototype.A = function () { + oa = {}; + if (this.j) + for (var a in this.j) + this.j[a] && (this.j[a] = []) + } + ; + U.prototype.rc = function (d) { + if (!this.l) + return this.ya(); + d = d || y[b[357]]; + var f; + a: if (f = d.type, + Ab[f]) + f = Ab[f]; + else { + for (var e = a[0], g = zb.length; e < g; e++) + for (var l = Ga[zb[e]], h = a[0], k = l.length; h < k; h++) + if (f === l[h]) { + f = Ab[f] = zb[e]; + break a + } + f = c[0] + } + this.O(d, f) + } + ; + U.prototype.J = function () { + var a = this + , c = []; + wa(Object.keys(this.j)).forEach(function (e) { + N(a.j[e]) === b[437] && wa(a.j[e]).forEach(function (a) { + return c.push.apply(c, a) + }) + }); + this.A(); + return c + } + ; + U.prototype.gc = function () { + var a = this; + this.F.forEach(function (f) { + var e = ~[c[44], c[34], c[196], b[5], b[11]].indexOf(f) ? y : w; + a.Z[f] = e; + a.ga(e, f, !0) + }) + } + ; + U.prototype.ya = function () { + var a = this; + this.F.forEach(function (b) { + var c = a.Z[b]; + c && a.ga(c, b) + }); + this.Z = {} + } + ; + U.prototype.ga = function (a, b, c) { + var g = this; + Ga[b].forEach(function (b) { + c ? ia.xa(a, b, g.ta) : ia.wa(a, b, g.ta) + }) + } + ; + U.prototype.O = function (d, f) { + var e, g, h, k, m = f.slice(a[675]), p = this.ka; + g = p[m + b[37]]; + e = p[m + b[41]]; + (p = this.j[f]) || (p = this.j[f] = []); + var n = p.length; + g = n < e ? a[34] : g; + h = J(); + if (h - (p.Ca || a[0]) <= g) + return this; + p.Ca = h; + p.ca || (p.ca = id(e)); + n >= e && (e = p.ca(), + p.splice(e, a[675])); + n = d; + void 0 === n && (n = {}); + k = n[c[135]] && n[c[135]].length ? n[c[135]][0] : n; + e = typeof n[b[242]] === b[353] ? a[675] : n[b[242]] ? a[1] : a[5]; + g = n[b[278]] || a[0]; + h = k[b[248]] || k[b[428]]; + k = k[b[247]] || k[b[248]]; + var t = n[b[295]] || n[b[447]] + , n = C[b[163]][b[316]].S; + void 0 === n && (n = a[0]); + n = [mc(m), J() - n]; + switch (m) { + case c[162]: + n.push(e, g, h << a[0], k << a[0]); + break; + case x[3]: + n.push(e, h << a[0], k << a[0]); + break; + case b[237]: + n.push(e, h << a[0], k << a[0]); + break; + case c[32]: + n.push(e, h << a[0], k << a[0], t.id || c[0]); + break; + case c[239]: + case b[3]: + case c[73]: + n.push(e, t && t.id || c[0]); + break; + case b[328]: + m = b[243] in y; + g = (w[b[140]] || c[0]) === b[434]; + m = [m ? y[b[243]] : g ? w[b[262]][b[400]] : w[b[81]][b[400]], m ? y[b[339]] : g ? w[b[262]][b[420]] : w[b[81]][b[420]]]; + n.push(e, m[0] << a[0], m[1] << a[0]); + break; + case x[4]: + if (null == d[c[223]] || null == d[b[124]] || null == d[b[217]]) + return; + n.push(Math.round(d[c[223]]), Math.round(d[b[124]]), Math.round(d[b[217]]), lc(d[b[210]])); + break; + case x[5]: + m = d[c[165]] || d[c[166]]; + if (!m || null == m[c[144]] || null == m[c[147]] || null == m[c[149]]) + return; + n.push(Math.round(m[c[144]] * a[376]), Math.round(m[c[147]] * a[376]), Math.round(m[c[149]] * a[376]), d[b[34]]); + break; + default: + n.length = a[0] + } + n.length && (c[0], + p.push(xa(n, ca[f]))) + } + ; + k.prototype._start = function () { + var a = this; + this.l || (this.l = !0, + this.D = v[b[441]](), + this.D.then(function (f) { + a._battery[x[9]] = f[x[9]]; + a._battery[b[94]] = f[b[94]]; + a._battery[c[181]] = f[c[181]]; + a._battery[b[365]] = f[b[365]]; + a.O(a._battery); + a.F.forEach(function (b) { + return ia.xa(f, b, a.ea) + }) + })) + } + ; + k.prototype._stop = function () { + var a = this; + this.l = !1; + this.D && this.D.then(function (b) { + a.F.forEach(function (c) { + return ia.wa(b, c, a.ea) + }) + }); + this.A() + } + ; + k.prototype.A = function () { + var c = b[189]; + c ? oa[c] = a[0] : oa = {}; + this.j = []; + this.D = null; + this._battery = {} + } + ; + k.prototype.O = function (d) { + function f(a) { + return null == d[a] ? e._battery[a] : d[a] + } + + var e = this + , g = this.j.length + , h = g < this.Y[0] ? a[226] : this.Y[1] + , k = J(); + if (k - (this.Bb || a[0]) <= h) + return this; + this.Bb = k; + g >= this.Y[0] && (g = Math.round(Math[c[218]]() * (g - a[675] - a[675])) + a[675], + this.j.splice(g, a[675])); + g = C[b[163]][b[316]].S; + void 0 === g && (g = a[0]); + var g = [mc(b[189]), J() - g] + , m = [f(x[9]), f(b[94]), f(c[181]), f(b[365])] + , h = m[0] + , k = m[1] + , n = m[2] + , m = m[3]; + g.push(lc(h), Math.round(k * a[226]), function (c) { + return typeof c === b[7] && isFinite(c) ? c : a[674] + }(h ? n : m)); + c[0]; + this.j.push(xa(g, ca[c[11]])) + } + ; + k.prototype.J = function () { + var a = []; + this.j.forEach(function (b) { + return a = a.concat(b) + }); + this.j = []; + return a + } + ; + var Ta, R = db(); + n.prototype._start = function () { + this.Q._start(); + la && this.M._start() + } + ; + n.prototype._stop = function () { + this.Q._stop(); + la && this.M._stop() + } + ; + n.prototype.A = function () { + this.Q.A(); + la && this.M.A() + } + ; + n.prototype.J = function () { + return this.Q.J().concat(la ? this.M.J() : []) + } + ; + g.prototype.aa = function (a) { + this.g = p(a); + this.jc(); + C.h(ka, this.g); + this.tc() + } + ; + g.prototype.jc = function () { + var c = this.g + , f = c.buildVersion + , e = c.sConfig + , g = c.staticServer + , h = c.uc + , c = c.valid; + void 0 === c && (c = a[0]); + if (!(c > a[0]) && e && N(h) === b[7]) + try { + qa.setItem(nc, JSON[b[139]]({ + sConfig: e, + buildVersion: f, + staticServer: g, + valid: J() + na(h, a[34]) + })) + } catch (k) { + } + } + ; + g.prototype.tc = function () { + var a = this.g + , c = a[b[72]] + , a = a.ra; + this.N = new n; + this.H = !1; + c && this._start(); + a && (this.P() || this.I(), + this.Ra()) + } + ; + g.prototype.qa = function (b, c) { + void 0 === b && (b = []); + for (var e = a[0], g = b.length; e < g; e++) + b[e](c); + b.length = a[0] + } + ; + g.prototype.oa = function () { + this.qa(this.na) + } + ; + g.prototype.pa = function (a) { + this.qa(this.sa, a) + } + ; + g.prototype.P = function () { + var a = this.g + , b = a.buildVersion + , c = a.lastUsedVersion; + if (!a.ra) + return !0; + var a = ea().sc(ta) + , g = ea().k(oc) + , h = W().k(Ia) + , k = W().k(ob); + return !(c && g && g !== b && g !== c) && a && h && k + } + ; + g.prototype.I = function (c, f) { + var e = this; + typeof f === b[86] && this.sa.push(f); + typeof c === b[86] && this.na.push(c); + this.H || (this.H = !0, + this.ha(function (c, d) { + if (c) + e.H = !1, + e.pa(Error(b[45])); + else { + var f = d && d[0]; + if (f === a[349]) + return e.ha(function (a) { + a ? e.pa(Error(b[45])) : e.oa(); + e.H = !1 + }); + f === a[295] && (e.oa(), + e.H = !1) + } + })) + } + ; + g.prototype.Ra = function () { + var b = this + , c = a[141] * a[376]; + qd(function () { + ea().qc(ta) - J() <= c * a[13] && b.I() + }, c * a[13]) + } + ; + g.prototype.ha = function (b) { + void 0 === b && (b = V); + var f = $a(); + gd(Cc, a[5])(function (e) { + var g = ba(!0); + c[0]; + c[0]; + c[0]; + e = ja(lb, a[675], void 0)(f.concat(e, g)); + console.log("d参数为:", e); + C.h(wc, e, b) + }) + } + ; + g.prototype._start = function () { + this.l || (this.l = !0, + this.P() || this.I(), + this.g.C = bc(), + this.g.S = J(), + C.h(ka, this.g), + this.N._start()) + } + ; + g.prototype._stop = function () { + this.l = !1; + this.N._stop() + } + ; + g.prototype._setCustomTrackId = function (a) { + this.g.lc = a; + C.h(ka, this.g) + } + ; + g.prototype.ia = function (d, f, e, g) { + function h() { + x || (ua(z), + f(dc({ + C: t, + la: x + }))) + } + + function k() { + x || (ua(z), + console.log(b[80]), + x = v.g.vc = !0, + C.h(ka, v.g), + f(dc({ + C: t, + la: x + }))) + } + + N(e) !== b[86] && (g = e, + e = function () { + } + ); + var m = this.g + , n = m.S + , p = m.ic + , m = m.Gc; + this.g.Ic = J() - n; + this.g.S = J(); + var t = this.g.C = bc(); + if (!~p.indexOf(d)) { + this.g.ma = d; + C.h(ka, this.g); + var v = this; + d = $a(); + var w = ja(this.N.J, a[8], this.N)() + , y = ba(); + c[0]; + c[0]; + c[0]; + d = ja(lb, a[675], void 0)(d.concat(y, w)); + console.log("b参数为:", d); + var x = this.g.vc = !1 + , z = ya(k, +g >= a[0] ? +g : m); + C.h(tb, d, function (c, d) { + var f = d && d[0]; + return c ? k() : f === a[295] ? h() : f === a[352] && e ? (ua(z), + e(Error(b[192]))) : f === a[349] ? (f = $a(), + f = ja(lb, a[675], void 0)(f.concat(y, w)), + C.h(tb, f, h)) : k() + }) + } + } + ; + g.prototype._getToken = function (a, b, c, g) { + var h = this; + void 0 === b && (b = V); + this.P() ? this.ia(a, b, c, g) : this.I(function () { + return h.ia(a, b, c, g) + }, c) + } + ; + g.prototype._getNdInfo = function (a) { + void 0 === a && (a = V); + this.P() ? a(nb()) : this.I(function () { + var b = nb(); + W().m(pc, b); + a(b) + }) + } + ; + var pa; + y[c[207]][b[97]] ? y[b[157]] = g : jd() + } + )() + } + )() + } + )() +} +)(); + + +console.log("加载成功"); + +function get_dd() { + var f = window.$a(); + var g = window.ba(!0); + window.mmm = ''; + var e = window.Cc(function (x) { + window.mmm = x + }); + console.log(e) + var get_d = window.ja(window.lb, 1, void 0)(f.concat(window.mmm, g)); + return get_d; +} + +function get_actoken(get_params_d) { + var t = window.bc(); + return window.dc({ + C: t, + la: false + }, get_params_d) +} diff --git a/z_working/yidunVm.js b/z_working/yidunVm.js new file mode 100644 index 0000000..ba6e1c4 --- /dev/null +++ b/z_working/yidunVm.js @@ -0,0 +1,96 @@ +const fs = require('fs'); +const QXVM_GENERATE = require('../qxVm_sanbox/qxVm.sanbox'); + + +function ReadCode(name, dir) { + let file_path = dir === undefined ? `${__dirname}/${name}` : `${__dirname}/${dir}/${name}`; + return fs.readFileSync(file_path) + "\r\n" +} + + +const js_code = ReadCode(`yidun.js`); +const user_config = { + compress: true, + proxy_config: { proxy: true, print_log: true }, + window_attribute: { + initWatchman: { 'version': 7, __supportCaptcha__: true }, + initNEWatchman: { 'version': 7 }, + options: { + "auto": true, + "staticServer": "acstatic-dun.126.net", + "apiServer": "ac.dun.163yun.com", + "staticServers": [ + "acstatic-dun.126.net", + "acstatic.dun.163yun.com" + ], + "apiServers": [ + "ac.dun.163.com", + "ac.dun.163yun.com" + ], + "productNumber": "YD20160637306799", + "protocol": "https", + "domain": "", + "Kc": [ + "" + ], + "ic": [ + "" + ], + "buildVersion": "2.7.5_602a5ad7", + "lastUsedVersion": "2.7.5_602a5ad7", + "sConfig": "9ca170a1abeedba16ba1f2ac96ed26f3eafdcfe265aff1bad3ae70e2f4ee83e27fe2e6ee82e226a8aba2cfb43ef1f2ad90f025b6eee183a128e2bca4c3b92ae2f4ee8ee867e2e6fbd1af2aafbba7c3b939f4f0e4c3e26faffef6d3b328e2bdab8aa132f1f000cda161a7b3eedbb43cf0fea586ec2afaed00d1af2aa6bba3c3b93af4f4ee87e863e2e6fdd1b328e2adab8ea132f2f0e4c3f26fabfef6d4b33cf0feab8be270e2e6aa82ef79a7f4ee86e579e2e6aa82ef79a7f4ee86f679e2e6aa82ef79a7f4ee93e880e2e6ffcda169afb2eedbb128e2bda7c3b93bf4f0e4c3ee80a7b3eedbb83cf0fea195e863e2e6fdd1b328e2b3bc86f02afaeb00cda167b8bba7c3b939f4f0e4c3f366e2e6eebac73af4effad1b539f5ed00d7b633fbfee4c3e870a1fef695f17fa7f4ee83ef2afafeeecda163b6b0eedbb23cf4f000d1af2aa8acba91a132fceafcd1b33cf4f0e4c3f780adfef6d3b33cf4f4ee86e47fe2e6aa82ef79a7f4ee82e780e2e6fbd1af2aa7acadc3b96ea3b4bd86af2ab8bdbcc3b93cbf", + "configHash": "9ca170a1abeedba16ba1f2ac96ed26f3eafdcfe265aff1bad3ae70e2f4ee83e27fe2e6ee82e226a8aba2cfb43ef1f2ad90f025b6eee183a128e2bca4c3b92ae2f4ee8ee867e2e6fbd1af2aafbba7c3b939f4f0e4c3e26faffef6d3b328e2bdab8aa132f1f000cda161a7b3eedbb43cf0fea586ec2afaed00d1af2aa6bba3c3b93af4f4ee87e863e2e6fdd1b328e2adab8ea132f2f0e4c3f26fabfef6d4b33cf0feab8be270e2e6aa82ef79a7f4ee86e579e2e6aa82ef79a7f4ee86f679e2e6aa82ef79a7f4ee93e880e2e6ffcda169afb2eedbb128e2bda7c3b93bf4f0e4c3ee80a7b3eedbb83cf0fea195e863e2e6fdd1b328e2b3bc86f02afaeb00cda167b8bba7c3b939f4f0e4c3f366e2e6eebac73af4effad1b539f5ed00d7b633fbfee4c3e870a1fef695f17fa7f4ee83ef2afafeeecda163b6b0eedbb23cf4f000d1af2aa8acba91a132fceafcd1b33cf4f0e4c3f780adfef6d3b33cf4f4ee86e47fe2e6aa82ef79a7f4ee82e780e2e6fbd1af2aa7acadc3b96ea3b4bd86af2ab8bdbcc3b93cbf", + "merged": true, + "nc": false, + "oc": false, + "ra": true, + "uc": 300000, + "mc": 86400000, + "Gc": 2000, + "za": 1, + "moveMax": 50, + "moveInterval": 300, + "keydownMax": 10, + "keydownInterval": 300, + "clickMax": 20, + "clickInterval": 300, + "upMax": 20, + "upInterval": 300, + "downMax": 20, + "downInterval": 300, + "focusMax": 20, + "focusInterval": 300, + "blurMax": 20, + "blurInterval": 300, + "scrollMax": 20, + "scrollInterval": 300, + "orientationMax": 50, + "orientationInterval": 3000, + "motionMax": 50, + "motionInterval": 3000, + "batteryMax": 100, + "batteryInterval": 10 + } + }, + + env: { + canvas: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACWCAYAAABkW7XSAAAAAXNSR0IArs4c6QAABGJJREFUeF7t1AEJAAAMAsHZv/RyPNwSyDncOQIECEQEFskpJgECBM5geQICBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAAYPlBwgQyAgYrExVghIgYLD8AAECGQGDlalKUAIEDJYfIEAgI2CwMlUJSoCAwfIDBAhkBAxWpipBCRAwWH6AAIGMgMHKVCUoAQIGyw8QIJARMFiZqgQlQMBg+QECBDICBitTlaAECBgsP0CAQEbAYGWqEpQAgQdWMQCX4yW9owAAAABJRU5ErkJggg==", + plugin: [ + { description: "Portable Document Format", filename: "internal-pdf-viewer", name: "Chrome PDF Plugin", MimeTypes: [{ description: "Portable Document Format", suffixes: "pdf", type: "application/x-google-chrome-pdf" }] }, + { description: "", filename: "mhjfbmdgcfjbbpaeojofohoefgiehjai", name: "Chrome PDF Viewer", MimeTypes: [{ description: "", suffixes: "pdf", type: "application/pdf" }] }, + { description: "", filename: "internal-nacl-plugin", name: "Native Client", MimeTypes: [{ description: "Native Client Executable", suffixes: "", type: "application/x-nacl" }, { description: "Portable Native Client Executable", suffixes: "", type: "application/x-pnacl" }] } + ], + navigator: { + userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36 Edg/100.0.1185.55" + }, + location: { + href: "https://www.chinaexpressair.com/yss/login/" + }, + document: { + cookie: "" + } + } +} + +let result = QXVM_GENERATE.QXVm_sanbox(js_code, "get_dd", user_config); +console.log(result.get_dd()) \ No newline at end of file