@ieeesa-npm/presentation 0.26.9 → 0.27.1

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.
@@ -419,4 +419,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
419
419
  }], downloadSelectedFile: [{
420
420
  type: Output
421
421
  }] } });
422
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc2VudGF0aW9uL3NyYy9saWIvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxLQUFLLFNBQVMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFNUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRXpGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUd4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFB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QUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBRUcsK0JBQStCO3NCQUF2QyxLQUFLO2dCQUdPLGdCQUFnQjtzQkFBNUIsS0FBSztnQkFRRixZQUFZO3NCQURmLEtBQUs7Z0JBVUYsa0JBQWtCO3NCQURyQixLQUFLO2dCQU9JLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gJy4uLy4uL2Fzc2V0cy9jb25zdGFudHMuanNvbic7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRm9ybUVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1lcnJvci9mb3JtLWVycm9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgRm9ybVN1cHBvcnRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1zdXBwb3J0LXRleHQvZm9ybS1zdXBwb3J0LXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybVV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpZWxkLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWNvbnRyb2wtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBBbGxvd2VkRmlsZVR5cGVzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FsbG93ZWQtZmlsZS10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmlsZS11cGxvYWQuc2VydmljZSc7XHJcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3RmlsZXNGb3JtYXQgfSBmcm9tICcuLi8uLi9tb2RlbHMvdmlldy1maWxlcy1mb3JtYXQubW9kZWwnO1xyXG5pbXBvcnQgeyBBbGlnblR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWxpZ24tdHlwZS5tb2RlbCc7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWRTdGF0dXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmlsZS11cGxvYWQtc3RhdHVzLm1vZGVsJztcclxuaW1wb3J0IHsgRmlsZURvd25sb2FkQ29tcG9uZW50IH0gZnJvbSAnLi4vZmlsZS1kb3dubG9hZC9maWxlLWRvd25sb2FkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbGVEb3dubG9hZENvbmZpZyB9IGZyb20gJy4uLy4uL21vZGVscy9maWxlLWRvd25sb2FkLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IERvd25sb2FkRmlsZSB9IGZyb20gJ0BwcmVzZW50YXRpb24vbW9kZWxzL2Rvd25sb2FkLWZpbGUubW9kZWwnO1xyXG4vKipcclxuICogUHJvdmlkZXMgZnVuY3Rpb25hbGl0eSBmb3IgdXBsb2FkaW5nIGZpbGVzIHRvIGF3cyBzMyBidWNrZXQuXHJcbiAqIEBleHBvcnRcclxuICogQGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICogQGltcGxlbWVudHMge09uSW5pdH1cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWVlZXNhLWZpbGUtdXBsb2FkJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBGb3JtRXJyb3JDb21wb25lbnQsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIEZvcm1TdXBwb3J0VGV4dENvbXBvbmVudCxcclxuICAgIE1hdFByb2dyZXNzQmFyTW9kdWxlLFxyXG4gICAgRmlsZVVwbG9hZERpcmVjdGl2ZSxcclxuICAgIEljb25CdXR0b25Db21wb25lbnQsXHJcbiAgICBGaWxlRG93bmxvYWRDb21wb25lbnQsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbGVVcGxvYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBWaWV3Q2hpbGQoJ2ZpbGVGaWVsZCcpIGZpbGVGaWVsZCE6IEVsZW1lbnRSZWY7XHJcbiAgY29uc3RhbnRzID0gY29uc3RhbnRzO1xyXG4gIGZpbGVVcGxvYWRMYWJlbCA9IHRoaXMuY29uc3RhbnRzPy5maWxlVXBsb2FkPy5sYWJlbDtcclxuICBmaWxlVXBsb2FkQXJpYUxhYmVsID0gdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/LmFyaWFMYWJlbDtcclxuICBmaWxlVXBsb2FkSWNvblVybCA9IHRoaXMuY29uc3RhbnRzPy5maWxlVXBsb2FkPy5pY29uVXJsO1xyXG4gIGZpbGVVcGxvYWRCdG4gPSB0aGlzLmNvbnN0YW50cz8uZmlsZVVwbG9hZD8uYnV0dG9uc1swXTtcclxuICBhbGxvd2VkRmlsZVR5cGVFcnJvck1lc3NhZ2UgPVxyXG4gICAgdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/Lm1lc3NhZ2U/LmVycm9yPy5pbnZhbGlkRmlsZUZvcm1hdDtcclxuICBASW5wdXQoKSBtYXhGaWxlU2l6ZUVycm9yTWVzc2FnZSA9XHJcbiAgICB0aGlzLmNvbnN0YW50cz8uZmlsZVVwbG9hZD8ubWVzc2FnZT8uZXJyb3I/LmludmFsaWRGaWxlU2l6ZTtcclxuICBhbGxvd2VkRmlsZVR5cGVzQW5kU2l6ZVRleHQgPSAnJztcclxuICBjb25maWchOiBGaWVsZENvbmZpZztcclxuICBncm91cCE6IEZvcm1Hcm91cDtcclxuICBpc1ZhbGlkRmlsZVR5cGUgPSBmYWxzZTtcclxuICBpc1ZhbGlkRmlsZVNpemUgPSBmYWxzZTtcclxuICBpc1ZhbGlkTWF4RmlsZVVwbG9hZExpbWl0ID0gZmFsc2U7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBzZWxlY3RlZEZpbGVzOiBGaWxlTGlzdCB8IEZpbGUgfCBhbnkgPSBbXTtcclxuICBzZWxlY3RlZEZpbGVOYW1lcyA9ICcnO1xyXG4gIGlzRm9ybUZpZWxkID0gZmFsc2U7XHJcbiAgdG90YWxTaXplID0gMDtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gIHVwbG9hZGVkRmlsZXM6IEZpbGVMaXN0IHwgRmlsZSB8IGFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIGFjdGlvbkJ1dHRvbkFsaWduITogQWxpZ25UeXBlO1xyXG4gIGFsaWdubWVudFR5cGUgPSBBbGlnblR5cGU7XHJcbiAgaXNVcGxvYWRCdXR0b25EaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGZvcm1Db250cm9sTmFtZSA9ICdmaWxlVXBsb2FkJztcclxuICBASW5wdXQoKSBpc0ZpbGVTZWxlY3RlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHN1cHBvcnRNZXNzYWdlITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGFsbG93ZWRGaWxlVHlwZXM6IEFsbG93ZWRGaWxlVHlwZXNbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGlzTXVsdGlGaWxlVXBsb2FkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaXNVcGxvYWRJblByb2dyZXNzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZmlsZVVwbG9hZEhlYWRpbmchOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXNBbGxvd0FueUZpbGVUeXBlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdmlld0ZpbGVzRm9ybWF0ID0gVmlld0ZpbGVzRm9ybWF0LkRFRkFVTFQ7XHJcbiAgQElucHV0KCkgaXNVcGxvYWRCdXR0b25OZWVkZWQgPSBmYWxzZTtcclxuICAvLyBEZWZhdWx0IG1heGltdW0gYWxsb3dlZCB1cGxvYWQgZmlsZSBzaXplIGlzIDJtYi5cclxuICBASW5wdXQoKSBtYXhVcGxvYWRGaWxlU2l6ZSA9IDI7XHJcbiAgcHJpdmF0ZSB1cGxvYWRlZFNpemVWYWx1ZSA9IDA7XHJcbiAgQElucHV0KCkgZmlsZVVwbG9hZEVycm9yUG9zaXRpb24gPSAnYm90dG9tJztcclxuICBASW5wdXQoKSBtYXhGaWxlc1VwbG9hZExpbWl0OiBudW1iZXIgPVxyXG4gICAgdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/LmxpbWl0Py5tYXhGaWxlVXBsb2FkO1xyXG4gIEBJbnB1dCgpIG1heEZpbGVzVXBsb2FkTGltaXRFcnJvck1lc3NhZ2UgPSAnJztcclxuICBwcml2YXRlIF9maWxlVXBsb2FkU3RhdHVzITogRmlsZVVwbG9hZFN0YXR1cztcclxuXHJcbiAgQElucHV0KCkgZ2V0IGZpbGVVcGxvYWRTdGF0dXMoKTogRmlsZVVwbG9hZFN0YXR1cyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmlsZVVwbG9hZFN0YXR1cztcclxuICB9XHJcbiAgc2V0IGZpbGVVcGxvYWRTdGF0dXModmFsdWU6IEZpbGVVcGxvYWRTdGF0dXMpIHtcclxuICAgIHRoaXMuX2ZpbGVVcGxvYWRTdGF0dXMgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHVwbG9hZGVkU2l6ZSgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMudXBsb2FkZWRTaXplVmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdXBsb2FkZWRTaXplKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMudXBsb2FkZWRTaXplVmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcbiAgX2ZpbGVEb3dubG9hZENvbmZpZyE6IEZpbGVEb3dubG9hZENvbmZpZztcclxuICBASW5wdXQoKVxyXG4gIHNldCBmaWxlRG93bmxvYWRDb25maWcodmFsdWU6IEZpbGVEb3dubG9hZENvbmZpZykge1xyXG4gICAgdGhpcy5fZmlsZURvd25sb2FkQ29uZmlnID0gdmFsdWU7XHJcbiAgfVxyXG4gIGdldCBmaWxlRG93bmxvYWRDb25maWcoKTogRmlsZURvd25sb2FkQ29uZmlnIHtcclxuICAgIHJldHVybiB0aGlzLl9maWxlRG93bmxvYWRDb25maWc7XHJcbiAgfVxyXG4gIEBPdXRwdXQoKSB1cGxvYWRTZWxlY3RlZEZpbGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlIHwgRmlsZUxpc3Q+KCk7XHJcbiAgQE91dHB1dCgpIGRvd25sb2FkU2VsZWN0ZWRGaWxlID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlIHwgRG93bmxvYWRGaWxlPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGZvcm1VdGlsaXR5U2VydmljZTogRm9ybVV0aWxpdHlTZXJ2aWNlLFxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgICBwdWJsaWMgZmlsZVVwbG9hZFNlcnZpY2U6IEZpbGVVcGxvYWRTZXJ2aWNlIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1lbXB0eS1mdW5jdGlvblxyXG4gICkge31cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplcyBjb21wb25lbnQgcHJvcGVydGllcyBhbmQgcmV0cmlldmVzIGNvbmZpZ3VyYXRpb24uXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNGb3JtRmllbGQgPSAhIXRoaXMuY29uZmlnO1xyXG4gICAgdGhpcy5jb25maWcgPVxyXG4gICAgICB0aGlzLmNvbmZpZyA/P1xyXG4gICAgICB0aGlzLmZvcm1VdGlsaXR5U2VydmljZS5nZXRGb3JtRmllbGRDb25maWcoXHJcbiAgICAgICAgJ2ZpbGVVcGxvYWQnLFxyXG4gICAgICAgIEZvcm1Db250cm9sVHlwZS5GSUxFX1VQTE9BRFxyXG4gICAgICApO1xyXG4gICAgdGhpcy5ncm91cCA9XHJcbiAgICAgIHRoaXMuZ3JvdXAgPz8gdGhpcy5mb3JtVXRpbGl0eVNlcnZpY2UuZ2V0Rm9ybUdyb3VwKCdmaWxlVXBsb2FkJyk7XHJcbiAgICB0aGlzLmNvbmZpZy5zdXBwb3J0TWVzc2FnZSA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5zdXBwb3J0TWVzc2FnZSA/PyB0aGlzLnN1cHBvcnRNZXNzYWdlO1xyXG4gICAgdGhpcy5pc011bHRpRmlsZVVwbG9hZCA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5pc011bHRpRmlsZVVwbG9hZCA/PyB0aGlzLmlzTXVsdGlGaWxlVXBsb2FkO1xyXG4gICAgdGhpcy5tYXhVcGxvYWRGaWxlU2l6ZSA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5tYXhVcGxvYWRGaWxlU2l6ZSA/PyB0aGlzLm1heFVwbG9hZEZpbGVTaXplO1xyXG4gICAgdGhpcy5hbGxvd2VkRmlsZVR5cGVzID1cclxuICAgICAgdGhpcy5jb25maWc/LmFsbG93ZWRGaWxlVHlwZXMgPz8gdGhpcy5hbGxvd2VkRmlsZVR5cGVzO1xyXG4gICAgdGhpcy5pc0FsbG93QW55RmlsZVR5cGUgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uaXNBbGxvd0FueUZpbGVUeXBlID8/IHRoaXMuaXNBbGxvd0FueUZpbGVUeXBlO1xyXG4gICAgdGhpcy52aWV3RmlsZXNGb3JtYXQgPSB0aGlzLmNvbmZpZz8udmlld0ZpbGVzRm9ybWF0ID8/IHRoaXMudmlld0ZpbGVzRm9ybWF0O1xyXG4gICAgdGhpcy5pc1VwbG9hZEJ1dHRvbk5lZWRlZCA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5pc1VwbG9hZEJ1dHRvbk5lZWRlZCA/PyB0aGlzLmlzVXBsb2FkQnV0dG9uTmVlZGVkO1xyXG4gICAgdGhpcy5hY3Rpb25CdXR0b25BbGlnbiA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5hY3Rpb25CdXR0b25BbGlnbiA/PyB0aGlzLmFjdGlvbkJ1dHRvbkFsaWduO1xyXG4gICAgdGhpcy5maWxlVXBsb2FkRXJyb3JQb3NpdGlvbiA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5maWxlVXBsb2FkRXJyb3JQb3NpdGlvbiA/PyB0aGlzLmZpbGVVcGxvYWRFcnJvclBvc2l0aW9uO1xyXG4gICAgdGhpcy5nZXRBbGxvd2VkRmlsZUZvcm1hdFNpemVNZXNzYWdlKCk7XHJcbiAgICB0aGlzLmZpbGVVcGxvYWRIZWFkaW5nID1cclxuICAgICAgdGhpcy5jb25maWc/LmZpbGVVcGxvYWRIZWFkaW5nID8/XHJcbiAgICAgIHRoaXMuZmlsZVVwbG9hZEhlYWRpbmcgPz9cclxuICAgICAgdGhpcy5maWxlVXBsb2FkTGFiZWwuZmlsZVVwbG9hZDtcclxuICAgIHRoaXMuY29uZmlnLmFsbG93ZWRGaWxlVHlwZUVycm9yTWVzc2FnZSA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5hbGxvd2VkRmlsZVR5cGVFcnJvck1lc3NhZ2UgPz9cclxuICAgICAgdGhpcy5hbGxvd2VkRmlsZVR5cGVFcnJvck1lc3NhZ2U7XHJcbiAgICB0aGlzLmNvbmZpZy5tYXhGaWxlU2l6ZUVycm9yTWVzc2FnZSA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5tYXhGaWxlU2l6ZUVycm9yTWVzc2FnZSA/PyB0aGlzLm1heEZpbGVTaXplRXJyb3JNZXNzYWdlO1xyXG4gICAgdGhpcy5pc0ZpbGVTZWxlY3RlZCA9IHRoaXMuY29uZmlnPy5pc0ZpbGVTZWxlY3RlZCA/PyB0aGlzLmlzRmlsZVNlbGVjdGVkO1xyXG4gICAgdGhpcy5tYXhGaWxlc1VwbG9hZExpbWl0ID1cclxuICAgICAgdGhpcy5jb25maWc/Lm1heEZpbGVzVXBsb2FkTGltaXQgPz8gdGhpcy5tYXhGaWxlc1VwbG9hZExpbWl0O1xyXG4gICAgdGhpcy5tYXhGaWxlc1VwbG9hZExpbWl0RXJyb3JNZXNzYWdlID1cclxuICAgICAgdGhpcy5jb25maWc/Lm1heEZpbGVzVXBsb2FkTGltaXRFcnJvck1lc3NhZ2UgPz9cclxuICAgICAgdGhpcy5tYXhGaWxlc1VwbG9hZExpbWl0RXJyb3JNZXNzYWdlO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBGb3JtYXRzIGFsbG93ZWQgZmlsZSBmb3JtYXQgYW5kIHNpemUgbWVzc2FnZSBpbiByZXF1aXJlZCBmb3JtYXQuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBnZXRBbGxvd2VkRmlsZUZvcm1hdFNpemVNZXNzYWdlKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3VwcG9ydGVkRmlsZUZvcm1hdFRleHQgPSB0aGlzLmFsbG93ZWRGaWxlVHlwZXMuam9pbignLCAnKTtcclxuICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlc0FuZFNpemVUZXh0ID0gYCR7dGhpcy5maWxlVXBsb2FkTGFiZWw/LmFsbG93ZWRGaWxlU2l6ZTF9XHJcbiAgICAke3RoaXMubWF4VXBsb2FkRmlsZVNpemV9YDtcclxuICAgIGlmICh0aGlzLmlzTXVsdGlGaWxlVXBsb2FkKSB7XHJcbiAgICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlc0FuZFNpemVUZXh0ICs9IGAgJHt0aGlzLmNvbnN0YW50cz8uZmlsZVVwbG9hZD8ubGFiZWw/Lm1ifWA7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuaXNBbGxvd0FueUZpbGVUeXBlKSB7XHJcbiAgICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlc0FuZFNpemVUZXh0ICs9IGAke3RoaXMuZmlsZVVwbG9hZExhYmVsPy5hbGxvd2VkRmlsZVNpemUyfSAke3RoaXMuZmlsZVVwbG9hZExhYmVsPy5hbGxvd2VkRmlsZUZvcm1hdH0gJHtzdXBwb3J0ZWRGaWxlRm9ybWF0VGV4dH0uYDtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyB0aGUgc2VsZWN0ZWQgZmlsZShzKSBhbmQgZW1pdHMgRmlsZVVwbG9hZCBldmVudCBlbWl0dGVyIGZvciB1cGxvYWRpbmcgdGhlIGZpbGUocykuXHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZ2V0RmlsZShmaWxlOiBGaWxlIHwgRmlsZUxpc3QpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRGaWxlcyA9IFtdO1xyXG4gICAgY29uc3QgZmlsZVVwbG9hZEZvcm1Db250cm9sID0gdGhpcy5ncm91cD8uZ2V0KFxyXG4gICAgICB0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUgPz8gJ2ZpbGVVcGxvYWQnXHJcbiAgICApO1xyXG4gICAgaWYgKGZpbGVVcGxvYWRGb3JtQ29udHJvbCkge1xyXG4gICAgICBmaWxlVXBsb2FkRm9ybUNvbnRyb2wubWFya0FzRGlydHkoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmlzTXVsdGlGaWxlVXBsb2FkKSB7XHJcbiAgICAgIHRoaXMudmFsaWRhdGVGaWxlKGZpbGUpO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgdGhpcy5pc1ZhbGlkRmlsZVR5cGUgJiZcclxuICAgICAgICB0aGlzLmlzVmFsaWRGaWxlU2l6ZSAmJlxyXG4gICAgICAgIHRoaXMuaXNWYWxpZE1heEZpbGVVcGxvYWRMaW1pdFxyXG4gICAgICApIHtcclxuICAgICAgICBpZiAoZmlsZSkge1xyXG4gICAgICAgICAgT2JqZWN0LnZhbHVlcyhmaWxlKS5mb3JFYWNoKChmaWxlSXRlbTogRmlsZSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZXM/LnB1c2goZmlsZUl0ZW0pO1xyXG4gICAgICAgICAgICB0aGlzLnRvdGFsU2l6ZSArPSBmaWxlSXRlbS5zaXplO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkRmlsZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgIHRoaXMuaXNGaWxlU2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRmlsZXNOYW1lczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnMsIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlcz8uZm9yRWFjaCgoZmlsZTogRmlsZSwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgc2VsZWN0ZWRGaWxlc05hbWVzLnB1c2goZmlsZS5uYW1lKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZU5hbWVzID0gc2VsZWN0ZWRGaWxlc05hbWVzPy5qb2luKCcsICcpLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgdGhpcy5ncm91cFxyXG4gICAgICAgICAgLmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpXHJcbiAgICAgICAgICA/LnNldFZhbHVlKHRoaXMuc2VsZWN0ZWRGaWxlTmFtZXMpO1xyXG4gICAgICAgIHRoaXMuZmlsZVVwbG9hZEJ0bi5kaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgIGlmICh0aGlzLmlzRm9ybUZpZWxkKVxyXG4gICAgICAgICAgdGhpcy51cGxvYWRTZWxlY3RlZEZpbGVzPy5lbWl0KHRoaXMuc2VsZWN0ZWRGaWxlcyk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IGZpbGVJdGVtID0gT2JqZWN0LnZhbHVlcyhmaWxlKVswXTtcclxuICAgICAgdGhpcy52YWxpZGF0ZUZpbGUoZmlsZUl0ZW0pO1xyXG4gICAgICBpZiAodGhpcy5pc1ZhbGlkRmlsZVR5cGUgJiYgdGhpcy5pc1ZhbGlkRmlsZVNpemUpIHtcclxuICAgICAgICB0aGlzLmlzRmlsZVNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZU5hbWVzID0gZmlsZUl0ZW0ubmFtZTtcclxuICAgICAgICB0aGlzLnRvdGFsU2l6ZSA9IGZpbGVJdGVtLnNpemU7XHJcbiAgICAgICAgdGhpcy5maWxlVXBsb2FkU2VydmljZT8uY29udmVydEZpbGVUb0J5dGVBcnJheShmaWxlSXRlbSk7XHJcbiAgICAgICAgdGhpcy5ncm91cFxyXG4gICAgICAgICAgLmdldCh0aGlzLmNvbmZpZy5jb250cm9sTmFtZSlcclxuICAgICAgICAgID8uc2V0VmFsdWUodGhpcy5zZWxlY3RlZEZpbGVOYW1lcyk7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNGb3JtRmllbGQpIHRoaXMudXBsb2FkU2VsZWN0ZWRGaWxlcy5lbWl0KGZpbGVJdGVtKTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBmaWxlO1xyXG4gICAgICAgIHRoaXMuZmlsZVVwbG9hZEJ0bi5kaXNhYmxlZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYXRlcyB0aGUgc2VsZWN0ZWQgZmlsZShzKSBmb3JtYXQgYW5kIHNpemUuXHJcbiAgICogQHBhcmFtIHsoRmlsZSB8IEZpbGVMaXN0KX0gZmlsZVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgdmFsaWRhdGVGaWxlKGZpbGU6IEZpbGUgfCBGaWxlTGlzdCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc1ZhbGlkRmlsZVR5cGUgPSAhdGhpcy5pc0FsbG93QW55RmlsZVR5cGVcclxuICAgICAgPyB0aGlzLmZpbGVVcGxvYWRTZXJ2aWNlLnZhbGlkYXRlRmlsZVR5cGVzKFxyXG4gICAgICAgICAgZmlsZSxcclxuICAgICAgICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlcyxcclxuICAgICAgICAgIHRoaXMuaXNNdWx0aUZpbGVVcGxvYWRcclxuICAgICAgICApXHJcbiAgICAgIDogdHJ1ZTtcclxuICAgIGlmICh0aGlzLmlzTXVsdGlGaWxlVXBsb2FkKSB7XHJcbiAgICAgIHRoaXMuaXNWYWxpZE1heEZpbGVVcGxvYWRMaW1pdCA9XHJcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhmaWxlKS5sZW5ndGggPD1cclxuICAgICAgICB0aGlzLmNvbnN0YW50cz8uZmlsZVVwbG9hZD8ubGltaXQ/Lm1heEZpbGVVcGxvYWQ7XHJcbiAgICAgIGlmICghdGhpcy5pc1ZhbGlkTWF4RmlsZVVwbG9hZExpbWl0KSB7XHJcbiAgICAgICAgdGhpcy5ncm91cD8uZ2V0KHRoaXMuY29uZmlnPy5jb250cm9sTmFtZSk/LnNldEVycm9ycyh7XHJcbiAgICAgICAgICBtYXhGaWxlc1VwbG9hZExpbWl0UmVhY2hlZDogdHJ1ZSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLmlzVmFsaWRGaWxlVHlwZSkge1xyXG4gICAgICB0aGlzLmdyb3VwPy5nZXQodGhpcy5jb25maWc/LmNvbnRyb2xOYW1lKT8uc2V0RXJyb3JzKHtcclxuICAgICAgICBpbnZhbGlkRmlsZVR5cGU6IHRydWUsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pc1ZhbGlkRmlsZVNpemUgPSB0aGlzLmZpbGVVcGxvYWRTZXJ2aWNlLnZhbGlkYXRlRmlsZVNpemUoXHJcbiAgICAgIGZpbGUsXHJcbiAgICAgIHRoaXMubWF4VXBsb2FkRmlsZVNpemUsXHJcbiAgICAgIHRoaXMuaXNNdWx0aUZpbGVVcGxvYWRcclxuICAgICk7XHJcbiAgICBpZiAoIXRoaXMuaXNWYWxpZEZpbGVTaXplKSB7XHJcbiAgICAgIHRoaXMuZ3JvdXA/LmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpPy5zZXRFcnJvcnMoe1xyXG4gICAgICAgIG1heEZpbGVTaXplOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogSW5pdGlhdGVzIHRoZSBmaWxlIHVwbG9hZCBwcm9jZXNzIGZvciBpbmRlcGVuZGVudCBmaWxlIHVwbG9hZCBjb21wb25lbnQuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBvblVwbG9hZCgpOiB2b2lkIHtcclxuICAgIHRoaXMudXBsb2FkU2VsZWN0ZWRGaWxlcy5lbWl0KHRoaXMuc2VsZWN0ZWRGaWxlcyk7XHJcbiAgICBpZiAodGhpcy5maWxlVXBsb2FkU2VydmljZT8uZ2V0RmlsZVVwbG9hZFN0YXR1cygpKSB7XHJcbiAgICAgIHRoaXMudXBsb2FkZWRGaWxlcyA9IHRoaXMuc2VsZWN0ZWRGaWxlcztcclxuICAgIH1cclxuICB9XHJcbiAgLyoqXHJcbiAgICogQ2xlYXJzIHRoZSBmb3JtIGdyb3VwIGNvbnRyb2wgdmFsdWUgb2YgdHlwZSBpbnB1dCBhbmQgcmVzZXRzIG90aGVyIGZpbGUgdXBsb2FkIHByb3BlcnRpZXMuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICByZXNldFVwbG9hZCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZmlsZVVwbG9hZFNlcnZpY2UuY2xlYXJGaWxlQnl0ZUFycmF5KCk7XHJcbiAgICB0aGlzLnVwbG9hZGVkRmlsZXMgPSBbXTtcclxuICAgIHRoaXMuaXNVcGxvYWRJblByb2dyZXNzID0gZmFsc2U7XHJcbiAgICB0aGlzLnNlbGVjdGVkRmlsZU5hbWVzID0gJyc7XHJcbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBbXTtcclxuICAgIHRoaXMuaXNGaWxlU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuZ3JvdXAuZ2V0KHRoaXMuY29uZmlnPy5jb250cm9sTmFtZSk/LnNldFZhbHVlKCcnKTtcclxuICAgIHRoaXMuZmlsZVVwbG9hZEJ0bi5kaXNhYmxlZCA9IHRydWU7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFJlbW92ZXMgdGhlIHNlbGVjdGVkIGZpbGUgZnJvbSB0aGUgdXBsb2FkZWQgZmlsZXMgbGlzdC5cclxuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIG9uRGVsZXRlRmlsZShmaWxlOiBGaWxlLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvdGFsU2l6ZSA9IDA7XHJcbiAgICB0aGlzLnVwbG9hZGVkRmlsZXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogRm9yIHRhYiBrZXkga2V5ZG93biBldmVudCBpdCBwYXNzZXMgZXZlbnQgYW5kIHJlc3RyaWN0cyBvdGhlciBrZXlzIGZyb20ga2V5Ym9hcmQuXHJcbiAgICogQHBhcmFtIHtLZXlib2FyZEV2ZW50fSBldmVudCAtS2V5ZG93biBldmVudCBvYmplY3QuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmIChldmVudC5rZXkgIT09ICdUYWInKSBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBFbWl0cyBmaWxlIGRvd25sb2FkIGV2ZW50IGVtaXR0ZXIuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBkb3dubG9hZEZpbGUoZmlsZTogRmlsZSB8IERvd25sb2FkRmlsZSk6IHZvaWQge1xyXG4gICAgdGhpcy5kb3dubG9hZFNlbGVjdGVkRmlsZS5lbWl0KHRoaXMuc2VsZWN0ZWRGaWxlcyk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBmaWxlIGxpc3QuXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XHJcbiAgICogQHJldHVybiB7KG51bWJlciB8IHN0cmluZyl9XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlcik6IG51bWJlciB8IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIFRyaWdnZXJzIG9uIGJyb3dzZSBlbGVtZW50IGNsaWNrZWRcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGZpbGVDbGljaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZmlsZUZpZWxkLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogRGlzcGxheSBjb21tYSBzZXBhcmF0ZWQgZmFpbGVkIGZpbGUgbmFtZXNcclxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBmaWxlc05hbWVzVXBsb2FkRmFpbGVkXHJcbiAgICogQHJldHVybiB7Kn0gIHtzdHJpbmd9XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBkaXNwbGF5RmlsZU5hbWVzKGZpbGVOYW1lczogc3RyaW5nW10pOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGZpbGVOYW1lcyAmJiBmaWxlTmFtZXMubGVuZ3RoID8gZmlsZU5hbWVzLmpvaW4oJywnKSA6ICcnO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBSZW1vdmVzIGZpbGUgZnJvbSByZXNwZWN0aXZlIHByb3BlcnRpZXMgdXNlZC5cclxuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIHJlbW92ZUZpbGUoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICBjb25zdCBmaWxlTmFtZXM6IHN0cmluZ1tdID0gdGhpcy5zZWxlY3RlZEZpbGVOYW1lcy5zcGxpdCgnLCcpO1xyXG4gICAgZmlsZU5hbWVzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICB0aGlzLnNlbGVjdGVkRmlsZU5hbWVzID0gZmlsZU5hbWVzLmpvaW4oJywnKTtcclxuICAgIHRoaXMudXBsb2FkU2VsZWN0ZWRGaWxlcy5lbWl0KHRoaXMuc2VsZWN0ZWRGaWxlcyk7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZEZpbGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLnJlc2V0VXBsb2FkKCk7XHJcbiAgICAgIHRoaXMuZmlsZVVwbG9hZFN0YXR1cy5maWxlc1VwbG9hZGVkU3VjY2Vzc2Z1bGx5Q291bnQgPSAwO1xyXG4gICAgICB0aGlzLmZpbGVVcGxvYWRTdGF0dXMuZmlsZXNOYW1lc1VwbG9hZEZhaWxlZCA9IFtdO1xyXG4gICAgICB0aGlzLmZpbGVVcGxvYWRTdGF0dXMuYWxyZWFkeUV4aXN0c0ZpbGVzID0gW107XHJcbiAgICAgIHRoaXMuaXNVcGxvYWRCdXR0b25EaXNhYmxlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIERpc2FibGVkIGZpbGUgdXBsb2FkIGJ1dHRvblxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZGlzYWJsZVVwbG9hZEJ1dHRvbigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5pc1VwbG9hZEJ1dHRvbkRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuaXNVcGxvYWRCdXR0b25EaXNhYmxlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBCYXNlZCBvbiBpc011bHRpRmlsZVVwbG9hZCBmbGFnIHJldHVybiBmaWxlcyB0byBkb3dubG9hZC5cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldEZpbGVzVG9Eb3dubG9hZCgpOiBEb3dubG9hZEZpbGVbXSB7XHJcbiAgICBpZiAodGhpcy5pc011bHRpRmlsZVVwbG9hZCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5maWxlVXBsb2FkU3RhdHVzLnVwbG9hZGVkRmlsZXM7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy51cGxvYWRlZEZpbGVzO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgW2Zvcm1Hcm91cF09XCJncm91cFwiXHJcbiAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRcIlxyXG4gIFtuZ0NsYXNzXT1cIlxyXG4gICAgY29uZmlnLmlzTGFiZWxBbGlnbmVkTGVmdFxyXG4gICAgICA/ICdpZWVlc2EtZmlsZS11cGxvYWRfX2xhYmVsLWxlZnQnXHJcbiAgICAgIDogJ2llZWVzYS1maWxlLXVwbG9hZF9fbGFiZWwtdG9wJ1xyXG4gIFwiXHJcbj5cclxuICA8bWF0LWxhYmVsIGNsYXNzPVwiaWVlZXNhLWJvZHktc20tMTQgaWVlZXNhLWZpbGUtdXBsb2FkX19sYWJlbFwiPnt7XHJcbiAgICBjb25maWcubGFiZWxcclxuICB9fTwvbWF0LWxhYmVsPlxyXG4gIDxpZWVlc2EtZmlsZS1kb3dubG9hZFxyXG4gICAgW2ZpbGVEb3dubG9hZENvbmZpZ109XCJmaWxlRG93bmxvYWRDb25maWdcIlxyXG4gICAgW2Rvd25sb2FkRmlsZXNdPVwiZ2V0RmlsZXNUb0Rvd25sb2FkKClcIlxyXG4gICAgKGRvd25sb2FkU2VsZWN0ZWRGaWxlKT1cImRvd25sb2FkRmlsZSgkZXZlbnQpXCJcclxuICA+PC9pZWVlc2EtZmlsZS1kb3dubG9hZD5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkIHAtNFwiXHJcbiAgICBpZWVlc2FGaWxlVXBsb2FkXHJcbiAgICAoZmlsZURyb3BwZWQpPVwiZ2V0RmlsZSgkZXZlbnQpXCJcclxuICA+XHJcbiAgICA8cCBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkX19oZWFkaW5nIG0tMCBpZWVlc2EtbGFiZWwtbGctYm9sZC0xNlwiPlxyXG4gICAgICB7eyBmaWxlVXBsb2FkSGVhZGluZyB9fVxyXG4gICAgPC9wPlxyXG4gICAgPGRpdiBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkX19icm93c2UtZmlsZXNcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1idXR0b25cclxuICAgICAgICAoY2xpY2spPVwiZmlsZUNsaWNrKClcIlxyXG4gICAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX19icm93c2UtYnRuIG1hdC10ZXJ0aWFyeS1idXR0b25cIlxyXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZmlsZVVwbG9hZEFyaWFMYWJlbC5icm93c2VGaWxlc1wiXHJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImZpbGVVcGxvYWRTdGF0dXM/LmlzVXBsb2FkaW5nU3RhcnRcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgZmlsZVVwbG9hZExhYmVsLmJyb3dzZUZpbGVzIH19XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNNdWx0aUZpbGVVcGxvYWRcIj5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcclxuICAgICAgICAgICNmaWxlRmllbGRcclxuICAgICAgICAgIChjaGFuZ2UpPVwiZ2V0RmlsZSgkYW55KCRldmVudCkudGFyZ2V0LmZpbGVzKVwiXHJcbiAgICAgICAgICBoaWRkZW5cclxuICAgICAgICAgIFthY2NlcHRdPVwiYWxsb3dlZEZpbGVUeXBlc1wiXHJcbiAgICAgICAgICBbbXVsdGlwbGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZmlsZVVwbG9hZFN0YXR1cz8uaXNVcGxvYWRpbmdTdGFydFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNNdWx0aUZpbGVVcGxvYWRcIj5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcclxuICAgICAgICAgICNmaWxlRmllbGRcclxuICAgICAgICAgIChjaGFuZ2UpPVwiZ2V0RmlsZSgkYW55KCRldmVudCkudGFyZ2V0LmZpbGVzKVwiXHJcbiAgICAgICAgICBoaWRkZW5cclxuICAgICAgICAgIFthY2NlcHRdPVwiYWxsb3dlZEZpbGVUeXBlc1wiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZmlsZVVwbG9hZFN0YXR1cz8uaXNVcGxvYWRpbmdTdGFydFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8cFxyXG4gICAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX19hbGxvd2VkLWZpbGUtdGV4dCBtLTAgaWVlZXNhLWxhYmVsLW1kLTE0XCJcclxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFsbG93ZWRGaWxlVHlwZXNBbmRTaXplVGV4dFwiXHJcbiAgICAgID5cclxuICAgICAgICB7eyBhbGxvd2VkRmlsZVR5cGVzQW5kU2l6ZVRleHQgfX1cclxuICAgICAgPC9wPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX191cGxvYWQtd3JhcHBlciBkLWZsZXhcIlxyXG4gICAgICAqbmdJZj1cImlzRmlsZVNlbGVjdGVkXCJcclxuICAgID5cclxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwidmlld0ZpbGVzRm9ybWF0XCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RlZmF1bHQnXCI+XHJcbiAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX191cGxvYWQtd3JhcHBlcl9faW5wdXQtZmllbGQgaWVlZXNhLWJvZHktbGctMTZcIlxyXG4gICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICB2YWx1ZT1cInNlbGVjdGVkRmlsZU5hbWVzXCJcclxuICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLnBsYWNlaG9sZGVyID8/ICcnXCJcclxuICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbmZpZy5jb250cm9sTmFtZVwiXHJcbiAgICAgICAgICAgICAgW25hbWVdPVwiY29uZmlnLmNvbnRyb2xOYW1lXCJcclxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxyXG4gICAgICAgICAgICAgICAgY29uZmlnLmFyaWFMYWJlbCA/PyBmaWxlVXBsb2FkQXJpYUxhYmVsLmZpbGVVcGxvYWRJbnB1dFxyXG4gICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgW2FyaWEtZGVzY3JpYmVkYnldPVwiY29uZmlnLmFyaWFEZXNjcmliZWRCeUlkID8/ICcnXCJcclxuICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3VwbG9hZC13cmFwcGVyLS1jbGVhci1pY29uLWJ0blwiXHJcbiAgICAgICAgICAgICAgbWF0U3VmZml4XHJcbiAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJmaWxlVXBsb2FkQXJpYUxhYmVsLnJlbW92ZUZpbGVJY29uXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVzZXRVcGxvYWQoKVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8aVxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmYS1yZWd1bGFyIGZhLWNpcmNsZS14bWFyayBpZWVlc2EtaW5wdXQtZmllbGQtdXBsb2FkX19pY29uLS1jbGVhclwiXHJcbiAgICAgICAgICAgICAgPjwvaT5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgPGllZWVzYS1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkLXdyYXBwZXItLXVwbG9hZC1idG4gZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXHJcbiAgICAgICAgICAgIFtpY29uQnV0dG9uXT1cImZpbGVVcGxvYWRCdG5cIlxyXG4gICAgICAgICAgICBbaXNMYWJlbE5lZWRlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIChpY29uQnV0dG9uQ2xpY2spPVwib25VcGxvYWQoKVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiIWlzRm9ybUZpZWxkXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvaWVlZXNhLWljb24tYnV0dG9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidib3R0b20nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWVlZXNhLXZpZXctZmlsZXMtYm90dG9tLWZvcm1hdFwiPlxyXG4gICAgICAgICAgICA8cFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX19wcm9ncmVzc19fdGV4dFwiXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRTdGF0dXMuZmlsZXNVcGxvYWRlZFN1Y2Nlc3NmdWxseUNvdW50ICYmXHJcbiAgICAgICAgICAgICAgICBpc011bHRpRmlsZVVwbG9hZFxyXG4gICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7e1xyXG4gICAgICAgICAgICAgICAgZmlsZVVwbG9hZFN0YXR1cy5maWxlc1VwbG9hZGVkU3VjY2Vzc2Z1bGx5Q291bnQgK1xyXG4gICAgICAgICAgICAgICAgICBcIiBcIiArXHJcbiAgICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRMYWJlbD8ub2YgK1xyXG4gICAgICAgICAgICAgICAgICBcIiBcIiArXHJcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkRmlsZXMubGVuZ3RoICtcclxuICAgICAgICAgICAgICAgICAgXCIgXCIgK1xyXG4gICAgICAgICAgICAgICAgICBmaWxlVXBsb2FkTGFiZWw/LmZpbGVzVXBsb2FkZWRcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxwXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggcHQtMSBtLTAgaWVlZXNhLWxhYmVsLW1kLTE0IGFsaWduLWl0ZW1zLWNlbnRlclwiXHJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGZpbGUgb2Ygc2VsZWN0ZWRGaWxlczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7eyBmaWxlPy5uYW1lIH19XHJcbiAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkLXdyYXBwZXItLWNsZWFyLWljb24tYnRuXCJcclxuICAgICAgICAgICAgICAgIG1hdFN1ZmZpeFxyXG4gICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImZpbGVVcGxvYWRBcmlhTGFiZWwucmVtb3ZlRmlsZUljb25cIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZUZpbGUoaSlcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxpXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmEtcmVndWxhciBmYS1jaXJjbGUteG1hcmsgaWVlZXNhLWlucHV0LWZpZWxkLXVwbG9hZF9faWNvbi0tY2xlYXJcIlxyXG4gICAgICAgICAgICAgICAgPjwvaT5cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cFxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICAgICBmaWxlVXBsb2FkU3RhdHVzLmZpbGVzTmFtZXNVcGxvYWRGYWlsZWQgJiZcclxuICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRTdGF0dXMuZmlsZXNOYW1lc1VwbG9hZEZhaWxlZC5sZW5ndGggJiZcclxuICAgICAgICAgICAgICAgIGlzTXVsdGlGaWxlVXBsb2FkXHJcbiAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fZXJyb3JfX3RleHRcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge3sgZGlzYWJsZVVwbG9hZEJ1dHRvbigpIH19XHJcbiAgICAgICAgICAgICAge3tcclxuICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRMYWJlbD8udXBsb2FkRm9yICtcclxuICAgICAgICAgICAgICAgICAgXCIgXCIgK1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5RmlsZU5hbWVzKGZpbGVVcGxvYWRTdGF0dXMuZmlsZXNOYW1lc1VwbG9hZEZhaWxlZCkgK1xyXG4gICAgICAgICAgICAgICAgICBcIiBcIiArXHJcbiAgICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRMYWJlbD8udXBsb2FkRXJyb3JNc2dcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxwXHJcbiAgICAgICAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRTdGF0dXMuYWxyZWFkeUV4aXN0c0ZpbGVzICYmXHJcbiAgICAgICAgICAgICAgICBmaWxlVXBsb2FkU3RhdHVzLmFscmVhZHlFeGlzdHNGaWxlcy5sZW5ndGggJiZcclxuICAgICAgICAgICAgICAgIGlzTXVsdGlGaWxlVXBsb2FkXHJcbiAgICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fZXJyb3JfX3RleHRcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge3sgZGlzYWJsZVVwbG9hZEJ1dHRvbigpIH19XHJcbiAgICAgICAgICAgICAge3tcclxuICAgICAgICAgICAgICAgIGRpc3BsYXlGaWxlTmFtZXMoZmlsZVVwbG9hZFN0YXR1cy5hbHJlYWR5RXhpc3RzRmlsZXMpICtcclxuICAgICAgICAgICAgICAgICAgXCIgXCIgK1xyXG4gICAgICAgICAgICAgICAgICBmaWxlVXBsb2FkTGFiZWw/LmZpbGVBbHJlYWR5RXhpc3RzXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzRm9ybUZpZWxkXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3Byb2dyZXNzXCIgKm5nSWY9XCJpc1VwbG9hZEluUHJvZ3Jlc3NcIj5cclxuICAgICAgICA8cCBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fcHJvZ3Jlc3NfX3RleHRcIj5cclxuICAgICAgICAgIHt7IGZpbGVVcGxvYWRMYWJlbD8udXBsb2FkUHJvZ3Jlc3MgfX1cclxuICAgICAgICA8L3A+XHJcbiAgICAgICAgPG1hdC1wcm9ncmVzcy1iYXJcclxuICAgICAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX19wcm9ncmVzcy0tYmFyXCJcclxuICAgICAgICAgIG1vZGU9XCJkZXRlcm1pbmF0ZVwiXHJcbiAgICAgICAgICBbdmFsdWVdPVwidXBsb2FkZWRTaXplXCJcclxuICAgICAgICA+PC9tYXQtcHJvZ3Jlc3MtYmFyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGllZWVzYS1mb3JtLWVycm9yXHJcbiAgICAgIFtoaWRkZW5dPVwiZmlsZVVwbG9hZEVycm9yUG9zaXRpb24gIT09ICdtaWRkbGUnXCJcclxuICAgICAgW2Zvcm1Hcm91cF09XCJncm91cFwiXHJcbiAgICAgIFtjb25maWddPVwiY29uZmlnXCJcclxuICAgID48L2llZWVzYS1mb3JtLWVycm9yPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvd1wiICpuZ0lmPVwiaXNVcGxvYWRCdXR0b25OZWVkZWQgJiYgaXNGaWxlU2VsZWN0ZWRcIj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwiY29sLTEyXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAnanVzdGlmeS1jb250ZW50LWVuZCc6IGFjdGlvbkJ1dHRvbkFsaWduID09PSBhbGlnbm1lbnRUeXBlLkxFRlQsXHJcbiAgICAgICAgICAnanVzdGlmeS1jb250ZW50LWNlbnRlcic6IGFjdGlvbkJ1dHRvbkFsaWduID09PSBhbGlnbm1lbnRUeXBlLk1JRERMRSxcclxuICAgICAgICAgICdqdXN0aWZ5LWNvbnRlbnQtc3RhcnQnOiBhY3Rpb25CdXR0b25BbGlnbiA9PT0gYWxpZ25tZW50VHlwZS5SSUdIVCxcclxuICAgICAgICB9XCJcclxuICAgICAgPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImlzVXBsb2FkQnV0dG9uRGlzYWJsZWRcIlxyXG4gICAgICAgICAgbWF0LWJ1dHRvblxyXG4gICAgICAgICAgY2xhc3M9XCJtYXQtcHJpbWFyeS1idXR0b24gaWVlZXNhLWR5bmFtaWMtZm9ybV9fYWN0aW9ucy0tcmlnaHQtYnRuXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhaXNGaWxlU2VsZWN0ZWQgfHwgZmlsZVVwbG9hZFN0YXR1cz8uaXNVcGxvYWRpbmdTdGFydFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3sgZmlsZVVwbG9hZExhYmVsPy51cGxvYWQgfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxpZWVlc2EtZm9ybS1lcnJvclxyXG4gIFtoaWRkZW5dPVwiZmlsZVVwbG9hZEVycm9yUG9zaXRpb24gIT09ICdib3R0b20nXCJcclxuICBbZm9ybUdyb3VwXT1cImdyb3VwXCJcclxuICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbj48L2llZWVzYS1mb3JtLWVycm9yPlxyXG48aWVlZXNhLWZvcm0tc3VwcG9ydC10ZXh0XHJcbiAgW2Zvcm1Hcm91cF09XCJncm91cFwiXHJcbiAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4+PC9pZWVlc2EtZm9ybS1zdXBwb3J0LXRleHQ+XHJcbiJdfQ==
422
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJlc2VudGF0aW9uL3NyYy9saWIvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmVzZW50YXRpb24vc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxLQUFLLFNBQVMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFNUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRXpGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUd4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFB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QUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBRUcsK0JBQStCO3NCQUF2QyxLQUFLO2dCQUdPLGdCQUFnQjtzQkFBNUIsS0FBSztnQkFRRixZQUFZO3NCQURmLEtBQUs7Z0JBVUYsa0JBQWtCO3NCQURyQixLQUFLO2dCQU9JLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0ICogYXMgY29uc3RhbnRzIGZyb20gJy4uLy4uL2Fzc2V0cy9jb25zdGFudHMuanNvbic7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRm9ybUVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1lcnJvci9mb3JtLWVycm9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgRm9ybVN1cHBvcnRUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1zdXBwb3J0LXRleHQvZm9ybS1zdXBwb3J0LXRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybVV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpZWxkLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWNvbnRyb2wtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBBbGxvd2VkRmlsZVR5cGVzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FsbG93ZWQtZmlsZS10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZmlsZS11cGxvYWQuc2VydmljZSc7XHJcbmltcG9ydCB7IEljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3RmlsZXNGb3JtYXQgfSBmcm9tICcuLi8uLi9tb2RlbHMvdmlldy1maWxlcy1mb3JtYXQubW9kZWwnO1xyXG5pbXBvcnQgeyBBbGlnblR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWxpZ24tdHlwZS5tb2RlbCc7XHJcbmltcG9ydCB7IEZpbGVVcGxvYWRTdGF0dXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmlsZS11cGxvYWQtc3RhdHVzLm1vZGVsJztcclxuaW1wb3J0IHsgRmlsZURvd25sb2FkQ29tcG9uZW50IH0gZnJvbSAnLi4vZmlsZS1kb3dubG9hZC9maWxlLWRvd25sb2FkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbGVEb3dubG9hZENvbmZpZyB9IGZyb20gJy4uLy4uL21vZGVscy9maWxlLWRvd25sb2FkLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IERvd25sb2FkRmlsZSB9IGZyb20gJy4uLy4uL21vZGVscy9kb3dubG9hZC1maWxlLm1vZGVsJztcclxuLyoqXHJcbiAqIFByb3ZpZGVzIGZ1bmN0aW9uYWxpdHkgZm9yIHVwbG9hZGluZyBmaWxlcyB0byBhd3MgczMgYnVja2V0LlxyXG4gKiBAZXhwb3J0XHJcbiAqIEBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAqIEBpbXBsZW1lbnRzIHtPbkluaXR9XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2llZWVzYS1maWxlLXVwbG9hZCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRm9ybUVycm9yQ29tcG9uZW50LFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBGb3JtU3VwcG9ydFRleHRDb21wb25lbnQsXHJcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcclxuICAgIEZpbGVVcGxvYWREaXJlY3RpdmUsXHJcbiAgICBJY29uQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgRmlsZURvd25sb2FkQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAVmlld0NoaWxkKCdmaWxlRmllbGQnKSBmaWxlRmllbGQhOiBFbGVtZW50UmVmO1xyXG4gIGNvbnN0YW50cyA9IGNvbnN0YW50cztcclxuICBmaWxlVXBsb2FkTGFiZWwgPSB0aGlzLmNvbnN0YW50cz8uZmlsZVVwbG9hZD8ubGFiZWw7XHJcbiAgZmlsZVVwbG9hZEFyaWFMYWJlbCA9IHRoaXMuY29uc3RhbnRzPy5maWxlVXBsb2FkPy5hcmlhTGFiZWw7XHJcbiAgZmlsZVVwbG9hZEljb25VcmwgPSB0aGlzLmNvbnN0YW50cz8uZmlsZVVwbG9hZD8uaWNvblVybDtcclxuICBmaWxlVXBsb2FkQnRuID0gdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/LmJ1dHRvbnNbMF07XHJcbiAgYWxsb3dlZEZpbGVUeXBlRXJyb3JNZXNzYWdlID1cclxuICAgIHRoaXMuY29uc3RhbnRzPy5maWxlVXBsb2FkPy5tZXNzYWdlPy5lcnJvcj8uaW52YWxpZEZpbGVGb3JtYXQ7XHJcbiAgQElucHV0KCkgbWF4RmlsZVNpemVFcnJvck1lc3NhZ2UgPVxyXG4gICAgdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/Lm1lc3NhZ2U/LmVycm9yPy5pbnZhbGlkRmlsZVNpemU7XHJcbiAgYWxsb3dlZEZpbGVUeXBlc0FuZFNpemVUZXh0ID0gJyc7XHJcbiAgY29uZmlnITogRmllbGRDb25maWc7XHJcbiAgZ3JvdXAhOiBGb3JtR3JvdXA7XHJcbiAgaXNWYWxpZEZpbGVUeXBlID0gZmFsc2U7XHJcbiAgaXNWYWxpZEZpbGVTaXplID0gZmFsc2U7XHJcbiAgaXNWYWxpZE1heEZpbGVVcGxvYWRMaW1pdCA9IGZhbHNlO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgc2VsZWN0ZWRGaWxlczogRmlsZUxpc3QgfCBGaWxlIHwgYW55ID0gW107XHJcbiAgc2VsZWN0ZWRGaWxlTmFtZXMgPSAnJztcclxuICBpc0Zvcm1GaWVsZCA9IGZhbHNlO1xyXG4gIHRvdGFsU2l6ZSA9IDA7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICB1cGxvYWRlZEZpbGVzOiBGaWxlTGlzdCB8IEZpbGUgfCBhbnkgPSBbXTtcclxuICBASW5wdXQoKSBhY3Rpb25CdXR0b25BbGlnbiE6IEFsaWduVHlwZTtcclxuICBhbGlnbm1lbnRUeXBlID0gQWxpZ25UeXBlO1xyXG4gIGlzVXBsb2FkQnV0dG9uRGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBmb3JtQ29udHJvbE5hbWUgPSAnZmlsZVVwbG9hZCc7XHJcbiAgQElucHV0KCkgaXNGaWxlU2VsZWN0ZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzdXBwb3J0TWVzc2FnZSE6IHN0cmluZztcclxuICBASW5wdXQoKSBhbGxvd2VkRmlsZVR5cGVzOiBBbGxvd2VkRmlsZVR5cGVzW10gPSBbXTtcclxuICBASW5wdXQoKSBpc011bHRpRmlsZVVwbG9hZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGlzVXBsb2FkSW5Qcm9ncmVzcyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGZpbGVVcGxvYWRIZWFkaW5nITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzQWxsb3dBbnlGaWxlVHlwZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHZpZXdGaWxlc0Zvcm1hdCA9IFZpZXdGaWxlc0Zvcm1hdC5ERUZBVUxUO1xyXG4gIEBJbnB1dCgpIGlzVXBsb2FkQnV0dG9uTmVlZGVkID0gZmFsc2U7XHJcbiAgLy8gRGVmYXVsdCBtYXhpbXVtIGFsbG93ZWQgdXBsb2FkIGZpbGUgc2l6ZSBpcyAybWIuXHJcbiAgQElucHV0KCkgbWF4VXBsb2FkRmlsZVNpemUgPSAyO1xyXG4gIHByaXZhdGUgdXBsb2FkZWRTaXplVmFsdWUgPSAwO1xyXG4gIEBJbnB1dCgpIGZpbGVVcGxvYWRFcnJvclBvc2l0aW9uID0gJ2JvdHRvbSc7XHJcbiAgQElucHV0KCkgbWF4RmlsZXNVcGxvYWRMaW1pdDogbnVtYmVyID1cclxuICAgIHRoaXMuY29uc3RhbnRzPy5maWxlVXBsb2FkPy5saW1pdD8ubWF4RmlsZVVwbG9hZDtcclxuICBASW5wdXQoKSBtYXhGaWxlc1VwbG9hZExpbWl0RXJyb3JNZXNzYWdlID0gJyc7XHJcbiAgcHJpdmF0ZSBfZmlsZVVwbG9hZFN0YXR1cyE6IEZpbGVVcGxvYWRTdGF0dXM7XHJcblxyXG4gIEBJbnB1dCgpIGdldCBmaWxlVXBsb2FkU3RhdHVzKCk6IEZpbGVVcGxvYWRTdGF0dXMge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZpbGVVcGxvYWRTdGF0dXM7XHJcbiAgfVxyXG4gIHNldCBmaWxlVXBsb2FkU3RhdHVzKHZhbHVlOiBGaWxlVXBsb2FkU3RhdHVzKSB7XHJcbiAgICB0aGlzLl9maWxlVXBsb2FkU3RhdHVzID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCB1cGxvYWRlZFNpemUoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLnVwbG9hZGVkU2l6ZVZhbHVlO1xyXG4gIH1cclxuXHJcbiAgc2V0IHVwbG9hZGVkU2l6ZSh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnVwbG9hZGVkU2l6ZVZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG4gIF9maWxlRG93bmxvYWRDb25maWchOiBGaWxlRG93bmxvYWRDb25maWc7XHJcbiAgQElucHV0KClcclxuICBzZXQgZmlsZURvd25sb2FkQ29uZmlnKHZhbHVlOiBGaWxlRG93bmxvYWRDb25maWcpIHtcclxuICAgIHRoaXMuX2ZpbGVEb3dubG9hZENvbmZpZyA9IHZhbHVlO1xyXG4gIH1cclxuICBnZXQgZmlsZURvd25sb2FkQ29uZmlnKCk6IEZpbGVEb3dubG9hZENvbmZpZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmlsZURvd25sb2FkQ29uZmlnO1xyXG4gIH1cclxuICBAT3V0cHV0KCkgdXBsb2FkU2VsZWN0ZWRGaWxlcyA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZSB8IEZpbGVMaXN0PigpO1xyXG4gIEBPdXRwdXQoKSBkb3dubG9hZFNlbGVjdGVkRmlsZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZSB8IERvd25sb2FkRmlsZT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcclxuICAgIHB1YmxpYyBmb3JtVXRpbGl0eVNlcnZpY2U6IEZvcm1VdGlsaXR5U2VydmljZSxcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gICAgcHVibGljIGZpbGVVcGxvYWRTZXJ2aWNlOiBGaWxlVXBsb2FkU2VydmljZSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZW1wdHktZnVuY3Rpb25cclxuICApIHt9XHJcbiAgLyoqXHJcbiAgICogSW5pdGlhbGl6ZXMgY29tcG9uZW50IHByb3BlcnRpZXMgYW5kIHJldHJpZXZlcyBjb25maWd1cmF0aW9uLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRm9ybUZpZWxkID0gISF0aGlzLmNvbmZpZztcclxuICAgIHRoaXMuY29uZmlnID1cclxuICAgICAgdGhpcy5jb25maWcgPz9cclxuICAgICAgdGhpcy5mb3JtVXRpbGl0eVNlcnZpY2UuZ2V0Rm9ybUZpZWxkQ29uZmlnKFxyXG4gICAgICAgICdmaWxlVXBsb2FkJyxcclxuICAgICAgICBGb3JtQ29udHJvbFR5cGUuRklMRV9VUExPQURcclxuICAgICAgKTtcclxuICAgIHRoaXMuZ3JvdXAgPVxyXG4gICAgICB0aGlzLmdyb3VwID8/IHRoaXMuZm9ybVV0aWxpdHlTZXJ2aWNlLmdldEZvcm1Hcm91cCgnZmlsZVVwbG9hZCcpO1xyXG4gICAgdGhpcy5jb25maWcuc3VwcG9ydE1lc3NhZ2UgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uc3VwcG9ydE1lc3NhZ2UgPz8gdGhpcy5zdXBwb3J0TWVzc2FnZTtcclxuICAgIHRoaXMuaXNNdWx0aUZpbGVVcGxvYWQgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uaXNNdWx0aUZpbGVVcGxvYWQgPz8gdGhpcy5pc011bHRpRmlsZVVwbG9hZDtcclxuICAgIHRoaXMubWF4VXBsb2FkRmlsZVNpemUgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8ubWF4VXBsb2FkRmlsZVNpemUgPz8gdGhpcy5tYXhVcGxvYWRGaWxlU2l6ZTtcclxuICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlcyA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5hbGxvd2VkRmlsZVR5cGVzID8/IHRoaXMuYWxsb3dlZEZpbGVUeXBlcztcclxuICAgIHRoaXMuaXNBbGxvd0FueUZpbGVUeXBlID1cclxuICAgICAgdGhpcy5jb25maWc/LmlzQWxsb3dBbnlGaWxlVHlwZSA/PyB0aGlzLmlzQWxsb3dBbnlGaWxlVHlwZTtcclxuICAgIHRoaXMudmlld0ZpbGVzRm9ybWF0ID0gdGhpcy5jb25maWc/LnZpZXdGaWxlc0Zvcm1hdCA/PyB0aGlzLnZpZXdGaWxlc0Zvcm1hdDtcclxuICAgIHRoaXMuaXNVcGxvYWRCdXR0b25OZWVkZWQgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uaXNVcGxvYWRCdXR0b25OZWVkZWQgPz8gdGhpcy5pc1VwbG9hZEJ1dHRvbk5lZWRlZDtcclxuICAgIHRoaXMuYWN0aW9uQnV0dG9uQWxpZ24gPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uYWN0aW9uQnV0dG9uQWxpZ24gPz8gdGhpcy5hY3Rpb25CdXR0b25BbGlnbjtcclxuICAgIHRoaXMuZmlsZVVwbG9hZEVycm9yUG9zaXRpb24gPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uZmlsZVVwbG9hZEVycm9yUG9zaXRpb24gPz8gdGhpcy5maWxlVXBsb2FkRXJyb3JQb3NpdGlvbjtcclxuICAgIHRoaXMuZ2V0QWxsb3dlZEZpbGVGb3JtYXRTaXplTWVzc2FnZSgpO1xyXG4gICAgdGhpcy5maWxlVXBsb2FkSGVhZGluZyA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5maWxlVXBsb2FkSGVhZGluZyA/P1xyXG4gICAgICB0aGlzLmZpbGVVcGxvYWRIZWFkaW5nID8/XHJcbiAgICAgIHRoaXMuZmlsZVVwbG9hZExhYmVsLmZpbGVVcGxvYWQ7XHJcbiAgICB0aGlzLmNvbmZpZy5hbGxvd2VkRmlsZVR5cGVFcnJvck1lc3NhZ2UgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8uYWxsb3dlZEZpbGVUeXBlRXJyb3JNZXNzYWdlID8/XHJcbiAgICAgIHRoaXMuYWxsb3dlZEZpbGVUeXBlRXJyb3JNZXNzYWdlO1xyXG4gICAgdGhpcy5jb25maWcubWF4RmlsZVNpemVFcnJvck1lc3NhZ2UgPVxyXG4gICAgICB0aGlzLmNvbmZpZz8ubWF4RmlsZVNpemVFcnJvck1lc3NhZ2UgPz8gdGhpcy5tYXhGaWxlU2l6ZUVycm9yTWVzc2FnZTtcclxuICAgIHRoaXMuaXNGaWxlU2VsZWN0ZWQgPSB0aGlzLmNvbmZpZz8uaXNGaWxlU2VsZWN0ZWQgPz8gdGhpcy5pc0ZpbGVTZWxlY3RlZDtcclxuICAgIHRoaXMubWF4RmlsZXNVcGxvYWRMaW1pdCA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5tYXhGaWxlc1VwbG9hZExpbWl0ID8/IHRoaXMubWF4RmlsZXNVcGxvYWRMaW1pdDtcclxuICAgIHRoaXMubWF4RmlsZXNVcGxvYWRMaW1pdEVycm9yTWVzc2FnZSA9XHJcbiAgICAgIHRoaXMuY29uZmlnPy5tYXhGaWxlc1VwbG9hZExpbWl0RXJyb3JNZXNzYWdlID8/XHJcbiAgICAgIHRoaXMubWF4RmlsZXNVcGxvYWRMaW1pdEVycm9yTWVzc2FnZTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogRm9ybWF0cyBhbGxvd2VkIGZpbGUgZm9ybWF0IGFuZCBzaXplIG1lc3NhZ2UgaW4gcmVxdWlyZWQgZm9ybWF0LlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZ2V0QWxsb3dlZEZpbGVGb3JtYXRTaXplTWVzc2FnZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHN1cHBvcnRlZEZpbGVGb3JtYXRUZXh0ID0gdGhpcy5hbGxvd2VkRmlsZVR5cGVzLmpvaW4oJywgJyk7XHJcbiAgICB0aGlzLmFsbG93ZWRGaWxlVHlwZXNBbmRTaXplVGV4dCA9IGAke3RoaXMuZmlsZVVwbG9hZExhYmVsPy5hbGxvd2VkRmlsZVNpemUxfVxyXG4gICAgJHt0aGlzLm1heFVwbG9hZEZpbGVTaXplfWA7XHJcbiAgICBpZiAodGhpcy5pc011bHRpRmlsZVVwbG9hZCkge1xyXG4gICAgICB0aGlzLmFsbG93ZWRGaWxlVHlwZXNBbmRTaXplVGV4dCArPSBgICR7dGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/LmxhYmVsPy5tYn1gO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLmlzQWxsb3dBbnlGaWxlVHlwZSkge1xyXG4gICAgICB0aGlzLmFsbG93ZWRGaWxlVHlwZXNBbmRTaXplVGV4dCArPSBgJHt0aGlzLmZpbGVVcGxvYWRMYWJlbD8uYWxsb3dlZEZpbGVTaXplMn0gJHt0aGlzLmZpbGVVcGxvYWRMYWJlbD8uYWxsb3dlZEZpbGVGb3JtYXR9ICR7c3VwcG9ydGVkRmlsZUZvcm1hdFRleHR9LmA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgdGhlIHNlbGVjdGVkIGZpbGUocykgYW5kIGVtaXRzIEZpbGVVcGxvYWQgZXZlbnQgZW1pdHRlciBmb3IgdXBsb2FkaW5nIHRoZSBmaWxlKHMpLlxyXG4gICAqIEBwYXJhbSB7KEZpbGUgfCBGaWxlTGlzdCl9IGZpbGVcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGdldEZpbGUoZmlsZTogRmlsZSB8IEZpbGVMaXN0KTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkRmlsZXMgPSBbXTtcclxuICAgIGNvbnN0IGZpbGVVcGxvYWRGb3JtQ29udHJvbCA9IHRoaXMuZ3JvdXA/LmdldChcclxuICAgICAgdGhpcy5jb25maWc/LmNvbnRyb2xOYW1lID8/ICdmaWxlVXBsb2FkJ1xyXG4gICAgKTtcclxuICAgIGlmIChmaWxlVXBsb2FkRm9ybUNvbnRyb2wpIHtcclxuICAgICAgZmlsZVVwbG9hZEZvcm1Db250cm9sLm1hcmtBc0RpcnR5KCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5pc011bHRpRmlsZVVwbG9hZCkge1xyXG4gICAgICB0aGlzLnZhbGlkYXRlRmlsZShmaWxlKTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRoaXMuaXNWYWxpZEZpbGVUeXBlICYmXHJcbiAgICAgICAgdGhpcy5pc1ZhbGlkRmlsZVNpemUgJiZcclxuICAgICAgICB0aGlzLmlzVmFsaWRNYXhGaWxlVXBsb2FkTGltaXRcclxuICAgICAgKSB7XHJcbiAgICAgICAgaWYgKGZpbGUpIHtcclxuICAgICAgICAgIE9iamVjdC52YWx1ZXMoZmlsZSkuZm9yRWFjaCgoZmlsZUl0ZW06IEZpbGUpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVzPy5wdXNoKGZpbGVJdGVtKTtcclxuICAgICAgICAgICAgdGhpcy50b3RhbFNpemUgKz0gZmlsZUl0ZW0uc2l6ZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5zZWxlY3RlZEZpbGVzPy5sZW5ndGgpIHtcclxuICAgICAgICB0aGlzLmlzRmlsZVNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZEZpbGVzTmFtZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcclxuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsZXM/LmZvckVhY2goKGZpbGU6IEZpbGUsIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgIHNlbGVjdGVkRmlsZXNOYW1lcy5wdXNoKGZpbGUubmFtZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVOYW1lcyA9IHNlbGVjdGVkRmlsZXNOYW1lcz8uam9pbignLCAnKS50b1N0cmluZygpO1xyXG4gICAgICAgIHRoaXMuZ3JvdXBcclxuICAgICAgICAgIC5nZXQodGhpcy5jb25maWc/LmNvbnRyb2xOYW1lKVxyXG4gICAgICAgICAgPy5zZXRWYWx1ZSh0aGlzLnNlbGVjdGVkRmlsZU5hbWVzKTtcclxuICAgICAgICB0aGlzLmZpbGVVcGxvYWRCdG4uZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgICBpZiAodGhpcy5pc0Zvcm1GaWVsZClcclxuICAgICAgICAgIHRoaXMudXBsb2FkU2VsZWN0ZWRGaWxlcz8uZW1pdCh0aGlzLnNlbGVjdGVkRmlsZXMpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBmaWxlSXRlbSA9IE9iamVjdC52YWx1ZXMoZmlsZSlbMF07XHJcbiAgICAgIHRoaXMudmFsaWRhdGVGaWxlKGZpbGVJdGVtKTtcclxuICAgICAgaWYgKHRoaXMuaXNWYWxpZEZpbGVUeXBlICYmIHRoaXMuaXNWYWxpZEZpbGVTaXplKSB7XHJcbiAgICAgICAgdGhpcy5pc0ZpbGVTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVOYW1lcyA9IGZpbGVJdGVtLm5hbWU7XHJcbiAgICAgICAgdGhpcy50b3RhbFNpemUgPSBmaWxlSXRlbS5zaXplO1xyXG4gICAgICAgIHRoaXMuZmlsZVVwbG9hZFNlcnZpY2U/LmNvbnZlcnRGaWxlVG9CeXRlQXJyYXkoZmlsZUl0ZW0pO1xyXG4gICAgICAgIHRoaXMuZ3JvdXBcclxuICAgICAgICAgIC5nZXQodGhpcy5jb25maWcuY29udHJvbE5hbWUpXHJcbiAgICAgICAgICA/LnNldFZhbHVlKHRoaXMuc2VsZWN0ZWRGaWxlTmFtZXMpO1xyXG4gICAgICAgIGlmICh0aGlzLmlzRm9ybUZpZWxkKSB0aGlzLnVwbG9hZFNlbGVjdGVkRmlsZXMuZW1pdChmaWxlSXRlbSk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEZpbGVzID0gZmlsZTtcclxuICAgICAgICB0aGlzLmZpbGVVcGxvYWRCdG4uZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvKipcclxuICAgKiBWYWxpZGF0ZXMgdGhlIHNlbGVjdGVkIGZpbGUocykgZm9ybWF0IGFuZCBzaXplLlxyXG4gICAqIEBwYXJhbSB7KEZpbGUgfCBGaWxlTGlzdCl9IGZpbGVcclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIHZhbGlkYXRlRmlsZShmaWxlOiBGaWxlIHwgRmlsZUxpc3QpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNWYWxpZEZpbGVUeXBlID0gIXRoaXMuaXNBbGxvd0FueUZpbGVUeXBlXHJcbiAgICAgID8gdGhpcy5maWxlVXBsb2FkU2VydmljZS52YWxpZGF0ZUZpbGVUeXBlcyhcclxuICAgICAgICAgIGZpbGUsXHJcbiAgICAgICAgICB0aGlzLmFsbG93ZWRGaWxlVHlwZXMsXHJcbiAgICAgICAgICB0aGlzLmlzTXVsdGlGaWxlVXBsb2FkXHJcbiAgICAgICAgKVxyXG4gICAgICA6IHRydWU7XHJcbiAgICBpZiAodGhpcy5pc011bHRpRmlsZVVwbG9hZCkge1xyXG4gICAgICB0aGlzLmlzVmFsaWRNYXhGaWxlVXBsb2FkTGltaXQgPVxyXG4gICAgICAgIE9iamVjdC52YWx1ZXMoZmlsZSkubGVuZ3RoIDw9XHJcbiAgICAgICAgdGhpcy5jb25zdGFudHM/LmZpbGVVcGxvYWQ/LmxpbWl0Py5tYXhGaWxlVXBsb2FkO1xyXG4gICAgICBpZiAoIXRoaXMuaXNWYWxpZE1heEZpbGVVcGxvYWRMaW1pdCkge1xyXG4gICAgICAgIHRoaXMuZ3JvdXA/LmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpPy5zZXRFcnJvcnMoe1xyXG4gICAgICAgICAgbWF4RmlsZXNVcGxvYWRMaW1pdFJlYWNoZWQ6IHRydWUsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICghdGhpcy5pc1ZhbGlkRmlsZVR5cGUpIHtcclxuICAgICAgdGhpcy5ncm91cD8uZ2V0KHRoaXMuY29uZmlnPy5jb250cm9sTmFtZSk/LnNldEVycm9ycyh7XHJcbiAgICAgICAgaW52YWxpZEZpbGVUeXBlOiB0cnVlLFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMuaXNWYWxpZEZpbGVTaXplID0gdGhpcy5maWxlVXBsb2FkU2VydmljZS52YWxpZGF0ZUZpbGVTaXplKFxyXG4gICAgICBmaWxlLFxyXG4gICAgICB0aGlzLm1heFVwbG9hZEZpbGVTaXplLFxyXG4gICAgICB0aGlzLmlzTXVsdGlGaWxlVXBsb2FkXHJcbiAgICApO1xyXG4gICAgaWYgKCF0aGlzLmlzVmFsaWRGaWxlU2l6ZSkge1xyXG4gICAgICB0aGlzLmdyb3VwPy5nZXQodGhpcy5jb25maWc/LmNvbnRyb2xOYW1lKT8uc2V0RXJyb3JzKHtcclxuICAgICAgICBtYXhGaWxlU2l6ZTogdHJ1ZSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEluaXRpYXRlcyB0aGUgZmlsZSB1cGxvYWQgcHJvY2VzcyBmb3IgaW5kZXBlbmRlbnQgZmlsZSB1cGxvYWQgY29tcG9uZW50LlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25VcGxvYWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnVwbG9hZFNlbGVjdGVkRmlsZXMuZW1pdCh0aGlzLnNlbGVjdGVkRmlsZXMpO1xyXG4gICAgaWYgKHRoaXMuZmlsZVVwbG9hZFNlcnZpY2U/LmdldEZpbGVVcGxvYWRTdGF0dXMoKSkge1xyXG4gICAgICB0aGlzLnVwbG9hZGVkRmlsZXMgPSB0aGlzLnNlbGVjdGVkRmlsZXM7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIENsZWFycyB0aGUgZm9ybSBncm91cCBjb250cm9sIHZhbHVlIG9mIHR5cGUgaW5wdXQgYW5kIHJlc2V0cyBvdGhlciBmaWxlIHVwbG9hZCBwcm9wZXJ0aWVzLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgcmVzZXRVcGxvYWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZpbGVVcGxvYWRTZXJ2aWNlLmNsZWFyRmlsZUJ5dGVBcnJheSgpO1xyXG4gICAgdGhpcy51cGxvYWRlZEZpbGVzID0gW107XHJcbiAgICB0aGlzLmlzVXBsb2FkSW5Qcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVOYW1lcyA9ICcnO1xyXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVzID0gW107XHJcbiAgICB0aGlzLmlzRmlsZVNlbGVjdGVkID0gZmFsc2U7XHJcbiAgICB0aGlzLmdyb3VwLmdldCh0aGlzLmNvbmZpZz8uY29udHJvbE5hbWUpPy5zZXRWYWx1ZSgnJyk7XHJcbiAgICB0aGlzLmZpbGVVcGxvYWRCdG4uZGlzYWJsZWQgPSB0cnVlO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBSZW1vdmVzIHRoZSBzZWxlY3RlZCBmaWxlIGZyb20gdGhlIHVwbG9hZGVkIGZpbGVzIGxpc3QuXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBvbkRlbGV0ZUZpbGUoZmlsZTogRmlsZSwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy50b3RhbFNpemUgPSAwO1xyXG4gICAgdGhpcy51cGxvYWRlZEZpbGVzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIEZvciB0YWIga2V5IGtleWRvd24gZXZlbnQgaXQgcGFzc2VzIGV2ZW50IGFuZCByZXN0cmljdHMgb3RoZXIga2V5cyBmcm9tIGtleWJvYXJkLlxyXG4gICAqIEBwYXJhbSB7S2V5Ym9hcmRFdmVudH0gZXZlbnQgLUtleWRvd24gZXZlbnQgb2JqZWN0LlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQua2V5ICE9PSAnVGFiJykgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogRW1pdHMgZmlsZSBkb3dubG9hZCBldmVudCBlbWl0dGVyLlxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZG93bmxvYWRGaWxlKGZpbGU6IEZpbGUgfCBEb3dubG9hZEZpbGUpOiB2b2lkIHtcclxuICAgIHRoaXMuZG93bmxvYWRTZWxlY3RlZEZpbGUuZW1pdCh0aGlzLnNlbGVjdGVkRmlsZXMpO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBSZXR1cm5zIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgZmlsZSBsaXN0LlxyXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBpbmRleFxyXG4gICAqIEByZXR1cm4geyhudW1iZXIgfCBzdHJpbmcpfVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIpOiBudW1iZXIgfCBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGluZGV4O1xyXG4gIH1cclxuICAvKipcclxuICAgKiBUcmlnZ2VycyBvbiBicm93c2UgZWxlbWVudCBjbGlja2VkXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBmaWxlQ2xpY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmZpbGVGaWVsZC5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XHJcbiAgfVxyXG4gIC8qKlxyXG4gICAqIERpc3BsYXkgY29tbWEgc2VwYXJhdGVkIGZhaWxlZCBmaWxlIG5hbWVzXHJcbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gZmlsZXNOYW1lc1VwbG9hZEZhaWxlZFxyXG4gICAqIEByZXR1cm4geyp9ICB7c3RyaW5nfVxyXG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XHJcbiAgICovXHJcbiAgZGlzcGxheUZpbGVOYW1lcyhmaWxlTmFtZXM6IHN0cmluZ1tdKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBmaWxlTmFtZXMgJiYgZmlsZU5hbWVzLmxlbmd0aCA/IGZpbGVOYW1lcy5qb2luKCcsJykgOiAnJztcclxuICB9XHJcbiAgLyoqXHJcbiAgICogUmVtb3ZlcyBmaWxlIGZyb20gcmVzcGVjdGl2ZSBwcm9wZXJ0aWVzIHVzZWQuXHJcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICByZW1vdmVGaWxlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRGaWxlcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgY29uc3QgZmlsZU5hbWVzOiBzdHJpbmdbXSA9IHRoaXMuc2VsZWN0ZWRGaWxlTmFtZXMuc3BsaXQoJywnKTtcclxuICAgIGZpbGVOYW1lcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVOYW1lcyA9IGZpbGVOYW1lcy5qb2luKCcsJyk7XHJcbiAgICB0aGlzLnVwbG9hZFNlbGVjdGVkRmlsZXMuZW1pdCh0aGlzLnNlbGVjdGVkRmlsZXMpO1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRGaWxlcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgdGhpcy5yZXNldFVwbG9hZCgpO1xyXG4gICAgICB0aGlzLmZpbGVVcGxvYWRTdGF0dXMuZmlsZXNVcGxvYWRlZFN1Y2Nlc3NmdWxseUNvdW50ID0gMDtcclxuICAgICAgdGhpcy5maWxlVXBsb2FkU3RhdHVzLmZpbGVzTmFtZXNVcGxvYWRGYWlsZWQgPSBbXTtcclxuICAgICAgdGhpcy5maWxlVXBsb2FkU3RhdHVzLmFscmVhZHlFeGlzdHNGaWxlcyA9IFtdO1xyXG4gICAgICB0aGlzLmlzVXBsb2FkQnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuICAvKipcclxuICAgKiBEaXNhYmxlZCBmaWxlIHVwbG9hZCBidXR0b25cclxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxyXG4gICAqL1xyXG4gIGRpc2FibGVVcGxvYWRCdXR0b24oKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNVcGxvYWRCdXR0b25EaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLmlzVXBsb2FkQnV0dG9uRGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQmFzZWQgb24gaXNNdWx0aUZpbGVVcGxvYWQgZmxhZyByZXR1cm4gZmlsZXMgdG8gZG93bmxvYWQuXHJcbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcclxuICAgKi9cclxuICBnZXRGaWxlc1RvRG93bmxvYWQoKTogRG93bmxvYWRGaWxlW10ge1xyXG4gICAgaWYgKHRoaXMuaXNNdWx0aUZpbGVVcGxvYWQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZmlsZVVwbG9hZFN0YXR1cy51cGxvYWRlZEZpbGVzO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMudXBsb2FkZWRGaWxlcztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIlxyXG4gIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkXCJcclxuICBbbmdDbGFzc109XCJcclxuICAgIGNvbmZpZy5pc0xhYmVsQWxpZ25lZExlZnRcclxuICAgICAgPyAnaWVlZXNhLWZpbGUtdXBsb2FkX19sYWJlbC1sZWZ0J1xyXG4gICAgICA6ICdpZWVlc2EtZmlsZS11cGxvYWRfX2xhYmVsLXRvcCdcclxuICBcIlxyXG4+XHJcbiAgPG1hdC1sYWJlbCBjbGFzcz1cImllZWVzYS1ib2R5LXNtLTE0IGllZWVzYS1maWxlLXVwbG9hZF9fbGFiZWxcIj57e1xyXG4gICAgY29uZmlnLmxhYmVsXHJcbiAgfX08L21hdC1sYWJlbD5cclxuICA8aWVlZXNhLWZpbGUtZG93bmxvYWRcclxuICAgIFtmaWxlRG93bmxvYWRDb25maWddPVwiZmlsZURvd25sb2FkQ29uZmlnXCJcclxuICAgIFtkb3dubG9hZEZpbGVzXT1cImdldEZpbGVzVG9Eb3dubG9hZCgpXCJcclxuICAgIChkb3dubG9hZFNlbGVjdGVkRmlsZSk9XCJkb3dubG9hZEZpbGUoJGV2ZW50KVwiXHJcbiAgPjwvaWVlZXNhLWZpbGUtZG93bmxvYWQ+XHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3VwbG9hZCBwLTRcIlxyXG4gICAgaWVlZXNhRmlsZVVwbG9hZFxyXG4gICAgKGZpbGVEcm9wcGVkKT1cImdldEZpbGUoJGV2ZW50KVwiXHJcbiAgPlxyXG4gICAgPHAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3VwbG9hZF9faGVhZGluZyBtLTAgaWVlZXNhLWxhYmVsLWxnLWJvbGQtMTZcIj5cclxuICAgICAge3sgZmlsZVVwbG9hZEhlYWRpbmcgfX1cclxuICAgIDwvcD5cclxuICAgIDxkaXYgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3VwbG9hZF9fYnJvd3NlLWZpbGVzXCI+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtYnV0dG9uXHJcbiAgICAgICAgKGNsaWNrKT1cImZpbGVDbGljaygpXCJcclxuICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fYnJvd3NlLWJ0biBtYXQtdGVydGlhcnktYnV0dG9uXCJcclxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImZpbGVVcGxvYWRBcmlhTGFiZWwuYnJvd3NlRmlsZXNcIlxyXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJmaWxlVXBsb2FkU3RhdHVzPy5pc1VwbG9hZGluZ1N0YXJ0XCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7IGZpbGVVcGxvYWRMYWJlbC5icm93c2VGaWxlcyB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTXVsdGlGaWxlVXBsb2FkXCI+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXHJcbiAgICAgICAgICAjZmlsZUZpZWxkXHJcbiAgICAgICAgICAoY2hhbmdlKT1cImdldEZpbGUoJGFueSgkZXZlbnQpLnRhcmdldC5maWxlcylcIlxyXG4gICAgICAgICAgaGlkZGVuXHJcbiAgICAgICAgICBbYWNjZXB0XT1cImFsbG93ZWRGaWxlVHlwZXNcIlxyXG4gICAgICAgICAgW211bHRpcGxlXT1cInRydWVcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImZpbGVVcGxvYWRTdGF0dXM/LmlzVXBsb2FkaW5nU3RhcnRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTXVsdGlGaWxlVXBsb2FkXCI+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXHJcbiAgICAgICAgICAjZmlsZUZpZWxkXHJcbiAgICAgICAgICAoY2hhbmdlKT1cImdldEZpbGUoJGFueSgkZXZlbnQpLnRhcmdldC5maWxlcylcIlxyXG4gICAgICAgICAgaGlkZGVuXHJcbiAgICAgICAgICBbYWNjZXB0XT1cImFsbG93ZWRGaWxlVHlwZXNcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImZpbGVVcGxvYWRTdGF0dXM/LmlzVXBsb2FkaW5nU3RhcnRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPHBcclxuICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fYWxsb3dlZC1maWxlLXRleHQgbS0wIGllZWVzYS1sYWJlbC1tZC0xNFwiXHJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhbGxvd2VkRmlsZVR5cGVzQW5kU2l6ZVRleHRcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgYWxsb3dlZEZpbGVUeXBlc0FuZFNpemVUZXh0IH19XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkLXdyYXBwZXIgZC1mbGV4XCJcclxuICAgICAgKm5nSWY9XCJpc0ZpbGVTZWxlY3RlZFwiXHJcbiAgICA+XHJcbiAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInZpZXdGaWxlc0Zvcm1hdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkZWZhdWx0J1wiPlxyXG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fdXBsb2FkLXdyYXBwZXJfX2lucHV0LWZpZWxkIGllZWVzYS1ib2R5LWxnLTE2XCJcclxuICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgdmFsdWU9XCJzZWxlY3RlZEZpbGVOYW1lc1wiXHJcbiAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImNvbmZpZy5wbGFjZWhvbGRlciA/PyAnJ1wiXHJcbiAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb25maWcuY29udHJvbE5hbWVcIlxyXG4gICAgICAgICAgICAgIFtuYW1lXT1cImNvbmZpZy5jb250cm9sTmFtZVwiXHJcbiAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcclxuICAgICAgICAgICAgICAgIGNvbmZpZy5hcmlhTGFiZWwgPz8gZmlsZVVwbG9hZEFyaWFMYWJlbC5maWxlVXBsb2FkSW5wdXRcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgIFthcmlhLWRlc2NyaWJlZGJ5XT1cImNvbmZpZy5hcmlhRGVzY3JpYmVkQnlJZCA/PyAnJ1wiXHJcbiAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX191cGxvYWQtd3JhcHBlci0tY2xlYXItaWNvbi1idG5cIlxyXG4gICAgICAgICAgICAgIG1hdFN1ZmZpeFxyXG4gICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiZmlsZVVwbG9hZEFyaWFMYWJlbC5yZW1vdmVGaWxlSWNvblwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInJlc2V0VXBsb2FkKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmEtcmVndWxhciBmYS1jaXJjbGUteG1hcmsgaWVlZXNhLWlucHV0LWZpZWxkLXVwbG9hZF9faWNvbi0tY2xlYXJcIlxyXG4gICAgICAgICAgICAgID48L2k+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgIDxpZWVlc2EtaWNvbi1idXR0b25cclxuICAgICAgICAgICAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3VwbG9hZC13cmFwcGVyLS11cGxvYWQtYnRuIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIlxyXG4gICAgICAgICAgICBbaWNvbkJ1dHRvbl09XCJmaWxlVXBsb2FkQnRuXCJcclxuICAgICAgICAgICAgW2lzTGFiZWxOZWVkZWRdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICAoaWNvbkJ1dHRvbkNsaWNrKT1cIm9uVXBsb2FkKClcIlxyXG4gICAgICAgICAgICAqbmdJZj1cIiFpc0Zvcm1GaWVsZFwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2llZWVzYS1pY29uLWJ1dHRvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInYm90dG9tJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImllZWVzYS12aWV3LWZpbGVzLWJvdHRvbS1mb3JtYXRcIj5cclxuICAgICAgICAgICAgPHBcclxuICAgICAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fcHJvZ3Jlc3NfX3RleHRcIlxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICAgICBmaWxlVXBsb2FkU3RhdHVzLmZpbGVzVXBsb2FkZWRTdWNjZXNzZnVsbHlDb3VudCAmJlxyXG4gICAgICAgICAgICAgICAgaXNNdWx0aUZpbGVVcGxvYWRcclxuICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge3tcclxuICAgICAgICAgICAgICAgIGZpbGVVcGxvYWRTdGF0dXMuZmlsZXNVcGxvYWRlZFN1Y2Nlc3NmdWxseUNvdW50ICtcclxuICAgICAgICAgICAgICAgICAgXCIgXCIgK1xyXG4gICAgICAgICAgICAgICAgICBmaWxlVXBsb2FkTGFiZWw/Lm9mICtcclxuICAgICAgICAgICAgICAgICAgXCIgXCIgK1xyXG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZEZpbGVzLmxlbmd0aCArXHJcbiAgICAgICAgICAgICAgICAgIFwiIFwiICtcclxuICAgICAgICAgICAgICAgICAgZmlsZVVwbG9hZExhYmVsPy5maWxlc1VwbG9hZGVkXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IHB0LTEgbS0wIGllZWVzYS1sYWJlbC1tZC0xNCBhbGlnbi1pdGVtcy1jZW50ZXJcIlxyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWxlIG9mIHNlbGVjdGVkRmlsZXM7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge3sgZmlsZT8ubmFtZSB9fVxyXG4gICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3VwbG9hZC13cmFwcGVyLS1jbGVhci1pY29uLWJ0blwiXHJcbiAgICAgICAgICAgICAgICBtYXRTdWZmaXhcclxuICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJmaWxlVXBsb2FkQXJpYUxhYmVsLnJlbW92ZUZpbGVJY29uXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVGaWxlKGkpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8aVxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZhLXJlZ3VsYXIgZmEtY2lyY2xlLXhtYXJrIGllZWVzYS1pbnB1dC1maWVsZC11cGxvYWRfX2ljb24tLWNsZWFyXCJcclxuICAgICAgICAgICAgICAgID48L2k+XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHBcclxuICAgICAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAgICAgZmlsZVVwbG9hZFN0YXR1cy5maWxlc05hbWVzVXBsb2FkRmFpbGVkICYmXHJcbiAgICAgICAgICAgICAgICBmaWxlVXBsb2FkU3RhdHVzLmZpbGVzTmFtZXNVcGxvYWRGYWlsZWQubGVuZ3RoICYmXHJcbiAgICAgICAgICAgICAgICBpc011bHRpRmlsZVVwbG9hZFxyXG4gICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX2Vycm9yX190ZXh0XCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIHt7IGRpc2FibGVVcGxvYWRCdXR0b24oKSB9fVxyXG4gICAgICAgICAgICAgIHt7XHJcbiAgICAgICAgICAgICAgICBmaWxlVXBsb2FkTGFiZWw/LnVwbG9hZEZvciArXHJcbiAgICAgICAgICAgICAgICAgIFwiIFwiICtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheUZpbGVOYW1lcyhmaWxlVXBsb2FkU3RhdHVzLmZpbGVzTmFtZXNVcGxvYWRGYWlsZWQpICtcclxuICAgICAgICAgICAgICAgICAgXCIgXCIgK1xyXG4gICAgICAgICAgICAgICAgICBmaWxlVXBsb2FkTGFiZWw/LnVwbG9hZEVycm9yTXNnXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cFxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICAgICAgICBmaWxlVXBsb2FkU3RhdHVzLmFscmVhZHlFeGlzdHNGaWxlcyAmJlxyXG4gICAgICAgICAgICAgICAgZmlsZVVwbG9hZFN0YXR1cy5hbHJlYWR5RXhpc3RzRmlsZXMubGVuZ3RoICYmXHJcbiAgICAgICAgICAgICAgICBpc011bHRpRmlsZVVwbG9hZFxyXG4gICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX2Vycm9yX190ZXh0XCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIHt7IGRpc2FibGVVcGxvYWRCdXR0b24oKSB9fVxyXG4gICAgICAgICAgICAgIHt7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5RmlsZU5hbWVzKGZpbGVVcGxvYWRTdGF0dXMuYWxyZWFkeUV4aXN0c0ZpbGVzKSArXHJcbiAgICAgICAgICAgICAgICAgIFwiIFwiICtcclxuICAgICAgICAgICAgICAgICAgZmlsZVVwbG9hZExhYmVsPy5maWxlQWxyZWFkeUV4aXN0c1xyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0Zvcm1GaWVsZFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWVlZXNhLWZpbGUtdXBsb2FkX19wcm9ncmVzc1wiICpuZ0lmPVwiaXNVcGxvYWRJblByb2dyZXNzXCI+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJpZWVlc2EtZmlsZS11cGxvYWRfX3Byb2dyZXNzX190ZXh0XCI+XHJcbiAgICAgICAgICB7eyBmaWxlVXBsb2FkTGFiZWw/LnVwbG9hZFByb2dyZXNzIH19XHJcbiAgICAgICAgPC9wPlxyXG4gICAgICAgIDxtYXQtcHJvZ3Jlc3MtYmFyXHJcbiAgICAgICAgICBjbGFzcz1cImllZWVzYS1maWxlLXVwbG9hZF9fcHJvZ3Jlc3MtLWJhclwiXHJcbiAgICAgICAgICBtb2RlPVwiZGV0ZXJtaW5hdGVcIlxyXG4gICAgICAgICAgW3ZhbHVlXT1cInVwbG9hZGVkU2l6ZVwiXHJcbiAgICAgICAgPjwvbWF0LXByb2dyZXNzLWJhcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxpZWVlc2EtZm9ybS1lcnJvclxyXG4gICAgICBbaGlkZGVuXT1cImZpbGVVcGxvYWRFcnJvclBvc2l0aW9uICE9PSAnbWlkZGxlJ1wiXHJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIlxyXG4gICAgICBbY29uZmlnXT1cImNvbmZpZ1wiXHJcbiAgICA+PC9pZWVlc2EtZm9ybS1lcnJvcj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIiAqbmdJZj1cImlzVXBsb2FkQnV0dG9uTmVlZGVkICYmIGlzRmlsZVNlbGVjdGVkXCI+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cImNvbC0xMlwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgJ2p1c3RpZnktY29udGVudC1lbmQnOiBhY3Rpb25CdXR0b25BbGlnbiA9PT0gYWxpZ25tZW50VHlwZS5MRUZULFxyXG4gICAgICAgICAgJ2p1c3RpZnktY29udGVudC1jZW50ZXInOiBhY3Rpb25CdXR0b25BbGlnbiA9PT0gYWxpZ25tZW50VHlwZS5NSURETEUsXHJcbiAgICAgICAgICAnanVzdGlmeS1jb250ZW50LXN0YXJ0JzogYWN0aW9uQnV0dG9uQWxpZ24gPT09IGFsaWdubWVudFR5cGUuUklHSFQsXHJcbiAgICAgICAgfVwiXHJcbiAgICAgID5cclxuICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCJpc1VwbG9hZEJ1dHRvbkRpc2FibGVkXCJcclxuICAgICAgICAgIG1hdC1idXR0b25cclxuICAgICAgICAgIGNsYXNzPVwibWF0LXByaW1hcnktYnV0dG9uIGllZWVzYS1keW5hbWljLWZvcm1fX2FjdGlvbnMtLXJpZ2h0LWJ0blwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzRmlsZVNlbGVjdGVkIHx8IGZpbGVVcGxvYWRTdGF0dXM/LmlzVXBsb2FkaW5nU3RhcnRcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7IGZpbGVVcGxvYWRMYWJlbD8udXBsb2FkIH19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48aWVlZXNhLWZvcm0tZXJyb3JcclxuICBbaGlkZGVuXT1cImZpbGVVcGxvYWRFcnJvclBvc2l0aW9uICE9PSAnYm90dG9tJ1wiXHJcbiAgW2Zvcm1Hcm91cF09XCJncm91cFwiXHJcbiAgW2NvbmZpZ109XCJjb25maWdcIlxyXG4+PC9pZWVlc2EtZm9ybS1lcnJvcj5cclxuPGllZWVzYS1mb3JtLXN1cHBvcnQtdGV4dFxyXG4gIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIlxyXG4gIFtjb25maWddPVwiY29uZmlnXCJcclxuPjwvaWVlZXNhLWZvcm0tc3VwcG9ydC10ZXh0PlxyXG4iXX0=
@@ -61,6 +61,7 @@ export * from './lib/models/dynamic-properties.model';
61
61
  export * from './lib/models/event-emit-type.model';
62
62
  export * from './lib/models/field-config.model';
63
63
  export * from './lib/models/file-attachment.model';
64
+ export * from './lib/models/file-download-config.model';
64
65
  export * from './lib/models/footer-config.model';
65
66
  export * from './lib/models/form-control-types.model';
66
67
  export * from './lib/models/form-field.model';
@@ -108,4 +109,4 @@ export * from './lib/services/datepicker.service';
108
109
  export * from './lib/services/form-utility.service';
109
110
  export * from './lib/services/file-upload.service';
110
111
  export * from './lib/presentation.module';
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLGdGQUFnRixDQUFDO0FBRS9GLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxrRUFBa0UsQ0FBQztBQUVqRixjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsc0NBQXNDLENBQUM7QUFFckQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsb0NBQW9DLENBQUM7QUFFbkQsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBwcmVzZW50YXRpb25cclxuICovXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0ZS1waWNrZXIvZGF0ZS1waWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci1oZWFkZXIvZGF0ZS1waWNrZXItaGVhZGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2R5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3JtLWVycm9yL2Zvcm0tZXJyb3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3JtLXN1cHBvcnQtdGV4dC9mb3JtLXN1cHBvcnQtdGV4dC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xpc3QvbGlzdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9kYWwtY29uZmlybWF0aW9uL21vZGFsLWNvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24tbWVudS9uYXZpZ2F0aW9uLW1lbnUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zZWFyY2gvc2VhcmNoLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RleHQtYXJlYS90ZXh0LWFyZWEuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90b2dnbGUtYnV0dG9uL3RvZ2dsZS1idXR0b24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy93ZWxjb21lL3dlbGNvbWUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGlwcy9jaGlwcy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sb2FkZXIvbG9hZGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZGF0YS10YWJsZS9kYXRhLXRhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGlsZS90aWxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGltZS1waWNrZXIvdGltZS1waWNrZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90YWJzL3RhYnMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zbGlkZS10b2dnbGUvc2xpZGUtdG9nZ2xlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2FyZC9jYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmlsZS1kb3dubG9hZC9maWxlLWRvd25sb2FkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2luYWN0aXZlLXRlbmFudC9pbmFjdGl2ZS10ZW5hbnQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbWFnZS1wcmV2aWV3L2ltYWdlLXByZXZpZXcuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yaWNoLXRleHQtZWRpdG9yL3JpY2gtdGV4dC1lZGl0b3IuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QtYXV0b2NvbXBsZXRlL211bHRpLXNlbGVjdC1hdXRvY29tcGxldGUuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZHluYW1pYy1mb3JtLWZpZWxkL2R5bmFtaWMtZm9ybS1maWVsZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3NldC1iYWNrZ3JvdW5kL3NldC1iYWNrZ3JvdW5kLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvdGV4dC10cnVuY2F0ZWQvdGV4dC10cnVuY2F0ZWQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL29ic2VydmUtZG9tLWNoYW5nZS9vYnNlcnZlLWRvbS1jaGFuZ2UuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hbGlnbi10eXBlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2FwcC1jb25maWctaW5mby5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hdXRvY29tcGxldGUtb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NhbGVuZGFyLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoZWNrYm94LW9wdGlvbi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jb25maXJtYXRpb24tbW9kYWwtZGF0YS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRlLXBpY2tlci5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kZWxldGUtZmlsZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kb3dubG9hZC1maWxlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2R5bmFtaWMtcHJvcGVydGllcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9ldmVudC1lbWl0LXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmllbGQtY29uZmlnLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtYXR0YWNobWVudC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb290ZXItY29uZmlnLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tY29udHJvbC10eXBlcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb3JtLWZpZWxkLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tZ3JpZC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9mb3JtLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2hlYWRlci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWNvbi1idXR0b24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbGVnZW5kLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2xpbmstdHlwZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9saXN0LWl0ZW0ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbWVudS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9uYXZpZ2F0aW9uLW1lbnUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcmFkaW8tb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlYXJjaC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3Qtb3BlbmVkLXN0YXRlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlbGVjdC1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2VsZWN0ZWQtZGF0ZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3RlZC10aW1lLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90b2dnbGUtYnV0dG9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NoaXAtb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3BhZ2luYXRvci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdGFibGUtYWN0aW9ucy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWJsZS1zY2hlbWEubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYnJlYWRjcnVtYi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90aWxlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtdXBsb2FkLXJlc3BvbnNlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtdXBsb2FkLXN0YXR1cy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9maWx0ZXJzLW9wdGlvbnMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcHJvZmlsZS1tZW51Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NsaWRlLXRvZ2dsZS1vcHRpb25zLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2J1dHRvbi10eXBlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NhcmQtYnV0dG9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NhcmQtaW5mby5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jb2xvci1mb3JtYXQubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYWxsb3dlZC1maWxlLXR5cGVzLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtdXBsb2FkLXBheWxvYWQtbW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcHJlc2lnbmVkLXVybC1yZXMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcmVzcG9uc2UubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYWNjb3JkaW9uLWluZm8ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaW5hY3RpdmUtdGVuYW50Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLWNvbHVtbi1tZW51LWluZm8ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdmlldy1maWxlcy1mb3JtYXQubW9kZWwnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZGF0ZXBpY2tlci5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZm9ybS11dGlsaXR5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9maWxlLXVwbG9hZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3ByZXNlbnRhdGlvbi5tb2R1bGUnO1xyXG4iXX0=
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ByZXNlbnRhdGlvbi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNEQUFz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Ki9cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyLWhlYWRlci9kYXRlLXBpY2tlci1oZWFkZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvcm0tc3VwcG9ydC10ZXh0L2Zvcm0tc3VwcG9ydC10ZXh0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ljb24tYnV0dG9uL2ljb24tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5wdXQvaW5wdXQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbGlzdC9saXN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC1jb25maXJtYXRpb24vbW9kYWwtY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1tZW51L25hdmlnYXRpb24tbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yYWRpby9yYWRpby5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGV4dC1hcmVhL3RleHQtYXJlYS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvZ2dsZS1idXR0b24vdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3dlbGNvbWUvd2VsY29tZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kYXRhLXRhYmxlL2RhdGEtdGFibGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90aWxlL3RpbGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90aW1lLXBpY2tlci90aW1lLXBpY2tlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RhYnMvdGFicy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NsaWRlLXRvZ2dsZS9zbGlkZS10b2dnbGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9maWxlLWRvd25sb2FkL2ZpbGUtZG93bmxvYWQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hY2NvcmRpb24vYWNjb3JkaW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW5hY3RpdmUtdGVuYW50L2luYWN0aXZlLXRlbmFudC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ltYWdlLXByZXZpZXcvaW1hZ2UtcHJldmlldy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1lZGl0b3IvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL211bHRpLXNlbGVjdC1hdXRvY29tcGxldGUvbXVsdGktc2VsZWN0LWF1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9keW5hbWljLWZvcm0tZmllbGQvZHluYW1pYy1mb3JtLWZpZWxkLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2V0LWJhY2tncm91bmQvc2V0LWJhY2tncm91bmQuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy90ZXh0LXRydW5jYXRlZC90ZXh0LXRydW5jYXRlZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvb2JzZXJ2ZS1kb20tY2hhbmdlL29ic2VydmUtZG9tLWNoYW5nZS5kaXJlY3RpdmUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2FsaWduLXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYXBwLWNvbmZpZy1pbmZvLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2F1dG9jb21wbGV0ZS1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2FsZW5kYXIubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2hlY2tib3gtb3B0aW9uLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NvbmZpcm1hdGlvbi1tb2RhbC1kYXRhLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGUtcGlja2VyLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RlbGV0ZS1maWxlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Rvd25sb2FkLWZpbGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZHluYW1pYy1wcm9wZXJ0aWVzLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2V2ZW50LWVtaXQtdHlwZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9maWVsZC1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS1hdHRhY2htZW50Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbGUtZG93bmxvYWQtY29uZmlnLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvb3Rlci1jb25maWcubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZm9ybS1jb250cm9sLXR5cGVzLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0tZmllbGQubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZm9ybS1ncmlkLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaGVhZGVyLWNvbmZpZy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9pY29uLWJ1dHRvbi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9sZWdlbmQubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbGluay10eXBlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2xpc3QtaXRlbS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9tZW51Lm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL25hdmlnYXRpb24tbWVudS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9yYWRpby1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2VhcmNoLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlbGVjdC1vcGVuZWQtc3RhdGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2VsZWN0LW9wdGlvbi5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZWxlY3RlZC1kYXRlLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NlbGVjdGVkLXRpbWUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdGFiLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RvZ2dsZS1idXR0b24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2hpcC1vcHRpb24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcGFnaW5hdG9yLWNvbmZpZy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90YWJsZS1hY3Rpb25zLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RhYmxlLXNjaGVtYS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9icmVhZGNydW1iLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RpbGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcmVzcG9uc2UubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtc3RhdHVzLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZpbHRlcnMtb3B0aW9ucy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9wcm9maWxlLW1lbnUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2xpZGUtdG9nZ2xlLW9wdGlvbnMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYnV0dG9uLXR5cGUubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2FyZC1idXR0b24ubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2FyZC1pbmZvLm1vZGVsJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2NvbG9yLWZvcm1hdC5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hbGxvd2VkLWZpbGUtdHlwZXMubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmlsZS11cGxvYWQtcGF5bG9hZC1tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9maWxlLXVwbG9hZC1wcmVzaWduZWQtdXJsLXJlcy5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9maWxlLXVwbG9hZC1yZXNwb25zZS5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9hY2NvcmRpb24taW5mby5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9pbmFjdGl2ZS10ZW5hbnQubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdGFibGUtY29sdW1uLW1lbnUtaW5mby5tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy92aWV3LWZpbGVzLWZvcm1hdC5tb2RlbCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9kYXRlcGlja2VyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9mb3JtLXV0aWxpdHkuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2ZpbGUtdXBsb2FkLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJlc2VudGF0aW9uLm1vZHVsZSc7XHJcbiJdfQ==