@sapphire-ion/framework 0.30.25 → 0.30.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/default/default-list/default-list.component.mjs +8 -3
- package/esm2022/lib/components/default/default-list/header-list/header-list.component.mjs +1 -1
- package/esm2022/lib/components/default/default-pagination/default-pagination.component.mjs +1 -1
- package/esm2022/lib/components/default/default-table/default-table.component.mjs +7 -2
- package/esm2022/lib/components/inputs/input-color/input-color.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-cpf-cnpj/input-cpf-cnpj.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-date/input-date.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-decimal/input-decimal.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-file/download-button/download-button.component.mjs +6 -3
- package/esm2022/lib/components/inputs/input-file/input-file.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-select/input-select.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-string/input-string.component.mjs +1 -1
- package/esm2022/lib/components/inputs/input-textarea/input-textarea.component.mjs +1 -1
- package/esm2022/lib/components/login/login-admin/login-admin.component.mjs +2 -2
- package/esm2022/lib/components/login/login.component.mjs +2 -2
- package/fesm2022/sapphire-ion-framework.mjs +30 -17
- package/fesm2022/sapphire-ion-framework.mjs.map +1 -1
- package/lib/components/default/default-list/default-list.component.d.ts +3 -1
- package/lib/components/default/default-table/default-table.component.d.ts +2 -1
- package/lib/components/inputs/input-file/download-button/download-button.component.d.ts +2 -1
- package/package.json +1 -1
|
@@ -80,7 +80,7 @@ export class DefaultLoginComponent {
|
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultLoginComponent, deps: [{ token: i1.FormBuilder }, { token: i2.GenericService }, { token: i3.NavController }, { token: i4.AuthService }, { token: i5.ApiUrlProviderService }, { token: i6.EnvironmentService }, { token: i7.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
83
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DefaultLoginComponent, isStandalone: true, selector: "login", outputs: { OnLogin: "OnLogin" }, host: { listeners: { "window:keydown": "Login($event)" } }, viewQueries: [{ propertyName: "loginContainer", first: true, predicate: ["loginContainer"], descendants: true }], ngImport: i0, template: "<!-- <div class=\"size-full flex justify-center items-center relative\">\r\n <div class=\"landscape:w-4/5 portrait:w-full landscape:h-2/3 portrait:h-full landscape:max-w-[60rem] translucid-border landscape:rounded-3xl landscape:backdrop-blur-xl overflow-hidden\">\r\n <div class=\"size-full flex portrait:flex-col\" style=\"background-color: color-mix(in srgb, var(--ion-color-light) 20%, transparent 80%);\">\r\n <div class=\"shrink-0 w-96 portrait:w-full portrait:h-32 h-full p-3\">\r\n <div class=\"rounded-2xl size-full overflow-x-hidden\">\r\n <ng-content class=\"size-full\"></ng-content>\r\n </div>\r\n </div>\r\n <div class=\"grow flex items-center justify-center h-full py-3 pr-3 portrait:pl-3\">\r\n <div class=\"w-96 h-full flex flex-col items-center justify-center gap-2\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n\r\n <ion-text class=\"text-5xl my-10 portrait:mt-[-5rem]\"> Login </ion-text>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\">\r\n <ion-card-content>\r\n <ion-item lines=\"none\" label=\"Senha\" labelPlacement=\"stacked\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"person\" slot=\"start\"></ion-icon>\r\n <ion-input placeholder=\"Usu\u00E1rio / User\" formControlName=\"apelido\"></ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\"> \r\n <ion-card-content>\r\n <ion-item lines=\"none\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"lock-closed\" slot=\"start\"></ion-icon>\r\n <ion-input type=\"password\" formControlName=\"senha\" placeholder=\"Senha / Password\">\r\n <ion-input-password-toggle slot=\"end\"></ion-input-password-toggle>\r\n </ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <div class=\"w-full\">\r\n <a href=\"\">Esqueceu a senha?</a>\r\n </div>\r\n\r\n <div class=\"flex w-full\">\r\n <ion-button class=\"rounded-2xl shadow-xl default-transition w-full\" expand=\"block\" (click)=\"Login()\" [disabled]=\"loading\">\r\n <ion-spinner class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': !loading, 'mr-2' : loading}\" slot=\"start\"></ion-spinner>\r\n <ion-icon class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': loading}\" name=\"enter-outline\" slot=\"start\" ></ion-icon>\r\n <span class=\"default-transition\" > Login </span>\r\n </ion-button>\r\n\r\n <ion-button class=\"shrink-0 aspect-square ml-3\" color=\"dark\" hidden>\r\n <svg class=\"size-8\" slot=\"icon-only\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 32 32\" width=\"64\" height=\"64\"><defs><path id=\"A\" d=\"M44.5 20H24v8.5h11.8C34.7 33.9 30.1 37 24 37c-7.2 0-13-5.8-13-13s5.8-13 13-13c3.1 0 5.9 1.1 8.1 2.9l6.4-6.4C34.6 4.1 29.6 2 24 2 11.8 2 2 11.8 2 24s9.8 22 22 22c11 0 21-8 21-22 0-1.3-.2-2.7-.5-4z\"/></defs><clipPath id=\"B\"><use xlink:href=\"#A\"/></clipPath><g transform=\"matrix(.727273 0 0 .727273 -.954545 -1.45455)\"><path d=\"M0 37V11l17 13z\" clip-path=\"url(#B)\" fill=\"#fbbc05\"/><path d=\"M0 11l17 13 7-6.1L48 14V0H0z\" clip-path=\"url(#B)\" fill=\"#ea4335\"/><path d=\"M0 37l30-23 7.9 1L48 0v48H0z\" clip-path=\"url(#B)\" fill=\"#34a853\"/><path d=\"M48 48L17 24l-4-3 35-10z\" clip-path=\"url(#B)\" fill=\"#4285f4\"/></g></svg>\r\n </ion-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div> -->\r\n\r\n<div #loginContainer class=\"size-full flex justify-center items-center relative portrait:p-4\">\r\n <div class=\"landscape:w-4/5 landscape:h-2/3 landscape:xl:max-w-[60rem] portrait:size-full translucid-border backdrop-blur-xl rounded-3xl overflow-hidden\">\r\n <div class=\"size-full flex portrait:flex-col\" style=\"background-color: color-mix(in srgb, var(--ion-color-light) 20%, transparent 80%);\">\r\n <div class=\"shrink-0 w-96 portrait:w-full portrait:h-40 landscape:h-full p-2\">\r\n <div class=\"size-full rounded-2xl overflow-hidden\">\r\n <ng-content select=\"[slot=logo]\" class=\"size-full\"></ng-content>\r\n </div>\r\n </div>\r\n <div class=\"shrink size-full flex flex-col items-center justify-center gap-3 px-10 relative\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n <ion-text class=\"h-24 text-5xl\"> Login </ion-text>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\">\r\n <ion-card-content>\r\n <ion-item lines=\"none\" label=\"Senha\" labelPlacement=\"stacked\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"person\" slot=\"start\"></ion-icon>\r\n <ion-input placeholder=\"Usu\u00E1rio / User\" formControlName=\"apelido\"></ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\"> \r\n <ion-card-content>\r\n <ion-item lines=\"none\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"lock-closed\" slot=\"start\"></ion-icon>\r\n <ion-input type=\"password\" formControlName=\"senha\" placeholder=\"Senha / Password\">\r\n <ion-input-password-toggle slot=\"end\"></ion-input-password-toggle>\r\n </ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <div class=\"flex w-full\">\r\n <ion-button class=\"transition-all rounded-2xl shadow-xl default-transition w-full\" expand=\"block\" (click)=\"Login()\" [disabled]=\"loading\">\r\n <ion-spinner class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': !loading, 'mr-2' : loading}\" slot=\"start\"></ion-spinner>\r\n <ion-icon class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': loading}\" name=\"enter-outline\" slot=\"start\" ></ion-icon>\r\n <span class=\"default-transition\"> Login </span>\r\n </ion-button>\r\n\r\n <!-- <ion-button class=\"shrink-0 aspect-square ml-3\" color=\"dark\" hidden>\r\n <svg class=\"size-8\" slot=\"icon-only\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 32 32\" width=\"64\" height=\"64\"><defs><path id=\"A\" d=\"M44.5 20H24v8.5h11.8C34.7 33.9 30.1 37 24 37c-7.2 0-13-5.8-13-13s5.8-13 13-13c3.1 0 5.9 1.1 8.1 2.9l6.4-6.4C34.6 4.1 29.6 2 24 2 11.8 2 2 11.8 2 24s9.8 22 22 22c11 0 21-8 21-22 0-1.3-.2-2.7-.5-4z\"/></defs><clipPath id=\"B\"><use xlink:href=\"#A\"/></clipPath><g transform=\"matrix(.727273 0 0 .727273 -.954545 -1.45455)\"><path d=\"M0 37V11l17 13z\" clip-path=\"url(#B)\" fill=\"#fbbc05\"/><path d=\"M0 11l17 13 7-6.1L48 14V0H0z\" clip-path=\"url(#B)\" fill=\"#ea4335\"/><path d=\"M0 37l30-23 7.9 1L48 0v48H0z\" clip-path=\"url(#B)\" fill=\"#34a853\"/><path d=\"M48 48L17 24l-4-3 35-10z\" clip-path=\"url(#B)\" fill=\"#4285f4\"/></g></svg>\r\n </ion-button> -->\r\n </div>\r\n\r\n <div class=\"w-full\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["ion-card{margin:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);background:color-mix(in srgb,var(--ion-color-light) 15%,transparent 93%);border-bottom-color:var(--ion-color-medium);border-right-color:color-mix(in srgb,var(--ion-color-medium) 30%,transparent 70%);border-top-color:color-mix(in srgb,var(--ion-color-medium) 30%,transparent 70%);border-left-color:color-mix(in srgb,var(--ion-color-medium) 30%,transparent 70%);border-width:1px 1px 2px 1px}ion-card ion-card-content{padding:0}ion-card:hover{background:color-mix(in srgb,var(--ion-color-dark) 15%,transparent 93%)}ion-card.submitted.invalid{border-color:color-mix(in srgb,var(--ion-color-danger) 75%,transparent 25%)!important}ion-card ion-card-content{width:100%;height:100%;background-color:transparent;padding:0}ion-item{--background: transparent;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonInput, selector: "ion-input", inputs: ["autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearInputIcon", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "spellcheck", "step", "type", "value"] }, { kind: "component", type: i3.IonInputPasswordToggle, selector: "ion-input-password-toggle", inputs: ["color", "hideIcon", "mode", "showIcon"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: i3.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i3.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { 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"] }] }); }
|
|
83
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DefaultLoginComponent, isStandalone: true, selector: "login", outputs: { OnLogin: "OnLogin" }, host: { listeners: { "window:keydown": "Login($event)" } }, viewQueries: [{ propertyName: "loginContainer", first: true, predicate: ["loginContainer"], descendants: true }], ngImport: i0, template: "<!-- <div class=\"size-full flex justify-center items-center relative\">\r\n <div class=\"landscape:w-4/5 portrait:w-full landscape:h-2/3 portrait:h-full landscape:max-w-[60rem] translucid-border landscape:rounded-3xl landscape:backdrop-blur-xl overflow-hidden\">\r\n <div class=\"size-full flex portrait:flex-col\" style=\"background-color: color-mix(in srgb, var(--ion-color-light) 20%, transparent 80%);\">\r\n <div class=\"shrink-0 w-96 portrait:w-full portrait:h-32 h-full p-3\">\r\n <div class=\"rounded-2xl size-full overflow-x-hidden\">\r\n <ng-content class=\"size-full\"></ng-content>\r\n </div>\r\n </div>\r\n <div class=\"grow flex items-center justify-center h-full py-3 pr-3 portrait:pl-3\">\r\n <div class=\"w-96 h-full flex flex-col items-center justify-center gap-2\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n\r\n <ion-text class=\"text-5xl my-10 portrait:mt-[-5rem]\"> Login </ion-text>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\">\r\n <ion-card-content>\r\n <ion-item lines=\"none\" label=\"Senha\" labelPlacement=\"stacked\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"person\" slot=\"start\"></ion-icon>\r\n <ion-input placeholder=\"Usu\u00E1rio / User\" formControlName=\"apelido\"></ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\"> \r\n <ion-card-content>\r\n <ion-item lines=\"none\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"lock-closed\" slot=\"start\"></ion-icon>\r\n <ion-input type=\"password\" formControlName=\"senha\" placeholder=\"Senha / Password\">\r\n <ion-input-password-toggle slot=\"end\"></ion-input-password-toggle>\r\n </ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <div class=\"w-full\">\r\n <a href=\"\">Esqueceu a senha?</a>\r\n </div>\r\n\r\n <div class=\"flex w-full\">\r\n <ion-button class=\"rounded-2xl shadow-xl default-transition w-full\" expand=\"block\" (click)=\"Login()\" [disabled]=\"loading\">\r\n <ion-spinner class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': !loading, 'mr-2' : loading}\" slot=\"start\"></ion-spinner>\r\n <ion-icon class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': loading}\" name=\"enter-outline\" slot=\"start\" ></ion-icon>\r\n <span class=\"default-transition\" > Login </span>\r\n </ion-button>\r\n\r\n <ion-button class=\"shrink-0 aspect-square ml-3\" color=\"dark\" hidden>\r\n <svg class=\"size-8\" slot=\"icon-only\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 32 32\" width=\"64\" height=\"64\"><defs><path id=\"A\" d=\"M44.5 20H24v8.5h11.8C34.7 33.9 30.1 37 24 37c-7.2 0-13-5.8-13-13s5.8-13 13-13c3.1 0 5.9 1.1 8.1 2.9l6.4-6.4C34.6 4.1 29.6 2 24 2 11.8 2 2 11.8 2 24s9.8 22 22 22c11 0 21-8 21-22 0-1.3-.2-2.7-.5-4z\"/></defs><clipPath id=\"B\"><use xlink:href=\"#A\"/></clipPath><g transform=\"matrix(.727273 0 0 .727273 -.954545 -1.45455)\"><path d=\"M0 37V11l17 13z\" clip-path=\"url(#B)\" fill=\"#fbbc05\"/><path d=\"M0 11l17 13 7-6.1L48 14V0H0z\" clip-path=\"url(#B)\" fill=\"#ea4335\"/><path d=\"M0 37l30-23 7.9 1L48 0v48H0z\" clip-path=\"url(#B)\" fill=\"#34a853\"/><path d=\"M48 48L17 24l-4-3 35-10z\" clip-path=\"url(#B)\" fill=\"#4285f4\"/></g></svg>\r\n </ion-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div> -->\r\n\r\n<div #loginContainer class=\"size-full flex justify-center items-center relative portrait:p-4\">\r\n <div class=\"landscape:w-4/5 landscape:h-2/3 landscape:xl:max-w-[60rem] portrait:size-full translucid-border backdrop-blur-xl rounded-3xl overflow-hidden\">\r\n <div class=\"size-full flex portrait:flex-col\" style=\"background-color: color-mix(in srgb, var(--ion-color-light) 20%, transparent 80%);\">\r\n <div class=\"shrink-0 w-96 portrait:w-full portrait:h-40 landscape:h-full p-2\">\r\n <div class=\"size-full rounded-2xl overflow-hidden\">\r\n <ng-content select=\"[slot=logo]\" class=\"size-full\"></ng-content>\r\n </div>\r\n </div>\r\n <div class=\"shrink size-full flex flex-col items-center justify-center gap-3 px-10 relative\" *ngIf=\"frm\" [formGroup]=\"frm\">\r\n <ion-text class=\"h-24 text-5xl\"> Login </ion-text>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\">\r\n <ion-card-content>\r\n <ion-item lines=\"none\" label=\"Senha\" labelPlacement=\"stacked\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"person\" slot=\"start\"></ion-icon>\r\n <ion-input placeholder=\"Usu\u00E1rio / User\" formControlName=\"apelido\"></ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <ion-card class=\"w-full backdrop-blur-xl\"> \r\n <ion-card-content>\r\n <ion-item lines=\"none\" class=\"rounded-2xl my-3 w-full\">\r\n <ion-icon name=\"lock-closed\" slot=\"start\"></ion-icon>\r\n <ion-input type=\"password\" formControlName=\"senha\" placeholder=\"Senha / Password\">\r\n <ion-input-password-toggle slot=\"end\"></ion-input-password-toggle>\r\n </ion-input>\r\n </ion-item>\r\n </ion-card-content>\r\n </ion-card>\r\n\r\n <div class=\"flex w-full\">\r\n <ion-button class=\"transition-all rounded-2xl shadow-xl default-transition w-full\" expand=\"block\" (click)=\"Login()\" [disabled]=\"loading\">\r\n <ion-spinner class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': !loading, 'mr-2' : loading}\" slot=\"start\"></ion-spinner>\r\n <ion-icon class=\"default-transition\" [ngClass]=\"{'-translate-x-12 opacity-0 size-0': loading}\" name=\"enter-outline\" slot=\"start\" ></ion-icon>\r\n <span class=\"default-transition\"> Login </span>\r\n </ion-button>\r\n\r\n <!-- <ion-button class=\"shrink-0 aspect-square ml-3\" color=\"dark\" hidden>\r\n <svg class=\"size-8\" slot=\"icon-only\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 32 32\" width=\"64\" height=\"64\"><defs><path id=\"A\" d=\"M44.5 20H24v8.5h11.8C34.7 33.9 30.1 37 24 37c-7.2 0-13-5.8-13-13s5.8-13 13-13c3.1 0 5.9 1.1 8.1 2.9l6.4-6.4C34.6 4.1 29.6 2 24 2 11.8 2 2 11.8 2 24s9.8 22 22 22c11 0 21-8 21-22 0-1.3-.2-2.7-.5-4z\"/></defs><clipPath id=\"B\"><use xlink:href=\"#A\"/></clipPath><g transform=\"matrix(.727273 0 0 .727273 -.954545 -1.45455)\"><path d=\"M0 37V11l17 13z\" clip-path=\"url(#B)\" fill=\"#fbbc05\"/><path d=\"M0 11l17 13 7-6.1L48 14V0H0z\" clip-path=\"url(#B)\" fill=\"#ea4335\"/><path d=\"M0 37l30-23 7.9 1L48 0v48H0z\" clip-path=\"url(#B)\" fill=\"#34a853\"/><path d=\"M48 48L17 24l-4-3 35-10z\" clip-path=\"url(#B)\" fill=\"#4285f4\"/></g></svg>\r\n </ion-button> -->\r\n </div>\r\n\r\n <div class=\"w-full\">\r\n <ng-content select=\"[slot=end]\"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["ion-card{margin:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1);background:color-mix(in srgb,var(--ion-color-light) 15%,transparent 93%);border-bottom-color:var(--ion-color-medium);border-right-color:color-mix(in srgb,var(--ion-color-medium) 30%,transparent 70%);border-top-color:color-mix(in srgb,var(--ion-color-medium) 30%,transparent 70%);border-left-color:color-mix(in srgb,var(--ion-color-medium) 30%,transparent 70%);border-width:1px 1px 2px 1px}ion-card ion-card-content{padding:0}ion-card:hover{background:color-mix(in srgb,var(--ion-color-dark) 15%,transparent 93%)}ion-card.submitted.invalid{border-color:color-mix(in srgb,var(--ion-color-danger) 75%,transparent 25%)!important}ion-card ion-card-content{width:100%;height:100%;background-color:transparent;padding:0}ion-item{--background: transparent;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: IonicModule }, { kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonInput, selector: "ion-input", inputs: ["autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearInputIcon", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "spellcheck", "step", "type", "value"] }, { kind: "component", type: i3.IonInputPasswordToggle, selector: "ion-input-password-toggle", inputs: ["color", "hideIcon", "mode", "showIcon"] }, { kind: "component", type: i3.IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: i3.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i3.TextValueAccessor, selector: "ion-input:not([type=number]),ion-input-otp[type=text],ion-textarea,ion-searchbar" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { 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"] }] }); }
|
|
84
84
|
}
|
|
85
85
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DefaultLoginComponent, decorators: [{
|
|
86
86
|
type: Component,
|
|
@@ -99,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
99
99
|
type: HostListener,
|
|
100
100
|
args: ['window:keydown', ['$event']]
|
|
101
101
|
}] } });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFhLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7OztBQWMxRCxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQ1UsRUFBZSxFQUNmLGNBQThCLEVBQzlCLGFBQTRCLEVBQzVCLFdBQXdCLEVBQ3pCLHFCQUE0QyxFQUM1QyxXQUErQixFQUM5QixNQUFjO1FBTmQsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFY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LElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7WUFDM0UsQ0FBQztZQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDOytHQXhFVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixnUkN2QmxDLG8yT0F1R00sc3NDRHpGRixZQUFZLGdPQUNaLFdBQVcsNjVEQUNYLFdBQVcsa1NBQ1gsbUJBQW1COzs0RkFNVixxQkFBcUI7a0JBWmpDLFNBQVM7aUNBQ0ksSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxXQUFXO3dCQUNYLG1CQUFtQjtxQkFDcEIsWUFDUyxPQUFPOzZQQXlDUCxPQUFPO3NCQUFoQixNQUFNO2dCQUNzQixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFHckIsS0FBSztzQkFEVixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSW9uaWNNb2R1bGUsIE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBpVXJsUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2ViL2FwaS11cmwtcHJvdmlkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEdlbmVyaWNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZ2VuZXJpY3Muc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSW9uaWNNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgXSxcclxuICBzZWxlY3RvcjogJ2xvZ2luJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbG9naW4uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xvZ2luLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0TG9naW5Db21wb25lbnQgIGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgZ2VuZXJpY1NlcnZpY2U6IEdlbmVyaWNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBuYXZDb250cm9sbGVyOiBOYXZDb250cm9sbGVyLFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgYXBpVXJsUHJvdmlkZXJTZXJ2aWNlOiBBcGlVcmxQcm92aWRlclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgY29yZVNlcnZpY2U6IEVudmlyb25tZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXJcclxuICApIHsgXHJcbiAgICB0aGlzLmdlbmVyaWNTZXJ2aWNlLlNldFRpdGxlKFwiTG9naW5cIik7XHJcbiAgfVxyXG4gIFxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5DcmVhdGVGb3JtKCk7XHJcblxyXG4gICAgaWYoIXRoaXMuY29yZVNlcnZpY2UuZW52aXJvbm1lbnQucHJvZHVjdGlvbil7XHJcbiAgICAgIHRoaXMuZnJtLnBhdGNoVmFsdWUodGhpcy5jb3JlU2VydmljZS5lbnZpcm9ubWVudC5kZWZhdWx0Q3JlZGVudGlhbHMpOyBcclxuICAgIH1cclxuICAgIGNvbnN0IFRva2VuID0gYXdhaXQgdGhpcy5hdXRoU2VydmljZS5Mb2FkVG9rZW4oKVxyXG4gICAgaWYodGhpcy5hdXRoU2VydmljZS5pc1Rva2VuVmFsaWQoVG9rZW4pKXtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL1wiXSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIGZybTogRm9ybUdyb3VwO1xyXG4gIENyZWF0ZUZvcm0oKTogdm9pZHtcclxuICAgIHRoaXMuZnJtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIGFwZWxpZG8gOiBbbnVsbCAsVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgIHNlbmhhICAgOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbG9hZGluZzogYm9vbGVhbjtcclxuICBzdWJtaXR0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIE9uTG9naW46IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQFZpZXdDaGlsZCgnbG9naW5Db250YWluZXInKSBsb2dpbkNvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXlkb3duJywgWyckZXZlbnQnXSlcclxuICBhc3luYyBMb2dpbigkZXZlbnQ/OiBLZXlib2FyZEV2ZW50KTogUHJvbWlzZTx2b2lkPntcclxuICAgIGlmKCRldmVudCAmJiAkZXZlbnQua2V5ICE9ICdFbnRlcicpeyByZXR1cm47IH1cclxuICAgIGlmKCRldmVudCAmJiAhdGhpcy5sb2dpbkNvbnRhaW5lci5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSl7XHJcbiAgICAgIHJldHVybjsgLy8gUHJldmVudCBsb2dpbiBpZiB0aGUgYWN0aXZlIGVsZW1lbnQgaXMgbm90IHdpdGhpbiB0aGUgbG9naW4gY29udGFpbmVyXHJcbiAgICB9XHJcbiAgICBpZih0aGlzLmxvYWRpbmcpeyByZXR1cm47IH1cclxuXHJcbiAgICB0aGlzLnN1Ym1pdHRlZCA9IHRydWU7XHJcbiAgICB0aGlzLmxvYWRpbmcgICA9IHRydWU7XHJcbiAgIFxyXG4gICAgaWYoIXRoaXMuZnJtLnZhbGlkKXtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZ2VuZXJpY1NlcnZpY2UuUHJlc2VudFRvYXN0KFwiVXN1YXJpbyAvIFNlbmhhIG7Do28gaW5mb3JtYWRvIVwiKTsgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRyeXtcclxuICAgICAgY29uc3QgVG9rZW4gPSBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLkxvZ2luKHRoaXMuZnJtLnZhbHVlKTtcclxuXHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm5hdkNvbnRyb2xsZXIubmF2aWdhdGVSb290KFwiL1wiKTtcclxuICAgICAgdGhpcy5nZW5lcmljU2VydmljZS5QcmVzZW50VG9hc3QoXCJMb2dhZG8gY29tIHN1Y2Vzc28hXCIsIFwiY2hlY2ttYXJrLWNpcmNsZVwiKTtcclxuICAgICAgdGhpcy5PbkxvZ2luLmVtaXQoVG9rZW4pO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKHN0YXR1cyl7XHJcbiAgICAgIGlmKHN0YXR1cyA9PSA0MDEpe1xyXG4gICAgICAgIHRoaXMuZ2VuZXJpY1NlcnZpY2UuUHJlc2VudFRvYXN0KFwiVXN1w6FyaW8gLyBTZW5oYSBpbnbDoWxpZG8gKHMpIVwiKTtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgdGhpcy5nZW5lcmljU2VydmljZS5QcmVzZW50VG9hc3QoXCJPY29ycmV1IHVtIGVycm8gYW8gcmVhbGl6YXIgbyBsb2dpbiFcIik7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjwhLS0gPGRpdiBjbGFzcz1cInNpemUtZnVsbCBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciByZWxhdGl2ZVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJsYW5kc2NhcGU6dy00LzUgcG9ydHJhaXQ6dy1mdWxsIGxhbmRzY2FwZTpoLTIvMyBwb3J0cmFpdDpoLWZ1bGwgbGFuZHNjYXBlOm1heC13LVs2MHJlbV0gdHJhbnNsdWNpZC1ib3JkZXIgbGFuZHNjYXBlOnJvdW5kZWQtM3hsIGxhbmRzY2FwZTpiYWNrZHJvcC1ibHVyLXhsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpemUtZnVsbCBmbGV4IHBvcnRyYWl0OmZsZXgtY29sXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0taW9uLWNvbG9yLWxpZ2h0KSAyMCUsIHRyYW5zcGFyZW50IDgwJSk7XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzaHJpbmstMCB3LTk2IHBvcnRyYWl0OnctZnVsbCBwb3J0cmFpdDpoLTMyIGgtZnVsbCBwLTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZC0yeGwgc2l6ZS1mdWxsIG92ZXJmbG93LXgtaGlkZGVuXCI+XHJcbiAgICAgICAgICA8bmctY29udGVudCBjbGFzcz1cInNpemUtZnVsbFwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncm93IGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtZnVsbCBweS0zIHByLTMgcG9ydHJhaXQ6cGwtM1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3LTk2IGgtZnVsbCBmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMlwiICpuZ0lmPVwiZnJtXCIgW2Zvcm1Hcm91cF09XCJmcm1cIj5cclxuXHJcbiAgICAgICAgICA8aW9uLXRleHQgY2xhc3M9XCJ0ZXh0LTV4bCBteS0xMCBwb3J0cmFpdDptdC1bLTVyZW1dXCI+IExvZ2luIDwvaW9uLXRleHQ+XHJcblxyXG4gICAgICAgICAgPGlvbi1jYXJkIGNsYXNzPVwidy1mdWxsIGJhY2tkcm9wLWJsdXIteGxcIj5cclxuICAgICAgICAgICAgPGlvbi1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgPGlvbi1pdGVtIGxpbmVzPVwibm9uZVwiIGxhYmVsPVwiU2VuaGFcIiBsYWJlbFBsYWNlbWVudD1cInN0YWNrZWRcIiBjbGFzcz1cInJvdW5kZWQtMnhsIG15LTMgdy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInBlcnNvblwiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWlucHV0IHBsYWNlaG9sZGVyPVwiVXN1w6FyaW8gLyBVc2VyXCIgZm9ybUNvbnRyb2xOYW1lPVwiYXBlbGlkb1wiPjwvaW9uLWlucHV0PlxyXG4gICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgICAgICAgIDwvaW9uLWNhcmQ+XHJcblxyXG4gICAgICAgICAgPGlvbi1jYXJkIGNsYXNzPVwidy1mdWxsIGJhY2tkcm9wLWJsdXIteGxcIj4gXHJcbiAgICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICAgIDxpb24taXRlbSBsaW5lcz1cIm5vbmVcIiBjbGFzcz1cInJvdW5kZWQtMnhsIG15LTMgdy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxvY2stY2xvc2VkXCIgc2xvdD1cInN0YXJ0XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgIDxpb24taW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VuaGFcIiBwbGFjZWhvbGRlcj1cIlNlbmhhIC8gUGFzc3dvcmRcIj5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1pbnB1dC1wYXNzd29yZC10b2dnbGUgc2xvdD1cImVuZFwiPjwvaW9uLWlucHV0LXBhc3N3b3JkLXRvZ2dsZT5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWlucHV0PlxyXG4gICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgICAgICAgIDwvaW9uLWNhcmQ+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbFwiPlxyXG4gICAgICAgICAgICA8YSBocmVmPVwiXCI+RXNxdWVjZXUgYSBzZW5oYT88L2E+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGxcIj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gY2xhc3M9XCJyb3VuZGVkLTJ4bCBzaGFkb3cteGwgZGVmYXVsdC10cmFuc2l0aW9uIHctZnVsbFwiIGV4cGFuZD1cImJsb2NrXCIgKGNsaWNrKT1cIkxvZ2luKClcIiBbZGlzYWJsZWRdPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgIDxpb24tc3Bpbm5lciBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvblwiIFtuZ0NsYXNzXT1cInsnLXRyYW5zbGF0ZS14LTEyIG9wYWNpdHktMCBzaXplLTAnOiAhbG9hZGluZywgJ21yLTInIDogbG9hZGluZ31cIiBzbG90PVwic3RhcnRcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgIDxpb24taWNvbiAgICBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvblwiIFtuZ0NsYXNzXT1cInsnLXRyYW5zbGF0ZS14LTEyIG9wYWNpdHktMCBzaXplLTAnOiAgbG9hZGluZ31cIiBuYW1lPVwiZW50ZXItb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiID48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGVmYXVsdC10cmFuc2l0aW9uXCIgPiBMb2dpbiA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIGNsYXNzPVwic2hyaW5rLTAgYXNwZWN0LXNxdWFyZSBtbC0zXCIgY29sb3I9XCJkYXJrXCIgaGlkZGVuPlxyXG4gICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJzaXplLThcIiBzbG90PVwiaWNvbi1vbmx5XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIiB3aWR0aD1cIjY0XCIgaGVpZ2h0PVwiNjRcIj48ZGVmcz48cGF0aCBpZD1cIkFcIiBkPVwiTTQ0LjUgMjBIMjR2OC41aDExLjhDMzQuNyAzMy45IDMwLjEgMzcgMjQgMzdjLTcuMiAwLTEzLTUuOC0xMy0xM3M1LjgtMTMgMTMtMTNjMy4xIDAgNS45IDEuMSA4LjEgMi45bDYuNC02LjRDMzQuNiA0LjEgMjkuNiAyIDI0IDIgMTEuOCAyIDIgMTEuOCAyIDI0czkuOCAyMiAyMiAyMmMxMSAwIDIxLTggMjEtMjIgMC0xLjMtLjItMi43LS41LTR6XCIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9XCJCXCI+PHVzZSB4bGluazpocmVmPVwiI0FcIi8+PC9jbGlwUGF0aD48ZyB0cmFuc2Zvcm09XCJtYXRyaXgoLjcyNzI3MyAwIDAgLjcyNzI3MyAtLjk1NDU0NSAtMS40NTQ1NSlcIj48cGF0aCBkPVwiTTAgMzdWMTFsMTcgMTN6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZmJiYzA1XCIvPjxwYXRoIGQ9XCJNMCAxMWwxNyAxMyA3LTYuMUw0OCAxNFYwSDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZWE0MzM1XCIvPjxwYXRoIGQ9XCJNMCAzN2wzMC0yMyA3LjkgMUw0OCAwdjQ4SDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjMzRhODUzXCIvPjxwYXRoIGQ9XCJNNDggNDhMMTcgMjRsLTQtMyAzNS0xMHpcIiBjbGlwLXBhdGg9XCJ1cmwoI0IpXCIgZmlsbD1cIiM0Mjg1ZjRcIi8+PC9nPjwvc3ZnPlxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+IC0tPlxyXG5cclxuPGRpdiAjbG9naW5Db250YWluZXIgY2xhc3M9XCJzaXplLWZ1bGwgZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgcmVsYXRpdmUgcG9ydHJhaXQ6cC00XCI+XHJcbiAgPGRpdiBjbGFzcz1cImxhbmRzY2FwZTp3LTQvNSBsYW5kc2NhcGU6aC0yLzMgbGFuZHNjYXBlOnhsOm1heC13LVs2MHJlbV0gcG9ydHJhaXQ6c2l6ZS1mdWxsIHRyYW5zbHVjaWQtYm9yZGVyIGJhY2tkcm9wLWJsdXIteGwgcm91bmRlZC0zeGwgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2l6ZS1mdWxsIGZsZXggcG9ydHJhaXQ6ZmxleC1jb2xcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1pb24tY29sb3ItbGlnaHQpIDIwJSwgdHJhbnNwYXJlbnQgODAlKTtcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNocmluay0wIHctOTYgcG9ydHJhaXQ6dy1mdWxsIHBvcnRyYWl0OmgtNDAgbGFuZHNjYXBlOmgtZnVsbCBwLTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2l6ZS1mdWxsIHJvdW5kZWQtMnhsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9bG9nb11cIiBjbGFzcz1cInNpemUtZnVsbFwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzaHJpbmsgc2l6ZS1mdWxsIGZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0zIHB4LTEwIHJlbGF0aXZlXCIgKm5nSWY9XCJmcm1cIiBbZm9ybUdyb3VwXT1cImZybVwiPlxyXG4gICAgICAgIDxpb24tdGV4dCBjbGFzcz1cImgtMjQgdGV4dC01eGxcIj4gTG9naW4gPC9pb24tdGV4dD5cclxuXHJcbiAgICAgICAgPGlvbi1jYXJkIGNsYXNzPVwidy1mdWxsIGJhY2tkcm9wLWJsdXIteGxcIj5cclxuICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgbGFiZWw9XCJTZW5oYVwiIGxhYmVsUGxhY2VtZW50PVwic3RhY2tlZFwiIGNsYXNzPVwicm91bmRlZC0yeGwgbXktMyB3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInBlcnNvblwiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgPGlvbi1pbnB1dCBwbGFjZWhvbGRlcj1cIlVzdcOhcmlvIC8gVXNlclwiIGZvcm1Db250cm9sTmFtZT1cImFwZWxpZG9cIj48L2lvbi1pbnB1dD5cclxuICAgICAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgICAgICA8L2lvbi1jYXJkPlxyXG5cclxuICAgICAgICA8aW9uLWNhcmQgY2xhc3M9XCJ3LWZ1bGwgYmFja2Ryb3AtYmx1ci14bFwiPiBcclxuICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgY2xhc3M9XCJyb3VuZGVkLTJ4bCBteS0zIHctZnVsbFwiPlxyXG4gICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibG9jay1jbG9zZWRcIiBzbG90PVwic3RhcnRcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgIDxpb24taW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VuaGFcIiBwbGFjZWhvbGRlcj1cIlNlbmhhIC8gUGFzc3dvcmRcIj5cclxuICAgICAgICAgICAgICAgIDxpb24taW5wdXQtcGFzc3dvcmQtdG9nZ2xlIHNsb3Q9XCJlbmRcIj48L2lvbi1pbnB1dC1wYXNzd29yZC10b2dnbGU+XHJcbiAgICAgICAgICAgICAgPC9pb24taW5wdXQ+XHJcbiAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICA8L2lvbi1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgPC9pb24tY2FyZD5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggdy1mdWxsXCI+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBjbGFzcz1cInRyYW5zaXRpb24tYWxsIHJvdW5kZWQtMnhsIHNoYWRvdy14bCBkZWZhdWx0LXRyYW5zaXRpb24gdy1mdWxsXCIgZXhwYW5kPVwiYmxvY2tcIiAoY2xpY2spPVwiTG9naW4oKVwiIFtkaXNhYmxlZF09XCJsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgIDxpb24tc3Bpbm5lciBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvblwiIFtuZ0NsYXNzXT1cInsnLXRyYW5zbGF0ZS14LTEyIG9wYWNpdHktMCBzaXplLTAnOiAhbG9hZGluZywgJ21yLTInIDogbG9hZGluZ31cIiBzbG90PVwic3RhcnRcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gICAgY2xhc3M9XCJkZWZhdWx0LXRyYW5zaXRpb25cIiBbbmdDbGFzc109XCJ7Jy10cmFuc2xhdGUteC0xMiBvcGFjaXR5LTAgc2l6ZS0wJzogIGxvYWRpbmd9XCIgbmFtZT1cImVudGVyLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiA+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkZWZhdWx0LXRyYW5zaXRpb25cIj4gTG9naW4gPC9zcGFuPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICAgIDwhLS0gPGlvbi1idXR0b24gY2xhc3M9XCJzaHJpbmstMCBhc3BlY3Qtc3F1YXJlIG1sLTNcIiBjb2xvcj1cImRhcmtcIiBoaWRkZW4+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJzaXplLThcIiBzbG90PVwiaWNvbi1vbmx5XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIiB3aWR0aD1cIjY0XCIgaGVpZ2h0PVwiNjRcIj48ZGVmcz48cGF0aCBpZD1cIkFcIiBkPVwiTTQ0LjUgMjBIMjR2OC41aDExLjhDMzQuNyAzMy45IDMwLjEgMzcgMjQgMzdjLTcuMiAwLTEzLTUuOC0xMy0xM3M1LjgtMTMgMTMtMTNjMy4xIDAgNS45IDEuMSA4LjEgMi45bDYuNC02LjRDMzQuNiA0LjEgMjkuNiAyIDI0IDIgMTEuOCAyIDIgMTEuOCAyIDI0czkuOCAyMiAyMiAyMmMxMSAwIDIxLTggMjEtMjIgMC0xLjMtLjItMi43LS41LTR6XCIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9XCJCXCI+PHVzZSB4bGluazpocmVmPVwiI0FcIi8+PC9jbGlwUGF0aD48ZyB0cmFuc2Zvcm09XCJtYXRyaXgoLjcyNzI3MyAwIDAgLjcyNzI3MyAtLjk1NDU0NSAtMS40NTQ1NSlcIj48cGF0aCBkPVwiTTAgMzdWMTFsMTcgMTN6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZmJiYzA1XCIvPjxwYXRoIGQ9XCJNMCAxMWwxNyAxMyA3LTYuMUw0OCAxNFYwSDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZWE0MzM1XCIvPjxwYXRoIGQ9XCJNMCAzN2wzMC0yMyA3LjkgMUw0OCAwdjQ4SDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjMzRhODUzXCIvPjxwYXRoIGQ9XCJNNDggNDhMMTcgMjRsLTQtMyAzNS0xMHpcIiBjbGlwLXBhdGg9XCJ1cmwoI0IpXCIgZmlsbD1cIiM0Mjg1ZjRcIi8+PC9nPjwvc3ZnPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPiAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9ZW5kXVwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFhLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7Ozs7OztBQWMxRCxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQ1UsRUFBZSxFQUNmLGNBQThCLEVBQzlCLGFBQTRCLEVBQzVCLFdBQXdCLEVBQ3pCLHFCQUE0QyxFQUM1QyxXQUErQixFQUM5QixNQUFjO1FBTmQsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFY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LElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7WUFDM0UsQ0FBQztZQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDOytHQXhFVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixnUkN2QmxDLG8yT0F1R00sc3NDRHpGRixZQUFZLGdPQUNaLFdBQVcsczdEQUNYLFdBQVcsa1NBQ1gsbUJBQW1COzs0RkFNVixxQkFBcUI7a0JBWmpDLFNBQVM7aUNBQ0ksSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxXQUFXO3dCQUNYLG1CQUFtQjtxQkFDcEIsWUFDUyxPQUFPOzZQQXlDUCxPQUFPO3NCQUFoQixNQUFNO2dCQUNzQixjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFHckIsS0FBSztzQkFEVixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSW9uaWNNb2R1bGUsIE5hdkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBpVXJsUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvd2ViL2FwaS11cmwtcHJvdmlkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEdlbmVyaWNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZ2VuZXJpY3Muc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSW9uaWNNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgXSxcclxuICBzZWxlY3RvcjogJ2xvZ2luJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbG9naW4uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xvZ2luLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0TG9naW5Db21wb25lbnQgIGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgZ2VuZXJpY1NlcnZpY2U6IEdlbmVyaWNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBuYXZDb250cm9sbGVyOiBOYXZDb250cm9sbGVyLFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgYXBpVXJsUHJvdmlkZXJTZXJ2aWNlOiBBcGlVcmxQcm92aWRlclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgY29yZVNlcnZpY2U6IEVudmlyb25tZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXJcclxuICApIHsgXHJcbiAgICB0aGlzLmdlbmVyaWNTZXJ2aWNlLlNldFRpdGxlKFwiTG9naW5cIik7XHJcbiAgfVxyXG4gIFxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5DcmVhdGVGb3JtKCk7XHJcblxyXG4gICAgaWYoIXRoaXMuY29yZVNlcnZpY2UuZW52aXJvbm1lbnQucHJvZHVjdGlvbil7XHJcbiAgICAgIHRoaXMuZnJtLnBhdGNoVmFsdWUodGhpcy5jb3JlU2VydmljZS5lbnZpcm9ubWVudC5kZWZhdWx0Q3JlZGVudGlhbHMpOyBcclxuICAgIH1cclxuICAgIGNvbnN0IFRva2VuID0gYXdhaXQgdGhpcy5hdXRoU2VydmljZS5Mb2FkVG9rZW4oKVxyXG4gICAgaWYodGhpcy5hdXRoU2VydmljZS5pc1Rva2VuVmFsaWQoVG9rZW4pKXtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiL1wiXSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIGZybTogRm9ybUdyb3VwO1xyXG4gIENyZWF0ZUZvcm0oKTogdm9pZHtcclxuICAgIHRoaXMuZnJtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIGFwZWxpZG8gOiBbbnVsbCAsVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgIHNlbmhhICAgOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbG9hZGluZzogYm9vbGVhbjtcclxuICBzdWJtaXR0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIE9uTG9naW46IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQFZpZXdDaGlsZCgnbG9naW5Db250YWluZXInKSBsb2dpbkNvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXlkb3duJywgWyckZXZlbnQnXSlcclxuICBhc3luYyBMb2dpbigkZXZlbnQ/OiBLZXlib2FyZEV2ZW50KTogUHJvbWlzZTx2b2lkPntcclxuICAgIGlmKCRldmVudCAmJiAkZXZlbnQua2V5ICE9ICdFbnRlcicpeyByZXR1cm47IH1cclxuICAgIGlmKCRldmVudCAmJiAhdGhpcy5sb2dpbkNvbnRhaW5lci5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSl7XHJcbiAgICAgIHJldHVybjsgLy8gUHJldmVudCBsb2dpbiBpZiB0aGUgYWN0aXZlIGVsZW1lbnQgaXMgbm90IHdpdGhpbiB0aGUgbG9naW4gY29udGFpbmVyXHJcbiAgICB9XHJcbiAgICBpZih0aGlzLmxvYWRpbmcpeyByZXR1cm47IH1cclxuXHJcbiAgICB0aGlzLnN1Ym1pdHRlZCA9IHRydWU7XHJcbiAgICB0aGlzLmxvYWRpbmcgICA9IHRydWU7XHJcbiAgIFxyXG4gICAgaWYoIXRoaXMuZnJtLnZhbGlkKXtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZ2VuZXJpY1NlcnZpY2UuUHJlc2VudFRvYXN0KFwiVXN1YXJpbyAvIFNlbmhhIG7Do28gaW5mb3JtYWRvIVwiKTsgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRyeXtcclxuICAgICAgY29uc3QgVG9rZW4gPSBhd2FpdCB0aGlzLmF1dGhTZXJ2aWNlLkxvZ2luKHRoaXMuZnJtLnZhbHVlKTtcclxuXHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm5hdkNvbnRyb2xsZXIubmF2aWdhdGVSb290KFwiL1wiKTtcclxuICAgICAgdGhpcy5nZW5lcmljU2VydmljZS5QcmVzZW50VG9hc3QoXCJMb2dhZG8gY29tIHN1Y2Vzc28hXCIsIFwiY2hlY2ttYXJrLWNpcmNsZVwiKTtcclxuICAgICAgdGhpcy5PbkxvZ2luLmVtaXQoVG9rZW4pO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKHN0YXR1cyl7XHJcbiAgICAgIGlmKHN0YXR1cyA9PSA0MDEpe1xyXG4gICAgICAgIHRoaXMuZ2VuZXJpY1NlcnZpY2UuUHJlc2VudFRvYXN0KFwiVXN1w6FyaW8gLyBTZW5oYSBpbnbDoWxpZG8gKHMpIVwiKTtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgdGhpcy5nZW5lcmljU2VydmljZS5QcmVzZW50VG9hc3QoXCJPY29ycmV1IHVtIGVycm8gYW8gcmVhbGl6YXIgbyBsb2dpbiFcIik7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjwhLS0gPGRpdiBjbGFzcz1cInNpemUtZnVsbCBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciByZWxhdGl2ZVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJsYW5kc2NhcGU6dy00LzUgcG9ydHJhaXQ6dy1mdWxsIGxhbmRzY2FwZTpoLTIvMyBwb3J0cmFpdDpoLWZ1bGwgbGFuZHNjYXBlOm1heC13LVs2MHJlbV0gdHJhbnNsdWNpZC1ib3JkZXIgbGFuZHNjYXBlOnJvdW5kZWQtM3hsIGxhbmRzY2FwZTpiYWNrZHJvcC1ibHVyLXhsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpemUtZnVsbCBmbGV4IHBvcnRyYWl0OmZsZXgtY29sXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0taW9uLWNvbG9yLWxpZ2h0KSAyMCUsIHRyYW5zcGFyZW50IDgwJSk7XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzaHJpbmstMCB3LTk2IHBvcnRyYWl0OnctZnVsbCBwb3J0cmFpdDpoLTMyIGgtZnVsbCBwLTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZC0yeGwgc2l6ZS1mdWxsIG92ZXJmbG93LXgtaGlkZGVuXCI+XHJcbiAgICAgICAgICA8bmctY29udGVudCBjbGFzcz1cInNpemUtZnVsbFwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncm93IGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtZnVsbCBweS0zIHByLTMgcG9ydHJhaXQ6cGwtM1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3LTk2IGgtZnVsbCBmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMlwiICpuZ0lmPVwiZnJtXCIgW2Zvcm1Hcm91cF09XCJmcm1cIj5cclxuXHJcbiAgICAgICAgICA8aW9uLXRleHQgY2xhc3M9XCJ0ZXh0LTV4bCBteS0xMCBwb3J0cmFpdDptdC1bLTVyZW1dXCI+IExvZ2luIDwvaW9uLXRleHQ+XHJcblxyXG4gICAgICAgICAgPGlvbi1jYXJkIGNsYXNzPVwidy1mdWxsIGJhY2tkcm9wLWJsdXIteGxcIj5cclxuICAgICAgICAgICAgPGlvbi1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgPGlvbi1pdGVtIGxpbmVzPVwibm9uZVwiIGxhYmVsPVwiU2VuaGFcIiBsYWJlbFBsYWNlbWVudD1cInN0YWNrZWRcIiBjbGFzcz1cInJvdW5kZWQtMnhsIG15LTMgdy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInBlcnNvblwiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWlucHV0IHBsYWNlaG9sZGVyPVwiVXN1w6FyaW8gLyBVc2VyXCIgZm9ybUNvbnRyb2xOYW1lPVwiYXBlbGlkb1wiPjwvaW9uLWlucHV0PlxyXG4gICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgICAgICAgIDwvaW9uLWNhcmQ+XHJcblxyXG4gICAgICAgICAgPGlvbi1jYXJkIGNsYXNzPVwidy1mdWxsIGJhY2tkcm9wLWJsdXIteGxcIj4gXHJcbiAgICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICAgIDxpb24taXRlbSBsaW5lcz1cIm5vbmVcIiBjbGFzcz1cInJvdW5kZWQtMnhsIG15LTMgdy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImxvY2stY2xvc2VkXCIgc2xvdD1cInN0YXJ0XCI+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgICAgIDxpb24taW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VuaGFcIiBwbGFjZWhvbGRlcj1cIlNlbmhhIC8gUGFzc3dvcmRcIj5cclxuICAgICAgICAgICAgICAgICAgPGlvbi1pbnB1dC1wYXNzd29yZC10b2dnbGUgc2xvdD1cImVuZFwiPjwvaW9uLWlucHV0LXBhc3N3b3JkLXRvZ2dsZT5cclxuICAgICAgICAgICAgICAgIDwvaW9uLWlucHV0PlxyXG4gICAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgICAgICAgIDwvaW9uLWNhcmQ+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbFwiPlxyXG4gICAgICAgICAgICA8YSBocmVmPVwiXCI+RXNxdWVjZXUgYSBzZW5oYT88L2E+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGxcIj5cclxuICAgICAgICAgICAgPGlvbi1idXR0b24gY2xhc3M9XCJyb3VuZGVkLTJ4bCBzaGFkb3cteGwgZGVmYXVsdC10cmFuc2l0aW9uIHctZnVsbFwiIGV4cGFuZD1cImJsb2NrXCIgKGNsaWNrKT1cIkxvZ2luKClcIiBbZGlzYWJsZWRdPVwibG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgIDxpb24tc3Bpbm5lciBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvblwiIFtuZ0NsYXNzXT1cInsnLXRyYW5zbGF0ZS14LTEyIG9wYWNpdHktMCBzaXplLTAnOiAhbG9hZGluZywgJ21yLTInIDogbG9hZGluZ31cIiBzbG90PVwic3RhcnRcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICAgIDxpb24taWNvbiAgICBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvblwiIFtuZ0NsYXNzXT1cInsnLXRyYW5zbGF0ZS14LTEyIG9wYWNpdHktMCBzaXplLTAnOiAgbG9hZGluZ31cIiBuYW1lPVwiZW50ZXItb3V0bGluZVwiIHNsb3Q9XCJzdGFydFwiID48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGVmYXVsdC10cmFuc2l0aW9uXCIgPiBMb2dpbiA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cclxuXHJcbiAgICAgICAgICAgIDxpb24tYnV0dG9uIGNsYXNzPVwic2hyaW5rLTAgYXNwZWN0LXNxdWFyZSBtbC0zXCIgY29sb3I9XCJkYXJrXCIgaGlkZGVuPlxyXG4gICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJzaXplLThcIiBzbG90PVwiaWNvbi1vbmx5XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIiB3aWR0aD1cIjY0XCIgaGVpZ2h0PVwiNjRcIj48ZGVmcz48cGF0aCBpZD1cIkFcIiBkPVwiTTQ0LjUgMjBIMjR2OC41aDExLjhDMzQuNyAzMy45IDMwLjEgMzcgMjQgMzdjLTcuMiAwLTEzLTUuOC0xMy0xM3M1LjgtMTMgMTMtMTNjMy4xIDAgNS45IDEuMSA4LjEgMi45bDYuNC02LjRDMzQuNiA0LjEgMjkuNiAyIDI0IDIgMTEuOCAyIDIgMTEuOCAyIDI0czkuOCAyMiAyMiAyMmMxMSAwIDIxLTggMjEtMjIgMC0xLjMtLjItMi43LS41LTR6XCIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9XCJCXCI+PHVzZSB4bGluazpocmVmPVwiI0FcIi8+PC9jbGlwUGF0aD48ZyB0cmFuc2Zvcm09XCJtYXRyaXgoLjcyNzI3MyAwIDAgLjcyNzI3MyAtLjk1NDU0NSAtMS40NTQ1NSlcIj48cGF0aCBkPVwiTTAgMzdWMTFsMTcgMTN6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZmJiYzA1XCIvPjxwYXRoIGQ9XCJNMCAxMWwxNyAxMyA3LTYuMUw0OCAxNFYwSDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZWE0MzM1XCIvPjxwYXRoIGQ9XCJNMCAzN2wzMC0yMyA3LjkgMUw0OCAwdjQ4SDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjMzRhODUzXCIvPjxwYXRoIGQ9XCJNNDggNDhMMTcgMjRsLTQtMyAzNS0xMHpcIiBjbGlwLXBhdGg9XCJ1cmwoI0IpXCIgZmlsbD1cIiM0Mjg1ZjRcIi8+PC9nPjwvc3ZnPlxyXG4gICAgICAgICAgICA8L2lvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+IC0tPlxyXG5cclxuPGRpdiAjbG9naW5Db250YWluZXIgY2xhc3M9XCJzaXplLWZ1bGwgZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgcmVsYXRpdmUgcG9ydHJhaXQ6cC00XCI+XHJcbiAgPGRpdiBjbGFzcz1cImxhbmRzY2FwZTp3LTQvNSBsYW5kc2NhcGU6aC0yLzMgbGFuZHNjYXBlOnhsOm1heC13LVs2MHJlbV0gcG9ydHJhaXQ6c2l6ZS1mdWxsIHRyYW5zbHVjaWQtYm9yZGVyIGJhY2tkcm9wLWJsdXIteGwgcm91bmRlZC0zeGwgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2l6ZS1mdWxsIGZsZXggcG9ydHJhaXQ6ZmxleC1jb2xcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1pb24tY29sb3ItbGlnaHQpIDIwJSwgdHJhbnNwYXJlbnQgODAlKTtcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNocmluay0wIHctOTYgcG9ydHJhaXQ6dy1mdWxsIHBvcnRyYWl0OmgtNDAgbGFuZHNjYXBlOmgtZnVsbCBwLTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2l6ZS1mdWxsIHJvdW5kZWQtMnhsIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9bG9nb11cIiBjbGFzcz1cInNpemUtZnVsbFwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzaHJpbmsgc2l6ZS1mdWxsIGZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC0zIHB4LTEwIHJlbGF0aXZlXCIgKm5nSWY9XCJmcm1cIiBbZm9ybUdyb3VwXT1cImZybVwiPlxyXG4gICAgICAgIDxpb24tdGV4dCBjbGFzcz1cImgtMjQgdGV4dC01eGxcIj4gTG9naW4gPC9pb24tdGV4dD5cclxuXHJcbiAgICAgICAgPGlvbi1jYXJkIGNsYXNzPVwidy1mdWxsIGJhY2tkcm9wLWJsdXIteGxcIj5cclxuICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgbGFiZWw9XCJTZW5oYVwiIGxhYmVsUGxhY2VtZW50PVwic3RhY2tlZFwiIGNsYXNzPVwicm91bmRlZC0yeGwgbXktMyB3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInBlcnNvblwiIHNsb3Q9XCJzdGFydFwiPjwvaW9uLWljb24+XHJcbiAgICAgICAgICAgICAgPGlvbi1pbnB1dCBwbGFjZWhvbGRlcj1cIlVzdcOhcmlvIC8gVXNlclwiIGZvcm1Db250cm9sTmFtZT1cImFwZWxpZG9cIj48L2lvbi1pbnB1dD5cclxuICAgICAgICAgICAgPC9pb24taXRlbT5cclxuICAgICAgICAgIDwvaW9uLWNhcmQtY29udGVudD5cclxuICAgICAgICA8L2lvbi1jYXJkPlxyXG5cclxuICAgICAgICA8aW9uLWNhcmQgY2xhc3M9XCJ3LWZ1bGwgYmFja2Ryb3AtYmx1ci14bFwiPiBcclxuICAgICAgICAgIDxpb24tY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICA8aW9uLWl0ZW0gbGluZXM9XCJub25lXCIgY2xhc3M9XCJyb3VuZGVkLTJ4bCBteS0zIHctZnVsbFwiPlxyXG4gICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibG9jay1jbG9zZWRcIiBzbG90PVwic3RhcnRcIj48L2lvbi1pY29uPlxyXG4gICAgICAgICAgICAgIDxpb24taW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgZm9ybUNvbnRyb2xOYW1lPVwic2VuaGFcIiBwbGFjZWhvbGRlcj1cIlNlbmhhIC8gUGFzc3dvcmRcIj5cclxuICAgICAgICAgICAgICAgIDxpb24taW5wdXQtcGFzc3dvcmQtdG9nZ2xlIHNsb3Q9XCJlbmRcIj48L2lvbi1pbnB1dC1wYXNzd29yZC10b2dnbGU+XHJcbiAgICAgICAgICAgICAgPC9pb24taW5wdXQ+XHJcbiAgICAgICAgICAgIDwvaW9uLWl0ZW0+XHJcbiAgICAgICAgICA8L2lvbi1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgPC9pb24tY2FyZD5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggdy1mdWxsXCI+XHJcbiAgICAgICAgICA8aW9uLWJ1dHRvbiBjbGFzcz1cInRyYW5zaXRpb24tYWxsIHJvdW5kZWQtMnhsIHNoYWRvdy14bCBkZWZhdWx0LXRyYW5zaXRpb24gdy1mdWxsXCIgZXhwYW5kPVwiYmxvY2tcIiAoY2xpY2spPVwiTG9naW4oKVwiIFtkaXNhYmxlZF09XCJsb2FkaW5nXCI+XHJcbiAgICAgICAgICAgIDxpb24tc3Bpbm5lciBjbGFzcz1cImRlZmF1bHQtdHJhbnNpdGlvblwiIFtuZ0NsYXNzXT1cInsnLXRyYW5zbGF0ZS14LTEyIG9wYWNpdHktMCBzaXplLTAnOiAhbG9hZGluZywgJ21yLTInIDogbG9hZGluZ31cIiBzbG90PVwic3RhcnRcIj48L2lvbi1zcGlubmVyPlxyXG4gICAgICAgICAgICA8aW9uLWljb24gICAgY2xhc3M9XCJkZWZhdWx0LXRyYW5zaXRpb25cIiBbbmdDbGFzc109XCJ7Jy10cmFuc2xhdGUteC0xMiBvcGFjaXR5LTAgc2l6ZS0wJzogIGxvYWRpbmd9XCIgbmFtZT1cImVudGVyLW91dGxpbmVcIiBzbG90PVwic3RhcnRcIiA+PC9pb24taWNvbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJkZWZhdWx0LXRyYW5zaXRpb25cIj4gTG9naW4gPC9zcGFuPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPlxyXG5cclxuICAgICAgICAgIDwhLS0gPGlvbi1idXR0b24gY2xhc3M9XCJzaHJpbmstMCBhc3BlY3Qtc3F1YXJlIG1sLTNcIiBjb2xvcj1cImRhcmtcIiBoaWRkZW4+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJzaXplLThcIiBzbG90PVwiaWNvbi1vbmx5XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIiB3aWR0aD1cIjY0XCIgaGVpZ2h0PVwiNjRcIj48ZGVmcz48cGF0aCBpZD1cIkFcIiBkPVwiTTQ0LjUgMjBIMjR2OC41aDExLjhDMzQuNyAzMy45IDMwLjEgMzcgMjQgMzdjLTcuMiAwLTEzLTUuOC0xMy0xM3M1LjgtMTMgMTMtMTNjMy4xIDAgNS45IDEuMSA4LjEgMi45bDYuNC02LjRDMzQuNiA0LjEgMjkuNiAyIDI0IDIgMTEuOCAyIDIgMTEuOCAyIDI0czkuOCAyMiAyMiAyMmMxMSAwIDIxLTggMjEtMjIgMC0xLjMtLjItMi43LS41LTR6XCIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9XCJCXCI+PHVzZSB4bGluazpocmVmPVwiI0FcIi8+PC9jbGlwUGF0aD48ZyB0cmFuc2Zvcm09XCJtYXRyaXgoLjcyNzI3MyAwIDAgLjcyNzI3MyAtLjk1NDU0NSAtMS40NTQ1NSlcIj48cGF0aCBkPVwiTTAgMzdWMTFsMTcgMTN6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZmJiYzA1XCIvPjxwYXRoIGQ9XCJNMCAxMWwxNyAxMyA3LTYuMUw0OCAxNFYwSDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjZWE0MzM1XCIvPjxwYXRoIGQ9XCJNMCAzN2wzMC0yMyA3LjkgMUw0OCAwdjQ4SDB6XCIgY2xpcC1wYXRoPVwidXJsKCNCKVwiIGZpbGw9XCIjMzRhODUzXCIvPjxwYXRoIGQ9XCJNNDggNDhMMTcgMjRsLTQtMyAzNS0xMHpcIiBjbGlwLXBhdGg9XCJ1cmwoI0IpXCIgZmlsbD1cIiM0Mjg1ZjRcIi8+PC9nPjwvc3ZnPlxyXG4gICAgICAgICAgPC9pb24tYnV0dG9uPiAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9ZW5kXVwiPjwvbmctY29udGVudD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|