experimental-agent 0.4.0 → 0.6.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/{adapter-zgOel4wW.d.mts → adapter-DmlMKodR.d.mts} +4 -60
- package/dist/{adapter-zgOel4wW.d.ts → adapter-DmlMKodR.d.ts} +4 -60
- package/dist/{chunk-ZUFJJYC4.mjs → chunk-2Y7EZPIP.mjs} +3 -2
- package/dist/{chunk-MSTM6W3Y.mjs → chunk-355UN6NT.mjs} +11 -3
- package/dist/{chunk-RT72C52I.mjs → chunk-6MS4CGEZ.mjs} +3 -2
- package/dist/chunk-CS2SEUAA.mjs +405 -0
- package/dist/chunk-LZOMFHX3.mjs +38 -0
- package/dist/chunk-NOW6XL5E.mjs +310 -0
- package/dist/chunk-PH2FXKOU.mjs +9 -0
- package/dist/client-Cd-79N5B.d.ts +494 -0
- package/dist/client-panIugEx.d.mts +494 -0
- package/dist/client.mjs +1 -1
- package/dist/{docker-QPCLWLYR.mjs → docker-FCSNVBEQ.mjs} +2 -2
- package/dist/entry-CciSxlDK.d.mts +45 -0
- package/dist/entry-MCzvxs7U.d.ts +45 -0
- package/dist/index.d.mts +475 -384
- package/dist/index.d.ts +475 -384
- package/dist/index.js +16693 -219
- package/dist/index.mjs +16545 -160
- package/dist/lifecycle-workflow-steps.d.mts +2 -2
- package/dist/lifecycle-workflow-steps.d.ts +2 -2
- package/dist/lifecycle-workflow-steps.mjs +1 -1
- package/dist/lifecycle-workflow.d.mts +2 -2
- package/dist/lifecycle-workflow.d.ts +2 -2
- package/dist/lifecycle-workflow.mjs +1 -1
- package/dist/{local-KJ3BSIFJ.mjs → local-NXHIUJTO.mjs} +2 -2
- package/dist/next/loader.js +11 -3
- package/dist/next/loader.mjs +2 -2
- package/dist/next.js +11 -3
- package/dist/next.mjs +2 -2
- package/dist/{process-manager-WQHAIVRB.mjs → process-manager-26NELLRU.mjs} +1 -1
- package/dist/react.d.mts +56 -0
- package/dist/react.d.ts +56 -0
- package/dist/react.js +144 -0
- package/dist/react.mjs +117 -0
- package/dist/sandbox.d.mts +3 -3
- package/dist/sandbox.d.ts +3 -3
- package/dist/sandbox.js +15 -5
- package/dist/sandbox.mjs +4 -4
- package/dist/{steps-BIsP57pm.d.mts → steps-DWQYXexO.d.mts} +5 -2
- package/dist/{steps-DShnXBLf.d.ts → steps-DnvPkAtl.d.ts} +5 -2
- package/dist/storage.d.mts +2 -2
- package/dist/storage.d.ts +2 -2
- package/dist/storage.js +133 -56
- package/dist/storage.mjs +2 -2
- package/dist/{vercel-QZ6INPMV.mjs → vercel-LJEWLD4T.mjs} +2 -2
- package/package.json +10 -2
- package/dist/chunk-BFFNCESS.mjs +0 -302
- package/dist/chunk-BJTO5JO5.mjs +0 -11
- package/dist/chunk-IV75IMEW.mjs +0 -328
- package/dist/entry-6HYg5qqg.d.mts +0 -36
- package/dist/entry-BrWOmEK2.d.ts +0 -36
|
@@ -2,58 +2,6 @@ import { WORKFLOW_SERIALIZE, WORKFLOW_DESERIALIZE } from '@workflow/serde';
|
|
|
2
2
|
import { NetworkPolicy } from '@vercel/sandbox';
|
|
3
3
|
import { UIMessage } from 'ai';
|
|
4
4
|
|
|
5
|
-
type SkillSourceType = "sandbox" | "host" | "git" | "inline";
|
|
6
|
-
type SandboxSkillInput = {
|
|
7
|
-
type: "sandbox";
|
|
8
|
-
path: string;
|
|
9
|
-
};
|
|
10
|
-
type HostSkillInput = {
|
|
11
|
-
type: "host";
|
|
12
|
-
path: string;
|
|
13
|
-
};
|
|
14
|
-
type GitSkillInput = {
|
|
15
|
-
type: "git";
|
|
16
|
-
repo: string;
|
|
17
|
-
ref?: string;
|
|
18
|
-
path?: string;
|
|
19
|
-
/**
|
|
20
|
-
* Skill directory name under `path`.
|
|
21
|
-
*/
|
|
22
|
-
name?: string;
|
|
23
|
-
};
|
|
24
|
-
type InlineSkillInput = {
|
|
25
|
-
type: "inline";
|
|
26
|
-
name: string;
|
|
27
|
-
description: string;
|
|
28
|
-
instructions: string;
|
|
29
|
-
};
|
|
30
|
-
type SkillInput = SandboxSkillInput | HostSkillInput | GitSkillInput | InlineSkillInput;
|
|
31
|
-
type SandboxSkillEntry = {
|
|
32
|
-
type: "sandbox";
|
|
33
|
-
path: string;
|
|
34
|
-
};
|
|
35
|
-
type HostSkillEntry = {
|
|
36
|
-
type: "host";
|
|
37
|
-
path: string;
|
|
38
|
-
};
|
|
39
|
-
type GitSkillEntry = {
|
|
40
|
-
type: "git";
|
|
41
|
-
repo: string;
|
|
42
|
-
ref?: string;
|
|
43
|
-
path?: string;
|
|
44
|
-
/**
|
|
45
|
-
* Skill directory name under `path`.
|
|
46
|
-
*/
|
|
47
|
-
name?: string;
|
|
48
|
-
};
|
|
49
|
-
type InlineSkillEntry = {
|
|
50
|
-
type: "inline";
|
|
51
|
-
name: string;
|
|
52
|
-
description: string;
|
|
53
|
-
instructions: string;
|
|
54
|
-
};
|
|
55
|
-
type SkillEntry = SandboxSkillEntry | HostSkillEntry | GitSkillEntry | InlineSkillEntry;
|
|
56
|
-
|
|
57
5
|
type GenerationOptions = {
|
|
58
6
|
maxSteps?: number;
|
|
59
7
|
temperature?: number;
|
|
@@ -66,15 +14,11 @@ type GenerationOptions = {
|
|
|
66
14
|
};
|
|
67
15
|
type Session = {
|
|
68
16
|
id: string;
|
|
69
|
-
createdAt: number;
|
|
70
|
-
updatedAt: number;
|
|
71
|
-
model: string | null;
|
|
72
|
-
system: string | null;
|
|
73
17
|
sandboxId: string | null;
|
|
74
18
|
lastMessageId: string | null;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
19
|
+
createdAt: number;
|
|
20
|
+
updatedAt: number;
|
|
21
|
+
state?: Record<string, unknown>;
|
|
78
22
|
};
|
|
79
23
|
type MessageUsage = {
|
|
80
24
|
steps: {
|
|
@@ -253,4 +197,4 @@ interface Storage {
|
|
|
253
197
|
type StorageInput = StorageHandlers | StorageStepFunction;
|
|
254
198
|
declare function toStorage(h: StorageInput): Storage;
|
|
255
199
|
|
|
256
|
-
export { type GenerationOptions as G, type
|
|
200
|
+
export { type GenerationOptions as G, type Message as M, type Part as P, type StorageHandlers as S, type MessageUsage as a, type Sandbox as b, type Session as c, type Setup as d, type SetupSnapshot as e, type Storage as f, type StorageCall as g, StorageStep as h, type StorageStepFunction as i, type StorageInput as j, toStorage as t };
|
|
@@ -2,58 +2,6 @@ import { WORKFLOW_SERIALIZE, WORKFLOW_DESERIALIZE } from '@workflow/serde';
|
|
|
2
2
|
import { NetworkPolicy } from '@vercel/sandbox';
|
|
3
3
|
import { UIMessage } from 'ai';
|
|
4
4
|
|
|
5
|
-
type SkillSourceType = "sandbox" | "host" | "git" | "inline";
|
|
6
|
-
type SandboxSkillInput = {
|
|
7
|
-
type: "sandbox";
|
|
8
|
-
path: string;
|
|
9
|
-
};
|
|
10
|
-
type HostSkillInput = {
|
|
11
|
-
type: "host";
|
|
12
|
-
path: string;
|
|
13
|
-
};
|
|
14
|
-
type GitSkillInput = {
|
|
15
|
-
type: "git";
|
|
16
|
-
repo: string;
|
|
17
|
-
ref?: string;
|
|
18
|
-
path?: string;
|
|
19
|
-
/**
|
|
20
|
-
* Skill directory name under `path`.
|
|
21
|
-
*/
|
|
22
|
-
name?: string;
|
|
23
|
-
};
|
|
24
|
-
type InlineSkillInput = {
|
|
25
|
-
type: "inline";
|
|
26
|
-
name: string;
|
|
27
|
-
description: string;
|
|
28
|
-
instructions: string;
|
|
29
|
-
};
|
|
30
|
-
type SkillInput = SandboxSkillInput | HostSkillInput | GitSkillInput | InlineSkillInput;
|
|
31
|
-
type SandboxSkillEntry = {
|
|
32
|
-
type: "sandbox";
|
|
33
|
-
path: string;
|
|
34
|
-
};
|
|
35
|
-
type HostSkillEntry = {
|
|
36
|
-
type: "host";
|
|
37
|
-
path: string;
|
|
38
|
-
};
|
|
39
|
-
type GitSkillEntry = {
|
|
40
|
-
type: "git";
|
|
41
|
-
repo: string;
|
|
42
|
-
ref?: string;
|
|
43
|
-
path?: string;
|
|
44
|
-
/**
|
|
45
|
-
* Skill directory name under `path`.
|
|
46
|
-
*/
|
|
47
|
-
name?: string;
|
|
48
|
-
};
|
|
49
|
-
type InlineSkillEntry = {
|
|
50
|
-
type: "inline";
|
|
51
|
-
name: string;
|
|
52
|
-
description: string;
|
|
53
|
-
instructions: string;
|
|
54
|
-
};
|
|
55
|
-
type SkillEntry = SandboxSkillEntry | HostSkillEntry | GitSkillEntry | InlineSkillEntry;
|
|
56
|
-
|
|
57
5
|
type GenerationOptions = {
|
|
58
6
|
maxSteps?: number;
|
|
59
7
|
temperature?: number;
|
|
@@ -66,15 +14,11 @@ type GenerationOptions = {
|
|
|
66
14
|
};
|
|
67
15
|
type Session = {
|
|
68
16
|
id: string;
|
|
69
|
-
createdAt: number;
|
|
70
|
-
updatedAt: number;
|
|
71
|
-
model: string | null;
|
|
72
|
-
system: string | null;
|
|
73
17
|
sandboxId: string | null;
|
|
74
18
|
lastMessageId: string | null;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
19
|
+
createdAt: number;
|
|
20
|
+
updatedAt: number;
|
|
21
|
+
state?: Record<string, unknown>;
|
|
78
22
|
};
|
|
79
23
|
type MessageUsage = {
|
|
80
24
|
steps: {
|
|
@@ -253,4 +197,4 @@ interface Storage {
|
|
|
253
197
|
type StorageInput = StorageHandlers | StorageStepFunction;
|
|
254
198
|
declare function toStorage(h: StorageInput): Storage;
|
|
255
199
|
|
|
256
|
-
export { type GenerationOptions as G, type
|
|
200
|
+
export { type GenerationOptions as G, type Message as M, type Part as P, type StorageHandlers as S, type MessageUsage as a, type Sandbox as b, type Session as c, type Setup as d, type SetupSnapshot as e, type Storage as f, type StorageCall as g, StorageStep as h, type StorageStepFunction as i, type StorageInput as j, toStorage as t };
|
|
@@ -122,9 +122,10 @@ var LocalSandboxInstance = class {
|
|
|
122
122
|
throw new Error("updateNetworkPolicy is not supported for local sandboxes");
|
|
123
123
|
}
|
|
124
124
|
};
|
|
125
|
-
function localSandbox() {
|
|
125
|
+
function localSandbox(defaults) {
|
|
126
126
|
return {
|
|
127
127
|
type: "local",
|
|
128
|
+
defaults,
|
|
128
129
|
async create(opts) {
|
|
129
130
|
const basePath = opts.setup.config?.cwd ?? process.cwd();
|
|
130
131
|
const instance = new LocalSandboxInstance(basePath);
|
|
@@ -147,4 +148,4 @@ function localSandbox() {
|
|
|
147
148
|
export {
|
|
148
149
|
localSandbox
|
|
149
150
|
};
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3NhbmRib3gvYmluZGluZ3MvbG9jYWwudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7IHVsaWQgfSBmcm9tIFwidWxpZFwiO1xuaW1wb3J0IHR5cGUgeyBFeGVjUmVzdWx0LCBTYW5kYm94QmluZGluZywgU2FuZGJveEluc3RhbmNlIH0gZnJvbSBcIi4uL2FkYXB0ZXJcIjtcblxuZXhwb3J0IHR5cGUgTG9jYWxCaW5kaW5nQ29uZmlnID0ge1xuICBjd2Q/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBMb2NhbEJpbmRpbmdNZXRhZGF0YSA9IHtcbiAgYmFzZVBhdGg6IHN0cmluZztcbiAgcGlkOiBudW1iZXI7XG59O1xuXG5jbGFzcyBMb2NhbFNhbmRib3hJbnN0YW5jZSBpbXBsZW1lbnRzIFNhbmRib3hJbnN0YW5jZSB7XG4gIHJlYWRvbmx5IGN3ZDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VQYXRoOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvY2Vzc2VzID0gbmV3IE1hcDxcbiAgICBzdHJpbmcsXG4gICAgaW1wb3J0KFwibm9kZTpjaGlsZF9wcm9jZXNzXCIpLkNoaWxkUHJvY2Vzc1xuICA+KCk7XG5cbiAgY29uc3RydWN0b3IoYmFzZVBhdGg6IHN0cmluZykge1xuICAgIHRoaXMuYmFzZVBhdGggPSBiYXNlUGF0aDtcbiAgICB0aGlzLmN3ZCA9IGJhc2VQYXRoO1xuICB9XG5cbiAgYXN5bmMgZXhlYyhvcHRzOiB7XG4gICAgY29tbWFuZDogc3RyaW5nO1xuICAgIGFyZ3M/OiBzdHJpbmdbXTtcbiAgICBjd2Q/OiBzdHJpbmc7XG4gICAgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBzdWRvPzogYm9vbGVhbjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8RXhlY1Jlc3VsdD4ge1xuICAgIGNvbnN0IHsgc3Bhd24gfSA9IGF3YWl0IGltcG9ydChcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiKTtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgaW1wb3J0KFwibm9kZTpwYXRoXCIpO1xuICAgIGNvbnN0IGNvbW1hbmRJZCA9IGBjb21tYW5kXyR7dWxpZCgpfWA7XG5cbiAgICBjb25zdCBmaW5hbENtZCA9IG9wdHMuc3VkbyA/IFwic3Vkb1wiIDogb3B0cy5jb21tYW5kO1xuICAgIGNvbnN0IGZpbmFsQXJncyA9IG9wdHMuc3Vkb1xuICAgICAgPyBbb3B0cy5jb21tYW5kLCAuLi4ob3B0cy5hcmdzID8/IFtdKV1cbiAgICAgIDogKG9wdHMuYXJncyA/PyBbXSk7XG5cbiAgICBjb25zdCBjaGlsZCA9IHNwYXduKGZpbmFsQ21kLCBmaW5hbEFyZ3MsIHtcbiAgICAgIGN3ZDogb3B0cy5jd2QgPyBwYXRoLnJlc29sdmUodGhpcy5iYXNlUGF0aCwgb3B0cy5jd2QpIDogdGhpcy5iYXNlUGF0aCxcbiAgICAgIGVudjogb3B0cy5lbnYgPyB7IC4uLnByb2Nlc3MuZW52LCAuLi5vcHRzLmVudiB9IDogdW5kZWZpbmVkLFxuICAgICAgc2lnbmFsOiBvcHRzLnNpZ25hbCxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvY2Vzc2VzLnNldChjb21tYW5kSWQsIGNoaWxkKTtcblxuICAgIGxldCBzdGRvdXQgPSBcIlwiO1xuICAgIGxldCBzdGRlcnIgPSBcIlwiO1xuICAgIGNvbnN0IGxvZ1F1ZXVlOiB7IHN0cmVhbTogXCJzdGRvdXRcIiB8IFwic3RkZXJyXCI7IGRhdGE6IHN0cmluZyB9W10gPSBbXTtcbiAgICBsZXQgbG9nUmVzb2x2ZTogKCgpID0+IHZvaWQpIHwgbnVsbCA9IG51bGw7XG4gICAgbGV0IGNsb3NlZCA9IGZhbHNlO1xuXG4gICAgY2hpbGQuc3Rkb3V0Lm9uKFwiZGF0YVwiLCAoZGF0YTogc3RyaW5nIHwgQnVmZmVyKSA9PiB7XG4gICAgICBjb25zdCBzdHIgPSBTdHJpbmcoZGF0YSk7XG4gICAgICBzdGRvdXQgKz0gc3RyO1xuICAgICAgbG9nUXVldWUucHVzaCh7IHN0cmVhbTogXCJzdGRvdXRcIiwgZGF0YTogc3RyIH0pO1xuICAgICAgbG9nUmVzb2x2ZT8uKCk7XG4gICAgfSk7XG5cbiAgICBjaGlsZC5zdGRlcnIub24oXCJkYXRhXCIsIChkYXRhOiBzdHJpbmcgfCBCdWZmZXIpID0+IHtcbiAgICAgIGNvbnN0IHN0ciA9IFN0cmluZyhkYXRhKTtcbiAgICAgIHN0ZGVyciArPSBzdHI7XG4gICAgICBsb2dRdWV1ZS5wdXNoKHsgc3RyZWFtOiBcInN0ZGVyclwiLCBkYXRhOiBzdHIgfSk7XG4gICAgICBsb2dSZXNvbHZlPy4oKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBQcm9taXNlPHtcbiAgICAgIHN0ZG91dDogc3RyaW5nO1xuICAgICAgc3RkZXJyOiBzdHJpbmc7XG4gICAgICBleGl0Q29kZTogbnVtYmVyO1xuICAgIH0+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNoaWxkLm9uKFwiZXJyb3JcIiwgKGVycikgPT4ge1xuICAgICAgICB0aGlzLnByb2Nlc3Nlcy5kZWxldGUoY29tbWFuZElkKTtcbiAgICAgICAgY2xvc2VkID0gdHJ1ZTtcbiAgICAgICAgbG9nUmVzb2x2ZT8uKCk7XG4gICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgfSk7XG5cbiAgICAgIGNoaWxkLm9uKFwiY2xvc2VcIiwgKGNvZGU6IG51bWJlciB8IG51bGwpID0+IHtcbiAgICAgICAgdGhpcy5wcm9jZXNzZXMuZGVsZXRlKGNvbW1hbmRJZCk7XG4gICAgICAgIGNsb3NlZCA9IHRydWU7XG4gICAgICAgIGxvZ1Jlc29sdmU/LigpO1xuICAgICAgICByZXNvbHZlKHsgc3Rkb3V0LCBzdGRlcnIsIGV4aXRDb2RlOiBjb2RlID8/IDAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGFzeW5jIGZ1bmN0aW9uKiBsb2dzKCk6IEFzeW5jSXRlcmFibGU8e1xuICAgICAgc3RyZWFtOiBcInN0ZG91dFwiIHwgXCJzdGRlcnJcIjtcbiAgICAgIGRhdGE6IHN0cmluZztcbiAgICB9PiB7XG4gICAgICB3aGlsZSAoIWNsb3NlZCB8fCBsb2dRdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGVudHJ5ID0gbG9nUXVldWUuc2hpZnQoKTtcbiAgICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgICAgeWllbGQgZW50cnk7XG4gICAgICAgIH0gZWxzZSBpZiAoIWNsb3NlZCkge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyKSA9PiB7XG4gICAgICAgICAgICBsb2dSZXNvbHZlID0gcjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBsb2dSZXNvbHZlID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7IGNvbW1hbmRJZCwgbG9ncywgcmVzdWx0IH07XG4gIH1cblxuICBhc3luYyByZWFkRmlsZShvcHRzOiB7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxCdWZmZXIgfCBudWxsPiB7XG4gICAgY29uc3QgZnMgPSBhd2FpdCBpbXBvcnQoXCJub2RlOmZzL3Byb21pc2VzXCIpO1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCBpbXBvcnQoXCJub2RlOnBhdGhcIik7XG4gICAgY29uc3QgZnVsbFBhdGggPSBwYXRoLnJlc29sdmUodGhpcy5iYXNlUGF0aCwgb3B0cy5wYXRoKTtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGZzLnJlYWRGaWxlKGZ1bGxQYXRoKTtcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGUgaW5zdGFuY2VvZiBFcnJvciAmJlxuICAgICAgICBcImNvZGVcIiBpbiBlICYmXG4gICAgICAgIChlIGFzIE5vZGVKUy5FcnJub0V4Y2VwdGlvbikuY29kZSA9PT0gXCJFTk9FTlRcIlxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB3cml0ZUZpbGVzKG9wdHM6IHtcbiAgICBmaWxlczogeyBwYXRoOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB8IEJ1ZmZlciB9W107XG4gICAgZGVzdFBhdGg6IHN0cmluZztcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZzID0gYXdhaXQgaW1wb3J0KFwibm9kZTpmcy9wcm9taXNlc1wiKTtcbiAgICBjb25zdCBwYXRoTW9kID0gYXdhaXQgaW1wb3J0KFwibm9kZTpwYXRoXCIpO1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiBvcHRzLmZpbGVzKSB7XG4gICAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGhNb2QucmVzb2x2ZSh0aGlzLmJhc2VQYXRoLCBvcHRzLmRlc3RQYXRoLCBmaWxlLnBhdGgpO1xuICAgICAgYXdhaXQgZnMubWtkaXIocGF0aE1vZC5kaXJuYW1lKGZ1bGxQYXRoKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUoZnVsbFBhdGgsIGZpbGUuY29udGVudCk7XG4gICAgICBpZiAoZmlsZS5wYXRoLmVuZHNXaXRoKFwiLnNoXCIpKSB7XG4gICAgICAgIGF3YWl0IGZzLmNobW9kKGZ1bGxQYXRoLCAwbzc1NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogLlxuICBhc3luYyBnZXREb21haW4ob3B0czoge1xuICAgIHBvcnQ6IG51bWJlcjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGBodHRwOi8vbG9jYWxob3N0OiR7b3B0cy5wb3J0fWA7XG4gIH1cblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gIGFzeW5jIGtpbGwob3B0czogeyBjb21tYW5kSWQ6IHN0cmluZzsgc2lnbmFsPzogQWJvcnRTaWduYWwgfSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoaWxkID0gdGhpcy5wcm9jZXNzZXMuZ2V0KG9wdHMuY29tbWFuZElkKTtcbiAgICBpZiAoY2hpbGQpIHtcbiAgICAgIGNoaWxkLmtpbGwoXCJTSUdURVJNXCIpO1xuICAgICAgdGhpcy5wcm9jZXNzZXMuZGVsZXRlKG9wdHMuY29tbWFuZElkKTtcbiAgICB9XG4gIH1cblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gIGFzeW5jIGdldFN0YXR1cygpOiBQcm9taXNlPFwicnVubmluZ1wiPiB7XG4gICAgcmV0dXJuIFwicnVubmluZ1wiO1xuICB9XG5cbiAgYXN5bmMgc3RhcnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gbm8tb3A6IGxvY2FsIHNhbmRib3ggaXMgYWx3YXlzIHN0YXJ0ZWRcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJzdG9wIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGxvY2FsIHNhbmRib3hlc1wiKTtcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgYXN5bmMgc25hcHNob3QoKTogUHJvbWlzZTx7IHNuYXBzaG90SWQ6IHN0cmluZyB9PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwic25hcHNob3QgaXMgbm90IHN1cHBvcnRlZCBmb3IgbG9jYWwgc2FuZGJveGVzXCIpO1xuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogLlxuICBhc3luYyB1cGRhdGVOZXR3b3JrUG9saWN5KCk6IFByb21pc2U8bmV2ZXI+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cGRhdGVOZXR3b3JrUG9saWN5IGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGxvY2FsIHNhbmRib3hlc1wiKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxTYW5kYm94KCk6IFNhbmRib3hCaW5kaW5nPFxuICBcImxvY2FsXCIsXG4gIExvY2FsQmluZGluZ0NvbmZpZyxcbiAgTG9jYWxCaW5kaW5nTWV0YWRhdGFcbj4ge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IFwibG9jYWxcIixcbiAgICBhc3luYyBjcmVhdGUob3B0cykge1xuICAgICAgY29uc3QgYmFzZVBhdGggPSBvcHRzLnNldHVwLmNvbmZpZz8uY3dkID8/IHByb2Nlc3MuY3dkKCk7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBMb2NhbFNhbmRib3hJbnN0YW5jZShiYXNlUGF0aCk7XG5cbiAgICAgIGlmIChvcHRzLnNldHVwPy5ydW4pIHtcbiAgICAgICAgYXdhaXQgb3B0cy5zZXR1cC5ydW4oaW5zdGFuY2UpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBpbnN0YW5jZSxcbiAgICAgICAgbWV0YWRhdGE6IHsgYmFzZVBhdGgsIHBpZDogcHJvY2Vzcy5waWQgfSxcbiAgICAgIH07XG4gICAgfSxcblxuICAgIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgICBhc3luYyBjb25uZWN0KG9wdHMpIHtcbiAgICAgIGNvbnN0IGJhc2VQYXRoID0gb3B0cy5tZXRhZGF0YS5iYXNlUGF0aDtcbiAgICAgIHJldHVybiBuZXcgTG9jYWxTYW5kYm94SW5zdGFuY2UoYmFzZVBhdGgpO1xuICAgIH0sXG4gIH07XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQUEsU0FBUyxZQUFZO0FBWXJCLElBQU0sdUJBQU4sTUFBc0Q7QUFBQSxFQUMzQztBQUFBLEVBQ1E7QUFBQSxFQUNBLFlBQVksb0JBQUksSUFHL0I7QUFBQSxFQUVGLFlBQVksVUFBa0I7QUFDNUIsU0FB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
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3NhbmRib3gvYmluZGluZ3MvbG9jYWwudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7IHVsaWQgfSBmcm9tIFwidWxpZFwiO1xuaW1wb3J0IHR5cGUgeyBFeGVjUmVzdWx0LCBTYW5kYm94QmluZGluZywgU2FuZGJveEluc3RhbmNlIH0gZnJvbSBcIi4uL2FkYXB0ZXJcIjtcblxuZXhwb3J0IHR5cGUgTG9jYWxCaW5kaW5nQ29uZmlnID0ge1xuICBjd2Q/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBMb2NhbEJpbmRpbmdNZXRhZGF0YSA9IHtcbiAgYmFzZVBhdGg6IHN0cmluZztcbiAgcGlkOiBudW1iZXI7XG59O1xuXG5jbGFzcyBMb2NhbFNhbmRib3hJbnN0YW5jZSBpbXBsZW1lbnRzIFNhbmRib3hJbnN0YW5jZSB7XG4gIHJlYWRvbmx5IGN3ZDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VQYXRoOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvY2Vzc2VzID0gbmV3IE1hcDxcbiAgICBzdHJpbmcsXG4gICAgaW1wb3J0KFwibm9kZTpjaGlsZF9wcm9jZXNzXCIpLkNoaWxkUHJvY2Vzc1xuICA+KCk7XG5cbiAgY29uc3RydWN0b3IoYmFzZVBhdGg6IHN0cmluZykge1xuICAgIHRoaXMuYmFzZVBhdGggPSBiYXNlUGF0aDtcbiAgICB0aGlzLmN3ZCA9IGJhc2VQYXRoO1xuICB9XG5cbiAgYXN5bmMgZXhlYyhvcHRzOiB7XG4gICAgY29tbWFuZDogc3RyaW5nO1xuICAgIGFyZ3M/OiBzdHJpbmdbXTtcbiAgICBjd2Q/OiBzdHJpbmc7XG4gICAgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBzdWRvPzogYm9vbGVhbjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8RXhlY1Jlc3VsdD4ge1xuICAgIGNvbnN0IHsgc3Bhd24gfSA9IGF3YWl0IGltcG9ydChcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiKTtcbiAgICBjb25zdCBwYXRoID0gYXdhaXQgaW1wb3J0KFwibm9kZTpwYXRoXCIpO1xuICAgIGNvbnN0IGNvbW1hbmRJZCA9IGBjb21tYW5kXyR7dWxpZCgpfWA7XG5cbiAgICBjb25zdCBmaW5hbENtZCA9IG9wdHMuc3VkbyA/IFwic3Vkb1wiIDogb3B0cy5jb21tYW5kO1xuICAgIGNvbnN0IGZpbmFsQXJncyA9IG9wdHMuc3Vkb1xuICAgICAgPyBbb3B0cy5jb21tYW5kLCAuLi4ob3B0cy5hcmdzID8/IFtdKV1cbiAgICAgIDogKG9wdHMuYXJncyA/PyBbXSk7XG5cbiAgICBjb25zdCBjaGlsZCA9IHNwYXduKGZpbmFsQ21kLCBmaW5hbEFyZ3MsIHtcbiAgICAgIGN3ZDogb3B0cy5jd2QgPyBwYXRoLnJlc29sdmUodGhpcy5iYXNlUGF0aCwgb3B0cy5jd2QpIDogdGhpcy5iYXNlUGF0aCxcbiAgICAgIGVudjogb3B0cy5lbnYgPyB7IC4uLnByb2Nlc3MuZW52LCAuLi5vcHRzLmVudiB9IDogdW5kZWZpbmVkLFxuICAgICAgc2lnbmFsOiBvcHRzLnNpZ25hbCxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvY2Vzc2VzLnNldChjb21tYW5kSWQsIGNoaWxkKTtcblxuICAgIGxldCBzdGRvdXQgPSBcIlwiO1xuICAgIGxldCBzdGRlcnIgPSBcIlwiO1xuICAgIGNvbnN0IGxvZ1F1ZXVlOiB7IHN0cmVhbTogXCJzdGRvdXRcIiB8IFwic3RkZXJyXCI7IGRhdGE6IHN0cmluZyB9W10gPSBbXTtcbiAgICBsZXQgbG9nUmVzb2x2ZTogKCgpID0+IHZvaWQpIHwgbnVsbCA9IG51bGw7XG4gICAgbGV0IGNsb3NlZCA9IGZhbHNlO1xuXG4gICAgY2hpbGQuc3Rkb3V0Lm9uKFwiZGF0YVwiLCAoZGF0YTogc3RyaW5nIHwgQnVmZmVyKSA9PiB7XG4gICAgICBjb25zdCBzdHIgPSBTdHJpbmcoZGF0YSk7XG4gICAgICBzdGRvdXQgKz0gc3RyO1xuICAgICAgbG9nUXVldWUucHVzaCh7IHN0cmVhbTogXCJzdGRvdXRcIiwgZGF0YTogc3RyIH0pO1xuICAgICAgbG9nUmVzb2x2ZT8uKCk7XG4gICAgfSk7XG5cbiAgICBjaGlsZC5zdGRlcnIub24oXCJkYXRhXCIsIChkYXRhOiBzdHJpbmcgfCBCdWZmZXIpID0+IHtcbiAgICAgIGNvbnN0IHN0ciA9IFN0cmluZyhkYXRhKTtcbiAgICAgIHN0ZGVyciArPSBzdHI7XG4gICAgICBsb2dRdWV1ZS5wdXNoKHsgc3RyZWFtOiBcInN0ZGVyclwiLCBkYXRhOiBzdHIgfSk7XG4gICAgICBsb2dSZXNvbHZlPy4oKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBQcm9taXNlPHtcbiAgICAgIHN0ZG91dDogc3RyaW5nO1xuICAgICAgc3RkZXJyOiBzdHJpbmc7XG4gICAgICBleGl0Q29kZTogbnVtYmVyO1xuICAgIH0+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNoaWxkLm9uKFwiZXJyb3JcIiwgKGVycikgPT4ge1xuICAgICAgICB0aGlzLnByb2Nlc3Nlcy5kZWxldGUoY29tbWFuZElkKTtcbiAgICAgICAgY2xvc2VkID0gdHJ1ZTtcbiAgICAgICAgbG9nUmVzb2x2ZT8uKCk7XG4gICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgfSk7XG5cbiAgICAgIGNoaWxkLm9uKFwiY2xvc2VcIiwgKGNvZGU6IG51bWJlciB8IG51bGwpID0+IHtcbiAgICAgICAgdGhpcy5wcm9jZXNzZXMuZGVsZXRlKGNvbW1hbmRJZCk7XG4gICAgICAgIGNsb3NlZCA9IHRydWU7XG4gICAgICAgIGxvZ1Jlc29sdmU/LigpO1xuICAgICAgICByZXNvbHZlKHsgc3Rkb3V0LCBzdGRlcnIsIGV4aXRDb2RlOiBjb2RlID8/IDAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGFzeW5jIGZ1bmN0aW9uKiBsb2dzKCk6IEFzeW5jSXRlcmFibGU8e1xuICAgICAgc3RyZWFtOiBcInN0ZG91dFwiIHwgXCJzdGRlcnJcIjtcbiAgICAgIGRhdGE6IHN0cmluZztcbiAgICB9PiB7XG4gICAgICB3aGlsZSAoIWNsb3NlZCB8fCBsb2dRdWV1ZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGVudHJ5ID0gbG9nUXVldWUuc2hpZnQoKTtcbiAgICAgICAgaWYgKGVudHJ5KSB7XG4gICAgICAgICAgeWllbGQgZW50cnk7XG4gICAgICAgIH0gZWxzZSBpZiAoIWNsb3NlZCkge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyKSA9PiB7XG4gICAgICAgICAgICBsb2dSZXNvbHZlID0gcjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBsb2dSZXNvbHZlID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7IGNvbW1hbmRJZCwgbG9ncywgcmVzdWx0IH07XG4gIH1cblxuICBhc3luYyByZWFkRmlsZShvcHRzOiB7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxCdWZmZXIgfCBudWxsPiB7XG4gICAgY29uc3QgZnMgPSBhd2FpdCBpbXBvcnQoXCJub2RlOmZzL3Byb21pc2VzXCIpO1xuICAgIGNvbnN0IHBhdGggPSBhd2FpdCBpbXBvcnQoXCJub2RlOnBhdGhcIik7XG4gICAgY29uc3QgZnVsbFBhdGggPSBwYXRoLnJlc29sdmUodGhpcy5iYXNlUGF0aCwgb3B0cy5wYXRoKTtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGZzLnJlYWRGaWxlKGZ1bGxQYXRoKTtcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGUgaW5zdGFuY2VvZiBFcnJvciAmJlxuICAgICAgICBcImNvZGVcIiBpbiBlICYmXG4gICAgICAgIChlIGFzIE5vZGVKUy5FcnJub0V4Y2VwdGlvbikuY29kZSA9PT0gXCJFTk9FTlRcIlxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB3cml0ZUZpbGVzKG9wdHM6IHtcbiAgICBmaWxlczogeyBwYXRoOiBzdHJpbmc7IGNvbnRlbnQ6IHN0cmluZyB8IEJ1ZmZlciB9W107XG4gICAgZGVzdFBhdGg6IHN0cmluZztcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZzID0gYXdhaXQgaW1wb3J0KFwibm9kZTpmcy9wcm9taXNlc1wiKTtcbiAgICBjb25zdCBwYXRoTW9kID0gYXdhaXQgaW1wb3J0KFwibm9kZTpwYXRoXCIpO1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiBvcHRzLmZpbGVzKSB7XG4gICAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGhNb2QucmVzb2x2ZSh0aGlzLmJhc2VQYXRoLCBvcHRzLmRlc3RQYXRoLCBmaWxlLnBhdGgpO1xuICAgICAgYXdhaXQgZnMubWtkaXIocGF0aE1vZC5kaXJuYW1lKGZ1bGxQYXRoKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgICBhd2FpdCBmcy53cml0ZUZpbGUoZnVsbFBhdGgsIGZpbGUuY29udGVudCk7XG4gICAgICBpZiAoZmlsZS5wYXRoLmVuZHNXaXRoKFwiLnNoXCIpKSB7XG4gICAgICAgIGF3YWl0IGZzLmNobW9kKGZ1bGxQYXRoLCAwbzc1NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogLlxuICBhc3luYyBnZXREb21haW4ob3B0czoge1xuICAgIHBvcnQ6IG51bWJlcjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGBodHRwOi8vbG9jYWxob3N0OiR7b3B0cy5wb3J0fWA7XG4gIH1cblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gIGFzeW5jIGtpbGwob3B0czogeyBjb21tYW5kSWQ6IHN0cmluZzsgc2lnbmFsPzogQWJvcnRTaWduYWwgfSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoaWxkID0gdGhpcy5wcm9jZXNzZXMuZ2V0KG9wdHMuY29tbWFuZElkKTtcbiAgICBpZiAoY2hpbGQpIHtcbiAgICAgIGNoaWxkLmtpbGwoXCJTSUdURVJNXCIpO1xuICAgICAgdGhpcy5wcm9jZXNzZXMuZGVsZXRlKG9wdHMuY29tbWFuZElkKTtcbiAgICB9XG4gIH1cblxuICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gIGFzeW5jIGdldFN0YXR1cygpOiBQcm9taXNlPFwicnVubmluZ1wiPiB7XG4gICAgcmV0dXJuIFwicnVubmluZ1wiO1xuICB9XG5cbiAgYXN5bmMgc3RhcnQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gbm8tb3A6IGxvY2FsIHNhbmRib3ggaXMgYWx3YXlzIHN0YXJ0ZWRcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgYXN5bmMgc3RvcCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJzdG9wIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGxvY2FsIHNhbmRib3hlc1wiKTtcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IC5cbiAgYXN5bmMgc25hcHNob3QoKTogUHJvbWlzZTx7IHNuYXBzaG90SWQ6IHN0cmluZyB9PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwic25hcHNob3QgaXMgbm90IHN1cHBvcnRlZCBmb3IgbG9jYWwgc2FuZGJveGVzXCIpO1xuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogLlxuICBhc3luYyB1cGRhdGVOZXR3b3JrUG9saWN5KCk6IFByb21pc2U8bmV2ZXI+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1cGRhdGVOZXR3b3JrUG9saWN5IGlzIG5vdCBzdXBwb3J0ZWQgZm9yIGxvY2FsIHNhbmRib3hlc1wiKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxTYW5kYm94KFxuICBkZWZhdWx0cz86IFBhcnRpYWw8aW1wb3J0KFwiLi4vYWRhcHRlclwiKS5TYW5kYm94U2V0dXBGaWVsZHM+ICYge1xuICAgIHJ1bj86IChzYW5kYm94OiBTYW5kYm94SW5zdGFuY2UpID0+IFByb21pc2U8dm9pZD47XG4gICAgY29uZmlnPzogTG9jYWxCaW5kaW5nQ29uZmlnO1xuICB9XG4pOiBTYW5kYm94QmluZGluZzxcImxvY2FsXCIsIExvY2FsQmluZGluZ0NvbmZpZywgTG9jYWxCaW5kaW5nTWV0YWRhdGE+IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBcImxvY2FsXCIsXG4gICAgZGVmYXVsdHMsXG4gICAgYXN5bmMgY3JlYXRlKG9wdHMpIHtcbiAgICAgIGNvbnN0IGJhc2VQYXRoID0gb3B0cy5zZXR1cC5jb25maWc/LmN3ZCA/PyBwcm9jZXNzLmN3ZCgpO1xuICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgTG9jYWxTYW5kYm94SW5zdGFuY2UoYmFzZVBhdGgpO1xuXG4gICAgICBpZiAob3B0cy5zZXR1cD8ucnVuKSB7XG4gICAgICAgIGF3YWl0IG9wdHMuc2V0dXAucnVuKGluc3RhbmNlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaW5zdGFuY2UsXG4gICAgICAgIG1ldGFkYXRhOiB7IGJhc2VQYXRoLCBwaWQ6IHByb2Nlc3MucGlkIH0sXG4gICAgICB9O1xuICAgIH0sXG5cbiAgICAvLyBiaW9tZS1pZ25vcmUgbGludC9zdXNwaWNpb3VzL3VzZUF3YWl0OiAuXG4gICAgYXN5bmMgY29ubmVjdChvcHRzKSB7XG4gICAgICBjb25zdCBiYXNlUGF0aCA9IG9wdHMubWV0YWRhdGEuYmFzZVBhdGg7XG4gICAgICByZXR1cm4gbmV3IExvY2FsU2FuZGJveEluc3Rh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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// package.json
|
|
2
2
|
var package_default = {
|
|
3
3
|
name: "experimental-agent",
|
|
4
|
-
version: "0.
|
|
4
|
+
version: "0.6.0",
|
|
5
5
|
main: "./dist/index.js",
|
|
6
6
|
module: "./dist/index.mjs",
|
|
7
7
|
types: "./dist/index.d.ts",
|
|
@@ -50,6 +50,11 @@ var package_default = {
|
|
|
50
50
|
types: "./dist/lifecycle-workflow-steps.d.ts",
|
|
51
51
|
import: "./dist/lifecycle-workflow-steps.mjs",
|
|
52
52
|
require: "./dist/lifecycle-workflow-steps.js"
|
|
53
|
+
},
|
|
54
|
+
"./react": {
|
|
55
|
+
types: "./dist/react.d.ts",
|
|
56
|
+
import: "./dist/react.mjs",
|
|
57
|
+
require: "./dist/react.js"
|
|
53
58
|
}
|
|
54
59
|
},
|
|
55
60
|
scripts: {
|
|
@@ -63,11 +68,13 @@ var package_default = {
|
|
|
63
68
|
},
|
|
64
69
|
dependencies: {
|
|
65
70
|
"@swc/core": "^1.10.0",
|
|
71
|
+
"@tanstack/react-query": "^5.90.21",
|
|
66
72
|
"@vercel/kv2": "^0.0.18",
|
|
67
73
|
"@vercel/oidc": "^3.1.0",
|
|
68
74
|
"@vercel/sandbox": "1.7.1",
|
|
69
75
|
"@workflow/serde": "4.1.0-beta.2",
|
|
70
76
|
"better-all": "^0.0.5",
|
|
77
|
+
elysia: "^1.4.25",
|
|
71
78
|
errore: "^0.14.0",
|
|
72
79
|
"fast-deep-equal": "^3.1.3",
|
|
73
80
|
ulid: "^3.0.2",
|
|
@@ -77,13 +84,14 @@ var package_default = {
|
|
|
77
84
|
"@agent/tsconfig": "workspace:*",
|
|
78
85
|
"@ai-sdk/react": "^3.0.88",
|
|
79
86
|
"@types/node": "^20.11.24",
|
|
87
|
+
"@types/react": "^19.2.14",
|
|
80
88
|
dotenv: "^17.2.3",
|
|
81
89
|
next: "^16.0.0",
|
|
82
90
|
react: "^19.2.4",
|
|
83
91
|
tsup: "^8.0.2",
|
|
84
92
|
typescript: "5.5.4",
|
|
85
93
|
vitest: "^3.0.0",
|
|
86
|
-
workflow: "
|
|
94
|
+
workflow: "https://workflow-docs-3ppyos3w4.vercel.sh/workflow.tgz"
|
|
87
95
|
},
|
|
88
96
|
peerDependencies: {
|
|
89
97
|
ai: "^6.0.0"
|
|
@@ -96,4 +104,4 @@ var package_default = {
|
|
|
96
104
|
export {
|
|
97
105
|
package_default
|
|
98
106
|
};
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vcGFja2FnZS5qc29uIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJ7XG4gIFwibmFtZVwiOiBcImV4cGVyaW1lbnRhbC1hZ2VudFwiLFxuICBcInZlcnNpb25cIjogXCIwLjYuMFwiLFxuICBcIm1haW5cIjogXCIuL2Rpc3QvaW5kZXguanNcIixcbiAgXCJtb2R1bGVcIjogXCIuL2Rpc3QvaW5kZXgubWpzXCIsXG4gIFwidHlwZXNcIjogXCIuL2Rpc3QvaW5kZXguZC50c1wiLFxuICBcInNpZGVFZmZlY3RzXCI6IHRydWUsXG4gIFwibGljZW5zZVwiOiBcIk1JVFwiLFxuICBcImZpbGVzXCI6IFtcbiAgICBcImRpc3QvKipcIlxuICBdLFxuICBcImV4cG9ydHNcIjoge1xuICAgIFwiLlwiOiB7XG4gICAgICBcInR5cGVzXCI6IFwiLi9kaXN0L2luZGV4LmQudHNcIixcbiAgICAgIFwiaW1wb3J0XCI6IFwiLi9kaXN0L2luZGV4Lm1qc1wiLFxuICAgICAgXCJyZXF1aXJlXCI6IFwiLi9kaXN0L2luZGV4LmpzXCJcbiAgICB9LFxuICAgIFwiLi9zdG9yYWdlXCI6IHtcbiAgICAgIFwidHlwZXNcIjogXCIuL2Rpc3Qvc3RvcmFnZS5kLnRzXCIsXG4gICAgICBcImltcG9ydFwiOiBcIi4vZGlzdC9zdG9yYWdlLm1qc1wiLFxuICAgICAgXCJyZXF1aXJlXCI6IFwiLi9kaXN0L3N0b3JhZ2UuanNcIlxuICAgIH0sXG4gICAgXCIuL3NhbmRib3hcIjoge1xuICAgICAgXCJ0eXBlc1wiOiBcIi4vZGlzdC9zYW5kYm94LmQudHNcIixcbiAgICAgIFwiaW1wb3J0XCI6IFwiLi9kaXN0L3NhbmRib3gubWpzXCIsXG4gICAgICBcInJlcXVpcmVcIjogXCIuL2Rpc3Qvc2FuZGJveC5qc1wiXG4gICAgfSxcbiAgICBcIi4vbmV4dFwiOiB7XG4gICAgICBcInR5cGVzXCI6IFwiLi9kaXN0L25leHQuZC50c1wiLFxuICAgICAgXCJpbXBvcnRcIjogXCIuL2Rpc3QvbmV4dC5tanNcIixcbiAgICAgIFwicmVxdWlyZVwiOiBcIi4vZGlzdC9uZXh0LmpzXCJcbiAgICB9LFxuICAgIFwiLi9uZXh0L2xvYWRlclwiOiB7XG4gICAgICBcInR5cGVzXCI6IFwiLi9kaXN0L25leHQvbG9hZGVyLmQudHNcIixcbiAgICAgIFwiaW1wb3J0XCI6IFwiLi9kaXN0L25leHQvbG9hZGVyLm1qc1wiLFxuICAgICAgXCJyZXF1aXJlXCI6IFwiLi9kaXN0L25leHQvbG9hZGVyLmpzXCJcbiAgICB9LFxuICAgIFwiLi9jbGllbnRcIjoge1xuICAgICAgXCJ0eXBlc1wiOiBcIi4vZGlzdC9jbGllbnQuZC50c1wiLFxuICAgICAgXCJpbXBvcnRcIjogXCIuL2Rpc3QvY2xpZW50Lm1qc1wiLFxuICAgICAgXCJyZXF1aXJlXCI6IFwiLi9kaXN0L2NsaWVudC5qc1wiXG4gICAgfSxcbiAgICBcIi4vbGlmZWN5Y2xlLXdvcmtmbG93XCI6IHtcbiAgICAgIFwidHlwZXNcIjogXCIuL2Rpc3QvbGlmZWN5Y2xlLXdvcmtmbG93LmQudHNcIixcbiAgICAgIFwiaW1wb3J0XCI6IFwiLi9kaXN0L2xpZmVjeWNsZS13b3JrZmxvdy5tanNcIixcbiAgICAgIFwicmVxdWlyZVwiOiBcIi4vZGlzdC9saWZlY3ljbGUtd29ya2Zsb3cuanNcIlxuICAgIH0sXG4gICAgXCIuL2xpZmVjeWNsZS13b3JrZmxvdy1zdGVwc1wiOiB7XG4gICAgICBcInR5cGVzXCI6IFwiLi9kaXN0L2xpZmVjeWNsZS13b3JrZmxvdy1zdGVwcy5kLnRzXCIsXG4gICAgICBcImltcG9ydFwiOiBcIi4vZGlzdC9saWZlY3ljbGUtd29ya2Zsb3ctc3RlcHMubWpzXCIsXG4gICAgICBcInJlcXVpcmVcIjogXCIuL2Rpc3QvbGlmZWN5Y2xlLXdvcmtmbG93LXN0ZXBzLmpzXCJcbiAgICB9LFxuICAgIFwiLi9yZWFjdFwiOiB7XG4gICAgICBcInR5cGVzXCI6IFwiLi9kaXN0L3JlYWN0LmQudHNcIixcbiAgICAgIFwiaW1wb3J0XCI6IFwiLi9kaXN0L3JlYWN0Lm1qc1wiLFxuICAgICAgXCJyZXF1aXJlXCI6IFwiLi9kaXN0L3JlYWN0LmpzXCJcbiAgICB9XG4gIH0sXG4gIFwic2NyaXB0c1wiOiB7XG4gICAgXCJidWlsZFwiOiBcInRzdXBcIixcbiAgICBcImRldlwiOiBcInRzdXAgLS13YXRjaFwiLFxuICAgIFwiY2xlYW5cIjogXCJybSAtcmYgLnR1cmJvICYmIHJtIC1yZiBub2RlX21vZHVsZXMgJiYgcm0gLXJmIGRpc3RcIixcbiAgICBcInJlbGVhc2VcIjogXCJwbnBtIGJ1aWxkICYmIG5wbSBwdWJsaXNoXCIsXG4gICAgXCJ0eXBlY2hlY2tcIjogXCJ0c2MgLS1ub0VtaXRcIixcbiAgICBcInRlc3RcIjogXCJ2aXRlc3QgcnVuXCIsXG4gICAgXCJ0ZXN0OndhdGNoXCI6IFwidml0ZXN0XCJcbiAgfSxcbiAgXCJkZXBlbmRlbmNpZXNcIjoge1xuICAgIFwiQHN3Yy9jb3JlXCI6IFwiXjEuMTAuMFwiLFxuICAgIFwiQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5XCI6IFwiXjUuOTAuMjFcIixcbiAgICBcIkB2ZXJjZWwva3YyXCI6IFwiXjAuMC4xOFwiLFxuICAgIFwiQHZlcmNlbC9vaWRjXCI6IFwiXjMuMS4wXCIsXG4gICAgXCJAdmVyY2VsL3NhbmRib3hcIjogXCIxLjcuMVwiLFxuICAgIFwiQHdvcmtmbG93L3NlcmRlXCI6IFwiNC4xLjAtYmV0YS4yXCIsXG4gICAgXCJiZXR0ZXItYWxsXCI6IFwiXjAuMC41XCIsXG4gICAgXCJlbHlzaWFcIjogXCJeMS40LjI1XCIsXG4gICAgXCJlcnJvcmVcIjogXCJeMC4xNC4wXCIsXG4gICAgXCJmYXN0LWRlZXAtZXF1YWxcIjogXCJeMy4xLjNcIixcbiAgICBcInVsaWRcIjogXCJeMy4wLjJcIixcbiAgICBcInpvZFwiOiBcIl40LjMuNlwiXG4gIH0sXG4gIFwiZGV2RGVwZW5kZW5jaWVzXCI6IHtcbiAgICBcIkBhZ2VudC90c2NvbmZpZ1wiOiBcIndvcmtzcGFjZToqXCIsXG4gICAgXCJAYWktc2RrL3JlYWN0XCI6IFwiXjMuMC44OFwiLFxuICAgIFwiQHR5cGVzL25vZGVcIjogXCJeMjAuMTEuMjRcIixcbiAgICBcIkB0eXBlcy9yZWFjdFwiOiBcIl4xOS4yLjE0XCIsXG4gICAgXCJkb3RlbnZcIjogXCJeMTcuMi4zXCIsXG4gICAgXCJuZXh0XCI6IFwiXjE2LjAuMFwiLFxuICAgIFwicmVhY3RcIjogXCJeMTkuMi40XCIsXG4gICAgXCJ0c3VwXCI6IFwiXjguMC4yXCIsXG4gICAgXCJ0eXBlc2NyaXB0XCI6IFwiNS41LjRcIixcbiAgICBcInZpdGVzdFwiOiBcIl4zLjAuMFwiLFxuICAgIFwid29ya2Zsb3dcIjogXCJodHRwczovL3dvcmtmbG93LWRvY3MtM3BweW9zM3c0LnZlcmNlbC5zaC93b3JrZmxvdy50Z3pcIlxuICB9LFxuICBcInBlZXJEZXBlbmRlbmNpZXNcIjoge1xuICAgIFwiYWlcIjogXCJeNi4wLjBcIlxuICB9LFxuICBcInB1Ymxpc2hDb25maWdcIjoge1xuICAgIFwiYWNjZXNzXCI6IFwicHVibGljXCJcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFBO0FBQUEsRUFDRSxNQUFRO0FBQUEsRUFDUixTQUFXO0FBQUEsRUFDWCxNQUFRO0FBQUEsRUFDUixRQUFVO0FBQUEsRUFDVixPQUFTO0FBQUEsRUFDVCxhQUFlO0FBQUEsRUFDZixTQUFXO0FBQUEsRUFDWCxPQUFTO0FBQUEsSUFDUDtBQUFBLEVBQ0Y7QUFBQSxFQUNBLFNBQVc7QUFBQSxJQUNULEtBQUs7QUFBQSxNQUNILE9BQVM7QUFBQSxNQUNULFFBQVU7QUFBQSxNQUNWLFNBQVc7QUFBQSxJQUNiO0FBQUEsSUFDQSxhQUFhO0FBQUEsTUFDWCxPQUFTO0FBQUEsTUFDVCxRQUFVO0FBQUEsTUFDVixTQUFXO0FBQUEsSUFDYjtBQUFBLElBQ0EsYUFBYTtBQUFBLE1BQ1gsT0FBUztBQUFBLE1BQ1QsUUFBVTtBQUFBLE1BQ1YsU0FBVztBQUFBLElBQ2I7QUFBQSxJQUNBLFVBQVU7QUFBQSxNQUNSLE9BQVM7QUFBQSxNQUNULFFBQVU7QUFBQSxNQUNWLFNBQVc7QUFBQSxJQUNiO0FBQUEsSUFDQSxpQkFBaUI7QUFBQSxNQUNmLE9BQVM7QUFBQSxNQUNULFFBQVU7QUFBQSxNQUNWLFNBQVc7QUFBQSxJQUNiO0FBQUEsSUFDQSxZQUFZO0FBQUEsTUFDVixPQUFTO0FBQUEsTUFDVCxRQUFVO0FBQUEsTUFDVixTQUFXO0FBQUEsSUFDYjtBQUFBLElBQ0Esd0JBQXdCO0FBQUEsTUFDdEIsT0FBUztBQUFBLE1BQ1QsUUFBVTtBQUFBLE1BQ1YsU0FBVztBQUFBLElBQ2I7QUFBQSxJQUNBLDhCQUE4QjtBQUFBLE1BQzVCLE9BQVM7QUFBQSxNQUNULFFBQVU7QUFBQSxNQUNWLFNBQVc7QUFBQSxJQUNiO0FBQUEsSUFDQSxXQUFXO0FBQUEsTUFDVCxPQUFTO0FBQUEsTUFDVCxRQUFVO0FBQUEsTUFDVixTQUFXO0FBQUEsSUFDYjtBQUFBLEVBQ0Y7QUFBQSxFQUNBLFNBQVc7QUFBQSxJQUNULE9BQVM7QUFBQSxJQUNULEtBQU87QUFBQSxJQUNQLE9BQVM7QUFBQSxJQUNULFNBQVc7QUFBQSxJQUNYLFdBQWE7QUFBQSxJQUNiLE1BQVE7QUFBQSxJQUNSLGNBQWM7QUFBQSxFQUNoQjtBQUFBLEVBQ0EsY0FBZ0I7QUFBQSxJQUNkLGFBQWE7QUFBQSxJQUNiLHlCQUF5QjtBQUFBLElBQ3pCLGVBQWU7QUFBQSxJQUNmLGdCQUFnQjtBQUFBLElBQ2hCLG1CQUFtQjtBQUFBLElBQ25CLG1CQUFtQjtBQUFBLElBQ25CLGNBQWM7QUFBQSxJQUNkLFFBQVU7QUFBQSxJQUNWLFFBQVU7QUFBQSxJQUNWLG1CQUFtQjtBQUFBLElBQ25CLE1BQVE7QUFBQSxJQUNSLEtBQU87QUFBQSxFQUNUO0FBQUEsRUFDQSxpQkFBbUI7QUFBQSxJQUNqQixtQkFBbUI7QUFBQSxJQUNuQixpQkFBaUI7QUFBQSxJQUNqQixlQUFlO0FBQUEsSUFDZixnQkFBZ0I7QUFBQSxJQUNoQixRQUFVO0FBQUEsSUFDVixNQUFRO0FBQUEsSUFDUixPQUFTO0FBQUEsSUFDVCxNQUFRO0FBQUEsSUFDUixZQUFjO0FBQUEsSUFDZCxRQUFVO0FBQUEsSUFDVixVQUFZO0FBQUEsRUFDZDtBQUFBLEVBQ0Esa0JBQW9CO0FBQUEsSUFDbEIsSUFBTTtBQUFBLEVBQ1I7QUFBQSxFQUNBLGVBQWlCO0FBQUEsSUFDZixRQUFVO0FBQUEsRUFDWjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
@@ -226,9 +226,10 @@ var VercelSandboxInstance = class {
|
|
|
226
226
|
return await this.sdk.updateNetworkPolicy(policy);
|
|
227
227
|
}
|
|
228
228
|
};
|
|
229
|
-
function vercelSandbox() {
|
|
229
|
+
function vercelSandbox(defaults) {
|
|
230
230
|
return {
|
|
231
231
|
type: "vercel",
|
|
232
|
+
defaults,
|
|
232
233
|
async create({ agent, setup, record, signal: _signal, log }) {
|
|
233
234
|
const storage = agent.storage;
|
|
234
235
|
const config = setup.config ?? {};
|
|
@@ -321,4 +322,4 @@ function vercelSandbox() {
|
|
|
321
322
|
export {
|
|
322
323
|
vercelSandbox
|
|
323
324
|
};
|
|
324
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3NhbmRib3gvYmluZGluZ3MvdmVyY2VsLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgeyBzdGFydCBhcyBzdGFydFdvcmtmbG93IH0gZnJvbSBcIndvcmtmbG93L2FwaVwiO1xuaW1wb3J0IHR5cGUgeyBTdG9yYWdlIH0gZnJvbSBcIi4uLy4uL3N0b3JhZ2VcIjtcbmltcG9ydCB0eXBlIHsgTG9nZ2VyIH0gZnJvbSBcIi4uLy4uL3V0aWxzL2xvZ2dlclwiO1xuaW1wb3J0IHR5cGUgeyBFeGVjUmVzdWx0LCBTYW5kYm94QmluZGluZywgU2FuZGJveEluc3RhbmNlIH0gZnJvbSBcIi4uL2FkYXB0ZXJcIjtcbmltcG9ydCB0eXBlIHsgTGlmZWN5Y2xlQ29uZmlnIH0gZnJvbSBcIi4vdmVyY2VsLWxpZmVjeWNsZS9zdGVwc1wiO1xuaW1wb3J0IHsgc2FuZGJveExpZmVjeWNsZVdvcmtmbG93IH0gZnJvbSBcIi4vdmVyY2VsLWxpZmVjeWNsZS93b3JrZmxvd1wiO1xuXG5hc3luYyBmdW5jdGlvbiBsb2FkU2FuZGJveFNESygpIHtcbiAgcmV0dXJuIChhd2FpdCBpbXBvcnQoXCJAdmVyY2VsL3NhbmRib3hcIikpLlNhbmRib3g7XG59XG5cbmNvbnN0IE1BWF9USU1FT1VUX01TID0gNSAqIDYwICogNjAgKiAxMDAwOyAvLyA1IGhvdXJzXG5jb25zdCBIT01FX0RJUiA9IFwiL2hvbWUvdmVyY2VsLXNhbmRib3hcIjtcbmNvbnN0IERFRkFVTFRfVkNQVVMgPSAyO1xuXG5leHBvcnQgdHlwZSBWZXJjZWxCaW5kaW5nQ29uZmlnID0ge1xuICBjd2Q/OiBzdHJpbmc7XG4gIHJlc291cmNlcz86IHsgdmNwdXM6IG51bWJlciB9O1xuICBwb3J0cz86IG51bWJlcltdO1xuICBuZXR3b3JrUG9saWN5PzogaW1wb3J0KFwiQHZlcmNlbC9zYW5kYm94XCIpLk5ldHdvcmtQb2xpY3k7XG4gIHNuYXBzaG90SWQ/OiBzdHJpbmc7XG4gIGxpZmVjeWNsZT86IExpZmVjeWNsZUNvbmZpZztcbn07XG5cbmV4cG9ydCB0eXBlIFZlcmNlbEJpbmRpbmdNZXRhZGF0YSA9IHtcbiAgc2FuZGJveElkOiBzdHJpbmc7XG59O1xuXG50eXBlIENyZWF0ZVNhbmRib3hPcHRzID0ge1xuICByZXNvdXJjZXM6IHsgdmNwdXM6IG51bWJlciB9O1xuICBwb3J0cz86IG51bWJlcltdO1xuICBuZXR3b3JrUG9saWN5PzogaW1wb3J0KFwiQHZlcmNlbC9zYW5kYm94XCIpLk5ldHdvcmtQb2xpY3k7XG4gIHNuYXBzaG90SWQ/OiBzdHJpbmc7XG59O1xuXG5mdW5jdGlvbiBpc1NhbmRib3hHb25lRXJyb3IoZTogdW5rbm93bik6IGJvb2xlYW4ge1xuICBpZiAoIShlIGluc3RhbmNlb2YgRXJyb3IpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3Qgc3RhdHVzID1cbiAgICAoZSBhcyB7IHJlc3BvbnNlPzogeyBzdGF0dXM/OiBudW1iZXIgfSB9KS5yZXNwb25zZT8uc3RhdHVzID8/XG4gICAgKGUgYXMgeyBjYXVzZT86IHsgcmVzcG9uc2U/OiB7IHN0YXR1cz86IG51bWJlciB9IH0gfSkuY2F1c2U/LnJlc3BvbnNlXG4gICAgICA/LnN0YXR1cztcblxuICBpZiAoc3RhdHVzID09PSA0MTAgfHwgc3RhdHVzID09PSA0MjIpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0IG1zZyA9IGUubWVzc2FnZSB8fCBTdHJpbmcoZSk7XG4gIHJldHVybiAoXG4gICAgbXNnLmluY2x1ZGVzKFwiRXhwZWN0ZWQgYSBzdHJlYW0gb2YgY29tbWFuZCBkYXRhXCIpIHx8XG4gICAgbXNnLmluY2x1ZGVzKFwiRXhwZWN0ZWQgYSBzdHJlYW0gb2YgbG9nc1wiKVxuICApO1xufVxuXG5jb25zdCBnZXRUZXN0Q3JlZGVudGlhbHMgPSAoKSA9PlxuICBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJ0ZXN0XCJcbiAgICA/IHtcbiAgICAgICAgdG9rZW46IHByb2Nlc3MuZW52LlRFU1RfVkVSQ0VMX1RPS0VOLFxuICAgICAgICB0ZWFtSWQ6IHByb2Nlc3MuZW52LlRFU1RfVkVSQ0VMX1RFQU1fSUQsXG4gICAgICAgIHByb2plY3RJZDogcHJvY2Vzcy5lbnYuVEVTVF9WRVJDRUxfUFJPSkVDVF9JRCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG5hc3luYyBmdW5jdGlvbiBjcmVhdGVTZGsoe1xuICByZXNvdXJjZXMsXG4gIHBvcnRzLFxuICBuZXR3b3JrUG9saWN5LFxuICBzbmFwc2hvdElkLFxufTogQ3JlYXRlU2FuZGJveE9wdHMpIHtcbiAgY29uc3QgU2FuZGJveFNESyA9IGF3YWl0IGxvYWRTYW5kYm94U0RLKCk7XG4gIGNvbnN0IGJhc2UgPSB7XG4gICAgcmVzb3VyY2VzLFxuICAgIHRpbWVvdXQ6IE1BWF9USU1FT1VUX01TLFxuICAgIC4uLihwb3J0cyA/IHsgcG9ydHMgfSA6IHt9KSxcbiAgICAuLi4obmV0d29ya1BvbGljeSA/IHsgbmV0d29ya1BvbGljeSB9IDoge30pLFxuICAgIC4uLmdldFRlc3RDcmVkZW50aWFscygpLFxuICB9O1xuXG4gIGlmIChzbmFwc2hvdElkKSB7XG4gICAgcmV0dXJuIFNhbmRib3hTREsuY3JlYXRlKHtcbiAgICAgIC4uLmJhc2UsXG4gICAgICBzb3VyY2U6IHsgdHlwZTogXCJzbmFwc2hvdFwiIGFzIGNvbnN0LCBzbmFwc2hvdElkIH0sXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gU2FuZGJveFNESy5jcmVhdGUoYmFzZSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVNldHVwU25hcHNob3Qoe1xuICBzYW5kYm94T3B0cyxcbiAgcnVuLFxuICBzdG9yYWdlLFxuICBzbmFwc2hvdFZlcnNpb24sXG4gIGxvZyxcbn06IHtcbiAgc2FuZGJveE9wdHM6IENyZWF0ZVNhbmRib3hPcHRzO1xuICBydW46IChzYW5kYm94OiBTYW5kYm94SW5zdGFuY2UpID0+IFByb21pc2U8dm9pZD47XG4gIHN0b3JhZ2U6IFN0b3JhZ2U7XG4gIHNuYXBzaG90VmVyc2lvbjogc3RyaW5nO1xuICBsb2c6IExvZ2dlcjtcbn0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgbGV0IHRlbXBTZGs6IEF3YWl0ZWQ8UmV0dXJuVHlwZTx0eXBlb2YgY3JlYXRlU2RrPj4gfCBudWxsID0gbnVsbDtcbiAgdHJ5IHtcbiAgICB0ZW1wU2RrID0gYXdhaXQgY3JlYXRlU2RrKHNhbmRib3hPcHRzKTtcbiAgICBjb25zdCB0ZW1wSW5zdGFuY2UgPSBuZXcgVmVyY2VsU2FuZGJveEluc3RhbmNlKHRlbXBTZGspO1xuICAgIGF3YWl0IHJ1bih0ZW1wSW5zdGFuY2UpO1xuICAgIGNvbnN0IHNuYXBzaG90ID0gYXdhaXQgdGVtcFNkay5zbmFwc2hvdCgpO1xuICAgIGF3YWl0IHN0b3JhZ2Uuc2V0dXAuc2V0KHNuYXBzaG90VmVyc2lvbiwge1xuICAgICAgdmVyc2lvbjogc25hcHNob3RWZXJzaW9uLFxuICAgICAgc25hcHNob3RJZDogc25hcHNob3Quc25hcHNob3RJZCxcbiAgICAgIGNyZWF0ZWRBdDogRGF0ZS5ub3coKSxcbiAgICAgIGxhc3RVc2VkQXQ6IG51bGwsXG4gICAgfSk7XG4gICAgYXdhaXQgdGVtcFNkay5zdG9wKCkuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBsb2cuZXJyb3IoXCJmYWlsZWQgdG8gY3JlYXRlIHNldHVwIHNuYXBzaG90XCIsIHtcbiAgICAgIHNuYXBzaG90VmVyc2lvbixcbiAgICAgIGNhdXNlOiBlcnJvcixcbiAgICB9KTtcbiAgICBpZiAodGVtcFNkaykge1xuICAgICAgYXdhaXQgdGVtcFNkay5zdG9wKCkuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cbn1cblxuY2xhc3MgVmVyY2VsU2FuZGJveEluc3RhbmNlIGltcGxlbWVudHMgU2FuZGJveEluc3RhbmNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZGs6IGltcG9ydChcIkB2ZXJjZWwvc2FuZGJveFwiKS5TYW5kYm94O1xuICByZWFkb25seSBjd2Q6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzZGs6IGltcG9ydChcIkB2ZXJjZWwvc2FuZGJveFwiKS5TYW5kYm94LCBjd2Q/OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNkayA9IHNkaztcbiAgICB0aGlzLmN3ZCA9IGN3ZCA/PyBIT01FX0RJUjtcbiAgfVxuXG4gIGFzeW5jIGV4ZWMoe1xuICAgIGNvbW1hbmQsXG4gICAgYXJncyxcbiAgICBjd2QsXG4gICAgZW52LFxuICAgIHN1ZG8sXG4gICAgc2lnbmFsLFxuICB9OiB7XG4gICAgY29tbWFuZDogc3RyaW5nO1xuICAgIGFyZ3M/OiBzdHJpbmdbXTtcbiAgICBjd2Q/OiBzdHJpbmc7XG4gICAgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBzdWRvPzogYm9vbGVhbjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8RXhlY1Jlc3VsdD4ge1xuICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IHRoaXMuc2RrLnJ1bkNvbW1hbmQoe1xuICAgICAgY21kOiBjb21tYW5kLFxuICAgICAgYXJncyxcbiAgICAgIGN3ZDogY3dkID8/IHRoaXMuY3dkLFxuICAgICAgZW52LFxuICAgICAgc3VkbyxcbiAgICAgIHNpZ25hbCxcbiAgICAgIGRldGFjaGVkOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgbGV0IHN0ZG91dCA9IFwiXCI7XG4gICAgbGV0IHN0ZGVyciA9IFwiXCI7XG4gICAgY29uc3QgbG9nQnVmZmVyOiB7IHN0cmVhbTogXCJzdGRvdXRcIiB8IFwic3RkZXJyXCI7IGRhdGE6IHN0cmluZyB9W10gPSBbXTtcbiAgICBjb25zdCBzdGF0ZSA9IHtcbiAgICAgIHJlc29sdmU6IG51bGwgYXMgKCgpID0+IHZvaWQpIHwgbnVsbCxcbiAgICAgIGNvbnN1bWVkOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgY29uc3QgY29uc3VtZUxvZ3MgPSAoYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgZm9yIGF3YWl0IChjb25zdCBlbnRyeSBvZiBvdXRwdXQubG9ncygpKSB7XG4gICAgICAgICAgaWYgKGVudHJ5LnN0cmVhbSA9PT0gXCJzdGRvdXRcIikge1xuICAgICAgICAgICAgc3Rkb3V0ICs9IGVudHJ5LmRhdGE7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0ZGVyciArPSBlbnRyeS5kYXRhO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxvZ0J1ZmZlci5wdXNoKGVudHJ5KTtcbiAgICAgICAgICBzdGF0ZS5yZXNvbHZlPy4oKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIFNhbmRib3ggbWF5IGhhdmUgYmVlbiBzdG9wcGVkIFx1MjAxNCBsb2dzIGVuZHBvaW50IHJldHVybnMgNDIyXG4gICAgICB9XG4gICAgICBzdGF0ZS5jb25zdW1lZCA9IHRydWU7XG4gICAgICBzdGF0ZS5yZXNvbHZlPy4oKTtcbiAgICB9KSgpO1xuXG4gICAgYXN5bmMgZnVuY3Rpb24qIGxvZ3MoKTogQXN5bmNJdGVyYWJsZTx7XG4gICAgICBzdHJlYW06IFwic3Rkb3V0XCIgfCBcInN0ZGVyclwiO1xuICAgICAgZGF0YTogc3RyaW5nO1xuICAgIH0+IHtcbiAgICAgIGxldCBpbmRleCA9IDA7XG4gICAgICB3aGlsZSAoIXN0YXRlLmNvbnN1bWVkIHx8IGluZGV4IDwgbG9nQnVmZmVyLmxlbmd0aCkge1xuICAgICAgICBpZiAoaW5kZXggPCBsb2dCdWZmZXIubGVuZ3RoKSB7XG4gICAgICAgICAgeWllbGQgbG9nQnVmZmVyW2luZGV4KytdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyKSA9PiB7XG4gICAgICAgICAgICBzdGF0ZS5yZXNvbHZlID0gcjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBzdGF0ZS5yZXNvbHZlID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGNvbnN1bWVMb2dzLnRoZW4oYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZmluaXNoZWQgPSBhd2FpdCBvdXRwdXQud2FpdCgpO1xuICAgICAgICByZXR1cm4geyBzdGRvdXQsIHN0ZGVyciwgZXhpdENvZGU6IGZpbmlzaGVkLmV4aXRDb2RlIH07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmIChpc1NhbmRib3hHb25lRXJyb3IoZSkpIHtcbiAgICAgICAgICByZXR1cm4geyBzdGRvdXQsIHN0ZGVyciwgZXhpdENvZGU6IDEgfTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHsgY29tbWFuZElkOiBvdXRwdXQuY21kSWQsIGxvZ3MsIHJlc3VsdCB9O1xuICB9XG5cbiAgYXN5bmMgcmVhZEZpbGUoe1xuICAgIHBhdGg6IGZpbGVQYXRoLFxuICB9OiB7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxCdWZmZXIgfCBudWxsPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnNkay5yZWFkRmlsZVRvQnVmZmVyKHsgcGF0aDogZmlsZVBhdGgsIGN3ZDogdGhpcy5jd2QgfSk7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBhc3luYyB3cml0ZUZpbGVzKHtcbiAgICBmaWxlcyxcbiAgICBkZXN0UGF0aCxcbiAgfToge1xuICAgIGZpbGVzOiB7IHBhdGg6IHN0cmluZzsgY29udGVudDogc3RyaW5nIHwgQnVmZmVyIH1bXTtcbiAgICBkZXN0UGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGZpbGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGggPSBhd2FpdCBpbXBvcnQoXCJub2RlOnBhdGhcIik7XG4gICAgY29uc3QgbmF0aXZlRmlsZXMgPSBmaWxlcy5tYXAoKGZpbGUpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5wb3NpeC5qb2luKGRlc3RQYXRoLCBmaWxlLnBhdGgpO1xuICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gcGF0aC5wb3NpeC5pc0Fic29sdXRlKGZpbGVQYXRoKVxuICAgICAgICA/IGZpbGVQYXRoXG4gICAgICAgIDogcGF0aC5wb3NpeC5qb2luKHRoaXMuY3dkLCBmaWxlUGF0aCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYXRoOiBhYnNvbHV0ZVBhdGgsXG4gICAgICAgIGNvbnRlbnQ6XG4gICAgICAgICAgdHlwZW9mIGZpbGUuY29udGVudCA9PT0gXCJzdHJpbmdcIlxuICAgICAgICAgICAgPyBCdWZmZXIuZnJvbShmaWxlLmNvbnRlbnQpXG4gICAgICAgICAgICA6IGZpbGUuY29udGVudCxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICBhd2FpdCB0aGlzLnNkay53cml0ZUZpbGVzKG5hdGl2ZUZpbGVzKTtcblxuICAgIGNvbnN0IHNoZWxsU2NyaXB0cyA9IG5hdGl2ZUZpbGVzLmZpbHRlcigoZikgPT4gZi5wYXRoLmVuZHNXaXRoKFwiLnNoXCIpKTtcbiAgICBpZiAoc2hlbGxTY3JpcHRzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZXhlYyh7XG4gICAgICAgIGNvbW1hbmQ6IFwiY2htb2RcIixcbiAgICAgICAgYXJnczogW1wiK3hcIiwgLi4uc2hlbGxTY3JpcHRzLm1hcCgoZikgPT4gZi5wYXRoKV0sXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IHJlc3VsdC5yZXN1bHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogc3luY2hyb25vdXMgU0RLIGNhbGxcbiAgYXN5bmMgZ2V0RG9tYWluKHtcbiAgICBwb3J0LFxuICB9OiB7XG4gICAgcG9ydDogbnVtYmVyO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5zZGsuZG9tYWluKHBvcnQpO1xuICB9XG5cbiAgYXN5bmMga2lsbCh7XG4gICAgY29tbWFuZElkLFxuICB9OiB7XG4gICAgY29tbWFuZElkOiBzdHJpbmc7XG4gICAgc2lnbmFsPzogQWJvcnRTaWduYWw7XG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjbWQgPSBhd2FpdCB0aGlzLnNkay5nZXRDb21tYW5kKGNvbW1hbmRJZCk7XG4gICAgYXdhaXQgY21kLmtpbGwoKTtcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IHN5bmNocm9ub3VzIFNESyBnZXR0ZXJcbiAgYXN5bmMgZ2V0U3RhdHVzKCk6IFByb21pc2U8XG4gICAgXCJwZW5kaW5nXCIgfCBcInJ1bm5pbmdcIiB8IFwic3RvcHBpbmdcIiB8IFwic3RvcHBlZFwiIHwgXCJmYWlsZWRcIlxuICA+IHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLnNkay5zdGF0dXM7XG4gICAgLy8gTWFwIFNESy1vbmx5IHN0YXR1c2VzIHRvIG91ciBpbnRlcmZhY2UncyB1bmlvblxuICAgIGlmIChzdGF0dXMgPT09IFwic25hcHNob3R0aW5nXCIpIHtcbiAgICAgIHJldHVybiBcInN0b3BwaW5nXCI7XG4gICAgfVxuICAgIGlmIChzdGF0dXMgPT09IFwiYWJvcnRlZFwiKSB7XG4gICAgICByZXR1cm4gXCJmYWlsZWRcIjtcbiAgICB9XG4gICAgcmV0dXJuIHN0YXR1cztcbiAgfVxuXG4gIGFzeW5jIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFRoZSBWZXJjZWwgU0RLIGRvZXNuJ3QgaGF2ZSBhIHJlc3VtZSBtZXRob2QuXG4gICAgLy8gUnVuIGEgbm8tb3AgY29tbWFuZCB0byB2ZXJpZnkgdGhlIHNhbmRib3ggaXMgcmVhY2hhYmxlLlxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZXhlYyh7IGNvbW1hbmQ6IFwidHJ1ZVwiIH0pO1xuICAgIGF3YWl0IHJlc3VsdC5yZXN1bHQ7XG4gIH1cblxuICBhc3luYyBzdG9wKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2RrLnN0b3AoKTtcbiAgfVxuXG4gIGFzeW5jIHNuYXBzaG90KCk6IFByb21pc2U8eyBzbmFwc2hvdElkOiBzdHJpbmcgfT4ge1xuICAgIGNvbnN0IHNuYXAgPSBhd2FpdCB0aGlzLnNkay5zbmFwc2hvdCgpO1xuICAgIHJldHVybiB7IHNuYXBzaG90SWQ6IHNuYXAuc25hcHNob3RJZCB9O1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlTmV0d29ya1BvbGljeSh7XG4gICAgcG9saWN5LFxuICB9OiB7XG4gICAgcG9saWN5OiBpbXBvcnQoXCJAdmVyY2VsL3NhbmRib3hcIikuTmV0d29ya1BvbGljeTtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8aW1wb3J0KFwiQHZlcmNlbC9zYW5kYm94XCIpLk5ldHdvcmtQb2xpY3k+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zZGsudXBkYXRlTmV0d29ya1BvbGljeShwb2xpY3kpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJjZWxTYW5kYm94KCk6IFNhbmRib3hCaW5kaW5nPFxuICBcInZlcmNlbFwiLFxuICBWZXJjZWxCaW5kaW5nQ29uZmlnLFxuICBWZXJjZWxCaW5kaW5nTWV0YWRhdGFcbj4ge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IFwidmVyY2VsXCIsXG4gICAgYXN5bmMgY3JlYXRlKHsgYWdlbnQsIHNldHVwLCByZWNvcmQsIHNpZ25hbDogX3NpZ25hbCwgbG9nIH0pIHtcbiAgICAgIGNvbnN0IHN0b3JhZ2UgPSBhZ2VudC5zdG9yYWdlO1xuICAgICAgY29uc3QgY29uZmlnID0gc2V0dXAuY29uZmlnID8/IHt9O1xuICAgICAgY29uc3QgY3dkID0gY29uZmlnLmN3ZDtcbiAgICAgIGNvbnN0IHJlc291cmNlcyA9IGNvbmZpZy5yZXNvdXJjZXMgPz8geyB2Y3B1czogREVGQVVMVF9WQ1BVUyB9O1xuICAgICAgY29uc3QgcG9ydHMgPSBjb25maWcucG9ydHM7XG4gICAgICBjb25zdCBuZXR3b3JrUG9saWN5ID1cbiAgICAgICAgY29uZmlnLm5ldHdvcmtQb2xpY3kgPz8gc2V0dXAubmV0d29ya1BvbGljeSA/PyB1bmRlZmluZWQ7XG5cbiAgICAgIGNvbnN0IHNhbmRib3hPcHRzOiBDcmVhdGVTYW5kYm94T3B0cyA9IHtcbiAgICAgICAgcmVzb3VyY2VzLFxuICAgICAgICBwb3J0cyxcbiAgICAgICAgbmV0d29ya1BvbGljeSxcbiAgICAgICAgc25hcHNob3RJZDogY29uZmlnLnNuYXBzaG90SWQsXG4gICAgICB9O1xuXG4gICAgICBjb25zdCBfc3RhcnRMaWZlY3ljbGUgPSAodmVyY2VsU2FuZGJveElkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKCFyZWNvcmQpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc3RhcnRXb3JrZmxvdyhzYW5kYm94TGlmZWN5Y2xlV29ya2Zsb3csIFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICBhZ2VudCxcbiAgICAgICAgICAgICAgc2FuZGJveElkOiByZWNvcmQuaWQsXG4gICAgICAgICAgICAgIHZlcmNlbFNhbmRib3hJZCxcbiAgICAgICAgICAgICAgY29uZmlnOiBjb25maWcubGlmZWN5Y2xlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICBdKS5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgIGxvZy5lcnJvcihcImZhaWxlZCB0byBzdGFydCBsaWZlY3ljbGUgd29ya2Zsb3dcIiwgeyBjYXVzZTogZSB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICBpZiAoc2V0dXAudmVyc2lvbikge1xuICAgICAgICBjb25zdCBleGlzdGluZyA9IGF3YWl0IHN0b3JhZ2Uuc2V0dXAuZ2V0KHNldHVwLnZlcnNpb24pO1xuICAgICAgICBpZiAoZXhpc3Rpbmc/LnNuYXBzaG90SWQpIHtcbiAgICAgICAgICBjb25zdCBzZGsgPSBhd2FpdCBjcmVhdGVTZGsoe1xuICAgICAgICAgICAgLi4uc2FuZGJveE9wdHMsXG4gICAgICAgICAgICBzbmFwc2hvdElkOiBleGlzdGluZy5zbmFwc2hvdElkLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGNvbnN0IGluc3RhbmNlID0gbmV3IFZlcmNlbFNhbmRib3hJbnN0YW5jZShzZGssIGN3ZCk7XG5cbiAgICAgICAgICBzdG9yYWdlLnNldHVwXG4gICAgICAgICAgICAuc2V0KHNldHVwLnZlcnNpb24sIHtcbiAgICAgICAgICAgICAgLi4uZXhpc3RpbmcsXG4gICAgICAgICAgICAgIHZlcnNpb246IHNldHVwLnZlcnNpb24sXG4gICAgICAgICAgICAgIGxhc3RVc2VkQXQ6IERhdGUubm93KCksXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHVuZGVmaW5lZCk7XG5cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaW5zdGFuY2UsXG4gICAgICAgICAgICBtZXRhZGF0YTogeyBzYW5kYm94SWQ6IHNkay5zYW5kYm94SWQgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChzZXR1cC5ydW4pIHtcbiAgICAgICAgaWYgKCFzZXR1cC52ZXJzaW9uKSB7XG4gICAgICAgICAgbG9nLmVycm9yKFwic2V0dXAucnVuIHByb3ZpZGVkIHdpdGhvdXQgc2V0dXAudmVyc2lvblwiLCB7IHNldHVwIH0pO1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcInNldHVwLnJ1biBwcm92aWRlZCB3aXRob3V0IHNldHVwLnZlcnNpb25cIik7XG4gICAgICAgIH1cbiAgICAgICAgY3JlYXRlU2V0dXBTbmFwc2hvdCh7XG4gICAgICAgICAgc2FuZGJveE9wdHMsXG4gICAgICAgICAgcnVuOiBzZXR1cC5ydW4sXG4gICAgICAgICAgc3RvcmFnZSxcbiAgICAgICAgICBzbmFwc2hvdFZlcnNpb246IHNldHVwLnZlcnNpb24sXG4gICAgICAgICAgbG9nLFxuICAgICAgICB9KS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICBsb2cuZXJyb3IoXCJiYWNrZ3JvdW5kIHNldHVwIHNuYXBzaG90IGZhaWxlZFwiLCB7IGNhdXNlOiBlcnJvciB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3Qgc2RrID0gYXdhaXQgY3JlYXRlU2RrKHNhbmRib3hPcHRzKTtcbiAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgVmVyY2VsU2FuZGJveEluc3RhbmNlKHNkaywgY3dkKTtcbiAgICAgICAgYXdhaXQgc2V0dXAucnVuKGluc3RhbmNlKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGluc3RhbmNlLFxuICAgICAgICAgIG1ldGFkYXRhOiB7IHNhbmRib3hJZDogc2RrLnNhbmRib3hJZCB9LFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzZGsgPSBhd2FpdCBjcmVhdGVTZGsoc2FuZGJveE9wdHMpO1xuICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgVmVyY2VsU2FuZGJveEluc3RhbmNlKHNkaywgY3dkKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaW5zdGFuY2UsXG4gICAgICAgIG1ldGFkYXRhOiB7IHNhbmRib3hJZDogc2RrLnNhbmRib3hJZCB9LFxuICAgICAgfTtcbiAgICB9LFxuXG4gICAgYXN5bmMgY29ubmVjdCh7IG1ldGFkYXRhIH0pIHtcbiAgICAgIGNvbnN0IFNhbmRib3hTREsgPSBhd2FpdCBsb2FkU2FuZGJveFNESygpO1xuICAgICAgY29uc3Qgc2RrID0gYXdhaXQgU2FuZGJveFNESy5nZXQoe1xuICAgICAgICBzYW5kYm94SWQ6IG1ldGFkYXRhLnNhbmRib3hJZCxcbiAgICAgICAgLi4uZ2V0VGVzdENyZWRlbnRpYWxzKCksXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBuZXcgVmVyY2VsU2FuZGJveEluc3RhbmNlKHNkayk7XG4gICAgfSxcbiAgfTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7O0FBQUEsU0FBUyxTQUFTLHFCQUFxQjtBQU92QyxlQUFlLGlCQUFpQjtBQUM5QixVQUFRLE1BQU0sT0FBTyxpQkFBaUIsR0FBRztBQUMzQztBQUVBLElBQU0saUJBQWlCLElBQUksS0FBSyxLQUFLO0FBQ3JDLElBQU0sV0FBVztBQUNqQixJQUFNLGdCQUFnQjtBQXNCdEIsU0FBUyxtQkFBbUIsR0FBcUI7QUFDL0MsTUFBSSxFQUFFLGFBQWEsUUFBUTtBQUN6QixXQUFPO0FBQUEsRUFDVDtBQUVBLFFBQU0sU0FDSCxFQUF5QyxVQUFVLFVBQ25ELEVBQXFELE9BQU8sVUFDekQ7QUFFTixNQUFJLFdBQVcsT0FBTyxXQUFXLEtBQUs7QUFDcEMsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLE1BQU0sRUFBRSxXQUFXLE9BQU8sQ0FBQztBQUNqQyxTQUNFLElBQUksU0FBUyxtQ0FBbUMsS0FDaEQsSUFBSSxTQUFTLDJCQUEyQjtBQUU1QztBQUVBLElBQU0scUJBQXFCLE1BQ3pCLFFBQVEsSUFBSSxhQUFhLFNBQ3JCO0FBQUEsRUFDRSxPQUFPLFFBQVEsSUFBSTtBQUFBLEVBQ25CLFFBQVEsUUFBUSxJQUFJO0FBQUEsRUFDcEIsV0FBVyxRQUFRLElBQUk7QUFDekIsSUFDQSxDQUFDO0FBRVAsZUFBZSxVQUFVO0FBQUEsRUFDdkI7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFDRixHQUFzQjtBQUNwQixRQUFNLGFBQWEsTUFBTSxlQUFlO0FBQ3hDLFFBQU0sT0FBTztBQUFBLElBQ1g7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULEdBQUksUUFBUSxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQUEsSUFD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QUksTUFBTSxTQUFTO0FBQUEsWUFDbEIsR0FBRztBQUFBLFlBQ0gsU0FBUyxNQUFNO0FBQUEsWUFDZixZQUFZLEtBQUssSUFBSTtBQUFBLFVBQ3ZCLENBQUMsRUFDQSxNQUFNLE1BQU0sTUFBUztBQUV4QixpQkFBTztBQUFBLFlBQ0wsVUFBQUM7QUFBQSxZQUNBLFVBQVUsRUFBRSxXQUFXRCxLQUFJLFVBQVU7QUFBQSxVQUN2QztBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBRUEsVUFBSSxNQUFNLEtBQUs7QUFDYixZQUFJLENBQUMsTUFBTSxTQUFTO0FBQ2xCLGNBQUksTUFBTSw0Q0FBNEMsRUFBRSxNQUFNLENBQUM7QUFDL0QsZ0JBQU0sSUFBSSxNQUFNLDBDQUEwQztBQUFBLFFBQzVEO0FBQ0EsNEJBQW9CO0FBQUEsVUFDbEI7QUFBQSxVQUNBLEtBQUssTUFBTTtBQUFBLFVBQ1g7QUFBQSxVQUNBLGlCQUFpQixNQUFNO0FBQUEsVUFDdkI7QUFBQSxRQUNGLENBQUMsRUFBRSxNQUFNLENBQUMsVUFBVTtBQUNsQixjQUFJLE1BQU0sb0NBQW9DLEVBQUUsT0FBTyxNQUFNLENBQUM7QUFBQSxRQUNoRSxDQUFDO0FBRUQsY0FBTUEsT0FBTSxNQUFNLFVBQVUsV0FBVztBQUN2QyxjQUFNQyxZQUFXLElBQUksc0JBQXNCRCxNQUFLLEdBQUc7QUFDbkQsY0FBTSxNQUFNLElBQUlDLFNBQVE7QUFFeEIsZUFBTztBQUFBLFVBQ0wsVUFBQUE7QUFBQSxVQUNBLFVBQVUsRUFBRSxXQUFXRCxLQUFJLFVBQVU7QUFBQSxRQUN2QztBQUFBLE1BQ0Y7QUFFQSxZQUFNLE1BQU0sTUFBTSxVQUFVLFdBQVc7QUFDdkMsWUFBTSxXQUFXLElBQUksc0JBQXNCLEtBQUssR0FBRztBQUVuRCxhQUFPO0FBQUEsUUFDTDtBQUFBLFFBQ0EsVUFBVSxFQUFFLFdBQVcsSUFBSSxVQUFVO0FBQUEsTUFDdkM7QUFBQSxJQUNGO0FBQUEsSUFFQSxNQUFNLFFBQVEsRUFBRSxTQUFTLEdBQUc7QUFDMUIsWUFBTSxhQUFhLE1BQU0sZUFBZTtBQUN4QyxZQUFNLE1BQU0sTUFBTSxXQUFXLElBQUk7QUFBQSxRQUMvQixXQUFXLFNBQVM7QUFBQSxRQUNwQixHQUFHLG1CQUFtQjtBQUFBLE1BQ3hCLENBQUM7QUFDRCxhQUFPLElBQUksc0JBQXNCLEdBQUc7QUFBQSxJQUN0QztBQUFBLEVBQ0Y7QUFDRjsiLAogICJuYW1lcyI6IFsic2RrIiwgImluc3RhbmNlIl0KfQo=
|
|
325
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3NhbmRib3gvYmluZGluZ3MvdmVyY2VsLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgeyBzdGFydCBhcyBzdGFydFdvcmtmbG93IH0gZnJvbSBcIndvcmtmbG93L2FwaVwiO1xuaW1wb3J0IHR5cGUgeyBTdG9yYWdlIH0gZnJvbSBcIi4uLy4uL3N0b3JhZ2VcIjtcbmltcG9ydCB0eXBlIHsgTG9nZ2VyIH0gZnJvbSBcIi4uLy4uL3V0aWxzL2xvZ2dlclwiO1xuaW1wb3J0IHR5cGUgeyBFeGVjUmVzdWx0LCBTYW5kYm94QmluZGluZywgU2FuZGJveEluc3RhbmNlIH0gZnJvbSBcIi4uL2FkYXB0ZXJcIjtcbmltcG9ydCB0eXBlIHsgTGlmZWN5Y2xlQ29uZmlnIH0gZnJvbSBcIi4vdmVyY2VsLWxpZmVjeWNsZS9zdGVwc1wiO1xuaW1wb3J0IHsgc2FuZGJveExpZmVjeWNsZVdvcmtmbG93IH0gZnJvbSBcIi4vdmVyY2VsLWxpZmVjeWNsZS93b3JrZmxvd1wiO1xuXG5hc3luYyBmdW5jdGlvbiBsb2FkU2FuZGJveFNESygpIHtcbiAgcmV0dXJuIChhd2FpdCBpbXBvcnQoXCJAdmVyY2VsL3NhbmRib3hcIikpLlNhbmRib3g7XG59XG5cbmNvbnN0IE1BWF9USU1FT1VUX01TID0gNSAqIDYwICogNjAgKiAxMDAwOyAvLyA1IGhvdXJzXG5jb25zdCBIT01FX0RJUiA9IFwiL2hvbWUvdmVyY2VsLXNhbmRib3hcIjtcbmNvbnN0IERFRkFVTFRfVkNQVVMgPSAyO1xuXG5leHBvcnQgdHlwZSBWZXJjZWxCaW5kaW5nQ29uZmlnID0ge1xuICBjd2Q/OiBzdHJpbmc7XG4gIHJlc291cmNlcz86IHsgdmNwdXM6IG51bWJlciB9O1xuICBwb3J0cz86IG51bWJlcltdO1xuICBuZXR3b3JrUG9saWN5PzogaW1wb3J0KFwiQHZlcmNlbC9zYW5kYm94XCIpLk5ldHdvcmtQb2xpY3k7XG4gIHNuYXBzaG90SWQ/OiBzdHJpbmc7XG4gIGxpZmVjeWNsZT86IExpZmVjeWNsZUNvbmZpZztcbn07XG5cbmV4cG9ydCB0eXBlIFZlcmNlbEJpbmRpbmdNZXRhZGF0YSA9IHtcbiAgc2FuZGJveElkOiBzdHJpbmc7XG59O1xuXG50eXBlIENyZWF0ZVNhbmRib3hPcHRzID0ge1xuICByZXNvdXJjZXM6IHsgdmNwdXM6IG51bWJlciB9O1xuICBwb3J0cz86IG51bWJlcltdO1xuICBuZXR3b3JrUG9saWN5PzogaW1wb3J0KFwiQHZlcmNlbC9zYW5kYm94XCIpLk5ldHdvcmtQb2xpY3k7XG4gIHNuYXBzaG90SWQ/OiBzdHJpbmc7XG59O1xuXG5mdW5jdGlvbiBpc1NhbmRib3hHb25lRXJyb3IoZTogdW5rbm93bik6IGJvb2xlYW4ge1xuICBpZiAoIShlIGluc3RhbmNlb2YgRXJyb3IpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3Qgc3RhdHVzID1cbiAgICAoZSBhcyB7IHJlc3BvbnNlPzogeyBzdGF0dXM/OiBudW1iZXIgfSB9KS5yZXNwb25zZT8uc3RhdHVzID8/XG4gICAgKGUgYXMgeyBjYXVzZT86IHsgcmVzcG9uc2U/OiB7IHN0YXR1cz86IG51bWJlciB9IH0gfSkuY2F1c2U/LnJlc3BvbnNlXG4gICAgICA/LnN0YXR1cztcblxuICBpZiAoc3RhdHVzID09PSA0MTAgfHwgc3RhdHVzID09PSA0MjIpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0IG1zZyA9IGUubWVzc2FnZSB8fCBTdHJpbmcoZSk7XG4gIHJldHVybiAoXG4gICAgbXNnLmluY2x1ZGVzKFwiRXhwZWN0ZWQgYSBzdHJlYW0gb2YgY29tbWFuZCBkYXRhXCIpIHx8XG4gICAgbXNnLmluY2x1ZGVzKFwiRXhwZWN0ZWQgYSBzdHJlYW0gb2YgbG9nc1wiKVxuICApO1xufVxuXG5jb25zdCBnZXRUZXN0Q3JlZGVudGlhbHMgPSAoKSA9PlxuICBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJ0ZXN0XCJcbiAgICA/IHtcbiAgICAgICAgdG9rZW46IHByb2Nlc3MuZW52LlRFU1RfVkVSQ0VMX1RPS0VOLFxuICAgICAgICB0ZWFtSWQ6IHByb2Nlc3MuZW52LlRFU1RfVkVSQ0VMX1RFQU1fSUQsXG4gICAgICAgIHByb2plY3RJZDogcHJvY2Vzcy5lbnYuVEVTVF9WRVJDRUxfUFJPSkVDVF9JRCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG5hc3luYyBmdW5jdGlvbiBjcmVhdGVTZGsoe1xuICByZXNvdXJjZXMsXG4gIHBvcnRzLFxuICBuZXR3b3JrUG9saWN5LFxuICBzbmFwc2hvdElkLFxufTogQ3JlYXRlU2FuZGJveE9wdHMpIHtcbiAgY29uc3QgU2FuZGJveFNESyA9IGF3YWl0IGxvYWRTYW5kYm94U0RLKCk7XG4gIGNvbnN0IGJhc2UgPSB7XG4gICAgcmVzb3VyY2VzLFxuICAgIHRpbWVvdXQ6IE1BWF9USU1FT1VUX01TLFxuICAgIC4uLihwb3J0cyA/IHsgcG9ydHMgfSA6IHt9KSxcbiAgICAuLi4obmV0d29ya1BvbGljeSA/IHsgbmV0d29ya1BvbGljeSB9IDoge30pLFxuICAgIC4uLmdldFRlc3RDcmVkZW50aWFscygpLFxuICB9O1xuXG4gIGlmIChzbmFwc2hvdElkKSB7XG4gICAgcmV0dXJuIFNhbmRib3hTREsuY3JlYXRlKHtcbiAgICAgIC4uLmJhc2UsXG4gICAgICBzb3VyY2U6IHsgdHlwZTogXCJzbmFwc2hvdFwiIGFzIGNvbnN0LCBzbmFwc2hvdElkIH0sXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gU2FuZGJveFNESy5jcmVhdGUoYmFzZSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVNldHVwU25hcHNob3Qoe1xuICBzYW5kYm94T3B0cyxcbiAgcnVuLFxuICBzdG9yYWdlLFxuICBzbmFwc2hvdFZlcnNpb24sXG4gIGxvZyxcbn06IHtcbiAgc2FuZGJveE9wdHM6IENyZWF0ZVNhbmRib3hPcHRzO1xuICBydW46IChzYW5kYm94OiBTYW5kYm94SW5zdGFuY2UpID0+IFByb21pc2U8dm9pZD47XG4gIHN0b3JhZ2U6IFN0b3JhZ2U7XG4gIHNuYXBzaG90VmVyc2lvbjogc3RyaW5nO1xuICBsb2c6IExvZ2dlcjtcbn0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgbGV0IHRlbXBTZGs6IEF3YWl0ZWQ8UmV0dXJuVHlwZTx0eXBlb2YgY3JlYXRlU2RrPj4gfCBudWxsID0gbnVsbDtcbiAgdHJ5IHtcbiAgICB0ZW1wU2RrID0gYXdhaXQgY3JlYXRlU2RrKHNhbmRib3hPcHRzKTtcbiAgICBjb25zdCB0ZW1wSW5zdGFuY2UgPSBuZXcgVmVyY2VsU2FuZGJveEluc3RhbmNlKHRlbXBTZGspO1xuICAgIGF3YWl0IHJ1bih0ZW1wSW5zdGFuY2UpO1xuICAgIGNvbnN0IHNuYXBzaG90ID0gYXdhaXQgdGVtcFNkay5zbmFwc2hvdCgpO1xuICAgIGF3YWl0IHN0b3JhZ2Uuc2V0dXAuc2V0KHNuYXBzaG90VmVyc2lvbiwge1xuICAgICAgdmVyc2lvbjogc25hcHNob3RWZXJzaW9uLFxuICAgICAgc25hcHNob3RJZDogc25hcHNob3Quc25hcHNob3RJZCxcbiAgICAgIGNyZWF0ZWRBdDogRGF0ZS5ub3coKSxcbiAgICAgIGxhc3RVc2VkQXQ6IG51bGwsXG4gICAgfSk7XG4gICAgYXdhaXQgdGVtcFNkay5zdG9wKCkuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBsb2cuZXJyb3IoXCJmYWlsZWQgdG8gY3JlYXRlIHNldHVwIHNuYXBzaG90XCIsIHtcbiAgICAgIHNuYXBzaG90VmVyc2lvbixcbiAgICAgIGNhdXNlOiBlcnJvcixcbiAgICB9KTtcbiAgICBpZiAodGVtcFNkaykge1xuICAgICAgYXdhaXQgdGVtcFNkay5zdG9wKCkuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcbiAgICB9XG4gIH1cbn1cblxuY2xhc3MgVmVyY2VsU2FuZGJveEluc3RhbmNlIGltcGxlbWVudHMgU2FuZGJveEluc3RhbmNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzZGs6IGltcG9ydChcIkB2ZXJjZWwvc2FuZGJveFwiKS5TYW5kYm94O1xuICByZWFkb25seSBjd2Q6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzZGs6IGltcG9ydChcIkB2ZXJjZWwvc2FuZGJveFwiKS5TYW5kYm94LCBjd2Q/OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNkayA9IHNkaztcbiAgICB0aGlzLmN3ZCA9IGN3ZCA/PyBIT01FX0RJUjtcbiAgfVxuXG4gIGFzeW5jIGV4ZWMoe1xuICAgIGNvbW1hbmQsXG4gICAgYXJncyxcbiAgICBjd2QsXG4gICAgZW52LFxuICAgIHN1ZG8sXG4gICAgc2lnbmFsLFxuICB9OiB7XG4gICAgY29tbWFuZDogc3RyaW5nO1xuICAgIGFyZ3M/OiBzdHJpbmdbXTtcbiAgICBjd2Q/OiBzdHJpbmc7XG4gICAgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBzdWRvPzogYm9vbGVhbjtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8RXhlY1Jlc3VsdD4ge1xuICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IHRoaXMuc2RrLnJ1bkNvbW1hbmQoe1xuICAgICAgY21kOiBjb21tYW5kLFxuICAgICAgYXJncyxcbiAgICAgIGN3ZDogY3dkID8/IHRoaXMuY3dkLFxuICAgICAgZW52LFxuICAgICAgc3VkbyxcbiAgICAgIHNpZ25hbCxcbiAgICAgIGRldGFjaGVkOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgbGV0IHN0ZG91dCA9IFwiXCI7XG4gICAgbGV0IHN0ZGVyciA9IFwiXCI7XG4gICAgY29uc3QgbG9nQnVmZmVyOiB7IHN0cmVhbTogXCJzdGRvdXRcIiB8IFwic3RkZXJyXCI7IGRhdGE6IHN0cmluZyB9W10gPSBbXTtcbiAgICBjb25zdCBzdGF0ZSA9IHtcbiAgICAgIHJlc29sdmU6IG51bGwgYXMgKCgpID0+IHZvaWQpIHwgbnVsbCxcbiAgICAgIGNvbnN1bWVkOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgY29uc3QgY29uc3VtZUxvZ3MgPSAoYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgZm9yIGF3YWl0IChjb25zdCBlbnRyeSBvZiBvdXRwdXQubG9ncygpKSB7XG4gICAgICAgICAgaWYgKGVudHJ5LnN0cmVhbSA9PT0gXCJzdGRvdXRcIikge1xuICAgICAgICAgICAgc3Rkb3V0ICs9IGVudHJ5LmRhdGE7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0ZGVyciArPSBlbnRyeS5kYXRhO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxvZ0J1ZmZlci5wdXNoKGVudHJ5KTtcbiAgICAgICAgICBzdGF0ZS5yZXNvbHZlPy4oKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIFNhbmRib3ggbWF5IGhhdmUgYmVlbiBzdG9wcGVkIFx1MjAxNCBsb2dzIGVuZHBvaW50IHJldHVybnMgNDIyXG4gICAgICB9XG4gICAgICBzdGF0ZS5jb25zdW1lZCA9IHRydWU7XG4gICAgICBzdGF0ZS5yZXNvbHZlPy4oKTtcbiAgICB9KSgpO1xuXG4gICAgYXN5bmMgZnVuY3Rpb24qIGxvZ3MoKTogQXN5bmNJdGVyYWJsZTx7XG4gICAgICBzdHJlYW06IFwic3Rkb3V0XCIgfCBcInN0ZGVyclwiO1xuICAgICAgZGF0YTogc3RyaW5nO1xuICAgIH0+IHtcbiAgICAgIGxldCBpbmRleCA9IDA7XG4gICAgICB3aGlsZSAoIXN0YXRlLmNvbnN1bWVkIHx8IGluZGV4IDwgbG9nQnVmZmVyLmxlbmd0aCkge1xuICAgICAgICBpZiAoaW5kZXggPCBsb2dCdWZmZXIubGVuZ3RoKSB7XG4gICAgICAgICAgeWllbGQgbG9nQnVmZmVyW2luZGV4KytdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyKSA9PiB7XG4gICAgICAgICAgICBzdGF0ZS5yZXNvbHZlID0gcjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBzdGF0ZS5yZXNvbHZlID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGNvbnN1bWVMb2dzLnRoZW4oYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZmluaXNoZWQgPSBhd2FpdCBvdXRwdXQud2FpdCgpO1xuICAgICAgICByZXR1cm4geyBzdGRvdXQsIHN0ZGVyciwgZXhpdENvZGU6IGZpbmlzaGVkLmV4aXRDb2RlIH07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmIChpc1NhbmRib3hHb25lRXJyb3IoZSkpIHtcbiAgICAgICAgICByZXR1cm4geyBzdGRvdXQsIHN0ZGVyciwgZXhpdENvZGU6IDEgfTtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHsgY29tbWFuZElkOiBvdXRwdXQuY21kSWQsIGxvZ3MsIHJlc3VsdCB9O1xuICB9XG5cbiAgYXN5bmMgcmVhZEZpbGUoe1xuICAgIHBhdGg6IGZpbGVQYXRoLFxuICB9OiB7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxCdWZmZXIgfCBudWxsPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLnNkay5yZWFkRmlsZVRvQnVmZmVyKHsgcGF0aDogZmlsZVBhdGgsIGN3ZDogdGhpcy5jd2QgfSk7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBhc3luYyB3cml0ZUZpbGVzKHtcbiAgICBmaWxlcyxcbiAgICBkZXN0UGF0aCxcbiAgfToge1xuICAgIGZpbGVzOiB7IHBhdGg6IHN0cmluZzsgY29udGVudDogc3RyaW5nIHwgQnVmZmVyIH1bXTtcbiAgICBkZXN0UGF0aDogc3RyaW5nO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGZpbGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGggPSBhd2FpdCBpbXBvcnQoXCJub2RlOnBhdGhcIik7XG4gICAgY29uc3QgbmF0aXZlRmlsZXMgPSBmaWxlcy5tYXAoKGZpbGUpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5wb3NpeC5qb2luKGRlc3RQYXRoLCBmaWxlLnBhdGgpO1xuICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gcGF0aC5wb3NpeC5pc0Fic29sdXRlKGZpbGVQYXRoKVxuICAgICAgICA/IGZpbGVQYXRoXG4gICAgICAgIDogcGF0aC5wb3NpeC5qb2luKHRoaXMuY3dkLCBmaWxlUGF0aCk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYXRoOiBhYnNvbHV0ZVBhdGgsXG4gICAgICAgIGNvbnRlbnQ6XG4gICAgICAgICAgdHlwZW9mIGZpbGUuY29udGVudCA9PT0gXCJzdHJpbmdcIlxuICAgICAgICAgICAgPyBCdWZmZXIuZnJvbShmaWxlLmNvbnRlbnQpXG4gICAgICAgICAgICA6IGZpbGUuY29udGVudCxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICBhd2FpdCB0aGlzLnNkay53cml0ZUZpbGVzKG5hdGl2ZUZpbGVzKTtcblxuICAgIGNvbnN0IHNoZWxsU2NyaXB0cyA9IG5hdGl2ZUZpbGVzLmZpbHRlcigoZikgPT4gZi5wYXRoLmVuZHNXaXRoKFwiLnNoXCIpKTtcbiAgICBpZiAoc2hlbGxTY3JpcHRzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZXhlYyh7XG4gICAgICAgIGNvbW1hbmQ6IFwiY2htb2RcIixcbiAgICAgICAgYXJnczogW1wiK3hcIiwgLi4uc2hlbGxTY3JpcHRzLm1hcCgoZikgPT4gZi5wYXRoKV0sXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IHJlc3VsdC5yZXN1bHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy91c2VBd2FpdDogc3luY2hyb25vdXMgU0RLIGNhbGxcbiAgYXN5bmMgZ2V0RG9tYWluKHtcbiAgICBwb3J0LFxuICB9OiB7XG4gICAgcG9ydDogbnVtYmVyO1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5zZGsuZG9tYWluKHBvcnQpO1xuICB9XG5cbiAgYXN5bmMga2lsbCh7XG4gICAgY29tbWFuZElkLFxuICB9OiB7XG4gICAgY29tbWFuZElkOiBzdHJpbmc7XG4gICAgc2lnbmFsPzogQWJvcnRTaWduYWw7XG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjbWQgPSBhd2FpdCB0aGlzLnNkay5nZXRDb21tYW5kKGNvbW1hbmRJZCk7XG4gICAgYXdhaXQgY21kLmtpbGwoKTtcbiAgfVxuXG4gIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvdXNlQXdhaXQ6IHN5bmNocm9ub3VzIFNESyBnZXR0ZXJcbiAgYXN5bmMgZ2V0U3RhdHVzKCk6IFByb21pc2U8XG4gICAgXCJwZW5kaW5nXCIgfCBcInJ1bm5pbmdcIiB8IFwic3RvcHBpbmdcIiB8IFwic3RvcHBlZFwiIHwgXCJmYWlsZWRcIlxuICA+IHtcbiAgICBjb25zdCBzdGF0dXMgPSB0aGlzLnNkay5zdGF0dXM7XG4gICAgLy8gTWFwIFNESy1vbmx5IHN0YXR1c2VzIHRvIG91ciBpbnRlcmZhY2UncyB1bmlvblxuICAgIGlmIChzdGF0dXMgPT09IFwic25hcHNob3R0aW5nXCIpIHtcbiAgICAgIHJldHVybiBcInN0b3BwaW5nXCI7XG4gICAgfVxuICAgIGlmIChzdGF0dXMgPT09IFwiYWJvcnRlZFwiKSB7XG4gICAgICByZXR1cm4gXCJmYWlsZWRcIjtcbiAgICB9XG4gICAgcmV0dXJuIHN0YXR1cztcbiAgfVxuXG4gIGFzeW5jIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFRoZSBWZXJjZWwgU0RLIGRvZXNuJ3QgaGF2ZSBhIHJlc3VtZSBtZXRob2QuXG4gICAgLy8gUnVuIGEgbm8tb3AgY29tbWFuZCB0byB2ZXJpZnkgdGhlIHNhbmRib3ggaXMgcmVhY2hhYmxlLlxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZXhlYyh7IGNvbW1hbmQ6IFwidHJ1ZVwiIH0pO1xuICAgIGF3YWl0IHJlc3VsdC5yZXN1bHQ7XG4gIH1cblxuICBhc3luYyBzdG9wKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2RrLnN0b3AoKTtcbiAgfVxuXG4gIGFzeW5jIHNuYXBzaG90KCk6IFByb21pc2U8eyBzbmFwc2hvdElkOiBzdHJpbmcgfT4ge1xuICAgIGNvbnN0IHNuYXAgPSBhd2FpdCB0aGlzLnNkay5zbmFwc2hvdCgpO1xuICAgIHJldHVybiB7IHNuYXBzaG90SWQ6IHNuYXAuc25hcHNob3RJZCB9O1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlTmV0d29ya1BvbGljeSh7XG4gICAgcG9saWN5LFxuICB9OiB7XG4gICAgcG9saWN5OiBpbXBvcnQoXCJAdmVyY2VsL3NhbmRib3hcIikuTmV0d29ya1BvbGljeTtcbiAgICBzaWduYWw/OiBBYm9ydFNpZ25hbDtcbiAgfSk6IFByb21pc2U8aW1wb3J0KFwiQHZlcmNlbC9zYW5kYm94XCIpLk5ldHdvcmtQb2xpY3k+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zZGsudXBkYXRlTmV0d29ya1BvbGljeShwb2xpY3kpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJjZWxTYW5kYm94KFxuICBkZWZhdWx0cz86IFBhcnRpYWw8aW1wb3J0KFwiLi4vYWRhcHRlclwiKS5TYW5kYm94U2V0dXBGaWVsZHM+ICYge1xuICAgIHJ1bj86IChzYW5kYm94OiBTYW5kYm94SW5zdGFuY2UpID0+IFByb21pc2U8dm9pZD47XG4gICAgY29uZmlnPzogVmVyY2VsQmluZGluZ0NvbmZpZztcbiAgfVxuKTogU2FuZGJveEJpbmRpbmc8XCJ2ZXJjZWxcIiwgVmVyY2VsQmluZGluZ0NvbmZpZywgVmVyY2VsQmluZGluZ01ldGFkYXRhPiB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogXCJ2ZXJjZWxcIixcbiAgICBkZWZhdWx0cyxcbiAgICBhc3luYyBjcmVhdGUoeyBhZ2VudCwgc2V0dXAsIHJlY29yZCwgc2lnbmFsOiBfc2lnbmFsLCBsb2cgfSkge1xuICAgICAgY29uc3Qgc3RvcmFnZSA9IGFnZW50LnN0b3JhZ2U7XG4gICAgICBjb25zdCBjb25maWcgPSBzZXR1cC5jb25maWcgPz8ge307XG4gICAgICBjb25zdCBjd2QgPSBjb25maWcuY3dkO1xuICAgICAgY29uc3QgcmVzb3VyY2VzID0gY29uZmlnLnJlc291cmNlcyA/PyB7IHZjcHVzOiBERUZBVUxUX1ZDUFVTIH07XG4gICAgICBjb25zdCBwb3J0cyA9IGNvbmZpZy5wb3J0cztcbiAgICAgIGNvbnN0IG5ldHdvcmtQb2xpY3kgPVxuICAgICAgICBjb25maWcubmV0d29ya1BvbGljeSA/PyBzZXR1cC5uZXR3b3JrUG9saWN5ID8/IHVuZGVmaW5lZDtcblxuICAgICAgY29uc3Qgc2FuZGJveE9wdHM6IENyZWF0ZVNhbmRib3hPcHRzID0ge1xuICAgICAgICByZXNvdXJjZXMsXG4gICAgICAgIHBvcnRzLFxuICAgICAgICBuZXR3b3JrUG9saWN5LFxuICAgICAgICBzbmFwc2hvdElkOiBjb25maWcuc25hcHNob3RJZCxcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IF9zdGFydExpZmVjeWNsZSA9ICh2ZXJjZWxTYW5kYm94SWQ6IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAoIXJlY29yZCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdGFydFdvcmtmbG93KHNhbmRib3hMaWZlY3ljbGVXb3JrZmxvdywgW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgICAgIGFnZW50LFxuICAgICAgICAgICAgICBzYW5kYm94SWQ6IHJlY29yZC5pZCxcbiAgICAgICAgICAgICAgdmVyY2VsU2FuZGJveElkLFxuICAgICAgICAgICAgICBjb25maWc6IGNvbmZpZy5saWZlY3ljbGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIF0pLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgbG9nLmVycm9yKFwiZmFpbGVkIHRvIHN0YXJ0IGxpZmVjeWNsZSB3b3JrZmxvd1wiLCB7IGNhdXNlOiBlIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIGlmIChzZXR1cC52ZXJzaW9uKSB7XG4gICAgICAgIGNvbnN0IGV4aXN0aW5nID0gYXdhaXQgc3RvcmFnZS5zZXR1cC5nZXQoc2V0dXAudmVyc2lvbik7XG4gICAgICAgIGlmIChleGlzdGluZz8uc25hcHNob3RJZCkge1xuICAgICAgICAgIGNvbnN0IHNkayA9IGF3YWl0IGNyZWF0ZVNkayh7XG4gICAgICAgICAgICAuLi5zYW5kYm94T3B0cyxcbiAgICAgICAgICAgIHNuYXBzaG90SWQ6IGV4aXN0aW5nLnNuYXBzaG90SWQsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgVmVyY2VsU2FuZGJveEluc3RhbmNlKHNkaywgY3dkKTtcblxuICAgICAgICAgIHN0b3JhZ2Uuc2V0dXBcbiAgICAgICAgICAgIC5zZXQoc2V0dXAudmVyc2lvbiwge1xuICAgICAgICAgICAgICAuLi5leGlzdGluZyxcbiAgICAgICAgICAgICAgdmVyc2lvbjogc2V0dXAudmVyc2lvbixcbiAgICAgICAgICAgICAgbGFzdFVzZWRBdDogRGF0ZS5ub3coKSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpbnN0YW5jZSxcbiAgICAgICAgICAgIG1ldGFkYXRhOiB7IHNhbmRib3hJZDogc2RrLnNhbmRib3hJZCB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHNldHVwLnJ1bikge1xuICAgICAgICBpZiAoIXNldHVwLnZlcnNpb24pIHtcbiAgICAgICAgICBsb2cuZXJyb3IoXCJzZXR1cC5ydW4gcHJvdmlkZWQgd2l0aG91dCBzZXR1cC52ZXJzaW9uXCIsIHsgc2V0dXAgfSk7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwic2V0dXAucnVuIHByb3ZpZGVkIHdpdGhvdXQgc2V0dXAudmVyc2lvblwiKTtcbiAgICAgICAgfVxuICAgICAgICBjcmVhdGVTZXR1cFNuYXBzaG90KHtcbiAgICAgICAgICBzYW5kYm94T3B0cyxcbiAgICAgICAgICBydW46IHNldHVwLnJ1bixcbiAgICAgICAgICBzdG9yYWdlLFxuICAgICAgICAgIHNuYXBzaG90VmVyc2lvbjogc2V0dXAudmVyc2lvbixcbiAgICAgICAgICBsb2csXG4gICAgICAgIH0pLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgIGxvZy5lcnJvcihcImJhY2tncm91bmQgc2V0dXAgc25hcHNob3QgZmFpbGVkXCIsIHsgY2F1c2U6IGVycm9yIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBzZGsgPSBhd2FpdCBjcmVhdGVTZGsoc2FuZGJveE9wdHMpO1xuICAgICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBWZXJjZWxTYW5kYm94SW5zdGFuY2Uoc2RrLCBjd2QpO1xuICAgICAgICBhd2FpdCBzZXR1cC5ydW4oaW5zdGFuY2UpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaW5zdGFuY2UsXG4gICAgICAgICAgbWV0YWRhdGE6IHsgc2FuZGJveElkOiBzZGsuc2FuZGJveElkIH0sXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNkayA9IGF3YWl0IGNyZWF0ZVNkayhzYW5kYm94T3B0cyk7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyBWZXJjZWxTYW5kYm94SW5zdGFuY2Uoc2RrLCBjd2QpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBpbnN0YW5jZSxcbiAgICAgICAgbWV0YWRhdGE6IHsgc2FuZGJveElkOiBzZGsuc2FuZGJveElkIH0sXG4gICAgICB9O1xuICAgIH0sXG5cbiAgICBhc3luYyBjb25uZWN0KHsgbWV0YWRhdGEgfSkge1xuICAgICAgY29uc3QgU2FuZGJveFNESyA9IGF3YWl0IGxvYWRTYW5kYm94U0RLKCk7XG4gICAgICBjb25zdCBzZGsgPSBhd2FpdCBTYW5kYm94U0RLLmdldCh7XG4gICAgICAgIHNhbmRib3hJZDogbWV0YWRhdGEuc2FuZGJveElkLFxuICAgICAgICAuLi5nZXRUZXN0Q3JlZGVudGlhbHMoKSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIG5ldyBWZXJjZWxTYW5kYm94SW5zdGFuY2Uoc2RrKTtcbiAgICB9LFxuICB9O1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7QUFBQSxTQUFTLFNBQVMscUJBQXFCO0FBT3ZDLGVBQWUsaUJBQWlCO0FBQzlCLFVBQVEsTUFBTSxPQUFPLGlCQUFpQixHQUFHO0FBQzNDO0FBRUEsSUFBTSxpQkFBaUIsSUFBSSxLQUFLLEtBQUs7QUFDckMsSUFBTSxXQUFXO0FBQ2pCLElBQU0sZ0JBQWdCO0FBc0J0QixTQUFTLG1CQUFtQixHQUFxQjtBQUMvQyxNQUFJLEVBQUUsYUFBYSxRQUFRO0FBQ3pCLFdBQU87QUFBQSxFQUNUO0FBRUEsUUFBTSxTQUNILEVBQXlDLFVBQVUsVUFDbkQsRUFBcUQsT0FBTyxVQUN6RDtBQUVOLE1BQUksV0FBVyxPQUFPLFdBQVcsS0FBSztBQUNwQyxXQUFPO0FBQUEsRUFDVDtBQUVBLFFBQU0sTUFBTSxFQUFFLFdBQVcsT0FBTyxDQUFDO0FBQ2pDLFNBQ0UsSUFBSSxTQUFTLG1DQUFtQyxLQUNoRCxJQUFJLFNBQVMsMkJBQTJCO0FBRTVDO0FBRUEsSUFBTSxxQkFBcUIsTUFDekIsUUFBUSxJQUFJLGFBQWEsU0FDckI7QUFBQSxFQUNFLE9BQU8sUUFBUSxJQUFJO0FBQUEsRUFDbkIsUUFBUSxRQUFRLElBQUk7QUFBQSxFQUNwQixXQUFXLFFBQVEsSUFBSTtBQUN6QixJQUNBLENBQUM7QUFFUCxlQUFlLFVB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LFFBQVEsTUFBTSxJQUFJLE1BQU0sT0FBTztBQUN0RCxZQUFJLFVBQVUsWUFBWTtBQUN4QixnQkFBTUEsT0FBTSxNQUFNLFVBQVU7QUFBQSxZQUMxQixHQUFHO0FBQUEsWUFDSCxZQUFZLFNBQVM7QUFBQSxVQUN2QixDQUFDO0FBQ0QsZ0JBQU1DLFlBQVcsSUFBSSxzQkFBc0JELE1BQUssR0FBRztBQUVuRCxrQkFBUSxNQUNMLElBQUksTUFBTSxTQUFTO0FBQUEsWUFDbEIsR0FBRztBQUFBLFlBQ0gsU0FBUyxNQUFNO0FBQUEsWUFDZixZQUFZLEtBQUssSUFBSTtBQUFBLFVBQ3ZCLENBQUMsRUFDQSxNQUFNLE1BQU0sTUFBUztBQUV4QixpQkFBTztBQUFBLFlBQ0wsVUFBQUM7QUFBQSxZQUNBLFVBQVUsRUFBRSxXQUFXRCxLQUFJLFVBQVU7QUFBQSxVQUN2QztBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBRUEsVUFBSSxNQUFNLEtBQUs7QUFDYixZQUFJLENBQUMsTUFBTSxTQUFTO0FBQ2xCLGNBQUksTUFBTSw0Q0FBNEMsRUFBRSxNQUFNLENBQUM7QUFDL0QsZ0JBQU0sSUFBSSxNQUFNLDBDQUEwQztBQUFBLFFBQzVEO0FBQ0EsNEJBQW9CO0FBQUEsVUFDbEI7QUFBQSxVQUNBLEtBQUssTUFBTTtBQUFBLFVBQ1g7QUFBQSxVQUNBLGlCQUFpQixNQUFNO0FBQUEsVUFDdkI7QUFBQSxRQUNGLENBQUMsRUFBRSxNQUFNLENBQUMsVUFBVTtBQUNsQixjQUFJLE1BQU0sb0NBQW9DLEVBQUUsT0FBTyxNQUFNLENBQUM7QUFBQSxRQUNoRSxDQUFDO0FBRUQsY0FBTUEsT0FBTSxNQUFNLFVBQVUsV0FBVztBQUN2QyxjQUFNQyxZQUFXLElBQUksc0JBQXNCRCxNQUFLLEdBQUc7QUFDbkQsY0FBTSxNQUFNLElBQUlDLFNBQVE7QUFFeEIsZUFBTztBQUFBLFVBQ0wsVUFBQUE7QUFBQSxVQUNBLFVBQVUsRUFBRSxXQUFXRCxLQUFJLFVBQVU7QUFBQSxRQUN2QztBQUFBLE1BQ0Y7QUFFQSxZQUFNLE1BQU0sTUFBTSxVQUFVLFdBQVc7QUFDdkMsWUFBTSxXQUFXLElBQUksc0JBQXNCLEtBQUssR0FBRztBQUVuRCxhQUFPO0FBQUEsUUFDTDtBQUFBLFFBQ0EsVUFBVSxFQUFFLFdBQVcsSUFBSSxVQUFVO0FBQUEsTUFDdkM7QUFBQSxJQUNGO0FBQUEsSUFFQSxNQUFNLFFBQVEsRUFBRSxTQUFTLEdBQUc7QUFDMUIsWUFBTSxhQUFhLE1BQU0sZUFBZTtBQUN4QyxZQUFNLE1BQU0sTUFBTSxXQUFXLElBQUk7QUFBQSxRQUMvQixXQUFXLFNBQVM7QUFBQSxRQUNwQixHQUFHLG1CQUFtQjtBQUFBLE1BQ3hCLENBQUM7QUFDRCxhQUFPLElBQUksc0JBQXNCLEdBQUc7QUFBQSxJQUN0QztBQUFBLEVBQ0Y7QUFDRjsiLAogICJuYW1lcyI6IFsic2RrIiwgImluc3RhbmNlIl0KfQo=
|