@smartbit4all/ng-client 4.3.28 → 4.3.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/session/api/api/session.service.mjs +1 -1
- package/esm2022/lib/session/api/configuration.mjs +1 -1
- package/esm2022/lib/session/api/encoder.mjs +1 -1
- package/esm2022/lib/session/api/model/accountInfo.mjs +1 -1
- package/esm2022/lib/session/api/model/apiError.mjs +1 -1
- package/esm2022/lib/session/api/model/authenticationProviderData.mjs +1 -1
- package/esm2022/lib/session/api/model/getAuthenticationProvidersResponse.mjs +1 -1
- package/esm2022/lib/session/api/model/refreshSessionRequest.mjs +1 -1
- package/esm2022/lib/session/api/model/userActivityLog.mjs +1 -1
- package/esm2022/lib/session/api/param.mjs +1 -1
- package/esm2022/lib/session/api/variables.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/api/default.service.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/index.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/componentType.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/layoutDefinitionDescriptor.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/layoutDirection.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/param.mjs +1 -1
- package/esm2022/lib/smart-component-layout/api/variables.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/api/diagramService.service.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/index.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramColor.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDataContainer.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDataItem.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDataSet.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramDescriptor.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramModel.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/diagramShape.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/drawTime.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/labelText.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/param.mjs +1 -1
- package/esm2022/lib/smart-diagram/api/variables.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/dateFieldProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/multiFileUploaderProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartFormWidgetType.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/smartWidgetDefinition.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/textBoxProperties.mjs +1 -1
- package/esm2022/lib/smart-form/api/model/valueChangeMode.mjs +1 -1
- package/esm2022/lib/smart-form/services/smartform.layout-definition.service.mjs +3 -1
- package/esm2022/lib/smart-form/smartform.form-model.mjs +1 -1
- package/esm2022/lib/smart-form/widgets/smartformwidget/smartformwidget.component.mjs +30 -26
- package/esm2022/lib/smart-map/api/api/api.mjs +1 -1
- package/esm2022/lib/smart-map/api/api/geoMap.service.mjs +1 -1
- package/esm2022/lib/smart-map/api/api.module.mjs +1 -1
- package/esm2022/lib/smart-map/api/configuration.mjs +1 -1
- package/esm2022/lib/smart-map/api/encoder.mjs +1 -1
- package/esm2022/lib/smart-map/api/index.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/gPSPosition.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/gPSRoute.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapChange.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapDataLoadingMode.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapDataSourceDescriptor.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapDataSourceType.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapEditingSession.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapInteraction.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapItem.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapItemKind.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapLayer.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapLayerChange.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapLayerDescriptor.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapModel.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapOperationMode.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapSelectionMode.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapServerModel.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapTextType.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapViewState.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/geoMapViewport.mjs +1 -1
- package/esm2022/lib/smart-map/api/model/models.mjs +1 -1
- package/esm2022/lib/smart-map/api/param.mjs +1 -1
- package/esm2022/lib/smart-map/api/variables.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiActionInputType.mjs +1 -1
- package/esm2022/lib/view-context/api/model/uiActionUploadDescriptor.mjs +1 -1
- package/esm2022/lib/view-context/smart-view-context.module.mjs +5 -1
- package/fesm2022/smartbit4all-ng-client.mjs +23 -13
- package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
- package/lib/smart-form/smartform.form-model.d.ts +2 -0
- package/lib/smart-form/widgets/smartformwidget/smartformwidget.component.d.ts +1 -0
- package/lib/view-context/smart-view-context.module.d.ts +15 -14
- package/package.json +1 -1
- package/smartbit4all-ng-client-4.3.29.tgz +0 -0
- package/smartbit4all-ng-client-4.3.28.tgz +0 -0
|
@@ -636,6 +636,7 @@ export class SmartformLayoutDefinitionService {
|
|
|
636
636
|
isFloatLabel: layoutDefinition.isFloatLabel,
|
|
637
637
|
style: layoutDefinition.style,
|
|
638
638
|
labelStyle: layoutDefinition.labelStyle,
|
|
639
|
+
hint: layoutDefinition.hint,
|
|
639
640
|
fileUploaderProperties: layoutDefinition.properties?.['FILE_UPLOADER_properties'],
|
|
640
641
|
};
|
|
641
642
|
return widget;
|
|
@@ -654,6 +655,7 @@ export class SmartformLayoutDefinitionService {
|
|
|
654
655
|
isFloatLabel: layoutDefinition.isFloatLabel,
|
|
655
656
|
style: layoutDefinition.style,
|
|
656
657
|
labelStyle: layoutDefinition.labelStyle,
|
|
658
|
+
hint: layoutDefinition.hint,
|
|
657
659
|
multiFileUploaderProperties: layoutDefinition.properties?.['MULTI_FILE_UPLOADER_properties'],
|
|
658
660
|
};
|
|
659
661
|
return widget;
|
|
@@ -707,4 +709,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
707
709
|
providedIn: 'root',
|
|
708
710
|
}]
|
|
709
711
|
}], ctorParameters: () => [] });
|
|
710
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRmb3JtLmxheW91dC1kZWZpbml0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1mb3JtL3NlcnZpY2VzL3NtYXJ0Zm9ybS5sYXlvdXQtZGVmaW5pdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLG1CQUFtQixFQUF5QixNQUFNLFFBQVEsQ0FBQzs7QUFrQjlGLE1BQU0sT0FBTyxnQ0FBZ0M7YUFDbkIsMEJBQXFCLEdBQWlCO1FBQzVELE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRTtnQkFDVCxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUM7Z0JBQ2pELENBQUMsWUFBWSxDQUFDO2dCQUNkLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzlCLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQ3pDLENBQUMsT0FBTyxDQUFDO2FBQ1Y7U0FDRjtLQUNGLEFBVjRDLENBVTNDO0lBQ0YsZ0JBQWUsQ0FBQztJQUVULE1BQU0sQ0FBQyxNQUF5QztRQUNyRCxJQUFJLE9BQU8sR0FBMkIsRUFBRSxDQUFDO1FBRXpDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQyxnQkFBdUMsRUFBRSxFQUFFO1lBQzVFLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7Z0JBQzdCLEdBQUcsTUFBTTtnQkFDVCxnQkFBZ0I7YUFDakIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxNQUFN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QUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQUssQ0FBQyxjQUFjLENBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFXLENBQUM7UUFDL0YsSUFBSSxVQUFVLEdBQXVCLFNBQVMsQ0FBQztRQUMvQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO1lBQ3hCLFVBQVUsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFxQixDQUFDO1FBQ3ZELENBQUM7UUFFRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRU8sa0JBQWtCLENBQUMsZ0JBQXVDLEVBQUUsSUFBWTtRQUM5RSxPQUFPLENBQUMsS0FBSyxDQUNYLGFBQWEsSUFBSSxxQ0FBcUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQ3pGLENBQUM7SUFDSixDQUFDOytHQTd0QlUsZ0NBQWdDO21IQUFoQyxnQ0FBZ0MsY0FGL0IsTUFBTTs7NEZBRVAsZ0NBQWdDO2tCQUg1QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uLCBTbWFydEZvcm1XaWRnZXRUeXBlLCBTbWFydFdpZGdldERlZmluaXRpb24gfSBmcm9tICcuLi9hcGknO1xyXG5pbXBvcnQgeyBTbWFydEZvcm1XaWRnZXQgfSBmcm9tICcuLi9zbWFydGZvcm0uZm9ybS1tb2RlbCc7XHJcbmltcG9ydCB7IFZhbHVlIH0gZnJvbSAnLi4vc21hcnRmb3JtLm1vZGVsJztcclxuaW1wb3J0IHsgUXVpbGxNb2R1bGVzIH0gZnJvbSAnbmd4LXF1aWxsJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRmb3JtTGF5b3V0Q3JlYXRlV2lkZ2V0Q29uZmlnIHtcclxuICBsYXlvdXREZWZpbml0aW9ucz86IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbltdO1xyXG4gIGxheW91dERlZmluaXRpb24/OiBTbWFydFdpZGdldERlZmluaXRpb247XHJcbiAgdXBsb2FkQ2FsbGJhY2s/OiAoa2V5OiBzdHJpbmcsIGZpbGVzOiBhbnlbXSkgPT4gdm9pZDtcclxuICBidXR0b25DYWxsYmFjaz86ICgodWlBY3Rpb246IGFueSkgPT4gdm9pZCkgfCAoKGtleTogc3RyaW5nKSA9PiB2b2lkKTtcclxuICB1aUFjdGlvbnM/OiBhbnlbXTtcclxuICB1aUFjdGlvbkRlc2NyaXB0b3JzPzogKHVpQWN0aW9uOiBhbnkpID0+IGFueTtcclxuICBtb2RlbD86IGFueTtcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0Zm9ybUxheW91dERlZmluaXRpb25TZXJ2aWNlIHtcclxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBERUZBVUxUX1FVSUxMX01PRFVMRVM6IFF1aWxsTW9kdWxlcyA9IHtcclxuICAgIHRvb2xiYXI6IHtcclxuICAgICAgY29udGFpbmVyOiBbXHJcbiAgICAgICAgWydib2xkJywgJ2l0YWxpYycsICd1bmRlcmxpbmUnLCAnc3RyaWtlJywgJ2xpbmsnXSxcclxuICAgICAgICBbJ2NvZGUtYmxvY2snXSxcclxuICAgICAgICBbeyBoZWFkZXI6IDEgfSwgeyBoZWFkZXI6IDIgfV0sXHJcbiAgICAgICAgW3sgbGlzdDogJ29yZGVyZWQnIH0sIHsgbGlzdDogJ2J1bGxldCcgfV0sXHJcbiAgICAgICAgWydjbGVhbiddLFxyXG4gICAgICBdLFxyXG4gICAgfSxcclxuICB9O1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgcHVibGljIHJlbmRlcihjb25maWc6IFNtYXJ0Zm9ybUxheW91dENyZWF0ZVdpZGdldENvbmZpZyk6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+W10ge1xyXG4gICAgbGV0IHdpZGdldHM6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+W10gPSBbXTtcclxuXHJcbiAgICBjb25maWcubGF5b3V0RGVmaW5pdGlvbnM/LmZvckVhY2goKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbikgPT4ge1xyXG4gICAgICBsZXQgd2lkZ2V0ID0gdGhpcy5jcmVhdGVXaWRnZXQoe1xyXG4gICAgICAgIC4uLmNvbmZpZyxcclxuICAgICAgICBsYXlvdXREZWZpbml0aW9uLFxyXG4gICAgICB9KTtcclxuICAgICAgaWYgKHdpZGdldCkge1xyXG4gICAgICAgIHdpZGdldHMucHVzaCh3aWRnZXQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gd2lkZ2V0cztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlV2lkZ2V0KFxyXG4gICAgY29uZmlnOiBTbWFydGZvcm1MYXlvdXRDcmVhdGVXaWRnZXRDb25maWdcclxuICApOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB8IHVuZGVmaW5lZCB7XHJcbiAgICBzd2l0Y2ggKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uPy50eXBlKSB7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5DT05UQUlORVI6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQ29udGFpbmVyKGNvbmZpZywgY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuTEFCRUw6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlTGFiZWwoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRDpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVUZXh0RmllbGQoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9DSElQUzpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVUZXh0RmllbGRDaGlwcyhjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5URVhUX0ZJRUxEX05VTUJFUjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVUZXh0RmllbGROdW1iZXIoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9MT09LVVA6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlVGV4dEZpZWxkTG9va3VwKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfQk9YOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVRleHRCb3goY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVE9HR0xFOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVRvZ2dsZShjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5SQURJT19CVVRUT046XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlUmFkaW9CdXR0b24oY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuQ0hFQ0tfQk9YOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUNoZWNrQm94KGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLkNIRUNLX0JPWF8yOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUNoZWNrQm94Mihjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5TRUxFQ1Q6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU2VsZWN0KGNvbmZpZy5sYXlvdXREZWZpbml0aW9uLCBjb25maWcubW9kZWwpO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuU0VMRUNUX01VTFRJUExFOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVNlbGVjdE11bHRpcGxlKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLkRBVEVfUElDS0VSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZURhdGVQaWNrZXIoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuREFURV9USU1FX1BJQ0tFUjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEYXRlVGltZVBpY2tlcihjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5JTUFHRTpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVJbWFnZShjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5TVkc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU3ZnKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLkRJVjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEaXYoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuQlVUVE9OOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUJ1dHRvbihjb25maWcpO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuRElWSURFUjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEaXZpZGVyKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLlJJQ0hfVEVYVDpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVSaWNoVGV4dChjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5GSUxFX1VQTE9BREVSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUZpbGVVcGxvYWRlcihjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5NVUxUSV9GSUxFX1VQTE9BREVSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZU11bHRpRmlsZVVwbG9hZGVyKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLk1BVFJJWDpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVNYXRyaXgoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuU09SVEFCTEU6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU29ydGFibGUoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuTU9OVEhfUElDS0VSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZU1vbnRoUGlja2VyKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLllPVVRVQkVfUExBWUVSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVlvdXR1YmVQbGF5ZXIoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVNb250aFBpY2tlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5NT05USF9QSUNLRVIsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTWF0cml4KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLk1BVFJJWCxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGlzTXVsdGlwbGU6IGxheW91dERlZmluaXRpb24ubWF0cml4Py5tdWx0aVNlbGVjdCxcclxuICAgICAgdmFsdWU6IGxheW91dERlZmluaXRpb24ubWF0cml4LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlU29ydGFibGUobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKSB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuU09SVEFCTEUsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgICAgaWNvbjogbGF5b3V0RGVmaW5pdGlvbi5pY29uLFxyXG4gICAgICBzb3J0RGVmaW5pdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5zb3J0RGVmaW5pdGlvbiA/PyB7XHJcbiAgICAgICAga2V5OiAndXJpJyxcclxuICAgICAgICBkaXNwbGF5VmFsdWU6ICdkaXNwbGF5VmFsdWUnLFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUxhYmVsKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkxBQkVMLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgd2lkZ2V0RGVzY3JpcHRpb246IGxheW91dERlZmluaXRpb24ud2lkZ2V0RGVzY3JpcHRpb24sXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVDb250YWluZXIoXHJcbiAgICBjb25maWc6IFNtYXJ0Zm9ybUxheW91dENyZWF0ZVdpZGdldENvbmZpZyxcclxuICAgIGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvblxyXG4gICk6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB2YWx1ZUxpc3Q6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+W10gPSBbXTtcclxuXHJcbiAgICBsYXlvdXREZWZpbml0aW9uLmNoaWxkcmVuQ29tcG9uZW50cz8uZm9yRWFjaCgobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKSA9PiB7XHJcbiAgICAgIGxldCB3aWRnZXQgPSB0aGlzLmNyZWF0ZVdpZGdldCh7XHJcbiAgICAgICAgLi4uY29uZmlnLFxyXG4gICAgICAgIGxheW91dERlZmluaXRpb24sXHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAod2lkZ2V0KSB7XHJcbiAgICAgICAgdmFsdWVMaXN0LnB1c2god2lkZ2V0KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuQ09OVEFJTkVSLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGRpcmVjdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5kaXJlY3Rpb24gPz8gU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uLkNPTCxcclxuICAgICAgdmFsdWVMaXN0LFxyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0RmllbGQobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRCxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHBsYWNlaG9sZGVyOiBsYXlvdXREZWZpbml0aW9uLnBsYWNlaG9sZGVyLFxyXG4gICAgICBwcmVmaXg6IGxheW91dERlZmluaXRpb24ucHJlZml4LFxyXG4gICAgICBzdWZmaXg6IGxheW91dERlZmluaXRpb24uc3VmZml4LFxyXG4gICAgICBtYXNrOiBsYXlvdXREZWZpbml0aW9uLm1hc2ssXHJcbiAgICAgIGljb246IGxheW91dERlZmluaXRpb24uaWNvbixcclxuICAgICAgaWNvbkNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmljb25Db2xvcixcclxuICAgICAgaWNvblBvc2l0aW9uOiBsYXlvdXREZWZpbml0aW9uLmljb25Qb3NpdGlvbixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaXNQYXNzd29yZDogbGF5b3V0RGVmaW5pdGlvbi5pc1Bhc3N3b3JkLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBmaWx0ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZmlsdGVyRXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgbWF4TGVuZ3RoOiBsYXlvdXREZWZpbml0aW9uLm1heExlbmd0aCxcclxuICAgICAgc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4OiBsYXlvdXREZWZpbml0aW9uLnNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeCxcclxuICAgICAgdG9vbGJhcklkOiBsYXlvdXREZWZpbml0aW9uLnRvb2xiYXJJZCxcclxuICAgICAgaW5wdXRNb2RlOiBsYXlvdXREZWZpbml0aW9uLmlucHV0TW9kZSxcclxuICAgICAgdGV4dEZpZWxkUHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ1RFWFRfRklFTERfcHJvcGVydGllcyddLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlVGV4dEZpZWxkQ2hpcHMobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9DSElQUyxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHBsYWNlaG9sZGVyOiBsYXlvdXREZWZpbml0aW9uLnBsYWNlaG9sZGVyLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICB2YWx1ZUxpc3Q6IFtdLFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgaWYgKGxheW91dERlZmluaXRpb24udmFsdWVzKSB7XHJcbiAgICAgIHdpZGdldC52YWx1ZUxpc3QgPSBsYXlvdXREZWZpbml0aW9uLnZhbHVlcy5tYXAoKHZhbHVlOiBWYWx1ZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBrZXk6IHZhbHVlLmNvZGUhLFxyXG4gICAgICAgICAgbGFiZWw6IHZhbHVlLmRpc3BsYXlWYWx1ZSxcclxuICAgICAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSVRFTSxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZS5jb2RlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0RmllbGRMb29rdXAobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9MT09LVVAsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBwbGFjZWhvbGRlcjogbGF5b3V0RGVmaW5pdGlvbi5wbGFjZWhvbGRlcixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgdG9vbGJhcklkOiBsYXlvdXREZWZpbml0aW9uLnRvb2xiYXJJZCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlVGV4dEZpZWxkTnVtYmVyKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfRklFTERfTlVNQkVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgcGxhY2Vob2xkZXI6IGxheW91dERlZmluaXRpb24ucGxhY2Vob2xkZXIsXHJcbiAgICAgIHByZWZpeDogbGF5b3V0RGVmaW5pdGlvbi5wcmVmaXgsXHJcbiAgICAgIHN1ZmZpeDogbGF5b3V0RGVmaW5pdGlvbi5zdWZmaXgsXHJcbiAgICAgIGljb246IGxheW91dERlZmluaXRpb24uaWNvbixcclxuICAgICAgaWNvbkNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmljb25Db2xvcixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaGludDogbGF5b3V0RGVmaW5pdGlvbi5oaW50LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0Qm94KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfQk9YLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgcGxhY2Vob2xkZXI6IGxheW91dERlZmluaXRpb24ucGxhY2Vob2xkZXIsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgbWF4TGVuZ3RoOiBsYXlvdXREZWZpbml0aW9uLm1heExlbmd0aCxcclxuICAgICAgc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4OiBsYXlvdXREZWZpbml0aW9uLnNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgICB0ZXh0Qm94UHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ1RFWFRfQk9YX3Byb3BlcnRpZXMnXSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZVJpY2hUZXh0KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCBxdWlsbE1vZHVsZXM6IFF1aWxsTW9kdWxlcztcclxuICAgIGlmIChsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXMgJiYgbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzWydxdWlsbE1vZHVsZXMnXSkge1xyXG4gICAgICBxdWlsbE1vZHVsZXMgPSBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXNbJ3F1aWxsTW9kdWxlcyddIGFzIFF1aWxsTW9kdWxlcztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1aWxsTW9kdWxlcyA9IFNtYXJ0Zm9ybUxheW91dERlZmluaXRpb25TZXJ2aWNlLkRFRkFVTFRfUVVJTExfTU9EVUxFUztcclxuICAgIH1cclxuXHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5SSUNIX1RFWFQsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBwbGFjZWhvbGRlcjogbGF5b3V0RGVmaW5pdGlvbi5wbGFjZWhvbGRlcixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgcXVpbGxNb2R1bGVzLFxyXG4gICAgICBtYXhMZW5ndGg6IGxheW91dERlZmluaXRpb24ubWF4TGVuZ3RoLFxyXG4gICAgICBzaG93Q2hhcmFjdGVyTGltaXRTdWZmaXg6IGxheW91dERlZmluaXRpb24uc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVUb2dnbGUobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVE9HR0xFLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaGludDogbGF5b3V0RGVmaW5pdGlvbi5oaW50LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVSYWRpb0J1dHRvbihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5SQURJT19CVVRUT04sXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICB2YWx1ZUxpc3Q6IFtdLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBoaW50OiBsYXlvdXREZWZpbml0aW9uLmhpbnQsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgIH07XHJcblxyXG4gICAgaWYgKGxheW91dERlZmluaXRpb24udmFsdWVzKSB7XHJcbiAgICAgIHdpZGdldC52YWx1ZUxpc3QgPSBsYXlvdXREZWZpbml0aW9uLnZhbHVlcy5tYXAoKHZhbHVlOiBWYWx1ZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBrZXk6IHZhbHVlLmNvZGUhLFxyXG4gICAgICAgICAgbGFiZWw6IHZhbHVlLmRpc3BsYXlWYWx1ZSxcclxuICAgICAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSVRFTSxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZS5jb2RlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVDaGVja0JveChsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5DSEVDS19CT1gsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBoaW50OiBsYXlvdXREZWZpbml0aW9uLmhpbnQsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVDaGVja0JveDIobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuQ0hFQ0tfQk9YXzIsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICB2YWx1ZUxpc3Q6IFtdLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBoaW50OiBsYXlvdXREZWZpbml0aW9uLmhpbnQsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgIH07XHJcbiAgICBpZiAobGF5b3V0RGVmaW5pdGlvbi52YWx1ZXMpIHtcclxuICAgICAgd2lkZ2V0LnZhbHVlTGlzdCA9IGxheW91dERlZmluaXRpb24udmFsdWVzLm1hcCgodmFsdWU6IFZhbHVlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGtleTogdmFsdWUuY29kZSEsXHJcbiAgICAgICAgICBsYWJlbDogdmFsdWUuZGlzcGxheVZhbHVlLFxyXG4gICAgICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNLFxyXG4gICAgICAgICAgdmFsdWU6IGZhbHNlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVTZWxlY3QobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uLCBtb2RlbD86IGFueSk6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVCxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIHZhbHVlTGlzdDogW10sXHJcbiAgICAgIHNlbGVjdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5zZWxlY3Rpb24sXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAobGF5b3V0RGVmaW5pdGlvbi52YWx1ZXMpIHtcclxuICAgICAgd2lkZ2V0LnZhbHVlTGlzdCA9IGxheW91dERlZmluaXRpb24udmFsdWVzLm1hcCgodmFsdWU6IFZhbHVlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGtleTogdmFsdWUuY29kZSEsXHJcbiAgICAgICAgICBsYWJlbDogdmFsdWUuZGlzcGxheVZhbHVlLFxyXG4gICAgICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNLFxyXG4gICAgICAgICAgdmFsdWU6IHZhbHVlLmNvZGUsXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZVNlbGVjdE11bHRpcGxlKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVF9NVUxUSVBMRSxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIHZhbHVlTGlzdDogW10sXHJcbiAgICAgIHNlbGVjdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5zZWxlY3Rpb24sXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgfTtcclxuICAgIGlmIChsYXlvdXREZWZpbml0aW9uLnZhbHVlcykge1xyXG4gICAgICB3aWRnZXQudmFsdWVMaXN0ID0gbGF5b3V0RGVmaW5pdGlvbi52YWx1ZXMubWFwKCh2YWx1ZTogVmFsdWUpID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAga2V5OiB2YWx1ZS5jb2RlISxcclxuICAgICAgICAgIGxhYmVsOiB2YWx1ZS5kaXNwbGF5VmFsdWUsXHJcbiAgICAgICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLklURU0sXHJcbiAgICAgICAgICB2YWx1ZTogdmFsdWUuY29kZSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGF0ZVBpY2tlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5EQVRFX1BJQ0tFUixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgICBkYXRlRmllbGRQcm9wZXJ0aWVzOiBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXM/LlsnREFURV9QSUNLRVJfcHJvcGVydGllcyddLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGF0ZVRpbWVQaWNrZXIobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuREFURV9USU1FX1BJQ0tFUixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgICBkYXRlRmllbGRQcm9wZXJ0aWVzOiBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXM/LlsnREFURV9USU1FX1BJQ0tFUl9wcm9wZXJ0aWVzJ10sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVJbWFnZShsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JTUFHRSxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGltYWdlUHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ0lNQUdFX3Byb3BlcnRpZXMnXSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZVN2ZyhsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5TVkcsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGl2KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkRJVixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlQnV0dG9uKGNvbmZpZzogU21hcnRmb3JtTGF5b3V0Q3JlYXRlV2lkZ2V0Q29uZmlnKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHVpQWN0aW9uOiBhbnkgPSBjb25maWcudWlBY3Rpb25zPy5maW5kKFxyXG4gICAgICAodWlBY3Rpb246IGFueSkgPT4gdWlBY3Rpb24uY29kZSA9PT0gY29uZmlnLmxheW91dERlZmluaXRpb24/LmtleVxyXG4gICAgKTtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkJVVFRPTixcclxuICAgICAga2V5OiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8ua2V5ISxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogY29uZmlnLmxheW91dERlZmluaXRpb24/LmxhYmVsISxcclxuICAgICAgc2hvd0xhYmVsOiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogY29uZmlnLmxheW91dERlZmluaXRpb24/LmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgc3R5bGU6IGNvbmZpZy5sYXlvdXREZWZpbml0aW9uPy5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogY29uZmlnLmxheW91dERlZmluaXRpb24/LmxhYmVsU3R5bGUsXHJcbiAgICAgIGNhbGxiYWNrOiBjb25maWcuYnV0dG9uQ2FsbGJhY2shLFxyXG4gICAgICB1aUFjdGlvbixcclxuICAgICAgdWlBY3Rpb25EZXNjcmlwdG9yOiBjb25maWcudWlBY3Rpb25EZXNjcmlwdG9ycyEodWlBY3Rpb24pLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGl2aWRlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5ESVZJREVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZUZpbGVVcGxvYWRlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5GSUxFX1VQTE9BREVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB0b29sYmFySWQ6IGxheW91dERlZmluaXRpb24udG9vbGJhcklkLFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgZmlsZVVwbG9hZGVyUHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ0ZJTEVfVVBMT0FERVJfcHJvcGVydGllcyddLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZU11bHRpRmlsZVVwbG9hZGVyKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLk1VTFRJX0ZJTEVfVVBMT0FERVIsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHRvb2xiYXJJZDogbGF5b3V0RGVmaW5pdGlvbi50b29sYmFySWQsXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICBtdWx0aUZpbGVVcGxvYWRlclByb3BlcnRpZXM6IGxheW91dERlZmluaXRpb24ucHJvcGVydGllcz8uWydNVUxUSV9GSUxFX1VQTE9BREVSX3Byb3BlcnRpZXMnXSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVZb3V0dWJlUGxheWVyKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGNvbnN0IHsgbGluaywgc3RhcnRTZWNvbmRzLCBlbmRTZWNvbmRzIH0gPSB0aGlzLmV4dHJhY3RZb3V0dWJlUGxheWVyUHJvcHMobGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLllPVVRVQkVfUExBWUVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgaGludDogbGF5b3V0RGVmaW5pdGlvbi5oaW50LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICBsaW5rLFxyXG4gICAgICBzdGFydFNlY29uZHMsXHJcbiAgICAgIGVuZFNlY29uZHMsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBleHRyYWN0WW91dHViZVBsYXllclByb3BzKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IHtcclxuICAgIGxpbms6IHN0cmluZztcclxuICAgIHN0YXJ0U2Vjb25kczogbnVtYmVyO1xyXG4gICAgZW5kU2Vjb25kcz86IG51bWJlcjtcclxuICB9IHtcclxuICAgIGNvbnN0IHByb3BzID0gbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzO1xyXG4gICAgaWYgKCFwcm9wcykge1xyXG4gICAgICB0aGlzLmxvZ01pc3NpbmdQcm9wZXJ0eShsYXlvdXREZWZpbml0aW9uLCAncHJvcGVydGllcycpO1xyXG4gICAgICByZXR1cm4geyBsaW5rOiAnJywgc3RhcnRTZWNvbmRzOiAwIH07XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgbGluayA9IChwcm9wc1snbGluayddID8gKHByb3BzWydsaW5rJ10gYXMgU3RyaW5nKSA6ICcnKSBhcyBzdHJpbmc7XHJcbiAgICBpZiAoIWxpbmsgfHwgbGluay5sZW5ndGggPCAxKSB7XHJcbiAgICAgIHRoaXMubG9nTWlzc2luZ1Byb3BlcnR5KGxheW91dERlZmluaXRpb24sICdsaW5rJyk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc3RhcnRTZWNvbmRzID0gKHByb3BzWydzdGFydFNlY29uZHMnXSA/IChwcm9wc1snc3RhcnRTZWNvbmRzJ10gYXMgTnVtYmVyKSA6IDApIGFzIG51bWJlcjtcclxuICAgIGxldCBlbmRTZWNvbmRzOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgICBpZiAocHJvcHNbJ2VuZFNlY29uZHMnXSkge1xyXG4gICAgICBlbmRTZWNvbmRzID0gcHJvcHNbJ2VuZFNlY29uZHMnXSBhcyBOdW1iZXIgYXMgbnVtYmVyO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB7IGxpbmssIHN0YXJ0U2Vjb25kcywgZW5kU2Vjb25kcyB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2dNaXNzaW5nUHJvcGVydHkobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uLCBwcm9wOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgIGBQcm9wZXJ0eSA8JHtwcm9wfT4gbWlzc2luZyBmcm9tIGxheW91dCBkZWZpbml0aW9uOiAke0pTT04uc3RyaW5naWZ5KGxheW91dERlZmluaXRpb24pfWBcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
712
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRmb3JtLmxheW91dC1kZWZpbml0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1mb3JtL3NlcnZpY2VzL3NtYXJ0Zm9ybS5sYXlvdXQtZGVmaW5pdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLG1CQUFtQixFQUF5QixNQUFNLFFBQVEsQ0FBQzs7QUFrQjlGLE1BQU0sT0FBTyxnQ0FBZ0M7YUFDbkIsMEJBQXFCLEdBQWlCO1FBQzVELE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRTtnQkFDVCxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUM7Z0JBQ2pELENBQUMsWUFBWSxDQUFDO2dCQUNkLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzlCLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQ3pDLENBQUMsT0FBTyxDQUFDO2FBQ1Y7U0FDRjtLQUNGLEFBVjRDLENBVTNDO0lBQ0YsZ0JBQWUsQ0FBQztJQUVULE1BQU0sQ0FBQyxNQUF5QztRQUNyRCxJQUFJLE9BQU8sR0FBMkIsRUFBRSxDQUFDO1FBRXpDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsQ0FBQyxnQkFBdUMsRUFBRSxFQUFFO1lBQzVFLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7Z0JBQzdCLEdBQUcsTUFBTTtnQkFDVCxnQkFBZ0I7YUFDakIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxNQUFN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Z0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRCxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFFLEtBQUssQ0FBQyxjQUFjLENBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFXLENBQUM7UUFDL0YsSUFBSSxVQUFVLEdBQXVCLFNBQVMsQ0FBQztRQUMvQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO1lBQ3hCLFVBQVUsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFxQixDQUFDO1FBQ3ZELENBQUM7UUFFRCxPQUFPLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRU8sa0JBQWtCLENBQUMsZ0JBQXVDLEVBQUUsSUFBWTtRQUM5RSxPQUFPLENBQUMsS0FBSyxDQUNYLGFBQWEsSUFBSSxxQ0FBcUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQ3pGLENBQUM7SUFDSixDQUFDOytHQS90QlUsZ0NBQWdDO21IQUFoQyxnQ0FBZ0MsY0FGL0IsTUFBTTs7NEZBRVAsZ0NBQWdDO2tCQUg1QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uLCBTbWFydEZvcm1XaWRnZXRUeXBlLCBTbWFydFdpZGdldERlZmluaXRpb24gfSBmcm9tICcuLi9hcGknO1xyXG5pbXBvcnQgeyBTbWFydEZvcm1XaWRnZXQgfSBmcm9tICcuLi9zbWFydGZvcm0uZm9ybS1tb2RlbCc7XHJcbmltcG9ydCB7IFZhbHVlIH0gZnJvbSAnLi4vc21hcnRmb3JtLm1vZGVsJztcclxuaW1wb3J0IHsgUXVpbGxNb2R1bGVzIH0gZnJvbSAnbmd4LXF1aWxsJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRmb3JtTGF5b3V0Q3JlYXRlV2lkZ2V0Q29uZmlnIHtcclxuICBsYXlvdXREZWZpbml0aW9ucz86IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbltdO1xyXG4gIGxheW91dERlZmluaXRpb24/OiBTbWFydFdpZGdldERlZmluaXRpb247XHJcbiAgdXBsb2FkQ2FsbGJhY2s/OiAoa2V5OiBzdHJpbmcsIGZpbGVzOiBhbnlbXSkgPT4gdm9pZDtcclxuICBidXR0b25DYWxsYmFjaz86ICgodWlBY3Rpb246IGFueSkgPT4gdm9pZCkgfCAoKGtleTogc3RyaW5nKSA9PiB2b2lkKTtcclxuICB1aUFjdGlvbnM/OiBhbnlbXTtcclxuICB1aUFjdGlvbkRlc2NyaXB0b3JzPzogKHVpQWN0aW9uOiBhbnkpID0+IGFueTtcclxuICBtb2RlbD86IGFueTtcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0Zm9ybUxheW91dERlZmluaXRpb25TZXJ2aWNlIHtcclxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBERUZBVUxUX1FVSUxMX01PRFVMRVM6IFF1aWxsTW9kdWxlcyA9IHtcclxuICAgIHRvb2xiYXI6IHtcclxuICAgICAgY29udGFpbmVyOiBbXHJcbiAgICAgICAgWydib2xkJywgJ2l0YWxpYycsICd1bmRlcmxpbmUnLCAnc3RyaWtlJywgJ2xpbmsnXSxcclxuICAgICAgICBbJ2NvZGUtYmxvY2snXSxcclxuICAgICAgICBbeyBoZWFkZXI6IDEgfSwgeyBoZWFkZXI6IDIgfV0sXHJcbiAgICAgICAgW3sgbGlzdDogJ29yZGVyZWQnIH0sIHsgbGlzdDogJ2J1bGxldCcgfV0sXHJcbiAgICAgICAgWydjbGVhbiddLFxyXG4gICAgICBdLFxyXG4gICAgfSxcclxuICB9O1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgcHVibGljIHJlbmRlcihjb25maWc6IFNtYXJ0Zm9ybUxheW91dENyZWF0ZVdpZGdldENvbmZpZyk6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+W10ge1xyXG4gICAgbGV0IHdpZGdldHM6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+W10gPSBbXTtcclxuXHJcbiAgICBjb25maWcubGF5b3V0RGVmaW5pdGlvbnM/LmZvckVhY2goKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbikgPT4ge1xyXG4gICAgICBsZXQgd2lkZ2V0ID0gdGhpcy5jcmVhdGVXaWRnZXQoe1xyXG4gICAgICAgIC4uLmNvbmZpZyxcclxuICAgICAgICBsYXlvdXREZWZpbml0aW9uLFxyXG4gICAgICB9KTtcclxuICAgICAgaWYgKHdpZGdldCkge1xyXG4gICAgICAgIHdpZGdldHMucHVzaCh3aWRnZXQpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gd2lkZ2V0cztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlV2lkZ2V0KFxyXG4gICAgY29uZmlnOiBTbWFydGZvcm1MYXlvdXRDcmVhdGVXaWRnZXRDb25maWdcclxuICApOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB8IHVuZGVmaW5lZCB7XHJcbiAgICBzd2l0Y2ggKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uPy50eXBlKSB7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5DT05UQUlORVI6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQ29udGFpbmVyKGNvbmZpZywgY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuTEFCRUw6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlTGFiZWwoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRDpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVUZXh0RmllbGQoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9DSElQUzpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVUZXh0RmllbGRDaGlwcyhjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5URVhUX0ZJRUxEX05VTUJFUjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVUZXh0RmllbGROdW1iZXIoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9MT09LVVA6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlVGV4dEZpZWxkTG9va3VwKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfQk9YOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVRleHRCb3goY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuVE9HR0xFOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVRvZ2dsZShjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5SQURJT19CVVRUT046XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlUmFkaW9CdXR0b24oY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuQ0hFQ0tfQk9YOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUNoZWNrQm94KGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLkNIRUNLX0JPWF8yOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUNoZWNrQm94Mihjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5TRUxFQ1Q6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU2VsZWN0KGNvbmZpZy5sYXlvdXREZWZpbml0aW9uLCBjb25maWcubW9kZWwpO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuU0VMRUNUX01VTFRJUExFOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVNlbGVjdE11bHRpcGxlKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLkRBVEVfUElDS0VSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZURhdGVQaWNrZXIoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuREFURV9USU1FX1BJQ0tFUjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEYXRlVGltZVBpY2tlcihjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5JTUFHRTpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVJbWFnZShjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5TVkc6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU3ZnKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLkRJVjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEaXYoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuQlVUVE9OOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUJ1dHRvbihjb25maWcpO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuRElWSURFUjpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVEaXZpZGVyKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLlJJQ0hfVEVYVDpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVSaWNoVGV4dChjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5GSUxFX1VQTE9BREVSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUZpbGVVcGxvYWRlcihjb25maWcubGF5b3V0RGVmaW5pdGlvbik7XHJcbiAgICAgIGNhc2UgU21hcnRGb3JtV2lkZ2V0VHlwZS5NVUxUSV9GSUxFX1VQTE9BREVSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZU11bHRpRmlsZVVwbG9hZGVyKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLk1BVFJJWDpcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVNYXRyaXgoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuU09SVEFCTEU6XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlU29ydGFibGUoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgICBjYXNlIFNtYXJ0Rm9ybVdpZGdldFR5cGUuTU9OVEhfUElDS0VSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZU1vbnRoUGlja2VyKGNvbmZpZy5sYXlvdXREZWZpbml0aW9uKTtcclxuICAgICAgY2FzZSBTbWFydEZvcm1XaWRnZXRUeXBlLllPVVRVQkVfUExBWUVSOlxyXG4gICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVlvdXR1YmVQbGF5ZXIoY29uZmlnLmxheW91dERlZmluaXRpb24pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVNb250aFBpY2tlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5NT05USF9QSUNLRVIsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTWF0cml4KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLk1BVFJJWCxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGlzTXVsdGlwbGU6IGxheW91dERlZmluaXRpb24ubWF0cml4Py5tdWx0aVNlbGVjdCxcclxuICAgICAgdmFsdWU6IGxheW91dERlZmluaXRpb24ubWF0cml4LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlU29ydGFibGUobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKSB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuU09SVEFCTEUsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgICAgaWNvbjogbGF5b3V0RGVmaW5pdGlvbi5pY29uLFxyXG4gICAgICBzb3J0RGVmaW5pdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5zb3J0RGVmaW5pdGlvbiA/PyB7XHJcbiAgICAgICAga2V5OiAndXJpJyxcclxuICAgICAgICBkaXNwbGF5VmFsdWU6ICdkaXNwbGF5VmFsdWUnLFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUxhYmVsKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkxBQkVMLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgd2lkZ2V0RGVzY3JpcHRpb246IGxheW91dERlZmluaXRpb24ud2lkZ2V0RGVzY3JpcHRpb24sXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVDb250YWluZXIoXHJcbiAgICBjb25maWc6IFNtYXJ0Zm9ybUxheW91dENyZWF0ZVdpZGdldENvbmZpZyxcclxuICAgIGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvblxyXG4gICk6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB2YWx1ZUxpc3Q6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+W10gPSBbXTtcclxuXHJcbiAgICBsYXlvdXREZWZpbml0aW9uLmNoaWxkcmVuQ29tcG9uZW50cz8uZm9yRWFjaCgobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKSA9PiB7XHJcbiAgICAgIGxldCB3aWRnZXQgPSB0aGlzLmNyZWF0ZVdpZGdldCh7XHJcbiAgICAgICAgLi4uY29uZmlnLFxyXG4gICAgICAgIGxheW91dERlZmluaXRpb24sXHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAod2lkZ2V0KSB7XHJcbiAgICAgICAgdmFsdWVMaXN0LnB1c2god2lkZ2V0KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuQ09OVEFJTkVSLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGRpcmVjdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5kaXJlY3Rpb24gPz8gU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uLkNPTCxcclxuICAgICAgdmFsdWVMaXN0LFxyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0RmllbGQobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRCxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHBsYWNlaG9sZGVyOiBsYXlvdXREZWZpbml0aW9uLnBsYWNlaG9sZGVyLFxyXG4gICAgICBwcmVmaXg6IGxheW91dERlZmluaXRpb24ucHJlZml4LFxyXG4gICAgICBzdWZmaXg6IGxheW91dERlZmluaXRpb24uc3VmZml4LFxyXG4gICAgICBtYXNrOiBsYXlvdXREZWZpbml0aW9uLm1hc2ssXHJcbiAgICAgIGljb246IGxheW91dERlZmluaXRpb24uaWNvbixcclxuICAgICAgaWNvbkNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmljb25Db2xvcixcclxuICAgICAgaWNvblBvc2l0aW9uOiBsYXlvdXREZWZpbml0aW9uLmljb25Qb3NpdGlvbixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaXNQYXNzd29yZDogbGF5b3V0RGVmaW5pdGlvbi5pc1Bhc3N3b3JkLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBmaWx0ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZmlsdGVyRXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgbWF4TGVuZ3RoOiBsYXlvdXREZWZpbml0aW9uLm1heExlbmd0aCxcclxuICAgICAgc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4OiBsYXlvdXREZWZpbml0aW9uLnNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeCxcclxuICAgICAgdG9vbGJhcklkOiBsYXlvdXREZWZpbml0aW9uLnRvb2xiYXJJZCxcclxuICAgICAgaW5wdXRNb2RlOiBsYXlvdXREZWZpbml0aW9uLmlucHV0TW9kZSxcclxuICAgICAgdGV4dEZpZWxkUHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ1RFWFRfRklFTERfcHJvcGVydGllcyddLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlVGV4dEZpZWxkQ2hpcHMobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9DSElQUyxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHBsYWNlaG9sZGVyOiBsYXlvdXREZWZpbml0aW9uLnBsYWNlaG9sZGVyLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICB2YWx1ZUxpc3Q6IFtdLFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgaWYgKGxheW91dERlZmluaXRpb24udmFsdWVzKSB7XHJcbiAgICAgIHdpZGdldC52YWx1ZUxpc3QgPSBsYXlvdXREZWZpbml0aW9uLnZhbHVlcy5tYXAoKHZhbHVlOiBWYWx1ZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBrZXk6IHZhbHVlLmNvZGUhLFxyXG4gICAgICAgICAgbGFiZWw6IHZhbHVlLmRpc3BsYXlWYWx1ZSxcclxuICAgICAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSVRFTSxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZS5jb2RlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0RmllbGRMb29rdXAobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVEVYVF9GSUVMRF9MT09LVVAsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBwbGFjZWhvbGRlcjogbGF5b3V0RGVmaW5pdGlvbi5wbGFjZWhvbGRlcixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgdG9vbGJhcklkOiBsYXlvdXREZWZpbml0aW9uLnRvb2xiYXJJZCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlVGV4dEZpZWxkTnVtYmVyKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfRklFTERfTlVNQkVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgcGxhY2Vob2xkZXI6IGxheW91dERlZmluaXRpb24ucGxhY2Vob2xkZXIsXHJcbiAgICAgIHByZWZpeDogbGF5b3V0RGVmaW5pdGlvbi5wcmVmaXgsXHJcbiAgICAgIHN1ZmZpeDogbGF5b3V0RGVmaW5pdGlvbi5zdWZmaXgsXHJcbiAgICAgIGljb246IGxheW91dERlZmluaXRpb24uaWNvbixcclxuICAgICAgaWNvbkNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmljb25Db2xvcixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaGludDogbGF5b3V0RGVmaW5pdGlvbi5oaW50LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVUZXh0Qm94KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfQk9YLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgcGxhY2Vob2xkZXI6IGxheW91dERlZmluaXRpb24ucGxhY2Vob2xkZXIsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgbWF4TGVuZ3RoOiBsYXlvdXREZWZpbml0aW9uLm1heExlbmd0aCxcclxuICAgICAgc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4OiBsYXlvdXREZWZpbml0aW9uLnNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgICB0ZXh0Qm94UHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ1RFWFRfQk9YX3Byb3BlcnRpZXMnXSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZVJpY2hUZXh0KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCBxdWlsbE1vZHVsZXM6IFF1aWxsTW9kdWxlcztcclxuICAgIGlmIChsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXMgJiYgbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzWydxdWlsbE1vZHVsZXMnXSkge1xyXG4gICAgICBxdWlsbE1vZHVsZXMgPSBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXNbJ3F1aWxsTW9kdWxlcyddIGFzIFF1aWxsTW9kdWxlcztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHF1aWxsTW9kdWxlcyA9IFNtYXJ0Zm9ybUxheW91dERlZmluaXRpb25TZXJ2aWNlLkRFRkFVTFRfUVVJTExfTU9EVUxFUztcclxuICAgIH1cclxuXHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5SSUNIX1RFWFQsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBwbGFjZWhvbGRlcjogbGF5b3V0RGVmaW5pdGlvbi5wbGFjZWhvbGRlcixcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgcXVpbGxNb2R1bGVzLFxyXG4gICAgICBtYXhMZW5ndGg6IGxheW91dERlZmluaXRpb24ubWF4TGVuZ3RoLFxyXG4gICAgICBzaG93Q2hhcmFjdGVyTGltaXRTdWZmaXg6IGxheW91dERlZmluaXRpb24uc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVUb2dnbGUobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVE9HR0xFLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaGludDogbGF5b3V0RGVmaW5pdGlvbi5oaW50LFxyXG4gICAgICBzZXJ2ZXJFcnJvck1lc3NhZ2U6IGxheW91dERlZmluaXRpb24uZXJyb3JNZXNzYWdlLFxyXG4gICAgICBzZXJ2ZXJFcnJvckljb246IGxheW91dERlZmluaXRpb24uZXJyb3JJY29uLFxyXG4gICAgICBzZXJ2ZXJFcnJvckNvbG9yOiBsYXlvdXREZWZpbml0aW9uLmVycm9yQ29sb3IsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVSYWRpb0J1dHRvbihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5SQURJT19CVVRUT04sXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICB2YWx1ZUxpc3Q6IFtdLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBoaW50OiBsYXlvdXREZWZpbml0aW9uLmhpbnQsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgIH07XHJcblxyXG4gICAgaWYgKGxheW91dERlZmluaXRpb24udmFsdWVzKSB7XHJcbiAgICAgIHdpZGdldC52YWx1ZUxpc3QgPSBsYXlvdXREZWZpbml0aW9uLnZhbHVlcy5tYXAoKHZhbHVlOiBWYWx1ZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICBrZXk6IHZhbHVlLmNvZGUhLFxyXG4gICAgICAgICAgbGFiZWw6IHZhbHVlLmRpc3BsYXlWYWx1ZSxcclxuICAgICAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSVRFTSxcclxuICAgICAgICAgIHZhbHVlOiB2YWx1ZS5jb2RlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVDaGVja0JveChsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5DSEVDS19CT1gsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBoaW50OiBsYXlvdXREZWZpbml0aW9uLmhpbnQsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVDaGVja0JveDIobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuQ0hFQ0tfQk9YXzIsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgICB2YWx1ZUxpc3Q6IFtdLFxyXG4gICAgICBzZWxlY3Rpb246IGxheW91dERlZmluaXRpb24uc2VsZWN0aW9uLFxyXG4gICAgICBoaW50OiBsYXlvdXREZWZpbml0aW9uLmhpbnQsXHJcbiAgICAgIHNlcnZlckVycm9yTWVzc2FnZTogbGF5b3V0RGVmaW5pdGlvbi5lcnJvck1lc3NhZ2UsXHJcbiAgICAgIHNlcnZlckVycm9ySWNvbjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckljb24sXHJcbiAgICAgIHNlcnZlckVycm9yQ29sb3I6IGxheW91dERlZmluaXRpb24uZXJyb3JDb2xvcixcclxuICAgIH07XHJcbiAgICBpZiAobGF5b3V0RGVmaW5pdGlvbi52YWx1ZXMpIHtcclxuICAgICAgd2lkZ2V0LnZhbHVlTGlzdCA9IGxheW91dERlZmluaXRpb24udmFsdWVzLm1hcCgodmFsdWU6IFZhbHVlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGtleTogdmFsdWUuY29kZSEsXHJcbiAgICAgICAgICBsYWJlbDogdmFsdWUuZGlzcGxheVZhbHVlLFxyXG4gICAgICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNLFxyXG4gICAgICAgICAgdmFsdWU6IGZhbHNlLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVTZWxlY3QobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uLCBtb2RlbD86IGFueSk6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVCxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIHZhbHVlTGlzdDogW10sXHJcbiAgICAgIHNlbGVjdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5zZWxlY3Rpb24sXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAobGF5b3V0RGVmaW5pdGlvbi52YWx1ZXMpIHtcclxuICAgICAgd2lkZ2V0LnZhbHVlTGlzdCA9IGxheW91dERlZmluaXRpb24udmFsdWVzLm1hcCgodmFsdWU6IFZhbHVlKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGtleTogdmFsdWUuY29kZSEsXHJcbiAgICAgICAgICBsYWJlbDogdmFsdWUuZGlzcGxheVZhbHVlLFxyXG4gICAgICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNLFxyXG4gICAgICAgICAgdmFsdWU6IHZhbHVlLmNvZGUsXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZVNlbGVjdE11bHRpcGxlKGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVF9NVUxUSVBMRSxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIHZhbHVlTGlzdDogW10sXHJcbiAgICAgIHNlbGVjdGlvbjogbGF5b3V0RGVmaW5pdGlvbi5zZWxlY3Rpb24sXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgfTtcclxuICAgIGlmIChsYXlvdXREZWZpbml0aW9uLnZhbHVlcykge1xyXG4gICAgICB3aWRnZXQudmFsdWVMaXN0ID0gbGF5b3V0RGVmaW5pdGlvbi52YWx1ZXMubWFwKCh2YWx1ZTogVmFsdWUpID0+IHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAga2V5OiB2YWx1ZS5jb2RlISxcclxuICAgICAgICAgIGxhYmVsOiB2YWx1ZS5kaXNwbGF5VmFsdWUsXHJcbiAgICAgICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLklURU0sXHJcbiAgICAgICAgICB2YWx1ZTogdmFsdWUuY29kZSxcclxuICAgICAgICB9O1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGF0ZVBpY2tlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5EQVRFX1BJQ0tFUixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgICBkYXRlRmllbGRQcm9wZXJ0aWVzOiBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXM/LlsnREFURV9QSUNLRVJfcHJvcGVydGllcyddLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGF0ZVRpbWVQaWNrZXIobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuREFURV9USU1FX1BJQ0tFUixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgc2VydmVyRXJyb3JNZXNzYWdlOiBsYXlvdXREZWZpbml0aW9uLmVycm9yTWVzc2FnZSxcclxuICAgICAgc2VydmVyRXJyb3JJY29uOiBsYXlvdXREZWZpbml0aW9uLmVycm9ySWNvbixcclxuICAgICAgc2VydmVyRXJyb3JDb2xvcjogbGF5b3V0RGVmaW5pdGlvbi5lcnJvckNvbG9yLFxyXG4gICAgICBkYXRlRmllbGRQcm9wZXJ0aWVzOiBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXM/LlsnREFURV9USU1FX1BJQ0tFUl9wcm9wZXJ0aWVzJ10sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjcmVhdGVJbWFnZShsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JTUFHRSxcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGltYWdlUHJvcGVydGllczogbGF5b3V0RGVmaW5pdGlvbi5wcm9wZXJ0aWVzPy5bJ0lNQUdFX3Byb3BlcnRpZXMnXSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZVN2ZyhsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5TVkcsXHJcbiAgICAgIGtleTogbGF5b3V0RGVmaW5pdGlvbi5rZXksXHJcbiAgICAgIHZhbHVlQ2hhbmdlTW9kZTogbGF5b3V0RGVmaW5pdGlvbi52YWx1ZUNoYW5nZU1vZGUsXHJcbiAgICAgIGxhYmVsOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsLFxyXG4gICAgICBzaG93TGFiZWw6IGxheW91dERlZmluaXRpb24uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NDbGFzcyxcclxuICAgICAgY3NzTGFiZWxDbGFzczogbGF5b3V0RGVmaW5pdGlvbi5jc3NMYWJlbENsYXNzLFxyXG4gICAgICBsYWJlbFBvc2l0aW9uQ2xhc3M6IGxheW91dERlZmluaXRpb24ubGFiZWxQb3NpdGlvbkNsYXNzLFxyXG4gICAgICBpc0Zsb2F0TGFiZWw6IGxheW91dERlZmluaXRpb24uaXNGbG9hdExhYmVsLFxyXG4gICAgICBzdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFN0eWxlLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGl2KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbik6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+IHtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkRJVixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlQnV0dG9uKGNvbmZpZzogU21hcnRmb3JtTGF5b3V0Q3JlYXRlV2lkZ2V0Q29uZmlnKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHVpQWN0aW9uOiBhbnkgPSBjb25maWcudWlBY3Rpb25zPy5maW5kKFxyXG4gICAgICAodWlBY3Rpb246IGFueSkgPT4gdWlBY3Rpb24uY29kZSA9PT0gY29uZmlnLmxheW91dERlZmluaXRpb24/LmtleVxyXG4gICAgKTtcclxuICAgIGxldCB3aWRnZXQ6IFNtYXJ0Rm9ybVdpZGdldDxhbnk+ID0ge1xyXG4gICAgICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkJVVFRPTixcclxuICAgICAga2V5OiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8ua2V5ISxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogY29uZmlnLmxheW91dERlZmluaXRpb24/LmxhYmVsISxcclxuICAgICAgc2hvd0xhYmVsOiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8uc2hvd0xhYmVsLFxyXG4gICAgICBjc3NDbGFzczogY29uZmlnLmxheW91dERlZmluaXRpb24/LmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBjb25maWcubGF5b3V0RGVmaW5pdGlvbj8uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgc3R5bGU6IGNvbmZpZy5sYXlvdXREZWZpbml0aW9uPy5zdHlsZSxcclxuICAgICAgbGFiZWxTdHlsZTogY29uZmlnLmxheW91dERlZmluaXRpb24/LmxhYmVsU3R5bGUsXHJcbiAgICAgIGNhbGxiYWNrOiBjb25maWcuYnV0dG9uQ2FsbGJhY2shLFxyXG4gICAgICB1aUFjdGlvbixcclxuICAgICAgdWlBY3Rpb25EZXNjcmlwdG9yOiBjb25maWcudWlBY3Rpb25EZXNjcmlwdG9ycyEodWlBY3Rpb24pLFxyXG4gICAgfTtcclxuICAgIHJldHVybiB3aWRnZXQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgY3JlYXRlRGl2aWRlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5ESVZJREVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gd2lkZ2V0O1xyXG4gIH1cclxuICBwcml2YXRlIGNyZWF0ZUZpbGVVcGxvYWRlcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBsZXQgd2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55PiA9IHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5GSUxFX1VQTE9BREVSLFxyXG4gICAgICBrZXk6IGxheW91dERlZmluaXRpb24ua2V5LFxyXG4gICAgICB0b29sYmFySWQ6IGxheW91dERlZmluaXRpb24udG9vbGJhcklkLFxyXG4gICAgICB2YWx1ZUNoYW5nZU1vZGU6IGxheW91dERlZmluaXRpb24udmFsdWVDaGFuZ2VNb2RlLFxyXG4gICAgICBsYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbCxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgaGludDogbGF5b3V0RGVmaW5pdGlvbi5oaW50LFxyXG4gICAgICBmaWxlVXBsb2FkZXJQcm9wZXJ0aWVzOiBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXM/LlsnRklMRV9VUExPQURFUl9wcm9wZXJ0aWVzJ10sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTXVsdGlGaWxlVXBsb2FkZXIobGF5b3V0RGVmaW5pdGlvbjogU21hcnRXaWRnZXREZWZpbml0aW9uKTogU21hcnRGb3JtV2lkZ2V0PGFueT4ge1xyXG4gICAgbGV0IHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4gPSB7XHJcbiAgICAgIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuTVVMVElfRklMRV9VUExPQURFUixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgdG9vbGJhcklkOiBsYXlvdXREZWZpbml0aW9uLnRvb2xiYXJJZCxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIHNob3dMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5zaG93TGFiZWwsXHJcbiAgICAgIGNzc0NsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0NsYXNzLFxyXG4gICAgICBjc3NMYWJlbENsYXNzOiBsYXlvdXREZWZpbml0aW9uLmNzc0xhYmVsQ2xhc3MsXHJcbiAgICAgIGxhYmVsUG9zaXRpb25DbGFzczogbGF5b3V0RGVmaW5pdGlvbi5sYWJlbFBvc2l0aW9uQ2xhc3MsXHJcbiAgICAgIGlzRmxvYXRMYWJlbDogbGF5b3V0RGVmaW5pdGlvbi5pc0Zsb2F0TGFiZWwsXHJcbiAgICAgIHN0eWxlOiBsYXlvdXREZWZpbml0aW9uLnN0eWxlLFxyXG4gICAgICBsYWJlbFN0eWxlOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsU3R5bGUsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgbXVsdGlGaWxlVXBsb2FkZXJQcm9wZXJ0aWVzOiBsYXlvdXREZWZpbml0aW9uLnByb3BlcnRpZXM/LlsnTVVMVElfRklMRV9VUExPQURFUl9wcm9wZXJ0aWVzJ10sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIHdpZGdldDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlWW91dHViZVBsYXllcihsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiBTbWFydEZvcm1XaWRnZXQ8YW55PiB7XHJcbiAgICBjb25zdCB7IGxpbmssIHN0YXJ0U2Vjb25kcywgZW5kU2Vjb25kcyB9ID0gdGhpcy5leHRyYWN0WW91dHViZVBsYXllclByb3BzKGxheW91dERlZmluaXRpb24pO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5ZT1VUVUJFX1BMQVlFUixcclxuICAgICAga2V5OiBsYXlvdXREZWZpbml0aW9uLmtleSxcclxuICAgICAgbGFiZWw6IGxheW91dERlZmluaXRpb24ubGFiZWwsXHJcbiAgICAgIGhpbnQ6IGxheW91dERlZmluaXRpb24uaGludCxcclxuICAgICAgdmFsdWVDaGFuZ2VNb2RlOiBsYXlvdXREZWZpbml0aW9uLnZhbHVlQ2hhbmdlTW9kZSxcclxuICAgICAgc2hvd0xhYmVsOiBsYXlvdXREZWZpbml0aW9uLnNob3dMYWJlbCxcclxuICAgICAgY3NzQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzQ2xhc3MsXHJcbiAgICAgIGNzc0xhYmVsQ2xhc3M6IGxheW91dERlZmluaXRpb24uY3NzTGFiZWxDbGFzcyxcclxuICAgICAgbGFiZWxQb3NpdGlvbkNsYXNzOiBsYXlvdXREZWZpbml0aW9uLmxhYmVsUG9zaXRpb25DbGFzcyxcclxuICAgICAgaXNGbG9hdExhYmVsOiBsYXlvdXREZWZpbml0aW9uLmlzRmxvYXRMYWJlbCxcclxuICAgICAgc3R5bGU6IGxheW91dERlZmluaXRpb24uc3R5bGUsXHJcbiAgICAgIGxhYmVsU3R5bGU6IGxheW91dERlZmluaXRpb24ubGFiZWxTdHlsZSxcclxuICAgICAgbGluayxcclxuICAgICAgc3RhcnRTZWNvbmRzLFxyXG4gICAgICBlbmRTZWNvbmRzLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXh0cmFjdFlvdXR1YmVQbGF5ZXJQcm9wcyhsYXlvdXREZWZpbml0aW9uOiBTbWFydFdpZGdldERlZmluaXRpb24pOiB7XHJcbiAgICBsaW5rOiBzdHJpbmc7XHJcbiAgICBzdGFydFNlY29uZHM6IG51bWJlcjtcclxuICAgIGVuZFNlY29uZHM/OiBudW1iZXI7XHJcbiAgfSB7XHJcbiAgICBjb25zdCBwcm9wcyA9IGxheW91dERlZmluaXRpb24ucHJvcGVydGllcztcclxuICAgIGlmICghcHJvcHMpIHtcclxuICAgICAgdGhpcy5sb2dNaXNzaW5nUHJvcGVydHkobGF5b3V0RGVmaW5pdGlvbiwgJ3Byb3BlcnRpZXMnKTtcclxuICAgICAgcmV0dXJuIHsgbGluazogJycsIHN0YXJ0U2Vjb25kczogMCB9O1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGxpbmsgPSAocHJvcHNbJ2xpbmsnXSA/IChwcm9wc1snbGluayddIGFzIFN0cmluZykgOiAnJykgYXMgc3RyaW5nO1xyXG4gICAgaWYgKCFsaW5rIHx8IGxpbmsubGVuZ3RoIDwgMSkge1xyXG4gICAgICB0aGlzLmxvZ01pc3NpbmdQcm9wZXJ0eShsYXlvdXREZWZpbml0aW9uLCAnbGluaycpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHN0YXJ0U2Vjb25kcyA9IChwcm9wc1snc3RhcnRTZWNvbmRzJ10gPyAocHJvcHNbJ3N0YXJ0U2Vjb25kcyddIGFzIE51bWJlcikgOiAwKSBhcyBudW1iZXI7XHJcbiAgICBsZXQgZW5kU2Vjb25kczogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xyXG4gICAgaWYgKHByb3BzWydlbmRTZWNvbmRzJ10pIHtcclxuICAgICAgZW5kU2Vjb25kcyA9IHByb3BzWydlbmRTZWNvbmRzJ10gYXMgTnVtYmVyIGFzIG51bWJlcjtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4geyBsaW5rLCBzdGFydFNlY29uZHMsIGVuZFNlY29uZHMgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9nTWlzc2luZ1Byb3BlcnR5KGxheW91dERlZmluaXRpb246IFNtYXJ0V2lkZ2V0RGVmaW5pdGlvbiwgcHJvcDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmVycm9yKFxyXG4gICAgICBgUHJvcGVydHkgPCR7cHJvcH0+IG1pc3NpbmcgZnJvbSBsYXlvdXQgZGVmaW5pdGlvbjogJHtKU09OLnN0cmluZ2lmeShsYXlvdXREZWZpbml0aW9uKX1gXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRmb3JtLmZvcm0tbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1mb3JtL3NtYXJ0Zm9ybS5mb3JtLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWlsbE1vZHVsZXMgfSBmcm9tICduZ3gtcXVpbGwnO1xyXG5pbXBvcnQge1xyXG4gIERhdGVGaWVsZFByb3BlcnRpZXMsXHJcbiAgRmlsZVVwbG9hZGVyUHJvcGVydGllcyxcclxuICBNdWx0aUZpbGVVcGxvYWRlclByb3BlcnRpZXMsXHJcbiAgSW1hZ2VQcm9wZXJ0aWVzLFxyXG4gIFNlbGVjdGlvbkRlZmluaXRpb24sXHJcbiAgU21hcnRGb3JtSW5wdXRNb2RlLFxyXG4gIFNtYXJ0Rm9ybVdpZGdldERpcmVjdGlvbixcclxuICBTbWFydEZvcm1XaWRnZXRUeXBlLFxyXG4gIFNtYXJ0V2lkZ2V0SGludCxcclxuICBTb3J0RGVmaW5pdGlvbixcclxuICBUZXh0RmllbGRQcm9wZXJ0aWVzLFxyXG4gIFZhbHVlQ2hhbmdlTW9kZSxcclxuICBUZXh0Qm94UHJvcGVydGllcyxcclxufSBmcm9tICcuL2FwaSc7XHJcbmltcG9ydCB7XHJcbiAgU21hcnRGb3JtVGV4dEZpZWxkQnV0dG9uLFxyXG4gIFNtYXJ0Rm9ybVdpZGdldFdpZHRoLFxyXG4gIFNtYXJ0SW5kaWNhdG9yLFxyXG4gIFNtYXJ0VmFsaWRhdG9yLFxyXG4gIFRvZ2dsZUxhYmVsUG9zaXRpb24sXHJcbn0gZnJvbSAnLi9zbWFydGZvcm0ubW9kZWwnO1xyXG5pbXBvcnQgeyBJbWFnZVJlc291cmNlLCBTdHlsZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9hcGknO1xyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTbWFydEZvcm1XaWRnZXQ8VD4gPVxyXG4gIHwgU21hcnRUZXh0RmllbGQ8VD5cclxuICB8IFNtYXJ0VGV4dEZpZWxkTnVtYmVyPFQ+XHJcbiAgfCBTbWFydFRleHRGaWVsZENoaXBzPFQ+XHJcbiAgfCBTbWFydFRleHRGaWVsZExvb2t1cDxUPlxyXG4gIHwgU21hcnRUZXh0Qm94PFQ+XHJcbiAgfCBTbWFydFNlbGVjdDxUPlxyXG4gIHwgU21hcnRTZWxlY3RNdWx0aXBsZTxUPlxyXG4gIHwgU21hcnRDaGVja0JveDxUPlxyXG4gIHwgU21hcnRDaGVja0JveDI8VD5cclxuICB8IFNtYXJ0UmFkaW9CdXR0b248VD5cclxuICB8IFNtYXJ0RGF0ZVBpY2tlcjxUPlxyXG4gIHwgU21hcnREYXRlVGltZVBpY2tlcjxUPlxyXG4gIHwgU21hcnRDb250YWluZXI8VD5cclxuICB8IFNtYXJ0TGFiZWxcclxuICB8IFNtYXJ0VGltZTxUPlxyXG4gIHwgU21hcnRUb2dnbGU8VD5cclxuICB8IFNtYXJ0SW5kaWNhdG9ySXRlbVxyXG4gIHwgU21hcnRGaWxlVXBsb2FkZXJcclxuICB8IFNtYXJ0TXVsdGlGaWxlVXBsb2FkZXJcclxuICB8IFNtYXJ0SW1hZ2VcclxuICB8IFNtYXJ0RGl2aWRlclxyXG4gIHwgU21hcnRCdXR0b25cclxuICB8IFNtYXJ0Rm9ybUlubGluZUNvbXBvbmVudFxyXG4gIHwgU21hcnRSaWNoVGV4dFxyXG4gIHwgU21hcnRTb3J0YWJsZTxUPlxyXG4gIHwgU21hcnRNYXRyaXhcclxuICB8IFNtYXJ0WW91dHViZVBsYXllclxyXG4gIHwgU21hcnRNb250aFBpY2tlclxyXG4gIHwgU21hcnRTdmdcclxuICB8IFNtYXJ0RGl2O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRleHRGaWVsZDxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5URVhUX0ZJRUxEO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyIHwgbnVtYmVyO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHByZWZpeD86IHN0cmluZztcclxuICBzdWZmaXg/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Bhc3N3b3JkPzogYm9vbGVhbjtcclxuICB0ZXh0RmllbGRCdXR0b24/OiBTbWFydEZvcm1UZXh0RmllbGRCdXR0b247XHJcbiAgY2Fwc0xvY2tXYXJuaW5nPzogc3RyaW5nO1xyXG4gIGNhcHNMb2NrV2FybmluZ0ljb24/OiBzdHJpbmc7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBtYXNrPzogc3RyaW5nO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgaWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIGljb25Qb3NpdGlvbj86ICdQUkUnIHwgJ1BPU1QnO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0PzogU21hcnRJdGVtPFQ+W107XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBmaWx0ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxuICBtYXhMZW5ndGg/OiBudW1iZXI7XHJcbiAgc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4PzogYm9vbGVhbjtcclxuICB0b29sYmFySWQ/OiBzdHJpbmc7XHJcbiAgaW5wdXRNb2RlPzogU21hcnRGb3JtSW5wdXRNb2RlO1xyXG4gIHRleHRGaWVsZFByb3BlcnRpZXM/OiBUZXh0RmllbGRQcm9wZXJ0aWVzO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VGV4dEZpZWxkTnVtYmVyPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfRklFTERfTlVNQkVSO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyIHwgbnVtYmVyO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHByZWZpeD86IHN0cmluZztcclxuICBzdWZmaXg/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICB0ZXh0RmllbGRCdXR0b24/OiBTbWFydEZvcm1UZXh0RmllbGRCdXR0b247XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBtaW5WYWx1ZXM/OiBudW1iZXI7XHJcbiAgbWF4VmFsdWVzPzogbnVtYmVyO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgaWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRleHRGaWVsZENoaXBzPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfRklFTERfQ0hJUFM7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIHZhbHVlPzogVDtcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBvcmlnaW5hbFBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW08VD5bXTtcclxuICBtaW5WYWx1ZXM/OiBudW1iZXI7XHJcbiAgbWF4VmFsdWVzPzogbnVtYmVyO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRleHRGaWVsZExvb2t1cDxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5URVhUX0ZJRUxEX0xPT0tVUDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG9yaWdpbmFsUGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICBtaW5WYWx1ZXM/OiBudW1iZXI7XHJcbiAgbWF4VmFsdWVzPzogbnVtYmVyO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgdG9vbGJhcklkPzogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRUZXh0Qm94PFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfQk9YO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xyXG4gIHNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeD86IGJvb2xlYW47XHJcbiAgdGV4dEJveFByb3BlcnRpZXM/OiBUZXh0Qm94UHJvcGVydGllcztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0U2VsZWN0PFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW1zPFQ+W107XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG4gIGNvbXBhcmVXaXRoPzogKG8xOiBhbnksIG8yOiBhbnkpID0+IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFNlbGVjdE11bHRpcGxlPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVF9NVUxUSVBMRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW1zPFQ+W107XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG4gIGNvbXBhcmVXaXRoPzogKG8xOiBhbnksIG8yOiBhbnkpID0+IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydENoZWNrQm94PFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNIRUNLX0JPWDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBkaXJlY3Rpb24/OiBTbWFydEZvcm1XaWRnZXREaXJlY3Rpb247XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0Q2hlY2tCb3gyPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNIRUNLX0JPWF8yO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICB2YWx1ZUxpc3Q6IFNtYXJ0SXRlbTxUPltdO1xyXG4gIHNlbGVjdGlvbj86IFNlbGVjdGlvbkRlZmluaXRpb247XHJcbiAgZGlyZWN0aW9uPzogU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFJhZGlvQnV0dG9uPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlJBRElPX0JVVFRPTjtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW08VD5bXTtcclxuICBzZWxlY3Rpb24/OiBTZWxlY3Rpb25EZWZpbml0aW9uO1xyXG4gIGRpcmVjdGlvbj86IFNtYXJ0Rm9ybVdpZGdldERpcmVjdGlvbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnREYXRlUGlja2VyPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkRBVEVfUElDS0VSO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICBkYXRlRm9ybWF0SGludD86IHN0cmluZztcclxuICBkYXRlRmllbGRQcm9wZXJ0aWVzPzogRGF0ZUZpZWxkUHJvcGVydGllcztcclxuICBmaWx0ZXI/OiAoZDogRGF0ZSB8IG51bGwpID0+IGJvb2xlYW47XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0RGF0ZVRpbWVQaWNrZXI8VD4ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuREFURV9USU1FX1BJQ0tFUjtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgZGF0ZUZvcm1hdEhpbnQ/OiBzdHJpbmc7XHJcbiAgZGF0ZUZpZWxkUHJvcGVydGllcz86IERhdGVGaWVsZFByb3BlcnRpZXM7XHJcbiAgZmlsdGVyPzogKGQ6IERhdGUgfCBudWxsKSA9PiBib29sZWFuO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydENvbnRhaW5lcjxUPiB7XHJcbiAga2V5Pzogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNPTlRBSU5FUjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIHZhbHVlTGlzdDogU21hcnRGb3JtV2lkZ2V0PFQ+W107XHJcbiAgZGlyZWN0aW9uPzogU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydExhYmVsIHtcclxuICBrZXk/OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuTEFCRUw7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgd2lkZ2V0RGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBtYXJrQXNSZXF1aXJlZD86IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRpbWU8VD4ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVElNRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VG9nZ2xlPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRPR0dMRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB0b2dnbGVMYWJlbFBvc2l0aW9uPzogVG9nZ2xlTGFiZWxQb3NpdGlvbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydEluZGljYXRvckl0ZW0ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSU5ESUNBVE9SO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpbmRpY2F0b3I6IFNtYXJ0SW5kaWNhdG9yO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTbWFydEl0ZW1zPFQ+ID0gU21hcnRJdGVtPFQ+IHwgU21hcnRJdGVtR3JvdXA8VD47XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0SXRlbTxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICB2YWx1ZT86IFQ7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBpY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgaW1hZ2VVcmw/OiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydEl0ZW1Hcm91cDxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNX0dST1VQO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICB2YWx1ZUxpc3Q6IFNtYXJ0SXRlbTxUPltdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0RmlsZVVwbG9hZGVyIHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkZJTEVfVVBMT0FERVI7XHJcbiAgdmFsdWU/OiBhbnk7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBmaWxlRm9ybWF0cz86IHN0cmluZ1tdO1xyXG4gIG1heFNpemVNYj86IG51bWJlcjtcclxuICBpMThuPzogYW55O1xyXG4gIGZpbGVVcGxvYWRlclByb3BlcnRpZXM/OiBGaWxlVXBsb2FkZXJQcm9wZXJ0aWVzO1xyXG4gIHRvb2xiYXJJZD86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydE11bHRpRmlsZVVwbG9hZGVyIHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLk1VTFRJX0ZJTEVfVVBMT0FERVI7XHJcbiAgdmFsdWU/OiBhbnk7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBmaWxlRm9ybWF0cz86IHN0cmluZ1tdO1xyXG4gIG1heFNpemVNYj86IG51bWJlcjtcclxuICBpMThuPzogYW55O1xyXG4gIG11bHRpRmlsZVVwbG9hZGVyUHJvcGVydGllcz86IE11bHRpRmlsZVVwbG9hZGVyUHJvcGVydGllcztcclxuICB0b29sYmFySWQ/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRJbWFnZSB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JTUFHRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIHZhbHVlPzogSW1hZ2VSZXNvdXJjZTtcclxuICBpbWFnZUNzcz86IHN0cmluZztcclxuICBpbWFnZVByb3BlcnRpZXM/OiBJbWFnZVByb3BlcnRpZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnREaXZpZGVyIHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkRJVklERVI7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICB2YWx1ZT86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydEJ1dHRvbiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5CVVRUT047XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICB2YWx1ZT86IHN0cmluZztcclxuICB1aUFjdGlvbj86IGFueTtcclxuICB1aUFjdGlvbkRlc2NyaXB0b3I6IGFueTtcclxuICBjYWxsYmFjazogKCh1aUFjdGlvbjogYW55KSA9PiB2b2lkKSB8ICgoa2V5OiBzdHJpbmcpID0+IHZvaWQpO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRGb3JtSW5saW5lQ29tcG9uZW50IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNPTVBPTkVOVDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGNvbXBvbmVudDogYW55O1xyXG4gIGlucHV0OiBNYXA8c3RyaW5nLCBhbnk+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0UmljaFRleHQge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuUklDSF9URVhUO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIHZhbHVlPzogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBxdWlsbE1vZHVsZXM6IFF1aWxsTW9kdWxlcztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xyXG4gIHNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRTb3J0YWJsZTxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5TT1JUQUJMRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICB2YWx1ZT86IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgdmFsdWVMaXN0PzogU21hcnRJdGVtPFQ+W107XHJcbiAgaXNNdWx0aXBsZT86IGJvb2xlYW47XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIHNvcnREZWZpbml0aW9uOiBTb3J0RGVmaW5pdGlvbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydE1hdHJpeCB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5NQVRSSVg7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgdmFsdWU/OiBhbnk7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIGlzTXVsdGlwbGU/OiBib29sZWFuO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgYnV0dG9uPzogU21hcnRNYXRyaXhCdXR0b247XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRNYXRyaXhCdXR0b24ge1xyXG4gIGljb25Db2RlPzogc3RyaW5nO1xyXG4gIGNhbGxiYWNrOiAod2lkZ2V0OiBTbWFydEZvcm1XaWRnZXQ8YW55Piwgcm93OiBhbnkpID0+IGFueTtcclxuICBjb2xvcj86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFlvdXR1YmVQbGF5ZXIge1xyXG4gIGtleT86IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5ZT1VUVUJFX1BMQVlFUjtcclxuICBsaW5rPzogc3RyaW5nO1xyXG4gIHZpZGVvSWQ/OiBzdHJpbmc7XHJcbiAgaGVpZ2h0PzogbnVtYmVyO1xyXG4gIHdpZHRoPzogbnVtYmVyO1xyXG4gIHN0YXJ0U2Vjb25kcz86IG51bWJlciB8IDA7XHJcbiAgZW5kU2Vjb25kcz86IG51bWJlcjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgbGFiZWw/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0TW9udGhQaWNrZXIge1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLk1PTlRIX1BJQ0tFUjtcclxuICB2YWx1ZT86IHN0cmluZztcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRTdmcge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuU1ZHO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgdmFsdWU/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0RGl2IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkRJVjtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIHZhbHVlPzogc3RyaW5nO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbn1cclxuIl19
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRmb3JtLmZvcm0tbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi9zbWFydC1mb3JtL3NtYXJ0Zm9ybS5mb3JtLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWlsbE1vZHVsZXMgfSBmcm9tICduZ3gtcXVpbGwnO1xyXG5pbXBvcnQge1xyXG4gIERhdGVGaWVsZFByb3BlcnRpZXMsXHJcbiAgRmlsZVVwbG9hZGVyUHJvcGVydGllcyxcclxuICBNdWx0aUZpbGVVcGxvYWRlclByb3BlcnRpZXMsXHJcbiAgSW1hZ2VQcm9wZXJ0aWVzLFxyXG4gIFNlbGVjdGlvbkRlZmluaXRpb24sXHJcbiAgU21hcnRGb3JtSW5wdXRNb2RlLFxyXG4gIFNtYXJ0Rm9ybVdpZGdldERpcmVjdGlvbixcclxuICBTbWFydEZvcm1XaWRnZXRUeXBlLFxyXG4gIFNtYXJ0V2lkZ2V0SGludCxcclxuICBTb3J0RGVmaW5pdGlvbixcclxuICBUZXh0RmllbGRQcm9wZXJ0aWVzLFxyXG4gIFZhbHVlQ2hhbmdlTW9kZSxcclxuICBUZXh0Qm94UHJvcGVydGllcyxcclxufSBmcm9tICcuL2FwaSc7XHJcbmltcG9ydCB7XHJcbiAgU21hcnRGb3JtVGV4dEZpZWxkQnV0dG9uLFxyXG4gIFNtYXJ0Rm9ybVdpZGdldFdpZHRoLFxyXG4gIFNtYXJ0SW5kaWNhdG9yLFxyXG4gIFNtYXJ0VmFsaWRhdG9yLFxyXG4gIFRvZ2dsZUxhYmVsUG9zaXRpb24sXHJcbn0gZnJvbSAnLi9zbWFydGZvcm0ubW9kZWwnO1xyXG5pbXBvcnQgeyBJbWFnZVJlc291cmNlLCBTdHlsZSB9IGZyb20gJy4uL3ZpZXctY29udGV4dC9hcGknO1xyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTbWFydEZvcm1XaWRnZXQ8VD4gPVxyXG4gIHwgU21hcnRUZXh0RmllbGQ8VD5cclxuICB8IFNtYXJ0VGV4dEZpZWxkTnVtYmVyPFQ+XHJcbiAgfCBTbWFydFRleHRGaWVsZENoaXBzPFQ+XHJcbiAgfCBTbWFydFRleHRGaWVsZExvb2t1cDxUPlxyXG4gIHwgU21hcnRUZXh0Qm94PFQ+XHJcbiAgfCBTbWFydFNlbGVjdDxUPlxyXG4gIHwgU21hcnRTZWxlY3RNdWx0aXBsZTxUPlxyXG4gIHwgU21hcnRDaGVja0JveDxUPlxyXG4gIHwgU21hcnRDaGVja0JveDI8VD5cclxuICB8IFNtYXJ0UmFkaW9CdXR0b248VD5cclxuICB8IFNtYXJ0RGF0ZVBpY2tlcjxUPlxyXG4gIHwgU21hcnREYXRlVGltZVBpY2tlcjxUPlxyXG4gIHwgU21hcnRDb250YWluZXI8VD5cclxuICB8IFNtYXJ0TGFiZWxcclxuICB8IFNtYXJ0VGltZTxUPlxyXG4gIHwgU21hcnRUb2dnbGU8VD5cclxuICB8IFNtYXJ0SW5kaWNhdG9ySXRlbVxyXG4gIHwgU21hcnRGaWxlVXBsb2FkZXJcclxuICB8IFNtYXJ0TXVsdGlGaWxlVXBsb2FkZXJcclxuICB8IFNtYXJ0SW1hZ2VcclxuICB8IFNtYXJ0RGl2aWRlclxyXG4gIHwgU21hcnRCdXR0b25cclxuICB8IFNtYXJ0Rm9ybUlubGluZUNvbXBvbmVudFxyXG4gIHwgU21hcnRSaWNoVGV4dFxyXG4gIHwgU21hcnRTb3J0YWJsZTxUPlxyXG4gIHwgU21hcnRNYXRyaXhcclxuICB8IFNtYXJ0WW91dHViZVBsYXllclxyXG4gIHwgU21hcnRNb250aFBpY2tlclxyXG4gIHwgU21hcnRTdmdcclxuICB8IFNtYXJ0RGl2O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRleHRGaWVsZDxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5URVhUX0ZJRUxEO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyIHwgbnVtYmVyO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHByZWZpeD86IHN0cmluZztcclxuICBzdWZmaXg/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Bhc3N3b3JkPzogYm9vbGVhbjtcclxuICB0ZXh0RmllbGRCdXR0b24/OiBTbWFydEZvcm1UZXh0RmllbGRCdXR0b247XHJcbiAgY2Fwc0xvY2tXYXJuaW5nPzogc3RyaW5nO1xyXG4gIGNhcHNMb2NrV2FybmluZ0ljb24/OiBzdHJpbmc7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBtYXNrPzogc3RyaW5nO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgaWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIGljb25Qb3NpdGlvbj86ICdQUkUnIHwgJ1BPU1QnO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0PzogU21hcnRJdGVtPFQ+W107XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBmaWx0ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxuICBtYXhMZW5ndGg/OiBudW1iZXI7XHJcbiAgc2hvd0NoYXJhY3RlckxpbWl0U3VmZml4PzogYm9vbGVhbjtcclxuICB0b29sYmFySWQ/OiBzdHJpbmc7XHJcbiAgaW5wdXRNb2RlPzogU21hcnRGb3JtSW5wdXRNb2RlO1xyXG4gIHRleHRGaWVsZFByb3BlcnRpZXM/OiBUZXh0RmllbGRQcm9wZXJ0aWVzO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VGV4dEZpZWxkTnVtYmVyPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfRklFTERfTlVNQkVSO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyIHwgbnVtYmVyO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHByZWZpeD86IHN0cmluZztcclxuICBzdWZmaXg/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICB0ZXh0RmllbGRCdXR0b24/OiBTbWFydEZvcm1UZXh0RmllbGRCdXR0b247XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBtaW5WYWx1ZXM/OiBudW1iZXI7XHJcbiAgbWF4VmFsdWVzPzogbnVtYmVyO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgaWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRleHRGaWVsZENoaXBzPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfRklFTERfQ0hJUFM7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIHZhbHVlPzogVDtcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBvcmlnaW5hbFBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW08VD5bXTtcclxuICBtaW5WYWx1ZXM/OiBudW1iZXI7XHJcbiAgbWF4VmFsdWVzPzogbnVtYmVyO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRleHRGaWVsZExvb2t1cDxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5URVhUX0ZJRUxEX0xPT0tVUDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG9yaWdpbmFsUGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICBtaW5WYWx1ZXM/OiBudW1iZXI7XHJcbiAgbWF4VmFsdWVzPzogbnVtYmVyO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgdG9vbGJhcklkPzogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRUZXh0Qm94PFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRFWFRfQk9YO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxQbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xyXG4gIHNob3dDaGFyYWN0ZXJMaW1pdFN1ZmZpeD86IGJvb2xlYW47XHJcbiAgdGV4dEJveFByb3BlcnRpZXM/OiBUZXh0Qm94UHJvcGVydGllcztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0U2VsZWN0PFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW1zPFQ+W107XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG4gIGNvbXBhcmVXaXRoPzogKG8xOiBhbnksIG8yOiBhbnkpID0+IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFNlbGVjdE11bHRpcGxlPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNFTEVDVF9NVUxUSVBMRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW1zPFQ+W107XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG4gIGNvbXBhcmVXaXRoPzogKG8xOiBhbnksIG8yOiBhbnkpID0+IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydENoZWNrQm94PFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNIRUNLX0JPWDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VsZWN0aW9uPzogU2VsZWN0aW9uRGVmaW5pdGlvbjtcclxuICBkaXJlY3Rpb24/OiBTbWFydEZvcm1XaWRnZXREaXJlY3Rpb247XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0Q2hlY2tCb3gyPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNIRUNLX0JPWF8yO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICB2YWx1ZUxpc3Q6IFNtYXJ0SXRlbTxUPltdO1xyXG4gIHNlbGVjdGlvbj86IFNlbGVjdGlvbkRlZmluaXRpb247XHJcbiAgZGlyZWN0aW9uPzogU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFJhZGlvQnV0dG9uPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlJBRElPX0JVVFRPTjtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgdmFsdWVMaXN0OiBTbWFydEl0ZW08VD5bXTtcclxuICBzZWxlY3Rpb24/OiBTZWxlY3Rpb25EZWZpbml0aW9uO1xyXG4gIGRpcmVjdGlvbj86IFNtYXJ0Rm9ybVdpZGdldERpcmVjdGlvbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnREYXRlUGlja2VyPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkRBVEVfUElDS0VSO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICB2YWx1ZT86IFQ7XHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICBkYXRlRm9ybWF0SGludD86IHN0cmluZztcclxuICBkYXRlRmllbGRQcm9wZXJ0aWVzPzogRGF0ZUZpZWxkUHJvcGVydGllcztcclxuICBmaWx0ZXI/OiAoZDogRGF0ZSB8IG51bGwpID0+IGJvb2xlYW47XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0RGF0ZVRpbWVQaWNrZXI8VD4ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuREFURV9USU1FX1BJQ0tFUjtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgZGF0ZUZvcm1hdEhpbnQ/OiBzdHJpbmc7XHJcbiAgZGF0ZUZpZWxkUHJvcGVydGllcz86IERhdGVGaWVsZFByb3BlcnRpZXM7XHJcbiAgZmlsdGVyPzogKGQ6IERhdGUgfCBudWxsKSA9PiBib29sZWFuO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydENvbnRhaW5lcjxUPiB7XHJcbiAga2V5Pzogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkNPTlRBSU5FUjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIHZhbHVlTGlzdDogU21hcnRGb3JtV2lkZ2V0PFQ+W107XHJcbiAgZGlyZWN0aW9uPzogU21hcnRGb3JtV2lkZ2V0RGlyZWN0aW9uO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydExhYmVsIHtcclxuICBrZXk/OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuTEFCRUw7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgd2lkZ2V0RGVzY3JpcHRpb24/OiBzdHJpbmc7XHJcbiAgbWluV2lkdGg/OiBTbWFydEZvcm1XaWRnZXRXaWR0aCB8IG51bWJlcjtcclxuICBtYXJrQXNSZXF1aXJlZD86IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFRpbWU8VD4ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuVElNRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIGlzUmVhZG9ubHk/OiBib29sZWFuO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0VG9nZ2xlPFQ+IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlRPR0dMRTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgdmFsdWU/OiBUO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICB0b2dnbGVMYWJlbFBvc2l0aW9uPzogVG9nZ2xlTGFiZWxQb3NpdGlvbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydEluZGljYXRvckl0ZW0ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSU5ESUNBVE9SO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpbmRpY2F0b3I6IFNtYXJ0SW5kaWNhdG9yO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTbWFydEl0ZW1zPFQ+ID0gU21hcnRJdGVtPFQ+IHwgU21hcnRJdGVtR3JvdXA8VD47XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0SXRlbTxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICB2YWx1ZT86IFQ7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBpY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgaW1hZ2VVcmw/OiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydEl0ZW1Hcm91cDxUPiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5JVEVNX0dST1VQO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICB2YWx1ZUxpc3Q6IFNtYXJ0SXRlbTxUPltdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0RmlsZVVwbG9hZGVyIHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLkZJTEVfVVBMT0FERVI7XHJcbiAgdmFsdWU/OiBhbnk7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBmaWxlRm9ybWF0cz86IHN0cmluZ1tdO1xyXG4gIG1heFNpemVNYj86IG51bWJlcjtcclxuICBpMThuPzogYW55O1xyXG4gIGZpbGVVcGxvYWRlclByb3BlcnRpZXM/OiBGaWxlVXBsb2FkZXJQcm9wZXJ0aWVzO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgdG9vbGJhcklkPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0TXVsdGlGaWxlVXBsb2FkZXIge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuTVVMVElfRklMRV9VUExPQURFUjtcclxuICB2YWx1ZT86IGFueTtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIGZpbGVGb3JtYXRzPzogc3RyaW5nW107XHJcbiAgbWF4U2l6ZU1iPzogbnVtYmVyO1xyXG4gIGkxOG4/OiBhbnk7XHJcbiAgbXVsdGlGaWxlVXBsb2FkZXJQcm9wZXJ0aWVzPzogTXVsdGlGaWxlVXBsb2FkZXJQcm9wZXJ0aWVzO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgdG9vbGJhcklkPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0SW1hZ2Uge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuSU1BR0U7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICB2YWx1ZT86IEltYWdlUmVzb3VyY2U7XHJcbiAgaW1hZ2VDc3M/OiBzdHJpbmc7XHJcbiAgaW1hZ2VQcm9wZXJ0aWVzPzogSW1hZ2VQcm9wZXJ0aWVzO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0RGl2aWRlciB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5ESVZJREVSO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgdmFsdWU/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRCdXR0b24ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuQlVUVE9OO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgdmFsdWU/OiBzdHJpbmc7XHJcbiAgdWlBY3Rpb24/OiBhbnk7XHJcbiAgdWlBY3Rpb25EZXNjcmlwdG9yOiBhbnk7XHJcbiAgY2FsbGJhY2s6ICgodWlBY3Rpb246IGFueSkgPT4gdm9pZCkgfCAoKGtleTogc3RyaW5nKSA9PiB2b2lkKTtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0Rm9ybUlubGluZUNvbXBvbmVudCB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5DT01QT05FTlQ7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBjb21wb25lbnQ6IGFueTtcclxuICBpbnB1dDogTWFwPHN0cmluZywgYW55PjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydFJpY2hUZXh0IHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlJJQ0hfVEVYVDtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICB2YWx1ZT86IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIG9yaWdpbmFsUGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcbiAgcXVpbGxNb2R1bGVzOiBRdWlsbE1vZHVsZXM7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG4gIG1heExlbmd0aD86IG51bWJlcjtcclxuICBzaG93Q2hhcmFjdGVyTGltaXRTdWZmaXg/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0U29ydGFibGU8VD4ge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuU09SVEFCTEU7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgdmFsdWU/OiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcclxuICBpc1JlYWRvbmx5PzogYm9vbGVhbjtcclxuICBlcnJvcj86IHN0cmluZztcclxuICBlcnJvckljb24/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uQ29sb3I/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9ySWNvbj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckNvbG9yPzogc3RyaW5nO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIHZhbHVlTGlzdD86IFNtYXJ0SXRlbTxUPltdO1xyXG4gIGlzTXVsdGlwbGU/OiBib29sZWFuO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBzb3J0RGVmaW5pdGlvbjogU29ydERlZmluaXRpb247XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRNYXRyaXgge1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuTUFUUklYO1xyXG4gIGtleTogc3RyaW5nO1xyXG4gIHZhbHVlQ2hhbmdlTW9kZT86IFZhbHVlQ2hhbmdlTW9kZTtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIHZhbHVlPzogYW55O1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xyXG4gIGNzc0xhYmVsQ2xhc3M/OiBzdHJpbmc7XHJcbiAgbGFiZWxQb3NpdGlvbkNsYXNzPzogc3RyaW5nO1xyXG4gIGlzRmxvYXRMYWJlbD86IGJvb2xlYW47XHJcbiAgc3R5bGU/OiBTdHlsZTtcclxuICBsYWJlbFN0eWxlPzogU3R5bGU7XHJcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgaXNSZWFkb25seT86IGJvb2xlYW47XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbiAgZXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbkNvbG9yPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yTWVzc2FnZT86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvckljb24/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JDb2xvcj86IHN0cmluZztcclxuICB2YWxpZGF0b3JzPzogU21hcnRWYWxpZGF0b3JbXTtcclxuICBpc011bHRpcGxlPzogYm9vbGVhbjtcclxuICBoaW50PzogU21hcnRXaWRnZXRIaW50O1xyXG4gIGJ1dHRvbj86IFNtYXJ0TWF0cml4QnV0dG9uO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0TWF0cml4QnV0dG9uIHtcclxuICBpY29uQ29kZT86IHN0cmluZztcclxuICBjYWxsYmFjazogKHdpZGdldDogU21hcnRGb3JtV2lkZ2V0PGFueT4sIHJvdzogYW55KSA9PiBhbnk7XHJcbiAgY29sb3I/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU21hcnRZb3V0dWJlUGxheWVyIHtcclxuICBrZXk/OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIHR5cGU6IFNtYXJ0Rm9ybVdpZGdldFR5cGUuWU9VVFVCRV9QTEFZRVI7XHJcbiAgbGluaz86IHN0cmluZztcclxuICB2aWRlb0lkPzogc3RyaW5nO1xyXG4gIGhlaWdodD86IG51bWJlcjtcclxuICB3aWR0aD86IG51bWJlcjtcclxuICBzdGFydFNlY29uZHM/OiBudW1iZXIgfCAwO1xyXG4gIGVuZFNlY29uZHM/OiBudW1iZXI7XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGxhYmVsPzogc3RyaW5nO1xyXG4gIHZhbGlkYXRvcnM/OiBTbWFydFZhbGlkYXRvcltdO1xyXG4gIGhpbnQ/OiBTbWFydFdpZGdldEhpbnQ7XHJcbiAgc2hvd0xhYmVsPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydE1vbnRoUGlja2VyIHtcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5NT05USF9QSUNLRVI7XHJcbiAgdmFsdWU/OiBzdHJpbmc7XHJcbiAgdmFsaWRhdG9ycz86IFNtYXJ0VmFsaWRhdG9yW107XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGVycm9yPzogc3RyaW5nO1xyXG4gIGVycm9ySWNvbj86IHN0cmluZztcclxuICBlcnJvckljb25Db2xvcj86IHN0cmluZztcclxuICBzZXJ2ZXJFcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgc2VydmVyRXJyb3JJY29uPzogc3RyaW5nO1xyXG4gIHNlcnZlckVycm9yQ29sb3I/OiBzdHJpbmc7XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICBpc1Zpc2libGU/OiBib29sZWFuO1xyXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIG9yaWdpbmFsTGFiZWw/OiBzdHJpbmc7XHJcbiAgaGludD86IFNtYXJ0V2lkZ2V0SGludDtcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNtYXJ0U3ZnIHtcclxuICB0eXBlOiBTbWFydEZvcm1XaWRnZXRUeXBlLlNWRztcclxuICBrZXk6IHN0cmluZztcclxuICB2YWx1ZUNoYW5nZU1vZGU/OiBWYWx1ZUNoYW5nZU1vZGU7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBvcmlnaW5hbExhYmVsPzogc3RyaW5nO1xyXG4gIHNob3dMYWJlbD86IGJvb2xlYW47XHJcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcclxuICBjc3NDbGFzcz86IHN0cmluZztcclxuICBjc3NMYWJlbENsYXNzPzogc3RyaW5nO1xyXG4gIGxhYmVsUG9zaXRpb25DbGFzcz86IHN0cmluZztcclxuICBpc0Zsb2F0TGFiZWw/OiBib29sZWFuO1xyXG4gIHN0eWxlPzogU3R5bGU7XHJcbiAgbGFiZWxTdHlsZT86IFN0eWxlO1xyXG4gIHZhbHVlPzogc3RyaW5nO1xyXG4gIG1pbldpZHRoPzogU21hcnRGb3JtV2lkZ2V0V2lkdGggfCBudW1iZXI7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBTbWFydERpdiB7XHJcbiAgdHlwZTogU21hcnRGb3JtV2lkZ2V0VHlwZS5ESVY7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWVDaGFuZ2VNb2RlPzogVmFsdWVDaGFuZ2VNb2RlO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcbiAgb3JpZ2luYWxMYWJlbD86IHN0cmluZztcclxuICBzaG93TGFiZWw/OiBib29sZWFuO1xyXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XHJcbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XHJcbiAgY3NzTGFiZWxDbGFzcz86IHN0cmluZztcclxuICBsYWJlbFBvc2l0aW9uQ2xhc3M/OiBzdHJpbmc7XHJcbiAgaXNGbG9hdExhYmVsPzogYm9vbGVhbjtcclxuICBzdHlsZT86IFN0eWxlO1xyXG4gIGxhYmVsU3R5bGU/OiBTdHlsZTtcclxuICB2YWx1ZT86IHN0cmluZztcclxuICBtaW5XaWR0aD86IFNtYXJ0Rm9ybVdpZGdldFdpZHRoIHwgbnVtYmVyO1xyXG59XHJcbiJdfQ==
|