@lowcodeunit/applications-flow-common 1.26.32-apps-flow → 1.26.35-integration

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.
@@ -89,6 +89,7 @@ export class DFSModifiersComponent {
89
89
  const saveMdfrReq = {
90
90
  Modifier: Object.assign(Object.assign({}, this.EditingModifier), { Name: this.NameFormControl.value, Enabled: this.EnabledFormControl.value, PathFilterRegex: this.PathFilterFormControl.value, Priority: this.PriorityFormControl.value, Type: this.CurrentType }),
91
91
  ModifierLookup: this.EditingModifierLookup,
92
+ ProjectLookup: this.Data.ProjectLookup,
92
93
  };
93
94
  const details = {};
94
95
  switch (this.CurrentType) {
@@ -159,7 +160,7 @@ export class DFSModifiersComponent {
159
160
  DFSModifiersComponent.decorators = [
160
161
  { type: Component, args: [{
161
162
  selector: 'lcu-dfs-modifiers',
162
- template: "<div>\n <form\n [formGroup]=\"ModifierFormGroup\"\n (ngSubmit)=\"SaveModifier()\"\n *ngIf=\"EditingModifier\"\n >\n <div class=\"form-card\">\n <mat-card class=\"spread\">\n <mat-card-header>\n <mat-card-title> DFS Modifier </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-icon\n matSuffix\n matTooltip=\"Configure modifiers for your DFS files.\"\n >\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"name\"\n placeholder=\"Name\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"priority\"\n placeholder=\"Priority\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"pathFilter\"\n placeholder=\"Path Filter (regex)\"\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n formControlName=\"type\"\n placeholder=\"DFS Modifier Type\"\n (selectionChange)=\"TypeChanged($event)\"\n >\n <mat-option\n value=\"LCU.Runtime.Applications.Modifiers.HTMLBaseDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"\n >\n HTML Base Modfier\n </mat-option>\n\n <mat-option\n value=\"LCU.Runtime.Applications.Modifiers.LCURegDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"\n >\n LCU Reg Modfier\n </mat-option>\n\n <mat-option\n value=\"LCU.Runtime.Applications.Modifiers.ThirdPartyLibraryDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"\n >\n Thrid Party Library Modifier\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <ng-container\n *ngIf=\"\n CurrentType ==\n 'LCU.Runtime.Applications.Modifiers.LCURegDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'\n \"\n >\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"stateDataToken\"\n placeholder=\"State Data Token\"\n required\n />\n </mat-form-field>\n </ng-container>\n\n <ng-container\n *ngIf=\"\n CurrentType ==\n 'LCU.Runtime.Applications.Modifiers.ThirdPartyLibraryDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'\n \"\n >\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"location\"\n placeholder=\"Location\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"scriptId\"\n placeholder=\"Script ID\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"script\"\n placeholder=\"Script\"\n required\n />\n </mat-form-field>\n </ng-container>\n\n <mat-slide-toggle class=\"spread\" formControlName=\"enabled\">\n Is Enabled?\n </mat-slide-toggle>\n </mat-card-content>\n </mat-card>\n </div>\n\n <div class=\"spread\">\n <div fxFlex></div>\n\n <button mat-button type=\"button\" (click)=\"SetEditingModifier(null)\">\n <mat-icon>cancel</mat-icon> Cancel\n </button>\n\n <div fxFlex></div>\n\n <button\n mat-raised-button\n type=\"submit\"\n color=\"primary\"\n [disabled]=\"!ModifierFormGroup.valid || !ModifierFormGroup.dirty\"\n >\n <mat-icon>save</mat-icon> Save DFS Modifier\n </button>\n\n <div fxFlex></div>\n </div>\n </form>\n\n <div class=\"spread\" *ngIf=\"!EditingModifier\">\n <span class=\"apps-actions\">\n <button mat-raised-button color=\"accent\" (click)=\"CreateNewModifier()\">\n <mat-icon color=\"primary\">add</mat-icon> Create New\n </button>\n </span>\n\n <div class=\"spread\">\n <div *ngIf=\"ModifierLookups?.length <= 0\">\n <h2>No DFS modifiers created, create your first DFS modifier.</h2>\n </div>\n\n <div *ngIf=\"ModifierLookups?.length > 0\">\n <h2>DFS Modifiers</h2>\n\n <div fxLayout=\"row wrap\" fxLayout.lt-md=\"column\">\n <div\n fxFlex=\"30%\"\n fxFlex.lt-md=\"100%\"\n *ngFor=\"let modifierLookup of ModifierLookups\"\n >\n <mat-card\n class=\"spread\"\n *ngIf=\"Modifiers[modifierLookup]; let modifier\"\n >\n <mat-card-header>\n <!-- <img mat-card-avatar=\"/assets/images/project-icon.png\" /> -->\n\n <mat-card-title\n class=\"mat-subheading-2\"\n [matTooltip]=\"modifier.Name\"\n >\n {{ modifier.Name || modifier.Lookup }}\n\n <div fxFlex></div>\n\n <mat-slide-toggle\n class=\"spread\"\n [checked]=\"\n Project?.ModifierLookups.indexOf(modifierLookup) >= 0\n \"\n matTooltip=\"Use for project?\"\n >\n </mat-slide-toggle>\n </mat-card-title>\n </mat-card-header>\n\n <mat-card-content>\n <div class=\"spread\"></div>\n </mat-card-content>\n\n <mat-card-actions>\n <div class=\"data-app-actions\">\n <div fxFlex></div>\n\n <button\n mat-icon-button\n color=\"accent\"\n (click)=\"SetEditingModifier(modifierLookup)\"\n >\n <mat-icon matTooltip=\"Edit DFS Modifier\">\n settings\n </mat-icon>\n </button>\n\n <button\n mat-icon-button\n color=\"warn\"\n (click)=\"DeleteModifier(modifierLookup, modifier.Name)\"\n >\n <mat-icon matTooltip=\"Delete {{ modifier.Name }}\">\n delete_forever\n </mat-icon>\n </button>\n </div>\n\n <div class=\"data-app-fakes\">\n <div fxFlex></div>\n\n <button mat-icon-button disabled>\n <mat-icon>fiber_manual_record</mat-icon>\n </button>\n\n <button mat-icon-button disabled>\n <mat-icon>fiber_manual_record</mat-icon>\n </button>\n </div>\n </mat-card-actions>\n </mat-card>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
163
+ template: "<div>\n <form\n [formGroup]=\"ModifierFormGroup\"\n (ngSubmit)=\"SaveModifier()\"\n *ngIf=\"EditingModifier\"\n >\n <div class=\"form-card\">\n <mat-card class=\"spread\">\n <mat-card-header>\n <mat-card-title> DFS Modifier </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-icon\n matSuffix\n matTooltip=\"Configure modifiers for your DFS files.\"\n >\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"name\"\n placeholder=\"Name\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"priority\"\n placeholder=\"Priority\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"pathFilter\"\n placeholder=\"Path Filter (regex)\"\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n formControlName=\"type\"\n placeholder=\"DFS Modifier Type\"\n (selectionChange)=\"TypeChanged($event)\"\n >\n <mat-option\n value=\"LCU.Runtime.Applications.Modifiers.HTMLBaseDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"\n >\n HTML Base Modfier\n </mat-option>\n\n <mat-option\n value=\"LCU.Runtime.Applications.Modifiers.LCURegDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"\n >\n LCU Reg Modfier\n </mat-option>\n\n <mat-option\n value=\"LCU.Runtime.Applications.Modifiers.ThirdPartyLibraryDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"\n >\n Thrid Party Library Modifier\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <ng-container\n *ngIf=\"\n CurrentType ==\n 'LCU.Runtime.Applications.Modifiers.LCURegDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'\n \"\n >\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"stateDataToken\"\n placeholder=\"State Data Token\"\n required\n />\n </mat-form-field>\n </ng-container>\n\n <ng-container\n *ngIf=\"\n CurrentType ==\n 'LCU.Runtime.Applications.Modifiers.ThirdPartyLibraryDFSModifierManager, LCU.Runtime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'\n \"\n >\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"location\"\n placeholder=\"Location\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"scriptId\"\n placeholder=\"Script ID\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"script\"\n placeholder=\"Script\"\n required\n />\n </mat-form-field>\n </ng-container>\n\n <mat-slide-toggle class=\"spread\" formControlName=\"enabled\">\n Is Enabled?\n </mat-slide-toggle>\n </mat-card-content>\n </mat-card>\n </div>\n\n <div class=\"spread\">\n <div fxFlex></div>\n\n <button mat-button type=\"button\" (click)=\"SetEditingModifier(null)\">\n <mat-icon>cancel</mat-icon> Cancel\n </button>\n\n <div fxFlex></div>\n\n <button\n mat-raised-button\n type=\"submit\"\n color=\"primary\"\n [disabled]=\"!ModifierFormGroup.valid || !ModifierFormGroup.dirty\"\n >\n <mat-icon>save</mat-icon> Save DFS Modifier\n </button>\n\n <div fxFlex></div>\n </div>\n </form>\n\n <div class=\"spread\" *ngIf=\"!EditingModifier\">\n <span class=\"apps-actions\">\n <button mat-raised-button color=\"accent\" (click)=\"CreateNewModifier()\">\n <mat-icon color=\"primary\">add</mat-icon> Create New\n </button>\n </span>\n\n <div class=\"spread\">\n <div *ngIf=\"ModifierLookups?.length <= 0\">\n <h2>No DFS modifiers created, create your first DFS modifier.</h2>\n </div>\n\n <div *ngIf=\"ModifierLookups?.length > 0\">\n <h2>DFS Modifiers</h2>\n\n <div fxLayout=\"row wrap\" fxLayout.lt-md=\"column\">\n <div\n fxFlex=\"30%\"\n fxFlex.lt-md=\"100%\"\n *ngFor=\"let modifierLookup of ModifierLookups\"\n >\n <mat-card\n class=\"spread\"\n *ngIf=\"Modifiers[modifierLookup]; let modifier\"\n >\n <mat-card-header>\n <!-- <img mat-card-avatar=\"/assets/images/project-icon.png\" /> -->\n\n <mat-card-title\n class=\"mat-subheading-2\"\n [matTooltip]=\"modifier.Name\"\n >\n {{ modifier.Name || modifier.Lookup }}\n </mat-card-title>\n </mat-card-header>\n\n <mat-card-content>\n <div class=\"spread\">\n <mat-slide-toggle class=\"spread\" [checked]=\"Project?.ModifierLookups.indexOf(modifierLookup) >= 0\">\n Use for project?\n </mat-slide-toggle>\n </div>\n </mat-card-content>\n\n <mat-card-actions>\n <div class=\"data-app-actions\">\n <div fxFlex></div>\n\n <button\n mat-icon-button\n color=\"accent\"\n (click)=\"SetEditingModifier(modifierLookup)\"\n >\n <mat-icon matTooltip=\"Edit DFS Modifier\">\n settings\n </mat-icon>\n </button>\n\n <button\n mat-icon-button\n color=\"warn\"\n (click)=\"DeleteModifier(modifierLookup, modifier.Name)\"\n >\n <mat-icon matTooltip=\"Delete {{ modifier.Name }}\">\n delete_forever\n </mat-icon>\n </button>\n </div>\n\n <div class=\"data-app-fakes\">\n <div fxFlex></div>\n\n <button mat-icon-button disabled>\n <mat-icon>fiber_manual_record</mat-icon>\n </button>\n\n <button mat-icon-button disabled>\n <mat-icon>fiber_manual_record</mat-icon>\n </button>\n </div>\n </mat-card-actions>\n </mat-card>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
163
164
  styles: ["@import url(\"https://fonts.googleapis.com/icon?family=Material+Icons\");@import url(\"https://fonts.googleapis.com/css?family=Encode+Sans+Condensed:400,900&display=swap\");@import url(\"https://fonts.googleapis.com/css?family=Open+Sans:300,400,700&display=swap\");.disable-autofill-background-default input:-webkit-autofill,.disable-autofill-background-default input:-webkit-autofill:focus,.disable-autofill-background-default input:-webkit-autofill:hover,.disable-autofill-background-default select:-webkit-autofill,.disable-autofill-background-default select:-webkit-autofill:focus,.disable-autofill-background-default select:-webkit-autofill:hover,.disable-autofill-background-default textarea:-webkit-autofill,.disable-autofill-background-default textarea:-webkit-autofill:focus,.disable-autofill-background-default textarea:-webkit-autofill:hover{-webkit-transition:background-color 5000s!important;transition:background-color 5000s!important}.list-item-disabled{cursor:not-allowed!important;filter:alpha(opacity=50);opacity:.5}.filler{display:inline-block!important;flex:1 1 auto}.sticky{position:sticky;top:0;z-index:750}.inline{display:inline-block}.contents,.page-element{display:contents}.mat-spinner{margin:auto}.mat-full-width{width:100%}.spread{margin:2rem}.spread-thin{margin:1rem}.overlay{position:sticky!important}.overlay.top{top:0}.overlay.bottom{bottom:0}.margin-0{margin:0!important}.margin-top-0,.margin-y-0{margin-top:0!important}.margin-right-0,.margin-x-0{margin-right:0!important}.margin-bottom-0,.margin-y-0{margin-bottom:0!important}.margin-left-0,.margin-x-0{margin-left:0!important}.margin-1{margin:.25rem!important}.margin-top-1,.margin-y-1{margin-top:.25rem!important}.margin-right-1,.margin-x-1{margin-right:.25rem!important}.margin-bottom-1,.margin-y-1{margin-bottom:.25rem!important}.margin-left-1,.margin-x-1{margin-left:.25rem!important}.margin-2{margin:.5rem!important}.margin-top-2,.margin-y-2{margin-top:.5rem!important}.margin-right-2,.margin-x-2{margin-right:.5rem!important}.margin-bottom-2,.margin-y-2{margin-bottom:.5rem!important}.margin-left-2,.margin-x-2{margin-left:.5rem!important}.margin-3{margin:1rem!important}.margin-top-3,.margin-y-3{margin-top:1rem!important}.margin-top-bottom-3{margin:1rem 0!important}.margin-right-3,.margin-x-3{margin-right:1rem!important}.margin-bottom-3,.margin-y-3{margin-bottom:1rem!important}.margin-left-3,.margin-x-3{margin-left:1rem!important}.margin-4{margin:2rem!important}.margin-top-4,.margin-y-4{margin-top:2rem!important}.margin-right-4,.margin-x-4{margin-right:2rem!important}.margin-bottom-4,.margin-y-4{margin-bottom:2rem!important}.margin-left-4,.margin-x-4{margin-left:2rem!important}.margin-right-5,.margin-x-5{margin-right:4rem!important}.margin-bottom-5,.margin-y-5{margin-bottom:4rem!important}.margin-left-5,.margin-x-5{margin-left:4rem!important}.margin-5{margin:4rem!important}.margin-top-5,.margin-y-5{margin-top:4rem!important}.margin-right-6,.margin-x-6{margin-right:4.5rem!important}.margin-bottom-6,.margin-y-6{margin-bottom:4.5rem!important}.margin-left-6,.margin-x-6{margin-left:4.5rem!important}.margin-7{margin:6rem!important}.margin-top-7,.margin-y-7{margin-top:6rem!important}.margin-right-7,.margin-x-7{margin-right:6rem!important}.margin-bottom-7,.margin-y-7{margin-bottom:6rem!important}.margin-left-7,.margin-x-7{margin-left:6rem!important}.margin-8{margin:7.5rem!important}.margin-top-8,.margin-y-8{margin-top:7.5rem!important}.margin-right-8,.margin-x-8{margin-right:7.5rem!important}.margin-bottom-8,.margin-y-8{margin-bottom:7.5rem!important}.margin-left-8,.margin-x-8{margin-left:7.5rem!important}.margin-9{margin:9rem!important}.margin-top-9,.margin-y-9{margin-top:9rem!important}.margin-right-9,.margin-x-9{margin-right:9rem!important}.margin-bottom-9,.margin-y-9{margin-bottom:9rem!important}.margin-left-9,.margin-x-9{margin-left:9rem!important}.padding-0{padding:0!important}.padding-top-0,.padding-y-0{padding-top:0!important}.padding-right-0,.padding-x-0{padding-right:0!important}.padding-bottom-0,.padding-y-0{padding-bottom:0!important}.padding-left-0,.padding-x-0{padding-left:0!important}.padding-1{padding:.25rem!important}.padding-top-1,.padding-y-1{padding-top:.25rem!important}.padding-right-1,.padding-x-1{padding-right:.25rem!important}.padding-bottom-1,.padding-y-1{padding-bottom:.25rem!important}.padding-left-1,.padding-x-1{padding-left:.25rem!important}.padding-2{padding:.5rem!important}.padding-top-2,.padding-y-2{padding-top:.5rem!important}.padding-right-2,.padding-x-2{padding-right:.5rem!important}.padding-bottom-2,.padding-y-2{padding-bottom:.5rem!important}.padding-left-2,.padding-x-2{padding-left:.5rem!important}.padding-3{padding:1rem!important}.padding-top-3,.padding-y-3{padding-top:1rem!important}.padding-right-3,.padding-x-3{padding-right:1rem!important}.padding-bottom-3,.padding-y-3{padding-bottom:1rem!important}.padding-left-3,.padding-x-3{padding-left:1rem!important}.padding-4{padding:2rem!important}.padding-top-4,.padding-y-4{padding-top:2rem!important}.padding-right-4,.padding-x-4{padding-right:2rem!important}.padding-bottom-4,.padding-y-4{padding-bottom:2rem!important}.padding-left-4,.padding-x-4{padding-left:2rem!important}.padding-5{padding:4rem!important}.padding-top-5,.padding-y-5{padding-top:4rem!important}.padding-right-5,.padding-x-5{padding-right:4rem!important}.padding-bottom-5,.padding-y-5{padding-bottom:4rem!important}.padding-left-5,.padding-x-5{padding-left:4rem!important}.margin-n1{margin:-.25rem!important}.margin-top-n1,.margin-y-n1{margin-top:-.25rem!important}.margin-right-n1,.margin-x-n1{margin-right:-.25rem!important}.margin-bottom-n1,.margin-y-n1{margin-bottom:-.25rem!important}.margin-left-n1,.margin-x-n1{margin-left:-.25rem!important}.margin-n2{margin:-.5rem!important}.margin-top-n2,.margin-y-n2{margin-top:-.5rem!important}.margin-right-n2,.margin-x-n2{margin-right:-.5rem!important}.margin-bottom-n2,.margin-y-n2{margin-bottom:-.5rem!important}.margin-left-n2,.margin-x-n2{margin-left:-.5rem!important}.margin-n3{margin:-1rem!important}.margin-top-n3,.margin-y-n3{margin-top:-1rem!important}.margin-right-n3,.margin-x-n3{margin-right:-1rem!important}.margin-bottom-n3,.margin-y-n3{margin-bottom:-1rem!important}.margin-left-n3,.margin-x-n3{margin-left:-1rem!important}.margin-n4{margin:-2rem!important}.margin-top-n4,.margin-y-n4{margin-top:-2rem!important}.margin-right-n4,.margin-x-n4{margin-right:-2rem!important}.margin-bottom-n4,.margin-y-n4{margin-bottom:-2rem!important}.margin-left-n4,.margin-x-n4{margin-left:-2rem!important}.margin-n5{margin:-4rem!important}.margin-top-n5,.margin-y-n5{margin-top:-4rem!important}.margin-right-n5,.margin-x-n5{margin-right:-4rem!important}.margin-bottom-n5,.margin-y-n5{margin-bottom:-4rem!important}.margin-left-n5,.margin-x-n5{margin-left:-4rem!important}.margin-auto{margin:auto!important}.margin-top-auto,.margin-y-auto{margin-top:auto!important}.margin-right-auto,.margin-x-auto{margin-right:auto!important}.margin-bottom-auto,.margin-y-auto{margin-bottom:auto!important}.margin-left-auto,.margin-x-auto{margin-left:auto!important}@media (min-width:576px){.margin-sm-0{margin:0!important}.margin-top-sm-0,.margin-y-sm-0{margin-top:0!important}.margin-right-sm-0,.margin-x-sm-0{margin-right:0!important}.margin-bottom-sm-0,.margin-y-sm-0{margin-bottom:0!important}.margin-left-sm-0,.margin-x-sm-0{margin-left:0!important}.margin-sm-1{margin:.25rem!important}.margin-top-sm-1,.margin-y-sm-1{margin-top:.25rem!important}.margin-right-sm-1,.margin-x-sm-1{margin-right:.25rem!important}.margin-bottom-sm-1,.margin-y-sm-1{margin-bottom:.25rem!important}.margin-left-sm-1,.margin-x-sm-1{margin-left:.25rem!important}.margin-sm-2{margin:.5rem!important}.margin-top-sm-2,.margin-y-sm-2{margin-top:.5rem!important}.margin-right-sm-2,.margin-x-sm-2{margin-right:.5rem!important}.margin-bottom-sm-2,.margin-y-sm-2{margin-bottom:.5rem!important}.margin-left-sm-2,.margin-x-sm-2{margin-left:.5rem!important}.margin-sm-3{margin:1rem!important}.margin-top-sm-3,.margin-y-sm-3{margin-top:1rem!important}.margin-right-sm-3,.margin-x-sm-3{margin-right:1rem!important}.margin-bottom-sm-3,.margin-y-sm-3{margin-bottom:1rem!important}.margin-left-sm-3,.margin-x-sm-3{margin-left:1rem!important}.margin-sm-4{margin:2rem!important}.margin-top-sm-4,.margin-y-sm-4{margin-top:2rem!important}.margin-right-sm-4,.margin-x-sm-4{margin-right:2rem!important}.margin-bottom-sm-4,.margin-y-sm-4{margin-bottom:2rem!important}.margin-left-sm-4,.margin-x-sm-4{margin-left:2rem!important}.margin-sm-5{margin:4rem!important}.margin-top-sm-5,.margin-y-sm-5{margin-top:4rem!important}.margin-right-sm-5,.margin-x-sm-5{margin-right:4rem!important}.margin-bottom-sm-5,.margin-y-sm-5{margin-bottom:4rem!important}.margin-left-sm-5,.margin-x-sm-5{margin-left:4rem!important}.padding-sm-0{padding:0!important}.padding-top-sm-0,.padding-y-sm-0{padding-top:0!important}.padding-right-sm-0,.padding-x-sm-0{padding-right:0!important}.padding-bottom-sm-0,.padding-y-sm-0{padding-bottom:0!important}.padding-left-sm-0,.padding-x-sm-0{padding-left:0!important}.padding-sm-1{padding:.25rem!important}.padding-top-sm-1,.padding-y-sm-1{padding-top:.25rem!important}.padding-right-sm-1,.padding-x-sm-1{padding-right:.25rem!important}.padding-bottom-sm-1,.padding-y-sm-1{padding-bottom:.25rem!important}.padding-left-sm-1,.padding-x-sm-1{padding-left:.25rem!important}.padding-sm-2{padding:.5rem!important}.padding-top-sm-2,.padding-y-sm-2{padding-top:.5rem!important}.padding-right-sm-2,.padding-x-sm-2{padding-right:.5rem!important}.padding-bottom-sm-2,.padding-y-sm-2{padding-bottom:.5rem!important}.padding-left-sm-2,.padding-x-sm-2{padding-left:.5rem!important}.padding-sm-3{padding:1rem!important}.padding-top-sm-3,.padding-y-sm-3{padding-top:1rem!important}.padding-right-sm-3,.padding-x-sm-3{padding-right:1rem!important}.padding-bottom-sm-3,.padding-y-sm-3{padding-bottom:1rem!important}.padding-left-sm-3,.padding-x-sm-3{padding-left:1rem!important}.padding-sm-4{padding:2rem!important}.padding-top-sm-4,.padding-y-sm-4{padding-top:2rem!important}.padding-right-sm-4,.padding-x-sm-4{padding-right:2rem!important}.padding-bottom-sm-4,.padding-y-sm-4{padding-bottom:2rem!important}.padding-left-sm-4,.padding-x-sm-4{padding-left:2rem!important}.padding-sm-5{padding:4rem!important}.padding-top-sm-5,.padding-y-sm-5{padding-top:4rem!important}.padding-right-sm-5,.padding-x-sm-5{padding-right:4rem!important}.padding-bottom-sm-5,.padding-y-sm-5{padding-bottom:4rem!important}.padding-left-sm-5,.padding-x-sm-5{padding-left:4rem!important}.margin-sm-n1{margin:-.25rem!important}.margin-top-sm-n1,.margin-y-sm-n1{margin-top:-.25rem!important}.margin-right-sm-n1,.margin-x-sm-n1{margin-right:-.25rem!important}.margin-bottom-sm-n1,.margin-y-sm-n1{margin-bottom:-.25rem!important}.margin-left-sm-n1,.margin-x-sm-n1{margin-left:-.25rem!important}.margin-sm-n2{margin:-.5rem!important}.margin-top-sm-n2,.margin-y-sm-n2{margin-top:-.5rem!important}.margin-right-sm-n2,.margin-x-sm-n2{margin-right:-.5rem!important}.margin-bottom-sm-n2,.margin-y-sm-n2{margin-bottom:-.5rem!important}.margin-left-sm-n2,.margin-x-sm-n2{margin-left:-.5rem!important}.margin-sm-n3{margin:-1rem!important}.margin-top-sm-n3,.margin-y-sm-n3{margin-top:-1rem!important}.margin-right-sm-n3,.margin-x-sm-n3{margin-right:-1rem!important}.margin-bottom-sm-n3,.margin-y-sm-n3{margin-bottom:-1rem!important}.margin-left-sm-n3,.margin-x-sm-n3{margin-left:-1rem!important}.margin-sm-n4{margin:-2rem!important}.margin-top-sm-n4,.margin-y-sm-n4{margin-top:-2rem!important}.margin-right-sm-n4,.margin-x-sm-n4{margin-right:-2rem!important}.margin-bottom-sm-n4,.margin-y-sm-n4{margin-bottom:-2rem!important}.margin-left-sm-n4,.margin-x-sm-n4{margin-left:-2rem!important}.margin-sm-n5{margin:-4rem!important}.margin-top-sm-n5,.margin-y-sm-n5{margin-top:-4rem!important}.margin-right-sm-n5,.margin-x-sm-n5{margin-right:-4rem!important}.margin-bottom-sm-n5,.margin-y-sm-n5{margin-bottom:-4rem!important}.margin-left-sm-n5,.margin-x-sm-n5{margin-left:-4rem!important}.margin-sm-auto{margin:auto!important}.margin-top-sm-auto,.margin-y-sm-auto{margin-top:auto!important}.margin-right-sm-auto,.margin-x-sm-auto{margin-right:auto!important}.margin-bottom-sm-auto,.margin-y-sm-auto{margin-bottom:auto!important}.margin-left-sm-auto,.margin-x-sm-auto{margin-left:auto!important}}@media (min-width:768px){.margin-md-0{margin:0!important}.margin-top-md-0,.margin-y-md-0{margin-top:0!important}.margin-right-md-0,.margin-x-md-0{margin-right:0!important}.margin-bottom-md-0,.margin-y-md-0{margin-bottom:0!important}.margin-left-md-0,.margin-x-md-0{margin-left:0!important}.margin-md-1{margin:.25rem!important}.margin-top-md-1,.margin-y-md-1{margin-top:.25rem!important}.margin-right-md-1,.margin-x-md-1{margin-right:.25rem!important}.margin-bottom-md-1,.margin-y-md-1{margin-bottom:.25rem!important}.margin-left-md-1,.margin-x-md-1{margin-left:.25rem!important}.margin-md-2{margin:.5rem!important}.margin-top-md-2,.margin-y-md-2{margin-top:.5rem!important}.margin-right-md-2,.margin-x-md-2{margin-right:.5rem!important}.margin-bottom-md-2,.margin-y-md-2{margin-bottom:.5rem!important}.margin-left-md-2,.margin-x-md-2{margin-left:.5rem!important}.margin-md-3{margin:1rem!important}.margin-top-md-3,.margin-y-md-3{margin-top:1rem!important}.margin-right-md-3,.margin-x-md-3{margin-right:1rem!important}.margin-bottom-md-3,.margin-y-md-3{margin-bottom:1rem!important}.margin-left-md-3,.margin-x-md-3{margin-left:1rem!important}.margin-md-4{margin:2rem!important}.margin-top-md-4,.margin-y-md-4{margin-top:2rem!important}.margin-right-md-4,.margin-x-md-4{margin-right:2rem!important}.margin-bottom-md-4,.margin-y-md-4{margin-bottom:2rem!important}.margin-left-md-4,.margin-x-md-4{margin-left:2rem!important}.margin-md-5{margin:4rem!important}.margin-top-md-5,.margin-y-md-5{margin-top:4rem!important}.margin-right-md-5,.margin-x-md-5{margin-right:4rem!important}.margin-bottom-md-5,.margin-y-md-5{margin-bottom:4rem!important}.margin-left-md-5,.margin-x-md-5{margin-left:4rem!important}.padding-md-0{padding:0!important}.padding-top-md-0,.padding-y-md-0{padding-top:0!important}.padding-right-md-0,.padding-x-md-0{padding-right:0!important}.padding-bottom-md-0,.padding-y-md-0{padding-bottom:0!important}.padding-left-md-0,.padding-x-md-0{padding-left:0!important}.padding-md-1{padding:.25rem!important}.padding-top-md-1,.padding-y-md-1{padding-top:.25rem!important}.padding-right-md-1,.padding-x-md-1{padding-right:.25rem!important}.padding-bottom-md-1,.padding-y-md-1{padding-bottom:.25rem!important}.padding-left-md-1,.padding-x-md-1{padding-left:.25rem!important}.padding-md-2{padding:.5rem!important}.padding-top-md-2,.padding-y-md-2{padding-top:.5rem!important}.padding-right-md-2,.padding-x-md-2{padding-right:.5rem!important}.padding-bottom-md-2,.padding-y-md-2{padding-bottom:.5rem!important}.padding-left-md-2,.padding-x-md-2{padding-left:.5rem!important}.padding-md-3{padding:1rem!important}.padding-top-md-3,.padding-y-md-3{padding-top:1rem!important}.padding-right-md-3,.padding-x-md-3{padding-right:1rem!important}.padding-bottom-md-3,.padding-y-md-3{padding-bottom:1rem!important}.padding-left-md-3,.padding-x-md-3{padding-left:1rem!important}.padding-md-4{padding:2rem!important}.padding-top-md-4,.padding-y-md-4{padding-top:2rem!important}.padding-right-md-4,.padding-x-md-4{padding-right:2rem!important}.padding-bottom-md-4,.padding-y-md-4{padding-bottom:2rem!important}.padding-left-md-4,.padding-x-md-4{padding-left:2rem!important}.padding-md-5{padding:4rem!important}.padding-top-md-5,.padding-y-md-5{padding-top:4rem!important}.padding-right-md-5,.padding-x-md-5{padding-right:4rem!important}.padding-bottom-md-5,.padding-y-md-5{padding-bottom:4rem!important}.padding-left-md-5,.padding-x-md-5{padding-left:4rem!important}.margin-md-n1{margin:-.25rem!important}.margin-top-md-n1,.margin-y-md-n1{margin-top:-.25rem!important}.margin-right-md-n1,.margin-x-md-n1{margin-right:-.25rem!important}.margin-bottom-md-n1,.margin-y-md-n1{margin-bottom:-.25rem!important}.margin-left-md-n1,.margin-x-md-n1{margin-left:-.25rem!important}.margin-md-n2{margin:-.5rem!important}.margin-top-md-n2,.margin-y-md-n2{margin-top:-.5rem!important}.margin-right-md-n2,.margin-x-md-n2{margin-right:-.5rem!important}.margin-bottom-md-n2,.margin-y-md-n2{margin-bottom:-.5rem!important}.margin-left-md-n2,.margin-x-md-n2{margin-left:-.5rem!important}.margin-md-n3{margin:-1rem!important}.margin-top-md-n3,.margin-y-md-n3{margin-top:-1rem!important}.margin-right-md-n3,.margin-x-md-n3{margin-right:-1rem!important}.margin-bottom-md-n3,.margin-y-md-n3{margin-bottom:-1rem!important}.margin-left-md-n3,.margin-x-md-n3{margin-left:-1rem!important}.margin-md-n4{margin:-2rem!important}.margin-top-md-n4,.margin-y-md-n4{margin-top:-2rem!important}.margin-right-md-n4,.margin-x-md-n4{margin-right:-2rem!important}.margin-bottom-md-n4,.margin-y-md-n4{margin-bottom:-2rem!important}.margin-left-md-n4,.margin-x-md-n4{margin-left:-2rem!important}.margin-md-n5{margin:-4rem!important}.margin-top-md-n5,.margin-y-md-n5{margin-top:-4rem!important}.margin-right-md-n5,.margin-x-md-n5{margin-right:-4rem!important}.margin-bottom-md-n5,.margin-y-md-n5{margin-bottom:-4rem!important}.margin-left-md-n5,.margin-x-md-n5{margin-left:-4rem!important}.margin-md-auto{margin:auto!important}.margin-top-md-auto,.margin-y-md-auto{margin-top:auto!important}.margin-right-md-auto,.margin-x-md-auto{margin-right:auto!important}.margin-bottom-md-auto,.margin-y-md-auto{margin-bottom:auto!important}.margin-left-md-auto,.margin-x-md-auto{margin-left:auto!important}}@media (min-width:992px){.margin-lg-0{margin:0!important}.margin-top-lg-0,.margin-y-lg-0{margin-top:0!important}.margin-right-lg-0,.margin-x-lg-0{margin-right:0!important}.margin-bottom-lg-0,.margin-y-lg-0{margin-bottom:0!important}.margin-left-lg-0,.margin-x-lg-0{margin-left:0!important}.margin-lg-1{margin:.25rem!important}.margin-top-lg-1,.margin-y-lg-1{margin-top:.25rem!important}.margin-right-lg-1,.margin-x-lg-1{margin-right:.25rem!important}.margin-bottom-lg-1,.margin-y-lg-1{margin-bottom:.25rem!important}.margin-left-lg-1,.margin-x-lg-1{margin-left:.25rem!important}.margin-lg-2{margin:.5rem!important}.margin-top-lg-2,.margin-y-lg-2{margin-top:.5rem!important}.margin-right-lg-2,.margin-x-lg-2{margin-right:.5rem!important}.margin-bottom-lg-2,.margin-y-lg-2{margin-bottom:.5rem!important}.margin-left-lg-2,.margin-x-lg-2{margin-left:.5rem!important}.margin-lg-3{margin:1rem!important}.margin-top-lg-3,.margin-y-lg-3{margin-top:1rem!important}.margin-right-lg-3,.margin-x-lg-3{margin-right:1rem!important}.margin-bottom-lg-3,.margin-y-lg-3{margin-bottom:1rem!important}.margin-left-lg-3,.margin-x-lg-3{margin-left:1rem!important}.margin-lg-4{margin:2rem!important}.margin-top-lg-4,.margin-y-lg-4{margin-top:2rem!important}.margin-right-lg-4,.margin-x-lg-4{margin-right:2rem!important}.margin-bottom-lg-4,.margin-y-lg-4{margin-bottom:2rem!important}.margin-left-lg-4,.margin-x-lg-4{margin-left:2rem!important}.margin-lg-5{margin:4rem!important}.margin-top-lg-5,.margin-y-lg-5{margin-top:4rem!important}.margin-right-lg-5,.margin-x-lg-5{margin-right:4rem!important}.margin-bottom-lg-5,.margin-y-lg-5{margin-bottom:4rem!important}.margin-left-lg-5,.margin-x-lg-5{margin-left:4rem!important}.padding-lg-0{padding:0!important}.padding-top-lg-0,.padding-y-lg-0{padding-top:0!important}.padding-right-lg-0,.padding-x-lg-0{padding-right:0!important}.padding-bottom-lg-0,.padding-y-lg-0{padding-bottom:0!important}.padding-left-lg-0,.padding-x-lg-0{padding-left:0!important}.padding-lg-1{padding:.25rem!important}.padding-top-lg-1,.padding-y-lg-1{padding-top:.25rem!important}.padding-right-lg-1,.padding-x-lg-1{padding-right:.25rem!important}.padding-bottom-lg-1,.padding-y-lg-1{padding-bottom:.25rem!important}.padding-left-lg-1,.padding-x-lg-1{padding-left:.25rem!important}.padding-lg-2{padding:.5rem!important}.padding-top-lg-2,.padding-y-lg-2{padding-top:.5rem!important}.padding-right-lg-2,.padding-x-lg-2{padding-right:.5rem!important}.padding-bottom-lg-2,.padding-y-lg-2{padding-bottom:.5rem!important}.padding-left-lg-2,.padding-x-lg-2{padding-left:.5rem!important}.padding-lg-3{padding:1rem!important}.padding-top-lg-3,.padding-y-lg-3{padding-top:1rem!important}.padding-right-lg-3,.padding-x-lg-3{padding-right:1rem!important}.padding-bottom-lg-3,.padding-y-lg-3{padding-bottom:1rem!important}.padding-left-lg-3,.padding-x-lg-3{padding-left:1rem!important}.padding-lg-4{padding:2rem!important}.padding-top-lg-4,.padding-y-lg-4{padding-top:2rem!important}.padding-right-lg-4,.padding-x-lg-4{padding-right:2rem!important}.padding-bottom-lg-4,.padding-y-lg-4{padding-bottom:2rem!important}.padding-left-lg-4,.padding-x-lg-4{padding-left:2rem!important}.padding-lg-5{padding:4rem!important}.padding-top-lg-5,.padding-y-lg-5{padding-top:4rem!important}.padding-right-lg-5,.padding-x-lg-5{padding-right:4rem!important}.padding-bottom-lg-5,.padding-y-lg-5{padding-bottom:4rem!important}.padding-left-lg-5,.padding-x-lg-5{padding-left:4rem!important}.margin-lg-n1{margin:-.25rem!important}.margin-top-lg-n1,.margin-y-lg-n1{margin-top:-.25rem!important}.margin-right-lg-n1,.margin-x-lg-n1{margin-right:-.25rem!important}.margin-bottom-lg-n1,.margin-y-lg-n1{margin-bottom:-.25rem!important}.margin-left-lg-n1,.margin-x-lg-n1{margin-left:-.25rem!important}.margin-lg-n2{margin:-.5rem!important}.margin-top-lg-n2,.margin-y-lg-n2{margin-top:-.5rem!important}.margin-right-lg-n2,.margin-x-lg-n2{margin-right:-.5rem!important}.margin-bottom-lg-n2,.margin-y-lg-n2{margin-bottom:-.5rem!important}.margin-left-lg-n2,.margin-x-lg-n2{margin-left:-.5rem!important}.margin-lg-n3{margin:-1rem!important}.margin-top-lg-n3,.margin-y-lg-n3{margin-top:-1rem!important}.margin-right-lg-n3,.margin-x-lg-n3{margin-right:-1rem!important}.margin-bottom-lg-n3,.margin-y-lg-n3{margin-bottom:-1rem!important}.margin-left-lg-n3,.margin-x-lg-n3{margin-left:-1rem!important}.margin-lg-n4{margin:-2rem!important}.margin-top-lg-n4,.margin-y-lg-n4{margin-top:-2rem!important}.margin-right-lg-n4,.margin-x-lg-n4{margin-right:-2rem!important}.margin-bottom-lg-n4,.margin-y-lg-n4{margin-bottom:-2rem!important}.margin-left-lg-n4,.margin-x-lg-n4{margin-left:-2rem!important}.margin-lg-n5{margin:-4rem!important}.margin-top-lg-n5,.margin-y-lg-n5{margin-top:-4rem!important}.margin-right-lg-n5,.margin-x-lg-n5{margin-right:-4rem!important}.margin-bottom-lg-n5,.margin-y-lg-n5{margin-bottom:-4rem!important}.margin-left-lg-n5,.margin-x-lg-n5{margin-left:-4rem!important}.margin-lg-auto{margin:auto!important}.margin-top-lg-auto,.margin-y-lg-auto{margin-top:auto!important}.margin-right-lg-auto,.margin-x-lg-auto{margin-right:auto!important}.margin-bottom-lg-auto,.margin-y-lg-auto{margin-bottom:auto!important}.margin-left-lg-auto,.margin-x-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.margin-xl-0{margin:0!important}.margin-top-xl-0,.margin-y-xl-0{margin-top:0!important}.margin-right-xl-0,.margin-x-xl-0{margin-right:0!important}.margin-bottom-xl-0,.margin-y-xl-0{margin-bottom:0!important}.margin-left-xl-0,.margin-x-xl-0{margin-left:0!important}.margin-xl-1{margin:.25rem!important}.margin-top-xl-1,.margin-y-xl-1{margin-top:.25rem!important}.margin-right-xl-1,.margin-x-xl-1{margin-right:.25rem!important}.margin-bottom-xl-1,.margin-y-xl-1{margin-bottom:.25rem!important}.margin-left-xl-1,.margin-x-xl-1{margin-left:.25rem!important}.margin-xl-2{margin:.5rem!important}.margin-top-xl-2,.margin-y-xl-2{margin-top:.5rem!important}.margin-right-xl-2,.margin-x-xl-2{margin-right:.5rem!important}.margin-bottom-xl-2,.margin-y-xl-2{margin-bottom:.5rem!important}.margin-left-xl-2,.margin-x-xl-2{margin-left:.5rem!important}.margin-xl-3{margin:1rem!important}.margin-top-xl-3,.margin-y-xl-3{margin-top:1rem!important}.margin-right-xl-3,.margin-x-xl-3{margin-right:1rem!important}.margin-bottom-xl-3,.margin-y-xl-3{margin-bottom:1rem!important}.margin-left-xl-3,.margin-x-xl-3{margin-left:1rem!important}.margin-xl-4{margin:2rem!important}.margin-top-xl-4,.margin-y-xl-4{margin-top:2rem!important}.margin-right-xl-4,.margin-x-xl-4{margin-right:2rem!important}.margin-bottom-xl-4,.margin-y-xl-4{margin-bottom:2rem!important}.margin-left-xl-4,.margin-x-xl-4{margin-left:2rem!important}.margin-xl-5{margin:4rem!important}.margin-top-xl-5,.margin-y-xl-5{margin-top:4rem!important}.margin-right-xl-5,.margin-x-xl-5{margin-right:4rem!important}.margin-bottom-xl-5,.margin-y-xl-5{margin-bottom:4rem!important}.margin-left-xl-5,.margin-x-xl-5{margin-left:4rem!important}.padding-xl-0{padding:0!important}.padding-top-xl-0,.padding-y-xl-0{padding-top:0!important}.padding-right-xl-0,.padding-x-xl-0{padding-right:0!important}.padding-bottom-xl-0,.padding-y-xl-0{padding-bottom:0!important}.padding-left-xl-0,.padding-x-xl-0{padding-left:0!important}.padding-xl-1{padding:.25rem!important}.padding-top-xl-1,.padding-y-xl-1{padding-top:.25rem!important}.padding-right-xl-1,.padding-x-xl-1{padding-right:.25rem!important}.padding-bottom-xl-1,.padding-y-xl-1{padding-bottom:.25rem!important}.padding-left-xl-1,.padding-x-xl-1{padding-left:.25rem!important}.padding-xl-2{padding:.5rem!important}.padding-top-xl-2,.padding-y-xl-2{padding-top:.5rem!important}.padding-right-xl-2,.padding-x-xl-2{padding-right:.5rem!important}.padding-bottom-xl-2,.padding-y-xl-2{padding-bottom:.5rem!important}.padding-left-xl-2,.padding-x-xl-2{padding-left:.5rem!important}.padding-xl-3{padding:1rem!important}.padding-top-xl-3,.padding-y-xl-3{padding-top:1rem!important}.padding-right-xl-3,.padding-x-xl-3{padding-right:1rem!important}.padding-bottom-xl-3,.padding-y-xl-3{padding-bottom:1rem!important}.padding-left-xl-3,.padding-x-xl-3{padding-left:1rem!important}.padding-xl-4{padding:2rem!important}.padding-top-xl-4,.padding-y-xl-4{padding-top:2rem!important}.padding-right-xl-4,.padding-x-xl-4{padding-right:2rem!important}.padding-bottom-xl-4,.padding-y-xl-4{padding-bottom:2rem!important}.padding-left-xl-4,.padding-x-xl-4{padding-left:2rem!important}.padding-xl-5{padding:4rem!important}.padding-top-xl-5,.padding-y-xl-5{padding-top:4rem!important}.padding-right-xl-5,.padding-x-xl-5{padding-right:4rem!important}.padding-bottom-xl-5,.padding-y-xl-5{padding-bottom:4rem!important}.padding-left-xl-5,.padding-x-xl-5{padding-left:4rem!important}.margin-xl-n1{margin:-.25rem!important}.margin-top-xl-n1,.margin-y-xl-n1{margin-top:-.25rem!important}.margin-right-xl-n1,.margin-x-xl-n1{margin-right:-.25rem!important}.margin-bottom-xl-n1,.margin-y-xl-n1{margin-bottom:-.25rem!important}.margin-left-xl-n1,.margin-x-xl-n1{margin-left:-.25rem!important}.margin-xl-n2{margin:-.5rem!important}.margin-top-xl-n2,.margin-y-xl-n2{margin-top:-.5rem!important}.margin-right-xl-n2,.margin-x-xl-n2{margin-right:-.5rem!important}.margin-bottom-xl-n2,.margin-y-xl-n2{margin-bottom:-.5rem!important}.margin-left-xl-n2,.margin-x-xl-n2{margin-left:-.5rem!important}.margin-xl-n3{margin:-1rem!important}.margin-top-xl-n3,.margin-y-xl-n3{margin-top:-1rem!important}.margin-right-xl-n3,.margin-x-xl-n3{margin-right:-1rem!important}.margin-bottom-xl-n3,.margin-y-xl-n3{margin-bottom:-1rem!important}.margin-left-xl-n3,.margin-x-xl-n3{margin-left:-1rem!important}.margin-xl-n4{margin:-2rem!important}.margin-top-xl-n4,.margin-y-xl-n4{margin-top:-2rem!important}.margin-right-xl-n4,.margin-x-xl-n4{margin-right:-2rem!important}.margin-bottom-xl-n4,.margin-y-xl-n4{margin-bottom:-2rem!important}.margin-left-xl-n4,.margin-x-xl-n4{margin-left:-2rem!important}.margin-xl-n5{margin:-4rem!important}.margin-top-xl-n5,.margin-y-xl-n5{margin-top:-4rem!important}.margin-right-xl-n5,.margin-x-xl-n5{margin-right:-4rem!important}.margin-bottom-xl-n5,.margin-y-xl-n5{margin-bottom:-4rem!important}.margin-left-xl-n5,.margin-x-xl-n5{margin-left:-4rem!important}.margin-xl-auto{margin:auto!important}.margin-top-xl-auto,.margin-y-xl-auto{margin-top:auto!important}.margin-right-xl-auto,.margin-x-xl-auto{margin-right:auto!important}.margin-bottom-xl-auto,.margin-y-xl-auto{margin-bottom:auto!important}.margin-left-xl-auto,.margin-x-xl-auto{margin-left:auto!important}}.h1{font-size:2em}.h2{font-size:1.5em}.h3{font-size:1.17em}.h4{font-size:1em}.h5{font-size:.83em}.h6{font-size:.67em}.cursor-alias{cursor:alias}.cursor-all-scroll{cursor:all-scroll}.cursor-auto{cursor:auto}.cursor-cell{cursor:cell}.cursor-context-menu{cursor:context-menu}.cursor-col-resize{cursor:col-resize}.cursor-copy{cursor:copy}.cursor-crosshair{cursor:crosshair}.cursor-default{cursor:default}.cursor-e-resize{cursor:e-resize}.cursor-ew-resize{cursor:ew-resize}.cursor-grab{cursor:-webkit-grab;cursor:grab}.cursor-grabbing{cursor:-webkit-grabbing;cursor:grabbing}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-n-resize{cursor:n-resize}.cursor-ne-resize{cursor:ne-resize}.cursor-nesw-resize{cursor:nesw-resize}.cursor-ns-resize{cursor:ns-resize}.cursor-nw-resize{cursor:nw-resize}.cursor-nwse-resize{cursor:nwse-resize}.cursor-no-drop{cursor:no-drop}.cursor-none{cursor:none}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-progress{cursor:progress}.cursor-row-resize{cursor:row-resize}.cursor-s-resize{cursor:s-resize}.cursor-se-resize{cursor:se-resize}.cursor-sw-resize{cursor:sw-resize}.cursor-text{cursor:text}.cursor-w-resize{cursor:w-resize}.cursor-wait{cursor:wait}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.mat-tooltip{font-size:15px!important}body,html{height:100%}body{font-family:opens sans regular,sans-serif;margin:0;padding:0}iframe{border:none}.mat-badge-content{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:600}.mat-badge-small .mat-badge-content{font-size:9px}.mat-badge-large .mat-badge-content{font-size:24px}.mat-h1,.mat-headline,.mat-typography h1{font:400 24px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography h2{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h5,.mat-typography h5{font:400 11.62px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-h6,.mat-typography h6{font:400 9.38px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-body-2,.mat-body-strong{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body,.mat-body-1,.mat-typography{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body-1 p,.mat-body p,.mat-typography p{margin:0 0 12px}.mat-caption,.mat-small{font:400 12px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.05em;margin:0 0 56px}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.02em;margin:0 0 64px}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.005em;margin:0 0 64px}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 64px}.mat-bottom-sheet-container{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-button,.mat-fab,.mat-flat-button,.mat-icon-button,.mat-mini-fab,.mat-raised-button,.mat-stroked-button{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-button-toggle,.mat-card{font-family:Roboto,Helvetica Neue,sans-serif}.mat-card-title{font-size:24px;font-weight:500}.mat-card-header .mat-card-title{font-size:20px}.mat-card-content,.mat-card-subtitle{font-size:14px}.mat-checkbox{font-family:Roboto,Helvetica Neue,sans-serif}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:14px;font-weight:500}.mat-chip .mat-chip-remove.mat-icon,.mat-chip .mat-chip-trailing-icon.mat-icon{font-size:18px}.mat-table{font-family:Roboto,Helvetica Neue,sans-serif}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell,.mat-footer-cell{font-size:14px}.mat-calendar{font-family:Roboto,Helvetica Neue,sans-serif}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-expansion-panel-header{font-family:Roboto,Helvetica Neue,sans-serif;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-form-field{font-family:Roboto,Helvetica Neue,sans-serif;font-size:inherit;font-weight:400;letter-spacing:normal;line-height:1.125}.mat-form-field-wrapper{padding-bottom:1.34375em}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{border-top:.84375em solid transparent;padding:.5em 0}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34375em) scale(.75);width:133.33333%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34374em) scale(.75);width:133.33334%}.mat-form-field-label-wrapper{padding-top:.84375em;top:-.84375em}.mat-form-field-label{top:1.34375em}.mat-form-field-underline{bottom:1.34375em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.66667em;top:calc(100% - 1.79167em)}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-infix{padding:.4375em 0}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{-ms-transform:translateY(-1.28125em) scale(.75);transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);width:133.33333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{-ms-transform:translateY(-1.28124em) scale(.75);transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00101px);width:133.33334%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{-ms-transform:translateY(-1.28123em) scale(.75);transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00102px);width:133.33335%}.mat-form-field-appearance-legacy .mat-form-field-label{top:1.28125em}.mat-form-field-appearance-legacy .mat-form-field-underline{bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{margin-top:.54167em;top:calc(100% - 1.66667em)}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28122em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28121em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.2812em) scale(.75)}}.mat-form-field-appearance-fill .mat-form-field-infix{padding:.25em 0 .75em}.mat-form-field-appearance-fill .mat-form-field-label{margin-top:-.5em;top:1.09375em}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59375em) scale(.75);width:133.33333%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59374em) scale(.75);width:133.33334%}.mat-form-field-appearance-outline .mat-form-field-infix{padding:1em 0}.mat-form-field-appearance-outline .mat-form-field-label{margin-top:-.25em;top:1.84375em}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59375em) scale(.75);width:133.33333%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59374em) scale(.75);width:133.33334%}.mat-grid-tile-footer,.mat-grid-tile-header{font-size:14px}.mat-grid-tile-footer .mat-line,.mat-grid-tile-header .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-grid-tile-footer .mat-line:nth-child(n+2),.mat-grid-tile-header .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px}.mat-radio-button,.mat-select{font-family:Roboto,Helvetica Neue,sans-serif}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content,.mat-slider-thumb-label-text{font-family:Roboto,Helvetica Neue,sans-serif}.mat-slider-thumb-label-text{font-size:12px;font-weight:500}.mat-stepper-horizontal,.mat-stepper-vertical{font-family:Roboto,Helvetica Neue,sans-serif}.mat-step-label{font-size:14px;font-weight:400}.mat-step-sub-label-error{font-weight:400}.mat-step-label-error{font-size:14px}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group,.mat-tab-label,.mat-tab-link{font-family:Roboto,Helvetica Neue,sans-serif}.mat-tab-label,.mat-tab-link{font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0}.mat-tooltip{font-family:Roboto,Helvetica Neue,sans-serif;font-size:10px;padding-bottom:6px;padding-top:6px}.mat-tooltip-handset{font-size:14px;padding-bottom:8px;padding-top:8px}.mat-list-item,.mat-list-option{font-family:Roboto,Helvetica Neue,sans-serif}.mat-list-base .mat-list-item{font-size:16px}.mat-list-base .mat-list-item .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-list-option{font-size:16px}.mat-list-base .mat-list-option .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-list-base[dense] .mat-list-item{font-size:12px}.mat-list-base[dense] .mat-list-item .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2),.mat-list-base[dense] .mat-list-option{font-size:12px}.mat-list-base[dense] .mat-list-option .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:500}.mat-option{font-family:Roboto,Helvetica Neue,sans-serif;font-size:16px}.mat-optgroup-label{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-simple-snackbar{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px}.mat-simple-snackbar-action{font-family:inherit;font-size:inherit;font-weight:500;line-height:1}.mat-tree{font-family:Roboto,Helvetica Neue,sans-serif}.mat-nested-tree-node,.mat-tree-node{font-size:14px;font-weight:400}.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{border-radius:50%;pointer-events:none;position:absolute;transform:scale(0);transition:opacity,transform 0ms cubic-bezier(0,0,.2,1)}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-visually-hidden{-moz-appearance:none;-webkit-appearance:none;border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;outline:0;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.cdk-global-overlay-wrapper,.cdk-overlay-container{height:100%;left:0;pointer-events:none;top:0;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-pane{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{box-sizing:border-box;max-height:100%;max-width:100%;pointer-events:auto}.cdk-overlay-backdrop{-webkit-tap-highlight-color:transparent;bottom:0;left:0;opacity:0;pointer-events:auto;position:absolute;right:0;top:0;transition:opacity .4s cubic-bezier(.25,.8,.25,1);z-index:1000}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop,.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.cdk-overlay-connected-position-bounding-box{display:flex;flex-direction:column;min-height:1px;min-width:1px;position:absolute;z-index:1000}.cdk-global-scrollblock{overflow-y:scroll;position:fixed;width:100%}@-webkit-keyframes cdk-text-field-autofill-start{\n /*!*/}@keyframes cdk-text-field-autofill-start{\n /*!*/}@-webkit-keyframes cdk-text-field-autofill-end{\n /*!*/}@keyframes cdk-text-field-autofill-end{\n /*!*/}.cdk-text-field-autofill-monitored:-webkit-autofill{-webkit-animation:cdk-text-field-autofill-start 0s 1ms;animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){-webkit-animation:cdk-text-field-autofill-end 0s 1ms;animation:cdk-text-field-autofill-end 0s 1ms}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{box-sizing:content-box!important;height:auto!important;overflow:hidden!important;padding:2px 0!important}textarea.cdk-textarea-autosize-measuring-firefox{box-sizing:content-box!important;height:0!important;padding:2px 0!important}.mat-focus-indicator,.mat-mdc-focus-indicator{position:relative}.header,.title{font-family:Encode Sans Condensed,sans-serif;font-weight:900}.paragraph-title,.tagline{font-family:Open Sans,sans-serif;font-weight:400}.paragraph-title-bold .tagLine-bold{font-family:Open Sans,sans-serif;font-weight:700}.plain-text,.remarks{font-family:Open Sans,sans-serif;font-weight:300}.plain-text-bold{font-family:Open Sans,sans-serif;font-weight:700}.flex-column{flex-direction:column}.flex-column,.flex-row{box-sizing:border-box;display:flex}.flex-row{flex-direction:row}.flex-row-center{align-items:center;justify-content:center}.mat-button-large{font-size:18px;font-weight:700;line-height:48px;padding:0 24px!important}.mat-round{border-radius:.5em}:root{--background:#050505;--cyan-accent:rgba(132,255,255,0.75);--green-accent:#00e676;--initial-accent:#9cd8d7;--initial-dark-background:#222;--initial-dark-text:hsla(0,0%,100%,0.87);--initial-light-background:#f2f2f2;--initial-light-background:#fff;--initial-light-text:rgba(0,0,0,0.87);--initial-primary:#4a918e;--initial-warn:#ef4351;--orange-accent:#ff9800;--pink-accent:#e91e63;--purple-accent:#9c27b0;--success:#00e676;--yellow-accent:#fdd835}body{background-color:var(--initial-dark-background)}:host .valid-control{color:var(--green-accent)}:host .invalid-control{color:var(--theme-warn-500)}:host .actions .item:not(:last-child){margin-right:0}:host .project-thumbnail img{height:50px;width:auto}:host .active{background-color:var(--theme-accent-400)}:host .active,:host .inactive{transition:background-color 1s linear}:host .inactive{background-color:rgba(242,245,169,0)}:host .expansion-panel{margin-bottom:10px;width:100%}:host .expansion-container{max-height:300px;overflow-y:auto}:host .divider-fill-vert{background-color:var(--theme-accent-500);bottom:10%;min-height:100%;min-width:5px;top:10%}:host .divider-fill-hor{background-color:var(--theme-accent-500);height:5px;width:100%}:host .form-disabled{background-color:#797979;border-radius:4px;opacity:.5}@media (max-width:768px){.spread{margin:1em!important}}@media (max-width:480px){.spread{margin:.5em!important}}.spinner-logo{display:none!important}:host ::ng-deep .apps-actions{float:right}:host ::ng-deep .mat-card .mat-card-content{overflow:hidden;text-align:center}:host ::ng-deep .mat-card .mat-card-actions .data-app-actions{display:none!important}:host ::ng-deep .mat-card .mat-card-actions .data-app-fakes{display:flex!important}:host ::ng-deep .mat-card .mat-card-actions .data-app-fakes .mat-icon{font-size:8px}:host ::ng-deep .mat-card:hover .mat-card-actions .data-app-actions{display:flex!important}:host ::ng-deep .mat-card:hover .mat-card-actions .data-app-fakes{display:none!important}:host ::ng-deep .mat-subtitle .mat-chip-list{display:inline-block}:host ::ng-deep .mat-form-field{margin-bottom:.5em;margin-top:.5em}:host ::ng-deep .mat-form-field.with-hint{margin-bottom:1em}@media (max-width:768px){:host ::ng-deep .form-card{width:100%}:host ::ng-deep .mat-card .mat-card-actions .data-app-actions{display:flex!important}:host ::ng-deep .mat-card .mat-card-actions .data-app-fakes{display:none!important}}:host ::ng-deep .domain-item{border:1px solid var(--theme-accent-500);border-radius:5}"]
164
165
  },] }
165
166
  ];
@@ -171,4 +172,4 @@ DFSModifiersComponent.ctorParameters = () => [
171
172
  DFSModifiersComponent.propDecorators = {
172
173
  Data: [{ type: Input, args: ['data',] }]
173
174
  };
174
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGZzLW1vZGlmaWVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvYXBwbGljYXRpb25zLWZsb3cvYXBwbGljYXRpb25zLWZsb3cvcHJvamVjdHMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2Rmcy1tb2RpZmllcnMvZGZzLW1vZGlmaWVycy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFFTCxXQUFXLEVBR1gsVUFBVSxHQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLDZCQUE2QixHQUU5QixNQUFNLDBEQUEwRCxDQUFDO0FBV2xFLE9BQU8sRUFBdUIsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSXhELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBUTVGLE1BQU0sT0FBTyxxQkFBcUI7SUFpRmhDLGdCQUFnQjtJQUNoQixZQUNZLFFBQXFCLEVBQ3JCLFdBQW9DLEVBQ3BDLGlCQUFnRDtRQUZoRCxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQStCO1FBRTFELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUM7SUFDcEMsQ0FBQztJQTNFRCxJQUFXLGtCQUFrQjs7UUFDM0IsYUFBTyxJQUFJLENBQUMsaUJBQWlCLDBDQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUztZQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUM7WUFD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NkI7OzttQkErQjVCLEtBQUssU0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvZm9ybXMuc2VydmljZSc7XG5pbXBvcnQgeyBDYXJkRm9ybUNvbmZpZ01vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2NhcmQtZm9ybS1jb25maWcubW9kZWwnO1xuaW1wb3J0IHsgRG9tYWluTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZG9tYWluLm1vZGVsJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIEZvcm1CdWlsZGVyLFxuICBGb3JtQ29udHJvbCxcbiAgRm9ybUdyb3VwLFxuICBWYWxpZGF0b3JzLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBBcHBsaWNhdGlvbnNGbG93RXZlbnRzU2VydmljZSxcbiAgU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0LFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9hcHBsaWNhdGlvbnMtZmxvdy1ldmVudHMuc2VydmljZSc7XG5pbXBvcnQge1xuICBFYUNBcHBsaWNhdGlvbkFzQ29kZSxcbiAgRWFDQXJ0aWZhY3QsXG4gIEVhQ0Rldk9wc0FjdGlvbixcbiAgRWFDREZTTW9kaWZpZXIsXG4gIEVhQ0Vudmlyb25tZW50QXNDb2RlLFxuICBFYUNQcm9jZXNzb3IsXG4gIEVhQ1Byb2plY3RBc0NvZGUsXG4gIEVhQ1NvdXJjZUNvbnRyb2wsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9lYWMubW9kZWxzJztcbmltcG9ydCB7IEJhc2VNb2RlbGVkUmVzcG9uc2UsIEd1aWQgfSBmcm9tICdAbGN1L2NvbW1vbic7XG5pbXBvcnQgeyBNYXRTZWxlY3RDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgU291cmNlQ29udHJvbEZvcm1Db250cm9sc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Zvcm1zL3NvdXJjZS1jb250cm9sL3NvdXJjZS1jb250cm9sLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9qZWN0SG9zdGluZ0RldGFpbHMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zdGF0ZS9hcHBsaWNhdGlvbnMtZmxvdy5zdGF0ZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbnNGbG93U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL2FwcGxpY2F0aW9ucy1mbG93LnNlcnZpY2UnO1xuaW1wb3J0IHsgSG9zdGluZ0RldGFpbHNGb3JtR3JvdXBDb21wb25lbnQgfSBmcm9tICcuLi8uLi9ob3N0aW5nLWRldGFpbHMtZm9ybS1ncm91cC9ob3N0aW5nLWRldGFpbHMtZm9ybS1ncm91cC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsY3UtZGZzLW1vZGlmaWVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZnMtbW9kaWZpZXJzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGZzLW1vZGlmaWVycy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBERlNNb2RpZmllcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAvLyAgRmllbGRzXG5cbiAgLy8gIFByb3BlcnRpZXNcbiAgcHVibGljIEN1cnJlbnRUeXBlOiBzdHJpbmc7XG5cbiAgQElucHV0KCdkYXRhJylcbiAgcHVibGljIERhdGE6IHtcbiAgICBNb2RpZmllcnM6IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDREZTTW9kaWZpZXIgfTtcbiAgICBQcm9qZWN0OiBFYUNQcm9qZWN0QXNDb2RlO1xuICAgIFByb2plY3RMb29rdXA6IHN0cmluZztcbiAgfTtcblxuICBwdWJsaWMgZ2V0IERldGFpbHNGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5kZXRhaWxzO1xuICB9XG5cbiAgcHVibGljIGdldCBFZGl0aW5nTW9kaWZpZXIoKTogRWFDREZTTW9kaWZpZXIge1xuICAgIGxldCBtZGZyID0gdGhpcy5Nb2RpZmllcnNcbiAgICAgID8gdGhpcy5Nb2RpZmllcnNbdGhpcy5FZGl0aW5nTW9kaWZpZXJMb29rdXBdXG4gICAgICA6IG51bGw7XG5cbiAgICBpZiAobWRmciA9PSBudWxsICYmIHRoaXMuRWRpdGluZ01vZGlmaWVyTG9va3VwKSB7XG4gICAgICBtZGZyID0ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIG1kZnI7XG4gIH1cblxuICBwdWJsaWMgRWRpdGluZ01vZGlmaWVyTG9va3VwOiBzdHJpbmc7XG5cbiAgcHVibGljIGdldCBFbmFibGVkRm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5Nb2RpZmllckZvcm1Hcm91cD8uY29udHJvbHMuZW5hYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgTG9jYXRpb25Gb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5sb2NhdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBNb2RpZmllckZvcm1Hcm91cDogRm9ybUdyb3VwO1xuXG4gIHB1YmxpYyBnZXQgTW9kaWZpZXJMb29rdXBzKCk6IEFycmF5PHN0cmluZz4ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLk1vZGlmaWVycyB8fCB7fSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IE1vZGlmaWVycygpOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0RGU01vZGlmaWVyIH0ge1xuICAgIHJldHVybiB0aGlzLkRhdGEuTW9kaWZpZXJzIHx8IHt9O1xuICB9XG5cbiAgcHVibGljIGdldCBOYW1lRm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5Nb2RpZmllckZvcm1Hcm91cD8uY29udHJvbHMubmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgUGF0aEZpbHRlckZvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXA/LmNvbnRyb2xzLnBhdGhGaWx0ZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0IFByaW9yaXR5Rm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5Nb2RpZmllckZvcm1Hcm91cD8uY29udHJvbHMucHJpb3JpdHk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IFByb2plY3QoKTogRWFDUHJvamVjdEFzQ29kZSB7XG4gICAgcmV0dXJuIHRoaXMuRGF0YS5Qcm9qZWN0IHx8IHt9O1xuICB9XG5cbiAgcHVibGljIGdldCBTY3JpcHRGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5zY3JpcHQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IFNjcmlwdElERm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5Nb2RpZmllckZvcm1Hcm91cD8uY29udHJvbHMuc2NyaXB0SWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IFN0YXRlRGF0YVRva2VuRm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5Nb2RpZmllckZvcm1Hcm91cD8uY29udHJvbHMuc3RhdGVEYXRhVG9rZW47XG4gIH1cblxuICBwdWJsaWMgZ2V0IFR5cGVGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy50eXBlO1xuICB9XG5cbiAgLy8gIENvbnN0cnVjdG9yc1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZm9ybUJsZHI6IEZvcm1CdWlsZGVyLFxuICAgIHByb3RlY3RlZCBhcHBzRmxvd1N2YzogQXBwbGljYXRpb25zRmxvd1NlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGFwcHNGbG93RXZlbnRzU3ZjOiBBcHBsaWNhdGlvbnNGbG93RXZlbnRzU2VydmljZVxuICApIHtcbiAgICB0aGlzLkVkaXRpbmdNb2RpZmllckxvb2t1cCA9IG51bGw7XG4gIH1cblxuICAvLyAgTGlmZSBDeWNsZVxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuTW9kaWZpZXJMb29rdXBzPy5sZW5ndGggPD0gMCkge1xuICAgICAgdGhpcy5DcmVhdGVOZXdNb2RpZmllcigpO1xuICAgIH1cbiAgfVxuXG4gIC8vICBBUEkgTWV0aG9kc1xuICBwdWJsaWMgQ3JlYXRlTmV3TW9kaWZpZXIoKTogdm9pZCB7XG4gICAgdGhpcy5TZXRFZGl0aW5nTW9kaWZpZXIoR3VpZC5DcmVhdGVSYXcoKSk7XG4gIH1cblxuICBwdWJsaWMgRGVsZXRlTW9kaWZpZXIobW9kaWZpZXJMb29rdXA6IHN0cmluZywgbW9kaWZpZXJOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBjb25maXJtKGBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIG1vZGlmaWVyICcke21vZGlmaWVyTmFtZX0nP2ApXG4gICAgKSB7XG4gICAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLkRlbGV0ZVNvdXJjZUNvbnRyb2wobW9kaWZpZXJMb29rdXApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBTYXZlTW9kaWZpZXIoKTogdm9pZCB7XG4gICAgY29uc3Qgc2F2ZU1kZnJSZXE6IFNhdmVERlNNb2RpZmllckV2ZW50UmVxdWVzdCA9IHtcbiAgICAgIE1vZGlmaWVyOiB7XG4gICAgICAgIC4uLnRoaXMuRWRpdGluZ01vZGlmaWVyLFxuICAgICAgICBOYW1lOiB0aGlzLk5hbWVGb3JtQ29udHJvbC52YWx1ZSxcbiAgICAgICAgRW5hYmxlZDogdGhpcy5FbmFibGVkRm9ybUNvbnRyb2wudmFsdWUsXG4gICAgICAgIFBhdGhGaWx0ZXJSZWdleDogdGhpcy5QYXRoRmlsdGVyRm9ybUNvbnRyb2wudmFsdWUsXG4gICAgICAgIFByaW9yaXR5OiB0aGlzLlByaW9yaXR5Rm9ybUNvbnRyb2wudmFsdWUsXG4gICAgICAgIFR5cGU6IHRoaXMuQ3VycmVudFR5cGUsXG4gICAgICB9LFxuICAgICAgTW9kaWZpZXJMb29rdXA6IHRoaXMuRWRpdGluZ01vZGlmaWVyTG9va3VwLFxuICAgICAgLy8gUHJvamVjdExvb2t1cDogdGhpcy5EYXRhLlByb2plY3RMb29rdXAsXG4gICAgfTtcblxuICAgIGNvbnN0IGRldGFpbHMgPSB7fTtcblxuICAgIHN3aXRjaCAodGhpcy5DdXJyZW50VHlwZSkge1xuICAgICAgY2FzZSAnTENVLlJ1bnRpbWUuQXBwbGljYXRpb25zLk1vZGlmaWVycy5IVE1MQmFzZURGU01vZGlmaWVyTWFuYWdlciwgTENVLlJ1bnRpbWUsIFZlcnNpb249MS4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsJzpcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0xDVS5SdW50aW1lLkFwcGxpY2F0aW9ucy5Nb2RpZmllcnMuTENVUmVnREZTTW9kaWZpZXJNYW5hZ2VyLCBMQ1UuUnVudGltZSwgVmVyc2lvbj0xLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPW51bGwnOlxuICAgICAgICBkZXRhaWxzWydTdGF0ZURhdGFUb2tlbiddID0gdGhpcy5TdGF0ZURhdGFUb2tlbkZvcm1Db250cm9sLnZhbHVlO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnTENVLlJ1bnRpbWUuQXBwbGljYXRpb25zLk1vZGlmaWVycy5UaGlyZFBhcnR5TGlicmFyeURGU01vZGlmaWVyTWFuYWdlciwgTENVLlJ1bnRpbWUsIFZlcnNpb249MS4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsJzpcbiAgICAgICAgZGV0YWlsc1snTG9jYXRpb24nXSA9IHRoaXMuTG9jYXRpb25Gb3JtQ29udHJvbC52YWx1ZTtcblxuICAgICAgICBkZXRhaWxzWydTY3JpcHQnXSA9IHRoaXMuU2NyaXB0Rm9ybUNvbnRyb2wudmFsdWU7XG5cbiAgICAgICAgZGV0YWlsc1snU2NyaXB0SUQnXSA9IHRoaXMuU2NyaXB0SURGb3JtQ29udHJvbC52YWx1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgc2F2ZU1kZnJSZXEuTW9kaWZpZXIuRGV0YWlscyA9IEpTT04uc3RyaW5naWZ5KGRldGFpbHMpO1xuXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5TYXZlREZTTW9kaWZpZXIoc2F2ZU1kZnJSZXEpO1xuICB9XG5cbiAgcHVibGljIFNldEVkaXRpbmdNb2RpZmllcihtb2RpZmllckxvb2t1cDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5FZGl0aW5nTW9kaWZpZXJMb29rdXAgPSBtb2RpZmllckxvb2t1cDtcblxuICAgIHRoaXMuc2V0dXBNb2RpZmllckZvcm0oKTtcbiAgfVxuXG4gIHB1YmxpYyBUeXBlQ2hhbmdlZChldmVudDogTWF0U2VsZWN0Q2hhbmdlKTogdm9pZCB7XG4gICAgdGhpcy5DdXJyZW50VHlwZSA9IGV2ZW50LnZhbHVlO1xuXG4gICAgdGhpcy5zZXR1cFR5cGVGb3JtKCk7XG4gIH1cblxuICAvLyAgSGVscGVyc1xuICBwcm90ZWN0ZWQgc2V0dXBNb2RpZmllckZvcm0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuRWRpdGluZ01vZGlmaWVyICE9IG51bGwpIHtcbiAgICAgIHRoaXMuQ3VycmVudFR5cGUgPSB0aGlzLkVkaXRpbmdNb2RpZmllcj8uVHlwZTtcblxuICAgICAgdGhpcy5Nb2RpZmllckZvcm1Hcm91cCA9IHRoaXMuZm9ybUJsZHIuZ3JvdXAoe1xuICAgICAgICBuYW1lOiBbdGhpcy5FZGl0aW5nTW9kaWZpZXI/Lk5hbWUsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICB0eXBlOiBbdGhpcy5DdXJyZW50VHlwZSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICAgIHByaW9yaXR5OiBbdGhpcy5FZGl0aW5nTW9kaWZpZXI/LlByaW9yaXR5LCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgZW5hYmxlZDogW3RoaXMuRWRpdGluZ01vZGlmaWVyPy5FbmFibGVkLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgdXNlRm9yUHJvamVjdDogW3RoaXMuRWRpdGluZ01vZGlmaWVyPy5FbmFibGVkLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgcGF0aEZpbHRlcjogW1xuICAgICAgICAgIHRoaXMuRWRpdGluZ01vZGlmaWVyPy5QYXRoRmlsdGVyUmVnZXgsXG4gICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnNldHVwVHlwZUZvcm0oKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0dXBUeXBlRm9ybSgpOiB2b2lkIHtcbiAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwLnJlbW92ZUNvbnRyb2woJ3N0YXRlRGF0YVRva2VuJyk7XG5cbiAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwLnJlbW92ZUNvbnRyb2woJ2xvY2F0aW9uJyk7XG4gICAgdGhpcy5Nb2RpZmllckZvcm1Hcm91cC5yZW1vdmVDb250cm9sKCdzY3JpcHQnKTtcbiAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwLnJlbW92ZUNvbnRyb2woJ3NjcmlwdElkJyk7XG5cbiAgICBjb25zdCBkZXRhaWxzID0gSlNPTi5wYXJzZSh0aGlzLkVkaXRpbmdNb2RpZmllcj8uRGV0YWlscyB8fCAne30nKTtcblxuICAgIHN3aXRjaCAodGhpcy5DdXJyZW50VHlwZSkge1xuICAgICAgY2FzZSAnTENVLlJ1bnRpbWUuQXBwbGljYXRpb25zLk1vZGlmaWVycy5IVE1MQmFzZURGU01vZGlmaWVyTWFuYWdlciwgTENVLlJ1bnRpbWUsIFZlcnNpb249MS4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsJzpcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0xDVS5SdW50aW1lLkFwcGxpY2F0aW9ucy5Nb2RpZmllcnMuTENVUmVnREZTTW9kaWZpZXJNYW5hZ2VyLCBMQ1UuUnVudGltZSwgVmVyc2lvbj0xLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPW51bGwnOlxuICAgICAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwLmFkZENvbnRyb2woXG4gICAgICAgICAgJ3N0YXRlRGF0YVRva2VuJyxcbiAgICAgICAgICB0aGlzLmZvcm1CbGRyLmNvbnRyb2woZGV0YWlscz8uU3RhdGVEYXRhVG9rZW4gfHwgJycsIFtcbiAgICAgICAgICAgIFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgICAgXSlcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ0xDVS5SdW50aW1lLkFwcGxpY2F0aW9ucy5Nb2RpZmllcnMuVGhpcmRQYXJ0eUxpYnJhcnlERlNNb2RpZmllck1hbmFnZXIsIExDVS5SdW50aW1lLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbCc6XG4gICAgICAgIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAnbG9jYXRpb24nLFxuICAgICAgICAgIHRoaXMuZm9ybUJsZHIuY29udHJvbChkZXRhaWxzPy5Mb2NhdGlvbiB8fCAnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAnc2NyaXB0JyxcbiAgICAgICAgICB0aGlzLmZvcm1CbGRyLmNvbnRyb2woZGV0YWlscz8uU2NyaXB0IHx8ICcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5Nb2RpZmllckZvcm1Hcm91cC5hZGRDb250cm9sKFxuICAgICAgICAgICdzY3JpcHRJZCcsXG4gICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKGRldGFpbHM/LlNjcmlwdElEIHx8ICcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIl19
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGZzLW1vZGlmaWVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvYXBwbGljYXRpb25zLWZsb3cvYXBwbGljYXRpb25zLWZsb3cvcHJvamVjdHMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2Rmcy1tb2RpZmllcnMvZGZzLW1vZGlmaWVycy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFFTCxXQUFXLEVBR1gsVUFBVSxHQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLDZCQUE2QixHQUU5QixNQUFNLDBEQUEwRCxDQUFDO0FBV2xFLE9BQU8sRUFBdUIsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSXhELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBUTVGLE1BQU0sT0FBTyxxQkFBcUI7SUFpRmhDLGdCQUFnQjtJQUNoQixZQUNZLFFBQXFCLEVBQ3JCLFdBQW9DLEVBQ3BDLGlCQUFnRDtRQUZoRCxhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQStCO1FBRTFELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUM7SUFDcEMsQ0FBQztJQTNFRCxJQUFXLGtCQUFrQjs7UUFDM0IsYUFBTyxJQUFJLENBQUMsaUJBQWlCLDBDQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUztZQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUM7WUFD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RTlDOzs7WUE5QkMsV0FBVztZQXVCSix1QkFBdUI7WUFqQjlCLDZCQUE2Qjs7O21CQStCNUIsS0FBSyxTQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3Jtc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9mb3Jtcy5zZXJ2aWNlJztcbmltcG9ydCB7IENhcmRGb3JtQ29uZmlnTW9kZWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvY2FyZC1mb3JtLWNvbmZpZy5tb2RlbCc7XG5pbXBvcnQgeyBEb21haW5Nb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL21vZGVscy9kb21haW4ubW9kZWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgRm9ybUJ1aWxkZXIsXG4gIEZvcm1Db250cm9sLFxuICBGb3JtR3JvdXAsXG4gIFZhbGlkYXRvcnMsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIEFwcGxpY2F0aW9uc0Zsb3dFdmVudHNTZXJ2aWNlLFxuICBTYXZlREZTTW9kaWZpZXJFdmVudFJlcXVlc3QsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL2FwcGxpY2F0aW9ucy1mbG93LWV2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIEVhQ0FwcGxpY2F0aW9uQXNDb2RlLFxuICBFYUNBcnRpZmFjdCxcbiAgRWFDRGV2T3BzQWN0aW9uLFxuICBFYUNERlNNb2RpZmllcixcbiAgRWFDRW52aXJvbm1lbnRBc0NvZGUsXG4gIEVhQ1Byb2Nlc3NvcixcbiAgRWFDUHJvamVjdEFzQ29kZSxcbiAgRWFDU291cmNlQ29udHJvbCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2VhYy5tb2RlbHMnO1xuaW1wb3J0IHsgQmFzZU1vZGVsZWRSZXNwb25zZSwgR3VpZCB9IGZyb20gJ0BsY3UvY29tbW9uJztcbmltcG9ydCB7IE1hdFNlbGVjdENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBTb3VyY2VDb250cm9sRm9ybUNvbnRyb2xzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZm9ybXMvc291cmNlLWNvbnRyb2wvc291cmNlLWNvbnRyb2wuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2plY3RIb3N0aW5nRGV0YWlscyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3N0YXRlL2FwcGxpY2F0aW9ucy1mbG93LnN0YXRlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uc0Zsb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvYXBwbGljYXRpb25zLWZsb3cuc2VydmljZSc7XG5pbXBvcnQgeyBIb3N0aW5nRGV0YWlsc0Zvcm1Hcm91cENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2hvc3RpbmctZGV0YWlscy1mb3JtLWdyb3VwL2hvc3RpbmctZGV0YWlscy1mb3JtLWdyb3VwLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xjdS1kZnMtbW9kaWZpZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rmcy1tb2RpZmllcnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZnMtbW9kaWZpZXJzLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERGU01vZGlmaWVyc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vICBGaWVsZHNcblxuICAvLyAgUHJvcGVydGllc1xuICBwdWJsaWMgQ3VycmVudFR5cGU6IHN0cmluZztcblxuICBASW5wdXQoJ2RhdGEnKVxuICBwdWJsaWMgRGF0YToge1xuICAgIE1vZGlmaWVyczogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNERlNNb2RpZmllciB9O1xuICAgIFByb2plY3Q6IEVhQ1Byb2plY3RBc0NvZGU7XG4gICAgUHJvamVjdExvb2t1cDogc3RyaW5nO1xuICB9O1xuXG4gIHB1YmxpYyBnZXQgRGV0YWlsc0Zvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXA/LmNvbnRyb2xzLmRldGFpbHM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IEVkaXRpbmdNb2RpZmllcigpOiBFYUNERlNNb2RpZmllciB7XG4gICAgbGV0IG1kZnIgPSB0aGlzLk1vZGlmaWVyc1xuICAgICAgPyB0aGlzLk1vZGlmaWVyc1t0aGlzLkVkaXRpbmdNb2RpZmllckxvb2t1cF1cbiAgICAgIDogbnVsbDtcblxuICAgIGlmIChtZGZyID09IG51bGwgJiYgdGhpcy5FZGl0aW5nTW9kaWZpZXJMb29rdXApIHtcbiAgICAgIG1kZnIgPSB7fTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWRmcjtcbiAgfVxuXG4gIHB1YmxpYyBFZGl0aW5nTW9kaWZpZXJMb29rdXA6IHN0cmluZztcblxuICBwdWJsaWMgZ2V0IEVuYWJsZWRGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5lbmFibGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBMb2NhdGlvbkZvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXA/LmNvbnRyb2xzLmxvY2F0aW9uO1xuICB9XG5cbiAgcHVibGljIE1vZGlmaWVyRm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgcHVibGljIGdldCBNb2RpZmllckxvb2t1cHMoKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuTW9kaWZpZXJzIHx8IHt9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgTW9kaWZpZXJzKCk6IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDREZTTW9kaWZpZXIgfSB7XG4gICAgcmV0dXJuIHRoaXMuRGF0YS5Nb2RpZmllcnMgfHwge307XG4gIH1cblxuICBwdWJsaWMgZ2V0IE5hbWVGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5uYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBQYXRoRmlsdGVyRm9ybUNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5Nb2RpZmllckZvcm1Hcm91cD8uY29udHJvbHMucGF0aEZpbHRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgUHJpb3JpdHlGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5wcmlvcml0eTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgUHJvamVjdCgpOiBFYUNQcm9qZWN0QXNDb2RlIHtcbiAgICByZXR1cm4gdGhpcy5EYXRhLlByb2plY3QgfHwge307XG4gIH1cblxuICBwdWJsaWMgZ2V0IFNjcmlwdEZvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXA/LmNvbnRyb2xzLnNjcmlwdDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgU2NyaXB0SURGb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5zY3JpcHRJZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgU3RhdGVEYXRhVG9rZW5Gb3JtQ29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwPy5jb250cm9scy5zdGF0ZURhdGFUb2tlbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgVHlwZUZvcm1Db250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXA/LmNvbnRyb2xzLnR5cGU7XG4gIH1cblxuICAvLyAgQ29uc3RydWN0b3JzXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBmb3JtQmxkcjogRm9ybUJ1aWxkZXIsXG4gICAgcHJvdGVjdGVkIGFwcHNGbG93U3ZjOiBBcHBsaWNhdGlvbnNGbG93U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYXBwc0Zsb3dFdmVudHNTdmM6IEFwcGxpY2F0aW9uc0Zsb3dFdmVudHNTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuRWRpdGluZ01vZGlmaWVyTG9va3VwID0gbnVsbDtcbiAgfVxuXG4gIC8vICBMaWZlIEN5Y2xlXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5Nb2RpZmllckxvb2t1cHM/Lmxlbmd0aCA8PSAwKSB7XG4gICAgICB0aGlzLkNyZWF0ZU5ld01vZGlmaWVyKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gIEFQSSBNZXRob2RzXG4gIHB1YmxpYyBDcmVhdGVOZXdNb2RpZmllcigpOiB2b2lkIHtcbiAgICB0aGlzLlNldEVkaXRpbmdNb2RpZmllcihHdWlkLkNyZWF0ZVJhdygpKTtcbiAgfVxuXG4gIHB1YmxpYyBEZWxldGVNb2RpZmllcihtb2RpZmllckxvb2t1cDogc3RyaW5nLCBtb2RpZmllck5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIGNvbmZpcm0oYEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgbW9kaWZpZXIgJyR7bW9kaWZpZXJOYW1lfSc/YClcbiAgICApIHtcbiAgICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuRGVsZXRlU291cmNlQ29udHJvbChtb2RpZmllckxvb2t1cCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIFNhdmVNb2RpZmllcigpOiB2b2lkIHtcbiAgICBjb25zdCBzYXZlTWRmclJlcTogU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0ID0ge1xuICAgICAgTW9kaWZpZXI6IHtcbiAgICAgICAgLi4udGhpcy5FZGl0aW5nTW9kaWZpZXIsXG4gICAgICAgIE5hbWU6IHRoaXMuTmFtZUZvcm1Db250cm9sLnZhbHVlLFxuICAgICAgICBFbmFibGVkOiB0aGlzLkVuYWJsZWRGb3JtQ29udHJvbC52YWx1ZSxcbiAgICAgICAgUGF0aEZpbHRlclJlZ2V4OiB0aGlzLlBhdGhGaWx0ZXJGb3JtQ29udHJvbC52YWx1ZSxcbiAgICAgICAgUHJpb3JpdHk6IHRoaXMuUHJpb3JpdHlGb3JtQ29udHJvbC52YWx1ZSxcbiAgICAgICAgVHlwZTogdGhpcy5DdXJyZW50VHlwZSxcbiAgICAgIH0sXG4gICAgICBNb2RpZmllckxvb2t1cDogdGhpcy5FZGl0aW5nTW9kaWZpZXJMb29rdXAsXG4gICAgICBQcm9qZWN0TG9va3VwOiB0aGlzLkRhdGEuUHJvamVjdExvb2t1cCxcbiAgICB9O1xuXG4gICAgY29uc3QgZGV0YWlscyA9IHt9O1xuXG4gICAgc3dpdGNoICh0aGlzLkN1cnJlbnRUeXBlKSB7XG4gICAgICBjYXNlICdMQ1UuUnVudGltZS5BcHBsaWNhdGlvbnMuTW9kaWZpZXJzLkhUTUxCYXNlREZTTW9kaWZpZXJNYW5hZ2VyLCBMQ1UuUnVudGltZSwgVmVyc2lvbj0xLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPW51bGwnOlxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnTENVLlJ1bnRpbWUuQXBwbGljYXRpb25zLk1vZGlmaWVycy5MQ1VSZWdERlNNb2RpZmllck1hbmFnZXIsIExDVS5SdW50aW1lLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbCc6XG4gICAgICAgIGRldGFpbHNbJ1N0YXRlRGF0YVRva2VuJ10gPSB0aGlzLlN0YXRlRGF0YVRva2VuRm9ybUNvbnRyb2wudmFsdWU7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdMQ1UuUnVudGltZS5BcHBsaWNhdGlvbnMuTW9kaWZpZXJzLlRoaXJkUGFydHlMaWJyYXJ5REZTTW9kaWZpZXJNYW5hZ2VyLCBMQ1UuUnVudGltZSwgVmVyc2lvbj0xLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPW51bGwnOlxuICAgICAgICBkZXRhaWxzWydMb2NhdGlvbiddID0gdGhpcy5Mb2NhdGlvbkZvcm1Db250cm9sLnZhbHVlO1xuXG4gICAgICAgIGRldGFpbHNbJ1NjcmlwdCddID0gdGhpcy5TY3JpcHRGb3JtQ29udHJvbC52YWx1ZTtcblxuICAgICAgICBkZXRhaWxzWydTY3JpcHRJRCddID0gdGhpcy5TY3JpcHRJREZvcm1Db250cm9sLnZhbHVlO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBzYXZlTWRmclJlcS5Nb2RpZmllci5EZXRhaWxzID0gSlNPTi5zdHJpbmdpZnkoZGV0YWlscyk7XG5cbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNhdmVERlNNb2RpZmllcihzYXZlTWRmclJlcSk7XG4gIH1cblxuICBwdWJsaWMgU2V0RWRpdGluZ01vZGlmaWVyKG1vZGlmaWVyTG9va3VwOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLkVkaXRpbmdNb2RpZmllckxvb2t1cCA9IG1vZGlmaWVyTG9va3VwO1xuXG4gICAgdGhpcy5zZXR1cE1vZGlmaWVyRm9ybSgpO1xuICB9XG5cbiAgcHVibGljIFR5cGVDaGFuZ2VkKGV2ZW50OiBNYXRTZWxlY3RDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLkN1cnJlbnRUeXBlID0gZXZlbnQudmFsdWU7XG5cbiAgICB0aGlzLnNldHVwVHlwZUZvcm0oKTtcbiAgfVxuXG4gIC8vICBIZWxwZXJzXG4gIHByb3RlY3RlZCBzZXR1cE1vZGlmaWVyRm9ybSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5FZGl0aW5nTW9kaWZpZXIgIT0gbnVsbCkge1xuICAgICAgdGhpcy5DdXJyZW50VHlwZSA9IHRoaXMuRWRpdGluZ01vZGlmaWVyPy5UeXBlO1xuXG4gICAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwID0gdGhpcy5mb3JtQmxkci5ncm91cCh7XG4gICAgICAgIG5hbWU6IFt0aGlzLkVkaXRpbmdNb2RpZmllcj8uTmFtZSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICAgIHR5cGU6IFt0aGlzLkN1cnJlbnRUeXBlLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgICAgcHJpb3JpdHk6IFt0aGlzLkVkaXRpbmdNb2RpZmllcj8uUHJpb3JpdHksIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICBlbmFibGVkOiBbdGhpcy5FZGl0aW5nTW9kaWZpZXI/LkVuYWJsZWQsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICB1c2VGb3JQcm9qZWN0OiBbdGhpcy5FZGl0aW5nTW9kaWZpZXI/LkVuYWJsZWQsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICBwYXRoRmlsdGVyOiBbXG4gICAgICAgICAgdGhpcy5FZGl0aW5nTW9kaWZpZXI/LlBhdGhGaWx0ZXJSZWdleCxcbiAgICAgICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkLFxuICAgICAgICBdLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuc2V0dXBUeXBlRm9ybSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBzZXR1cFR5cGVGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXAucmVtb3ZlQ29udHJvbCgnc3RhdGVEYXRhVG9rZW4nKTtcblxuICAgIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXAucmVtb3ZlQ29udHJvbCgnbG9jYXRpb24nKTtcbiAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwLnJlbW92ZUNvbnRyb2woJ3NjcmlwdCcpO1xuICAgIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXAucmVtb3ZlQ29udHJvbCgnc2NyaXB0SWQnKTtcblxuICAgIGNvbnN0IGRldGFpbHMgPSBKU09OLnBhcnNlKHRoaXMuRWRpdGluZ01vZGlmaWVyPy5EZXRhaWxzIHx8ICd7fScpO1xuXG4gICAgc3dpdGNoICh0aGlzLkN1cnJlbnRUeXBlKSB7XG4gICAgICBjYXNlICdMQ1UuUnVudGltZS5BcHBsaWNhdGlvbnMuTW9kaWZpZXJzLkhUTUxCYXNlREZTTW9kaWZpZXJNYW5hZ2VyLCBMQ1UuUnVudGltZSwgVmVyc2lvbj0xLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPW51bGwnOlxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnTENVLlJ1bnRpbWUuQXBwbGljYXRpb25zLk1vZGlmaWVycy5MQ1VSZWdERlNNb2RpZmllck1hbmFnZXIsIExDVS5SdW50aW1lLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbCc6XG4gICAgICAgIHRoaXMuTW9kaWZpZXJGb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgICAgICAgICAnc3RhdGVEYXRhVG9rZW4nLFxuICAgICAgICAgIHRoaXMuZm9ybUJsZHIuY29udHJvbChkZXRhaWxzPy5TdGF0ZURhdGFUb2tlbiB8fCAnJywgW1xuICAgICAgICAgICAgVmFsaWRhdG9ycy5yZXF1aXJlZCxcbiAgICAgICAgICBdKVxuICAgICAgICApO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnTENVLlJ1bnRpbWUuQXBwbGljYXRpb25zLk1vZGlmaWVycy5UaGlyZFBhcnR5TGlicmFyeURGU01vZGlmaWVyTWFuYWdlciwgTENVLlJ1bnRpbWUsIFZlcnNpb249MS4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1udWxsJzpcbiAgICAgICAgdGhpcy5Nb2RpZmllckZvcm1Hcm91cC5hZGRDb250cm9sKFxuICAgICAgICAgICdsb2NhdGlvbicsXG4gICAgICAgICAgdGhpcy5mb3JtQmxkci5jb250cm9sKGRldGFpbHM/LkxvY2F0aW9uIHx8ICcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy5Nb2RpZmllckZvcm1Hcm91cC5hZGRDb250cm9sKFxuICAgICAgICAgICdzY3JpcHQnLFxuICAgICAgICAgIHRoaXMuZm9ybUJsZHIuY29udHJvbChkZXRhaWxzPy5TY3JpcHQgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSlcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLk1vZGlmaWVyRm9ybUdyb3VwLmFkZENvbnRyb2woXG4gICAgICAgICAgJ3NjcmlwdElkJyxcbiAgICAgICAgICB0aGlzLmZvcm1CbGRyLmNvbnRyb2woZGV0YWlscz8uU2NyaXB0SUQgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSlcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -195,7 +195,7 @@ export class ApplicationsFlowProjectsElementComponent extends LcuElementComponen
195
195
  yield this.projectService.SetEditProjectSettings(this.State, projectLookup);
196
196
  }));
197
197
  this.appsFlowEventsSvc.UnpackLowCodeUnitEvent.subscribe((req) => __awaiter(this, void 0, void 0, function* () {
198
- if (confirm(`Are you sure you want to unpack application '${req.ApplicationName}' with version '${req.Version}'?`)) {
198
+ if (confirm(`Are you sure you want to unpack application '${req.ApplicationName}' with version '${req.Version || 'latest'}'?`)) {
199
199
  yield this.projectService.UnpackLowCodeUnit(this.State, req);
200
200
  }
201
201
  }));
@@ -214,4 +214,4 @@ ApplicationsFlowProjectsElementComponent.ctorParameters = () => [
214
214
  { type: ProjectService },
215
215
  { type: ApplicationsFlowEventsService }
216
216
  ];
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL2FwcGxpY2F0aW9ucy1mbG93L2FwcGxpY2F0aW9ucy1mbG93L3Byb2plY3RzL2NvbW1vbi9zcmMvIiwic291cmNlcyI6WyJsaWIvZWxlbWVudHMvcHJvamVjdHMvcHJvamVjdHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFFBQVEsR0FLVCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLG1CQUFtQixHQUdwQixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFaEUsT0FBTyxFQUNMLDZCQUE2QixHQUk5QixNQUFNLG1EQUFtRCxDQUFDO0FBVTNELE1BQU0sT0FBTyxvQ0FBb0M7Q0FBRztBQUVwRCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsaUJBQXVEO0NBQUc7QUFFL0csTUFBTSxDQUFDLE1BQU0sMkNBQTJDLEdBQ3RELG9DQUFvQyxDQUFDO0FBT3ZDLE1BQU0sT0FBTyx3Q0FDWCxTQUFRLG1CQUFvRDtJQXNDNUQsZ0JBQWdCO0lBQ2hCLFlBQ1ksUUFBa0IsRUFDbEIsV0FBb0MsRUFDcEMsY0FBOEIsRUFDOUIsaUJBQWdEO1FBRTFELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUxOLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQXlCO1FBQ3BDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQStCO1FBSTFELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxxQkFBcUIs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QTJDO2dCQUNyRCwwZ0dBQXdDOzthQUV6Qzs7O1lBN0NDLFFBQVE7WUFnQkQsdUJBQXVCO1lBQ3ZCLGNBQWM7WUFHckIsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIEluamVjdG9yLFxyXG4gIFZpZXdDaGlsZCxcclxuICBJbmplY3QsXHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBPbkRlc3Ryb3ksXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdFNlbGVjdENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XHJcbmltcG9ydCB7IE1hdFN0ZXBwZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcclxuaW1wb3J0IHtcclxuICBMQ1VFbGVtZW50Q29udGV4dCxcclxuICBMY3VFbGVtZW50Q29tcG9uZW50LFxyXG4gIEJhc2VSZXNwb25zZSxcclxuICBCYXNlTW9kZWxlZFJlc3BvbnNlLFxyXG59IGZyb20gJ0BsY3UvY29tbW9uJztcclxuaW1wb3J0IHsgQXBwbGljYXRpb25zRmxvd1N0YXRlIH0gZnJvbSAnLi8uLi8uLi9zdGF0ZS9hcHBsaWNhdGlvbnMtZmxvdy5zdGF0ZSc7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uc0Zsb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXBwbGljYXRpb25zLWZsb3cuc2VydmljZSc7XHJcbmltcG9ydCB7IFByb2plY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcHJvamVjdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgQXBwbGljYXRpb25zRmxvd0V2ZW50c1NlcnZpY2UsXHJcbiAgU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnRSZXF1ZXN0LFxyXG4gIFNhdmVERlNNb2RpZmllckV2ZW50UmVxdWVzdCxcclxuICBTYXZlRW52aXJvbm1lbnRBc0NvZGVFdmVudFJlcXVlc3QsXHJcbn0gZnJvbSAnLi8uLi8uLi9zZXJ2aWNlcy9hcHBsaWNhdGlvbnMtZmxvdy1ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7XHJcbiAgRWFDQXBwbGljYXRpb25Bc0NvZGUsXHJcbiAgRWFDRW52aXJvbm1lbnRBc0NvZGUsXHJcbiAgRWFDUHJvamVjdEFzQ29kZSxcclxuICBFbnRlcnByaXNlQXNDb2RlLFxyXG59IGZyb20gJy4uLy4uL21vZGVscy9lYWMubW9kZWxzJztcclxuXHJcbmRlY2xhcmUgdmFyIHdpbmRvdzogV2luZG93O1xyXG5cclxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uc0Zsb3dQcm9qZWN0c0VsZW1lbnRTdGF0ZSB7fVxyXG5cclxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uc0Zsb3dQcm9qZWN0c0NvbnRleHQgZXh0ZW5kcyBMQ1VFbGVtZW50Q29udGV4dDxBcHBsaWNhdGlvbnNGbG93UHJvamVjdHNFbGVtZW50U3RhdGU+IHt9XHJcblxyXG5leHBvcnQgY29uc3QgU0VMRUNUT1JfQVBQTElDQVRJT05TX0ZMT1dfUFJPSkVDVFNfRUxFTUVOVCA9XHJcbiAgJ2FwcGxpY2F0aW9ucy1mbG93LXByb2plY3RzLWVsZW1lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFNFTEVDVE9SX0FQUExJQ0FUSU9OU19GTE9XX1BST0pFQ1RTX0VMRU1FTlQsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2plY3RzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wcm9qZWN0cy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwbGljYXRpb25zRmxvd1Byb2plY3RzRWxlbWVudENvbXBvbmVudFxyXG4gIGV4dGVuZHMgTGN1RWxlbWVudENvbXBvbmVudDxBcHBsaWNhdGlvbnNGbG93UHJvamVjdHNDb250ZXh0PlxyXG4gIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXRcclxue1xyXG4gIC8vICBGaWVsZHNcclxuICBwcm90ZWN0ZWQgcHJvak1vbjogTm9kZUpTLlRpbWVvdXQ7XHJcblxyXG4gIC8vICBQcm9wZXJ0aWVzXHJcbiAgcHVibGljIGdldCBBY3RpdmVFbnZpcm9ubWVudCgpOiBFYUNFbnZpcm9ubWVudEFzQ29kZSB7XHJcbiAgICByZXR1cm4gdGhpcy5TdGF0ZT8uRWFDPy5FbnZpcm9ubWVudHNbdGhpcy5BY3RpdmVFbnZpcm9ubWVudExvb2t1cF07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IEFjdGl2ZUVudmlyb25tZW50TG9va3VwKCk6IHN0cmluZyB7XHJcbiAgICAvLyAgVE9ETzogIEV2ZW50dWFsbHkgc3VwcG9ydCBtdWx0aXBsZSBlbnZpcm9ubWVudHNcclxuICAgIGNvbnN0IGVudkxvb2t1cHMgPSBPYmplY3Qua2V5cyh0aGlzLlN0YXRlPy5FYUM/LkVudmlyb25tZW50cyB8fCB7fSk7XHJcblxyXG4gICAgcmV0dXJuIGVudkxvb2t1cHNbMF07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IENyZWF0aW5nUHJvamVjdCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnByb2plY3RTZXJ2aWNlLkNyZWF0aW5nUHJvamVjdDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgRWRpdGluZ1Byb2plY3QoKTogRWFDUHJvamVjdEFzQ29kZSB7XHJcbiAgICByZXR1cm4gdGhpcy5TdGF0ZT8uRWFDPy5Qcm9qZWN0c1xyXG4gICAgICA/IHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHNbdGhpcy5FZGl0aW5nUHJvamVjdExvb2t1cF1cclxuICAgICAgOiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBFZGl0aW5nUHJvamVjdExvb2t1cCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucHJvamVjdFNlcnZpY2UuRWRpdGluZ1Byb2plY3RMb29rdXA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IFByb2plY3RMb29rdXBzKCk6IEFycmF5PHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHMgfHwge30pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFN0YXRlOiBBcHBsaWNhdGlvbnNGbG93U3RhdGU7XHJcblxyXG4gIC8vICBDb25zdHJ1Y3RvcnNcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcm90ZWN0ZWQgYXBwc0Zsb3dTdmM6IEFwcGxpY2F0aW9uc0Zsb3dTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHByb2plY3RTZXJ2aWNlOiBQcm9qZWN0U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBhcHBzRmxvd0V2ZW50c1N2YzogQXBwbGljYXRpb25zRmxvd0V2ZW50c1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKGluamVjdG9yKTtcclxuXHJcbiAgICB0aGlzLlN0YXRlID0gbmV3IEFwcGxpY2F0aW9uc0Zsb3dTdGF0ZSgpO1xyXG5cclxuICAgIHRoaXMuc2V0U2VydmljZXMoKTtcclxuICB9XHJcblxyXG4gIC8vICBMaWZlIEN5Y2xlXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge31cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuXHJcbiAgICB0aGlzLmhhbmRsZVN0YXRlQ2hhbmdlKCkudGhlbigoZWFjKSA9PiB7fSk7XHJcblxyXG4gICAgLy8gdGhpcy5zZXR1cFByb2plY3RNb25pdG9yKCk7XHJcbiAgfVxyXG5cclxuICAvLyAgQVBJIE1ldGhvZHNcclxuICBwdWJsaWMgYXN5bmMgQWN0aXZlRW50ZXJwcmlzZUNoYW5nZWQoZXZlbnQ6IE1hdFNlbGVjdENoYW5nZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TZXRBY3RpdmVFbnRlcnByaXNlKHRoaXMuU3RhdGUsIGV2ZW50LnZhbHVlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDb25maWd1cmVEZXZPcHNBY3Rpb24oZGV2T3BzQWN0aW9uTG9va3VwOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuU3RhdGUuTG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd1N2Y1xyXG4gICAgICAuQ29uZmlndXJlRGV2T3BzQWN0aW9uKGRldk9wc0FjdGlvbkxvb2t1cClcclxuICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2U6IEJhc2VSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNwb25zZS5TdGF0dXMuQ29kZSA9PT0gMCkge1xyXG4gICAgICAgICAgdGhpcy5wcm9qZWN0U2VydmljZS5Mb2FkRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5TdGF0ZS5Mb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vICBIZWxwZXJzXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVN0YXRlQ2hhbmdlKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5TdGF0ZS5Mb2FkaW5nID0gdHJ1ZTtcclxuXHJcbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkhhc1ZhbGlkQ29ubmVjdGlvbih0aGlzLlN0YXRlKTtcclxuXHJcbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkxpc3RFbnRlcnByaXNlcyh0aGlzLlN0YXRlKTtcclxuXHJcbiAgICBpZiAodGhpcy5TdGF0ZS5FbnRlcnByaXNlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkdldEFjdGl2ZUVudGVycHJpc2UodGhpcy5TdGF0ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlU2F2ZUFwcGxpY2F0aW9uKFxyXG4gICAgcmVxOiBTYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudFJlcXVlc3RcclxuICApOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHNhdmVFYUM6IEVudGVycHJpc2VBc0NvZGUgPSB7XHJcbiAgICAgIEVudGVycHJpc2VMb29rdXA6IHRoaXMuU3RhdGUuRWFDLkVudGVycHJpc2VMb29rdXAsXHJcbiAgICAgIEFwcGxpY2F0aW9uczoge30sXHJcbiAgICAgIFByb2plY3RzOiB7fSxcclxuICAgIH07XHJcblxyXG4gICAgY29uc3QgZXhpc3RpbmdQcm9qID0ge1xyXG4gICAgICAuLi50aGlzLlN0YXRlLkVhQy5Qcm9qZWN0c1tyZXEuUHJvamVjdExvb2t1cF0sXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChleGlzdGluZ1Byb2ouQXBwbGljYXRpb25Mb29rdXBzPy5pbmRleE9mKHJlcS5BcHBsaWNhdGlvbkxvb2t1cCkgPCAwKSB7XHJcbiAgICAgIGlmICghZXhpc3RpbmdQcm9qLkFwcGxpY2F0aW9uTG9va3Vwcykge1xyXG4gICAgICAgIGV4aXN0aW5nUHJvai5BcHBsaWNhdGlvbkxvb2t1cHMgPSBbXTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZXhpc3RpbmdQcm9qLkFwcGxpY2F0aW9uTG9va3Vwcy5wdXNoKHJlcS5BcHBsaWNhdGlvbkxvb2t1cCk7XHJcblxyXG4gICAgICBzYXZlRWFDLlByb2plY3RzW3JlcS5Qcm9qZWN0TG9va3VwXSA9IGV4aXN0aW5nUHJvajtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocmVxLkFwcGxpY2F0aW9uKSB7XHJcbiAgICAgIHNhdmVFYUMuQXBwbGljYXRpb25zW3JlcS5BcHBsaWNhdGlvbkxvb2t1cF0gPSByZXEuQXBwbGljYXRpb247XHJcbiAgICB9XHJcblxyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBzYXZlRWFDKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTYXZlREZTTW9kaWZpZXIoXHJcbiAgICByZXE6IFNhdmVERlNNb2RpZmllckV2ZW50UmVxdWVzdFxyXG4gICk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3Qgc2F2ZUVhQzogRW50ZXJwcmlzZUFzQ29kZSA9IHtcclxuICAgICAgRW50ZXJwcmlzZUxvb2t1cDogdGhpcy5TdGF0ZS5FYUMuRW50ZXJwcmlzZUxvb2t1cCxcclxuICAgICAgTW9kaWZpZXJzOiB7fSxcclxuICAgICAgUHJvamVjdHM6IHt9LFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAocmVxLk1vZGlmaWVyKSB7XHJcbiAgICAgIHNhdmVFYUMuTW9kaWZpZXJzW3JlcS5Nb2RpZmllckxvb2t1cF0gPSByZXEuTW9kaWZpZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcS5Qcm9qZWN0TG9va3VwKSB7XHJcbiAgICAgIHNhdmVFYUMuUHJvamVjdHNbcmVxLlByb2plY3RMb29rdXBdID0ge1xyXG4gICAgICAgIE1vZGlmaWVyTG9va3VwczogW3JlcS5Nb2RpZmllckxvb2t1cF0sXHJcbiAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBzYXZlRWFDKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTYXZlRW52aXJvbm1lbnQoXHJcbiAgICByZXE6IFNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50UmVxdWVzdFxyXG4gICk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3Qgc2F2ZUVhQzogRW50ZXJwcmlzZUFzQ29kZSA9IHtcclxuICAgICAgRW50ZXJwcmlzZUxvb2t1cDogdGhpcy5TdGF0ZS5FYUMuRW50ZXJwcmlzZUxvb2t1cCxcclxuICAgICAgRGF0YVRva2Vuczoge30sXHJcbiAgICAgIEVudmlyb25tZW50czoge30sXHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChyZXEuRW52aXJvbm1lbnQpIHtcclxuICAgICAgc2F2ZUVhQy5FbnZpcm9ubWVudHNbcmVxLkVudmlyb25tZW50TG9va3VwXSA9IHJlcS5FbnZpcm9ubWVudDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocmVxLkVudGVycHJpc2VEYXRhVG9rZW5zKSB7XHJcbiAgICAgIHNhdmVFYUMuRGF0YVRva2VucyA9IHJlcS5FbnRlcnByaXNlRGF0YVRva2VucztcclxuICAgIH1cclxuXHJcbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLlNhdmVFbnRlcnByaXNlQXNDb2RlKHRoaXMuU3RhdGUsIHNhdmVFYUMpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVNhdmVQcm9qZWN0KFxyXG4gICAgcHJvamVjdExvb2t1cDogc3RyaW5nLFxyXG4gICAgcHJvamVjdDogRWFDUHJvamVjdEFzQ29kZVxyXG4gICk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3Qgc2F2ZUVhQzogRW50ZXJwcmlzZUFzQ29kZSA9IHtcclxuICAgICAgRW50ZXJwcmlzZUxvb2t1cDogdGhpcy5TdGF0ZS5FYUMuRW50ZXJwcmlzZUxvb2t1cCxcclxuICAgICAgUHJvamVjdHM6IHt9LFxyXG4gICAgfTtcclxuXHJcbiAgICBzYXZlRWFDLlByb2plY3RzW3Byb2plY3RMb29rdXBdID0gcHJvamVjdDtcclxuXHJcbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLlNhdmVFbnRlcnByaXNlQXNDb2RlKHRoaXMuU3RhdGUsIHNhdmVFYUMpO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2V0RWRpdFByb2plY3RTZXR0aW5ncyhwcm9qZWN0TG9va3VwKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBzZXRTZXJ2aWNlcygpOiB2b2lkIHtcclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuRGVsZXRlQXBwbGljYXRpb25FdmVudC5zdWJzY3JpYmUoXHJcbiAgICAgIGFzeW5jIChhcHBMb29rdXApID0+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkRlbGV0ZUFwcGxpY2F0aW9uKHRoaXMuU3RhdGUsIGFwcExvb2t1cCk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5EZWxldGVEZXZPcHNBY3Rpb25FdmVudC5zdWJzY3JpYmUoXHJcbiAgICAgIGFzeW5jIChkb2FMb29rdXApID0+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkRlbGV0ZURldk9wc0FjdGlvbih0aGlzLlN0YXRlLCBkb2FMb29rdXApO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuRGVsZXRlUHJvamVjdEV2ZW50LnN1YnNjcmliZShcclxuICAgICAgYXN5bmMgKHByb2plY3RMb29rdXApID0+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkRlbGV0ZVByb2plY3QodGhpcy5TdGF0ZSwgcHJvamVjdExvb2t1cCk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5EZWxldGVTb3VyY2VDb250cm9sRXZlbnQuc3Vic2NyaWJlKFxyXG4gICAgICBhc3luYyAoc2NMb29rdXApID0+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkRlbGV0ZVNvdXJjZUNvbnRyb2wodGhpcy5TdGF0ZSwgc2NMb29rdXApO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuRW5zdXJlVXNlckVudGVycHJpc2VFdmVudC5zdWJzY3JpYmUoYXN5bmMgKCkgPT4ge1xyXG4gICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkVuc3VyZVVzZXJFbnRlcnByaXNlKHRoaXMuU3RhdGUpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5MaXN0UHJvamVjdHNFdmVudC5zdWJzY3JpYmUoKHdpdGhMb2FkaW5nKSA9PiB7XHJcbiAgICAvLyAgIHRoaXMucHJvamVjdFNlcnZpY2UuTGlzdFByb2plY3RzKHRoaXMuU3RhdGUsIHdpdGhMb2FkaW5nKTtcclxuICAgIC8vIH0pO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuTG9hZEVudGVycHJpc2VBc0NvZGVFdmVudC5zdWJzY3JpYmUoYXN5bmMgKCkgPT4ge1xyXG4gICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkxvYWRFbnRlcnByaXNlQXNDb2RlKHRoaXMuU3RhdGUpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5TYXZlRW50ZXJwcmlzZUFzQ29kZUV2ZW50LnN1YnNjcmliZShhc3luYyAoZWFjKSA9PiB7XHJcbiAgICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuU2F2ZUVudGVycHJpc2VBc0NvZGUodGhpcy5TdGF0ZSwgZWFjKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnQuc3Vic2NyaWJlKGFzeW5jIChyZXEpID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTYXZlQXBwbGljYXRpb24ocmVxKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2F2ZURGU01vZGlmaWVyRXZlbnQuc3Vic2NyaWJlKGFzeW5jIChyZXEpID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTYXZlREZTTW9kaWZpZXIocmVxKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2F2ZUVudmlyb25tZW50QXNDb2RlRXZlbnQuc3Vic2NyaWJlKGFzeW5jIChyZXEpID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTYXZlRW52aXJvbm1lbnQocmVxKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2F2ZVByb2plY3RBc0NvZGVFdmVudC5zdWJzY3JpYmUoYXN5bmMgKHJlcSkgPT4ge1xyXG4gICAgICBhd2FpdCB0aGlzLmhhbmRsZVNhdmVQcm9qZWN0KHJlcS5Qcm9qZWN0TG9va3VwLCByZXEuUHJvamVjdCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNldENyZWF0aW5nUHJvamVjdEV2ZW50LnN1YnNjcmliZShcclxuICAgICAgKGNyZWF0aW5nUHJvamVjdCkgPT4ge1xyXG4gICAgICAgIHRoaXMucHJvamVjdFNlcnZpY2UuU2V0Q3JlYXRpbmdQcm9qZWN0KGNyZWF0aW5nUHJvamVjdCk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5TZXRFZGl0UHJvamVjdFNldHRpbmdzRXZlbnQuc3Vic2NyaWJlKFxyXG4gICAgICBhc3luYyAocHJvamVjdExvb2t1cCkgPT4ge1xyXG4gICAgICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuU2V0RWRpdFByb2plY3RTZXR0aW5ncyhcclxuICAgICAgICAgIHRoaXMuU3RhdGUsXHJcbiAgICAgICAgICBwcm9qZWN0TG9va3VwXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlVucGFja0xvd0NvZGVVbml0RXZlbnQuc3Vic2NyaWJlKGFzeW5jIChyZXEpID0+IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGNvbmZpcm0oXHJcbiAgICAgICAgICBgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVucGFjayBhcHBsaWNhdGlvbiAnJHtcclxuICAgICAgICAgICAgcmVxLkFwcGxpY2F0aW9uTmFtZVxyXG4gICAgICAgICAgfScgd2l0aCB2ZXJzaW9uICcke3JlcS5WZXJzaW9ufSc/YFxyXG4gICAgICAgIClcclxuICAgICAgKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5VbnBhY2tMb3dDb2RlVW5pdCh0aGlzLlN0YXRlLCByZXEpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL2FwcGxpY2F0aW9ucy1mbG93L2FwcGxpY2F0aW9ucy1mbG93L3Byb2plY3RzL2NvbW1vbi9zcmMvIiwic291cmNlcyI6WyJsaWIvZWxlbWVudHMvcHJvamVjdHMvcHJvamVjdHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFFBQVEsR0FLVCxNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLG1CQUFtQixHQUdwQixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFaEUsT0FBTyxFQUNMLDZCQUE2QixHQUk5QixNQUFNLG1EQUFtRCxDQUFDO0FBVTNELE1BQU0sT0FBTyxvQ0FBb0M7Q0FBRztBQUVwRCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsaUJBQXVEO0NBQUc7QUFFL0csTUFBTSxDQUFDLE1BQU0sMkNBQTJDLEdBQ3RELG9DQUFvQyxDQUFDO0FBT3ZDLE1BQU0sT0FBTyx3Q0FDWCxTQUFRLG1CQUFvRDtJQXNDNUQsZ0JBQWdCO0lBQ2hCLFlBQ1ksUUFBa0IsRUFDbEIsV0FBb0MsRUFDcEMsY0FBOEIsRUFDOUIsaUJBQWdEO1FBRTFELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUxOLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQXlCO1FBQ3BDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQStCO1FBSTFELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxxQkFBcUIs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USxFQUFFLDJDQUEyQztnQkFDckQsMGdHQUF3Qzs7YUFFekM7OztZQTdDQyxRQUFRO1lBZ0JELHVCQUF1QjtZQUN2QixjQUFjO1lBR3JCLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBJbmplY3RvcixcclxuICBWaWV3Q2hpbGQsXHJcbiAgSW5qZWN0LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgT25EZXN0cm95LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRTdGVwcGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc3RlcHBlcic7XHJcbmltcG9ydCB7XHJcbiAgTENVRWxlbWVudENvbnRleHQsXHJcbiAgTGN1RWxlbWVudENvbXBvbmVudCxcclxuICBCYXNlUmVzcG9uc2UsXHJcbiAgQmFzZU1vZGVsZWRSZXNwb25zZSxcclxufSBmcm9tICdAbGN1L2NvbW1vbic7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uc0Zsb3dTdGF0ZSB9IGZyb20gJy4vLi4vLi4vc3RhdGUvYXBwbGljYXRpb25zLWZsb3cuc3RhdGUnO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvbnNGbG93U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2FwcGxpY2F0aW9ucy1mbG93LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9qZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Byb2plY3Quc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIEFwcGxpY2F0aW9uc0Zsb3dFdmVudHNTZXJ2aWNlLFxyXG4gIFNhdmVBcHBsaWNhdGlvbkFzQ29kZUV2ZW50UmVxdWVzdCxcclxuICBTYXZlREZTTW9kaWZpZXJFdmVudFJlcXVlc3QsXHJcbiAgU2F2ZUVudmlyb25tZW50QXNDb2RlRXZlbnRSZXF1ZXN0LFxyXG59IGZyb20gJy4vLi4vLi4vc2VydmljZXMvYXBwbGljYXRpb25zLWZsb3ctZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEVhQ0FwcGxpY2F0aW9uQXNDb2RlLFxyXG4gIEVhQ0Vudmlyb25tZW50QXNDb2RlLFxyXG4gIEVhQ1Byb2plY3RBc0NvZGUsXHJcbiAgRW50ZXJwcmlzZUFzQ29kZSxcclxufSBmcm9tICcuLi8uLi9tb2RlbHMvZWFjLm1vZGVscyc7XHJcblxyXG5kZWNsYXJlIHZhciB3aW5kb3c6IFdpbmRvdztcclxuXHJcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbnNGbG93UHJvamVjdHNFbGVtZW50U3RhdGUge31cclxuXHJcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbnNGbG93UHJvamVjdHNDb250ZXh0IGV4dGVuZHMgTENVRWxlbWVudENvbnRleHQ8QXBwbGljYXRpb25zRmxvd1Byb2plY3RzRWxlbWVudFN0YXRlPiB7fVxyXG5cclxuZXhwb3J0IGNvbnN0IFNFTEVDVE9SX0FQUExJQ0FUSU9OU19GTE9XX1BST0pFQ1RTX0VMRU1FTlQgPVxyXG4gICdhcHBsaWNhdGlvbnMtZmxvdy1wcm9qZWN0cy1lbGVtZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBTRUxFQ1RPUl9BUFBMSUNBVElPTlNfRkxPV19QUk9KRUNUU19FTEVNRU5ULFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9qZWN0cy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcHJvamVjdHMuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uc0Zsb3dQcm9qZWN0c0VsZW1lbnRDb21wb25lbnRcclxuICBleHRlbmRzIExjdUVsZW1lbnRDb21wb25lbnQ8QXBwbGljYXRpb25zRmxvd1Byb2plY3RzQ29udGV4dD5cclxuICBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0XHJcbntcclxuICAvLyAgRmllbGRzXHJcbiAgcHJvdGVjdGVkIHByb2pNb246IE5vZGVKUy5UaW1lb3V0O1xyXG5cclxuICAvLyAgUHJvcGVydGllc1xyXG4gIHB1YmxpYyBnZXQgQWN0aXZlRW52aXJvbm1lbnQoKTogRWFDRW52aXJvbm1lbnRBc0NvZGUge1xyXG4gICAgcmV0dXJuIHRoaXMuU3RhdGU/LkVhQz8uRW52aXJvbm1lbnRzW3RoaXMuQWN0aXZlRW52aXJvbm1lbnRMb29rdXBdO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBBY3RpdmVFbnZpcm9ubWVudExvb2t1cCgpOiBzdHJpbmcge1xyXG4gICAgLy8gIFRPRE86ICBFdmVudHVhbGx5IHN1cHBvcnQgbXVsdGlwbGUgZW52aXJvbm1lbnRzXHJcbiAgICBjb25zdCBlbnZMb29rdXBzID0gT2JqZWN0LmtleXModGhpcy5TdGF0ZT8uRWFDPy5FbnZpcm9ubWVudHMgfHwge30pO1xyXG5cclxuICAgIHJldHVybiBlbnZMb29rdXBzWzBdO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBDcmVhdGluZ1Byb2plY3QoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5wcm9qZWN0U2VydmljZS5DcmVhdGluZ1Byb2plY3Q7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IEVkaXRpbmdQcm9qZWN0KCk6IEVhQ1Byb2plY3RBc0NvZGUge1xyXG4gICAgcmV0dXJuIHRoaXMuU3RhdGU/LkVhQz8uUHJvamVjdHNcclxuICAgICAgPyB0aGlzLlN0YXRlPy5FYUM/LlByb2plY3RzW3RoaXMuRWRpdGluZ1Byb2plY3RMb29rdXBdXHJcbiAgICAgIDogbnVsbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgRWRpdGluZ1Byb2plY3RMb29rdXAoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnByb2plY3RTZXJ2aWNlLkVkaXRpbmdQcm9qZWN0TG9va3VwO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBQcm9qZWN0TG9va3VwcygpOiBBcnJheTxzdHJpbmc+IHtcclxuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLlN0YXRlPy5FYUM/LlByb2plY3RzIHx8IHt9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTdGF0ZTogQXBwbGljYXRpb25zRmxvd1N0YXRlO1xyXG5cclxuICAvLyAgQ29uc3RydWN0b3JzXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJvdGVjdGVkIGFwcHNGbG93U3ZjOiBBcHBsaWNhdGlvbnNGbG93U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBwcm9qZWN0U2VydmljZTogUHJvamVjdFNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgYXBwc0Zsb3dFdmVudHNTdmM6IEFwcGxpY2F0aW9uc0Zsb3dFdmVudHNTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihpbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5TdGF0ZSA9IG5ldyBBcHBsaWNhdGlvbnNGbG93U3RhdGUoKTtcclxuXHJcbiAgICB0aGlzLnNldFNlcnZpY2VzKCk7XHJcbiAgfVxyXG5cclxuICAvLyAgTGlmZSBDeWNsZVxyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHt9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcblxyXG4gICAgdGhpcy5oYW5kbGVTdGF0ZUNoYW5nZSgpLnRoZW4oKGVhYykgPT4ge30pO1xyXG5cclxuICAgIC8vIHRoaXMuc2V0dXBQcm9qZWN0TW9uaXRvcigpO1xyXG4gIH1cclxuXHJcbiAgLy8gIEFQSSBNZXRob2RzXHJcbiAgcHVibGljIGFzeW5jIEFjdGl2ZUVudGVycHJpc2VDaGFuZ2VkKGV2ZW50OiBNYXRTZWxlY3RDaGFuZ2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuU2V0QWN0aXZlRW50ZXJwcmlzZSh0aGlzLlN0YXRlLCBldmVudC52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ29uZmlndXJlRGV2T3BzQWN0aW9uKGRldk9wc0FjdGlvbkxvb2t1cDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLlN0YXRlLkxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dTdmNcclxuICAgICAgLkNvbmZpZ3VyZURldk9wc0FjdGlvbihkZXZPcHNBY3Rpb25Mb29rdXApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlOiBCYXNlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBpZiAocmVzcG9uc2UuU3RhdHVzLkNvZGUgPT09IDApIHtcclxuICAgICAgICAgIHRoaXMucHJvamVjdFNlcnZpY2UuTG9hZEVudGVycHJpc2VBc0NvZGUodGhpcy5TdGF0ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuU3RhdGUuTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvLyAgSGVscGVyc1xyXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTdGF0ZUNoYW5nZSgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuU3RhdGUuTG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5IYXNWYWxpZENvbm5lY3Rpb24odGhpcy5TdGF0ZSk7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5MaXN0RW50ZXJwcmlzZXModGhpcy5TdGF0ZSk7XHJcblxyXG4gICAgaWYgKHRoaXMuU3RhdGUuRW50ZXJwcmlzZXM/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5HZXRBY3RpdmVFbnRlcnByaXNlKHRoaXMuU3RhdGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVNhdmVBcHBsaWNhdGlvbihcclxuICAgIHJlcTogU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnRSZXF1ZXN0XHJcbiAgKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCBzYXZlRWFDOiBFbnRlcnByaXNlQXNDb2RlID0ge1xyXG4gICAgICBFbnRlcnByaXNlTG9va3VwOiB0aGlzLlN0YXRlLkVhQy5FbnRlcnByaXNlTG9va3VwLFxyXG4gICAgICBBcHBsaWNhdGlvbnM6IHt9LFxyXG4gICAgICBQcm9qZWN0czoge30sXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGV4aXN0aW5nUHJvaiA9IHtcclxuICAgICAgLi4udGhpcy5TdGF0ZS5FYUMuUHJvamVjdHNbcmVxLlByb2plY3RMb29rdXBdLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAoZXhpc3RpbmdQcm9qLkFwcGxpY2F0aW9uTG9va3Vwcz8uaW5kZXhPZihyZXEuQXBwbGljYXRpb25Mb29rdXApIDwgMCkge1xyXG4gICAgICBpZiAoIWV4aXN0aW5nUHJvai5BcHBsaWNhdGlvbkxvb2t1cHMpIHtcclxuICAgICAgICBleGlzdGluZ1Byb2ouQXBwbGljYXRpb25Mb29rdXBzID0gW107XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGV4aXN0aW5nUHJvai5BcHBsaWNhdGlvbkxvb2t1cHMucHVzaChyZXEuQXBwbGljYXRpb25Mb29rdXApO1xyXG5cclxuICAgICAgc2F2ZUVhQy5Qcm9qZWN0c1tyZXEuUHJvamVjdExvb2t1cF0gPSBleGlzdGluZ1Byb2o7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcS5BcHBsaWNhdGlvbikge1xyXG4gICAgICBzYXZlRWFDLkFwcGxpY2F0aW9uc1tyZXEuQXBwbGljYXRpb25Mb29rdXBdID0gcmVxLkFwcGxpY2F0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuU2F2ZUVudGVycHJpc2VBc0NvZGUodGhpcy5TdGF0ZSwgc2F2ZUVhQyk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlU2F2ZURGU01vZGlmaWVyKFxyXG4gICAgcmVxOiBTYXZlREZTTW9kaWZpZXJFdmVudFJlcXVlc3RcclxuICApOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHNhdmVFYUM6IEVudGVycHJpc2VBc0NvZGUgPSB7XHJcbiAgICAgIEVudGVycHJpc2VMb29rdXA6IHRoaXMuU3RhdGUuRWFDLkVudGVycHJpc2VMb29rdXAsXHJcbiAgICAgIE1vZGlmaWVyczoge30sXHJcbiAgICAgIFByb2plY3RzOiB7fSxcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHJlcS5Nb2RpZmllcikge1xyXG4gICAgICBzYXZlRWFDLk1vZGlmaWVyc1tyZXEuTW9kaWZpZXJMb29rdXBdID0gcmVxLk1vZGlmaWVyO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChyZXEuUHJvamVjdExvb2t1cCkge1xyXG4gICAgICBzYXZlRWFDLlByb2plY3RzW3JlcS5Qcm9qZWN0TG9va3VwXSA9IHtcclxuICAgICAgICBNb2RpZmllckxvb2t1cHM6IFtyZXEuTW9kaWZpZXJMb29rdXBdLFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuU2F2ZUVudGVycHJpc2VBc0NvZGUodGhpcy5TdGF0ZSwgc2F2ZUVhQyk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlU2F2ZUVudmlyb25tZW50KFxyXG4gICAgcmVxOiBTYXZlRW52aXJvbm1lbnRBc0NvZGVFdmVudFJlcXVlc3RcclxuICApOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHNhdmVFYUM6IEVudGVycHJpc2VBc0NvZGUgPSB7XHJcbiAgICAgIEVudGVycHJpc2VMb29rdXA6IHRoaXMuU3RhdGUuRWFDLkVudGVycHJpc2VMb29rdXAsXHJcbiAgICAgIERhdGFUb2tlbnM6IHt9LFxyXG4gICAgICBFbnZpcm9ubWVudHM6IHt9LFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAocmVxLkVudmlyb25tZW50KSB7XHJcbiAgICAgIHNhdmVFYUMuRW52aXJvbm1lbnRzW3JlcS5FbnZpcm9ubWVudExvb2t1cF0gPSByZXEuRW52aXJvbm1lbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHJlcS5FbnRlcnByaXNlRGF0YVRva2Vucykge1xyXG4gICAgICBzYXZlRWFDLkRhdGFUb2tlbnMgPSByZXEuRW50ZXJwcmlzZURhdGFUb2tlbnM7XHJcbiAgICB9XHJcblxyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBzYXZlRWFDKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTYXZlUHJvamVjdChcclxuICAgIHByb2plY3RMb29rdXA6IHN0cmluZyxcclxuICAgIHByb2plY3Q6IEVhQ1Byb2plY3RBc0NvZGVcclxuICApOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHNhdmVFYUM6IEVudGVycHJpc2VBc0NvZGUgPSB7XHJcbiAgICAgIEVudGVycHJpc2VMb29rdXA6IHRoaXMuU3RhdGUuRWFDLkVudGVycHJpc2VMb29rdXAsXHJcbiAgICAgIFByb2plY3RzOiB7fSxcclxuICAgIH07XHJcblxyXG4gICAgc2F2ZUVhQy5Qcm9qZWN0c1twcm9qZWN0TG9va3VwXSA9IHByb2plY3Q7XHJcblxyXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBzYXZlRWFDKTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNldEVkaXRQcm9qZWN0U2V0dGluZ3MocHJvamVjdExvb2t1cCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgc2V0U2VydmljZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLkRlbGV0ZUFwcGxpY2F0aW9uRXZlbnQuc3Vic2NyaWJlKFxyXG4gICAgICBhc3luYyAoYXBwTG9va3VwKSA9PiB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5EZWxldGVBcHBsaWNhdGlvbih0aGlzLlN0YXRlLCBhcHBMb29rdXApO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuRGVsZXRlRGV2T3BzQWN0aW9uRXZlbnQuc3Vic2NyaWJlKFxyXG4gICAgICBhc3luYyAoZG9hTG9va3VwKSA9PiB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5EZWxldGVEZXZPcHNBY3Rpb24odGhpcy5TdGF0ZSwgZG9hTG9va3VwKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLkRlbGV0ZVByb2plY3RFdmVudC5zdWJzY3JpYmUoXHJcbiAgICAgIGFzeW5jIChwcm9qZWN0TG9va3VwKSA9PiB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5EZWxldGVQcm9qZWN0KHRoaXMuU3RhdGUsIHByb2plY3RMb29rdXApO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuRGVsZXRlU291cmNlQ29udHJvbEV2ZW50LnN1YnNjcmliZShcclxuICAgICAgYXN5bmMgKHNjTG9va3VwKSA9PiB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5EZWxldGVTb3VyY2VDb250cm9sKHRoaXMuU3RhdGUsIHNjTG9va3VwKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLkVuc3VyZVVzZXJFbnRlcnByaXNlRXZlbnQuc3Vic2NyaWJlKGFzeW5jICgpID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5FbnN1cmVVc2VyRW50ZXJwcmlzZSh0aGlzLlN0YXRlKTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuTGlzdFByb2plY3RzRXZlbnQuc3Vic2NyaWJlKCh3aXRoTG9hZGluZykgPT4ge1xyXG4gICAgLy8gICB0aGlzLnByb2plY3RTZXJ2aWNlLkxpc3RQcm9qZWN0cyh0aGlzLlN0YXRlLCB3aXRoTG9hZGluZyk7XHJcbiAgICAvLyB9KTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLkxvYWRFbnRlcnByaXNlQXNDb2RlRXZlbnQuc3Vic2NyaWJlKGFzeW5jICgpID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5Mb2FkRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2F2ZUVudGVycHJpc2VBc0NvZGVFdmVudC5zdWJzY3JpYmUoYXN5bmMgKGVhYykgPT4ge1xyXG4gICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLlNhdmVFbnRlcnByaXNlQXNDb2RlKHRoaXMuU3RhdGUsIGVhYyk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNhdmVBcHBsaWNhdGlvbkFzQ29kZUV2ZW50LnN1YnNjcmliZShhc3luYyAocmVxKSA9PiB7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlU2F2ZUFwcGxpY2F0aW9uKHJlcSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNhdmVERlNNb2RpZmllckV2ZW50LnN1YnNjcmliZShhc3luYyAocmVxKSA9PiB7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlU2F2ZURGU01vZGlmaWVyKHJlcSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50LnN1YnNjcmliZShhc3luYyAocmVxKSA9PiB7XHJcbiAgICAgIGF3YWl0IHRoaXMuaGFuZGxlU2F2ZUVudmlyb25tZW50KHJlcSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmFwcHNGbG93RXZlbnRzU3ZjLlNhdmVQcm9qZWN0QXNDb2RlRXZlbnQuc3Vic2NyaWJlKGFzeW5jIChyZXEpID0+IHtcclxuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTYXZlUHJvamVjdChyZXEuUHJvamVjdExvb2t1cCwgcmVxLlByb2plY3QpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5TZXRDcmVhdGluZ1Byb2plY3RFdmVudC5zdWJzY3JpYmUoXHJcbiAgICAgIChjcmVhdGluZ1Byb2plY3QpID0+IHtcclxuICAgICAgICB0aGlzLnByb2plY3RTZXJ2aWNlLlNldENyZWF0aW5nUHJvamVjdChjcmVhdGluZ1Byb2plY3QpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuYXBwc0Zsb3dFdmVudHNTdmMuU2V0RWRpdFByb2plY3RTZXR0aW5nc0V2ZW50LnN1YnNjcmliZShcclxuICAgICAgYXN5bmMgKHByb2plY3RMb29rdXApID0+IHtcclxuICAgICAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLlNldEVkaXRQcm9qZWN0U2V0dGluZ3MoXHJcbiAgICAgICAgICB0aGlzLlN0YXRlLFxyXG4gICAgICAgICAgcHJvamVjdExvb2t1cFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5VbnBhY2tMb3dDb2RlVW5pdEV2ZW50LnN1YnNjcmliZShhc3luYyAocmVxKSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBjb25maXJtKFxyXG4gICAgICAgICAgYEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1bnBhY2sgYXBwbGljYXRpb24gJyR7XHJcbiAgICAgICAgICAgIHJlcS5BcHBsaWNhdGlvbk5hbWVcclxuICAgICAgICAgIH0nIHdpdGggdmVyc2lvbiAnJHtyZXEuVmVyc2lvbiB8fCAnbGF0ZXN0J30nP2BcclxuICAgICAgICApXHJcbiAgICAgICkge1xyXG4gICAgICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuVW5wYWNrTG93Q29kZVVuaXQodGhpcy5TdGF0ZSwgcmVxKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -80,4 +80,4 @@ ApplicationsFlowEventsService.decorators = [
80
80
  },] }
81
81
  ];
82
82
  ApplicationsFlowEventsService.ctorParameters = () => [];
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb25zLWZsb3ctZXZlbnRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvYXBwbGljYXRpb25zLWZsb3cvYXBwbGljYXRpb25zLWZsb3cvcHJvamVjdHMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9hcHBsaWNhdGlvbnMtZmxvdy1ldmVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQzs7QUFpQm5FLE1BQU0sT0FBTyxpQ0FBaUM7Q0FNN0M7QUFFRCxNQUFNLE9BQU8sMkJBQTJCO0NBTXZDO0FBRUQsTUFBTSxPQUFPLGlDQUFpQztDQU03QztBQUVELE1BQU0sT0FBTyw2QkFBNkI7Q0FJekM7QUFLRCxNQUFNLE9BQU8sNkJBQTZCO0lBa0N4QyxlQUFlO0lBQ2Y7UUFDRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU3QyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVuRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVyRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUvQyxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVyRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsRCxJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV0RCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsY0FBYztJQUNQLGlCQUFpQixDQUFDLFNBQWlCO1FBQ3hDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFNBQWlCO1FBQ3pDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLGFBQWEsQ0FBQyxhQUFxQjtRQUN4QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxRQUFnQjtRQUN6QyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxvQkFBb0I7UUFDekIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxvREFBb0Q7SUFDcEQsOENBQThDO0lBQzlDLElBQUk7SUFFRyxvQkFBb0I7UUFDekIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxHQUFzQztRQUNqRSxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxlQUFlLENBQUMsR0FBZ0M7UUFDckQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sb0JBQW9CLENBQUMsR0FBcUI7UUFDL0MsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0scUJBQXFCLENBQUMsR0FBc0M7UUFDakUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsR0FBa0M7UUFDekQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsZUFBd0I7UUFDaEQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sc0JBQXNCLENBQUMsYUFBcUI7UUFDakQsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0saUJBQWlCLENBQUMsR0FBNkI7UUFDcEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDOzs7O1lBL0hGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRWFDREZTTW9kaWZpZXIsIEVhQ0Vudmlyb25tZW50QXNDb2RlIH0gZnJvbSAnLi4vbW9kZWxzL2VhYy5tb2RlbHMnO1xyXG5pbXBvcnQge1xyXG4gIEVhQ0FwcGxpY2F0aW9uQXNDb2RlLFxyXG4gIEVhQ0FydGlmYWN0LFxyXG4gIEVhQ0RhdGFUb2tlbixcclxuICBFYUNEZXZPcHNBY3Rpb24sXHJcbiAgRWFDUHJvamVjdEFzQ29kZSxcclxuICBFYUNTZWNyZXQsXHJcbiAgRWFDU291cmNlQ29udHJvbCxcclxufSBmcm9tICcuLi9tb2RlbHMvZWFjLm1vZGVscyc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VBc0NvZGUgfSBmcm9tICcuLi9tb2RlbHMvZWFjLm1vZGVscyc7XHJcbmltcG9ydCB7XHJcbiAgR2l0SHViV29ya2Zsb3dSdW4sXHJcbiAgVW5wYWNrTG93Q29kZVVuaXRSZXF1ZXN0LFxyXG59IGZyb20gJy4uL3N0YXRlL2FwcGxpY2F0aW9ucy1mbG93LnN0YXRlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBTYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudFJlcXVlc3Qge1xyXG4gIHB1YmxpYyBBcHBsaWNhdGlvbj86IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xyXG5cclxuICBwdWJsaWMgQXBwbGljYXRpb25Mb29rdXA/OiBzdHJpbmc7XHJcblxyXG4gIHB1YmxpYyBQcm9qZWN0TG9va3VwPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0IHtcclxuICBwdWJsaWMgTW9kaWZpZXI6IEVhQ0RGU01vZGlmaWVyO1xyXG5cclxuICBwdWJsaWMgTW9kaWZpZXJMb29rdXA6IHN0cmluZztcclxuXHJcbiAgcHVibGljIFByb2plY3RMb29rdXA/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBTYXZlRW52aXJvbm1lbnRBc0NvZGVFdmVudFJlcXVlc3Qge1xyXG4gIHB1YmxpYyBFbnRlcnByaXNlRGF0YVRva2Vucz86IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDRGF0YVRva2VuIH07XHJcblxyXG4gIHB1YmxpYyBFbnZpcm9ubWVudD86IEVhQ0Vudmlyb25tZW50QXNDb2RlO1xyXG5cclxuICBwdWJsaWMgRW52aXJvbm1lbnRMb29rdXA/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBTYXZlUHJvamVjdEFzQ29kZUV2ZW50UmVxdWVzdCB7XHJcbiAgcHVibGljIFByb2plY3Q/OiBFYUNQcm9qZWN0QXNDb2RlO1xyXG5cclxuICBwdWJsaWMgUHJvamVjdExvb2t1cD86IHN0cmluZztcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uc0Zsb3dFdmVudHNTZXJ2aWNlIHtcclxuICAvLyAgRmllbGRzXHJcblxyXG4gIC8vICBQcm9wZXJ0aWVzXHJcbiAgcHVibGljIERlbGV0ZUFwcGxpY2F0aW9uRXZlbnQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+O1xyXG5cclxuICBwdWJsaWMgRGVsZXRlRGV2T3BzQWN0aW9uRXZlbnQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+O1xyXG5cclxuICBwdWJsaWMgRGVsZXRlUHJvamVjdEV2ZW50OiBFdmVudEVtaXR0ZXI8c3RyaW5nPjtcclxuXHJcbiAgcHVibGljIERlbGV0ZVNvdXJjZUNvbnRyb2xFdmVudDogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gIHB1YmxpYyBFbnN1cmVVc2VyRW50ZXJwcmlzZUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PjtcclxuXHJcbiAgLy8gcHVibGljIExpc3RQcm9qZWN0c0V2ZW50OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XHJcblxyXG4gIHB1YmxpYyBMb2FkRW50ZXJwcmlzZUFzQ29kZUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PjtcclxuXHJcbiAgcHVibGljIFNhdmVBcHBsaWNhdGlvbkFzQ29kZUV2ZW50OiBFdmVudEVtaXR0ZXI8U2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnRSZXF1ZXN0PjtcclxuXHJcbiAgcHVibGljIFNhdmVERlNNb2RpZmllckV2ZW50OiBFdmVudEVtaXR0ZXI8U2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0PjtcclxuXHJcbiAgcHVibGljIFNhdmVFbnRlcnByaXNlQXNDb2RlRXZlbnQ6IEV2ZW50RW1pdHRlcjxFbnRlcnByaXNlQXNDb2RlPjtcclxuXHJcbiAgcHVibGljIFNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50OiBFdmVudEVtaXR0ZXI8U2F2ZUVudmlyb25tZW50QXNDb2RlRXZlbnRSZXF1ZXN0PjtcclxuXHJcbiAgcHVibGljIFNhdmVQcm9qZWN0QXNDb2RlRXZlbnQ6IEV2ZW50RW1pdHRlcjxTYXZlUHJvamVjdEFzQ29kZUV2ZW50UmVxdWVzdD47XHJcblxyXG4gIHB1YmxpYyBTZXRDcmVhdGluZ1Byb2plY3RFdmVudDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICBwdWJsaWMgU2V0RWRpdFByb2plY3RTZXR0aW5nc0V2ZW50OiBFdmVudEVtaXR0ZXI8c3RyaW5nPjtcclxuXHJcbiAgcHVibGljIFVucGFja0xvd0NvZGVVbml0RXZlbnQ6IEV2ZW50RW1pdHRlcjxVbnBhY2tMb3dDb2RlVW5pdFJlcXVlc3Q+O1xyXG5cclxuICAvLyBDb25zdHJ1Y3RvcnNcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuRGVsZXRlQXBwbGljYXRpb25FdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICB0aGlzLkRlbGV0ZURldk9wc0FjdGlvbkV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuRGVsZXRlUHJvamVjdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuRGVsZXRlU291cmNlQ29udHJvbEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuRW5zdXJlVXNlckVudGVycHJpc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICB0aGlzLkxvYWRFbnRlcnByaXNlQXNDb2RlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5TYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICB0aGlzLlNhdmVERlNNb2RpZmllckV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuU2F2ZUVudGVycHJpc2VBc0NvZGVFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICB0aGlzLlNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuU2F2ZVByb2plY3RBc0NvZGVFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICB0aGlzLlNldENyZWF0aW5nUHJvamVjdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuU2V0RWRpdFByb2plY3RTZXR0aW5nc0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuVW5wYWNrTG93Q29kZVVuaXRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICB9XHJcblxyXG4gIC8vIEFQSSBNZXRob2RzXHJcbiAgcHVibGljIERlbGV0ZUFwcGxpY2F0aW9uKGFwcExvb2t1cDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLkRlbGV0ZUFwcGxpY2F0aW9uRXZlbnQuZW1pdChhcHBMb29rdXApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZURldk9wc0FjdGlvbihkb2FMb29rdXA6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5EZWxldGVEZXZPcHNBY3Rpb25FdmVudC5lbWl0KGRvYUxvb2t1cCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRGVsZXRlUHJvamVjdChwcm9qZWN0TG9va3VwOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuRGVsZXRlUHJvamVjdEV2ZW50LmVtaXQocHJvamVjdExvb2t1cCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRGVsZXRlU291cmNlQ29udHJvbChzY0xvb2t1cDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLkRlbGV0ZVNvdXJjZUNvbnRyb2xFdmVudC5lbWl0KHNjTG9va3VwKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBFbnN1cmVVc2VyRW50ZXJwcmlzZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuRW5zdXJlVXNlckVudGVycHJpc2VFdmVudC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICAvLyBwdWJsaWMgTGlzdFByb2plY3RzKHdpdGhMb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XHJcbiAgLy8gICB0aGlzLkxpc3RQcm9qZWN0c0V2ZW50LmVtaXQod2l0aExvYWRpbmcpO1xyXG4gIC8vIH1cclxuXHJcbiAgcHVibGljIExvYWRFbnRlcnByaXNlQXNDb2RlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5Mb2FkRW50ZXJwcmlzZUFzQ29kZUV2ZW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTYXZlQXBwbGljYXRpb25Bc0NvZGUocmVxOiBTYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudFJlcXVlc3QpOiB2b2lkIHtcclxuICAgIHRoaXMuU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnQuZW1pdChyZXEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNhdmVERlNNb2RpZmllcihyZXE6IFNhdmVERlNNb2RpZmllckV2ZW50UmVxdWVzdCk6IHZvaWQge1xyXG4gICAgdGhpcy5TYXZlREZTTW9kaWZpZXJFdmVudC5lbWl0KHJlcSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2F2ZUVudGVycHJpc2VBc0NvZGUoZWFjOiBFbnRlcnByaXNlQXNDb2RlKTogdm9pZCB7XHJcbiAgICB0aGlzLlNhdmVFbnRlcnByaXNlQXNDb2RlRXZlbnQuZW1pdChlYWMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNhdmVFbnZpcm9ubWVudEFzQ29kZShyZXE6IFNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50UmVxdWVzdCk6IHZvaWQge1xyXG4gICAgdGhpcy5TYXZlRW52aXJvbm1lbnRBc0NvZGVFdmVudC5lbWl0KHJlcSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2F2ZVByb2plY3RBc0NvZGUocmVxOiBTYXZlUHJvamVjdEFzQ29kZUV2ZW50UmVxdWVzdCk6IHZvaWQge1xyXG4gICAgdGhpcy5TYXZlUHJvamVjdEFzQ29kZUV2ZW50LmVtaXQocmVxKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTZXRDcmVhdGluZ1Byb2plY3QoY3JlYXRpbmdQcm9qZWN0OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLlNldENyZWF0aW5nUHJvamVjdEV2ZW50LmVtaXQoY3JlYXRpbmdQcm9qZWN0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTZXRFZGl0UHJvamVjdFNldHRpbmdzKHByb2plY3RMb29rdXA6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5TZXRFZGl0UHJvamVjdFNldHRpbmdzRXZlbnQuZW1pdChwcm9qZWN0TG9va3VwKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVbnBhY2tMb3dDb2RlVW5pdChyZXE6IFVucGFja0xvd0NvZGVVbml0UmVxdWVzdCk6IHZvaWQge1xyXG4gICAgdGhpcy5VbnBhY2tMb3dDb2RlVW5pdEV2ZW50LmVtaXQocmVxKTtcclxuICB9XHJcblxyXG4gIC8vICBIZWxwZXJzXHJcbn1cclxuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb25zLWZsb3ctZXZlbnRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvYXBwbGljYXRpb25zLWZsb3cvYXBwbGljYXRpb25zLWZsb3cvcHJvamVjdHMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9hcHBsaWNhdGlvbnMtZmxvdy1ldmVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQzs7QUFpQm5FLE1BQU0sT0FBTyxpQ0FBaUM7Q0FNN0M7QUFFRCxNQUFNLE9BQU8sMkJBQTJCO0NBTXZDO0FBRUQsTUFBTSxPQUFPLGlDQUFpQztDQU03QztBQUVELE1BQU0sT0FBTyw2QkFBNkI7Q0FJekM7QUFLRCxNQUFNLE9BQU8sNkJBQTZCO0lBa0N4QyxlQUFlO0lBQ2Y7UUFDRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU3QyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVuRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVyRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUvQyxJQUFJLENBQUMseUJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVyRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsRCxJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV0RCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsY0FBYztJQUNQLGlCQUFpQixDQUFDLFNBQWlCO1FBQ3hDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFNBQWlCO1FBQ3pDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLGFBQWEsQ0FBQyxhQUFxQjtRQUN4QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxRQUFnQjtRQUN6QyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxvQkFBb0I7UUFDekIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxvREFBb0Q7SUFDcEQsOENBQThDO0lBQzlDLElBQUk7SUFFRyxvQkFBb0I7UUFDekIsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxHQUFzQztRQUNqRSxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxlQUFlLENBQUMsR0FBZ0M7UUFDckQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sb0JBQW9CLENBQUMsR0FBcUI7UUFDL0MsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0scUJBQXFCLENBQUMsR0FBc0M7UUFDakUsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsR0FBa0M7UUFDekQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsZUFBd0I7UUFDaEQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU0sc0JBQXNCLENBQUMsYUFBcUI7UUFDakQsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0saUJBQWlCLENBQUMsR0FBNkI7UUFDcEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QyxDQUFDOzs7O1lBL0hGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRWFDREZTTW9kaWZpZXIsIEVhQ0Vudmlyb25tZW50QXNDb2RlIH0gZnJvbSAnLi4vbW9kZWxzL2VhYy5tb2RlbHMnO1xyXG5pbXBvcnQge1xyXG4gIEVhQ0FwcGxpY2F0aW9uQXNDb2RlLFxyXG4gIEVhQ0FydGlmYWN0LFxyXG4gIEVhQ0RhdGFUb2tlbixcclxuICBFYUNEZXZPcHNBY3Rpb24sXHJcbiAgRWFDUHJvamVjdEFzQ29kZSxcclxuICBFYUNTZWNyZXQsXHJcbiAgRWFDU291cmNlQ29udHJvbCxcclxufSBmcm9tICcuLi9tb2RlbHMvZWFjLm1vZGVscyc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VBc0NvZGUgfSBmcm9tICcuLi9tb2RlbHMvZWFjLm1vZGVscyc7XHJcbmltcG9ydCB7XHJcbiAgR2l0SHViV29ya2Zsb3dSdW4sXHJcbiAgVW5wYWNrTG93Q29kZVVuaXRSZXF1ZXN0LFxyXG59IGZyb20gJy4uL3N0YXRlL2FwcGxpY2F0aW9ucy1mbG93LnN0YXRlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBTYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudFJlcXVlc3Qge1xyXG4gIHB1YmxpYyBBcHBsaWNhdGlvbj86IEVhQ0FwcGxpY2F0aW9uQXNDb2RlO1xyXG5cclxuICBwdWJsaWMgQXBwbGljYXRpb25Mb29rdXA/OiBzdHJpbmc7XHJcblxyXG4gIHB1YmxpYyBQcm9qZWN0TG9va3VwPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0IHtcclxuICBwdWJsaWMgTW9kaWZpZXI6IEVhQ0RGU01vZGlmaWVyO1xyXG5cclxuICBwdWJsaWMgTW9kaWZpZXJMb29rdXA6IHN0cmluZztcclxuXHJcbiAgcHVibGljIFByb2plY3RMb29rdXA6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50UmVxdWVzdCB7XHJcbiAgcHVibGljIEVudGVycHJpc2VEYXRhVG9rZW5zPzogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNEYXRhVG9rZW4gfTtcclxuXHJcbiAgcHVibGljIEVudmlyb25tZW50PzogRWFDRW52aXJvbm1lbnRBc0NvZGU7XHJcblxyXG4gIHB1YmxpYyBFbnZpcm9ubWVudExvb2t1cD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFNhdmVQcm9qZWN0QXNDb2RlRXZlbnRSZXF1ZXN0IHtcclxuICBwdWJsaWMgUHJvamVjdD86IEVhQ1Byb2plY3RBc0NvZGU7XHJcblxyXG4gIHB1YmxpYyBQcm9qZWN0TG9va3VwPzogc3RyaW5nO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwbGljYXRpb25zRmxvd0V2ZW50c1NlcnZpY2Uge1xyXG4gIC8vICBGaWVsZHNcclxuXHJcbiAgLy8gIFByb3BlcnRpZXNcclxuICBwdWJsaWMgRGVsZXRlQXBwbGljYXRpb25FdmVudDogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gIHB1YmxpYyBEZWxldGVEZXZPcHNBY3Rpb25FdmVudDogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gIHB1YmxpYyBEZWxldGVQcm9qZWN0RXZlbnQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+O1xyXG5cclxuICBwdWJsaWMgRGVsZXRlU291cmNlQ29udHJvbEV2ZW50OiBFdmVudEVtaXR0ZXI8c3RyaW5nPjtcclxuXHJcbiAgcHVibGljIEVuc3VyZVVzZXJFbnRlcnByaXNlRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+O1xyXG5cclxuICAvLyBwdWJsaWMgTGlzdFByb2plY3RzRXZlbnQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgcHVibGljIExvYWRFbnRlcnByaXNlQXNDb2RlRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+O1xyXG5cclxuICBwdWJsaWMgU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnQ6IEV2ZW50RW1pdHRlcjxTYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudFJlcXVlc3Q+O1xyXG5cclxuICBwdWJsaWMgU2F2ZURGU01vZGlmaWVyRXZlbnQ6IEV2ZW50RW1pdHRlcjxTYXZlREZTTW9kaWZpZXJFdmVudFJlcXVlc3Q+O1xyXG5cclxuICBwdWJsaWMgU2F2ZUVudGVycHJpc2VBc0NvZGVFdmVudDogRXZlbnRFbWl0dGVyPEVudGVycHJpc2VBc0NvZGU+O1xyXG5cclxuICBwdWJsaWMgU2F2ZUVudmlyb25tZW50QXNDb2RlRXZlbnQ6IEV2ZW50RW1pdHRlcjxTYXZlRW52aXJvbm1lbnRBc0NvZGVFdmVudFJlcXVlc3Q+O1xyXG5cclxuICBwdWJsaWMgU2F2ZVByb2plY3RBc0NvZGVFdmVudDogRXZlbnRFbWl0dGVyPFNhdmVQcm9qZWN0QXNDb2RlRXZlbnRSZXF1ZXN0PjtcclxuXHJcbiAgcHVibGljIFNldENyZWF0aW5nUHJvamVjdEV2ZW50OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XHJcblxyXG4gIHB1YmxpYyBTZXRFZGl0UHJvamVjdFNldHRpbmdzRXZlbnQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+O1xyXG5cclxuICBwdWJsaWMgVW5wYWNrTG93Q29kZVVuaXRFdmVudDogRXZlbnRFbWl0dGVyPFVucGFja0xvd0NvZGVVbml0UmVxdWVzdD47XHJcblxyXG4gIC8vIENvbnN0cnVjdG9yc1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5EZWxldGVBcHBsaWNhdGlvbkV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuRGVsZXRlRGV2T3BzQWN0aW9uRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5EZWxldGVQcm9qZWN0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5EZWxldGVTb3VyY2VDb250cm9sRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5FbnN1cmVVc2VyRW50ZXJwcmlzZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuTG9hZEVudGVycHJpc2VBc0NvZGVFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICB0aGlzLlNhdmVBcHBsaWNhdGlvbkFzQ29kZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuU2F2ZURGU01vZGlmaWVyRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5TYXZlRW50ZXJwcmlzZUFzQ29kZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuU2F2ZUVudmlyb25tZW50QXNDb2RlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5TYXZlUHJvamVjdEFzQ29kZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRoaXMuU2V0Q3JlYXRpbmdQcm9qZWN0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5TZXRFZGl0UHJvamVjdFNldHRpbmdzRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGhpcy5VbnBhY2tMb3dDb2RlVW5pdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIH1cclxuXHJcbiAgLy8gQVBJIE1ldGhvZHNcclxuICBwdWJsaWMgRGVsZXRlQXBwbGljYXRpb24oYXBwTG9va3VwOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuRGVsZXRlQXBwbGljYXRpb25FdmVudC5lbWl0KGFwcExvb2t1cCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRGVsZXRlRGV2T3BzQWN0aW9uKGRvYUxvb2t1cDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLkRlbGV0ZURldk9wc0FjdGlvbkV2ZW50LmVtaXQoZG9hTG9va3VwKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEZWxldGVQcm9qZWN0KHByb2plY3RMb29rdXA6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5EZWxldGVQcm9qZWN0RXZlbnQuZW1pdChwcm9qZWN0TG9va3VwKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEZWxldGVTb3VyY2VDb250cm9sKHNjTG9va3VwOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuRGVsZXRlU291cmNlQ29udHJvbEV2ZW50LmVtaXQoc2NMb29rdXApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEVuc3VyZVVzZXJFbnRlcnByaXNlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5FbnN1cmVVc2VyRW50ZXJwcmlzZUV2ZW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIC8vIHB1YmxpYyBMaXN0UHJvamVjdHMod2l0aExvYWRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAvLyAgIHRoaXMuTGlzdFByb2plY3RzRXZlbnQuZW1pdCh3aXRoTG9hZGluZyk7XHJcbiAgLy8gfVxyXG5cclxuICBwdWJsaWMgTG9hZEVudGVycHJpc2VBc0NvZGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLkxvYWRFbnRlcnByaXNlQXNDb2RlRXZlbnQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNhdmVBcHBsaWNhdGlvbkFzQ29kZShyZXE6IFNhdmVBcHBsaWNhdGlvbkFzQ29kZUV2ZW50UmVxdWVzdCk6IHZvaWQge1xyXG4gICAgdGhpcy5TYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudC5lbWl0KHJlcSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2F2ZURGU01vZGlmaWVyKHJlcTogU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0KTogdm9pZCB7XHJcbiAgICB0aGlzLlNhdmVERlNNb2RpZmllckV2ZW50LmVtaXQocmVxKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTYXZlRW50ZXJwcmlzZUFzQ29kZShlYWM6IEVudGVycHJpc2VBc0NvZGUpOiB2b2lkIHtcclxuICAgIHRoaXMuU2F2ZUVudGVycHJpc2VBc0NvZGVFdmVudC5lbWl0KGVhYyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2F2ZUVudmlyb25tZW50QXNDb2RlKHJlcTogU2F2ZUVudmlyb25tZW50QXNDb2RlRXZlbnRSZXF1ZXN0KTogdm9pZCB7XHJcbiAgICB0aGlzLlNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50LmVtaXQocmVxKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTYXZlUHJvamVjdEFzQ29kZShyZXE6IFNhdmVQcm9qZWN0QXNDb2RlRXZlbnRSZXF1ZXN0KTogdm9pZCB7XHJcbiAgICB0aGlzLlNhdmVQcm9qZWN0QXNDb2RlRXZlbnQuZW1pdChyZXEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNldENyZWF0aW5nUHJvamVjdChjcmVhdGluZ1Byb2plY3Q6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuU2V0Q3JlYXRpbmdQcm9qZWN0RXZlbnQuZW1pdChjcmVhdGluZ1Byb2plY3QpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNldEVkaXRQcm9qZWN0U2V0dGluZ3MocHJvamVjdExvb2t1cDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLlNldEVkaXRQcm9qZWN0U2V0dGluZ3NFdmVudC5lbWl0KHByb2plY3RMb29rdXApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFVucGFja0xvd0NvZGVVbml0KHJlcTogVW5wYWNrTG93Q29kZVVuaXRSZXF1ZXN0KTogdm9pZCB7XHJcbiAgICB0aGlzLlVucGFja0xvd0NvZGVVbml0RXZlbnQuZW1pdChyZXEpO1xyXG4gIH1cclxuXHJcbiAgLy8gIEhlbHBlcnNcclxufVxyXG4iXX0=