@ngxi/codex 0.11.21 → 0.11.23

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.
@@ -6,33 +6,33 @@ export declare class CodexAddBackgroundIcon {
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<CodexAddBackgroundIcon, never>;
7
7
  static ɵcmp: i0.ɵɵComponentDeclaration<CodexAddBackgroundIcon, "svg[codexAddBackgroundIcon],svg[codex-add-background-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
8
  }
9
- export declare class CodexAlignCenterIcon {
9
+ export declare class CodexAddBorderIcon {
10
10
  readonly viewBox: import("@angular/core").InputSignal<string>;
11
11
  readonly width: import("@angular/core").InputSignal<string>;
12
12
  readonly height: import("@angular/core").InputSignal<string>;
13
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexAlignCenterIcon, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexAlignCenterIcon, "svg[codexAlignCenterIcon],svg[codex-align-center-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexAddBorderIcon, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexAddBorderIcon, "svg[codexAddBorderIcon],svg[codex-add-border-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
15
15
  }
16
- export declare class CodexAlignJustifyIcon {
16
+ export declare class CodexAlignCenterIcon {
17
17
  readonly viewBox: import("@angular/core").InputSignal<string>;
18
18
  readonly width: import("@angular/core").InputSignal<string>;
19
19
  readonly height: import("@angular/core").InputSignal<string>;
20
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexAlignJustifyIcon, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexAlignJustifyIcon, "svg[codexAlignJustifyIcon],svg[codex-align-justify-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexAlignCenterIcon, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexAlignCenterIcon, "svg[codexAlignCenterIcon],svg[codex-align-center-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
22
22
  }
23
- export declare class CodexAddBorderIcon {
23
+ export declare class CodexAlignLeftIcon {
24
24
  readonly viewBox: import("@angular/core").InputSignal<string>;
25
25
  readonly width: import("@angular/core").InputSignal<string>;
26
26
  readonly height: import("@angular/core").InputSignal<string>;
27
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexAddBorderIcon, never>;
28
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexAddBorderIcon, "svg[codexAddBorderIcon],svg[codex-add-border-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexAlignLeftIcon, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexAlignLeftIcon, "svg[codexAlignLeftIcon],svg[codex-align-left-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
29
29
  }
30
- export declare class CodexAlignLeftIcon {
30
+ export declare class CodexAlignJustifyIcon {
31
31
  readonly viewBox: import("@angular/core").InputSignal<string>;
32
32
  readonly width: import("@angular/core").InputSignal<string>;
33
33
  readonly height: import("@angular/core").InputSignal<string>;
34
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexAlignLeftIcon, never>;
35
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexAlignLeftIcon, "svg[codexAlignLeftIcon],svg[codex-align-left-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
34
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexAlignJustifyIcon, never>;
35
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexAlignJustifyIcon, "svg[codexAlignJustifyIcon],svg[codex-align-justify-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
36
36
  }
37
37
  export declare class CodexAlignRightIcon {
38
38
  readonly viewBox: import("@angular/core").InputSignal<string>;
@@ -62,13 +62,6 @@ export declare class CodexBracketsVerticalIcon {
62
62
  static ɵfac: i0.ɵɵFactoryDeclaration<CodexBracketsVerticalIcon, never>;
63
63
  static ɵcmp: i0.ɵɵComponentDeclaration<CodexBracketsVerticalIcon, "svg[codexBracketsVerticalIcon],svg[codex-brackets-vertical-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
64
64
  }
65
- export declare class CodexCheckIcon {
66
- readonly viewBox: import("@angular/core").InputSignal<string>;
67
- readonly width: import("@angular/core").InputSignal<string>;
68
- readonly height: import("@angular/core").InputSignal<string>;
69
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexCheckIcon, never>;
70
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexCheckIcon, "svg[codexCheckIcon],svg[codex-check-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
71
- }
72
65
  export declare class CodexChecklistIcon {
73
66
  readonly viewBox: import("@angular/core").InputSignal<string>;
74
67
  readonly width: import("@angular/core").InputSignal<string>;
@@ -76,12 +69,12 @@ export declare class CodexChecklistIcon {
76
69
  static ɵfac: i0.ɵɵFactoryDeclaration<CodexChecklistIcon, never>;
77
70
  static ɵcmp: i0.ɵɵComponentDeclaration<CodexChecklistIcon, "svg[codexChecklistIcon],svg[codex-checklist-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
78
71
  }
79
- export declare class CodexChevronDownIcon {
72
+ export declare class CodexCheckIcon {
80
73
  readonly viewBox: import("@angular/core").InputSignal<string>;
81
74
  readonly width: import("@angular/core").InputSignal<string>;
82
75
  readonly height: import("@angular/core").InputSignal<string>;
83
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexChevronDownIcon, never>;
84
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexChevronDownIcon, "svg[codexChevronDownIcon],svg[codex-chevron-down-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
76
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexCheckIcon, never>;
77
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexCheckIcon, "svg[codexCheckIcon],svg[codex-check-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
85
78
  }
86
79
  export declare class CodexChevronLeftIcon {
87
80
  readonly viewBox: import("@angular/core").InputSignal<string>;
@@ -90,6 +83,13 @@ export declare class CodexChevronLeftIcon {
90
83
  static ɵfac: i0.ɵɵFactoryDeclaration<CodexChevronLeftIcon, never>;
91
84
  static ɵcmp: i0.ɵɵComponentDeclaration<CodexChevronLeftIcon, "svg[codexChevronLeftIcon],svg[codex-chevron-left-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
92
85
  }
86
+ export declare class CodexChevronDownIcon {
87
+ readonly viewBox: import("@angular/core").InputSignal<string>;
88
+ readonly width: import("@angular/core").InputSignal<string>;
89
+ readonly height: import("@angular/core").InputSignal<string>;
90
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexChevronDownIcon, never>;
91
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexChevronDownIcon, "svg[codexChevronDownIcon],svg[codex-chevron-down-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
92
+ }
93
93
  export declare class CodexChevronRightIcon {
94
94
  readonly viewBox: import("@angular/core").InputSignal<string>;
95
95
  readonly width: import("@angular/core").InputSignal<string>;
@@ -111,6 +111,13 @@ export declare class CodexClipboardIcon {
111
111
  static ɵfac: i0.ɵɵFactoryDeclaration<CodexClipboardIcon, never>;
112
112
  static ɵcmp: i0.ɵɵComponentDeclaration<CodexClipboardIcon, "svg[codexClipboardIcon],svg[codex-clipboard-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
113
113
  }
114
+ export declare class CodexColorIcon {
115
+ readonly viewBox: import("@angular/core").InputSignal<string>;
116
+ readonly width: import("@angular/core").InputSignal<string>;
117
+ readonly height: import("@angular/core").InputSignal<string>;
118
+ static ɵfac: i0.ɵɵFactoryDeclaration<CodexColorIcon, never>;
119
+ static ɵcmp: i0.ɵɵComponentDeclaration<CodexColorIcon, "svg[codexColorIcon],svg[codex-color-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
120
+ }
114
121
  export declare class CodexCollapseIcon {
115
122
  readonly viewBox: import("@angular/core").InputSignal<string>;
116
123
  readonly width: import("@angular/core").InputSignal<string>;
@@ -125,13 +132,6 @@ export declare class CodexCopyIcon {
125
132
  static ɵfac: i0.ɵɵFactoryDeclaration<CodexCopyIcon, never>;
126
133
  static ɵcmp: i0.ɵɵComponentDeclaration<CodexCopyIcon, "svg[codexCopyIcon],svg[codex-copy-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
127
134
  }
128
- export declare class CodexColorIcon {
129
- readonly viewBox: import("@angular/core").InputSignal<string>;
130
- readonly width: import("@angular/core").InputSignal<string>;
131
- readonly height: import("@angular/core").InputSignal<string>;
132
- static ɵfac: i0.ɵɵFactoryDeclaration<CodexColorIcon, never>;
133
- static ɵcmp: i0.ɵɵComponentDeclaration<CodexColorIcon, "svg[codexColorIcon],svg[codex-color-icon]", never, { "viewBox": { "alias": "viewBox"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
134
- }
135
135
  export declare class CodexCrossIcon {
136
136
  readonly viewBox: import("@angular/core").InputSignal<string>;
137
137
  readonly width: import("@angular/core").InputSignal<string>;
@@ -21,88 +21,88 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
21
21
  template: `<svg:g fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2"><svg:path stroke-linejoin="round" d="M11 19c-1.864 0-2.796 0-3.53-.305a4 4 0 0 1-2.166-2.164C5 15.796 5 14.864 5 13v-1c0-2.809 0-4.213.674-5.222a4 4 0 0 1 1.104-1.104C7.787 5 9.19 5 12 5h1.5c1.396 0 2.093 0 2.661.172a4 4 0 0 1 2.667 2.667C19 8.407 19 9.104 19 10.5v0"></svg:path><svg:path d="M16 13v3m0 3v-3m3 0h-3m0 0h-3"></svg:path><svg:path stroke-linejoin="round" d="m6.5 17.5l11-11m1.492 4h.01m-8.01 8.5h.01M5 13l8-8"></svg:path></svg:g>`,
22
22
  }]
23
23
  }] });
24
- export class CodexAlignCenterIcon {
24
+ export class CodexAddBorderIcon {
25
25
  viewBox = input("0 0 24 24");
26
26
  width = input("1em");
27
27
  height = input("1em");
28
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignCenterIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAlignCenterIcon, isStandalone: true, selector: "svg[codexAlignCenterIcon],svg[codex-align-center-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m10-5H8"></svg:path>`, isInline: true });
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAddBorderIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAddBorderIcon, isStandalone: true, selector: "svg[codexAddBorderIcon],svg[codex-add-border-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" stroke-linejoin="round" d="M18.992 9.5h.01M14.5 5h.01"></svg:path><svg:path stroke-linecap="round" d="M14.625 5H15a4 4 0 0 1 4 4v.375"></svg:path><svg:path d="M9.375 5H9a4 4 0 0 0-4 4v.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 5h.01M5 9.5h.01"></svg:path><svg:path d="M9.375 19H9a4 4 0 0 1-4-4v-.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 19h.01M5 14.55h.01"></svg:path><svg:path stroke-linecap="round" d="M16 13v3m0 3v-3m3 0h-3m0 0h-3"></svg:path></svg:g>`, isInline: true });
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignCenterIcon, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAddBorderIcon, decorators: [{
32
32
  type: Component,
33
33
  args: [{
34
34
  standalone: true,
35
- selector: 'svg[codexAlignCenterIcon],svg[codex-align-center-icon]',
35
+ selector: 'svg[codexAddBorderIcon],svg[codex-add-border-icon]',
36
36
  host: {
37
37
  role: 'img',
38
38
  '[attr.viewBox]': 'viewBox()',
39
39
  '[attr.width]': 'width()',
40
40
  '[attr.height]': 'height()',
41
41
  },
42
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m10-5H8"></svg:path>`,
42
+ template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" stroke-linejoin="round" d="M18.992 9.5h.01M14.5 5h.01"></svg:path><svg:path stroke-linecap="round" d="M14.625 5H15a4 4 0 0 1 4 4v.375"></svg:path><svg:path d="M9.375 5H9a4 4 0 0 0-4 4v.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 5h.01M5 9.5h.01"></svg:path><svg:path d="M9.375 19H9a4 4 0 0 1-4-4v-.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 19h.01M5 14.55h.01"></svg:path><svg:path stroke-linecap="round" d="M16 13v3m0 3v-3m3 0h-3m0 0h-3"></svg:path></svg:g>`,
43
43
  }]
44
44
  }] });
45
- export class CodexAlignJustifyIcon {
45
+ export class CodexAlignCenterIcon {
46
46
  viewBox = input("0 0 24 24");
47
47
  width = input("1em");
48
48
  height = input("1em");
49
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignJustifyIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
50
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAlignJustifyIcon, isStandalone: true, selector: "svg[codexAlignJustifyIcon],svg[codex-align-justify-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m12-5H6"></svg:path>`, isInline: true });
49
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignCenterIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
50
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAlignCenterIcon, isStandalone: true, selector: "svg[codexAlignCenterIcon],svg[codex-align-center-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m10-5H8"></svg:path>`, isInline: true });
51
51
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignJustifyIcon, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignCenterIcon, decorators: [{
53
53
  type: Component,
54
54
  args: [{
55
55
  standalone: true,
56
- selector: 'svg[codexAlignJustifyIcon],svg[codex-align-justify-icon]',
56
+ selector: 'svg[codexAlignCenterIcon],svg[codex-align-center-icon]',
57
57
  host: {
58
58
  role: 'img',
59
59
  '[attr.viewBox]': 'viewBox()',
60
60
  '[attr.width]': 'width()',
61
61
  '[attr.height]': 'height()',
62
62
  },
63
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m12-5H6"></svg:path>`,
63
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m10-5H8"></svg:path>`,
64
64
  }]
65
65
  }] });
66
- export class CodexAddBorderIcon {
66
+ export class CodexAlignLeftIcon {
67
67
  viewBox = input("0 0 24 24");
68
68
  width = input("1em");
69
69
  height = input("1em");
70
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAddBorderIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAddBorderIcon, isStandalone: true, selector: "svg[codexAddBorderIcon],svg[codex-add-border-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" stroke-linejoin="round" d="M18.992 9.5h.01M14.5 5h.01"></svg:path><svg:path stroke-linecap="round" d="M14.625 5H15a4 4 0 0 1 4 4v.375"></svg:path><svg:path d="M9.375 5H9a4 4 0 0 0-4 4v.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 5h.01M5 9.5h.01"></svg:path><svg:path d="M9.375 19H9a4 4 0 0 1-4-4v-.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 19h.01M5 14.55h.01"></svg:path><svg:path stroke-linecap="round" d="M16 13v3m0 3v-3m3 0h-3m0 0h-3"></svg:path></svg:g>`, isInline: true });
70
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignLeftIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAlignLeftIcon, isStandalone: true, selector: "svg[codexAlignLeftIcon],svg[codex-align-left-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M17 7H5m12 10H5m8-5H5"></svg:path>`, isInline: true });
72
72
  }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAddBorderIcon, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignLeftIcon, decorators: [{
74
74
  type: Component,
75
75
  args: [{
76
76
  standalone: true,
77
- selector: 'svg[codexAddBorderIcon],svg[codex-add-border-icon]',
77
+ selector: 'svg[codexAlignLeftIcon],svg[codex-align-left-icon]',
78
78
  host: {
79
79
  role: 'img',
80
80
  '[attr.viewBox]': 'viewBox()',
81
81
  '[attr.width]': 'width()',
82
82
  '[attr.height]': 'height()',
83
83
  },
84
- template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" stroke-linejoin="round" d="M18.992 9.5h.01M14.5 5h.01"></svg:path><svg:path stroke-linecap="round" d="M14.625 5H15a4 4 0 0 1 4 4v.375"></svg:path><svg:path d="M9.375 5H9a4 4 0 0 0-4 4v.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 5h.01M5 9.5h.01"></svg:path><svg:path d="M9.375 19H9a4 4 0 0 1-4-4v-.375"></svg:path><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.373 19h.01M5 14.55h.01"></svg:path><svg:path stroke-linecap="round" d="M16 13v3m0 3v-3m3 0h-3m0 0h-3"></svg:path></svg:g>`,
84
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M17 7H5m12 10H5m8-5H5"></svg:path>`,
85
85
  }]
86
86
  }] });
87
- export class CodexAlignLeftIcon {
87
+ export class CodexAlignJustifyIcon {
88
88
  viewBox = input("0 0 24 24");
89
89
  width = input("1em");
90
90
  height = input("1em");
91
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignLeftIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
92
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAlignLeftIcon, isStandalone: true, selector: "svg[codexAlignLeftIcon],svg[codex-align-left-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M17 7H5m12 10H5m8-5H5"></svg:path>`, isInline: true });
91
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignJustifyIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
92
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexAlignJustifyIcon, isStandalone: true, selector: "svg[codexAlignJustifyIcon],svg[codex-align-justify-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m12-5H6"></svg:path>`, isInline: true });
93
93
  }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignLeftIcon, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexAlignJustifyIcon, decorators: [{
95
95
  type: Component,
96
96
  args: [{
97
97
  standalone: true,
98
- selector: 'svg[codexAlignLeftIcon],svg[codex-align-left-icon]',
98
+ selector: 'svg[codexAlignJustifyIcon],svg[codex-align-justify-icon]',
99
99
  host: {
100
100
  role: 'img',
101
101
  '[attr.viewBox]': 'viewBox()',
102
102
  '[attr.width]': 'width()',
103
103
  '[attr.height]': 'height()',
104
104
  },
105
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M17 7H5m12 10H5m8-5H5"></svg:path>`,
105
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="M18 7H6m12 10H6m12-5H6"></svg:path>`,
106
106
  }]
107
107
  }] });
108
108
  export class CodexAlignRightIcon {
@@ -189,88 +189,88 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
189
189
  template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M13.333 7.5L10 4.167L6.667 7.5m6.666 5L10 15.833L6.667 12.5"></svg:path>`,
190
190
  }]
191
191
  }] });
192
- export class CodexCheckIcon {
192
+ export class CodexChecklistIcon {
193
193
  viewBox = input("0 0 24 24");
194
194
  width = input("1em");
195
195
  height = input("1em");
196
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCheckIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
197
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexCheckIcon, isStandalone: true, selector: "svg[codexCheckIcon],svg[codex-check-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 12l3.488 3.837a.2.2 0 0 0 .296 0L17 9"></svg:path>`, isInline: true });
196
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChecklistIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
197
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexChecklistIcon, isStandalone: true, selector: "svg[codexChecklistIcon],svg[codex-checklist-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" d="m9.2 12l1.859 1.859a.2.2 0 0 0 .282 0L14.7 10.5"></svg:path><svg:rect width="14" height="14" x="5" y="5" rx="4"></svg:rect></svg:g>`, isInline: true });
198
198
  }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCheckIcon, decorators: [{
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChecklistIcon, decorators: [{
200
200
  type: Component,
201
201
  args: [{
202
202
  standalone: true,
203
- selector: 'svg[codexCheckIcon],svg[codex-check-icon]',
203
+ selector: 'svg[codexChecklistIcon],svg[codex-checklist-icon]',
204
204
  host: {
205
205
  role: 'img',
206
206
  '[attr.viewBox]': 'viewBox()',
207
207
  '[attr.width]': 'width()',
208
208
  '[attr.height]': 'height()',
209
209
  },
210
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 12l3.488 3.837a.2.2 0 0 0 .296 0L17 9"></svg:path>`,
210
+ template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" d="m9.2 12l1.859 1.859a.2.2 0 0 0 .282 0L14.7 10.5"></svg:path><svg:rect width="14" height="14" x="5" y="5" rx="4"></svg:rect></svg:g>`,
211
211
  }]
212
212
  }] });
213
- export class CodexChecklistIcon {
213
+ export class CodexCheckIcon {
214
214
  viewBox = input("0 0 24 24");
215
215
  width = input("1em");
216
216
  height = input("1em");
217
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChecklistIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
218
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexChecklistIcon, isStandalone: true, selector: "svg[codexChecklistIcon],svg[codex-checklist-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" d="m9.2 12l1.859 1.859a.2.2 0 0 0 .282 0L14.7 10.5"></svg:path><svg:rect width="14" height="14" x="5" y="5" rx="4"></svg:rect></svg:g>`, isInline: true });
217
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCheckIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
218
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexCheckIcon, isStandalone: true, selector: "svg[codexCheckIcon],svg[codex-check-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 12l3.488 3.837a.2.2 0 0 0 .296 0L17 9"></svg:path>`, isInline: true });
219
219
  }
220
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChecklistIcon, decorators: [{
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCheckIcon, decorators: [{
221
221
  type: Component,
222
222
  args: [{
223
223
  standalone: true,
224
- selector: 'svg[codexChecklistIcon],svg[codex-checklist-icon]',
224
+ selector: 'svg[codexCheckIcon],svg[codex-check-icon]',
225
225
  host: {
226
226
  role: 'img',
227
227
  '[attr.viewBox]': 'viewBox()',
228
228
  '[attr.width]': 'width()',
229
229
  '[attr.height]': 'height()',
230
230
  },
231
- template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" d="m9.2 12l1.859 1.859a.2.2 0 0 0 .282 0L14.7 10.5"></svg:path><svg:rect width="14" height="14" x="5" y="5" rx="4"></svg:rect></svg:g>`,
231
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 12l3.488 3.837a.2.2 0 0 0 .296 0L17 9"></svg:path>`,
232
232
  }]
233
233
  }] });
234
- export class CodexChevronDownIcon {
234
+ export class CodexChevronLeftIcon {
235
235
  viewBox = input("0 0 24 24");
236
236
  width = input("1em");
237
237
  height = input("1em");
238
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronDownIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
239
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexChevronDownIcon, isStandalone: true, selector: "svg[codexChevronDownIcon],svg[codex-chevron-down-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 10l4.859 4.859a.2.2 0 0 0 .282 0L17 10"></svg:path>`, isInline: true });
238
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronLeftIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
239
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexChevronLeftIcon, isStandalone: true, selector: "svg[codexChevronLeftIcon],svg[codex-chevron-left-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m14.5 17.5l-4.859-4.859a.2.2 0 0 1 0-.282L14.5 7.5"></svg:path>`, isInline: true });
240
240
  }
241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronDownIcon, decorators: [{
241
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronLeftIcon, decorators: [{
242
242
  type: Component,
243
243
  args: [{
244
244
  standalone: true,
245
- selector: 'svg[codexChevronDownIcon],svg[codex-chevron-down-icon]',
245
+ selector: 'svg[codexChevronLeftIcon],svg[codex-chevron-left-icon]',
246
246
  host: {
247
247
  role: 'img',
248
248
  '[attr.viewBox]': 'viewBox()',
249
249
  '[attr.width]': 'width()',
250
250
  '[attr.height]': 'height()',
251
251
  },
252
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 10l4.859 4.859a.2.2 0 0 0 .282 0L17 10"></svg:path>`,
252
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m14.5 17.5l-4.859-4.859a.2.2 0 0 1 0-.282L14.5 7.5"></svg:path>`,
253
253
  }]
254
254
  }] });
255
- export class CodexChevronLeftIcon {
255
+ export class CodexChevronDownIcon {
256
256
  viewBox = input("0 0 24 24");
257
257
  width = input("1em");
258
258
  height = input("1em");
259
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronLeftIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
260
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexChevronLeftIcon, isStandalone: true, selector: "svg[codexChevronLeftIcon],svg[codex-chevron-left-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m14.5 17.5l-4.859-4.859a.2.2 0 0 1 0-.282L14.5 7.5"></svg:path>`, isInline: true });
259
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronDownIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
260
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexChevronDownIcon, isStandalone: true, selector: "svg[codexChevronDownIcon],svg[codex-chevron-down-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 10l4.859 4.859a.2.2 0 0 0 .282 0L17 10"></svg:path>`, isInline: true });
261
261
  }
262
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronLeftIcon, decorators: [{
262
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexChevronDownIcon, decorators: [{
263
263
  type: Component,
264
264
  args: [{
265
265
  standalone: true,
266
- selector: 'svg[codexChevronLeftIcon],svg[codex-chevron-left-icon]',
266
+ selector: 'svg[codexChevronDownIcon],svg[codex-chevron-down-icon]',
267
267
  host: {
268
268
  role: 'img',
269
269
  '[attr.viewBox]': 'viewBox()',
270
270
  '[attr.width]': 'width()',
271
271
  '[attr.height]': 'height()',
272
272
  },
273
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m14.5 17.5l-4.859-4.859a.2.2 0 0 1 0-.282L14.5 7.5"></svg:path>`,
273
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="2" d="m7 10l4.859 4.859a.2.2 0 0 0 .282 0L17 10"></svg:path>`,
274
274
  }]
275
275
  }] });
276
276
  export class CodexChevronRightIcon {
@@ -336,67 +336,67 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
336
336
  template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:path stroke-linecap="round" stroke-linejoin="round" d="M9.429 7H7.714c-.454 0-.89.158-1.212.44A1.41 1.41 0 0 0 6 8.5v9c0 .398.18.78.502 1.06c.322.282.758.44 1.212.44h8.572c.454 0 .89-.158 1.212-.44A1.41 1.41 0 0 0 18 17.5v-9c0-.398-.18-.78-.502-1.06A1.85 1.85 0 0 0 16.286 7H14.57"></svg:path><svg:rect width="5.158" height="3.368" x="9.421" y="5" rx="1.5"></svg:rect></svg:g>`,
337
337
  }]
338
338
  }] });
339
- export class CodexCollapseIcon {
339
+ export class CodexColorIcon {
340
340
  viewBox = input("0 0 24 24");
341
341
  width = input("1em");
342
342
  height = input("1em");
343
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCollapseIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
344
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexCollapseIcon, isStandalone: true, selector: "svg[codexCollapseIcon],svg[codex-collapse-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m7 9l3 3m0 0l-3 3m3-3H4m13-3l-3 3m0 0l3 3m-3-3h6"></svg:path>`, isInline: true });
343
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexColorIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
344
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexColorIcon, isStandalone: true, selector: "svg[codexColorIcon],svg[codex-color-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-width="2" d="M5.243 11.408a3 3 0 0 1 .878-2.165l3.536-3.536a1 1 0 0 1 1.414 0l4.95 4.95a1 1 0 0 1 .292.75m-11.07 0a3 3 0 0 0 .878 2.078L8 15.364m-2.757-3.956h6.714m4.356 0a1 1 0 0 1-.292.663l-3.536 3.536a3 3 0 0 1-4.242 0L8 15.364m8.313-3.956h-4.356M8 15.364l3.957-3.956M20 17.462c0 .85-.672 1.538-1.5 1.538s-1.5-.689-1.5-1.538s.9-1.847 1.5-2.462c.6.615 1.5 1.612 1.5 2.462Z"></svg:path>`, isInline: true });
345
345
  }
346
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCollapseIcon, decorators: [{
346
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexColorIcon, decorators: [{
347
347
  type: Component,
348
348
  args: [{
349
349
  standalone: true,
350
- selector: 'svg[codexCollapseIcon],svg[codex-collapse-icon]',
350
+ selector: 'svg[codexColorIcon],svg[codex-color-icon]',
351
351
  host: {
352
352
  role: 'img',
353
353
  '[attr.viewBox]': 'viewBox()',
354
354
  '[attr.width]': 'width()',
355
355
  '[attr.height]': 'height()',
356
356
  },
357
- template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m7 9l3 3m0 0l-3 3m3-3H4m13-3l-3 3m0 0l3 3m-3-3h6"></svg:path>`,
357
+ template: `<svg:path fill="none" stroke="currentColor" stroke-width="2" d="M5.243 11.408a3 3 0 0 1 .878-2.165l3.536-3.536a1 1 0 0 1 1.414 0l4.95 4.95a1 1 0 0 1 .292.75m-11.07 0a3 3 0 0 0 .878 2.078L8 15.364m-2.757-3.956h6.714m4.356 0a1 1 0 0 1-.292.663l-3.536 3.536a3 3 0 0 1-4.242 0L8 15.364m8.313-3.956h-4.356M8 15.364l3.957-3.956M20 17.462c0 .85-.672 1.538-1.5 1.538s-1.5-.689-1.5-1.538s.9-1.847 1.5-2.462c.6.615 1.5 1.612 1.5 2.462Z"></svg:path>`,
358
358
  }]
359
359
  }] });
360
- export class CodexCopyIcon {
360
+ export class CodexCollapseIcon {
361
361
  viewBox = input("0 0 24 24");
362
362
  width = input("1em");
363
363
  height = input("1em");
364
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCopyIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
365
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexCopyIcon, isStandalone: true, selector: "svg[codexCopyIcon],svg[codex-copy-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><svg:path d="M17.25 8.5h-7a1.75 1.75 0 0 0-1.75 1.75v7c0 .966.784 1.75 1.75 1.75h7A1.75 1.75 0 0 0 19 17.25v-7a1.75 1.75 0 0 0-1.75-1.75"></svg:path><svg:path d="M15.5 8.5V6.75A1.75 1.75 0 0 0 13.75 5h-7A1.75 1.75 0 0 0 5 6.75v7a1.75 1.75 0 0 0 1.75 1.75H8.5M12 12h3.5M12 15.5h3.5"></svg:path></svg:g>`, isInline: true });
364
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCollapseIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
365
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexCollapseIcon, isStandalone: true, selector: "svg[codexCollapseIcon],svg[codex-collapse-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m7 9l3 3m0 0l-3 3m3-3H4m13-3l-3 3m0 0l3 3m-3-3h6"></svg:path>`, isInline: true });
366
366
  }
367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCopyIcon, decorators: [{
367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCollapseIcon, decorators: [{
368
368
  type: Component,
369
369
  args: [{
370
370
  standalone: true,
371
- selector: 'svg[codexCopyIcon],svg[codex-copy-icon]',
371
+ selector: 'svg[codexCollapseIcon],svg[codex-collapse-icon]',
372
372
  host: {
373
373
  role: 'img',
374
374
  '[attr.viewBox]': 'viewBox()',
375
375
  '[attr.width]': 'width()',
376
376
  '[attr.height]': 'height()',
377
377
  },
378
- template: `<svg:g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><svg:path d="M17.25 8.5h-7a1.75 1.75 0 0 0-1.75 1.75v7c0 .966.784 1.75 1.75 1.75h7A1.75 1.75 0 0 0 19 17.25v-7a1.75 1.75 0 0 0-1.75-1.75"></svg:path><svg:path d="M15.5 8.5V6.75A1.75 1.75 0 0 0 13.75 5h-7A1.75 1.75 0 0 0 5 6.75v7a1.75 1.75 0 0 0 1.75 1.75H8.5M12 12h3.5M12 15.5h3.5"></svg:path></svg:g>`,
378
+ template: `<svg:path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m7 9l3 3m0 0l-3 3m3-3H4m13-3l-3 3m0 0l3 3m-3-3h6"></svg:path>`,
379
379
  }]
380
380
  }] });
381
- export class CodexColorIcon {
381
+ export class CodexCopyIcon {
382
382
  viewBox = input("0 0 24 24");
383
383
  width = input("1em");
384
384
  height = input("1em");
385
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexColorIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
386
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexColorIcon, isStandalone: true, selector: "svg[codexColorIcon],svg[codex-color-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:path fill="none" stroke="currentColor" stroke-width="2" d="M5.243 11.408a3 3 0 0 1 .878-2.165l3.536-3.536a1 1 0 0 1 1.414 0l4.95 4.95a1 1 0 0 1 .292.75m-11.07 0a3 3 0 0 0 .878 2.078L8 15.364m-2.757-3.956h6.714m4.356 0a1 1 0 0 1-.292.663l-3.536 3.536a3 3 0 0 1-4.242 0L8 15.364m8.313-3.956h-4.356M8 15.364l3.957-3.956M20 17.462c0 .85-.672 1.538-1.5 1.538s-1.5-.689-1.5-1.538s.9-1.847 1.5-2.462c.6.615 1.5 1.612 1.5 2.462Z"></svg:path>`, isInline: true });
385
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCopyIcon, deps: [], target: i0.ɵɵFactoryTarget.Component });
386
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.10", type: CodexCopyIcon, isStandalone: true, selector: "svg[codexCopyIcon],svg[codex-copy-icon]", inputs: { viewBox: { classPropertyName: "viewBox", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "img" }, properties: { "attr.viewBox": "viewBox()", "attr.width": "width()", "attr.height": "height()" } }, ngImport: i0, template: `<svg:g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><svg:path d="M17.25 8.5h-7a1.75 1.75 0 0 0-1.75 1.75v7c0 .966.784 1.75 1.75 1.75h7A1.75 1.75 0 0 0 19 17.25v-7a1.75 1.75 0 0 0-1.75-1.75"></svg:path><svg:path d="M15.5 8.5V6.75A1.75 1.75 0 0 0 13.75 5h-7A1.75 1.75 0 0 0 5 6.75v7a1.75 1.75 0 0 0 1.75 1.75H8.5M12 12h3.5M12 15.5h3.5"></svg:path></svg:g>`, isInline: true });
387
387
  }
388
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexColorIcon, decorators: [{
388
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: CodexCopyIcon, decorators: [{
389
389
  type: Component,
390
390
  args: [{
391
391
  standalone: true,
392
- selector: 'svg[codexColorIcon],svg[codex-color-icon]',
392
+ selector: 'svg[codexCopyIcon],svg[codex-copy-icon]',
393
393
  host: {
394
394
  role: 'img',
395
395
  '[attr.viewBox]': 'viewBox()',
396
396
  '[attr.width]': 'width()',
397
397
  '[attr.height]': 'height()',
398
398
  },
399
- template: `<svg:path fill="none" stroke="currentColor" stroke-width="2" d="M5.243 11.408a3 3 0 0 1 .878-2.165l3.536-3.536a1 1 0 0 1 1.414 0l4.95 4.95a1 1 0 0 1 .292.75m-11.07 0a3 3 0 0 0 .878 2.078L8 15.364m-2.757-3.956h6.714m4.356 0a1 1 0 0 1-.292.663l-3.536 3.536a3 3 0 0 1-4.242 0L8 15.364m8.313-3.956h-4.356M8 15.364l3.957-3.956M20 17.462c0 .85-.672 1.538-1.5 1.538s-1.5-.689-1.5-1.538s.9-1.847 1.5-2.462c.6.615 1.5 1.612 1.5 2.462Z"></svg:path>`,
399
+ template: `<svg:g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><svg:path d="M17.25 8.5h-7a1.75 1.75 0 0 0-1.75 1.75v7c0 .966.784 1.75 1.75 1.75h7A1.75 1.75 0 0 0 19 17.25v-7a1.75 1.75 0 0 0-1.75-1.75"></svg:path><svg:path d="M15.5 8.5V6.75A1.75 1.75 0 0 0 13.75 5h-7A1.75 1.75 0 0 0 5 6.75v7a1.75 1.75 0 0 0 1.75 1.75H8.5M12 12h3.5M12 15.5h3.5"></svg:path></svg:g>`,
400
400
  }]
401
401
  }] });
402
402
  export class CodexCrossIcon {
@@ -1638,4 +1638,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
1638
1638
  template: `<svg:g fill="none" stroke="currentColor" stroke-width="2"><svg:rect width="14" height="14" x="5" y="5" rx="4"></svg:rect><svg:path stroke-linecap="round" d="M12 9v3m0 3.02v-.01"></svg:path></svg:g>`,
1639
1639
  }]
1640
1640
  }] });
1641
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2h1bmstMC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jaHVua3MvY2h1bmstMC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFhaEQsTUFBTSxPQUFPLHNCQUFzQjtJQUN4QixPQUFPLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQzVCLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDcEIsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTt3R0FIbkIsc0JBQXNCOzRGQUF0QixzQkFBc0IsNm5CQUZ2Qiw2Z0JBQTZnQjs7NEZBRTVnQixzQkFBc0I7a0JBWGxDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSw0REFBNEQ7b0JBQ3RFLElBQUksRUFBRTt3QkFDSixJQUFJLEVBQUUsS0FBSzt3QkFDWCxnQkFBZ0IsRUFBRSxXQUFXO3dCQUM3QixjQUFjLEVBQUUsU0FBUzt3QkFDekIsZUFBZSxFQUFFLFVBQVU7cUJBQzVCO29CQUNELFFBQVEsRUFBRSw2Z0JBQTZnQjtpQkFDeGhCOztBQWtCRCxNQUFNLE9BQU8sb0JBQW9CO0lBQ3RCLE9BQU8sR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDNUIsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNwQixNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO3dHQUhuQixvQkFBb0I7NEZBQXBCLG9CQUFvQix5bkJBRnJCLDRIQUE0SDs7NEZBRTNILG9CQUFvQjtrQkFYaEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHdEQUF3RDtvQkFDbEUsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxLQUFLO3dCQUNYLGdCQUFn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S0FBSyxDQUFDLENBQUE7SUFDcEIsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTt3R0FIbkIsZ0JBQWdCOzRGQUFoQixnQkFBZ0IsZ25CQUZqQix1TUFBdU07OzRGQUV0TSxnQkFBZ0I7a0JBWDVCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSwrQ0FBK0M7b0JBQ3pELElBQUksRUFBRTt3QkFDSixJQUFJLEVBQUUsS0FBSzt3QkFDWCxnQkFBZ0IsRUFBRSxXQUFXO3dCQUM3QixjQUFjLEVBQUUsU0FBUzt3QkFDekIsZUFBZSxFQUFFLFVBQVU7cUJBQzVCO29CQUNELFFBQVEsRUFBRSx1TUFBdU07aUJBQ2xOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEFkZEJhY2tncm91bmRJY29uXSxzdmdbY29kZXgtYWRkLWJhY2tncm91bmQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTExIDE5Yy0xLjg2NCAwLTIuNzk2IDAtMy41My0uMzA1YTQgNCAwIDAgMS0yLjE2Ni0yLjE2NEM1IDE1Ljc5NiA1IDE0Ljg2NCA1IDEzdi0xYzAtMi44MDkgMC00LjIxMy42NzQtNS4yMjJhNCA0IDAgMCAxIDEuMTA0LTEuMTA0QzcuNzg3IDUgOS4xOSA1IDEyIDVoMS41YzEuMzk2IDAgMi4wOTMgMCAyLjY2MS4xNzJhNCA0IDAgMCAxIDIuNjY3IDIuNjY3QzE5IDguNDA3IDE5IDkuMTA0IDE5IDEwLjV2MFwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTYgMTN2M20wIDN2LTNtMyAwaC0zbTAgMGgtM1wiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIm02LjUgMTcuNWwxMS0xMW0xLjQ5MiA0aC4wMW0tOC4wMSA4LjVoLjAxTTUgMTNsOC04XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QWRkQmFja2dyb3VuZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBbGlnbkNlbnRlckljb25dLHN2Z1tjb2RleC1hbGlnbi1jZW50ZXItaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE4IDdINm0xMiAxMEg2bTEwLTVIOFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhBbGlnbkNlbnRlckljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBbGlnbkp1c3RpZnlJY29uXSxzdmdbY29kZXgtYWxpZ24tanVzdGlmeS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTggN0g2bTEyIDEwSDZtMTItNUg2XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEFsaWduSnVzdGlmeUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBZGRCb3JkZXJJY29uXSxzdmdbY29kZXgtYWRkLWJvcmRlci1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNMTguOTkyIDkuNWguMDFNMTQuNSA1aC4wMVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTE0LjYyNSA1SDE1YTQgNCAwIDAgMSA0IDR2LjM3NVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNOS4zNzUgNUg5YTQgNCAwIDAgMC00IDR2LjM3NVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNOS4zNzMgNWguMDFNNSA5LjVoLjAxXCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIk05LjM3NSAxOUg5YTQgNCAwIDAgMS00LTR2LS4zNzVcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTkuMzczIDE5aC4wMU01IDE0LjU1aC4wMVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTE2IDEzdjNtMCAzdi0zbTMgMGgtM20wIDBoLTNcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhBZGRCb3JkZXJJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4QWxpZ25MZWZ0SWNvbl0sc3ZnW2NvZGV4LWFsaWduLWxlZnQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE3IDdINW0xMiAxMEg1bTgtNUg1XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEFsaWduTGVmdEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBbGlnblJpZ2h0SWNvbl0sc3ZnW2NvZGV4LWFsaWduLXJpZ2h0LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xOSA3SDdtMTIgMTBIN20xMi01aC04XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEFsaWduUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Qm9sZEljb25dLHN2Z1tjb2RleC1ib2xkLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05IDEyVjcuMWEuMS4xIDAgMCAxIC4xLS4xaDEuM2MxLjEgMCAzLjYuMSAzLjYgMi41YzAgMCAwIDIuNS0zIDIuNW0tMiAwdjQuOGMwIC4xMS4wOS4yLjIuMmgzLjNjMS41IDAgMi41LTEgMi41LTIuNWMwLTIuNzk1LTQtMi41LTQtMi41bS0yIDBoMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhCb2xkSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEJyYWNrZXRzSWNvbl0sc3ZnW2NvZGV4LWJyYWNrZXRzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTkgOGwtNCA0bDQgNG02LThsNCA0bC00IDRcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QnJhY2tldHNJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4QnJhY2tldHNWZXJ0aWNhbEljb25dLHN2Z1tjb2RleC1icmFja2V0cy12ZXJ0aWNhbC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIxLjZcIiBkPVwiTTEzLjMzMyA3LjVMMTAgNC4xNjdMNi42NjcgNy41bTYuNjY2IDVMMTAgMTUuODMzTDYuNjY3IDEyLjVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QnJhY2tldHNWZXJ0aWNhbEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjAgMjBcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDaGVja0ljb25dLHN2Z1tjb2RleC1jaGVjay1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtNyAxMmwzLjQ4OCAzLjgzN2EuMi4yIDAgMCAwIC4yOTYgMEwxNyA5XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleENoZWNrSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleENoZWNrbGlzdEljb25dLHN2Z1tjb2RleC1jaGVja2xpc3QtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgZD1cIm05LjIgMTJsMS44NTkgMS44NTlhLjIuMiAwIDAgMCAuMjgyIDBMMTQuNyAxMC41XCI+PC9zdmc6cGF0aD48c3ZnOnJlY3Qgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgeD1cIjVcIiB5PVwiNVwiIHJ4PVwiNFwiPjwvc3ZnOnJlY3Q+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleENoZWNrbGlzdEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDaGV2cm9uRG93bkljb25dLHN2Z1tjb2RleC1jaGV2cm9uLWRvd24taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTcgMTBsNC44NTkgNC44NTlhLjIuMiAwIDAgMCAuMjgyIDBMMTcgMTBcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q2hldnJvbkRvd25JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q2hldnJvbkxlZnRJY29uXSxzdmdbY29kZXgtY2hldnJvbi1sZWZ0LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm0xNC41IDE3LjVsLTQuODU5LTQuODU5YS4yLjIgMCAwIDEgMC0uMjgyTDE0LjUgNy41XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleENoZXZyb25MZWZ0SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleENoZXZyb25SaWdodEljb25dLHN2Z1tjb2RleC1jaGV2cm9uLXJpZ2h0LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm05LjU4MyAxNy41bDQuODU4LTQuODU5YS4yLjIgMCAwIDAgMC0uMjgyTDkuNTgzIDcuNVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDaGV2cm9uUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q2hldnJvblVwSWNvbl0sc3ZnW2NvZGV4LWNoZXZyb24tdXAtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTcgMTVsNC44NTktNC44NTlhLjIuMiAwIDAgMSAuMjgyIDBMMTcgMTVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q2hldnJvblVwSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleENsaXBib2FyZEljb25dLHN2Z1tjb2RleC1jbGlwYm9hcmQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTkuNDI5IDdINy43MTRjLS40NTQgMC0uODkuMTU4LTEuMjEyLjQ0QTEuNDEgMS40MSAwIDAgMCA2IDguNXY5YzAgLjM5OC4xOC43OC41MDIgMS4wNmMuMzIyLjI4Mi43NTguNDQgMS4yMTIuNDRoOC41NzJjLjQ1NCAwIC44OS0uMTU4IDEuMjEyLS40NEExLjQxIDEuNDEgMCAwIDAgMTggMTcuNXYtOWMwLS4zOTgtLjE4LS43OC0uNTAyLTEuMDZBMS44NSAxLjg1IDAgMCAwIDE2LjI4NiA3SDE0LjU3XCI+PC9zdmc6cGF0aD48c3ZnOnJlY3Qgd2lkdGg9XCI1LjE1OFwiIGhlaWdodD1cIjMuMzY4XCIgeD1cIjkuNDIxXCIgeT1cIjVcIiByeD1cIjEuNVwiPjwvc3ZnOnJlY3Q+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleENsaXBib2FyZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDb2xsYXBzZUljb25dLHN2Z1tjb2RleC1jb2xsYXBzZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm03IDlsMyAzbTAgMGwtMyAzbTMtM0g0bTEzLTNsLTMgM20wIDBsMyAzbS0zLTNoNlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDb2xsYXBzZUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDb3B5SWNvbl0sc3ZnW2NvZGV4LWNvcHktaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBkPVwiTTE3LjI1IDguNWgtN2ExLjc1IDEuNzUgMCAwIDAtMS43NSAxLjc1djdjMCAuOTY2Ljc4NCAxLjc1IDEuNzUgMS43NWg3QTEuNzUgMS43NSAwIDAgMCAxOSAxNy4yNXYtN2ExLjc1IDEuNzUgMCAwIDAtMS43NS0xLjc1XCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIk0xNS41IDguNVY2Ljc1QTEuNzUgMS43NSAwIDAgMCAxMy43NSA1aC03QTEuNzUgMS43NSAwIDAgMCA1IDYuNzV2N2ExLjc1IDEuNzUgMCAwIDAgMS43NSAxLjc1SDguNU0xMiAxMmgzLjVNMTIgMTUuNWgzLjVcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDb3B5SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleENvbG9ySWNvbl0sc3ZnW2NvZGV4LWNvbG9yLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTUuMjQzIDExLjQwOGEzIDMgMCAwIDEgLjg3OC0yLjE2NWwzLjUzNi0zLjUzNmExIDEgMCAwIDEgMS40MTQgMGw0Ljk1IDQuOTVhMSAxIDAgMCAxIC4yOTIuNzVtLTExLjA3IDBhMyAzIDAgMCAwIC44NzggMi4wNzhMOCAxNS4zNjRtLTIuNzU3LTMuOTU2aDYuNzE0bTQuMzU2IDBhMSAxIDAgMCAxLS4yOTIuNjYzbC0zLjUzNiAzLjUzNmEzIDMgMCAwIDEtNC4yNDIgMEw4IDE1LjM2NG04LjMxMy0zLjk1NmgtNC4zNTZNOCAxNS4zNjRsMy45NTctMy45NTZNMjAgMTcuNDYyYzAgLjg1LS42NzIgMS41MzgtMS41IDEuNTM4cy0xLjUtLjY4OS0xLjUtMS41MzhzLjktMS44NDcgMS41LTIuNDYyYy42LjYxNSAxLjUgMS42MTIgMS41IDIuNDYyWlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDb2xvckljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDcm9zc0ljb25dLHN2Z1tjb2RleC1jcm9zcy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtOCA4bDQgNG0wIDBsNCA0bS00LTRsNC00bS00IDRsLTQgNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDcm9zc0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDdXJseUJyYWNrZXRzSWNvbl0sc3ZnW2NvZGV4LWN1cmx5LWJyYWNrZXRzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTkgMTdjLTIgMC0yLTEuNzQ2LTItMy41TDUuNSAxMkw3IDEwLjVDNyA4Ljc0NiA3IDcgOSA3bTYgMTBjMiAwIDItMS43NDYgMi0zLjVsMS41LTEuNWwtMS41LTEuNUMxNyA4Ljc0NiAxNyA3IDE1IDdcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q3VybHlCcmFja2V0c0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhEZWxpbWl0ZXJJY29uXSxzdmdbY29kZXgtZGVsaW1pdGVyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk02IDEyaDRtNCAwaDRcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4RGVsaW1pdGVySWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleERpcmVjdGlvbkRvd25SaWdodEljb25dLHN2Z1tjb2RleC1kaXJlY3Rpb24tZG93bi1yaWdodC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm0xNC44ODMgOS4xNjdsMy4zMzQgMy4zMzNtMCAwbC0zLjMzNCAzLjMzM20zLjMzNC0zLjMzM0gxMC4wNWEzLjMzMyAzLjMzMyAwIDAgMS0zLjMzMy0zLjMzM1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhEaXJlY3Rpb25Eb3duUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4RGlyZWN0aW9uTGVmdERvd25JY29uXSxzdmdbY29kZXgtZGlyZWN0aW9uLWxlZnQtZG93bi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm0xNC45MTcgMTQuOTE3bC0zLjMzNCAzLjMzM20wIDBMOC4yNSAxNC45MTdtMy4zMzMgMy4zMzN2LTguMTY3YTMuMzMzIDMuMzMzIDAgMCAxIDMuMzM0LTMuMzMzXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleERpcmVjdGlvbkxlZnREb3duSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleERpcmVjdGlvblJpZ2h0RG93bkljb25dLHN2Z1tjb2RleC1kaXJlY3Rpb24tcmlnaHQtZG93bi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm05LjEzMyAxNC45MTdsMy4zMzQgMy4zMzNtMCAwbDMuMzMzLTMuMzMzbS0zLjMzMyAzLjMzM3YtOC4xNjdBMy4zMzMgMy4zMzMgMCAwIDAgOS4xMzMgNi43NVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhEaXJlY3Rpb25SaWdodERvd25JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4RGlyZWN0aW9uVXBSaWdodEljb25dLHN2Z1tjb2RleC1kaXJlY3Rpb24tdXAtcmlnaHQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtMTQuODgzIDE1LjgzM2wzLjMzNC0zLjMzM20wIDBsLTMuMzM0LTMuMzMzbTMuMzM0IDMuMzMzSDEwLjA1YTMuMzMzIDMuMzMzIDAgMCAwLTMuMzMzIDMuMzMzXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleERpcmVjdGlvblVwUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4RG90Q2lyY2xlSWNvbl0sc3ZnW2NvZGV4LWRvdC1jaXJjbGUtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjwvc3ZnOmNpcmNsZT5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleERvdENpcmNsZUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhFdGNIb3Jpc29udGFsSWNvbl0sc3ZnW2NvZGV4LWV0Yy1ob3Jpc29udGFsLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyLjZcIiBkPVwiTTcuMzA1IDExLjk5NXYuMDFtNC43LS4wMXYuMDFtNC43LS4wMXYuMDFcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4RXRjSG9yaXNvbnRhbEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhFdGNWZXJ0aWNhbEljb25dLHN2Z1tjb2RleC1ldGMtdmVydGljYWwtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjIuNlwiIGQ9XCJNMTIuMDEgNy4zSDEybS4wMSA0LjdIMTJtLjAxIDQuN0gxMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhFdGNWZXJ0aWNhbEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhGaWxlSWNvbl0sc3ZnW2NvZGV4LWZpbGUtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTMuMzI0IDguNDM2TDkuNDk1IDEyLjE5Yy0uMzY0LjM2LS41NjQuODUyLS41NTYgMS4zNjlhMiAyIDAgMCAwIC42IDEuMzg3Yy4zNzUuMzcxLjg4LjU4NCAxLjQwMy41OTNhMS45MiAxLjkyIDAgMCAwIDEuMzg2LS41NWwzLjgyOC0zLjc1NGEzLjc1IDMuNzUgMCAwIDAgMS4xMTItMi43MzhhNCA0IDAgMCAwLTEuMTk4LTIuNzc1YTQuMSA0LjEgMCAwIDAtMi44MDgtMS4xODVhMy44NSAzLjg1IDAgMCAwLTIuNzcgMS4wOThMNi42NjEgOS4zOWE1LjYzIDUuNjMgMCAwIDAtMS42NjcgNC4xMDdhNiA2IDAgMCAwIDEuNzk4IDQuMTYxYTYuMTUgNi4xNSAwIDAgMCA0LjIxIDEuNzc4YTUuNzcgNS43NyAwIDAgMCA0LjE1Ny0xLjY0NmwzLjgyOS0zLjc1NlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhGaWxlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEdpZnRJY29uXSxzdmdbY29kZXgtZ2lmdC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI2XCIgeD1cIjZcIiB5PVwiMTNcIiByeD1cIjJcIj48L3N2ZzpyZWN0Pjxzdmc6cGF0aCBkPVwiTTEyIDl2MTBtLTctOGEyIDIgMCAwIDEgMi0yaDEwYTIgMiAwIDEgMSAwIDRIN2EyIDIgMCAwIDEtMi0yWm0xMS0yYzAtMS4xMDUgMC0zLTItM3MtMiAxLjg5NS0yIDNjMC0xLjEwNSAwLTMtMi0zUzggNy44OTUgOCA5XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4R2lmdEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhHbG9iZUljb25dLHN2Z1tjb2RleC1nbG9iZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xOCAxMmE2IDYgMCAwIDEtMTIgMG0xMiAwYTYgNiAwIDAgMC0xMiAwbTEyIDBINm01LjctNnMtMiAxLjYzOC0yIDZjMCA0LjkgMiA2IDIgNm0uNi0xMnMyIDEuNjM4IDIgNmMwIDQuOS0yIDYtMiA2XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEdsb2JlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEgxSWNvbl0sc3ZnW2NvZGV4LWgxLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk02IDd2NW0wIDV2LTVtMCAwaDZtMC01djVtMCA1di01bTcgNXYtNi43ODZhLjEuMSAwIDAgMC0uMTY0LS4wNzdMMTYgMTIuNVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIMUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhIMkljb25dLHN2Z1tjb2RleC1oMi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW00LTFjMC0xIDMtMS41IDMgMWMwIDEuOTc3LTIuOTMyIDItMi45OTkgNC44OThBLjEuMSAwIDAgMCAxNi4xIDE3aDMuMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIMkljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhIM0ljb25dLHN2Z1tjb2RleC1oMy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW00LTFjMC0uNS44MzItMSAxLjYtMXMxLjkuMzExIDEuOSAxLjVhMS41MzUgMS41MzUgMCAwIDEtLjk1MiAxLjQ4MmMtLjAxLjAwNC0uMDA4LjAyMy4wMDIuMDI0Yy4yNjEuMDQgMS40NS4zIDEuNDUgMS43OTRjMCAxLjItLjUgMi4yLTIuMiAyLjJjMCAwLTEuOCAwLTEuOC0uN1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIM0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhINEljb25dLHN2Z1tjb2RleC1oNC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW02LTJsLTIuNzE3IDQuODUxYS4xLjEgMCAwIDAgLjA4Ny4xNDloNC44M00xOSAxN3YtMy40XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEg0SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEg1SWNvbl0sc3ZnW2NvZGV4LWg1LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk02IDd2NW0wIDV2LTVtMCAwaDZtMC01djVtMCA1di01bTQgMy45cy4zNzcgMS4xIDEuOCAxLjFjMS43IDAgMi4yLTEuMzggMi4yLTIuM2MwLTEuOTY4LTIuMzI2LTIuNjUxLTMuODM3LTEuNzFjLS4wNjkuMDQzLS4xNjMtLjAwNS0uMTYzLS4wODdWMTAuMWEuMS4xIDAgMCAxIC4xLS4xaDMuN1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhINUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhINkljb25dLHN2Z1tjb2RleC1oNi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW03LjUtMmMtMyAuNS0zLjUgMy4zMjktMy41IDVtMCAwdjBhMiAyIDAgMCAwIDIgMmguMzI1YzEgMCAxLjk5NC0uNjUgMS45MjctMS42NUMyMC4wNjIgMTIuNDk3IDE2IDEyLjY2MiAxNiAxNVpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SDZJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SGVhZGluZ0ljb25dLHN2Z1tjb2RleC1oZWFkaW5nLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05IDd2NW0wIDV2LTVtMCAwaDZtMC01djVtMCA1di01XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEhlYWRpbmdJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SGVhcnRJY29uXSxzdmdbY29kZXgtaGVhcnQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNi42IDcuNWMtMS4zMjUgMS4zMjUtMS40IDMuMSAwIDQuOHM1LjYgNS42IDUuNiA1LjZzNC4zLTMuOSA1LjYtNS42czEuMzI1LTMuNDc1IDAtNC44YTMuMzk0IDMuMzk0IDAgMCAwLTQuOCAwbC0uOC44bC0uOC0uOGEzLjM5NCAzLjM5NCAwIDAgMC00LjggMFpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SGVhcnRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SGlkZGVuSWNvbl0sc3ZnW2NvZGV4LWhpZGRlbi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNNi43NzggNkwxOC41IDE3LjcyMk0xMC42ODcgMTBBMi4zNDIgMi4zNDIgMCAxIDAgMTQgMTMuMzE0XCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIk0xMyA3YzQgNC4xNjcgNyA0LjE3IDcgNC42N3MtMSAxLjUtMSAxLjVNOC4yNDIgOC44MXEtLjk3My42MjgtMS44NCAxLjYxNWMtLjY5OC43OTQtMS4wNDcgMS4xOTEtMS4wNDcgMS45NDVzLjM1IDEuMTUxIDEuMDQ3IDEuOTQ1UTguNzkzIDE3LjAzNyAxMiAxNy4wMzdxMS42NjUgMCAzLjExMS0uNzM1XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SGlkZGVuSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEh0bWxJY29uXSxzdmdbY29kZXgtaHRtbC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNMTYuNjk1IDVhMiAyIDAgMCAxIDEuOTggMi4yODJsLTEuMjQ5IDguNzg0YTIgMiAwIDAgMS0xLjM2NSAxLjYyMWwtMy40NDYgMS4xMTRhMiAyIDAgMCAxLTEuMjMgMGwtMy40NDYtMS4xMTRhMiAyIDAgMCAxLTEuMzY1LTEuNjIxbC0xLjI1LTguNzg0QTIgMiAwIDAgMSA3LjMwNSA1elwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTUgOC40SDlsLjQyOSAzLjM5NGg1LjE0MmwtLjIxNCAxLjQ4NWwtLjIxNCAxLjQ4NUwxMiAxNS40bC0yLjE0My0uNjM2bC0uMDg2LS40MjVcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIdG1sSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEluc3RhZ3JhbUljb25dLHN2Z1tjb2RleC1pbnN0YWdyYW0taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNMTUuOSA4LjF2LjAxXCI+PC9zdmc6cGF0aD48c3ZnOmNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIzXCI+PC9zdmc6Y2lyY2xlPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhJbnN0YWdyYW1JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SXRhbGljSWNvbl0sc3ZnW2NvZGV4LWl0YWxpYy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTMuMzQgMTBjLS45MTggMi43MzQtMi4zNCA3LTIuMzQgN20zLjIxLTEwaC0uMDFcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SXRhbGljSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleExpbmtJY29uXSxzdmdbY29kZXgtbGluay1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBkPVwibTcuNyAxMi42bC0uMDIxLjAyYTIuNzk1IDIuNzk1IDAgMCAwLS4wNDQgNC4wMDV2MGEyLjc5NSAyLjc5NSAwIDAgMCAzLjkzNi4wMDZsMS40NTUtMS40MzhhMyAzIDAgMCAwIC4zNC0zLjg2NmwtLjE0Ni0uMjA3XCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIm0xNi4yMiAxMS4xMmwuMTM2LS4xNGMuOTMzLS45NTMuOTkyLTIuNDYuMTM1LTMuNDgzdjBhMi41OTcgMi41OTcgMCAwIDAtMy42NjQtLjMyTDExLjM5IDguMzg2YTMgMyAwIDAgMC0uMzAxIDQuM2wuMDMxLjAzNFwiPjwvc3ZnOnBhdGg+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleExpbmtJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4TGlua2VkaW5JY29uXSxzdmdbY29kZXgtbGlua2VkaW4taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNOSAxMS40djRtMC02Ljd2LjAxbTMgMi42OXYuNm0wIDMuNFYxMm0wIDBjMi0uNSAzLS42MzkgMyAuNXYyLjlcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhMaW5rZWRpbkljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhMaXN0QnVsbGV0ZWRJY29uXSxzdmdbY29kZXgtbGlzdC1idWxsZXRlZC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNOSA3aDEwTTkgMTJoMTBNOSAxN2gxME01IDE3aC0uMDFNNSAxMmgtLjAxTTUgN2gtLjAxXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleExpc3RCdWxsZXRlZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhMaXN0TnVtYmVyZWRJY29uXSxzdmdbY29kZXgtbGlzdC1udW1iZXJlZC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTIgN2g3bS03IDVoN20tNyA1aDdNNy44IDE0VjcuMjE0YS4xLjEgMCAwIDAtLjE2NC0uMDc3TDQuOCA5LjVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TGlzdE51bWJlcmVkSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleExvYWRlckljb25dLHN2Z1tjb2RleC1sb2FkZXItaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTEyIDYuOTk5OThDOS4xNzQ3IDYuOTk5ODcgNi45OTk5NyA5LjI0OTk4IDcgMTJDNy4wMDAwMyAxNC41NSA5LjAyMTE5IDE3IDEyIDE3QzE0Ljc3MTIgMTcgMTcgMTQuNzUgMTcgMTJcIj48c3ZnOmFuaW1hdGV0cmFuc2Zvcm0gYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiIGF0dHJpYnV0ZVR5cGU9XCJYTUxcIiBkdXI9XCI1NjBtc1wiIGZyb209XCIwLDEyLDEyXCIgcmVwZWF0Q291bnQ9XCJpbmRlZmluaXRlXCIgdG89XCIzNjAsMTIsMTJcIiB0eXBlPVwicm90YXRlXCI+PC9zdmc6YW5pbWF0ZXRyYW5zZm9ybT48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TG9hZGVySWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleE1hcmtlckljb25dLHN2Z1tjb2RleC1tYXJrZXItaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBkPVwibTExLjM1NCA5LjMxOGwxLjQxNC0xLjQxNGEyIDIgMCAxIDEgMi44MjggMi44MjhsLTEuNDE0IDEuNDE0bS0yLjgyOC0yLjgyOGwtMy4zODcgMy4zODZhNCA0IDAgMCAwLTEuMDk0IDIuMDQ0bC0uMTc1Ljg3N2ExIDEgMCAwIDAgMS4xNzcgMS4xNzdsLjg3Ny0uMTc1YTQgNCAwIDAgMCAyLjA0NC0xLjA5NGwzLjM4Ni0zLjM4N20tMi44MjgtMi44MjhsMi44MjggMi44MjhcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgZD1cIk0xNSAxN2g0XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TWFya2VySWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleE1lbnVJY29uXSxzdmdbY29kZXgtbWVudS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMi42XCIgZD1cIk05LjQxIDcuM0g5LjRtNS4yIDBoLS4wMU05LjMxIDEySDkuM201LjMgMGgtLjAxbS01LjE4IDQuN0g5LjRtNS4yIDBoLS4wMVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhNZW51SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleE1lbnVTbWFsbEljb25dLHN2Z1tjb2RleC1tZW51LXNtYWxsLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyLjZcIiBkPVwiTTkuNDEgOS42Nkg5LjRtNS4yIDBoLS4wMW0tNS4yOCA0LjdIOS4zbTUuMyAwaC0uMDFcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TWVudVNtYWxsSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFBpY3R1cmVJY29uXSxzdmdbY29kZXgtcGljdHVyZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwibTUuMTQgMTUuMzJsMy41NS0zLjc1NEExLjc1IDEuNzUgMCAwIDEgOS45NjkgMTFjLjQ3OSAwIC45MzguMjA0IDEuMjc3LjU2NkwxNS4zODcgMTZtLTEuODA2LTEuOTM0bDEuNDMyLTEuNTMzYTEuNzUgMS43NSAwIDAgMSAxLjI3Ny0uNTY2Yy40OCAwIC45MzkuMjA0IDEuMjc3LjU2NmwxLjI3NCAxLjQzbS01LjA2My00LjYzaC4wMDlcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhQaWN0dXJlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFBsYXlJY29uXSxzdmdbY29kZXgtcGxheS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNMTAgMTAuNTZ2Mi44OGExLjMgMS4zIDAgMCAwIDIuMDIxIDEuMDgxbDIuMTYtMS40NGExLjMgMS4zIDAgMCAwLS4wMDEtMi4xNjNMMTIuMDIxIDkuNDhBMS4zIDEuMyAwIDAgMCAxMCAxMC41NjFaXCI+PC9zdmc6cGF0aD48c3ZnOnJlY3Qgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgeD1cIjVcIiB5PVwiNVwiIHJ4PVwiNFwiPjwvc3ZnOnJlY3Q+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFBsYXlJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4UGx1c0ljb25dLHN2Z1tjb2RleC1wbHVzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xMiA3djVtMCA1di01bTUgMGgtNW0wIDBIN1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhQbHVzSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFF1ZXN0aW9uSWNvbl0sc3ZnW2NvZGV4LXF1ZXN0aW9uLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnJlY3Qgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgeD1cIjVcIiB5PVwiNVwiIHJ4PVwiNFwiPjwvc3ZnOnJlY3Q+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTEyIDE1LjUydi0uMDFtLTEuOTk4LTUuNTMzQzEwLjE1NyA5LjAxOSAxMSA4LjUgMTIgOC41czEuNjg2LjY3MiAxLjg3IDEuMjA3Yy4xODMuNTM1LjE0NCAxLjM0NC0uMzYzIDEuODA5cy0uNzczLjMxNi0xLjIyOS44YTEuOCAxLjggMCAwIDAtLjI3OC40MzJcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhRdWVzdGlvbkljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhRdW90ZUljb25dLHN2Z1tjb2RleC1xdW90ZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xMCAxMC44MThIOWMtLjE5OCAwLS4zOTEtLjA1My0uNTU2LS4xNTNhLjkzLjkzIDAgMCAxLS4zNjgtLjQwOGEuODMuODMgMCAwIDEtLjA1Ny0uNTI1YS45LjkgMCAwIDEgLjI3NC0uNDY2Yy4xNC0uMTI3LjMxOC0uMjEzLjUxMi0uMjQ5Yy4xOTQtLjAzNS4zOTUtLjAxNy41NzguMDUyYTEgMSAwIDAgMSAuNDQ4LjMzNWMuMTEuMTUuMTY5LjMyNS4xNjkuNTA1djIuMjczYzAgLjQ4Mi0uMjEuOTQ0LS41ODYgMS4yODVBMi4xIDIuMSAwIDAgMSA4IDE0bTgtMy4xODJoLTFjLS4xOTggMC0uMzkxLS4wNTMtLjU1Ni0uMTUzYS45My45MyAwIDAgMS0uMzY4LS40MDhhLjgzLjgzIDAgMCAxLS4wNTctLjUyNWEuOS45IDAgMCAxIC4yNzQtLjQ2NmMuMTQtLjEyNy4zMTgtLjIxMy41MTItLjI0OWMuMTk0LS4wMzUuMzk1LS4wMTcuNTc4LjA1MmExIDEgMCAwIDEgLjQ0OS4zMzVhLjg1Ljg1IDAgMCAxIC4xNjguNTA1djIuMjczYzAgLjQ4Mi0uMjEuOTQ0LS41ODYgMS4yODVBMi4xIDIuMSAwIDAgMSAxNCAxNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhRdW90ZUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhSZWRvSWNvbl0sc3ZnW2NvZGV4LXJlZG8taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTQuNjY3IDEzLjY2N0wxOCAxMC4zMzNMMTQuNjY3IDdNMTggMTAuMzMzSDguODMzYTMuMzMzIDMuMzMzIDAgMCAwIDAgNi42NjdoLjgzNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhSZWRvSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFJlbW92ZUJhY2tncm91bmRJY29uXSxzdmdbY29kZXgtcmVtb3ZlLWJhY2tncm91bmQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTExIDE5Yy0xLjg2NCAwLTIuNzk2IDAtMy41My0uMzA1YTQgNCAwIDAgMS0yLjE2Ni0yLjE2NEM1IDE1Ljc5NiA1IDE0Ljg2NCA1IDEzdi0xYzAtMi44MDkgMC00LjIxMy42NzQtNS4yMjJhNCA0IDAgMCAxIDEuMTA0LTEuMTA0QzcuNzg3IDUgOS4xOSA1IDEyIDVoMS41YzEuMzk2IDAgMi4wOTMgMCAyLjY2MS4xNzJhNCA0IDAgMCAxIDIuNjY3IDIuNjY3QzE5IDguNDA3IDE5IDkuMTA0IDE5IDEwLjV2MFwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTkuMTE5IDE0Ljg3OUwxNi45OTcgMTdtLTIuMTIxIDIuMTIxTDE2Ljk5NyAxN20yLjEyMiAyLjEyMUwxNi45OTcgMTdtMCAwbC0yLjEyMS0yLjEyMVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIm02LjUgMTcuNWwxMS0xMW0xLjQ5MiA0aC4wMW0tOC4wMSA4LjVoLjAxTTUgMTNsOC04XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4UmVtb3ZlQmFja2dyb3VuZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhSZXBsYWNlSWNvbl0sc3ZnW2NvZGV4LXJlcGxhY2UtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTExLjUgMTcuNUw1IDExbTAgMHY0LjVNNSAxMWg0LjVtMy00LjVMMTkgMTNtMCAwVjguNW0wIDQuNWgtNC41XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFJlcGxhY2VJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4U2F2ZUljb25dLHN2Z1tjb2RleC1zYXZlLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIm0xNS4wNzggNS42MjZsLjUzNy0uODQzbC0uNTM3Ljg0M2MuMzQ4LjIyMi42NjEuNTI4IDEuNDkzIDEuMzZsLjcwNy0uNzA4bC0uNzA3LjcwN2wuOTU0Ljk1NGMuMzEuMzEuNDI1LjQyNi41MjQuNTQzYTQgNCAwIDAgMSAuOTM4IDIuMjY0Yy4wMTIuMTUzLjAxMy4zMTYuMDEzLjc1NHYuNWMwIDEuNDE3IDAgMi40MTktLjA2NSAzLjIwM2MtLjA2My43NzItLjE4MiAxLjI0My0uMzcxIDEuNjEzYTQgNCAwIDAgMS0xLjc0OCAxLjc0OGMtLjM3LjE4OS0uODQxLjMwOC0xLjYxMy4zNzFDMTQuNDE5IDE5IDEzLjQxNyAxOSAxMiAxOXMtMi40MTkgMC0zLjIwMy0uMDY1Yy0uNzcxLS4wNjMtMS4yNDMtLjE4Mi0xLjYxMy0uMzcxYTQgNCAwIDAgMS0xLjc0OC0xLjc0OGMtLjE4OS0uMzctLjMwOC0uODQxLS4zNzEtMS42MTNDNSAxNC40MTkgNSAxMy40MTcgNSAxMnYtLjIyMmMwLTEuMzEgMC0yLjIzOC4wNTYtMi45NjVjLjA1NC0uNzE2LjE1Ny0xLjE1Ni4zMTktMS41MDRhNCA0IDAgMCAxIDEuOTM0LTEuOTM0Yy4zNDgtLjE2Mi43ODgtLjI2NSAxLjUwNC0uMzJDOS41NCA1LjAwMiAxMC40NjcgNSAxMS43NzggNWMxLjE3NiAwIDEuNjE0LjAwNiAyLjAxNy4wOTVjLjQ1NS4xLjg5LjI4IDEuMjgzLjUzMVpcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTEyIDE1YTIgMiAwIDEgMCAwLTRhMiAyIDAgMCAwIDAgNG0yLTkuNVY3YTEgMSAwIDAgMS0xIDFoLTJhMSAxIDAgMCAxLTEtMVY1LjJcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhTYXZlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFNlYXJjaEljb25dLHN2Z1tjb2RleC1zZWFyY2gtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6Y2lyY2xlIGN4PVwiMTAuNVwiIGN5PVwiMTAuNVwiIHI9XCI1LjVcIj48L3N2ZzpjaXJjbGU+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTE1LjQxNCAxNUwxOSAxOC41ODZcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhTZWFyY2hJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4U3Rhckljb25dLHN2Z1tjb2RleC1zdGFyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTExLjgyIDYuMDQ0YS4yLjIgMCAwIDEgLjM2IDBsMS43OTggMy43NDFhLjIuMiAwIDAgMCAuMTUzLjExMmw0LjExNC41NTNhLjIuMiAwIDAgMSAuMTExLjM0M2wtMy4wMDMgMi44NjVhLjIuMiAwIDAgMC0uMDU4LjE4bC43NDUgNC4wODRhLjIuMiAwIDAgMS0uMjkyLjIxMkwxMiAxNi4xMTJsLTMuNzQ4IDIuMDIyYS4yLjIgMCAwIDEtLjI5Mi0uMjEybC43NDUtNC4wODNhLjIuMiAwIDAgMC0uMDU4LS4xOGwtMy4wMDMtMi44NjZhLjIuMiAwIDAgMSAuMTExLS4zNDNsNC4xMTQtLjU1M2EuMi4yIDAgMCAwIC4xNTMtLjExMnpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4U3Rhckljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhTdHJldGNoSWNvbl0sc3ZnW2NvZGV4LXN0cmV0Y2gtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtMTcgOWwzIDNsLTMgM20tMy0zaDZNNyA5bC0zIDNsMyAzbS0zLTNoNlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhTdHJldGNoSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFN0cmlrZXRocm91Z2hJY29uXSxzdmdbY29kZXgtc3RyaWtldGhyb3VnaC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xNC41IDguNWMtMS0xLjUtMy41NjUtMS44MzUtNC43NDctLjcwM0EyLjQgMi40IDAgMCAwIDkgOS41NGMwIC42NTQuMjcgMS4yOC43NTMgMS43NDJjMS4yMyAxLjE3OSAzLjI2NC4yNjUgNC40OTQgMS40NDNjLjQ4Mi40NjMuNzUzIDEuMDkuNzUzIDEuNzQyYzAgLjY1NC0uMjcgMS4yOC0uNzUzIDEuNzQzQzEyLjg2NiAxNy41MzIgMTAgMTcuNSA5IDE2bS0zLTRoMTJcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4U3RyaWtldGhyb3VnaEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhUYWJsZUljb25dLHN2Z1tjb2RleC10YWJsZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNMTAgNXYxMy41TTUgMTBoMTRcIj48L3N2ZzpwYXRoPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VGFibGVJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VGFibGVXaXRoSGVhZGluZ3NJY29uXSxzdmdbY29kZXgtdGFibGUtd2l0aC1oZWFkaW5ncy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNNSAxMGgxNFwiPjwvc3ZnOnBhdGg+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhUYWJsZVdpdGhIZWFkaW5nc0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhUYWJsZVdpdGhvdXRIZWFkaW5nc0ljb25dLHN2Z1tjb2RleC10YWJsZS13aXRob3V0LWhlYWRpbmdzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xMCA1djEzLjVNMTQgNXYxMy41TTUgMTBoMTRNNSAxNGgxNFwiPjwvc3ZnOnBhdGg+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhUYWJsZVdpdGhvdXRIZWFkaW5nc0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhUZXh0SWNvbl0sc3ZnW2NvZGV4LXRleHQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTggOVY3LjJjMC0uMTEuMDktLjIuMi0uMkgxMm00IDJWNy4yYS4yLjIgMCAwIDAtLjItLjJIMTJtMCAwdjEwbTAgMGgtMm0yIDBoMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhUZXh0SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFRyYW5zbGF0ZUljb25dLHN2Z1tjb2RleC10cmFuc2xhdGUtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk03IDE3YzEtMi41IDUtNSA2LThcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBkPVwiTTguNSAxMXMxLjUgMyA0IDRNNiA3LjdoMTBtLTUgMHYtMk0xNC41IDE4bC43MTQtMm0wIDBsMS43MDItNC43NjVhLjM1NS4zNTUgMCAwIDEgLjY2OCAwTDE5LjI4NiAxNm0tNC4wNzIgMGg0LjA3Mk0yMCAxOGwtLjcxNC0yXCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VHJhbnNsYXRlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFRyYXNoSWNvbl0sc3ZnW2NvZGV4LXRyYXNoLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE4LjEzMyA3LjcyM3EuNDM1LjA2Ljg2Ny4xMjhtLS44NjctLjEyOGwtLjkwNiA5LjY4Yy0uMDM3LjQzNC0uMjU0Ljg0LS42MDcgMS4xMzZhMi4wMiAyLjAyIDAgMCAxLTEuMjk3LjQ2MUg4LjY3N2MtLjQ4IDAtLjk0NC0uMTY0LTEuMjk3LS40NmExLjY3IDEuNjcgMCAwIDEtLjYwNy0xLjEzOGwtLjkwNi05LjY3OW0xMi4yNjYgMGE0NSA0NSAwIDAgMC0yLjk1MS0uMzA1bS05LjMxNS4zMDVxLS40MzUuMDYtLjg2Ny4xMjdtLjg2Ny0uMTI3YTQ1IDQ1IDAgMCAxIDIuOTUxLS4zMDVtNi4zNjQgMGE0NS41IDQ1LjUgMCAwIDAtNi4zNjQgMG02LjM2NCAwYzAtMi4xMTQtMS40NTUtMy4wNy0zLjE4Mi0zLjA3UzguODE4IDUuNDQgOC44MTggNy40MThNMTAuNSAxNS41TDEwIDExbTQgMGwtLjUgNC41XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFRyYXNoSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFR3aXR0ZXJJY29uXSxzdmdbY29kZXgtdHdpdHRlci1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE2Ljc5IDcuODc3QzE3LjUgOCAxOC41IDggMTguNSA4cy0xIDEuNS0xIDJjMSA4LjUtNiAxMC41LTEyIDYuNWMxLjUuMTcxIDIuNTQ2LjAxNiAzLjc1Mi0uODk4QzcuOTk1IDE1LjU4IDUuMzY1IDEzLjYwMyA1IDEyLjVjMS41LjUgMy0uNSAzLS41Yy0xLjQ3OS0uOTU1LTMuMDctMi43NTktMi4wMjUtNC40OTJhOC4yNSA4LjI1IDAgMCAwIDUuOTIgMi45MDJjLS42NzUtMi44MDIgMy4wMjctNC40NTcgNC44OTQtMi41MzNaXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFR3aXR0ZXJJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VW5kZXJsaW5lSWNvbl0sc3ZnW2NvZGV4LXVuZGVybGluZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05IDcuNXY0YTMgMyAwIDAgMCA2IDB2LTRNNy43MTQgMThoOC41NzJcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VW5kZXJsaW5lSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFVuZG9JY29uXSxzdmdbY29kZXgtdW5kby1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05LjMzMyAxMy42NjdMNiAxMC4zMzNMOS4zMzMgN002IDEwLjMzM2g5LjE2N2EzLjMzMyAzLjMzMyAwIDAgMSAwIDYuNjY3aC0uODM0XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFVuZG9JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VW5saW5rSWNvbl0sc3ZnW2NvZGV4LXVubGluay1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTUuNzggMTEuNXMuMjczLS4zMDQuNzctLjgyOGMuODk0LS45NDMuOTItMi40MjQuMDI4LTMuMzd2MGEyLjQwNCAyLjQwNCAwIDAgMC0zLjQ1LS4wNTFMMTEuODggOC41bS0zLjYzNSAzLjg4OHMtLjI3My4zMDQtLjc3LjgyOGMtLjg5NC45NDQtLjkyIDIuNDI1LS4wMjggMy4zN3YwYy45My45ODcgMi40OSAxLjAxIDMuNDQ5LjA1MmwxLjI1LTEuMjVtNS42MzQtLjI4NWwtMS4xODMtLjE2YTEgMSAwIDAgMC0xLjEzNC45NTRsLS4wNDMgMS4xODVtLTkuMDMtOC4wNWwxLjE5NC4wMzVhMSAxIDAgMCAwIDEuMDI3LTEuMDdsLS4wODQtMS4xODNtMy41ODcgNS4zODZsLS40MTQtLjQxNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhVbmxpbmtJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VXNlckljb25dLHN2Z1tjb2RleC11c2VyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xMiAxMGMuNzE0IDAgMS4yMzktLjQzNCAxLjU0LS44ODVjLjMwNC0uNDU3LjQ2LTEuMDMuNDYtMS42MTVjMC0uNTg0LS4xNTYtMS4xNTgtLjQ2LTEuNjE1QzEzLjIzOCA1LjQzNSAxMi43MTQgNSAxMiA1cy0xLjIzOS40MzQtMS41NC44ODVjLS4zMDQuNDU3LS40NiAxLjAzLS40NiAxLjYxNWMwIC41ODQuMTU2IDEuMTU4LjQ2IDEuNjE1Yy4zMDEuNDUuODI1Ljg4NSAxLjU0Ljg4NVpcIj48L3N2ZzpwYXRoPjxzdmc6ZWxsaXBzZSBjeD1cIjEyXCIgY3k9XCIxNlwiIHJ4PVwiM1wiIHJ5PVwiNVwiIHRyYW5zZm9ybT1cInJvdGF0ZSgtOTAgMTIgMTYpXCI+PC9zdmc6ZWxsaXBzZT48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VXNlckljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhVc2Vyc0dyb3VwSWNvbl0sc3ZnW2NvZGV4LXVzZXJzLWdyb3VwLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xMCAxMGMuNzE0IDAgMS4yMzktLjQzNCAxLjU0LS44ODVjLjMwNC0uNDU3LjQ2LTEuMDMuNDYtMS42MTVjMC0uNTg0LS4xNTYtMS4xNTgtLjQ2LTEuNjE1QzExLjIzOCA1LjQzNSAxMC43MTQgNSAxMCA1cy0xLjIzOS40MzQtMS41NC44ODVDOC4xNTcgNi4zNDIgOCA2LjkxNSA4IDcuNWMwIC41ODQuMTU2IDEuMTU4LjQ2IDEuNjE1Yy4zMDEuNDUuODI1Ljg4NSAxLjU0Ljg4NVpcIj48L3N2ZzpwYXRoPjxzdmc6ZWxsaXBzZSBjeD1cIjEwXCIgY3k9XCIxNlwiIHJ4PVwiM1wiIHJ5PVwiNVwiIHRyYW5zZm9ybT1cInJvdGF0ZSgtOTAgMTAgMTYpXCI+PC9zdmc6ZWxsaXBzZT48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNMTUuNTU2IDEwLjIyMmExLjc3OCAxLjc3OCAwIDEgMCAwLTMuNTU1TTE3LjUgMTNjMy41IDEuNSAzIDUgLjUgNS41XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VXNlcnNHcm91cEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhXYXJuaW5nSWNvbl0sc3ZnW2NvZGV4LXdhcm5pbmctaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNMTIgOXYzbTAgMy4wMnYtLjAxXCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4V2FybmluZ0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuIl19
1641
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2h1bmstMC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jaHVua3MvY2h1bmstMC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQTs7QUFhaEQsTUFBTSxPQUFPLHNCQUFzQjtJQUN4QixPQUFPLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQzVCLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDcEIsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTt3R0FIbkIsc0JBQXNCOzRGQUF0QixzQkFBc0IsNm5CQUZ2Qiw2Z0JBQTZnQjs7NEZBRTVnQixzQkFBc0I7a0JBWGxDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSw0REFBNEQ7b0JBQ3RFLElBQUksRUFBRTt3QkFDSixJQUFJLEVBQUUsS0FBSzt3QkFDWCxnQkFBZ0IsRUFBRSxXQUFXO3dCQUM3QixjQUFjLEVBQUUsU0FBUzt3QkFDekIsZUFBZSxFQUFFLFVBQVU7cUJBQzVCO29CQUNELFFBQVEsRUFBRSw2Z0JBQTZnQjtpQkFDeGhCOztBQWtCRCxNQUFNLE9BQU8sa0JBQWtCO0lBQ3BCLE9BQU8sR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDNUIsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNwQixNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO3dHQUhuQixrQkFBa0I7NEZBQWxCLGtCQUFrQixxbkJBRm5CLHNuQkFBc25COzs0RkFFcm5CLGtCQUFrQjtrQkFYOUIsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLG9EQUFvRDtvQkFDOUQsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxLQUFLO3dCQUNYLGdC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S0FBSyxDQUFDLENBQUE7SUFDcEIsTUFBTSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTt3R0FIbkIsZ0JBQWdCOzRGQUFoQixnQkFBZ0IsZ25CQUZqQix1TUFBdU07OzRGQUV0TSxnQkFBZ0I7a0JBWDVCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSwrQ0FBK0M7b0JBQ3pELElBQUksRUFBRTt3QkFDSixJQUFJLEVBQUUsS0FBSzt3QkFDWCxnQkFBZ0IsRUFBRSxXQUFXO3dCQUM3QixjQUFjLEVBQUUsU0FBUzt3QkFDekIsZUFBZSxFQUFFLFVBQVU7cUJBQzVCO29CQUNELFFBQVEsRUFBRSx1TUFBdU07aUJBQ2xOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEFkZEJhY2tncm91bmRJY29uXSxzdmdbY29kZXgtYWRkLWJhY2tncm91bmQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTExIDE5Yy0xLjg2NCAwLTIuNzk2IDAtMy41My0uMzA1YTQgNCAwIDAgMS0yLjE2Ni0yLjE2NEM1IDE1Ljc5NiA1IDE0Ljg2NCA1IDEzdi0xYzAtMi44MDkgMC00LjIxMy42NzQtNS4yMjJhNCA0IDAgMCAxIDEuMTA0LTEuMTA0QzcuNzg3IDUgOS4xOSA1IDEyIDVoMS41YzEuMzk2IDAgMi4wOTMgMCAyLjY2MS4xNzJhNCA0IDAgMCAxIDIuNjY3IDIuNjY3QzE5IDguNDA3IDE5IDkuMTA0IDE5IDEwLjV2MFwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTYgMTN2M20wIDN2LTNtMyAwaC0zbTAgMGgtM1wiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIm02LjUgMTcuNWwxMS0xMW0xLjQ5MiA0aC4wMW0tOC4wMSA4LjVoLjAxTTUgMTNsOC04XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QWRkQmFja2dyb3VuZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBZGRCb3JkZXJJY29uXSxzdmdbY29kZXgtYWRkLWJvcmRlci1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNMTguOTkyIDkuNWguMDFNMTQuNSA1aC4wMVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTE0LjYyNSA1SDE1YTQgNCAwIDAgMSA0IDR2LjM3NVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNOS4zNzUgNUg5YTQgNCAwIDAgMC00IDR2LjM3NVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNOS4zNzMgNWguMDFNNSA5LjVoLjAxXCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIk05LjM3NSAxOUg5YTQgNCAwIDAgMS00LTR2LS4zNzVcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTkuMzczIDE5aC4wMU01IDE0LjU1aC4wMVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTE2IDEzdjNtMCAzdi0zbTMgMGgtM20wIDBoLTNcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhBZGRCb3JkZXJJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4QWxpZ25DZW50ZXJJY29uXSxzdmdbY29kZXgtYWxpZ24tY2VudGVyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xOCA3SDZtMTIgMTBINm0xMC01SDhcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QWxpZ25DZW50ZXJJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4QWxpZ25MZWZ0SWNvbl0sc3ZnW2NvZGV4LWFsaWduLWxlZnQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE3IDdINW0xMiAxMEg1bTgtNUg1XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEFsaWduTGVmdEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBbGlnbkp1c3RpZnlJY29uXSxzdmdbY29kZXgtYWxpZ24tanVzdGlmeS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTggN0g2bTEyIDEwSDZtMTItNUg2XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEFsaWduSnVzdGlmeUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhBbGlnblJpZ2h0SWNvbl0sc3ZnW2NvZGV4LWFsaWduLXJpZ2h0LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xOSA3SDdtMTIgMTBIN20xMi01aC04XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEFsaWduUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Qm9sZEljb25dLHN2Z1tjb2RleC1ib2xkLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05IDEyVjcuMWEuMS4xIDAgMCAxIC4xLS4xaDEuM2MxLjEgMCAzLjYuMSAzLjYgMi41YzAgMCAwIDIuNS0zIDIuNW0tMiAwdjQuOGMwIC4xMS4wOS4yLjIuMmgzLjNjMS41IDAgMi41LTEgMi41LTIuNWMwLTIuNzk1LTQtMi41LTQtMi41bS0yIDBoMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhCb2xkSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEJyYWNrZXRzSWNvbl0sc3ZnW2NvZGV4LWJyYWNrZXRzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTkgOGwtNCA0bDQgNG02LThsNCA0bC00IDRcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QnJhY2tldHNJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4QnJhY2tldHNWZXJ0aWNhbEljb25dLHN2Z1tjb2RleC1icmFja2V0cy12ZXJ0aWNhbC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIxLjZcIiBkPVwiTTEzLjMzMyA3LjVMMTAgNC4xNjdMNi42NjcgNy41bTYuNjY2IDVMMTAgMTUuODMzTDYuNjY3IDEyLjVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4QnJhY2tldHNWZXJ0aWNhbEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjAgMjBcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDaGVja2xpc3RJY29uXSxzdmdbY29kZXgtY2hlY2tsaXN0LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJtOS4yIDEybDEuODU5IDEuODU5YS4yLjIgMCAwIDAgLjI4MiAwTDE0LjcgMTAuNVwiPjwvc3ZnOnBhdGg+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDaGVja2xpc3RJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q2hlY2tJY29uXSxzdmdbY29kZXgtY2hlY2staWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTcgMTJsMy40ODggMy44MzdhLjIuMiAwIDAgMCAuMjk2IDBMMTcgOVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDaGVja0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDaGV2cm9uTGVmdEljb25dLHN2Z1tjb2RleC1jaGV2cm9uLWxlZnQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTE0LjUgMTcuNWwtNC44NTktNC44NTlhLjIuMiAwIDAgMSAwLS4yODJMMTQuNSA3LjVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q2hldnJvbkxlZnRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q2hldnJvbkRvd25JY29uXSxzdmdbY29kZXgtY2hldnJvbi1kb3duLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm03IDEwbDQuODU5IDQuODU5YS4yLjIgMCAwIDAgLjI4MiAwTDE3IDEwXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleENoZXZyb25Eb3duSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleENoZXZyb25SaWdodEljb25dLHN2Z1tjb2RleC1jaGV2cm9uLXJpZ2h0LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm05LjU4MyAxNy41bDQuODU4LTQuODU5YS4yLjIgMCAwIDAgMC0uMjgyTDkuNTgzIDcuNVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDaGV2cm9uUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q2hldnJvblVwSWNvbl0sc3ZnW2NvZGV4LWNoZXZyb24tdXAtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwibTcgMTVsNC44NTktNC44NTlhLjIuMiAwIDAgMSAuMjgyIDBMMTcgMTVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q2hldnJvblVwSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleENsaXBib2FyZEljb25dLHN2Z1tjb2RleC1jbGlwYm9hcmQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTkuNDI5IDdINy43MTRjLS40NTQgMC0uODkuMTU4LTEuMjEyLjQ0QTEuNDEgMS40MSAwIDAgMCA2IDguNXY5YzAgLjM5OC4xOC43OC41MDIgMS4wNmMuMzIyLjI4Mi43NTguNDQgMS4yMTIuNDRoOC41NzJjLjQ1NCAwIC44OS0uMTU4IDEuMjEyLS40NEExLjQxIDEuNDEgMCAwIDAgMTggMTcuNXYtOWMwLS4zOTgtLjE4LS43OC0uNTAyLTEuMDZBMS44NSAxLjg1IDAgMCAwIDE2LjI4NiA3SDE0LjU3XCI+PC9zdmc6cGF0aD48c3ZnOnJlY3Qgd2lkdGg9XCI1LjE1OFwiIGhlaWdodD1cIjMuMzY4XCIgeD1cIjkuNDIxXCIgeT1cIjVcIiByeD1cIjEuNVwiPjwvc3ZnOnJlY3Q+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleENsaXBib2FyZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDb2xvckljb25dLHN2Z1tjb2RleC1jb2xvci1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk01LjI0MyAxMS40MDhhMyAzIDAgMCAxIC44NzgtMi4xNjVsMy41MzYtMy41MzZhMSAxIDAgMCAxIDEuNDE0IDBsNC45NSA0Ljk1YTEgMSAwIDAgMSAuMjkyLjc1bS0xMS4wNyAwYTMgMyAwIDAgMCAuODc4IDIuMDc4TDggMTUuMzY0bS0yLjc1Ny0zLjk1Nmg2LjcxNG00LjM1NiAwYTEgMSAwIDAgMS0uMjkyLjY2M2wtMy41MzYgMy41MzZhMyAzIDAgMCAxLTQuMjQyIDBMOCAxNS4zNjRtOC4zMTMtMy45NTZoLTQuMzU2TTggMTUuMzY0bDMuOTU3LTMuOTU2TTIwIDE3LjQ2MmMwIC44NS0uNjcyIDEuNTM4LTEuNSAxLjUzOHMtMS41LS42ODktMS41LTEuNTM4cy45LTEuODQ3IDEuNS0yLjQ2MmMuNi42MTUgMS41IDEuNjEyIDEuNSAyLjQ2MlpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q29sb3JJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q29sbGFwc2VJY29uXSxzdmdbY29kZXgtY29sbGFwc2UtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtNyA5bDMgM20wIDBsLTMgM20zLTNING0xMy0zbC0zIDNtMCAwbDMgM20tMy0zaDZcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q29sbGFwc2VJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4Q29weUljb25dLHN2Z1tjb2RleC1jb3B5LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xNy4yNSA4LjVoLTdhMS43NSAxLjc1IDAgMCAwLTEuNzUgMS43NXY3YzAgLjk2Ni43ODQgMS43NSAxLjc1IDEuNzVoN0ExLjc1IDEuNzUgMCAwIDAgMTkgMTcuMjV2LTdhMS43NSAxLjc1IDAgMCAwLTEuNzUtMS43NVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTUuNSA4LjVWNi43NUExLjc1IDEuNzUgMCAwIDAgMTMuNzUgNWgtN0ExLjc1IDEuNzUgMCAwIDAgNSA2Ljc1djdhMS43NSAxLjc1IDAgMCAwIDEuNzUgMS43NUg4LjVNMTIgMTJoMy41TTEyIDE1LjVoMy41XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q29weUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDcm9zc0ljb25dLHN2Z1tjb2RleC1jcm9zcy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtOCA4bDQgNG0wIDBsNCA0bS00LTRsNC00bS00IDRsLTQgNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhDcm9zc0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhDdXJseUJyYWNrZXRzSWNvbl0sc3ZnW2NvZGV4LWN1cmx5LWJyYWNrZXRzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTkgMTdjLTIgMC0yLTEuNzQ2LTItMy41TDUuNSAxMkw3IDEwLjVDNyA4Ljc0NiA3IDcgOSA3bTYgMTBjMiAwIDItMS43NDYgMi0zLjVsMS41LTEuNWwtMS41LTEuNUMxNyA4Ljc0NiAxNyA3IDE1IDdcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4Q3VybHlCcmFja2V0c0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhEZWxpbWl0ZXJJY29uXSxzdmdbY29kZXgtZGVsaW1pdGVyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk02IDEyaDRtNCAwaDRcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4RGVsaW1pdGVySWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleERpcmVjdGlvbkRvd25SaWdodEljb25dLHN2Z1tjb2RleC1kaXJlY3Rpb24tZG93bi1yaWdodC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm0xNC44ODMgOS4xNjdsMy4zMzQgMy4zMzNtMCAwbC0zLjMzNCAzLjMzM20zLjMzNC0zLjMzM0gxMC4wNWEzLjMzMyAzLjMzMyAwIDAgMS0zLjMzMy0zLjMzM1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhEaXJlY3Rpb25Eb3duUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4RGlyZWN0aW9uTGVmdERvd25JY29uXSxzdmdbY29kZXgtZGlyZWN0aW9uLWxlZnQtZG93bi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm0xNC45MTcgMTQuOTE3bC0zLjMzNCAzLjMzM20wIDBMOC4yNSAxNC45MTdtMy4zMzMgMy4zMzN2LTguMTY3YTMuMzMzIDMuMzMzIDAgMCAxIDMuMzM0LTMuMzMzXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleERpcmVjdGlvbkxlZnREb3duSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleERpcmVjdGlvblJpZ2h0RG93bkljb25dLHN2Z1tjb2RleC1kaXJlY3Rpb24tcmlnaHQtZG93bi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIm05LjEzMyAxNC45MTdsMy4zMzQgMy4zMzNtMCAwbDMuMzMzLTMuMzMzbS0zLjMzMyAzLjMzM3YtOC4xNjdBMy4zMzMgMy4zMzMgMCAwIDAgOS4xMzMgNi43NVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhEaXJlY3Rpb25SaWdodERvd25JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4RGlyZWN0aW9uVXBSaWdodEljb25dLHN2Z1tjb2RleC1kaXJlY3Rpb24tdXAtcmlnaHQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtMTQuODgzIDE1LjgzM2wzLjMzNC0zLjMzM20wIDBsLTMuMzM0LTMuMzMzbTMuMzM0IDMuMzMzSDEwLjA1YTMuMzMzIDMuMzMzIDAgMCAwLTMuMzMzIDMuMzMzXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleERpcmVjdGlvblVwUmlnaHRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4RG90Q2lyY2xlSWNvbl0sc3ZnW2NvZGV4LWRvdC1jaXJjbGUtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjwvc3ZnOmNpcmNsZT5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleERvdENpcmNsZUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhFdGNIb3Jpc29udGFsSWNvbl0sc3ZnW2NvZGV4LWV0Yy1ob3Jpc29udGFsLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyLjZcIiBkPVwiTTcuMzA1IDExLjk5NXYuMDFtNC43LS4wMXYuMDFtNC43LS4wMXYuMDFcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4RXRjSG9yaXNvbnRhbEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhFdGNWZXJ0aWNhbEljb25dLHN2Z1tjb2RleC1ldGMtdmVydGljYWwtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjIuNlwiIGQ9XCJNMTIuMDEgNy4zSDEybS4wMSA0LjdIMTJtLjAxIDQuN0gxMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhFdGNWZXJ0aWNhbEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhGaWxlSWNvbl0sc3ZnW2NvZGV4LWZpbGUtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTMuMzI0IDguNDM2TDkuNDk1IDEyLjE5Yy0uMzY0LjM2LS41NjQuODUyLS41NTYgMS4zNjlhMiAyIDAgMCAwIC42IDEuMzg3Yy4zNzUuMzcxLjg4LjU4NCAxLjQwMy41OTNhMS45MiAxLjkyIDAgMCAwIDEuMzg2LS41NWwzLjgyOC0zLjc1NGEzLjc1IDMuNzUgMCAwIDAgMS4xMTItMi43MzhhNCA0IDAgMCAwLTEuMTk4LTIuNzc1YTQuMSA0LjEgMCAwIDAtMi44MDgtMS4xODVhMy44NSAzLjg1IDAgMCAwLTIuNzcgMS4wOThMNi42NjEgOS4zOWE1LjYzIDUuNjMgMCAwIDAtMS42NjcgNC4xMDdhNiA2IDAgMCAwIDEuNzk4IDQuMTYxYTYuMTUgNi4xNSAwIDAgMCA0LjIxIDEuNzc4YTUuNzcgNS43NyAwIDAgMCA0LjE1Ny0xLjY0NmwzLjgyOS0zLjc1NlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhGaWxlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEdpZnRJY29uXSxzdmdbY29kZXgtZ2lmdC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI2XCIgeD1cIjZcIiB5PVwiMTNcIiByeD1cIjJcIj48L3N2ZzpyZWN0Pjxzdmc6cGF0aCBkPVwiTTEyIDl2MTBtLTctOGEyIDIgMCAwIDEgMi0yaDEwYTIgMiAwIDEgMSAwIDRIN2EyIDIgMCAwIDEtMi0yWm0xMS0yYzAtMS4xMDUgMC0zLTItM3MtMiAxLjg5NS0yIDNjMC0xLjEwNSAwLTMtMi0zUzggNy44OTUgOCA5XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4R2lmdEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhHbG9iZUljb25dLHN2Z1tjb2RleC1nbG9iZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xOCAxMmE2IDYgMCAwIDEtMTIgMG0xMiAwYTYgNiAwIDAgMC0xMiAwbTEyIDBINm01LjctNnMtMiAxLjYzOC0yIDZjMCA0LjkgMiA2IDIgNm0uNi0xMnMyIDEuNjM4IDIgNmMwIDQuOS0yIDYtMiA2XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEdsb2JlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEgxSWNvbl0sc3ZnW2NvZGV4LWgxLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk02IDd2NW0wIDV2LTVtMCAwaDZtMC01djVtMCA1di01bTcgNXYtNi43ODZhLjEuMSAwIDAgMC0uMTY0LS4wNzdMMTYgMTIuNVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIMUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhIMkljb25dLHN2Z1tjb2RleC1oMi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW00LTFjMC0xIDMtMS41IDMgMWMwIDEuOTc3LTIuOTMyIDItMi45OTkgNC44OThBLjEuMSAwIDAgMCAxNi4xIDE3aDMuMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIMkljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhIM0ljb25dLHN2Z1tjb2RleC1oMy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW00LTFjMC0uNS44MzItMSAxLjYtMXMxLjkuMzExIDEuOSAxLjVhMS41MzUgMS41MzUgMCAwIDEtLjk1MiAxLjQ4MmMtLjAxLjAwNC0uMDA4LjAyMy4wMDIuMDI0Yy4yNjEuMDQgMS40NS4zIDEuNDUgMS43OTRjMCAxLjItLjUgMi4yLTIuMiAyLjJjMCAwLTEuOCAwLTEuOC0uN1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIM0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhINEljb25dLHN2Z1tjb2RleC1oNC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW02LTJsLTIuNzE3IDQuODUxYS4xLjEgMCAwIDAgLjA4Ny4xNDloNC44M00xOSAxN3YtMy40XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEg0SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEg1SWNvbl0sc3ZnW2NvZGV4LWg1LWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk02IDd2NW0wIDV2LTVtMCAwaDZtMC01djVtMCA1di01bTQgMy45cy4zNzcgMS4xIDEuOCAxLjFjMS43IDAgMi4yLTEuMzggMi4yLTIuM2MwLTEuOTY4LTIuMzI2LTIuNjUxLTMuODM3LTEuNzFjLS4wNjkuMDQzLS4xNjMtLjAwNS0uMTYzLS4wODdWMTAuMWEuMS4xIDAgMCAxIC4xLS4xaDMuN1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhINUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhINkljb25dLHN2Z1tjb2RleC1oNi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNiA3djVtMCA1di01bTAgMGg2bTAtNXY1bTAgNXYtNW03LjUtMmMtMyAuNS0zLjUgMy4zMjktMy41IDVtMCAwdjBhMiAyIDAgMCAwIDIgMmguMzI1YzEgMCAxLjk5NC0uNjUgMS45MjctMS42NUMyMC4wNjIgMTIuNDk3IDE2IDEyLjY2MiAxNiAxNVpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SDZJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SGVhZGluZ0ljb25dLHN2Z1tjb2RleC1oZWFkaW5nLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05IDd2NW0wIDV2LTVtMCAwaDZtMC01djVtMCA1di01XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleEhlYWRpbmdJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SGVhcnRJY29uXSxzdmdbY29kZXgtaGVhcnQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNNi42IDcuNWMtMS4zMjUgMS4zMjUtMS40IDMuMSAwIDQuOHM1LjYgNS42IDUuNiA1LjZzNC4zLTMuOSA1LjYtNS42czEuMzI1LTMuNDc1IDAtNC44YTMuMzk0IDMuMzk0IDAgMCAwLTQuOCAwbC0uOC44bC0uOC0uOGEzLjM5NCAzLjM5NCAwIDAgMC00LjggMFpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SGVhcnRJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SGlkZGVuSWNvbl0sc3ZnW2NvZGV4LWhpZGRlbi1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNNi43NzggNkwxOC41IDE3LjcyMk0xMC42ODcgMTBBMi4zNDIgMi4zNDIgMCAxIDAgMTQgMTMuMzE0XCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIk0xMyA3YzQgNC4xNjcgNyA0LjE3IDcgNC42N3MtMSAxLjUtMSAxLjVNOC4yNDIgOC44MXEtLjk3My42MjgtMS44NCAxLjYxNWMtLjY5OC43OTQtMS4wNDcgMS4xOTEtMS4wNDcgMS45NDVzLjM1IDEuMTUxIDEuMDQ3IDEuOTQ1UTguNzkzIDE3LjAzNyAxMiAxNy4wMzdxMS42NjUgMCAzLjExMS0uNzM1XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SGlkZGVuSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEh0bWxJY29uXSxzdmdbY29kZXgtaHRtbC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNMTYuNjk1IDVhMiAyIDAgMCAxIDEuOTggMi4yODJsLTEuMjQ5IDguNzg0YTIgMiAwIDAgMS0xLjM2NSAxLjYyMWwtMy40NDYgMS4xMTRhMiAyIDAgMCAxLTEuMjMgMGwtMy40NDYtMS4xMTRhMiAyIDAgMCAxLTEuMzY1LTEuNjIxbC0xLjI1LTguNzg0QTIgMiAwIDAgMSA3LjMwNSA1elwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTUgOC40SDlsLjQyOSAzLjM5NGg1LjE0MmwtLjIxNCAxLjQ4NWwtLjIxNCAxLjQ4NUwxMiAxNS40bC0yLjE0My0uNjM2bC0uMDg2LS40MjVcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhIdG1sSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleEluc3RhZ3JhbUljb25dLHN2Z1tjb2RleC1pbnN0YWdyYW0taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNMTUuOSA4LjF2LjAxXCI+PC9zdmc6cGF0aD48c3ZnOmNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIzXCI+PC9zdmc6Y2lyY2xlPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhJbnN0YWdyYW1JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4SXRhbGljSWNvbl0sc3ZnW2NvZGV4LWl0YWxpYy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTMuMzQgMTBjLS45MTggMi43MzQtMi4zNCA3LTIuMzQgN20zLjIxLTEwaC0uMDFcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4SXRhbGljSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleExpbmtJY29uXSxzdmdbY29kZXgtbGluay1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBkPVwibTcuNyAxMi42bC0uMDIxLjAyYTIuNzk1IDIuNzk1IDAgMCAwLS4wNDQgNC4wMDV2MGEyLjc5NSAyLjc5NSAwIDAgMCAzLjkzNi4wMDZsMS40NTUtMS40MzhhMyAzIDAgMCAwIC4zNC0zLjg2NmwtLjE0Ni0uMjA3XCI+PC9zdmc6cGF0aD48c3ZnOnBhdGggZD1cIm0xNi4yMiAxMS4xMmwuMTM2LS4xNGMuOTMzLS45NTMuOTkyLTIuNDYuMTM1LTMuNDgzdjBhMi41OTcgMi41OTcgMCAwIDAtMy42NjQtLjMyTDExLjM5IDguMzg2YTMgMyAwIDAgMC0uMzAxIDQuM2wuMDMxLjAzNFwiPjwvc3ZnOnBhdGg+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleExpbmtJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4TGlua2VkaW5JY29uXSxzdmdbY29kZXgtbGlua2VkaW4taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNOSAxMS40djRtMC02Ljd2LjAxbTMgMi42OXYuNm0wIDMuNFYxMm0wIDBjMi0uNSAzLS42MzkgMyAuNXYyLjlcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhMaW5rZWRpbkljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhMaXN0QnVsbGV0ZWRJY29uXSxzdmdbY29kZXgtbGlzdC1idWxsZXRlZC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNOSA3aDEwTTkgMTJoMTBNOSAxN2gxME01IDE3aC0uMDFNNSAxMmgtLjAxTTUgN2gtLjAxXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleExpc3RCdWxsZXRlZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhMaXN0TnVtYmVyZWRJY29uXSxzdmdbY29kZXgtbGlzdC1udW1iZXJlZC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTIgN2g3bS03IDVoN20tNyA1aDdNNy44IDE0VjcuMjE0YS4xLjEgMCAwIDAtLjE2NC0uMDc3TDQuOCA5LjVcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TGlzdE51bWJlcmVkSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleExvYWRlckljb25dLHN2Z1tjb2RleC1sb2FkZXItaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTEyIDYuOTk5OThDOS4xNzQ3IDYuOTk5ODcgNi45OTk5NyA5LjI0OTk4IDcgMTJDNy4wMDAwMyAxNC41NSA5LjAyMTE5IDE3IDEyIDE3QzE0Ljc3MTIgMTcgMTcgMTQuNzUgMTcgMTJcIj48c3ZnOmFuaW1hdGV0cmFuc2Zvcm0gYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiIGF0dHJpYnV0ZVR5cGU9XCJYTUxcIiBkdXI9XCI1NjBtc1wiIGZyb209XCIwLDEyLDEyXCIgcmVwZWF0Q291bnQ9XCJpbmRlZmluaXRlXCIgdG89XCIzNjAsMTIsMTJcIiB0eXBlPVwicm90YXRlXCI+PC9zdmc6YW5pbWF0ZXRyYW5zZm9ybT48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TG9hZGVySWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleE1hcmtlckljb25dLHN2Z1tjb2RleC1tYXJrZXItaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cGF0aCBkPVwibTExLjM1NCA5LjMxOGwxLjQxNC0xLjQxNGEyIDIgMCAxIDEgMi44MjggMi44MjhsLTEuNDE0IDEuNDE0bS0yLjgyOC0yLjgyOGwtMy4zODcgMy4zODZhNCA0IDAgMCAwLTEuMDk0IDIuMDQ0bC0uMTc1Ljg3N2ExIDEgMCAwIDAgMS4xNzcgMS4xNzdsLjg3Ny0uMTc1YTQgNCAwIDAgMCAyLjA0NC0xLjA5NGwzLjM4Ni0zLjM4N20tMi44MjgtMi44MjhsMi44MjggMi44MjhcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgZD1cIk0xNSAxN2g0XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TWFya2VySWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleE1lbnVJY29uXSxzdmdbY29kZXgtbWVudS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMi42XCIgZD1cIk05LjQxIDcuM0g5LjRtNS4yIDBoLS4wMU05LjMxIDEySDkuM201LjMgMGgtLjAxbS01LjE4IDQuN0g5LjRtNS4yIDBoLS4wMVwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhNZW51SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleE1lbnVTbWFsbEljb25dLHN2Z1tjb2RleC1tZW51LXNtYWxsLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyLjZcIiBkPVwiTTkuNDEgOS42Nkg5LjRtNS4yIDBoLS4wMW0tNS4yOCA0LjdIOS4zbTUuMyAwaC0uMDFcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4TWVudVNtYWxsSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFBpY3R1cmVJY29uXSxzdmdbY29kZXgtcGljdHVyZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwibTUuMTQgMTUuMzJsMy41NS0zLjc1NEExLjc1IDEuNzUgMCAwIDEgOS45NjkgMTFjLjQ3OSAwIC45MzguMjA0IDEuMjc3LjU2NkwxNS4zODcgMTZtLTEuODA2LTEuOTM0bDEuNDMyLTEuNTMzYTEuNzUgMS43NSAwIDAgMSAxLjI3Ny0uNTY2Yy40OCAwIC45MzkuMjA0IDEuMjc3LjU2NmwxLjI3NCAxLjQzbS01LjA2My00LjYzaC4wMDlcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhQaWN0dXJlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFBsYXlJY29uXSxzdmdbY29kZXgtcGxheS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNMTAgMTAuNTZ2Mi44OGExLjMgMS4zIDAgMCAwIDIuMDIxIDEuMDgxbDIuMTYtMS40NGExLjMgMS4zIDAgMCAwLS4wMDEtMi4xNjNMMTIuMDIxIDkuNDhBMS4zIDEuMyAwIDAgMCAxMCAxMC41NjFaXCI+PC9zdmc6cGF0aD48c3ZnOnJlY3Qgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgeD1cIjVcIiB5PVwiNVwiIHJ4PVwiNFwiPjwvc3ZnOnJlY3Q+PC9zdmc6Zz5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFBsYXlJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4UGx1c0ljb25dLHN2Z1tjb2RleC1wbHVzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xMiA3djVtMCA1di01bTUgMGgtNW0wIDBIN1wiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhQbHVzSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFF1ZXN0aW9uSWNvbl0sc3ZnW2NvZGV4LXF1ZXN0aW9uLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnJlY3Qgd2lkdGg9XCIxNFwiIGhlaWdodD1cIjE0XCIgeD1cIjVcIiB5PVwiNVwiIHJ4PVwiNFwiPjwvc3ZnOnJlY3Q+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTEyIDE1LjUydi0uMDFtLTEuOTk4LTUuNTMzQzEwLjE1NyA5LjAxOSAxMSA4LjUgMTIgOC41czEuNjg2LjY3MiAxLjg3IDEuMjA3Yy4xODMuNTM1LjE0NCAxLjM0NC0uMzYzIDEuODA5cy0uNzczLjMxNi0xLjIyOS44YTEuOCAxLjggMCAwIDAtLjI3OC40MzJcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhRdWVzdGlvbkljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhRdW90ZUljb25dLHN2Z1tjb2RleC1xdW90ZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xMCAxMC44MThIOWMtLjE5OCAwLS4zOTEtLjA1My0uNTU2LS4xNTNhLjkzLjkzIDAgMCAxLS4zNjgtLjQwOGEuODMuODMgMCAwIDEtLjA1Ny0uNTI1YS45LjkgMCAwIDEgLjI3NC0uNDY2Yy4xNC0uMTI3LjMxOC0uMjEzLjUxMi0uMjQ5Yy4xOTQtLjAzNS4zOTUtLjAxNy41NzguMDUyYTEgMSAwIDAgMSAuNDQ4LjMzNWMuMTEuMTUuMTY5LjMyNS4xNjkuNTA1djIuMjczYzAgLjQ4Mi0uMjEuOTQ0LS41ODYgMS4yODVBMi4xIDIuMSAwIDAgMSA4IDE0bTgtMy4xODJoLTFjLS4xOTggMC0uMzkxLS4wNTMtLjU1Ni0uMTUzYS45My45MyAwIDAgMS0uMzY4LS40MDhhLjgzLjgzIDAgMCAxLS4wNTctLjUyNWEuOS45IDAgMCAxIC4yNzQtLjQ2NmMuMTQtLjEyNy4zMTgtLjIxMy41MTItLjI0OWMuMTk0LS4wMzUuMzk1LS4wMTcuNTc4LjA1MmExIDEgMCAwIDEgLjQ0OS4zMzVhLjg1Ljg1IDAgMCAxIC4xNjguNTA1djIuMjczYzAgLjQ4Mi0uMjEuOTQ0LS41ODYgMS4yODVBMi4xIDIuMSAwIDAgMSAxNCAxNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhRdW90ZUljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhSZWRvSWNvbl0sc3ZnW2NvZGV4LXJlZG8taWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTQuNjY3IDEzLjY2N0wxOCAxMC4zMzNMMTQuNjY3IDdNMTggMTAuMzMzSDguODMzYTMuMzMzIDMuMzMzIDAgMCAwIDAgNi42NjdoLjgzNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhSZWRvSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFJlbW92ZUJhY2tncm91bmRJY29uXSxzdmdbY29kZXgtcmVtb3ZlLWJhY2tncm91bmQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTExIDE5Yy0xLjg2NCAwLTIuNzk2IDAtMy41My0uMzA1YTQgNCAwIDAgMS0yLjE2Ni0yLjE2NEM1IDE1Ljc5NiA1IDE0Ljg2NCA1IDEzdi0xYzAtMi44MDkgMC00LjIxMy42NzQtNS4yMjJhNCA0IDAgMCAxIDEuMTA0LTEuMTA0QzcuNzg3IDUgOS4xOSA1IDEyIDVoMS41YzEuMzk2IDAgMi4wOTMgMCAyLjY2MS4xNzJhNCA0IDAgMCAxIDIuNjY3IDIuNjY3QzE5IDguNDA3IDE5IDkuMTA0IDE5IDEwLjV2MFwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIGQ9XCJNMTkuMTE5IDE0Ljg3OUwxNi45OTcgMTdtLTIuMTIxIDIuMTIxTDE2Ljk5NyAxN20yLjEyMiAyLjEyMUwxNi45OTcgMTdtMCAwbC0yLjEyMS0yLjEyMVwiPjwvc3ZnOnBhdGg+PHN2ZzpwYXRoIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIm02LjUgMTcuNWwxMS0xMW0xLjQ5MiA0aC4wMW0tOC4wMSA4LjVoLjAxTTUgMTNsOC04XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4UmVtb3ZlQmFja2dyb3VuZEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhSZXBsYWNlSWNvbl0sc3ZnW2NvZGV4LXJlcGxhY2UtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTExLjUgMTcuNUw1IDExbTAgMHY0LjVNNSAxMWg0LjVtMy00LjVMMTkgMTNtMCAwVjguNW0wIDQuNWgtNC41XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFJlcGxhY2VJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4U2F2ZUljb25dLHN2Z1tjb2RleC1zYXZlLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIm0xNS4wNzggNS42MjZsLjUzNy0uODQzbC0uNTM3Ljg0M2MuMzQ4LjIyMi42NjEuNTI4IDEuNDkzIDEuMzZsLjcwNy0uNzA4bC0uNzA3LjcwN2wuOTU0Ljk1NGMuMzEuMzEuNDI1LjQyNi41MjQuNTQzYTQgNCAwIDAgMSAuOTM4IDIuMjY0Yy4wMTIuMTUzLjAxMy4zMTYuMDEzLjc1NHYuNWMwIDEuNDE3IDAgMi40MTktLjA2NSAzLjIwM2MtLjA2My43NzItLjE4MiAxLjI0My0uMzcxIDEuNjEzYTQgNCAwIDAgMS0xLjc0OCAxLjc0OGMtLjM3LjE4OS0uODQxLjMwOC0xLjYxMy4zNzFDMTQuNDE5IDE5IDEzLjQxNyAxOSAxMiAxOXMtMi40MTkgMC0zLjIwMy0uMDY1Yy0uNzcxLS4wNjMtMS4yNDMtLjE4Mi0xLjYxMy0uMzcxYTQgNCAwIDAgMS0xLjc0OC0xLjc0OGMtLjE4OS0uMzctLjMwOC0uODQxLS4zNzEtMS42MTNDNSAxNC40MTkgNSAxMy40MTcgNSAxMnYtLjIyMmMwLTEuMzEgMC0yLjIzOC4wNTYtMi45NjVjLjA1NC0uNzE2LjE1Ny0xLjE1Ni4zMTktMS41MDRhNCA0IDAgMCAxIDEuOTM0LTEuOTM0Yy4zNDgtLjE2Mi43ODgtLjI2NSAxLjUwNC0uMzJDOS41NCA1LjAwMiAxMC40NjcgNSAxMS43NzggNWMxLjE3NiAwIDEuNjE0LjAwNiAyLjAxNy4wOTVjLjQ1NS4xLjg5LjI4IDEuMjgzLjUzMVpcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTEyIDE1YTIgMiAwIDEgMCAwLTRhMiAyIDAgMCAwIDAgNG0yLTkuNVY3YTEgMSAwIDAgMS0xIDFoLTJhMSAxIDAgMCAxLTEtMVY1LjJcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhTYXZlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFNlYXJjaEljb25dLHN2Z1tjb2RleC1zZWFyY2gtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6Y2lyY2xlIGN4PVwiMTAuNVwiIGN5PVwiMTAuNVwiIHI9XCI1LjVcIj48L3N2ZzpjaXJjbGU+PHN2ZzpwYXRoIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBkPVwiTTE1LjQxNCAxNUwxOSAxOC41ODZcIj48L3N2ZzpwYXRoPjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhTZWFyY2hJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4U3Rhckljb25dLHN2Z1tjb2RleC1zdGFyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTExLjgyIDYuMDQ0YS4yLjIgMCAwIDEgLjM2IDBsMS43OTggMy43NDFhLjIuMiAwIDAgMCAuMTUzLjExMmw0LjExNC41NTNhLjIuMiAwIDAgMSAuMTExLjM0M2wtMy4wMDMgMi44NjVhLjIuMiAwIDAgMC0uMDU4LjE4bC43NDUgNC4wODRhLjIuMiAwIDAgMS0uMjkyLjIxMkwxMiAxNi4xMTJsLTMuNzQ4IDIuMDIyYS4yLjIgMCAwIDEtLjI5Mi0uMjEybC43NDUtNC4wODNhLjIuMiAwIDAgMC0uMDU4LS4xOGwtMy4wMDMtMi44NjZhLjIuMiAwIDAgMSAuMTExLS4zNDNsNC4xMTQtLjU1M2EuMi4yIDAgMCAwIC4xNTMtLjExMnpcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4U3Rhckljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhTdHJldGNoSWNvbl0sc3ZnW2NvZGV4LXN0cmV0Y2gtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJtMTcgOWwzIDNsLTMgM20tMy0zaDZNNyA5bC0zIDNsMyAzbS0zLTNoNlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhTdHJldGNoSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFN0cmlrZXRocm91Z2hJY29uXSxzdmdbY29kZXgtc3RyaWtldGhyb3VnaC1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk0xNC41IDguNWMtMS0xLjUtMy41NjUtMS44MzUtNC43NDctLjcwM0EyLjQgMi40IDAgMCAwIDkgOS41NGMwIC42NTQuMjcgMS4yOC43NTMgMS43NDJjMS4yMyAxLjE3OSAzLjI2NC4yNjUgNC40OTQgMS40NDNjLjQ4Mi40NjMuNzUzIDEuMDkuNzUzIDEuNzQyYzAgLjY1NC0uMjcgMS4yOC0uNzUzIDEuNzQzQzEyLjg2NiAxNy41MzIgMTAgMTcuNSA5IDE2bS0zLTRoMTJcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4U3RyaWtldGhyb3VnaEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhUYWJsZUljb25dLHN2Z1tjb2RleC10YWJsZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNMTAgNXYxMy41TTUgMTBoMTRcIj48L3N2ZzpwYXRoPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VGFibGVJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VGFibGVXaXRoSGVhZGluZ3NJY29uXSxzdmdbY29kZXgtdGFibGUtd2l0aC1oZWFkaW5ncy1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOmcgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCI+PHN2ZzpwYXRoIGQ9XCJNNSAxMGgxNFwiPjwvc3ZnOnBhdGg+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhUYWJsZVdpdGhIZWFkaW5nc0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhUYWJsZVdpdGhvdXRIZWFkaW5nc0ljb25dLHN2Z1tjb2RleC10YWJsZS13aXRob3V0LWhlYWRpbmdzLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xMCA1djEzLjVNMTQgNXYxMy41TTUgMTBoMTRNNSAxNGgxNFwiPjwvc3ZnOnBhdGg+PHN2ZzpyZWN0IHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiIHg9XCI1XCIgeT1cIjVcIiByeD1cIjRcIj48L3N2ZzpyZWN0Pjwvc3ZnOmc+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhUYWJsZVdpdGhvdXRIZWFkaW5nc0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhUZXh0SWNvbl0sc3ZnW2NvZGV4LXRleHQtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpwYXRoIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTggOVY3LjJjMC0uMTEuMDktLjIuMi0uMkgxMm00IDJWNy4yYS4yLjIgMCAwIDAtLjItLjJIMTJtMCAwdjEwbTAgMGgtMm0yIDBoMlwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhUZXh0SWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFRyYW5zbGF0ZUljb25dLHN2Z1tjb2RleC10cmFuc2xhdGUtaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk03IDE3YzEtMi41IDUtNSA2LThcIj48L3N2ZzpwYXRoPjxzdmc6cGF0aCBkPVwiTTguNSAxMXMxLjUgMyA0IDRNNiA3LjdoMTBtLTUgMHYtMk0xNC41IDE4bC43MTQtMm0wIDBsMS43MDItNC43NjVhLjM1NS4zNTUgMCAwIDEgLjY2OCAwTDE5LjI4NiAxNm0tNC4wNzIgMGg0LjA3Mk0yMCAxOGwtLjcxNC0yXCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VHJhbnNsYXRlSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFRyYXNoSWNvbl0sc3ZnW2NvZGV4LXRyYXNoLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6cGF0aCBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE4LjEzMyA3LjcyM3EuNDM1LjA2Ljg2Ny4xMjhtLS44NjctLjEyOGwtLjkwNiA5LjY4Yy0uMDM3LjQzNC0uMjU0Ljg0LS42MDcgMS4xMzZhMi4wMiAyLjAyIDAgMCAxLTEuMjk3LjQ2MUg4LjY3N2MtLjQ4IDAtLjk0NC0uMTY0LTEuMjk3LS40NmExLjY3IDEuNjcgMCAwIDEtLjYwNy0xLjEzOGwtLjkwNi05LjY3OW0xMi4yNjYgMGE0NSA0NSAwIDAgMC0yLjk1MS0uMzA1bS05LjMxNS4zMDVxLS40MzUuMDYtLjg2Ny4xMjdtLjg2Ny0uMTI3YTQ1IDQ1IDAgMCAxIDIuOTUxLS4zMDVtNi4zNjQgMGE0NS41IDQ1LjUgMCAwIDAtNi4zNjQgMG02LjM2NCAwYzAtMi4xMTQtMS40NTUtMy4wNy0zLjE4Mi0zLjA3UzguODE4IDUuNDQgOC44MTggNy40MThNMTAuNSAxNS41TDEwIDExbTQgMGwtLjUgNC41XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFRyYXNoSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFR3aXR0ZXJJY29uXSxzdmdbY29kZXgtdHdpdHRlci1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiBkPVwiTTE2Ljc5IDcuODc3QzE3LjUgOCAxOC41IDggMTguNSA4cy0xIDEuNS0xIDJjMSA4LjUtNiAxMC41LTEyIDYuNWMxLjUuMTcxIDIuNTQ2LjAxNiAzLjc1Mi0uODk4QzcuOTk1IDE1LjU4IDUuMzY1IDEzLjYwMyA1IDEyLjVjMS41LjUgMy0uNSAzLS41Yy0xLjQ3OS0uOTU1LTMuMDctMi43NTktMi4wMjUtNC40OTJhOC4yNSA4LjI1IDAgMCAwIDUuOTIgMi45MDJjLS42NzUtMi44MDIgMy4wMjctNC40NTcgNC44OTQtMi41MzNaXCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFR3aXR0ZXJJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VW5kZXJsaW5lSWNvbl0sc3ZnW2NvZGV4LXVuZGVybGluZS1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05IDcuNXY0YTMgMyAwIDAgMCA2IDB2LTRNNy43MTQgMThoOC41NzJcIj48L3N2ZzpwYXRoPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VW5kZXJsaW5lSWNvbiB7XG4gIHJlYWRvbmx5IHZpZXdCb3ggPSBpbnB1dChcIjAgMCAyNCAyNFwiKVxuICByZWFkb25seSB3aWR0aCA9IGlucHV0KFwiMWVtXCIpXG4gIHJlYWRvbmx5IGhlaWdodCA9IGlucHV0KFwiMWVtXCIpXG59XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3N2Z1tjb2RleFVuZG9JY29uXSxzdmdbY29kZXgtdW5kby1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2Utd2lkdGg9XCIyXCIgZD1cIk05LjMzMyAxMy42NjdMNiAxMC4zMzNMOS4zMzMgN002IDEwLjMzM2g5LjE2N2EzLjMzMyAzLjMzMyAwIDAgMSAwIDYuNjY3aC0uODM0XCI+PC9zdmc6cGF0aD5gLFxufSlcbmV4cG9ydCBjbGFzcyBDb2RleFVuZG9JY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VW5saW5rSWNvbl0sc3ZnW2NvZGV4LXVubGluay1pY29uXScsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnaW1nJyxcbiAgICAnW2F0dHIudmlld0JveF0nOiAndmlld0JveCgpJyxcbiAgICAnW2F0dHIud2lkdGhdJzogJ3dpZHRoKCknLFxuICAgICdbYXR0ci5oZWlnaHRdJzogJ2hlaWdodCgpJyxcbiAgfSxcbiAgdGVtcGxhdGU6IGA8c3ZnOnBhdGggZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGQ9XCJNMTUuNzggMTEuNXMuMjczLS4zMDQuNzctLjgyOGMuODk0LS45NDMuOTItMi40MjQuMDI4LTMuMzd2MGEyLjQwNCAyLjQwNCAwIDAgMC0zLjQ1LS4wNTFMMTEuODggOC41bS0zLjYzNSAzLjg4OHMtLjI3My4zMDQtLjc3LjgyOGMtLjg5NC45NDQtLjkyIDIuNDI1LS4wMjggMy4zN3YwYy45My45ODcgMi40OSAxLjAxIDMuNDQ5LjA1MmwxLjI1LTEuMjVtNS42MzQtLjI4NWwtMS4xODMtLjE2YTEgMSAwIDAgMC0xLjEzNC45NTRsLS4wNDMgMS4xODVtLTkuMDMtOC4wNWwxLjE5NC4wMzVhMSAxIDAgMCAwIDEuMDI3LTEuMDdsLS4wODQtMS4xODNtMy41ODcgNS4zODZsLS40MTQtLjQxNFwiPjwvc3ZnOnBhdGg+YCxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZXhVbmxpbmtJY29uIHtcbiAgcmVhZG9ubHkgdmlld0JveCA9IGlucHV0KFwiMCAwIDI0IDI0XCIpXG4gIHJlYWRvbmx5IHdpZHRoID0gaW5wdXQoXCIxZW1cIilcbiAgcmVhZG9ubHkgaGVpZ2h0ID0gaW5wdXQoXCIxZW1cIilcbn1cblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnc3ZnW2NvZGV4VXNlckljb25dLHN2Z1tjb2RleC11c2VyLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xMiAxMGMuNzE0IDAgMS4yMzktLjQzNCAxLjU0LS44ODVjLjMwNC0uNDU3LjQ2LTEuMDMuNDYtMS42MTVjMC0uNTg0LS4xNTYtMS4xNTgtLjQ2LTEuNjE1QzEzLjIzOCA1LjQzNSAxMi43MTQgNSAxMiA1cy0xLjIzOS40MzQtMS41NC44ODVjLS4zMDQuNDU3LS40NiAxLjAzLS40NiAxLjYxNWMwIC41ODQuMTU2IDEuMTU4LjQ2IDEuNjE1Yy4zMDEuNDUuODI1Ljg4NSAxLjU0Ljg4NVpcIj48L3N2ZzpwYXRoPjxzdmc6ZWxsaXBzZSBjeD1cIjEyXCIgY3k9XCIxNlwiIHJ4PVwiM1wiIHJ5PVwiNVwiIHRyYW5zZm9ybT1cInJvdGF0ZSgtOTAgMTIgMTYpXCI+PC9zdmc6ZWxsaXBzZT48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VXNlckljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhVc2Vyc0dyb3VwSWNvbl0sc3ZnW2NvZGV4LXVzZXJzLWdyb3VwLWljb25dJyxcbiAgaG9zdDoge1xuICAgIHJvbGU6ICdpbWcnLFxuICAgICdbYXR0ci52aWV3Qm94XSc6ICd2aWV3Qm94KCknLFxuICAgICdbYXR0ci53aWR0aF0nOiAnd2lkdGgoKScsXG4gICAgJ1thdHRyLmhlaWdodF0nOiAnaGVpZ2h0KCknLFxuICB9LFxuICB0ZW1wbGF0ZTogYDxzdmc6ZyBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIj48c3ZnOnBhdGggZD1cIk0xMCAxMGMuNzE0IDAgMS4yMzktLjQzNCAxLjU0LS44ODVjLjMwNC0uNDU3LjQ2LTEuMDMuNDYtMS42MTVjMC0uNTg0LS4xNTYtMS4xNTgtLjQ2LTEuNjE1QzExLjIzOCA1LjQzNSAxMC43MTQgNSAxMCA1cy0xLjIzOS40MzQtMS41NC44ODVDOC4xNTcgNi4zNDIgOCA2LjkxNSA4IDcuNWMwIC41ODQuMTU2IDEuMTU4LjQ2IDEuNjE1Yy4zMDEuNDUuODI1Ljg4NSAxLjU0Ljg4NVpcIj48L3N2ZzpwYXRoPjxzdmc6ZWxsaXBzZSBjeD1cIjEwXCIgY3k9XCIxNlwiIHJ4PVwiM1wiIHJ5PVwiNVwiIHRyYW5zZm9ybT1cInJvdGF0ZSgtOTAgMTAgMTYpXCI+PC9zdmc6ZWxsaXBzZT48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNMTUuNTU2IDEwLjIyMmExLjc3OCAxLjc3OCAwIDEgMCAwLTMuNTU1TTE3LjUgMTNjMy41IDEuNSAzIDUgLjUgNS41XCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4VXNlcnNHcm91cEljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdzdmdbY29kZXhXYXJuaW5nSWNvbl0sc3ZnW2NvZGV4LXdhcm5pbmctaWNvbl0nLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2ltZycsXG4gICAgJ1thdHRyLnZpZXdCb3hdJzogJ3ZpZXdCb3goKScsXG4gICAgJ1thdHRyLndpZHRoXSc6ICd3aWR0aCgpJyxcbiAgICAnW2F0dHIuaGVpZ2h0XSc6ICdoZWlnaHQoKScsXG4gIH0sXG4gIHRlbXBsYXRlOiBgPHN2ZzpnIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiPjxzdmc6cmVjdCB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIiB4PVwiNVwiIHk9XCI1XCIgcng9XCI0XCI+PC9zdmc6cmVjdD48c3ZnOnBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIGQ9XCJNMTIgOXYzbTAgMy4wMnYtLjAxXCI+PC9zdmc6cGF0aD48L3N2ZzpnPmAsXG59KVxuZXhwb3J0IGNsYXNzIENvZGV4V2FybmluZ0ljb24ge1xuICByZWFkb25seSB2aWV3Qm94ID0gaW5wdXQoXCIwIDAgMjQgMjRcIilcbiAgcmVhZG9ubHkgd2lkdGggPSBpbnB1dChcIjFlbVwiKVxuICByZWFkb25seSBoZWlnaHQgPSBpbnB1dChcIjFlbVwiKVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ngxi/codex",
3
- "version": "0.11.21",
3
+ "version": "0.11.23",
4
4
  "sideEffects": false,
5
5
  "author": "Adrián UB",
6
6
  "license": "MIT",