vitest 0.6.3 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-api-setup.1387bc33.js → chunk-api-setup.124ffd49.js} +5 -5
- package/dist/{chunk-constants.15865c75.js → chunk-constants.3c02fa95.js} +2 -2
- package/dist/{chunk-defaults.5e983edd.js → chunk-defaults.00934aae.js} +2 -2
- package/dist/chunk-integrations-globals.f9bdfc7b.js +25 -0
- package/dist/chunk-runtime-chain.4422c0fc.js +7089 -0
- package/dist/chunk-runtime-rpc.d609e403.js +9 -0
- package/dist/chunk-utils-base.7c918096.js +409 -0
- package/dist/chunk-utils-global.7bcfa03c.js +6 -0
- package/dist/chunk-utils-path.f4e6a133.js +267 -0
- package/dist/{chunk-utils-source-map.f852610c.js → chunk-utils-source-map.de9cc412.js} +2 -2
- package/dist/{chunk-vite-node-externalize.3c10a918.js → chunk-vite-node-externalize.7999d177.js} +12 -9
- package/dist/{chunk-vite-node-utils.78bec025.js → chunk-vite-node-utils.42d37fe8.js} +30 -15
- package/dist/cli.js +6 -6
- package/dist/config.d.ts +2 -2
- package/dist/entry.js +18 -15
- package/dist/index.d.ts +13 -3
- package/dist/index.js +6 -5
- package/dist/jest-mock.js +4 -3
- package/dist/node.d.ts +106 -3
- package/dist/node.js +9 -7
- package/dist/worker.js +13 -264
- package/package.json +3 -3
- package/dist/chunk-integrations-globals.f273e501.js +0 -24
- package/dist/chunk-runtime-chain.6e08f23f.js +0 -7088
- package/dist/chunk-runtime-rpc.1832c38c.js +0 -6
- package/dist/chunk-utils-base.4350de31.js +0 -409
package/dist/index.d.ts
CHANGED
|
@@ -196,12 +196,19 @@ interface RawMatcherFn<T extends MatcherState = MatcherState> {
|
|
|
196
196
|
}
|
|
197
197
|
declare type MatchersObject<T extends MatcherState = MatcherState> = Record<string, RawMatcherFn<T>>;
|
|
198
198
|
|
|
199
|
+
declare class ModuleCacheMap extends Map<string, ModuleCache$1> {
|
|
200
|
+
normalizePath(fsPath: string): string;
|
|
201
|
+
set(fsPath: string, mod: Partial<ModuleCache$1>): this;
|
|
202
|
+
get(fsPath: string): ModuleCache$1 | undefined;
|
|
203
|
+
delete(fsPath: string): boolean;
|
|
204
|
+
}
|
|
205
|
+
|
|
199
206
|
interface DepsHandlingOptions {
|
|
200
207
|
external?: (string | RegExp)[];
|
|
201
208
|
inline?: (string | RegExp)[];
|
|
202
209
|
/**
|
|
203
210
|
* Try to guess the CJS version of a package when it's invalid ESM
|
|
204
|
-
* @default
|
|
211
|
+
* @default false
|
|
205
212
|
*/
|
|
206
213
|
fallbackCJS?: boolean;
|
|
207
214
|
}
|
|
@@ -354,6 +361,8 @@ declare class Vitest {
|
|
|
354
361
|
onServerRestarted(fn: () => void): void;
|
|
355
362
|
}
|
|
356
363
|
|
|
364
|
+
declare type SuiteMocks = Record<string, Record<string, string | null | (() => unknown)>>;
|
|
365
|
+
|
|
357
366
|
declare abstract class BaseReporter implements Reporter {
|
|
358
367
|
start: number;
|
|
359
368
|
end: number;
|
|
@@ -873,7 +882,7 @@ interface InlineConfig {
|
|
|
873
882
|
* This will significantly improve the performance in huge repo, but might potentially
|
|
874
883
|
* cause some misalignment if a package have different logic in ESM and CJS mode.
|
|
875
884
|
*
|
|
876
|
-
* @default
|
|
885
|
+
* @default false
|
|
877
886
|
*/
|
|
878
887
|
fallbackCJS?: boolean;
|
|
879
888
|
};
|
|
@@ -1147,7 +1156,8 @@ interface WorkerGlobalState {
|
|
|
1147
1156
|
rpc: BirpcReturn<WorkerRPC>;
|
|
1148
1157
|
current?: Test;
|
|
1149
1158
|
filepath?: string;
|
|
1150
|
-
moduleCache:
|
|
1159
|
+
moduleCache: ModuleCacheMap;
|
|
1160
|
+
mockMap: SuiteMocks;
|
|
1151
1161
|
}
|
|
1152
1162
|
|
|
1153
1163
|
declare const suite: SuiteAPI;
|
package/dist/index.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
export { o as afterAll, q as afterEach, n as beforeAll, p as beforeEach, l as describe, r as expect, m as it, k as suite, t as test, v as vi, u as vitest } from './chunk-runtime-chain.
|
|
1
|
+
export { o as afterAll, q as afterEach, n as beforeAll, p as beforeEach, l as describe, r as expect, m as it, k as suite, t as test, v as vi, u as vitest } from './chunk-runtime-chain.4422c0fc.js';
|
|
2
2
|
export { fn, isMockFunction, spies, spyOn } from './jest-mock.js';
|
|
3
3
|
export { assert, default as chai, should } from 'chai';
|
|
4
4
|
import 'util';
|
|
5
|
-
import './chunk-utils-base.
|
|
5
|
+
import './chunk-utils-base.7c918096.js';
|
|
6
6
|
import 'path';
|
|
7
7
|
import 'tty';
|
|
8
8
|
import 'local-pkg';
|
|
9
|
+
import './chunk-utils-global.7bcfa03c.js';
|
|
9
10
|
import './vendor-_commonjsHelpers.edc3a5f0.js';
|
|
10
|
-
import './chunk-runtime-rpc.
|
|
11
|
+
import './chunk-runtime-rpc.d609e403.js';
|
|
11
12
|
import 'fs';
|
|
12
|
-
import './chunk-utils-source-map.
|
|
13
|
+
import './chunk-utils-source-map.de9cc412.js';
|
|
13
14
|
import 'tinyspy';
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OyJ9
|
package/dist/jest-mock.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { util } from 'chai';
|
|
2
1
|
import * as tinyspy from 'tinyspy';
|
|
3
2
|
|
|
4
3
|
const spies = new Set();
|
|
@@ -79,7 +78,9 @@ function enhanceSpy(spy) {
|
|
|
79
78
|
stub.mockResolvedValueOnce = (val) => stub.mockImplementationOnce(() => Promise.resolve(val));
|
|
80
79
|
stub.mockRejectedValue = (val) => stub.mockImplementation(() => Promise.reject(val));
|
|
81
80
|
stub.mockRejectedValueOnce = (val) => stub.mockImplementationOnce(() => Promise.reject(val));
|
|
82
|
-
|
|
81
|
+
Object.defineProperty(stub, "mock", {
|
|
82
|
+
get: () => mockContext
|
|
83
|
+
});
|
|
83
84
|
stub.willCall(function(...args) {
|
|
84
85
|
instances.push(this);
|
|
85
86
|
invocations.push(++callOrder);
|
|
@@ -96,4 +97,4 @@ function fn(implementation) {
|
|
|
96
97
|
}
|
|
97
98
|
|
|
98
99
|
export { fn, isMockFunction, spies, spyOn };
|
|
99
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamVzdC1tb2NrLmpzIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZWdyYXRpb25zL2plc3QtbW9jay50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1dGlsIH0gZnJvbSAnY2hhaSdcbmltcG9ydCB0eXBlIHsgU3B5SW1wbCB9IGZyb20gJ3RpbnlzcHknXG5pbXBvcnQgKiBhcyB0aW55c3B5IGZyb20gJ3RpbnlzcHknXG5cbmludGVyZmFjZSBNb2NrUmVzdWx0UmV0dXJuPFQ+IHtcbiAgdHlwZTogJ3JldHVybidcbiAgdmFsdWU6IFRcbn1cbmludGVyZmFjZSBNb2NrUmVzdWx0SW5jb21wbGV0ZSB7XG4gIHR5cGU6ICdpbmNvbXBsZXRlJ1xuICB2YWx1ZTogdW5kZWZpbmVkXG59XG5pbnRlcmZhY2UgTW9ja1Jlc3VsdFRocm93IHtcbiAgdHlwZTogJ3Rocm93J1xuICB2YWx1ZTogYW55XG59XG5cbnR5cGUgTW9ja1Jlc3VsdDxUPiA9IE1vY2tSZXN1bHRSZXR1cm48VD4gfCBNb2NrUmVzdWx0VGhyb3cgfCBNb2NrUmVzdWx0SW5jb21wbGV0ZVxuXG5leHBvcnQgaW50ZXJmYWNlIEplc3RNb2NrQ29tcGF0Q29udGV4dDxUQXJncywgVFJldHVybnM+IHtcbiAgY2FsbHM6IFRBcmdzW11cbiAgaW5zdGFuY2VzOiBUUmV0dXJuc1tdXG4gIGludm9jYXRpb25DYWxsT3JkZXI6IG51bWJlcltdXG4gIHJlc3VsdHM6IE1vY2tSZXN1bHQ8VFJldHVybnM+W11cbn1cblxudHlwZSBQcm9jZWR1cmUgPSAoLi4uYXJnczogYW55W10pID0+IGFueVxuXG50eXBlIE1ldGhvZHM8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdIGV4dGVuZHMgUHJvY2VkdXJlID8gSyA6IG5ldmVyXG59W2tleW9mIFRdICYgc3RyaW5nXG50eXBlIFByb3BlcnRpZXM8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdIGV4dGVuZHMgUHJvY2VkdXJlID8gbmV2ZXIgOiBLXG59W2tleW9mIFRdICYgc3RyaW5nXG50eXBlIENsYXNzZXM8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdIGV4dGVuZHMgbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55ID8gSyA6IG5ldmVyXG59W2tleW9mIFRdICYgc3RyaW5nXG5cbmV4cG9ydCBpbnRlcmZhY2UgU3B5SW5zdGFuY2U8VEFyZ3MgZXh0ZW5kcyBhbnlbXSA9IGFueVtdLCBUUmV0dXJucyA9IGFueT4ge1xuICBnZXRNb2NrTmFtZSgpOiBzdHJpbmdcbiAgbW9ja05hbWUobjogc3RyaW5nKTogdGhpc1xuICBtb2NrOiBKZXN0TW9ja0NvbXBhdENvbnRleHQ8VEFyZ3MsIFRSZXR1cm5zPlxuICBtb2NrQ2xlYXIoKTogdGhpc1xuICBtb2NrUmVzZXQoKTogdGhpc1xuICBtb2NrUmVzdG9yZSgpOiB2b2lkXG4gIGdldE1vY2tJbXBsZW1lbnRhdGlvbigpOiAoKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucykgfCB1bmRlZmluZWRcbiAgbW9ja0ltcGxlbWVudGF0aW9uKGZuOiAoKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucykgfCAoKCkgPT4gUHJvbWlzZTxUUmV0dXJucz4pKTogdGhpc1xuICBtb2NrSW1wbGVtZW50YXRpb25PbmNlKGZuOiAoKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucykgfCAoKCkgPT4gUHJvbWlzZTxUUmV0dXJucz4pKTogdGhpc1xuICBtb2NrUmV0dXJuVGhpcygpOiB0aGlzXG4gIG1vY2tSZXR1cm5WYWx1ZShvYmo6IFRSZXR1cm5zKTogdGhpc1xuICBtb2NrUmV0dXJuVmFsdWVPbmNlKG9iajogVFJldHVybnMpOiB0aGlzXG4gIG1vY2tSZXNvbHZlZFZhbHVlKG9iajogQXdhaXRlZDxUUmV0dXJucz4pOiB0aGlzXG4gIG1vY2tSZXNvbHZlZFZhbHVlT25jZShvYmo6IEF3YWl0ZWQ8VFJldHVybnM+KTogdGhpc1xuICBtb2NrUmVqZWN0ZWRWYWx1ZShvYmo6IGFueSk6IHRoaXNcbiAgbW9ja1JlamVjdGVkVmFsdWVPbmNlKG9iajogYW55KTogdGhpc1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNweUluc3RhbmNlRm48VEFyZ3MgZXh0ZW5kcyBhbnlbXSA9IGFueSwgVFJldHVybnMgPSBhbnk+IGV4dGVuZHMgU3B5SW5zdGFuY2U8VEFyZ3MsIFRSZXR1cm5zPiB7XG4gICguLi5hcmdzOiBUQXJncyk6IFRSZXR1cm5zXG59XG5cbmV4cG9ydCB0eXBlIE1heWJlTW9ja2VkQ29uc3RydWN0b3I8VD4gPSBUIGV4dGVuZHMgbmV3IChcbiAgLi4uYXJnczogQXJyYXk8YW55PlxuKSA9PiBpbmZlciBSXG4gID8gU3B5SW5zdGFuY2VGbjxDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VD4sIFI+XG4gIDogVFxuZXhwb3J0IHR5cGUgTW9ja2VkRnVuY3Rpb248VCBleHRlbmRzIFByb2NlZHVyZT4gPSBNb2NrV2l0aEFyZ3M8VD4gJiB7XG4gIFtLIGluIGtleW9mIFRdOiBUW0tdO1xufVxuZXhwb3J0IHR5cGUgTW9ja2VkRnVuY3Rpb25EZWVwPFQgZXh0ZW5kcyBQcm9jZWR1cmU+ID0gTW9ja1dpdGhBcmdzPFQ+ICYgTW9ja2VkT2JqZWN0RGVlcDxUPlxuZXhwb3J0IHR5cGUgTW9ja2VkT2JqZWN0PFQ+ID0gTWF5YmVNb2NrZWRDb25zdHJ1Y3RvcjxUPiAmIHtcbiAgW0sgaW4gTWV0aG9kczxUPl06IFRbS10gZXh0ZW5kcyBQcm9jZWR1cmVcbiAgICA/IE1vY2tlZEZ1bmN0aW9uPFRbS10+XG4gICAgOiBUW0tdO1xufSAmIHsgW0sgaW4gUHJvcGVydGllczxUPl06IFRbS10gfVxuZXhwb3J0IHR5cGUgTW9ja2VkT2JqZWN0RGVlcDxUPiA9IE1heWJlTW9ja2VkQ29uc3RydWN0b3I8VD4gJiB7XG4gIFtLIGluIE1ldGhvZHM8VD5dOiBUW0tdIGV4dGVuZHMgUHJvY2VkdXJlXG4gICAgPyBNb2NrZWRGdW5jdGlvbkRlZXA8VFtLXT5cbiAgICA6IFRbS107XG59ICYgeyBbSyBpbiBQcm9wZXJ0aWVzPFQ+XTogTWF5YmVNb2NrZWREZWVwPFRbS10+IH1cblxuZXhwb3J0IHR5cGUgTWF5YmVNb2NrZWREZWVwPFQ+ID0gVCBleHRlbmRzIFByb2NlZHVyZVxuICA/IE1vY2tlZEZ1bmN0aW9uRGVlcDxUPlxuICA6IFQgZXh0ZW5kcyBvYmplY3RcbiAgICA/IE1vY2tlZE9iamVjdERlZXA8VD5cbiAgICA6IFRcblxuZXhwb3J0IHR5cGUgTWF5YmVNb2NrZWQ8VD4gPSBUIGV4dGVuZHMgUHJvY2VkdXJlXG4gID8gTW9ja2VkRnVuY3Rpb248VD5cbiAgOiBUIGV4dGVuZHMgb2JqZWN0XG4gICAgPyBNb2NrZWRPYmplY3Q8VD5cbiAgICA6IFRcblxuZXhwb3J0IHR5cGUgRW5oYW5jZWRTcHk8VEFyZ3MgZXh0ZW5kcyBhbnlbXSA9IGFueVtdLCBUUmV0dXJucyA9IGFueT4gPSBTcHlJbnN0YW5jZTxUQXJncywgVFJldHVybnM+ICYgU3B5SW1wbDxUQXJncywgVFJldHVybnM+XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ja1dpdGhBcmdzPFQgZXh0ZW5kcyBQcm9jZWR1cmU+XG4gIGV4dGVuZHMgU3B5SW5zdGFuY2VGbjxQYXJhbWV0ZXJzPFQ+LCBSZXR1cm5UeXBlPFQ+PiB7XG4gIG5ldyAoLi4uYXJnczogVCBleHRlbmRzIG5ldyAoLi4uYXJnczogYW55KSA9PiBhbnkgPyBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VD4gOiBuZXZlcik6IFRcbiAgKC4uLmFyZ3M6IFBhcmFtZXRlcnM8VD4pOiBSZXR1cm5UeXBlPFQ+XG59XG5cbmV4cG9ydCBjb25zdCBzcGllcyA9IG5ldyBTZXQ8U3B5SW5zdGFuY2U+KClcblxuZXhwb3J0IGZ1bmN0aW9uIGlzTW9ja0Z1bmN0aW9uKGZuOiBhbnkpOiBmbiBpcyBFbmhhbmNlZFNweSB7XG4gIHJldHVybiB0eXBlb2YgZm4gPT09ICdmdW5jdGlvbidcbiAgJiYgJ19pc01vY2tGdW5jdGlvbicgaW4gZm5cbiAgJiYgZm4uX2lzTW9ja0Z1bmN0aW9uXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzcHlPbjxULCBTIGV4dGVuZHMgUHJvcGVydGllczxSZXF1aXJlZDxUPj4+KFxuICBvYmo6IFQsXG4gIG1ldGhvZE5hbWU6IFMsXG4gIGFjY2VzVHlwZTogJ2dldCcsXG4pOiBTcHlJbnN0YW5jZTxbXSwgVFtTXT5cbmV4cG9ydCBmdW5jdGlvbiBzcHlPbjxULCBHIGV4dGVuZHMgUHJvcGVydGllczxSZXF1aXJlZDxUPj4+KFxuICBvYmo6IFQsXG4gIG1ldGhvZE5hbWU6IEcsXG4gIGFjY2VzVHlwZTogJ3NldCcsXG4pOiBTcHlJbnN0YW5jZTxbVFtHXV0sIHZvaWQ+XG5leHBvcnQgZnVuY3Rpb24gc3B5T248VCwgTSBleHRlbmRzIChNZXRob2RzPFJlcXVpcmVkPFQ+PiB8IENsYXNzZXM8UmVxdWlyZWQ8VD4+KT4oXG4gIG9iajogVCxcbiAgbWV0aG9kTmFtZTogTSxcbik6IFJlcXVpcmVkPFQ+W01dIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIEEpID0+IGluZmVyIFIgfCAobmV3ICguLi5hcmdzOiBpbmZlciBBKSA9PiBpbmZlciBSKSA/IFNweUluc3RhbmNlPEEsIFI+IDogbmV2ZXJcbmV4cG9ydCBmdW5jdGlvbiBzcHlPbjxULCBLIGV4dGVuZHMga2V5b2YgVD4oXG4gIG9iajogVCxcbiAgbWV0aG9kOiBLLFxuICBhY2Nlc3NUeXBlPzogJ2dldCcgfCAnc2V0Jyxcbik6IFNweUluc3RhbmNlIHtcbiAgY29uc3QgZGljdGlvbmFyeSA9IHtcbiAgICBnZXQ6ICdnZXR0ZXInLFxuICAgIHNldDogJ3NldHRlcicsXG4gIH0gYXMgY29uc3RcbiAgY29uc3Qgb2JqTWV0aG9kID0gYWNjZXNzVHlwZSA/IHsgW2RpY3Rpb25hcnlbYWNjZXNzVHlwZV1dOiBtZXRob2QgfSA6IG1ldGhvZFxuXG4gIGNvbnN0IHN0dWIgPSB0aW55c3B5LnNweU9uKG9iaiwgb2JqTWV0aG9kIGFzIGFueSlcblxuICByZXR1cm4gZW5oYW5jZVNweShzdHViKSBhcyBTcHlJbnN0YW5jZVxufVxuXG5sZXQgY2FsbE9yZGVyID0gMFxuXG5mdW5jdGlvbiBlbmhhbmNlU3B5PFRBcmdzIGV4dGVuZHMgYW55W10sIFRSZXR1cm5zPihcbiAgc3B5OiBTcHlJbXBsPFRBcmdzLCBUUmV0dXJucz4sXG4pOiBTcHlJbnN0YW5jZTxUQXJncywgVFJldHVybnM+IHtcbiAgY29uc3Qgc3R1YiA9IHNweSBhcyB1bmtub3duIGFzIEVuaGFuY2VkU3B5PFRBcmdzLCBUUmV0dXJucz5cblxuICBsZXQgaW1wbGVtZW50YXRpb246ICgoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm5zKSB8IHVuZGVmaW5lZFxuXG4gIGxldCBpbnN0YW5jZXM6IGFueVtdID0gW11cbiAgbGV0IGludm9jYXRpb25zOiBudW1iZXJbXSA9IFtdXG5cbiAgY29uc3QgbW9ja0NvbnRleHQgPSB7XG4gICAgZ2V0IGNhbGxzKCkge1xuICAgICAgcmV0dXJuIHN0dWIuY2FsbHNcbiAgICB9LFxuICAgIGdldCBpbnN0YW5jZXMoKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2VzXG4gICAgfSxcbiAgICBnZXQgaW52b2NhdGlvbkNhbGxPcmRlcigpIHtcbiAgICAgIHJldHVybiBpbnZvY2F0aW9uc1xuICAgIH0sXG4gICAgZ2V0IHJlc3VsdHMoKSB7XG4gICAgICByZXR1cm4gc3R1Yi5yZXN1bHRzLm1hcCgoW2NhbGxUeXBlLCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgdHlwZSA9IGNhbGxUeXBlID09PSAnZXJyb3InID8gJ3Rocm93JyA6ICdyZXR1cm4nXG4gICAgICAgIHJldHVybiB7IHR5cGUsIHZhbHVlIH1cbiAgICAgIH0pXG4gICAgfSxcbiAgfVxuXG4gIGxldCBvbmNlSW1wbGVtZW50YXRpb25zOiAoKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucylbXSA9IFtdXG5cbiAgbGV0IG5hbWU6IHN0cmluZyA9IChzdHViIGFzIGFueSkubmFtZVxuXG4gIHN0dWIuZ2V0TW9ja05hbWUgPSAoKSA9PiBuYW1lIHx8ICd2aS5mbigpJ1xuICBzdHViLm1vY2tOYW1lID0gKG4pID0+IHtcbiAgICBuYW1lID0gblxuICAgIHJldHVybiBzdHViXG4gIH1cblxuICBzdHViLm1vY2tDbGVhciA9ICgpID0+IHtcbiAgICBzdHViLnJlc2V0KClcbiAgICBpbnN0YW5jZXMgPSBbXVxuICAgIGludm9jYXRpb25zID0gW11cbiAgICByZXR1cm4gc3R1YlxuICB9XG5cbiAgc3R1Yi5tb2NrUmVzZXQgPSAoKSA9PiB7XG4gICAgc3R1Yi5tb2NrQ2xlYXIoKVxuICAgIGltcGxlbWVudGF0aW9uID0gKCkgPT4gdW5kZWZpbmVkIGFzIHVua25vd24gYXMgVFJldHVybnNcbiAgICBvbmNlSW1wbGVtZW50YXRpb25zID0gW11cbiAgICByZXR1cm4gc3R1YlxuICB9XG5cbiAgc3R1Yi5tb2NrUmVzdG9yZSA9ICgpID0+IHtcbiAgICBzdHViLm1vY2tSZXNldCgpXG4gICAgaW1wbGVtZW50YXRpb24gPSB1bmRlZmluZWRcbiAgICByZXR1cm4gc3R1YlxuICB9XG5cbiAgc3R1Yi5nZXRNb2NrSW1wbGVtZW50YXRpb24gPSAoKSA9PiBpbXBsZW1lbnRhdGlvblxuICBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbiA9IChmbjogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucykgPT4ge1xuICAgIGltcGxlbWVudGF0aW9uID0gZm5cbiAgICByZXR1cm4gc3R1YlxuICB9XG5cbiAgc3R1Yi5tb2NrSW1wbGVtZW50YXRpb25PbmNlID0gKGZuOiAoLi4uYXJnczogVEFyZ3MpID0+IFRSZXR1cm5zKSA9PiB7XG4gICAgb25jZUltcGxlbWVudGF0aW9ucy5wdXNoKGZuKVxuICAgIHJldHVybiBzdHViXG4gIH1cblxuICBzdHViLm1vY2tSZXR1cm5UaGlzID0gKCkgPT5cbiAgICBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbihmdW5jdGlvbih0aGlzOiBUUmV0dXJucykge1xuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9KVxuXG4gIHN0dWIubW9ja1JldHVyblZhbHVlID0gKHZhbDogVFJldHVybnMpID0+IHN0dWIubW9ja0ltcGxlbWVudGF0aW9uKCgpID0+IHZhbClcbiAgc3R1Yi5tb2NrUmV0dXJuVmFsdWVPbmNlID0gKHZhbDogVFJldHVybnMpID0+IHN0dWIubW9ja0ltcGxlbWVudGF0aW9uT25jZSgoKSA9PiB2YWwpXG5cbiAgc3R1Yi5tb2NrUmVzb2x2ZWRWYWx1ZSA9ICh2YWw6IEF3YWl0ZWQ8VFJldHVybnM+KSA9PlxuICAgIHN0dWIubW9ja0ltcGxlbWVudGF0aW9uKCgpID0+IFByb21pc2UucmVzb2x2ZSh2YWwgYXMgVFJldHVybnMpKVxuXG4gIHN0dWIubW9ja1Jlc29sdmVkVmFsdWVPbmNlID0gKHZhbDogQXdhaXRlZDxUUmV0dXJucz4pID0+XG4gICAgc3R1Yi5tb2NrSW1wbGVtZW50YXRpb25PbmNlKCgpID0+IFByb21pc2UucmVzb2x2ZSh2YWwgYXMgVFJldHVybnMpKVxuXG4gIHN0dWIubW9ja1JlamVjdGVkVmFsdWUgPSAodmFsOiB1bmtub3duKSA9PlxuICAgIHN0dWIubW9ja0ltcGxlbWVudGF0aW9uKCgpID0+IFByb21pc2UucmVqZWN0KHZhbCkpXG5cbiAgc3R1Yi5tb2NrUmVqZWN0ZWRWYWx1ZU9uY2UgPSAodmFsOiB1bmtub3duKSA9PlxuICAgIHN0dWIubW9ja0ltcGxlbWVudGF0aW9uT25jZSgoKSA9PiBQcm9taXNlLnJlamVjdCh2YWwpKVxuXG4gIHV0aWwuYWRkUHJvcGVydHkoc3R1YiwgJ21vY2snLCAoKSA9PiBtb2NrQ29udGV4dClcblxuICBzdHViLndpbGxDYWxsKGZ1bmN0aW9uKHRoaXM6IHVua25vd24sIC4uLmFyZ3MpIHtcbiAgICBpbnN0YW5jZXMucHVzaCh0aGlzKVxuICAgIGludm9jYXRpb25zLnB1c2goKytjYWxsT3JkZXIpXG4gICAgY29uc3QgaW1wbCA9IG9uY2VJbXBsZW1lbnRhdGlvbnMuc2hpZnQoKSB8fCBpbXBsZW1lbnRhdGlvbiB8fCBzdHViLmdldE9yaWdpbmFsKCkgfHwgKCgpID0+IHt9KVxuICAgIHJldHVybiBpbXBsLmFwcGx5KHRoaXMsIGFyZ3MpXG4gIH0pXG5cbiAgc3BpZXMuYWRkKHN0dWIpXG5cbiAgcmV0dXJuIHN0dWIgYXMgYW55XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmbjxUQXJncyBleHRlbmRzIGFueVtdID0gYW55W10sIFIgPSBhbnk+KCk6IFNweUluc3RhbmNlRm48VEFyZ3MsIFI+XG5leHBvcnQgZnVuY3Rpb24gZm48VEFyZ3MgZXh0ZW5kcyBhbnlbXSA9IGFueVtdLCBSID0gYW55PihcbiAgaW1wbGVtZW50YXRpb246ICguLi5hcmdzOiBUQXJncykgPT4gUlxuKTogU3B5SW5zdGFuY2VGbjxUQXJncywgUj5cbmV4cG9ydCBmdW5jdGlvbiBmbjxUQXJncyBleHRlbmRzIGFueVtdID0gYW55W10sIFIgPSBhbnk+KFxuICBpbXBsZW1lbnRhdGlvbj86ICguLi5hcmdzOiBUQXJncykgPT4gUixcbik6IFNweUluc3RhbmNlRm48VEFyZ3MsIFI+IHtcbiAgcmV0dXJuIGVuaGFuY2VTcHkodGlueXNweS5zcHlPbih7IGZuOiBpbXBsZW1lbnRhdGlvbiB8fCAoKCkgPT4ge30pIH0sICdmbicpKSBhcyB1bmtub3duIGFzIFNweUluc3RhbmNlRm5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFWSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFHLENBQUEsQ0FBQTtBQUN4QixDQUFTLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQWMsQ0FBQyxDQUFBLENBQUEsQ0FBRyxDQUFFLENBQUEsQ0FBQTtBQUNwQyxDQUFBLENBQUUsQ0FBTyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFVLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBaUIsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBRyxDQUFBLENBQUEsQ0FBQyxlQUFlLENBQUM7QUFDdEYsQ0FBQztBQUNNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFTLEtBQUssQ0FBQyxDQUFBLENBQUEsQ0FBRyxFQUFFLENBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRSxVQUFVLENBQUUsQ0FBQSxDQUFBO0FBQy9DLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxVQUFVLENBQUcsQ0FBQSxDQUFBLENBQUE7QUFDckIsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxFQUFFLENBQVEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ2pCLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsRUFBRSxDQUFRLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDakIsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUNKLENBQUEsQ0FBRSxNQUFNLENBQVMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQVUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsRUFBRSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVUsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFVLENBQUMsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFHLE1BQU0sQ0FBQztBQUMvRSxDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFPLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQVMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBQztBQUM3QyxDQUFBLENBQUUsQ0FBTyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFVLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUNELENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVMsQ0FBRyxDQUFBLENBQUEsQ0FBQyxDQUFDO0FBQ2xCLENBQVMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVUsQ0FBQyxDQUFBLENBQUEsQ0FBRyxDQUFFLENBQUEsQ0FBQTtBQUN6QixDQUFBLENBQUUsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ25CLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLGNBQWMsQ0FBQztBQUNyQixDQUFBLENBQUUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBUyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUNyQixDQUFBLENBQUUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVcsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUM7QUFDdkIsQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLFdBQVcsQ0FBRyxDQUFBLENBQUEsQ0FBQTtBQUN0QixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksS0FBSyxDQUFHLENBQUEsQ0FBQSxDQUFBO0FBQ2hCLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLENBQU8sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFDO0FBQ3hCLENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ0wsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLFNBQVMsQ0FBRyxDQUFBLENBQUEsQ0FBQTtBQUNwQixDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLFNBQVMsQ0FBQztBQUN2QixDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUNMLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxtQkFBbUIsQ0FBRyxDQUFBLENBQUEsQ0FBQTtBQUM5QixDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLFdBQVcsQ0FBQztBQUN6QixDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUNMLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxPQUFPLENBQUcsQ0FBQSxDQUFBLENBQUE7QUFDbEIsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sQ0FBTyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxDQUFDLENBQUEsQ0FBQSxDQUFHLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBUSxDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLENBQUMsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDckQsQ0FBUSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBUSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxPQUFPLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFRLENBQUM7QUFDL0QsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFRLE9BQU8sQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxFQUFFLENBQUM7QUFDL0IsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxDQUFDLENBQUM7QUFDVCxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDTCxDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ0osQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBbUIsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUM7QUFDL0IsQ0FBQSxDQUFFLElBQUksQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsSUFBSSxDQUFDO0FBQ3ZCLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBVyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLE1BQU0sQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLFNBQVMsQ0FBQztBQUM3QyxDQUFBLENBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBUSxDQUFHLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDekIsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQztBQUNiLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUNKLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUN6QixDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUM7QUFDakIsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBUyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUNuQixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBVyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUNyQixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUEsQ0FBQSxDQUFHLENBQUM7QUFDSixDQUFBLENBQUUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQVMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDekIsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUM7QUFDckIsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFjLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLENBQUMsQ0FBQztBQUNsQyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQW1CLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFDO0FBQzdCLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUNKLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBVyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDM0IsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUM7QUFDckIsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFjLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBQztBQUM1QixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUEsQ0FBQSxDQUFHLENBQUM7QUFDSixDQUFBLENBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFxQixDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxjQUFjLENBQUM7QUFDcEQsQ0FBQSxDQUFFLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBa0IsQ0FBRyxDQUFBLENBQUEsQ0FBQyxHQUFHLENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ3JDLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFjLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQUM7QUFDekIsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLElBQUksQ0FBQztBQUNoQixDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ0osQ0FBQSxDQUFFLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFzQixDQUFHLENBQUEsQ0FBQSxDQUFDLEdBQUcsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDekMsQ0FBQSxDQUFBLENBQUEsQ0FBSSxtQkFBbUIsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFDO0FBQ2xDLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUNKLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBYyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLE1BQU0sQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQWtCLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQVcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ2pFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFDO0FBQ0wsQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFlLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBa0IsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFDO0FBQ3JFLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBbUIsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUssQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQXNCLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFDO0FBQzdFLENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFpQixHQUFHLENBQUMsQ0FBQSxDQUFBLENBQUcsS0FBSyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsa0JBQWtCLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sT0FBTyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sQ0FBQyxDQUFHLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQztBQUN4RixDQUFBLENBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFxQixHQUFHLENBQUMsQ0FBQSxDQUFBLENBQUcsS0FBSyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsc0JBQXNCLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sT0FBTyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sQ0FBQyxDQUFHLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQztBQUNoRyxDQUFBLENBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBaUIsR0FBRyxDQUFDLENBQUEsQ0FBQSxDQUFHLEtBQUssQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLGtCQUFrQixDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLE9BQU8sQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFDLENBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQ3ZGLENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQXFCLEdBQUcsQ0FBQyxDQUFBLENBQUEsQ0FBRyxLQUFLLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxPQUFPLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sQ0FBQyxDQUFHLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQztBQUMvRixDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBVyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFXLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFDO0FBQ3BELENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFRLENBQUMsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsSUFBSSxDQUFFLENBQUEsQ0FBQTtBQUNsQyxDQUFBLENBQUEsQ0FBQSxDQUFJLFNBQVMsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFDLENBQUM7QUFDekIsQ0FBQSxDQUFBLENBQUEsQ0FBSSxXQUFXLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFDLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBUyxDQUFDLENBQUM7QUFDbEMsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQW1CLENBQUMsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBYyxJQUFJLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFXLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLEtBQUssQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUMvRixDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUssQ0FBQyxDQUFDO0FBQ1AsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUssQ0FBQyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBQztBQUNsQyxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUM7QUFDTCxDQUFBLENBQUUsS0FBSyxDQUFDLENBQUEsQ0FBQSxDQUFHLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFDLENBQUM7QUFDbEIsQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUNNLENBQVMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBYyxDQUFFLENBQUEsQ0FBQTtBQUNuQyxDQUFBLENBQUUsQ0FBTyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFVLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFDLENBQUEsQ0FBRSxDQUFFLENBQUEsQ0FBQSxDQUFFLENBQWMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUssQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUNqRSxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUUsQ0FBQSxDQUFBLENBQUUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQztBQUNmLENBQUE7OyJ9
|
|
100
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamVzdC1tb2NrLmpzIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZWdyYXRpb25zL2plc3QtbW9jay50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNweUltcGwgfSBmcm9tICd0aW55c3B5J1xuaW1wb3J0ICogYXMgdGlueXNweSBmcm9tICd0aW55c3B5J1xuXG5pbnRlcmZhY2UgTW9ja1Jlc3VsdFJldHVybjxUPiB7XG4gIHR5cGU6ICdyZXR1cm4nXG4gIHZhbHVlOiBUXG59XG5pbnRlcmZhY2UgTW9ja1Jlc3VsdEluY29tcGxldGUge1xuICB0eXBlOiAnaW5jb21wbGV0ZSdcbiAgdmFsdWU6IHVuZGVmaW5lZFxufVxuaW50ZXJmYWNlIE1vY2tSZXN1bHRUaHJvdyB7XG4gIHR5cGU6ICd0aHJvdydcbiAgdmFsdWU6IGFueVxufVxuXG50eXBlIE1vY2tSZXN1bHQ8VD4gPSBNb2NrUmVzdWx0UmV0dXJuPFQ+IHwgTW9ja1Jlc3VsdFRocm93IHwgTW9ja1Jlc3VsdEluY29tcGxldGVcblxuZXhwb3J0IGludGVyZmFjZSBKZXN0TW9ja0NvbXBhdENvbnRleHQ8VEFyZ3MsIFRSZXR1cm5zPiB7XG4gIGNhbGxzOiBUQXJnc1tdXG4gIGluc3RhbmNlczogVFJldHVybnNbXVxuICBpbnZvY2F0aW9uQ2FsbE9yZGVyOiBudW1iZXJbXVxuICByZXN1bHRzOiBNb2NrUmVzdWx0PFRSZXR1cm5zPltdXG59XG5cbnR5cGUgUHJvY2VkdXJlID0gKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnlcblxudHlwZSBNZXRob2RzPFQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUXTogVFtLXSBleHRlbmRzIFByb2NlZHVyZSA/IEsgOiBuZXZlclxufVtrZXlvZiBUXSAmIHN0cmluZ1xudHlwZSBQcm9wZXJ0aWVzPFQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUXTogVFtLXSBleHRlbmRzIFByb2NlZHVyZSA/IG5ldmVyIDogS1xufVtrZXlvZiBUXSAmIHN0cmluZ1xudHlwZSBDbGFzc2VzPFQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUXTogVFtLXSBleHRlbmRzIG5ldyAoLi4uYXJnczogYW55W10pID0+IGFueSA/IEsgOiBuZXZlclxufVtrZXlvZiBUXSAmIHN0cmluZ1xuXG5leHBvcnQgaW50ZXJmYWNlIFNweUluc3RhbmNlPFRBcmdzIGV4dGVuZHMgYW55W10gPSBhbnlbXSwgVFJldHVybnMgPSBhbnk+IHtcbiAgZ2V0TW9ja05hbWUoKTogc3RyaW5nXG4gIG1vY2tOYW1lKG46IHN0cmluZyk6IHRoaXNcbiAgbW9jazogSmVzdE1vY2tDb21wYXRDb250ZXh0PFRBcmdzLCBUUmV0dXJucz5cbiAgbW9ja0NsZWFyKCk6IHRoaXNcbiAgbW9ja1Jlc2V0KCk6IHRoaXNcbiAgbW9ja1Jlc3RvcmUoKTogdm9pZFxuICBnZXRNb2NrSW1wbGVtZW50YXRpb24oKTogKCguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybnMpIHwgdW5kZWZpbmVkXG4gIG1vY2tJbXBsZW1lbnRhdGlvbihmbjogKCguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybnMpIHwgKCgpID0+IFByb21pc2U8VFJldHVybnM+KSk6IHRoaXNcbiAgbW9ja0ltcGxlbWVudGF0aW9uT25jZShmbjogKCguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybnMpIHwgKCgpID0+IFByb21pc2U8VFJldHVybnM+KSk6IHRoaXNcbiAgbW9ja1JldHVyblRoaXMoKTogdGhpc1xuICBtb2NrUmV0dXJuVmFsdWUob2JqOiBUUmV0dXJucyk6IHRoaXNcbiAgbW9ja1JldHVyblZhbHVlT25jZShvYmo6IFRSZXR1cm5zKTogdGhpc1xuICBtb2NrUmVzb2x2ZWRWYWx1ZShvYmo6IEF3YWl0ZWQ8VFJldHVybnM+KTogdGhpc1xuICBtb2NrUmVzb2x2ZWRWYWx1ZU9uY2Uob2JqOiBBd2FpdGVkPFRSZXR1cm5zPik6IHRoaXNcbiAgbW9ja1JlamVjdGVkVmFsdWUob2JqOiBhbnkpOiB0aGlzXG4gIG1vY2tSZWplY3RlZFZhbHVlT25jZShvYmo6IGFueSk6IHRoaXNcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTcHlJbnN0YW5jZUZuPFRBcmdzIGV4dGVuZHMgYW55W10gPSBhbnksIFRSZXR1cm5zID0gYW55PiBleHRlbmRzIFNweUluc3RhbmNlPFRBcmdzLCBUUmV0dXJucz4ge1xuICAoLi4uYXJnczogVEFyZ3MpOiBUUmV0dXJuc1xufVxuXG5leHBvcnQgdHlwZSBNYXliZU1vY2tlZENvbnN0cnVjdG9yPFQ+ID0gVCBleHRlbmRzIG5ldyAoXG4gIC4uLmFyZ3M6IEFycmF5PGFueT5cbikgPT4gaW5mZXIgUlxuICA/IFNweUluc3RhbmNlRm48Q29uc3RydWN0b3JQYXJhbWV0ZXJzPFQ+LCBSPlxuICA6IFRcbmV4cG9ydCB0eXBlIE1vY2tlZEZ1bmN0aW9uPFQgZXh0ZW5kcyBQcm9jZWR1cmU+ID0gTW9ja1dpdGhBcmdzPFQ+ICYge1xuICBbSyBpbiBrZXlvZiBUXTogVFtLXTtcbn1cbmV4cG9ydCB0eXBlIE1vY2tlZEZ1bmN0aW9uRGVlcDxUIGV4dGVuZHMgUHJvY2VkdXJlPiA9IE1vY2tXaXRoQXJnczxUPiAmIE1vY2tlZE9iamVjdERlZXA8VD5cbmV4cG9ydCB0eXBlIE1vY2tlZE9iamVjdDxUPiA9IE1heWJlTW9ja2VkQ29uc3RydWN0b3I8VD4gJiB7XG4gIFtLIGluIE1ldGhvZHM8VD5dOiBUW0tdIGV4dGVuZHMgUHJvY2VkdXJlXG4gICAgPyBNb2NrZWRGdW5jdGlvbjxUW0tdPlxuICAgIDogVFtLXTtcbn0gJiB7IFtLIGluIFByb3BlcnRpZXM8VD5dOiBUW0tdIH1cbmV4cG9ydCB0eXBlIE1vY2tlZE9iamVjdERlZXA8VD4gPSBNYXliZU1vY2tlZENvbnN0cnVjdG9yPFQ+ICYge1xuICBbSyBpbiBNZXRob2RzPFQ+XTogVFtLXSBleHRlbmRzIFByb2NlZHVyZVxuICAgID8gTW9ja2VkRnVuY3Rpb25EZWVwPFRbS10+XG4gICAgOiBUW0tdO1xufSAmIHsgW0sgaW4gUHJvcGVydGllczxUPl06IE1heWJlTW9ja2VkRGVlcDxUW0tdPiB9XG5cbmV4cG9ydCB0eXBlIE1heWJlTW9ja2VkRGVlcDxUPiA9IFQgZXh0ZW5kcyBQcm9jZWR1cmVcbiAgPyBNb2NrZWRGdW5jdGlvbkRlZXA8VD5cbiAgOiBUIGV4dGVuZHMgb2JqZWN0XG4gICAgPyBNb2NrZWRPYmplY3REZWVwPFQ+XG4gICAgOiBUXG5cbmV4cG9ydCB0eXBlIE1heWJlTW9ja2VkPFQ+ID0gVCBleHRlbmRzIFByb2NlZHVyZVxuICA/IE1vY2tlZEZ1bmN0aW9uPFQ+XG4gIDogVCBleHRlbmRzIG9iamVjdFxuICAgID8gTW9ja2VkT2JqZWN0PFQ+XG4gICAgOiBUXG5cbmV4cG9ydCB0eXBlIEVuaGFuY2VkU3B5PFRBcmdzIGV4dGVuZHMgYW55W10gPSBhbnlbXSwgVFJldHVybnMgPSBhbnk+ID0gU3B5SW5zdGFuY2U8VEFyZ3MsIFRSZXR1cm5zPiAmIFNweUltcGw8VEFyZ3MsIFRSZXR1cm5zPlxuXG5leHBvcnQgaW50ZXJmYWNlIE1vY2tXaXRoQXJnczxUIGV4dGVuZHMgUHJvY2VkdXJlPlxuICBleHRlbmRzIFNweUluc3RhbmNlRm48UGFyYW1ldGVyczxUPiwgUmV0dXJuVHlwZTxUPj4ge1xuICBuZXcgKC4uLmFyZ3M6IFQgZXh0ZW5kcyBuZXcgKC4uLmFyZ3M6IGFueSkgPT4gYW55ID8gQ29uc3RydWN0b3JQYXJhbWV0ZXJzPFQ+IDogbmV2ZXIpOiBUXG4gICguLi5hcmdzOiBQYXJhbWV0ZXJzPFQ+KTogUmV0dXJuVHlwZTxUPlxufVxuXG5leHBvcnQgY29uc3Qgc3BpZXMgPSBuZXcgU2V0PFNweUluc3RhbmNlPigpXG5cbmV4cG9ydCBmdW5jdGlvbiBpc01vY2tGdW5jdGlvbihmbjogYW55KTogZm4gaXMgRW5oYW5jZWRTcHkge1xuICByZXR1cm4gdHlwZW9mIGZuID09PSAnZnVuY3Rpb24nXG4gICYmICdfaXNNb2NrRnVuY3Rpb24nIGluIGZuXG4gICYmIGZuLl9pc01vY2tGdW5jdGlvblxufVxuXG5leHBvcnQgZnVuY3Rpb24gc3B5T248VCwgUyBleHRlbmRzIFByb3BlcnRpZXM8UmVxdWlyZWQ8VD4+PihcbiAgb2JqOiBULFxuICBtZXRob2ROYW1lOiBTLFxuICBhY2Nlc1R5cGU6ICdnZXQnLFxuKTogU3B5SW5zdGFuY2U8W10sIFRbU10+XG5leHBvcnQgZnVuY3Rpb24gc3B5T248VCwgRyBleHRlbmRzIFByb3BlcnRpZXM8UmVxdWlyZWQ8VD4+PihcbiAgb2JqOiBULFxuICBtZXRob2ROYW1lOiBHLFxuICBhY2Nlc1R5cGU6ICdzZXQnLFxuKTogU3B5SW5zdGFuY2U8W1RbR11dLCB2b2lkPlxuZXhwb3J0IGZ1bmN0aW9uIHNweU9uPFQsIE0gZXh0ZW5kcyAoTWV0aG9kczxSZXF1aXJlZDxUPj4gfCBDbGFzc2VzPFJlcXVpcmVkPFQ+Pik+KFxuICBvYmo6IFQsXG4gIG1ldGhvZE5hbWU6IE0sXG4pOiBSZXF1aXJlZDxUPltNXSBleHRlbmRzICguLi5hcmdzOiBpbmZlciBBKSA9PiBpbmZlciBSIHwgKG5ldyAoLi4uYXJnczogaW5mZXIgQSkgPT4gaW5mZXIgUikgPyBTcHlJbnN0YW5jZTxBLCBSPiA6IG5ldmVyXG5leHBvcnQgZnVuY3Rpb24gc3B5T248VCwgSyBleHRlbmRzIGtleW9mIFQ+KFxuICBvYmo6IFQsXG4gIG1ldGhvZDogSyxcbiAgYWNjZXNzVHlwZT86ICdnZXQnIHwgJ3NldCcsXG4pOiBTcHlJbnN0YW5jZSB7XG4gIGNvbnN0IGRpY3Rpb25hcnkgPSB7XG4gICAgZ2V0OiAnZ2V0dGVyJyxcbiAgICBzZXQ6ICdzZXR0ZXInLFxuICB9IGFzIGNvbnN0XG4gIGNvbnN0IG9iak1ldGhvZCA9IGFjY2Vzc1R5cGUgPyB7IFtkaWN0aW9uYXJ5W2FjY2Vzc1R5cGVdXTogbWV0aG9kIH0gOiBtZXRob2RcblxuICBjb25zdCBzdHViID0gdGlueXNweS5zcHlPbihvYmosIG9iak1ldGhvZCBhcyBhbnkpXG5cbiAgcmV0dXJuIGVuaGFuY2VTcHkoc3R1YikgYXMgU3B5SW5zdGFuY2Vcbn1cblxubGV0IGNhbGxPcmRlciA9IDBcblxuZnVuY3Rpb24gZW5oYW5jZVNweTxUQXJncyBleHRlbmRzIGFueVtdLCBUUmV0dXJucz4oXG4gIHNweTogU3B5SW1wbDxUQXJncywgVFJldHVybnM+LFxuKTogU3B5SW5zdGFuY2U8VEFyZ3MsIFRSZXR1cm5zPiB7XG4gIGNvbnN0IHN0dWIgPSBzcHkgYXMgdW5rbm93biBhcyBFbmhhbmNlZFNweTxUQXJncywgVFJldHVybnM+XG5cbiAgbGV0IGltcGxlbWVudGF0aW9uOiAoKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucykgfCB1bmRlZmluZWRcblxuICBsZXQgaW5zdGFuY2VzOiBhbnlbXSA9IFtdXG4gIGxldCBpbnZvY2F0aW9uczogbnVtYmVyW10gPSBbXVxuXG4gIGNvbnN0IG1vY2tDb250ZXh0ID0ge1xuICAgIGdldCBjYWxscygpIHtcbiAgICAgIHJldHVybiBzdHViLmNhbGxzXG4gICAgfSxcbiAgICBnZXQgaW5zdGFuY2VzKCkge1xuICAgICAgcmV0dXJuIGluc3RhbmNlc1xuICAgIH0sXG4gICAgZ2V0IGludm9jYXRpb25DYWxsT3JkZXIoKSB7XG4gICAgICByZXR1cm4gaW52b2NhdGlvbnNcbiAgICB9LFxuICAgIGdldCByZXN1bHRzKCkge1xuICAgICAgcmV0dXJuIHN0dWIucmVzdWx0cy5tYXAoKFtjYWxsVHlwZSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBjYWxsVHlwZSA9PT0gJ2Vycm9yJyA/ICd0aHJvdycgOiAncmV0dXJuJ1xuICAgICAgICByZXR1cm4geyB0eXBlLCB2YWx1ZSB9XG4gICAgICB9KVxuICAgIH0sXG4gIH1cblxuICBsZXQgb25jZUltcGxlbWVudGF0aW9uczogKCguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybnMpW10gPSBbXVxuXG4gIGxldCBuYW1lOiBzdHJpbmcgPSAoc3R1YiBhcyBhbnkpLm5hbWVcblxuICBzdHViLmdldE1vY2tOYW1lID0gKCkgPT4gbmFtZSB8fCAndmkuZm4oKSdcbiAgc3R1Yi5tb2NrTmFtZSA9IChuKSA9PiB7XG4gICAgbmFtZSA9IG5cbiAgICByZXR1cm4gc3R1YlxuICB9XG5cbiAgc3R1Yi5tb2NrQ2xlYXIgPSAoKSA9PiB7XG4gICAgc3R1Yi5yZXNldCgpXG4gICAgaW5zdGFuY2VzID0gW11cbiAgICBpbnZvY2F0aW9ucyA9IFtdXG4gICAgcmV0dXJuIHN0dWJcbiAgfVxuXG4gIHN0dWIubW9ja1Jlc2V0ID0gKCkgPT4ge1xuICAgIHN0dWIubW9ja0NsZWFyKClcbiAgICBpbXBsZW1lbnRhdGlvbiA9ICgpID0+IHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIFRSZXR1cm5zXG4gICAgb25jZUltcGxlbWVudGF0aW9ucyA9IFtdXG4gICAgcmV0dXJuIHN0dWJcbiAgfVxuXG4gIHN0dWIubW9ja1Jlc3RvcmUgPSAoKSA9PiB7XG4gICAgc3R1Yi5tb2NrUmVzZXQoKVxuICAgIGltcGxlbWVudGF0aW9uID0gdW5kZWZpbmVkXG4gICAgcmV0dXJuIHN0dWJcbiAgfVxuXG4gIHN0dWIuZ2V0TW9ja0ltcGxlbWVudGF0aW9uID0gKCkgPT4gaW1wbGVtZW50YXRpb25cbiAgc3R1Yi5tb2NrSW1wbGVtZW50YXRpb24gPSAoZm46ICguLi5hcmdzOiBUQXJncykgPT4gVFJldHVybnMpID0+IHtcbiAgICBpbXBsZW1lbnRhdGlvbiA9IGZuXG4gICAgcmV0dXJuIHN0dWJcbiAgfVxuXG4gIHN0dWIubW9ja0ltcGxlbWVudGF0aW9uT25jZSA9IChmbjogKC4uLmFyZ3M6IFRBcmdzKSA9PiBUUmV0dXJucykgPT4ge1xuICAgIG9uY2VJbXBsZW1lbnRhdGlvbnMucHVzaChmbilcbiAgICByZXR1cm4gc3R1YlxuICB9XG5cbiAgc3R1Yi5tb2NrUmV0dXJuVGhpcyA9ICgpID0+XG4gICAgc3R1Yi5tb2NrSW1wbGVtZW50YXRpb24oZnVuY3Rpb24odGhpczogVFJldHVybnMpIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfSlcblxuICBzdHViLm1vY2tSZXR1cm5WYWx1ZSA9ICh2YWw6IFRSZXR1cm5zKSA9PiBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbigoKSA9PiB2YWwpXG4gIHN0dWIubW9ja1JldHVyblZhbHVlT25jZSA9ICh2YWw6IFRSZXR1cm5zKSA9PiBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbk9uY2UoKCkgPT4gdmFsKVxuXG4gIHN0dWIubW9ja1Jlc29sdmVkVmFsdWUgPSAodmFsOiBBd2FpdGVkPFRSZXR1cm5zPikgPT5cbiAgICBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbigoKSA9PiBQcm9taXNlLnJlc29sdmUodmFsIGFzIFRSZXR1cm5zKSlcblxuICBzdHViLm1vY2tSZXNvbHZlZFZhbHVlT25jZSA9ICh2YWw6IEF3YWl0ZWQ8VFJldHVybnM+KSA9PlxuICAgIHN0dWIubW9ja0ltcGxlbWVudGF0aW9uT25jZSgoKSA9PiBQcm9taXNlLnJlc29sdmUodmFsIGFzIFRSZXR1cm5zKSlcblxuICBzdHViLm1vY2tSZWplY3RlZFZhbHVlID0gKHZhbDogdW5rbm93bikgPT5cbiAgICBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbigoKSA9PiBQcm9taXNlLnJlamVjdCh2YWwpKVxuXG4gIHN0dWIubW9ja1JlamVjdGVkVmFsdWVPbmNlID0gKHZhbDogdW5rbm93bikgPT5cbiAgICBzdHViLm1vY2tJbXBsZW1lbnRhdGlvbk9uY2UoKCkgPT4gUHJvbWlzZS5yZWplY3QodmFsKSlcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc3R1YiwgJ21vY2snLCB7XG4gICAgZ2V0OiAoKSA9PiBtb2NrQ29udGV4dCxcbiAgfSlcblxuICBzdHViLndpbGxDYWxsKGZ1bmN0aW9uKHRoaXM6IHVua25vd24sIC4uLmFyZ3MpIHtcbiAgICBpbnN0YW5jZXMucHVzaCh0aGlzKVxuICAgIGludm9jYXRpb25zLnB1c2goKytjYWxsT3JkZXIpXG4gICAgY29uc3QgaW1wbCA9IG9uY2VJbXBsZW1lbnRhdGlvbnMuc2hpZnQoKSB8fCBpbXBsZW1lbnRhdGlvbiB8fCBzdHViLmdldE9yaWdpbmFsKCkgfHwgKCgpID0+IHt9KVxuICAgIHJldHVybiBpbXBsLmFwcGx5KHRoaXMsIGFyZ3MpXG4gIH0pXG5cbiAgc3BpZXMuYWRkKHN0dWIpXG5cbiAgcmV0dXJuIHN0dWIgYXMgYW55XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmbjxUQXJncyBleHRlbmRzIGFueVtdID0gYW55W10sIFIgPSBhbnk+KCk6IFNweUluc3RhbmNlRm48VEFyZ3MsIFI+XG5leHBvcnQgZnVuY3Rpb24gZm48VEFyZ3MgZXh0ZW5kcyBhbnlbXSA9IGFueVtdLCBSID0gYW55PihcbiAgaW1wbGVtZW50YXRpb246ICguLi5hcmdzOiBUQXJncykgPT4gUlxuKTogU3B5SW5zdGFuY2VGbjxUQXJncywgUj5cbmV4cG9ydCBmdW5jdGlvbiBmbjxUQXJncyBleHRlbmRzIGFueVtdID0gYW55W10sIFIgPSBhbnk+KFxuICBpbXBsZW1lbnRhdGlvbj86ICguLi5hcmdzOiBUQXJncykgPT4gUixcbik6IFNweUluc3RhbmNlRm48VEFyZ3MsIFI+IHtcbiAgcmV0dXJuIGVuaGFuY2VTcHkodGlueXNweS5zcHlPbih7IGZuOiBpbXBsZW1lbnRhdGlvbiB8fCAoKCkgPT4ge30pIH0sICdmbicpKSBhcyB1bmtub3duIGFzIFNweUluc3RhbmNlRm5cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNZLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQUcsQ0FBQSxDQUFBO0FBQ3hCLENBQVMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBYyxDQUFDLENBQUEsQ0FBQSxDQUFHLENBQUUsQ0FBQSxDQUFBO0FBQ3BDLENBQUEsQ0FBRSxDQUFPLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLENBQVUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFpQixDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFHLENBQUEsQ0FBQSxDQUFDLGVBQWUsQ0FBQztBQUN0RixDQUFDO0FBQ00sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVMsS0FBSyxDQUFDLENBQUEsQ0FBQSxDQUFHLEVBQUUsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLFVBQVUsQ0FBRSxDQUFBLENBQUE7QUFDL0MsQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLFVBQVUsQ0FBRyxDQUFBLENBQUEsQ0FBQTtBQUNyQixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLEVBQUUsQ0FBUSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDakIsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxFQUFFLENBQVEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUNqQixDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ0osQ0FBQSxDQUFFLE1BQU0sQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBVSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxFQUFFLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBVSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVUsQ0FBQyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUcsTUFBTSxDQUFDO0FBQy9FLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQU8sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFDO0FBQzdDLENBQUEsQ0FBRSxDQUFPLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVUsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBQ0QsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBUyxDQUFHLENBQUEsQ0FBQSxDQUFDLENBQUM7QUFDbEIsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBVSxDQUFDLENBQUEsQ0FBQSxDQUFHLENBQUUsQ0FBQSxDQUFBO0FBQ3pCLENBQUEsQ0FBRSxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQUM7QUFDbkIsQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksY0FBYyxDQUFDO0FBQ3JCLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFTLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFDO0FBQ3JCLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBVyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUN2QixDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sV0FBVyxDQUFHLENBQUEsQ0FBQSxDQUFBO0FBQ3RCLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxLQUFLLENBQUcsQ0FBQSxDQUFBLENBQUE7QUFDaEIsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sQ0FBTyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLENBQUM7QUFDeEIsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDTCxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksU0FBUyxDQUFHLENBQUEsQ0FBQSxDQUFBO0FBQ3BCLENBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sU0FBUyxDQUFDO0FBQ3ZCLENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ0wsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLG1CQUFtQixDQUFHLENBQUEsQ0FBQSxDQUFBO0FBQzlCLENBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sV0FBVyxDQUFDO0FBQ3pCLENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ0wsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFJLE9BQU8sQ0FBRyxDQUFBLENBQUEsQ0FBQTtBQUNsQixDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFPLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLENBQUMsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFRLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUssQ0FBQyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUNyRCxDQUFRLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFRLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLE9BQU8sQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVEsQ0FBQztBQUMvRCxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVEsT0FBTyxDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSSxDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLEVBQUUsQ0FBQztBQUMvQixDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLENBQUMsQ0FBQztBQUNULENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUNMLENBQUEsQ0FBQSxDQUFHLENBQUM7QUFDSixDQUFBLENBQUUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFtQixDQUFHLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUMvQixDQUFBLENBQUUsSUFBSSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxJQUFJLENBQUM7QUFDdkIsQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBQyxDQUFXLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsTUFBTSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksU0FBUyxDQUFDO0FBQzdDLENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFRLENBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUN6QixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBRyxDQUFBLENBQUEsQ0FBQyxDQUFDO0FBQ2IsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLElBQUksQ0FBQztBQUNoQixDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ0osQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFTLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ3pCLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQUssQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUNqQixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFTLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFDO0FBQ25CLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFXLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBRSxDQUFDO0FBQ3JCLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUNKLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUN6QixDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFTLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUNyQixDQUFBLENBQUEsQ0FBQSxDQUFJLENBQWMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUssQ0FBQyxDQUFDO0FBQ2xDLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBbUIsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUM7QUFDN0IsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLElBQUksQ0FBQztBQUNoQixDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ0osQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFXLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBTSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUMzQixDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFTLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUUsQ0FBQztBQUNyQixDQUFBLENBQUEsQ0FBQSxDQUFJLENBQWMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFDO0FBQzVCLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUNKLENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQXFCLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLGNBQWMsQ0FBQztBQUNwRCxDQUFBLENBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFrQixDQUFHLENBQUEsQ0FBQSxDQUFDLEdBQUcsQ0FBSyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDckMsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQWMsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsQ0FBQztBQUN6QixDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUEsQ0FBQSxDQUFHLENBQUM7QUFDSixDQUFBLENBQUUsSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQXNCLENBQUcsQ0FBQSxDQUFBLENBQUMsR0FBRyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQTtBQUN6QyxDQUFBLENBQUEsQ0FBQSxDQUFJLG1CQUFtQixDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBQyxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUM7QUFDbEMsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLElBQUksQ0FBQztBQUNoQixDQUFBLENBQUEsQ0FBRyxDQUFDO0FBQ0osQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBQyxDQUFjLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUcsTUFBTSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBa0IsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBVyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDakUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLElBQUksQ0FBQztBQUNoQixDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUM7QUFDTCxDQUFBLENBQUUsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQWUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQUMsQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFrQixDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUM7QUFDckUsQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFtQixDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBc0IsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxDQUFDLENBQUM7QUFDN0UsQ0FBQSxDQUFFLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQWlCLEdBQUcsQ0FBQyxDQUFBLENBQUEsQ0FBRyxLQUFLLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxPQUFPLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxDQUFDLENBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQ3hGLENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQXFCLEdBQUcsQ0FBQyxDQUFBLENBQUEsQ0FBRyxLQUFLLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxPQUFPLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxDQUFDLENBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQ2hHLENBQUEsQ0FBRSxJQUFJLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFpQixHQUFHLENBQUMsQ0FBQSxDQUFBLENBQUcsS0FBSyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsa0JBQWtCLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU0sT0FBTyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLENBQUMsQ0FBRyxDQUFBLENBQUEsQ0FBQyxDQUFDLENBQUM7QUFDdkYsQ0FBQSxDQUFFLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBcUIsR0FBRyxDQUFDLENBQUEsQ0FBQSxDQUFHLEtBQUssQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLHNCQUFzQixDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFNLE9BQU8sQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFDLENBQUcsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQy9GLENBQUEsQ0FBRSxNQUFNLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFjLENBQUMsQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUUsTUFBTSxDQUFFLENBQUEsQ0FBQTtBQUN0QyxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFHLENBQUUsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTSxDQUFXLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUE7QUFDMUIsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFDO0FBQ0wsQ0FBQSxDQUFFLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVEsQ0FBQyxDQUFTLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBRyxJQUFJLENBQUUsQ0FBQSxDQUFBO0FBQ2xDLENBQUEsQ0FBQSxDQUFBLENBQUksU0FBUyxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQztBQUN6QixDQUFBLENBQUEsQ0FBQSxDQUFJLFdBQVcsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBRSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFTLENBQUMsQ0FBQztBQUNsQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQU0sQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUksQ0FBRyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBbUIsQ0FBQyxDQUFLLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFjLElBQUksQ0FBSSxDQUFBLENBQUEsQ0FBQSxDQUFDLENBQVcsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUUsS0FBSyxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQy9GLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFDLENBQUM7QUFDUCxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQU8sSUFBSSxDQUFDLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFDLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUksQ0FBQSxDQUFBLENBQUEsQ0FBQyxDQUFDO0FBQ2xDLENBQUEsQ0FBQSxDQUFHLENBQUMsQ0FBQztBQUNMLENBQUEsQ0FBRSxLQUFLLENBQUMsQ0FBQSxDQUFBLENBQUcsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFJLENBQUMsQ0FBQztBQUNsQixDQUFFLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBQ00sQ0FBUyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFFLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFjLENBQUUsQ0FBQSxDQUFBO0FBQ25DLENBQUEsQ0FBRSxDQUFPLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQVUsQ0FBQyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFPLENBQUMsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFLLENBQUMsQ0FBQSxDQUFFLENBQUUsQ0FBQSxDQUFBLENBQUUsQ0FBYyxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBSyxDQUFNLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBO0FBQ2pFLENBQUEsQ0FBQSxDQUFHLENBQUMsQ0FBRSxDQUFBLENBQUEsQ0FBRSxDQUFJLENBQUEsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQ2YsQ0FBQTs7In0=
|
package/dist/node.d.ts
CHANGED
|
@@ -1,11 +1,44 @@
|
|
|
1
1
|
import { ViteDevServer, TransformResult, CommonServerOptions, UserConfig as UserConfig$1, Plugin as Plugin$1 } from 'vite';
|
|
2
2
|
|
|
3
|
+
declare class ModuleCacheMap extends Map<string, ModuleCache> {
|
|
4
|
+
normalizePath(fsPath: string): string;
|
|
5
|
+
set(fsPath: string, mod: Partial<ModuleCache>): this;
|
|
6
|
+
get(fsPath: string): ModuleCache | undefined;
|
|
7
|
+
delete(fsPath: string): boolean;
|
|
8
|
+
}
|
|
9
|
+
declare class ViteNodeRunner {
|
|
10
|
+
options: ViteNodeRunnerOptions;
|
|
11
|
+
root: string;
|
|
12
|
+
/**
|
|
13
|
+
* Holds the cache of modules
|
|
14
|
+
* Keys of the map are filepaths, or plain package names
|
|
15
|
+
*/
|
|
16
|
+
moduleCache: ModuleCacheMap;
|
|
17
|
+
constructor(options: ViteNodeRunnerOptions);
|
|
18
|
+
executeFile(file: string): Promise<any>;
|
|
19
|
+
executeId(id: string): Promise<any>;
|
|
20
|
+
cachedRequest(rawId: string, callstack: string[]): Promise<any>;
|
|
21
|
+
directRequest(id: string, fsPath: string, callstack: string[]): Promise<any>;
|
|
22
|
+
prepareContext(context: Record<string, any>): Record<string, any>;
|
|
23
|
+
shouldResolveId(dep: string): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Define if a module should be interop-ed
|
|
26
|
+
* This function mostly for the ability to override by subclass
|
|
27
|
+
*/
|
|
28
|
+
shouldInterop(path: string, mod: any): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Import a module and interop it
|
|
31
|
+
*/
|
|
32
|
+
interopedImport(path: string): Promise<any>;
|
|
33
|
+
hasNestedDefault(target: any): any;
|
|
34
|
+
}
|
|
35
|
+
|
|
3
36
|
interface DepsHandlingOptions {
|
|
4
37
|
external?: (string | RegExp)[];
|
|
5
38
|
inline?: (string | RegExp)[];
|
|
6
39
|
/**
|
|
7
40
|
* Try to guess the CJS version of a package when it's invalid ESM
|
|
8
|
-
* @default
|
|
41
|
+
* @default false
|
|
9
42
|
*/
|
|
10
43
|
fallbackCJS?: boolean;
|
|
11
44
|
}
|
|
@@ -25,6 +58,22 @@ interface FetchResult {
|
|
|
25
58
|
externalize?: string;
|
|
26
59
|
map?: RawSourceMap;
|
|
27
60
|
}
|
|
61
|
+
declare type FetchFunction = (id: string) => Promise<FetchResult>;
|
|
62
|
+
declare type ResolveIdFunction = (id: string, importer?: string) => Promise<ViteNodeResolveId | null>;
|
|
63
|
+
interface ModuleCache {
|
|
64
|
+
promise?: Promise<any>;
|
|
65
|
+
exports?: any;
|
|
66
|
+
code?: string;
|
|
67
|
+
}
|
|
68
|
+
interface ViteNodeRunnerOptions {
|
|
69
|
+
root: string;
|
|
70
|
+
fetchModule: FetchFunction;
|
|
71
|
+
resolveId?: ResolveIdFunction;
|
|
72
|
+
base?: string;
|
|
73
|
+
moduleCache?: ModuleCacheMap;
|
|
74
|
+
interopDefault?: boolean;
|
|
75
|
+
requestStubs?: Record<string, any>;
|
|
76
|
+
}
|
|
28
77
|
interface ViteNodeResolveId {
|
|
29
78
|
external?: boolean | 'absolute' | 'relative';
|
|
30
79
|
id: string;
|
|
@@ -583,7 +632,7 @@ interface InlineConfig {
|
|
|
583
632
|
* This will significantly improve the performance in huge repo, but might potentially
|
|
584
633
|
* cause some misalignment if a package have different logic in ESM and CJS mode.
|
|
585
634
|
*
|
|
586
|
-
* @default
|
|
635
|
+
* @default false
|
|
587
636
|
*/
|
|
588
637
|
fallbackCJS?: boolean;
|
|
589
638
|
};
|
|
@@ -816,6 +865,8 @@ interface ResolvedConfig extends Omit<Required<UserConfig>, 'config' | 'filters'
|
|
|
816
865
|
api?: ApiConfig;
|
|
817
866
|
}
|
|
818
867
|
|
|
868
|
+
declare type SuiteMocks = Record<string, Record<string, string | null | (() => unknown)>>;
|
|
869
|
+
|
|
819
870
|
declare class SnapshotManager {
|
|
820
871
|
config: ResolvedConfig;
|
|
821
872
|
summary: SnapshotSummary;
|
|
@@ -910,4 +961,56 @@ interface CliOptions extends UserConfig {
|
|
|
910
961
|
}
|
|
911
962
|
declare function startVitest(cliFilters: string[], options: CliOptions, viteOverrides?: UserConfig$1): Promise<boolean>;
|
|
912
963
|
|
|
913
|
-
|
|
964
|
+
declare type Callback = (...args: any[]) => unknown;
|
|
965
|
+
declare class VitestMocker {
|
|
966
|
+
options: ExecuteOptions;
|
|
967
|
+
private moduleCache;
|
|
968
|
+
private static pendingIds;
|
|
969
|
+
private static spyModule?;
|
|
970
|
+
private request;
|
|
971
|
+
private root;
|
|
972
|
+
private callbacks;
|
|
973
|
+
constructor(options: ExecuteOptions, moduleCache: ModuleCacheMap, request?: (dep: string) => unknown);
|
|
974
|
+
get mockMap(): SuiteMocks;
|
|
975
|
+
on(event: string, cb: Callback): void;
|
|
976
|
+
private emit;
|
|
977
|
+
getSuiteFilepath(): string;
|
|
978
|
+
getMocks(): {
|
|
979
|
+
[x: string]: string | (() => unknown) | null;
|
|
980
|
+
};
|
|
981
|
+
private resolvePath;
|
|
982
|
+
private resolveMocks;
|
|
983
|
+
private callFunctionMock;
|
|
984
|
+
getDependencyMock(dep: string): string | (() => unknown) | null;
|
|
985
|
+
resolveDependency(dep: string): string;
|
|
986
|
+
normalizePath(path: string): string;
|
|
987
|
+
getFsPath(path: string, external: string | null): string;
|
|
988
|
+
resolveMockPath(mockPath: string, external: string | null): string | null;
|
|
989
|
+
mockObject(obj: any): any;
|
|
990
|
+
unmockPath(path: string): void;
|
|
991
|
+
mockPath(path: string, external: string | null, factory?: () => any): void;
|
|
992
|
+
importActual<T>(id: string, importer: string): Promise<T>;
|
|
993
|
+
importMock(id: string, importer: string): Promise<any>;
|
|
994
|
+
private ensureSpy;
|
|
995
|
+
requestWithMock(dep: string): Promise<any>;
|
|
996
|
+
queueMock(id: string, importer: string, factory?: () => unknown): void;
|
|
997
|
+
queueUnmock(id: string, importer: string): void;
|
|
998
|
+
withRequest(request: (dep: string) => unknown): VitestMocker;
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
interface ExecuteOptions extends ViteNodeRunnerOptions {
|
|
1002
|
+
mockMap: SuiteMocks;
|
|
1003
|
+
}
|
|
1004
|
+
declare class VitestRunner extends ViteNodeRunner {
|
|
1005
|
+
options: ExecuteOptions;
|
|
1006
|
+
mocker: VitestMocker;
|
|
1007
|
+
entries: Set<string>;
|
|
1008
|
+
constructor(options: ExecuteOptions);
|
|
1009
|
+
prepareContext(context: Record<string, any>): Record<string, any> & {
|
|
1010
|
+
__vite_ssr_import__: (dep: string) => Promise<any>;
|
|
1011
|
+
__vite_ssr_dynamic_import__: (dep: string) => Promise<any>;
|
|
1012
|
+
__vitest_mocker__: VitestMocker;
|
|
1013
|
+
};
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
export { ExecuteOptions, Vitest, VitestPlugin, VitestRunner, createVitest, startVitest };
|
package/dist/node.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export { V as VitestPlugin, c as createVitest, s as startVitest } from './chunk-vite-node-externalize.
|
|
1
|
+
export { V as VitestPlugin, c as createVitest, s as startVitest } from './chunk-vite-node-externalize.7999d177.js';
|
|
2
|
+
export { V as VitestRunner } from './chunk-utils-path.f4e6a133.js';
|
|
2
3
|
import 'buffer';
|
|
3
4
|
import 'path';
|
|
4
5
|
import 'child_process';
|
|
@@ -12,20 +13,21 @@ import 'assert';
|
|
|
12
13
|
import 'events';
|
|
13
14
|
import 'url';
|
|
14
15
|
import 'os';
|
|
15
|
-
import './chunk-utils-base.
|
|
16
|
+
import './chunk-utils-base.7c918096.js';
|
|
16
17
|
import 'tty';
|
|
17
18
|
import 'local-pkg';
|
|
18
19
|
import 'vite';
|
|
19
|
-
import './chunk-constants.
|
|
20
|
-
import './chunk-vite-node-utils.
|
|
20
|
+
import './chunk-constants.3c02fa95.js';
|
|
21
|
+
import './chunk-vite-node-utils.42d37fe8.js';
|
|
21
22
|
import 'module';
|
|
22
23
|
import 'vm';
|
|
23
|
-
import './chunk-defaults.
|
|
24
|
+
import './chunk-defaults.00934aae.js';
|
|
24
25
|
import 'perf_hooks';
|
|
25
|
-
import './chunk-utils-source-map.
|
|
26
|
+
import './chunk-utils-source-map.de9cc412.js';
|
|
26
27
|
import 'worker_threads';
|
|
27
28
|
import 'tinypool';
|
|
28
29
|
import './chunk-magic-string.d5e0e473.js';
|
|
29
30
|
import 'readline';
|
|
30
31
|
import './vendor-index.ee829ed6.js';
|
|
31
|
-
|
|
32
|
+
import './chunk-utils-global.7bcfa03c.js';
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZXMiOltdLCJzb3VyY2VzQ29udGVudCI6W10sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7In0=
|