@alauda-fe/common 1.4.31-beta.2 → 1.4.32-beta.0
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/business/resource-select/exports/cluster-list/component.d.ts +1 -1
- package/core/types/k8s/raw.d.ts +1 -0
- package/esm2022/core/types/k8s/raw.mjs +1 -1
- package/esm2022/exec/terminal/component.mjs +11 -36
- package/esm2022/exec/types.mjs +1 -1
- package/esm2022/license/license-api.mjs +13 -2
- package/esm2022/pod-status/component.mjs +12 -3
- package/esm2022/pod-status/status.mjs +10 -3
- package/exec/module.d.ts +1 -1
- package/exec/terminal/component.d.ts +1 -4
- package/exec/types.d.ts +0 -1
- package/license/license-api.d.ts +4 -0
- package/package.json +1 -1
|
@@ -19,7 +19,7 @@ export declare class ClusterListComponent extends ResourceListBase implements On
|
|
|
19
19
|
private setSelected;
|
|
20
20
|
ngOnDestroy(): void;
|
|
21
21
|
mapResource(list: Cluster[]): ClusterDataItem[];
|
|
22
|
-
getClusterStatus(cluster?: Cluster): "
|
|
22
|
+
getClusterStatus(cluster?: Cluster): "normal" | "abnormal";
|
|
23
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<ClusterListComponent, never>;
|
|
24
24
|
static ɵcmp: i0.ɵɵComponentDeclaration<ClusterListComponent, "acl-cluster-list", never, { "value": { "alias": "value"; "required": false; }; }, {}, never, never, false, never>;
|
|
25
25
|
}
|
package/core/types/k8s/raw.d.ts
CHANGED
|
@@ -123,4 +123,4 @@ export const SERVICE_PORT_PROTOCOLS = [
|
|
|
123
123
|
'HTTP2',
|
|
124
124
|
'gRPC',
|
|
125
125
|
];
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdHlwZXMvazhzL3Jhdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3RUFBd0U7QUFDeEUsK0VBQStFO0FBQy9FLHFFQUFxRTtBQThDckUsTUFBTSxDQUFOLElBQVksaUJBWVg7QUFaRCxXQUFZLGlCQUFpQjtJQUMzQixnQ0FBVyxDQUFBO0lBQ1gsa0NBQWEsQ0FBQTtJQUNiLG9DQUFlLENBQUE7SUFDZixzQ0FBaUIsQ0FBQTtJQUNqQixzQ0FBaUIsQ0FBQTtJQUNqQixvQ0FBZSxDQUFBO0lBQ2Ysc0NBQWlCLENBQUE7SUFDakIsMkRBQXNDLENBQUE7SUFDdEMsb0NBQWUsQ0FBQTtJQUNmLDBDQUFxQixDQUFBO0lBQ3JCLDhCQUFTLENBQUE7QUFDWCxDQUFDLEVBWlcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQVk1QjtBQUVELE1BQU0sQ0FBTixJQUFZLFVBY1g7QUFkRCxXQUFZLFVBQVU7SUFDcEIsK0JBQWlCLENBQUE7SUFDakIsdUNBQXlCLENBQUE7SUFDekIscURBQXVDLENBQUE7SUFDdkMsZ0RBQWtDLENBQUE7SUFDbEMsb0RBQXNDLENBQUE7SUFDdEMsaUVBQW1ELENBQUE7SUFDbkQsaURBQW1DLENBQUE7SUFDbkMsaUVBQW1ELENBQUE7SUFDbkQsNENBQThCLENBQUE7SUFDOUIsOENBQWdDLENBQUE7SUFDaEMsc0RBQXdDLENBQUE7SUFDeEMsdURBQXlDLENBQUE7SUFDekMsaURBQW1DLENBQUE7QUFDckMsQ0FBQyxFQWRXLFVBQVUsS0FBVixVQUFVLFFBY3JCO0FBcURELE1BQU0sQ0FBTixJQUFZLGtCQUdYO0FBSEQsV0FBWSxrQkFBa0I7SUFDNUIsdUNBQWlCLENBQUE7SUFDakIscUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUc3QjtBQUVELE1BQU0sQ0FBTixJ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QUEyQixHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBVSxDQUFDO0FBSW5FLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHO0lBQ3BDLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtJQUNOLE9BQU87SUFDUCxPQUFPO0lBQ1AsTUFBTTtDQUNFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUeXBlTWV0YSBkZXNjcmliZXMgYW4gaW5kaXZpZHVhbCBvYmplY3QgaW4gYW4gQVBJIHJlc3BvbnNlIG9yIHJlcXVlc3Rcbi8vIHdpdGggc3RyaW5ncyByZXByZXNlbnRpbmcgdGhlIHR5cGUgb2YgdGhlIG9iamVjdCBhbmQgaXRzIEFQSSBzY2hlbWEgdmVyc2lvbi5cbi8vIFN0cnVjdHVyZXMgdGhhdCBhcmUgdmVyc2lvbmVkIG9yIHBlcnNpc3RlZCBzaG91bGQgaW5saW5lIFR5cGVNZXRhLlxuXG4vKipcbiAqIOatpOaWh+S7tuWPque7tOaKpCDmiYDmnInnmoQgazhzIOWOn+eUn+exu+Wei1xuICovXG5cbmltcG9ydCB7IFN0cmluZ01hcCB9IGZyb20gJy4uL2NvbW1vbnMnO1xuaW1wb3J0IHsgVmFsdWVPZiB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgT3BlbkFQSVYzU2NoZW1hT2JqZWN0IH0gZnJvbSAnLi4vc2NoZW1hJztcblxuaW1wb3J0IHtcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBMYWJlbFNlbGVjdG9yLFxuICBMYWJlbFNlbGVjdG9yUmVxdWlyZW1lbnQsXG4gIE9iamVjdE1ldGEsXG4gIE9iamVjdFJlZmVyZW5jZSxcbiAgQ29uZGl0aW9uLFxufSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldDxUID0gU3RyaW5nTWFwPiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGRhdGE/OiBUO1xuICBzdHJpbmdEYXRhPzogU3RyaW5nTWFwO1xuICB0eXBlPzogU2VjcmV0VHlwZTtcbiAgLy8gISBoYWNrLCBub3Qgc3BlY1xuICBnbG9iYWw/OiBib29sZWFuO1xuICBjZXJ0aWZpY2F0ZT86IENlcnRpZmljYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVzcGFjZSBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHN0YXR1cz86IE5hbWVzcGFjZVN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYW1lc3BhY2VTdGF0dXMge1xuICBwaGFzZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY29wZWRSZXNvdXJjZVNlbGVjdG9yUmVxdWlyZW1lbnQge1xuICBvcGVyYXRvcjogJ0luJyB8ICdOb3RJbicgfCAnRXhpc3RzJyB8ICdEb2VzTm90RXhpc3QnO1xuICBzY29wZU5hbWU6IHN0cmluZztcbiAgdmFsdWVzOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NvcGVTZWxlY3RvciB7XG4gIG1hdGNoRXhwcmVzc2lvbnM6IFNjb3BlZFJlc291cmNlU2VsZWN0b3JSZXF1aXJlbWVudFtdO1xufVxuXG5leHBvcnQgZW51bSBLOHNSZXNvdXJjZUFjdGlvbiB7XG4gIEdFVCA9ICdnZXQnLFxuICBMSVNUID0gJ2xpc3QnLFxuICBXQVRDSCA9ICd3YXRjaCcsXG4gIENSRUFURSA9ICdjcmVhdGUnLFxuICBVUERBVEUgPSAndXBkYXRlJyxcbiAgUEFUQ0ggPSAncGF0Y2gnLFxuICBERUxFVEUgPSAnZGVsZXRlJyxcbiAgREVMRVRFX0NPTExFQ1RJT04gPSAnZGVsZXRlY29sbGVjdGlvbicsXG4gIFBST1hZID0gJ3Byb3h5JyxcbiAgUkVESVJFQ1QgPSAncmVkaXJlY3QnLFxuICBBTEwgPSAnKicsXG59XG5cbmV4cG9ydCBlbnVtIFNlY3JldFR5cGUge1xuICBPcGFxdWUgPSAnT3BhcXVlJyxcbiAgVExTID0gJ2t1YmVybmV0ZXMuaW8vdGxzJyxcbiAgU1NIS2V5ID0gJ2t1YmVybmV0ZXMuaW8vc3NoLXB1YmxpYy1rZXknLFxuICBTU0hBdXRoID0gJ2t1YmVybmV0ZXMuaW8vc3NoLWF1dGgnLFxuICBCYXNpY0F1dGggPSAna3ViZXJuZXRlcy5pby9iYXNpYy1hdXRoJyxcbiAgQmFzaWNBdXRoU2VjcmV0ID0gJ2t1YmVybmV0ZXMuaW8vYmFzaWMtYXV0aC1zZWNyZXQnLFxuICBEYXRhYmFzZSA9ICdrdWJlcm5ldGVzLmlvL2RhdGFiYXNlJyxcbiAgRG9ja2VyQ29uZmlnSnNvbiA9ICdrdWJlcm5ldGVzLmlvL2RvY2tlcmNvbmZpZ2pzb24nLFxuICBPQXV0aDIgPSAna2F0YW5vbWkuZGV2L29hdXRoMicsXG4gIE5vQXV0aCA9ICdrdWJlcm5ldGVzLmlvL25vLWF1dGgnLFxuICBEZXZPcHNPQXV0aDIgPSAnZGV2b3BzLmFsYXVkYS5pby9vYXV0aDInLFxuICBEeW5hbWljU2VjcmV0S2V5ID0gJ2thdGFub21pLmRldi9keW5hbWljJyxcbiAgQ2xvdWRDcmVkZW50aWFsID0gJ0Nsb3VkQ3JlZGVudGlhbCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGVmdWxTZXQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogU3RhdGVmdWxTZXRTcGVjO1xuICBzdGF0dXM/OiBTdGF0ZWZ1bFNldFN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0ZWZ1bFNldFNwZWMge1xuICByZXBsaWNhcz86IG51bWJlcjtcbiAgc2VsZWN0b3I/OiBMYWJlbFNlbGVjdG9yO1xuICB0ZW1wbGF0ZT86IFBvZFRlbXBsYXRlU3BlYztcblxuICAvLyBzZXJ2aWNlTmFtZSBpcyB0aGUgbmFtZSBvZiB0aGUgc2VydmljZSB0aGF0IGdvdmVybnMgdGhpcyBTdGF0ZWZ1bFNldC5cbiAgLy8gVGhpcyBzZXJ2aWNlIG11c3QgZXhpc3QgYmVmb3JlIHRoZSBTdGF0ZWZ1bFNldCwgYW5kIGlzIHJlc3BvbnNpYmxlIGZvclxuICAvLyB0aGUgbmV0d29yayBpZGVudGl0eSBvZiB0aGUgc2V0LiBQb2RzIGdldCBETlMvaG9zdG5hbWVzIHRoYXQgZm9sbG93IHRoZVxuICAvLyBwYXR0ZXJuOiBwb2Qtc3BlY2lmaWMtc3RyaW5nLnNlcnZpY2VOYW1lLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWxcbiAgLy8gd2hlcmUgXCJwb2Qtc3BlY2lmaWMtc3RyaW5nXCIgaXMgbWFuYWdlZCBieSB0aGUgU3RhdGVmdWxTZXQgY29udHJvbGxlci5cbiAgc2VydmljZU5hbWU/OiBzdHJpbmc7XG4gIHVwZGF0ZVN0cmF0ZWd5PzogU3RhdGVmdWxTZXRVcGRhdGVTdHJhdGVneTtcbiAgcmV2aXNpb25IaXN0b3J5TGltaXQ/OiBudW1iZXI7XG4gIHZvbHVtZUNsYWltVGVtcGxhdGVzPzogUGVyc2lzdGVudFZvbHVtZUNsYWltW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kVGVtcGxhdGVTcGVjIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IFBvZFNwZWM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kU3BlYyB7XG4gIGNvbnRhaW5lcnM/OiBDb250YWluZXJbXTtcbiAgaW5pdENvbnRhaW5lcnM/OiBDb250YWluZXJbXTtcbiAgZXBoZW1lcmFsQ29udGFpbmVycz86IEVwaGVtZXJhbENvbnRhaW5lcltdO1xuICB2b2x1bWVzPzogVm9sdW1lW107XG4gIGhvc3RBbGlhc2VzPzogSG9zdEFsaWFzZXNbXTtcbiAgbm9kZVNlbGVjdG9yPzogU3RyaW5nTWFwO1xuICBob3N0TmV0d29yaz86IGJvb2xlYW47XG4gIGFmZmluaXR5PzogQWZmaW5pdHk7XG4gIHJlc3RhcnRQb2xpY3k/OiBzdHJpbmc7XG4gIGltYWdlUHVsbFNlY3JldHM/OiBMb2NhbE9iamVjdFJlZmVyZW5jZVtdO1xuICBzZXJ2aWNlQWNjb3VudE5hbWU/OiBzdHJpbmc7XG4gIHNlcnZpY2VBY2NvdW50Pzogc3RyaW5nO1xuICBub2RlTmFtZT86IHN0cmluZztcbiAgdGVybWluYXRpb25HcmFjZVBlcmlvZFNlY29uZHM/OiBudW1iZXI7XG4gIHRvbGVyYXRpb25zPzogVG9sZXJhdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRvbGVyYXRpb24ge1xuICBrZXk/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICBvcGVyYXRvcj86IFRvbGVyYXRpb25PcGVyYXRvcjtcbiAgdG9sZXJhdGlvblNlY29uZHM/OiBudW1iZXI7XG4gIGVmZmVjdD86IFRhaW50RWZmZWN0O1xufVxuXG5leHBvcnQgZW51bSBUb2xlcmF0aW9uT3BlcmF0b3Ige1xuICBFeGlzdHMgPSAnRXhpc3RzJyxcbiAgRXF1YWwgPSAnRXF1YWwnLFxufVxuXG5leHBvcnQgZW51bSBUYWludEVmZmVjdCB7XG4gIE5vU2NoZWR1bGUgPSAnTm9TY2hlZHVsZScsXG4gIFByZWZlck5vU2NoZWR1bGUgPSAnUHJlZmVyTm9TY2hlZHVsZScsXG4gIE5vRXhlY3V0ZSA9ICdOb0V4ZWN1dGUnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lciB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGltYWdlPzogc3RyaW5nO1xuICBjb21tYW5kPzogc3RyaW5nW107XG4gIGFyZ3M/OiBzdHJpbmdbXTtcbiAgZW52PzogRW52VmFyW107XG4gIGVudkZyb20/OiBFbnZGcm9tU291cmNlW107XG4gIHdvcmtpbmdEaXI/OiBzdHJpbmc7XG4gIHBvcnRzPzogQ29udGFpbmVyUG9ydFtdO1xuICByZXNvdXJjZXM/OiBSZXNvdXJjZVJlcXVpcmVtZW50cztcbiAgdm9sdW1lTW91bnRzPzogVm9sdW1lTW91bnRbXTtcbiAgbGl2ZW5lc3NQcm9iZT86IFByb2JlO1xuICByZWFkaW5lc3NQcm9iZT86IFByb2JlO1xuICBsaWZlY3ljbGU/OiBQb2RMaWZlQ3ljbGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52VmFyU291cmNlIHtcbiAgY29uZmlnTWFwS2V5UmVmPzogQ29uZmlnTWFwS2V5UmVmO1xuICBzZWNyZXRLZXlSZWY/OiBTZWNyZXRLZXlSZWY7XG4gIGZpZWxkUmVmPzogT2JqZWN0RmllbGRTZWxlY3RvcjtcbiAgcmVzb3VyY2VGaWVsZFJlZj86IFJlc291cmNlRmllbGRTZWxlY3Rvcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZWYXIge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICB2YWx1ZUZyb20/OiBFbnZWYXJTb3VyY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52RnJvbVNvdXJjZSB7XG4gIHByZWZpeD86IHN0cmluZztcbiAgY29uZmlnTWFwUmVmPzogQ29uZmlnTWFwUmVmO1xuICBzZWNyZXRSZWY/OiBTZWNyZXRSZWY7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kTGlmZUN5Y2xlIHtcbiAgcG9zdFN0YXJ0PzogUG9kTGlmZUN5Y2xlSG9vaztcbiAgcHJlU3RvcD86IFBvZExpZmVDeWNsZUhvb2s7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kTGlmZUN5Y2xlSG9vayB7XG4gIGV4ZWM6IHsgY29tbWFuZDogc3RyaW5nW10gfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIVFRQR2V0QWN0aW9uIHtcbiAgaG9zdD86IHN0cmluZztcbiAgaHR0cEhlYWRlcnM/OiBIVFRQSGVhZGVyW107XG4gIHBhdGg6IHN0cmluZztcbiAgcG9ydD86IG51bWJlciB8IHN0cmluZztcbiAgc2NoZW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVwaGVtZXJhbENvbnRhaW5lciB7XG4gIGNvbW1hbmQ6IHN0cmluZ1tdO1xuICBpbWFnZTogc3RyaW5nO1xuICBpbWFnZVB1bGxQb2xpY3k6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBzdGRpbjogYm9vbGVhbjtcbiAgdHR5OiBib29sZWFuO1xuICB0ZXJtaW5hdGlvbk1lc3NhZ2VQb2xpY3k/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCB0eXBlIFN0YXRlZnVsU2V0U3RhdHVzID0gUGFydGlhbDx7XG4gIGNvbGxpc2lvbkNvdW50OiBudW1iZXI7XG4gIG9ic2VydmVkR2VuZXJhdGlvbjogbnVtYmVyO1xuICByZXBsaWNhczogbnVtYmVyO1xuICByZWFkeVJlcGxpY2FzOiBudW1iZXI7XG4gIGN1cnJlbnRSZXBsaWNhczogbnVtYmVyO1xuICBjdXJyZW50UmV2aXNpb246IHN0cmluZztcbiAgdXBkYXRlUmV2aXNpb246IHN0cmluZztcbiAgdXBkYXRlZFJlcGxpY2FzPzogbnVtYmVyO1xufT47XG5cbmV4cG9ydCB0eXBlIERlcGxveW1lbnRTdHJhdGVneVR5cGUgPSAnUm9sbGluZ1VwZGF0ZScgfCAnUmVjcmVhdGUnO1xuZXhwb3J0IHR5cGUgRGFlbW9uU2V0VXBkYXRlU3RyYXRlZ3lUeXBlID0gJ1JvbGxpbmdVcGRhdGUnIHwgJ09uRGVsZXRlJztcbmV4cG9ydCB0eXBlIFN0YXRlZnVsU2V0VXBkYXRlU3RyYXRlZ3lUeXBlID0gJ1JvbGxpbmdVcGRhdGUnIHwgJ09uRGVsZXRlJztcblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3ltZW50U3RyYXRlZ3kge1xuICB0eXBlPzogRGVwbG95bWVudFN0cmF0ZWd5VHlwZTtcbiAgcm9sbGluZ1VwZGF0ZT86IFJvbGxpbmdVcGRhdGVEZXBsb3ltZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvbGxpbmdVcGRhdGVEZXBsb3ltZW50IHtcbiAgbWF4VW5hdmFpbGFibGU/OiBzdHJpbmcgfCBudW1iZXI7XG4gIG1heFN1cmdlPzogc3RyaW5nIHwgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlZnVsU2V0VXBkYXRlU3RyYXRlZ3kge1xuICB0eXBlPzogU3RhdGVmdWxTZXRVcGRhdGVTdHJhdGVneVR5cGU7XG4gIHJvbGxpbmdVcGRhdGU/OiBSb2xsaW5nVXBkYXRlU3RhdGVmdWxTZXRTdHJhdGVneTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb2xsaW5nVXBkYXRlU3RhdGVmdWxTZXRTdHJhdGVneSB7XG4gIHBhcnRpdGlvbj86IHN0cmluZyB8IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmdyZXNzIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IEluZ3Jlc3NTcGVjO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NTcGVjIHtcbiAgaW5ncmVzc0NsYXNzTmFtZT86IHN0cmluZztcbiAgcnVsZXM/OiBJbmdyZXNzUnVsZVtdO1xuICB0bHM/OiBJbmdyZXNzVExTW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5ncmVzc1J1bGUge1xuICBob3N0Pzogc3RyaW5nO1xuICBodHRwOiBIVFRQSW5ncmVzc1J1bGVWYWx1ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIVFRQSW5ncmVzc1J1bGVWYWx1ZSB7XG4gIHBhdGhzOiBIVFRQSW5ncmVzc1BhdGhbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIVFRQSW5ncmVzc1BhdGgge1xuICBwYXRoOiBzdHJpbmc7XG4gIHBhdGhUeXBlOiAnUHJlZml4JyB8ICdFeGFjdCcgfCAnSW1wbGVtZW50YXRpb25TcGVjaWZpYyc7XG4gIGJhY2tlbmQ6IEluZ3Jlc3NCYWNrZW5kO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NCYWNrZW5kIHtcbiAgc2VydmljZU5hbWU/OiBzdHJpbmc7XG4gIHNlcnZpY2VQb3J0PzogbnVtYmVyO1xuICBzZXJ2aWNlPzoge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBwb3J0OiB7XG4gICAgICBudW1iZXI6IG51bWJlcjtcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NUTFMge1xuICBob3N0cz86IHN0cmluZ1tdO1xuICBzZWNyZXROYW1lPzogc3RyaW5nO1xuICBnbG9iYWw/OiBib29sZWFuO1xuICBjZXJ0aWZpY2F0ZT86IENlcnRpZmljYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NTdGF0dXMge1xuICBsb2FkQmFsYW5jZXI/OiBJbmdyZXNzTG9hZEJhbGFuY2VyU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NMb2FkQmFsYW5jZXJTdGF0dXMge1xuICBpbmdyZXNzPzogTG9hZEJhbGFuY2VySW5ncmVzc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvYWRCYWxhbmNlckluZ3Jlc3Mge1xuICBpcDogc3RyaW5nO1xuICBob3N0bmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgVm9sdW1lTW9kZSA9IHtcbiAgRklMRV9TWVNURU06ICdGaWxlc3lzdGVtJyxcbiAgQkxPQ0tfREVWSUNFOiAnQmxvY2snLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVm9sdW1lTW9kZSA9IFZhbHVlT2Y8dHlwZW9mIFZvbHVtZU1vZGU+O1xuXG5leHBvcnQgY29uc3QgVm9sdW1lTW9kZXMgPSBbVm9sdW1lTW9kZS5CTE9DS19ERVZJQ0UsIFZvbHVtZU1vZGUuRklMRV9TWVNURU1dO1xuXG5leHBvcnQgY29uc3QgQWNjZXNzTW9kZSA9IHtcbiAgUldPOiAnUmVhZFdyaXRlT25jZScsXG4gIFJPWDogJ1JlYWRPbmx5TWFueScsXG4gIFJXWDogJ1JlYWRXcml0ZU1hbnknLFxuICBSV09QOiAnUmVhZFdyaXRlT25jZVBvZCcsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBBY2Nlc3NNb2RlID0gVmFsdWVPZjx0eXBlb2YgQWNjZXNzTW9kZT47XG5cbmV4cG9ydCBjb25zdCBBY2Nlc3NNb2RlcyA9IFtBY2Nlc3NNb2RlLlJXTywgQWNjZXNzTW9kZS5ST1gsIEFjY2Vzc01vZGUuUldYXTtcblxuZXhwb3J0IGludGVyZmFjZSBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW0gZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW1TcGVjO1xuICBzdGF0dXM/OiBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW1TdGF0dXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVyc2lzdGVudFZvbHVtZUNsYWltU3RhdHVzIHtcbiAgcGhhc2U6IHN0cmluZztcbiAgY2FwYWNpdHk/OiB7IHN0b3JhZ2U6IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBlcnNpc3RlbnRWb2x1bWVDbGFpbVNwZWMge1xuICAvLyBudWxsIOihqOekuuS9v+eUqOm7mOiupCBzY1xuICAvLyBcIlwiIOihqOekuuS4jeiuvue9ruWtmOWCqOexu1xuICBzdG9yYWdlQ2xhc3NOYW1lPzogc3RyaW5nO1xuICB2b2x1bWVOYW1lPzogc3RyaW5nO1xuICByZXNvdXJjZXM6IHtcbiAgICByZXF1ZXN0czogeyBzdG9yYWdlOiBzdHJpbmcgfTtcbiAgfTtcbiAgZGF0YVNvdXJjZT86IFBlcnNpc3RlbnRWb2x1bWVDbGFpbURhdGFTb3VyY2U7XG4gIHNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgYWNjZXNzTW9kZXM6IEFjY2Vzc01vZGVbXTtcbiAgdm9sdW1lTW9kZT86IFZvbHVtZU1vZGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVyc2lzdGVudFZvbHVtZUNsYWltRGF0YVNvdXJjZSB7XG4gIG5hbWU6IHN0cmluZztcbiAga2luZDogc3RyaW5nO1xuICBhcGlHcm91cDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFQSVJlc291cmNlSXRlbSB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2luZ3VsYXJOYW1lOiBzdHJpbmc7XG4gIG5hbWVzcGFjZWQ6IGJvb2xlYW47XG4gIGtpbmQ6IHN0cmluZztcbiAgdmVyYnM6IEs4c1Jlc291cmNlQWN0aW9uW107XG4gIGdyb3VwVmVyc2lvbj86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFQSVJlc291cmNlTGlzdCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdBUElSZXNvdXJjZUxpc3QnO1xuICBhcGlWZXJzaW9uPzogc3RyaW5nO1xuICBncm91cFZlcnNpb246IHN0cmluZztcbiAgcmVzb3VyY2VzOiBBUElSZXNvdXJjZUl0ZW1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZUF0dHJpYnV0ZXM8VCBleHRlbmRzIEs4c1Jlc291cmNlQWN0aW9uPiB7XG4gIGdyb3VwOiBzdHJpbmc7XG4gIHJlc291cmNlOiBzdHJpbmc7XG4gIHZlcmI6IFQ7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbiAgbmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdWJqZWN0QWNjZXNzUmV2aWV3U3BlYzxUIGV4dGVuZHMgSzhzUmVzb3VyY2VBY3Rpb24+IHtcbiAgcmVzb3VyY2VBdHRyaWJ1dGVzOiBSZXNvdXJjZUF0dHJpYnV0ZXM8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3ViamVjdEFjY2Vzc1Jldmlld1N0YXR1cyB7XG4gIGFsbG93ZWQ6IGJvb2xlYW47XG4gIGRlbmllZD86IGJvb2xlYW47XG4gIGV2YWx1YXRpb25FcnJvcj86IHN0cmluZztcbiAgcmVhc29uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YmplY3RBY2Nlc3NSZXZpZXc8XG4gIFQgZXh0ZW5kcyBLOHNSZXNvdXJjZUFjdGlvbiA9IEs4c1Jlc291cmNlQWN0aW9uLFxuPiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdTdWJqZWN0QWNjZXNzUmV2aWV3JztcbiAgc3BlYzogU3ViamVjdEFjY2Vzc1Jldmlld1NwZWM8VD47XG4gIHN0YXR1czogU3ViamVjdEFjY2Vzc1Jldmlld1N0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWxmUmVzb3VyY2VBdHRyaWJ1dGVzPFQgZXh0ZW5kcyBLOHNSZXNvdXJjZUFjdGlvbj5cbiAgZXh0ZW5kcyBSZXNvdXJjZUF0dHJpYnV0ZXM8VD4ge1xuICBwcm9qZWN0Pzogc3RyaW5nO1xuICBjbHVzdGVyPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGZTdWJqZWN0QWNjZXNzUmV2aWV3U3BlYzxUIGV4dGVuZHMgSzhzUmVzb3VyY2VBY3Rpb24+XG4gIGV4dGVuZHMgU3ViamVjdEFjY2Vzc1Jldmlld1NwZWM8VD4ge1xuICByZXNvdXJjZUF0dHJpYnV0ZXM6IFNlbGZSZXNvdXJjZUF0dHJpYnV0ZXM8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZlN1YmplY3RBY2Nlc3NSZXZpZXc8XG4gIFQgZXh0ZW5kcyBLOHNSZXNvdXJjZUFjdGlvbiA9IEs4c1Jlc291cmNlQWN0aW9uLFxuPiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdTZWxmU3ViamVjdEFjY2Vzc1Jldmlldyc7XG4gIHNwZWM6IFNlbGZTdWJqZWN0QWNjZXNzUmV2aWV3U3BlYzxUPjtcbiAgc3RhdHVzOiBTdWJqZWN0QWNjZXNzUmV2aWV3U3RhdHVzO1xufVxuXG5leHBvcnQgZW51bSBEZXBlbmRlbmN5VHlwZSB7XG4gIEFueSA9ICdhbnknLFxuICBBbGwgPSAnYWxsJyxcbn1cblxuZXhwb3J0IGVudW0gRmVhdHVyZVN0YWdlIHtcbiAgQWxwaGEgPSAnQWxwaGEnLFxuICBCZXRhID0gJ0JldGEnLFxuICBHQSA9ICdHQScsXG4gIEVPRiA9ICdFT0YnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVHYXRlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYzoge1xuICAgIGRlcGVuZGVuY3k6IHtcbiAgICAgIHR5cGU6IERlcGVuZGVuY3lUeXBlO1xuICAgICAgZmVhdHVyZUdhdGVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgZW5hYmxlZDogYm9vbGVhbjtcbiAgICBzdGFnZTogRmVhdHVyZVN0YWdlO1xuICB9O1xuICBzdGF0dXM6IHtcbiAgICBlbmFibGVkOiBib29sZWFuO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVHYXRlRW50ZXJwcmlzZVN1cHBvcnQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0U3BlYztcbiAgc3RhdHVzOiBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0U3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVHYXRlRW50ZXJwcmlzZVN1cHBvcnRTcGVjIHtcbiAgcHJvZHVjdHM6IEFycmF5PHsgbmFtZTogc3RyaW5nIH0+O1xuICB2YWxpZGl0eToge1xuICAgIG5vdEJlZm9yZTogc3RyaW5nO1xuICAgIG5vdEFmdGVyOiBzdHJpbmc7XG4gIH07XG4gIHR5cGU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGxpY2Vuc2VLaW5kOiBzdHJpbmc7XG4gIGJhcmVtZXRhbENsdXN0ZXJDUFVDb3JlTGltaXQ6IG51bWJlcjtcbiAgaW1wb3J0ZWRDbHVzdGVyTm9kZUxpbWl0OiBudW1iZXI7XG4gIGFsbG93UHJvZHVjdFZlcnNpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0U3RhdHVzIHtcbiAgcGhhc2U6IEVudGVycHJpc2VTdXBwb3J0U3RhdHVzVHlwZTtcbiAgcmVhc29uOiBFbnRlcnByaXNlU3VwcG9ydFN0YXR1c1JlYXNvbltdO1xuICBiYXJlbWV0YWxDbHVzdGVyQ1BVQ29yZU51bTogbnVtYmVyO1xuICBpbXBvcnRlZENsdXN0ZXJOb2RlTnVtOiBudW1iZXI7XG4gIGN1cnJlbnRQcm9kdWN0VmVyc2lvbjogc3RyaW5nO1xuICBsaWNlbnNlRXhlbXB0PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGVudW0gRW50ZXJwcmlzZVN1cHBvcnRTdGF0dXNUeXBlIHtcbiAgaW5TZXJ2aWNlID0gJ0luU2VydmljZScsXG4gIG91dE9mU2VydmljZSA9ICdPdXRPZlNlcnZpY2UnLFxuICB3YXJuaW5nID0gJ1dhcm5pbmcnLFxufVxuXG5leHBvcnQgZW51bSBFbnRlcnByaXNlU3VwcG9ydFN0YXR1c1JlYXNvbiB7XG4gIEV4Y2VlZFJlc291cmNlTGltaXQgPSAnRXhjZWVkUmVzb3VyY2VMaW1pdCcsXG4gIEV4Y2VlZE5vZGVMaW1pdCA9ICdFeGNlZWROb2RlTGltaXQnLFxuICBNaXNtYXRjaFByb2R1Y3RWZXJzaW9uID0gJ01pc21hdGNoUHJvZHVjdFZlcnNpb24nLFxuICBNaXNtYXRjaFN1YlByb2R1Y3RzID0gJ01pc21hdGNoU3ViUHJvZHVjdHMnLFxuICBOb3RFeGlzdCA9ICdOb3RFeGlzdCcsXG4gIEV4cGlyZWQgPSAnRXhwaXJlZCcsXG4gIFBlbmRpbmcgPSAnUGVuZGluZycsXG4gIEV4cGlyaW5nU29vbiA9ICdFeHBpcmluZ1Nvb24nLFxufVxuXG5leHBvcnQgZW51bSBTZWN1cml0eVBvbGljeVJ1bGVOYW1lIHtcbiAgcGFzc3dvcmQgPSAnUGFzc3dvcmRQb2xpY3knLFxuICBsb2NrID0gJ1VzZXJMb2NrZWRQb2xpY3knLFxuICBkaXNhYmxlID0gJ1VzZXJEaXNhYmxlZFBvbGljeScsXG4gIG5vdGlmaWNhdGlvbiA9ICdOb3RpZmljYXRpb25Qb2xpY3knLFxuICBhY2Nlc3MgPSAnQWNjZXNzQ29udHJvbFBvbGljeScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlQb2xpY3lSdWxlIHtcbiAgbmFtZTogU2VjdXJpdHlQb2xpY3lSdWxlTmFtZTtcbiAgaXRlbXM6IEFycmF5PHtcbiAgICBlbmFibGU6IGJvb2xlYW47XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgfT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlQb2xpY3lSZXNvdXJjZSBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHJ1bGVzOiBTZWN1cml0eVBvbGljeVJ1bGVbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXMge1xuICBraW5kOiAnU3RhdHVzJztcbiAgYXBpVmVyc2lvbjogc3RyaW5nO1xuICBtZXRhZGF0YToge1xuICAgIGNvbnRpbnVlPzogc3RyaW5nO1xuICB9O1xuICBzdGF0dXM6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICByZWFzb246IHN0cmluZztcbiAgY29kZTogbnVtYmVyO1xuICBkZXRhaWxzPzoge1xuICAgIGdyb3VwPzogc3RyaW5nO1xuICAgIGtpbmQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdWlkOiBzdHJpbmc7XG4gICAgY2F1c2VzOiBBcnJheTx7XG4gICAgICBtZXNzYWdlPzogc3RyaW5nO1xuICAgICAgcmVhc29uPzogc3RyaW5nO1xuICAgICAgZmllbGQ/OiBzdHJpbmc7XG4gICAgfT47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxPYmplY3RSZWZlcmVuY2Uge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTWFwS2V5UmVmIGV4dGVuZHMgTG9jYWxPYmplY3RSZWZlcmVuY2Uge1xuICBrZXk6IHN0cmluZztcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldEtleVJlZiBleHRlbmRzIExvY2FsT2JqZWN0UmVmZXJlbmNlIHtcbiAga2V5OiBzdHJpbmc7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNYXBSZWYgZXh0ZW5kcyBMb2NhbE9iamVjdFJlZmVyZW5jZSB7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWNyZXRSZWYgZXh0ZW5kcyBMb2NhbE9iamVjdFJlZmVyZW5jZSB7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3RGaWVsZFNlbGVjdG9yIHtcbiAgYXBpVmVyc2lvbj86IHN0cmluZztcbiAgZmllbGRQYXRoOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlRmllbGRTZWxlY3RvciB7XG4gIGNvbnRhaW5lck5hbWU/OiBzdHJpbmc7XG4gIGRpdmlzb3I/OiBzdHJpbmc7XG4gIHJlc291cmNlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogV29ya2xvYWQgQVBJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHNwZWM/OiBEZXBsb3ltZW50U3BlYztcbiAgc3RhdHVzPzogRGVwbG95bWVudFN0YXR1cztcbiAgZ2VuZXJhdGlvbj86IG51bWJlcjtcbn1cblxuLy8gRGVwbG95bWVudFNwZWMgaXMgdGhlIHNwZWNpZmljYXRpb24gb2YgdGhlIGRlc2lyZWQgYmVoYXZpb3Igb2YgdGhlIERlcGxveW1lbnQuXG5leHBvcnQgaW50ZXJmYWNlIERlcGxveW1lbnRTcGVjIHtcbiAgcmVwbGljYXM/OiBudW1iZXI7XG4gIHNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgdGVtcGxhdGU/OiBQb2RUZW1wbGF0ZVNwZWM7XG4gIHN0cmF0ZWd5PzogRGVwbG95bWVudFN0cmF0ZWd5O1xuICBtaW5SZWFkeVNlY29uZHM/OiBudW1iZXI7XG4gIHJldmlzaW9uSGlzdG9yeUxpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvZCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBQb2RTcGVjO1xuICBzdGF0dXM/OiBQb2RTdGF0dXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kU3RhdHVzIHtcbiAgY29uZGl0aW9ucz86IENvbmRpdGlvbltdO1xuICBjb250YWluZXJTdGF0dXNlcz86IENvbnRhaW5lclN0YXR1c1tdO1xuICBob3N0SVA/OiBzdHJpbmc7XG4gIGluaXRDb250YWluZXJTdGF0dXNlcz86IENvbnRhaW5lclN0YXR1c1tdO1xuICBlcGhlbWVyYWxDb250YWluZXJTdGF0dXNlcz86IENvbnRhaW5lclN0YXR1c1tdO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBub21pbmF0ZWROb2RlTmFtZT86IHN0cmluZztcbiAgcGhhc2U/OiBzdHJpbmc7XG4gIHBvZElQPzogc3RyaW5nO1xuICBwb2RJUHM/OiBBcnJheTx7IGlwOiBzdHJpbmcgfT47XG4gIHFvc0NsYXNzPzogc3RyaW5nO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIHN0YXJ0VGltZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIb3N0QWxpYXNlcyB7XG4gIGlwOiBzdHJpbmc7XG4gIGhvc3RuYW1lczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyU3RhdHVzIHtcbiAgY29udGFpbmVySUQ/OiBzdHJpbmc7XG4gIGltYWdlPzogc3RyaW5nO1xuICBpbWFnZUlEPzogc3RyaW5nO1xuICBsYXN0U3RhdGU/OiBDb250YWluZXJTdGF0ZTtcbiAgbmFtZT86IHN0cmluZztcbiAgcmVhZHk/OiBib29sZWFuO1xuICByZXN0YXJ0Q291bnQ/OiBudW1iZXI7XG4gIHN0YXRlPzogQ29udGFpbmVyU3RhdGU7XG4gIHN0YXJ0ZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lclN0YXRlIHtcbiAgcnVubmluZz86IENvbnRhaW5lclN0YXRlUnVubmluZztcbiAgdGVybWluYXRlZD86IENvbnRhaW5lclN0YXRlVGVybWluYXRlZDtcbiAgd2FpdGluZz86IENvbnRhaW5lclN0YXRlV2FpdGluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250YWluZXJTdGF0ZVJ1bm5pbmcge1xuICBzdGFydGVkQXQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyU3RhdGVUZXJtaW5hdGVkIHtcbiAgY29udGFpbmVySUQ/OiBzdHJpbmc7XG4gIGV4aXRDb2RlPzogbnVtYmVyO1xuICBmaW5pc2hlZEF0Pzogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIHNpZ25hbD86IG51bWJlcjtcbiAgc3RhcnRlZEF0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lclN0YXRlV2FpdGluZyB7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHJlYXNvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3ltZW50U3RhdHVzIHtcbiAgYXZhaWxhYmxlUmVwbGljYXM/OiBudW1iZXI7XG4gIGNvbGxpc2lvbkNvdW50PzogbnVtYmVyO1xuICBvYnNlcnZlZEdlbmVyYXRpb24/OiBudW1iZXI7XG4gIHJlYWR5UmVwbGljYXM/OiBudW1iZXI7XG4gIHJlcGxpY2FzPzogbnVtYmVyO1xuICB1bmF2YWlsYWJsZVJlcGxpY2FzPzogbnVtYmVyO1xuICB1cGRhdGVkUmVwbGljYXM/OiBudW1iZXI7XG4gIGNvbmRpdGlvbnM/OiBDb25kaXRpb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1aXJlZEFmZmluaXR5IHtcbiAgdG9wb2xvZ3lLZXk6IHN0cmluZztcbiAgbGFiZWxTZWxlY3RvcjogTGFiZWxTZWxlY3Rvcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVmZXJyZWRBZmZpbml0eSB7XG4gIHdlaWdodDogbnVtYmVyO1xuICBwb2RBZmZpbml0eVRlcm06IHtcbiAgICBsYWJlbFNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgICB0b3BvbG9neUtleTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvZEFmZmluaXR5IHtcbiAgcmVxdWlyZWREdXJpbmdTY2hlZHVsaW5nSWdub3JlZER1cmluZ0V4ZWN1dGlvbj86IFJlcXVpcmVkQWZmaW5pdHlbXTtcbiAgcHJlZmVycmVkRHVyaW5nU2NoZWR1bGluZ0lnbm9yZWREdXJpbmdFeGVjdXRpb24/OiBQcmVmZXJyZWRBZmZpbml0eVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvZFNwZWNBZmZpbml0eSB7XG4gIHBvZEFmZmluaXR5PzogQWZmaW5pdHk7XG4gIHBvZEFudGlBZmZpbml0eT86IEFmZmluaXR5O1xuICBub2RlQWZmaW5pdHk/OiBBZmZpbml0eTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZmZpbml0eSB7XG4gIHJlcXVpcmVkRHVyaW5nU2NoZWR1bGluZ0lnbm9yZWREdXJpbmdFeGVjdXRpb24/OlxuICAgIHwgUG9kQWZmaW5pdHlUZXJtW11cbiAgICB8IE5vZGVBZmZpbml0eVRlcm07XG4gIHByZWZlcnJlZER1cmluZ1NjaGVkdWxpbmdJZ25vcmVkRHVyaW5nRXhlY3V0aW9uPzogV2VpZ2h0ZWRQb2RBZmZpbml0eVRlcm1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXZWlnaHRlZE5vZGVBZmZpbml0eVRlcm0ge1xuICB3ZWlnaHQ6IG51bWJlcjtcbiAgcHJlZmVyZW5jZTogTm9kZVNlbGVjdG9yVGVybTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb2RlQWZmaW5pdHkge1xuICByZXF1aXJlZER1cmluZ1NjaGVkdWxpbmdJZ25vcmVkRHVyaW5nRXhlY3V0aW9uPzogTm9kZUFmZmluaXR5VGVybTtcbiAgcHJlZmVycmVkRHVyaW5nU2NoZWR1bGluZ0lnbm9yZWREdXJpbmdFeGVjdXRpb24/OiBXZWlnaHRlZE5vZGVBZmZpbml0eVRlcm1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXZWlnaHRlZFBvZEFmZmluaXR5VGVybSB7XG4gIHBvZEFmZmluaXR5VGVybTogUG9kQWZmaW5pdHlUZXJtO1xuICB3ZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2RBZmZpbml0eVRlcm0ge1xuICBsYWJlbFNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgdG9wb2xvZ3lLZXk6IHN0cmluZztcbiAgbmFtZXNwYWNlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVBZmZpbml0eVRlcm0ge1xuICBub2RlU2VsZWN0b3JUZXJtczogTm9kZVNlbGVjdG9yVGVybVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVTZWxlY3RvclRlcm0ge1xuICBtYXRjaEV4cHJlc3Npb25zOiBMYWJlbFNlbGVjdG9yUmVxdWlyZW1lbnRbXTtcbn1cblxuZXhwb3J0IGVudW0gVm9sdW1lVHlwZUVudW0ge1xuICBwZXJzaXN0ZW50Vm9sdW1lQ2xhaW0gPSAncGVyc2lzdGVudFZvbHVtZUNsYWltJyxcbiAgY29uZmlnTWFwID0gJ2NvbmZpZ01hcCcsXG4gIHNlY3JldCA9ICdzZWNyZXQnLFxuICBlcGhlbWVyYWwgPSAnZXBoZW1lcmFsJyxcbiAgZW1wdHlEaXIgPSAnZW1wdHlEaXInLFxuICBob3N0UGF0aCA9ICdob3N0UGF0aCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVm9sdW1lIHtcbiAgbmFtZTogc3RyaW5nO1xuICBbVm9sdW1lVHlwZUVudW0uZW1wdHlEaXJdPzogRW1wdHlEaXJWb2x1bWVTb3VyY2U7XG4gIFtWb2x1bWVUeXBlRW51bS5jb25maWdNYXBdPzogQ29uZmlnTWFwVm9sdW1lU291cmNlO1xuICBbVm9sdW1lVHlwZUVudW0uc2VjcmV0XT86IFNlY3JldFZvbHVtZVNvdXJjZTtcbiAgW1ZvbHVtZVR5cGVFbnVtLnBlcnNpc3RlbnRWb2x1bWVDbGFpbV0/OiBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW1Wb2x1bWVTb3VyY2U7XG4gIFtWb2x1bWVUeXBlRW51bS5ob3N0UGF0aF0/OiBIb3N0UGF0aFZvbHVtZVNvdXJjZTtcbiAgW1ZvbHVtZVR5cGVFbnVtLmVwaGVtZXJhbF0/OiBFcGhlbWVyYWxWb2x1bWVTb3VyY2U7XG4gIC8vIG90aGVyIGlhYXMgc3RvcmFnZSBkZWZpbml0aW9ucyBub3QgaW5jbHVkZWRcbiAgaXNBcHBSZXNvdXJjZT86IGJvb2xlYW47IC8vIOaYr+WQpk9BTeW6lOeUqOi1hOa6kFxuICBtb3VudFBhdGg/OiBzdHJpbmc7IC8vIGZvciBvYW0gY29tcG9uZW50IHdlYnNlcnZpY2UgY29tcG9uZW50LiDmnKrmnaXlj6/og73ljZXni6zlrprkuYlcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDc2lWb2x1bWVTb3VyY2Uge1xuICBkcml2ZXI6ICdvYmplY3RzdG9yYWdlLms4cy5pbyc7XG4gIHZvbHVtZUF0dHJpYnV0ZXM6IHtcbiAgICAnYmFyLW5hbWUnOiBzdHJpbmc7XG4gICAgJ2Jhci1uYW1lc3BhY2UnOiBzdHJpbmc7XG4gICAgYnVja2V0UmVxdWVzdE5hbWU6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLZXlUb1BhdGgge1xuICBrZXk/OiBzdHJpbmc7XG4gIG1vZGU/OiBudW1iZXI7XG4gIHBhdGg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW1wdHlEaXJWb2x1bWVTb3VyY2Uge1xuICBtZWRpdW0/OiBzdHJpbmc7XG4gIHNpemVMaW1pdD86IHN0cmluZzsgLy8gZWc6IDE1MDBtIHJlZmVycyB0bzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL2dlbmVyYXRlZC9rdWJlcm5ldGVzLWFwaS92MS4xNS8jcXVhbnRpdHktcmVzb3VyY2UtY29yZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ01hcFZvbHVtZVNvdXJjZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xuICBpdGVtcz86IEtleVRvUGF0aFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldFZvbHVtZVNvdXJjZSB7XG4gIHNlY3JldE5hbWU6IHN0cmluZztcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xuICBpdGVtcz86IEtleVRvUGF0aFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhvc3RQYXRoVm9sdW1lU291cmNlIHtcbiAgdHlwZT86IHN0cmluZztcbiAgcGF0aDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBlcnNpc3RlbnRWb2x1bWVDbGFpbVZvbHVtZVNvdXJjZSB7XG4gIGNsYWltTmFtZTogc3RyaW5nO1xuICByZWFkT25seT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXBoZW1lcmFsVm9sdW1lU291cmNlIHtcbiAgdm9sdW1lQ2xhaW1UZW1wbGF0ZTogUGVyc2lzdGVudFZvbHVtZUNsYWltO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2JlIHtcbiAgZXhlYz86IEV4ZWNBY3Rpb247XG4gIGZhaWx1cmVUaHJlc2hvbGQ/OiBudW1iZXI7XG4gIGh0dHBHZXQ/OiBIVFRQR2V0QWN0aW9uO1xuICBpbml0aWFsRGVsYXlTZWNvbmRzPzogbnVtYmVyO1xuICBwZXJpb2RTZWNvbmRzPzogbnVtYmVyO1xuICBzdWNjZXNzVGhyZXNob2xkPzogbnVtYmVyO1xuICB0Y3BTb2NrZXQ/OiBUQ1BTb2NrZXRBY3Rpb247XG4gIHRpbWVvdXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4ZWNBY3Rpb24ge1xuICBjb21tYW5kPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSFRUUEhlYWRlciB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRDUFNvY2tldEFjdGlvbiB7XG4gIGhvc3Q/OiBzdHJpbmc7XG4gIHBvcnQ/OiBudW1iZXIgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVm9sdW1lTW91bnQge1xuICBuYW1lOiBzdHJpbmc7XG4gIG1vdW50UGF0aD86IHN0cmluZztcbiAgcmVhZE9ubHk/OiBib29sZWFuO1xuICBzdWJQYXRoPzogc3RyaW5nO1xuICBtb3VudFByb3BhZ2F0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlUmVxdWlyZW1lbnRzIHtcbiAgbGltaXRzPzogU3RyaW5nTWFwO1xuICByZXF1ZXN0cz86IFN0cmluZ01hcDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250YWluZXJQb3J0IHtcbiAgbmFtZT86IHN0cmluZztcbiAgaG9zdFBvcnQ/OiBudW1iZXI7XG4gIGNvbnRhaW5lclBvcnQ/OiBudW1iZXI7XG4gIHNlcnZpY2VQb3J0PzogbnVtYmVyO1xuICBwcm90b2NvbD86ICdUQ1AnIHwgJ1VEUCc7XG4gIGhvc3RJUD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDZXJ0aWZpY2F0ZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIG5vdEJlZm9yZTogc3RyaW5nO1xuICBub3RBZnRlcjogc3RyaW5nO1xuICBkbnNOYW1lczogc3RyaW5nW107XG4gIHZhbGlkOiBib29sZWFuO1xuICByZWFzb25Db2RlPzpcbiAgICB8IDEgLy8g6K+B5Lmm5qC85byP5pyJ6K+vXG4gICAgfCAyIC8vIOivgeS5puS4jeWcqOacieaViOacn+WGhVxuICAgIHwgMzsgLy8g6K+B5Lmm5L+h5oGv5pyq55+lXG59XG5cbmV4cG9ydCBjb25zdCBBbGJQcm90b2NvbE1hcHBlciA9IHtcbiAgaHR0cDogJ0hUVFAnLFxuICBodHRwczogJ0hUVFBTJyxcbiAgZ3JwYzogJ2dSUEMnLFxuICB0Y3A6ICdUQ1AnLFxuICB1ZHA6ICdVRFAnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgQWxiUHJvdG9jb2wgPSBrZXlvZiB0eXBlb2YgQWxiUHJvdG9jb2xNYXBwZXI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJvbnRlbmRTcGVjIHtcbiAgcG9ydD86IG51bWJlciB8ICcnO1xuICBwcm90b2NvbD86IEFsYlByb3RvY29sO1xuICBzb3VyY2U/OiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIG5hbWVzcGFjZTogc3RyaW5nO1xuICAgIHR5cGU6IHN0cmluZztcbiAgfTtcbiAgYmFja2VuZFByb3RvY29sPzogJ0hUVFAnIHwgJ0hUVFBTJyB8ICdnUlBDJztcbiAgc2VydmljZUdyb3VwPzogU2VydmljZUdyb3VwO1xuICBjZXJ0aWZpY2F0ZV9uYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVTZXJ2aWNlIHtcbiAgbmFtZTogc3RyaW5nO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgcG9ydDogbnVtYmVyO1xuICB3ZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlR3JvdXAge1xuICBzZXJ2aWNlczogUnVsZVNlcnZpY2VbXTtcbiAgc2Vzc2lvbl9hZmZpbml0eV9wb2xpY3k/OiBzdHJpbmc7XG4gIHNlc3Npb25fYWZmaW5pdHlfYXR0cmlidXRlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvbGxpbmdVcGRhdGVEYWVtb25TZXQge1xuICBtYXhVbmF2YWlsYWJsZT86IHN0cmluZyB8IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYWVtb25TZXRVcGRhdGVTdHJhdGVneSB7XG4gIHR5cGU/OiBEYWVtb25TZXRVcGRhdGVTdHJhdGVneVR5cGU7XG4gIHJvbGxpbmdVcGRhdGU/OiBSb2xsaW5nVXBkYXRlRGFlbW9uU2V0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhZW1vblNldCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBEYWVtb25TZXRTcGVjO1xuICBzdGF0dXM/OiBEYWVtb25TZXRTdGF0dXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGFlbW9uU2V0U3BlYyB7XG4gIHNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgdGVtcGxhdGU/OiBQb2RUZW1wbGF0ZVNwZWM7XG4gIHVwZGF0ZVN0cmF0ZWd5PzogRGFlbW9uU2V0VXBkYXRlU3RyYXRlZ3k7XG4gIG1pblJlYWR5U2Vjb25kcz86IG51bWJlcjtcbiAgcmV2aXNpb25IaXN0b3J5TGltaXQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIERhZW1vblNldFN0YXR1cyA9IFBhcnRpYWw8e1xuICBjdXJyZW50TnVtYmVyU2NoZWR1bGVkOiBudW1iZXI7XG4gIG51bWJlck1pc3NjaGVkdWxlZDogbnVtYmVyO1xuICBkZXNpcmVkTnVtYmVyU2NoZWR1bGVkOiBudW1iZXI7XG4gIG51bWJlclJlYWR5OiBudW1iZXI7XG4gIG9ic2VydmVkR2VuZXJhdGlvbjogbnVtYmVyO1xuICB1cGRhdGVkTnVtYmVyU2NoZWR1bGVkOiBudW1iZXI7XG4gIG51bWJlclVuYXZhaWxhYmxlOiBudW1iZXI7XG4gIG51bWJlckF2YWlsYWJsZTogbnVtYmVyO1xufT47XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTWFwPFQgPSBTdHJpbmdNYXA+IGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgZGF0YT86IFQ7XG4gIGJpbmFyeURhdGE/OiBTdHJpbmdNYXA7XG59XG5cbi8vIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS9nZW5lcmF0ZWQva3ViZXJuZXRlcy1hcGkvdjEuMTEvI2Nyb25qb2JzcGVjLXYxYmV0YTEtYmF0Y2hcbmV4cG9ydCBpbnRlcmZhY2UgQ3JvbkpvYlNwZWMge1xuICBjb25jdXJyZW5jeVBvbGljeT86IHN0cmluZztcbiAgZmFpbGVkSm9ic0hpc3RvcnlMaW1pdD86IG51bWJlciB8ICcnO1xuICBzY2hlZHVsZT86IHN0cmluZztcbiAgc3RhcnRpbmdEZWFkbGluZVNlY29uZHM/OiBudW1iZXIgfCAnJztcbiAgc3VjY2Vzc2Z1bEpvYnNIaXN0b3J5TGltaXQ/OiBudW1iZXIgfCAnJztcbiAgc3VzcGVuZD86IGJvb2xlYW47XG4gIHRpbWVab25lPzogc3RyaW5nO1xuICBqb2JUZW1wbGF0ZT86IEpvYlRlbXBsYXRlU3BlYztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKb2IgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogSm9iU3BlYztcbiAgc3RhdHVzPzogSm9iU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEpvYlNwZWMge1xuICBhY3RpdmVEZWFkbGluZVNlY29uZHM/OiBudW1iZXIgfCAnJztcbiAgYmFja29mZkxpbWl0PzogbnVtYmVyIHwgJyc7XG4gIGNvbXBsZXRpb25zPzogbnVtYmVyIHwgJyc7XG4gIG1hbnVhbFNlbGVjdG9yPzogYm9vbGVhbjtcbiAgcGFyYWxsZWxpc20/OiBudW1iZXIgfCAnJztcbiAgc2VsZWN0b3I/OiBMYWJlbFNlbGVjdG9yO1xuICB0ZW1wbGF0ZT86IFBvZFRlbXBsYXRlU3BlYztcbiAgc3RhcnRpbmdEZWFkbGluZVNlY29uZHM/OiBudW1iZXIgfCAnJztcbn1cblxuLy8gaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL2dlbmVyYXRlZC9rdWJlcm5ldGVzLWFwaS92MS4xMS8jam9idGVtcGxhdGVzcGVjLXYxYmV0YTEtYmF0Y2hcbmV4cG9ydCBpbnRlcmZhY2UgSm9iVGVtcGxhdGVTcGVjIHtcbiAgbWV0YWRhdGE/OiBPYmplY3RNZXRhO1xuICBzcGVjPzogSm9iU3BlYztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKb2JTdGF0dXMge1xuICBhY3RpdmU6IG51bWJlciB8ICcnO1xuICBjb21wbGV0aW9uVGltZTogc3RyaW5nO1xuICBjb25kaXRpb25zOiBDb25kaXRpb25bXTtcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIHN1Y2NlZWRlZDogbnVtYmVyO1xuICBmYWlsZWQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcm9uSm9iU3RhdHVzIHtcbiAgYWN0aXZlPzogT2JqZWN0UmVmZXJlbmNlW107XG4gIGxhc3RTY2hlZHVsZVRpbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcm9uSm9iIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IENyb25Kb2JTcGVjO1xuICBzdGF0dXM/OiBDcm9uSm9iU3RhdHVzO1xufVxuXG5leHBvcnQgdHlwZSBOb2RlU3RhdHVzUmVhc29uID1cbiAgfCAnS3ViZWxldEhhc1N1ZmZpY2llbnREaXNrJ1xuICB8ICdLdWJlbGV0SGFzU3VmZmljaWVudE1lbW9yeSdcbiAgfCAnS3ViZWxldEhhc05vRGlza1ByZXNzdXJlJ1xuICB8ICdLdWJlbGV0UmVhZHknO1xuXG5leHBvcnQgdHlwZSBOb2RlU3RhdHVzVHlwZSA9XG4gIHwgJ091dE9mRGlzaydcbiAgfCAnTWVtb3J5UHJlc3N1cmUnXG4gIHwgJ0Rpc2tQcmVzc3VyZSdcbiAgfCAnUmVhZHknO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVUYWludCB7XG4gIGtleTogc3RyaW5nO1xuICB0aW1lQWRkZWQ/OiBzdHJpbmc7XG4gIGVmZmVjdDogVGFpbnRFZmZlY3Q7XG4gIHZhbHVlPzogc3RyaW5nO1xuICB1bnNjaGVkdWxhYmxlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb2RlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IHtcbiAgICBwcm92aWRlcklEPzogc3RyaW5nO1xuICAgIHRhaW50cz86IE5vZGVUYWludFtdO1xuICAgIGNvbmZpZ1NvdXJjZT86IHN0cmluZztcbiAgICB1bnNjaGVkdWxhYmxlPzogYm9vbGVhbjtcbiAgICBwb2RDSURSPzogc3RyaW5nO1xuICAgIHBvZENJRFJzPzogc3RyaW5nW107XG4gICAgZXh0ZXJuYWxJRD86IHN0cmluZztcbiAgICBpcD86IHN0cmluZztcbiAgfTtcbiAgc3RhdHVzPzogTm9kZVN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb2RlU3RhdHVzIHtcbiAgdm9sdW1lc0F0dGFjaGVkOiBib29sZWFuO1xuICBkYWVtb25FbmRwb2ludHM6IHtcbiAgICBrdWJlbGV0RW5kcG9pbnQ6IHtcbiAgICAgIHBvcnQ6IG51bWJlcjtcbiAgICB9O1xuICB9O1xuICBjYXBhY2l0eTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgYWRkcmVzc2VzOiBBcnJheTx7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIGFkZHJlc3M6IHN0cmluZztcbiAgfT47XG4gIGFsbG9jYXRhYmxlOiB7XG4gICAgJ2FscGhhLmt1YmVybmV0ZXMuaW8vbnZpZGlhLWdwdSc6IHN0cmluZztcbiAgICAndGVuY2VudC5jb20vdmN1ZGEtY29yZSc6IHN0cmluZztcbiAgICAndGVuY2VudC5jb20vdmN1ZGEtbWVtb3J5Jzogc3RyaW5nO1xuICAgIHBvZHM6IHN0cmluZztcbiAgICBjcHU6IHN0cmluZztcbiAgICBtZW1vcnk6IHN0cmluZztcbiAgfTtcbiAgaW1hZ2VzOiBBcnJheTx7XG4gICAgc2l6ZUJ5dGVzOiBudW1iZXI7XG4gICAgbmFtZXM6IHN0cmluZ1tdO1xuICB9PjtcbiAgbm9kZUluZm86IHtcbiAgICBrdWJlUHJveHlWZXJzaW9uOiBzdHJpbmc7XG4gICAgb3BlcmF0aW5nU3lzdGVtOiBzdHJpbmc7XG4gICAga2VybmVsVmVyc2lvbjogc3RyaW5nO1xuICAgIHN5c3RlbVVVSUQ6IHN0cmluZztcbiAgICBjb250YWluZXJSdW50aW1lVmVyc2lvbjogc3RyaW5nO1xuICAgIG9zSW1hZ2U6IHN0cmluZztcbiAgICBhcmNoaXRlY3R1cmU6IHN0cmluZztcbiAgICBib290SUQ6IHN0cmluZztcbiAgICBtYWNoaW5lSUQ6IHN0cmluZztcbiAgICBrdWJlbGV0VmVyc2lvbjogc3RyaW5nO1xuICB9O1xuICB2b2x1bWVzSW5Vc2U6IGJvb2xlYW47XG4gIHBoYXNlOiBzdHJpbmc7XG4gIGNvbmRpdGlvbnM6IENvbmRpdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2UgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBraW5kOiAnU2VydmljZSc7XG4gIHNwZWM/OiBTZXJ2aWNlU3BlYztcbiAgc3RhdHVzPzoge1xuICAgIGxvYWRCYWxhbmNlcj86IHtcbiAgICAgIGluZ3Jlc3M/OiBBcnJheTx7XG4gICAgICAgIGhvc3RuYW1lPzogc3RyaW5nO1xuICAgICAgICBpcD86IHN0cmluZztcbiAgICAgIH0+O1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBTRVJWSUNFX1RZUEVTID0gW1xuICAnQ2x1c3RlcklQJyxcbiAgJ05vZGVQb3J0JyxcbiAgJ0xvYWRCYWxhbmNlcicsXG4gICdFeHRlcm5hbE5hbWUnLFxuXSBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBTRVJWSUNFX1NFU1NJT05fQUZGSU5JVElFUyA9IFsnTm9uZScsICdDbGllbnRJUCddIGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBTZXJ2aWNlVHlwZSA9ICh0eXBlb2YgU0VSVklDRV9UWVBFUylbbnVtYmVyXTtcblxuZXhwb3J0IHR5cGUgU2VydmljZVNlc3Npb25BZmZpbml0eSA9XG4gICh0eXBlb2YgU0VSVklDRV9TRVNTSU9OX0FGRklOSVRJRVMpW251bWJlcl07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZVNwZWMge1xuICBjbHVzdGVySVA/OiBzdHJpbmc7XG4gIGNsdXN0ZXJJUHM/OiBzdHJpbmdbXTtcbiAgZXh0ZXJuYWxJUHM/OiBzdHJpbmdbXTtcbiAgZXh0ZXJuYWxOYW1lPzogc3RyaW5nO1xuICBpcEZhbWlsaWVzPzogWydJUHY0J10gfCBbJ0lQdjYnXSB8IFsnSVB2NCcsICdJUHY2J10gfCBbJ0lQdjYnLCAnSVB2NCddO1xuICBpcEZhbWlseVBvbGljeT86ICdTaW5nbGVTdGFjaycgfCAnUHJlZmVyRHVhbFN0YWNrJyB8ICdSZXF1aXJlRHVhbFN0YWNrJztcbiAgcG9ydHM/OiBTZXJ2aWNlUG9ydFtdO1xuICBzZWxlY3Rvcj86IFN0cmluZ01hcDtcbiAgdHlwZT86IFNlcnZpY2VUeXBlO1xuICBzZXNzaW9uQWZmaW5pdHk/OiBTZXJ2aWNlU2Vzc2lvbkFmZmluaXR5O1xufVxuXG5leHBvcnQgY29uc3QgU0VSVklDRV9QT1JUX0JBU0VfUFJPVE9DT0xTID0gWydUQ1AnLCAnVURQJ10gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBTZXJ2aWNlUG9ydEJhc2VQcm90b2NvbCA9XG4gICh0eXBlb2YgU0VSVklDRV9QT1JUX0JBU0VfUFJPVE9DT0xTKVtudW1iZXJdO1xuXG5leHBvcnQgY29uc3QgU0VSVklDRV9QT1JUX1BST1RPQ09MUyA9IFtcbiAgJ1RDUCcsXG4gICdVRFAnLFxuICAnSFRUUCcsXG4gICdIVFRQUycsXG4gICdIVFRQMicsXG4gICdnUlBDJyxcbl0gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBTZXJ2aWNlUG9ydFByb3RvY29sID0gKHR5cGVvZiBTRVJWSUNFX1BPUlRfUFJPVE9DT0xTKVtudW1iZXJdO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VQb3J0IHtcbiAgbmFtZT86IHN0cmluZztcbiAgbm9kZVBvcnQ/OiBudW1iZXI7XG4gIHBvcnQ/OiBudW1iZXI7XG4gIHByb3RvY29sPzogU2VydmljZVBvcnRCYXNlUHJvdG9jb2w7XG4gIGFwcFByb3RvY29sPzogTG93ZXJjYXNlPFNlcnZpY2VQb3J0UHJvdG9jb2w+O1xuICB0YXJnZXRQb3J0PzogbnVtYmVyIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlRGVmaW5pdGlvblZlcnNpb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNlcnZlZDogYm9vbGVhbjtcbiAgc3RvcmFnZTogYm9vbGVhbjtcbiAgc2NoZW1hPzoge1xuICAgIG9wZW5BUElWM1NjaGVtYTogT3BlbkFQSVYzU2NoZW1hT2JqZWN0O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlRGVmaW5pdGlvbiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdDdXN0b21SZXNvdXJjZURlZmluaXRpb24nO1xuICBzcGVjOiB7XG4gICAgZ3JvdXA6IHN0cmluZztcbiAgICB2ZXJzaW9uOiBzdHJpbmc7XG4gICAgbmFtZXM6IHtcbiAgICAgIHBsdXJhbDogc3RyaW5nO1xuICAgICAgc2luZ3VsYXI6IHN0cmluZztcbiAgICAgIGtpbmQ6IHN0cmluZztcbiAgICAgIGxpc3RLaW5kOiBzdHJpbmc7XG4gICAgfTtcbiAgICBzY29wZTogc3RyaW5nO1xuICAgIHZhbGlkYXRpb246IHtcbiAgICAgIG9wZW5BUElWM1NjaGVtYTogT3BlbkFQSVYzU2NoZW1hT2JqZWN0O1xuICAgIH07XG4gICAgdmVyc2lvbnM6IEN1c3RvbVJlc291cmNlRGVmaW5pdGlvblZlcnNpb25bXTtcbiAgICBwcmVzZXJ2ZVVua25vd25GaWVsZHM6IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZVNwYWNlUmVzb3VyY2VSYXRpbyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM6IHtcbiAgICBjcHU6IG51bWJlcjtcbiAgICBtZW1vcnk6IG51bWJlcjtcbiAgfTtcbiAgc3RhdHVzOiB7XG4gICAgY2x1c3RlckNQVTogbnVtYmVyO1xuICAgIGNsdXN0ZXJNZW1vcnk6IG51bWJlcjtcbiAgfTtcbn1cblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2t1YmVybmV0ZXMva3ViZXJuZXRlcy9ibG9iLzVhOTk5MzBhYjU3YjJjNzgzNzk2MGIyMWQyYzkyZTk1OGRiOGMzNzcvcGtnL2FwaXMvY29yZS90eXBlcy5nbyNMNTU3NVxuZXhwb3J0IGludGVyZmFjZSBLOHNFdmVudFNlcmllcyB7XG4gIGNvdW50OiBudW1iZXI7XG4gIGxhc3RPYnNlcnZlZFRpbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLOHNFdmVudFNvdXJjZSB7XG4gIGNvbXBvbmVudD86IHN0cmluZztcbiAgaG9zdD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLOHNFdmVudCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGludm9sdmVkT2JqZWN0PzogT2JqZWN0UmVmZXJlbmNlO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHNvdXJjZT86IEs4c0V2ZW50U291cmNlO1xuICBmaXJzdFRpbWVzdGFtcD86IHN0cmluZztcbiAgbGFzdFRpbWVzdGFtcD86IHN0cmluZztcbiAgY291bnQ/OiBudW1iZXI7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGV2ZW50VGltZT86IHN0cmluZztcbiAgc2VyaWVzPzogSzhzRXZlbnRTZXJpZXM7XG4gIGFjdGlvbj86IHN0cmluZztcbiAgcmVsYXRlZD86IE9iamVjdFJlZmVyZW5jZTtcbiAgcmVwb3J0aW5nQ29udHJvbGxlcj86IHN0cmluZztcbiAgcmVwb3J0aW5nSW5zdGFuY2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VQYXRjaCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiB7XG4gICAganNvblBhdGNoOiBBcnJheTx7XG4gICAgICBvcDogc3RyaW5nO1xuICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgdmFsdWU6IHN0cmluZztcbiAgICB9PjtcbiAgICB0YXJnZXQ/OiB7XG4gICAgICBhcGlWZXJzaW9uOiBzdHJpbmc7XG4gICAgICBraW5kOiBzdHJpbmc7XG4gICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICB9O1xuICAgIHJlbGVhc2U6IHN0cmluZztcbiAgfTtcbn1cbiJdfQ==
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2NvcmUvdHlwZXMvazhzL3Jhdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3RUFBd0U7QUFDeEUsK0VBQStFO0FBQy9FLHFFQUFxRTtBQThDckUsTUFBTSxDQUFOLElBQVksaUJBWVg7QUFaRCxXQUFZLGlCQUFpQjtJQUMzQixnQ0FBVyxDQUFBO0lBQ1gsa0NBQWEsQ0FBQTtJQUNiLG9DQUFlLENBQUE7SUFDZixzQ0FBaUIsQ0FBQTtJQUNqQixzQ0FBaUIsQ0FBQTtJQUNqQixvQ0FBZSxDQUFBO0lBQ2Ysc0NBQWlCLENBQUE7SUFDakIsMkRBQXNDLENBQUE7SUFDdEMsb0NBQWUsQ0FBQTtJQUNmLDBDQUFxQixDQUFBO0lBQ3JCLDhCQUFTLENBQUE7QUFDWCxDQUFDLEVBWlcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQVk1QjtBQUVELE1BQU0sQ0FBTixJQUFZLFVBY1g7QUFkRCxXQUFZLFVBQVU7SUFDcEIsK0JBQWlCLENBQUE7SUFDakIsdUNBQXlCLENBQUE7SUFDekIscURBQXVDLENBQUE7SUFDdkMsZ0RBQWtDLENBQUE7SUFDbEMsb0RBQXNDLENBQUE7SUFDdEMsaUVBQW1ELENBQUE7SUFDbkQsaURBQW1DLENBQUE7SUFDbkMsaUVBQW1ELENBQUE7SUFDbkQsNENBQThCLENBQUE7SUFDOUIsOENBQWdDLENBQUE7SUFDaEMsc0RBQXdDLENBQUE7SUFDeEMsdURBQXlDLENBQUE7SUFDekMsaURBQW1DLENBQUE7QUFDckMsQ0FBQyxFQWRXLFVBQVUsS0FBVixVQUFVLFFBY3JCO0FBcURELE1BQU0sQ0FBTixJQUFZLGtCQUdYO0FBSEQsV0FBWSxrQkFBa0I7SUFDNUIsdUNBQWlCLENBQUE7SUFDakIscUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUc3QjtBQUVELE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDckIsd0NBQXlCLENBQUE7SUFDekIsb0RBQXFDLENBQUE7SUFDckMsc0NBQXVCLENBQUE7QUFDekIsQ0FBQyxFQUpXLFdBQVcsS0FBWCxXQUFXLFFBSXRCO0FBNEpELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixXQUFXLEVBQUUsWUFBWTtJQUN6QixZQUFZLEVBQUUsT0FBTztDQUNiLENBQUM7QUFJWCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUU3RSxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsR0FBRyxFQUFFLGVBQWU7SUFDcEIsR0FBRyxFQUFFLGNBQWM7SUFDbkIsR0FBRyxFQUFFLGVBQWU7SUFDcEIsSUFBSSxFQUFFLGtCQUFrQjtDQUNoQixDQUFDO0FBSVgsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQThGNUUsTUFBTSxDQUFOLElBQVksY0FHWDtBQUhELFdBQVksY0FBYztJQUN4Qiw2QkFBVyxDQUFBO0lBQ1gsNkJBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxjQUFjLEtBQWQsY0FBYyxRQUd6QjtBQUVELE1BQU0sQ0FBTixJQUFZLFlBS1g7QUFMRCxXQUFZLFlBQVk7SUFDdEIsK0JBQWUsQ0FBQTtJQUNmLDZCQUFhLENBQUE7SUFDYix5QkFBUyxDQUFBO0lBQ1QsMkJBQVcsQ0FBQTtBQUNiLENBQUMsRUFMVyxZQUFZLEtBQVosWUFBWSxRQUt2QjtBQThDRCxNQUFNLENBQU4sSUFBWSwyQkFJWDtBQUpELFdBQVksMkJBQTJCO0lBQ3JDLHNEQUF1QixDQUFBO0lBQ3ZCLDREQUE2QixDQUFBO0lBQzdCLGtEQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFKVywyQkFBMkIsS0FBM0IsMkJBQTJCLFFBSXRDO0FBRUQsTUFBTSxDQUFOLElBQVksNkJBU1g7QUFURCxXQUFZLDZCQUE2QjtJQUN2Qyw0RUFBMkMsQ0FBQTtJQUMzQyxvRUFBbUMsQ0FBQTtJQUNuQyxrRkFBaUQsQ0FBQTtJQUNqRCw0RUFBMkMsQ0FBQTtJQUMzQyxzREFBcUIsQ0FBQTtJQUNyQixvREFBbUIsQ0FBQTtJQUNuQixvREFBbUIsQ0FBQTtJQUNuQiw4REFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBVFcsNkJBQTZCLEtBQTdCLDZCQUE2QixRQVN4QztBQUVELE1BQU0sQ0FBTixJQUFZLHNCQU1YO0FBTkQsV0FBWSxzQkFBc0I7SUFDaEMscURBQTJCLENBQUE7SUFDM0IsbURBQXlCLENBQUE7SUFDekIsd0RBQThCLENBQUE7SUFDOUIsNkRBQW1DLENBQUE7SUFDbkMsd0RBQThCLENBQUE7QUFDaEMsQ0FBQyxFQU5XLHNCQUFzQixLQUF0QixzQkFBc0IsUUFNakM7QUFnT0QsTUFBTSxDQUFOLElBQVksY0FPWDtBQVBELFdBQVksY0FBYztJQUN4QixpRUFBK0MsQ0FBQTtJQUMvQyx5Q0FBdUIsQ0FBQTtJQUN2QixtQ0FBaUIsQ0FBQTtJQUNqQix5Q0FBdUIsQ0FBQTtJQUN2Qix1Q0FBcUIsQ0FBQTtJQUNyQix1Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBUFcsY0FBYyxLQUFkLGNBQWMsUUFPekI7QUF5SEQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUc7SUFDL0IsSUFBSSxFQUFFLE1BQU07SUFDWixLQUFLLEVBQUUsT0FBTztJQUNkLElBQUksRUFBRSxNQUFNO0lBQ1osR0FBRyxFQUFFLEtBQUs7SUFDVixHQUFHLEVBQUUsS0FBSztDQUNGLENBQUM7QUFpTlgsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLFdBQVc7SUFDWCxVQUFVO0lBQ1YsY0FBYztJQUNkLGNBQWM7Q0FDTixDQUFDO0FBQ1gsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFVLENBQUM7QUFvQnhFLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBVSxDQUFDO0FBSW5FLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHO0lBQ3BDLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtJQUNOLE9BQU87SUFDUCxPQUFPO0lBQ1AsTUFBTTtDQUNFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUeXBlTWV0YSBkZXNjcmliZXMgYW4gaW5kaXZpZHVhbCBvYmplY3QgaW4gYW4gQVBJIHJlc3BvbnNlIG9yIHJlcXVlc3Rcbi8vIHdpdGggc3RyaW5ncyByZXByZXNlbnRpbmcgdGhlIHR5cGUgb2YgdGhlIG9iamVjdCBhbmQgaXRzIEFQSSBzY2hlbWEgdmVyc2lvbi5cbi8vIFN0cnVjdHVyZXMgdGhhdCBhcmUgdmVyc2lvbmVkIG9yIHBlcnNpc3RlZCBzaG91bGQgaW5saW5lIFR5cGVNZXRhLlxuXG4vKipcbiAqIOatpOaWh+S7tuWPque7tOaKpCDmiYDmnInnmoQgazhzIOWOn+eUn+exu+Wei1xuICovXG5cbmltcG9ydCB7IFN0cmluZ01hcCB9IGZyb20gJy4uL2NvbW1vbnMnO1xuaW1wb3J0IHsgVmFsdWVPZiB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgT3BlbkFQSVYzU2NoZW1hT2JqZWN0IH0gZnJvbSAnLi4vc2NoZW1hJztcblxuaW1wb3J0IHtcbiAgS3ViZXJuZXRlc1Jlc291cmNlLFxuICBMYWJlbFNlbGVjdG9yLFxuICBMYWJlbFNlbGVjdG9yUmVxdWlyZW1lbnQsXG4gIE9iamVjdE1ldGEsXG4gIE9iamVjdFJlZmVyZW5jZSxcbiAgQ29uZGl0aW9uLFxufSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldDxUID0gU3RyaW5nTWFwPiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGRhdGE/OiBUO1xuICBzdHJpbmdEYXRhPzogU3RyaW5nTWFwO1xuICB0eXBlPzogU2VjcmV0VHlwZTtcbiAgLy8gISBoYWNrLCBub3Qgc3BlY1xuICBnbG9iYWw/OiBib29sZWFuO1xuICBjZXJ0aWZpY2F0ZT86IENlcnRpZmljYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVzcGFjZSBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHN0YXR1cz86IE5hbWVzcGFjZVN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYW1lc3BhY2VTdGF0dXMge1xuICBwaGFzZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY29wZWRSZXNvdXJjZVNlbGVjdG9yUmVxdWlyZW1lbnQge1xuICBvcGVyYXRvcjogJ0luJyB8ICdOb3RJbicgfCAnRXhpc3RzJyB8ICdEb2VzTm90RXhpc3QnO1xuICBzY29wZU5hbWU6IHN0cmluZztcbiAgdmFsdWVzOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NvcGVTZWxlY3RvciB7XG4gIG1hdGNoRXhwcmVzc2lvbnM6IFNjb3BlZFJlc291cmNlU2VsZWN0b3JSZXF1aXJlbWVudFtdO1xufVxuXG5leHBvcnQgZW51bSBLOHNSZXNvdXJjZUFjdGlvbiB7XG4gIEdFVCA9ICdnZXQnLFxuICBMSVNUID0gJ2xpc3QnLFxuICBXQVRDSCA9ICd3YXRjaCcsXG4gIENSRUFURSA9ICdjcmVhdGUnLFxuICBVUERBVEUgPSAndXBkYXRlJyxcbiAgUEFUQ0ggPSAncGF0Y2gnLFxuICBERUxFVEUgPSAnZGVsZXRlJyxcbiAgREVMRVRFX0NPTExFQ1RJT04gPSAnZGVsZXRlY29sbGVjdGlvbicsXG4gIFBST1hZID0gJ3Byb3h5JyxcbiAgUkVESVJFQ1QgPSAncmVkaXJlY3QnLFxuICBBTEwgPSAnKicsXG59XG5cbmV4cG9ydCBlbnVtIFNlY3JldFR5cGUge1xuICBPcGFxdWUgPSAnT3BhcXVlJyxcbiAgVExTID0gJ2t1YmVybmV0ZXMuaW8vdGxzJyxcbiAgU1NIS2V5ID0gJ2t1YmVybmV0ZXMuaW8vc3NoLXB1YmxpYy1rZXknLFxuICBTU0hBdXRoID0gJ2t1YmVybmV0ZXMuaW8vc3NoLWF1dGgnLFxuICBCYXNpY0F1dGggPSAna3ViZXJuZXRlcy5pby9iYXNpYy1hdXRoJyxcbiAgQmFzaWNBdXRoU2VjcmV0ID0gJ2t1YmVybmV0ZXMuaW8vYmFzaWMtYXV0aC1zZWNyZXQnLFxuICBEYXRhYmFzZSA9ICdrdWJlcm5ldGVzLmlvL2RhdGFiYXNlJyxcbiAgRG9ja2VyQ29uZmlnSnNvbiA9ICdrdWJlcm5ldGVzLmlvL2RvY2tlcmNvbmZpZ2pzb24nLFxuICBPQXV0aDIgPSAna2F0YW5vbWkuZGV2L29hdXRoMicsXG4gIE5vQXV0aCA9ICdrdWJlcm5ldGVzLmlvL25vLWF1dGgnLFxuICBEZXZPcHNPQXV0aDIgPSAnZGV2b3BzLmFsYXVkYS5pby9vYXV0aDInLFxuICBEeW5hbWljU2VjcmV0S2V5ID0gJ2thdGFub21pLmRldi9keW5hbWljJyxcbiAgQ2xvdWRDcmVkZW50aWFsID0gJ0Nsb3VkQ3JlZGVudGlhbCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGVmdWxTZXQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogU3RhdGVmdWxTZXRTcGVjO1xuICBzdGF0dXM/OiBTdGF0ZWZ1bFNldFN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0ZWZ1bFNldFNwZWMge1xuICByZXBsaWNhcz86IG51bWJlcjtcbiAgc2VsZWN0b3I/OiBMYWJlbFNlbGVjdG9yO1xuICB0ZW1wbGF0ZT86IFBvZFRlbXBsYXRlU3BlYztcblxuICAvLyBzZXJ2aWNlTmFtZSBpcyB0aGUgbmFtZSBvZiB0aGUgc2VydmljZSB0aGF0IGdvdmVybnMgdGhpcyBTdGF0ZWZ1bFNldC5cbiAgLy8gVGhpcyBzZXJ2aWNlIG11c3QgZXhpc3QgYmVmb3JlIHRoZSBTdGF0ZWZ1bFNldCwgYW5kIGlzIHJlc3BvbnNpYmxlIGZvclxuICAvLyB0aGUgbmV0d29yayBpZGVudGl0eSBvZiB0aGUgc2V0LiBQb2RzIGdldCBETlMvaG9zdG5hbWVzIHRoYXQgZm9sbG93IHRoZVxuICAvLyBwYXR0ZXJuOiBwb2Qtc3BlY2lmaWMtc3RyaW5nLnNlcnZpY2VOYW1lLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWxcbiAgLy8gd2hlcmUgXCJwb2Qtc3BlY2lmaWMtc3RyaW5nXCIgaXMgbWFuYWdlZCBieSB0aGUgU3RhdGVmdWxTZXQgY29udHJvbGxlci5cbiAgc2VydmljZU5hbWU/OiBzdHJpbmc7XG4gIHVwZGF0ZVN0cmF0ZWd5PzogU3RhdGVmdWxTZXRVcGRhdGVTdHJhdGVneTtcbiAgcmV2aXNpb25IaXN0b3J5TGltaXQ/OiBudW1iZXI7XG4gIHZvbHVtZUNsYWltVGVtcGxhdGVzPzogUGVyc2lzdGVudFZvbHVtZUNsYWltW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kVGVtcGxhdGVTcGVjIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IFBvZFNwZWM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kU3BlYyB7XG4gIGNvbnRhaW5lcnM/OiBDb250YWluZXJbXTtcbiAgaW5pdENvbnRhaW5lcnM/OiBDb250YWluZXJbXTtcbiAgZXBoZW1lcmFsQ29udGFpbmVycz86IEVwaGVtZXJhbENvbnRhaW5lcltdO1xuICB2b2x1bWVzPzogVm9sdW1lW107XG4gIGhvc3RBbGlhc2VzPzogSG9zdEFsaWFzZXNbXTtcbiAgbm9kZVNlbGVjdG9yPzogU3RyaW5nTWFwO1xuICBob3N0TmV0d29yaz86IGJvb2xlYW47XG4gIGFmZmluaXR5PzogQWZmaW5pdHk7XG4gIHJlc3RhcnRQb2xpY3k/OiBzdHJpbmc7XG4gIGltYWdlUHVsbFNlY3JldHM/OiBMb2NhbE9iamVjdFJlZmVyZW5jZVtdO1xuICBzZXJ2aWNlQWNjb3VudE5hbWU/OiBzdHJpbmc7XG4gIHNlcnZpY2VBY2NvdW50Pzogc3RyaW5nO1xuICBub2RlTmFtZT86IHN0cmluZztcbiAgdGVybWluYXRpb25HcmFjZVBlcmlvZFNlY29uZHM/OiBudW1iZXI7XG4gIHRvbGVyYXRpb25zPzogVG9sZXJhdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRvbGVyYXRpb24ge1xuICBrZXk/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICBvcGVyYXRvcj86IFRvbGVyYXRpb25PcGVyYXRvcjtcbiAgdG9sZXJhdGlvblNlY29uZHM/OiBudW1iZXI7XG4gIGVmZmVjdD86IFRhaW50RWZmZWN0O1xufVxuXG5leHBvcnQgZW51bSBUb2xlcmF0aW9uT3BlcmF0b3Ige1xuICBFeGlzdHMgPSAnRXhpc3RzJyxcbiAgRXF1YWwgPSAnRXF1YWwnLFxufVxuXG5leHBvcnQgZW51bSBUYWludEVmZmVjdCB7XG4gIE5vU2NoZWR1bGUgPSAnTm9TY2hlZHVsZScsXG4gIFByZWZlck5vU2NoZWR1bGUgPSAnUHJlZmVyTm9TY2hlZHVsZScsXG4gIE5vRXhlY3V0ZSA9ICdOb0V4ZWN1dGUnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lciB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGltYWdlPzogc3RyaW5nO1xuICBjb21tYW5kPzogc3RyaW5nW107XG4gIGFyZ3M/OiBzdHJpbmdbXTtcbiAgZW52PzogRW52VmFyW107XG4gIGVudkZyb20/OiBFbnZGcm9tU291cmNlW107XG4gIHdvcmtpbmdEaXI/OiBzdHJpbmc7XG4gIHBvcnRzPzogQ29udGFpbmVyUG9ydFtdO1xuICByZXNvdXJjZXM/OiBSZXNvdXJjZVJlcXVpcmVtZW50cztcbiAgdm9sdW1lTW91bnRzPzogVm9sdW1lTW91bnRbXTtcbiAgbGl2ZW5lc3NQcm9iZT86IFByb2JlO1xuICByZWFkaW5lc3NQcm9iZT86IFByb2JlO1xuICBsaWZlY3ljbGU/OiBQb2RMaWZlQ3ljbGU7XG4gIHJlc3RhcnRQb2xpY3k/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52VmFyU291cmNlIHtcbiAgY29uZmlnTWFwS2V5UmVmPzogQ29uZmlnTWFwS2V5UmVmO1xuICBzZWNyZXRLZXlSZWY/OiBTZWNyZXRLZXlSZWY7XG4gIGZpZWxkUmVmPzogT2JqZWN0RmllbGRTZWxlY3RvcjtcbiAgcmVzb3VyY2VGaWVsZFJlZj86IFJlc291cmNlRmllbGRTZWxlY3Rvcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZWYXIge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICB2YWx1ZUZyb20/OiBFbnZWYXJTb3VyY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52RnJvbVNvdXJjZSB7XG4gIHByZWZpeD86IHN0cmluZztcbiAgY29uZmlnTWFwUmVmPzogQ29uZmlnTWFwUmVmO1xuICBzZWNyZXRSZWY/OiBTZWNyZXRSZWY7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kTGlmZUN5Y2xlIHtcbiAgcG9zdFN0YXJ0PzogUG9kTGlmZUN5Y2xlSG9vaztcbiAgcHJlU3RvcD86IFBvZExpZmVDeWNsZUhvb2s7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kTGlmZUN5Y2xlSG9vayB7XG4gIGV4ZWM6IHsgY29tbWFuZDogc3RyaW5nW10gfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIVFRQR2V0QWN0aW9uIHtcbiAgaG9zdD86IHN0cmluZztcbiAgaHR0cEhlYWRlcnM/OiBIVFRQSGVhZGVyW107XG4gIHBhdGg6IHN0cmluZztcbiAgcG9ydD86IG51bWJlciB8IHN0cmluZztcbiAgc2NoZW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVwaGVtZXJhbENvbnRhaW5lciB7XG4gIGNvbW1hbmQ6IHN0cmluZ1tdO1xuICBpbWFnZTogc3RyaW5nO1xuICBpbWFnZVB1bGxQb2xpY3k6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBzdGRpbjogYm9vbGVhbjtcbiAgdHR5OiBib29sZWFuO1xuICB0ZXJtaW5hdGlvbk1lc3NhZ2VQb2xpY3k/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCB0eXBlIFN0YXRlZnVsU2V0U3RhdHVzID0gUGFydGlhbDx7XG4gIGNvbGxpc2lvbkNvdW50OiBudW1iZXI7XG4gIG9ic2VydmVkR2VuZXJhdGlvbjogbnVtYmVyO1xuICByZXBsaWNhczogbnVtYmVyO1xuICByZWFkeVJlcGxpY2FzOiBudW1iZXI7XG4gIGN1cnJlbnRSZXBsaWNhczogbnVtYmVyO1xuICBjdXJyZW50UmV2aXNpb246IHN0cmluZztcbiAgdXBkYXRlUmV2aXNpb246IHN0cmluZztcbiAgdXBkYXRlZFJlcGxpY2FzPzogbnVtYmVyO1xufT47XG5cbmV4cG9ydCB0eXBlIERlcGxveW1lbnRTdHJhdGVneVR5cGUgPSAnUm9sbGluZ1VwZGF0ZScgfCAnUmVjcmVhdGUnO1xuZXhwb3J0IHR5cGUgRGFlbW9uU2V0VXBkYXRlU3RyYXRlZ3lUeXBlID0gJ1JvbGxpbmdVcGRhdGUnIHwgJ09uRGVsZXRlJztcbmV4cG9ydCB0eXBlIFN0YXRlZnVsU2V0VXBkYXRlU3RyYXRlZ3lUeXBlID0gJ1JvbGxpbmdVcGRhdGUnIHwgJ09uRGVsZXRlJztcblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3ltZW50U3RyYXRlZ3kge1xuICB0eXBlPzogRGVwbG95bWVudFN0cmF0ZWd5VHlwZTtcbiAgcm9sbGluZ1VwZGF0ZT86IFJvbGxpbmdVcGRhdGVEZXBsb3ltZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvbGxpbmdVcGRhdGVEZXBsb3ltZW50IHtcbiAgbWF4VW5hdmFpbGFibGU/OiBzdHJpbmcgfCBudW1iZXI7XG4gIG1heFN1cmdlPzogc3RyaW5nIHwgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlZnVsU2V0VXBkYXRlU3RyYXRlZ3kge1xuICB0eXBlPzogU3RhdGVmdWxTZXRVcGRhdGVTdHJhdGVneVR5cGU7XG4gIHJvbGxpbmdVcGRhdGU/OiBSb2xsaW5nVXBkYXRlU3RhdGVmdWxTZXRTdHJhdGVneTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb2xsaW5nVXBkYXRlU3RhdGVmdWxTZXRTdHJhdGVneSB7XG4gIHBhcnRpdGlvbj86IHN0cmluZyB8IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmdyZXNzIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IEluZ3Jlc3NTcGVjO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NTcGVjIHtcbiAgaW5ncmVzc0NsYXNzTmFtZT86IHN0cmluZztcbiAgcnVsZXM/OiBJbmdyZXNzUnVsZVtdO1xuICB0bHM/OiBJbmdyZXNzVExTW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5ncmVzc1J1bGUge1xuICBob3N0Pzogc3RyaW5nO1xuICBodHRwOiBIVFRQSW5ncmVzc1J1bGVWYWx1ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIVFRQSW5ncmVzc1J1bGVWYWx1ZSB7XG4gIHBhdGhzOiBIVFRQSW5ncmVzc1BhdGhbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIVFRQSW5ncmVzc1BhdGgge1xuICBwYXRoOiBzdHJpbmc7XG4gIHBhdGhUeXBlOiAnUHJlZml4JyB8ICdFeGFjdCcgfCAnSW1wbGVtZW50YXRpb25TcGVjaWZpYyc7XG4gIGJhY2tlbmQ6IEluZ3Jlc3NCYWNrZW5kO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NCYWNrZW5kIHtcbiAgc2VydmljZU5hbWU/OiBzdHJpbmc7XG4gIHNlcnZpY2VQb3J0PzogbnVtYmVyO1xuICBzZXJ2aWNlPzoge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBwb3J0OiB7XG4gICAgICBudW1iZXI6IG51bWJlcjtcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NUTFMge1xuICBob3N0cz86IHN0cmluZ1tdO1xuICBzZWNyZXROYW1lPzogc3RyaW5nO1xuICBnbG9iYWw/OiBib29sZWFuO1xuICBjZXJ0aWZpY2F0ZT86IENlcnRpZmljYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NTdGF0dXMge1xuICBsb2FkQmFsYW5jZXI/OiBJbmdyZXNzTG9hZEJhbGFuY2VyU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZ3Jlc3NMb2FkQmFsYW5jZXJTdGF0dXMge1xuICBpbmdyZXNzPzogTG9hZEJhbGFuY2VySW5ncmVzc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvYWRCYWxhbmNlckluZ3Jlc3Mge1xuICBpcDogc3RyaW5nO1xuICBob3N0bmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgVm9sdW1lTW9kZSA9IHtcbiAgRklMRV9TWVNURU06ICdGaWxlc3lzdGVtJyxcbiAgQkxPQ0tfREVWSUNFOiAnQmxvY2snLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVm9sdW1lTW9kZSA9IFZhbHVlT2Y8dHlwZW9mIFZvbHVtZU1vZGU+O1xuXG5leHBvcnQgY29uc3QgVm9sdW1lTW9kZXMgPSBbVm9sdW1lTW9kZS5CTE9DS19ERVZJQ0UsIFZvbHVtZU1vZGUuRklMRV9TWVNURU1dO1xuXG5leHBvcnQgY29uc3QgQWNjZXNzTW9kZSA9IHtcbiAgUldPOiAnUmVhZFdyaXRlT25jZScsXG4gIFJPWDogJ1JlYWRPbmx5TWFueScsXG4gIFJXWDogJ1JlYWRXcml0ZU1hbnknLFxuICBSV09QOiAnUmVhZFdyaXRlT25jZVBvZCcsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBBY2Nlc3NNb2RlID0gVmFsdWVPZjx0eXBlb2YgQWNjZXNzTW9kZT47XG5cbmV4cG9ydCBjb25zdCBBY2Nlc3NNb2RlcyA9IFtBY2Nlc3NNb2RlLlJXTywgQWNjZXNzTW9kZS5ST1gsIEFjY2Vzc01vZGUuUldYXTtcblxuZXhwb3J0IGludGVyZmFjZSBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW0gZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW1TcGVjO1xuICBzdGF0dXM/OiBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW1TdGF0dXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVyc2lzdGVudFZvbHVtZUNsYWltU3RhdHVzIHtcbiAgcGhhc2U6IHN0cmluZztcbiAgY2FwYWNpdHk/OiB7IHN0b3JhZ2U6IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBlcnNpc3RlbnRWb2x1bWVDbGFpbVNwZWMge1xuICAvLyBudWxsIOihqOekuuS9v+eUqOm7mOiupCBzY1xuICAvLyBcIlwiIOihqOekuuS4jeiuvue9ruWtmOWCqOexu1xuICBzdG9yYWdlQ2xhc3NOYW1lPzogc3RyaW5nO1xuICB2b2x1bWVOYW1lPzogc3RyaW5nO1xuICByZXNvdXJjZXM6IHtcbiAgICByZXF1ZXN0czogeyBzdG9yYWdlOiBzdHJpbmcgfTtcbiAgfTtcbiAgZGF0YVNvdXJjZT86IFBlcnNpc3RlbnRWb2x1bWVDbGFpbURhdGFTb3VyY2U7XG4gIHNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgYWNjZXNzTW9kZXM6IEFjY2Vzc01vZGVbXTtcbiAgdm9sdW1lTW9kZT86IFZvbHVtZU1vZGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVyc2lzdGVudFZvbHVtZUNsYWltRGF0YVNvdXJjZSB7XG4gIG5hbWU6IHN0cmluZztcbiAga2luZDogc3RyaW5nO1xuICBhcGlHcm91cDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFQSVJlc291cmNlSXRlbSB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2luZ3VsYXJOYW1lOiBzdHJpbmc7XG4gIG5hbWVzcGFjZWQ6IGJvb2xlYW47XG4gIGtpbmQ6IHN0cmluZztcbiAgdmVyYnM6IEs4c1Jlc291cmNlQWN0aW9uW107XG4gIGdyb3VwVmVyc2lvbj86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFQSVJlc291cmNlTGlzdCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdBUElSZXNvdXJjZUxpc3QnO1xuICBhcGlWZXJzaW9uPzogc3RyaW5nO1xuICBncm91cFZlcnNpb246IHN0cmluZztcbiAgcmVzb3VyY2VzOiBBUElSZXNvdXJjZUl0ZW1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZUF0dHJpYnV0ZXM8VCBleHRlbmRzIEs4c1Jlc291cmNlQWN0aW9uPiB7XG4gIGdyb3VwOiBzdHJpbmc7XG4gIHJlc291cmNlOiBzdHJpbmc7XG4gIHZlcmI6IFQ7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbiAgbmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdWJqZWN0QWNjZXNzUmV2aWV3U3BlYzxUIGV4dGVuZHMgSzhzUmVzb3VyY2VBY3Rpb24+IHtcbiAgcmVzb3VyY2VBdHRyaWJ1dGVzOiBSZXNvdXJjZUF0dHJpYnV0ZXM8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3ViamVjdEFjY2Vzc1Jldmlld1N0YXR1cyB7XG4gIGFsbG93ZWQ6IGJvb2xlYW47XG4gIGRlbmllZD86IGJvb2xlYW47XG4gIGV2YWx1YXRpb25FcnJvcj86IHN0cmluZztcbiAgcmVhc29uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YmplY3RBY2Nlc3NSZXZpZXc8XG4gIFQgZXh0ZW5kcyBLOHNSZXNvdXJjZUFjdGlvbiA9IEs4c1Jlc291cmNlQWN0aW9uLFxuPiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdTdWJqZWN0QWNjZXNzUmV2aWV3JztcbiAgc3BlYzogU3ViamVjdEFjY2Vzc1Jldmlld1NwZWM8VD47XG4gIHN0YXR1czogU3ViamVjdEFjY2Vzc1Jldmlld1N0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWxmUmVzb3VyY2VBdHRyaWJ1dGVzPFQgZXh0ZW5kcyBLOHNSZXNvdXJjZUFjdGlvbj5cbiAgZXh0ZW5kcyBSZXNvdXJjZUF0dHJpYnV0ZXM8VD4ge1xuICBwcm9qZWN0Pzogc3RyaW5nO1xuICBjbHVzdGVyPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGZTdWJqZWN0QWNjZXNzUmV2aWV3U3BlYzxUIGV4dGVuZHMgSzhzUmVzb3VyY2VBY3Rpb24+XG4gIGV4dGVuZHMgU3ViamVjdEFjY2Vzc1Jldmlld1NwZWM8VD4ge1xuICByZXNvdXJjZUF0dHJpYnV0ZXM6IFNlbGZSZXNvdXJjZUF0dHJpYnV0ZXM8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZlN1YmplY3RBY2Nlc3NSZXZpZXc8XG4gIFQgZXh0ZW5kcyBLOHNSZXNvdXJjZUFjdGlvbiA9IEs4c1Jlc291cmNlQWN0aW9uLFxuPiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdTZWxmU3ViamVjdEFjY2Vzc1Jldmlldyc7XG4gIHNwZWM6IFNlbGZTdWJqZWN0QWNjZXNzUmV2aWV3U3BlYzxUPjtcbiAgc3RhdHVzOiBTdWJqZWN0QWNjZXNzUmV2aWV3U3RhdHVzO1xufVxuXG5leHBvcnQgZW51bSBEZXBlbmRlbmN5VHlwZSB7XG4gIEFueSA9ICdhbnknLFxuICBBbGwgPSAnYWxsJyxcbn1cblxuZXhwb3J0IGVudW0gRmVhdHVyZVN0YWdlIHtcbiAgQWxwaGEgPSAnQWxwaGEnLFxuICBCZXRhID0gJ0JldGEnLFxuICBHQSA9ICdHQScsXG4gIEVPRiA9ICdFT0YnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVHYXRlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYzoge1xuICAgIGRlcGVuZGVuY3k6IHtcbiAgICAgIHR5cGU6IERlcGVuZGVuY3lUeXBlO1xuICAgICAgZmVhdHVyZUdhdGVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgZW5hYmxlZDogYm9vbGVhbjtcbiAgICBzdGFnZTogRmVhdHVyZVN0YWdlO1xuICB9O1xuICBzdGF0dXM6IHtcbiAgICBlbmFibGVkOiBib29sZWFuO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVHYXRlRW50ZXJwcmlzZVN1cHBvcnQgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjOiBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0U3BlYztcbiAgc3RhdHVzOiBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0U3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVHYXRlRW50ZXJwcmlzZVN1cHBvcnRTcGVjIHtcbiAgcHJvZHVjdHM6IEFycmF5PHsgbmFtZTogc3RyaW5nIH0+O1xuICB2YWxpZGl0eToge1xuICAgIG5vdEJlZm9yZTogc3RyaW5nO1xuICAgIG5vdEFmdGVyOiBzdHJpbmc7XG4gIH07XG4gIHR5cGU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICB2ZXJzaW9uOiBzdHJpbmc7XG4gIGxpY2Vuc2VLaW5kOiBzdHJpbmc7XG4gIGJhcmVtZXRhbENsdXN0ZXJDUFVDb3JlTGltaXQ6IG51bWJlcjtcbiAgaW1wb3J0ZWRDbHVzdGVyTm9kZUxpbWl0OiBudW1iZXI7XG4gIGFsbG93UHJvZHVjdFZlcnNpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0U3RhdHVzIHtcbiAgcGhhc2U6IEVudGVycHJpc2VTdXBwb3J0U3RhdHVzVHlwZTtcbiAgcmVhc29uOiBFbnRlcnByaXNlU3VwcG9ydFN0YXR1c1JlYXNvbltdO1xuICBiYXJlbWV0YWxDbHVzdGVyQ1BVQ29yZU51bTogbnVtYmVyO1xuICBpbXBvcnRlZENsdXN0ZXJOb2RlTnVtOiBudW1iZXI7XG4gIGN1cnJlbnRQcm9kdWN0VmVyc2lvbjogc3RyaW5nO1xuICBsaWNlbnNlRXhlbXB0PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGVudW0gRW50ZXJwcmlzZVN1cHBvcnRTdGF0dXNUeXBlIHtcbiAgaW5TZXJ2aWNlID0gJ0luU2VydmljZScsXG4gIG91dE9mU2VydmljZSA9ICdPdXRPZlNlcnZpY2UnLFxuICB3YXJuaW5nID0gJ1dhcm5pbmcnLFxufVxuXG5leHBvcnQgZW51bSBFbnRlcnByaXNlU3VwcG9ydFN0YXR1c1JlYXNvbiB7XG4gIEV4Y2VlZFJlc291cmNlTGltaXQgPSAnRXhjZWVkUmVzb3VyY2VMaW1pdCcsXG4gIEV4Y2VlZE5vZGVMaW1pdCA9ICdFeGNlZWROb2RlTGltaXQnLFxuICBNaXNtYXRjaFByb2R1Y3RWZXJzaW9uID0gJ01pc21hdGNoUHJvZHVjdFZlcnNpb24nLFxuICBNaXNtYXRjaFN1YlByb2R1Y3RzID0gJ01pc21hdGNoU3ViUHJvZHVjdHMnLFxuICBOb3RFeGlzdCA9ICdOb3RFeGlzdCcsXG4gIEV4cGlyZWQgPSAnRXhwaXJlZCcsXG4gIFBlbmRpbmcgPSAnUGVuZGluZycsXG4gIEV4cGlyaW5nU29vbiA9ICdFeHBpcmluZ1Nvb24nLFxufVxuXG5leHBvcnQgZW51bSBTZWN1cml0eVBvbGljeVJ1bGVOYW1lIHtcbiAgcGFzc3dvcmQgPSAnUGFzc3dvcmRQb2xpY3knLFxuICBsb2NrID0gJ1VzZXJMb2NrZWRQb2xpY3knLFxuICBkaXNhYmxlID0gJ1VzZXJEaXNhYmxlZFBvbGljeScsXG4gIG5vdGlmaWNhdGlvbiA9ICdOb3RpZmljYXRpb25Qb2xpY3knLFxuICBhY2Nlc3MgPSAnQWNjZXNzQ29udHJvbFBvbGljeScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlQb2xpY3lSdWxlIHtcbiAgbmFtZTogU2VjdXJpdHlQb2xpY3lSdWxlTmFtZTtcbiAgaXRlbXM6IEFycmF5PHtcbiAgICBlbmFibGU6IGJvb2xlYW47XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgfT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlQb2xpY3lSZXNvdXJjZSBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHJ1bGVzOiBTZWN1cml0eVBvbGljeVJ1bGVbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXMge1xuICBraW5kOiAnU3RhdHVzJztcbiAgYXBpVmVyc2lvbjogc3RyaW5nO1xuICBtZXRhZGF0YToge1xuICAgIGNvbnRpbnVlPzogc3RyaW5nO1xuICB9O1xuICBzdGF0dXM6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICByZWFzb246IHN0cmluZztcbiAgY29kZTogbnVtYmVyO1xuICBkZXRhaWxzPzoge1xuICAgIGdyb3VwPzogc3RyaW5nO1xuICAgIGtpbmQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdWlkOiBzdHJpbmc7XG4gICAgY2F1c2VzOiBBcnJheTx7XG4gICAgICBtZXNzYWdlPzogc3RyaW5nO1xuICAgICAgcmVhc29uPzogc3RyaW5nO1xuICAgICAgZmllbGQ/OiBzdHJpbmc7XG4gICAgfT47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxPYmplY3RSZWZlcmVuY2Uge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTWFwS2V5UmVmIGV4dGVuZHMgTG9jYWxPYmplY3RSZWZlcmVuY2Uge1xuICBrZXk6IHN0cmluZztcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldEtleVJlZiBleHRlbmRzIExvY2FsT2JqZWN0UmVmZXJlbmNlIHtcbiAga2V5OiBzdHJpbmc7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb25maWdNYXBSZWYgZXh0ZW5kcyBMb2NhbE9iamVjdFJlZmVyZW5jZSB7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWNyZXRSZWYgZXh0ZW5kcyBMb2NhbE9iamVjdFJlZmVyZW5jZSB7XG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPYmplY3RGaWVsZFNlbGVjdG9yIHtcbiAgYXBpVmVyc2lvbj86IHN0cmluZztcbiAgZmllbGRQYXRoOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlRmllbGRTZWxlY3RvciB7XG4gIGNvbnRhaW5lck5hbWU/OiBzdHJpbmc7XG4gIGRpdmlzb3I/OiBzdHJpbmc7XG4gIHJlc291cmNlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogV29ya2xvYWQgQVBJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHNwZWM/OiBEZXBsb3ltZW50U3BlYztcbiAgc3RhdHVzPzogRGVwbG95bWVudFN0YXR1cztcbiAgZ2VuZXJhdGlvbj86IG51bWJlcjtcbn1cblxuLy8gRGVwbG95bWVudFNwZWMgaXMgdGhlIHNwZWNpZmljYXRpb24gb2YgdGhlIGRlc2lyZWQgYmVoYXZpb3Igb2YgdGhlIERlcGxveW1lbnQuXG5leHBvcnQgaW50ZXJmYWNlIERlcGxveW1lbnRTcGVjIHtcbiAgcmVwbGljYXM/OiBudW1iZXI7XG4gIHNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgdGVtcGxhdGU/OiBQb2RUZW1wbGF0ZVNwZWM7XG4gIHN0cmF0ZWd5PzogRGVwbG95bWVudFN0cmF0ZWd5O1xuICBtaW5SZWFkeVNlY29uZHM/OiBudW1iZXI7XG4gIHJldmlzaW9uSGlzdG9yeUxpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvZCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBQb2RTcGVjO1xuICBzdGF0dXM/OiBQb2RTdGF0dXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9kU3RhdHVzIHtcbiAgY29uZGl0aW9ucz86IENvbmRpdGlvbltdO1xuICBjb250YWluZXJTdGF0dXNlcz86IENvbnRhaW5lclN0YXR1c1tdO1xuICBob3N0SVA/OiBzdHJpbmc7XG4gIGluaXRDb250YWluZXJTdGF0dXNlcz86IENvbnRhaW5lclN0YXR1c1tdO1xuICBlcGhlbWVyYWxDb250YWluZXJTdGF0dXNlcz86IENvbnRhaW5lclN0YXR1c1tdO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBub21pbmF0ZWROb2RlTmFtZT86IHN0cmluZztcbiAgcGhhc2U/OiBzdHJpbmc7XG4gIHBvZElQPzogc3RyaW5nO1xuICBwb2RJUHM/OiBBcnJheTx7IGlwOiBzdHJpbmcgfT47XG4gIHFvc0NsYXNzPzogc3RyaW5nO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIHN0YXJ0VGltZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIb3N0QWxpYXNlcyB7XG4gIGlwOiBzdHJpbmc7XG4gIGhvc3RuYW1lczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyU3RhdHVzIHtcbiAgY29udGFpbmVySUQ/OiBzdHJpbmc7XG4gIGltYWdlPzogc3RyaW5nO1xuICBpbWFnZUlEPzogc3RyaW5nO1xuICBsYXN0U3RhdGU/OiBDb250YWluZXJTdGF0ZTtcbiAgbmFtZT86IHN0cmluZztcbiAgcmVhZHk/OiBib29sZWFuO1xuICByZXN0YXJ0Q291bnQ/OiBudW1iZXI7XG4gIHN0YXRlPzogQ29udGFpbmVyU3RhdGU7XG4gIHN0YXJ0ZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lclN0YXRlIHtcbiAgcnVubmluZz86IENvbnRhaW5lclN0YXRlUnVubmluZztcbiAgdGVybWluYXRlZD86IENvbnRhaW5lclN0YXRlVGVybWluYXRlZDtcbiAgd2FpdGluZz86IENvbnRhaW5lclN0YXRlV2FpdGluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250YWluZXJTdGF0ZVJ1bm5pbmcge1xuICBzdGFydGVkQXQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyU3RhdGVUZXJtaW5hdGVkIHtcbiAgY29udGFpbmVySUQ/OiBzdHJpbmc7XG4gIGV4aXRDb2RlPzogbnVtYmVyO1xuICBmaW5pc2hlZEF0Pzogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIHNpZ25hbD86IG51bWJlcjtcbiAgc3RhcnRlZEF0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lclN0YXRlV2FpdGluZyB7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHJlYXNvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3ltZW50U3RhdHVzIHtcbiAgYXZhaWxhYmxlUmVwbGljYXM/OiBudW1iZXI7XG4gIGNvbGxpc2lvbkNvdW50PzogbnVtYmVyO1xuICBvYnNlcnZlZEdlbmVyYXRpb24/OiBudW1iZXI7XG4gIHJlYWR5UmVwbGljYXM/OiBudW1iZXI7XG4gIHJlcGxpY2FzPzogbnVtYmVyO1xuICB1bmF2YWlsYWJsZVJlcGxpY2FzPzogbnVtYmVyO1xuICB1cGRhdGVkUmVwbGljYXM/OiBudW1iZXI7XG4gIGNvbmRpdGlvbnM/OiBDb25kaXRpb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1aXJlZEFmZmluaXR5IHtcbiAgdG9wb2xvZ3lLZXk6IHN0cmluZztcbiAgbGFiZWxTZWxlY3RvcjogTGFiZWxTZWxlY3Rvcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVmZXJyZWRBZmZpbml0eSB7XG4gIHdlaWdodDogbnVtYmVyO1xuICBwb2RBZmZpbml0eVRlcm06IHtcbiAgICBsYWJlbFNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgICB0b3BvbG9neUtleTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvZEFmZmluaXR5IHtcbiAgcmVxdWlyZWREdXJpbmdTY2hlZHVsaW5nSWdub3JlZER1cmluZ0V4ZWN1dGlvbj86IFJlcXVpcmVkQWZmaW5pdHlbXTtcbiAgcHJlZmVycmVkRHVyaW5nU2NoZWR1bGluZ0lnbm9yZWREdXJpbmdFeGVjdXRpb24/OiBQcmVmZXJyZWRBZmZpbml0eVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvZFNwZWNBZmZpbml0eSB7XG4gIHBvZEFmZmluaXR5PzogQWZmaW5pdHk7XG4gIHBvZEFudGlBZmZpbml0eT86IEFmZmluaXR5O1xuICBub2RlQWZmaW5pdHk/OiBBZmZpbml0eTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZmZpbml0eSB7XG4gIHJlcXVpcmVkRHVyaW5nU2NoZWR1bGluZ0lnbm9yZWREdXJpbmdFeGVjdXRpb24/OlxuICAgIHwgUG9kQWZmaW5pdHlUZXJtW11cbiAgICB8IE5vZGVBZmZpbml0eVRlcm07XG4gIHByZWZlcnJlZER1cmluZ1NjaGVkdWxpbmdJZ25vcmVkRHVyaW5nRXhlY3V0aW9uPzogV2VpZ2h0ZWRQb2RBZmZpbml0eVRlcm1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXZWlnaHRlZE5vZGVBZmZpbml0eVRlcm0ge1xuICB3ZWlnaHQ6IG51bWJlcjtcbiAgcHJlZmVyZW5jZTogTm9kZVNlbGVjdG9yVGVybTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb2RlQWZmaW5pdHkge1xuICByZXF1aXJlZER1cmluZ1NjaGVkdWxpbmdJZ25vcmVkRHVyaW5nRXhlY3V0aW9uPzogTm9kZUFmZmluaXR5VGVybTtcbiAgcHJlZmVycmVkRHVyaW5nU2NoZWR1bGluZ0lnbm9yZWREdXJpbmdFeGVjdXRpb24/OiBXZWlnaHRlZE5vZGVBZmZpbml0eVRlcm1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXZWlnaHRlZFBvZEFmZmluaXR5VGVybSB7XG4gIHBvZEFmZmluaXR5VGVybTogUG9kQWZmaW5pdHlUZXJtO1xuICB3ZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2RBZmZpbml0eVRlcm0ge1xuICBsYWJlbFNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgdG9wb2xvZ3lLZXk6IHN0cmluZztcbiAgbmFtZXNwYWNlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVBZmZpbml0eVRlcm0ge1xuICBub2RlU2VsZWN0b3JUZXJtczogTm9kZVNlbGVjdG9yVGVybVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVTZWxlY3RvclRlcm0ge1xuICBtYXRjaEV4cHJlc3Npb25zOiBMYWJlbFNlbGVjdG9yUmVxdWlyZW1lbnRbXTtcbn1cblxuZXhwb3J0IGVudW0gVm9sdW1lVHlwZUVudW0ge1xuICBwZXJzaXN0ZW50Vm9sdW1lQ2xhaW0gPSAncGVyc2lzdGVudFZvbHVtZUNsYWltJyxcbiAgY29uZmlnTWFwID0gJ2NvbmZpZ01hcCcsXG4gIHNlY3JldCA9ICdzZWNyZXQnLFxuICBlcGhlbWVyYWwgPSAnZXBoZW1lcmFsJyxcbiAgZW1wdHlEaXIgPSAnZW1wdHlEaXInLFxuICBob3N0UGF0aCA9ICdob3N0UGF0aCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVm9sdW1lIHtcbiAgbmFtZTogc3RyaW5nO1xuICBbVm9sdW1lVHlwZUVudW0uZW1wdHlEaXJdPzogRW1wdHlEaXJWb2x1bWVTb3VyY2U7XG4gIFtWb2x1bWVUeXBlRW51bS5jb25maWdNYXBdPzogQ29uZmlnTWFwVm9sdW1lU291cmNlO1xuICBbVm9sdW1lVHlwZUVudW0uc2VjcmV0XT86IFNlY3JldFZvbHVtZVNvdXJjZTtcbiAgW1ZvbHVtZVR5cGVFbnVtLnBlcnNpc3RlbnRWb2x1bWVDbGFpbV0/OiBQZXJzaXN0ZW50Vm9sdW1lQ2xhaW1Wb2x1bWVTb3VyY2U7XG4gIFtWb2x1bWVUeXBlRW51bS5ob3N0UGF0aF0/OiBIb3N0UGF0aFZvbHVtZVNvdXJjZTtcbiAgW1ZvbHVtZVR5cGVFbnVtLmVwaGVtZXJhbF0/OiBFcGhlbWVyYWxWb2x1bWVTb3VyY2U7XG4gIC8vIG90aGVyIGlhYXMgc3RvcmFnZSBkZWZpbml0aW9ucyBub3QgaW5jbHVkZWRcbiAgaXNBcHBSZXNvdXJjZT86IGJvb2xlYW47IC8vIOaYr+WQpk9BTeW6lOeUqOi1hOa6kFxuICBtb3VudFBhdGg/OiBzdHJpbmc7IC8vIGZvciBvYW0gY29tcG9uZW50IHdlYnNlcnZpY2UgY29tcG9uZW50LiDmnKrmnaXlj6/og73ljZXni6zlrprkuYlcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDc2lWb2x1bWVTb3VyY2Uge1xuICBkcml2ZXI6ICdvYmplY3RzdG9yYWdlLms4cy5pbyc7XG4gIHZvbHVtZUF0dHJpYnV0ZXM6IHtcbiAgICAnYmFyLW5hbWUnOiBzdHJpbmc7XG4gICAgJ2Jhci1uYW1lc3BhY2UnOiBzdHJpbmc7XG4gICAgYnVja2V0UmVxdWVzdE5hbWU6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLZXlUb1BhdGgge1xuICBrZXk/OiBzdHJpbmc7XG4gIG1vZGU/OiBudW1iZXI7XG4gIHBhdGg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW1wdHlEaXJWb2x1bWVTb3VyY2Uge1xuICBtZWRpdW0/OiBzdHJpbmc7XG4gIHNpemVMaW1pdD86IHN0cmluZzsgLy8gZWc6IDE1MDBtIHJlZmVycyB0bzogaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL2dlbmVyYXRlZC9rdWJlcm5ldGVzLWFwaS92MS4xNS8jcXVhbnRpdHktcmVzb3VyY2UtY29yZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ01hcFZvbHVtZVNvdXJjZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xuICBpdGVtcz86IEtleVRvUGF0aFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldFZvbHVtZVNvdXJjZSB7XG4gIHNlY3JldE5hbWU6IHN0cmluZztcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xuICBpdGVtcz86IEtleVRvUGF0aFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEhvc3RQYXRoVm9sdW1lU291cmNlIHtcbiAgdHlwZT86IHN0cmluZztcbiAgcGF0aDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBlcnNpc3RlbnRWb2x1bWVDbGFpbVZvbHVtZVNvdXJjZSB7XG4gIGNsYWltTmFtZTogc3RyaW5nO1xuICByZWFkT25seT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXBoZW1lcmFsVm9sdW1lU291cmNlIHtcbiAgdm9sdW1lQ2xhaW1UZW1wbGF0ZTogUGVyc2lzdGVudFZvbHVtZUNsYWltO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2JlIHtcbiAgZXhlYz86IEV4ZWNBY3Rpb247XG4gIGZhaWx1cmVUaHJlc2hvbGQ/OiBudW1iZXI7XG4gIGh0dHBHZXQ/OiBIVFRQR2V0QWN0aW9uO1xuICBpbml0aWFsRGVsYXlTZWNvbmRzPzogbnVtYmVyO1xuICBwZXJpb2RTZWNvbmRzPzogbnVtYmVyO1xuICBzdWNjZXNzVGhyZXNob2xkPzogbnVtYmVyO1xuICB0Y3BTb2NrZXQ/OiBUQ1BTb2NrZXRBY3Rpb247XG4gIHRpbWVvdXRTZWNvbmRzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4ZWNBY3Rpb24ge1xuICBjb21tYW5kPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSFRUUEhlYWRlciB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRDUFNvY2tldEFjdGlvbiB7XG4gIGhvc3Q/OiBzdHJpbmc7XG4gIHBvcnQ/OiBudW1iZXIgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVm9sdW1lTW91bnQge1xuICBuYW1lOiBzdHJpbmc7XG4gIG1vdW50UGF0aD86IHN0cmluZztcbiAgcmVhZE9ubHk/OiBib29sZWFuO1xuICBzdWJQYXRoPzogc3RyaW5nO1xuICBtb3VudFByb3BhZ2F0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlUmVxdWlyZW1lbnRzIHtcbiAgbGltaXRzPzogU3RyaW5nTWFwO1xuICByZXF1ZXN0cz86IFN0cmluZ01hcDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb250YWluZXJQb3J0IHtcbiAgbmFtZT86IHN0cmluZztcbiAgaG9zdFBvcnQ/OiBudW1iZXI7XG4gIGNvbnRhaW5lclBvcnQ/OiBudW1iZXI7XG4gIHNlcnZpY2VQb3J0PzogbnVtYmVyO1xuICBwcm90b2NvbD86ICdUQ1AnIHwgJ1VEUCc7XG4gIGhvc3RJUD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDZXJ0aWZpY2F0ZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIG5vdEJlZm9yZTogc3RyaW5nO1xuICBub3RBZnRlcjogc3RyaW5nO1xuICBkbnNOYW1lczogc3RyaW5nW107XG4gIHZhbGlkOiBib29sZWFuO1xuICByZWFzb25Db2RlPzpcbiAgICB8IDEgLy8g6K+B5Lmm5qC85byP5pyJ6K+vXG4gICAgfCAyIC8vIOivgeS5puS4jeWcqOacieaViOacn+WGhVxuICAgIHwgMzsgLy8g6K+B5Lmm5L+h5oGv5pyq55+lXG59XG5cbmV4cG9ydCBjb25zdCBBbGJQcm90b2NvbE1hcHBlciA9IHtcbiAgaHR0cDogJ0hUVFAnLFxuICBodHRwczogJ0hUVFBTJyxcbiAgZ3JwYzogJ2dSUEMnLFxuICB0Y3A6ICdUQ1AnLFxuICB1ZHA6ICdVRFAnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgQWxiUHJvdG9jb2wgPSBrZXlvZiB0eXBlb2YgQWxiUHJvdG9jb2xNYXBwZXI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJvbnRlbmRTcGVjIHtcbiAgcG9ydD86IG51bWJlciB8ICcnO1xuICBwcm90b2NvbD86IEFsYlByb3RvY29sO1xuICBzb3VyY2U/OiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIG5hbWVzcGFjZTogc3RyaW5nO1xuICAgIHR5cGU6IHN0cmluZztcbiAgfTtcbiAgYmFja2VuZFByb3RvY29sPzogJ0hUVFAnIHwgJ0hUVFBTJyB8ICdnUlBDJztcbiAgc2VydmljZUdyb3VwPzogU2VydmljZUdyb3VwO1xuICBjZXJ0aWZpY2F0ZV9uYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bGVTZXJ2aWNlIHtcbiAgbmFtZTogc3RyaW5nO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgcG9ydDogbnVtYmVyO1xuICB3ZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlR3JvdXAge1xuICBzZXJ2aWNlczogUnVsZVNlcnZpY2VbXTtcbiAgc2Vzc2lvbl9hZmZpbml0eV9wb2xpY3k/OiBzdHJpbmc7XG4gIHNlc3Npb25fYWZmaW5pdHlfYXR0cmlidXRlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvbGxpbmdVcGRhdGVEYWVtb25TZXQge1xuICBtYXhVbmF2YWlsYWJsZT86IHN0cmluZyB8IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYWVtb25TZXRVcGRhdGVTdHJhdGVneSB7XG4gIHR5cGU/OiBEYWVtb25TZXRVcGRhdGVTdHJhdGVneVR5cGU7XG4gIHJvbGxpbmdVcGRhdGU/OiBSb2xsaW5nVXBkYXRlRGFlbW9uU2V0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhZW1vblNldCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiBEYWVtb25TZXRTcGVjO1xuICBzdGF0dXM/OiBEYWVtb25TZXRTdGF0dXM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGFlbW9uU2V0U3BlYyB7XG4gIHNlbGVjdG9yPzogTGFiZWxTZWxlY3RvcjtcbiAgdGVtcGxhdGU/OiBQb2RUZW1wbGF0ZVNwZWM7XG4gIHVwZGF0ZVN0cmF0ZWd5PzogRGFlbW9uU2V0VXBkYXRlU3RyYXRlZ3k7XG4gIG1pblJlYWR5U2Vjb25kcz86IG51bWJlcjtcbiAgcmV2aXNpb25IaXN0b3J5TGltaXQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIERhZW1vblNldFN0YXR1cyA9IFBhcnRpYWw8e1xuICBjdXJyZW50TnVtYmVyU2NoZWR1bGVkOiBudW1iZXI7XG4gIG51bWJlck1pc3NjaGVkdWxlZDogbnVtYmVyO1xuICBkZXNpcmVkTnVtYmVyU2NoZWR1bGVkOiBudW1iZXI7XG4gIG51bWJlclJlYWR5OiBudW1iZXI7XG4gIG9ic2VydmVkR2VuZXJhdGlvbjogbnVtYmVyO1xuICB1cGRhdGVkTnVtYmVyU2NoZWR1bGVkOiBudW1iZXI7XG4gIG51bWJlclVuYXZhaWxhYmxlOiBudW1iZXI7XG4gIG51bWJlckF2YWlsYWJsZTogbnVtYmVyO1xufT47XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlnTWFwPFQgPSBTdHJpbmdNYXA+IGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgZGF0YT86IFQ7XG4gIGJpbmFyeURhdGE/OiBTdHJpbmdNYXA7XG59XG5cbi8vIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS9nZW5lcmF0ZWQva3ViZXJuZXRlcy1hcGkvdjEuMTEvI2Nyb25qb2JzcGVjLXYxYmV0YTEtYmF0Y2hcbmV4cG9ydCBpbnRlcmZhY2UgQ3JvbkpvYlNwZWMge1xuICBjb25jdXJyZW5jeVBvbGljeT86IHN0cmluZztcbiAgZmFpbGVkSm9ic0hpc3RvcnlMaW1pdD86IG51bWJlciB8ICcnO1xuICBzY2hlZHVsZT86IHN0cmluZztcbiAgc3RhcnRpbmdEZWFkbGluZVNlY29uZHM/OiBudW1iZXIgfCAnJztcbiAgc3VjY2Vzc2Z1bEpvYnNIaXN0b3J5TGltaXQ/OiBudW1iZXIgfCAnJztcbiAgc3VzcGVuZD86IGJvb2xlYW47XG4gIHRpbWVab25lPzogc3RyaW5nO1xuICBqb2JUZW1wbGF0ZT86IEpvYlRlbXBsYXRlU3BlYztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKb2IgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBzcGVjPzogSm9iU3BlYztcbiAgc3RhdHVzPzogSm9iU3RhdHVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEpvYlNwZWMge1xuICBhY3RpdmVEZWFkbGluZVNlY29uZHM/OiBudW1iZXIgfCAnJztcbiAgYmFja29mZkxpbWl0PzogbnVtYmVyIHwgJyc7XG4gIGNvbXBsZXRpb25zPzogbnVtYmVyIHwgJyc7XG4gIG1hbnVhbFNlbGVjdG9yPzogYm9vbGVhbjtcbiAgcGFyYWxsZWxpc20/OiBudW1iZXIgfCAnJztcbiAgc2VsZWN0b3I/OiBMYWJlbFNlbGVjdG9yO1xuICB0ZW1wbGF0ZT86IFBvZFRlbXBsYXRlU3BlYztcbiAgc3RhcnRpbmdEZWFkbGluZVNlY29uZHM/OiBudW1iZXIgfCAnJztcbn1cblxuLy8gaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL2dlbmVyYXRlZC9rdWJlcm5ldGVzLWFwaS92MS4xMS8jam9idGVtcGxhdGVzcGVjLXYxYmV0YTEtYmF0Y2hcbmV4cG9ydCBpbnRlcmZhY2UgSm9iVGVtcGxhdGVTcGVjIHtcbiAgbWV0YWRhdGE/OiBPYmplY3RNZXRhO1xuICBzcGVjPzogSm9iU3BlYztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKb2JTdGF0dXMge1xuICBhY3RpdmU6IG51bWJlciB8ICcnO1xuICBjb21wbGV0aW9uVGltZTogc3RyaW5nO1xuICBjb25kaXRpb25zOiBDb25kaXRpb25bXTtcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIHN1Y2NlZWRlZDogbnVtYmVyO1xuICBmYWlsZWQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcm9uSm9iU3RhdHVzIHtcbiAgYWN0aXZlPzogT2JqZWN0UmVmZXJlbmNlW107XG4gIGxhc3RTY2hlZHVsZVRpbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcm9uSm9iIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IENyb25Kb2JTcGVjO1xuICBzdGF0dXM/OiBDcm9uSm9iU3RhdHVzO1xufVxuXG5leHBvcnQgdHlwZSBOb2RlU3RhdHVzUmVhc29uID1cbiAgfCAnS3ViZWxldEhhc1N1ZmZpY2llbnREaXNrJ1xuICB8ICdLdWJlbGV0SGFzU3VmZmljaWVudE1lbW9yeSdcbiAgfCAnS3ViZWxldEhhc05vRGlza1ByZXNzdXJlJ1xuICB8ICdLdWJlbGV0UmVhZHknO1xuXG5leHBvcnQgdHlwZSBOb2RlU3RhdHVzVHlwZSA9XG4gIHwgJ091dE9mRGlzaydcbiAgfCAnTWVtb3J5UHJlc3N1cmUnXG4gIHwgJ0Rpc2tQcmVzc3VyZSdcbiAgfCAnUmVhZHknO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5vZGVUYWludCB7XG4gIGtleTogc3RyaW5nO1xuICB0aW1lQWRkZWQ/OiBzdHJpbmc7XG4gIGVmZmVjdDogVGFpbnRFZmZlY3Q7XG4gIHZhbHVlPzogc3RyaW5nO1xuICB1bnNjaGVkdWxhYmxlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb2RlIGV4dGVuZHMgS3ViZXJuZXRlc1Jlc291cmNlIHtcbiAgc3BlYz86IHtcbiAgICBwcm92aWRlcklEPzogc3RyaW5nO1xuICAgIHRhaW50cz86IE5vZGVUYWludFtdO1xuICAgIGNvbmZpZ1NvdXJjZT86IHN0cmluZztcbiAgICB1bnNjaGVkdWxhYmxlPzogYm9vbGVhbjtcbiAgICBwb2RDSURSPzogc3RyaW5nO1xuICAgIHBvZENJRFJzPzogc3RyaW5nW107XG4gICAgZXh0ZXJuYWxJRD86IHN0cmluZztcbiAgICBpcD86IHN0cmluZztcbiAgfTtcbiAgc3RhdHVzPzogTm9kZVN0YXR1cztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb2RlU3RhdHVzIHtcbiAgdm9sdW1lc0F0dGFjaGVkOiBib29sZWFuO1xuICBkYWVtb25FbmRwb2ludHM6IHtcbiAgICBrdWJlbGV0RW5kcG9pbnQ6IHtcbiAgICAgIHBvcnQ6IG51bWJlcjtcbiAgICB9O1xuICB9O1xuICBjYXBhY2l0eTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgYWRkcmVzc2VzOiBBcnJheTx7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIGFkZHJlc3M6IHN0cmluZztcbiAgfT47XG4gIGFsbG9jYXRhYmxlOiB7XG4gICAgJ2FscGhhLmt1YmVybmV0ZXMuaW8vbnZpZGlhLWdwdSc6IHN0cmluZztcbiAgICAndGVuY2VudC5jb20vdmN1ZGEtY29yZSc6IHN0cmluZztcbiAgICAndGVuY2VudC5jb20vdmN1ZGEtbWVtb3J5Jzogc3RyaW5nO1xuICAgIHBvZHM6IHN0cmluZztcbiAgICBjcHU6IHN0cmluZztcbiAgICBtZW1vcnk6IHN0cmluZztcbiAgfTtcbiAgaW1hZ2VzOiBBcnJheTx7XG4gICAgc2l6ZUJ5dGVzOiBudW1iZXI7XG4gICAgbmFtZXM6IHN0cmluZ1tdO1xuICB9PjtcbiAgbm9kZUluZm86IHtcbiAgICBrdWJlUHJveHlWZXJzaW9uOiBzdHJpbmc7XG4gICAgb3BlcmF0aW5nU3lzdGVtOiBzdHJpbmc7XG4gICAga2VybmVsVmVyc2lvbjogc3RyaW5nO1xuICAgIHN5c3RlbVVVSUQ6IHN0cmluZztcbiAgICBjb250YWluZXJSdW50aW1lVmVyc2lvbjogc3RyaW5nO1xuICAgIG9zSW1hZ2U6IHN0cmluZztcbiAgICBhcmNoaXRlY3R1cmU6IHN0cmluZztcbiAgICBib290SUQ6IHN0cmluZztcbiAgICBtYWNoaW5lSUQ6IHN0cmluZztcbiAgICBrdWJlbGV0VmVyc2lvbjogc3RyaW5nO1xuICB9O1xuICB2b2x1bWVzSW5Vc2U6IGJvb2xlYW47XG4gIHBoYXNlOiBzdHJpbmc7XG4gIGNvbmRpdGlvbnM6IENvbmRpdGlvbltdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2UgZXh0ZW5kcyBLdWJlcm5ldGVzUmVzb3VyY2Uge1xuICBraW5kOiAnU2VydmljZSc7XG4gIHNwZWM/OiBTZXJ2aWNlU3BlYztcbiAgc3RhdHVzPzoge1xuICAgIGxvYWRCYWxhbmNlcj86IHtcbiAgICAgIGluZ3Jlc3M/OiBBcnJheTx7XG4gICAgICAgIGhvc3RuYW1lPzogc3RyaW5nO1xuICAgICAgICBpcD86IHN0cmluZztcbiAgICAgIH0+O1xuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBTRVJWSUNFX1RZUEVTID0gW1xuICAnQ2x1c3RlcklQJyxcbiAgJ05vZGVQb3J0JyxcbiAgJ0xvYWRCYWxhbmNlcicsXG4gICdFeHRlcm5hbE5hbWUnLFxuXSBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBTRVJWSUNFX1NFU1NJT05fQUZGSU5JVElFUyA9IFsnTm9uZScsICdDbGllbnRJUCddIGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBTZXJ2aWNlVHlwZSA9ICh0eXBlb2YgU0VSVklDRV9UWVBFUylbbnVtYmVyXTtcblxuZXhwb3J0IHR5cGUgU2VydmljZVNlc3Npb25BZmZpbml0eSA9XG4gICh0eXBlb2YgU0VSVklDRV9TRVNTSU9OX0FGRklOSVRJRVMpW251bWJlcl07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZVNwZWMge1xuICBjbHVzdGVySVA/OiBzdHJpbmc7XG4gIGNsdXN0ZXJJUHM/OiBzdHJpbmdbXTtcbiAgZXh0ZXJuYWxJUHM/OiBzdHJpbmdbXTtcbiAgZXh0ZXJuYWxOYW1lPzogc3RyaW5nO1xuICBpcEZhbWlsaWVzPzogWydJUHY0J10gfCBbJ0lQdjYnXSB8IFsnSVB2NCcsICdJUHY2J10gfCBbJ0lQdjYnLCAnSVB2NCddO1xuICBpcEZhbWlseVBvbGljeT86ICdTaW5nbGVTdGFjaycgfCAnUHJlZmVyRHVhbFN0YWNrJyB8ICdSZXF1aXJlRHVhbFN0YWNrJztcbiAgcG9ydHM/OiBTZXJ2aWNlUG9ydFtdO1xuICBzZWxlY3Rvcj86IFN0cmluZ01hcDtcbiAgdHlwZT86IFNlcnZpY2VUeXBlO1xuICBzZXNzaW9uQWZmaW5pdHk/OiBTZXJ2aWNlU2Vzc2lvbkFmZmluaXR5O1xufVxuXG5leHBvcnQgY29uc3QgU0VSVklDRV9QT1JUX0JBU0VfUFJPVE9DT0xTID0gWydUQ1AnLCAnVURQJ10gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBTZXJ2aWNlUG9ydEJhc2VQcm90b2NvbCA9XG4gICh0eXBlb2YgU0VSVklDRV9QT1JUX0JBU0VfUFJPVE9DT0xTKVtudW1iZXJdO1xuXG5leHBvcnQgY29uc3QgU0VSVklDRV9QT1JUX1BST1RPQ09MUyA9IFtcbiAgJ1RDUCcsXG4gICdVRFAnLFxuICAnSFRUUCcsXG4gICdIVFRQUycsXG4gICdIVFRQMicsXG4gICdnUlBDJyxcbl0gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBTZXJ2aWNlUG9ydFByb3RvY29sID0gKHR5cGVvZiBTRVJWSUNFX1BPUlRfUFJPVE9DT0xTKVtudW1iZXJdO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VQb3J0IHtcbiAgbmFtZT86IHN0cmluZztcbiAgbm9kZVBvcnQ/OiBudW1iZXI7XG4gIHBvcnQ/OiBudW1iZXI7XG4gIHByb3RvY29sPzogU2VydmljZVBvcnRCYXNlUHJvdG9jb2w7XG4gIGFwcFByb3RvY29sPzogTG93ZXJjYXNlPFNlcnZpY2VQb3J0UHJvdG9jb2w+O1xuICB0YXJnZXRQb3J0PzogbnVtYmVyIHwgc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlRGVmaW5pdGlvblZlcnNpb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNlcnZlZDogYm9vbGVhbjtcbiAgc3RvcmFnZTogYm9vbGVhbjtcbiAgc2NoZW1hPzoge1xuICAgIG9wZW5BUElWM1NjaGVtYTogT3BlbkFQSVYzU2NoZW1hT2JqZWN0O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlRGVmaW5pdGlvbiBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGtpbmQ6ICdDdXN0b21SZXNvdXJjZURlZmluaXRpb24nO1xuICBzcGVjOiB7XG4gICAgZ3JvdXA6IHN0cmluZztcbiAgICB2ZXJzaW9uOiBzdHJpbmc7XG4gICAgbmFtZXM6IHtcbiAgICAgIHBsdXJhbDogc3RyaW5nO1xuICAgICAgc2luZ3VsYXI6IHN0cmluZztcbiAgICAgIGtpbmQ6IHN0cmluZztcbiAgICAgIGxpc3RLaW5kOiBzdHJpbmc7XG4gICAgfTtcbiAgICBzY29wZTogc3RyaW5nO1xuICAgIHZhbGlkYXRpb246IHtcbiAgICAgIG9wZW5BUElWM1NjaGVtYTogT3BlbkFQSVYzU2NoZW1hT2JqZWN0O1xuICAgIH07XG4gICAgdmVyc2lvbnM6IEN1c3RvbVJlc291cmNlRGVmaW5pdGlvblZlcnNpb25bXTtcbiAgICBwcmVzZXJ2ZVVua25vd25GaWVsZHM6IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZVNwYWNlUmVzb3VyY2VSYXRpbyBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM6IHtcbiAgICBjcHU6IG51bWJlcjtcbiAgICBtZW1vcnk6IG51bWJlcjtcbiAgfTtcbiAgc3RhdHVzOiB7XG4gICAgY2x1c3RlckNQVTogbnVtYmVyO1xuICAgIGNsdXN0ZXJNZW1vcnk6IG51bWJlcjtcbiAgfTtcbn1cblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2t1YmVybmV0ZXMva3ViZXJuZXRlcy9ibG9iLzVhOTk5MzBhYjU3YjJjNzgzNzk2MGIyMWQyYzkyZTk1OGRiOGMzNzcvcGtnL2FwaXMvY29yZS90eXBlcy5nbyNMNTU3NVxuZXhwb3J0IGludGVyZmFjZSBLOHNFdmVudFNlcmllcyB7XG4gIGNvdW50OiBudW1iZXI7XG4gIGxhc3RPYnNlcnZlZFRpbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLOHNFdmVudFNvdXJjZSB7XG4gIGNvbXBvbmVudD86IHN0cmluZztcbiAgaG9zdD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLOHNFdmVudCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIGludm9sdmVkT2JqZWN0PzogT2JqZWN0UmVmZXJlbmNlO1xuICByZWFzb24/OiBzdHJpbmc7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHNvdXJjZT86IEs4c0V2ZW50U291cmNlO1xuICBmaXJzdFRpbWVzdGFtcD86IHN0cmluZztcbiAgbGFzdFRpbWVzdGFtcD86IHN0cmluZztcbiAgY291bnQ/OiBudW1iZXI7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGV2ZW50VGltZT86IHN0cmluZztcbiAgc2VyaWVzPzogSzhzRXZlbnRTZXJpZXM7XG4gIGFjdGlvbj86IHN0cmluZztcbiAgcmVsYXRlZD86IE9iamVjdFJlZmVyZW5jZTtcbiAgcmVwb3J0aW5nQ29udHJvbGxlcj86IHN0cmluZztcbiAgcmVwb3J0aW5nSW5zdGFuY2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VQYXRjaCBleHRlbmRzIEt1YmVybmV0ZXNSZXNvdXJjZSB7XG4gIHNwZWM/OiB7XG4gICAganNvblBhdGNoOiBBcnJheTx7XG4gICAgICBvcDogc3RyaW5nO1xuICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgdmFsdWU6IHN0cmluZztcbiAgICB9PjtcbiAgICB0YXJnZXQ/OiB7XG4gICAgICBhcGlWZXJzaW9uOiBzdHJpbmc7XG4gICAgICBraW5kOiBzdHJpbmc7XG4gICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICB9O1xuICAgIHJlbGVhc2U6IHN0cmluZztcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { NotificationService, SearchComponent } from '@alauda/ui';
|
|
2
2
|
import { HttpParams } from '@angular/common/http';
|
|
3
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener,
|
|
3
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, Output, TemplateRef, ViewChild, } from '@angular/core';
|
|
4
4
|
import { encode } from 'ab64';
|
|
5
5
|
import { debounce } from 'lodash-es';
|
|
6
|
-
import {
|
|
6
|
+
import { Subject } from 'rxjs';
|
|
7
7
|
import { Terminal } from 'xterm';
|
|
8
8
|
import { CanvasAddon } from 'xterm-addon-canvas';
|
|
9
9
|
import { FitAddon } from 'xterm-addon-fit';
|
|
@@ -11,15 +11,12 @@ import { SearchAddon } from 'xterm-addon-search';
|
|
|
11
11
|
import { WebLinksAddon } from 'xterm-addon-web-links';
|
|
12
12
|
import { WebglAddon } from 'xterm-addon-webgl';
|
|
13
13
|
import { ApiGatewayService } from '../../api/public-api';
|
|
14
|
-
import { K8sResourceAction, TOKEN_GLOBAL_NAMESPACE, RESOURCE_TYPES, } from '../../core/public-api';
|
|
15
|
-
import { K8sPermissionService } from '../../permission/k8s-permission.service';
|
|
16
14
|
import { TranslateService } from '../../translate/public-api';
|
|
17
15
|
import { ConnectionStatus, TERMINAL_FONT_LOCAL_STORAGE_KEY, TERMINAL_THEME_LOCAL_STORAGE_KEY, XTERM_DARK_THEME, XTERM_DEFAULT_OPTIONS, XTERM_LIGHT_THEME, } from '../constants';
|
|
18
16
|
import * as i0 from "@angular/core";
|
|
19
17
|
import * as i1 from "../../api/public-api";
|
|
20
18
|
import * as i2 from "@alauda/ui";
|
|
21
19
|
import * as i3 from "../../translate/public-api";
|
|
22
|
-
import * as i4 from "../../permission/k8s-permission.service";
|
|
23
20
|
const _c0 = ["anchor"];
|
|
24
21
|
const _c1 = ["searchInput"];
|
|
25
22
|
const _c2 = a0 => ({ "!tw-visible": a0 });
|
|
@@ -134,8 +131,10 @@ export function initRendererAddon() {
|
|
|
134
131
|
*/
|
|
135
132
|
export class TerminalComponent {
|
|
136
133
|
beforeUnload(event) {
|
|
137
|
-
|
|
138
|
-
|
|
134
|
+
if (this.socket && this.connectionStatus === ConnectionStatus.Connected) {
|
|
135
|
+
event.preventDefault();
|
|
136
|
+
event.returnValue = '';
|
|
137
|
+
}
|
|
139
138
|
}
|
|
140
139
|
unload(_event) {
|
|
141
140
|
this.killProcess();
|
|
@@ -151,13 +150,11 @@ export class TerminalComponent {
|
|
|
151
150
|
(!this.option.notClearWhenReconnect &&
|
|
152
151
|
this.connectionStatus === ConnectionStatus.ReConnecting));
|
|
153
152
|
}
|
|
154
|
-
constructor(apiGateway, notification, translate, cdr
|
|
153
|
+
constructor(apiGateway, notification, translate, cdr) {
|
|
155
154
|
this.apiGateway = apiGateway;
|
|
156
155
|
this.notification = notification;
|
|
157
156
|
this.translate = translate;
|
|
158
157
|
this.cdr = cdr;
|
|
159
|
-
this.k8sPermission = k8sPermission;
|
|
160
|
-
this.globalNamespace = globalNamespace;
|
|
161
158
|
this.ConnectionStatus = ConnectionStatus;
|
|
162
159
|
this.connectionStatusChange = new EventEmitter();
|
|
163
160
|
this.sendData = new EventEmitter();
|
|
@@ -223,26 +220,7 @@ export class TerminalComponent {
|
|
|
223
220
|
};
|
|
224
221
|
this.initSocketConnection = (fallbackCommand) => {
|
|
225
222
|
this.updateConnectionStatus(this.xterm ? ConnectionStatus.ReConnecting : ConnectionStatus.Connecting);
|
|
226
|
-
|
|
227
|
-
.pipe(switchMap(() => {
|
|
228
|
-
const { checkPermissionType, cluster } = this.option;
|
|
229
|
-
if (checkPermissionType === 'cluster' && cluster) {
|
|
230
|
-
return this.k8sPermission.isAllowed({
|
|
231
|
-
type: RESOURCE_TYPES.CLUSTER_VIEW,
|
|
232
|
-
namespace: this.globalNamespace,
|
|
233
|
-
action: K8sResourceAction.UPDATE,
|
|
234
|
-
name: cluster,
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
return of(true);
|
|
238
|
-
}), tap(allow => {
|
|
239
|
-
if (!allow) {
|
|
240
|
-
this.updateConnectionStatus(ConnectionStatus.NoPermission);
|
|
241
|
-
}
|
|
242
|
-
}), take(1),
|
|
243
|
-
// 先前权限验证没通过就不用再尝试 shell 的长连接了
|
|
244
|
-
filter(Boolean), switchMap(() => this.apiGateway.getApiAddress()))
|
|
245
|
-
.subscribe(apiAddress => {
|
|
223
|
+
this.apiGateway.getApiAddress().subscribe(apiAddress => {
|
|
246
224
|
const initialCommand = fallbackCommand || this.option.command || BIN_SH;
|
|
247
225
|
this.initSocket(initialCommand, apiAddress);
|
|
248
226
|
this.initSocketListeners(initialCommand);
|
|
@@ -448,7 +426,7 @@ export class TerminalComponent {
|
|
|
448
426
|
}, 100);
|
|
449
427
|
}
|
|
450
428
|
}
|
|
451
|
-
static { this.ɵfac = function TerminalComponent_Factory(t) { return new (t || TerminalComponent)(i0.ɵɵdirectiveInject(i1.ApiGatewayService), i0.ɵɵdirectiveInject(i2.NotificationService), i0.ɵɵdirectiveInject(i3.TranslateService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)
|
|
429
|
+
static { this.ɵfac = function TerminalComponent_Factory(t) { return new (t || TerminalComponent)(i0.ɵɵdirectiveInject(i1.ApiGatewayService), i0.ɵɵdirectiveInject(i2.NotificationService), i0.ɵɵdirectiveInject(i3.TranslateService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
|
|
452
430
|
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TerminalComponent, selectors: [["acl-terminal"]], viewQuery: function TerminalComponent_Query(rf, ctx) { if (rf & 1) {
|
|
453
431
|
i0.ɵɵviewQuery(_c0, 5);
|
|
454
432
|
i0.ɵɵviewQuery(_c1, 5);
|
|
@@ -537,10 +515,7 @@ export class TerminalComponent {
|
|
|
537
515
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TerminalComponent, [{
|
|
538
516
|
type: Component,
|
|
539
517
|
args: [{ selector: 'acl-terminal', changeDetection: ChangeDetectionStrategy.OnPush, template: "<aui-inline-alert\n *ngIf=\"connectionStatus === ConnectionStatus.Disconnected\"\n type=\"error\"\n>\n <span>{{ 'exec_disconnected_tip' | translate }}</span>\n <button\n aui-button=\"text\"\n (click)=\"reconnect()\"\n >\n {{ 'reconnect' | translate }}\n </button>\n</aui-inline-alert>\n\n<div class=\"acl-terminal__wrapper\">\n <acl-terminal-placeholder\n class=\"tw-bg-n-10\"\n *ngIf=\"connectionStatus === ConnectionStatus.NoPermission\"\n type=\"permission\"\n ></acl-terminal-placeholder>\n <acl-loading-mask [loading]=\"showLoading\"></acl-loading-mask>\n <div\n class=\"acl-terminal tw-invisible\"\n [ngClass]=\"{\n '!tw-visible':\n !showLoading && connectionStatus !== ConnectionStatus.NoPermission\n }\"\n [class.acl-terminal--dark]=\"theme === 'dark'\"\n [class.acl-terminal--light]=\"theme === 'light'\"\n >\n <div class=\"tw-w-full tw-h-0 tw-flex-1 tw-flex tw-flex-col tw-p-12\">\n <div class=\"acl-terminal__header\">\n <div\n class=\"acl-terminal__button\"\n [auiDropdown]=\"codingMenu\"\n [auiDropdownClass]=\"themeClass\"\n >\n <span\n >{{\n coding === 'utf8'\n ? 'UTF-8'\n : coding === 'gb18030'\n ? 'GB 18030'\n : coding.toUpperCase()\n }}\n {{ 'decoding' | translate }}</span\n >\n <aui-icon icon=\"angle_down\"></aui-icon>\n </div>\n <div\n class=\"acl-terminal__button\"\n [auiTooltip]=\"fontTemplate\"\n auiTooltipTrigger=\"click\"\n auiTooltipType=\"info\"\n auiTooltipPosition=\"bottom end\"\n [auiTooltipClass]=\"themeClass\"\n >\n <aui-icon icon=\"gear\"></aui-icon>\n <span>{{ 'font_setting' | translate }}</span>\n </div>\n <div\n class=\"acl-terminal__button\"\n (click)=\"openSearching()\"\n >\n <aui-icon icon=\"magnifier\"></aui-icon>\n <span>{{ 'find' | translate }}</span>\n </div>\n <div\n class=\"acl-terminal__button\"\n (click)=\"switchTheme()\"\n >\n <aui-icon [icon]=\"theme === 'light' ? 'sun' : 'moon'\"></aui-icon>\n <span>{{\n (theme === 'light' ? 'light_theme' : 'dark_theme') | translate\n }}</span>\n </div>\n <ng-container\n *ngTemplateOutlet=\"extraButton; context: { index: index }\"\n ></ng-container>\n </div>\n <div\n class=\"acl-terminal__shell\"\n (keydown)=\"onShellKeyDown($event)\"\n >\n <div\n #anchor\n class=\"acl-terminal__anchor\"\n ></div>\n <div\n *ngIf=\"searching\"\n class=\"acl-terminal__finding\"\n >\n <aui-search\n #searchInput\n size=\"small\"\n [(keyword)]=\"searchKeyword\"\n (keydown)=\"onSearchInputKeyDown($event)\"\n ></aui-search>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n [plain]=\"true\"\n [title]=\"('find_previous' | translate) + ' (Shift + Enter)'\"\n (click)=\"findPrevious()\"\n >\n <aui-icon\n icon=\"arrow_right\"\n style=\"transform: rotate(-90deg)\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n [plain]=\"true\"\n [title]=\"('find_next' | translate) + ' (Enter)'\"\n (click)=\"findNext()\"\n >\n <aui-icon\n icon=\"arrow_right\"\n style=\"transform: rotate(90deg)\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n [plain]=\"true\"\n [title]=\"('close' | translate) + ' (Escape)'\"\n (click)=\"closeSearching()\"\n >\n <aui-icon icon=\"xmark\"></aui-icon>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <ng-container\n *ngTemplateOutlet=\"\n extraContent;\n context: {\n $implicit: option,\n socket: socket$$ | async,\n index: index\n }\n \"\n ></ng-container>\n</div>\n\n<ng-template #codingMenu\n ><aui-menu size=\"small\"\n ><aui-menu-item\n [actived]=\"coding === 'utf8'\"\n (click)=\"coding = 'utf8'\"\n >UTF-8\n </aui-menu-item>\n <aui-menu-item\n [actived]=\"coding === 'gb18030'\"\n (click)=\"coding = 'gb18030'\"\n >GB 18030\n </aui-menu-item>\n </aui-menu></ng-template\n>\n\n<ng-template #fontTemplate>\n <aui-number-input\n [step]=\"1\"\n [precision]=\"1\"\n [min]=\"12\"\n [max]=\"40\"\n [controls]=\"true\"\n [angleControls]=\"true\"\n [value]=\"fontSize\"\n (valueChange)=\"fontSizeChange($event)\"\n >\n <span auiInputAddonAfter>px</span>\n </aui-number-input>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column;width:100%}::ng-deep .acl-terminal__dropdown.aui-tooltip{padding:8px}::ng-deep .acl-terminal__dropdown .aui-number-input__inner{width:100px}::ng-deep .acl-terminal__dropdown.acl-terminal__dropdown--dark{color-scheme:dark;--aui-color-blue: 61, 142, 255;--aui-color-b-0: 54, 116, 204;--aui-color-b-1: 109, 170, 255;--aui-color-b-2: 53, 111, 193;--aui-color-b-3: 50, 101, 173;--aui-color-b-4: 47, 85, 143;--aui-color-b-5: 40, 54, 81;--aui-color-b-6: 42, 64, 102;--aui-color-b-7: 44, 74, 122;--aui-color-primary: var(--aui-color-blue);--aui-color-p-0: var(--aui-color-b-0);--aui-color-p-1: var(--aui-color-b-1);--aui-color-p-2: var(--aui-color-b-2);--aui-color-p-3: var(--aui-color-b-3);--aui-color-p-4: var(--aui-color-b-4);--aui-color-p-5: var(--aui-color-b-5);--aui-color-p-6: var(--aui-color-b-6);--aui-color-p-7: var(--aui-color-b-7);--aui-color-green: 17, 182, 113;--aui-color-g-0: 21, 146, 97;--aui-color-g-1: 76, 200, 148;--aui-color-g-2: 22, 139, 93;--aui-color-g-4: 27, 103, 78;--aui-color-g-6: 31, 74, 66;--aui-color-g-7: 28, 88, 72;--aui-color-yellow: 237, 172, 44;--aui-color-y-0: 186, 138, 45;--aui-color-y-1: 241, 192, 96;--aui-color-y-2: 176, 132, 45;--aui-color-y-4: 126, 98, 47;--aui-color-y-6: 86, 72, 49;--aui-color-y-7: 105, 85, 48;--aui-color-red: 226, 50, 79;--aui-color-r-0: 178, 47, 72;--aui-color-r-1: 233, 101, 123;--aui-color-r-2: 168, 46, 70;--aui-color-r-4: 121, 43, 63;--aui-color-r-6: 83, 41, 57;--aui-color-r-7: 101, 42, 60;--aui-color-n-1: 238, 239, 243;--aui-color-n-2: 200, 201, 205;--aui-color-n-3: 184, 186, 194;--aui-color-n-4: 152, 154, 162;--aui-color-n-5: 144, 147, 159;--aui-color-n-6: 120, 123, 135;--aui-color-n-7: 92, 95, 107;--aui-color-n-8: 67, 70, 82;--aui-color-n-9: 24, 27, 39;--aui-color-n-10: 36, 39, 51;--aui-color-origin-shadow: var(--aui-color-n-9);--aui-color-popper-bg: 56, 59, 71;--aui-color-button-bg: 56, 59, 71;--aui-color-main-bg: var(--aui-color-n-9);--aui-color-divider: var(--aui-color-n-8);--aui-color-border: var(--aui-color-n-7);--aui-color-main-text: var(--aui-color-n-1);--aui-color-secondary-text: var(--aui-color-n-2);--aui-color-help-text: var(--aui-color-n-4);--aui-color-disabled-text: var(--aui-color-n-6);--aui-color-placeholder-text: var(--aui-color-n-6)}::ng-deep .acl-terminal__dropdown.acl-terminal__dropdown--dark .aui-menu,::ng-deep .acl-terminal__dropdown.acl-terminal__dropdown--dark.aui-tooltip{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}::ng-deep .acl-terminal__dropdown.acl-terminal__dropdown--light{color-scheme:light;--aui-color-blue: 0, 122, 245;--aui-color-b-0: 0, 103, 208;--aui-color-b-1: 38, 141, 246;--aui-color-b-2: 77, 162, 248;--aui-color-b-3: 102, 175, 249;--aui-color-b-4: 179, 215, 252;--aui-color-b-5: 204, 228, 253;--aui-color-b-6: 229, 241, 254;--aui-color-b-7: 242, 248, 254;--aui-color-primary: var(--aui-color-blue);--aui-color-p-0: var(--aui-color-b-0);--aui-color-p-1: var(--aui-color-b-1);--aui-color-p-2: var(--aui-color-b-2);--aui-color-p-3: var(--aui-color-b-3);--aui-color-p-4: var(--aui-color-b-4);--aui-color-p-5: var(--aui-color-b-5);--aui-color-p-6: var(--aui-color-b-6);--aui-color-p-7: var(--aui-color-b-7);--aui-color-green: 0, 194, 97;--aui-color-g-0: 0, 165, 82;--aui-color-g-1: 38, 203, 120;--aui-color-g-2: 76, 212, 144;--aui-color-g-4: 179, 236, 207;--aui-color-g-6: 230, 249, 239;--aui-color-g-7: 242, 251, 246;--aui-color-yellow: 245, 163, 0;--aui-color-y-0: 220, 146, 0;--aui-color-y-1: 246, 176, 38;--aui-color-y-2: 248, 190, 77;--aui-color-y-4: 252, 227, 179;--aui-color-y-6: 254, 245, 230;--aui-color-y-7: 254, 250, 243;--aui-color-red: 235, 0, 39;--aui-color-r-0: 199, 0, 33;--aui-color-r-1: 237, 38, 71;--aui-color-r-2: 241, 76, 103;--aui-color-r-4: 249, 179, 190;--aui-color-r-6: 253, 230, 233;--aui-color-r-7: 254, 243, 244;--aui-color-n-1: 50, 52, 55;--aui-color-n-2: 100, 102, 105;--aui-color-n-3: 124, 126, 129;--aui-color-n-4: 150, 152, 155;--aui-color-n-5: 174, 176, 179;--aui-color-n-6: 200, 202, 205;--aui-color-n-7: 212, 214, 217;--aui-color-n-8: 237, 239, 242;--aui-color-n-9: 247, 249, 252;--aui-color-n-10: 255, 255, 255;--aui-color-origin-shadow: var(--aui-color-n-1);--aui-color-popper-bg: var(--aui-color-n-10);--aui-color-button-bg: var(--aui-color-n-9);--aui-color-main-bg: var(--aui-color-n-9);--aui-color-divider: var(--aui-color-n-8);--aui-color-border: var(--aui-color-n-7);--aui-color-main-text: var(--aui-color-n-1);--aui-color-secondary-text: var(--aui-color-n-2);--aui-color-help-text: var(--aui-color-n-4);--aui-color-disabled-text: var(--aui-color-n-6);--aui-color-placeholder-text: var(--aui-color-n-6)}::ng-deep .acl-terminal__dropdown.acl-terminal__dropdown--light .aui-menu,::ng-deep .acl-terminal__dropdown.acl-terminal__dropdown--light.aui-tooltip{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}.acl-terminal{display:flex;flex:1;flex-direction:column;width:100%;background-color:rgb(var(--aui-color-n-9));border-radius:var(--aui-border-radius-l);overflow:hidden}.acl-terminal__wrapper{display:flex;flex-direction:column;flex:1;height:0}.acl-terminal__header{display:flex;justify-content:flex-end;align-items:center;height:var(--aui-line-height-m);margin-bottom:12px;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}.acl-terminal ::ng-deep .acl-terminal__button{cursor:pointer;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-help-text))}.acl-terminal ::ng-deep .acl-terminal__button aui-icon{font-size:var(--aui-icon-size-m)}.acl-terminal ::ng-deep .acl-terminal__button aui-icon:first-child{margin-right:4px}.acl-terminal ::ng-deep .acl-terminal__button aui-icon:last-child{margin-left:4px}.acl-terminal ::ng-deep .acl-terminal__button+.acl-terminal__button{margin-left:12px}.acl-terminal__shell{width:100%;height:100%;padding:8px;background-color:rgb(var(--aui-color-n-10));border:1px solid rgb(var(--aui-color-n-8));border-radius:var(--aui-border-radius-l);overflow:hidden;position:relative}.acl-terminal__anchor{width:100%;height:100%;overflow:hidden}.acl-terminal__finding{position:absolute;top:8px;right:8px;padding:8px;z-index:100;display:flex;align-items:center;background-color:rgb(var(--aui-color-popper-bg));border-radius:var(--aui-border-radius-m)}.acl-terminal__finding .aui-input{margin-right:8px}.acl-terminal--dark{color-scheme:dark;--aui-color-blue: 61, 142, 255;--aui-color-b-0: 54, 116, 204;--aui-color-b-1: 109, 170, 255;--aui-color-b-2: 53, 111, 193;--aui-color-b-3: 50, 101, 173;--aui-color-b-4: 47, 85, 143;--aui-color-b-5: 40, 54, 81;--aui-color-b-6: 42, 64, 102;--aui-color-b-7: 44, 74, 122;--aui-color-primary: var(--aui-color-blue);--aui-color-p-0: var(--aui-color-b-0);--aui-color-p-1: var(--aui-color-b-1);--aui-color-p-2: var(--aui-color-b-2);--aui-color-p-3: var(--aui-color-b-3);--aui-color-p-4: var(--aui-color-b-4);--aui-color-p-5: var(--aui-color-b-5);--aui-color-p-6: var(--aui-color-b-6);--aui-color-p-7: var(--aui-color-b-7);--aui-color-green: 17, 182, 113;--aui-color-g-0: 21, 146, 97;--aui-color-g-1: 76, 200, 148;--aui-color-g-2: 22, 139, 93;--aui-color-g-4: 27, 103, 78;--aui-color-g-6: 31, 74, 66;--aui-color-g-7: 28, 88, 72;--aui-color-yellow: 237, 172, 44;--aui-color-y-0: 186, 138, 45;--aui-color-y-1: 241, 192, 96;--aui-color-y-2: 176, 132, 45;--aui-color-y-4: 126, 98, 47;--aui-color-y-6: 86, 72, 49;--aui-color-y-7: 105, 85, 48;--aui-color-red: 226, 50, 79;--aui-color-r-0: 178, 47, 72;--aui-color-r-1: 233, 101, 123;--aui-color-r-2: 168, 46, 70;--aui-color-r-4: 121, 43, 63;--aui-color-r-6: 83, 41, 57;--aui-color-r-7: 101, 42, 60;--aui-color-n-1: 238, 239, 243;--aui-color-n-2: 200, 201, 205;--aui-color-n-3: 184, 186, 194;--aui-color-n-4: 152, 154, 162;--aui-color-n-5: 144, 147, 159;--aui-color-n-6: 120, 123, 135;--aui-color-n-7: 92, 95, 107;--aui-color-n-8: 67, 70, 82;--aui-color-n-9: 24, 27, 39;--aui-color-n-10: 36, 39, 51;--aui-color-origin-shadow: var(--aui-color-n-9);--aui-color-popper-bg: 56, 59, 71;--aui-color-button-bg: 56, 59, 71;--aui-color-main-bg: var(--aui-color-n-9);--aui-color-divider: var(--aui-color-n-8);--aui-color-border: var(--aui-color-n-7);--aui-color-main-text: var(--aui-color-n-1);--aui-color-secondary-text: var(--aui-color-n-2);--aui-color-help-text: var(--aui-color-n-4);--aui-color-disabled-text: var(--aui-color-n-6);--aui-color-placeholder-text: var(--aui-color-n-6)}.acl-terminal--light{color-scheme:light;--aui-color-blue: 0, 122, 245;--aui-color-b-0: 0, 103, 208;--aui-color-b-1: 38, 141, 246;--aui-color-b-2: 77, 162, 248;--aui-color-b-3: 102, 175, 249;--aui-color-b-4: 179, 215, 252;--aui-color-b-5: 204, 228, 253;--aui-color-b-6: 229, 241, 254;--aui-color-b-7: 242, 248, 254;--aui-color-primary: var(--aui-color-blue);--aui-color-p-0: var(--aui-color-b-0);--aui-color-p-1: var(--aui-color-b-1);--aui-color-p-2: var(--aui-color-b-2);--aui-color-p-3: var(--aui-color-b-3);--aui-color-p-4: var(--aui-color-b-4);--aui-color-p-5: var(--aui-color-b-5);--aui-color-p-6: var(--aui-color-b-6);--aui-color-p-7: var(--aui-color-b-7);--aui-color-green: 0, 194, 97;--aui-color-g-0: 0, 165, 82;--aui-color-g-1: 38, 203, 120;--aui-color-g-2: 76, 212, 144;--aui-color-g-4: 179, 236, 207;--aui-color-g-6: 230, 249, 239;--aui-color-g-7: 242, 251, 246;--aui-color-yellow: 245, 163, 0;--aui-color-y-0: 220, 146, 0;--aui-color-y-1: 246, 176, 38;--aui-color-y-2: 248, 190, 77;--aui-color-y-4: 252, 227, 179;--aui-color-y-6: 254, 245, 230;--aui-color-y-7: 254, 250, 243;--aui-color-red: 235, 0, 39;--aui-color-r-0: 199, 0, 33;--aui-color-r-1: 237, 38, 71;--aui-color-r-2: 241, 76, 103;--aui-color-r-4: 249, 179, 190;--aui-color-r-6: 253, 230, 233;--aui-color-r-7: 254, 243, 244;--aui-color-n-1: 50, 52, 55;--aui-color-n-2: 100, 102, 105;--aui-color-n-3: 124, 126, 129;--aui-color-n-4: 150, 152, 155;--aui-color-n-5: 174, 176, 179;--aui-color-n-6: 200, 202, 205;--aui-color-n-7: 212, 214, 217;--aui-color-n-8: 237, 239, 242;--aui-color-n-9: 247, 249, 252;--aui-color-n-10: 255, 255, 255;--aui-color-origin-shadow: var(--aui-color-n-1);--aui-color-popper-bg: var(--aui-color-n-10);--aui-color-button-bg: var(--aui-color-n-9);--aui-color-main-bg: var(--aui-color-n-9);--aui-color-divider: var(--aui-color-n-8);--aui-color-border: var(--aui-color-n-7);--aui-color-main-text: var(--aui-color-n-1);--aui-color-secondary-text: var(--aui-color-n-2);--aui-color-help-text: var(--aui-color-n-4);--aui-color-disabled-text: var(--aui-color-n-6);--aui-color-placeholder-text: var(--aui-color-n-6)}.acl-terminal--dark .acl-terminal__finding{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.75)}.acl-terminal--light .acl-terminal__finding{box-shadow:0 2px 8px rgba(var(--aui-color-origin-shadow),.2)}\n"] }]
|
|
540
|
-
}], () => [{ type: i1.ApiGatewayService }, { type: i2.NotificationService }, { type: i3.TranslateService }, { type: i0.ChangeDetectorRef }, {
|
|
541
|
-
type: Inject,
|
|
542
|
-
args: [TOKEN_GLOBAL_NAMESPACE]
|
|
543
|
-
}] }], { option: [{
|
|
518
|
+
}], () => [{ type: i1.ApiGatewayService }, { type: i2.NotificationService }, { type: i3.TranslateService }, { type: i0.ChangeDetectorRef }], { option: [{
|
|
544
519
|
type: Input
|
|
545
520
|
}], index: [{
|
|
546
521
|
type: Input
|
|
@@ -575,4 +550,4 @@ function decode(coding, data) {
|
|
|
575
550
|
const decoder = new TextDecoder(coding);
|
|
576
551
|
return decoder.decode(dataView);
|
|
577
552
|
}
|
|
578
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2V4ZWMvdGVybWluYWwvY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2V4ZWMvdGVybWluYWwvdGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFJTCxNQUFNLEVBRU4sV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDakMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUs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LElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hDLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNsQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTm90aWZpY2F0aW9uU2VydmljZSwgU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZW5jb2RlIH0gZnJvbSAnYWI2NCc7XG5pbXBvcnQgeyBkZWJvdW5jZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG9mLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHRha2UsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGVybWluYWwgfSBmcm9tICd4dGVybSc7XG5pbXBvcnQgeyBDYW52YXNBZGRvbiB9IGZyb20gJ3h0ZXJtLWFkZG9uLWNhbnZhcyc7XG5pbXBvcnQgeyBGaXRBZGRvbiB9IGZyb20gJ3h0ZXJtLWFkZG9uLWZpdCc7XG5pbXBvcnQgeyBTZWFyY2hBZGRvbiB9IGZyb20gJ3h0ZXJtLWFkZG9uLXNlYXJjaCc7XG5pbXBvcnQgeyBXZWJMaW5rc0FkZG9uIH0gZnJvbSAneHRlcm0tYWRkb24td2ViLWxpbmtzJztcbmltcG9ydCB7IFdlYmdsQWRkb24gfSBmcm9tICd4dGVybS1hZGRvbi13ZWJnbCc7XG5cbmltcG9ydCB7IEFwaUdhdGV3YXlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXBpL3B1YmxpYy1hcGknO1xuaW1wb3J0IHtcbiAgSzhzUmVzb3VyY2VBY3Rpb24sXG4gIFRPS0VOX0dMT0JBTF9OQU1FU1BBQ0UsXG4gIFJFU09VUkNFX1RZUEVTLFxufSBmcm9tICcuLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgSzhzUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9wZXJtaXNzaW9uL2s4cy1wZXJtaXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3RyYW5zbGF0ZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7XG4gIENvbm5lY3Rpb25TdGF0dXMsXG4gIFRFUk1JTkFMX0ZPTlRfTE9DQUxfU1RPUkFHRV9LRVksXG4gIFRFUk1JTkFMX1RIRU1FX0xPQ0FMX1NUT1JBR0VfS0VZLFxuICBYVEVSTV9EQVJLX1RIRU1FLFxuICBYVEVSTV9ERUZBVUxUX09QVElPTlMsXG4gIFhURVJNX0xJR0hUX1RIRU1FLFxufSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgVGVybWluYWxPcHRpb24gfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBCSU5fU0ggPSAnL2Jpbi9zaCc7XG5cbmV4cG9ydCBjb25zdCBFWEVDX0ZBSUxFRF9NRVNTQUdFX0NPTlRBSU5FUkQgPSBgSW50ZXJuYWwgZXJyb3Igb2NjdXJyZWQ6IGVycm9yIGV4ZWN1dGluZyBjb21tYW5kIGluIGNvbnRhaW5lcmA7XG5leHBvcnQgY29uc3QgRVhFQ19GQUlMRURfTUVTU0FHRV9ET0NLRVIgPSBgT0NJIHJ1bnRpbWUgZXhlYyBmYWlsZWQ6IGV4ZWMgZmFpbGVkOiB1bmFibGUgdG8gc3RhcnQgY29udGFpbmVyIHByb2Nlc3NgO1xuZXhwb3J0IGNvbnN0IE5PX1BFUk1JU1NJT05fQ09ERSA9IDQwXzAwMTtcblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRSZW5kZXJlckFkZG9uKCkge1xuICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgaWYgKGNhbnZhcy5nZXRDb250ZXh0KCd3ZWJnbDInKSkge1xuICAgIHJldHVybiBuZXcgV2ViZ2xBZGRvbigpO1xuICB9XG4gIHJldHVybiBuZXcgQ2FudmFzQWRkb24oKTtcbn1cblxuLyoqXG4gKiBGb3IgZGlzcGF0Y2hpbmcga2V5Ym9hcmQgZXZlbnRzIGF1dG9tYXRpY2FsbHkgdG8geHRlcm0sXG4gKiBwbGVhc2UgdmlldyBodHRwczovL3d3dy5waHlzaWNzLnVkZWwuZWR1L353YXRzb24vc2NlbjEwMy9hc2NpaS5odG1sIGZvciByZWZlcmVuY2UuXG4gKlxuICogRm9yIGluc3RhbmNlLCBpZiB5b3Ugd2FudCB0byBkaXNwYXRjaCBgQ3RybCtDYCB0byB4dGVybSwgeW91IHNob3VsZCBkaXNwYXRjaCBgXFx4MDNgKGFrYSBgXFx1MDAwM2ApIHRvIHRoZSBzb2NrZXQuXG4gKlxuICogYGBgdHNcbiAqIHNvY2tldC5zZW5kKCcwJyArIGVuY29kZSgnXFx1MDAwMycpKVxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC10ZXJtaW5hbCcsXG4gIHRlbXBsYXRlVXJsOiAndGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWydzdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUZXJtaW5hbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQge1xuICBDb25uZWN0aW9uU3RhdHVzID0gQ29ubmVjdGlvblN0YXR1cztcblxuICBASW5wdXQoKVxuICBvcHRpb246IFRlcm1pbmFsT3B0aW9uO1xuXG4gIEBJbnB1dCgpXG4gIGluZGV4OiBudW1iZXI7XG5cbiAgQElucHV0KClcbiAgZXh0cmFCdXR0b246IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpXG4gIGV4dHJhQ29udGVudDogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IGNvbm5lY3Rpb25TdGF0dXNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPENvbm5lY3Rpb25TdGF0dXM+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IHNlbmREYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IHNvY2tldFJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxXZWJTb2NrZXQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IGZhbGxiYWNrU2hlbGwgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBAVmlld0NoaWxkKCdhbmNob3InKVxuICBhbmNob3JSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaElucHV0JylcbiAgc2VhcmNoSW5wdXRSZWY6IFNlYXJjaENvbXBvbmVudDtcblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6YmVmb3JldW5sb2FkJywgWyckZXZlbnQnXSlcbiAgYmVmb3JlVW5sb2FkKGV2ZW50OiBCZWZvcmVVbmxvYWRFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQucmV0dXJuVmFsdWUgPSAnJztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzp1bmxvYWQnLCBbJyRldmVudCddKVxuICB1bmxvYWQoX2V2ZW50OiBCZWZvcmVVbmxvYWRFdmVudCkge1xuICAgIHRoaXMua2lsbFByb2Nlc3MoKTtcbiAgfVxuXG4gIHRoZW1lOiAnbGlnaHQnIHwgJ2RhcmsnID1cbiAgICBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShURVJNSU5BTF9USEVNRV9MT0NBTF9TVE9SQUdFX0tFWSkgPT09ICdsaWdodCdcbiAgICAgID8gJ2xpZ2h0J1xuICAgICAgOiAnZGFyayc7XG5cbiAgZm9udFNpemU6IG51bWJlciA9XG4gICAgK2xvY2FsU3RvcmFnZS5nZXRJdGVtKFRFUk1JTkFMX0ZPTlRfTE9DQUxfU1RPUkFHRV9LRVkpIHx8XG4gICAgWFRFUk1fREVGQVVMVF9PUFRJT05TLmZvbnRTaXplO1xuXG4gIHNlYXJjaGluZyA9IGZhbHNlO1xuICBzZWFyY2hLZXl3b3JkID0gJyc7XG4gIGNvZGluZyA9ICd1dGY4JztcbiAgY29ubmVjdGlvblN0YXR1czogQ29ubmVjdGlvblN0YXR1cyA9IENvbm5lY3Rpb25TdGF0dXMuQ29ubmVjdGluZztcbiAgY29tbWFuZEhhc1J1biA9IGZhbHNlO1xuXG4gIHh0ZXJtOiBUZXJtaW5hbDtcbiAgcHJpdmF0ZSBzZWFyY2hBZGRvbjogU2VhcmNoQWRkb247XG4gIHByaXZhdGUgZml0QWRkb246IEZpdEFkZG9uO1xuICBwcml2YXRlIHNvY2tldDogV2ViU29ja2V0O1xuICBwcml2YXRlIHBpbmc6IG51bWJlcjtcblxuICBzb2NrZXQkJCA9IG5ldyBTdWJqZWN0PFdlYlNvY2tldD4oKTtcblxuICBzaG91bGRGYWxsQmFja09uQ2xvc2UgPSBmYWxzZTtcblxuICBnZXQgdGhlbWVDbGFzcygpIHtcbiAgICByZXR1cm4gKFxuICAgICAgJ2FjbC10ZXJtaW5hbF9fZHJvcGRvd24gJyArXG4gICAgICAodGhpcy50aGVtZSA9PT0gJ2xpZ2h0J1xuICAgICAgICA/ICdhY2wtdGVybWluYWxfX2Ryb3Bkb3duLS1saWdodCdcbiAgICAgICAgOiAnYWNsLXRlcm1pbmFsX19kcm9wZG93bi0tZGFyaycpXG4gICAgKTtcbiAgfVxuXG4gIGdldCBzaG93TG9hZGluZygpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5jb25uZWN0aW9uU3RhdHVzID09PSBDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RpbmcgfHxcbiAgICAgICghdGhpcy5vcHRpb24ubm90Q2xlYXJXaGVuUmVjb25uZWN0ICYmXG4gICAgICAgIHRoaXMuY29ubmVjdGlvblN0YXR1cyA9PT0gQ29ubmVjdGlvblN0YXR1cy5SZUNvbm5lY3RpbmcpXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBpR2F0ZXdheTogQXBpR2F0ZXdheVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBub3RpZmljYXRpb246IE5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgazhzUGVybWlzc2lvbjogSzhzUGVybWlzc2lvblNlcnZpY2UsXG4gICAgQEluamVjdChUT0tFTl9HTE9CQUxfTkFNRVNQQUNFKSBwcml2YXRlIHJlYWRvbmx5IGdsb2JhbE5hbWVzcGFjZTogc3RyaW5nLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbml0U29ja2V0Q29ubmVjdGlvbigpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyBvcHRpb24gfTogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICh0aGlzLnh0ZXJtICYmIG9wdGlvbikge1xuICAgICAgdGhpcy5yZWNvbm5lY3QoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmNsb3NlU29ja2V0KCk7XG4gICAgdGhpcy54dGVybT8uZGlzcG9zZSgpO1xuICB9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy54dGVybT8uZm9jdXMoKTtcbiAgfVxuXG4gIHJlY29ubmVjdCgpIHtcbiAgICB0aGlzLmNvbW1hbmRIYXNSdW4gPSBmYWxzZTtcbiAgICB0aGlzLmNsb3NlU29ja2V0KCk7XG4gICAgdGhpcy5pbml0U29ja2V0Q29ubmVjdGlvbigpO1xuICB9XG5cbiAga2lsbFByb2Nlc3MoKSB7XG4gICAgaWYgKHRoaXMuc29ja2V0KSB7XG4gICAgICB0aGlzLnNvY2tldC5zZW5kKCcwJyArIGVuY29kZSgnXFx1MDAwM1xcclxcbicpKTtcbiAgICAgIHRoaXMuc29ja2V0LnNlbmQoJzAnICsgZW5jb2RlKCdleGl0XFxyXFxuJykpO1xuICAgIH1cbiAgfVxuXG4gIHN3aXRjaFRoZW1lKCkge1xuICAgIHRoaXMudGhlbWUgPSB0aGlzLnRoZW1lID09PSAnbGlnaHQnID8gJ2RhcmsnIDogJ2xpZ2h0JztcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShURVJNSU5BTF9USEVNRV9MT0NBTF9TVE9SQUdFX0tFWSwgdGhpcy50aGVtZSk7XG4gICAgdGhpcy54dGVybS5vcHRpb25zLnRoZW1lID1cbiAgICAgIHRoaXMudGhlbWUgPT09ICdsaWdodCcgPyBYVEVSTV9MSUdIVF9USEVNRSA6IFhURVJNX0RBUktfVEhFTUU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBmb250U2l6ZUNoYW5nZShzaXplOiBudW1iZXIpIHtcbiAgICB0aGlzLmZvbnRTaXplID0gc2l6ZTtcbiAgICB0aGlzLnh0ZXJtLm9wdGlvbnMuZm9udFNpemUgPSBzaXplO1xuICAgIHRoaXMuZml0QWRkb24uZml0KCk7XG5cbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShURVJNSU5BTF9GT05UX0xPQ0FMX1NUT1JBR0VfS0VZLCBzaXplICsgJycpO1xuICB9XG5cbiAgb3BlblNlYXJjaGluZygpIHtcbiAgICB0aGlzLnNlYXJjaGluZyA9IHRydWU7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMuc2VhcmNoSW5wdXRSZWYuZm9jdXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGNsb3NlU2VhcmNoaW5nKCkge1xuICAgIHRoaXMuc2VhcmNoaW5nID0gZmFsc2U7XG4gICAgdGhpcy5zZWFyY2hLZXl3b3JkID0gJyc7XG4gICAgdGhpcy5maW5kTmV4dCgpO1xuICAgIHRoaXMueHRlcm0/LmZvY3VzKCk7XG4gIH1cblxuICBvblNoZWxsS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmICgoZXZlbnQubWV0YUtleSB8fCBldmVudC5jdHJsS2V5KSAmJiBldmVudC5jb2RlID09PSAnS2V5RicpIHtcbiAgICAgIHRoaXMub3BlblNlYXJjaGluZygpO1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIG9uU2VhcmNoSW5wdXRLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGV2ZW50LmNvZGUgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmNsb3NlU2VhcmNoaW5nKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5jb2RlID09PSAnRW50ZXInKSB7XG4gICAgICBpZiAoZXZlbnQuc2hpZnRLZXkpIHtcbiAgICAgICAgdGhpcy5maW5kUHJldmlvdXMoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZmluZE5leHQoKTtcbiAgICAgIH1cbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFNlYXJjaE9wdGlvbnMoKSB7XG4gICAgY29uc3QgdGhlbWUgPSB0aGlzLnRoZW1lID09PSAnbGlnaHQnID8gWFRFUk1fTElHSFRfVEhFTUUgOiBYVEVSTV9EQVJLX1RIRU1FO1xuICAgIHJldHVybiB7XG4gICAgICBkZWNvcmF0aW9uczoge1xuICAgICAgICBtYXRjaEJhY2tncm91bmQ6IHRoZW1lLnNlbGVjdGlvbkluYWN0aXZlQmFja2dyb3VuZCxcbiAgICAgICAgbWF0Y2hPdmVydmlld1J1bGVyOiB0aGVtZS5zZWxlY3Rpb25JbmFjdGl2ZUJhY2tncm91bmQsXG4gICAgICAgIGFjdGl2ZU1hdGNoQmFja2dyb3VuZDogdGhlbWUuc2VsZWN0aW9uQmFja2dyb3VuZCxcbiAgICAgICAgYWN0aXZlTWF0Y2hDb2xvck92ZXJ2aWV3UnVsZXI6IHRoZW1lLnNlbGVjdGlvbkJhY2tncm91bmQsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBmaW5kTmV4dCgpIHtcbiAgICB0aGlzLnNlYXJjaEFkZG9uLmZpbmROZXh0KHRoaXMuc2VhcmNoS2V5d29yZCwgdGhpcy5nZXRTZWFyY2hPcHRpb25zKCkpO1xuICB9XG5cbiAgZmluZFByZXZpb3VzKCkge1xuICAgIHRoaXMuc2VhcmNoQWRkb24uZmluZFByZXZpb3VzKHRoaXMuc2VhcmNoS2V5d29yZCwgdGhpcy5nZXRTZWFyY2hPcHRpb25zKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0WHRlcm0oKSB7XG4gICAgdGhpcy54dGVybSA9IG5ldyBUZXJtaW5hbCh7XG4gICAgICAuLi5YVEVSTV9ERUZBVUxUX09QVElPTlMsXG4gICAgICB0aGVtZTogdGhpcy50aGVtZSA9PT0gJ2xpZ2h0JyA/IFhURVJNX0xJR0hUX1RIRU1FIDogWFRFUk1fREFSS19USEVNRSxcbiAgICAgIGZvbnRTaXplOiB0aGlzLmZvbnRTaXplLFxuICAgICAgYWxsb3dQcm9wb3NlZEFwaTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHRoaXMueHRlcm0ubG9hZEFkZG9uKHRoaXMuaW5pdFNlYXJjaEFkZG9uKCkpO1xuICAgIHRoaXMuZml0QWRkb24gPSB0aGlzLmluaXRGaXRBZGRvbigpO1xuICAgIHRoaXMueHRlcm0ubG9hZEFkZG9uKHRoaXMuZml0QWRkb24pO1xuICAgIHRoaXMueHRlcm0ubG9hZEFkZG9uKG5ldyBXZWJMaW5rc0FkZG9uKCkpO1xuICAgIHRoaXMueHRlcm0ubG9hZEFkZG9uKGluaXRSZW5kZXJlckFkZG9uKCkpO1xuXG4gICAgdGhpcy54dGVybS5vcGVuKHRoaXMuYW5jaG9yUmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICB0aGlzLmZpdEFkZG9uLmZpdCgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy54dGVybS5vbkRhdGEoKGRhdGE6IHN0cmluZykgPT4ge1xuICAgICAgaWYgKHRoaXMuY29ubmVjdGlvblN0YXR1cyA9PT0gQ29ubmVjdGlvblN0YXR1cy5Db25uZWN0ZWQpIHtcbiAgICAgICAgdGhpcy5jb21tYW5kSGFzUnVuID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5zb2NrZXQuc2VuZCgnMCcgKyBlbmNvZGUoZGF0YSkpO1xuICAgICAgICB0aGlzLnNlbmREYXRhLmVtaXQoZGF0YSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy54dGVybS5vblNlbGVjdGlvbkNoYW5nZSgoKSA9PiB7XG4gICAgICBjb25zdCBzZWxlY3Rpb24gPSB0aGlzLnh0ZXJtLmdldFNlbGVjdGlvbigpLnRyaW0oKTtcbiAgICAgIGlmIChzZWxlY3Rpb24pIHtcbiAgICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoc2VsZWN0aW9uKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEZpdEFkZG9uKCkge1xuICAgIGNvbnN0IGZpdEFkZG9uID0gbmV3IEZpdEFkZG9uKCk7XG5cbiAgICBjb25zdCByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcihcbiAgICAgIGRlYm91bmNlKChbZW50cnldKSA9PiB7XG4gICAgICAgIGlmIChlbnRyeS5jb250ZW50UmVjdC53aWR0aCAhPT0gMCkge1xuICAgICAgICAgIGZpdEFkZG9uLmZpdCgpO1xuICAgICAgICAgIHRoaXMucmVzaXplUmVtb3RlVGVybWluYWwoKTtcbiAgICAgICAgfVxuICAgICAgfSwgMjAwKSxcbiAgICApO1xuXG4gICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmFuY2hvclJlZi5uYXRpdmVFbGVtZW50KTtcblxuICAgIHJldHVybiBmaXRBZGRvbjtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFNlYXJjaEFkZG9uKCkge1xuICAgIHRoaXMuc2VhcmNoQWRkb24gPSBuZXcgU2VhcmNoQWRkb24oKTtcbiAgICByZXR1cm4gdGhpcy5zZWFyY2hBZGRvbjtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFNvY2tldChpbml0aWFsQ29tbWFuZDogc3RyaW5nLCBhcGlBZGRyZXNzOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5zb2NrZXQpIHtcbiAgICAgIHRoaXMuc29ja2V0LmNsb3NlKCk7XG4gICAgfVxuXG4gICAgY29uc3Qge1xuICAgICAgY2x1c3RlcixcbiAgICAgIG5hbWVzcGFjZSxcbiAgICAgIHBvZCxcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIHVzZXIgPSAncm9vdCcsXG4gICAgICBjbWQsXG4gICAgICBhZHZhbmNlQXBpLFxuICAgIH0gPSB0aGlzLm9wdGlvbjtcblxuICAgIGNvbnN0IGNvbW1hbmQgPSBjbWRcbiAgICAgID8gWydzaCcsICctYycsIGNtZF1cbiAgICAgIDogdXNlciA9PT0gJ3Jvb3QnXG4gICAgICAgID8gaW5pdGlhbENvbW1hbmQuc3BsaXQoJyAnKVxuICAgICAgICA6IFsnc2gnLCAnLWMnLCBgc3UgLXAgJHt1c2VyfSAtYyBcIiR7aW5pdGlhbENvbW1hbmR9XCJgXTtcblxuICAgIGNvbnN0IGFwaSA9IGFkdmFuY2VBcGlcbiAgICAgID8gJy9hdXRoL3YxL3BvZC9zaGVsbCdcbiAgICAgIDogYC9rdWJlcm5ldGVzLyR7Y2x1c3Rlcn0vYXBpL3YxL25hbWVzcGFjZXMvJHtuYW1lc3BhY2V9L3BvZHMvJHtwb2R9L2V4ZWNgO1xuXG4gICAgdGhpcy5zb2NrZXQgPSBuZXcgV2ViU29ja2V0KFxuICAgICAgYXBpQWRkcmVzcy5yZXBsYWNlKC9eaHR0cC8sICd3cycpICtcbiAgICAgICAgYCR7YXBpfT8ke25ldyBIdHRwUGFyYW1zKHtcbiAgICAgICAgICBmcm9tT2JqZWN0OiB7XG4gICAgICAgICAgICBzdGRpbjogdHJ1ZSxcbiAgICAgICAgICAgIHN0ZG91dDogdHJ1ZSxcbiAgICAgICAgICAgIHN0ZGVycjogdHJ1ZSxcbiAgICAgICAgICAgIHR0eTogdHJ1ZSxcbiAgICAgICAgICAgIGNvbnRhaW5lcixcbiAgICAgICAgICAgIGNvbW1hbmQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSkudG9TdHJpbmcoKX1gLFxuICAgICAgWydiYXNlNjQuY2hhbm5lbC5rOHMuaW8nXSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBpbml0U29ja2V0TGlzdGVuZXJzID0gKGluaXRpYWxDb21tYW5kOiBzdHJpbmcpID0+IHtcbiAgICBsZXQgbmVlZENsZWFyOiBib29sZWFuO1xuXG4gICAgdGhpcy5zb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcignb3BlbicsICgpID0+IHtcbiAgICAgIG5lZWRDbGVhciA9IHRydWU7XG4gICAgICB0aGlzLnJlc2l6ZVJlbW90ZVRlcm1pbmFsKCk7XG4gICAgICB0aGlzLnNvY2tldFJlYWR5LmVtaXQodGhpcy5zb2NrZXQpO1xuICAgICAgdGhpcy5zb2NrZXQkJC5uZXh0KHRoaXMuc29ja2V0KTtcbiAgICAgIHRoaXMucGluZyA9IHdpbmRvdy5zZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc29ja2V0LnNlbmQoJzAnKTtcbiAgICAgIH0sIDUwMDApO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIChldmVudDogTWVzc2FnZUV2ZW50PHN0cmluZz4pID0+IHtcbiAgICAgIHRoaXMudXBkYXRlQ29ubmVjdGlvblN0YXR1cyhDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RlZCk7XG4gICAgICBpZiAoIXRoaXMueHRlcm0pIHtcbiAgICAgICAgdGhpcy5pbml0WHRlcm0oKTtcbiAgICAgIH1cbiAgICAgIGlmIChuZWVkQ2xlYXIpIHtcbiAgICAgICAgbmVlZENsZWFyID0gZmFsc2U7XG5cbiAgICAgICAgaWYgKCF0aGlzLm9wdGlvbi5ub3RDbGVhcldoZW5SZWNvbm5lY3QpIHtcbiAgICAgICAgICB0aGlzLnh0ZXJtLnJlc2V0KCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy54dGVybS5idWZmZXIuYWN0aXZlLnR5cGUgPT09ICdhbHRlcm5hdGUnKSB7XG4gICAgICAgICAgLy8gZXhpdCBhbHRlcm5hdGUgc2NyZWVuLiBBSVQtNDYzOTFcbiAgICAgICAgICB0aGlzLnh0ZXJtLndyaXRlKCdcXHUwMDFCWz8xMDQ5bCcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMueHRlcm0uZm9jdXMoKTtcbiAgICAgIGNvbnN0IHRleHQgPSBkZWNvZGUodGhpcy5jb2RpbmcsIGV2ZW50LmRhdGEuc2xpY2UoMSkpO1xuICAgICAgdGhpcy54dGVybS53cml0ZSh0ZXh0KTtcbiAgICAgIGlmIChcbiAgICAgICAgKHRleHQuaW5jbHVkZXMoRVhFQ19GQUlMRURfTUVTU0FHRV9DT05UQUlORVJEKSB8fFxuICAgICAgICAgIHRleHQuaW5jbHVkZXMoRVhFQ19GQUlMRURfTUVTU0FHRV9ET0NLRVIpKSAmJlxuICAgICAgICAhdGhpcy5jb21tYW5kSGFzUnVuICYmXG4gICAgICAgIGluaXRpYWxDb21tYW5kICE9PSBCSU5fU0hcbiAgICAgICkge1xuICAgICAgICB0aGlzLnNob3VsZEZhbGxCYWNrT25DbG9zZSA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdjbG9zZScsIGUgPT4ge1xuICAgICAgdGhpcy5jbG9zZVNvY2tldCgpO1xuICAgICAgdGhpcy51cGRhdGVDb25uZWN0aW9uU3RhdHVzKFxuICAgICAgICBlLmNvZGUgPT09IE5PX1BFUk1JU1NJT05fQ09ERVxuICAgICAgICAgID8gQ29ubmVjdGlvblN0YXR1cy5Ob1Blcm1pc3Npb25cbiAgICAgICAgICA6IENvbm5lY3Rpb25TdGF0dXMuRGlzY29ubmVjdGVkLFxuICAgICAgKTtcbiAgICAgIGlmICh0aGlzLnNob3VsZEZhbGxCYWNrT25DbG9zZSkge1xuICAgICAgICB0aGlzLmZhbGxCYWNrT25DbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5pdFNvY2tldENvbm5lY3Rpb24gPSAoZmFsbGJhY2tDb21tYW5kPzogc3RyaW5nKSA9PiB7XG4gICAgdGhpcy51cGRhdGVDb25uZWN0aW9uU3RhdHVzKFxuICAgICAgdGhpcy54dGVybSA/IENvbm5lY3Rpb25TdGF0dXMuUmVDb25uZWN0aW5nIDogQ29ubmVjdGlvblN0YXR1cy5Db25uZWN0aW5nLFxuICAgICk7XG5cbiAgICBvZihudWxsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgICAgY29uc3QgeyBjaGVja1Blcm1pc3Npb25UeXBlLCBjbHVzdGVyIH0gPSB0aGlzLm9wdGlvbjtcbiAgICAgICAgICBpZiAoY2hlY2tQZXJtaXNzaW9uVHlwZSA9PT0gJ2NsdXN0ZXInICYmIGNsdXN0ZXIpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLms4c1Blcm1pc3Npb24uaXNBbGxvd2VkKHtcbiAgICAgICAgICAgICAgdHlwZTogUkVTT1VSQ0VfVFlQRVMuQ0xVU1RFUl9WSUVXLFxuICAgICAgICAgICAgICBuYW1lc3BhY2U6IHRoaXMuZ2xvYmFsTmFtZXNwYWNlLFxuICAgICAgICAgICAgICBhY3Rpb246IEs4c1Jlc291cmNlQWN0aW9uLlVQREFURSxcbiAgICAgICAgICAgICAgbmFtZTogY2x1c3RlcixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgICAgIH0pLFxuICAgICAgICB0YXAoYWxsb3cgPT4ge1xuICAgICAgICAgIGlmICghYWxsb3cpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ29ubmVjdGlvblN0YXR1cyhDb25uZWN0aW9uU3RhdHVzLk5vUGVybWlzc2lvbik7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgLy8g5YWI5YmN5p2D6ZmQ6aqM6K+B5rKh6YCa6L+H5bCx5LiN55So5YaN5bCd6K+VIHNoZWxsIOeahOmVv+i/nuaOpeS6hlxuICAgICAgICBmaWx0ZXIoQm9vbGVhbiksXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmFwaUdhdGV3YXkuZ2V0QXBpQWRkcmVzcygpKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoYXBpQWRkcmVzcyA9PiB7XG4gICAgICAgIGNvbnN0IGluaXRpYWxDb21tYW5kID0gZmFsbGJhY2tDb21tYW5kIHx8IHRoaXMub3B0aW9uLmNvbW1hbmQgfHwgQklOX1NIO1xuICAgICAgICB0aGlzLmluaXRTb2NrZXQoaW5pdGlhbENvbW1hbmQsIGFwaUFkZHJlc3MpO1xuXG4gICAgICAgIHRoaXMuaW5pdFNvY2tldExpc3RlbmVycyhpbml0aWFsQ29tbWFuZCk7XG4gICAgICB9KTtcbiAgfTtcblxuICBwcml2YXRlIGZhbGxCYWNrT25DbG9zZSgpIHtcbiAgICB0aGlzLnNob3VsZEZhbGxCYWNrT25DbG9zZSA9IGZhbHNlO1xuICAgIHRoaXMuZmFsbGJhY2tTaGVsbC5lbWl0KEJJTl9TSCk7XG4gICAgdGhpcy5pbml0U29ja2V0Q29ubmVjdGlvbihCSU5fU0gpO1xuICAgIHRoaXMubm90aWZpY2F0aW9uLndhcm5pbmcoXG4gICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoJ3Vuc3VwcG9ydGVkX2V4ZWNfY29tbWFuZF93YXJuaW5nJyksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VTb2NrZXQoKSB7XG4gICAgaWYgKFxuICAgICAgW0Nvbm5lY3Rpb25TdGF0dXMuQ29ubmVjdGluZywgQ29ubmVjdGlvblN0YXR1cy5SZUNvbm5lY3RpbmddLmluY2x1ZGVzKFxuICAgICAgICB0aGlzLmNvbm5lY3Rpb25TdGF0dXMsXG4gICAgICApXG4gICAgKSB7XG4gICAgICB0aGlzLm9wdGlvbi5ub3RDbGVhcldoZW5SZWNvbm5lY3QgfHwgdGhpcy54dGVybT8ucmVzZXQoKTtcbiAgICB9XG5cbiAgICBjbGVhckludGVydmFsKHRoaXMucGluZyk7XG4gICAgdGhpcy5zb2NrZXQ/LmNsb3NlKCk7XG4gICAgdGhpcy5zb2NrZXQgPSBudWxsO1xuICAgIHRoaXMuc29ja2V0JCQubmV4dCh0aGlzLnNvY2tldCk7XG4gIH1cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy11aS9jb250YWluZXItdGVybWluYWwvYmxvYi9iYTU2MGQ0ZjcxNWY0MDViZWIwYTY0YmFiOGZiMjlhMjFhYWMyNjcxL2NvbnRhaW5lci10ZXJtaW5hbC5qcyNMMTUyXG4gIHByaXZhdGUgcmVzaXplUmVtb3RlVGVybWluYWwoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc29ja2V0Py5zZW5kKFxuICAgICAgICBgNCR7ZW5jb2RlKFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHsgV2lkdGg6IHRoaXMueHRlcm0uY29scywgSGVpZ2h0OiB0aGlzLnh0ZXJtLnJvd3MgfSksXG4gICAgICAgICl9YCxcbiAgICAgICk7XG4gICAgfSBjYXRjaCB7fVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb25uZWN0aW9uU3RhdHVzKHN0YXR1czogQ29ubmVjdGlvblN0YXR1cykge1xuICAgIHRoaXMuY29ubmVjdGlvblN0YXR1cyA9IHN0YXR1cztcbiAgICB0aGlzLmNvbm5lY3Rpb25TdGF0dXNDaGFuZ2UuZW1pdChzdGF0dXMpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgYWN0aXZhdGVUZXJtaW5hbCgpIHtcbiAgICBpZiAodGhpcy5zb2NrZXQgJiYgdGhpcy5jb25uZWN0aW9uU3RhdHVzID09PSBDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RlZCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc29ja2V0LnNlbmQoJzAnICsgZW5jb2RlKCcgJykpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNvY2tldC5zZW5kKCcwJyArIGVuY29kZSgnXFxiJykpO1xuICAgICAgICB9LCAxMDApO1xuICAgICAgfSwgMTAwKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVjb2RlKGNvZGluZzogc3RyaW5nLCBkYXRhOiBzdHJpbmcpIHtcbiAgY29uc3QgZGF0YVZpZXcgPSBuZXcgRGF0YVZpZXcoXG4gICAgVWludDhBcnJheS5mcm9tKGF0b2IoZGF0YSksIGMgPT4gYy5jb2RlUG9pbnRBdCgwKSkuYnVmZmVyLFxuICApO1xuICBjb25zdCBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKGNvZGluZyk7XG4gIHJldHVybiBkZWNvZGVyLmRlY29kZShkYXRhVmlldyk7XG59XG4iLCI8YXVpLWlubGluZS1hbGVydFxuICAqbmdJZj1cImNvbm5lY3Rpb25TdGF0dXMgPT09IENvbm5lY3Rpb25TdGF0dXMuRGlzY29ubmVjdGVkXCJcbiAgdHlwZT1cImVycm9yXCJcbj5cbiAgPHNwYW4+e3sgJ2V4ZWNfZGlzY29ubmVjdGVkX3RpcCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gIDxidXR0b25cbiAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgKGNsaWNrKT1cInJlY29ubmVjdCgpXCJcbiAgPlxuICAgIHt7ICdyZWNvbm5lY3QnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9hdWktaW5saW5lLWFsZXJ0PlxuXG48ZGl2IGNsYXNzPVwiYWNsLXRlcm1pbmFsX193cmFwcGVyXCI+XG4gIDxhY2wtdGVybWluYWwtcGxhY2Vob2xkZXJcbiAgICBjbGFzcz1cInR3LWJnLW4tMTBcIlxuICAgICpuZ0lmPVwiY29ubmVjdGlvblN0YXR1cyA9PT0gQ29ubmVjdGlvblN0YXR1cy5Ob1Blcm1pc3Npb25cIlxuICAgIHR5cGU9XCJwZXJtaXNzaW9uXCJcbiAgPjwvYWNsLXRlcm1pbmFsLXBsYWNlaG9sZGVyPlxuICA8YWNsLWxvYWRpbmctbWFzayBbbG9hZGluZ109XCJzaG93TG9hZGluZ1wiPjwvYWNsLWxvYWRpbmctbWFzaz5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsIHR3LWludmlzaWJsZVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJyF0dy12aXNpYmxlJzpcbiAgICAgICAgIXNob3dMb2FkaW5nICYmIGNvbm5lY3Rpb25TdGF0dXMgIT09IENvbm5lY3Rpb25TdGF0dXMuTm9QZXJtaXNzaW9uXG4gICAgfVwiXG4gICAgW2NsYXNzLmFjbC10ZXJtaW5hbC0tZGFya109XCJ0aGVtZSA9PT0gJ2RhcmsnXCJcbiAgICBbY2xhc3MuYWNsLXRlcm1pbmFsLS1saWdodF09XCJ0aGVtZSA9PT0gJ2xpZ2h0J1wiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwidHctdy1mdWxsIHR3LWgtMCB0dy1mbGV4LTEgdHctZmxleCB0dy1mbGV4LWNvbCB0dy1wLTEyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWNsLXRlcm1pbmFsX19oZWFkZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19idXR0b25cIlxuICAgICAgICAgIFthdWlEcm9wZG93bl09XCJjb2RpbmdNZW51XCJcbiAgICAgICAgICBbYXVpRHJvcGRvd25DbGFzc109XCJ0aGVtZUNsYXNzXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICA+e3tcbiAgICAgICAgICAgICAgY29kaW5nID09PSAndXRmOCdcbiAgICAgICAgICAgICAgICA/ICdVVEYtOCdcbiAgICAgICAgICAgICAgICA6IGNvZGluZyA9PT0gJ2diMTgwMzAnXG4gICAgICAgICAgICAgICAgPyAnR0IgMTgwMzAnXG4gICAgICAgICAgICAgICAgOiBjb2RpbmcudG9VcHBlckNhc2UoKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHt7ICdkZWNvZGluZycgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgICAgICAgICA+XG4gICAgICAgICAgPGF1aS1pY29uIGljb249XCJhbmdsZV9kb3duXCI+PC9hdWktaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImFjbC10ZXJtaW5hbF9fYnV0dG9uXCJcbiAgICAgICAgICBbYXVpVG9vbHRpcF09XCJmb250VGVtcGxhdGVcIlxuICAgICAgICAgIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICAgICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgICAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIGVuZFwiXG4gICAgICAgICAgW2F1aVRvb2x0aXBDbGFzc109XCJ0aGVtZUNsYXNzXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhdWktaWNvbiBpY29uPVwiZ2VhclwiPjwvYXVpLWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ2ZvbnRfc2V0dGluZycgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJhY2wtdGVybWluYWxfX2J1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9wZW5TZWFyY2hpbmcoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXVpLWljb24gaWNvbj1cIm1hZ25pZmllclwiPjwvYXVpLWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ2ZpbmQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19idXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzd2l0Y2hUaGVtZSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhdWktaWNvbiBbaWNvbl09XCJ0aGVtZSA9PT0gJ2xpZ2h0JyA/ICdzdW4nIDogJ21vb24nXCI+PC9hdWktaWNvbj5cbiAgICAgICAgICA8c3Bhbj57e1xuICAgICAgICAgICAgKHRoZW1lID09PSAnbGlnaHQnID8gJ2xpZ2h0X3RoZW1lJyA6ICdkYXJrX3RoZW1lJykgfCB0cmFuc2xhdGVcbiAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImV4dHJhQnV0dG9uOyBjb250ZXh0OiB7IGluZGV4OiBpbmRleCB9XCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19zaGVsbFwiXG4gICAgICAgIChrZXlkb3duKT1cIm9uU2hlbGxLZXlEb3duKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgI2FuY2hvclxuICAgICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19hbmNob3JcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAqbmdJZj1cInNlYXJjaGluZ1wiXG4gICAgICAgICAgY2xhc3M9XCJhY2wtdGVybWluYWxfX2ZpbmRpbmdcIlxuICAgICAgICA+XG4gICAgICAgICAgPGF1aS1zZWFyY2hcbiAgICAgICAgICAgICNzZWFyY2hJbnB1dFxuICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgIFsoa2V5d29yZCldPVwic2VhcmNoS2V5d29yZFwiXG4gICAgICAgICAgICAoa2V5ZG93bik9XCJvblNlYXJjaElucHV0S2V5RG93bigkZXZlbnQpXCJcbiAgICAgICAgICA+PC9hdWktc2VhcmNoPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgICAgIHNpemU9XCJtaW5pXCJcbiAgICAgICAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbcGxhaW5dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiKCdmaW5kX3ByZXZpb3VzJyB8IHRyYW5zbGF0ZSkgKyAnIChTaGlmdCArIEVudGVyKSdcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImZpbmRQcmV2aW91cygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXVpLWljb25cbiAgICAgICAgICAgICAgaWNvbj1cImFycm93X3JpZ2h0XCJcbiAgICAgICAgICAgICAgc3R5bGU9XCJ0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpXCJcbiAgICAgICAgICAgID48L2F1aS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgICAgIHNpemU9XCJtaW5pXCJcbiAgICAgICAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbcGxhaW5dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiKCdmaW5kX25leHQnIHwgdHJhbnNsYXRlKSArICcgKEVudGVyKSdcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImZpbmROZXh0KClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhdWktaWNvblxuICAgICAgICAgICAgICBpY29uPVwiYXJyb3dfcmlnaHRcIlxuICAgICAgICAgICAgICBzdHlsZT1cInRyYW5zZm9ybTogcm90YXRlKDkwZGVnKVwiXG4gICAgICAgICAgICA+PC9hdWktaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAgICAgICBzaXplPVwibWluaVwiXG4gICAgICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICAgICAgW3BsYWluXT1cInRydWVcIlxuICAgICAgICAgICAgW3RpdGxlXT1cIignY2xvc2UnIHwgdHJhbnNsYXRlKSArICcgKEVzY2FwZSknXCJcbiAgICAgICAgICAgIChjbGljayk9XCJjbG9zZVNlYXJjaGluZygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXVpLWljb24gaWNvbj1cInhtYXJrXCI+PC9hdWktaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICBleHRyYUNvbnRlbnQ7XG4gICAgICBjb250ZXh0OiB7XG4gICAgICAgICRpbXBsaWNpdDogb3B0aW9uLFxuICAgICAgICBzb2NrZXQ6IHNvY2tldCQkIHwgYXN5bmMsXG4gICAgICAgIGluZGV4OiBpbmRleFxuICAgICAgfVxuICAgIFwiXG4gID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2NvZGluZ01lbnVcbiAgPjxhdWktbWVudSBzaXplPVwic21hbGxcIlxuICAgID48YXVpLW1lbnUtaXRlbVxuICAgICAgW2FjdGl2ZWRdPVwiY29kaW5nID09PSAndXRmOCdcIlxuICAgICAgKGNsaWNrKT1cImNvZGluZyA9ICd1dGY4J1wiXG4gICAgICA+VVRGLThcbiAgICA8L2F1aS1tZW51LWl0ZW0+XG4gICAgPGF1aS1tZW51LWl0ZW1cbiAgICAgIFthY3RpdmVkXT1cImNvZGluZyA9PT0gJ2diMTgwMzAnXCJcbiAgICAgIChjbGljayk9XCJjb2RpbmcgPSAnZ2IxODAzMCdcIlxuICAgICAgPkdCIDE4MDMwXG4gICAgPC9hdWktbWVudS1pdGVtPlxuICA8L2F1aS1tZW51PjwvbmctdGVtcGxhdGVcbj5cblxuPG5nLXRlbXBsYXRlICNmb250VGVtcGxhdGU+XG4gIDxhdWktbnVtYmVyLWlucHV0XG4gICAgW3N0ZXBdPVwiMVwiXG4gICAgW3ByZWNpc2lvbl09XCIxXCJcbiAgICBbbWluXT1cIjEyXCJcbiAgICBbbWF4XT1cIjQwXCJcbiAgICBbY29udHJvbHNdPVwidHJ1ZVwiXG4gICAgW2FuZ2xlQ29udHJvbHNdPVwidHJ1ZVwiXG4gICAgW3ZhbHVlXT1cImZvbnRTaXplXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwiZm9udFNpemVDaGFuZ2UoJGV2ZW50KVwiXG4gID5cbiAgICA8c3BhbiBhdWlJbnB1dEFkZG9uQWZ0ZXI+cHg8L3NwYW4+XG4gIDwvYXVpLW51bWJlci1pbnB1dD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
553
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2V4ZWMvdGVybWluYWwvY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL2V4ZWMvdGVybWluYWwvdGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFFTixXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDakMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFB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QyxNQUFNLENBQzFELENBQUM7SUFDRixNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UsIFNlYXJjaENvbXBvbmVudCB9IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHsgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlbmNvZGUgfSBmcm9tICdhYjY0JztcbmltcG9ydCB7IGRlYm91bmNlIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRlcm1pbmFsIH0gZnJvbSAneHRlcm0nO1xuaW1wb3J0IHsgQ2FudmFzQWRkb24gfSBmcm9tICd4dGVybS1hZGRvbi1jYW52YXMnO1xuaW1wb3J0IHsgRml0QWRkb24gfSBmcm9tICd4dGVybS1hZGRvbi1maXQnO1xuaW1wb3J0IHsgU2VhcmNoQWRkb24gfSBmcm9tICd4dGVybS1hZGRvbi1zZWFyY2gnO1xuaW1wb3J0IHsgV2ViTGlua3NBZGRvbiB9IGZyb20gJ3h0ZXJtLWFkZG9uLXdlYi1saW5rcyc7XG5pbXBvcnQgeyBXZWJnbEFkZG9uIH0gZnJvbSAneHRlcm0tYWRkb24td2ViZ2wnO1xuXG5pbXBvcnQgeyBBcGlHYXRld2F5U2VydmljZSB9IGZyb20gJy4uLy4uL2FwaS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi90cmFuc2xhdGUvcHVibGljLWFwaSc7XG5pbXBvcnQge1xuICBDb25uZWN0aW9uU3RhdHVzLFxuICBURVJNSU5BTF9GT05UX0xPQ0FMX1NUT1JBR0VfS0VZLFxuICBURVJNSU5BTF9USEVNRV9MT0NBTF9TVE9SQUdFX0tFWSxcbiAgWFRFUk1fREFSS19USEVNRSxcbiAgWFRFUk1fREVGQVVMVF9PUFRJT05TLFxuICBYVEVSTV9MSUdIVF9USEVNRSxcbn0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IFRlcm1pbmFsT3B0aW9uIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgQklOX1NIID0gJy9iaW4vc2gnO1xuXG5leHBvcnQgY29uc3QgRVhFQ19GQUlMRURfTUVTU0FHRV9DT05UQUlORVJEID0gYEludGVybmFsIGVycm9yIG9jY3VycmVkOiBlcnJvciBleGVjdXRpbmcgY29tbWFuZCBpbiBjb250YWluZXJgO1xuZXhwb3J0IGNvbnN0IEVYRUNfRkFJTEVEX01FU1NBR0VfRE9DS0VSID0gYE9DSSBydW50aW1lIGV4ZWMgZmFpbGVkOiBleGVjIGZhaWxlZDogdW5hYmxlIHRvIHN0YXJ0IGNvbnRhaW5lciBwcm9jZXNzYDtcbmV4cG9ydCBjb25zdCBOT19QRVJNSVNTSU9OX0NPREUgPSA0MF8wMDE7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0UmVuZGVyZXJBZGRvbigpIHtcbiAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gIGlmIChjYW52YXMuZ2V0Q29udGV4dCgnd2ViZ2wyJykpIHtcbiAgICByZXR1cm4gbmV3IFdlYmdsQWRkb24oKTtcbiAgfVxuICByZXR1cm4gbmV3IENhbnZhc0FkZG9uKCk7XG59XG5cbi8qKlxuICogRm9yIGRpc3BhdGNoaW5nIGtleWJvYXJkIGV2ZW50cyBhdXRvbWF0aWNhbGx5IHRvIHh0ZXJtLFxuICogcGxlYXNlIHZpZXcgaHR0cHM6Ly93d3cucGh5c2ljcy51ZGVsLmVkdS9+d2F0c29uL3NjZW4xMDMvYXNjaWkuaHRtbCBmb3IgcmVmZXJlbmNlLlxuICpcbiAqIEZvciBpbnN0YW5jZSwgaWYgeW91IHdhbnQgdG8gZGlzcGF0Y2ggYEN0cmwrQ2AgdG8geHRlcm0sIHlvdSBzaG91bGQgZGlzcGF0Y2ggYFxceDAzYChha2EgYFxcdTAwMDNgKSB0byB0aGUgc29ja2V0LlxuICpcbiAqIGBgYHRzXG4gKiBzb2NrZXQuc2VuZCgnMCcgKyBlbmNvZGUoJ1xcdTAwMDMnKSlcbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtdGVybWluYWwnLFxuICB0ZW1wbGF0ZVVybDogJ3RlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVGVybWluYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0IHtcbiAgQ29ubmVjdGlvblN0YXR1cyA9IENvbm5lY3Rpb25TdGF0dXM7XG5cbiAgQElucHV0KClcbiAgb3B0aW9uOiBUZXJtaW5hbE9wdGlvbjtcblxuICBASW5wdXQoKVxuICBpbmRleDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIGV4dHJhQnV0dG9uOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKVxuICBleHRyYUNvbnRlbnQ6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBjb25uZWN0aW9uU3RhdHVzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxDb25uZWN0aW9uU3RhdHVzPigpO1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBzZW5kRGF0YSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBzb2NrZXRSZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8V2ViU29ja2V0PigpO1xuXG4gIEBPdXRwdXQoKVxuICByZWFkb25seSBmYWxsYmFja1NoZWxsID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQFZpZXdDaGlsZCgnYW5jaG9yJylcbiAgYW5jaG9yUmVmOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBAVmlld0NoaWxkKCdzZWFyY2hJbnB1dCcpXG4gIHNlYXJjaElucHV0UmVmOiBTZWFyY2hDb21wb25lbnQ7XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmJlZm9yZXVubG9hZCcsIFsnJGV2ZW50J10pXG4gIGJlZm9yZVVubG9hZChldmVudDogQmVmb3JlVW5sb2FkRXZlbnQpIHtcbiAgICBpZiAodGhpcy5zb2NrZXQgJiYgdGhpcy5jb25uZWN0aW9uU3RhdHVzID09PSBDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnJldHVyblZhbHVlID0gJyc7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnVubG9hZCcsIFsnJGV2ZW50J10pXG4gIHVubG9hZChfZXZlbnQ6IEJlZm9yZVVubG9hZEV2ZW50KSB7XG4gICAgdGhpcy5raWxsUHJvY2VzcygpO1xuICB9XG5cbiAgdGhlbWU6ICdsaWdodCcgfCAnZGFyaycgPVxuICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKFRFUk1JTkFMX1RIRU1FX0xPQ0FMX1NUT1JBR0VfS0VZKSA9PT0gJ2xpZ2h0J1xuICAgICAgPyAnbGlnaHQnXG4gICAgICA6ICdkYXJrJztcblxuICBmb250U2l6ZTogbnVtYmVyID1cbiAgICArbG9jYWxTdG9yYWdlLmdldEl0ZW0oVEVSTUlOQUxfRk9OVF9MT0NBTF9TVE9SQUdFX0tFWSkgfHxcbiAgICBYVEVSTV9ERUZBVUxUX09QVElPTlMuZm9udFNpemU7XG5cbiAgc2VhcmNoaW5nID0gZmFsc2U7XG4gIHNlYXJjaEtleXdvcmQgPSAnJztcbiAgY29kaW5nID0gJ3V0ZjgnO1xuICBjb25uZWN0aW9uU3RhdHVzOiBDb25uZWN0aW9uU3RhdHVzID0gQ29ubmVjdGlvblN0YXR1cy5Db25uZWN0aW5nO1xuICBjb21tYW5kSGFzUnVuID0gZmFsc2U7XG5cbiAgeHRlcm06IFRlcm1pbmFsO1xuICBwcml2YXRlIHNlYXJjaEFkZG9uOiBTZWFyY2hBZGRvbjtcbiAgcHJpdmF0ZSBmaXRBZGRvbjogRml0QWRkb247XG4gIHByaXZhdGUgc29ja2V0OiBXZWJTb2NrZXQ7XG4gIHByaXZhdGUgcGluZzogbnVtYmVyO1xuXG4gIHNvY2tldCQkID0gbmV3IFN1YmplY3Q8V2ViU29ja2V0PigpO1xuXG4gIHNob3VsZEZhbGxCYWNrT25DbG9zZSA9IGZhbHNlO1xuXG4gIGdldCB0aGVtZUNsYXNzKCkge1xuICAgIHJldHVybiAoXG4gICAgICAnYWNsLXRlcm1pbmFsX19kcm9wZG93biAnICtcbiAgICAgICh0aGlzLnRoZW1lID09PSAnbGlnaHQnXG4gICAgICAgID8gJ2FjbC10ZXJtaW5hbF9fZHJvcGRvd24tLWxpZ2h0J1xuICAgICAgICA6ICdhY2wtdGVybWluYWxfX2Ryb3Bkb3duLS1kYXJrJylcbiAgICApO1xuICB9XG5cbiAgZ2V0IHNob3dMb2FkaW5nKCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNvbm5lY3Rpb25TdGF0dXMgPT09IENvbm5lY3Rpb25TdGF0dXMuQ29ubmVjdGluZyB8fFxuICAgICAgKCF0aGlzLm9wdGlvbi5ub3RDbGVhcldoZW5SZWNvbm5lY3QgJiZcbiAgICAgICAgdGhpcy5jb25uZWN0aW9uU3RhdHVzID09PSBDb25uZWN0aW9uU3RhdHVzLlJlQ29ubmVjdGluZylcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBhcGlHYXRld2F5OiBBcGlHYXRld2F5U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRTb2NrZXRDb25uZWN0aW9uKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyh7IG9wdGlvbiB9OiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKHRoaXMueHRlcm0gJiYgb3B0aW9uKSB7XG4gICAgICB0aGlzLnJlY29ubmVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY2xvc2VTb2NrZXQoKTtcbiAgICB0aGlzLnh0ZXJtPy5kaXNwb3NlKCk7XG4gIH1cblxuICBmb2N1cygpIHtcbiAgICB0aGlzLnh0ZXJtPy5mb2N1cygpO1xuICB9XG5cbiAgcmVjb25uZWN0KCkge1xuICAgIHRoaXMuY29tbWFuZEhhc1J1biA9IGZhbHNlO1xuICAgIHRoaXMuY2xvc2VTb2NrZXQoKTtcbiAgICB0aGlzLmluaXRTb2NrZXRDb25uZWN0aW9uKCk7XG4gIH1cblxuICBraWxsUHJvY2VzcygpIHtcbiAgICBpZiAodGhpcy5zb2NrZXQpIHtcbiAgICAgIHRoaXMuc29ja2V0LnNlbmQoJzAnICsgZW5jb2RlKCdcXHUwMDAzXFxyXFxuJykpO1xuICAgICAgdGhpcy5zb2NrZXQuc2VuZCgnMCcgKyBlbmNvZGUoJ2V4aXRcXHJcXG4nKSk7XG4gICAgfVxuICB9XG5cbiAgc3dpdGNoVGhlbWUoKSB7XG4gICAgdGhpcy50aGVtZSA9IHRoaXMudGhlbWUgPT09ICdsaWdodCcgPyAnZGFyaycgOiAnbGlnaHQnO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFRFUk1JTkFMX1RIRU1FX0xPQ0FMX1NUT1JBR0VfS0VZLCB0aGlzLnRoZW1lKTtcbiAgICB0aGlzLnh0ZXJtLm9wdGlvbnMudGhlbWUgPVxuICAgICAgdGhpcy50aGVtZSA9PT0gJ2xpZ2h0JyA/IFhURVJNX0xJR0hUX1RIRU1FIDogWFRFUk1fREFSS19USEVNRTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIGZvbnRTaXplQ2hhbmdlKHNpemU6IG51bWJlcikge1xuICAgIHRoaXMuZm9udFNpemUgPSBzaXplO1xuICAgIHRoaXMueHRlcm0ub3B0aW9ucy5mb250U2l6ZSA9IHNpemU7XG4gICAgdGhpcy5maXRBZGRvbi5maXQoKTtcblxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFRFUk1JTkFMX0ZPTlRfTE9DQUxfU1RPUkFHRV9LRVksIHNpemUgKyAnJyk7XG4gIH1cblxuICBvcGVuU2VhcmNoaW5nKCkge1xuICAgIHRoaXMuc2VhcmNoaW5nID0gdHJ1ZTtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgdGhpcy5zZWFyY2hJbnB1dFJlZi5mb2N1cygpO1xuICAgIH0pO1xuICB9XG5cbiAgY2xvc2VTZWFyY2hpbmcoKSB7XG4gICAgdGhpcy5zZWFyY2hpbmcgPSBmYWxzZTtcbiAgICB0aGlzLnNlYXJjaEtleXdvcmQgPSAnJztcbiAgICB0aGlzLmZpbmROZXh0KCk7XG4gICAgdGhpcy54dGVybT8uZm9jdXMoKTtcbiAgfVxuXG4gIG9uU2hlbGxLZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKChldmVudC5tZXRhS2V5IHx8IGV2ZW50LmN0cmxLZXkpICYmIGV2ZW50LmNvZGUgPT09ICdLZXlGJykge1xuICAgICAgdGhpcy5vcGVuU2VhcmNoaW5nKCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgb25TZWFyY2hJbnB1dEtleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQuY29kZSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMuY2xvc2VTZWFyY2hpbmcoKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmNvZGUgPT09ICdFbnRlcicpIHtcbiAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xuICAgICAgICB0aGlzLmZpbmRQcmV2aW91cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5maW5kTmV4dCgpO1xuICAgICAgfVxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2VhcmNoT3B0aW9ucygpIHtcbiAgICBjb25zdCB0aGVtZSA9IHRoaXMudGhlbWUgPT09ICdsaWdodCcgPyBYVEVSTV9MSUdIVF9USEVNRSA6IFhURVJNX0RBUktfVEhFTUU7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRlY29yYXRpb25zOiB7XG4gICAgICAgIG1hdGNoQmFja2dyb3VuZDogdGhlbWUuc2VsZWN0aW9uSW5hY3RpdmVCYWNrZ3JvdW5kLFxuICAgICAgICBtYXRjaE92ZXJ2aWV3UnVsZXI6IHRoZW1lLnNlbGVjdGlvbkluYWN0aXZlQmFja2dyb3VuZCxcbiAgICAgICAgYWN0aXZlTWF0Y2hCYWNrZ3JvdW5kOiB0aGVtZS5zZWxlY3Rpb25CYWNrZ3JvdW5kLFxuICAgICAgICBhY3RpdmVNYXRjaENvbG9yT3ZlcnZpZXdSdWxlcjogdGhlbWUuc2VsZWN0aW9uQmFja2dyb3VuZCxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIGZpbmROZXh0KCkge1xuICAgIHRoaXMuc2VhcmNoQWRkb24uZmluZE5leHQodGhpcy5zZWFyY2hLZXl3b3JkLCB0aGlzLmdldFNlYXJjaE9wdGlvbnMoKSk7XG4gIH1cblxuICBmaW5kUHJldmlvdXMoKSB7XG4gICAgdGhpcy5zZWFyY2hBZGRvbi5maW5kUHJldmlvdXModGhpcy5zZWFyY2hLZXl3b3JkLCB0aGlzLmdldFNlYXJjaE9wdGlvbnMoKSk7XG4gIH1cblxuICBwcml2YXRlIGluaXRYdGVybSgpIHtcbiAgICB0aGlzLnh0ZXJtID0gbmV3IFRlcm1pbmFsKHtcbiAgICAgIC4uLlhURVJNX0RFRkFVTFRfT1BUSU9OUyxcbiAgICAgIHRoZW1lOiB0aGlzLnRoZW1lID09PSAnbGlnaHQnID8gWFRFUk1fTElHSFRfVEhFTUUgOiBYVEVSTV9EQVJLX1RIRU1FLFxuICAgICAgZm9udFNpemU6IHRoaXMuZm9udFNpemUsXG4gICAgICBhbGxvd1Byb3Bvc2VkQXBpOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgdGhpcy54dGVybS5sb2FkQWRkb24odGhpcy5pbml0U2VhcmNoQWRkb24oKSk7XG4gICAgdGhpcy5maXRBZGRvbiA9IHRoaXMuaW5pdEZpdEFkZG9uKCk7XG4gICAgdGhpcy54dGVybS5sb2FkQWRkb24odGhpcy5maXRBZGRvbik7XG4gICAgdGhpcy54dGVybS5sb2FkQWRkb24obmV3IFdlYkxpbmtzQWRkb24oKSk7XG4gICAgdGhpcy54dGVybS5sb2FkQWRkb24oaW5pdFJlbmRlcmVyQWRkb24oKSk7XG5cbiAgICB0aGlzLnh0ZXJtLm9wZW4odGhpcy5hbmNob3JSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIHRoaXMuZml0QWRkb24uZml0KCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnh0ZXJtLm9uRGF0YSgoZGF0YTogc3RyaW5nKSA9PiB7XG4gICAgICBpZiAodGhpcy5jb25uZWN0aW9uU3RhdHVzID09PSBDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RlZCkge1xuICAgICAgICB0aGlzLmNvbW1hbmRIYXNSdW4gPSB0cnVlO1xuICAgICAgICB0aGlzLnNvY2tldC5zZW5kKCcwJyArIGVuY29kZShkYXRhKSk7XG4gICAgICAgIHRoaXMuc2VuZERhdGEuZW1pdChkYXRhKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnh0ZXJtLm9uU2VsZWN0aW9uQ2hhbmdlKCgpID0+IHtcbiAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHRoaXMueHRlcm0uZ2V0U2VsZWN0aW9uKCkudHJpbSgpO1xuICAgICAgaWYgKHNlbGVjdGlvbikge1xuICAgICAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChzZWxlY3Rpb24pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Rml0QWRkb24oKSB7XG4gICAgY29uc3QgZml0QWRkb24gPSBuZXcgRml0QWRkb24oKTtcblxuICAgIGNvbnN0IHJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKFxuICAgICAgZGVib3VuY2UoKFtlbnRyeV0pID0+IHtcbiAgICAgICAgaWYgKGVudHJ5LmNvbnRlbnRSZWN0LndpZHRoICE9PSAwKSB7XG4gICAgICAgICAgZml0QWRkb24uZml0KCk7XG4gICAgICAgICAgdGhpcy5yZXNpemVSZW1vdGVUZXJtaW5hbCgpO1xuICAgICAgICB9XG4gICAgICB9LCAyMDApLFxuICAgICk7XG5cbiAgICByZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuYW5jaG9yUmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIGZpdEFkZG9uO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U2VhcmNoQWRkb24oKSB7XG4gICAgdGhpcy5zZWFyY2hBZGRvbiA9IG5ldyBTZWFyY2hBZGRvbigpO1xuICAgIHJldHVybiB0aGlzLnNlYXJjaEFkZG9uO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0U29ja2V0KGluaXRpYWxDb21tYW5kOiBzdHJpbmcsIGFwaUFkZHJlc3M6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnNvY2tldCkge1xuICAgICAgdGhpcy5zb2NrZXQuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBjb25zdCB7XG4gICAgICBjbHVzdGVyLFxuICAgICAgbmFtZXNwYWNlLFxuICAgICAgcG9kLFxuICAgICAgY29udGFpbmVyLFxuICAgICAgdXNlciA9ICdyb290JyxcbiAgICAgIGNtZCxcbiAgICAgIGFkdmFuY2VBcGksXG4gICAgfSA9IHRoaXMub3B0aW9uO1xuXG4gICAgY29uc3QgY29tbWFuZCA9IGNtZFxuICAgICAgPyBbJ3NoJywgJy1jJywgY21kXVxuICAgICAgOiB1c2VyID09PSAncm9vdCdcbiAgICAgICAgPyBpbml0aWFsQ29tbWFuZC5zcGxpdCgnICcpXG4gICAgICAgIDogWydzaCcsICctYycsIGBzdSAtcCAke3VzZXJ9IC1jIFwiJHtpbml0aWFsQ29tbWFuZH1cImBdO1xuXG4gICAgY29uc3QgYXBpID0gYWR2YW5jZUFwaVxuICAgICAgPyAnL2F1dGgvdjEvcG9kL3NoZWxsJ1xuICAgICAgOiBgL2t1YmVybmV0ZXMvJHtjbHVzdGVyfS9hcGkvdjEvbmFtZXNwYWNlcy8ke25hbWVzcGFjZX0vcG9kcy8ke3BvZH0vZXhlY2A7XG5cbiAgICB0aGlzLnNvY2tldCA9IG5ldyBXZWJTb2NrZXQoXG4gICAgICBhcGlBZGRyZXNzLnJlcGxhY2UoL15odHRwLywgJ3dzJykgK1xuICAgICAgICBgJHthcGl9PyR7bmV3IEh0dHBQYXJhbXMoe1xuICAgICAgICAgIGZyb21PYmplY3Q6IHtcbiAgICAgICAgICAgIHN0ZGluOiB0cnVlLFxuICAgICAgICAgICAgc3Rkb3V0OiB0cnVlLFxuICAgICAgICAgICAgc3RkZXJyOiB0cnVlLFxuICAgICAgICAgICAgdHR5OiB0cnVlLFxuICAgICAgICAgICAgY29udGFpbmVyLFxuICAgICAgICAgICAgY29tbWFuZCxcbiAgICAgICAgICB9LFxuICAgICAgICB9KS50b1N0cmluZygpfWAsXG4gICAgICBbJ2Jhc2U2NC5jaGFubmVsLms4cy5pbyddLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGluaXRTb2NrZXRMaXN0ZW5lcnMgPSAoaW5pdGlhbENvbW1hbmQ6IHN0cmluZykgPT4ge1xuICAgIGxldCBuZWVkQ2xlYXI6IGJvb2xlYW47XG5cbiAgICB0aGlzLnNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdvcGVuJywgKCkgPT4ge1xuICAgICAgbmVlZENsZWFyID0gdHJ1ZTtcbiAgICAgIHRoaXMucmVzaXplUmVtb3RlVGVybWluYWwoKTtcbiAgICAgIHRoaXMuc29ja2V0UmVhZHkuZW1pdCh0aGlzLnNvY2tldCk7XG4gICAgICB0aGlzLnNvY2tldCQkLm5leHQodGhpcy5zb2NrZXQpO1xuICAgICAgdGhpcy5waW5nID0gd2luZG93LnNldEludGVydmFsKCgpID0+IHtcbiAgICAgICAgdGhpcy5zb2NrZXQuc2VuZCgnMCcpO1xuICAgICAgfSwgNTAwMCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgKGV2ZW50OiBNZXNzYWdlRXZlbnQ8c3RyaW5nPikgPT4ge1xuICAgICAgdGhpcy51cGRhdGVDb25uZWN0aW9uU3RhdHVzKENvbm5lY3Rpb25TdGF0dXMuQ29ubmVjdGVkKTtcbiAgICAgIGlmICghdGhpcy54dGVybSkge1xuICAgICAgICB0aGlzLmluaXRYdGVybSgpO1xuICAgICAgfVxuICAgICAgaWYgKG5lZWRDbGVhcikge1xuICAgICAgICBuZWVkQ2xlYXIgPSBmYWxzZTtcblxuICAgICAgICBpZiAoIXRoaXMub3B0aW9uLm5vdENsZWFyV2hlblJlY29ubmVjdCkge1xuICAgICAgICAgIHRoaXMueHRlcm0ucmVzZXQoKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnh0ZXJtLmJ1ZmZlci5hY3RpdmUudHlwZSA9PT0gJ2FsdGVybmF0ZScpIHtcbiAgICAgICAgICAvLyBleGl0IGFsdGVybmF0ZSBzY3JlZW4uIEFJVC00NjM5MVxuICAgICAgICAgIHRoaXMueHRlcm0ud3JpdGUoJ1xcdTAwMUJbPzEwNDlsJyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy54dGVybS5mb2N1cygpO1xuICAgICAgY29uc3QgdGV4dCA9IGRlY29kZSh0aGlzLmNvZGluZywgZXZlbnQuZGF0YS5zbGljZSgxKSk7XG4gICAgICB0aGlzLnh0ZXJtLndyaXRlKHRleHQpO1xuICAgICAgaWYgKFxuICAgICAgICAodGV4dC5pbmNsdWRlcyhFWEVDX0ZBSUxFRF9NRVNTQUdFX0NPTlRBSU5FUkQpIHx8XG4gICAgICAgICAgdGV4dC5pbmNsdWRlcyhFWEVDX0ZBSUxFRF9NRVNTQUdFX0RPQ0tFUikpICYmXG4gICAgICAgICF0aGlzLmNvbW1hbmRIYXNSdW4gJiZcbiAgICAgICAgaW5pdGlhbENvbW1hbmQgIT09IEJJTl9TSFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuc2hvdWxkRmFsbEJhY2tPbkNsb3NlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuc29ja2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2Nsb3NlJywgZSA9PiB7XG4gICAgICB0aGlzLmNsb3NlU29ja2V0KCk7XG4gICAgICB0aGlzLnVwZGF0ZUNvbm5lY3Rpb25TdGF0dXMoXG4gICAgICAgIGUuY29kZSA9PT0gTk9fUEVSTUlTU0lPTl9DT0RFXG4gICAgICAgICAgPyBDb25uZWN0aW9uU3RhdHVzLk5vUGVybWlzc2lvblxuICAgICAgICAgIDogQ29ubmVjdGlvblN0YXR1cy5EaXNjb25uZWN0ZWQsXG4gICAgICApO1xuICAgICAgaWYgKHRoaXMuc2hvdWxkRmFsbEJhY2tPbkNsb3NlKSB7XG4gICAgICAgIHRoaXMuZmFsbEJhY2tPbkNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgcHJpdmF0ZSByZWFkb25seSBpbml0U29ja2V0Q29ubmVjdGlvbiA9IChmYWxsYmFja0NvbW1hbmQ/OiBzdHJpbmcpID0+IHtcbiAgICB0aGlzLnVwZGF0ZUNvbm5lY3Rpb25TdGF0dXMoXG4gICAgICB0aGlzLnh0ZXJtID8gQ29ubmVjdGlvblN0YXR1cy5SZUNvbm5lY3RpbmcgOiBDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RpbmcsXG4gICAgKTtcblxuICAgIHRoaXMuYXBpR2F0ZXdheS5nZXRBcGlBZGRyZXNzKCkuc3Vic2NyaWJlKGFwaUFkZHJlc3MgPT4ge1xuICAgICAgY29uc3QgaW5pdGlhbENvbW1hbmQgPSBmYWxsYmFja0NvbW1hbmQgfHwgdGhpcy5vcHRpb24uY29tbWFuZCB8fCBCSU5fU0g7XG4gICAgICB0aGlzLmluaXRTb2NrZXQoaW5pdGlhbENvbW1hbmQsIGFwaUFkZHJlc3MpO1xuICAgICAgdGhpcy5pbml0U29ja2V0TGlzdGVuZXJzKGluaXRpYWxDb21tYW5kKTtcbiAgICB9KTtcbiAgfTtcblxuICBwcml2YXRlIGZhbGxCYWNrT25DbG9zZSgpIHtcbiAgICB0aGlzLnNob3VsZEZhbGxCYWNrT25DbG9zZSA9IGZhbHNlO1xuICAgIHRoaXMuZmFsbGJhY2tTaGVsbC5lbWl0KEJJTl9TSCk7XG4gICAgdGhpcy5pbml0U29ja2V0Q29ubmVjdGlvbihCSU5fU0gpO1xuICAgIHRoaXMubm90aWZpY2F0aW9uLndhcm5pbmcoXG4gICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoJ3Vuc3VwcG9ydGVkX2V4ZWNfY29tbWFuZF93YXJuaW5nJyksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VTb2NrZXQoKSB7XG4gICAgaWYgKFxuICAgICAgW0Nvbm5lY3Rpb25TdGF0dXMuQ29ubmVjdGluZywgQ29ubmVjdGlvblN0YXR1cy5SZUNvbm5lY3RpbmddLmluY2x1ZGVzKFxuICAgICAgICB0aGlzLmNvbm5lY3Rpb25TdGF0dXMsXG4gICAgICApXG4gICAgKSB7XG4gICAgICB0aGlzLm9wdGlvbi5ub3RDbGVhcldoZW5SZWNvbm5lY3QgfHwgdGhpcy54dGVybT8ucmVzZXQoKTtcbiAgICB9XG5cbiAgICBjbGVhckludGVydmFsKHRoaXMucGluZyk7XG4gICAgdGhpcy5zb2NrZXQ/LmNsb3NlKCk7XG4gICAgdGhpcy5zb2NrZXQgPSBudWxsO1xuICAgIHRoaXMuc29ja2V0JCQubmV4dCh0aGlzLnNvY2tldCk7XG4gIH1cblxuICAvLyBodHRwczovL2dpdGh1Yi5jb20va3ViZXJuZXRlcy11aS9jb250YWluZXItdGVybWluYWwvYmxvYi9iYTU2MGQ0ZjcxNWY0MDViZWIwYTY0YmFiOGZiMjlhMjFhYWMyNjcxL2NvbnRhaW5lci10ZXJtaW5hbC5qcyNMMTUyXG4gIHByaXZhdGUgcmVzaXplUmVtb3RlVGVybWluYWwoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc29ja2V0Py5zZW5kKFxuICAgICAgICBgNCR7ZW5jb2RlKFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHsgV2lkdGg6IHRoaXMueHRlcm0uY29scywgSGVpZ2h0OiB0aGlzLnh0ZXJtLnJvd3MgfSksXG4gICAgICAgICl9YCxcbiAgICAgICk7XG4gICAgfSBjYXRjaCB7fVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb25uZWN0aW9uU3RhdHVzKHN0YXR1czogQ29ubmVjdGlvblN0YXR1cykge1xuICAgIHRoaXMuY29ubmVjdGlvblN0YXR1cyA9IHN0YXR1cztcbiAgICB0aGlzLmNvbm5lY3Rpb25TdGF0dXNDaGFuZ2UuZW1pdChzdGF0dXMpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgYWN0aXZhdGVUZXJtaW5hbCgpIHtcbiAgICBpZiAodGhpcy5zb2NrZXQgJiYgdGhpcy5jb25uZWN0aW9uU3RhdHVzID09PSBDb25uZWN0aW9uU3RhdHVzLkNvbm5lY3RlZCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc29ja2V0LnNlbmQoJzAnICsgZW5jb2RlKCcgJykpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNvY2tldC5zZW5kKCcwJyArIGVuY29kZSgnXFxiJykpO1xuICAgICAgICB9LCAxMDApO1xuICAgICAgfSwgMTAwKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVjb2RlKGNvZGluZzogc3RyaW5nLCBkYXRhOiBzdHJpbmcpIHtcbiAgY29uc3QgZGF0YVZpZXcgPSBuZXcgRGF0YVZpZXcoXG4gICAgVWludDhBcnJheS5mcm9tKGF0b2IoZGF0YSksIGMgPT4gYy5jb2RlUG9pbnRBdCgwKSkuYnVmZmVyLFxuICApO1xuICBjb25zdCBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKGNvZGluZyk7XG4gIHJldHVybiBkZWNvZGVyLmRlY29kZShkYXRhVmlldyk7XG59XG4iLCI8YXVpLWlubGluZS1hbGVydFxuICAqbmdJZj1cImNvbm5lY3Rpb25TdGF0dXMgPT09IENvbm5lY3Rpb25TdGF0dXMuRGlzY29ubmVjdGVkXCJcbiAgdHlwZT1cImVycm9yXCJcbj5cbiAgPHNwYW4+e3sgJ2V4ZWNfZGlzY29ubmVjdGVkX3RpcCcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gIDxidXR0b25cbiAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgKGNsaWNrKT1cInJlY29ubmVjdCgpXCJcbiAgPlxuICAgIHt7ICdyZWNvbm5lY3QnIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9hdWktaW5saW5lLWFsZXJ0PlxuXG48ZGl2IGNsYXNzPVwiYWNsLXRlcm1pbmFsX193cmFwcGVyXCI+XG4gIDxhY2wtdGVybWluYWwtcGxhY2Vob2xkZXJcbiAgICBjbGFzcz1cInR3LWJnLW4tMTBcIlxuICAgICpuZ0lmPVwiY29ubmVjdGlvblN0YXR1cyA9PT0gQ29ubmVjdGlvblN0YXR1cy5Ob1Blcm1pc3Npb25cIlxuICAgIHR5cGU9XCJwZXJtaXNzaW9uXCJcbiAgPjwvYWNsLXRlcm1pbmFsLXBsYWNlaG9sZGVyPlxuICA8YWNsLWxvYWRpbmctbWFzayBbbG9hZGluZ109XCJzaG93TG9hZGluZ1wiPjwvYWNsLWxvYWRpbmctbWFzaz5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsIHR3LWludmlzaWJsZVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJyF0dy12aXNpYmxlJzpcbiAgICAgICAgIXNob3dMb2FkaW5nICYmIGNvbm5lY3Rpb25TdGF0dXMgIT09IENvbm5lY3Rpb25TdGF0dXMuTm9QZXJtaXNzaW9uXG4gICAgfVwiXG4gICAgW2NsYXNzLmFjbC10ZXJtaW5hbC0tZGFya109XCJ0aGVtZSA9PT0gJ2RhcmsnXCJcbiAgICBbY2xhc3MuYWNsLXRlcm1pbmFsLS1saWdodF09XCJ0aGVtZSA9PT0gJ2xpZ2h0J1wiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwidHctdy1mdWxsIHR3LWgtMCB0dy1mbGV4LTEgdHctZmxleCB0dy1mbGV4LWNvbCB0dy1wLTEyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYWNsLXRlcm1pbmFsX19oZWFkZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19idXR0b25cIlxuICAgICAgICAgIFthdWlEcm9wZG93bl09XCJjb2RpbmdNZW51XCJcbiAgICAgICAgICBbYXVpRHJvcGRvd25DbGFzc109XCJ0aGVtZUNsYXNzXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICA+e3tcbiAgICAgICAgICAgICAgY29kaW5nID09PSAndXRmOCdcbiAgICAgICAgICAgICAgICA/ICdVVEYtOCdcbiAgICAgICAgICAgICAgICA6IGNvZGluZyA9PT0gJ2diMTgwMzAnXG4gICAgICAgICAgICAgICAgPyAnR0IgMTgwMzAnXG4gICAgICAgICAgICAgICAgOiBjb2RpbmcudG9VcHBlckNhc2UoKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHt7ICdkZWNvZGluZycgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgICAgICAgICA+XG4gICAgICAgICAgPGF1aS1pY29uIGljb249XCJhbmdsZV9kb3duXCI+PC9hdWktaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImFjbC10ZXJtaW5hbF9fYnV0dG9uXCJcbiAgICAgICAgICBbYXVpVG9vbHRpcF09XCJmb250VGVtcGxhdGVcIlxuICAgICAgICAgIGF1aVRvb2x0aXBUcmlnZ2VyPVwiY2xpY2tcIlxuICAgICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgICAgYXVpVG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tIGVuZFwiXG4gICAgICAgICAgW2F1aVRvb2x0aXBDbGFzc109XCJ0aGVtZUNsYXNzXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhdWktaWNvbiBpY29uPVwiZ2VhclwiPjwvYXVpLWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ2ZvbnRfc2V0dGluZycgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJhY2wtdGVybWluYWxfX2J1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9wZW5TZWFyY2hpbmcoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXVpLWljb24gaWNvbj1cIm1hZ25pZmllclwiPjwvYXVpLWljb24+XG4gICAgICAgICAgPHNwYW4+e3sgJ2ZpbmQnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19idXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzd2l0Y2hUaGVtZSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhdWktaWNvbiBbaWNvbl09XCJ0aGVtZSA9PT0gJ2xpZ2h0JyA/ICdzdW4nIDogJ21vb24nXCI+PC9hdWktaWNvbj5cbiAgICAgICAgICA8c3Bhbj57e1xuICAgICAgICAgICAgKHRoZW1lID09PSAnbGlnaHQnID8gJ2xpZ2h0X3RoZW1lJyA6ICdkYXJrX3RoZW1lJykgfCB0cmFuc2xhdGVcbiAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImV4dHJhQnV0dG9uOyBjb250ZXh0OiB7IGluZGV4OiBpbmRleCB9XCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19zaGVsbFwiXG4gICAgICAgIChrZXlkb3duKT1cIm9uU2hlbGxLZXlEb3duKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgI2FuY2hvclxuICAgICAgICAgIGNsYXNzPVwiYWNsLXRlcm1pbmFsX19hbmNob3JcIlxuICAgICAgICA+PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAqbmdJZj1cInNlYXJjaGluZ1wiXG4gICAgICAgICAgY2xhc3M9XCJhY2wtdGVybWluYWxfX2ZpbmRpbmdcIlxuICAgICAgICA+XG4gICAgICAgICAgPGF1aS1zZWFyY2hcbiAgICAgICAgICAgICNzZWFyY2hJbnB1dFxuICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgIFsoa2V5d29yZCldPVwic2VhcmNoS2V5d29yZFwiXG4gICAgICAgICAgICAoa2V5ZG93bik9XCJvblNlYXJjaElucHV0S2V5RG93bigkZXZlbnQpXCJcbiAgICAgICAgICA+PC9hdWktc2VhcmNoPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgICAgIHNpemU9XCJtaW5pXCJcbiAgICAgICAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbcGxhaW5dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiKCdmaW5kX3ByZXZpb3VzJyB8IHRyYW5zbGF0ZSkgKyAnIChTaGlmdCArIEVudGVyKSdcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImZpbmRQcmV2aW91cygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXVpLWljb25cbiAgICAgICAgICAgICAgaWNvbj1cImFycm93X3JpZ2h0XCJcbiAgICAgICAgICAgICAgc3R5bGU9XCJ0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpXCJcbiAgICAgICAgICAgID48L2F1aS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgICAgIHNpemU9XCJtaW5pXCJcbiAgICAgICAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbcGxhaW5dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiKCdmaW5kX25leHQnIHwgdHJhbnNsYXRlKSArICcgKEVudGVyKSdcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImZpbmROZXh0KClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxhdWktaWNvblxuICAgICAgICAgICAgICBpY29uPVwiYXJyb3dfcmlnaHRcIlxuICAgICAgICAgICAgICBzdHlsZT1cInRyYW5zZm9ybTogcm90YXRlKDkwZGVnKVwiXG4gICAgICAgICAgICA+PC9hdWktaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAgICAgICBzaXplPVwibWluaVwiXG4gICAgICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICAgICAgW3BsYWluXT1cInRydWVcIlxuICAgICAgICAgICAgW3RpdGxlXT1cIignY2xvc2UnIHwgdHJhbnNsYXRlKSArICcgKEVzY2FwZSknXCJcbiAgICAgICAgICAgIChjbGljayk9XCJjbG9zZVNlYXJjaGluZygpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXVpLWljb24gaWNvbj1cInhtYXJrXCI+PC9hdWktaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICBleHRyYUNvbnRlbnQ7XG4gICAgICBjb250ZXh0OiB7XG4gICAgICAgICRpbXBsaWNpdDogb3B0aW9uLFxuICAgICAgICBzb2NrZXQ6IHNvY2tldCQkIHwgYXN5bmMsXG4gICAgICAgIGluZGV4OiBpbmRleFxuICAgICAgfVxuICAgIFwiXG4gID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2NvZGluZ01lbnVcbiAgPjxhdWktbWVudSBzaXplPVwic21hbGxcIlxuICAgID48YXVpLW1lbnUtaXRlbVxuICAgICAgW2FjdGl2ZWRdPVwiY29kaW5nID09PSAndXRmOCdcIlxuICAgICAgKGNsaWNrKT1cImNvZGluZyA9ICd1dGY4J1wiXG4gICAgICA+VVRGLThcbiAgICA8L2F1aS1tZW51LWl0ZW0+XG4gICAgPGF1aS1tZW51LWl0ZW1cbiAgICAgIFthY3RpdmVkXT1cImNvZGluZyA9PT0gJ2diMTgwMzAnXCJcbiAgICAgIChjbGljayk9XCJjb2RpbmcgPSAnZ2IxODAzMCdcIlxuICAgICAgPkdCIDE4MDMwXG4gICAgPC9hdWktbWVudS1pdGVtPlxuICA8L2F1aS1tZW51PjwvbmctdGVtcGxhdGVcbj5cblxuPG5nLXRlbXBsYXRlICNmb250VGVtcGxhdGU+XG4gIDxhdWktbnVtYmVyLWlucHV0XG4gICAgW3N0ZXBdPVwiMVwiXG4gICAgW3ByZWNpc2lvbl09XCIxXCJcbiAgICBbbWluXT1cIjEyXCJcbiAgICBbbWF4XT1cIjQwXCJcbiAgICBbY29udHJvbHNdPVwidHJ1ZVwiXG4gICAgW2FuZ2xlQ29udHJvbHNdPVwidHJ1ZVwiXG4gICAgW3ZhbHVlXT1cImZvbnRTaXplXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwiZm9udFNpemVDaGFuZ2UoJGV2ZW50KVwiXG4gID5cbiAgICA8c3BhbiBhdWlJbnB1dEFkZG9uQWZ0ZXI+cHg8L3NwYW4+XG4gIDwvYXVpLW51bWJlci1pbnB1dD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
package/esm2022/exec/types.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZXhlYy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUZXJtaW5hbE9wdGlvbiB7XG4gIGNsdXN0ZXI6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIHBvZDogc3RyaW5nO1xuICBjb250YWluZXI6IHN0cmluZztcbiAgdXNlcj86IHN0cmluZztcbiAgY29tbWFuZD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGFkdmFuY2VBcGk/OiBib29sZWFuO1xuICBjbWQ/OiBzdHJpbmc7XG4gIGljb24/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvZXhlYy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUZXJtaW5hbE9wdGlvbiB7XG4gIGNsdXN0ZXI6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIHBvZDogc3RyaW5nO1xuICBjb250YWluZXI6IHN0cmluZztcbiAgdXNlcj86IHN0cmluZztcbiAgY29tbWFuZD86IHN0cmluZztcbiAgbGFiZWw/OiBzdHJpbmc7XG4gIGFkdmFuY2VBcGk/OiBib29sZWFuO1xuICBjbWQ/OiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIG5vdENsZWFyV2hlblJlY29ubmVjdD86IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -41,7 +41,7 @@ export class LicenseApiService {
|
|
|
41
41
|
const params = check === 'version'
|
|
42
42
|
? { check, targetVersion: resource }
|
|
43
43
|
: { check, resourceNum: resource };
|
|
44
|
-
return this.isLicenseExempt().pipe(switchMap(
|
|
44
|
+
return this.isLicenseExempt().pipe(switchMap(exempt => exempt
|
|
45
45
|
? of(true)
|
|
46
46
|
: this.http
|
|
47
47
|
.get(LICENSE_FEATURE_GATE, {
|
|
@@ -49,6 +49,17 @@ export class LicenseApiService {
|
|
|
49
49
|
})
|
|
50
50
|
.pipe(map(res => res.status.enabled))));
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* @deprecated 已经没有使用场景,未考虑 licenseExempt 情况
|
|
54
|
+
*/
|
|
55
|
+
getLicenseAllowVersion(version) {
|
|
56
|
+
return this.http.get(LICENSE_FEATURE_GATE, {
|
|
57
|
+
params: {
|
|
58
|
+
check: 'version',
|
|
59
|
+
targetVersion: version,
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
}
|
|
52
63
|
static { this.ɵfac = function LicenseApiService_Factory(t) { return new (t || LicenseApiService)(); }; }
|
|
53
64
|
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: LicenseApiService, factory: LicenseApiService.ɵfac, providedIn: 'root' }); }
|
|
54
65
|
}
|
|
@@ -56,4 +67,4 @@ export class LicenseApiService {
|
|
|
56
67
|
type: Injectable,
|
|
57
68
|
args: [{ providedIn: 'root' }]
|
|
58
69
|
}], null, null); })();
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGljZW5zZS1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvbGljZW5zZS9saWNlbnNlLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUcxRCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLFdBQVcsNkJBQTZCLENBQUM7QUFDaEYsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsR0FBRyxXQUFXLHdDQUF3QyxDQUFDO0FBRXRHLE1BQU0sVUFBVSxjQUFjLENBQUMsV0FBbUMsRUFBRTtJQUNsRSxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFdBQW1CO0lBQ25ELE9BQU8sV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDN0MsQ0FBQztBQUdELE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFbUIsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUUxQixtQkFBYyxHQUFHLElBQUksQ0FBQyxJQUFJO2FBQ3hDLEdBQUcsQ0FBK0IsK0JBQStCLENBQUM7YUFDbEUsSUFBSSxDQUNILEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxFQUM3QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQzFCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0tBdURMO0lBckRDLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWMsb0JBQW9CLEVBQUU7WUFDdEQsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxPQUFnQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUNsQiwrQkFBK0IsRUFDL0I7WUFDRSxNQUFNLEVBQUUsT0FBTyxJQUFJO2dCQUNqQixPQUFPO2FBQ1I7U0FDRixDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsdUJBQXVCLENBQ3JCLEtBQXNDLEVBQ3RDLFFBQWdCO1FBRWhCLE1BQU0sTUFBTSxHQUNWLEtBQUssS0FBSyxTQUFTO1lBQ2pCLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFO1lBQ3BDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLENBQUM7UUFDdkMsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsSUFBSSxDQUNoQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDakIsTUFBTTtZQUNKLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO1lBQ1YsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJO2lCQUNOLEdBQUcsQ0FBYyxvQkFBb0IsRUFBRTtnQkFDdEMsTUFBTTthQUNQLENBQUM7aUJBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDNUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsc0JBQXNCLENBQUMsT0FBZTtRQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFjLG9CQUFvQixFQUFFO1lBQ3RELE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUUsU0FBUztnQkFDaEIsYUFBYSxFQUFFLE9BQU87YUFDdkI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO2tGQS9EVSxpQkFBaUI7dUVBQWpCLGlCQUFpQixXQUFqQixpQkFBaUIsbUJBREosTUFBTTs7aUZBQ25CLGlCQUFpQjtjQUQ3QixVQUFVO2VBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqIEBtb2R1bGUgbGljZW5zZS1hcGlcbiAqL1xuXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIG9mLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFQSV9HQVRFV0FZIH0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMvY29uc3RhbnRzJztcbmltcG9ydCB7IEZlYXR1cmVHYXRlLCBGZWF0dXJlR2F0ZUVudGVycHJpc2VTdXBwb3J0IH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcblxuZXhwb3J0IGNvbnN0IExJQ0VOU0VfRkVBVFVSRV9HQVRFID0gYCR7QVBJX0dBVEVXQVl9L2ZnL3YxL2ZlYXR1cmVnYXRlcy9saWNlbnNlYDtcbmV4cG9ydCBjb25zdCBFTlRFUlBSSVNFX1NVUFBPUlRfRkVBVFVSRV9HQVRFID0gYCR7QVBJX0dBVEVXQVl9L2ZnL3YxL2ZlYXR1cmVnYXRlcy9lbnRlcnByaXNlLXN1cHBvcnRgO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVzb3VyY2VOdW0ocmVzb3VyY2U6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7fSk6IG51bWJlciB7XG4gIHJldHVybiBPYmplY3QudmFsdWVzKHJlc291cmNlKS5yZWR1Y2UoKHByZSwgY3VyKSA9PiBjdXIgKyBwcmUsIDApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0UHJvZHVjdE5hbWUocHJvZHVjdE5hbWU6IHN0cmluZykge1xuICByZXR1cm4gcHJvZHVjdE5hbWUucmVwbGFjZUFsbCgvXFxzKy9nLCAnLScpO1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIExpY2Vuc2VBcGlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBodHRwID0gaW5qZWN0KEh0dHBDbGllbnQpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbGljZW5zZUV4ZW1wdCQgPSB0aGlzLmh0dHBcbiAgICAuZ2V0PEZlYXR1cmVHYXRlRW50ZXJwcmlzZVN1cHBvcnQ+KEVOVEVSUFJJU0VfU1VQUE9SVF9GRUFUVVJFX0dBVEUpXG4gICAgLnBpcGUoXG4gICAgICBtYXAocmVzID0+IHJlcy5zdGF0dXMubGljZW5zZUV4ZW1wdCA/PyBmYWxzZSksXG4gICAgICBjYXRjaEVycm9yKCgpID0+IG9mKHRydWUpKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpLFxuICAgICk7XG5cbiAgaXNMaWNlbnNlRXhlbXB0KCkge1xuICAgIHJldHVybiB0aGlzLmxpY2Vuc2VFeGVtcHQkO1xuICB9XG5cbiAgZ2V0TGljZW5zZShwcm9kdWN0OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxGZWF0dXJlR2F0ZT4oTElDRU5TRV9GRUFUVVJFX0dBVEUsIHtcbiAgICAgIHBhcmFtczogeyBwcm9kdWN0IH0sXG4gICAgfSk7XG4gIH1cblxuICBnZXRFbnRlcnByaXNlU3VwcG9ydChwcm9kdWN0Pzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RmVhdHVyZUdhdGVFbnRlcnByaXNlU3VwcG9ydD4oXG4gICAgICBFTlRFUlBSSVNFX1NVUFBPUlRfRkVBVFVSRV9HQVRFLFxuICAgICAge1xuICAgICAgICBwYXJhbXM6IHByb2R1Y3QgJiYge1xuICAgICAgICAgIHByb2R1Y3QsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICBnZXRMaWNlbnNlUmVzb3VyY2VMaW1pdChcbiAgICBjaGVjazogJ3Jlc291cmNlJyB8ICdub2RlJyB8ICd2ZXJzaW9uJyxcbiAgICByZXNvdXJjZTogbnVtYmVyLFxuICApIHtcbiAgICBjb25zdCBwYXJhbXMgPVxuICAgICAgY2hlY2sgPT09ICd2ZXJzaW9uJ1xuICAgICAgICA/IHsgY2hlY2ssIHRhcmdldFZlcnNpb246IHJlc291cmNlIH1cbiAgICAgICAgOiB7IGNoZWNrLCByZXNvdXJjZU51bTogcmVzb3VyY2UgfTtcbiAgICByZXR1cm4gdGhpcy5pc0xpY2Vuc2VFeGVtcHQoKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKGV4ZW1wdCA9PlxuICAgICAgICBleGVtcHRcbiAgICAgICAgICA/IG9mKHRydWUpXG4gICAgICAgICAgOiB0aGlzLmh0dHBcbiAgICAgICAgICAgICAgLmdldDxGZWF0dXJlR2F0ZT4oTElDRU5TRV9GRUFUVVJFX0dBVEUsIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gcmVzLnN0YXR1cy5lbmFibGVkKSksXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQg5bey57uP5rKh5pyJ5L2/55So5Zy65pmv77yM5pyq6ICD6JmRIGxpY2Vuc2VFeGVtcHQg5oOF5Ya1XG4gICAqL1xuICBnZXRMaWNlbnNlQWxsb3dWZXJzaW9uKHZlcnNpb246IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEZlYXR1cmVHYXRlPihMSUNFTlNFX0ZFQVRVUkVfR0FURSwge1xuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIGNoZWNrOiAndmVyc2lvbicsXG4gICAgICAgIHRhcmdldFZlcnNpb246IHZlcnNpb24sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -104,9 +104,18 @@ export class PodStatusComponent {
|
|
|
104
104
|
this.PodStatusIconMapper = PodStatusIconMapper;
|
|
105
105
|
}
|
|
106
106
|
getReadyContainer(pod) {
|
|
107
|
+
const sidecarNames = (pod.spec?.initContainers || [])
|
|
108
|
+
.filter(c => c?.restartPolicy === 'Always')
|
|
109
|
+
.map(c => c?.name)
|
|
110
|
+
.filter(Boolean);
|
|
111
|
+
const containerStatuses = (pod.status?.containerStatuses || []);
|
|
112
|
+
const sidecarStatuses = (pod.status?.initContainerStatuses || []).filter(s => sidecarNames.includes(s?.name));
|
|
113
|
+
const allStatuses = [...containerStatuses, ...sidecarStatuses];
|
|
114
|
+
const readyCount = allStatuses.filter(s => s?.ready).length;
|
|
115
|
+
const totalCount = (pod.spec?.containers?.length || 0) + sidecarNames.length;
|
|
107
116
|
return {
|
|
108
|
-
ready:
|
|
109
|
-
all:
|
|
117
|
+
ready: readyCount,
|
|
118
|
+
all: totalCount,
|
|
110
119
|
};
|
|
111
120
|
}
|
|
112
121
|
static { this.ɵfac = function PodStatusComponent_Factory(t) { return new (t || PodStatusComponent)(); }; }
|
|
@@ -143,4 +152,4 @@ export class PodStatusComponent {
|
|
|
143
152
|
type: Input
|
|
144
153
|
}] }); })();
|
|
145
154
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PodStatusComponent, { className: "PodStatusComponent" }); })();
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BvZC1zdGF0dXMvY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BvZC1zdGF0dXMvdGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN2RCxPQUFPLEVBQ0wsT0FBTyxFQUNQLEtBQUssRUFDTCxJQUFJLEVBQ0osT0FBTyxFQUNQLGdCQUFnQixHQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBTyxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7Ozs7OztJQ085RCxZQUNGOzs7SUFERSxrRUFDRjs7O0lBRUUsK0JBUVk7Ozs7OztJQUhWLEFBREEsNkZBQXNFLDhEQUMxQjs7O0lBTmhELDZCQUFrRTtJQUNoRSw2R0FRQzs7Ozs7SUFORSxjQUFpRDtJQUFqRCwwR0FBaUQ7OztJQTFCNUQsNkJBQXNFO0lBQ3BFLDhCQUE0QjtJQUMxQixxQ0FNbUI7O0lBQ25CLDhCQUFxQjtJQUNuQixZQUNBO0lBQUEsMkJBS2dCOztJQU9oQixBQU5BLG1JQUdDLHlGQUdpRTs7SUFZdEUsQUFERSxpQkFBTSxFQUNGOzs7Ozs7SUFoQ0YsZUFBZ0Q7SUFJaEQsQUFEQSxBQURBLEFBREEsQUFEQSx1RkFBZ0Qs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QUFSQSxBQURBLG9IQUFxQix1R0FJcEIsdUdBUUE7OztZQWpEd0QsQUFBMUMsc0VBQStCLHdCQUFzQjs0QkRzQmhFLG1CQUFtQjtZQUNuQixJQUFJO1lBQ0osVUFBVSxvQkFDVixhQUFhLHVCQUNiLE9BQU87WUFFUCxnQkFBZ0I7WUFDaEIsUUFBUTtZQUNSLEtBQUs7O2lGQUlJLGtCQUFrQjtjQWxCOUIsU0FBUzsyQkFDRSxnQkFBZ0IsY0FHZCxJQUFJLFdBQ1A7b0JBQ1AsbUJBQW1CO29CQUNuQixJQUFJO29CQUNKLFVBQVU7b0JBQ1YsYUFBYTtvQkFDYixPQUFPO29CQUNQLE9BQU87b0JBQ1AsZ0JBQWdCO29CQUNoQixRQUFRO29CQUNSLEtBQUs7aUJBQ04sbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU07Z0JBSS9DLEdBQUc7a0JBREYsS0FBSztZQUlOLHNCQUFzQjtrQkFEckIsS0FBSzs7a0ZBSkssa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWNvbk1vZHVsZSwgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHtcbiAgTmdDbGFzcyxcbiAgTmdGb3IsXG4gIE5nSWYsXG4gIE5nU3R5bGUsXG4gIE5nVGVtcGxhdGVPdXRsZXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQb2QsIFB1cmVQaXBlIH0gZnJvbSAnLi4vY29yZS9wdWJsaWMtYXBpJztcbmltcG9ydCB7IFN0YXR1c0ljb25Db21wb25lbnQgfSBmcm9tICcuLi93aWRnZXQvcHVibGljLWFwaSc7XG5cbmltcG9ydCB7IGdldFBvZEFnZ3JlZ2F0ZWRTdGF0dXMsIGdldFBvZFN0YXR1cyB9IGZyb20gJy4vc3RhdHVzJztcbmltcG9ydCB7IFBvZFN0YXR1c0NvbG9yTWFwcGVyLCBQb2RTdGF0dXNJY29uTWFwcGVyIH0gZnJvbSAnLi90eXBpbmdzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLXBvZC1zdGF0dXMnLFxuICB0ZW1wbGF0ZVVybDogJ3RlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnc3R5bGUuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgU3RhdHVzSWNvbkNvbXBvbmVudCxcbiAgICBOZ0lmLFxuICAgIEljb25Nb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgICBOZ1N0eWxlLFxuICAgIE5nQ2xhc3MsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBQdXJlUGlwZSxcbiAgICBOZ0ZvcixcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFBvZFN0YXR1c0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIHBvZDogUG9kO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVNZXNzYWdlT3ZlcnZpZXc6IGJvb2xlYW47XG5cbiAgZ2V0UmVhZHlDb250YWluZXIocG9kOiBQb2QpIHtcbiAgICBjb25zdCBzaWRlY2FyTmFtZXM6IHN0cmluZ1tdID0gKHBvZC5zcGVjPy5pbml0Q29udGFpbmVycyB8fCBbXSlcbiAgICAgIC5maWx0ZXIoYyA9PiBjPy5yZXN0YXJ0UG9saWN5ID09PSAnQWx3YXlzJylcbiAgICAgIC5tYXAoYyA9PiBjPy5uYW1lKVxuICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgICBjb25zdCBjb250YWluZXJTdGF0dXNlcyA9IChwb2Quc3RhdHVzPy5jb250YWluZXJTdGF0dXNlcyB8fCBbXSkgYXMgYW55W107XG4gICAgY29uc3Qgc2lkZWNhclN0YXR1c2VzID0gKFxuICAgICAgKHBvZC5zdGF0dXM/LmluaXRDb250YWluZXJTdGF0dXNlcyB8fCBbXSkgYXMgYW55W11cbiAgICApLmZpbHRlcihzID0+IHNpZGVjYXJOYW1lcy5pbmNsdWRlcyhzPy5uYW1lKSk7XG5cbiAgICBjb25zdCBhbGxTdGF0dXNlcyA9IFsuLi5jb250YWluZXJTdGF0dXNlcywgLi4uc2lkZWNhclN0YXR1c2VzXTtcbiAgICBjb25zdCByZWFkeUNvdW50ID0gYWxsU3RhdHVzZXMuZmlsdGVyKHMgPT4gcz8ucmVhZHkpLmxlbmd0aDtcbiAgICBjb25zdCB0b3RhbENvdW50ID1cbiAgICAgIChwb2Quc3BlYz8uY29udGFpbmVycz8ubGVuZ3RoIHx8IDApICsgc2lkZWNhck5hbWVzLmxlbmd0aDtcbiAgICByZXR1cm4ge1xuICAgICAgcmVhZHk6IHJlYWR5Q291bnQsXG4gICAgICBhbGw6IHRvdGFsQ291bnQsXG4gICAgfTtcbiAgfVxuXG4gIGdldFBvZEVycm9yTWVzc2FnZXMgPSAocG9kOiBQb2QpID0+XG4gICAgZ2V0UG9kU3RhdHVzKHBvZCkuaW5jbHVkZXMoJ1BlbmRpbmcnKVxuICAgICAgPyBwb2Quc3RhdHVzLmNvbmRpdGlvbnM/Lm1hcChpdGVtID0+IGl0ZW0ubWVzc2FnZSkuZmlsdGVyKG1zZyA9PiAhIW1zZylcbiAgICAgIDogcG9kLnN0YXR1cy5jb250YWluZXJTdGF0dXNlc1xuICAgICAgICAgID8uZmlsdGVyKGMgPT4gIWMucmVhZHkpXG4gICAgICAgICAgLm1hcChjID0+IGMuc3RhdGU/LndhaXRpbmc/Lm1lc3NhZ2UpXG4gICAgICAgICAgLmZpbHRlcihtc2cgPT4gISFtc2cpO1xuXG4gIGdldFBvZEFnZ3JlZ2F0ZWRTdGF0dXMgPSBnZXRQb2RBZ2dyZWdhdGVkU3RhdHVzO1xuICBnZXRQb2RTdGF0dXMgPSBnZXRQb2RTdGF0dXM7XG4gIFBvZFN0YXR1c0NvbG9yTWFwcGVyID0gUG9kU3RhdHVzQ29sb3JNYXBwZXI7XG4gIFBvZFN0YXR1c0ljb25NYXBwZXIgPSBQb2RTdGF0dXNJY29uTWFwcGVyO1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInBvZCB8IHB1cmU6IGdldFBvZFN0YXR1cyBhcyBzdGF0dXM7IGVsc2Ugbm9kYXRhXCI+XG4gIDxkaXYgY2xhc3M9XCJzdGF0dXMtd3JhcHBlclwiPlxuICAgIDxhY2wtc3RhdHVzLWljb25cbiAgICAgIFtzdGF0dXNdPVwic3RhdHVzIHwgcHVyZTogZ2V0UG9kQWdncmVnYXRlZFN0YXR1c1wiXG4gICAgICBbY29sb3JNYXBwZXJdPVwiUG9kU3RhdHVzQ29sb3JNYXBwZXJcIlxuICAgICAgW2ljb25NYXBwZXJdPVwiUG9kU3RhdHVzSWNvbk1hcHBlclwiXG4gICAgICBbd2l0aFRleHRdPVwiZmFsc2VcIlxuICAgICAgW25nU3R5bGVdPVwieyAnbWFyZ2luLXJpZ2h0JzogMCB9XCJcbiAgICA+PC9hY2wtc3RhdHVzLWljb24+XG4gICAgPGRpdiBjbGFzcz1cInR3LWZsZXhcIj5cbiAgICAgIHt7IHN0YXR1cyB9fVxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJyZWFkeUNvbnRhaW5lclRtcGxcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICRpbXBsaWNpdDogcG9kIHwgcHVyZTogZ2V0UmVhZHlDb250YWluZXIsXG4gICAgICAgIH1cIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICNyZWFkeUNvbnRhaW5lclRtcGxcbiAgICAgICAgbGV0LWRhdGFcbiAgICAgID5cbiAgICAgICAgKHt7IGRhdGEucmVhZHkgfX0ve3sgZGF0YS5hbGwgfX0pXG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInBvZCB8IHB1cmU6IGdldFBvZEVycm9yTWVzc2FnZXMgYXMgbWVzc2FnZXNcIj5cbiAgICAgICAgPGF1aS1pY29uXG4gICAgICAgICAgaWNvbj1cImZpbGVfbWFnbmlmaWVyXCJcbiAgICAgICAgICAqbmdJZj1cIm1lc3NhZ2VzPy5sZW5ndGggJiYgIWRpc2FibGVNZXNzYWdlT3ZlcnZpZXdcIlxuICAgICAgICAgIGNsYXNzPVwibWVzc2FnZS10aXAtaWNvblwiXG4gICAgICAgICAgW2F1aVRvb2x0aXBdPVwibWVzc2FnZXMubGVuZ3RoID09PSAxID8gb25seU9uZVBvZE1lc3NhZ2UgOiBwb2RNZXNzYWdlc1wiXG4gICAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgbWVzc2FnZXM6IG1lc3NhZ2VzIH1cIlxuICAgICAgICAgIHNpemU9XCIxNFwiXG4gICAgICAgICAgYXVpVG9vbHRpcENsYXNzPVwiY29uZGl0aW9uLW1lc3NhZ2UtdGlwXCJcbiAgICAgICAgPjwvYXVpLWljb24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbjxuZy10ZW1wbGF0ZSAjbm9kYXRhPi08L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlXG4gICNwb2RNZXNzYWdlc1xuICBsZXQtbWVzc2FnZXM9XCJtZXNzYWdlc1wiXG4+XG4gIDx1bCBjbGFzcz1cInBvZC1tZXNzYWdlc1wiPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgbXNnIG9mIG1lc3NhZ2VzXCI+PGVtPiZidWxsOzwvZW0+e3sgbXNnIH19PC9saT5cbiAgPC91bD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGVcbiAgI29ubHlPbmVQb2RNZXNzYWdlXG4gIGxldC1tZXNzYWdlcz1cIm1lc3NhZ2VzXCJcbj5cbiAge3sgbWVzc2FnZXNbMF0gfX1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -33,7 +33,13 @@ function getPodContainerStatus(pod, reason) {
|
|
|
33
33
|
}
|
|
34
34
|
function getPodInitStatus(pod, reason) {
|
|
35
35
|
let initializing = false;
|
|
36
|
-
|
|
36
|
+
// Build sidecar init container name set (restartPolicy: Always)
|
|
37
|
+
const sidecarNames = (get(pod, ['spec', 'initContainers'], []) || [])
|
|
38
|
+
.filter(c => c?.restartPolicy === 'Always')
|
|
39
|
+
.map(c => c?.name)
|
|
40
|
+
.filter(Boolean);
|
|
41
|
+
// Exclude sidecar statuses from init status calculation
|
|
42
|
+
const initContainerStatuses = (get(pod, ['status', 'initContainerStatuses'], []) || []).filter(s => !sidecarNames.includes(s?.name));
|
|
37
43
|
for (let i = initContainerStatuses.length - 1; i >= 0; i--) {
|
|
38
44
|
const status = initContainerStatuses[i];
|
|
39
45
|
if (get(status, ['state', 'terminated', 'exitCode']) === 0) {
|
|
@@ -53,7 +59,8 @@ function getPodInitStatus(pod, reason) {
|
|
|
53
59
|
reason = `Initing:${waitingReason}`;
|
|
54
60
|
}
|
|
55
61
|
else {
|
|
56
|
-
|
|
62
|
+
const initCount = (get(pod, ['spec', 'initContainers'], []) || []).filter((c) => get(c, ['restartPolicy']) !== 'Always').length;
|
|
63
|
+
reason = `Initing:${i}/${initCount}`;
|
|
57
64
|
}
|
|
58
65
|
initializing = true;
|
|
59
66
|
break;
|
|
@@ -81,4 +88,4 @@ export function getPodAggregatedStatus(status) {
|
|
|
81
88
|
}
|
|
82
89
|
return PodStatusEnum.error;
|
|
83
90
|
}
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BvZC1zdGF0dXMvc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFJaEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUxQywrSUFBK0k7QUFDL0ksTUFBTSxVQUFVLFlBQVksQ0FBQyxHQUFRO0lBQ25DLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ25ELE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRSxNQUFNLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUV4RSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDdkUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUNyQixDQUFDO1NBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDMUMsTUFBTSxHQUFHLGFBQWEsQ0FBQztJQUN6QixDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsR0FBUSxFQUFFLE1BQWM7SUFDckQsTUFBTSxpQkFBaUIsR0FBc0IsR0FBRyxDQUM5QyxHQUFHLEVBQ0gsQ0FBQyxRQUFRLEVBQUUsbUJBQW1CLENBQUMsRUFDL0IsRUFBRSxDQUNILENBQUM7SUFDRixL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Q0FBQztJQUNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLENBQUM7QUFDbEMsQ0FBQztBQUVELGdDQUFnQztBQUNoQyxrSkFBa0o7QUFDbEosTUFBTSxVQUFVLHNCQUFzQixDQUFDLE1BQWM7SUFDbkQsSUFDRSxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVM7UUFDbEM7WUFDRSxTQUFTO1lBQ1QsU0FBUztZQUNULGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsYUFBYTtTQUNkLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUNsQixDQUFDO1FBQ0QsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUMzQixPQUFPLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDakMsQ0FBQztJQUNELElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sYUFBYSxDQUFDLE9BQU8sQ0FBQztJQUMvQixDQUFDO0lBRUQsT0FBTyxhQUFhLENBQUMsS0FBSyxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQgeyBDb250YWluZXJTdGF0dXMsIFBvZCB9IGZyb20gJy4uL2NvcmUvdHlwZXMvazhzL3Jhdyc7XG5cbmltcG9ydCB7IFBvZFN0YXR1c0VudW0gfSBmcm9tICcuL3R5cGluZ3MnO1xuXG4vLyByZWZlcmVuY2U6IGh0dHBzOi8vYml0YnVja2V0Lm9yZy9tYXRoaWxkZXRlY2gvbGluay9zcmMvYzgxMTYxZjAyZjk4MTkwNGI3MTY0NjJhMzA1ZTA5NDE0ZTU2MTdkMy9zcmMvYmFja2VuZC9yZXNvdXJjZS9jb21tb24vcG9kLmdvI2xpbmVzLTE3OVxuZXhwb3J0IGZ1bmN0aW9uIGdldFBvZFN0YXR1cyhwb2Q6IFBvZCk6IHN0cmluZyB7XG4gIGxldCByZWFzb24gPSBwb2Quc3RhdHVzLnBoYXNlIHx8IHBvZC5zdGF0dXMucmVhc29uO1xuICBjb25zdCB7IGluaXRpYWxpemluZywgcmVhc29uOiBpbml0UmVhc29uIH0gPSBnZXRQb2RJbml0U3RhdHVzKHBvZCwgcmVhc29uKTtcbiAgcmVhc29uID0gaW5pdGlhbGl6aW5nID8gaW5pdFJlYXNvbiA6IGdldFBvZENvbnRhaW5lclN0YXR1cyhwb2QsIHJlYXNvbik7XG5cbiAgaWYgKHBvZC5tZXRhZGF0YS5kZWxldGlvblRpbWVzdGFtcCAmJiBwb2Quc3RhdHVzLnJlYXNvbiA9PT0gJ05vZGVMb3N0Jykge1xuICAgIHJlYXNvbiA9ICdVbmtub3duJztcbiAgfSBlbHNlIGlmIChwb2QubWV0YWRhdGEuZGVsZXRpb25UaW1lc3RhbXApIHtcbiAgICByZWFzb24gPSAnVGVybWluYXRpbmcnO1xuICB9XG4gIHJldHVybiByZWFzb247XG59XG5cbmZ1bmN0aW9uIGdldFBvZENvbnRhaW5lclN0YXR1cyhwb2Q6IFBvZCwgcmVhc29uOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBjb250YWluZXJTdGF0dXNlczogQ29udGFpbmVyU3RhdHVzW10gPSBnZXQoXG4gICAgcG9kLFxuICAgIFsnc3RhdHVzJywgJ2NvbnRhaW5lclN0YXR1c2VzJ10sXG4gICAgW10sXG4gICk7XG4gIGZvciAobGV0IGkgPSAwLCBsZW4gPSBjb250YWluZXJTdGF0dXNlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IGNvbnRhaW5lclN0YXR1c2VzW2ldO1xuICAgIGxldCB3YWl0aW5nUmVhc29uLCB0ZXJtaW5hdGVkUmVhc29uO1xuICAgIGlmICgod2FpdGluZ1JlYXNvbiA9IGdldChjb250YWluZXIsIFsnc3RhdGUnLCAnd2FpdGluZycsICdyZWFzb24nXSkpKSB7XG4gICAgICByZXR1cm4gd2FpdGluZ1JlYXNvbjtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgKHRlcm1pbmF0ZWRSZWFzb24gPSBnZXQoY29udGFpbmVyLCBbJ3N0YXRlJywgJ3Rlcm1pbmF0ZWQnLCAncmVhc29uJ10pKVxuICAgICkge1xuICAgICAgcmV0dXJuIHRlcm1pbmF0ZWRSZWFzb247XG4gICAgfVxuICAgIGlmIChnZXQoY29udGFpbmVyLCBbJ3N0YXRlJywgJ3Rlcm1pbmF0ZWQnXSkpIHtcbiAgICAgIGNvbnN0IHsgc2lnbmFsLCBleGl0Q29kZSB9ID0gY29udGFpbmVyLnN0YXRlLnRlcm1pbmF0ZWQ7XG4gICAgICByZXR1cm4gc2lnbmFsID09PSAwID8gYEV4aXRDb2RlOiR7ZXhpdENvZGV9YCA6IGBTaWduYWw6JHtzaWduYWx9YDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlYXNvbjtcbn1cblxuZnVuY3Rpb24gZ2V0UG9kSW5pdFN0YXR1cyhwb2Q6IFBvZCwgcmVhc29uOiBzdHJpbmcpIHtcbiAgbGV0IGluaXRpYWxpemluZyA9IGZhbHNlO1xuICBjb25zdCBpbml0Q29udGFpbmVyU3RhdHVzZXMgPSBnZXQoXG4gICAgcG9kLFxuICAgIFsnc3RhdHVzJywgJ2luaXRDb250YWluZXJTdGF0dXNlcyddLFxuICAgIFtdIGFzIENvbnRhaW5lclN0YXR1c1tdLFxuICApO1xuICBmb3IgKGxldCBpID0gaW5pdENvbnRhaW5lclN0YXR1c2VzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gaW5pdENvbnRhaW5lclN0YXR1c2VzW2ldO1xuICAgIGlmIChnZXQoc3RhdHVzLCBbJ3N0YXRlJywgJ3Rlcm1pbmF0ZWQnLCAnZXhpdENvZGUnXSkgPT09IDApIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBsZXQgd2FpdGluZ1JlYXNvbjogc3RyaW5nO1xuICAgIGNvbnN0IHRlcm1pbmF0ZWQgPSBnZXQoc3RhdHVzLCBbJ3N0YXRlJywgJ3Rlcm1pbmF0ZWQnXSk7XG4gICAgaWYgKHRlcm1pbmF0ZWQpIHtcbiAgICAgIHJlYXNvbiA9IHRlcm1pbmF0ZWQucmVhc29uXG4gICAgICAgID8gYEluaXQ6JHt0ZXJtaW5hdGVkLnJlYXNvbn1gXG4gICAgICAgIDogdGVybWluYXRlZC5zaWduYWwgPT09IDBcbiAgICAgICAgPyBgSW5pdDpFeGl0Q29kZToke3Rlcm1pbmF0ZWQuZXhpdENvZGV9YFxuICAgICAgICA6IGBJbml0OlNpZ25hbDoke3Rlcm1pbmF0ZWQuc2lnbmFsfWA7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICh3YWl0aW5nUmVhc29uID0gZ2V0KHN0YXR1cywgWydzdGF0ZScsICd3YWl0aW5nJywgcmVhc29uXSkpICYmXG4gICAgICB3YWl0aW5nUmVhc29uICE9PSAnUG9kSW5pdGlhbGl6aW5nJ1xuICAgICkge1xuICAgICAgcmVhc29uID0gYEluaXRpbmc6JHt3YWl0aW5nUmVhc29ufWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlYXNvbiA9IGBJbml0aW5nOiR7aX0vJHtwb2Quc3BlYy5pbml0Q29udGFpbmVycy5sZW5ndGh9YDtcbiAgICB9XG4gICAgaW5pdGlhbGl6aW5nID0gdHJ1ZTtcbiAgICBicmVhaztcbiAgfVxuICByZXR1cm4geyBpbml0aWFsaXppbmcsIHJlYXNvbiB9O1xufVxuXG4vLyDlsIYgZ2V0UG9kU3RhdHVzIOW+l+WIsOeahOWkmuenjeeKtuaAgeaYoOWwhOWIsOagh+etvuexu+Wei1xuLy8gcmVmZXJlbmNlOiBodHRwczovL2JpdGJ1Y2tldC5vcmcvbWF0aGlsZGV0ZWNoL2xpbmsvc3JjL2M4MTE2MWYwMmY5ODE5MDRiNzE2NDYyYTMwNWUwOTQxNGU1NjE3ZDMvc3JjL2JhY2tlbmQvcmVzb3VyY2UvY29tbW9uL3BvZGluZm8uZ28jbGluZXMtNjhcbmV4cG9ydCBmdW5jdGlvbiBnZXRQb2RBZ2dyZWdhdGVkU3RhdHVzKHN0YXR1czogc3RyaW5nKTogUG9kU3RhdHVzRW51bSB7XG4gIGlmIChcbiAgICBzdGF0dXMuc3BsaXQoJzonKVswXSA9PT0gJ0luaXRpbmcnIHx8XG4gICAgW1xuICAgICAgJ0luaXRpbmcnLFxuICAgICAgJ1BlbmRpbmcnLFxuICAgICAgJ1BvZEluaXRpYWxpemluZycsXG4gICAgICAnQ29udGFpbmVyQ3JlYXRpbmcnLFxuICAgICAgJ1Rlcm1pbmF0aW5nJyxcbiAgICBdLmluY2x1ZGVzKHN0YXR1cylcbiAgKSB7XG4gICAgcmV0dXJuIFBvZFN0YXR1c0VudW0ucGVuZGluZztcbiAgfVxuXG4gIGlmIChzdGF0dXMgPT09ICdDb21wbGV0ZWQnKSB7XG4gICAgcmV0dXJuIFBvZFN0YXR1c0VudW0uY29tcGxldGVkO1xuICB9XG4gIGlmIChzdGF0dXMgPT09ICdSdW5uaW5nJykge1xuICAgIHJldHVybiBQb2RTdGF0dXNFbnVtLnJ1bm5pbmc7XG4gIH1cblxuICByZXR1cm4gUG9kU3RhdHVzRW51bS5lcnJvcjtcbn1cbiJdfQ==
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3BvZC1zdGF0dXMvc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFJaEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUxQywrSUFBK0k7QUFDL0ksTUFBTSxVQUFVLFlBQVksQ0FBQyxHQUFRO0lBQ25DLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ25ELE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRSxNQUFNLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUV4RSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDdkUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUNyQixDQUFDO1NBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDMUMsTUFBTSxHQUFHLGFBQWEsQ0FBQztJQUN6QixDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsR0FBUSxFQUFFLE1BQWM7SUFDckQsTUFBTSxpQkFBaUIsR0FBc0IsR0FBRyxDQUM5QyxHQUFHLEVBQ0gsQ0FBQyxRQUFRLEVBQUUsbUJBQW1CLENBQUMsRUFDL0IsRUFBRSxDQUNILENBQUM7SUFDRixL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LElBQUksTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQzNCLE9BQU8sYUFBYSxDQUFDLFNBQVMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDekIsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQy9CLENBQUM7SUFFRCxPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmltcG9ydCB7IENvbnRhaW5lclN0YXR1cywgUG9kIH0gZnJvbSAnLi4vY29yZS90eXBlcy9rOHMvcmF3JztcblxuaW1wb3J0IHsgUG9kU3RhdHVzRW51bSB9IGZyb20gJy4vdHlwaW5ncyc7XG5cbi8vIHJlZmVyZW5jZTogaHR0cHM6Ly9iaXRidWNrZXQub3JnL21hdGhpbGRldGVjaC9saW5rL3NyYy9jODExNjFmMDJmOTgxOTA0YjcxNjQ2MmEzMDVlMDk0MTRlNTYxN2QzL3NyYy9iYWNrZW5kL3Jlc291cmNlL2NvbW1vbi9wb2QuZ28jbGluZXMtMTc5XG5leHBvcnQgZnVuY3Rpb24gZ2V0UG9kU3RhdHVzKHBvZDogUG9kKTogc3RyaW5nIHtcbiAgbGV0IHJlYXNvbiA9IHBvZC5zdGF0dXMucGhhc2UgfHwgcG9kLnN0YXR1cy5yZWFzb247XG4gIGNvbnN0IHsgaW5pdGlhbGl6aW5nLCByZWFzb246IGluaXRSZWFzb24gfSA9IGdldFBvZEluaXRTdGF0dXMocG9kLCByZWFzb24pO1xuICByZWFzb24gPSBpbml0aWFsaXppbmcgPyBpbml0UmVhc29uIDogZ2V0UG9kQ29udGFpbmVyU3RhdHVzKHBvZCwgcmVhc29uKTtcblxuICBpZiAocG9kLm1ldGFkYXRhLmRlbGV0aW9uVGltZXN0YW1wICYmIHBvZC5zdGF0dXMucmVhc29uID09PSAnTm9kZUxvc3QnKSB7XG4gICAgcmVhc29uID0gJ1Vua25vd24nO1xuICB9IGVsc2UgaWYgKHBvZC5tZXRhZGF0YS5kZWxldGlvblRpbWVzdGFtcCkge1xuICAgIHJlYXNvbiA9ICdUZXJtaW5hdGluZyc7XG4gIH1cbiAgcmV0dXJuIHJlYXNvbjtcbn1cblxuZnVuY3Rpb24gZ2V0UG9kQ29udGFpbmVyU3RhdHVzKHBvZDogUG9kLCByZWFzb246IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGNvbnRhaW5lclN0YXR1c2VzOiBDb250YWluZXJTdGF0dXNbXSA9IGdldChcbiAgICBwb2QsXG4gICAgWydzdGF0dXMnLCAnY29udGFpbmVyU3RhdHVzZXMnXSxcbiAgICBbXSxcbiAgKTtcbiAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGNvbnRhaW5lclN0YXR1c2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgY29uc3QgY29udGFpbmVyID0gY29udGFpbmVyU3RhdHVzZXNbaV07XG4gICAgbGV0IHdhaXRpbmdSZWFzb24sIHRlcm1pbmF0ZWRSZWFzb247XG4gICAgaWYgKCh3YWl0aW5nUmVhc29uID0gZ2V0KGNvbnRhaW5lciwgWydzdGF0ZScsICd3YWl0aW5nJywgJ3JlYXNvbiddKSkpIHtcbiAgICAgIHJldHVybiB3YWl0aW5nUmVhc29uO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICAodGVybWluYXRlZFJlYXNvbiA9IGdldChjb250YWluZXIsIFsnc3RhdGUnLCAndGVybWluYXRlZCcsICdyZWFzb24nXSkpXG4gICAgKSB7XG4gICAgICByZXR1cm4gdGVybWluYXRlZFJlYXNvbjtcbiAgICB9XG4gICAgaWYgKGdldChjb250YWluZXIsIFsnc3RhdGUnLCAndGVybWluYXRlZCddKSkge1xuICAgICAgY29uc3QgeyBzaWduYWwsIGV4aXRDb2RlIH0gPSBjb250YWluZXIuc3RhdGUudGVybWluYXRlZDtcbiAgICAgIHJldHVybiBzaWduYWwgPT09IDAgPyBgRXhpdENvZGU6JHtleGl0Q29kZX1gIDogYFNpZ25hbDoke3NpZ25hbH1gO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVhc29uO1xufVxuXG5mdW5jdGlvbiBnZXRQb2RJbml0U3RhdHVzKHBvZDogUG9kLCByZWFzb246IHN0cmluZykge1xuICBsZXQgaW5pdGlhbGl6aW5nID0gZmFsc2U7XG4gIC8vIEJ1aWxkIHNpZGVjYXIgaW5pdCBjb250YWluZXIgbmFtZSBzZXQgKHJlc3RhcnRQb2xpY3k6IEFsd2F5cylcbiAgY29uc3Qgc2lkZWNhck5hbWVzOiBzdHJpbmdbXSA9IChcbiAgICBnZXQocG9kLCBbJ3NwZWMnLCAnaW5pdENvbnRhaW5lcnMnXSwgW10pIHx8IFtdXG4gIClcbiAgICAuZmlsdGVyKGMgPT4gYz8ucmVzdGFydFBvbGljeSA9PT0gJ0Fsd2F5cycpXG4gICAgLm1hcChjID0+IGM/Lm5hbWUpXG4gICAgLmZpbHRlcihCb29sZWFuKTtcblxuICAvLyBFeGNsdWRlIHNpZGVjYXIgc3RhdHVzZXMgZnJvbSBpbml0IHN0YXR1cyBjYWxjdWxhdGlvblxuICBjb25zdCBpbml0Q29udGFpbmVyU3RhdHVzZXMgPSAoXG4gICAgZ2V0KHBvZCwgWydzdGF0dXMnLCAnaW5pdENvbnRhaW5lclN0YXR1c2VzJ10sIFtdIGFzIENvbnRhaW5lclN0YXR1c1tdKSB8fCBbXVxuICApLmZpbHRlcihzID0+ICFzaWRlY2FyTmFtZXMuaW5jbHVkZXMocz8ubmFtZSkpO1xuICBmb3IgKGxldCBpID0gaW5pdENvbnRhaW5lclN0YXR1c2VzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gaW5pdENvbnRhaW5lclN0YXR1c2VzW2ldO1xuICAgIGlmIChnZXQoc3RhdHVzLCBbJ3N0YXRlJywgJ3Rlcm1pbmF0ZWQnLCAnZXhpdENvZGUnXSkgPT09IDApIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBsZXQgd2FpdGluZ1JlYXNvbjogc3RyaW5nO1xuICAgIGNvbnN0IHRlcm1pbmF0ZWQgPSBnZXQoc3RhdHVzLCBbJ3N0YXRlJywgJ3Rlcm1pbmF0ZWQnXSk7XG4gICAgaWYgKHRlcm1pbmF0ZWQpIHtcbiAgICAgIHJlYXNvbiA9IHRlcm1pbmF0ZWQucmVhc29uXG4gICAgICAgID8gYEluaXQ6JHt0ZXJtaW5hdGVkLnJlYXNvbn1gXG4gICAgICAgIDogdGVybWluYXRlZC5zaWduYWwgPT09IDBcbiAgICAgICAgICA/IGBJbml0OkV4aXRDb2RlOiR7dGVybWluYXRlZC5leGl0Q29kZX1gXG4gICAgICAgICAgOiBgSW5pdDpTaWduYWw6JHt0ZXJtaW5hdGVkLnNpZ25hbH1gO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICAod2FpdGluZ1JlYXNvbiA9IGdldChzdGF0dXMsIFsnc3RhdGUnLCAnd2FpdGluZycsIHJlYXNvbl0pKSAmJlxuICAgICAgd2FpdGluZ1JlYXNvbiAhPT0gJ1BvZEluaXRpYWxpemluZydcbiAgICApIHtcbiAgICAgIHJlYXNvbiA9IGBJbml0aW5nOiR7d2FpdGluZ1JlYXNvbn1gO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbml0Q291bnQgPSAoZ2V0KHBvZCwgWydzcGVjJywgJ2luaXRDb250YWluZXJzJ10sIFtdKSB8fCBbXSkuZmlsdGVyKFxuICAgICAgICAoYzogYW55KSA9PiBnZXQoYywgWydyZXN0YXJ0UG9saWN5J10pICE9PSAnQWx3YXlzJyxcbiAgICAgICkubGVuZ3RoO1xuICAgICAgcmVhc29uID0gYEluaXRpbmc6JHtpfS8ke2luaXRDb3VudH1gO1xuICAgIH1cbiAgICBpbml0aWFsaXppbmcgPSB0cnVlO1xuICAgIGJyZWFrO1xuICB9XG4gIHJldHVybiB7IGluaXRpYWxpemluZywgcmVhc29uIH07XG59XG5cbi8vIOWwhiBnZXRQb2RTdGF0dXMg5b6X5Yiw55qE5aSa56eN54q25oCB5pig5bCE5Yiw5qCH562+57G75Z6LXG4vLyByZWZlcmVuY2U6IGh0dHBzOi8vYml0YnVja2V0Lm9yZy9tYXRoaWxkZXRlY2gvbGluay9zcmMvYzgxMTYxZjAyZjk4MTkwNGI3MTY0NjJhMzA1ZTA5NDE0ZTU2MTdkMy9zcmMvYmFja2VuZC9yZXNvdXJjZS9jb21tb24vcG9kaW5mby5nbyNsaW5lcy02OFxuZXhwb3J0IGZ1bmN0aW9uIGdldFBvZEFnZ3JlZ2F0ZWRTdGF0dXMoc3RhdHVzOiBzdHJpbmcpOiBQb2RTdGF0dXNFbnVtIHtcbiAgaWYgKFxuICAgIHN0YXR1cy5zcGxpdCgnOicpWzBdID09PSAnSW5pdGluZycgfHxcbiAgICBbXG4gICAgICAnSW5pdGluZycsXG4gICAgICAnUGVuZGluZycsXG4gICAgICAnUG9kSW5pdGlhbGl6aW5nJyxcbiAgICAgICdDb250YWluZXJDcmVhdGluZycsXG4gICAgICAnVGVybWluYXRpbmcnLFxuICAgIF0uaW5jbHVkZXMoc3RhdHVzKVxuICApIHtcbiAgICByZXR1cm4gUG9kU3RhdHVzRW51bS5wZW5kaW5nO1xuICB9XG5cbiAgaWYgKHN0YXR1cyA9PT0gJ0NvbXBsZXRlZCcpIHtcbiAgICByZXR1cm4gUG9kU3RhdHVzRW51bS5jb21wbGV0ZWQ7XG4gIH1cbiAgaWYgKHN0YXR1cyA9PT0gJ1J1bm5pbmcnKSB7XG4gICAgcmV0dXJuIFBvZFN0YXR1c0VudW0ucnVubmluZztcbiAgfVxuXG4gIHJldHVybiBQb2RTdGF0dXNFbnVtLmVycm9yO1xufVxuIl19
|
package/exec/module.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import * as i5 from "../translate/translate.module";
|
|
|
9
9
|
import * as i6 from "@alauda/ui";
|
|
10
10
|
import * as i7 from "../widget/text-ellipsis/component";
|
|
11
11
|
import * as i8 from "../widget/loading-mask/loading-mask.component";
|
|
12
|
-
export declare const EXPORTS: (typeof
|
|
12
|
+
export declare const EXPORTS: (typeof TerminalExtraContentDirective | typeof TerminalComponent)[];
|
|
13
13
|
export declare class EXECModule {
|
|
14
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<EXECModule, never>;
|
|
15
15
|
static ɵmod: i0.ɵɵNgModuleDeclaration<EXECModule, [typeof i1.TerminalGroupComponent, typeof i2.TerminalComponent, typeof i3.TerminalPlaceholderComponent, typeof i1.TerminalExtraButtonDirective, typeof i1.TerminalExtraContentDirective], [typeof i4.CommonModule, typeof i5.TranslateModule, typeof i6.ButtonModule, typeof i6.DropdownModule, typeof i6.IconModule, typeof i6.InlineAlertModule, typeof i6.InputModule, typeof i6.TabsModule, typeof i6.TooltipModule, typeof i6.ThemeModule, typeof i7.TextEllipsisComponent, typeof i8.LoadingMaskComponent], [typeof i1.TerminalGroupComponent, typeof i2.TerminalComponent, typeof i3.TerminalPlaceholderComponent, typeof i1.TerminalExtraButtonDirective, typeof i1.TerminalExtraContentDirective]>;
|
|
@@ -5,7 +5,6 @@ import { Terminal } from 'xterm';
|
|
|
5
5
|
import { CanvasAddon } from 'xterm-addon-canvas';
|
|
6
6
|
import { WebglAddon } from 'xterm-addon-webgl';
|
|
7
7
|
import { ApiGatewayService } from '../../api/public-api';
|
|
8
|
-
import { K8sPermissionService } from '../../permission/k8s-permission.service';
|
|
9
8
|
import { TranslateService } from '../../translate/public-api';
|
|
10
9
|
import { ConnectionStatus } from '../constants';
|
|
11
10
|
import { TerminalOption } from '../types';
|
|
@@ -30,8 +29,6 @@ export declare class TerminalComponent implements OnChanges, OnDestroy, OnInit {
|
|
|
30
29
|
private readonly notification;
|
|
31
30
|
private readonly translate;
|
|
32
31
|
private readonly cdr;
|
|
33
|
-
private readonly k8sPermission;
|
|
34
|
-
private readonly globalNamespace;
|
|
35
32
|
ConnectionStatus: typeof ConnectionStatus;
|
|
36
33
|
option: TerminalOption;
|
|
37
34
|
index: number;
|
|
@@ -61,7 +58,7 @@ export declare class TerminalComponent implements OnChanges, OnDestroy, OnInit {
|
|
|
61
58
|
shouldFallBackOnClose: boolean;
|
|
62
59
|
get themeClass(): string;
|
|
63
60
|
get showLoading(): boolean;
|
|
64
|
-
constructor(apiGateway: ApiGatewayService, notification: NotificationService, translate: TranslateService, cdr: ChangeDetectorRef
|
|
61
|
+
constructor(apiGateway: ApiGatewayService, notification: NotificationService, translate: TranslateService, cdr: ChangeDetectorRef);
|
|
65
62
|
ngOnInit(): void;
|
|
66
63
|
ngOnChanges({ option }: SimpleChanges): void;
|
|
67
64
|
ngOnDestroy(): void;
|
package/exec/types.d.ts
CHANGED
package/license/license-api.d.ts
CHANGED
|
@@ -11,6 +11,10 @@ export declare class LicenseApiService {
|
|
|
11
11
|
getLicense(product: string): import("rxjs").Observable<FeatureGate>;
|
|
12
12
|
getEnterpriseSupport(product?: string): import("rxjs").Observable<FeatureGateEnterpriseSupport>;
|
|
13
13
|
getLicenseResourceLimit(check: 'resource' | 'node' | 'version', resource: number): import("rxjs").Observable<boolean>;
|
|
14
|
+
/**
|
|
15
|
+
* @deprecated 已经没有使用场景,未考虑 licenseExempt 情况
|
|
16
|
+
*/
|
|
17
|
+
getLicenseAllowVersion(version: string): import("rxjs").Observable<FeatureGate>;
|
|
14
18
|
static ɵfac: i0.ɵɵFactoryDeclaration<LicenseApiService, never>;
|
|
15
19
|
static ɵprov: i0.ɵɵInjectableDeclaration<LicenseApiService>;
|
|
16
20
|
}
|