@ng-nest/ui 14.0.8 → 14.0.9
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/auto-complete/auto-complete-portal.component.d.ts +6 -3
- package/auto-complete/auto-complete.component.d.ts +3 -5
- package/base-form/base-form.component.d.ts +3 -1
- package/base-form/base-form.property.d.ts +9 -1
- package/core/config/config.d.ts +5 -0
- package/core/interfaces/layout.type.d.ts +7 -1
- package/core/util/check.d.ts +2 -0
- package/core/util/public-api.d.ts +1 -0
- package/dialog/dialog.property.d.ts +8 -0
- package/esm2020/auto-complete/auto-complete-portal.component.mjs +11 -4
- package/esm2020/auto-complete/auto-complete.component.mjs +20 -21
- package/esm2020/base-form/base-form.component.mjs +13 -4
- package/esm2020/base-form/base-form.property.mjs +4 -2
- package/esm2020/core/config/config.mjs +1 -1
- package/esm2020/core/functions/property.mjs +1 -1
- package/esm2020/core/interfaces/identify.type.mjs +1 -1
- package/esm2020/core/interfaces/layout.type.mjs +1 -1
- package/esm2020/core/util/check.mjs +7 -0
- package/esm2020/core/util/public-api.mjs +2 -1
- package/esm2020/dialog/dialog.property.mjs +1 -1
- package/esm2020/find/find.property.mjs +2 -2
- package/esm2020/form/control.component.mjs +13 -4
- package/esm2020/form/form.property.mjs +1 -1
- package/esm2020/i18n/i18n.property.mjs +1 -1
- package/esm2020/i18n/languages/en_US.mjs +7 -1
- package/esm2020/i18n/languages/zh_CN.mjs +7 -1
- package/esm2020/i18n/languages/zh_TW.mjs +7 -1
- package/esm2020/icon/icon.property.mjs +1 -1
- package/esm2020/image/image-group.component.mjs +4 -1
- package/esm2020/image/image.component.mjs +6 -1
- package/esm2020/input/input.component.mjs +7 -4
- package/esm2020/input/input.property.mjs +1 -1
- package/esm2020/input-number/input-number.component.mjs +8 -2
- package/esm2020/input-number/input-number.property.mjs +4 -2
- package/esm2020/list/list-drop-group.directive.mjs +47 -0
- package/esm2020/list/list.component.mjs +37 -9
- package/esm2020/list/list.module.mjs +6 -5
- package/esm2020/list/list.property.mjs +1 -1
- package/esm2020/list/public-api.mjs +2 -1
- package/esm2020/message-box/message-box.component.mjs +24 -9
- package/esm2020/message-box/message-box.module.mjs +8 -4
- package/esm2020/message-box/message-box.property.mjs +1 -1
- package/esm2020/message-box/message-box.service.mjs +10 -3
- package/esm2020/resizable/resizable.directive.mjs +2 -2
- package/esm2020/slider-select/slider-select.component.mjs +6 -3
- package/esm2020/slider-select/slider-select.property.mjs +7 -2
- package/esm2020/table/table-body.component.mjs +5 -3
- package/esm2020/table/table.component.mjs +10 -6
- package/esm2020/table/table.property.mjs +21 -2
- package/esm2020/transfer/transfer.component.mjs +354 -51
- package/esm2020/transfer/transfer.module.mjs +35 -4
- package/esm2020/transfer/transfer.property.mjs +41 -3
- package/esm2020/tree/tree-node.component.mjs +19 -10
- package/esm2020/tree/tree.component.mjs +21 -19
- package/esm2020/tree/tree.property.mjs +8 -2
- package/esm2020/tree-select/tree-select-portal.component.mjs +4 -3
- package/esm2020/tree-select/tree-select.component.mjs +2 -1
- package/esm2020/tree-select/tree-select.property.mjs +8 -2
- package/esm2020/upload/upload.component.mjs +3 -3
- package/fesm2015/ng-nest-ui-auto-complete.mjs +28 -22
- package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-base-form.mjs +16 -5
- package/fesm2015/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-core.mjs +8 -1
- package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-find.mjs +1 -1
- package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-form.mjs +12 -4
- package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-i18n.mjs +18 -0
- package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-image.mjs +8 -0
- package/fesm2015/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input-number.mjs +10 -2
- package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input.mjs +6 -3
- package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-list.mjs +87 -14
- package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message-box.mjs +39 -14
- package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-resizable.mjs +1 -1
- package/fesm2015/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider-select.mjs +11 -3
- package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-table.mjs +33 -8
- package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-transfer.mjs +433 -57
- package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-select.mjs +11 -3
- package/fesm2015/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree.mjs +46 -29
- package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-upload.mjs +2 -2
- package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-auto-complete.mjs +28 -22
- package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-base-form.mjs +16 -5
- package/fesm2020/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-core.mjs +8 -1
- package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-find.mjs +1 -1
- package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-form.mjs +12 -4
- package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-i18n.mjs +18 -0
- package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-image.mjs +8 -0
- package/fesm2020/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input-number.mjs +10 -2
- package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input.mjs +6 -3
- package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-list.mjs +84 -13
- package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message-box.mjs +38 -13
- package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-resizable.mjs +1 -1
- package/fesm2020/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider-select.mjs +11 -3
- package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-table.mjs +33 -8
- package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-transfer.mjs +427 -55
- package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-select.mjs +11 -3
- package/fesm2020/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree.mjs +45 -28
- package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-upload.mjs +2 -2
- package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
- package/find/find.property.d.ts +1 -1
- package/form/form.property.d.ts +10 -0
- package/i18n/i18n.property.d.ts +7 -0
- package/i18n/languages/en_US.d.ts +6 -0
- package/i18n/languages/zh_CN.d.ts +6 -0
- package/i18n/languages/zh_TW.d.ts +6 -0
- package/icon/icon.property.d.ts +1 -1
- package/image/image-group.component.d.ts +1 -0
- package/image/image.component.d.ts +1 -0
- package/input/input.property.d.ts +7 -2
- package/input-number/input-number.property.d.ts +12 -1
- package/list/list-drop-group.directive.d.ts +15 -0
- package/list/list.component.d.ts +7 -3
- package/list/list.module.d.ts +15 -14
- package/list/list.property.d.ts +3 -1
- package/list/public-api.d.ts +1 -0
- package/message-box/message-box.component.d.ts +4 -2
- package/message-box/message-box.module.d.ts +2 -1
- package/message-box/message-box.property.d.ts +18 -4
- package/package.json +1 -1
- package/slider-select/slider-select.component.d.ts +1 -0
- package/slider-select/slider-select.property.d.ts +6 -1
- package/table/table.property.d.ts +18 -1
- package/transfer/transfer.component.d.ts +29 -4
- package/transfer/transfer.module.d.ts +3 -1
- package/transfer/transfer.property.d.ts +85 -6
- package/tree/tree.property.d.ts +6 -1
- package/tree-select/tree-select-portal.component.d.ts +1 -0
- package/tree-select/tree-select.property.d.ts +6 -1
- package/affix/examples/en_US/default/README.md +0 -4
- package/affix/examples/en_US/default/default/README.md +0 -6
- package/affix/examples/en_US/default/scope/README.md +0 -6
- package/affix/examples/zh_CN/default/README.md +0 -4
- package/affix/examples/zh_CN/default/default/README.md +0 -6
- package/affix/examples/zh_CN/default/scope/README.md +0 -6
- package/alert/examples/en_US/default/README.md +0 -4
- package/alert/examples/en_US/default/custom/README.md +0 -9
- package/alert/examples/en_US/default/default/README.md +0 -6
- package/alert/examples/en_US/default/description/README.md +0 -6
- package/alert/examples/en_US/default/effect/README.md +0 -6
- package/alert/examples/en_US/default/icon/README.md +0 -6
- package/alert/examples/zh_CN/default/README.md +0 -4
- package/alert/examples/zh_CN/default/custom/README.md +0 -9
- package/alert/examples/zh_CN/default/default/README.md +0 -6
- package/alert/examples/zh_CN/default/description/README.md +0 -6
- package/alert/examples/zh_CN/default/effect/README.md +0 -6
- package/alert/examples/zh_CN/default/icon/README.md +0 -6
- package/anchor/examples/en_US/default/README.md +0 -4
- package/anchor/examples/en_US/default/default/README.md +0 -6
- package/anchor/examples/zh_CN/default/README.md +0 -4
- package/anchor/examples/zh_CN/default/default/README.md +0 -6
- package/auto-complete/examples/en_US/default/README.md +0 -4
- package/auto-complete/examples/en_US/default/bordered/README.md +0 -6
- package/auto-complete/examples/en_US/default/custom/README.md +0 -6
- package/auto-complete/examples/en_US/default/default/README.md +0 -6
- package/auto-complete/examples/en_US/default/disabled/README.md +0 -6
- package/auto-complete/examples/en_US/default/label/README.md +0 -7
- package/auto-complete/examples/en_US/default/required/README.md +0 -6
- package/auto-complete/examples/en_US/default/size/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/README.md +0 -4
- package/auto-complete/examples/zh_CN/default/bordered/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/custom/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/default/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/disabled/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/label/README.md +0 -7
- package/auto-complete/examples/zh_CN/default/required/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/size/README.md +0 -6
- package/avatar/examples/en_US/default/README.md +0 -4
- package/avatar/examples/en_US/default/badge/README.md +0 -6
- package/avatar/examples/en_US/default/default/README.md +0 -7
- package/avatar/examples/en_US/default/display/README.md +0 -6
- package/avatar/examples/en_US/default/fallback/README.md +0 -6
- package/avatar/examples/en_US/default/fit/README.md +0 -6
- package/avatar/examples/en_US/default/group/README.md +0 -6
- package/avatar/examples/en_US/default/label/README.md +0 -6
- package/avatar/examples/en_US/default/response/README.md +0 -6
- package/avatar/examples/zh_CN/default/README.md +0 -4
- package/avatar/examples/zh_CN/default/badge/README.md +0 -6
- package/avatar/examples/zh_CN/default/default/README.md +0 -7
- package/avatar/examples/zh_CN/default/display/README.md +0 -6
- package/avatar/examples/zh_CN/default/fallback/README.md +0 -6
- package/avatar/examples/zh_CN/default/fit/README.md +0 -6
- package/avatar/examples/zh_CN/default/group/README.md +0 -6
- package/avatar/examples/zh_CN/default/label/README.md +0 -6
- package/avatar/examples/zh_CN/default/response/README.md +0 -6
- package/back-top/examples/en_US/default/README.md +0 -4
- package/back-top/examples/en_US/default/custom/README.md +0 -6
- package/back-top/examples/en_US/default/default/README.md +0 -6
- package/back-top/examples/en_US/default/target/README.md +0 -6
- package/back-top/examples/zh_CN/default/README.md +0 -4
- package/back-top/examples/zh_CN/default/custom/README.md +0 -6
- package/back-top/examples/zh_CN/default/default/README.md +0 -6
- package/back-top/examples/zh_CN/default/target/README.md +0 -6
- package/badge/examples/en_US/default/README.md +0 -4
- package/badge/examples/en_US/default/animation/README.md +0 -4
- package/badge/examples/en_US/default/color/README.md +0 -6
- package/badge/examples/en_US/default/custom/README.md +0 -7
- package/badge/examples/en_US/default/default/README.md +0 -7
- package/badge/examples/en_US/default/dot/README.md +0 -7
- package/badge/examples/en_US/default/max/README.md +0 -6
- package/badge/examples/en_US/default/offset/README.md +0 -6
- package/badge/examples/en_US/default/standalone/README.md +0 -6
- package/badge/examples/zh_CN/default/README.md +0 -4
- package/badge/examples/zh_CN/default/animation/README.md +0 -4
- package/badge/examples/zh_CN/default/color/README.md +0 -6
- package/badge/examples/zh_CN/default/custom/README.md +0 -7
- package/badge/examples/zh_CN/default/default/README.md +0 -7
- package/badge/examples/zh_CN/default/dot/README.md +0 -7
- package/badge/examples/zh_CN/default/max/README.md +0 -6
- package/badge/examples/zh_CN/default/offset/README.md +0 -6
- package/badge/examples/zh_CN/default/standalone/README.md +0 -6
- package/border/examples/en_US/default/README.md +0 -4
- package/border/examples/en_US/default/default/README.md +0 -6
- package/border/examples/en_US/default/radius/README.md +0 -6
- package/border/examples/en_US/default/shadow/README.md +0 -6
- package/border/examples/zh_CN/default/README.md +0 -4
- package/border/examples/zh_CN/default/default/README.md +0 -6
- package/border/examples/zh_CN/default/radius/README.md +0 -6
- package/border/examples/zh_CN/default/shadow/README.md +0 -6
- package/button/examples/en_US/default/README.md +0 -4
- package/button/examples/en_US/default/default/README.md +0 -8
- package/button/examples/en_US/default/disabled/README.md +0 -8
- package/button/examples/en_US/default/group/README.md +0 -10
- package/button/examples/en_US/default/icon/README.md +0 -9
- package/button/examples/en_US/default/loading/README.md +0 -8
- package/button/examples/en_US/default/size/README.md +0 -8
- package/button/examples/en_US/default/text/README.md +0 -6
- package/button/examples/zh_CN/default/README.md +0 -4
- package/button/examples/zh_CN/default/default/README.md +0 -8
- package/button/examples/zh_CN/default/disabled/README.md +0 -8
- package/button/examples/zh_CN/default/group/README.md +0 -10
- package/button/examples/zh_CN/default/icon/README.md +0 -9
- package/button/examples/zh_CN/default/loading/README.md +0 -8
- package/button/examples/zh_CN/default/size/README.md +0 -8
- package/button/examples/zh_CN/default/text/README.md +0 -6
- package/calendar/examples/en_US/default/README.md +0 -4
- package/calendar/examples/en_US/default/card/README.md +0 -6
- package/calendar/examples/en_US/default/default/README.md +0 -6
- package/calendar/examples/en_US/default/header/README.md +0 -6
- package/calendar/examples/zh_CN/default/README.md +0 -4
- package/calendar/examples/zh_CN/default/card/README.md +0 -6
- package/calendar/examples/zh_CN/default/default/README.md +0 -6
- package/calendar/examples/zh_CN/default/header/README.md +0 -6
- package/card/examples/en_US/default/README.md +0 -4
- package/card/examples/en_US/default/default/README.md +0 -6
- package/card/examples/en_US/default/header/README.md +0 -6
- package/card/examples/en_US/default/img/README.md +0 -6
- package/card/examples/en_US/default/shadow/README.md +0 -7
- package/card/examples/zh_CN/default/README.md +0 -4
- package/card/examples/zh_CN/default/default/README.md +0 -6
- package/card/examples/zh_CN/default/header/README.md +0 -6
- package/card/examples/zh_CN/default/img/README.md +0 -6
- package/card/examples/zh_CN/default/shadow/README.md +0 -7
- package/carousel/examples/en_US/default/README.md +0 -4
- package/carousel/examples/en_US/default/arrow/README.md +0 -7
- package/carousel/examples/en_US/default/card/README.md +0 -7
- package/carousel/examples/en_US/default/default/README.md +0 -7
- package/carousel/examples/en_US/default/direction/README.md +0 -6
- package/carousel/examples/zh_CN/default/README.md +0 -4
- package/carousel/examples/zh_CN/default/arrow/README.md +0 -7
- package/carousel/examples/zh_CN/default/card/README.md +0 -7
- package/carousel/examples/zh_CN/default/default/README.md +0 -7
- package/carousel/examples/zh_CN/default/direction/README.md +0 -6
- package/cascade/examples/en_US/default/README.md +0 -4
- package/cascade/examples/en_US/default/bordered/README.md +0 -6
- package/cascade/examples/en_US/default/default/README.md +0 -7
- package/cascade/examples/en_US/default/disabled/README.md +0 -6
- package/cascade/examples/en_US/default/hover/README.md +0 -7
- package/cascade/examples/en_US/default/label/README.md +0 -7
- package/cascade/examples/en_US/default/required/README.md +0 -6
- package/cascade/examples/en_US/default/size/README.md +0 -6
- package/cascade/examples/zh_CN/default/README.md +0 -4
- package/cascade/examples/zh_CN/default/bordered/README.md +0 -6
- package/cascade/examples/zh_CN/default/default/README.md +0 -7
- package/cascade/examples/zh_CN/default/disabled/README.md +0 -6
- package/cascade/examples/zh_CN/default/hover/README.md +0 -7
- package/cascade/examples/zh_CN/default/label/README.md +0 -7
- package/cascade/examples/zh_CN/default/required/README.md +0 -6
- package/cascade/examples/zh_CN/default/size/README.md +0 -6
- package/checkbox/examples/en_US/default/README.md +0 -4
- package/checkbox/examples/en_US/default/async/README.md +0 -6
- package/checkbox/examples/en_US/default/button/README.md +0 -6
- package/checkbox/examples/en_US/default/check-all/README.md +0 -6
- package/checkbox/examples/en_US/default/default/README.md +0 -9
- package/checkbox/examples/en_US/default/disabled/README.md +0 -9
- package/checkbox/examples/en_US/default/icon/README.md +0 -6
- package/checkbox/examples/zh_CN/default/README.md +0 -4
- package/checkbox/examples/zh_CN/default/async/README.md +0 -6
- package/checkbox/examples/zh_CN/default/button/README.md +0 -6
- package/checkbox/examples/zh_CN/default/check-all/README.md +0 -6
- package/checkbox/examples/zh_CN/default/default/README.md +0 -9
- package/checkbox/examples/zh_CN/default/disabled/README.md +0 -9
- package/checkbox/examples/zh_CN/default/icon/README.md +0 -6
- package/collapse/examples/en_US/default/README.md +0 -4
- package/collapse/examples/en_US/default/accordion/README.md +0 -7
- package/collapse/examples/en_US/default/arrow/README.md +0 -6
- package/collapse/examples/en_US/default/border/README.md +0 -6
- package/collapse/examples/en_US/default/custom/README.md +0 -6
- package/collapse/examples/en_US/default/default/README.md +0 -6
- package/collapse/examples/en_US/default/disabled/README.md +0 -6
- package/collapse/examples/en_US/default/ghost/README.md +0 -6
- package/collapse/examples/en_US/default/icon/README.md +0 -6
- package/collapse/examples/zh_CN/default/README.md +0 -4
- package/collapse/examples/zh_CN/default/accordion/README.md +0 -7
- package/collapse/examples/zh_CN/default/arrow/README.md +0 -6
- package/collapse/examples/zh_CN/default/border/README.md +0 -6
- package/collapse/examples/zh_CN/default/custom/README.md +0 -6
- package/collapse/examples/zh_CN/default/default/README.md +0 -6
- package/collapse/examples/zh_CN/default/disabled/README.md +0 -6
- package/collapse/examples/zh_CN/default/ghost/README.md +0 -6
- package/collapse/examples/zh_CN/default/icon/README.md +0 -6
- package/color/examples/en_US/default/README.md +0 -4
- package/color/examples/en_US/default/assist/README.md +0 -6
- package/color/examples/en_US/default/default/README.md +0 -8
- package/color/examples/en_US/default/neutral/README.md +0 -6
- package/color/examples/zh_CN/default/README.md +0 -4
- package/color/examples/zh_CN/default/assist/README.md +0 -6
- package/color/examples/zh_CN/default/default/README.md +0 -8
- package/color/examples/zh_CN/default/neutral/README.md +0 -6
- package/color-picker/examples/en_US/default/README.md +0 -4
- package/color-picker/examples/en_US/default/bordered/README.md +0 -6
- package/color-picker/examples/en_US/default/default/README.md +0 -6
- package/color-picker/examples/en_US/default/disabled/README.md +0 -6
- package/color-picker/examples/en_US/default/label/README.md +0 -7
- package/color-picker/examples/en_US/default/required/README.md +0 -6
- package/color-picker/examples/en_US/default/size/README.md +0 -6
- package/color-picker/examples/zh_CN/default/README.md +0 -4
- package/color-picker/examples/zh_CN/default/bordered/README.md +0 -6
- package/color-picker/examples/zh_CN/default/default/README.md +0 -6
- package/color-picker/examples/zh_CN/default/disabled/README.md +0 -6
- package/color-picker/examples/zh_CN/default/label/README.md +0 -7
- package/color-picker/examples/zh_CN/default/required/README.md +0 -6
- package/color-picker/examples/zh_CN/default/size/README.md +0 -6
- package/comment/examples/en_US/default/README.md +0 -4
- package/comment/examples/en_US/default/default/README.md +0 -6
- package/comment/examples/zh_CN/default/README.md +0 -4
- package/comment/examples/zh_CN/default/default/README.md +0 -6
- package/container/examples/en_US/default/README.md +0 -4
- package/container/examples/en_US/default/default/README.md +0 -10
- package/container/examples/zh_CN/default/README.md +0 -4
- package/container/examples/zh_CN/default/default/README.md +0 -10
- package/crumb/examples/en_US/default/README.md +0 -4
- package/crumb/examples/en_US/default/custom/README.md +0 -6
- package/crumb/examples/en_US/default/default/README.md +0 -6
- package/crumb/examples/en_US/default/icon/README.md +0 -6
- package/crumb/examples/en_US/default/separator/README.md +0 -6
- package/crumb/examples/zh_CN/default/README.md +0 -4
- package/crumb/examples/zh_CN/default/custom/README.md +0 -6
- package/crumb/examples/zh_CN/default/default/README.md +0 -6
- package/crumb/examples/zh_CN/default/icon/README.md +0 -6
- package/crumb/examples/zh_CN/default/separator/README.md +0 -6
- package/date-picker/examples/en_US/default/README.md +0 -4
- package/date-picker/examples/en_US/default/bordered/README.md +0 -6
- package/date-picker/examples/en_US/default/default/README.md +0 -6
- package/date-picker/examples/en_US/default/disabled/README.md +0 -6
- package/date-picker/examples/en_US/default/label/README.md +0 -7
- package/date-picker/examples/en_US/default/required/README.md +0 -6
- package/date-picker/examples/en_US/default/size/README.md +0 -6
- package/date-picker/examples/en_US/default/time/README.md +0 -6
- package/date-picker/examples/en_US/default/today/README.md +0 -6
- package/date-picker/examples/en_US/default/year-month/README.md +0 -6
- package/date-picker/examples/zh_CN/default/README.md +0 -4
- package/date-picker/examples/zh_CN/default/bordered/README.md +0 -6
- package/date-picker/examples/zh_CN/default/default/README.md +0 -6
- package/date-picker/examples/zh_CN/default/disabled/README.md +0 -6
- package/date-picker/examples/zh_CN/default/label/README.md +0 -7
- package/date-picker/examples/zh_CN/default/required/README.md +0 -6
- package/date-picker/examples/zh_CN/default/size/README.md +0 -6
- package/date-picker/examples/zh_CN/default/time/README.md +0 -6
- package/date-picker/examples/zh_CN/default/today/README.md +0 -6
- package/date-picker/examples/zh_CN/default/year-month/README.md +0 -6
- package/description/examples/en_US/default/README.md +0 -4
- package/description/examples/en_US/default/border/README.md +0 -6
- package/description/examples/en_US/default/default/README.md +0 -6
- package/description/examples/en_US/default/size/README.md +0 -6
- package/description/examples/en_US/default/split/README.md +0 -8
- package/description/examples/en_US/default/vertical/README.md +0 -4
- package/description/examples/zh_CN/default/README.md +0 -4
- package/description/examples/zh_CN/default/border/README.md +0 -6
- package/description/examples/zh_CN/default/default/README.md +0 -6
- package/description/examples/zh_CN/default/size/README.md +0 -6
- package/description/examples/zh_CN/default/split/README.md +0 -8
- package/description/examples/zh_CN/default/vertical/README.md +0 -4
- package/dialog/examples/en_US/default/README.md +0 -4
- package/dialog/examples/en_US/default/container/README.md +0 -6
- package/dialog/examples/en_US/default/custom/README.md +0 -6
- package/dialog/examples/en_US/default/default/README.md +0 -6
- package/dialog/examples/en_US/default/draggable/README.md +0 -6
- package/dialog/examples/en_US/default/resizable/README.md +0 -6
- package/dialog/examples/en_US/default/service/README.md +0 -6
- package/dialog/examples/zh_CN/default/README.md +0 -4
- package/dialog/examples/zh_CN/default/container/README.md +0 -6
- package/dialog/examples/zh_CN/default/custom/README.md +0 -6
- package/dialog/examples/zh_CN/default/default/README.md +0 -6
- package/dialog/examples/zh_CN/default/draggable/README.md +0 -6
- package/dialog/examples/zh_CN/default/resizable/README.md +0 -6
- package/dialog/examples/zh_CN/default/service/README.md +0 -6
- package/drawer/examples/en_US/default/README.md +0 -4
- package/drawer/examples/en_US/default/container/README.md +0 -6
- package/drawer/examples/en_US/default/custom/README.md +0 -6
- package/drawer/examples/en_US/default/default/README.md +0 -6
- package/drawer/examples/en_US/default/multiple/README.md +0 -6
- package/drawer/examples/en_US/default/service/README.md +0 -6
- package/drawer/examples/en_US/default/title/README.md +0 -6
- package/drawer/examples/zh_CN/default/README.md +0 -4
- package/drawer/examples/zh_CN/default/container/README.md +0 -6
- package/drawer/examples/zh_CN/default/custom/README.md +0 -6
- package/drawer/examples/zh_CN/default/default/README.md +0 -6
- package/drawer/examples/zh_CN/default/multiple/README.md +0 -6
- package/drawer/examples/zh_CN/default/service/README.md +0 -6
- package/drawer/examples/zh_CN/default/title/README.md +0 -6
- package/dropdown/examples/en_US/default/README.md +0 -4
- package/dropdown/examples/en_US/default/default/README.md +0 -6
- package/dropdown/examples/en_US/default/multistage/README.md +0 -6
- package/dropdown/examples/en_US/default/prop/README.md +0 -6
- package/dropdown/examples/en_US/default/trigger/README.md +0 -6
- package/dropdown/examples/zh_CN/default/README.md +0 -4
- package/dropdown/examples/zh_CN/default/default/README.md +0 -6
- package/dropdown/examples/zh_CN/default/multistage/README.md +0 -6
- package/dropdown/examples/zh_CN/default/prop/README.md +0 -6
- package/dropdown/examples/zh_CN/default/trigger/README.md +0 -6
- package/empty/examples/en_US/default/README.md +0 -4
- package/empty/examples/en_US/default/custom/README.md +0 -6
- package/empty/examples/en_US/default/default/README.md +0 -6
- package/empty/examples/zh_CN/default/README.md +0 -4
- package/empty/examples/zh_CN/default/custom/README.md +0 -6
- package/empty/examples/zh_CN/default/default/README.md +0 -6
- package/find/examples/en_US/default/README.md +0 -4
- package/find/examples/en_US/default/bordered/README.md +0 -6
- package/find/examples/en_US/default/default/README.md +0 -10
- package/find/examples/en_US/default/disabled/README.md +0 -6
- package/find/examples/en_US/default/label/README.md +0 -7
- package/find/examples/en_US/default/size/README.md +0 -6
- package/find/examples/en_US/default/tree/README.md +0 -6
- package/find/examples/en_US/default/tree-table/README.md +0 -5
- package/find/examples/zh_CN/default/README.md +0 -4
- package/find/examples/zh_CN/default/bordered/README.md +0 -6
- package/find/examples/zh_CN/default/default/README.md +0 -10
- package/find/examples/zh_CN/default/disabled/README.md +0 -6
- package/find/examples/zh_CN/default/label/README.md +0 -7
- package/find/examples/zh_CN/default/size/README.md +0 -6
- package/find/examples/zh_CN/default/tree/README.md +0 -6
- package/find/examples/zh_CN/default/tree-table/README.md +0 -5
- package/form/examples/en_US/default/README.md +0 -4
- package/form/examples/en_US/default/default/README.md +0 -6
- package/form/examples/en_US/default/form-vaild/README.md +0 -8
- package/form/examples/en_US/default/label-row/README.md +0 -5
- package/form/examples/en_US/default/title/README.md +0 -4
- package/form/examples/zh_CN/default/README.md +0 -4
- package/form/examples/zh_CN/default/default/README.md +0 -6
- package/form/examples/zh_CN/default/form-vaild/README.md +0 -8
- package/form/examples/zh_CN/default/label-row/README.md +0 -5
- package/form/examples/zh_CN/default/title/README.md +0 -4
- package/highlight/examples/en_US/default/README.md +0 -4
- package/highlight/examples/en_US/default/html/README.md +0 -6
- package/highlight/examples/en_US/default/scss/README.md +0 -6
- package/highlight/examples/en_US/default/typescript/README.md +0 -6
- package/highlight/examples/zh_CN/default/README.md +0 -4
- package/highlight/examples/zh_CN/default/html/README.md +0 -6
- package/highlight/examples/zh_CN/default/scss/README.md +0 -6
- package/highlight/examples/zh_CN/default/typescript/README.md +0 -6
- package/icon/examples/en_US/default/README.md +0 -4
- package/icon/examples/en_US/default/ant-design/README.md +0 -12
- package/icon/examples/en_US/default/eva/README.md +0 -11
- package/icon/examples/en_US/default/feather/README.md +0 -8
- package/icon/examples/en_US/default/font-awesome/README.md +0 -10
- package/icon/examples/en_US/default/material-design/README.md +0 -11
- package/icon/examples/zh_CN/default/README.md +0 -4
- package/icon/examples/zh_CN/default/ant-design/README.md +0 -12
- package/icon/examples/zh_CN/default/eva/README.md +0 -11
- package/icon/examples/zh_CN/default/feather/README.md +0 -8
- package/icon/examples/zh_CN/default/font-awesome/README.md +0 -10
- package/icon/examples/zh_CN/default/material-design/README.md +0 -11
- package/image/examples/en_US/default/README.md +0 -4
- package/image/examples/en_US/default/default/README.md +0 -6
- package/image/examples/en_US/default/fallback/README.md +0 -6
- package/image/examples/en_US/default/group/README.md +0 -6
- package/image/examples/en_US/default/placeholder/README.md +0 -6
- package/image/examples/zh_CN/default/README.md +0 -4
- package/image/examples/zh_CN/default/default/README.md +0 -6
- package/image/examples/zh_CN/default/fallback/README.md +0 -6
- package/image/examples/zh_CN/default/group/README.md +0 -6
- package/image/examples/zh_CN/default/placeholder/README.md +0 -6
- package/input/examples/en_US/default/README.md +0 -4
- package/input/examples/en_US/default/bordered/README.md +0 -6
- package/input/examples/en_US/default/clear/README.md +0 -6
- package/input/examples/en_US/default/default/README.md +0 -6
- package/input/examples/en_US/default/disabled/README.md +0 -6
- package/input/examples/en_US/default/focus/README.md +0 -6
- package/input/examples/en_US/default/group/README.md +0 -6
- package/input/examples/en_US/default/icon/README.md +0 -7
- package/input/examples/en_US/default/label/README.md +0 -7
- package/input/examples/en_US/default/length/README.md +0 -6
- package/input/examples/en_US/default/perpost/README.md +0 -6
- package/input/examples/en_US/default/required/README.md +0 -6
- package/input/examples/en_US/default/size/README.md +0 -6
- package/input/examples/zh_CN/default/README.md +0 -4
- package/input/examples/zh_CN/default/bordered/README.md +0 -6
- package/input/examples/zh_CN/default/clear/README.md +0 -6
- package/input/examples/zh_CN/default/default/README.md +0 -6
- package/input/examples/zh_CN/default/disabled/README.md +0 -6
- package/input/examples/zh_CN/default/focus/README.md +0 -6
- package/input/examples/zh_CN/default/group/README.md +0 -6
- package/input/examples/zh_CN/default/icon/README.md +0 -7
- package/input/examples/zh_CN/default/label/README.md +0 -7
- package/input/examples/zh_CN/default/length/README.md +0 -6
- package/input/examples/zh_CN/default/perpost/README.md +0 -6
- package/input/examples/zh_CN/default/required/README.md +0 -6
- package/input/examples/zh_CN/default/size/README.md +0 -6
- package/input-number/examples/en_US/default/README.md +0 -4
- package/input-number/examples/en_US/default/bordered/README.md +0 -6
- package/input-number/examples/en_US/default/default/README.md +0 -6
- package/input-number/examples/en_US/default/disabled/README.md +0 -6
- package/input-number/examples/en_US/default/label/README.md +0 -7
- package/input-number/examples/en_US/default/limit/README.md +0 -6
- package/input-number/examples/en_US/default/precision/README.md +0 -7
- package/input-number/examples/en_US/default/required/README.md +0 -6
- package/input-number/examples/en_US/default/size/README.md +0 -6
- package/input-number/examples/zh_CN/default/README.md +0 -4
- package/input-number/examples/zh_CN/default/bordered/README.md +0 -6
- package/input-number/examples/zh_CN/default/default/README.md +0 -6
- package/input-number/examples/zh_CN/default/disabled/README.md +0 -6
- package/input-number/examples/zh_CN/default/label/README.md +0 -7
- package/input-number/examples/zh_CN/default/limit/README.md +0 -6
- package/input-number/examples/zh_CN/default/precision/README.md +0 -7
- package/input-number/examples/zh_CN/default/required/README.md +0 -6
- package/input-number/examples/zh_CN/default/size/README.md +0 -6
- package/layout/examples/en_US/default/README.md +0 -4
- package/layout/examples/en_US/default/blend/README.md +0 -6
- package/layout/examples/en_US/default/default/README.md +0 -10
- package/layout/examples/en_US/default/flex/README.md +0 -10
- package/layout/examples/en_US/default/hidden/README.md +0 -20
- package/layout/examples/en_US/default/layout/README.md +0 -6
- package/layout/examples/en_US/default/offset/README.md +0 -8
- package/layout/examples/en_US/default/space/README.md +0 -9
- package/layout/examples/zh_CN/default/README.md +0 -4
- package/layout/examples/zh_CN/default/blend/README.md +0 -6
- package/layout/examples/zh_CN/default/default/README.md +0 -10
- package/layout/examples/zh_CN/default/flex/README.md +0 -10
- package/layout/examples/zh_CN/default/hidden/README.md +0 -20
- package/layout/examples/zh_CN/default/layout/README.md +0 -6
- package/layout/examples/zh_CN/default/offset/README.md +0 -8
- package/layout/examples/zh_CN/default/space/README.md +0 -9
- package/link/examples/en_US/default/README.md +0 -4
- package/link/examples/en_US/default/default/README.md +0 -6
- package/link/examples/en_US/default/disabled/README.md +0 -8
- package/link/examples/en_US/default/icon/README.md +0 -6
- package/link/examples/en_US/default/underline/README.md +0 -6
- package/link/examples/zh_CN/default/README.md +0 -4
- package/link/examples/zh_CN/default/default/README.md +0 -6
- package/link/examples/zh_CN/default/disabled/README.md +0 -8
- package/link/examples/zh_CN/default/icon/README.md +0 -6
- package/link/examples/zh_CN/default/underline/README.md +0 -6
- package/list/examples/en_US/default/README.md +0 -4
- package/list/examples/en_US/default/default/README.md +0 -7
- package/list/examples/en_US/default/load-more/README.md +0 -8
- package/list/examples/en_US/default/scroll/README.md +0 -8
- package/list/examples/en_US/default/size/README.md +0 -6
- package/list/examples/zh_CN/default/README.md +0 -4
- package/list/examples/zh_CN/default/default/README.md +0 -7
- package/list/examples/zh_CN/default/load-more/README.md +0 -8
- package/list/examples/zh_CN/default/scroll/README.md +0 -8
- package/list/examples/zh_CN/default/size/README.md +0 -6
- package/loading/examples/en_US/default/README.md +0 -4
- package/loading/examples/en_US/default/custom/README.md +0 -6
- package/loading/examples/en_US/default/default/README.md +0 -6
- package/loading/examples/en_US/default/full-screen/README.md +0 -6
- package/loading/examples/zh_CN/default/README.md +0 -4
- package/loading/examples/zh_CN/default/custom/README.md +0 -6
- package/loading/examples/zh_CN/default/default/README.md +0 -6
- package/loading/examples/zh_CN/default/full-screen/README.md +0 -6
- package/menu/examples/en_US/default/README.md +0 -4
- package/menu/examples/en_US/default/default/README.md +0 -6
- package/menu/examples/en_US/default/icon/README.md +0 -6
- package/menu/examples/en_US/default/layout/README.md +0 -6
- package/menu/examples/en_US/default/leaf/README.md +0 -6
- package/menu/examples/en_US/default/size/README.md +0 -6
- package/menu/examples/zh_CN/default/README.md +0 -4
- package/menu/examples/zh_CN/default/default/README.md +0 -6
- package/menu/examples/zh_CN/default/icon/README.md +0 -6
- package/menu/examples/zh_CN/default/layout/README.md +0 -6
- package/menu/examples/zh_CN/default/leaf/README.md +0 -6
- package/menu/examples/zh_CN/default/size/README.md +0 -6
- package/message/examples/en_US/default/README.md +0 -4
- package/message/examples/en_US/default/close/README.md +0 -6
- package/message/examples/en_US/default/default/README.md +0 -6
- package/message/examples/en_US/default/loading/README.md +0 -6
- package/message/examples/en_US/default/single/README.md +0 -6
- package/message/examples/en_US/default/type/README.md +0 -6
- package/message/examples/zh_CN/default/README.md +0 -4
- package/message/examples/zh_CN/default/close/README.md +0 -6
- package/message/examples/zh_CN/default/default/README.md +0 -6
- package/message/examples/zh_CN/default/loading/README.md +0 -6
- package/message/examples/zh_CN/default/single/README.md +0 -6
- package/message/examples/zh_CN/default/type/README.md +0 -6
- package/message-box/examples/en_US/default/README.md +0 -4
- package/message-box/examples/en_US/default/confirm/README.md +0 -6
- package/message-box/examples/en_US/default/custom/README.md +0 -6
- package/message-box/examples/en_US/default/default/README.md +0 -6
- package/message-box/examples/en_US/default/prompt/README.md +0 -6
- package/message-box/examples/zh_CN/default/README.md +0 -4
- package/message-box/examples/zh_CN/default/confirm/README.md +0 -6
- package/message-box/examples/zh_CN/default/custom/README.md +0 -6
- package/message-box/examples/zh_CN/default/default/README.md +0 -6
- package/message-box/examples/zh_CN/default/prompt/README.md +0 -6
- package/notification/examples/en_US/default/README.md +0 -4
- package/notification/examples/en_US/default/default/README.md +0 -6
- package/notification/examples/en_US/default/type/README.md +0 -7
- package/notification/examples/zh_CN/default/README.md +0 -4
- package/notification/examples/zh_CN/default/default/README.md +0 -6
- package/notification/examples/zh_CN/default/type/README.md +0 -7
- package/outlet/examples/en_US/default/README.md +0 -4
- package/outlet/examples/en_US/default/default/README.md +0 -6
- package/outlet/examples/zh_CN/default/README.md +0 -4
- package/outlet/examples/zh_CN/default/default/README.md +0 -6
- package/page-header/examples/en_US/default/README.md +0 -4
- package/page-header/examples/en_US/default/default/README.md +0 -6
- package/page-header/examples/zh_CN/default/README.md +0 -4
- package/page-header/examples/zh_CN/default/default/README.md +0 -6
- package/pagination/examples/en_US/default/README.md +0 -4
- package/pagination/examples/en_US/default/default/README.md +0 -6
- package/pagination/examples/en_US/default/style/README.md +0 -8
- package/pagination/examples/zh_CN/default/README.md +0 -4
- package/pagination/examples/zh_CN/default/default/README.md +0 -6
- package/pagination/examples/zh_CN/default/style/README.md +0 -10
- package/popconfirm/examples/en_US/default/README.md +0 -4
- package/popconfirm/examples/en_US/default/async-close/README.md +0 -6
- package/popconfirm/examples/en_US/default/condition/README.md +0 -6
- package/popconfirm/examples/en_US/default/default/README.md +0 -6
- package/popconfirm/examples/zh_CN/default/README.md +0 -4
- package/popconfirm/examples/zh_CN/default/async-close/README.md +0 -6
- package/popconfirm/examples/zh_CN/default/condition/README.md +0 -6
- package/popconfirm/examples/zh_CN/default/default/README.md +0 -6
- package/popover/examples/en_US/default/README.md +0 -4
- package/popover/examples/en_US/default/default/README.md +0 -6
- package/popover/examples/zh_CN/default/README.md +0 -4
- package/popover/examples/zh_CN/default/default/README.md +0 -6
- package/progress/examples/en_US/default/README.md +0 -4
- package/progress/examples/en_US/default/circle/README.md +0 -6
- package/progress/examples/en_US/default/color/README.md +0 -6
- package/progress/examples/en_US/default/dashboard/README.md +0 -6
- package/progress/examples/en_US/default/default/README.md +0 -6
- package/progress/examples/en_US/default/format/README.md +0 -6
- package/progress/examples/en_US/default/gradient/README.md +0 -6
- package/progress/examples/en_US/default/inside/README.md +0 -6
- package/progress/examples/en_US/default/steps/README.md +0 -6
- package/progress/examples/en_US/default/subsection/README.md +0 -6
- package/progress/examples/zh_CN/default/README.md +0 -4
- package/progress/examples/zh_CN/default/circle/README.md +0 -6
- package/progress/examples/zh_CN/default/color/README.md +0 -6
- package/progress/examples/zh_CN/default/dashboard/README.md +0 -6
- package/progress/examples/zh_CN/default/default/README.md +0 -6
- package/progress/examples/zh_CN/default/format/README.md +0 -6
- package/progress/examples/zh_CN/default/gradient/README.md +0 -6
- package/progress/examples/zh_CN/default/inside/README.md +0 -6
- package/progress/examples/zh_CN/default/steps/README.md +0 -6
- package/progress/examples/zh_CN/default/subsection/README.md +0 -6
- package/radio/examples/en_US/default/README.md +0 -4
- package/radio/examples/en_US/default/async/README.md +0 -6
- package/radio/examples/en_US/default/button/README.md +0 -6
- package/radio/examples/en_US/default/default/README.md +0 -9
- package/radio/examples/en_US/default/disabled/README.md +0 -9
- package/radio/examples/en_US/default/icon/README.md +0 -6
- package/radio/examples/zh_CN/default/README.md +0 -4
- package/radio/examples/zh_CN/default/async/README.md +0 -6
- package/radio/examples/zh_CN/default/button/README.md +0 -6
- package/radio/examples/zh_CN/default/default/README.md +0 -9
- package/radio/examples/zh_CN/default/disabled/README.md +0 -9
- package/radio/examples/zh_CN/default/icon/README.md +0 -6
- package/rate/examples/en_US/default/README.md +0 -4
- package/rate/examples/en_US/default/color/README.md +0 -6
- package/rate/examples/en_US/default/custom/README.md +0 -6
- package/rate/examples/en_US/default/default/README.md +0 -6
- package/rate/examples/en_US/default/disabled/README.md +0 -8
- package/rate/examples/en_US/default/half/README.md +0 -6
- package/rate/examples/zh_CN/default/README.md +0 -4
- package/rate/examples/zh_CN/default/color/README.md +0 -6
- package/rate/examples/zh_CN/default/custom/README.md +0 -6
- package/rate/examples/zh_CN/default/default/README.md +0 -6
- package/rate/examples/zh_CN/default/disabled/README.md +0 -8
- package/rate/examples/zh_CN/default/half/README.md +0 -6
- package/result/examples/en_US/default/README.md +0 -4
- package/result/examples/en_US/default/error/README.md +0 -4
- package/result/examples/en_US/default/icon/README.md +0 -4
- package/result/examples/en_US/default/img/README.md +0 -4
- package/result/examples/en_US/default/info/README.md +0 -4
- package/result/examples/en_US/default/result403/README.md +0 -4
- package/result/examples/en_US/default/result404/README.md +0 -4
- package/result/examples/en_US/default/result500/README.md +0 -4
- package/result/examples/en_US/default/success/README.md +0 -4
- package/result/examples/en_US/default/warning/README.md +0 -4
- package/result/examples/zh_CN/default/README.md +0 -4
- package/result/examples/zh_CN/default/error/README.md +0 -4
- package/result/examples/zh_CN/default/icon/README.md +0 -4
- package/result/examples/zh_CN/default/img/README.md +0 -4
- package/result/examples/zh_CN/default/info/README.md +0 -4
- package/result/examples/zh_CN/default/result403/README.md +0 -4
- package/result/examples/zh_CN/default/result404/README.md +0 -4
- package/result/examples/zh_CN/default/result500/README.md +0 -4
- package/result/examples/zh_CN/default/success/README.md +0 -4
- package/result/examples/zh_CN/default/warning/README.md +0 -4
- package/select/examples/en_US/default/README.md +0 -4
- package/select/examples/en_US/default/async/README.md +0 -7
- package/select/examples/en_US/default/bordered/README.md +0 -6
- package/select/examples/en_US/default/custom/README.md +0 -6
- package/select/examples/en_US/default/default/README.md +0 -6
- package/select/examples/en_US/default/disabled/README.md +0 -6
- package/select/examples/en_US/default/label/README.md +0 -7
- package/select/examples/en_US/default/multiple/README.md +0 -6
- package/select/examples/en_US/default/required/README.md +0 -6
- package/select/examples/en_US/default/search/README.md +0 -6
- package/select/examples/en_US/default/size/README.md +0 -6
- package/select/examples/zh_CN/default/README.md +0 -4
- package/select/examples/zh_CN/default/async/README.md +0 -7
- package/select/examples/zh_CN/default/bordered/README.md +0 -6
- package/select/examples/zh_CN/default/custom/README.md +0 -6
- package/select/examples/zh_CN/default/default/README.md +0 -6
- package/select/examples/zh_CN/default/disabled/README.md +0 -6
- package/select/examples/zh_CN/default/label/README.md +0 -7
- package/select/examples/zh_CN/default/multiple/README.md +0 -6
- package/select/examples/zh_CN/default/required/README.md +0 -6
- package/select/examples/zh_CN/default/search/README.md +0 -6
- package/select/examples/zh_CN/default/size/README.md +0 -6
- package/skeleton/examples/en_US/default/README.md +0 -4
- package/skeleton/examples/en_US/default/active/README.md +0 -6
- package/skeleton/examples/en_US/default/complex/README.md +0 -6
- package/skeleton/examples/en_US/default/default/README.md +0 -6
- package/skeleton/examples/en_US/default/list/README.md +0 -6
- package/skeleton/examples/en_US/default/loading/README.md +0 -6
- package/skeleton/examples/en_US/default/table/README.md +0 -6
- package/skeleton/examples/zh_CN/default/README.md +0 -4
- package/skeleton/examples/zh_CN/default/active/README.md +0 -6
- package/skeleton/examples/zh_CN/default/complex/README.md +0 -6
- package/skeleton/examples/zh_CN/default/default/README.md +0 -6
- package/skeleton/examples/zh_CN/default/list/README.md +0 -6
- package/skeleton/examples/zh_CN/default/loading/README.md +0 -6
- package/skeleton/examples/zh_CN/default/table/README.md +0 -6
- package/slider/examples/en_US/default/README.md +0 -4
- package/slider/examples/en_US/default/activated/README.md +0 -6
- package/slider/examples/en_US/default/custom/README.md +0 -6
- package/slider/examples/en_US/default/default/README.md +0 -6
- package/slider/examples/en_US/default/expand/README.md +0 -7
- package/slider/examples/en_US/default/scroll/README.md +0 -6
- package/slider/examples/en_US/default/size/README.md +0 -6
- package/slider/examples/zh_CN/default/README.md +0 -4
- package/slider/examples/zh_CN/default/activated/README.md +0 -6
- package/slider/examples/zh_CN/default/custom/README.md +0 -6
- package/slider/examples/zh_CN/default/default/README.md +0 -6
- package/slider/examples/zh_CN/default/expand/README.md +0 -7
- package/slider/examples/zh_CN/default/scroll/README.md +0 -6
- package/slider/examples/zh_CN/default/size/README.md +0 -6
- package/slider-select/examples/en_US/default/README.md +0 -4
- package/slider-select/examples/en_US/default/default/README.md +0 -6
- package/slider-select/examples/en_US/default/disabled/README.md +0 -6
- package/slider-select/examples/en_US/default/label/README.md +0 -7
- package/slider-select/examples/en_US/default/limit/README.md +0 -6
- package/slider-select/examples/en_US/default/precision/README.md +0 -7
- package/slider-select/examples/zh_CN/default/README.md +0 -4
- package/slider-select/examples/zh_CN/default/default/README.md +0 -6
- package/slider-select/examples/zh_CN/default/disabled/README.md +0 -6
- package/slider-select/examples/zh_CN/default/label/README.md +0 -7
- package/slider-select/examples/zh_CN/default/limit/README.md +0 -6
- package/slider-select/examples/zh_CN/default/precision/README.md +0 -7
- package/statistic/examples/en_US/default/README.md +0 -4
- package/statistic/examples/en_US/default/default/README.md +0 -6
- package/statistic/examples/en_US/default/down/README.md +0 -6
- package/statistic/examples/en_US/default/prefix/README.md +0 -7
- package/statistic/examples/zh_CN/default/README.md +0 -4
- package/statistic/examples/zh_CN/default/default/README.md +0 -6
- package/statistic/examples/zh_CN/default/down/README.md +0 -6
- package/statistic/examples/zh_CN/default/prefix/README.md +0 -7
- package/steps/examples/en_US/default/README.md +0 -4
- package/steps/examples/en_US/default/custom/README.md +0 -6
- package/steps/examples/en_US/default/default/README.md +0 -6
- package/steps/examples/en_US/default/description/README.md +0 -6
- package/steps/examples/en_US/default/icon/README.md +0 -6
- package/steps/examples/en_US/default/index/README.md +0 -6
- package/steps/examples/en_US/default/layout/README.md +0 -6
- package/steps/examples/en_US/default/node-status/README.md +0 -6
- package/steps/examples/en_US/default/status/README.md +0 -6
- package/steps/examples/en_US/default/tabs/README.md +0 -6
- package/steps/examples/zh_CN/default/README.md +0 -4
- package/steps/examples/zh_CN/default/custom/README.md +0 -6
- package/steps/examples/zh_CN/default/default/README.md +0 -6
- package/steps/examples/zh_CN/default/description/README.md +0 -6
- package/steps/examples/zh_CN/default/icon/README.md +0 -6
- package/steps/examples/zh_CN/default/index/README.md +0 -6
- package/steps/examples/zh_CN/default/layout/README.md +0 -6
- package/steps/examples/zh_CN/default/node-status/README.md +0 -6
- package/steps/examples/zh_CN/default/status/README.md +0 -6
- package/steps/examples/zh_CN/default/tabs/README.md +0 -6
- package/switch/examples/en_US/default/README.md +0 -4
- package/switch/examples/en_US/default/default/README.md +0 -6
- package/switch/examples/en_US/default/disabled/README.md +0 -6
- package/switch/examples/en_US/default/label/README.md +0 -7
- package/switch/examples/zh_CN/default/README.md +0 -4
- package/switch/examples/zh_CN/default/default/README.md +0 -6
- package/switch/examples/zh_CN/default/disabled/README.md +0 -6
- package/switch/examples/zh_CN/default/label/README.md +0 -7
- package/table/examples/en_US/default/README.md +0 -4
- package/table/examples/en_US/default/adaption/README.md +0 -6
- package/table/examples/en_US/default/bordered/README.md +0 -6
- package/table/examples/en_US/default/checkbox/README.md +0 -7
- package/table/examples/en_US/default/config/README.md +0 -6
- package/table/examples/en_US/default/custom/README.md +0 -10
- package/table/examples/en_US/default/default/README.md +0 -7
- package/table/examples/en_US/default/drag-width/README.md +0 -6
- package/table/examples/en_US/default/edit/README.md +0 -7
- package/table/examples/en_US/default/expand/README.md +0 -8
- package/table/examples/en_US/default/fix/README.md +0 -6
- package/table/examples/en_US/default/head/README.md +0 -6
- package/table/examples/en_US/default/header/README.md +0 -6
- package/table/examples/en_US/default/row-size/README.md +0 -6
- package/table/examples/en_US/default/rowclass/README.md +0 -6
- package/table/examples/en_US/default/scroll/README.md +0 -7
- package/table/examples/en_US/default/search/README.md +0 -6
- package/table/examples/zh_CN/default/README.md +0 -4
- package/table/examples/zh_CN/default/adaption/README.md +0 -6
- package/table/examples/zh_CN/default/bordered/README.md +0 -6
- package/table/examples/zh_CN/default/checkbox/README.md +0 -8
- package/table/examples/zh_CN/default/config/README.md +0 -6
- package/table/examples/zh_CN/default/custom/README.md +0 -10
- package/table/examples/zh_CN/default/default/README.md +0 -7
- package/table/examples/zh_CN/default/drag-width/README.md +0 -6
- package/table/examples/zh_CN/default/edit/README.md +0 -7
- package/table/examples/zh_CN/default/expand/README.md +0 -8
- package/table/examples/zh_CN/default/fix/README.md +0 -6
- package/table/examples/zh_CN/default/head/README.md +0 -6
- package/table/examples/zh_CN/default/header/README.md +0 -6
- package/table/examples/zh_CN/default/row-size/README.md +0 -6
- package/table/examples/zh_CN/default/rowclass/README.md +0 -6
- package/table/examples/zh_CN/default/scroll/README.md +0 -7
- package/table/examples/zh_CN/default/search/README.md +0 -6
- package/tabs/examples/en_US/default/README.md +0 -4
- package/tabs/examples/en_US/default/action/README.md +0 -6
- package/tabs/examples/en_US/default/card/README.md +0 -6
- package/tabs/examples/en_US/default/custom/README.md +0 -6
- package/tabs/examples/en_US/default/default/README.md +0 -6
- package/tabs/examples/en_US/default/expand/README.md +0 -6
- package/tabs/examples/en_US/default/layout/README.md +0 -6
- package/tabs/examples/en_US/default/tag/README.md +0 -6
- package/tabs/examples/zh_CN/default/README.md +0 -4
- package/tabs/examples/zh_CN/default/action/README.md +0 -6
- package/tabs/examples/zh_CN/default/card/README.md +0 -6
- package/tabs/examples/zh_CN/default/custom/README.md +0 -6
- package/tabs/examples/zh_CN/default/default/README.md +0 -6
- package/tabs/examples/zh_CN/default/expand/README.md +0 -6
- package/tabs/examples/zh_CN/default/layout/README.md +0 -6
- package/tabs/examples/zh_CN/default/tag/README.md +0 -6
- package/tag/examples/en_US/default/README.md +0 -4
- package/tag/examples/en_US/default/bordered/README.md +0 -6
- package/tag/examples/en_US/default/checked/README.md +0 -6
- package/tag/examples/en_US/default/close/README.md +0 -6
- package/tag/examples/en_US/default/color/README.md +0 -6
- package/tag/examples/en_US/default/default/README.md +0 -6
- package/tag/examples/en_US/default/size/README.md +0 -6
- package/tag/examples/zh_CN/default/README.md +0 -4
- package/tag/examples/zh_CN/default/bordered/README.md +0 -6
- package/tag/examples/zh_CN/default/checked/README.md +0 -6
- package/tag/examples/zh_CN/default/close/README.md +0 -6
- package/tag/examples/zh_CN/default/color/README.md +0 -6
- package/tag/examples/zh_CN/default/default/README.md +0 -6
- package/tag/examples/zh_CN/default/size/README.md +0 -6
- package/text-retract/examples/en_US/default/README.md +0 -4
- package/text-retract/examples/en_US/default/default/README.md +0 -6
- package/text-retract/examples/zh_CN/default/README.md +0 -4
- package/text-retract/examples/zh_CN/default/default/README.md +0 -6
- package/textarea/examples/en_US/default/README.md +0 -4
- package/textarea/examples/en_US/default/clear/README.md +0 -6
- package/textarea/examples/en_US/default/default/README.md +0 -6
- package/textarea/examples/en_US/default/disabled/README.md +0 -6
- package/textarea/examples/en_US/default/icon/README.md +0 -7
- package/textarea/examples/en_US/default/label/README.md +0 -7
- package/textarea/examples/en_US/default/length/README.md +0 -6
- package/textarea/examples/en_US/default/required/README.md +0 -6
- package/textarea/examples/zh_CN/default/README.md +0 -4
- package/textarea/examples/zh_CN/default/clear/README.md +0 -6
- package/textarea/examples/zh_CN/default/default/README.md +0 -6
- package/textarea/examples/zh_CN/default/disabled/README.md +0 -6
- package/textarea/examples/zh_CN/default/icon/README.md +0 -7
- package/textarea/examples/zh_CN/default/label/README.md +0 -7
- package/textarea/examples/zh_CN/default/length/README.md +0 -6
- package/textarea/examples/zh_CN/default/required/README.md +0 -6
- package/theme/examples/en_US/default/README.md +0 -4
- package/theme/examples/en_US/default/default/README.md +0 -8
- package/theme/examples/zh_CN/default/README.md +0 -4
- package/theme/examples/zh_CN/default/default/README.md +0 -8
- package/time-ago/examples/en_US/default/README.md +0 -4
- package/time-ago/examples/en_US/default/default/README.md +0 -4
- package/time-ago/examples/zh_CN/default/README.md +0 -4
- package/time-ago/examples/zh_CN/default/default/README.md +0 -4
- package/time-picker/examples/en_US/default/README.md +0 -4
- package/time-picker/examples/en_US/default/bordered/README.md +0 -6
- package/time-picker/examples/en_US/default/default/README.md +0 -7
- package/time-picker/examples/en_US/default/disabled/README.md +0 -6
- package/time-picker/examples/en_US/default/hour-minute/README.md +0 -6
- package/time-picker/examples/en_US/default/label/README.md +0 -7
- package/time-picker/examples/en_US/default/required/README.md +0 -6
- package/time-picker/examples/en_US/default/size/README.md +0 -6
- package/time-picker/examples/zh_CN/default/README.md +0 -4
- package/time-picker/examples/zh_CN/default/bordered/README.md +0 -6
- package/time-picker/examples/zh_CN/default/default/README.md +0 -7
- package/time-picker/examples/zh_CN/default/disabled/README.md +0 -6
- package/time-picker/examples/zh_CN/default/hour-minute/README.md +0 -6
- package/time-picker/examples/zh_CN/default/label/README.md +0 -7
- package/time-picker/examples/zh_CN/default/required/README.md +0 -6
- package/time-picker/examples/zh_CN/default/size/README.md +0 -6
- package/time-range/examples/en_US/default/README.md +0 -4
- package/time-range/examples/en_US/default/default/README.md +0 -6
- package/time-range/examples/zh_CN/default/README.md +0 -4
- package/time-range/examples/zh_CN/default/default/README.md +0 -6
- package/timeline/examples/en_US/default/README.md +0 -4
- package/timeline/examples/en_US/default/color/README.md +0 -6
- package/timeline/examples/en_US/default/custom/README.md +0 -6
- package/timeline/examples/en_US/default/default/README.md +0 -6
- package/timeline/examples/en_US/default/icon/README.md +0 -6
- package/timeline/examples/en_US/default/loading/README.md +0 -6
- package/timeline/examples/en_US/default/mode/README.md +0 -6
- package/timeline/examples/en_US/default/size/README.md +0 -6
- package/timeline/examples/en_US/default/type/README.md +0 -6
- package/timeline/examples/zh_CN/default/README.md +0 -4
- package/timeline/examples/zh_CN/default/color/README.md +0 -6
- package/timeline/examples/zh_CN/default/custom/README.md +0 -6
- package/timeline/examples/zh_CN/default/default/README.md +0 -6
- package/timeline/examples/zh_CN/default/icon/README.md +0 -6
- package/timeline/examples/zh_CN/default/loading/README.md +0 -6
- package/timeline/examples/zh_CN/default/mode/README.md +0 -6
- package/timeline/examples/zh_CN/default/size/README.md +0 -6
- package/timeline/examples/zh_CN/default/type/README.md +0 -6
- package/tooltip/examples/en_US/default/README.md +0 -4
- package/tooltip/examples/en_US/default/default/README.md +0 -6
- package/tooltip/examples/zh_CN/default/README.md +0 -4
- package/tooltip/examples/zh_CN/default/default/README.md +0 -6
- package/transfer/examples/en_US/default/README.md +0 -4
- package/transfer/examples/en_US/default/custom/README.md +0 -6
- package/transfer/examples/en_US/default/default/README.md +0 -6
- package/transfer/examples/en_US/default/drag/README.md +0 -6
- package/transfer/examples/zh_CN/default/README.md +0 -4
- package/transfer/examples/zh_CN/default/custom/README.md +0 -6
- package/transfer/examples/zh_CN/default/default/README.md +0 -6
- package/transfer/examples/zh_CN/default/drag/README.md +0 -6
- package/tree/examples/en_US/default/README.md +0 -4
- package/tree/examples/en_US/default/checkbox/README.md +0 -6
- package/tree/examples/en_US/default/control/README.md +0 -6
- package/tree/examples/en_US/default/custom/README.md +0 -6
- package/tree/examples/en_US/default/default/README.md +0 -4
- package/tree/examples/en_US/default/height/README.md +0 -7
- package/tree/examples/en_US/default/lazy/README.md +0 -6
- package/tree/examples/en_US/default/open/README.md +0 -6
- package/tree/examples/en_US/default/status/README.md +0 -6
- package/tree/examples/en_US/default/virtual-scroll/README.md +0 -7
- package/tree/examples/zh_CN/default/README.md +0 -4
- package/tree/examples/zh_CN/default/checkbox/README.md +0 -6
- package/tree/examples/zh_CN/default/control/README.md +0 -6
- package/tree/examples/zh_CN/default/custom/README.md +0 -6
- package/tree/examples/zh_CN/default/default/README.md +0 -4
- package/tree/examples/zh_CN/default/height/README.md +0 -7
- package/tree/examples/zh_CN/default/lazy/README.md +0 -6
- package/tree/examples/zh_CN/default/open/README.md +0 -6
- package/tree/examples/zh_CN/default/status/README.md +0 -6
- package/tree/examples/zh_CN/default/virtual-scroll/README.md +0 -7
- package/tree-file/examples/en_US/default/README.md +0 -4
- package/tree-file/examples/en_US/default/default/README.md +0 -6
- package/tree-file/examples/zh_CN/default/README.md +0 -4
- package/tree-file/examples/zh_CN/default/default/README.md +0 -6
- package/tree-select/examples/en_US/default/README.md +0 -4
- package/tree-select/examples/en_US/default/async/README.md +0 -6
- package/tree-select/examples/en_US/default/bordered/README.md +0 -6
- package/tree-select/examples/en_US/default/custom/README.md +0 -6
- package/tree-select/examples/en_US/default/default/README.md +0 -6
- package/tree-select/examples/en_US/default/disabled/README.md +0 -6
- package/tree-select/examples/en_US/default/label/README.md +0 -6
- package/tree-select/examples/en_US/default/multiple/README.md +0 -6
- package/tree-select/examples/en_US/default/path/README.md +0 -6
- package/tree-select/examples/en_US/default/required/README.md +0 -6
- package/tree-select/examples/en_US/default/scroll/README.md +0 -6
- package/tree-select/examples/en_US/default/search/README.md +0 -7
- package/tree-select/examples/en_US/default/size/README.md +0 -6
- package/tree-select/examples/zh_CN/default/README.md +0 -4
- package/tree-select/examples/zh_CN/default/async/README.md +0 -6
- package/tree-select/examples/zh_CN/default/bordered/README.md +0 -6
- package/tree-select/examples/zh_CN/default/custom/README.md +0 -6
- package/tree-select/examples/zh_CN/default/default/README.md +0 -6
- package/tree-select/examples/zh_CN/default/disabled/README.md +0 -6
- package/tree-select/examples/zh_CN/default/label/README.md +0 -6
- package/tree-select/examples/zh_CN/default/multiple/README.md +0 -6
- package/tree-select/examples/zh_CN/default/path/README.md +0 -6
- package/tree-select/examples/zh_CN/default/required/README.md +0 -6
- package/tree-select/examples/zh_CN/default/scroll/README.md +0 -6
- package/tree-select/examples/zh_CN/default/search/README.md +0 -7
- package/tree-select/examples/zh_CN/default/size/README.md +0 -6
- package/typography/examples/en_US/default/README.md +0 -4
- package/typography/examples/en_US/default/default/README.md +0 -6
- package/typography/examples/en_US/default/line-height/README.md +0 -6
- package/typography/examples/en_US/default/size/README.md +0 -6
- package/typography/examples/zh_CN/default/README.md +0 -4
- package/typography/examples/zh_CN/default/default/README.md +0 -6
- package/typography/examples/zh_CN/default/line-height/README.md +0 -6
- package/typography/examples/zh_CN/default/size/README.md +0 -6
- package/upload/examples/en_US/default/README.md +0 -4
- package/upload/examples/en_US/default/custom/README.md +0 -6
- package/upload/examples/en_US/default/default/README.md +0 -8
- package/upload/examples/en_US/default/disabled/README.md +0 -9
- package/upload/examples/en_US/default/img/README.md +0 -6
- package/upload/examples/zh_CN/default/README.md +0 -4
- package/upload/examples/zh_CN/default/custom/README.md +0 -6
- package/upload/examples/zh_CN/default/default/README.md +0 -8
- package/upload/examples/zh_CN/default/disabled/README.md +0 -9
- package/upload/examples/zh_CN/default/img/README.md +0 -6
|
@@ -524,6 +524,7 @@ export class XTreeSelectComponent extends XTreeSelectProperty {
|
|
|
524
524
|
search: this.search,
|
|
525
525
|
virtualScroll: this.virtualScroll,
|
|
526
526
|
size: this.size,
|
|
527
|
+
onlyLeaf: this.onlyLeaf,
|
|
527
528
|
expandedLevel: this.expandedLevel,
|
|
528
529
|
inputChange: this.inputChange,
|
|
529
530
|
destroyPortal: () => this.destroyPortal(),
|
|
@@ -629,4 +630,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
629
630
|
type: ViewChild,
|
|
630
631
|
args: ['multipleInput']
|
|
631
632
|
}] } });
|
|
632
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS1zZWxlY3QvdHJlZS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS1zZWxlY3QvdHJlZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBT3ZCLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakcsT0FBTyxFQUNMLFFBQVEsRUFDUixhQUFhLEVBQ2IsU0FBUyxFQUNULFFBQVEsRUFDUixXQUFXLEVBR1gsY0FBYyxFQUNkLFdBQVcsRUFDWCxRQUFRLEVBQ1IsU0FBUyxFQUNULE9BQU8sRUFDUCxPQUFPLEVBQ1IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQXFDLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFakcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7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OlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBSZW5kZXJlcjIsXHJcbiAgRWxlbWVudFJlZixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBUZW1wbGF0ZVJlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYVHJlZVNlbGVjdE5vZGUsIFhUcmVlU2VsZWN0UHJvcGVydHksIFhUcmVlU2VsZWN0UHJlZml4IH0gZnJvbSAnLi90cmVlLXNlbGVjdC5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7XHJcbiAgWElzRW1wdHksXHJcbiAgWElzT2JzZXJ2YWJsZSxcclxuICBYSXNDaGFuZ2UsXHJcbiAgWFNldERhdGEsXHJcbiAgWENsZWFyQ2xhc3MsXHJcbiAgWENvbmZpZ1NlcnZpY2UsXHJcbiAgWFBvc2l0aW9uVG9wQm90dG9tLFxyXG4gIFhJc09iamVjdEFycmF5LFxyXG4gIFhJc0Z1bmN0aW9uLFxyXG4gIFhJc0FycmF5LFxyXG4gIFhJc1N0cmluZyxcclxuICBYUmVtb3ZlLFxyXG4gIFhSZXNpemVcclxufSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgWFBvcnRhbFNlcnZpY2UsIFhQb3J0YWxPdmVybGF5UmVmLCBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24gfSBmcm9tICdAbmctbmVzdC91aS9wb3J0YWwnO1xyXG5pbXBvcnQgeyBYSW5wdXRDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9pbnB1dCc7XHJcbmltcG9ydCB7IFhUcmVlU2VsZWN0UG9ydGFsQ29tcG9uZW50IH0gZnJvbSAnLi90cmVlLXNlbGVjdC1wb3J0YWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3ZlcmxheSwgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LCBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UsIE92ZXJsYXlDb25maWcgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCwgdGhyb3R0bGVUaW1lLCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IERPV05fQVJST1csIFVQX0FSUk9XLCBFTlRFUiwgTUFDX0VOVEVSLCBMRUZUX0FSUk9XLCBSSUdIVF9BUlJPVywgVEFCLCBCQUNLU1BBQ0UgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xyXG5pbXBvcnQgeyBYVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0BuZy1uZXN0L3VpL2Jhc2UtZm9ybSc7XHJcbmltcG9ydCB7IFhJMThuVHJlZVNlbGVjdCwgWEkxOG5TZXJ2aWNlIH0gZnJvbSAnQG5nLW5lc3QvdWkvaTE4bic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WFRyZWVTZWxlY3RQcmVmaXh9YCxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHJlZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RyZWUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtYVmFsdWVBY2Nlc3NvcihYVHJlZVNlbGVjdENvbXBvbmVudCldXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZVNlbGVjdENvbXBvbmVudCBleHRlbmRzIFhUcmVlU2VsZWN0UHJvcGVydHkgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRDb20nLCB7IHN0YXRpYzogdHJ1ZSB9KSBpbnB1dENvbSE6IFhJbnB1dENvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCd0cmVlU2VsZWN0JywgeyBzdGF0aWM6IHRydWUgfSkgdHJlZVNlbGVjdCE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnbXVsdGlwbGVWYWx1ZVRwbCcsIHsgc3RhdGljOiB0cnVlIH0pIG11bHRpcGxlVmFsdWVUcGwhOiBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuICBAVmlld0NoaWxkKCdtdWx0aXBsZUlucHV0JykgbXVsdGlwbGVJbnB1dCE6IFhJbnB1dENvbXBvbmVudDtcclxuXHJcbiAgZ2V0IGdldFJlYWRvbmx5KCkge1xyXG4gICAgcmV0dXJuICh0aGlzLnJlYWRvbmx5ICYmICF0aGlzLnNlYXJjaCkgfHwgKEJvb2xlYW4odGhpcy5zZWFyY2gpICYmIEJvb2xlYW4odGhpcy5tdWx0aXBsZSkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldE1heFRhZ0NvbnRlbnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tYXhUYWdDb250ZW50IHx8IHRoaXMubG9jYWxlLm1heFRhZ0NvbnRlbnQ7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIGlmIChYSXNFbXB0eSh2YWx1ZSkpIHtcclxuICAgICAgICB2YWx1ZSA9IFtdO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghWElzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgICAgdmFsdWUgPSBbdmFsdWVdO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMub2JqZWN0QXJyYXkgPSBYSXNPYmplY3RBcnJheSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5uZXh0KHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgcmVhZG9ubHkgPSB0cnVlO1xyXG4gIGVudGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2hvd0NsZWFyYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGRpc3BsYXlWYWx1ZTogYW55ID0gJyc7XHJcbiAgbXVsdGlwbGVTZWFyY2hWYWx1ZSA9ICcnO1xyXG4gIG5vZGVzOiBYVHJlZVNlbGVjdE5vZGVbXSA9IFtdO1xyXG4gIHNlbGVjdGVkTm9kZXM6IFhUcmVlU2VsZWN0Tm9kZVtdID0gW107XHJcbiAgZGlzcGxheU5vZGVzOiBYVHJlZVNlbGVjdE5vZGVbXSA9IFtdO1xyXG4gIGRpc3BsYXlNb3JlID0gJyc7XHJcbiAgc2hvd0Rpc3BsYXlNb3JlID0gZmFsc2U7XHJcbiAgc2VhcmNoTm9kZXM6IFhUcmVlU2VsZWN0Tm9kZVtdID0gW107XHJcbiAgY2xvbmVOb2RlcyE6IFhUcmVlU2VsZWN0Tm9kZVtdO1xyXG4gIHBvcnRhbCE6IFhQb3J0YWxPdmVybGF5UmVmPFhUcmVlU2VsZWN0UG9ydGFsQ29tcG9uZW50PjtcclxuICBpY29uOiBzdHJpbmcgPSAnZnRvLWNoZXZyb24tZG93bic7XHJcbiAgaWNvblNwaW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBib3ghOiBET01SZWN0O1xyXG4gIHByb3RhbEhlaWdodCE6IG51bWJlcjtcclxuICBtYXhOb2RlczogbnVtYmVyID0gNjtcclxuICBpbnB1dFBhZGRpbmcgPSAwLjQ7XHJcbiAgcHJvdGFsVG9ib3R0b206IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGFzeW5jTG9hZGluZyA9IGZhbHNlO1xyXG4gIGFuaW1hdGluZyA9IGZhbHNlO1xyXG4gIG9iamVjdEFycmF5ID0gZmFsc2U7XHJcbiAgc2VsZWN0ZWRTdXJwbHVzID0gMDtcclxuICBzZWxlY3RlZFRvdGFsID0gMDtcclxuICBsb2NhbGU6IFhJMThuVHJlZVNlbGVjdCA9IHt9O1xyXG4gIG92ZXJyaWRlIHZhbHVlVHBsQ29udGV4dDogeyAkbm9kZTogYW55OyAkaXNWYWx1ZTogYm9vbGVhbiB9ID0geyAkbm9kZTogbnVsbCwgJGlzVmFsdWU6IHRydWUgfTtcclxuICB2YWx1ZUNoYW5nZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuICBwb3NpdGlvbkNoYW5nZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuICBjbG9zZVN1YmplY3Q6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIGRhdGFDaGFuZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFhUcmVlU2VsZWN0Tm9kZVtdPihbXSk7XHJcbiAga2V5ZG93blN1YmplY3Q6IFN1YmplY3Q8S2V5Ym9hcmRFdmVudD4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIGlucHV0Q2hhbmdlOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIGNvbXBvc2l0aW9uOiBib29sZWFuID0gZmFsc2U7XHJcbiAgbXVsdGlwbGVJbnB1dFNpemVDaGFuZ2UgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XHJcbiAgcHJpdmF0ZSBfdW5TdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlciE6IFJlc2l6ZU9ic2VydmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHVibGljIG92ZXJyaWRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHBvcnRhbFNlcnZpY2U6IFhQb3J0YWxTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHVibGljIGkxOG46IFhJMThuU2VydmljZSxcclxuICAgIHB1YmxpYyBjb25maWdTZXJ2aWNlOiBYQ29uZmlnU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zZXRGbGV4KHRoaXMudHJlZVNlbGVjdC5uYXRpdmVFbGVtZW50LCB0aGlzLnJlbmRlcmVyLCB0aGlzLmp1c3RpZnksIHRoaXMuYWxpZ24sIHRoaXMuZGlyZWN0aW9uKTtcclxuICAgIHRoaXMuc2V0Q2xhc3NNYXAoKTtcclxuICAgIHRoaXMuc2V0U3ViamVjdCgpO1xyXG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy52YWx1ZVRwbCA9IHRoaXMubXVsdGlwbGVWYWx1ZVRwbDtcclxuICAgICAgdGhpcy5pbnB1dFBhZGRpbmcgPSAwLjEyNTtcclxuICAgIH1cclxuICAgIHRoaXMuaTE4bi5sb2NhbGVDaGFuZ2VcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKCh4KSA9PiB4LnRyZWVTZWxlY3QgYXMgWEkxOG5UcmVlU2VsZWN0KSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLmxvY2FsZSA9IHg7XHJcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBkYXRhIH0gPSBjaGFuZ2VzO1xyXG4gICAgWElzQ2hhbmdlKGRhdGEpICYmIHRoaXMuc2V0RGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5zZXRQb3J0YWwoKTtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlICYmIHRoaXMuaW5wdXRDb20uaW5wdXRWYWx1ZVJlZikge1xyXG4gICAgICBYUmVzaXplKHRoaXMuaW5wdXRDb20uaW5wdXRWYWx1ZVJlZi5uYXRpdmVFbGVtZW50KVxyXG4gICAgICAgIC5waXBlKGRlYm91bmNlVGltZSgzMCksIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyID0geC5yZXNpemVPYnNlcnZlcjtcclxuICAgICAgICAgIHRoaXMuc2V0TXV0aXBsZUlucHV0U2l6ZSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl91blN1YmplY3QubmV4dCgpO1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xyXG4gIH1cclxuXHJcbiAgc2V0Q2xhc3NNYXAoKSB7XHJcbiAgICBYQ2xlYXJDbGFzcyh0aGlzLmxhYmVsTWFwKTtcclxuICAgIHRoaXMubGFiZWxNYXBbYHgtdGV4dC1hbGlnbi0ke3RoaXMubGFiZWxBbGlnbn1gXSA9IHRoaXMubGFiZWxBbGlnbiA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHNldERhdGEoKSB7XHJcbiAgICBpZiAodGhpcy5hc3luYykgcmV0dXJuO1xyXG4gICAgWFNldERhdGE8WFRyZWVTZWxlY3ROb2RlPih0aGlzLmRhdGEsIHRoaXMuX3VuU3ViamVjdCkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMubm9kZXMgPSB4O1xyXG4gICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLm5vZGVzKTtcclxuICAgICAgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICAgICAgdGhpcy5zZXRQb3J0YWwoKTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRTdWJqZWN0KCkge1xyXG4gICAgdGhpcy5jbG9zZVN1YmplY3QucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5jbG9zZVBvcnRhbCgpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmlucHV0Q2hhbmdlLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuZGVib3VuY2VUaW1lIGFzIG51bWJlciksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgdGhpcy5tb2RlbENoYW5nZSh4KTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5rZXlkb3duU3ViamVjdC5waXBlKHRocm90dGxlVGltZSgxMCksIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgY29uc3Qga2V5Q29kZSA9IHgua2V5Q29kZTtcclxuICAgICAgaWYgKCF0aGlzLnBvcnRhbEF0dGFjaGVkKCkgJiYgW0RPV05fQVJST1csIFVQX0FSUk9XLCBMRUZUX0FSUk9XLCBSSUdIVF9BUlJPVywgRU5URVIsIE1BQ19FTlRFUiwgQkFDS1NQQUNFXS5pbmNsdWRlcyhrZXlDb2RlKSkge1xyXG4gICAgICAgIHRoaXMuaW5wdXRDaGFuZ2UubmV4dCh0aGlzLmRpc3BsYXlWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgKHRoaXMucG9ydGFsQXR0YWNoZWQoKSAmJiBbRVNDQVBFXS5pbmNsdWRlcyhrZXlDb2RlKSkge1xyXG4gICAgICAvLyAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgLy8gfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLm11bHRpcGxlSW5wdXRTaXplQ2hhbmdlLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZUlucHV0KSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQgPSB0aGlzLm11bHRpcGxlSW5wdXQ/LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGlucHV0LCAnd2lkdGgnLCBgJHt4fXB4YCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0TXV0aXBsZUlucHV0U2l6ZSgpIHtcclxuICAgIGNvbnN0IGl2ZiA9IHRoaXMuaW5wdXRDb20uaW5wdXRWYWx1ZVJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxEaXZFbGVtZW50O1xyXG4gICAgbGV0IHsgY2xpZW50V2lkdGgsIHNjcm9sbEhlaWdodCB9ID0gaXZmO1xyXG4gICAgY29uc3QgbGVuID0gaXZmLmNoaWxkcmVuLmxlbmd0aDtcclxuICAgIGxldCBsYXN0Um93VGFnVG9wID0gLTE7XHJcbiAgICBsZXQgbGluZXMgPSAxO1xyXG4gICAgbGV0IHJvd1RhZ1RvcCA9IC0xO1xyXG4gICAgbGV0IGxhc3RSb3dUYWdzV2lkdGggPSAwO1xyXG4gICAgbGV0IG1hcmdpbkxlZnQgPSAwO1xyXG4gICAgbGV0IG1hcmdpblRvcCA9IDA7XHJcbiAgICBmb3IgKGxldCBpID0gbGVuIC0gMTsgaSA+PSAwOyBpLS0pIHtcclxuICAgICAgY29uc3QgZWxlID0gaXZmLmNoaWxkcmVuW2ldIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICBpZiAoZWxlLnRhZ05hbWUgPT09ICdYLVRBRycpIHtcclxuICAgICAgICBjb25zdCB7IG9mZnNldFRvcCwgb2Zmc2V0V2lkdGggfSA9IGVsZTtcclxuICAgICAgICBjb25zdCBzdHlsZSA9IGdldENvbXB1dGVkU3R5bGUoZWxlKTtcclxuICAgICAgICBtYXJnaW5MZWZ0ID0gTnVtYmVyKHN0eWxlLm1hcmdpbkxlZnQucmVwbGFjZSgncHgnLCAnJykpO1xyXG4gICAgICAgIG1hcmdpblRvcCA9IE51bWJlcihzdHlsZS5tYXJnaW5Ub3AucmVwbGFjZSgncHgnLCAnJykpO1xyXG4gICAgICAgIGlmIChyb3dUYWdUb3AgPT09IC0xKSB7XHJcbiAgICAgICAgICByb3dUYWdUb3AgPSBvZmZzZXRUb3A7XHJcbiAgICAgICAgfSBlbHNlIGlmIChyb3dUYWdUb3AgIT09IG9mZnNldFRvcCkge1xyXG4gICAgICAgICAgbGluZXMrKztcclxuICAgICAgICAgIHJvd1RhZ1RvcCA9IG9mZnNldFRvcDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGxhc3RSb3dUYWdUb3AgPT09IC0xKSB7XHJcbiAgICAgICAgICBsYXN0Um93VGFnVG9wID0gb2Zmc2V0VG9wO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobGFzdFJvd1RhZ1RvcCA9PT0gb2Zmc2V0VG9wKSB7XHJcbiAgICAgICAgICBsYXN0Um93VGFnc1dpZHRoICs9IG9mZnNldFdpZHRoICsgbWFyZ2luTGVmdDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGNvbnN0IGhlaWdodCA9IHNjcm9sbEhlaWdodCArIChsaW5lcyA+IDEgPyBtYXJnaW5Ub3AgOiAwKTtcclxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5pbnB1dENvbS5pbnB1dFJlZi5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgYCR7aGVpZ2h0fXB4YCk7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZUlucHV0KSB7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVJbnB1dFNpemVDaGFuZ2UubmV4dChjbGllbnRXaWR0aCAtIGxhc3RSb3dUYWdzV2lkdGggLSBtYXJnaW5MZWZ0KTtcclxuICAgIH1cclxuICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy51cGRhdGVQb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgbWVudGVyKCkge1xyXG4gICAgdGhpcy5lbnRlciA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5jbGVhcmFibGUgfHwgdGhpcy5pY29uU3BpbikgcmV0dXJuO1xyXG4gICAgaWYgKCFYSXNFbXB0eSh0aGlzLmRpc3BsYXlWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5pY29uID0gJyc7XHJcbiAgICAgIHRoaXMuc2hvd0NsZWFyYWJsZSA9IHRydWU7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1sZWF2ZSgpIHtcclxuICAgIHRoaXMuZW50ZXIgPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8ICF0aGlzLmNsZWFyYWJsZSB8fCB0aGlzLmljb25TcGluKSByZXR1cm47XHJcbiAgICBpZiAodGhpcy5jbGVhcmFibGUpIHtcclxuICAgICAgdGhpcy5pY29uID0gJ2Z0by1jaGV2cm9uLWRvd24nO1xyXG4gICAgICB0aGlzLnNob3dDbGVhcmFibGUgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZyB8IG51bWJlcikge1xyXG4gICAgaWYgKFhJc0Z1bmN0aW9uKHRoaXMuZGF0YSkpIHtcclxuICAgICAgaWYgKCF0aGlzLnBvcnRhbEF0dGFjaGVkKCkpIHtcclxuICAgICAgICB0aGlzLnNob3dQb3J0YWwoKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmljb24gPSAnZnRvLWxvYWRlcic7XHJcbiAgICAgIHRoaXMuaWNvblNwaW4gPSB0cnVlO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIFhTZXREYXRhPFhUcmVlU2VsZWN0Tm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QsIHRydWUsIHZhbHVlIGFzIGFueSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgdGhpcy5pY29uID0gJyc7XHJcbiAgICAgICAgdGhpcy5pY29uU3BpbiA9IGZhbHNlO1xyXG4gICAgICAgIGlmICghdGhpcy5lbnRlciAmJiB0aGlzLmNsZWFyYWJsZSkge1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2xlYXJhYmxlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubm9kZXMgPSB4O1xyXG4gICAgICAgIHRoaXMuZGF0YUNoYW5nZS5uZXh0KHRoaXMubm9kZXMpO1xyXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm5vZGVzKSB7XHJcbiAgICAgIGlmICghdGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgICAgdGhpcy5zaG93UG9ydGFsKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKFhJc0VtcHR5KHZhbHVlKSkge1xyXG4gICAgICAgIHRoaXMuc2VhcmNoTm9kZXMgPSBbXHJcbiAgICAgICAgICAuLi50aGlzLm5vZGVzLm1hcCgoeCkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgcmVzID0geyAuLi54IH07XHJcbiAgICAgICAgICAgIGRlbGV0ZSByZXMuY2hpbGRyZW47XHJcbiAgICAgICAgICAgIGRlbGV0ZSByZXMuY2hpbGRyZW5Mb2FkZWQ7XHJcbiAgICAgICAgICAgIGRlbGV0ZSByZXMubGVhZjtcclxuICAgICAgICAgICAgcmV0dXJuIHJlcztcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnNldFNlYXJjaE5vZGVzKHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLnNlYXJjaE5vZGVzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFNlYXJjaE5vZGVzKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpIHtcclxuICAgIGxldCBub2RlczogWFRyZWVTZWxlY3ROb2RlW10gPSBbXTtcclxuICAgIGNvbnN0IGdldFBhcmVudCA9IChub2RlOiBYVHJlZVNlbGVjdE5vZGUpID0+IHtcclxuICAgICAgaWYgKFhJc0VtcHR5KG5vZGUucGlkKSkgcmV0dXJuO1xyXG4gICAgICBjb25zdCBwYXJlbnQgPSB0aGlzLm5vZGVzLmZpbmQoKHgpID0+IHguaWQgPT09IG5vZGUucGlkKSBhcyBYVHJlZVNlbGVjdE5vZGU7XHJcbiAgICAgIHBhcmVudC5vcGVuID0gdHJ1ZTtcclxuICAgICAgaWYgKCFYSXNFbXB0eShwYXJlbnQpKSB7XHJcbiAgICAgICAgaWYgKG5vZGVzLmV2ZXJ5KCh4KSA9PiB4LmlkICE9PSBwYXJlbnQuaWQpKSB7XHJcbiAgICAgICAgICBub2Rlcy5wdXNoKHBhcmVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgaWYgKHRoaXMuY2FzZVNlbnNpdGl2ZSkge1xyXG4gICAgICBub2RlcyA9IHRoaXMubm9kZXMuZmlsdGVyKCh4KSA9PiB4LmxhYmVsLmluZGV4T2YodmFsdWUpID49IDApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbm9kZXMgPSB0aGlzLm5vZGVzLmZpbHRlcigoeCkgPT4gKHgubGFiZWwgYXMgc3RyaW5nKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoKHZhbHVlIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKSkgPj0gMCk7XHJcbiAgICB9XHJcbiAgICBmb3IgKGxldCBub2RlIG9mIG5vZGVzKSB7XHJcbiAgICAgIGdldFBhcmVudChub2RlKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VhcmNoTm9kZXMgPSBub2Rlcy5tYXAoKHgpID0+IHtcclxuICAgICAgbGV0IHJlcyA9IHsgLi4ueCB9O1xyXG4gICAgICBkZWxldGUgcmVzLmNoaWxkcmVuO1xyXG4gICAgICBkZWxldGUgcmVzLmNoaWxkcmVuTG9hZGVkO1xyXG4gICAgICBkZWxldGUgcmVzLmxlYWY7XHJcbiAgICAgIHJldHVybiByZXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNsZWFyRW1pdCgpIHtcclxuICAgIHRoaXMudmFsdWUgPSB0aGlzLm11bHRpcGxlID8gW10gOiAnJztcclxuICAgIHRoaXMuZGlzcGxheVZhbHVlID0gJyc7XHJcbiAgICB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IFtdO1xyXG4gICAgdGhpcy5zZXREaXNwbGF5Tm9kZXMoKTtcclxuICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbnVsbDtcclxuICAgIHRoaXMubWxlYXZlKCk7XHJcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLm5leHQodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLmlucHV0Q2hhbmdlLm5leHQoJycpO1xyXG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBzZXREaXNwbGF5VmFsdWUoY2xpY2tOb2RlPzogWFRyZWVTZWxlY3ROb2RlKSB7XHJcbiAgICBpZiAodGhpcy5ub2Rlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgICAgaWYgKFhJc0VtcHR5KHRoaXMudmFsdWUpKSB7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlID0gW107XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICcnO1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzID0gW107XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlOb2RlcyA9IFtdO1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5TW9yZSA9ICcnO1xyXG4gICAgICAgICAgdGhpcy52YWx1ZVRwbENvbnRleHQuJG5vZGUgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy5zZXREaXNwbGF5Tm9kZXMoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbGV0IGlkcyA9IFtdO1xyXG4gICAgICAgICAgbGV0IHNlbGVjdGVkID0gW107XHJcbiAgICAgICAgICBpZiAodGhpcy5vYmplY3RBcnJheSkge1xyXG4gICAgICAgICAgICBpZHMgPSB0aGlzLnZhbHVlLm1hcCgoeDogWFRyZWVTZWxlY3ROb2RlKSA9PiB4LmlkKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGlkcyA9IHRoaXMudmFsdWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoY2xpY2tOb2RlKSB7XHJcbiAgICAgICAgICAgIGxldCBpbnggPSB0aGlzLnNlbGVjdGVkTm9kZXMuZmluZEluZGV4KCh4OiBYVHJlZVNlbGVjdE5vZGUpID0+IHguaWQgPT09IGNsaWNrTm9kZS5pZCk7XHJcbiAgICAgICAgICAgIGlmIChpbnggPj0gMCkge1xyXG4gICAgICAgICAgICAgIFhSZW1vdmUodGhpcy5zZWxlY3RlZE5vZGVzLCAoeCkgPT4geC5pZCA9PT0gY2xpY2tOb2RlLmlkKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZXMucHVzaChjbGlja05vZGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpZCBvZiBpZHMpIHtcclxuICAgICAgICAgICAgICBsZXQgbm9kZSA9IHRoaXMubm9kZXMuZmluZCgoeCkgPT4geC5pZCA9PT0gaWQpO1xyXG4gICAgICAgICAgICAgIGlmIChub2RlKSBzZWxlY3RlZC5wdXNoKG5vZGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IHNlbGVjdGVkO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRoaXMuc2hvd1BhdGgpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgbm9kZSBvZiB0aGlzLnNlbGVjdGVkTm9kZXMpIHtcclxuICAgICAgICAgICAgICBjb25zdCBwYXJlbnRzID0gdGhpcy5nZXRQYXJlbnRQYXRoKG5vZGUpO1xyXG4gICAgICAgICAgICAgIG5vZGUucGF0aCA9IHBhcmVudHMubWFwKCh4KSA9PiB4LmxhYmVsKS5qb2luKHRoaXMuc2VwYXJhdG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5zZXREaXNwbGF5Tm9kZXMoKTtcclxuICAgICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gdGhpcy5zZWxlY3RlZE5vZGVzLm1hcCgoeCkgPT4geC5sYWJlbCkuam9pbih0aGlzLnNlcGFyYXRvcik7XHJcbiAgICAgICAgICB0aGlzLnZhbHVlVHBsQ29udGV4dC4kbm9kZSA9IFsuLi50aGlzLnNlbGVjdGVkTm9kZXNdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBsZXQgbm9kZSA9IHRoaXMubm9kZXMuZmluZCgoeCkgPT4geC5pZCA9PT0gdGhpcy52YWx1ZSk7XHJcbiAgICAgICAgaWYgKG5vZGUpIHtcclxuICAgICAgICAgIGlmICh0aGlzLnNob3dQYXRoKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudHMgPSB0aGlzLmdldFBhcmVudFBhdGgobm9kZSk7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gcGFyZW50cy5tYXAoKHgpID0+IHgubGFiZWwpLmpvaW4odGhpcy5zZXBhcmF0b3IpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSBub2RlLmxhYmVsO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy52YWx1ZVRwbENvbnRleHQuJG5vZGUgPSBub2RlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICcnO1xyXG4gICAgICAgICAgdGhpcy52YWx1ZVRwbENvbnRleHQuJG5vZGUgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRQYXJlbnRQYXRoKG5vZGU6IFhUcmVlU2VsZWN0Tm9kZSkge1xyXG4gICAgbGV0IHJlczogWFRyZWVTZWxlY3ROb2RlW10gPSBbbm9kZV07XHJcbiAgICBjb25zdCBnZXRQYXJlbnQgPSAobmQ6IFhUcmVlU2VsZWN0Tm9kZSkgPT4ge1xyXG4gICAgICBsZXQgcGFyZW50ID0gdGhpcy5ub2Rlcy5maW5kKCh4KSA9PiBuZC5waWQgJiYgeC5pZCA9PT0gbmQucGlkKTtcclxuICAgICAgaWYgKHBhcmVudCkge1xyXG4gICAgICAgIHJlcyA9IFtwYXJlbnQsIC4uLnJlc107XHJcbiAgICAgICAgZ2V0UGFyZW50KHBhcmVudCk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICBnZXRQYXJlbnQobm9kZSk7XHJcblxyXG4gICAgcmV0dXJuIHJlcztcclxuICB9XHJcblxyXG4gIGNsb3NlTm9kZShldmVudDogRXZlbnQsIG5vZGU6IFhUcmVlU2VsZWN0Tm9kZSwgaW5kZXg6IG51bWJlcikge1xyXG4gICAgbGV0IGlueCA9IC0xO1xyXG4gICAgaWYgKHRoaXMub2JqZWN0QXJyYXkpIHtcclxuICAgICAgaW54ID0gdGhpcy52YWx1ZS5maW5kSW5kZXgoKHk6IFhUcmVlU2VsZWN0Tm9kZSkgPT4geS5pZCA9PT0gbm9kZS5pZCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpbnggPSB0aGlzLnZhbHVlLmZpbmRJbmRleCgoeTogbnVtYmVyIHwgc3RyaW5nKSA9PiB5ID09PSBub2RlLmlkKTtcclxuICAgIH1cclxuICAgIGlmIChpbnggPj0gMCkge1xyXG4gICAgICB0aGlzLnZhbHVlLnNwbGljZShpbngsIDEpO1xyXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlLm5leHQodGhpcy52YWx1ZSk7XHJcbiAgICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZXMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgdGhpcy5zZXREaXNwbGF5Tm9kZXMoKTtcclxuICAgIH1cclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzcGxheU5vZGVzKCkge1xyXG4gICAgaWYgKCF0aGlzLm11bHRpcGxlKSByZXR1cm47XHJcbiAgICBjb25zdCBtYXhsZW4gPSB0aGlzLnNlbGVjdGVkTm9kZXMubGVuZ3RoO1xyXG4gICAgbGV0IGxlbiA9IDA7XHJcbiAgICBpZiAoIXRoaXMubWF4VGFnQ291bnQpIHtcclxuICAgICAgbGVuID0gbWF4bGVuO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbGVuID0gbWF4bGVuID4gTnVtYmVyKHRoaXMubWF4VGFnQ291bnQpID8gTnVtYmVyKHRoaXMubWF4VGFnQ291bnQpIDogbWF4bGVuO1xyXG4gICAgfVxyXG4gICAgbGV0IG1vcmUgPSBtYXhsZW4gLSBsZW47XHJcbiAgICBtb3JlID0gbW9yZSA8IDAgPyAwIDogbW9yZTtcclxuICAgIHRoaXMuZGlzcGxheU5vZGVzID0gdGhpcy5zZWxlY3RlZE5vZGVzLnNsaWNlKDAsIGxlbik7XHJcbiAgICB0aGlzLnNob3dEaXNwbGF5TW9yZSA9IG1vcmUgPiAwO1xyXG4gICAgaWYgKFhJc1N0cmluZyh0aGlzLmdldE1heFRhZ0NvbnRlbnQpKSB7XHJcbiAgICAgIHRoaXMuZGlzcGxheU1vcmUgPSBtb3JlID4gMCA/ICh0aGlzLmdldE1heFRhZ0NvbnRlbnQgYXMgc3RyaW5nKS5yZXBsYWNlKC9cXHtcXHtzdXJwbHVzXFx9XFx9L2csIGAke21vcmV9YCkgOiAnJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRTdXJwbHVzID0gbW9yZTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRvdGFsID0gbWF4bGVuO1xyXG4gICAgfVxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnNldE11dGlwbGVJbnB1dFNpemUoKSk7XHJcbiAgfVxyXG5cclxuICBwb3J0YWxBdHRhY2hlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlUG9ydGFsKCkge1xyXG4gICAgaWYgKHRoaXMucG9ydGFsQXR0YWNoZWQoKSkge1xyXG4gICAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uZGV0YWNoKCk7XHJcbiAgICAgIHRoaXMuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVTZWFyY2hWYWx1ZSA9ICcnO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZGVzdHJveVBvcnRhbCgpIHtcclxuICAgIHRoaXMucG9ydGFsPy5vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgfVxyXG5cclxuICBzaG93UG9ydGFsKGNsaWNrID0gZmFsc2UpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMuaWNvblNwaW4gfHwgdGhpcy5hbmltYXRpbmcpIHJldHVybjtcclxuICAgIHRoaXMuYWN0aXZlID0gdHJ1ZTtcclxuICAgIGlmICgodGhpcy5hc3luYyAmJiBYSXNPYnNlcnZhYmxlKHRoaXMuZGF0YSkgJiYgdGhpcy5ub2Rlcy5sZW5ndGggPT09IDApIHx8IFhJc0Z1bmN0aW9uKHRoaXMuZGF0YSkpIHtcclxuICAgICAgdGhpcy5pY29uID0gJ2Z0by1sb2FkZXInO1xyXG4gICAgICB0aGlzLmljb25TcGluID0gdHJ1ZTtcclxuICAgICAgdGhpcy5pbnB1dENvbS5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICBYU2V0RGF0YTxYVHJlZVNlbGVjdE5vZGU+KHRoaXMuZGF0YSwgdGhpcy5fdW5TdWJqZWN0LCB0cnVlLCBjbGljayA/ICcnIDogdGhpcy5kaXNwbGF5VmFsdWUpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdmdG8tY2hldnJvbi1kb3duJztcclxuICAgICAgICB0aGlzLmljb25TcGluID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKCF0aGlzLmVudGVyICYmIHRoaXMuY2xlYXJhYmxlKSB7XHJcbiAgICAgICAgICB0aGlzLnNob3dDbGVhcmFibGUgPSBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pbnB1dENvbS5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIHRoaXMubm9kZXMgPSB4O1xyXG4gICAgICAgIHRoaXMuZGF0YUNoYW5nZS5uZXh0KHRoaXMubm9kZXMpO1xyXG4gICAgICAgIGlmICghdGhpcy5zZWFyY2gpIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVQb3J0YWwoKTtcclxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQodGhpcy5ub2Rlcyk7XHJcbiAgICAgIHRoaXMuY3JlYXRlUG9ydGFsKCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5zZWFyY2ggJiYgdGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLm11bHRpcGxlSW5wdXQuaW5wdXRGb2N1cygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dENvbS5pbnB1dEZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVQb3J0YWwoKSB7XHJcbiAgICB0aGlzLmJveCA9IHRoaXMuaW5wdXRDb20uaW5wdXRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIGNvbnN0IGNvbmZpZzogT3ZlcmxheUNvbmZpZyA9IHtcclxuICAgICAgYmFja2Ryb3BDbGFzczogJycsXHJcbiAgICAgIHdpZHRoOiB0aGlzLmJveC53aWR0aCxcclxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5zZXRQbGFjZW1lbnQoKSxcclxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKVxyXG4gICAgfTtcclxuICAgIHRoaXMuc2V0UG9zaXRpb24oY29uZmlnKTtcclxuICAgIHRoaXMucG9ydGFsID0gdGhpcy5wb3J0YWxTZXJ2aWNlLmF0dGFjaCh7XHJcbiAgICAgIGNvbnRlbnQ6IFhUcmVlU2VsZWN0UG9ydGFsQ29tcG9uZW50LFxyXG4gICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXHJcbiAgICAgIG92ZXJsYXlDb25maWc6IGNvbmZpZ1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnBvcnRhbC5vdmVybGF5UmVmXHJcbiAgICAgID8ub3V0c2lkZVBvaW50ZXJFdmVudHMoKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICAgICAgICB0aGlzLmNsb3NlU3ViamVjdC5uZXh0KCk7XHJcbiAgICAgIH0pO1xyXG4gICAgdGhpcy5zZXRJbnN0YW5jZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0UG9zaXRpb24oY29uZmlnOiBPdmVybGF5Q29uZmlnKSB7XHJcbiAgICBsZXQgcG9zaXRpb24gPSBjb25maWcucG9zaXRpb25TdHJhdGVneSBhcyBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3k7XHJcbiAgICBwb3NpdGlvbi5wb3NpdGlvbkNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKChwb3M6IENvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbkNoYW5nZSkgPT4ge1xyXG4gICAgICBjb25zdCBwbGFjZSA9IFhQb3J0YWxDb25uZWN0ZWRQb3NpdGlvbi5nZXQocG9zLmNvbm5lY3Rpb25QYWlyKSBhcyBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgICAgIHBsYWNlICE9PSB0aGlzLnBsYWNlbWVudCAmJiB0aGlzLnBvc2l0aW9uQ2hhbmdlLm5leHQocGxhY2UpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRJbnN0YW5jZSgpIHtcclxuICAgIGxldCBjb21wb25lbnRSZWYgPSB0aGlzLnBvcnRhbC5jb21wb25lbnRSZWY7XHJcbiAgICBpZiAoIWNvbXBvbmVudFJlZikgcmV0dXJuO1xyXG4gICAgT2JqZWN0LmFzc2lnbihjb21wb25lbnRSZWYuaW5zdGFuY2UsIHtcclxuICAgICAgZGF0YTogdGhpcy5ub2RlcyxcclxuICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXHJcbiAgICAgIHBsYWNlbWVudDogdGhpcy5wbGFjZW1lbnQsXHJcbiAgICAgIG11bHRpcGxlOiB0aGlzLm11bHRpcGxlLFxyXG4gICAgICBzZWxlY3RBbGw6IHRoaXMuc2VsZWN0QWxsLFxyXG4gICAgICBub2RlVHBsOiB0aGlzLm5vZGVUcGwsXHJcbiAgICAgIHZhbHVlQ2hhbmdlOiB0aGlzLnZhbHVlQ2hhbmdlLFxyXG4gICAgICBwb3NpdGlvbkNoYW5nZTogdGhpcy5wb3NpdGlvbkNoYW5nZSxcclxuICAgICAgY2xvc2VTdWJqZWN0OiB0aGlzLmNsb3NlU3ViamVjdCxcclxuICAgICAga2V5ZG93blN1YmplY3Q6IHRoaXMua2V5ZG93blN1YmplY3QsXHJcbiAgICAgIGRhdGFDaGFuZ2U6IHRoaXMuZGF0YUNoYW5nZSxcclxuICAgICAgaW5wdXRDb206IHRoaXMuaW5wdXRDb20sXHJcbiAgICAgIHBvcnRhbE1heEhlaWdodDogdGhpcy5wb3J0YWxNYXhIZWlnaHQsXHJcbiAgICAgIG9iamVjdEFycmF5OiB0aGlzLm9iamVjdEFycmF5LFxyXG4gICAgICBzZWxlY3RBbGxUZXh0OiB0aGlzLnNlbGVjdEFsbFRleHQsXHJcbiAgICAgIGNhc2VTZW5zaXRpdmU6IHRoaXMuY2FzZVNlbnNpdGl2ZSxcclxuICAgICAgc2VhcmNoOiB0aGlzLnNlYXJjaCxcclxuICAgICAgdmlydHVhbFNjcm9sbDogdGhpcy52aXJ0dWFsU2Nyb2xsLFxyXG4gICAgICBzaXplOiB0aGlzLnNpemUsXHJcbiAgICAgIGV4cGFuZGVkTGV2ZWw6IHRoaXMuZXhwYW5kZWRMZXZlbCxcclxuICAgICAgaW5wdXRDaGFuZ2U6IHRoaXMuaW5wdXRDaGFuZ2UsXHJcbiAgICAgIGRlc3Ryb3lQb3J0YWw6ICgpID0+IHRoaXMuZGVzdHJveVBvcnRhbCgpLFxyXG4gICAgICBub2RlRW1pdDogKG5vZGU6IFhUcmVlU2VsZWN0Tm9kZSwgdmFsdWU6IFhUcmVlU2VsZWN0Tm9kZVtdIHwgKHN0cmluZyB8IG51bWJlcilbXSkgPT4gdGhpcy5ub2RlQ2xpY2sobm9kZSwgdmFsdWUpLFxyXG4gICAgICBhbmltYXRpbmc6IChpbmc6IGJvb2xlYW4pID0+ICh0aGlzLmFuaW1hdGluZyA9IGluZylcclxuICAgIH0pO1xyXG4gICAgY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG5vZGVDbGljayhub2RlOiBYVHJlZVNlbGVjdE5vZGUsIHZhbHVlPzogWFRyZWVTZWxlY3ROb2RlW10gfCAoc3RyaW5nIHwgbnVtYmVyKVtdKSB7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICBpZiAodGhpcy52YWx1ZS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMubXVsdGlwbGVJbnB1dCkge1xyXG4gICAgICAgIGNvbnN0IGlucHV0ID0gdGhpcy5tdWx0aXBsZUlucHV0LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGlucHV0LCAnd2lkdGgnLCAnMnJlbScpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnNlYXJjaCAmJiB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgIT09ICcnKSB7XHJcbiAgICAgICAgdGhpcy5tdWx0aXBsZVNlYXJjaFZhbHVlID0gJyc7XHJcbiAgICAgICAgdGhpcy5pbnB1dENoYW5nZS5uZXh0KCcnKTtcclxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLm5leHQoWy4uLnRoaXMudmFsdWVdKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNldERpc3BsYXlWYWx1ZShub2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5vZGUgPSBub2RlIGFzIFhUcmVlU2VsZWN0Tm9kZTtcclxuICAgICAgaWYgKHRoaXMuc2hvd1BhdGgpIHtcclxuICAgICAgICBjb25zdCBwYXJlbnRzID0gdGhpcy5nZXRQYXJlbnRQYXRoKG5vZGUpO1xyXG4gICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gcGFyZW50cy5tYXAoKHgpID0+IHgubGFiZWwpLmpvaW4odGhpcy5zZXBhcmF0b3IpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gbm9kZS5sYWJlbDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnZhbHVlVHBsQ29udGV4dC4kbm9kZSA9IG5vZGU7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBub2RlLmlkO1xyXG4gICAgICB0aGlzLmNsb3NlU3ViamVjdC5uZXh0KCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5zZWFyY2ggJiYgdGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLm11bHRpcGxlSW5wdXQuaW5wdXRGb2N1cygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dENvbS5pbnB1dEZvY3VzKCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2xWYWxpZGF0b3IoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdEFsbE5vZGVzKHZhbHVlOiBYVHJlZVNlbGVjdE5vZGVbXSB8IChzdHJpbmcgfCBudW1iZXIpW10pIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHNldFBsYWNlbWVudCgpIHtcclxuICAgIHJldHVybiB0aGlzLnBvcnRhbFNlcnZpY2Uuc2V0UGxhY2VtZW50KHtcclxuICAgICAgZWxlbWVudFJlZjogdGhpcy5pbnB1dENvbS5pbnB1dFJlZixcclxuICAgICAgcGxhY2VtZW50OiBbdGhpcy5wbGFjZW1lbnQgYXMgWFBvc2l0aW9uVG9wQm90dG9tLCAnYm90dG9tJywgJ3RvcCddLFxyXG4gICAgICB0cmFuc2Zvcm1PcmlnaW5PbjogJ3gtdHJlZS1zZWxlY3QtcG9ydGFsJ1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRQb3J0YWwoKSB7XHJcbiAgICB0aGlzLnBvcnRhbEF0dGFjaGVkKCkgJiYgdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/LnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodGhpcy5zZXRQbGFjZW1lbnQoKSk7XHJcbiAgfVxyXG5cclxuICBmb3JtQ29udHJvbENoYW5nZXMoKSB7XHJcbiAgICB0aGlzLnNldERhdGEoKTtcclxuICAgIHRoaXMubmdPbkluaXQoKTtcclxuICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMubmdBZnRlclZpZXdJbml0KCk7XHJcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBvbktleWRvd24oJGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICB0aGlzLmtleWRvd25TdWJqZWN0Lm5leHQoJGV2ZW50KTtcclxuICAgIGlmICgkZXZlbnQua2V5Q29kZSAhPT0gVEFCICYmICF0aGlzLnNlYXJjaCkge1xyXG4gICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRm9jdXMoX2V2ZW50OiBFdmVudCkge1xyXG4gICAgaWYgKHRoaXMuc2VhcmNoICYmIHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy5tdWx0aXBsZUlucHV0LmlucHV0Rm9jdXMoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb20uaW5wdXRGb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25JbnB1dChfZXZlbnQ6IElucHV0RXZlbnQpIHtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2xWYWxpZGF0b3IoKTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5pbnB1dENoYW5nZS5uZXh0KHRoaXMubXVsdGlwbGUgPyB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgOiB0aGlzLmRpc3BsYXlWYWx1ZSkpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICN0cmVlU2VsZWN0IGNsYXNzPVwieC10cmVlLXNlbGVjdFwiIFtjbGFzcy54LXRyZWUtc2VsZWN0LW11bHRpcGxlXT1cIm11bHRpcGxlXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtdHJlZS1zZWxlY3Qtcm93XCI+XHJcbiAgICA8eC1pbnB1dFxyXG4gICAgICAjaW5wdXRDb21cclxuICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICBbbGFiZWxdPVwibGFiZWxcIlxyXG4gICAgICBbbGFiZWxXaWR0aF09XCJsYWJlbFdpZHRoXCJcclxuICAgICAgW2xhYmVsQWxpZ25dPVwibGFiZWxBbGlnblwiXHJcbiAgICAgIFtqdXN0aWZ5XT1cImp1c3RpZnlcIlxyXG4gICAgICBbYWxpZ25dPVwiYWxpZ25cIlxyXG4gICAgICBbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIFt2YWxpZGF0b3JdPVwidmFsaWRhdG9yXCJcclxuICAgICAgW2ljb25dPVwiaWNvblwiXHJcbiAgICAgIFtpY29uU3Bpbl09XCJpY29uU3BpblwiXHJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgIFtyZWFkb25seV09XCJnZXRSZWFkb25seVwiXHJcbiAgICAgIFtjbGVhcmFibGVdPVwic2hvd0NsZWFyYWJsZVwiXHJcbiAgICAgIFsobmdNb2RlbCldPVwiZGlzcGxheVZhbHVlXCJcclxuICAgICAgW3ZhbHVlVHBsXT1cInZhbHVlVHBsID8gdmFsdWVUcGwgOiBub2RlVHBsXCJcclxuICAgICAgW3ZhbHVlVHBsQ29udGV4dF09XCJ2YWx1ZVRwbENvbnRleHRcIlxyXG4gICAgICBbc2l6ZV09XCJzaXplXCJcclxuICAgICAgW2JvcmRlcmVkXT1cImJvcmRlcmVkXCJcclxuICAgICAgW2JlZm9yZV09XCJiZWZvcmVcIlxyXG4gICAgICBbYWZ0ZXJdPVwiYWZ0ZXJcIlxyXG4gICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcclxuICAgICAgW21lc3NhZ2VdPVwibWVzc2FnZVwiXHJcbiAgICAgIFtwb2ludGVyXT1cInRydWVcIlxyXG4gICAgICBbaW5wdXRQYWRkaW5nXT1cImlucHV0UGFkZGluZ1wiXHJcbiAgICAgIFsoYWN0aXZlKV09XCJhY3RpdmVcIlxyXG4gICAgICAoY2xlYXJFbWl0KT1cImNsZWFyRW1pdCgpXCJcclxuICAgICAgKHhLZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcclxuICAgICAgKHhJbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxyXG4gICAgICAoeEZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXHJcbiAgICAgICh4Q2xpY2spPVwic2hvd1BvcnRhbCh0cnVlKVwiXHJcbiAgICAgICh4TW91c2VlbnRlcik9XCJtZW50ZXIoKVwiXHJcbiAgICAgICh4TW91c2VsZWF2ZSk9XCJtbGVhdmUoKVwiXHJcbiAgICAgICh4Q29tcG9zaXRpb24pPVwiY29tcG9zaXRpb24gPSAkZXZlbnRcIlxyXG4gICAgPjwveC1pbnB1dD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI211bHRpcGxlVmFsdWVUcGw+XHJcbiAgPHgtdGFnXHJcbiAgICBbQC5kaXNhYmxlZF09XCJ0cnVlXCJcclxuICAgICpuZ0Zvcj1cImxldCBub2RlIG9mIGRpc3BsYXlOb2RlczsgaW5kZXggYXMgaVwiXHJcbiAgICBbY2xvc2FibGVdPVwiIWRpc2FibGVkXCJcclxuICAgIChjbG9zZSk9XCJjbG9zZU5vZGUoJGV2ZW50LCBub2RlLCBpKVwiXHJcbiAgICBbc2l6ZV09XCJzaXplXCJcclxuICAgID57eyBzaG93UGF0aCA/IG5vZGUucGF0aCA6IG5vZGUubGFiZWwgfX08L3gtdGFnXHJcbiAgPlxyXG4gIDx4LXRhZyBbQC5kaXNhYmxlZF09XCJ0cnVlXCIgKm5nSWY9XCJzaG93RGlzcGxheU1vcmVcIiBbc2l6ZV09XCJzaXplXCI+XHJcbiAgICA8bmctY29udGFpbmVyICp4T3V0bGV0PVwiZ2V0TWF4VGFnQ29udGVudDsgY29udGV4dDogeyAkc3VycGx1czogc2VsZWN0ZWRTdXJwbHVzLCAkdG90YWw6IHNlbGVjdGVkVG90YWwgfVwiPnt7XHJcbiAgICAgIGRpc3BsYXlNb3JlXHJcbiAgICB9fTwvbmctY29udGFpbmVyPlxyXG4gIDwveC10YWc+XHJcbiAgPHgtaW5wdXRcclxuICAgICNtdWx0aXBsZUlucHV0XHJcbiAgICAqbmdJZj1cInNlYXJjaFwiXHJcbiAgICBib3JkZXJlZD1cImZhbHNlXCJcclxuICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgaW5wdXRQYWRkaW5nPVwiMC4yNzVcIlxyXG4gICAgWyhuZ01vZGVsKV09XCJtdWx0aXBsZVNlYXJjaFZhbHVlXCJcclxuICAgICh4SW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcclxuICAgICh4S2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXHJcbiAgPjwveC1pbnB1dD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
|
633
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS1zZWxlY3QvdHJlZS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS1zZWxlY3QvdHJlZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBT3ZCLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakcsT0FBTyxFQUNMLFFBQVEsRUFDUixhQUFhLEVBQ2IsU0FBUyxFQUNULFFBQVEsRUFDUixXQUFXLEVBR1gsY0FBYyxFQUNkLFdBQVcsRUFDWCxRQUFRLEVBQ1IsU0FBUyxFQUNULE9BQU8sRUFDUCxPQUFPLEVBQ1IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQXFDLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFakcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7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QVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkNoYW5nZXMsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVGVtcGxhdGVSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRyZWVTZWxlY3ROb2RlLCBYVHJlZVNlbGVjdFByb3BlcnR5LCBYVHJlZVNlbGVjdFByZWZpeCB9IGZyb20gJy4vdHJlZS1zZWxlY3QucHJvcGVydHknO1xyXG5pbXBvcnQge1xyXG4gIFhJc0VtcHR5LFxyXG4gIFhJc09ic2VydmFibGUsXHJcbiAgWElzQ2hhbmdlLFxyXG4gIFhTZXREYXRhLFxyXG4gIFhDbGVhckNsYXNzLFxyXG4gIFhDb25maWdTZXJ2aWNlLFxyXG4gIFhQb3NpdGlvblRvcEJvdHRvbSxcclxuICBYSXNPYmplY3RBcnJheSxcclxuICBYSXNGdW5jdGlvbixcclxuICBYSXNBcnJheSxcclxuICBYSXNTdHJpbmcsXHJcbiAgWFJlbW92ZSxcclxuICBYUmVzaXplXHJcbn0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhQb3J0YWxTZXJ2aWNlLCBYUG9ydGFsT3ZlcmxheVJlZiwgWFBvcnRhbENvbm5lY3RlZFBvc2l0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvcG9ydGFsJztcclxuaW1wb3J0IHsgWElucHV0Q29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvaW5wdXQnO1xyXG5pbXBvcnQgeyBYVHJlZVNlbGVjdFBvcnRhbENvbXBvbmVudCB9IGZyb20gJy4vdHJlZS1zZWxlY3QtcG9ydGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE92ZXJsYXksIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSwgQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlLCBPdmVybGF5Q29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwsIHRocm90dGxlVGltZSwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBET1dOX0FSUk9XLCBVUF9BUlJPVywgRU5URVIsIE1BQ19FTlRFUiwgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIFRBQiwgQkFDS1NQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcclxuaW1wb3J0IHsgWFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbmctbmVzdC91aS9iYXNlLWZvcm0nO1xyXG5pbXBvcnQgeyBYSTE4blRyZWVTZWxlY3QsIFhJMThuU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2kxOG4nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hUcmVlU2VsZWN0UHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90cmVlLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbWFZhbHVlQWNjZXNzb3IoWFRyZWVTZWxlY3RDb21wb25lbnQpXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBYVHJlZVNlbGVjdFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0Q29tJywgeyBzdGF0aWM6IHRydWUgfSkgaW5wdXRDb20hOiBYSW5wdXRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgndHJlZVNlbGVjdCcsIHsgc3RhdGljOiB0cnVlIH0pIHRyZWVTZWxlY3QhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ211bHRpcGxlVmFsdWVUcGwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBtdWx0aXBsZVZhbHVlVHBsITogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgQFZpZXdDaGlsZCgnbXVsdGlwbGVJbnB1dCcpIG11bHRpcGxlSW5wdXQhOiBYSW5wdXRDb21wb25lbnQ7XHJcblxyXG4gIGdldCBnZXRSZWFkb25seSgpIHtcclxuICAgIHJldHVybiAodGhpcy5yZWFkb25seSAmJiAhdGhpcy5zZWFyY2gpIHx8IChCb29sZWFuKHRoaXMuc2VhcmNoKSAmJiBCb29sZWFuKHRoaXMubXVsdGlwbGUpKTtcclxuICB9XHJcblxyXG4gIGdldCBnZXRNYXhUYWdDb250ZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMubWF4VGFnQ29udGVudCB8fCB0aGlzLmxvY2FsZS5tYXhUYWdDb250ZW50O1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICBpZiAoWElzRW1wdHkodmFsdWUpKSB7XHJcbiAgICAgICAgdmFsdWUgPSBbXTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIVhJc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICAgIHZhbHVlID0gW3ZhbHVlXTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9iamVjdEFycmF5ID0gWElzT2JqZWN0QXJyYXkodmFsdWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICAgIHRoaXMudmFsdWVDaGFuZ2UubmV4dCh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHJlYWRvbmx5ID0gdHJ1ZTtcclxuICBlbnRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dDbGVhcmFibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkaXNwbGF5VmFsdWU6IGFueSA9ICcnO1xyXG4gIG11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICBub2RlczogWFRyZWVTZWxlY3ROb2RlW10gPSBbXTtcclxuICBzZWxlY3RlZE5vZGVzOiBYVHJlZVNlbGVjdE5vZGVbXSA9IFtdO1xyXG4gIGRpc3BsYXlOb2RlczogWFRyZWVTZWxlY3ROb2RlW10gPSBbXTtcclxuICBkaXNwbGF5TW9yZSA9ICcnO1xyXG4gIHNob3dEaXNwbGF5TW9yZSA9IGZhbHNlO1xyXG4gIHNlYXJjaE5vZGVzOiBYVHJlZVNlbGVjdE5vZGVbXSA9IFtdO1xyXG4gIGNsb25lTm9kZXMhOiBYVHJlZVNlbGVjdE5vZGVbXTtcclxuICBwb3J0YWwhOiBYUG9ydGFsT3ZlcmxheVJlZjxYVHJlZVNlbGVjdFBvcnRhbENvbXBvbmVudD47XHJcbiAgaWNvbjogc3RyaW5nID0gJ2Z0by1jaGV2cm9uLWRvd24nO1xyXG4gIGljb25TcGluOiBib29sZWFuID0gZmFsc2U7XHJcbiAgYm94ITogRE9NUmVjdDtcclxuICBwcm90YWxIZWlnaHQhOiBudW1iZXI7XHJcbiAgbWF4Tm9kZXM6IG51bWJlciA9IDY7XHJcbiAgaW5wdXRQYWRkaW5nID0gMC40O1xyXG4gIHByb3RhbFRvYm90dG9tOiBib29sZWFuID0gdHJ1ZTtcclxuICBhc3luY0xvYWRpbmcgPSBmYWxzZTtcclxuICBhbmltYXRpbmcgPSBmYWxzZTtcclxuICBvYmplY3RBcnJheSA9IGZhbHNlO1xyXG4gIHNlbGVjdGVkU3VycGx1cyA9IDA7XHJcbiAgc2VsZWN0ZWRUb3RhbCA9IDA7XHJcbiAgbG9jYWxlOiBYSTE4blRyZWVTZWxlY3QgPSB7fTtcclxuICBvdmVycmlkZSB2YWx1ZVRwbENvbnRleHQ6IHsgJG5vZGU6IGFueTsgJGlzVmFsdWU6IGJvb2xlYW4gfSA9IHsgJG5vZGU6IG51bGwsICRpc1ZhbHVlOiB0cnVlIH07XHJcbiAgdmFsdWVDaGFuZ2U6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgcG9zaXRpb25DaGFuZ2U6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgY2xvc2VTdWJqZWN0OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuICBkYXRhQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxYVHJlZVNlbGVjdE5vZGVbXT4oW10pO1xyXG4gIGtleWRvd25TdWJqZWN0OiBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+ID0gbmV3IFN1YmplY3QoKTtcclxuICBpbnB1dENoYW5nZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuICBjb21wb3NpdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG11bHRpcGxlSW5wdXRTaXplQ2hhbmdlID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXIhOiBSZXNpemVPYnNlcnZlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBvdmVycmlkZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBwb3J0YWxTZXJ2aWNlOiBYUG9ydGFsU2VydmljZSxcclxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHB1YmxpYyBpMThuOiBYSTE4blNlcnZpY2UsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RmxleCh0aGlzLnRyZWVTZWxlY3QubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlciwgdGhpcy5qdXN0aWZ5LCB0aGlzLmFsaWduLCB0aGlzLmRpcmVjdGlvbik7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICB0aGlzLnNldFN1YmplY3QoKTtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMudmFsdWVUcGwgPSB0aGlzLm11bHRpcGxlVmFsdWVUcGw7XHJcbiAgICAgIHRoaXMuaW5wdXRQYWRkaW5nID0gMC4xMjU7XHJcbiAgICB9XHJcbiAgICB0aGlzLmkxOG4ubG9jYWxlQ2hhbmdlXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeCkgPT4geC50cmVlU2VsZWN0IGFzIFhJMThuVHJlZVNlbGVjdCksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgdGhpcy5sb2NhbGUgPSB4O1xyXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgZGF0YSB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShkYXRhKSAmJiB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuc2V0UG9ydGFsKCk7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSAmJiB0aGlzLmlucHV0Q29tLmlucHV0VmFsdWVSZWYpIHtcclxuICAgICAgWFJlc2l6ZSh0aGlzLmlucHV0Q29tLmlucHV0VmFsdWVSZWYubmF0aXZlRWxlbWVudClcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgICAuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9yZXNpemVPYnNlcnZlciA9IHgucmVzaXplT2JzZXJ2ZXI7XHJcbiAgICAgICAgICB0aGlzLnNldE11dGlwbGVJbnB1dFNpemUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcclxuICB9XHJcblxyXG4gIHNldENsYXNzTWFwKCkge1xyXG4gICAgWENsZWFyQ2xhc3ModGhpcy5sYWJlbE1hcCk7XHJcbiAgICB0aGlzLmxhYmVsTWFwW2B4LXRleHQtYWxpZ24tJHt0aGlzLmxhYmVsQWxpZ259YF0gPSB0aGlzLmxhYmVsQWxpZ24gPyB0cnVlIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzZXREYXRhKCkge1xyXG4gICAgaWYgKHRoaXMuYXN5bmMpIHJldHVybjtcclxuICAgIFhTZXREYXRhPFhUcmVlU2VsZWN0Tm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQodGhpcy5ub2Rlcyk7XHJcbiAgICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgICAgIHRoaXMuc2V0UG9ydGFsKCk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0U3ViamVjdCgpIHtcclxuICAgIHRoaXMuY2xvc2VTdWJqZWN0LnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuY2xvc2VQb3J0YWwoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5pbnB1dENoYW5nZS5waXBlKGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSBhcyBudW1iZXIpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWxDaGFuZ2UoeCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMua2V5ZG93blN1YmplY3QucGlwZSh0aHJvdHRsZVRpbWUoMTApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIGNvbnN0IGtleUNvZGUgPSB4LmtleUNvZGU7XHJcbiAgICAgIGlmICghdGhpcy5wb3J0YWxBdHRhY2hlZCgpICYmIFtET1dOX0FSUk9XLCBVUF9BUlJPVywgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIEVOVEVSLCBNQUNfRU5URVIsIEJBQ0tTUEFDRV0uaW5jbHVkZXMoa2V5Q29kZSkpIHtcclxuICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLm5leHQodGhpcy5kaXNwbGF5VmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmICh0aGlzLnBvcnRhbEF0dGFjaGVkKCkgJiYgW0VTQ0FQRV0uaW5jbHVkZXMoa2V5Q29kZSkpIHtcclxuICAgICAgLy8gICB0aGlzLmNsb3NlU3ViamVjdC5uZXh0KCk7XHJcbiAgICAgIC8vIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5tdWx0aXBsZUlucHV0U2l6ZUNoYW5nZS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgaWYgKHRoaXMubXVsdGlwbGVJbnB1dCkge1xyXG4gICAgICAgIGNvbnN0IGlucHV0ID0gdGhpcy5tdWx0aXBsZUlucHV0Py5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShpbnB1dCwgJ3dpZHRoJywgYCR7eH1weGApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldE11dGlwbGVJbnB1dFNpemUoKSB7XHJcbiAgICBjb25zdCBpdmYgPSB0aGlzLmlucHV0Q29tLmlucHV0VmFsdWVSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRGl2RWxlbWVudDtcclxuICAgIGxldCB7IGNsaWVudFdpZHRoLCBzY3JvbGxIZWlnaHQgfSA9IGl2ZjtcclxuICAgIGNvbnN0IGxlbiA9IGl2Zi5jaGlsZHJlbi5sZW5ndGg7XHJcbiAgICBsZXQgbGFzdFJvd1RhZ1RvcCA9IC0xO1xyXG4gICAgbGV0IGxpbmVzID0gMTtcclxuICAgIGxldCByb3dUYWdUb3AgPSAtMTtcclxuICAgIGxldCBsYXN0Um93VGFnc1dpZHRoID0gMDtcclxuICAgIGxldCBtYXJnaW5MZWZ0ID0gMDtcclxuICAgIGxldCBtYXJnaW5Ub3AgPSAwO1xyXG4gICAgZm9yIChsZXQgaSA9IGxlbiAtIDE7IGkgPj0gMDsgaS0tKSB7XHJcbiAgICAgIGNvbnN0IGVsZSA9IGl2Zi5jaGlsZHJlbltpXSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgaWYgKGVsZS50YWdOYW1lID09PSAnWC1UQUcnKSB7XHJcbiAgICAgICAgY29uc3QgeyBvZmZzZXRUb3AsIG9mZnNldFdpZHRoIH0gPSBlbGU7XHJcbiAgICAgICAgY29uc3Qgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZSk7XHJcbiAgICAgICAgbWFyZ2luTGVmdCA9IE51bWJlcihzdHlsZS5tYXJnaW5MZWZ0LnJlcGxhY2UoJ3B4JywgJycpKTtcclxuICAgICAgICBtYXJnaW5Ub3AgPSBOdW1iZXIoc3R5bGUubWFyZ2luVG9wLnJlcGxhY2UoJ3B4JywgJycpKTtcclxuICAgICAgICBpZiAocm93VGFnVG9wID09PSAtMSkge1xyXG4gICAgICAgICAgcm93VGFnVG9wID0gb2Zmc2V0VG9wO1xyXG4gICAgICAgIH0gZWxzZSBpZiAocm93VGFnVG9wICE9PSBvZmZzZXRUb3ApIHtcclxuICAgICAgICAgIGxpbmVzKys7XHJcbiAgICAgICAgICByb3dUYWdUb3AgPSBvZmZzZXRUb3A7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChsYXN0Um93VGFnVG9wID09PSAtMSkge1xyXG4gICAgICAgICAgbGFzdFJvd1RhZ1RvcCA9IG9mZnNldFRvcDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGxhc3RSb3dUYWdUb3AgPT09IG9mZnNldFRvcCkge1xyXG4gICAgICAgICAgbGFzdFJvd1RhZ3NXaWR0aCArPSBvZmZzZXRXaWR0aCArIG1hcmdpbkxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCBoZWlnaHQgPSBzY3JvbGxIZWlnaHQgKyAobGluZXMgPiAxID8gbWFyZ2luVG9wIDogMCk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaW5wdXRDb20uaW5wdXRSZWYubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2hlaWdodH1weGApO1xyXG4gICAgaWYgKHRoaXMubXVsdGlwbGVJbnB1dCkge1xyXG4gICAgICB0aGlzLm11bHRpcGxlSW5wdXRTaXplQ2hhbmdlLm5leHQoY2xpZW50V2lkdGggLSBsYXN0Um93VGFnc1dpZHRoIC0gbWFyZ2luTGVmdCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8udXBkYXRlUG9zaXRpb24oKTtcclxuICB9XHJcblxyXG4gIG1lbnRlcigpIHtcclxuICAgIHRoaXMuZW50ZXIgPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgIXRoaXMuY2xlYXJhYmxlIHx8IHRoaXMuaWNvblNwaW4pIHJldHVybjtcclxuICAgIGlmICghWElzRW1wdHkodGhpcy5kaXNwbGF5VmFsdWUpKSB7XHJcbiAgICAgIHRoaXMuaWNvbiA9ICcnO1xyXG4gICAgICB0aGlzLnNob3dDbGVhcmFibGUgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBtbGVhdmUoKSB7XHJcbiAgICB0aGlzLmVudGVyID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5jbGVhcmFibGUgfHwgdGhpcy5pY29uU3BpbikgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuY2xlYXJhYmxlKSB7XHJcbiAgICAgIHRoaXMuaWNvbiA9ICdmdG8tY2hldnJvbi1kb3duJztcclxuICAgICAgdGhpcy5zaG93Q2xlYXJhYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1vZGVsQ2hhbmdlKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpIHtcclxuICAgIGlmIChYSXNGdW5jdGlvbih0aGlzLmRhdGEpKSB7XHJcbiAgICAgIGlmICghdGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgICAgdGhpcy5zaG93UG9ydGFsKCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5pY29uID0gJ2Z0by1sb2FkZXInO1xyXG4gICAgICB0aGlzLmljb25TcGluID0gdHJ1ZTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICBYU2V0RGF0YTxYVHJlZVNlbGVjdE5vZGU+KHRoaXMuZGF0YSwgdGhpcy5fdW5TdWJqZWN0LCB0cnVlLCB2YWx1ZSBhcyBhbnkpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICcnO1xyXG4gICAgICAgIHRoaXMuaWNvblNwaW4gPSBmYWxzZTtcclxuICAgICAgICBpZiAoIXRoaXMuZW50ZXIgJiYgdGhpcy5jbGVhcmFibGUpIHtcclxuICAgICAgICAgIHRoaXMuc2hvd0NsZWFyYWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLm5vZGVzKTtcclxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5ub2Rlcykge1xyXG4gICAgICBpZiAoIXRoaXMucG9ydGFsQXR0YWNoZWQoKSkge1xyXG4gICAgICAgIHRoaXMuc2hvd1BvcnRhbCgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChYSXNFbXB0eSh2YWx1ZSkpIHtcclxuICAgICAgICB0aGlzLnNlYXJjaE5vZGVzID0gW1xyXG4gICAgICAgICAgLi4udGhpcy5ub2Rlcy5tYXAoKHgpID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlcyA9IHsgLi4ueCB9O1xyXG4gICAgICAgICAgICBkZWxldGUgcmVzLmNoaWxkcmVuO1xyXG4gICAgICAgICAgICBkZWxldGUgcmVzLmNoaWxkcmVuTG9hZGVkO1xyXG4gICAgICAgICAgICBkZWxldGUgcmVzLmxlYWY7XHJcbiAgICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXRTZWFyY2hOb2Rlcyh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQodGhpcy5zZWFyY2hOb2Rlcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRTZWFyY2hOb2Rlcyh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKSB7XHJcbiAgICBsZXQgbm9kZXM6IFhUcmVlU2VsZWN0Tm9kZVtdID0gW107XHJcbiAgICBjb25zdCBnZXRQYXJlbnQgPSAobm9kZTogWFRyZWVTZWxlY3ROb2RlKSA9PiB7XHJcbiAgICAgIGlmIChYSXNFbXB0eShub2RlLnBpZCkpIHJldHVybjtcclxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5ub2Rlcy5maW5kKCh4KSA9PiB4LmlkID09PSBub2RlLnBpZCkgYXMgWFRyZWVTZWxlY3ROb2RlO1xyXG4gICAgICBwYXJlbnQub3BlbiA9IHRydWU7XHJcbiAgICAgIGlmICghWElzRW1wdHkocGFyZW50KSkge1xyXG4gICAgICAgIGlmIChub2Rlcy5ldmVyeSgoeCkgPT4geC5pZCAhPT0gcGFyZW50LmlkKSkge1xyXG4gICAgICAgICAgbm9kZXMucHVzaChwYXJlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLmNhc2VTZW5zaXRpdmUpIHtcclxuICAgICAgbm9kZXMgPSB0aGlzLm5vZGVzLmZpbHRlcigoeCkgPT4geC5sYWJlbC5pbmRleE9mKHZhbHVlKSA+PSAwKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5vZGVzID0gdGhpcy5ub2Rlcy5maWx0ZXIoKHgpID0+ICh4LmxhYmVsIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKS5pbmRleE9mKCh2YWx1ZSBhcyBzdHJpbmcpLnRvTG93ZXJDYXNlKCkpID49IDApO1xyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgbm9kZSBvZiBub2Rlcykge1xyXG4gICAgICBnZXRQYXJlbnQobm9kZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNlYXJjaE5vZGVzID0gbm9kZXMubWFwKCh4KSA9PiB7XHJcbiAgICAgIGxldCByZXMgPSB7IC4uLnggfTtcclxuICAgICAgZGVsZXRlIHJlcy5jaGlsZHJlbjtcclxuICAgICAgZGVsZXRlIHJlcy5jaGlsZHJlbkxvYWRlZDtcclxuICAgICAgZGVsZXRlIHJlcy5sZWFmO1xyXG4gICAgICByZXR1cm4gcmVzO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjbGVhckVtaXQoKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5tdWx0aXBsZSA/IFtdIDogJyc7XHJcbiAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICcnO1xyXG4gICAgdGhpcy5tdWx0aXBsZVNlYXJjaFZhbHVlID0gJyc7XHJcbiAgICB0aGlzLnNlbGVjdGVkTm9kZXMgPSBbXTtcclxuICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICB0aGlzLnZhbHVlVHBsQ29udGV4dC4kbm9kZSA9IG51bGw7XHJcbiAgICB0aGlzLm1sZWF2ZSgpO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5uZXh0KHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5pbnB1dENoYW5nZS5uZXh0KCcnKTtcclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzcGxheVZhbHVlKGNsaWNrTm9kZT86IFhUcmVlU2VsZWN0Tm9kZSkge1xyXG4gICAgaWYgKHRoaXMubm9kZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIGlmIChYSXNFbXB0eSh0aGlzLnZhbHVlKSkge1xyXG4gICAgICAgICAgdGhpcy52YWx1ZSA9IFtdO1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSAnJztcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IFtdO1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5Tm9kZXMgPSBbXTtcclxuICAgICAgICAgIHRoaXMuZGlzcGxheU1vcmUgPSAnJztcclxuICAgICAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbnVsbDtcclxuICAgICAgICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGxldCBpZHMgPSBbXTtcclxuICAgICAgICAgIGxldCBzZWxlY3RlZCA9IFtdO1xyXG4gICAgICAgICAgaWYgKHRoaXMub2JqZWN0QXJyYXkpIHtcclxuICAgICAgICAgICAgaWRzID0gdGhpcy52YWx1ZS5tYXAoKHg6IFhUcmVlU2VsZWN0Tm9kZSkgPT4geC5pZCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZHMgPSB0aGlzLnZhbHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGNsaWNrTm9kZSkge1xyXG4gICAgICAgICAgICBsZXQgaW54ID0gdGhpcy5zZWxlY3RlZE5vZGVzLmZpbmRJbmRleCgoeDogWFRyZWVTZWxlY3ROb2RlKSA9PiB4LmlkID09PSBjbGlja05vZGUuaWQpO1xyXG4gICAgICAgICAgICBpZiAoaW54ID49IDApIHtcclxuICAgICAgICAgICAgICBYUmVtb3ZlKHRoaXMuc2VsZWN0ZWROb2RlcywgKHgpID0+IHguaWQgPT09IGNsaWNrTm9kZS5pZCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzLnB1c2goY2xpY2tOb2RlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaWQgb2YgaWRzKSB7XHJcbiAgICAgICAgICAgICAgbGV0IG5vZGUgPSB0aGlzLm5vZGVzLmZpbmQoKHgpID0+IHguaWQgPT09IGlkKTtcclxuICAgICAgICAgICAgICBpZiAobm9kZSkgc2VsZWN0ZWQucHVzaChub2RlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZXMgPSBzZWxlY3RlZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLnNob3dQYXRoKSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IG5vZGUgb2YgdGhpcy5zZWxlY3RlZE5vZGVzKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgcGFyZW50cyA9IHRoaXMuZ2V0UGFyZW50UGF0aChub2RlKTtcclxuICAgICAgICAgICAgICBub2RlLnBhdGggPSBwYXJlbnRzLm1hcCgoeCkgPT4geC5sYWJlbCkuam9pbih0aGlzLnNlcGFyYXRvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IHRoaXMuc2VsZWN0ZWROb2Rlcy5tYXAoKHgpID0+IHgubGFiZWwpLmpvaW4odGhpcy5zZXBhcmF0b3IpO1xyXG4gICAgICAgICAgdGhpcy52YWx1ZVRwbENvbnRleHQuJG5vZGUgPSBbLi4udGhpcy5zZWxlY3RlZE5vZGVzXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IG5vZGUgPSB0aGlzLm5vZGVzLmZpbmQoKHgpID0+IHguaWQgPT09IHRoaXMudmFsdWUpO1xyXG4gICAgICAgIGlmIChub2RlKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5zaG93UGF0aCkge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJlbnRzID0gdGhpcy5nZXRQYXJlbnRQYXRoKG5vZGUpO1xyXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IHBhcmVudHMubWFwKCh4KSA9PiB4LmxhYmVsKS5qb2luKHRoaXMuc2VwYXJhdG9yKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gbm9kZS5sYWJlbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbm9kZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSAnJztcclxuICAgICAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0UGFyZW50UGF0aChub2RlOiBYVHJlZVNlbGVjdE5vZGUpIHtcclxuICAgIGxldCByZXM6IFhUcmVlU2VsZWN0Tm9kZVtdID0gW25vZGVdO1xyXG4gICAgY29uc3QgZ2V0UGFyZW50ID0gKG5kOiBYVHJlZVNlbGVjdE5vZGUpID0+IHtcclxuICAgICAgbGV0IHBhcmVudCA9IHRoaXMubm9kZXMuZmluZCgoeCkgPT4gbmQucGlkICYmIHguaWQgPT09IG5kLnBpZCk7XHJcbiAgICAgIGlmIChwYXJlbnQpIHtcclxuICAgICAgICByZXMgPSBbcGFyZW50LCAuLi5yZXNdO1xyXG4gICAgICAgIGdldFBhcmVudChwYXJlbnQpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgZ2V0UGFyZW50KG5vZGUpO1xyXG5cclxuICAgIHJldHVybiByZXM7XHJcbiAgfVxyXG5cclxuICBjbG9zZU5vZGUoZXZlbnQ6IEV2ZW50LCBub2RlOiBYVHJlZVNlbGVjdE5vZGUsIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGxldCBpbnggPSAtMTtcclxuICAgIGlmICh0aGlzLm9iamVjdEFycmF5KSB7XHJcbiAgICAgIGlueCA9IHRoaXMudmFsdWUuZmluZEluZGV4KCh5OiBYVHJlZVNlbGVjdE5vZGUpID0+IHkuaWQgPT09IG5vZGUuaWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaW54ID0gdGhpcy52YWx1ZS5maW5kSW5kZXgoKHk6IG51bWJlciB8IHN0cmluZykgPT4geSA9PT0gbm9kZS5pZCk7XHJcbiAgICB9XHJcbiAgICBpZiAoaW54ID49IDApIHtcclxuICAgICAgdGhpcy52YWx1ZS5zcGxpY2UoaW54LCAxKTtcclxuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5uZXh0KHRoaXMudmFsdWUpO1xyXG4gICAgICBpZiAodGhpcy5vbkNoYW5nZSkgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICB9XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIHNldERpc3BsYXlOb2RlcygpIHtcclxuICAgIGlmICghdGhpcy5tdWx0aXBsZSkgcmV0dXJuO1xyXG4gICAgY29uc3QgbWF4bGVuID0gdGhpcy5zZWxlY3RlZE5vZGVzLmxlbmd0aDtcclxuICAgIGxldCBsZW4gPSAwO1xyXG4gICAgaWYgKCF0aGlzLm1heFRhZ0NvdW50KSB7XHJcbiAgICAgIGxlbiA9IG1heGxlbjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxlbiA9IG1heGxlbiA+IE51bWJlcih0aGlzLm1heFRhZ0NvdW50KSA/IE51bWJlcih0aGlzLm1heFRhZ0NvdW50KSA6IG1heGxlbjtcclxuICAgIH1cclxuICAgIGxldCBtb3JlID0gbWF4bGVuIC0gbGVuO1xyXG4gICAgbW9yZSA9IG1vcmUgPCAwID8gMCA6IG1vcmU7XHJcbiAgICB0aGlzLmRpc3BsYXlOb2RlcyA9IHRoaXMuc2VsZWN0ZWROb2Rlcy5zbGljZSgwLCBsZW4pO1xyXG4gICAgdGhpcy5zaG93RGlzcGxheU1vcmUgPSBtb3JlID4gMDtcclxuICAgIGlmIChYSXNTdHJpbmcodGhpcy5nZXRNYXhUYWdDb250ZW50KSkge1xyXG4gICAgICB0aGlzLmRpc3BsYXlNb3JlID0gbW9yZSA+IDAgPyAodGhpcy5nZXRNYXhUYWdDb250ZW50IGFzIHN0cmluZykucmVwbGFjZSgvXFx7XFx7c3VycGx1c1xcfVxcfS9nLCBgJHttb3JlfWApIDogJyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkU3VycGx1cyA9IG1vcmU7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUb3RhbCA9IG1heGxlbjtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZXRNdXRpcGxlSW5wdXRTaXplKCkpO1xyXG4gIH1cclxuXHJcbiAgcG9ydGFsQXR0YWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVBvcnRhbCgpIHtcclxuICAgIGlmICh0aGlzLnBvcnRhbEF0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGRlc3Ryb3lQb3J0YWwoKSB7XHJcbiAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgc2hvd1BvcnRhbChjbGljayA9IGZhbHNlKSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmljb25TcGluIHx8IHRoaXMuYW5pbWF0aW5nKSByZXR1cm47XHJcbiAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XHJcbiAgICBpZiAoKHRoaXMuYXN5bmMgJiYgWElzT2JzZXJ2YWJsZSh0aGlzLmRhdGEpICYmIHRoaXMubm9kZXMubGVuZ3RoID09PSAwKSB8fCBYSXNGdW5jdGlvbih0aGlzLmRhdGEpKSB7XHJcbiAgICAgIHRoaXMuaWNvbiA9ICdmdG8tbG9hZGVyJztcclxuICAgICAgdGhpcy5pY29uU3BpbiA9IHRydWU7XHJcbiAgICAgIHRoaXMuaW5wdXRDb20uY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgWFNldERhdGE8WFRyZWVTZWxlY3ROb2RlPih0aGlzLmRhdGEsIHRoaXMuX3VuU3ViamVjdCwgdHJ1ZSwgY2xpY2sgPyAnJyA6IHRoaXMuZGlzcGxheVZhbHVlKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLmljb24gPSAnZnRvLWNoZXZyb24tZG93bic7XHJcbiAgICAgICAgdGhpcy5pY29uU3BpbiA9IGZhbHNlO1xyXG4gICAgICAgIGlmICghdGhpcy5lbnRlciAmJiB0aGlzLmNsZWFyYWJsZSkge1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2xlYXJhYmxlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaW5wdXRDb20uY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLm5vZGVzKTtcclxuICAgICAgICBpZiAoIXRoaXMuc2VhcmNoKSB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRlUG9ydGFsKCk7XHJcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGF0YUNoYW5nZS5uZXh0KHRoaXMubm9kZXMpO1xyXG4gICAgICB0aGlzLmNyZWF0ZVBvcnRhbCgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc2VhcmNoICYmIHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy5tdWx0aXBsZUlucHV0LmlucHV0Rm9jdXMoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb20uaW5wdXRGb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlUG9ydGFsKCkge1xyXG4gICAgdGhpcy5ib3ggPSB0aGlzLmlucHV0Q29tLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICBjb25zdCBjb25maWc6IE92ZXJsYXlDb25maWcgPSB7XHJcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICcnLFxyXG4gICAgICB3aWR0aDogdGhpcy5ib3gud2lkdGgsXHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuc2V0UGxhY2VtZW50KCksXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKClcclxuICAgIH07XHJcbiAgICB0aGlzLnNldFBvc2l0aW9uKGNvbmZpZyk7XHJcbiAgICB0aGlzLnBvcnRhbCA9IHRoaXMucG9ydGFsU2VydmljZS5hdHRhY2goe1xyXG4gICAgICBjb250ZW50OiBYVHJlZVNlbGVjdFBvcnRhbENvbXBvbmVudCxcclxuICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICBvdmVybGF5Q29uZmlnOiBjb25maWdcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wb3J0YWwub3ZlcmxheVJlZlxyXG4gICAgICA/Lm91dHNpZGVQb2ludGVyRXZlbnRzKClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZVN1YmplY3QubmV4dCgpO1xyXG4gICAgICB9KTtcclxuICAgIHRoaXMuc2V0SW5zdGFuY2UoKTtcclxuICB9XHJcblxyXG4gIHNldFBvc2l0aW9uKGNvbmZpZzogT3ZlcmxheUNvbmZpZykge1xyXG4gICAgbGV0IHBvc2l0aW9uID0gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xyXG4gICAgcG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgocG9zOiBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UpID0+IHtcclxuICAgICAgY29uc3QgcGxhY2UgPSBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24uZ2V0KHBvcy5jb25uZWN0aW9uUGFpcikgYXMgWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gICAgICBwbGFjZSAhPT0gdGhpcy5wbGFjZW1lbnQgJiYgdGhpcy5wb3NpdGlvbkNoYW5nZS5uZXh0KHBsYWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5zdGFuY2UoKSB7XHJcbiAgICBsZXQgY29tcG9uZW50UmVmID0gdGhpcy5wb3J0YWwuY29tcG9uZW50UmVmO1xyXG4gICAgaWYgKCFjb21wb25lbnRSZWYpIHJldHVybjtcclxuICAgIE9iamVjdC5hc3NpZ24oY29tcG9uZW50UmVmLmluc3RhbmNlLCB7XHJcbiAgICAgIGRhdGE6IHRoaXMubm9kZXMsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxyXG4gICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50LFxyXG4gICAgICBtdWx0aXBsZTogdGhpcy5tdWx0aXBsZSxcclxuICAgICAgc2VsZWN0QWxsOiB0aGlzLnNlbGVjdEFsbCxcclxuICAgICAgbm9kZVRwbDogdGhpcy5ub2RlVHBsLFxyXG4gICAgICB2YWx1ZUNoYW5nZTogdGhpcy52YWx1ZUNoYW5nZSxcclxuICAgICAgcG9zaXRpb25DaGFuZ2U6IHRoaXMucG9zaXRpb25DaGFuZ2UsXHJcbiAgICAgIGNsb3NlU3ViamVjdDogdGhpcy5jbG9zZVN1YmplY3QsXHJcbiAgICAgIGtleWRvd25TdWJqZWN0OiB0aGlzLmtleWRvd25TdWJqZWN0LFxyXG4gICAgICBkYXRhQ2hhbmdlOiB0aGlzLmRhdGFDaGFuZ2UsXHJcbiAgICAgIGlucHV0Q29tOiB0aGlzLmlucHV0Q29tLFxyXG4gICAgICBwb3J0YWxNYXhIZWlnaHQ6IHRoaXMucG9ydGFsTWF4SGVpZ2h0LFxyXG4gICAgICBvYmplY3RBcnJheTogdGhpcy5vYmplY3RBcnJheSxcclxuICAgICAgc2VsZWN0QWxsVGV4dDogdGhpcy5zZWxlY3RBbGxUZXh0LFxyXG4gICAgICBjYXNlU2Vuc2l0aXZlOiB0aGlzLmNhc2VTZW5zaXRpdmUsXHJcbiAgICAgIHNlYXJjaDogdGhpcy5zZWFyY2gsXHJcbiAgICAgIHZpcnR1YWxTY3JvbGw6IHRoaXMudmlydHVhbFNjcm9sbCxcclxuICAgICAgc2l6ZTogdGhpcy5zaXplLFxyXG4gICAgICBvbmx5TGVhZjogdGhpcy5vbmx5TGVhZixcclxuICAgICAgZXhwYW5kZWRMZXZlbDogdGhpcy5leHBhbmRlZExldmVsLFxyXG4gICAgICBpbnB1dENoYW5nZTogdGhpcy5pbnB1dENoYW5nZSxcclxuICAgICAgZGVzdHJveVBvcnRhbDogKCkgPT4gdGhpcy5kZXN0cm95UG9ydGFsKCksXHJcbiAgICAgIG5vZGVFbWl0OiAobm9kZTogWFRyZWVTZWxlY3ROb2RlLCB2YWx1ZTogWFRyZWVTZWxlY3ROb2RlW10gfCAoc3RyaW5nIHwgbnVtYmVyKVtdKSA9PiB0aGlzLm5vZGVDbGljayhub2RlLCB2YWx1ZSksXHJcbiAgICAgIGFuaW1hdGluZzogKGluZzogYm9vbGVhbikgPT4gKHRoaXMuYW5pbWF0aW5nID0gaW5nKVxyXG4gICAgfSk7XHJcbiAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbm9kZUNsaWNrKG5vZGU6IFhUcmVlU2VsZWN0Tm9kZSwgdmFsdWU/OiBYVHJlZVNlbGVjdE5vZGVbXSB8IChzdHJpbmcgfCBudW1iZXIpW10pIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIGlmICh0aGlzLnZhbHVlLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZUlucHV0KSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQgPSB0aGlzLm11bHRpcGxlSW5wdXQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoaW5wdXQsICd3aWR0aCcsICcycmVtJyk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuc2VhcmNoICYmIHRoaXMubXVsdGlwbGVTZWFyY2hWYWx1ZSAhPT0gJycpIHtcclxuICAgICAgICB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLm5leHQoJycpO1xyXG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UubmV4dChbLi4udGhpcy52YWx1ZV0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKG5vZGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbm9kZSA9IG5vZGUgYXMgWFRyZWVTZWxlY3ROb2RlO1xyXG4gICAgICBpZiAodGhpcy5zaG93UGF0aCkge1xyXG4gICAgICAgIGNvbnN0IHBhcmVudHMgPSB0aGlzLmdldFBhcmVudFBhdGgobm9kZSk7XHJcbiAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSBwYXJlbnRzLm1hcCgoeCkgPT4geC5sYWJlbCkuam9pbih0aGlzLnNlcGFyYXRvcik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSBub2RlLmxhYmVsO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbm9kZTtcclxuICAgICAgdGhpcy52YWx1ZSA9IG5vZGUuaWQ7XHJcbiAgICAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlYXJjaCAmJiB0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVJbnB1dC5pbnB1dEZvY3VzKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlucHV0Q29tLmlucHV0Rm9jdXMoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0QWxsTm9kZXModmFsdWU6IFhUcmVlU2VsZWN0Tm9kZVtdIHwgKHN0cmluZyB8IG51bWJlcilbXSkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgc2V0UGxhY2VtZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsU2VydmljZS5zZXRQbGFjZW1lbnQoe1xyXG4gICAgICBlbGVtZW50UmVmOiB0aGlzLmlucHV0Q29tLmlucHV0UmVmLFxyXG4gICAgICBwbGFjZW1lbnQ6IFt0aGlzLnBsYWNlbWVudCBhcyBYUG9zaXRpb25Ub3BCb3R0b20sICdib3R0b20nLCAndG9wJ10sXHJcbiAgICAgIHRyYW5zZm9ybU9yaWdpbk9uOiAneC10cmVlLXNlbGVjdC1wb3J0YWwnXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldFBvcnRhbCgpIHtcclxuICAgIHRoaXMucG9ydGFsQXR0YWNoZWQoKSAmJiB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8udXBkYXRlUG9zaXRpb25TdHJhdGVneSh0aGlzLnNldFBsYWNlbWVudCgpKTtcclxuICB9XHJcblxyXG4gIGZvcm1Db250cm9sQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgdGhpcy5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uS2V5ZG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIHRoaXMua2V5ZG93blN1YmplY3QubmV4dCgkZXZlbnQpO1xyXG4gICAgaWYgKCRldmVudC5rZXlDb2RlICE9PSBUQUIgJiYgIXRoaXMuc2VhcmNoKSB7XHJcbiAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25Gb2N1cyhfZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5zZWFyY2ggJiYgdGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLm11bHRpcGxlSW5wdXQuaW5wdXRGb2N1cygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dENvbS5pbnB1dEZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbklucHV0KF9ldmVudDogSW5wdXRFdmVudCkge1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmlucHV0Q2hhbmdlLm5leHQodGhpcy5tdWx0aXBsZSA/IHRoaXMubXVsdGlwbGVTZWFyY2hWYWx1ZSA6IHRoaXMuZGlzcGxheVZhbHVlKSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgI3RyZWVTZWxlY3QgY2xhc3M9XCJ4LXRyZWUtc2VsZWN0XCIgW2NsYXNzLngtdHJlZS1zZWxlY3QtbXVsdGlwbGVdPVwibXVsdGlwbGVcIj5cclxuICA8ZGl2IGNsYXNzPVwieC10cmVlLXNlbGVjdC1yb3dcIj5cclxuICAgIDx4LWlucHV0XHJcbiAgICAgICNpbnB1dENvbVxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIFtsYWJlbF09XCJsYWJlbFwiXHJcbiAgICAgIFtsYWJlbFdpZHRoXT1cImxhYmVsV2lkdGhcIlxyXG4gICAgICBbbGFiZWxBbGlnbl09XCJsYWJlbEFsaWduXCJcclxuICAgICAgW2p1c3RpZnldPVwianVzdGlmeVwiXHJcbiAgICAgIFthbGlnbl09XCJhbGlnblwiXHJcbiAgICAgIFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCJcclxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgW3ZhbGlkYXRvcl09XCJ2YWxpZGF0b3JcIlxyXG4gICAgICBbaWNvbl09XCJpY29uXCJcclxuICAgICAgW2ljb25TcGluXT1cImljb25TcGluXCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgW3JlYWRvbmx5XT1cImdldFJlYWRvbmx5XCJcclxuICAgICAgW2NsZWFyYWJsZV09XCJzaG93Q2xlYXJhYmxlXCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJkaXNwbGF5VmFsdWVcIlxyXG4gICAgICBbdmFsdWVUcGxdPVwidmFsdWVUcGwgPyB2YWx1ZVRwbCA6IG5vZGVUcGxcIlxyXG4gICAgICBbdmFsdWVUcGxDb250ZXh0XT1cInZhbHVlVHBsQ29udGV4dFwiXHJcbiAgICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgICBbYm9yZGVyZWRdPVwiYm9yZGVyZWRcIlxyXG4gICAgICBbYmVmb3JlXT1cImJlZm9yZVwiXHJcbiAgICAgIFthZnRlcl09XCJhZnRlclwiXHJcbiAgICAgIFtwYXR0ZXJuXT1cInBhdHRlcm5cIlxyXG4gICAgICBbbWVzc2FnZV09XCJtZXNzYWdlXCJcclxuICAgICAgW3BvaW50ZXJdPVwidHJ1ZVwiXHJcbiAgICAgIFtpbnB1dFBhZGRpbmddPVwiaW5wdXRQYWRkaW5nXCJcclxuICAgICAgWyhhY3RpdmUpXT1cImFjdGl2ZVwiXHJcbiAgICAgIChjbGVhckVtaXQpPVwiY2xlYXJFbWl0KClcIlxyXG4gICAgICAoeEtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxyXG4gICAgICAoeElucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXHJcbiAgICAgICh4Rm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcclxuICAgICAgKHhDbGljayk9XCJzaG93UG9ydGFsKHRydWUpXCJcclxuICAgICAgKHhNb3VzZWVudGVyKT1cIm1lbnRlcigpXCJcclxuICAgICAgKHhNb3VzZWxlYXZlKT1cIm1sZWF2ZSgpXCJcclxuICAgICAgKHhDb21wb3NpdGlvbik9XCJjb21wb3NpdGlvbiA9ICRldmVudFwiXHJcbiAgICA+PC94LWlucHV0PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbXVsdGlwbGVWYWx1ZVRwbD5cclxuICA8eC10YWdcclxuICAgIFtALmRpc2FibGVkXT1cInRydWVcIlxyXG4gICAgKm5nRm9yPVwibGV0IG5vZGUgb2YgZGlzcGxheU5vZGVzOyBpbmRleCBhcyBpXCJcclxuICAgIFtjbG9zYWJsZV09XCIhZGlzYWJsZWRcIlxyXG4gICAgKGNsb3NlKT1cImNsb3NlTm9kZSgkZXZlbnQsIG5vZGUsIGkpXCJcclxuICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgPnt7IHNob3dQYXRoID8gbm9kZS5wYXRoIDogbm9kZS5sYWJlbCB9fTwveC10YWdcclxuICA+XHJcbiAgPHgtdGFnIFtALmRpc2FibGVkXT1cInRydWVcIiAqbmdJZj1cInNob3dEaXNwbGF5TW9yZVwiIFtzaXplXT1cInNpemVcIj5cclxuICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJnZXRNYXhUYWdDb250ZW50OyBjb250ZXh0OiB7ICRzdXJwbHVzOiBzZWxlY3RlZFN1cnBsdXMsICR0b3RhbDogc2VsZWN0ZWRUb3RhbCB9XCI+e3tcclxuICAgICAgZGlzcGxheU1vcmVcclxuICAgIH19PC9uZy1jb250YWluZXI+XHJcbiAgPC94LXRhZz5cclxuICA8eC1pbnB1dFxyXG4gICAgI211bHRpcGxlSW5wdXRcclxuICAgICpuZ0lmPVwic2VhcmNoXCJcclxuICAgIGJvcmRlcmVkPVwiZmFsc2VcIlxyXG4gICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICBpbnB1dFBhZGRpbmc9XCIwLjI3NVwiXHJcbiAgICBbKG5nTW9kZWwpXT1cIm11bHRpcGxlU2VhcmNoVmFsdWVcIlxyXG4gICAgKHhJbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxyXG4gICAgKHhLZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcclxuICA+PC94LWlucHV0PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|
|
@@ -35,7 +35,7 @@ export class XTreeSelectProperty extends XControlValueAccessor {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
/** @nocollapse */ XTreeSelectProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeSelectProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
38
|
-
/** @nocollapse */ XTreeSelectProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XTreeSelectProperty, selector: "ng-component", inputs: { data: "data", clearable: "clearable", async: "async", placement: "placement", multiple: "multiple", selectAll: "selectAll", selectAllText: "selectAllText", nodeTpl: "nodeTpl", size: "size", expandedLevel: "expandedLevel", bordered: "bordered", portalMaxHeight: "portalMaxHeight", search: "search", caseSensitive: "caseSensitive", debounceTime: "debounceTime", maxTagCount: "maxTagCount", maxTagContent: "maxTagContent", virtualScroll: "virtualScroll", showPath: "showPath", separator: "separator" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
38
|
+
/** @nocollapse */ XTreeSelectProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XTreeSelectProperty, selector: "ng-component", inputs: { data: "data", clearable: "clearable", async: "async", placement: "placement", multiple: "multiple", selectAll: "selectAll", selectAllText: "selectAllText", nodeTpl: "nodeTpl", size: "size", expandedLevel: "expandedLevel", bordered: "bordered", portalMaxHeight: "portalMaxHeight", search: "search", caseSensitive: "caseSensitive", debounceTime: "debounceTime", maxTagCount: "maxTagCount", maxTagContent: "maxTagContent", virtualScroll: "virtualScroll", showPath: "showPath", separator: "separator", onlyLeaf: "onlyLeaf" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
39
39
|
__decorate([
|
|
40
40
|
XDataConvert()
|
|
41
41
|
], XTreeSelectProperty.prototype, "data", void 0);
|
|
@@ -100,6 +100,10 @@ __decorate([
|
|
|
100
100
|
__decorate([
|
|
101
101
|
XWithConfig(X_CONFIG_NAME)
|
|
102
102
|
], XTreeSelectProperty.prototype, "separator", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
XInputBoolean(),
|
|
105
|
+
XWithConfig(X_CONFIG_NAME, false)
|
|
106
|
+
], XTreeSelectProperty.prototype, "onlyLeaf", void 0);
|
|
103
107
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeSelectProperty, decorators: [{
|
|
104
108
|
type: Component,
|
|
105
109
|
args: [{ template: '' }]
|
|
@@ -143,6 +147,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
143
147
|
type: Input
|
|
144
148
|
}], separator: [{
|
|
145
149
|
type: Input
|
|
150
|
+
}], onlyLeaf: [{
|
|
151
|
+
type: Input
|
|
146
152
|
}] } });
|
|
147
153
|
/**
|
|
148
154
|
* Tree Select Portal
|
|
@@ -150,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
150
156
|
* @decorator component
|
|
151
157
|
*/
|
|
152
158
|
export const XTreeSelectPortalPrefix = 'x-tree-select-portal';
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QucHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90cmVlLXNlbGVjdC90cmVlLXNlbGVjdC5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFlBQVksRUFDWixhQUFhLEVBR2IsV0FBVyxFQUdYLFlBQVksRUFHYixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBZSxNQUFNLHVCQUF1QixDQUFDOztBQUUzRTs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsZUFBZSxDQUFDO0FBQ2pELE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQztBQUVuQzs7R0FFRztBQUVILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxxQkFBMEI7SUFEbkU7O1FBRUU7OztXQUdHO1FBQ3NCLFNBQUksR0FBMkIsRUFBRSxDQUFDO1FBeUMzRDs7O1dBR0c7UUFDc0Isa0JBQWEsR0FBWSxDQUFDLENBQUMsQ0FBQztRQStDckQ7Ozs7V0FJRztRQUMwQyxjQUFTLEdBQVcsS0FBSyxDQUFDO0tBQ3hFOzttSUF2R1ksbUJBQW1CO3VIQUFuQixtQkFBbUIseWtCQURULEVBQUU7QUFNRTtJQUFmLFlBQVksRUFBRTtpREFBbUM7QUFLVztJQUE1RCxXQUFXLENBQVcsYUFBYSxFQUFFLElBQUksQ0FBQztJQUFFLGFBQWEsRUFBRTtzREFBc0I7QUFLakU7SUFBaEIsYUFBYSxFQUFFO2tEQUFrQjtBQUt3QjtJQUF6RCxXQUFXLENBQXFCLGFBQWEsRUFBRSxRQUFRLENBQUM7c0RBQWdDO0FBS3hFO0lBQWhCLGFBQWEsRUFBRTtxREFBcUI7QUFLcEI7SUFBaEIsYUFBYSxFQUFFO3NEQUFzQjtBQUtGO0lBQW5DLFdBQVcsQ0FBUyxhQUFhLENBQUM7MERBQXdCO0FBVWQ7SUFBNUMsV0FBVyxDQUFRLGFBQWEsRUFBRSxRQUFRLENBQUM7aURBQXVCO0FBS25EO0lBQWYsWUFBWSxFQUFFOzBEQUE2QjtBQUtpQjtJQUE1RCxhQUFhLEVBQUU7SUFBRSxXQUFXLENBQVcsYUFBYSxFQUFFLElBQUksQ0FBQztxREFBcUI7QUFLcEM7SUFBNUMsV0FBVyxDQUFTLGFBQWEsRUFBRSxPQUFPLENBQUM7NERBQTBCO0FBS1I7SUFBN0QsYUFBYSxFQUFFO0lBQUUsV0FBVyxDQUFXLGFBQWEsRUFBRSxLQUFLLENBQUM7bURBQW1CO0FBS25CO0lBQTVELGFBQWEsRUFBRTtJQUFFLFdBQVcsQ0FBVyxhQUFhLEVBQUUsSUFBSSxDQUFDOzBEQUEwQjtBQUs3QztJQUF4QyxXQUFXLENBQVMsYUFBYSxFQUFFLEdBQUcsQ0FBQzt5REFBdUI7QUFLVjtJQUFwRCxZQUFZLEVBQUU7SUFBRSxXQUFXLENBQVUsYUFBYSxDQUFDO3dEQUF1QjtBQU1wQztJQUF0QyxXQUFXLENBQVksYUFBYSxDQUFDOzBEQUEyQjtBQUtWO0lBQXRELFdBQVcsQ0FBVyxhQUFhLENBQUM7SUFBRSxhQUFhLEVBQUU7MERBQTBCO0FBS2xCO0lBQTdELFdBQVcsQ0FBVyxhQUFhLEVBQUUsS0FBSyxDQUFDO0lBQUUsYUFBYSxFQUFFO3FEQUFxQjtBQU05QztJQUFuQyxXQUFXLENBQVMsYUFBYSxDQUFDO3NEQUEyQjsyRkF0RzVELG1CQUFtQjtrQkFEL0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7OEJBTUEsSUFBSTtzQkFBNUIsS0FBSztnQkFLZ0UsU0FBUztzQkFBOUUsS0FBSztnQkFLb0IsS0FBSztzQkFBOUIsS0FBSztnQkFLNkQsU0FBUztzQkFBM0UsS0FBSztnQkFLb0IsUUFBUTtzQkFBakMsS0FBSztnQkFLb0IsU0FBUztzQkFBbEMsS0FBSztnQkFLdUMsYUFBYTtzQkFBekQsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS3lELElBQUk7c0JBQWxFLEtBQUs7Z0JBS21CLGFBQWE7c0JBQXJDLEtBQUs7Z0JBS2dFLFFBQVE7c0JBQTdFLEtBQUs7Z0JBS2dELGVBQWU7c0JBQXBFLEtBQUs7Z0JBS2lFLE1BQU07c0JBQTVFLEtBQUs7Z0JBS2dFLGFBQWE7c0JBQWxGLEtBQUs7Z0JBSzRDLFlBQVk7c0JBQTdELEtBQUs7Z0JBS3dELFdBQVc7c0JBQXhFLEtBQUs7Z0JBTTBDLGFBQWE7c0JBQTVELEtBQUs7Z0JBSzBELGFBQWE7c0JBQTVFLEtBQUs7Z0JBS2lFLFFBQVE7c0JBQTlFLEtBQUs7Z0JBTXVDLFNBQVM7c0JBQXJELEtBQUs7O0FBa0ZSOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgWFBhcmVudElkZW50aXR5UHJvcGVydHksXHJcbiAgWERhdGFDb252ZXJ0LFxyXG4gIFhJbnB1dEJvb2xlYW4sXHJcbiAgWERhdGEsXHJcbiAgWEJvb2xlYW4sXHJcbiAgWFdpdGhDb25maWcsXHJcbiAgWFBvc2l0aW9uVG9wQm90dG9tLFxyXG4gIFhTaXplLFxyXG4gIFhJbnB1dE51bWJlcixcclxuICBYTnVtYmVyLFxyXG4gIFhUZW1wbGF0ZVxyXG59IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBJbnB1dCwgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYQ29udHJvbFZhbHVlQWNjZXNzb3IsIFhGb3JtT3B0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvYmFzZS1mb3JtJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlIFNlbGVjdFxyXG4gKiBAc2VsZWN0b3IgeC10cmVlLXNlbGVjdFxyXG4gKiBAZGVjb3JhdG9yIGNvbXBvbmVudFxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IFhUcmVlU2VsZWN0UHJlZml4ID0gJ3gtdHJlZS1zZWxlY3QnO1xyXG5jb25zdCBYX0NPTkZJR19OQU1FID0gJ3RyZWVTZWxlY3QnO1xyXG5cclxuLyoqXHJcbiAqIFRyZWUgU2VsZWN0IFByb3BlcnR5XHJcbiAqL1xyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZVNlbGVjdFByb3BlcnR5IGV4dGVuZHMgWENvbnRyb2xWYWx1ZUFjY2Vzc29yPGFueT4ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmlbDmja5cclxuICAgKiBAZW5fVVMgTm9kZSBkYXRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhEYXRhQ29udmVydCgpIGRhdGE6IFhEYXRhPFhUcmVlU2VsZWN0Tm9kZT4gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5riF6Zmk5oyJ6ZKuXHJcbiAgICogQGVuX1VTIENsZWFyIGJ1dHRvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgdHJ1ZSkgQFhJbnB1dEJvb2xlYW4oKSBjbGVhcmFibGU/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5byC5q2l5Yqg6L29XHJcbiAgICogQGVuX1VTIEFzeW5jaHJvbm91cyBsb2FkaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBhc3luYz86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXnpLrmlrnkvY1cclxuICAgKiBAZW5fVVMgRGlzcGxheSBwb3NpdGlvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYUG9zaXRpb25Ub3BCb3R0b20+KFhfQ09ORklHX05BTUUsICdib3R0b20nKSBwbGFjZW1lbnQ/OiBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAieWKn+iDvVxyXG4gICAqIEBlbl9VUyBNdWx0aXBsZSBjaG9pY2VcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG11bHRpcGxlPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAiea3u+WKoOWFqOmAieWKn+iDvVxyXG4gICAqIEBlbl9VUyBNdWx0aSBjaG9pY2UgdG8gYWRkIGZ1bGwgc2VsZWN0aW9uIGZ1bmN0aW9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBzZWxlY3RBbGw/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5YWo6YCJ55qE5paH5a2XXHJcbiAgICogQGVuX1VTIFNlbGVjdGVkIGFsbCB0ZXh0XHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPHN0cmluZz4oWF9DT05GSUdfTkFNRSkgc2VsZWN0QWxsVGV4dD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55qih5p2/XHJcbiAgICogQGVuX1VTIE5vZGUgdGVtcGxhdGVcclxuICAgKi9cclxuICBASW5wdXQoKSBub2RlVHBsPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bC65a+4XHJcbiAgICogQGVuX1VTIFNpemVcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WFNpemU+KFhfQ09ORklHX05BTUUsICdtZWRpdW0nKSBvdmVycmlkZSBzaXplITogWFNpemU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOm7mOiupOWxleW8gOeahOWxgue6p1xyXG4gICAqIEBlbl9VUyBEZWZhdWx0IGV4cGFuZGVkIGxldmVsXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIGV4cGFuZGVkTGV2ZWw6IFhOdW1iZXIgPSAtMTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pi+56S66L655qGGXHJcbiAgICogQGVuX1VTIERpc3BsYXkgQm9yZGVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBAWFdpdGhDb25maWc8WEJvb2xlYW4+KFhfQ09ORklHX05BTUUsIHRydWUpIGJvcmRlcmVkITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOS4i+aLieahhueahOacgOWkp+mrmOW6plxyXG4gICAqIEBlbl9VUyBUaGUgYmlnZ2VzdCBoZWlnaHQgb2YgdGhlIGRyb3AtZG93biBib3hcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8c3RyaW5nPihYX0NPTkZJR19OQU1FLCAnMTJyZW0nKSBwb3J0YWxNYXhIZWlnaHQhOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOi+k+WFpeaQnOe0olxyXG4gICAqIEBlbl9VUyBJbnB1dCBzZWFyY2hcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgZmFsc2UpIHNlYXJjaCE6IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDljLnphY3ljLrliIblpKflsI/lhplcclxuICAgKiBAZW5fVVMgQ2FzZS1zZW5zaXRpdmVcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgdHJ1ZSkgY2FzZVNlbnNpdGl2ZSE6IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDovpPlhaXlu7bov5/miafooYzml7bpl7TvvIxtc1xyXG4gICAqIEBlbl9VUyBFbnRlciBhIGRlbGF5IGV4ZWN1dGlvbiB0aW1lLCBtc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxudW1iZXI+KFhfQ09ORklHX05BTUUsIDIwMCkgZGVib3VuY2VUaW1lPzogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpJrpgInml7bmmL7npLrnmoTpgInkuK3mlbDmja7kuKrmlbDvvIzlhbblroPnmoTlnKjmm7TlpJrkuK3mmL7npLrvvIzpu5jorqTlhajpg6jmmL7npLpcclxuICAgKiBAZW5fVVMgRGlzcGxheSB0aGUgbnVtYmVyIG9mIGRhdGEgaW4gdGhlIG1heGltdW0gZWxlY3Rpb24sIGFuZCB0aGUgb3RoZXJzIGFyZSBkaXNwbGF5ZWQgaW4gbW9yZSBvZiB0aGVtXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIEBYV2l0aENvbmZpZzxYTnVtYmVyPihYX0NPTkZJR19OQU1FKSBtYXhUYWdDb3VudD86IFhOdW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAieaXtuaYvuekuueahOS4quaVsOi2hei/h+aMh+WumuS4quaVsO+8jOaYvuekuueahOaWh+Wtl+aooeeJiFxyXG4gICAqIEBlbl9VUyBUaGUgbnVtYmVyIGRpc3BsYXllZCB3aGVuIG11bHRpcGxlIGNob2ljZXMgZXhjZWVkcyB0aGUgc3BlY2lmaWVkIG51bWJlciwgdGhlIGRpc3BsYXllZCB0ZXh0IHRlbXBsYXRlIGRpc3BsYXllZFxyXG4gICAqIEBkZWZhdWx0ICfmm7TlpJp7e3N1cnBsdXN9feS4qumAieS4rSdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WFRlbXBsYXRlPihYX0NPTkZJR19OQU1FKSBtYXhUYWdDb250ZW50PzogWFRlbXBsYXRlO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvIDlkK/omZrmi5/mu5rliqhcclxuICAgKiBAZW5fVVMgVHVybiBvbiB2aXJ0dWFsIHNjcm9sbGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSkgQFhJbnB1dEJvb2xlYW4oKSB2aXJ0dWFsU2Nyb2xsITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYvuekuueahOWAvOWxleekuui3r+W+hCBBQSA+IEJCID4gQ0NcclxuICAgKiBAZW5fVVMgRGlzcGxheSB2YWx1ZSBkaXNwbGF5IHBhdGguIEFBID4gQkIgPiBDQ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgZmFsc2UpIEBYSW5wdXRCb29sZWFuKCkgc2hvd1BhdGghOiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6Lev5b6E5YiG6ZqU56ymXHJcbiAgICogQGVuX1VTIFBhdGggc2VwYXJhdG9yXHJcbiAgICogQGRlZmF1bHQgJyAvICdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8c3RyaW5nPihYX0NPTkZJR19OQU1FKSBzZXBhcmF0b3I6IHN0cmluZyA9ICcgLyAnO1xyXG59XHJcblxyXG4vKipcclxuICogVHJlZSBTZWxlY3QgT3B0aW9uXHJcbiAqIEB1bmRvY3VtZW50IHRydWVcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgWFRyZWVTZWxlY3RPcHRpb24gZXh0ZW5kcyBYRm9ybU9wdGlvbiB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueaVsOaNrlxyXG4gICAqIEBlbl9VUyBOb2RlIGRhdGFcclxuICAgKi9cclxuICBkYXRhPzogWERhdGE8WFRyZWVTZWxlY3ROb2RlPjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5byC5q2l5Yqg6L29XHJcbiAgICogQGVuX1VTIEFzeW5jaHJvbm91cyBsb2FkaW5nXHJcbiAgICovXHJcbiAgYXN5bmM/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bGV56S65pa55L2NXHJcbiAgICogQGVuX1VTIERpc3BsYXkgcG9zaXRpb25cclxuICAgKi9cclxuICBwbGFjZW1lbnQ/OiBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAieWKn+iDvVxyXG4gICAqIEBlbl9VUyBNdWx0aXBsZSBjaG9pY2VcclxuICAgKi9cclxuICBtdWx0aXBsZT86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpJrpgInmt7vliqDlhajpgInlip/og71cclxuICAgKiBAZW5fVVMgTXVsdGkgY2hvaWNlIHRvIGFkZCBmdWxsIHNlbGVjdGlvbiBmdW5jdGlvblxyXG4gICAqL1xyXG4gIHNlbGVjdEFsbD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlhajpgInnmoTmloflrZdcclxuICAgKiBAZW5fVVMgU2VsZWN0ZWQgYWxsIHRleHRcclxuICAgKi9cclxuICBzZWxlY3RBbGxUZXh0Pzogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmqKHmnb9cclxuICAgKiBAZW5fVVMgTm9kZSB0ZW1wbGF0ZVxyXG4gICAqL1xyXG4gIG5vZGVUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsLrlr7hcclxuICAgKiBAZW5fVVMgU2l6ZVxyXG4gICAqL1xyXG4gIHNpemU/OiBYU2l6ZTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pi+56S66L655qGGXHJcbiAgICogQGVuX1VTIERpc3BsYXkgQm9yZGVyXHJcbiAgICovXHJcbiAgYm9yZGVyZWQ/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5LiL5ouJ5qGG55qE5pyA5aSn6auY5bqmXHJcbiAgICogQGVuX1VTIFRoZSBiaWdnZXN0IGhlaWdodCBvZiB0aGUgZHJvcC1kb3duIGJveFxyXG4gICAqL1xyXG4gIHBvcnRhbE1heEhlaWdodD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g6L6T5YWl5pCc57SiXHJcbiAgICogQGVuX1VTIElucHV0IHNlYXJjaFxyXG4gICAqL1xyXG4gIHNlYXJjaD86IFhCb29sZWFuO1xyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIFRyZWUgU2VsZWN0IOaVsOaNruWvueixoVxyXG4gKiBAZW5fVVMgVHJlZSBTZWxlY3QgZGF0YSBvYmplY3RcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgWFRyZWVTZWxlY3ROb2RlIGV4dGVuZHMgWFBhcmVudElkZW50aXR5UHJvcGVydHk8WFRyZWVTZWxlY3ROb2RlPiB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOW9k+WJjeiKgueCuei3r+W+hOWQjeensFxyXG4gICAqIEBlbl9VUyBDdXJyZW50IG5vZGUgcGF0aCBuYW1lXHJcbiAgICovXHJcbiAgcGF0aD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g6Ieq5a6a5LmJ5bGe5oCnXHJcbiAgICogQGVuX1VTIEN1c3RvbSBhdHRyaWJ1dGVcclxuICAgKi9cclxuICBbcHJvcGVydHk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRyZWUgU2VsZWN0IFBvcnRhbFxyXG4gKiBAc2VsZWN0b3IgeC10cmVlLXNlbGVjdC1wb3J0YWxcclxuICogQGRlY29yYXRvciBjb21wb25lbnRcclxuICovXHJcbmV4cG9ydCBjb25zdCBYVHJlZVNlbGVjdFBvcnRhbFByZWZpeCA9ICd4LXRyZWUtc2VsZWN0LXBvcnRhbCc7XHJcbiJdfQ==
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QucHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90cmVlLXNlbGVjdC90cmVlLXNlbGVjdC5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFlBQVksRUFDWixhQUFhLEVBR2IsV0FBVyxFQUdYLFlBQVksRUFHYixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBZSxNQUFNLHVCQUF1QixDQUFDOztBQUUzRTs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsZUFBZSxDQUFDO0FBQ2pELE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQztBQUVuQzs7R0FFRztBQUVILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxxQkFBMEI7SUFEbkU7O1FBRUU7OztXQUdHO1FBQ3NCLFNBQUksR0FBMkIsRUFBRSxDQUFDO1FBeUMzRDs7O1dBR0c7UUFDc0Isa0JBQWEsR0FBWSxDQUFDLENBQUMsQ0FBQztRQStDckQ7Ozs7V0FJRztRQUMwQyxjQUFTLEdBQVcsS0FBSyxDQUFDO0tBTXhFOzttSUE1R1ksbUJBQW1CO3VIQUFuQixtQkFBbUIsK2xCQURULEVBQUU7QUFNRTtJQUFmLFlBQVksRUFBRTtpREFBbUM7QUFLVztJQUE1RCxXQUFXLENBQVcsYUFBYSxFQUFFLElBQUksQ0FBQztJQUFFLGFBQWEsRUFBRTtzREFBc0I7QUFLakU7SUFBaEIsYUFBYSxFQUFFO2tEQUFrQjtBQUt3QjtJQUF6RCxXQUFXLENBQXFCLGFBQWEsRUFBRSxRQUFRLENBQUM7c0RBQWdDO0FBS3hFO0lBQWhCLGFBQWEsRUFBRTtxREFBcUI7QUFLcEI7SUFBaEIsYUFBYSxFQUFFO3NEQUFzQjtBQUtGO0lBQW5DLFdBQVcsQ0FBUyxhQUFhLENBQUM7MERBQXdCO0FBVWQ7SUFBNUMsV0FBVyxDQUFRLGFBQWEsRUFBRSxRQUFRLENBQUM7aURBQXVCO0FBS25EO0lBQWYsWUFBWSxFQUFFOzBEQUE2QjtBQUtpQjtJQUE1RCxhQUFhLEVBQUU7SUFBRSxXQUFXLENBQVcsYUFBYSxFQUFFLElBQUksQ0FBQztxREFBcUI7QUFLcEM7SUFBNUMsV0FBVyxDQUFTLGFBQWEsRUFBRSxPQUFPLENBQUM7NERBQTBCO0FBS1I7SUFBN0QsYUFBYSxFQUFFO0lBQUUsV0FBVyxDQUFXLGFBQWEsRUFBRSxLQUFLLENBQUM7bURBQW1CO0FBS25CO0lBQTVELGFBQWEsRUFBRTtJQUFFLFdBQVcsQ0FBVyxhQUFhLEVBQUUsSUFBSSxDQUFDOzBEQUEwQjtBQUs3QztJQUF4QyxXQUFXLENBQVMsYUFBYSxFQUFFLEdBQUcsQ0FBQzt5REFBdUI7QUFLVjtJQUFwRCxZQUFZLEVBQUU7SUFBRSxXQUFXLENBQVUsYUFBYSxDQUFDO3dEQUF1QjtBQU1wQztJQUF0QyxXQUFXLENBQVksYUFBYSxDQUFDOzBEQUEyQjtBQUtWO0lBQXRELFdBQVcsQ0FBVyxhQUFhLENBQUM7SUFBRSxhQUFhLEVBQUU7MERBQTBCO0FBS2xCO0lBQTdELFdBQVcsQ0FBVyxhQUFhLEVBQUUsS0FBSyxDQUFDO0lBQUUsYUFBYSxFQUFFO3FEQUFxQjtBQU05QztJQUFuQyxXQUFXLENBQVMsYUFBYSxDQUFDO3NEQUEyQjtBQUtBO0lBQTdELGFBQWEsRUFBRTtJQUFFLFdBQVcsQ0FBVyxhQUFhLEVBQUUsS0FBSyxDQUFDO3FEQUFxQjsyRkEzR2hGLG1CQUFtQjtrQkFEL0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7OEJBTUEsSUFBSTtzQkFBNUIsS0FBSztnQkFLZ0UsU0FBUztzQkFBOUUsS0FBSztnQkFLb0IsS0FBSztzQkFBOUIsS0FBSztnQkFLNkQsU0FBUztzQkFBM0UsS0FBSztnQkFLb0IsUUFBUTtzQkFBakMsS0FBSztnQkFLb0IsU0FBUztzQkFBbEMsS0FBSztnQkFLdUMsYUFBYTtzQkFBekQsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS3lELElBQUk7c0JBQWxFLEtBQUs7Z0JBS21CLGFBQWE7c0JBQXJDLEtBQUs7Z0JBS2dFLFFBQVE7c0JBQTdFLEtBQUs7Z0JBS2dELGVBQWU7c0JBQXBFLEtBQUs7Z0JBS2lFLE1BQU07c0JBQTVFLEtBQUs7Z0JBS2dFLGFBQWE7c0JBQWxGLEtBQUs7Z0JBSzRDLFlBQVk7c0JBQTdELEtBQUs7Z0JBS3dELFdBQVc7c0JBQXhFLEtBQUs7Z0JBTTBDLGFBQWE7c0JBQTVELEtBQUs7Z0JBSzBELGFBQWE7c0JBQTVFLEtBQUs7Z0JBS2lFLFFBQVE7c0JBQTlFLEtBQUs7Z0JBTXVDLFNBQVM7c0JBQXJELEtBQUs7Z0JBS2lFLFFBQVE7c0JBQTlFLEtBQUs7O0FBa0ZSOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgWFBhcmVudElkZW50aXR5UHJvcGVydHksXHJcbiAgWERhdGFDb252ZXJ0LFxyXG4gIFhJbnB1dEJvb2xlYW4sXHJcbiAgWERhdGEsXHJcbiAgWEJvb2xlYW4sXHJcbiAgWFdpdGhDb25maWcsXHJcbiAgWFBvc2l0aW9uVG9wQm90dG9tLFxyXG4gIFhTaXplLFxyXG4gIFhJbnB1dE51bWJlcixcclxuICBYTnVtYmVyLFxyXG4gIFhUZW1wbGF0ZVxyXG59IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBJbnB1dCwgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYQ29udHJvbFZhbHVlQWNjZXNzb3IsIFhGb3JtT3B0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvYmFzZS1mb3JtJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlIFNlbGVjdFxyXG4gKiBAc2VsZWN0b3IgeC10cmVlLXNlbGVjdFxyXG4gKiBAZGVjb3JhdG9yIGNvbXBvbmVudFxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IFhUcmVlU2VsZWN0UHJlZml4ID0gJ3gtdHJlZS1zZWxlY3QnO1xyXG5jb25zdCBYX0NPTkZJR19OQU1FID0gJ3RyZWVTZWxlY3QnO1xyXG5cclxuLyoqXHJcbiAqIFRyZWUgU2VsZWN0IFByb3BlcnR5XHJcbiAqL1xyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZVNlbGVjdFByb3BlcnR5IGV4dGVuZHMgWENvbnRyb2xWYWx1ZUFjY2Vzc29yPGFueT4ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmlbDmja5cclxuICAgKiBAZW5fVVMgTm9kZSBkYXRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhEYXRhQ29udmVydCgpIGRhdGE6IFhEYXRhPFhUcmVlU2VsZWN0Tm9kZT4gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5riF6Zmk5oyJ6ZKuXHJcbiAgICogQGVuX1VTIENsZWFyIGJ1dHRvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgdHJ1ZSkgQFhJbnB1dEJvb2xlYW4oKSBjbGVhcmFibGU/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5byC5q2l5Yqg6L29XHJcbiAgICogQGVuX1VTIEFzeW5jaHJvbm91cyBsb2FkaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBhc3luYz86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXnpLrmlrnkvY1cclxuICAgKiBAZW5fVVMgRGlzcGxheSBwb3NpdGlvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYUG9zaXRpb25Ub3BCb3R0b20+KFhfQ09ORklHX05BTUUsICdib3R0b20nKSBwbGFjZW1lbnQ/OiBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAieWKn+iDvVxyXG4gICAqIEBlbl9VUyBNdWx0aXBsZSBjaG9pY2VcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG11bHRpcGxlPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAiea3u+WKoOWFqOmAieWKn+iDvVxyXG4gICAqIEBlbl9VUyBNdWx0aSBjaG9pY2UgdG8gYWRkIGZ1bGwgc2VsZWN0aW9uIGZ1bmN0aW9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBzZWxlY3RBbGw/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5YWo6YCJ55qE5paH5a2XXHJcbiAgICogQGVuX1VTIFNlbGVjdGVkIGFsbCB0ZXh0XHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPHN0cmluZz4oWF9DT05GSUdfTkFNRSkgc2VsZWN0QWxsVGV4dD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55qih5p2/XHJcbiAgICogQGVuX1VTIE5vZGUgdGVtcGxhdGVcclxuICAgKi9cclxuICBASW5wdXQoKSBub2RlVHBsPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bC65a+4XHJcbiAgICogQGVuX1VTIFNpemVcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WFNpemU+KFhfQ09ORklHX05BTUUsICdtZWRpdW0nKSBvdmVycmlkZSBzaXplITogWFNpemU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOm7mOiupOWxleW8gOeahOWxgue6p1xyXG4gICAqIEBlbl9VUyBEZWZhdWx0IGV4cGFuZGVkIGxldmVsXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIGV4cGFuZGVkTGV2ZWw6IFhOdW1iZXIgPSAtMTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pi+56S66L655qGGXHJcbiAgICogQGVuX1VTIERpc3BsYXkgQm9yZGVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBAWFdpdGhDb25maWc8WEJvb2xlYW4+KFhfQ09ORklHX05BTUUsIHRydWUpIGJvcmRlcmVkITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOS4i+aLieahhueahOacgOWkp+mrmOW6plxyXG4gICAqIEBlbl9VUyBUaGUgYmlnZ2VzdCBoZWlnaHQgb2YgdGhlIGRyb3AtZG93biBib3hcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8c3RyaW5nPihYX0NPTkZJR19OQU1FLCAnMTJyZW0nKSBwb3J0YWxNYXhIZWlnaHQhOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOi+k+WFpeaQnOe0olxyXG4gICAqIEBlbl9VUyBJbnB1dCBzZWFyY2hcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgZmFsc2UpIHNlYXJjaCE6IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDljLnphY3ljLrliIblpKflsI/lhplcclxuICAgKiBAZW5fVVMgQ2FzZS1zZW5zaXRpdmVcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgdHJ1ZSkgY2FzZVNlbnNpdGl2ZSE6IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDovpPlhaXlu7bov5/miafooYzml7bpl7TvvIxtc1xyXG4gICAqIEBlbl9VUyBFbnRlciBhIGRlbGF5IGV4ZWN1dGlvbiB0aW1lLCBtc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxudW1iZXI+KFhfQ09ORklHX05BTUUsIDIwMCkgZGVib3VuY2VUaW1lPzogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpJrpgInml7bmmL7npLrnmoTpgInkuK3mlbDmja7kuKrmlbDvvIzlhbblroPnmoTlnKjmm7TlpJrkuK3mmL7npLrvvIzpu5jorqTlhajpg6jmmL7npLpcclxuICAgKiBAZW5fVVMgRGlzcGxheSB0aGUgbnVtYmVyIG9mIGRhdGEgaW4gdGhlIG1heGltdW0gZWxlY3Rpb24sIGFuZCB0aGUgb3RoZXJzIGFyZSBkaXNwbGF5ZWQgaW4gbW9yZSBvZiB0aGVtXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIEBYV2l0aENvbmZpZzxYTnVtYmVyPihYX0NPTkZJR19OQU1FKSBtYXhUYWdDb3VudD86IFhOdW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWkmumAieaXtuaYvuekuueahOS4quaVsOi2hei/h+aMh+WumuS4quaVsO+8jOaYvuekuueahOaWh+Wtl+aooeeJiFxyXG4gICAqIEBlbl9VUyBUaGUgbnVtYmVyIGRpc3BsYXllZCB3aGVuIG11bHRpcGxlIGNob2ljZXMgZXhjZWVkcyB0aGUgc3BlY2lmaWVkIG51bWJlciwgdGhlIGRpc3BsYXllZCB0ZXh0IHRlbXBsYXRlIGRpc3BsYXllZFxyXG4gICAqIEBkZWZhdWx0ICfmm7TlpJp7e3N1cnBsdXN9feS4qumAieS4rSdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WFRlbXBsYXRlPihYX0NPTkZJR19OQU1FKSBtYXhUYWdDb250ZW50PzogWFRlbXBsYXRlO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvIDlkK/omZrmi5/mu5rliqhcclxuICAgKiBAZW5fVVMgVHVybiBvbiB2aXJ0dWFsIHNjcm9sbGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSkgQFhJbnB1dEJvb2xlYW4oKSB2aXJ0dWFsU2Nyb2xsITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYvuekuueahOWAvOWxleekuui3r+W+hCBBQSA+IEJCID4gQ0NcclxuICAgKiBAZW5fVVMgRGlzcGxheSB2YWx1ZSBkaXNwbGF5IHBhdGguIEFBID4gQkIgPiBDQ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSwgZmFsc2UpIEBYSW5wdXRCb29sZWFuKCkgc2hvd1BhdGghOiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6Lev5b6E5YiG6ZqU56ymXHJcbiAgICogQGVuX1VTIFBhdGggc2VwYXJhdG9yXHJcbiAgICogQGRlZmF1bHQgJyAvICdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8c3RyaW5nPihYX0NPTkZJR19OQU1FKSBzZXBhcmF0b3I6IHN0cmluZyA9ICcgLyAnO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlj6rog73pgInmi6nlj7blrZDoioLngrlcclxuICAgKiBAZW5fVVMgT25seSBsZWFmIG5vZGVzIGNhbiBiZSBzZWxlY3RlZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgQFhXaXRoQ29uZmlnPFhCb29sZWFuPihYX0NPTkZJR19OQU1FLCBmYWxzZSkgb25seUxlYWYhOiBYQm9vbGVhbjtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRyZWUgU2VsZWN0IE9wdGlvblxyXG4gKiBAdW5kb2N1bWVudCB0cnVlXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmVlU2VsZWN0T3B0aW9uIGV4dGVuZHMgWEZvcm1PcHRpb24ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmlbDmja5cclxuICAgKiBAZW5fVVMgTm9kZSBkYXRhXHJcbiAgICovXHJcbiAgZGF0YT86IFhEYXRhPFhUcmVlU2VsZWN0Tm9kZT47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOW8guatpeWKoOi9vVxyXG4gICAqIEBlbl9VUyBBc3luY2hyb25vdXMgbG9hZGluZ1xyXG4gICAqL1xyXG4gIGFzeW5jPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWxleekuuaWueS9jVxyXG4gICAqIEBlbl9VUyBEaXNwbGF5IHBvc2l0aW9uXHJcbiAgICovXHJcbiAgcGxhY2VtZW50PzogWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpJrpgInlip/og71cclxuICAgKiBAZW5fVVMgTXVsdGlwbGUgY2hvaWNlXHJcbiAgICovXHJcbiAgbXVsdGlwbGU/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5aSa6YCJ5re75Yqg5YWo6YCJ5Yqf6IO9XHJcbiAgICogQGVuX1VTIE11bHRpIGNob2ljZSB0byBhZGQgZnVsbCBzZWxlY3Rpb24gZnVuY3Rpb25cclxuICAgKi9cclxuICBzZWxlY3RBbGw/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5YWo6YCJ55qE5paH5a2XXHJcbiAgICogQGVuX1VTIFNlbGVjdGVkIGFsbCB0ZXh0XHJcbiAgICovXHJcbiAgc2VsZWN0QWxsVGV4dD86IHN0cmluZztcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55qih5p2/XHJcbiAgICogQGVuX1VTIE5vZGUgdGVtcGxhdGVcclxuICAgKi9cclxuICBub2RlVHBsPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bC65a+4XHJcbiAgICogQGVuX1VTIFNpemVcclxuICAgKi9cclxuICBzaXplPzogWFNpemU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYvuekuui+ueahhlxyXG4gICAqIEBlbl9VUyBEaXNwbGF5IEJvcmRlclxyXG4gICAqL1xyXG4gIGJvcmRlcmVkPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOS4i+aLieahhueahOacgOWkp+mrmOW6plxyXG4gICAqIEBlbl9VUyBUaGUgYmlnZ2VzdCBoZWlnaHQgb2YgdGhlIGRyb3AtZG93biBib3hcclxuICAgKi9cclxuICBwb3J0YWxNYXhIZWlnaHQ/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOi+k+WFpeaQnOe0olxyXG4gICAqIEBlbl9VUyBJbnB1dCBzZWFyY2hcclxuICAgKi9cclxuICBzZWFyY2g/OiBYQm9vbGVhbjtcclxufVxyXG5cclxuLyoqXHJcbiAqIEB6aF9DTiBUcmVlIFNlbGVjdCDmlbDmja7lr7nosaFcclxuICogQGVuX1VTIFRyZWUgU2VsZWN0IGRhdGEgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmVlU2VsZWN0Tm9kZSBleHRlbmRzIFhQYXJlbnRJZGVudGl0eVByb3BlcnR5PFhUcmVlU2VsZWN0Tm9kZT4ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvZPliY3oioLngrnot6/lvoTlkI3np7BcclxuICAgKiBAZW5fVVMgQ3VycmVudCBub2RlIHBhdGggbmFtZVxyXG4gICAqL1xyXG4gIHBhdGg/OiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiHquWumuS5ieWxnuaAp1xyXG4gICAqIEBlbl9VUyBDdXN0b20gYXR0cmlidXRlXHJcbiAgICovXHJcbiAgW3Byb3BlcnR5OiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUcmVlIFNlbGVjdCBQb3J0YWxcclxuICogQHNlbGVjdG9yIHgtdHJlZS1zZWxlY3QtcG9ydGFsXHJcbiAqIEBkZWNvcmF0b3IgY29tcG9uZW50XHJcbiAqL1xyXG5leHBvcnQgY29uc3QgWFRyZWVTZWxlY3RQb3J0YWxQcmVmaXggPSAneC10cmVlLXNlbGVjdC1wb3J0YWwnO1xyXG4iXX0=
|