iptdevs-design-system 3.1.103 → 3.1.104

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,7 +6,9 @@ import * as i1 from "@angular/forms";
6
6
  import * as i2 from "../../core/utils/base-service/base.service";
7
7
  import * as i3 from "../../core/services/user-service/user-service";
8
8
  import * as i4 from "@angular/common";
9
- import * as i5 from "primeng/button";
9
+ import * as i5 from "primeng/api";
10
+ import * as i6 from "primeng/table";
11
+ import * as i7 from "primeng/button";
10
12
  export class ModalReferredComponent {
11
13
  constructor(fb, baseService, userService) {
12
14
  this.fb = fb;
@@ -69,10 +71,10 @@ export class ModalReferredComponent {
69
71
  }
70
72
  }
71
73
  ModalReferredComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ModalReferredComponent, deps: [{ token: i1.FormBuilder }, { token: i2.BaseService }, { token: i3.UserService }], target: i0.ɵɵFactoryTarget.Component });
72
- ModalReferredComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ModalReferredComponent, selector: "cod-modal-referred", inputs: { visibility: "visibility" }, outputs: { userSelect: "userSelect", modalClose: "modalClose" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\n <div @fade class=\"modal_container\">\n <div class=\"header_modal\">\n <h1>Datos de quien lo refiere</h1>\n <button (click)=\"closeModal()\">x</button>\n </div>\n <div class=\"grid_container\">\n <div>\n <section\n id=\"container\"\n class=\"flex flex-column bg-white border-round-2xl\"\n >\n <form\n autocomplete=\"off\"\n (ngSubmit)=\"search(searchUserForm)\"\n class=\"form\"\n [formGroup]=\"searchUserForm\"\n >\n <input\n placeholder=\"Buscar por nombre, documento o tel\u00E9fono\"\n [formControl]=\"$any(searchUserForm.controls['searchUser'])\"\n type=\"text\"\n pInputText\n />\n <p-button\n type=\"submit\"\n label=\"Buscar\"\n icon=\"pi pi-search\"\n [loading]=\"loading[0]\"\n (onClick)=\"load(0, searchUserForm)\"\n ></p-button>\n </form>\n </section>\n\n <div *ngIf=\"userExists\" class=\"referrerInformation\">\n <section class=\"userList\">\n <table class=\"table_container\">\n <tr class=\"header_table\">\n <th>Documento</th>\n <th>Nombres</th>\n <th>Apellidos</th>\n <th>Email</th>\n <th>Telefono</th>\n <th>Rol</th>\n <th>Admin</th>\n </tr>\n <tr *ngFor=\"let user of allUsers\" (click)=\"selectUser(user)\" class=\"body_table\">\n <td>{{ user.id_card }}</td>\n <td>{{ user.name | titlecase }}</td>\n <td>{{ user.last_name | titlecase }}</td>\n <td>{{ user.email }}</td>\n <td>{{ user.phone_number }}</td>\n <td>{{ user.role }}</td>\n <td>\n <p-button\n type=\"submit\"\n icon=\"pi pi-chevron-circle-right\"\n (onClick)=\"load(0, searchUserForm)\"\n ></p-button>\n </td>\n </tr>\n </table>\n </section>\n </div>\n </div>\n </div>\n </div>\n</main>\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100%;width:100vw;transition:all .5s;z-index:999}main .modal_container{width:85%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin-top:5rem;margin-left:7%;background-color:#fff;border-radius:6px}.userList{overflow:auto}.btn_select{margin:2px}.table_container{border:1px solid #1c77f7;width:100%;border-collapse:collapse;max-height:300px;overflow:auto;margin:.5rem}.header_table{background-color:#1c77f7;color:#fff}.body_table{background-color:#fff;color:#000;border:1px solid #6c7f7d}td{margin:2px;padding:2px}.header_modal{display:flex;padding:15px 15px 0;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1rem;font-weight:400;margin-bottom:0}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.referrer_Information{overflow:auto}.grid_container{display:grid;grid-template-columns:1fr;padding:10px}form{display:grid;grid-template-columns:1fr;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:5fr 1fr;gap:1rem;justify-content:center;height:90px;align-content:center}.userList{width:-webkit-fill-available}}@media screen and (min-width: 1366px){form{padding:0rem}}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: i4.TitleCasePipe, name: "titlecase" }] });
74
+ ModalReferredComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: ModalReferredComponent, selector: "cod-modal-referred", inputs: { visibility: "visibility" }, outputs: { userSelect: "userSelect", modalClose: "modalClose" }, ngImport: i0, template: "<main *ngIf=\"visibility\">\n <div @fade class=\"modal_container\">\n <div class=\"header_modal\">\n <h1>Datos de quien lo refiere</h1>\n <button (click)=\"closeModal()\">x</button>\n </div>\n <div class=\"grid_container\">\n <div>\n <section\n id=\"container\"\n class=\"flex flex-column bg-white border-round-2xl\"\n >\n <form\n autocomplete=\"off\"\n (ngSubmit)=\"search(searchUserForm)\"\n class=\"form\"\n [formGroup]=\"searchUserForm\"\n >\n <input\n placeholder=\"Buscar por nombre, documento o tel\u00E9fono\"\n [formControl]=\"$any(searchUserForm.controls['searchUser'])\"\n type=\"text\"\n pInputText\n />\n <p-button\n type=\"submit\"\n label=\"Buscar\"\n icon=\"pi pi-search\"\n [loading]=\"loading[0]\"\n (onClick)=\"load(0, searchUserForm)\"\n ></p-button>\n </form>\n </section>\n\n <div *ngIf=\"userExists\" class=\"referrerInformation\">\n <section class=\"userList\">\n <table class=\"table_container\">\n <tr class=\"header_table\">\n <th>Documento</th>\n <th>Nombres</th>\n <th>Apellidos</th>\n <th>Email</th>\n <th>Telefono</th>\n <th>Rol</th>\n <th>Admin</th>\n </tr>\n <tr *ngFor=\"let user of allUsers\" (click)=\"selectUser(user)\" class=\"body_table\">\n <td>{{ user.id_card }}</td>\n <td>{{ user.name | titlecase }}</td>\n <td>{{ user.last_name | titlecase }}</td>\n <td>{{ user.email }}</td>\n <td>{{ user.phone_number }}</td>\n <td>{{ user.role }}</td>\n <td>\n <p-button\n type=\"submit\"\n icon=\"pi pi-chevron-circle-right\"\n (click)=\"selectUser(user)\"\n ></p-button>\n </td>\n </tr>\n </table>\n\n\n <p-table [value]=\"allUsers\" [scrollable]=\"true\" scrollHeight=\"200px\" [tableStyle]=\"{'min-width': '50rem'}\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>Documento</th>\n <th>Nombres</th>\n <th>Apellidos</th>\n <th>Email</th>\n <th>Telefono</th>\n <th>Rol</th>\n <th>Admin</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-user>\n <tr>\n <td>{{user.id_card}}</td>\n <td>{{user.name}}</td>\n <td>{{user.last_name}}</td>\n <td>{{user.email}}</td>\n <td>{{user.phone_number}}</td>\n <td>{{user.role}}</td>\n <td>\n <p-button\n type=\"submit\"\n icon=\"pi pi-chevron-circle-right\"\n (click)=\"selectUser(user)\"\n ></p-button>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </section>\n </div>\n </div>\n </div>\n </div>\n</main>\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100%;width:100vw;transition:all .5s;z-index:999}main .modal_container{width:85%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin-top:5rem;margin-left:7%;background-color:#fff;border-radius:6px}.userList{overflow:auto}.btn_select{margin:2px}.table_container{border:1px solid #1c77f7;width:100%;border-collapse:collapse;max-height:300px;overflow:auto;margin:.5rem}.header_table{background-color:#1c77f7;color:#fff}.body_table{background-color:#fff;color:#000;border:1px solid #6c7f7d}td{margin:2px;padding:2px}.header_modal{display:flex;padding:15px 15px 0;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1rem;font-weight:400;margin-bottom:0}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.referrer_Information{overflow:auto}.grid_container{display:grid;grid-template-columns:1fr;padding:10px}form{display:grid;grid-template-columns:1fr;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:5fr 1fr;gap:1rem;justify-content:center;height:90px;align-content:center}.userList{width:-webkit-fill-available}}@media screen and (min-width: 1366px){form{padding:0rem}}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i6.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "component", type: i7.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: i4.TitleCasePipe, name: "titlecase" }] });
73
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ModalReferredComponent, decorators: [{
74
76
  type: Component,
75
- args: [{ selector: 'cod-modal-referred', template: "<main *ngIf=\"visibility\">\n <div @fade class=\"modal_container\">\n <div class=\"header_modal\">\n <h1>Datos de quien lo refiere</h1>\n <button (click)=\"closeModal()\">x</button>\n </div>\n <div class=\"grid_container\">\n <div>\n <section\n id=\"container\"\n class=\"flex flex-column bg-white border-round-2xl\"\n >\n <form\n autocomplete=\"off\"\n (ngSubmit)=\"search(searchUserForm)\"\n class=\"form\"\n [formGroup]=\"searchUserForm\"\n >\n <input\n placeholder=\"Buscar por nombre, documento o tel\u00E9fono\"\n [formControl]=\"$any(searchUserForm.controls['searchUser'])\"\n type=\"text\"\n pInputText\n />\n <p-button\n type=\"submit\"\n label=\"Buscar\"\n icon=\"pi pi-search\"\n [loading]=\"loading[0]\"\n (onClick)=\"load(0, searchUserForm)\"\n ></p-button>\n </form>\n </section>\n\n <div *ngIf=\"userExists\" class=\"referrerInformation\">\n <section class=\"userList\">\n <table class=\"table_container\">\n <tr class=\"header_table\">\n <th>Documento</th>\n <th>Nombres</th>\n <th>Apellidos</th>\n <th>Email</th>\n <th>Telefono</th>\n <th>Rol</th>\n <th>Admin</th>\n </tr>\n <tr *ngFor=\"let user of allUsers\" (click)=\"selectUser(user)\" class=\"body_table\">\n <td>{{ user.id_card }}</td>\n <td>{{ user.name | titlecase }}</td>\n <td>{{ user.last_name | titlecase }}</td>\n <td>{{ user.email }}</td>\n <td>{{ user.phone_number }}</td>\n <td>{{ user.role }}</td>\n <td>\n <p-button\n type=\"submit\"\n icon=\"pi pi-chevron-circle-right\"\n (onClick)=\"load(0, searchUserForm)\"\n ></p-button>\n </td>\n </tr>\n </table>\n </section>\n </div>\n </div>\n </div>\n </div>\n</main>\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100%;width:100vw;transition:all .5s;z-index:999}main .modal_container{width:85%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin-top:5rem;margin-left:7%;background-color:#fff;border-radius:6px}.userList{overflow:auto}.btn_select{margin:2px}.table_container{border:1px solid #1c77f7;width:100%;border-collapse:collapse;max-height:300px;overflow:auto;margin:.5rem}.header_table{background-color:#1c77f7;color:#fff}.body_table{background-color:#fff;color:#000;border:1px solid #6c7f7d}td{margin:2px;padding:2px}.header_modal{display:flex;padding:15px 15px 0;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1rem;font-weight:400;margin-bottom:0}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.referrer_Information{overflow:auto}.grid_container{display:grid;grid-template-columns:1fr;padding:10px}form{display:grid;grid-template-columns:1fr;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:5fr 1fr;gap:1rem;justify-content:center;height:90px;align-content:center}.userList{width:-webkit-fill-available}}@media screen and (min-width: 1366px){form{padding:0rem}}\n"] }]
77
+ args: [{ selector: 'cod-modal-referred', template: "<main *ngIf=\"visibility\">\n <div @fade class=\"modal_container\">\n <div class=\"header_modal\">\n <h1>Datos de quien lo refiere</h1>\n <button (click)=\"closeModal()\">x</button>\n </div>\n <div class=\"grid_container\">\n <div>\n <section\n id=\"container\"\n class=\"flex flex-column bg-white border-round-2xl\"\n >\n <form\n autocomplete=\"off\"\n (ngSubmit)=\"search(searchUserForm)\"\n class=\"form\"\n [formGroup]=\"searchUserForm\"\n >\n <input\n placeholder=\"Buscar por nombre, documento o tel\u00E9fono\"\n [formControl]=\"$any(searchUserForm.controls['searchUser'])\"\n type=\"text\"\n pInputText\n />\n <p-button\n type=\"submit\"\n label=\"Buscar\"\n icon=\"pi pi-search\"\n [loading]=\"loading[0]\"\n (onClick)=\"load(0, searchUserForm)\"\n ></p-button>\n </form>\n </section>\n\n <div *ngIf=\"userExists\" class=\"referrerInformation\">\n <section class=\"userList\">\n <table class=\"table_container\">\n <tr class=\"header_table\">\n <th>Documento</th>\n <th>Nombres</th>\n <th>Apellidos</th>\n <th>Email</th>\n <th>Telefono</th>\n <th>Rol</th>\n <th>Admin</th>\n </tr>\n <tr *ngFor=\"let user of allUsers\" (click)=\"selectUser(user)\" class=\"body_table\">\n <td>{{ user.id_card }}</td>\n <td>{{ user.name | titlecase }}</td>\n <td>{{ user.last_name | titlecase }}</td>\n <td>{{ user.email }}</td>\n <td>{{ user.phone_number }}</td>\n <td>{{ user.role }}</td>\n <td>\n <p-button\n type=\"submit\"\n icon=\"pi pi-chevron-circle-right\"\n (click)=\"selectUser(user)\"\n ></p-button>\n </td>\n </tr>\n </table>\n\n\n <p-table [value]=\"allUsers\" [scrollable]=\"true\" scrollHeight=\"200px\" [tableStyle]=\"{'min-width': '50rem'}\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th>Documento</th>\n <th>Nombres</th>\n <th>Apellidos</th>\n <th>Email</th>\n <th>Telefono</th>\n <th>Rol</th>\n <th>Admin</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-user>\n <tr>\n <td>{{user.id_card}}</td>\n <td>{{user.name}}</td>\n <td>{{user.last_name}}</td>\n <td>{{user.email}}</td>\n <td>{{user.phone_number}}</td>\n <td>{{user.role}}</td>\n <td>\n <p-button\n type=\"submit\"\n icon=\"pi pi-chevron-circle-right\"\n (click)=\"selectUser(user)\"\n ></p-button>\n </td>\n </tr>\n </ng-template>\n </p-table>\n </section>\n </div>\n </div>\n </div>\n </div>\n</main>\n", styles: ["@media screen and (min-width: 320px){main{background:rgba(0,0,0,.472);color:#fff;position:fixed;top:0;left:0;height:100%;width:100vw;transition:all .5s;z-index:999}main .modal_container{width:85%;height:-moz-fit-content;height:fit-content;position:absolute;inset:0;margin-top:5rem;margin-left:7%;background-color:#fff;border-radius:6px}.userList{overflow:auto}.btn_select{margin:2px}.table_container{border:1px solid #1c77f7;width:100%;border-collapse:collapse;max-height:300px;overflow:auto;margin:.5rem}.header_table{background-color:#1c77f7;color:#fff}.body_table{background-color:#fff;color:#000;border:1px solid #6c7f7d}td{margin:2px;padding:2px}.header_modal{display:flex;padding:15px 15px 0;align-items:center}.header_modal h1{padding:.5rem;background-color:#1c77f7;color:#fff;width:100%;border-radius:10px;font-size:1rem;font-weight:400;margin-bottom:0}.header_modal button{margin-left:auto;font-size:26px;padding:1.2rem;font-weight:200;color:#6c7f7d;display:flex;width:25px;height:25px;align-items:center;justify-content:center;transition:50ms;background-color:transparent;border:none}.header_modal button:hover{cursor:pointer;border-radius:50%;background-color:#d4d4d4}.referrer_Information{overflow:auto}.grid_container{display:grid;grid-template-columns:1fr;padding:10px}form{display:grid;grid-template-columns:1fr;gap:.25rem;justify-content:center;padding:0 1rem}.buttons-container{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;align-items:center;justify-items:center;align-content:center}}@media screen and (min-width: 768px){form{display:grid;grid-template-columns:5fr 1fr;gap:1rem;justify-content:center;height:90px;align-content:center}.userList{width:-webkit-fill-available}}@media screen and (min-width: 1366px){form{padding:0rem}}\n"] }]
76
78
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.BaseService }, { type: i3.UserService }]; }, propDecorators: { visibility: [{
77
79
  type: Input
78
80
  }], userSelect: [{
@@ -80,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
80
82
  }], modalClose: [{
81
83
  type: Output
82
84
  }] } });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtcmVmZXJyZWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9tb2RhbC1yZWZlcnJlZC9tb2RhbC1yZWZlcnJlZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL21vZGFsLXJlZmVycmVkL21vZGFsLXJlZmVycmVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlwRSxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7Ozs7Ozs7QUFPL0IsTUFBTSxPQUFPLHNCQUFzQjtJQVVqQyxZQUNVLEVBQWUsRUFDZixXQUF3QixFQUN4QixXQUF3QjtRQUZ4QixPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFaekIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUMzQixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyQyxlQUFVLEdBQUcsSUFBSSxZQUFZLENBQVUsS0FBSyxDQUFDLENBQUM7UUFHeEQsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUU1QixZQUFPLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQU1wQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNsQyxVQUFVLEVBQUUsQ0FBQyxFQUFFLEVBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFO1NBQ3pGLENBQUMsQ0FBQztRQUVILE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDaEUsSUFBSSxpQkFBaUIsRUFBRTtZQUNyQixpQkFBaUIsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2pELCtCQUErQjtZQUNqQyxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFVO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBVSxFQUFFLElBQWU7UUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDM0IsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBZTtRQUNwQixJQUFJLE9BQU8sR0FBaUI7WUFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFO1lBQ3RDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVU7U0FDN0IsQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDMUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFekIsSUFBSSxRQUFRLENBQUMsSUFBSSxJQUFJLElBQUksRUFBRTtnQkFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUM7b0JBQ1IsS0FBSyxFQUFFLFNBQVM7b0JBQ2hCLElBQUksRUFBRSwrQ0FBK0M7b0JBQ3JELElBQUksRUFBRSxPQUFPO2lCQUNkLENBQUMsQ0FBQzthQUNKO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0JBQzlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzVCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzttSEF2RVUsc0JBQXNCO3VHQUF0QixzQkFBc0IsaUtDWm5DLG0wRUFvRUE7MkZEeERhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxvQkFBb0I7c0pBS3JCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS91dGlscy9iYXNlLXNlcnZpY2UvYmFzZS5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy91c2VyLXNlcnZpY2UvdXNlci1zZXJ2aWNlJztcbmltcG9ydCB7IGdldFN0dWRlbnRScSB9IGZyb20gJy4uLy4uL2NvcmUvbW9kZWxzL3VzZXIvdXNlci1ycS5tb2RlbCc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NvZC1tb2RhbC1yZWZlcnJlZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1yZWZlcnJlZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21vZGFsLXJlZmVycmVkLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbFJlZmVycmVkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgdmlzaWJpbGl0eTogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KCkgdXNlclNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgbW9kYWxDbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHNlYXJjaFVzZXJGb3JtITogRm9ybUdyb3VwO1xuICB1c2VyRXhpc3RzOiBib29sZWFuID0gZmFsc2U7XG4gIGFsbFVzZXJzOiBhbnk7XG4gIGxvYWRpbmcgPSBbZmFsc2UsIGZhbHNlLCBmYWxzZSwgZmFsc2VdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgYmFzZVNlcnZpY2U6IEJhc2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gIH1cblxuICBjbG9zZU1vZGFsKCkge1xuICAgIHRoaXMudmlzaWJpbGl0eSA9IGZhbHNlO1xuICAgIHRoaXMubW9kYWxDbG9zZS5lbWl0KGZhbHNlKTtcbiAgfVxuXG4gIGluaXRGb3JtKCkge1xuICAgIHRoaXMuc2VhcmNoVXNlckZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIHNlYXJjaFVzZXI6IFsnJyxbVmFsaWRhdG9ycy5yZXF1aXJlZCxWYWxpZGF0b3JzLm1pbkxlbmd0aCg0KSxWYWxpZGF0b3JzLm1heExlbmd0aCgzMCldLF0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBzZWFyY2hVc2VyQ29udHJvbCA9IHRoaXMuc2VhcmNoVXNlckZvcm0uZ2V0KCdzZWFyY2hVc2VyJyk7XG4gICAgaWYgKHNlYXJjaFVzZXJDb250cm9sKSB7XG4gICAgICBzZWFyY2hVc2VyQ29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICAvLyB0aGlzLm1vZGFsQ2xvc2UuZW1pdChmYWxzZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RVc2VyKGRhdGEgOiBhbnkpe1xuICAgIHRoaXMudXNlclNlbGVjdC5lbWl0KGRhdGEpO1xuICB9XG5cbiAgbG9hZChpbmRleDogYW55LCBmb3JtOiBGb3JtR3JvdXApIHtcbiAgICB0aGlzLmxvYWRpbmdbaW5kZXhdID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLmxvYWRpbmdbaW5kZXhdID0gZmFsc2UpLCAxMDAwKTtcbiAgICB0aGlzLnNlYXJjaChmb3JtKTtcbiAgfVxuXG4gIHNlYXJjaChmb3JtOiBGb3JtR3JvdXApIHtcbiAgICBsZXQgcmVxdWVzdDogZ2V0U3R1ZGVudFJxID0ge1xuICAgICAgdG9rZW46IHRoaXMuYmFzZVNlcnZpY2UuZ2V0VXNlclRva2VuKCksXG4gICAgICBwYXJhbTogZm9ybS52YWx1ZS5zZWFyY2hVc2VyLFxuICAgIH07XG4gICAgY29uc29sZS5sb2cocmVxdWVzdCk7XG5cbiAgICB0aGlzLnVzZXJTZXJ2aWNlLmdldFN0dWRlbnQocmVxdWVzdCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgY29uc29sZS5sb2cocmVzcG9uc2UuZGF0YSk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLmRhdGEgPT0gbnVsbCkge1xuICAgICAgICAgIHRoaXMudXNlckV4aXN0cyA9IGZhbHNlO1xuICAgICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgICB0aXRsZTogJ09vcHMuLi4nLFxuICAgICAgICAgICAgdGV4dDogJ05vIGhheSB1c3VhcmlvcyBjb24gbG9zIHBhcsOhbWV0cm9zIGluZ3Jlc2Fkb3MnLFxuICAgICAgICAgICAgaWNvbjogJ2Vycm9yJyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnVzZXJFeGlzdHMgPSB0cnVlO1xuICAgICAgICAgIHRoaXMuYWxsVXNlcnMgPSByZXNwb25zZS5kYXRhO1xuICAgICAgICAgIGNvbnNvbGUubG9nKHJlc3BvbnNlLmRhdGEpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG59XG4iLCI8bWFpbiAqbmdJZj1cInZpc2liaWxpdHlcIj5cbiAgPGRpdiBAZmFkZSBjbGFzcz1cIm1vZGFsX2NvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfbW9kYWxcIj5cbiAgICAgIDxoMT5EYXRvcyBkZSBxdWllbiBsbyByZWZpZXJlPC9oMT5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiPng8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZF9jb250YWluZXJcIj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxzZWN0aW9uXG4gICAgICAgICAgaWQ9XCJjb250YWluZXJcIlxuICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBiZy13aGl0ZSBib3JkZXItcm91bmQtMnhsXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxmb3JtXG4gICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgKG5nU3VibWl0KT1cInNlYXJjaChzZWFyY2hVc2VyRm9ybSlcIlxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtXCJcbiAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwic2VhcmNoVXNlckZvcm1cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkJ1c2NhciBwb3Igbm9tYnJlLCBkb2N1bWVudG8gbyB0ZWzDqWZvbm9cIlxuICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiJGFueShzZWFyY2hVc2VyRm9ybS5jb250cm9sc1snc2VhcmNoVXNlciddKVwiXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgcElucHV0VGV4dFxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxwLWJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJCdXNjYXJcIlxuICAgICAgICAgICAgICBpY29uPVwicGkgcGktc2VhcmNoXCJcbiAgICAgICAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZ1swXVwiXG4gICAgICAgICAgICAgIChvbkNsaWNrKT1cImxvYWQoMCwgc2VhcmNoVXNlckZvcm0pXCJcbiAgICAgICAgICAgID48L3AtYnV0dG9uPlxuICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgIDxkaXYgKm5nSWY9XCJ1c2VyRXhpc3RzXCIgY2xhc3M9XCJyZWZlcnJlckluZm9ybWF0aW9uXCI+XG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJ1c2VyTGlzdFwiPlxuICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZV9jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJoZWFkZXJfdGFibGVcIj5cbiAgICAgICAgICAgICAgICAgIDx0aD5Eb2N1bWVudG88L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoPk5vbWJyZXM8L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoPkFwZWxsaWRvczwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGg+RW1haWw8L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoPlRlbGVmb25vPC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aD5Sb2w8L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoPkFkbWluPC90aD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgdXNlciBvZiBhbGxVc2Vyc1wiIChjbGljayk9XCJzZWxlY3RVc2VyKHVzZXIpXCIgY2xhc3M9XCJib2R5X3RhYmxlXCI+XG4gICAgICAgICAgICAgICAgICA8dGQ+e3sgdXNlci5pZF9jYXJkIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZD57eyB1c2VyLm5hbWUgfCB0aXRsZWNhc2UgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7IHVzZXIubGFzdF9uYW1lIHwgdGl0bGVjYXNlIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZD57eyB1c2VyLmVtYWlsIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZD57eyB1c2VyLnBob25lX251bWJlciB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQ+e3sgdXNlci5yb2xlIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICAgICAgPHAtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgICAgICBpY29uPVwicGkgcGktY2hldnJvbi1jaXJjbGUtcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAob25DbGljayk9XCJsb2FkKDAsIHNlYXJjaFVzZXJGb3JtKVwiXG4gICAgICAgICAgICAgICAgICA+PC9wLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9tYWluPlxuIl19
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtcmVmZXJyZWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvZC9tb2RhbC1yZWZlcnJlZC9tb2RhbC1yZWZlcnJlZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL21vZGFsLXJlZmVycmVkL21vZGFsLXJlZmVycmVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlwRSxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7Ozs7Ozs7OztBQU8vQixNQUFNLE9BQU8sc0JBQXNCO0lBVWpDLFlBQ1UsRUFBZSxFQUNmLFdBQXdCLEVBQ3hCLFdBQXdCO1FBRnhCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQVp6QixlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzNCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JDLGVBQVUsR0FBRyxJQUFJLFlBQVksQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUd4RCxlQUFVLEdBQVksS0FBSyxDQUFDO1FBRTVCLFlBQU8sR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBTXBDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ2xDLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUU7U0FDekYsQ0FBQyxDQUFDO1FBRUgsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNoRSxJQUFJLGlCQUFpQixFQUFFO1lBQ3JCLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDakQsK0JBQStCO1lBQ2pDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVU7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFVLEVBQUUsSUFBZTtRQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQztRQUMzQixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFlO1FBQ3BCLElBQUksT0FBTyxHQUFpQjtZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUU7WUFDdEMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVTtTQUM3QixDQUFDO1FBQ0YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUMxRCxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV6QixJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFO2dCQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztnQkFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQztvQkFDUixLQUFLLEVBQUUsU0FBUztvQkFDaEIsSUFBSSxFQUFFLCtDQUErQztvQkFDckQsSUFBSSxFQUFFLE9BQU87aUJBQ2QsQ0FBQyxDQUFDO2FBQ0o7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztnQkFDOUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDNUI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O21IQXZFVSxzQkFBc0I7dUdBQXRCLHNCQUFzQixpS0NabkMsa21IQW9HQTsyRkR4RmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG9CQUFvQjtzSkFLckIsVUFBVTtzQkFBbEIsS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3V0aWxzL2Jhc2Utc2VydmljZS9iYXNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb3JlL3NlcnZpY2VzL3VzZXItc2VydmljZS91c2VyLXNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0U3R1ZGVudFJxIH0gZnJvbSAnLi4vLi4vY29yZS9tb2RlbHMvdXNlci91c2VyLXJxLm1vZGVsJztcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29kLW1vZGFsLXJlZmVycmVkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLXJlZmVycmVkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kYWwtcmVmZXJyZWQuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsUmVmZXJyZWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB2aXNpYmlsaXR5OiBib29sZWFuID0gZmFsc2U7XG4gIEBPdXRwdXQoKSB1c2VyU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBtb2RhbENsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG5cbiAgc2VhcmNoVXNlckZvcm0hOiBGb3JtR3JvdXA7XG4gIHVzZXJFeGlzdHM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgYWxsVXNlcnM6IGFueTtcbiAgbG9hZGluZyA9IFtmYWxzZSwgZmFsc2UsIGZhbHNlLCBmYWxzZV07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBiYXNlU2VydmljZTogQmFzZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2VcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgfVxuXG4gIGNsb3NlTW9kYWwoKSB7XG4gICAgdGhpcy52aXNpYmlsaXR5ID0gZmFsc2U7XG4gICAgdGhpcy5tb2RhbENsb3NlLmVtaXQoZmFsc2UpO1xuICB9XG5cbiAgaW5pdEZvcm0oKSB7XG4gICAgdGhpcy5zZWFyY2hVc2VyRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgc2VhcmNoVXNlcjogWycnLFtWYWxpZGF0b3JzLnJlcXVpcmVkLFZhbGlkYXRvcnMubWluTGVuZ3RoKDQpLFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMwKV0sXSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlYXJjaFVzZXJDb250cm9sID0gdGhpcy5zZWFyY2hVc2VyRm9ybS5nZXQoJ3NlYXJjaFVzZXInKTtcbiAgICBpZiAoc2VhcmNoVXNlckNvbnRyb2wpIHtcbiAgICAgIHNlYXJjaFVzZXJDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgIC8vIHRoaXMubW9kYWxDbG9zZS5lbWl0KGZhbHNlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdFVzZXIoZGF0YSA6IGFueSl7XG4gICAgdGhpcy51c2VyU2VsZWN0LmVtaXQoZGF0YSk7XG4gIH1cblxuICBsb2FkKGluZGV4OiBhbnksIGZvcm06IEZvcm1Hcm91cCkge1xuICAgIHRoaXMubG9hZGluZ1tpbmRleF0gPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMubG9hZGluZ1tpbmRleF0gPSBmYWxzZSksIDEwMDApO1xuICAgIHRoaXMuc2VhcmNoKGZvcm0pO1xuICB9XG5cbiAgc2VhcmNoKGZvcm06IEZvcm1Hcm91cCkge1xuICAgIGxldCByZXF1ZXN0OiBnZXRTdHVkZW50UnEgPSB7XG4gICAgICB0b2tlbjogdGhpcy5iYXNlU2VydmljZS5nZXRVc2VyVG9rZW4oKSxcbiAgICAgIHBhcmFtOiBmb3JtLnZhbHVlLnNlYXJjaFVzZXIsXG4gICAgfTtcbiAgICBjb25zb2xlLmxvZyhyZXF1ZXN0KTtcblxuICAgIHRoaXMudXNlclNlcnZpY2UuZ2V0U3R1ZGVudChyZXF1ZXN0KS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhyZXNwb25zZS5kYXRhKTtcblxuICAgICAgICBpZiAocmVzcG9uc2UuZGF0YSA9PSBudWxsKSB7XG4gICAgICAgICAgdGhpcy51c2VyRXhpc3RzID0gZmFsc2U7XG4gICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgIHRpdGxlOiAnT29wcy4uLicsXG4gICAgICAgICAgICB0ZXh0OiAnTm8gaGF5IHVzdWFyaW9zIGNvbiBsb3MgcGFyw6FtZXRyb3MgaW5ncmVzYWRvcycsXG4gICAgICAgICAgICBpY29uOiAnZXJyb3InLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMudXNlckV4aXN0cyA9IHRydWU7XG4gICAgICAgICAgdGhpcy5hbGxVc2VycyA9IHJlc3BvbnNlLmRhdGE7XG4gICAgICAgICAgY29uc29sZS5sb2cocmVzcG9uc2UuZGF0YSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbn1cbiIsIjxtYWluICpuZ0lmPVwidmlzaWJpbGl0eVwiPlxuICA8ZGl2IEBmYWRlIGNsYXNzPVwibW9kYWxfY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlcl9tb2RhbFwiPlxuICAgICAgPGgxPkRhdG9zIGRlIHF1aWVuIGxvIHJlZmllcmU8L2gxPlxuICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiY2xvc2VNb2RhbCgpXCI+eDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJncmlkX2NvbnRhaW5lclwiPlxuICAgICAgPGRpdj5cbiAgICAgICAgPHNlY3Rpb25cbiAgICAgICAgICBpZD1cImNvbnRhaW5lclwiXG4gICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGJnLXdoaXRlIGJvcmRlci1yb3VuZC0yeGxcIlxuICAgICAgICA+XG4gICAgICAgICAgPGZvcm1cbiAgICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICAgICAgICAobmdTdWJtaXQpPVwic2VhcmNoKHNlYXJjaFVzZXJGb3JtKVwiXG4gICAgICAgICAgICBjbGFzcz1cImZvcm1cIlxuICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJzZWFyY2hVc2VyRm9ybVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiQnVzY2FyIHBvciBub21icmUsIGRvY3VtZW50byBvIHRlbMOpZm9ub1wiXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KHNlYXJjaFVzZXJGb3JtLmNvbnRyb2xzWydzZWFyY2hVc2VyJ10pXCJcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHAtYnV0dG9uXG4gICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICBsYWJlbD1cIkJ1c2NhclwiXG4gICAgICAgICAgICAgIGljb249XCJwaSBwaS1zZWFyY2hcIlxuICAgICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nWzBdXCJcbiAgICAgICAgICAgICAgKG9uQ2xpY2spPVwibG9hZCgwLCBzZWFyY2hVc2VyRm9ybSlcIlxuICAgICAgICAgICAgPjwvcC1idXR0b24+XG4gICAgICAgICAgPC9mb3JtPlxuICAgICAgICA8L3NlY3Rpb24+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInVzZXJFeGlzdHNcIiBjbGFzcz1cInJlZmVycmVySW5mb3JtYXRpb25cIj5cbiAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cInVzZXJMaXN0XCI+XG4gICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImhlYWRlcl90YWJsZVwiPlxuICAgICAgICAgICAgICAgICAgPHRoPkRvY3VtZW50bzwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGg+Tm9tYnJlczwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGg+QXBlbGxpZG9zPC90aD5cbiAgICAgICAgICAgICAgICAgIDx0aD5FbWFpbDwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGg+VGVsZWZvbm88L3RoPlxuICAgICAgICAgICAgICAgICAgPHRoPlJvbDwvdGg+XG4gICAgICAgICAgICAgICAgICA8dGg+QWRtaW48L3RoPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCB1c2VyIG9mIGFsbFVzZXJzXCIgKGNsaWNrKT1cInNlbGVjdFVzZXIodXNlcilcIiBjbGFzcz1cImJvZHlfdGFibGVcIj5cbiAgICAgICAgICAgICAgICAgIDx0ZD57eyB1c2VyLmlkX2NhcmQgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7IHVzZXIubmFtZSB8IHRpdGxlY2FzZSB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQ+e3sgdXNlci5sYXN0X25hbWUgfCB0aXRsZWNhc2UgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7IHVzZXIuZW1haWwgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7IHVzZXIucGhvbmVfbnVtYmVyIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZD57eyB1c2VyLnJvbGUgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICA8cC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJwaSBwaS1jaGV2cm9uLWNpcmNsZS1yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RVc2VyKHVzZXIpXCJcbiAgICAgICAgICAgICAgICAgID48L3AtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3RhYmxlPlxuXG5cbiAgICAgICAgICAgICAgPHAtdGFibGUgW3ZhbHVlXT1cImFsbFVzZXJzXCIgW3Njcm9sbGFibGVdPVwidHJ1ZVwiIHNjcm9sbEhlaWdodD1cIjIwMHB4XCIgW3RhYmxlU3R5bGVdPVwieydtaW4td2lkdGgnOiAnNTByZW0nfVwiPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgIDx0aD5Eb2N1bWVudG88L3RoPlxuICAgICAgICAgICAgICAgICAgICAgIDx0aD5Ob21icmVzPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICA8dGg+QXBlbGxpZG9zPC90aD5cbiAgICAgICAgICAgICAgICAgICAgICA8dGg+RW1haWw8L3RoPlxuICAgICAgICAgICAgICAgICAgICAgIDx0aD5UZWxlZm9ubzwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgPHRoPlJvbDwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgPHRoPkFkbWluPC90aD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LXVzZXI+XG4gICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3VzZXIuaWRfY2FyZH19PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3VzZXIubmFtZX19PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3VzZXIubGFzdF9uYW1lfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7dXNlci5lbWFpbH19PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e3VzZXIucGhvbmVfbnVtYmVyfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7dXNlci5yb2xlfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJwaSBwaS1jaGV2cm9uLWNpcmNsZS1yaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RVc2VyKHVzZXIpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L3AtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9wLXRhYmxlPlxuICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L21haW4+XG4iXX0=
@@ -78,6 +78,7 @@ export class CodFormStepFiveComponent extends CodFormSteps {
78
78
  document_refers: [{ value: '', disabled: true }],
79
79
  name_refers: [{ value: '', disabled: true }],
80
80
  phone_refers: [{ value: '', disabled: true }],
81
+ email_refers: [{ value: '', disabled: true }],
81
82
  });
82
83
  this.codFormStepFive.controls['marketing_reasons'].valueChanges.subscribe(change => {
83
84
  if (change === '4') {
@@ -159,7 +160,7 @@ export class CodFormStepFiveComponent extends CodFormSteps {
159
160
  this.codFormStepFive.controls['disability'].setValue(this.initialData.aditional_information.disability);
160
161
  this.codFormStepFive.controls['health_regimen'].setValue(this.initialData.aditional_information.health_regimen);
161
162
  this.codFormStepFive.controls['observation'].setValue(this.initialData.aditional_information.observation);
162
- this.codFormStepFive.controls['code_refers'].setValue(this.initialData.aditional_information.referred_user);
163
+ this.codFormStepFive.controls['code_refers'].setValue(this.initialData.aditional_information.code_refers);
163
164
  }
164
165
  cleanComponent() {
165
166
  this.resetLocalStorage(this.controls);
@@ -169,13 +170,15 @@ export class CodFormStepFiveComponent extends CodFormSteps {
169
170
  this.modalVisible = respons;
170
171
  }
171
172
  referredUser(data) {
172
- console.log('step5' + data);
173
+ console.log('step5');
174
+ console.log(data);
173
175
  if (data) {
176
+ this.visbleReferred = true;
174
177
  this.codFormStepFive.controls['code_refers'].setValue(data['code']);
175
178
  this.codFormStepFive.controls['document_refers'].setValue(data['id_card']);
176
179
  this.codFormStepFive.controls['name_refers'].setValue(data['name']);
177
- this.codFormStepFive.controls['phone_refers'].setValue(data['phone_number ']);
178
- this.visbleReferred = true;
180
+ this.codFormStepFive.controls['phone_refers'].setValue(data['phone_number']);
181
+ this.codFormStepFive.controls['email_refers'].setValue(data['email']);
179
182
  }
180
183
  else {
181
184
  this.visbleReferred = false;
@@ -183,14 +186,15 @@ export class CodFormStepFiveComponent extends CodFormSteps {
183
186
  this.codFormStepFive.controls['document_refers'].setValue(null);
184
187
  this.codFormStepFive.controls['name_refers'].setValue(null);
185
188
  this.codFormStepFive.controls['phone_refers'].setValue(null);
189
+ this.codFormStepFive.controls['email_refers'].setValue(null);
186
190
  }
187
191
  }
188
192
  }
189
193
  CodFormStepFiveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodFormStepFiveComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ParameterService }], target: i0.ɵɵFactoryTarget.Component });
190
- CodFormStepFiveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodFormStepFiveComponent, selector: "app-cod-form-step-five", inputs: { userRole: "userRole", initialData: "initialData" }, outputs: { changeStepEvent: "changeStepEvent", action: "action" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form autocomplete=\"off\" [formGroup]=\"codFormStepFive\" class=\"grid\">\n <div class=\"col-12 md:col-6\">\n <cod-modal-referred\n *ngIf=\"modalVisible\"\n [visibility]=\"modalVisible\"\n (modalClose)=\"closeModal($event)\"\n (userSelect)=\"referredUser($event)\"\n ></cod-modal-referred>\n\n <ipt-select\n [control]=\"codFormStepFive.controls['marketing_reasons']\"\n [initialValue]=\"codFormStepFive.controls['marketing_reasons'].value\"\n (eventSelect)=\"selectMarketingReasons($event)\"\n [data]=\"marketingReasons\"\n [defaultText]=\"'\u00BFC\u00F3mo se enter\u00F3 del programa?'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Discapacidad'\"\n [control]=\"codFormStepFive.controls['disability']\"\n ></ipt-input>\n </div>\n <div class=\"col-12 md:col-6\">\n <ipt-select\n [control]=\"codFormStepFive.controls['study_reasons']\"\n [initialValue]=\"codFormStepFive.controls['study_reasons'].value\"\n (eventSelect)=\"selectStudyReasons($event)\"\n [data]=\"studyReasons\"\n [defaultText]=\"'Motivo'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'R\u00E9gimen de salud'\"\n [control]=\"codFormStepFive.controls['health_regimen']\"\n ></ipt-input>\n </div>\n <div class=\"col-12 mt-4\">\n <h3 *ngIf=\"true\">Datos del referido</h3>\n <div *ngIf=\"true\" class=\"referred_user_data\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Documento'\"\n [control]=\"codFormStepFive.controls['document_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Nombres'\"\n [control]=\"codFormStepFive.controls['name_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Tel\u00E9fono'\"\n [control]=\"codFormStepFive.controls['phone_refers']\"\n ></ipt-input>\n </div>\n <span class=\"p-float-label\">\n <textarea\n id=\"float-input\"\n rows=\"4\"\n cols=\"30\"\n pInputTextarea\n formControlName=\"observation\"\n ></textarea>\n <label for=\"float-input\">Observaciones</label>\n </span>\n <div class=\"flex flex-wrap justify-content-between gap-2\">\n <div\n *ngFor=\"let option of multiculturalities; index as i\"\n class=\"field-checkbox mt-4 flex align-items-center\"\n >\n <mat-checkbox\n [formControlName]=\"'multiculturalism' + '_' + (i + 1)\"\n class=\"example-margin\"\n ></mat-checkbox>\n <label [for]=\"option.code\">{{ option.name }}</label>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 p-4 font-bold\">\n <p>\n * El estudiante o titular se comprometen a cancelar las cuotas\n establecidas en este contrato, los primeros 5 (cinco) d\u00EDas del mes. En\n caso de querer retirarse, deber\u00E1 informar por escrito 30 (treinta) d\u00EDas\n antes y cancelar lo correspondiente hasta la fecha definida de retiro,\n para poder obtener su paz y salvo.\n </p>\n <br /><br />\n <div class=\"flex gap-2\">\n <mat-checkbox\n formControlName=\"terms\"\n class=\"example-margin\"\n ></mat-checkbox>\n <!-- <p-checkbox [formControl]=\"getCheckboxControl()\"></p-checkbox> -->\n <!-- <ipt-checkbox [control]=\"codFormStepFive.controls['terms']\" [checkboxOption]=\"termsCheckboxStatus\"></ipt-checkbox> -->\n <p>\n DECLARO HABER LE\u00CDDO Y ACEPTO LOS T\u00C9RMINOS Y CONDICIONES DE LAS POL\u00CDTICAS\n ESTABLECIDAS EN LA INSTITUCI\u00D3N.\n </p>\n </div>\n </div>\n</form>\n\n<div class=\"flex mt-3 align-items-center gap-3\">\n <span\n *ngIf=\"\n (codFormStepFive.invalid && codFormStepFive.touched) ||\n (!termsCheckboxStatus && codFormStepFive.touched)\n \"\n class=\"\n text-red-500\n font-bold\n text-center\n mt-1\n py-2\n bg-red-100\n w-full\n border-round-xl\n \"\n >{{ errorMessage }}</span\n >\n <button\n type=\"submit\"\n class=\"ml-auto p-button-success p-button-sm\"\n (click)=\"sendForm()\"\n pButton\n [label]=\"sendFormMsg\"\n icon=\"pi pi-check\"\n ></button>\n</div>\n", styles: ["@media screen and (min-width: 320px){.referred_user_data{display:flex;flex-direction:row;justify-content:space-between}}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { kind: "component", type: i5.SelectComponent, selector: "ipt-select", inputs: ["isRequired", "data", "defaultText", "selectCode", "disabledSel", "initialValue", "control"], outputs: ["eventSelect"] }, { kind: "component", type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i8.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize"], outputs: ["onResize"] }, { kind: "component", type: i9.ModalReferredComponent, selector: "cod-modal-referred", inputs: ["visibility"], outputs: ["userSelect", "modalClose"] }] });
194
+ CodFormStepFiveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: CodFormStepFiveComponent, selector: "app-cod-form-step-five", inputs: { userRole: "userRole", initialData: "initialData" }, outputs: { changeStepEvent: "changeStepEvent", action: "action" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form autocomplete=\"off\" [formGroup]=\"codFormStepFive\" class=\"grid\">\n <div class=\"col-12 md:col-6\">\n <cod-modal-referred\n *ngIf=\"modalVisible\"\n [visibility]=\"modalVisible\"\n (modalClose)=\"closeModal($event)\"\n (userSelect)=\"referredUser($event)\"\n ></cod-modal-referred>\n\n <ipt-select\n [control]=\"codFormStepFive.controls['marketing_reasons']\"\n [initialValue]=\"codFormStepFive.controls['marketing_reasons'].value\"\n (eventSelect)=\"selectMarketingReasons($event)\"\n [data]=\"marketingReasons\"\n [defaultText]=\"'\u00BFC\u00F3mo se enter\u00F3 del programa?'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Discapacidad'\"\n [control]=\"codFormStepFive.controls['disability']\"\n ></ipt-input>\n </div>\n <div class=\"col-12 md:col-6\">\n <ipt-select\n [control]=\"codFormStepFive.controls['study_reasons']\"\n [initialValue]=\"codFormStepFive.controls['study_reasons'].value\"\n (eventSelect)=\"selectStudyReasons($event)\"\n [data]=\"studyReasons\"\n [defaultText]=\"'Motivo'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'R\u00E9gimen de salud'\"\n [control]=\"codFormStepFive.controls['health_regimen']\"\n ></ipt-input>\n </div>\n <div class=\"col-12\">\n <h3 *ngIf=\"true\" class=\"referred_title\">Datos del referido</h3>\n <div *ngIf=\"true\" class=\"referred_user_data\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Documento'\"\n [control]=\"codFormStepFive.controls['document_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Nombres'\"\n [control]=\"codFormStepFive.controls['name_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Tel\u00E9fono'\"\n [control]=\"codFormStepFive.controls['phone_refers']\"\n ></ipt-input>\n </div>\n <span class=\"p-float-label\">\n <textarea\n id=\"float-input\"\n rows=\"4\"\n cols=\"30\"\n pInputTextarea\n formControlName=\"observation\"\n ></textarea>\n <label for=\"float-input\">Observaciones</label>\n </span>\n <div class=\"flex flex-wrap justify-content-between gap-2\">\n <div\n *ngFor=\"let option of multiculturalities; index as i\"\n class=\"field-checkbox mt-4 flex align-items-center\"\n >\n <mat-checkbox\n [formControlName]=\"'multiculturalism' + '_' + (i + 1)\"\n class=\"example-margin\"\n ></mat-checkbox>\n <label [for]=\"option.code\">{{ option.name }}</label>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 p-4 font-bold\">\n <p>\n * El estudiante o titular se comprometen a cancelar las cuotas\n establecidas en este contrato, los primeros 5 (cinco) d\u00EDas del mes. En\n caso de querer retirarse, deber\u00E1 informar por escrito 30 (treinta) d\u00EDas\n antes y cancelar lo correspondiente hasta la fecha definida de retiro,\n para poder obtener su paz y salvo.\n </p>\n <br /><br />\n <div class=\"flex gap-2\">\n <mat-checkbox\n formControlName=\"terms\"\n class=\"example-margin\"\n ></mat-checkbox>\n <!-- <p-checkbox [formControl]=\"getCheckboxControl()\"></p-checkbox> -->\n <!-- <ipt-checkbox [control]=\"codFormStepFive.controls['terms']\" [checkboxOption]=\"termsCheckboxStatus\"></ipt-checkbox> -->\n <p>\n DECLARO HABER LE\u00CDDO Y ACEPTO LOS T\u00C9RMINOS Y CONDICIONES DE LAS POL\u00CDTICAS\n ESTABLECIDAS EN LA INSTITUCI\u00D3N.\n </p>\n </div>\n </div>\n</form>\n\n<div class=\"flex mt-3 align-items-center gap-3\">\n <span\n *ngIf=\"\n (codFormStepFive.invalid && codFormStepFive.touched) ||\n (!termsCheckboxStatus && codFormStepFive.touched)\n \"\n class=\"\n text-red-500\n font-bold\n text-center\n mt-1\n py-2\n bg-red-100\n w-full\n border-round-xl\n \"\n >{{ errorMessage }}</span\n >\n <button\n type=\"submit\"\n class=\"ml-auto p-button-success p-button-sm\"\n (click)=\"sendForm()\"\n pButton\n [label]=\"sendFormMsg\"\n icon=\"pi pi-check\"\n ></button>\n</div>\n", styles: ["@media screen and (min-width: 320px){.referred_user_data{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:.8rem;margin-bottom:2rem;border:1px solid #ced4da;border-radius:6px;padding:.5rem}.referred_title{font-size:.7rem;font-weight:500;padding-left:1rem;color:#6c757d}}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.InputComponent, selector: "ipt-input", inputs: ["inputType", "placeHolder", "validateText", "withPipe", "list", "iconUrl", "control", "prefix", "thousands", "decimal"], outputs: ["dateSelected"] }, { kind: "component", type: i5.SelectComponent, selector: "ipt-select", inputs: ["isRequired", "data", "defaultText", "selectCode", "disabledSel", "initialValue", "control"], outputs: ["eventSelect"] }, { kind: "component", type: i6.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i8.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize"], outputs: ["onResize"] }, { kind: "component", type: i9.ModalReferredComponent, selector: "cod-modal-referred", inputs: ["visibility"], outputs: ["userSelect", "modalClose"] }] });
191
195
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: CodFormStepFiveComponent, decorators: [{
192
196
  type: Component,
193
- args: [{ selector: 'app-cod-form-step-five', template: "<form autocomplete=\"off\" [formGroup]=\"codFormStepFive\" class=\"grid\">\n <div class=\"col-12 md:col-6\">\n <cod-modal-referred\n *ngIf=\"modalVisible\"\n [visibility]=\"modalVisible\"\n (modalClose)=\"closeModal($event)\"\n (userSelect)=\"referredUser($event)\"\n ></cod-modal-referred>\n\n <ipt-select\n [control]=\"codFormStepFive.controls['marketing_reasons']\"\n [initialValue]=\"codFormStepFive.controls['marketing_reasons'].value\"\n (eventSelect)=\"selectMarketingReasons($event)\"\n [data]=\"marketingReasons\"\n [defaultText]=\"'\u00BFC\u00F3mo se enter\u00F3 del programa?'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Discapacidad'\"\n [control]=\"codFormStepFive.controls['disability']\"\n ></ipt-input>\n </div>\n <div class=\"col-12 md:col-6\">\n <ipt-select\n [control]=\"codFormStepFive.controls['study_reasons']\"\n [initialValue]=\"codFormStepFive.controls['study_reasons'].value\"\n (eventSelect)=\"selectStudyReasons($event)\"\n [data]=\"studyReasons\"\n [defaultText]=\"'Motivo'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'R\u00E9gimen de salud'\"\n [control]=\"codFormStepFive.controls['health_regimen']\"\n ></ipt-input>\n </div>\n <div class=\"col-12 mt-4\">\n <h3 *ngIf=\"true\">Datos del referido</h3>\n <div *ngIf=\"true\" class=\"referred_user_data\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Documento'\"\n [control]=\"codFormStepFive.controls['document_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Nombres'\"\n [control]=\"codFormStepFive.controls['name_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Tel\u00E9fono'\"\n [control]=\"codFormStepFive.controls['phone_refers']\"\n ></ipt-input>\n </div>\n <span class=\"p-float-label\">\n <textarea\n id=\"float-input\"\n rows=\"4\"\n cols=\"30\"\n pInputTextarea\n formControlName=\"observation\"\n ></textarea>\n <label for=\"float-input\">Observaciones</label>\n </span>\n <div class=\"flex flex-wrap justify-content-between gap-2\">\n <div\n *ngFor=\"let option of multiculturalities; index as i\"\n class=\"field-checkbox mt-4 flex align-items-center\"\n >\n <mat-checkbox\n [formControlName]=\"'multiculturalism' + '_' + (i + 1)\"\n class=\"example-margin\"\n ></mat-checkbox>\n <label [for]=\"option.code\">{{ option.name }}</label>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 p-4 font-bold\">\n <p>\n * El estudiante o titular se comprometen a cancelar las cuotas\n establecidas en este contrato, los primeros 5 (cinco) d\u00EDas del mes. En\n caso de querer retirarse, deber\u00E1 informar por escrito 30 (treinta) d\u00EDas\n antes y cancelar lo correspondiente hasta la fecha definida de retiro,\n para poder obtener su paz y salvo.\n </p>\n <br /><br />\n <div class=\"flex gap-2\">\n <mat-checkbox\n formControlName=\"terms\"\n class=\"example-margin\"\n ></mat-checkbox>\n <!-- <p-checkbox [formControl]=\"getCheckboxControl()\"></p-checkbox> -->\n <!-- <ipt-checkbox [control]=\"codFormStepFive.controls['terms']\" [checkboxOption]=\"termsCheckboxStatus\"></ipt-checkbox> -->\n <p>\n DECLARO HABER LE\u00CDDO Y ACEPTO LOS T\u00C9RMINOS Y CONDICIONES DE LAS POL\u00CDTICAS\n ESTABLECIDAS EN LA INSTITUCI\u00D3N.\n </p>\n </div>\n </div>\n</form>\n\n<div class=\"flex mt-3 align-items-center gap-3\">\n <span\n *ngIf=\"\n (codFormStepFive.invalid && codFormStepFive.touched) ||\n (!termsCheckboxStatus && codFormStepFive.touched)\n \"\n class=\"\n text-red-500\n font-bold\n text-center\n mt-1\n py-2\n bg-red-100\n w-full\n border-round-xl\n \"\n >{{ errorMessage }}</span\n >\n <button\n type=\"submit\"\n class=\"ml-auto p-button-success p-button-sm\"\n (click)=\"sendForm()\"\n pButton\n [label]=\"sendFormMsg\"\n icon=\"pi pi-check\"\n ></button>\n</div>\n", styles: ["@media screen and (min-width: 320px){.referred_user_data{display:flex;flex-direction:row;justify-content:space-between}}\n"] }]
197
+ args: [{ selector: 'app-cod-form-step-five', template: "<form autocomplete=\"off\" [formGroup]=\"codFormStepFive\" class=\"grid\">\n <div class=\"col-12 md:col-6\">\n <cod-modal-referred\n *ngIf=\"modalVisible\"\n [visibility]=\"modalVisible\"\n (modalClose)=\"closeModal($event)\"\n (userSelect)=\"referredUser($event)\"\n ></cod-modal-referred>\n\n <ipt-select\n [control]=\"codFormStepFive.controls['marketing_reasons']\"\n [initialValue]=\"codFormStepFive.controls['marketing_reasons'].value\"\n (eventSelect)=\"selectMarketingReasons($event)\"\n [data]=\"marketingReasons\"\n [defaultText]=\"'\u00BFC\u00F3mo se enter\u00F3 del programa?'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Discapacidad'\"\n [control]=\"codFormStepFive.controls['disability']\"\n ></ipt-input>\n </div>\n <div class=\"col-12 md:col-6\">\n <ipt-select\n [control]=\"codFormStepFive.controls['study_reasons']\"\n [initialValue]=\"codFormStepFive.controls['study_reasons'].value\"\n (eventSelect)=\"selectStudyReasons($event)\"\n [data]=\"studyReasons\"\n [defaultText]=\"'Motivo'\"\n ></ipt-select>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'R\u00E9gimen de salud'\"\n [control]=\"codFormStepFive.controls['health_regimen']\"\n ></ipt-input>\n </div>\n <div class=\"col-12\">\n <h3 *ngIf=\"true\" class=\"referred_title\">Datos del referido</h3>\n <div *ngIf=\"true\" class=\"referred_user_data\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Documento'\"\n [control]=\"codFormStepFive.controls['document_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Nombres'\"\n [control]=\"codFormStepFive.controls['name_refers']\"\n ></ipt-input>\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Tel\u00E9fono'\"\n [control]=\"codFormStepFive.controls['phone_refers']\"\n ></ipt-input>\n </div>\n <span class=\"p-float-label\">\n <textarea\n id=\"float-input\"\n rows=\"4\"\n cols=\"30\"\n pInputTextarea\n formControlName=\"observation\"\n ></textarea>\n <label for=\"float-input\">Observaciones</label>\n </span>\n <div class=\"flex flex-wrap justify-content-between gap-2\">\n <div\n *ngFor=\"let option of multiculturalities; index as i\"\n class=\"field-checkbox mt-4 flex align-items-center\"\n >\n <mat-checkbox\n [formControlName]=\"'multiculturalism' + '_' + (i + 1)\"\n class=\"example-margin\"\n ></mat-checkbox>\n <label [for]=\"option.code\">{{ option.name }}</label>\n </div>\n </div>\n </div>\n\n <div class=\"col-12 p-4 font-bold\">\n <p>\n * El estudiante o titular se comprometen a cancelar las cuotas\n establecidas en este contrato, los primeros 5 (cinco) d\u00EDas del mes. En\n caso de querer retirarse, deber\u00E1 informar por escrito 30 (treinta) d\u00EDas\n antes y cancelar lo correspondiente hasta la fecha definida de retiro,\n para poder obtener su paz y salvo.\n </p>\n <br /><br />\n <div class=\"flex gap-2\">\n <mat-checkbox\n formControlName=\"terms\"\n class=\"example-margin\"\n ></mat-checkbox>\n <!-- <p-checkbox [formControl]=\"getCheckboxControl()\"></p-checkbox> -->\n <!-- <ipt-checkbox [control]=\"codFormStepFive.controls['terms']\" [checkboxOption]=\"termsCheckboxStatus\"></ipt-checkbox> -->\n <p>\n DECLARO HABER LE\u00CDDO Y ACEPTO LOS T\u00C9RMINOS Y CONDICIONES DE LAS POL\u00CDTICAS\n ESTABLECIDAS EN LA INSTITUCI\u00D3N.\n </p>\n </div>\n </div>\n</form>\n\n<div class=\"flex mt-3 align-items-center gap-3\">\n <span\n *ngIf=\"\n (codFormStepFive.invalid && codFormStepFive.touched) ||\n (!termsCheckboxStatus && codFormStepFive.touched)\n \"\n class=\"\n text-red-500\n font-bold\n text-center\n mt-1\n py-2\n bg-red-100\n w-full\n border-round-xl\n \"\n >{{ errorMessage }}</span\n >\n <button\n type=\"submit\"\n class=\"ml-auto p-button-success p-button-sm\"\n (click)=\"sendForm()\"\n pButton\n [label]=\"sendFormMsg\"\n icon=\"pi pi-check\"\n ></button>\n</div>\n", styles: ["@media screen and (min-width: 320px){.referred_user_data{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:.8rem;margin-bottom:2rem;border:1px solid #ced4da;border-radius:6px;padding:.5rem}.referred_title{font-size:.7rem;font-weight:500;padding-left:1rem;color:#6c757d}}\n"] }]
194
198
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.ParameterService }]; }, propDecorators: { userRole: [{
195
199
  type: Input
196
200
  }], initialData: [{
@@ -200,4 +204,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
200
204
  }], action: [{
201
205
  type: Output
202
206
  }] } });
203
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0tc3RlcC1maXZlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb2Qvc3RlcHMvY29kLWZvcm0tc3RlcC1maXZlL2NvZC1mb3JtLXN0ZXAtZml2ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL3N0ZXBzL2NvZC1mb3JtLXN0ZXAtZml2ZS9jb2QtZm9ybS1zdGVwLWZpdmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBd0QsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEcsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFzQixNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7OztBQU85RSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsWUFBWTtJQW1CeEQsWUFDVSxFQUFlLEVBQ2YsZ0JBQWtDO1FBRTFDLEtBQUssRUFBRSxDQUFDO1FBSEEsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFsQmxDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM3QyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUs5QyxpQkFBWSxHQUFXLDJCQUEyQixDQUFDO1FBRW5ELHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUVyQyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUVoQywwQkFBMEI7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aXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvcGFyYW1ldGVycy1zZXJ2aWNlL3BhcmFtZXRlcnMuc2VydmljZSc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5pbXBvcnQgeyBDb2RGb3JtQ29udHJvbHMgfSBmcm9tICcuLi8uLi9sb2dpYy9jb2QtZm9ybS1jb250cm9scyc7XG5pbXBvcnQgeyBDb2RGb3JtU3RlcHMsIGxvY2FsU3RvcmFnZVZhbHVlcyB9IGZyb20gJy4uLy4uL2xvZ2ljL2NvZC1mb3JtLXN0ZXBzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNvZC1mb3JtLXN0ZXAtZml2ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2QtZm9ybS1zdGVwLWZpdmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb2QtZm9ybS1zdGVwLWZpdmUuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIENvZEZvcm1TdGVwRml2ZUNvbXBvbmVudCBleHRlbmRzIENvZEZvcm1TdGVwcyBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHVzZXJSb2xlITogbnVtYmVyO1xuICBASW5wdXQoKSBpbml0aWFsRGF0YT86IGFueTtcbiAgQE91dHB1dCgpIGNoYW5nZVN0ZXBFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAT3V0cHV0KCkgYWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgY29kRm9ybVN0ZXBGaXZlITogRm9ybUdyb3VwO1xuICBtYXJrZXRpbmdSZWFzb25zOiBhbnk7XG4gIHN0dWR5UmVhc29uczogYW55O1xuICBlcnJvck1lc3NhZ2U6IHN0cmluZyA9ICdGYWx0YW4gY2FtcG9zIHBvciBsbGVuYXIuJztcbiAgc2VuZEZvcm1Nc2chOiBzdHJpbmc7XG4gIHRlcm1zQ2hlY2tib3hTdGF0dXM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgbXVsdGljdWx0dXJhbGl0aWVzOiBhbnk7XG4gIG1vZGFsVmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICB2aXNibGVSZWZlcnJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8vIENvbnRyb2xzIGRlbCBmb3JtdWxhcmlvXG4gIGNvbnRyb2xzID0gbmV3IENvZEZvcm1Db250cm9scygpLmNvbnRyb2xzWzRdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgcGFyYW1ldGVyU2VydmljZTogUGFyYW1ldGVyU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gICAgdGhpcy5zdGFydExvY2FsU3RvcmFnZVdvcmsoKTtcbiAgICB0aGlzLmdldFBhcmFtZXRlcnMoKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1sndGVybXMnXS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKGNoYW5nZXMgPT4ge1xuICAgICAgdGhpcy50ZXJtc0NoZWNrYm94U3RhdHVzID0gY2hhbmdlcztcbiAgICAgIGlmICghdGhpcy50ZXJtc0NoZWNrYm94U3RhdHVzKSB0aGlzLmVycm9yTWVzc2FnZSA9ICdEZWJlIG1hcmNhciBsYSBjYXNpbGxhIGRlIHTDqXJtaW5vcyB5IGNvbmRpY2lvbmVzLidcbiAgICB9KVxuICAgIC8vIGlmICh0aGlzLnVzZXJSb2xlID09PSAzMCB8fCB0aGlzLnVzZXJSb2xlID09PSAzMSB8fCB0aGlzLnVzZXJSb2xlID09PSAzMikgdGhpcy5zZW5kRm9ybU1zZyA9ICdFZGl0YXIgQ09EJzsgLy8gUm9sZXMgQWRtaW5pc3RyYXRpdm9zXG4gICAgaWYgKHRoaXMudXNlclJvbGUgPT09IDMwIHx8IHRoaXMudXNlclJvbGUgPT09IDMxIHx8IHRoaXMudXNlclJvbGUgPT09IDMyIHx8XG4gICAgICAgIHRoaXMudXNlclJvbGUgPT09IDQwIHx8IHRoaXMudXNlclJvbGUgPT09IDQxIHx8IHRoaXMudXNlclJvbGUgPT09IDQyIHx8XG4gICAgICAgIHRoaXMudXNlclJvbGUgPT09IDUwIHx8IHRoaXMudXNlclJvbGUgPT09IDUxIHx8IHRoaXMudXNlclJvbGUgPT09IDUyIHx8XG4gICAgICAgIHRoaXMudXNlclJvbGUgPT09IDFcbiAgICAgICAgKSB0aGlzLnNlbmRGb3JtTXNnID0gJ0NyZWFyIENPRCc7IC8vIFJvbGVzIGNvbWVyY2lhbGVzXG4gICAgaWYgKGNoYW5nZXNbJ2luaXRpYWxEYXRhJ10pIHtcbiAgICAgIGlmICh0aGlzLmluaXRpYWxEYXRhICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy5zZXREYXRhRnJvbVByZXZpdXNDb2QoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRQYXJhbWV0ZXJzKCkge1xuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRNYXJrZXRpbmdSZWFzb25zKCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5tYXJrZXRpbmdSZWFzb25zID0gcmVzcG9uc2UuZGF0YTtcbiAgICB9KTtcbiAgICB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0U3R1ZHlSZWFzb25zKCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5zdHVkeVJlYXNvbnMgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRNdWx0aWN1bHR1cmFsaXNtcygpLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcbiAgICAgIHRoaXMubXVsdGljdWx0dXJhbGl0aWVzID0gcmVzcG9uc2UuZGF0YTtcbiAgICB9KTtcbiAgfVxuXG4gIGluaXRGb3JtKCkge1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBtYXJrZXRpbmdfcmVhc29uczogIFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIG9ic2VydmF0aW9uOiAgICAgICAgWycnXSxcbiAgICAgIHN0dWR5X3JlYXNvbnM6ICAgICAgWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgdGVybXM6ICAgICAgICAgICAgICBbZmFsc2UsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICBkaXNhYmlsaXR5OiAgICAgICAgIFsnJ10sXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzE6IFtmYWxzZSwgW11dLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8yOiBbZmFsc2UsIFtdXSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMzogW2ZhbHNlLCBbXV0sXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzQ6IFtmYWxzZSwgW11dLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV81OiBbZmFsc2UsIFtdXSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNjogW2ZhbHNlLCBbXV0sXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzc6IFtmYWxzZSwgW11dLFxuICAgICAgaGVhbHRoX3JlZ2ltZW46ICAgICBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICBjb2RlX3JlZmVyczogICAgICAgIFt7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfV0sXG4gICAgICBkb2N1bWVudF9yZWZlcnM6ICAgIFt7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfV0sXG4gICAgICBuYW1lX3JlZmVyczogICAgICAgIFt7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfV0sXG4gICAgICBwaG9uZV9yZWZlcnM6ICAgICAgIFt7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfV0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbWFya2V0aW5nX3JlYXNvbnMnXS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKGNoYW5nZSA9PiB7XG4gICAgICBpZiAoY2hhbmdlID09PSAnNCcpIHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnTG9zIGRhdG9zIGRlIGxhIHBlcnNvbmEgcXVlIHJlZmlyacOzIGFsIGVzdHVkaWFudGUgc29uIHJlcXVlcmlkb3MgZW4gZWwgY2FtcG8gXCJPYnNlcnZhY2lvbmVzXCIuJ1xuICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgIHRpdGxlOiAnSW5mb3JtYWNpw7NuJyxcbiAgICAgICAgICB0ZXh0OiAnTGxlbmUgZW4gZWwgY2FtcG8gZGUgb2JzZXJ2YWNpb25lcyBsb3MgZGF0b3MgZGUgbGEgcGVyc29uYSBxdWUgbG8gcmVmaXJpw7MnLFxuICAgICAgICAgIGljb246ICdpbmZvJ1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ29ic2VydmF0aW9uJ10uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xuICAgICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snb2JzZXJ2YXRpb24nXS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snb2JzZXJ2YXRpb24nXS5jbGVhclZhbGlkYXRvcnMoKTtcbiAgICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ29ic2VydmF0aW9uJ10udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBzdGFydExvY2FsU3RvcmFnZVdvcmsoKSB7XG4gICAgdGhpcy5jb250cm9scy5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgbGV0IGxvY2FsU3RvcmFnZVZhbHVlOiBsb2NhbFN0b3JhZ2VWYWx1ZXMgPSB0aGlzLnJlYWRBbmRXcml0ZUxTKDUsIGNvbnRyb2wubmFtZSk7XG5cbiAgICAgIC8vIFNvbHVjacOzbiBhbCBidWcgZGVsIGNoZWNrYm94XG4gICAgICBpZiAobG9jYWxTdG9yYWdlVmFsdWUuY29udHJvbCA9PT0gJ3Rlcm1zJykge1xuICAgICAgICBsZXQgbmV4dFZhbHVlOiBib29sZWFuID0gbG9jYWxTdG9yYWdlVmFsdWUudmFsdWUgPT09ICd0cnVlJyA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3Rlcm1zJ10uc2V0VmFsdWUobmV4dFZhbHVlKTtcbiAgICAgICAgdGhpcy50ZXJtc0NoZWNrYm94U3RhdHVzID0gbmV4dFZhbHVlO1xuICAgICAgfVxuICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cblxuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbY29udHJvbC5uYW1lXS5zZXRWYWx1ZShsb2NhbFN0b3JhZ2VWYWx1ZS52YWx1ZSk7XG4gICAgICB0aGlzLmxpc3RlbkZvcm1DaGFuZ2VzKDUsIGNvbnRyb2wubmFtZSwgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbY29udHJvbC5uYW1lXS52YWx1ZUNoYW5nZXMpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jb250cm9scy5maWx0ZXIoY29udHJvbCA9PiBjb250cm9sLmRlc2NyaXB0aW9uID09PSAnTXVsdGljdWx0dXJhbGlzbW8nKS5mb3JFYWNoKGNvbnRyb2wgPT4ge1xuICAgICAgbGV0IGxvY2FsU3RvcmFnZVZhbHVlOiBsb2NhbFN0b3JhZ2VWYWx1ZXMgPSB0aGlzLnJlYWRBbmRXcml0ZUxTKDUsIGNvbnRyb2wubmFtZSk7XG4gICAgICBsZXQgbmV4dFZhbHVlOiBib29sZWFuID0gbG9jYWxTdG9yYWdlVmFsdWUudmFsdWUgPT09ICd0cnVlJyA/IHRydWUgOiBmYWxzZTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzW2NvbnRyb2wubmFtZV0uc2V0VmFsdWUobmV4dFZhbHVlKTtcbiAgICB9KVxuICB9XG5cbiAgZ2V0Q2hlY2tib3hDb250cm9sKCk6IEZvcm1Db250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3Rlcm1zJ10gYXMgRm9ybUNvbnRyb2w7XG4gIH1cblxuICBzZW5kRm9ybSgpIHtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgaWYgKHRoaXMuY29kRm9ybVN0ZXBGaXZlLmludmFsaWQgfHwgdGhpcy50ZXJtc0NoZWNrYm94U3RhdHVzID09PSBmYWxzZSkgcmV0dXJuO1xuXG4gICAgLy8gaWYgKHRoaXMudXNlclJvbGUgPT09IDMwIHx8IHRoaXMudXNlclJvbGUgPT09IDMxIHx8IHRoaXMudXNlclJvbGUgPT09IDMyKSB0aGlzLmFjdGlvbi5lbWl0KCd1cGRhdGUnKTtcbiAgICBpZiAodGhpcy51c2VyUm9sZSA9PSAzMCB8fCB0aGlzLnVzZXJSb2xlID09IDMxIHx8IHRoaXMudXNlclJvbGUgPT0gMzIgfHxcbiAgICAgICAgdGhpcy51c2VyUm9sZSA9PSA0MCB8fCB0aGlzLnVzZXJSb2xlID09IDQxIHx8IHRoaXMudXNlclJvbGUgPT0gNDIgfHxcbiAgICAgICAgdGhpcy51c2VyUm9sZSA9PSA1MCB8fCB0aGlzLnVzZXJSb2xlID09IDUxIHx8IHRoaXMudXNlclJvbGUgPT0gNTIgfHxcbiAgICAgICAgdGhpcy51c2VyUm9sZSA9PSAxKSB0aGlzLmFjdGlvbi5lbWl0KCdjcmVhdGUnKTtcblxuICB9XG5cbiAgY2xlYW5TdG9yYWdlKCl7XG4gICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTtcbiAgICB0aGlzLnN0YXJ0TG9jYWxTdG9yYWdlV29yaygpXG4gIH1cblxuICAvLyBFdmVudG9zIGRlbCBzZWxlY3RcbiAgc2VsZWN0TWFya2V0aW5nUmVhc29ucyhtYXJrZXRpbmdSZWFzb25zOiBhbnkpIHtcbiAgICBpZiAobWFya2V0aW5nUmVhc29ucyAhPT0gJ8K/Q8OzbW8gc2UgZW50ZXLDsyBkZWwgcHJvZ3JhbWE/Jykge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ21hcmtldGluZ19yZWFzb25zJ10uc2V0VmFsdWUobWFya2V0aW5nUmVhc29ucyk7XG4gICAgICBpZiAobWFya2V0aW5nUmVhc29ucyA9PSAxKSB7XG4gICAgICAgIHRoaXMubW9kYWxWaXNpYmxlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ21hcmtldGluZ19yZWFzb25zJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0U3R1ZHlSZWFzb25zKHN0dWR5UmVhc29uczogYW55KSB7XG4gICAgaWYgKHN0dWR5UmVhc29ucyAhPT0gJ01vdGl2bycpIHtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydzdHVkeV9yZWFzb25zJ10uc2V0VmFsdWUoc3R1ZHlSZWFzb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3N0dWR5X3JlYXNvbnMnXS5zZXRWYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBzZXREYXRhRnJvbVByZXZpdXNDb2QoKSB7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ21hcmtldGluZ19yZWFzb25zJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5hZGl0aW9uYWxfaW5mb3JtYXRpb24ubWFya2V0aW5nX3JlYXNvbnMpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydzdHVkeV9yZWFzb25zJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5hZGl0aW9uYWxfaW5mb3JtYXRpb24uc3R1ZHlfcmVhc29ucyk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ2Rpc2FiaWxpdHknXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmFkaXRpb25hbF9pbmZvcm1hdGlvbi5kaXNhYmlsaXR5KTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snaGVhbHRoX3JlZ2ltZW4nXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmFkaXRpb25hbF9pbmZvcm1hdGlvbi5oZWFsdGhfcmVnaW1lbik7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ29ic2VydmF0aW9uJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5hZGl0aW9uYWxfaW5mb3JtYXRpb24ub2JzZXJ2YXRpb24pO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydjb2RlX3JlZmVycyddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuYWRpdGlvbmFsX2luZm9ybWF0aW9uLnJlZmVycmVkX3VzZXIpO1xuICB9XG5cbiAgY2xlYW5Db21wb25lbnQoKXtcbiAgICB0aGlzLnJlc2V0TG9jYWxTdG9yYWdlKHRoaXMuY29udHJvbHMpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLnJlc2V0KCk7XG4gIH1cblxuICBjbG9zZU1vZGFsKHJlc3BvbnM6IGJvb2xlYW4pe1xuICAgIHRoaXMubW9kYWxWaXNpYmxlID0gcmVzcG9ucztcbiAgfVxuXG4gIHJlZmVycmVkVXNlcihkYXRhOiBhbnkpe1xuICAgIGNvbnNvbGUubG9nKCdzdGVwNScrIGRhdGEpO1xuXG4gICAgaWYgKGRhdGEpIHtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snY29kZV9yZWZlcnMnXS5zZXRWYWx1ZShkYXRhWydjb2RlJ10pO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydkb2N1bWVudF9yZWZlcnMnXS5zZXRWYWx1ZShkYXRhWydpZF9jYXJkJ10pO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWyduYW1lX3JlZmVycyddLnNldFZhbHVlKGRhdGFbJ25hbWUnXSk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3Bob25lX3JlZmVycyddLnNldFZhbHVlKGRhdGFbJ3Bob25lX251bWJlciAnXSk7XG4gICAgdGhpcy52aXNibGVSZWZlcnJlZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzYmxlUmVmZXJyZWQgPSBmYWxzZTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snY29kZV9yZWZlcnMnXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydkb2N1bWVudF9yZWZlcnMnXS5zZXRWYWx1ZShudWxsKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWyduYW1lX3JlZmVycyddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3Bob25lX3JlZmVycyddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG5cbn1cbiIsIjxmb3JtIGF1dG9jb21wbGV0ZT1cIm9mZlwiIFtmb3JtR3JvdXBdPVwiY29kRm9ybVN0ZXBGaXZlXCIgY2xhc3M9XCJncmlkXCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTZcIj5cbiAgICA8Y29kLW1vZGFsLXJlZmVycmVkXG4gICAgKm5nSWY9XCJtb2RhbFZpc2libGVcIlxuICAgIFt2aXNpYmlsaXR5XT1cIm1vZGFsVmlzaWJsZVwiXG4gICAgKG1vZGFsQ2xvc2UpPVwiY2xvc2VNb2RhbCgkZXZlbnQpXCJcbiAgICAodXNlclNlbGVjdCk9XCJyZWZlcnJlZFVzZXIoJGV2ZW50KVwiXG4gICAgPjwvY29kLW1vZGFsLXJlZmVycmVkPlxuXG4gICAgPGlwdC1zZWxlY3RcbiAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbWFya2V0aW5nX3JlYXNvbnMnXVwiXG4gICAgICBbaW5pdGlhbFZhbHVlXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbWFya2V0aW5nX3JlYXNvbnMnXS52YWx1ZVwiXG4gICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0TWFya2V0aW5nUmVhc29ucygkZXZlbnQpXCJcbiAgICAgIFtkYXRhXT1cIm1hcmtldGluZ1JlYXNvbnNcIlxuICAgICAgW2RlZmF1bHRUZXh0XT1cIifCv0PDs21vIHNlIGVudGVyw7MgZGVsIHByb2dyYW1hPydcIlxuICAgID48L2lwdC1zZWxlY3Q+XG4gICAgPGlwdC1pbnB1dFxuICAgICAgW2lucHV0VHlwZV09XCIndGV4dCdcIlxuICAgICAgW3BsYWNlSG9sZGVyXT1cIidEaXNjYXBhY2lkYWQnXCJcbiAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snZGlzYWJpbGl0eSddXCJcbiAgICA+PC9pcHQtaW5wdXQ+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC02XCI+XG4gICAgPGlwdC1zZWxlY3RcbiAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snc3R1ZHlfcmVhc29ucyddXCJcbiAgICAgIFtpbml0aWFsVmFsdWVdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydzdHVkeV9yZWFzb25zJ10udmFsdWVcIlxuICAgICAgKGV2ZW50U2VsZWN0KT1cInNlbGVjdFN0dWR5UmVhc29ucygkZXZlbnQpXCJcbiAgICAgIFtkYXRhXT1cInN0dWR5UmVhc29uc1wiXG4gICAgICBbZGVmYXVsdFRleHRdPVwiJ01vdGl2bydcIlxuICAgID48L2lwdC1zZWxlY3Q+XG4gICAgPGlwdC1pbnB1dFxuICAgICAgW2lucHV0VHlwZV09XCIndGV4dCdcIlxuICAgICAgW3BsYWNlSG9sZGVyXT1cIidSw6lnaW1lbiBkZSBzYWx1ZCdcIlxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydoZWFsdGhfcmVnaW1lbiddXCJcbiAgICA+PC9pcHQtaW5wdXQ+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiY29sLTEyIG10LTRcIj5cbiAgICA8aDMgKm5nSWY9XCJ0cnVlXCI+RGF0b3MgZGVsIHJlZmVyaWRvPC9oMz5cbiAgICA8ZGl2ICpuZ0lmPVwidHJ1ZVwiIGNsYXNzPVwicmVmZXJyZWRfdXNlcl9kYXRhXCI+XG4gICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidEb2N1bWVudG8nXCJcbiAgICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydkb2N1bWVudF9yZWZlcnMnXVwiXG4gICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidOb21icmVzJ1wiXG4gICAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbmFtZV9yZWZlcnMnXVwiXG4gICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgICA8aXB0LWlucHV0XG4gICAgICAgIFtpbnB1dFR5cGVdPVwiJ3RleHQnXCJcbiAgICAgICAgW3BsYWNlSG9sZGVyXT1cIidUZWzDqWZvbm8nXCJcbiAgICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydwaG9uZV9yZWZlcnMnXVwiXG4gICAgICA+PC9pcHQtaW5wdXQ+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gY2xhc3M9XCJwLWZsb2F0LWxhYmVsXCI+XG4gICAgICA8dGV4dGFyZWFcbiAgICAgICAgaWQ9XCJmbG9hdC1pbnB1dFwiXG4gICAgICAgIHJvd3M9XCI0XCJcbiAgICAgICAgY29scz1cIjMwXCJcbiAgICAgICAgcElucHV0VGV4dGFyZWFcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwib2JzZXJ2YXRpb25cIlxuICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICA8bGFiZWwgZm9yPVwiZmxvYXQtaW5wdXRcIj5PYnNlcnZhY2lvbmVzPC9sYWJlbD5cbiAgICA8L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGdhcC0yXCI+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgbXVsdGljdWx0dXJhbGl0aWVzOyBpbmRleCBhcyBpXCJcbiAgICAgICAgY2xhc3M9XCJmaWVsZC1jaGVja2JveCBtdC00IGZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1jaGVja2JveFxuICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ211bHRpY3VsdHVyYWxpc20nICsgJ18nICsgKGkgKyAxKVwiXG4gICAgICAgICAgY2xhc3M9XCJleGFtcGxlLW1hcmdpblwiXG4gICAgICAgID48L21hdC1jaGVja2JveD5cbiAgICAgICAgPGxhYmVsIFtmb3JdPVwib3B0aW9uLmNvZGVcIj57eyBvcHRpb24ubmFtZSB9fTwvbGFiZWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImNvbC0xMiBwLTQgZm9udC1ib2xkXCI+XG4gICAgPHA+XG4gICAgICAqIEVsIGVzdHVkaWFudGUgbyB0aXR1bGFyIHNlIGNvbXByb21ldGVuIGEgY2FuY2VsYXIgbGFzIGN1b3Rhc1xuICAgICAgZXN0YWJsZWNpZGFzIGVuIGVzdGUgY29udHJhdG8sIGxvcyBwcmltZXJvcyA1IChjaW5jbykgZMOtYXMgZGVsIG1lcy4gRW5cbiAgICAgIGNhc28gZGUgcXVlcmVyIHJldGlyYXJzZSwgZGViZXLDoSBpbmZvcm1hciBwb3IgZXNjcml0byAzMCAodHJlaW50YSkgZMOtYXNcbiAgICAgIGFudGVzIHkgY2FuY2VsYXIgbG8gY29ycmVzcG9uZGllbnRlIGhhc3RhIGxhIGZlY2hhIGRlZmluaWRhIGRlIHJldGlybyxcbiAgICAgIHBhcmEgcG9kZXIgb2J0ZW5lciBzdSBwYXogeSBzYWx2by5cbiAgICA8L3A+XG4gICAgPGJyIC8+PGJyIC8+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTJcIj5cbiAgICAgIDxtYXQtY2hlY2tib3hcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGVybXNcIlxuICAgICAgICBjbGFzcz1cImV4YW1wbGUtbWFyZ2luXCJcbiAgICAgID48L21hdC1jaGVja2JveD5cbiAgICAgIDwhLS0gPHAtY2hlY2tib3ggW2Zvcm1Db250cm9sXT1cImdldENoZWNrYm94Q29udHJvbCgpXCI+PC9wLWNoZWNrYm94PiAtLT5cbiAgICAgIDwhLS0gPGlwdC1jaGVja2JveCBbY29udHJvbF09XCJjb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3Rlcm1zJ11cIiBbY2hlY2tib3hPcHRpb25dPVwidGVybXNDaGVja2JveFN0YXR1c1wiPjwvaXB0LWNoZWNrYm94PiAtLT5cbiAgICAgIDxwPlxuICAgICAgICBERUNMQVJPIEhBQkVSIExFw41ETyBZIEFDRVBUTyBMT1MgVMOJUk1JTk9TIFkgQ09ORElDSU9ORVMgREUgTEFTIFBPTMONVElDQVNcbiAgICAgICAgRVNUQUJMRUNJREFTIEVOIExBIElOU1RJVFVDScOTTi5cbiAgICAgIDwvcD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Zvcm0+XG5cbjxkaXYgY2xhc3M9XCJmbGV4IG10LTMgYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gIDxzcGFuXG4gICAgKm5nSWY9XCJcbiAgICAgIChjb2RGb3JtU3RlcEZpdmUuaW52YWxpZCAmJiBjb2RGb3JtU3RlcEZpdmUudG91Y2hlZCkgfHxcbiAgICAgICghdGVybXNDaGVja2JveFN0YXR1cyAmJiBjb2RGb3JtU3RlcEZpdmUudG91Y2hlZClcbiAgICBcIlxuICAgIGNsYXNzPVwiXG4gICAgICB0ZXh0LXJlZC01MDBcbiAgICAgIGZvbnQtYm9sZFxuICAgICAgdGV4dC1jZW50ZXJcbiAgICAgIG10LTFcbiAgICAgIHB5LTJcbiAgICAgIGJnLXJlZC0xMDBcbiAgICAgIHctZnVsbFxuICAgICAgYm9yZGVyLXJvdW5kLXhsXG4gICAgXCJcbiAgICA+e3sgZXJyb3JNZXNzYWdlIH19PC9zcGFuXG4gID5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgIGNsYXNzPVwibWwtYXV0byBwLWJ1dHRvbi1zdWNjZXNzIHAtYnV0dG9uLXNtXCJcbiAgICAoY2xpY2spPVwic2VuZEZvcm0oKVwiXG4gICAgcEJ1dHRvblxuICAgIFtsYWJlbF09XCJzZW5kRm9ybU1zZ1wiXG4gICAgaWNvbj1cInBpIHBpLWNoZWNrXCJcbiAgPjwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kLWZvcm0tc3RlcC1maXZlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb2Qvc3RlcHMvY29kLWZvcm0tc3RlcC1maXZlL2NvZC1mb3JtLXN0ZXAtZml2ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29kL3N0ZXBzL2NvZC1mb3JtLXN0ZXAtZml2ZS9jb2QtZm9ybS1zdGVwLWZpdmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBd0QsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEcsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFzQixNQUFNLDRCQUE0QixDQUFDOzs7Ozs7Ozs7OztBQU85RSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsWUFBWTtJQW1CeEQsWUFDVSxFQUFlLEVBQ2YsZ0JBQWtDO1FBRTFDLEtBQUssRUFBRSxDQUFDO1FBSEEsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFsQmxDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM3QyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUs5QyxpQkFBWSxHQUFXLDJCQUEyQixDQUFDO1FBRW5ELHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUVyQyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUM5QixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUVoQywwQkFBMEI7UUFDMUIsYUFBUSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBTzdDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3RFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUM7WUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUI7Z0JBQUUsSUFBSSxDQUFDLFlBQVksR0FBRyxtREFBbUQsQ0FBQTtRQUN4RyxDQUFDLENBQUMsQ0FBQTtRQUNGLHNJQUFzSTtRQUN0SSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssRUFBRTtZQUNwRSxJQUFJLENBQUMsUUFBUSxLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEVBQUU7WUFDcEUsSUFBSSxDQUFDLFFBQVEsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxFQUFFO1lBQ3BFLElBQUksQ0FBQyxRQUFRLEtBQUssQ0FBQztZQUNqQixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxDQUFDLG9CQUFvQjtRQUMxRCxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUMxQixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxFQUFFO2dCQUM1QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQzthQUM5QjtTQUNGO0lBQ0gsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNqRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUM3RCxJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNsRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztRQUMxQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNuQyxpQkFBaUIsRUFBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvQyxXQUFXLEVBQVMsQ0FBQyxFQUFFLENBQUM7WUFDeEIsYUFBYSxFQUFPLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQy9DLEtBQUssRUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsRCxVQUFVLEVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDeEIsa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQy9CLGtCQUFrQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMvQixrQkFBa0IsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDL0Isa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQy9CLGtCQUFrQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMvQixrQkFBa0IsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDL0Isa0JBQWtCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQy9CLGNBQWMsRUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvQyxXQUFXLEVBQVMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ25ELGVBQWUsRUFBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDbkQsV0FBVyxFQUFTLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUNuRCxZQUFZLEVBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ25ELFlBQVksRUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7U0FDcEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2pGLElBQUksTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLFlBQVksR0FBRywrRkFBK0YsQ0FBQTtnQkFDbkgsSUFBSSxDQUFDLElBQUksQ0FBQztvQkFDUixLQUFLLEVBQUUsYUFBYTtvQkFDcEIsSUFBSSxFQUFFLDJFQUEyRTtvQkFDakYsSUFBSSxFQUFFLE1BQU07aUJBQ2IsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2dCQUNsRixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO2FBQ3ZFO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUMvRCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO2FBQ3ZFO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzlCLElBQUksaUJBQWlCLEdBQXVCLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUVqRiwrQkFBK0I7WUFDL0IsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFO2dCQUN6QyxJQUFJLFNBQVMsR0FBWSxpQkFBaUIsQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFDM0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsU0FBUyxDQUFDO2FBQ3RDO1lBQ0QsZ0NBQWdDO1lBRWhDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNwRyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsS0FBSyxtQkFBbUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM3RixJQUFJLGlCQUFpQixHQUF1QixJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDakYsSUFBSSxTQUFTLEdBQVksaUJBQWlCLENBQUMsS0FBSyxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDM0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQWdCLENBQUM7SUFDL0QsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsbUJBQW1CLEtBQUssS0FBSztZQUFFLE9BQU87UUFFL0Usd0dBQXdHO1FBQ3hHLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFO1lBQ2pFLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRTtZQUNqRSxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUU7WUFDakUsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDO1lBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFckQsQ0FBQztJQUVELFlBQVk7UUFDVixjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUE7SUFDOUIsQ0FBQztJQUVELHFCQUFxQjtJQUNyQixzQkFBc0IsQ0FBQyxnQkFBcUI7UUFDMUMsSUFBSSxnQkFBZ0IsS0FBSywrQkFBK0IsRUFBRTtZQUN4RCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQzlFLElBQUksZ0JBQWdCLElBQUksQ0FBQyxFQUFFO2dCQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQzthQUMxQjtTQUNGO2FBQU07WUFDTCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxZQUFpQjtRQUNsQyxJQUFJLFlBQVksS0FBSyxRQUFRLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3ZFO2FBQU07WUFDTCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDL0Q7SUFDSCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN0SCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5RyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN4RyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2hILElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZ0I7UUFDekIsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7SUFDOUIsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFTO1FBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVsQixJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1lBQzNCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUMzRSxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQzdFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUN2RTthQUFNO1lBQ0wsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7WUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzlEO0lBQ0gsQ0FBQzs7cUhBdk1VLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLDJPQ1pyQyxpeUlBa0lBOzJGRHRIYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usd0JBQXdCO2lJQUt6QixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQYXJhbWV0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9wYXJhbWV0ZXJzLXNlcnZpY2UvcGFyYW1ldGVycy5zZXJ2aWNlJztcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcbmltcG9ydCB7IENvZEZvcm1Db250cm9scyB9IGZyb20gJy4uLy4uL2xvZ2ljL2NvZC1mb3JtLWNvbnRyb2xzJztcbmltcG9ydCB7IENvZEZvcm1TdGVwcywgbG9jYWxTdG9yYWdlVmFsdWVzIH0gZnJvbSAnLi4vLi4vbG9naWMvY29kLWZvcm0tc3RlcHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY29kLWZvcm0tc3RlcC1maXZlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvZC1mb3JtLXN0ZXAtZml2ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvZC1mb3JtLXN0ZXAtZml2ZS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ29kRm9ybVN0ZXBGaXZlQ29tcG9uZW50IGV4dGVuZHMgQ29kRm9ybVN0ZXBzIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgdXNlclJvbGUhOiBudW1iZXI7XG4gIEBJbnB1dCgpIGluaXRpYWxEYXRhPzogYW55O1xuICBAT3V0cHV0KCkgY2hhbmdlU3RlcEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gIEBPdXRwdXQoKSBhY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBjb2RGb3JtU3RlcEZpdmUhOiBGb3JtR3JvdXA7XG4gIG1hcmtldGluZ1JlYXNvbnM6IGFueTtcbiAgc3R1ZHlSZWFzb25zOiBhbnk7XG4gIGVycm9yTWVzc2FnZTogc3RyaW5nID0gJ0ZhbHRhbiBjYW1wb3MgcG9yIGxsZW5hci4nO1xuICBzZW5kRm9ybU1zZyE6IHN0cmluZztcbiAgdGVybXNDaGVja2JveFN0YXR1czogYm9vbGVhbiA9IGZhbHNlO1xuICBtdWx0aWN1bHR1cmFsaXRpZXM6IGFueTtcbiAgbW9kYWxWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIHZpc2JsZVJlZmVycmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy8gQ29udHJvbHMgZGVsIGZvcm11bGFyaW9cbiAgY29udHJvbHMgPSBuZXcgQ29kRm9ybUNvbnRyb2xzKCkuY29udHJvbHNbNF07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBwYXJhbWV0ZXJTZXJ2aWNlOiBQYXJhbWV0ZXJTZXJ2aWNlLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgICB0aGlzLnN0YXJ0TG9jYWxTdG9yYWdlV29yaygpO1xuICAgIHRoaXMuZ2V0UGFyYW1ldGVycygpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWyd0ZXJtcyddLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoY2hhbmdlcyA9PiB7XG4gICAgICB0aGlzLnRlcm1zQ2hlY2tib3hTdGF0dXMgPSBjaGFuZ2VzO1xuICAgICAgaWYgKCF0aGlzLnRlcm1zQ2hlY2tib3hTdGF0dXMpIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0RlYmUgbWFyY2FyIGxhIGNhc2lsbGEgZGUgdMOpcm1pbm9zIHkgY29uZGljaW9uZXMuJ1xuICAgIH0pXG4gICAgLy8gaWYgKHRoaXMudXNlclJvbGUgPT09IDMwIHx8IHRoaXMudXNlclJvbGUgPT09IDMxIHx8IHRoaXMudXNlclJvbGUgPT09IDMyKSB0aGlzLnNlbmRGb3JtTXNnID0gJ0VkaXRhciBDT0QnOyAvLyBSb2xlcyBBZG1pbmlzdHJhdGl2b3NcbiAgICBpZiAodGhpcy51c2VyUm9sZSA9PT0gMzAgfHwgdGhpcy51c2VyUm9sZSA9PT0gMzEgfHwgdGhpcy51c2VyUm9sZSA9PT0gMzIgfHxcbiAgICAgICAgdGhpcy51c2VyUm9sZSA9PT0gNDAgfHwgdGhpcy51c2VyUm9sZSA9PT0gNDEgfHwgdGhpcy51c2VyUm9sZSA9PT0gNDIgfHxcbiAgICAgICAgdGhpcy51c2VyUm9sZSA9PT0gNTAgfHwgdGhpcy51c2VyUm9sZSA9PT0gNTEgfHwgdGhpcy51c2VyUm9sZSA9PT0gNTIgfHxcbiAgICAgICAgdGhpcy51c2VyUm9sZSA9PT0gMVxuICAgICAgICApIHRoaXMuc2VuZEZvcm1Nc2cgPSAnQ3JlYXIgQ09EJzsgLy8gUm9sZXMgY29tZXJjaWFsZXNcbiAgICBpZiAoY2hhbmdlc1snaW5pdGlhbERhdGEnXSkge1xuICAgICAgaWYgKHRoaXMuaW5pdGlhbERhdGEgIT0gbnVsbCkge1xuICAgICAgICB0aGlzLnNldERhdGFGcm9tUHJldml1c0NvZCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldE1hcmtldGluZ1JlYXNvbnMoKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLm1hcmtldGluZ1JlYXNvbnMgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICAgIHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRTdHVkeVJlYXNvbnMoKS5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICB0aGlzLnN0dWR5UmVhc29ucyA9IHJlc3BvbnNlLmRhdGE7XG4gICAgfSk7XG4gICAgdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldE11bHRpY3VsdHVyYWxpc21zKCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdGhpcy5tdWx0aWN1bHR1cmFsaXRpZXMgPSByZXNwb25zZS5kYXRhO1xuICAgIH0pO1xuICB9XG5cbiAgaW5pdEZvcm0oKSB7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUgPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIG1hcmtldGluZ19yZWFzb25zOiAgWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgb2JzZXJ2YXRpb246ICAgICAgICBbJyddLFxuICAgICAgc3R1ZHlfcmVhc29uczogICAgICBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICB0ZXJtczogICAgICAgICAgICAgIFtmYWxzZSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIGRpc2FiaWxpdHk6ICAgICAgICAgWycnXSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fMTogW2ZhbHNlLCBbXV0sXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzI6IFtmYWxzZSwgW11dLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV8zOiBbZmFsc2UsIFtdXSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNDogW2ZhbHNlLCBbXV0sXG4gICAgICBtdWx0aWN1bHR1cmFsaXNtXzU6IFtmYWxzZSwgW11dLFxuICAgICAgbXVsdGljdWx0dXJhbGlzbV82OiBbZmFsc2UsIFtdXSxcbiAgICAgIG11bHRpY3VsdHVyYWxpc21fNzogW2ZhbHNlLCBbXV0sXG4gICAgICBoZWFsdGhfcmVnaW1lbjogICAgIFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgIGNvZGVfcmVmZXJzOiAgICAgICAgW3sgdmFsdWU6ICcnLCBkaXNhYmxlZDogdHJ1ZSB9XSxcbiAgICAgIGRvY3VtZW50X3JlZmVyczogICAgW3sgdmFsdWU6ICcnLCBkaXNhYmxlZDogdHJ1ZSB9XSxcbiAgICAgIG5hbWVfcmVmZXJzOiAgICAgICAgW3sgdmFsdWU6ICcnLCBkaXNhYmxlZDogdHJ1ZSB9XSxcbiAgICAgIHBob25lX3JlZmVyczogICAgICAgW3sgdmFsdWU6ICcnLCBkaXNhYmxlZDogdHJ1ZSB9XSxcbiAgICAgIGVtYWlsX3JlZmVyczogICAgICAgW3sgdmFsdWU6ICcnLCBkaXNhYmxlZDogdHJ1ZSB9XSxcbiAgICB9KTtcblxuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydtYXJrZXRpbmdfcmVhc29ucyddLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoY2hhbmdlID0+IHtcbiAgICAgIGlmIChjaGFuZ2UgPT09ICc0Jykge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdMb3MgZGF0b3MgZGUgbGEgcGVyc29uYSBxdWUgcmVmaXJpw7MgYWwgZXN0dWRpYW50ZSBzb24gcmVxdWVyaWRvcyBlbiBlbCBjYW1wbyBcIk9ic2VydmFjaW9uZXNcIi4nXG4gICAgICAgIFN3YWwuZmlyZSh7XG4gICAgICAgICAgdGl0bGU6ICdJbmZvcm1hY2nDs24nLFxuICAgICAgICAgIHRleHQ6ICdMbGVuZSBlbiBlbCBjYW1wbyBkZSBvYnNlcnZhY2lvbmVzIGxvcyBkYXRvcyBkZSBsYSBwZXJzb25hIHF1ZSBsbyByZWZpcmnDsycsXG4gICAgICAgICAgaWNvbjogJ2luZm8nXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snb2JzZXJ2YXRpb24nXS5zZXRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSk7XG4gICAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydvYnNlcnZhdGlvbiddLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydvYnNlcnZhdGlvbiddLmNsZWFyVmFsaWRhdG9ycygpO1xuICAgICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snb2JzZXJ2YXRpb24nXS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIHN0YXJ0TG9jYWxTdG9yYWdlV29yaygpIHtcbiAgICB0aGlzLmNvbnRyb2xzLmZvckVhY2goY29udHJvbCA9PiB7XG4gICAgICBsZXQgbG9jYWxTdG9yYWdlVmFsdWU6IGxvY2FsU3RvcmFnZVZhbHVlcyA9IHRoaXMucmVhZEFuZFdyaXRlTFMoNSwgY29udHJvbC5uYW1lKTtcblxuICAgICAgLy8gU29sdWNpw7NuIGFsIGJ1ZyBkZWwgY2hlY2tib3hcbiAgICAgIGlmIChsb2NhbFN0b3JhZ2VWYWx1ZS5jb250cm9sID09PSAndGVybXMnKSB7XG4gICAgICAgIGxldCBuZXh0VmFsdWU6IGJvb2xlYW4gPSBsb2NhbFN0b3JhZ2VWYWx1ZS52YWx1ZSA9PT0gJ3RydWUnID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1sndGVybXMnXS5zZXRWYWx1ZShuZXh0VmFsdWUpO1xuICAgICAgICB0aGlzLnRlcm1zQ2hlY2tib3hTdGF0dXMgPSBuZXh0VmFsdWU7XG4gICAgICB9XG4gICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuXG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1tjb250cm9sLm5hbWVdLnNldFZhbHVlKGxvY2FsU3RvcmFnZVZhbHVlLnZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuRm9ybUNoYW5nZXMoNSwgY29udHJvbC5uYW1lLCB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1tjb250cm9sLm5hbWVdLnZhbHVlQ2hhbmdlcyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmNvbnRyb2xzLmZpbHRlcihjb250cm9sID0+IGNvbnRyb2wuZGVzY3JpcHRpb24gPT09ICdNdWx0aWN1bHR1cmFsaXNtbycpLmZvckVhY2goY29udHJvbCA9PiB7XG4gICAgICBsZXQgbG9jYWxTdG9yYWdlVmFsdWU6IGxvY2FsU3RvcmFnZVZhbHVlcyA9IHRoaXMucmVhZEFuZFdyaXRlTFMoNSwgY29udHJvbC5uYW1lKTtcbiAgICAgIGxldCBuZXh0VmFsdWU6IGJvb2xlYW4gPSBsb2NhbFN0b3JhZ2VWYWx1ZS52YWx1ZSA9PT0gJ3RydWUnID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbY29udHJvbC5uYW1lXS5zZXRWYWx1ZShuZXh0VmFsdWUpO1xuICAgIH0pXG4gIH1cblxuICBnZXRDaGVja2JveENvbnRyb2woKTogRm9ybUNvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1sndGVybXMnXSBhcyBGb3JtQ29udHJvbDtcbiAgfVxuXG4gIHNlbmRGb3JtKCkge1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICBpZiAodGhpcy5jb2RGb3JtU3RlcEZpdmUuaW52YWxpZCB8fCB0aGlzLnRlcm1zQ2hlY2tib3hTdGF0dXMgPT09IGZhbHNlKSByZXR1cm47XG5cbiAgICAvLyBpZiAodGhpcy51c2VyUm9sZSA9PT0gMzAgfHwgdGhpcy51c2VyUm9sZSA9PT0gMzEgfHwgdGhpcy51c2VyUm9sZSA9PT0gMzIpIHRoaXMuYWN0aW9uLmVtaXQoJ3VwZGF0ZScpO1xuICAgIGlmICh0aGlzLnVzZXJSb2xlID09IDMwIHx8IHRoaXMudXNlclJvbGUgPT0gMzEgfHwgdGhpcy51c2VyUm9sZSA9PSAzMiB8fFxuICAgICAgICB0aGlzLnVzZXJSb2xlID09IDQwIHx8IHRoaXMudXNlclJvbGUgPT0gNDEgfHwgdGhpcy51c2VyUm9sZSA9PSA0MiB8fFxuICAgICAgICB0aGlzLnVzZXJSb2xlID09IDUwIHx8IHRoaXMudXNlclJvbGUgPT0gNTEgfHwgdGhpcy51c2VyUm9sZSA9PSA1MiB8fFxuICAgICAgICB0aGlzLnVzZXJSb2xlID09IDEpIHRoaXMuYWN0aW9uLmVtaXQoJ2NyZWF0ZScpO1xuXG4gIH1cblxuICBjbGVhblN0b3JhZ2UoKXtcbiAgICBzZXNzaW9uU3RvcmFnZS5jbGVhcigpO1xuICAgIHRoaXMuc3RhcnRMb2NhbFN0b3JhZ2VXb3JrKClcbiAgfVxuXG4gIC8vIEV2ZW50b3MgZGVsIHNlbGVjdFxuICBzZWxlY3RNYXJrZXRpbmdSZWFzb25zKG1hcmtldGluZ1JlYXNvbnM6IGFueSkge1xuICAgIGlmIChtYXJrZXRpbmdSZWFzb25zICE9PSAnwr9Dw7NtbyBzZSBlbnRlcsOzIGRlbCBwcm9ncmFtYT8nKSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbWFya2V0aW5nX3JlYXNvbnMnXS5zZXRWYWx1ZShtYXJrZXRpbmdSZWFzb25zKTtcbiAgICAgIGlmIChtYXJrZXRpbmdSZWFzb25zID09IDEpIHtcbiAgICAgICAgdGhpcy5tb2RhbFZpc2libGUgPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbWFya2V0aW5nX3JlYXNvbnMnXS5zZXRWYWx1ZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RTdHVkeVJlYXNvbnMoc3R1ZHlSZWFzb25zOiBhbnkpIHtcbiAgICBpZiAoc3R1ZHlSZWFzb25zICE9PSAnTW90aXZvJykge1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3N0dWR5X3JlYXNvbnMnXS5zZXRWYWx1ZShzdHVkeVJlYXNvbnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snc3R1ZHlfcmVhc29ucyddLnNldFZhbHVlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHNldERhdGFGcm9tUHJldml1c0NvZCgpIHtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snbWFya2V0aW5nX3JlYXNvbnMnXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmFkaXRpb25hbF9pbmZvcm1hdGlvbi5tYXJrZXRpbmdfcmVhc29ucyk7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3N0dWR5X3JlYXNvbnMnXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmFkaXRpb25hbF9pbmZvcm1hdGlvbi5zdHVkeV9yZWFzb25zKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snZGlzYWJpbGl0eSddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuYWRpdGlvbmFsX2luZm9ybWF0aW9uLmRpc2FiaWxpdHkpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydoZWFsdGhfcmVnaW1lbiddLnNldFZhbHVlKHRoaXMuaW5pdGlhbERhdGEuYWRpdGlvbmFsX2luZm9ybWF0aW9uLmhlYWx0aF9yZWdpbWVuKTtcbiAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snb2JzZXJ2YXRpb24nXS5zZXRWYWx1ZSh0aGlzLmluaXRpYWxEYXRhLmFkaXRpb25hbF9pbmZvcm1hdGlvbi5vYnNlcnZhdGlvbik7XG4gICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ2NvZGVfcmVmZXJzJ10uc2V0VmFsdWUodGhpcy5pbml0aWFsRGF0YS5hZGl0aW9uYWxfaW5mb3JtYXRpb24uY29kZV9yZWZlcnMpO1xuICB9XG5cbiAgY2xlYW5Db21wb25lbnQoKXtcbiAgICB0aGlzLnJlc2V0TG9jYWxTdG9yYWdlKHRoaXMuY29udHJvbHMpO1xuICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLnJlc2V0KCk7XG4gIH1cblxuICBjbG9zZU1vZGFsKHJlc3BvbnM6IGJvb2xlYW4pe1xuICAgIHRoaXMubW9kYWxWaXNpYmxlID0gcmVzcG9ucztcbiAgfVxuXG4gIHJlZmVycmVkVXNlcihkYXRhOiBhbnkpe1xuICAgIGNvbnNvbGUubG9nKCdzdGVwNScpO1xuICAgIGNvbnNvbGUubG9nKGRhdGEpO1xuXG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIHRoaXMudmlzYmxlUmVmZXJyZWQgPSB0cnVlO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ2NvZGVfcmVmZXJzJ10uc2V0VmFsdWUoZGF0YVsnY29kZSddKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydkb2N1bWVudF9yZWZlcnMnXS5zZXRWYWx1ZShkYXRhWydpZF9jYXJkJ10pO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ25hbWVfcmVmZXJzJ10uc2V0VmFsdWUoZGF0YVsnbmFtZSddKTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydwaG9uZV9yZWZlcnMnXS5zZXRWYWx1ZShkYXRhWydwaG9uZV9udW1iZXInXSk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snZW1haWxfcmVmZXJzJ10uc2V0VmFsdWUoZGF0YVsnZW1haWwnXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzYmxlUmVmZXJyZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydjb2RlX3JlZmVycyddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ2RvY3VtZW50X3JlZmVycyddLnNldFZhbHVlKG51bGwpO1xuICAgICAgdGhpcy5jb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ25hbWVfcmVmZXJzJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1sncGhvbmVfcmVmZXJzJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgICB0aGlzLmNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snZW1haWxfcmVmZXJzJ10uc2V0VmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cblxufVxuIiwiPGZvcm0gYXV0b2NvbXBsZXRlPVwib2ZmXCIgW2Zvcm1Hcm91cF09XCJjb2RGb3JtU3RlcEZpdmVcIiBjbGFzcz1cImdyaWRcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtNlwiPlxuICAgIDxjb2QtbW9kYWwtcmVmZXJyZWRcbiAgICAqbmdJZj1cIm1vZGFsVmlzaWJsZVwiXG4gICAgW3Zpc2liaWxpdHldPVwibW9kYWxWaXNpYmxlXCJcbiAgICAobW9kYWxDbG9zZSk9XCJjbG9zZU1vZGFsKCRldmVudClcIlxuICAgICh1c2VyU2VsZWN0KT1cInJlZmVycmVkVXNlcigkZXZlbnQpXCJcbiAgICA+PC9jb2QtbW9kYWwtcmVmZXJyZWQ+XG5cbiAgICA8aXB0LXNlbGVjdFxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydtYXJrZXRpbmdfcmVhc29ucyddXCJcbiAgICAgIFtpbml0aWFsVmFsdWVdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydtYXJrZXRpbmdfcmVhc29ucyddLnZhbHVlXCJcbiAgICAgIChldmVudFNlbGVjdCk9XCJzZWxlY3RNYXJrZXRpbmdSZWFzb25zKCRldmVudClcIlxuICAgICAgW2RhdGFdPVwibWFya2V0aW5nUmVhc29uc1wiXG4gICAgICBbZGVmYXVsdFRleHRdPVwiJ8K/Q8OzbW8gc2UgZW50ZXLDsyBkZWwgcHJvZ3JhbWE/J1wiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgICA8aXB0LWlucHV0XG4gICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICBbcGxhY2VIb2xkZXJdPVwiJ0Rpc2NhcGFjaWRhZCdcIlxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydkaXNhYmlsaXR5J11cIlxuICAgID48L2lwdC1pbnB1dD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTZcIj5cbiAgICA8aXB0LXNlbGVjdFxuICAgICAgW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWydzdHVkeV9yZWFzb25zJ11cIlxuICAgICAgW2luaXRpYWxWYWx1ZV09XCJjb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ3N0dWR5X3JlYXNvbnMnXS52YWx1ZVwiXG4gICAgICAoZXZlbnRTZWxlY3QpPVwic2VsZWN0U3R1ZHlSZWFzb25zKCRldmVudClcIlxuICAgICAgW2RhdGFdPVwic3R1ZHlSZWFzb25zXCJcbiAgICAgIFtkZWZhdWx0VGV4dF09XCInTW90aXZvJ1wiXG4gICAgPjwvaXB0LXNlbGVjdD5cbiAgICA8aXB0LWlucHV0XG4gICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICBbcGxhY2VIb2xkZXJdPVwiJ1LDqWdpbWVuIGRlIHNhbHVkJ1wiXG4gICAgICBbY29udHJvbF09XCJjb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ2hlYWx0aF9yZWdpbWVuJ11cIlxuICAgID48L2lwdC1pbnB1dD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cbiAgICA8aDMgKm5nSWY9XCJ0cnVlXCIgY2xhc3M9XCJyZWZlcnJlZF90aXRsZVwiPkRhdG9zIGRlbCByZWZlcmlkbzwvaDM+XG4gICAgPGRpdiAqbmdJZj1cInRydWVcIiBjbGFzcz1cInJlZmVycmVkX3VzZXJfZGF0YVwiPlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInRG9jdW1lbnRvJ1wiXG4gICAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1snZG9jdW1lbnRfcmVmZXJzJ11cIlxuICAgICAgPjwvaXB0LWlucHV0PlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInTm9tYnJlcydcIlxuICAgICAgICBbY29udHJvbF09XCJjb2RGb3JtU3RlcEZpdmUuY29udHJvbHNbJ25hbWVfcmVmZXJzJ11cIlxuICAgICAgPjwvaXB0LWlucHV0PlxuICAgICAgPGlwdC1pbnB1dFxuICAgICAgICBbaW5wdXRUeXBlXT1cIid0ZXh0J1wiXG4gICAgICAgIFtwbGFjZUhvbGRlcl09XCInVGVsw6lmb25vJ1wiXG4gICAgICAgIFtjb250cm9sXT1cImNvZEZvcm1TdGVwRml2ZS5jb250cm9sc1sncGhvbmVfcmVmZXJzJ11cIlxuICAgICAgPjwvaXB0LWlucHV0PlxuICAgIDwvZGl2PlxuICAgIDxzcGFuIGNsYXNzPVwicC1mbG9hdC1sYWJlbFwiPlxuICAgICAgPHRleHRhcmVhXG4gICAgICAgIGlkPVwiZmxvYXQtaW5wdXRcIlxuICAgICAgICByb3dzPVwiNFwiXG4gICAgICAgIGNvbHM9XCIzMFwiXG4gICAgICAgIHBJbnB1dFRleHRhcmVhXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cIm9ic2VydmF0aW9uXCJcbiAgICAgID48L3RleHRhcmVhPlxuICAgICAgPGxhYmVsIGZvcj1cImZsb2F0LWlucHV0XCI+T2JzZXJ2YWNpb25lczwvbGFiZWw+XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBnYXAtMlwiPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIG11bHRpY3VsdHVyYWxpdGllczsgaW5kZXggYXMgaVwiXG4gICAgICAgIGNsYXNzPVwiZmllbGQtY2hlY2tib3ggbXQtNCBmbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtY2hlY2tib3hcbiAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidtdWx0aWN1bHR1cmFsaXNtJyArICdfJyArIChpICsgMSlcIlxuICAgICAgICAgIGNsYXNzPVwiZXhhbXBsZS1tYXJnaW5cIlxuICAgICAgICA+PC9tYXQtY2hlY2tib3g+XG4gICAgICAgIDxsYWJlbCBbZm9yXT1cIm9wdGlvbi5jb2RlXCI+e3sgb3B0aW9uLm5hbWUgfX08L2xhYmVsPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb2wtMTIgcC00IGZvbnQtYm9sZFwiPlxuICAgIDxwPlxuICAgICAgKiBFbCBlc3R1ZGlhbnRlIG8gdGl0dWxhciBzZSBjb21wcm9tZXRlbiBhIGNhbmNlbGFyIGxhcyBjdW90YXNcbiAgICAgIGVzdGFibGVjaWRhcyBlbiBlc3RlIGNvbnRyYXRvLCBsb3MgcHJpbWVyb3MgNSAoY2luY28pIGTDrWFzIGRlbCBtZXMuIEVuXG4gICAgICBjYXNvIGRlIHF1ZXJlciByZXRpcmFyc2UsIGRlYmVyw6EgaW5mb3JtYXIgcG9yIGVzY3JpdG8gMzAgKHRyZWludGEpIGTDrWFzXG4gICAgICBhbnRlcyB5IGNhbmNlbGFyIGxvIGNvcnJlc3BvbmRpZW50ZSBoYXN0YSBsYSBmZWNoYSBkZWZpbmlkYSBkZSByZXRpcm8sXG4gICAgICBwYXJhIHBvZGVyIG9idGVuZXIgc3UgcGF6IHkgc2Fsdm8uXG4gICAgPC9wPlxuICAgIDxiciAvPjxiciAvPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC0yXCI+XG4gICAgICA8bWF0LWNoZWNrYm94XG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRlcm1zXCJcbiAgICAgICAgY2xhc3M9XCJleGFtcGxlLW1hcmdpblwiXG4gICAgICA+PC9tYXQtY2hlY2tib3g+XG4gICAgICA8IS0tIDxwLWNoZWNrYm94IFtmb3JtQ29udHJvbF09XCJnZXRDaGVja2JveENvbnRyb2woKVwiPjwvcC1jaGVja2JveD4gLS0+XG4gICAgICA8IS0tIDxpcHQtY2hlY2tib3ggW2NvbnRyb2xdPVwiY29kRm9ybVN0ZXBGaXZlLmNvbnRyb2xzWyd0ZXJtcyddXCIgW2NoZWNrYm94T3B0aW9uXT1cInRlcm1zQ2hlY2tib3hTdGF0dXNcIj48L2lwdC1jaGVja2JveD4gLS0+XG4gICAgICA8cD5cbiAgICAgICAgREVDTEFSTyBIQUJFUiBMRcONRE8gWSBBQ0VQVE8gTE9TIFTDiVJNSU5PUyBZIENPTkRJQ0lPTkVTIERFIExBUyBQT0zDjVRJQ0FTXG4gICAgICAgIEVTVEFCTEVDSURBUyBFTiBMQSBJTlNUSVRVQ0nDk04uXG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9mb3JtPlxuXG48ZGl2IGNsYXNzPVwiZmxleCBtdC0zIGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtM1wiPlxuICA8c3BhblxuICAgICpuZ0lmPVwiXG4gICAgICAoY29kRm9ybVN0ZXBGaXZlLmludmFsaWQgJiYgY29kRm9ybVN0ZXBGaXZlLnRvdWNoZWQpIHx8XG4gICAgICAoIXRlcm1zQ2hlY2tib3hTdGF0dXMgJiYgY29kRm9ybVN0ZXBGaXZlLnRvdWNoZWQpXG4gICAgXCJcbiAgICBjbGFzcz1cIlxuICAgICAgdGV4dC1yZWQtNTAwXG4gICAgICBmb250LWJvbGRcbiAgICAgIHRleHQtY2VudGVyXG4gICAgICBtdC0xXG4gICAgICBweS0yXG4gICAgICBiZy1yZWQtMTAwXG4gICAgICB3LWZ1bGxcbiAgICAgIGJvcmRlci1yb3VuZC14bFxuICAgIFwiXG4gICAgPnt7IGVycm9yTWVzc2FnZSB9fTwvc3BhblxuICA+XG4gIDxidXR0b25cbiAgICB0eXBlPVwic3VibWl0XCJcbiAgICBjbGFzcz1cIm1sLWF1dG8gcC1idXR0b24tc3VjY2VzcyBwLWJ1dHRvbi1zbVwiXG4gICAgKGNsaWNrKT1cInNlbmRGb3JtKClcIlxuICAgIHBCdXR0b25cbiAgICBbbGFiZWxdPVwic2VuZEZvcm1Nc2dcIlxuICAgIGljb249XCJwaSBwaS1jaGVja1wiXG4gID48L2J1dHRvbj5cbjwvZGl2PlxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1ycS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb3JlL21vZGVscy9wYXltZW50L3BheW1lbnQtcnEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgdG9rZW5BZG1pbmlzdHJhdGl2ZVJxIHtcbiAgdG9rZW46IHN0cmluZ1xufVxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50TWV0aG9kUnEge1xuICAgIGNvZGU6ICAgICAgICBudW1iZXI7XG4gICAgbmFtZTogICAgICAgIHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTZXJ2aWNlc1JxIHtcbiAgICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYW5rc1JxIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbXB1c1JxIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbldhbGxldFJxIHtcbiAgICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBjYW1wdXM6ICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvZERhdGFHZW5lcmFsU3R1ZGVudFJxIHtcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBjb3Vyc2U6ICAgICAgICAgICAgICAgIENvdXJzZTtcbiAgICBjb3Vyc2VfdHlwZTogICAgICAgICAgIENvdXJzZVR5cGVScTtcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICAgICAgIEFncmVlbWVudDtcbiAgICBlbmdsaXNoX2xldmVsOiAgICAgICAgIEVuZ2xpc2hMZXZlbDtcbiAgICBzdHVkZW50OiAgICAgICAgICAgICAgIFN0dWRlbnRScTtcbiAgICBwYXJlbnQ6ICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBhZGl0aW9uYWxfaW5mb3JtYXRpb246IG51bWJlcjtcbiAgICBhZHZpc2VyOiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB1cGRhdGVkX2F0OiAgICAgICAgICAgIERhdGU7XG4gICAgY3JlYXRlZF9hdDogICAgICAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFncmVlbWVudCB7XG4gICAgY29kZTogICAgIG51bWJlcjtcbiAgICBuYW1lOiAgICAgc3RyaW5nO1xuICAgIGVuZF90aW1lOiBEYXRlO1xuICAgIGNhdGVnb3J5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ291cnNlIHtcbiAgICBjb2RlOiAgICAgICAgICAgIG51bWJlcjtcbiAgICBjb3Vyc2Vfc2NoZWR1bGU6IG51bWJlcjtcbiAgICB0ZWFjaGVyOiAgICAgICAgIG51bWJlcjtcbiAgICBjb3Vyc2VfdHlwZTogICAgIG51bWJlcjtcbiAgICBzdGFydF9kYXRlOiAgICAgIERhdGU7XG4gICAgZmluaXNoX2RhdGU6ICAgICBEYXRlO1xuICAgIGNhcGFjaXR5OiAgICAgICAgbnVtYmVyO1xuICAgIG1vcmVfZGF5czogICAgICAgbnVtYmVyO1xuICAgIGVuZ2xpc2hfbGV2ZWw6ICAgbnVtYmVyO1xuICAgIGFncmVlbWVudDogICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZVR5cGVScSB7XG4gICAgY29kZTogICAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICAgIHN0cmluZztcbiAgICBhY2FkZW1pY19wbGFuOiBFbmdsaXNoTGV2ZWw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW5nbGlzaExldmVsIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0dWRlbnRScSB7XG4gICAgY29kZTogICAgICAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICAgICAgIHN0cmluZztcbiAgICBsYXN0X25hbWU6ICAgICAgICBzdHJpbmc7XG4gICAgbmlja19uYW1lOiAgICAgICAgbnVsbDtcbiAgICBlbWFpbDogICAgICAgICAgICBzdHJpbmc7XG4gICAgZW1haWxfaXB0OiAgICAgICAgbnVsbDtcbiAgICByb2xlOiAgICAgICAgICAgICBudW1iZXI7XG4gICAgc2VydmljZV9ob3VyOiAgICAgbnVtYmVyO1xuICAgIHBob25lX2luZGljYXRpdmU6IG51bWJlcjtcbiAgICBwaG9uZV9udW1iZXI6ICAgICBzdHJpbmc7XG4gICAgZ2VuZGVyOiAgICAgICAgICAgbnVtYmVyO1xuICAgIGJpcnRoZGF0ZTogICAgICAgIG51bGw7XG4gICAgY2l0eTogICAgICAgICAgICAgbnVtYmVyO1xuICAgIGlkX2NhcmRfdHlwZTogICAgIG51bWJlcjtcbiAgICBpZF9jYXJkOiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudEJpbGxScSB7XG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XG4gICAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XG4gICAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XG4gICAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XG4gICAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gICAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XG4gICAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XG4gICAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XG4gICAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gICAgY29kX3BheW1lbnQ6ICAgICAgICBudW1iZXI7XG4gICAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XG4gICAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudEJpbGxBbGxScSB7XG4gICAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XG4gICAgcGF5bWVudF9zZXJ2aWNlczogICBzdHJpbmc7XG4gICAgcGF5bWVudF93YWxsZXQ6ICAgICBzdHJpbmc7XG4gICAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZ2VuZXJhdGVkX2ZvcjogICAgICBzdHJpbmc7XG4gICAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XG4gICAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gICAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XG4gICAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XG4gICAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gICAgY3JlYXRlZF9hdDogICAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJScTIge1xuICAgICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgICAgaWRfY2FyZDogICAgICBzdHJpbmc7XG4gICAgIGlkX2NhcmRfdHlwZTogc3RyaW5nO1xuICAgICBuYW1lOiAgICAgICAgIHN0cmluZztcbiAgICAgbGFzdF9uYW1lOiAgICBzdHJpbmc7XG4gICAgIG5pY2tfbmFtZTogICAgc3RyaW5nO1xuICAgICBlbWFpbDogICAgICAgIHN0cmluZztcbiAgICAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XG4gICAgIGdlbmRlcjogICAgICAgbnVtYmVyO1xuICAgICBjaXR5OiAgICAgICAgIHN0cmluZztcbiAgICAgYmlydGhkYXRlOiAgICBzdHJpbmc7XG4gICAgIHJvbGU6ICAgICAgICAgc3RyaW5nO1xuICAgICBzZXJ2aWNlX2hvdXI6IG51bWJlcjtcbiAgICAgZW1haWxfaXB0OiAgICBzdHJpbmc7XG4gICAgIHVwZGF0ZWRfYXQ6ICAgRGF0ZTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFN0dWRlbnRCeUNvZGVScSB7XG4gICAgdG9rZW46ICAgICBzdHJpbmc7XG4gICAgY29kZTogICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0RGlzY291bnRDb3Vwb25zUnEge1xuICAgIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICAgIGRpc2NvdW50X3JlZjogIHN0cmluZztcbiAgICBhY2FkZW1pY19wbGFuOiBudW1iZXI7XG4gICAgY29kZV9zdHVkZW50OiAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaERpc2NvdW50Q291cG9uc1JxIHtcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGRpc2NvdW50UmVmOiAgICAgICAgICBzdHJpbmc7XG4gICAgbmFtZTogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0eXBlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGRpc2NvdW50VHlwZTogICAgICAgICBzdHJpbmc7XG4gICAgcGVyY2VudGFnZTogICAgICAgICAgIG51bWJlcjtcbiAgICBzdGFydERhdGU6ICAgICAgICAgICAgRGF0ZTtcbiAgICBlbmREYXRlOiAgICAgICAgICAgICAgRGF0ZTtcbiAgICBzdGF0ZTogICAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGRlc2NyaXB0aW9uOiAgICAgICAgICBzdHJpbmc7XG4gICAgZGlzY291bnQ6ICAgICAgICAgICAgIG51bGw7XG4gICAgYWNhZGVtaWNQbGFuOiAgICAgICAgIG51bGw7XG4gICAgZGlzY291bnRBY2FkZW1pY1BsYW46IERpc2NvdW50QWNhZGVtaWNQbGFuMltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvdW50QWNhZGVtaWNQbGFuMiB7XG4gICAgY29kZTogIG51bWJlcjtcbiAgICBuYW1lOiAgc3RyaW5nO1xuICAgIHBpdm90OiBQaXZvdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaXZvdCB7XG4gICAgZGlzY291bnQ6ICAgICBudW1iZXI7XG4gICAgYWNhZGVtaWNQbGFuOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckVrdFJxIHtcbiAgICBjb2RlOiAgICAgICAgICAgICBudW1iZXI7XG4gICAgaWRfY2FyZDogICAgICAgICAgc3RyaW5nO1xuICAgIHVmcHNfY29kZTogICAgICAgIHN0cmluZztcbiAgICBuYW1lOiAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbGFzdF9uYW1lOiAgICAgICAgc3RyaW5nO1xuICAgIGVtYWlsOiAgICAgICAgICAgIHN0cmluZztcbiAgICBwaG9uZV9pbmRpY2F0aXZlOiBudW1iZXI7XG4gICAgcGhvbmU6ICAgICAgICAgICAgc3RyaW5nO1xuICAgIHRva2VuOiAgICAgICAgICAgIHN0cmluZztcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICBudW1iZXI7XG4gICAgdXBkYXRlZF9hdDogICAgICAgRGF0ZTtcbiAgICBjcmVhdGVkX2F0OiAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFubm91bmNlbWVudFVzZXJFa3RScSB7XG4gICAgY29kZTogICAgICAgICBudW1iZXI7XG4gICAgYW5ub3VuY2VtZW50OiBBbm5vdW5jZW1lbnQ7XG4gICAgdXNlcl9la3Q6ICAgICBudW1iZXI7XG4gICAgbmVlZF9wYXk6ICAgICBudW1iZXI7XG4gICAgaXNfcGF5OiAgICAgICBudW1iZXI7XG4gICAgdXBkYXRlZF9hdDogICBEYXRlO1xuICAgIGNyZWF0ZWRfYXQ6ICAgRGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbm5vdW5jZW1lbnQge1xuICAgIGNvZGU6ICAgICAgIG51bWJlcjtcbiAgICBvcGVuX2RhdGU6ICBEYXRlO1xuICAgIGNsb3NlX2RhdGU6IERhdGU7XG4gICAgZmluYWxfZGF0ZTogRGF0ZTtcbiAgICBuYW1lOiAgICAgICBzdHJpbmc7XG4gICAgYWdyZWVtZW50OiAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTdHVkZW50UnEge1xuICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICBjb2Q6ICAgICAgICAgbnVtYmVyO1xuICB0aW1lbHlfZGF0ZTogRGF0ZTtcbiAgYW1vdW50OiAgICAgIG51bWJlcjtcbiAgZmVlX251bWJlcjogIG51bWJlcjtcbiAgc3RhdHVzOiAgICAgIG51bWJlcjtcbiAgdXBkYXRlZF9hdDogIERhdGU7XG4gIGNyZWF0ZWRfYXQ6ICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByaWNlQnlUeXBlU2VydmljZVJxIHtcbiAgICB0b2tlbjogICAgICAgICAgIHN0cmluZyxcbiAgICBwYXltZW50X3NlcnZpY2U6IG51bWJlclxuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBEYXRhUHJpY2VCeXNlcnZpY2VScSB7XG4gICAgY29kZTogICAgICAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9zZXJ2aWNlOiBudW1iZXI7XG4gICAgcGF5bWVudF93YWxsZXQ6ICBudW1iZXI7XG4gICAgcHJpY2U6ICAgICAgICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0U3R1ZGVudEJ5Q29kZVJxIHtcbiAgdG9rZW46ICAgICBzdHJpbmc7XG4gIGNvZGU6ICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRCaWxsQWxsUnEge1xuICBjb2RlOiAgICAgICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XG4gIHBheW1lbnRfc2VydmljZXM6ICAgc3RyaW5nO1xuICBwYXltZW50X3dhbGxldDogICAgIHN0cmluZztcbiAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XG4gIGdlbmVyYXRlZF9mb3I6ICAgICAgc3RyaW5nO1xuICBnZW5lcmF0ZWRfYnk6ICAgICAgIHN0cmluZztcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gIHBheW1lbnRfYW1vdW50OiAgICAgbnVtYmVyO1xuICBvdXRzdGFuZGluZ19hbW91bnQ6IG51bWJlcjtcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gIGRpc2NvdW50OiAgICAgICAgICAgbnVtYmVyO1xuICBwYXllcl9uYW1lOiAgICAgICAgIHN0cmluZztcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gIGNyZWF0ZWRfYXQ6ICAgICAgICAgRGF0ZTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRCaWxsUnEge1xuICBwYXltZW50X21ldGhvZDogICAgIG51bWJlcjtcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XG4gIHBheW1lbnRfd2FsbGV0OiAgICAgbnVtYmVyO1xuICBiYW5rOiAgICAgICAgICAgICAgIG51bWJlcjtcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XG4gIGdlbmVyYXRlZF9ieTogICAgICAgc3RyaW5nO1xuICB0b3RhbF9hbW91bnQ6ICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XG4gIG91dHN0YW5kaW5nX2Ftb3VudDogbnVtYmVyO1xuICBwb3NpdGl2ZV9hbW91bnQ6ICAgIG51bWJlcjtcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XG4gIGNvZGVEaXNjb3VudDogICAgICAgbnVtYmVyO1xuICBwYXllcl9uYW1lOiAgICAgICAgIHN0cmluZztcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gIGNvZF9wYXltZW50OiAgICAgICAgbnVtYmVyO1xuICBjb2RlPzogICAgICAgICAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxMiB7XG4gIHBheW1lbnRfbWV0aG9kOiAgICAgbnVtYmVyO1xuICBwYXltZW50X3NlcnZpY2VzOiAgIG51bWJlcjtcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XG4gIGJhbms6ICAgICAgICAgICAgICAgbnVtYmVyO1xuICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XG4gIHRvdGFsX2Ftb3VudDogICAgICAgbnVtYmVyO1xuICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XG4gIHBvc2l0aXZlX2Ftb3VudDogICAgbnVtYmVyO1xuICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcbiAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XG4gIHBheWVyX25hbWU6ICAgICAgICAgc3RyaW5nO1xuICBwYXllcl9kb2N1bWVudDogICAgIHN0cmluZztcbiAgb2JzZXJ2YXRpb246ICAgICAgICBzdHJpbmc7XG4gIGNvZGVBY2FkZW1pY19wbGFuOiAgbnVtYmVyO1xuICBjb2RfcGF5bWVudDogICAgICAgIG51bWJlcjtcbiAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XG4gIHJlZl9wYXltZW50OiAgICAgICAgbnVtYmVyO1xuICBkYXRlX3BheW1lbnQ6ICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50U3R1ZGVudFJxIHtcbiAgY29kZTogICAgICAgIG51bWJlcjtcbiAgY29kOiAgICAgICAgIG51bWJlcjtcbiAgdGltZWx5X2RhdGU6IERhdGU7XG4gIGFtb3VudDogICAgICBudW1iZXI7XG4gIGZlZV9udW1iZXI6ICBudW1iZXI7XG4gIHN0YXR1czogICAgICBudW1iZXI7XG4gIGRheVZlbmM6ICAgICBudW1iZXI7XG4gIGNvbG9yRGF5OiAgICBzdHJpbmc7XG4gIHVwZGF0ZWRfYXQ6ICBEYXRlO1xuICBjcmVhdGVkX2F0OiAgRGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVyZHVlaW5zdGFsbG1lbnRzUnEge1xuICBjb2RlU3R1ZGVudDogICAgIG51bWJlcjtcbiAgZG9jdW1lbnRTdHVkZW50OiBzdHJpbmc7XG4gIGR1ZUFtb3VudDogICAgICAgbnVtYmVyO1xuICBsYXN0TmFtZVN0dWRlbnQ6IHN0cmluZztcbiAgbmFtZVN0dWRlbnQ6ICAgICBzdHJpbmc7XG4gIG51bUR1ZXM6ICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSB7XG50b2tlbjogICAgICAgICAgICAgICAgc3RyaW5nO1xuY291cnNlX3dhbGxldF9zdGF0dXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGF5bWVudE92ZXJkdWVCeUNvb3JkaW5hdG9yQ291cnNlUnEge1xudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcbmNvdXJzZV93YWxsZXRfc3RhdHVzOiBudW1iZXI7XG5jb3Vyc2VfY29kZTogICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGdWxsQ29kU3R1ZGVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEge1xudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcbmNvdXJzZV93YWxsZXRfc3RhdHVzOiBudW1iZXI7XG5wYXJhbTogICAgICAgICAgICAgICAgc3RyaW5nO1xufVxuXG5cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1ycS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2Rlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb3JlL21vZGVscy9wYXltZW50L3BheW1lbnQtcnEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgdG9rZW5BZG1pbmlzdHJhdGl2ZVJxIHtcbiAgdG9rZW46IHN0cmluZ1xufVxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50TWV0aG9kUnEge1xuICAgIGNvZGU6ICAgICAgICBudW1iZXI7XG4gICAgbmFtZTogICAgICAgIHN0cmluZztcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTZXJ2aWNlc1JxIHtcbiAgICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYW5rc1JxIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbXB1c1JxIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbldhbGxldFJxIHtcbiAgICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBjYW1wdXM6ICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvZERhdGFHZW5lcmFsU3R1ZGVudFJxIHtcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBjb3Vyc2U6ICAgICAgICAgICAgICAgIENvdXJzZTtcbiAgICBjb3Vyc2VfdHlwZTogICAgICAgICAgIENvdXJzZVR5cGVScTtcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICAgICAgIEFncmVlbWVudDtcbiAgICBlbmdsaXNoX2xldmVsOiAgICAgICAgIEVuZ2xpc2hMZXZlbDtcbiAgICBzdHVkZW50OiAgICAgICAgICAgICAgIFN0dWRlbnRScTtcbiAgICBwYXJlbnQ6ICAgICAgICAgICAgICAgIG51bWJlcjtcbiAgICBhZGl0aW9uYWxfaW5mb3JtYXRpb246IG51bWJlcjtcbiAgICBhZHZpc2VyOiAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB1cGRhdGVkX2F0OiAgICAgICAgICAgIERhdGU7XG4gICAgY3JlYXRlZF9hdDogICAgICAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFncmVlbWVudCB7XG4gICAgY29kZTogICAgIG51bWJlcjtcbiAgICBuYW1lOiAgICAgc3RyaW5nO1xuICAgIGVuZF90aW1lOiBEYXRlO1xuICAgIGNhdGVnb3J5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ291cnNlIHtcbiAgICBjb2RlOiAgICAgICAgICAgIG51bWJlcjtcbiAgICBjb3Vyc2Vfc2NoZWR1bGU6IG51bWJlcjtcbiAgICB0ZWFjaGVyOiAgICAgICAgIG51bWJlcjtcbiAgICBjb3Vyc2VfdHlwZTogICAgIG51bWJlcjtcbiAgICBzdGFydF9kYXRlOiAgICAgIERhdGU7XG4gICAgZmluaXNoX2RhdGU6ICAgICBEYXRlO1xuICAgIGNhcGFjaXR5OiAgICAgICAgbnVtYmVyO1xuICAgIG1vcmVfZGF5czogICAgICAgbnVtYmVyO1xuICAgIGVuZ2xpc2hfbGV2ZWw6ICAgbnVtYmVyO1xuICAgIGFncmVlbWVudDogICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvdXJzZVR5cGVScSB7XG4gICAgY29kZTogICAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICAgIHN0cmluZztcbiAgICBhY2FkZW1pY19wbGFuOiBFbmdsaXNoTGV2ZWw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW5nbGlzaExldmVsIHtcbiAgICBjb2RlOiBudW1iZXI7XG4gICAgbmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0dWRlbnRScSB7XG4gICAgY29kZTogICAgICAgICAgICAgbnVtYmVyO1xuICAgIG5hbWU6ICAgICAgICAgICAgIHN0cmluZztcbiAgICBsYXN0X25hbWU6ICAgICAgICBzdHJpbmc7XG4gICAgbmlja19uYW1lOiAgICAgICAgbnVsbDtcbiAgICBlbWFpbDogICAgICAgICAgICBzdHJpbmc7XG4gICAgZW1haWxfaXB0OiAgICAgICAgbnVsbDtcbiAgICByb2xlOiAgICAgICAgICAgICBudW1iZXI7XG4gICAgc2VydmljZV9ob3VyOiAgICAgbnVtYmVyO1xuICAgIHBob25lX2luZGljYXRpdmU6IG51bWJlcjtcbiAgICBwaG9uZV9udW1iZXI6ICAgICBzdHJpbmc7XG4gICAgZ2VuZGVyOiAgICAgICAgICAgbnVtYmVyO1xuICAgIGJpcnRoZGF0ZTogICAgICAgIG51bGw7XG4gICAgY2l0eTogICAgICAgICAgICAgbnVtYmVyO1xuICAgIGlkX2NhcmRfdHlwZTogICAgIG51bWJlcjtcbiAgICBpZF9jYXJkOiAgICAgICAgICBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudEJpbGxScSB7XG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XG4gICAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XG4gICAgYmFuazogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XG4gICAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XG4gICAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gICAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XG4gICAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XG4gICAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XG4gICAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gICAgY29kX3BheW1lbnQ6ICAgICAgICBudW1iZXI7XG4gICAgY29kZUFjYWRlbWljX3BsYW46ICBudW1iZXI7XG4gICAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudEJpbGxBbGxScSB7XG4gICAgY29kZTogICAgICAgICAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XG4gICAgcGF5bWVudF9zZXJ2aWNlczogICBzdHJpbmc7XG4gICAgcGF5bWVudF93YWxsZXQ6ICAgICBzdHJpbmc7XG4gICAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XG4gICAgZ2VuZXJhdGVkX2ZvcjogICAgICBzdHJpbmc7XG4gICAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XG4gICAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XG4gICAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XG4gICAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gICAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XG4gICAgcGF5ZXJfbmFtZTogICAgICAgICBzdHJpbmc7XG4gICAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gICAgY3JlYXRlZF9hdDogICAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJScTIge1xuICAgICBjb2RlOiAgICAgICAgIG51bWJlcjtcbiAgICAgaWRfY2FyZDogICAgICBzdHJpbmc7XG4gICAgIGlkX2NhcmRfdHlwZTogc3RyaW5nO1xuICAgICBuYW1lOiAgICAgICAgIHN0cmluZztcbiAgICAgbGFzdF9uYW1lOiAgICBzdHJpbmc7XG4gICAgIG5pY2tfbmFtZTogICAgc3RyaW5nO1xuICAgICBlbWFpbDogICAgICAgIHN0cmluZztcbiAgICAgcGhvbmVfbnVtYmVyOiBzdHJpbmc7XG4gICAgIGdlbmRlcjogICAgICAgbnVtYmVyO1xuICAgICBjaXR5OiAgICAgICAgIHN0cmluZztcbiAgICAgYmlydGhkYXRlOiAgICBzdHJpbmc7XG4gICAgIHJvbGU6ICAgICAgICAgc3RyaW5nO1xuICAgICBzZXJ2aWNlX2hvdXI6IG51bWJlcjtcbiAgICAgZW1haWxfaXB0OiAgICBzdHJpbmc7XG4gICAgIHVwZGF0ZWRfYXQ6ICAgRGF0ZTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFN0dWRlbnRCeUNvZGVScSB7XG4gICAgdG9rZW46ICAgICBzdHJpbmc7XG4gICAgY29kZTogICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0RGlzY291bnRDb3Vwb25zUnEge1xuICAgIHRva2VuOiAgICAgICAgc3RyaW5nO1xuICAgIGRpc2NvdW50X3JlZjogIHN0cmluZztcbiAgICBhY2FkZW1pY19wbGFuOiBudW1iZXI7XG4gICAgY29kZV9zdHVkZW50OiAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaERpc2NvdW50Q291cG9uc1JxIHtcbiAgICBjb2RlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGRpc2NvdW50UmVmOiAgICAgICAgICBzdHJpbmc7XG4gICAgbmFtZTogICAgICAgICAgICAgICAgIHN0cmluZztcbiAgICB0eXBlOiAgICAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGRpc2NvdW50VHlwZTogICAgICAgICBzdHJpbmc7XG4gICAgcGVyY2VudGFnZTogICAgICAgICAgIG51bWJlcjtcbiAgICBzdGFydERhdGU6ICAgICAgICAgICAgRGF0ZTtcbiAgICBlbmREYXRlOiAgICAgICAgICAgICAgRGF0ZTtcbiAgICBzdGF0ZTogICAgICAgICAgICAgICAgbnVtYmVyO1xuICAgIGRlc2NyaXB0aW9uOiAgICAgICAgICBzdHJpbmc7XG4gICAgZGlzY291bnQ6ICAgICAgICAgICAgIG51bGw7XG4gICAgYWNhZGVtaWNQbGFuOiAgICAgICAgIG51bGw7XG4gICAgZGlzY291bnRBY2FkZW1pY1BsYW46IERpc2NvdW50QWNhZGVtaWNQbGFuMltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvdW50QWNhZGVtaWNQbGFuMiB7XG4gICAgY29kZTogIG51bWJlcjtcbiAgICBuYW1lOiAgc3RyaW5nO1xuICAgIHBpdm90OiBQaXZvdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQaXZvdCB7XG4gICAgZGlzY291bnQ6ICAgICBudW1iZXI7XG4gICAgYWNhZGVtaWNQbGFuOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckVrdFJxIHtcbiAgICBjb2RlOiAgICAgICAgICAgICBudW1iZXI7XG4gICAgaWRfY2FyZDogICAgICAgICAgc3RyaW5nO1xuICAgIHVmcHNfY29kZTogICAgICAgIHN0cmluZztcbiAgICBuYW1lOiAgICAgICAgICAgICBzdHJpbmc7XG4gICAgbGFzdF9uYW1lOiAgICAgICAgc3RyaW5nO1xuICAgIGVtYWlsOiAgICAgICAgICAgIHN0cmluZztcbiAgICBwaG9uZV9pbmRpY2F0aXZlOiBudW1iZXI7XG4gICAgcGhvbmU6ICAgICAgICAgICAgc3RyaW5nO1xuICAgIHRva2VuOiAgICAgICAgICAgIHN0cmluZztcbiAgICBhZ3JlZW1lbnQ6ICAgICAgICBudW1iZXI7XG4gICAgdXBkYXRlZF9hdDogICAgICAgRGF0ZTtcbiAgICBjcmVhdGVkX2F0OiAgICAgICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFubm91bmNlbWVudFVzZXJFa3RScSB7XG4gICAgY29kZTogICAgICAgICBudW1iZXI7XG4gICAgYW5ub3VuY2VtZW50OiBBbm5vdW5jZW1lbnQ7XG4gICAgdXNlcl9la3Q6ICAgICBudW1iZXI7XG4gICAgbmVlZF9wYXk6ICAgICBudW1iZXI7XG4gICAgaXNfcGF5OiAgICAgICBudW1iZXI7XG4gICAgdXBkYXRlZF9hdDogICBEYXRlO1xuICAgIGNyZWF0ZWRfYXQ6ICAgRGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbm5vdW5jZW1lbnQge1xuICAgIGNvZGU6ICAgICAgIG51bWJlcjtcbiAgICBvcGVuX2RhdGU6ICBEYXRlO1xuICAgIGNsb3NlX2RhdGU6IERhdGU7XG4gICAgZmluYWxfZGF0ZTogRGF0ZTtcbiAgICBuYW1lOiAgICAgICBzdHJpbmc7XG4gICAgYWdyZWVtZW50OiAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRTdHVkZW50UnEge1xuICBjb2RlOiAgICAgICAgbnVtYmVyO1xuICBjb2Q6ICAgICAgICAgbnVtYmVyO1xuICB0aW1lbHlfZGF0ZTogRGF0ZTtcbiAgYW1vdW50OiAgICAgIG51bWJlcjtcbiAgZmVlX251bWJlcjogIG51bWJlcjtcbiAgc3RhdHVzOiAgICAgIG51bWJlcjtcbiAgdXBkYXRlZF9hdDogIERhdGU7XG4gIGNyZWF0ZWRfYXQ6ICBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByaWNlQnlUeXBlU2VydmljZVJxIHtcbiAgICB0b2tlbjogICAgICAgICAgIHN0cmluZyxcbiAgICBwYXltZW50X3NlcnZpY2U6IG51bWJlclxuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBEYXRhUHJpY2VCeXNlcnZpY2VScSB7XG4gICAgY29kZTogICAgICAgICAgICBudW1iZXI7XG4gICAgcGF5bWVudF9zZXJ2aWNlOiBudW1iZXI7XG4gICAgcGF5bWVudF93YWxsZXQ6ICBudW1iZXI7XG4gICAgcHJpY2U6ICAgICAgICAgICBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0U3R1ZGVudEJ5Q29kZVJxIHtcbiAgdG9rZW46ICAgICBzdHJpbmc7XG4gIGNvZGU6ICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRCaWxsQWxsUnEge1xuICBjb2RlOiAgICAgICAgICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9tZXRob2Q6ICAgICBzdHJpbmc7XG4gIHBheW1lbnRfc2VydmljZXM6ICAgc3RyaW5nO1xuICBwYXltZW50X3dhbGxldDogICAgIHN0cmluZztcbiAgYmFuazogICAgICAgICAgICAgICBzdHJpbmc7XG4gIGdlbmVyYXRlZF9mb3I6ICAgICAgc3RyaW5nO1xuICBnZW5lcmF0ZWRfYnk6ICAgICAgIHN0cmluZztcbiAgdG90YWxfYW1vdW50OiAgICAgICBudW1iZXI7XG4gIHBheW1lbnRfYW1vdW50OiAgICAgbnVtYmVyO1xuICBvdXRzdGFuZGluZ19hbW91bnQ6IG51bWJlcjtcbiAgcG9zaXRpdmVfYW1vdW50OiAgICBudW1iZXI7XG4gIGRpc2NvdW50OiAgICAgICAgICAgbnVtYmVyO1xuICBwYXllcl9uYW1lOiAgICAgICAgIHN0cmluZztcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gIGNyZWF0ZWRfYXQ6ICAgICAgICAgRGF0ZTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnRCaWxsUnEge1xuICBwYXltZW50X21ldGhvZDogICAgIG51bWJlcjtcbiAgcGF5bWVudF9zZXJ2aWNlczogICBudW1iZXI7XG4gIHBheW1lbnRfd2FsbGV0OiAgICAgbnVtYmVyO1xuICBiYW5rOiAgICAgICAgICAgICAgIG51bWJlcjtcbiAgZ2VuZXJhdGVkX2ZvcjogICAgICBudW1iZXI7XG4gIGdlbmVyYXRlZF9ieTogICAgICAgc3RyaW5nO1xuICB0b3RhbF9hbW91bnQ6ICAgICAgIG51bWJlcjtcbiAgcGF5bWVudF9hbW91bnQ6ICAgICBudW1iZXI7XG4gIG91dHN0YW5kaW5nX2Ftb3VudDogbnVtYmVyO1xuICBwb3NpdGl2ZV9hbW91bnQ6ICAgIG51bWJlcjtcbiAgZGlzY291bnQ6ICAgICAgICAgICBudW1iZXI7XG4gIGNvZGVEaXNjb3VudDogICAgICAgbnVtYmVyO1xuICBwYXllcl9uYW1lOiAgICAgICAgIHN0cmluZztcbiAgcGF5ZXJfZG9jdW1lbnQ6ICAgICBzdHJpbmc7XG4gIGNvZF9wYXltZW50OiAgICAgICAgbnVtYmVyO1xuICBjb2RlPzogICAgICAgICAgICAgIG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50QmlsbFJxMiB7XG4gIHBheW1lbnRfbWV0aG9kOiAgICAgbnVtYmVyO1xuICBwYXltZW50X3NlcnZpY2VzOiAgIG51bWJlcjtcbiAgcGF5bWVudF93YWxsZXQ6ICAgICBudW1iZXI7XG4gIGJhbms6ICAgICAgICAgICAgICAgbnVtYmVyO1xuICBnZW5lcmF0ZWRfZm9yOiAgICAgIG51bWJlcjtcbiAgZ2VuZXJhdGVkX2J5OiAgICAgICBzdHJpbmc7XG4gIHRvdGFsX2Ftb3VudDogICAgICAgbnVtYmVyO1xuICBwYXltZW50X2Ftb3VudDogICAgIG51bWJlcjtcbiAgb3V0c3RhbmRpbmdfYW1vdW50OiBudW1iZXI7XG4gIHBvc2l0aXZlX2Ftb3VudDogICAgbnVtYmVyO1xuICBkaXNjb3VudDogICAgICAgICAgIG51bWJlcjtcbiAgY29kZURpc2NvdW50OiAgICAgICBudW1iZXI7XG4gIHBheWVyX25hbWU6ICAgICAgICAgc3RyaW5nO1xuICBwYXllcl9kb2N1bWVudDogICAgIHN0cmluZztcbiAgb2JzZXJ2YXRpb246ICAgICAgICBzdHJpbmc7XG4gIGNvZGVBY2FkZW1pY19wbGFuOiAgbnVtYmVyO1xuICBjb2RfcGF5bWVudDogICAgICAgIG51bWJlcjtcbiAgY29kZT86ICAgICAgICAgICAgICBudW1iZXI7XG4gIHJlZl9wYXltZW50OiAgICAgICAgc3RyaW5nO1xuICBkYXRlX3BheW1lbnQ6ICAgICAgIHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50U3R1ZGVudFJxIHtcbiAgY29kZTogICAgICAgIG51bWJlcjtcbiAgY29kOiAgICAgICAgIG51bWJlcjtcbiAgdGltZWx5X2RhdGU6IERhdGU7XG4gIGFtb3VudDogICAgICBudW1iZXI7XG4gIGZlZV9udW1iZXI6ICBudW1iZXI7XG4gIHN0YXR1czogICAgICBudW1iZXI7XG4gIGRheVZlbmM6ICAgICBudW1iZXI7XG4gIGNvbG9yRGF5OiAgICBzdHJpbmc7XG4gIHVwZGF0ZWRfYXQ6ICBEYXRlO1xuICBjcmVhdGVkX2F0OiAgRGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVyZHVlaW5zdGFsbG1lbnRzUnEge1xuICBjb2RlU3R1ZGVudDogICAgIG51bWJlcjtcbiAgZG9jdW1lbnRTdHVkZW50OiBzdHJpbmc7XG4gIGR1ZUFtb3VudDogICAgICAgbnVtYmVyO1xuICBsYXN0TmFtZVN0dWRlbnQ6IHN0cmluZztcbiAgbmFtZVN0dWRlbnQ6ICAgICBzdHJpbmc7XG4gIG51bUR1ZXM6ICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXltZW50T3ZlcmR1ZUJ5Q29vcmRpbmF0b3JScSB7XG50b2tlbjogICAgICAgICAgICAgICAgc3RyaW5nO1xuY291cnNlX3dhbGxldF9zdGF0dXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGF5bWVudE92ZXJkdWVCeUNvb3JkaW5hdG9yQ291cnNlUnEge1xudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcbmNvdXJzZV93YWxsZXRfc3RhdHVzOiBudW1iZXI7XG5jb3Vyc2VfY29kZTogICAgICAgICAgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGdWxsQ29kU3R1ZGVudE92ZXJkdWVCeUNvb3JkaW5hdG9yUnEge1xudG9rZW46ICAgICAgICAgICAgICAgIHN0cmluZztcbmNvdXJzZV93YWxsZXRfc3RhdHVzOiBudW1iZXI7XG5wYXJhbTogICAgICAgICAgICAgICAgc3RyaW5nO1xufVxuXG5cbiJdfQ==