kwikid-forms 0.6.24 → 0.6.26
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/bundles/kwikid-forms.umd.js +56 -1
- package/bundles/kwikid-forms.umd.js.map +1 -1
- package/esm2015/lib/renderer/config-converter/config-converter.constants.js +9 -1
- package/esm2015/lib/renderer/config-converter/config-converter.js +10 -1
- package/esm2015/lib/renderer/form-view/definitions/form-view.fields.definition.js +2 -1
- package/esm2015/lib/renderer/form-view/form-view.component.js +2 -2
- package/esm2015/lib/renderer/form-view/helpers/form-view.fields.helper.js +39 -2
- package/fesm2015/kwikid-forms.js +57 -2
- package/fesm2015/kwikid-forms.js.map +1 -1
- package/lib/renderer/config-converter/config-converter.constants.d.ts +8 -0
- package/lib/renderer/form-view/definitions/form-view.fields.definition.d.ts +2 -1
- package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +3 -1
- package/package.json +3 -3
|
@@ -90,6 +90,14 @@ export const FIELD_PROPERTIES = {
|
|
|
90
90
|
postfix: "",
|
|
91
91
|
prefix: ""
|
|
92
92
|
},
|
|
93
|
+
time: {
|
|
94
|
+
containerStyles: "",
|
|
95
|
+
items: undefined,
|
|
96
|
+
mode: "HH:MM",
|
|
97
|
+
placeholder: "",
|
|
98
|
+
postfix: "",
|
|
99
|
+
prefix: ""
|
|
100
|
+
},
|
|
93
101
|
radio: {
|
|
94
102
|
containerStyles: "",
|
|
95
103
|
orientation: "vertical",
|
|
@@ -218,4 +226,4 @@ export const FIELD_PROPERTIES = {
|
|
|
218
226
|
size: "m"
|
|
219
227
|
}
|
|
220
228
|
};
|
|
221
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLWNvbnZlcnRlci5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9jb25maWctY29udmVydGVyL2NvbmZpZy1jb252ZXJ0ZXIuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLE1BQU0sRUFBRTtRQUNOLFVBQVUsRUFBRSxTQUFTO1FBQ3JCLEtBQUssRUFBRSxFQUFFO1FBQ1QsZUFBZSxFQUFFLEVBQUU7UUFDbkIsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsRUFBRTtRQUNiLE9BQU8sRUFBRSxLQUFLO1FBQ2QsS0FBSyxFQUFFLElBQUk7UUFDWCxJQUFJLEVBQUUsR0FBRztRQUNULE1BQU0sRUFBRSxpQ0FBaUM7S0FDMUM7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsU0FBUztRQUNmLGVBQWUsRUFBRSxFQUFFO1FBQ25CLE9BQU8sRUFBRSxFQUFFO1FBQ1gsTUFBTSxFQUFFLEVBQUU7S0FDWDtJQUNELEtBQUssRUFBRTtRQUNMLElBQUksRUFBRSxTQUFTO1FBQ2YsZUFBZSxFQUFFLEVBQUU7UUFDbkIsT0FBTyxFQUFFLEVBQUU7UUFDWCxNQUFNLEVBQUUsRUFBRTtLQUNYO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsZUFBZSxFQUFFLEVBQUU7UUFDbkIsV0FBVyxFQUFFLEVBQUU7UUFDZixPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxFQUFFO0tBQ1g7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixlQUFlLEVBQUUsRUFBRTtRQUNuQixJQUFJLEVBQUUsNkJBQTZCO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFO1FBQ04sZUFBZSxFQUFFLEVBQUU7UUFDbkIsT0FBTyxFQUFFLE9BQU87UUFDaEIsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsQ0FBQyxRQUFRO1FBQ2QsV0FBVyxFQUFFLEVBQUU7UUFDZixPQUFPLEVBQUUsRUFBRTtRQUNYLFNBQVMsRUFBRSxDQUFDO1FBQ1osTUFBTSxFQUFFLEVBQUU7S0FDWDtJQUNELEtBQUssRUFBRTtRQUNMLGVBQWUsRUFBRSxFQUFFO1FBQ25CLFdBQVcsRUFBRSxLQUFLO1FBQ2xCLHlCQUF5QixFQUFFLGFBQWE7UUFDeEMsV0FBVyxFQUFFLEVBQUU7UUFDZixPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxFQUFFO1FBQ1YsMEJBQTBCLEVBQUUsSUFBSTtLQUNqQztJQUNELElBQUksRUFBRTtRQUNKLGVBQWUsRUFBRSxFQUFFO0tBQ3BCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsZUFBZSxFQUFFLEVBQUU7S0FDcEI7SUFDRCxRQUFRLEVBQUU7UUFDUixlQUFlLEVBQUUsRUFBRTtLQUNwQjtJQUNELEtBQUssRUFBRTtRQUNMLGVBQWUsRUFBRSxFQUFFO0tBQ3BCO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsS0FBSyxFQUFFLEVBQUU7UUFDVCxPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxFQUFFO1FBQ1YsS0FBSyxFQUFFLEVBQUU7UUFDVCxlQUFlLEVBQUUsRUFBRTtRQUNuQixJQUFJLEVBQUUsRUFBRTtRQUNSLFNBQVMsRUFBRSxLQUFLO1FBQ2hCLFdBQVcsRUFBRSxNQUFNO1FBQ25CLE1BQU0sRUFBRSxFQUFFO0tBQ1g7SUFDRCxJQUFJLEVBQUU7UUFDSixlQUFlLEVBQUUsRUFBRTtRQUNuQixzQkFBc0IsRUFBRTtZQUN0QixJQUFJLEVBQUUsQ0FBQztZQUNQLEtBQUssRUFBRSxDQUFDO1lBQ1IsR0FBRyxFQUFFLENBQUM7U0FDUDtRQUNELHNCQUFzQixFQUFFO1lBQ3RCLElBQUksRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRTtZQUM5QixLQUFLLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7WUFDNUIsR0FBRyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFO1NBQzFCO1FBQ0QsV0FBVyxFQUFFLEVBQUU7UUFDZixPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxFQUFFO0tBQ1g7SUFDRCxLQUFLLEVBQUU7UUFDTCxlQUFlLEVBQUUsRUFBRTtRQUNuQixXQUFXLEVBQUUsVUFBVTtRQUN2QixJQUFJLEVBQUUsR0FBRztLQUNWO0lBQ0QsTUFBTSxFQUFFO1FBQ04sZUFBZSxFQUFFLEVBQUU7UUFDbkIsR0FBRyxFQUFFLEdBQUc7UUFDUixHQUFHLEVBQUUsQ0FBQztRQUNOLE9BQU8sRUFBRSxFQUFFO1FBQ1gsTUFBTSxFQUFFLEVBQUU7UUFDVixPQUFPLEVBQUUsQ0FBQztRQUNWLElBQUksRUFBRSxHQUFHO1FBQ1QsS0FBSyxFQUFFLENBQUM7S0FDVDtJQUNELEdBQUcsRUFBRTtRQUNILGVBQWUsRUFBRSxFQUFFO1FBQ25CLEtBQUssRUFBRSxJQUFJO1FBQ1gsSUFBSSxFQUFFLEdBQUc7S0FDVjtJQUNELEdBQUcsRUFBRTtRQUNILGVBQWUsRUFBRSxFQUFFO1FBQ25CLElBQUksRUFBRSxVQUFVO1FBQ2hCLFNBQVMsRUFBRSxDQUFDO1FBQ1osV0FBVyxFQUFFLEVBQUU7UUFDZixJQUFJLEVBQUUsR0FBRztLQUNWO0lBQ0QsSUFBSSxFQUFFO1FBQ0osTUFBTSxFQUFFLGlCQUFpQjtRQUN6QixlQUFlLEVBQUUsRUFBRTtRQUNuQixLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsV0FBVyxFQUFFLE9BQU87UUFDcEIsUUFBUSxFQUFFLElBQUk7UUFDZCxJQUFJLEVBQUUsR0FBRztRQUNULGtCQUFrQixFQUFFLElBQUk7S0FDekI7SUFDRCxPQUFPLEVBQUU7UUFDUCxlQUFlLEVBQUUsRUFBRTtRQUNuQixVQUFVLEVBQUUsUUFBUTtRQUNwQixJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLGNBQWMsRUFBRSxJQUFJO1FBQ3BCLGtCQUFrQixFQUFFLEtBQUs7UUFDekIsY0FBYyxFQUFFLEtBQUs7UUFDckIsYUFBYSxFQUFFLEtBQUs7UUFDcEIsb0JBQW9CLEVBQUUsRUFBRTtRQUN4QixZQUFZLEVBQUU7WUFDWixNQUFNLEVBQUU7Z0JBQ04sS0FBSyxFQUFFLFFBQVE7Z0JBQ2YsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsT0FBTyxFQUFFLElBQUk7YUFDZDtZQUNELE1BQU0sRUFBRTtnQkFDTixRQUFRLEVBQUUsSUFBSTtnQkFDZCxNQUFNLEVBQUUsS0FBSztnQkFDYixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLGFBQWEsRUFBRSxLQUFLO2dCQUNwQixXQUFXLEVBQUUsS0FBSztnQkFDbEIseUJBQXlCLEVBQUUsS0FBSztnQkFDaEMsY0FBYyxFQUFFLEtBQUs7Z0JBQ3JCLElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsRUFBRTtpQkFDVjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsSUFBSSxFQUFFLEtBQUs7b0JBQ1gsTUFBTSxFQUFFO3dCQUNOLE1BQU0sRUFBRSxLQUFLO3dCQUNiLE9BQU8sRUFBRSxLQUFLO3FCQUNmO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGO0lBQ0QsTUFBTSxFQUFFO1FBQ04sZUFBZSxFQUFFLEVBQUU7UUFDbkIsVUFBVSxFQUFFLFFBQVE7UUFDcEIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixjQUFjLEVBQUUsSUFBSTtRQUNwQixrQkFBa0IsRUFBRSxLQUFLO1FBQ3pCLFlBQVksRUFBRTtZQUNaLE1BQU0sRUFBRTtnQkFDTixLQUFLLEVBQUUsUUFBUTtnQkFDZixNQUFNLEVBQUUsS0FBSztnQkFDYixRQUFRLEVBQUUsSUFBSTtnQkFDZCxPQUFPLEVBQUUsSUFBSTthQUNkO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLFFBQVEsRUFBRSxJQUFJO2dCQUNkLE1BQU0sRUFBRSxLQUFLO2dCQUNiLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sYUFBYSxFQUFFLEtBQUs7Z0JBQ3BCLGNBQWMsRUFBRSxLQUFLO2dCQUNyQix5QkFBeUIsRUFBRSxDQUFDO2dCQUM1Qix5QkFBeUIsRUFBRSxFQUFFO2dCQUM3QixPQUFPLEVBQUU7b0JBQ1AsSUFBSSxFQUFFLEtBQUs7b0JBQ1gsTUFBTSxFQUFFO3dCQUNOLE1BQU0sRUFBRSxLQUFLO3dCQUNiLE9BQU8sRUFBRSxLQUFLO3FCQUNmO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGO0lBQ0QsTUFBTSxFQUFFO1FBQ04sZUFBZSxFQUFFLEVBQUU7UUFDbkIsVUFBVSxFQUFFLElBQUk7S0FDakI7SUFDRCxzQkFBc0IsRUFBRTtRQUN0QixVQUFVLEVBQUUsSUFBSTtRQUNoQixlQUFlLEVBQUUsRUFBRTtLQUNwQjtJQUNELGFBQWEsRUFBRTtRQUNiLEtBQUssRUFBRSxvQkFBb0I7UUFDM0IsZUFBZSxFQUFFLEVBQUU7UUFDbkIsSUFBSSxFQUFFLGl1QkFBaXVCO1FBQ3Z1QixVQUFVLEVBQUUsNnVCQUE2dUI7UUFDenZCLEdBQUcsRUFBRSxFQUFFO1FBQ1AsR0FBRyxFQUFFLENBQUM7UUFDTixXQUFXLEVBQUUsRUFBRTtRQUNmLElBQUksRUFBRSxHQUFHO0tBQ1Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEZJRUxEX1BST1BFUlRJRVMgPSB7XG4gIGJ1dHRvbjoge1xuICAgIGFwcGVhcmFuY2U6IFwicHJpbWFyeVwiLFxuICAgIGNsYXNzOiBcIlwiLFxuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBpY29uOiBcIlwiLFxuICAgIGljb25SaWdodDogXCJcIixcbiAgICBsb2FkaW5nOiBmYWxzZSxcbiAgICBzaGFwZTogbnVsbCxcbiAgICBzaXplOiBcIm1cIixcbiAgICBzdHlsZXM6IFwibWFyZ2luOiAwcmVtIGF1dG87IHdpZHRoOiAxMDAlO1wiXG4gIH0sXG4gIHRleHQ6IHtcbiAgICBjYXNlOiBcImRlZmF1bHRcIixcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgcG9zdGZpeDogXCJcIixcbiAgICBwcmVmaXg6IFwiXCJcbiAgfSxcbiAgZW1haWw6IHtcbiAgICBjYXNlOiBcImRlZmF1bHRcIixcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgcG9zdGZpeDogXCJcIixcbiAgICBwcmVmaXg6IFwiXCJcbiAgfSxcbiAgcGFzc3dvcmQ6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgaGludENvbnRlbnQ6IFwiXCIsXG4gICAgcG9zdGZpeDogXCJcIixcbiAgICBwcmVmaXg6IFwiXCJcbiAgfSxcbiAgXCJhYWRoYWFyLW51bWJlclwiOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIG1hc2s6IFwiIyAjICMgIyAtICMgIyAjICMgLSAjICMgIyAjXCJcbiAgfSxcbiAgbnVtYmVyOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIGRlY2ltYWw6IFwibmV2ZXJcIixcbiAgICBtYXg6IEluZmluaXR5LFxuICAgIG1pbjogLUluZmluaXR5LFxuICAgIHBsYWNlaG9sZGVyOiBcIlwiLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlY2lzaW9uOiAyLFxuICAgIHByZWZpeDogXCJcIlxuICB9LFxuICBwaG9uZToge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBjb3VudHJ5Q29kZTogXCIrOTFcIixcbiAgICBwaG9uZU1hc2tBZnRlckNvdW50cnlDb2RlOiBcIiMjIyMtIyMjIyMjXCIsXG4gICAgcGxhY2Vob2xkZXI6IFwiXCIsXG4gICAgcG9zdGZpeDogXCJcIixcbiAgICBwcmVmaXg6IFwiXCIsXG4gICAgcmVtb3ZlQ291bnRyeUNvZGVGcm9tVmFsdWU6IHRydWVcbiAgfSxcbiAgaHRtbDoge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIlxuICB9LFxuICBjaGVja2JveDoge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIlxuICB9LFxuICB0ZXh0YXJlYToge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIlxuICB9LFxuICB0aXRsZToge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIlxuICB9LFxuICBpbWFnZToge1xuICAgIGFmdGVyOiBcIlwiLFxuICAgIGFsdFRleHQ6IFwiXCIsXG4gICAgYmVmb3JlOiBcIlwiLFxuICAgIGNsYXNzOiBcIlwiLFxuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBodG1sOiB7fSxcbiAgICBpbWFnZVR5cGU6IFwidXJsXCIsXG4gICAgbG9hZGluZ1R5cGU6IFwiYXV0b1wiLFxuICAgIHN0eWxlczogXCJcIlxuICB9LFxuICBkYXRlOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIG1heENhbGN1bGF0ZWRGcm9tVG9kYXk6IHtcbiAgICAgIHllYXI6IDAsXG4gICAgICBtb250aDogMCxcbiAgICAgIGRheTogMFxuICAgIH0sXG4gICAgbWluQ2FsY3VsYXRlZEZyb21Ub2RheToge1xuICAgICAgeWVhcjogbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpLFxuICAgICAgbW9udGg6IG5ldyBEYXRlKCkuZ2V0TW9udGgoKSxcbiAgICAgIGRheTogbmV3IERhdGUoKS5nZXREYXRlKClcbiAgICB9LFxuICAgIHBsYWNlaG9sZGVyOiBcIlwiLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlZml4OiBcIlwiXG4gIH0sXG4gIHJhZGlvOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIG9yaWVudGF0aW9uOiBcInZlcnRpY2FsXCIsXG4gICAgc2l6ZTogXCJtXCJcbiAgfSxcbiAgc2xpZGVyOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIG1heDogMTAwLFxuICAgIG1pbjogMCxcbiAgICBwb3N0Zml4OiBcIlwiLFxuICAgIHByZWZpeDogXCJcIixcbiAgICBxdWFudHVtOiAxLFxuICAgIHNpemU6IFwibFwiLFxuICAgIHN0ZXBzOiAwXG4gIH0sXG4gIGFwaToge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBzaGFwZTogbnVsbCxcbiAgICBzaXplOiBcIm1cIlxuICB9LFxuICBvdHA6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgbW9kZTogXCJtdWx0aXBsZVwiLFxuICAgIG90cExlbmd0aDogNCxcbiAgICBwbGFjZWhvbGRlcjogXCJcIixcbiAgICBzaXplOiBcIm1cIlxuICB9LFxuICBmaWxlOiB7XG4gICAgYWNjZXB0OiBcImFwcGxpY2F0aW9uL3BkZlwiLFxuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBsYWJlbDogXCJkcm9wIGEgZmlsZSBvclwiLFxuICAgIGxpbms6IFwiY2xpY2sgdG8gdXBsb2FkXCIsXG4gICAgbWF4RmlsZVNpemU6IDEwMDAwMDAsXG4gICAgbXVsdGlwbGU6IHRydWUsXG4gICAgc2l6ZTogXCJtXCIsXG4gICAgdXBsb2FkRmlsZVRvU2VydmVyOiB0cnVlXG4gIH0sXG4gIGNhcHR1cmU6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgYnV0dG9uVGV4dDogXCJDYW1lcmFcIixcbiAgICBpY29uOiBcInR1aUljb25DYW1lcmFMYXJnZVwiLFxuICAgIHNob3dNZWRpYUZpbGVzOiB0cnVlLFxuICAgIHVwbG9hZEZpbGVUb1NlcnZlcjogZmFsc2UsXG4gICAgaXNDcm9wcGVkSW1hZ2U6IGZhbHNlLFxuICAgIGlzTWFza2VkSW1hZ2U6IGZhbHNlLFxuICAgIHdhdGVybWFya0RhdGFTb3VyY2VzOiBbXSxcbiAgICBjYW1lcmFDb25maWc6IHtcbiAgICAgIGhlYWRlcjoge1xuICAgICAgICB0aXRsZTogXCJDYW1lcmFcIixcbiAgICAgICAgaXNCYWNrOiBmYWxzZSxcbiAgICAgICAgaXNFeHBhbmQ6IHRydWUsXG4gICAgICAgIGlzQ2xvc2U6IHRydWVcbiAgICAgIH0sXG4gICAgICBmb290ZXI6IHtcbiAgICAgICAgaXNVcGxvYWQ6IHRydWUsXG4gICAgICAgIGlzRmxpcDogZmFsc2UsXG4gICAgICAgIGlzU3dpdGNoOiB0cnVlXG4gICAgICB9LFxuICAgICAgb3RoZXJzOiB7XG4gICAgICAgIGlzRnJvbnRDYW1lcmE6IGZhbHNlLFxuICAgICAgICBpc1dhdGVybWFyazogZmFsc2UsXG4gICAgICAgIGlzV2F0ZXJtYXJrRm9ySW1hZ2VVcGxvYWQ6IGZhbHNlLFxuICAgICAgICBmbGlwSG9yaXpvbnRhbDogZmFsc2UsXG4gICAgICAgIG1hc2s6IHtcbiAgICAgICAgICBzaGFwZTogXCJcIlxuICAgICAgICB9LFxuICAgICAgICBwcmV2aWV3OiB7XG4gICAgICAgICAgc2hvdzogZmFsc2UsXG4gICAgICAgICAgaGVhZGVyOiB7XG4gICAgICAgICAgICBpc0JhY2s6IGZhbHNlLFxuICAgICAgICAgICAgaXNDbG9zZTogZmFsc2VcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIHJlY29yZDoge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBidXR0b25UZXh0OiBcIlJlY29yZFwiLFxuICAgIGljb246IFwidHVpSWNvblZpZGVvTGFyZ2VcIixcbiAgICBzaG93TWVkaWFGaWxlczogdHJ1ZSxcbiAgICB1cGxvYWRGaWxlVG9TZXJ2ZXI6IGZhbHNlLFxuICAgIGNhbWVyYUNvbmZpZzoge1xuICAgICAgaGVhZGVyOiB7XG4gICAgICAgIHRpdGxlOiBcIlJlY29yZFwiLFxuICAgICAgICBpc0JhY2s6IGZhbHNlLFxuICAgICAgICBpc0V4cGFuZDogdHJ1ZSxcbiAgICAgICAgaXNDbG9zZTogdHJ1ZVxuICAgICAgfSxcbiAgICAgIGZvb3Rlcjoge1xuICAgICAgICBpc1VwbG9hZDogdHJ1ZSxcbiAgICAgICAgaXNGbGlwOiBmYWxzZSxcbiAgICAgICAgaXNTd2l0Y2g6IHRydWVcbiAgICAgIH0sXG4gICAgICBvdGhlcnM6IHtcbiAgICAgICAgaXNGcm9udENhbWVyYTogZmFsc2UsXG4gICAgICAgIGZsaXBIb3Jpem9udGFsOiBmYWxzZSxcbiAgICAgICAgbWluUmVjb3JkaW5nVGltZUluU2Vjb25kczogMCxcbiAgICAgICAgbWF4UmVjb3JkaW5nVGltZUluU2Vjb25kczogMzAsXG4gICAgICAgIHByZXZpZXc6IHtcbiAgICAgICAgICBzaG93OiBmYWxzZSxcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIGlzQmFjazogZmFsc2UsXG4gICAgICAgICAgICBpc0Nsb3NlOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgc2VsZWN0OiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIHNlYXJjaGFibGU6IHRydWVcbiAgfSxcbiAgXCJkcm9wZG93bi13aXRoLXNlYXJjaFwiOiB7XG4gICAgc2VhcmNoYWJsZTogdHJ1ZSxcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCJcbiAgfSxcbiAgXCJzdGFyLXJhdGluZ1wiOiB7XG4gICAgY29sb3I6IFwidmFyKC0tdHVpLXByaW1hcnkpXCIsXG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIGljb246IGA8c3ZnIHhtbDpzcGFjZT1cInByZXNlcnZlXCIgd2lkdGg9XCI0OHB4XCIgdmlld0JveD1cIjAgMCA0OCA0OFwiIHZlcnNpb249XCIxLjFcIiBpZD1cIl94M0NfTGF5ZXJfeDNFX1wiIGhlaWdodD1cIjQ4cHhcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PGcgaWQ9XCJzdGFyX3gyQ19fZmF2b3JpdGVcIj48cGF0aCBpZD1cIlhNTElEXzJfXCIgZmlsbD1cInRyYW5zcGFyZW50XCIgc3Ryb2tlLXdpZHRoPVwiM1wiIHN0cm9rZT1cInZhcigtLXR1aS1yYXRpbmctY29sb3IpXCIgZD1cIk0gMjMuMyAzOC42IGwgLTEwLjkgNS43IGMgLTEuMiAwLjYgLTIuNSAtMC40IC0yLjMgLTEuNiBsIDIuMSAtMTIuMSBjIDAuMSAtMC41IC0wLjEgLTEgLTAuNCAtMS40IGwgLTguOCAtOC42IGMgLTAuOSAtMC45IC0wLjQgLTIuNSAwLjkgLTIuNiBsIDEyLjIgLTEuOCBjIDAuNSAtMC4xIDEgLTAuNCAxLjIgLTAuOCBsIDUuNSAtMTEgYyAwLjYgLTEuMiAyLjIgLTEuMiAyLjggMCBsIDUuNSAxMSBjIDAuMiAwLjUgMC43IDAuOCAxLjIgMC44IGwgMTIuMiAxLjggYyAxLjMgMC4yIDEuOCAxLjggMC45IDIuNiBsIC04LjggOC42IGMgLTAuNCAwLjQgLTAuNSAwLjkgLTAuNCAxLjQgbCAyLjEgMTIuMSBjIDAuMiAxLjMgLTEuMSAyLjIgLTIuMyAxLjYgbCAtMTAuOSAtNS43IEMgMjQuMyAzOC40IDIzLjcgMzguNCAyMy4zIDM4LjYgelwiPjwvcGF0aD48L2c+PC9zdmc+YCxcbiAgICBpY29uTWFya2VkOiBgPHN2ZyB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiIHdpZHRoPVwiNDhweFwiIHZpZXdCb3g9XCIwIDAgNDggNDhcIiB2ZXJzaW9uPVwiMS4xXCIgaWQ9XCJfeDNDX0xheWVyX3gzRV9cIiBoZWlnaHQ9XCI0OHB4XCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxnIGlkPVwic3Rhcl94MkNfX2Zhdm9yaXRlXCI+PHBhdGggaWQ9XCJYTUxJRF8yX1wiIGZpbGw9XCJ2YXIoLS10dWktcmF0aW5nLWNvbG9yKVwiIHN0cm9rZT1cInZhcigtLXR1aS1yYXRpbmctY29sb3IpXCIgc3Ryb2tlLXdpZHRoPVwiM1wiIGQ9XCJNIDIzLjMgMzguNiBsIC0xMC45IDUuNyBjIC0xLjIgMC42IC0yLjUgLTAuNCAtMi4zIC0xLjYgbCAyLjEgLTEyLjEgYyAwLjEgLTAuNSAtMC4xIC0xIC0wLjQgLTEuNCBsIC04LjggLTguNiBjIC0wLjkgLTAuOSAtMC40IC0yLjUgMC45IC0yLjYgbCAxMi4yIC0xLjggYyAwLjUgLTAuMSAxIC0wLjQgMS4yIC0wLjggbCA1LjUgLTExIGMgMC42IC0xLjIgMi4yIC0xLjIgMi44IDAgbCA1LjUgMTEgYyAwLjIgMC41IDAuNyAwLjggMS4yIDAuOCBsIDEyLjIgMS44IGMgMS4zIDAuMiAxLjggMS44IDAuOSAyLjYgbCAtOC44IDguNiBjIC0wLjQgMC40IC0wLjUgMC45IC0wLjQgMS40IGwgMi4xIDEyLjEgYyAwLjIgMS4zIC0xLjEgMi4yIC0yLjMgMS42IGwgLTEwLjkgLTUuNyBDIDI0LjMgMzguNCAyMy43IDM4LjQgMjMuMyAzOC42IHpcIj48L3BhdGg+PC9nPjwvc3ZnPmAsXG4gICAgbWF4OiAxMCxcbiAgICBtaW46IDAsXG4gICAgcGxhY2Vob2xkZXI6IFwiXCIsXG4gICAgc2l6ZTogXCJtXCJcbiAgfVxufTtcbiJdfQ==
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLWNvbnZlcnRlci5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9jb25maWctY29udmVydGVyL2NvbmZpZy1jb252ZXJ0ZXIuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLE1BQU0sRUFBRTtRQUNOLFVBQVUsRUFBRSxTQUFTO1FBQ3JCLEtBQUssRUFBRSxFQUFFO1FBQ1QsZUFBZSxFQUFFLEVBQUU7UUFDbkIsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsRUFBRTtRQUNiLE9BQU8sRUFBRSxLQUFLO1FBQ2QsS0FBSyxFQUFFLElBQUk7UUFDWCxJQUFJLEVBQUUsR0FBRztRQUNULE1BQU0sRUFBRSxpQ0FBaUM7S0FDMUM7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsU0FBUztRQUNmLGVBQWUsRUFBRSxFQUFFO1FBQ25CLE9BQU8sRUFBRSxFQUFFO1FBQ1gsTUFBTSxFQUFFLEVBQUU7S0FDWDtJQUNELEtBQUssRUFBRTtRQUNMLElBQUksRUFBRSxTQUFTO1FBQ2YsZUFBZSxFQUFFLEVBQUU7UUFDbkIsT0FBTyxFQUFFLEVBQUU7UUFDWCxNQUFNLEVBQUUsRUFBRTtLQUNYO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsZUFBZSxFQUFFLEVBQUU7UUFDbkIsV0FBVyxFQUFFLEVBQUU7UUFDZixPQUFPLEVBQUUsRUFBRTtRQUNYLE1BQU0sRUFBRSxFQUFFO0tBQ1g7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixlQUFlLEVBQUUsRUFBRTtRQUNuQixJQUFJLEVBQUUsNkJBQTZCO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFO1FBQ04sZUFBZSxFQUFFLEVBQUU7UUFDbkIsT0FBTyxFQUFFLE9BQU87UUFDaEIsR0FBRyxFQUFFLFFBQVE7UUFDYixH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RUFBRTtnQkFDTixRQUFRLEVBQUUsSUFBSTtnQkFDZCxNQUFNLEVBQUUsS0FBSztnQkFDYixRQUFRLEVBQUUsSUFBSTthQUNmO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLGFBQWEsRUFBRSxLQUFLO2dCQUNwQixjQUFjLEVBQUUsS0FBSztnQkFDckIseUJBQXlCLEVBQUUsQ0FBQztnQkFDNUIseUJBQXlCLEVBQUUsRUFBRTtnQkFDN0IsT0FBTyxFQUFFO29CQUNQLElBQUksRUFBRSxLQUFLO29CQUNYLE1BQU0sRUFBRTt3QkFDTixNQUFNLEVBQUUsS0FBSzt3QkFDYixPQUFPLEVBQUUsS0FBSztxQkFDZjtpQkFDRjthQUNGO1NBQ0Y7S0FDRjtJQUNELE1BQU0sRUFBRTtRQUNOLGVBQWUsRUFBRSxFQUFFO1FBQ25CLFVBQVUsRUFBRSxJQUFJO0tBQ2pCO0lBQ0Qsc0JBQXNCLEVBQUU7UUFDdEIsVUFBVSxFQUFFLElBQUk7UUFDaEIsZUFBZSxFQUFFLEVBQUU7S0FDcEI7SUFDRCxhQUFhLEVBQUU7UUFDYixLQUFLLEVBQUUsb0JBQW9CO1FBQzNCLGVBQWUsRUFBRSxFQUFFO1FBQ25CLElBQUksRUFBRSxpdUJBQWl1QjtRQUN2dUIsVUFBVSxFQUFFLDZ1QkFBNnVCO1FBQ3p2QixHQUFHLEVBQUUsRUFBRTtRQUNQLEdBQUcsRUFBRSxDQUFDO1FBQ04sV0FBVyxFQUFFLEVBQUU7UUFDZixJQUFJLEVBQUUsR0FBRztLQUNWO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBGSUVMRF9QUk9QRVJUSUVTID0ge1xuICBidXR0b246IHtcbiAgICBhcHBlYXJhbmNlOiBcInByaW1hcnlcIixcbiAgICBjbGFzczogXCJcIixcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgaWNvbjogXCJcIixcbiAgICBpY29uUmlnaHQ6IFwiXCIsXG4gICAgbG9hZGluZzogZmFsc2UsXG4gICAgc2hhcGU6IG51bGwsXG4gICAgc2l6ZTogXCJtXCIsXG4gICAgc3R5bGVzOiBcIm1hcmdpbjogMHJlbSBhdXRvOyB3aWR0aDogMTAwJTtcIlxuICB9LFxuICB0ZXh0OiB7XG4gICAgY2FzZTogXCJkZWZhdWx0XCIsXG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlZml4OiBcIlwiXG4gIH0sXG4gIGVtYWlsOiB7XG4gICAgY2FzZTogXCJkZWZhdWx0XCIsXG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlZml4OiBcIlwiXG4gIH0sXG4gIHBhc3N3b3JkOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIGhpbnRDb250ZW50OiBcIlwiLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlZml4OiBcIlwiXG4gIH0sXG4gIFwiYWFkaGFhci1udW1iZXJcIjoge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBtYXNrOiBcIiMgIyAjICMgLSAjICMgIyAjIC0gIyAjICMgI1wiXG4gIH0sXG4gIG51bWJlcjoge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBkZWNpbWFsOiBcIm5ldmVyXCIsXG4gICAgbWF4OiBJbmZpbml0eSxcbiAgICBtaW46IC1JbmZpbml0eSxcbiAgICBwbGFjZWhvbGRlcjogXCJcIixcbiAgICBwb3N0Zml4OiBcIlwiLFxuICAgIHByZWNpc2lvbjogMixcbiAgICBwcmVmaXg6IFwiXCJcbiAgfSxcbiAgcGhvbmU6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgY291bnRyeUNvZGU6IFwiKzkxXCIsXG4gICAgcGhvbmVNYXNrQWZ0ZXJDb3VudHJ5Q29kZTogXCIjIyMjLSMjIyMjI1wiLFxuICAgIHBsYWNlaG9sZGVyOiBcIlwiLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlZml4OiBcIlwiLFxuICAgIHJlbW92ZUNvdW50cnlDb2RlRnJvbVZhbHVlOiB0cnVlXG4gIH0sXG4gIGh0bWw6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCJcbiAgfSxcbiAgY2hlY2tib3g6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCJcbiAgfSxcbiAgdGV4dGFyZWE6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCJcbiAgfSxcbiAgdGl0bGU6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCJcbiAgfSxcbiAgaW1hZ2U6IHtcbiAgICBhZnRlcjogXCJcIixcbiAgICBhbHRUZXh0OiBcIlwiLFxuICAgIGJlZm9yZTogXCJcIixcbiAgICBjbGFzczogXCJcIixcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgaHRtbDoge30sXG4gICAgaW1hZ2VUeXBlOiBcInVybFwiLFxuICAgIGxvYWRpbmdUeXBlOiBcImF1dG9cIixcbiAgICBzdHlsZXM6IFwiXCJcbiAgfSxcbiAgZGF0ZToge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBtYXhDYWxjdWxhdGVkRnJvbVRvZGF5OiB7XG4gICAgICB5ZWFyOiAwLFxuICAgICAgbW9udGg6IDAsXG4gICAgICBkYXk6IDBcbiAgICB9LFxuICAgIG1pbkNhbGN1bGF0ZWRGcm9tVG9kYXk6IHtcbiAgICAgIHllYXI6IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSxcbiAgICAgIG1vbnRoOiBuZXcgRGF0ZSgpLmdldE1vbnRoKCksXG4gICAgICBkYXk6IG5ldyBEYXRlKCkuZ2V0RGF0ZSgpXG4gICAgfSxcbiAgICBwbGFjZWhvbGRlcjogXCJcIixcbiAgICBwb3N0Zml4OiBcIlwiLFxuICAgIHByZWZpeDogXCJcIlxuICB9LFxuICB0aW1lOntcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgaXRlbXM6IHVuZGVmaW5lZCxcbiAgICBtb2RlOiBcIkhIOk1NXCIsXG4gICAgcGxhY2Vob2xkZXI6IFwiXCIsXG4gICAgcG9zdGZpeDogXCJcIixcbiAgICBwcmVmaXg6IFwiXCJcbiAgfSxcbiAgcmFkaW86IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgb3JpZW50YXRpb246IFwidmVydGljYWxcIixcbiAgICBzaXplOiBcIm1cIlxuICB9LFxuICBzbGlkZXI6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgbWF4OiAxMDAsXG4gICAgbWluOiAwLFxuICAgIHBvc3RmaXg6IFwiXCIsXG4gICAgcHJlZml4OiBcIlwiLFxuICAgIHF1YW50dW06IDEsXG4gICAgc2l6ZTogXCJsXCIsXG4gICAgc3RlcHM6IDBcbiAgfSxcbiAgYXBpOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIHNoYXBlOiBudWxsLFxuICAgIHNpemU6IFwibVwiXG4gIH0sXG4gIG90cDoge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBtb2RlOiBcIm11bHRpcGxlXCIsXG4gICAgb3RwTGVuZ3RoOiA0LFxuICAgIHBsYWNlaG9sZGVyOiBcIlwiLFxuICAgIHNpemU6IFwibVwiXG4gIH0sXG4gIGZpbGU6IHtcbiAgICBhY2NlcHQ6IFwiYXBwbGljYXRpb24vcGRmXCIsXG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIGxhYmVsOiBcImRyb3AgYSBmaWxlIG9yXCIsXG4gICAgbGluazogXCJjbGljayB0byB1cGxvYWRcIixcbiAgICBtYXhGaWxlU2l6ZTogMTAwMDAwMCxcbiAgICBtdWx0aXBsZTogdHJ1ZSxcbiAgICBzaXplOiBcIm1cIixcbiAgICB1cGxvYWRGaWxlVG9TZXJ2ZXI6IHRydWVcbiAgfSxcbiAgY2FwdHVyZToge1xuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIixcbiAgICBidXR0b25UZXh0OiBcIkNhbWVyYVwiLFxuICAgIGljb246IFwidHVpSWNvbkNhbWVyYUxhcmdlXCIsXG4gICAgc2hvd01lZGlhRmlsZXM6IHRydWUsXG4gICAgdXBsb2FkRmlsZVRvU2VydmVyOiBmYWxzZSxcbiAgICBpc0Nyb3BwZWRJbWFnZTogZmFsc2UsXG4gICAgaXNNYXNrZWRJbWFnZTogZmFsc2UsXG4gICAgd2F0ZXJtYXJrRGF0YVNvdXJjZXM6IFtdLFxuICAgIGNhbWVyYUNvbmZpZzoge1xuICAgICAgaGVhZGVyOiB7XG4gICAgICAgIHRpdGxlOiBcIkNhbWVyYVwiLFxuICAgICAgICBpc0JhY2s6IGZhbHNlLFxuICAgICAgICBpc0V4cGFuZDogdHJ1ZSxcbiAgICAgICAgaXNDbG9zZTogdHJ1ZVxuICAgICAgfSxcbiAgICAgIGZvb3Rlcjoge1xuICAgICAgICBpc1VwbG9hZDogdHJ1ZSxcbiAgICAgICAgaXNGbGlwOiBmYWxzZSxcbiAgICAgICAgaXNTd2l0Y2g6IHRydWVcbiAgICAgIH0sXG4gICAgICBvdGhlcnM6IHtcbiAgICAgICAgaXNGcm9udENhbWVyYTogZmFsc2UsXG4gICAgICAgIGlzV2F0ZXJtYXJrOiBmYWxzZSxcbiAgICAgICAgaXNXYXRlcm1hcmtGb3JJbWFnZVVwbG9hZDogZmFsc2UsXG4gICAgICAgIGZsaXBIb3Jpem9udGFsOiBmYWxzZSxcbiAgICAgICAgbWFzazoge1xuICAgICAgICAgIHNoYXBlOiBcIlwiXG4gICAgICAgIH0sXG4gICAgICAgIHByZXZpZXc6IHtcbiAgICAgICAgICBzaG93OiBmYWxzZSxcbiAgICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICAgIGlzQmFjazogZmFsc2UsXG4gICAgICAgICAgICBpc0Nsb3NlOiBmYWxzZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgcmVjb3JkOiB7XG4gICAgY29udGFpbmVyU3R5bGVzOiBcIlwiLFxuICAgIGJ1dHRvblRleHQ6IFwiUmVjb3JkXCIsXG4gICAgaWNvbjogXCJ0dWlJY29uVmlkZW9MYXJnZVwiLFxuICAgIHNob3dNZWRpYUZpbGVzOiB0cnVlLFxuICAgIHVwbG9hZEZpbGVUb1NlcnZlcjogZmFsc2UsXG4gICAgY2FtZXJhQ29uZmlnOiB7XG4gICAgICBoZWFkZXI6IHtcbiAgICAgICAgdGl0bGU6IFwiUmVjb3JkXCIsXG4gICAgICAgIGlzQmFjazogZmFsc2UsXG4gICAgICAgIGlzRXhwYW5kOiB0cnVlLFxuICAgICAgICBpc0Nsb3NlOiB0cnVlXG4gICAgICB9LFxuICAgICAgZm9vdGVyOiB7XG4gICAgICAgIGlzVXBsb2FkOiB0cnVlLFxuICAgICAgICBpc0ZsaXA6IGZhbHNlLFxuICAgICAgICBpc1N3aXRjaDogdHJ1ZVxuICAgICAgfSxcbiAgICAgIG90aGVyczoge1xuICAgICAgICBpc0Zyb250Q2FtZXJhOiBmYWxzZSxcbiAgICAgICAgZmxpcEhvcml6b250YWw6IGZhbHNlLFxuICAgICAgICBtaW5SZWNvcmRpbmdUaW1lSW5TZWNvbmRzOiAwLFxuICAgICAgICBtYXhSZWNvcmRpbmdUaW1lSW5TZWNvbmRzOiAzMCxcbiAgICAgICAgcHJldmlldzoge1xuICAgICAgICAgIHNob3c6IGZhbHNlLFxuICAgICAgICAgIGhlYWRlcjoge1xuICAgICAgICAgICAgaXNCYWNrOiBmYWxzZSxcbiAgICAgICAgICAgIGlzQ2xvc2U6IGZhbHNlXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9LFxuICBzZWxlY3Q6IHtcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgc2VhcmNoYWJsZTogdHJ1ZVxuICB9LFxuICBcImRyb3Bkb3duLXdpdGgtc2VhcmNoXCI6IHtcbiAgICBzZWFyY2hhYmxlOiB0cnVlLFxuICAgIGNvbnRhaW5lclN0eWxlczogXCJcIlxuICB9LFxuICBcInN0YXItcmF0aW5nXCI6IHtcbiAgICBjb2xvcjogXCJ2YXIoLS10dWktcHJpbWFyeSlcIixcbiAgICBjb250YWluZXJTdHlsZXM6IFwiXCIsXG4gICAgaWNvbjogYDxzdmcgeG1sOnNwYWNlPVwicHJlc2VydmVcIiB3aWR0aD1cIjQ4cHhcIiB2aWV3Qm94PVwiMCAwIDQ4IDQ4XCIgdmVyc2lvbj1cIjEuMVwiIGlkPVwiX3gzQ19MYXllcl94M0VfXCIgaGVpZ2h0PVwiNDhweFwiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48ZyBpZD1cInN0YXJfeDJDX19mYXZvcml0ZVwiPjxwYXRoIGlkPVwiWE1MSURfMl9cIiBmaWxsPVwidHJhbnNwYXJlbnRcIiBzdHJva2Utd2lkdGg9XCIzXCIgc3Ryb2tlPVwidmFyKC0tdHVpLXJhdGluZy1jb2xvcilcIiBkPVwiTSAyMy4zIDM4LjYgbCAtMTAuOSA1LjcgYyAtMS4yIDAuNiAtMi41IC0wLjQgLTIuMyAtMS42IGwgMi4xIC0xMi4xIGMgMC4xIC0wLjUgLTAuMSAtMSAtMC40IC0xLjQgbCAtOC44IC04LjYgYyAtMC45IC0wLjkgLTAuNCAtMi41IDAuOSAtMi42IGwgMTIuMiAtMS44IGMgMC41IC0wLjEgMSAtMC40IDEuMiAtMC44IGwgNS41IC0xMSBjIDAuNiAtMS4yIDIuMiAtMS4yIDIuOCAwIGwgNS41IDExIGMgMC4yIDAuNSAwLjcgMC44IDEuMiAwLjggbCAxMi4yIDEuOCBjIDEuMyAwLjIgMS44IDEuOCAwLjkgMi42IGwgLTguOCA4LjYgYyAtMC40IDAuNCAtMC41IDAuOSAtMC40IDEuNCBsIDIuMSAxMi4xIGMgMC4yIDEuMyAtMS4xIDIuMiAtMi4zIDEuNiBsIC0xMC45IC01LjcgQyAyNC4zIDM4LjQgMjMuNyAzOC40IDIzLjMgMzguNiB6XCI+PC9wYXRoPjwvZz48L3N2Zz5gLFxuICAgIGljb25NYXJrZWQ6IGA8c3ZnIHhtbDpzcGFjZT1cInByZXNlcnZlXCIgd2lkdGg9XCI0OHB4XCIgdmlld0JveD1cIjAgMCA0OCA0OFwiIHZlcnNpb249XCIxLjFcIiBpZD1cIl94M0NfTGF5ZXJfeDNFX1wiIGhlaWdodD1cIjQ4cHhcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PGcgaWQ9XCJzdGFyX3gyQ19fZmF2b3JpdGVcIj48cGF0aCBpZD1cIlhNTElEXzJfXCIgZmlsbD1cInZhcigtLXR1aS1yYXRpbmctY29sb3IpXCIgc3Ryb2tlPVwidmFyKC0tdHVpLXJhdGluZy1jb2xvcilcIiBzdHJva2Utd2lkdGg9XCIzXCIgZD1cIk0gMjMuMyAzOC42IGwgLTEwLjkgNS43IGMgLTEuMiAwLjYgLTIuNSAtMC40IC0yLjMgLTEuNiBsIDIuMSAtMTIuMSBjIDAuMSAtMC41IC0wLjEgLTEgLTAuNCAtMS40IGwgLTguOCAtOC42IGMgLTAuOSAtMC45IC0wLjQgLTIuNSAwLjkgLTIuNiBsIDEyLjIgLTEuOCBjIDAuNSAtMC4xIDEgLTAuNCAxLjIgLTAuOCBsIDUuNSAtMTEgYyAwLjYgLTEuMiAyLjIgLTEuMiAyLjggMCBsIDUuNSAxMSBjIDAuMiAwLjUgMC43IDAuOCAxLjIgMC44IGwgMTIuMiAxLjggYyAxLjMgMC4yIDEuOCAxLjggMC45IDIuNiBsIC04LjggOC42IGMgLTAuNCAwLjQgLTAuNSAwLjkgLTAuNCAxLjQgbCAyLjEgMTIuMSBjIDAuMiAxLjMgLTEuMSAyLjIgLTIuMyAxLjYgbCAtMTAuOSAtNS43IEMgMjQuMyAzOC40IDIzLjcgMzguNCAyMy4zIDM4LjYgelwiPjwvcGF0aD48L2c+PC9zdmc+YCxcbiAgICBtYXg6IDEwLFxuICAgIG1pbjogMCxcbiAgICBwbGFjZWhvbGRlcjogXCJcIixcbiAgICBzaXplOiBcIm1cIlxuICB9XG59O1xuIl19
|
|
@@ -168,6 +168,12 @@ export class Converter {
|
|
|
168
168
|
}, field.properties));
|
|
169
169
|
return field;
|
|
170
170
|
};
|
|
171
|
+
const formatFieldTypeTime = (field) => {
|
|
172
|
+
field = setFieldKeyHidden(field);
|
|
173
|
+
field = setFieldAsFormElement(field, true);
|
|
174
|
+
field = updateFormFieldProperties(field);
|
|
175
|
+
return field;
|
|
176
|
+
};
|
|
171
177
|
const formatFieldTypePhone = (field) => {
|
|
172
178
|
field = setFieldKeyHidden(field);
|
|
173
179
|
field = setFieldAsFormElement(field, true);
|
|
@@ -329,6 +335,9 @@ export class Converter {
|
|
|
329
335
|
case EFieldType.DATE:
|
|
330
336
|
field = formatFieldTypeDate(field);
|
|
331
337
|
break;
|
|
338
|
+
case EFieldType.TIME:
|
|
339
|
+
field = formatFieldTypeTime(field);
|
|
340
|
+
break;
|
|
332
341
|
case EFieldType.PHONE:
|
|
333
342
|
field = formatFieldTypePhone(field);
|
|
334
343
|
break;
|
|
@@ -698,4 +707,4 @@ __decorate([
|
|
|
698
707
|
__decorate([
|
|
699
708
|
logMethod
|
|
700
709
|
], Converter.prototype, "convertFormConfig", null);
|
|
701
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2NvbmZpZy1jb252ZXJ0ZXIvY29uZmlnLWNvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixlQUFlLEVBQ2YsUUFBUSxFQUNSLFNBQVMsRUFDVCxZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNyQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDTCxVQUFVLEVBRVgsTUFBTSxzREFBc0QsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsY0FBYyxFQUNkLGFBQWEsRUFDYixVQUFVLEVBQ1YsVUFBVSxFQUNWLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixXQUFXLEVBQ1osTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxNQUFNLE9BQU8sU0FBUztJQUVwQiw2QkFBNkIsQ0FBQyxVQUFlLEVBQUUsSUFBUztRQUN0RCxJQUFJLG9CQUFvQixDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxFQUFFO1lBQ2pELFVBQVUsR0FBRyxvQkFBb0IsQ0FDL0IsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixJQUFJLENBQUMsZUFBZSxDQUNyQixDQUFDO1NBQ0g7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBR0QsOEJBQThCLENBQUMsVUFBZSxFQUFFLFVBQWU7UUFDN0QsSUFBSSxlQUFlLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsSUFBSSxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQzdD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dUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFdkMsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXJDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUV0QyxLQUFLLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEM7UUFFRCxVQUFVLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXpELFVBQVUsR0FBRyxhQUFhLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRS9DLE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7Q0FDRjtBQWgwQkM7SUFEQyxTQUFTOzhEQVdUO0FBR0Q7SUFEQyxTQUFTOytEQWVUO0FBR0Q7SUFEQyxTQUFTOzJEQWlGVDtBQUdEO0lBREMsU0FBUztrREErc0JUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY2hlY2tPYmplY3RLZXlFeGlzdHMsXG4gIGNoZWNrT2JqZWN0UGF0aEV4aXN0cyxcbiAgZ2V0T2JqZWN0RGVlcENvcHksXG4gIGlzRW1wdHlWYWx1ZSxcbiAgaXNOb3RFbXB0eVZhbHVlLFxuICBpc09iamVjdCxcbiAgbG9nTWV0aG9kLFxuICBtZXJnZU9iamVjdHMsXG4gIHNldE1pc3NpbmdLZXlWYWx1ZSxcbiAgc2V0VmFsdWVUb09iamVjdFBhdGhcbn0gZnJvbSBcImt3aWtpZC10b29sa2l0XCI7XG5pbXBvcnQge1xuICBFRmllbGRUeXBlLFxuICBURmllbGRcbn0gZnJvbSBcIi4uL2Zvcm0tdmlldy9kZWZpbml0aW9ucy9mb3JtLXZpZXcuZmllbGRzLmRlZmluaXRpb25cIjtcbmltcG9ydCB7IEZJRUxEX1BST1BFUlRJRVMgfSBmcm9tIFwiLi9jb25maWctY29udmVydGVyLmNvbnN0YW50c1wiO1xuaW1wb3J0IHtcbiAgdXBkYXRlTGFuZ3VhZ2UsXG4gIGdldEZvcm1GaWVsZHMsXG4gIGdldE1heERhdGUsXG4gIGdldE1pbkRhdGUsXG4gIHNldEZpZWxkQXNGb3JtRWxlbWVudCxcbiAgc2V0RmllbGRLZXlIaWRkZW4sXG4gIHNldEZpZWxkS2V5VmFsdWUsXG4gIHNldE1pc3NpbmdGaWVsZEtleVZhbHVlLFxuICBnZXRMYW5ndWFnZVxufSBmcm9tIFwiLi9jb25maWctY29udmVydGVyLmhlbHBlclwiO1xuXG5leHBvcnQgY2xhc3MgQ29udmVydGVyIHtcbiAgQGxvZ01ldGhvZFxuICB1cGRhdGVGb3JtQ29uZmlnTWlzY2VsbGFuZW91cyhmb3JtQ29uZmlnOiBhbnksIGFyZ3M6IGFueSk6IGFueSB7XG4gICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGFyZ3MsIFwiZm9ybXNMaXN0TGVuZ3RoXCIpKSB7XG4gICAgICBmb3JtQ29uZmlnID0gc2V0VmFsdWVUb09iamVjdFBhdGgoXG4gICAgICAgIGZvcm1Db25maWcsXG4gICAgICAgIFwiZm9ybXNMaXN0TGVuZ3RoXCIsXG4gICAgICAgIGFyZ3MuZm9ybXNMaXN0TGVuZ3RoXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBmb3JtQ29uZmlnO1xuICB9XG5cbiAgQGxvZ01ldGhvZFxuICB1cGRhdGVGb3JtQ29uZmlnRnJvbVVzZXJDb25maWcoZm9ybUNvbmZpZzogYW55LCB1c2VyQ29uZmlnOiBhbnkpOiBhbnkge1xuICAgIGlmIChpc05vdEVtcHR5VmFsdWUodXNlckNvbmZpZykpIHtcbiAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyh1c2VyQ29uZmlnLCBcInRoZW1lXCIpKSB7XG4gICAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyh1c2VyQ29uZmlnLnRoZW1lLCBcImNsaWVudExvZ29cIikpIHtcbiAgICAgICAgICBzZXRWYWx1ZVRvT2JqZWN0UGF0aChcbiAgICAgICAgICAgIGZvcm1Db25maWcsXG4gICAgICAgICAgICBcInByb3BlcnRpZXMuaGVhZGVyLmxvZ28uc3JjXCIsXG4gICAgICAgICAgICB1c2VyQ29uZmlnLnRoZW1lLmNsaWVudExvZ29cbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1Db25maWc7XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIHVwZGF0ZUZvcm1Db25maWdQcm9wZXJ0aWVzKGZvcm1Db25maWc6IGFueSk6IGFueSB7XG4gICAgY29uc3QgZm9ybVZpZXdQcm9wZXJ0aWVzID0ge1xuICAgICAgaGVhZGVyOiB7XG4gICAgICAgIGxvZ286IHtcbiAgICAgICAgICBzcmM6IFwiXCIsXG4gICAgICAgICAgYWx0OiBcIkxvZ29cIixcbiAgICAgICAgICBoaWRkZW46IGZhbHNlLFxuICAgICAgICAgIHN0eWxlczogXCJcIlxuICAgICAgICB9LFxuICAgICAgICBiYWNrQnV0dG9uOiB7XG4gICAgICAgICAgbW9kZTogXCJUQUJCRURcIixcbiAgICAgICAgICBieXBhc3NDb25maXJtYXRpb246IGZhbHNlLFxuICAgICAgICAgIGhpZGRlbjogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgbGFiZWw6IGZvcm1Db25maWc/LnRpdGxlID8/IGZvcm1Db25maWc/LnByb3BzLnRpdGxlID8/IFwiRm9ybVwiLFxuICAgICAgICAgIHN0eWxlczogXCJcIlxuICAgICAgICB9LFxuICAgICAgICBzdGVwczoge1xuICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgc3R5bGVzOiBcIlwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBtYWluOiB7XG4gICAgICAgIHN0eWxlczogXCJcIlxuICAgICAgfSxcbiAgICAgIGZvb3Rlcjoge1xuICAgICAgICB2aWV3Rm9ybXNCdXR0b246IHtcbiAgICAgICAgICBieXBhc3NDb25maXJtYXRpb246IGZhbHNlLFxuICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgbGFiZWw6IFwiVmlldyBGb3Jtc1wiXG4gICAgICAgIH0sXG4gICAgICAgIHNhdmVCdXR0b246IHtcbiAgICAgICAgICBoaWRkZW46IGZhbHNlLFxuICAgICAgICAgIGxhYmVsOiBcIlNhdmVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgaXNVbnNhdmVkRGF0YUFsZXJ0RW5hYmxlZDogZmFsc2VcbiAgICB9O1xuXG4gICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZvcm1Db25maWcsIFwicHJvcGVydGllc1wiKSkge1xuICAgICAgZm9ybUNvbmZpZy5wcm9wZXJ0aWVzID0gZ2V0T2JqZWN0RGVlcENvcHkoXG4gICAgICAgIG1lcmdlT2JqZWN0cyhmb3JtVmlld1Byb3BlcnRpZXMsIGZvcm1Db25maWcucHJvcGVydGllcylcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZvcm1Db25maWcucHJvcGVydGllcyA9IGZvcm1WaWV3UHJvcGVydGllcztcbiAgICB9XG5cbiAgICBjb25zdCBsYW5ndWFnZSA9IGdldExhbmd1YWdlKCk7XG5cbiAgICBpZiAoY2hlY2tPYmplY3RQYXRoRXhpc3RzKGZvcm1Db25maWcsIFwicHJvcGVydGllcy5oZWFkZXIudGl0bGUubGFiZWxcIikpIHtcbiAgICAgIGZvcm1Db25maWcucHJvcGVydGllcy5oZWFkZXIudGl0bGUubGFiZWwgPSB1cGRhdGVMYW5ndWFnZShcbiAgICAgICAgZm9ybUNvbmZpZy5wcm9wZXJ0aWVzLmhlYWRlci50aXRsZS5sYWJlbCxcbiAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgY2hlY2tPYmplY3RQYXRoRXhpc3RzKFxuICAgICAgICBmb3JtQ29uZmlnLFxuICAgICAgICBcInByb3BlcnRpZXMuZm9vdGVyLnZpZXdGb3Jtc0J1dHRvbi5sYWJlbFwiXG4gICAgICApXG4gICAgKSB7XG4gICAgICBmb3JtQ29uZmlnLnByb3BlcnRpZXMuZm9vdGVyLnZpZXdGb3Jtc0J1dHRvbi5sYWJlbCA9IHVwZGF0ZUxhbmd1YWdlKFxuICAgICAgICBmb3JtQ29uZmlnLnByb3BlcnRpZXMuZm9vdGVyLnZpZXdGb3Jtc0J1dHRvbi5sYWJlbCxcbiAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgY2hlY2tPYmplY3RQYXRoRXhpc3RzKGZvcm1Db25maWcsIFwicHJvcGVydGllcy5mb290ZXIuc2F2ZUJ1dHRvbi5sYWJlbFwiKVxuICAgICkge1xuICAgICAgZm9ybUNvbmZpZy5wcm9wZXJ0aWVzLmZvb3Rlci5zYXZlQnV0dG9uLmxhYmVsID0gdXBkYXRlTGFuZ3VhZ2UoXG4gICAgICAgIGZvcm1Db25maWcucHJvcGVydGllcy5mb290ZXIuc2F2ZUJ1dHRvbi5sYWJlbCxcbiAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1Db25maWc7XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIGNvbnZlcnRGb3JtQ29uZmlnKGZvcm1Db25maWc6IGFueSk6IGFueSB7XG4gICAgY29uc3QgZm9ybWF0T25GaWVsZFR5cGUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICBjb25zdCB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBpZiAoY2hlY2tPYmplY3RLZXlFeGlzdHMoRklFTERfUFJPUEVSVElFUywgZmllbGQudHlwZSkpIHtcbiAgICAgICAgICBmaWVsZC5wcm9wZXJ0aWVzID0gbWVyZ2VPYmplY3RzKFxuICAgICAgICAgICAgZ2V0T2JqZWN0RGVlcENvcHkoRklFTERfUFJPUEVSVElFU1tmaWVsZC50eXBlXSksXG4gICAgICAgICAgICBmaWVsZC5wcm9wZXJ0aWVzXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUh0bWwgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgZmFsc2UpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVUaXRsZSA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCBmYWxzZSk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUJ1dHRvbiA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRNaXNzaW5nRmllbGRLZXlWYWx1ZShmaWVsZCwgXCJoaWRkZW5cIiwgZmFsc2UpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgZmFsc2UpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVUZXh0ID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVQYXNzd29yZCA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlRW1haWwgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVN0YXJSYXRpbmcgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVRleHRhcmVhID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlQ2hlY2tib3ggPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVOdW1iZXIgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG5cbiAgICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImtleVwiKSkge1xuICAgICAgICAgIGlmIChmaWVsZC5rZXkgPT09IFwiYWFkaGFhcl9udW1iZXJcIikge1xuICAgICAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleVZhbHVlKGZpZWxkLCBcInR5cGVcIiwgXCJhYWRoYWFyX251bWJlclwiKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGZpZWxkLmtleSA9PT0gXCJjb250YWN0X251bWJlclwiKSB7XG4gICAgICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwidHlwZVwiLCBcInBob25lXCIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChmaWVsZC50eXBlID09PSBcInBob25lXCIgfHwgZmllbGQudHlwZSA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlSW1hZ2UgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZURhdGUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG5cbiAgICAgICAgZmllbGQucHJvcGVydGllcyA9IGdldE9iamVjdERlZXBDb3B5KFxuICAgICAgICAgIG1lcmdlT2JqZWN0cyhcbiAgICAgICAgICAgIGdldE9iamVjdERlZXBDb3B5KEZJRUxEX1BST1BFUlRJRVNbZmllbGQudHlwZV0pLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtYXg6IGdldE1heERhdGUoZmllbGQpLFxuICAgICAgICAgICAgICBtaW46IGdldE1pbkRhdGUoZmllbGQpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZmllbGQucHJvcGVydGllc1xuICAgICAgICAgIClcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlUGhvbmUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVJhZGlvID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIGZpZWxkLm9wdGlvbnMgPSBmaWVsZC5vcHRpb25zLm1hcCgoeDogYW55KTogYW55ID0+IHtcbiAgICAgICAgICBpZiAodHlwZW9mIHggPT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIHggPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICAgIHJldHVybiB7IGxhYmVsOiB4LCBkaXNhYmxlZDogZmFsc2UsIGRlc2NyaXB0aW9uOiBcIlwiIH07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgY2hlY2tPYmplY3RLZXlFeGlzdHMoeCwgXCJsYWJlbFwiKSAmJlxuICAgICAgICAgICAgICBjaGVja09iamVjdEtleUV4aXN0cyh4LCBcImRpc2FibGVkXCIpICYmXG4gICAgICAgICAgICAgIGNoZWNrT2JqZWN0S2V5RXhpc3RzKHgsIFwiZGVzY3JpcHRpb25cIilcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICByZXR1cm4geDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghY2hlY2tPYmplY3RLZXlFeGlzdHMoeCwgXCJkaXNhYmxlZFwiKSkge1xuICAgICAgICAgICAgICB4ID0geyAuLi54LCBkaXNhYmxlZDogZmFsc2UgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghY2hlY2tPYmplY3RLZXlFeGlzdHMoeCwgXCJkZXNjcmlwdGlvblwiKSkge1xuICAgICAgICAgICAgICB4ID0geyAuLi54LCBkZXNjcmlwdGlvbjogZmFsc2UgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVNsaWRlciA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlU2VsZWN0ID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVBcGkgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICBpZiAoIWNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcInNob3dMb2FkZXJcIikpIHtcbiAgICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwic2hvd0xvYWRlclwiLCBmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImFwaVwiKSkge1xuICAgICAgICAgIGNvbnN0IGZpZWxkQXBpRGVmYXVsdHMgPSB7XG4gICAgICAgICAgICB1cmw6IFwiXCIsXG4gICAgICAgICAgICByZXF1ZXN0OiB7fSxcbiAgICAgICAgICAgIHJlc3BvbnNlOiB7fSxcbiAgICAgICAgICAgIHN0YXR1czoge1xuICAgICAgICAgICAgICB2YWx1ZTogXCJkZWZhdWx0XCIsXG4gICAgICAgICAgICAgIGxhYmVsczoge1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IFwiQ2FsbCBBUElcIixcbiAgICAgICAgICAgICAgICBsb2FkaW5nOiBcIkNhbGwgQVBJXCIsXG4gICAgICAgICAgICAgICAgcmV0cnk6IFwiUmV0cnkgQVBJXCIsXG4gICAgICAgICAgICAgICAgc3VjY2VzczogXCJBUEkgU3VjY2Vzc1wiLFxuICAgICAgICAgICAgICAgIGZhaWxlZDogXCJBUEkgRmFpbGVkXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH07XG4gICAgICAgICAgZmllbGQuYXBpID0gZ2V0T2JqZWN0RGVlcENvcHkoXG4gICAgICAgICAgICBtZXJnZU9iamVjdHMoZmllbGRBcGlEZWZhdWx0cywgZmllbGRBcGlEZWZhdWx0cylcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGlmIChcbiAgICAgICAgICAhY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQuYXBpLCBcInJlcXVlc3RcIikgJiZcbiAgICAgICAgICAhY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQuYXBpLCBcImVudHJ5cG9pbnRcIilcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgYXBpRW50cnlwb2ludCA9IHtcbiAgICAgICAgICAgIHRyaWdnZXJzOiBbXCJPTl9BUElfQ0FMTFwiXSxcbiAgICAgICAgICAgIHJ1bGVzOiBbXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiBcIjFcIixcbiAgICAgICAgICAgICAgICBrZXk6IFwiQVBJX0NBTExcIixcbiAgICAgICAgICAgICAgICBjb25kaXRpb246IFwidHJ1ZVwiLFxuICAgICAgICAgICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgICAgICAgICBmaWVsZEtleTogZmllbGQua2V5LFxuICAgICAgICAgICAgICAgICAgYXBpS2V5OiBmaWVsZC5hcGkuZW5kcG9pbnRzWzBdLmFwaUtleVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH07XG4gICAgICAgICAgZmllbGQuZW50cnlwb2ludCA9IGdldE9iamVjdERlZXBDb3B5KFxuICAgICAgICAgICAgbWVyZ2VPYmplY3RzKGFwaUVudHJ5cG9pbnQsIGZpZWxkLmFwaSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVPdHAgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG5cbiAgICAgICAgZmllbGQucHJvcGVydGllcyA9IGdldE9iamVjdERlZXBDb3B5KFxuICAgICAgICAgIG1lcmdlT2JqZWN0cyhcbiAgICAgICAgICAgIGdldE9iamVjdERlZXBDb3B5KEZJRUxEX1BST1BFUlRJRVNbZmllbGQudHlwZV0pLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtYXNrOiBuZXcgQXJyYXkoZmllbGQ/LnByb3BlcnRpZXM/Lm90cExlbmd0aCA/PyA0KVxuICAgICAgICAgICAgICAgIC5maWxsKFwiI1wiKVxuICAgICAgICAgICAgICAgIC5qb2luKFwiIFwiKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZpZWxkLnByb3BlcnRpZXNcbiAgICAgICAgICApXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUFhZGhhYXJOdW1iZXIgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUZpbGUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUNhcHR1cmUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVJlY29yZCA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuXG4gICAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkhUTUw6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVIdG1sKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlRJVExFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlVGl0bGUoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuQlVUVE9OOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQnV0dG9uKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlRFWFQ6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVUZXh0KGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlBBU1NXT1JEOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlUGFzc3dvcmQoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuRU1BSUw6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVFbWFpbChmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5URVhUQVJFQTpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVRleHRhcmVhKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkNIRUNLQk9YOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQ2hlY2tib3goZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuTlVNQkVSOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlTnVtYmVyKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlBSRVZJRVdfSU1BR0U6XG4gICAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleVZhbHVlKGZpZWxkLCBcInR5cGVcIiwgXCJpbWFnZVwiKTtcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZUltYWdlKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLklNQUdFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlSW1hZ2UoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuREFURTpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZURhdGUoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuUEhPTkU6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVQaG9uZShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SQURJTzpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVJhZGlvKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlNMSURFUjpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVNsaWRlcihmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJzZWFyY2gtdGV4dFwiOlxuICAgICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlWYWx1ZShmaWVsZCwgXCJ0eXBlXCIsIFwic2VsZWN0XCIpO1xuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlU2VsZWN0KGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkRST1BET1dOX1dJVEhfU0VBUkNIOlxuICAgICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlWYWx1ZShmaWVsZCwgXCJ0eXBlXCIsIFwic2VsZWN0XCIpO1xuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlU2VsZWN0KGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlNFTEVDVDpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVNlbGVjdChmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5BUElfQ0FMTDpcbiAgICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwidHlwZVwiLCBcImFwaVwiKTtcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZUFwaShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5BUEk6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVBcGkoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuT1RQOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlT3RwKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkFBREhBQVJfTlVNQkVSOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQWFkaGFhck51bWJlcihmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5GSUxFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlRmlsZShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5DQVBUVVJFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQ2FwdHVyZShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SRUNPUkQ6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVSZWNvcmQoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuU1RBUl9SQVRJTkc6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVTdGFyUmF0aW5nKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZFZhbGlkYXRvcnMgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICBpZiAoZmllbGQuaXNGb3JtRWxlbWVudCkge1xuICAgICAgICBjb25zdCB2YWxpZGF0b3JzID0gY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwidmFsaWRhdG9yc1wiKVxuICAgICAgICAgID8gZmllbGQudmFsaWRhdG9yc1xuICAgICAgICAgIDoge307XG5cbiAgICAgICAgZmllbGQgPSBzZXRNaXNzaW5nRmllbGRLZXlWYWx1ZShmaWVsZCwgXCJ2YWxpZGF0b3JzXCIsIHt9KTtcblxuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwidmFsaWRhdG9yc1wiLCB7XG4gICAgICAgICAgLi4uZmllbGRbXCJ2YWxpZGF0b3JzXCJdLFxuICAgICAgICAgIG1pbjogY2hlY2tPYmplY3RLZXlFeGlzdHModmFsaWRhdG9ycywgXCJtaW5cIilcbiAgICAgICAgICAgID8gaXNOb3RFbXB0eVZhbHVlKHZhbGlkYXRvcnMubWluKVxuICAgICAgICAgICAgICA/IE51bWJlcih2YWxpZGF0b3JzLm1pbilcbiAgICAgICAgICAgICAgOiBudWxsXG4gICAgICAgICAgICA6IGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcIm1pblwiKVxuICAgICAgICAgICAgPyBOdW1iZXIoZmllbGQubWluKVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgIG1heDogY2hlY2tPYmplY3RLZXlFeGlzdHModmFsaWRhdG9ycywgXCJtYXhcIilcbiAgICAgICAgICAgID8gaXNOb3RFbXB0eVZhbHVlKHZhbGlkYXRvcnMubWF4KVxuICAgICAgICAgICAgICA/IE51bWJlcih2YWxpZGF0b3JzLm1heClcbiAgICAgICAgICAgICAgOiBudWxsXG4gICAgICAgICAgICA6IGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcIm1heFwiKVxuICAgICAgICAgICAgPyBOdW1iZXIoZmllbGQubWF4KVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgIHJlcXVpcmVkOiBjaGVja09iamVjdEtleUV4aXN0cyh2YWxpZGF0b3JzLCBcInJlcXVpcmVkXCIpXG4gICAgICAgICAgICA/IEJvb2xlYW4odmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgICAgICAgICAgIDogY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwicmVxdWlyZWRcIilcbiAgICAgICAgICAgID8gQm9vbGVhbihmaWVsZC5yZXF1aXJlZClcbiAgICAgICAgICAgIDogZmFsc2UsXG4gICAgICAgICAgbWluTGVuZ3RoOiBjaGVja09iamVjdEtleUV4aXN0cyh2YWxpZGF0b3JzLCBcIm1pbkxlbmd0aFwiKVxuICAgICAgICAgICAgPyBpc05vdEVtcHR5VmFsdWUodmFsaWRhdG9ycy5taW5MZW5ndGgpXG4gICAgICAgICAgICAgID8gTnVtYmVyKHZhbGlkYXRvcnMubWluTGVuZ3RoKVxuICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgIDogY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwibWluTGVuZ3RoXCIpXG4gICAgICAgICAgICA/IE51bWJlcihmaWVsZC5taW5MZW5ndGgpXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgbWF4TGVuZ3RoOiBjaGVja09iamVjdEtleUV4aXN0cyh2YWxpZGF0b3JzLCBcIm1heExlbmd0aFwiKVxuICAgICAgICAgICAgPyBpc05vdEVtcHR5VmFsdWUodmFsaWRhdG9ycy5tYXhMZW5ndGgpXG4gICAgICAgICAgICAgID8gTnVtYmVyKHZhbGlkYXRvcnMubWF4TGVuZ3RoKVxuICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgIDogY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwibGVuZ3RoXCIpXG4gICAgICAgICAgICA/IE51bWJlcihmaWVsZC5sZW5ndGgpXG4gICAgICAgICAgICA6IGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcIm1heExlbmd0aFwiKVxuICAgICAgICAgICAgPyBOdW1iZXIoZmllbGQubWF4TGVuZ3RoKVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgIHBhdHRlcm46IGNoZWNrT2JqZWN0S2V5RXhpc3RzKHZhbGlkYXRvcnMsIFwicGF0dGVyblwiKVxuICAgICAgICAgICAgPyBpc05vdEVtcHR5VmFsdWUodmFsaWRhdG9ycy5wYXR0ZXJuKVxuICAgICAgICAgICAgICA/IHZhbGlkYXRvcnMucGF0dGVyblxuICAgICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgOiBjaGVja09iamVjdEtleUV4aXN0cyhmaWVsZCwgXCJwYXR0ZXJuXCIpXG4gICAgICAgICAgICA/IHsga2V5OiBcIkNVU1RPTVwiLCBwYXR0ZXJuOiBTdHJpbmcoZmllbGQucGF0dGVybikgfVxuICAgICAgICAgICAgOiBjaGVja09iamVjdEtleUV4aXN0cyhmaWVsZCwgXCJyZWdleFwiKVxuICAgICAgICAgICAgPyB7IGtleTogXCJDVVNUT01cIiwgcGF0dGVybjogU3RyaW5nKGZpZWxkLnJlZ2V4KSB9XG4gICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICB9KTtcblxuICAgICAgICBkZWxldGUgZmllbGQubWluO1xuICAgICAgICBkZWxldGUgZmllbGQubWF4O1xuICAgICAgICBkZWxldGUgZmllbGQucmVxdWlyZWQ7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5taW5MZW5ndGg7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5sZW5ndGg7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5tYXhMZW5ndGg7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5wYXR0ZXJuO1xuICAgICAgICBkZWxldGUgZmllbGQucmVnZXg7XG5cbiAgICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgICAgY2FzZSBFRmllbGRUeXBlLlRFWFQ6XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW47XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXg7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIEVGaWVsZFR5cGUuQ0hFQ0tCT1g6XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW47XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXg7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIEVGaWVsZFR5cGUuUFJFVklFV19JTUFHRTpcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1pbjtcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1heDtcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1pbkxlbmd0aDtcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1heExlbmd0aDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRUZpZWxkVHlwZS5GSUxFOlxuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4O1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluTGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4TGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMucGF0dGVybjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRUZpZWxkVHlwZS5DQVBUVVJFOlxuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4O1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluTGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4TGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMucGF0dGVybjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SRUNPUkQ6XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW47XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXg7XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW5MZW5ndGg7XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXhMZW5ndGg7XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5wYXR0ZXJuO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzRW1wdHlWYWx1ZShmaWVsZC52YWxpZGF0b3JzPy5taW4pKSB7XG4gICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5VmFsdWUoZmllbGQudmFsaWRhdG9ycz8ubWF4KSkge1xuICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1pbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eVZhbHVlKGZpZWxkLnZhbGlkYXRvcnM/Lm1pbkxlbmd0aCkpIHtcbiAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW5MZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHlWYWx1ZShmaWVsZC52YWxpZGF0b3JzPy5tYXhMZW5ndGgpKSB7XG4gICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4TGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5VmFsdWUoZmllbGQudmFsaWRhdG9ycz8ucGF0dGVybikpIHtcbiAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5wYXR0ZXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZmllbGQuZm9jdXMgPSBmYWxzZTtcbiAgICAgICAgZmllbGQuaW52YWxpZCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmllbGQ7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZUZpZWxkRGVmYXVsdFZhbHVlID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgaWYgKGZpZWxkLmlzRm9ybUVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImRlZmF1bHRWYWx1ZVwiKSkge1xuICAgICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgICAgfSBlbHNlIGlmIChjaGVja09iamVjdFBhdGhFeGlzdHMoZmllbGQsIFwiZGVmYXVsdC52YWx1ZS5zb3VyY2VzXCIpKSB7XG4gICAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgICB9IGVsc2UgaWYgKCFjaGVja09iamVjdFBhdGhFeGlzdHMoZmllbGQsIFwiZGVmYXVsdC52YWx1ZS5zb3VyY2VzXCIpKSB7XG4gICAgICAgICAgY29uc3QgZGVmYXVsdFZhbHVlID0ge1xuICAgICAgICAgICAgaXNfZm91bmQ6IGZhbHNlLFxuICAgICAgICAgICAgdmFsdWU6IFwiXCIsXG4gICAgICAgICAgICBzb3VyY2VzOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBrZXk6IFwiT0JKRUNUXCIsXG4gICAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgIG9iamVjdDoge1xuICAgICAgICAgICAgICAgICAgICBrZXk6IFwiRk9STV9EQVRBXCIsXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6IGAkLiR7ZmllbGQua2V5fWBcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHZhbHVlOiBcIlwiLFxuICAgICAgICAgICAgICAgIHZhbGlkYXRpb246IHtcbiAgICAgICAgICAgICAgICAgIGlzX3ZhbGlkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXJzOiBbXCJPTl9JTklUXCJdLFxuICAgICAgICAgICAgICAgICAgcnVsZXM6IFtdLFxuICAgICAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgIGtleTogXCJTRVRfRklFTERfREVGQVVMVF9WQUxVRVwiLFxuICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbjogXCIxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleTogXCJPQkpFQ1RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleTogXCJGT1JNX0RBVEFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogYCQuJHtmaWVsZC5rZXl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH07XG5cbiAgICAgICAgICBmaWVsZCA9IHNldFZhbHVlVG9PYmplY3RQYXRoKGZpZWxkLCBcImRlZmF1bHQudmFsdWVcIiwgZGVmYXVsdFZhbHVlKTtcbiAgICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBkZWxldGUgZmllbGRbXCJkZWZhdWx0VmFsXCJdO1xuICAgICAgICBkZWxldGUgZmllbGRbXCJkZWZhdWx0VmFsdWVcIl07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZDtcbiAgICB9O1xuXG4gICAgY29uc3QgdXBkYXRlRmllbGREaXNhYmlsaXR5ID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgZmllbGQgPSBzZXRNaXNzaW5nS2V5VmFsdWUoZmllbGQsIFwiZGlzYWJsZWRcIiwgZmFsc2UpO1xuXG4gICAgICByZXR1cm4gZmllbGQ7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZUZpZWxkTWVzc2FnZXMgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICBpZiAoZmllbGQuaXNGb3JtRWxlbWVudCkge1xuICAgICAgICBmaWVsZCA9IHNldE1pc3NpbmdGaWVsZEtleVZhbHVlKGZpZWxkLCBcIm1lc3NhZ2VzXCIsIFtdKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZFJlc2V0QnV0dG9uID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgaWYgKGZpZWxkLmlzRm9ybUVsZW1lbnQpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImFjdGlvblwiKSAmJlxuICAgICAgICAgIGZpZWxkLmFjdGlvbiA9PT0gXCJyZXNldFwiICYmXG4gICAgICAgICAgY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwiZmllbGRzXCIpXG4gICAgICAgICkge1xuICAgICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlWYWx1ZShmaWVsZCwgXCJyZXNldFwiLCB7XG4gICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkc1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZDtcbiAgICB9O1xuXG4gICAgY29uc3Qgc2V0Rm9ybUZpZWxkcyA9IChmb3JtQ29uZmlnOiBhbnksIGZpZWxkczogYW55W10pOiBhbnkgPT4ge1xuICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZvcm1Db25maWcsIFwibXVsdGlGb3JtXCIpKSB7XG4gICAgICAgIGZvcm1Db25maWcubXVsdGlGb3JtW1wiZmllbGRzXCJdID0gZmllbGRzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9ybUNvbmZpZ1tcImZpZWxkc1wiXSA9IGZpZWxkcztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZvcm1Db25maWc7XG4gICAgfTtcblxuICAgIGNvbnN0IHNldEZvcm1GaWVsZEdyb3VwcyA9IChmb3JtQ29uZmlnOiBhbnksIGdyb3VwczogYW55KTogYW55ID0+IHtcbiAgICAgIGZvcm1Db25maWdbXCJmaWVsZEdyb3Vwc1wiXSA9IGdyb3VwcztcblxuICAgICAgcmV0dXJuIGZvcm1Db25maWc7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZUZvcm1GaWVsZEdyb3VwcyA9IChmaWVsZEdyb3VwczogYW55LCBmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyhmaWVsZCwgXCJncm91cEtleVwiKSkge1xuICAgICAgICBpZiAoY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGRHcm91cHMsIGZpZWxkLmdyb3VwS2V5KSkge1xuICAgICAgICAgIGZpZWxkR3JvdXBzW2ZpZWxkLmdyb3VwS2V5XS5wdXNoKGZpZWxkLmtleSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZmllbGRHcm91cHNbZmllbGQuZ3JvdXBLZXldID0gW2ZpZWxkLmtleV07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkR3JvdXBzO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZExhbmd1YWdlID0gKGZpZWxkOiBURmllbGQsIGxhbmd1YWdlOiBzdHJpbmcpOiBhbnkgPT4ge1xuICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImxhYmVsXCIpKSB7XG4gICAgICAgIGZpZWxkLmxhYmVsID0gdXBkYXRlTGFuZ3VhZ2UoZmllbGQubGFiZWwsIGxhbmd1YWdlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNoZWNrT2JqZWN0UGF0aEV4aXN0cyhmaWVsZCwgXCJwcm9wZXJ0aWVzLnBsYWNlaG9sZGVyXCIpKSB7XG4gICAgICAgIGZpZWxkLnByb3BlcnRpZXNbXCJwbGFjZWhvbGRlclwiXSA9IHVwZGF0ZUxhbmd1YWdlKFxuICAgICAgICAgIGZpZWxkLnByb3BlcnRpZXNbXCJwbGFjZWhvbGRlclwiXSxcbiAgICAgICAgICBsYW5ndWFnZVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2hlY2tPYmplY3RQYXRoRXhpc3RzKGZpZWxkLCBcInByb3BlcnRpZXMubGFiZWxcIikpIHtcbiAgICAgICAgZmllbGQucHJvcGVydGllc1tcImxhYmVsXCJdID0gdXBkYXRlTGFuZ3VhZ2UoXG4gICAgICAgICAgZmllbGQucHJvcGVydGllc1tcImxhYmVsXCJdLFxuICAgICAgICAgIGxhbmd1YWdlXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHVwZGF0ZUFwaVN0YXR1cyA9IChmaWVsZEFwaVN0YXR1cykgPT4ge1xuICAgICAgICBmb3IgKGNvbnN0IHN0YXR1cyBpbiBmaWVsZEFwaVN0YXR1cykge1xuICAgICAgICAgIGZpZWxkQXBpU3RhdHVzW3N0YXR1c10gPSB1cGRhdGVMYW5ndWFnZShcbiAgICAgICAgICAgIGZpZWxkQXBpU3RhdHVzW3N0YXR1c10sXG4gICAgICAgICAgICBsYW5ndWFnZVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpZWxkQXBpU3RhdHVzO1xuICAgICAgfTtcblxuICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5IVE1MOlxuICAgICAgICAgIGZpZWxkW1wiaHRtbFwiXSA9IHVwZGF0ZUxhbmd1YWdlKGZpZWxkW1wiaHRtbFwiXSwgbGFuZ3VhZ2UpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuQ0FQVFVSRTpcbiAgICAgICAgICBmaWVsZC5wcm9wZXJ0aWVzW1wiY2FtZXJhQ29uZmlnXCJdLmhlYWRlci50aXRsZSA9IHVwZGF0ZUxhbmd1YWdlKFxuICAgICAgICAgICAgZmllbGQucHJvcGVydGllc1tcImNhbWVyYUNvbmZpZ1wiXS5oZWFkZXIudGl0bGUsXG4gICAgICAgICAgICBsYW5ndWFnZVxuICAgICAgICAgICk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SRUNPUkQ6XG4gICAgICAgICAgZmllbGQucHJvcGVydGllc1tcImNhbWVyYUNvbmZpZ1wiXS5oZWFkZXIudGl0bGUgPSB1cGRhdGVMYW5ndWFnZShcbiAgICAgICAgICAgIGZpZWxkLnByb3BlcnRpZXNbXCJjYW1lcmFDb25maWdcIl0uaGVhZGVyLnRpdGxlLFxuICAgICAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuU0VMRUNUOlxuICAgICAgICAgIGZpZWxkLm9wdGlvbnMgPSBmaWVsZC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXNPYmplY3Qob3B0aW9uKSkge1xuICAgICAgICAgICAgICBpZiAoY2hlY2tPYmplY3RLZXlFeGlzdHMob3B0aW9uLCBcInRpdGxlXCIpKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9uLnRpdGxlID0gdXBkYXRlTGFuZ3VhZ2Uob3B0aW9uLnRpdGxlLCBsYW5ndWFnZSk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgb3B0aW9uID0gdXBkYXRlTGFuZ3VhZ2Uob3B0aW9uLCBsYW5ndWFnZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBvcHRpb247XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5EUk9QRE9XTl9XSVRIX1NFQVJDSDpcbiAgICAgICAgICBmaWVsZC5vcHRpb25zID0gZmllbGQub3B0aW9ucy5tYXAoKG9wdGlvbikgPT4ge1xuICAgICAgICAgICAgaWYgKGlzT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgICAgICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKG9wdGlvbiwgXCJ0aXRsZVwiKSkge1xuICAgICAgICAgICAgICAgIG9wdGlvbi50aXRsZSA9IHVwZGF0ZUxhbmd1YWdlKG9wdGlvbi50aXRsZSwgbGFuZ3VhZ2UpO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9wdGlvbiA9IHVwZGF0ZUxhbmd1YWdlKG9wdGlvbiwgbGFuZ3VhZ2UpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gb3B0aW9uO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuUkFESU86XG4gICAgICAgICAgZmllbGQub3B0aW9ucyA9IGZpZWxkLm9wdGlvbnMubWFwKChvcHRpb24pID0+IHtcbiAgICAgICAgICAgIGlmIChpc09iamVjdChvcHRpb24pKSB7XG4gICAgICAgICAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyhvcHRpb24sIFwibGFiZWxcIikpIHtcbiAgICAgICAgICAgICAgICBvcHRpb24ubGFiZWwgPSB1cGRhdGVMYW5ndWFnZShvcHRpb24ubGFiZWwsIGxhbmd1YWdlKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvcHRpb24gPSB1cGRhdGVMYW5ndWFnZShvcHRpb24sIGxhbmd1YWdlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkFQSV9DQUxMOlxuICAgICAgICAgIGZpZWxkW1wiYXBpXCJdW1wic3RhdHVzXCJdW1wibGFiZWxzXCJdID0gdXBkYXRlQXBpU3RhdHVzKFxuICAgICAgICAgICAgZmllbGRbXCJhcGlcIl1bXCJzdGF0dXNcIl1bXCJsYWJlbHNcIl1cbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmllbGQ7XG4gICAgfTtcblxuICAgIGxldCBmaWVsZHM6IGFueVtdID0gZ2V0Rm9ybUZpZWxkcyhmb3JtQ29uZmlnKTtcblxuICAgIGxldCBmaWVsZEdyb3VwczogYW55ID0ge307XG5cbiAgICBmb3IgKGxldCBmaWVsZCBvZiBmaWVsZHMpIHtcbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGRMYW5ndWFnZShmaWVsZCwgZ2V0TGFuZ3VhZ2UoKSk7XG5cbiAgICAgIGZpZWxkID0gZm9ybWF0T25GaWVsZFR5cGUoZmllbGQpO1xuXG4gICAgICBmaWVsZCA9IHVwZGF0ZUZpZWxkRGlzYWJpbGl0eShmaWVsZCk7XG5cbiAgICAgIGZpZWxkR3JvdXBzID0gdXBkYXRlRm9ybUZpZWxkR3JvdXBzKGZpZWxkR3JvdXBzLCBmaWVsZCk7XG5cbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGREZWZhdWx0VmFsdWUoZmllbGQpO1xuXG4gICAgICBmaWVsZCA9IHVwZGF0ZUZpZWxkVmFsaWRhdG9ycyhmaWVsZCk7XG5cbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGRSZXNldEJ1dHRvbihmaWVsZCk7XG5cbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGRNZXNzYWdlcyhmaWVsZCk7XG4gICAgfVxuXG4gICAgZm9ybUNvbmZpZyA9IHNldEZvcm1GaWVsZEdyb3Vwcyhmb3JtQ29uZmlnLCBmaWVsZEdyb3Vwcyk7XG5cbiAgICBmb3JtQ29uZmlnID0gc2V0Rm9ybUZpZWxkcyhmb3JtQ29uZmlnLCBmaWVsZHMpO1xuXG4gICAgcmV0dXJuIGZvcm1Db25maWc7XG4gIH1cbn1cbiJdfQ==
|
|
710
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2t3aWtpZC1mb3Jtcy9zcmMvbGliL3JlbmRlcmVyL2NvbmZpZy1jb252ZXJ0ZXIvY29uZmlnLWNvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLFlBQVksRUFDWixlQUFlLEVBQ2YsUUFBUSxFQUNSLFNBQVMsRUFDVCxZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNyQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDTCxVQUFVLEVBRVgsTUFBTSxzREFBc0QsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsY0FBYyxFQUNkLGFBQWEsRUFDYixVQUFVLEVBQ1YsVUFBVSxFQUNWLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixXQUFXLEVBQ1osTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxNQUFNLE9BQU8sU0FBUztJQUVwQiw2QkFBNkIsQ0FBQyxVQUFlLEVBQUUsSUFBUztRQUN0RCxJQUFJLG9CQUFvQixDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxFQUFFO1lBQ2pELFVBQVUsR0FBRyxvQkFBb0IsQ0FDL0IsVUFBVSxFQUNWLGlCQUFpQixFQUNqQixJQUFJLENBQUMsZUFBZSxDQUNyQixDQUFDO1NBQ0g7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBR0QsOEJBQThCLENBQUMsVUFBZSxFQUFFLFVBQWU7UUFDN0QsSUFBSSxlQUFlLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDL0IsSUFBSSxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQzdD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QWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUU5QyxJQUFJLFdBQVcsR0FBUSxFQUFFLENBQUM7UUFFMUIsS0FBSyxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUU7WUFDeEIsS0FBSyxHQUFHLG1CQUFtQixDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBRWxELEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVqQyxLQUFLLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFckMsV0FBVyxHQUFHLHFCQUFxQixDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUV4RCxLQUFLLEdBQUcsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFdkMsS0FBSyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXJDLEtBQUssR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUV0QyxLQUFLLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEM7UUFFRCxVQUFVLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXpELFVBQVUsR0FBRyxhQUFhLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRS9DLE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7Q0FDRjtBQTEwQkM7SUFEQyxTQUFTOzhEQVdUO0FBR0Q7SUFEQyxTQUFTOytEQWVUO0FBR0Q7SUFEQyxTQUFTOzJEQWlGVDtBQUdEO0lBREMsU0FBUztrREF5dEJUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY2hlY2tPYmplY3RLZXlFeGlzdHMsXG4gIGNoZWNrT2JqZWN0UGF0aEV4aXN0cyxcbiAgZ2V0T2JqZWN0RGVlcENvcHksXG4gIGlzRW1wdHlWYWx1ZSxcbiAgaXNOb3RFbXB0eVZhbHVlLFxuICBpc09iamVjdCxcbiAgbG9nTWV0aG9kLFxuICBtZXJnZU9iamVjdHMsXG4gIHNldE1pc3NpbmdLZXlWYWx1ZSxcbiAgc2V0VmFsdWVUb09iamVjdFBhdGhcbn0gZnJvbSBcImt3aWtpZC10b29sa2l0XCI7XG5pbXBvcnQge1xuICBFRmllbGRUeXBlLFxuICBURmllbGRcbn0gZnJvbSBcIi4uL2Zvcm0tdmlldy9kZWZpbml0aW9ucy9mb3JtLXZpZXcuZmllbGRzLmRlZmluaXRpb25cIjtcbmltcG9ydCB7IEZJRUxEX1BST1BFUlRJRVMgfSBmcm9tIFwiLi9jb25maWctY29udmVydGVyLmNvbnN0YW50c1wiO1xuaW1wb3J0IHtcbiAgdXBkYXRlTGFuZ3VhZ2UsXG4gIGdldEZvcm1GaWVsZHMsXG4gIGdldE1heERhdGUsXG4gIGdldE1pbkRhdGUsXG4gIHNldEZpZWxkQXNGb3JtRWxlbWVudCxcbiAgc2V0RmllbGRLZXlIaWRkZW4sXG4gIHNldEZpZWxkS2V5VmFsdWUsXG4gIHNldE1pc3NpbmdGaWVsZEtleVZhbHVlLFxuICBnZXRMYW5ndWFnZVxufSBmcm9tIFwiLi9jb25maWctY29udmVydGVyLmhlbHBlclwiO1xuXG5leHBvcnQgY2xhc3MgQ29udmVydGVyIHtcbiAgQGxvZ01ldGhvZFxuICB1cGRhdGVGb3JtQ29uZmlnTWlzY2VsbGFuZW91cyhmb3JtQ29uZmlnOiBhbnksIGFyZ3M6IGFueSk6IGFueSB7XG4gICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGFyZ3MsIFwiZm9ybXNMaXN0TGVuZ3RoXCIpKSB7XG4gICAgICBmb3JtQ29uZmlnID0gc2V0VmFsdWVUb09iamVjdFBhdGgoXG4gICAgICAgIGZvcm1Db25maWcsXG4gICAgICAgIFwiZm9ybXNMaXN0TGVuZ3RoXCIsXG4gICAgICAgIGFyZ3MuZm9ybXNMaXN0TGVuZ3RoXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBmb3JtQ29uZmlnO1xuICB9XG5cbiAgQGxvZ01ldGhvZFxuICB1cGRhdGVGb3JtQ29uZmlnRnJvbVVzZXJDb25maWcoZm9ybUNvbmZpZzogYW55LCB1c2VyQ29uZmlnOiBhbnkpOiBhbnkge1xuICAgIGlmIChpc05vdEVtcHR5VmFsdWUodXNlckNvbmZpZykpIHtcbiAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyh1c2VyQ29uZmlnLCBcInRoZW1lXCIpKSB7XG4gICAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyh1c2VyQ29uZmlnLnRoZW1lLCBcImNsaWVudExvZ29cIikpIHtcbiAgICAgICAgICBzZXRWYWx1ZVRvT2JqZWN0UGF0aChcbiAgICAgICAgICAgIGZvcm1Db25maWcsXG4gICAgICAgICAgICBcInByb3BlcnRpZXMuaGVhZGVyLmxvZ28uc3JjXCIsXG4gICAgICAgICAgICB1c2VyQ29uZmlnLnRoZW1lLmNsaWVudExvZ29cbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1Db25maWc7XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIHVwZGF0ZUZvcm1Db25maWdQcm9wZXJ0aWVzKGZvcm1Db25maWc6IGFueSk6IGFueSB7XG4gICAgY29uc3QgZm9ybVZpZXdQcm9wZXJ0aWVzID0ge1xuICAgICAgaGVhZGVyOiB7XG4gICAgICAgIGxvZ286IHtcbiAgICAgICAgICBzcmM6IFwiXCIsXG4gICAgICAgICAgYWx0OiBcIkxvZ29cIixcbiAgICAgICAgICBoaWRkZW46IGZhbHNlLFxuICAgICAgICAgIHN0eWxlczogXCJcIlxuICAgICAgICB9LFxuICAgICAgICBiYWNrQnV0dG9uOiB7XG4gICAgICAgICAgbW9kZTogXCJUQUJCRURcIixcbiAgICAgICAgICBieXBhc3NDb25maXJtYXRpb246IGZhbHNlLFxuICAgICAgICAgIGhpZGRlbjogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB0aXRsZToge1xuICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgbGFiZWw6IGZvcm1Db25maWc/LnRpdGxlID8/IGZvcm1Db25maWc/LnByb3BzLnRpdGxlID8/IFwiRm9ybVwiLFxuICAgICAgICAgIHN0eWxlczogXCJcIlxuICAgICAgICB9LFxuICAgICAgICBzdGVwczoge1xuICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgc3R5bGVzOiBcIlwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBtYWluOiB7XG4gICAgICAgIHN0eWxlczogXCJcIlxuICAgICAgfSxcbiAgICAgIGZvb3Rlcjoge1xuICAgICAgICB2aWV3Rm9ybXNCdXR0b246IHtcbiAgICAgICAgICBieXBhc3NDb25maXJtYXRpb246IGZhbHNlLFxuICAgICAgICAgIGhpZGRlbjogZmFsc2UsXG4gICAgICAgICAgbGFiZWw6IFwiVmlldyBGb3Jtc1wiXG4gICAgICAgIH0sXG4gICAgICAgIHNhdmVCdXR0b246IHtcbiAgICAgICAgICBoaWRkZW46IGZhbHNlLFxuICAgICAgICAgIGxhYmVsOiBcIlNhdmVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgaXNVbnNhdmVkRGF0YUFsZXJ0RW5hYmxlZDogZmFsc2VcbiAgICB9O1xuXG4gICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZvcm1Db25maWcsIFwicHJvcGVydGllc1wiKSkge1xuICAgICAgZm9ybUNvbmZpZy5wcm9wZXJ0aWVzID0gZ2V0T2JqZWN0RGVlcENvcHkoXG4gICAgICAgIG1lcmdlT2JqZWN0cyhmb3JtVmlld1Byb3BlcnRpZXMsIGZvcm1Db25maWcucHJvcGVydGllcylcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZvcm1Db25maWcucHJvcGVydGllcyA9IGZvcm1WaWV3UHJvcGVydGllcztcbiAgICB9XG5cbiAgICBjb25zdCBsYW5ndWFnZSA9IGdldExhbmd1YWdlKCk7XG5cbiAgICBpZiAoY2hlY2tPYmplY3RQYXRoRXhpc3RzKGZvcm1Db25maWcsIFwicHJvcGVydGllcy5oZWFkZXIudGl0bGUubGFiZWxcIikpIHtcbiAgICAgIGZvcm1Db25maWcucHJvcGVydGllcy5oZWFkZXIudGl0bGUubGFiZWwgPSB1cGRhdGVMYW5ndWFnZShcbiAgICAgICAgZm9ybUNvbmZpZy5wcm9wZXJ0aWVzLmhlYWRlci50aXRsZS5sYWJlbCxcbiAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgY2hlY2tPYmplY3RQYXRoRXhpc3RzKFxuICAgICAgICBmb3JtQ29uZmlnLFxuICAgICAgICBcInByb3BlcnRpZXMuZm9vdGVyLnZpZXdGb3Jtc0J1dHRvbi5sYWJlbFwiXG4gICAgICApXG4gICAgKSB7XG4gICAgICBmb3JtQ29uZmlnLnByb3BlcnRpZXMuZm9vdGVyLnZpZXdGb3Jtc0J1dHRvbi5sYWJlbCA9IHVwZGF0ZUxhbmd1YWdlKFxuICAgICAgICBmb3JtQ29uZmlnLnByb3BlcnRpZXMuZm9vdGVyLnZpZXdGb3Jtc0J1dHRvbi5sYWJlbCxcbiAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgY2hlY2tPYmplY3RQYXRoRXhpc3RzKGZvcm1Db25maWcsIFwicHJvcGVydGllcy5mb290ZXIuc2F2ZUJ1dHRvbi5sYWJlbFwiKVxuICAgICkge1xuICAgICAgZm9ybUNvbmZpZy5wcm9wZXJ0aWVzLmZvb3Rlci5zYXZlQnV0dG9uLmxhYmVsID0gdXBkYXRlTGFuZ3VhZ2UoXG4gICAgICAgIGZvcm1Db25maWcucHJvcGVydGllcy5mb290ZXIuc2F2ZUJ1dHRvbi5sYWJlbCxcbiAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1Db25maWc7XG4gIH1cblxuICBAbG9nTWV0aG9kXG4gIGNvbnZlcnRGb3JtQ29uZmlnKGZvcm1Db25maWc6IGFueSk6IGFueSB7XG4gICAgY29uc3QgZm9ybWF0T25GaWVsZFR5cGUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICBjb25zdCB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBpZiAoY2hlY2tPYmplY3RLZXlFeGlzdHMoRklFTERfUFJPUEVSVElFUywgZmllbGQudHlwZSkpIHtcbiAgICAgICAgICBmaWVsZC5wcm9wZXJ0aWVzID0gbWVyZ2VPYmplY3RzKFxuICAgICAgICAgICAgZ2V0T2JqZWN0RGVlcENvcHkoRklFTERfUFJPUEVSVElFU1tmaWVsZC50eXBlXSksXG4gICAgICAgICAgICBmaWVsZC5wcm9wZXJ0aWVzXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUh0bWwgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgZmFsc2UpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVUaXRsZSA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCBmYWxzZSk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUJ1dHRvbiA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRNaXNzaW5nRmllbGRLZXlWYWx1ZShmaWVsZCwgXCJoaWRkZW5cIiwgZmFsc2UpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgZmFsc2UpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVUZXh0ID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVQYXNzd29yZCA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlRW1haWwgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVN0YXJSYXRpbmcgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVRleHRhcmVhID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlQ2hlY2tib3ggPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVOdW1iZXIgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG5cbiAgICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImtleVwiKSkge1xuICAgICAgICAgIGlmIChmaWVsZC5rZXkgPT09IFwiYWFkaGFhcl9udW1iZXJcIikge1xuICAgICAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleVZhbHVlKGZpZWxkLCBcInR5cGVcIiwgXCJhYWRoYWFyX251bWJlclwiKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGZpZWxkLmtleSA9PT0gXCJjb250YWN0X251bWJlclwiKSB7XG4gICAgICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwidHlwZVwiLCBcInBob25lXCIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChmaWVsZC50eXBlID09PSBcInBob25lXCIgfHwgZmllbGQudHlwZSA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlSW1hZ2UgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZURhdGUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG5cbiAgICAgICAgZmllbGQucHJvcGVydGllcyA9IGdldE9iamVjdERlZXBDb3B5KFxuICAgICAgICAgIG1lcmdlT2JqZWN0cyhcbiAgICAgICAgICAgIGdldE9iamVjdERlZXBDb3B5KEZJRUxEX1BST1BFUlRJRVNbZmllbGQudHlwZV0pLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtYXg6IGdldE1heERhdGUoZmllbGQpLFxuICAgICAgICAgICAgICBtaW46IGdldE1pbkRhdGUoZmllbGQpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZmllbGQucHJvcGVydGllc1xuICAgICAgICAgIClcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlVGltZSA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlUGhvbmUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVJhZGlvID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIGZpZWxkLm9wdGlvbnMgPSBmaWVsZC5vcHRpb25zLm1hcCgoeDogYW55KTogYW55ID0+IHtcbiAgICAgICAgICBpZiAodHlwZW9mIHggPT09IFwic3RyaW5nXCIgfHwgdHlwZW9mIHggPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICAgIHJldHVybiB7IGxhYmVsOiB4LCBkaXNhYmxlZDogZmFsc2UsIGRlc2NyaXB0aW9uOiBcIlwiIH07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgY2hlY2tPYmplY3RLZXlFeGlzdHMoeCwgXCJsYWJlbFwiKSAmJlxuICAgICAgICAgICAgICBjaGVja09iamVjdEtleUV4aXN0cyh4LCBcImRpc2FibGVkXCIpICYmXG4gICAgICAgICAgICAgIGNoZWNrT2JqZWN0S2V5RXhpc3RzKHgsIFwiZGVzY3JpcHRpb25cIilcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICByZXR1cm4geDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghY2hlY2tPYmplY3RLZXlFeGlzdHMoeCwgXCJkaXNhYmxlZFwiKSkge1xuICAgICAgICAgICAgICB4ID0geyAuLi54LCBkaXNhYmxlZDogZmFsc2UgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghY2hlY2tPYmplY3RLZXlFeGlzdHMoeCwgXCJkZXNjcmlwdGlvblwiKSkge1xuICAgICAgICAgICAgICB4ID0geyAuLi54LCBkZXNjcmlwdGlvbjogZmFsc2UgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVNsaWRlciA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuICAgICAgY29uc3QgZm9ybWF0RmllbGRUeXBlU2VsZWN0ID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5SGlkZGVuKGZpZWxkKTtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEFzRm9ybUVsZW1lbnQoZmllbGQsIHRydWUpO1xuICAgICAgICBmaWVsZCA9IHVwZGF0ZUZvcm1GaWVsZFByb3BlcnRpZXMoZmllbGQpO1xuXG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVBcGkgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICBpZiAoIWNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcInNob3dMb2FkZXJcIikpIHtcbiAgICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwic2hvd0xvYWRlclwiLCBmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImFwaVwiKSkge1xuICAgICAgICAgIGNvbnN0IGZpZWxkQXBpRGVmYXVsdHMgPSB7XG4gICAgICAgICAgICB1cmw6IFwiXCIsXG4gICAgICAgICAgICByZXF1ZXN0OiB7fSxcbiAgICAgICAgICAgIHJlc3BvbnNlOiB7fSxcbiAgICAgICAgICAgIHN0YXR1czoge1xuICAgICAgICAgICAgICB2YWx1ZTogXCJkZWZhdWx0XCIsXG4gICAgICAgICAgICAgIGxhYmVsczoge1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6IFwiQ2FsbCBBUElcIixcbiAgICAgICAgICAgICAgICBsb2FkaW5nOiBcIkNhbGwgQVBJXCIsXG4gICAgICAgICAgICAgICAgcmV0cnk6IFwiUmV0cnkgQVBJXCIsXG4gICAgICAgICAgICAgICAgc3VjY2VzczogXCJBUEkgU3VjY2Vzc1wiLFxuICAgICAgICAgICAgICAgIGZhaWxlZDogXCJBUEkgRmFpbGVkXCJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH07XG4gICAgICAgICAgZmllbGQuYXBpID0gZ2V0T2JqZWN0RGVlcENvcHkoXG4gICAgICAgICAgICBtZXJnZU9iamVjdHMoZmllbGRBcGlEZWZhdWx0cywgZmllbGRBcGlEZWZhdWx0cylcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGlmIChcbiAgICAgICAgICAhY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQuYXBpLCBcInJlcXVlc3RcIikgJiZcbiAgICAgICAgICAhY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQuYXBpLCBcImVudHJ5cG9pbnRcIilcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgYXBpRW50cnlwb2ludCA9IHtcbiAgICAgICAgICAgIHRyaWdnZXJzOiBbXCJPTl9BUElfQ0FMTFwiXSxcbiAgICAgICAgICAgIHJ1bGVzOiBbXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkOiBcIjFcIixcbiAgICAgICAgICAgICAgICBrZXk6IFwiQVBJX0NBTExcIixcbiAgICAgICAgICAgICAgICBjb25kaXRpb246IFwidHJ1ZVwiLFxuICAgICAgICAgICAgICAgIHByb3BzOiB7XG4gICAgICAgICAgICAgICAgICBmaWVsZEtleTogZmllbGQua2V5LFxuICAgICAgICAgICAgICAgICAgYXBpS2V5OiBmaWVsZC5hcGkuZW5kcG9pbnRzWzBdLmFwaUtleVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH07XG4gICAgICAgICAgZmllbGQuZW50cnlwb2ludCA9IGdldE9iamVjdERlZXBDb3B5KFxuICAgICAgICAgICAgbWVyZ2VPYmplY3RzKGFwaUVudHJ5cG9pbnQsIGZpZWxkLmFwaSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBmb3JtYXRGaWVsZFR5cGVPdHAgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG5cbiAgICAgICAgZmllbGQucHJvcGVydGllcyA9IGdldE9iamVjdERlZXBDb3B5KFxuICAgICAgICAgIG1lcmdlT2JqZWN0cyhcbiAgICAgICAgICAgIGdldE9iamVjdERlZXBDb3B5KEZJRUxEX1BST1BFUlRJRVNbZmllbGQudHlwZV0pLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtYXNrOiBuZXcgQXJyYXkoZmllbGQ/LnByb3BlcnRpZXM/Lm90cExlbmd0aCA/PyA0KVxuICAgICAgICAgICAgICAgIC5maWxsKFwiI1wiKVxuICAgICAgICAgICAgICAgIC5qb2luKFwiIFwiKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZpZWxkLnByb3BlcnRpZXNcbiAgICAgICAgICApXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUFhZGhhYXJOdW1iZXIgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUZpbGUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZUNhcHR1cmUgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlIaWRkZW4oZmllbGQpO1xuICAgICAgICBmaWVsZCA9IHNldEZpZWxkQXNGb3JtRWxlbWVudChmaWVsZCwgdHJ1ZSk7XG4gICAgICAgIGZpZWxkID0gdXBkYXRlRm9ybUZpZWxkUHJvcGVydGllcyhmaWVsZCk7XG5cbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IGZvcm1hdEZpZWxkVHlwZVJlY29yZCA9IChmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleUhpZGRlbihmaWVsZCk7XG4gICAgICAgIGZpZWxkID0gc2V0RmllbGRBc0Zvcm1FbGVtZW50KGZpZWxkLCB0cnVlKTtcbiAgICAgICAgZmllbGQgPSB1cGRhdGVGb3JtRmllbGRQcm9wZXJ0aWVzKGZpZWxkKTtcblxuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9O1xuXG4gICAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkhUTUw6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVIdG1sKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlRJVExFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlVGl0bGUoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuQlVUVE9OOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQnV0dG9uKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlRFWFQ6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVUZXh0KGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlBBU1NXT1JEOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlUGFzc3dvcmQoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuRU1BSUw6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVFbWFpbChmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5URVhUQVJFQTpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVRleHRhcmVhKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkNIRUNLQk9YOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQ2hlY2tib3goZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuTlVNQkVSOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlTnVtYmVyKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlBSRVZJRVdfSU1BR0U6XG4gICAgICAgICAgZmllbGQgPSBzZXRGaWVsZEtleVZhbHVlKGZpZWxkLCBcInR5cGVcIiwgXCJpbWFnZVwiKTtcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZUltYWdlKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLklNQUdFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlSW1hZ2UoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuREFURTpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZURhdGUoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuVElNRTpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVRpbWUoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuUEhPTkU6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVQaG9uZShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SQURJTzpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVJhZGlvKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlNMSURFUjpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVNsaWRlcihmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJzZWFyY2gtdGV4dFwiOlxuICAgICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlWYWx1ZShmaWVsZCwgXCJ0eXBlXCIsIFwic2VsZWN0XCIpO1xuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlU2VsZWN0KGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkRST1BET1dOX1dJVEhfU0VBUkNIOlxuICAgICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlWYWx1ZShmaWVsZCwgXCJ0eXBlXCIsIFwic2VsZWN0XCIpO1xuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlU2VsZWN0KGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLlNFTEVDVDpcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZVNlbGVjdChmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5BUElfQ0FMTDpcbiAgICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwidHlwZVwiLCBcImFwaVwiKTtcbiAgICAgICAgICBmaWVsZCA9IGZvcm1hdEZpZWxkVHlwZUFwaShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5BUEk6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVBcGkoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuT1RQOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlT3RwKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkFBREhBQVJfTlVNQkVSOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQWFkaGFhck51bWJlcihmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5GSUxFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlRmlsZShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5DQVBUVVJFOlxuICAgICAgICAgIGZpZWxkID0gZm9ybWF0RmllbGRUeXBlQ2FwdHVyZShmaWVsZCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SRUNPUkQ6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVSZWNvcmQoZmllbGQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuU1RBUl9SQVRJTkc6XG4gICAgICAgICAgZmllbGQgPSBmb3JtYXRGaWVsZFR5cGVTdGFyUmF0aW5nKGZpZWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZFZhbGlkYXRvcnMgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICBpZiAoZmllbGQuaXNGb3JtRWxlbWVudCkge1xuICAgICAgICBjb25zdCB2YWxpZGF0b3JzID0gY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwidmFsaWRhdG9yc1wiKVxuICAgICAgICAgID8gZmllbGQudmFsaWRhdG9yc1xuICAgICAgICAgIDoge307XG5cbiAgICAgICAgZmllbGQgPSBzZXRNaXNzaW5nRmllbGRLZXlWYWx1ZShmaWVsZCwgXCJ2YWxpZGF0b3JzXCIsIHt9KTtcblxuICAgICAgICBmaWVsZCA9IHNldEZpZWxkS2V5VmFsdWUoZmllbGQsIFwidmFsaWRhdG9yc1wiLCB7XG4gICAgICAgICAgLi4uZmllbGRbXCJ2YWxpZGF0b3JzXCJdLFxuICAgICAgICAgIG1pbjogY2hlY2tPYmplY3RLZXlFeGlzdHModmFsaWRhdG9ycywgXCJtaW5cIilcbiAgICAgICAgICAgID8gaXNOb3RFbXB0eVZhbHVlKHZhbGlkYXRvcnMubWluKVxuICAgICAgICAgICAgICA/IE51bWJlcih2YWxpZGF0b3JzLm1pbilcbiAgICAgICAgICAgICAgOiBudWxsXG4gICAgICAgICAgICA6IGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcIm1pblwiKVxuICAgICAgICAgICAgPyBOdW1iZXIoZmllbGQubWluKVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgIG1heDogY2hlY2tPYmplY3RLZXlFeGlzdHModmFsaWRhdG9ycywgXCJtYXhcIilcbiAgICAgICAgICAgID8gaXNOb3RFbXB0eVZhbHVlKHZhbGlkYXRvcnMubWF4KVxuICAgICAgICAgICAgICA/IE51bWJlcih2YWxpZGF0b3JzLm1heClcbiAgICAgICAgICAgICAgOiBudWxsXG4gICAgICAgICAgICA6IGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcIm1heFwiKVxuICAgICAgICAgICAgPyBOdW1iZXIoZmllbGQubWF4KVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgIHJlcXVpcmVkOiBjaGVja09iamVjdEtleUV4aXN0cyh2YWxpZGF0b3JzLCBcInJlcXVpcmVkXCIpXG4gICAgICAgICAgICA/IEJvb2xlYW4odmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgICAgICAgICAgIDogY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwicmVxdWlyZWRcIilcbiAgICAgICAgICAgID8gQm9vbGVhbihmaWVsZC5yZXF1aXJlZClcbiAgICAgICAgICAgIDogZmFsc2UsXG4gICAgICAgICAgbWluTGVuZ3RoOiBjaGVja09iamVjdEtleUV4aXN0cyh2YWxpZGF0b3JzLCBcIm1pbkxlbmd0aFwiKVxuICAgICAgICAgICAgPyBpc05vdEVtcHR5VmFsdWUodmFsaWRhdG9ycy5taW5MZW5ndGgpXG4gICAgICAgICAgICAgID8gTnVtYmVyKHZhbGlkYXRvcnMubWluTGVuZ3RoKVxuICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgIDogY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwibWluTGVuZ3RoXCIpXG4gICAgICAgICAgICA/IE51bWJlcihmaWVsZC5taW5MZW5ndGgpXG4gICAgICAgICAgICA6IG51bGwsXG4gICAgICAgICAgbWF4TGVuZ3RoOiBjaGVja09iamVjdEtleUV4aXN0cyh2YWxpZGF0b3JzLCBcIm1heExlbmd0aFwiKVxuICAgICAgICAgICAgPyBpc05vdEVtcHR5VmFsdWUodmFsaWRhdG9ycy5tYXhMZW5ndGgpXG4gICAgICAgICAgICAgID8gTnVtYmVyKHZhbGlkYXRvcnMubWF4TGVuZ3RoKVxuICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgIDogY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwibGVuZ3RoXCIpXG4gICAgICAgICAgICA/IE51bWJlcihmaWVsZC5sZW5ndGgpXG4gICAgICAgICAgICA6IGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcIm1heExlbmd0aFwiKVxuICAgICAgICAgICAgPyBOdW1iZXIoZmllbGQubWF4TGVuZ3RoKVxuICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICAgIHBhdHRlcm46IGNoZWNrT2JqZWN0S2V5RXhpc3RzKHZhbGlkYXRvcnMsIFwicGF0dGVyblwiKVxuICAgICAgICAgICAgPyBpc05vdEVtcHR5VmFsdWUodmFsaWRhdG9ycy5wYXR0ZXJuKVxuICAgICAgICAgICAgICA/IHZhbGlkYXRvcnMucGF0dGVyblxuICAgICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgOiBjaGVja09iamVjdEtleUV4aXN0cyhmaWVsZCwgXCJwYXR0ZXJuXCIpXG4gICAgICAgICAgICA/IHsga2V5OiBcIkNVU1RPTVwiLCBwYXR0ZXJuOiBTdHJpbmcoZmllbGQucGF0dGVybikgfVxuICAgICAgICAgICAgOiBjaGVja09iamVjdEtleUV4aXN0cyhmaWVsZCwgXCJyZWdleFwiKVxuICAgICAgICAgICAgPyB7IGtleTogXCJDVVNUT01cIiwgcGF0dGVybjogU3RyaW5nKGZpZWxkLnJlZ2V4KSB9XG4gICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICB9KTtcblxuICAgICAgICBkZWxldGUgZmllbGQubWluO1xuICAgICAgICBkZWxldGUgZmllbGQubWF4O1xuICAgICAgICBkZWxldGUgZmllbGQucmVxdWlyZWQ7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5taW5MZW5ndGg7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5sZW5ndGg7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5tYXhMZW5ndGg7XG4gICAgICAgIGRlbGV0ZSBmaWVsZC5wYXR0ZXJuO1xuICAgICAgICBkZWxldGUgZmllbGQucmVnZXg7XG5cbiAgICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgICAgY2FzZSBFRmllbGRUeXBlLlRFWFQ6XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW47XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXg7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIEVGaWVsZFR5cGUuQ0hFQ0tCT1g6XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW47XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXg7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIEVGaWVsZFR5cGUuUFJFVklFV19JTUFHRTpcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1pbjtcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1heDtcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1pbkxlbmd0aDtcbiAgICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1heExlbmd0aDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRUZpZWxkVHlwZS5GSUxFOlxuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4O1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluTGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4TGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMucGF0dGVybjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRUZpZWxkVHlwZS5DQVBUVVJFOlxuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4O1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluTGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4TGVuZ3RoO1xuICAgICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMucGF0dGVybjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SRUNPUkQ6XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW47XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXg7XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW5MZW5ndGg7XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5tYXhMZW5ndGg7XG4gICAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5wYXR0ZXJuO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzRW1wdHlWYWx1ZShmaWVsZC52YWxpZGF0b3JzPy5taW4pKSB7XG4gICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWluO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5VmFsdWUoZmllbGQudmFsaWRhdG9ycz8ubWF4KSkge1xuICAgICAgICAgIGRlbGV0ZSBmaWVsZC52YWxpZGF0b3JzLm1pbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eVZhbHVlKGZpZWxkLnZhbGlkYXRvcnM/Lm1pbkxlbmd0aCkpIHtcbiAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5taW5MZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHlWYWx1ZShmaWVsZC52YWxpZGF0b3JzPy5tYXhMZW5ndGgpKSB7XG4gICAgICAgICAgZGVsZXRlIGZpZWxkLnZhbGlkYXRvcnMubWF4TGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5VmFsdWUoZmllbGQudmFsaWRhdG9ycz8ucGF0dGVybikpIHtcbiAgICAgICAgICBkZWxldGUgZmllbGQudmFsaWRhdG9ycy5wYXR0ZXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgZmllbGQuZm9jdXMgPSBmYWxzZTtcbiAgICAgICAgZmllbGQuaW52YWxpZCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmllbGQ7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZUZpZWxkRGVmYXVsdFZhbHVlID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgaWYgKGZpZWxkLmlzRm9ybUVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImRlZmF1bHRWYWx1ZVwiKSkge1xuICAgICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgICAgfSBlbHNlIGlmIChjaGVja09iamVjdFBhdGhFeGlzdHMoZmllbGQsIFwiZGVmYXVsdC52YWx1ZS5zb3VyY2VzXCIpKSB7XG4gICAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgICAgICB9IGVsc2UgaWYgKCFjaGVja09iamVjdFBhdGhFeGlzdHMoZmllbGQsIFwiZGVmYXVsdC52YWx1ZS5zb3VyY2VzXCIpKSB7XG4gICAgICAgICAgY29uc3QgZGVmYXVsdFZhbHVlID0ge1xuICAgICAgICAgICAgaXNfZm91bmQ6IGZhbHNlLFxuICAgICAgICAgICAgdmFsdWU6IFwiXCIsXG4gICAgICAgICAgICBzb3VyY2VzOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBrZXk6IFwiT0JKRUNUXCIsXG4gICAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgIG9iamVjdDoge1xuICAgICAgICAgICAgICAgICAgICBrZXk6IFwiRk9STV9EQVRBXCIsXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6IGAkLiR7ZmllbGQua2V5fWBcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHZhbHVlOiBcIlwiLFxuICAgICAgICAgICAgICAgIHZhbGlkYXRpb246IHtcbiAgICAgICAgICAgICAgICAgIGlzX3ZhbGlkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXJzOiBbXCJPTl9JTklUXCJdLFxuICAgICAgICAgICAgICAgICAgcnVsZXM6IFtdLFxuICAgICAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgIGtleTogXCJTRVRfRklFTERfREVGQVVMVF9WQUxVRVwiLFxuICAgICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbjogXCIxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleTogXCJPQkpFQ1RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleTogXCJGT1JNX0RBVEFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aDogYCQuJHtmaWVsZC5rZXl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH07XG5cbiAgICAgICAgICBmaWVsZCA9IHNldFZhbHVlVG9PYmplY3RQYXRoKGZpZWxkLCBcImRlZmF1bHQudmFsdWVcIiwgZGVmYXVsdFZhbHVlKTtcbiAgICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBkZWxldGUgZmllbGRbXCJkZWZhdWx0VmFsXCJdO1xuICAgICAgICBkZWxldGUgZmllbGRbXCJkZWZhdWx0VmFsdWVcIl07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZDtcbiAgICB9O1xuXG4gICAgY29uc3QgdXBkYXRlRmllbGREaXNhYmlsaXR5ID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgZmllbGQgPSBzZXRNaXNzaW5nS2V5VmFsdWUoZmllbGQsIFwiZGlzYWJsZWRcIiwgZmFsc2UpO1xuXG4gICAgICByZXR1cm4gZmllbGQ7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZUZpZWxkTWVzc2FnZXMgPSAoZmllbGQ6IGFueSk6IGFueSA9PiB7XG4gICAgICBpZiAoZmllbGQuaXNGb3JtRWxlbWVudCkge1xuICAgICAgICBmaWVsZCA9IHNldE1pc3NpbmdGaWVsZEtleVZhbHVlKGZpZWxkLCBcIm1lc3NhZ2VzXCIsIFtdKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZFJlc2V0QnV0dG9uID0gKGZpZWxkOiBhbnkpOiBhbnkgPT4ge1xuICAgICAgaWYgKGZpZWxkLmlzRm9ybUVsZW1lbnQpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImFjdGlvblwiKSAmJlxuICAgICAgICAgIGZpZWxkLmFjdGlvbiA9PT0gXCJyZXNldFwiICYmXG4gICAgICAgICAgY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGQsIFwiZmllbGRzXCIpXG4gICAgICAgICkge1xuICAgICAgICAgIGZpZWxkID0gc2V0RmllbGRLZXlWYWx1ZShmaWVsZCwgXCJyZXNldFwiLCB7XG4gICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkc1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZDtcbiAgICB9O1xuXG4gICAgY29uc3Qgc2V0Rm9ybUZpZWxkcyA9IChmb3JtQ29uZmlnOiBhbnksIGZpZWxkczogYW55W10pOiBhbnkgPT4ge1xuICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZvcm1Db25maWcsIFwibXVsdGlGb3JtXCIpKSB7XG4gICAgICAgIGZvcm1Db25maWcubXVsdGlGb3JtW1wiZmllbGRzXCJdID0gZmllbGRzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9ybUNvbmZpZ1tcImZpZWxkc1wiXSA9IGZpZWxkcztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZvcm1Db25maWc7XG4gICAgfTtcblxuICAgIGNvbnN0IHNldEZvcm1GaWVsZEdyb3VwcyA9IChmb3JtQ29uZmlnOiBhbnksIGdyb3VwczogYW55KTogYW55ID0+IHtcbiAgICAgIGZvcm1Db25maWdbXCJmaWVsZEdyb3Vwc1wiXSA9IGdyb3VwcztcblxuICAgICAgcmV0dXJuIGZvcm1Db25maWc7XG4gICAgfTtcblxuICAgIGNvbnN0IHVwZGF0ZUZvcm1GaWVsZEdyb3VwcyA9IChmaWVsZEdyb3VwczogYW55LCBmaWVsZDogYW55KTogYW55ID0+IHtcbiAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyhmaWVsZCwgXCJncm91cEtleVwiKSkge1xuICAgICAgICBpZiAoY2hlY2tPYmplY3RLZXlFeGlzdHMoZmllbGRHcm91cHMsIGZpZWxkLmdyb3VwS2V5KSkge1xuICAgICAgICAgIGZpZWxkR3JvdXBzW2ZpZWxkLmdyb3VwS2V5XS5wdXNoKGZpZWxkLmtleSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZmllbGRHcm91cHNbZmllbGQuZ3JvdXBLZXldID0gW2ZpZWxkLmtleV07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkR3JvdXBzO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZExhbmd1YWdlID0gKGZpZWxkOiBURmllbGQsIGxhbmd1YWdlOiBzdHJpbmcpOiBhbnkgPT4ge1xuICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKGZpZWxkLCBcImxhYmVsXCIpKSB7XG4gICAgICAgIGZpZWxkLmxhYmVsID0gdXBkYXRlTGFuZ3VhZ2UoZmllbGQubGFiZWwsIGxhbmd1YWdlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGNoZWNrT2JqZWN0UGF0aEV4aXN0cyhmaWVsZCwgXCJwcm9wZXJ0aWVzLnBsYWNlaG9sZGVyXCIpKSB7XG4gICAgICAgIGZpZWxkLnByb3BlcnRpZXNbXCJwbGFjZWhvbGRlclwiXSA9IHVwZGF0ZUxhbmd1YWdlKFxuICAgICAgICAgIGZpZWxkLnByb3BlcnRpZXNbXCJwbGFjZWhvbGRlclwiXSxcbiAgICAgICAgICBsYW5ndWFnZVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpZiAoY2hlY2tPYmplY3RQYXRoRXhpc3RzKGZpZWxkLCBcInByb3BlcnRpZXMubGFiZWxcIikpIHtcbiAgICAgICAgZmllbGQucHJvcGVydGllc1tcImxhYmVsXCJdID0gdXBkYXRlTGFuZ3VhZ2UoXG4gICAgICAgICAgZmllbGQucHJvcGVydGllc1tcImxhYmVsXCJdLFxuICAgICAgICAgIGxhbmd1YWdlXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHVwZGF0ZUFwaVN0YXR1cyA9IChmaWVsZEFwaVN0YXR1cykgPT4ge1xuICAgICAgICBmb3IgKGNvbnN0IHN0YXR1cyBpbiBmaWVsZEFwaVN0YXR1cykge1xuICAgICAgICAgIGZpZWxkQXBpU3RhdHVzW3N0YXR1c10gPSB1cGRhdGVMYW5ndWFnZShcbiAgICAgICAgICAgIGZpZWxkQXBpU3RhdHVzW3N0YXR1c10sXG4gICAgICAgICAgICBsYW5ndWFnZVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpZWxkQXBpU3RhdHVzO1xuICAgICAgfTtcblxuICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5IVE1MOlxuICAgICAgICAgIGZpZWxkW1wiaHRtbFwiXSA9IHVwZGF0ZUxhbmd1YWdlKGZpZWxkW1wiaHRtbFwiXSwgbGFuZ3VhZ2UpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuQ0FQVFVSRTpcbiAgICAgICAgICBmaWVsZC5wcm9wZXJ0aWVzW1wiY2FtZXJhQ29uZmlnXCJdLmhlYWRlci50aXRsZSA9IHVwZGF0ZUxhbmd1YWdlKFxuICAgICAgICAgICAgZmllbGQucHJvcGVydGllc1tcImNhbWVyYUNvbmZpZ1wiXS5oZWFkZXIudGl0bGUsXG4gICAgICAgICAgICBsYW5ndWFnZVxuICAgICAgICAgICk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5SRUNPUkQ6XG4gICAgICAgICAgZmllbGQucHJvcGVydGllc1tcImNhbWVyYUNvbmZpZ1wiXS5oZWFkZXIudGl0bGUgPSB1cGRhdGVMYW5ndWFnZShcbiAgICAgICAgICAgIGZpZWxkLnByb3BlcnRpZXNbXCJjYW1lcmFDb25maWdcIl0uaGVhZGVyLnRpdGxlLFxuICAgICAgICAgICAgbGFuZ3VhZ2VcbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuU0VMRUNUOlxuICAgICAgICAgIGZpZWxkLm9wdGlvbnMgPSBmaWVsZC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXNPYmplY3Qob3B0aW9uKSkge1xuICAgICAgICAgICAgICBpZiAoY2hlY2tPYmplY3RLZXlFeGlzdHMob3B0aW9uLCBcInRpdGxlXCIpKSB7XG4gICAgICAgICAgICAgICAgb3B0aW9uLnRpdGxlID0gdXBkYXRlTGFuZ3VhZ2Uob3B0aW9uLnRpdGxlLCBsYW5ndWFnZSk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgb3B0aW9uID0gdXBkYXRlTGFuZ3VhZ2Uob3B0aW9uLCBsYW5ndWFnZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBvcHRpb247XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgRUZpZWxkVHlwZS5EUk9QRE9XTl9XSVRIX1NFQVJDSDpcbiAgICAgICAgICBmaWVsZC5vcHRpb25zID0gZmllbGQub3B0aW9ucy5tYXAoKG9wdGlvbikgPT4ge1xuICAgICAgICAgICAgaWYgKGlzT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgICAgICAgICAgaWYgKGNoZWNrT2JqZWN0S2V5RXhpc3RzKG9wdGlvbiwgXCJ0aXRsZVwiKSkge1xuICAgICAgICAgICAgICAgIG9wdGlvbi50aXRsZSA9IHVwZGF0ZUxhbmd1YWdlKG9wdGlvbi50aXRsZSwgbGFuZ3VhZ2UpO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9wdGlvbiA9IHVwZGF0ZUxhbmd1YWdlKG9wdGlvbiwgbGFuZ3VhZ2UpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gb3B0aW9uO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIEVGaWVsZFR5cGUuUkFESU86XG4gICAgICAgICAgZmllbGQub3B0aW9ucyA9IGZpZWxkLm9wdGlvbnMubWFwKChvcHRpb24pID0+IHtcbiAgICAgICAgICAgIGlmIChpc09iamVjdChvcHRpb24pKSB7XG4gICAgICAgICAgICAgIGlmIChjaGVja09iamVjdEtleUV4aXN0cyhvcHRpb24sIFwibGFiZWxcIikpIHtcbiAgICAgICAgICAgICAgICBvcHRpb24ubGFiZWwgPSB1cGRhdGVMYW5ndWFnZShvcHRpb24ubGFiZWwsIGxhbmd1YWdlKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvcHRpb24gPSB1cGRhdGVMYW5ndWFnZShvcHRpb24sIGxhbmd1YWdlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBFRmllbGRUeXBlLkFQSV9DQUxMOlxuICAgICAgICAgIGZpZWxkW1wiYXBpXCJdW1wic3RhdHVzXCJdW1wibGFiZWxzXCJdID0gdXBkYXRlQXBpU3RhdHVzKFxuICAgICAgICAgICAgZmllbGRbXCJhcGlcIl1bXCJzdGF0dXNcIl1bXCJsYWJlbHNcIl1cbiAgICAgICAgICApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmllbGQ7XG4gICAgfTtcblxuICAgIGxldCBmaWVsZHM6IGFueVtdID0gZ2V0Rm9ybUZpZWxkcyhmb3JtQ29uZmlnKTtcblxuICAgIGxldCBmaWVsZEdyb3VwczogYW55ID0ge307XG5cbiAgICBmb3IgKGxldCBmaWVsZCBvZiBmaWVsZHMpIHtcbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGRMYW5ndWFnZShmaWVsZCwgZ2V0TGFuZ3VhZ2UoKSk7XG5cbiAgICAgIGZpZWxkID0gZm9ybWF0T25GaWVsZFR5cGUoZmllbGQpO1xuXG4gICAgICBmaWVsZCA9IHVwZGF0ZUZpZWxkRGlzYWJpbGl0eShmaWVsZCk7XG5cbiAgICAgIGZpZWxkR3JvdXBzID0gdXBkYXRlRm9ybUZpZWxkR3JvdXBzKGZpZWxkR3JvdXBzLCBmaWVsZCk7XG5cbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGREZWZhdWx0VmFsdWUoZmllbGQpO1xuXG4gICAgICBmaWVsZCA9IHVwZGF0ZUZpZWxkVmFsaWRhdG9ycyhmaWVsZCk7XG5cbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGRSZXNldEJ1dHRvbihmaWVsZCk7XG5cbiAgICAgIGZpZWxkID0gdXBkYXRlRmllbGRNZXNzYWdlcyhmaWVsZCk7XG4gICAgfVxuXG4gICAgZm9ybUNvbmZpZyA9IHNldEZvcm1GaWVsZEdyb3Vwcyhmb3JtQ29uZmlnLCBmaWVsZEdyb3Vwcyk7XG5cbiAgICBmb3JtQ29uZmlnID0gc2V0Rm9ybUZpZWxkcyhmb3JtQ29uZmlnLCBmaWVsZHMpO1xuXG4gICAgcmV0dXJuIGZvcm1Db25maWc7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -8,6 +8,7 @@ export var EFieldType;
|
|
|
8
8
|
EFieldType["CHECKBOX"] = "checkbox";
|
|
9
9
|
EFieldType["NUMBER"] = "number";
|
|
10
10
|
EFieldType["DATE"] = "date";
|
|
11
|
+
EFieldType["TIME"] = "time";
|
|
11
12
|
EFieldType["IMAGE"] = "image";
|
|
12
13
|
EFieldType["PREVIEW_IMAGE"] = "preview-image";
|
|
13
14
|
EFieldType["PHONE"] = "phone";
|
|
@@ -26,4 +27,4 @@ export var EFieldType;
|
|
|
26
27
|
EFieldType["RECORD"] = "record";
|
|
27
28
|
EFieldType["STAR_RATING"] = "star-rating";
|
|
28
29
|
})(EFieldType || (EFieldType = {}));
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmZpZWxkcy5kZWZpbml0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWZvcm1zL3NyYy9saWIvcmVuZGVyZXIvZm9ybS12aWV3L2RlZmluaXRpb25zL2Zvcm0tdmlldy5maWVsZHMuZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQU4sSUFBWSxVQTBCWDtBQTFCRCxXQUFZLFVBQVU7SUFDcEIsMkJBQWEsQ0FBQTtJQUNiLDZCQUFlLENBQUE7SUFDZiwyQkFBYSxDQUFBO0lBQ2IsK0JBQWlCLENBQUE7SUFDakIsbUNBQXFCLENBQUE7SUFDckIsbUNBQXFCLENBQUE7SUFDckIsK0JBQWlCLENBQUE7SUFDakIsMkJBQWEsQ0FBQTtJQUNiLDZCQUFlLENBQUE7SUFDZiw2Q0FBK0IsQ0FBQTtJQUMvQiw2QkFBZSxDQUFBO0lBQ2YsNkJBQWUsQ0FBQTtJQUNmLCtCQUFpQixDQUFBO0lBQ2pCLDJEQUE2QyxDQUFBO0lBQzdDLG1DQUFxQixDQUFBO0lBQ3JCLHlCQUFXLENBQUE7SUFDWCx5QkFBVyxDQUFBO0lBQ1gsK0NBQWlDLENBQUE7SUFDakMsK0JBQWlCLENBQUE7SUFDakIsMkJBQWEsQ0FBQTtJQUNiLG1DQUFxQixDQUFBO0lBQ3JCLDZCQUFlLENBQUE7SUFDZixpQ0FBbUIsQ0FBQTtJQUNuQiwrQkFBaUIsQ0FBQTtJQUNqQix5Q0FBMkIsQ0FBQTtBQUM3QixDQUFDLEVBMUJXLFVBQVUsS0FBVixVQUFVLFFBMEJyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRBY3Rpb24sIFRSdWxlLCBUU291cmNlLCBUVmFsaWRhdGlvbiB9IGZyb20gXCJrd2lraWQtdG9vbGtpdFwiO1xuaW1wb3J0IHsgVEFwaSB9IGZyb20gXCIuL2Zvcm0tdmlldy5hcGlzLmRlZmluaXRpb25cIjtcbmltcG9ydCB7IFRNZXNzYWdlIH0gZnJvbSBcIi4vZm9ybS12aWV3LmNvbW1vbnMuZGVmaW5pdGlvblwiO1xuaW1wb3J0IHsgVFZhbGlkYXRvciB9IGZyb20gXCIuL2Zvcm0tdmlldy5mb3JtLXZhbGlkYXRpb25zLmRlZmluaXRpb25cIjtcbmltcG9ydCB7IFRUcmlnZ2VyIH0gZnJvbSBcIi4vZm9ybS12aWV3LnRyaWdnZXJzLmRlZmluaXRpb25cIjtcblxuZXhwb3J0IGVudW0gRUZpZWxkVHlwZSB7XG4gIEhUTUwgPSBcImh0bWxcIixcbiAgVElUTEUgPSBcInRpdGxlXCIsXG4gIFRFWFQgPSBcInRleHRcIixcbiAgQlVUVE9OID0gXCJidXR0b25cIixcbiAgVEVYVEFSRUEgPSBcInRleHRhcmVhXCIsXG4gIENIRUNLQk9YID0gXCJjaGVja2JveFwiLFxuICBOVU1CRVIgPSBcIm51bWJlclwiLFxuICBEQVRFID0gXCJkYXRlXCIsXG4gIElNQUdFID0gXCJpbWFnZVwiLFxuICBQUkVWSUVXX0lNQUdFID0gXCJwcmV2aWV3LWltYWdlXCIsXG4gIFBIT05FID0gXCJwaG9uZVwiLFxuICBSQURJTyA9IFwicmFkaW9cIixcbiAgU0VMRUNUID0gXCJzZWxlY3RcIixcbiAgRFJPUERPV05fV0lUSF9TRUFSQ0ggPSBcImRyb3Bkb3duLXdpdGgtc2VhcmNoXCIsXG4gIEFQSV9DQUxMID0gXCJhcGktY2FsbFwiLFxuICBBUEkgPSBcImFwaVwiLFxuICBPVFAgPSBcIm90cFwiLFxuICBBQURIQUFSX05VTUJFUiA9IFwiYWFkaGFhci1udW1iZXJcIixcbiAgU0xJREVSID0gXCJzbGlkZXJcIixcbiAgRklMRSA9IFwiZmlsZVwiLFxuICBQQVNTV09SRCA9IFwicGFzc3dvcmRcIixcbiAgRU1BSUwgPSBcImVtYWlsXCIsXG4gIENBUFRVUkUgPSBcImNhcHR1cmVcIixcbiAgUkVDT1JEID0gXCJyZWNvcmRcIixcbiAgU1RBUl9SQVRJTkcgPSBcInN0YXItcmF0aW5nXCJcbn1cblxuZXhwb3J0IHR5cGUgVEZpZWxkVHlwZSA9XG4gIHwgRUZpZWxkVHlwZS5IVE1MXG4gIHwgRUZpZWxkVHlwZS5USVRMRVxuICB8IEVGaWVsZFR5cGUuQlVUVE9OXG4gIHwgRUZpZWxkVHlwZS5URVhUXG4gIHwgRUZpZWxkVHlwZS5URVhUQVJFQVxuICB8IEVGaWVsZFR5cGUuQ0hFQ0tCT1hcbiAgfCBFRmllbGRUeXBlLk5VTUJFUlxuICB8IEVGaWVsZFR5cGUuREFURVxuICB8IEVGaWVsZFR5cGUuUFJFVklFV19JTUFHRVxuICB8IEVGaWVsZFR5cGUuUEhPTkVcbiAgfCBFRmllbGRUeXBlLlJBRElPXG4gIHwgRUZpZWxkVHlwZS5EUk9QRE9XTl9XSVRIX1NFQVJDSFxuICB8IEVGaWVsZFR5cGUuU0VMRUNUXG4gIHwgRUZpZWxkVHlwZS5BUElcbiAgfCBFRmllbGRUeXBlLkFQSV9DQUxMXG4gIHwgRUZpZWxkVHlwZS5PVFBcbiAgfCBFRmllbGRUeXBlLkFBREhBQVJfTlVNQkVSXG4gIHwgRUZpZWxkVHlwZS5TTElERVJcbiAgfCBFRmllbGRUeXBlLkZJTEVcbiAgfCBFRmllbGRUeXBlLlBBU1NXT1JEXG4gIHwgRUZpZWxkVHlwZS5FTUFJTFxuICB8IEVGaWVsZFR5cGUuQ0FQVFVSRVxuICB8IEVGaWVsZFR5cGUuUkVDT1JEXG4gIHwgRUZpZWxkVHlwZS5TVEFSX1JBVElORztcblxuZXhwb3J0IHR5cGUgVEZpZWxkU2VsZWN0T3B0aW9uID0ge1xuICB0aXRsZTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUmFkaW9PcHRpb24gPSB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGRpc2FibGVkOiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkRGVmYXVsdFZhbHVlID0ge1xuICBpc19mb3VuZDogYm9vbGVhbjtcbiAgdmFsdWU6IGFueTtcbiAgc291cmNlczogQXJyYXk8VFNvdXJjZT47XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGREZWZhdWx0RHJvcGRvd25PcHRpb25zID0ge1xuICB0cmlnZ2VyczogVFRyaWdnZXJbXTtcbiAgcnVsZXM6IFRSdWxlW107XG4gIGFjdGlvbnM6IFRBY3Rpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZERlZmF1bHRBcGlWYWx1ZSA9IHtcbiAgdHJpZ2dlcnM6IFRUcmlnZ2VyW107XG4gIHJ1bGVzOiBUUnVsZVtdO1xuICBhY3Rpb25zOiBUQWN0aW9uW107XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGREZWZhdWx0ID0ge1xuICB2YWx1ZTogVEZpZWxkRGVmYXVsdFZhbHVlO1xuICBvcHRpb25zOiBURmllbGREZWZhdWx0RHJvcGRvd25PcHRpb25zO1xuICBhcGk6IFRGaWVsZERlZmF1bHRBcGlWYWx1ZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFByb3BlcnRpZXMgPSB7XG4gIC8vIGRlZmluZSB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSBjb21tb24gdG8gYWxsIGZpZWxkc1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkVGV4dFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBjYXNlOiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRFbWFpbFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBjYXNlOiBzdHJpbmc7XG4gIGRvbWFpbnM6IEFycmF5PHN0cmluZz47XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRQYXNzd29yZFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBoaW50Q29udGVudDogc3RyaW5nO1xuICByZWFkT25seTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkVGV4dGFyZWFQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgcmVhZE9ubHk6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZENoZWNrYm94UHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIGNvbnRlbnRBbGlnbjogc3RyaW5nO1xuICBzaXplOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGROdW1iZXJQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgbWluOiBudW1iZXI7XG4gIG1heDogbnVtYmVyO1xuICBwcmVmaXg6IG51bWJlcjtcbiAgcG9zdGZpeDogbnVtYmVyO1xuICBwcmVjaXNpb246IG51bWJlcjtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgZGVjaW1hbDogc3RyaW5nO1xuICByZWFkT25seTogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZERhdGVQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgbWluOiB7XG4gICAgeWVhcjogbnVtYmVyO1xuICAgIG1vbnRoOiBudW1iZXI7XG4gICAgZGF5OiBudW1iZXI7XG4gIH07XG4gIG1heDoge1xuICAgIHllYXI6IG51bWJlcjtcbiAgICBtb250aDogbnVtYmVyO1xuICAgIGRheTogbnVtYmVyO1xuICB9O1xuICByZWFkT25seTogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFBob25lUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIGNvdW50cnlDb2RlOiBzdHJpbmc7XG4gIHBob25lTWFza0FmdGVyQ291bnRyeUNvZGU6IHN0cmluZztcbiAgcmVtb3ZlQ291bnRyeUNvZGVGcm9tVmFsdWU6IGJvb2xlYW47XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUHJldmlld0ltYWdlUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIGFsdFRleHQ6IHN0cmluZztcbiAgaHRtbDoge1xuICAgIGJlZm9yZTogc3RyaW5nO1xuICAgIGFmdGVyOiBzdHJpbmc7XG4gIH07XG4gIGltYWdlVHlwZTogc3RyaW5nO1xuICBsb2FkaW5nVHlwZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkU2xpZGVyUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIG1pbjogbnVtYmVyO1xuICBtYXg6IG51bWJlcjtcbiAgc3RlcDogbnVtYmVyO1xuICBxdWFudHVtOiBudW1iZXI7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUmFkaW9Qcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgc2l6ZTogc3RyaW5nO1xuICBvcmllbnRhdGlvbjogc3RyaW5nO1xuICByZWFkT25seTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkU2VsZWN0UHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkQXBpQ2FsbFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge307XG5cbmV4cG9ydCB0eXBlIFRGaWVsZE90cFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBtYXNrOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRBYWRoYWFyTnVtYmVyUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIG1hc2s6IHN0cmluZztcbiAgcmVhZE9ubHk6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZENhcHR1cmVQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgY29udGFpbmVyU3R5bGVzOiBzdHJpbmc7XG4gIGJ1dHRvblRleHQ6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICBzaG93TWVkaWFGaWxlczogYm9vbGVhbjtcbiAgdXBsb2FkRmlsZVRvU2VydmVyOiBib29sZWFuO1xuICBpc0Nyb3BwZWRJbWFnZTogYm9vbGVhbjtcbiAgaXNNYXNrZWRJbWFnZTogYm9vbGVhbjtcbiAgd2F0ZXJtYXJrRGF0YVNvdXJjZXM6IFRTb3VyY2VbXTtcbiAgY2FtZXJhQ29uZmlnOiB7XG4gICAgaGVhZGVyOiB7XG4gICAgICB0aXRsZTogc3RyaW5nO1xuICAgICAgaXNCYWNrOiBib29sZWFuO1xuICAgICAgaXNFeHBhbmQ6IGJvb2xlYW47XG4gICAgICBpc0Nsb3NlOiBib29sZWFuO1xuICAgIH07XG4gICAgZm9vdGVyOiB7XG4gICAgICBpc1VwbG9hZDogYm9vbGVhbjtcbiAgICAgIGlzRmxpcDogYm9vbGVhbjtcbiAgICAgIGlzU3dpdGNoOiBib29sZWFuO1xuICAgIH07XG4gICAgb3RoZXJzOiB7XG4gICAgICBpc1dhdGVybWFyazogYm9vbGVhbjtcbiAgICAgIGlzV2F0ZXJtYXJrRm9ySW1hZ2VVcGxvYWQ6IGJvb2xlYW47XG4gICAgICBpc0Zyb250Q2FtZXJhOiBib29sZWFuO1xuICAgICAgZmxpcEhvcml6b250YWw6IGJvb2xlYW47XG4gICAgICBtYXNrOiB7XG4gICAgICAgIHNoYXBlOiBzdHJpbmc7XG4gICAgICB9O1xuICAgICAgcHJldmlldzoge1xuICAgICAgICBzaG93OiBib29sZWFuO1xuICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICBpc0JhY2s6IGJvb2xlYW47XG4gICAgICAgICAgaXNDbG9zZTogYm9vbGVhbjtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFJlY29yZFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBjb250YWluZXJTdHlsZXM6IHN0cmluZztcbiAgYnV0dG9uVGV4dDogc3RyaW5nO1xuICBpY29uOiBzdHJpbmc7XG4gIHNob3dNZWRpYUZpbGVzOiBib29sZWFuO1xuICB1cGxvYWRGaWxlVG9TZXJ2ZXI6IGJvb2xlYW47XG4gIGNhbWVyYUNvbmZpZzoge1xuICAgIGhlYWRlcjoge1xuICAgICAgdGl0bGU6IHN0cmluZztcbiAgICAgIGlzQmFjazogYm9vbGVhbjtcbiAgICAgIGlzRXhwYW5kOiBib29sZWFuO1xuICAgICAgaXNDbG9zZTogYm9vbGVhbjtcbiAgICB9O1xuICAgIGZvb3Rlcjoge1xuICAgICAgaXNVcGxvYWQ6IGJvb2xlYW47XG4gICAgICBpc0ZsaXA6IGJvb2xlYW47XG4gICAgICBpc1N3aXRjaDogYm9vbGVhbjtcbiAgICB9O1xuICAgIG90aGVyczoge1xuICAgICAgaXNGcm9udENhbWVyYTogYm9vbGVhbjtcbiAgICAgIGZsaXBIb3Jpem9udGFsOiBib29sZWFuO1xuICAgICAgbWluUmVjb3JkaW5nVGltZUluU2Vjb25kczogbnVtYmVyO1xuICAgICAgbWF4UmVjb3JkaW5nVGltZUluU2Vjb25kczogbnVtYmVyO1xuICAgICAgcHJldmlldzoge1xuICAgICAgICBzaG93OiBib29sZWFuO1xuICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICBpc0JhY2s6IGJvb2xlYW47XG4gICAgICAgICAgaXNDbG9zZTogYm9vbGVhbjtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFN0YXJSYXRpbmdQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgY29sb3I6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICBpY29uTWFya2VkOiBzdHJpbmc7XG4gIG1pbjogbnVtYmVyO1xuICBtYXg6IG51bWJlcjtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgc2l6ZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkID0ge1xuICBsYWJlbDogc3RyaW5nO1xuICB0eXBlOiBURmllbGRUeXBlO1xuICBrZXk6IHN0cmluZztcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIG1lc3NhZ2VzOiBBcnJheTxUTWVzc2FnZT47XG4gIGRlZmF1bHQ6IFRGaWVsZERlZmF1bHQ7XG4gIHZhbGlkYXRvcnM6IFRWYWxpZGF0b3I7XG4gIHZhbGlkYXRpb246IFRWYWxpZGF0aW9uO1xuICBhcGk/OiBUQXBpO1xuICBwcm9wZXJ0aWVzOiBURmllbGRQcm9wZXJ0aWVzO1xuICBvcHRpb25zPzogQXJyYXk8YW55Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFRpdGxlID0ge1xuICB0eXBlOiBURmllbGRUeXBlO1xuICBsYWJlbDogc3RyaW5nO1xuICBrZXk6IHN0cmluZztcbiAgcmVzZXQ/OiB7XG4gICAgZmllbGRzOiBBcnJheTx7XG4gICAgICBmaWVsZEtleTogc3RyaW5nO1xuICAgICAgYWN0aW9uczogQXJyYXk8VEFjdGlvbj47XG4gICAgfT47XG4gIH07XG4gIHByb3BlcnRpZXM/OiB7XG4gICAgYnlwYXNzUmVzZXRDb25maXJtYXRpb24/OiBib29sZWFuO1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkVGV4dCA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkVGV4dFByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRUZXh0QXJlYSA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkVGV4dGFyZWFQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkQ2hlY2tib3ggPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZENoZWNrYm94UHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZE51bWJlciA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkTnVtYmVyUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZERhdGUgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZERhdGVQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUGhvbmUgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZFBob25lUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFJhZGlvID0gVEZpZWxkICYge1xuICBvcHRpb25zOiBBcnJheTxURmllbGRSYWRpb09wdGlvbj47XG4gIHByb3BlcnRpZXM6IFRGaWVsZFJhZGlvUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZEVtYWlsID0gVEZpZWxkICYge1xuICBwcm9wZXJ0aWVzOiBURmllbGRFbWFpbFByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRTZWxlY3QgPSBURmllbGQgJiB7XG4gIG9wdGlvbnM6IEFycmF5PFRGaWVsZFNlbGVjdE9wdGlvbj47XG4gIHByb3BlcnRpZXM6IFRGaWVsZFNlbGVjdFByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRBcGlDYWxsID0gVEZpZWxkICYge1xuICBhcGk6IFRBcGk7XG4gIHByb3BlcnRpZXM6IFRGaWVsZEFwaUNhbGxQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkT3RwID0gVEZpZWxkICYge1xuICBwcm9wZXJ0aWVzOiBURmllbGRPdHBQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkQWFkaGFhck51bWJlciA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkQWFkaGFhck51bWJlclByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRQcmV2aWV3SW1hZ2UgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZFByZXZpZXdJbWFnZVByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRDYXB0dXJlID0gVEZpZWxkICYge1xuICBwcm9wZXJ0aWVzOiBURmllbGRDYXB0dXJlUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFN0YXJSYXRpbmcgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZFN0YXJSYXRpbmdQcm9wZXJ0aWVzO1xufTtcbiJdfQ==
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS12aWV3LmZpZWxkcy5kZWZpbml0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWZvcm1zL3NyYy9saWIvcmVuZGVyZXIvZm9ybS12aWV3L2RlZmluaXRpb25zL2Zvcm0tdmlldy5maWVsZHMuZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQU4sSUFBWSxVQTJCWDtBQTNCRCxXQUFZLFVBQVU7SUFDcEIsMkJBQWEsQ0FBQTtJQUNiLDZCQUFlLENBQUE7SUFDZiwyQkFBYSxDQUFBO0lBQ2IsK0JBQWlCLENBQUE7SUFDakIsbUNBQXFCLENBQUE7SUFDckIsbUNBQXFCLENBQUE7SUFDckIsK0JBQWlCLENBQUE7SUFDakIsMkJBQWEsQ0FBQTtJQUNiLDJCQUFhLENBQUE7SUFDYiw2QkFBZSxDQUFBO0lBQ2YsNkNBQStCLENBQUE7SUFDL0IsNkJBQWUsQ0FBQTtJQUNmLDZCQUFlLENBQUE7SUFDZiwrQkFBaUIsQ0FBQTtJQUNqQiwyREFBNkMsQ0FBQTtJQUM3QyxtQ0FBcUIsQ0FBQTtJQUNyQix5QkFBVyxDQUFBO0lBQ1gseUJBQVcsQ0FBQTtJQUNYLCtDQUFpQyxDQUFBO0lBQ2pDLCtCQUFpQixDQUFBO0lBQ2pCLDJCQUFhLENBQUE7SUFDYixtQ0FBcUIsQ0FBQTtJQUNyQiw2QkFBZSxDQUFBO0lBQ2YsaUNBQW1CLENBQUE7SUFDbkIsK0JBQWlCLENBQUE7SUFDakIseUNBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQTNCVyxVQUFVLEtBQVYsVUFBVSxRQTJCckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUQWN0aW9uLCBUUnVsZSwgVFNvdXJjZSwgVFZhbGlkYXRpb24gfSBmcm9tIFwia3dpa2lkLXRvb2xraXRcIjtcbmltcG9ydCB7IFRBcGkgfSBmcm9tIFwiLi9mb3JtLXZpZXcuYXBpcy5kZWZpbml0aW9uXCI7XG5pbXBvcnQgeyBUTWVzc2FnZSB9IGZyb20gXCIuL2Zvcm0tdmlldy5jb21tb25zLmRlZmluaXRpb25cIjtcbmltcG9ydCB7IFRWYWxpZGF0b3IgfSBmcm9tIFwiLi9mb3JtLXZpZXcuZm9ybS12YWxpZGF0aW9ucy5kZWZpbml0aW9uXCI7XG5pbXBvcnQgeyBUVHJpZ2dlciB9IGZyb20gXCIuL2Zvcm0tdmlldy50cmlnZ2Vycy5kZWZpbml0aW9uXCI7XG5cbmV4cG9ydCBlbnVtIEVGaWVsZFR5cGUge1xuICBIVE1MID0gXCJodG1sXCIsXG4gIFRJVExFID0gXCJ0aXRsZVwiLFxuICBURVhUID0gXCJ0ZXh0XCIsXG4gIEJVVFRPTiA9IFwiYnV0dG9uXCIsXG4gIFRFWFRBUkVBID0gXCJ0ZXh0YXJlYVwiLFxuICBDSEVDS0JPWCA9IFwiY2hlY2tib3hcIixcbiAgTlVNQkVSID0gXCJudW1iZXJcIixcbiAgREFURSA9IFwiZGF0ZVwiLFxuICBUSU1FID0gXCJ0aW1lXCIsXG4gIElNQUdFID0gXCJpbWFnZVwiLFxuICBQUkVWSUVXX0lNQUdFID0gXCJwcmV2aWV3LWltYWdlXCIsXG4gIFBIT05FID0gXCJwaG9uZVwiLFxuICBSQURJTyA9IFwicmFkaW9cIixcbiAgU0VMRUNUID0gXCJzZWxlY3RcIixcbiAgRFJPUERPV05fV0lUSF9TRUFSQ0ggPSBcImRyb3Bkb3duLXdpdGgtc2VhcmNoXCIsXG4gIEFQSV9DQUxMID0gXCJhcGktY2FsbFwiLFxuICBBUEkgPSBcImFwaVwiLFxuICBPVFAgPSBcIm90cFwiLFxuICBBQURIQUFSX05VTUJFUiA9IFwiYWFkaGFhci1udW1iZXJcIixcbiAgU0xJREVSID0gXCJzbGlkZXJcIixcbiAgRklMRSA9IFwiZmlsZVwiLFxuICBQQVNTV09SRCA9IFwicGFzc3dvcmRcIixcbiAgRU1BSUwgPSBcImVtYWlsXCIsXG4gIENBUFRVUkUgPSBcImNhcHR1cmVcIixcbiAgUkVDT1JEID0gXCJyZWNvcmRcIixcbiAgU1RBUl9SQVRJTkcgPSBcInN0YXItcmF0aW5nXCJcbn1cblxuZXhwb3J0IHR5cGUgVEZpZWxkVHlwZSA9XG4gIHwgRUZpZWxkVHlwZS5IVE1MXG4gIHwgRUZpZWxkVHlwZS5USVRMRVxuICB8IEVGaWVsZFR5cGUuQlVUVE9OXG4gIHwgRUZpZWxkVHlwZS5URVhUXG4gIHwgRUZpZWxkVHlwZS5URVhUQVJFQVxuICB8IEVGaWVsZFR5cGUuQ0hFQ0tCT1hcbiAgfCBFRmllbGRUeXBlLk5VTUJFUlxuICB8IEVGaWVsZFR5cGUuREFURVxuICB8IEVGaWVsZFR5cGUuVElNRVxuICB8IEVGaWVsZFR5cGUuUFJFVklFV19JTUFHRVxuICB8IEVGaWVsZFR5cGUuUEhPTkVcbiAgfCBFRmllbGRUeXBlLlJBRElPXG4gIHwgRUZpZWxkVHlwZS5EUk9QRE9XTl9XSVRIX1NFQVJDSFxuICB8IEVGaWVsZFR5cGUuU0VMRUNUXG4gIHwgRUZpZWxkVHlwZS5BUElcbiAgfCBFRmllbGRUeXBlLkFQSV9DQUxMXG4gIHwgRUZpZWxkVHlwZS5PVFBcbiAgfCBFRmllbGRUeXBlLkFBREhBQVJfTlVNQkVSXG4gIHwgRUZpZWxkVHlwZS5TTElERVJcbiAgfCBFRmllbGRUeXBlLkZJTEVcbiAgfCBFRmllbGRUeXBlLlBBU1NXT1JEXG4gIHwgRUZpZWxkVHlwZS5FTUFJTFxuICB8IEVGaWVsZFR5cGUuQ0FQVFVSRVxuICB8IEVGaWVsZFR5cGUuUkVDT1JEXG4gIHwgRUZpZWxkVHlwZS5TVEFSX1JBVElORztcblxuZXhwb3J0IHR5cGUgVEZpZWxkU2VsZWN0T3B0aW9uID0ge1xuICB0aXRsZTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUmFkaW9PcHRpb24gPSB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGRpc2FibGVkOiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkRGVmYXVsdFZhbHVlID0ge1xuICBpc19mb3VuZDogYm9vbGVhbjtcbiAgdmFsdWU6IGFueTtcbiAgc291cmNlczogQXJyYXk8VFNvdXJjZT47XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGREZWZhdWx0RHJvcGRvd25PcHRpb25zID0ge1xuICB0cmlnZ2VyczogVFRyaWdnZXJbXTtcbiAgcnVsZXM6IFRSdWxlW107XG4gIGFjdGlvbnM6IFRBY3Rpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZERlZmF1bHRBcGlWYWx1ZSA9IHtcbiAgdHJpZ2dlcnM6IFRUcmlnZ2VyW107XG4gIHJ1bGVzOiBUUnVsZVtdO1xuICBhY3Rpb25zOiBUQWN0aW9uW107XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGREZWZhdWx0ID0ge1xuICB2YWx1ZTogVEZpZWxkRGVmYXVsdFZhbHVlO1xuICBvcHRpb25zOiBURmllbGREZWZhdWx0RHJvcGRvd25PcHRpb25zO1xuICBhcGk6IFRGaWVsZERlZmF1bHRBcGlWYWx1ZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFByb3BlcnRpZXMgPSB7XG4gIC8vIGRlZmluZSB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSBjb21tb24gdG8gYWxsIGZpZWxkc1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkVGV4dFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBjYXNlOiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRFbWFpbFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBjYXNlOiBzdHJpbmc7XG4gIGRvbWFpbnM6IEFycmF5PHN0cmluZz47XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRQYXNzd29yZFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBoaW50Q29udGVudDogc3RyaW5nO1xuICByZWFkT25seTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkVGV4dGFyZWFQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgcmVhZE9ubHk6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZENoZWNrYm94UHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIGNvbnRlbnRBbGlnbjogc3RyaW5nO1xuICBzaXplOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGROdW1iZXJQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgbWluOiBudW1iZXI7XG4gIG1heDogbnVtYmVyO1xuICBwcmVmaXg6IG51bWJlcjtcbiAgcG9zdGZpeDogbnVtYmVyO1xuICBwcmVjaXNpb246IG51bWJlcjtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgZGVjaW1hbDogc3RyaW5nO1xuICByZWFkT25seTogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZERhdGVQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgbWluOiB7XG4gICAgeWVhcjogbnVtYmVyO1xuICAgIG1vbnRoOiBudW1iZXI7XG4gICAgZGF5OiBudW1iZXI7XG4gIH07XG4gIG1heDoge1xuICAgIHllYXI6IG51bWJlcjtcbiAgICBtb250aDogbnVtYmVyO1xuICAgIGRheTogbnVtYmVyO1xuICB9O1xuICByZWFkT25seTogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFBob25lUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIGNvdW50cnlDb2RlOiBzdHJpbmc7XG4gIHBob25lTWFza0FmdGVyQ291bnRyeUNvZGU6IHN0cmluZztcbiAgcmVtb3ZlQ291bnRyeUNvZGVGcm9tVmFsdWU6IGJvb2xlYW47XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUHJldmlld0ltYWdlUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIGFsdFRleHQ6IHN0cmluZztcbiAgaHRtbDoge1xuICAgIGJlZm9yZTogc3RyaW5nO1xuICAgIGFmdGVyOiBzdHJpbmc7XG4gIH07XG4gIGltYWdlVHlwZTogc3RyaW5nO1xuICBsb2FkaW5nVHlwZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkU2xpZGVyUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIG1pbjogbnVtYmVyO1xuICBtYXg6IG51bWJlcjtcbiAgc3RlcDogbnVtYmVyO1xuICBxdWFudHVtOiBudW1iZXI7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUmFkaW9Qcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgc2l6ZTogc3RyaW5nO1xuICBvcmllbnRhdGlvbjogc3RyaW5nO1xuICByZWFkT25seTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkU2VsZWN0UHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIHJlYWRPbmx5OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkQXBpQ2FsbFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge307XG5cbmV4cG9ydCB0eXBlIFRGaWVsZE90cFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBtYXNrOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRBYWRoYWFyTnVtYmVyUHJvcGVydGllcyA9IFRGaWVsZFByb3BlcnRpZXMgJiB7XG4gIG1hc2s6IHN0cmluZztcbiAgcmVhZE9ubHk6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZENhcHR1cmVQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgY29udGFpbmVyU3R5bGVzOiBzdHJpbmc7XG4gIGJ1dHRvblRleHQ6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICBzaG93TWVkaWFGaWxlczogYm9vbGVhbjtcbiAgdXBsb2FkRmlsZVRvU2VydmVyOiBib29sZWFuO1xuICBpc0Nyb3BwZWRJbWFnZTogYm9vbGVhbjtcbiAgaXNNYXNrZWRJbWFnZTogYm9vbGVhbjtcbiAgd2F0ZXJtYXJrRGF0YVNvdXJjZXM6IFRTb3VyY2VbXTtcbiAgY2FtZXJhQ29uZmlnOiB7XG4gICAgaGVhZGVyOiB7XG4gICAgICB0aXRsZTogc3RyaW5nO1xuICAgICAgaXNCYWNrOiBib29sZWFuO1xuICAgICAgaXNFeHBhbmQ6IGJvb2xlYW47XG4gICAgICBpc0Nsb3NlOiBib29sZWFuO1xuICAgIH07XG4gICAgZm9vdGVyOiB7XG4gICAgICBpc1VwbG9hZDogYm9vbGVhbjtcbiAgICAgIGlzRmxpcDogYm9vbGVhbjtcbiAgICAgIGlzU3dpdGNoOiBib29sZWFuO1xuICAgIH07XG4gICAgb3RoZXJzOiB7XG4gICAgICBpc1dhdGVybWFyazogYm9vbGVhbjtcbiAgICAgIGlzV2F0ZXJtYXJrRm9ySW1hZ2VVcGxvYWQ6IGJvb2xlYW47XG4gICAgICBpc0Zyb250Q2FtZXJhOiBib29sZWFuO1xuICAgICAgZmxpcEhvcml6b250YWw6IGJvb2xlYW47XG4gICAgICBtYXNrOiB7XG4gICAgICAgIHNoYXBlOiBzdHJpbmc7XG4gICAgICB9O1xuICAgICAgcHJldmlldzoge1xuICAgICAgICBzaG93OiBib29sZWFuO1xuICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICBpc0JhY2s6IGJvb2xlYW47XG4gICAgICAgICAgaXNDbG9zZTogYm9vbGVhbjtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFJlY29yZFByb3BlcnRpZXMgPSBURmllbGRQcm9wZXJ0aWVzICYge1xuICBjb250YWluZXJTdHlsZXM6IHN0cmluZztcbiAgYnV0dG9uVGV4dDogc3RyaW5nO1xuICBpY29uOiBzdHJpbmc7XG4gIHNob3dNZWRpYUZpbGVzOiBib29sZWFuO1xuICB1cGxvYWRGaWxlVG9TZXJ2ZXI6IGJvb2xlYW47XG4gIGNhbWVyYUNvbmZpZzoge1xuICAgIGhlYWRlcjoge1xuICAgICAgdGl0bGU6IHN0cmluZztcbiAgICAgIGlzQmFjazogYm9vbGVhbjtcbiAgICAgIGlzRXhwYW5kOiBib29sZWFuO1xuICAgICAgaXNDbG9zZTogYm9vbGVhbjtcbiAgICB9O1xuICAgIGZvb3Rlcjoge1xuICAgICAgaXNVcGxvYWQ6IGJvb2xlYW47XG4gICAgICBpc0ZsaXA6IGJvb2xlYW47XG4gICAgICBpc1N3aXRjaDogYm9vbGVhbjtcbiAgICB9O1xuICAgIG90aGVyczoge1xuICAgICAgaXNGcm9udENhbWVyYTogYm9vbGVhbjtcbiAgICAgIGZsaXBIb3Jpem9udGFsOiBib29sZWFuO1xuICAgICAgbWluUmVjb3JkaW5nVGltZUluU2Vjb25kczogbnVtYmVyO1xuICAgICAgbWF4UmVjb3JkaW5nVGltZUluU2Vjb25kczogbnVtYmVyO1xuICAgICAgcHJldmlldzoge1xuICAgICAgICBzaG93OiBib29sZWFuO1xuICAgICAgICBoZWFkZXI6IHtcbiAgICAgICAgICBpc0JhY2s6IGJvb2xlYW47XG4gICAgICAgICAgaXNDbG9zZTogYm9vbGVhbjtcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFN0YXJSYXRpbmdQcm9wZXJ0aWVzID0gVEZpZWxkUHJvcGVydGllcyAmIHtcbiAgY29sb3I6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICBpY29uTWFya2VkOiBzdHJpbmc7XG4gIG1pbjogbnVtYmVyO1xuICBtYXg6IG51bWJlcjtcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgc2l6ZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkID0ge1xuICBsYWJlbDogc3RyaW5nO1xuICB0eXBlOiBURmllbGRUeXBlO1xuICBrZXk6IHN0cmluZztcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIG1lc3NhZ2VzOiBBcnJheTxUTWVzc2FnZT47XG4gIGRlZmF1bHQ6IFRGaWVsZERlZmF1bHQ7XG4gIHZhbGlkYXRvcnM6IFRWYWxpZGF0b3I7XG4gIHZhbGlkYXRpb246IFRWYWxpZGF0aW9uO1xuICBhcGk/OiBUQXBpO1xuICBwcm9wZXJ0aWVzOiBURmllbGRQcm9wZXJ0aWVzO1xuICBvcHRpb25zPzogQXJyYXk8YW55Pjtcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFRpdGxlID0ge1xuICB0eXBlOiBURmllbGRUeXBlO1xuICBsYWJlbDogc3RyaW5nO1xuICBrZXk6IHN0cmluZztcbiAgcmVzZXQ/OiB7XG4gICAgZmllbGRzOiBBcnJheTx7XG4gICAgICBmaWVsZEtleTogc3RyaW5nO1xuICAgICAgYWN0aW9uczogQXJyYXk8VEFjdGlvbj47XG4gICAgfT47XG4gIH07XG4gIHByb3BlcnRpZXM/OiB7XG4gICAgYnlwYXNzUmVzZXRDb25maXJtYXRpb24/OiBib29sZWFuO1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkVGV4dCA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkVGV4dFByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRUZXh0QXJlYSA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkVGV4dGFyZWFQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkQ2hlY2tib3ggPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZENoZWNrYm94UHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZE51bWJlciA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkTnVtYmVyUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZERhdGUgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZERhdGVQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkUGhvbmUgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZFBob25lUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFJhZGlvID0gVEZpZWxkICYge1xuICBvcHRpb25zOiBBcnJheTxURmllbGRSYWRpb09wdGlvbj47XG4gIHByb3BlcnRpZXM6IFRGaWVsZFJhZGlvUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZEVtYWlsID0gVEZpZWxkICYge1xuICBwcm9wZXJ0aWVzOiBURmllbGRFbWFpbFByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRTZWxlY3QgPSBURmllbGQgJiB7XG4gIG9wdGlvbnM6IEFycmF5PFRGaWVsZFNlbGVjdE9wdGlvbj47XG4gIHByb3BlcnRpZXM6IFRGaWVsZFNlbGVjdFByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRBcGlDYWxsID0gVEZpZWxkICYge1xuICBhcGk6IFRBcGk7XG4gIHByb3BlcnRpZXM6IFRGaWVsZEFwaUNhbGxQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkT3RwID0gVEZpZWxkICYge1xuICBwcm9wZXJ0aWVzOiBURmllbGRPdHBQcm9wZXJ0aWVzO1xufTtcblxuZXhwb3J0IHR5cGUgVEZpZWxkQWFkaGFhck51bWJlciA9IFRGaWVsZCAmIHtcbiAgcHJvcGVydGllczogVEZpZWxkQWFkaGFhck51bWJlclByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRQcmV2aWV3SW1hZ2UgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZFByZXZpZXdJbWFnZVByb3BlcnRpZXM7XG59O1xuXG5leHBvcnQgdHlwZSBURmllbGRDYXB0dXJlID0gVEZpZWxkICYge1xuICBwcm9wZXJ0aWVzOiBURmllbGRDYXB0dXJlUHJvcGVydGllcztcbn07XG5cbmV4cG9ydCB0eXBlIFRGaWVsZFN0YXJSYXRpbmcgPSBURmllbGQgJiB7XG4gIHByb3BlcnRpZXM6IFRGaWVsZFN0YXJSYXRpbmdQcm9wZXJ0aWVzO1xufTtcbiJdfQ==
|