@docuseal/angular 1.0.1 → 1.0.2
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/builder.component.d.ts +24 -11
- package/dist/esm2022/builder.component.mjs +100 -134
- package/dist/esm2022/form.component.mjs +117 -151
- package/dist/fesm2022/docuseal-angular.mjs +214 -282
- package/dist/fesm2022/docuseal-angular.mjs.map +1 -1
- package/dist/form.component.d.ts +29 -12
- package/package.json +1 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ElementRef, SimpleChanges } from "@angular/core";
|
|
2
1
|
import * as i0 from "@angular/core";
|
|
3
2
|
interface DocusealField {
|
|
4
3
|
name: string;
|
|
@@ -9,11 +8,7 @@ interface DocusealField {
|
|
|
9
8
|
interface AfterViewInit {
|
|
10
9
|
ngAfterViewInit(): void;
|
|
11
10
|
}
|
|
12
|
-
|
|
13
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
14
|
-
}
|
|
15
|
-
export declare class DocusealBuilderComponent implements AfterViewInit, OnChanges {
|
|
16
|
-
private el;
|
|
11
|
+
export declare class DocusealBuilderComponent implements AfterViewInit {
|
|
17
12
|
token: string;
|
|
18
13
|
host: string;
|
|
19
14
|
language: string;
|
|
@@ -44,12 +39,30 @@ export declare class DocusealBuilderComponent implements AfterViewInit, OnChange
|
|
|
44
39
|
sendButtonText: string;
|
|
45
40
|
saveButtonText: string;
|
|
46
41
|
customCss: string;
|
|
47
|
-
|
|
48
|
-
get
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
get dataToken(): string;
|
|
43
|
+
get dataPreview(): boolean;
|
|
44
|
+
get dataLanguage(): string;
|
|
45
|
+
get dataAutosave(): boolean;
|
|
46
|
+
get dataSendButtonText(): string;
|
|
47
|
+
get dataSaveButtonText(): string;
|
|
48
|
+
get dataRoles(): string;
|
|
49
|
+
get dataFieldTypes(): string;
|
|
50
|
+
get dataDrawFieldType(): string;
|
|
51
|
+
get dataFields(): string;
|
|
52
|
+
get dataI18n(): string;
|
|
53
|
+
get dataCustomButtonTitle(): string;
|
|
54
|
+
get dataCustomButtonUrl(): string;
|
|
55
|
+
get dataWithRecipientsButton(): boolean;
|
|
56
|
+
get dataWithSendButton(): boolean;
|
|
57
|
+
get dataWithDocumentsList(): boolean;
|
|
58
|
+
get dataWithFieldsList(): boolean;
|
|
59
|
+
get dataWithTitle(): boolean;
|
|
60
|
+
get dataOnlyDefinedFields(): boolean;
|
|
61
|
+
get dataWithUploadButton(): boolean;
|
|
62
|
+
get dataWithSignYourselfButton(): boolean;
|
|
63
|
+
get dataBackgroundColor(): string;
|
|
64
|
+
get dataCustomCss(): string;
|
|
51
65
|
ngAfterViewInit(): void;
|
|
52
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
53
66
|
onSendEvent(event: CustomEvent): void;
|
|
54
67
|
onLoadEvent(event: CustomEvent): void;
|
|
55
68
|
onUploadEvent(event: CustomEvent): void;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { Component, Input, HostListener } from "@angular/core";
|
|
1
|
+
import { Component, Input, HostListener, HostBinding } from "@angular/core";
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class DocusealBuilderComponent {
|
|
4
|
-
el;
|
|
5
4
|
token = "";
|
|
6
5
|
host = "cdn.docuseal.co";
|
|
7
6
|
language = "en";
|
|
@@ -29,136 +28,32 @@ export class DocusealBuilderComponent {
|
|
|
29
28
|
sendButtonText = "";
|
|
30
29
|
saveButtonText = "";
|
|
31
30
|
customCss = "";
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
get
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
value: () => this.sendButtonText
|
|
56
|
-
},
|
|
57
|
-
saveButtonText: {
|
|
58
|
-
name: "data-save-button-text",
|
|
59
|
-
value: () => this.saveButtonText
|
|
60
|
-
},
|
|
61
|
-
roles: {
|
|
62
|
-
name: "data-roles",
|
|
63
|
-
value: () => this.roles.join(',')
|
|
64
|
-
},
|
|
65
|
-
fieldTypes: {
|
|
66
|
-
name: "data-field-types",
|
|
67
|
-
value: () => this.fieldTypes.join(',')
|
|
68
|
-
},
|
|
69
|
-
drawFieldType: {
|
|
70
|
-
name: "data-draw-field-type",
|
|
71
|
-
value: () => this.drawFieldType
|
|
72
|
-
},
|
|
73
|
-
fields: {
|
|
74
|
-
name: "data-fields",
|
|
75
|
-
value: () => JSON.stringify(this.fields)
|
|
76
|
-
},
|
|
77
|
-
i18n: {
|
|
78
|
-
name: "data-i18n",
|
|
79
|
-
value: () => JSON.stringify(this.i18n)
|
|
80
|
-
},
|
|
81
|
-
customButton: [
|
|
82
|
-
{
|
|
83
|
-
name: "data-custom-button-title",
|
|
84
|
-
value: () => this.customButton.title
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
name: "data-custom-button-url",
|
|
88
|
-
value: () => this.customButton.url
|
|
89
|
-
}
|
|
90
|
-
],
|
|
91
|
-
withRecipientsButton: {
|
|
92
|
-
name: "data-with-recipients-button",
|
|
93
|
-
value: () => this.withRecipientsButton
|
|
94
|
-
},
|
|
95
|
-
withSendButton: {
|
|
96
|
-
name: "data-with-send-button",
|
|
97
|
-
value: () => this.withSendButton
|
|
98
|
-
},
|
|
99
|
-
withDocumentsList: {
|
|
100
|
-
name: "data-with-documents-list",
|
|
101
|
-
value: () => this.withDocumentsList
|
|
102
|
-
},
|
|
103
|
-
withFieldsList: {
|
|
104
|
-
name: "data-with-fields-list",
|
|
105
|
-
value: () => this.withFieldsList
|
|
106
|
-
},
|
|
107
|
-
withTitle: {
|
|
108
|
-
name: "data-with-title",
|
|
109
|
-
value: () => this.withTitle
|
|
110
|
-
},
|
|
111
|
-
onlyDefinedFields: {
|
|
112
|
-
name: "data-only-defined-fields",
|
|
113
|
-
value: () => this.onlyDefinedFields
|
|
114
|
-
},
|
|
115
|
-
withUploadButton: {
|
|
116
|
-
name: "data-with-upload-button",
|
|
117
|
-
value: () => this.withUploadButton
|
|
118
|
-
},
|
|
119
|
-
withSignYourselfButton: {
|
|
120
|
-
name: "data-with-sign-yourself-button",
|
|
121
|
-
value: () => this.withSignYourselfButton
|
|
122
|
-
},
|
|
123
|
-
backgroundColor: {
|
|
124
|
-
name: "data-background-color",
|
|
125
|
-
value: () => this.backgroundColor
|
|
126
|
-
},
|
|
127
|
-
customCss: {
|
|
128
|
-
name: "data-custom-css",
|
|
129
|
-
value: () => this.customCss
|
|
130
|
-
}
|
|
131
|
-
};
|
|
132
|
-
}
|
|
31
|
+
get dataToken() { return this.token; }
|
|
32
|
+
get dataPreview() { return this.preview; }
|
|
33
|
+
get dataLanguage() { return this.language; }
|
|
34
|
+
get dataAutosave() { return this.autosave; }
|
|
35
|
+
get dataSendButtonText() { return this.sendButtonText; }
|
|
36
|
+
get dataSaveButtonText() { return this.saveButtonText; }
|
|
37
|
+
get dataRoles() { return this.roles.join(','); }
|
|
38
|
+
get dataFieldTypes() { return this.fieldTypes.join(','); }
|
|
39
|
+
get dataDrawFieldType() { return this.drawFieldType; }
|
|
40
|
+
get dataFields() { return JSON.stringify(this.fields); }
|
|
41
|
+
get dataI18n() { return JSON.stringify(this.i18n); }
|
|
42
|
+
get dataCustomButtonTitle() { return this.customButton.title; }
|
|
43
|
+
get dataCustomButtonUrl() { return this.customButton.url; }
|
|
44
|
+
get dataWithRecipientsButton() { return this.withRecipientsButton; }
|
|
45
|
+
get dataWithSendButton() { return this.withSendButton; }
|
|
46
|
+
get dataWithDocumentsList() { return this.withDocumentsList; }
|
|
47
|
+
get dataWithFieldsList() { return this.withFieldsList; }
|
|
48
|
+
get dataWithTitle() { return this.withTitle; }
|
|
49
|
+
get dataOnlyDefinedFields() { return this.onlyDefinedFields; }
|
|
50
|
+
get dataWithUploadButton() { return this.withUploadButton; }
|
|
51
|
+
get dataWithSignYourselfButton() { return this.withSignYourselfButton; }
|
|
52
|
+
get dataBackgroundColor() { return this.backgroundColor; }
|
|
53
|
+
get dataCustomCss() { return this.customCss; }
|
|
133
54
|
ngAfterViewInit() {
|
|
134
|
-
const builder = this.el.nativeElement;
|
|
135
|
-
Object.entries(this.attributes).forEach(([_, attribute]) => {
|
|
136
|
-
if (Array.isArray(attribute)) {
|
|
137
|
-
attribute.forEach((attr) => {
|
|
138
|
-
builder.setAttribute(attr.name, attr.value());
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
else if (attribute) {
|
|
142
|
-
builder.setAttribute(attribute.name, attribute.value());
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
55
|
this.loadScript();
|
|
146
56
|
}
|
|
147
|
-
ngOnChanges(changes) {
|
|
148
|
-
const builder = this.el.nativeElement;
|
|
149
|
-
const attributes = this.attributes;
|
|
150
|
-
Object.entries(changes).forEach(([key, change]) => {
|
|
151
|
-
const attribute = attributes[key];
|
|
152
|
-
if (Array.isArray(attribute)) {
|
|
153
|
-
attribute.forEach((attr) => {
|
|
154
|
-
builder.setAttribute(attr.name, attr.value());
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
else if (attribute) {
|
|
158
|
-
builder.setAttribute(attribute.name, change.currentValue);
|
|
159
|
-
}
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
57
|
onSendEvent(event) {
|
|
163
58
|
if (this.onSend) {
|
|
164
59
|
this.onSend(event.detail);
|
|
@@ -188,15 +83,17 @@ export class DocusealBuilderComponent {
|
|
|
188
83
|
script.src = scriptSrc;
|
|
189
84
|
document.head.appendChild(script);
|
|
190
85
|
}
|
|
191
|
-
static ɵfac = function DocusealBuilderComponent_Factory(t) { return new (t || DocusealBuilderComponent)(
|
|
192
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DocusealBuilderComponent, selectors: [["docuseal-builder"]], hostBindings: function DocusealBuilderComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
86
|
+
static ɵfac = function DocusealBuilderComponent_Factory(t) { return new (t || DocusealBuilderComponent)(); };
|
|
87
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DocusealBuilderComponent, selectors: [["docuseal-builder"]], hostVars: 23, hostBindings: function DocusealBuilderComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
193
88
|
i0.ɵɵlistener("send", function DocusealBuilderComponent_send_HostBindingHandler($event) { return ctx.onSendEvent($event); })("load", function DocusealBuilderComponent_load_HostBindingHandler($event) { return ctx.onLoadEvent($event); })("upload", function DocusealBuilderComponent_upload_HostBindingHandler($event) { return ctx.onUploadEvent($event); })("save", function DocusealBuilderComponent_save_HostBindingHandler($event) { return ctx.onSaveEvent($event); });
|
|
194
|
-
}
|
|
89
|
+
} if (rf & 2) {
|
|
90
|
+
i0.ɵɵattribute("data-token", ctx.dataToken)("data-preview", ctx.dataPreview)("data-language", ctx.dataLanguage)("data-autosave", ctx.dataAutosave)("data-send-button-text", ctx.dataSendButtonText)("data-save-button-text", ctx.dataSaveButtonText)("data-roles", ctx.dataRoles)("data-field-types", ctx.dataFieldTypes)("data-draw-field-type", ctx.dataDrawFieldType)("data-fields", ctx.dataFields)("data-i18n", ctx.dataI18n)("data-custom-button-title", ctx.dataCustomButtonTitle)("data-custom-button-url", ctx.dataCustomButtonUrl)("data-with-recipients-button", ctx.dataWithRecipientsButton)("data-with-send-button", ctx.dataWithSendButton)("data-with-documents-list", ctx.dataWithDocumentsList)("data-with-fields-list", ctx.dataWithFieldsList)("data-with-title", ctx.dataWithTitle)("data-only-defined-fields", ctx.dataOnlyDefinedFields)("data-with-upload-button", ctx.dataWithUploadButton)("data-with-sign-yourself-button", ctx.dataWithSignYourselfButton)("data-background-color", ctx.dataBackgroundColor)("data-custom-css", ctx.dataCustomCss);
|
|
91
|
+
} }, inputs: { token: "token", host: "host", language: "language", preview: "preview", autosave: "autosave", withRecipientsButton: "withRecipientsButton", withDocumentsList: "withDocumentsList", withFieldsList: "withFieldsList", withSendButton: "withSendButton", withTitle: "withTitle", onlyDefinedFields: "onlyDefinedFields", withSignYourselfButton: "withSignYourselfButton", withUploadButton: "withUploadButton", roles: "roles", fields: "fields", i18n: "i18n", fieldTypes: "fieldTypes", drawFieldType: "drawFieldType", customButton: "customButton", backgroundColor: "backgroundColor", onLoad: "onLoad", onUpload: "onUpload", onSend: "onSend", onSave: "onSave", sendButtonText: "sendButtonText", saveButtonText: "saveButtonText", customCss: "customCss" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 0, vars: 0, template: function DocusealBuilderComponent_Template(rf, ctx) { }, encapsulation: 2 });
|
|
195
92
|
}
|
|
196
93
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DocusealBuilderComponent, [{
|
|
197
94
|
type: Component,
|
|
198
95
|
args: [{ selector: "docuseal-builder", standalone: true, template: "" }]
|
|
199
|
-
}],
|
|
96
|
+
}], null, { token: [{
|
|
200
97
|
type: Input
|
|
201
98
|
}], host: [{
|
|
202
99
|
type: Input
|
|
@@ -250,6 +147,75 @@ export class DocusealBuilderComponent {
|
|
|
250
147
|
type: Input
|
|
251
148
|
}], customCss: [{
|
|
252
149
|
type: Input
|
|
150
|
+
}], dataToken: [{
|
|
151
|
+
type: HostBinding,
|
|
152
|
+
args: ["attr.data-token"]
|
|
153
|
+
}], dataPreview: [{
|
|
154
|
+
type: HostBinding,
|
|
155
|
+
args: ["attr.data-preview"]
|
|
156
|
+
}], dataLanguage: [{
|
|
157
|
+
type: HostBinding,
|
|
158
|
+
args: ["attr.data-language"]
|
|
159
|
+
}], dataAutosave: [{
|
|
160
|
+
type: HostBinding,
|
|
161
|
+
args: ["attr.data-autosave"]
|
|
162
|
+
}], dataSendButtonText: [{
|
|
163
|
+
type: HostBinding,
|
|
164
|
+
args: ["attr.data-send-button-text"]
|
|
165
|
+
}], dataSaveButtonText: [{
|
|
166
|
+
type: HostBinding,
|
|
167
|
+
args: ["attr.data-save-button-text"]
|
|
168
|
+
}], dataRoles: [{
|
|
169
|
+
type: HostBinding,
|
|
170
|
+
args: ["attr.data-roles"]
|
|
171
|
+
}], dataFieldTypes: [{
|
|
172
|
+
type: HostBinding,
|
|
173
|
+
args: ["attr.data-field-types"]
|
|
174
|
+
}], dataDrawFieldType: [{
|
|
175
|
+
type: HostBinding,
|
|
176
|
+
args: ["attr.data-draw-field-type"]
|
|
177
|
+
}], dataFields: [{
|
|
178
|
+
type: HostBinding,
|
|
179
|
+
args: ["attr.data-fields"]
|
|
180
|
+
}], dataI18n: [{
|
|
181
|
+
type: HostBinding,
|
|
182
|
+
args: ["attr.data-i18n"]
|
|
183
|
+
}], dataCustomButtonTitle: [{
|
|
184
|
+
type: HostBinding,
|
|
185
|
+
args: ["attr.data-custom-button-title"]
|
|
186
|
+
}], dataCustomButtonUrl: [{
|
|
187
|
+
type: HostBinding,
|
|
188
|
+
args: ["attr.data-custom-button-url"]
|
|
189
|
+
}], dataWithRecipientsButton: [{
|
|
190
|
+
type: HostBinding,
|
|
191
|
+
args: ["attr.data-with-recipients-button"]
|
|
192
|
+
}], dataWithSendButton: [{
|
|
193
|
+
type: HostBinding,
|
|
194
|
+
args: ["attr.data-with-send-button"]
|
|
195
|
+
}], dataWithDocumentsList: [{
|
|
196
|
+
type: HostBinding,
|
|
197
|
+
args: ["attr.data-with-documents-list"]
|
|
198
|
+
}], dataWithFieldsList: [{
|
|
199
|
+
type: HostBinding,
|
|
200
|
+
args: ["attr.data-with-fields-list"]
|
|
201
|
+
}], dataWithTitle: [{
|
|
202
|
+
type: HostBinding,
|
|
203
|
+
args: ["attr.data-with-title"]
|
|
204
|
+
}], dataOnlyDefinedFields: [{
|
|
205
|
+
type: HostBinding,
|
|
206
|
+
args: ["attr.data-only-defined-fields"]
|
|
207
|
+
}], dataWithUploadButton: [{
|
|
208
|
+
type: HostBinding,
|
|
209
|
+
args: ["attr.data-with-upload-button"]
|
|
210
|
+
}], dataWithSignYourselfButton: [{
|
|
211
|
+
type: HostBinding,
|
|
212
|
+
args: ["attr.data-with-sign-yourself-button"]
|
|
213
|
+
}], dataBackgroundColor: [{
|
|
214
|
+
type: HostBinding,
|
|
215
|
+
args: ["attr.data-background-color"]
|
|
216
|
+
}], dataCustomCss: [{
|
|
217
|
+
type: HostBinding,
|
|
218
|
+
args: ["attr.data-custom-css"]
|
|
253
219
|
}], onSendEvent: [{
|
|
254
220
|
type: HostListener,
|
|
255
221
|
args: ['send', ['$event']]
|
|
@@ -264,4 +230,4 @@ export class DocusealBuilderComponent {
|
|
|
264
230
|
args: ['save', ['$event']]
|
|
265
231
|
}] }); })();
|
|
266
232
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(DocusealBuilderComponent, { className: "DocusealBuilderComponent" }); })();
|
|
267
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsWUFBWSxFQUFpQixNQUFNLGVBQWUsQ0FBQTs7QUFzQnpGLE1BQU0sT0FBTyx3QkFBd0I7SUE2QmY7SUE1QlgsS0FBSyxHQUFXLEVBQUUsQ0FBQTtJQUNsQixJQUFJLEdBQVcsaUJBQWlCLENBQUE7SUFDaEMsUUFBUSxHQUFXLElBQUksQ0FBQTtJQUN2QixPQUFPLEdBQVksS0FBSyxDQUFBO0lBQ3hCLFFBQVEsR0FBWSxJQUFJLENBQUE7SUFDeEIsb0JBQW9CLEdBQVksSUFBSSxDQUFBO0lBQ3BDLGlCQUFpQixHQUFZLElBQUksQ0FBQTtJQUNqQyxjQUFjLEdBQVksSUFBSSxDQUFBO0lBQzlCLGNBQWMsR0FBWSxJQUFJLENBQUE7SUFDOUIsU0FBUyxHQUFZLElBQUksQ0FBQTtJQUN6QixpQkFBaUIsR0FBWSxLQUFLLENBQUE7SUFDbEMsc0JBQXNCLEdBQVksSUFBSSxDQUFBO0lBQ3RDLGdCQUFnQixHQUFZLElBQUksQ0FBQTtJQUNoQyxLQUFLLEdBQWEsRUFBRSxDQUFBO0lBQ3BCLE1BQU0sR0FBb0IsRUFBRSxDQUFBO0lBQzVCLElBQUksR0FBVyxFQUFFLENBQUE7SUFDakIsVUFBVSxHQUFhLEVBQUUsQ0FBQTtJQUN6QixhQUFhLEdBQVcsTUFBTSxDQUFBO0lBQzlCLFlBQVksR0FBbUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQTtJQUNyRSxlQUFlLEdBQVcsRUFBRSxDQUFBO0lBQzVCLE1BQU0sR0FBMEIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBQ3hDLFFBQVEsR0FBMEIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBQzFDLE1BQU0sR0FBMEIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBQ3hDLE1BQU0sR0FBMEIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBQ3hDLGNBQWMsR0FBVyxFQUFFLENBQUE7SUFDM0IsY0FBYyxHQUFXLEVBQUUsQ0FBQTtJQUMzQixTQUFTLEdBQVcsRUFBRSxDQUFBO0lBRS9CLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUcsQ0FBQztJQUV0QyxJQUFJLFVBQVU7UUFDWixPQUFPO1lBQ0wsR0FBRyxFQUFFO2dCQUNILElBQUksRUFBRSxZQUFZO2dCQUNsQixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUs7YUFDeEI7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTzthQUMxQjtZQUNELFFBQVEsRUFBRTtnQkFDUixJQUFJLEVBQUUsZUFBZTtnQkFDckIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRO2FBQzNCO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxlQUFlO2dCQUNyQixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVE7YUFDM0I7WUFDRCxjQUFjLEVBQUU7Z0JBQ2QsSUFBSSxFQUFFLHVCQUF1QjtnQkFDN0IsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjO2FBQ2pDO1lBQ0QsY0FBYyxFQUFFO2dCQUNkLElBQUksRUFBRSx1QkFBdUI7Z0JBQzdCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYzthQUNqQztZQUNELEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQzthQUNsQztZQUNELFVBQVUsRUFBRTtnQkFDVixJQUFJLEVBQUUsa0JBQWtCO2dCQUN4QixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQ3ZDO1lBQ0QsYUFBYSxFQUFFO2dCQUNiLElBQUksRUFBRSxzQkFBc0I7Z0JBQzVCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYTthQUNoQztZQUNELE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUN6QztZQUNELElBQUksRUFBRTtnQkFDSixJQUFJLEVBQUUsV0FBVztnQkFDakIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzthQUN2QztZQUNELFlBQVksRUFBRTtnQkFDWjtvQkFDRSxJQUFJLEVBQUUsMEJBQTBCO29CQUNoQyxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLO2lCQUNyQztnQkFDRDtvQkFDRSxJQUFJLEVBQUUsd0JBQXdCO29CQUM5QixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHO2lCQUNuQzthQUNGO1lBQ0Qsb0JBQW9CLEVBQUU7Z0JBQ3BCLElBQUksRUFBRSw2QkFBNkI7Z0JBQ25DLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CO2FBQ3ZDO1lBQ0QsY0FBYyxFQUFFO2dCQUNkLElBQUksRUFBRSx1QkFBdUI7Z0JBQzdCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYzthQUNqQztZQUNELGlCQUFpQixFQUFFO2dCQUNqQixJQUFJLEVBQUUsMEJBQTBCO2dCQUNoQyxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQjthQUNwQztZQUNELGNBQWMsRUFBRTtnQkFDZCxJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWM7YUFDakM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTO2FBQzVCO1lBQ0QsaUJBQWlCLEVBQUU7Z0JBQ2pCLElBQUksRUFBRSwwQkFBMEI7Z0JBQ2hDLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCO2FBQ3BDO1lBQ0QsZ0JBQWdCLEVBQUU7Z0JBQ2hCLElBQUksRUFBRSx5QkFBeUI7Z0JBQy9CLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCO2FBQ25DO1lBQ0Qsc0JBQXNCLEVBQUU7Z0JBQ3RCLElBQUksRUFBRSxnQ0FBZ0M7Z0JBQ3RDLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsc0JBQXNCO2FBQ3pDO1lBQ0QsZUFBZSxFQUFFO2dCQUNmLElBQUksRUFBRSx1QkFBdUI7Z0JBQzdCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZTthQUNsQztZQUNELFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVM7YUFDNUI7U0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUV0QyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsRUFBRSxFQUFFO1lBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUM3QixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ3pCLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQTtnQkFDL0MsQ0FBQyxDQUFDLENBQUE7WUFDSixDQUFDO2lCQUFNLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ3JCLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQTtZQUN6RCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUN0QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFBO1FBRWxDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtZQUNoRCxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7WUFFakMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtvQkFDekIsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFBO2dCQUMvQyxDQUFDLENBQUMsQ0FBQTtZQUNKLENBQUM7aUJBQU0sSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtZQUMzRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBR0QsV0FBVyxDQUFDLEtBQWtCO1FBQzVCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBR0QsV0FBVyxDQUFDLEtBQWtCO1FBQzVCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBR0QsYUFBYSxDQUFDLEtBQWtCO1FBQzlCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzdCLENBQUM7SUFDSCxDQUFDO0lBR0QsV0FBVyxDQUFDLEtBQWtCO1FBQzVCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLE1BQU0sUUFBUSxHQUFHLHlCQUF5QixDQUFBO1FBQzFDLE1BQU0sU0FBUyxHQUFHLFdBQVcsSUFBSSxDQUFDLElBQUksZ0JBQWdCLENBQUE7UUFDdEQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUUvQyxNQUFNLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQTtRQUNwQixNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQTtRQUNuQixNQUFNLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQTtRQUV0QixRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNuQyxDQUFDO2tGQXpNVSx3QkFBd0I7NkRBQXhCLHdCQUF3QjtZQUF4QixpR0FBQSx1QkFBbUIsSUFBSyxvRkFBeEIsdUJBQW1CLElBQUssd0ZBQXhCLHlCQUFxQixJQUFHLG9GQUF4Qix1QkFBbUIsSUFBSzs7O2lGQUF4Qix3QkFBd0I7Y0FQcEMsU0FBUzsyQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxZQUNOLEVBQUU7MkNBS0gsS0FBSztrQkFBYixLQUFLO1lBQ0csSUFBSTtrQkFBWixLQUFLO1lBQ0csUUFBUTtrQkFBaEIsS0FBSztZQUNHLE9BQU87a0JBQWYsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7WUFDRyxvQkFBb0I7a0JBQTVCLEtBQUs7WUFDRyxpQkFBaUI7a0JBQXpCLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUs7WUFDRyxpQkFBaUI7a0JBQXpCLEtBQUs7WUFDRyxzQkFBc0I7a0JBQTlCLEtBQUs7WUFDRyxnQkFBZ0I7a0JBQXhCLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxNQUFNO2tCQUFkLEtBQUs7WUFDRyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBQ0csYUFBYTtrQkFBckIsS0FBSztZQUNHLFlBQVk7a0JBQXBCLEtBQUs7WUFDRyxlQUFlO2tCQUF2QixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBQ0csUUFBUTtrQkFBaEIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNHLGNBQWM7a0JBQXRCLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQXlJTixXQUFXO2tCQURWLFlBQVk7bUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBUWhDLFdBQVc7a0JBRFYsWUFBWTttQkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFRaEMsYUFBYTtrQkFEWixZQUFZO21CQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVFsQyxXQUFXO2tCQURWLFlBQVk7bUJBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDOztrRkF4THJCLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcblxuaW50ZXJmYWNlIERvY3VzZWFsRmllbGQge1xuICBuYW1lOiBzdHJpbmcsXG4gIHR5cGU/OiBzdHJpbmcsXG4gIHJvbGU/OiBzdHJpbmcsXG4gIGRlZmF1bHRfdmFsdWU/OiBzdHJpbmcsXG59XG5cbmludGVyZmFjZSBBZnRlclZpZXdJbml0IHtcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWRcbn1cbmludGVyZmFjZSBPbkNoYW5nZXMge1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZFxufVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImRvY3VzZWFsLWJ1aWxkZXJcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IFwiXCIsXG4gIHN0eWxlczogW11cbn0pXG5cbmV4cG9ydCBjbGFzcyBEb2N1c2VhbEJ1aWxkZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSB0b2tlbjogc3RyaW5nID0gXCJcIlxuICBASW5wdXQoKSBob3N0OiBzdHJpbmcgPSBcImNkbi5kb2N1c2VhbC5jb1wiXG4gIEBJbnB1dCgpIGxhbmd1YWdlOiBzdHJpbmcgPSBcImVuXCJcbiAgQElucHV0KCkgcHJldmlldzogYm9vbGVhbiA9IGZhbHNlXG4gIEBJbnB1dCgpIGF1dG9zYXZlOiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSB3aXRoUmVjaXBpZW50c0J1dHRvbjogYm9vbGVhbiA9IHRydWVcbiAgQElucHV0KCkgd2l0aERvY3VtZW50c0xpc3Q6IGJvb2xlYW4gPSB0cnVlXG4gIEBJbnB1dCgpIHdpdGhGaWVsZHNMaXN0OiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSB3aXRoU2VuZEJ1dHRvbjogYm9vbGVhbiA9IHRydWVcbiAgQElucHV0KCkgd2l0aFRpdGxlOiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSBvbmx5RGVmaW5lZEZpZWxkczogYm9vbGVhbiA9IGZhbHNlXG4gIEBJbnB1dCgpIHdpdGhTaWduWW91cnNlbGZCdXR0b246IGJvb2xlYW4gPSB0cnVlXG4gIEBJbnB1dCgpIHdpdGhVcGxvYWRCdXR0b246IGJvb2xlYW4gPSB0cnVlXG4gIEBJbnB1dCgpIHJvbGVzOiBzdHJpbmdbXSA9IFtdXG4gIEBJbnB1dCgpIGZpZWxkczogRG9jdXNlYWxGaWVsZFtdID0gW11cbiAgQElucHV0KCkgaTE4bjogb2JqZWN0ID0ge31cbiAgQElucHV0KCkgZmllbGRUeXBlczogc3RyaW5nW10gPSBbXVxuICBASW5wdXQoKSBkcmF3RmllbGRUeXBlOiBzdHJpbmcgPSBcInRleHRcIlxuICBASW5wdXQoKSBjdXN0b21CdXR0b246IHsgdGl0bGU6IHN0cmluZywgdXJsOiBzdHJpbmcgfSA9IHsgdGl0bGU6IFwiXCIsIHVybDogXCJcIiB9XG4gIEBJbnB1dCgpIGJhY2tncm91bmRDb2xvcjogc3RyaW5nID0gXCJcIlxuICBASW5wdXQoKSBvbkxvYWQ6IChkZXRhaWw6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9XG4gIEBJbnB1dCgpIG9uVXBsb2FkOiAoZGV0YWlsOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fVxuICBASW5wdXQoKSBvblNlbmQ6IChkZXRhaWw6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9XG4gIEBJbnB1dCgpIG9uU2F2ZTogKGRldGFpbDogYW55KSA9PiB2b2lkID0gKCkgPT4ge31cbiAgQElucHV0KCkgc2VuZEJ1dHRvblRleHQ6IHN0cmluZyA9IFwiXCJcbiAgQElucHV0KCkgc2F2ZUJ1dHRvblRleHQ6IHN0cmluZyA9IFwiXCJcbiAgQElucHV0KCkgY3VzdG9tQ3NzOiBzdHJpbmcgPSBcIlwiXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cblxuICBnZXQgYXR0cmlidXRlcyAoKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNyYzoge1xuICAgICAgICBuYW1lOiBcImRhdGEtdG9rZW5cIixcbiAgICAgICAgdmFsdWU6ICgpID0+IHRoaXMudG9rZW5cbiAgICAgIH0sXG4gICAgICBwcmV2aWV3OiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS1wcmV2aWV3XCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLnByZXZpZXdcbiAgICAgIH0sXG4gICAgICBsYW5ndWFnZToge1xuICAgICAgICBuYW1lOiBcImRhdGEtbGFuZ3VhZ2VcIixcbiAgICAgICAgdmFsdWU6ICgpID0+IHRoaXMubGFuZ3VhZ2VcbiAgICAgIH0sXG4gICAgICBhdXRvc2F2ZToge1xuICAgICAgICBuYW1lOiBcImRhdGEtYXV0b3NhdmVcIixcbiAgICAgICAgdmFsdWU6ICgpID0+IHRoaXMuYXV0b3NhdmVcbiAgICAgIH0sXG4gICAgICBzZW5kQnV0dG9uVGV4dDoge1xuICAgICAgICBuYW1lOiBcImRhdGEtc2VuZC1idXR0b24tdGV4dFwiLFxuICAgICAgICB2YWx1ZTogKCkgPT4gdGhpcy5zZW5kQnV0dG9uVGV4dFxuICAgICAgfSxcbiAgICAgIHNhdmVCdXR0b25UZXh0OiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS1zYXZlLWJ1dHRvbi10ZXh0XCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLnNhdmVCdXR0b25UZXh0XG4gICAgICB9LFxuICAgICAgcm9sZXM6IHtcbiAgICAgICAgbmFtZTogXCJkYXRhLXJvbGVzXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLnJvbGVzLmpvaW4oJywnKVxuICAgICAgfSxcbiAgICAgIGZpZWxkVHlwZXM6IHtcbiAgICAgICAgbmFtZTogXCJkYXRhLWZpZWxkLXR5cGVzXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLmZpZWxkVHlwZXMuam9pbignLCcpXG4gICAgICB9LFxuICAgICAgZHJhd0ZpZWxkVHlwZToge1xuICAgICAgICBuYW1lOiBcImRhdGEtZHJhdy1maWVsZC10eXBlXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLmRyYXdGaWVsZFR5cGVcbiAgICAgIH0sXG4gICAgICBmaWVsZHM6IHtcbiAgICAgICAgbmFtZTogXCJkYXRhLWZpZWxkc1wiLFxuICAgICAgICB2YWx1ZTogKCkgPT4gSlNPTi5zdHJpbmdpZnkodGhpcy5maWVsZHMpXG4gICAgICB9LFxuICAgICAgaTE4bjoge1xuICAgICAgICBuYW1lOiBcImRhdGEtaTE4blwiLFxuICAgICAgICB2YWx1ZTogKCkgPT4gSlNPTi5zdHJpbmdpZnkodGhpcy5pMThuKVxuICAgICAgfSxcbiAgICAgIGN1c3RvbUJ1dHRvbjogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJkYXRhLWN1c3RvbS1idXR0b24tdGl0bGVcIixcbiAgICAgICAgICB2YWx1ZTogKCkgPT4gdGhpcy5jdXN0b21CdXR0b24udGl0bGVcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiZGF0YS1jdXN0b20tYnV0dG9uLXVybFwiLFxuICAgICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLmN1c3RvbUJ1dHRvbi51cmxcbiAgICAgICAgfVxuICAgICAgXSxcbiAgICAgIHdpdGhSZWNpcGllbnRzQnV0dG9uOiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS13aXRoLXJlY2lwaWVudHMtYnV0dG9uXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLndpdGhSZWNpcGllbnRzQnV0dG9uXG4gICAgICB9LFxuICAgICAgd2l0aFNlbmRCdXR0b246IHtcbiAgICAgICAgbmFtZTogXCJkYXRhLXdpdGgtc2VuZC1idXR0b25cIixcbiAgICAgICAgdmFsdWU6ICgpID0+IHRoaXMud2l0aFNlbmRCdXR0b25cbiAgICAgIH0sXG4gICAgICB3aXRoRG9jdW1lbnRzTGlzdDoge1xuICAgICAgICBuYW1lOiBcImRhdGEtd2l0aC1kb2N1bWVudHMtbGlzdFwiLFxuICAgICAgICB2YWx1ZTogKCkgPT4gdGhpcy53aXRoRG9jdW1lbnRzTGlzdFxuICAgICAgfSxcbiAgICAgIHdpdGhGaWVsZHNMaXN0OiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS13aXRoLWZpZWxkcy1saXN0XCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLndpdGhGaWVsZHNMaXN0XG4gICAgICB9LFxuICAgICAgd2l0aFRpdGxlOiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS13aXRoLXRpdGxlXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLndpdGhUaXRsZVxuICAgICAgfSxcbiAgICAgIG9ubHlEZWZpbmVkRmllbGRzOiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS1vbmx5LWRlZmluZWQtZmllbGRzXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLm9ubHlEZWZpbmVkRmllbGRzXG4gICAgICB9LFxuICAgICAgd2l0aFVwbG9hZEJ1dHRvbjoge1xuICAgICAgICBuYW1lOiBcImRhdGEtd2l0aC11cGxvYWQtYnV0dG9uXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLndpdGhVcGxvYWRCdXR0b25cbiAgICAgIH0sXG4gICAgICB3aXRoU2lnbllvdXJzZWxmQnV0dG9uOiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS13aXRoLXNpZ24teW91cnNlbGYtYnV0dG9uXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLndpdGhTaWduWW91cnNlbGZCdXR0b25cbiAgICAgIH0sXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHtcbiAgICAgICAgbmFtZTogXCJkYXRhLWJhY2tncm91bmQtY29sb3JcIixcbiAgICAgICAgdmFsdWU6ICgpID0+IHRoaXMuYmFja2dyb3VuZENvbG9yXG4gICAgICB9LFxuICAgICAgY3VzdG9tQ3NzOiB7XG4gICAgICAgIG5hbWU6IFwiZGF0YS1jdXN0b20tY3NzXCIsXG4gICAgICAgIHZhbHVlOiAoKSA9PiB0aGlzLmN1c3RvbUNzc1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBidWlsZGVyID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuXG4gICAgT2JqZWN0LmVudHJpZXModGhpcy5hdHRyaWJ1dGVzKS5mb3JFYWNoKChbXywgYXR0cmlidXRlXSkgPT4ge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYXR0cmlidXRlKSkge1xuICAgICAgICBhdHRyaWJ1dGUuZm9yRWFjaCgoYXR0cikgPT4ge1xuICAgICAgICAgIGJ1aWxkZXIuc2V0QXR0cmlidXRlKGF0dHIubmFtZSwgYXR0ci52YWx1ZSgpKVxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIGlmIChhdHRyaWJ1dGUpIHtcbiAgICAgICAgYnVpbGRlci5zZXRBdHRyaWJ1dGUoYXR0cmlidXRlLm5hbWUsIGF0dHJpYnV0ZS52YWx1ZSgpKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICB0aGlzLmxvYWRTY3JpcHQoKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgYXR0cmlidXRlcyA9IHRoaXMuYXR0cmlidXRlc1xuXG4gICAgT2JqZWN0LmVudHJpZXMoY2hhbmdlcykuZm9yRWFjaCgoW2tleSwgY2hhbmdlXSkgPT4ge1xuICAgICAgY29uc3QgYXR0cmlidXRlID0gYXR0cmlidXRlc1trZXldXG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGF0dHJpYnV0ZSkpIHtcbiAgICAgICAgYXR0cmlidXRlLmZvckVhY2goKGF0dHIpID0+IHtcbiAgICAgICAgICBidWlsZGVyLnNldEF0dHJpYnV0ZShhdHRyLm5hbWUsIGF0dHIudmFsdWUoKSlcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSBpZiAoYXR0cmlidXRlKSB7XG4gICAgICAgIGJ1aWxkZXIuc2V0QXR0cmlidXRlKGF0dHJpYnV0ZS5uYW1lLCBjaGFuZ2UuY3VycmVudFZhbHVlKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdzZW5kJywgWyckZXZlbnQnXSlcbiAgb25TZW5kRXZlbnQoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMub25TZW5kKSB7XG4gICAgICB0aGlzLm9uU2VuZChldmVudC5kZXRhaWwpXG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbG9hZCcsIFsnJGV2ZW50J10pXG4gIG9uTG9hZEV2ZW50KGV2ZW50OiBDdXN0b21FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm9uTG9hZCkge1xuICAgICAgdGhpcy5vbkxvYWQoZXZlbnQuZGV0YWlsKVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3VwbG9hZCcsIFsnJGV2ZW50J10pXG4gIG9uVXBsb2FkRXZlbnQoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMub25VcGxvYWQpIHtcbiAgICAgIHRoaXMub25VcGxvYWQoZXZlbnQuZGV0YWlsKVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3NhdmUnLCBbJyRldmVudCddKVxuICBvblNhdmVFdmVudChldmVudDogQ3VzdG9tRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vblNhdmUpIHtcbiAgICAgIHRoaXMub25TYXZlKGV2ZW50LmRldGFpbClcbiAgICB9XG4gIH1cblxuICBsb2FkU2NyaXB0KCk6IHZvaWQge1xuICAgIGNvbnN0IHNjcmlwdElkID0gJ2RvY3VzZWFsLWJ1aWxkZXItc2NyaXB0J1xuICAgIGNvbnN0IHNjcmlwdFNyYyA9IGBodHRwczovLyR7dGhpcy5ob3N0fS9qcy9idWlsZGVyLmpzYFxuICAgIGNvbnN0IHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJzY3JpcHRcIilcblxuICAgIHNjcmlwdC5pZCA9IHNjcmlwdElkXG4gICAgc2NyaXB0LmFzeW5jID0gdHJ1ZVxuICAgIHNjcmlwdC5zcmMgPSBzY3JpcHRTcmNcblxuICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoc2NyaXB0KVxuICB9XG59XG4iXX0=
|
|
233
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFvQjNFLE1BQU0sT0FBTyx3QkFBd0I7SUFDMUIsS0FBSyxHQUFXLEVBQUUsQ0FBQTtJQUNsQixJQUFJLEdBQVcsaUJBQWlCLENBQUE7SUFDaEMsUUFBUSxHQUFXLElBQUksQ0FBQTtJQUN2QixPQUFPLEdBQVksS0FBSyxDQUFBO0lBQ3hCLFFBQVEsR0FBWSxJQUFJLENBQUE7SUFDeEIsb0JBQW9CLEdBQVksSUFBSSxDQUFBO0lBQ3BDLGlCQUFpQixHQUFZLElBQUksQ0FBQTtJQUNqQyxjQUFjLEdBQVksSUFBSSxDQUFBO0lBQzlCLGNBQWMsR0FBWSxJQUFJLENBQUE7SUFDOUIsU0FBUyxHQUFZLElBQUksQ0FBQTtJQUN6QixpQkFBaUIsR0FBWSxLQUFLLENBQUE7SUFDbEMsc0JBQXNCLEdBQVksSUFBSSxDQUFBO0lBQ3RDLGdCQUFnQixHQUFZLElBQUksQ0FBQTtJQUNoQyxLQUFLLEdBQWEsRUFBRSxDQUFBO0lBQ3BCLE1BQU0sR0FBb0IsRUFBRSxDQUFBO0lBQzVCLElBQUksR0FBVyxFQUFFLENBQUE7SUFDakIsVUFBVSxHQUFhLEVBQUUsQ0FBQTtJQUN6QixhQUFhLEdBQVcsTUFBTSxDQUFBO0lBQzlCLFlBQVksR0FBbUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQTtJQUNyRSxlQUFlLEdBQVcsRUFBRSxDQUFBO0lBQzVCLE1BQU0sR0FBMEIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBQ3hDLFFBQVEsR0FBMEIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFBO0lBQzFDLE1BQU0sR0FBMEIsR0FB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QUE5QyxXQUFXO21CQUFDLGtCQUFrQjtZQUNJLFFBQVE7a0JBQTFDLFdBQVc7bUJBQUMsZ0JBQWdCO1lBQ3FCLHFCQUFxQjtrQkFBdEUsV0FBVzttQkFBQywrQkFBK0I7WUFDSSxtQkFBbUI7a0JBQWxFLFdBQVc7bUJBQUMsNkJBQTZCO1lBQ1csd0JBQXdCO2tCQUE1RSxXQUFXO21CQUFDLGtDQUFrQztZQUNBLGtCQUFrQjtrQkFBaEUsV0FBVzttQkFBQyw0QkFBNEI7WUFDUyxxQkFBcUI7a0JBQXRFLFdBQVc7bUJBQUMsK0JBQStCO1lBQ0csa0JBQWtCO2tCQUFoRSxXQUFXO21CQUFDLDRCQUE0QjtZQUNBLGFBQWE7a0JBQXJELFdBQVc7bUJBQUMsc0JBQXNCO1lBQ2UscUJBQXFCO2tCQUF0RSxXQUFXO21CQUFDLCtCQUErQjtZQUNLLG9CQUFvQjtrQkFBcEUsV0FBVzttQkFBQyw4QkFBOEI7WUFDYSwwQkFBMEI7a0JBQWpGLFdBQVc7bUJBQUMscUNBQXFDO1lBQ0gsbUJBQW1CO2tCQUFqRSxXQUFXO21CQUFDLDRCQUE0QjtZQUNBLGFBQWE7a0JBQXJELFdBQVc7bUJBQUMsc0JBQXNCO1lBT25DLFdBQVc7a0JBRFYsWUFBWTttQkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFRaEMsV0FBVztrQkFEVixZQUFZO21CQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVFoQyxhQUFhO2tCQURaLFlBQVk7bUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBUWxDLFdBQVc7a0JBRFYsWUFBWTttQkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQTlFckIsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgSG9zdExpc3RlbmVyLCBIb3N0QmluZGluZyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcblxuaW50ZXJmYWNlIERvY3VzZWFsRmllbGQge1xuICBuYW1lOiBzdHJpbmcsXG4gIHR5cGU/OiBzdHJpbmcsXG4gIHJvbGU/OiBzdHJpbmcsXG4gIGRlZmF1bHRfdmFsdWU/OiBzdHJpbmcsXG59XG5cbmludGVyZmFjZSBBZnRlclZpZXdJbml0IHtcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWRcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImRvY3VzZWFsLWJ1aWxkZXJcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IFwiXCIsXG4gIHN0eWxlczogW11cbn0pXG5cbmV4cG9ydCBjbGFzcyBEb2N1c2VhbEJ1aWxkZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgdG9rZW46IHN0cmluZyA9IFwiXCJcbiAgQElucHV0KCkgaG9zdDogc3RyaW5nID0gXCJjZG4uZG9jdXNlYWwuY29cIlxuICBASW5wdXQoKSBsYW5ndWFnZTogc3RyaW5nID0gXCJlblwiXG4gIEBJbnB1dCgpIHByZXZpZXc6IGJvb2xlYW4gPSBmYWxzZVxuICBASW5wdXQoKSBhdXRvc2F2ZTogYm9vbGVhbiA9IHRydWVcbiAgQElucHV0KCkgd2l0aFJlY2lwaWVudHNCdXR0b246IGJvb2xlYW4gPSB0cnVlXG4gIEBJbnB1dCgpIHdpdGhEb2N1bWVudHNMaXN0OiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSB3aXRoRmllbGRzTGlzdDogYm9vbGVhbiA9IHRydWVcbiAgQElucHV0KCkgd2l0aFNlbmRCdXR0b246IGJvb2xlYW4gPSB0cnVlXG4gIEBJbnB1dCgpIHdpdGhUaXRsZTogYm9vbGVhbiA9IHRydWVcbiAgQElucHV0KCkgb25seURlZmluZWRGaWVsZHM6IGJvb2xlYW4gPSBmYWxzZVxuICBASW5wdXQoKSB3aXRoU2lnbllvdXJzZWxmQnV0dG9uOiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSB3aXRoVXBsb2FkQnV0dG9uOiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSByb2xlczogc3RyaW5nW10gPSBbXVxuICBASW5wdXQoKSBmaWVsZHM6IERvY3VzZWFsRmllbGRbXSA9IFtdXG4gIEBJbnB1dCgpIGkxOG46IG9iamVjdCA9IHt9XG4gIEBJbnB1dCgpIGZpZWxkVHlwZXM6IHN0cmluZ1tdID0gW11cbiAgQElucHV0KCkgZHJhd0ZpZWxkVHlwZTogc3RyaW5nID0gXCJ0ZXh0XCJcbiAgQElucHV0KCkgY3VzdG9tQnV0dG9uOiB7IHRpdGxlOiBzdHJpbmcsIHVybDogc3RyaW5nIH0gPSB7IHRpdGxlOiBcIlwiLCB1cmw6IFwiXCIgfVxuICBASW5wdXQoKSBiYWNrZ3JvdW5kQ29sb3I6IHN0cmluZyA9IFwiXCJcbiAgQElucHV0KCkgb25Mb2FkOiAoZGV0YWlsOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fVxuICBASW5wdXQoKSBvblVwbG9hZDogKGRldGFpbDogYW55KSA9PiB2b2lkID0gKCkgPT4ge31cbiAgQElucHV0KCkgb25TZW5kOiAoZGV0YWlsOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fVxuICBASW5wdXQoKSBvblNhdmU6IChkZXRhaWw6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9XG4gIEBJbnB1dCgpIHNlbmRCdXR0b25UZXh0OiBzdHJpbmcgPSBcIlwiXG4gIEBJbnB1dCgpIHNhdmVCdXR0b25UZXh0OiBzdHJpbmcgPSBcIlwiXG4gIEBJbnB1dCgpIGN1c3RvbUNzczogc3RyaW5nID0gXCJcIlxuXG4gIEBIb3N0QmluZGluZyhcImF0dHIuZGF0YS10b2tlblwiKSBnZXQgZGF0YVRva2VuKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLnRva2VuIH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLXByZXZpZXdcIikgZ2V0IGRhdGFQcmV2aWV3KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5wcmV2aWV3IH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLWxhbmd1YWdlXCIpIGdldCBkYXRhTGFuZ3VhZ2UoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMubGFuZ3VhZ2UgfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtYXV0b3NhdmVcIikgZ2V0IGRhdGFBdXRvc2F2ZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuYXV0b3NhdmUgfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtc2VuZC1idXR0b24tdGV4dFwiKSBnZXQgZGF0YVNlbmRCdXR0b25UZXh0KCk6IHN0cmluZyB7IHJldHVybiB0aGlzLnNlbmRCdXR0b25UZXh0IH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLXNhdmUtYnV0dG9uLXRleHRcIikgZ2V0IGRhdGFTYXZlQnV0dG9uVGV4dCgpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5zYXZlQnV0dG9uVGV4dCB9XG4gIEBIb3N0QmluZGluZyhcImF0dHIuZGF0YS1yb2xlc1wiKSBnZXQgZGF0YVJvbGVzKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLnJvbGVzLmpvaW4oJywnKSB9XG4gIEBIb3N0QmluZGluZyhcImF0dHIuZGF0YS1maWVsZC10eXBlc1wiKSBnZXQgZGF0YUZpZWxkVHlwZXMoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuZmllbGRUeXBlcy5qb2luKCcsJykgfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtZHJhdy1maWVsZC10eXBlXCIpIGdldCBkYXRhRHJhd0ZpZWxkVHlwZSgpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5kcmF3RmllbGRUeXBlIH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLWZpZWxkc1wiKSBnZXQgZGF0YUZpZWxkcygpOiBzdHJpbmcgeyByZXR1cm4gSlNPTi5zdHJpbmdpZnkodGhpcy5maWVsZHMpIH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLWkxOG5cIikgZ2V0IGRhdGFJMThuKCk6IHN0cmluZyB7IHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLmkxOG4pIH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLWN1c3RvbS1idXR0b24tdGl0bGVcIikgZ2V0IGRhdGFDdXN0b21CdXR0b25UaXRsZSgpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5jdXN0b21CdXR0b24udGl0bGUgfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtY3VzdG9tLWJ1dHRvbi11cmxcIikgZ2V0IGRhdGFDdXN0b21CdXR0b25VcmwoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuY3VzdG9tQnV0dG9uLnVybCB9XG4gIEBIb3N0QmluZGluZyhcImF0dHIuZGF0YS13aXRoLXJlY2lwaWVudHMtYnV0dG9uXCIpIGdldCBkYXRhV2l0aFJlY2lwaWVudHNCdXR0b24oKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLndpdGhSZWNpcGllbnRzQnV0dG9uIH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLXdpdGgtc2VuZC1idXR0b25cIikgZ2V0IGRhdGFXaXRoU2VuZEJ1dHRvbigpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMud2l0aFNlbmRCdXR0b24gfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtd2l0aC1kb2N1bWVudHMtbGlzdFwiKSBnZXQgZGF0YVdpdGhEb2N1bWVudHNMaXN0KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy53aXRoRG9jdW1lbnRzTGlzdCB9XG4gIEBIb3N0QmluZGluZyhcImF0dHIuZGF0YS13aXRoLWZpZWxkcy1saXN0XCIpIGdldCBkYXRhV2l0aEZpZWxkc0xpc3QoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLndpdGhGaWVsZHNMaXN0IH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLXdpdGgtdGl0bGVcIikgZ2V0IGRhdGFXaXRoVGl0bGUoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLndpdGhUaXRsZSB9XG4gIEBIb3N0QmluZGluZyhcImF0dHIuZGF0YS1vbmx5LWRlZmluZWQtZmllbGRzXCIpIGdldCBkYXRhT25seURlZmluZWRGaWVsZHMoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLm9ubHlEZWZpbmVkRmllbGRzIH1cbiAgQEhvc3RCaW5kaW5nKFwiYXR0ci5kYXRhLXdpdGgtdXBsb2FkLWJ1dHRvblwiKSBnZXQgZGF0YVdpdGhVcGxvYWRCdXR0b24oKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLndpdGhVcGxvYWRCdXR0b24gfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtd2l0aC1zaWduLXlvdXJzZWxmLWJ1dHRvblwiKSBnZXQgZGF0YVdpdGhTaWduWW91cnNlbGZCdXR0b24oKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLndpdGhTaWduWW91cnNlbGZCdXR0b24gfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtYmFja2dyb3VuZC1jb2xvclwiKSBnZXQgZGF0YUJhY2tncm91bmRDb2xvcigpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5iYWNrZ3JvdW5kQ29sb3IgfVxuICBASG9zdEJpbmRpbmcoXCJhdHRyLmRhdGEtY3VzdG9tLWNzc1wiKSBnZXQgZGF0YUN1c3RvbUNzcygpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5jdXN0b21Dc3MgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRTY3JpcHQoKVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignc2VuZCcsIFsnJGV2ZW50J10pXG4gIG9uU2VuZEV2ZW50KGV2ZW50OiBDdXN0b21FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm9uU2VuZCkge1xuICAgICAgdGhpcy5vblNlbmQoZXZlbnQuZGV0YWlsKVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2xvYWQnLCBbJyRldmVudCddKVxuICBvbkxvYWRFdmVudChldmVudDogQ3VzdG9tRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vbkxvYWQpIHtcbiAgICAgIHRoaXMub25Mb2FkKGV2ZW50LmRldGFpbClcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd1cGxvYWQnLCBbJyRldmVudCddKVxuICBvblVwbG9hZEV2ZW50KGV2ZW50OiBDdXN0b21FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm9uVXBsb2FkKSB7XG4gICAgICB0aGlzLm9uVXBsb2FkKGV2ZW50LmRldGFpbClcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdzYXZlJywgWyckZXZlbnQnXSlcbiAgb25TYXZlRXZlbnQoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMub25TYXZlKSB7XG4gICAgICB0aGlzLm9uU2F2ZShldmVudC5kZXRhaWwpXG4gICAgfVxuICB9XG5cbiAgbG9hZFNjcmlwdCgpOiB2b2lkIHtcbiAgICBjb25zdCBzY3JpcHRJZCA9ICdkb2N1c2VhbC1idWlsZGVyLXNjcmlwdCdcbiAgICBjb25zdCBzY3JpcHRTcmMgPSBgaHR0cHM6Ly8ke3RoaXMuaG9zdH0vanMvYnVpbGRlci5qc2BcbiAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpXG5cbiAgICBzY3JpcHQuaWQgPSBzY3JpcHRJZFxuICAgIHNjcmlwdC5hc3luYyA9IHRydWVcbiAgICBzY3JpcHQuc3JjID0gc2NyaXB0U3JjXG5cbiAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdClcbiAgfVxufVxuIl19
|