@alauda-fe/common 1.4.0 → 1.4.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.
- package/api/auth-api.service.d.ts +14 -0
- package/api/platform-ui.service.d.ts +1 -0
- package/api/public-api.d.ts +1 -0
- package/array-form-table/form/component.d.ts +7 -3
- package/assets/icons/icon-refresh-drag.svg +1 -0
- package/authorization/interceptor.service.d.ts +2 -0
- package/authorization/public-api.d.ts +1 -0
- package/authorization/session-manage.service.d.ts +2 -4
- package/authorization/state.service.d.ts +9 -8
- package/authorization/storage-token.d.ts +4 -10
- package/core/abstract/base-nested-form-control.d.ts +1 -1
- package/core/directives/feature-gate.directive.d.ts +2 -1
- package/core/directives/scroll-to-first-invalid.directive.d.ts +1 -1
- package/core/pipes/minimum-format.pipe.d.ts +1 -1
- package/core/services/feature-gate.service.d.ts +2 -1
- package/core/types/commons.d.ts +2 -0
- package/core/types/k8s/crd.d.ts +64 -0
- package/core/types/resource-definitions.d.ts +3 -3
- package/core/utils/cache-store.d.ts +15 -13
- package/core/utils/common.d.ts +1 -0
- package/core/utils/version.d.ts +1 -1
- package/effect-directive/event.directive.d.ts +36 -0
- package/esm2022/api/auth-api.service.mjs +34 -0
- package/esm2022/api/platform-ui.service.mjs +2 -1
- package/esm2022/api/public-api.mjs +2 -1
- package/esm2022/array-form-table/form/component.mjs +30 -15
- package/esm2022/authorization/interceptor.service.mjs +32 -10
- package/esm2022/authorization/public-api.mjs +2 -1
- package/esm2022/authorization/session-manage.service.mjs +11 -24
- package/esm2022/authorization/state.service.mjs +51 -23
- package/esm2022/authorization/storage-token.mjs +12 -88
- package/esm2022/core/directives/feature-gate.directive.mjs +7 -4
- package/esm2022/core/guards/feature.guard.mjs +3 -2
- package/esm2022/core/pipes/minimum-format.pipe.mjs +4 -3
- package/esm2022/core/services/feature-gate.service.mjs +4 -3
- package/esm2022/core/types/commons.mjs +1 -1
- package/esm2022/core/types/k8s/crd.mjs +8 -1
- package/esm2022/core/types/resource-definitions.mjs +2 -2
- package/esm2022/core/utils/cache-store.mjs +51 -29
- package/esm2022/core/utils/common.mjs +9 -1
- package/esm2022/effect-directive/event.directive.mjs +79 -4
- package/esm2022/k8s-resource-list/footer/component.mjs +7 -5
- package/esm2022/multi-search/multi-search-tags/component.mjs +2 -2
- package/esm2022/multi-search/types.mjs +1 -1
- package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +3 -8
- package/esm2022/pod-status/component.mjs +34 -55
- package/esm2022/searchable-selector/component.mjs +2 -2
- package/k8s-resource-list/k8s-resource-paged-list.d.ts +2 -2
- package/multi-search/types.d.ts +1 -0
- package/package.json +1 -1
- package/pod-status/component.d.ts +1 -3
- package/styles/tailwind-preset.scss +1 -1
- package/table/component.d.ts +1 -1
- package/table/helper.d.ts +1 -1
- package/table/module.d.ts +1 -1
|
@@ -38,4 +38,11 @@ export var HelmRequestPhaseEnum;
|
|
|
38
38
|
HelmRequestPhaseEnum["Pending"] = "Pending";
|
|
39
39
|
HelmRequestPhaseEnum["Uninstalling"] = "Uninstalling";
|
|
40
40
|
})(HelmRequestPhaseEnum || (HelmRequestPhaseEnum = {}));
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdHlwZXMvazhzL2NyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5SEEsTUFBTSxDQUFOLElBQVksbUJBSVg7QUFKRCxXQUFZLG1CQUFtQjtJQUM3QixpREFBMEIsQ0FBQTtJQUMxQiwwQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUk5QjtBQUVELE1BQU0sQ0FBTixJQUFZLGtCQVVYO0FBVkQsV0FBWSxrQkFBa0I7SUFDNUIsa0RBQTRCLENBQUE7SUFDNUIseUNBQW1CLENBQUE7SUFDbkIsMkNBQXFCLENBQUE7SUFDckIsNkNBQXVCLENBQUE7SUFDdkIsb0RBQThCLENBQUE7SUFDOUIsNkNBQXVCLENBQUE7SUFDdkIsc0RBQWdDLENBQUE7SUFDaEMsNkNBQXVCLENBQUE7SUFDdkIseUNBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVZXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFVN0I7QUE4Q0QsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxNQUFNO0lBQ1osa0JBQWtCLEVBQUUsbUJBQW1CO0lBQ3ZDLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFlBQVksRUFBRSxhQUFhO0lBQzNCLGFBQWEsRUFBRSxjQUFjO0NBQ3JCLENBQUM7QUFrY1gsTUFBTSxDQUFOLElBQVkseUJBTVg7QUFORCxXQUFZLHlCQUF5QjtJQUNuQyxnREFBbUIsQ0FBQTtJQUNuQixnREFBbUIsQ0FBQTtJQUNuQixnREFBbUIsQ0FBQTtJQUNuQiw4Q0FBaUIsQ0FBQTtJQUNqQiw0Q0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFOVyx5QkFBeUIsS0FBekIseUJBQXlCLFFBTXBDO0FBV0QsTUFBTSxDQUFOLElBQVksb0JBS1g7QUFMRCxXQUFZLG9CQUFvQjtJQUM5Qix5Q0FBaUIsQ0FBQTtJQUNqQix5Q0FBaUIsQ0FBQTtJQUNqQiwyQ0FBbUIsQ0FBQTtJQUNuQixxREFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBTFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUsvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbHVlT2YgfSBmcm9tICd0cy1lc3NlbnRpYWxzJztcblxuaW1wb3J0IHsgU3RyaW5nTWFwIH0gZnJvbSAnLi4vY29tbW9ucyc7XG5cbmltcG9ydCB7IENvbmRpdGlvbiwgS3ViZXJuZXRlc1Jlc291cmNlLCBPYmplY3RNZXRhIH0gZnJvbSAnLi9jb3JlJztcbmltcG9ydCB7XG4gIENvbmZpZ01hcEtleVJlZixcbiAgTm9kZSxcbiAgTm9kZVN0YXR1cyxcbiAgTm9kZVRhaW50LFxuICBTZWNyZXRLZXlSZWYsXG59IGZyb20gJy4vcmF3JztcblxuLyoqXG4gKiDlj6rkv53nlZljb21tb27kuK3pnIDopoHnlKjliLDnmoRjcmQg5omp5bGV57G7XG4gKi9cblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVJbmZvQ29uZGl0aW9uIHtcbiAgc3RhdHVzPzogJ1N1Y2Nlc3MnIHwgJ0ZhaWxlZCcgfCAnUHJvY2Vzc2luZycgfCAnUGVuZGluZyc7XG4gIHJlYXNvbj86IHN0cmluZztcbiAgbWVzc2FnZT86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbiAgbGFzdFRyYW5zaXRpb25UaW1lPzogc3RyaW5nO1xuICBsYXN0SGVhcnRiZWF0VGltZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVJbmZvQXZhaWxhYmxlVmVyc2lvbiB7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuICByaXNrTGV2ZWw/OiAnTG93JyB8ICdNaWRkbGUnIHwgJ0hpZ2gnO1xuICBkZXBlbmRlbmNpZXM/OiBBcnJheTx7XG4gICAgbW9kdWxlTmFtZTogc3RyaW5nO1xuICAgIHZlcnNpb25zTWF0Y2g6IHN0cmluZ1tdO1xuICB9PjtcbiAgdXBncmFkZUJlZm9yZT86IEFycmF5PHtcbiAgICBtb2R1bGVOYW1lOiBzdHJpbmc7XG4gIH0+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZHVsZUluZm8gZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzoge1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG4gICAgZW50cnlwb2ludD86IHN0cmluZztcbiAgICBzZWxlY3RlZENsdXN0ZXI/OiBBcnJheTx7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9PjsgLy8ge3BsdWdpbi1uYW1lOiBjbHVzdGVyLW5hbWV9W11cbiAgICB2YWx1ZXNPdmVycmlkZTogU3RyaW5nTWFwO1xuICAgIGNvbmZpZz86IGFueTtcbiAgfTtcbiAgc3RhdHVzPzoge1xuICAgIHZlcnNpb246IHN0cmluZztcbiAgICBwaGFzZTogJ1Byb2Nlc3NpbmcnIHwgJ1J1bm5pbmcnIHwgJ0ZhaWxlZCcgfCAnQmxvY2tlZCc7XG4gICAgcmVtb3ZlSXNQcmV2ZW50ZWQ/OiBib29sZWFuO1xuICAgIGJsb2NrUmVhc29ucz86IHN0cmluZ1tdO1xuICAgIGNvbmRpdGlvbnM/OiBNb2R1bGVJbmZvQ29uZGl0aW9uW107XG4gICAgYXZhaWxhYmxlVmVyc2lvbnM6IE1vZHVsZUluZm9BdmFpbGFibGVWZXJzaW9uW107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3RlclNwZWMge1xuICBhdXRoSW5mbz86IHtcbiAgICBjb250cm9sbGVyOiB7XG4gICAgICBraW5kOiBzdHJpbmc7XG4gICAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICB9O1xuICB9O1xuICBrdWJlcm5ldGVzQXBpRW5kcG9pbnRzPzoge1xuICAgIGNhQnVuZGxlPzogc3RyaW5nO1xuICAgIHNlcnZlckVuZHBvaW50czogQXJyYXk8e1xuICAgICAgY2xpZW50Q0lEUjogc3RyaW5nO1xuICAgICAgc2VydmVyQWRkcmVzczogc3RyaW5nO1xuICAgIH0+O1xuICB9O1xufVxuXG5leHBvcnQgdHlwZSBDbHVzdGVyU3RhdHVzUmVhc29uID1cbiAgfCAnVGltZW91dCdcbiAgfCAnRm9yYmlkZGVuJ1xuICB8ICdVbmF1dGhvcml6ZWQnXG4gIHwgJ1NvbWVDb21wb25lbnRzVW5oZWFsdGh5J1xuICB8ICdTb21lTm9kZXNOb3RSZWFkeSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3RlclN0YXR1c0NvbmRpdGlvbiBleHRlbmRzIENvbmRpdGlvbiB7XG4gIGxhc3RUcmFuc2l0aW9uVGltZTogc3RyaW5nO1xuICB0eXBlOlxuICAgIHwgJ05vdFJlYWNoYWJsZSdcbiAgICB8ICdOb3RBY2Nlc3NpYmxlJ1xuICAgIHwgJ0NvbXBvbmVudE5vdEhlYWx0aHknXG4gICAgfCAnTm9kZU5vdFJlYWR5JztcbiAgc3RhdHVzOiAnVHJ1ZScgfCAnRmFsc2UnO1xuICByZWFzb246IENsdXN0ZXJTdGF0dXNSZWFzb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3RlclN0YXR1cyB7XG4gIHZlcnNpb246IHN0cmluZztcbiAgY29uZGl0aW9uczogQ2x1c3RlclN0YXR1c0NvbmRpdGlvbltdO1xufVxuXG4vLyBjbHVzdGVycy5jbHVzdGVycmVnaXN0cnkuazhzLmlvIOeahOexu+Wei+WumuS5iVxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgbWV0YWRhdGE/OiBPYmplY3RNZXRhICYge1xuICAgIGZpbmFsaXplcnM/OiBzdHJpbmdbXTtcbiAgfTtcbiAgc3BlYz86IENsdXN0ZXJTcGVjO1xuICBzdGF0dXM/OiBDbHVzdGVyU3RhdHVzO1xuICBkZXRhaWxzPzoge1xuICAgIGdyb3VwOiBzdHJpbmc7XG4gICAga2luZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB1aWQ6IHN0cmluZztcbiAgfTtcbn1cblxuLy8gQWxhdWRhIFByb2R1Y3RcbmV4cG9ydCBpbnRlcmZhY2UgQWxhdWRhUHJvZHVjdFN0YXR1cyBleHRlbmRzIENvbmRpdGlvbiB7XG4gIGRlcGxveVN0YXR1cz86IEFsYXVkYURlcGxveVN0YXR1cztcbiAgcnVubmluZ1N0YXR1cz86IEFsYXVkYVJ1bm5pbmdTdGF0dXM7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgZGVwbG95VGltZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQWxhdWRhUnVubmluZ1N0YXR1cyB7XG4gIE5PVF9SVU5OSU5HID0gJ05vdFJ1bm5pbmcnLFxuICBIRUFMVEhZID0gJ0hlYWx0aHknLFxuICBBQk5PUk1BTCA9ICdBYm5vcm1hbCcsXG59XG5cbmV4cG9ydCBlbnVtIEFsYXVkYURlcGxveVN0YXR1cyB7XG4gIE5PVF9ERVBMT1lFRCA9ICdOb3REZXBsb3llZCcsXG4gIFNVQ0NFU1MgPSAnc3VjY2VzcycsXG4gIEFCTk9STUFMID0gJ0Fibm9ybWFsJyxcbiAgREVQTE9ZSU5HID0gJ0RlcGxveWluZycsXG4gIERFUExPWV9GQUlMRUQgPSAnRGVwbG95RmFpbGVkJyxcbiAgVVBHUkFESU5HID0gJ1VwZ3JhZGluZycsXG4gIFVQR1JBREVfRkFJTEVEID0gJ1VwZ3JhZGVGYWlsZWQnLFxuICBDT01QTEVURUQgPSAnQ29tcGxldGVkJyxcbiAgUEVORElORyA9ICdQZW5kaW5nJyxcbn1cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEJhc2UgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiBQcm9kdWN0QmFzZVNwZWM7XG4gIHN0YXR1cz86IFByb2R1Y3RCYXNlU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RTdGF0dXNDb25kaXRpb24ge1xuICBzdGF0dXM/OiAnVHJ1ZScgfCAnRmFsc2UnIHwgJ1Vua25vd24nO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHR5cGU6ICdSZWFkeScgfCAnSW5pdGlhbGl6ZWQnIHwgJ1JlY2xhaW1lZCcgfCAnU3VjY2VlZCc7XG4gIGxhc3RUcmFuc2l0aW9uVGltZT86IHN0cmluZztcbiAgbGFzdEhlYXJ0YmVhdFRpbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEJhc2VTdGF0dXMge1xuICBnbG9iYWxJRDogc3RyaW5nO1xuICBjbG91ZDoge1xuICAgIHBoYXNlOiAnT05MaW5lJyB8ICdDb25uZWN0RmFpbGVkJyB8ICdDb25uZWN0aW5nJyB8ICdPRkZMaW5lJztcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgY29ubmVjdFVSTDogc3RyaW5nO1xuICB9O1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIHBoYXNlPzpcbiAgICB8ICdQZW5kaW5nJ1xuICAgIHwgJ1Byb3Zpc2lvbmluZydcbiAgICB8ICdQcm92aXNpb25lZCdcbiAgICB8ICdEZWxldGluZydcbiAgICB8ICdGYWlsZWQnXG4gICAgfCAnUnVubmluZydcbiAgICB8ICdJbnN0YWxsaW5nJyAvLyB0ZHNxbFxuICAgIHwgJ1VwZ3JhZGluZyc7XG4gIHByb2R1Y3RFbnRyeXBvaW50Pzogc3RyaW5nO1xuICBkZWxldGFibGU/OiBib29sZWFuO1xuICBjb25kaXRpb25zPzogUHJvZHVjdFN0YXR1c0NvbmRpdGlvbltdO1xuICBwcm9tZXRoZXVzQWRkcmVzcz86IHN0cmluZztcbiAgZWxhc3RpY1NlYXJjaEFkZHJlc3M/OiBzdHJpbmc7XG4gIGthZmthQWRkcmVzcz86IHN0cmluZztcbiAgY29udGFpbmVyUGxhdGZvcm0/OiBBbGF1ZGFQcm9kdWN0U3RhdHVzO1xuICBkZXZvcHM/OiBBbGF1ZGFQcm9kdWN0U3RhdHVzO1xuICBzZXJ2aWNlTWVzaD86IEFsYXVkYVByb2R1Y3RTdGF0dXM7XG4gIGRhdGFTZXJ2aWNlcz86IEFsYXVkYVByb2R1Y3RTdGF0dXM7XG4gIGJhc2U/OiBBbGF1ZGFQcm9kdWN0U3RhdHVzO1xuICBwcm9ncmVzcz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IFByb2R1Y3RLZXkgPSB7XG4gIEJBU0U6ICdiYXNlJyxcbiAgQ09OVEFJTkVSX1BMQVRGT1JNOiAnY29udGFpbmVyUGxhdGZvcm0nLFxuICBERVZPUFM6ICdkZXZvcHMnLFxuICBTRVJWSUNFX01FU0g6ICdzZXJ2aWNlTWVzaCcsXG4gIERBVEFfU0VSVklDRVM6ICdkYXRhU2VydmljZXMnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdEtleSA9IFZhbHVlT2Y8dHlwZW9mIFByb2R1Y3RLZXk+O1xuXG50eXBlIEdlblByb2R1Y3Q8VCBleHRlbmRzIFByb2R1Y3RLZXk+ID0gUmVjb3JkPFQsIHsgaW5zdGFsbDogYm9vbGVhbiB9PjtcblxuZXhwb3J0IGludGVyZmFjZSBUbHMge1xuICBjZXJ0OiBzdHJpbmc7XG4gIGtleTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RCYXNlU3BlYyBleHRlbmRzIEdlblByb2R1Y3Q8UHJvZHVjdEtleT4ge1xuICBhbHRlcm5hdGl2ZVVSTHM6IHN0cmluZ1tdO1xuICBjaGFydE11c2V1bToge1xuICAgIHVybDogc3RyaW5nO1xuICB9O1xuICBwYWNrYWdlRWRpdGlvbjogc3RyaW5nO1xuICB2YWx1ZXNPdmVycmlkZT86IHtcbiAgICBkZXg6IFN0cmluZ01hcDtcbiAgfTtcbiAgY2hhcnRWZXJzaW9uczogW3sgbmFtZTogc3RyaW5nOyB2ZXJzaW9uOiBzdHJpbmcgfV07XG4gIGRlZmF1bHRBZG1pbjoge1xuICAgIGFjY291bnQ6IHN0cmluZztcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHBhc3N3b3JkOiBzdHJpbmc7XG4gIH07XG4gIGRlZmF1bHRSZWRpcmVjdFBhdGg6IHN0cmluZztcbiAgZGVwbG95VHlwZTogc3RyaW5nO1xuICBlbGFzdGljc2VhcmNoOiB7XG4gICAgaW5zdGFsbDogYm9vbGVhbjtcbiAgICBub2Rlczogc3RyaW5nW107XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgfTtcbiAgaHR0cDoge1xuICAgIGZvcmNlUmVkaXJlY3RIdHRwcz86IGJvb2xlYW47XG4gICAgaHR0cFBvcnQ/OiBudW1iZXI7XG4gICAgaHR0cHNQb3J0PzogbnVtYmVyO1xuICAgIHRscz86IFRscztcbiAgfTtcbiAgaW5ncmVzczoge1xuICAgIGNvbnRyb2xsZXI6IHsgaW5zdGFsbDogYm9vbGVhbjsgbm9kZXM6IHN0cmluZ1tdIH07XG4gICAgaG9zdDogc3RyaW5nO1xuICAgIGluZ3Jlc3NDbGFzc05hbWU6IHN0cmluZztcbiAgfTtcbiAga2Fma2E6IHtcbiAgICBhdXRoOiBib29sZWFuO1xuICAgIGluc3RhbGw6IGJvb2xlYW47XG4gICAgbm9kZXM6IHN0cmluZ1tdO1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gIH07XG4gIGxvZ0FnZW50OiB7XG4gICAgZW5hYmxlOiBib29sZWFuO1xuICB9O1xuICBsb2dDZW50ZXI6IHtcbiAgICBlbmFibGU6IGJvb2xlYW47XG4gIH07XG4gIHBsYXRmb3JtVVJMOiBzdHJpbmc7XG4gIHByb21ldGhldXM6IHtcbiAgICBpbnN0YWxsOiBib29sZWFuO1xuICAgIHJlcGxpY2FzOiBudW1iZXI7XG4gICAgc3RvcmFnZTogeyBjYXBhY2l0eTogbnVtYmVyOyBub2Rlczogc3RyaW5nW107IHBhdGg6IHN0cmluZzsgdHlwZTogc3RyaW5nIH07XG4gIH07XG5cbiAgcmVnaXN0cnk6IHtcbiAgICBleHRlcm5hbD86IHN0cmluZztcbiAgICBhZGRyZXNzOiBzdHJpbmc7XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICBzZWNyZXRSZWY/OiBzdHJpbmc7XG4gIH07XG4gIHJlcGxpY2FzOiBudW1iZXI7XG4gIHZlcnNpb246IHN0cmluZztcbiAgY2xvdWQ6IHtcbiAgICBjb25uZWN0OiBib29sZWFuO1xuICAgIGNvbm5lY3RUeXBlOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdFNwZWMge1xuICBjbHVzdGVyczogUHJvamVjdENsdXN0ZXJbXTtcbiAgc3RhdHVzPzoge1xuICAgIHBoYXNlOiBzdHJpbmc7XG4gIH07XG4gIGNsdXN0ZXJEZWxldGVQb2xpY3k/OiAnRGVsZXRlJyB8ICdSZXRhaW4nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3RDbHVzdGVyIHtcbiAgbmFtZTogc3RyaW5nO1xuICBxdW90YTogc3RyaW5nOyAvLyBcIntcXFwiY3B1XFxcIjotMSxcXFwibWVtb3J5XFxcIjotMSxcXFwicG9kc1xcXCI6LTEsXFxcInB2Y19udW1cXFwiOi0xLFxcXCJzdG9yYWdlXFxcIjotMX1cIlxuICB0eXBlPzogJycgfCAnRmVkTWVtYmVyJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0IGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYzogUHJvamVjdFNwZWM7XG4gIHN0YXR1cz86IHtcbiAgICBwaGFzZTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VNZXNoR3JvdXAgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiB7XG4gICAgazhzVmVyc2lvbjogc3RyaW5nO1xuICAgIHdpdGhvdXRJc3Rpbz86IGJvb2xlYW47XG4gICAgaXN0aW9WZXJzaW9uOiBzdHJpbmc7XG4gICAgcHJpbWFyeTogc3RyaW5nO1xuICAgIHNlbGVjdG9yOiB7XG4gICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gICAgfTtcbiAgICBjbHVzdGVyczogc3RyaW5nW107XG4gICAgbWVzaENvbW1vbkNvbmZpZz86IE1lc2hDb21tb25Db25maWc7XG4gICAgY2x1c3RlckNvbmZpZ3M/OiB7XG4gICAgICBbY2x1c3Rlck5hbWU6IHN0cmluZ106IENsdXN0ZXJDb25maWc7XG4gICAgfTtcbiAgfTtcbiAgc3RhdHVzOiB7XG4gICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgTWVzc2FnZTogc3RyaW5nO1xuICAgIGNsdXN0ZXJDb3VudDogbnVtYmVyO1xuICAgIGxhdGVzdFVwZGF0ZVRpbWU6IHN0cmluZztcbiAgICBOb25SZWFkeUNsdXN0ZXJDb3VudDogbnVtYmVyO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lc2hDb21tb25Db25maWcge1xuICBlbGFzdGljc2VhcmNoOiB7XG4gICAgaXNEZWZhdWx0OiBib29sZWFuO1xuICAgIHBhc3N3b3JkPzogc3RyaW5nO1xuICAgIHVybDogc3RyaW5nO1xuICAgIHVzZXJuYW1lPzogc3RyaW5nO1xuICB9O1xuICBtb25pdG9yVHlwZTogc3RyaW5nO1xuICBwcm9tZXRoZXVzQmFzaWNBdXRoOiB7XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgICB1c2VybmFtZTogc3RyaW5nO1xuICB9O1xuICBpc0RlZmF1bHRNb25pdG9yOiBib29sZWFuO1xuICBwcm9tZXRoZXVzVVJMOiBzdHJpbmc7XG4gIHRyYWNlU2FtcGxpbmc6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyQ29uZmlnIHtcbiAgaXN0aW9TaWRlY2FyOiB7XG4gICAgY3B1VmFsdWU6IHN0cmluZztcbiAgICBtZW1vcnlWYWx1ZTogc3RyaW5nO1xuICB9O1xuICBrYWZrYT86IHtcbiAgICBhdXRoZW50aWNhdGlvbjogc3RyaW5nO1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgICB1c2VybmFtZTogc3RyaW5nO1xuICB9O1xuICByZWRpcz86IFJlZGlzQ29uZmlnO1xuICB0cmFjZVNhbXBsaW5nOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVkaXNDb25maWcge1xuICBlbmFibGVkOiBib29sZWFuO1xuICBraW5kOiAnc2luZ2xlJyB8ICdjbHVzdGVyJyB8ICdzZW50aW5lbCc7XG4gIGFkZHJlc3M6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgbWFzdGVyTmFtZT86IHN0cmluZztcbn1cblxuLy8gVEtFXG5leHBvcnQgaW50ZXJmYWNlIFRLRUNsdXN0ZXJTcGVjIHtcbiAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgc2VydmljZUNJRFI/OiBzdHJpbmc7XG4gIGRvY2tlckV4dHJhQXJncz86IFN0cmluZ01hcDtcbiAga3ViZWxldEV4dHJhQXJncz86IFN0cmluZ01hcDtcbiAgY29udHJvbGxlck1hbmFnZXJFeHRyYUFyZ3M/OiBTdHJpbmdNYXA7XG4gIHNjaGVkdWxlckV4dHJhQXJncz86IFN0cmluZ01hcDtcbiAgcHVibGljQWx0ZXJuYXRpdmVOYW1lcz86IHN0cmluZ1tdO1xuICBjbHVzdGVyQ0lEUj86IHN0cmluZztcbiAgbmV0d29ya0RldmljZT86IHN0cmluZztcbiAgcHJvcGVydGllcz86IHtcbiAgICBtYXhDbHVzdGVyU2VydmljZU51bT86IG51bWJlcjtcbiAgICBtYXhOb2RlUG9kTnVtPzogbnVtYmVyO1xuICAgIG92ZXJzb2xkUmF0aW8/OiB7XG4gICAgICBjcHU6IHN0cmluZztcbiAgICAgIG1lbW9yeTogc3RyaW5nO1xuICAgIH07XG4gIH07XG4gIGZlYXR1cmVzPzoge1xuICAgIGVuYWJsZU1hc3RlclNjaGVkdWxlPzogYm9vbGVhbjtcbiAgICBpcHY2RHVhbFN0YWNrPzogYm9vbGVhbjtcbiAgICBmaWxlcz86IEFycmF5PHtcbiAgICAgIHNyYz86IHN0cmluZztcbiAgICAgIGRzdD86IHN0cmluZztcbiAgICB9PjtcbiAgICBoYT86IHtcbiAgICAgIHRoaXJkUGFydHk/OiB7XG4gICAgICAgIHZpcD86IHN0cmluZztcbiAgICAgICAgdnBvcnQ/OiBudW1iZXI7XG4gICAgICB9O1xuICAgICAgdGtlPzoge1xuICAgICAgICB2cmlkPzogdW5rbm93bjtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbiAgdHlwZTogJ0JhcmVtZXRhbCcgfCAnSW1wb3J0ZWQnO1xuICB2ZXJzaW9uPzogc3RyaW5nO1xuICBtYWNoaW5lcz86IFRLRU1hY2hpbmVTcGVjW107XG4gIGRuc0RvbWFpbj86IHN0cmluZztcbiAgYXBpU2VydmVyRXh0cmFBcmdzPzogU3RyaW5nTWFwO1xuICBjbHVzdGVyQ3JlZGVudGlhbFJlZj86IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVEtFQ2x1c3RlciBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBUS0VDbHVzdGVyU3BlYztcbiAgc3RhdHVzPzoge1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG4gICAgcGhhc2U/OiBzdHJpbmc7XG4gICAgY29uZGl0aW9ucz86IENvbmRpdGlvbltdO1xuICAgIGFkZHJlc3Nlcz86IEFycmF5PHtcbiAgICAgIGhvc3Q6IHN0cmluZztcbiAgICAgIHBhdGg/OiAnJztcbiAgICAgIHR5cGU6ICdBZHZlcnRpc2UnIHwgJ1B1YmxpYyc7XG4gICAgICBwb3J0OiBudW1iZXI7XG4gICAgfT47XG4gICAgc2VydmljZUNJRFI/OiBzdHJpbmc7XG4gICAgbm9kZUNJRFJNYXNrU2l6ZT86IG51bWJlcjtcbiAgICBkbnNJUD86IHN0cmluZztcbiAgfTtcbiAgZ2F0ZXdheU5vZGU/OiBOb2RlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRLRU1hY2hpbmVTcGVjIHtcbiAgY2x1c3Rlck5hbWU/OiBzdHJpbmc7XG4gIHJvbGU/OiAnbm9kZScgfCAnbWFzdGVyJztcbiAgaXA/OiBzdHJpbmc7XG4gIGlwdjY/OiBzdHJpbmc7XG4gIHB1YmxpY0lQPzogc3RyaW5nO1xuICBkaXNwbGF5TmFtZT86IHN0cmluZztcbiAgbmV0d29ya0RldmljZT86IHN0cmluZztcbiAgcG9ydDogbnVtYmVyO1xuICBwYXNzd29yZD86IHN0cmluZztcbiAgcHJpdmF0ZUtleT86IHN0cmluZztcbiAgcGFzc1BocmFzZT86IHN0cmluZztcbiAgdXNlcm5hbWU6IHN0cmluZztcbiAgbGFiZWxzPzoge1xuICAgIFsnbnZpZGlhLWRldmljZS1lbmFibGUnXT86IHN0cmluZztcbiAgICBbJ25vZGUtcm9sZS5rdWJlcm5ldGVzLmlvL2NwYWFzLXN5c3RlbSddPzogc3RyaW5nO1xuICB9O1xuICB0eXBlPzogc3RyaW5nO1xuICBwcm94eT86IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgfTtcbiAgYW5ub3RhdGlvbnM/OiBTdHJpbmdNYXA7XG4gIHRhaW50cz86IE5vZGVUYWludFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJDcmVkZW50aWFsIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgY2x1c3Rlck5hbWU6IHN0cmluZztcbiAgY2FDZXJ0OiBzdHJpbmc7XG4gIHRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVEtFTWFjaGluZSBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBUS0VNYWNoaW5lU3BlYztcbiAgc3RhdHVzPzogTm9kZVN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNYWNoaW5lIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IE1hY2hpbmVTcGVjO1xuICBzdGF0dXM/OiBNYWNoaW5lU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hY2hpbmVTcGVjIHtcbiAgY2x1c3Rlcjogc3RyaW5nO1xuICBwcm92aWRlcjogc3RyaW5nO1xuICBwcm92aWRlclNwZWM6IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFjaGluZVN0YXR1cyB7XG4gIHVzZXJEYXRhU2VjcmV0Pzoge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gIH07XG4gIG5vZGVSZWY/OiB7XG4gICAgbmFtZT86IHN0cmluZztcbiAgfTtcbiAgbGFzdFVwZGF0ZTogc3RyaW5nO1xuICBlcnJSZWFzb246IHN0cmluZztcbiAgZXJyTWVzc2FnZTogc3RyaW5nO1xuICBwaGFzZTogc3RyaW5nO1xuICBjb25kaXRpb25zOiBDb25kaXRpb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyVmlldyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiB2b2lkO1xuICBzdGF0dXM/OiBDbHVzdGVyVmlld1N0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyVmlld1N0YXR1cyB7XG4gIHByb3Zpc2lvblR5cGU6ICdTZWxmSG9zdGVkJyB8ICdQcm92aWRlckhvc3RlZCcgfCAnSW1wb3J0ZWQnIHwgJ1JlZ2lzdGVyZWQnO1xuICBjbHVzdGVyVHlwZTogc3RyaW5nO1xuICBzdXBwb3J0V2luZG93czogYm9vbGVhbjtcbiAgcmVnaXN0cnlBZGRyZXNzOiBzdHJpbmc7XG4gIGNvbmRpdGlvbnM6IENvbmRpdGlvbltdO1xuICBwcm9qZWN0czogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IGRpc3BsYXlOYW1lOiBzdHJpbmcgfT47XG4gIGNvbnRyb2xQbGFuZUVuZHBvaW50czoge1xuICAgIGRlZmF1bHQ6IHN0cmluZztcbiAgICBhZHZlcnRpc2U6IHN0cmluZztcbiAgICBwdWJsaWM/OiBzdHJpbmc7XG4gIH07XG4gIG5vZGVzSW5mbzoge1xuICAgIHJlYWR5Tm9kZXM6IG51bWJlcjtcbiAgICBub3RSZWFkeU5vZGVzOiBudW1iZXI7XG4gICAgYXJjaGl0ZWN0dXJlczogc3RyaW5nW107XG4gICAgdG90YWxDUFVDb3JlczogbnVtYmVyO1xuICAgIHRvdGFsTWVtb3JpZXM6IG51bWJlcjtcbiAgICBjcmlWZXJzaW9uczogc3RyaW5nW107XG4gICAgZXh0cmFSZXNvdXJjZXM/OiB7IFtrZXk6IHN0cmluZ106IENsdXN0ZXJEZXZpY2VSZXNvdXJjZSB9O1xuICB9O1xuICBjbHVzdGVyTmV0d29yazoge1xuICAgIGhhTG9hZEJhbGFuY2VyVHlwZT86ICdBbGl2ZScgfCAnVGhpcmRQYXJ0eSc7XG4gICAgY25pVHlwZTogc3RyaW5nO1xuICAgIHByb3RvY29sU3RhY2s6ICdJUHY0JyB8ICdJUHY2JyB8ICdEdWFsLVN0YWNrJztcbiAgICBzZXJ2aWNlQ0lEUnM6IHN0cmluZ1tdO1xuICAgIHBvZENJRFJzOiBzdHJpbmdbXTtcbiAgICBleHRyYUluZm86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gICAgdnJpZD86IG51bWJlcjtcbiAgICBtYXhOb2Rlcz86IG51bWJlcjtcbiAgfTtcbiAgbWFuYWdlZEJ5Pzoge1xuICAgIHBsdWdpbk5hbWU6IHN0cmluZztcbiAgICBlbnRyeXBvaW50OiBzdHJpbmc7XG4gIH07XG4gIGdwdVBsdWdpblR5cGU/OiAnVmlydHVhbCcgfCAnUGh5c2ljYWwnO1xuICBoaWdoQXZhaWxhYmxlOiBib29sZWFuO1xuICBuZWVkVXBncmFkZTogYm9vbGVhbjtcbiAgdXBncmFkYWJsZTogYm9vbGVhbjtcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBwaGFzZTogc3RyaW5nO1xuICBleHRyYUFyZ3M6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+O1xuICBwdWJsaWNBbHRlcm5hdGl2ZU5hbWVzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyRGV2aWNlUmVzb3VyY2Uge1xuICB2YWx1ZTogbnVtYmVyO1xuICB1bml0Pzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvblpoPzogc3RyaW5nO1xuICBsYWJlbEVuPzogc3RyaW5nO1xuICBsYWJlbFpoPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3ZpZGVyTmV0d29ya1NwZWMge1xuICBkZWZhdWx0SW50ZXJmYWNlOiBzdHJpbmc7XG4gIGN1c3RvbUludGVyZmFjZXM6IEFycmF5PHtcbiAgICBpbnRlcmZhY2U6IHN0cmluZztcbiAgICBub2Rlczogc3RyaW5nW107XG4gIH0+O1xuICBleGNsdWRlTm9kZXM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3ZpZGVyTmV0d29yayBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM6IFByb3ZpZGVyTmV0d29ya1NwZWM7XG4gIHN0YXR1cz86IHtcbiAgICByZWFkeTogYm9vbGVhbjtcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgTG9jYWxlRGlzcGxheSA9IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEVudHJ5U3BlYyB7XG4gIGxvZ28/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lPzogTG9jYWxlRGlzcGxheTtcbiAgZGVzY3JpcHRpb24/OiBMb2NhbGVEaXNwbGF5O1xuICBjYXRhbG9nPzogTG9jYWxlRGlzcGxheTtcbiAgZW50cnlwb2ludD86IHN0cmluZztcbiAgc3NvRW5hYmxlZD86IGJvb2xlYW47XG4gIHBhY2tUeXBlPzogJ0ludGVncmF0ZWQnIHwgJ0J1aWxkSW4nIHwgJ0FkbWluUGFnZSc7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEVudHJ5U3RhdHVzIHtcbiAgaGlkZGVuT25Qb3J0YWw/OiBib29sZWFuO1xuICBoaWRkZW5Pbk1lbnU/OiBib29sZWFuO1xuICBvcmRlck9uUG9ydGFsPzogbnVtYmVyO1xuICBvcmRlck9uTWVudT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9kdWN0RW50cnkgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogUHJvZHVjdEVudHJ5U3BlYztcbiAgc3RhdHVzPzogUHJvZHVjdEVudHJ5U3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RTdGF0dXMge1xuICB0eXBlOlxuICAgIHwgJ05vdERlcGxveWVkJ1xuICAgIHwgJ0luRGVwbG95bWVudCdcbiAgICB8ICdSdW5uaW5nJ1xuICAgIHwgJ0RlcGxveW1lbnRGYWlsdXJlJ1xuICAgIHwgJ1J1bm5pbmdBYm5vcm1hbCdcbiAgICB8ICdEZWxldGluZydcbiAgICB8ICdEZWxldGVGYWlsdXJlJ1xuICAgIHwgJ0RlcGxveW1lbnRTdWNjZWVkJ1xuICAgIHwgJ1N5c3RlbUVycm9yJ1xuICAgIHwgJ1VwZ3JhZGluZyc7XG4gIGljb246IHN0cmluZztcbiAgdGV4dDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3REb2NzRW50cnkgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiB7XG4gICAgZ3JvdXBzOiBBcnJheTx7XG4gICAgICBncm91cE5hbWU6IExvY2FsZURpc3BsYXk7XG4gICAgICBkb2NzOiBBcnJheTx7XG4gICAgICAgIGxvZ286IHN0cmluZztcbiAgICAgICAgZG9jRW50cnlwb2ludDogc3RyaW5nO1xuICAgICAgICBkaXNwbGF5TmFtZTogTG9jYWxlRGlzcGxheTtcbiAgICAgICAgZGVzY3JpcHRpb246IExvY2FsZURpc3BsYXk7XG4gICAgICB9PjtcbiAgICB9PjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIZWxtUmVxdWVzdENvbmRpdGlvbiB7XG4gIGxhc3RQcm9iZVRpbWU/OiBzdHJpbmc7XG4gIGxhc3RUcmFuc2l0aW9uVGltZT86IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICByZWFzb246IHN0cmluZzsgLy8gUGVybWlzc2lvbkNoZWNrRmFpbGVkXG4gIHN0YXR1czogJ1RydWUnIHwgJ0ZhbHNlJztcbiAgdHlwZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0bGFiLWNlLmFsYXVkYS5jbi9jb250YWluZXItcGxhdGZvcm0vY2FwdGFpbi8tL2Jsb2IvbWFzdGVyL2RvY3MvY3JkLm1kXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3QgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogSGVsbVJlcXVlc3RTcGVjO1xuICBzdGF0dXM/OiB7XG4gICAgcGhhc2U6IEhlbG1SZXF1ZXN0UGhhc2VFbnVtO1xuICAgIG5vdGVzPzogc3RyaW5nO1xuICAgIGxhc3RTcGVjSGFzaD86IHN0cmluZztcbiAgICByZWFzb24/OiBzdHJpbmc7XG4gICAgY29uZGl0aW9ucz86IEhlbG1SZXF1ZXN0Q29uZGl0aW9uW107XG4gICAgdGFyZ2V0Q2x1c3RlclN5bmNSZXN1bHRzPzogSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdHM7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdHMge1xuICBbY2x1c3Rlcjogc3RyaW5nXTogSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdDtcbn1cblxuZXhwb3J0IGVudW0gQ2xvdWRIZWxtUmVxdWVzdFN0YXRlRW51bSB7XG4gIFBlbmRpbmcgPSAnUGVuZGluZycsXG4gIFJ1bm5pbmcgPSAnUnVubmluZycsXG4gIFN0b3BwZWQgPSAnU3RvcHBlZCcsXG4gIEZhaWxlZCA9ICdGYWlsZWQnLFxuICBFbXB0eSA9ICdFbXB0eScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdCB7XG4gIGFwcFN0YXR1czogQ2xvdWRIZWxtUmVxdWVzdFN0YXRlRW51bTtcbiAgZW5kcG9pbnQ6IHN0cmluZztcbiAgbGFzdFVwZGF0ZUF0OiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgcGhhc2U6IEhlbG1SZXF1ZXN0UGhhc2VFbnVtO1xuICByZWFzb246IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gSGVsbVJlcXVlc3RQaGFzZUVudW0ge1xuICBTeW5jZWQgPSAnU3luY2VkJyxcbiAgRmFpbGVkID0gJ0ZhaWxlZCcsXG4gIFBlbmRpbmcgPSAnUGVuZGluZycsXG4gIFVuaW5zdGFsbGluZyA9ICdVbmluc3RhbGxpbmcnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlbG1SZXF1ZXN0U3BlYyB7XG4gIGNoYXJ0Pzogc3RyaW5nO1xuICB2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICB2YWx1ZXNGcm9tPzogQXJyYXk8e1xuICAgIGNvbmZpZ01hcEtleVJlZj86IENvbmZpZ01hcEtleVJlZjtcbiAgICBzZWNyZXRLZXlSZWY/OiBTZWNyZXRLZXlSZWY7XG4gIH0+O1xuICBjbHVzdGVyTmFtZT86IHN0cmluZztcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICByZWxlYXNlTmFtZT86IHN0cmluZztcbiAgdmVyc2lvbj86IHN0cmluZztcbiAgcHJvamVjdE5hbWU/OiBzdHJpbmc7XG4gIHNvdXJjZT86IHtcbiAgICBvY2k/OiBIZWxtUmVxdWVzdE9jaTtcbiAgICBodHRwPzogSGVsbVJlcXVlc3RIdHRwO1xuICB9O1xuICB0YXJnZXRDbHVzdGVycz86IHtcbiAgICBjbHVzdGVyTmFtZXM6IHtcbiAgICAgIG5hbWVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlbG1SZXF1ZXN0T2NpIHtcbiAgcmVwbzogc3RyaW5nO1xuICBzZWNyZXRSZWY6IHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3RIdHRwIHtcbiAgdXJsOiBzdHJpbmc7XG4gIHNlY3JldFJlZjogc3RyaW5nO1xufVxuXG4vKipcbiAqIGh0dHBzOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0xNzY4ODM0NzBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVc2VyQmluZGluZyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBVc2VyQmluZGluZ1NwZWM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckJpbmRpbmdTcGVjIHtcbiAgc3ViamVjdHM6IEFycmF5PHtcbiAgICBraW5kOiAnVXNlcicgfCAnR3JvdXAnIHwgJ1NlcnZpY2VBY2NvdW50JztcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH0+O1xuICByb2xlUmVmOiBzdHJpbmc7XG4gIHNjb3BlOiBzdHJpbmc7IC8vIOaUr+aMgeexu+Wei3BsYXRmb3JtLCBjbHVzdGVyLCBwcm9qZWN0LCBuYW1lc3BhY2VcbiAgY29uc3RyYWludDogQXJyYXk8e1xuICAgIHByb2plY3Q/OiBzdHJpbmc7XG4gICAgY2x1c3Rlcj86IHN0cmluZztcbiAgICBuYW1lc3BhY2U/OiBzdHJpbmc7XG4gIH0+O1xufVxuIl19
|
|
41
|
+
export var UserState;
|
|
42
|
+
(function (UserState) {
|
|
43
|
+
UserState["ACTIVE"] = "active";
|
|
44
|
+
UserState["LOCKED"] = "locked";
|
|
45
|
+
UserState["INVALID"] = "invalid";
|
|
46
|
+
UserState["DELETED"] = "deleted";
|
|
47
|
+
})(UserState || (UserState = {}));
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdHlwZXMvazhzL2NyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5SEEsTUFBTSxDQUFOLElBQVksbUJBSVg7QUFKRCxXQUFZLG1CQUFtQjtJQUM3QixpREFBMEIsQ0FBQTtJQUMxQiwwQ0FBbUIsQ0FBQTtJQUNuQiw0Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUk5QjtBQUVELE1BQU0sQ0FBTixJQUFZLGtCQVVYO0FBVkQsV0FBWSxrQkFBa0I7SUFDNUIsa0RBQTRCLENBQUE7SUFDNUIseUNBQW1CLENBQUE7SUFDbkIsMkNBQXFCLENBQUE7SUFDckIsNkNBQXVCLENBQUE7SUFDdkIsb0RBQThCLENBQUE7SUFDOUIsNkNBQXVCLENBQUE7SUFDdkIsc0RBQWdDLENBQUE7SUFDaEMsNkNBQXVCLENBQUE7SUFDdkIseUNBQW1CLENBQUE7QUFDckIsQ0FBQyxFQVZXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFVN0I7QUE4Q0QsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxNQUFNO0lBQ1osa0JBQWtCLEVBQUUsbUJBQW1CO0lBQ3ZDLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFlBQVksRUFBRSxhQUFhO0lBQzNCLGFBQWEsRUFBRSxjQUFjO0NBQ3JCLENBQUM7QUFrY1gsTUFBTSxDQUFOLElBQVkseUJBTVg7QUFORCxXQUFZLHlCQUF5QjtJQUNuQyxnREFBbUIsQ0FBQTtJQUNuQixnREFBbUIsQ0FBQTtJQUNuQixnREFBbUIsQ0FBQTtJQUNuQiw4Q0FBaUIsQ0FBQTtJQUNqQiw0Q0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFOVyx5QkFBeUIsS0FBekIseUJBQXlCLFFBTXBDO0FBV0QsTUFBTSxDQUFOLElBQVksb0JBS1g7QUFMRCxXQUFZLG9CQUFvQjtJQUM5Qix5Q0FBaUIsQ0FBQTtJQUNqQix5Q0FBaUIsQ0FBQTtJQUNqQiwyQ0FBbUIsQ0FBQTtJQUNuQixxREFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBTFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUsvQjtBQXNIRCxNQUFNLENBQU4sSUFBWSxTQUtYO0FBTEQsV0FBWSxTQUFTO0lBQ25CLDhCQUFpQixDQUFBO0lBQ2pCLDhCQUFpQixDQUFBO0lBQ2pCLGdDQUFtQixDQUFBO0lBQ25CLGdDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFMVyxTQUFTLEtBQVQsU0FBUyxRQUtwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbHVlT2YgfSBmcm9tICd0cy1lc3NlbnRpYWxzJztcblxuaW1wb3J0IHsgU3RyaW5nTWFwIH0gZnJvbSAnLi4vY29tbW9ucyc7XG5cbmltcG9ydCB7IENvbmRpdGlvbiwgS3ViZXJuZXRlc1Jlc291cmNlLCBPYmplY3RNZXRhIH0gZnJvbSAnLi9jb3JlJztcbmltcG9ydCB7XG4gIENvbmZpZ01hcEtleVJlZixcbiAgTm9kZSxcbiAgTm9kZVN0YXR1cyxcbiAgTm9kZVRhaW50LFxuICBTZWNyZXRLZXlSZWYsXG59IGZyb20gJy4vcmF3JztcblxuLyoqXG4gKiDlj6rkv53nlZljb21tb27kuK3pnIDopoHnlKjliLDnmoRjcmQg5omp5bGV57G7XG4gKi9cblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVJbmZvQ29uZGl0aW9uIHtcbiAgc3RhdHVzPzogJ1N1Y2Nlc3MnIHwgJ0ZhaWxlZCcgfCAnUHJvY2Vzc2luZycgfCAnUGVuZGluZyc7XG4gIHJlYXNvbj86IHN0cmluZztcbiAgbWVzc2FnZT86IHN0cmluZztcbiAgdHlwZT86IHN0cmluZztcbiAgbGFzdFRyYW5zaXRpb25UaW1lPzogc3RyaW5nO1xuICBsYXN0SGVhcnRiZWF0VGltZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVJbmZvQXZhaWxhYmxlVmVyc2lvbiB7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuICByaXNrTGV2ZWw/OiAnTG93JyB8ICdNaWRkbGUnIHwgJ0hpZ2gnO1xuICBkZXBlbmRlbmNpZXM/OiBBcnJheTx7XG4gICAgbW9kdWxlTmFtZTogc3RyaW5nO1xuICAgIHZlcnNpb25zTWF0Y2g6IHN0cmluZ1tdO1xuICB9PjtcbiAgdXBncmFkZUJlZm9yZT86IEFycmF5PHtcbiAgICBtb2R1bGVOYW1lOiBzdHJpbmc7XG4gIH0+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZHVsZUluZm8gZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzoge1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG4gICAgZW50cnlwb2ludD86IHN0cmluZztcbiAgICBzZWxlY3RlZENsdXN0ZXI/OiBBcnJheTx7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9PjsgLy8ge3BsdWdpbi1uYW1lOiBjbHVzdGVyLW5hbWV9W11cbiAgICB2YWx1ZXNPdmVycmlkZTogU3RyaW5nTWFwO1xuICAgIGNvbmZpZz86IGFueTtcbiAgfTtcbiAgc3RhdHVzPzoge1xuICAgIHZlcnNpb246IHN0cmluZztcbiAgICBwaGFzZTogJ1Byb2Nlc3NpbmcnIHwgJ1J1bm5pbmcnIHwgJ0ZhaWxlZCcgfCAnQmxvY2tlZCc7XG4gICAgcmVtb3ZlSXNQcmV2ZW50ZWQ/OiBib29sZWFuO1xuICAgIGJsb2NrUmVhc29ucz86IHN0cmluZ1tdO1xuICAgIGNvbmRpdGlvbnM/OiBNb2R1bGVJbmZvQ29uZGl0aW9uW107XG4gICAgYXZhaWxhYmxlVmVyc2lvbnM6IE1vZHVsZUluZm9BdmFpbGFibGVWZXJzaW9uW107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3RlclNwZWMge1xuICBhdXRoSW5mbz86IHtcbiAgICBjb250cm9sbGVyOiB7XG4gICAgICBraW5kOiBzdHJpbmc7XG4gICAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICB9O1xuICB9O1xuICBrdWJlcm5ldGVzQXBpRW5kcG9pbnRzPzoge1xuICAgIGNhQnVuZGxlPzogc3RyaW5nO1xuICAgIHNlcnZlckVuZHBvaW50czogQXJyYXk8e1xuICAgICAgY2xpZW50Q0lEUjogc3RyaW5nO1xuICAgICAgc2VydmVyQWRkcmVzczogc3RyaW5nO1xuICAgIH0+O1xuICB9O1xufVxuXG5leHBvcnQgdHlwZSBDbHVzdGVyU3RhdHVzUmVhc29uID1cbiAgfCAnVGltZW91dCdcbiAgfCAnRm9yYmlkZGVuJ1xuICB8ICdVbmF1dGhvcml6ZWQnXG4gIHwgJ1NvbWVDb21wb25lbnRzVW5oZWFsdGh5J1xuICB8ICdTb21lTm9kZXNOb3RSZWFkeSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3RlclN0YXR1c0NvbmRpdGlvbiBleHRlbmRzIENvbmRpdGlvbiB7XG4gIGxhc3RUcmFuc2l0aW9uVGltZTogc3RyaW5nO1xuICB0eXBlOlxuICAgIHwgJ05vdFJlYWNoYWJsZSdcbiAgICB8ICdOb3RBY2Nlc3NpYmxlJ1xuICAgIHwgJ0NvbXBvbmVudE5vdEhlYWx0aHknXG4gICAgfCAnTm9kZU5vdFJlYWR5JztcbiAgc3RhdHVzOiAnVHJ1ZScgfCAnRmFsc2UnO1xuICByZWFzb246IENsdXN0ZXJTdGF0dXNSZWFzb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3RlclN0YXR1cyB7XG4gIHZlcnNpb246IHN0cmluZztcbiAgY29uZGl0aW9uczogQ2x1c3RlclN0YXR1c0NvbmRpdGlvbltdO1xufVxuXG4vLyBjbHVzdGVycy5jbHVzdGVycmVnaXN0cnkuazhzLmlvIOeahOexu+Wei+WumuS5iVxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgbWV0YWRhdGE/OiBPYmplY3RNZXRhICYge1xuICAgIGZpbmFsaXplcnM/OiBzdHJpbmdbXTtcbiAgfTtcbiAgc3BlYz86IENsdXN0ZXJTcGVjO1xuICBzdGF0dXM/OiBDbHVzdGVyU3RhdHVzO1xuICBkZXRhaWxzPzoge1xuICAgIGdyb3VwOiBzdHJpbmc7XG4gICAga2luZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB1aWQ6IHN0cmluZztcbiAgfTtcbn1cblxuLy8gQWxhdWRhIFByb2R1Y3RcbmV4cG9ydCBpbnRlcmZhY2UgQWxhdWRhUHJvZHVjdFN0YXR1cyBleHRlbmRzIENvbmRpdGlvbiB7XG4gIGRlcGxveVN0YXR1cz86IEFsYXVkYURlcGxveVN0YXR1cztcbiAgcnVubmluZ1N0YXR1cz86IEFsYXVkYVJ1bm5pbmdTdGF0dXM7XG4gIG1lc3NhZ2U6IHN0cmluZztcbiAgZGVwbG95VGltZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQWxhdWRhUnVubmluZ1N0YXR1cyB7XG4gIE5PVF9SVU5OSU5HID0gJ05vdFJ1bm5pbmcnLFxuICBIRUFMVEhZID0gJ0hlYWx0aHknLFxuICBBQk5PUk1BTCA9ICdBYm5vcm1hbCcsXG59XG5cbmV4cG9ydCBlbnVtIEFsYXVkYURlcGxveVN0YXR1cyB7XG4gIE5PVF9ERVBMT1lFRCA9ICdOb3REZXBsb3llZCcsXG4gIFNVQ0NFU1MgPSAnc3VjY2VzcycsXG4gIEFCTk9STUFMID0gJ0Fibm9ybWFsJyxcbiAgREVQTE9ZSU5HID0gJ0RlcGxveWluZycsXG4gIERFUExPWV9GQUlMRUQgPSAnRGVwbG95RmFpbGVkJyxcbiAgVVBHUkFESU5HID0gJ1VwZ3JhZGluZycsXG4gIFVQR1JBREVfRkFJTEVEID0gJ1VwZ3JhZGVGYWlsZWQnLFxuICBDT01QTEVURUQgPSAnQ29tcGxldGVkJyxcbiAgUEVORElORyA9ICdQZW5kaW5nJyxcbn1cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEJhc2UgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiBQcm9kdWN0QmFzZVNwZWM7XG4gIHN0YXR1cz86IFByb2R1Y3RCYXNlU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RTdGF0dXNDb25kaXRpb24ge1xuICBzdGF0dXM/OiAnVHJ1ZScgfCAnRmFsc2UnIHwgJ1Vua25vd24nO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHR5cGU6ICdSZWFkeScgfCAnSW5pdGlhbGl6ZWQnIHwgJ1JlY2xhaW1lZCcgfCAnU3VjY2VlZCc7XG4gIGxhc3RUcmFuc2l0aW9uVGltZT86IHN0cmluZztcbiAgbGFzdEhlYXJ0YmVhdFRpbWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEJhc2VTdGF0dXMge1xuICBnbG9iYWxJRDogc3RyaW5nO1xuICBjbG91ZDoge1xuICAgIHBoYXNlOiAnT05MaW5lJyB8ICdDb25uZWN0RmFpbGVkJyB8ICdDb25uZWN0aW5nJyB8ICdPRkZMaW5lJztcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgY29ubmVjdFVSTDogc3RyaW5nO1xuICB9O1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIHBoYXNlPzpcbiAgICB8ICdQZW5kaW5nJ1xuICAgIHwgJ1Byb3Zpc2lvbmluZydcbiAgICB8ICdQcm92aXNpb25lZCdcbiAgICB8ICdEZWxldGluZydcbiAgICB8ICdGYWlsZWQnXG4gICAgfCAnUnVubmluZydcbiAgICB8ICdJbnN0YWxsaW5nJyAvLyB0ZHNxbFxuICAgIHwgJ1VwZ3JhZGluZyc7XG4gIHByb2R1Y3RFbnRyeXBvaW50Pzogc3RyaW5nO1xuICBkZWxldGFibGU/OiBib29sZWFuO1xuICBjb25kaXRpb25zPzogUHJvZHVjdFN0YXR1c0NvbmRpdGlvbltdO1xuICBwcm9tZXRoZXVzQWRkcmVzcz86IHN0cmluZztcbiAgZWxhc3RpY1NlYXJjaEFkZHJlc3M/OiBzdHJpbmc7XG4gIGthZmthQWRkcmVzcz86IHN0cmluZztcbiAgY29udGFpbmVyUGxhdGZvcm0/OiBBbGF1ZGFQcm9kdWN0U3RhdHVzO1xuICBkZXZvcHM/OiBBbGF1ZGFQcm9kdWN0U3RhdHVzO1xuICBzZXJ2aWNlTWVzaD86IEFsYXVkYVByb2R1Y3RTdGF0dXM7XG4gIGRhdGFTZXJ2aWNlcz86IEFsYXVkYVByb2R1Y3RTdGF0dXM7XG4gIGJhc2U/OiBBbGF1ZGFQcm9kdWN0U3RhdHVzO1xuICBwcm9ncmVzcz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IFByb2R1Y3RLZXkgPSB7XG4gIEJBU0U6ICdiYXNlJyxcbiAgQ09OVEFJTkVSX1BMQVRGT1JNOiAnY29udGFpbmVyUGxhdGZvcm0nLFxuICBERVZPUFM6ICdkZXZvcHMnLFxuICBTRVJWSUNFX01FU0g6ICdzZXJ2aWNlTWVzaCcsXG4gIERBVEFfU0VSVklDRVM6ICdkYXRhU2VydmljZXMnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgUHJvZHVjdEtleSA9IFZhbHVlT2Y8dHlwZW9mIFByb2R1Y3RLZXk+O1xuXG50eXBlIEdlblByb2R1Y3Q8VCBleHRlbmRzIFByb2R1Y3RLZXk+ID0gUmVjb3JkPFQsIHsgaW5zdGFsbDogYm9vbGVhbiB9PjtcblxuZXhwb3J0IGludGVyZmFjZSBUbHMge1xuICBjZXJ0OiBzdHJpbmc7XG4gIGtleTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RCYXNlU3BlYyBleHRlbmRzIEdlblByb2R1Y3Q8UHJvZHVjdEtleT4ge1xuICBhbHRlcm5hdGl2ZVVSTHM6IHN0cmluZ1tdO1xuICBjaGFydE11c2V1bToge1xuICAgIHVybDogc3RyaW5nO1xuICB9O1xuICBwYWNrYWdlRWRpdGlvbjogc3RyaW5nO1xuICB2YWx1ZXNPdmVycmlkZT86IHtcbiAgICBkZXg6IFN0cmluZ01hcDtcbiAgfTtcbiAgY2hhcnRWZXJzaW9uczogW3sgbmFtZTogc3RyaW5nOyB2ZXJzaW9uOiBzdHJpbmcgfV07XG4gIGRlZmF1bHRBZG1pbjoge1xuICAgIGFjY291bnQ6IHN0cmluZztcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHBhc3N3b3JkOiBzdHJpbmc7XG4gIH07XG4gIGRlZmF1bHRSZWRpcmVjdFBhdGg6IHN0cmluZztcbiAgZGVwbG95VHlwZTogc3RyaW5nO1xuICBlbGFzdGljc2VhcmNoOiB7XG4gICAgaW5zdGFsbDogYm9vbGVhbjtcbiAgICBub2Rlczogc3RyaW5nW107XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgfTtcbiAgaHR0cDoge1xuICAgIGZvcmNlUmVkaXJlY3RIdHRwcz86IGJvb2xlYW47XG4gICAgaHR0cFBvcnQ/OiBudW1iZXI7XG4gICAgaHR0cHNQb3J0PzogbnVtYmVyO1xuICAgIHRscz86IFRscztcbiAgfTtcbiAgaW5ncmVzczoge1xuICAgIGNvbnRyb2xsZXI6IHsgaW5zdGFsbDogYm9vbGVhbjsgbm9kZXM6IHN0cmluZ1tdIH07XG4gICAgaG9zdDogc3RyaW5nO1xuICAgIGluZ3Jlc3NDbGFzc05hbWU6IHN0cmluZztcbiAgfTtcbiAga2Fma2E6IHtcbiAgICBhdXRoOiBib29sZWFuO1xuICAgIGluc3RhbGw6IGJvb2xlYW47XG4gICAgbm9kZXM6IHN0cmluZ1tdO1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gIH07XG4gIGxvZ0FnZW50OiB7XG4gICAgZW5hYmxlOiBib29sZWFuO1xuICB9O1xuICBsb2dDZW50ZXI6IHtcbiAgICBlbmFibGU6IGJvb2xlYW47XG4gIH07XG4gIHBsYXRmb3JtVVJMOiBzdHJpbmc7XG4gIHByb21ldGhldXM6IHtcbiAgICBpbnN0YWxsOiBib29sZWFuO1xuICAgIHJlcGxpY2FzOiBudW1iZXI7XG4gICAgc3RvcmFnZTogeyBjYXBhY2l0eTogbnVtYmVyOyBub2Rlczogc3RyaW5nW107IHBhdGg6IHN0cmluZzsgdHlwZTogc3RyaW5nIH07XG4gIH07XG5cbiAgcmVnaXN0cnk6IHtcbiAgICBleHRlcm5hbD86IHN0cmluZztcbiAgICBhZGRyZXNzOiBzdHJpbmc7XG4gICAgdXNlcm5hbWU6IHN0cmluZztcbiAgICBzZWNyZXRSZWY/OiBzdHJpbmc7XG4gIH07XG4gIHJlcGxpY2FzOiBudW1iZXI7XG4gIHZlcnNpb246IHN0cmluZztcbiAgY2xvdWQ6IHtcbiAgICBjb25uZWN0OiBib29sZWFuO1xuICAgIGNvbm5lY3RUeXBlOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdFNwZWMge1xuICBjbHVzdGVyczogUHJvamVjdENsdXN0ZXJbXTtcbiAgc3RhdHVzPzoge1xuICAgIHBoYXNlOiBzdHJpbmc7XG4gIH07XG4gIGNsdXN0ZXJEZWxldGVQb2xpY3k/OiAnRGVsZXRlJyB8ICdSZXRhaW4nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3RDbHVzdGVyIHtcbiAgbmFtZTogc3RyaW5nO1xuICBxdW90YTogc3RyaW5nOyAvLyBcIntcXFwiY3B1XFxcIjotMSxcXFwibWVtb3J5XFxcIjotMSxcXFwicG9kc1xcXCI6LTEsXFxcInB2Y19udW1cXFwiOi0xLFxcXCJzdG9yYWdlXFxcIjotMX1cIlxuICB0eXBlPzogJycgfCAnRmVkTWVtYmVyJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0IGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYzogUHJvamVjdFNwZWM7XG4gIHN0YXR1cz86IHtcbiAgICBwaGFzZTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VNZXNoR3JvdXAgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiB7XG4gICAgazhzVmVyc2lvbjogc3RyaW5nO1xuICAgIHdpdGhvdXRJc3Rpbz86IGJvb2xlYW47XG4gICAgaXN0aW9WZXJzaW9uOiBzdHJpbmc7XG4gICAgcHJpbWFyeTogc3RyaW5nO1xuICAgIHNlbGVjdG9yOiB7XG4gICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gICAgfTtcbiAgICBjbHVzdGVyczogc3RyaW5nW107XG4gICAgbWVzaENvbW1vbkNvbmZpZz86IE1lc2hDb21tb25Db25maWc7XG4gICAgY2x1c3RlckNvbmZpZ3M/OiB7XG4gICAgICBbY2x1c3Rlck5hbWU6IHN0cmluZ106IENsdXN0ZXJDb25maWc7XG4gICAgfTtcbiAgfTtcbiAgc3RhdHVzOiB7XG4gICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgTWVzc2FnZTogc3RyaW5nO1xuICAgIGNsdXN0ZXJDb3VudDogbnVtYmVyO1xuICAgIGxhdGVzdFVwZGF0ZVRpbWU6IHN0cmluZztcbiAgICBOb25SZWFkeUNsdXN0ZXJDb3VudDogbnVtYmVyO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lc2hDb21tb25Db25maWcge1xuICBlbGFzdGljc2VhcmNoOiB7XG4gICAgaXNEZWZhdWx0OiBib29sZWFuO1xuICAgIHBhc3N3b3JkPzogc3RyaW5nO1xuICAgIHVybDogc3RyaW5nO1xuICAgIHVzZXJuYW1lPzogc3RyaW5nO1xuICB9O1xuICBtb25pdG9yVHlwZTogc3RyaW5nO1xuICBwcm9tZXRoZXVzQmFzaWNBdXRoOiB7XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgICB1c2VybmFtZTogc3RyaW5nO1xuICB9O1xuICBpc0RlZmF1bHRNb25pdG9yOiBib29sZWFuO1xuICBwcm9tZXRoZXVzVVJMOiBzdHJpbmc7XG4gIHRyYWNlU2FtcGxpbmc6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyQ29uZmlnIHtcbiAgaXN0aW9TaWRlY2FyOiB7XG4gICAgY3B1VmFsdWU6IHN0cmluZztcbiAgICBtZW1vcnlWYWx1ZTogc3RyaW5nO1xuICB9O1xuICBrYWZrYT86IHtcbiAgICBhdXRoZW50aWNhdGlvbjogc3RyaW5nO1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgICB1c2VybmFtZTogc3RyaW5nO1xuICB9O1xuICByZWRpcz86IFJlZGlzQ29uZmlnO1xuICB0cmFjZVNhbXBsaW5nOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVkaXNDb25maWcge1xuICBlbmFibGVkOiBib29sZWFuO1xuICBraW5kOiAnc2luZ2xlJyB8ICdjbHVzdGVyJyB8ICdzZW50aW5lbCc7XG4gIGFkZHJlc3M6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbiAgbWFzdGVyTmFtZT86IHN0cmluZztcbn1cblxuLy8gVEtFXG5leHBvcnQgaW50ZXJmYWNlIFRLRUNsdXN0ZXJTcGVjIHtcbiAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgc2VydmljZUNJRFI/OiBzdHJpbmc7XG4gIGRvY2tlckV4dHJhQXJncz86IFN0cmluZ01hcDtcbiAga3ViZWxldEV4dHJhQXJncz86IFN0cmluZ01hcDtcbiAgY29udHJvbGxlck1hbmFnZXJFeHRyYUFyZ3M/OiBTdHJpbmdNYXA7XG4gIHNjaGVkdWxlckV4dHJhQXJncz86IFN0cmluZ01hcDtcbiAgcHVibGljQWx0ZXJuYXRpdmVOYW1lcz86IHN0cmluZ1tdO1xuICBjbHVzdGVyQ0lEUj86IHN0cmluZztcbiAgbmV0d29ya0RldmljZT86IHN0cmluZztcbiAgcHJvcGVydGllcz86IHtcbiAgICBtYXhDbHVzdGVyU2VydmljZU51bT86IG51bWJlcjtcbiAgICBtYXhOb2RlUG9kTnVtPzogbnVtYmVyO1xuICAgIG92ZXJzb2xkUmF0aW8/OiB7XG4gICAgICBjcHU6IHN0cmluZztcbiAgICAgIG1lbW9yeTogc3RyaW5nO1xuICAgIH07XG4gIH07XG4gIGZlYXR1cmVzPzoge1xuICAgIGVuYWJsZU1hc3RlclNjaGVkdWxlPzogYm9vbGVhbjtcbiAgICBpcHY2RHVhbFN0YWNrPzogYm9vbGVhbjtcbiAgICBmaWxlcz86IEFycmF5PHtcbiAgICAgIHNyYz86IHN0cmluZztcbiAgICAgIGRzdD86IHN0cmluZztcbiAgICB9PjtcbiAgICBoYT86IHtcbiAgICAgIHRoaXJkUGFydHk/OiB7XG4gICAgICAgIHZpcD86IHN0cmluZztcbiAgICAgICAgdnBvcnQ/OiBudW1iZXI7XG4gICAgICB9O1xuICAgICAgdGtlPzoge1xuICAgICAgICB2cmlkPzogdW5rbm93bjtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbiAgdHlwZTogJ0JhcmVtZXRhbCcgfCAnSW1wb3J0ZWQnO1xuICB2ZXJzaW9uPzogc3RyaW5nO1xuICBtYWNoaW5lcz86IFRLRU1hY2hpbmVTcGVjW107XG4gIGRuc0RvbWFpbj86IHN0cmluZztcbiAgYXBpU2VydmVyRXh0cmFBcmdzPzogU3RyaW5nTWFwO1xuICBjbHVzdGVyQ3JlZGVudGlhbFJlZj86IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVEtFQ2x1c3RlciBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBUS0VDbHVzdGVyU3BlYztcbiAgc3RhdHVzPzoge1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG4gICAgcGhhc2U/OiBzdHJpbmc7XG4gICAgY29uZGl0aW9ucz86IENvbmRpdGlvbltdO1xuICAgIGFkZHJlc3Nlcz86IEFycmF5PHtcbiAgICAgIGhvc3Q6IHN0cmluZztcbiAgICAgIHBhdGg/OiAnJztcbiAgICAgIHR5cGU6ICdBZHZlcnRpc2UnIHwgJ1B1YmxpYyc7XG4gICAgICBwb3J0OiBudW1iZXI7XG4gICAgfT47XG4gICAgc2VydmljZUNJRFI/OiBzdHJpbmc7XG4gICAgbm9kZUNJRFJNYXNrU2l6ZT86IG51bWJlcjtcbiAgICBkbnNJUD86IHN0cmluZztcbiAgfTtcbiAgZ2F0ZXdheU5vZGU/OiBOb2RlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRLRU1hY2hpbmVTcGVjIHtcbiAgY2x1c3Rlck5hbWU/OiBzdHJpbmc7XG4gIHJvbGU/OiAnbm9kZScgfCAnbWFzdGVyJztcbiAgaXA/OiBzdHJpbmc7XG4gIGlwdjY/OiBzdHJpbmc7XG4gIHB1YmxpY0lQPzogc3RyaW5nO1xuICBkaXNwbGF5TmFtZT86IHN0cmluZztcbiAgbmV0d29ya0RldmljZT86IHN0cmluZztcbiAgcG9ydDogbnVtYmVyO1xuICBwYXNzd29yZD86IHN0cmluZztcbiAgcHJpdmF0ZUtleT86IHN0cmluZztcbiAgcGFzc1BocmFzZT86IHN0cmluZztcbiAgdXNlcm5hbWU6IHN0cmluZztcbiAgbGFiZWxzPzoge1xuICAgIFsnbnZpZGlhLWRldmljZS1lbmFibGUnXT86IHN0cmluZztcbiAgICBbJ25vZGUtcm9sZS5rdWJlcm5ldGVzLmlvL2NwYWFzLXN5c3RlbSddPzogc3RyaW5nO1xuICB9O1xuICB0eXBlPzogc3RyaW5nO1xuICBwcm94eT86IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ6IHN0cmluZztcbiAgfTtcbiAgYW5ub3RhdGlvbnM/OiBTdHJpbmdNYXA7XG4gIHRhaW50cz86IE5vZGVUYWludFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJDcmVkZW50aWFsIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgY2x1c3Rlck5hbWU6IHN0cmluZztcbiAgY2FDZXJ0OiBzdHJpbmc7XG4gIHRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVEtFTWFjaGluZSBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBUS0VNYWNoaW5lU3BlYztcbiAgc3RhdHVzPzogTm9kZVN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNYWNoaW5lIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IE1hY2hpbmVTcGVjO1xuICBzdGF0dXM/OiBNYWNoaW5lU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1hY2hpbmVTcGVjIHtcbiAgY2x1c3Rlcjogc3RyaW5nO1xuICBwcm92aWRlcjogc3RyaW5nO1xuICBwcm92aWRlclNwZWM6IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFjaGluZVN0YXR1cyB7XG4gIHVzZXJEYXRhU2VjcmV0Pzoge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gIH07XG4gIG5vZGVSZWY/OiB7XG4gICAgbmFtZT86IHN0cmluZztcbiAgfTtcbiAgbGFzdFVwZGF0ZTogc3RyaW5nO1xuICBlcnJSZWFzb246IHN0cmluZztcbiAgZXJyTWVzc2FnZTogc3RyaW5nO1xuICBwaGFzZTogc3RyaW5nO1xuICBjb25kaXRpb25zOiBDb25kaXRpb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyVmlldyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiB2b2lkO1xuICBzdGF0dXM/OiBDbHVzdGVyVmlld1N0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyVmlld1N0YXR1cyB7XG4gIHByb3Zpc2lvblR5cGU6ICdTZWxmSG9zdGVkJyB8ICdQcm92aWRlckhvc3RlZCcgfCAnSW1wb3J0ZWQnIHwgJ1JlZ2lzdGVyZWQnO1xuICBjbHVzdGVyVHlwZTogc3RyaW5nO1xuICBzdXBwb3J0V2luZG93czogYm9vbGVhbjtcbiAgcmVnaXN0cnlBZGRyZXNzOiBzdHJpbmc7XG4gIGNvbmRpdGlvbnM6IENvbmRpdGlvbltdO1xuICBwcm9qZWN0czogQXJyYXk8eyBuYW1lOiBzdHJpbmc7IGRpc3BsYXlOYW1lOiBzdHJpbmcgfT47XG4gIGNvbnRyb2xQbGFuZUVuZHBvaW50czoge1xuICAgIGRlZmF1bHQ6IHN0cmluZztcbiAgICBhZHZlcnRpc2U6IHN0cmluZztcbiAgICBwdWJsaWM/OiBzdHJpbmc7XG4gIH07XG4gIG5vZGVzSW5mbzoge1xuICAgIHJlYWR5Tm9kZXM6IG51bWJlcjtcbiAgICBub3RSZWFkeU5vZGVzOiBudW1iZXI7XG4gICAgYXJjaGl0ZWN0dXJlczogc3RyaW5nW107XG4gICAgdG90YWxDUFVDb3JlczogbnVtYmVyO1xuICAgIHRvdGFsTWVtb3JpZXM6IG51bWJlcjtcbiAgICBjcmlWZXJzaW9uczogc3RyaW5nW107XG4gICAgZXh0cmFSZXNvdXJjZXM/OiB7IFtrZXk6IHN0cmluZ106IENsdXN0ZXJEZXZpY2VSZXNvdXJjZSB9O1xuICB9O1xuICBjbHVzdGVyTmV0d29yazoge1xuICAgIGhhTG9hZEJhbGFuY2VyVHlwZT86ICdBbGl2ZScgfCAnVGhpcmRQYXJ0eSc7XG4gICAgY25pVHlwZTogc3RyaW5nO1xuICAgIHByb3RvY29sU3RhY2s6ICdJUHY0JyB8ICdJUHY2JyB8ICdEdWFsLVN0YWNrJztcbiAgICBzZXJ2aWNlQ0lEUnM6IHN0cmluZ1tdO1xuICAgIHBvZENJRFJzOiBzdHJpbmdbXTtcbiAgICBleHRyYUluZm86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gICAgdnJpZD86IG51bWJlcjtcbiAgICBtYXhOb2Rlcz86IG51bWJlcjtcbiAgfTtcbiAgbWFuYWdlZEJ5Pzoge1xuICAgIHBsdWdpbk5hbWU6IHN0cmluZztcbiAgICBlbnRyeXBvaW50OiBzdHJpbmc7XG4gIH07XG4gIGdwdVBsdWdpblR5cGU/OiAnVmlydHVhbCcgfCAnUGh5c2ljYWwnO1xuICBoaWdoQXZhaWxhYmxlOiBib29sZWFuO1xuICBuZWVkVXBncmFkZTogYm9vbGVhbjtcbiAgdXBncmFkYWJsZTogYm9vbGVhbjtcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBwaGFzZTogc3RyaW5nO1xuICBleHRyYUFyZ3M6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+O1xuICBwdWJsaWNBbHRlcm5hdGl2ZU5hbWVzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyRGV2aWNlUmVzb3VyY2Uge1xuICB2YWx1ZTogbnVtYmVyO1xuICB1bml0Pzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbkVuPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvblpoPzogc3RyaW5nO1xuICBsYWJlbEVuPzogc3RyaW5nO1xuICBsYWJlbFpoPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3ZpZGVyTmV0d29ya1NwZWMge1xuICBkZWZhdWx0SW50ZXJmYWNlOiBzdHJpbmc7XG4gIGN1c3RvbUludGVyZmFjZXM6IEFycmF5PHtcbiAgICBpbnRlcmZhY2U6IHN0cmluZztcbiAgICBub2Rlczogc3RyaW5nW107XG4gIH0+O1xuICBleGNsdWRlTm9kZXM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb3ZpZGVyTmV0d29yayBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM6IFByb3ZpZGVyTmV0d29ya1NwZWM7XG4gIHN0YXR1cz86IHtcbiAgICByZWFkeTogYm9vbGVhbjtcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgTG9jYWxlRGlzcGxheSA9IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEVudHJ5U3BlYyB7XG4gIGxvZ28/OiBzdHJpbmc7XG4gIGRpc3BsYXlOYW1lPzogTG9jYWxlRGlzcGxheTtcbiAgZGVzY3JpcHRpb24/OiBMb2NhbGVEaXNwbGF5O1xuICBjYXRhbG9nPzogTG9jYWxlRGlzcGxheTtcbiAgZW50cnlwb2ludD86IHN0cmluZztcbiAgc3NvRW5hYmxlZD86IGJvb2xlYW47XG4gIHBhY2tUeXBlPzogJ0ludGVncmF0ZWQnIHwgJ0J1aWxkSW4nIHwgJ0FkbWluUGFnZSc7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEVudHJ5U3RhdHVzIHtcbiAgaGlkZGVuT25Qb3J0YWw/OiBib29sZWFuO1xuICBoaWRkZW5Pbk1lbnU/OiBib29sZWFuO1xuICBvcmRlck9uUG9ydGFsPzogbnVtYmVyO1xuICBvcmRlck9uTWVudT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcm9kdWN0RW50cnkgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogUHJvZHVjdEVudHJ5U3BlYztcbiAgc3RhdHVzPzogUHJvZHVjdEVudHJ5U3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3RTdGF0dXMge1xuICB0eXBlOlxuICAgIHwgJ05vdERlcGxveWVkJ1xuICAgIHwgJ0luRGVwbG95bWVudCdcbiAgICB8ICdSdW5uaW5nJ1xuICAgIHwgJ0RlcGxveW1lbnRGYWlsdXJlJ1xuICAgIHwgJ1J1bm5pbmdBYm5vcm1hbCdcbiAgICB8ICdEZWxldGluZydcbiAgICB8ICdEZWxldGVGYWlsdXJlJ1xuICAgIHwgJ0RlcGxveW1lbnRTdWNjZWVkJ1xuICAgIHwgJ1N5c3RlbUVycm9yJ1xuICAgIHwgJ1VwZ3JhZGluZyc7XG4gIGljb246IHN0cmluZztcbiAgdGV4dDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y3REb2NzRW50cnkgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiB7XG4gICAgZ3JvdXBzOiBBcnJheTx7XG4gICAgICBncm91cE5hbWU6IExvY2FsZURpc3BsYXk7XG4gICAgICBkb2NzOiBBcnJheTx7XG4gICAgICAgIGxvZ286IHN0cmluZztcbiAgICAgICAgZG9jRW50cnlwb2ludDogc3RyaW5nO1xuICAgICAgICBkaXNwbGF5TmFtZTogTG9jYWxlRGlzcGxheTtcbiAgICAgICAgZGVzY3JpcHRpb246IExvY2FsZURpc3BsYXk7XG4gICAgICB9PjtcbiAgICB9PjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIZWxtUmVxdWVzdENvbmRpdGlvbiB7XG4gIGxhc3RQcm9iZVRpbWU/OiBzdHJpbmc7XG4gIGxhc3RUcmFuc2l0aW9uVGltZT86IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICByZWFzb246IHN0cmluZzsgLy8gUGVybWlzc2lvbkNoZWNrRmFpbGVkXG4gIHN0YXR1czogJ1RydWUnIHwgJ0ZhbHNlJztcbiAgdHlwZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0bGFiLWNlLmFsYXVkYS5jbi9jb250YWluZXItcGxhdGZvcm0vY2FwdGFpbi8tL2Jsb2IvbWFzdGVyL2RvY3MvY3JkLm1kXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3QgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogSGVsbVJlcXVlc3RTcGVjO1xuICBzdGF0dXM/OiB7XG4gICAgcGhhc2U6IEhlbG1SZXF1ZXN0UGhhc2VFbnVtO1xuICAgIG5vdGVzPzogc3RyaW5nO1xuICAgIGxhc3RTcGVjSGFzaD86IHN0cmluZztcbiAgICByZWFzb24/OiBzdHJpbmc7XG4gICAgY29uZGl0aW9ucz86IEhlbG1SZXF1ZXN0Q29uZGl0aW9uW107XG4gICAgdGFyZ2V0Q2x1c3RlclN5bmNSZXN1bHRzPzogSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdHM7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdHMge1xuICBbY2x1c3Rlcjogc3RyaW5nXTogSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdDtcbn1cblxuZXhwb3J0IGVudW0gQ2xvdWRIZWxtUmVxdWVzdFN0YXRlRW51bSB7XG4gIFBlbmRpbmcgPSAnUGVuZGluZycsXG4gIFJ1bm5pbmcgPSAnUnVubmluZycsXG4gIFN0b3BwZWQgPSAnU3RvcHBlZCcsXG4gIEZhaWxlZCA9ICdGYWlsZWQnLFxuICBFbXB0eSA9ICdFbXB0eScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3RDbHVzdGVyU3luY1Jlc3VsdCB7XG4gIGFwcFN0YXR1czogQ2xvdWRIZWxtUmVxdWVzdFN0YXRlRW51bTtcbiAgZW5kcG9pbnQ6IHN0cmluZztcbiAgbGFzdFVwZGF0ZUF0OiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgcGhhc2U6IEhlbG1SZXF1ZXN0UGhhc2VFbnVtO1xuICByZWFzb246IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gSGVsbVJlcXVlc3RQaGFzZUVudW0ge1xuICBTeW5jZWQgPSAnU3luY2VkJyxcbiAgRmFpbGVkID0gJ0ZhaWxlZCcsXG4gIFBlbmRpbmcgPSAnUGVuZGluZycsXG4gIFVuaW5zdGFsbGluZyA9ICdVbmluc3RhbGxpbmcnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlbG1SZXF1ZXN0U3BlYyB7XG4gIGNoYXJ0Pzogc3RyaW5nO1xuICB2YWx1ZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICB2YWx1ZXNGcm9tPzogQXJyYXk8e1xuICAgIGNvbmZpZ01hcEtleVJlZj86IENvbmZpZ01hcEtleVJlZjtcbiAgICBzZWNyZXRLZXlSZWY/OiBTZWNyZXRLZXlSZWY7XG4gIH0+O1xuICBjbHVzdGVyTmFtZT86IHN0cmluZztcbiAgbmFtZXNwYWNlPzogc3RyaW5nO1xuICByZWxlYXNlTmFtZT86IHN0cmluZztcbiAgdmVyc2lvbj86IHN0cmluZztcbiAgcHJvamVjdE5hbWU/OiBzdHJpbmc7XG4gIHNvdXJjZT86IHtcbiAgICBvY2k/OiBIZWxtUmVxdWVzdE9jaTtcbiAgICBodHRwPzogSGVsbVJlcXVlc3RIdHRwO1xuICB9O1xuICB0YXJnZXRDbHVzdGVycz86IHtcbiAgICBjbHVzdGVyTmFtZXM6IHtcbiAgICAgIG5hbWVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhlbG1SZXF1ZXN0T2NpIHtcbiAgcmVwbzogc3RyaW5nO1xuICBzZWNyZXRSZWY6IHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSGVsbVJlcXVlc3RIdHRwIHtcbiAgdXJsOiBzdHJpbmc7XG4gIHNlY3JldFJlZjogc3RyaW5nO1xufVxuXG4vKipcbiAqIGh0dHBzOi8vY29uZmx1ZW5jZS5hbGF1ZGEuY24vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0xNzY4ODM0NzBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVc2VyQmluZGluZyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBVc2VyQmluZGluZ1NwZWM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckJpbmRpbmdTcGVjIHtcbiAgc3ViamVjdHM6IEFycmF5PHtcbiAgICBraW5kOiAnVXNlcicgfCAnR3JvdXAnIHwgJ1NlcnZpY2VBY2NvdW50JztcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH0+O1xuICByb2xlUmVmOiBzdHJpbmc7XG4gIHNjb3BlOiBzdHJpbmc7IC8vIOaUr+aMgeexu+Wei3BsYXRmb3JtLCBjbHVzdGVyLCBwcm9qZWN0LCBuYW1lc3BhY2VcbiAgY29uc3RyYWludDogQXJyYXk8e1xuICAgIHByb2plY3Q/OiBzdHJpbmc7XG4gICAgY2x1c3Rlcj86IHN0cmluZztcbiAgICBuYW1lc3BhY2U/OiBzdHJpbmc7XG4gIH0+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvbGVSdWxlIHtcbiAgbW9kdWxlOiBzdHJpbmc7XG4gIGZ1bmN0aW9uUmVzb3VyY2VSZWY6IHN0cmluZztcbiAgZnVuY3Rpb25NZXRhZGF0YU5hbWU/OiBzdHJpbmc7XG4gIHZlcmJzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb2xlQ3VzdG9tUnVsZSB7XG4gIGFwaUdyb3VwOiBzdHJpbmc7XG4gIHJlc291cmNlczogc3RyaW5nW107XG4gIHZlcmJzOiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb2xlVGVtcGxhdGVTcGVjIHtcbiAgcnVsZXM/OiBSb2xlUnVsZVtdO1xuICBjdXN0b21SdWxlcz86IFJvbGVDdXN0b21SdWxlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVRlbXBsYXRlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IFJvbGVUZW1wbGF0ZVNwZWM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclJvbGVOYW1lc3BhY2Uge1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgY2x1c3Rlcjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJSb2xlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgbmFtZT86IHN0cmluZztcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgbmFtZXNwYWNlcz86IFJlY29yZDxzdHJpbmcsIFVzZXJSb2xlTmFtZXNwYWNlW10+O1xufVxuXG4vLyBodHRwOi8vY29uZmx1ZW5jZS5hbGF1ZGF0ZWNoLmNvbS9wYWdlcy92aWV3cGFnZS5hY3Rpb24/cGFnZUlkPTM5MzM4MzY2IzEtJUU4JThFJUI3JUU1JThGJTk2JUU3JTk0JUE4JUU2JTg4JUI3JUU0JUJGJUExJUU2JTgxJUFGXG5leHBvcnQgaW50ZXJmYWNlIFVzZXIgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogVXNlclNwZWM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclNwZWMge1xuICBjb25uZWN0b3JfbmFtZT86IHN0cmluZztcbiAgY29ubmVjdG9yX3R5cGU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBtYWlsPzogc3RyaW5nO1xuICBncm91cHM/OiBzdHJpbmdbXTtcbiAgaXNfYWRtaW4/OiBib29sZWFuO1xuICB2YWxpZD86IGJvb2xlYW47XG4gIHVzZXJuYW1lPzogc3RyaW5nO1xuICBvbGRfcGFzc3dvcmQ/OiBzdHJpbmc7XG4gIHBhc3N3b3JkPzogc3RyaW5nO1xuICBsYXN0X2xvZ2luX3RpbWU/OiBzdHJpbmc7XG4gIGxvZ2luX2ZhaWx1cmVfdGltZXM/OiBudW1iZXI7XG4gIHN0YXRlPzogVXNlclN0YXRlO1xuICBpc19kaXNhYmxlZD86IGJvb2xlYW47XG4gIGV4cGlyZWQ/OiB7XG4gICAgYmVnaW46IHN0cmluZztcbiAgICBlbmQ6IHN0cmluZztcbiAgfTtcbiAgbW9iaWxlPzogc3RyaW5nO1xuICB3ZWJob29rVHlwZT86IFdlYmhvb2tUeXBlO1xuICB3ZWJob29rVXJsPzogc3RyaW5nO1xuICBpZHM/OiBBcnJheTx7IHR5cGU6IHN0cmluZzsgaWQ6IHN0cmluZyB9Pjtcbn1cblxuZXhwb3J0IGVudW0gVXNlclN0YXRlIHtcbiAgQUNUSVZFID0gJ2FjdGl2ZScsXG4gIExPQ0tFRCA9ICdsb2NrZWQnLFxuICBJTlZBTElEID0gJ2ludmFsaWQnLFxuICBERUxFVEVEID0gJ2RlbGV0ZWQnLFxufVxuXG5leHBvcnQgdHlwZSBXZWJob29rVHlwZSA9ICdXZWJob29rJyB8ICdEaW5nVGFsaycgfCAnV2VDaGF0JztcbiJdfQ==
|
|
@@ -347,7 +347,7 @@ const _ = createResourceDefinitions({
|
|
|
347
347
|
apiVersion: 'v1alpha1',
|
|
348
348
|
apiGroup: CLUSTER_API_GROUP,
|
|
349
349
|
},
|
|
350
|
-
|
|
350
|
+
USER_BINDING: {
|
|
351
351
|
type: 'userbindings',
|
|
352
352
|
apiGroup: AUTH_GROUP,
|
|
353
353
|
apiVersion: 'v1',
|
|
@@ -397,4 +397,4 @@ export const ServiceTypeMeta = {
|
|
|
397
397
|
apiVersion: getYamlApiVersion(RESOURCE_TYPES.SERVICE),
|
|
398
398
|
kind: 'Service',
|
|
399
399
|
};
|
|
400
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS90eXBlcy9yZXNvdXJjZS1kZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUk5RCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDbEMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUM7QUFDdEMsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUM7QUFDcEMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUNyRCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDbEMsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7QUFDdkMsTUFBTSxrQkFBa0IsR0FBRyxzQkFBc0IsQ0FBQztBQUNsRCxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLHlCQUF5QixDQUFDO0FBQy9ELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGFBQWEsQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztBQUN2RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQUM7QUFFOUMsb0ZBQW9GO0FBQ3BGLGtFQUFrRTtBQUNsRSxNQUFNLENBQUMsR0FBRyx5QkFBeUIsQ0FBQztJQUNsQyxvQkFBb0IsRUFBRTtR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R0FBYTtJQUN0QyxVQUFVLEVBQUUsaUJBQWlCLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQztJQUN6RCxJQUFJLEVBQUUsU0FBUztDQUNoQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO0lBQ3JELElBQUksRUFBRSxTQUFTO0NBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVJlc291cmNlRGVmaW5pdGlvbnMgfSBmcm9tICcuLi8uLi9hcGkvaGVscGVycyc7XG5cbmltcG9ydCB7IFR5cGVNZXRhIH0gZnJvbSAnLi9rOHMvcHVibGljLWFwaSc7XG5cbmNvbnN0IENSRF9HUk9VUCA9ICdjcmQuYWxhdWRhLmlvJztcbmNvbnN0IEFJT1BTX0dST1VQID0gJ2Fpb3BzLmFsYXVkYS5pbyc7XG5jb25zdCBBVVRIX0dST1VQID0gJ2F1dGguYWxhdWRhLmlvJztcbmNvbnN0IENPUkVPU19PUEVSQVRPUl9HUk9VUCA9ICdvcGVyYXRvcnMuY29yZW9zLmNvbSc7XG5jb25zdCBBUFBfR1JPVVAgPSAnYXBwLmFsYXVkYS5pbyc7XG5jb25zdCBTVE9SQUdFX0dST1VQID0gJ3N0b3JhZ2UuazhzLmlvJztcbmNvbnN0IFRLRV9QTEFURk9STV9HUk9VUCA9ICdwbGF0Zm9ybS50a2VzdGFjay5pbyc7XG5jb25zdCBDTFVTVEVSX0FQSV9HUk9VUCA9ICdjbHVzdGVyLmFsYXVkYS5pbyc7XG5leHBvcnQgY29uc3QgQUlUX0FQSV9HUk9VUCA9ICdhaXQuYWxhdWRhLmlvJztcblxuZXhwb3J0IGNvbnN0IE9BTV9HUk9VUCA9ICdjb3JlLm9hbS5kZXYnO1xuXG5leHBvcnQgY29uc3QgQVJHT0NEX0dST1VQID0gJ2FyZ29wcm9qLmlvJztcbmV4cG9ydCBjb25zdCBNQUNISU5FX0FQSV9HUk9VUCA9ICdtYWNoaW5lLmFsYXVkYS5pbyc7XG5leHBvcnQgY29uc3QgVk9MVU1FX1NOQVBTSE9UX0dST1VQID0gJ3NuYXBzaG90LnN0b3JhZ2UuazhzLmlvJztcbmV4cG9ydCBjb25zdCBLVUJFVklSVF9CQVNFX0RPTUFJTiA9ICdrdWJldmlydC5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0NPUkVfQVBJX0dST1VQID0gJ2NvcmUua3ViZXJuZXRlcy5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0FQUF9BUElfR1JPVVAgPSAnYXBwLms4cy5pbyc7XG5cbi8vIHJlZmVyZW5jZTogaHR0cDovL2NvbmZsdWVuY2UuYWxhdWRhdGVjaC5jb20vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0zOTMzODIyNVxuLy8gRklYTUU6IG9iamVjdCBkZXN0cnVjdHVyaW5nIHdpbGwgcmVzdWx0IGBhbnlgIHR5cGUgaGVyZSwgd2h5Pz8/XG5jb25zdCBfID0gY3JlYXRlUmVzb3VyY2VEZWZpbml0aW9ucyh7XG4gIEFMQVVEQV9MT0FEQkFMQU5DRVIyOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEFMQjI6IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MmJldGExJyxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEhFTE1fUkVRVUVTVDoge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgLy8gVE9ETzog5Y+q5o+Q5L6b5LqR6L655L2/55So77yM5ZCO57ut5a655Zmo5bmz5Y+w6ZyA6KaB5Y2H57qn5YiwIHYxXG4gIEhFTE1fUkVRVUVTVF9WMToge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgREVQTE9ZTUVOVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ2RlcGxveW1lbnRzJyxcbiAgfSxcbiAgRlJPTlRFTkQ6IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIHR5cGU6ICdmcm9udGVuZHMnLFxuICB9LFxuICBSVUxFOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAncnVsZXMnLFxuICB9LFxuICBQT0Q6IHtcbiAgICB0eXBlOiAncG9kcycsXG4gIH0sXG4gIFBPRFNfRVhFQzoge1xuICAgIHR5cGU6ICdwb2RzL2V4ZWMnLFxuICB9LFxuICBQT0RTX1JPT1RfRVhFQzoge1xuICAgIHR5cGU6ICdwb2RzL3Jvb3QtZXhlYycsXG4gIH0sXG4gIENPTkZJR19NQVA6IHtcbiAgICB0eXBlOiAnY29uZmlnbWFwcycsXG4gIH0sXG4gIEFMRVJUX1RFTVBMQVRFOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnYWxlcnR0ZW1wbGF0ZXMnLFxuICB9LFxuICBBUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBLOFNfQVBQX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9ucycsXG4gIH0sXG4gIEFQUExJQ0FUSU9OX0hJU1RPUlk6IHtcbiAgICBhcGlHcm91cDogSzhTX0FQUF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbmhpc3RvcmllcycsXG4gIH0sXG4gIENMVVNURVI6IHtcbiAgICBhcGlHcm91cDogJ2NsdXN0ZXJyZWdpc3RyeS5rOHMuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2NsdXN0ZXJzJyxcbiAgfSxcbiAgQ0xVU1RFUl9WSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdjbHVzdGVyLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcnZpZXdzJyxcbiAgfSxcbiAgREFFTU9OX1NFVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ2RhZW1vbnNldHMnLFxuICB9LFxuICBTVEFURUZVTF9TRVQ6IHtcbiAgICBhcGlHcm91cDogJ2FwcHMnLFxuICAgIHR5cGU6ICdzdGF0ZWZ1bHNldHMnLFxuICB9LFxuICBET01BSU46IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MicsXG4gICAgdHlwZTogJ2RvbWFpbnMnLFxuICB9LFxuICBGRUFUVVJFOiB7XG4gICAgYXBpR3JvdXA6ICdpbmZyYXN0cnVjdHVyZS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2ZlYXR1cmVzJyxcbiAgfSxcbiAgQUxBVURBX0ZFQVRVUkVfR0FURToge1xuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdhbGF1ZGFmZWF0dXJlZ2F0ZXMnLFxuICB9LFxuICBDTFVTVEVSX0FMQVVEQV9GRUFUVVJFX0dBVEU6IHtcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcmFsYXVkYWZlYXR1cmVnYXRlcycsXG4gIH0sXG4gIEhPUklaT05UQUxfUE9EX0FVVE9TQ0FMRVI6IHtcbiAgICBhcGlHcm91cDogJ2F1dG9zY2FsaW5nJyxcbiAgICBhcGlWZXJzaW9uOiAndjInLFxuICAgIHR5cGU6ICdob3Jpem9udGFscG9kYXV0b3NjYWxlcnMnLFxuICB9LFxuICBMT0c6IHtcbiAgICBhcGlHcm91cDogQUlPUFNfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdsb2dzJyxcbiAgfSxcbiAgUFJPSkVDVDoge1xuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICAgIHR5cGU6ICdwcm9qZWN0cycsXG4gIH0sXG4gIFBST01FVEhFVVNfUlVMRToge1xuICAgIGFwaUdyb3VwOiAnbW9uaXRvcmluZy5jb3Jlb3MuY29tJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdwcm9tZXRoZXVzcnVsZXMnLFxuICB9LFxuICBBTEVSVF9ISVNUT1JZOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0dST1VQLFxuICAgIHR5cGU6ICdhbGVydGhpc3RvcmllcycsXG4gIH0sXG4gIFNFTEZfU1VCSkVDVF9BQ0NFU1NfUkVWSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdhdXRob3JpemF0aW9uLms4cy5pbycsXG4gICAgdHlwZTogJ3NlbGZzdWJqZWN0YWNjZXNzcmV2aWV3cycsXG4gIH0sXG4gIFZJRVc6IHtcbiAgICBhcGlHcm91cDogQVVUSF9HUk9VUCxcbiAgICB0eXBlOiAndmlld3MnLFxuICB9LFxuICBTRVJWSUNFOiB7XG4gICAgdHlwZTogJ3NlcnZpY2VzJyxcbiAgfSxcbiAgTElNSVRfUkFOR0U6IHtcbiAgICB0eXBlOiAnbGltaXRyYW5nZXMnLFxuICB9LFxuICBTRUNSRVQ6IHtcbiAgICB0eXBlOiAnc2VjcmV0cycsXG4gIH0sXG4gIFBST0RVQ1Q6IHtcbiAgICB0eXBlOiAnYWxhdWRhcHJvZHVjdHMnLFxuICAgIGFwaUdyb3VwOiAncG9ydGFsLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgQ1JPTl9KT0I6IHtcbiAgICBhcGlHcm91cDogJ2JhdGNoJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdjcm9uam9icycsXG4gIH0sXG4gIEFEVkFOQ0VEX0NST05fSk9COiB7XG4gICAgdHlwZTogJ2FkdmFuY2VkY3JvbmpvYnMnLFxuICAgIGFwaUdyb3VwOiAnb3BlcmF0b3IuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBKT0I6IHtcbiAgICBhcGlHcm91cDogJ2JhdGNoJyxcbiAgICB0eXBlOiAnam9icycsXG4gIH0sXG4gIElOR1JFU1M6IHtcbiAgICBhcGlHcm91cDogJ25ldHdvcmtpbmcuazhzLmlvJyxcbiAgICB0eXBlOiAnaW5ncmVzc2VzJyxcbiAgfSxcbiAgUEVSU0lTVEVOVF9WT0xVTUVfQ0xBSU06IHtcbiAgICB0eXBlOiAncGVyc2lzdGVudHZvbHVtZWNsYWltcycsXG4gIH0sXG4gIE5BTUVTUEFDRToge1xuICAgIHR5cGU6ICduYW1lc3BhY2VzJyxcbiAgfSxcbiAgTk9ERToge1xuICAgIHR5cGU6ICdub2RlcycsXG4gIH0sXG4gIE5PREVfTUVUUklDUzoge1xuICAgIGFwaUdyb3VwOiAnbWV0cmljcy5rOHMuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbm9kZXMnLFxuICB9LFxuICBQVjoge1xuICAgIHR5cGU6ICdwZXJzaXN0ZW50dm9sdW1lcycsXG4gIH0sXG4gIENSRDoge1xuICAgIGFwaUdyb3VwOiAnYXBpZXh0ZW5zaW9ucy5rOHMuaW8nLFxuICAgIHR5cGU6ICdjdXN0b21yZXNvdXJjZWRlZmluaXRpb25zJyxcbiAgfSxcbiAgQ0hBUlRfUkVQTzoge1xuICAgIHR5cGU6ICdjaGFydHJlcG9zJyxcbiAgICBhcGlHcm91cDogQVBQX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgfSxcbiAgQ0hBUlQ6IHtcbiAgICB0eXBlOiAnY2hhcnRzJyxcbiAgICBhcGlHcm91cDogQVBQX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIE5FVFdPUktfUE9MSUNZOiB7XG4gICAgYXBpR3JvdXA6ICduZXR3b3JraW5nLms4cy5pbycsXG4gICAgdHlwZTogJ25ldHdvcmtwb2xpY2llcycsXG4gIH0sXG4gIFNFUlZJQ0VfQUNDT1VOVDoge1xuICAgIHR5cGU6ICdzZXJ2aWNlYWNjb3VudHMnLFxuICB9LFxuICBSRVBMSUNBX1NFVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ3JlcGxpY2FzZXRzJyxcbiAgfSxcbiAgUE9EX1NFQ1VSSVRZX1BPTElDWToge1xuICAgIGFwaUdyb3VwOiAncG9saWN5JyxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ3BvZHNlY3VyaXR5cG9saWNpZXMnLFxuICB9LFxuICBOQU1FU1BBQ0VfT1ZFUlZJRVc6IHtcbiAgICBhcGlHcm91cDogJ2s4cy5pbycsXG4gICAgdHlwZTogJ25hbWVzcGFjZW92ZXJ2aWV3cycsXG4gIH0sXG4gIENTUDoge1xuICAgIGFwaUdyb3VwOiAncHJvZHVjdC5hbGF1ZGEuaW8nLFxuICAgIHR5cGU6ICdjc3BzJyxcbiAgfSxcbiAgUkVTT1VSQ0VfUVVPVEE6IHtcbiAgICB0eXBlOiAncmVzb3VyY2VxdW90YXMnLFxuICB9LFxuICBDTFVTVEVSX05FVFdPUktfUE9MSUNZOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAnY2x1c3Rlcm5ldHdvcmtwb2xpY2llcycsXG4gIH0sXG4gIFZJUlRVQUxfTUFDSElORToge1xuICAgIGFwaUdyb3VwOiBLVUJFVklSVF9CQVNFX0RPTUFJTixcbiAgICB0eXBlOiAndmlydHVhbG1hY2hpbmVzJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBWSVJUVUFMX01BQ0hJTkVfSU5TVEFOQ0U6IHtcbiAgICBhcGlHcm91cDogS1VCRVZJUlRfQkFTRV9ET01BSU4sXG4gICAgdHlwZTogJ3ZpcnR1YWxtYWNoaW5laW5zdGFuY2VzJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBWSVJUVUFMX01BQ0hJTkVfUE9PTDoge1xuICAgIGFwaUdyb3VwOiBgcG9vbC4ke0tVQkVWSVJUX0JBU0VfRE9NQUlOfWAsXG4gICAgdHlwZTogJ3ZpcnR1YWxtYWNoaW5lcG9vbHMnLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFBST0pFQ1RfUVVPVEE6IHtcbiAgICBhcGlHcm91cDogJ2F1dGguYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdwcm9qZWN0cXVvdGFzJyxcbiAgfSxcbiAgVEtFX0NMVVNURVI6IHtcbiAgICBhcGlHcm91cDogVEtFX1BMQVRGT1JNX0dST1VQLFxuICAgIHR5cGU6ICdjbHVzdGVycycsXG4gIH0sXG4gIFRLRV9NQUNISU5FOiB7XG4gICAgYXBpR3JvdXA6IFRLRV9QTEFURk9STV9HUk9VUCxcbiAgICB0eXBlOiAnbWFjaGluZXMnLFxuICB9LFxuICBNQUNISU5FOiB7XG4gICAgYXBpR3JvdXA6IE1BQ0hJTkVfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbWFjaGluZXMnLFxuICB9LFxuICBOT0RFX0dST1VQOiB7XG4gICAgYXBpR3JvdXA6ICdzZWN1cml0eS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbm9kZWdyb3VwcycsXG4gIH0sXG4gIENMVVNURVJTRVJWSUNFVkVSU0lPTjoge1xuICAgIGFwaUdyb3VwOiBDT1JFT1NfT1BFUkFUT1JfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnY2x1c3RlcnNlcnZpY2V2ZXJzaW9ucycsXG4gIH0sXG4gIFRFTkFOVDoge1xuICAgIGFwaUdyb3VwOiAnbWluaW8ubWluLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjInLFxuICAgIHR5cGU6ICd0ZW5hbnRzJyxcbiAgfSxcbiAgU1VCU0NSSVBUSU9OOiB7XG4gICAgYXBpR3JvdXA6IENPUkVPU19PUEVSQVRPUl9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdzdWJzY3JpcHRpb25zJyxcbiAgfSxcbiAgUEFDS0FHRV9NQU5JRkVTVDoge1xuICAgIGFwaUdyb3VwOiAncGFja2FnZXMub3BlcmF0b3JzLmNvcmVvcy5jb20nLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3BhY2thZ2VtYW5pZmVzdHMnLFxuICB9LFxuICBCVUNLRVRfQ0xBU1M6IHtcbiAgICBhcGlHcm91cDogJ29iamVjdHN0b3JhZ2UuazhzLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdidWNrZXRjbGFzc2VzJyxcbiAgfSxcbiAgUFJPRFVDVF9DT05GSUc6IHtcbiAgICB0eXBlOiAncHJvZHVjdGNvbmZpZ3MnLFxuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBTVE9SQUdFX0NMQVNTOiB7XG4gICAgdHlwZTogJ3N0b3JhZ2VjbGFzc2VzJyxcbiAgICBhcGlHcm91cDogU1RPUkFHRV9HUk9VUCxcbiAgfSxcbiAgVk9MVU1FX1NOQVBTSE9UX0NMQVNTOiB7XG4gICAgdHlwZTogJ3ZvbHVtZXNuYXBzaG90Y2xhc3NlcycsXG4gICAgYXBpR3JvdXA6IFZPTFVNRV9TTkFQU0hPVF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBQUk9EVUNUX0JBU0U6IHtcbiAgICB0eXBlOiAncHJvZHVjdGJhc2VzJyxcbiAgICBhcGlHcm91cDogJ3Byb2R1Y3QuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBNT0RVTEVfSU5GTzoge1xuICAgIHR5cGU6ICdtb2R1bGVpbmZvZXMnLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgYXBpR3JvdXA6IENMVVNURVJfQVBJX0dST1VQLFxuICB9LFxuICBQUk9EVUNUX0VOVFJZOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3RlbnRyaWVzJyxcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgUFJPRFVDVF9ET0NTX0VOVFJZOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3Rkb2NzZW50cmllcycsXG4gICAgYXBpR3JvdXA6ICdhbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFNFUlZJQ0VNRVNIX0dST1VQOiB7XG4gICAgYXBpR3JvdXA6ICdhc20uYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdzZXJ2aWNlbWVzaGdyb3VwcycsXG4gIH0sXG4gIENMVVNURVJfTU9EVUxFOiB7XG4gICAgdHlwZTogJ2NsdXN0ZXJtb2R1bGVzJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIGFwaUdyb3VwOiBDTFVTVEVSX0FQSV9HUk9VUCxcbiAgfSxcbiAgVVNFUl9CSU5ESU5HUzoge1xuICAgIHR5cGU6ICd1c2VyYmluZGluZ3MnLFxuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIEJBVENIX0FDVElPTjoge1xuICAgIGFwaUdyb3VwOiAnYmF0Y2guYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdiYXRjaGFjdGlvbnMnLFxuICB9LFxuICBFVkVOVDoge1xuICAgIHR5cGU6ICdldmVudHMnLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIFNFUlZJQ0VfTU9OSVRPUjoge1xuICAgIGFwaUdyb3VwOiAnbW9uaXRvcmluZy5jb3Jlb3MuY29tJyxcbiAgICB0eXBlOiAnc2VydmljZW1vbml0b3JzJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBPQU1fQVBQTElDQVRJT046IHtcbiAgICBhcGlHcm91cDogT0FNX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnYXBwbGljYXRpb25zJyxcbiAgfSxcbiAgQVJHT0NEX0FQUExJQ0FUSU9OX1NFVDoge1xuICAgIGFwaUdyb3VwOiBBUkdPQ0RfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnYXBwbGljYXRpb25zZXRzJyxcbiAgfSxcbiAgQVJHT0NEX0FQUExJQ0FUSU9OOiB7XG4gICAgYXBpR3JvdXA6IEFSR09DRF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbnMnLFxuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBDT01NT05fUkVTT1VSQ0VfREVGSU5JVElPTlMgPSBfLlJFU09VUkNFX0RFRklOSVRJT05TO1xuZXhwb3J0IGNvbnN0IFJFU09VUkNFX1RZUEVTID0gXy5SRVNPVVJDRV9UWVBFUztcbmV4cG9ydCBjb25zdCBnZXRZYW1sQXBpVmVyc2lvbiA9IF8uZ2V0WWFtbEFwaVZlcnNpb247XG5cbmV4cG9ydCB0eXBlIFJlc291cmNlVHlwZSA9IGtleW9mIHR5cGVvZiBSRVNPVVJDRV9UWVBFUztcblxuZXhwb3J0IGNvbnN0IE1hY2hpbmVNZXRhOiBUeXBlTWV0YSA9IHtcbiAgYXBpVmVyc2lvbjogZ2V0WWFtbEFwaVZlcnNpb24oUkVTT1VSQ0VfVFlQRVMuVEtFX01BQ0hJTkUpLFxuICBraW5kOiAnTWFjaGluZScsXG59O1xuXG5leHBvcnQgY29uc3QgVEtFQ2x1c3Rlck1ldGE6IFR5cGVNZXRhID0ge1xuICBhcGlWZXJzaW9uOiBnZXRZYW1sQXBpVmVyc2lvbihSRVNPVVJDRV9UWVBFUy5US0VfQ0xVU1RFUiksXG4gIGtpbmQ6ICdDbHVzdGVyJyxcbn07XG5cbmV4cG9ydCBjb25zdCBTZXJ2aWNlVHlwZU1ldGEgPSB7XG4gIGFwaVZlcnNpb246IGdldFlhbWxBcGlWZXJzaW9uKFJFU09VUkNFX1RZUEVTLlNFUlZJQ0UpLFxuICBraW5kOiAnU2VydmljZScsXG59IGFzIGNvbnN0O1xuIl19
|
|
400
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UtZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS90eXBlcy9yZXNvdXJjZS1kZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUk5RCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDbEMsTUFBTSxXQUFXLEdBQUcsaUJBQWlCLENBQUM7QUFDdEMsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUM7QUFDcEMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUNyRCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUM7QUFDbEMsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUM7QUFDdkMsTUFBTSxrQkFBa0IsR0FBRyxzQkFBc0IsQ0FBQztBQUNsRCxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDO0FBQzFDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLHlCQUF5QixDQUFDO0FBQy9ELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGFBQWEsQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxvQkFBb0IsQ0FBQztBQUN2RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxZQUFZLENBQUM7QUFFOUMsb0ZBQW9GO0FBQ3BGLGtFQUFrRTtBQUNsRSxNQUFNLENBQUMsR0FBRyx5QkFBeUIsQ0FBQztJQUNsQyxvQkFBb0IsRUFBRTtR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R0FBYTtJQUN0QyxVQUFVLEVBQUUsaUJBQWlCLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQztJQUN6RCxJQUFJLEVBQUUsU0FBUztDQUNoQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO0lBQ3JELElBQUksRUFBRSxTQUFTO0NBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVJlc291cmNlRGVmaW5pdGlvbnMgfSBmcm9tICcuLi8uLi9hcGkvaGVscGVycyc7XG5cbmltcG9ydCB7IFR5cGVNZXRhIH0gZnJvbSAnLi9rOHMvcHVibGljLWFwaSc7XG5cbmNvbnN0IENSRF9HUk9VUCA9ICdjcmQuYWxhdWRhLmlvJztcbmNvbnN0IEFJT1BTX0dST1VQID0gJ2Fpb3BzLmFsYXVkYS5pbyc7XG5jb25zdCBBVVRIX0dST1VQID0gJ2F1dGguYWxhdWRhLmlvJztcbmNvbnN0IENPUkVPU19PUEVSQVRPUl9HUk9VUCA9ICdvcGVyYXRvcnMuY29yZW9zLmNvbSc7XG5jb25zdCBBUFBfR1JPVVAgPSAnYXBwLmFsYXVkYS5pbyc7XG5jb25zdCBTVE9SQUdFX0dST1VQID0gJ3N0b3JhZ2UuazhzLmlvJztcbmNvbnN0IFRLRV9QTEFURk9STV9HUk9VUCA9ICdwbGF0Zm9ybS50a2VzdGFjay5pbyc7XG5jb25zdCBDTFVTVEVSX0FQSV9HUk9VUCA9ICdjbHVzdGVyLmFsYXVkYS5pbyc7XG5leHBvcnQgY29uc3QgQUlUX0FQSV9HUk9VUCA9ICdhaXQuYWxhdWRhLmlvJztcblxuZXhwb3J0IGNvbnN0IE9BTV9HUk9VUCA9ICdjb3JlLm9hbS5kZXYnO1xuXG5leHBvcnQgY29uc3QgQVJHT0NEX0dST1VQID0gJ2FyZ29wcm9qLmlvJztcbmV4cG9ydCBjb25zdCBNQUNISU5FX0FQSV9HUk9VUCA9ICdtYWNoaW5lLmFsYXVkYS5pbyc7XG5leHBvcnQgY29uc3QgVk9MVU1FX1NOQVBTSE9UX0dST1VQID0gJ3NuYXBzaG90LnN0b3JhZ2UuazhzLmlvJztcbmV4cG9ydCBjb25zdCBLVUJFVklSVF9CQVNFX0RPTUFJTiA9ICdrdWJldmlydC5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0NPUkVfQVBJX0dST1VQID0gJ2NvcmUua3ViZXJuZXRlcy5pbyc7XG5leHBvcnQgY29uc3QgSzhTX0FQUF9BUElfR1JPVVAgPSAnYXBwLms4cy5pbyc7XG5cbi8vIHJlZmVyZW5jZTogaHR0cDovL2NvbmZsdWVuY2UuYWxhdWRhdGVjaC5jb20vcGFnZXMvdmlld3BhZ2UuYWN0aW9uP3BhZ2VJZD0zOTMzODIyNVxuLy8gRklYTUU6IG9iamVjdCBkZXN0cnVjdHVyaW5nIHdpbGwgcmVzdWx0IGBhbnlgIHR5cGUgaGVyZSwgd2h5Pz8/XG5jb25zdCBfID0gY3JlYXRlUmVzb3VyY2VEZWZpbml0aW9ucyh7XG4gIEFMQVVEQV9MT0FEQkFMQU5DRVIyOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEFMQjI6IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MmJldGExJyxcbiAgICB0eXBlOiAnYWxhdWRhbG9hZGJhbGFuY2VyMicsXG4gIH0sXG4gIEhFTE1fUkVRVUVTVDoge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgLy8gVE9ETzog5Y+q5o+Q5L6b5LqR6L655L2/55So77yM5ZCO57ut5a655Zmo5bmz5Y+w6ZyA6KaB5Y2H57qn5YiwIHYxXG4gIEhFTE1fUkVRVUVTVF9WMToge1xuICAgIHR5cGU6ICdoZWxtcmVxdWVzdHMnLFxuICAgIGFwaUdyb3VwOiBBUFBfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgREVQTE9ZTUVOVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ2RlcGxveW1lbnRzJyxcbiAgfSxcbiAgRlJPTlRFTkQ6IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIHR5cGU6ICdmcm9udGVuZHMnLFxuICB9LFxuICBSVUxFOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAncnVsZXMnLFxuICB9LFxuICBQT0Q6IHtcbiAgICB0eXBlOiAncG9kcycsXG4gIH0sXG4gIFBPRFNfRVhFQzoge1xuICAgIHR5cGU6ICdwb2RzL2V4ZWMnLFxuICB9LFxuICBQT0RTX1JPT1RfRVhFQzoge1xuICAgIHR5cGU6ICdwb2RzL3Jvb3QtZXhlYycsXG4gIH0sXG4gIENPTkZJR19NQVA6IHtcbiAgICB0eXBlOiAnY29uZmlnbWFwcycsXG4gIH0sXG4gIEFMRVJUX1RFTVBMQVRFOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnYWxlcnR0ZW1wbGF0ZXMnLFxuICB9LFxuICBBUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBLOFNfQVBQX0FQSV9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9ucycsXG4gIH0sXG4gIEFQUExJQ0FUSU9OX0hJU1RPUlk6IHtcbiAgICBhcGlHcm91cDogSzhTX0FQUF9BUElfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbmhpc3RvcmllcycsXG4gIH0sXG4gIENMVVNURVI6IHtcbiAgICBhcGlHcm91cDogJ2NsdXN0ZXJyZWdpc3RyeS5rOHMuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2NsdXN0ZXJzJyxcbiAgfSxcbiAgQ0xVU1RFUl9WSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdjbHVzdGVyLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcnZpZXdzJyxcbiAgfSxcbiAgREFFTU9OX1NFVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ2RhZW1vbnNldHMnLFxuICB9LFxuICBTVEFURUZVTF9TRVQ6IHtcbiAgICBhcGlHcm91cDogJ2FwcHMnLFxuICAgIHR5cGU6ICdzdGF0ZWZ1bHNldHMnLFxuICB9LFxuICBET01BSU46IHtcbiAgICBhcGlHcm91cDogQ1JEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MicsXG4gICAgdHlwZTogJ2RvbWFpbnMnLFxuICB9LFxuICBGRUFUVVJFOiB7XG4gICAgYXBpR3JvdXA6ICdpbmZyYXN0cnVjdHVyZS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2ZlYXR1cmVzJyxcbiAgfSxcbiAgQUxBVURBX0ZFQVRVUkVfR0FURToge1xuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdhbGF1ZGFmZWF0dXJlZ2F0ZXMnLFxuICB9LFxuICBDTFVTVEVSX0FMQVVEQV9GRUFUVVJFX0dBVEU6IHtcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB0eXBlOiAnY2x1c3RlcmFsYXVkYWZlYXR1cmVnYXRlcycsXG4gIH0sXG4gIEhPUklaT05UQUxfUE9EX0FVVE9TQ0FMRVI6IHtcbiAgICBhcGlHcm91cDogJ2F1dG9zY2FsaW5nJyxcbiAgICBhcGlWZXJzaW9uOiAndjInLFxuICAgIHR5cGU6ICdob3Jpem9udGFscG9kYXV0b3NjYWxlcnMnLFxuICB9LFxuICBMT0c6IHtcbiAgICBhcGlHcm91cDogQUlPUFNfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdsb2dzJyxcbiAgfSxcbiAgUFJPSkVDVDoge1xuICAgIGFwaUdyb3VwOiBBVVRIX0dST1VQLFxuICAgIHR5cGU6ICdwcm9qZWN0cycsXG4gIH0sXG4gIFBST01FVEhFVVNfUlVMRToge1xuICAgIGFwaUdyb3VwOiAnbW9uaXRvcmluZy5jb3Jlb3MuY29tJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdwcm9tZXRoZXVzcnVsZXMnLFxuICB9LFxuICBBTEVSVF9ISVNUT1JZOiB7XG4gICAgYXBpR3JvdXA6IEFJT1BTX0dST1VQLFxuICAgIHR5cGU6ICdhbGVydGhpc3RvcmllcycsXG4gIH0sXG4gIFNFTEZfU1VCSkVDVF9BQ0NFU1NfUkVWSUVXOiB7XG4gICAgYXBpR3JvdXA6ICdhdXRob3JpemF0aW9uLms4cy5pbycsXG4gICAgdHlwZTogJ3NlbGZzdWJqZWN0YWNjZXNzcmV2aWV3cycsXG4gIH0sXG4gIFZJRVc6IHtcbiAgICBhcGlHcm91cDogQVVUSF9HUk9VUCxcbiAgICB0eXBlOiAndmlld3MnLFxuICB9LFxuICBTRVJWSUNFOiB7XG4gICAgdHlwZTogJ3NlcnZpY2VzJyxcbiAgfSxcbiAgTElNSVRfUkFOR0U6IHtcbiAgICB0eXBlOiAnbGltaXRyYW5nZXMnLFxuICB9LFxuICBTRUNSRVQ6IHtcbiAgICB0eXBlOiAnc2VjcmV0cycsXG4gIH0sXG4gIFBST0RVQ1Q6IHtcbiAgICB0eXBlOiAnYWxhdWRhcHJvZHVjdHMnLFxuICAgIGFwaUdyb3VwOiAncG9ydGFsLmFsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgQ1JPTl9KT0I6IHtcbiAgICBhcGlHcm91cDogJ2JhdGNoJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdjcm9uam9icycsXG4gIH0sXG4gIEFEVkFOQ0VEX0NST05fSk9COiB7XG4gICAgdHlwZTogJ2FkdmFuY2VkY3JvbmpvYnMnLFxuICAgIGFwaUdyb3VwOiAnb3BlcmF0b3IuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBKT0I6IHtcbiAgICBhcGlHcm91cDogJ2JhdGNoJyxcbiAgICB0eXBlOiAnam9icycsXG4gIH0sXG4gIElOR1JFU1M6IHtcbiAgICBhcGlHcm91cDogJ25ldHdvcmtpbmcuazhzLmlvJyxcbiAgICB0eXBlOiAnaW5ncmVzc2VzJyxcbiAgfSxcbiAgUEVSU0lTVEVOVF9WT0xVTUVfQ0xBSU06IHtcbiAgICB0eXBlOiAncGVyc2lzdGVudHZvbHVtZWNsYWltcycsXG4gIH0sXG4gIE5BTUVTUEFDRToge1xuICAgIHR5cGU6ICduYW1lc3BhY2VzJyxcbiAgfSxcbiAgTk9ERToge1xuICAgIHR5cGU6ICdub2RlcycsXG4gIH0sXG4gIE5PREVfTUVUUklDUzoge1xuICAgIGFwaUdyb3VwOiAnbWV0cmljcy5rOHMuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbm9kZXMnLFxuICB9LFxuICBQVjoge1xuICAgIHR5cGU6ICdwZXJzaXN0ZW50dm9sdW1lcycsXG4gIH0sXG4gIENSRDoge1xuICAgIGFwaUdyb3VwOiAnYXBpZXh0ZW5zaW9ucy5rOHMuaW8nLFxuICAgIHR5cGU6ICdjdXN0b21yZXNvdXJjZWRlZmluaXRpb25zJyxcbiAgfSxcbiAgQ0hBUlRfUkVQTzoge1xuICAgIHR5cGU6ICdjaGFydHJlcG9zJyxcbiAgICBhcGlHcm91cDogQVBQX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgfSxcbiAgQ0hBUlQ6IHtcbiAgICB0eXBlOiAnY2hhcnRzJyxcbiAgICBhcGlHcm91cDogQVBQX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIE5FVFdPUktfUE9MSUNZOiB7XG4gICAgYXBpR3JvdXA6ICduZXR3b3JraW5nLms4cy5pbycsXG4gICAgdHlwZTogJ25ldHdvcmtwb2xpY2llcycsXG4gIH0sXG4gIFNFUlZJQ0VfQUNDT1VOVDoge1xuICAgIHR5cGU6ICdzZXJ2aWNlYWNjb3VudHMnLFxuICB9LFxuICBSRVBMSUNBX1NFVDoge1xuICAgIGFwaUdyb3VwOiAnYXBwcycsXG4gICAgdHlwZTogJ3JlcGxpY2FzZXRzJyxcbiAgfSxcbiAgUE9EX1NFQ1VSSVRZX1BPTElDWToge1xuICAgIGFwaUdyb3VwOiAncG9saWN5JyxcbiAgICBhcGlWZXJzaW9uOiAndjFiZXRhMScsXG4gICAgdHlwZTogJ3BvZHNlY3VyaXR5cG9saWNpZXMnLFxuICB9LFxuICBOQU1FU1BBQ0VfT1ZFUlZJRVc6IHtcbiAgICBhcGlHcm91cDogJ2s4cy5pbycsXG4gICAgdHlwZTogJ25hbWVzcGFjZW92ZXJ2aWV3cycsXG4gIH0sXG4gIENTUDoge1xuICAgIGFwaUdyb3VwOiAncHJvZHVjdC5hbGF1ZGEuaW8nLFxuICAgIHR5cGU6ICdjc3BzJyxcbiAgfSxcbiAgUkVTT1VSQ0VfUVVPVEE6IHtcbiAgICB0eXBlOiAncmVzb3VyY2VxdW90YXMnLFxuICB9LFxuICBDTFVTVEVSX05FVFdPUktfUE9MSUNZOiB7XG4gICAgYXBpR3JvdXA6IENSRF9HUk9VUCxcbiAgICB0eXBlOiAnY2x1c3Rlcm5ldHdvcmtwb2xpY2llcycsXG4gIH0sXG4gIFZJUlRVQUxfTUFDSElORToge1xuICAgIGFwaUdyb3VwOiBLVUJFVklSVF9CQVNFX0RPTUFJTixcbiAgICB0eXBlOiAndmlydHVhbG1hY2hpbmVzJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBWSVJUVUFMX01BQ0hJTkVfSU5TVEFOQ0U6IHtcbiAgICBhcGlHcm91cDogS1VCRVZJUlRfQkFTRV9ET01BSU4sXG4gICAgdHlwZTogJ3ZpcnR1YWxtYWNoaW5laW5zdGFuY2VzJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBWSVJUVUFMX01BQ0hJTkVfUE9PTDoge1xuICAgIGFwaUdyb3VwOiBgcG9vbC4ke0tVQkVWSVJUX0JBU0VfRE9NQUlOfWAsXG4gICAgdHlwZTogJ3ZpcnR1YWxtYWNoaW5lcG9vbHMnLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFBST0pFQ1RfUVVPVEE6IHtcbiAgICBhcGlHcm91cDogJ2F1dGguYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIHR5cGU6ICdwcm9qZWN0cXVvdGFzJyxcbiAgfSxcbiAgVEtFX0NMVVNURVI6IHtcbiAgICBhcGlHcm91cDogVEtFX1BMQVRGT1JNX0dST1VQLFxuICAgIHR5cGU6ICdjbHVzdGVycycsXG4gIH0sXG4gIFRLRV9NQUNISU5FOiB7XG4gICAgYXBpR3JvdXA6IFRLRV9QTEFURk9STV9HUk9VUCxcbiAgICB0eXBlOiAnbWFjaGluZXMnLFxuICB9LFxuICBNQUNISU5FOiB7XG4gICAgYXBpR3JvdXA6IE1BQ0hJTkVfQVBJX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbWFjaGluZXMnLFxuICB9LFxuICBOT0RFX0dST1VQOiB7XG4gICAgYXBpR3JvdXA6ICdzZWN1cml0eS5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWJldGExJyxcbiAgICB0eXBlOiAnbm9kZWdyb3VwcycsXG4gIH0sXG4gIENMVVNURVJTRVJWSUNFVkVSU0lPTjoge1xuICAgIGFwaUdyb3VwOiBDT1JFT1NfT1BFUkFUT1JfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgICB0eXBlOiAnY2x1c3RlcnNlcnZpY2V2ZXJzaW9ucycsXG4gIH0sXG4gIFRFTkFOVDoge1xuICAgIGFwaUdyb3VwOiAnbWluaW8ubWluLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjInLFxuICAgIHR5cGU6ICd0ZW5hbnRzJyxcbiAgfSxcbiAgU1VCU0NSSVBUSU9OOiB7XG4gICAgYXBpR3JvdXA6IENPUkVPU19PUEVSQVRPUl9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdzdWJzY3JpcHRpb25zJyxcbiAgfSxcbiAgUEFDS0FHRV9NQU5JRkVTVDoge1xuICAgIGFwaUdyb3VwOiAncGFja2FnZXMub3BlcmF0b3JzLmNvcmVvcy5jb20nLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgdHlwZTogJ3BhY2thZ2VtYW5pZmVzdHMnLFxuICB9LFxuICBCVUNLRVRfQ0xBU1M6IHtcbiAgICBhcGlHcm91cDogJ29iamVjdHN0b3JhZ2UuazhzLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdidWNrZXRjbGFzc2VzJyxcbiAgfSxcbiAgUFJPRFVDVF9DT05GSUc6IHtcbiAgICB0eXBlOiAncHJvZHVjdGNvbmZpZ3MnLFxuICAgIGFwaUdyb3VwOiAnYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBTVE9SQUdFX0NMQVNTOiB7XG4gICAgdHlwZTogJ3N0b3JhZ2VjbGFzc2VzJyxcbiAgICBhcGlHcm91cDogU1RPUkFHRV9HUk9VUCxcbiAgfSxcbiAgVk9MVU1FX1NOQVBTSE9UX0NMQVNTOiB7XG4gICAgdHlwZTogJ3ZvbHVtZXNuYXBzaG90Y2xhc3NlcycsXG4gICAgYXBpR3JvdXA6IFZPTFVNRV9TTkFQU0hPVF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjEnLFxuICB9LFxuICBQUk9EVUNUX0JBU0U6IHtcbiAgICB0eXBlOiAncHJvZHVjdGJhc2VzJyxcbiAgICBhcGlHcm91cDogJ3Byb2R1Y3QuYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICB9LFxuICBNT0RVTEVfSU5GTzoge1xuICAgIHR5cGU6ICdtb2R1bGVpbmZvZXMnLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgYXBpR3JvdXA6IENMVVNURVJfQVBJX0dST1VQLFxuICB9LFxuICBQUk9EVUNUX0VOVFJZOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3RlbnRyaWVzJyxcbiAgICBhcGlHcm91cDogJ2FsYXVkYS5pbycsXG4gICAgYXBpVmVyc2lvbjogJ3YxYWxwaGExJyxcbiAgfSxcbiAgUFJPRFVDVF9ET0NTX0VOVFJZOiB7XG4gICAgdHlwZTogJ3Byb2R1Y3Rkb2NzZW50cmllcycsXG4gICAgYXBpR3JvdXA6ICdhbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gIH0sXG4gIFNFUlZJQ0VNRVNIX0dST1VQOiB7XG4gICAgYXBpR3JvdXA6ICdhc20uYWxhdWRhLmlvJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdzZXJ2aWNlbWVzaGdyb3VwcycsXG4gIH0sXG4gIENMVVNURVJfTU9EVUxFOiB7XG4gICAgdHlwZTogJ2NsdXN0ZXJtb2R1bGVzJyxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIGFwaUdyb3VwOiBDTFVTVEVSX0FQSV9HUk9VUCxcbiAgfSxcbiAgVVNFUl9CSU5ESU5HOiB7XG4gICAgdHlwZTogJ3VzZXJiaW5kaW5ncycsXG4gICAgYXBpR3JvdXA6IEFVVEhfR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgQkFUQ0hfQUNUSU9OOiB7XG4gICAgYXBpR3JvdXA6ICdiYXRjaC5hbGF1ZGEuaW8nLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2JhdGNoYWN0aW9ucycsXG4gIH0sXG4gIEVWRU5UOiB7XG4gICAgdHlwZTogJ2V2ZW50cycsXG4gICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgfSxcbiAgU0VSVklDRV9NT05JVE9SOiB7XG4gICAgYXBpR3JvdXA6ICdtb25pdG9yaW5nLmNvcmVvcy5jb20nLFxuICAgIHR5cGU6ICdzZXJ2aWNlbW9uaXRvcnMnLFxuICAgIGFwaVZlcnNpb246ICd2MScsXG4gIH0sXG4gIE9BTV9BUFBMSUNBVElPTjoge1xuICAgIGFwaUdyb3VwOiBPQU1fR1JPVVAsXG4gICAgYXBpVmVyc2lvbjogJ3YxYmV0YTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbnMnLFxuICB9LFxuICBBUkdPQ0RfQVBQTElDQVRJT05fU0VUOiB7XG4gICAgYXBpR3JvdXA6IEFSR09DRF9HUk9VUCxcbiAgICBhcGlWZXJzaW9uOiAndjFhbHBoYTEnLFxuICAgIHR5cGU6ICdhcHBsaWNhdGlvbnNldHMnLFxuICB9LFxuICBBUkdPQ0RfQVBQTElDQVRJT046IHtcbiAgICBhcGlHcm91cDogQVJHT0NEX0dST1VQLFxuICAgIGFwaVZlcnNpb246ICd2MWFscGhhMScsXG4gICAgdHlwZTogJ2FwcGxpY2F0aW9ucycsXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IENPTU1PTl9SRVNPVVJDRV9ERUZJTklUSU9OUyA9IF8uUkVTT1VSQ0VfREVGSU5JVElPTlM7XG5leHBvcnQgY29uc3QgUkVTT1VSQ0VfVFlQRVMgPSBfLlJFU09VUkNFX1RZUEVTO1xuZXhwb3J0IGNvbnN0IGdldFlhbWxBcGlWZXJzaW9uID0gXy5nZXRZYW1sQXBpVmVyc2lvbjtcblxuZXhwb3J0IHR5cGUgUmVzb3VyY2VUeXBlID0ga2V5b2YgdHlwZW9mIFJFU09VUkNFX1RZUEVTO1xuXG5leHBvcnQgY29uc3QgTWFjaGluZU1ldGE6IFR5cGVNZXRhID0ge1xuICBhcGlWZXJzaW9uOiBnZXRZYW1sQXBpVmVyc2lvbihSRVNPVVJDRV9UWVBFUy5US0VfTUFDSElORSksXG4gIGtpbmQ6ICdNYWNoaW5lJyxcbn07XG5cbmV4cG9ydCBjb25zdCBUS0VDbHVzdGVyTWV0YTogVHlwZU1ldGEgPSB7XG4gIGFwaVZlcnNpb246IGdldFlhbWxBcGlWZXJzaW9uKFJFU09VUkNFX1RZUEVTLlRLRV9DTFVTVEVSKSxcbiAga2luZDogJ0NsdXN0ZXInLFxufTtcblxuZXhwb3J0IGNvbnN0IFNlcnZpY2VUeXBlTWV0YSA9IHtcbiAgYXBpVmVyc2lvbjogZ2V0WWFtbEFwaVZlcnNpb24oUkVTT1VSQ0VfVFlQRVMuU0VSVklDRSksXG4gIGtpbmQ6ICdTZXJ2aWNlJyxcbn0gYXMgY29uc3Q7XG4iXX0=
|
|
@@ -1,55 +1,77 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { publishRef } from '../utils/public-api';
|
|
1
|
+
import { BehaviorSubject, catchError, filter, map, of, startWith, Subject, switchMap, takeUntil, } from 'rxjs';
|
|
2
|
+
import { isEqual, publishRef } from '../utils/public-api';
|
|
4
3
|
export class CacheStore {
|
|
5
|
-
constructor({
|
|
4
|
+
constructor({ fetcher, share, validator }) {
|
|
6
5
|
this.store = new Map();
|
|
7
|
-
this.clear = this.store.clear.bind(this.store);
|
|
8
6
|
this.forEach = this.store.forEach.bind(this.store);
|
|
9
7
|
this.entries = this.store.entries.bind(this.store);
|
|
10
8
|
this.values = this.store.values.bind(this.store);
|
|
9
|
+
this.keys = this.store.keys.bind(this.store);
|
|
11
10
|
this.fetcher = fetcher;
|
|
12
|
-
this.idGenerator = idGenerator ?? ((v) => JSON.stringify(v));
|
|
13
11
|
this.share = share ?? publishRef;
|
|
12
|
+
this.validator = validator ?? (() => true);
|
|
14
13
|
}
|
|
15
14
|
fetchState(params) {
|
|
16
|
-
|
|
17
|
-
if (!
|
|
18
|
-
if (typeof id === 'object') {
|
|
19
|
-
for (const item of this.store.values()) {
|
|
20
|
-
if (isEqual(item.params, id)) {
|
|
21
|
-
return item.loadState;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
15
|
+
let cache = this.get(params);
|
|
16
|
+
if (!cache) {
|
|
25
17
|
const refetch$$ = new BehaviorSubject(null);
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
refetch: () =>
|
|
29
|
-
|
|
30
|
-
|
|
18
|
+
const finish$$ = new Subject();
|
|
19
|
+
cache = {
|
|
20
|
+
refetch: () => {
|
|
21
|
+
refetch$$.next();
|
|
22
|
+
},
|
|
23
|
+
finish: () => {
|
|
24
|
+
finish$$.next();
|
|
25
|
+
finish$$.complete();
|
|
26
|
+
},
|
|
27
|
+
loadState: refetch$$.pipe(switchMap(() => this.fetcher(params).pipe(map(result => {
|
|
28
|
+
if (!this.validator(result)) {
|
|
29
|
+
this.delete(params);
|
|
30
|
+
}
|
|
31
|
+
return { state: 'loaded', result };
|
|
32
|
+
}), catchError(error => {
|
|
33
|
+
this.delete(params);
|
|
34
|
+
return of({ state: 'loadFailed', error });
|
|
35
|
+
}), startWith({ state: 'loading' }))), takeUntil(finish$$), this.share()),
|
|
36
|
+
};
|
|
37
|
+
this.store.set(params, cache);
|
|
31
38
|
}
|
|
32
|
-
return
|
|
39
|
+
return cache.loadState;
|
|
33
40
|
}
|
|
34
41
|
fetch(params) {
|
|
35
42
|
return this.fetchState(params).pipe(filter(loadState => loadState.state === 'loaded'), map(loadState => loadState.result));
|
|
36
43
|
}
|
|
37
44
|
refetch(params) {
|
|
38
|
-
|
|
39
|
-
this.store.get(id)?.refetch?.();
|
|
45
|
+
this.get(params)?.refetch();
|
|
40
46
|
}
|
|
41
47
|
refetchAll() {
|
|
42
48
|
this.forEach(cache => {
|
|
43
49
|
cache.refetch();
|
|
44
50
|
});
|
|
45
51
|
}
|
|
46
|
-
|
|
47
|
-
const
|
|
48
|
-
|
|
52
|
+
get(params) {
|
|
53
|
+
for (const [key, value] of this.store.entries()) {
|
|
54
|
+
if (isEqual(key, params)) {
|
|
55
|
+
return value;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
49
58
|
}
|
|
50
59
|
has(params) {
|
|
51
|
-
|
|
52
|
-
|
|
60
|
+
return !!this.get(params);
|
|
61
|
+
}
|
|
62
|
+
delete(params) {
|
|
63
|
+
for (const [key, value] of this.store.entries()) {
|
|
64
|
+
if (isEqual(key, params)) {
|
|
65
|
+
value.finish();
|
|
66
|
+
this.store.delete(key);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
clear() {
|
|
71
|
+
this.store.forEach(value => {
|
|
72
|
+
value.finish();
|
|
73
|
+
});
|
|
74
|
+
this.store.clear();
|
|
53
75
|
}
|
|
54
76
|
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvY29yZS91dGlscy9jYWNoZS1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUNmLFVBQVUsRUFDVixNQUFNLEVBQ04sR0FBRyxFQUdILEVBQUUsRUFDRixTQUFTLEVBQ1QsT0FBTyxFQUNQLFNBQVMsRUFDVCxTQUFTLEdBQ1YsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTFELE1BQU0sT0FBTyxVQUFVO0lBT3JCLFlBQVksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBMkI7UUFGakQsVUFBSyxHQUFHLElBQUksR0FBRyxFQUFlLENBQUM7UUErRmhELFlBQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlDLFlBQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlDLFdBQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBbEd0QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxVQUFVLENBQUM7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMs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QzVCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBUztRQUNkLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7WUFDaEQsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ3pCLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDZixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDekIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQixDQUFDO0NBU0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNhdGNoRXJyb3IsXG4gIGZpbHRlcixcbiAgbWFwLFxuICBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb24sXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBzdGFydFdpdGgsXG4gIFN1YmplY3QsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZVVudGlsLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgaXNFcXVhbCwgcHVibGlzaFJlZiB9IGZyb20gJy4uL3V0aWxzL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY2xhc3MgQ2FjaGVTdG9yZTxQLCBWPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmV0Y2hlcjogKHBhcmFtczogUCkgPT4gT2JzZXJ2YWJsZTxWPjtcbiAgcHJpdmF0ZSByZWFkb25seSBzaGFyZTogPFQ+KCkgPT4gTW9ub1R5cGVPcGVyYXRvckZ1bmN0aW9uPFQ+O1xuICBwcml2YXRlIHJlYWRvbmx5IHZhbGlkYXRvcjogKHZhbHVlOiBWKSA9PiBib29sZWFuO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBuZXcgTWFwPFAsIENhY2hlPFY+PigpO1xuXG4gIGNvbnN0cnVjdG9yKHsgZmV0Y2hlciwgc2hhcmUsIHZhbGlkYXRvciB9OiBDYWNoZVN0b3JlT3B0aW9uczxWLCBQPikge1xuICAgIHRoaXMuZmV0Y2hlciA9IGZldGNoZXI7XG4gICAgdGhpcy5zaGFyZSA9IHNoYXJlID8/IHB1Ymxpc2hSZWY7XG4gICAgdGhpcy52YWxpZGF0b3IgPSB2YWxpZGF0b3IgPz8gKCgpID0+IHRydWUpO1xuICB9XG5cbiAgZmV0Y2hTdGF0ZShwYXJhbXM6IFApIHtcbiAgICBsZXQgY2FjaGUgPSB0aGlzLmdldChwYXJhbXMpO1xuXG4gICAgaWYgKCFjYWNoZSkge1xuICAgICAgY29uc3QgcmVmZXRjaCQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx2b2lkPihudWxsKTtcbiAgICAgIGNvbnN0IGZpbmlzaCQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgICAgY2FjaGUgPSB7XG4gICAgICAgIHJlZmV0Y2g6ICgpID0+IHtcbiAgICAgICAgICByZWZldGNoJCQubmV4dCgpO1xuICAgICAgICB9LFxuICAgICAgICBmaW5pc2g6ICgpID0+IHtcbiAgICAgICAgICBmaW5pc2gkJC5uZXh0KCk7XG4gICAgICAgICAgZmluaXNoJCQuY29tcGxldGUoKTtcbiAgICAgICAgfSxcbiAgICAgICAgbG9hZFN0YXRlOiByZWZldGNoJCQucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgICAgICAgIHRoaXMuZmV0Y2hlcihwYXJhbXMpLnBpcGUoXG4gICAgICAgICAgICAgIG1hcChyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy52YWxpZGF0b3IocmVzdWx0KSkge1xuICAgICAgICAgICAgICAgICAgdGhpcy5kZWxldGUocGFyYW1zKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgc3RhdGU6ICdsb2FkZWQnIGFzIGNvbnN0LCByZXN1bHQgfTtcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGVsZXRlKHBhcmFtcyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKHsgc3RhdGU6ICdsb2FkRmFpbGVkJyBhcyBjb25zdCwgZXJyb3IgfSk7XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBzdGFydFdpdGgoeyBzdGF0ZTogJ2xvYWRpbmcnIGFzIGNvbnN0IH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApLFxuICAgICAgICAgIHRha2VVbnRpbChmaW5pc2gkJCksXG4gICAgICAgICAgdGhpcy5zaGFyZSgpLFxuICAgICAgICApLFxuICAgICAgfTtcblxuICAgICAgdGhpcy5zdG9yZS5zZXQocGFyYW1zLCBjYWNoZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNhY2hlLmxvYWRTdGF0ZTtcbiAgfVxuXG4gIGZldGNoKHBhcmFtczogUCkge1xuICAgIHJldHVybiB0aGlzLmZldGNoU3RhdGUocGFyYW1zKS5waXBlKFxuICAgICAgZmlsdGVyKGxvYWRTdGF0ZSA9PiBsb2FkU3RhdGUuc3RhdGUgPT09ICdsb2FkZWQnKSxcbiAgICAgIG1hcChsb2FkU3RhdGUgPT4gbG9hZFN0YXRlLnJlc3VsdCksXG4gICAgKTtcbiAgfVxuXG4gIHJlZmV0Y2gocGFyYW1zOiBQKSB7XG4gICAgdGhpcy5nZXQocGFyYW1zKT8ucmVmZXRjaCgpO1xuICB9XG5cbiAgcmVmZXRjaEFsbCgpIHtcbiAgICB0aGlzLmZvckVhY2goY2FjaGUgPT4ge1xuICAgICAgY2FjaGUucmVmZXRjaCgpO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0KHBhcmFtczogUCkge1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIHRoaXMuc3RvcmUuZW50cmllcygpKSB7XG4gICAgICBpZiAoaXNFcXVhbChrZXksIHBhcmFtcykpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGhhcyhwYXJhbXM6IFApIHtcbiAgICByZXR1cm4gISF0aGlzLmdldChwYXJhbXMpO1xuICB9XG5cbiAgZGVsZXRlKHBhcmFtczogUCkge1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIHRoaXMuc3RvcmUuZW50cmllcygpKSB7XG4gICAgICBpZiAoaXNFcXVhbChrZXksIHBhcmFtcykpIHtcbiAgICAgICAgdmFsdWUuZmluaXNoKCk7XG4gICAgICAgIHRoaXMuc3RvcmUuZGVsZXRlKGtleSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5zdG9yZS5mb3JFYWNoKHZhbHVlID0+IHtcbiAgICAgIHZhbHVlLmZpbmlzaCgpO1xuICAgIH0pO1xuICAgIHRoaXMuc3RvcmUuY2xlYXIoKTtcbiAgfVxuXG4gIGZvckVhY2ggPSB0aGlzLnN0b3JlLmZvckVhY2guYmluZCh0aGlzLnN0b3JlKTtcblxuICBlbnRyaWVzID0gdGhpcy5zdG9yZS5lbnRyaWVzLmJpbmQodGhpcy5zdG9yZSk7XG5cbiAgdmFsdWVzID0gdGhpcy5zdG9yZS52YWx1ZXMuYmluZCh0aGlzLnN0b3JlKTtcblxuICBrZXlzID0gdGhpcy5zdG9yZS5rZXlzLmJpbmQodGhpcy5zdG9yZSk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVTdG9yZU9wdGlvbnM8ViwgUD4ge1xuICBmZXRjaGVyOiAocGFyYW1zOiBQKSA9PiBPYnNlcnZhYmxlPFY+O1xuICBzaGFyZT86IDxUPigpID0+IE1vbm9UeXBlT3BlcmF0b3JGdW5jdGlvbjxUPjtcbiAgdmFsaWRhdG9yPzogKHZhbHVlOiBWKSA9PiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhY2hlTG9hZFN0YXRlPFY+IHtcbiAgc3RhdGU6ICdsb2FkaW5nJyB8ICdsb2FkZWQnIHwgJ2xvYWRGYWlsZWQnO1xuICByZXN1bHQ/OiBWO1xuICBlcnJvcj86IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FjaGU8Vj4ge1xuICBsb2FkU3RhdGU6IE9ic2VydmFibGU8Q2FjaGVMb2FkU3RhdGU8Vj4+O1xuICByZWZldGNoOiAoKSA9PiB2b2lkO1xuICBmaW5pc2g6ICgpID0+IHZvaWQ7XG59XG4iXX0=
|
|
@@ -309,4 +309,12 @@ export const setWindowsXtermTools = (xterm) => {
|
|
|
309
309
|
export const clearWindowsXtermTools = () => {
|
|
310
310
|
delete window.__XTERM_TOOLS__;
|
|
311
311
|
};
|
|
312
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdXRpbHMvY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUdILE9BQU8sRUFDTCxJQUFJO0FBQ0osaURBQWlEO0FBQ2pELE9BQU8sSUFBSSxRQUFRLEVBQ25CLElBQUksRUFDSixTQUFTLEdBQ1YsTUFBTSxXQUFXLENBQUM7QUFJbkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBVWpELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVksRUFBRSxFQUFFO0lBQ3ZDLElBQUksR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ2QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsT0FBTyxHQUFHO1NBQ1AsY0FBYyxDQUFDLFVBQVUsRUFBRTtRQUMxQixxQkFBcUIsRUFBRSxDQUFDO1FBQ3hCLFdBQVcsRUFBRSxLQUFLO0tBQ25CLENBQUM7U0FDRCxPQUFPLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ25DLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQXFCLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxFQUFFO0lBQzVELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDNUIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUM3QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFD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QztJQUVELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDeEQsTUFBTSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN6QyxNQUFNLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUM7SUFDdkIsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGLE1BQU0sV0FBVyxHQUFHO0lBQ2xCLGNBQWM7SUFDZCxjQUFjO0lBQ2Qsc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQixRQUFRO0lBQ1IsV0FBVztJQUNYLGFBQWE7Q0FDTCxDQUFDO0FBRVgsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxLQUFlLEVBQUUsRUFBRTtJQUNyRCxNQUFjLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FDekMsSUFBSSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsRUFDeEIsQ0FBQyxHQUF5RCxFQUFFLEVBQUUsQ0FDNUQsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FDbEIsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEdBQUcsRUFBRTtJQUN6QyxPQUFRLE1BQWMsQ0FBQyxlQUFlLENBQUM7QUFDekMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdXRpbHNcbiAqL1xuXG5pbXBvcnQgeyBTb3J0IH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBsYXN0LFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG4gIGlzRXF1YWwgYXMgX2lzRXF1YWwsXG4gIHBpY2ssXG4gIG1hcFZhbHVlcyxcbn0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IFVuaW9uVG9JbnRlcnNlY3Rpb24sIFZhbHVlT2YgfSBmcm9tICd0cy1lc3NlbnRpYWxzJztcbmltcG9ydCB7IFRlcm1pbmFsIH0gZnJvbSAneHRlcm0nO1xuXG5pbXBvcnQgeyBCcmFja2V0IH0gZnJvbSAnLi4vY29uc3RhbnRzL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBDYWxsYmFjayxcbiAgS2V5cyxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBOdWxsYWJsZSxcbiAgUmVhZG9ubHlhYmxlLFxuICBTdHJpbmdNYXAsXG59IGZyb20gJy4uL3R5cGVzL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY29uc3QgbnVtVG9TdHIgPSAobnVtPzogbnVtYmVyKSA9PiB7XG4gIGlmIChudW0gPT09IDApIHtcbiAgICByZXR1cm4gJzAnO1xuICB9XG5cbiAgaWYgKCFudW0pIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICByZXR1cm4gbnVtXG4gICAgLnRvTG9jYWxlU3RyaW5nKCdmdWxsd2lkZScsIHtcbiAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMyxcbiAgICAgIHVzZUdyb3VwaW5nOiBmYWxzZSxcbiAgICB9KVxuICAgIC5yZXBsYWNlKC8oW14uXSlcXC4/MCskLywgJyQxJyk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2hvcnROdW0gPSAobnVtPzogbnVtYmVyIHwgc3RyaW5nLCBkaWdpdHMgPSAyKSA9PiB7XG4gIGlmICh0eXBlb2YgbnVtID09PSAnc3RyaW5nJykge1xuICAgIG51bSA9IG51bS50cmltKCk7XG4gIH1cbiAgaWYgKG51bSA9PT0gMCB8fCBudW0gPT09ICcwJykge1xuICAgIHJldHVybiAnMCc7XG4gIH1cbiAgaWYgKCFudW0pIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgcmV0dXJuIG51bVRvU3RyKCsoK251bSkudG9GaXhlZChkaWdpdHMpIHx8IE1hdGgucG93KDEwLCAtZGlnaXRzKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNCbGFuayA9IChzdHI/OiB1bmtub3duKSA9PlxuICBzdHIgPT0gbnVsbCB8fCBOdW1iZXIuaXNOYU4oc3RyIGFzIG51bWJlcikgfHwgIXN0ci50b1N0cmluZygpLnRyaW0oKTtcblxuZXhwb3J0IGNvbnN0IGdldEJhc2VIcmVmID0gKCkgPT4ge1xuICAvLyBUaGUgbGFzdCBiYXNlIGVsZW1lbnQgaGFzIGhpZ2hlc3QgcHJpdmlsZWdlXG4gIGNvbnN0IGJhc2UgPSBsYXN0KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2Jhc2UnKSk7XG4gIC8vIHVzZSBgZ2V0QXR0cmlidXRlYCBpbnN0ZWFkIG9mIGBiYXNlLmhyZWZgIGJlY2F1c2UgdGhlIGF0dHJpYnV0ZSBjb3VsZCBiZSB2b2lkIGJ1dCByZXN1bHRzIGN1cnJlbnQgd2hvbGUgbG9jYXRpb24gdXJsXG4gIHJldHVybiBiYXNlPy5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSB8fCAnLyc7XG59O1xuXG5leHBvcnQgY29uc3QgaWZFeGlzdCA9IDxUPihcbiAgdG9DaGVjazogYm9vbGVhbiB8IE51bGxhYmxlPFQ+LFxuICB0cnV0aHlWYWx1ZTogVCxcbiAgZmFsbGJhY2s/OiBULFxuKSA9PiAodG9DaGVjayA/IHRydXRoeVZhbHVlIDogKChmYWxsYmFjayB8fCAnJykgYXMgVCkpO1xuXG5leHBvcnQgY29uc3QgaXNBYnNvbHV0ZVVybCA9ICh1cmw6IHN0cmluZykgPT4gL14oaHR0cHM/OlxcLyk/XFwvLy50ZXN0KHVybCk7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbmV4cG9ydCBjb25zdCBub29wOiBDYWxsYmFjayA9ICgpID0+IHt9O1xuXG5leHBvcnQgY29uc3QgdG9LZXlzID0gPFQgZXh0ZW5kcyBvYmplY3Q+KHNvdXJjZTogVCk6IEtleXM8VD4gPT5cbiAgT2JqZWN0LmtleXMoc291cmNlKS5yZWR1Y2UoKGFjYywgaykgPT4ge1xuICAgIGNvbnN0IGtleSA9IGsgYXMga2V5b2YgVDtcbiAgICBhY2Nba2V5XSA9IGtleTtcbiAgICByZXR1cm4gYWNjO1xuICB9LCB7fSBhcyBLZXlzPFQ+KTtcblxuZXhwb3J0IGNvbnN0IHdyYXBUZXh0ID0gKFxuICB0ZXh0Pzogc3RyaW5nLFxuICB3cmFwcGVyOiBSZWFkb25seWFibGU8W3N0cmluZywgc3RyaW5nXT4gPSBCcmFja2V0LlBBUkVOVEhFU0VTLFxuICBmYWxsYmFjaz86IHN0cmluZyxcbikgPT4gKHRleHQgPyB3cmFwcGVyLmpvaW4odGV4dCkgOiBmYWxsYmFjayB8fCAnJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUpTT05TdHJlYW08VD4odGV4dDogc3RyaW5nKTogVFtdIHtcbiAgcmV0dXJuIHRleHRcbiAgICAuc3BsaXQoJ1xcbicpXG4gICAgLm1hcCh2ID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKHYpO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH0pXG4gICAgLmZpbHRlcih2ID0+ICEhdik7XG59XG5cbmV4cG9ydCBjb25zdCB0cmFja0J5VWlkID0gPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICBfOiBudW1iZXIsXG4gIHJlc291cmNlOiBULFxuKSA9PiByZXNvdXJjZS5tZXRhZGF0YS51aWQ7XG5cbmV4cG9ydCBjb25zdCBpc0s4c1Jlc291cmNlID0gPFxuICBUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gS3ViZXJuZXRlc1Jlc291cmNlLFxuPihcbiAgdmFsdWU6IG9iamVjdCxcbik6IHZhbHVlIGlzIFQgPT5cbiAgdmFsdWUgJiZcbiAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAnYXBpVmVyc2lvbicgaW4gdmFsdWUgJiZcbiAgdHlwZW9mIHZhbHVlLmFwaVZlcnNpb24gPT09ICdzdHJpbmcnICYmXG4gICdraW5kJyBpbiB2YWx1ZSAmJlxuICB0eXBlb2YgdmFsdWUua2luZCA9PT0gJ3N0cmluZycgJiZcbiAgJ21ldGFkYXRhJyBpbiB2YWx1ZSAmJlxuICB2YWx1ZS5tZXRhZGF0YSAmJlxuICB0eXBlb2YgdmFsdWUubWV0YWRhdGEgPT09ICdvYmplY3QnO1xuXG5leHBvcnQgY29uc3QgYXJyYXlpZnkgPSA8XG4gIFQsXG4gIFIgPSBUIGV4dGVuZHMgQXJyYXk8aW5mZXIgUz4gPyBOb25OdWxsYWJsZTxTPiA6IE5vbk51bGxhYmxlPFQ+LFxuPihcbiAgLi4uYXJnczogQXJyYXk8UiB8IFJbXT5cbikgPT5cbiAgYXJncy5yZWR1Y2U8UltdPigoYXJyLCBjdXJyKSA9PiB7XG4gICAgYXJyLnB1c2goLi4uKEFycmF5LmlzQXJyYXkoY3VycikgPyBjdXJyIDogY3VyciA9PSBudWxsID8gW10gOiBbY3Vycl0pKTtcbiAgICByZXR1cm4gYXJyO1xuICB9LCBbXSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBzbGVlcChtcyA9IDApIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIHNldFRpbWVvdXQocmVzb2x2ZSwgbXMpO1xuICB9KTtcbn1cblxuZXhwb3J0IGNvbnN0IGRlbGF5ID0gc2xlZXA7XG5cbmV4cG9ydCBmdW5jdGlvbiBzY3JvbGxJbnRvVmlldyhjb250YWluZXI6IEhUTUxFbGVtZW50LCBzZWxlY3RlZDogSFRNTEVsZW1lbnQpIHtcbiAgaWYgKCFzZWxlY3RlZCkge1xuICAgIGNvbnRhaW5lci5zY3JvbGxUb3AgPSAwO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHRvcCA9IHNlbGVjdGVkLm9mZnNldFRvcDtcbiAgY29uc3QgYm90dG9tID0gc2VsZWN0ZWQub2Zmc2V0VG9wICsgc2VsZWN0ZWQub2Zmc2V0SGVpZ2h0O1xuICBjb25zdCB2aWV3UmVjdFRvcCA9IGNvbnRhaW5lci5zY3JvbGxUb3A7XG4gIGNvbnN0IHZpZXdSZWN0Qm90dG9tID0gdmlld1JlY3RUb3AgKyBjb250YWluZXIuY2xpZW50SGVpZ2h0O1xuXG4gIGlmICh2aWV3UmVjdFRvcCA+IHRvcCkge1xuICAgIGNvbnRhaW5lci5zY3JvbGxUb3AgPSB0b3A7XG4gIH0gZWxzZSBpZiAodmlld1JlY3RCb3R0b20gPCBib3R0b20pIHtcbiAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gYm90dG9tIC0gY29udGFpbmVyLmNsaWVudEhlaWdodDtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgaXNFcXVhbDogPFQsIFYgPSBUPihhOiBULCBiOiBWKSA9PiBib29sZWFuID0gX2lzRXF1YWw7XG5cbmV4cG9ydCBjb25zdCBwYXJzZUpzb24gPSA8VD4oc3RyOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogVCA9IG51bGwpID0+IHtcbiAgaWYgKHN0ciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgfVxuICB0cnkge1xuICAgIHJldHVybiBKU09OLnBhcnNlKHN0cik7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0pzb25PYmplY3RTdHJpbmcoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKHN0cik7XG4gICAgcmV0dXJuIHR5cGVvZiBwYXJzZWQgPT09ICdvYmplY3QnICYmIHBhcnNlZCAhPT0gbnVsbDtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBwYXJzZVZhbGlkSW1hZ2VOYW1lID0gKGltYWdlOiBzdHJpbmcpID0+XG4gIGltYWdlPy5yZXBsYWNlKC8oW146XSlcXC9cXC8vZywgJyQxLycpIHx8IGltYWdlO1xuXG5leHBvcnQgY29uc3QgYXRvYldpdGhGYWxsYmFjayA9IChzdHI6IHN0cmluZywgZmFsbGJhY2tWYWx1ZTogc3RyaW5nID0gbnVsbCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiB3aW5kb3cuYXRvYihzdHIpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gZmFsbGJhY2tWYWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGludGVyZmFjZSBTYWZlQXNzaWduT3B0aW9ucyB7XG4gIG5vdGljZTogKGR1cGxpY2F0ZXM6IHN0cmluZ1tdKSA9PiBhbnk7XG59XG4vKipcbiAqIOW4pumHjeWkjeajgOafpeeahGFzc2lnbu+8jOWPquWBmuS4gOe6p2tleeeahOmHjeWkjeajgOafpVxuICog5aaC5p6c5pyJ6YeN5aSN6aG56buY6K6k5LyadGhyb3cgZXJyb3LvvIzlpoLmnpzkvaDmmI7noa7ov5nkuI3mmK/kuIDkuKrlhbPplK7mgKfplJnor6/vvIzliJnlj6/ku6XpgJrov4fmjIflrppub3RpY2Xlh73mlbDkv67mlLnor6Xpu5jorqTooYzkuLpcbiAqIEBwYXJhbSBzb3VyY2VzXG4gKiBAcGFyYW0gb3B0aW9uc09yTm90aWNlXG4gKiBAcmV0dXJuIG9iamVjdCDkuIDkuKrlhajmlrDnmoTlr7nosaFcbiAqL1xuZXhwb3J0IGNvbnN0IHNhZmVBc3NpZ24gPSA8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIGFueT4+KFxuICBzb3VyY2VzOiBUW10sXG4gIG9wdGlvbnNPck5vdGljZT86IFNhZmVBc3NpZ25PcHRpb25zWydub3RpY2UnXSB8IFNhZmVBc3NpZ25PcHRpb25zLFxuKTogVW5pb25Ub0ludGVyc2VjdGlvbjxUPiA9PiB7XG4gIGlmIChzb3VyY2VzLmxlbmd0aCA9PT0gMSkge1xuICAgIHJldHVybiBzb3VyY2VzWzBdIGFzIFVuaW9uVG9JbnRlcnNlY3Rpb248VD47XG4gIH1cblxuICBjb25zdCBvcHRpb246IFNhZmVBc3NpZ25PcHRpb25zID0ge1xuICAgIG5vdGljZTogKGR1cGxpY2F0ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUaGVyZSBhcmUgZHVwbGljYXRlIGRlZmluaXRpb25zOiAke2R1cGxpY2F0ZXMuam9pbignLCcpfWAsXG4gICAgICApO1xuICAgIH0sXG4gIH07XG4gIGlmICh0eXBlb2Ygb3B0aW9uc09yTm90aWNlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgb3B0aW9uLm5vdGljZSA9IG9wdGlvbnNPck5vdGljZTtcbiAgfVxuICBpZiAodHlwZW9mIG9wdGlvbnNPck5vdGljZSA9PT0gJ29iamVjdCcpIHtcbiAgICBPYmplY3QuYXNzaWduKG9wdGlvbiwgb3B0aW9uc09yTm90aWNlKTtcbiAgfVxuXG4gIGNvbnN0IGR1cGxpY2F0ZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgY29uc3QgYWxsS2V5ID0gbmV3IFNldChPYmplY3Qua2V5cyhzb3VyY2VzWzBdKSk7XG4gIHNvdXJjZXMuc2xpY2UoMSkuZm9yRWFjaChvYmogPT4ge1xuICAgIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgaWYgKGFsbEtleS5oYXMoa2V5KSkge1xuICAgICAgICBkdXBsaWNhdGVzLmFkZChrZXkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYWxsS2V5LmFkZChrZXkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbiAgaWYgKGR1cGxpY2F0ZXMuc2l6ZSkge1xuICAgIG9wdGlvbi5ub3RpY2UoWy4uLmR1cGxpY2F0ZXNdKTtcbiAgfVxuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgLi4uc291cmNlcyk7XG59O1xuXG5leHBvcnQgY29uc3QgdG9Mb3dlckZpcnN0TGV0dGVyID0gKHRleHQ6IHN0cmluZykgPT5cbiAgdHlwZW9mIHRleHQgPT09ICdzdHJpbmcnICYmIHRleHQubGVuZ3RoID4gMFxuICAgID8gdGV4dC5yZXBsYWNlKHRleHRbMF0sIHRleHRbMF0udG9Mb2NhbGVMb3dlckNhc2UoKSlcbiAgICA6IHRleHQ7XG5cbmV4cG9ydCBjb25zdCBsb2FkRW52ID0gKGVudlRleHQ6IHN0cmluZyk6IEFycmF5PFtzdHJpbmcsIHN0cmluZ10+ID0+IHtcbiAgaWYgKCFlbnZUZXh0KSByZXR1cm4gW107XG4gIHJldHVybiBlbnZUZXh0XG4gICAgLnNwbGl0KCdcXG4nKVxuICAgIC5maWx0ZXIocyA9PiAhIXMudHJpbSgpKVxuICAgIC5tYXAocyA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHMudHJpbSgpLmluY2x1ZGVzKCc9JylcbiAgICAgICAgPyBzLnRyaW0oKS5pbmRleE9mKCc9JylcbiAgICAgICAgOiBzLnRyaW0oKS5sZW5ndGg7XG4gICAgICByZXR1cm4gW1xuICAgICAgICBzLnRyaW0oKS5zbGljZSgwLCBpbmRleCkudHJpbSgpLFxuICAgICAgICBzXG4gICAgICAgICAgLnRyaW0oKVxuICAgICAgICAgIC5zbGljZShpbmRleCArIDEpXG4gICAgICAgICAgLnRyaW0oKSxcbiAgICAgIF07XG4gICAgfSk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyRW1wdHlWYWx1ZTxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+KFxuICBvYmo6IFQsXG4pOiBQYXJ0aWFsPFQ+IHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iaikucmVkdWNlKChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgICBhY2Nba2V5IGFzIGtleW9mIFRdID0gdmFsdWUgYXMgVFtrZXlvZiBUXTtcbiAgICB9XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30gYXMgUGFydGlhbDxUPik7XG59XG5cbmNvbnN0IElNQUdFX1RZUEVfTUFQUEVSOiBTdHJpbmdNYXAgPSB7XG4gICcvJzogJ2pwZycsXG4gIGk6ICdwbmcnLFxuICBQOiAnc3ZnK3htbCcsXG4gIFI6ICdnaWYnLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQmFzZTY0VHlwZShiYXNlNjRTdHI6IHN0cmluZykge1xuICBjb25zdCBmaXJzdENoYXIgPSBiYXNlNjRTdHIuY2hhckF0KDApO1xuICByZXR1cm4gSU1BR0VfVFlQRV9NQVBQRVJbZmlyc3RDaGFyXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZEltYWdlSGVhZGVyKHZhbHVlOiBzdHJpbmcsIHByZWZpeD86IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICghdmFsdWUgfHwgdmFsdWUuc3RhcnRzV2l0aCgnZGF0YTppbWFnZS8nKSkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICBjb25zdCBoZWFkZXIgPVxuICAgIHByZWZpeCB8fCBgZGF0YTppbWFnZS8ke3BhcnNlQmFzZTY0VHlwZSh2YWx1ZSkgfHwgJ2pwZyd9O2Jhc2U2NCxgO1xuICByZXR1cm4gYCR7aGVhZGVyfSR7dmFsdWV9YDtcbn1cblxuZXhwb3J0IGNvbnN0IGdldFJlbGF0aXZlUGF0aCA9IChmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpID0+IHtcbiAgaWYgKHRvID09PSBudWxsIHx8IHRvID09PSB1bmRlZmluZWQgfHwgIWZyb20pIHtcbiAgICByZXR1cm4gdG87XG4gIH1cbiAgY29uc3QgZnJvbVBhcnRzID0gKGZyb20gPz8gJycpLnNwbGl0KCcvJykuZmlsdGVyKHAgPT4gcCAhPT0gJycpO1xuICBjb25zdCB0b1BhcnRzID0gKHRvID8/ICcnKS5zcGxpdCgnLycpLmZpbHRlcihwID0+IHAgIT09ICcnKTtcblxuICBsZXQgcmVsYXRpdmVQYXRoID0gJyc7XG4gIHdoaWxlIChcbiAgICBmcm9tUGFydHMubGVuZ3RoID4gMCAmJlxuICAgIHRvUGFydHMubGVuZ3RoID4gMCAmJlxuICAgIGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXVxuICApIHtcbiAgICBmcm9tUGFydHMuc2hpZnQoKTtcbiAgICB0b1BhcnRzLnNoaWZ0KCk7XG4gIH1cblxuICByZWxhdGl2ZVBhdGggPSAnLi4vJy5yZXBlYXQoZnJvbVBhcnRzLmxlbmd0aCk7XG5cbiAgcmVsYXRpdmVQYXRoICs9IHRvUGFydHMuam9pbignLycpO1xuXG4gIHJldHVybiByZWxhdGl2ZVBhdGg7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VG9QYXRoID0gKGZyb206IHN0cmluZywgcmVsYXRpdmU6IHN0cmluZykgPT4ge1xuICBpZiAocmVsYXRpdmUgPT09IG51bGwgfHwgcmVsYXRpdmUgPT09IHVuZGVmaW5lZCB8fCAhZnJvbSkge1xuICAgIHJldHVybiByZWxhdGl2ZTtcbiAgfVxuXG4gIGNvbnN0IGZyb21QYXJ0cyA9IGZyb20uc3BsaXQoJy8nKS5maWx0ZXIocCA9PiBwICE9PSAnJyk7XG4gIGNvbnN0IHJlbGF0aXZlUGFydHMgPSByZWxhdGl2ZS5zcGxpdCgnLycpLmZpbHRlcihwID0+IHAgIT09ICcnKTtcblxuICBjb25zdCBkb3REb3RDb3VudCA9ICtyZWxhdGl2ZVBhcnRzLmZpbHRlcihwID0+IHAgPT09ICcuLicpPy5sZW5ndGg7XG5cbiAgY29uc3QgcyA9IGZyb21QYXJ0cy5zcGxpY2UoMCwgZnJvbVBhcnRzLmxlbmd0aCAtIGRvdERvdENvdW50KTtcblxuICByZXR1cm4gcy5jb25jYXQocmVsYXRpdmVQYXJ0cy5zcGxpY2UoZG90RG90Q291bnQpKS5qb2luKCcvJyk7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhY2tCeU5hbWUgPSA8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIF86IG51bWJlcixcbiAgcmVzb3VyY2U6IFQsXG4pID0+IHJlc291cmNlLm1ldGFkYXRhLm5hbWU7XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZVNvcnQ8VD4oXG4gIGxpc3Q6IFRbXSxcbiAgc29ydDogU29ydCxcbiAgc29ydEFjdGl2ZVZhbHVlRm46IChpdGVtOiBULCBuYW1lOiBzdHJpbmcpID0+IHN0cmluZyB8IG51bWJlcixcbik6IFRbXSB7XG4gIHJldHVybiBsaXN0LnNsaWNlKCkuc29ydCgoYSwgYikgPT4ge1xuICAgIGNvbnN0IGtleSA9IHNvcnQuYWN0aXZlO1xuICAgIGNvbnN0IGtleUEgPSBzb3J0QWN0aXZlVmFsdWVGbihhLCBrZXkpO1xuICAgIGNvbnN0IGtleUIgPSBzb3J0QWN0aXZlVmFsdWVGbihiLCBrZXkpO1xuICAgIGlmIChrZXlBID09PSBrZXlCKSByZXR1cm4gMDtcbiAgICByZXR1cm4gc29ydC5kaXJlY3Rpb24gPT09ICdhc2MnXG4gICAgICA/IGtleUEgPiBrZXlCXG4gICAgICAgID8gMVxuICAgICAgICA6IC0xXG4gICAgICA6IGtleUIgPiBrZXlBXG4gICAgICAgID8gMVxuICAgICAgICA6IC0xO1xuICB9KTtcbn1cblxuLy8g5pSv5oyB5Lit5paH5o6S5bqP77yM5o6o6I2Q5L2/55SoXG5leHBvcnQgZnVuY3Rpb24gdGFibGVTb3J0QWR2YW5jZTxUPihcbiAgbGlzdDogVFtdLFxuICBzb3J0OiBTb3J0LFxuICBzb3J0QWN0aXZlVmFsdWVGbjogKGl0ZW06IFQsIG5hbWU6IHN0cmluZykgPT4gc3RyaW5nIHwgbnVtYmVyLFxuKTogVFtdIHtcbiAgcmV0dXJuIGxpc3Quc2xpY2UoKS5zb3J0KChhLCBiKSA9PiB7XG4gICAgY29uc3Qga2V5ID0gc29ydC5hY3RpdmU7XG4gICAgY29uc3Qga2V5QSA9IHNvcnRBY3RpdmVWYWx1ZUZuKGEsIGtleSkudG9TdHJpbmcoKTtcbiAgICBjb25zdCBrZXlCID0gc29ydEFjdGl2ZVZhbHVlRm4oYiwga2V5KS50b1N0cmluZygpO1xuICAgIGlmIChrZXlBID09PSBrZXlCKSByZXR1cm4gMDtcbiAgICByZXR1cm4gc29ydC5kaXJlY3Rpb24gPT09ICdhc2MnXG4gICAgICA/IGtleUEubG9jYWxlQ29tcGFyZShrZXlCKVxuICAgICAgOiBrZXlCLmxvY2FsZUNvbXBhcmUoa2V5QSk7XG4gIH0pO1xufVxuXG4vLyDmoLnmja4gdGFnT3JEaWdlc3Qg55Sf5oiQ6ZWc5YOP5Zyw5Z2AXG5leHBvcnQgY29uc3QgYnVpbGRJbWFnZUFkZHJlc3MgPSAodXJsOiBzdHJpbmcsIHRhZ09yRGlnZXN0OiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGAke3VybH0ke3RhZ09yRGlnZXN0LnN0YXJ0c1dpdGgoJ3NoYTI1NjonKSA/ICdAJyA6ICc6J30ke3RhZ09yRGlnZXN0fWA7XG59O1xuXG4vLyDop6PmnpDplZzlg4/lnLDlnYBcbmV4cG9ydCBjb25zdCBwYXJzZUltYWdlQWRkcmVzcyA9IChhZGRyOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgcmVzdWx0OiB7XG4gICAgZGlnZXN0Pzogc3RyaW5nO1xuICAgIHRhZz86IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgfSA9IHtcbiAgICB1cmw6ICcnLFxuICB9O1xuXG4gIGNvbnN0IFt1cmxQYXJ0LCBkaWdlc3RQYXJ0XSA9IGFkZHIuc3BsaXQoJ0BzaGEyNTYnKTtcbiAgaWYgKGRpZ2VzdFBhcnQpIHtcbiAgICByZXN1bHQuZGlnZXN0ID0gYHNoYTI1NiR7ZGlnZXN0UGFydH1gO1xuICB9XG5cbiAgY29uc3QgdGFnSW5kZXggPSB1cmxQYXJ0Lmxhc3RJbmRleE9mKCc6Jyk7XG4gIGlmICh0YWdJbmRleCA+IDAgJiYgdGFnSW5kZXggPiB1cmxQYXJ0Lmxhc3RJbmRleE9mKCcvJykpIHtcbiAgICByZXN1bHQudGFnID0gdXJsUGFydC5zbGljZSh0YWdJbmRleCArIDEpO1xuICAgIHJlc3VsdC51cmwgPSB1cmxQYXJ0LnNsaWNlKDAsIHRhZ0luZGV4KTtcbiAgfSBlbHNlIHtcbiAgICByZXN1bHQudXJsID0gdXJsUGFydDtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59O1xuXG5jb25zdCBhbGxvd2VkQXBpcyA9IFtcbiAgJ2hhc1NlbGVjdGlvbicsXG4gICdnZXRTZWxlY3Rpb24nLFxuICAnZ2V0U2VsZWN0aW9uUG9zaXRpb24nLFxuICAnY2xlYXJTZWxlY3Rpb24nLFxuICAnc2VsZWN0JyxcbiAgJ3NlbGVjdEFsbCcsXG4gICdzZWxlY3RMaW5lcycsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3Qgc2V0V2luZG93c1h0ZXJtVG9vbHMgPSAoeHRlcm06IFRlcm1pbmFsKSA9PiB7XG4gICh3aW5kb3cgYXMgYW55KS5fX1hURVJNX1RPT0xTX18gPSBtYXBWYWx1ZXMoXG4gICAgcGljayh4dGVybSwgYWxsb3dlZEFwaXMpLFxuICAgIChmdW46IFZhbHVlT2Y8UGljazxUZXJtaW5hbCwgVmFsdWVPZjx0eXBlb2YgYWxsb3dlZEFwaXM+Pj4pID0+XG4gICAgICBmdW4uYmluZCh4dGVybSksXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgY2xlYXJXaW5kb3dzWHRlcm1Ub29scyA9ICgpID0+IHtcbiAgZGVsZXRlICh3aW5kb3cgYXMgYW55KS5fX1hURVJNX1RPT0xTX187XG59O1xuIl19
|
|
312
|
+
export const buildUrl = (baseUri, params) => {
|
|
313
|
+
const searchParams = new URLSearchParams();
|
|
314
|
+
for (const [key, value] of Object.entries(params)) {
|
|
315
|
+
searchParams.append(key, value.toString());
|
|
316
|
+
}
|
|
317
|
+
const queryString = searchParams.toString();
|
|
318
|
+
return queryString ? `${baseUri}?${queryString}` : baseUri;
|
|
319
|
+
};
|
|
320
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdXRpbHMvY29tbW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUdILE9BQU8sRUFDTCxJQUFJO0FBQ0osaURBQWlEO0FBQ2pELE9BQU8sSUFBSSxRQUFRLEVBQ25CLElBQUksRUFDSixTQUFTLEdBQ1YsTUFBTSxXQUFXLENBQUM7QUFJbkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBVWpELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVksRUFBRSxFQUFFO0lBQ3ZDLElBQUksR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ2QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsT0FBTyxHQUFHO1NBQ1AsY0FBYyxDQUFDLFVBQVUsRUFBRTtRQUMxQixxQkFBcUIsRUFBRSxDQUFDO1FBQ3hCLFdBQVcsRUFBRSxLQUFLO0tBQ25CLENBQUM7U0FDRCxPQUFPLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ25DLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQXFCLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxFQUFFO0lBQzVELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDNUIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUM3QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFD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LE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ2xELFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUMsT0FBTyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7QUFDN0QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgdXRpbHNcbiAqL1xuXG5pbXBvcnQgeyBTb3J0IH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBsYXN0LFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG4gIGlzRXF1YWwgYXMgX2lzRXF1YWwsXG4gIHBpY2ssXG4gIG1hcFZhbHVlcyxcbn0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IFVuaW9uVG9JbnRlcnNlY3Rpb24sIFZhbHVlT2YgfSBmcm9tICd0cy1lc3NlbnRpYWxzJztcbmltcG9ydCB7IFRlcm1pbmFsIH0gZnJvbSAneHRlcm0nO1xuXG5pbXBvcnQgeyBCcmFja2V0IH0gZnJvbSAnLi4vY29uc3RhbnRzL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBDYWxsYmFjayxcbiAgS2V5cyxcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBOdWxsYWJsZSxcbiAgUmVhZG9ubHlhYmxlLFxuICBTdHJpbmdNYXAsXG59IGZyb20gJy4uL3R5cGVzL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY29uc3QgbnVtVG9TdHIgPSAobnVtPzogbnVtYmVyKSA9PiB7XG4gIGlmIChudW0gPT09IDApIHtcbiAgICByZXR1cm4gJzAnO1xuICB9XG5cbiAgaWYgKCFudW0pIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICByZXR1cm4gbnVtXG4gICAgLnRvTG9jYWxlU3RyaW5nKCdmdWxsd2lkZScsIHtcbiAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMyxcbiAgICAgIHVzZUdyb3VwaW5nOiBmYWxzZSxcbiAgICB9KVxuICAgIC5yZXBsYWNlKC8oW14uXSlcXC4/MCskLywgJyQxJyk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2hvcnROdW0gPSAobnVtPzogbnVtYmVyIHwgc3RyaW5nLCBkaWdpdHMgPSAyKSA9PiB7XG4gIGlmICh0eXBlb2YgbnVtID09PSAnc3RyaW5nJykge1xuICAgIG51bSA9IG51bS50cmltKCk7XG4gIH1cbiAgaWYgKG51bSA9PT0gMCB8fCBudW0gPT09ICcwJykge1xuICAgIHJldHVybiAnMCc7XG4gIH1cbiAgaWYgKCFudW0pIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgcmV0dXJuIG51bVRvU3RyKCsoK251bSkudG9GaXhlZChkaWdpdHMpIHx8IE1hdGgucG93KDEwLCAtZGlnaXRzKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNCbGFuayA9IChzdHI/OiB1bmtub3duKSA9PlxuICBzdHIgPT0gbnVsbCB8fCBOdW1iZXIuaXNOYU4oc3RyIGFzIG51bWJlcikgfHwgIXN0ci50b1N0cmluZygpLnRyaW0oKTtcblxuZXhwb3J0IGNvbnN0IGdldEJhc2VIcmVmID0gKCkgPT4ge1xuICAvLyBUaGUgbGFzdCBiYXNlIGVsZW1lbnQgaGFzIGhpZ2hlc3QgcHJpdmlsZWdlXG4gIGNvbnN0IGJhc2UgPSBsYXN0KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2Jhc2UnKSk7XG4gIC8vIHVzZSBgZ2V0QXR0cmlidXRlYCBpbnN0ZWFkIG9mIGBiYXNlLmhyZWZgIGJlY2F1c2UgdGhlIGF0dHJpYnV0ZSBjb3VsZCBiZSB2b2lkIGJ1dCByZXN1bHRzIGN1cnJlbnQgd2hvbGUgbG9jYXRpb24gdXJsXG4gIHJldHVybiBiYXNlPy5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSB8fCAnLyc7XG59O1xuXG5leHBvcnQgY29uc3QgaWZFeGlzdCA9IDxUPihcbiAgdG9DaGVjazogYm9vbGVhbiB8IE51bGxhYmxlPFQ+LFxuICB0cnV0aHlWYWx1ZTogVCxcbiAgZmFsbGJhY2s/OiBULFxuKSA9PiAodG9DaGVjayA/IHRydXRoeVZhbHVlIDogKChmYWxsYmFjayB8fCAnJykgYXMgVCkpO1xuXG5leHBvcnQgY29uc3QgaXNBYnNvbHV0ZVVybCA9ICh1cmw6IHN0cmluZykgPT4gL14oaHR0cHM/OlxcLyk/XFwvLy50ZXN0KHVybCk7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbmV4cG9ydCBjb25zdCBub29wOiBDYWxsYmFjayA9ICgpID0+IHt9O1xuXG5leHBvcnQgY29uc3QgdG9LZXlzID0gPFQgZXh0ZW5kcyBvYmplY3Q+KHNvdXJjZTogVCk6IEtleXM8VD4gPT5cbiAgT2JqZWN0LmtleXMoc291cmNlKS5yZWR1Y2UoKGFjYywgaykgPT4ge1xuICAgIGNvbnN0IGtleSA9IGsgYXMga2V5b2YgVDtcbiAgICBhY2Nba2V5XSA9IGtleTtcbiAgICByZXR1cm4gYWNjO1xuICB9LCB7fSBhcyBLZXlzPFQ+KTtcblxuZXhwb3J0IGNvbnN0IHdyYXBUZXh0ID0gKFxuICB0ZXh0Pzogc3RyaW5nLFxuICB3cmFwcGVyOiBSZWFkb25seWFibGU8W3N0cmluZywgc3RyaW5nXT4gPSBCcmFja2V0LlBBUkVOVEhFU0VTLFxuICBmYWxsYmFjaz86IHN0cmluZyxcbikgPT4gKHRleHQgPyB3cmFwcGVyLmpvaW4odGV4dCkgOiBmYWxsYmFjayB8fCAnJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUpTT05TdHJlYW08VD4odGV4dDogc3RyaW5nKTogVFtdIHtcbiAgcmV0dXJuIHRleHRcbiAgICAuc3BsaXQoJ1xcbicpXG4gICAgLm1hcCh2ID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKHYpO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH0pXG4gICAgLmZpbHRlcih2ID0+ICEhdik7XG59XG5cbmV4cG9ydCBjb25zdCB0cmFja0J5VWlkID0gPFQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2U+KFxuICBfOiBudW1iZXIsXG4gIHJlc291cmNlOiBULFxuKSA9PiByZXNvdXJjZS5tZXRhZGF0YS51aWQ7XG5cbmV4cG9ydCBjb25zdCBpc0s4c1Jlc291cmNlID0gPFxuICBUIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlID0gS3ViZXJuZXRlc1Jlc291cmNlLFxuPihcbiAgdmFsdWU6IG9iamVjdCxcbik6IHZhbHVlIGlzIFQgPT5cbiAgdmFsdWUgJiZcbiAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICAnYXBpVmVyc2lvbicgaW4gdmFsdWUgJiZcbiAgdHlwZW9mIHZhbHVlLmFwaVZlcnNpb24gPT09ICdzdHJpbmcnICYmXG4gICdraW5kJyBpbiB2YWx1ZSAmJlxuICB0eXBlb2YgdmFsdWUua2luZCA9PT0gJ3N0cmluZycgJiZcbiAgJ21ldGFkYXRhJyBpbiB2YWx1ZSAmJlxuICB2YWx1ZS5tZXRhZGF0YSAmJlxuICB0eXBlb2YgdmFsdWUubWV0YWRhdGEgPT09ICdvYmplY3QnO1xuXG5leHBvcnQgY29uc3QgYXJyYXlpZnkgPSA8XG4gIFQsXG4gIFIgPSBUIGV4dGVuZHMgQXJyYXk8aW5mZXIgUz4gPyBOb25OdWxsYWJsZTxTPiA6IE5vbk51bGxhYmxlPFQ+LFxuPihcbiAgLi4uYXJnczogQXJyYXk8UiB8IFJbXT5cbikgPT5cbiAgYXJncy5yZWR1Y2U8UltdPigoYXJyLCBjdXJyKSA9PiB7XG4gICAgYXJyLnB1c2goLi4uKEFycmF5LmlzQXJyYXkoY3VycikgPyBjdXJyIDogY3VyciA9PSBudWxsID8gW10gOiBbY3Vycl0pKTtcbiAgICByZXR1cm4gYXJyO1xuICB9LCBbXSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBzbGVlcChtcyA9IDApIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgIHNldFRpbWVvdXQocmVzb2x2ZSwgbXMpO1xuICB9KTtcbn1cblxuZXhwb3J0IGNvbnN0IGRlbGF5ID0gc2xlZXA7XG5cbmV4cG9ydCBmdW5jdGlvbiBzY3JvbGxJbnRvVmlldyhjb250YWluZXI6IEhUTUxFbGVtZW50LCBzZWxlY3RlZDogSFRNTEVsZW1lbnQpIHtcbiAgaWYgKCFzZWxlY3RlZCkge1xuICAgIGNvbnRhaW5lci5zY3JvbGxUb3AgPSAwO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHRvcCA9IHNlbGVjdGVkLm9mZnNldFRvcDtcbiAgY29uc3QgYm90dG9tID0gc2VsZWN0ZWQub2Zmc2V0VG9wICsgc2VsZWN0ZWQub2Zmc2V0SGVpZ2h0O1xuICBjb25zdCB2aWV3UmVjdFRvcCA9IGNvbnRhaW5lci5zY3JvbGxUb3A7XG4gIGNvbnN0IHZpZXdSZWN0Qm90dG9tID0gdmlld1JlY3RUb3AgKyBjb250YWluZXIuY2xpZW50SGVpZ2h0O1xuXG4gIGlmICh2aWV3UmVjdFRvcCA+IHRvcCkge1xuICAgIGNvbnRhaW5lci5zY3JvbGxUb3AgPSB0b3A7XG4gIH0gZWxzZSBpZiAodmlld1JlY3RCb3R0b20gPCBib3R0b20pIHtcbiAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gYm90dG9tIC0gY29udGFpbmVyLmNsaWVudEhlaWdodDtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgaXNFcXVhbDogPFQsIFYgPSBUPihhOiBULCBiOiBWKSA9PiBib29sZWFuID0gX2lzRXF1YWw7XG5cbmV4cG9ydCBjb25zdCBwYXJzZUpzb24gPSA8VD4oc3RyOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogVCA9IG51bGwpID0+IHtcbiAgaWYgKHN0ciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgfVxuICB0cnkge1xuICAgIHJldHVybiBKU09OLnBhcnNlKHN0cik7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gIH1cbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0pzb25PYmplY3RTdHJpbmcoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKHN0cik7XG4gICAgcmV0dXJuIHR5cGVvZiBwYXJzZWQgPT09ICdvYmplY3QnICYmIHBhcnNlZCAhPT0gbnVsbDtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBwYXJzZVZhbGlkSW1hZ2VOYW1lID0gKGltYWdlOiBzdHJpbmcpID0+XG4gIGltYWdlPy5yZXBsYWNlKC8oW146XSlcXC9cXC8vZywgJyQxLycpIHx8IGltYWdlO1xuXG5leHBvcnQgY29uc3QgYXRvYldpdGhGYWxsYmFjayA9IChzdHI6IHN0cmluZywgZmFsbGJhY2tWYWx1ZTogc3RyaW5nID0gbnVsbCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiB3aW5kb3cuYXRvYihzdHIpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gZmFsbGJhY2tWYWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGludGVyZmFjZSBTYWZlQXNzaWduT3B0aW9ucyB7XG4gIG5vdGljZTogKGR1cGxpY2F0ZXM6IHN0cmluZ1tdKSA9PiBhbnk7XG59XG4vKipcbiAqIOW4pumHjeWkjeajgOafpeeahGFzc2lnbu+8jOWPquWBmuS4gOe6p2tleeeahOmHjeWkjeajgOafpVxuICog5aaC5p6c5pyJ6YeN5aSN6aG56buY6K6k5LyadGhyb3cgZXJyb3LvvIzlpoLmnpzkvaDmmI7noa7ov5nkuI3mmK/kuIDkuKrlhbPplK7mgKfplJnor6/vvIzliJnlj6/ku6XpgJrov4fmjIflrppub3RpY2Xlh73mlbDkv67mlLnor6Xpu5jorqTooYzkuLpcbiAqIEBwYXJhbSBzb3VyY2VzXG4gKiBAcGFyYW0gb3B0aW9uc09yTm90aWNlXG4gKiBAcmV0dXJuIG9iamVjdCDkuIDkuKrlhajmlrDnmoTlr7nosaFcbiAqL1xuZXhwb3J0IGNvbnN0IHNhZmVBc3NpZ24gPSA8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIGFueT4+KFxuICBzb3VyY2VzOiBUW10sXG4gIG9wdGlvbnNPck5vdGljZT86IFNhZmVBc3NpZ25PcHRpb25zWydub3RpY2UnXSB8IFNhZmVBc3NpZ25PcHRpb25zLFxuKTogVW5pb25Ub0ludGVyc2VjdGlvbjxUPiA9PiB7XG4gIGlmIChzb3VyY2VzLmxlbmd0aCA9PT0gMSkge1xuICAgIHJldHVybiBzb3VyY2VzWzBdIGFzIFVuaW9uVG9JbnRlcnNlY3Rpb248VD47XG4gIH1cblxuICBjb25zdCBvcHRpb246IFNhZmVBc3NpZ25PcHRpb25zID0ge1xuICAgIG5vdGljZTogKGR1cGxpY2F0ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUaGVyZSBhcmUgZHVwbGljYXRlIGRlZmluaXRpb25zOiAke2R1cGxpY2F0ZXMuam9pbignLCcpfWAsXG4gICAgICApO1xuICAgIH0sXG4gIH07XG4gIGlmICh0eXBlb2Ygb3B0aW9uc09yTm90aWNlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgb3B0aW9uLm5vdGljZSA9IG9wdGlvbnNPck5vdGljZTtcbiAgfVxuICBpZiAodHlwZW9mIG9wdGlvbnNPck5vdGljZSA9PT0gJ29iamVjdCcpIHtcbiAgICBPYmplY3QuYXNzaWduKG9wdGlvbiwgb3B0aW9uc09yTm90aWNlKTtcbiAgfVxuXG4gIGNvbnN0IGR1cGxpY2F0ZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgY29uc3QgYWxsS2V5ID0gbmV3IFNldChPYmplY3Qua2V5cyhzb3VyY2VzWzBdKSk7XG4gIHNvdXJjZXMuc2xpY2UoMSkuZm9yRWFjaChvYmogPT4ge1xuICAgIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgaWYgKGFsbEtleS5oYXMoa2V5KSkge1xuICAgICAgICBkdXBsaWNhdGVzLmFkZChrZXkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYWxsS2V5LmFkZChrZXkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbiAgaWYgKGR1cGxpY2F0ZXMuc2l6ZSkge1xuICAgIG9wdGlvbi5ub3RpY2UoWy4uLmR1cGxpY2F0ZXNdKTtcbiAgfVxuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgLi4uc291cmNlcyk7XG59O1xuXG5leHBvcnQgY29uc3QgdG9Mb3dlckZpcnN0TGV0dGVyID0gKHRleHQ6IHN0cmluZykgPT5cbiAgdHlwZW9mIHRleHQgPT09ICdzdHJpbmcnICYmIHRleHQubGVuZ3RoID4gMFxuICAgID8gdGV4dC5yZXBsYWNlKHRleHRbMF0sIHRleHRbMF0udG9Mb2NhbGVMb3dlckNhc2UoKSlcbiAgICA6IHRleHQ7XG5cbmV4cG9ydCBjb25zdCBsb2FkRW52ID0gKGVudlRleHQ6IHN0cmluZyk6IEFycmF5PFtzdHJpbmcsIHN0cmluZ10+ID0+IHtcbiAgaWYgKCFlbnZUZXh0KSByZXR1cm4gW107XG4gIHJldHVybiBlbnZUZXh0XG4gICAgLnNwbGl0KCdcXG4nKVxuICAgIC5maWx0ZXIocyA9PiAhIXMudHJpbSgpKVxuICAgIC5tYXAocyA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHMudHJpbSgpLmluY2x1ZGVzKCc9JylcbiAgICAgICAgPyBzLnRyaW0oKS5pbmRleE9mKCc9JylcbiAgICAgICAgOiBzLnRyaW0oKS5sZW5ndGg7XG4gICAgICByZXR1cm4gW1xuICAgICAgICBzLnRyaW0oKS5zbGljZSgwLCBpbmRleCkudHJpbSgpLFxuICAgICAgICBzXG4gICAgICAgICAgLnRyaW0oKVxuICAgICAgICAgIC5zbGljZShpbmRleCArIDEpXG4gICAgICAgICAgLnRyaW0oKSxcbiAgICAgIF07XG4gICAgfSk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyRW1wdHlWYWx1ZTxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+KFxuICBvYmo6IFQsXG4pOiBQYXJ0aWFsPFQ+IHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iaikucmVkdWNlKChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgICBhY2Nba2V5IGFzIGtleW9mIFRdID0gdmFsdWUgYXMgVFtrZXlvZiBUXTtcbiAgICB9XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30gYXMgUGFydGlhbDxUPik7XG59XG5cbmNvbnN0IElNQUdFX1RZUEVfTUFQUEVSOiBTdHJpbmdNYXAgPSB7XG4gICcvJzogJ2pwZycsXG4gIGk6ICdwbmcnLFxuICBQOiAnc3ZnK3htbCcsXG4gIFI6ICdnaWYnLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQmFzZTY0VHlwZShiYXNlNjRTdHI6IHN0cmluZykge1xuICBjb25zdCBmaXJzdENoYXIgPSBiYXNlNjRTdHIuY2hhckF0KDApO1xuICByZXR1cm4gSU1BR0VfVFlQRV9NQVBQRVJbZmlyc3RDaGFyXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZEltYWdlSGVhZGVyKHZhbHVlOiBzdHJpbmcsIHByZWZpeD86IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICghdmFsdWUgfHwgdmFsdWUuc3RhcnRzV2l0aCgnZGF0YTppbWFnZS8nKSkge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICBjb25zdCBoZWFkZXIgPVxuICAgIHByZWZpeCB8fCBgZGF0YTppbWFnZS8ke3BhcnNlQmFzZTY0VHlwZSh2YWx1ZSkgfHwgJ2pwZyd9O2Jhc2U2NCxgO1xuICByZXR1cm4gYCR7aGVhZGVyfSR7dmFsdWV9YDtcbn1cblxuZXhwb3J0IGNvbnN0IGdldFJlbGF0aXZlUGF0aCA9IChmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpID0+IHtcbiAgaWYgKHRvID09PSBudWxsIHx8IHRvID09PSB1bmRlZmluZWQgfHwgIWZyb20pIHtcbiAgICByZXR1cm4gdG87XG4gIH1cbiAgY29uc3QgZnJvbVBhcnRzID0gKGZyb20gPz8gJycpLnNwbGl0KCcvJykuZmlsdGVyKHAgPT4gcCAhPT0gJycpO1xuICBjb25zdCB0b1BhcnRzID0gKHRvID8/ICcnKS5zcGxpdCgnLycpLmZpbHRlcihwID0+IHAgIT09ICcnKTtcblxuICBsZXQgcmVsYXRpdmVQYXRoID0gJyc7XG4gIHdoaWxlIChcbiAgICBmcm9tUGFydHMubGVuZ3RoID4gMCAmJlxuICAgIHRvUGFydHMubGVuZ3RoID4gMCAmJlxuICAgIGZyb21QYXJ0c1swXSA9PT0gdG9QYXJ0c1swXVxuICApIHtcbiAgICBmcm9tUGFydHMuc2hpZnQoKTtcbiAgICB0b1BhcnRzLnNoaWZ0KCk7XG4gIH1cblxuICByZWxhdGl2ZVBhdGggPSAnLi4vJy5yZXBlYXQoZnJvbVBhcnRzLmxlbmd0aCk7XG5cbiAgcmVsYXRpdmVQYXRoICs9IHRvUGFydHMuam9pbignLycpO1xuXG4gIHJldHVybiByZWxhdGl2ZVBhdGg7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VG9QYXRoID0gKGZyb206IHN0cmluZywgcmVsYXRpdmU6IHN0cmluZykgPT4ge1xuICBpZiAocmVsYXRpdmUgPT09IG51bGwgfHwgcmVsYXRpdmUgPT09IHVuZGVmaW5lZCB8fCAhZnJvbSkge1xuICAgIHJldHVybiByZWxhdGl2ZTtcbiAgfVxuXG4gIGNvbnN0IGZyb21QYXJ0cyA9IGZyb20uc3BsaXQoJy8nKS5maWx0ZXIocCA9PiBwICE9PSAnJyk7XG4gIGNvbnN0IHJlbGF0aXZlUGFydHMgPSByZWxhdGl2ZS5zcGxpdCgnLycpLmZpbHRlcihwID0+IHAgIT09ICcnKTtcblxuICBjb25zdCBkb3REb3RDb3VudCA9ICtyZWxhdGl2ZVBhcnRzLmZpbHRlcihwID0+IHAgPT09ICcuLicpPy5sZW5ndGg7XG5cbiAgY29uc3QgcyA9IGZyb21QYXJ0cy5zcGxpY2UoMCwgZnJvbVBhcnRzLmxlbmd0aCAtIGRvdERvdENvdW50KTtcblxuICByZXR1cm4gcy5jb25jYXQocmVsYXRpdmVQYXJ0cy5zcGxpY2UoZG90RG90Q291bnQpKS5qb2luKCcvJyk7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhY2tCeU5hbWUgPSA8VCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZT4oXG4gIF86IG51bWJlcixcbiAgcmVzb3VyY2U6IFQsXG4pID0+IHJlc291cmNlLm1ldGFkYXRhLm5hbWU7XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZVNvcnQ8VD4oXG4gIGxpc3Q6IFRbXSxcbiAgc29ydDogU29ydCxcbiAgc29ydEFjdGl2ZVZhbHVlRm46IChpdGVtOiBULCBuYW1lOiBzdHJpbmcpID0+IHN0cmluZyB8IG51bWJlcixcbik6IFRbXSB7XG4gIHJldHVybiBsaXN0LnNsaWNlKCkuc29ydCgoYSwgYikgPT4ge1xuICAgIGNvbnN0IGtleSA9IHNvcnQuYWN0aXZlO1xuICAgIGNvbnN0IGtleUEgPSBzb3J0QWN0aXZlVmFsdWVGbihhLCBrZXkpO1xuICAgIGNvbnN0IGtleUIgPSBzb3J0QWN0aXZlVmFsdWVGbihiLCBrZXkpO1xuICAgIGlmIChrZXlBID09PSBrZXlCKSByZXR1cm4gMDtcbiAgICByZXR1cm4gc29ydC5kaXJlY3Rpb24gPT09ICdhc2MnXG4gICAgICA/IGtleUEgPiBrZXlCXG4gICAgICAgID8gMVxuICAgICAgICA6IC0xXG4gICAgICA6IGtleUIgPiBrZXlBXG4gICAgICAgID8gMVxuICAgICAgICA6IC0xO1xuICB9KTtcbn1cblxuLy8g5pSv5oyB5Lit5paH5o6S5bqP77yM5o6o6I2Q5L2/55SoXG5leHBvcnQgZnVuY3Rpb24gdGFibGVTb3J0QWR2YW5jZTxUPihcbiAgbGlzdDogVFtdLFxuICBzb3J0OiBTb3J0LFxuICBzb3J0QWN0aXZlVmFsdWVGbjogKGl0ZW06IFQsIG5hbWU6IHN0cmluZykgPT4gc3RyaW5nIHwgbnVtYmVyLFxuKTogVFtdIHtcbiAgcmV0dXJuIGxpc3Quc2xpY2UoKS5zb3J0KChhLCBiKSA9PiB7XG4gICAgY29uc3Qga2V5ID0gc29ydC5hY3RpdmU7XG4gICAgY29uc3Qga2V5QSA9IHNvcnRBY3RpdmVWYWx1ZUZuKGEsIGtleSkudG9TdHJpbmcoKTtcbiAgICBjb25zdCBrZXlCID0gc29ydEFjdGl2ZVZhbHVlRm4oYiwga2V5KS50b1N0cmluZygpO1xuICAgIGlmIChrZXlBID09PSBrZXlCKSByZXR1cm4gMDtcbiAgICByZXR1cm4gc29ydC5kaXJlY3Rpb24gPT09ICdhc2MnXG4gICAgICA/IGtleUEubG9jYWxlQ29tcGFyZShrZXlCKVxuICAgICAgOiBrZXlCLmxvY2FsZUNvbXBhcmUoa2V5QSk7XG4gIH0pO1xufVxuXG4vLyDmoLnmja4gdGFnT3JEaWdlc3Qg55Sf5oiQ6ZWc5YOP5Zyw5Z2AXG5leHBvcnQgY29uc3QgYnVpbGRJbWFnZUFkZHJlc3MgPSAodXJsOiBzdHJpbmcsIHRhZ09yRGlnZXN0OiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIGAke3VybH0ke3RhZ09yRGlnZXN0LnN0YXJ0c1dpdGgoJ3NoYTI1NjonKSA/ICdAJyA6ICc6J30ke3RhZ09yRGlnZXN0fWA7XG59O1xuXG4vLyDop6PmnpDplZzlg4/lnLDlnYBcbmV4cG9ydCBjb25zdCBwYXJzZUltYWdlQWRkcmVzcyA9IChhZGRyOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgcmVzdWx0OiB7XG4gICAgZGlnZXN0Pzogc3RyaW5nO1xuICAgIHRhZz86IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgfSA9IHtcbiAgICB1cmw6ICcnLFxuICB9O1xuXG4gIGNvbnN0IFt1cmxQYXJ0LCBkaWdlc3RQYXJ0XSA9IGFkZHIuc3BsaXQoJ0BzaGEyNTYnKTtcbiAgaWYgKGRpZ2VzdFBhcnQpIHtcbiAgICByZXN1bHQuZGlnZXN0ID0gYHNoYTI1NiR7ZGlnZXN0UGFydH1gO1xuICB9XG5cbiAgY29uc3QgdGFnSW5kZXggPSB1cmxQYXJ0Lmxhc3RJbmRleE9mKCc6Jyk7XG4gIGlmICh0YWdJbmRleCA+IDAgJiYgdGFnSW5kZXggPiB1cmxQYXJ0Lmxhc3RJbmRleE9mKCcvJykpIHtcbiAgICByZXN1bHQudGFnID0gdXJsUGFydC5zbGljZSh0YWdJbmRleCArIDEpO1xuICAgIHJlc3VsdC51cmwgPSB1cmxQYXJ0LnNsaWNlKDAsIHRhZ0luZGV4KTtcbiAgfSBlbHNlIHtcbiAgICByZXN1bHQudXJsID0gdXJsUGFydDtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59O1xuXG5jb25zdCBhbGxvd2VkQXBpcyA9IFtcbiAgJ2hhc1NlbGVjdGlvbicsXG4gICdnZXRTZWxlY3Rpb24nLFxuICAnZ2V0U2VsZWN0aW9uUG9zaXRpb24nLFxuICAnY2xlYXJTZWxlY3Rpb24nLFxuICAnc2VsZWN0JyxcbiAgJ3NlbGVjdEFsbCcsXG4gICdzZWxlY3RMaW5lcycsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3Qgc2V0V2luZG93c1h0ZXJtVG9vbHMgPSAoeHRlcm06IFRlcm1pbmFsKSA9PiB7XG4gICh3aW5kb3cgYXMgYW55KS5fX1hURVJNX1RPT0xTX18gPSBtYXBWYWx1ZXMoXG4gICAgcGljayh4dGVybSwgYWxsb3dlZEFwaXMpLFxuICAgIChmdW46IFZhbHVlT2Y8UGljazxUZXJtaW5hbCwgVmFsdWVPZjx0eXBlb2YgYWxsb3dlZEFwaXM+Pj4pID0+XG4gICAgICBmdW4uYmluZCh4dGVybSksXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgY2xlYXJXaW5kb3dzWHRlcm1Ub29scyA9ICgpID0+IHtcbiAgZGVsZXRlICh3aW5kb3cgYXMgYW55KS5fX1hURVJNX1RPT0xTX187XG59O1xuXG5leHBvcnQgY29uc3QgYnVpbGRVcmwgPSAoXG4gIGJhc2VVcmk6IHN0cmluZyxcbiAgcGFyYW1zPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgYm9vbGVhbj4sXG4pID0+IHtcbiAgY29uc3Qgc2VhcmNoUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcygpO1xuXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHBhcmFtcykpIHtcbiAgICBzZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgdmFsdWUudG9TdHJpbmcoKSk7XG4gIH1cblxuICBjb25zdCBxdWVyeVN0cmluZyA9IHNlYXJjaFBhcmFtcy50b1N0cmluZygpO1xuICByZXR1cm4gcXVlcnlTdHJpbmcgPyBgJHtiYXNlVXJpfT8ke3F1ZXJ5U3RyaW5nfWAgOiBiYXNlVXJpO1xufTtcbiJdfQ==
|