@tsi-developpement/tsi-shared-ui 1.8.42 → 1.8.43

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.
@@ -3,5 +3,6 @@ export class BusinessClassNames {
3
3
  static { this.NatureAction = "NatureAction"; }
4
4
  static { this.Utilisateur = "Utilisateur"; }
5
5
  static { this.Fichier = "Fichier"; }
6
+ static { this.TypeFichier = "TypeFichier"; }
6
7
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MtY2xhc3MtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvY29uc3RzL2J1c2luZXNzLWNsYXNzLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxrQkFBa0I7YUFDZixjQUFTLEdBQVcsV0FBVyxDQUFDO2FBQzlCLGlCQUFZLEdBQVcsY0FBYyxDQUFDO2FBQ3RDLGdCQUFXLEdBQVcsYUFBYSxDQUFDO2FBQ3BDLFlBQU8sR0FBWSxTQUFTLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQnVzaW5lc3NDbGFzc05hbWVzIHtcclxuICBwdWJsaWMgc3RhdGljIEFjdGlvbkVSUDogc3RyaW5nID0gXCJBY3Rpb25FUlBcIjtcclxuICAgIHB1YmxpYyBzdGF0aWMgTmF0dXJlQWN0aW9uOiBzdHJpbmcgPSBcIk5hdHVyZUFjdGlvblwiO1xyXG4gICAgcHVibGljIHN0YXRpYyBVdGlsaXNhdGV1cjogc3RyaW5nID0gXCJVdGlsaXNhdGV1clwiO1xyXG4gICAgcHVibGljIHN0YXRpYyBGaWNoaWVyIDogc3RyaW5nID0gXCJGaWNoaWVyXCJcclxufSJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MtY2xhc3MtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvY29uc3RzL2J1c2luZXNzLWNsYXNzLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxrQkFBa0I7YUFDZixjQUFTLEdBQVcsV0FBVyxDQUFDO2FBQzlCLGlCQUFZLEdBQVcsY0FBYyxDQUFDO2FBQ3RDLGdCQUFXLEdBQVcsYUFBYSxDQUFDO2FBQ3BDLFlBQU8sR0FBWSxTQUFTLENBQUE7YUFDNUIsZ0JBQVcsR0FBWSxhQUFhLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQnVzaW5lc3NDbGFzc05hbWVzIHtcclxuICBwdWJsaWMgc3RhdGljIEFjdGlvbkVSUDogc3RyaW5nID0gXCJBY3Rpb25FUlBcIjtcclxuICAgIHB1YmxpYyBzdGF0aWMgTmF0dXJlQWN0aW9uOiBzdHJpbmcgPSBcIk5hdHVyZUFjdGlvblwiO1xyXG4gICAgcHVibGljIHN0YXRpYyBVdGlsaXNhdGV1cjogc3RyaW5nID0gXCJVdGlsaXNhdGV1clwiO1xyXG4gICAgcHVibGljIHN0YXRpYyBGaWNoaWVyIDogc3RyaW5nID0gXCJGaWNoaWVyXCJcclxuICAgIHB1YmxpYyBzdGF0aWMgVHlwZUZpY2hpZXIgOiBzdHJpbmcgPSBcIlR5cGVGaWNoaWVyXCJcclxufSJdfQ==
@@ -244,6 +244,7 @@ export const AdministrationEndpoints = {
244
244
  getStatusColorDetailsByBusinessClassName: (businessClassName) => `${Segment.base}/${AdministrationSegments.statusColor}/${AdministrationSegments.getStatusColorDetailsByBusinessClassName}/${businessClassName}`,
245
245
  getNombreFichierJointById: (uid) => `${Segment.base}/${AdministrationSegments.fichier}/${AdministrationSegments.getNombreFichierJointById}/${uid}`,
246
246
  getAllTypeFichierMinimalByClasse: (classe) => `${Segment.base}/${AdministrationSegments.typeFichier}/${AdministrationSegments.allMinimalByClasse}/${classe}`,
247
+ getTypeFichierMinimal: () => `${Segment.base}/${AdministrationSegments.typeFichier}/${AdministrationSegments.minimal}`,
247
248
  getWorkflowEtatByClassNameAndDescriminator: (className, descriminatorValue) => `${Segment.base}/${AdministrationSegments.workflowEtat}/${AdministrationSegments.getWorkflowEtatByClassNameAndDescriminator}/${className}${descriminatorValue !== undefined && descriminatorValue != null ? `/${descriminatorValue}` : ""}`,
248
249
  getcolonnesPersonnalisee: (businessClass, occurence) => `${Segment.base}/${AdministrationSegments.colonnePersonnalisee}/${AdministrationSegments.getColonnePersonnalisee}/${businessClass}${occurence != null && occurence != undefined ? '/' + occurence : ''}`,
249
250
  createOrUpdateFormulaireData: () => `${Segment.base}/${AdministrationSegments.colonnePersonnaliseeData}`,
@@ -263,4 +264,4 @@ export const AdministrationEndpoints = {
263
264
  getAllNatureActionMinimal: () => `${Segment.base}/${AdministrationSegments.natureAction}/${AdministrationSegments.allMinimal}`,
264
265
  getNatureActionMinimal: () => `${Segment.base}/${AdministrationSegments.natureAction}/${AdministrationSegments.minimal}`,
265
266
  };
266
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5kcG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL2VuZC1wb2ludHMvZW5kcG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUc7SUFDcEMsT0FBTyxFQUFFLFNBQVM7SUFDbEIsV0FBVyxFQUFFLGFBQWE7SUFDMUIsa0JBQWtCLEVBQUUsb0JBQW9CO0lBQ3hDLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLGlCQUFpQixFQUFFLG1CQUFtQjtJQUN0QyxjQUFjLEVBQUUsZ0JBQWdCO0lBQ2hDLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFdBQVcsRUFBRSxhQUFhO0lBQzFCLEtBQUssRUFBRSxPQUFPO0lBQ2Qsc0JBQXNCLEVBQUUsd0JBQXdCO0lBQ2hELFFBQVEsRUFBRSxVQUFVO0lBQ3BCLGFBQWEsRUFBRSxlQUFlO0lBQzlCLGFBQWEsRUFBRSxlQUFlO0lBQzlCLGdCQUFnQixFQUFFLGtCQUFrQjtJQUNwQyxzQkFBc0IsRUFBRSx3QkFBd0I7SUFDaEQsTUFBTSxFQUFFLFFBQVE7SUFDaEIsd0JBQXdCLEVBQUUsMEJBQTBCO0lBQ3BELFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFlBQVksRUFBRSxjQUFjO0lBQzVCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLEtBQUssRUFBRSxPQUFPO0lBQ2QsbUJBQW1CLEVBQUUscUJBQXFCO0lBQzFDLG1CQUFtQixFQUFFLHFCQUFxQjtJQUMxQywwQkFBMEIsRUFBRSw0QkFBNEI7SUFDeEQsUUFBUSxFQUFFLFVBQVU7SUFDcEIsZ0JBQWdCLEVBQUUsa0JBQWtCO0lBQ3BDLGNBQWMsRUFBRSxnQkFBZ0I7SUFDaEMsbUJBQW1CLEVBQUUsb0JBQW9CO0lBQ3pDLHNCQUFzQixF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LFVBQVUsSUFBSSxzQkFBc0IsQ0FBQyxJQUFJLElBQUksYUFBYSxFQUFFO0lBRXBKLGlCQUFpQixFQUFFLENBQUMsYUFBcUIsRUFBRSxFQUFFLENBQzdDLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxzQkFBc0IsQ0FBQyxtQkFBbUIsSUFBSSxzQkFBc0IsQ0FBQyxVQUFVLElBQUksc0JBQXNCLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLE1BQU0sSUFBSSxhQUFhLEVBQUU7SUFFekwsOEJBQThCLEVBQUUsQ0FBQyxFQUFZLEVBQUUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxzQkFBc0IsQ0FBQyxZQUFZLElBQUksc0JBQXNCLENBQUMsOEJBQThCLElBQUksRUFBRSxFQUFFO0lBQ3ZLLHlCQUF5QixFQUFFLEdBQUcsRUFBRSxDQUM5QixHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksc0JBQXNCLENBQUMsWUFBWSxJQUFJLHNCQUFzQixDQUFDLFVBQVUsRUFBRTtJQUMvRixzQkFBc0IsRUFBRSxHQUFHLEVBQUUsQ0FDM0IsR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLFlBQVksSUFBSSxzQkFBc0IsQ0FBQyxPQUFPLEVBQUU7Q0FFM0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvbkVSUCB9IGZyb20gXCIuLi9tb2RlbHMvYWN0aW9uRXJwL2FjdGlvbkVycFwiO1xyXG5pbXBvcnQgeyBTZWdtZW50IH0gZnJvbSBcIi4vYmFzZXVyaVwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IEFkbWluaXN0cmF0aW9uU2VnbWVudHMgPSB7XHJcbiAgZmljaGllcjogJ0ZpY2hpZXInLFxyXG4gIHR5cGVGaWNoaWVyOiAnVHlwZUZpY2hpZXInLFxyXG4gIGFsbE1pbmltYWxCeUNsYXNzZTogJ2FsbG1pbmltYWxCeUNsYXNzZScsXHJcbiAgYWxsTWluaW1hbDogJ2FsbG1pbmltYWwnLFxyXG4gIG1pbmltYWw6ICdtaW5pbWFsJyxcclxuICBhbGxBc0tleVZhbHVlUGFpcjogJ2FsbEFzS2V5VmFsdWVQYWlyJyxcclxuICBhc0tleVZhbHVlUGFpcjogJ2FzS2V5VmFsdWVQYWlyJyxcclxuICBncm91cGU6ICdncm91cGUnLFxyXG4gIHV0aWxpc2F0ZXVyOiAnVXRpbGlzYXRldXInLFxyXG4gIGFkbWluOiAnYWRtaW4nLFxyXG4gIHV0aWxpc2F0ZXVyQWZmZWN0YXRpb246ICdVdGlsaXNhdGV1ckFmZmVjdGF0aW9uJyxcclxuICBkYlVwZGF0ZTogJ0RCVXBkYXRlJyxcclxuICBnZXRMYW5ndWVFbnVtOiAnZ2V0TGFuZ3VlRW51bScsXHJcbiAgZ2V0Tml2ZWF1RW51bTogJ2dldE5pdmVhdUVudW0nLFxyXG4gIGdldENvbm5leGlvbkVudW06ICdnZXRDb25uZXhpb25FbnVtJyxcclxuICBnZXRBZmZpY2hhZ2VBbGVydGVFbnVtOiAnZ2V0QWZmaWNoYWdlQWxlcnRlRW51bScsXHJcbiAgY2xhc3N3OiAnQ2xhc3N3JyxcclxuICBpbXBvcnRBbGxXb3JrZmxvd0NsYXNzZXM6IFwiSW1wb3J0QWxsV29ya2Zsb3dDbGFzc2VzXCIsXHJcbiAgY2xhc3N3RXRhdDogJ0NsYXNzd0V0YXQnLFxyXG4gIHdvcmtmbG93RXRhdDogJ1dvcmtmbG93RXRhdCcsXHJcbiAgd29ya2Zsb3c6ICdXb3JrZmxvdycsXHJcbiAgYWxlcnQ6ICdBbGVydCcsXHJcbiAgZW50aXR5Q29uZmlndXJhdGlvbjogJ0VudGl0eUNvbmZpZ3VyYXRpb24nLFxyXG4gIHdvcmtmbG93RXRhdFN1aXZhbnQ6ICdXb3JrZmxvd0V0YXRTdWl2YW50JyxcclxuICB3b3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZTogJ1dvcmtmbG93RXRhdEZvbmN0aW9ubmFsaXRlJyxcclxuICBwZXJzb25uZTogJ3BlcnNvbm5lJyxcclxuICB3b3JrZmxvd0luc3RhbmNlOiAnV29ya2Zsb3dJbnN0YW5jZScsXHJcbiAgZm9uY3Rpb25uYWxpdGU6ICdGb25jdGlvbm5hbGl0ZScsXHJcbiAgVmhpc3RvcmlxdWVXb3JrZmxvdzogJ0hpc3RvcmlxdWVXb3JrZmxvdycsXHJcbiAgVnRhYmxlYXVEZUJvcmRXb3JrZmxvdzogJ1RhYmxlYXVEZUJvcmRXb3JrZmxvdycsXHJcbiAgdmdlc3Rpb25EZXNEcm9pdHM6ICdHZXN0aW9uRGVzRHJvaXRzJyxcclxuICB2Z2VzdGlvbkRlc0Ryb2l0c1BlcnNvbm5hbGlzZWU6ICdHZXN0aW9uRHJvaXRzQ3VzdG9tRm9uY3Rpb25uYWxpdGllcycsXHJcbiAgbW9kdWxlOiAnTW9kdWxlJyxcclxuICBtZW51OiAnbWVudScsXHJcbiAgc291c01lbnU6ICdzb3VzTWVudScsXHJcbiAgZ2V0QWxsTWVudXNBc0tleVZhbHVlUGFpckJ5TW9kdWxlSWQ6ICdnZXRBbGxNZW51c0FzS2V5VmFsdWVQYWlyQnlNb2R1bGVJZCcsXHJcbiAgZ2V0QWxsU291c01lbnVzQXNLZXlWYWx1ZVBhaXJCeU1lbnVJZDpcclxuICAgICdnZXRBbGxTb3VzTWVudXNBc0tleVZhbHVlUGFpckJ5TWVudUlkJyxcclxuICBnZXRBbGxGb25jdGlvbm5hbGl0ZXNBc0tleVZhbHVlUGFpckJ5U291c01lbnVJZDpcclxuICAgICdnZXRBbGxGb25jdGlvbm5hbGl0ZXNBc0tleVZhbHVlUGFpckJ5U291c01lbnVJZCcsXHJcbiAgZ2V0QWxsVHlwZUZvbmN0aW9ubmFsaXRlRW51bTogJ2dldEFsbFR5cGVGb25jdGlvbm5hbGl0ZUVudW0nLFxyXG4gIGdldEJ5SWQ6ICdnZXRieWlkJyxcclxuICBnZXRBbGw6ICdnZXRhbGwnLFxyXG4gIGdldEFsbFBhZ2VkOiAnZ2V0YWxscGFnZWQnLFxyXG4gIGFkZDogJ2FkZCcsXHJcbiAgdXBkYXRlOiAndXBkYXRlJyxcclxuICBkZWxldGU6ICdkZWxldGUnLFxyXG4gIGdldEVudW06ICdnZXRlbnVtJyxcclxuICBnZXRCeUN1cnJlbnRVc2VyOiAnR2V0QnlDdXJyZW50VXNlcicsXHJcbiAgZ2V0ZW51bWNob2l4dHlwZUFETUlOSVNUUkFUSU9OOiAnZ2V0ZW51bWNob2l4dHlwZUFETUlOSVNUUkFUSU9OJyxcclxuICBnZXRjcmVhdGVtb2RlbDogJ2dldGNyZWF0ZW1vZGVsJyxcclxuICBjcmVhdGVBRE1JTklTVFJBVElPTjogJ2NyZWF0ZUFETUlOSVNUUkFUSU9OJyxcclxuICBnZXRCeVBhcmFtVXNlcjogJ2dldEJ5UGFyYW1Vc2VyJyxcclxuICBnZXRBbGxCeUN1cnJlbnRVc2VySWQ6ICdnZXRBbGxCeUN1cnJlbnRVc2VySWQnLFxyXG4gIGdldEFzS2V5VmFsdWVQYWlyQnlDbGFzc3dJZDogJ2dldEFzS2V5VmFsdWVQYWlyQnlDbGFzc3dJZCcsXHJcbiAgZ2V0QXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWQ6ICdnZXRBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dJZCcsXHJcbiAgdXBkYXRlV29ya2Zsb3dMaXN0OiAndXBkYXRlV29ya2Zsb3dMaXN0JyxcclxuICBnZXRGb25jdGlvbm5hbGl0ZUFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkOiAnZ2V0V29ya2Zsb3dFdGF0Rm9uY3Rpb25uYWxpdGVBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dFdGF0SWQnLFxyXG4gIGdldFdvcmtmbG93QXNLZXlWYWx1ZVBhaXJCeUNsYXNzd0lkOiAnZ2V0V29ya2Zsb3dBc0tleVZhbHVlUGFpckJ5Q2xhc3N3SWQnLFxyXG4gIGdldFdvcmtmbG93SW5zdGFuY2VBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dJZDpcclxuICAgICdnZXRXb3JrZmxvd0luc3RhbmNlQXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWQnLFxyXG4gIGdldEFsbENsYXNzd0J5Tm9tOiAnZ2V0QWxsQ2xhc3N3QnlOb20nLFxyXG4gIGdldENsYXNzd0J5Tm9tOiAnZ2V0Q2xhc3N3QnlOb20nLFxyXG4gIGdldEFsbENsYXNzd0V0YXRBc0tleVBhaXJWYWx1ZTogJ0NsYXNzd0V0YXRBc0tleVZhbHVlUGFpcicsXHJcbiAgR2V0QWxsRm9uY3Rpb25uYWxpdGVXb3JrZmxvd0NsYXNzVzogJ0dldEFsbEZvbmN0aW9ubmFsaXRlV29ya2Zsb3dDbGFzc1cnLFxyXG4gIGdldEN1cnJlbnRVc2VyOiAnZ2V0Q3VycmVudFVzZXInLFxyXG4gIGdldEN1cnJlbnRVc2VyV2l0aFJvbGVzOiAnZ2V0Q3VycmVudFVzZXJXaXRoUm9sZXMnLFxyXG4gIGdldFNxbEZpbGVzOiAnZ2V0U3FsRmlsZXMnLFxyXG4gIGdldFNxbFRleHQ6ICdnZXRTcWxUZXh0JyxcclxuICBleGVjdXRlU3FsRmlsZXM6ICdleGVjdXRlU2NyaXB0JyxcclxuICBleGVjdXRlQWxsU3FsRmlsZXM6ICdleGVjdXRlQWxsU2NyaXB0cycsXHJcbiAgam91cm5hbEFwcGxpY2F0aW9uOiAnSm91cm5hbEFwcGxpY2F0aW9uJyxcclxuICBzdGF0dXNIaXN0b3J5OiAnU3RhdHVzSGlzdG9yeScsXHJcbiAgY2xhc3NlOiAnQ2xhc3NlJyxcclxuICBncm91cGVGb25jdGlvbm5hbGl0ZTogJ0dyb3VwZUZvbmN0aW9ubmFsaXRlJyxcclxuICB0b0VuYWJsZUFsbFNlbGVjdGVkUGVybWlzc2lvbnM6ICd0b0VuYWJsZUFsbFNlbGVjdGVkUGVybWlzc2lvbnMnLFxyXG4gIHRvRGlzYWJsZUFsbFNlbGVjdGVkUGVybWlzc2lvbnM6ICd0b0Rpc2FibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zJyxcclxuICB0b0VuYWJsZUFsbEZpbHRyZWRQZXJtaXNzaW9uczogJ3RvRW5hYmxlQWxsRmlsdHJlZFBlcm1pc3Npb25zJyxcclxuICB0b0Rpc2FibGVBbGxGaWx0cmVkUGVybWlzc2lvbnM6ICd0b0Rpc2FibGVBbGxGaWx0cmVkUGVybWlzc2lvbnMnLFxyXG4gIGdldFdvcmtmbG93RW50aXR5SW5mb3JtYXRpb246ICdHZXRXb3JrZmxvd0VudGl0eUluZm9ybWF0aW9uJyxcclxuICBnZXRXb3JrZmxvd0V0YXRTdWl2YW50OiAnZ2V0V29ya2Zsb3dFdGF0U3VpdmFudCcsXHJcbiAgdXBkYXRlRW50aXR5V29ya2Zsb3dJbmZvcm1hdGlvbjogJ1VwZGF0ZVdvcmtmbG93SW5zdGFuY2UnLFxyXG4gIHVwZGF0ZUN1cnJlbnRVc2VyTGlnaHQ6ICd1cGRhdGVDdXJyZW50VXNlckxpZ2h0JyxcclxuICBjbGVhclBhc3N3b3JkOiAnY2xlYXJQYXNzd29yZCcsXHJcbiAgY2hhbmdlUGFzc3dvcmQ6ICdjaGFuZ2VQYXNzd29yZCcsXHJcbiAgY2hhbmdlUGFzc3dvcmRJbnZhbGlkOiAnY2hhbmdlUGFzc3dvcmRJbnZhbGlkJyxcclxuICBlbnRpdHlJbmZvOiAnZW50aXR5aW5mbycsXHJcbiAgZW50aXR5SW5mb0FuZFJlbGF0aW9uczogJ2VudGl0eS1pbmZvLWFuZC1yZWxhdGlvbnMnLFxyXG4gIGdldEFsbEZpbHRyZWRCeUlkT2JqZWN0OiAnZ2V0QWxsRmlsdHJlZEJ5SWRPYmplY3QnLFxyXG4gIGdldEFsbEZpbHRyZWRCeVVpZE9iamV0OiAnZ2V0QWxsRmlsdHJlZEJ5VWlkT2JqZXQnLFxyXG4gIGdldEFsbFBhZ2VkQXN5bmM6ICdHZXRBbGxQYWdlZEFzeW5jJyxcclxuICB1cGRhdGVNYXN0ZXJQYXJhbWV0ZXJzOiAnVXBkYXRlTWFzdGVyUGFyYW1ldGVycycsXHJcbiAgZ2V0TWFzdGVyUGFyYW1ldGVyczogJ0dldE1hc3RlclBhcmFtZXRlcnMnLFxyXG4gIGdldENvbm5lY3RlZFVzZXJzOiAnR2V0Q29ubmVjdGVkVXNlcnMnLFxyXG4gIGdldFdvcmtmbG93RXRhdEZvcm1CeUNsYXNzTmFtZTogXCJHZXRXb3JrZmxvd0V0YXRGb3JtQnlDbGFzc05hbWVcIixcclxuICBlbnRpdHlJbmZvQ29udHJvbGxlcjogXCJFbnRpdHlJbmZvXCIsXHJcbiAgc3FsQ29sdW1uczogJ3NxbENvbHVtbnMnLFxyXG4gIGVudGl0eUNvbHVtbnM6ICdlbnRpdHlDb2x1bW5zJyxcclxuICBwcm9qZWN0RmlsZXNDb2x1bW5zOiAncHJvamVjdEZpbGVzQ29sdW1ucycsXHJcbiAgZ2V0V29ya2Zsb3dDb25kaXRpb25QYXNzYWdlT3BlcmF0b3JFbnVtOiBcImdldFdvcmtmbG93Q29uZGl0aW9uUGFzc2FnZU9wZXJhdG9yRW51bVwiLFxyXG4gIGdldEJ5Q29kZU1vZHVsZTogJ0dldEJ5Q29kZU1vZHVsZScsXHJcbiAgZ2V0RGVzY3JpbWluYXRvckNsYXNzVmFsdWVzOiAnR2V0RGVzY3JpbWluYXRvckNsYXNzVmFsdWVzJyxcclxuICBnZXRUeXBlQ29sb25uZUVudW1Bc3luYzogJ2dldFR5cGVDb2xvbm5lRW51bUFzeW5jJyxcclxuICBnZXRBZmZlY3RhdGlvblV0aWxpc2F0ZXVyOiAnR2V0QWZmZWN0YXRpb25VdGlsaXNhdGV1cicsXHJcbiAgbW9kZWxlSW1wb3J0OiAnTW9kZWxlSW1wb3J0JyxcclxuICBjb2xvbm5lQnlDbGFzc05hbWVBc0tleVZhbHVlUGFpcjogJ2NvbG9uZUJ5Q2xhc3NOYW1lQXNLZXlWYWx1ZVBhaXInLFxyXG4gIE5vdGU6IFwiTm90ZXNcIixcclxuICBzdGF0dXM6IFwiU3RhdHVzXCIsXHJcbiAgZ2V0RW50aXR5U3RhdHVzQXNLZXlWYWx1ZVBhaXI6IFwiZ2V0RW50aXR5U3RhdHVzQXNLZXlWYWx1ZVBhaXJcIixcclxuICBnZXRTdGF0dXNUcmFuc2l0aW9uczogXCJnZXRTdGF0dXNUcmFuc2l0aW9uc1wiLFxyXG4gIGdldE1lbnVEYXRhOiAnR2V0TWVudURhdGEnLFxyXG4gIGFwaUV4cGxvcmVyOiBcIkFwaUV4cGxvcmVyXCIsXHJcbiAgYnlCdXNpbmVzc0NsYXNzOiBcImJ5QnVzaW5lc3NDbGFzc1wiLFxyXG4gIGVudGl0eVJlbGF0aW9uczogXCJlbnRpdHktcmVsYXRpb25zXCIsXHJcbiAgZW50aXR5VmFsaWRhdGlvbnM6IFwiRW50aXR5VmFsaWRhdGlvbnNJbmZvXCIsXHJcbiAgZW5kcG9pbnRzSW5mbzogJ2VuZHBvaW50cy1pbmZvJyxcclxuICBwYXJhbWV0cmVzOiAnUGFyYW1ldHJlcycsXHJcbiAgc3RhdHVzQ29sb3I6ICdTdGF0dXNDb2xvcicsXHJcbiAgZ2V0U3RhdHVzQ29sb3JEZXRhaWxzOiAnZ2V0U3RhdHVzQ29sb3JEZXRhaWxzJyxcclxuICBnZXRTdGF0dXNDb2xvckRldGFpbHNCeUJ1c2luZXNzQ2xhc3NOYW1lOiAnZ2V0U3RhdHVzQ29sb3JEZXRhaWxzQnlCdXNpbmVzc0NsYXNzTmFtZScsXHJcbiAgZ2V0Tm9tYnJlRmljaGllckpvaW50QnlJZDogJ0dldE5vbWJyZUZpY2hpZXJKb2ludEJ5SWQnLFxyXG4gIGdldFdvcmtmbG93RXRhdEJ5Q2xhc3NOYW1lQW5kRGVzY3JpbWluYXRvcjogJ0dldFdvcmtmbG93RXRhdEJ5Q2xhc3NOYW1lQW5kRGVzY3JpbWluYXRvcicsXHJcbiAgZm9ybXVsYWlyZTogJ0Zvcm11bGFpcmUnLFxyXG4gIGZvcm11bGFpcmVEYXRhOiAnRm9ybXVsYWlyZURhdGEnLFxyXG4gIGNvbHVtbnNEZWZpbml0aW9uOiAnY29sdW1ucy1kZWZpbml0aW9uJyxcclxuICBmb3JtdWxhaXJlRGF0YUNvbG9ubmU6ICdGb3JtdWxhaXJlRGF0YUNvbG9ubmUnLFxyXG4gIGdldEZvcm11bGFpcmVEYXRhQ29sb25uZXM6ICdnZXRGb3JtdWxhaXJlRGF0YUNvbG9ubmVzJyxcclxuICBjb2xvbm5lUGVyc29ubmFsaXNlZTogJ0NvbG9ubmVQZXJzb25uYWxpc2VlJyxcclxuICBjb2xvbm5lUGVyc29ubmFsaXNlZURhdGE6ICdDb2xvbm5lUGVyc29ubmFsaXNlZURhdGEnLFxyXG4gIGdldENvbG9ubmVQZXJzb25uYWxpc2VlOiAnZ2V0Q29sb25uZXNQZXJzb25uYWxpc2VlJyxcclxuICBnZXRQYXJhbWV0cmVzQXBwbGljYXRpb246ICdnZXRQYXJhbWV0cmVzQXBwbGljYXRpb24nLFxyXG4gIGdldFBhcmFtZXRyZUFwcGxpY2F0aW9uUGFyYW1CYXNlOiAnR2V0UGFyYW1ldHJlQXBwbGljYXRpb25QYXJhbUJhc2UnLFxyXG4gIGdldEFsbFdvcmtmbG93RXRhdFN1aXZhbnRCeVdvcmtmbG93RXRhdElkOiAnZ2V0QWxsV29ya2Zsb3dFdGF0U3VpdmFudEJ5V29ya2Zsb3dFdGF0SWQnLFxyXG4gIHVwZGF0ZVdvcmtmbG93RXRhdEZyb21LYW5iYW5WaWV3OiAnVXBkYXRlV29ya2Zsb3dFdGF0RnJvbUthbmJhblZpZXcnLFxyXG4gIG1haWxpbmc6IFwiTWFpbGluZ1wiLFxyXG4gIHNlbmRNYWlsTWVzc2FnZTogJ1NlbmRNYWlsJyxcclxuICBhY3Rpb25DUk06ICdhY3Rpb25DUk0nLFxyXG4gIGFsbFN0YXR1dEFjdGlvbkNSTUVudW06ICdhbGxTdGF0dXRBY3Rpb25DUk1FbnVtJyxcclxuICBhY3Rpb25FUlA6ICdhY3Rpb25FUlAnLFxyXG4gIGFsbFByaW9yaXRlQWN0aW9uQ1JNRW51bTogJ2FsbFByaW9yaXRlQWN0aW9uQ1JNRW51bScsXHJcbiAgYWxsUmVzdWx0YXRBY3Rpb25DUk1FbnVtOiAnYWxsUmVzdWx0YXRBY3Rpb25DUk1FbnVtJyxcclxuICBkYXRhOiAnZGF0YScsXHJcbiAgc2luZ2xlOiAnc2luZ2xlJyxcclxuICBHZXROYXR1cmVBY3Rpb25TdWl2YW50ZUJ5T3JkcmU6ICdHZXROYXR1cmVBY3Rpb25TdWl2YW50ZUJ5T3JkcmUnLFxyXG4gIG5hdHVyZUFjdGlvbjogJ05hdHVyZUFjdGlvbicsXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgQWRtaW5pc3RyYXRpb25FbmRwb2ludHMgPSB7XHJcbiAgZ2V0QWxsRW50aXR5U3RhdHVzOiAoY2xhc3NlTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zdGF0dXN9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRFbnRpdHlTdGF0dXNBc0tleVZhbHVlUGFpcn0vJHtjbGFzc2VOYW1lfWAsXHJcbiAgZ2V0U3RhdHVzVHJhbnNpdGlvbnM6IChjbGFzc05hbWU6IHN0cmluZywgY3VycmVudFN0YXR1czogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zdGF0dXN9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRTdGF0dXNUcmFuc2l0aW9uc30vJHtjbGFzc05hbWV9LyR7Y3VycmVudFN0YXR1c31gLFxyXG4gIGdldEFmZmVjdGF0aW9uVXRpbGlzYXRldXI6ICh0eXBlOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1ckFmZmVjdGF0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWZmZWN0YXRpb25VdGlsaXNhdGV1cn0vJHt0eXBlfWAsXHJcbiAgZ2V0QWxsRmlsdHJlZEJ5SWRPYmplY3Q6ICh0YXJnZXRJZDogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuam91cm5hbEFwcGxpY2F0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsRmlsdHJlZEJ5SWRPYmplY3R9LyR7dGFyZ2V0SWR9YCxcclxuICBnZXRBbGxGaWx0cmVkQnlVaWRPYmplY3Q6IChvYmplY3RJZDogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc3RhdHVzSGlzdG9yeX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFsbEZpbHRyZWRCeVVpZE9iamV0fS8ke29iamVjdElkfWAsXHJcbiAgZ2V0QWxsQ2xhc3N3OiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3d9YCxcclxuICBnZXRBbGxDbGFzc3dNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsTWluaW1hbH1gLFxyXG4gIGdldENsYXNzd01pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3d9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5taW5pbWFsfWAsXHJcbiAgZ2V0QWxsQ2xhc3N3RXRhdDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNsYXNzd0V0YXR9YCxcclxuICBnZXRBbGxDbGFzc3dFdGF0TWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNsYXNzd0V0YXR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxNaW5pbWFsfWAsXHJcbiAgZ2V0Q2xhc3N3RXRhdE1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldFdvcmtmbG93RXRhdEFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXNLZXlWYWx1ZVBhaXJ9YCxcclxuICBnZXRXb3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZUFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0Rm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbFdvcmtmbG93RXRhdEZvbmN0aW9ubmFsaXRlQXNLZXlWYWx1ZVBhaXI6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbEFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0QXNLZXlWYWx1ZVBhaXJCeUNsYXNzd0lkOiAoaWQ/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QXNLZXlWYWx1ZVBhaXJCeUNsYXNzd0lkfS8ke2lkfWAsXHJcbiAgZ2V0QXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWQ6IChpZD86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93RXRhdH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkfS8ke2lkfWAsXHJcbiAgdXBkYXRlV29ya2Zsb3dMaXN0OiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0U3VpdmFudH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnVwZGF0ZVdvcmtmbG93TGlzdH0vYCxcclxuICBnZXRGb25jdGlvbm5hbGl0ZUFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0V0YXRVaWQ6IChpZD86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93RXRhdEZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0Rm9uY3Rpb25uYWxpdGVBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dJZH0vJHtpZH1gLFxyXG4gIGdldEFsbENsYXNzd0V0YXRBc0tleVBhaXJWYWx1ZTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNsYXNzd0V0YXR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBbGxDbGFzc3dFdGF0QXNLZXlQYWlyVmFsdWV9YCxcclxuICBnZXRBbGxXb3JrZmxvdzogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3d9YCxcclxuICBnZXRBbGxXb3JrZmxvd0FzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3d9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxBc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldFdvcmtmbG93QXNLZXlWYWx1ZVBhaXI6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0QWxsRm9uY3Rpb25uYWxpdGU6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5mb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbEFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0QWxsRm9uY3Rpb25uYWxpdGVXb3JrZmxvd0J5Q2xhc3NXOiAoY2xhc3NlVz86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuR2V0QWxsRm9uY3Rpb25uYWxpdGVXb3JrZmxvd0NsYXNzV30vJHtjbGFzc2VXfWAsXHJcbiAgZ2V0Rm9uY3Rpb25uYWxpdGVBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXNLZXlWYWx1ZVBhaXJ9YCxcclxuICBnZXRGb25jdGlvbm5hbGl0ZUF1dG9yaXNlQXNLZXlWYWx1ZVBhaXI6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0QWxsVHlwZUZvbmN0aW9ubmFsaXRlRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsVHlwZUZvbmN0aW9ubmFsaXRlRW51bX1gLFxyXG4gIGdldEFsbFdvcmtmbG93SW5zdGFuY2U6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0luc3RhbmNlfWAsXHJcbiAgZ2V0QWxsV29ya2Zsb3dJbnN0YW5jZUFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dJbnN0YW5jZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbEFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0V29ya2Zsb3dJbnN0YW5jZUFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dJbnN0YW5jZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0V29ya2Zsb3dBc0tleVZhbHVlUGFpckJ5Q2xhc3N3SWQ6IChpZD86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0V29ya2Zsb3dBc0tleVZhbHVlUGFpckJ5Q2xhc3N3SWR9LyR7aWR9YCxcclxuICBnZXRXb3JrZmxvd0luc3RhbmNlQXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWQ6IChpZD86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93SW5zdGFuY2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRXb3JrZmxvd0luc3RhbmNlQXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWR9LyR7aWR9YCxcclxuICBnZXRBbGxHcm91cGVNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ3JvdXBlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsTWluaW1hbH1gLFxyXG4gIGdldEdyb3VwZU1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5ncm91cGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5taW5pbWFsfWAsXHJcbiAgZ2V0TGFuZ3VlRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0TGFuZ3VlRW51bX1gLFxyXG4gIGdldE5pdmVhdUVudW06ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldE5pdmVhdUVudW19YCxcclxuICBnZXRDb25uZXhpb25FbnVtOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRDb25uZXhpb25FbnVtfWAsXHJcbiAgZ2V0QWRtaW5Db25uZXhpb25FbnVtOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWRtaW59LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRDb25uZXhpb25FbnVtfWAsXHJcbiAgZ2V0QWZmaWNoYWdlQWxlcnRlRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWZmaWNoYWdlQWxlcnRlRW51bX1gLFxyXG4gIGdldEZvbmN0aW9ubmFsaXRlc0FzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudmdlc3Rpb25EZXNEcm9pdHN9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG5cclxuICBnZXRBbGxGb25jdGlvbm5hbGl0ZXNBc0tleVZhbHVlUGFpckJ5U291c01lbnVJZDogKFxyXG4gICAgbW9kdWxlSWQ/OiBzdHJpbmcsXHJcbiAgICBtZW51SWQ/OiBzdHJpbmcsXHJcbiAgICBzb3VzTWVudUlkPzogc3RyaW5nXHJcbiAgKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudmdlc3Rpb25EZXNEcm9pdHN9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBbGxGb25jdGlvbm5hbGl0ZXNBc0tleVZhbHVlUGFpckJ5U291c01lbnVJZH0vJHttb2R1bGVJZH0vJHttZW51SWR9LyR7c291c01lbnVJZH1gLFxyXG4gIGVuYWJsZUFsbFNlbGVjdGVkUGVybWlzc2lvbnM6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5ncm91cGVGb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnRvRW5hYmxlQWxsU2VsZWN0ZWRQZXJtaXNzaW9uc31gLFxyXG4gIGRpc2FibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ3JvdXBlRm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy50b0Rpc2FibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zfWAsXHJcbiAgZW5hYmxlQWxsRmlsdHJlZFBlcm1pc3Npb25zOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ3JvdXBlRm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy50b0VuYWJsZUFsbEZpbHRyZWRQZXJtaXNzaW9uc31gLFxyXG4gIGRpc2FibGVBbGxGaWx0cmVkUGVybWlzc2lvbnM6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5ncm91cGVGb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnRvRGlzYWJsZUFsbEZpbHRyZWRQZXJtaXNzaW9uc31gLFxyXG4gIGdldE1vZHVsZU1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tb2R1bGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5taW5pbWFsfWAsXHJcbiAgZ2V0QWxsTW9kdWxlTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1vZHVsZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWx9YCxcclxuICBnZXRNZW51TWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1lbnV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5taW5pbWFsfWAsXHJcbiAgZ2V0QWxsTWVudXNBc0tleVZhbHVlUGFpckJ5TW9kdWxlSWQ6IChpZD86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1lbnV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBbGxNZW51c0FzS2V5VmFsdWVQYWlyQnlNb2R1bGVJZH0vJHtpZH1gLFxyXG4gIGdldFNvdXNNZW51QXNLZXlWYWx1ZVBhaXI6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zb3VzTWVudX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0QWxsU291c01lbnVzQXNLZXlWYWx1ZVBhaXJCeU1lbnVJZDogKGlkPzogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc291c01lbnV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBbGxTb3VzTWVudXNBc0tleVZhbHVlUGFpckJ5TWVudUlkfS8ke2lkfWAsXHJcbiAgR2V0Q3VycmVudFVzZXI6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEN1cnJlbnRVc2VyfWAsXHJcbiAgR2V0Q3VycmVudFVzZXJXaXRoUm9sZXM6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEN1cnJlbnRVc2VyV2l0aFJvbGVzfWAsXHJcbiAgR2V0U3FsRmlsZXM6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5kYlVwZGF0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFNxbEZpbGVzfWAsXHJcbiAgR2V0U3FsVGV4dDogKGlkOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5kYlVwZGF0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFNxbFRleHR9LyR7aWR9YCxcclxuICBFeGVjdXRlU3FsRmlsZXM6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5kYlVwZGF0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmV4ZWN1dGVTcWxGaWxlc31gLFxyXG4gIEV4ZWN1dGVBbGxTcWxGaWxlczogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmRiVXBkYXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZXhlY3V0ZUFsbFNxbEZpbGVzfWAsXHJcbiAgZ2V0QWxsVXRpbGlzYXRldXJNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxNaW5pbWFsfWAsXHJcbiAgZ2V0VXRpbGlzYXRldXJNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5taW5pbWFsfWAsXHJcbiAgZ2V0QWxsQ2xhc3NlTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmpvdXJuYWxBcHBsaWNhdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWx9YCxcclxuICBnZXRDbGFzc2VNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuam91cm5hbEFwcGxpY2F0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldEVudGl0eVdvcmtsZm93SW5zdGFuY2VJbmZvcm1hdGlvbjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93SW5zdGFuY2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRXb3JrZmxvd0VudGl0eUluZm9ybWF0aW9ufWAsXHJcbiAgZ2V0V29ya2Zsb3dFdGF0U3VpdmFudEJ5V29ya2Zsb3dFdGF0OiAod29ya2Zsb3dFdGF0VWlkOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRXb3JrZmxvd0V0YXRTdWl2YW50fS8ke3dvcmtmbG93RXRhdFVpZH1gLFxyXG4gIHVwZGF0ZUVudGl0eVdvcmtmbG93SW5mb3JtYXRpb246ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0luc3RhbmNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXBkYXRlRW50aXR5V29ya2Zsb3dJbmZvcm1hdGlvbn1gLFxyXG4gIHVwZGF0ZUN1cnJlbnRVc2VyTGlnaHQ6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXBkYXRlQ3VycmVudFVzZXJMaWdodH1gLFxyXG4gIGltcG9ydEFsbFdvcmtmbG93Q2xhc3NlczogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuaW1wb3J0QWxsV29ya2Zsb3dDbGFzc2VzfWAsXHJcbiAgY2xlYXJQYXNzd29yZDogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGVhclBhc3N3b3JkfWAsXHJcbiAgY2hhbmdlUGFzc3dvcmQ6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2hhbmdlUGFzc3dvcmR9YCxcclxuICB1cGRhdGVNYXN0ZXJQYXJhbWV0ZXJzOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hZG1pbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnVwZGF0ZU1hc3RlclBhcmFtZXRlcnN9YCxcclxuICBjaGFuZ2VQYXNzd29yZEludmFsaWQ6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2hhbmdlUGFzc3dvcmRJbnZhbGlkfWAsXHJcbiAgZ2V0RW50aXR5SW5mb3JtYXRpb25zOiAoYnVzaW5lc3NDbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5Q29uZmlndXJhdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUluZm99LyR7YnVzaW5lc3NDbGFzc05hbWV9YCxcclxuICBnZXRFbnRpdHlJbmZvcm1hdGlvbnNBbmRSZWxhdGlvbnM6IChidXNpbmVzc0NsYXNzOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUNvbmZpZ3VyYXRpb259LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlJbmZvQW5kUmVsYXRpb25zfS8ke2J1c2luZXNzQ2xhc3N9YCxcclxuICBHZXRBbGxFbnRpdGllc0luZm9ybWF0aW9uczogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5Q29uZmlndXJhdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUluZm99LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBbGx9YCxcclxuICBjcmVhdGVPclVwZGF0ZUVudGl0eUluZm9ybWF0aW9uczogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5Q29uZmlndXJhdGlvbn1gLFxyXG4gIGRlbGV0ZUVudGl0eUluZm9ybWF0aW9uczogKGNsYXNzTmFtZTogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlDb25maWd1cmF0aW9ufS8ke2NsYXNzTmFtZX1gLFxyXG4gIGdldENsYXNzd0J5Tm9tOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0Q2xhc3N3QnlOb219YCxcclxuICBnZXRFbnRpdHlDb2x1bW5zOiAoYnVzaW5lc3NDbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb0NvbnRyb2xsZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxBc0tleVZhbHVlUGFpcn0vJHtidXNpbmVzc0NsYXNzTmFtZX1gLFxyXG4gIGdldEVudGl0eWNvbHVtbnNGcm9tTW9kZWxzOiAoYnVzaW5lc3NDbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb0NvbnRyb2xsZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlDb2x1bW5zfS8ke2J1c2luZXNzQ2xhc3NOYW1lfWAsXHJcbiAgZ2V0Q29sdW1uc0Zyb21Qcm9qZWN0RGF0YWJhc2U6IChidXNpbmVzc0NsYXNzTmFtZTogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlJbmZvQ29udHJvbGxlcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnByb2plY3RGaWxlc0NvbHVtbnN9LyR7YnVzaW5lc3NDbGFzc05hbWV9YCxcclxuICBnZXRTcWxDb2x1bW5zOiAoYnVzaW5lc3NDbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb0NvbnRyb2xsZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zcWxDb2x1bW5zfS8ke2J1c2luZXNzQ2xhc3NOYW1lfWAsXHJcbiAgZ2V0V29ya2Zsb3dDb25kaXRpb25QYXNzYWdlT3BlcmF0b3JFbnVtOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFdvcmtmbG93Q29uZGl0aW9uUGFzc2FnZU9wZXJhdG9yRW51bX1gLFxyXG4gIGdldENvbm5lY3RlZFVzZXJzOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hZG1pbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldENvbm5lY3RlZFVzZXJzfWAsXHJcbiAgZ2V0V29ya2Zsb3dFdGF0Rm9ybUJ5Q2xhc3NOYW1lOiAoY2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93RXRhdH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFdvcmtmbG93RXRhdEZvcm1CeUNsYXNzTmFtZX0vJHtjbGFzc05hbWV9YCxcclxuICAvLyAgZ2V0QWxlcnRCeUNvZGVNb2R1bGU6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsZXJ0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QnlDb2RlTW9kdWxlfWAsXHJcbiAgZ2V0QWxlcnRCeUNvZGVNb2R1bGU6IChjb2RlTW9kdWxlOiBzdHJpbmcsIGFsZXJ0RGlzcGxheTogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGVydH0vJHtjb2RlTW9kdWxlfS8ke2FsZXJ0RGlzcGxheX1gLFxyXG4gIGdldENvbG9ubmVzQnlDbGFzc05hbWVBc0tleVZhbHVlUGFpcjogKFxyXG4gICAgcGFyZW50RW50aXR5TmFtZTogc3RyaW5nLFxyXG4gICAgY29sdW1uTmFtZT86IHN0cmluZ1xyXG4gICkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1vZGVsZUltcG9ydH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNvbG9ubmVCeUNsYXNzTmFtZUFzS2V5VmFsdWVQYWlyfS8ke3BhcmVudEVudGl0eU5hbWV9LyR7Y29sdW1uTmFtZX1gLFxyXG5cclxuICBnZXREZXNjcmltaW5hdG9yVmFsdWVzQnlDbGFzc05hbWU6IChjbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3d9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXREZXNjcmltaW5hdG9yQ2xhc3NWYWx1ZXN9LyR7Y2xhc3NOYW1lfWAsXHJcblxyXG4gIGdldE1lbnVJbmZvOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tZW51fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0TWVudURhdGF9YCxcclxuICBnZXRQYXJhbWV0cmVBcHBsaWNhdGlvbjogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMucGFyYW1ldHJlc30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFBhcmFtZXRyZXNBcHBsaWNhdGlvbn1gLFxyXG4gIHJlZnJlc2hNZW51OiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tZW51fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0TWVudURhdGF9YCxcclxuICBnZXRBcGlBc0tleVZhbHVlUGFpcjogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXBpRXhwbG9yZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbEFwaUFzS2V5VmFsdWVQYWlyOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hcGlFeHBsb3Jlcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbEFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0QWxsQXBpQXNLZXlWYWx1ZVBhaXJCeUJ1c2luZXNzQ2xhc3NOYW1lOlxyXG4gICAgKGJ1c2luZXNzQ2xhc3M/OiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFwaUV4cGxvcmVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsQXNLZXlWYWx1ZVBhaXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5ieUJ1c2luZXNzQ2xhc3N9LyR7YnVzaW5lc3NDbGFzc31gLFxyXG4gIGdldEVudGl0eVJlbGF0aW9uczogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXBpRXhwbG9yZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlSZWxhdGlvbnN9YCxcclxuICBnZXRFbnRpdHlWYWxpZGF0aW9uczogKGJ1c2luZXNzQ2xhc3M6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5VmFsaWRhdGlvbnN9LyR7YnVzaW5lc3NDbGFzc31gLFxyXG4gIGdldEVuZHBvaW50c0luZm9zOiAoYnVzaW5lc3NDbGFzczogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hcGlFeHBsb3Jlcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVuZHBvaW50c0luZm99LyR7YnVzaW5lc3NDbGFzc31gLFxyXG4gIGdldFN0YXR1c0NvbG9yRGV0YWlsczogKGJ1c2luZXNzQ2xhc3NOYW1lOiBzdHJpbmcsIHN0YXR1c0VudW1OYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnN0YXR1c0NvbG9yfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0U3RhdHVzQ29sb3JEZXRhaWxzfS8ke2J1c2luZXNzQ2xhc3NOYW1lfS8ke3N0YXR1c0VudW1OYW1lfWAsXHJcbiAgZ2V0U3RhdHVzQ29sb3JEZXRhaWxzQnlCdXNpbmVzc0NsYXNzTmFtZTogKGJ1c2luZXNzQ2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnN0YXR1c0NvbG9yfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0U3RhdHVzQ29sb3JEZXRhaWxzQnlCdXNpbmVzc0NsYXNzTmFtZX0vJHtidXNpbmVzc0NsYXNzTmFtZX1gLFxyXG4gIGdldE5vbWJyZUZpY2hpZXJKb2ludEJ5SWQ6ICh1aWQ6IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmZpY2hpZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXROb21icmVGaWNoaWVySm9pbnRCeUlkfS8ke3VpZH1gLFxyXG4gIGdldEFsbFR5cGVGaWNoaWVyTWluaW1hbEJ5Q2xhc3NlOiAoY2xhc3NlOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy50eXBlRmljaGllcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWxCeUNsYXNzZX0vJHtjbGFzc2V9YCxcclxuICBnZXRXb3JrZmxvd0V0YXRCeUNsYXNzTmFtZUFuZERlc2NyaW1pbmF0b3I6IChjbGFzc05hbWU6IHN0cmluZywgZGVzY3JpbWluYXRvclZhbHVlPzogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0V29ya2Zsb3dFdGF0QnlDbGFzc05hbWVBbmREZXNjcmltaW5hdG9yfS8ke2NsYXNzTmFtZX0ke2Rlc2NyaW1pbmF0b3JWYWx1ZSAhPT0gdW5kZWZpbmVkICYmIGRlc2NyaW1pbmF0b3JWYWx1ZSAhPSBudWxsID8gYC8ke2Rlc2NyaW1pbmF0b3JWYWx1ZX1gIDogXCJcIn1gLFxyXG4gIGdldGNvbG9ubmVzUGVyc29ubmFsaXNlZTogKGJ1c2luZXNzQ2xhc3M6IHN0cmluZywgb2NjdXJlbmNlPzogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jb2xvbm5lUGVyc29ubmFsaXNlZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldENvbG9ubmVQZXJzb25uYWxpc2VlfS8ke2J1c2luZXNzQ2xhc3N9JHtvY2N1cmVuY2UgIT0gbnVsbCAmJiBvY2N1cmVuY2UgIT0gdW5kZWZpbmVkID8gJy8nICsgb2NjdXJlbmNlIDogJyd9YCxcclxuICBjcmVhdGVPclVwZGF0ZUZvcm11bGFpcmVEYXRhOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jb2xvbm5lUGVyc29ubmFsaXNlZURhdGF9YCxcclxuICBnZXRBbGxXb3JrZmxvd0V0YXRTdWl2YW50QnlXb3JrZmxvd0V0YXRJZDogKGlkPzogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXRTdWl2YW50fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsV29ya2Zsb3dFdGF0U3VpdmFudEJ5V29ya2Zsb3dFdGF0SWR9LyR7aWR9YCxcclxuXHJcbiAgdXBkYXRlV29ya2Zsb3dFdGF0RnJvbUthbmJhblZpZXc6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93SW5zdGFuY2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51cGRhdGVXb3JrZmxvd0V0YXRGcm9tS2FuYmFuVmlld31gLFxyXG5cclxuXHJcbiAgc2VuZE1haWxNZXNzYWdlOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tYWlsaW5nfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc2VuZE1haWxNZXNzYWdlfWAsXHJcblxyXG4gIC8vIEZvcm11bGFpcmVEYXRhXHJcbiAgZ2V0Rm9ybXVsYWlyZURhdGFDb2x1bW5zRGVmaW5pdGlvbjogKGlkOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmZvcm11bGFpcmVEYXRhfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY29sdW1uc0RlZmluaXRpb259LyR7aWR9YCxcclxuICAvLyBFbnRpdHkgRm9ybXVsYWlyZXNcclxuICBnZXRFbnRpdHlGb3JtdWxhaXJlc0NvbHVtbnNEZWZpbml0aW9uOiAoYnVzaW5lc3NDbGFzczogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5mb3JtdWxhaXJlRGF0YX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNvbHVtbnNEZWZpbml0aW9ufS8ke2J1c2luZXNzQ2xhc3N9YCxcclxuXHJcblxyXG5cclxuICBhbGxTdGF0dXRBY3Rpb25DUk1FbnVtOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWN0aW9uQ1JNfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsU3RhdHV0QWN0aW9uQ1JNRW51bX1gLFxyXG4gIGFsbFJlc3VsdGF0QWN0aW9uQ1JNRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFjdGlvbkNSTX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbFJlc3VsdGF0QWN0aW9uQ1JNRW51bX1gLFxyXG5cclxuICBhbGxQcmlvcml0ZUFjdGlvbkNSTUVudW06ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hY3Rpb25DUk19LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxQcmlvcml0ZUFjdGlvbkNSTUVudW19YCxcclxuXHJcbiAgZ2V0RW50aXR5RGF0YTogKGJ1c2luZXNzQ2xhc3M6IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUNvbmZpZ3VyYXRpb259LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlJbmZvfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZGF0YX0vJHtidXNpbmVzc0NsYXNzfWAsXHJcblxyXG4gICAgZ2V0RW50aXR5RGF0YUJ5SWQ6IChidXNpbmVzc0NsYXNzOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlDb25maWd1cmF0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmRhdGF9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zaW5nbGV9LyR7YnVzaW5lc3NDbGFzc31gLFxyXG4gXHJcbkdldE5hdHVyZUFjdGlvblN1aXZhbnRlQnlPcmRyZTogKGlkPyA6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubmF0dXJlQWN0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuR2V0TmF0dXJlQWN0aW9uU3VpdmFudGVCeU9yZHJlfS8ke2lkfWAsXHJcbiAgZ2V0QWxsTmF0dXJlQWN0aW9uTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm5hdHVyZUFjdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWx9YCxcclxuICBnZXROYXR1cmVBY3Rpb25NaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubmF0dXJlQWN0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG5cclxuICB9OyJdfQ==
267
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5kcG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL2VuZC1wb2ludHMvZW5kcG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUc7SUFDcEMsT0FBTyxFQUFFLFNBQVM7SUFDbEIsV0FBVyxFQUFFLGFBQWE7SUFDMUIsa0JBQWtCLEVBQUUsb0JBQW9CO0lBQ3hDLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLGlCQUFpQixFQUFFLG1CQUFtQjtJQUN0QyxjQUFjLEVBQUUsZ0JBQWdCO0lBQ2hDLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFdBQVcsRUFBRSxhQUFhO0lBQzFCLEtBQUssRUFBRSxPQUFPO0lBQ2Qsc0JBQXNCLEVBQUUsd0JBQXdCO0lBQ2hELFFBQVEsRUFBRSxVQUFVO0lBQ3BCLGFBQWEsRUFBRSxlQUFlO0lBQzlCLGFBQWEsRUFBRSxlQUFlO0lBQzlCLGdCQUFnQixFQUFFLGtCQUFrQjtJQUNwQyxzQkFBc0IsRUFBRSx3QkFBd0I7SUFDaEQsTUFBTSxFQUFFLFFBQVE7SUFDaEIsd0JBQXdCLEVBQUUsMEJBQTBCO0lBQ3BELFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFlBQVksRUFBRSxjQUFjO0lBQzVCLFFBQVEsRUFBRSxVQUFVO0lBQ3BCLEtBQUssRUFBRSxPQUFPO0lBQ2QsbUJBQW1CLEVBQUUscUJBQXFCO0lBQzFDLG1CQUFtQixFQUFFLHFCQUFxQjtJQUMxQywwQkFBMEIsRUFBRSw0QkFBNEI7SUFDeEQsUUFBUSxFQUFFLFVBQVU7SUFDcEIsZ0JBQWdCLEVBQUUsa0JBQWtCO0lBQ3BDLGNBQWMsRUFBRSxnQkFBZ0I7SUFDaEMsbUJBQW1CLEVBQUUsb0JBQW9CO0lBQ3pDLHNCQUFzQixF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SUFFMUcsYUFBYSxFQUFFLENBQUMsYUFBcUIsRUFBRSxFQUFFLENBQ3ZDLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxzQkFBc0IsQ0FBQyxtQkFBbUIsSUFBSSxzQkFBc0IsQ0FBQyxVQUFVLElBQUksc0JBQXNCLENBQUMsSUFBSSxJQUFJLGFBQWEsRUFBRTtJQUVwSixpQkFBaUIsRUFBRSxDQUFDLGFBQXFCLEVBQUUsRUFBRSxDQUM3QyxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksc0JBQXNCLENBQUMsbUJBQW1CLElBQUksc0JBQXNCLENBQUMsVUFBVSxJQUFJLHNCQUFzQixDQUFDLElBQUksSUFBSSxzQkFBc0IsQ0FBQyxNQUFNLElBQUksYUFBYSxFQUFFO0lBRXpMLDhCQUE4QixFQUFFLENBQUMsRUFBWSxFQUFFLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksc0JBQXNCLENBQUMsWUFBWSxJQUFJLHNCQUFzQixDQUFDLDhCQUE4QixJQUFJLEVBQUUsRUFBRTtJQUN2Syx5QkFBeUIsRUFBRSxHQUFHLEVBQUUsQ0FDOUIsR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLFlBQVksSUFBSSxzQkFBc0IsQ0FBQyxVQUFVLEVBQUU7SUFDL0Ysc0JBQXNCLEVBQUUsR0FBRyxFQUFFLENBQzNCLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxzQkFBc0IsQ0FBQyxZQUFZLElBQUksc0JBQXNCLENBQUMsT0FBTyxFQUFFO0NBRTNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb25FUlAgfSBmcm9tIFwiLi4vbW9kZWxzL2FjdGlvbkVycC9hY3Rpb25FcnBcIjtcclxuaW1wb3J0IHsgU2VnbWVudCB9IGZyb20gXCIuL2Jhc2V1cmlcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBBZG1pbmlzdHJhdGlvblNlZ21lbnRzID0ge1xyXG4gIGZpY2hpZXI6ICdGaWNoaWVyJyxcclxuICB0eXBlRmljaGllcjogJ1R5cGVGaWNoaWVyJyxcclxuICBhbGxNaW5pbWFsQnlDbGFzc2U6ICdhbGxtaW5pbWFsQnlDbGFzc2UnLFxyXG4gIGFsbE1pbmltYWw6ICdhbGxtaW5pbWFsJyxcclxuICBtaW5pbWFsOiAnbWluaW1hbCcsXHJcbiAgYWxsQXNLZXlWYWx1ZVBhaXI6ICdhbGxBc0tleVZhbHVlUGFpcicsXHJcbiAgYXNLZXlWYWx1ZVBhaXI6ICdhc0tleVZhbHVlUGFpcicsXHJcbiAgZ3JvdXBlOiAnZ3JvdXBlJyxcclxuICB1dGlsaXNhdGV1cjogJ1V0aWxpc2F0ZXVyJyxcclxuICBhZG1pbjogJ2FkbWluJyxcclxuICB1dGlsaXNhdGV1ckFmZmVjdGF0aW9uOiAnVXRpbGlzYXRldXJBZmZlY3RhdGlvbicsXHJcbiAgZGJVcGRhdGU6ICdEQlVwZGF0ZScsXHJcbiAgZ2V0TGFuZ3VlRW51bTogJ2dldExhbmd1ZUVudW0nLFxyXG4gIGdldE5pdmVhdUVudW06ICdnZXROaXZlYXVFbnVtJyxcclxuICBnZXRDb25uZXhpb25FbnVtOiAnZ2V0Q29ubmV4aW9uRW51bScsXHJcbiAgZ2V0QWZmaWNoYWdlQWxlcnRlRW51bTogJ2dldEFmZmljaGFnZUFsZXJ0ZUVudW0nLFxyXG4gIGNsYXNzdzogJ0NsYXNzdycsXHJcbiAgaW1wb3J0QWxsV29ya2Zsb3dDbGFzc2VzOiBcIkltcG9ydEFsbFdvcmtmbG93Q2xhc3Nlc1wiLFxyXG4gIGNsYXNzd0V0YXQ6ICdDbGFzc3dFdGF0JyxcclxuICB3b3JrZmxvd0V0YXQ6ICdXb3JrZmxvd0V0YXQnLFxyXG4gIHdvcmtmbG93OiAnV29ya2Zsb3cnLFxyXG4gIGFsZXJ0OiAnQWxlcnQnLFxyXG4gIGVudGl0eUNvbmZpZ3VyYXRpb246ICdFbnRpdHlDb25maWd1cmF0aW9uJyxcclxuICB3b3JrZmxvd0V0YXRTdWl2YW50OiAnV29ya2Zsb3dFdGF0U3VpdmFudCcsXHJcbiAgd29ya2Zsb3dFdGF0Rm9uY3Rpb25uYWxpdGU6ICdXb3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZScsXHJcbiAgcGVyc29ubmU6ICdwZXJzb25uZScsXHJcbiAgd29ya2Zsb3dJbnN0YW5jZTogJ1dvcmtmbG93SW5zdGFuY2UnLFxyXG4gIGZvbmN0aW9ubmFsaXRlOiAnRm9uY3Rpb25uYWxpdGUnLFxyXG4gIFZoaXN0b3JpcXVlV29ya2Zsb3c6ICdIaXN0b3JpcXVlV29ya2Zsb3cnLFxyXG4gIFZ0YWJsZWF1RGVCb3JkV29ya2Zsb3c6ICdUYWJsZWF1RGVCb3JkV29ya2Zsb3cnLFxyXG4gIHZnZXN0aW9uRGVzRHJvaXRzOiAnR2VzdGlvbkRlc0Ryb2l0cycsXHJcbiAgdmdlc3Rpb25EZXNEcm9pdHNQZXJzb25uYWxpc2VlOiAnR2VzdGlvbkRyb2l0c0N1c3RvbUZvbmN0aW9ubmFsaXRpZXMnLFxyXG4gIG1vZHVsZTogJ01vZHVsZScsXHJcbiAgbWVudTogJ21lbnUnLFxyXG4gIHNvdXNNZW51OiAnc291c01lbnUnLFxyXG4gIGdldEFsbE1lbnVzQXNLZXlWYWx1ZVBhaXJCeU1vZHVsZUlkOiAnZ2V0QWxsTWVudXNBc0tleVZhbHVlUGFpckJ5TW9kdWxlSWQnLFxyXG4gIGdldEFsbFNvdXNNZW51c0FzS2V5VmFsdWVQYWlyQnlNZW51SWQ6XHJcbiAgICAnZ2V0QWxsU291c01lbnVzQXNLZXlWYWx1ZVBhaXJCeU1lbnVJZCcsXHJcbiAgZ2V0QWxsRm9uY3Rpb25uYWxpdGVzQXNLZXlWYWx1ZVBhaXJCeVNvdXNNZW51SWQ6XHJcbiAgICAnZ2V0QWxsRm9uY3Rpb25uYWxpdGVzQXNLZXlWYWx1ZVBhaXJCeVNvdXNNZW51SWQnLFxyXG4gIGdldEFsbFR5cGVGb25jdGlvbm5hbGl0ZUVudW06ICdnZXRBbGxUeXBlRm9uY3Rpb25uYWxpdGVFbnVtJyxcclxuICBnZXRCeUlkOiAnZ2V0YnlpZCcsXHJcbiAgZ2V0QWxsOiAnZ2V0YWxsJyxcclxuICBnZXRBbGxQYWdlZDogJ2dldGFsbHBhZ2VkJyxcclxuICBhZGQ6ICdhZGQnLFxyXG4gIHVwZGF0ZTogJ3VwZGF0ZScsXHJcbiAgZGVsZXRlOiAnZGVsZXRlJyxcclxuICBnZXRFbnVtOiAnZ2V0ZW51bScsXHJcbiAgZ2V0QnlDdXJyZW50VXNlcjogJ0dldEJ5Q3VycmVudFVzZXInLFxyXG4gIGdldGVudW1jaG9peHR5cGVBRE1JTklTVFJBVElPTjogJ2dldGVudW1jaG9peHR5cGVBRE1JTklTVFJBVElPTicsXHJcbiAgZ2V0Y3JlYXRlbW9kZWw6ICdnZXRjcmVhdGVtb2RlbCcsXHJcbiAgY3JlYXRlQURNSU5JU1RSQVRJT046ICdjcmVhdGVBRE1JTklTVFJBVElPTicsXHJcbiAgZ2V0QnlQYXJhbVVzZXI6ICdnZXRCeVBhcmFtVXNlcicsXHJcbiAgZ2V0QWxsQnlDdXJyZW50VXNlcklkOiAnZ2V0QWxsQnlDdXJyZW50VXNlcklkJyxcclxuICBnZXRBc0tleVZhbHVlUGFpckJ5Q2xhc3N3SWQ6ICdnZXRBc0tleVZhbHVlUGFpckJ5Q2xhc3N3SWQnLFxyXG4gIGdldEFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkOiAnZ2V0QXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWQnLFxyXG4gIHVwZGF0ZVdvcmtmbG93TGlzdDogJ3VwZGF0ZVdvcmtmbG93TGlzdCcsXHJcbiAgZ2V0Rm9uY3Rpb25uYWxpdGVBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dJZDogJ2dldFdvcmtmbG93RXRhdEZvbmN0aW9ubmFsaXRlQXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93RXRhdElkJyxcclxuICBnZXRXb3JrZmxvd0FzS2V5VmFsdWVQYWlyQnlDbGFzc3dJZDogJ2dldFdvcmtmbG93QXNLZXlWYWx1ZVBhaXJCeUNsYXNzd0lkJyxcclxuICBnZXRXb3JrZmxvd0luc3RhbmNlQXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWQ6XHJcbiAgICAnZ2V0V29ya2Zsb3dJbnN0YW5jZUFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkJyxcclxuICBnZXRBbGxDbGFzc3dCeU5vbTogJ2dldEFsbENsYXNzd0J5Tm9tJyxcclxuICBnZXRDbGFzc3dCeU5vbTogJ2dldENsYXNzd0J5Tm9tJyxcclxuICBnZXRBbGxDbGFzc3dFdGF0QXNLZXlQYWlyVmFsdWU6ICdDbGFzc3dFdGF0QXNLZXlWYWx1ZVBhaXInLFxyXG4gIEdldEFsbEZvbmN0aW9ubmFsaXRlV29ya2Zsb3dDbGFzc1c6ICdHZXRBbGxGb25jdGlvbm5hbGl0ZVdvcmtmbG93Q2xhc3NXJyxcclxuICBnZXRDdXJyZW50VXNlcjogJ2dldEN1cnJlbnRVc2VyJyxcclxuICBnZXRDdXJyZW50VXNlcldpdGhSb2xlczogJ2dldEN1cnJlbnRVc2VyV2l0aFJvbGVzJyxcclxuICBnZXRTcWxGaWxlczogJ2dldFNxbEZpbGVzJyxcclxuICBnZXRTcWxUZXh0OiAnZ2V0U3FsVGV4dCcsXHJcbiAgZXhlY3V0ZVNxbEZpbGVzOiAnZXhlY3V0ZVNjcmlwdCcsXHJcbiAgZXhlY3V0ZUFsbFNxbEZpbGVzOiAnZXhlY3V0ZUFsbFNjcmlwdHMnLFxyXG4gIGpvdXJuYWxBcHBsaWNhdGlvbjogJ0pvdXJuYWxBcHBsaWNhdGlvbicsXHJcbiAgc3RhdHVzSGlzdG9yeTogJ1N0YXR1c0hpc3RvcnknLFxyXG4gIGNsYXNzZTogJ0NsYXNzZScsXHJcbiAgZ3JvdXBlRm9uY3Rpb25uYWxpdGU6ICdHcm91cGVGb25jdGlvbm5hbGl0ZScsXHJcbiAgdG9FbmFibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zOiAndG9FbmFibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zJyxcclxuICB0b0Rpc2FibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zOiAndG9EaXNhYmxlQWxsU2VsZWN0ZWRQZXJtaXNzaW9ucycsXHJcbiAgdG9FbmFibGVBbGxGaWx0cmVkUGVybWlzc2lvbnM6ICd0b0VuYWJsZUFsbEZpbHRyZWRQZXJtaXNzaW9ucycsXHJcbiAgdG9EaXNhYmxlQWxsRmlsdHJlZFBlcm1pc3Npb25zOiAndG9EaXNhYmxlQWxsRmlsdHJlZFBlcm1pc3Npb25zJyxcclxuICBnZXRXb3JrZmxvd0VudGl0eUluZm9ybWF0aW9uOiAnR2V0V29ya2Zsb3dFbnRpdHlJbmZvcm1hdGlvbicsXHJcbiAgZ2V0V29ya2Zsb3dFdGF0U3VpdmFudDogJ2dldFdvcmtmbG93RXRhdFN1aXZhbnQnLFxyXG4gIHVwZGF0ZUVudGl0eVdvcmtmbG93SW5mb3JtYXRpb246ICdVcGRhdGVXb3JrZmxvd0luc3RhbmNlJyxcclxuICB1cGRhdGVDdXJyZW50VXNlckxpZ2h0OiAndXBkYXRlQ3VycmVudFVzZXJMaWdodCcsXHJcbiAgY2xlYXJQYXNzd29yZDogJ2NsZWFyUGFzc3dvcmQnLFxyXG4gIGNoYW5nZVBhc3N3b3JkOiAnY2hhbmdlUGFzc3dvcmQnLFxyXG4gIGNoYW5nZVBhc3N3b3JkSW52YWxpZDogJ2NoYW5nZVBhc3N3b3JkSW52YWxpZCcsXHJcbiAgZW50aXR5SW5mbzogJ2VudGl0eWluZm8nLFxyXG4gIGVudGl0eUluZm9BbmRSZWxhdGlvbnM6ICdlbnRpdHktaW5mby1hbmQtcmVsYXRpb25zJyxcclxuICBnZXRBbGxGaWx0cmVkQnlJZE9iamVjdDogJ2dldEFsbEZpbHRyZWRCeUlkT2JqZWN0JyxcclxuICBnZXRBbGxGaWx0cmVkQnlVaWRPYmpldDogJ2dldEFsbEZpbHRyZWRCeVVpZE9iamV0JyxcclxuICBnZXRBbGxQYWdlZEFzeW5jOiAnR2V0QWxsUGFnZWRBc3luYycsXHJcbiAgdXBkYXRlTWFzdGVyUGFyYW1ldGVyczogJ1VwZGF0ZU1hc3RlclBhcmFtZXRlcnMnLFxyXG4gIGdldE1hc3RlclBhcmFtZXRlcnM6ICdHZXRNYXN0ZXJQYXJhbWV0ZXJzJyxcclxuICBnZXRDb25uZWN0ZWRVc2VyczogJ0dldENvbm5lY3RlZFVzZXJzJyxcclxuICBnZXRXb3JrZmxvd0V0YXRGb3JtQnlDbGFzc05hbWU6IFwiR2V0V29ya2Zsb3dFdGF0Rm9ybUJ5Q2xhc3NOYW1lXCIsXHJcbiAgZW50aXR5SW5mb0NvbnRyb2xsZXI6IFwiRW50aXR5SW5mb1wiLFxyXG4gIHNxbENvbHVtbnM6ICdzcWxDb2x1bW5zJyxcclxuICBlbnRpdHlDb2x1bW5zOiAnZW50aXR5Q29sdW1ucycsXHJcbiAgcHJvamVjdEZpbGVzQ29sdW1uczogJ3Byb2plY3RGaWxlc0NvbHVtbnMnLFxyXG4gIGdldFdvcmtmbG93Q29uZGl0aW9uUGFzc2FnZU9wZXJhdG9yRW51bTogXCJnZXRXb3JrZmxvd0NvbmRpdGlvblBhc3NhZ2VPcGVyYXRvckVudW1cIixcclxuICBnZXRCeUNvZGVNb2R1bGU6ICdHZXRCeUNvZGVNb2R1bGUnLFxyXG4gIGdldERlc2NyaW1pbmF0b3JDbGFzc1ZhbHVlczogJ0dldERlc2NyaW1pbmF0b3JDbGFzc1ZhbHVlcycsXHJcbiAgZ2V0VHlwZUNvbG9ubmVFbnVtQXN5bmM6ICdnZXRUeXBlQ29sb25uZUVudW1Bc3luYycsXHJcbiAgZ2V0QWZmZWN0YXRpb25VdGlsaXNhdGV1cjogJ0dldEFmZmVjdGF0aW9uVXRpbGlzYXRldXInLFxyXG4gIG1vZGVsZUltcG9ydDogJ01vZGVsZUltcG9ydCcsXHJcbiAgY29sb25uZUJ5Q2xhc3NOYW1lQXNLZXlWYWx1ZVBhaXI6ICdjb2xvbmVCeUNsYXNzTmFtZUFzS2V5VmFsdWVQYWlyJyxcclxuICBOb3RlOiBcIk5vdGVzXCIsXHJcbiAgc3RhdHVzOiBcIlN0YXR1c1wiLFxyXG4gIGdldEVudGl0eVN0YXR1c0FzS2V5VmFsdWVQYWlyOiBcImdldEVudGl0eVN0YXR1c0FzS2V5VmFsdWVQYWlyXCIsXHJcbiAgZ2V0U3RhdHVzVHJhbnNpdGlvbnM6IFwiZ2V0U3RhdHVzVHJhbnNpdGlvbnNcIixcclxuICBnZXRNZW51RGF0YTogJ0dldE1lbnVEYXRhJyxcclxuICBhcGlFeHBsb3JlcjogXCJBcGlFeHBsb3JlclwiLFxyXG4gIGJ5QnVzaW5lc3NDbGFzczogXCJieUJ1c2luZXNzQ2xhc3NcIixcclxuICBlbnRpdHlSZWxhdGlvbnM6IFwiZW50aXR5LXJlbGF0aW9uc1wiLFxyXG4gIGVudGl0eVZhbGlkYXRpb25zOiBcIkVudGl0eVZhbGlkYXRpb25zSW5mb1wiLFxyXG4gIGVuZHBvaW50c0luZm86ICdlbmRwb2ludHMtaW5mbycsXHJcbiAgcGFyYW1ldHJlczogJ1BhcmFtZXRyZXMnLFxyXG4gIHN0YXR1c0NvbG9yOiAnU3RhdHVzQ29sb3InLFxyXG4gIGdldFN0YXR1c0NvbG9yRGV0YWlsczogJ2dldFN0YXR1c0NvbG9yRGV0YWlscycsXHJcbiAgZ2V0U3RhdHVzQ29sb3JEZXRhaWxzQnlCdXNpbmVzc0NsYXNzTmFtZTogJ2dldFN0YXR1c0NvbG9yRGV0YWlsc0J5QnVzaW5lc3NDbGFzc05hbWUnLFxyXG4gIGdldE5vbWJyZUZpY2hpZXJKb2ludEJ5SWQ6ICdHZXROb21icmVGaWNoaWVySm9pbnRCeUlkJyxcclxuICBnZXRXb3JrZmxvd0V0YXRCeUNsYXNzTmFtZUFuZERlc2NyaW1pbmF0b3I6ICdHZXRXb3JrZmxvd0V0YXRCeUNsYXNzTmFtZUFuZERlc2NyaW1pbmF0b3InLFxyXG4gIGZvcm11bGFpcmU6ICdGb3JtdWxhaXJlJyxcclxuICBmb3JtdWxhaXJlRGF0YTogJ0Zvcm11bGFpcmVEYXRhJyxcclxuICBjb2x1bW5zRGVmaW5pdGlvbjogJ2NvbHVtbnMtZGVmaW5pdGlvbicsXHJcbiAgZm9ybXVsYWlyZURhdGFDb2xvbm5lOiAnRm9ybXVsYWlyZURhdGFDb2xvbm5lJyxcclxuICBnZXRGb3JtdWxhaXJlRGF0YUNvbG9ubmVzOiAnZ2V0Rm9ybXVsYWlyZURhdGFDb2xvbm5lcycsXHJcbiAgY29sb25uZVBlcnNvbm5hbGlzZWU6ICdDb2xvbm5lUGVyc29ubmFsaXNlZScsXHJcbiAgY29sb25uZVBlcnNvbm5hbGlzZWVEYXRhOiAnQ29sb25uZVBlcnNvbm5hbGlzZWVEYXRhJyxcclxuICBnZXRDb2xvbm5lUGVyc29ubmFsaXNlZTogJ2dldENvbG9ubmVzUGVyc29ubmFsaXNlZScsXHJcbiAgZ2V0UGFyYW1ldHJlc0FwcGxpY2F0aW9uOiAnZ2V0UGFyYW1ldHJlc0FwcGxpY2F0aW9uJyxcclxuICBnZXRQYXJhbWV0cmVBcHBsaWNhdGlvblBhcmFtQmFzZTogJ0dldFBhcmFtZXRyZUFwcGxpY2F0aW9uUGFyYW1CYXNlJyxcclxuICBnZXRBbGxXb3JrZmxvd0V0YXRTdWl2YW50QnlXb3JrZmxvd0V0YXRJZDogJ2dldEFsbFdvcmtmbG93RXRhdFN1aXZhbnRCeVdvcmtmbG93RXRhdElkJyxcclxuICB1cGRhdGVXb3JrZmxvd0V0YXRGcm9tS2FuYmFuVmlldzogJ1VwZGF0ZVdvcmtmbG93RXRhdEZyb21LYW5iYW5WaWV3JyxcclxuICBtYWlsaW5nOiBcIk1haWxpbmdcIixcclxuICBzZW5kTWFpbE1lc3NhZ2U6ICdTZW5kTWFpbCcsXHJcbiAgYWN0aW9uQ1JNOiAnYWN0aW9uQ1JNJyxcclxuICBhbGxTdGF0dXRBY3Rpb25DUk1FbnVtOiAnYWxsU3RhdHV0QWN0aW9uQ1JNRW51bScsXHJcbiAgYWN0aW9uRVJQOiAnYWN0aW9uRVJQJyxcclxuICBhbGxQcmlvcml0ZUFjdGlvbkNSTUVudW06ICdhbGxQcmlvcml0ZUFjdGlvbkNSTUVudW0nLFxyXG4gIGFsbFJlc3VsdGF0QWN0aW9uQ1JNRW51bTogJ2FsbFJlc3VsdGF0QWN0aW9uQ1JNRW51bScsXHJcbiAgZGF0YTogJ2RhdGEnLFxyXG4gIHNpbmdsZTogJ3NpbmdsZScsXHJcbiAgR2V0TmF0dXJlQWN0aW9uU3VpdmFudGVCeU9yZHJlOiAnR2V0TmF0dXJlQWN0aW9uU3VpdmFudGVCeU9yZHJlJyxcclxuICBuYXR1cmVBY3Rpb246ICdOYXR1cmVBY3Rpb24nLFxyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IEFkbWluaXN0cmF0aW9uRW5kcG9pbnRzID0ge1xyXG4gIGdldEFsbEVudGl0eVN0YXR1czogKGNsYXNzZU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc3RhdHVzfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0RW50aXR5U3RhdHVzQXNLZXlWYWx1ZVBhaXJ9LyR7Y2xhc3NlTmFtZX1gLFxyXG4gIGdldFN0YXR1c1RyYW5zaXRpb25zOiAoY2xhc3NOYW1lOiBzdHJpbmcsIGN1cnJlbnRTdGF0dXM6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc3RhdHVzfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0U3RhdHVzVHJhbnNpdGlvbnN9LyR7Y2xhc3NOYW1lfS8ke2N1cnJlbnRTdGF0dXN9YCxcclxuICBnZXRBZmZlY3RhdGlvblV0aWxpc2F0ZXVyOiAodHlwZTogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJBZmZlY3RhdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFmZmVjdGF0aW9uVXRpbGlzYXRldXJ9LyR7dHlwZX1gLFxyXG4gIGdldEFsbEZpbHRyZWRCeUlkT2JqZWN0OiAodGFyZ2V0SWQ6IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmpvdXJuYWxBcHBsaWNhdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFsbEZpbHRyZWRCeUlkT2JqZWN0fS8ke3RhcmdldElkfWAsXHJcbiAgZ2V0QWxsRmlsdHJlZEJ5VWlkT2JqZWN0OiAob2JqZWN0SWQ6IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnN0YXR1c0hpc3Rvcnl9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBbGxGaWx0cmVkQnlVaWRPYmpldH0vJHtvYmplY3RJZH1gLFxyXG4gIGdldEFsbENsYXNzdzogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3fWAsXHJcbiAgZ2V0QWxsQ2xhc3N3TWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNsYXNzd30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWx9YCxcclxuICBnZXRDbGFzc3dNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldEFsbENsYXNzd0V0YXQ6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3dFdGF0fWAsXHJcbiAgZ2V0QWxsQ2xhc3N3RXRhdE1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsTWluaW1hbH1gLFxyXG4gIGdldENsYXNzd0V0YXRNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3RXRhdH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1pbmltYWx9YCxcclxuICBnZXRXb3JrZmxvd0V0YXRBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93RXRhdH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0V29ya2Zsb3dFdGF0Rm9uY3Rpb25uYWxpdGVBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93RXRhdEZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXNLZXlWYWx1ZVBhaXJ9YCxcclxuICBnZXRBbGxXb3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZUFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0Rm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxBc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFzS2V5VmFsdWVQYWlyQnlDbGFzc3dJZDogKGlkPzogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xhc3N3RXRhdH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFzS2V5VmFsdWVQYWlyQnlDbGFzc3dJZH0vJHtpZH1gLFxyXG4gIGdldEFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkOiAoaWQ/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dJZH0vJHtpZH1gLFxyXG4gIHVwZGF0ZVdvcmtmbG93TGlzdDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93RXRhdFN1aXZhbnR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51cGRhdGVXb3JrZmxvd0xpc3R9L2AsXHJcbiAgZ2V0Rm9uY3Rpb25uYWxpdGVBc0tleVZhbHVlUGFpckJ5V29ya2Zsb3dFdGF0VWlkOiAoaWQ/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXRGb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEZvbmN0aW9ubmFsaXRlQXNLZXlWYWx1ZVBhaXJCeVdvcmtmbG93SWR9LyR7aWR9YCxcclxuICBnZXRBbGxDbGFzc3dFdGF0QXNLZXlQYWlyVmFsdWU6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jbGFzc3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsQ2xhc3N3RXRhdEFzS2V5UGFpclZhbHVlfWAsXHJcbiAgZ2V0QWxsV29ya2Zsb3c6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93fWAsXHJcbiAgZ2V0QWxsV29ya2Zsb3dBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsQXNLZXlWYWx1ZVBhaXJ9YCxcclxuICBnZXRXb3JrZmxvd0FzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3d9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbEZvbmN0aW9ubmFsaXRlOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxBc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbEZvbmN0aW9ubmFsaXRlV29ya2Zsb3dCeUNsYXNzVzogKGNsYXNzZVc/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5mb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLkdldEFsbEZvbmN0aW9ubmFsaXRlV29ya2Zsb3dDbGFzc1d9LyR7Y2xhc3NlV31gLFxyXG4gIGdldEZvbmN0aW9ubmFsaXRlQXNLZXlWYWx1ZVBhaXI6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5mb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFzS2V5VmFsdWVQYWlyfWAsXHJcbiAgZ2V0Rm9uY3Rpb25uYWxpdGVBdXRvcmlzZUFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0Rm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbFR5cGVGb25jdGlvbm5hbGl0ZUVudW06ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5mb25jdGlvbm5hbGl0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFsbFR5cGVGb25jdGlvbm5hbGl0ZUVudW19YCxcclxuICBnZXRBbGxXb3JrZmxvd0luc3RhbmNlOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dJbnN0YW5jZX1gLFxyXG4gIGdldEFsbFdvcmtmbG93SW5zdGFuY2VBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93SW5zdGFuY2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxBc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldFdvcmtmbG93SW5zdGFuY2VBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93SW5zdGFuY2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldFdvcmtmbG93QXNLZXlWYWx1ZVBhaXJCeUNsYXNzd0lkOiAoaWQ/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFdvcmtmbG93QXNLZXlWYWx1ZVBhaXJCeUNsYXNzd0lkfS8ke2lkfWAsXHJcbiAgZ2V0V29ya2Zsb3dJbnN0YW5jZUFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkOiAoaWQ/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0luc3RhbmNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0V29ya2Zsb3dJbnN0YW5jZUFzS2V5VmFsdWVQYWlyQnlXb3JrZmxvd0lkfS8ke2lkfWAsXHJcbiAgZ2V0QWxsR3JvdXBlTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdyb3VwZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWx9YCxcclxuICBnZXRHcm91cGVNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ3JvdXBlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldExhbmd1ZUVudW06ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldExhbmd1ZUVudW19YCxcclxuICBnZXROaXZlYXVFbnVtOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXROaXZlYXVFbnVtfWAsXHJcbiAgZ2V0Q29ubmV4aW9uRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0Q29ubmV4aW9uRW51bX1gLFxyXG4gIGdldEFkbWluQ29ubmV4aW9uRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFkbWlufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0Q29ubmV4aW9uRW51bX1gLFxyXG4gIGdldEFmZmljaGFnZUFsZXJ0ZUVudW06ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEFmZmljaGFnZUFsZXJ0ZUVudW19YCxcclxuICBnZXRGb25jdGlvbm5hbGl0ZXNBc0tleVZhbHVlUGFpcjogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnZnZXN0aW9uRGVzRHJvaXRzfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXNLZXlWYWx1ZVBhaXJ9YCxcclxuXHJcbiAgZ2V0QWxsRm9uY3Rpb25uYWxpdGVzQXNLZXlWYWx1ZVBhaXJCeVNvdXNNZW51SWQ6IChcclxuICAgIG1vZHVsZUlkPzogc3RyaW5nLFxyXG4gICAgbWVudUlkPzogc3RyaW5nLFxyXG4gICAgc291c01lbnVJZD86IHN0cmluZ1xyXG4gICkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnZnZXN0aW9uRGVzRHJvaXRzfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsRm9uY3Rpb25uYWxpdGVzQXNLZXlWYWx1ZVBhaXJCeVNvdXNNZW51SWR9LyR7bW9kdWxlSWR9LyR7bWVudUlkfS8ke3NvdXNNZW51SWR9YCxcclxuICBlbmFibGVBbGxTZWxlY3RlZFBlcm1pc3Npb25zOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ3JvdXBlRm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy50b0VuYWJsZUFsbFNlbGVjdGVkUGVybWlzc2lvbnN9YCxcclxuICBkaXNhYmxlQWxsU2VsZWN0ZWRQZXJtaXNzaW9uczogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdyb3VwZUZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudG9EaXNhYmxlQWxsU2VsZWN0ZWRQZXJtaXNzaW9uc31gLFxyXG4gIGVuYWJsZUFsbEZpbHRyZWRQZXJtaXNzaW9uczogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdyb3VwZUZvbmN0aW9ubmFsaXRlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudG9FbmFibGVBbGxGaWx0cmVkUGVybWlzc2lvbnN9YCxcclxuICBkaXNhYmxlQWxsRmlsdHJlZFBlcm1pc3Npb25zOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ3JvdXBlRm9uY3Rpb25uYWxpdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy50b0Rpc2FibGVBbGxGaWx0cmVkUGVybWlzc2lvbnN9YCxcclxuICBnZXRNb2R1bGVNaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubW9kdWxlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldEFsbE1vZHVsZU1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tb2R1bGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxNaW5pbWFsfWAsXHJcbiAgZ2V0TWVudU1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tZW51fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldEFsbE1lbnVzQXNLZXlWYWx1ZVBhaXJCeU1vZHVsZUlkOiAoaWQ/OiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tZW51fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsTWVudXNBc0tleVZhbHVlUGFpckJ5TW9kdWxlSWR9LyR7aWR9YCxcclxuICBnZXRTb3VzTWVudUFzS2V5VmFsdWVQYWlyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc291c01lbnV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbFNvdXNNZW51c0FzS2V5VmFsdWVQYWlyQnlNZW51SWQ6IChpZD86IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnNvdXNNZW51fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsU291c01lbnVzQXNLZXlWYWx1ZVBhaXJCeU1lbnVJZH0vJHtpZH1gLFxyXG4gIEdldEN1cnJlbnRVc2VyOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRDdXJyZW50VXNlcn1gLFxyXG4gIEdldEN1cnJlbnRVc2VyV2l0aFJvbGVzOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudXRpbGlzYXRldXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRDdXJyZW50VXNlcldpdGhSb2xlc31gLFxyXG4gIEdldFNxbEZpbGVzOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZGJVcGRhdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRTcWxGaWxlc31gLFxyXG4gIEdldFNxbFRleHQ6IChpZDogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZGJVcGRhdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRTcWxUZXh0fS8ke2lkfWAsXHJcbiAgRXhlY3V0ZVNxbEZpbGVzOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZGJVcGRhdGV9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5leGVjdXRlU3FsRmlsZXN9YCxcclxuICBFeGVjdXRlQWxsU3FsRmlsZXM6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5kYlVwZGF0ZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmV4ZWN1dGVBbGxTcWxGaWxlc31gLFxyXG4gIGdldEFsbFV0aWxpc2F0ZXVyTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsTWluaW1hbH1gLFxyXG4gIGdldFV0aWxpc2F0ZXVyTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG4gIGdldEFsbENsYXNzZU1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5qb3VybmFsQXBwbGljYXRpb259LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxNaW5pbWFsfWAsXHJcbiAgZ2V0Q2xhc3NlTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmpvdXJuYWxBcHBsaWNhdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1pbmltYWx9YCxcclxuICBnZXRFbnRpdHlXb3JrbGZvd0luc3RhbmNlSW5mb3JtYXRpb246ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0luc3RhbmNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0V29ya2Zsb3dFbnRpdHlJbmZvcm1hdGlvbn1gLFxyXG4gIGdldFdvcmtmbG93RXRhdFN1aXZhbnRCeVdvcmtmbG93RXRhdDogKHdvcmtmbG93RXRhdFVpZDogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0V29ya2Zsb3dFdGF0U3VpdmFudH0vJHt3b3JrZmxvd0V0YXRVaWR9YCxcclxuICB1cGRhdGVFbnRpdHlXb3JrZmxvd0luZm9ybWF0aW9uOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dJbnN0YW5jZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnVwZGF0ZUVudGl0eVdvcmtmbG93SW5mb3JtYXRpb259YCxcclxuICB1cGRhdGVDdXJyZW50VXNlckxpZ2h0OiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnVwZGF0ZUN1cnJlbnRVc2VyTGlnaHR9YCxcclxuICBpbXBvcnRBbGxXb3JrZmxvd0NsYXNzZXM6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNsYXNzd30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmltcG9ydEFsbFdvcmtmbG93Q2xhc3Nlc31gLFxyXG4gIGNsZWFyUGFzc3dvcmQ6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnV0aWxpc2F0ZXVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY2xlYXJQYXNzd29yZH1gLFxyXG4gIGNoYW5nZVBhc3N3b3JkOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNoYW5nZVBhc3N3b3JkfWAsXHJcbiAgdXBkYXRlTWFzdGVyUGFyYW1ldGVyczogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWRtaW59LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51cGRhdGVNYXN0ZXJQYXJhbWV0ZXJzfWAsXHJcbiAgY2hhbmdlUGFzc3dvcmRJbnZhbGlkOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51dGlsaXNhdGV1cn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNoYW5nZVBhc3N3b3JkSW52YWxpZH1gLFxyXG4gIGdldEVudGl0eUluZm9ybWF0aW9uczogKGJ1c2luZXNzQ2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUNvbmZpZ3VyYXRpb259LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlJbmZvfS8ke2J1c2luZXNzQ2xhc3NOYW1lfWAsXHJcbiAgZ2V0RW50aXR5SW5mb3JtYXRpb25zQW5kUmVsYXRpb25zOiAoYnVzaW5lc3NDbGFzczogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlDb25maWd1cmF0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb0FuZFJlbGF0aW9uc30vJHtidXNpbmVzc0NsYXNzfWAsXHJcbiAgR2V0QWxsRW50aXRpZXNJbmZvcm1hdGlvbnM6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUNvbmZpZ3VyYXRpb259LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlJbmZvfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsfWAsXHJcbiAgY3JlYXRlT3JVcGRhdGVFbnRpdHlJbmZvcm1hdGlvbnM6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUNvbmZpZ3VyYXRpb259YCxcclxuICBkZWxldGVFbnRpdHlJbmZvcm1hdGlvbnM6IChjbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5Q29uZmlndXJhdGlvbn0vJHtjbGFzc05hbWV9YCxcclxuICBnZXRDbGFzc3dCeU5vbTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNsYXNzd30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldENsYXNzd0J5Tm9tfWAsXHJcbiAgZ2V0RW50aXR5Q29sdW1uczogKGJ1c2luZXNzQ2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUluZm9Db250cm9sbGVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsQXNLZXlWYWx1ZVBhaXJ9LyR7YnVzaW5lc3NDbGFzc05hbWV9YCxcclxuICBnZXRFbnRpdHljb2x1bW5zRnJvbU1vZGVsczogKGJ1c2luZXNzQ2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUluZm9Db250cm9sbGVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5Q29sdW1uc30vJHtidXNpbmVzc0NsYXNzTmFtZX1gLFxyXG4gIGdldENvbHVtbnNGcm9tUHJvamVjdERhdGFiYXNlOiAoYnVzaW5lc3NDbGFzc05hbWU6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb0NvbnRyb2xsZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5wcm9qZWN0RmlsZXNDb2x1bW5zfS8ke2J1c2luZXNzQ2xhc3NOYW1lfWAsXHJcbiAgZ2V0U3FsQ29sdW1uczogKGJ1c2luZXNzQ2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUluZm9Db250cm9sbGVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc3FsQ29sdW1uc30vJHtidXNpbmVzc0NsYXNzTmFtZX1gLFxyXG4gIGdldFdvcmtmbG93Q29uZGl0aW9uUGFzc2FnZU9wZXJhdG9yRW51bTogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3d9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRXb3JrZmxvd0NvbmRpdGlvblBhc3NhZ2VPcGVyYXRvckVudW19YCxcclxuICBnZXRDb25uZWN0ZWRVc2VyczogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWRtaW59LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRDb25uZWN0ZWRVc2Vyc31gLFxyXG4gIGdldFdvcmtmbG93RXRhdEZvcm1CeUNsYXNzTmFtZTogKGNsYXNzTmFtZTogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRXb3JrZmxvd0V0YXRGb3JtQnlDbGFzc05hbWV9LyR7Y2xhc3NOYW1lfWAsXHJcbiAgLy8gIGdldEFsZXJ0QnlDb2RlTW9kdWxlOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGVydH0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldEJ5Q29kZU1vZHVsZX1gLFxyXG4gIGdldEFsZXJ0QnlDb2RlTW9kdWxlOiAoY29kZU1vZHVsZTogc3RyaW5nLCBhbGVydERpc3BsYXk6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxlcnR9LyR7Y29kZU1vZHVsZX0vJHthbGVydERpc3BsYXl9YCxcclxuICBnZXRDb2xvbm5lc0J5Q2xhc3NOYW1lQXNLZXlWYWx1ZVBhaXI6IChcclxuICAgIHBhcmVudEVudGl0eU5hbWU6IHN0cmluZyxcclxuICAgIGNvbHVtbk5hbWU/OiBzdHJpbmdcclxuICApID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tb2RlbGVJbXBvcnR9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jb2xvbm5lQnlDbGFzc05hbWVBc0tleVZhbHVlUGFpcn0vJHtwYXJlbnRFbnRpdHlOYW1lfS8ke2NvbHVtbk5hbWV9YCxcclxuXHJcbiAgZ2V0RGVzY3JpbWluYXRvclZhbHVlc0J5Q2xhc3NOYW1lOiAoY2xhc3NOYW1lOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0RGVzY3JpbWluYXRvckNsYXNzVmFsdWVzfS8ke2NsYXNzTmFtZX1gLFxyXG5cclxuICBnZXRNZW51SW5mbzogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWVudX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldE1lbnVEYXRhfWAsXHJcbiAgZ2V0UGFyYW1ldHJlQXBwbGljYXRpb246ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLnBhcmFtZXRyZXN9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5nZXRQYXJhbWV0cmVzQXBwbGljYXRpb259YCxcclxuICByZWZyZXNoTWVudTogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWVudX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldE1lbnVEYXRhfWAsXHJcbiAgZ2V0QXBpQXNLZXlWYWx1ZVBhaXI6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFwaUV4cGxvcmVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXNLZXlWYWx1ZVBhaXJ9YCxcclxuICBnZXRBbGxBcGlBc0tleVZhbHVlUGFpcjogKCkgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXBpRXhwbG9yZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxBc0tleVZhbHVlUGFpcn1gLFxyXG4gIGdldEFsbEFwaUFzS2V5VmFsdWVQYWlyQnlCdXNpbmVzc0NsYXNzTmFtZTpcclxuICAgIChidXNpbmVzc0NsYXNzPzogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hcGlFeHBsb3Jlcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbEFzS2V5VmFsdWVQYWlyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYnlCdXNpbmVzc0NsYXNzfS8ke2J1c2luZXNzQ2xhc3N9YCxcclxuICBnZXRFbnRpdHlSZWxhdGlvbnM6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFwaUV4cGxvcmVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5UmVsYXRpb25zfWAsXHJcbiAgZ2V0RW50aXR5VmFsaWRhdGlvbnM6IChidXNpbmVzc0NsYXNzOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eVZhbGlkYXRpb25zfS8ke2J1c2luZXNzQ2xhc3N9YCxcclxuICBnZXRFbmRwb2ludHNJbmZvczogKGJ1c2luZXNzQ2xhc3M6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYXBpRXhwbG9yZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbmRwb2ludHNJbmZvfS8ke2J1c2luZXNzQ2xhc3N9YCxcclxuICBnZXRTdGF0dXNDb2xvckRldGFpbHM6IChidXNpbmVzc0NsYXNzTmFtZTogc3RyaW5nLCBzdGF0dXNFbnVtTmFtZTogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zdGF0dXNDb2xvcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFN0YXR1c0NvbG9yRGV0YWlsc30vJHtidXNpbmVzc0NsYXNzTmFtZX0vJHtzdGF0dXNFbnVtTmFtZX1gLFxyXG4gIGdldFN0YXR1c0NvbG9yRGV0YWlsc0J5QnVzaW5lc3NDbGFzc05hbWU6IChidXNpbmVzc0NsYXNzTmFtZTogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zdGF0dXNDb2xvcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldFN0YXR1c0NvbG9yRGV0YWlsc0J5QnVzaW5lc3NDbGFzc05hbWV9LyR7YnVzaW5lc3NDbGFzc05hbWV9YCxcclxuICBnZXROb21icmVGaWNoaWVySm9pbnRCeUlkOiAodWlkOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5maWNoaWVyfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0Tm9tYnJlRmljaGllckpvaW50QnlJZH0vJHt1aWR9YCxcclxuICBnZXRBbGxUeXBlRmljaGllck1pbmltYWxCeUNsYXNzZTogKGNsYXNzZTogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMudHlwZUZpY2hpZXJ9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxNaW5pbWFsQnlDbGFzc2V9LyR7Y2xhc3NlfWAsXHJcbiAgICBnZXRUeXBlRmljaGllck1pbmltYWw6ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy50eXBlRmljaGllcn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm1pbmltYWx9YCxcclxuICBnZXRXb3JrZmxvd0V0YXRCeUNsYXNzTmFtZUFuZERlc2NyaW1pbmF0b3I6IChjbGFzc05hbWU6IHN0cmluZywgZGVzY3JpbWluYXRvclZhbHVlPzogc3RyaW5nKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMud29ya2Zsb3dFdGF0fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0V29ya2Zsb3dFdGF0QnlDbGFzc05hbWVBbmREZXNjcmltaW5hdG9yfS8ke2NsYXNzTmFtZX0ke2Rlc2NyaW1pbmF0b3JWYWx1ZSAhPT0gdW5kZWZpbmVkICYmIGRlc2NyaW1pbmF0b3JWYWx1ZSAhPSBudWxsID8gYC8ke2Rlc2NyaW1pbmF0b3JWYWx1ZX1gIDogXCJcIn1gLFxyXG4gIGdldGNvbG9ubmVzUGVyc29ubmFsaXNlZTogKGJ1c2luZXNzQ2xhc3M6IHN0cmluZywgb2NjdXJlbmNlPzogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jb2xvbm5lUGVyc29ubmFsaXNlZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmdldENvbG9ubmVQZXJzb25uYWxpc2VlfS8ke2J1c2luZXNzQ2xhc3N9JHtvY2N1cmVuY2UgIT0gbnVsbCAmJiBvY2N1cmVuY2UgIT0gdW5kZWZpbmVkID8gJy8nICsgb2NjdXJlbmNlIDogJyd9YCxcclxuICBjcmVhdGVPclVwZGF0ZUZvcm11bGFpcmVEYXRhOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5jb2xvbm5lUGVyc29ubmFsaXNlZURhdGF9YCxcclxuICBnZXRBbGxXb3JrZmxvd0V0YXRTdWl2YW50QnlXb3JrZmxvd0V0YXRJZDogKGlkPzogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy53b3JrZmxvd0V0YXRTdWl2YW50fS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZ2V0QWxsV29ya2Zsb3dFdGF0U3VpdmFudEJ5V29ya2Zsb3dFdGF0SWR9LyR7aWR9YCxcclxuXHJcbiAgdXBkYXRlV29ya2Zsb3dFdGF0RnJvbUthbmJhblZpZXc6ICgpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLndvcmtmbG93SW5zdGFuY2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy51cGRhdGVXb3JrZmxvd0V0YXRGcm9tS2FuYmFuVmlld31gLFxyXG5cclxuXHJcbiAgc2VuZE1haWxNZXNzYWdlOiAoKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5tYWlsaW5nfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuc2VuZE1haWxNZXNzYWdlfWAsXHJcblxyXG4gIC8vIEZvcm11bGFpcmVEYXRhXHJcbiAgZ2V0Rm9ybXVsYWlyZURhdGFDb2x1bW5zRGVmaW5pdGlvbjogKGlkOiBzdHJpbmcpID0+IGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmZvcm11bGFpcmVEYXRhfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuY29sdW1uc0RlZmluaXRpb259LyR7aWR9YCxcclxuICAvLyBFbnRpdHkgRm9ybXVsYWlyZXNcclxuICBnZXRFbnRpdHlGb3JtdWxhaXJlc0NvbHVtbnNEZWZpbml0aW9uOiAoYnVzaW5lc3NDbGFzczogc3RyaW5nKSA9PiBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5mb3JtdWxhaXJlRGF0YX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmNvbHVtbnNEZWZpbml0aW9ufS8ke2J1c2luZXNzQ2xhc3N9YCxcclxuXHJcblxyXG5cclxuICBhbGxTdGF0dXRBY3Rpb25DUk1FbnVtOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWN0aW9uQ1JNfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuYWxsU3RhdHV0QWN0aW9uQ1JNRW51bX1gLFxyXG4gIGFsbFJlc3VsdGF0QWN0aW9uQ1JNRW51bTogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFjdGlvbkNSTX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbFJlc3VsdGF0QWN0aW9uQ1JNRW51bX1gLFxyXG5cclxuICBhbGxQcmlvcml0ZUFjdGlvbkNSTUVudW06ICgpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hY3Rpb25DUk19LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5hbGxQcmlvcml0ZUFjdGlvbkNSTUVudW19YCxcclxuXHJcbiAgZ2V0RW50aXR5RGF0YTogKGJ1c2luZXNzQ2xhc3M6IHN0cmluZykgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmVudGl0eUNvbmZpZ3VyYXRpb259LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlJbmZvfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZGF0YX0vJHtidXNpbmVzc0NsYXNzfWAsXHJcblxyXG4gICAgZ2V0RW50aXR5RGF0YUJ5SWQ6IChidXNpbmVzc0NsYXNzOiBzdHJpbmcpID0+XHJcbiAgICBgJHtTZWdtZW50LmJhc2V9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5lbnRpdHlDb25maWd1cmF0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuZW50aXR5SW5mb30vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmRhdGF9LyR7QWRtaW5pc3RyYXRpb25TZWdtZW50cy5zaW5nbGV9LyR7YnVzaW5lc3NDbGFzc31gLFxyXG4gXHJcbkdldE5hdHVyZUFjdGlvblN1aXZhbnRlQnlPcmRyZTogKGlkPyA6IHN0cmluZykgPT4gYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubmF0dXJlQWN0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMuR2V0TmF0dXJlQWN0aW9uU3VpdmFudGVCeU9yZHJlfS8ke2lkfWAsXHJcbiAgZ2V0QWxsTmF0dXJlQWN0aW9uTWluaW1hbDogKCkgPT5cclxuICAgIGAke1NlZ21lbnQuYmFzZX0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLm5hdHVyZUFjdGlvbn0vJHtBZG1pbmlzdHJhdGlvblNlZ21lbnRzLmFsbE1pbmltYWx9YCxcclxuICBnZXROYXR1cmVBY3Rpb25NaW5pbWFsOiAoKSA9PlxyXG4gICAgYCR7U2VnbWVudC5iYXNlfS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubmF0dXJlQWN0aW9ufS8ke0FkbWluaXN0cmF0aW9uU2VnbWVudHMubWluaW1hbH1gLFxyXG5cclxuICB9OyJdfQ==
@@ -40,6 +40,8 @@ export class TsiUploadFicheComponent extends TsiFormComponentBaseComponent {
40
40
  this.isDisable = true;
41
41
  this.modeRef = Modes;
42
42
  this.typeFichierListUrl = '';
43
+ this.administrationEndpoints = AdministrationEndpoints;
44
+ this.businessClassNames = BusinessClassNames;
43
45
  this.onSave = new EventEmitter();
44
46
  }
45
47
  ngOnInit() {
@@ -187,12 +189,12 @@ export class TsiUploadFicheComponent extends TsiFormComponentBaseComponent {
187
189
  reader.readAsArrayBuffer(file);
188
190
  }
189
191
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiUploadFicheComponent, deps: [{ token: i1.FichierService }, { token: i2.ErrorResponseManagerService }, { token: i3.DynamicDialogRef }, { token: i3.DynamicDialogConfig }, { token: i2.TsiNotificationService }, { token: i2.TsiConfirmationService }, { token: i2.DialogDataService }], target: i0.ɵɵFactoryTarget.Component }); }
190
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiUploadFicheComponent, selector: "app-tsi-upload-fiche", outputs: { onSave: "onSave" }, providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"'upload_fichier' | localize \" (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TypeFichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [listSourceUrl]=\"typeFichierListUrl\" [(bind)]=\"fichier.typeFichier\"\r\n id-field=\"uid\" [isFiltered]=\"true\" label-field=\"libelle\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TableLiee'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'tableLiee'\" [(inputField)]=\"fichier.tableLiee\"\r\n [disabled]=\"isDisable\"></Tsi-Text-Box>\r\n <!-- <Tsi-Search-Combo\r\n class=\"col-6\"\r\n [(bind)]=\"fichier.tableLiee\"\r\n id-field=\"id\"\r\n label-field=\"value\"\r\n (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Nom'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'nom'\" [(inputField)]=\"fichier.nom\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_DateFichier'\"></Tsi-Label>\r\n <Tsi-Date-Picker class=\"col-8\" [inputName]=\"'dateFichier'\"\r\n [(inputField)]=\"fichier.dateFichier\"></Tsi-Date-Picker>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Version'\"></Tsi-Label>\r\n <Tsi-Integer class=\"col-8\" [inputName]=\"'version'\" [(inputField)]=\"fichier.version\"\r\n [disabled]=\"true\"></Tsi-Integer>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Objet'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-10\" [inputName]=\"'Objet'\" [(inputField)]=\"fichier.objet\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Description'\"></Tsi-Label>\r\n <Tsi-Text-Area class=\"col-10\" [inputName]=\"'description'\" [(inputField)]=\"fichier.description\" [rows]=\"5\"\r\n [cols]=\"5\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n\r\n <Tsi-Label for=\"isFileStorage\" class=\"col-1\" [labelValue]=\"'parambase_param_fichier_isFileStorage'\"></Tsi-Label>\r\n <Tsi-CheckBox id=\"isFileStorage\" class=\"col-5\" [isBinary]=\"true\"\r\n [inputName]=\"'isFileStorage'\" [disabled]=\"true\" [inputField]=\"fichier.isFileStorage\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <div class=\"col-11\">\r\n <Tsi-File-Manager \r\n [showFileUpload]=\"true\" \r\n [(inputField)]=\"fichier.contenu\"\r\n [(fileName)]=\"fichier.nomFichierComplet\" \r\n name=\"fileFichier\" \r\n id=\"fileUploading\" \r\n inputName=\"contenu\" \r\n accept=\"\"\r\n [maxFileSize]=\"10485760\" \r\n [multiple]=\"false\" \r\n [disabled]=\"isEditMode()\"\r\n [showDownloadButton]=\"true\"\r\n [showCancelButton]=\"false\"\r\n [showUploadButton]=\"false\" \r\n [exploreOnDownload]=\"true\"\r\n (onSelectFileManager)=\"onFileSelected($event)\"\r\n ></Tsi-File-Manager>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n \r\n <!-- <p-fileUpload #fileUploadFichier name=\"demo[]\" (onBeforeUpload)=\"onImportFile($event)\"\r\n (onSelect)=\"onFileSelected($event)\" (onClear)=\"onClear($event)\" (onRemove)=\"onRemove($event)\" [multiple]=\"false\"\r\n [maxFileSize]=\"1000000\"\r\n [invalidFileSizeMessageSummary]=\"'shared_file_upload_invalid_file_size_message_summary' | localize\"\r\n [invalidFileSizeMessageDetail]=\"'shared_file_upload_invalid_file_size_message_detail' | localize\"\r\n [invalidFileTypeMessageSummary]=\"'shared_file_upload_invalid_file_type_message_summary' | localize\"\r\n [invalidFileLimitMessageDetail]=\"'shared_file_upload_invalid_file_limit_message_detail' | localize\"\r\n [invalidFileLimitMessageSummary]=\"'shared_file_upload_invalid_file_limit_message_summary' | localize\"\r\n [invalidFileTypeMessageDetail]=\"'shared_file_upload_invalid_file_type_message_detail' | localize\"\r\n [chooseIcon]=\"'pi pi-paperclip'\" cancelStyleClass=\"p-button-secondary\" uploadStyleClass=\"p-button-help\"\r\n removeStyleClass=\"p-button-danger\" [chooseLabel]=\"'shared_reporting_choose_report_file' | localize\"\r\n [uploadLabel]=\"'shared_reporting_import_report' | localize\"\r\n [cancelLabel]=\"'shared_reporting_cancel_choose_report_file' | localize\" [showUploadButton]=\"false\">\r\n <ng-template *ngIf=\"toUploadFileData\" pTemplate=\"fileupload-content\">\r\n </ng-template>\r\n </p-fileUpload> -->\r\n\r\n\r\n </div>\r\n </fieldset>\r\n <Tsi-Modal-Footer [showSaveAndCloseButton]=\"mode == modeRef.delete\" [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\"></Tsi-Modal-Footer>\r\n</tsi-form>", styles: [""], dependencies: [{ kind: "component", type: i4.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i5.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i6.TsiDatePickerComponent, selector: "Tsi-Date-Picker", inputs: ["required", "showTime", "showButtonBar"], outputs: ["inputFieldChange"] }, { kind: "component", type: i7.TsiIntegerComponent, selector: "Tsi-Integer", inputs: ["class", "minValue", "maxValue", "delayChangeTime"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i8.TsiTextAreaComponent, selector: "Tsi-Text-Area", inputs: ["rows", "cols"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i9.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i10.TsiFileManagerComponent, selector: "Tsi-File-Manager", inputs: ["fileName", "name", "id", "accept", "maxFileSize", "multiple", "exploreOnDownload", "showUploadButton", "showCancelButton", "showDownloadButton", "chooseIcon", "chooseLabel", "showSelectButton", "showFileUpload"], outputs: ["onSelectFileManager", "onClear", "onRemove", "inputFieldChange", "fileNameChange"] }, { kind: "component", type: i11.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i12.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i13.TsiModalHeaderComponent, selector: "Tsi-Modal-Header", inputs: ["inputTitle"], outputs: ["onCloseClick"] }, { kind: "component", type: i14.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i15.LocalizePipe, name: "localize" }] }); }
192
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiUploadFicheComponent, selector: "app-tsi-upload-fiche", outputs: { onSave: "onSave" }, providers: [...appProviders], usesInheritance: true, ngImport: i0, template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"'upload_fichier' | localize \" (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TypeFichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [listSourceUrl]=\"typeFichierListUrl\" [(bind)]=\"fichier.typeFichier\"\r\n id-field=\"uid\" [isFiltered]=\"true\" label-field=\"libelle\" \r\n [elementSourceUrl]=\"administrationEndpoints.getTypeFichierMinimal\"\r\n [businessClass]=\"businessClassNames.TypeFichier\"\r\n >\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TableLiee'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'tableLiee'\" [(inputField)]=\"fichier.tableLiee\"\r\n [disabled]=\"isDisable\"></Tsi-Text-Box>\r\n <!-- <Tsi-Search-Combo\r\n class=\"col-6\"\r\n [(bind)]=\"fichier.tableLiee\"\r\n id-field=\"id\"\r\n label-field=\"value\"\r\n (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Nom'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'nom'\" [(inputField)]=\"fichier.nom\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_DateFichier'\"></Tsi-Label>\r\n <Tsi-Date-Picker class=\"col-8\" [inputName]=\"'dateFichier'\"\r\n [(inputField)]=\"fichier.dateFichier\"></Tsi-Date-Picker>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Version'\"></Tsi-Label>\r\n <Tsi-Integer class=\"col-8\" [inputName]=\"'version'\" [(inputField)]=\"fichier.version\"\r\n [disabled]=\"true\"></Tsi-Integer>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Objet'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-10\" [inputName]=\"'Objet'\" [(inputField)]=\"fichier.objet\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Description'\"></Tsi-Label>\r\n <Tsi-Text-Area class=\"col-10\" [inputName]=\"'description'\" [(inputField)]=\"fichier.description\" [rows]=\"5\"\r\n [cols]=\"5\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n\r\n <Tsi-Label for=\"isFileStorage\" class=\"col-1\" [labelValue]=\"'parambase_param_fichier_isFileStorage'\"></Tsi-Label>\r\n <Tsi-CheckBox id=\"isFileStorage\" class=\"col-5\" [isBinary]=\"true\"\r\n [inputName]=\"'isFileStorage'\" [disabled]=\"true\" [inputField]=\"fichier.isFileStorage\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <div class=\"col-11\">\r\n <Tsi-File-Manager \r\n [showFileUpload]=\"true\" \r\n [(inputField)]=\"fichier.contenu\"\r\n [(fileName)]=\"fichier.nomFichierComplet\" \r\n name=\"fileFichier\" \r\n id=\"fileUploading\" \r\n inputName=\"contenu\" \r\n accept=\"\"\r\n [maxFileSize]=\"10485760\" \r\n [multiple]=\"false\" \r\n [disabled]=\"isEditMode()\"\r\n [showDownloadButton]=\"true\"\r\n [showCancelButton]=\"false\"\r\n [showUploadButton]=\"false\" \r\n [exploreOnDownload]=\"true\"\r\n (onSelectFileManager)=\"onFileSelected($event)\"\r\n ></Tsi-File-Manager>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n \r\n <!-- <p-fileUpload #fileUploadFichier name=\"demo[]\" (onBeforeUpload)=\"onImportFile($event)\"\r\n (onSelect)=\"onFileSelected($event)\" (onClear)=\"onClear($event)\" (onRemove)=\"onRemove($event)\" [multiple]=\"false\"\r\n [maxFileSize]=\"1000000\"\r\n [invalidFileSizeMessageSummary]=\"'shared_file_upload_invalid_file_size_message_summary' | localize\"\r\n [invalidFileSizeMessageDetail]=\"'shared_file_upload_invalid_file_size_message_detail' | localize\"\r\n [invalidFileTypeMessageSummary]=\"'shared_file_upload_invalid_file_type_message_summary' | localize\"\r\n [invalidFileLimitMessageDetail]=\"'shared_file_upload_invalid_file_limit_message_detail' | localize\"\r\n [invalidFileLimitMessageSummary]=\"'shared_file_upload_invalid_file_limit_message_summary' | localize\"\r\n [invalidFileTypeMessageDetail]=\"'shared_file_upload_invalid_file_type_message_detail' | localize\"\r\n [chooseIcon]=\"'pi pi-paperclip'\" cancelStyleClass=\"p-button-secondary\" uploadStyleClass=\"p-button-help\"\r\n removeStyleClass=\"p-button-danger\" [chooseLabel]=\"'shared_reporting_choose_report_file' | localize\"\r\n [uploadLabel]=\"'shared_reporting_import_report' | localize\"\r\n [cancelLabel]=\"'shared_reporting_cancel_choose_report_file' | localize\" [showUploadButton]=\"false\">\r\n <ng-template *ngIf=\"toUploadFileData\" pTemplate=\"fileupload-content\">\r\n </ng-template>\r\n </p-fileUpload> -->\r\n\r\n\r\n </div>\r\n </fieldset>\r\n <Tsi-Modal-Footer [showSaveAndCloseButton]=\"mode == modeRef.delete\" [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\"></Tsi-Modal-Footer>\r\n</tsi-form>", styles: [""], dependencies: [{ kind: "component", type: i4.TsiSearchComboComponent, selector: "Tsi-Search-Combo", inputs: ["elementSourceUrl", "listSourceUrl", "listSourceParams", "id-field", "label-field", "multiple", "sort", "showClear", "reloadDataSource", "isFiltered", "selectedLabel", "maxWidth", "businessClass", "searchDebounceTime", "comboType", "statusMetadata", "currentRowItem", "datasource", "bind", "maxSelectedLabels", "tooltipMaxDisplayedItems", "bindMode", "showSearchButton", "showAddButton", "showConsultButton", "showUpdateButton"], outputs: ["bindChange", "datasource-loaded", "init", "isLoaded", "selectedLabelChange", "onClick", "onSearchButtonClick", "selectionChange"] }, { kind: "component", type: i5.TsiCheckboxComponent, selector: "Tsi-CheckBox", inputs: ["class", "isBinary", "checked", "tooltipText", "tooltipPosition"], outputs: ["inputFieldChange", "checkedChange"] }, { kind: "component", type: i6.TsiDatePickerComponent, selector: "Tsi-Date-Picker", inputs: ["required", "showTime", "showButtonBar"], outputs: ["inputFieldChange"] }, { kind: "component", type: i7.TsiIntegerComponent, selector: "Tsi-Integer", inputs: ["class", "minValue", "maxValue", "delayChangeTime"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i8.TsiTextAreaComponent, selector: "Tsi-Text-Area", inputs: ["rows", "cols"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i9.TsiTextBoxComponent, selector: "Tsi-Text-Box", inputs: ["textBoxType", "autocomplete"], outputs: ["newItemEvent", "inputFieldChange"] }, { kind: "component", type: i10.TsiFileManagerComponent, selector: "Tsi-File-Manager", inputs: ["fileName", "name", "id", "accept", "maxFileSize", "multiple", "exploreOnDownload", "showUploadButton", "showCancelButton", "showDownloadButton", "chooseIcon", "chooseLabel", "showSelectButton", "showFileUpload"], outputs: ["onSelectFileManager", "onClear", "onRemove", "inputFieldChange", "fileNameChange"] }, { kind: "component", type: i11.TsiLabelComponent, selector: "Tsi-Label", inputs: ["labelValue", "styleClass", "infoText"] }, { kind: "component", type: i12.TsiModalFooterComponent, selector: "Tsi-Modal-Footer", inputs: ["cancelDisabled", "saveDisabled", "cancelLabel", "saveLabel", "isConsult", "isDuplicate", "isOnlyCreate", "additionalButtonLabel", "additionalButtonIcon", "additionalButtonDisabled", "showAdditionalButton", "showSaveAndCloseButton", "mode"], outputs: ["onCancelClick", "onSaveClick", "onAdditionalButtonClick"] }, { kind: "component", type: i13.TsiModalHeaderComponent, selector: "Tsi-Modal-Header", inputs: ["inputTitle"], outputs: ["onCloseClick"] }, { kind: "component", type: i14.TsiFormComponent, selector: "tsi-form", inputs: ["class", "autocomplete", "optionalEndpoints", "disabled", "isLoading", "modalSize", "formEndpoint", "formName", "isReportingToolbarDisabled", "isCreateOnly", "statusInputDisabled"], outputs: ["onSave", "onSubmit", "onSubmitFormWorkflowConfiguration", "formRefChange", "onStatusChange"] }, { kind: "pipe", type: i15.LocalizePipe, name: "localize" }] }); }
191
193
  }
192
194
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiUploadFicheComponent, decorators: [{
193
195
  type: Component,
194
- args: [{ selector: 'app-tsi-upload-fiche', providers: [...appProviders], template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"'upload_fichier' | localize \" (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TypeFichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [listSourceUrl]=\"typeFichierListUrl\" [(bind)]=\"fichier.typeFichier\"\r\n id-field=\"uid\" [isFiltered]=\"true\" label-field=\"libelle\">\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TableLiee'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'tableLiee'\" [(inputField)]=\"fichier.tableLiee\"\r\n [disabled]=\"isDisable\"></Tsi-Text-Box>\r\n <!-- <Tsi-Search-Combo\r\n class=\"col-6\"\r\n [(bind)]=\"fichier.tableLiee\"\r\n id-field=\"id\"\r\n label-field=\"value\"\r\n (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Nom'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'nom'\" [(inputField)]=\"fichier.nom\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_DateFichier'\"></Tsi-Label>\r\n <Tsi-Date-Picker class=\"col-8\" [inputName]=\"'dateFichier'\"\r\n [(inputField)]=\"fichier.dateFichier\"></Tsi-Date-Picker>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Version'\"></Tsi-Label>\r\n <Tsi-Integer class=\"col-8\" [inputName]=\"'version'\" [(inputField)]=\"fichier.version\"\r\n [disabled]=\"true\"></Tsi-Integer>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Objet'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-10\" [inputName]=\"'Objet'\" [(inputField)]=\"fichier.objet\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Description'\"></Tsi-Label>\r\n <Tsi-Text-Area class=\"col-10\" [inputName]=\"'description'\" [(inputField)]=\"fichier.description\" [rows]=\"5\"\r\n [cols]=\"5\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n\r\n <Tsi-Label for=\"isFileStorage\" class=\"col-1\" [labelValue]=\"'parambase_param_fichier_isFileStorage'\"></Tsi-Label>\r\n <Tsi-CheckBox id=\"isFileStorage\" class=\"col-5\" [isBinary]=\"true\"\r\n [inputName]=\"'isFileStorage'\" [disabled]=\"true\" [inputField]=\"fichier.isFileStorage\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <div class=\"col-11\">\r\n <Tsi-File-Manager \r\n [showFileUpload]=\"true\" \r\n [(inputField)]=\"fichier.contenu\"\r\n [(fileName)]=\"fichier.nomFichierComplet\" \r\n name=\"fileFichier\" \r\n id=\"fileUploading\" \r\n inputName=\"contenu\" \r\n accept=\"\"\r\n [maxFileSize]=\"10485760\" \r\n [multiple]=\"false\" \r\n [disabled]=\"isEditMode()\"\r\n [showDownloadButton]=\"true\"\r\n [showCancelButton]=\"false\"\r\n [showUploadButton]=\"false\" \r\n [exploreOnDownload]=\"true\"\r\n (onSelectFileManager)=\"onFileSelected($event)\"\r\n ></Tsi-File-Manager>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n \r\n <!-- <p-fileUpload #fileUploadFichier name=\"demo[]\" (onBeforeUpload)=\"onImportFile($event)\"\r\n (onSelect)=\"onFileSelected($event)\" (onClear)=\"onClear($event)\" (onRemove)=\"onRemove($event)\" [multiple]=\"false\"\r\n [maxFileSize]=\"1000000\"\r\n [invalidFileSizeMessageSummary]=\"'shared_file_upload_invalid_file_size_message_summary' | localize\"\r\n [invalidFileSizeMessageDetail]=\"'shared_file_upload_invalid_file_size_message_detail' | localize\"\r\n [invalidFileTypeMessageSummary]=\"'shared_file_upload_invalid_file_type_message_summary' | localize\"\r\n [invalidFileLimitMessageDetail]=\"'shared_file_upload_invalid_file_limit_message_detail' | localize\"\r\n [invalidFileLimitMessageSummary]=\"'shared_file_upload_invalid_file_limit_message_summary' | localize\"\r\n [invalidFileTypeMessageDetail]=\"'shared_file_upload_invalid_file_type_message_detail' | localize\"\r\n [chooseIcon]=\"'pi pi-paperclip'\" cancelStyleClass=\"p-button-secondary\" uploadStyleClass=\"p-button-help\"\r\n removeStyleClass=\"p-button-danger\" [chooseLabel]=\"'shared_reporting_choose_report_file' | localize\"\r\n [uploadLabel]=\"'shared_reporting_import_report' | localize\"\r\n [cancelLabel]=\"'shared_reporting_cancel_choose_report_file' | localize\" [showUploadButton]=\"false\">\r\n <ng-template *ngIf=\"toUploadFileData\" pTemplate=\"fileupload-content\">\r\n </ng-template>\r\n </p-fileUpload> -->\r\n\r\n\r\n </div>\r\n </fieldset>\r\n <Tsi-Modal-Footer [showSaveAndCloseButton]=\"mode == modeRef.delete\" [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\"></Tsi-Modal-Footer>\r\n</tsi-form>" }]
196
+ args: [{ selector: 'app-tsi-upload-fiche', providers: [...appProviders], template: "<tsi-form class=\"form-horizontal\" autocomplete=\"off\" (onSubmit)=\"save()\" [isLoading]=\"isloading\">\r\n <Tsi-Modal-Header [inputTitle]=\"'upload_fichier' | localize \" (onCloseClick)=\"hide()\">\r\n </Tsi-Modal-Header>\r\n <fieldset [disabled]=\"isDeleteMode() || isConsultMode() \">\r\n <div class=\"modal-body\">\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TypeFichier'\"></Tsi-Label>\r\n <Tsi-Search-Combo class=\"col-8\" [listSourceUrl]=\"typeFichierListUrl\" [(bind)]=\"fichier.typeFichier\"\r\n id-field=\"uid\" [isFiltered]=\"true\" label-field=\"libelle\" \r\n [elementSourceUrl]=\"administrationEndpoints.getTypeFichierMinimal\"\r\n [businessClass]=\"businessClassNames.TypeFichier\"\r\n >\r\n </Tsi-Search-Combo>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_TableLiee'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'tableLiee'\" [(inputField)]=\"fichier.tableLiee\"\r\n [disabled]=\"isDisable\"></Tsi-Text-Box>\r\n <!-- <Tsi-Search-Combo\r\n class=\"col-6\"\r\n [(bind)]=\"fichier.tableLiee\"\r\n id-field=\"id\"\r\n label-field=\"value\"\r\n (datasource-loaded)=\"onDataLoaded()\">\r\n </Tsi-Search-Combo> -->\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Nom'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-8\" [inputName]=\"'nom'\" [(inputField)]=\"fichier.nom\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_DateFichier'\"></Tsi-Label>\r\n <Tsi-Date-Picker class=\"col-8\" [inputName]=\"'dateFichier'\"\r\n [(inputField)]=\"fichier.dateFichier\"></Tsi-Date-Picker>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-6\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-2\" [labelValue]=\"'parambase_param_fichier_Version'\"></Tsi-Label>\r\n <Tsi-Integer class=\"col-8\" [inputName]=\"'version'\" [(inputField)]=\"fichier.version\"\r\n [disabled]=\"true\"></Tsi-Integer>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Objet'\"></Tsi-Label>\r\n <Tsi-Text-Box class=\"col-10\" [inputName]=\"'Objet'\" [(inputField)]=\"fichier.objet\"></Tsi-Text-Box>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <Tsi-Label class=\"col-1\" [labelValue]=\"'parambase_param_fichier_Description'\"></Tsi-Label>\r\n <Tsi-Text-Area class=\"col-10\" [inputName]=\"'description'\" [(inputField)]=\"fichier.description\" [rows]=\"5\"\r\n [cols]=\"5\"></Tsi-Text-Area>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n\r\n <Tsi-Label for=\"isFileStorage\" class=\"col-1\" [labelValue]=\"'parambase_param_fichier_isFileStorage'\"></Tsi-Label>\r\n <Tsi-CheckBox id=\"isFileStorage\" class=\"col-5\" [isBinary]=\"true\"\r\n [inputName]=\"'isFileStorage'\" [disabled]=\"true\" [inputField]=\"fichier.isFileStorage\">\r\n </Tsi-CheckBox>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"grid flex\">\r\n <div class=\"col-11\">\r\n <Tsi-File-Manager \r\n [showFileUpload]=\"true\" \r\n [(inputField)]=\"fichier.contenu\"\r\n [(fileName)]=\"fichier.nomFichierComplet\" \r\n name=\"fileFichier\" \r\n id=\"fileUploading\" \r\n inputName=\"contenu\" \r\n accept=\"\"\r\n [maxFileSize]=\"10485760\" \r\n [multiple]=\"false\" \r\n [disabled]=\"isEditMode()\"\r\n [showDownloadButton]=\"true\"\r\n [showCancelButton]=\"false\"\r\n [showUploadButton]=\"false\" \r\n [exploreOnDownload]=\"true\"\r\n (onSelectFileManager)=\"onFileSelected($event)\"\r\n ></Tsi-File-Manager>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n \r\n <!-- <p-fileUpload #fileUploadFichier name=\"demo[]\" (onBeforeUpload)=\"onImportFile($event)\"\r\n (onSelect)=\"onFileSelected($event)\" (onClear)=\"onClear($event)\" (onRemove)=\"onRemove($event)\" [multiple]=\"false\"\r\n [maxFileSize]=\"1000000\"\r\n [invalidFileSizeMessageSummary]=\"'shared_file_upload_invalid_file_size_message_summary' | localize\"\r\n [invalidFileSizeMessageDetail]=\"'shared_file_upload_invalid_file_size_message_detail' | localize\"\r\n [invalidFileTypeMessageSummary]=\"'shared_file_upload_invalid_file_type_message_summary' | localize\"\r\n [invalidFileLimitMessageDetail]=\"'shared_file_upload_invalid_file_limit_message_detail' | localize\"\r\n [invalidFileLimitMessageSummary]=\"'shared_file_upload_invalid_file_limit_message_summary' | localize\"\r\n [invalidFileTypeMessageDetail]=\"'shared_file_upload_invalid_file_type_message_detail' | localize\"\r\n [chooseIcon]=\"'pi pi-paperclip'\" cancelStyleClass=\"p-button-secondary\" uploadStyleClass=\"p-button-help\"\r\n removeStyleClass=\"p-button-danger\" [chooseLabel]=\"'shared_reporting_choose_report_file' | localize\"\r\n [uploadLabel]=\"'shared_reporting_import_report' | localize\"\r\n [cancelLabel]=\"'shared_reporting_cancel_choose_report_file' | localize\" [showUploadButton]=\"false\">\r\n <ng-template *ngIf=\"toUploadFileData\" pTemplate=\"fileupload-content\">\r\n </ng-template>\r\n </p-fileUpload> -->\r\n\r\n\r\n </div>\r\n </fieldset>\r\n <Tsi-Modal-Footer [showSaveAndCloseButton]=\"mode == modeRef.delete\" [cancelDisabled]=\"saving\" [saveDisabled]=\"isSubmitDisabled()\"\r\n (onCancelClick)=\"hide()\"></Tsi-Modal-Footer>\r\n</tsi-form>" }]
195
197
  }], ctorParameters: () => [{ type: i1.FichierService }, { type: i2.ErrorResponseManagerService }, { type: i3.DynamicDialogRef }, { type: i3.DynamicDialogConfig }, { type: i2.TsiNotificationService }, { type: i2.TsiConfirmationService }, { type: i2.DialogDataService }], propDecorators: { onSave: [{
196
198
  type: Output
197
199
  }] } });
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvdHNpLXVwbG9hZC1maWNoZS90c2ktdXBsb2FkLWZpY2hlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdXBsb2FkLWZpY2hlL3RzaS11cGxvYWQtZmljaGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV2QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUVoSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUXZFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSw2QkFBNkI7SUFnQnhFLFlBQ1MsZUFBK0IsRUFDOUIsNEJBQXlELEVBQ2pELEdBQXFCLEVBQ3JCLE1BQTJCLEVBQ25DLG9CQUE0QyxFQUM1QyxvQkFBNEMsRUFDNUMsaUJBQW9DO1FBRTVDLEtBQUssQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFSWixvQkFBZSxHQUFmLGVB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TSxDQUFDLE9BQU8sR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3pCLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsbUJBQW1CLENBQUMsSUFBVTtRQUM1QixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO1lBQ25CLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFxQixDQUFDO1lBQ2pELE1BQU0sU0FBUyxHQUFHLElBQUksVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRTlDLDBCQUEwQjtZQUMxQixNQUFNLFNBQVMsR0FBZSxTQUFTLENBQUM7WUFDeEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN2QixrQ0FBa0M7UUFDcEMsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxDQUFDLE9BQU8sR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3pCLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7K0dBbk1VLHVCQUF1QjttR0FBdkIsdUJBQXVCLDhFQUZ2QixDQUFDLEdBQUcsWUFBWSxDQUFDLGlEQ2pCOUIsNnROQXNJVzs7NEZEbkhFLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSxzQkFBc0IsYUFHckIsQ0FBQyxHQUFHLFlBQVksQ0FBQzt3U0FnQlQsTUFBTTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvbktleXMgfSBmcm9tICcuLi8uLi9jb25zdHMvbG9jYWxpemF0aW9uLWtleSc7XHJcbmltcG9ydCB7IE1vZGVzIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xyXG5pbXBvcnQgeyBGaWNoaWVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgRXJyb3JSZXNwb25zZU1hbmFnZXJTZXJ2aWNlLCBUc2lOb3RpZmljYXRpb25TZXJ2aWNlLCBUc2lDb25maXJtYXRpb25TZXJ2aWNlLCBEaWFsb2dEYXRhU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVHNpRm9ybUNvbXBvbmVudEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi90c2ktYmFzZS9jb21wb25lbnRzL3RzaS1mb3JtLWJhc2UvdHNpLWZvcm0tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWNoaWVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZpY2hpZXIvZmljaGllci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgYXBwUHJvdmlkZXJzIH0gZnJvbSAnLi4vLi4vY29uc3RzL2FwcC1wcm92aWRlcnMnO1xyXG5pbXBvcnQgeyBBZG1pbmlzdHJhdGlvbkVuZHBvaW50cyB9IGZyb20gJy4uLy4uL2VuZC1wb2ludHMvZW5kcG9pbnRzJztcclxuaW1wb3J0IHsgQnVzaW5lc3NDbGFzc05hbWVzIH0gZnJvbSAnLi4vLi4vY29uc3RzL2J1c2luZXNzLWNsYXNzLW5hbWVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXRzaS11cGxvYWQtZmljaGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90c2ktdXBsb2FkLWZpY2hlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90c2ktdXBsb2FkLWZpY2hlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbLi4uYXBwUHJvdmlkZXJzXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHNpVXBsb2FkRmljaGVDb21wb25lbnQgZXh0ZW5kcyBUc2lGb3JtQ29tcG9uZW50QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGZpY2hpZXIgPSBuZXcgRmljaGllcigpO1xyXG4gIC8vIHBhcmFtQmFzZUVuZHBvaW50cyA9IFBhcmFtQmFzZUVuZHBvaW50cztcclxuXHJcbiAgb3ZlcnJpZGUgc2F2aW5nID0gZmFsc2U7XHJcbiAgdG9VcGxvYWRGaWxlRGF0YTogYW55ID0gdW5kZWZpbmVkO1xyXG4gIGJhc2U2NFN0cmluZzogc3RyaW5nIHwgQXJyYXlCdWZmZXIgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgaXNEaXNhYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuICBtb2RlUmVmID0gTW9kZXM7XHJcblxyXG4gIHR5cGVGaWNoaWVyTGlzdFVybDogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBPdXRwdXQoKSBvdmVycmlkZSBvblNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgX2ZpY2hpZXJTZXJ2aWNlOiBGaWNoaWVyU2VydmljZSxcclxuICAgIHByaXZhdGUgX2Vycm9yUmVzcG9uc2VNYW5hZ2VyU2VydmljZTogRXJyb3JSZXNwb25zZU1hbmFnZXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIG92ZXJyaWRlIHJlZjogRHluYW1pY0RpYWxvZ1JlZixcclxuICAgIHB1YmxpYyBvdmVycmlkZSBjb25maWc6IER5bmFtaWNEaWFsb2dDb25maWcsXHJcbiAgICBwcml2YXRlIF9ub3RpZmljYXRpb25TZXJ2aWNlOiBUc2lOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY29uZmlybWF0aW9uU2VydmljZTogVHNpQ29uZmlybWF0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nRGF0YVNlcnZpY2U6IERpYWxvZ0RhdGFTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihyZWYsIGNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZmljaGllci5ub21GaWNoaWVyQ29tcGxldCA9IFwiXCI7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy5idXNpbmVzc0NsYXNzID0gQnVzaW5lc3NDbGFzc05hbWVzLkZpY2hpZXI7XHJcblxyXG4gICAgY29uc3QgY3R4ID0gdGhpcy5kaWFsb2dEYXRhU2VydmljZS5nZXREYXRhKCk7XHJcbiAgICBjb25zdCBjdXJyZW50Q2xhc3NlID0gY3R4Py5jbGFzcztcclxuICAgIGlmIChjdHg/LmlkICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5maWNoaWVyLnRhYmxlTGllZSA9IGN0eC5jbGFzcztcclxuICAgICAgdGhpcy5maWNoaWVyLnBrZXkgPSBjdHguaWQ7XHJcbiAgICB9XHJcbiAgICBpZiAoY3VycmVudENsYXNzZSkge1xyXG4gICAgICB0aGlzLnR5cGVGaWNoaWVyTGlzdFVybCA9IEFkbWluaXN0cmF0aW9uRW5kcG9pbnRzLmdldEFsbFR5cGVGaWNoaWVyTWluaW1hbEJ5Q2xhc3NlKGN1cnJlbnRDbGFzc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChcclxuICAgICAgKHRoaXMubW9kZSA9PSBNb2Rlcy5lZGl0IHx8IHRoaXMubW9kZSA9PSBNb2Rlcy5kZWxldGUgfHwgdGhpcy5tb2RlID09IE1vZGVzLmNvbnN1bHQpICYmXHJcbiAgICAgIHRoaXMuaWQgIT0gdW5kZWZpbmVkICYmXHJcbiAgICAgIHRoaXMuaWQgIT0gbnVsbFxyXG4gICAgKSB7XHJcblxyXG4gICAgICB0aGlzLmlzbG9hZGluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuX2ZpY2hpZXJTZXJ2aWNlLmdldEJ5SWQodGhpcy5pZCkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgICAgdGhpcy5maWNoaWVyID0gZGF0YTtcclxuICAgICAgICBpZiAodGhpcy5maWNoaWVyLnRhYmxlTGllZSkge1xyXG4gICAgICAgICAgdGhpcy50eXBlRmljaGllckxpc3RVcmwgPSBBZG1pbmlzdHJhdGlvbkVuZHBvaW50cy5nZXRBbGxUeXBlRmljaGllck1pbmltYWxCeUNsYXNzZSh0aGlzLmZpY2hpZXIudGFibGVMaWVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBzYXZlKCk6IHZvaWQge1xyXG4gICAgc3VwZXIuc2F2ZSgpXHJcbiAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xyXG4gICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAodGhpcy5tb2RlID09IE1vZGVzLmNyZWF0ZSkge1xyXG4gICAgICB0aGlzLl9maWNoaWVyU2VydmljZS5jcmVhdGUodGhpcy5maWNoaWVyKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvblNlcnZpY2UuaW5mbyh0aGlzLmwoTG9jYWxpemF0aW9uS2V5cy5zYXZlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgdGhpcy5vblNhdmUuZW1pdCgpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChyZXNwb25zZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLl9lcnJvclJlc3BvbnNlTWFuYWdlclNlcnZpY2Uuc2hvd0Vycm9yTWVzc2FnZShyZXNwb25zZSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMubW9kZSA9PSBNb2Rlcy5lZGl0ICYmXHJcbiAgICAgIHRoaXMuZmljaGllci51aWQgIT0gbnVsbCAmJlxyXG4gICAgICB0aGlzLmZpY2hpZXIudWlkICE9IHVuZGVmaW5lZFxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuaXNsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5fZmljaGllclNlcnZpY2UudXBkYXRlKHRoaXMuZmljaGllciwgdGhpcy5maWNoaWVyLnVpZCkuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLmluZm8odGhpcy5sKExvY2FsaXphdGlvbktleXMudXBkYXRlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgdGhpcy5oaWRlKHRydWUpO1xyXG4gICAgICAgICAgdGhpcy5vblNhdmUuZW1pdCgpO1xyXG4gICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAocmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5fZXJyb3JSZXNwb25zZU1hbmFnZXJTZXJ2aWNlLnNob3dFcnJvck1lc3NhZ2UocmVzcG9uc2UpO1xyXG4gICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLm1vZGUgPT0gTW9kZXMuZGVsZXRlKSB7XHJcbiAgICAgIHRoaXMuaXNsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5fY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKFxyXG4gICAgICAgIExvY2FsaXphdGlvbktleXMuY29uZmlybURlbGV0ZSxcclxuICAgICAgICB1bmRlZmluZWQsXHJcbiAgICAgICAgKHJlc3VsdDogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICByZXN1bHQgJiZcclxuICAgICAgICAgICAgdGhpcy5maWNoaWVyLnVpZCAhPSBudWxsICYmXHJcbiAgICAgICAgICAgIHRoaXMuZmljaGllci51aWQgIT0gdW5kZWZpbmVkXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgdGhpcy5fZmljaGllclNlcnZpY2UuZGVsZXRlKHRoaXMuZmljaGllci51aWQpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKHRoaXMubChMb2NhbGl6YXRpb25LZXlzLmRlbGV0ZWRTdWNjZXNzZnVsbHkpKTtcclxuICAgICAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5vblNhdmUuZW1pdCgpO1xyXG4gICAgICAgICAgICAgIHRoaXMuaXNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRmlsZVNlbGVjdGVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIC8vIGNvbnN0IGZpbGU6IEZpbGUgPSBldmVudC5jdXJyZW50RmlsZXNbMF07XHJcbiAgICAvL3RoaXMudG9VcGxvYWRGaWxlRGF0YSA9IGZpbGU7XHJcbiAgICAvL3RoaXMucmVhZEZpbGUoZmlsZSk7XHJcbiAgICAvL3RoaXMucmVhZEZpbGVBc0J5dGVBcnJheShmaWxlKTtcclxuICAgIC8vY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtmaWxlXSwgeyB0eXBlOiBmaWxlLnR5cGUgfSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgLy90aGlzLmZpY2hpZXIuY29udGVudSA9IHRoaXMuYmFzZTY0U3RyaW5nO1xyXG4gICAgICAvL3RoaXMuZmljaGllci5ub21GaWNoaWVyQ29tcGxldCA9IGV2ZW50LmN1cnJlbnRGaWxlc1swXS5uYW1lO1xyXG4gICAgICB0aGlzLmZpY2hpZXIucGtleSA9IHRoaXMuZGlhbG9nRGF0YVNlcnZpY2UuZ2V0RGF0YSgpLmlkO1xyXG4gICAgICB0aGlzLmZpY2hpZXIudGFibGVMaWVlID0gdGhpcy5kaWFsb2dEYXRhU2VydmljZS5nZXREYXRhKCkuY2xhc3M7XHJcbiAgICB9LCAyMDApO1xyXG4gIH1cclxuXHJcbiAgb25JbXBvcnRGaWxlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIC8qICB0aGlzLnJlcG9ydGluZ1NlcnZpY2UudXBsb2FkUmVwb3J0RmlsZSh0aGlzLnRvVXBsb2FkRmlsZURhdGEpXHJcbiAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICB7XHJcbiAgICAgICAgICAgbmV4dDogKHJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICB0aGlzLl9yZWZyZXNoUmVwb3J0cygpO1xyXG4gICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3MoJ3NoYXJlZF9yZXBvcnRpbmdfcmVwb3J0X3VwbG9hZGVkX3N1Y2Nlc3NmdWxseScpO1xyXG4gICAgICAgICAgICAgdGhpcy5maWxlVXBsb2FkPy5jbGVhcigpO1xyXG4gICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgZXJyb3I6ICgpID0+IHtcclxuICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5lcnJvcih0aGlzLmVycm9yTWVzc2FnZUtleSk7XHJcbiAgICAgICAgICAgfVxyXG4gICAgICAgICB9KTsgKi9cclxuICB9XHJcblxyXG4gIC8vY2FuY2VsIGJ1dHRvbiBjbGlja1xyXG4gIG9uQ2xlYXIoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy50b1VwbG9hZEZpbGVEYXRhID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgLy9jYW5jZWwgYnV0dG9uIGNsaWNrXHJcbiAgb25SZW1vdmUoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy50b1VwbG9hZEZpbGVEYXRhID0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcmVhZEZpbGUoZmlsZTogRmlsZSkge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuYmFzZTY0U3RyaW5nID0gKHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nKS5zcGxpdCgnLCcpWzFdO1xyXG4gICAgICAvLyBVc2UgdGhpcy5iYXNlNjRTdHJpbmcgYXMgbmVlZGVkXHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLm9uZXJyb3IgPSAoZXJyb3IpID0+IHtcclxuICAgICAgY29uc29sZS5lcnJvcignRmlsZSByZWFkaW5nIGVycm9yOicsIGVycm9yKTtcclxuICAgIH07XHJcbiAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICB9XHJcblxyXG4gIHJlYWRGaWxlQXNCeXRlQXJyYXkoZmlsZTogRmlsZSkge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGFycmF5QnVmZmVyID0gcmVhZGVyLnJlc3VsdCBhcyBBcnJheUJ1ZmZlcjtcclxuICAgICAgY29uc3QgYnl0ZUFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoYXJyYXlCdWZmZXIpO1xyXG5cclxuICAgICAgLy8gVXNlIGJ5dGVBcnJheSBhcyBuZWVkZWRcclxuICAgICAgY29uc3QgYnl0ZUNvbnN0OiBVaW50OEFycmF5ID0gYnl0ZUFycmF5O1xyXG4gICAgICBjb25zb2xlLmxvZyhieXRlQ29uc3QpO1xyXG4gICAgICAvL3RoaXMuZmljaGllci5jb250ZW51ID0gYnl0ZUNvbnN0XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLm9uZXJyb3IgPSAoZXJyb3IpID0+IHtcclxuICAgICAgY29uc29sZS5lcnJvcignRmlsZSByZWFkaW5nIGVycm9yOicsIGVycm9yKTtcclxuICAgIH07XHJcbiAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoZmlsZSk7XHJcbiAgfVxyXG59XHJcbiIsIjx0c2ktZm9ybSBjbGFzcz1cImZvcm0taG9yaXpvbnRhbFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIChvblN1Ym1pdCk9XCJzYXZlKClcIiBbaXNMb2FkaW5nXT1cImlzbG9hZGluZ1wiPlxyXG4gIDxUc2ktTW9kYWwtSGVhZGVyIFtpbnB1dFRpdGxlXT1cIid1cGxvYWRfZmljaGllcicgfCBsb2NhbGl6ZSBcIiAob25DbG9zZUNsaWNrKT1cImhpZGUoKVwiPlxyXG4gIDwvVHNpLU1vZGFsLUhlYWRlcj5cclxuICA8ZmllbGRzZXQgW2Rpc2FibGVkXT1cImlzRGVsZXRlTW9kZSgpIHx8IGlzQ29uc3VsdE1vZGUoKSBcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMlwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9UeXBlRmljaGllcidcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1TZWFyY2gtQ29tYm8gY2xhc3M9XCJjb2wtOFwiIFtsaXN0U291cmNlVXJsXT1cInR5cGVGaWNoaWVyTGlzdFVybFwiIFsoYmluZCldPVwiZmljaGllci50eXBlRmljaGllclwiXHJcbiAgICAgICAgICAgICAgaWQtZmllbGQ9XCJ1aWRcIiBbaXNGaWx0ZXJlZF09XCJ0cnVlXCIgbGFiZWwtZmllbGQ9XCJsaWJlbGxlXCI+XHJcbiAgICAgICAgICAgIDwvVHNpLVNlYXJjaC1Db21ibz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTJcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfVGFibGVMaWVlJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVRleHQtQm94IGNsYXNzPVwiY29sLThcIiBbaW5wdXROYW1lXT1cIid0YWJsZUxpZWUnXCIgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLnRhYmxlTGllZVwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZVwiPjwvVHNpLVRleHQtQm94PlxyXG4gICAgICAgICAgICA8IS0tIDxUc2ktU2VhcmNoLUNvbWJvXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJjb2wtNlwiXHJcbiAgICAgICAgICAgICAgWyhiaW5kKV09XCJmaWNoaWVyLnRhYmxlTGllZVwiXHJcbiAgICAgICAgICAgICAgaWQtZmllbGQ9XCJpZFwiXHJcbiAgICAgICAgICAgICAgbGFiZWwtZmllbGQ9XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgKGRhdGFzb3VyY2UtbG9hZGVkKT1cIm9uRGF0YUxvYWRlZCgpXCI+XHJcbiAgICAgICAgICAgIDwvVHNpLVNlYXJjaC1Db21ibz4gLS0+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMlwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9Ob20nXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktVGV4dC1Cb3ggY2xhc3M9XCJjb2wtOFwiIFtpbnB1dE5hbWVdPVwiJ25vbSdcIiBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIubm9tXCI+PC9Uc2ktVGV4dC1Cb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0yXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX0RhdGVGaWNoaWVyJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLURhdGUtUGlja2VyIGNsYXNzPVwiY29sLThcIiBbaW5wdXROYW1lXT1cIidkYXRlRmljaGllcidcIlxyXG4gICAgICAgICAgICAgIFsoaW5wdXRGaWVsZCldPVwiZmljaGllci5kYXRlRmljaGllclwiPjwvVHNpLURhdGUtUGlja2VyPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0yXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX1ZlcnNpb24nXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktSW50ZWdlciBjbGFzcz1cImNvbC04XCIgW2lucHV0TmFtZV09XCIndmVyc2lvbidcIiBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIudmVyc2lvblwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInRydWVcIj48L1RzaS1JbnRlZ2VyPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMVwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9PYmpldCdcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1UZXh0LUJveCBjbGFzcz1cImNvbC0xMFwiIFtpbnB1dE5hbWVdPVwiJ09iamV0J1wiIFsoaW5wdXRGaWVsZCldPVwiZmljaGllci5vYmpldFwiPjwvVHNpLVRleHQtQm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMVwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9EZXNjcmlwdGlvbidcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1UZXh0LUFyZWEgY2xhc3M9XCJjb2wtMTBcIiBbaW5wdXROYW1lXT1cIidkZXNjcmlwdGlvbidcIiBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIuZGVzY3JpcHRpb25cIiBbcm93c109XCI1XCJcclxuICAgICAgICAgICAgICBbY29sc109XCI1XCI+PC9Uc2ktVGV4dC1BcmVhPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcblxyXG4gICAgICAgIDxUc2ktTGFiZWwgZm9yPVwiaXNGaWxlU3RvcmFnZVwiIGNsYXNzPVwiY29sLTFcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfaXNGaWxlU3RvcmFnZSdcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgIDxUc2ktQ2hlY2tCb3ggaWQ9XCJpc0ZpbGVTdG9yYWdlXCIgY2xhc3M9XCJjb2wtNVwiIFtpc0JpbmFyeV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICBbaW5wdXROYW1lXT1cIidpc0ZpbGVTdG9yYWdlJ1wiIFtkaXNhYmxlZF09XCJ0cnVlXCIgW2lucHV0RmllbGRdPVwiZmljaGllci5pc0ZpbGVTdG9yYWdlXCI+XHJcbiAgICAgICAgICA8L1RzaS1DaGVja0JveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMVwiPlxyXG4gICAgICAgICAgICAgICAgPFRzaS1GaWxlLU1hbmFnZXIgXHJcbiAgICAgICAgICAgICAgICAgIFtzaG93RmlsZVVwbG9hZF09XCJ0cnVlXCIgXHJcbiAgICAgICAgICAgICAgICAgIFsoaW5wdXRGaWVsZCldPVwiZmljaGllci5jb250ZW51XCJcclxuICAgICAgICAgICAgICAgICAgWyhmaWxlTmFtZSldPVwiZmljaGllci5ub21GaWNoaWVyQ29tcGxldFwiIFxyXG4gICAgICAgICAgICAgICAgICBuYW1lPVwiZmlsZUZpY2hpZXJcIiBcclxuICAgICAgICAgICAgICAgICAgaWQ9XCJmaWxlVXBsb2FkaW5nXCIgXHJcbiAgICAgICAgICAgICAgICAgIGlucHV0TmFtZT1cImNvbnRlbnVcIiBcclxuICAgICAgICAgICAgICAgICAgYWNjZXB0PVwiXCJcclxuICAgICAgICAgICAgICAgICAgW21heEZpbGVTaXplXT1cIjEwNDg1NzYwXCIgXHJcbiAgICAgICAgICAgICAgICAgIFttdWx0aXBsZV09XCJmYWxzZVwiIFxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNFZGl0TW9kZSgpXCJcclxuICAgICAgICAgICAgICAgICAgW3Nob3dEb3dubG9hZEJ1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgW3Nob3dDYW5jZWxCdXR0b25dPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICBbc2hvd1VwbG9hZEJ1dHRvbl09XCJmYWxzZVwiIFxyXG4gICAgICAgICAgICAgICAgICBbZXhwbG9yZU9uRG93bmxvYWRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgIChvblNlbGVjdEZpbGVNYW5hZ2VyKT1cIm9uRmlsZVNlbGVjdGVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICA+PC9Uc2ktRmlsZS1NYW5hZ2VyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgXHJcbiAgICAgIDwhLS0gIDxwLWZpbGVVcGxvYWQgI2ZpbGVVcGxvYWRGaWNoaWVyIG5hbWU9XCJkZW1vW11cIiAob25CZWZvcmVVcGxvYWQpPVwib25JbXBvcnRGaWxlKCRldmVudClcIlxyXG4gICAgICAgICAgKG9uU2VsZWN0KT1cIm9uRmlsZVNlbGVjdGVkKCRldmVudClcIiAob25DbGVhcik9XCJvbkNsZWFyKCRldmVudClcIiAob25SZW1vdmUpPVwib25SZW1vdmUoJGV2ZW50KVwiIFttdWx0aXBsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgW21heEZpbGVTaXplXT1cIjEwMDAwMDBcIlxyXG4gICAgICAgICAgW2ludmFsaWRGaWxlU2l6ZU1lc3NhZ2VTdW1tYXJ5XT1cIidzaGFyZWRfZmlsZV91cGxvYWRfaW52YWxpZF9maWxlX3NpemVfbWVzc2FnZV9zdW1tYXJ5JyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtpbnZhbGlkRmlsZVNpemVNZXNzYWdlRGV0YWlsXT1cIidzaGFyZWRfZmlsZV91cGxvYWRfaW52YWxpZF9maWxlX3NpemVfbWVzc2FnZV9kZXRhaWwnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2ludmFsaWRGaWxlVHlwZU1lc3NhZ2VTdW1tYXJ5XT1cIidzaGFyZWRfZmlsZV91cGxvYWRfaW52YWxpZF9maWxlX3R5cGVfbWVzc2FnZV9zdW1tYXJ5JyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtpbnZhbGlkRmlsZUxpbWl0TWVzc2FnZURldGFpbF09XCInc2hhcmVkX2ZpbGVfdXBsb2FkX2ludmFsaWRfZmlsZV9saW1pdF9tZXNzYWdlX2RldGFpbCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbaW52YWxpZEZpbGVMaW1pdE1lc3NhZ2VTdW1tYXJ5XT1cIidzaGFyZWRfZmlsZV91cGxvYWRfaW52YWxpZF9maWxlX2xpbWl0X21lc3NhZ2Vfc3VtbWFyeScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbaW52YWxpZEZpbGVUeXBlTWVzc2FnZURldGFpbF09XCInc2hhcmVkX2ZpbGVfdXBsb2FkX2ludmFsaWRfZmlsZV90eXBlX21lc3NhZ2VfZGV0YWlsJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtjaG9vc2VJY29uXT1cIidwaSBwaS1wYXBlcmNsaXAnXCIgY2FuY2VsU3R5bGVDbGFzcz1cInAtYnV0dG9uLXNlY29uZGFyeVwiIHVwbG9hZFN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi1oZWxwXCJcclxuICAgICAgICAgIHJlbW92ZVN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi1kYW5nZXJcIiBbY2hvb3NlTGFiZWxdPVwiJ3NoYXJlZF9yZXBvcnRpbmdfY2hvb3NlX3JlcG9ydF9maWxlJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFt1cGxvYWRMYWJlbF09XCInc2hhcmVkX3JlcG9ydGluZ19pbXBvcnRfcmVwb3J0JyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtjYW5jZWxMYWJlbF09XCInc2hhcmVkX3JlcG9ydGluZ19jYW5jZWxfY2hvb3NlX3JlcG9ydF9maWxlJyB8IGxvY2FsaXplXCIgW3Nob3dVcGxvYWRCdXR0b25dPVwiZmFsc2VcIj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cInRvVXBsb2FkRmlsZURhdGFcIiBwVGVtcGxhdGU9XCJmaWxldXBsb2FkLWNvbnRlbnRcIj5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9wLWZpbGVVcGxvYWQ+ICAgLS0+XHJcblxyXG5cclxuICAgIDwvZGl2PlxyXG4gIDwvZmllbGRzZXQ+XHJcbiAgPFRzaS1Nb2RhbC1Gb290ZXIgW3Nob3dTYXZlQW5kQ2xvc2VCdXR0b25dPVwibW9kZSA9PSBtb2RlUmVmLmRlbGV0ZVwiIFtjYW5jZWxEaXNhYmxlZF09XCJzYXZpbmdcIiBbc2F2ZURpc2FibGVkXT1cImlzU3VibWl0RGlzYWJsZWQoKVwiXHJcbiAgICAob25DYW5jZWxDbGljayk9XCJoaWRlKClcIj48L1RzaS1Nb2RhbC1Gb290ZXI+XHJcbjwvdHNpLWZvcm0+Il19
200
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvdHNpLXVwbG9hZC1maWNoZS90c2ktdXBsb2FkLWZpY2hlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy90c2ktdXBsb2FkLWZpY2hlL3RzaS11cGxvYWQtZmljaGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUV2QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQztBQUVoSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUXZFLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSw2QkFBNkI7SUFrQnhFLFlBQ1MsZUFBK0IsRUFDOUIsNEJBQXlELEVBQ2pELEdBQXFCLEVBQ3JCLE1BQTJCLEVBQ25DLG9CQUE0QyxFQUM1QyxvQkFBNEMsRUFDNUMsaUJBQW9DO1FBRTVDLEtBQUssQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFSWixvQkFBZSxHQUFmLGVB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IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25LZXlzIH0gZnJvbSAnLi4vLi4vY29uc3RzL2xvY2FsaXphdGlvbi1rZXknO1xyXG5pbXBvcnQgeyBNb2RlcyB9IGZyb20gJy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgRmljaGllciB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IEVycm9yUmVzcG9uc2VNYW5hZ2VyU2VydmljZSwgVHNpTm90aWZpY2F0aW9uU2VydmljZSwgVHNpQ29uZmlybWF0aW9uU2VydmljZSwgRGlhbG9nRGF0YVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFRzaUZvcm1Db21wb25lbnRCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vdHNpLWJhc2UvY29tcG9uZW50cy90c2ktZm9ybS1iYXNlL3RzaS1mb3JtLWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmljaGllclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9maWNoaWVyL2ZpY2hpZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IGFwcFByb3ZpZGVycyB9IGZyb20gJy4uLy4uL2NvbnN0cy9hcHAtcHJvdmlkZXJzJztcclxuaW1wb3J0IHsgQWRtaW5pc3RyYXRpb25FbmRwb2ludHMgfSBmcm9tICcuLi8uLi9lbmQtcG9pbnRzL2VuZHBvaW50cyc7XHJcbmltcG9ydCB7IEJ1c2luZXNzQ2xhc3NOYW1lcyB9IGZyb20gJy4uLy4uL2NvbnN0cy9idXNpbmVzcy1jbGFzcy1uYW1lcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC10c2ktdXBsb2FkLWZpY2hlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHNpLXVwbG9hZC1maWNoZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogWy4uLmFwcFByb3ZpZGVyc11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRzaVVwbG9hZEZpY2hlQ29tcG9uZW50IGV4dGVuZHMgVHNpRm9ybUNvbXBvbmVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBmaWNoaWVyID0gbmV3IEZpY2hpZXIoKTtcclxuICAvLyBwYXJhbUJhc2VFbmRwb2ludHMgPSBQYXJhbUJhc2VFbmRwb2ludHM7XHJcblxyXG4gIG92ZXJyaWRlIHNhdmluZyA9IGZhbHNlO1xyXG4gIHRvVXBsb2FkRmlsZURhdGE6IGFueSA9IHVuZGVmaW5lZDtcclxuICBiYXNlNjRTdHJpbmc6IHN0cmluZyB8IEFycmF5QnVmZmVyIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGlzRGlzYWJsZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgbW9kZVJlZiA9IE1vZGVzO1xyXG5cclxuICB0eXBlRmljaGllckxpc3RVcmw6IHN0cmluZyA9ICcnO1xyXG4gIGFkbWluaXN0cmF0aW9uRW5kcG9pbnRzID0gQWRtaW5pc3RyYXRpb25FbmRwb2ludHNcclxuICBidXNpbmVzc0NsYXNzTmFtZXMgPSBCdXNpbmVzc0NsYXNzTmFtZXNcclxuXHJcbiAgQE91dHB1dCgpIG92ZXJyaWRlIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBfZmljaGllclNlcnZpY2U6IEZpY2hpZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZXJyb3JSZXNwb25zZU1hbmFnZXJTZXJ2aWNlOiBFcnJvclJlc3BvbnNlTWFuYWdlclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgb3ZlcnJpZGUgcmVmOiBEeW5hbWljRGlhbG9nUmVmLFxyXG4gICAgcHVibGljIG92ZXJyaWRlIGNvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jb25maXJtYXRpb25TZXJ2aWNlOiBUc2lDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dEYXRhU2VydmljZTogRGlhbG9nRGF0YVNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHJlZiwgY29uZmlnKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5maWNoaWVyLm5vbUZpY2hpZXJDb21wbGV0ID0gXCJcIjtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB0aGlzLmJ1c2luZXNzQ2xhc3MgPSBCdXNpbmVzc0NsYXNzTmFtZXMuRmljaGllcjtcclxuXHJcbiAgICBjb25zdCBjdHggPSB0aGlzLmRpYWxvZ0RhdGFTZXJ2aWNlLmdldERhdGEoKTtcclxuICAgIGNvbnN0IGN1cnJlbnRDbGFzc2UgPSBjdHg/LmNsYXNzO1xyXG4gICAgaWYgKGN0eD8uaWQgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmZpY2hpZXIudGFibGVMaWVlID0gY3R4LmNsYXNzO1xyXG4gICAgICB0aGlzLmZpY2hpZXIucGtleSA9IGN0eC5pZDtcclxuICAgIH1cclxuICAgIGlmIChjdXJyZW50Q2xhc3NlKSB7XHJcbiAgICAgIHRoaXMudHlwZUZpY2hpZXJMaXN0VXJsID0gQWRtaW5pc3RyYXRpb25FbmRwb2ludHMuZ2V0QWxsVHlwZUZpY2hpZXJNaW5pbWFsQnlDbGFzc2UoY3VycmVudENsYXNzZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICAodGhpcy5tb2RlID09IE1vZGVzLmVkaXQgfHwgdGhpcy5tb2RlID09IE1vZGVzLmRlbGV0ZSB8fCB0aGlzLm1vZGUgPT0gTW9kZXMuY29uc3VsdCkgJiZcclxuICAgICAgdGhpcy5pZCAhPSB1bmRlZmluZWQgJiZcclxuICAgICAgdGhpcy5pZCAhPSBudWxsXHJcbiAgICApIHtcclxuXHJcbiAgICAgIHRoaXMuaXNsb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5fZmljaGllclNlcnZpY2UuZ2V0QnlJZCh0aGlzLmlkKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcclxuICAgICAgICB0aGlzLmZpY2hpZXIgPSBkYXRhO1xyXG4gICAgICAgIGlmICh0aGlzLmZpY2hpZXIudGFibGVMaWVlKSB7XHJcbiAgICAgICAgICB0aGlzLnR5cGVGaWNoaWVyTGlzdFVybCA9IEFkbWluaXN0cmF0aW9uRW5kcG9pbnRzLmdldEFsbFR5cGVGaWNoaWVyTWluaW1hbEJ5Q2xhc3NlKHRoaXMuZmljaGllci50YWJsZUxpZWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHNhdmUoKTogdm9pZCB7XHJcbiAgICBzdXBlci5zYXZlKClcclxuICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XHJcbiAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgIGlmICh0aGlzLm1vZGUgPT0gTW9kZXMuY3JlYXRlKSB7XHJcbiAgICAgIHRoaXMuX2ZpY2hpZXJTZXJ2aWNlLmNyZWF0ZSh0aGlzLmZpY2hpZXIpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5pbmZvKHRoaXMubChMb2NhbGl6YXRpb25LZXlzLnNhdmVkU3VjY2Vzc2Z1bGx5KSk7XHJcbiAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLm9uU2F2ZS5lbWl0KCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKHJlc3BvbnNlOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zYXZpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuX2Vycm9yUmVzcG9uc2VNYW5hZ2VyU2VydmljZS5zaG93RXJyb3JNZXNzYWdlKHJlc3BvbnNlKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5tb2RlID09IE1vZGVzLmVkaXQgJiZcclxuICAgICAgdGhpcy5maWNoaWVyLnVpZCAhPSBudWxsICYmXHJcbiAgICAgIHRoaXMuZmljaGllci51aWQgIT0gdW5kZWZpbmVkXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5pc2xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLl9maWNoaWVyU2VydmljZS51cGRhdGUodGhpcy5maWNoaWVyLCB0aGlzLmZpY2hpZXIudWlkKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvblNlcnZpY2UuaW5mbyh0aGlzLmwoTG9jYWxpemF0aW9uS2V5cy51cGRhdGVkU3VjY2Vzc2Z1bGx5KSk7XHJcbiAgICAgICAgICB0aGlzLmhpZGUodHJ1ZSk7XHJcbiAgICAgICAgICB0aGlzLm9uU2F2ZS5lbWl0KCk7XHJcbiAgICAgICAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChyZXNwb25zZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB0aGlzLl9lcnJvclJlc3BvbnNlTWFuYWdlclNlcnZpY2Uuc2hvd0Vycm9yTWVzc2FnZShyZXNwb25zZSk7XHJcbiAgICAgICAgICB0aGlzLmlzbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaXNsb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMubW9kZSA9PSBNb2Rlcy5kZWxldGUpIHtcclxuICAgICAgdGhpcy5pc2xvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLl9jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oXHJcbiAgICAgICAgTG9jYWxpemF0aW9uS2V5cy5jb25maXJtRGVsZXRlLFxyXG4gICAgICAgIHVuZGVmaW5lZCxcclxuICAgICAgICAocmVzdWx0OiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIHJlc3VsdCAmJlxyXG4gICAgICAgICAgICB0aGlzLmZpY2hpZXIudWlkICE9IG51bGwgJiZcclxuICAgICAgICAgICAgdGhpcy5maWNoaWVyLnVpZCAhPSB1bmRlZmluZWRcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICB0aGlzLl9maWNoaWVyU2VydmljZS5kZWxldGUodGhpcy5maWNoaWVyLnVpZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3ModGhpcy5sKExvY2FsaXphdGlvbktleXMuZGVsZXRlZFN1Y2Nlc3NmdWxseSkpO1xyXG4gICAgICAgICAgICAgIHRoaXMuaGlkZSh0cnVlKTtcclxuICAgICAgICAgICAgICB0aGlzLm9uU2F2ZS5lbWl0KCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5pc2xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25GaWxlU2VsZWN0ZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgLy8gY29uc3QgZmlsZTogRmlsZSA9IGV2ZW50LmN1cnJlbnRGaWxlc1swXTtcclxuICAgIC8vdGhpcy50b1VwbG9hZEZpbGVEYXRhID0gZmlsZTtcclxuICAgIC8vdGhpcy5yZWFkRmlsZShmaWxlKTtcclxuICAgIC8vdGhpcy5yZWFkRmlsZUFzQnl0ZUFycmF5KGZpbGUpO1xyXG4gICAgLy9jb25zdCBibG9iID0gbmV3IEJsb2IoW2ZpbGVdLCB7IHR5cGU6IGZpbGUudHlwZSB9KTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAvL3RoaXMuZmljaGllci5jb250ZW51ID0gdGhpcy5iYXNlNjRTdHJpbmc7XHJcbiAgICAgIC8vdGhpcy5maWNoaWVyLm5vbUZpY2hpZXJDb21wbGV0ID0gZXZlbnQuY3VycmVudEZpbGVzWzBdLm5hbWU7XHJcbiAgICAgIHRoaXMuZmljaGllci5wa2V5ID0gdGhpcy5kaWFsb2dEYXRhU2VydmljZS5nZXREYXRhKCkuaWQ7XHJcbiAgICAgIHRoaXMuZmljaGllci50YWJsZUxpZWUgPSB0aGlzLmRpYWxvZ0RhdGFTZXJ2aWNlLmdldERhdGEoKS5jbGFzcztcclxuICAgIH0sIDIwMCk7XHJcbiAgfVxyXG5cclxuICBvbkltcG9ydEZpbGUoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgLyogIHRoaXMucmVwb3J0aW5nU2VydmljZS51cGxvYWRSZXBvcnRGaWxlKHRoaXMudG9VcGxvYWRGaWxlRGF0YSlcclxuICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgIHtcclxuICAgICAgICAgICBuZXh0OiAocmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hSZXBvcnRzKCk7XHJcbiAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc3VjY2Vzcygnc2hhcmVkX3JlcG9ydGluZ19yZXBvcnRfdXBsb2FkZWRfc3VjY2Vzc2Z1bGx5Jyk7XHJcbiAgICAgICAgICAgICB0aGlzLmZpbGVVcGxvYWQ/LmNsZWFyKCk7XHJcbiAgICAgICAgICAgfSxcclxuICAgICAgICAgICBlcnJvcjogKCkgPT4ge1xyXG4gICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKHRoaXMuZXJyb3JNZXNzYWdlS2V5KTtcclxuICAgICAgICAgICB9XHJcbiAgICAgICAgIH0pOyAqL1xyXG4gIH1cclxuXHJcbiAgLy9jYW5jZWwgYnV0dG9uIGNsaWNrXHJcbiAgb25DbGVhcihldmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnRvVXBsb2FkRmlsZURhdGEgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICAvL2NhbmNlbCBidXR0b24gY2xpY2tcclxuICBvblJlbW92ZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnRvVXBsb2FkRmlsZURhdGEgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICByZWFkRmlsZShmaWxlOiBGaWxlKSB7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5iYXNlNjRTdHJpbmcgPSAocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpLnNwbGl0KCcsJylbMV07XHJcbiAgICAgIC8vIFVzZSB0aGlzLmJhc2U2NFN0cmluZyBhcyBuZWVkZWRcclxuICAgIH07XHJcbiAgICByZWFkZXIub25lcnJvciA9IChlcnJvcikgPT4ge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdGaWxlIHJlYWRpbmcgZXJyb3I6JywgZXJyb3IpO1xyXG4gICAgfTtcclxuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gIH1cclxuXHJcbiAgcmVhZEZpbGVBc0J5dGVBcnJheShmaWxlOiBGaWxlKSB7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgY29uc3QgYXJyYXlCdWZmZXIgPSByZWFkZXIucmVzdWx0IGFzIEFycmF5QnVmZmVyO1xyXG4gICAgICBjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShhcnJheUJ1ZmZlcik7XHJcblxyXG4gICAgICAvLyBVc2UgYnl0ZUFycmF5IGFzIG5lZWRlZFxyXG4gICAgICBjb25zdCBieXRlQ29uc3Q6IFVpbnQ4QXJyYXkgPSBieXRlQXJyYXk7XHJcbiAgICAgIGNvbnNvbGUubG9nKGJ5dGVDb25zdCk7XHJcbiAgICAgIC8vdGhpcy5maWNoaWVyLmNvbnRlbnUgPSBieXRlQ29uc3RcclxuICAgIH07XHJcbiAgICByZWFkZXIub25lcnJvciA9IChlcnJvcikgPT4ge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdGaWxlIHJlYWRpbmcgZXJyb3I6JywgZXJyb3IpO1xyXG4gICAgfTtcclxuICAgIHJlYWRlci5yZWFkQXNBcnJheUJ1ZmZlcihmaWxlKTtcclxuICB9XHJcbn1cclxuIiwiPHRzaS1mb3JtIGNsYXNzPVwiZm9ybS1ob3Jpem9udGFsXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgKG9uU3VibWl0KT1cInNhdmUoKVwiIFtpc0xvYWRpbmddPVwiaXNsb2FkaW5nXCI+XHJcbiAgPFRzaS1Nb2RhbC1IZWFkZXIgW2lucHV0VGl0bGVdPVwiJ3VwbG9hZF9maWNoaWVyJyB8IGxvY2FsaXplIFwiIChvbkNsb3NlQ2xpY2spPVwiaGlkZSgpXCI+XHJcbiAgPC9Uc2ktTW9kYWwtSGVhZGVyPlxyXG4gIDxmaWVsZHNldCBbZGlzYWJsZWRdPVwiaXNEZWxldGVNb2RlKCkgfHwgaXNDb25zdWx0TW9kZSgpIFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0yXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX1R5cGVGaWNoaWVyJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVNlYXJjaC1Db21ibyBjbGFzcz1cImNvbC04XCIgW2xpc3RTb3VyY2VVcmxdPVwidHlwZUZpY2hpZXJMaXN0VXJsXCIgWyhiaW5kKV09XCJmaWNoaWVyLnR5cGVGaWNoaWVyXCJcclxuICAgICAgICAgICAgICBpZC1maWVsZD1cInVpZFwiIFtpc0ZpbHRlcmVkXT1cInRydWVcIiBsYWJlbC1maWVsZD1cImxpYmVsbGVcIiBcclxuICAgICAgICAgICAgICBbZWxlbWVudFNvdXJjZVVybF09XCJhZG1pbmlzdHJhdGlvbkVuZHBvaW50cy5nZXRUeXBlRmljaGllck1pbmltYWxcIlxyXG4gICAgICAgICAgICAgIFtidXNpbmVzc0NsYXNzXT1cImJ1c2luZXNzQ2xhc3NOYW1lcy5UeXBlRmljaGllclwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L1RzaS1TZWFyY2gtQ29tYm8+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGZsZXhcIj5cclxuICAgICAgICAgICAgPFRzaS1MYWJlbCBjbGFzcz1cImNvbC0yXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX1RhYmxlTGllZSdcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1UZXh0LUJveCBjbGFzcz1cImNvbC04XCIgW2lucHV0TmFtZV09XCIndGFibGVMaWVlJ1wiIFsoaW5wdXRGaWVsZCldPVwiZmljaGllci50YWJsZUxpZWVcIlxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVcIj48L1RzaS1UZXh0LUJveD5cclxuICAgICAgICAgICAgPCEtLSA8VHNpLVNlYXJjaC1Db21ib1xyXG4gICAgICAgICAgICAgIGNsYXNzPVwiY29sLTZcIlxyXG4gICAgICAgICAgICAgIFsoYmluZCldPVwiZmljaGllci50YWJsZUxpZWVcIlxyXG4gICAgICAgICAgICAgIGlkLWZpZWxkPVwiaWRcIlxyXG4gICAgICAgICAgICAgIGxhYmVsLWZpZWxkPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAgIChkYXRhc291cmNlLWxvYWRlZCk9XCJvbkRhdGFMb2FkZWQoKVwiPlxyXG4gICAgICAgICAgICA8L1RzaS1TZWFyY2gtQ29tYm8+IC0tPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTJcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfTm9tJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLVRleHQtQm94IGNsYXNzPVwiY29sLThcIiBbaW5wdXROYW1lXT1cIidub20nXCIgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLm5vbVwiPjwvVHNpLVRleHQtQm94PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMlwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9EYXRlRmljaGllcidcIj48L1RzaS1MYWJlbD5cclxuICAgICAgICAgICAgPFRzaS1EYXRlLVBpY2tlciBjbGFzcz1cImNvbC04XCIgW2lucHV0TmFtZV09XCInZGF0ZUZpY2hpZXInXCJcclxuICAgICAgICAgICAgICBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIuZGF0ZUZpY2hpZXJcIj48L1RzaS1EYXRlLVBpY2tlcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBmbGV4XCI+XHJcbiAgICAgICAgICAgIDxUc2ktTGFiZWwgY2xhc3M9XCJjb2wtMlwiIFtsYWJlbFZhbHVlXT1cIidwYXJhbWJhc2VfcGFyYW1fZmljaGllcl9WZXJzaW9uJ1wiPjwvVHNpLUxhYmVsPlxyXG4gICAgICAgICAgICA8VHNpLUludGVnZXIgY2xhc3M9XCJjb2wtOFwiIFtpbnB1dE5hbWVdPVwiJ3ZlcnNpb24nXCIgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLnZlcnNpb25cIlxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cnVlXCI+PC9Uc2ktSW50ZWdlcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTFcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfT2JqZXQnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktVGV4dC1Cb3ggY2xhc3M9XCJjb2wtMTBcIiBbaW5wdXROYW1lXT1cIidPYmpldCdcIiBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIub2JqZXRcIj48L1RzaS1UZXh0LUJveD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICA8VHNpLUxhYmVsIGNsYXNzPVwiY29sLTFcIiBbbGFiZWxWYWx1ZV09XCIncGFyYW1iYXNlX3BhcmFtX2ZpY2hpZXJfRGVzY3JpcHRpb24nXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICAgIDxUc2ktVGV4dC1BcmVhIGNsYXNzPVwiY29sLTEwXCIgW2lucHV0TmFtZV09XCInZGVzY3JpcHRpb24nXCIgWyhpbnB1dEZpZWxkKV09XCJmaWNoaWVyLmRlc2NyaXB0aW9uXCIgW3Jvd3NdPVwiNVwiXHJcbiAgICAgICAgICAgICAgW2NvbHNdPVwiNVwiPjwvVHNpLVRleHQtQXJlYT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG5cclxuICAgICAgICA8VHNpLUxhYmVsIGZvcj1cImlzRmlsZVN0b3JhZ2VcIiBjbGFzcz1cImNvbC0xXCIgW2xhYmVsVmFsdWVdPVwiJ3BhcmFtYmFzZV9wYXJhbV9maWNoaWVyX2lzRmlsZVN0b3JhZ2UnXCI+PC9Uc2ktTGFiZWw+XHJcbiAgICAgICAgICA8VHNpLUNoZWNrQm94IGlkPVwiaXNGaWxlU3RvcmFnZVwiIGNsYXNzPVwiY29sLTVcIiBbaXNCaW5hcnldPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgW2lucHV0TmFtZV09XCInaXNGaWxlU3RvcmFnZSdcIiBbZGlzYWJsZWRdPVwidHJ1ZVwiIFtpbnB1dEZpZWxkXT1cImZpY2hpZXIuaXNGaWxlU3RvcmFnZVwiPlxyXG4gICAgICAgICAgPC9Uc2ktQ2hlY2tCb3g+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJncmlkXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTFcIj5cclxuICAgICAgICAgICAgICAgIDxUc2ktRmlsZS1NYW5hZ2VyIFxyXG4gICAgICAgICAgICAgICAgICBbc2hvd0ZpbGVVcGxvYWRdPVwidHJ1ZVwiIFxyXG4gICAgICAgICAgICAgICAgICBbKGlucHV0RmllbGQpXT1cImZpY2hpZXIuY29udGVudVwiXHJcbiAgICAgICAgICAgICAgICAgIFsoZmlsZU5hbWUpXT1cImZpY2hpZXIubm9tRmljaGllckNvbXBsZXRcIiBcclxuICAgICAgICAgICAgICAgICAgbmFtZT1cImZpbGVGaWNoaWVyXCIgXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwiZmlsZVVwbG9hZGluZ1wiIFxyXG4gICAgICAgICAgICAgICAgICBpbnB1dE5hbWU9XCJjb250ZW51XCIgXHJcbiAgICAgICAgICAgICAgICAgIGFjY2VwdD1cIlwiXHJcbiAgICAgICAgICAgICAgICAgIFttYXhGaWxlU2l6ZV09XCIxMDQ4NTc2MFwiIFxyXG4gICAgICAgICAgICAgICAgICBbbXVsdGlwbGVdPVwiZmFsc2VcIiBcclxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzRWRpdE1vZGUoKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtzaG93RG93bmxvYWRCdXR0b25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtzaG93Q2FuY2VsQnV0dG9uXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgW3Nob3dVcGxvYWRCdXR0b25dPVwiZmFsc2VcIiBcclxuICAgICAgICAgICAgICAgICAgW2V4cGxvcmVPbkRvd25sb2FkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAob25TZWxlY3RGaWxlTWFuYWdlcik9XCJvbkZpbGVTZWxlY3RlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgPjwvVHNpLUZpbGUtTWFuYWdlcj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIFxyXG4gICAgICA8IS0tICA8cC1maWxlVXBsb2FkICNmaWxlVXBsb2FkRmljaGllciBuYW1lPVwiZGVtb1tdXCIgKG9uQmVmb3JlVXBsb2FkKT1cIm9uSW1wb3J0RmlsZSgkZXZlbnQpXCJcclxuICAgICAgICAgIChvblNlbGVjdCk9XCJvbkZpbGVTZWxlY3RlZCgkZXZlbnQpXCIgKG9uQ2xlYXIpPVwib25DbGVhcigkZXZlbnQpXCIgKG9uUmVtb3ZlKT1cIm9uUmVtb3ZlKCRldmVudClcIiBbbXVsdGlwbGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgIFttYXhGaWxlU2l6ZV09XCIxMDAwMDAwXCJcclxuICAgICAgICAgIFtpbnZhbGlkRmlsZVNpemVNZXNzYWdlU3VtbWFyeV09XCInc2hhcmVkX2ZpbGVfdXBsb2FkX2ludmFsaWRfZmlsZV9zaXplX21lc3NhZ2Vfc3VtbWFyeScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbaW52YWxpZEZpbGVTaXplTWVzc2FnZURldGFpbF09XCInc2hhcmVkX2ZpbGVfdXBsb2FkX2ludmFsaWRfZmlsZV9zaXplX21lc3NhZ2VfZGV0YWlsJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgIFtpbnZhbGlkRmlsZVR5cGVNZXNzYWdlU3VtbWFyeV09XCInc2hhcmVkX2ZpbGVfdXBsb2FkX2ludmFsaWRfZmlsZV90eXBlX21lc3NhZ2Vfc3VtbWFyeScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbaW52YWxpZEZpbGVMaW1pdE1lc3NhZ2VEZXRhaWxdPVwiJ3NoYXJlZF9maWxlX3VwbG9hZF9pbnZhbGlkX2ZpbGVfbGltaXRfbWVzc2FnZV9kZXRhaWwnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2ludmFsaWRGaWxlTGltaXRNZXNzYWdlU3VtbWFyeV09XCInc2hhcmVkX2ZpbGVfdXBsb2FkX2ludmFsaWRfZmlsZV9saW1pdF9tZXNzYWdlX3N1bW1hcnknIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgW2ludmFsaWRGaWxlVHlwZU1lc3NhZ2VEZXRhaWxdPVwiJ3NoYXJlZF9maWxlX3VwbG9hZF9pbnZhbGlkX2ZpbGVfdHlwZV9tZXNzYWdlX2RldGFpbCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbY2hvb3NlSWNvbl09XCIncGkgcGktcGFwZXJjbGlwJ1wiIGNhbmNlbFN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi1zZWNvbmRhcnlcIiB1cGxvYWRTdHlsZUNsYXNzPVwicC1idXR0b24taGVscFwiXHJcbiAgICAgICAgICByZW1vdmVTdHlsZUNsYXNzPVwicC1idXR0b24tZGFuZ2VyXCIgW2Nob29zZUxhYmVsXT1cIidzaGFyZWRfcmVwb3J0aW5nX2Nob29zZV9yZXBvcnRfZmlsZScgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbdXBsb2FkTGFiZWxdPVwiJ3NoYXJlZF9yZXBvcnRpbmdfaW1wb3J0X3JlcG9ydCcgfCBsb2NhbGl6ZVwiXHJcbiAgICAgICAgICBbY2FuY2VsTGFiZWxdPVwiJ3NoYXJlZF9yZXBvcnRpbmdfY2FuY2VsX2Nob29zZV9yZXBvcnRfZmlsZScgfCBsb2NhbGl6ZVwiIFtzaG93VXBsb2FkQnV0dG9uXT1cImZhbHNlXCI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJ0b1VwbG9hZEZpbGVEYXRhXCIgcFRlbXBsYXRlPVwiZmlsZXVwbG9hZC1jb250ZW50XCI+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvcC1maWxlVXBsb2FkPiAgIC0tPlxyXG5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2ZpZWxkc2V0PlxyXG4gIDxUc2ktTW9kYWwtRm9vdGVyIFtzaG93U2F2ZUFuZENsb3NlQnV0dG9uXT1cIm1vZGUgPT0gbW9kZVJlZi5kZWxldGVcIiBbY2FuY2VsRGlzYWJsZWRdPVwic2F2aW5nXCIgW3NhdmVEaXNhYmxlZF09XCJpc1N1Ym1pdERpc2FibGVkKClcIlxyXG4gICAgKG9uQ2FuY2VsQ2xpY2spPVwiaGlkZSgpXCI+PC9Uc2ktTW9kYWwtRm9vdGVyPlxyXG48L3RzaS1mb3JtPiJdfQ==