@tekus/kiosks-design-system 2.6.0 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -59,6 +59,10 @@ export class TkKioskKeyboardComponent {
59
59
  this.keyboard.setOptions({
60
60
  layoutName: 'numbers',
61
61
  });
62
+ if (button === '{text}')
63
+ this.keyboard.setOptions({
64
+ layoutName: 'text',
65
+ });
62
66
  if (button === '{abc}')
63
67
  this.keyboard.setOptions({
64
68
  layoutName: 'default',
@@ -87,6 +91,13 @@ export class TkKioskKeyboardComponent {
87
91
  this.keyboard.setInput(this.keyboard.getInput() + '@hotmail.com');
88
92
  this.value.emit(this.keyboard.getInput() + '@hotmail.com');
89
93
  }
94
+ if (button === '{backspace}') {
95
+ this.keyboard.setInput(this.keyboard.getInput().slice(0, -1));
96
+ this.value.emit(this.keyboard.getInput().slice(0, -1));
97
+ }
98
+ if (this.valueFix) {
99
+ this.keyboard.setInput(this.valueFix);
100
+ }
90
101
  };
91
102
  this.handleShift = () => {
92
103
  let currentLayout = this.keyboard.options.layoutName;
@@ -126,6 +137,7 @@ export class TkKioskKeyboardComponent {
126
137
  '{metaleft}': 'cmd ⌘',
127
138
  '{metaright}': 'cmd ⌘',
128
139
  '{abc}': 'abc',
140
+ '{text}': 'abc',
129
141
  '{enter}': this.enterText,
130
142
  '{space}': 'espacio',
131
143
  '{_}': '_',
@@ -147,11 +159,15 @@ export class TkKioskKeyboardComponent {
147
159
  layoutName: 'numbers',
148
160
  });
149
161
  }
162
+ ngOnChanges() {
163
+ this.keyboard?.setInput(this.valueFix);
164
+ this.value.emit(this.valueFix);
165
+ }
150
166
  ngOnDestroy() {
151
167
  this.rendererListenerFn();
152
168
  }
153
169
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TkKioskKeyboardComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
154
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: TkKioskKeyboardComponent, isStandalone: true, selector: "tk-kiosk-keyboard", inputs: { top: "top", openTypeKeyboard: "openTypeKeyboard", valueFix: "valueFix", typeKeyboard: "typeKeyboard", themeKeyboard: "themeKeyboard", classKeyboard: "classKeyboard", enterText: "enterText" }, outputs: { value: "value", close: "close", searchValue: "searchValue" }, viewQueries: [{ propertyName: "keyboardElement", first: true, predicate: ["keyboardElement"], descendants: true }], ngImport: i0, template: "<div [className]=\"classKeyboard\" [ngStyle]=\"{top:top}\" #keyboardElement ></div>\n", styles: [".simple-keyboard{width:1080px;padding:10px;position:absolute;z-index:20000;left:0;box-sizing:border-box}.simple-keyboard-numeric{width:1080px;padding:10px}.hg-button.hg-functionBtn.hg-button-none{opacity:0}:host ::ng-deep .myTheme2 .hg-rows{width:700px;margin:0 auto;padding:15px 15px 0}:host ::ng-deep .myTheme2 .hg-row{display:flex;align-items:center;justify-content:center;width:100%;gap:15px;padding-bottom:15px}:host ::ng-deep .myTheme2 .hg-button{display:flex;align-items:center;justify-content:center;box-shadow:0 3px #00000038;border-radius:10px}:host ::ng-deep .myTheme2 .hg-standardBtn{height:80px;width:70px;background-color:var(--tk-color-primary-900)}:host ::ng-deep .myTheme2 .hg-standardBtn span{font-weight:400;font-size:40px}:host ::ng-deep .myTheme2 .hg-button-shift,:host ::ng-deep .myTheme2 .hg-button-abc,:host ::ng-deep .myTheme2 .hg-button-backspace,:host ::ng-deep .myTheme2 .hg-button-numbers,:host ::ng-deep .myTheme2 .hg-button-space,:host ::ng-deep .myTheme2 .hg-button-enter,:host ::ng-deep .myTheme2 .hg-button-ent,:host ::ng-deep .myTheme2 .hg-button-escape{background:linear-gradient(0deg,#3f4042,#3f4042),#2a3441}:host ::ng-deep .myTheme2 .hg-button-shift span,:host ::ng-deep .myTheme2 .hg-button-ent span,:host ::ng-deep .myTheme2 .hg-button-backspace span{font-weight:400;font-size:65px}:host ::ng-deep .myTheme2 .hg-button-abc span,:host ::ng-deep .myTheme2 .hg-button-numbers span,:host ::ng-deep .myTheme2 .hg-button-enter span,:host ::ng-deep .myTheme2 .hg-button-space span,:host ::ng-deep .myTheme2 .hg-button-escape span{color:var(--tk-color-neutral-500);font-weight:400;font-size:38px}:host ::ng-deep .myTheme2 .hg-button-abc,:host ::ng-deep .myTheme2 .hg-button-shift,:host ::ng-deep .myTheme2 .hg-button-backspace,:host ::ng-deep .myTheme2 .hg-button-numbers,:host ::ng-deep .myTheme2 .hg-button-ent,:host ::ng-deep .myTheme2 .hg-button-escape{height:80px;width:117px}:host ::ng-deep .myTheme2 .hg-button-space{height:80px;width:480px}:host ::ng-deep .myTheme2 .hg-button-enter{height:80px;width:250px}:host ::ng-deep .myTheme2 .hg-button:active{background:#00f;color:var(--tk-color-white-900)}:host ::ng-deep #root .myTheme2+.simple-keyboard-preview{background:#00f}:host ::ng-deep .tekus-theme{box-sizing:border-box;position:absolute;left:0;right:0;top:71px;width:100%;padding:87px 13px 27px;z-index:100;border-radius:30px;background-color:var(--tk-color-white-900);box-shadow:var(--tk-color-shadow-medium);margin:0 auto}:host ::ng-deep .tekus-theme .hg-button{width:100%;max-width:190px;height:105px;font-size:55px;color:var(--tk-color-text-700);background-color:var(--tk-color-white-800);box-shadow:none;border-radius:10px}:host ::ng-deep .tekus-theme .hg-button:active{background:var(--tk-color-secondary-900);color:var(--tk-color-white-900)}:host ::ng-deep .tekus-theme .hg-button.hg-standardBtn[data-skbtn=\"@\"]{max-width:110px}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn{width:100%;max-width:190px;height:107px;background:var(--tk-color-white-900);box-shadow:var(--tk-color-shadow-small)}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-none{opacity:0;pointer-events:none}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-enter{background:var(--tk-color-secondary-900);color:var(--tk-color-white-900);max-width:780px;border-radius:8px}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-enter span{color:var(--tk-color-white-900)}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-space{max-width:100%}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-escape{background-color:#fff;position:absolute;top:12px;right:15px;width:54px;height:54px;font-size:24px;border-radius:50%}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-escape span{width:100%;height:100%}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-backspace{width:100%;max-width:190px;color:transparent;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA3CAYAAAC2EuL1AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALZSURBVHgB7ZrbbeJAFIYPfuAiXiiBEkgFu3RAKgg8cpOgArIVsA9cHsNWsOkg6SBsBy6BRxAC9j+RjbiY4DkzE9vSfBIytmQzn43P/DM2kcPhcDgcInJkkPF4XCkWixVKiHa77UdtNyIZyI33+30jl8slJgl8/P4Csr9ON3pkgEKh8HE4HJoJCzJVtON5NpsNTjdqS06n0xc+OKWLEf+7whUtSZyxMa5ek9JHJZ/PV8MVseR8Ph9hMaCUgvqgdyVZkP/7lBGUJbMmyChJ4h58ypogE1sSgg0sFpRBYkmiHNdwBV9IxhL7cufsk5x3fP6QkLuSEKyiHL9JO3rs99jtdp+xrJNAlE9Qp9Op49MMTpYyX0qyINLMm06SWa/XK15yrlQVZSk+QSfrKxJwUzIUJM00w8cI04eK6KUg3zLYd0QCIiVNCQbUVEWjBHVumStJbgwa9ZfM5tHYoqYFmStJNIaraI3Mc1fUhiBzJhmMKBpkj5uitgSZoyTHtW8aUVyJlkqlB1uCzKdkAnn0TLTVah27BtOCjMej6ITyKIs2LzdyTTA9w+DhgK+kF7lEBEnm9+V2Tkim2+NJkoguUUVGEhji4p0eWBqbVLhVRaXJKA7H6hrMWVoVvdNN1GyJnvWTaMAScyMtskDMftCK6FXi6ff7r2iQUVHFjt64aGRAR4MW0rHbJcIkY1T05lCLG2ZAdKWRZK5ErQyaDYhWeNjGX4RJ5kzU87wfJCDWA5/JZLLADzyRAK7WEPNJb2Tj47NSOcZut6ujvrzz91gTWb1er4mqK5pICrsH0qOqc4zYU5Lb7XaAxZIySGzJ4XC42mw2XOEyJ6o0g86iNgK0bZSfhSQR6HURPdXKmqj4+WTQOT9+x8hFArq8Y7u0X4zA5BdP+n5QulhiQP4Qrmi/M8AjF3S8aSpGflAcjxh7jweTYVUEhp/S6GUCnOx/5XJ5cTox5nA4HA6HBv8BdIC/Yb/20m4AAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-abc{width:100%;max-width:190px;font-size:55px;color:var(--tk-color-neutral-500)}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-@gmail.com\"],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-@hotmail.com\"],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-.com\"],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-.co\"]{background-color:var(--tk-color-white-900);border-radius:50px;max-width:fit-content;font-size:32px;height:61px;min-width:142px;justify-content:flex-start;padding:10px 14px;margin-top:-47px}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=hg-button-_],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=hg-button-dot]{background-color:var(--tk-color-white-900);max-width:110px}:host ::ng-deep .tekus-theme .hg-rows{width:unset}:host ::ng-deep .tekus-theme .hg-row:not(last-child){margin-bottom:15px;justify-content:center}:host ::ng-deep .tekus-theme .hg-row .hg-button:not(:last-child){margin-right:15px}:host ::ng-deep .tekus-theme.hg-layout-numbers .hg-row .hg-functionBtn.hg-button-enter{max-width:628px}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
170
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: TkKioskKeyboardComponent, isStandalone: true, selector: "tk-kiosk-keyboard", inputs: { top: "top", openTypeKeyboard: "openTypeKeyboard", valueFix: "valueFix", typeKeyboard: "typeKeyboard", themeKeyboard: "themeKeyboard", classKeyboard: "classKeyboard", enterText: "enterText" }, outputs: { value: "value", close: "close", searchValue: "searchValue" }, viewQueries: [{ propertyName: "keyboardElement", first: true, predicate: ["keyboardElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div [className]=\"classKeyboard\" [ngStyle]=\"{top:top}\" #keyboardElement ></div>\n", styles: [".simple-keyboard{width:1080px;padding:10px;position:absolute;z-index:20000;left:0;box-sizing:border-box}.simple-keyboard-numeric{width:1080px;padding:10px}.hg-button.hg-functionBtn.hg-button-none{opacity:0}:host ::ng-deep .myTheme2 .hg-rows{width:700px;margin:0 auto;padding:15px 15px 0}:host ::ng-deep .myTheme2 .hg-row{display:flex;align-items:center;justify-content:center;width:100%;gap:15px;padding-bottom:15px}:host ::ng-deep .myTheme2 .hg-button{display:flex;align-items:center;justify-content:center;box-shadow:0 3px #00000038;border-radius:10px}:host ::ng-deep .myTheme2 .hg-standardBtn{height:80px;width:70px;background-color:var(--tk-color-primary-900)}:host ::ng-deep .myTheme2 .hg-standardBtn span{font-weight:400;font-size:40px}:host ::ng-deep .myTheme2 .hg-button-shift,:host ::ng-deep .myTheme2 .hg-button-abc,:host ::ng-deep .myTheme2 .hg-button-backspace,:host ::ng-deep .myTheme2 .hg-button-numbers,:host ::ng-deep .myTheme2 .hg-button-space,:host ::ng-deep .myTheme2 .hg-button-enter,:host ::ng-deep .myTheme2 .hg-button-ent,:host ::ng-deep .myTheme2 .hg-button-escape{background:linear-gradient(0deg,#3f4042,#3f4042),#2a3441}:host ::ng-deep .myTheme2 .hg-button-shift span,:host ::ng-deep .myTheme2 .hg-button-ent span,:host ::ng-deep .myTheme2 .hg-button-backspace span{font-weight:400;font-size:65px}:host ::ng-deep .myTheme2 .hg-button-abc span,:host ::ng-deep .myTheme2 .hg-button-numbers span,:host ::ng-deep .myTheme2 .hg-button-enter span,:host ::ng-deep .myTheme2 .hg-button-space span,:host ::ng-deep .myTheme2 .hg-button-escape span{color:var(--tk-color-neutral-500);font-weight:400;font-size:38px}:host ::ng-deep .myTheme2 .hg-button-abc,:host ::ng-deep .myTheme2 .hg-button-shift,:host ::ng-deep .myTheme2 .hg-button-backspace,:host ::ng-deep .myTheme2 .hg-button-numbers,:host ::ng-deep .myTheme2 .hg-button-ent,:host ::ng-deep .myTheme2 .hg-button-escape{height:80px;width:117px}:host ::ng-deep .myTheme2 .hg-button-space{height:80px;width:480px}:host ::ng-deep .myTheme2 .hg-button-enter{height:80px;width:250px}:host ::ng-deep .myTheme2 .hg-button:active{background:#00f;color:var(--tk-color-white-900)}:host ::ng-deep #root .myTheme2+.simple-keyboard-preview{background:#00f}:host ::ng-deep .tekus-theme{box-sizing:border-box;position:absolute;left:0;right:0;top:71px;width:100%;padding:87px 13px 27px;z-index:100;border-radius:30px;background-color:var(--tk-color-white-900);box-shadow:var(--tk-color-shadow-medium);margin:0 auto}:host ::ng-deep .tekus-theme .hg-button{width:100%;max-width:190px;height:105px;font-size:55px;color:var(--tk-color-text-700);background-color:var(--tk-color-white-800);box-shadow:none;border-radius:10px}:host ::ng-deep .tekus-theme .hg-button:active{background:var(--tk-color-secondary-900);color:var(--tk-color-white-900)}:host ::ng-deep .tekus-theme .hg-button.hg-standardBtn[data-skbtn=\"@\"]{max-width:110px}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn{width:100%;max-width:190px;height:107px;background:var(--tk-color-white-900);box-shadow:var(--tk-color-shadow-small)}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-none{opacity:0;pointer-events:none}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-enter{background:var(--tk-color-secondary-900);color:var(--tk-color-white-900);max-width:780px;border-radius:8px}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-enter span{color:var(--tk-color-white-900)}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-space{max-width:100%}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-escape{background-color:#fff;position:absolute;top:12px;right:15px;width:54px;height:54px;font-size:24px;border-radius:50%}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-escape span{width:100%;height:100%}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-backspace{width:100%;max-width:190px;color:transparent;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA3CAYAAAC2EuL1AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALZSURBVHgB7ZrbbeJAFIYPfuAiXiiBEkgFu3RAKgg8cpOgArIVsA9cHsNWsOkg6SBsBy6BRxAC9j+RjbiY4DkzE9vSfBIytmQzn43P/DM2kcPhcDgcInJkkPF4XCkWixVKiHa77UdtNyIZyI33+30jl8slJgl8/P4Csr9ON3pkgEKh8HE4HJoJCzJVtON5NpsNTjdqS06n0xc+OKWLEf+7whUtSZyxMa5ek9JHJZ/PV8MVseR8Ph9hMaCUgvqgdyVZkP/7lBGUJbMmyChJ4h58ypogE1sSgg0sFpRBYkmiHNdwBV9IxhL7cufsk5x3fP6QkLuSEKyiHL9JO3rs99jtdp+xrJNAlE9Qp9Op49MMTpYyX0qyINLMm06SWa/XK15yrlQVZSk+QSfrKxJwUzIUJM00w8cI04eK6KUg3zLYd0QCIiVNCQbUVEWjBHVumStJbgwa9ZfM5tHYoqYFmStJNIaraI3Mc1fUhiBzJhmMKBpkj5uitgSZoyTHtW8aUVyJlkqlB1uCzKdkAnn0TLTVah27BtOCjMej6ITyKIs2LzdyTTA9w+DhgK+kF7lEBEnm9+V2Tkim2+NJkoguUUVGEhji4p0eWBqbVLhVRaXJKA7H6hrMWVoVvdNN1GyJnvWTaMAScyMtskDMftCK6FXi6ff7r2iQUVHFjt64aGRAR4MW0rHbJcIkY1T05lCLG2ZAdKWRZK5ErQyaDYhWeNjGX4RJ5kzU87wfJCDWA5/JZLLADzyRAK7WEPNJb2Tj47NSOcZut6ujvrzz91gTWb1er4mqK5pICrsH0qOqc4zYU5Lb7XaAxZIySGzJ4XC42mw2XOEyJ6o0g86iNgK0bZSfhSQR6HURPdXKmqj4+WTQOT9+x8hFArq8Y7u0X4zA5BdP+n5QulhiQP4Qrmi/M8AjF3S8aSpGflAcjxh7jweTYVUEhp/S6GUCnOx/5XJ5cTox5nA4HA6HBv8BdIC/Yb/20m4AAAAASUVORK5CYII=);background-repeat:no-repeat;background-position:center}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn.hg-button-abc{width:100%;max-width:190px;font-size:55px;color:var(--tk-color-neutral-500)}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-@gmail.com\"],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-@hotmail.com\"],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-.com\"],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=\"hg-button-.co\"]{background-color:var(--tk-color-white-900);border-radius:50px;max-width:fit-content;font-size:32px;height:61px;min-width:142px;justify-content:flex-start;padding:10px 14px;margin-top:-47px}:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=hg-button-_],:host ::ng-deep .tekus-theme .hg-button.hg-functionBtn[class*=hg-button-dot]{background-color:var(--tk-color-white-900);max-width:110px}:host ::ng-deep .tekus-theme .hg-rows{width:unset}:host ::ng-deep .tekus-theme .hg-row:not(last-child){margin-bottom:15px;justify-content:center}:host ::ng-deep .tekus-theme .hg-row .hg-button:not(:last-child){margin-right:15px}:host ::ng-deep .tekus-theme.hg-layout-numbers .hg-row .hg-functionBtn.hg-button-enter{max-width:628px}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
155
171
  }
156
172
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TkKioskKeyboardComponent, decorators: [{
157
173
  type: Component,
@@ -180,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
180
196
  type: ViewChild,
181
197
  args: ['keyboardElement']
182
198
  }] } });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGsta2lvc2sta2V5Ym9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGsta2lvc2stZHMvc3JjL2xpYi9jb21wb25lbnRzL3RrLWtpb3NrLWtleWJvYXJkL3RrLWtpb3NrLWtleWJvYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RrLWtpb3NrLWRzL3NyYy9saWIvY29tcG9uZW50cy90ay1raW9zay1rZXlib2FyZC90ay1raW9zay1rZXlib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUVMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFHWixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVNqRCxNQUFNLE9BQU8sd0JBQXdCO0lBc0NuQyxZQUFvQixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBckM3QixVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUMsVUFBSyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlDLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckQsUUFBRyxHQUFXLE1BQU0sQ0FBQztRQUdyQixxQkFBZ0IsR0FBUSxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFRLElBQUksQ0FBQztRQUNyQixpQkFBWSxHQUFRO1lBQzNCLE9BQU8sRUFBRTtnQkFDUCxxQkFBcUI7Z0JBQ3JCLHFCQUFxQjtnQkFDckIsbUNBQW1DO2dCQUNuQyxvQ0FBb0M7YUFDckM7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wscUJBQXFCO2dCQUNyQixxQkFBcUI7Z0JBQ3JCLG1DQUFt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RyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFHTixlQUFlO3NCQURkLFNBQVM7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgUmVuZGVyZXIyLFxuICBFbGVtZW50UmVmLFxuICBWaWV3Q2hpbGQsXG4gIE9uRGVzdHJveSxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNpbXBsZUtleWJvYXJkIH0gZnJvbSAnc2ltcGxlLWtleWJvYXJkJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGsta2lvc2sta2V5Ym9hcmQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZVVybDogJy4vdGsta2lvc2sta2V5Ym9hcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90ay1raW9zay1rZXlib2FyZC5jb21wb25lbnQuc2NzcyddLFxuICBpbXBvcnRzOiBbTmdTdHlsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFRrS2lvc2tLZXlib2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBPdXRwdXQoKSB2YWx1ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjbG9zZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBzZWFyY2hWYWx1ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIHRvcDogc3RyaW5nID0gJzcxcHgnO1xuICBrZXlib2FyZCE6IFNpbXBsZUtleWJvYXJkO1xuXG4gIEBJbnB1dCgpIG9wZW5UeXBlS2V5Ym9hcmQ6IGFueSA9ICd0ZXh0JztcbiAgQElucHV0KCkgdmFsdWVGaXg6IGFueSA9IG51bGw7XG4gIEBJbnB1dCgpIHR5cGVLZXlib2FyZDogYW55ID0ge1xuICAgIGRlZmF1bHQ6IFtcbiAgICAgICdxIHcgZSByIHQgeSB1IGkgbyBwJyxcbiAgICAgICdhIHMgZCBmIGcgaCBqIGsgbCDDsScsXG4gICAgICAne3NoaWZ0fSB6IHggYyB2IGIgbiBtIHtiYWNrc3BhY2V9JyxcbiAgICAgICd7bnVtYmVyc30ge3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgICBdLFxuICAgIHNoaWZ0OiBbXG4gICAgICAnUSBXIEUgUiBUIFkgVSBJIE8gUCcsXG4gICAgICAnQSBTIEQgRiBHIEggSiBLIEwgw5EnLFxuICAgICAgJ3tzaGlmdH0gWiBYIEMgViBCIE4gTSB7YmFja3NwYWNlfScsXG4gICAgICAne251bWJlcnN9IHtzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gICAgXSxcbiAgICBudW1iZXJzOiBbXG4gICAgICAnMSAyIDMgNCA1IDYgNyA4IDkgMCcsXG4gICAgICAnw6Egw6kgw60gw7Mgw7ogKyAtIDogXyAlJyxcbiAgICAgICd7YWJjfSB7YmFja3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgICBdLFxuICAgIG51bWVyaWM6IFsnMSAyIDMnLCAnNCA1IDYnLCAnNyA4IDknLCAne2VudGVyfSAwIHtiYWNrc3BhY2V9J10sXG4gIH07XG4gIEBJbnB1dCgpIHRoZW1lS2V5Ym9hcmQ6IGFueSA9ICdoZy10aGVtZS1kZWZhdWx0IG15VGhlbWUxJztcbiAgQElucHV0KCkgY2xhc3NLZXlib2FyZDogYW55ID0gJ3NpbXBsZS1rZXlib2FyZCc7XG5cbiAgQElucHV0KCkgZW50ZXJUZXh0OiBzdHJpbmcgPSAnU2lndWllbnRlJztcblxuICBAVmlld0NoaWxkKCdrZXlib2FyZEVsZW1lbnQnKVxuICBrZXlib2FyZEVsZW1lbnQhOiBFbGVtZW50UmVmO1xuICByZW5kZXJlckxpc3RlbmVyRm4gPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5yZW5kZXJlckxpc3RlbmVyRm4gPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihcbiAgICAgICAgJ3dpbmRvdycsXG4gICAgICAgICdjbGljaycsXG4gICAgICAgIChlOiBFdmVudCkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUudGFyZ2V0ICE9PSB0aGlzLmtleWJvYXJkRWxlbWVudC5uYXRpdmVFbGVtZW50ICYmXG4gICAgICAgICAgICAhdGhpcy5rZXlib2FyZEVsZW1lbnQubmF0aXZlRWxlbWVudD8uY29udGFpbnMoZS50YXJnZXQgYXMgTm9kZSlcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIC8vdGhpcy5jbG9zZS5lbWl0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICApO1xuICAgIH0sIDUwMCk7XG4gICAgLy/im5JcbiAgICB0aGlzLmtleWJvYXJkID0gbmV3IFNpbXBsZUtleWJvYXJkKCcuJyArIHRoaXMuY2xhc3NLZXlib2FyZCwge1xuICAgICAgbGF5b3V0OiB0aGlzLnR5cGVLZXlib2FyZCxcbiAgICAgIGRpc3BsYXk6IHtcbiAgICAgICAgJ3tudW1iZXJzfSc6ICcxMjMnLFxuICAgICAgICAne2VudH0nOiAn4oapJyxcbiAgICAgICAgJ3tlc2NhcGV9JzogYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiNTRcIiBoZWlnaHQ9XCI1N1wiIHZpZXdCb3g9XCIwIDAgNTQgNTdcIiBmaWxsPVwibm9uZVwiPlxuICA8ZWxsaXBzZSBjeD1cIjI3XCIgY3k9XCIyOC4xMjY2XCIgcng9XCIyN1wiIHJ5PVwiMjcuODg4M1wiIGZpbGw9XCJ3aGl0ZVwiLz5cbiAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTE2LjE4NzMgMTguNzc5OEMxNi41MTM5IDE4LjQ0MjUgMTYuOTU2OSAxOC4yNTMgMTcuNDE4OCAxOC4yNTNDMTcuODgwNyAxOC4yNTMgMTguMzIzNyAxOC40NDI1IDE4LjY1MDQgMTguNzc5OEwyNi4xMjg1IDI2LjUwMzlMMzMuNjA2NiAxOC43Nzk4QzMzLjc2NzMgMTguNjA3OSAzMy45NTk1IDE4LjQ3MDggMzQuMTcyIDE4LjM3NjVDMzQuMzg0NiAxOC4yODIyIDM0LjYxMzEgMTguMjMyNiAzNC44NDQ0IDE4LjIzMDVDMzUuMDc1NyAxOC4yMjg1IDM1LjMwNTEgMTguMjc0IDM1LjUxOTIgMTguMzY0NUMzNS43MzMzIDE4LjQ1NDkgMzUuOTI3NyAxOC41ODg1IDM2LjA5MTMgMTguNzU3NUMzNi4yNTQ5IDE4LjkyNjQgMzYuMzg0MiAxOS4xMjczIDM2LjQ3MTggMTkuMzQ4NEMzNi41NTk0IDE5LjU2OTUgMzYuNjAzNCAxOS44MDY0IDM2LjYwMTQgMjAuMDQ1NEMzNi41OTk0IDIwLjI4NDMgMzYuNTUxNCAyMC41MjAzIDM2LjQ2MDEgMjAuNzM5OUMzNi4zNjg4IDIwLjk1OTQgMzYuMjM2MSAyMS4xNTc5IDM2LjA2OTcgMjEuMzIzOUwyOC41OTE2IDI5LjA0ODFMMzYuMDY5NyAzNi43NzIyQzM2LjM4NyAzNy4xMTE2IDM2LjU2MjYgMzcuNTY2MSAzNi41NTg2IDM4LjAzNzhDMzYuNTU0NyAzOC41MDk2IDM2LjM3MTUgMzguOTYwOCAzNi4wNDg1IDM5LjI5NDRDMzUuNzI1NSAzOS42MjggMzUuMjg4NiAzOS44MTczIDM0LjgzMTkgMzkuODIxNEMzNC4zNzUyIDM5LjgyNTUgMzMuOTM1MSAzOS42NDQxIDMzLjYwNjYgMzkuMzE2NEwyNi4xMjg1IDMxLjU5MjJMMTguNjUwNCAzOS4zMTY0QzE4LjMyMTggMzkuNjQ0MSAxNy44ODE4IDM5LjgyNTUgMTcuNDI1MSAzOS44MjE0QzE2Ljk2ODMgMzkuODE3MyAxNi41MzE0IDM5LjYyOCAxNi4yMDg1IDM5LjI5NDRDMTUuODg1NSAzOC45NjA4IDE1LjcwMjMgMzguNTA5NiAxNS42OTgzIDM4LjAzNzhDMTUuNjk0NCAzNy41NjYxIDE1Ljg3IDM3LjExMTYgMTYuMTg3MyAzNi43NzIyTDIzLjY2NTQgMjkuMDQ4MUwxNi4xODczIDIxLjMyMzlDMTUuODYwNyAyMC45ODY1IDE1LjY3NzIgMjAuNTI4OSAxNS42NzcyIDIwLjA1MThDMTUuNjc3MiAxOS41NzQ3IDE1Ljg2MDcgMTkuMTE3MiAxNi4xODczIDE4Ljc3OThaXCIgZmlsbD1cIiM5Njk2OTZcIi8+XG48L3N2Zz5gLFxuICAgICAgICAne3RhYn0nOiAndGFiIOKHpScsXG4gICAgICAgICd7YmFja3NwYWNlfSc6ICfijKsnLFxuICAgICAgICAne2NhcHNsb2NrfSc6ICdjYXBzIGxvY2sg4oeqJyxcbiAgICAgICAgJ3tzaGlmdH0nOiAn4oenJyxcbiAgICAgICAgJ3tjb250cm9sbGVmdH0nOiAnY3RybCDijIMnLFxuICAgICAgICAne2NvbnRyb2xyaWdodH0nOiAnY3RybCDijIMnLFxuICAgICAgICAne2FsdGxlZnR9JzogJ2FsdCDijKUnLFxuICAgICAgICAne2FsdHJpZ2h0fSc6ICdhbHQg4oylJyxcbiAgICAgICAgJ3ttZXRhbGVmdH0nOiAnY21kIOKMmCcsXG4gICAgICAgICd7bWV0YXJpZ2h0fSc6ICdjbWQg4oyYJyxcbiAgICAgICAgJ3thYmN9JzogJ2FiYycsXG4gICAgICAgICd7ZW50ZXJ9JzogdGhpcy5lbnRlclRleHQsXG4gICAgICAgICd7c3BhY2V9JzogJ2VzcGFjaW8nLFxuICAgICAgICAne199JzogJ18nLFxuICAgICAgICAne2RvdH0nOiAnLicsXG4gICAgICAgICd7LmNvbX0nOiAnLmNvbScsXG4gICAgICAgICd7LmNvfSc6ICcuY28nLFxuICAgICAgICAne0BnbWFpbC5jb219JzogJ0BnbWFpbC5jb20nLFxuICAgICAgICAne0Bob3RtYWlsLmNvbX0nOiAnQGhvdG1haWwuY29tJyxcbiAgICAgIH0sXG4gICAgICBtZXJnZURpc3BsYXk6IHRydWUsXG4gICAgICBvbkNoYW5nZTogKGlucHV0KSA9PiB0aGlzLm9uQ2hhbmdlSW5wdXQoaW5wdXQpLFxuICAgICAgb25LZXlQcmVzczogKGJ1dHRvbjogYW55LCBlKSA9PiB0aGlzLm9uS2V5UHJlc3MoYnV0dG9uLCBlKSxcbiAgICAgIHRoZW1lOiB0aGlzLnRoZW1lS2V5Ym9hcmQsXG4gICAgfSk7XG4gICAgaWYgKHRoaXMudmFsdWVGaXggJiYgdGhpcy52YWx1ZUZpeCAhPSAnJylcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy52YWx1ZUZpeCk7XG4gICAgaWYgKHRoaXMub3BlblR5cGVLZXlib2FyZCA9PSAnbnVtYmVyJylcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0T3B0aW9ucyh7XG4gICAgICAgIGxheW91dE5hbWU6ICdudW1iZXJzJyxcbiAgICAgIH0pO1xuICB9XG5cbiAgb25DaGFuZ2VJbnB1dCA9IChpbnB1dDogYW55KSA9PiB7XG4gICAgaWYgKGlucHV0Lmxlbmd0aCA8IDEwMSkge1xuICAgICAgdGhpcy5rZXlib2FyZC5zZXRJbnB1dChpbnB1dCk7XG4gICAgICB0aGlzLnZhbHVlLmVtaXQoaW5wdXQpO1xuICAgIH1cbiAgfTtcblxuICBvbktleVByZXNzID0gKGJ1dHRvbjogc3RyaW5nLCBlOiBhbnkpID0+IHtcbiAgICBpZiAoYnV0dG9uID09PSAne3NoaWZ0fScgfHwgYnV0dG9uID09PSAne2xvY2t9JykgdGhpcy5oYW5kbGVTaGlmdCgpO1xuICAgIGlmIChidXR0b24gPT09ICd7ZXNjYXBlfScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQoJycpO1xuICAgICAgdGhpcy52YWx1ZS5lbWl0KCcnKTtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChlKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tlbnRlcn0nKSB7XG4gICAgICB0aGlzLnNlYXJjaFZhbHVlLmVtaXQoZSk7XG4gICAgfVxuICAgIGlmIChidXR0b24gPT09ICd7ZW50fScpIHtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChlKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tudW1iZXJzfScpXG4gICAgICB0aGlzLmtleWJvYXJkLnNldE9wdGlvbnMoe1xuICAgICAgICBsYXlvdXROYW1lOiAnbnVtYmVycycsXG4gICAgICB9KTtcbiAgICBpZiAoYnV0dG9uID09PSAne2FiY30nKVxuICAgICAgdGhpcy5rZXlib2FyZC5zZXRPcHRpb25zKHtcbiAgICAgICAgbGF5b3V0TmFtZTogJ2RlZmF1bHQnLFxuICAgICAgfSk7XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tffScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJ18nKTtcbiAgICAgIHRoaXMudmFsdWUuZW1pdCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnXycpO1xuICAgIH1cbiAgICBpZiAoYnV0dG9uID09PSAne2RvdH0nKSB7XG4gICAgICB0aGlzLmtleWJvYXJkLnNldElucHV0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICcuJyk7XG4gICAgICB0aGlzLnZhbHVlLmVtaXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJy4nKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3suY29tfScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJy5jb20nKTtcbiAgICAgIHRoaXMudmFsdWUuZW1pdCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnLmNvbScpO1xuICAgIH1cbiAgICBpZiAoYnV0dG9uID09PSAney5jb30nKSB7XG4gICAgICB0aGlzLmtleWJvYXJkLnNldElucHV0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICcuY28nKTtcbiAgICAgIHRoaXMudmFsdWUuZW1pdCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnLmNvJyk7XG4gICAgfVxuICAgIGlmIChidXR0b24gPT09ICd7QGdtYWlsLmNvbX0nKSB7XG4gICAgICB0aGlzLmtleWJvYXJkLnNldElucHV0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICdAZ21haWwuY29tJyk7XG4gICAgICB0aGlzLnZhbHVlLmVtaXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJ0BnbWFpbC5jb20nKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tAaG90bWFpbC5jb219Jykge1xuICAgICAgdGhpcy5rZXlib2FyZC5zZXRJbnB1dCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnQGhvdG1haWwuY29tJyk7XG4gICAgICB0aGlzLnZhbHVlLmVtaXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJ0Bob3RtYWlsLmNvbScpO1xuICAgIH1cbiAgfTtcblxuICBoYW5kbGVTaGlmdCA9ICgpID0+IHtcbiAgICBsZXQgY3VycmVudExheW91dCA9IHRoaXMua2V5Ym9hcmQub3B0aW9ucy5sYXlvdXROYW1lO1xuICAgIGxldCBzaGlmdFRvZ2dsZSA9IGN1cnJlbnRMYXlvdXQgPT09ICdkZWZhdWx0JyA/ICdzaGlmdCcgOiAnZGVmYXVsdCc7XG4gICAgdGhpcy5rZXlib2FyZC5zZXRPcHRpb25zKHtcbiAgICAgIGxheW91dE5hbWU6IHNoaWZ0VG9nZ2xlLFxuICAgIH0pO1xuICB9O1xuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucmVuZGVyZXJMaXN0ZW5lckZuKCk7XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzTmFtZV09XCJjbGFzc0tleWJvYXJkXCIgW25nU3R5bGVdPVwie3RvcDp0b3B9XCIgI2tleWJvYXJkRWxlbWVudCA+PC9kaXY+XG4iXX0=
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGsta2lvc2sta2V5Ym9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGsta2lvc2stZHMvc3JjL2xpYi9jb21wb25lbnRzL3RrLWtpb3NrLWtleWJvYXJkL3RrLWtpb3NrLWtleWJvYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RrLWtpb3NrLWRzL3NyYy9saWIvY29tcG9uZW50cy90ay1raW9zay1rZXlib2FyZC90ay1raW9zay1rZXlib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUVMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFHWixTQUFTLEdBS1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVNqRCxNQUFNLE9BQU8sd0JBQXdCO0lBd0NuQyxZQUFvQixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBckM3QixVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUMsVUFBSyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlDLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckQsUUFBRyxHQUFXLE1BQU0sQ0FBQztRQUdyQixxQkFBZ0IsR0FBUSxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFRLElBQUksQ0FBQztRQUNyQixpQkFBWSxHQUFRO1lBQzNCLE9BQU8sRUFBRTtnQkFDUCxxQkFBcUI7Z0JBQ3JCLHFCQUFxQjtnQkFDckIsbUNBQW1DO2dCQUNuQyxvQ0FBb0M7YUFDckM7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wscUJBQXFCO2dCQUNyQixxQkFBcUI7Z0JBQ3JCLG1DQUFt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QUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLElBQUksUUFBUTtZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQztnQkFDdkIsVUFBVSxFQUFFLFNBQVM7YUFDdEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUEyRUQsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7OEdBckxVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLHllQ3hCckMsdUZBQ0EsMnhNRHFCWSxPQUFPOzsyRkFFTix3QkFBd0I7a0JBUHBDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FHUCxDQUFDLE9BQU8sQ0FBQzs4RUFLUixLQUFLO3NCQUFkLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0UsR0FBRztzQkFBWCxLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBb0JHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdOLGVBQWU7c0JBRGQsU0FBUzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1N0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBSZW5kZXJlcjIsXG4gIEVsZW1lbnRSZWYsXG4gIFZpZXdDaGlsZCxcbiAgT25EZXN0cm95LFxuICBpbmplY3QsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTaW1wbGVLZXlib2FyZCB9IGZyb20gJ3NpbXBsZS1rZXlib2FyZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RrLWtpb3NrLWtleWJvYXJkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RrLWtpb3NrLWtleWJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGsta2lvc2sta2V5Ym9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgaW1wb3J0czogW05nU3R5bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBUa0tpb3NrS2V5Ym9hcmRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlc1xue1xuICBAT3V0cHV0KCkgdmFsdWU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2xvc2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2VhcmNoVmFsdWU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBASW5wdXQoKSB0b3A6IHN0cmluZyA9ICc3MXB4JztcbiAga2V5Ym9hcmQhOiBTaW1wbGVLZXlib2FyZDtcblxuICBASW5wdXQoKSBvcGVuVHlwZUtleWJvYXJkOiBhbnkgPSAndGV4dCc7XG4gIEBJbnB1dCgpIHZhbHVlRml4OiBhbnkgPSBudWxsO1xuICBASW5wdXQoKSB0eXBlS2V5Ym9hcmQ6IGFueSA9IHtcbiAgICBkZWZhdWx0OiBbXG4gICAgICAncSB3IGUgciB0IHkgdSBpIG8gcCcsXG4gICAgICAnYSBzIGQgZiBnIGggaiBrIGwgw7EnLFxuICAgICAgJ3tzaGlmdH0geiB4IGMgdiBiIG4gbSB7YmFja3NwYWNlfScsXG4gICAgICAne251bWJlcnN9IHtzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gICAgXSxcbiAgICBzaGlmdDogW1xuICAgICAgJ1EgVyBFIFIgVCBZIFUgSSBPIFAnLFxuICAgICAgJ0EgUyBEIEYgRyBIIEogSyBMIMORJyxcbiAgICAgICd7c2hpZnR9IFogWCBDIFYgQiBOIE0ge2JhY2tzcGFjZX0nLFxuICAgICAgJ3tudW1iZXJzfSB7c3BhY2V9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICAgIF0sXG4gICAgbnVtYmVyczogW1xuICAgICAgJzEgMiAzIDQgNSA2IDcgOCA5IDAnLFxuICAgICAgJ8OhIMOpIMOtIMOzIMO6ICsgLSA6IF8gJScsXG4gICAgICAne2FiY30ge2JhY2tzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gICAgXSxcbiAgICBudW1lcmljOiBbJzEgMiAzJywgJzQgNSA2JywgJzcgOCA5JywgJ3tlbnRlcn0gMCB7YmFja3NwYWNlfSddLFxuICB9O1xuICBASW5wdXQoKSB0aGVtZUtleWJvYXJkOiBhbnkgPSAnaGctdGhlbWUtZGVmYXVsdCBteVRoZW1lMSc7XG4gIEBJbnB1dCgpIGNsYXNzS2V5Ym9hcmQ6IGFueSA9ICdzaW1wbGUta2V5Ym9hcmQnO1xuXG4gIEBJbnB1dCgpIGVudGVyVGV4dDogc3RyaW5nID0gJ1NpZ3VpZW50ZSc7XG5cbiAgQFZpZXdDaGlsZCgna2V5Ym9hcmRFbGVtZW50JylcbiAga2V5Ym9hcmRFbGVtZW50ITogRWxlbWVudFJlZjtcbiAgcmVuZGVyZXJMaXN0ZW5lckZuID0gKCkgPT4ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucmVuZGVyZXJMaXN0ZW5lckZuID0gdGhpcy5yZW5kZXJlci5saXN0ZW4oXG4gICAgICAgICd3aW5kb3cnLFxuICAgICAgICAnY2xpY2snLFxuICAgICAgICAoZTogRXZlbnQpID0+IHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBlLnRhcmdldCAhPT0gdGhpcy5rZXlib2FyZEVsZW1lbnQubmF0aXZlRWxlbWVudCAmJlxuICAgICAgICAgICAgIXRoaXMua2V5Ym9hcmRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ/LmNvbnRhaW5zKGUudGFyZ2V0IGFzIE5vZGUpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICAvL3RoaXMuY2xvc2UuZW1pdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9LCA1MDApO1xuICAgIC8v4puSXG4gICAgdGhpcy5rZXlib2FyZCA9IG5ldyBTaW1wbGVLZXlib2FyZCgnLicgKyB0aGlzLmNsYXNzS2V5Ym9hcmQsIHtcbiAgICAgIGxheW91dDogdGhpcy50eXBlS2V5Ym9hcmQsXG4gICAgICBkaXNwbGF5OiB7XG4gICAgICAgICd7bnVtYmVyc30nOiAnMTIzJyxcbiAgICAgICAgJ3tlbnR9JzogJ+KGqScsXG4gICAgICAgICd7ZXNjYXBlfSc6IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjU0XCIgaGVpZ2h0PVwiNTdcIiB2aWV3Qm94PVwiMCAwIDU0IDU3XCIgZmlsbD1cIm5vbmVcIj5cbiAgPGVsbGlwc2UgY3g9XCIyN1wiIGN5PVwiMjguMTI2NlwiIHJ4PVwiMjdcIiByeT1cIjI3Ljg4ODNcIiBmaWxsPVwid2hpdGVcIi8+XG4gIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xNi4xODczIDE4Ljc3OThDMTYuNTEzOSAxOC40NDI1IDE2Ljk1NjkgMTguMjUzIDE3LjQxODggMTguMjUzQzE3Ljg4MDcgMTguMjUzIDE4LjMyMzcgMTguNDQyNSAxOC42NTA0IDE4Ljc3OThMMjYuMTI4NSAyNi41MDM5TDMzLjYwNjYgMTguNzc5OEMzMy43NjczIDE4LjYwNzkgMzMuOTU5NSAxOC40NzA4IDM0LjE3MiAxOC4zNzY1QzM0LjM4NDYgMTguMjgyMiAzNC42MTMxIDE4LjIzMjYgMzQuODQ0NCAxOC4yMzA1QzM1LjA3NTcgMTguMjI4NSAzNS4zMDUxIDE4LjI3NCAzNS41MTkyIDE4LjM2NDVDMzUuNzMzMyAxOC40NTQ5IDM1LjkyNzcgMTguNTg4NSAzNi4wOTEzIDE4Ljc1NzVDMzYuMjU0OSAxOC45MjY0IDM2LjM4NDIgMTkuMTI3MyAzNi40NzE4IDE5LjM0ODRDMzYuNTU5NCAxOS41Njk1IDM2LjYwMzQgMTkuODA2NCAzNi42MDE0IDIwLjA0NTRDMzYuNTk5NCAyMC4yODQzIDM2LjU1MTQgMjAuNTIwMyAzNi40NjAxIDIwLjczOTlDMzYuMzY4OCAyMC45NTk0IDM2LjIzNjEgMjEuMTU3OSAzNi4wNjk3IDIxLjMyMzlMMjguNTkxNiAyOS4wNDgxTDM2LjA2OTcgMzYuNzcyMkMzNi4zODcgMzcuMTExNiAzNi41NjI2IDM3LjU2NjEgMzYuNTU4NiAzOC4wMzc4QzM2LjU1NDcgMzguNTA5NiAzNi4zNzE1IDM4Ljk2MDggMzYuMDQ4NSAzOS4yOTQ0QzM1LjcyNTUgMzkuNjI4IDM1LjI4ODYgMzkuODE3MyAzNC44MzE5IDM5LjgyMTRDMzQuMzc1MiAzOS44MjU1IDMzLjkzNTEgMzkuNjQ0MSAzMy42MDY2IDM5LjMxNjRMMjYuMTI4NSAzMS41OTIyTDE4LjY1MDQgMzkuMzE2NEMxOC4zMjE4IDM5LjY0NDEgMTcuODgxOCAzOS44MjU1IDE3LjQyNTEgMzkuODIxNEMxNi45NjgzIDM5LjgxNzMgMTYuNTMxNCAzOS42MjggMTYuMjA4NSAzOS4yOTQ0QzE1Ljg4NTUgMzguOTYwOCAxNS43MDIzIDM4LjUwOTYgMTUuNjk4MyAzOC4wMzc4QzE1LjY5NDQgMzcuNTY2MSAxNS44NyAzNy4xMTE2IDE2LjE4NzMgMzYuNzcyMkwyMy42NjU0IDI5LjA0ODFMMTYuMTg3MyAyMS4zMjM5QzE1Ljg2MDcgMjAuOTg2NSAxNS42NzcyIDIwLjUyODkgMTUuNjc3MiAyMC4wNTE4QzE1LjY3NzIgMTkuNTc0NyAxNS44NjA3IDE5LjExNzIgMTYuMTg3MyAxOC43Nzk4WlwiIGZpbGw9XCIjOTY5Njk2XCIvPlxuPC9zdmc+YCxcbiAgICAgICAgJ3t0YWJ9JzogJ3RhYiDih6UnLFxuICAgICAgICAne2JhY2tzcGFjZX0nOiAn4oyrJyxcbiAgICAgICAgJ3tjYXBzbG9ja30nOiAnY2FwcyBsb2NrIOKHqicsXG4gICAgICAgICd7c2hpZnR9JzogJ+KHpycsXG4gICAgICAgICd7Y29udHJvbGxlZnR9JzogJ2N0cmwg4oyDJyxcbiAgICAgICAgJ3tjb250cm9scmlnaHR9JzogJ2N0cmwg4oyDJyxcbiAgICAgICAgJ3thbHRsZWZ0fSc6ICdhbHQg4oylJyxcbiAgICAgICAgJ3thbHRyaWdodH0nOiAnYWx0IOKMpScsXG4gICAgICAgICd7bWV0YWxlZnR9JzogJ2NtZCDijJgnLFxuICAgICAgICAne21ldGFyaWdodH0nOiAnY21kIOKMmCcsXG4gICAgICAgICd7YWJjfSc6ICdhYmMnLFxuICAgICAgICAne3RleHR9JzogJ2FiYycsXG4gICAgICAgICd7ZW50ZXJ9JzogdGhpcy5lbnRlclRleHQsXG4gICAgICAgICd7c3BhY2V9JzogJ2VzcGFjaW8nLFxuICAgICAgICAne199JzogJ18nLFxuICAgICAgICAne2RvdH0nOiAnLicsXG4gICAgICAgICd7LmNvbX0nOiAnLmNvbScsXG4gICAgICAgICd7LmNvfSc6ICcuY28nLFxuICAgICAgICAne0BnbWFpbC5jb219JzogJ0BnbWFpbC5jb20nLFxuICAgICAgICAne0Bob3RtYWlsLmNvbX0nOiAnQGhvdG1haWwuY29tJyxcbiAgICAgIH0sXG4gICAgICBtZXJnZURpc3BsYXk6IHRydWUsXG4gICAgICBvbkNoYW5nZTogKGlucHV0KSA9PiB0aGlzLm9uQ2hhbmdlSW5wdXQoaW5wdXQpLFxuICAgICAgb25LZXlQcmVzczogKGJ1dHRvbjogYW55LCBlKSA9PiB0aGlzLm9uS2V5UHJlc3MoYnV0dG9uLCBlKSxcbiAgICAgIHRoZW1lOiB0aGlzLnRoZW1lS2V5Ym9hcmQsXG4gICAgfSk7XG4gICAgaWYgKHRoaXMudmFsdWVGaXggJiYgdGhpcy52YWx1ZUZpeCAhPSAnJylcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy52YWx1ZUZpeCk7XG4gICAgaWYgKHRoaXMub3BlblR5cGVLZXlib2FyZCA9PSAnbnVtYmVyJylcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0T3B0aW9ucyh7XG4gICAgICAgIGxheW91dE5hbWU6ICdudW1iZXJzJyxcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5rZXlib2FyZD8uc2V0SW5wdXQodGhpcy52YWx1ZUZpeCk7XG4gICAgdGhpcy52YWx1ZS5lbWl0KHRoaXMudmFsdWVGaXgpO1xuICB9XG5cbiAgb25DaGFuZ2VJbnB1dCA9IChpbnB1dDogYW55KSA9PiB7XG4gICAgaWYgKGlucHV0Lmxlbmd0aCA8IDEwMSkge1xuICAgICAgdGhpcy5rZXlib2FyZC5zZXRJbnB1dChpbnB1dCk7XG4gICAgICB0aGlzLnZhbHVlLmVtaXQoaW5wdXQpO1xuICAgIH1cbiAgfTtcblxuICBvbktleVByZXNzID0gKGJ1dHRvbjogc3RyaW5nLCBlOiBhbnkpID0+IHtcbiAgICBpZiAoYnV0dG9uID09PSAne3NoaWZ0fScgfHwgYnV0dG9uID09PSAne2xvY2t9JykgdGhpcy5oYW5kbGVTaGlmdCgpO1xuICAgIGlmIChidXR0b24gPT09ICd7ZXNjYXBlfScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQoJycpO1xuICAgICAgdGhpcy52YWx1ZS5lbWl0KCcnKTtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChlKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tlbnRlcn0nKSB7XG4gICAgICB0aGlzLnNlYXJjaFZhbHVlLmVtaXQoZSk7XG4gICAgfVxuICAgIGlmIChidXR0b24gPT09ICd7ZW50fScpIHtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChlKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tudW1iZXJzfScpXG4gICAgICB0aGlzLmtleWJvYXJkLnNldE9wdGlvbnMoe1xuICAgICAgICBsYXlvdXROYW1lOiAnbnVtYmVycycsXG4gICAgICB9KTtcbiAgICBpZiAoYnV0dG9uID09PSAne3RleHR9JylcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0T3B0aW9ucyh7XG4gICAgICAgIGxheW91dE5hbWU6ICd0ZXh0JyxcbiAgICAgIH0pO1xuICAgIGlmIChidXR0b24gPT09ICd7YWJjfScpXG4gICAgICB0aGlzLmtleWJvYXJkLnNldE9wdGlvbnMoe1xuICAgICAgICBsYXlvdXROYW1lOiAnZGVmYXVsdCcsXG4gICAgICB9KTtcbiAgICBpZiAoYnV0dG9uID09PSAne199Jykge1xuICAgICAgdGhpcy5rZXlib2FyZC5zZXRJbnB1dCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnXycpO1xuICAgICAgdGhpcy52YWx1ZS5lbWl0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICdfJyk7XG4gICAgfVxuICAgIGlmIChidXR0b24gPT09ICd7ZG90fScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJy4nKTtcbiAgICAgIHRoaXMudmFsdWUuZW1pdCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnLicpO1xuICAgIH1cbiAgICBpZiAoYnV0dG9uID09PSAney5jb219Jykge1xuICAgICAgdGhpcy5rZXlib2FyZC5zZXRJbnB1dCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnLmNvbScpO1xuICAgICAgdGhpcy52YWx1ZS5lbWl0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICcuY29tJyk7XG4gICAgfVxuICAgIGlmIChidXR0b24gPT09ICd7LmNvfScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJy5jbycpO1xuICAgICAgdGhpcy52YWx1ZS5lbWl0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICcuY28nKTtcbiAgICB9XG4gICAgaWYgKGJ1dHRvbiA9PT0gJ3tAZ21haWwuY29tfScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpICsgJ0BnbWFpbC5jb20nKTtcbiAgICAgIHRoaXMudmFsdWUuZW1pdCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnQGdtYWlsLmNvbScpO1xuICAgIH1cbiAgICBpZiAoYnV0dG9uID09PSAne0Bob3RtYWlsLmNvbX0nKSB7XG4gICAgICB0aGlzLmtleWJvYXJkLnNldElucHV0KHRoaXMua2V5Ym9hcmQuZ2V0SW5wdXQoKSArICdAaG90bWFpbC5jb20nKTtcbiAgICAgIHRoaXMudmFsdWUuZW1pdCh0aGlzLmtleWJvYXJkLmdldElucHV0KCkgKyAnQGhvdG1haWwuY29tJyk7XG4gICAgfVxuICAgIGlmIChidXR0b24gPT09ICd7YmFja3NwYWNlfScpIHtcbiAgICAgIHRoaXMua2V5Ym9hcmQuc2V0SW5wdXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpLnNsaWNlKDAsIC0xKSk7XG4gICAgICB0aGlzLnZhbHVlLmVtaXQodGhpcy5rZXlib2FyZC5nZXRJbnB1dCgpLnNsaWNlKDAsIC0xKSk7XG4gICAgfVxuICAgIGlmICh0aGlzLnZhbHVlRml4KSB7XG4gICAgICB0aGlzLmtleWJvYXJkLnNldElucHV0KHRoaXMudmFsdWVGaXgpO1xuICAgIH1cbiAgfTtcblxuICBoYW5kbGVTaGlmdCA9ICgpID0+IHtcbiAgICBsZXQgY3VycmVudExheW91dCA9IHRoaXMua2V5Ym9hcmQub3B0aW9ucy5sYXlvdXROYW1lO1xuICAgIGxldCBzaGlmdFRvZ2dsZSA9IGN1cnJlbnRMYXlvdXQgPT09ICdkZWZhdWx0JyA/ICdzaGlmdCcgOiAnZGVmYXVsdCc7XG4gICAgdGhpcy5rZXlib2FyZC5zZXRPcHRpb25zKHtcbiAgICAgIGxheW91dE5hbWU6IHNoaWZ0VG9nZ2xlLFxuICAgIH0pO1xuICB9O1xuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucmVuZGVyZXJMaXN0ZW5lckZuKCk7XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzTmFtZV09XCJjbGFzc0tleWJvYXJkXCIgW25nU3R5bGVdPVwie3RvcDp0b3B9XCIgI2tleWJvYXJkRWxlbWVudCA+PC9kaXY+XG4iXX0=
@@ -28,6 +28,15 @@ export const keyboardTypeNumeric = {
28
28
  '{escape}',
29
29
  ],
30
30
  };
31
+ export const keyboardTypeCode = {
32
+ default: ['1 2 3', '4 5 6', '7 8 9', '{text} 0 {backspace}'],
33
+ numbers: ['1 2 3', '4 5 6', '7 8 9', '{text} 0 {backspace}'],
34
+ text: [
35
+ 'Q W E R T Y U I O P',
36
+ 'A S D F G H J K L Ñ',
37
+ '{numbers} Z X C V B N M {backspace}',
38
+ ],
39
+ };
31
40
  export const keyboardType = {
32
41
  default: [
33
42
  'q w e r t y u i o p',
@@ -115,4 +124,4 @@ export const keyboardTypeTextNumbers = {
115
124
  '{space} {enter} {escape}',
116
125
  ],
117
126
  };
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGsta2lvc2stZHMvc3JjL2xpYi9oZWxwZXJzL2tleWJvYXJkLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBUTtJQUN0QyxPQUFPLEVBQUU7UUFDUCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQywyQkFBMkI7S0FDNUI7SUFDRCxLQUFLLEVBQUU7UUFDTCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQywyQkFBMkI7S0FDNUI7SUFDRCxPQUFPLEVBQUU7UUFDUCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLDJCQUEyQjtLQUM1QjtJQUNELE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUM7Q0FDdkUsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFRO0lBQ3RDLE9BQU8sRUFBRTtRQUNQLE9BQU87UUFDUCxPQUFPO1FBQ1AsT0FBTztRQUNQLHNCQUFzQjtRQUN0QixTQUFTO1FBQ1QsVUFBVTtLQUNYO0NBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBUTtJQUMvQixPQUFPLEVBQUU7UUFDUCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQyxvQ0FBb0M7S0FDckM7SUFDRCxLQUFLLEVBQUU7UUFDTCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQyxvQ0FBb0M7S0FDckM7SUFDRCxPQUFPLEVBQUU7UUFDUCxPQUFPO1FBQ1AsT0FBTztRQUNQLE9BQU87UUFDUCxxQkFBcUI7UUFDckIsa0JBQWtCO0tBQ25CO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsUUFBUTtRQUNSLE9BQU87UUFDUCxPQUFPO1FBQ1AscUJBQXFCO1FBQ3JCLGtCQUFrQjtLQUNuQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBUTtJQUNwQyxPQUFPLEVBQUU7UUFDUCwwQ0FBMEM7UUFDMUMscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQkFBbUI7UUFDbkIsNkJBQTZCO1FBQzdCLDRCQUE0QjtLQUM3QjtJQUNELE9BQU8sRUFBRTtRQUNQLE9BQU87UUFDUCxPQUFPO1FBQ1AsT0FBTztRQUNQLHFCQUFxQjtRQUNyQixrQkFBa0I7S0FDbkI7Q0FDRixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQVE7SUFDbkMsT0FBTyxFQUFFO1FBQ1AscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQ0FBbUM7UUFDbkMsMEJBQTBCO0tBQzNCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQ0FBbUM7UUFDbkMsMEJBQTBCO0tBQzNCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUztRQUNULFNBQVM7UUFDVCx1QkFBdUI7UUFDdkIsMEJBQTBCO0tBQzNCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUztRQUNULFNBQVM7UUFDVCx1QkFBdUI7UUFDdkIsMEJBQTBCO0tBQzNCO0NBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFRO0lBQzFDLE9BQU8sRUFBRTtRQUNQLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQywwQkFBMEI7S0FDM0I7SUFDRCxLQUFLLEVBQUU7UUFDTCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQ0FBbUM7UUFDbkMsMEJBQTBCO0tBQzNCO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVEZWZhdWx0OiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFtcbiAgICAncSB3IGUgciB0IHkgdSBpIG8gcCcsXG4gICAgJ2EgcyBkIGYgZyBoIGogayBsIMOxJyxcbiAgICAne3NoaWZ0fSB6IHggYyB2IGIgbiBtIHtiYWNrc3BhY2V9JyxcbiAgICAne251bWJlcnN9IHtzcGFjZX0ge2VudGVyfScsXG4gIF0sXG4gIHNoaWZ0OiBbXG4gICAgJ1EgVyBFIFIgVCBZIFUgSSBPIFAnLFxuICAgICdBIFMgRCBGIEcgSCBKIEsgTCDDkScsXG4gICAgJ3tzaGlmdH0gWiBYIEMgViBCIE4gTSB7YmFja3NwYWNlfScsXG4gICAgJ3tudW1iZXJzfSB7c3BhY2V9IHtlbnRlcn0nLFxuICBdLFxuICBudW1iZXJzOiBbXG4gICAgJzEgMiAzIDQgNSA2IDcgOCA5IDAnLFxuICAgICfDoSDDqSDDrSDDsyDDuiArIC0gOiBfICUnLFxuICAgICd7YWJjfSB7YmFja3NwYWNlfSB7ZW50ZXJ9JyxcbiAgXSxcbiAgbnVtZXJpYzogWycxIDIgMyA0JywgJzUgNiA3IDgnLCAnOSAwIHtiYWNrc3BhY2V9JywgJ3tlc2NhcGV9IHtlbnRlcn0nXSxcbn07XG5cbmV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVOdW1lcmljOiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFtcbiAgICAnMSAyIDMnLFxuICAgICc0IDUgNicsXG4gICAgJzcgOCA5JyxcbiAgICAne2JhY2tzcGFjZX0gMCB7bm9uZX0nLFxuICAgICd7ZW50ZXJ9JyxcbiAgICAne2VzY2FwZX0nLFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IGtleWJvYXJkVHlwZTogYW55ID0ge1xuICBkZWZhdWx0OiBbXG4gICAgJ3EgdyBlIHIgdCB5IHUgaSBvIHAnLFxuICAgICdhIHMgZCBmIGcgaCBqIGsgbCDDsScsXG4gICAgJ3tzaGlmdH0geiB4IGMgdiBiIG4gbSB7YmFja3NwYWNlfScsXG4gICAgJ3tudW1iZXJzfSB7c3BhY2V9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxuICBzaGlmdDogW1xuICAgICdRIFcgRSBSIFQgWSBVIEkgTyBQJyxcbiAgICAnQSBTIEQgRiBHIEggSiBLIEwgw5EnLFxuICAgICd7c2hpZnR9IFogWCBDIFYgQiBOIE0ge2JhY2tzcGFjZX0nLFxuICAgICd7bnVtYmVyc30ge3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbiAgbnVtYmVyczogW1xuICAgICcxIDIgMycsXG4gICAgJzQgNSA2JyxcbiAgICAnNyA4IDknLFxuICAgICd7YWJjfSAwIHtiYWNrc3BhY2V9JyxcbiAgICAne2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG4gIG51bWVyaWM6IFtcbiAgICAnMSAyIDMgJyxcbiAgICAnNCA1IDYnLFxuICAgICc3IDggOScsXG4gICAgJ3thYmN9IDAge2JhY2tzcGFjZX0nLFxuICAgICd7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbn07XG5cbmV4cG9ydCBjb25zdCBrZXlib2FyZEVtYWlsVHlwZTogYW55ID0ge1xuICBkZWZhdWx0OiBbXG4gICAgJ3tAZ21haWwuY29tfSB7QGhvdG1haWwuY29tfSB7LmNvbX0gey5jb30nLFxuICAgICcxIDIgMyA0IDUgNiA3IDggOSAwJyxcbiAgICAncSB3IGUgciB0IHkgdSBpIG8gcCcsXG4gICAgJ2EgcyBkIGYgZyBoIGogayBsJyxcbiAgICAnQCB6IHggYyB2IGIgbiBtIHtiYWNrc3BhY2V9JyxcbiAgICAne199IHtkb3R9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxuICBudW1iZXJzOiBbXG4gICAgJzEgMiAzJyxcbiAgICAnNCA1IDYnLFxuICAgICc3IDggOScsXG4gICAgJ3thYmN9IDAge2JhY2tzcGFjZX0nLFxuICAgICd7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbn07XG5cbmV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVUZXh0OiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFtcbiAgICAncSB3IGUgciB0IHkgdSBpIG8gcCcsXG4gICAgJ2EgcyBkIGYgZyBoIGogayBsIMOxJyxcbiAgICAne3NoaWZ0fSB6IHggYyB2IGIgbiBtIHtiYWNrc3BhY2V9JyxcbiAgICAne3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbiAgc2hpZnQ6IFtcbiAgICAnUSBXIEUgUiBUIFkgVSBJIE8gUCcsXG4gICAgJ0EgUyBEIEYgRyBIIEogSyBMIMORJyxcbiAgICAne3NoaWZ0fSBaIFggQyBWIEIgTiBNIHtiYWNrc3BhY2V9JyxcbiAgICAne3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbiAgbnVtYmVyczogW1xuICAgICcxIDIgMyA0JyxcbiAgICAnNSA2IDcgOCcsXG4gICAgJ3thYmN9IDkgMCB7YmFja3NwYWNlfScsXG4gICAgJ3tzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG4gIG51bWVyaWM6IFtcbiAgICAnMSAyIDMgNCcsXG4gICAgJzUgNiA3IDgnLFxuICAgICd7YWJjfSA5IDAge2JhY2tzcGFjZX0nLFxuICAgICd7c3BhY2V9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IGtleWJvYXJkVHlwZVRleHROdW1iZXJzOiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFtcbiAgICAnMSAyIDMgNCA1IDYgNyA4IDkgMCcsXG4gICAgJ3EgdyBlIHIgdCB5IHUgaSBvIHAnLFxuICAgICdhIHMgZCBmIGcgaCBqIGsgbCDDsScsXG4gICAgJ3tzaGlmdH0geiB4IGMgdiBiIG4gbSB7YmFja3NwYWNlfScsXG4gICAgJ3tzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG4gIHNoaWZ0OiBbXG4gICAgJzEgMiAzIDQgNSA2IDcgOCA5IDAnLFxuICAgICdRIFcgRSBSIFQgWSBVIEkgTyBQJyxcbiAgICAnQSBTIEQgRiBHIEggSiBLIEwgw5EnLFxuICAgICd7c2hpZnR9IFogWCBDIFYgQiBOIE0ge2JhY2tzcGFjZX0nLFxuICAgICd7c3BhY2V9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxufTtcbiJdfQ==
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGsta2lvc2stZHMvc3JjL2xpYi9oZWxwZXJzL2tleWJvYXJkLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBUTtJQUN0QyxPQUFPLEVBQUU7UUFDUCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQywyQkFBMkI7S0FDNUI7SUFDRCxLQUFLLEVBQUU7UUFDTCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQywyQkFBMkI7S0FDNUI7SUFDRCxPQUFPLEVBQUU7UUFDUCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLDJCQUEyQjtLQUM1QjtJQUNELE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUM7Q0FDdkUsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFRO0lBQ3RDLE9BQU8sRUFBRTtRQUNQLE9BQU87UUFDUCxPQUFPO1FBQ1AsT0FBTztRQUNQLHNCQUFzQjtRQUN0QixTQUFTO1FBQ1QsVUFBVTtLQUNYO0NBQ0YsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFRO0lBQ25DLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixDQUFDO0lBQzVELE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixDQUFDO0lBQzVELElBQUksRUFBRTtRQUNKLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIscUNBQXFDO0tBQ3RDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBUTtJQUMvQixPQUFPLEVBQUU7UUFDUCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQyxvQ0FBb0M7S0FDckM7SUFDRCxLQUFLLEVBQUU7UUFDTCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQyxvQ0FBb0M7S0FDckM7SUFDRCxPQUFPLEVBQUU7UUFDUCxPQUFPO1FBQ1AsT0FBTztRQUNQLE9BQU87UUFDUCxxQkFBcUI7UUFDckIsa0JBQWtCO0tBQ25CO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsUUFBUTtRQUNSLE9BQU87UUFDUCxPQUFPO1FBQ1AscUJBQXFCO1FBQ3JCLGtCQUFrQjtLQUNuQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBUTtJQUNwQyxPQUFPLEVBQUU7UUFDUCwwQ0FBMEM7UUFDMUMscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQkFBbUI7UUFDbkIsNkJBQTZCO1FBQzdCLDRCQUE0QjtLQUM3QjtJQUNELE9BQU8sRUFBRTtRQUNQLE9BQU87UUFDUCxPQUFPO1FBQ1AsT0FBTztRQUNQLHFCQUFxQjtRQUNyQixrQkFBa0I7S0FDbkI7Q0FDRixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQVE7SUFDbkMsT0FBTyxFQUFFO1FBQ1AscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQ0FBbUM7UUFDbkMsMEJBQTBCO0tBQzNCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQ0FBbUM7UUFDbkMsMEJBQTBCO0tBQzNCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUztRQUNULFNBQVM7UUFDVCx1QkFBdUI7UUFDdkIsMEJBQTBCO0tBQzNCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUztRQUNULFNBQVM7UUFDVCx1QkFBdUI7UUFDdkIsMEJBQTBCO0tBQzNCO0NBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFRO0lBQzFDLE9BQU8sRUFBRTtRQUNQLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLG1DQUFtQztRQUNuQywwQkFBMEI7S0FDM0I7SUFDRCxLQUFLLEVBQUU7UUFDTCxxQkFBcUI7UUFDckIscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixtQ0FBbUM7UUFDbkMsMEJBQTBCO0tBQzNCO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVEZWZhdWx0OiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFtcbiAgICAncSB3IGUgciB0IHkgdSBpIG8gcCcsXG4gICAgJ2EgcyBkIGYgZyBoIGogayBsIMOxJyxcbiAgICAne3NoaWZ0fSB6IHggYyB2IGIgbiBtIHtiYWNrc3BhY2V9JyxcbiAgICAne251bWJlcnN9IHtzcGFjZX0ge2VudGVyfScsXG4gIF0sXG4gIHNoaWZ0OiBbXG4gICAgJ1EgVyBFIFIgVCBZIFUgSSBPIFAnLFxuICAgICdBIFMgRCBGIEcgSCBKIEsgTCDDkScsXG4gICAgJ3tzaGlmdH0gWiBYIEMgViBCIE4gTSB7YmFja3NwYWNlfScsXG4gICAgJ3tudW1iZXJzfSB7c3BhY2V9IHtlbnRlcn0nLFxuICBdLFxuICBudW1iZXJzOiBbXG4gICAgJzEgMiAzIDQgNSA2IDcgOCA5IDAnLFxuICAgICfDoSDDqSDDrSDDsyDDuiArIC0gOiBfICUnLFxuICAgICd7YWJjfSB7YmFja3NwYWNlfSB7ZW50ZXJ9JyxcbiAgXSxcbiAgbnVtZXJpYzogWycxIDIgMyA0JywgJzUgNiA3IDgnLCAnOSAwIHtiYWNrc3BhY2V9JywgJ3tlc2NhcGV9IHtlbnRlcn0nXSxcbn07XG5cbmV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVOdW1lcmljOiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFtcbiAgICAnMSAyIDMnLFxuICAgICc0IDUgNicsXG4gICAgJzcgOCA5JyxcbiAgICAne2JhY2tzcGFjZX0gMCB7bm9uZX0nLFxuICAgICd7ZW50ZXJ9JyxcbiAgICAne2VzY2FwZX0nLFxuICBdLFxufTtcbmV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVDb2RlOiBhbnkgPSB7XG4gIGRlZmF1bHQ6IFsnMSAyIDMnLCAnNCA1IDYnLCAnNyA4IDknLCAne3RleHR9IDAge2JhY2tzcGFjZX0nXSxcbiAgbnVtYmVyczogWycxIDIgMycsICc0IDUgNicsICc3IDggOScsICd7dGV4dH0gMCB7YmFja3NwYWNlfSddLFxuICB0ZXh0OiBbXG4gICAgJ1EgVyBFIFIgVCBZIFUgSSBPIFAnLFxuICAgICdBIFMgRCBGIEcgSCBKIEsgTCDDkScsXG4gICAgJ3tudW1iZXJzfSBaIFggQyBWIEIgTiBNIHtiYWNrc3BhY2V9JyxcbiAgXSxcbn07XG5cbmV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGU6IGFueSA9IHtcbiAgZGVmYXVsdDogW1xuICAgICdxIHcgZSByIHQgeSB1IGkgbyBwJyxcbiAgICAnYSBzIGQgZiBnIGggaiBrIGwgw7EnLFxuICAgICd7c2hpZnR9IHogeCBjIHYgYiBuIG0ge2JhY2tzcGFjZX0nLFxuICAgICd7bnVtYmVyc30ge3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbiAgc2hpZnQ6IFtcbiAgICAnUSBXIEUgUiBUIFkgVSBJIE8gUCcsXG4gICAgJ0EgUyBEIEYgRyBIIEogSyBMIMORJyxcbiAgICAne3NoaWZ0fSBaIFggQyBWIEIgTiBNIHtiYWNrc3BhY2V9JyxcbiAgICAne251bWJlcnN9IHtzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG4gIG51bWJlcnM6IFtcbiAgICAnMSAyIDMnLFxuICAgICc0IDUgNicsXG4gICAgJzcgOCA5JyxcbiAgICAne2FiY30gMCB7YmFja3NwYWNlfScsXG4gICAgJ3tlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxuICBudW1lcmljOiBbXG4gICAgJzEgMiAzICcsXG4gICAgJzQgNSA2JyxcbiAgICAnNyA4IDknLFxuICAgICd7YWJjfSAwIHtiYWNrc3BhY2V9JyxcbiAgICAne2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG59O1xuXG5leHBvcnQgY29uc3Qga2V5Ym9hcmRFbWFpbFR5cGU6IGFueSA9IHtcbiAgZGVmYXVsdDogW1xuICAgICd7QGdtYWlsLmNvbX0ge0Bob3RtYWlsLmNvbX0gey5jb219IHsuY299JyxcbiAgICAnMSAyIDMgNCA1IDYgNyA4IDkgMCcsXG4gICAgJ3EgdyBlIHIgdCB5IHUgaSBvIHAnLFxuICAgICdhIHMgZCBmIGcgaCBqIGsgbCcsXG4gICAgJ0AgeiB4IGMgdiBiIG4gbSB7YmFja3NwYWNlfScsXG4gICAgJ3tffSB7ZG90fSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbiAgbnVtYmVyczogW1xuICAgICcxIDIgMycsXG4gICAgJzQgNSA2JyxcbiAgICAnNyA4IDknLFxuICAgICd7YWJjfSAwIHtiYWNrc3BhY2V9JyxcbiAgICAne2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG59O1xuXG5leHBvcnQgY29uc3Qga2V5Ym9hcmRUeXBlVGV4dDogYW55ID0ge1xuICBkZWZhdWx0OiBbXG4gICAgJ3EgdyBlIHIgdCB5IHUgaSBvIHAnLFxuICAgICdhIHMgZCBmIGcgaCBqIGsgbCDDsScsXG4gICAgJ3tzaGlmdH0geiB4IGMgdiBiIG4gbSB7YmFja3NwYWNlfScsXG4gICAgJ3tzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG4gIHNoaWZ0OiBbXG4gICAgJ1EgVyBFIFIgVCBZIFUgSSBPIFAnLFxuICAgICdBIFMgRCBGIEcgSCBKIEsgTCDDkScsXG4gICAgJ3tzaGlmdH0gWiBYIEMgViBCIE4gTSB7YmFja3NwYWNlfScsXG4gICAgJ3tzcGFjZX0ge2VudGVyfSB7ZXNjYXBlfScsXG4gIF0sXG4gIG51bWJlcnM6IFtcbiAgICAnMSAyIDMgNCcsXG4gICAgJzUgNiA3IDgnLFxuICAgICd7YWJjfSA5IDAge2JhY2tzcGFjZX0nLFxuICAgICd7c3BhY2V9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxuICBudW1lcmljOiBbXG4gICAgJzEgMiAzIDQnLFxuICAgICc1IDYgNyA4JyxcbiAgICAne2FiY30gOSAwIHtiYWNrc3BhY2V9JyxcbiAgICAne3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbn07XG5cbmV4cG9ydCBjb25zdCBrZXlib2FyZFR5cGVUZXh0TnVtYmVyczogYW55ID0ge1xuICBkZWZhdWx0OiBbXG4gICAgJzEgMiAzIDQgNSA2IDcgOCA5IDAnLFxuICAgICdxIHcgZSByIHQgeSB1IGkgbyBwJyxcbiAgICAnYSBzIGQgZiBnIGggaiBrIGwgw7EnLFxuICAgICd7c2hpZnR9IHogeCBjIHYgYiBuIG0ge2JhY2tzcGFjZX0nLFxuICAgICd7c3BhY2V9IHtlbnRlcn0ge2VzY2FwZX0nLFxuICBdLFxuICBzaGlmdDogW1xuICAgICcxIDIgMyA0IDUgNiA3IDggOSAwJyxcbiAgICAnUSBXIEUgUiBUIFkgVSBJIE8gUCcsXG4gICAgJ0EgUyBEIEYgRyBIIEogSyBMIMORJyxcbiAgICAne3NoaWZ0fSBaIFggQyBWIEIgTiBNIHtiYWNrc3BhY2V9JyxcbiAgICAne3NwYWNlfSB7ZW50ZXJ9IHtlc2NhcGV9JyxcbiAgXSxcbn07XG4iXX0=