@esfaenza/core 15.2.22 → 15.2.24

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.
@@ -85,7 +85,7 @@ const MODULES = [
85
85
  // ES
86
86
  EsTableModule.forRoot(),
87
87
  FormsAndValidationsModule.forRoot({ acocustom: "O" }),
88
- ExtensionsModule.forRoot({ allow_utc: true }),
88
+ ExtensionsModule.forRoot(),
89
89
  LocalizationModule.forRoot({ localizationMissingPolicy: LocalizationMissingPolicy.PrintSource, defaultLocale: 'it-IT' }),
90
90
  AccessControlModule.forRoot({ contextAwareKey: "O", defaultCondition: '(R:Jace Admin || R:Jace Support)' }),
91
91
  HttpserviceModule.forRoot(),
@@ -218,4 +218,4 @@ export var DebugFlags;
218
218
  DebugFlags[DebugFlags["Charts"] = 64] = "Charts";
219
219
  DebugFlags[DebugFlags["All"] = 127] = "All";
220
220
  })(DebugFlags || (DebugFlags = {}));
221
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQTZCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQVUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxtQ0FBbUMsQ0FBQztBQUUzQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxzQkFBc0IsQ0FBQztBQUU5QixLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsSSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUseUJBQXlCLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENB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QUUsb0JBQW9CLElBQUksb0JBQW9CLEVBQUU7Z0JBQ2pHLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRTtnQkFDaEUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFO2dCQUN4QyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUU7YUFDekU7U0FDSixDQUFDO0lBQ04sQ0FBQzs7K0dBeEVRLGtCQUFrQjtnSEFBbEIsa0JBQWtCLGlCQUhaLFlBQVksYUFsRTNCLHVCQUF1QjtRQUN2QixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGdCQUFnQjtnSEFrRVAsa0JBQWtCLFlBRmQsT0FBTzsyRkFFWCxrQkFBa0I7a0JBSjlCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUM1QixPQUFPLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztpQkFDeEI7O0FBNEVELE1BQU0sT0FBTyx3QkFBd0I7Q0FtQ3BDO0FBRUQsTUFBTSxDQUFOLElBQVksVUFVWDtBQVZELFdBQVksVUFBVTtJQUNsQiwyQ0FBUSxDQUFBO0lBQ1IsNkRBQXNCLENBQUE7SUFDdEIsdURBQW1CLENBQUE7SUFDbkIsNkRBQXNCLENBQUE7SUFDdEIsMkNBQWEsQ0FBQTtJQUNiLGtEQUFnQixDQUFBO0lBQ2hCLDBEQUFvQixDQUFBO0lBQ3BCLGdEQUFlLENBQUE7SUFDZiwyQ0FBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBVlcsVUFBVSxLQUFWLFVBQVUsUUFVckIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IE5nTW9kdWxlLCBFcnJvckhhbmRsZXIsIExPQ0FMRV9JRCwgQVBQX0lOSVRJQUxJWkVSLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBUeXBlLCBpc0Rldk1vZGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IFJvdXRlcywgUm91dGVyTW9kdWxlLCBOb1ByZWxvYWRpbmcsIFJPVVRFUyB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUywgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcclxuaW1wb3J0IHsgRVZFTlRfTUFOQUdFUl9QTFVHSU5TIH0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuaW1wb3J0IHsgU2VydmljZVdvcmtlck1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9zZXJ2aWNlLXdvcmtlclwiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCBcIkBhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2dsb2JhbC9pdFwiO1xyXG5cclxuLy8gUGx1Z2luc1xyXG5pbXBvcnQgeyBOZ3hNYXREYXRlQWRhcHRlciwgTkdYX01BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tIFwiQGFuZ3VsYXItbWF0ZXJpYWwtY29tcG9uZW50cy9kYXRldGltZS1waWNrZXJcIjtcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gXCJuZ3gtY29va2llLXNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVG9hc3RyTW9kdWxlIH0gZnJvbSBcIm5neC10b2FzdHJcIjtcclxuaW1wb3J0IFwid2lkZ3N0ZXIvd2lkZ3N0ZXIuanNcIjtcclxuXHJcbi8vIEVTXHJcbmltcG9ydCB7IEh0dHBzZXJ2aWNlTW9kdWxlLCBIdHRwU2VydmljZUV4dGVuc2lvbnMsIEhUVFBTZXJ2aWNlLCBIVFRQX0RFQlVHX01PREUsIEhUVFBfSU5WQUxJREFUSU9OIH0gZnJvbSBcIkBlc2ZhZW56YS9odHRwc2VydmljZVwiO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25Nb2R1bGUsIExvY2FsaXphdGlvblNlcnZpY2UsIExvY2FsaXphdGlvbk1pc3NpbmdQb2xpY3ksIExPQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9sb2NhbGl6YXRpb25zXCI7XHJcbmltcG9ydCB7IFNpZ25hbHJOb3RpZmljYXRpb25zTW9kdWxlLCBTR1JfREVCVUdfTU9ERSwgQmFzZU1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9zaWduYWxyLW5vdGlmaWNhdGlvbnNcIjtcclxuaW1wb3J0IHsgRm9ybXNBbmRWYWxpZGF0aW9uc01vZHVsZSwgTmd4RXhwYW5kZWREYXlKc0RhdGVBZGFwdGVyIH0gZnJvbSBcIkBlc2ZhZW56YS9mb3Jtcy1hbmQtdmFsaWRhdGlvbnNcIjtcclxuaW1wb3J0IHsgQWNjZXNzQ29udHJvbE1vZHVsZSwgQWNjZXNzQ29udHJvbFNlcnZpY2UsIEFDQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9hY2Nlc3MtY29udHJvbFwiO1xyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciwgRXNDaGFydHNNb2R1bGUsIEVTQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9lcy1jaGFydHNcIjtcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNNb2R1bGUsIFBSRUZfREVCVUdfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvcHJlZmVyZW5jZXNcIjtcclxuaW1wb3J0IHsgRXh0ZW5zaW9uc01vZHVsZSwgRVhUX0RFQlVHX01PREUgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL25neC1jb250ZXh0bWVudVwiO1xyXG5pbXBvcnQgeyBEcmFndWxhTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL25neC1kcmFndWxhJztcclxuaW1wb3J0IHsgRXNUYWJsZU1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvZXMtdGFibGVcIjtcclxuXHJcbi8vIENvcmVcclxuaW1wb3J0IHsgQVBQRXJyb3JIYW5kbGVyLCBIVFRQU2VydmljZUV4dGVuc2lvbnMsIEFwcGxpY2F0aW9uUHJlZmVyZW5jZXNQZXJzaXN0b3IsIEFwcGxpY2F0aW9uQ2FjaGVQZXJzaXN0b3IsIFNlc3Npb25SZXRyaWV2ZXIsIE91dFpvbmVFdmVudFBsdWdpbiwgVG9rZW5TZXJ2aWNlLCBHbG9iYWxTZWFyY2hTZXJ2aWNlLCBDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UsIE1lbnVGaWx0ZXJpbmdTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IFBhZ2VOb3RGb3VuZENvbXBvbmVudCwgU2VydmVyRXJyb3JDb21wb25lbnQsIEFuZ3VsYXJFcnJvckNvbXBvbmVudCwgRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCwgSmFjZUxvZ2luQ29tcG9uZW50LCBQYWdlc0NvbXBvbmVudCwgUmVkaXJlY3RlckNvbXBvbmVudCwgQ29tcG9uZW50c01vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uTWVudSwgRW52T3B0aW9ucywgQWNjb3VudFNjb3BlLCBNRU5VLCBNRU5VX0xPQ0FMSVpBVElPTiwgUkVESVJFQ1RfTUFQLCBVU0VfRkFLRV9BQ0NFU1NfVE9LRU4sIE5BVkJBUl9FWFRFTlNJT05TIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiXHJcbmltcG9ydCB7IFJPVVRFLCBFTUJFRERFRF9ST1VURSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIlxyXG5pbXBvcnQgeyBUZW1wbGF0ZUNvbW1vbiB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9tb2R1bGVzXCI7XHJcblxyXG4vLyBSeEpzXHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG4vLyBCb290c3RyYXBcclxuaW1wb3J0IHsgUHJvZ3Jlc3NiYXJNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9wcm9ncmVzc2JhclwiO1xyXG5pbXBvcnQgeyBUaW1lcGlja2VyTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvdGltZXBpY2tlclwiO1xyXG5pbXBvcnQgeyBCc0Ryb3Bkb3duTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvZHJvcGRvd25cIjtcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3Rvb2x0aXBcIjtcclxuaW1wb3J0IHsgTW9kYWxNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9tb2RhbFwiO1xyXG5cclxuLy8gQXBwbGljYXppb25lXHJcbmltcG9ydCB7IEFwcENvbXBvbmVudCB9IGZyb20gXCIuL2FwcC5jb21wb25lbnRcIjtcclxuXHJcbi8vIFJlcG9zaXRvcmllc1xyXG5jb25zdCBHRVRfSmFjZV9HZXRBY2NvdW50U2NvcGU6IHN0cmluZyA9IFwiL2FwaS9KYWNlL0dldEFjY291bnRTY29wZVwiO1xyXG5jb25zdCBHRVRfQXBwQ29uZmlnX0dldEFwcENvbmZpZzogc3RyaW5nID0gXCIvYXBpL0FwcENvbmZpZy9HZXRBcHBDb25maWdcIjtcclxuXHJcbmRlY2xhcmUgdmFyIG15Y29uZmlnOiBFbnZPcHRpb25zO1xyXG5cclxuY29uc3QgYmFzZUFwcFJvdXRlczogUm91dGVzID0gW1xyXG4gICAgeyBwYXRoOiBcIlwiLCByZWRpcmVjdFRvOiBcInBhZ2VzL3tlbXB0eVJvdXRlUmVkaXJlY3R9XCIsIHBhdGhNYXRjaDogXCJmdWxsXCIgfSxcclxuICAgIHsgcGF0aDogRU1CRURERURfUk9VVEUsIGNvbXBvbmVudDogRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBST1VURSwgY29tcG9uZW50OiBQYWdlc0NvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcInJkXCIsIGNvbXBvbmVudDogUmVkaXJlY3RlckNvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcImxvZ2luXCIsIGNvbXBvbmVudDogSmFjZUxvZ2luQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiaXNlcnJcIiwgY29tcG9uZW50OiBTZXJ2ZXJFcnJvckNvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcImFuZXJyXCIsIGNvbXBvbmVudDogQW5ndWxhckVycm9yQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiKipcIiwgY29tcG9uZW50OiBQYWdlTm90Rm91bmRDb21wb25lbnQgfVxyXG5dO1xyXG5cclxuY29uc3QgTU9EVUxFUyA9IFtcclxuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFRlbXBsYXRlQ29tbW9uLFxyXG4gICAgQ29tcG9uZW50c01vZHVsZSxcclxuXHJcbiAgICAvLyBBdHRlbnppb25lIGEgbGFzY2lhcmxvIGF0dGl2byBpbiBuZyBzZXJ2ZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvNDc0NTVcclxuICAgIFNlcnZpY2VXb3JrZXJNb2R1bGUucmVnaXN0ZXIoJ25nc3ctd29ya2VyLmpzJywgeyBlbmFibGVkOiAhaXNEZXZNb2RlKCkgfSksXHJcbiAgICBSb3V0ZXJNb2R1bGUuZm9yUm9vdChbXSwgeyB1c2VIYXNoOiB0cnVlLCBwcmVsb2FkaW5nU3RyYXRlZ3k6IE5vUHJlbG9hZGluZywgb25TYW1lVXJsTmF2aWdhdGlvbjogXCJyZWxvYWRcIiB9KSxcclxuXHJcbiAgICAvLyBFU1xyXG4gICAgRXNUYWJsZU1vZHVsZS5mb3JSb290KCksXHJcbiAgICBGb3Jtc0FuZFZhbGlkYXRpb25zTW9kdWxlLmZvclJvb3QoeyBhY29jdXN0b206IFwiT1wiIH0pLFxyXG4gICAgRXh0ZW5zaW9uc01vZHVsZS5mb3JSb290KHsgYWxsb3dfdXRjOiB0cnVlIH0pLFxyXG4gICAgTG9jYWxpemF0aW9uTW9kdWxlLmZvclJvb3QoeyBsb2NhbGl6YXRpb25NaXNzaW5nUG9saWN5OiBMb2NhbGl6YXRpb25NaXNzaW5nUG9saWN5LlByaW50U291cmNlLCBkZWZhdWx0TG9jYWxlOiAnaXQtSVQnIH0pLFxyXG4gICAgQWNjZXNzQ29udHJvbE1vZHVsZS5mb3JSb290KHsgY29udGV4dEF3YXJlS2V5OiBcIk9cIiwgZGVmYXVsdENvbmRpdGlvbjogJyhSOkphY2UgQWRtaW4gfHwgUjpKYWNlIFN1cHBvcnQpJyB9KSxcclxuICAgIEh0dHBzZXJ2aWNlTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIFNpZ25hbHJOb3RpZmljYXRpb25zTW9kdWxlLmZvclJvb3QoeyBlbmRwb2ludFVybDogJ25vdGlmeScsIHVzZU1lc3NhZ2VQYWNrOiB0cnVlIH0pLFxyXG4gICAgUHJlZmVyZW5jZXNNb2R1bGUuZm9yUm9vdCh7IHJldHJpZXZlQWxsQXRTdGFydDogdHJ1ZSwgc2Vzc2lvblJldHJpZXZlcjogU2Vzc2lvblJldHJpZXZlciwgcHJlZmVyZW5jZVBlcnNpc3RvcjogQXBwbGljYXRpb25QcmVmZXJlbmNlc1BlcnNpc3RvciwgY2FjaGVQZXJzaXN0b3I6IEFwcGxpY2F0aW9uQ2FjaGVQZXJzaXN0b3IgfSksXHJcbiAgICBFc0NoYXJ0c01vZHVsZS5mb3JSb290KCksXHJcblxyXG4gICAgLy8gQm9vdHN0cmFwXHJcbiAgICBUb29sdGlwTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIE1vZGFsTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIFByb2dyZXNzYmFyTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIEJzRHJvcGRvd25Nb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgVG9hc3RyTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIFRpbWVwaWNrZXJNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgQ29udGV4dE1lbnVNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgRHJhZ3VsYU1vZHVsZS5mb3JSb290KClcclxuXTtcclxuXHJcbi8vIEdlbmVyYXRvcmUgZGVpIGZvcm1hdGkgZGF0YVxyXG52YXIgZm9ybWF0cyA9IChzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JykgPT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICBwYXJzZTogeyBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyArIChzdHlsZSA9PT0gJ2xvbmcnID8gJyBISDptbTpzcycgOiAnJykgfSxcclxuICAgICAgICBkaXNwbGF5OiB7XHJcbiAgICAgICAgICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknICsgKHN0eWxlID09PSAnbG9uZycgPyAnIEhIOm1tOnNzJyA6ICcnKSxcclxuICAgICAgICAgICAgbW9udGhZZWFyTGFiZWw6ICdNTSBZWVlZJyxcclxuICAgICAgICAgICAgZGF0ZUExMXlMYWJlbDogJ0REL01NL1lZWVknICsgKHN0eWxlID09PSAnbG9uZycgPyAnIEhIOm1tOnNzJyA6ICcnKSxcclxuICAgICAgICAgICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU0gWVlZWScsXHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxufVxyXG5cclxuY29uc3QgbG9jYWxlRmFjdG9yeSA9IChsb2M6IExvY2FsaXphdGlvblNlcnZpY2UpID0+IGxvYy5TbWFsbExvY2FsZTtcclxuXHJcbmNvbnN0IFBST1ZJREVSUyA9IFtcclxuICAgIENvb2tpZVNlcnZpY2UsXHJcblxyXG4gICAgLy8gUHJvdmlkZXJzIGFwcGxpY2F0aXZpXHJcbiAgICB7IHByb3ZpZGU6IEVycm9ySGFuZGxlciwgdXNlQ2xhc3M6IEFQUEVycm9ySGFuZGxlciB9LFxyXG4gICAgeyBwcm92aWRlOiBFVkVOVF9NQU5BR0VSX1BMVUdJTlMsIHVzZUV4aXN0aW5nOiBPdXRab25lRXZlbnRQbHVnaW4sIG11bHRpOiB0cnVlIH0sXHJcbiAgICB7IHByb3ZpZGU6IEh0dHBTZXJ2aWNlRXh0ZW5zaW9ucywgdXNlQ2xhc3M6IEhUVFBTZXJ2aWNlRXh0ZW5zaW9ucyB9LFxyXG5cclxuICAgIC8vIExvY2FsZSBlIGdlc3Rpb25pIGRlbGxlIGRhdGVcclxuICAgIHsgcHJvdmlkZTogTE9DQUxFX0lELCB1c2VGYWN0b3J5OiBsb2NhbGVGYWN0b3J5LCBkZXBzOiBbTG9jYWxpemF0aW9uU2VydmljZV0gfSxcclxuICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLCB1c2VGYWN0b3J5OiBsb2NhbGVGYWN0b3J5LCBkZXBzOiBbTG9jYWxpemF0aW9uU2VydmljZV0gfSxcclxuICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IGZvcm1hdHMoJ3Nob3J0JykgfSxcclxuXHJcbiAgICAvLyBRdWVzdGkgZHVlIHNvbm8gcHJvdmlkYXRpIGRhbCBGb3Jtc0FuZFZhbGlkYXRpb25Nb2R1bGUgc3Rlc3NvLCBwZXLDsiBxdWVzdCd1bHRpbW8gw6ggZGVmaW5pdG8gaW4gZm9yUm9vdCBzb2xvIGxhdG8gY29tcG9uZW50aSBzaGFyZWQsIFxyXG4gICAgLy8gcXVpbmRpIHBlciByZW5kZXJlIHF1ZXN0aSBwcm92aWRlciBkaXNwb25pYmlsaSBhbmNoZSBhIG1vZHVsaSBlc3Rlcm5pIGRldm8gcmlwcm92aWRhcmxpIGFuY2hlIHF1aVxyXG4gICAgeyBwcm92aWRlOiBOR1hfTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IGZvcm1hdHMoJ2xvbmcnKSB9LFxyXG4gICAgeyBwcm92aWRlOiBOZ3hNYXREYXRlQWRhcHRlciwgdXNlQ2xhc3M6IE5neEV4cGFuZGVkRGF5SnNEYXRlQWRhcHRlciB9XHJcbl07XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbQXBwQ29tcG9uZW50XSxcclxuICAgIGltcG9ydHM6IFsuLi5NT0RVTEVTXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNGYWVuemFDb3JlTW9kdWxlIHtcclxuICAgIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IEVzRmFlbnphQ29yZU1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RXNGYWVuemFDb3JlTW9kdWxlPiB7XHJcbiAgICAgICAgaWYgKGNvbmZpZy5yb3V0ZXMpIHtcclxuICAgICAgICAgICAgYmFzZUFwcFJvdXRlc1swXS5yZWRpcmVjdFRvID0gYHBhZ2VzLyR7Y29uZmlnLmVtcHR5Um91dGVSZWRpcmVjdCB8fCAnZGFzaGJvYXJkJ31gO1xyXG4gICAgICAgICAgICBiYXNlQXBwUm91dGVzLmZpbHRlcih0ID0+IFtcInBhZ2VzXCIsIFwicGFnZXNfZXh0XCJdLmluY2x1ZGVzKHQucGF0aCkpLmZvckVhY2gocGF0aCA9PiB7IHBhdGguY2hpbGRyZW4gPSBjb25maWcucm91dGVzOyB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uZmlnLmRlYnVnTW9kZSA9ICghaXNEZXZNb2RlKCkgJiYgIWNvbmZpZy5mb3JjZURlYnVnTW9kZUZvclByb2RCdWlsZHMpID8gRGVidWdGbGFncy5Ob25lIDogKGNvbmZpZy5kZWJ1Z01vZGUgfHwgRGVidWdGbGFncy5BbGwpO1xyXG5cclxuICAgICAgICBsZXQgbWVyZ2VkQXBwSW5pdGlhbGl6ZXIgPSAoaHR0cDogSFRUUFNlcnZpY2UsIGJ0czogVG9rZW5TZXJ2aWNlLCBhYWM6IEFjY2Vzc0NvbnRyb2xTZXJ2aWNlKSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gTG9hZGluZyBBcHBDb25maWcgYW5kIEFjY291bnQgU2NvcGUuLi5cIiwgXCJiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3dcIik7XHJcbiAgICAgICAgICAgICAgICBsZXQgcmVhbE9ic2VydmFibGUgPSBmb3JrSm9pbihcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcENvbmZpZzogaHR0cC5nZXQ8RW52T3B0aW9ucz4oR0VUX0FwcENvbmZpZ19HZXRBcHBDb25maWcsIG51bGwsIG51bGwsIGZhbHNlKS5waXBlKGNhdGNoRXJyb3IoXyA9PiBvZih7fSkpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGU6IGh0dHAuZ2V0PEFjY291bnRTY29wZT4oR0VUX0phY2VfR2V0QWNjb3VudFNjb3BlLCBudWxsLCBudWxsLCBmYWxzZSkucGlwZShjYXRjaEVycm9yKF8gPT4gb2YobnVsbCkpKVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIGxldCB1c2VkT2JzZXJ2YWJsZSA9IGNvbmZpZy5vcHRpb25zQW5kU2NvcGVQcm92aWRlciB8fCByZWFsT2JzZXJ2YWJsZTtcclxuXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdXNlZE9ic2VydmFibGUucGlwZShcclxuICAgICAgICAgICAgICAgICAgICB0YXAoKHJlczogeyBhcHBDb25maWc6IEVudk9wdGlvbnMsIHNjb3BlOiBBY2NvdW50U2NvcGUgfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBteWNvbmZpZyA9IHJlcy5hcHBDb25maWc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ0cy5hY2NvdW50U2NvcGUgPSByZXMuc2NvcGU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gYXBwQ29uZmlnIGFuZCBzY29wZSByZWdpc3RlcmVkXCIsIFwiYmFja2dyb3VuZC1jb2xvcjogeWVsbG93XCIpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJ0cy5hY2NvdW50U2NvcGUpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYWMuaW5pdGlhbGl6ZUlkZW50aXR5KGJ0cy5nZXRKYWNlSWRlbnRpdHkoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKF8gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWNvbmZpZy5pbml0aWFsaXplckZ1bmN0aW9uKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIiVjW0FQUF9JTklUSUFMSVpFUl0gTG9hZGluZyBjdXN0b20gYXBwbGljYXRpb24gaW5pdGlhbGl6YXRpb25cIiwgXCJiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3dcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb25maWcuaW5pdGlhbGl6ZXJGdW5jdGlvbihodHRwLCBidHMsIGFhYykoKS5waXBlKHRhcChfID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiJWNbQVBQX0lOSVRJQUxJWkVSXSBJbml0aWFsaXphdGlvbiBpcyBvdmVyXCIsIFwiYmFja2dyb3VuZC1jb2xvcjogeWVsbG93XCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBuZ01vZHVsZTogRXNGYWVuemFDb3JlTW9kdWxlLFxyXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICAgICAgICAgIC8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKiBQcm92aWRlciBzdGF0aWNpICoqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cclxuICAgICAgICAgICAgICAgIC4uLlBST1ZJREVSUyxcclxuXHJcbiAgICAgICAgICAgICAgICAvLyAqKioqKioqKioqKioqKioqKioqKioqKiogUHJvdmlkZXIgY3VzdG9taXp6YWJpbGkgKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICAgICAgICAgICAgICAuLi4oIWNvbmZpZy5yZWRpcmVjdGlvbk1hcCA/IFtdIDogW3sgcHJvdmlkZTogUkVESVJFQ1RfTUFQLCB1c2VWYWx1ZTogY29uZmlnLnJlZGlyZWN0aW9uTWFwIH1dKSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBtZXJnZWRBcHBJbml0aWFsaXplciwgZGVwczogW0hUVFBTZXJ2aWNlLCBUb2tlblNlcnZpY2UsIEFjY2Vzc0NvbnRyb2xTZXJ2aWNlXSwgbXVsdGk6IHRydWUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogUk9VVEVTLCB1c2VWYWx1ZTogYmFzZUFwcFJvdXRlcywgbXVsdGk6IHRydWUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTE9DX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkxvY2FsaXphdGlvbnMpID09IERlYnVnRmxhZ3MuTG9jYWxpemF0aW9ucyA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEVYVF9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5FeHRlbnNpb25zKSA9PSBEZWJ1Z0ZsYWdzLkV4dGVuc2lvbnMgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBBQ0NfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuQWNjZXNzQ29udHJvbCkgPT0gRGVidWdGbGFncy5BY2Nlc3NDb250cm9sIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogSFRUUF9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5IdHRwKSA9PSBEZWJ1Z0ZsYWdzLkh0dHAgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBIVFRQX0lOVkFMSURBVElPTiwgdXNlVmFsdWU6IGNvbmZpZz8uaHR0cEludmFsaWRhdGlvbkNhY2hlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFNHUl9ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5TaWduYWxSKSA9PSBEZWJ1Z0ZsYWdzLlNpZ25hbFIgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBQUkVGX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLlByZWZlcmVuY2VzKSA9PSBEZWJ1Z0ZsYWdzLlByZWZlcmVuY2VzIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogRVNDX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkNoYXJ0cykgPT0gRGVidWdGbGFncy5DaGFydHMgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBOQVZCQVJfRVhURU5TSU9OUywgdXNlVmFsdWU6IGNvbmZpZy5uYXZiYXJFeHRlbnNpb25zID8gY29uZmlnLm5hdmJhckV4dGVuc2lvbnMgOiBbXSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBCYXNlQWRhcHRlciwgdXNlQ2xhc3M6IGNvbmZpZz8uY2hhcnRzQWRhcHRlciB8fCBCYXNlQWRhcHRlciB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBCYXNlTWVzc2FnZVNlcnZpY2UsIHVzZUNsYXNzOiBjb25maWc/Lm1lc3NhZ2VTZXJ2aWNlIHx8IEJhc2VNZXNzYWdlU2VydmljZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBHbG9iYWxTZWFyY2hTZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5nbG9iYWxTZWFyY2hTZXJ2aWNlIHx8IEdsb2JhbFNlYXJjaFNlcnZpY2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogQ29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5jb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UgfHwgQ29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE1lbnVGaWx0ZXJpbmdTZXJ2aWNlLCB1c2VDbGFzczogY29uZmlnPy5tZW51RmlsdGVyaW5nU2VydmljZSB8fCBNZW51RmlsdGVyaW5nU2VydmljZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBNRU5VX0xPQ0FMSVpBVElPTiwgdXNlVmFsdWU6IGNvbmZpZy5tZW51TG9jIHx8IG51bGwgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTUVOVSwgdXNlVmFsdWU6IGNvbmZpZy5tZW51IH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFVTRV9GQUtFX0FDQ0VTU19UT0tFTiwgdXNlVmFsdWU6ICEhY29uZmlnLmZha2VBY2Nlc3NUb2tlbiB9LFxyXG4gICAgICAgICAgICBdXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEVzRmFlbnphQ29yZU1vZHVsZUNvbmZpZyB7XHJcbiAgICAvKiBSb3V0ZSBhcHBsaWNhdGl2ZSwgc29sbyBxdWVsbGUgZGVudHJvIGEgKipwYWdlcyoqICovXHJcbiAgICByb3V0ZXMhOiBSb3V0ZXM7XHJcbiAgICAvKiBNZW7DuSBkZWxsYSBzaWRlYmFyIGRlbGwnYXBwbGljYXppb25lICovXHJcbiAgICBtZW51OiBBcHBsaWNhdGlvbk1lbnVbXTtcclxuICAgIC8qIEluZGljYSBzZSB1dGlsaXp6YXJlIGwnYWNjZXNzIHRva2VuIGZpbnRvICovXHJcbiAgICBmYWtlQWNjZXNzVG9rZW4/OiBib29sZWFuO1xyXG4gICAgLyogVGlwbyBkYSB1c2FyZSBwZXIgZ2VuZXJhcmUgbGUgbG9jYWxpenphaXpvbmkgZGVsIG1lbsO5ICovXHJcbiAgICBtZW51TG9jPzogVHlwZTxMb2NhbGl6YXRpb25TZXJ2aWNlPjtcclxuICAgIC8qIFJlZGlyZWN0IHBlciBsYSByb290IGRlbGwnYXBwbGljYXppb25lLCBkaSBkZWZhdWx0IMOoIGltcG9zdGF0byBhICoqZGFzaGJvYXJkKiouIFNlIGFsbCdpbnRlcm5vIGRlbGxlICoqcm91dGVzKiogbm9uIGVzaXN0ZSBsYSByb3V0ZSAqKmRhc2hib2FyZCoqIMOoIGRhIGltcG9zdGFyZSBhZGVndWF0YW1lbnRlICovXHJcbiAgICBlbXB0eVJvdXRlUmVkaXJlY3Q/OiBzdHJpbmc7XHJcbiAgICAvKiBTZSBub24gc3BlY2lmaWNhdGEgdmllbmUgaW1wb3N0YXRhIGF1dG9tYXRpY2FtZW50ZSBhZCBcIkFsbFwiIGluIGZhc2UgZGkgZGVidWcsIFwiTm9uZVwiIGluIHByb2R1emlvbmUgKHF1ZXN0J3VsdGltbyBhIHByZXNjaW5kZXJlLCBhIG1lbm8gY2hlICoqZm9yY2VEZWJ1Z01vZGVGb3JQcm9kQnVpbGRzKiogbm9uIHNpYSB0cnVlKSovXHJcbiAgICBkZWJ1Z01vZGU/OiBEZWJ1Z0ZsYWdzO1xyXG4gICAgLyogUGVybWV0dGUgZGkgZm9yemFyZSBsYSBtb2RhbGl0w6AgZGkgZGVidWcgc3BlY2lmaWNhdGEgYW5jaGUgcGVyIGxlIGJ1aWxkIGRpIHByb2R1emlvbmUsICoqTk9OIElNUE9TVEFSRSBBIFRSVUUqKiBhIG1lbm8gZGkgcmFyaXNzaW1pc3NpbWlzc2ltaSBjYXNpICovXHJcbiAgICBmb3JjZURlYnVnTW9kZUZvclByb2RCdWlsZHM/OiBib29sZWFuO1xyXG4gICAgLyogQ2FjaGUgZGkgaW52YWxpZGF6aW9uZSBwZXIgbGUgY2hpYW1hdGUgaHR0cCAqL1xyXG4gICAgaHR0cEludmFsaWRhdGlvbkNhY2hlPzogYW55O1xyXG4gICAgLyogRnVuemlvbmUgZGkgaW5pemlhbGl6emF6aW9uZSBBUFBfSU5JVElBTElaRVItbGlrZSBjaGUgdmllbmUgcmljaGlhbWF0YSBkb3BvIGFsbGEgZnVuemlvbmUgZGkgaW5pemlhbGl6emF6aW9uZSBkaSBkZWZhdWx0ICovXHJcbiAgICBpbml0aWFsaXplckZ1bmN0aW9uPzogKGh0dHA6IEhUVFBTZXJ2aWNlLCBidHM6IFRva2VuU2VydmljZSwgYWFjOiBBY2Nlc3NDb250cm9sU2VydmljZSkgPT4gKCkgPT4gT2JzZXJ2YWJsZTxhbnk+O1xyXG4gICAgLyogTWFwcGEgZGkgcmVkaXJlY3QgcGVyIHBlcm1ldHRlcmUgYWwgKipSZWRpcmVjdGVyQ29tcG9uZW50KiogZGkgc2FwZXJlIGRvdmUgbmF2aWdhcmUgaW4gYmFzZSBhIE9nZ2V0dG8tUGFyYW1ldHJpICovXHJcbiAgICByZWRpcmVjdGlvbk1hcD86IHsgW2luZGV4OiBzdHJpbmddOiB7IHVybDogc3RyaW5nLCBwYXJhbXM6IHN0cmluZ1tdIH0gfTtcclxuICAgIC8qIEFkYXR0YXRvcmUgZGVpIGdyYWZpY2kgbmVsIGNhc28gdW4gcHJvZ2V0dG8gZm9zc2UgdmVjY2hpbyAoUmltdW92aWJpbGUgcXVhbmRvIHR1dHRpIGkgcHJvZ2V0dGkgdXNhbm8gbmF0aXZhbWVudGUgZXMtY2hhcnRzKSAqL1xyXG4gICAgY2hhcnRzQWRhcHRlcj86IFR5cGU8QmFzZUFkYXB0ZXI+O1xyXG4gICAgLyogU2Vydml6aW8gY2hlIGVzcG9uZSBpIG1lc3NhZ2dpIGRpc3BvbmliaWxpIHN1IFNpZ25hbHIgKi9cclxuICAgIG1lc3NhZ2VTZXJ2aWNlPzogVHlwZTxCYXNlTWVzc2FnZVNlcnZpY2U+O1xyXG4gICAgLyogU2Vydml6aW8gcGVyIGxhIHNlYXJjaCBnbG9iYWxlIGRlbCBtb2R1bG8gKi9cclxuICAgIGdsb2JhbFNlYXJjaFNlcnZpY2U/OiBUeXBlPEdsb2JhbFNlYXJjaFNlcnZpY2U+O1xyXG4gICAgLyogU2Vydml6aW8gcGVyIGZpbHRyYXJlIGxlIHZvY2kgZGkgbWVuw7kgKi9cclxuICAgIG1lbnVGaWx0ZXJpbmdTZXJ2aWNlPzogVHlwZTxNZW51RmlsdGVyaW5nU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBkaSByaWRpcmV6aW9uZSBwZXIgam9iIGNvbXBsZXRhdGkgKi9cclxuICAgIGNvbXBsZXRlZEpvYlJlZGlyZWN0aW9uU2VydmljZT86IFR5cGU8Q29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlPjtcclxuICAgIC8qIEZ1bnppb25lIGRpIG92ZXJyaWRlIHBlciByZWN1cGVyYXJlIGFjY291bnQgc2NvcGUgZSBlbnZvcHRpb25zLiBQdcOyIGFuY2hlIGVzc2VyZSB1dGlsaXp6YXRhIHBlciBmb3JuaXJlIG1vZGVsbGkgZmludGkgZmlubyBhZCBpbXBsZW1lbnRhemlvbmUgKi9cclxuICAgIG9wdGlvbnNBbmRTY29wZVByb3ZpZGVyPzogT2JzZXJ2YWJsZTx7IGFwcENvbmZpZzogRW52T3B0aW9ucywgc2NvcGU6IEFjY291bnRTY29wZSB9PjtcclxuICAgIC8qIExpc3RhIGRlaSBjb21wb25lbnRpIGNvbiBjdWkgZXNwYW5kZXJlIGxhIG5hdmJhciAqL1xyXG4gICAgbmF2YmFyRXh0ZW5zaW9ucz86IFR5cGU8YW55PltdO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBEZWJ1Z0ZsYWdzIHtcclxuICAgIE5vbmUgPSAwLFxyXG4gICAgTG9jYWxpemF0aW9ucyA9IDEgPDwgMCxcclxuICAgIEV4dGVuc2lvbnMgPSAxIDw8IDEsXHJcbiAgICBBY2Nlc3NDb250cm9sID0gMSA8PCAyLFxyXG4gICAgSHR0cCA9IDEgPDwgMyxcclxuICAgIFNpZ25hbFIgPSAxIDw8IDQsXHJcbiAgICBQcmVmZXJlbmNlcyA9IDEgPDwgNSxcclxuICAgIENoYXJ0cyA9IDEgPDwgNixcclxuICAgIEFsbCA9IH4ofjAgPDwgNylcclxufSJdfQ==
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQTZCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQVUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxtQ0FBbUMsQ0FBQztBQUUzQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDMUMsT0FBTyxzQkFBc0IsQ0FBQztBQUU5QixLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsSSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUseUJBQXlCLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENB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RUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUNwSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUN6RCxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUMzSSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUNySSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUMzSSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUMxSCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLHFCQUFxQixFQUFFO2dCQUN2RSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUMvSCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUN4SSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUM3SCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDaEcsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsYUFBYSxJQUFJLFdBQVcsRUFBRTtnQkFDeEUsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxjQUFjLElBQUksa0JBQWtCLEVBQUU7Z0JBQ3ZGLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLElBQUksbUJBQW1CLEVBQUU7Z0JBQzlGLEVBQUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsOEJBQThCLElBQUksOEJBQThCLEVBQUU7Z0JBQy9ILEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsb0JBQW9CLElBQUksb0JBQW9CLEVBQUU7Z0JBQ2pHLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRTtnQkFDaEUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFO2dCQUN4QyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUU7YUFDekU7U0FDSixDQUFDO0lBQ04sQ0FBQzs7K0dBeEVRLGtCQUFrQjtnSEFBbEIsa0JBQWtCLGlCQUhaLFlBQVksYUFsRTNCLHVCQUF1QjtRQUN2QixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGdCQUFnQjtnSEFrRVAsa0JBQWtCLFlBRmQsT0FBTzsyRkFFWCxrQkFBa0I7a0JBSjlCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUM1QixPQUFPLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQztpQkFDeEI7O0FBNEVELE1BQU0sT0FBTyx3QkFBd0I7Q0FtQ3BDO0FBRUQsTUFBTSxDQUFOLElBQVksVUFVWDtBQVZELFdBQVksVUFBVTtJQUNsQiwyQ0FBUSxDQUFBO0lBQ1IsNkRBQXNCLENBQUE7SUFDdEIsdURBQW1CLENBQUE7SUFDbkIsNkRBQXNCLENBQUE7SUFDdEIsMkNBQWEsQ0FBQTtJQUNiLGtEQUFnQixDQUFBO0lBQ2hCLDBEQUFvQixDQUFBO0lBQ3BCLGdEQUFlLENBQUE7SUFDZiwyQ0FBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBVlcsVUFBVSxLQUFWLFVBQVUsUUFVckIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBbmd1bGFyXHJcbmltcG9ydCB7IE5nTW9kdWxlLCBFcnJvckhhbmRsZXIsIExPQ0FMRV9JRCwgQVBQX0lOSVRJQUxJWkVSLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBUeXBlLCBpc0Rldk1vZGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IFJvdXRlcywgUm91dGVyTW9kdWxlLCBOb1ByZWxvYWRpbmcsIFJPVVRFUyB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUywgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcclxuaW1wb3J0IHsgRVZFTlRfTUFOQUdFUl9QTFVHSU5TIH0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuaW1wb3J0IHsgU2VydmljZVdvcmtlck1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9zZXJ2aWNlLXdvcmtlclwiO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCBcIkBhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2dsb2JhbC9pdFwiO1xyXG5cclxuLy8gUGx1Z2luc1xyXG5pbXBvcnQgeyBOZ3hNYXREYXRlQWRhcHRlciwgTkdYX01BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tIFwiQGFuZ3VsYXItbWF0ZXJpYWwtY29tcG9uZW50cy9kYXRldGltZS1waWNrZXJcIjtcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gXCJuZ3gtY29va2llLXNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVG9hc3RyTW9kdWxlIH0gZnJvbSBcIm5neC10b2FzdHJcIjtcclxuaW1wb3J0IFwid2lkZ3N0ZXIvd2lkZ3N0ZXIuanNcIjtcclxuXHJcbi8vIEVTXHJcbmltcG9ydCB7IEh0dHBzZXJ2aWNlTW9kdWxlLCBIdHRwU2VydmljZUV4dGVuc2lvbnMsIEhUVFBTZXJ2aWNlLCBIVFRQX0RFQlVHX01PREUsIEhUVFBfSU5WQUxJREFUSU9OIH0gZnJvbSBcIkBlc2ZhZW56YS9odHRwc2VydmljZVwiO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25Nb2R1bGUsIExvY2FsaXphdGlvblNlcnZpY2UsIExvY2FsaXphdGlvbk1pc3NpbmdQb2xpY3ksIExPQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9sb2NhbGl6YXRpb25zXCI7XHJcbmltcG9ydCB7IFNpZ25hbHJOb3RpZmljYXRpb25zTW9kdWxlLCBTR1JfREVCVUdfTU9ERSwgQmFzZU1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9zaWduYWxyLW5vdGlmaWNhdGlvbnNcIjtcclxuaW1wb3J0IHsgRm9ybXNBbmRWYWxpZGF0aW9uc01vZHVsZSwgTmd4RXhwYW5kZWREYXlKc0RhdGVBZGFwdGVyIH0gZnJvbSBcIkBlc2ZhZW56YS9mb3Jtcy1hbmQtdmFsaWRhdGlvbnNcIjtcclxuaW1wb3J0IHsgQWNjZXNzQ29udHJvbE1vZHVsZSwgQWNjZXNzQ29udHJvbFNlcnZpY2UsIEFDQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9hY2Nlc3MtY29udHJvbFwiO1xyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciwgRXNDaGFydHNNb2R1bGUsIEVTQ19ERUJVR19NT0RFIH0gZnJvbSBcIkBlc2ZhZW56YS9lcy1jaGFydHNcIjtcclxuaW1wb3J0IHsgUHJlZmVyZW5jZXNNb2R1bGUsIFBSRUZfREVCVUdfTU9ERSB9IGZyb20gXCJAZXNmYWVuemEvcHJlZmVyZW5jZXNcIjtcclxuaW1wb3J0IHsgRXh0ZW5zaW9uc01vZHVsZSwgRVhUX0RFQlVHX01PREUgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVNb2R1bGUgfSBmcm9tIFwiQGVzZmFlbnphL25neC1jb250ZXh0bWVudVwiO1xyXG5pbXBvcnQgeyBEcmFndWxhTW9kdWxlIH0gZnJvbSAnQGVzZmFlbnphL25neC1kcmFndWxhJztcclxuaW1wb3J0IHsgRXNUYWJsZU1vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvZXMtdGFibGVcIjtcclxuXHJcbi8vIENvcmVcclxuaW1wb3J0IHsgQVBQRXJyb3JIYW5kbGVyLCBIVFRQU2VydmljZUV4dGVuc2lvbnMsIEFwcGxpY2F0aW9uUHJlZmVyZW5jZXNQZXJzaXN0b3IsIEFwcGxpY2F0aW9uQ2FjaGVQZXJzaXN0b3IsIFNlc3Npb25SZXRyaWV2ZXIsIE91dFpvbmVFdmVudFBsdWdpbiwgVG9rZW5TZXJ2aWNlLCBHbG9iYWxTZWFyY2hTZXJ2aWNlLCBDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UsIE1lbnVGaWx0ZXJpbmdTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL3NlcnZpY2VzXCI7XHJcbmltcG9ydCB7IFBhZ2VOb3RGb3VuZENvbXBvbmVudCwgU2VydmVyRXJyb3JDb21wb25lbnQsIEFuZ3VsYXJFcnJvckNvbXBvbmVudCwgRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCwgSmFjZUxvZ2luQ29tcG9uZW50LCBQYWdlc0NvbXBvbmVudCwgUmVkaXJlY3RlckNvbXBvbmVudCwgQ29tcG9uZW50c01vZHVsZSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uTWVudSwgRW52T3B0aW9ucywgQWNjb3VudFNjb3BlLCBNRU5VLCBNRU5VX0xPQ0FMSVpBVElPTiwgUkVESVJFQ1RfTUFQLCBVU0VfRkFLRV9BQ0NFU1NfVE9LRU4sIE5BVkJBUl9FWFRFTlNJT05TIH0gZnJvbSBcIkBlc2ZhZW56YS9jb3JlL2RvbWFpblwiXHJcbmltcG9ydCB7IFJPVVRFLCBFTUJFRERFRF9ST1VURSB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9kb21haW5cIlxyXG5pbXBvcnQgeyBUZW1wbGF0ZUNvbW1vbiB9IGZyb20gXCJAZXNmYWVuemEvY29yZS9tb2R1bGVzXCI7XHJcblxyXG4vLyBSeEpzXHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IGZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG4vLyBCb290c3RyYXBcclxuaW1wb3J0IHsgUHJvZ3Jlc3NiYXJNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9wcm9ncmVzc2JhclwiO1xyXG5pbXBvcnQgeyBUaW1lcGlja2VyTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvdGltZXBpY2tlclwiO1xyXG5pbXBvcnQgeyBCc0Ryb3Bkb3duTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvZHJvcGRvd25cIjtcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL3Rvb2x0aXBcIjtcclxuaW1wb3J0IHsgTW9kYWxNb2R1bGUgfSBmcm9tIFwibmd4LWJvb3RzdHJhcC9tb2RhbFwiO1xyXG5cclxuLy8gQXBwbGljYXppb25lXHJcbmltcG9ydCB7IEFwcENvbXBvbmVudCB9IGZyb20gXCIuL2FwcC5jb21wb25lbnRcIjtcclxuXHJcbi8vIFJlcG9zaXRvcmllc1xyXG5jb25zdCBHRVRfSmFjZV9HZXRBY2NvdW50U2NvcGU6IHN0cmluZyA9IFwiL2FwaS9KYWNlL0dldEFjY291bnRTY29wZVwiO1xyXG5jb25zdCBHRVRfQXBwQ29uZmlnX0dldEFwcENvbmZpZzogc3RyaW5nID0gXCIvYXBpL0FwcENvbmZpZy9HZXRBcHBDb25maWdcIjtcclxuXHJcbmRlY2xhcmUgdmFyIG15Y29uZmlnOiBFbnZPcHRpb25zO1xyXG5cclxuY29uc3QgYmFzZUFwcFJvdXRlczogUm91dGVzID0gW1xyXG4gICAgeyBwYXRoOiBcIlwiLCByZWRpcmVjdFRvOiBcInBhZ2VzL3tlbXB0eVJvdXRlUmVkaXJlY3R9XCIsIHBhdGhNYXRjaDogXCJmdWxsXCIgfSxcclxuICAgIHsgcGF0aDogRU1CRURERURfUk9VVEUsIGNvbXBvbmVudDogRXh0ZXJuYWxQYWdlc0NvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBST1VURSwgY29tcG9uZW50OiBQYWdlc0NvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcInJkXCIsIGNvbXBvbmVudDogUmVkaXJlY3RlckNvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcImxvZ2luXCIsIGNvbXBvbmVudDogSmFjZUxvZ2luQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiaXNlcnJcIiwgY29tcG9uZW50OiBTZXJ2ZXJFcnJvckNvbXBvbmVudCB9LFxyXG4gICAgeyBwYXRoOiBcImFuZXJyXCIsIGNvbXBvbmVudDogQW5ndWxhckVycm9yQ29tcG9uZW50IH0sXHJcbiAgICB7IHBhdGg6IFwiKipcIiwgY29tcG9uZW50OiBQYWdlTm90Rm91bmRDb21wb25lbnQgfVxyXG5dO1xyXG5cclxuY29uc3QgTU9EVUxFUyA9IFtcclxuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFRlbXBsYXRlQ29tbW9uLFxyXG4gICAgQ29tcG9uZW50c01vZHVsZSxcclxuXHJcbiAgICAvLyBBdHRlbnppb25lIGEgbGFzY2lhcmxvIGF0dGl2byBpbiBuZyBzZXJ2ZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvNDc0NTVcclxuICAgIFNlcnZpY2VXb3JrZXJNb2R1bGUucmVnaXN0ZXIoJ25nc3ctd29ya2VyLmpzJywgeyBlbmFibGVkOiAhaXNEZXZNb2RlKCkgfSksXHJcbiAgICBSb3V0ZXJNb2R1bGUuZm9yUm9vdChbXSwgeyB1c2VIYXNoOiB0cnVlLCBwcmVsb2FkaW5nU3RyYXRlZ3k6IE5vUHJlbG9hZGluZywgb25TYW1lVXJsTmF2aWdhdGlvbjogXCJyZWxvYWRcIiB9KSxcclxuXHJcbiAgICAvLyBFU1xyXG4gICAgRXNUYWJsZU1vZHVsZS5mb3JSb290KCksXHJcbiAgICBGb3Jtc0FuZFZhbGlkYXRpb25zTW9kdWxlLmZvclJvb3QoeyBhY29jdXN0b206IFwiT1wiIH0pLFxyXG4gICAgRXh0ZW5zaW9uc01vZHVsZS5mb3JSb290KCksXHJcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUuZm9yUm9vdCh7IGxvY2FsaXphdGlvbk1pc3NpbmdQb2xpY3k6IExvY2FsaXphdGlvbk1pc3NpbmdQb2xpY3kuUHJpbnRTb3VyY2UsIGRlZmF1bHRMb2NhbGU6ICdpdC1JVCcgfSksXHJcbiAgICBBY2Nlc3NDb250cm9sTW9kdWxlLmZvclJvb3QoeyBjb250ZXh0QXdhcmVLZXk6IFwiT1wiLCBkZWZhdWx0Q29uZGl0aW9uOiAnKFI6SmFjZSBBZG1pbiB8fCBSOkphY2UgU3VwcG9ydCknIH0pLFxyXG4gICAgSHR0cHNlcnZpY2VNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgU2lnbmFsck5vdGlmaWNhdGlvbnNNb2R1bGUuZm9yUm9vdCh7IGVuZHBvaW50VXJsOiAnbm90aWZ5JywgdXNlTWVzc2FnZVBhY2s6IHRydWUgfSksXHJcbiAgICBQcmVmZXJlbmNlc01vZHVsZS5mb3JSb290KHsgcmV0cmlldmVBbGxBdFN0YXJ0OiB0cnVlLCBzZXNzaW9uUmV0cmlldmVyOiBTZXNzaW9uUmV0cmlldmVyLCBwcmVmZXJlbmNlUGVyc2lzdG9yOiBBcHBsaWNhdGlvblByZWZlcmVuY2VzUGVyc2lzdG9yLCBjYWNoZVBlcnNpc3RvcjogQXBwbGljYXRpb25DYWNoZVBlcnNpc3RvciB9KSxcclxuICAgIEVzQ2hhcnRzTW9kdWxlLmZvclJvb3QoKSxcclxuXHJcbiAgICAvLyBCb290c3RyYXBcclxuICAgIFRvb2x0aXBNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgTW9kYWxNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgUHJvZ3Jlc3NiYXJNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgQnNEcm9wZG93bk1vZHVsZS5mb3JSb290KCksXHJcbiAgICBUb2FzdHJNb2R1bGUuZm9yUm9vdCgpLFxyXG4gICAgVGltZXBpY2tlck1vZHVsZS5mb3JSb290KCksXHJcbiAgICBDb250ZXh0TWVudU1vZHVsZS5mb3JSb290KCksXHJcbiAgICBEcmFndWxhTW9kdWxlLmZvclJvb3QoKVxyXG5dO1xyXG5cclxuLy8gR2VuZXJhdG9yZSBkZWkgZm9ybWF0aSBkYXRhXHJcbnZhciBmb3JtYXRzID0gKHN0eWxlOiAnbG9uZycgfCAnc2hvcnQnKSA9PiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHBhcnNlOiB7IGRhdGVJbnB1dDogJ0REL01NL1lZWVknICsgKHN0eWxlID09PSAnbG9uZycgPyAnIEhIOm1tOnNzJyA6ICcnKSB9LFxyXG4gICAgICAgIGRpc3BsYXk6IHtcclxuICAgICAgICAgICAgZGF0ZUlucHV0OiAnREQvTU0vWVlZWScgKyAoc3R5bGUgPT09ICdsb25nJyA/ICcgSEg6bW06c3MnIDogJycpLFxyXG4gICAgICAgICAgICBtb250aFllYXJMYWJlbDogJ01NIFlZWVknLFxyXG4gICAgICAgICAgICBkYXRlQTExeUxhYmVsOiAnREQvTU0vWVlZWScgKyAoc3R5bGUgPT09ICdsb25nJyA/ICcgSEg6bW06c3MnIDogJycpLFxyXG4gICAgICAgICAgICBtb250aFllYXJBMTF5TGFiZWw6ICdNTSBZWVlZJyxcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG59XHJcblxyXG5jb25zdCBsb2NhbGVGYWN0b3J5ID0gKGxvYzogTG9jYWxpemF0aW9uU2VydmljZSkgPT4gbG9jLlNtYWxsTG9jYWxlO1xyXG5cclxuY29uc3QgUFJPVklERVJTID0gW1xyXG4gICAgQ29va2llU2VydmljZSxcclxuXHJcbiAgICAvLyBQcm92aWRlcnMgYXBwbGljYXRpdmlcclxuICAgIHsgcHJvdmlkZTogRXJyb3JIYW5kbGVyLCB1c2VDbGFzczogQVBQRXJyb3JIYW5kbGVyIH0sXHJcbiAgICB7IHByb3ZpZGU6IEVWRU5UX01BTkFHRVJfUExVR0lOUywgdXNlRXhpc3Rpbmc6IE91dFpvbmVFdmVudFBsdWdpbiwgbXVsdGk6IHRydWUgfSxcclxuICAgIHsgcHJvdmlkZTogSHR0cFNlcnZpY2VFeHRlbnNpb25zLCB1c2VDbGFzczogSFRUUFNlcnZpY2VFeHRlbnNpb25zIH0sXHJcblxyXG4gICAgLy8gTG9jYWxlIGUgZ2VzdGlvbmkgZGVsbGUgZGF0ZVxyXG4gICAgeyBwcm92aWRlOiBMT0NBTEVfSUQsIHVzZUZhY3Rvcnk6IGxvY2FsZUZhY3RvcnksIGRlcHM6IFtMb2NhbGl6YXRpb25TZXJ2aWNlXSB9LFxyXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9MT0NBTEUsIHVzZUZhY3Rvcnk6IGxvY2FsZUZhY3RvcnksIGRlcHM6IFtMb2NhbGl6YXRpb25TZXJ2aWNlXSB9LFxyXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogZm9ybWF0cygnc2hvcnQnKSB9LFxyXG5cclxuICAgIC8vIFF1ZXN0aSBkdWUgc29ubyBwcm92aWRhdGkgZGFsIEZvcm1zQW5kVmFsaWRhdGlvbk1vZHVsZSBzdGVzc28sIHBlcsOyIHF1ZXN0J3VsdGltbyDDqCBkZWZpbml0byBpbiBmb3JSb290IHNvbG8gbGF0byBjb21wb25lbnRpIHNoYXJlZCwgXHJcbiAgICAvLyBxdWluZGkgcGVyIHJlbmRlcmUgcXVlc3RpIHByb3ZpZGVyIGRpc3BvbmliaWxpIGFuY2hlIGEgbW9kdWxpIGVzdGVybmkgZGV2byByaXByb3ZpZGFybGkgYW5jaGUgcXVpXHJcbiAgICB7IHByb3ZpZGU6IE5HWF9NQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogZm9ybWF0cygnbG9uZycpIH0sXHJcbiAgICB7IHByb3ZpZGU6IE5neE1hdERhdGVBZGFwdGVyLCB1c2VDbGFzczogTmd4RXhwYW5kZWREYXlKc0RhdGVBZGFwdGVyIH1cclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBkZWNsYXJhdGlvbnM6IFtBcHBDb21wb25lbnRdLFxyXG4gICAgaW1wb3J0czogWy4uLk1PRFVMRVNdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc0ZhZW56YUNvcmVNb2R1bGUge1xyXG4gICAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogRXNGYWVuemFDb3JlTW9kdWxlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFc0ZhZW56YUNvcmVNb2R1bGU+IHtcclxuICAgICAgICBpZiAoY29uZmlnLnJvdXRlcykge1xyXG4gICAgICAgICAgICBiYXNlQXBwUm91dGVzWzBdLnJlZGlyZWN0VG8gPSBgcGFnZXMvJHtjb25maWcuZW1wdHlSb3V0ZVJlZGlyZWN0IHx8ICdkYXNoYm9hcmQnfWA7XHJcbiAgICAgICAgICAgIGJhc2VBcHBSb3V0ZXMuZmlsdGVyKHQgPT4gW1wicGFnZXNcIiwgXCJwYWdlc19leHRcIl0uaW5jbHVkZXModC5wYXRoKSkuZm9yRWFjaChwYXRoID0+IHsgcGF0aC5jaGlsZHJlbiA9IGNvbmZpZy5yb3V0ZXM7IH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25maWcuZGVidWdNb2RlID0gKCFpc0Rldk1vZGUoKSAmJiAhY29uZmlnLmZvcmNlRGVidWdNb2RlRm9yUHJvZEJ1aWxkcykgPyBEZWJ1Z0ZsYWdzLk5vbmUgOiAoY29uZmlnLmRlYnVnTW9kZSB8fCBEZWJ1Z0ZsYWdzLkFsbCk7XHJcblxyXG4gICAgICAgIGxldCBtZXJnZWRBcHBJbml0aWFsaXplciA9IChodHRwOiBIVFRQU2VydmljZSwgYnRzOiBUb2tlblNlcnZpY2UsIGFhYzogQWNjZXNzQ29udHJvbFNlcnZpY2UpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuICgpID0+IHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiJWNbQVBQX0lOSVRJQUxJWkVSXSBMb2FkaW5nIEFwcENvbmZpZyBhbmQgQWNjb3VudCBTY29wZS4uLlwiLCBcImJhY2tncm91bmQtY29sb3I6IHllbGxvd1wiKTtcclxuICAgICAgICAgICAgICAgIGxldCByZWFsT2JzZXJ2YWJsZSA9IGZvcmtKb2luKFxyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXBwQ29uZmlnOiBodHRwLmdldDxFbnZPcHRpb25zPihHRVRfQXBwQ29uZmlnX0dldEFwcENvbmZpZywgbnVsbCwgbnVsbCwgZmFsc2UpLnBpcGUoY2F0Y2hFcnJvcihfID0+IG9mKHt9KSkpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzY29wZTogaHR0cC5nZXQ8QWNjb3VudFNjb3BlPihHRVRfSmFjZV9HZXRBY2NvdW50U2NvcGUsIG51bGwsIG51bGwsIGZhbHNlKS5waXBlKGNhdGNoRXJyb3IoXyA9PiBvZihudWxsKSkpXHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgbGV0IHVzZWRPYnNlcnZhYmxlID0gY29uZmlnLm9wdGlvbnNBbmRTY29wZVByb3ZpZGVyIHx8IHJlYWxPYnNlcnZhYmxlO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiB1c2VkT2JzZXJ2YWJsZS5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRhcCgocmVzOiB7IGFwcENvbmZpZzogRW52T3B0aW9ucywgc2NvcGU6IEFjY291bnRTY29wZSB9KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG15Y29uZmlnID0gcmVzLmFwcENvbmZpZztcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnRzLmFjY291bnRTY29wZSA9IHJlcy5zY29wZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiJWNbQVBQX0lOSVRJQUxJWkVSXSBhcHBDb25maWcgYW5kIHNjb3BlIHJlZ2lzdGVyZWRcIiwgXCJiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3dcIik7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoYnRzLmFjY291bnRTY29wZSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFhYy5pbml0aWFsaXplSWRlbnRpdHkoYnRzLmdldEphY2VJZGVudGl0eSgpKTtcclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoXyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghY29uZmlnLmluaXRpYWxpemVyRnVuY3Rpb24pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiJWNbQVBQX0lOSVRJQUxJWkVSXSBMb2FkaW5nIGN1c3RvbSBhcHBsaWNhdGlvbiBpbml0aWFsaXphdGlvblwiLCBcImJhY2tncm91bmQtY29sb3I6IHllbGxvd1wiKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbmZpZy5pbml0aWFsaXplckZ1bmN0aW9uKGh0dHAsIGJ0cywgYWFjKSgpLnBpcGUodGFwKF8gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIlY1tBUFBfSU5JVElBTElaRVJdIEluaXRpYWxpemF0aW9uIGlzIG92ZXJcIiwgXCJiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3dcIik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIG5nTW9kdWxlOiBFc0ZhZW56YUNvcmVNb2R1bGUsXHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgICAgICAgICAgLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqIFByb3ZpZGVyIHN0YXRpY2kgKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblxyXG4gICAgICAgICAgICAgICAgLi4uUFJPVklERVJTLFxyXG5cclxuICAgICAgICAgICAgICAgIC8vICoqKioqKioqKioqKioqKioqKioqKioqKiBQcm92aWRlciBjdXN0b21penphYmlsaSAqKioqKioqKioqKioqKioqKioqKioqKipcclxuICAgICAgICAgICAgICAgIC4uLighY29uZmlnLnJlZGlyZWN0aW9uTWFwID8gW10gOiBbeyBwcm92aWRlOiBSRURJUkVDVF9NQVAsIHVzZVZhbHVlOiBjb25maWcucmVkaXJlY3Rpb25NYXAgfV0pLFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsIHVzZUZhY3Rvcnk6IG1lcmdlZEFwcEluaXRpYWxpemVyLCBkZXBzOiBbSFRUUFNlcnZpY2UsIFRva2VuU2VydmljZSwgQWNjZXNzQ29udHJvbFNlcnZpY2VdLCBtdWx0aTogdHJ1ZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBST1VURVMsIHVzZVZhbHVlOiBiYXNlQXBwUm91dGVzLCBtdWx0aTogdHJ1ZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBMT0NfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuTG9jYWxpemF0aW9ucykgPT0gRGVidWdGbGFncy5Mb2NhbGl6YXRpb25zIDogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogRVhUX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkV4dGVuc2lvbnMpID09IERlYnVnRmxhZ3MuRXh0ZW5zaW9ucyA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEFDQ19ERUJVR19NT0RFLCB1c2VWYWx1ZTogY29uZmlnLmRlYnVnTW9kZSA/IChjb25maWcuZGVidWdNb2RlICYgRGVidWdGbGFncy5BY2Nlc3NDb250cm9sKSA9PSBEZWJ1Z0ZsYWdzLkFjY2Vzc0NvbnRyb2wgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBIVFRQX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLkh0dHApID09IERlYnVnRmxhZ3MuSHR0cCA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEhUVFBfSU5WQUxJREFUSU9OLCB1c2VWYWx1ZTogY29uZmlnPy5odHRwSW52YWxpZGF0aW9uQ2FjaGUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogU0dSX0RFQlVHX01PREUsIHVzZVZhbHVlOiBjb25maWcuZGVidWdNb2RlID8gKGNvbmZpZy5kZWJ1Z01vZGUgJiBEZWJ1Z0ZsYWdzLlNpZ25hbFIpID09IERlYnVnRmxhZ3MuU2lnbmFsUiA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IFBSRUZfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuUHJlZmVyZW5jZXMpID09IERlYnVnRmxhZ3MuUHJlZmVyZW5jZXMgOiBmYWxzZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBFU0NfREVCVUdfTU9ERSwgdXNlVmFsdWU6IGNvbmZpZy5kZWJ1Z01vZGUgPyAoY29uZmlnLmRlYnVnTW9kZSAmIERlYnVnRmxhZ3MuQ2hhcnRzKSA9PSBEZWJ1Z0ZsYWdzLkNoYXJ0cyA6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE5BVkJBUl9FWFRFTlNJT05TLCB1c2VWYWx1ZTogY29uZmlnLm5hdmJhckV4dGVuc2lvbnMgPyBjb25maWcubmF2YmFyRXh0ZW5zaW9ucyA6IFtdIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEJhc2VBZGFwdGVyLCB1c2VDbGFzczogY29uZmlnPy5jaGFydHNBZGFwdGVyIHx8IEJhc2VBZGFwdGVyIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEJhc2VNZXNzYWdlU2VydmljZSwgdXNlQ2xhc3M6IGNvbmZpZz8ubWVzc2FnZVNlcnZpY2UgfHwgQmFzZU1lc3NhZ2VTZXJ2aWNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IEdsb2JhbFNlYXJjaFNlcnZpY2UsIHVzZUNsYXNzOiBjb25maWc/Lmdsb2JhbFNlYXJjaFNlcnZpY2UgfHwgR2xvYmFsU2VhcmNoU2VydmljZSB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UsIHVzZUNsYXNzOiBjb25maWc/LmNvbXBsZXRlZEpvYlJlZGlyZWN0aW9uU2VydmljZSB8fCBDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2UgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTWVudUZpbHRlcmluZ1NlcnZpY2UsIHVzZUNsYXNzOiBjb25maWc/Lm1lbnVGaWx0ZXJpbmdTZXJ2aWNlIHx8IE1lbnVGaWx0ZXJpbmdTZXJ2aWNlIH0sXHJcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE1FTlVfTE9DQUxJWkFUSU9OLCB1c2VWYWx1ZTogY29uZmlnLm1lbnVMb2MgfHwgbnVsbCB9LFxyXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBNRU5VLCB1c2VWYWx1ZTogY29uZmlnLm1lbnUgfSxcclxuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogVVNFX0ZBS0VfQUNDRVNTX1RPS0VOLCB1c2VWYWx1ZTogISFjb25maWcuZmFrZUFjY2Vzc1Rva2VuIH0sXHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXNGYWVuemFDb3JlTW9kdWxlQ29uZmlnIHtcclxuICAgIC8qIFJvdXRlIGFwcGxpY2F0aXZlLCBzb2xvIHF1ZWxsZSBkZW50cm8gYSAqKnBhZ2VzKiogKi9cclxuICAgIHJvdXRlcyE6IFJvdXRlcztcclxuICAgIC8qIE1lbsO5IGRlbGxhIHNpZGViYXIgZGVsbCdhcHBsaWNhemlvbmUgKi9cclxuICAgIG1lbnU6IEFwcGxpY2F0aW9uTWVudVtdO1xyXG4gICAgLyogSW5kaWNhIHNlIHV0aWxpenphcmUgbCdhY2Nlc3MgdG9rZW4gZmludG8gKi9cclxuICAgIGZha2VBY2Nlc3NUb2tlbj86IGJvb2xlYW47XHJcbiAgICAvKiBUaXBvIGRhIHVzYXJlIHBlciBnZW5lcmFyZSBsZSBsb2NhbGl6emFpem9uaSBkZWwgbWVuw7kgKi9cclxuICAgIG1lbnVMb2M/OiBUeXBlPExvY2FsaXphdGlvblNlcnZpY2U+O1xyXG4gICAgLyogUmVkaXJlY3QgcGVyIGxhIHJvb3QgZGVsbCdhcHBsaWNhemlvbmUsIGRpIGRlZmF1bHQgw6ggaW1wb3N0YXRvIGEgKipkYXNoYm9hcmQqKi4gU2UgYWxsJ2ludGVybm8gZGVsbGUgKipyb3V0ZXMqKiBub24gZXNpc3RlIGxhIHJvdXRlICoqZGFzaGJvYXJkKiogw6ggZGEgaW1wb3N0YXJlIGFkZWd1YXRhbWVudGUgKi9cclxuICAgIGVtcHR5Um91dGVSZWRpcmVjdD86IHN0cmluZztcclxuICAgIC8qIFNlIG5vbiBzcGVjaWZpY2F0YSB2aWVuZSBpbXBvc3RhdGEgYXV0b21hdGljYW1lbnRlIGFkIFwiQWxsXCIgaW4gZmFzZSBkaSBkZWJ1ZywgXCJOb25lXCIgaW4gcHJvZHV6aW9uZSAocXVlc3QndWx0aW1vIGEgcHJlc2NpbmRlcmUsIGEgbWVubyBjaGUgKipmb3JjZURlYnVnTW9kZUZvclByb2RCdWlsZHMqKiBub24gc2lhIHRydWUpKi9cclxuICAgIGRlYnVnTW9kZT86IERlYnVnRmxhZ3M7XHJcbiAgICAvKiBQZXJtZXR0ZSBkaSBmb3J6YXJlIGxhIG1vZGFsaXTDoCBkaSBkZWJ1ZyBzcGVjaWZpY2F0YSBhbmNoZSBwZXIgbGUgYnVpbGQgZGkgcHJvZHV6aW9uZSwgKipOT04gSU1QT1NUQVJFIEEgVFJVRSoqIGEgbWVubyBkaSByYXJpc3NpbWlzc2ltaXNzaW1pIGNhc2kgKi9cclxuICAgIGZvcmNlRGVidWdNb2RlRm9yUHJvZEJ1aWxkcz86IGJvb2xlYW47XHJcbiAgICAvKiBDYWNoZSBkaSBpbnZhbGlkYXppb25lIHBlciBsZSBjaGlhbWF0ZSBodHRwICovXHJcbiAgICBodHRwSW52YWxpZGF0aW9uQ2FjaGU/OiBhbnk7XHJcbiAgICAvKiBGdW56aW9uZSBkaSBpbml6aWFsaXp6YXppb25lIEFQUF9JTklUSUFMSVpFUi1saWtlIGNoZSB2aWVuZSByaWNoaWFtYXRhIGRvcG8gYWxsYSBmdW56aW9uZSBkaSBpbml6aWFsaXp6YXppb25lIGRpIGRlZmF1bHQgKi9cclxuICAgIGluaXRpYWxpemVyRnVuY3Rpb24/OiAoaHR0cDogSFRUUFNlcnZpY2UsIGJ0czogVG9rZW5TZXJ2aWNlLCBhYWM6IEFjY2Vzc0NvbnRyb2xTZXJ2aWNlKSA9PiAoKSA9PiBPYnNlcnZhYmxlPGFueT47XHJcbiAgICAvKiBNYXBwYSBkaSByZWRpcmVjdCBwZXIgcGVybWV0dGVyZSBhbCAqKlJlZGlyZWN0ZXJDb21wb25lbnQqKiBkaSBzYXBlcmUgZG92ZSBuYXZpZ2FyZSBpbiBiYXNlIGEgT2dnZXR0by1QYXJhbWV0cmkgKi9cclxuICAgIHJlZGlyZWN0aW9uTWFwPzogeyBbaW5kZXg6IHN0cmluZ106IHsgdXJsOiBzdHJpbmcsIHBhcmFtczogc3RyaW5nW10gfSB9O1xyXG4gICAgLyogQWRhdHRhdG9yZSBkZWkgZ3JhZmljaSBuZWwgY2FzbyB1biBwcm9nZXR0byBmb3NzZSB2ZWNjaGlvIChSaW11b3ZpYmlsZSBxdWFuZG8gdHV0dGkgaSBwcm9nZXR0aSB1c2FubyBuYXRpdmFtZW50ZSBlcy1jaGFydHMpICovXHJcbiAgICBjaGFydHNBZGFwdGVyPzogVHlwZTxCYXNlQWRhcHRlcj47XHJcbiAgICAvKiBTZXJ2aXppbyBjaGUgZXNwb25lIGkgbWVzc2FnZ2kgZGlzcG9uaWJpbGkgc3UgU2lnbmFsciAqL1xyXG4gICAgbWVzc2FnZVNlcnZpY2U/OiBUeXBlPEJhc2VNZXNzYWdlU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBwZXIgbGEgc2VhcmNoIGdsb2JhbGUgZGVsIG1vZHVsbyAqL1xyXG4gICAgZ2xvYmFsU2VhcmNoU2VydmljZT86IFR5cGU8R2xvYmFsU2VhcmNoU2VydmljZT47XHJcbiAgICAvKiBTZXJ2aXppbyBwZXIgZmlsdHJhcmUgbGUgdm9jaSBkaSBtZW7DuSAqL1xyXG4gICAgbWVudUZpbHRlcmluZ1NlcnZpY2U/OiBUeXBlPE1lbnVGaWx0ZXJpbmdTZXJ2aWNlPjtcclxuICAgIC8qIFNlcnZpemlvIGRpIHJpZGlyZXppb25lIHBlciBqb2IgY29tcGxldGF0aSAqL1xyXG4gICAgY29tcGxldGVkSm9iUmVkaXJlY3Rpb25TZXJ2aWNlPzogVHlwZTxDb21wbGV0ZWRKb2JSZWRpcmVjdGlvblNlcnZpY2U+O1xyXG4gICAgLyogRnVuemlvbmUgZGkgb3ZlcnJpZGUgcGVyIHJlY3VwZXJhcmUgYWNjb3VudCBzY29wZSBlIGVudm9wdGlvbnMuIFB1w7IgYW5jaGUgZXNzZXJlIHV0aWxpenphdGEgcGVyIGZvcm5pcmUgbW9kZWxsaSBmaW50aSBmaW5vIGFkIGltcGxlbWVudGF6aW9uZSAqL1xyXG4gICAgb3B0aW9uc0FuZFNjb3BlUHJvdmlkZXI/OiBPYnNlcnZhYmxlPHsgYXBwQ29uZmlnOiBFbnZPcHRpb25zLCBzY29wZTogQWNjb3VudFNjb3BlIH0+O1xyXG4gICAgLyogTGlzdGEgZGVpIGNvbXBvbmVudGkgY29uIGN1aSBlc3BhbmRlcmUgbGEgbmF2YmFyICovXHJcbiAgICBuYXZiYXJFeHRlbnNpb25zPzogVHlwZTxhbnk+W107XHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIERlYnVnRmxhZ3Mge1xyXG4gICAgTm9uZSA9IDAsXHJcbiAgICBMb2NhbGl6YXRpb25zID0gMSA8PCAwLFxyXG4gICAgRXh0ZW5zaW9ucyA9IDEgPDwgMSxcclxuICAgIEFjY2Vzc0NvbnRyb2wgPSAxIDw8IDIsXHJcbiAgICBIdHRwID0gMSA8PCAzLFxyXG4gICAgU2lnbmFsUiA9IDEgPDwgNCxcclxuICAgIFByZWZlcmVuY2VzID0gMSA8PCA1LFxyXG4gICAgQ2hhcnRzID0gMSA8PCA2LFxyXG4gICAgQWxsID0gfih+MCA8PCA3KVxyXG59Il19