@delon/abc 12.4.1 → 13.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/abc.d.ts +1 -0
- package/auto-focus/{autoFocus.d.ts → auto-focus.d.ts} +1 -0
- package/auto-focus/auto-focus.directive.d.ts +7 -2
- package/auto-focus/auto-focus.module.d.ts +5 -0
- package/auto-focus/package.json +6 -7
- package/avatar-list/avatar-list-item.component.d.ts +7 -4
- package/avatar-list/avatar-list.component.d.ts +4 -1
- package/avatar-list/avatar-list.d.ts +5 -0
- package/avatar-list/avatar-list.module.d.ts +9 -0
- package/avatar-list/package.json +6 -7
- package/avatar-list/style/index.less +6 -0
- package/count-down/count-down.component.d.ts +4 -1
- package/count-down/count-down.d.ts +1 -0
- package/count-down/count-down.module.d.ts +7 -0
- package/count-down/package.json +5 -6
- package/date-picker/date-picker.d.ts +5 -0
- package/date-picker/date-picker.module.d.ts +9 -0
- package/date-picker/package.json +6 -7
- package/date-picker/public_api.d.ts +1 -0
- package/date-picker/range-shortcut.component.d.ts +3 -0
- package/date-picker/range.directive.d.ts +3 -0
- package/down-file/down-file.d.ts +5 -0
- package/down-file/down-file.directive.d.ts +5 -2
- package/down-file/down-file.module.d.ts +7 -0
- package/down-file/package.json +6 -7
- package/ellipsis/ellipsis.component.d.ts +5 -2
- package/ellipsis/ellipsis.d.ts +1 -0
- package/ellipsis/ellipsis.module.d.ts +8 -0
- package/ellipsis/package.json +5 -6
- package/ellipsis/style/index.less +4 -0
- package/error-collect/error-collect.component.d.ts +3 -0
- package/error-collect/error-collect.d.ts +5 -0
- package/error-collect/error-collect.module.d.ts +7 -0
- package/error-collect/package.json +6 -7
- package/error-collect/style/index.less +1 -0
- package/{esm2015/abc.js → esm2020/abc.mjs} +0 -0
- package/esm2020/auto-focus/auto-focus.directive.mjs +48 -0
- package/esm2020/auto-focus/auto-focus.mjs +5 -0
- package/esm2020/auto-focus/auto-focus.module.mjs +17 -0
- package/{esm2015/auto-focus/index.js → esm2020/auto-focus/index.mjs} +0 -0
- package/esm2020/avatar-list/avatar-list-item.component.mjs +26 -0
- package/esm2020/avatar-list/avatar-list.component.mjs +89 -0
- package/esm2020/avatar-list/avatar-list.mjs +5 -0
- package/esm2020/avatar-list/avatar-list.module.mjs +22 -0
- package/{esm2015/avatar-list/public_api.js → esm2020/avatar-list/public_api.mjs} +0 -0
- package/esm2020/count-down/count-down.component.mjs +45 -0
- package/{esm2015/count-down/count-down.js → esm2020/count-down/count-down.mjs} +0 -0
- package/esm2020/count-down/count-down.module.mjs +20 -0
- package/{esm2015/count-down/public_api.js → esm2020/count-down/public_api.mjs} +0 -0
- package/esm2020/date-picker/date-picker.mjs +5 -0
- package/esm2020/date-picker/date-picker.module.mjs +22 -0
- package/{esm2015/date-picker/public_api.js → esm2020/date-picker/public_api.mjs} +2 -1
- package/esm2020/date-picker/range-shortcut.component.mjs +40 -0
- package/esm2020/date-picker/range.directive.mjs +174 -0
- package/esm2020/down-file/down-file.directive.mjs +114 -0
- package/esm2020/down-file/down-file.mjs +5 -0
- package/esm2020/down-file/down-file.module.mjs +20 -0
- package/{esm2015/down-file/public_api.js → esm2020/down-file/public_api.mjs} +0 -0
- package/esm2020/ellipsis/ellipsis.component.mjs +229 -0
- package/{esm2015/ellipsis/ellipsis.js → esm2020/ellipsis/ellipsis.mjs} +0 -0
- package/esm2020/ellipsis/ellipsis.module.mjs +21 -0
- package/{esm2015/ellipsis/public_api.js → esm2020/ellipsis/public_api.mjs} +0 -0
- package/esm2020/error-collect/error-collect.component.mjs +118 -0
- package/esm2020/error-collect/error-collect.mjs +5 -0
- package/esm2020/error-collect/error-collect.module.mjs +20 -0
- package/{esm2015/error-collect/public_api.js → esm2020/error-collect/public_api.mjs} +0 -0
- package/esm2020/exception/exception.component.mjs +105 -0
- package/{esm2015/exception/exception.js → esm2020/exception/exception.mjs} +0 -0
- package/esm2020/exception/exception.module.mjs +23 -0
- package/{esm2015/exception/public_api.js → esm2020/exception/public_api.mjs} +0 -0
- package/esm2020/footer-toolbar/footer-toolbar.component.mjs +44 -0
- package/esm2020/footer-toolbar/footer-toolbar.mjs +5 -0
- package/esm2020/footer-toolbar/footer-toolbar.module.mjs +21 -0
- package/{esm2015/footer-toolbar/public_api.js → esm2020/footer-toolbar/public_api.mjs} +0 -0
- package/esm2020/full-content/full-content-toggle.directive.mjs +24 -0
- package/esm2020/full-content/full-content.component.mjs +138 -0
- package/esm2020/full-content/full-content.mjs +5 -0
- package/esm2020/full-content/full-content.module.mjs +20 -0
- package/esm2020/full-content/full-content.service.mjs +23 -0
- package/{esm2015/full-content/public_api.js → esm2020/full-content/public_api.mjs} +0 -0
- package/esm2020/global-footer/global-footer-item.component.mjs +30 -0
- package/esm2020/global-footer/global-footer.component.mjs +73 -0
- package/esm2020/global-footer/global-footer.mjs +5 -0
- package/esm2020/global-footer/global-footer.module.mjs +21 -0
- package/{esm2015/global-footer/global-footer.types.js → esm2020/global-footer/global-footer.types.mjs} +0 -0
- package/{esm2015/global-footer/public_api.js → esm2020/global-footer/public_api.mjs} +0 -0
- package/esm2020/image/image.directive.mjs +146 -0
- package/{esm2015/image/image.js → esm2020/image/image.mjs} +0 -0
- package/esm2020/image/image.module.mjs +20 -0
- package/{esm2015/image/public_api.js → esm2020/image/public_api.mjs} +0 -0
- package/{esm2015/let/index.js → esm2020/let/index.mjs} +0 -0
- package/esm2020/let/let.directive.mjs +36 -0
- package/{esm2015/let/let.js → esm2020/let/let.mjs} +0 -0
- package/esm2020/let/let.module.mjs +17 -0
- package/esm2020/loading/loading.component.mjs +26 -0
- package/{esm2015/loading/loading.js → esm2020/loading/loading.mjs} +0 -0
- package/esm2020/loading/loading.module.mjs +24 -0
- package/esm2020/loading/loading.service.mjs +88 -0
- package/{esm2015/loading/loading.types.js → esm2020/loading/loading.types.mjs} +0 -0
- package/{esm2015/loading/public_api.js → esm2020/loading/public_api.mjs} +0 -0
- package/{esm2015/lodop/lodop.js → esm2020/lodop/lodop.mjs} +0 -0
- package/esm2020/lodop/lodop.module.mjs +12 -0
- package/esm2020/lodop/lodop.service.mjs +222 -0
- package/esm2020/lodop/lodop.types.mjs +2 -0
- package/{esm2015/lodop/public_api.js → esm2020/lodop/public_api.mjs} +0 -0
- package/esm2020/media/media.component.mjs +106 -0
- package/{esm2015/media/media.js → esm2020/media/media.mjs} +0 -0
- package/esm2020/media/media.module.mjs +19 -0
- package/esm2020/media/media.service.mjs +46 -0
- package/{esm2015/media/plyr.types.js → esm2020/media/plyr.types.mjs} +0 -0
- package/{esm2015/media/public_api.js → esm2020/media/public_api.mjs} +0 -0
- package/esm2020/notice-icon/notice-icon-tab.component.mjs +34 -0
- package/esm2020/notice-icon/notice-icon.component.mjs +80 -0
- package/esm2020/notice-icon/notice-icon.mjs +5 -0
- package/esm2020/notice-icon/notice-icon.module.mjs +60 -0
- package/{esm2015/notice-icon/notice-icon.types.js → esm2020/notice-icon/notice-icon.types.mjs} +0 -0
- package/{esm2015/notice-icon/public_api.js → esm2020/notice-icon/public_api.mjs} +0 -0
- package/esm2020/onboarding/onboarding.component.mjs +134 -0
- package/{esm2015/onboarding/onboarding.js → esm2020/onboarding/onboarding.mjs} +0 -0
- package/esm2020/onboarding/onboarding.module.mjs +25 -0
- package/esm2020/onboarding/onboarding.service.mjs +185 -0
- package/{esm2015/onboarding/onboarding.types.js → esm2020/onboarding/onboarding.types.mjs} +0 -0
- package/{esm2015/onboarding/public_api.js → esm2020/onboarding/public_api.mjs} +0 -0
- package/esm2020/page-header/page-header.component.mjs +247 -0
- package/esm2020/page-header/page-header.mjs +5 -0
- package/esm2020/page-header/page-header.module.mjs +24 -0
- package/{esm2015/page-header/public_api.js → esm2020/page-header/public_api.mjs} +0 -0
- package/esm2020/pdf/pdf.component.mjs +460 -0
- package/{esm2015/pdf/pdf.config.js → esm2020/pdf/pdf.config.mjs} +2 -2
- package/{esm2015/pdf/pdf.js → esm2020/pdf/pdf.mjs} +0 -0
- package/esm2020/pdf/pdf.module.mjs +20 -0
- package/{esm2015/pdf/pdf.types.js → esm2020/pdf/pdf.types.mjs} +0 -0
- package/{esm2015/pdf/public_api.js → esm2020/pdf/public_api.mjs} +0 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/{esm2015/qr/public_api.js → esm2020/qr/public_api.mjs} +0 -0
- package/esm2020/qr/qr.component.mjs +136 -0
- package/{esm2015/qr/qr.config.js → esm2020/qr/qr.config.mjs} +2 -2
- package/{esm2015/qr/qr.js → esm2020/qr/qr.mjs} +0 -0
- package/esm2020/qr/qr.module.mjs +19 -0
- package/{esm2015/qr/qr.types.js → esm2020/qr/qr.types.mjs} +0 -0
- package/{esm2015/quick-menu/public_api.js → esm2020/quick-menu/public_api.mjs} +0 -0
- package/esm2020/quick-menu/quick-menu.component.mjs +89 -0
- package/esm2020/quick-menu/quick-menu.mjs +5 -0
- package/esm2020/quick-menu/quick-menu.module.mjs +21 -0
- package/{esm2015/result/public_api.js → esm2020/result/public_api.mjs} +0 -0
- package/esm2020/result/result.component.mjs +61 -0
- package/{esm2015/result/result.js → esm2020/result/result.mjs} +0 -0
- package/esm2020/result/result.module.mjs +21 -0
- package/{esm2015/reuse-tab/lifecycle_hooks.js → esm2020/reuse-tab/lifecycle_hooks.mjs} +0 -0
- package/{esm2015/reuse-tab/public_api.js → esm2020/reuse-tab/public_api.mjs} +0 -0
- package/esm2020/reuse-tab/reuse-tab-context-menu.component.mjs +76 -0
- package/esm2020/reuse-tab/reuse-tab-context.component.mjs +33 -0
- package/esm2020/reuse-tab/reuse-tab-context.directive.mjs +35 -0
- package/esm2020/reuse-tab/reuse-tab-context.service.mjs +55 -0
- package/esm2020/reuse-tab/reuse-tab.component.mjs +318 -0
- package/{esm2015/reuse-tab/reuse-tab.interfaces.js → esm2020/reuse-tab/reuse-tab.interfaces.mjs} +0 -0
- package/esm2020/reuse-tab/reuse-tab.mjs +5 -0
- package/esm2020/reuse-tab/reuse-tab.module.mjs +29 -0
- package/esm2020/reuse-tab/reuse-tab.service.mjs +533 -0
- package/{esm2015/reuse-tab/reuse-tab.strategy.js → esm2020/reuse-tab/reuse-tab.strategy.mjs} +0 -0
- package/esm2020/se/public_api.mjs +5 -0
- package/esm2020/se/se-container.component.mjs +173 -0
- package/esm2020/se/se.component.mjs +233 -0
- package/esm2020/se/se.mjs +5 -0
- package/esm2020/se/se.module.mjs +23 -0
- package/{esm2015/se/se.types.js → esm2020/se/se.types.mjs} +0 -0
- package/{esm2015/sg/public_api.js → esm2020/sg/public_api.mjs} +0 -0
- package/esm2020/sg/sg-container.component.mjs +52 -0
- package/esm2020/sg/sg.component.mjs +67 -0
- package/esm2020/sg/sg.mjs +5 -0
- package/esm2020/sg/sg.module.mjs +20 -0
- package/{esm2015/st/public_api.js → esm2020/st/public_api.mjs} +0 -0
- package/esm2020/st/st-column-source.mjs +470 -0
- package/esm2020/st/st-data-source.mjs +448 -0
- package/esm2020/st/st-export.mjs +89 -0
- package/esm2020/st/st-filter.component.mjs +262 -0
- package/esm2020/st/st-row.directive.mjs +45 -0
- package/esm2020/st/st-widget-host.directive.mjs +31 -0
- package/esm2020/st/st-widget.mjs +26 -0
- package/esm2020/st/st.component.mjs +969 -0
- package/{esm2015/st/st.config.js → esm2020/st/st.config.mjs} +0 -0
- package/esm2020/st/st.interfaces.mjs +2 -0
- package/esm2020/st/st.mjs +5 -0
- package/esm2020/st/st.module.mjs +98 -0
- package/{esm2015/st/st.types.js → esm2020/st/st.types.mjs} +0 -0
- package/esm2020/sv/public_api.mjs +5 -0
- package/esm2020/sv/sv-container.component.mjs +125 -0
- package/esm2020/sv/sv-value.component.mjs +44 -0
- package/esm2020/sv/sv.component.mjs +113 -0
- package/esm2020/sv/sv.mjs +5 -0
- package/esm2020/sv/sv.module.mjs +25 -0
- package/{esm2015/tag-select/public_api.js → esm2020/tag-select/public_api.mjs} +0 -0
- package/esm2020/tag-select/tag-select.component.mjs +64 -0
- package/esm2020/tag-select/tag-select.mjs +5 -0
- package/esm2020/tag-select/tag-select.module.mjs +21 -0
- package/{esm2015/xlsx/public_api.js → esm2020/xlsx/public_api.mjs} +0 -0
- package/esm2020/xlsx/xlsx.directive.mjs +27 -0
- package/{esm2015/xlsx/xlsx.js → esm2020/xlsx/xlsx.mjs} +0 -0
- package/esm2020/xlsx/xlsx.module.mjs +19 -0
- package/esm2020/xlsx/xlsx.service.mjs +128 -0
- package/{esm2015/xlsx/xlsx.types.js → esm2020/xlsx/xlsx.types.mjs} +0 -0
- package/{esm2015/zip/public_api.js → esm2020/zip/public_api.mjs} +0 -0
- package/{esm2015/zip/zip.js → esm2020/zip/zip.mjs} +0 -0
- package/esm2020/zip/zip.module.mjs +15 -0
- package/esm2020/zip/zip.service.mjs +114 -0
- package/{esm2015/zip/zip.types.js → esm2020/zip/zip.types.mjs} +0 -0
- package/exception/exception.component.d.ts +3 -0
- package/exception/exception.d.ts +1 -0
- package/exception/exception.module.d.ts +10 -0
- package/exception/package.json +5 -6
- package/exception/style/index.less +9 -0
- package/fesm2015/{abc.js → abc.mjs} +1 -1
- package/fesm2015/abc.mjs.map +1 -0
- package/fesm2015/auto-focus.mjs +69 -0
- package/fesm2015/auto-focus.mjs.map +1 -0
- package/fesm2015/avatar-list.mjs +140 -0
- package/fesm2015/avatar-list.mjs.map +1 -0
- package/fesm2015/count-down.mjs +69 -0
- package/fesm2015/count-down.mjs.map +1 -0
- package/fesm2015/{datePicker.js → date-picker.mjs} +63 -40
- package/fesm2015/date-picker.mjs.map +1 -0
- package/fesm2015/down-file.mjs +141 -0
- package/fesm2015/down-file.mjs.map +1 -0
- package/fesm2015/ellipsis.mjs +255 -0
- package/fesm2015/ellipsis.mjs.map +1 -0
- package/fesm2015/error-collect.mjs +144 -0
- package/fesm2015/error-collect.mjs.map +1 -0
- package/fesm2015/exception.mjs +135 -0
- package/fesm2015/exception.mjs.map +1 -0
- package/fesm2015/footer-toolbar.mjs +70 -0
- package/fesm2015/footer-toolbar.mjs.map +1 -0
- package/fesm2015/full-content.mjs +202 -0
- package/fesm2015/full-content.mjs.map +1 -0
- package/fesm2015/global-footer.mjs +127 -0
- package/fesm2015/global-footer.mjs.map +1 -0
- package/fesm2015/image.mjs +165 -0
- package/fesm2015/image.mjs.map +1 -0
- package/fesm2015/let.mjs +59 -0
- package/fesm2015/let.mjs.map +1 -0
- package/fesm2015/loading.mjs +140 -0
- package/fesm2015/loading.mjs.map +1 -0
- package/fesm2015/{lodop.js → lodop.mjs} +15 -15
- package/fesm2015/lodop.mjs.map +1 -0
- package/fesm2015/media.mjs +170 -0
- package/fesm2015/media.mjs.map +1 -0
- package/fesm2015/notice-icon.mjs +173 -0
- package/fesm2015/notice-icon.mjs.map +1 -0
- package/fesm2015/onboarding.mjs +335 -0
- package/fesm2015/onboarding.mjs.map +1 -0
- package/fesm2015/page-header.mjs +277 -0
- package/fesm2015/page-header.mjs.map +1 -0
- package/fesm2015/{pdf.js → pdf.mjs} +81 -54
- package/fesm2015/pdf.mjs.map +1 -0
- package/fesm2015/qr.mjs +171 -0
- package/fesm2015/qr.mjs.map +1 -0
- package/fesm2015/quick-menu.mjs +114 -0
- package/fesm2015/quick-menu.mjs.map +1 -0
- package/fesm2015/result.mjs +89 -0
- package/fesm2015/result.mjs.map +1 -0
- package/fesm2015/{reuseTab.js → reuse-tab.mjs} +183 -160
- package/fesm2015/reuse-tab.mjs.map +1 -0
- package/fesm2015/se.mjs +443 -0
- package/fesm2015/se.mjs.map +1 -0
- package/fesm2015/sg.mjs +139 -0
- package/fesm2015/sg.mjs.map +1 -0
- package/fesm2015/{table.js → st.mjs} +610 -492
- package/fesm2015/st.mjs.map +1 -0
- package/fesm2015/sv.mjs +302 -0
- package/fesm2015/sv.mjs.map +1 -0
- package/fesm2015/tag-select.mjs +92 -0
- package/fesm2015/tag-select.mjs.map +1 -0
- package/fesm2015/{xlsx.js → xlsx.mjs} +42 -42
- package/fesm2015/xlsx.mjs.map +1 -0
- package/fesm2015/{zip.js → zip.mjs} +35 -32
- package/fesm2015/zip.mjs.map +1 -0
- package/fesm2020/abc.mjs +7 -0
- package/fesm2020/abc.mjs.map +1 -0
- package/fesm2020/auto-focus.mjs +69 -0
- package/fesm2020/auto-focus.mjs.map +1 -0
- package/fesm2020/avatar-list.mjs +137 -0
- package/fesm2020/avatar-list.mjs.map +1 -0
- package/fesm2020/count-down.mjs +69 -0
- package/fesm2020/count-down.mjs.map +1 -0
- package/fesm2020/date-picker.mjs +236 -0
- package/fesm2020/date-picker.mjs.map +1 -0
- package/fesm2020/down-file.mjs +138 -0
- package/fesm2020/down-file.mjs.map +1 -0
- package/fesm2020/ellipsis.mjs +253 -0
- package/fesm2020/ellipsis.mjs.map +1 -0
- package/fesm2020/error-collect.mjs +141 -0
- package/fesm2020/error-collect.mjs.map +1 -0
- package/fesm2020/exception.mjs +132 -0
- package/fesm2020/exception.mjs.map +1 -0
- package/fesm2020/footer-toolbar.mjs +68 -0
- package/fesm2020/footer-toolbar.mjs.map +1 -0
- package/fesm2020/full-content.mjs +199 -0
- package/fesm2020/full-content.mjs.map +1 -0
- package/fesm2020/global-footer.mjs +124 -0
- package/fesm2020/global-footer.mjs.map +1 -0
- package/fesm2020/image.mjs +170 -0
- package/fesm2020/image.mjs.map +1 -0
- package/fesm2020/let.mjs +57 -0
- package/fesm2020/let.mjs.map +1 -0
- package/fesm2020/loading.mjs +138 -0
- package/fesm2020/loading.mjs.map +1 -0
- package/fesm2020/lodop.mjs +239 -0
- package/fesm2020/lodop.mjs.map +1 -0
- package/fesm2020/media.mjs +172 -0
- package/fesm2020/media.mjs.map +1 -0
- package/fesm2020/notice-icon.mjs +173 -0
- package/fesm2020/notice-icon.mjs.map +1 -0
- package/fesm2020/onboarding.mjs +343 -0
- package/fesm2020/onboarding.mjs.map +1 -0
- package/fesm2020/page-header.mjs +274 -0
- package/fesm2020/page-header.mjs.map +1 -0
- package/fesm2020/pdf.mjs +506 -0
- package/fesm2020/pdf.mjs.map +1 -0
- package/fesm2020/qr.mjs +171 -0
- package/fesm2020/qr.mjs.map +1 -0
- package/fesm2020/quick-menu.mjs +114 -0
- package/fesm2020/quick-menu.mjs.map +1 -0
- package/fesm2020/result.mjs +86 -0
- package/fesm2020/result.mjs.map +1 -0
- package/fesm2020/reuse-tab.mjs +1106 -0
- package/fesm2020/reuse-tab.mjs.map +1 -0
- package/fesm2020/se.mjs +436 -0
- package/fesm2020/se.mjs.map +1 -0
- package/fesm2020/sg.mjs +137 -0
- package/fesm2020/sg.mjs.map +1 -0
- package/fesm2020/st.mjs +2469 -0
- package/fesm2020/st.mjs.map +1 -0
- package/fesm2020/sv.mjs +298 -0
- package/fesm2020/sv.mjs.map +1 -0
- package/fesm2020/tag-select.mjs +89 -0
- package/fesm2020/tag-select.mjs.map +1 -0
- package/fesm2020/xlsx.mjs +175 -0
- package/fesm2020/xlsx.mjs.map +1 -0
- package/fesm2020/zip.mjs +134 -0
- package/fesm2020/zip.mjs.map +1 -0
- package/footer-toolbar/footer-toolbar.component.d.ts +4 -1
- package/footer-toolbar/footer-toolbar.d.ts +5 -0
- package/footer-toolbar/footer-toolbar.module.d.ts +8 -0
- package/footer-toolbar/package.json +6 -7
- package/footer-toolbar/style/index.less +1 -0
- package/full-content/full-content-toggle.directive.d.ts +3 -0
- package/full-content/full-content.component.d.ts +6 -3
- package/full-content/full-content.d.ts +5 -0
- package/full-content/full-content.module.d.ts +7 -0
- package/full-content/full-content.service.d.ts +3 -0
- package/full-content/package.json +6 -7
- package/full-content/style/index.less +1 -0
- package/global-footer/global-footer-item.component.d.ts +5 -2
- package/global-footer/global-footer.component.d.ts +3 -0
- package/global-footer/global-footer.d.ts +5 -0
- package/global-footer/global-footer.module.d.ts +8 -0
- package/global-footer/package.json +6 -7
- package/global-footer/style/index.less +5 -0
- package/image/image.d.ts +1 -0
- package/image/image.directive.d.ts +4 -1
- package/image/image.module.d.ts +7 -0
- package/image/package.json +5 -6
- package/let/let.d.ts +1 -0
- package/let/let.directive.d.ts +3 -0
- package/let/let.module.d.ts +5 -0
- package/let/package.json +5 -6
- package/loading/loading.component.d.ts +3 -0
- package/loading/loading.d.ts +1 -0
- package/loading/loading.module.d.ts +10 -0
- package/loading/loading.service.d.ts +4 -1
- package/loading/package.json +5 -6
- package/loading/style/index.less +3 -0
- package/lodop/lodop.d.ts +1 -0
- package/lodop/lodop.module.d.ts +4 -0
- package/lodop/lodop.service.d.ts +3 -0
- package/lodop/lodop.types.d.ts +4 -0
- package/lodop/package.json +5 -6
- package/media/media.component.d.ts +4 -1
- package/media/media.d.ts +1 -0
- package/media/media.module.d.ts +6 -0
- package/media/media.service.d.ts +3 -0
- package/media/package.json +5 -6
- package/notice-icon/notice-icon-tab.component.d.ts +3 -0
- package/notice-icon/notice-icon.component.d.ts +4 -1
- package/notice-icon/notice-icon.d.ts +5 -0
- package/notice-icon/notice-icon.module.d.ts +16 -0
- package/notice-icon/package.json +6 -7
- package/notice-icon/style/index.less +17 -0
- package/onboarding/onboarding.component.d.ts +4 -1
- package/onboarding/onboarding.d.ts +1 -0
- package/onboarding/onboarding.module.d.ts +11 -0
- package/onboarding/onboarding.service.d.ts +3 -0
- package/onboarding/package.json +5 -6
- package/onboarding/schema.json +1 -1
- package/onboarding/style/index.less +6 -0
- package/package.json +274 -14
- package/page-header/package.json +6 -7
- package/page-header/page-header.component.d.ts +4 -1
- package/page-header/page-header.d.ts +5 -0
- package/page-header/page-header.module.d.ts +11 -0
- package/page-header/style/index.less +10 -0
- package/page-header/style/rtl.less +3 -0
- package/pdf/package.json +5 -6
- package/pdf/pdf.component.d.ts +5 -2
- package/pdf/pdf.d.ts +1 -0
- package/pdf/pdf.module.d.ts +7 -0
- package/qr/package.json +5 -6
- package/qr/qr.component.d.ts +13 -10
- package/qr/qr.d.ts +1 -0
- package/qr/qr.module.d.ts +6 -0
- package/quick-menu/package.json +6 -7
- package/quick-menu/quick-menu.component.d.ts +6 -3
- package/quick-menu/quick-menu.d.ts +5 -0
- package/quick-menu/quick-menu.module.d.ts +8 -0
- package/quick-menu/style/index.less +2 -0
- package/result/package.json +5 -6
- package/result/result.component.d.ts +6 -3
- package/result/result.d.ts +1 -0
- package/result/result.module.d.ts +8 -0
- package/result/style/index.less +7 -0
- package/reuse-tab/package.json +6 -7
- package/reuse-tab/reuse-tab-context-menu.component.d.ts +3 -0
- package/reuse-tab/reuse-tab-context.component.d.ts +4 -1
- package/reuse-tab/reuse-tab-context.directive.d.ts +3 -0
- package/reuse-tab/reuse-tab-context.service.d.ts +4 -1
- package/reuse-tab/reuse-tab.component.d.ts +13 -10
- package/reuse-tab/reuse-tab.d.ts +5 -0
- package/reuse-tab/reuse-tab.module.d.ts +15 -0
- package/reuse-tab/reuse-tab.service.d.ts +7 -4
- package/reuse-tab/style/index.less +4 -0
- package/se/package.json +6 -7
- package/se/public_api.d.ts +0 -1
- package/se/se-container.component.d.ts +18 -4
- package/se/se.component.d.ts +13 -8
- package/{footer-toolbar/footerToolbar.d.ts → se/se.d.ts} +1 -0
- package/se/se.module.d.ts +10 -0
- package/se/style/index.less +2 -0
- package/sg/package.json +6 -7
- package/sg/sg-container.component.d.ts +4 -1
- package/sg/sg.component.d.ts +4 -1
- package/{error-collect/errorCollect.d.ts → sg/sg.d.ts} +1 -0
- package/sg/sg.module.d.ts +7 -0
- package/st/package.json +6 -7
- package/st/st-column-source.d.ts +4 -1
- package/st/st-data-source.d.ts +3 -0
- package/st/st-export.d.ts +3 -0
- package/st/st-filter.component.d.ts +3 -0
- package/st/st-row.directive.d.ts +7 -2
- package/st/st-widget-host.directive.d.ts +5 -3
- package/st/st-widget.d.ts +3 -0
- package/st/st.component.d.ts +40 -12
- package/{down-file/downFile.d.ts → st/st.d.ts} +1 -0
- package/st/st.interfaces.d.ts +2 -2
- package/st/st.module.d.ts +27 -0
- package/st/style/index.less +8 -0
- package/sv/package.json +6 -7
- package/sv/public_api.d.ts +0 -1
- package/sv/style/index.less +8 -0
- package/sv/sv-container.component.d.ts +16 -3
- package/sv/sv-value.component.d.ts +3 -0
- package/sv/sv.component.d.ts +13 -10
- package/{avatar-list/avatarList.d.ts → sv/sv.d.ts} +1 -0
- package/sv/sv.module.d.ts +12 -0
- package/tag-select/package.json +6 -7
- package/tag-select/style/index.less +4 -0
- package/tag-select/style/rtl.less +3 -0
- package/tag-select/tag-select.component.d.ts +3 -0
- package/tag-select/tag-select.d.ts +5 -0
- package/tag-select/tag-select.module.d.ts +8 -0
- package/xlsx/package.json +5 -6
- package/xlsx/xlsx.d.ts +1 -0
- package/xlsx/xlsx.directive.d.ts +3 -0
- package/xlsx/xlsx.module.d.ts +6 -0
- package/xlsx/xlsx.service.d.ts +3 -0
- package/zip/package.json +5 -6
- package/zip/zip.d.ts +1 -0
- package/zip/zip.module.d.ts +5 -0
- package/zip/zip.service.d.ts +3 -0
- package/abc.metadata.json +0 -1
- package/auto-focus/autoFocus.metadata.json +0 -1
- package/avatar-list/avatarList.metadata.json +0 -1
- package/bundles/abc.umd.js +0 -19
- package/bundles/abc.umd.js.map +0 -1
- package/bundles/autoFocus.umd.js +0 -394
- package/bundles/autoFocus.umd.js.map +0 -1
- package/bundles/avatarList.umd.js +0 -465
- package/bundles/avatarList.umd.js.map +0 -1
- package/bundles/count-down.umd.js +0 -75
- package/bundles/count-down.umd.js.map +0 -1
- package/bundles/datePicker.umd.js +0 -552
- package/bundles/datePicker.umd.js.map +0 -1
- package/bundles/downFile.umd.js +0 -474
- package/bundles/downFile.umd.js.map +0 -1
- package/bundles/edit.umd.js +0 -776
- package/bundles/edit.umd.js.map +0 -1
- package/bundles/ellipsis.umd.js +0 -578
- package/bundles/ellipsis.umd.js.map +0 -1
- package/bundles/errorCollect.umd.js +0 -461
- package/bundles/errorCollect.umd.js.map +0 -1
- package/bundles/exception.umd.js +0 -150
- package/bundles/exception.umd.js.map +0 -1
- package/bundles/footerToolbar.umd.js +0 -401
- package/bundles/footerToolbar.umd.js.map +0 -1
- package/bundles/fullContent.umd.js +0 -550
- package/bundles/fullContent.umd.js.map +0 -1
- package/bundles/globalFooter.umd.js +0 -455
- package/bundles/globalFooter.umd.js.map +0 -1
- package/bundles/grid.umd.js +0 -470
- package/bundles/grid.umd.js.map +0 -1
- package/bundles/image.umd.js +0 -482
- package/bundles/image.umd.js.map +0 -1
- package/bundles/let.umd.js +0 -76
- package/bundles/let.umd.js.map +0 -1
- package/bundles/loading.umd.js +0 -181
- package/bundles/loading.umd.js.map +0 -1
- package/bundles/lodop.umd.js +0 -605
- package/bundles/lodop.umd.js.map +0 -1
- package/bundles/media.umd.js +0 -536
- package/bundles/media.umd.js.map +0 -1
- package/bundles/noticeIcon.umd.js +0 -468
- package/bundles/noticeIcon.umd.js.map +0 -1
- package/bundles/onboarding.umd.js +0 -370
- package/bundles/onboarding.umd.js.map +0 -1
- package/bundles/pageHeader.umd.js +0 -570
- package/bundles/pageHeader.umd.js.map +0 -1
- package/bundles/pdf.umd.js +0 -863
- package/bundles/pdf.umd.js.map +0 -1
- package/bundles/qr.umd.js +0 -491
- package/bundles/qr.umd.js.map +0 -1
- package/bundles/quickMenu.umd.js +0 -442
- package/bundles/quickMenu.umd.js.map +0 -1
- package/bundles/result.umd.js +0 -100
- package/bundles/result.umd.js.map +0 -1
- package/bundles/reuseTab.umd.js +0 -1522
- package/bundles/reuseTab.umd.js.map +0 -1
- package/bundles/table.umd.js +0 -2586
- package/bundles/table.umd.js.map +0 -1
- package/bundles/tagSelect.umd.js +0 -419
- package/bundles/tagSelect.umd.js.map +0 -1
- package/bundles/view.umd.js +0 -592
- package/bundles/view.umd.js.map +0 -1
- package/bundles/xlsx.umd.js +0 -529
- package/bundles/xlsx.umd.js.map +0 -1
- package/bundles/zip.umd.js +0 -482
- package/bundles/zip.umd.js.map +0 -1
- package/count-down/count-down.metadata.json +0 -1
- package/date-picker/datePicker.d.ts +0 -5
- package/date-picker/datePicker.metadata.json +0 -1
- package/down-file/downFile.metadata.json +0 -1
- package/ellipsis/ellipsis.metadata.json +0 -1
- package/error-collect/errorCollect.metadata.json +0 -1
- package/esm2015/auto-focus/auto-focus.directive.js +0 -42
- package/esm2015/auto-focus/auto-focus.module.js +0 -12
- package/esm2015/auto-focus/autoFocus.js +0 -5
- package/esm2015/avatar-list/avatar-list-item.component.js +0 -20
- package/esm2015/avatar-list/avatar-list.component.js +0 -89
- package/esm2015/avatar-list/avatar-list.module.js +0 -17
- package/esm2015/avatar-list/avatarList.js +0 -5
- package/esm2015/count-down/count-down.component.js +0 -36
- package/esm2015/count-down/count-down.module.js +0 -15
- package/esm2015/date-picker/date-picker.module.js +0 -17
- package/esm2015/date-picker/datePicker.js +0 -6
- package/esm2015/date-picker/range-shortcut.component.js +0 -26
- package/esm2015/date-picker/range.directive.js +0 -171
- package/esm2015/down-file/down-file.directive.js +0 -103
- package/esm2015/down-file/down-file.module.js +0 -15
- package/esm2015/down-file/downFile.js +0 -5
- package/esm2015/ellipsis/ellipsis.component.js +0 -224
- package/esm2015/ellipsis/ellipsis.module.js +0 -16
- package/esm2015/error-collect/error-collect.component.js +0 -112
- package/esm2015/error-collect/error-collect.module.js +0 -15
- package/esm2015/error-collect/errorCollect.js +0 -5
- package/esm2015/exception/exception.component.js +0 -103
- package/esm2015/exception/exception.module.js +0 -18
- package/esm2015/footer-toolbar/footer-toolbar.component.js +0 -46
- package/esm2015/footer-toolbar/footer-toolbar.module.js +0 -16
- package/esm2015/footer-toolbar/footerToolbar.js +0 -5
- package/esm2015/full-content/full-content-toggle.directive.js +0 -23
- package/esm2015/full-content/full-content.component.js +0 -135
- package/esm2015/full-content/full-content.module.js +0 -15
- package/esm2015/full-content/full-content.service.js +0 -21
- package/esm2015/full-content/fullContent.js +0 -5
- package/esm2015/global-footer/global-footer-item.component.js +0 -24
- package/esm2015/global-footer/global-footer.component.js +0 -77
- package/esm2015/global-footer/global-footer.module.js +0 -16
- package/esm2015/global-footer/globalFooter.js +0 -5
- package/esm2015/image/image.directive.js +0 -133
- package/esm2015/image/image.module.js +0 -15
- package/esm2015/let/let.directive.js +0 -31
- package/esm2015/let/let.module.js +0 -12
- package/esm2015/loading/loading.component.js +0 -26
- package/esm2015/loading/loading.module.js +0 -19
- package/esm2015/loading/loading.service.js +0 -92
- package/esm2015/lodop/lodop.module.js +0 -7
- package/esm2015/lodop/lodop.service.js +0 -219
- package/esm2015/lodop/lodop.types.js +0 -2
- package/esm2015/media/media.component.js +0 -104
- package/esm2015/media/media.module.js +0 -14
- package/esm2015/media/media.service.js +0 -53
- package/esm2015/notice-icon/notice-icon-tab.component.js +0 -30
- package/esm2015/notice-icon/notice-icon.component.js +0 -74
- package/esm2015/notice-icon/notice-icon.module.js +0 -35
- package/esm2015/notice-icon/noticeIcon.js +0 -5
- package/esm2015/onboarding/onboarding.component.js +0 -130
- package/esm2015/onboarding/onboarding.module.js +0 -20
- package/esm2015/onboarding/onboarding.service.js +0 -178
- package/esm2015/page-header/page-header.component.js +0 -216
- package/esm2015/page-header/page-header.module.js +0 -19
- package/esm2015/page-header/pageHeader.js +0 -5
- package/esm2015/pdf/pdf.component.js +0 -433
- package/esm2015/pdf/pdf.module.js +0 -15
- package/esm2015/qr/qr.component.js +0 -128
- package/esm2015/qr/qr.module.js +0 -14
- package/esm2015/quick-menu/quick-menu.component.js +0 -90
- package/esm2015/quick-menu/quick-menu.module.js +0 -16
- package/esm2015/quick-menu/quickMenu.js +0 -5
- package/esm2015/result/result.component.js +0 -62
- package/esm2015/result/result.module.js +0 -16
- package/esm2015/reuse-tab/reuse-tab-context-menu.component.js +0 -74
- package/esm2015/reuse-tab/reuse-tab-context.component.js +0 -32
- package/esm2015/reuse-tab/reuse-tab-context.directive.js +0 -33
- package/esm2015/reuse-tab/reuse-tab-context.service.js +0 -53
- package/esm2015/reuse-tab/reuse-tab.component.js +0 -300
- package/esm2015/reuse-tab/reuse-tab.module.js +0 -24
- package/esm2015/reuse-tab/reuse-tab.service.js +0 -534
- package/esm2015/reuse-tab/reuseTab.js +0 -5
- package/esm2015/se/edit.js +0 -5
- package/esm2015/se/public_api.js +0 -6
- package/esm2015/se/se-container.component.js +0 -115
- package/esm2015/se/se-title.component.js +0 -40
- package/esm2015/se/se.component.js +0 -214
- package/esm2015/se/se.module.js +0 -19
- package/esm2015/sg/grid.js +0 -5
- package/esm2015/sg/sg-container.component.js +0 -49
- package/esm2015/sg/sg.component.js +0 -65
- package/esm2015/sg/sg.module.js +0 -15
- package/esm2015/st/index.js +0 -2
- package/esm2015/st/st-column-source.js +0 -428
- package/esm2015/st/st-data-source.js +0 -429
- package/esm2015/st/st-export.js +0 -90
- package/esm2015/st/st-filter.component.js +0 -149
- package/esm2015/st/st-row.directive.js +0 -40
- package/esm2015/st/st-td.component.js +0 -232
- package/esm2015/st/st-widget-host.directive.js +0 -34
- package/esm2015/st/st-widget.js +0 -24
- package/esm2015/st/st.component.js +0 -784
- package/esm2015/st/st.interfaces.js +0 -2
- package/esm2015/st/st.module.js +0 -56
- package/esm2015/st/table.js +0 -8
- package/esm2015/sv/public_api.js +0 -6
- package/esm2015/sv/sv-container.component.js +0 -63
- package/esm2015/sv/sv-title.component.js +0 -40
- package/esm2015/sv/sv-value.component.js +0 -32
- package/esm2015/sv/sv.component.js +0 -105
- package/esm2015/sv/sv.module.js +0 -21
- package/esm2015/sv/view.js +0 -5
- package/esm2015/tag-select/tag-select.component.js +0 -70
- package/esm2015/tag-select/tag-select.module.js +0 -16
- package/esm2015/tag-select/tagSelect.js +0 -5
- package/esm2015/xlsx/xlsx.directive.js +0 -26
- package/esm2015/xlsx/xlsx.module.js +0 -14
- package/esm2015/xlsx/xlsx.service.js +0 -129
- package/esm2015/zip/zip.module.js +0 -10
- package/esm2015/zip/zip.service.js +0 -115
- package/exception/exception.metadata.json +0 -1
- package/fesm2015/abc.js.map +0 -1
- package/fesm2015/autoFocus.js +0 -59
- package/fesm2015/autoFocus.js.map +0 -1
- package/fesm2015/avatarList.js +0 -128
- package/fesm2015/avatarList.js.map +0 -1
- package/fesm2015/count-down.js +0 -56
- package/fesm2015/count-down.js.map +0 -1
- package/fesm2015/datePicker.js.map +0 -1
- package/fesm2015/downFile.js +0 -122
- package/fesm2015/downFile.js.map +0 -1
- package/fesm2015/edit.js +0 -396
- package/fesm2015/edit.js.map +0 -1
- package/fesm2015/ellipsis.js +0 -244
- package/fesm2015/ellipsis.js.map +0 -1
- package/fesm2015/errorCollect.js +0 -131
- package/fesm2015/errorCollect.js.map +0 -1
- package/fesm2015/exception.js +0 -125
- package/fesm2015/exception.js.map +0 -1
- package/fesm2015/footerToolbar.js +0 -66
- package/fesm2015/footerToolbar.js.map +0 -1
- package/fesm2015/fullContent.js +0 -191
- package/fesm2015/fullContent.js.map +0 -1
- package/fesm2015/globalFooter.js +0 -118
- package/fesm2015/globalFooter.js.map +0 -1
- package/fesm2015/grid.js +0 -129
- package/fesm2015/grid.js.map +0 -1
- package/fesm2015/image.js +0 -152
- package/fesm2015/image.js.map +0 -1
- package/fesm2015/let.js +0 -48
- package/fesm2015/let.js.map +0 -1
- package/fesm2015/loading.js +0 -138
- package/fesm2015/loading.js.map +0 -1
- package/fesm2015/lodop.js.map +0 -1
- package/fesm2015/media.js +0 -174
- package/fesm2015/media.js.map +0 -1
- package/fesm2015/noticeIcon.js +0 -141
- package/fesm2015/noticeIcon.js.map +0 -1
- package/fesm2015/onboarding.js +0 -328
- package/fesm2015/onboarding.js.map +0 -1
- package/fesm2015/pageHeader.js +0 -239
- package/fesm2015/pageHeader.js.map +0 -1
- package/fesm2015/pdf.js.map +0 -1
- package/fesm2015/qr.js +0 -159
- package/fesm2015/qr.js.map +0 -1
- package/fesm2015/quickMenu.js +0 -111
- package/fesm2015/quickMenu.js.map +0 -1
- package/fesm2015/result.js +0 -83
- package/fesm2015/result.js.map +0 -1
- package/fesm2015/reuseTab.js.map +0 -1
- package/fesm2015/table.js.map +0 -1
- package/fesm2015/tagSelect.js +0 -90
- package/fesm2015/tagSelect.js.map +0 -1
- package/fesm2015/view.js +0 -256
- package/fesm2015/view.js.map +0 -1
- package/fesm2015/xlsx.js.map +0 -1
- package/fesm2015/zip.js.map +0 -1
- package/footer-toolbar/footerToolbar.metadata.json +0 -1
- package/full-content/fullContent.d.ts +0 -4
- package/full-content/fullContent.metadata.json +0 -1
- package/global-footer/globalFooter.d.ts +0 -4
- package/global-footer/globalFooter.metadata.json +0 -1
- package/image/image.metadata.json +0 -1
- package/let/let.metadata.json +0 -1
- package/loading/loading.metadata.json +0 -1
- package/lodop/lodop.metadata.json +0 -1
- package/media/media.metadata.json +0 -1
- package/notice-icon/noticeIcon.d.ts +0 -4
- package/notice-icon/noticeIcon.metadata.json +0 -1
- package/onboarding/onboarding.metadata.json +0 -1
- package/page-header/pageHeader.d.ts +0 -4
- package/page-header/pageHeader.metadata.json +0 -1
- package/pdf/pdf.metadata.json +0 -1
- package/qr/qr.metadata.json +0 -1
- package/quick-menu/quickMenu.d.ts +0 -4
- package/quick-menu/quickMenu.metadata.json +0 -1
- package/result/result.metadata.json +0 -1
- package/reuse-tab/reuseTab.d.ts +0 -4
- package/reuse-tab/reuseTab.metadata.json +0 -1
- package/se/edit.d.ts +0 -4
- package/se/edit.metadata.json +0 -1
- package/se/se-title.component.d.ts +0 -10
- package/sg/grid.d.ts +0 -4
- package/sg/grid.metadata.json +0 -1
- package/st/index.d.ts +0 -1
- package/st/st-td.component.d.ts +0 -27
- package/st/table.d.ts +0 -7
- package/st/table.metadata.json +0 -1
- package/sv/sv-title.component.d.ts +0 -10
- package/sv/view.d.ts +0 -4
- package/sv/view.metadata.json +0 -1
- package/tag-select/tagSelect.d.ts +0 -4
- package/tag-select/tagSelect.metadata.json +0 -1
- package/xlsx/xlsx.metadata.json +0 -1
- package/zip/zip.metadata.json +0 -1
package/bundles/table.umd.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"table.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../packages/abc/st/st-row.directive.ts","../../../../packages/abc/st/st-widget.ts","../../../../packages/abc/st/st-column-source.ts","../../../../packages/abc/st/st-data-source.ts","../../../../packages/abc/st/st-export.ts","../../../../packages/abc/st/st-widget-host.directive.ts","../../../../packages/abc/st/st.config.ts","../../../../packages/abc/st/st.component.ts","../../../../packages/abc/st/st-filter.component.ts","../../../../packages/abc/st/st-td.component.ts","../../../../packages/abc/st/st.module.ts","../../../../packages/abc/st/table.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, Host, Injectable, Input, OnInit, TemplateRef } from '@angular/core';\n\n@Injectable()\nexport class STRowSource {\n private titles: { [key: string]: TemplateRef<void> } = {};\n private rows: { [key: string]: TemplateRef<void> } = {};\n\n add(type: string, path: string, ref: TemplateRef<void>): void {\n this[type === 'title' ? 'titles' : 'rows'][path] = ref;\n }\n\n getTitle(path: string): TemplateRef<void> {\n return this.titles[path];\n }\n\n getRow(path: string): TemplateRef<void> {\n return this.rows[path];\n }\n}\n\n@Directive({ selector: '[st-row]' })\nexport class STRowDirective implements OnInit {\n @Input('st-row') id: string;\n\n @Input() type: 'title';\n\n constructor(private ref: TemplateRef<void>, @Host() private source: STRowSource) {}\n\n ngOnInit(): void {\n this.source.add(this.type, this.id, this.ref);\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\n@Injectable({ providedIn: 'root' })\nexport class STWidgetRegistry {\n private _widgets: { [type: string]: NzSafeAny } = {};\n\n get widgets(): NzSafeAny {\n return this._widgets;\n }\n\n register(type: string, widget: NzSafeAny): void {\n this._widgets[type] = widget;\n }\n\n has(type: string): boolean {\n return this._widgets.hasOwnProperty(type);\n }\n\n get(type: string): NzSafeAny {\n return this._widgets[type];\n }\n}\n","import { Host, Inject, Injectable, Optional, TemplateRef } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { ACLService } from '@delon/acl';\nimport { AlainI18NService, ALAIN_I18N_TOKEN } from '@delon/theme';\nimport { AlainSTConfig } from '@delon/util/config';\nimport { deepCopy, warn } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { STRowSource } from './st-row.directive';\nimport { STWidgetRegistry } from './st-widget';\nimport {\n STColumn,\n STColumnButton,\n STColumnButtonPop,\n STColumnFilter,\n STColumnGroupType,\n STColumnSafeType,\n STIcon,\n STResizable,\n STSortMap,\n STWidthMode\n} from './st.interfaces';\nimport { _STColumn, _STHeader } from './st.types';\n\nexport interface STColumnSourceProcessOptions {\n widthMode: STWidthMode;\n resizable: STResizable;\n safeType: STColumnSafeType;\n}\n\n@Injectable()\nexport class STColumnSource {\n private cog: AlainSTConfig;\n\n constructor(\n private dom: DomSanitizer,\n @Host() private rowSource: STRowSource,\n @Optional() private acl: ACLService,\n @Optional() @Inject(ALAIN_I18N_TOKEN) private i18nSrv: AlainI18NService,\n private stWidgetRegistry: STWidgetRegistry\n ) {}\n\n setCog(val: AlainSTConfig): void {\n this.cog = val;\n }\n\n private fixPop(i: STColumnButton, def: STColumnButtonPop): void {\n if (i.pop == null || i.pop === false) {\n i.pop = false;\n return;\n }\n\n let pop = {\n ...def\n };\n if (typeof i.pop === 'string') {\n pop.title = i.pop;\n } else if (typeof i.pop === 'object') {\n pop = {\n ...pop,\n ...i.pop\n };\n }\n\n if (typeof pop.condition !== 'function') {\n pop.condition = () => false;\n }\n\n i.pop = pop;\n }\n\n private btnCoerce(list: STColumnButton[]): STColumnButton[] {\n if (!list) return [];\n const ret: STColumnButton[] = [];\n const { modal, drawer, pop, btnIcon } = this.cog;\n\n for (const item of list) {\n if (this.acl && item.acl && !this.acl.can(item.acl)) {\n continue;\n }\n\n if (item.type === 'modal' || item.type === 'static') {\n if (item.modal == null || item.modal.component == null) {\n console.warn(`[st] Should specify modal parameter when type is modal or static`);\n item.type = 'none';\n } else {\n item.modal = { ...{ paramsName: 'record', size: 'lg' }, ...modal, ...item.modal };\n }\n }\n\n if (item.type === 'drawer') {\n if (item.drawer == null || item.drawer.component == null) {\n console.warn(`[st] Should specify drawer parameter when type is drawer`);\n item.type = 'none';\n } else {\n item.drawer = { ...{ paramsName: 'record', size: 'lg' }, ...drawer, ...item.drawer };\n }\n }\n\n if (item.type === 'del' && typeof item.pop === 'undefined') {\n item.pop = true;\n }\n\n // pop\n this.fixPop(item, pop!);\n\n if (item.icon) {\n item.icon = {\n ...btnIcon,\n ...(typeof item.icon === 'string' ? { type: item.icon } : item.icon)\n };\n }\n\n item.children = item.children && item.children.length > 0 ? this.btnCoerce(item.children) : [];\n\n // i18n\n if (item.i18n && this.i18nSrv) {\n item.text = this.i18nSrv.fanyi(item.i18n);\n }\n\n ret.push(item);\n }\n this.btnCoerceIf(ret);\n return ret;\n }\n\n private btnCoerceIf(list: STColumnButton[]): void {\n for (const item of list) {\n if (!item.iif) item.iif = () => true;\n item.iifBehavior = item.iifBehavior || this.cog.iifBehavior;\n if (item.children && item.children.length > 0) {\n this.btnCoerceIf(item.children);\n } else {\n item.children = [];\n }\n }\n }\n\n private fixedCoerce(list: _STColumn[]): void {\n const countReduce = (a: number, b: _STColumn): number => a + +b.width!.toString().replace('px', '');\n // left width\n list\n .filter(w => w.fixed && w.fixed === 'left' && w.width)\n .forEach((item, idx) => (item._left = `${list.slice(0, idx).reduce(countReduce, 0)}px`));\n // right width\n list\n .filter(w => w.fixed && w.fixed === 'right' && w.width)\n .reverse()\n .forEach((item, idx) => (item._right = `${idx > 0 ? list.slice(-idx).reduce(countReduce, 0) : 0}px`));\n }\n\n private sortCoerce(item: _STColumn): STSortMap {\n const res = this.fixSortCoerce(item);\n res.reName = {\n ...this.cog.sortReName,\n ...res.reName\n };\n return res;\n }\n\n private fixSortCoerce(item: _STColumn): STSortMap {\n if (typeof item.sort === 'undefined') {\n return { enabled: false };\n }\n\n let res: STSortMap = {};\n\n if (typeof item.sort === 'string') {\n res.key = item.sort;\n } else if (typeof item.sort !== 'boolean') {\n res = item.sort;\n } else if (typeof item.sort === 'boolean') {\n res.compare = (a, b) => a[item.indexKey!] - b[item.indexKey!];\n }\n\n if (!res.key) {\n res.key = item.indexKey;\n }\n\n res.enabled = true;\n\n return res;\n }\n\n private filterCoerce(item: _STColumn): STColumnFilter | null {\n if (item.filter == null) {\n return null;\n }\n\n let res: STColumnFilter | null = item.filter;\n res.type = res.type || 'default';\n res.showOPArea = res.showOPArea !== false;\n\n let icon = 'filter';\n let iconTheme = 'fill';\n let fixMenus = true;\n let value: NzSafeAny = undefined;\n switch (res.type) {\n case 'keyword':\n icon = 'search';\n iconTheme = 'outline';\n break;\n case 'number':\n icon = 'search';\n iconTheme = 'outline';\n res.number = {\n step: 1,\n min: -Infinity,\n max: Infinity,\n ...res.number\n };\n break;\n case 'date':\n icon = 'calendar';\n iconTheme = 'outline';\n res.date = {\n range: false,\n mode: 'date',\n showToday: true,\n showNow: false,\n ...res.date\n };\n break;\n default:\n fixMenus = false;\n break;\n }\n if (fixMenus && (res.menus == null || res.menus!.length === 0)) {\n res.menus = [{ value }];\n }\n\n if (res.menus!.length === 0) {\n return null;\n }\n\n if (typeof res.multiple === 'undefined') {\n res.multiple = true;\n }\n\n res.confirmText = res.confirmText || this.cog.filterConfirmText;\n res.clearText = res.clearText || this.cog.filterClearText;\n res.key = res.key || item.indexKey;\n res.icon = res.icon || icon;\n\n const baseIcon = { type: icon, theme: iconTheme } as STIcon;\n if (typeof res.icon === 'string') {\n res.icon = { ...baseIcon, type: res.icon } as STIcon;\n } else {\n res.icon = { ...baseIcon, ...res.icon };\n }\n\n this.updateDefault(res);\n\n if (this.acl) {\n res.menus = res.menus!.filter(w => this.acl.can(w.acl!));\n }\n\n if (res.menus!.length <= 0) {\n res = null;\n }\n\n return res;\n }\n\n private restoreRender(item: _STColumn): void {\n if (item.renderTitle) {\n item.__renderTitle =\n typeof item.renderTitle === 'string'\n ? this.rowSource.getTitle(item.renderTitle)\n : (item.renderTitle as TemplateRef<void>);\n }\n if (item.render) {\n item.__render =\n typeof item.render === 'string' ? this.rowSource.getRow(item.render) : (item.render as TemplateRef<void>);\n }\n }\n\n private widgetCoerce(item: _STColumn): void {\n if (item.type !== 'widget') return;\n if (item.widget == null || !this.stWidgetRegistry.has(item.widget.type)) {\n delete item.type;\n warn(`st: No widget for type \"${item.widget?.type}\"`);\n }\n }\n\n private genHeaders(rootColumns: _STColumn[]): { headers: _STHeader[][]; headerWidths: string[] | null } {\n const rows: _STHeader[][] = [];\n const widths: string[] = [];\n const fillRowCells = (columns: _STColumn[], colIndex: number, rowIndex = 0): number[] => {\n // Init rows\n rows[rowIndex] = rows[rowIndex] || [];\n\n let currentColIndex = colIndex;\n const colSpans: number[] = columns.map(column => {\n const cell: STColumnGroupType = {\n column,\n colStart: currentColIndex,\n hasSubColumns: false\n };\n\n let colSpan = 1;\n\n const subColumns = column.children;\n if (Array.isArray(subColumns) && subColumns.length > 0) {\n colSpan = fillRowCells(subColumns, currentColIndex, rowIndex + 1).reduce((total, count) => total + count, 0);\n cell.hasSubColumns = true;\n } else {\n widths.push((cell.column.width as string) || '');\n }\n\n if ('colSpan' in column) {\n colSpan = column.colSpan!;\n }\n\n if ('rowSpan' in column) {\n cell.rowSpan = column.rowSpan;\n }\n\n cell.colSpan = colSpan;\n cell.colEnd = cell.colStart + colSpan - 1;\n rows[rowIndex].push(cell as NzSafeAny);\n\n currentColIndex += colSpan;\n\n return colSpan;\n });\n\n return colSpans;\n };\n\n fillRowCells(rootColumns, 0);\n\n // Handle `rowSpan`\n const rowCount = rows.length;\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex += 1) {\n rows[rowIndex].forEach(cell => {\n if (!('rowSpan' in cell) && !(cell as _STHeader).hasSubColumns) {\n (cell as _STHeader).rowSpan = rowCount - rowIndex;\n }\n });\n }\n\n return { headers: rows, headerWidths: rowCount > 1 ? widths : null };\n }\n\n private cleanCond(list: _STColumn[]): _STColumn[] {\n const res: _STColumn[] = [];\n const copyList = deepCopy(list);\n for (const item of copyList) {\n if (item.iif && !item.iif(item)) {\n continue;\n }\n if (this.acl && item.acl && !this.acl.can(item.acl)) {\n continue;\n }\n if (Array.isArray(item.children) && item.children.length > 0) {\n item.children = this.cleanCond(item.children);\n }\n res.push(item);\n }\n return res;\n }\n\n process(\n list: STColumn[],\n options: STColumnSourceProcessOptions\n ): { columns: _STColumn[]; headers: _STHeader[][]; headerWidths: string[] | null } {\n if (!list || list.length === 0) throw new Error(`[st]: the columns property muse be define!`);\n\n const { noIndex } = this.cog;\n let checkboxCount = 0;\n let radioCount = 0;\n let point = 0;\n const columns: _STColumn[] = [];\n\n const processItem = (item: _STColumn): _STColumn => {\n // index\n if (item.index) {\n if (!Array.isArray(item.index)) {\n item.index = item.index.toString().split('.');\n }\n item.indexKey = item.index.join('.');\n }\n\n // #region title\n\n const tit = (typeof item.title === 'string' ? { text: item.title } : item.title) || {};\n if (tit.i18n && this.i18nSrv) {\n tit.text = this.i18nSrv.fanyi(tit.i18n);\n }\n if (tit.text) {\n tit._text = this.dom.bypassSecurityTrustHtml(tit.text);\n }\n item.title = tit;\n\n // #endregion\n\n // no\n if (item.type === 'no') {\n item.noIndex = item.noIndex == null ? noIndex : item.noIndex;\n }\n // checkbox\n if (item.selections == null) {\n item.selections = [];\n }\n if (item.type === 'checkbox') {\n ++checkboxCount;\n if (!item.width) {\n item.width = `${item.selections.length > 0 ? 62 : 50}px`;\n }\n }\n if (this.acl) {\n item.selections = item.selections.filter(w => this.acl.can(w.acl!));\n }\n // radio\n if (item.type === 'radio') {\n ++radioCount;\n item.selections = [];\n if (!item.width) {\n item.width = '50px';\n }\n }\n // types\n if (item.type === 'yn') {\n item.yn = { truth: true, ...this.cog.yn, ...item.yn };\n }\n // date\n if (item.type === 'date') {\n item.dateFormat = item.dateFormat || this.cog.date?.format;\n }\n if (\n (item.type === 'link' && typeof item.click !== 'function') ||\n (item.type === 'badge' && item.badge == null) ||\n (item.type === 'tag' && item.tag == null) ||\n (item.type === 'enum' && item.enum == null)\n ) {\n item.type = '';\n }\n item._isTruncate = !!item.width && options.widthMode.strictBehavior === 'truncate' && item.type !== 'img';\n // className\n if (!item.className) {\n item.className = (\n {\n number: 'text-right',\n currency: 'text-right',\n date: 'text-center'\n } as NzSafeAny\n )[item.type!];\n }\n item._className = item.className || (item._isTruncate ? 'text-truncate' : null);\n // width\n if (typeof item.width === 'number') {\n item._width = item.width;\n item.width = `${item.width}px`;\n }\n item._left = false;\n item._right = false;\n item.safeType = item.safeType ?? options.safeType;\n\n // sorter\n item._sort = this.sortCoerce(item);\n // filter\n item.filter = this.filterCoerce(item) as STColumnFilter;\n // buttons\n item.buttons = this.btnCoerce(item.buttons!);\n // widget\n this.widgetCoerce(item);\n // restore custom row\n this.restoreRender(item);\n // resizable\n item.resizable = {\n disabled: true,\n bounds: 'window',\n minWidth: 60,\n maxWidth: 360,\n preview: true,\n ...options.resizable,\n ...(typeof item.resizable === 'boolean' ? ({ disabled: !item.resizable } as STResizable) : item.resizable)\n };\n\n item.__point = point++;\n\n return item;\n };\n\n const processList = (data: _STColumn[]): void => {\n for (const item of data) {\n columns.push(processItem(item));\n if (Array.isArray(item.children)) {\n processList(item.children);\n }\n }\n };\n\n const copyList = this.cleanCond(list as _STColumn[]);\n processList(copyList);\n\n if (checkboxCount > 1) {\n throw new Error(`[st]: just only one column checkbox`);\n }\n if (radioCount > 1) {\n throw new Error(`[st]: just only one column radio`);\n }\n\n this.fixedCoerce(columns as _STColumn[]);\n return {\n columns: columns.filter(w => !Array.isArray(w.children) || w.children.length === 0),\n ...this.genHeaders(copyList)\n };\n }\n\n restoreAllRender(columns: _STColumn[]): void {\n columns.forEach(i => this.restoreRender(i));\n }\n\n updateDefault(filter: STColumnFilter): this {\n if (filter.type === 'default') {\n filter.default = filter.menus!.findIndex(w => w.checked!) !== -1;\n } else {\n filter.default = !!filter.menus![0].value;\n }\n return this;\n }\n\n cleanFilter(col: _STColumn): this {\n const f = col.filter!;\n f.default = false;\n if (f.type === 'default') {\n f.menus!.forEach(i => (i.checked = false));\n } else {\n f.menus![0].value = undefined;\n }\n return this;\n }\n}\n","import { DecimalPipe } from '@angular/common';\nimport { HttpParams } from '@angular/common/http';\nimport { Host, Injectable } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Observable, of } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { DatePipe, YNPipe, _HttpClient } from '@delon/theme';\nimport { CurrencyService } from '@delon/util/format';\nimport { deepCopy, deepGet } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport {\n STColumn,\n STColumnFilter,\n STColumnFilterMenu,\n STCustomRequestOptions,\n STData,\n STMultiSort,\n STMultiSortResultType,\n STPage,\n STReq,\n STReqReNameType,\n STRequestOptions,\n STRes,\n STRowClassName,\n STSingleSort,\n STSortMap,\n STStatistical,\n STStatisticalResult,\n STStatisticalResults,\n STStatisticalType\n} from './st.interfaces';\nimport { _STColumn, _STColumnButton, _STDataValue } from './st.types';\n\nexport interface STDataSourceOptions {\n pi: number;\n ps: number;\n paginator: boolean;\n data: string | STData[] | Observable<STData[]>;\n total: number;\n req: STReq;\n res: STRes;\n page: STPage;\n columns: _STColumn[];\n singleSort?: STSingleSort;\n multiSort?: STMultiSort;\n rowClassName?: STRowClassName;\n customRequest?: (options: STCustomRequestOptions) => Observable<NzSafeAny>;\n}\n\nexport interface STDataSourceResult {\n /** 是否需要显示分页器 */\n pageShow: boolean;\n /** 新 `pi`,若返回 `undefined` 表示用户受控 */\n pi: number;\n /** 新 `ps`,若返回 `undefined` 表示用户受控 */\n ps: number;\n /** 新 `total`,若返回 `undefined` 表示用户受控 */\n total: number;\n /** 数据 */\n list: STData[];\n /** 统计数据 */\n statistical: STStatisticalResults;\n}\n\n@Injectable()\nexport class STDataSource {\n private sortTick = 0;\n\n constructor(\n private http: _HttpClient,\n @Host() private datePipe: DatePipe,\n @Host() private ynPipe: YNPipe,\n @Host() private numberPipe: DecimalPipe,\n private currencySrv: CurrencyService,\n private dom: DomSanitizer\n ) {}\n\n process(options: STDataSourceOptions): Observable<STDataSourceResult> {\n let data$: Observable<STData[]>;\n let isRemote = false;\n const { data, res, total, page, pi, ps, paginator, columns } = options;\n let retTotal: number;\n let retPs: number;\n let retList: STData[];\n let retPi: number;\n let rawData: NzSafeAny;\n let showPage = page.show;\n\n if (typeof data === 'string') {\n isRemote = true;\n data$ = this.getByRemote(data, options).pipe(\n map(result => {\n rawData = result;\n let ret: STData[];\n if (Array.isArray(result)) {\n ret = result;\n retTotal = ret.length;\n retPs = retTotal;\n showPage = false;\n } else {\n // list\n ret = deepGet(result, res.reName!.list as string[], []);\n if (ret == null || !Array.isArray(ret)) {\n ret = [];\n }\n // total\n const resultTotal = res.reName!.total && deepGet(result, res.reName!.total as string[], null);\n retTotal = resultTotal == null ? total || 0 : +resultTotal;\n }\n return deepCopy(ret);\n })\n );\n } else if (Array.isArray(data)) {\n data$ = of(data);\n } else {\n // a cold observable\n data$ = data;\n }\n\n if (!isRemote) {\n data$ = data$.pipe(\n // sort\n map((result: STData[]) => {\n rawData = result;\n let copyResult = deepCopy(result);\n const sorterFn = this.getSorterFn(columns as _STColumn[]);\n if (sorterFn) {\n copyResult = copyResult.sort(sorterFn);\n }\n return copyResult;\n }),\n // filter\n map((result: STData[]) => {\n columns\n .filter(w => w.filter)\n .forEach(c => {\n const filter = c.filter!;\n const values = this.getFilteredData(filter);\n if (values.length === 0) return;\n const onFilter = filter.fn;\n if (typeof onFilter !== 'function') {\n console.warn(`[st] Muse provide the fn function in filter`);\n return;\n }\n result = result.filter(record => values.some(v => onFilter(v, record)));\n });\n return result;\n }),\n // paging\n map((result: STData[]) => {\n if (paginator && page.front) {\n const maxPageIndex = Math.ceil(result.length / ps);\n retPi = Math.max(1, pi > maxPageIndex ? maxPageIndex : pi);\n retTotal = result.length;\n if (page.show === true) {\n return result.slice((retPi - 1) * ps, retPi * ps);\n }\n }\n return result;\n })\n );\n }\n\n // pre-process\n if (typeof res.process === 'function') {\n data$ = data$.pipe(map(result => res.process!(result, rawData)));\n }\n\n data$ = data$.pipe(map(result => this.optimizeData({ result, columns, rowClassName: options.rowClassName })));\n\n return data$.pipe(\n map(result => {\n retList = result;\n const realTotal = retTotal || total;\n const realPs = retPs || ps;\n\n return {\n pi: retPi,\n ps: retPs,\n total: retTotal,\n list: retList,\n statistical: this.genStatistical(columns as _STColumn[], retList, rawData),\n pageShow: typeof showPage === 'undefined' ? realTotal > realPs : showPage\n } as STDataSourceResult;\n })\n );\n }\n\n private get(item: STData, col: _STColumn, idx: number): _STDataValue {\n try {\n const safeHtml = col.safeType === 'safeHtml';\n if (col.format) {\n const formatRes = col.format(item, col, idx) || '';\n return {\n text: formatRes,\n _text: safeHtml ? this.dom.bypassSecurityTrustHtml(formatRes) : formatRes,\n org: formatRes,\n safeType: col.safeType!\n };\n }\n\n const value = deepGet(item, col.index as string[], col.default);\n\n let text = value;\n let color: string | undefined;\n switch (col.type) {\n case 'no':\n text = this.getNoIndex(item, col, idx);\n break;\n case 'img':\n text = value ? `<img src=\"${value}\" class=\"img\">` : '';\n break;\n case 'number':\n text = this.numberPipe.transform(value, col.numberDigits);\n break;\n case 'currency':\n text = this.currencySrv.format(value, col.currency?.format);\n break;\n case 'date':\n text = value === col.default ? col.default : this.datePipe.transform(value, col.dateFormat);\n break;\n case 'yn':\n text = this.ynPipe.transform(value === col.yn!.truth, col.yn!.yes!, col.yn!.no!, col.yn!.mode!, false);\n break;\n case 'enum':\n text = col.enum![value];\n break;\n case 'tag':\n case 'badge':\n const data = col.type === 'tag' ? col.tag : col.badge;\n if (data && data[text]) {\n const dataItem = data[text];\n text = dataItem.text;\n color = dataItem.color;\n } else {\n text = '';\n }\n break;\n }\n if (text == null) text = '';\n return {\n text,\n _text: safeHtml ? this.dom.bypassSecurityTrustHtml(text) : text,\n org: value,\n color,\n safeType: col.safeType!,\n buttons: []\n };\n } catch (ex) {\n const text = `INVALID DATA`;\n console.error(`Failed to get data`, item, col, ex);\n return { text, _text: text, org: text, buttons: [], safeType: 'text' };\n }\n }\n\n private getByRemote(url: string, options: STDataSourceOptions): Observable<unknown> {\n const { req, page, paginator, pi, ps, singleSort, multiSort, columns } = options;\n const method = (req.method || 'GET').toUpperCase();\n let params = {};\n const reName = req.reName as STReqReNameType;\n if (paginator) {\n if (req.type === 'page') {\n params = {\n [reName.pi as string]: page.zeroIndexed ? pi - 1 : pi,\n [reName.ps as string]: ps\n };\n } else {\n params = {\n [reName.skip as string]: (pi - 1) * ps,\n [reName.limit as string]: ps\n };\n }\n }\n params = {\n ...params,\n ...req.params,\n ...this.getReqSortMap(singleSort, multiSort, columns),\n ...this.getReqFilterMap(columns)\n };\n\n let reqOptions: STRequestOptions = {\n params,\n body: req.body,\n headers: req.headers\n };\n if (method === 'POST' && req.allInBody === true) {\n reqOptions = {\n body: { ...req.body, ...params },\n headers: req.headers\n };\n }\n if (typeof req.process === 'function') {\n reqOptions = req.process(reqOptions);\n }\n if (!(reqOptions.params instanceof HttpParams)) {\n reqOptions.params = new HttpParams({ fromObject: reqOptions.params });\n }\n if (typeof options.customRequest === 'function') {\n return options.customRequest({ method, url, options: reqOptions });\n }\n return this.http.request(method, url, reqOptions);\n }\n\n optimizeData(options: { columns: _STColumn[]; result: STData[]; rowClassName?: STRowClassName }): STData[] {\n const { result, columns, rowClassName } = options;\n for (let i = 0, len = result.length; i < len; i++) {\n result[i]._values = columns.map(c => {\n if (Array.isArray(c.buttons) && c.buttons.length > 0) {\n return { buttons: this.genButtons(c.buttons, result[i], c), _text: '' };\n }\n\n return this.get(result[i], c, i);\n });\n result[i]._rowClassName = [rowClassName ? rowClassName(result[i], i) : null, result[i].className]\n .filter(w => !!w)\n .join(' ');\n }\n return result;\n }\n\n getNoIndex(item: STData, col: _STColumn, idx: number): number {\n return typeof col.noIndex === 'function' ? col.noIndex(item, col, idx) : col.noIndex! + idx;\n }\n\n private genButtons(_btns: _STColumnButton[], item: STData, col: STColumn): _STColumnButton[] {\n const fn = (btns: _STColumnButton[]): _STColumnButton[] => {\n return deepCopy(btns).filter(btn => {\n const result = btn.iif!(item, btn, col);\n const isRenderDisabled = btn.iifBehavior === 'disabled';\n btn._result = result;\n btn._disabled = !result && isRenderDisabled;\n if (btn.children!.length > 0) {\n btn.children = fn(btn.children!);\n }\n delete btn.iif;\n return result || isRenderDisabled;\n });\n };\n\n const res = fn(_btns);\n\n const fnText = (btns: _STColumnButton[]): _STColumnButton[] => {\n for (const btn of btns) {\n btn._text = typeof btn.text === 'function' ? btn.text(item, btn) : btn.text || '';\n if (btn.children!.length > 0) {\n btn.children = fnText(btn.children!);\n }\n }\n return btns;\n };\n\n return fnText(res);\n }\n\n // #region sort\n\n private getValidSort(columns: _STColumn[]): STSortMap[] {\n return columns.filter(item => item._sort && item._sort.enabled && item._sort.default).map(item => item._sort!);\n }\n\n private getSorterFn(columns: _STColumn[]): ((a: STData, b: STData) => number) | void {\n const sortList = this.getValidSort(columns);\n if (sortList.length === 0) {\n return;\n }\n const sortItem = sortList[0];\n if (sortItem.compare === null) {\n return;\n }\n if (typeof sortItem.compare !== 'function') {\n console.warn(`[st] Muse provide the compare function in sort`);\n return;\n }\n\n return (a: STData, b: STData) => {\n const result = sortItem.compare!(a, b);\n if (result !== 0) {\n return sortItem.default === 'descend' ? -result : result;\n }\n return 0;\n };\n }\n\n get nextSortTick(): number {\n return ++this.sortTick;\n }\n\n getReqSortMap(\n singleSort: STSingleSort | undefined,\n multiSort: STMultiSort | undefined,\n columns: _STColumn[]\n ): STMultiSortResultType {\n let ret: STMultiSortResultType = {};\n const sortList = this.getValidSort(columns);\n\n if (multiSort) {\n const ms: STMultiSort = {\n key: 'sort',\n separator: '-',\n nameSeparator: '.',\n keepEmptyKey: true,\n arrayParam: false,\n ...multiSort\n };\n\n const sortMap = sortList\n .sort((a, b) => a.tick - b.tick)\n .map(item => item.key! + ms.nameSeparator + ((item.reName || {})[item.default!] || item.default));\n\n ret = { [ms.key!]: ms.arrayParam ? sortMap : sortMap.join(ms.separator) };\n\n return sortMap.length === 0 && ms.keepEmptyKey === false ? {} : ret;\n }\n\n if (sortList.length === 0) return ret;\n\n const mapData = sortList[0];\n let sortFiled = mapData.key;\n let sortValue = (sortList[0].reName || {})[mapData.default!] || mapData.default;\n if (singleSort) {\n sortValue = sortFiled + (singleSort.nameSeparator || '.') + sortValue;\n sortFiled = singleSort.key || 'sort';\n }\n ret[sortFiled as string] = sortValue as string;\n return ret;\n }\n\n // #endregion\n\n // #region filter\n\n private getFilteredData(filter: STColumnFilter): STColumnFilterMenu[] {\n return filter.type === 'default' ? filter.menus!.filter(f => f.checked === true) : filter.menus!.slice(0, 1);\n }\n\n private getReqFilterMap(columns: _STColumn[]): { [key: string]: string } {\n let ret = {};\n columns\n .filter(w => w.filter && w.filter.default === true)\n .forEach(col => {\n const filter = col.filter!;\n const values = this.getFilteredData(filter);\n let obj: { [key: string]: NzSafeAny } = {};\n if (filter.reName) {\n obj = filter.reName!(filter.menus!, col);\n } else {\n obj[filter.key!] = values.map(i => i.value).join(',');\n }\n ret = { ...ret, ...obj };\n });\n return ret;\n }\n\n // #endregion\n\n // #region statistical\n\n private genStatistical(columns: _STColumn[], list: STData[], rawData: NzSafeAny): STStatisticalResults {\n const res: { [key: string]: NzSafeAny } = {};\n columns.forEach((col, index) => {\n res[col.key || col.indexKey || index] =\n col.statistical == null ? {} : this.getStatistical(col, index, list, rawData);\n });\n return res;\n }\n\n private getStatistical(col: _STColumn, index: number, list: STData[], rawData: NzSafeAny): STStatisticalResult {\n const val = col.statistical;\n const item: STStatistical = {\n digits: 2,\n currency: undefined,\n ...(typeof val === 'string' ? { type: val as STStatisticalType } : (val as STStatistical))\n };\n let res: STStatisticalResult = { value: 0 };\n let currency = false;\n if (typeof item.type === 'function') {\n res = item.type(this.getValues(index, list), col, list, rawData);\n currency = true;\n } else {\n switch (item.type) {\n case 'count':\n res.value = list.length;\n break;\n case 'distinctCount':\n res.value = this.getValues(index, list).filter((value, idx, self) => self.indexOf(value) === idx).length;\n break;\n case 'sum':\n res.value = this.toFixed(this.getSum(index, list), item.digits!);\n currency = true;\n break;\n case 'average':\n res.value = this.toFixed(this.getSum(index, list) / list.length, item.digits!);\n currency = true;\n break;\n case 'max':\n res.value = Math.max(...this.getValues(index, list));\n currency = true;\n break;\n case 'min':\n res.value = Math.min(...this.getValues(index, list));\n currency = true;\n break;\n }\n }\n if (item.currency === true || (item.currency == null && currency === true)) {\n res.text = this.currencySrv.format(res.value, col.currency?.format) as string;\n } else {\n res.text = String(res.value);\n }\n return res;\n }\n\n private toFixed(val: number, digits: number): number {\n if (isNaN(val) || !isFinite(val)) {\n return 0;\n }\n return parseFloat(val.toFixed(digits));\n }\n\n private getValues(index: number, list: STData[]): number[] {\n return list.map(i => i._values[index].org).map(i => (i === '' || i == null ? 0 : i));\n }\n\n private getSum(index: number, list: STData[]): number {\n return this.getValues(index, list).reduce((p, i) => (p += parseFloat(String(i))), 0);\n }\n\n // #endregion\n}\n","import { Injectable, Optional } from '@angular/core';\n\nimport { XlsxExportResult, XlsxService } from '@delon/abc/xlsx';\nimport { deepGet } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { STColumn, STExportOptions } from './st.interfaces';\nimport { _STColumn } from './st.types';\n\n@Injectable()\nexport class STExport {\n constructor(@Optional() private xlsxSrv: XlsxService) {}\n\n private _stGet(item: NzSafeAny, col: STColumn, index: number, colIndex: number): NzSafeAny {\n const ret: { [key: string]: NzSafeAny } = { t: 's', v: '' };\n\n if (col.format) {\n ret.v = col.format(item, col, index);\n } else {\n const val = item._values ? item._values[colIndex].text : deepGet(item, col.index as string[], '');\n ret.v = val;\n if (val != null) {\n switch (col.type) {\n case 'currency':\n ret.t = 'n';\n break;\n case 'date':\n // Can't be a empty value, it will cause `#NULL!`\n // See https://github.com/SheetJS/sheetjs/blob/master/docbits/52_datatype.md\n if (`${val}`.length > 0) {\n ret.t = 'd';\n // Number Formats: https://github.com/SheetJS/sheetjs/blob/master/docbits/63_numfmt.md\n ret.z = col.dateFormat;\n }\n break;\n case 'yn':\n const yn = col.yn!;\n ret.v = val === yn.truth ? yn.yes : yn.no;\n break;\n }\n }\n }\n\n ret.v = ret.v || '';\n\n return ret;\n }\n\n private genSheet(opt: STExportOptions): { [sheet: string]: unknown } {\n const sheets: { [sheet: string]: { [key: string]: NzSafeAny } } = {};\n const sheet: { [key: string]: NzSafeAny } = (sheets[opt.sheetname || 'Sheet1'] = {});\n const dataLen = opt.data!.length;\n let validColCount = 0;\n let loseCount = 0;\n const columns = opt.columens! as _STColumn[];\n if (columns.findIndex(w => w._width != null) !== -1) {\n // wpx: width in screen pixels https://github.com/SheetJS/sheetjs#column-properties\n sheet['!cols'] = columns.map(col => ({ wpx: col._width }));\n }\n for (let colIdx = 0; colIdx < columns.length; colIdx++) {\n const col = columns[colIdx];\n if (col.exported === false || !col.index || !(!col.buttons || col.buttons.length === 0)) {\n ++loseCount;\n continue;\n }\n ++validColCount;\n const columnName = this.xlsxSrv.numberToSchema(colIdx + 1 - loseCount);\n sheet[`${columnName}1`] = {\n t: 's',\n v: typeof col.title === 'object' ? col.title.text : col.title\n };\n for (let dataIdx = 0; dataIdx < dataLen; dataIdx++) {\n sheet[`${columnName}${dataIdx + 2}`] = this._stGet(opt.data![dataIdx], col, dataIdx, colIdx);\n }\n }\n\n if (validColCount > 0 && dataLen > 0) {\n sheet['!ref'] = `A1:${this.xlsxSrv.numberToSchema(validColCount)}${dataLen + 1}`;\n }\n\n return sheets;\n }\n\n async export(opt: STExportOptions): Promise<XlsxExportResult> {\n const sheets = this.genSheet(opt);\n return this.xlsxSrv.export({\n sheets,\n filename: opt.filename,\n callback: opt.callback\n });\n }\n}\n","import { ComponentFactoryResolver, Directive, Input, OnInit, ViewContainerRef } from '@angular/core';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { STWidgetRegistry } from './st-widget';\nimport { STColumn, STData } from './st.interfaces';\n\n@Directive({ selector: '[st-widget-host]' })\nexport class STWidgetHostDirective implements OnInit {\n @Input() record: STData;\n @Input() column: STColumn;\n\n constructor(\n private stWidgetRegistry: STWidgetRegistry,\n private viewContainerRef: ViewContainerRef,\n private componentFactoryResolver: ComponentFactoryResolver\n ) {}\n\n ngOnInit(): void {\n const widget = this.column.widget!;\n const componentType = this.stWidgetRegistry.get(widget.type);\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentType as NzSafeAny);\n\n this.viewContainerRef.clear();\n const componentRef = this.viewContainerRef.createComponent(componentFactory);\n const { record, column } = this;\n const data: { [key: string]: NzSafeAny } = widget.params ? widget.params({ record, column }) : { record };\n Object.keys(data).forEach(key => {\n (componentRef.instance as NzSafeAny)[key] = data[key];\n });\n }\n}\n","import { AlainSTConfig } from '@delon/util/config';\n\nexport const ST_DEFAULT_CONFIG: AlainSTConfig = {\n pi: 1,\n ps: 10,\n size: 'default',\n responsive: true,\n responsiveHideHeaderFooter: false,\n req: {\n type: 'page',\n method: 'GET',\n allInBody: false,\n lazyLoad: false,\n reName: { pi: 'pi', ps: 'ps', skip: 'skip', limit: 'limit' }\n },\n res: {\n reName: { list: ['list'], total: ['total'] }\n },\n page: {\n front: true,\n zeroIndexed: false,\n position: 'bottom',\n placement: 'right',\n show: true,\n showSize: false,\n pageSizes: [10, 20, 30, 40, 50],\n showQuickJumper: false,\n total: true,\n toTop: true,\n toTopOffset: 100,\n itemRender: null,\n simple: false\n },\n modal: {\n paramsName: 'record',\n size: 'lg',\n exact: true\n },\n drawer: {\n paramsName: 'record',\n size: 'md',\n footer: true,\n footerHeight: 55\n },\n pop: {\n title: '确认删除吗?',\n trigger: 'click',\n placement: 'top'\n },\n btnIcon: {\n theme: 'outline',\n spin: false\n },\n noIndex: 1,\n expandRowByClick: false,\n expandAccordion: false,\n widthMode: {\n type: 'default',\n strictBehavior: 'truncate'\n },\n virtualItemSize: 54,\n virtualMaxBufferPx: 200,\n virtualMinBufferPx: 100,\n iifBehavior: 'hide',\n loadingDelay: 0,\n safeType: 'safeHtml',\n date: {\n format: `yyyy-MM-dd HH:mm`\n },\n yn: {\n truth: true,\n yes: '是',\n mode: 'icon'\n }\n};\n","import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';\nimport { DecimalPipe, DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Output,\n SimpleChange,\n SimpleChanges,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { from, isObservable, Observable, of, Subject, Subscription } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\nimport { AlainI18NService, ALAIN_I18N_TOKEN, DatePipe, DelonLocaleService, LocaleData, YNPipe } from '@delon/theme';\nimport { AlainConfigService, AlainSTConfig } from '@delon/util/config';\nimport { BooleanInput, InputBoolean, InputNumber, NumberInput, toBoolean } from '@delon/util/decorator';\nimport { deepCopy, deepMergeKey } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzContextMenuService, NzDropdownMenuComponent } from 'ng-zorro-antd/dropdown';\nimport { NzResizeEvent } from 'ng-zorro-antd/resizable';\nimport { NzTableComponent } from 'ng-zorro-antd/table';\n\nimport { STColumnSource } from './st-column-source';\nimport { STDataSource, STDataSourceOptions, STDataSourceResult } from './st-data-source';\nimport { STExport } from './st-export';\nimport { STRowSource } from './st-row.directive';\nimport { ST_DEFAULT_CONFIG } from './st.config';\nimport {\n STChange,\n STChangeType,\n STClickRowClassName,\n STClickRowClassNameType,\n STColumn,\n STColumnSafeType,\n STColumnSelection,\n STContextmenuFn,\n STContextmenuItem,\n STCustomRequestOptions,\n STData,\n STError,\n STExportOptions,\n STLoadOptions,\n STMultiSort,\n STPage,\n STReq,\n STRes,\n STResetColumnsOption,\n STResizable,\n STRowClassName,\n STSingleSort,\n STStatisticalResults,\n STWidthMode\n} from './st.interfaces';\nimport { _STColumn, _STDataValue, _STHeader, _STTdNotify, _STTdNotifyType } from './st.types';\n\n@Component({\n selector: 'st',\n exportAs: 'st',\n templateUrl: './st.component.html',\n providers: [STDataSource, STRowSource, STColumnSource, STExport, DatePipe, YNPipe, DecimalPipe],\n host: {\n '[class.st]': `true`,\n '[class.st__p-left]': `page.placement === 'left'`,\n '[class.st__p-center]': `page.placement === 'center'`,\n '[class.st__width-strict]': `widthMode.type === 'strict'`,\n '[class.ant-table-rep]': `responsive`,\n '[class.ant-table-rep__hide-header-footer]': `responsiveHideHeaderFooter`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class STComponent implements AfterViewInit, OnChanges, OnDestroy {\n static ngAcceptInputType_ps: NumberInput;\n static ngAcceptInputType_pi: NumberInput;\n static ngAcceptInputType_total: NumberInput;\n static ngAcceptInputType_loadingDelay: NumberInput;\n static ngAcceptInputType_bordered: BooleanInput;\n static ngAcceptInputType_expandRowByClick: BooleanInput;\n static ngAcceptInputType_expandAccordion: BooleanInput;\n static ngAcceptInputType_responsive: BooleanInput;\n static ngAcceptInputType_responsiveHideHeaderFooter: BooleanInput;\n static ngAcceptInputType_virtualScroll: BooleanInput;\n static ngAcceptInputType_virtualItemSize: NumberInput;\n static ngAcceptInputType_virtualMaxBufferPx: NumberInput;\n static ngAcceptInputType_virtualMinBufferPx: NumberInput;\n\n private destroy$ = new Subject<void>();\n private data$: Subscription;\n private totalTpl = ``;\n private cog: AlainSTConfig;\n private _req: STReq;\n private _res: STRes;\n private _page: STPage;\n private _widthMode: STWidthMode;\n private customWidthConfig: boolean = false;\n _widthConfig: string[] = [];\n locale: LocaleData = {};\n _loading = false;\n _data: STData[] = [];\n _statistical: STStatisticalResults = {};\n _isPagination = true;\n _allChecked = false;\n _allCheckedDisabled = false;\n _indeterminate = false;\n _headers: _STHeader[][] = [];\n _columns: _STColumn[] = [];\n contextmenuList: STContextmenuItem[] = [];\n @ViewChild('table') readonly orgTable: NzTableComponent<STData>;\n @ViewChild('contextmenuTpl') readonly contextmenuTpl!: NzDropdownMenuComponent;\n\n @Input()\n get req(): STReq {\n return this._req;\n }\n set req(value: STReq) {\n this._req = deepMergeKey({}, true, this.cog.req, value);\n }\n /** 返回体配置 */\n @Input()\n get res(): STRes {\n return this._res;\n }\n set res(value: STRes) {\n const item = (this._res = deepMergeKey({}, true, this.cog.res, value));\n const reName = item.reName!;\n if (!Array.isArray(reName.list)) reName.list = reName.list!.split('.');\n if (!Array.isArray(reName.total)) reName.total = reName.total!.split('.');\n this._res = item;\n }\n @Input()\n get page(): STPage {\n return this._page;\n }\n set page(value: STPage) {\n this._page = { ...this.cog.page, ...value };\n this.updateTotalTpl();\n }\n @Input() data: string | STData[] | Observable<STData[]>;\n @Input() columns: STColumn[] = [];\n @Input() contextmenu?: STContextmenuFn;\n @Input() @InputNumber() ps = 10;\n @Input() @InputNumber() pi = 1;\n @Input() @InputNumber() total = 0;\n @Input() loading: boolean | null = null;\n @Input() @InputNumber() loadingDelay = 0;\n @Input() loadingIndicator: TemplateRef<void>;\n @Input() @InputBoolean() bordered = false;\n @Input() size: 'small' | 'middle' | 'default';\n @Input() scroll: { y?: string; x?: string };\n @Input() singleSort: STSingleSort;\n private _multiSort?: STMultiSort;\n @Input()\n get multiSort(): NzSafeAny {\n return this._multiSort;\n }\n set multiSort(value: NzSafeAny) {\n if (\n (typeof value === 'boolean' && !toBoolean(value)) ||\n (typeof value === 'object' && Object.keys(value).length === 0)\n ) {\n this._multiSort = undefined;\n return;\n }\n this._multiSort = {\n ...(typeof value === 'object' ? value : {})\n };\n }\n @Input() rowClassName: STRowClassName;\n @Input() clickRowClassName?: STClickRowClassName | null;\n @Input()\n set widthMode(value: STWidthMode) {\n this._widthMode = { ...this.cog.widthMode, ...value };\n }\n get widthMode(): STWidthMode {\n return this._widthMode;\n }\n @Input()\n set widthConfig(val: string[]) {\n this._widthConfig = val;\n this.customWidthConfig = val && val.length > 0;\n }\n private _resizable: STResizable;\n @Input()\n set resizable(val: STResizable | boolean | string) {\n this._resizable = typeof val === 'object' ? val : { disabled: !toBoolean(val) };\n }\n @Input() header?: string | TemplateRef<void> | null;\n @Input() @InputBoolean() showHeader = true;\n @Input() footer?: string | TemplateRef<void> | null;\n @Input() bodyHeader?: TemplateRef<STStatisticalResults> | null;\n @Input() body?: TemplateRef<STStatisticalResults> | null;\n @Input() @InputBoolean() expandRowByClick = false;\n @Input() @InputBoolean() expandAccordion = false;\n @Input() expand: TemplateRef<{ $implicit: NzSafeAny; column: STColumn }>;\n @Input() noResult?: string | TemplateRef<void> | null;\n @Input() @InputBoolean() responsive: boolean = true;\n @Input() @InputBoolean() responsiveHideHeaderFooter: boolean;\n @Output() readonly error = new EventEmitter<STError>();\n @Output() readonly change = new EventEmitter<STChange>();\n @Input() @InputBoolean() virtualScroll = false;\n @Input() @InputNumber() virtualItemSize = 54;\n @Input() @InputNumber() virtualMaxBufferPx = 200;\n @Input() @InputNumber() virtualMinBufferPx = 100;\n @Input() customRequest?: (options: STCustomRequestOptions) => Observable<NzSafeAny>;\n @Input() virtualForTrackBy: TrackByFunction<STData> = index => index;\n\n /**\n * Get the number of the current page\n */\n get count(): number {\n return this._data.length;\n }\n\n /**\n * Get the data of the current page\n */\n get list(): STData[] {\n return this._data;\n }\n\n constructor(\n @Optional() @Inject(ALAIN_I18N_TOKEN) i18nSrv: AlainI18NService,\n private cdr: ChangeDetectorRef,\n private el: ElementRef,\n private exportSrv: STExport,\n @Inject(DOCUMENT) private doc: NzSafeAny,\n private columnSource: STColumnSource,\n private dataSource: STDataSource,\n private delonI18n: DelonLocaleService,\n configSrv: AlainConfigService,\n private cms: NzContextMenuService\n ) {\n this.setCog(configSrv.merge('st', ST_DEFAULT_CONFIG)!);\n\n this.delonI18n.change.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.locale = this.delonI18n.getData('st');\n if (this._columns.length > 0) {\n this.updateTotalTpl();\n this.cd();\n }\n });\n\n i18nSrv.change\n .pipe(\n takeUntil(this.destroy$),\n filter(() => this._columns.length > 0)\n )\n .subscribe(() => this.refreshColumns());\n }\n\n private setCog(cog: AlainSTConfig): void {\n const copyMultiSort = { ...cog.multiSort };\n // Because multiSort.global will affect the result, it should be removed first, and multiSort will be operated again after processing.\n delete cog.multiSort;\n this.cog = cog;\n Object.assign(this, cog);\n\n if (copyMultiSort.global !== false) {\n this.multiSort = copyMultiSort;\n }\n this.columnSource.setCog(cog);\n }\n\n cd(): this {\n this.cdr.detectChanges();\n return this;\n }\n\n renderTotal(total: string, range: string[]): string {\n return this.totalTpl\n ? this.totalTpl.replace('{{total}}', total).replace('{{range[0]}}', range[0]).replace('{{range[1]}}', range[1])\n : '';\n }\n\n private changeEmit(type: STChangeType, data?: NzSafeAny): void {\n const res: STChange = {\n type,\n pi: this.pi,\n ps: this.ps,\n total: this.total\n };\n if (data != null) {\n res[type] = data;\n }\n this.change.emit(res);\n }\n\n // #region data\n\n /**\n * 获取过滤后所有数据\n * - 本地数据:包含排序、过滤后不分页数据\n * - 远程数据:不传递 `pi`、`ps` 两个参数\n */\n get filteredData(): Promise<STData[]> {\n return this.loadData({ paginator: false } as NzSafeAny).then(res => res.list);\n }\n\n private updateTotalTpl(): void {\n const { total } = this.page;\n if (typeof total === 'string' && total.length) {\n this.totalTpl = total;\n } else if (toBoolean(total)) {\n this.totalTpl = this.locale.total;\n } else {\n this.totalTpl = '';\n }\n }\n\n private setLoading(val: boolean): void {\n if (this.loading == null) {\n this._loading = val;\n this.cdr.detectChanges();\n }\n }\n\n private loadData(options?: STDataSourceOptions): Promise<STDataSourceResult> {\n const { pi, ps, data, req, res, page, total, singleSort, multiSort, rowClassName } = this;\n return new Promise((resolvePromise, rejectPromise) => {\n if (this.data$) {\n this.data$.unsubscribe();\n }\n\n this.data$ = this.dataSource\n .process({\n pi,\n ps,\n total,\n data,\n req,\n res,\n page,\n columns: this._columns,\n singleSort,\n multiSort,\n rowClassName,\n paginator: true,\n customRequest: this.customRequest || this.cog.customRequest,\n ...options\n })\n .pipe(takeUntil(this.destroy$))\n .subscribe(\n result => resolvePromise(result),\n error => {\n console.warn('st.loadDate', error);\n rejectPromise(error);\n }\n );\n });\n }\n\n private async loadPageData(): Promise<this> {\n this.setLoading(true);\n try {\n const result = await this.loadData();\n this.setLoading(false);\n if (typeof result.pi !== 'undefined') {\n this.pi = result.pi;\n }\n if (typeof result.ps !== 'undefined') {\n this.ps = result.ps;\n }\n if (typeof result.total !== 'undefined') {\n this.total = result.total;\n }\n if (typeof result.pageShow !== 'undefined') {\n this._isPagination = result.pageShow;\n }\n this._data = result.list;\n this._statistical = result.statistical as STStatisticalResults;\n this.changeEmit('loaded', result.list);\n // Should be re-render in next tike when using virtual scroll\n // https://github.com/ng-alain/ng-alain/issues/1836\n if (this.cdkVirtualScrollViewport) {\n Promise.resolve().then(() => this.cdkVirtualScrollViewport.checkViewportSize());\n }\n return this._refCheck();\n } catch (error) {\n this.setLoading(false);\n if (!this.destroy$.isStopped) {\n this.cdr.detectChanges();\n this.error.emit({ type: 'req', error });\n }\n return this;\n }\n }\n\n /** 清空所有数据 */\n clear(cleanStatus: boolean = true): this {\n if (cleanStatus) {\n this.clearStatus();\n }\n this._data = [];\n return this.cd();\n }\n\n /** 清空所有状态 */\n clearStatus(): this {\n return this.clearCheck().clearRadio().clearFilter().clearSort();\n }\n\n /**\n * 根据页码重新加载数据\n *\n * @param pi 指定当前页码,默认:`1`\n * @param extraParams 重新指定 `extraParams` 值\n * @param options 选项\n */\n load(pi: number = 1, extraParams?: NzSafeAny, options?: STLoadOptions): this {\n if (pi !== -1) this.pi = pi;\n if (typeof extraParams !== 'undefined') {\n this.req.params = options && options.merge ? { ...this.req.params, ...extraParams } : extraParams;\n }\n this._change('pi', options);\n return this;\n }\n\n /**\n * 重新刷新当前页\n *\n * @param extraParams 重新指定 `extraParams` 值\n */\n reload(extraParams?: NzSafeAny, options?: STLoadOptions): this {\n return this.load(-1, extraParams, options);\n }\n\n /**\n * 重置且重新设置 `pi` 为 `1`,包含以下值:\n * - `check` 数据\n * - `radio` 数据\n * - `sort` 数据\n * - `fileter` 数据\n *\n * @param extraParams 重新指定 `extraParams` 值\n */\n reset(extraParams?: NzSafeAny, options?: STLoadOptions): this {\n this.clearStatus().load(1, extraParams, options);\n return this;\n }\n\n private _toTop(enforce?: boolean): void {\n if (!(enforce == null ? this.page.toTop : enforce)) return;\n const el = this.el.nativeElement as HTMLElement;\n el.scrollIntoView();\n // fix header height\n this.doc.documentElement.scrollTop -= this.page.toTopOffset!;\n if (this.scroll) {\n if (this.cdkVirtualScrollViewport) {\n this.cdkVirtualScrollViewport.scrollTo({\n top: 0,\n left: 0\n });\n } else {\n el.querySelector('.ant-table-body, .ant-table-content')?.scrollTo(0, 0);\n }\n }\n }\n\n _change(type: 'pi' | 'ps', options?: STLoadOptions): void {\n if (type === 'pi' || (type === 'ps' && this.pi <= Math.ceil(this.total / this.ps))) {\n this.loadPageData().then(() => this._toTop(options?.toTop));\n }\n\n this.changeEmit(type);\n }\n\n private closeOtherExpand(item: STData): void {\n if (this.expandAccordion === false) return;\n this._data.filter(i => i !== item).forEach(i => (i.expand = false));\n }\n\n _rowClick(e: Event, item: STData, index: number, dbl: boolean): void {\n const el = e.target as HTMLElement;\n if (el.nodeName === 'INPUT') return;\n const { expand, expandRowByClick } = this;\n if (!!expand && item.showExpand !== false && expandRowByClick) {\n item.expand = !item.expand;\n this.closeOtherExpand(item);\n this.changeEmit('expand', item);\n return;\n }\n\n const data = { e, item, index };\n if (dbl) {\n this.changeEmit('dblClick', data);\n } else {\n this._clickRowClassName(el, item, index);\n this.changeEmit('click', data);\n }\n }\n\n private _clickRowClassName(el: HTMLElement, item: STData, index: number): void {\n const cr = this.clickRowClassName;\n if (cr == null) return;\n const config = {\n exclusive: false,\n ...(typeof cr === 'string' ? { fn: () => cr } : cr)\n } as STClickRowClassNameType;\n const className = config.fn(item, index);\n const trEl = el.closest('tr') as HTMLElement;\n if (config.exclusive) {\n trEl.parentElement!!.querySelectorAll('tr').forEach((a: HTMLElement) => a.classList.remove(className));\n }\n if (trEl.classList.contains(className)) {\n trEl.classList.remove(className);\n } else {\n trEl.classList.add(className);\n }\n }\n\n _expandChange(item: STData, expand: boolean): void {\n item.expand = expand;\n this.closeOtherExpand(item);\n this.changeEmit('expand', item);\n }\n\n _stopPropagation(ev: Event): void {\n ev.stopPropagation();\n }\n\n /**\n * Remove a row in the table, like this:\n *\n * ```\n * this.st.removeRow(0)\n * this.st.removeRow(stDataItem)\n * ```\n */\n removeRow(data: STData | STData[] | number): this {\n if (typeof data === 'number') {\n this._data.splice(data, 1);\n } else {\n if (!Array.isArray(data)) {\n data = [data];\n }\n\n (data as STData[])\n .map(item => this._data.indexOf(item))\n .filter(pos => pos !== -1)\n .forEach(pos => this._data.splice(pos, 1));\n }\n // recalculate no\n this._columns\n .filter(w => w.type === 'no')\n .forEach(c =>\n this._data.forEach((i, idx) => {\n const text = `${this.dataSource.getNoIndex(i, c, idx)}`;\n i._values![c.__point!] = { text, _text: text, org: idx, safeType: 'text' } as _STDataValue;\n })\n );\n\n return this.cd();\n }\n\n /**\n * Sets the row value for the `index` in the table, like this:\n *\n * - `optinos.refreshSchema` Whether to refresh of st schemas\n * - `optinos.emitReload` Whether to trigger a reload http request when data is url\n *\n * ```\n * this.st.setRow(0, { price: 100 })\n * this.st.setRow(0, { price: 100, name: 'asdf' })\n * this.st.setRow(item, { price: 100 })\n * ```\n */\n setRow(index: number | STData, item: STData, options?: { refreshSchema?: boolean; emitReload?: boolean }): this {\n options = { refreshSchema: false, emitReload: false, ...options };\n if (typeof index !== 'number') {\n index = this._data.indexOf(index);\n }\n this._data[index] = deepMergeKey(this._data[index], false, item);\n this.optimizeData();\n if (options.refreshSchema) {\n this.resetColumns({ emitReload: options.emitReload });\n return this;\n }\n this.cdr.detectChanges();\n return this;\n }\n\n // #endregion\n\n // #region sort\n\n sort(col: _STColumn, idx: number, value: NzSafeAny): void {\n if (this.multiSort) {\n col._sort.default = value;\n col._sort.tick = this.dataSource.nextSortTick;\n } else {\n this._columns.forEach((item, index) => (item._sort.default = index === idx ? value : null));\n }\n this.cdr.detectChanges();\n this.loadPageData();\n const res = {\n value,\n map: this.dataSource.getReqSortMap(this.singleSort, this.multiSort, this._columns),\n column: col\n };\n this.changeEmit('sort', res);\n }\n\n clearSort(): this {\n this._columns.forEach(item => (item._sort.default = null));\n return this;\n }\n\n // #endregion\n\n // #region filter\n\n _handleFilter(col: _STColumn, confirm: boolean): void {\n if (!confirm) {\n this.columnSource.cleanFilter(col);\n }\n // 过滤表示一种数据的变化应重置页码为 `1`\n this.pi = 1;\n this.columnSource.updateDefault(col.filter!);\n this.loadPageData();\n this.changeEmit('filter', col);\n }\n\n handleFilterNotify(value?: unknown): void {\n this.changeEmit('filterChange', value);\n }\n\n clearFilter(): this {\n this._columns.filter(w => w.filter && w.filter.default === true).forEach(col => this.columnSource.cleanFilter(col));\n return this;\n }\n // #endregion\n\n // #region checkbox\n\n /** 清除所有 `checkbox` */\n clearCheck(): this {\n return this._checkAll(false);\n }\n\n private _refCheck(): this {\n const validData = this._data.filter(w => !w.disabled);\n const checkedList = validData.filter(w => w.checked === true);\n this._allChecked = checkedList.length > 0 && checkedList.length === validData.length;\n const allUnChecked = validData.every(value => !value.checked);\n this._indeterminate = !this._allChecked && !allUnChecked;\n this._allCheckedDisabled = this._data.length === this._data.filter(w => w.disabled).length;\n return this.cd();\n }\n\n _checkAll(checked?: boolean): this {\n checked = typeof checked === 'undefined' ? this._allChecked : checked;\n this._data.filter(w => !w.disabled).forEach(i => (i.checked = checked));\n return this._refCheck()._checkNotify();\n }\n\n _rowSelection(row: STColumnSelection): this {\n row.select(this._data);\n return this._refCheck()._checkNotify();\n }\n\n _checkNotify(): this {\n const res = this._data.filter(w => !w.disabled && w.checked === true);\n this.changeEmit('checkbox', res);\n return this;\n }\n\n // #endregion\n\n // #region radio\n\n /** 清除所有 `radio` */\n clearRadio(): this {\n this._data.filter(w => w.checked).forEach(item => (item.checked = false));\n this.changeEmit('radio', null);\n return this;\n }\n\n // #endregion\n\n _handleTd(ev: _STTdNotify): void {\n switch (ev.type) {\n case 'checkbox':\n this._refCheck()._checkNotify();\n break;\n case 'radio':\n this.changeEmit('radio', ev.item);\n break;\n }\n }\n\n // #region export\n\n /**\n * 导出当前页,确保已经注册 `XlsxModule`\n *\n * @param newData 重新指定数据;若为 `true` 表示使用 `filteredData` 数据\n * @param opt 额外参数\n */\n export(newData?: STData[] | true, opt?: STExportOptions): void {\n const data = Array.isArray(newData)\n ? this.dataSource.optimizeData({ columns: this._columns, result: newData })\n : this._data;\n (newData === true ? from(this.filteredData) : of(data)).subscribe((res: STData[]) =>\n this.exportSrv.export({\n columens: this._columns,\n ...opt,\n data: res\n })\n );\n }\n\n // #endregion\n\n // #region resizable\n\n colResize({ width }: NzResizeEvent, column: _STColumn): void {\n column.width = `${width}px`;\n this.changeEmit('resize', column);\n }\n\n // #endregion\n\n // #region contextmenu\n onContextmenu(event: MouseEvent): void {\n if (!this.contextmenu) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n const colEl = (event.target as HTMLElement).closest('[data-col-index]') as HTMLElement;\n if (!colEl) {\n return;\n }\n const colIndex = Number(colEl.dataset.colIndex);\n const rowIndex = Number((colEl.closest('tr') as HTMLElement).dataset.index);\n const isTitle = isNaN(rowIndex);\n const obs$ = this.contextmenu({\n event,\n type: isTitle ? 'head' : 'body',\n rowIndex: isTitle ? null : rowIndex,\n colIndex,\n data: isTitle ? null : this.list[rowIndex],\n column: this._columns[colIndex]\n });\n (isObservable(obs$) ? obs$ : of(obs$))\n .pipe(\n takeUntil(this.destroy$),\n filter(res => res.length > 0)\n )\n .subscribe(res => {\n this.contextmenuList = res.map(i => {\n if (!Array.isArray(i.children)) {\n i.children = [];\n }\n return i;\n });\n this.cdr.detectChanges();\n this.cms.create(event, this.contextmenuTpl);\n });\n }\n // #endregion\n\n get cdkVirtualScrollViewport(): CdkVirtualScrollViewport {\n return this.orgTable.cdkVirtualScrollViewport!;\n }\n\n resetColumns(options?: STResetColumnsOption): Promise<this> {\n options = { emitReload: true, preClearData: false, ...options };\n if (typeof options.columns !== 'undefined') {\n this.columns = options.columns;\n }\n if (typeof options.pi !== 'undefined') {\n this.pi = options.pi;\n }\n if (typeof options.ps !== 'undefined') {\n this.ps = options.ps;\n }\n if (options.emitReload) {\n // Should clean data, Because of changing columns may cause inaccurate data\n options.preClearData = true;\n }\n if (options.preClearData) {\n this._data = [];\n }\n this.refreshColumns();\n if (options.emitReload) {\n return this.loadPageData();\n } else {\n this.cd();\n return Promise.resolve(this);\n }\n }\n\n private refreshColumns(): this {\n const res = this.columnSource.process(this.columns as _STColumn[], {\n widthMode: this.widthMode,\n resizable: this._resizable,\n safeType: this.cog.safeType as STColumnSafeType\n });\n this._columns = res.columns;\n this._headers = res.headers;\n if (this.customWidthConfig === false && res.headerWidths != null) {\n this._widthConfig = res.headerWidths;\n }\n return this;\n }\n\n private optimizeData(): void {\n this._data = this.dataSource.optimizeData({\n columns: this._columns,\n result: this._data,\n rowClassName: this.rowClassName\n });\n }\n\n /**\n * Return pure data, `st` internally maintains a set of data for caching, this part of data may affect the backend\n *\n * 返回纯净数据,`st` 内部会维护一组用于缓存的数据,这部分数据可能会影响后端\n */\n pureItem(itemOrIndex: STData | number): STData | null {\n if (typeof itemOrIndex === 'number') {\n itemOrIndex = this._data[itemOrIndex];\n }\n if (!itemOrIndex) {\n return null;\n }\n const copyItem = deepCopy(itemOrIndex);\n delete copyItem._values;\n return copyItem;\n }\n\n ngAfterViewInit(): void {\n this.columnSource.restoreAllRender(this._columns);\n }\n\n ngOnChanges(changes: { [P in keyof this]?: SimpleChange } & SimpleChanges): void {\n if (changes.columns) {\n this.refreshColumns().optimizeData();\n }\n const changeData = changes.data;\n if (changeData && changeData.currentValue && !(this.req.lazyLoad && changeData.firstChange)) {\n this.loadPageData();\n }\n if (changes.loading) {\n this._loading = changes.loading.currentValue;\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\n\nimport { LocaleData } from '@delon/theme';\n\nimport { STColumnFilter, STColumnFilterMenu, STIcon } from './st.interfaces';\nimport { _STColumn } from './st.types';\n\n@Component({\n selector: 'st-filter',\n template: `\n <span\n class=\"ant-table-filter-trigger\"\n [class.active]=\"visible || f.default\"\n nz-dropdown\n [nzDropdownMenu]=\"filterMenu\"\n nzTrigger=\"click\"\n [nzClickHide]=\"false\"\n [(nzVisible)]=\"visible\"\n nzOverlayClassName=\"st__filter-wrap\"\n (click)=\"show($event)\"\n >\n <i nz-icon [nzType]=\"icon.type\" [nzTheme]=\"icon.theme!\"></i>\n </span>\n <nz-dropdown-menu #filterMenu=\"nzDropdownMenu\">\n <div class=\"ant-table-filter-dropdown\">\n <ng-container [ngSwitch]=\"f.type\">\n <div *ngSwitchCase=\"'keyword'\" class=\"st__filter-keyword\">\n <input\n type=\"text\"\n nz-input\n [attr.placeholder]=\"f.placeholder\"\n [(ngModel)]=\"f.menus![0]!.value\"\n (ngModelChange)=\"n.emit($event)\"\n (keyup.enter)=\"confirm()\"\n />\n </div>\n <div *ngSwitchCase=\"'number'\" class=\"p-sm st__filter-number\">\n <nz-input-number\n [(ngModel)]=\"f.menus![0]!.value\"\n (ngModelChange)=\"n.emit($event)\"\n [nzMin]=\"f.number!.min!\"\n [nzMax]=\"f.number!.max!\"\n [nzStep]=\"f.number!.step!\"\n [nzPrecision]=\"f.number!.precision\"\n [nzPlaceHolder]=\"f.placeholder!\"\n class=\"width-100\"\n ></nz-input-number>\n </div>\n <div *ngSwitchCase=\"'date'\" class=\"p-sm st__filter-date\">\n <nz-date-picker\n *ngIf=\"!f.date!.range\"\n nzInline\n [nzMode]=\"f.date!.mode\"\n [(ngModel)]=\"f.menus![0]!.value\"\n (ngModelChange)=\"n.emit($event)\"\n [nzShowNow]=\"f.date!.showNow\"\n [nzShowToday]=\"f.date!.showToday\"\n [nzDisabledDate]=\"f.date!.disabledDate\"\n [nzDisabledTime]=\"f.date!.disabledTime\"\n ></nz-date-picker>\n <nz-range-picker\n *ngIf=\"f.date!.range\"\n nzInline\n [nzMode]=\"f.date!.mode\"\n [(ngModel)]=\"f.menus![0]!.value\"\n (ngModelChange)=\"n.emit($event)\"\n [nzShowNow]=\"f.date!.showNow\"\n [nzShowToday]=\"f.date!.showToday\"\n [nzDisabledDate]=\"f.date!.disabledDate\"\n [nzDisabledTime]=\"f.date!.disabledTime\"\n ></nz-range-picker>\n </div>\n <div *ngSwitchCase=\"'time'\" class=\"p-sm st__filter-time\"> </div>\n <div *ngSwitchCase=\"'custom'\" class=\"st__filter-custom\">\n <ng-template\n [ngTemplateOutlet]=\"f.custom!\"\n [ngTemplateOutletContext]=\"{ $implicit: f, col: col }\"\n ></ng-template>\n </div>\n <ul *ngSwitchDefault nz-menu>\n <ng-container *ngIf=\"f.multiple\">\n <li nz-menu-item *ngFor=\"let filter of f.menus\">\n <label nz-checkbox [(ngModel)]=\"filter.checked\" (ngModelChange)=\"checkboxChange()\">\n {{ filter.text }}\n </label>\n </li>\n </ng-container>\n <ng-container *ngIf=\"!f.multiple\">\n <li nz-menu-item *ngFor=\"let filter of f.menus\">\n <label nz-radio [ngModel]=\"filter.checked\" (ngModelChange)=\"radioChange(filter)\">\n {{ filter.text }}\n </label>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n <div *ngIf=\"f.showOPArea\" class=\"ant-table-filter-dropdown-btns\">\n <a class=\"ant-table-filter-dropdown-link confirm\" (click)=\"visible = false\">\n <span (click)=\"confirm()\">{{ f.confirmText || locale.filterConfirm }}</span>\n </a>\n <a class=\"ant-table-filter-dropdown-link clear\" (click)=\"visible = false\">\n <span (click)=\"reset()\">{{ f.clearText || locale.filterReset }}</span>\n </a>\n </div>\n </div>\n </nz-dropdown-menu>\n `,\n host: {\n '[class.ant-table-filter-trigger-container]': `true`,\n '[class.st__filter]': `true`,\n '[class.ant-table-filter-trigger-container-open]': `visible`\n },\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class STFilterComponent {\n visible = false;\n @Input() col: _STColumn;\n @Input() locale: LocaleData = {};\n @Input() f: STColumnFilter;\n @Output() readonly n = new EventEmitter<unknown>();\n @Output() readonly handle = new EventEmitter<boolean>();\n get icon(): STIcon {\n return this.f.icon as STIcon;\n }\n\n show($event: MouseEvent): void {\n $event.stopPropagation();\n }\n\n checkboxChange(): void {\n this.n.emit(this.f.menus?.filter(w => w.checked));\n }\n\n radioChange(item: STColumnFilterMenu): void {\n this.f.menus!.forEach(i => (i.checked = false));\n item.checked = !item.checked;\n this.n.emit(item);\n }\n\n confirm(): void {\n this.handle.emit(true);\n }\n\n reset(): void {\n this.handle.emit(false);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Host,\n Input,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { Router } from '@angular/router';\nimport { filter } from 'rxjs/operators';\n\nimport { DrawerHelper, ModalHelper } from '@delon/theme';\nimport { deepMergeKey } from '@delon/util/other';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { STComponent } from '.';\nimport { STColumnButton, STData } from './st.interfaces';\nimport { _STColumn, _STTdNotify, _STTdNotifyType } from './st.types';\n\n@Component({\n selector: 'st-td',\n template: `\n <ng-template #btnTpl let-i>\n <ng-container *ngIf=\"!i.tooltip\">\n <ng-template [ngTemplateOutlet]=\"btnItemTpl\" [ngTemplateOutletContext]=\"{ $implicit: i }\"></ng-template>\n </ng-container>\n <span *ngIf=\"i.tooltip\" nz-tooltip [nzTooltipTitle]=\"i.tooltip\">\n <ng-template [ngTemplateOutlet]=\"btnItemTpl\" [ngTemplateOutletContext]=\"{ $implicit: i }\"></ng-template>\n </span>\n </ng-template>\n <ng-template #btnItemTpl let-i>\n <a\n *ngIf=\"i.pop\"\n nz-popconfirm\n [nzPopconfirmTitle]=\"i.pop.title\"\n [nzIcon]=\"i.pop.icon\"\n [nzCondition]=\"i.pop.condition(i)\"\n [nzCancelText]=\"i.pop.cancelText\"\n [nzOkText]=\"i.pop.okText\"\n [nzOkType]=\"i.pop.okType\"\n (nzOnConfirm)=\"_btn(i)\"\n class=\"st__btn-text\"\n [ngClass]=\"i.className\"\n (click)=\"_stopPropagation($event)\"\n >\n <ng-template [ngTemplateOutlet]=\"btnTextTpl\" [ngTemplateOutletContext]=\"{ $implicit: i }\"></ng-template>\n </a>\n <a *ngIf=\"!i.pop\" (click)=\"_btn(i, $event)\" class=\"st__btn-text\" [ngClass]=\"i.className\">\n <ng-template [ngTemplateOutlet]=\"btnTextTpl\" [ngTemplateOutletContext]=\"{ $implicit: i }\"></ng-template>\n </a>\n </ng-template>\n <ng-template #btnTextTpl let-i>\n <ng-container *ngIf=\"i.icon\">\n <i\n *ngIf=\"!i.icon.iconfont\"\n nz-icon\n [nzType]=\"i.icon.type\"\n [nzTheme]=\"i.icon.theme\"\n [nzSpin]=\"i.icon.spin\"\n [nzTwotoneColor]=\"i.icon.twoToneColor\"\n ></i>\n <i *ngIf=\"i.icon.iconfont\" nz-icon [nzIconfont]=\"i.icon.iconfont\"></i>\n </ng-container>\n <span [innerHTML]=\"i._text\" [ngClass]=\"{ 'pl-xs': i.icon }\"></span>\n </ng-template>\n <ng-template\n #render\n [ngTemplateOutlet]=\"c.__render!\"\n [ngTemplateOutletContext]=\"{ $implicit: i, index: index, column: c }\"\n ></ng-template>\n <ng-container *ngIf=\"!c.__render; else render\">\n <ng-container [ngSwitch]=\"c.type\">\n <label\n *ngSwitchCase=\"'checkbox'\"\n nz-checkbox\n [nzDisabled]=\"i.disabled\"\n [ngModel]=\"i.checked\"\n (ngModelChange)=\"_checkbox($event)\"\n ></label>\n <label\n *ngSwitchCase=\"'radio'\"\n nz-radio\n [nzDisabled]=\"i.disabled\"\n [ngModel]=\"i.checked\"\n (ngModelChange)=\"_radio($event)\"\n ></label>\n <a\n *ngSwitchCase=\"'link'\"\n (click)=\"_link($event)\"\n [innerHTML]=\"i._values[cIdx]._text\"\n [attr.title]=\"i._values[cIdx].text\"\n ></a>\n <ng-container *ngIf=\"i._values[cIdx].text\">\n <nz-tag *ngSwitchCase=\"'tag'\" [nzColor]=\"i._values[cIdx].color\">\n <span [innerHTML]=\"i._values[cIdx]._text\"></span>\n </nz-tag>\n <nz-badge\n *ngSwitchCase=\"'badge'\"\n [nzStatus]=\"i._values[cIdx].color\"\n [nzText]=\"i._values[cIdx].text\"\n ></nz-badge>\n </ng-container>\n <ng-template *ngSwitchCase=\"'widget'\" st-widget-host [record]=\"i\" [column]=\"c\"></ng-template\n ><ng-container *ngSwitchDefault>\n <span\n *ngIf=\"c.safeType !== 'text'\"\n [innerHTML]=\"i._values[cIdx]._text\"\n [attr.title]=\"c._isTruncate ? i._values[cIdx].text : null\"\n ></span>\n <span\n *ngIf=\"c.safeType === 'text'\"\n [innerText]=\"i._values[cIdx]._text\"\n [attr.title]=\"c._isTruncate ? i._values[cIdx].text : null\"\n ></span>\n </ng-container>\n </ng-container>\n <ng-container *ngFor=\"let btn of i._values[cIdx].buttons; let last = last\">\n <a *ngIf=\"btn.children!.length > 0\" nz-dropdown [nzDropdownMenu]=\"btnMenu\" nzOverlayClassName=\"st__btn-sub\">\n <span [innerHTML]=\"btn._text\"></span>\n <i nz-icon nzType=\"down\"></i>\n </a>\n <nz-dropdown-menu #btnMenu=\"nzDropdownMenu\">\n <ul nz-menu>\n <ng-container *ngFor=\"let subBtn of btn.children!\">\n <li *ngIf=\"subBtn.type !== 'divider'\" nz-menu-item [class.st__btn-disabled]=\"subBtn._disabled\">\n <ng-template [ngTemplateOutlet]=\"btnTpl\" [ngTemplateOutletContext]=\"{ $implicit: subBtn }\">\n </ng-template>\n </li>\n <li *ngIf=\"subBtn.type === 'divider'\" nz-menu-divider></li>\n </ng-container>\n </ul>\n </nz-dropdown-menu>\n <span *ngIf=\"btn.children!.length === 0\" [class.st__btn-disabled]=\"btn._disabled\">\n <ng-template [ngTemplateOutlet]=\"btnTpl\" [ngTemplateOutletContext]=\"{ $implicit: btn }\"> </ng-template>\n </span>\n <nz-divider *ngIf=\"!last\" nzType=\"vertical\"></nz-divider>\n </ng-container>\n </ng-container>\n `,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class STTdComponent {\n @Input() c: _STColumn;\n @Input() cIdx: number;\n @Input() data: STData[];\n @Input() i: STData;\n @Input() index: number;\n @Output() readonly n = new EventEmitter<_STTdNotify>();\n\n private get routerState(): { pi: number; ps: number; total: number } {\n const { pi, ps, total } = this.stComp;\n return { pi, ps, total };\n }\n\n constructor(\n @Host() private stComp: STComponent,\n private router: Router,\n private modalHelper: ModalHelper,\n private drawerHelper: DrawerHelper\n ) {}\n\n private report(type: _STTdNotifyType): void {\n this.n.emit({ type, item: this.i, col: this.c });\n }\n\n _checkbox(value: boolean): void {\n this.i.checked = value;\n this.report('checkbox');\n }\n\n _radio(checked: boolean): void {\n this.data.filter(w => !w.disabled).forEach(i => (i.checked = false));\n this.i.checked = checked;\n this.report('radio');\n }\n\n _link(e: Event): boolean {\n this._stopPropagation(e);\n const res = this.c.click!(this.i, this.stComp);\n if (typeof res === 'string') {\n this.router.navigateByUrl(res, { state: this.routerState });\n }\n return false;\n }\n\n _stopPropagation(ev: Event): void {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n _btn(btn: STColumnButton, ev?: Event): void {\n if (ev) {\n ev.stopPropagation();\n }\n const record = this.i;\n if (btn.type === 'modal' || btn.type === 'static') {\n const { modal } = btn;\n const obj = { [modal!.paramsName!]: record };\n (this.modalHelper[btn.type === 'modal' ? 'create' : 'createStatic'] as NzSafeAny)(\n modal!.component,\n { ...obj, ...(modal!.params && modal!.params!(record)) },\n deepMergeKey({}, true, this.stComp['cog'].modal, modal)\n )\n .pipe(filter(w => typeof w !== 'undefined'))\n .subscribe((res: NzSafeAny) => this.btnCallback(record, btn, res));\n return;\n } else if (btn.type === 'drawer') {\n const { drawer } = btn;\n const obj = { [drawer!.paramsName!]: record };\n this.drawerHelper\n .create(\n drawer!.title!,\n drawer!.component,\n { ...obj, ...(drawer!.params && drawer!.params!(record)) },\n deepMergeKey({}, true, this.stComp['cog'].drawer, drawer)\n )\n .pipe(filter(w => typeof w !== 'undefined'))\n .subscribe(res => this.btnCallback(record, btn, res));\n return;\n } else if (btn.type === 'link') {\n const clickRes = this.btnCallback(record, btn);\n if (typeof clickRes === 'string') {\n this.router.navigateByUrl(clickRes, { state: this.routerState });\n }\n return;\n }\n this.btnCallback(record, btn);\n }\n\n private btnCallback(record: STData, btn: STColumnButton, modal?: NzSafeAny): NzSafeAny {\n if (!btn.click) return;\n if (typeof btn.click === 'string') {\n switch (btn.click) {\n case 'load':\n this.stComp.load();\n break;\n case 'reload':\n this.stComp.reload();\n break;\n }\n } else {\n return btn.click(record, modal, this.stComp);\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { LetModule } from '@delon/abc/let';\nimport { DelonACLModule } from '@delon/acl';\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzMenuModule } from 'ng-zorro-antd/menu';\nimport { NzPopconfirmModule } from 'ng-zorro-antd/popconfirm';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzResizableModule } from 'ng-zorro-antd/resizable';\nimport { NzTableModule } from 'ng-zorro-antd/table';\nimport { NzTagModule } from 'ng-zorro-antd/tag';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { STFilterComponent } from './st-filter.component';\nimport { STRowDirective } from './st-row.directive';\nimport { STTdComponent } from './st-td.component';\nimport { STWidgetHostDirective } from './st-widget-host.directive';\nimport { STComponent } from './st.component';\n\nconst COMPONENTS = [STComponent, STRowDirective, STWidgetHostDirective];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n DelonACLModule,\n LetModule,\n NzPopconfirmModule,\n NzTableModule,\n NzIconModule,\n NzBadgeModule,\n NzCheckboxModule,\n NzDividerModule,\n NzDropDownModule,\n NzMenuModule,\n NzRadioModule,\n NzTagModule,\n NzInputModule,\n NzToolTipModule,\n NzResizableModule,\n NzInputNumberModule,\n NzDatePickerModule\n ],\n declarations: [...COMPONENTS, STFilterComponent, STTdComponent],\n exports: COMPONENTS\n})\nexport class STModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {STFilterComponent as ɵb} from './st-filter.component';\nexport {STRowSource as ɵa} from './st-row.directive';\nexport {STTdComponent as ɵc} from './st-td.component';"],"names":["Injectable","Directive","TemplateRef","Host","Input","warn","deepCopy","DomSanitizer","ACLService","Optional","Inject","ALAIN_I18N_TOKEN","map","deepGet","of","HttpParams","_HttpClient","DatePipe","YNPipe","DecimalPipe","CurrencyService","XlsxService","ViewContainerRef","ComponentFactoryResolver","Subject","EventEmitter","takeUntil","filter","deepMergeKey","toBoolean","from","isObservable","Component","ChangeDetectionStrategy","ViewEncapsulation","ChangeDetectorRef","ElementRef","DOCUMENT","DelonLocaleService","AlainConfigService","NzContextMenuService","ViewChild","Output","InputNumber","InputBoolean","Router","ModalHelper","DrawerHelper","NgModule","CommonModule","FormsModule","DelonACLModule","LetModule","NzPopconfirmModule","NzTableModule","NzIconModule","NzBadgeModule","NzCheckboxModule","NzDividerModule","NzDropDownModule","NzMenuModule","NzRadioModule","NzTagModule","NzInputModule","NzToolTipModule","NzResizableModule","NzInputNumberModule","NzDatePickerModule"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;IAAA;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;;QC5OA;YAEU,WAAM,GAAyC,EAAE,CAAC;YAClD,SAAI,GAAyC,EAAE,CAAC;SAazD;QAXC,yBAAG,GAAH,UAAI,IAAY,EAAE,IAAY,EAAE,GAAsB;YACpD,IAAI,CAAC,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SACxD;QAED,8BAAQ,GAAR,UAAS,IAAY;YACnB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC1B;QAED,4BAAM,GAAN,UAAO,IAAY;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACxB;;;;gBAfFA,aAAU;;;QAwBT,wBAAoB,GAAsB,EAAkB,MAAmB;YAA3D,QAAG,GAAH,GAAG,CAAmB;YAAkB,WAAM,GAAN,MAAM,CAAa;SAAI;QAEnF,iCAAQ,GAAR;YACE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;SAC/C;;;;gBAVFC,YAAS,SAAC,EAAE,QAAQ,EAAE,UAAU,EAAE;;;gBApBkBC,cAAW;gBA0BM,WAAW,uBAAlCC,OAAI;;;qBAJhDC,QAAK,SAAC,QAAQ;uBAEdA,QAAK;;;;QCpBR;YAEU,aAAQ,GAAkC,EAAE,CAAC;SAiBtD;QAfC,sBAAI,qCAAO;iBAAX;gBACE,OAAO,IAAI,CAAC,QAAQ,CAAC;aACtB;;;WAAA;QAED,mCAAQ,GAAR,UAAS,IAAY,EAAE,MAAiB;YACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;SAC9B;QAED,8BAAG,GAAH,UAAI,IAAY;YACd,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SAC3C;QAED,8BAAG,GAAH,UAAI,IAAY;YACd,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC5B;;;;;gBAlBFJ,aAAU,SAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;QC+BhC,wBACU,GAAiB,EACT,SAAsB,EAClB,GAAe,EACW,OAAyB,EAC/D,gBAAkC;YAJlC,QAAG,GAAH,GAAG,CAAc;YACT,cAAS,GAAT,SAAS,CAAa;YAClB,QAAG,GAAH,GAAG,CAAY;YACW,YAAO,GAAP,OAAO,CAAkB;YAC/D,qBAAgB,GAAhB,gBAAgB,CAAkB;SACxC;QAEJ,+BAAM,GAAN,UAAO,GAAkB;YACvB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;SAChB;QAEO,+BAAM,GAAN,UAAO,CAAiB,EAAE,GAAsB;YACtD,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE;gBACpC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC;gBACd,OAAO;aACR;YAED,IAAI,GAAG,qBACF,GAAG,CACP,CAAC;YACF,IAAI,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC7B,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;aACnB;iBAAM,IAAI,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE;gBACpC,GAAG,mCACE,GAAG,GACH,CAAC,CAAC,GAAG,CACT,CAAC;aACH;YAED,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,UAAU,EAAE;gBACvC,GAAG,CAAC,SAAS,GAAG,cAAM,OAAA,KAAK,GAAA,CAAC;aAC7B;YAED,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;SACb;QAEO,kCAAS,GAAT,UAAU,IAAsB;;YACtC,IAAI,CAAC,IAAI;gBAAE,OAAO,EAAE,CAAC;YACrB,IAAM,GAAG,GAAqB,EAAE,CAAC;YAC3B,IAAA,KAAkC,IAAI,CAAC,GAAG,EAAxC,KAAK,WAAA,EAAE,MAAM,YAAA,EAAE,GAAG,SAAA,EAAE,OAAO,aAAa,CAAC;;gBAEjD,KAAmB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;oBAApB,IAAM,IAAI,iBAAA;oBACb,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;wBACnD,SAAS;qBACV;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;wBACnD,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE;4BACtD,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;4BACjF,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;yBACpB;6BAAM;4BACL,IAAI,CAAC,KAAK,+BAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAK,KAAK,GAAK,IAAI,CAAC,KAAK,CAAE,CAAC;yBACnF;qBACF;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;wBAC1B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,EAAE;4BACxD,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;4BACzE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;yBACpB;6BAAM;4BACL,IAAI,CAAC,MAAM,+BAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAK,MAAM,GAAK,IAAI,CAAC,MAAM,CAAE,CAAC;yBACtF;qBACF;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,WAAW,EAAE;wBAC1D,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;qBACjB;;oBAGD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAI,CAAC,CAAC;oBAExB,IAAI,IAAI,CAAC,IAAI,EAAE;wBACb,IAAI,CAAC,IAAI,mCACJ,OAAO,IACN,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EACpE,CAAC;qBACH;oBAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;;oBAG/F,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;wBAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAC3C;oBAED,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAChB;;;;;;;;;YACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACtB,OAAO,GAAG,CAAC;SACZ;QAEO,oCAAW,GAAX,UAAY,IAAsB;;;gBACxC,KAAmB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;oBAApB,IAAM,IAAI,iBAAA;oBACb,IAAI,CAAC,IAAI,CAAC,GAAG;wBAAE,IAAI,CAAC,GAAG,GAAG,cAAM,OAAA,IAAI,GAAA,CAAC;oBACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;oBAC5D,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC7C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBACjC;yBAAM;wBACL,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;qBACpB;iBACF;;;;;;;;;SACF;QAEO,oCAAW,GAAX,UAAY,IAAiB;YACnC,IAAM,WAAW,GAAG,UAAC,CAAS,EAAE,CAAY,IAAa,OAAA,CAAC,GAAG,CAAC,CAAC,CAAC,KAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,GAAA,CAAC;;YAEpG,IAAI;iBACD,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,GAAA,CAAC;iBACrD,OAAO,CAAC,UAAC,IAAI,EAAE,GAAG,IAAK,QAAC,IAAI,CAAC,KAAK,GAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,OAAI,IAAC,CAAC,CAAC;;YAE3F,IAAI;iBACD,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,GAAA,CAAC;iBACtD,OAAO,EAAE;iBACT,OAAO,CAAC,UAAC,IAAI,EAAE,GAAG,IAAK,QAAC,IAAI,CAAC,MAAM,GAAG,CAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,QAAI,IAAC,CAAC,CAAC;SACzG;QAEO,mCAAU,GAAV,UAAW,IAAe;YAChC,IAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YACrC,GAAG,CAAC,MAAM,mCACL,IAAI,CAAC,GAAG,CAAC,UAAU,GACnB,GAAG,CAAC,MAAM,CACd,CAAC;YACF,OAAO,GAAG,CAAC;SACZ;QAEO,sCAAa,GAAb,UAAc,IAAe;YACnC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;gBACpC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;aAC3B;YAED,IAAI,GAAG,GAAc,EAAE,CAAC;YAExB,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACjC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;aACrB;iBAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;gBACzC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;aACjB;iBAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;gBACzC,GAAG,CAAC,OAAO,GAAG,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAS,CAAC,GAAA,CAAC;aAC/D;YAED,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;gBACZ,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;aACzB;YAED,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;YAEnB,OAAO,GAAG,CAAC;SACZ;QAEO,qCAAY,GAAZ,UAAa,IAAe;YAA5B,iBA8EP;YA7EC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;gBACvB,OAAO,IAAI,CAAC;aACb;YAED,IAAI,GAAG,GAA0B,IAAI,CAAC,MAAM,CAAC;YAC7C,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,SAAS,CAAC;YACjC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,KAAK,KAAK,CAAC;YAE1C,IAAI,IAAI,GAAG,QAAQ,CAAC;YACpB,IAAI,SAAS,GAAG,MAAM,CAAC;YACvB,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAc,SAAS,CAAC;YACjC,QAAQ,GAAG,CAAC,IAAI;gBACd,KAAK,SAAS;oBACZ,IAAI,GAAG,QAAQ,CAAC;oBAChB,SAAS,GAAG,SAAS,CAAC;oBACtB,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,GAAG,QAAQ,CAAC;oBAChB,SAAS,GAAG,SAAS,CAAC;oBACtB,GAAG,CAAC,MAAM,mBACR,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,CAAC,QAAQ,EACd,GAAG,EAAE,QAAQ,IACV,GAAG,CAAC,MAAM,CACd,CAAC;oBACF,MAAM;gBACR,KAAK,MAAM;oBACT,IAAI,GAAG,UAAU,CAAC;oBAClB,SAAS,GAAG,SAAS,CAAC;oBACtB,GAAG,CAAC,IAAI,mBACN,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,KAAK,IACX,GAAG,CAAC,IAAI,CACZ,CAAC;oBACF,MAAM;gBACR;oBACE,QAAQ,GAAG,KAAK,CAAC;oBACjB,MAAM;aACT;YACD,IAAI,QAAQ,KAAK,GAAG,CAAC,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;gBAC9D,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;aACzB;YAED,IAAI,GAAG,CAAC,KAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3B,OAAO,IAAI,CAAC;aACb;YAED,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE;gBACvC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC;aACrB;YAED,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAChE,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC;YAC1D,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC;YACnC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;YAE5B,IAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAY,CAAC;YAC5D,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChC,GAAG,CAAC,IAAI,GAAG,gCAAK,QAAQ,KAAE,IAAI,EAAE,GAAG,CAAC,IAAI,GAAY,CAAC;aACtD;iBAAM;gBACL,GAAG,CAAC,IAAI,mCAAQ,QAAQ,GAAK,GAAG,CAAC,IAAI,CAAE,CAAC;aACzC;YAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAExB,IAAI,IAAI,CAAC,GAAG,EAAE;gBACZ,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAM,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAI,CAAC,GAAA,CAAC,CAAC;aAC1D;YAED,IAAI,GAAG,CAAC,KAAM,CAAC,MAAM,IAAI,CAAC,EAAE;gBAC1B,GAAG,GAAG,IAAI,CAAC;aACZ;YAED,OAAO,GAAG,CAAC;SACZ;QAEO,sCAAa,GAAb,UAAc,IAAe;YACnC,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,IAAI,CAAC,aAAa;oBAChB,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;0BAChC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;0BACxC,IAAI,CAAC,WAAiC,CAAC;aAC/C;YACD,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,QAAQ;oBACX,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAI,IAAI,CAAC,MAA4B,CAAC;aAC7G;SACF;QAEO,qCAAY,GAAZ,UAAa,IAAe;;YAClC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO;YACnC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBACvE,OAAO,IAAI,CAAC,IAAI,CAAC;gBACjBK,UAAI,CAAC,+BAA2B,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,QAAG,CAAC,CAAC;aACvD;SACF;QAEO,mCAAU,GAAV,UAAW,WAAwB;YACzC,IAAM,IAAI,GAAkB,EAAE,CAAC;YAC/B,IAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,IAAM,YAAY,GAAG,UAAC,OAAoB,EAAE,QAAgB,EAAE,QAAY;gBAAZ,yBAAA,EAAA,YAAY;;gBAExE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAEtC,IAAI,eAAe,GAAG,QAAQ,CAAC;gBAC/B,IAAM,QAAQ,GAAa,OAAO,CAAC,GAAG,CAAC,UAAA,MAAM;oBAC3C,IAAM,IAAI,GAAsB;wBAC9B,MAAM,QAAA;wBACN,QAAQ,EAAE,eAAe;wBACzB,aAAa,EAAE,KAAK;qBACrB,CAAC;oBAEF,IAAI,OAAO,GAAG,CAAC,CAAC;oBAEhB,IAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC;oBACnC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;wBACtD,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAC,KAAK,EAAE,KAAK,IAAK,OAAA,KAAK,GAAG,KAAK,GAAA,EAAE,CAAC,CAAC,CAAC;wBAC7G,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;qBAC3B;yBAAM;wBACL,MAAM,CAAC,IAAI,CAAE,IAAI,CAAC,MAAM,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC;qBAClD;oBAED,IAAI,SAAS,IAAI,MAAM,EAAE;wBACvB,OAAO,GAAG,MAAM,CAAC,OAAQ,CAAC;qBAC3B;oBAED,IAAI,SAAS,IAAI,MAAM,EAAE;wBACvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;qBAC/B;oBAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;oBACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,GAAG,OAAO,GAAG,CAAC,CAAC;oBAC1C,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;oBAEvC,eAAe,IAAI,OAAO,CAAC;oBAE3B,OAAO,OAAO,CAAC;iBAChB,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC;aACjB,CAAC;YAEF,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;;YAG7B,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;oCACpB,QAAQ;gBACf,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAA,IAAI;oBACzB,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,CAAE,IAAkB,CAAC,aAAa,EAAE;wBAC7D,IAAkB,CAAC,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;qBACnD;iBACF,CAAC,CAAC;;YALL,KAAK,IAAI,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,EAAE,QAAQ,IAAI,CAAC;wBAAhD,QAAQ;aAMhB;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC;SACtE;QAEO,kCAAS,GAAT,UAAU,IAAiB;;YACjC,IAAM,GAAG,GAAgB,EAAE,CAAC;YAC5B,IAAM,QAAQ,GAAGC,cAAQ,CAAC,IAAI,CAAC,CAAC;;gBAChC,KAAmB,IAAA,aAAA,SAAA,QAAQ,CAAA,kCAAA,wDAAE;oBAAxB,IAAM,IAAI,qBAAA;oBACb,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAC/B,SAAS;qBACV;oBACD,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;wBACnD,SAAS;qBACV;oBACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC/C;oBACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAChB;;;;;;;;;YACD,OAAO,GAAG,CAAC;SACZ;QAED,gCAAO,GAAP,UACE,IAAgB,EAChB,OAAqC;YAFvC,iBAkJC;YA9IC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAEtF,IAAA,OAAO,GAAK,IAAI,CAAC,GAAG,QAAb,CAAc;YAC7B,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAM,OAAO,GAAgB,EAAE,CAAC;YAEhC,IAAM,WAAW,GAAG,UAAC,IAAe;;;gBAElC,IAAI,IAAI,CAAC,KAAK,EAAE;oBACd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;wBAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;qBAC/C;oBACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACtC;;gBAID,IAAM,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;gBACvF,IAAI,GAAG,CAAC,IAAI,IAAI,KAAI,CAAC,OAAO,EAAE;oBAC5B,GAAG,CAAC,IAAI,GAAG,KAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;iBACzC;gBACD,IAAI,GAAG,CAAC,IAAI,EAAE;oBACZ,GAAG,CAAC,KAAK,GAAG,KAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;iBACxD;gBACD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;;;gBAKjB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;oBACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;iBAC9D;;gBAED,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;oBAC3B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;iBACtB;gBACD,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE;oBAC5B,EAAE,aAAa,CAAC;oBAChB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;wBACf,IAAI,CAAC,KAAK,GAAG,CAAG,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,QAAI,CAAC;qBAC1D;iBACF;gBACD,IAAI,KAAI,CAAC,GAAG,EAAE;oBACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAI,CAAC,GAAA,CAAC,CAAC;iBACrE;;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;oBACzB,EAAE,UAAU,CAAC;oBACb,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;oBACrB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;wBACf,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;qBACrB;iBACF;;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;oBACtB,IAAI,CAAC,EAAE,iCAAK,KAAK,EAAE,IAAI,IAAK,KAAI,CAAC,GAAG,CAAC,EAAE,GAAK,IAAI,CAAC,EAAE,CAAE,CAAC;iBACvD;;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;oBACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,KAAI,MAAA,KAAI,CAAC,GAAG,CAAC,IAAI,0CAAE,MAAM,CAAA,CAAC;iBAC5D;gBACD,IACE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU;qBACxD,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC;qBAC5C,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC;qBACxC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAC3C;oBACA,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;iBAChB;gBACD,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC,cAAc,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC;;gBAE1G,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;oBACnB,IAAI,CAAC,SAAS,GACZ;wBACE,MAAM,EAAE,YAAY;wBACpB,QAAQ,EAAE,YAAY;wBACtB,IAAI,EAAE,aAAa;qBAEtB,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;iBACf;gBACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,WAAW,GAAG,eAAe,GAAG,IAAI,CAAC,CAAC;;gBAEhF,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;oBAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;oBACzB,IAAI,CAAC,KAAK,GAAM,IAAI,CAAC,KAAK,OAAI,CAAC;iBAChC;gBACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,QAAQ,GAAG,MAAA,IAAI,CAAC,QAAQ,mCAAI,OAAO,CAAC,QAAQ,CAAC;;gBAGlD,IAAI,CAAC,KAAK,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;;gBAEnC,IAAI,CAAC,MAAM,GAAG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAmB,CAAC;;gBAExD,IAAI,CAAC,OAAO,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAQ,CAAC,CAAC;;gBAE7C,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;;gBAExB,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;;gBAEzB,IAAI,CAAC,SAAS,iCACZ,QAAQ,EAAE,IAAI,EACd,MAAM,EAAE,QAAQ,EAChB,QAAQ,EAAE,EAAE,EACZ,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,IAAI,IACV,OAAO,CAAC,SAAS,IAChB,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,GAAI,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,SAAS,EAAkB,GAAG,IAAI,CAAC,SAAS,EAC1G,CAAC;gBAEF,IAAI,CAAC,OAAO,GAAG,KAAK,EAAE,CAAC;gBAEvB,OAAO,IAAI,CAAC;aACb,CAAC;YAEF,IAAM,WAAW,GAAG,UAAC,IAAiB;;;oBACpC,KAAmB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;wBAApB,IAAM,IAAI,iBAAA;wBACb,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;wBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;4BAChC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC5B;qBACF;;;;;;;;;aACF,CAAC;YAEF,IAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAmB,CAAC,CAAC;YACrD,WAAW,CAAC,QAAQ,CAAC,CAAC;YAEtB,IAAI,aAAa,GAAG,CAAC,EAAE;gBACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aACxD;YACD,IAAI,UAAU,GAAG,CAAC,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACrD;YAED,IAAI,CAAC,WAAW,CAAC,OAAsB,CAAC,CAAC;YACzC,uBACE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,GAAA,CAAC,IAChF,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAC5B;SACH;QAED,yCAAgB,GAAhB,UAAiB,OAAoB;YAArC,iBAEC;YADC,OAAO,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,OAAA,KAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAA,CAAC,CAAC;SAC7C;QAED,sCAAa,GAAb,UAAc,MAAsB;YAClC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;gBAC7B,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,KAAM,CAAC,SAAS,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAQ,GAAA,CAAC,KAAK,CAAC,CAAC,CAAC;aAClE;iBAAM;gBACL,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;aAC3C;YACD,OAAO,IAAI,CAAC;SACb;QAED,oCAAW,GAAX,UAAY,GAAc;YACxB,IAAM,CAAC,GAAG,GAAG,CAAC,MAAO,CAAC;YACtB,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE;gBACxB,CAAC,CAAC,KAAM,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,QAAC,CAAC,CAAC,OAAO,GAAG,KAAK,IAAC,CAAC,CAAC;aAC5C;iBAAM;gBACL,CAAC,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC;aAC/B;YACD,OAAO,IAAI,CAAC;SACb;;;;gBAvfFN,aAAU;;;gBA9BFO,4BAAY;gBAQZ,WAAW,uBA4BfJ,OAAI;gBAlCAK,cAAU,uBAmCdC,WAAQ;gDACRA,WAAQ,YAAIC,SAAM,SAACC,sBAAgB;gBA7B/B,gBAAgB;;;;QC4DvB,sBACU,IAAiB,EACT,QAAkB,EAClB,MAAc,EACd,UAAuB,EAC/B,WAA4B,EAC5B,GAAiB;YALjB,SAAI,GAAJ,IAAI,CAAa;YACT,aAAQ,GAAR,QAAQ,CAAU;YAClB,WAAM,GAAN,MAAM,CAAQ;YACd,eAAU,GAAV,UAAU,CAAa;YAC/B,gBAAW,GAAX,WAAW,CAAiB;YAC5B,QAAG,GAAH,GAAG,CAAc;YARnB,aAAQ,GAAG,CAAC,CAAC;SASjB;QAEJ,8BAAO,GAAP,UAAQ,OAA4B;YAApC,iBA6GC;YA5GC,IAAI,KAA2B,CAAC;YAChC,IAAI,QAAQ,GAAG,KAAK,CAAC;YACb,IAAA,IAAI,GAAmD,OAAO,KAA1D,EAAE,GAAG,GAA8C,OAAO,IAArD,EAAE,KAAK,GAAuC,OAAO,MAA9C,EAAE,IAAI,GAAiC,OAAO,KAAxC,EAAE,EAAE,GAA6B,OAAO,GAApC,EAAE,EAAE,GAAyB,OAAO,GAAhC,EAAE,SAAS,GAAc,OAAO,UAArB,EAAE,OAAO,GAAK,OAAO,QAAZ,CAAa;YACvE,IAAI,QAAgB,CAAC;YACrB,IAAI,KAAa,CAAC;YAClB,IAAI,OAAiB,CAAC;YACtB,IAAI,KAAa,CAAC;YAClB,IAAI,OAAkB,CAAC;YACvB,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;YAEzB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,QAAQ,GAAG,IAAI,CAAC;gBAChB,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAC1CC,aAAG,CAAC,UAAA,MAAM;oBACR,OAAO,GAAG,MAAM,CAAC;oBACjB,IAAI,GAAa,CAAC;oBAClB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBACzB,GAAG,GAAG,MAAM,CAAC;wBACb,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC;wBACtB,KAAK,GAAG,QAAQ,CAAC;wBACjB,QAAQ,GAAG,KAAK,CAAC;qBAClB;yBAAM;;wBAEL,GAAG,GAAGC,aAAO,CAAC,MAAM,EAAE,GAAG,CAAC,MAAO,CAAC,IAAgB,EAAE,EAAE,CAAC,CAAC;wBACxD,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;4BACtC,GAAG,GAAG,EAAE,CAAC;yBACV;;wBAED,IAAM,WAAW,GAAG,GAAG,CAAC,MAAO,CAAC,KAAK,IAAIA,aAAO,CAAC,MAAM,EAAE,GAAG,CAAC,MAAO,CAAC,KAAiB,EAAE,IAAI,CAAC,CAAC;wBAC9F,QAAQ,GAAG,WAAW,IAAI,IAAI,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;qBAC5D;oBACD,OAAOP,cAAQ,CAAC,GAAG,CAAC,CAAC;iBACtB,CAAC,CACH,CAAC;aACH;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC9B,KAAK,GAAGQ,OAAE,CAAC,IAAI,CAAC,CAAC;aAClB;iBAAM;;gBAEL,KAAK,GAAG,IAAI,CAAC;aACd;YAED,IAAI,CAAC,QAAQ,EAAE;gBACb,KAAK,GAAG,KAAK,CAAC,IAAI;;gBAEhBF,aAAG,CAAC,UAAC,MAAgB;oBACnB,OAAO,GAAG,MAAM,CAAC;oBACjB,IAAI,UAAU,GAAGN,cAAQ,CAAC,MAAM,CAAC,CAAC;oBAClC,IAAM,QAAQ,GAAG,KAAI,CAAC,WAAW,CAAC,OAAsB,CAAC,CAAC;oBAC1D,IAAI,QAAQ,EAAE;wBACZ,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBACxC;oBACD,OAAO,UAAU,CAAC;iBACnB,CAAC;;gBAEFM,aAAG,CAAC,UAAC,MAAgB;oBACnB,OAAO;yBACJ,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,GAAA,CAAC;yBACrB,OAAO,CAAC,UAAA,CAAC;wBACR,IAAM,MAAM,GAAG,CAAC,CAAC,MAAO,CAAC;wBACzB,IAAM,MAAM,GAAG,KAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;wBAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;4BAAE,OAAO;wBAChC,IAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;wBAC3B,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;4BAClC,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;4BAC5D,OAAO;yBACR;wBACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,GAAA,CAAC,GAAA,CAAC,CAAC;qBACzE,CAAC,CAAC;oBACL,OAAO,MAAM,CAAC;iBACf,CAAC;;gBAEFA,aAAG,CAAC,UAAC,MAAgB;oBACnB,IAAI,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE;wBAC3B,IAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;wBACnD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,YAAY,GAAG,YAAY,GAAG,EAAE,CAAC,CAAC;wBAC3D,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;wBACzB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;4BACtB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;yBACnD;qBACF;oBACD,OAAO,MAAM,CAAC;iBACf,CAAC,CACH,CAAC;aACH;;YAGD,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE;gBACrC,KAAK,GAAG,KAAK,CAAC,IAAI,CAACA,aAAG,CAAC,UAAA,MAAM,IAAI,OAAA,GAAG,CAAC,OAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,GAAA,CAAC,CAAC,CAAC;aAClE;YAED,KAAK,GAAG,KAAK,CAAC,IAAI,CAACA,aAAG,CAAC,UAAA,MAAM,IAAI,OAAA,KAAI,CAAC,YAAY,CAAC,EAAE,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,GAAA,CAAC,CAAC,CAAC;YAE9G,OAAO,KAAK,CAAC,IAAI,CACfA,aAAG,CAAC,UAAA,MAAM;gBACR,OAAO,GAAG,MAAM,CAAC;gBACjB,IAAM,SAAS,GAAG,QAAQ,IAAI,KAAK,CAAC;gBACpC,IAAM,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;gBAE3B,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,EAAE,EAAE,KAAK;oBACT,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,KAAI,CAAC,cAAc,CAAC,OAAsB,EAAE,OAAO,EAAE,OAAO,CAAC;oBAC1E,QAAQ,EAAE,OAAO,QAAQ,KAAK,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ;iBACpD,CAAC;aACzB,CAAC,CACH,CAAC;SACH;QAEO,0BAAG,GAAH,UAAI,IAAY,EAAE,GAAc,EAAE,GAAW;;YACnD,IAAI;gBACF,IAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC;gBAC7C,IAAI,GAAG,CAAC,MAAM,EAAE;oBACd,IAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;oBACnD,OAAO;wBACL,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,SAAS,CAAC,GAAG,SAAS;wBACzE,GAAG,EAAE,SAAS;wBACd,QAAQ,EAAE,GAAG,CAAC,QAAS;qBACxB,CAAC;iBACH;gBAED,IAAM,KAAK,GAAGC,aAAO,CAAC,IAAI,EAAE,GAAG,CAAC,KAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAEhE,IAAI,IAAI,GAAG,KAAK,CAAC;gBACjB,IAAI,KAAyB,SAAA,CAAC;gBAC9B,QAAQ,GAAG,CAAC,IAAI;oBACd,KAAK,IAAI;wBACP,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;wBACvC,MAAM;oBACR,KAAK,KAAK;wBACR,IAAI,GAAG,KAAK,GAAG,gBAAa,KAAK,sBAAgB,GAAG,EAAE,CAAC;wBACvD,MAAM;oBACR,KAAK,QAAQ;wBACX,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;wBAC1D,MAAM;oBACR,KAAK,UAAU;wBACb,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,MAAA,GAAG,CAAC,QAAQ,0CAAE,MAAM,CAAC,CAAC;wBAC5D,MAAM;oBACR,KAAK,MAAM;wBACT,IAAI,GAAG,KAAK,KAAK,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;wBAC5F,MAAM;oBACR,KAAK,IAAI;wBACP,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,KAAK,GAAG,CAAC,EAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAG,CAAC,GAAI,EAAE,GAAG,CAAC,EAAG,CAAC,EAAG,EAAE,GAAG,CAAC,EAAG,CAAC,IAAK,EAAE,KAAK,CAAC,CAAC;wBACvG,MAAM;oBACR,KAAK,MAAM;wBACT,IAAI,GAAG,GAAG,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC;wBACxB,MAAM;oBACR,KAAK,KAAK,CAAC;oBACX,KAAK,OAAO;wBACV,IAAM,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC;wBACtD,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE;4BACtB,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;4BAC5B,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;4BACrB,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;yBACxB;6BAAM;4BACL,IAAI,GAAG,EAAE,CAAC;yBACX;wBACD,MAAM;iBACT;gBACD,IAAI,IAAI,IAAI,IAAI;oBAAE,IAAI,GAAG,EAAE,CAAC;gBAC5B,OAAO;oBACL,IAAI,MAAA;oBACJ,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,IAAI;oBAC/D,GAAG,EAAE,KAAK;oBACV,KAAK,OAAA;oBACL,QAAQ,EAAE,GAAG,CAAC,QAAS;oBACvB,OAAO,EAAE,EAAE;iBACZ,CAAC;aACH;YAAC,OAAO,EAAE,EAAE;gBACX,IAAM,IAAI,GAAG,cAAc,CAAC;gBAC5B,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;gBACnD,OAAO,EAAE,IAAI,MAAA,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;aACxE;SACF;QAEO,kCAAW,GAAX,UAAY,GAAW,EAAE,OAA4B;;YACnD,IAAA,GAAG,GAA8D,OAAO,IAArE,EAAE,IAAI,GAAwD,OAAO,KAA/D,EAAE,SAAS,GAA6C,OAAO,UAApD,EAAE,EAAE,GAAyC,OAAO,GAAhD,EAAE,EAAE,GAAqC,OAAO,GAA5C,EAAE,UAAU,GAAyB,OAAO,WAAhC,EAAE,SAAS,GAAc,OAAO,UAArB,EAAE,OAAO,GAAK,OAAO,QAAZ,CAAa;YACjF,IAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,WAAW,EAAE,CAAC;YACnD,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAM,MAAM,GAAG,GAAG,CAAC,MAAyB,CAAC;YAC7C,IAAI,SAAS,EAAE;gBACb,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE;oBACvB,MAAM;wBACJ,GAAC,MAAM,CAAC,EAAY,IAAG,IAAI,CAAC,WAAW,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE;wBACrD,GAAC,MAAM,CAAC,EAAY,IAAG,EAAE;2BAC1B,CAAC;iBACH;qBAAM;oBACL,MAAM;wBACJ,GAAC,MAAM,CAAC,IAAc,IAAG,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE;wBACtC,GAAC,MAAM,CAAC,KAAe,IAAG,EAAE;2BAC7B,CAAC;iBACH;aACF;YACD,MAAM,+DACD,MAAM,GACN,GAAG,CAAC,MAAM,GACV,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,GAClD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CACjC,CAAC;YAEF,IAAI,UAAU,GAAqB;gBACjC,MAAM,QAAA;gBACN,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB,CAAC;YACF,IAAI,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,EAAE;gBAC/C,UAAU,GAAG;oBACX,IAAI,kCAAO,GAAG,CAAC,IAAI,GAAK,MAAM,CAAE;oBAChC,OAAO,EAAE,GAAG,CAAC,OAAO;iBACrB,CAAC;aACH;YACD,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE;gBACrC,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;aACtC;YACD,IAAI,EAAE,UAAU,CAAC,MAAM,YAAYE,eAAU,CAAC,EAAE;gBAC9C,UAAU,CAAC,MAAM,GAAG,IAAIA,eAAU,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;aACvE;YACD,IAAI,OAAO,OAAO,CAAC,aAAa,KAAK,UAAU,EAAE;gBAC/C,OAAO,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,QAAA,EAAE,GAAG,KAAA,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;aACpE;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;SACnD;QAED,mCAAY,GAAZ,UAAa,OAAkF;YAA/F,iBAeC;YAdS,IAAA,MAAM,GAA4B,OAAO,OAAnC,EAAE,OAAO,GAAmB,OAAO,QAA1B,EAAE,YAAY,GAAK,OAAO,aAAZ,CAAa;oCACzC,CAAC,EAAM,GAAG;gBACjB,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC;oBAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;wBACpD,OAAO,EAAE,OAAO,EAAE,KAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;qBACzE;oBAED,OAAO,KAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;iBAClC,CAAC,CAAC;gBACH,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;qBAC9F,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,GAAA,CAAC;qBAChB,IAAI,CAAC,GAAG,CAAC,CAAC;;YAVf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE;wBAAxC,CAAC,EAAM,GAAG;aAWlB;YACD,OAAO,MAAM,CAAC;SACf;QAED,iCAAU,GAAV,UAAW,IAAY,EAAE,GAAc,EAAE,GAAW;YAClD,OAAO,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,OAAQ,GAAG,GAAG,CAAC;SAC7F;QAEO,iCAAU,GAAV,UAAW,KAAwB,EAAE,IAAY,EAAE,GAAa;YACtE,IAAM,EAAE,GAAG,UAAC,IAAuB;gBACjC,OAAOT,cAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAA,GAAG;oBAC9B,IAAM,MAAM,GAAG,GAAG,CAAC,GAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;oBACxC,IAAM,gBAAgB,GAAG,GAAG,CAAC,WAAW,KAAK,UAAU,CAAC;oBACxD,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC;oBACrB,GAAG,CAAC,SAAS,GAAG,CAAC,MAAM,IAAI,gBAAgB,CAAC;oBAC5C,IAAI,GAAG,CAAC,QAAS,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC5B,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,CAAC,QAAS,CAAC,CAAC;qBAClC;oBACD,OAAO,GAAG,CAAC,GAAG,CAAC;oBACf,OAAO,MAAM,IAAI,gBAAgB,CAAC;iBACnC,CAAC,CAAC;aACJ,CAAC;YAEF,IAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YAEtB,IAAM,MAAM,GAAG,UAAC,IAAuB;;;oBACrC,KAAkB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;wBAAnB,IAAM,GAAG,iBAAA;wBACZ,GAAG,CAAC,KAAK,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;wBAClF,IAAI,GAAG,CAAC,QAAS,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC5B,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAS,CAAC,CAAC;yBACtC;qBACF;;;;;;;;;gBACD,OAAO,IAAI,CAAC;aACb,CAAC;YAEF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;SACpB;;QAIO,mCAAY,GAAZ,UAAa,OAAoB;YACvC,OAAO,OAAO,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,GAAA,CAAC,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,KAAM,GAAA,CAAC,CAAC;SAChH;QAEO,kCAAW,GAAX,UAAY,OAAoB;YACtC,IAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,OAAO;aACR;YACD,IAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE;gBAC7B,OAAO;aACR;YACD,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE;gBAC1C,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;gBAC/D,OAAO;aACR;YAED,OAAO,UAAC,CAAS,EAAE,CAAS;gBAC1B,IAAM,MAAM,GAAG,QAAQ,CAAC,OAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvC,IAAI,MAAM,KAAK,CAAC,EAAE;oBAChB,OAAO,QAAQ,CAAC,OAAO,KAAK,SAAS,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;iBAC1D;gBACD,OAAO,CAAC,CAAC;aACV,CAAC;SACH;QAED,sBAAI,sCAAY;iBAAhB;gBACE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC;aACxB;;;WAAA;QAED,oCAAa,GAAb,UACE,UAAoC,EACpC,SAAkC,EAClC,OAAoB;;YAEpB,IAAI,GAAG,GAA0B,EAAE,CAAC;YACpC,IAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAE5C,IAAI,SAAS,EAAE;gBACb,IAAM,IAAE,mBACN,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,GAAG,EACd,aAAa,EAAE,GAAG,EAClB,YAAY,EAAE,IAAI,EAClB,UAAU,EAAE,KAAK,IACd,SAAS,CACb,CAAC;gBAEF,IAAM,OAAO,GAAG,QAAQ;qBACrB,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAA,CAAC;qBAC/B,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,GAAI,GAAG,IAAE,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,OAAQ,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAA,CAAC,CAAC;gBAEpG,GAAG,aAAK,GAAC,IAAE,CAAC,GAAI,IAAG,IAAE,CAAC,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAE,CAAC,SAAS,CAAC,KAAE,CAAC;gBAE1E,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAE,CAAC,YAAY,KAAK,KAAK,GAAG,EAAE,GAAG,GAAG,CAAC;aACrE;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,GAAG,CAAC;YAEtC,IAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;YAC5B,IAAI,SAAS,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,OAAO,CAAC,OAAQ,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC;YAChF,IAAI,UAAU,EAAE;gBACd,SAAS,GAAG,SAAS,IAAI,UAAU,CAAC,aAAa,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC;gBACtE,SAAS,GAAG,UAAU,CAAC,GAAG,IAAI,MAAM,CAAC;aACtC;YACD,GAAG,CAAC,SAAmB,CAAC,GAAG,SAAmB,CAAC;YAC/C,OAAO,GAAG,CAAC;SACZ;;;QAMO,sCAAe,GAAf,UAAgB,MAAsB;YAC5C,OAAO,MAAM,CAAC,IAAI,KAAK,SAAS,GAAG,MAAM,CAAC,KAAM,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,KAAK,IAAI,GAAA,CAAC,GAAG,MAAM,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC9G;QAEO,sCAAe,GAAf,UAAgB,OAAoB;YAApC,iBAgBP;YAfC,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,OAAO;iBACJ,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,GAAA,CAAC;iBAClD,OAAO,CAAC,UAAA,GAAG;gBACV,IAAM,MAAM,GAAG,GAAG,CAAC,MAAO,CAAC;gBAC3B,IAAM,MAAM,GAAG,KAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;gBAC5C,IAAI,GAAG,GAAiC,EAAE,CAAC;gBAC3C,IAAI,MAAM,CAAC,MAAM,EAAE;oBACjB,GAAG,GAAG,MAAM,CAAC,MAAO,CAAC,MAAM,CAAC,KAAM,EAAE,GAAG,CAAC,CAAC;iBAC1C;qBAAM;oBACL,GAAG,CAAC,MAAM,CAAC,GAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,KAAK,GAAA,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACvD;gBACD,GAAG,mCAAQ,GAAG,GAAK,GAAG,CAAE,CAAC;aAC1B,CAAC,CAAC;YACL,OAAO,GAAG,CAAC;SACZ;;;QAMO,qCAAc,GAAd,UAAe,OAAoB,EAAE,IAAc,EAAE,OAAkB;YAAvE,iBAOP;YANC,IAAM,GAAG,GAAiC,EAAE,CAAC;YAC7C,OAAO,CAAC,OAAO,CAAC,UAAC,GAAG,EAAE,KAAK;gBACzB,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,IAAI,KAAK,CAAC;oBACnC,GAAG,CAAC,WAAW,IAAI,IAAI,GAAG,EAAE,GAAG,KAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;aACjF,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;SACZ;QAEO,qCAAc,GAAd,UAAe,GAAc,EAAE,KAAa,EAAE,IAAc,EAAE,OAAkB;;YACtF,IAAM,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC;YAC5B,IAAM,IAAI,mBACR,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,SAAS,KACf,OAAO,GAAG,KAAK,QAAQ,GAAG,EAAE,IAAI,EAAE,GAAwB,EAAE,GAAI,GAAqB,EAC1F,CAAC;YACF,IAAI,GAAG,GAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC5C,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE;gBACnC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBACjE,QAAQ,GAAG,IAAI,CAAC;aACjB;iBAAM;gBACL,QAAQ,IAAI,CAAC,IAAI;oBACf,KAAK,OAAO;wBACV,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;wBACxB,MAAM;oBACR,KAAK,eAAe;wBAClB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,UAAC,KAAK,EAAE,GAAG,EAAE,IAAI,IAAK,OAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,GAAA,CAAC,CAAC,MAAM,CAAC;wBACzG,MAAM;oBACR,KAAK,KAAK;wBACR,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAO,CAAC,CAAC;wBACjE,QAAQ,GAAG,IAAI,CAAC;wBAChB,MAAM;oBACR,KAAK,SAAS;wBACZ,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAO,CAAC,CAAC;wBAC/E,QAAQ,GAAG,IAAI,CAAC;wBAChB,MAAM;oBACR,KAAK,KAAK;wBACR,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,OAAR,IAAI,2BAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAC,CAAC;wBACrD,QAAQ,GAAG,IAAI,CAAC;wBAChB,MAAM;oBACR,KAAK,KAAK;wBACR,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,OAAR,IAAI,2BAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,GAAC,CAAC;wBACrD,QAAQ,GAAG,IAAI,CAAC;wBAChB,MAAM;iBACT;aACF;YACD,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,QAAQ,KAAK,IAAI,CAAC,EAAE;gBAC1E,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAA,GAAG,CAAC,QAAQ,0CAAE,MAAM,CAAW,CAAC;aAC/E;iBAAM;gBACL,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aAC9B;YACD,OAAO,GAAG,CAAC;SACZ;QAEO,8BAAO,GAAP,UAAQ,GAAW,EAAE,MAAc;YACzC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAChC,OAAO,CAAC,CAAC;aACV;YACD,OAAO,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SACxC;QAEO,gCAAS,GAAT,UAAU,KAAa,EAAE,IAAc;YAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,GAAA,CAAC,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,QAAC,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,IAAC,CAAC,CAAC;SACtF;QAEO,6BAAM,GAAN,UAAO,KAAa,EAAE,IAAc;YAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,QAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAC,EAAE,CAAC,CAAC,CAAC;SACtF;;;;gBA7cFN,aAAU;;;gBA3DgBgB,iBAAW;gBAA7BC,cAAQ,uBAiEZd,OAAI;gBAjEUe,YAAM,uBAkEpBf,OAAI;gBAzEAgB,kBAAW,uBA0EfhB,OAAI;gBAlEAiB,sBAAe;gBALfb,4BAAY;;;;QCQnB,kBAAgC,OAAoB;YAApB,YAAO,GAAP,OAAO,CAAa;SAAI;QAEhD,yBAAM,GAAN,UAAO,IAAe,EAAE,GAAa,EAAE,KAAa,EAAE,QAAgB;YAC5E,IAAM,GAAG,GAAiC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;YAE5D,IAAI,GAAG,CAAC,MAAM,EAAE;gBACd,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;aACtC;iBAAM;gBACL,IAAM,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAGM,aAAO,CAAC,IAAI,EAAE,GAAG,CAAC,KAAiB,EAAE,EAAE,CAAC,CAAC;gBAClG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;gBACZ,IAAI,GAAG,IAAI,IAAI,EAAE;oBACf,QAAQ,GAAG,CAAC,IAAI;wBACd,KAAK,UAAU;4BACb,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;4BACZ,MAAM;wBACR,KAAK,MAAM;;;4BAGT,IAAI,CAAA,KAAG,GAAK,EAAC,MAAM,GAAG,CAAC,EAAE;gCACvB,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;;gCAEZ,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC;6BACxB;4BACD,MAAM;wBACR,KAAK,IAAI;4BACP,IAAM,EAAE,GAAG,GAAG,CAAC,EAAG,CAAC;4BACnB,GAAG,CAAC,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;4BAC1C,MAAM;qBACT;iBACF;aACF;YAED,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAEpB,OAAO,GAAG,CAAC;SACZ;QAEO,2BAAQ,GAAR,UAAS,GAAoB;YACnC,IAAM,MAAM,GAAsD,EAAE,CAAC;YACrE,IAAM,KAAK,IAAkC,MAAM,CAAC,GAAG,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;YACrF,IAAM,OAAO,GAAG,GAAG,CAAC,IAAK,CAAC,MAAM,CAAC;YACjC,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAM,OAAO,GAAG,GAAG,CAAC,QAAwB,CAAC;YAC7C,IAAI,OAAO,CAAC,SAAS,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,IAAI,IAAI,GAAA,CAAC,KAAK,CAAC,CAAC,EAAE;;gBAEnD,KAAK,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,UAAA,GAAG,IAAI,QAAC,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,IAAC,CAAC,CAAC;aAC5D;YACD,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;gBACtD,IAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC5B,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE;oBACvF,EAAE,SAAS,CAAC;oBACZ,SAAS;iBACV;gBACD,EAAE,aAAa,CAAC;gBAChB,IAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;gBACvE,KAAK,CAAI,UAAU,MAAG,CAAC,GAAG;oBACxB,CAAC,EAAE,GAAG;oBACN,CAAC,EAAE,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK;iBAC9D,CAAC;gBACF,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,OAAO,EAAE,EAAE;oBAClD,KAAK,CAAC,KAAG,UAAU,IAAG,OAAO,GAAG,CAAC,CAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;iBAC9F;aACF;YAED,IAAI,aAAa,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE;gBACpC,KAAK,CAAC,MAAM,CAAC,GAAG,QAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,IAAG,OAAO,GAAG,CAAC,CAAE,CAAC;aAClF;YAED,OAAO,MAAM,CAAC;SACf;QAEK,yBAAM,GAAN,UAAO,GAAoB;;;;oBACzB,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAClC,sBAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;4BACzB,MAAM,QAAA;4BACN,QAAQ,EAAE,GAAG,CAAC,QAAQ;4BACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;yBACvB,CAAC,EAAC;;aACJ;SAAA;;;;gBAjFFb,aAAU;;;gBAPgBqB,gBAAW,uBASvBZ,WAAQ;;;;QCCrB,+BACU,gBAAkC,EAClC,gBAAkC,EAClC,wBAAkD;YAFlD,qBAAgB,GAAhB,gBAAgB,CAAkB;YAClC,qBAAgB,GAAhB,gBAAgB,CAAkB;YAClC,6BAAwB,GAAxB,wBAAwB,CAA0B;SACxD;QAEJ,wCAAQ,GAAR;YACE,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC;YACnC,IAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7D,IAAM,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,aAA0B,CAAC,CAAC;YAE3G,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;YACvE,IAAA,KAAqB,IAAI,EAAvB,MAAM,YAAA,EAAE,MAAM,YAAS,CAAC;YAChC,IAAM,IAAI,GAAiC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,CAAC,GAAG,EAAE,MAAM,QAAA,EAAE,CAAC;YAC1G,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG;gBAC1B,YAAY,CAAC,QAAsB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;aACvD,CAAC,CAAC;SACJ;;;;gBAvBFR,YAAS,SAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE;;;gBAHlC,gBAAgB;gBAJoCqB,mBAAgB;gBAApEC,2BAAwB;;;yBAS9BnB,QAAK;yBACLA,QAAK;;;QCRK,iBAAiB,GAAkB;QAC9C,EAAE,EAAE,CAAC;QACL,EAAE,EAAE,EAAE;QACN,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,IAAI;QAChB,0BAA0B,EAAE,KAAK;QACjC,GAAG,EAAE;YACH,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;SAC7D;QACD,GAAG,EAAE;YACH,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE;SAC7C;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,QAAQ;YAClB,SAAS,EAAE,OAAO;YAClB,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAC/B,eAAe,EAAE,KAAK;YACtB,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,GAAG;YAChB,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,KAAK;SACd;QACD,KAAK,EAAE;YACL,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;SACZ;QACD,MAAM,EAAE;YACN,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,EAAE;SACjB;QACD,GAAG,EAAE;YACH,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,KAAK;SACjB;QACD,OAAO,EAAE;YACP,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,KAAK;SACZ;QACD,OAAO,EAAE,CAAC;QACV,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,KAAK;QACtB,SAAS,EAAE;YACT,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,UAAU;SAC3B;QACD,eAAe,EAAE,EAAE;QACnB,kBAAkB,EAAE,GAAG;QACvB,kBAAkB,EAAE,GAAG;QACvB,WAAW,EAAE,MAAM;QACnB,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE;YACJ,MAAM,EAAE,kBAAkB;SAC3B;QACD,EAAE,EAAE;YACF,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,MAAM;SACb;;;;QCgKD,qBACwC,OAAyB,EACvD,GAAsB,EACtB,EAAc,EACd,SAAmB,EACD,GAAc,EAChC,YAA4B,EAC5B,UAAwB,EACxB,SAA6B,EACrC,SAA6B,EACrB,GAAyB;YAVnC,iBA4BC;YA1BS,QAAG,GAAH,GAAG,CAAmB;YACtB,OAAE,GAAF,EAAE,CAAY;YACd,cAAS,GAAT,SAAS,CAAU;YACD,QAAG,GAAH,GAAG,CAAW;YAChC,iBAAY,GAAZ,YAAY,CAAgB;YAC5B,eAAU,GAAV,UAAU,CAAc;YACxB,cAAS,GAAT,SAAS,CAAoB;YAE7B,QAAG,GAAH,GAAG,CAAsB;YAhJ3B,aAAQ,GAAG,IAAIoB,YAAO,EAAQ,CAAC;YAE/B,aAAQ,GAAG,EAAE,CAAC;YAMd,sBAAiB,GAAY,KAAK,CAAC;YAC3C,iBAAY,GAAa,EAAE,CAAC;YAC5B,WAAM,GAAe,EAAE,CAAC;YACxB,aAAQ,GAAG,KAAK,CAAC;YACjB,UAAK,GAAa,EAAE,CAAC;YACrB,iBAAY,GAAyB,EAAE,CAAC;YACxC,kBAAa,GAAG,IAAI,CAAC;YACrB,gBAAW,GAAG,KAAK,CAAC;YACpB,wBAAmB,GAAG,KAAK,CAAC;YAC5B,mBAAc,GAAG,KAAK,CAAC;YACvB,aAAQ,GAAkB,EAAE,CAAC;YAC7B,aAAQ,GAAgB,EAAE,CAAC;YAC3B,oBAAe,GAAwB,EAAE,CAAC;YAgCjC,YAAO,GAAe,EAAE,CAAC;YAEV,OAAE,GAAG,EAAE,CAAC;YACR,OAAE,GAAG,CAAC,CAAC;YACP,UAAK,GAAG,CAAC,CAAC;YACzB,YAAO,GAAmB,IAAI,CAAC;YAChB,iBAAY,GAAG,CAAC,CAAC;YAEhB,aAAQ,GAAG,KAAK,CAAC;YAyCjB,eAAU,GAAG,IAAI,CAAC;YAIlB,qBAAgB,GAAG,KAAK,CAAC;YACzB,oBAAe,GAAG,KAAK,CAAC;YAGxB,eAAU,GAAY,IAAI,CAAC;YAEjC,UAAK,GAAG,IAAIC,eAAY,EAAW,CAAC;YACpC,WAAM,GAAG,IAAIA,eAAY,EAAY,CAAC;YAChC,kBAAa,GAAG,KAAK,CAAC;YACvB,oBAAe,GAAG,EAAE,CAAC;YACrB,uBAAkB,GAAG,GAAG,CAAC;YACzB,uBAAkB,GAAG,GAAG,CAAC;YAExC,sBAAiB,GAA4B,UAAA,KAAK,IAAI,OAAA,KAAK,GAAA,CAAC;YA4BnE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAE,CAAC,CAAC;YAEvD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAACC,mBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC7D,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC3C,IAAI,KAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC5B,KAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,KAAI,CAAC,EAAE,EAAE,CAAC;iBACX;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,MAAM;iBACX,IAAI,CACHA,mBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EACxBC,gBAAM,CAAC,cAAM,OAAA,KAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAA,CAAC,CACvC;iBACA,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,cAAc,EAAE,GAAA,CAAC,CAAC;SAC3C;QA1ID,sBACI,4BAAG;iBADP;gBAEE,OAAO,IAAI,CAAC,IAAI,CAAC;aAClB;iBACD,UAAQ,KAAY;gBAClB,IAAI,CAAC,IAAI,GAAGC,kBAAY,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aACzD;;;WAHA;QAKD,sBACI,4BAAG;;iBADP;gBAEE,OAAO,IAAI,CAAC,IAAI,CAAC;aAClB;iBACD,UAAQ,KAAY;gBAClB,IAAM,IAAI,IAAI,IAAI,CAAC,IAAI,GAAGA,kBAAY,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;gBACvE,IAAM,MAAM,GAAG,IAAI,CAAC,MAAO,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;oBAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;oBAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1E,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;aAClB;;;WAPA;QAQD,sBACI,6BAAI;iBADR;gBAEE,OAAO,IAAI,CAAC,KAAK,CAAC;aACnB;iBACD,UAAS,KAAa;gBACpB,IAAI,CAAC,KAAK,mCAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,GAAK,KAAK,CAAE,CAAC;gBAC5C,IAAI,CAAC,cAAc,EAAE,CAAC;aACvB;;;WAJA;QAmBD,sBACI,kCAAS;iBADb;gBAEE,OAAO,IAAI,CAAC,UAAU,CAAC;aACxB;iBACD,UAAc,KAAgB;gBAC5B,IACE,CAAC,OAAO,KAAK,KAAK,SAAS,IAAI,CAACC,mBAAS,CAAC,KAAK,CAAC;qBAC/C,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAC9D;oBACA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;oBAC5B,OAAO;iBACR;gBACD,IAAI,CAAC,UAAU,sBACT,OAAO,KAAK,KAAK,QAAQ,GAAG,KAAK,GAAG,EAAE,EAC3C,CAAC;aACH;;;WAZA;QAeD,sBACI,kCAAS;iBAGb;gBACE,OAAO,IAAI,CAAC,UAAU,CAAC;aACxB;iBAND,UACc,KAAkB;gBAC9B,IAAI,CAAC,UAAU,mCAAQ,IAAI,CAAC,GAAG,CAAC,SAAS,GAAK,KAAK,CAAE,CAAC;aACvD;;;WAAA;QAID,sBACI,oCAAW;iBADf,UACgB,GAAa;gBAC3B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;gBACxB,IAAI,CAAC,iBAAiB,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;aAChD;;;WAAA;QAED,sBACI,kCAAS;iBADb,UACc,GAAmC;gBAC/C,IAAI,CAAC,UAAU,GAAG,OAAO,GAAG,KAAK,QAAQ,GAAG,GAAG,GAAG,EAAE,QAAQ,EAAE,CAACA,mBAAS,CAAC,GAAG,CAAC,EAAE,CAAC;aACjF;;;WAAA;QAwBD,sBAAI,8BAAK;;;;iBAAT;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;aAC1B;;;WAAA;QAKD,sBAAI,6BAAI;;;;iBAAR;gBACE,OAAO,IAAI,CAAC,KAAK,CAAC;aACnB;;;WAAA;QAgCO,4BAAM,GAAN,UAAO,GAAkB;YAC/B,IAAM,aAAa,qBAAQ,GAAG,CAAC,SAAS,CAAE,CAAC;;YAE3C,OAAO,GAAG,CAAC,SAAS,CAAC;YACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAEzB,IAAI,aAAa,CAAC,MAAM,KAAK,KAAK,EAAE;gBAClC,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC;aAChC;YACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B;QAED,wBAAE,GAAF;YACE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;SACb;QAED,iCAAW,GAAX,UAAY,KAAa,EAAE,KAAe;YACxC,OAAO,IAAI,CAAC,QAAQ;kBAChB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;kBAC7G,EAAE,CAAC;SACR;QAEO,gCAAU,GAAV,UAAW,IAAkB,EAAE,IAAgB;YACrD,IAAM,GAAG,GAAa;gBACpB,IAAI,MAAA;gBACJ,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC;YACF,IAAI,IAAI,IAAI,IAAI,EAAE;gBAChB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;aAClB;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACvB;QASD,sBAAI,qCAAY;;;;;;;iBAAhB;gBACE,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAe,CAAC,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,GAAA,CAAC,CAAC;aAC/E;;;WAAA;QAEO,oCAAc,GAAd;YACE,IAAA,KAAK,GAAK,IAAI,CAAC,IAAI,MAAd,CAAe;YAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE;gBAC7C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;aACvB;iBAAM,IAAIA,mBAAS,CAAC,KAAK,CAAC,EAAE;gBAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;aACnC;iBAAM;gBACL,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;aACpB;SACF;QAEO,gCAAU,GAAV,UAAW,GAAY;YAC7B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE;gBACxB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;gBACpB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;aAC1B;SACF;QAEO,8BAAQ,GAAR,UAAS,OAA6B;YAAtC,iBAiCP;YAhCO,IAAA,KAA+E,IAAI,EAAjF,EAAE,QAAA,EAAE,EAAE,QAAA,EAAE,IAAI,UAAA,EAAE,GAAG,SAAA,EAAE,GAAG,SAAA,EAAE,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,UAAU,gBAAA,EAAE,SAAS,eAAA,EAAE,YAAY,kBAAS,CAAC;YAC1F,OAAO,IAAI,OAAO,CAAC,UAAC,cAAc,EAAE,aAAa;gBAC/C,IAAI,KAAI,CAAC,KAAK,EAAE;oBACd,KAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;iBAC1B;gBAED,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,UAAU;qBACzB,OAAO,iBACN,EAAE,IAAA,EACF,EAAE,IAAA,EACF,KAAK,OAAA,EACL,IAAI,MAAA,EACJ,GAAG,KAAA,EACH,GAAG,KAAA,EACH,IAAI,MAAA,EACJ,OAAO,EAAE,KAAI,CAAC,QAAQ,EACtB,UAAU,YAAA,EACV,SAAS,WAAA,EACT,YAAY,cAAA,EACZ,SAAS,EAAE,IAAI,EACf,aAAa,EAAE,KAAI,CAAC,aAAa,IAAI,KAAI,CAAC,GAAG,CAAC,aAAa,IACxD,OAAO,EACV;qBACD,IAAI,CAACH,mBAAS,CAAC,KAAI,CAAC,QAAQ,CAAC,CAAC;qBAC9B,SAAS,CACR,UAAA,MAAM,IAAI,OAAA,cAAc,CAAC,MAAM,CAAC,GAAA,EAChC,UAAA,KAAK;oBACH,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;oBACnC,aAAa,CAAC,KAAK,CAAC,CAAC;iBACtB,CACF,CAAC;aACL,CAAC,CAAC;SACJ;QAEa,kCAAY,GAAZ;;;iCAkCb;;;;4BAjCC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;;;;4BAEL,qBAAM,IAAI,CAAC,QAAQ,EAAE,EAAA;;4BAA9B,MAAM,GAAG,SAAqB;4BACpC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;4BACvB,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,WAAW,EAAE;gCACpC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;6BACrB;4BACD,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,WAAW,EAAE;gCACpC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;6BACrB;4BACD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,WAAW,EAAE;gCACvC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;6BAC3B;4BACD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE;gCAC1C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC;6BACtC;4BACD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;4BACzB,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAmC,CAAC;4BAC/D,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;;;4BAGvC,IAAI,IAAI,CAAC,wBAAwB,EAAE;gCACjC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,cAAM,OAAA,KAAI,CAAC,wBAAwB,CAAC,iBAAiB,EAAE,GAAA,CAAC,CAAC;6BACjF;4BACD,sBAAO,IAAI,CAAC,SAAS,EAAE,EAAC;;;4BAExB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;4BACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;gCAC5B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;gCACzB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,SAAA,EAAE,CAAC,CAAC;6BACzC;4BACD,sBAAO,IAAI,EAAC;;;;aAEf;SAAA;;QAGD,2BAAK,GAAL,UAAM,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YAC/B,IAAI,WAAW,EAAE;gBACf,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;YACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;SAClB;;QAGD,iCAAW,GAAX;YACE,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;SACjE;;;;;;;;QASD,0BAAI,GAAJ,UAAK,EAAc,EAAE,WAAuB,EAAE,OAAuB;YAAhE,mBAAA,EAAA,MAAc;YACjB,IAAI,EAAE,KAAK,CAAC,CAAC;gBAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;YAC5B,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE;gBACtC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,KAAK,mCAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,GAAK,WAAW,IAAK,WAAW,CAAC;aACnG;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;SACb;;;;;;QAOD,4BAAM,GAAN,UAAO,WAAuB,EAAE,OAAuB;YACrD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;SAC5C;;;;;;;;;;QAWD,2BAAK,GAAL,UAAM,WAAuB,EAAE,OAAuB;YACpD,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC;SACb;QAEO,4BAAM,GAAN,UAAO,OAAiB;;YAC9B,IAAI,EAAE,OAAO,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;gBAAE,OAAO;YAC3D,IAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,aAA4B,CAAC;YAChD,EAAE,CAAC,cAAc,EAAE,CAAC;;YAEpB,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,WAAY,CAAC;YAC7D,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,IAAI,CAAC,wBAAwB,EAAE;oBACjC,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC;wBACrC,GAAG,EAAE,CAAC;wBACN,IAAI,EAAE,CAAC;qBACR,CAAC,CAAC;iBACJ;qBAAM;oBACL,MAAA,EAAE,CAAC,aAAa,CAAC,qCAAqC,CAAC,0CAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACzE;aACF;SACF;QAED,6BAAO,GAAP,UAAQ,IAAiB,EAAE,OAAuB;YAAlD,iBAMC;YALC,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE;gBAClF,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,cAAM,OAAA,KAAI,CAAC,MAAM,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,GAAA,CAAC,CAAC;aAC7D;YAED,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACvB;QAEO,sCAAgB,GAAhB,UAAiB,IAAY;YACnC,IAAI,IAAI,CAAC,eAAe,KAAK,KAAK;gBAAE,OAAO;YAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,KAAK,IAAI,GAAA,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,QAAC,CAAC,CAAC,MAAM,GAAG,KAAK,IAAC,CAAC,CAAC;SACrE;QAED,+BAAS,GAAT,UAAU,CAAQ,EAAE,IAAY,EAAE,KAAa,EAAE,GAAY;YAC3D,IAAM,EAAE,GAAG,CAAC,CAAC,MAAqB,CAAC;YACnC,IAAI,EAAE,CAAC,QAAQ,KAAK,OAAO;gBAAE,OAAO;YAC9B,IAAA,KAA+B,IAAI,EAAjC,MAAM,YAAA,EAAE,gBAAgB,sBAAS,CAAC;YAC1C,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,IAAI,gBAAgB,EAAE;gBAC7D,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC3B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChC,OAAO;aACR;YAED,IAAM,IAAI,GAAG,EAAE,CAAC,GAAA,EAAE,IAAI,MAAA,EAAE,KAAK,OAAA,EAAE,CAAC;YAChC,IAAI,GAAG,EAAE;gBACP,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;aACnC;iBAAM;gBACL,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBACzC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;aAChC;SACF;QAEO,wCAAkB,GAAlB,UAAmB,EAAe,EAAE,IAAY,EAAE,KAAa;YACrE,IAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;YAClC,IAAI,EAAE,IAAI,IAAI;gBAAE,OAAO;YACvB,IAAM,MAAM,GAAG,gBACb,SAAS,EAAE,KAAK,KACZ,OAAO,EAAE,KAAK,QAAQ,GAAG,EAAE,EAAE,EAAE,cAAM,OAAA,EAAE,GAAA,EAAE,GAAG,EAAE,EACxB,CAAC;YAC7B,IAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACzC,IAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAgB,CAAC;YAC7C,IAAI,MAAM,CAAC,SAAS,EAAE;gBACpB,IAAI,CAAC,aAAe,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAC,CAAc,IAAK,OAAA,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,GAAA,CAAC,CAAC;aACxG;YACD,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACtC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aAClC;iBAAM;gBACL,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;aAC/B;SACF;QAED,mCAAa,GAAb,UAAc,IAAY,EAAE,MAAe;YACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SACjC;QAED,sCAAgB,GAAhB,UAAiB,EAAS;YACxB,EAAE,CAAC,eAAe,EAAE,CAAC;SACtB;;;;;;;;;QAUD,+BAAS,GAAT,UAAU,IAAgC;YAA1C,iBAwBC;YAvBC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;aAC5B;iBAAM;gBACL,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACxB,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;iBACf;gBAEA,IAAiB;qBACf,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAA,CAAC;qBACrC,MAAM,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,KAAK,CAAC,CAAC,GAAA,CAAC;qBACzB,OAAO,CAAC,UAAA,GAAG,IAAI,OAAA,KAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,GAAA,CAAC,CAAC;aAC9C;;YAED,IAAI,CAAC,QAAQ;iBACV,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,IAAI,KAAK,IAAI,GAAA,CAAC;iBAC5B,OAAO,CAAC,UAAA,CAAC,IACR,OAAA,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,CAAC,EAAE,GAAG;gBACxB,IAAM,IAAI,GAAG,KAAG,KAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAG,CAAC;gBACxD,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC,OAAQ,CAAC,GAAG,EAAE,IAAI,MAAA,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAkB,CAAC;aAC5F,CAAC,GAAA,CACH,CAAC;YAEJ,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;SAClB;;;;;;;;;;;;;QAcD,4BAAM,GAAN,UAAO,KAAsB,EAAE,IAAY,EAAE,OAA2D;YACtG,OAAO,mBAAK,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,IAAK,OAAO,CAAE,CAAC;YAClE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aACnC;YACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAGE,kBAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACjE,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,aAAa,EAAE;gBACzB,IAAI,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;gBACtD,OAAO,IAAI,CAAC;aACb;YACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;SACb;;;QAMD,0BAAI,GAAJ,UAAK,GAAc,EAAE,GAAW,EAAE,KAAgB;YAChD,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC1B,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;aAC/C;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAC,IAAI,EAAE,KAAK,IAAK,QAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,KAAK,GAAG,GAAG,KAAK,GAAG,IAAI,IAAC,CAAC,CAAC;aAC7F;YACD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAM,GAAG,GAAG;gBACV,KAAK,OAAA;gBACL,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAClF,MAAM,EAAE,GAAG;aACZ,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;SAC9B;QAED,+BAAS,GAAT;YACE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,QAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,IAAC,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC;SACb;;;QAMD,mCAAa,GAAb,UAAc,GAAc,EAAE,OAAgB;YAC5C,IAAI,CAAC,OAAO,EAAE;gBACZ,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;aACpC;;YAED,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACZ,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,MAAO,CAAC,CAAC;YAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;SAChC;QAED,wCAAkB,GAAlB,UAAmB,KAAe;YAChC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;SACxC;QAED,iCAAW,GAAX;YAAA,iBAGC;YAFC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,GAAA,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG,IAAI,OAAA,KAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,GAAA,CAAC,CAAC;YACpH,OAAO,IAAI,CAAC;SACb;;;;QAMD,gCAAU,GAAV;YACE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAC9B;QAEO,+BAAS,GAAT;YACN,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,QAAQ,GAAA,CAAC,CAAC;YACtD,IAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,KAAK,IAAI,GAAA,CAAC,CAAC;YAC9D,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,CAAC;YACrF,IAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,UAAA,KAAK,IAAI,OAAA,CAAC,KAAK,CAAC,OAAO,GAAA,CAAC,CAAC;YAC9D,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,CAAC;YACzD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,QAAQ,GAAA,CAAC,CAAC,MAAM,CAAC;YAC3F,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;SAClB;QAED,+BAAS,GAAT,UAAU,OAAiB;YACzB,OAAO,GAAG,OAAO,OAAO,KAAK,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,QAAQ,GAAA,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,QAAC,CAAC,CAAC,OAAO,GAAG,OAAO,IAAC,CAAC,CAAC;YACxE,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,CAAC;SACxC;QAED,mCAAa,GAAb,UAAc,GAAsB;YAClC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,CAAC;SACxC;QAED,kCAAY,GAAZ;YACE,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,GAAA,CAAC,CAAC;YACtE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;SACb;;;;QAOD,gCAAU,GAAV;YACE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,GAAA,CAAC,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,QAAC,IAAI,CAAC,OAAO,GAAG,KAAK,IAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/B,OAAO,IAAI,CAAC;SACb;;QAID,+BAAS,GAAT,UAAU,EAAe;YACvB,QAAQ,EAAE,CAAC,IAAI;gBACb,KAAK,UAAU;oBACb,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,CAAC;oBAChC,MAAM;gBACR,KAAK,OAAO;oBACV,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;oBAClC,MAAM;aACT;SACF;;;;;;;;QAUD,4BAAM,GAAN,UAAO,OAAyB,EAAE,GAAqB;YAAvD,iBAWC;YAVC,IAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;kBAC/B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;kBACzE,IAAI,CAAC,KAAK,CAAC;YACf,CAAC,OAAO,KAAK,IAAI,GAAGE,SAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAGhB,OAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,UAAC,GAAa,IAC9E,OAAA,KAAI,CAAC,SAAS,CAAC,MAAM,+BACnB,QAAQ,EAAE,KAAI,CAAC,QAAQ,IACpB,GAAG,KACN,IAAI,EAAE,GAAG,IACT,GAAA,CACH,CAAC;SACH;;;QAMD,+BAAS,GAAT,UAAU,EAAwB,EAAE,MAAiB;gBAAzC,KAAK,WAAA;YACf,MAAM,CAAC,KAAK,GAAM,KAAK,OAAI,CAAC;YAC5B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SACnC;;;QAKD,mCAAa,GAAb,UAAc,KAAiB;YAA/B,iBAoCC;YAnCC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACrB,OAAO;aACR;YACD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,IAAM,KAAK,GAAI,KAAK,CAAC,MAAsB,CAAC,OAAO,CAAC,kBAAkB,CAAgB,CAAC;YACvF,IAAI,CAAC,KAAK,EAAE;gBACV,OAAO;aACR;YACD,IAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAM,QAAQ,GAAG,MAAM,CAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC5B,KAAK,OAAA;gBACL,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM;gBAC/B,QAAQ,EAAE,OAAO,GAAG,IAAI,GAAG,QAAQ;gBACnC,QAAQ,UAAA;gBACR,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC1C,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;aAChC,CAAC,CAAC;YACH,CAACiB,iBAAY,CAAC,IAAI,CAAC,GAAG,IAAI,GAAGjB,OAAE,CAAC,IAAI,CAAC;iBAClC,IAAI,CACHY,mBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EACxBC,gBAAM,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,MAAM,GAAG,CAAC,GAAA,CAAC,CAC9B;iBACA,SAAS,CAAC,UAAA,GAAG;gBACZ,KAAI,CAAC,eAAe,GAAG,GAAG,CAAC,GAAG,CAAC,UAAA,CAAC;oBAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;wBAC9B,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC;qBACjB;oBACD,OAAO,CAAC,CAAC;iBACV,CAAC,CAAC;gBACH,KAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;gBACzB,KAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,KAAI,CAAC,cAAc,CAAC,CAAC;aAC7C,CAAC,CAAC;SACN;QAGD,sBAAI,iDAAwB;;iBAA5B;gBACE,OAAO,IAAI,CAAC,QAAQ,CAAC,wBAAyB,CAAC;aAChD;;;WAAA;QAED,kCAAY,GAAZ,UAAa,OAA8B;YACzC,OAAO,mBAAK,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,IAAK,OAAO,CAAE,CAAC;YAChE,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,WAAW,EAAE;gBAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;aAChC;YACD,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE;gBACrC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;aACtB;YACD,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE;gBACrC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;aACtB;YACD,IAAI,OAAO,CAAC,UAAU,EAAE;;gBAEtB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;aAC7B;YACD,IAAI,OAAO,CAAC,YAAY,EAAE;gBACxB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;aACjB;YACD,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,OAAO,CAAC,UAAU,EAAE;gBACtB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;aAC5B;iBAAM;gBACL,IAAI,CAAC,EAAE,EAAE,CAAC;gBACV,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAC9B;SACF;QAEO,oCAAc,GAAd;YACN,IAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,OAAsB,EAAE;gBACjE,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAA4B;aAChD,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC;YAC5B,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,IAAI,GAAG,CAAC,YAAY,IAAI,IAAI,EAAE;gBAChE,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;aACtC;YACD,OAAO,IAAI,CAAC;SACb;QAEO,kCAAY,GAAZ;YACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;gBACxC,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,MAAM,EAAE,IAAI,CAAC,KAAK;gBAClB,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC,CAAC;SACJ;;;;;;QAOD,8BAAQ,GAAR,UAAS,WAA4B;YACnC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;gBACnC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;aACvC;YACD,IAAI,CAAC,WAAW,EAAE;gBAChB,OAAO,IAAI,CAAC;aACb;YACD,IAAM,QAAQ,GAAGrB,cAAQ,CAAC,WAAW,CAAC,CAAC;YACvC,OAAO,QAAQ,CAAC,OAAO,CAAC;YACxB,OAAO,QAAQ,CAAC;SACjB;QAED,qCAAe,GAAf;YACE,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACnD;QAED,iCAAW,GAAX,UAAY,OAA6D;YACvE,IAAI,OAAO,CAAC,OAAO,EAAE;gBACnB,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,EAAE,CAAC;aACtC;YACD,IAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,UAAU,IAAI,UAAU,CAAC,YAAY,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE;gBAC3F,IAAI,CAAC,YAAY,EAAE,CAAC;aACrB;YACD,IAAI,OAAO,CAAC,OAAO,EAAE;gBACnB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;aAC9C;SACF;QAED,iCAAW,GAAX;YACE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;SAC1B;;;;gBA9xBF0B,YAAS,SAAC;oBACT,QAAQ,EAAE,IAAI;oBACd,QAAQ,EAAE,IAAI;oBACd,6sRAAkC;oBAClC,SAAS,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAEf,cAAQ,EAAEC,YAAM,EAAEC,kBAAW,CAAC;oBAC/F,IAAI,EAAE;wBACJ,YAAY,EAAE,MAAM;wBACpB,oBAAoB,EAAE,2BAA2B;wBACjD,sBAAsB,EAAE,6BAA6B;wBACrD,0BAA0B,EAAE,6BAA6B;wBACzD,uBAAuB,EAAE,YAAY;wBACrC,2CAA2C,EAAE,4BAA4B;qBAC1E;oBACD,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAEc,0BAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAEC,oBAAiB,CAAC,IAAI;iBACtC;;;gDAuJIzB,WAAQ,YAAIC,SAAM,SAACC,sBAAgB;gBArOtCwB,oBAAiB;gBAEjBC,aAAU;gBA6BH,QAAQ;gDA0MZ1B,SAAM,SAAC2B,eAAQ;gBA5MX,cAAc;gBACd,YAAY;gBAVkCC,wBAAkB;gBAChEC,yBAAkB;gBAIlBC,6BAAoB;;;2BA0F1BC,YAAS,SAAC,OAAO;iCACjBA,YAAS,SAAC,gBAAgB;sBAE1BrC,QAAK;sBAQLA,QAAK;uBAWLA,QAAK;uBAQLA,QAAK;0BACLA,QAAK;8BACLA,QAAK;qBACLA,QAAK;qBACLA,QAAK;wBACLA,QAAK;0BACLA,QAAK;+BACLA,QAAK;mCACLA,QAAK;2BACLA,QAAK;uBACLA,QAAK;yBACLA,QAAK;6BACLA,QAAK;4BAELA,QAAK;+BAgBLA,QAAK;oCACLA,QAAK;4BACLA,QAAK;8BAOLA,QAAK;4BAMLA,QAAK;yBAILA,QAAK;6BACLA,QAAK;yBACLA,QAAK;6BACLA,QAAK;uBACLA,QAAK;mCACLA,QAAK;kCACLA,QAAK;yBACLA,QAAK;2BACLA,QAAK;6BACLA,QAAK;6CACLA,QAAK;wBACLsC,SAAM;yBACNA,SAAM;gCACNtC,QAAK;kCACLA,QAAK;qCACLA,QAAK;qCACLA,QAAK;gCACLA,QAAK;oCACLA,QAAK;;IAhEkB;QAAduC,qBAAW,EAAE;2CAAS;IACR;QAAdA,qBAAW,EAAE;2CAAQ;IACP;QAAdA,qBAAW,EAAE;8CAAW;IAEV;QAAdA,qBAAW,EAAE;qDAAkB;IAEhB;QAAfC,sBAAY,EAAE;iDAAkB;IAyCjB;QAAfA,sBAAY,EAAE;mDAAmB;IAIlB;QAAfA,sBAAY,EAAE;yDAA0B;IACzB;QAAfA,sBAAY,EAAE;wDAAyB;IAGxB;QAAfA,sBAAY,EAAE;mDAA4B;IAC3B;QAAfA,sBAAY,EAAE;mEAAqC;IAGpC;QAAfA,sBAAY,EAAE;sDAAuB;IACvB;QAAdD,qBAAW,EAAE;wDAAsB;IACrB;QAAdA,qBAAW,EAAE;2DAA0B;IACzB;QAAdA,qBAAW,EAAE;2DAA0B;;;QChNnD;YA8GE,YAAO,GAAG,KAAK,CAAC;YAEP,WAAM,GAAe,EAAE,CAAC;YAEd,MAAC,GAAG,IAAIlB,eAAY,EAAW,CAAC;YAChC,WAAM,GAAG,IAAIA,eAAY,EAAW,CAAC;SA0BzD;QAzBC,sBAAI,mCAAI;iBAAR;gBACE,OAAO,IAAI,CAAC,CAAC,CAAC,IAAc,CAAC;aAC9B;;;WAAA;QAED,gCAAI,GAAJ,UAAK,MAAkB;YACrB,MAAM,CAAC,eAAe,EAAE,CAAC;SAC1B;QAED,0CAAc,GAAd;;YACE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,CAAC,CAAC,KAAK,0CAAE,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,OAAO,GAAA,CAAC,CAAC,CAAC;SACnD;QAED,uCAAW,GAAX,UAAY,IAAwB;YAClC,IAAI,CAAC,CAAC,CAAC,KAAM,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,QAAC,CAAC,CAAC,OAAO,GAAG,KAAK,IAAC,CAAC,CAAC;YAChD,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACnB;QAED,mCAAO,GAAP;YACE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACxB;QAED,iCAAK,GAAL;YACE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACzB;;;;gBA5IFO,YAAS,SAAC;oBACT,QAAQ,EAAE,WAAW;oBACrB,QAAQ,EAAE,8iIAiGT;oBACD,IAAI,EAAE;wBACJ,4CAA4C,EAAE,MAAM;wBACpD,oBAAoB,EAAE,MAAM;wBAC5B,iDAAiD,EAAE,SAAS;qBAC7D;oBACD,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAEC,0BAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAEC,oBAAiB,CAAC,IAAI;iBACtC;;;sBAGE9B,QAAK;yBACLA,QAAK;oBACLA,QAAK;oBACLsC,SAAM;yBACNA,SAAM;;;;QCmCP,uBACkB,MAAmB,EAC3B,MAAc,EACd,WAAwB,EACxB,YAA0B;YAHlB,WAAM,GAAN,MAAM,CAAa;YAC3B,WAAM,GAAN,MAAM,CAAQ;YACd,gBAAW,GAAX,WAAW,CAAa;YACxB,iBAAY,GAAZ,YAAY,CAAc;YAXjB,MAAC,GAAG,IAAIjB,eAAY,EAAe,CAAC;SAYnD;QAVJ,sBAAY,sCAAW;iBAAvB;gBACQ,IAAA,KAAoB,IAAI,CAAC,MAAM,EAA7B,EAAE,QAAA,EAAE,EAAE,QAAA,EAAE,KAAK,WAAgB,CAAC;gBACtC,OAAO,EAAE,EAAE,IAAA,EAAE,EAAE,IAAA,EAAE,KAAK,OAAA,EAAE,CAAC;aAC1B;;;WAAA;QASO,8BAAM,GAAN,UAAO,IAAqB;YAClC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,MAAA,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;SAClD;QAED,iCAAS,GAAT,UAAU,KAAc;YACtB,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACzB;QAED,8BAAM,GAAN,UAAO,OAAgB;YACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,QAAQ,GAAA,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,QAAC,CAAC,CAAC,OAAO,GAAG,KAAK,IAAC,CAAC,CAAC;YACrE,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;SACtB;QAED,6BAAK,GAAL,UAAM,CAAQ;YACZ,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACzB,IAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,KAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gBAC3B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;aAC7D;YACD,OAAO,KAAK,CAAC;SACd;QAED,wCAAgB,GAAhB,UAAiB,EAAS;YACxB,EAAE,CAAC,cAAc,EAAE,CAAC;YACpB,EAAE,CAAC,eAAe,EAAE,CAAC;SACtB;QAED,4BAAI,GAAJ,UAAK,GAAmB,EAAE,EAAU;;YAApC,iBAqCC;YApCC,IAAI,EAAE,EAAE;gBACN,EAAE,CAAC,eAAe,EAAE,CAAC;aACtB;YACD,IAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;YACtB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACzC,IAAA,KAAK,GAAK,GAAG,MAAR,CAAS;gBACtB,IAAM,GAAG,aAAK,GAAC,KAAM,CAAC,UAAW,IAAG,MAAM,KAAE,CAAC;gBAC5C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,GAAG,QAAQ,GAAG,cAAc,CAAe,CAC/E,KAAM,CAAC,SAAS,kCACX,GAAG,IAAM,KAAM,CAAC,MAAM,IAAI,KAAM,CAAC,MAAO,CAAC,MAAM,CAAC,IACrDG,kBAAY,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CACxD;qBACE,IAAI,CAACD,gBAAM,CAAC,UAAA,CAAC,IAAI,OAAA,OAAO,CAAC,KAAK,WAAW,GAAA,CAAC,CAAC;qBAC3C,SAAS,CAAC,UAAC,GAAc,IAAK,OAAA,KAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,GAAA,CAAC,CAAC;gBACrE,OAAO;aACR;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACxB,IAAA,MAAM,GAAK,GAAG,OAAR,CAAS;gBACvB,IAAM,GAAG,aAAK,GAAC,MAAO,CAAC,UAAW,IAAG,MAAM,KAAE,CAAC;gBAC9C,IAAI,CAAC,YAAY;qBACd,MAAM,CACL,MAAO,CAAC,KAAM,EACd,MAAO,CAAC,SAAS,kCACZ,GAAG,IAAM,MAAO,CAAC,MAAM,IAAI,MAAO,CAAC,MAAO,CAAC,MAAM,CAAC,IACvDC,kBAAY,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAC1D;qBACA,IAAI,CAACD,gBAAM,CAAC,UAAA,CAAC,IAAI,OAAA,OAAO,CAAC,KAAK,WAAW,GAAA,CAAC,CAAC;qBAC3C,SAAS,CAAC,UAAA,GAAG,IAAI,OAAA,KAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,GAAA,CAAC,CAAC;gBACxD,OAAO;aACR;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE;gBAC9B,IAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC/C,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;oBAChC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;iBAClE;gBACD,OAAO;aACR;YACD,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;SAC/B;QAEO,mCAAW,GAAX,UAAY,MAAc,EAAE,GAAmB,EAAE,KAAiB;YACxE,IAAI,CAAC,GAAG,CAAC,KAAK;gBAAE,OAAO;YACvB,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE;gBACjC,QAAQ,GAAG,CAAC,KAAK;oBACf,KAAK,MAAM;wBACT,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBACnB,MAAM;oBACR,KAAK,QAAQ;wBACX,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACrB,MAAM;iBACT;aACF;iBAAM;gBACL,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;aAC9C;SACF;;;;gBAlOFK,YAAS,SAAC;oBACT,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,w7JAqHT;oBACD,mBAAmB,EAAE,KAAK;oBAC1B,eAAe,EAAEC,0BAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAEC,oBAAiB,CAAC,IAAI;iBACtC;;;gBA/HQ,WAAW,uBA8If/B,OAAI;gBArJA0C,aAAM;gBAGQC,iBAAW;gBAAzBC,kBAAY;;;oBAqIlB3C,QAAK;uBACLA,QAAK;uBACLA,QAAK;oBACLA,QAAK;wBACLA,QAAK;oBACLsC,SAAM;;;IC1HT,IAAM,UAAU,GAAG,CAAC,WAAW,EAAE,cAAc,EAAE,qBAAqB,CAAC,CAAC;;QA2BxE;;;;;gBAzBCM,WAAQ,SAAC;oBACR,OAAO,EAAE;wBACPC,mBAAY;wBACZC,iBAAW;wBACXC,kBAAc;wBACdC,cAAS;wBACTC,6BAAkB;wBAClBC,mBAAa;wBACbC,iBAAY;wBACZC,mBAAa;wBACbC,yBAAgB;wBAChBC,uBAAe;wBACfC,yBAAgB;wBAChBC,iBAAY;wBACZC,mBAAa;wBACbC,eAAW;wBACXC,mBAAa;wBACbC,uBAAe;wBACfC,2BAAiB;wBACjBC,+BAAmB;wBACnBC,6BAAkB;qBACnB;oBACD,YAAY,yCAAM,UAAU,KAAE,iBAAiB,EAAE,aAAa,EAAC;oBAC/D,OAAO,EAAE,UAAU;iBACpB;;;ICtDD;;;;;;;;;;;;;;;;;;;;;;;"}
|